/* Pages « Entreprise de nettoyage à … » — mêmes couleurs et typographies que la page d'accueil */
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#F4F4F8;color:#1A1640;font-family:'Schibsted Grotesk',system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:#C4161C;text-decoration:none}
a:hover{color:#1A1640}
img,svg{display:block}
::selection{background:#FF6B6B;color:#1A1640}
:focus-visible{outline:2px solid #C4161C;outline-offset:3px}
[hidden]{display:none!important}

.wrap{max-width:1280px;margin:0 auto}
.sec{padding:clamp(64px,9vw,128px) clamp(20px,5vw,72px)}
.bg-light{background:#F4F4F8}
.bg-white{background:#FFFFFF}
.bg-navy{background:#2C2463;color:#EEEDF6}
.eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 20px;font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:#C4161C}
.eyebrow::before{content:"";width:28px;height:1px;background:currentColor;flex:none}
.bg-navy .eyebrow,.hero .eyebrow{color:#FF6B6B}
.h2{margin:0;font-size:clamp(32px,4.2vw,58px);line-height:1.02;letter-spacing:-.04em;font-weight:600;text-wrap:balance}
.bg-navy .h2{color:#FFFFFF}
.it{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400;color:#C4161C}
.bg-navy .it,.hero .it{color:#FF3B3B}
.txt{margin:0;font-size:16.5px;line-height:1.7;color:#3D3B57;text-wrap:pretty}
.bg-navy .txt{color:#B5B3D0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:56px;padding:0 24px;border-radius:14px;font-weight:600;font-size:16px;transition:background .25s,color .25s,border-color .25s,transform .25s}
.btn:hover{transform:translateY(-2px)}
.btn-red{background:#C4161C;color:#FFFFFF}.btn-red:hover{background:#A51218;color:#FFFFFF}
.btn-ghost{border:1px solid rgba(255,255,255,.45);color:#FFFFFF}.btn-ghost:hover{border-color:#FFFFFF;color:#FFFFFF}
.btn-ink{background:#1A1640;color:#FFFFFF}.btn-ink:hover{background:#C4161C;color:#FFFFFF}

/* En-tête */
.site-head{position:sticky;top:0;z-index:60;height:72px;display:flex;align-items:center;gap:28px;padding:0 clamp(16px,4vw,56px);background:#05090C;color:#FFFFFF}
.site-nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:500}
.site-nav a{color:#CFCEE0}.site-nav a:hover{color:#FFFFFF}
.tel{font-size:14px;font-weight:600;color:#FFFFFF;font-variant-numeric:tabular-nums}
.tel:hover{color:#FF6B6B}
.head-cta{display:inline-flex;align-items:center;height:44px;padding:0 18px;border-radius:12px;background:#C4161C;color:#FFFFFF;font-size:14px;font-weight:600}
.head-cta:hover{background:#A51218;color:#FFFFFF}
.burger{display:none;width:44px;height:44px;border-radius:12px;border:1px solid rgba(255,255,255,.25);background:transparent;place-items:center;cursor:pointer;color:#FFFFFF;padding:0}
.mobile-menu{position:fixed;top:72px;left:0;right:0;z-index:59;display:flex;flex-direction:column;padding:8px clamp(16px,4vw,56px) 24px;background:#05090C;border-top:1px solid rgba(255,255,255,.08)}
.mobile-menu a{min-height:52px;display:flex;align-items:center;font-size:20px;font-weight:600;color:#FFFFFF}
.mobile-menu a.call{margin-top:16px;height:56px;justify-content:center;border-radius:14px;border:1px solid rgba(255,255,255,.3);font-size:16px}
@media (max-width:980px){.site-nav,.tel{display:none}.burger{display:grid}}

/* Fil d'Ariane */
.crumbs{margin:0 0 28px;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px;font-size:13px;color:#B5B3D0}
.crumbs a{color:#CFCEE0}.crumbs a:hover{color:#FFFFFF}
.crumbs li+li::before{content:"›";margin-right:8px;color:#8D8BA8}

/* Bandeau d'ouverture */
.hero{background:#1A1640;color:#FFFFFF;padding:clamp(48px,7vw,96px) clamp(20px,5vw,72px)}
.hero-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:clamp(32px,5vw,72px);align-items:center}
.hero h1{margin:0;font-size:clamp(40px,5.6vw,80px);line-height:.98;letter-spacing:-.045em;font-weight:600;text-wrap:balance}
.hero .lead{margin:24px 0 0;max-width:600px;font-size:clamp(17px,1.4vw,20px);line-height:1.6;color:#E2E1EC;text-wrap:pretty}
.hero .ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.hero .trust{display:flex;flex-wrap:wrap;gap:8px 20px;margin:28px 0 0;padding:0;list-style:none;font-size:14px;color:#CFCEE0}
.hero .trust li{display:flex;align-items:center;gap:8px}
.hero .trust li::before{content:"";width:6px;height:6px;border-radius:50%;background:#FF6B6B}
.hero figure{margin:0;position:relative;border-radius:24px;overflow:hidden;aspect-ratio:4/3;background:#2C2463}
.hero figure img{width:100%;height:100%;object-fit:cover}
.hero figcaption{position:absolute;left:16px;bottom:16px;padding:5px 10px;border-radius:999px;background:rgba(26,22,64,.75);color:#FFFFFF;font-size:11px;font-weight:600;letter-spacing:.04em}

/* Prestations */
.svc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:16px;margin-top:clamp(32px,4vw,48px)}
.svc{display:flex;flex-direction:column;gap:10px;padding:26px;border-radius:20px;border:1px solid #E6E5EE;background:#F4F4F8}
.svc .n{font-size:13px;font-weight:700;color:#C4161C;font-variant-numeric:tabular-nums}
.svc h3{margin:0;font-size:21px;line-height:1.2;font-weight:600;letter-spacing:-.02em}
.svc p{margin:0;font-size:15.5px;line-height:1.6;color:#3D3B57;text-wrap:pretty}
.svc .more{margin-top:auto;padding-top:8px;min-height:44px;display:flex;align-items:center;font-size:15px;font-weight:600;color:#C4161C}
.svc .more:hover{color:#1A1640}

/* Deux colonnes */
.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:clamp(32px,5vw,80px);align-items:start}
.points{margin:24px 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:14px}
.points li{display:flex;gap:12px;font-size:16px;line-height:1.55;color:#3D3B57}
.points li::before{content:"";flex:none;width:8px;height:8px;margin-top:8px;border-radius:50%;background:#C4161C}
.bg-navy .points li{color:#B5B3D0}

/* Communes */
.towns{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0 0;padding:0;list-style:none}
.towns li{padding:8px 14px;border-radius:999px;background:#FFFFFF;border:1px solid #D4D3E0;font-size:14px;font-weight:500;color:#1A1640}
.towns li.link{padding:0;border-color:#1A1640}
.towns li.link a{display:block;padding:8px 14px;color:#1A1640}
.towns li.link a:hover{color:#C4161C}
.other-cities{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:28px;font-size:15px;font-weight:600}

/* FAQ */
.faq details{border-bottom:1px solid #DFDEE8}
.faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:68px;padding:16px 0;font-size:clamp(17px,1.4vw,19px);font-weight:600;color:#1A1640;cursor:pointer}
.faq summary::-webkit-details-marker{display:none}
.faq .plus{flex-shrink:0;width:32px;height:32px;border-radius:50%;border:1px solid #D4D3E0;display:grid;place-items:center;font-size:18px;color:#C4161C;transition:transform .3s}
.faq details[open] .plus{transform:rotate(45deg)}
.faq details p{margin:0;padding:0 48px 22px 0;font-size:16px;line-height:1.65;color:#3D3B57}

/* Appel à l'action */
.cta-band{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px}
.cta-band .btns{display:flex;flex-wrap:wrap;gap:10px}

/* Pied de page */
.foot{background:#120F2E;color:#C9C7DD;padding:clamp(56px,7vw,96px) clamp(20px,5vw,72px) 56px}
.foot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:clamp(32px,4vw,56px);padding-bottom:clamp(36px,5vw,56px)}
.foot-col{display:flex;flex-direction:column;gap:4px}
.foot-col .t{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#9896B4;margin-bottom:10px}
.foot-col a{min-height:32px;display:flex;align-items:center;font-size:14.5px;color:#EEEDF6}
.foot-col a:hover{color:#FF6B6B}
.foot-col a[aria-current="page"]{color:#FF6B6B;font-weight:600}
.legal{display:flex;flex-wrap:wrap;justify-content:space-between;gap:16px;padding-top:24px;border-top:1px solid rgba(238,237,246,.12);font-size:13px;color:#9896B4}
.legal a{color:#C9C7DD}.legal a:hover{color:#FFFFFF}

@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}
