@charset "UTF-8";
/*!
Theme Name: MVF
Theme URI: http://underscores.me/
Author: bg-press
Author URI: http://underscores.me/
Description: Description
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: mvf
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.

MVF 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 {
  -webkit-box-sizing: content-box;
          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;
  -webkit-text-decoration: underline dotted;
          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 {
  -webkit-box-sizing: border-box;
          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] {
  -webkit-box-sizing: border-box;
          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 {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/
/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
  color: #404040;
  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: #4169e1;
}
a:visited {
  color: #800080;
}
a:hover, a:focus, a:active {
  color: #191970;
}
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
--------------------------------------------- */
.main-navigation {
  display: block;
  width: 100%;
}
.main-navigation ul {
  display: none;
  list-style: none;
  margin: 0;
  padding-left: 0;
}
.main-navigation ul ul {
  -webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
          box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
  float: left;
  position: absolute;
  top: 100%;
  left: -999em;
  z-index: 99999;
}
.main-navigation ul ul ul {
  left: -999em;
  top: 0;
}
.main-navigation ul ul li:hover > ul, .main-navigation ul ul li.focus > ul {
  display: block;
  left: auto;
}
.main-navigation ul ul a {
  width: 200px;
}
.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
  left: auto;
}
.main-navigation li {
  position: relative;
}
.main-navigation a {
  display: block;
  text-decoration: none;
}
/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
  display: block;
}

@media screen and (min-width: 37.5em) {
  .menu-toggle {
    display: none;
  }
  .main-navigation ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.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: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 50%;
          flex: 1 0 50%;
}
.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
  text-align: end;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 50%;
          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;
  -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
          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;
}

