/* ============================================================
   Allivo — feuille de style des pages sectorielles.
   Sous-ensemble du design system de index.html (même tokens,
   mêmes composants) pour garder une identité visuelle unique.
   ============================================================ */

:root{
  --black:#1d1d1f;
  --gray:#6e6e73;
  --gray-2:#86868b;
  --tile:#f5f5f7;
  --line:#d2d2d7;
  --line-soft:#e8e8ed;
  --orange:#e8551f;
  --orange-dark:#cf4715;
  --green:#1d7a3e;
  --r-tile:22px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  color:var(--black);background:#fff;line-height:1.6;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
img{max-width:100%}
a{text-decoration:none;color:inherit}
.container{max-width:1040px;margin:0 auto;padding:0 24px}

.tlink{color:var(--orange);font-weight:400;transition:.15s}
.tlink:hover{text-decoration:underline}
.tlink::after{content:" ›"}

/* ---------- NAV ---------- */
nav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.82);backdrop-filter:saturate(1.8) blur(20px);border-bottom:1px solid var(--line-soft)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;height:52px;max-width:1040px;margin:0 auto;padding:0 24px}
.logo{display:flex;align-items:center;gap:8px;font-weight:600;font-size:1.05rem;color:var(--black);letter-spacing:-.01em}
.logo svg{width:17px;height:17px}
.nav-links{display:flex;gap:32px;align-items:center;font-size:.82rem;color:#424245;font-weight:400}
.nav-links a{transition:.15s;opacity:.85}
.nav-links a:hover{opacity:1;color:var(--black)}
.nav-cta{font-size:.8rem;background:var(--orange);color:#fff;padding:6px 14px;border-radius:980px;font-weight:400;transition:.15s}
.nav-cta:hover{background:var(--orange-dark)}
.burger{display:none;background:none;border:none;color:var(--black);cursor:pointer;padding:6px}
.burger svg{width:20px;height:20px}

/* ---------- BOUTONS ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:400;border-radius:980px;padding:13px 28px;transition:.18s;cursor:pointer;border:none;font-size:1.02rem;font-family:inherit}
.btn-primary{background:var(--orange);color:#fff}
.btn-primary:hover{background:var(--orange-dark)}
.btn-quiet{background:var(--tile);color:var(--black)}
.btn-quiet:hover{background:#ebebf0}
.btn-light{background:#fff;color:var(--black)}
.btn-light:hover{background:#f0f0f2}

/* ---------- HERO ---------- */
header{padding:88px 0 76px;text-align:center}
.kicker{font-size:.86rem;color:var(--orange);font-weight:500;letter-spacing:.01em;margin-bottom:16px}
h1{font-size:clamp(2.2rem,5vw,3.5rem);line-height:1.08;font-weight:700;letter-spacing:-.022em;color:var(--black)}
.hero-sub{font-size:clamp(1.08rem,1.9vw,1.3rem);color:var(--gray);max-width:660px;margin:22px auto 0;line-height:1.5;font-weight:400}
.hero-ctas{display:flex;gap:26px;justify-content:center;align-items:center;margin-top:34px;flex-wrap:wrap}
.hero-ctas .tlink{font-size:1.02rem}

/* ---------- SECTIONS ---------- */
section{padding:96px 0}
.sec-head{margin-bottom:44px}
h2{font-size:clamp(1.7rem,3.4vw,2.4rem);font-weight:700;letter-spacing:-.02em;line-height:1.14;color:var(--black)}
h2 .dim{color:var(--gray)}
.sec-head p{color:var(--gray);font-size:1.06rem;margin-top:14px;max-width:660px}
.centered{text-align:center}
.centered p{margin-left:auto;margin-right:auto}

/* tuiles */
.tiles-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tile{background:var(--tile);border-radius:var(--r-tile);padding:36px 30px}
.tile h3{font-size:1.15rem;font-weight:600;letter-spacing:-.015em;color:var(--black);margin-bottom:10px}
.tile p{font-size:.95rem;color:var(--gray)}

/* liste de fonctionnalités */
.flist{display:grid;grid-template-columns:1fr 1fr;gap:0 64px;max-width:940px;margin:0 auto}
.fitem{padding:26px 0;border-bottom:1px solid var(--line-soft)}
.fitem h3{font-size:1.05rem;font-weight:600;color:var(--black);margin-bottom:6px;letter-spacing:-.01em}
.fitem p{font-size:.93rem;color:var(--gray)}

/* scénario d'appel */
.script{max-width:640px;margin:0 auto;background:var(--tile);border-radius:var(--r-tile);padding:36px 32px}
.script .line{display:flex;gap:14px;padding:12px 0;border-bottom:1px solid var(--line-soft);font-size:.95rem;line-height:1.5}
.script .line:last-child{border-bottom:none}
.script .who{flex-shrink:0;width:78px;font-size:.78rem;font-weight:600;color:var(--gray-2);text-transform:uppercase;letter-spacing:.03em;padding-top:.2em}
.script .what{color:var(--black)}
.script .what.dimmed{color:var(--gray)}

/* chiffres */
.calc-tile{background:var(--black);border-radius:var(--r-tile);padding:48px 40px;color:#fff;max-width:720px;margin:0 auto;text-align:center}
.calc-tile .big{font-size:2.8rem;font-weight:700;letter-spacing:-.03em;line-height:1.1}
.calc-tile .lbl{color:rgba(255,255,255,.62);font-size:.98rem;margin-top:12px;max-width:520px;margin-left:auto;margin-right:auto}
.calc-tile .fine{color:rgba(255,255,255,.4);font-size:.8rem;margin-top:22px;line-height:1.5}

/* prix condensé */
.price-strip{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:820px;margin:0 auto}
.ps-card{background:var(--tile);border-radius:var(--r-tile);padding:34px 30px}
.ps-card.dark{background:var(--black);color:#fff}
.ps-card h3{font-size:1.05rem;font-weight:600;margin-bottom:4px}
.ps-card .p{font-size:2.1rem;font-weight:700;letter-spacing:-.03em;margin-top:10px}
.ps-card .p span{font-size:.9rem;font-weight:400;color:var(--gray);letter-spacing:0}
.ps-card.dark .p span{color:rgba(255,255,255,.55)}
.ps-card .d{font-size:.88rem;color:var(--gray);margin-top:6px}
.ps-card.dark .d{color:rgba(255,255,255,.6)}

/* faq */
.faq-list{max-width:720px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item:first-child{border-top:1px solid var(--line)}
.faq-q{width:100%;text-align:left;background:none;border:none;padding:24px 4px;font-family:inherit;font-size:1.06rem;font-weight:600;letter-spacing:-.01em;color:var(--black);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px}
.faq-q .chev{transition:.25s;color:var(--gray-2);flex-shrink:0;display:flex;font-size:1.4rem;font-weight:300;line-height:1}
.faq-item.open .chev{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease}
.faq-a-inner{padding:0 40px 24px 4px;font-size:.96rem;color:var(--gray)}

/* CTA final */
.cta{background:var(--black);border-radius:28px;padding:76px 44px;text-align:center;color:#fff}
.cta h2{color:#fff}
.cta .sub{color:rgba(255,255,255,.65);max-width:540px;margin:16px auto 32px;font-size:1.06rem}
.cta .hint{margin-top:22px;font-size:.86rem;color:rgba(255,255,255,.45)}
.cta .hint a{color:rgba(255,255,255,.8);text-decoration:underline}

/* garantie */
.guarantee{max-width:720px;margin:0 auto;border:1px solid var(--line);border-radius:var(--r-tile);padding:34px 32px;text-align:center}
.guarantee .g-title{font-size:1.15rem;font-weight:600;margin-bottom:10px}
.guarantee p{color:var(--gray);font-size:.98rem}
.guarantee strong{color:var(--black);font-weight:600}

/* footer */
footer{background:var(--tile);border-top:1px solid var(--line-soft);color:var(--gray);padding:36px 0;font-size:.8rem}
.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;max-width:1040px;margin:0 auto;padding:0 24px}
.footer-inner strong{color:var(--black);font-weight:600}
.footer-rgpd{max-width:440px;line-height:1.5}
.footer-links{display:flex;gap:18px;flex-wrap:wrap}
.footer-links a:hover{color:var(--black)}

/* responsive */
@media(max-width:960px){
  .tiles-3,.price-strip{grid-template-columns:1fr}
  .flist{grid-template-columns:1fr;gap:0}
  .nav-links{display:none;position:absolute;top:52px;left:0;right:0;background:#fff;flex-direction:column;padding:24px;box-shadow:0 24px 60px rgba(0,0,0,.12);gap:20px;border-bottom:1px solid var(--line-soft);font-size:1rem}
  .nav-links.open{display:flex}
  .burger{display:block}
}
@media(max-width:640px){
  section{padding:60px 0}
  header{padding:56px 0 48px}
  .cta{padding:52px 22px;border-radius:22px}
  .calc-tile{padding:36px 24px}
  .calc-tile .big{font-size:2.2rem}
  .script{padding:26px 20px}
  .script .line{flex-direction:column;gap:4px}
  .script .who{width:auto}
  .sec-head{margin-bottom:32px}
}
