﻿@import url("https://use.typekit.net/zqo0rvg.css");

:root {
 --color-ink: #2d4d4a;
 --color-brand: #d6d451;
 --color-accent: #000000;
 --color-white: #fff;
 --container-max: 1280px;

 --underline-svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='95.011' height='33.162' viewBox='0 0 95.011 33.162'%3E%3Cdefs%3E%3CclipPath id='clip-path'%3E%3Crect width='94.475' height='31.518' fill='%23e1e55f'/%3E%3C/clipPath%3E%3C/defs%3E%3Cg transform='translate(0.55) rotate(1)'%3E%3Cg clip-path='url(%23clip-path)'%3E%3Cpath d='M92.952,6.457c-.211-.274-.422-.55-.635-.824q.631.8.248.3a11.847,11.847,0,0,0-.932-1.168,12.2,12.2,0,0,0-1.85-1.562A17.424,17.424,0,0,0,83.35.492,33.74,33.74,0,0,0,75.156.045C71.885.113,68.615.16,65.344.25,58.8.433,52.259.835,45.721,1.132L26.1,2.022l-10.988.5c-3.672.166-7.328.5-10.989.807C1.977,3.5-.1,5.094,0,7.444a4.181,4.181,0,0,0,4.114,4.116c12.063.2,24.127-.18,36.19-.44C36.132,12.195,32,13.448,27.93,14.91a148.011,148.011,0,0,0-16.963,7.324c-3.1,1.576-1.565,6.444,1.739,6.418,11.717-.092,23.468-.408,35.154.569a1.966,1.966,0,0,0,1.025,1.665,4.742,4.742,0,0,0,6.932-2.967A2.565,2.565,0,0,0,54.044,24.8a163.225,163.225,0,0,0-25.272-2.78,141.752,141.752,0,0,1,14.151-4.307q3.757-.932,7.561-1.656,1.9-.363,3.811-.674.869-.142,1.74-.273.52-.078,1.044-.153l.562-.078a139.574,139.574,0,0,1,15.3-1.181,120.112,120.112,0,0,1,17.564,1.052c2.716.339,4.4-2.82,3.865-5.073a9.331,9.331,0,0,0-1.423-3.219m-9.908,3.682c.2.017.391.028.582.034l.05.012c-.633,0-.739-.032-.633-.045m2.177.453c.147.053.295.1.445.142l.019.013c-.4-.094-.515-.149-.464-.155' fill='%23e1e55f'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

.fl-node-kia9rcs21o3h {
    position: sticky;
    top: 0;
}

.archive main.Flix {
    overflow: visible;
}

.gtranslate_wrapper {
 background: #fff;
 border-radius: 50%;
 width: 45px;
 height: 45px;
 display: flex;
 justify-content: center;
 align-items: center;
}

select.gt_selector.notranslate {
 padding: 1px 4px;
 background: transparent;
 border: none;
 color: #2d4d4a;
 width: 40px;
 margin-left: -4px;
}

* {
 box-sizing: border-box;
}

.grid-realisations,
.grid-expressions {
 display: grid;
 grid-template-columns: 1fr 1fr 1fr;
 grid-auto-flow: normal;
 row-gap: 10px;
 column-gap: 20px;
}

.grid-realisations .item,
.grid-expressions .item {
 margin: 0;
}

.single main.Flix {
 position: relative;
 overflow: visible !important;
}

strong {
 font-weight: 700;
}

body ::-webkit-scrollbar,
html ::-webkit-scrollbar {
 width: 6px;
 background-color: var(--color-accent);
}

body ::-webkit-scrollbar-thumb,
html ::-webkit-scrollbar-thumb {
 -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
 background-color: var(--color-brand);
}

body ::-webkit-scrollbar-track,
html ::-webkit-scrollbar-track {
 background-color: var(--color-accent);
}

body,
html {
 margin: 0;
 padding: 0;
}

body {
 font-family: "sofia-pro", sans-serif;
 color: var(--color-ink);
 margin: 0;
 padding: 0;
 font-size: 15.5px;
 background: #f3ecd9;
}

.container {
 max-width: var(--container-max);
 margin: 0 auto;
 position: relative;
 z-index: 1;
}

.Flix {
 overflow: hidden;
}

a {
 color: #4c4c4c;
 text-decoration: none;
}

p a,
li a {
 color: var(--color-brand);
 text-decoration: none;
}

a:hover {
 color: var(--color-brand);
 text-decoration: underline;
}

.btn {
 padding: 10px 20px;
 position: relative;
 text-decoration: none;
 z-index: 1;
 display: inline-flex;
 gap: 10px;
 transition: cubic-bezier(0.4, 0, 1, 1) 0.2s;
 background: #ffffff;
 color: #000000;
 border: 1px solid #ffffff;
 margin-bottom: 5px;
 border-radius: 29px;
 text-transform: uppercase;
 min-height: 47px;
 align-items: center;
 font-size: 0.9em;
}

.btn:hover {
 background: rgb(53 181 210 / 30%);
 color: #fff;
 text-decoration: none;
 border: 1px solid rgb(53 181 210 / 30%);
}

.btn img {
 width: auto;
 height: 25px;
}

.btn.vert {
 background: #e1e55f;
 border: 1px solid #e1e55f;
 border-radius: 29px;
 color: #2d4d4a;
}

.btn.blanc {
 background: #ffffff 0% 0% no-repeat padding-box;
 border: 1px solid #e1e55f;
 border-radius: 29px;
 color: #e1e55f;
}

.btn.transpa {
 background: transparent;
 color: #e1e55f;
 border: 1px solid #e1e55f;
}

.btn.vertfonce {
 background: #2d4d4a;
 color: #e1e55f;
 border: 1px solid #2d4d4a;
 font-size: 1.1em;
}

.btn.vertfonce.ACTIVER,
.btn.vertfonce.is-active {
    background: #e1e55f;
    color: #2d4d4a;
}

.btn-produits {
 position: relative;
 display: inline-flex;
 align-items: center;
 width: 275px;
 height: 47px;
 padding: 0 28px;
 box-sizing: border-box;
 overflow: hidden;
 background: #fff;
 color: #294f4c;
 border-radius: 999px;
 text-transform: uppercase;
 text-decoration: none;
 font-size: 0.9em;
}

.btn-produits.color2 {
 background: #f3ecd9;
 margin-top: 10px;
}

.btn-produits::before {
 content: "";
 position: absolute;
 top: 3px;
 right: 3px;
 width: 41px;
 height: 41px;
 background: #e8ed2d;
 border-radius: 999px;
 transition: width 0.5s cubic-bezier(0.65, 0, 0.35, 1);
}

.btn-produits::after {
 content: "";
 position: absolute;
 right: 12px;
 width: 24px;
 height: 24px;
 background: url(/wp-content/uploads/2026/07/fleche-btn.svg) center / contain
  no-repeat;
 transition: transform 0.3s ease;
}

.btn-produits span {
 position: relative;
 z-index: 1;
 color: #2d4d4a;
}

.btn-produits:hover::before {
 width: calc(107% - 6px);
 top: 0px;
 height: 47px;
 right: 0px;
}

.btn-produits:hover::after {
 transform: translateX(0px);
}

.btn-produits strong,
.btn-produits b {
 position: relative;
 color: #2d4d4a;
 font-weight: 600 !important;
}

.wp-txt-center,
.text-center {
 text-align: center;
 line-height: 1.3em;
}

.margin20 {
 margin-top: 20px;
 margin-bottom: 20px;
}

.margin30 {
 margin-top: 30px;
 margin-bottom: 30px;
}

.margin40 {
 margin-top: 40px;
 margin-bottom: 40px;
}

.margin50 {
 margin-top: 50px;
 margin-bottom: 50px;
}

.margin60 {
 margin-top: 60px;
 margin-bottom: 60px;
}

.margin70 {
 margin-top: 70px;
 margin-bottom: 70px;
}

.margin80 {
 margin-top: 80px;
 margin-bottom: 80px;
}

.margin90 {
 margin-top: 90px;
 margin-bottom: 90px;
}

.margin100 {
 margin-top: 100px;
 margin-bottom: 100px;
}

.margintop80 {
 margin-top: 60px;
}

.padding10 {
 padding-top: 10px !important;
 padding-bottom: 10px !important;
}

.padding20 {
 padding-top: 20px !important;
 padding-bottom: 20px !important;
}

.padding30 {
 padding-top: 30px !important;
 padding-bottom: 30px !important;
}

.padding40 {
 padding-top: 40px !important;
 padding-bottom: 40px !important;
}

.padding50 {
 padding-top: 50px !important;
 padding-bottom: 50px !important;
}

.padding60 {
 padding-top: 60px !important;
 padding-bottom: 60px !important;
}

.padding70 {
 padding-top: 70px !important;
 padding-bottom: 70px !important;
}

.padding80 {
 padding-top: 80px !important;
 padding-bottom: 80px !important;
}

.padding90 {
 padding-top: 90px !important;
 padding-bottom: 90px !important;
}

.padding100 {
 padding-top: 100px !important;
 padding-bottom: 100px !important;
}

.marginmoins {
 margin-top: -60px;
}

.texteblanc,
.textblanc,
.text-blanc,
.texte-blanc {
 color: var(--color-white);
}

p {
 line-height: 1.6em;
 margin-bottom: 7px;
 margin-top: 7px;
}

/* FAQ 2026 */
.faq.accordion {
 border: 1px solid #d9d4c7;
 border-radius: 12px;
 overflow: hidden;
 background: #fffdf8;
}

.faq.accordion h2 {
 margin-left: 20px;
 margin-bottom: 5px;
 margin-top: 15px !important;
}

.faq .tab {
 position: relative;
 border-top: 1px solid #e7e1d2;
}

.faq .tab:first-of-type {
 border-top: 0;
}

.faq .tab input {
 position: absolute;
 opacity: 0;
 pointer-events: none;
}

.faq .tab__label {
 display: flex;
 justify-content: space-between;
 align-items: center;
 gap: 1rem;
 padding: 1.1rem 1.25rem;
 cursor: pointer;
 font-weight: 700;
 color: var(--cLGreenDark);
 background: #fffdf8;
}

.faq .tab__label::after {
 content: "\276F";
 flex: 0 0 auto;
 transition: transform 0.35s ease;
}

.faq .tab__content {
 max-height: 0;
 overflow: hidden;
 transition: max-height 0.35s ease;
}

.faq .tab__content > div {
 padding: 0 1.25rem 1.1rem;
}

.faq .tab input:checked + .tab__label::after {
 transform: rotate(90deg);
}

.faq .tab input:checked ~ .tab__content {
 max-height: 300px;
}

/* NEW DISPO */
.content-image-left {
 float: left;
 max-width: 350px;
 margin-right: 20px;
}

.content-image-right {
 float: right;
 max-width: 350px;
 margin-left: 20px;
}

.content-image-center {
 text-align: center;
 margin: 20px 0;
 clear: both;
}

.content-images-double {
 display: flex;
 gap: 15px;
 margin: 20px 0;
 justify-content: center;
 flex-wrap: wrap;
 clear: both;
}

.content-images-double > div {
 flex: 1;
 min-width: 250px;
}

.content-gallery-img {
 border-radius: 8px;
 box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
 width: 100%;
 height: 330px;
 object-fit: cover;
}

.content-gallery-img.single-left,
.content-gallery-img.single-right {
 width: 340px;
 height: 260px;
}

.content-gallery-img.single-center {
 width: 100%;
 height: auto;
 max-height: 400px;
}

@media (max-width: 768px) {
 .content-image-left,
 .content-image-right {
  float: none !important;
  margin: 20px auto !important;
  text-align: center;
  max-width: 100%;
 }

 .content-images-double {
  flex-direction: column;
 }
}

.singledessus {
 margin: 0 3%;
 margin-bottom: 4%;
 position: relative;
 padding-top: 7% !important;
}

.singledessus hr {
 margin: auto !important;
 margin-bottom: 25px !important;
}

.singledessus h1 {
 width: 80%;
 margin: auto;
}

section.SingleReaExp {
 padding-top: 6% !important;
 margin-top: -5%;
 position: relative;
}

section#slide_realisations {
 position: relative;
 padding-top: 6% !important;
}

