/* Couleurs, polices, espacements et rayons viennent de tokens.css (copie du kit design-kit-chatcommerce/tokens). */
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.6 var(--font)}
[hidden]{display:none!important}
.top,main,footer{max-width:1120px;margin:0 auto;padding:var(--space-16) var(--space-24)}
.top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-16);flex-wrap:wrap}
.brand{display:inline-flex}
.logo-dark{display:none}
[data-theme="dark"] .logo-light{display:none}
[data-theme="dark"] .logo-dark{display:inline}
.nav{display:flex;align-items:center;gap:var(--space-24);flex-wrap:wrap}
.nav a{color:var(--text);text-decoration:none;font-weight:600;font-size:14px}
.nav a:hover,.nav a[aria-current="page"]{color:var(--accent-strong)}
.theme{font:inherit;font-size:13px;font-weight:600;background:var(--surface);color:var(--text);border:1px solid var(--line-strong);border-radius:var(--radius-pill);padding:var(--space-4) var(--space-12);cursor:pointer}
h1,h2,h3{font-family:var(--font);line-height:1.15;letter-spacing:-.02em;margin:0 0 var(--space-12)}
h1{font-size:clamp(32px,5.5vw,52px)}h2{font-size:clamp(24px,3vw,32px)}h3{font-size:19px}
.eyebrow{color:var(--accent-strong);font-weight:700;text-transform:uppercase;letter-spacing:.08em;font-size:12px;margin:var(--space-32) 0 var(--space-8)}
.lead{font-size:18px;max-width:680px;color:var(--muted)}
.hero{padding:var(--space-16) 0 var(--space-32)}
label{display:block;font-weight:600;margin:var(--space-16) 0 6px}
.row{display:flex;gap:var(--space-12);flex-wrap:wrap}
input[type=text],input[type=email]{flex:1;min-width:240px;font:inherit;padding:var(--space-12) 14px;border:1px solid var(--line-strong);border-radius:var(--radius-control-lg);background:var(--surface);color:var(--text);width:100%}
.btn{display:inline-block;font:inherit;font-weight:600;background:var(--accent);color:var(--on-accent);border:2px solid var(--accent);border-radius:var(--radius-control-lg);padding:var(--space-8) var(--space-24);text-decoration:none;cursor:pointer}
.btn.ghost{background:transparent;color:var(--accent-strong)}
.btn:disabled{opacity:.6;cursor:wait}
:focus-visible{outline:3px solid var(--info);outline-offset:2px}
.note,.small{color:var(--muted);font-size:14px}
.panel,.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:var(--space-24);margin:0 0 var(--space-24)}
.err{border-color:var(--danger);color:var(--danger)}
.bar{height:6px;background:var(--line);border-radius:3px;overflow:hidden}
.bar span{display:block;height:100%;width:40%;background:var(--accent);animation:slide 1.4s infinite ease-in-out}
@keyframes slide{0%{margin-left:-40%}100%{margin-left:100%}}
@media (prefers-reduced-motion:reduce){.bar span{animation:none;width:100%}}
.grade-row{display:flex;gap:var(--space-32);align-items:center;flex-wrap:wrap;margin-bottom:var(--space-16)}
.grade-box{text-align:center}
.grade{font:700 72px/1 var(--font);margin:0;color:var(--accent-strong)}
.score{font:700 32px var(--font);margin:0}
.summary{flex:1;min-width:240px}
.small{margin:0 0 var(--space-4)}
.actions{display:flex;gap:var(--space-12);flex-wrap:wrap}
.lead-form{border-top:1px solid var(--line);margin-top:var(--space-24);padding-top:var(--space-8)}
.check{display:flex;gap:10px;font-weight:400;font-size:15px}
.check input{margin-top:5px;flex:none}
.link{background:none;border:0;color:var(--accent-strong);text-decoration:underline;font:inherit;cursor:pointer;padding:0}
.cols{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-24)}
.plans{list-style:none;padding:0;margin:var(--space-16) 0;display:grid;gap:var(--space-12)}
.plan{border:1px solid var(--line);border-radius:var(--radius-control-lg);padding:var(--space-16);background:var(--surface-2)}
.plan h3{font-size:18px;margin-bottom:var(--space-4)}
.price{margin:var(--space-8) 0}.ttc{color:var(--muted)}
footer{color:var(--muted);font-size:14px;border-top:1px solid var(--line);margin-top:var(--space-32)}
footer a{color:var(--muted)}
@media (max-width:760px){.cols{grid-template-columns:1fr}}
.rapport-frame{width:100%;min-height:80vh;border:0;background:var(--surface)}
/* Sections ajoutées : accueil et page des prix */
.section{padding:var(--space-24) 0}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-24)}
.grid3 .card{margin:0}
@media (max-width:900px){.grid3{grid-template-columns:1fr}}
.tag{display:inline-block;font-size:12px;font-weight:700;color:var(--wine);background:var(--wine-soft);border-radius:var(--radius-pill);padding:2px var(--space-12);margin:0 0 var(--space-8)}
.shot{margin:0}
.shot img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow-float)}
.shot .shot-dark{display:none}
[data-theme="dark"] .shot .shot-light{display:none}
[data-theme="dark"] .shot .shot-dark{display:block}
.shot figcaption{margin-top:var(--space-12)}
.steps{counter-reset:s;list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-24)}
.steps li{counter-increment:s;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);padding:var(--space-24)}
.steps li::before{content:counter(s);display:inline-flex;width:28px;height:28px;align-items:center;justify-content:center;border-radius:var(--radius-pill);background:var(--accent-soft);color:var(--accent-strong);font-weight:700;margin-bottom:var(--space-8)}
@media (max-width:900px){.steps{grid-template-columns:1fr}}
.tier .amount{font-size:34px;font-weight:700;letter-spacing:-.02em;margin:var(--space-8) 0 0}
.tier .amount small{font-size:15px;font-weight:600;color:var(--muted);letter-spacing:0}
.tier .ttc{margin:0 0 var(--space-12)}
.tier ul{padding-left:var(--space-16);margin:var(--space-12) 0 var(--space-16)}
.tier .btn{margin-top:auto}
.tier{display:flex;flex-direction:column}
.band{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--radius-card);padding:var(--space-24);margin:var(--space-24) 0}
.prose{max-width:760px}
.prose p{margin:0 0 var(--space-12)}
[data-theme="dark"] .btn:not(.ghost){color:var(--bg)}
.tier .tag{align-self:flex-start}
.band.prose{max-width:none}
.band p{max-width:820px}
