:root {
  /* --- Verts --- */
  --cLGreenOlive: #138D4F;
  --cLGreenDark: #006934;
  --cLGreenDeep: #006935;
  --cLGreenForest: #006836;
  --cLGreenNight: #011A0E;
  --cLGreenMid: #006A35;
  --cLGreenLight: #91C56D;
  --cLGreenPale: #93C46D;
  --cLGreenSoft: #92C56E;
  --cLGreenLime: #93C46C;
  --cLGreenLeaf: #91C36E;

  /* --- Jaunes & Oranges --- */
  --cLYellowBright: #FFE163;
  --cLYellowSoft: #FFE7AE;
  --cLOrangePastel: #FABC78;
  --cLBeigeDark: #F7E7C7;
  --cLBeigeDark2: #EDDCB6;
  --cLBeigeLight: #FEF4E0;
  --cLCream: #FFF4E0;

  /* --- Rouges & Roses --- */
  --cLRedPure: #E42313;
  --cLPinkDeep: #E72762;

  /* --- Mauves & Gris --- */
  --cLMauve: #BEA5BC;
  --cLMauveAlt: #BDA5BC;
  --cLGrayLight: #C7C7C7;
  --cLGrayBlue: #D3DBCE;
  --cLGrayGreen: #D3D3D3;

  /* --- Couleurs avec Opacité (Alpha) --- */
  --cLBlackTranslucent: #000000D5;
  --cLGreenDeepTrans: #01361BC4;
  --cLGreenLightTrans: #91C56D3C;
  --cLShadowHeavy: #00000072;
  --cLShadowLight: #0000001D;
  --cLShadowSubtle: #0000001C;
  
  /* --- Absolus & Invisibles --- */
  --cLWhite: #FFFFFF;
  --cLWhiteSoft: #fffbf4;
  --cLTransparent: #00000000;
  --cLGreenTransparent: #00693400;
}
.fs103 {font-size: clamp(2.5em,6vw,103px);}
/* min(103px,10vw) */
.fs53 {font-size: clamp(2em,3vw, 53px);}
/* min(53px,7vw) */
.fs44 {font-size: clamp(min(1.9em,6.3vw),2.8vw,44px);}
.fs35 {font-size: clamp(min(1.8em,6.3vw),1.9vw,35px);}
/* .fs35 {font-size: clamp(1.3em,1.9vw,35px);} */
.fs34 {font-size: clamp(1.6em,1.7vw,34px);}
.fs28 {font-size: clamp(1.3em,1.4vw,28px);}
.fs24 {font-size: clamp(1.05em,1.3vw, 24px);}
/*  */
/* .fs24 {font-size: clamp(.6em,1.3vw, 24px);} */
.fs22 {font-size: clamp(1.03em,1.2vw,22px);}
.fs21 {font-size: clamp(1em,1.1vw,21px);}
/* min(21px,3.7vw) */
.fs18 {font-size: clamp(.9em,1.08vw,18px);}
.fs17 {font-size: clamp(.9em,1.05vw,17px);}
.fs16 {font-size: clamp(.9em,1vw,16px);}
.fs15 {font-size: min(15px,3.7vw);}
.fs14 {font-size: min(14px,3.5vw);}
.fs13 {font-size: min(13px,3.5vw);}
*, *::before, *::after {box-sizing: border-box;}
html, body, p, h1, h2, h3, h4, h5, h6, figure, blockquote, dl, dd {margin: 0;}
strong {font-weight: 900;}
h1,h2,h3,h4,h5,h6 {line-height: 1;font-weight: 300;}

.lecontenu :is(h1,h2,h3,h4,h5,h6) { font-family: "poster-gothic-round-excond-a", sans-serif;     text-transform: uppercase;     font-weight: 700;}
.lecontenu h1 { font-size: clamp(2.5em,6vw,103px); }
.lecontenu h2 { font-size: clamp(2em, 3vw, 53px); }
.lecontenu h3 { font-size: clamp(min(1.8em, 6.3vw), 1.9vw, 35px); }
.lecontenu h4 { font-size: clamp(1.05em, 1.3vw, 24px); }
.lecontenu h5 { font-size: clamp(1.05em, 1.3vw, 24px); }
.lecontenu h6 { font-size: clamp(1.05em, 1.3vw, 24px); }

.lecontenu :is(h1,h2,h3,h4,h5,h6)::after {
    position: relative;
    content: '';
    height: 13px;
    width: 105px;
    display: block;
    margin-top: .2em;
    background-color: var(--cLGreenPale);
    -webkit-mask-image: url(../assets/images/underline.svg);
    mask-image: url(../assets/images/underline.svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-position: center;
    mask-position: center;
}

:is(h1,h2,h3,h4,h5,h6) :is(em,strong) {
    font-style: inherit;
    color: var(--cLsunYellow);
    line-height: 1;
    color: var(--cLGreenLight);
}

.full span.wpcf7-spinner {
    display: none;
}

#menu-nested-pages li.cLGreenPale a { 
z-index: 1;
    line-height: 1;
    font-weight: 700;
    width: max-content;
    border-radius: 0.4em;
    transition: all .3s;
    white-space: inherit;
    display: inline-block;
    text-decoration: none;
    text-transform: initial;
    border: 1px solid transparent;
    font-size: clamp(0.79em, 1.2vw, 18px);
    padding: min(0.9em, 3vw) min(2em, 3.8vw);
    font-family: "fuzzy-bubbles", sans-serif;
display: flex;
    align-items: center;
    column-gap: min(10px, 2vw);
    color: var(--cLWhite);
    background-color: var(--cLGreenPale);
}

#menu-nested-pages li.cLGreenPale a::after { 

    position: relative;
    content: "";
    display: block;
    transition: initial;
    pointer-events: none;
    padding: min(.7rem, 3vw);
    background-color: currentcolor;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-position: center;
    mask-position: center;
-webkit-mask-image: var(--icn-after);
    mask-image: var(--icn-after);
    padding: min(.7rem, 2.5vw);
    will-change: transform;
    transition: all .3s cubic-bezier(0.250, 0.460, 0.450, 0.940);
--icn-after: url(https://fromagerieduval.fr/wp-content/themes/fromagerie/assets/images/arrow.svg);
    background-color: var(--cLGreenDark);
}

#menu-nested-pages li.cLGreenPale a:hover {
    background-color: var(--cLOrangePastel);
}

#menu-nested-pages li.cLGreenPale a:hover::after {
transform: translateX(.5em);
}

.sc11 strong.fs53 {
    color: #fff;
}


