/* ══════════════════════════════════════════════
   FONT-SIZE SCALE (7 levels, min 10px)
══════════════════════════════════════════════ */
:root {
  --fs-hero: 40px;
  --fs-xxl: 24px;
  --fs-xl: 18px;
  --fs-lg: 15px;
  --fs-base: 13px;
  --fs-sm: 11px;
  --fs-xs: 10px;
}

/* ══════════════════════════════════════════════
   RESET & BASE
══════════════════════════════════════════════ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;-webkit-tap-highlight-color:transparent}
html,body{width:100%;height:100%;overflow:hidden;background:#030810}
body{font-family:'Nunito',sans-serif;color:#e8eaff;font-size:19px}

/* Scrollbar */
::-webkit-scrollbar { width: 3px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: #0a2040; border-radius: 2px; }

/* ── Font-size utilities ─────────────────── */
.fs-hero { font-size: var(--fs-hero) !important; }
.fs-xxl  { font-size: var(--fs-xxl) !important; }
.fs-xl   { font-size: var(--fs-xl) !important; }
.fs-lg   { font-size: var(--fs-lg) !important; }
.fs-base { font-size: var(--fs-base) !important; }
.fs-sm   { font-size: var(--fs-sm) !important; }
.fs-xs   { font-size: var(--fs-xs) !important; }
