@charset "UTF-8";
/*!
Theme Name: Lire et faire lire
Theme URI: http://underscores.me/
Author: OnzeWeb
Author URI: http://onzeweb.ch
Description: Thème Lire et faire lire – OnzeWeb
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: lefl
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Lire et faire lire is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/
/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/
/* Normalize
--------------------------------------------- */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
	 ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
	 ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
	 ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

/* Interactive
	 ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
	 ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/* Box sizing
--------------------------------------------- */
/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/
/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
  color: inherit;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-size: 1rem;
  line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
}

p {
  margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em;
}

address {
  margin: 0 0 1.5em;
}

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", courier, monospace;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em;
}

code,
kbd,
tt,
var {
  font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

abbr,
acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}

mark,
ins {
  background: #fff9c0;
  text-decoration: none;
}

big {
  font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
  background: #fff;
}

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}

ul,
ol {
  margin: 0 0 1.5em 3em;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: 700;
}

dd {
  margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

img {
  height: auto;
  max-width: 100%;
}

figure {
  margin: 1em 0;
}

table {
  margin: 0 0 1.5em;
  width: 100%;
}

/* Links
--------------------------------------------- */
a {
  color: inherit;
}
a:visited {
  color: inherit;
}
a:hover, a:focus, a:active {
  color: inherit;
}
a:focus {
  outline: thin dotted;
}
a:hover, a:active {
  outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type=button],
input[type=reset],
input[type=submit] {
  border: 1px solid;
  border-color: #ccc #ccc #bbb;
  border-radius: 3px;
  background: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  line-height: 1;
  padding: 0.6em 1em 0.4em;
}
button:hover,
input[type=button]:hover,
input[type=reset]:hover,
input[type=submit]:hover {
  border-color: #ccc #bbb #aaa;
}
button:active, button:focus,
input[type=button]:active,
input[type=button]:focus,
input[type=reset]:active,
input[type=reset]:focus,
input[type=submit]:active,
input[type=submit]:focus {
  border-color: #aaa #bbb #bbb;
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=range],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
textarea {
  color: #666;
  border: 1px solid #ccc;
  border-radius: 3px;
  padding: 3px;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=range]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
textarea:focus {
  color: #111;
}

select {
  border: 1px solid #ccc;
}

textarea {
  width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/
/* Navigation
--------------------------------------------- */
/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  margin: 0 0 1.5em;
}
.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
  display: flex;
}
.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  flex: 1 0 50%;
}
.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  text-align: end;
  flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
  display: block;
}

.post,
.page {
  margin: 0 0 1.5em;
}

.updated:not(.published) {
  display: none;
}

.page-content,
.entry-content,
.entry-summary {
  margin: 1.5em 0 0;
}

.page-links {
  clear: both;
  margin: 0 0 1.5em;
}

/* Comments
--------------------------------------------- */
.comment-content a {
  word-wrap: break-word;
}

.bypostauthor {
  display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
  margin: 0 0 1.5em;
}
.widget select {
  max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
  border: none;
  margin-bottom: 0;
  margin-top: 0;
  padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
  display: inline-block;
}

/* Captions
--------------------------------------------- */
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}
.wp-caption img[class*=wp-image-] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.wp-caption .wp-caption-text {
  margin: 0.8075em 0;
}

.wp-caption-text {
  text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
  margin-bottom: 1.5em;
  display: grid;
  grid-gap: 1.5em;
}

.gallery-item {
  display: inline-block;
  text-align: center;
  width: 100%;
}

.gallery-columns-2 {
  grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
  grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
  grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
  grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
  grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
  grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
  grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
  grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
  display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/
/* Jetpack infinite scroll
--------------------------------------------- */
/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
  display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
  display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/
/* Accessibility
--------------------------------------------- */
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  color: #21759b;
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
  outline: 0;
}

/* Alignments
--------------------------------------------- */
.alignleft {
  /*rtl:ignore*/
  float: left;
  /*rtl:ignore*/
  margin-right: 1.5em;
  margin-bottom: 1.5em;
}

.alignright {
  /*rtl:ignore*/
  float: right;
  /*rtl:ignore*/
  margin-left: 1.5em;
  margin-bottom: 1.5em;
}

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 1.5em;
}

/* Onzeweb
--------------------------------------------- */
/* ------------------------------------------- */
/* ------------------------------------------- */
:root {
  font-size: 62.5%;
}

/* ------------------------------------------- */
/* ------------------------------------------- */
/* ------------------------------------------- */
/* ------------------------------------------- */
html {
  scroll-behavior: smooth;
}

body, .page {
  margin: 0;
  overflow-x: clip;
  background-color: #ffffff;
}

#page {
  position: relative;
}

.page-content, .entry-content, .entry-summary {
  margin: 0;
}

.wrapper {
  width: 100%;
  max-width: 1020px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1020px;
}
@media screen and (max-width: 1060px) {
  .wrapper {
    width: calc(100% - 40px);
  }
}

@media screen and (max-width: 781px) {
  .no-mobile {
    display: none !important;
  }
}

@media screen and (min-width: 782px) {
  .no-desktop {
    display: none !important;
  }
}

.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
  -webkit-user-select: none; /* Safari */
  -khtml-user-select: none; /* Konqueror HTML */
  -moz-user-select: none; /* Old versions of Firefox */
  -ms-user-select: none; /* Internet Explorer/Edge */
  user-select: none; /* Non-prefixed version, currently
   supported by Chrome, Edge, Opera and Firefox */
}

/* ------------------------------------------- */
/* ------------------------------------------- */
html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

body {
  font-family: "Roboto", sans-serif;
  color: #183762;
}

a {
  text-decoration: none;
  transition: color 0.3s ease-in-out;
}
a:focus, a:focus-visible, a:active {
  outline: 0;
  outline-color: transparent;
}

h1::selection, h2::selection, h3::selection, h4::selection, h5::selection, h6::selection, p::selection {
  background-color: #183762;
  color: #ffffff;
}

h1 {
  font-family: "Roboto Serif", serif;
  font-size: clamp(5.5rem, 0.0941176471 * (100vmin + 100vmax) / 2, 9.6rem);
  margin-top: 0.5em;
  margin-bottom: 0.1em;
  font-weight: 500;
  line-height: 1;
}