/* FONTS */
@font-face {
  font-family: "Luciole";
  src: url("fonts/Luciole-Bold.woff2") format("woff2"), url("fonts/Luciole-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Luciole";
  src: url("fonts/Luciole-BoldItalic.woff2") format("woff2"), url("fonts/Luciole-BoldItalic.woff") format("woff");
  font-weight: bold;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Luciole";
  src: url("fonts/Luciole-Regular.woff2") format("woff2"), url("fonts/Luciole-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Luciole";
  src: url("fonts/Luciole-Italic.woff2") format("woff2"), url("fonts/Luciole-Italic.woff") format("woff");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: "Intro";
  src: url("fonts/Intro-Black.woff2") format("woff2"), url("fonts/Intro-Black.woff") format("woff");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}
/* MIXINS */
/* VARS */
.som {
  visibility: visible;
}
@media screen and (min-width: 1024px) {
  .som {
    visibility: hidden;
  }
}

html {
  font-size: 62.5%;
}

body,
p {
  font-size: clamp(1.6rem, 1.8vw, 1.8rem);
  line-height: 1.2;
}

body {
  position: relative;
  overflow-x: hidden;
}

.nomrgn h2,
.nomrgn h3 {
  margin: 0;
}

h2.nomrgn,
h3.nomrgn {
  margin: 0;
}

h1,
h2.big {
  font-size: clamp(3.2rem, 4vw, 5rem);
  line-height: 1.1em;
}

h1,
h2.big {
  position: relative;
  padding-top: 0.2em;
}

h2 {
  font-size: clamp(2rem, 2.5vw, 2.4rem);
}

h2.small,
h3 {
  font-size: clamp(1.6rem, 2vw, 1.9rem);
  font-weight: 700;
}

.chapeau {
  font-size: clamp(1.6rem, 2vw, 2.1rem);
  font-weight: 700;
}

html,
body {
  max-width: 100%;
  scroll-behavior: smooth;
  color: black;
  background-color: #fcfbf7;
}

*,
h1 {
  margin-top: 0;
}

ul.menu {
  list-style: none;
}
ul.menu a {
  text-decoration: none;
}

h1,
h2,
h3 {
  font-family: "Luciole";
}
h1 a,
h1 a:visited,
h2 a,
h2 a:visited,
h3 a,
h3 a:visited {
  text-decoration: none;
}

.entry-content .main p,
.entry-content .main ul {
  text-align: justify;
}
.entry-content .main a {
  color: #0e6fff;
  text-decoration: none;
}
.entry-content .main a:hover {
  text-decoration: underline;
}

.entry-content,
footer {
  position: relative;
}

section {
  margin-bottom: 6rem;
  scroll-margin-top: 90px;
}
section .entry-header {
  padding: 3rem 0;
}
section.splash {
  margin-bottom: 0;
  position: relative;
  overflow: hidden;
}
section.splash .entry-title,
section.splash .entry-title > * {
  font-family: "Luciole" !important;
  font-size: clamp(3.2rem, 4vw, 5rem);
  position: relative;
}
section.splash .post-thumbnail {
  position: relative;
}
section.splash .post-thumbnail:after {
  content: "";
  display: block;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  background-color: rgba(0, 0, 0, 0.3);
  width: 100%;
  height: 100%;
}
section.splash .entry-header {
  position: absolute;
  top: 50%;
  width: 100%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  color: white;
}
section.splash .entry-header .container {
  position: relative;
}
section.splash .entry-header .container:before {
  content: "";
  display: block;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  left: 0;
  width: 50%;
  aspect-ratio: 1;
  top: 50%;
  -webkit-transform: translate(-25%, -50%) rotate(-10deg);
          transform: translate(-25%, -50%) rotate(-10deg);
}
section.splash .entry-header .container .entry-accroche {
  position: relative;
}

.home .splash .post-thumbnail:after {
  content: none;
}

.wContainer,
.sContainer,
.xsContainer {
  width: 100%;
  padding: 0 15px;
  margin: auto;
}

.wContainer {
  max-width: 1600px;
}

.sContainer {
  max-width: 1440px;
}

.xsContainer {
  max-width: 1024px;
}

.site-main {
  margin-bottom: 30px;
}

.col,
.col25,
.col33,
.col40,
.col50,
.col60,
.col66,
.col75 {
  padding: 0 15px;
  width: 100%;
}

.imgContainer {
  position: relative;
  aspect-ratio: 16/9;
  overflow: hidden;
}
.imgContainer img {
  position: absolute;
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
  height: 100%;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: all ease 0.5s;
  transition: all ease 0.5s;
}
@media screen and (min-width: 1024px) {
  .imgContainer {
    aspect-ratio: 3/4;
  }
}

.post-thumbnail {
  position: relative;
  aspect-ratio: 3.6;
  overflow: hidden;
}
.post-thumbnail img {
  position: absolute;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: all ease 0.5s;
  transition: all ease 0.5s;
}

@media screen and (min-width: 1024px) {
  .row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 -15px;
  }
  .col25 {
    width: 25%;
  }
  .col33 {
    width: 33.333%;
  }
  .col40 {
    width: 40%;
  }
  .col50 {
    width: 50%;
  }
  .col60 {
    width: 60%;
  }
  .col66 {
    width: 66.666%;
  }
  .col75 {
    width: 75%;
  }
  .col {
    width: 100%;
  }
  .headerTxt {
    padding: 0 9rem;
  }
}
.container {
  width: 100%;
  margin-inline: auto;
  padding-inline: 1rem;
}
@media (min-width: 576px) {
  .container {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .container {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .container {
    max-width: 960px;
  }
}
@media (min-width: 1200px) {
  .container {
    max-width: 1140px;
  }
}
@media (min-width: 1400px) {
  .container {
    max-width: 1320px;
  }
}

@media (min-width: 1400px) {
  section.container {
    padding: 0 145px;
  }
}

.smallContainer {
  width: 100%;
  margin-inline: auto;
  max-width: 960px;
}

.site-header__menu ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 1023px) {
  .site-header__menu li {
    width: 100%;
    margin-inline: auto;
    padding-inline: 1rem;
    margin: auto;
  }
}
@media (min-width: 576px) {
  .site-header__menu li {
    max-width: 540px;
  }
}
@media (min-width: 768px) {
  .site-header__menu li {
    max-width: 720px;
  }
}
@media (min-width: 992px) {
  .site-header__menu li {
    max-width: 960px;
  }
}

.site-header {
  background-color: #fbfbfb;
  border-bottom: 1px solid #ddd;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  position: relative;
  z-index: 10;
  height: 9rem;
}

.site-header .site-header__branding {
  position: relative;
  z-index: 12;
}

.site-header__branding {
  font-size: 1.5rem;
  font-weight: bold;
}
.site-header__branding #signature p {
  padding-top: 0.2em;
  font-size: 1.2rem;
  line-height: 1.1em;
  text-align: right;
  margin-bottom: 0;
}

.site-title {
  overflow: hidden;
  width: 1px;
  height: 1px;
  line-height: 0;
  padding: 0;
  margin: 0;
}
.site-title::before {
  content: none;
}

.site-header__branding,
.custom-logo-link,
.custom-logo {
  height: 9rem;
  width: auto;
  max-width: none;
}

.site-header__nav {
  height: 0;
  -webkit-transition: height 0.4s ease;
  transition: height 0.4s ease;
  background: #fff;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  z-index: 10;
}

.site-header__menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media (min-width: 1024px) {
  .site-header__menu {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.site-header__menu li a {
  display: block;
  text-decoration: none;
  padding: 0.75rem 1rem;
  color: #333;
}

.site-header__menu li a:hover {
  color: #000;
}

.site-header .menu {
  --s: 40px;
  --c: black;
  height: var(--s);
  aspect-ratio: 1;
  border: none;
  padding: 0;
  border-inline: calc(var(--s) / 2) solid transparent;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  --_g1: linear-gradient(var(--c) 20%, transparent 0 80%, var(--c) 0)
    no-repeat content-box border-box;
  --_g2: radial-gradient(
      circle closest-side at 50% 12.5%,
      var(--c) 95%,
      transparent
    )
    repeat-y content-box border-box;
  background: var(--_g2) left var(--_p, 0px) top, var(--_g1) left calc(var(--s) / 10 + var(--_p, 0px)) top, var(--_g2) right var(--_p, 0px) top, var(--_g1) right calc(var(--s) / 10 + var(--_p, 0px)) top;
  background-size: 20% 80%, 40% 100%;
  position: relative;
  clip-path: inset(0 25%);
  -webkit-mask: -webkit-gradient(linear, left top, right top, from(transparent), color-stop(25%, #000), to(transparent));
  -webkit-mask: linear-gradient(90deg, transparent, #000 25% 75%, transparent);
  cursor: pointer;
  -webkit-transition: background-position 0.3s var(--_s, 0.3s), clip-path 0s var(--_s, 0.6s);
  transition: background-position 0.3s var(--_s, 0.3s), clip-path 0s var(--_s, 0.6s);
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  z-index: 11;
}

@media (min-width: 1024px) {
  .site-header .menu {
    display: none;
  }
  .site-header:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    backdrop-filter: blur(10px);
    background: rgb(255, 255, 255);
    /* Ajuste la transparence */
    z-index: 0;
  }
}
.site-header .menu:before,
.site-header .menu:after {
  content: "";
  position: absolute;
  border-radius: var(--s);
  inset: 40% 0;
  background: var(--c);
  -webkit-transition: -webkit-transform 0.3s calc(0.3s - var(--_s, 0.3s));
  transition: -webkit-transform 0.3s calc(0.3s - var(--_s, 0.3s));
  transition: transform 0.3s calc(0.3s - var(--_s, 0.3s));
  transition: transform 0.3s calc(0.3s - var(--_s, 0.3s)), -webkit-transform 0.3s calc(0.3s - var(--_s, 0.3s));
}
.site-header .menu:checked {
  clip-path: inset(0);
  --_p: calc(-1 * var(--s));
  --_s: 0s;
}
.site-header .menu:checked:before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.site-header .menu:checked:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.site-header {
  background-color: #fff;
  border-bottom: 1px solid #ddd;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 1024px) {
  .site-header {
    background-color: transparent;
  }
}

.site-header__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.site-header__nav {
  height: 0;
  -webkit-transition: height 0.4s ease;
  transition: height 0.4s ease;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
}

.site-header__menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.site-header__menu li a {
  display: block;
  text-decoration: none;
  padding: 0.75rem 1rem;
  color: #333;
}

.site-header__menu li a:hover {
  color: #000;
}

.site-header__menu {
  list-style: none;
  margin: 0;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
}

.site-header__menu > li > a {
  position: relative;
  display: inline-block;
}
.site-header__menu > li > a:before {
  content: "";
  display: block;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  -webkit-transition: all ease 0.5s;
  transition: all ease 0.5s;
  -webkit-mask: url(img/leaf-mask.svg) no-repeat center/contain;
  mask: url(img/leaf-mask.svg) no-repeat center/contain;
  background-color: var(--mvf-theme-color, #dd226a);
  left: -0.5rem;
  width: 5rem;
  aspect-ratio: 1;
  top: 0;
  -webkit-transform: translate(0, 0) rotate(-10deg) scale(0);
          transform: translate(0, 0) rotate(-10deg) scale(0);
}
.site-header__menu > li > a:hover:before {
  -webkit-transform: translate(-50%, -50%) rotate(-10deg) scale(0.5);
          transform: translate(-50%, -50%) rotate(-10deg) scale(0.5);
}

.site-header__menu > li.current_page_item > a:before,
.site-header__menu > li.current_page_ancestor > a:before {
  -webkit-transform: translate(-50%, -50%) rotate(-10deg) scale(0.5);
          transform: translate(-50%, -50%) rotate(-10deg) scale(0.5);
}

.site-header__menu > li > a {
  text-decoration: none;
  color: #000;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 1.6rem;
}

@media screen and (min-width: 1024px) {
  .site-header__container {
    position: relative;
  }
  .site-header__nav {
    background-color: transparent;
  }
  .site-header__nav {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    position: static;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    height: auto !important;
    overflow: visible;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 2rem;
  }
  .site-header__nav li {
    height: 9rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .site-header__nav li a {
    padding-bottom: 2rem;
  }
  .site-header__nav li li {
    height: auto;
  }
  .site-header__menu {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
  .site-header__menu > li .sub-menu {
    display: none;
    position: absolute;
    top: 9rem;
    left: 0;
    min-width: 200px;
    width: 100%;
    padding: 1rem 0;
    background-color: #05315f;
    -webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
            box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
    z-index: 10;
    -webkit-columns: 4;
       -moz-columns: 4;
            columns: 4;
    text-transform: uppercase;
  }
  .site-header__menu > li .sub-menu li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    font-weight: 700;
  }
  .site-header__menu > li .sub-menu li a {
    border-bottom: dotted 1px rgba(255, 255, 255, 0.5);
  }
  .site-header__menu > li .sub-menu li.break {
    -webkit-column-break-after: column;
       -moz-column-break-after: column;
            break-after: column;
  }
  .site-header__menu > li .sub-menu .sub-menu {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    text-transform: none;
    top: 0;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  .site-header__menu > li .sub-menu .sub-menu li {
    font-weight: 400;
  }
  .site-header__menu > li .sub-menu .sub-menu li a {
    border-bottom: none;
  }
  .site-header__menu > li .sub-menu li {
    padding: 0;
  }
  .site-header__menu > li .sub-menu li a {
    display: block;
    padding: 1rem 3rem;
    text-decoration: none;
    color: white;
    font-size: 1.4rem;
    position: relative;
    -webkit-transition: all ease 0.5s;
    transition: all ease 0.5s;
  }
  .site-header__menu > li .sub-menu li a:before {
    content: "";
    display: block;
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    width: 1rem;
    height: 1rem;
    background-image: url(img/arrow-right.svg);
    left: 1rem;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    visibility: hidden;
  }
  .site-header__menu > li .sub-menu li a:hover {
    color: #dd226a;
    padding-left: 4rem;
  }
  .site-header__menu > li .sub-menu li a:hover:before {
    visibility: visible;
  }
  .site-header__menu > li:hover > .sub-menu {
    display: block;
  }
}
@media screen and (max-width: 1023px) {
  .site-header__menu {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
  .site-header__menu .menu-item {
    position: relative;
  }
  .site-header__menu .menu-item > a {
    display: block;
    padding: 1rem 1.5rem;
    font-weight: 600;
    color: #333;
    text-decoration: none;
  }
  .site-header__menu .menu-item .submenu-toggle {
    position: absolute;
    top: 0;
    right: 1.5rem;
    background: none;
    border: none;
    font-size: 3rem;
    cursor: pointer;
    z-index: 2;
    padding: 0;
    display: block;
    width: 3rem;
  }
  .site-header__menu .menu-item .submenu-toggle::after {
    content: "▼";
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  }
  .site-header__menu .menu-item .submenu-toggle.active::after {
    -webkit-transform: rotate(180deg);
            transform: rotate(180deg);
  }
  .site-header__menu .menu-item .sub-menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    background: #f4f4f4;
    padding-left: 1rem;
    max-height: 0;
    overflow: hidden;
    -webkit-transition: max-height 0.4s ease;
    transition: max-height 0.4s ease;
  }
  .site-header__menu .menu-item .sub-menu a {
    padding: 0.75rem 1rem;
    color: #000;
  }
}
@media (max-width: 1023px) {
  .site-header__nav {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: calc(100vh - 100%);
    background: #fff;
    z-index: 9;
    overflow-y: auto;
    pointer-events: none;
    -webkit-transition: -webkit-transform 0.4s ease;
    transition: -webkit-transform 0.4s ease;
    transition: transform 0.4s ease;
    transition: transform 0.4s ease, -webkit-transform 0.4s ease;
  }
  .site-header__nav.open {
    pointer-events: auto;
  }
  .site-header__nav {
    overflow: hidden;
    max-height: 0;
    -webkit-transition: max-height 0.4s ease;
    transition: max-height 0.4s ease;
    background: #fff;
  }
  .site-header__nav.open {
    max-height: 100vh;
  }
}
@media screen and (min-width: 1024px) {
  .nav-is-stuck #masthead {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    height: 90px;
    -webkit-animation: stickAnim 0.5s;
            animation: stickAnim 0.5s;
  }
}
@media screen and (min-width: 1024px) and (min-width: 1024px) {
  .nav-is-stuck #masthead {
    height: 90px;
  }
}
@media screen and (min-width: 1024px) {
  @-webkit-keyframes stickAnim {
    0% {
      -webkit-transform: translateY(-90px);
              transform: translateY(-90px);
    }
    100% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
    }
  }
  @keyframes stickAnim {
    0% {
      -webkit-transform: translateY(-90px);
              transform: translateY(-90px);
    }
    100% {
      -webkit-transform: translateY(0);
              transform: translateY(0);
    }
  }
  .nav-is-stuck .admin-bar #masthead {
    top: 32px;
  }
}
/* SOUS pages */
/* Liste en grille — mobile d'abord (1 colonne), multi-colonnes dès ~640px) */
.mvf-sous-pages {
  --shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
  list-style: none;
  margin: 0;
  padding: 0;
}
.mvf-sous-pages .mvf-sous-pages__item {
  margin-bottom: 0.5rem;
  border-radius: 1.5rem;
}
.mvf-sous-pages .mvf-sous-pages__item .mvf-sous-pages__card {
  border-radius: 1.5rem;
}

.main {
  /* Item neutre (permet l'alignement hauteur égale) */
}
.main .mvf-sous-pages {
  --gap: 1rem;
  --radius: 1.5rem;
  --shadow-hover: 0 3px 12px rgba(0, 0, 0, 0.08);
  --border: none;
  display: grid;
  grid-template-columns: 1fr;
  /* vertical sur mobile */
  gap: var(--gap);
  text-transform: uppercase;
  border-radius: 1.5rem;
  margin-bottom: 0.5rem;
}
@media (min-width: 640px) {
  .main .mvf-sous-pages {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (min-width: 960px) {
  .main .mvf-sous-pages {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    /* horizontal en plusieurs colonnes */
  }
}
.main .mvf-sous-pages__item {
  display: block;
}

/* Cartouche élégant */
.mvf-sous-pages__card {
  display: block;
  height: 100%;
  padding: 0.95rem 1rem;
  background: #fff;
  border: var(--border);
  border-radius: var(--radius);
  -webkit-box-shadow: var(--shadow);
          box-shadow: var(--shadow);
  text-decoration: none;
  color: #111827;
  /* gris foncé élégant */
  text-align: center;
  padding: 1.5rem 3rem;
}
.mvf-sous-pages__card:hover {
  background-color: #05315f;
}
.mvf-sous-pages__card:hover .mvf-sous-pages__title {
  color: white;
}
.mvf-sous-pages__card:hover .mvf-sous-pages__title:before {
  top: 50%;
  -webkit-transform: translate(-100%, -100%) rotate(-10deg) scale(0.75);
          transform: translate(-100%, -100%) rotate(-10deg) scale(0.75);
}

/* Titre */
.mvf-sous-pages__title {
  font-family: "Luciole";
  text-transform: uppercase;
  display: inline-block;
  letter-spacing: 0.1em;
  font-size: 1.4rem;
  line-height: 1.35;
  font-weight: 600;
  color: #000;
  position: relative;
}
.mvf-sous-pages__title:before {
  content: "";
  display: block;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  -webkit-transition: all ease 0.5s;
  transition: all ease 0.5s;
  -webkit-mask: url(img/leaf-mask.svg) no-repeat center/contain;
  mask: url(img/leaf-mask.svg) no-repeat center/contain;
  background-color: #dd226a;
  left: 0;
  width: 5rem;
  aspect-ratio: 1;
  top: 100%;
  -webkit-transform: translate(-100%, -100%) rotate(-10deg) scale(0);
          transform: translate(-100%, -100%) rotate(-10deg) scale(0);
}

.engagements {
  background-color: white;
  border-radius: 1.5rem;
  padding: 3rem;
  display: block;
  margin: 0 auto;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
  margin-bottom: 6rem;
}
.engagements h2 {
  font-family: "Luciole";
  display: inline-block;
  position: relative;
}
.engagements h2:before {
  content: "";
  display: block;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  -webkit-transition: all ease 0.5s;
  transition: all ease 0.5s;
  background-image: url(img/leaf-pink.svg);
  left: 0;
  width: 5rem;
  aspect-ratio: 1;
  top: 50%;
  -webkit-transform: translate(-100%, -100%) rotate(-10deg);
          transform: translate(-100%, -100%) rotate(-10deg);
}
.engagements ul li {
  margin-bottom: 0.5em;
}

/* FOOTER */
.site-footer {
  background-color: #05315f;
  padding-top: 2.5rem;
  color: white;
}
.site-footer .menu .sub-menu {
  display: none;
}
.site-footer h2 {
  font-size: 1.8rem;
  margin-top: 4rem;
}
.site-footer p {
  color: #000;
}
.site-footer ul.menu {
  list-style: none;
  margin: 0;
  padding: 0;
}
.site-footer ul.menu a {
  color: white;
}
.site-footer ul.menu a:hover {
  color: white;
}
.site-footer ul.menu ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* BLOC Programme */
.program {
  text-align: center;
  background-color: white;
  border-radius: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 3rem;
  color: #0e6fff;
  /* couleur par défaut de l’icône */
  text-decoration: none;
  /* si c’est un lien */
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
  -webkit-transition: all ease 0.5s;
  transition: all ease 0.5s;
}
.program .program__icon {
  -webkit-transition: all ease 0.5s;
  transition: all ease 0.5s;
}
.program:hover {
  -webkit-box-shadow: 0 3px 12px rgba(0, 0, 0, 0.08);
          box-shadow: 0 3px 12px rgba(0, 0, 0, 0.08);
}
.program:hover .program__icon {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
.program h3 {
  margin-bottom: 0.5em;
}
.program p {
  font-size: 1.6rem;
  color: #707070;
}

/* ===== Bloc : Point de programme (simplifié) ===== */
/* Ajuste la taille globale des pictos ici */
.program__icon-svg {
  width: 75px;
  /* change une seule valeur pour tout le site */
  height: auto;
  display: inline-block;
  color: var(--program-icon-color, #0e6fff);
  /* piloté par ACF */
}

/* Forçage utile si le SVG a des fills internes */
.program__icon-svg *,
.program__icon-svg path {
  fill: currentColor;
}

.program__icon {
  margin: 0 0 0.75rem;
  line-height: 0;
}

.program__title {
  margin: 0 0 0.25rem;
  text-transform: uppercase;
  font-weight: 700;
}

.program__text {
  margin: 0;
  max-width: 32rem;
}

/* Accessibilité */
.screen-reader-text {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.program__icon {
  width: 75px;
  height: auto;
  display: inline-block;
  margin-bottom: 0.75rem;
}

.program__title {
  text-transform: uppercase;
  font-weight: 700;
  margin: 0 0 0.25rem;
}

.program__text {
  max-width: 32rem;
  margin: 0 auto;
}
.program__text p {
  margin: 0;
}

.program:hover {
  color: #0844aa;
}

/* le bloc peut être un <div> ou un <a> : même couleur */
.program,
a.program {
  color: #000000;
  /* ta couleur par défaut */
  text-decoration: none;
  /* pas de soulignement si <a> */
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

/* le <svg> porte la classe .program__icon */
.program__icon {
  width: 75px;
  height: auto;
  display: inline-block;
  margin-bottom: 0.75rem;
  color: inherit;
  /* important pour que currentColor suive le conteneur */
}

/* Écrase tout fill/stroke interne éventuel du SVG */
.program__icon *,
.program__icon path {
  fill: currentColor !important;
}

.program__icon [stroke]:not([stroke=none]) {
  stroke: currentColor !important;
}

/* (optionnel) couleur au survol si c’est un lien */
a.program:hover h3 {
  color: #0e6fff;
}
a.program:hover p {
  color: black;
}

/* AGENDA */
.wp-block-button__link {
  background-color: white;
  border-radius: 1.5rem;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
  color: black;
  border: none !important;
  font-size: 1.4rem;
  font-weight: 600;
  text-transform: uppercase;
}
.wp-block-button__link:hover {
  background-color: #05315f;
  color: white;
}

.wp-block-latest-posts__list {
  margin: 0;
}

.wp-block-latest-posts__event-date {
  position: relative;
  font-weight: 700;
}

.card,
.wp-block-latest-posts__list.is-grid li {
  background-color: white;
  border-radius: 1.5rem;
  overflow: hidden;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
}
.card a,
.wp-block-latest-posts__list.is-grid li a {
  text-decoration: none;
  color: #05315f;
}
.card .wp-block-latest-posts__featured-image,
.card .imgContainer,
.wp-block-latest-posts__list.is-grid li .wp-block-latest-posts__featured-image,
.wp-block-latest-posts__list.is-grid li .imgContainer {
  aspect-ratio: 16/9;
  position: relative;
  overflow: hidden;
}
.card .wp-block-latest-posts__featured-image img,
.card .imgContainer img,
.wp-block-latest-posts__list.is-grid li .wp-block-latest-posts__featured-image img,
.wp-block-latest-posts__list.is-grid li .imgContainer img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: all ease 0.5s;
  transition: all ease 0.5s;
}
.card .wp-block-latest-posts__featured-image img:hover,
.card .imgContainer img:hover,
.wp-block-latest-posts__list.is-grid li .wp-block-latest-posts__featured-image img:hover,
.wp-block-latest-posts__list.is-grid li .imgContainer img:hover {
  -webkit-transform: translate(-50%, -50%) scale(1.1);
          transform: translate(-50%, -50%) scale(1.1);
}
.card .wp-block-latest-posts__event-date,
.wp-block-latest-posts__list.is-grid li .wp-block-latest-posts__event-date {
  display: inline-block;
}
.card .wp-block-latest-posts__event-date,
.card .wp-block-latest-posts__post-title,
.card .wp-block-latest-posts__post-excerpt,
.wp-block-latest-posts__list.is-grid li .wp-block-latest-posts__event-date,
.wp-block-latest-posts__list.is-grid li .wp-block-latest-posts__post-title,
.wp-block-latest-posts__list.is-grid li .wp-block-latest-posts__post-excerpt {
  padding: 0 1.5rem;
}
.card .wp-block-latest-posts__post-title,
.wp-block-latest-posts__list.is-grid li .wp-block-latest-posts__post-title {
  display: block;
  text-decoration: none;
  color: black;
  font-family: "Luciole";
  font-weight: bold;
}
.card .wp-block-latest-posts__post-title:hover,
.wp-block-latest-posts__list.is-grid li .wp-block-latest-posts__post-title:hover {
  color: #619d31;
}
.card .wp-block-latest-posts__event-date,
.wp-block-latest-posts__list.is-grid li .wp-block-latest-posts__event-date {
  font-family: "Luciole";
  font-weight: bold;
  font-size: 1.2rem;
  background-color: #619d31;
  padding: 0.5rem 1.5rem;
  margin-bottom: 0.5rem;
  color: white;
}
.card .wp-block-latest-posts__post-excerpt,
.wp-block-latest-posts__list.is-grid li .wp-block-latest-posts__post-excerpt {
  font-size: 1.6rem;
}

.cardEquipe {
  background-color: white;
  border-radius: 1.5rem;
  overflow: hidden;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
  padding: 1.5rem;
}
.cardEquipe .wp-block-image {
  aspect-ratio: 3/4;
  position: relative;
  overflow: hidden;
  margin: 0;
}
.cardEquipe .wp-block-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  line-height: 0;
  margin: 0;
}
.cardEquipe a {
  text-decoration: none;
  color: #05315f;
}

.equipe .wp-block-group__inner-container {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.5rem;
}
@media (min-width: 640px) {
  .equipe .wp-block-group__inner-container {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .equipe .wp-block-group__inner-container {
    grid-template-columns: repeat(3, 1fr);
  }
}
.equipe .cardEquipe h3 {
  font-size: 1.6rem;
  font-weight: 600;
  text-transform: uppercase;
}
.equipe .cardEquipe p {
  font-size: 1.4rem;
  color: #707070;
}

.mvf-sous-pages__heading {
  font-size: 1.6rem;
  text-transform: uppercase;
  border-radius: 1.5rem;
  background-color: #05315f;
  color: white;
  text-align: center;
  padding: 1.5rem 3rem;
}

/* Accordeon */
.mvf-accordion {
  border: 1px solid #e9e9e9;
  border-radius: 12px;
  background: #fff;
}
.mvf-accordion .wp-block-columns {
  margin: 0;
}

.mvf-accordion + .mvf-accordion {
  margin-top: 1rem;
}

.mvf-accordion__heading {
  margin: 0;
}

.mvf-accordion__button {
  width: 100%;
  text-align: left;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 1.5rem 3rem;
  background: none;
  border: 0;
  cursor: pointer;
  font: inherit;
  font-weight: 800;
  color: #05315f;
  border-radius: 1.5rem 1.5rem 0 0;
}
.mvf-accordion__button h2,
.mvf-accordion__button p {
  margin: 0;
  position: relative;
  display: inline-block;
  font-weight: 500;
}
.mvf-accordion__button h2::before,
.mvf-accordion__button p::before {
  content: "";
  display: block;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  -webkit-transition: all ease 0.5s;
  transition: all ease 0.5s;
  background-image: url(img/leaf-pink.svg);
  left: 0;
  width: 5rem;
  aspect-ratio: 1;
  top: 0;
  -webkit-transform: translate(-100%, -50%) rotate(-10deg) scale(0);
          transform: translate(-100%, -50%) rotate(-10deg) scale(0);
}
.mvf-accordion__button:hover {
  background-color: #05315f;
}
.mvf-accordion__button:hover h2,
.mvf-accordion__button:hover p {
  color: white !important;
}
.mvf-accordion__button:hover h2:before,
.mvf-accordion__button:hover p:before {
  -webkit-transform: translate(-150%, -100%) rotate(-10deg) scale(1);
          transform: translate(-150%, -100%) rotate(-10deg) scale(1);
}

.mvf-accordion__icon {
  inline-size: 1.25rem;
  block-size: 1.25rem;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  border: 2px solid currentColor;
  border-left: 0;
  border-top: 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}

.mvf-accordion.is-open .mvf-accordion__icon {
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
}

.mvf-accordion__panel {
  overflow: hidden;
  max-height: 0;
  -webkit-transition: max-height 0.25s ease;
  transition: max-height 0.25s ease;
  border-top: 1px solid #e9e9e9;
  padding: 0 3rem;
  text-align: justify;
}
.mvf-accordion__panel .wp-block-group__inner-container {
  padding: 3rem 0;
}
.mvf-accordion__panel ul {
  margin-left: 0;
}

.mvf-accordion__inner {
  padding: 1rem 1.125rem;
}

/* COULEURS PAGES */
body.mvf-scheme--bleu {
  --mvf-theme-color: #05315f;
}

body.mvf-scheme--bleuclair {
  --mvf-theme-color: #0e6fff;
}

body.mvf-scheme--gris {
  --mvf-theme-color: #707070;
}

body.mvf-scheme--rose {
  --mvf-theme-color: #dd226a;
}

body.mvf-scheme--vert {
  --mvf-theme-color: #619d31;
}

body.mvf-scheme--fond {
  --mvf-theme-color: #fcfbf7;
}

body.mvf-scheme--orange {
  --mvf-theme-color: #eb5b35;
}

.entry-content .main h2,
.entry-content .main h3,
.entry-content .main h4 {
  color: var(--mvf-theme-color, #000);
}

.wp-block-button__link,
.button {
  background-color: var(--mvf-theme-color, #05315f);
  border-color: var(--mvf-theme-color, #05315f);
}
.wp-block-button__link a,
.button a {
  color: white !important;
}

/* LEAF*/
/* Assure le contexte */
section.splash .entry-header .container {
  position: relative;
}

/* Pseudo-élément décoratif coloré par la variable */
section.splash .entry-header .container::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 50%;
  aspect-ratio: 1;
  -webkit-transform: translate(-25%, -50%) rotate(-10deg);
          transform: translate(-25%, -50%) rotate(-10deg);
  display: block;
  pointer-events: none;
  z-index: 0;
  /* Couleur pilotée par le schéma */
  background-color: var(--mvf-theme-color, #dd226a);
  /* fallback vert */
  /* ✅ masque (forme blanche) */
  -webkit-mask: url("img/leaf-mask.svg") no-repeat center/contain;
  mask: url("img/leaf-mask.svg") no-repeat center/contain;
}

/* ASIDE */
aside .wp-block-categories-list {
  margin: 0;
  list-style: none;
}
aside .wp-block-categories-list li {
  display: block;
  height: 100%;
  background: #fff;
  border: var(--border);
  border-radius: var(--radius);
  -webkit-box-shadow: var(--shadow);
          box-shadow: var(--shadow);
  text-decoration: none;
  color: #111827;
  /* gris foncé élégant */
  text-align: center;
  font-family: "Luciole";
  text-transform: uppercase;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
  margin-bottom: 0.5rem;
  border-radius: 1.5rem;
  text-align: center;
  padding: 0 1.5rem;
  position: relative;
}
aside .wp-block-categories-list li:before {
  content: "";
  display: block;
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  -webkit-transition: all ease 0.5s;
  transition: all ease 0.5s;
  background-image: url(img/leaf-pink.svg);
  left: 1.5rem;
  width: 5rem;
  aspect-ratio: 1;
  top: 50%;
  -webkit-transform: translate(0, -50%) rotate(-10deg) scale(0);
  transform: translate(0, -50%) rotate(-10deg) scale(0);
}
aside .wp-block-categories-list li a {
  display: block;
  padding: 1rem 0;
  letter-spacing: 0.1em;
  font-size: 1.4rem;
  line-height: 3rem;
  font-weight: 600;
  color: #000;
  text-decoration: none;
}
aside .wp-block-categories-list li:hover {
  background-color: #619d31;
}
aside .wp-block-categories-list li:hover a {
  color: white;
}
aside .wp-block-categories-list li:hover::before {
  -webkit-transform: translate(-50%, -100%) rotate(-10deg) scale(0.75);
          transform: translate(-50%, -100%) rotate(-10deg) scale(0.75);
}

/* elements */
.wp-block-file__button {
  background-color: var(--mvf-theme-color, #05315f);
  border-color: var(--mvf-theme-color, #05315f);
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.08);
  color: white !important;
  border-radius: 1.5rem;
  font-size: 1.4rem;
  font-weight: 600;
  text-transform: uppercase;
}

/* FIX splash equipe */
.page-id-11 section.splash .entry-header .container::before {
  content: none;
}

@media screen and (max-width: 991px) {
  .post-thumbnail {
    aspect-ratio: 16/9;
  }
}/*# sourceMappingURL=style.css.map */