table {
 width: 100%;
 border-collapse: collapse;
}

th,
td {
 padding: 12px 15px;
 text-align: left;
 border-bottom: 1px solid #ddd;
}

th {
 font-weight: 700;
 background: #f5f5f5;
}

td:last-child,
th:last-child {
 text-align: right;
}

tbody tr:hover {
 background: #fafafa;
}

/* HEADER  */

.fixedtel {
 position: fixed;
 top: 120px;
 right: 45px;
 z-index: 9999;
}

.espacement-haut {
 margin-top: 10%;
}

.logo {
 position: relative;
 opacity: 1;
 height: 105px;
 overflow: hidden;
 display: flex;
 justify-content: center;
 align-items: center;
 transition: all 0.4s ease 0.2s;
}

.logo img {
 padding: 0;
 height: 105px;
 width: auto;
 object-fit: contain;
 transition: all 0.4s ease 0.2s;
}

.navbar {
 display: grid;
 grid-template-columns: auto 1fr auto;
 align-items: center;
 color: #fff;
 position: fixed;
 top: 85px;
 left: 50%;
 z-index: 20;
 gap: 30px;
 transition: all 0.4s ease 0.2s;
 transform: translate(-50%, -50%);
 width: 100%;
 padding: 10px 50px;
 justify-items: end;
}

header.navbar.stickback {
 background: #7e8a57;
 width: 97%;
 border-radius: 30px;
 padding: 10px 20px;
 top: 60px;
 box-shadow: 1px 4px 15px #00000029;
}

header.navbar.stickback .logo {
 height: 60px;
}

header.navbar.stickback .logo img {
 height: 60px;
}

.espace-menu {
 margin-left: auto;
 position: relative;
 padding: 10px 20px;
}

.navbar.scrolled {
 top: 0px;
 background-color: rgb(2 32 57 / 40%);
 backdrop-filter: blur(10px);
 padding: 10px;
 height: 140px;
 border-radius: 23px;
 transform: translate(-50%, -50%) translateY(55%);
 padding: 0 30px;
}

.MenuBox {
 display: none;
}

.flex-entete-d {
 position: relative;
 z-index: 3;
 display: flex;
 gap: 15px;
 justify-content: flex-end;
 margin-bottom: 10px;
 border-bottom: 1px solid rgb(255 255 255 / 50%);
 padding-bottom: 10px;
 align-items: center;
}

.flex-entete-d-2 {
 display: flex;
 gap: 15px;
 align-items: center;
}

.flex-entete-d-2 a {
 margin-bottom: 0;
}

.flex-entete-d img {
 height: 20px;
}

.flex.entre {
 margin-top: 0;
 gap: 0;
}

.flex.entre li {
 display: flex;
 gap: 5px;
 border-right: 1px solid #fff;
}

li.rese.numero3 {
 border-right: 1px solid #fff !important;
 padding-right: 5px;
}

.flex-entete-d a {
 margin: 0 10px;
 display: flex;
 color: #fff;
}

.flex-entete-d strong {
 font-weight: 300;
}

ul#menu-entete {
 padding: 0;
 margin: 0;
 display: flex;
 gap: 30px;
 margin-left: auto;
}

ul#menu-entete li {
 list-style: none;
 position: relative;
}

ul#menu-entete > li {
 padding-bottom: 7px;
}

