:root{
  --navy-950:#050b16;--navy-900:#07101f;--navy-850:#0a1628;--navy-800:#0f1f38;--navy-700:#1c3252;--navy-600:#2a4a73;
  --gold-400:#ffe45e;--gold-500:#ffd21f;--gold-600:#f8a800;--cream-50:#fffdf8;--cream-100:#f7f2e8;--cream-200:#f1eee3;
  --white:#fff;--ink:#07101f;--muted:#5d6877;--muted-light:#aeb8c6;--success:#7dd69a;--danger:#ef8a79;
  --line-dark:rgba(7,16,31,.14);--line-mid:rgba(7,16,31,.22);--line-light:rgba(255,255,255,.13);--line-gold:rgba(255,210,31,.34);
  --container:1380px;--header-h:76px;--radius-xl:34px;--radius-lg:24px;--radius-md:17px;--radius-sm:12px;
  --shadow-lg:0 38px 110px rgba(4,10,20,.2);--shadow-sm:0 14px 42px rgba(4,10,20,.11);
  --ease:cubic-bezier(.22,.76,.24,1);
  --font-sans:"Segoe UI Variable Text","Segoe UI",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif;
  --font-display:"Segoe UI Variable Display","Segoe UI",Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--navy-950);scroll-padding-top:calc(var(--header-h) + 20px)}
body{margin:0;font-family:var(--font-sans);background:var(--cream-50);color:var(--ink);overflow-x:hidden;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body.menu-open,body.dialog-open{overflow:hidden}
::selection{background:var(--gold-500);color:var(--navy-950)}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit}button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold-500);outline-offset:3px}
img,svg{display:block;max-width:100%}svg{overflow:visible}fieldset{border:0;margin:0;padding:0}legend{padding:0}[hidden]{display:none!important}
.container{width:min(calc(100% - 64px),var(--container));margin-inline:auto}.narrow{width:min(calc(100% - 64px),980px);margin-inline:auto}
.section-navy{background:var(--navy-900);color:var(--cream-50)}.section-cream{background:var(--cream-50);color:var(--navy-900)}.section-soft{background:var(--cream-100);color:var(--navy-900)}
.skip-link{position:fixed;left:16px;top:14px;z-index:10000;transform:translateY(-150%);background:var(--gold-500);color:var(--navy-950);padding:10px 14px;border-radius:999px;font-weight:800;transition:transform .2s ease}.skip-link:focus{transform:none}
.page-progress{position:fixed;z-index:9999;left:0;right:0;top:0;height:3px;pointer-events:none}.page-progress span{display:block;width:100%;height:100%;background:linear-gradient(90deg,var(--gold-600),var(--gold-400));transform:scaleX(0);transform-origin:left center}
.pointer-light{position:fixed;z-index:3;width:500px;height:500px;border-radius:50%;pointer-events:none;opacity:0;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(255,210,31,.075),rgba(28,50,82,.025) 48%,transparent 72%);filter:blur(8px)}.has-pointer .pointer-light{opacity:1}
.eyebrow,.section-index,.micro-label{margin:0;font-size:.71rem;line-height:1.2;letter-spacing:.15em;text-transform:uppercase;font-weight:820}.eyebrow{display:flex;align-items:center;gap:10px}.section-note{margin:.55rem 0 0;font-size:.9rem;color:var(--muted)}
.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--gold-500);box-shadow:0 0 0 0 rgba(255,210,31,.44);animation:statusPulse 2.5s infinite}
.display{font-family:var(--font-display);letter-spacing:-.047em}.muted{color:var(--muted)}.muted-light{color:var(--muted-light)}.gold{color:var(--gold-500)}
.button{border:0;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:52px;padding:0 23px;border-radius:999px;font-weight:770;font-size:.94rem;line-height:1;position:relative;overflow:hidden;transition:transform .25s var(--ease),box-shadow .25s ease,background .25s ease,color .25s ease,border-color .25s ease}.button svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.button:disabled{opacity:.56;cursor:not-allowed}.button--small{min-height:44px;padding-inline:18px;font-size:.84rem}.button--large{min-height:60px;padding-inline:28px}.button--compact{min-height:46px;padding-inline:18px;font-size:.84rem}.button--full{width:100%}.button--gold{background:linear-gradient(180deg,var(--gold-400),var(--gold-600));color:var(--navy-950);box-shadow:0 12px 38px rgba(248,168,0,.18)}.button--gold:hover{box-shadow:0 18px 54px rgba(248,168,0,.27)}.button--navy{background:var(--navy-900);color:var(--cream-50)}.button--navy:hover{background:var(--navy-800)}.button--ghost{background:rgba(255,255,255,.035);color:var(--cream-50);border:1px solid rgba(255,255,255,.2)}.button--ghost:hover{background:rgba(255,255,255,.08)}.button--outline{background:transparent;color:var(--navy-900);border:1px solid var(--line-mid)}.button--outline:hover{background:var(--cream-100)}
.magnetic{transform:translate3d(var(--mx,0),var(--my,0),0)}
.text-button,.text-link{background:none;border:0;padding:0;cursor:pointer;font-weight:720}.text-button{color:var(--cream-200);font-size:.86rem}.text-link:hover,.text-button:hover{text-decoration:underline;text-underline-offset:4px}
.section-heading{display:grid;grid-template-columns:240px minmax(0,1fr);gap:64px;align-items:start;padding-top:112px;margin-bottom:60px}.section-heading h2{margin:0;max-width:980px;font-family:var(--font-display);font-size:clamp(2.35rem,4.25vw,4.7rem);line-height:1.01;letter-spacing:-.05em;font-weight:710}.section-heading h2 span{color:var(--navy-700)}.section-heading--light .section-note{color:var(--muted-light)}.section-heading--light h2 span{color:var(--gold-500)}
.reveal{opacity:1;transform:none}.js .reveal{opacity:0;transform:translateY(28px);transition:opacity .72s var(--ease),transform .72s var(--ease)}.js .reveal.is-visible{opacity:1;transform:none}
.surface-tilt{transform:perspective(1100px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translate3d(0,0,0);transition:transform .18s ease}.surface-tilt:hover{will-change:transform}
@keyframes statusPulse{70%{box-shadow:0 0 0 10px rgba(255,210,31,0)}100%{box-shadow:0 0 0 0 rgba(255,210,31,0)}}