h2, .style-h2 {
  font-family: "Roboto", sans-serif;
  font-size: clamp(4rem, 0.0470588235 * (100vmin + 100vmax) / 2, 4.8rem);
  margin-top: 0.3em;
  margin-bottom: 0.2em;
  font-weight: 700;
  line-height: 1.2;
}

h3 {
  font-size: clamp(2.5rem, 0.0352941176 * (100vmin + 100vmax) / 2, 3.6rem);
  margin-top: 0.3em;
  margin-bottom: 0.2em;
  font-weight: 700;
  line-height: 1.2;
}

h4 {
  font-size: clamp(2rem, 0.0235294118 * (100vmin + 100vmax) / 2, 2.4rem);
  margin-top: 0.5em;
  margin-bottom: 0.2em;
  font-weight: 400;
  line-height: 1.2;
}
h4 + p.has-medium-font-size {
  margin-top: 0;
}

h5 {
  font-size: clamp(1.6rem, 0.0176470588 * (100vmin + 100vmax) / 2, 1.8rem);
  margin-top: 0.3em;
  margin-bottom: 0.2em;
  font-weight: 700;
  line-height: 1.2;
}

h6 {
  font-size: clamp(1.4rem, 0.0156862745 * (100vmin + 100vmax) / 2, 1.6rem);
  margin-top: 0.3em;
  margin-bottom: 0.2em;
  font-weight: 700;
  line-height: 1.2;
}

p, .wp-block-list {
  font-size: clamp(1.6rem, 0.0176470588 * (100vmin + 100vmax) / 2, 1.8rem);
  margin-top: 0.5em;
  margin-bottom: 0.8em;
  font-weight: 400;
  line-height: 1.5;
}
p.has-small-font-size, .wp-block-list.has-small-font-size {
  font-size: max(1.2rem, clamp(1.6rem, 0.0176470588 * (100vmin + 100vmax) / 2, 1.8rem) * 0.777) !important;
}
p.has-medium-font-size, .wp-block-list.has-medium-font-size {
  font-size: calc(clamp(1.6rem, 0.0176470588 * (100vmin + 100vmax) / 2, 1.8rem) * 1) !important;
}
p.has-large-font-size, .wp-block-list.has-large-font-size {
  font-size: calc(clamp(1.6rem, 0.0176470588 * (100vmin + 100vmax) / 2, 1.8rem) * 1.333) !important;
}
p.has-x-large-font-size, .wp-block-list.has-x-large-font-size {
  font-size: calc(clamp(1.6rem, 0.0176470588 * (100vmin + 100vmax) / 2, 1.8rem) * 2) !important;
}
p a, .wp-block-list a {
  text-decoration: underline;
}
p a:hover, .wp-block-list a:hover {
  color: #E74C89 !important;
}

/* ------------------------------------------- */
/* ------------------------------------------- */
.sentinel {
  height: 0px;
}

#masthead {
  position: sticky;
  z-index: 1111;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #ffffff;
  transition: box-shadow 0.5s ease-in-out 1s;
}
#masthead.is-sticky {
  box-shadow: 0 0.5rem 1.5rem 0 #2D2D2D20;
}
@media screen and (min-width: 782px) {
  #masthead.is-sticky #primary-menu .sub-menu {
    box-shadow: 0 0.5rem 1.5rem 0 #2D2D2D20;
  }
}
#masthead .masthead-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  gap: calc(clamp(1.5rem, 0.0274509804 * (100vmin + 100vmax) / 2, 2.8rem) * 2);
  max-width: 1280px;
}
@media screen and (max-width: 1320px) {
  #masthead .masthead-container {
    width: calc(100% - 40px);
  }
}
#masthead .site-branding {
  flex: 1 1;
}
#masthead .site-branding .custom-logo-link {
  position: relative;
  z-index: 2;
  display: block;
  width: clamp(6rem, 0.0784313725 * (100vmin + 100vmax) / 2, 8rem);
}
#masthead .site-branding .custom-logo-link .custom-logo {
  display: block;
}
#masthead #zone-menu #primary-menu {
  margin: 0;
  padding: 0;
  list-style: none;
}
#masthead #zone-menu #primary-menu li a {
  font-weight: 700;
  transition: color 0.2s ease-in-out;
}
#masthead #zone-menu #primary-menu li:hover > a, #masthead #zone-menu #primary-menu li.current-menu-item > a {
  color: #E74C89;
}
#masthead #zone-menu #primary-menu li.menu-item-has-children > a {
  cursor: default !important;
}
#masthead #zone-menu #primary-menu .sub-menu {
  margin: 0;
  padding: 0;
  list-style: none;
  min-width: 200px;
}
@media screen and (max-width: 781px) {
  #masthead #zone-menu {
    position: fixed;
    z-index: 1;
    top: 0;
    left: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: clamp(1.5rem, 0.0274509804 * (100vmin + 100vmax) / 2, 2.8rem);
    width: 100%;
    height: 100vh;
    padding: 2rem 5%;
    overflow: hidden;
    background-color: #D9EEF3;
    transition: left 0.3s ease-in-out;
  }
  #masthead #zone-menu #primary-menu {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: clamp(1.5rem, 0.0274509804 * (100vmin + 100vmax) / 2, 2.8rem);
  }
  #masthead #zone-menu #primary-menu > li {
    font-size: clamp(2.5rem, 0.0294117647 * (100vmin + 100vmax) / 2, 3rem);
  }
  #masthead #zone-menu #primary-menu > li.menu-item-has-children > a {
    color: #18376250;
  }
  #masthead #zone-menu #primary-menu .sub-menu {
    padding: 0.5rem 1.5rem;
    margin-left: 0.5rem;
    border-left: 0.4rem solid #E74C8950;
  }
  #masthead #zone-menu #primary-menu .sub-menu li {
    font-size: 0.8em;
    padding: 0.5rem 0;
  }
}
@media screen and (min-width: 782px) {
  #masthead #zone-menu {
    display: flex;
    justify-content: start;
    align-items: center;
    gap: 0 calc(clamp(1.5rem, 0.0274509804 * (100vmin + 100vmax) / 2, 2.8rem) * 2);
  }
  #masthead #zone-menu #primary-menu {
    display: flex;
    gap: 0;
  }
  #masthead #zone-menu #primary-menu > li {
    background-color: #ffffff;
    position: relative;
    font-size: clamp(1.6rem, 0.0196078431 * (100vmin + 100vmax) / 2, 2rem);
  }
  #masthead #zone-menu #primary-menu > li:last-of-type {
    padding-right: 0;
  }
  #masthead #zone-menu #primary-menu > li > a {
    position: relative;
    z-index: 3;
    text-align: center;
    white-space: nowrap;
    background-color: #ffffff;
    position: relative;
    display: block;
    padding: 3rem 2rem;
    color: #183762;
    cursor: pointer;
  }
  #masthead #zone-menu #primary-menu > li > .sub-menu {
    background-color: #ffffff;
    position: absolute;
    top: -300%;
    left: 0;
    z-index: 2;
    padding: 2rem;
    margin: 0;
    transition: top 0.5s ease-in-out;
  }
  #masthead #zone-menu #primary-menu > li > .sub-menu > li {
    font-size: 0.8em;
  }
  #masthead #zone-menu #primary-menu > li:hover > .sub-menu {
    top: 100%;
  }
  #masthead #zone-menu #primary-menu > li.menu-item-has-children:hover > a {
    color: #7FC6D8 !important;
  }
}
@media screen and (max-width: 781px) {
  #masthead.menu-open #zone-menu {
    left: 0%;
  }
}

