/* Reset minimaliste */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h-mobile) + 8px)}
@media(min-width:768px){html{scroll-padding-top:calc(var(--header-h) + 12px)}}
html,body{overflow-x:hidden;max-width:100vw}
body{margin:0;font-family:var(--ff-body);font-size:var(--fs-body);line-height:1.55;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5,h6{margin:0 0 .6em;font-family:var(--ff-display);font-weight:600;line-height:1.12;color:var(--text);letter-spacing:-.005em}
p{margin:0 0 1em}
a{color:inherit;text-decoration:none}
img,video,iframe{max-width:100%;height:auto;display:block}
figure{margin:0}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}
ul,ol{margin:0;padding:0;list-style:none}
blockquote{margin:0}
input,select,textarea{font:inherit;color:inherit}

/* Hidden universel (anti-bug modal/lightbox) */
[hidden]{display:none !important}

/* Selection / scrollbar / focus / placeholder */
::selection{background:var(--accent-soft);color:var(--text)}
*::-webkit-scrollbar{width:8px;height:8px}
*::-webkit-scrollbar-track{background:var(--bg)}
*::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--accent) 50%, var(--bg-alt));border-radius:6px}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}
::placeholder{color:var(--text-mute);opacity:1}

/* Container */
.container{max-width:var(--container);margin:0 auto;padding:0 20px;width:100%}
@media(min-width:768px){.container{padding:0 32px}}

/* Sections */
section{padding:48px 0}
@media(min-width:768px){section{padding:80px 0}}

/* Eyebrow + section headings */
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--ff-ui);text-transform:uppercase;letter-spacing:.18em;font-size:.74rem;color:var(--accent);font-weight:600;margin-bottom:14px}
.eyebrow::before{content:"";width:28px;height:1px;background:var(--accent)}
h2.section-title{font-size:var(--fs-h2);max-width:24ch;margin-bottom:.4em}
.section-lead{color:var(--text-2);font-size:1.05rem;max-width:60ch;margin-bottom:2em}

/* Hyper utility */
.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}