ul#menu-entete li a {
 text-decoration: none;
 margin: 0 8px 0 0px;
 transition: all 0.5s ease;
 position: relative;
 cursor: pointer;
 color: #fff;
 font-weight: 300;
 border-bottom: 1px solid transparent;
}

ul#menu-entete li a:hover {
 color: #ffffff;
 border-bottom: 1px solid #e1e55f;
}

ul#menu-entete .menu-item-has-children ul.sub-menu {
 position: absolute;
 display: none;
}

ul#menu-entete li.menu-item-has-children.openLi .sub-menu,
ul#menu-entete li.menu-item-has-children:hover .sub-menu {
 display: block;
 min-width: 190px;
 top: 25px;
 overflow: hidden;
 width: max-content;
 padding: 10px 15px;
 background-color: #2d4d4ad6;
 border-radius: 15px;
 backdrop-filter: blur(20px);
}

ul#menu-entete li.menu-item-has-children.openLi .sub-menu li,
ul#menu-entete li.menu-item-has-children:hover .sub-menu li {
 margin: 10px 0px;
}

li.menu-item-has-children:after {
 content: "\276F";
 position: absolute;
 right: -10px;
 transform: rotate(90deg);
 top: 4px;
 color: #e1e55f;
 font-size: 13px;
}

#menu-entete ul.sub-menu {
 padding: 0;
 margin: 0;
}

.navbar:has(.espace-menu.open) .flex-entete-d .telephone,
.navbar:has(.espace-menu.open) .flex-entete-d .boutique {
 display: none;
}

.navbar:has(.espace-menu.open) .logo img {
 filter: brightness(0) saturate(100%) invert(100%) sepia(2%) saturate(0%)
  hue-rotate(173deg) brightness(104%) contrast(102%);
}

.navbar.scrolled ul.sub-menu {
 background-color: rgb(255 255 255) !important;
}

.flex {
 list-style: none;
 display: flex;
 justify-content: center;
 gap: 30px;
 margin: 0;
 padding: 0;
}

/* ARIANE */

.Filedariane {
 line-height: 1.3em;
 color: var(--color-white);
 background: #96c824;
 text-align: center;
 margin: 0;
 border-radius: 0;
}

.Filedariane ul {
 display: inline-block;
 padding: 0;
 color: var(--color-white);
 position: relative;
 z-index: 2;
}

.Filedariane li {
 display: inline-block;
}

.Filedariane li a {
 color: var(--color-white);
 text-decoration: none;
 text-transform: capitalize;
}

.Filedariane li:after {
 content: "\2022";
 color: var(--color-white);
 margin-left: 6px;
 margin-right: 6px;
}

.Filedariane li:last-child:after {
 display: none;
}

/* SINGLE */

.Grid-1-2 {
 display: grid;
 grid-template-columns: 1.3fr 0.7fr;
 grid-template-rows: 1fr;
 gap: 10px 30px;
 margin-bottom: 5%;
 margin-top: 2%;
}

.CoteGauche {
 position: relative;
 max-width: none;
 width: 100%;
 overflow: hidden;
 background: var(--color-white) 0% 0% no-repeat padding-box;
 padding: 30px;
}

.CoteDroit {
 line-height: 1.5em;
}

.CoteDroit .FormulaireWpFluide {
 border-radius: 0;
 color: #000000;
}

.FormulaireWpFluide {
 padding-bottom: 50px;
}

.sticky {
 top: 130px;
 position: sticky !important;
 left: 0;
}

.lePartage {
 display: flex;
 justify-content: space-between;
 width: 100%;
 align-items: center;
 border-top: 1px dashed #a59e89;
 padding-top: 15px;
 margin-top: 15px;
}

span.titreinfos {
 display: block;
 font-size: 1.9em;
}

.lePartage a span {
 margin-right: 10px;
}

.a2a_kit.a2a_kit_size_32.a2a_default_style {
 display: inline-block;
 padding: 10px 0;
}

.entetebandeau.bandeauhome {
 margin: 40px;
 margin-bottom: 0;
 padding-bottom: 30px !important;
 margin-top: 0;
 padding-top: 8% !important;
}

.entetebandeau .fl-rich-text {
 padding: 0 !important;
 width: 80%;
 margin: auto;
}

/* TERM */

.gridtermdouble {
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 10px 30px;
 padding-bottom: 30px;
 margin-bottom: 30px;
}

.gridul2 {
 display: grid;
 grid-template-columns: 1fr 1fr;
}

.gridtermavecfaq {
 display: grid;
 grid-template-columns: 0.9fr 1.1fr;
 gap: 10px 30px;
 align-items: center;
}

.block1term,
.block2term,
.block3term {
 padding: 25px;
 border-radius: 25px;
}

.ulterm3 ul,
.block3term ul {
 padding: 0;
 margin: 0 20px;
 margin-top: 15px;
}

.ulterm3 ul li {
 margin-bottom: 10px;
 display: flex;
 gap: 5px;
}

.block3term ul li::marker {
 color: #e1e55f !important;
}

.archive .fl-html ul li::marker {
 color: #2d4d4a;
}

.archive .fl-html ul {
 margin: 0 20px;
 padding: 0;
}

main.faqblock {
 margin-left: 0;
}

details.accordion {
 transition: all 0.3s ease-in-out;
 padding: 7px 15px;
 text-align: left;
 margin-bottom: 5px;
 border-radius: 10px;
 background: #e1e55f;
}

details.accordion summary.accordion__title {
 list-style-type: none;
 cursor: pointer;
 padding: 5px 15px 5px 0;
 background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 32 32' width='32' height='32'%3e%3crect x='14' y='6' width='2' height='18' fill='%237E875E'/%3e%3crect x='6' y='14' width='18' height='2' fill='%237E875E'/%3e%3c/svg%3e");
 background-repeat: no-repeat;
 background-position: right 0.75rem top 5px;
 font-size: 1.2em;
 gap: 10px;
 display: flex;
 align-items: center;
 padding-right: 55px;
}

details.accordion[open] summary.accordion__title {
 background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 32 32' width='32' height='32'%3e%3crect x='6' y='14' width='18' height='2' fill='%237E875E'/%3e%3c/svg%3e");
 background-repeat: no-repeat;
 background-position: right 0.75rem top 5px;
 color: #2d4d4a;
 font-weight: bold;
 margin-bottom: 10px;
}

details.accordion .accordion__content {
 padding: 15px;
 background: #fff;
 border-radius: 15px;
 margin-bottom: 10px;
}

details.accordion .accordion__content p {
 margin: 0;
}

details.accordion .accordion__content strong {
 display: block;
 margin-top: 15px;
}

section.newection2 {
 position: relative;
 color: #fff;
 overflow: hidden;
 border-radius: 30px;
 padding: 15px;
 background: #2d4d4a;
}

.newection2 .blockfaqterm {
 color: #2d4d4a;
}

/* MAP 2 */

.revendeurs-detail-layout {
 display: grid;
 grid-template-columns: 2.1fr 1fr;
 gap: 24px;
 max-width: 1280px;
 margin: 0 auto;
}

.card-map {
 background: #ffffff 0% 0% no-repeat padding-box;
 border-radius: 25px;
 overflow: hidden;
 box-shadow: 1px 4px 15px #00000029;
 position: relative;
}

.map-header {
 display: flex;
 align-items: flex-start;
 justify-content: space-between;
 gap: 20px;
 padding: 28px;
 margin-bottom: 5px;
 position: relative;
}

.map-header:after {
 content: "";
 background: url(/wp-content/uploads/2026/07/brin-avoine-2.svg);
 width: 190px;
 height: 160px;
 position: absolute;
 right: -4px;
 transform: scaleX(-1);
 background-size: contain;
}

.card-map .btn-produits {
 position: absolute;
 bottom: 40px;
 z-index: 11111;
 width: 365px;
 left: 40px;
}