/*--- debut burger menu ---*/
#burger-menu {
  position: relative;
  z-index: 1111;
  display: block;
  width: 30px;
  height: 30px;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background-color: transparent;
  cursor: pointer;
  /*--- enlever tour bleu en focus (non recommandé !) ---*/
}
@media screen and (min-width: 782px) {
  #burger-menu {
    display: none;
  }
}
#burger-menu span {
  display: block;
  position: absolute;
  right: calc(50% - 15px);
  width: 30px;
  height: 4px;
  background-color: #183762;
  border-radius: 0;
  transition: top 0.2s 0.4s, bottom 0.2s 0.4s, opacity 0.2s 0.2s, transform 0.2s 0.2s, background-color 0.2s;
}
#burger-menu span:nth-child(1) {
  top: 10%;
}
#burger-menu span:nth-child(2) {
  top: calc(50% - 2px);
}
#burger-menu span:nth-child(3) {
  bottom: 10%;
}
#burger-menu.active span {
  transition: top 0.2s 0.2s, bottom 0.2s 0.2s, opacity 0.2s 0.2s, transform 0.2s 0.4s, background-color 0.2s 0.2s;
}
#burger-menu.active span:nth-child(1) {
  top: calc(50% - 2px);
  transform: rotate(45deg);
}
#burger-menu.active span:nth-child(2) {
  opacity: 0;
}
#burger-menu.active span:nth-child(3) {
  bottom: calc(50% - 2px);
  transform: rotate(-45deg);
}
#burger-menu:focus {
  outline: none;
}