hr {
    display: block;
    width: 100%;
    border: none;
    border-bottom: 1px solid #D1DEC8;
}
body {
  padding: 0;
  line-height: 1.7;
  overflow-x: hidden;
  background: transparent;
  font-size: clamp(.9em,1.1vw,18px);
  /* min(18px,4vw) */
  color: var(--cLGreenDark);
  -webkit-text-size-adjust: 100%;
  font-family:"area-normal",sans-serif;
}
img,video,canvas,svg {
    height: auto;
    display: block;
    max-width: 100%;
}
[style^="--icn"],[class^="btn-"].next {display:inline-flex;align-items: center;column-gap: 10px;}
a {
    color: inherit;
    text-decoration: none;
}
a:not([class]):hover {color: var(--cLGreenLime);}
.rs {
  display: flex;
  flex-wrap: nowrap;
  column-gap: min(10px,1vw);
}
.rs [style^="--icn-"] {
  font-size: 0;
  column-gap: 0;
  flex: 0 0 auto;
  border-radius: 2rem;
  color: var(--cLWhite);
  background-color: var(--cLMauveAlt);
}
.rs [style^="--icn-"]::before {
    scale: .5;
    padding: min(0.8125rem, 3vw);
}


ul.rs li a span.a2a_svg {
    display: none;
}

button {
    padding: 0;
    border: none;
    background: none;
}
.overlay {
    position: absolute;
    inset: 0;
    z-index: 2;
    font-size: 0;
}
.overlay:has( .arrow) {
    display: flex;
    padding: 1rem;
    align-items: flex-start;
    justify-content: flex-end;
}
ol, ul {
margin: 0;
padding: 0;
list-style: none;
}
.first-title {font-size: min(27px,5vw);font-weight: 300;}

section {
    position: relative;
    padding: 15px 0;
}

.row,.flex {
  display: flex;
  flex-wrap: wrap;
  row-gap: min(2rem,10vw);
}
:is(.row,.flex):has( .half,.full) {gap: 1em;}
:is(.row,.flex).space-between {justify-content: space-between;}
:is(.row,.flex).direction-reverse {flex-direction: row-reverse;}
:is(.row,.flex).items-center {align-items: center;}
:is(.row,.flex).column-block {
  flex-wrap: nowrap;
  flex-direction: column;
  row-gap: min(3em,10vw);
}

.full .wpcf7-list-item {
    margin: 0;
}

@media screen and (width<700px) {
   :is(.row,.flex).direction-reverse {flex-direction: column-reverse;}
}
[class^="container"] {margin-inline: auto;padding-block: min(5em,10vw);}
.container{max-width:min(1071px,85vw)}
.container-xl{max-width:min(1218px,85vw)}
.container-xxl{max-width:min(1555px,85vw)}
.container-xxxl{max-width:min(1838px,95vw)}
.container-max{max-width:min(1873px,calc(100% - 1em))}
[style*="--w"] {width: var(--w);}
picture {
    position: relative;
    height: 100%;
    display: block;
    overflow: hidden;
}
picture img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    max-width: inherit;
}
.cliping {
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    clip-path: inset(0rem round 0rem);
}
.cliping:not(.imgBeigeLight):has( img)  ~ *,
.cliping:not(.imgBeigeLight):has( img)  ~ * {
    z-index: 1;
    color: var(--cLWhite);
}
.cliping.imgBeigeLight img {
    position: fixed;
    inset: 0;
    width: 100dvw;
    height: 100dvh;
    max-width: inherit;
}
.cliping.imgBeigeLight.whiteImg img {opacity: 0.7;}
.cliping:not(:has( img)) {
    rotate: -1deg;
    clip-path: inset( min(2em,5vw) round min(2rem,5vw));
}
.arrow{position:relative;z-index:2;aspect-ratio:1/1;transform:rotate(8deg);font-size:0;outline:0;flex:0 0 auto;cursor:pointer;max-width:100%;overflow:hidden;width:max-content;border-radius:3rem;transition:.2s;display:inline-block;color:var(--cLGreenDark);padding:min(1.4375rem,4.5vw);background-color:var(--cLGreenPale);border:none;-webkit-backdrop-filter:blur(30px);backdrop-filter:blur(30px)}
.arrow::after,.arrow::before{content:"";inset:30%;display:block;transition:inherit;background-color:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-image:url(../assets/images/arrow.svg);mask-image:url(../assets/images/arrow.svg)}
.arrow.rotate{rotate: -45deg;}
.arrow.prev{transform:rotate(-167deg)}
.arrow::after{translate:-100% 0;opacity:0}
.arrow:hover{color:var(--cLGreenPale);background-color:var(--cLGreenDark);border-color:var(--cLGreenDark);}
.arrow::after,.arrow::before,.cliping{position:absolute;pointer-events:none}
[class^=btn-]:hover .arrow::before,
article:hover .arrow::before,
.arrow:hover::before{translate:100% 0;opacity:0}
[class^=btn-]:hover .arrow::after,
article:hover .arrow::after,
.arrow:hover::after{translate:0 0;opacity:1}
[class^=btn-] {
    z-index: 1;
    line-height: 1;
    font-weight: 700;
    width: max-content;
    border-radius: 0.4em;
    transition: all .3s;
    white-space: inherit;
    display: inline-block;
    text-decoration: none;
    text-transform: initial;
    border: 1px solid transparent;
    font-size: clamp(0.79em,1.2vw,18px);
    padding: min(0.9em,3vw) min(2em,3.8vw);
    font-family: "fuzzy-bubbles",sans-serif;
}
[class^=btn-]:is([style^=--icn],:has( .arrow)){display:flex;align-items:center}
[class^=btn-][style^=--icn]:before{padding:.5rem;scale: 1.5}
[class^=btn-]>input{margin:0!important;line-height:1!important;}
[class^=btn-]:has( input) {cursor: pointer;}
[class^=btn-] input:is([type="submit"],[type="button"]) {
    border: none;
    outline: none;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    background: transparent;
}
[class^=btn-]:has( .arrow) {column-gap: min(.7rem,2vw);}
[class^=btn-] .arrow {
    scale: 2.3;
    pointer-events: none;
    left: min(0.5rem,2vw);
    padding: min(0.5rem,3vw);
}
[class^=btn-][style^="--icn-before"]::before, 
[class^=btn-][style^="--icn-after"]::after {padding: min(.7rem, 2.5vw);}
/* .next[class^=btn-]{display:inline-flex;column-gap:.5rem;align-items:center;justify-content:space-between} */
[style^="--icn-"] {
  display: flex;
  align-items: center;
  column-gap: min(10px,2vw);
}
[style^="--icn-before"]::before,
[style^="--icn-after"]::after {
  position: relative;
  content: "";
  display: block;
  transition: initial;
  pointer-events: none;
  padding: min(.7rem, 3vw);
  background-color: currentcolor;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-position: center;
  mask-position: center;
}
[style^="--icn-before"]::before {
  -webkit-mask-image: var(--icn-before);
  mask-image: var(--icn-before);
}
[style^="--icn-after"]::after {
  -webkit-mask-image: var(--icn-after);
  mask-image: var(--icn-after);
}
[class^=btn-][style^=--icn]::before,
[class^=btn-][style^=--icn]::after {
    will-change: transform;
    transition: all .3s cubic-bezier(0.250, 0.460, 0.450, 0.940);
}
[class^=btn-][style^=--icn]::before,
[class^=btn-][style^=--icn]:hover::after {transform: translateX(.5em);}
[class^="text"]{
    position: relative;
    display: grid;
    row-gap: min(20px,3vw);
    align-content: baseline;
}
.text-center{justify-content: center;text-align: center;}
.text-right{align-items: flex-end;text-align: right;}
[class^="text"] > p + p {margin-top: calc(min(10px,1.6vw) * -1);}
[class^="text"] > p:has( [class^="btn"]) {margin-top: 0;}
p:has( :is([class^="btn-"],.tag)) {
    display: flex;
    flex-wrap: wrap;
    gap: min(1em,4vw) min(1em,2vw);
}
.text-center p:has( :is([class^="btn-"],.tag)) {
    justify-content: center;
}
.pagination {
    display: flex;
    flex-wrap: wrap;
    gap: min(1em,3vw);
    align-items: center;
}
.pagination.end {justify-content: center;max-width: 85vw;}
.pagination.center {justify-content: center;}
.pagination .arrow {
    margin: 0;
    top: initial;
    left: initial;
    right: initial;
}