div#revendeurs-detail-1-map {
 border-radius: 25px;
}

.map-header-text {
 display: flex;
 align-items: flex-start;
 gap: 16px;
}

.icon-badge {
 width: 64px;
 height: 64px;
 border-radius: 50%;
 background: #7e875e;
 display: flex;
 align-items: center;
 justify-content: center;
 padding: 9px;
}

picture.popup-revendeur-image {
 width: 100%;
 height: 115px;
 display: block;
 margin-bottom: 10px;
 overflow: hidden;
 border-radius: 10px;
}

.popup-revendeur p {
 margin: 17px 0;
 margin: 0 !important;
 max-width: 170px;
}

picture.popup-revendeur-image img {
 object-fit: cover;
 height: 100%;
 width: 100%;
 max-width: inherit;
}

.map-area {
 position: relative;
 flex: 1;
 min-height: 420px;
 background: #e4ece1;
 overflow: hidden;
}

/* emplacement prévu pour ton widget/carte (Leaflet, Mapbox, Google Maps...) */
.map-placeholder {
 position: absolute;
 inset: 0;
 display: flex;
 align-items: center;
 justify-content: center;
 color: #8fa08a;
 font-size: 14px;
 text-align: center;
 padding: 20px;
}

.map-cta {
 position: absolute;
 left: 16px;
 bottom: 16px;
 right: auto;
 background: var(--white);
 border-radius: 999px;
 padding: 14px 10px 14px 24px;
 display: flex;
 align-items: center;
 gap: 40px;
 box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

.map-cta span {
 font-size: 13px;
 font-weight: 700;
 letter-spacing: 0.5px;
 color: var(--text-dark);
}

.map-cta .arrow-btn {
 width: 40px;
 height: 40px;
 border-radius: 50%;
 background: var(--lime);
 display: flex;
 align-items: center;
 justify-content: center;
 font-size: 18px;
 color: var(--text-dark);
}

.card-list {
 padding: 28px 20px 28px 28px;
 display: flex;
 flex-direction: column;
 background: #ffffff 0% 0% no-repeat padding-box;
 box-shadow: 1px 4px 15px #00000029;
 border-radius: 25px;
}

.list-scroll {
 display: flex;
 flex-direction: column;
 overflow-y: auto;
 max-height: 545px;
 padding-right: 10px;
}

.list-item {
 display: flex;
 align-items: center;
 gap: 14px;
 padding: 5px 0;
 border-bottom: 1px solid #eee;
}

.list-item.is-active {
 background: #eeeded !important;
}

.list-item:last-child {
 border-bottom: none;
}

.list-item-thumb {
 width: 95px;
 height: 95px;
 min-width: 80px;
 border-radius: 10px;
 background: #dcdcdc;
 overflow: hidden;
}

.list-item-thumb img {
 width: 100%;
 height: 100%;
 object-fit: cover;
 display: block;
}

.list-item-info {
 flex: 1;
 min-width: 0;
}

.list-item-info b {
 letter-spacing: -0.51px;
}

.list-item-info p {
 font-size: 12.5px;
 line-height: 1.4;
 margin: 0;
 margin-bottom: 5px;
}

.list-item-info b {
 letter-spacing: -0.51px;
 font-size: 12.5px;
 text-transform: uppercase;
}

.list-item-info .hours {
 display: flex;
 align-items: center;
 gap: 5px;
 margin-top: 4px;
 font-size: 12px;
 color: var(--text-muted);
}

.list-item-link {
 width: 30px;
 height: 30px;
 border-radius: 50%;
 background: #dfe35e;
 display: flex;
 align-items: center;
 justify-content: center;
 transition: transform 0.35s ease;
 transform: rotate(315deg);
}

.list-item-link img {
 width: 14px;
 height: 16px;
 object-fit: contain;
}

/* MAP */

.grid-cardD {
 display: grid;
 gap: 1em;
 grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
}

#map {
 width: 100%;
 height: min(498px, 60vw);
 border-radius: min(2em, 5vw);
}

.cardD {
 position: relative;
 row-gap: 1em;
 display: grid;
 cursor: pointer;
 padding: min(1.3em, 5vw);
 transition: display 0.3s;
 font-size: min(14px, 3.8vw);
 border-radius: min(1em, 5vw);
 background-color: #fff;
 box-shadow: 0px 3px 6px #00000029;
}

.cardD.highlighted {
 border: 3px solid #2d4d4a;
}

.logo-cardD {
 width: 100%;
 height: 115px;
 display: block;
 overflow: hidden;
 border-radius: 10px;
}

.logo-cardD img {
 object-fit: cover;
 height: 100%;
 width: 100%;
 max-width: inherit;
}

.fl-node-jihuka9cw4b8 picture.logo-cardD {
 height: 115px;
}

.fs16 {
 margin: 0 !important;
 font-weight: 600;
}

.leaflet-popup-content {
 min-width: 170px;
}

.leaflet-popup-content p {
 margin: 5px 0 !important;
}

.cLGreenLight {
 color: var(--cLGreenLight);
}

.nav-filter {
 position: relative;
 z-index: 1;
 display: flex;
 padding-block: 0.8em;
 gap: 10px;
 align-items: center;
 list-style: none;
 width: 100%;
 padding: 0;
 justify-content: center;
}

.tag-tab {
 line-height: 1;
 border-radius: 2em;
 white-space: nowrap;
 padding: 0.9em 1.9em;
 transition: all 0.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);
}

.hidden {
 display: none;
}

.leaflet-popup-content picture.logo-cardD {
 width: 100%;
 height: 115px;
 display: block;
 margin-bottom: 10px;
 overflow: hidden;
 border-radius: 10px;
}

/* FOURNISSEURS */

.flex-fournisseur {
 list-style: none;
 padding: 0;
 max-width: max-content;
}

.flex-fournisseur li {
 border-bottom: 1px solid #e2e2e2;
 padding: 10px 0;
 display: flex;
 gap: 15px;
 align-items: center;
 font-size: 1.2em;
}

.flex-fournisseur li div {
 background: #f3ecd9;
 width: 70px;
 height: 70px;
 border-radius: 50%;
 padding: 7px;
 display: flex;
 align-items: center;
 justify-content: center;
 flex-shrink: 0;
}

.flex-fournisseur li div img {
 width: 40px;
 height: 40px;
 object-fit: contain;
}

.flex-fournisseur li p {
 line-height: 1.3em;
}

/* ENGAGEMENT */

.block-engagement {
 max-width: 1080px;
 margin: auto;
 position: relative;
}

.engagement {
 background: #e1e55f 0% 0% no-repeat padding-box;
 mix-blend-mode: multiply;
 border-radius: 30px;
 text-align: center;
 padding: 15px;
 min-height: 145px;
 position: relative;
 transform: rotate(-2deg);
}

.engagement:nth-child(8n + 2),
.engagement:nth-child(8n + 4),
.engagement:nth-child(8n + 5),
.engagement:nth-child(8n + 7) {
 transform: rotate(2deg);
}

.engagement p {
 text-align: center;
 margin: 0;
 font-size: 1.25em;
 line-height: 1.2em;
}

.engagement img {
 width: 60px;
 height: 60px;
 object-fit: contain;
 max-width: none;
 margin-bottom: 5px;
 margin-top: 5px;
}

section.entetesinglesechero {
 padding-top: 20px;
 padding-right: 20px;
 padding-bottom: 20px;
 padding-left: 20px;
}

.margtopghero {
 padding-top: 10% !important;
 padding-bottom: 3% !important;
}

/* SPECIALITES */

.card {
 --card-bg: #ffffff;
 --green-dark: #3f5b3f;
 --green-mid: #6b8e4e;
 --green-badge: #6f8f52;
 --lime: #cfe552;
 --text-body: #3f5b3f;
 position: relative;
 border-radius: 30px;
 box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
 overflow: visible;
 transition: transform 0.35s ease, box-shadow 0.35s ease;
}