/*--- fin burger menu ---*/
/* ------------------------------------------- */
/* ------------------------------------------- */
#primary .entry-content:not(.post-content) > * {
  width: 100%;
  max-width: 1020px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1060px) {
  #primary .entry-content:not(.post-content) > * {
    width: calc(100% - 40px);
  }
}
#primary .entry-content:not(.post-content) > *.alignwide {
  max-width: 1280px !important;
}
@media screen and (max-width: 1320px) {
  #primary .entry-content:not(.post-content) > *.alignwide {
    width: calc(100% - 40px);
  }
}
#primary .entry-content:not(.post-content) > *.alignfull {
  max-width: 100% !important;
  width: 100%;
}
#primary .entry-content:not(.post-content) > *.alignfull.has-background {
  padding-top: 6rem;
  padding-bottom: 6rem;
}
#primary .entry-content:not(.post-content) > *.alignfull .wp-block-group .wp-block-group__inner-container {
  max-width: 1020px !important;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1060px) {
  #primary .entry-content:not(.post-content) > *.alignfull .wp-block-group .wp-block-group__inner-container {
    width: calc(100% - 40px);
  }
}
#primary .entry-content:not(.post-content) > *.alignfull .wp-block-group.alignwide .wp-block-group__inner-container {
  max-width: 1280px !important;
}
@media screen and (max-width: 1320px) {
  #primary .entry-content:not(.post-content) > *.alignfull .wp-block-group.alignwide .wp-block-group__inner-container {
    width: calc(100% - 40px);
  }
}
#primary .entry-content:not(.post-content) > *.alignfull .wp-block-group.alignfull .wp-block-group__inner-container {
  max-width: 100% !important;
  width: 100% !important;
}
#primary .entry-content:not(.post-content) > *.alignfull > *:not(.wp-block-group__inner-container),
#primary .entry-content:not(.post-content) > *.alignfull > .wp-block-group__inner-container > * {
  max-width: 1020px !important;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1060px) {
  #primary .entry-content:not(.post-content) > *.alignfull > *:not(.wp-block-group__inner-container),
  #primary .entry-content:not(.post-content) > *.alignfull > .wp-block-group__inner-container > * {
    width: calc(100% - 40px);
  }
}
#primary .entry-content:not(.post-content) > *.alignfull > *:not(.wp-block-group__inner-container).alignwide,
#primary .entry-content:not(.post-content) > *.alignfull > .wp-block-group__inner-container > *.alignwide {
  max-width: 1280px !important;
}
@media screen and (max-width: 1320px) {
  #primary .entry-content:not(.post-content) > *.alignfull > *:not(.wp-block-group__inner-container).alignwide,
  #primary .entry-content:not(.post-content) > *.alignfull > .wp-block-group__inner-container > *.alignwide {
    width: calc(100% - 40px);
  }
}
#primary .entry-content:not(.post-content) > *.alignfull > *:not(.wp-block-group__inner-container).alignfull,
#primary .entry-content:not(.post-content) > *.alignfull > .wp-block-group__inner-container > *.alignfull {
  max-width: 100% !important;
  width: 100% !important;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form {
  margin: 0 auto;
  font-family: sans-serif;
  color: #0a2e5d;
  /* La case à cocher elle-même */
  /* La coche */
  /* Le label qui englobe input + texte */
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form__row {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.5rem;
  margin-bottom: 1.5rem;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form__heading {
  margin: 2rem 0 1rem;
  padding-bottom: 1rem;
  padding-top: 3rem;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-gap: 1.5rem;
  margin-bottom: 1.5rem;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form__full {
  grid-column: 1/-1;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form__label {
  display: block;
  margin-bottom: 0.5rem;
  font-weight: 500;
  font-size: clamp(1.6rem, 0.0176470588 * (100vmin + 100vmax) / 2, 1.8rem);
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form__field {
  width: 100%;
  padding: 0.75rem 1rem;
  font-size: clamp(1.6rem, 0.0176470588 * (100vmin + 100vmax) / 2, 1.8rem);
  border: 2px solid #0a2e5d;
  border-radius: 2px;
  transition: border-color 0.2s;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form__field:focus {
  outline: none;
  border-color: #174a89;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form input[type=checkbox] {
  -webkit-appearance: none;
  appearance: none;
  display: inline-block;
  width: 3rem;
  height: 3rem;
  border: 2px solid #0a2e5d;
  border-radius: 0;
  margin: 0;
  position: relative;
  cursor: pointer;
  transition: border-color 0.2s;
  flex-shrink: 0;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form input[type=checkbox] + .wpcf7-list-item-label {
  position: relative;
  top: 0.2rem;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form input[type=checkbox]:checked::after {
  content: "";
  position: absolute;
  top: 3px;
  left: 8px;
  width: 9px;
  height: 15px;
  border: solid #0a2e5d;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form .contact-form__checkbox-label {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-right: 1.5rem;
  cursor: pointer;
  font-weight: 400;
  font-size: clamp(1.6rem, 0.0176470588 * (100vmin + 100vmax) / 2, 1.8rem);
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form .wpcf7-list-item {
  margin-left: 0;
  display: flex;
  gap: 2rem;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form .wpcf7-not-valid-tip {
  font-size: 10px !important;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form .wpcf7-submit[type=submit] {
  background-color: transparent;
  border-radius: 3rem;
  padding: 1.1rem 2.2rem;
  font-size: clamp(1.6rem, 0.0176470588 * (100vmin + 100vmax) / 2, 1.8rem);
  font-weight: 700;
  text-align: center;
  transition: filter 0.3s ease-in-out;
  filter: saturate(1);
  background-color: var(--wp--preset--color--txt-color) !important;
  color: var(--wp--preset--color--yellow) !important;
  cursor: pointer;
  border: 0 !important;
  margin-top: 2rem;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form .wpcf7-submit[type=submit]:hover {
  filter: saturate(2);
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form .wpcf7-submit[type=submit]:focus, .wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form .wpcf7-submit[type=submit]:focus-visible, .wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form .wpcf7-submit[type=submit]:active {
  outline: 0;
  outline-color: transparent;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form input[type=radio] {
  -webkit-appearance: none;
  appearance: none;
  display: inline-block;
  width: 3rem;
  height: 3rem;
  border: 2px solid #0a2e5d;
  border-radius: 50%;
  margin: 0;
  position: relative;
  cursor: pointer;
  transition: border-color 0.2s;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form input[type=radio]:checked::after {
  content: "";
  position: absolute;
  top: 7px;
  left: 7px;
  width: 12px;
  height: 12px;
  background-color: #0a2e5d;
  border-radius: 50%;
}

.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form textarea.contact-form__field {
  min-height: 6rem;
  resize: vertical;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form .contact-form__intro,
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form .contact-form__subheading,
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form .contact-form__note {
  font-size: clamp(1.6rem, 0.0176470588 * (100vmin + 100vmax) / 2, 1.8rem);
  margin-bottom: 0.75rem;
  line-height: 1.4;
  color: #0a2e5d;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form .wpcf7-radio {
  display: flex;
  flex-wrap: wrap;
  gap: 5rem;
}
.wp-block-contact-form-7-contact-form-selector .wpcf7 .wpcf7-form .contact-form .wpcf7-radio > span {
  margin-bottom: 1rem;
}

/* ------------------------------------------- */
/* ------------------------------------------- */
.single #primary {
  margin-top: 10vh;
}
.single #primary .post-thumbnail {
  height: 40vh;
  width: 100%;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  max-width: 1280px !important;
}
@media screen and (max-width: 1320px) {
  .single #primary .post-thumbnail {
    width: calc(100% - 40px);
  }
}
@media screen and (max-width: 781px) {
  .single #primary .post-thumbnail {
    height: 30vh;
  }
}
@media screen and (max-width: 420px) {
  .single #primary .post-thumbnail {
    height: 20rem;
  }
}
.single #primary .post-thumbnail .defaut-actu {
  font-family: "Roboto Serif", serif;
  color: #ffffff;
  opacity: 0.9;
  font-size: 10vw;
  margin: 0;
}
.single #primary .entry-header {
  margin-top: 3rem;
  margin-bottom: 3rem;
}
.single #primary .post-navigation {
  width: 100%;
  max-width: 1020px;
  margin-top: 5rem;
  margin-left: auto;
  margin-right: auto;
  max-width: 1020px;
}
@media screen and (max-width: 1060px) {
  .single #primary .post-navigation {
    width: calc(100% - 40px);
  }
}
.single #primary .zone-lieu {
  width: 100%;
  max-width: 1020px;
  margin-left: auto;
  margin-right: auto;
  border-top: 1px solid #183762;
  border-bottom: 1px solid #183762;
  padding-top: clamp(1.5rem, 0.0274509804 * (100vmin + 100vmax) / 2, 2.8rem);
  padding-bottom: clamp(1.5rem, 0.0274509804 * (100vmin + 100vmax) / 2, 2.8rem);
  margin-top: calc(clamp(1.5rem, 0.0274509804 * (100vmin + 100vmax) / 2, 2.8rem) * 3);
  display: flex;
  align-items: center;
  justify-content: start;
  flex-wrap: wrap;
  gap: calc(clamp(1.5rem, 0.0274509804 * (100vmin + 100vmax) / 2, 2.8rem) / 2) clamp(1.5rem, 0.0274509804 * (100vmin + 100vmax) / 2, 2.8rem);
}
.single #primary .zone-lieu > * {
  flex: 1 0 calc(50% - clamp(1.5rem, 0.0274509804 * (100vmin + 100vmax) / 2, 2.8rem) / 2);
}
@media screen and (max-width: 781px) {
  .single #primary .zone-lieu > * {
    flex: 1 0 100%;
  }
}
@media screen and (max-width: 781px) {
  .single #primary .zone-lieu {
    align-items: start;
  }
}
@media screen and (max-width: 1060px) {
  .single #primary .zone-lieu {
    width: calc(100% - 40px);
  }
}

/* ------------------------------------------- */
/* ------------------------------------------- */
#primary .wp-block-group, #colophon .wp-block-group, #don .wp-block-group {
  /* Style 1: Smooth Individual Letters */
  /* Style 6: Smooth Wave */
  /* Style 2: Word Flow */
  /* Style 4: Gentle Flow */
  /* Style 5: Split Lines */
}
#primary .wp-block-group.style-1 .wp-block-group__inner-container, #primary .wp-block-group.style-2 .wp-block-group__inner-container, #primary .wp-block-group.style-4 .wp-block-group__inner-container, #primary .wp-block-group.style-6 .wp-block-group__inner-container, #colophon .wp-block-group.style-1 .wp-block-group__inner-container, #colophon .wp-block-group.style-2 .wp-block-group__inner-container, #colophon .wp-block-group.style-4 .wp-block-group__inner-container, #colophon .wp-block-group.style-6 .wp-block-group__inner-container, #don .wp-block-group.style-1 .wp-block-group__inner-container, #don .wp-block-group.style-2 .wp-block-group__inner-container, #don .wp-block-group.style-4 .wp-block-group__inner-container, #don .wp-block-group.style-6 .wp-block-group__inner-container {
  overflow: hidden;
  position: relative;
}
#primary .wp-block-group.style-1 .char, #colophon .wp-block-group.style-1 .char, #don .wp-block-group.style-1 .char {
  display: inline-block;
  opacity: 0;
  transform: translateY(40px);
}
#primary .wp-block-group.style-6 .char, #colophon .wp-block-group.style-6 .char, #don .wp-block-group.style-6 .char {
  display: inline-block;
  opacity: 0;
  transform: translateY(30px) scale(0.9);
}
#primary .wp-block-group.style-2 .word-wrapper, #colophon .wp-block-group.style-2 .word-wrapper, #don .wp-block-group.style-2 .word-wrapper {
  display: inline-block;
  overflow: hidden;
}
#primary .wp-block-group.style-2 .word, #colophon .wp-block-group.style-2 .word, #don .wp-block-group.style-2 .word {
  display: inline-block;
  transform: translateY(100%);
}
#primary .wp-block-group.style-4 .word-wrapper, #colophon .wp-block-group.style-4 .word-wrapper, #don .wp-block-group.style-4 .word-wrapper {
  display: inline-block;
  overflow: hidden;
  opacity: 0;
  transform: translateY(20px);
}
#primary .wp-block-group.style-3 .word-wrapper, #colophon .wp-block-group.style-3 .word-wrapper, #don .wp-block-group.style-3 .word-wrapper {
  display: inline-block;
  overflow: hidden;
}
#primary .wp-block-group.style-3 .word, #colophon .wp-block-group.style-3 .word, #don .wp-block-group.style-3 .word {
  display: inline-block;
}
#primary .wp-block-group.style-3 .char, #colophon .wp-block-group.style-3 .char, #don .wp-block-group.style-3 .char {
  display: inline-block;
  opacity: 0;
  transform: translateY(30px);
}
#primary .wp-block-group.style-5 .line, #colophon .wp-block-group.style-5 .line, #don .wp-block-group.style-5 .line {
  display: block;
  overflow: hidden;
  margin-bottom: 0.2em;
}
#primary .wp-block-group.style-5 .line-inner, #colophon .wp-block-group.style-5 .line-inner, #don .wp-block-group.style-5 .line-inner {
  opacity: 0;
  display: block;
  transform: translateY(100%);
}

