:root{--gt:#467512;--gtl:#5c9a1b}
/* Menu principal i'énergie – partagé par toutes les pages */
.sn{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(255,255,255,.97);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid #E2E4DE;font-family:'Outfit',sans-serif;line-height:1.2}
.sn *{box-sizing:border-box}
.sn-inner{max-width:1200px;margin:0 auto;padding:0 24px;height:80px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.sn-logo{display:flex;align-items:center;flex-shrink:0}
.sn-logo img{height:70px;width:auto;display:block}
.sn-list{display:flex;align-items:center;gap:4px;list-style:none;margin:0;padding:0}
.sn-item{position:relative;margin:0;padding:0}
.sn-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--gt);padding:6px 13px;border-radius:20px;border:1.5px solid #7CC030;text-decoration:none;background:none;transition:all .2s;white-space:nowrap;cursor:pointer;font-family:inherit}
.sn-link:hover,.sn-item:focus-within>.sn-link,.sn-item:hover>.sn-link{background:#7CC030;color:#1E1E1E}
.sn-link.is-active,.sn-item.is-active>.sn-link{background:#7CC030;color:#1E1E1E}
.sn-caret{width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);display:inline-block}
.sn-sub{display:none;position:absolute;top:100%;left:0;min-width:250px;padding-top:10px;z-index:1001}
.sn-sub ul{list-style:none;margin:0;padding:8px;background:#fff;border:1px solid #E2E4DE;border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.12)}
.sn-sub li{margin:0;padding:0}
.sn-sub a{display:block;padding:10px 14px;border-radius:8px;font-size:14px;font-weight:500;color:#474747;text-decoration:none;white-space:nowrap}
.sn-sub a:hover,.sn-sub a:focus,.sn-sub a.is-active{background:rgba(124,192,48,.12);color:#467512}
.sn-item:hover>.sn-sub,.sn-item:focus-within>.sn-sub,.sn-item.open>.sn-sub{display:block}
.sn-sub.sn-cols ul{display:grid;grid-template-columns:1fr 1fr;min-width:400px}
.sn-cta{display:inline-block;background:#7CC030;color:#1E1E1E;font-size:14px;font-weight:700;padding:9px 18px;border-radius:8px;text-decoration:none;margin-left:4px;transition:background .2s;white-space:nowrap}
.sn-cta:hover{background:#467512;color:#fff}
.sn-burger{display:none;flex-direction:column;gap:5px;padding:10px;border-radius:8px;background:none;border:0;cursor:pointer}
.sn-burger span{width:22px;height:2px;background:#474747;border-radius:2px;display:block}
.sn-panel{display:none;position:fixed;top:80px;left:0;right:0;bottom:0;overflow-y:auto;background:#fff;padding:12px 24px 32px;z-index:999}
.sn-panel.open{display:block}
.sn-panel ul{list-style:none;margin:0;padding:0}
.sn-panel .sn-row{display:flex;align-items:stretch;border-bottom:1px solid #E2E4DE}
.sn-panel .sn-row>a{flex:1;display:block;padding:15px 4px;font-size:16px;font-weight:600;color:#474747;text-decoration:none}
.sn-panel .sn-row>a.is-active{color:#467512}
.sn-panel .sn-tg{width:48px;background:none;border:0;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--gt)}
.sn-panel .sn-tg .sn-caret{width:9px;height:9px}
.sn-panel .sn-tg[aria-expanded="true"] .sn-caret{transform:rotate(225deg) translateY(-2px)}
.sn-panel .sn-subm{display:none;padding:4px 0 10px 14px;border-bottom:1px solid #E2E4DE}
.sn-panel .sn-subm.open{display:block}
.sn-panel .sn-subm a{display:block;padding:10px 4px;font-size:15px;color:#5A5A5A;text-decoration:none}
.sn-panel .sn-subm a.is-active{color:#467512;font-weight:600}
.sn-panel .sn-cta{display:block;text-align:center;margin:20px 0 0;padding:14px 18px;font-size:16px}
.sn-pad{padding-top:80px}
@media(max-width:1080px){
  .sn-list,.sn-inner>.sn-cta{display:none}
  .sn-burger{display:flex}
}
@media(min-width:1081px){.sn-panel{display:none!important}}
/* Bouton Simulateur : violet pour ressortir */
.sn-link[href*="kiwat.fr"]{background:#6D3FD0;border-color:#6D3FD0;color:#fff}
.sn-link[href*="kiwat.fr"]:hover,.sn-item:hover>.sn-link[href*="kiwat.fr"]{background:#5a2fb5;border-color:#5a2fb5;color:#fff}
.sn-panel .sn-row>a[href*="kiwat.fr"]{color:#6D3FD0}

/* Pied de page et blocs de maillage partagés */
.site-foot{background:#1E1E1E;color:rgba(255,255,255,.75);padding:40px 24px;font-size:14px;line-height:1.6;font-family:'DM Sans',sans-serif;margin:0}
.site-foot .sf-in{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:28px}
.site-foot h2{font-family:'Outfit',sans-serif;color:#fff;font-size:15px;font-weight:700;line-height:1.6;letter-spacing:normal;margin:0 0 10px}
.site-foot p{color:rgba(255,255,255,.75);font-size:14px;margin:0}
.site-foot a{display:block;color:rgba(255,255,255,.75);text-decoration:none;margin-bottom:6px}
.site-foot a:hover{color:#7CC030}
.site-foot .legal{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.15);padding-top:18px;font-size:13px}
.rel{max-width:1000px;margin:0 auto;padding:40px 24px;font-family:'DM Sans',sans-serif}
.rel h2{font-family:'Outfit',sans-serif;font-size:22px;font-weight:800;color:#1E1E1E;margin:0 0 16px}
.rel-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:0 0 28px}
.rel-card{display:block;border:2px solid #E2E4DE;border-radius:12px;padding:18px 20px;text-decoration:none;color:#474747;background:#fff;transition:border-color .2s}
.rel-card:hover{border-color:#7CC030}
.rel-card .k{font-family:'Outfit',sans-serif;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#467512;margin-bottom:6px}
.rel-card p{font-size:14px;color:#5A5A5A;margin:8px 0 0;line-height:1.5}
.rel-card .t{font-family:'Outfit',sans-serif;font-weight:700;font-size:16px;line-height:1.35;color:#474747}
a.zone-card{text-decoration:none;color:inherit;display:block}
a.zone-card:hover{border-color:#7CC030;color:#467512}

/* Bandeau d'en-tête illustré (pages hors blog) */
body.hero-sketch header,body.hero-sketch .profil-detail-hero{background:linear-gradient(rgba(255,255,255,.84),rgba(255,255,255,.84)),url('hero-pages.webp') center/cover no-repeat;color:#1E1E1E;border-bottom:1px solid #E2E4DE}
body.hero-sketch .profil-detail-hero{background:linear-gradient(90deg,rgba(255,255,255,.94) 0%,rgba(255,255,255,.80) 50%,rgba(255,255,255,.60) 100%),url('hero-pages.webp') center/cover no-repeat}
@media(max-width:900px){body.hero-sketch .profil-detail-hero{background:linear-gradient(rgba(255,255,255,.86),rgba(255,255,255,.86)),url('hero-pages.webp') center/cover no-repeat}}
body.hero-sketch header h1,body.hero-sketch .profil-detail-hero h1{color:#1E1E1E!important}
body.hero-sketch .profil-detail-hero h1 em{color:var(--gtl)!important}
body.hero-sketch header p,body.hero-sketch .profil-detail-hero p{color:#5A5A5A!important;opacity:1!important}
body.hero-sketch .profil-detail-hero .section-label{color:#467512}
body.hero-sketch .profil-detail-hero .back-btn{background:rgba(255,255,255,.7)!important;border-color:#E2E4DE!important;color:#5A5A5A!important}
body.hero-sketch .profil-detail-hero .stat-card:not(.accent){background:rgba(255,255,255,.5);border-color:rgba(226,228,222,.7);backdrop-filter:blur(2px)}
body.hero-sketch .profil-detail-hero .stat-card.accent{background:rgba(124,192,48,.5);border-color:rgba(124,192,48,.6);backdrop-filter:blur(2px)}
body.hero-sketch .profil-detail-hero .stat-card.accent .stat-num,body.hero-sketch .profil-detail-hero .stat-card.accent .stat-label{color:#1E1E1E}
body.hero-sketch .profil-detail-hero .stat-card:not(.accent) .stat-label{color:#5A5A5A}

/* Colonne centrale élargie (toutes les pages) */
body .container,body .v-wrap,body .art-wrap,body .wrap{max-width:1140px}
body .blog-article-full{max-width:1140px!important}
body.hero-sketch .v-sec p{max-width:1000px}

/* Logo texte du pied de page (remplace l'ancien SVG invalide) */
.footer-logo .wm{font-family:'Outfit',sans-serif;font-weight:700;font-size:28px;line-height:28px;letter-spacing:-.5px;color:#999999;display:inline-block}
.footer-logo .wm b{color:#7CC030;font-weight:700}

/* Tableaux : défilement horizontal sur petits écrans */
.tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;max-width:100%}

/* Polices auto-hébergées (Outfit + DM Sans) : plus d'appel à Google Fonts */
@font-face{font-family:'Outfit';font-style:normal;font-weight:100 900;font-display:swap;src:url('fonts/outfit-latin-wght-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:100 1000;font-display:swap;src:url('fonts/dm-sans-latin-wght-normal.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'DM Sans';font-style:italic;font-weight:100 1000;font-display:swap;src:url('fonts/dm-sans-latin-wght-italic.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* Bandeau de consentement aux cookies */
#ck-banner{position:fixed;left:16px;right:16px;bottom:16px;z-index:10000;max-width:780px;margin:0 auto;background:#fff;border:1px solid #d9ddd2;border-radius:14px;box-shadow:0 10px 40px rgba(0,0,0,.2);padding:18px 20px;display:flex;gap:16px;align-items:center;flex-wrap:wrap;font-family:'DM Sans',sans-serif}
#ck-banner[hidden]{display:none}
#ck-banner p{margin:0;flex:1 1 320px;font-size:14px;line-height:1.55;color:#333;text-align:left}
#ck-banner p a{color:#3f6f12;text-decoration:underline}
#ck-banner .ck-btns{display:flex;gap:10px;flex:0 0 auto}
#ck-banner button{font:700 14px 'Outfit',sans-serif;padding:10px 18px;min-height:44px;border-radius:8px;border:2px solid #1E1E1E;background:#fff;color:#1E1E1E;cursor:pointer}
#ck-banner button:hover,#ck-banner button:focus-visible{background:#1E1E1E;color:#fff}
@media(max-width:560px){#ck-banner .ck-btns{width:100%}#ck-banner button{flex:1}}
.ck-manage{background:none;border:0;padding:0;margin:0;font:inherit;color:inherit;text-decoration:underline;cursor:pointer}

/* Message d'erreur du formulaire de devis */
.form-error{background:#fff4f4;border:1px solid #e3b0b0;color:#7a1f1f;border-radius:8px;padding:12px 14px;font-size:14px;line-height:1.5;margin:12px 0}
.form-error a{color:#7a1f1f;font-weight:700;text-decoration:underline}

/* Accessibilité : lien d'évitement et texte réservé aux lecteurs d'écran */
.skip-link{position:absolute;left:-9999px;top:0;z-index:3000;background:#1E1E1E;color:#fff;padding:12px 18px;border-radius:0 0 8px 0;font-weight:700;text-decoration:none}
.skip-link:focus{left:0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
main:focus{outline:none}

/* Fil d'Ariane, synthèse, FAQ et sources des articles et pages de contenu */
.art-crumb{font-family:'DM Sans',sans-serif;font-size:13px;line-height:1.5;color:#555;margin:0 0 18px}
.art-crumb ol{list-style:none;display:flex;flex-wrap:wrap;gap:2px 8px;padding:0;margin:0}
.art-crumb li{margin:0;padding:0;line-height:1.5;display:inline-flex;align-items:center;gap:8px}
.art-crumb li+li::before{content:"\203A";color:#767676}
.art-crumb a{color:#467512;text-decoration:underline;text-underline-offset:2px}
.art-crumb [aria-current]{color:#333}
.art-by{display:block;margin-top:6px}
.art-by a{color:#467512;text-decoration:underline;text-underline-offset:2px;font-weight:600}
.tldr{background:#f6f8f3;border:1px solid #e5e7e0;border-left:4px solid #7CC030;border-radius:12px;padding:20px 24px 14px;margin:0 0 32px}
.tldr h2{font-family:'Outfit',sans-serif;font-size:18px;font-weight:700;color:#111;margin:0 0 10px;line-height:1.3}
.tldr ul{margin:0;padding-left:20px}
.tldr li{margin:0 0 8px;line-height:1.6;font-size:15px;color:#333}
.art-faq{margin-top:40px}
.art-faq h2,.art-src h2{font-family:'Outfit',sans-serif;font-size:24px;font-weight:700;color:#111;margin:0 0 16px;line-height:1.3}
.art-faq h3{font-family:'Outfit',sans-serif;font-size:17px;font-weight:700;color:#111;margin:20px 0 6px;line-height:1.4}
.art-faq p{margin:0 0 12px;line-height:1.7}
.art-src{border-top:1px solid #e5e7e0;margin-top:40px;padding-top:24px}
.art-src ul{margin:0 0 12px;padding-left:20px}
.art-src li{margin:0 0 8px;font-size:14.5px;line-height:1.6;color:#333}
.art-src a{color:#467512;text-decoration:underline;text-underline-offset:2px;font-weight:600}
.art-src .n{font-size:13px;color:#555;margin:0;line-height:1.6}

/* Bandeau fil d'Ariane (pages de services, zones et FAQ) */
.crumb-bar{background:#fff;border-bottom:1px solid #E2E4DE;padding:10px 24px;font-family:'DM Sans',sans-serif;font-size:13px;line-height:1.5;color:#666}
.crumb-bar ol{list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:2px 12px;margin:0;padding:0}
.crumb-bar li{display:inline-flex;align-items:center;gap:12px;margin:0;padding:0;line-height:1.5}
.crumb-bar li+li::before{content:"\203A";color:#767676}
.crumb-bar a{color:#467512;text-decoration:none;font-weight:600}
.crumb-bar a:hover{text-decoration:underline}
.crumb-bar [aria-current]{color:#666}

/* Fiche auteur (page « Qui sommes-nous ? ») */
.author-card{margin:28px 0 0;padding:20px 22px;border:1px solid #e5e7e0;border-left:4px solid #7CC030;border-radius:12px;background:#f6f8f3}
.author-card h2{font-family:'Outfit',sans-serif;font-size:20px;font-weight:700;color:#111;margin:0 0 2px;line-height:1.3}
.author-card .role{font-family:'Outfit',sans-serif;font-size:14px;font-weight:600;color:#467512;margin:0 0 10px}
.author-card p{font-size:15px;line-height:1.7;color:#333;margin:0 0 10px}
.author-card p:last-child{margin-bottom:0}
.author-card a{color:#467512;font-weight:600;text-decoration:underline;text-underline-offset:2px}