.bspecialite:nth-child(odd) .card {
 transform: matrix(1, 0.03, -0.03, 1, 0, 0);
}

.bspecialite:nth-child(even) .card {
 transform: matrix(1, -0.03, 0.03, 1, 0, 0);
}

.bspecialite:nth-child(odd) .card:hover {
 transform: translateY(-6px) matrix(1, 0.03, -0.03, 1, 0, 0);
 box-shadow: 0 20px 40px rgba(0, 0, 0, 0.18);
}

.bspecialite:nth-child(even) .card:hover {
 transform: translateY(-6px) matrix(1, -0.03, 0.03, 1, 0, 0);
 box-shadow: 0 20px 40px rgba(0, 0, 0, 0.18);
}

.card__photo {
 position: relative;
 height: 200px;
 border-radius: 22px 22px 0 0;
 overflow: hidden;
}

.card__photo img {
 width: 100%;
 height: 100%;
 object-fit: cover;
 display: block;
 transition: transform 0.5s ease;
}

.card:hover .card__photo img {
 transform: scale(1.08);
}

.card__arrow {
 position: absolute;
 top: 12px;
 right: 12px;
 width: 45px;
 height: 45px;
 border-radius: 50%;
 background: #dfe35e;
 display: flex;
 align-items: center;
 justify-content: center;
 box-shadow: 0 3px 8px rgba(0, 0, 0, 0.2);
 transition: transform 0.35s ease;
 transform: rotate(315deg);
}

.card:hover .card__arrow {
 transform: rotate(360deg);
}

.card__arrow img {
 width: 19px;
 height: 19px;
 object-fit: contain;
}

.card__badge {
 position: absolute;
 left: 50%;
 top: -31px;
 transform: translateX(-50%);
 width: 65px;
 height: 65px;
 border-radius: 50%;
 background: #7e875e;
 border: 5px solid #fff;
 display: flex;
 align-items: center;
 justify-content: center;
 z-index: 2;
}

.card__badge img {
 width: 40px;
 height: 40px;
}

.card__body {
 padding: 40px 22px 28px;
 text-align: center;
 position: relative;
 background: #fff;
 margin-top: -30px;
 border-radius: 30px;
}

.card__body hr {
 display: block;
 width: 35px;
 height: 22px;
 margin: auto;
 border: 0;
 background-image: var(--underline-svg);
 background-repeat: no-repeat;
 background-position: center;
 background-size: contain;
}

.card__title {
 margin: 0;
 line-height: 1.2;
 text-transform: uppercase;
 font-family: "brushtones", sans-serif;
 font-size: 1.5em;
 font-weight: 400;
 color: #e1e55f;
}

.card__text {
 margin: 0;
 font-size: 13.5px;
 line-height: 1.5;
 color: var(--text-body);
 font-weight: 500;
}

.fl-node-ie7nxl62wrp1 {
 padding-bottom: 30px !important;
}

.zindex {
 position: relative;
 z-index: 2;
}

/* DECORS */

.cardeventail:before {
 content: "";
 background: url(/wp-content/uploads/2026/07/baguette-hero.svg);
 width: 200px;
 height: 100px;
 display: block;
 position: absolute;
 background-size: contain;
 top: 40%;
 left: -24%;
 z-index: 14;
}

.pain-deco-g:before {
 content: "" !important;
 background: url(/wp-content/uploads/2026/07/baguette-hero.svg);
 width: 200px;
 height: 100px;
 display: block !important;
 position: absolute;
 background-size: contain;
 top: 51%;
 left: 20%;
 z-index: 14;
}

.cardeventail:after,
.muffin-deco-d:after {
 content: "" !important;
 background: url(/wp-content/uploads/2026/07/muffin-hero.svg);
 position: absolute;
 width: 180px;
 height: 160px;
 display: block !important;
 top: 40%;
 right: -19%;
 z-index: 3;
 background-size: contain;
}

.svgbrun:before,
.svgbrun:after {
 filter: brightness(0) saturate(100%) invert(52%) sepia(15%) saturate(756%)
  hue-rotate(33deg) brightness(95%) contrast(83%);
}
.svgblanc:before,
.svgblanc:after {
 filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(2%)
  hue-rotate(219deg) brightness(111%) contrast(101%);
}

.miche-deco,
.tarte-deco,
.bretzel-deco,
.suweckla-deco,
.avoine-brun-g-deco,
.avoine-brun-d-deco,
.avoine-blanc-g-deco,
.avoine-blanc-d-deco,
.muffin-deco-d,
.pain-deco-g {
 position: relative;
}

.miche-deco:before {
 background: url(/wp-content/uploads/2026/07/miche-2.svg);
 position: absolute;
 width: 156px;
 height: 195px;
 display: block !important;
 top: 40%;
 left: -26%;
 z-index: 3;
 content: "" !important;
 background-size: contain;
}

.tarte-deco:after {
 content: "" !important;
 background: url(/wp-content/uploads/2026/07/tarte.svg);
 position: absolute;
 width: 170px;
 height: 105px;
 display: block !important;
 top: 50%;
 right: 0%;
 z-index: 3;
 background-size: contain;
}

.bretzel-deco:before {
 content: "" !important;
 background: url(/wp-content/uploads/2026/07/bretzel-1.svg);
 position: absolute;
 width: 140px;
 height: 175px;
 display: block !important;
 top: 70%;
 left: -20%;
 z-index: 3;
 background-size: contain;
}

.suweckla-deco:after {
 content: "" !important;
 background: url(/wp-content/uploads/2026/07/miches.svg);
 position: absolute;
 width: 130px;
 height: 126px;
 display: block !important;
 top: -1%;
 right: -15%;
 z-index: 3;
 background-size: contain;
}

.avoine-brun-g-deco:before {
 content: "" !important;
 background: url(/wp-content/uploads/2026/07/brin-avoine-2.svg);
 position: absolute;
 width: 180px;
 height: 155px;
 display: block !important;
 top: 50%;
 left: 0%;
 z-index: 3;
 background-size: contain;
}

.avoine-brun-d-deco:after {
 content: "" !important;
 background: url(/wp-content/uploads/2026/07/brin-avoine-2.svg);
 position: absolute;
 width: 180px;
 height: 155px;
 display: block !important;
 top: 50%;
 right: -1%;
 z-index: 3;
 background-size: contain;
 transform: scaleX(-1);
}

.avoine-blanc-g-deco:before {
 content: "" !important;
 background: url(/wp-content/uploads/2026/07/brin-avoine.svg);
 position: absolute;
 width: 180px;
 height: 155px;
 display: block !important;
 top: -1%;
 left: 0;
 z-index: 3;
 background-size: contain;
}

.avoine-blanc-d-deco:after {
 content: "" !important;
 background: url(/wp-content/uploads/2026/07/brin-avoine.svg);
 position: absolute;
 width: 180px;
 height: 155px;
 display: block !important;
 top: 50%;
 right: -6px;
 z-index: 3;
 background-size: contain;
}

/* FOND */

.fondolive {
 background: #7e8a57;
}
.fondblanc {
 background: #fff;
}
.fondsable {
 background: #f3ecd9;
}
.fondanis {
 background: #e1e55f;
}
.fondvertfonce {
 background: #2d4d4a;
}

/* HERO */

.hero {
 padding-top: 4%;
 padding-bottom: 1%;
 position: relative;
 overflow: hidden;
}

.cardeventail {
 list-style: none;
 padding: 0;
 margin: auto;
 width: min(750px, 75vw);
 height: clamp(300px, 42vw, 380px);
 position: relative;
 margin-top: -35px;
}

