/*
 Theme Name:   Reseau Vertikal 2026
 Description:  Theme Réseau VERTIKAL — iwegov2
 Author:       Iwego
 Template:     iwegov2
 Version:      2.0
*/


:root {
  --border-radius: 2rem;
}


/***************************/
/*********GENERAL**********/
/**************************/

h1, h2, h3, h4 {line-height: normal;}
.texte-blanc * {color: #fff;}
.texte-blanc ul li::marker {color: #fff;}
.btn-cta {text-transform: uppercase; font-size: 1.3rem; font-weight: 500; border: 1px solid var(--couleur-cta);}
.btn-cta:hover {box-shadow: inset 40em 0 0 0 #fff !important; color: var(--couleur-texte) !important; border: 1px solid var(--couleur-cta);}
.btn-cta.btn-cta-blanc {background-color: #fff; color: var(--couleur-cta); margin-top: 0;}
a.slick-prev, a.slick-next {z-index: 1; opacity: .7;}
a.slick-prev i, a.slick-next i {color: var(--couleur-principale) !important;font-size: 4rem;}
a.slick-prev:hover, a.slick-next:hover {opacity: 1;}

h2 *{color: var(--couleur-principale);}

ul li {margin: 5px 0;}
ul li::marker {color: var(--couleur-cta);}
figure { margin: 0; }
.wp-block-table { border-radius: 0; }

@media (min-width: 1200px) {
.section-margin { margin-top: 10rem;  margin-bottom: 12rem;}
}

p{text-align: justify;}
.h2-small h2{font-size: 1.9rem;}
.no-line-break-span span{display: inline-block;}
.margin-bottom-30{margin-bottom: 3rem;}

.bloc-futs{    background-color: white;padding: 4rem; border-radius: var(--border-radius);}
.bloc-futs img{max-width: 250px !important;margin: auto;}

.texte-empatement-compteur{padding-bottom: 5rem;margin: auto;text-align: center;font-size: 1.8rem;}
.texte-empatement-compteur strong{background-color: var(--couleur-principale); color: white; padding: 2rem; display: inline-flex; font-size: 2rem; margin-top: 2rem;    border-radius: var(--border-radius);}

.compteur-70-concessionaire .compteur-item{margin-top:2rem;width:100% !important;background-color:var(--couleur-principale);color: white; padding: 2rem;border-radius: var(--border-radius);     display: inline-block;flex: none;margin: auto;margin-bottom: 5rem;}
.compteur-70-concessionaire .compteur-item *{color:white;text-align:center;}
.compteur-70-concessionaire .compteur-item .compteur-intitule{font-weight:bold;max-width: none;}
.txt-franchise em{    font-size: 1.2rem;}
.margin-top-2{margin-top:2rem;}

.tarteaucitronAlertBigTop::after { content: ''; background: url(/wp-content/uploads/icons/icon-cookies.svg);background-size: contain;background-repeat: no-repeat;}
div#tarteaucitronRoot.tarteaucitronBeforeVisible:before{display: none;}

.photo-groupe-reseau{border-radius: var(--border-radius);    width: 100%; margin-top: 1rem !important;}

.logo-bloc-compteur{margin: auto;width: 15rem;height: auto;}
ol li::marker {
    font-size: inherit;
    color: var(--couleur-principale);
    font-weight: inherit;
}
/***************************/
/*********HEADER**********/
/**************************/


.topbar-menu {display: none;}
.topbar-menu>div {background-color: var(--couleur-fond-light); border-radius: 1.5rem; padding: 1.5rem 3rem !important; margin-top: 1.5rem; column-gap: 3rem;}
.home #headermenu {background-color: transparent;}
.home #headermenu:not(.sticky) .main-menu > li.menu-item > a{color: white;}
#headermenu.sticky {box-shadow: rgba(0, 0, 0, 0.2) 0px 1px 4px;background-color: var(--couleur-header);}
#headermenu.sticky .main-menu>li.menu-item>a {font-size: 1.3rem !important;}
#headermenu.sticky .topbar-menu { display: none !important; }

/* CTA apparu dans le header en mode sticky */
.header-sticky-cta {
    max-width: 0;
    overflow: hidden;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    margin-left: 0;
    padding-left: 0 !important;
    padding-right: 0 !important;
    white-space: nowrap;
    font-size: 1.3rem !important;
    transition: max-width 0.4s ease, opacity 0.3s ease, visibility 0.3s ease, margin-left 0.3s ease, box-shadow 0.3s ease, color 0.3s ease;
}
@media (max-width: 999px) {
    .header-sticky-cta { display: none !important; }
}
#headermenu.sticky .header-sticky-cta {
    max-width: 200px;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    margin-left: 2rem;
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
}
#headermenu.sticky .header-sticky-cta:hover { box-shadow: inset 20em 0 0 0 #fff !important; }
.topbar-menu p, .topbar-menu a {margin: 0; font-size: 1.6rem;}
.topbar-tel {margin-right: auto;}
.topbar-tel a {font-weight: 700; color: var(--couleur-principale);}
#call-back-trigger {align-items: center;}
#call-back-trigger i, .topbar-contact i {color: var(--couleur-principale); margin-right: 5px;}
#call-back-trigger i {font-size: 1.2rem;}
.topbar-contact i {font-size: 1.4rem;}
.main-menu>li.menu-item>a {text-transform: uppercase; padding: 2rem 1.5rem !important;font-size: 1.6rem;font-weight: bold;}
.main-menu>li.menu-item>a:hover {color: var(--couleur-principale);}
.main-menu>li.current_page_item>a {color: var(--couleur-principale);}
.main-menu>li.menu-item.no-link>a {cursor: default; pointer-events: none;}
header .sub-menu li a{font-size: 1.6rem;font-weight: bold;}
header .sub-menu li.current_page_item a{color: var(--couleur-principale);}

.main-menu>li.current-menu-ancestor>a {font-weight: 700; color: var(--couleur-principale);}
.main-menu .current-menu-item a {font-weight: 600;}

.breadcrumb {text-transform: uppercase; font-weight: 300;}
.breadcrumb .breadcrumb_last {color: var(--couleur-principale); font-weight: 300 !important; text-decoration: underline;}

header ul li {margin: 0;}

header .sub-menu {box-shadow: rgba(0, 0, 0, 0.2) 0px 1px 4px; padding: 2rem 3rem; margin: 0; border-radius: 1.5rem; background-color: #fff;}
header .sub-menu::before { content: ''; position: absolute; top: -12px; width: 0px; height: 0px; border-style: solid; border-width: 0 11.5px 13px 11.5px; border-color: transparent transparent #fff transparent; transform: rotate(0deg); filter: drop-shadow(0 -2px 1px rgba(0,0,0,.08));}

header .sub-menu li {border-bottom: 1px solid #F0EFEF;}
header .sub-menu a {padding: 1.5rem 0 !important; font-weight: 300; letter-spacing: .05rem; width: 100%; display: flex; column-gap: 2.5rem;}
header .sub-menu a:hover {color: var(--couleur-principale);}

#menu-menu-principal ul.sub-menu a::after { content: ''; width: 25px; min-width: 25px; height: 25px;  background: url(/wp-content/uploads/icons/icon-fleche.svg) no-repeat; display: inline-block;  vertical-align: middle; background-size: contain; margin-left: auto;}
#menu-menu-principal ul.sub-menu a:hover::after { background: url(/wp-content/uploads/icons/icon-fleche-full.svg) no-repeat; background-size: contain;}

.footer-mobile-menu-reseau img{width: 170px;}
.footer-mobile-reseau .footer-col ul li{border-bottom: 0;}
.footer-mobile-menu-reseau .footer-mobile-logo{padding-bottom: 3rem;text-align: center;}
.menu .submenu-toggle i{color: white;}
.footer-mobile-reseau .footer-col ul li{display: block;    padding: 2rem;background-color: var(--couleur-principale); margin: 0;}
.footer-mobile-menu-reseau{margin-top: 3rem;}
header .menu .submenu-toggle.open, .footer-mobile-reseau .menu .submenu-toggle.open {  transform: rotate(-90deg);}
.footer-mobile-reseau .menu .sub-menu.open{opacity: 1;transform: none;margin-top: 1rem;margin-left: 0rem;}
.footer-mobile-reseau .menu .sub-menu li{padding: 1rem 0;}
.footer-mobile-reseau .menu .sub-menu { display: none; transition: left 0.3s ease, opacity 0.3s ease; opacity: 0; transform: translateX(100%);transition: transform 0.5s ease-in-out !important;}
.menu .submenu-toggle{margin-right: 5rem;}
.footer-mobile-menu-reseau  ul.menu>li>a { width: 100%;  z-index: 3; position: relative; text-transform: uppercase;  font-weight: 700; font-size: 1.4rem;color: white !important;}
.footer-mobile-reseau .sub-menu .menu-item>a { font-size: 1.4rem; width: 100%; z-index: 3; position: relative;color: white;}
span.menu-item-after { background-color: transparent;  width: 30px; height: 30px; display: block; position: absolute;top: -2px; right: 40px; z-index: 1}
.hamburger-box { width: 30px; height: 24px; display: flex; flex-direction: column; justify-content: space-between;cursor: pointer; position: relative}
.hamburger-box .line { width: 100%; height: 3px; background-color: white;transition: transform 0.3s ease,opacity 0.3s ease}
.hamburger-box.active .line:nth-child(1) { transform: translateY(10px) rotate(45deg)}
.hamburger-box.active .line:nth-child(2) { opacity: 0}
.hamburger-box.active .line:nth-child(3) {transform: translateY(-10px) rotate(-45deg)}
.footer-mobile-bottom { width: 80%;justify-content: space-around; align-items: center;margin: 0 auto 15px;background-color: var(--couleur-principale);display: flex; align-items: center;border-radius: var(--border-radius); padding: 1rem; box-shadow: 0 0 10px rgba(0, 0, 0, .1);}
.container-footer-mobile-bottom { display: flex;flex-direction: column; position: fixed; bottom: 0;left: 0;width: 100%;z-index: 9999; transition: right 0.3s ease-in-out, opacity 0.3s ease-in-out;}
.footer-devis-button{padding: 0;}
.container-footer-mobile-bottom i{font-size: 2.5rem;}
.footer-mobile-reseau { position: fixed; top: 0; right: -100%; width: 100%;  height: 100%; transition: right 0.3s ease;  z-index: 999; background-color: var(--couleur-background);}
.footer-mobile-reseau.active { right: 0;}

.menu-item .submenu-toggle{position: relative;}

@media (min-width: 1000px) {
    .container-footer-mobile-bottom { display: none;}
}

/***************************/
/*********FOOTER**********/
/**************************/


.footer-desktop .footer-logo img {margin: auto;}
.footer-logo p {font-size: 1.2rem; font-weight: 300; text-align: center;}
footer ul {margin-left: 0;}
footer .footer-col .menu>li>a {color: var(--couleur-principale); font-weight: 600;}
footer .footer-col .menu a {font-size: 1.2rem; text-transform: uppercase; }
footer .sub-menu a {font-weight: 300;}
footer .footer-secondaire {width: 100%; border-top: 1px solid var(--couleur-texte); border-bottom: 1px solid var(--couleur-texte); padding: 1.5rem 10rem; align-items: center; justify-content: center; column-gap: 8rem; margin-top: 2rem;}
footer .palmares-vertikal-txt p {font-size: 1.2rem; font-weight: 300;}
footer .palmares-vertikal-txt{flex: 1;}
footer .footer-copyright li a {text-transform: uppercase; font-size: 1.2rem !important;}
#menu-footer-copyright {flex-wrap: wrap;}
footer .footer-arbo {width: 100%;}
footer .footer-mobile-bottom {border: 2px solid #fff;}
.footer-mobile.active {right: 0;}
.footer-mobile {background-color: var(--couleur-background);}
.footer-mobile .menu .sub-menu.open {background-color: var(--couleur-fond-light);}
footer .palmares-vertikal.logo-capital img{height: auto;width: 160px;}
footer .palmares-vertikal.logo-eldo img{max-width:100px;}


@media (max-width: 768px) {

    footer { padding-top: 3rem; }

    /* Empile logo et arbo en colonne */
    .footer-desktop { flex-direction: column !important; gap: 2.5rem; padding-bottom: 8rem; }

    /* Logo centré pleine largeur */
    .footer-desktop .footer-logo { width: 100%; text-align: center; margin-bottom: 0; }
    .footer-desktop .footer-logo img { margin: 0 auto; }
    .footer-desktop .footer-logo p { text-align: center; }
    .footer-desktop .footer-social-bloc { justify-content: center; }

    /* Arbo : 2 colonnes, sans row-gap */
    .footer-desktop .footer-arbo { width: 100%; row-gap: 0; column-gap: 1rem; }
    .footer-desktop .footer-arbo .footer-col { width: calc(50% - 0.5rem); flex: 0 0 calc(50% - 0.5rem); max-width: calc(50% - 0.5rem); }

    /* Copyright centré */
    .footer-desktop .footer-copyright { width: 100%; justify-content: center; }
    .footer-desktop .footer-copyright ul { flex-wrap: wrap; justify-content: center; gap: 0.5rem; margin-top: 0; }

    /* Palmares : colonne centrée */
    footer .footer-secondaire { flex-direction: column; align-items: center; text-align: center; gap: 1.5rem; padding: 1.5rem 1rem; column-gap: 0; }
    footer .footer-secondaire .palmares-vertikal-txt { flex: none; }

    /* Droit d'entrée : centrage forcé sur mobile (override style inline) */
    .container-bloc-texte.section-droit-entree .bloc-texte-base p { text-align: center !important; }

    /* Bloc texte-galerie : padding sur la partie texte en mobile */
    .galerie-bloc-text { padding: 20px; }

}


/***************************/
/*****ARCHIVE ACTUALITÉS****/
/***************************/

.blog-title { margin-bottom: 3rem; }
.blog-title h1 { margin-bottom: 0.5rem; }
.blog-title h2 { font-size: 1.8rem; font-weight: 300; color: var(--couleur-texte); margin: 0; }

.archive-actualites-grille { margin-top: 3rem; margin-bottom: 6rem; }
.archive-actualites-grille .guide-card.filtre-masque { display: none; }

.guide-card-date { font-size: 1.3rem; font-weight: 300; color: var(--couleur-texte); opacity: 0.7; margin: 0 0 0.8rem; }

.guide-card-categories { display: flex; flex-wrap: wrap; gap: 0.5rem; margin-bottom: 0.8rem; }
.guide-card-categories .category { font-size: 1.2rem; font-weight: 600; color: #fff; background-color: var(--couleur-principale); padding: 0.3rem 0.9rem; border-radius: 2rem; }


/***************************/
/*********ACCUEIL**********/
/**************************/

.container-bloc-slider .slide-content .btn-cta {color: #fff;}
.container-bloc-slider .slick-slide .image-slide:before {background: rgba(34, 34, 34, .45) !important;}
.bloc-img-k .background-image-texte-image {background-size: contain; background-repeat: no-repeat;}

.section-video-produits .video-produits-intro, .section-video-produits h2 {max-width: 80rem; margin-left: auto; margin-right: auto;}
.section-video-produits .wp-block-columns {margin-top: 3rem;}
.section-video-produits .video-produits-col p {max-width: 25rem; margin-left: auto; margin-right: auto; font-weight: 500;}


.container-bloc-texte.section-cta {background-size: 25rem; background-repeat: no-repeat; background-position: left 6rem center; padding: 0;}
.container-bloc-texte.section-cta .bloc-texte-contenu {padding: 2rem;}
.container-bloc-texte.section-cta .btn-cta {margin-top: 0 !important;}
.texte-blanc .btn-cta {background-color: var(--couleur-cta-texte); color: var(--couleur-cta); border-color: var(--couleur-cta-texte);}
.texte-blanc .btn-cta:hover {box-shadow: inset 40em 0 0 0 var(--couleur-texte) !important; color: #fff !important;}

.section-avantages {row-gap: 2rem;}
.section-avantages .wp-block-columns {width: 100%;}
.section-avantages .avantages-col img {max-height: 5rem; max-width: 7rem; border-radius: 0 !important;}
.section-avantages .avantages-col figure { border-radius: 0 !important; overflow: visible; }
.section-avantages .avantages-col p {margin-left: auto; margin-right: auto; margin-top: 2rem; font-size: 1.4rem;}


.section-territoires-vertikal.container-bloc-texte-image .btn-cta {margin-top: 1rem;}
.section-territoires-vertikal.container-bloc-texte-image .legende-image {padding: 0 1.5rem;}
.section-territoires-vertikal.container-bloc-texte-image .legende-image p {font-size: 1.4rem;}
.section-territoires-vertikal.container-bloc-texte-image .bloc-right {padding-top: 2rem; padding-bottom: 2rem;}

.titre-row h1, .titre-col h1 {margin-bottom: 0; text-transform: uppercase; font-weight: 800;}
.titre-col h1 {text-align: center;}
.titre-row h2 {font-size: 2.2rem;}

.container-bloc-slider h1, .container-bloc-slider h2 {margin-bottom: 6px;}



/***********************************/
/*********MODELE ECOOMIQUE**********/
/***********************************/

.container-bloc-texte-image.img-absolute {overflow: visible !important;}
.container-bloc-texte-image.img-absolute .bloc-right:not(.bloc-text), .container-bloc-texte-image.img-absolute .bloc-left:not(.bloc-text) {position: relative; overflow: visible;}
.container-bloc-texte-image.img-absolute .bloc-left.bloc-text {padding: 0 1rem 2rem;}

.container-bloc-texte.section-droit-entree .bloc-texte-base, .container-bloc-texte.section-droit-entree .bloc-texte-additionnel {min-width: auto; flex: none;}
.container-bloc-texte.section-droit-entree .bloc-texte-additionnel {width: 100%;; border-top: 1px solid #E5E3E3; padding-top: 1rem; padding-bottom: 2.5rem;}
.container-bloc-texte.section-droit-entree .bloc-texte-base {width: 100%;}
.container-bloc-texte.section-droit-entree .bloc-texte-base p {font-size: 2.8rem;}
.container-bloc-texte.section-droit-entree .bloc-texte-base p span {font-size: 2.8rem; font-weight: 800;}
.container-bloc-texte.section-droit-entree {padding: 0;}
.container-bloc-texte.section-droit-entree .bloc-texte-contenu{align-items: center;}

.section-avantages-applicateur .avantages-applicateur-col {border-radius: var(--border-radius); padding: 2rem 3rem;}
.section-avantages-applicateur .avantages-applicateur-col h3 {font-size: 2rem; font-weight: 600;}
.section-avantages-applicateur .avantages-applicateur-col p {font-size: 1.4rem; font-weight: 300;}
.section-avantages-applicateur .avantages-applicateur-plus {font-weight: 700; color: #fff; font-size: 4rem; margin-left: auto; margin-right: auto; background-color: var(--couleur-principale); border-radius: 50%; width: 5rem; height: 5rem; justify-content: center; align-items: center;}
.section-avantages-applicateur .container-bloc-texte-image h3 {margin-top: 0; color: var(--couleur-principale);}
.section-avantages-applicateur .container-bloc-texte-image p strong {font-weight: 600;}
.container-bloc-texte-image.img-absolute .bloc-left img {padding-bottom: 0;}

.txt-abense-royalti{color: black;font-size: 2.5rem;}

/******************************/
/*********DIVERS PAGE**********/
/******************************/

.titre-col.container-bloc-texte, .titre-row.container-bloc-texte {padding-top: 0;}
.titre-row.container-bloc-texte {padding-bottom: 0;}
.titre-col.container-bloc-texte .bloc-texte-additionnel p {font-weight: 300;}


.section-concept-global p, .section-concept-global li {font-weight: 300;}
.section-concept-global .concept-global-top {border-radius: var(--border-radius) var(--border-radius) 0 0;}
.section-concept-global .concept-global-bottom {border-radius: 0 0 var(--border-radius) var(--border-radius);}
.section-concept-global .container-bloc-texte {padding: 0;}
.section-concept-global .concept-global-top .bloc-texte-contenu {padding-bottom: 2rem; border-bottom: 2px solid #F2F2F2;}
.section-concept-global .concept-global-bottom .bloc-texte-contenu {padding-top: 2rem;}
.section-concept-global .container-bloc-texte .bloc-texte-contenu {column-gap: 0; padding: 0;}
.section-concept-global .container-bloc-texte .bloc-texte-base {padding: 2rem; border-bottom: 2px solid #F2F2F2;}
.section-concept-global .container-bloc-texte .bloc-texte-additionnel {padding: 2rem;}
.section-concept-global .concept-global-conclu {font-size: 1.5rem; margin-top: 3rem;}

.section-concept-global.section-valeurs-vertikal .concept-global-bottom {border-top: 2px solid #F2F2F2;}
.section-concept-global.section-valeurs-vertikal h2 {margin-bottom: 3rem;}

.section-faq.container-bloc-accordeon {margin-bottom: 5rem;}


.section-compteur.container-bloc-compteurs {background-image: url(https://reseau-vertikal.vertikal.fr/wp-content/uploads/sites/84/2024/08/k-alpha.png); background-repeat: no-repeat; background-size: contain;}
.section-compteur.container-bloc-compteurs.nombres-noirs .compteur-nombre, .section-compteur.container-bloc-compteurs.nombres-noirs .unite-nombre {color: #000;}
.container-bloc-compteurs .compteur-intitule {font-size: 1.6rem; font-weight: 300;text-align: center;}
.container-bloc-compteurs .bloc-compteur-intro p {font-size: 1.4rem;}

.section-temoignages-reconversion .container-bloc-texte .bloc-texte-contenu {padding: 0;}


.section-nos-produits.container-bloc-texte-image {margin-top: 4rem;}
.section-nos-produits.container-bloc-texte-image h1 {text-transform: uppercase; margin-top: 0;}
.section-nos-produits.container-bloc-texte-image p {font-weight: 300;}

.container-bloc-texte.section-histoire-vertikal h3 {font-size: 1.8rem;}
.bloc-chrono-complement h3 {font-size: 1.8rem; font-weight: 500;}

.container-bloc-texte.fond-k-size {background-repeat: no-repeat;}

.container-bloc-texte.no-padding-container-texte .bloc-texte-contenu{padding-top: 0;padding-bottom: 0;}

.section-btn-asso .btn-cta:hover {box-shadow: inset 100em 0 0 0 #fff !important;}

.container-bloc-entete-page.entete-produit .image{margin: auto;}
.container-bloc-entete-page.entete-produit img{width: auto;}

@media (min-width: 768px) {
.container-bloc-entete-page.entete-produit .image { width: calc(30% - 5rem);}
.container-bloc-entete-page.entete-produit .texte { max-width: 70%;}
}



/***************************/
/*********BLOG**********/
/**************************/

.blog .blog-title h1 {margin-bottom: 0;}
.blog .blog-title h2 {margin-top: 0; color: var(--couleur-secondaire);}
.blog .element-item, .blog .latest-post {background-color: var(--couleur-fond-light); border-radius: var(--border-radius);}
.blog .element-item:hover .category, .blog .latest-post:hover .category {background-color: var(--couleur-principale) !important;}
.blog .latest-post .category, .blog .element-item .category {background-color: var(--couleur-principale-light) !important; border-radius: 1rem;}
.blog .latest-post .latest-post-right {max-height: 40rem;}
.blog .element-item h2 {margin-bottom: 0;}
.blog .element-item .resume-post p {font-size: 1.3rem; font-weight: 300; overflow: hidden;  display: -webkit-box;  -webkit-line-clamp: 3; line-clamp: 3;  -webkit-box-orient: vertical;}
.blog .element-item .element-item .post-content { min-height: 18rem;}
.blog .bloc-filtre-cas .btn-filtre-cas {font-weight: 600; border-radius: 1rem; background-color: var(--couleur-fond-light);}
.blog .bloc-filtre-cas .btn-filtre-cas.is-checked {background-color: var(--couleur-principale); color: #fff;}
.blog .bloc-filtre-cas .btn-filtre-cas:not(.is-checked):hover {color: var(--couleur-principale); }
.blog .element-item:hover, .blog .latest-post:hover { box-shadow: rgba(0, 0, 0, 0.05) 1px 2px 4px 0px;}
.latest-post .latest-post-right img, .blog .element-item img {filter: grayscale(100%);}
.latest-post:hover .latest-post-right img, .blog .element-item:hover img {filter: none;}
.single-post .articles-complementaires {column-gap: 2rem; margin-bottom: 5rem; margin-top: 3rem;}
.single-post .articles-complementaires .article-complementaire {min-height: auto; padding: 0; background-color: transparent; justify-content: flex-start; width: calc(50% - 10px);} 
.single-post .articles-complementaires .article-complementaire .post-thumbnail {height: 12rem; overflow: hidden;  background-color: var(--couleur-secondaire-extra-light);border-radius: var(--border-radius); }
.single-post .articles-complementaires .article-complementaire .post-thumbnail img {object-fit: cover; height: 100%; width: 100%; transition: all ease-in-out 200ms;}
.single-post .articles-complementaires .article-complementaire h3 {font-weight: 400; color: var(--couleur-secondaire); transition: inherit;}
.single-post .articles-complementaires .article-complementaire:hover .post-thumbnail img {transform: scale(1.08);}
.single-post .articles-complementaires .article-complementaire:hover h3 {color: var(--couleur-principale);}


.single h1 *{color: var(--couleur-principale);}

.blog .video-thumbnail {  display: block;  transition: opacity 0.3s;}
.blog .video-thumbnail:hover {   opacity: 0.8;}
.blog.video-thumbnail::-webkit-media-controls {  display: none;}
.blog .video-thumbnail:hover::-webkit-media-controls { display: flex;}

@media (min-width: 1000px) {
 .blog .element-item .post-content { min-height: 15rem;}
}


/***************************/
/*********MODALE**********/
/**************************/


.modal-tel {display: none; position: fixed; z-index: 1000; left: 0;top: 0; width: 100%;height: 100%; overflow: auto;}
.modal-content {margin: 15% auto; padding: 20px; width: 80%; max-width: 600px; border-radius: var(--border-radius); background-color: var(--couleur-background);}
.close {float: right;}
.close:hover,.close:focus {text-decoration: none;cursor: pointer;}
.modal-tel input:not([type="submit"]) {border: none !important; border-radius: 2.5rem !important; padding: 1.2rem 2.5rem !important; background-color: var(--couleur-fond-light) !important;}
.modal-tel .checkbox-container {margin-bottom: 0;}
.modal-tel input[type="submit"] {font-size: 1.3rem; text-transform: uppercase;}
.modal-tel .checkbox-container label {font-size: 1.3rem; font-weight: 400;}
#modal-container-temoignage .modal-content {padding: 0; position: relative; background-color: transparent; max-width: 100%; width: max-content;}
#modal-container-temoignage .close {position: absolute; right: -3rem; top: -5rem; font-size: 4rem; color: #000;}
#modal-container-temoignage #modal-temoignage-content {width: max-content; margin: auto;}
#modal-container-temoignage iframe {width: auto !important; aspect-ratio: 16/9; height: 500px;}
.btn-modal-tel{cursor: pointer;}


/***********************************/
/*********NOS PARTENAIRES**********/
/**********************************/

.colonne-noms-partenaires h3{text-transform: uppercase;font-weight: 300;}
.colonne-noms-partenaires h3 strong{font-weight: 900;color: var(--couleur-principale);}

@media (min-width: 1000px) {
.colonne-noms-partenaires .wp-block-column:nth-child(2) {  border-left: 1px solid var(--couleur-texte); border-right: 1px solid var(--couleur-texte);}
}


/***************************/
/*********FORMULAIRES**********/
/**************************/

.formulaire-contact {  max-width: 600px; margin: 0 auto;}
.formulaire-contact input[type="text"],
.formulaire-contact input[type="email"],
.formulaire-contact input[type="tel"],
.formulaire-contact input[type="number"],
.formulaire-contact textarea {width: 100%; padding: 1rem; border-radius: var(--border-radius); background-color: #fff;  font-size: 1.6rem;border:0px; transition: border-color 0.3s, box-shadow 0.3s;margin-bottom: 1.5rem;font-family: Montserrat, sans-serif;font-weight: 400;}

.formulaire-contact input[type="text"]:focus,
.formulaire-contact input[type="email"]:focus,
.formulaire-contact input[type="tel"]:focus,
.formulaire-contact input[type="number"]:focus,
.formulaire-contact textarea:focus { border-color: #e96531; box-shadow: 0 0 5px rgba(233, 101, 49, 0.5); outline: none;}


.formulaire-contact input[type="submit"] {text-transform: uppercase; font-size: 1.3rem; font-weight: 500; border: 1px solid var(--couleur-cta); background-color: var(--couleur-cta); padding: 7px 20px; color: var(--couleur-cta-texte);transition: box-shadow 350ms ease-in-out, color 200ms ease-in-out, background-color 200ms ease-in-out;text-align: center; border-radius: var(--border-radius); position: relative; display: block;cursor: pointer;}
.formulaire-contact input[type="submit"]:hover { box-shadow: inset 40em 0 0 0 #fff !important;color: var(--couleur-texte) !important;border: 1px solid var(--couleur-cta);}
.formulaire-contact input[type="checkbox"]{-webkit-appearance: auto;}
.formulaire-contact label { font-weight: bold;display: block; margin-bottom: 5px;    margin-left: 0px !important;}
.formulaire-contact .wpcf7-list-item{margin: 0px;}
.formulaire-contact p { margin: 0 0 10px;  font-size: 14px; color: var(--couleur-texte);}
.formulaire-contact .wpcf7-list-item-label { font-size: 14px; color: var(--couleur-texte);}
.formulaire-contact .screen-reader-response { display: none;}


.section-formulaire form{display: flex;flex-direction: column;}
.section-formulaire form .wpcf7-turnstile{order: 2;margin-bottom: 1rem;}

/***************************/
/*********RESPONSIVE**********/
/**************************/

@media (max-width: 768px) {
h1 {font-size: 2.4rem !important;}
h2 {font-size: 1.8rem !important;}
h3 {font-size: 1.6rem !important;}
}

@media (min-width: 900px) {
   .container-bloc-texte-image.section-k-bg {background-image: url(/wp-content/uploads/sites/84/2024/08/k-blanc.png); background-repeat: no-repeat; background-size: contain; background-position: right 3rem center;}
  .container-bloc-texte-image.img-absolute .bloc-image-contain {padding: 0;}
}

@media (min-width: 768px) {

    .container-bloc-slider .slide-content * {color: #fff;}
    .section-avantages .avantages-col p {max-width: 20rem;}
    .section-avantages {row-gap: 4rem;}
    .section-avantages .avantages-col img {max-height: 6rem; max-width: 8rem;}
    footer .footer-col {width: calc(25% - 15px);}
    .footer-logo p {text-align: left;}
    footer .palmares-vertikal-txt p {font-size: 1.3rem;}
    .single-post .articles-complementaires {column-gap: 5rem;}
    .container-bloc-texte.section-cta .bloc-texte-contenu {padding: 4rem 5rem;}
    .single-post .articles-complementaires .article-complementaire{width: calc(50% - 25px);}
    .single-post .articles-complementaires .article-complementaire .post-thumbnail {height: 18rem; }
    .section-formulaire form {max-width: 80rem; margin-left: auto; margin-right: auto;}

}

@media (min-width: 1000px) {
    .section-avantages .avantages-col p {max-width: 30rem;}
    .container-bloc-texte.section-droit-entree .bloc-texte-additionnel {width: calc(65% - 5rem); border-left: 1px solid #E5E3E3; padding-left: 3.5rem; padding-top: 0; border-top: none; padding-bottom: 0;}
    .container-bloc-texte.section-droit-entree .bloc-texte-base {width: calc(35% - 5rem);}
    .section-avantages-applicateur .container-bloc-texte-image .bloc-text.bloc-right {padding-right: 9rem;}
    .container-bloc-texte-image.img-absolute .bloc-right img, .container-bloc-texte-image.img-absolute .bloc-left img {position: absolute; height: 30rem; bottom: 0;}

    .container-bloc-texte-image.img-absolute .bloc-left.bloc-text {padding: 5rem 5rem 5rem 9rem;}
    .container-bloc-accordeon {max-width: 90rem !important;}
    .section-concept-global .container-bloc-texte .bloc-texte-base {padding: 3rem 5rem; border-right: 2px solid #F2F2F2; border-bottom: none;}
    .section-concept-global .container-bloc-texte .bloc-texte-additionnel {padding: 3rem 6rem;}
    .footer-desktop .footer-logo {width: calc(20% - 20px);}
    .footer-desktop {column-gap: 3rem !important;}
    footer .footer-copyright ul {margin-top: 5rem;}
    .titre-row.container-bloc-texte .bloc-texte-contenu {padding-top: 2.5rem;}
    .titre-col.container-bloc-texte .bloc-texte-contenu {padding-top: 3.5rem;}
    .topbar-menu {display: block;}
    .section-territoires-vertikal.container-bloc-texte-image .legende-image {padding-right: 8rem;}
    footer .footer-col .menu a {font-size: 1.3rem; }
    .footer-arbo {width: auto;}
    footer .footer-col {width: calc(25% - 24px);}
    .titre-col h1 {text-align: right;}
    .section-concept-global .concept-global-conclu {font-size: 1.8rem; margin-top: 5rem;  max-width: 60rem; margin-left: auto; margin-right: auto;}
    .section-faq.container-bloc-accordeon {margin-bottom: 11rem;}
    .container-bloc-texte.fond-k-size {background-size: 50%; background-position: left 6rem center;}
    .section-temoignages-reconversion.section-margin {margin-top: 10rem;}
    .section-concept-global.section-valeurs-vertikal h2 {margin-bottom: 6rem;}
    .section-nos-produits.container-bloc-texte-image {margin-top: 6rem;}
    .blog .blog-title {margin-top: 6rem; margin-bottom: 7.5rem !important;}
    .single-post-division .post-detail {max-width: 80rem; margin-left: auto !important; margin-right: auto !important;}
    .single-post .articles-complementaires .article-complementaire {width: calc(33% - 70px);}
    .single-post .articles-complementaires {column-gap: 11rem; margin-bottom: 6rem; margin-top: 5rem;}
    .single-post .articles-complementaires .article-complementaire h3 { font-size: 1.6rem;}
    .section-formulaire nf-field:nth-child(-n+5) {width: calc(50% - 1rem);}
    .section-formulaire nf-fields-wrap {column-gap: 2rem;}
}


/***************************/
/*******TEMOIGNAGE*********/
/**************************/

.single-temoignage-wrapper {padding-top: 2rem; padding-bottom: 6rem; max-width: 90rem;}

.temoignage-titre-principal {text-align: center; color: var(--couleur-principale); margin-bottom: 3rem !important;}

.temoignage-identite {display: flex; flex-direction: column; background-color: var(--couleur-fond-light); border-radius: var(--border-radius); margin-bottom: 4rem; overflow: hidden;}
.temoignage-photo img {width: auto; height: 15rem; object-fit: cover; object-position: top; display: block;margin: 1rem auto;}
.temoignage-info {padding: 2.5rem;}
.temoignage-nom {font-size: 2rem; font-weight: 700; color: var(--couleur-secondaire); margin: 0 0 .4rem;}
.temoignage-entreprise {font-size: 1.7rem; font-weight: 600; color: var(--couleur-principale); margin: 0 0 .4rem;}
.temoignage-secteur {font-size: 1.4rem; margin: 0 0 .4rem;}
.temoignage-secteur span {font-weight: 600;}
.temoignage-complement {font-size: 1.3rem; font-weight: bold; margin: 0;}

.temoignage-video {margin-bottom: 2rem;}
.temoignage-video-ratio {position: relative; width: 100%; padding-bottom: 56.25%; height: 0; border-radius: var(--border-radius); overflow: hidden;}
.temoignage-video-ratio iframe {position: absolute; top: 0; left: 0; width: 100%; height: 100%;}

.temoignage-resume-video {margin-bottom: 4rem; font-size: 1.4rem;}

.temoignage-contenu {background-color: var(--couleur-fond-light); border-radius: var(--border-radius); padding: 3rem 2.5rem;}
.temoignage-contenu h2{margin-top: 0;}

@media (min-width: 768px) {
    .temoignage-identite {flex-direction: row;}
    .temoignage-photo {flex-shrink: 0; width: 15rem;margin: 2rem 4rem;}
    .temoignage-photo img {width: 100%; height: 100%;margin: 0;}
    .temoignage-info {display: flex; flex-direction: column; justify-content: center;}
}



/* --- wp-block-embed youtube (lazy) --- */
figure.wp-block-embed-youtube { max-width: 800px; width: 100%;margin: 4rem auto;}

figure.wp-block-embed-youtube.video-100{width: 100%;max-width: none;}
figure.wp-block-embed-youtube .wp-block-embed__wrapper { position: relative; width: 100%; }
.youtube-lazy-container { position: relative; width: 100%; aspect-ratio: 16 / 9; background: #000; border-radius: var(--border-radius); overflow: hidden; }
.youtube-placeholder { position: absolute; top: 0; left: 0; width: 100%; height: 100%; cursor: pointer; transition: transform 0.3s ease; }
.youtube-placeholder:hover { transform: scale(1.02); }
.youtube-placeholder img { width: 100%; height: 100%; object-fit: cover; transition: opacity 0.3s ease; display: block; }
.youtube-placeholder:hover img { opacity: 0.9; }
.youtube-play-button { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); opacity: 0.9; transition: all 0.3s ease; filter: drop-shadow(0 4px 8px rgba(0,0,0,0.3)); pointer-events: none; }
.youtube-placeholder:hover .youtube-play-button { opacity: 1; transform: translate(-50%, -50%) scale(1.1); }
.youtube-lazy-container iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; }

figure {margin: 0;border-radius: var(--border-radius);overflow: hidden;}
figure img {width: 100%; max-height: 450px; height: 100%; object-fit: cover; border-radius: var(--border-radius);}


@media (max-width: 768px) {
    figure.wp-block-embed-youtube { max-width: 100%; }
    .youtube-play-button svg { width: 50px; height: 36px; }
}

/***************************/
/******* SINGLE GUIDE ******/
/**************************/

.single-guide-template a{color: var(--couleur-principale);}

.single-guide-template { padding-bottom: 6rem; }
.single-guide-template img { max-width: 100%; }
.single-guide > img { width: 100%; aspect-ratio: 16 / 9; max-height: 380px; object-fit: cover; display: block; margin: 2rem 0; border-radius: var(--border-radius); }
@media (min-width: 1700px) {
    .single-guide > img { aspect-ratio: 4 / 3; max-height: none; }
}
.single-guide h1 { margin-bottom: 1rem; }
.guide-date-pastille { display: block; text-align: center; font-size: 1.25rem; color: var(--couleur-texte); background: #fff; border-radius: 10rem; padding: .4rem 1.6rem; margin: 0 auto 2rem; width: fit-content; }

/* Mise en page deux colonnes */
.single-guide-col { position: relative; display: flex; gap: 4rem; align-items: flex-start; margin-top: 4rem; }
.single-guide-col .single-guide-content { width: calc(100% - 30rem); max-width: 100%; }
.single-guide-content h3 { margin-top: 3rem; }
.single-guide-content div:not(.wp-block-column) > figure { margin-top: 2.5rem; margin-bottom: 2.5rem; }
.single-guide-content .wp-block-group.has-background { padding: 2rem; margin-top: 2.5rem; margin-bottom: 2.5rem; }
.single-guide-content img { max-width: 100%; height: auto; }
.single-guide-content iframe, .single-guide-content embed, .single-guide-content video { max-width: 100%; }
.single-guide-content table { width: 100%; max-width: 100%; display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }

/* Sommaire */
.single-guide-toc ul li::marker { content: none; display: none; }
.single-guide-toc { flex-shrink: 0; width: 26rem; position: sticky; top: 12rem; background: #fff; border-radius: var(--border-radius); border: 1px solid #e8e8e8; box-shadow: 0 2px 16px rgba(0,0,0,0.07); overflow: hidden; }
.toc-titre { font-size: 1.2rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: #fff; background: var(--couleur-principale); margin: 0; padding: 1.2rem 1.8rem; }
.toc-liste { list-style: none; margin: 0; padding: 0.8rem 0 !important; counter-reset: toc-h2; max-height: 60vh; overflow-y: auto; }
.toc-liste::-webkit-scrollbar { width: 3px; }
.toc-liste::-webkit-scrollbar-track { background: transparent; }
.toc-liste::-webkit-scrollbar-thumb { background: #ddd; border-radius: 3px; }
.toc-liste::-webkit-scrollbar-thumb:hover { background: var(--couleur-principale); }
.toc-item { line-height: 1.4; }
.toc-item--h2 { counter-increment: toc-h2; }
.toc-lien { display: flex; align-items: flex-start; gap: 1rem; font-size: 1.35rem; color: var(--couleur-texte); text-decoration: none; padding: 0.7rem 1.6rem; border-left: 3px solid transparent; transition: color 0.18s ease, border-color 0.18s ease, background 0.18s ease; }
.toc-item--h2 > .toc-lien::before { content: counter(toc-h2); display: inline-flex; align-items: center; justify-content: center; width: 2.2rem; height: 2.2rem; flex-shrink: 0; background: var(--couleur-fond); color: var(--couleur-principale); font-size: 1.1rem; font-weight: 700; border-radius: 4px; margin-top: 0.1rem; }
.toc-item--h3 { padding-left: 1.4rem; }
.toc-item--h3 > .toc-lien { font-size: 1.25rem; color: #666; gap: 0.6rem; padding-left: 5rem; padding-top: 0; padding-bottom: 0; }
.toc-item--h3 > .toc-lien::before { content: '›'; color: var(--couleur-principale); font-size: 1.4rem; line-height: 1.2; flex-shrink: 0; }
.toc-lien:hover { color: var(--couleur-principale); background: #f7f7f7; }
.toc-lien--active { color: var(--couleur-principale); font-weight: 600; border-left-color: var(--couleur-principale); background: rgba(0,0,0,0.025); }

/* Sans sommaire */
.single-guide-col.no-toc { display: block; }
.single-guide-col.no-toc .single-guide-content { max-width: 100%; width: 100%; }

/* Responsive */
@media (max-width: 950px) {
    .single-guide-col { flex-direction: column; overflow: hidden; }
    .single-guide-toc { width: 100%; position: static; }
    .single-guide-col .single-guide-content { width: 100%; }
    .toc-liste { max-height: 50vh; }
}

@media (min-width: 1024px) {
    .single-guide-col { margin-top: 6rem; }
}

/***************************/
/****** MENU MOBILE ********/
/***************************/

/* Fond blanc + K en background-image direct */
.footer-mobile-reseau {
    background-color: #fff !important;
    background-image: url('https://reseau.vertikal.fr/wp-content/uploads/sites/152/2024/09/k-gris-alpha-1.png');
    background-repeat: no-repeat;
    background-position: bottom right;
    background-size: 72vw auto;
    overflow-y: auto;
}
.footer-mobile-reseau::before { display: none; }
.footer-mobile-k { display: none; }

/* Items menu : fond transparent + séparateur */
.footer-mobile-reseau .footer-col ul li {
    background-color: transparent !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
    padding: 0  !important;
    margin: 0 !important;
    position: relative;
}
.footer-mobile-reseau .footer-col ul > li:first-child { border-top: 1px solid rgba(0, 0, 0, 0.08) !important; }

/* Liens niveau 1 */
.footer-mobile-menu-reseau ul.menu > li > a {
    color: var(--couleur-principale) !important;
    font-size: 1.8rem !important;
    font-weight: 700 !important;
    text-transform: none !important;
    letter-spacing: -0.02em;
    display: block;
    padding: 1.5rem 0 1.5rem 1.2rem !important;
    border-left: 4px solid transparent;
    transition: border-left-color 0.2s ease, padding-left 0.2s ease, color 0.2s ease;
}


/* Alignement a + toggle sur la même ligne */
.footer-mobile-reseau .footer-col ul.menu > li {
    display: flex !important;
    align-items: center;
    flex-wrap: wrap;
}
.footer-mobile-reseau .footer-col ul.menu > li > a { flex: 1; }

/* Sous-menu pleine largeur (casse le padding du li) */
.footer-mobile-reseau .menu .sub-menu {
    width: calc(100% + 4rem);
    flex-basis: calc(100% + 4rem);
    margin-left: -2rem;
    margin-right: -2rem;
}

/* Toggle submenu */
.footer-mobile-reseau .submenu-toggle {
    background: transparent;
    border: none;

    margin-right: 0 !important;
    padding: 1rem 2rem 1rem 0.5rem;
    flex-shrink: 0;
}
.footer-mobile-reseau .submenu-toggle i {
    color: var(--couleur-principale) !important;
    font-size: 2rem !important;
    font-weight: 900;
    transform: rotate(0deg) !important;
    transition: transform 0.25s ease;
}
.footer-mobile-reseau .submenu-toggle.open i { transform: rotate(90deg) !important; }

/* Sous-menus */
.footer-mobile-reseau .menu .sub-menu li {
    background-color: rgba(0,0,0,0.03) !important;
    border-bottom: none !important;
    padding: 0 2rem !important;
}
.footer-mobile-reseau .menu .sub-menu li:last-child { border-bottom: none !important; }
.footer-mobile-reseau .sub-menu .menu-item > a {
    font-size: 1.5rem;
    color: var(--couleur-principale);
    padding: 1rem 0 !important;
    display: block;
    font-weight: 700;
    text-transform: inherit;
}

/* Partie basse : socials */
.footer-mobile-bottom-bloc {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
    padding: 3rem 2rem 6rem;
    position: relative;
    z-index: 1;
}

/* Icônes sociales — rond fond couleur principale, icône blanche */
.footer-mobile-bottom-bloc .footer-social {
    background-color: var(--couleur-principale);
    color: #fff !important;
    border-radius: 50%;
    width: 4.2rem;
    height: 4.2rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.6rem;
}

.footer-mobile-bottom-bloc .footer-social *{color: white;}

/* Navigation précédent / suivant */
.post-navigation { justify-content: space-between; align-items: stretch; gap: 1.5rem; margin-top: 5rem; margin-bottom: 2rem; }

.previous-post,
.next-post { flex: 1; display: flex; flex-direction: column; gap: 0.6rem; background-color: var(--couleur-fond-light); border-radius: var(--border-radius); padding: 2rem 2.5rem; border: 2px solid transparent; transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease; text-decoration: none; }

.previous-post:hover,
.next-post:hover { border-color: var(--couleur-principale); transform: translateY(-2px); }

.next-post { align-items: flex-end; text-align: right; }

/* Si seul "suivant" est présent, le pousser à droite */
.post-navigation > .next-post:first-child { margin-left: auto; max-width: calc(50% - 0.75rem); }

.post-navigation-btn { font-size: 1.2rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.06em; color: var(--couleur-principale); text-decoration: none; }

.post-navigation-btn i { font-size: 1rem; }

.post-navigation-autre-name { font-size: 1.5rem; font-weight: 600; color: var(--couleur-texte); text-decoration: none; line-height: 1.4; transition: color 0.2s ease; }

.previous-post:hover .post-navigation-autre-name,
.next-post:hover .post-navigation-autre-name { color: var(--couleur-principale); }

@media (max-width: 600px) {
    .post-navigation { flex-direction: column; }
    .next-post { align-items: flex-start; text-align: left; }
}

/* Nos autres guides */
.section-autres-articles { margin-top: 5rem; }

.section-autres-articles > h3 { margin-top: 0; margin-bottom: 3rem; }

.autres-articles-list { gap: 2rem; align-items: stretch; }

.autre-article-vignette { flex-direction: column; border-radius: var(--border-radius); overflow: hidden; background-color: #fff; width: 100%; transition: transform 0.3s ease; }

.autre-article-vignette:hover { transform: translateY(-3px); }

.autre-article-thumbnail { display: block; aspect-ratio: 16 / 9; overflow: hidden; }

.autre-article-thumbnail img { width: 100%; height: 100%; object-fit: cover; border-radius: 0; transition: transform 0.4s ease; }

.autre-article-vignette:hover .autre-article-thumbnail img { transform: scale(1.05); }

.autre-article-vignette h3 { font-size: 1.5rem; font-weight: 700; margin: 0; padding: 1.8rem 2rem 0.5rem; }

.autre-article-vignette h3 a { color: var(--couleur-secondaire); text-decoration: none; transition: color 0.2s ease; }

.autre-article-vignette:hover h3 a { color: var(--couleur-principale); }

.autre-article-vignette .post-date { font-size: 1.2rem; color: #999; margin: 0; padding: 0 2rem 2rem; font-weight: 300; }

@media (min-width: 600px) {
    .autre-article-vignette { width: calc(50% - 1rem); }
}

@media (min-width: 900px) {
    .autre-article-vignette { width: calc(33.333% - 1.334rem); }
}


/* ================================================
    Tableaux
   ================================================ */
table { width: 100% !important; border-collapse: separate; border-spacing: 0; margin: 1.5rem 0; font-size: 14px; }

table thead th { padding: 14px 16px; text-align: left; font-weight: 700; font-size: 13px; text-transform: uppercase; letter-spacing: 0.04em; border: none; color: #fff; background-color: var(--couleur-principale); }
table thead th span { color: #fff; font-weight: bold !important; }
table thead th b, table thead th p, table thead em { color: #fff; margin: 0; }

/* Coins arrondis sur les cellules d'angle */
table thead tr:first-child th:first-child { border-top-left-radius: 8px; }
table thead tr:first-child th:last-child  { border-top-right-radius: 8px; }
table tbody tr:last-child td:first-child  { border-bottom-left-radius: 8px; }
table tbody tr:last-child td:last-child   { border-bottom-right-radius: 8px; }

table tbody tr:nth-child(odd) td  { background-color: #fff; }
table tbody tr:nth-child(even) td { background-color: var(--couleur-fond); }
table tbody tr:hover td { background-color: rgba(233, 101, 49, 0.07); transition: background-color 0.2s ease; }
table td { padding: 12px 16px; border-bottom: 1px solid #e8e8e8; color: var(--couleur-texte); vertical-align: middle; line-height: 1.5; }
table tbody tr:last-child td { border-bottom: none; }
table td:first-child { color: var(--couleur-principale); }

@media (max-width: 768px) {
    table { font-size: 13px; display: block; overflow-x: auto; -webkit-overflow-scrolling: touch; }
    table thead th,
    table td { padding: 10px 12px; }
}

/* ================================================
    Tableaux Gutenberg (.wp-block-table) — override des styles natifs du bloc
   ================================================ */
.wp-block-table { overflow: hidden; border-radius: 8px; margin: 1.5rem 0; width: 100% !important; max-width: 100% !important; }
.wp-block-table table { width: 100% !important; border-collapse: separate !important; border-spacing: 0 !important; margin: 0; font-size: 14px; }

/* Reset des bordures Gutenberg par défaut */
.wp-block-table thead { border-bottom: none !important; }
.wp-block-table td,
.wp-block-table th { border: none !important; }

/* Reset du word-break Gutenberg sur les tableaux à largeur fixe */
.wp-block-table .has-fixed-layout td,
.wp-block-table .has-fixed-layout th { word-break: normal !important; overflow-wrap: normal !important; }

/* En-tête — fond sur th directement pour que border-radius de cellule fonctionne */
.wp-block-table thead th { padding: 14px 16px !important; text-align: left !important; font-weight: 700 !important; font-size: 13px !important; text-transform: uppercase !important; letter-spacing: 0.04em !important; border: none !important; color: #fff !important; background-color: var(--couleur-principale) !important; }
.wp-block-table thead th span,
.wp-block-table thead th b,
.wp-block-table thead th p { color: #fff !important; font-weight: bold !important; margin: 0; }

/* Coins arrondis sur les cellules d'angle */
.wp-block-table thead tr:first-child th:first-child { border-top-left-radius: 8px; }
.wp-block-table thead tr:first-child th:last-child  { border-top-right-radius: 8px; }
.wp-block-table tbody tr:last-child td:first-child  { border-bottom-left-radius: 8px; }
.wp-block-table tbody tr:last-child td:last-child   { border-bottom-right-radius: 8px; }

/* Corps */
.wp-block-table tbody tr:nth-child(odd) td  { background-color: #fff; }
.wp-block-table tbody tr:nth-child(even) td { background-color: var(--couleur-fond); }
.wp-block-table tbody tr:hover td { background-color: rgba(233, 101, 49, 0.07); transition: background-color 0.2s ease; }
.wp-block-table td { padding: 12px 16px !important; border-bottom: 1px solid #e8e8e8 !important; color: var(--couleur-texte); vertical-align: middle; line-height: 1.5; }
.wp-block-table tbody tr:last-child td { border-bottom: none !important; }
.wp-block-table td:first-child { color: var(--couleur-principale); }

/* Pied de tableau */
.wp-block-table tfoot td { padding: 12px 16px !important; border-top: 2px solid #e8e8e8 !important; border-bottom: none !important; background-color: var(--couleur-fond); font-weight: 600; }
.wp-block-table tfoot tr:last-child td:first-child { border-bottom-left-radius: 8px; }
.wp-block-table tfoot tr:last-child td:last-child  { border-bottom-right-radius: 8px; }

@media (max-width: 768px) {
    .wp-block-table { overflow-x: auto; }
    .wp-block-table thead th,
    .wp-block-table td { padding: 10px 12px !important; font-size: 13px; }
}


/* ================================================
    Accordéon — cartes arrondies
   ================================================ */
.container-bloc-accordeon { display: flex; flex-direction: column; width: 100%; gap: 1rem; }

.container-bloc-accordeon h2 { margin: 0;  }

/* Carte par item */
.container-bloc-accordeon .accordeon-section { border-radius: var(--border-radius); overflow: hidden; }

/* Bouton toggle */
.container-bloc-accordeon .accordeon-toggle { width: 100%; display: block; position: relative; padding: 1.8rem 6rem 1.8rem 2.5rem; background-color: var(--couleur-fond-light); color: var(--couleur-texte); font-size: 1.6rem; font-weight: 600; border: none; cursor: pointer; text-align: left; transition: background-color 0.3s ease, color 0.3s ease; border-radius: var(--border-radius); margin: 0; }

.container-bloc-accordeon .accordeon-toggle:hover { background-color: var(--couleur-principale); color: white; }

.container-bloc-accordeon .accordeon-toggle:hover * { color: white; }

.container-bloc-accordeon .accordeon-toggle:hover::after { background-color: rgba(255, 255, 255, 0.25); color: white; }

.container-bloc-accordeon .accordeon-toggle.open { background-color: var(--couleur-principale); color: #fff; border-radius: var(--border-radius) var(--border-radius) 0 0; }

.container-bloc-accordeon .accordeon-toggle.open * { color: #fff; }

/* Indicateur : cercle + / − positionné en absolu à droite */
.container-bloc-accordeon .accordeon-toggle::after { content: '+'; position: absolute; right: 2.5rem; top: 50%; transform: translateY(-50%); width: 3rem; height: 3rem; border-radius: 50%; background-color: var(--couleur-principale); color: #fff; font-size: 2.2rem; font-weight: 300; line-height: 3rem; text-align: center; transition: background-color 0.3s ease; }

.container-bloc-accordeon .accordeon-toggle.open::after { content: '−'; background-color: rgba(255, 255, 255, 0.25); }

/* Contenu */
.container-bloc-accordeon .accordeon-content { display: none; overflow: hidden; padding: 2rem 2.5rem; background-color: #fff; }

.container-bloc-accordeon .accordeon-content.collapsed { height: 0; padding: 0; }

.container-bloc-accordeon .accordeon-content p:last-child,
.container-bloc-accordeon .accordeon-content ul:last-child { margin-bottom: 0; }

.container-bloc-accordeon .accordeon-content .btn-cta { margin-top: 1.5rem; }

@media (max-width: 768px) {
    .container-bloc-accordeon { overflow: hidden; width: auto !important; max-width: 100vw; box-sizing: border-box; }
    .container-bloc-accordeon .accordeon-section { min-width: 0; width: 100%; max-width: 100%; box-sizing: border-box; }
    .container-bloc-accordeon .accordeon-toggle { box-sizing: border-box; min-width: 0; width: 100%; max-width: 100%; padding: 1.4rem 4.5rem 1.4rem 1.5rem; font-size: 1.4rem; }
    .container-bloc-accordeon .accordeon-toggle::after { width: 2.4rem; height: 2.4rem; line-height: 2.4rem; font-size: 1.8rem; right: 1rem; }
    .container-bloc-accordeon .accordeon-content { box-sizing: border-box; padding: 1.5rem; max-width: 100%; }
}

@media (min-width: 1024px) {
    .container-bloc-accordeon { gap: 1.2rem; }
    .container-bloc-accordeon .accordeon-toggle { padding: 2rem 3rem; font-size: 1.7rem; }
    .container-bloc-accordeon .accordeon-content { padding: 2.5rem 3rem; }
}