/* ------------------------------------------- */
/* ------------------------------------------- */
.blog #primary, .archive #primary {
  margin-top: 10vh;
}
.blog .events-month, .archive .events-month {
  padding: 1rem 0;
  border-bottom: 0.3rem solid #183762;
  margin-bottom: 0;
}
.blog .event-table, .archive .event-table {
  border-collapse: collapse;
}
.blog .event-table td, .archive .event-table td {
  padding: 2rem 3rem;
}
.blog .event-table .col-1, .archive .event-table .col-1 {
  width: 20%;
}
.blog .event-table .col-2, .archive .event-table .col-2 {
  width: 60%;
}
.blog .event-table .col-3, .archive .event-table .col-3 {
  width: 20%;
  vertical-align: bottom;
  text-align: right;
}
@media screen and (max-width: 781px) {
  .blog .event-table td, .archive .event-table td {
    padding: 1rem 1.5rem 0.5rem;
  }
  .blog .event-table .col-1, .blog .event-table .col-2, .blog .event-table .col-3, .archive .event-table .col-1, .archive .event-table .col-2, .archive .event-table .col-3 {
    width: 100%;
  }
}
.blog .event-table .event-row, .archive .event-table .event-row {
  transition: background-color 0.3s ease-in-out;
}
@media screen and (max-width: 781px) {
  .blog .event-table .event-row, .archive .event-table .event-row {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
  }
  .blog .event-table .event-row td.col-3, .archive .event-table .event-row td.col-3 {
    border-bottom: 0.1rem solid #183762 !important;
  }
}
.blog .event-table .event-row:hover, .archive .event-table .event-row:hover {
  background-color: #2D2D2D11;
}
.blog .event-table .event-row:not(:last-child) td, .archive .event-table .event-row:not(:last-child) td {
  border-bottom: 0.1rem solid #183762;
}
@media screen and (max-width: 781px) {
  .blog .event-table .event-row:not(:last-child) td, .archive .event-table .event-row:not(:last-child) td {
    border-bottom: none;
  }
}
.blog .event-table .event-row .event-day, .archive .event-table .event-row .event-day {
  margin: 0;
  font-weight: 400;
}
.blog .event-table .event-row .event-date, .archive .event-table .event-row .event-date {
  margin: 0;
  font-weight: 900;
}
.blog .event-table .event-row .event-see-more a, .archive .event-table .event-row .event-see-more a {
  text-decoration: none;
}
.blog .event-table .event-row .event-title-link:hover, .blog .event-table .event-row .event-see-more-link:hover, .archive .event-table .event-row .event-title-link:hover, .archive .event-table .event-row .event-see-more-link:hover {
  color: #E74C89;
}
.blog .all-past-actu, .archive .all-past-actu {
  margin-top: 2rem;
  margin-block: 2rem;
  display: flex;
  justify-content: start;
  align-items: start;
  gap: clamp(1.5rem, 0.0274509804 * (100vmin + 100vmax) / 2, 2.8rem);
  flex-wrap: wrap;
}
.blog .all-past-actu .actu-item, .archive .all-past-actu .actu-item {
  flex: 0 0 calc(50% - clamp(1.5rem, 0.0274509804 * (100vmin + 100vmax) / 2, 2.8rem) / 2);
}
@media screen and (max-width: 781px) {
  .blog .all-past-actu .actu-item, .archive .all-past-actu .actu-item {
    flex: 0 0 100%;
  }
}
.blog .all-past-actu .actu-item .post-thumb, .archive .all-past-actu .actu-item .post-thumb {
  display: block;
  width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
}
.blog .all-past-actu .actu-item .post-thumb img, .archive .all-past-actu .actu-item .post-thumb img {
  transform: scale(1);
  display: block;
  object-fit: cover;
  height: 100%;
  width: 100%;
  transition: transform 0.5s ease-in-out;
}
.blog .all-past-actu .actu-item .post-thumb:hover img, .archive .all-past-actu .actu-item .post-thumb:hover img {
  transform: scale(1.04);
}
.blog .all-past-actu .actu-item .post-title-link:hover, .blog .all-past-actu .actu-item .post-see-more-link:hover, .archive .all-past-actu .actu-item .post-title-link:hover, .archive .all-past-actu .actu-item .post-see-more-link:hover {
  color: #E74C89;
}
.blog .all-past-actu .actu-item .post-footer, .archive .all-past-actu .actu-item .post-footer {
  display: flex;
  gap: clamp(1.5rem, 0.0274509804 * (100vmin + 100vmax) / 2, 2.8rem);
  justify-content: space-between;
  align-items: end;
}