.cardeventail li {
 position: absolute;
 left: 50%;
 top: 50%;
 overflow: hidden;
 border-radius: clamp(24px, 3vw, 40px);
 transform-origin: 50% 90%;
 transition: transform 1800ms cubic-bezier(0.16, 1, 0.3, 1), opacity 600ms ease,
  box-shadow 600ms ease;
}

.cardeventail img,
.cardeventail video {
 width: 100%;
 height: 100%;
 max-width: none;
 object-fit: cover;
 display: block;
}

.cardeventail .cardcentre {
 width: clamp(160px, 36vw, 280px);
 height: clamp(260px, 43vw, 340px);
 z-index: 9;
 transform: translate(-50%, -50%) rotate(0deg) scale(1);
 box-shadow: 0 15px 60px #0000004a;
}

.cardeventail .cardgauche,
.cardeventail .carddroite {
 width: clamp(160px, 36vw, 280px);
 height: clamp(260px, 43vw, 275px);
 z-index: 1;
 opacity: 0;
 transform: translate(-50%, -50%) rotate(0deg);
 box-shadow: none;
}

.cardeventail.is-open .cardgauche {
 width: clamp(190px, 32vw, 235px);
 height: clamp(230px, 38vw, 275px);
 z-index: 2;
 opacity: 1;
 transform: translate(-150%, -46%) rotate(-9deg);
 box-shadow: 0 15px 60px #0000004a;
}

.cardeventail.is-open .cardcentre {
 z-index: 9;
 transform: translate(-50%, -56%) rotate(0deg);
}

.cardeventail.is-open .carddroite {
 width: clamp(190px, 32vw, 235px);
 height: clamp(230px, 38vw, 275px);
 z-index: 2;
 opacity: 1;
 transform: translate(50%, -46%) rotate(10deg);
 box-shadow: 0 15px 60px #0000004a;
}

/* ===== GALERIE EN GRID (1 grand + 2 petits) ===== */

.blockproimg {
 margin-right: 5%;
}

.galerie {
 list-style: none;
 margin: 0 0 24px 0;
 padding: 0;
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 12px;
}

.galerie li {
 overflow: hidden;
 border-radius: 14px;
}

.galerie li:first-child {
 grid-column: 1 / -1;
}

.galerie li img,
.galerie video {
 display: block;
 width: 100%;
 height: 100%;
 object-fit: cover;
}

.galerie li:first-child img {
 height: 250px;
}

.galerie li:not(:first-child) img {
 height: 180px;
}

/* ===== BLOC LIVRAISON ===== */

.block-livraison {
 position: relative;
 background: #f4f1de;
 border-radius: 16px;
 padding: 30px 24px 26px;
}

.block-livraison .fleche {
 position: absolute;
 top: 1px;
 left: -19%;
}

.block-livraison .fleche img {
 width: 120px;
 height: 55px;
 object-fit: contain;
 max-width: none;
}

/* TERM */

.be4-breadcrumb {
 box-sizing: border-box;
 font-size: 14px;
 line-height: 1.5;
 max-width: 1200px;
 padding: 0;
 width: 100%;
 margin: auto !important;
 margin-top: 20px !important;
}

.be4-breadcrumb__list {
 align-items: center;
 display: flex;
 flex-wrap: wrap;
 gap: 6px;
 list-style: none;
 margin: 0;
 padding: 0;
 justify-content: center !important;
}

h1.titreterm {
 max-width: 690px;
 margin: auto;
}

.boiteimages3 {
 list-style: none;
 padding: 0;
 margin: 0 !important;
 display: grid;
 grid-template-columns: 1fr;
 gap: 12px;
 position: relative;
}

.campaign-gallery-random .fl-module.fl-module-box {
 display: grid;
 gap: 12px;
 grid-template-columns: 1fr 1fr;
}

.boi-i3-1 {
 border-radius: 15px;
 overflow: hidden;
 height: 250px;
}

.boi-i3-2 {
 height: 180px;
 border-radius: 15px;
 overflow: hidden;
 position: relative;
}

.boi-i3-3 {
 height: 180px;
 border-radius: 15px;
 overflow: hidden;
 width: 100%;
}

.boiteimages3 img,
.boiteimages3 .fl-module-photo * {
 width: 100% !important;
 height: 100% !important;
 object-fit: cover;
}

.filariane {
 transform: scaleX(-1);
 min-width: 300px;
 padding: 20px 0px;
 margin-left: 0;
 max-width: max-content;
 padding-left: 50px;
 background: #2d4d4a;
 color: #e1e55f;
 position: relative;
}

.filariane .fl-module-content,
.filariane .lemodule {
 transform: scaleX(-1);
}

.filariane:after {
 width: 100%;
 right: -99%;
 position: absolute;
 background: #2d4d4a;
 height: 100%;
 top: 0;
}

strong.minititre {
 border: 1px solid #2d4d4a;
 font-size: 0.9em;
 padding: 10px 15px;
 margin-bottom: 10px;
 display: inline-block;
 border-radius: 30px;
 text-transform: uppercase;
}

/* PRESENTATION */

.contenu-presentation {
 color: #708381;
 font-size: 0.95em;
}

.presentationimgs,
.presentationimgs2 {
 list-style: none;
 padding: 0;
}

.presentationimgs {
 display: grid;
 grid-template-columns: 0.8fr 1.2fr;
 gap: 10px 30px;
 left: -30px;
 position: relative;
 margin-top: 35px;
}

.presentationimgs img,
.presentationimgs2 img {
 border-radius: 30px;
 position: relative;
}

.presentationimgs li:first-child {
 transform: matrix(0.99, 0.1, -0.1, 0.99, 0, 0);
}

.presentationimgs li:last-child {
 transform: matrix(1, -0.02, 0.02, 1, 0, 0);
}

.presentationimgs2 {
 display: grid;
 grid-auto-columns: 1fr;
 gap: 30px;
}

.presentationimgs2 li:first-child {
 transform: matrix(1, 0.03, -0.03, 1, 0, 0);
 width: 195px;
 height: 160px;
}

.presentationimgs2 li:last-child {
 transform: matrix(1, -0.07, 0.07, 1, 0, 0);
 width: 218px;
 height: 237px;
 right: -35px;
 position: relative;
}

.presentationimgs2 img {
 width: 100%;
 height: 100%;
 object-fit: cover;
}

/* SVG  */

.svg-specialites {
 width: 110%;
 height: auto;
 display: block;
 left: -4%;
 position: absolute;
 top: 15%;
 z-index: -1;
}

.demo-svg .pa-draw-path,
.demo-svg .draw-path {
 fill: none;
 stroke: #e1e55f;
 stroke-width: 51;
 stroke-linecap: round;
 stroke-linejoin: round;
}

/* CTA */

.banniere {
 display: grid;
 grid-template-rows: auto auto;
 max-width: 1280px;
 margin: 0 auto;
 background: #d6d451;
 border-radius: 40px;
 overflow: hidden;
 position: relative;
 z-index: 1;
 margin-top: -60px;
}

.bloc-titre-image {
 display: grid;
 grid-template-columns: 1.1fr 1fr;
 align-items: center;
 gap: 24px;
 padding: 32px 40px 24px;
}

.titre-contenu h3 {
 font-size: 3.2rem;
 line-height: 1;
 margin: 0 0 10px;
 text-transform: uppercase;
 font-family: "brushtones", sans-serif;
 color: #7e875e;
 font-weight: 400;
}

.titre-contenu h3 .ligne2 {
 color: #fff;
 display: block;
 position: relative;
}

.titre-contenu h3 .ligne2:after {
 content: "";
 background: url(/wp-content/uploads/2026/07/fleche-lacet-blanche.svg);
 width: 150px;
 height: 90px;
 position: absolute;
 background-size: contain;
 background-repeat: no-repeat;
 right: 3px;
 top: -30px;
}