.fw400 {font-weight: 400;}
.fw700 {font-weight: 700;}
.fw800 {font-weight: 800;}
.uppercase {text-transform: uppercase;}
.underline::after {
    position: relative;
    content: '';
    height: 13px;
    width: 105px;
    display: block;
    margin-top: .2em;
    background-color: currentColor;
    -webkit-mask-image: url(../assets/images/underline.svg);
    mask-image: vurl-assets/images/underline.svg;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-position: center;
    mask-position: center;
}
.underline.under-cLWhite::after {background-color: var(--cLWhite);}
.underline.under-cLGreenPale::after {background-color: var(--cLGreenPale);}
.text-center .underline::after {margin-inline: auto;}

.area-normal {font-family: "area-normal",sans-serif;}
.fuzzy-bubbles {font-family: "fuzzy-bubbles",sans-serif;}
.poster {font-family: "poster-gothic-round-excond-a",sans-serif;}

.cLWhite {color: var(--cLWhite);}
.cLBeigeLight {color: var(--cLBeigeLight);}
.cLGreenLight {color: var(--cLGreenLight);}
.cLGreenDark {color: var(--cLGreenDark);}
.btn-cLGreenPale {
    color: var(--cLWhite);
    background-color: var(--cLGreenPale);
}
.btn-cLGreenPale::before,
.btn-cLGreenPale::after {background-color: var(--cLGreenDark);}
.btn-cLGreenPale:hover:hover {background-color: var(--cLOrangePastel);}
.btn-cLGreenDark {
    color: var(--cLWhite);
    background-color: var(--cLGreenDark);
}
.btn-cLGreenDark::before,
.btn-cLGreenDark::after {background-color: var(--cLGreenPale);}
.btn-cLGreenDark:hover {background-color: var(--cLGreenDeepTrans);}
.btn-link {
    padding: 0;
    color: var(--cLGreenPale);
    font-size: min(18px,3.3vw);
}
.btn-link.back::before {rotate: -168deg;}
.bg-image {background: url('../assets/images/fond-beige.webp') center / cover no-repeat;}
.bg-cLGreenDark {
    color: var(--cLWhite);
    background-color: var(--cLGreenDark);
}
.bg-cLGreenLight {
    color: var(--cLWhiteSoft);
    background-color: var(--cLGreenLight);
}
.bg-cLWhiteSoft {background-color: var(--cLWhiteSoft);}
.bg-cLBeigeLight {background-color: var(--cLBeigeLight);}
.bg-cLBeigeDark {background-color: var(--cLBeigeDark);}
.bg-cLYellowSoft {background-color: var(--cLYellowSoft);}

.flex.items-center:has( > *:nth-child(3)) {gap: 1em 2%;}
.flex.items-center:has( > *:nth-child(3)) picture {max-width: 20vw;}
.quote {
    position: relative;
    margin-top: 1em;
    isolation: isolate;
}
.quote::before {
    position: absolute;
    top: 50%;
    translate: -50% -50%;
    content: '';
    padding: min(2em,5vw);
    background-color: var(--cLGreenLeaf);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-image: url(../assets/images/quote.svg);
    mask-image: url(../assets/images/quote.svg);
}
/* bouton nav */
.tag-tab {
    line-height: 1;
    border-radius: 2em;
    white-space: nowrap;
    padding: .9em 1.9em;
    transition: all .3s;
    color: var(--cLGreenDark);
    font-size: min(14px,3.5vw);
    text-transform: uppercase;
    background-color: transparent;
    border: 2px solid var(--cLGreenDark);
    font-family: 'fuzzy-bubbles',sans-serif;
}
.tag-tab.is-active {
    color: var(--cLWhite);
    background-color: var(--cLGreenDark);
}
.tag {
    line-height: 1;
    padding: .9em 1.9em;
    border-radius: 2em;
    color: var(--cLWhite);
    font-size: min(14px,3.5vw);
    text-transform: uppercase;
    background-color: var(--cLMauve);
    font-family: 'fuzzy-bubbles',sans-serif;
}
.open-nav {
    position: relative;
    z-index: 2;
    padding: 0.5em;
    display: grid;
    transition: .2s;
    cursor: pointer;
    margin-left: auto;
    aspect-ratio: 1/1;
    border-radius: 0.5em;
    height: min(3em,12vw);
    align-content: center;
    color: var(--cLGreenDark);
    background-color: var(--cLGreenLight);
}
input:checked + .open-nav > span:nth-child(1) {
    margin-bottom: -.45em;
    rotate: 300deg;
}
input:checked + .open-nav > span:nth-child(2) {display: none;}
input:checked + .open-nav > span:nth-child(3) {
    top: 0.2em;
    rotate: 40deg;
}
.open-nav > span {
    position: relative;
    width: 100%;
    height: .45em;
    line-height: 0;
    transition: .3s;
    pointer-events: none;
    transform-origin: 55% center;
}
.open-nav > span::before {
    position: absolute;
    inset: 0;
    content: "";
    display: block;
    transition: initial;
    pointer-events: none;
    background-color: currentcolor;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-position: center;
    mask-position: center;
}
.open-nav > span:nth-child(1)::before {
    -webkit-mask-image: url(../assets/images/line-1.svg);
    mask-image: url(../assets/images/line-1.svg);
}
.open-nav > span:nth-child(2)::before {
    -webkit-mask-image: url(../assets/images/line-2.svg);
    mask-image: url(../assets/images/line-2.svg);
}
.open-nav > span:nth-child(3)::before {
    -webkit-mask-image: url(../assets/images/line-3.svg);
    mask-image: url(../assets/images/line-3.svg);
}