/* ------------------------------------------- */
/* ------------------------------------------- */
#don .wp-block-group {
  max-width: 1280px !important;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1320px) {
  #don .wp-block-group {
    width: calc(100% - 40px);
  }
}

#colophon {
  background-color: #D9EEF3;
  width: 100%;
  padding: 6rem 0;
  padding-bottom: 2rem;
  position: relative;
}
@media screen and (max-width: 781px) {
  #colophon {
    padding-top: 0;
  }
}
#colophon .site-info {
  max-width: 1280px !important;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
@media screen and (max-width: 1320px) {
  #colophon .site-info {
    width: calc(100% - 40px);
  }
}
#colophon .site-info .foot-1 {
  width: 20%;
}
@media screen and (max-width: 781px) {
  #colophon .site-info .foot-1 {
    width: 30%;
  }
}
@media screen and (max-width: 420px) {
  #colophon .site-info .foot-1 {
    width: 150px;
  }
}
#colophon .site-info .foot-1 a {
  display: block;
  position: relative;
  top: -12.5rem;
}
@media screen and (max-width: 781px) {
  #colophon .site-info .foot-1 a {
    top: -4rem;
  }
}
#colophon .site-info .foot-2 {
  margin-left: 10%;
  width: 20%;
  font-size: clamp(1.6rem, 0.0176470588 * (100vmin + 100vmax) / 2, 1.8rem);
}
@media screen and (max-width: 781px) {
  #colophon .site-info .foot-2 {
    margin-bottom: 2rem;
    width: 100%;
    margin-left: 0;
  }
}
@media screen and (max-width: 420px) {
  #colophon .site-info .foot-2 {
    width: 100%;
  }
}
#colophon .site-info .foot-2 ul {
  margin: 0;
  padding: 0;
  list-style: none;
  font-weight: 700;
}
#colophon .site-info .foot-2 ul > li:not(.menu-item-has-children) a:hover {
  color: #E74C89;
}
#colophon .site-info .foot-2 ul > li {
  padding-bottom: 1rem;
}
#colophon .site-info .foot-2 ul .menu-item-has-children > a {
  opacity: 0.5;
  pointer-events: none;
}
#colophon .site-info .foot-2 ul ul {
  padding-left: 15%;
}
@media screen and (max-width: 781px) {
  #colophon .site-info .foot-2 ul ul {
    padding-left: 3rem;
  }
}
#colophon .site-info .foot-2 ul ul > li:last-of-type {
  padding-bottom: 0;
}
#colophon .site-info .foot-2 ul ul > li:last-of-type a:hover {
  color: #E74C89;
}
#colophon .site-info .foot-3 {
  margin-left: 10%;
  width: 20%;
}
@media screen and (max-width: 781px) {
  #colophon .site-info .foot-3 {
    width: 100%;
    margin-left: 0;
  }
}
@media screen and (max-width: 420px) {
  #colophon .site-info .foot-3 {
    width: 100%;
  }
}
#colophon .site-info .foot-3 h4 {
  font-weight: 700;
  margin-top: 5rem;
}
#colophon .site-info .foot-3 h4:first-of-type {
  margin-top: 0;
}
#colophon .site-info .foot-3 p > a {
  text-decoration: underline;
}
#colophon .site-info .foot-3 p > a:hover {
  color: #E74C89;
}
#colophon .site-info .foot-3 ul {
  list-style: none;
  display: flex;
  padding: 0;
  margin: 0;
  padding-top: 2rem;
  gap: 2rem;
}
#colophon .site-info .foot-3 ul a:hover svg path {
  fill: #E74C89;
}
#colophon .site-info .foot-3 ul a:hover svg.face-social path {
  fill: transparent !important;
  stroke: #E74C89 !important;
}
#colophon .bottom-foot {
  max-width: 1280px !important;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-top: 6rem;
  font-size: max(1.2rem, clamp(1.6rem, 0.0176470588 * (100vmin + 100vmax) / 2, 1.8rem) * 0.777) !important;
}
@media screen and (max-width: 1320px) {
  #colophon .bottom-foot {
    width: calc(100% - 40px);
  }
}
#colophon .bottom-foot a:hover {
  color: #E74C89;
}
#colophon::after {
  width: 19rem;
  height: 37rem;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 10vw;
  transform: translateY(-70%);
  background-image: url("./sass/image_lefl/livres.png");
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (max-width: 1320px) {
  #colophon::after {
    right: 3vw;
    width: 14rem;
  }
}
@media screen and (max-width: 781px) {
  #colophon::after {
    transform: translateY(-40%);
    right: 10vw;
  }
}
@media screen and (max-width: 420px) {
  #colophon::after {
    display: none;
  }
}

