/* NEHILIM Marketing — Design tokens, self-hosted fonts, reset. v2.0 */

/* ---- Self-hosted Inter (SIL OFL 1.1, Latin subset). No external CDN. ---- */
@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/inter-400.woff2) format('woff2')}
@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(../fonts/inter-500.woff2) format('woff2')}
@font-face{font-family:Inter;font-style:normal;font-weight:600;font-display:swap;src:url(../fonts/inter-600.woff2) format('woff2')}
@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/inter-700.woff2) format('woff2')}
@font-face{font-family:Inter;font-style:normal;font-weight:800;font-display:swap;src:url(../fonts/inter-800.woff2) format('woff2')}
@font-face{font-family:Inter;font-style:normal;font-weight:900;font-display:swap;src:url(../fonts/inter-900.woff2) format('woff2')}

:root{
  /* Primitives */
  --amber-400:#ffbb47;--amber-500:#f5a623;--amber-600:#d48a14;--amber-ink:#8a5a00;
  --navy-700:#1c3149;--navy-800:#14263a;--navy-900:#0d1b2a;--navy-950:#060e16;
  --white:#ffffff;--ink-900:#0f1b28;--ink-700:#2b3a4a;--ink-500:#566574;
  --slate-50:#f8fafd;--slate-100:#f2f6fb;--slate-200:#e7edf5;--border-200:#dbe3ee;

  /* Semantic (light default) */
  --bg:var(--white);--surface:var(--slate-100);--surface-2:var(--white);
  --text:#182533;--text-muted:var(--ink-500);--text-inv:var(--white);
  --accent:var(--amber-500);--accent-hover:var(--amber-600);--accent-ink:var(--amber-ink);
  --border:var(--border-200);--hairline:rgba(15,27,40,.08);
  --nav-bg:rgba(13,27,42,.94);--nav-text:rgba(255,255,255,.78);--nav-border:rgba(255,255,255,.08);
  --hero-bg:var(--navy-900);--cta-bg:var(--navy-900);--footer-bg:var(--navy-950);
  --shadow-sm:0 1px 3px rgba(9,17,28,.06),0 1px 2px rgba(9,17,28,.04);
  --shadow-md:0 6px 24px rgba(9,17,28,.09);--shadow-lg:0 18px 48px rgba(9,17,28,.14);

  --font:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  --mw:1180px;--r:10px;--r-lg:16px;--r-pill:999px;
  --step:clamp(.9rem,.85rem + .3vw,1rem);
}

/* Dark theme: follow OS unless user forced light; explicit toggle wins. */
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:var(--navy-950);--surface:var(--navy-900);--surface-2:var(--navy-800);
    --text:#e8eef6;--text-muted:#9db0c2;--accent-ink:var(--amber-400);
    --border:rgba(255,255,255,.1);--hairline:rgba(255,255,255,.08);
    --shadow-sm:0 1px 3px rgba(0,0,0,.4);--shadow-md:0 6px 24px rgba(0,0,0,.45);--shadow-lg:0 18px 48px rgba(0,0,0,.55);
  }
}
:root[data-theme="dark"]{
  --bg:var(--navy-950);--surface:var(--navy-900);--surface-2:var(--navy-800);
  --text:#e8eef6;--text-muted:#9db0c2;--accent-ink:var(--amber-400);
  --border:rgba(255,255,255,.1);--hairline:rgba(255,255,255,.08);
  --shadow-sm:0 1px 3px rgba(0,0,0,.4);--shadow-md:0 6px 24px rgba(0,0,0,.45);--shadow-lg:0 18px 48px rgba(0,0,0,.55);
}

/* Reset */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{font-family:var(--font);color:var(--text);background:var(--bg);line-height:1.65;font-size:var(--step);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color .3s ease,color .3s ease}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
ul,ol{list-style:none}
button{font-family:inherit}
:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:4px}
::selection{background:var(--amber-500);color:var(--navy-900)}

/* Utilities */
.container{max-width:var(--mw);margin:0 auto;padding:0 1.5rem}
.text-center{text-align:center}
.section{padding:clamp(3rem,7vw,5.5rem) 0}
.section--surface{background:var(--surface)}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