li:has( > .up-down) {
    position: relative;
    gap: .5em;
    display: grid;
}
li:has( > .up-down) > a {padding-right: 1.5em;}
.up-down {
    position: absolute;
    top: .5em;
    right: 0;
    width: 1.5em;
    height: 1.5em;
    flex: 0 0 auto;
    border-radius: 2em;
    transition: all .3s;
    color: var(--cLWhite);
    background-color: var(--cLGreenLime);
}
.up-down::before {
    position: absolute;
    inset: 20%;
    content: '';
    display: block;
    pointer-events: none;
    background-color: currentcolor;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-image: url(../assets/images/angle-down.svg);
    mask-image: url(../assets/images/angle-down.svg);
}
.up-down::after {
    position: absolute;
    content: '';
    inset: -1em;
}

.taches {
    position: absolute;
    inset: 0;
    pointer-events: none;
}
.taches > [class^="tache-"] {
    position: absolute;
    aspect-ratio: 1/1;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-position: center;
    mask-position: center;
}
.taches > .tache-1 {
    -webkit-mask-image: url(../assets/images/tache-jaune.svg);
    mask-image: url(../assets/images/tache-jaune.svg);
}
.taches > .tache-2 {
    -webkit-mask-image: url(../assets/images/tache-vert-clair.svg);
    mask-image: url(../assets/images/tache-vert-clair.svg);
}
.taches > .tache-3 {
    -webkit-mask-image: url(../assets/images/tache-vert-fonce.svg);
    mask-image: url(../assets/images/tache-vert-fonce.svg);
}
.taches > .tache-4 {
    -webkit-mask-image: url(../assets/images/tache-mauve.svg);
    mask-image: url(../assets/images/tache-mauve.svg);
}

.check-list {
    position: relative;
    display: grid;
    row-gap: min(1em,5vw);
}
.check-list > li {
    position: relative;
    display: flex;
    isolation: isolate;
    padding-left: min(3em,10vw);
}
.check-list > li::before,
.check-list > li::after {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    content: '';
    display: block;
    border-radius: 2em;
    padding: min(1em,5vw);
    background-color: var(--cLMauve);
}
.check-list > li::after {
    scale: .5;
    background-color: var(--cLWhite);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    -webkit-mask-position: center;
    mask-position: center;
    -webkit-mask-image: url(../assets/images/check-mauve.svg);
    mask-image: url(../assets/images/check-mauve.svg);
}
[class*="wrapper-cards"] {
    width: 100%;
    display: grid;
    row-gap: min(2.5em,10vw);
}
.grid-cardB {
    display: grid;
    gap: min(1.5em,5vw);
    grid-template-columns: repeat(auto-fill, minmax(max(300px, 40%), 1fr));
}
.swiper:has( .cardA) {width: calc(((100vw - min(1555px,85vw)) / 2) + min(1555px,85vw));}
.swiper:has( .cardA,.cardB) {padding: .5em;}
.swiper:has( .cardB) {width: calc(((100vw - min(1555px,85vw)) / 2) + min(1555px,85vw));}
.swiper:has( .cardB) + .pagination {width: min(1555px,85vw);}
.grid:has( > .cardA) {
    display: grid;
    gap: min(1.5em,5vw);
    grid-template-columns: repeat(auto-fill, minmax(max(200px, 20%), 1fr));
}
.cardA,
.cardB {
    position: relative;
    height: auto;
    rotate: 1deg;
    overflow: hidden;
    will-change: rotate;
    transition: all .3s;
    border-radius: min(1em,5vw);
    background-color: var(--cLWhite);
    clip-path: inset(0rem round min(1em,5vw));
}
.cardA picture {height: min(243px,40vw);}
.cardA .text {
    row-gap: .5em;
    padding: min(1.5em,5vw);
}
.cardA .text .fs24 {font-size: clamp(.8em,1.3vw, 24px);}
:is(.cardA,.cardB):nth-child(odd) {rotate: -1deg;}

.cardB:not(.swiper-slide) {width: min(749px,100%);}
.cardB {
    display: flex;
    flex-wrap: wrap;
    padding: min(.5em,5vw);
    column-gap: min(2em,5vw);
    border-radius: min(2em,6vw);
}
.cardB.hidden {display: none;}
.cardB picture {
    height: auto;
    flex: 1 1 max(200px,40%);
    border-radius: min(1.5em,5vw);
}
:is(.cardA,.cardB) picture img {transition: all .3s;}
:is(.cardA,.cardB):hover picture img {scale: 1.03;}
.cardB .text {
    flex: 1 1 max(200px,40%);
    padding: 1em min(3em,3vw) 1em;
}

