@import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Oxygen:wght@700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap');
:root {
    --couleur_noir : #2D2D2D;
    --couleur_rouge : #FC675B;
    --couleur_vert : #36C1B3;
    --wysiwyg-margin-elts: 22px;
}

* { border:0; margin:0; padding:0; list-style:none;  outline:none; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box;}
article, aside, details, figcaption, figure, footer, header, menu, nav, section, main { display:block; }



/*--------- [ STYLAGE DES PAGES ] ---------*/
.scroll_toB { position: absolute; left:0; bottom:0; line-height: 0; transition: all 0.3s ease; }
.scroll_toT { transition: all 0.3s ease; text-align: right; position: sticky; top: 75px; }
.scroll_toB:hover, .scroll_toT:hover { opacity: 0.8;}
.scroll_toB span, .scroll_toT span { display: none}
@media all and (max-width:767px) {
    .scroll_toT { top: 165px; }
}

.bg-deco { position: absolute; z-index:2 }
.bg-deco img { height: auto}
@media all and (max-width:1200px) {
    .bg-deco { position: inherit; right: inherit; bottom: inherit; text-align: center; padding-top: 20px}
}
@media all and (max-width:767px) { 
    .bg-deco img  { max-height: 225px; }
}

.conteneur_bg { padding: 0 44px; position: relative;  margin-bottom: 52px }
.conteneur_bg[class*="bg-active-"]{ padding-top: 52px; padding-bottom: 52px}
.conteneur_bg.bg-active-gray { background: #F9F9F9; }
.conteneur_bg.bg-active-green { background: rgba(54, 193, 179, 0.05);}
.conteneur_bg.bg-active-red { background: rgba(252, 103, 91, 0.05);}
.cadre_interne { background:#F9F9F9 ; padding: 40px 24px; margin: 36px -24px 0}
.cadre_interne *:last-child { margin-bottom: 0 }
.conteneur_bg[class*="bg-active-"] .cadre_interne { background: #fff}

.bloc-banniere { overflow: hidden}
.bloc-banniere .h1 { color:var(--couleur_rouge); max-width: 500px; padding-top: 125px; }
.bloc-banniere .wysiwyg { font-size: 25px; font-weight: 300; max-width: 360px}
.bloc-banniere .wysiwyg h4 { font-size: 1.8rem;   margin-bottom: var(--wysiwyg-margin-elts); overflow: hidden}
.bloc-banniere .wysiwyg h4 img {  float: left}
.bloc-banniere .wysiwyg h4:last-child { margin-bottom: 0}
.bloc-banniere .center_c { position: relative; z-index: 5; padding-bottom: 12rem; /* min-height:100vh; */ }
.bloc-banniere .conteneur_bg { padding-top: 0px !important; padding-bottom: 0 !important;}
.bloc-banniere .bg { position: absolute; }
.bloc-banniere .bg img { height: auto !important;}
.bloc-banniere .wysiwyg:after, .bloc-texte .wysiwyg h1:after { content:""; display: block; width: 145px; height: 17px; background:url(../images/deco-ligne.svg) no-repeat;margin-top: 34px}
.bloc-texte .wysiwyg h1:after { margin-top: 25px}
.bloc-banniere .wysiwyg h4 svg, .bloc-banniere .wysiwyg h4 img, .fpartenaires img { width: auto; }
#main  > .wk-bloc-texte:first-of-type  { padding-top: 95px }
#main  > .wk-bloc-texte:first-of-type h1 { color:var(--couleur_rouge)}
#main  > .wk-bloc-texte:first-of-type .conteneur_bg[class*="bg-active-"] { padding-bottom: 0}
@media all and (max-width:767px) {
    .bloc-banniere .bg { position: inherit; left:inherit !important; right: inherit !important; top:inherit !important;}
    .bloc-banniere .wysiwyg, .bloc-banniere .wysiwyg h4 { font-size: 15px}
    .bloc-banniere .wysiwyg br { display: none}
    .bloc-banniere .h1, #main  > .wk-bloc-texte:first-of-type  { padding-top: 10px}
    .bloc-banniere .center_c { min-height: 0; padding-bottom: 0;}
    .bloc-banniere .scroll_toB { display: none}
}
/*
@media all and (min-height:950px) {
    .bloc-banniere .center_c { min-height: 0}
    .bloc-banniere .scroll_toB { display: none}
}*/



.bloc-repeat-left-right .repeater { padding-top: 10px}
.bloc-repeat-left-right .repeater > div  {  margin-bottom: 46px; display: flex; padding: 28px 0; position: relative  }
.bloc-repeat-left-right .repeater > div:last-child { margin-bottom: 0}
.bloc-repeat-left-right .repeater > div:before { content: ""; background: #f9f9f9; position: absolute; top:0; left:115px; right: -25px; bottom: 0}
.bloc-repeat-left-right [class*="bg-active-"] .repeater > div:before { background: #fff}
.bloc-repeat-left-right .repeater .visuel { position: relative; z-index: 10; padding: 23px 0 0 23px}
.bloc-repeat-left-right .repeater .visuel:before { content:""; width: 145px; height: 145px; background: var(--couleur_rouge); position: absolute; top:0; left:0;}
.bloc-repeat-left-right .repeater .visuel > div { width: 217px; height: 217px; overflow: hidden; position: relative; z-index: 2 }
.bloc-repeat-left-right .repeater .visuel img { width: 100%; height: 100%; object-fit: cover; object-position: center; display: block;  }
.bloc-repeat-left-right .repeater .wysiwyg {   position: relative; z-index: 10; padding: 36px 0 0 35px; flex: 1; }
.bloc-repeat-left-right .repeater > div:nth-child(even):before { left:-25px; right: 115px }
.bloc-repeat-left-right .repeater > div:nth-child(even) .visuel { order: 2; padding: 23px 23px 0 0}
.bloc-repeat-left-right .repeater > div:nth-child(even) .visuel:before { left: inherit; right: 0 }
.bloc-repeat-left-right .repeater > div:nth-child(even) .wysiwyg {  padding: 36px 35px 0 0 }
.bloc-repeat-left-right .repeater > div.green .visuel:before { background: var(--couleur_vert);}
.bloc-repeat-left-right .repeater > div.green .wysiwyg h3 { color:var(--couleur_vert)}
.bloc-actualites .repeater { margin-bottom: 50px}
.bloc-actualites .repeater .visuel > div { width: 175px; height: 175px; }
.bloc-actualites .repeater > div:nth-child(even):before { left:115px; right: -25px }
.bloc-actualites .repeater > div:nth-child(even) .visuel { order: 0; padding: 23px 0 0 23px}
.bloc-actualites .repeater > div:nth-child(even) .visuel:before { left: 0; right: inherit }
.bloc-actualites .wysiwyg { padding:36px 0 0 35px !important; }
.bloc-actualites .wysiwyg h3 { color:var(--couleur_rouge) !important; margin-bottom: 15px !important;}
.bloc-actualites .btn-primary { position: absolute; right: -25px; bottom: 0}
.bloc-actualites .date { font-size: 14px; font-weight: 500; padding:15px 0 5px}
.bloc-actualites .excerpt { padding-bottom: 25px}
@media all and (max-width:767px) {
    .bloc-repeat-left-right .repeater .visuel { padding: 23px 0 0 23px !important;}
    .bloc-repeat-left-right .repeater .visuel:before { left:0 !important; right: inherit !important;}
    .bloc-repeat-left-right .repeater > div { display: block; padding: 0 !important;}
    .bloc-repeat-left-right .repeater > div:before {  left:0 !important; right: 0 !important; top:145px !important;}
    .bloc-repeat-left-right .repeater .wysiwyg { padding: 25px 25px 5px 25px !important;  }
    .bloc-actualites .wysiwyg { padding-bottom: 35px !important;}
    .bloc-actualites .btn-primary { right: 0}
}


.bloc-steps .repeater > div { background: var(--couleur_gris); margin:0 0 23px 18px; padding: 30px 30px 8px 80px; position: relative}
.bloc-steps [class*="bg-active-"] .repeater > div { background: #fff}
.bloc-steps .repeater > div:last-child { margin-bottom: 0}
.bloc-steps .num { position: absolute; top:16px; left:-18px; background:url(../images/bg-step.svg) no-repeat left bottom; width: 51px; height: 49px; display: block; font-size: 3rem; font-family: "Oxygen", sans-serif; color:#fff; text-align: center; font-weight: 700; line-height: 44px; }
.bloc-steps .link-active {padding-bottom: 35px !important;}
.bloc-steps .link { position: absolute; right: 0; bottom: 0}
@media all and (max-width:767px) {
    .bloc-steps .num { font-size: 18px;  width: 40px;  height: 35px; line-height: 34px}
    .bloc-steps .repeater > div { padding-left: 40px}
}

.bloc-pieces .conteneur_bg.top { background: var(--couleur_rouge); margin-bottom: -126px; padding-bottom: 126px}
.bloc-pieces .conteneur_bg.top .ct { display: flex; align-items: center; padding: 48px 0 62px}
.bloc-pieces .conteneur_bg.top h2 { color:#fff; padding-left: 30px; margin-bottom: 0}
.bloc-pieces .conteneur_bg.top .logo { line-height: 0; padding-top: 30px}
.bloc-pieces .fake-select { position: relative; width:100%; margin-bottom: 60px }
.bloc-pieces .fs-toggle {    width: 100%; text-align: left; padding: 20px 30px;line-height: 1.2; font-size: 20px;    background: #fff; cursor: pointer; position: relative}
.bloc-pieces .fs-caret { position: absolute; right: 0px; top:0; bottom:0; width: 64px; background: var(--couleur_vert); display: flex; align-items: center; justify-content: center }
.bloc-pieces .fs-options {    position: absolute; left: 0; right: 0; margin: 6px 0 0; padding: 6px 0; list-style: none;    border: 1px solid #ddd; border-radius: 8px; background: #fff; display: none; z-index: 20;}
.bloc-pieces .fake-select.is-open .fs-options { display: block; }
.bloc-pieces .fs-options li a {    display: block; padding: 8px 12px; color: #333; text-decoration: none;}
.bloc-pieces .fs-options li a:hover { background: #f3f3f3; }
.bloc-pieces .fake-select.is-open .fs-caret { transform: rotate(180deg)}
.bloc-pieces .repeater { display: flex; flex-wrap: wrap}
.bloc-pieces .repeater > div { flex:0 0 33.33%;}
.bloc-pieces .repeater a { display: block; padding-bottom: 100%; position: relative; background-size: cover; background-position: center}
.bloc-pieces .repeater a span.label { position: absolute; bottom:0; left:0; right: 0; padding: 15px 20px;}
.bloc-pieces .repeater .btn-tertiary { display: block; font-size: 1.8rem}
.bloc-pieces .repeater .btn-tertiary:hover { padding: 11px 55px 11px 23px; background-position: right 23px  center;  }
.bloc-pieces .repeater a:before { transition: all 0.2s ease; opacity: 0; content:""; background: linear-gradient(0deg, rgba(252, 103, 91, 0.40) 0%, rgba(252, 103, 91, 0.40) 100%); position: absolute; top:0; left:0; right: 0; bottom:0; }
.bloc-pieces .repeater a:hover:before { opacity: 1}
@media all and (max-width:767px) {
    .bloc-pieces .conteneur_bg.top { margin-bottom: 0; padding-bottom:25px}
    .bloc-pieces .conteneur_bg.top .ct { display: block; padding-top: 25px}
    .bloc-pieces .conteneur_bg.top .logo { padding: 0 0 5px}
    .bloc-pieces .conteneur_bg.top .logo img { height: 80px}
    .bloc-pieces .conteneur_bg.top h2 { padding: 0}
    .bloc-pieces .conteneur_bg.top h2 br { display: none}
    .bloc-pieces .conteneur_bg.top .ct { padding-bottom: 20px}
    .bloc-pieces .fs-toggle { font-size: 15px; padding: 20px}
    .bloc-pieces .fake-select { margin-bottom: 0}
    .bloc-pieces .fs-options li a { padding: 6px 12px}
}

.bloc-cta .conteneur_bg { background: var(--couleur_rouge); }
.bloc-cta .flex { display: flex; align-items: center; gap:20px}
.bloc-cta h2 { color:#fff; margin-bottom: 0; }
.bloc-cta a { white-space: nowrap; color:var(--couleur_rouge)}
@media all and (max-width:767px) {
    .bloc-cta .flex { display: block}
    .bloc-cta .flex > div:nth-child(2) { text-align: right}
    .bloc-cta h2 { margin-bottom: 1.5rem;}
}

.bloc-colonnes .repeater { display: flex; gap:15px; flex-wrap: wrap; padding:26px 0 50px}
.bloc-colonnes .repeater > div { background: #f9f9f9; flex:0 0 calc(33.33% - 15px); padding: 23px  }
.bloc-colonnes .repeater.twocol > div { flex:0 0 calc(50% - 15px);  }
.bloc-colonnes [class*="bg-active-"] .repeater > div { background: #fff}
@media all and (max-width:767px) {
    .bloc-colonnes .repeater {flex-direction: column; padding-bottom: 26px}

}


/*--------- [ AIDES ET CATEGORIES] ---------*/
.aides_cat { display: flex; flex-wrap: wrap; margin: -12px; padding: 20px 0 0}
.aides_cat > div { padding: 12px; /* flex:0 0 38%; */ flex: 0 0 33.3333%; }
.aides_cat > div:nth-child(2), .aides_cat > div:nth-child(3),.aides_cat > div:nth-child(6), .aides_cat > div:nth-child(7) { flex: 0 0 33.3333%; }
.aides_cat .bg { background: #fff; height: 100%}
.aides_cat h3, .pcategorie .h3 { background: var(--couleur_vert); color:#fff; /* min-height: 56px; font-size: 22px; */ min-height: 45px; font-size: 19px; display: flex; align-items: center; padding: 5px 19px; margin-bottom: 0; line-height: 1.3; }
.aides_cat ul { font-size: 17px; padding: 20px 18px}
.aides_cat ul li { padding: 4px 0}
.aides_cat ul li a:hover { font-weight: bold}
.aides-search form  { display: flex  }
.aides-search input { height: 75px; display: flex; align-items: center; flex: 1; margin-bottom: 0 !important;}
.aides-search button { background: var(--couleur_rouge); display: flex; flex:0 0 75px; height: 75px; align-items: center; justify-content: center; transition: all 0.2s ease}
.aides-search button span { display: none}
.aides-search button:hover { background: var(--couleur_vert)}
@media all and (max-width:767px) {
    .aides_cat { display: block; }
    .aides_cat ul { font-size: 15px}
    .aides_cat h3 { min-height: 44px}
    .aides-search input { height: 55px; font-size: 14px !important; padding: 0 13px !important;}
    .aides-search button { flex:0 0 55px; height: 55px}
    .aides-search button svg { width: 26px}
}
.pcategorie h1 { color:var(--couleur_rouge); padding-top: 103px}
.pcategorie h1:after { content:""; display: block; width: 145px; height: 17px; background:url(../images/deco-ligne.svg) no-repeat;margin-top: 24px}
.pcategorie .h3 { height: 100%; }
.pcategorie .bg_blanc {  margin: 0 -25px 55px; padding: 25px; background: #fff }
.pcategorie .list_cat { display: flex; gap: 10px 10px; /* flex-wrap: wrap; */ padding: 20px 0 0; }
.pcategorie .list_cat .h3:hover { background: var(--couleur_rouge)}
.pcategorie .list_cat li { position: relative;}
.pcategorie .list_cat .hover {padding: 2rem; right: 0; max-height: 400px; box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px; min-width: 230px; z-index: 10;  overflow: auto; position: absolute; top: 99%; left:0; background: #fff;  border-radius: 0 0 5px 5px; opacity: 0; visibility: hidden; transition: all 0.2s ease; }
.pcategorie .list_cat > li:hover .hover { opacity: 1; visibility: visible}
.pcategorie .list_cat .hover p { padding: 3px 0; font-size: 15px;}
.pcategorie .list_cat .hover p label:hover { color:var(--couleur_vert)}
.pcategorie .wysiwyg.intro h2, .list_prod .infos h3 { font-size: 1.8rem; line-height: 2.2rem; color:var(--couleur_rouge); margin:0 0 10px; padding-top: 5px  }
.pcategorie .wysiwyg.intro h2:first-child { padding-top:0}
.pcategorie .video a { background: var(--couleur_noir); display: inline-flex; padding: 10px 17px 10px 27px; color:#fff; font-size: 15px; align-items: center}
.pcategorie .video a svg { margin-left: 19px}
.pcategorie .video a:hover { background: var(--couleur_vert)}
.list_prod_carre { margin: 0 -25px; gap:20px; display: flex; flex-wrap: wrap  }
.list_prod_carre > div { flex:0 0 calc(50% - 10px)  }
.list_prod_carre  .un_produit { background: #fff; padding: 25px 25px 0 25px; display: flex; flex-direction: column; height: 100%}
.list_prod_carre  .visuel { width: 100%; height: 150px; overflow: hidden; margin-bottom: 19px}
.list_prod_carre  .visuel img { width: 100%;    height: 100%;    object-fit: cover;      object-position: center;     display: block;  }
.list_prod_carre .nom { font-weight: 700; padding-bottom: 10px}
.list_prod_carre .pres { padding-bottom: 20px}
.list_prod_carre .btn { margin-top: auto; text-align: right; margin-right: -25px}
.nbr_prod { padding-bottom: 40px   }
.nbr_prod span { color:var(--couleur_rouge); font-weight: 700; }
.list_prod > div { margin:0 -25px 61px  }
.list_prod > div:last-child { margin-bottom: 0}
.list_prod  .un_produit { background:#fff}
.list_prod  .un_produit .h3 { background: var(--couleur_rouge); padding-left: 25px; padding-right: 25px}
.list_prod .top { display: flex; padding: 25px  }
.list_prod .top > div:first-child { padding-right: 25px; flex:1}
.list_prod .top h2 { color:var(--couleur_noir)  }
.list_prod .top .check li { background: url("../images/picto-check.svg") no-repeat; font-size: 14px; color:var(--couleur_vert); padding:5px 0 5px 40px; margin-bottom: 10px }
.list_prod  .visuel { width: 258px; height: 285px; overflow: hidden; margin-bottom: 19px; position: relative}
.list_prod  .visuel img {  transition:all 0.2s ease;width: 100%;    height: 100%;    object-fit: cover;      object-position: center;     display: block;  }
.list_prod  .visuel .zoom { position: absolute; right: 0; bottom:0; width: 36px; height: 36px; display: flex; align-items: center; justify-content: center; background: var(--couleur_rouge)}
.list_prod  .visuel .zoom span { display: none }
.list_prod  .visuel .zoom svg { width: 21px}
.list_prod  .visuel a:hover img { opacity: 0.8}
.list_prod  .visuel a:hover .zoom { background: var(--couleur_vert); transition:all 0.2s ease;}
.list_prod .infos { font-size: 16px; padding:0 25px 20px}
.list_prod .infos ul { padding: 0 0 20px 20px }
.list_prod .infos li { list-style: disc; margin-bottom: 2px}
.list_prod .infos p { padding-bottom: 20px}
.fiche_download { position: relative;  }
.fiche_download .visuel { position: absolute; top:-150px; right: -120px}
.fiche_download button, .fiche_download input[type=submit] { font-size: 16px; color:#fff!important }
.fiche_download .wysiwyg { padding: 30px 0 10px}
.fiche_download .wysiwyg p { max-width: 350px}
@media all and (max-width:1200px) {
    .fiche_download .visuel { right: -60px}
}
@media all and (max-width:800px) {
    .fiche_download .visuel { display: none; }
    .fiche_download .wysiwyg { padding-top: 0}
    .fiche_download .wysiwyg p { max-width: 100%}
}
@media all and (max-width:767px) {
    .pcategorie h1 { padding-top: 0}
    .pcategorie .list_cat { flex-direction: column; }
    .pcategorie .h3 { min-height: 0; padding: 5px 10px; font-size: 16px; }
    .list_prod > div { margin: 0 0 40px}
    .list_prod .top { display: block}
    .list_prod .visuel { margin: 25px 0 0; width: 200px; height: 200px}
}
@media all and (max-width:550px) {
    .pcategorie .bg_blanc { margin-bottom: 25px}
    .list_prod_carre { margin: 0}
    .list_prod_carre > div { flex:0 0 100%}
}


/*--------- [ ACTUALITES] ---------*/
#single_blog .head { display: flex; justify-content: space-between; gap:10px; padding-bottom: 20px; flex-wrap: wrap}
#single_blog .head.bottom { padding-top: 20px }
#single_blog .metas { font-family: "Oxygen", sans-serif; font-size: 15px; display: flex; flex-wrap: wrap; font-weight: 700; align-items: center }
#single_blog .metas > div:before { content:"|"; color:var(--couleur_rouge); margin: 0 5px}
#single_blog .metas > div:first-child:before { display: none;}
#single_blog .social .maxsocial > span:last-child { margin-right: 0 !important;}
#single_blog .social .maxsocial a { border-radius: 5px}
#single_blog .social .maxsocial .mb-social:hover .mb-icon-wrapper { display: inline-block !important;}
#single_blog .social .maxsocial .mb-social:hover .mb-label { display: none !important;}
#single_blog .banniere { margin: 0 -15px}
#single_blog .wysiwyg { padding-top: 20px;}
#single_blog .wysiwyg p:has(img) { margin-left: -15px; margin-right: -15px}
#single_blog .wysiwyg:after { content:""; display: block; width: 100%; height: 17px; background:url(../images/deco-ligne-large.svg) no-repeat;margin-top: 34px}


/*--------- [ CONTACT] ---------*/
.tpl_contact .bloc-banniere .center_c { min-height: 0; padding-bottom: 0; }
.tpl_contact .bloc-banniere .scroll_toB { display: none}
.form_contact .text { font-size: 25px; max-width: 330px; padding-bottom: 40px}
.form_contact .text strong { font-weight: 700}
.form_contact .ct .col2 { display: flex; flex-wrap: wrap; gap:46px; }
.form_contact .ct .col2 > div { flex:0 0 calc(50% - 23px);   }
.form_contact .ct label { font-weight: bold; display: block; padding-bottom: 10px}
.form_contact input, .form_contact textarea, .form_contact select { border: 1px solid #C6C6C6; border-radius:3px; padding: 11px 15px !important; margin-bottom: 25px !important; }
.form_contact textarea { height: 124px}
.contact_cta  { background: var(--couleur_rouge); margin: 70px -15px 0; color:#fff; padding: 33px; position: relative}
.contact_cta .wysiwyg { padding-right: 200px;}
.contact_cta .wysiwyg h2 { color:#fff}
.contact_cta p { font-size: 22px; font-weight: 300}
.contact_cta p strong, .contact_cta p a { background:#fff; color:var(--couleur_noir); padding: 2px 10px; margin-left: 8px; font-weight: bold; white-space: nowrap }
.contact_cta .visuel { position: absolute; top:-25px; right: 20px}
@media all and (max-width:767px) {
    .form_contact .ct .col2 { display: block}
    .contact_cta .wysiwyg { padding-right: 0}
    .contact_cta .visuel { display: none}
    .contact_cta p strong, .contact_cta p a { margin: 10px 0 0 0; display: inline-block}
}

/*--------- [ FICHES RESSOURCES] ---------*/
.tpl_ressources .repeat { padding-top:60px  }
.tpl_ressources .repeat h3 { background: var(--couleur_vert); color:#fff; margin: 0 0 20px; padding: 15px 21px;  }
.tpl_ressources .repeat > div { padding-bottom: 40px }
.tpl_ressources .repeat ul li { margin-bottom: 10px; font-size: 1.7rem; min-height: 42px; align-items: center; background: #fff; display: flex; justify-content: space-between }
/* .tpl_ressources .repeat ul li.titre-interne { background: none; } */
.tpl_ressources .repeat ul li span:nth-child(1) { flex:1; padding:0 23px}
.tpl_ressources .repeat ul li .bouton { flex:0 0 182px; text-align: right }
.tpl_ressources .repeat ul li .bouton a { font-size: 1.8rem}
.tpl_ressources .repeat .accordion .accordion-group { flex-direction: column; }
.tpl_ressources .repeat .accordion .accordion-title { position: relative; background: none; font-size: 2rem; line-height: 2.2rem; font-weight: 700; padding: 15px 40px 15px 23px; align-self: flex-start; text-align: left; width: 100%; }
.tpl_ressources .repeat .accordion .accordion-content { display: none; width: 100%; }
.tpl_ressources .repeat .accordion .accordion-title::before, .tpl_ressources .repeat .accordion .accordion-title::after { content: ""; position: absolute; top: 50%; background: var(--couleur_rouge); translate: 0 -50%; transition: all 0.3s ease; }
.tpl_ressources .repeat .accordion .accordion-title::after { right: 18px; width: 4px; height: 28px; }
.tpl_ressources .repeat .accordion .accordion-title::before { right: 6px; width: 28px; height: 4px; }
.tpl_ressources .repeat .accordion .accordion-title.open::after { height: 0; }
@media all and (max-width:767px) {
    .tpl_ressources .repeat ul li:not(.accordion-group) { flex-direction: column; padding: 15px 0; gap: 10px; }
    .tpl_ressources .repeat ul li:not(.accordion-group) span:nth-child(1) { align-self: flex-start; }
    .tpl_ressources .repeat ul li .bouton { flex: auto; }
}

/*--------- [ TELECONSEIL] ---------*/
.teleconseil .conteneur_bg { background: var(--couleur_rouge);  }
.teleconseil .ct {  padding: 0 0 50px }
.teleconseil .logo { text-align: center; /* margin-bottom: -70px */}
.teleconseil .logo img { position:relative; translate: 0 -50%; /* top: -110px; */}
.teleconseil .wysiwyg { color:#fff; text-align: center; padding-bottom: 20px}
.teleconseil .choice { display: flex; gap:20px; text-align: center}
.teleconseil .choice > div { flex:0 0 calc(50% - 10px); background: #fff; padding:27px  }
.teleconseil .choice a { font-size: 25px; color:#fff; background: var(--couleur_vert); font-weight: 600; display: block; text-align: center; padding: 9px 10px; margin-bottom: 15px;}
.teleconseil .choice a:hover { background: var(--couleur_rouge)}
.teleconseil .aide { color:var(--couleur_vert); padding:10px 0 20px }
@media all and (max-width:767px) {
    .teleconseil { margin-top: 100px !important;}
    .teleconseil .choice { display: block}
    .teleconseil .choice > div { margin-bottom: 20px;}
    .teleconseil .choice > div:last-child { margin-bottom: 0;}
}

/*--------- [ ACTUALITES] ---------*/
.wk-list-nav { background: #fff; margin: 0 -25px; padding: 15px 25px}
.wk-list-nav ul { display: flex; flex-wrap: wrap; margin: 7px -7px 10px;}
.wk-list-nav ul li { padding: 7px;}
.wk-list-nav a { background: #DADADA; color:#fff; font-weight: 700; min-height: 40px; font-size: 19px; display: flex; align-items: center; padding: 5px 19px; margin-bottom: 0}
.wk-list-nav a:hover, .wk-list-nav .current-cat a { background: var(--couleur_vert); color:#fff }
.pagination { overflow: hidden}
.pagination .pagination__prev { float:left}
.pagination .pagination__next { float:right}
.pagination a { color:var(--couleur_vert); font-weight: 700; font-size: 16px}
.pagination a:hover { color:var(--couleur_rouge)}
@media all and (max-width:767px) {
    .pindex_actu .bloc-banniere .bg img { height: 250px !important;  }
    .wk-list-nav ul { margin: 7px -4px 10px}
    .wk-list-nav ul li { padding: 4px}
    .wk-list-nav a {        min-height: 44px;   font-size: 15px;  padding: 5px 13px   }
}



    /*--------- [ STYLAGE DE BASE ] ---------*/

:focus-visible {
    outline: 2px solid #0073e6; /* contour bleu visible */
    outline-offset: 3px;
    border-radius: 4px;
}


/* Texte + Wysiwyg */
a {  color:var(--couleur_noir);text-decoration:none; transition:all 0.3s ease;}
a:hover { color:var(--couleur_noir); }
h1, h2, h3, h4, h5, .h1, .h2, .h3  { font-weight: 700;  font-family: "Oxygen", sans-serif; }
h1, h2, .h1, .h2 {     font-size: 4.5rem;    line-height: 5rem; margin-bottom:2.5rem; color:var(--couleur_vert)  }
h3, .h3 { font-size: 2.5rem; line-height:3rem; margin-bottom:2.5rem; color:var(--couleur_rouge)}
h4, .h4 { font-size: 2rem; line-height: 2.2rem  }
h3 em { font-style: italic; font-weight: normal; font-size: 18px; display: block; line-height: 20px; padding-top: 3px}

.wysiwyg { overflow-wrap: break-word;  }
.wysiwyg ul li { list-style: disc}
.wysiwyg ol li {list-style-type:decimal}
.wysiwyg hr {   clear: both;}
.wysiwyg img { display: block; max-width: 100%; height: auto}
.wysiwyg figcaption { padding-top:0.5rem; font-style: italic}
.wysiwyg blockquote{ font-style: italic  }
.aligncenter, div.aligncenter, a img.aligncenter{    display: block;    margin-left:auto; margin-right: auto}
.alignright, a img.alignright, .wp-caption.alignright   {    float:right;    }
.alignleft, a img.alignleft, .wp-caption.alignleft {    float: left;    }
.wysiwyg p, .wysiwyg ul, .wysiwyg ol   {  margin-bottom:var(--wysiwyg-margin-elts);}
.wysiwyg ul, .wysiwyg ol  {  margin-left:var(--wysiwyg-margin-elts);}
.wysiwyg a { text-decoration: underline}
.alignright, a img.alignright, .wp-caption.alignright { margin-left:calc(var(--wysiwyg-margin-elts) + 0.5rem);}
.alignleft, a img.alignleft, .wp-caption.alignleft {    margin-right:calc(var(--wysiwyg-margin-elts) + 0.5rem);}
img { max-width: 100%}
.txt_center { text-align: center}
@media all and (max-width:767px) {
    h1, h2, .h1, .h2 {     font-size: 2.5rem;    line-height: 3.5rem; margin-bottom:2.5rem; color:var(--couleur_vert)  }
    h3, .h3 { font-size: 2rem; line-height:2.5rem; margin-bottom:1.3rem; color:var(--couleur_rouge)}
    h4, .h4 { font-size: 1.7rem; line-height: 2.3rem  }
    h1 br, h2 br, h3 br, h4 br, h5 br, .h1 br, .h2 br, .h3 br { display: none}
}


/* Boutons */
[class^="btn-"], [class*="wpcf7-btn-"] input { font-family: "Open Sans", sans-serif; text-decoration: none !important; padding: 11px 23px; /* padding: 11px 55px 11px 23px; */ font-size: 2rem;  font-weight: 600; line-height: 2rem;  display:inline-block; max-width: 100%; text-align: center; transition: all  0.3s ease; color:#fff  }
[class*="wpcf7-btn-"] { text-align: center}
[class^="btn-"]:hover { background-position: right -50px  top -50px; padding-left: 45px; padding-right: 45px; color:#fff !important; }
.btn-primary,  .wpcf7-btn-primary input {  background-color: var(--couleur_rouge);  }
.btn-secondary,  .wpcf7-btn-secondary input {  background: url("../images/arrow-white-corner.svg") no-repeat right 23px center var(--couleur_vert); padding: 11px 55px 11px 23px; }
.btn-tertiary,  .wpcf7-btn-tertiary input {   background: url("../images/arrow-red-corner.svg") no-repeat right 23px center; background-color:#fff; color:var(--couleur_noir); padding: 11px 55px 11px 23px;}
.btn-tertiary:hover {   color:var(--couleur_noir) !important; }
@media all and (max-width:767px) {
    [class^="btn-"], [class*="wpcf7-btn-"] input { font-size: 16px}
}


/* Formulaires */
label, input[type=submit], button { cursor:pointer; -webkit-appearance:none; }
input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):not([type="submit"]), textarea, select  { font-size: 16px; vertical-align:middle;  background:#fff; width: 100%; padding:18px 29px; margin-bottom: 14px; }
input[type="file"] { border:0 !important;}
textarea {  resize:none;}
inpuT[type="checkbox"], input[type="radio"] { margin-right: 0.6rem; position: relative; top:2px;}
button[type=submit] { color:#fff !important; white-space: nowrap}
.moove-gdpr-cookie-notice button { color:#ffff !important;}
textarea {  resize:none;}
::placeholder { color:#A6A6A6; transition: all 0.3s ease;}
:focus::placeholder {  opacity:0.2; }
.formtwocol { display: flex; margin: 0 -12px }
.formtwocol > div { flex:0 0 50%; padding: 0 12px}
.cgv_sub { display: flex; align-items: center}
.cgv_sub > div:nth-child(1) { padding-right: 15px}
.cgv_sub > div:nth-child(2) { flex:0 0 185px; text-align: right}
.mfcheckbox { display: flex; padding: 15px 30px; align-items: flex-start; font-size: 15px; line-height: 21px; color:#A6A6A6}
.mfcheckbox input { margin: 3px 10px 0 0}
.mfcheckbox span span { text-decoration: underline}
@media all and (max-width:767px) {
    .cgv_sub { display: block}
    .formtwocol { display: block; margin: 0}
    .formtwocol > div { padding: 0}
    .mfcheckbox { padding-left: 0; padding-right: 0}
}

/* popin */
.mf_popin {  background: #FFF; max-width:1000px; position: relative; width:auto;  margin: 0 auto; display:none;}
.mf_popin iframe { width:100% !important; height:600px !important;  display: block}
.mfp-close {  width:40px;  height: 40px; background:var(--couleur_rouge);  position: absolute;  right: 0;  top: 0; color:#fff !important;   font-size: 28px; }
.mfp-arrow {  position: absolute;  top: 50%;  margin-top:-0px;  width:10px; height:10px;  background:red; }
.mfp-arrow-left { left:10px; background-position:0 0; }
.mfp-arrow-right { right:10px;  background-position:0 0;}
.mfp-bg, .mfp-wrap .mfp-content {   opacity: 0;    -webkit-transition: all 0.2s ease;  transition: all 0.2s ease;}
.mfp-content { max-width: 1000px}
.mfp-bg.mfp-ready {  opacity: 0.8; }
.mfp-bg.mfp-removing {    opacity: 0;}
.mfp-wrap.mfp-ready .mfp-content {    opacity: 1;}
.mfp-wrap.mfp-removing .mfp-content {    opacity: 0;}
.mfp-ready .mf_popin { display:block; }
.mfp-bg {background-color: rgba(11, 11, 11, 0.98);  top: 0;  left: 0;  width: 100%;  height: 100%;  z-index: 1042;  overflow: hidden;  position: fixed;}
.mfp-wrap {  top: 0;  left: 0;  width: 100%;  height: 100%;  z-index: 1043;  position: fixed;  outline: none !important;  -webkit-backface-visibility: hidden; }
.mfp-container {padding:10px;  text-align: center;  position: absolute;  width: 100%;  height: 100%;  left: 0; top: 0;  box-sizing: border-box; }
.mfp-container:before {  content: '';  display: inline-block;  height: 100%;  vertical-align: middle; }
.mfp-align-top .mfp-container:before {  display: none; }
.mfp-content {  position: relative;  display: inline-block;  vertical-align: middle;  margin: 0 auto;  text-align: left;  z-index: 1045; }
.mfp-inline-holder .mfp-content,.mfp-ajax-holder .mfp-content {  width: 100%;  cursor: auto; }
.mfp-ajax-cur {  cursor: progress; }
.mfp-loading.mfp-figure {  display: none; }
.mfp-hide {  display: none !important; }
.mfp-s-ready .mfp-preloader {  display: none; }
.mfp-s-error .mfp-content {  display: none; }
.mfp-counter { display:none;   }
.mfp-title { display:none;}
button.mfp-close, button.mfp-arrow {  overflow: visible;  cursor: pointer;  -webkit-appearance: none;  display: block;  z-index: 1046; touch-action: manipulation; }
img.mfp-img {  width: auto;  max-width:100%;  }
.mfp-figure {  line-height: 0; }
@media all and (max-width:767px) {
    .alignright, a img.alignright, .wp-caption.alignright, .alignleft, a img.alignleft, .wp-caption.alignleft {        float: none;        margin: 0 auto 2rem;        display: block    }
    .mf_popin iframe { height: 300px !important;}
}



/*--------- [ LAYOUT ] ---------*/
html { font-size: 62.5%; }
body { overflow-x: hidden; }
.row { width: 100%; max-width: 1064px; margin: 0 auto; position: relative }
.center_c { max-width: 700px; margin: 0 auto}
#main { min-height:90vh; }
body, input, textarea,  button { font-family: "Inter", Verdana, sans-serif; font-size:1.8rem; line-height: 1.2; color: var(--couleur_noir) !important;   }

@media all and (min-width:1700px) {
    .row { max-width: 1500px}
    .center_c { max-width: 1000px}
}




/* Header */
.hlogo_desktop img, .hlogo_mobile img { display: block; width: 100%}
.hlogo_mobile { display: none; position: fixed; top:8px; left:20px; z-index: 99}
.hlogo_mobile img { height: 43px}
#menu_fixed { position: fixed; top:0; left:0; right: 0; z-index: 99 }
#menu_fixed .shape { margin: -4px 0 -2px; line-height: 0; }
#menu_fixed .conteneur {  position: absolute; left:-56px; width: 195px}
#hmenu { background: #EBEBEB;  }
#hmenu  li  { border-bottom: 1px solid #A6A6A6;  position: relative;background: #EBEBEB   }
#hmenu  > ul > li:nth-last-child(2){ border: 0}
#hmenu  li.hide_desktop { display: none}
#hmenu  li a, .menu-parent-btn { display: block; padding: 19px 10px; font-size: 16px; font-weight: 700; text-align: center; width: 100%}
#hmenu  li a:hover { color:var(--couleur_vert)}
#hmenu  li li { font-size: 15px}
#hmenu  li li:last-child { border: 0}
/* #hmenu > ul > li > ul { padding-left: 10px; position:absolute; top:0; left:100%; width: 184px;  transform: scaleY(0); transform-origin: 50% 0; visibility: hidden; max-height: 0;  transition:all 0.3s ease;        max-width: 100%;        } */
#hmenu > ul > li > ul { display: none; padding-left: 10px; position:absolute; left:100%; width: 184px; transform-origin: 50% 0; max-width: 100%;        }
#hmenu .arrow { position: absolute; top:50%; right: 10px; margin-top: -6px;width: 12px; }
#hmenu .arrow span {  position: absolute; top:0; left:0;  width:12px; height: 12px; display: flex; align-items: center; justify-content: center; transition: all 0.1s ease; }
#hmenu .arrow span.close { opacity: 0}
/* #hmenu > ul > li.open_accordeon > ul { max-height: 1000vh; transform: scaleY(1); transform-origin: 50% 0; visibility: visible; opacity: 1;   } */
#hmenu > ul > li.open_accordeon > ul { transform-origin: 50% 0; }
#hmenu > ul > li.open_accordeon .arrow span.close { opacity: 1}
#hmenu > ul > li.open_accordeon .arrow span.open { opacity: 0}
.hamburger { width: 120px; height: 60px; background: var(--couleur_rouge);  top:0; right: 0; position: fixed;  display: none; font-size: 20px; font-weight: 600; color:#fff !important; z-index: 99}

#cta_fixed { display: flex; position: fixed; top:0; right: 0; z-index: 99  }
#cta_fixed > div:nth-child(2) a:hover {  opacity: 0.8}
.cta_fixed_mobile { display: none}
#cta_fixed .btn-teleconseil img { display: none; width: 32px; }
#visite_fixed { position: fixed; bottom:95px; right: 0; z-index: 99; line-height: 0; opacity: 1; visibility: visible; transition: all 0.1s ease;}
#visite_fixed.hide { opacity: 0; visibility: hidden; transition: all 0.1s ease;   }
#visite_fixed img { transition: all 0.3s ease;}
#visite_fixed img:hover { opacity: 0.8}
#visite_fixed .desktop img { width: 131px }
#visite_fixed .mobile img { width: 60px }
#visite_fixed .mobile { display: none}
#popin-visite { transition: transform 0.4s ease, opacity 0.4s ease; transform: scale(0); opacity: 0; transform-origin: bottom right; background: var(--couleur_vert); position: fixed; right:0; bottom: 95px;  z-index: 99; width: 680px; height: min(90vh, 655px); padding: 75px 75px 0 75px}
#popin-visite.open { opacity: 1; transform: scale(1); pointer-events: auto;}
#popin-visite #close { position: absolute; top:10px; left:20px;}
#popin-visite #close a { color:#fff;}
#popin-visite #close a:hover { color:var(--couleur_rouge)}
#popin-visite #plan { position: relative; z-index: 10; height: 100%; display: flex; align-items: flex-start; }
#popin-visite #plan img { width: 430px; max-width: 100%; height: auto; }
#popin-visite #plan > svg { max-width: 420px; }
#popin-visite #deco { position: absolute; right: 0; bottom:0; line-height: 0; text-align: center}
#popin-visite #logo { text-align: right; padding-right: 20px}
#popin-visite #logo img { width: 155px;  height: auto; margin-bottom: 30px}
#popin-visite #caracter { overflow: hidden; width: 209px; height: 265px; }
#popin-visite #caracter img { height: auto; position: relative; z-index: 20; width: 100%; height: 100%; object-fit: contain; }
.custom-shape-divider-bottom-1760090625 { position: absolute; top: -60px; left: 0; width: 100%; overflow: hidden; line-height: 0; transform: rotate(180deg); }
.custom-shape-divider-bottom-1760090625 svg { position: relative; display: block; width: calc(100% + 1.3px); height: 70px; transform: rotateY(180deg); }
.custom-shape-divider-bottom-1760090625 .shape-fill { fill: #36C1B3; }
#popin-visite #plan .piece { cursor: pointer; }
#popin-visite #plan .piece:hover > .hover { transition: opacity .3s ease; }
#popin-visite #plan .piece:hover > .hover { opacity: 1; }
@media all and (max-width:1200px) {
    #cta_fixed .btn-teleconseil { background: var(--couleur_vert); padding: 15.5px 11.5px; }
    #cta_fixed .btn-teleconseil span { display: none; }
    #cta_fixed .btn-teleconseil img { display: block; }
}
@media all and (max-height:700px) and (min-width:768px) {
    #visite_fixed { bottom: 35px; }
    #popin-visite { bottom: 35px; padding: 0 75px; }
    #popin-visite #plan svg { max-height: 100%; }
    /* #popin-visite #caracter { width: 250px; height: 300px; } */
    /* #popin-visite #caracter img { width: 100%; height: 100%; object-fit: contain; } */
}

.appart__zone {
    cursor: pointer;
    transition: fill 0.3s ease, opacity 0.3s ease;
}

/* effet hover */
.appart__zone:hover {
    fill: var(--couleur_vert); /* ta couleur principale */
    fill-opacity: 0.3;
}


@media all and (max-width:767px) {
    #hmenu { margin-top: 65px; }
    #popin-visite { bottom: 0}
    #popin-visite { width: 100%; height: auto; padding:10px 0 0 0}
    #popin-visite #plan{ margin-left: 15px; line-height: 0}
    #popin-visite #deco { display: none; }
    #popin-visite #close { right: 10px; top:-50px; z-index: 5; left:inherit}
}



    /* Footer */
#footer { padding-bottom: 3rem; font-size: 16px}
#footer .center_c { max-width: 900px; padding-left: 100px}
#footer a:hover { color:var(--couleur_rouge)}
.scroll_toT a { transform: rotate(180deg); display: inline-block  }
.flogos { display: flex;  gap:10px 60px; padding: 0 0 60px; }
.finfos {  display: flex}
.finfos > div { flex:0 0 33.33%  }
.finfos h4 { color:var(--couleur_rouge); padding-bottom: 20px}
.finfos i, .finfos a.btn-primary  { font-size: 15px}
.finfos .wysiwyg p { margin-bottom: 17px}
.finfos  .wysiwyg p:not(:first-of-type) img { display:inline-block; vertical-align: top; margin: 2px 2px 0 0 }
.fsocial {  display: flex; align-items: center; gap:10px 17px; padding: 2rem 0; }
.fsocial span { display: none}
.fsocial a:hover { color:var(--couleur_rouge)}
.fliens { display: flex; flex-wrap: wrap; font-weight: 600; font-size: 15px; padding-bottom: 3rem}
.fliens div:after { content:"|"; padding: 0 5px; color:var(--couleur_vert); font-size: 13px}
.fliens div:last-child:after { display: none}
.fpartenaires { display: flex; flex-wrap: wrap; gap: 10px 18px}
.fpartenaires img { height: 28px; transition: all 0.2s ease;  }
.fpartenaires img:hover { opacity: 0.8}
@media all and (max-width:1200px) {
    .hlogo_desktop, #menu_fixed .shape { display: none}
    .hlogo_mobile { display: block;}
    #cta_fixed { /* display: none; */ top: 60px; }
    .hamburger { display: block}
    html.menu-open { overflow: hidden;}
    #header { height: 60px; background: #fff; z-index: 99; position: fixed; left:0; right: 0; top:0;}
    #header .row { max-width: 100%}
    #hmobile {  position:absolute; top:60px; left:-130%; width:100%; z-index: 9998; height:calc(100vh - 0rem);    transition: all 0.3s ease; }
    #hmobile.open { left:0; }
    #menu_fixed .conteneur { left:inherit; position: inherit; }
    #hmenu .arrow { top:30px;}
    #hmenu > ul > li > ul { width: 100%; position: inherit; left:inherit; right: inherit; padding-left:0}
    #hmenu > ul > li > ul li:last-child { border-bottom: 0}
    #hmenu  li.hide_desktop { display: block}
    #visite_fixed .desktop{ display: none}
    #visite_fixed .mobile { display: block}
    .center_c,  #footer .center_c {  max-width: 100%}
    .conteneur_bg,  #footer .center_c  { padding-left: 44px; padding-right: 80px}

}
@media all and (max-width:767px) {
    body { font-size: 15px}
    #wrapper { padding-top: 80px}
    .conteneur_bg { margin-bottom: 25px}
    .conteneur_bg, #footer .center_c { padding-left: 25px; padding-right: 25px}
    .conteneur_bg[class*="bg-active-"] { padding-top: 41px; padding-bottom: 41px}
    #visite_fixed { bottom:0; line-height: 0; }
    #visite_fixed .mobile { display: flex; align-items: center}
    #footer { padding-bottom: 1.5rem}
    .flogos { gap:10px 30px; padding: 30px 0  }
    .flogos img { max-height: 50px}
    .finfos { display: block}
    .finfos  .wysiwyg { font-size: 14px}
    .finfos  .wysiwyg p:first-of-type  { margin-bottom: 9px }
    .finfos  .wysiwyg p:first-of-type img { height: 32px}
    .finfos .wysiwyg p { margin-bottom: 9px}
    .finfos > div { padding-bottom: 15px}
    .finfos h4 { padding-bottom: 10px}
    .fpartenaires img { height: 23px}



}

@media all and (max-width:550px) {
    #menu_fixed .conteneur { width: 100% }
    #hmobile, #hmenu li a, #hmenu li button  { background-color: #fff}
    #hmenu li.hide_desktop a { background-color: var(--couleur_vert)}

}



