/* ===========================================================================
   Bază
   --------------------------------------------------------------------------
   Reset, fundal, tipografie, container, utilitare. Nimic specific unei componente.
   =========================================================================== */

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:var(--bg);color:var(--text);
  font-family:var(--sans);font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;font-feature-settings:'cv11','ss01';
  position:relative;
}
/* Textură de grilă foarte discretă, ca fundalul să nu fie negru plat */
body::before{
  content:'';position:fixed;inset:0;pointer-events:none;z-index:0;
  background-image:linear-gradient(rgba(124,92,255,.03) 1px,transparent 1px),
                   linear-gradient(90deg,rgba(124,92,255,.03) 1px,transparent 1px);
  background-size:72px 72px;
  -webkit-mask-image:radial-gradient(ellipse 120% 70% at 50% 0%,#000 30%,transparent 78%);
  mask-image:radial-gradient(ellipse 120% 70% at 50% 0%,#000 30%,transparent 78%);
}
body > *{position:relative;z-index:1}
body.locked{overflow:hidden}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer;border:none;background:none;color:inherit}
:focus-visible{outline:2px solid var(--violet);outline-offset:3px;border-radius:3px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

.wrap{max-width:var(--page);margin:0 auto;padding:0 32px}
section{padding:116px 0}
.bordered{border-top:1px solid var(--line)}
@media(max-width:640px){.wrap{padding:0 20px}section{padding:76px 0}}

/* --- Tipografie ---------------------------------------------------------- */
h1,h2,h3,h4{margin:0;letter-spacing:-.03em;line-height:1.06;font-weight:700}
h1{font-size:clamp(40px,5.8vw,82px);max-width:15ch;letter-spacing:-.042em}
h2{font-size:clamp(30px,4.1vw,52px);max-width:20ch;letter-spacing:-.035em}
h3{font-size:20px;line-height:1.3;letter-spacing:-.018em;font-weight:600}
p{margin:0}
.lede{color:var(--muted);font-size:18.5px;max-width:64ch;margin-top:22px;line-height:1.68}
.section-head{margin-bottom:58px}

/* Micro-etichetă mono, spațiată — semnătura tipografică a gamei */
.kicker{
  font-family:var(--mono);font-size:11px;color:var(--violet-hi);
  display:block;margin-bottom:20px;text-transform:uppercase;letter-spacing:.22em;
}
.kicker::before{content:'▪ ';opacity:.75}

.grad-text{
  background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;
  padding-bottom:.06em;
}
.grad-num{
  font-weight:700;letter-spacing:-.045em;
  background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;
}
.prose p{color:var(--muted);font-size:16.5px;line-height:1.76;margin-top:18px;max-width:72ch}
.prose h3{margin-top:46px;color:var(--text)}
.prose ul{color:var(--muted);font-size:16.5px;line-height:1.76;max-width:72ch;padding-left:20px;margin-top:16px}
.prose li{margin-bottom:9px}