.titre-contenu p {
 font-size: 1.4rem;
 line-height: 1.2em;
 margin: 0;
 max-width: 80%;
}

.titre-contenu {
 position: relative;
}

.image-wrap img {
 width: 100%;
 height: 220px;
 object-fit: cover;
 border-radius: 14px;
 display: block;
 max-width: max-content;
}

.bloc-contenu {
 display: grid;
 grid-template-columns: repeat(3, auto) 1fr;
 align-items: center;
 gap: 30px;
 padding: 20px 40px 30px;
 border-top: 1px solid rgba(0, 0, 0, 0.08);
 justify-items: end;
}

.avantage {
 display: flex;
 align-items: center;
 gap: 12px;
 border-right: 1px solid #fff;
 padding-right: 20px;
}

.virebordure {
 border: none;
}

.avantage .icone {
 width: 65px;
 height: 65px;
 background: #fff;
 border-radius: 50%;
 display: flex;
 align-items: center;
 justify-content: center;
 flex-shrink: 0;
}

.avantage .icone img {
 filter: brightness(0) saturate(100%) invert(57%) sepia(16%) saturate(686%)
  hue-rotate(33deg) brightness(87%) contrast(83%);
 width: 40px;
 height: auto;
 object-fit: contain;
}

.avantage span.texte {
 font-size: 1.2em;
 font-weight: 400;
 line-height: 1.2;
}

/* SPEC */

.fl-node-onugxpmf6c1e {
 padding-top: 7%;
}

.max1280 {
 max-width: 1280px;
 margin: auto;
 position: relative;
 z-index: 1;
 float: none !important;
}

.max1120 {
 max-width: 1180px;
 margin: auto;
 position: relative;
 z-index: 1;
 float: none !important;
}

.fl-node-z5l8y2dpg3qn {
 margin-top: 25px !important;
 margin-bottom: 25px !important;
}

.border30px {
 border-radius: 30px;
}

.titrebase :is(h1, h2, h3, h4, h5) {
 font-size: 4em;
 font-family: "brushtones", sans-serif;
 color: #7e875e;
 margin-top: 5px;
 line-height: 1.2em;
 font-weight: 200;
 margin-bottom: 0;
 position: relative;
 text-transform: uppercase;
}

.titrebase.text-blanc :is(h1, h2, h3, h4, h5) {
 color: #fff;
}

.titrebase hr {
 display: block;
 width: 95px;
 height: 33px;
 margin: auto;
 border: 0;
 background-image: var(--underline-svg);
 background-repeat: no-repeat;
 background-position: center;
 background-size: contain;
}

.titremini :is(h1, h2, h3, h4, h5) {
 font-family: "brushtones", sans-serif;
 font-size: 2em;
 margin-bottom: 0;
 margin-top: 0;
 line-height: 1.2em;
 font-weight: 200 !important;
 position: relative;
 color: #7e875e;
}

.titremini.text-blanc :is(h1, h2, h3, h4, h5) {
 color: #fff;
 text-transform: uppercase;
}

.titremini.text-blanc :is(h1, h2, h3, h4, h5) * {
 font-style: normal;
}

.titremini hr {
 display: block;
 width: 50px;
 height: 23px;
 margin: 0;
 border: 0;
 background-image: var(--underline-svg);
 background-repeat: no-repeat;
 background-position: center;
 background-size: contain;
}

.grostitre :is(h1, h2, h3, h4, h5) {
 font-size: 2.8em;
 margin-bottom: 20px;
 margin-top: 5px;
 line-height: 1.2em;
 font-weight: 200;
 position: relative;
}

.titrenormal :is(h1, h2, h3, h4, h5) {
 font-family: "brushtones", sans-serif;
 font-size: 2.6em;
 margin-top: 5px;
 margin-bottom: 5px;
 line-height: 1.2em;
 font-weight: 200;
 position: relative;
 color: #7e875e;
}

.titrenormal.rotate :is(h1, h2, h3, h4, h5) {
 transform: rotate(-1deg);
}

.titrenormal em {
 color: #e1e55f;
 font-style: normal;
}

.titreenorme :is(h1, h2, h3, h4, h5) {
 font-family: "brushtones", sans-serif;
 font-size: 12em;
 margin-top: 5px;
 margin-bottom: 0;
 line-height: 1.2em;
 font-weight: 400;
 position: relative;
 color: #e1e55f;
 text-transform: uppercase;
 top: 15px;
}

.CarouDecalage {
 overflow: hidden;
 margin-right: -30%;
}

.CarouDecalage .carou_rea {
}

.item {
 position: relative;
 margin: 10px;
 margin-bottom: 0;
 overflow: visible;
 bottom: 0;
 transition: all 0.6s ease;
 border-radius: 30px;
 opacity: 1;
}

.item:hover {
 bottom: 15px;
}

.item a {
 text-decoration: none;
}

.item:hover a h3 {
 color: #7e875e;
 text-decoration: none;
}

.infinite-scroll-container .item {
 margin-left: 0;
 margin-right: 0;
}

.infinite-scroll-posts-grid {
 gap: 1.5rem !important;
}

.CarouDecalage .slick-list,
.CarouDecalage .slick-track {
 padding-bottom: 15px;
 padding-top: 20px;
}

.item a:before {
 content: "";
 z-index: 1;
 cursor: pointer;
 position: absolute;
 top: 12px;
 right: 12px;
 width: 45px;
 height: 45px;
 border-radius: 50%;
 background: #dfe35e url(/wp-content/uploads/2026/07/fleche-diago.svg);
 display: flex;
 background-size: 25px;
 background-repeat: no-repeat;
 background-position: center;
 align-items: center;
 justify-content: center;
 box-shadow: 0 3px 8px rgba(0, 0, 0, 0.2);
 transition: transform 0.35s ease;
 transform: rotate(315deg);
}

.item:hover a:before {
 transform: rotate(360deg);
}

.item img {
 width: 100%;
 height: 100%;
 object-fit: cover;
}

.item .CadreActiviteImage {
 position: relative;
 height: 200px;
 cursor: pointer;
 overflow: hidden;
 border-radius: 15px;
 margin-bottom: 15px;
}

.item .cadrebtnActivite {
 margin-bottom: 10px;
 min-height: 110px;
 line-height: 1.2em;
 padding: 30px 40px;
 text-align: center;
 position: relative;
 background: #fff;
 margin-top: -60px;
 border-radius: 30px;
}

.item .cadrebtnActivite h3 {
 position: relative;
 transition: all 0.3s ease;
 padding-left: 0;
 line-height: 1.2;
 text-transform: uppercase;
 font-family: "brushtones", sans-serif;
 font-size: 1.5em;
 font-weight: 400;
 color: #e1e55f;
 margin: auto;
}

.item .cadrebtnActivite h3:before {
 display: none;
}

.item a .CadreActiviteImage img,
.item .CadreActiviteImage img {
 transition: all 0.3s ease;
}

.item a:hover .CadreActiviteImage img,
.item .CadreActiviteImage:hover img {
 transform: scale(1.07);
}

.item hr {
 display: block;
 width: 35px;
 height: 22px;
 margin: auto;
 border: 0;
 background-image: var(--underline-svg);
 background-repeat: no-repeat;
 background-position: center;
 background-size: contain;
}

ul.sous_realisations {
 display: flex;
 gap: 25px;
 list-style: none;
 justify-content: space-between;
 align-items: center;
 padding: 0;
}

.flextendances {
 display: flex;
 gap: 10px;
 justify-content: flex-end;
 margin-bottom: 0;
}

.flextendances div {
 background: #d6d451;
 width: 45px;
 height: 45px;
 display: flex;
 justify-content: center;
 align-items: center;
 cursor: pointer;
 border-radius: 50%;
 opacity: 1;
}

