/* Base reset + typo */
*,*::before,*::after{box-sizing:border-box;}
html{
  scroll-behavior:smooth;
  scroll-padding-top:calc(var(--header-h-mobile) + 12px);
  -webkit-text-size-adjust:100%;
}
@media (min-width:768px){html{scroll-padding-top:calc(var(--header-h) + 16px);}}

html,body{margin:0;padding:0;max-width:100vw;}
body{
  overflow-x:clip;
  background:var(--bg);
  color:var(--text);
  font-family:var(--ff-body);
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

h1,h2,h3,h4,h5,h6{
  font-family:var(--ff-display);
  color:var(--text);
  font-weight:500;
  line-height:1.1;
  letter-spacing:-.01em;
  margin:0 0 16px;
}
h1{font-size:clamp(2.4rem,7vw,4.6rem);font-weight:500;}
h2{font-size:clamp(1.8rem,4.4vw,2.8rem);font-weight:500;}
h3{font-size:clamp(1.3rem,2.4vw,1.6rem);font-weight:500;}
p{margin:0 0 14px;color:var(--text-2);}
p:last-child{margin-bottom:0;}
em{font-style:italic;color:var(--accent);}

a{color:var(--text);text-decoration:none;transition:color var(--dur) var(--ease);}
a:hover{color:var(--accent);}

img,video,iframe,svg{max-width:100%;display:block;}
img{height:auto;}
figure{margin:0;}

button{font-family:inherit;cursor:pointer;border:0;background:transparent;color:inherit;}

ul{margin:0;padding:0;list-style:none;}

[hidden]{display:none !important;}

::selection{background:var(--accent);color:#fff;}
::-moz-selection{background:var(--accent);color:#fff;}

*{scrollbar-width:thin;scrollbar-color:var(--accent) transparent;}
::-webkit-scrollbar{width:6px;height:6px;}
::-webkit-scrollbar-track{background:transparent;}
::-webkit-scrollbar-thumb{background:var(--accent);border-radius:3px;}
::-webkit-scrollbar-thumb:hover{background:var(--accent-deep);}

:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--r-sm);}

.container{max-width:var(--container);margin:0 auto;padding:0 20px;}
@media (min-width:768px){.container{padding:0 40px;}}

/* Texture TEX-4 — grille fine */
body{
  background-image:
    linear-gradient(rgba(46,40,32,.06) 1px,transparent 1px),
    linear-gradient(90deg,rgba(46,40,32,.06) 1px,transparent 1px);
  background-size:32px 32px;
}

/* Section padding */
section{padding:56px 0;}
@media (min-width:768px){section{padding:96px 0;}}

/* Eyebrow editorial */
.eyebrow{
  display:inline-flex;align-items:center;gap:.6em;
  font-family:var(--ff-ui);text-transform:uppercase;
  letter-spacing:.22em;font-size:.74rem;font-weight:600;
  color:var(--accent);margin-bottom:14px;
}
.eyebrow::before{
  content:"";width:36px;height:1px;background:var(--accent);
}

/* Section title block (editorial) */
.sec-head{max-width:760px;margin-bottom:48px;}
.sec-head h2{margin-bottom:14px;}
.sec-head p{font-size:1.05rem;color:var(--text-2);max-width:60ch;}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms !important;transition-duration:.01ms !important;}
  html{scroll-behavior:auto;}
}