.grid-cardD {
    display: grid;
    gap: 1em;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
}
.cardD {
    position: relative;
    row-gap: 1em;
    display: grid;
    cursor: pointer;
    padding: min(1.3em,5vw);
    transition: display .3s;
    font-size: min(14px,3.8vw);
    border-radius: min(1em,5vw);
    background-color: var(--cLWhite);
    box-shadow: 0px 3px 6px #00000029;
}
.cardD .text {
    row-gap: .5em;
}
.logo-cardD {
    height: 26px;
    width: auto;
    margin-right: auto;
}
.logo-cardD img {
    object-fit: contain;
}
.cardD.hidden { display: none; }
.cardD.highlighted { border: 2px solid #2d6a4f; box-shadow: 0 0 0 3px #b7e4c780; }
.leaflet-popup-content .text {row-gap: .5em;}
.leaflet-popup-content .text p {margin-block: 0;}

.grid-cardC {
    display: grid;
    gap: min(1.5em,5vw);
    grid-template-columns: repeat(auto-fill, minmax(max(300px, 40%), 1fr));
}
.cardC {
    position: relative;
    height: min(281px,50vw);
}
.cardC picture {
    width: 100%;
    height: 100%;
    overflow: hidden;
    border-radius: min(1em,5vw);
}
.cardC picture::after {
    position: absolute;
    inset: 0;
    content: '';
    background: linear-gradient(180deg, #00000000 0%, #00000072 100%);
}
.cardC picture img:not([class]) {transition: all .3s;}
.cardC:hover picture img:not([class]) {scale: 1.01;}
.cardC .logo {
    position: absolute;
    top: 1em;
    left: 1em;
    width: auto;
    height: 84px;
    aspect-ratio: 1/1;
    object-fit: contain;
    border-radius: 50%;
}
.cardC .text {
    position: absolute;
    inset: 0;
    display: grid;
    align-content: end;
    padding: min(1.5em,5vw);
}

.nav-filter {
    position: relative;
    z-index: 1;
    width: 100vw;
    display: flex;
    padding-block: .8em;
    gap: min(13px, 6vw);
    overflow-y: hidden;
    overflow-x: scroll;
    align-items: center;
    scrollbar-width: none;
    scroll-behavior: smooth;
    -ms-overflow-style: none;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-color: transparent transparent;
    margin-left: calc((100vw - min(1555px,85vw)) / -2);
    padding-inline: calc((100vw - min(1555px,85vw)) / 2);
    mask-image: linear-gradient(90deg,#00000000 0%, var(--cLBeigeDark) 8%, var(--cLBeigeDark) 92%, #00000000 100%);
    mask-repeat: no-repeat;
    mask-size: cover;
}

.nutrition-table table {
    width: 100%;
    line-height: 1;
    border-radius: .3em;
    border-collapse: collapse;
    font-size: min(15px,3.7vw);
    color: var(--cLBlackTranslucent);
    border: 1px solid var(--cLBeigeDark2);
}
.nutrition-table table  thead th {
    text-align: left;
    padding: 1em 2em;
    font-weight: 700;
    color: var(--cLWhite);
    background-color: var(--cLBeigeDark2);
}
.nutrition-table table tbody > tr {border-block: 1px solid var(--cLBeigeDark2);}
.nutrition-table table tbody > tr > td:last-child {text-align: right;}
.nutrition-table table tbody td {padding: 1em;}

.nutrition-table table tbody tr:first-of-type {
    text-align: left;
    padding: 1em 2em;
    font-weight: 700;
    color: var(--cLWhite);
    background-color: var(--cLBeigeDark2);
}


.nutrition-table table tbody tr:first-of-type td {
    text-align: center !important;
}


.accordion {display: grid;}
.accordion-item {
    position: relative;
    display: grid;
    font-style: normal;
    transition: all .3s;
    grid-template-rows: 2.1em 0fr;
    padding-block: min(1.5rem, 3vw);
}
.accordion-item::before {
    position: absolute;
    inset: 0;
    content: '';
    opacity: .44;
    pointer-events: none;
    border-block: 1px solid var(--cLGreenDark);
}
.accordion-item:has( input:checked) {grid-template-rows: 2.1em 1fr;}
.accordion-item .accordion-head {
    display: flex;
    cursor: pointer;
    
    align-items: center;
    color: var(--cLGreenDark);
    column-gap: min(20px, 5vw);
    justify-content: space-between;
}
.accordion-item .accordion-btn {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    flex: 0 0 auto;
    aspect-ratio: 1/1;
    transition: all .3s;
    align-content: center;
    width: min(20px, 3vw);
}
.accordion-item .accordion-btn input {
    position: absolute;
    top: 0;
}
.accordion-item .accordion-btn::before,
.accordion-item .accordion-btn::after {
    position: relative;
    content: '';
    width: 100%;
    height: 2px;
    background-color: currentColor;
}
.accordion-item .accordion-btn::before {
    rotate: -90deg;
    margin-bottom: -2px;
    transition: all .3s;
}
.accordion-item:has( input:checked) .accordion-btn::before {rotate: 0deg;}
.accordion-item .accorrdion-body {
    overflow: hidden;
    font-weight: 400;
    transition: all .3s;
}
.accordion-item:has( input:checked) .accorrdion-body { padding-top: min(15px, 5vw);}

[type="radio"], [type="checkbox"] {
    margin: 0;
    outline: none;
    flex: 0 0 auto;
    width: min(1.5rem, 6vw);
    height: min(1.5rem, 6vw);
    accent-color: var(--cLGreenDark);
}
[type="checkbox"] {box-shadow: inset 0 0 0 1px var(--cLGrayGreen)}
[type="radio"]:not(:checked) {
    appearance: none;
    border-radius: 2rem;
    border: 1px solid var(--cLGrayGreen)
}
input:not(:is(.qty-value, [type="radio"], [type="checkbox"], [type="button"], [type="submit"], [type="image"], [type="file"])),
select,textarea {
    width: 100%;
    outline: none;
    height: min(75px, 15vw);
    color: var(--cLGreenDark);
    font-size: min(17px, 4vw);
    border-radius: min(10px, 4vw);
    background-color: var(--cLWhite);
    border: 1px solid var(--cLGrayGreen);
    padding: min(.5rem, 2.5vw) min(30px, 5vw);
}
[multiple="multiple"] {height: auto}
:is(select,textarea,input)::-webkit-input-placeholder {
    font-weight: 700;
    text-align: left;
    font-style: normal;
    color: currentColor;
}
:is(select,textarea,input)::-moz-placeholder {
    font-weight: 500;
    text-align: left;
    font-style: normal;
    color: currentColor;
}
:is(select,textarea,input)::-ms-input-placeholder {
    font-weight: 700;
    text-align: left;
    font-style: normal;
    color: currentColor;
}
:is(select,textarea,input)::placeholder {
    font-weight: 700;
    text-align: left;
    font-style: normal;
    color: currentColor;
}
:is(select,textarea,input):is(textarea) {
    width: 100%;
    resize: none;
    font-family: inherit;
    height: min(150px, 30vw) !important
}
label:has( [type="radio"], [type="checkbox"]):not(.accordion-head) {
    display: flex;
    column-gap: 1em;
    line-height: 1.3;
    font-size: min(13px,3vw);
}
.half {flex: 1 1 max(200px, 40%);}
.full {flex: 1 1 100%;}
.wpcf7-not-valid-tip {
    display: block;
    margin-top: 7px;
    font-size: min(13px,3.6vw);
}
:is(
.bg-cLBeigeLight + .bg-cLBeigeLight,
.bg-cLWhiteSoft + .bg-cLWhiteSoft,
.bg-image + .bg-image,
)>[class^="container"]:not(*~*),
section:not(.sc6:has( .cliping.imgBeigeLight.whiteImg)):has( > .cliping.imgBeigeLight.whiteImg):not(:has( .cliping.bg-cLBeigeDark)) + section:not(.sc6:has( .cliping.imgBeigeLight.whiteImg)):has( > .cliping.imgBeigeLight.whiteImg):not(:has( .cliping.bg-cLBeigeDark)) > [class^="container"],
section:not(.sc6:has( .cliping:not(.whiteImg))):has( > .cliping.imgBeigeLight:not(.whiteImg)):not(:has( .cliping.bg-cLBeigeDark)) + section:not(.sc6:has( .cliping.imgBeigeLight:not(.whiteImg))):has( > .cliping.imgBeigeLight:not(.whiteImg)):not(:has( .cliping.bg-cLBeigeDark)) > [class^="container"],
section:not(:is([class*=bg-],.sc3,.sc6, *:has( .cliping)))+ :is(section, footer):not(:is([class*=bg-],.sc3,.sc6, *:has( .cliping)))>[class^="container"]:not(*~*) {padding-top: 0;}
 /* {padding-top: 0;} */
/* header */
header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10000;
    padding-block: min(1em,2vw);
}
header .container-max {padding-block: 0;}
header .row {align-items: flex-start;}
header .left {
    position: relative;
}
header .left .logo {
    display: block;
    border-radius: min(1em,3vw);
    object-fit: contain;
    background-color: var(--cLWhite);
    padding: min(1em,2vw) min(1.7em,2vw);
    width: clamp(min(200px,29vw),18vw,250px);
    box-shadow: 0px 10px 20px var(--cLShadowSubtle);
}
header .left .logo img {
    width: 100%;
    object-fit: contain;
}
header .right {
    display: flex;
    border-radius: 1em;
    align-items: center;
    column-gap: min(3em,5vw);
    padding: .5em .5em .5em 1em;
    justify-content: space-between;
    background-color: var(--cLWhite);
    box-shadow: 0px 10px 20px var(--cLShadowSubtle);
}
header .ct-nav {
    position: fixed;
    inset: 0;
    opacity: 0;
    z-index: 1;
    scale: 1.1;
    visibility: hidden;
    transition: all .3s;
    flex: 1 1 max(400px, 70%);
}
header:has( .ct-nav + input:checked) .ct-nav {
    scale: 1;
    opacity: 1;
    visibility: visible;
}
header .ct-nav nav {
    position: relative;
    height: 100%;
    margin-left: auto;
    width: min(500px,100%);
    background-color: var(--cLWhite);
    padding: 5em min(2em,10vw) min(2em,10vw);
}
header .primary {
    gap: 1em 2em;
    display: flex;
    font-weight: 800;
    min-height: 100%;
    overflow-y: scroll;
    align-items: center;
    flex-direction: column;
}
header .primary ul {
    position: relative;
    display: grid;
    row-gap: .2em;
    overflow: hidden;
    font-weight: 400;
    text-align: center;
    font-size: min(14px,3.4vw);
    transition: height .3s, all .3s;
}
header .primary li:has( > ul) {
    gap: 0;
    transition: all .3s;
    grid-template-rows: 1.7em 0fr;
    position: relative;
}
header .primary li:has( > label input:checked) {
    gap: 1em;
    grid-template-rows: 1.7em 1fr;
}
header .primary li > label:has(input:checked) {rotate: -180deg;}
header .primary li > ul {
    overflow: hidden;
}
header + main {
    width: 100vw;
    overflow-x: clip;
}
header + main > *:is(:first-child) {padding-top: min(5em,10vw);}
header + main > *:is(:first-child):not(.sc1) {padding-top: min(7em,20vw);}
/* sc1 */
.sc1 {z-index: 2;}
.sc1 .container-xxxl {padding-block: min(8em,13vw) min(5em,10vw);}
.sc1 .wrapper {position: relative;}
.sc1 :is(picture,video) {
    width: 100%;
    rotate: -1deg;
    object-fit: cover;
    filter: brightness(0.5);
    border-radius: min(5em,5vw);
    height: clamp(min(500px,115vw),min(86dvh,100dvw),1030px);
}
.sc1 :is(picture,video) + * {color: var(--cLWhite);}
.sc1 .container-xl {
    position: absolute;
    inset: 0;
    display: grid;
    align-content: flex-end;
    padding-block: min(8em,10vw);
}
.sc1 .logo-cricle {
    position: absolute;
    z-index: 1;
    aspect-ratio: 1/1;
    isolation: isolate;
    right: min(6em,10vw);
    bottom: min(5em,10vw);
    height: clamp(150px,13vw, 243px);
    background: url('../assets/images/logo-cirlce.svg') center / contain no-repeat;
}
.sc1 .logo-cricle::before {
    position: absolute;
    inset: 0;
    content: '';
    background: url('../assets/images/text-cirlce.svg') center / contain no-repeat;
}
.loaded-page .sc1 .logo-cricle::before {animation: rotate-center 20s linear infinite both;}
@keyframes rotate-center {
  100% {transform: rotate(360deg);}
}
.sc1 .taches > .tache-1 {
    top: 19.5%;
    right: -2%;
    height: min(180px,10vw);
    background-color: var(--cLYellowBright);
}
.sc1 .taches > .tache-2 {
    top: 52%;
    left: 1%;
    height: 93px;
    background-color: var(--cLGreenLeaf);
}
.sc1 .taches > .tache-3 {
    top: 65%;
    left: -8%;
    height: min(347px,19vw);
    background-color: var(--cLGreenDeep);
}
.sc1 .taches > .tache-4 {
    top: 75%;
    right: -6%;
    height: min(224px,13vw);
    background-color: var(--cLMauve);
}
/* .sc1 .fs21 {font-size: clamp(2em,3.9vw,21px);} */
/* sc2 */
.sc1 + .sc2.bg-cLBeigeLight {
    margin-top: calc(min(5em,10vw) * -1);
    background-image: url(../assets/images/fond-beige.webp);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}
.sc2 .container-xxxl {max-width: min(1838px,85vw);}
.sc2 .grig {
    display: grid;
    grid-gap: 2em 0;
    grid-template-columns: repeat(auto-fit, minmax(max(min(450px,100%), 30%), 1fr));
}
.sc2 .grig > .grid-left { 
    display: grid;
    grid-gap: 0px;
    padding-top: 1em;
    grid-template-columns: repeat(15, 1fr);
    grid-template-rows: auto;
}
.sc2 .grig > :is(.grid-left,.grid-right) picture:not(.logo) {
    border-radius: min(29px,3vw);
    border: min(8px,1vw) solid var(--cLWhite);
}
:is(.sc2.bg-cLBeigeLight,.sc2:has( .cliping.imgBeigeLight)) .grig > :is(.grid-left,.grid-right) picture:not(.logo) {border-color: var(--cLBeigeLight);}
.sc2 .grig > .grid-left > picture:nth-child(1) { 
    rotate: -5deg;
    /* height: min(427px,55vw); */
    grid-area: 1 / 1 / 21 / 13; 
}
.sc2 .grig > .grid-left > picture:nth-child(2) { 
    rotate: 5deg;
    /* height: min(224px, 29vw); */
    grid-area: 12 / 10 / 31 / 16;
}
.sc2 .grig > .grid-right { 
    display: grid;
    grid-gap: 0px;
    grid-template-columns: repeat(35, 1fr);
    grid-template-rows: auto;
}
.sc2 .grig > .grid-right > picture:nth-child(1) {
    z-index: 1;
    rotate: -5deg;
    /* height: min(253px,40vw); */
    grid-area: 2 / 2 / 10 / 15;
}
.sc2 .grig > .grid-right > picture:nth-child(2) { 
    rotate: 5deg;
    /* height: min(392px,55vw); */
    grid-area: 5 / 8 / 22 / 36;
}
.sc2 .grig > .grid-right > picture:nth-child(3) { grid-area: 17 / 1 / 26 / 14; }
.sc2 .grig > .grid-right .logo img { object-fit: contain; }
/* sc3 */
section:has([class*="bg-"],> .cliping.imgBeigeLight) + .sc3 .container-xxxl {padding-top: 0;}
.sc3 .container-xxxl {max-width: 100%;}
.sc3 .row {
    position: relative;
    z-index: 2;
    overflow: hidden;
    isolation: isolate;
    gap: min(1em,5vw) 2%;
    background-color: var(--cLGreenDark);
    padding: min(12vw,2.5em) clamp(1em,2vw,3.5em);
}
.sc3 .row > [class*="block-"] {
    height: auto;
    border-radius: min(2em,5vw);
    /* filter: drop-shadow(0 10px 20px var(--cLShadowSubtle)); */
}
.sc3 .row > .block-1,
.sc3 .row > .block-2 {
    align-content: center;
    padding: clamp(1.2em,2vw,2em);
}
.sc3 .row > .block-2::before {
    position: absolute;
    inset: 0;
    content: '';
    pointer-events: none;
    background: url('../assets/images/Vally-journal-fdv.svg') 95% 16% / 60px auto no-repeat;
}
.sc3 .row > .block-1 {flex: 1 1 max(200px,35%);background: #117543;}
.sc3 .row > .block-2 {flex: 1 1 max(100px,25%);}
.sc3 .row > .block-3 {
    aspect-ratio: 1/.7;
    flex: 1 1 max(200px,35%);
}
.sc3 .taches > .tache-1 {
    bottom: 1%;
    right: 35%;
    top: initial;
    rotate: 82deg;
    height: min(180px,50vw);
    background-color: var(--cLYellowBright);
}
.sc3 .taches > .tache-2 {
    top: 1%;
    right: 40%;
    rotate: 99deg;
    height: min(319px,40vw);
    background-color: var(--cLGreenLeaf);
}
.sc3 .taches > .tache-2 + .tache-2 {
    bottom: -3%;
    right: -8%;
    top: initial;
    left: initial;
    rotate: 75deg;
    height: min(214px,43vw);
    background-color: var(--cLGreenLeaf);
}
.sc3 .taches > .tache-1 + .tache-1 {
    top: -4%;
    right: -6%;
    rotate: 83deg;
    height: min(265px,40vw);
    background-color: var(--cLYellowBright);
}
/* .sc3 .taches > .tache-1 + .tache-1   {
    top: -8%;
    left: -2%;
    right: initial;
    height: 265px;
    background-color: var(--cLYellowBright);
} */
.sc3 .taches > .tache-3 {
    top: 5%;
    left: 1%;
    height: 180px;
    background-color: var(--cLYellowBright);
}
.sc3 .taches > .tache-4 {
    top: -5%;
    left: -13%;
    rotate: -126deg;
    height: min(228px,40vw);
    background-color: var(--cLMauve);
}
.sc3 .taches > .tache-4+.tache-4 {
    top: initial;
    left: -20%;
    bottom: -8%;
    rotate: 14deg;
    height: min(280px,45vw);
    background-color: var(--cLMauve);
}
/* sc4 */
.sc4 .row {gap: min(2em,5vw) 8%;}
.sc4 .row .left {flex: 1 1 max(300px,20%);}
.sc4 .row .left picture {
    rotate: -1deg;
    height: min(457px,70vw);
    border-radius: min(1em,5vw);
    box-shadow: 0 0 0 8px var(--cLWhite);
    filter: drop-shadow(0px 10px 20px var(--cLShadowSubtle));
}
.sc4 .row .right {flex: 1 1 max(300px,60%);}
/* sc6 */
.sc6 .container-xxl {
    position: relative;
    z-index: 1;
}
.sc6 .row {
    max-width: 75vw;
    filter: opacity(0.8);
    margin-inline: auto;
    padding-block: min(16em,30vw) min(2em,2vw);
}
.sc6 picture {
    rotate: -1deg;
    clip-path: inset( min(2em,5vw) round min(2rem,5vw));
}
.sc6 picture img {filter: brightness(.9);}
.sc6 picture::after {
    position: absolute;
    inset: 0;
    content: '';
    background: linear-gradient(180deg, var(--cLGreenTransparent) 0%, var(--cLGreenDeepTrans) 100%);
}
.sc6 .taches > .tache-1 {
    top: 8%;
    left: 19%;
    height: min(117px,18vw);
    background-color: var(--cLYellowBright);
}
.sc6 .taches > .tache-2 {
    top: 60%;
    right: 5%;
    height: min(91px,14vw);
    background-color: var(--cLGreenLeaf);
}
.sc6 .taches > .tache-3 {
    top: 77%;
    right: -2%;
    height: min(263px,27vw);
    background-color: var(--cLGreenDeep);
}
.sc6 .taches > .tache-4 {
    top: -3%;
    left: -5%;
    height: min(224px,28vw);
    background-color: var(--cLMauve);
}
/* sc7 */
.sc7 .row {gap: min(2em,5vw) 8%;}
.sc7 .left {flex: 1 1 max(300px,30%);}
.sc7 .right {flex: 1 1 max(300px,50%);}
.sc7 .wrapper-blocs {
    display: grid;
    gap: min(1.5em,5vw);
    grid-template-columns: repeat(auto-fill, minmax(max(300px, 40%), 1fr));
}
.sc7 .wrapper-blocs > li {
    position: sticky;
    top: 10em;
    transition: all .3s;
}
.sc7 .wrapper-blocs > li:nth-child(4n + 1) {rotate: -1deg;}
.sc7 .wrapper-blocs > li:nth-child(4n + 2) {rotate: 1deg;}
.sc7 .wrapper-blocs > li:nth-child(4n + 3) {rotate: 1deg;}
.sc7 .wrapper-blocs > li:nth-child(4n + 4) {rotate: -1deg;}
.sc7 .wrapper-blocs > li .text {
    position: relative;
    transition: all .3s;
    padding: min(1.7em,5vw);
    border-radius: min(1em,5vw);
    background-color: var(--cLWhite);
    border: 3px solid var(--cLGreenLightTrans);
}
.sc7 .wrapper-blocs > li .text.details {
    position: absolute;
    inset: 0;
    opacity: 0;
    z-index: 1;
    visibility: hidden;
    transition: all .3s;
    color: var(--cLWhite);
    background-color: var(--cLGreenDark);
}
.sc7 .wrapper-blocs > li:hover .text.details  {
    opacity: 1;
    visibility: visible;
}
/* sc9 */

.sc9 .flex {
    column-gap: 2.5%;
}

.sc9 .flex > iframe {
    z-index: 1;
    height: 314px;
    flex: 1 1 max(300px,35%);
    border-radius: min(1em,5vw);
}
.sc9 .flex > .text {
    padding-block: 1.5em;
    flex: 1 1 max(100px,20%);
}
/* sc11 */
.sc11 .cliping img {filter: brightness(.5);}
.sc11 .cliping::after {
    position: absolute;
    inset: 0;
    content: '';
    display: block;
    background: linear-gradient(180deg, #00391D3E 0%, var(--cLGreenLightTrans) 100%)
}
.sc11 .taches > .tache-3 {
    left: -5%;
    bottom: -10%;
    height: min(263px,13vw);
    background-color: var(--cLGreenDeep);
}
.sc11 .taches > .tache-4 {
    right: -5%;
    bottom: -10%;
    height: min(224px,10vw);
    background-color: var(--cLMauve);
}
.breadcrumb {
    flex-wrap: wrap;
    display: inline-flex;
    justify-content: center;
    font-size: clamp(0.8em,1vw,16px);
}
.left .breadcrumb {justify-content: flex-start;}
.breadcrumb > li:not(:last-child)::after {
    position: relative;
    content: '>';
    margin-inline: 5px;
}
/* sc12 */
/* .sc12:has( + .sc13) {padding-bottom: min(15em,60vw);}
.sc13:is(.sc12 + .sc13) .row {margin-top: calc(min(22em,70vw) * -1);} */
/* sc15 */
.sc15 #map {
    width: 100%;
    height: min(498px,60vw);
    border-radius: min(2em,5vw);
}
.sc15 #map .leaflet-marker-icon svg {stroke: var(--cLWhite);stroke-width: 1px;}
.sc15 #map .leaflet-control-zoom,
.sc15 #map .leaflet-bottom.leaflet-right {display: none !important;}
/* sc16 */
.sc16 .row {
    gap: 0;
    overflow: hidden;
    border-radius: min(2em,5vw);
    background-color: var(--cLWhite);
    flex-direction: column;
}
.sc16 .row .left,
.sc16 .row .right {
    position: relative;
    padding: min(3em,5vw);
    flex: 1 1 max(300px,40%);
}
.sc16 .row .flex {
    flex: 1 1 100%;
    padding: min(.5em,5vw) min(3em,5vw);
}
.sc16 .row .flex.head {padding: min(.9em,5vw) min(3em,5vw);}
/* .sc16 .row .flex .title {color: var(--cLBeigeLight);} */
.sc16 .row .flex .rs [style^="--icn-"]::before {padding: min(1.3rem, 4vw);}
.sc16 .row .left img {
    object-fit: cover;
    object-position: center center;
    border-radius: 20px;
    max-height: 400px;
}
.sc16 .row:not(.bg-cLWhite) .right::before {
    position: absolute;
    inset: 0;
    content: '';
    opacity: .44;
    background-color: var(--cLBeigeLight);
}
/* sc17 */
.sc17 .grid {
    position: relative;
    display: grid;
    align-items: center;
    gap: min(100px, 5vw) 5%;
    grid-template-columns: repeat(auto-fit, minmax(max(300px, 40%), 1fr));
}
.sc17 .grid.reverse {direction: rtl;}
.sc17 .grid.reverse > * { direction: ltr;}
.sc17 .grid.reverse > * { direction: ltr;}
.sc17 .grid .left picture {
    rotate: -1deg;
    height: min(434px,60vw);
    border-radius: min(1em, 5vw);
    box-shadow: 0 0 0 8px var(--cLWhite);
    filter: drop-shadow(0px 10px 20px var(--cLShadowSubtle));
}
.sc17 .grid.reverse .left picture {rotate: 1deg;}
/* sc19 */
.sc19 .flex {position: relative;}
/* sc20 */
.sc20 .row {column-gap: 10%;}
.sc20 .left,
.sc20 .right {flex: 1 1 max(300px,40%);}
.sc20 .right picture {border-radius: min(2em,5vw);}
.sc20,.sc11 {z-index: 2;}
:is(.sc20,.sc11):has( + .sc16) {padding-bottom: min(3em,10vw);}
:is(.sc20,.sc11) + .sc16 > [class^="container"] {
    position: relative;
    z-index: 2;
    margin-top: calc(min(8em,20vw) * -1);
}


/* MODIF FSC */


.sc7__title {
  font-family: "poster-gothic-round-excond-a", sans-serif;
  font-size: clamp(2rem, 3vw, 53px);
  font-weight: 700;
  text-transform: uppercase;
}

.sc7__title em {
  color: var(--cLGreenLight);
  font-style: normal;
}

.sc7__lead {
  font-size: 1rem;
}

.sc7__image {
    display: block;
    width: min(410px, 100%);
    
    margin-top: 15px;
}

.engagement-card {
  position: relative;
}

.engagement-card__front,
.engagement-card__back {
  position: relative;
  font-size: clamp(.9rem, 1vw, 16px);
}

.engagement-card__title {
  font-family: "poster-gothic-round-excond-a", sans-serif;
  font-size: clamp(1.05rem, 1.3vw, 24px);
  font-weight: 700;
  text-transform: uppercase;
  color: var(--cLGreenLight);
}

.engagement-card__title--light {
  color: var(--cLBeigeLight);
}

.engagement-card__cta span {
  font-family: "fuzzy-bubbles", sans-serif;
  font-size: clamp(.9rem, 1.08vw, 18px);
  font-weight: 700;
}

.engagement-card__overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
}




/* footer */
footer .container-xl {padding-bottom: 0;}
footer .row {
    padding-bottom: 2em;
    justify-content: space-between;
}
footer .nav {
    display: grid;
    row-gap: .8em;
}
footer .foot {
    padding-block: 1em;
    border-top: 1px solid var(--cLGrayLight);
}
/* -- */
@media screen and (width>=1200px)  {.mob{display: none !important;}}
@media screen and (width<1200px)  {.desk{display: none !important;}}