/* Base commune — reset + typo + utilitaires (fichier socle, ne pas dupliquer ailleurs) */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 64px)}
body{margin:0;background:var(--rice);color:var(--ink);font-family:var(--f-body);font-size:var(--fs-md);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer;background:none;border:0;padding:0}
input,textarea,select{font:inherit;color:inherit}
h1,h2,h3,h4{font-family:var(--f-display);font-weight:500;line-height:1.15;margin:0;letter-spacing:-.01em}
p{margin:0}
:focus-visible{outline:2px solid var(--plum);outline-offset:3px;border-radius:4px}
.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}
.section{padding-block:var(--sp-8)}
@media (max-width:700px){.section{padding-block:var(--sp-7)}}
.eyebrow{font-family:var(--f-body);font-size:var(--fs-xs);letter-spacing:.18em;text-transform:uppercase;color:var(--plum);font-weight:600}
.lead{color:var(--ink-2);font-size:var(--fs-lg);max-width:60ch}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;min-height:48px;padding:.75em 1.4em;border-radius:var(--r-pill);font-weight:600;transition:background var(--dur) var(--ease),color var(--dur) var(--ease),transform .15s var(--ease),border-color var(--dur) var(--ease)}
.btn:active{transform:scale(.97)}
.btn-primary{background:var(--plum);color:#fff}
.btn-primary:hover{background:var(--plum-deep)}
.btn-ghost{border:1.5px solid var(--ink);color:var(--ink)}
.btn-ghost:hover{background:var(--ink);color:var(--rice)}
.price{font-variant-numeric:tabular-nums;font-weight:600;white-space:nowrap}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