#modale-don {
  position: fixed;
  z-index: 11111;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  display: none;
  padding: 5% 5vh;
  justify-content: center;
  align-items: center;
  background-color: #2D2D2D60;
}
@media screen and (max-width: 420px) {
  #modale-don {
    padding: 5% 20px;
  }
}
#modale-don.show-modale {
  display: flex;
}
#modale-don .modale-content {
  position: relative;
  width: 80%;
  max-width: 781px;
  background-color: #183762;
  color: #ffffff;
  padding: 8rem;
  font-size: max(1.2rem, clamp(1.6rem, 0.0176470588 * (100vmin + 100vmax) / 2, 1.8rem) * 0.777);
  box-shadow: 2rem 2rem 3rem #2D2D2D60;
  z-index: 999;
}
#modale-don .modale-content > * {
  position: relative;
  z-index: 1000;
}
@media screen and (max-width: 781px) {
  #modale-don .modale-content {
    width: 100%;
    padding: 6rem;
  }
}
@media screen and (max-width: 420px) {
  #modale-don .modale-content {
    width: 100%;
    padding: 6rem 2rem;
  }
}
#modale-don .modale-content::before {
  width: 23rem;
  height: 27rem;
  content: "";
  display: block;
  position: absolute;
  top: -11.5rem;
  left: -9vw;
  background-image: url("./sass/image_lefl/perroquet+ombre.png");
  background-position: top;
  background-size: contain;
  background-repeat: no-repeat;
  pointer-events: none;
}
@media screen and (max-width: 781px) {
  #modale-don .modale-content::before {
    width: 11rem;
    height: 13rem;
    top: initial;
    left: initial;
    z-index: 998;
    bottom: 0;
    right: 0;
    transform: translate(10%, 50%);
  }
}
#modale-don #close-modale {
  position: absolute;
  top: 2rem;
  right: 2rem;
  display: block;
  width: 4rem;
  cursor: pointer;
}
@media screen and (max-width: 781px) {
  #modale-don #close-modale {
    top: 1.5rem;
    right: 1.5rem;
    width: 3rem;
  }
}
#modale-don #close-modale svg {
  display: block;
  width: 100%;
}

/* ------------------------------------------- */
/* ------------------------------------------- */
.error404 #primary {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  padding-top: 0;
}
.error404 .redirection {
  width: 100%;
  max-width: 600px;
  height: 10px;
  border: 1px solid #7FC6D8;
  border-radius: 5px;
  margin: 5rem auto 0;
}
.error404 .redirection .full-load {
  background-color: #7FC6D8;
  width: 0;
  animation-name: redirect;
  animation-duration: 2.8s;
  animation-timing-function: ease-in-out;
  height: 100%;
  animation-fill-mode: forwards;
  border-radius: 5px;
}
@keyframes redirect {
  0% {
    width: 0;
  }
  100% {
    width: 100%;
  }
}

/* Onzeweb X Gutenberg
--------------------------------------------- */
/* ------------------------------------------- */
/* ------------------------------------------- */
.wp-block-buttons {
  margin: clamp(1.5rem, 0.0274509804 * (100vmin + 100vmax) / 2, 2.8rem) 0;
}
.wp-block-buttons .wp-block-button .wp-block-button__link {
  background-color: transparent;
  border-radius: 3rem;
  padding: 1rem 2rem;
  font-size: clamp(1.6rem, 0.0176470588 * (100vmin + 100vmax) / 2, 1.8rem);
  font-weight: 700;
  text-align: center;
  transition: filter 0.3s ease-in-out;
  filter: saturate(1);
}
.wp-block-buttons .wp-block-button .wp-block-button__link:hover {
  filter: saturate(2);
}
.wp-block-buttons .wp-block-button .wp-block-button__link:focus, .wp-block-buttons .wp-block-button .wp-block-button__link:focus-visible, .wp-block-buttons .wp-block-button .wp-block-button__link:active {
  outline: 0;
  outline-color: transparent;
}

/* ------------------------------------------- */
/* ------------------------------------------- */
@media (max-width: 781px) {
  #primary .wp-block-columns.is-style-reverse-phone {
    flex-direction: column-reverse !important;
  }
  #primary .wp-block-columns.is-style-2col-mobile .wp-block-column {
    flex-basis: 45% !important;
  }
}

