/* Reset minimal + base */
*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h-mobile) + 8px);}
@media (min-width: 900px){html{scroll-padding-top:calc(var(--header-h) + 12px);}}
body{margin:0;font-family:var(--ff-body);color:var(--text);background:var(--bg);
  font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  overflow-x:clip;}
img,video,iframe{max-width:100%;}
figure{margin:0;}
button{font-family:inherit;cursor:pointer;}
a{color:var(--accent);text-decoration:none;}
h1,h2,h3,h4{font-family:var(--ff-display);color:var(--text);margin:0 0 0.5em;line-height:1.15;font-weight:600;}
p{margin:0 0 1em;color:var(--text-2);}
ul{margin:0 0 1em;padding-left:1.2em;}
[hidden]{display:none !important;}

/* TEX-3 Points (tres discret) */
body{
  background-image:radial-gradient(color-mix(in srgb, var(--text) 8%, transparent) 1px, transparent 1px);
  background-size:22px 22px;
}

/* Selection / scrollbar / focus */
::selection{background:var(--accent);color:var(--surface);}
::-webkit-scrollbar{width:8px;height:8px;}
::-webkit-scrollbar-thumb{background:var(--accent);border-radius:4px;}
::-webkit-scrollbar-track{background:var(--bg-alt);}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px;}
::placeholder{color:var(--text-mute);opacity:0.85;}

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

/* Section spacing (mobile-first) */
section{padding:48px 0;}
@media (min-width: 768px){section{padding:80px 0;}}

/* Eyebrow / overline */
.eyebrow{font-family:var(--ff-ui);text-transform:uppercase;letter-spacing:0.18em;
  font-size:0.74rem;color:var(--accent);font-weight:600;display:inline-block;margin-bottom:14px;}
.eyebrow--center{display:block;text-align:center;}

/* Section header common */
.sec-head{max-width:760px;margin-bottom:32px;}
.sec-head h2{font-size:clamp(1.7rem, 3.6vw, 2.6rem);line-height:1.1;}
.sec-head p{font-size:1rem;color:var(--text-2);}
.sec-head--center{margin-left:auto;margin-right:auto;text-align:center;}

/* Reset list */
.reset-list{list-style:none;padding:0;margin:0;}