.flextendances div:hover {
 background: #2d4d4a;
}

.flextendances img {
 width: 30px;
 height: 17px;
}

.flextendances .prev-t img {
 transform: scaleX(-1);
}

.flextendances div:hover img {
 filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(7464%)
  hue-rotate(150deg) brightness(112%) contrast(115%);
}

/* FORM  */

.map {
 overflow: hidden;
 border-radius: 30px;
 box-shadow: 1px 4px 15px #00000029;
}

.fondvertfonce .ti-fade-container * {
 color: #fff !important;
}

.wpcf7-form {
 z-index: 1;
 padding: 20px;
 bottom: 0;
 transition: all 0.6s ease;
 background: rgb(126 138 87);
 border: 1px solid #ffffff27;
 border-radius: 15px;
 position: relative;
}

.flex-form {
 position: relative;
 display: flex;
 flex-wrap: wrap;
 gap: 10px 10px;
 z-index: 1;
 border-radius: 15px;
 position: relative;
 background-color: #fff;
 padding: 15px;
}

.flex-form a.btn {
 display: flex;
 justify-content: space-between;
}

.FormulaireWpFluide .wpcf7-not-valid-tip {
 font-size: 12px;
}

span.wpcf7-spinner {
 position: absolute;
}

.flex-form .full {
 position: relative;
 width: 100%;
}

.flex-form .half {
 position: relative;
 width: 48.5%;
}

.flex-form label {
 display: block;
 margin-bottom: 7px;
 font-size: 1em;
 font-weight: 500;
}

.flex-form p {
 margin: 0;
}

.flex-form select,
.flex-form
 input:not(
  :is(
    [type="button"],
    [type="submit"],
    [type="radio"],
    [type="checkbox"],
    [type="file"]
   )
 ) {
 height: 3rem;
}

input[type="checkbox"] {
 font-size: 20px;
 border-radius: 5px;
 min-width: 20px;
 border: 1px solid #c3c4c7;
 background: var(--color-white);
}

.flex-form
 :is(input, textarea, select):not(:is([type="submit"], [type="button"])) {
 color: #818181;
 background: var(--color-white);
 font-style: initial;
 font-family: sans-serif;
}

.flex-form select,
.flex-form textarea,
.flex-form
 input:not(
  :is(
    [type="button"],
    .flex-form [type="submit"],
    .flex-form [type="radio"],
    .flex-form [type="checkbox"],
    .flex-form[type="file"]
   )
 ) {
 width: 100%;
 font-size: 14px;
 line-height: 1;
 outline: none;
 font-weight: 100;
 box-sizing: border-box;
 padding: 0.7375rem 0;
 border: 1px solid #cccccc;
 border-radius: 10px;
 background: var(--color-white);
 padding-left: 15px;
 padding-right: 15px;
}

.flex-form .wpcf7-acceptance span.wpcf7-list-item-label {
 font-weight: 400;
 line-height: 1.3em;
}

.full h3,
.full h4 {
 font-size: 1.6em;
 font-style: normal;
 margin-bottom: 10px;
 margin-top: 0;
}

.full h3 strong,
.full h4 strong {
 font-weight: 600;
}

.full em {
 font-style: normal;
}

.wpcf7-acceptance input {
 width: 1em;
 height: 1em;
 margin-top: 0.25em;
 vertical-align: top;
 background-repeat: no-repeat;
 background-position: center;
 background-size: contain;
 border: 1px solid #00000040;
 -webkit-appearance: none;
 -moz-appearance: none;
 appearance: none;
 -webkit-print-color-adjust: exact;
 color-adjust: exact;
}

input#acceptance,
#condition2 input,
input[name="acceptance-284"] {
 font-size: 20px;
 border-radius: 5px;
 min-width: 20px;
 border: 1px solid #c3c4c7;
 background: var(--color-white);
}

input#acceptance:checked[type="checkbox"],
#condition2 input:checked[type="checkbox"],
input:checked[name="acceptance-284"] {
 background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23db1773' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e");
}

input#acceptance:checked,
input#acceptance:focus,
#condition2 input:focus,
input[name="acceptance-284"]:focus {
 background-color: #f0ece2;
 border-color: var(--color-white);
 border-color: #fcfbfa;
 outline: 0;
 box-shadow: 0 0 0 0.11rem #090000;
}

.wpcf7-acceptance span.wpcf7-list-item {
 margin: 0;
}

.wpcf7-acceptance span.wpcf7-list-item-label {
 text-transform: none;
}

input.wpcf7-form-control.wpcf7-submit.has-spinner {
 border: none;
 font-size: 1.1em;
 padding: 5px 25px;
 position: relative;
 text-decoration: none;
 z-index: 0;
 display: inline-flex;
 gap: 10px;
 transition: cubic-bezier(0.4, 0, 1, 1) 0.2s;
 font-weight: 300;
 margin: 5px 0;
 align-items: center;
 height: 40px;
 background: var(--color-brand);
 min-width: 220px;
 border-radius: 37px;
 color: #fff;
}

.wpcf7-acceptance label {
 font-size: 13px;
 display: flex;
 gap: 10px;
 align-items: center;
 justify-content: center;
 align-content: center;
 line-height: 1em;
}

/* FOOTER  */

footer.footerbg {
 position: relative;
 background: #f3ecd9;
 border: none;
 border-top: 1px solid #b8b7b2;
}

footer.footerbg h4 {
 font-family: "brushtones", sans-serif;
 color: #7e875e;
 margin: 0;
 font-size: 2em;
 padding-bottom: 10px;
 font-weight: 500;
}

footer.footerbg p {
 position: relative;
}

.main-footer {
 display: grid;
 grid-template-columns: 1.1fr 1fr 1fr 0.9fr;
 grid-template-areas: "logo nav reservation credits";
 gap: 0 40px;
 padding: 30px 0 20px 0;
 max-width: 1400px;
 margin: auto;
 align-items: start;
}

.main-footer div {
 border-right: 1px solid #7e875e47;
}

.main-footer div:last-child {
 border-right: none !important;
}

.main-footer ul {
 list-style: none;
 padding: 0;
 margin: 0;
}

.main-footer ul li {
 padding-bottom: 5px;
}

.footer-logo {
 grid-area: logo;
}

.footer-logo ul {
    list-style: none;
    margin: 0;
    display: flex;
    gap: 10px;
    padding-right: 20px;
}

.footer-logo ul li {
 display: flex;
 gap: 10px;
 align-items: flex-start;
}

.footer-logo ul li a,
footer a {
 color: #2d4d4a;
 transition: all 0.5s ease;
}

footer a:hover {
    color: #7e875e;
    text-decoration: none;
}

.footer-logo ul li .iconul {
 width: 12px;
 height: auto;
 filter: brightness(0) saturate(100%) invert(100%) sepia(0%) saturate(2692%)
  hue-rotate(317deg) brightness(110%) contrast(103%);
 margin-top: 3px;
}

.footer-nav {
 grid-area: nav;
}

.footer-reservation {
 grid-area: reservation;
}

.footer-credits {
 grid-area: credits;
}

.footer-credits ul {
 margin: 0;
}

.main-footer span strong {
 font-size: 1.2em;
}

.footer-credits .gtranslate_wrapper {
 margin-top: 5px;
}

.flexbas {
 padding: 20px 0;
 border: none;
 border-top: 1px solid #b8b7b2;
}

.flexbas .container ul {
 list-style: none;
 padding: 0;
 margin: 0;
 display: flex;
 gap: 10px;
 justify-content: space-between;
}

ul.reseaux_sociaux {
 display: flex;
 flex-direction: row;
 gap: 7px;
 align-content: center;
 align-items: center;
}

ul.reseaux_sociaux img {
 width: 25px;
 height: auto;
}

.footer-logo ul li:last-child {
 display: flex;
 flex-direction: column;
}