/* ------------------------------------------- */
/* ------------------------------------------- */
#primary .wp-block-group.is-style-perchoir, #modale-don .wp-block-group.is-style-perchoir {
  position: relative;
}
@media screen and (max-width: 1320px) {
  #primary .wp-block-group.is-style-perchoir, #modale-don .wp-block-group.is-style-perchoir {
    padding-bottom: 15rem !important;
  }
}
#primary .wp-block-group.is-style-perchoir::after, #modale-don .wp-block-group.is-style-perchoir::after {
  width: 19rem;
  height: 19rem;
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 3vw;
  background-image: url("./sass/image_lefl/perchoire.png");
  background-position: top;
  background-size: 100%;
  background-repeat: no-repeat;
  pointer-events: none;
}
@media screen and (max-width: 1480px) {
  #primary .wp-block-group.is-style-perchoir::after, #modale-don .wp-block-group.is-style-perchoir::after {
    left: -3rem;
  }
}
@media screen and (max-width: 1320px) {
  #primary .wp-block-group.is-style-perchoir::after, #modale-don .wp-block-group.is-style-perchoir::after {
    left: 20px;
    width: 13rem;
    height: 13rem;
  }
}
#primary .wp-block-group.is-style-perroquet, #modale-don .wp-block-group.is-style-perroquet {
  position: relative;
  margin-top: 13rem;
}
@media screen and (max-width: 1320px) {
  #primary .wp-block-group.is-style-perroquet, #modale-don .wp-block-group.is-style-perroquet {
    padding-top: 12rem !important;
  }
}
#primary .wp-block-group.is-style-perroquet::after, #modale-don .wp-block-group.is-style-perroquet::after {
  width: 23rem;
  height: 27rem;
  content: "";
  display: block;
  position: absolute;
  top: -11.5rem;
  right: 5vw;
  background-image: url("./sass/image_lefl/perroquet+ombre.png");
  background-position: top;
  background-size: contain;
  background-repeat: no-repeat;
  pointer-events: none;
}
@media screen and (max-width: 1320px) {
  #primary .wp-block-group.is-style-perroquet::after, #modale-don .wp-block-group.is-style-perroquet::after {
    width: 17rem;
    height: 20rem;
    top: -10rem;
  }
}
#primary .wp-block-group.is-style-illustration, #modale-don .wp-block-group.is-style-illustration {
  position: relative;
  margin-bottom: 0;
}
@media screen and (max-width: 781px) {
  #primary .wp-block-group.is-style-illustration, #modale-don .wp-block-group.is-style-illustration {
    padding-bottom: 15rem;
  }
}
#primary .wp-block-group.is-style-illustration::after, #modale-don .wp-block-group.is-style-illustration::after {
  width: 47rem;
  height: 77rem;
  content: "";
  display: block;
  position: absolute;
  bottom: -9.3rem;
  right: 0;
  z-index: 1;
  background-image: url("./sass/image_lefl/illustration.png");
  background-position: bottom left;
  background-size: cover;
  background-repeat: no-repeat;
  pointer-events: none;
}
@media screen and (max-width: 1580px) {
  #primary .wp-block-group.is-style-illustration::after, #modale-don .wp-block-group.is-style-illustration::after {
    aspect-ratio: 47/77;
    width: 23rem;
  }
}
@media screen and (max-width: 781px) {
  #primary .wp-block-group.is-style-illustration::after, #modale-don .wp-block-group.is-style-illustration::after {
    width: 20rem;
    height: auto;
    bottom: -4rem;
  }
}
#primary .wp-block-group.is-style-illustration-home, #modale-don .wp-block-group.is-style-illustration-home {
  position: relative;
  margin-bottom: 0;
  padding-bottom: 24rem !important;
}
#primary .wp-block-group.is-style-illustration-home::after, #modale-don .wp-block-group.is-style-illustration-home::after {
  width: 71rem;
  height: 77rem;
  content: "";
  display: block;
  position: absolute;
  bottom: -19.5rem;
  right: calc((100vw - 1280px) / 2);
  z-index: 1;
  background-image: url("./sass/image_lefl/illustration-home.png");
  background-position: bottom left;
  background-size: contain;
  background-repeat: no-repeat;
  pointer-events: none;
}
@media screen and (max-width: 781px) {
  #primary .wp-block-group.is-style-illustration-home::after, #modale-don .wp-block-group.is-style-illustration-home::after {
    width: 41rem;
    height: auto;
    aspect-ratio: 71/77;
    right: 2vw;
    bottom: -11.3rem;
  }
}
@media screen and (max-width: 600px) {
  #primary .wp-block-group.is-style-illustration-home::after, #modale-don .wp-block-group.is-style-illustration-home::after {
    width: 30rem;
    bottom: -8.3rem;
  }
}
#primary .wp-block-group.is-style-illustration-home::before, #modale-don .wp-block-group.is-style-illustration-home::before {
  width: 19rem;
  height: 19rem;
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 3vw;
  background-image: url("./sass/image_lefl/perchoire.png");
  background-position: top;
  background-size: 100%;
  background-repeat: no-repeat;
  pointer-events: none;
}
@media screen and (max-width: 1480px) {
  #primary .wp-block-group.is-style-illustration-home::before, #modale-don .wp-block-group.is-style-illustration-home::before {
    left: -3rem;
  }
}
@media screen and (max-width: 1320px) {
  #primary .wp-block-group.is-style-illustration-home::before, #modale-don .wp-block-group.is-style-illustration-home::before {
    left: 20px;
    width: 13rem;
    height: 13rem;
  }
}
@media screen and (max-width: 600px) {
  #primary .wp-block-group.is-style-illustration-home::before, #modale-don .wp-block-group.is-style-illustration-home::before {
    display: none;
  }
}

/* ------------------------------------------- */
/* ------------------------------------------- */
.wp-block-image .wp-element-caption {
  text-align: center;
  font-size: max(1.2rem, clamp(1.6rem, 0.0176470588 * (100vmin + 100vmax) / 2, 1.8rem) * 0.777);
}

/* ------------------------------------------- */
/* ------------------------------------------- */
#primary .wp-block-quote cite {
  text-align: right !important;
  font-size: max(1.2rem, clamp(1.6rem, 0.0176470588 * (100vmin + 100vmax) / 2, 1.8rem) * 0.777) !important;
}

/* ------------------------------------------- */
/* ------------------------------------------- */
@media (max-width: 600px) {
  #primary .wp-block-media-text .wp-block-media-text__content {
    padding: 0;
    padding-top: 2rem;
  }
}
@media (min-width: 601px) {
  #primary .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
    padding-left: 0;
  }
}
@media (min-width: 601px) {
  #primary .wp-block-media-text:not(.has-media-on-the-right) .wp-block-media-text__content {
    padding-right: 0;
  }
}
