:root{--brand-900: #0c1030;--brand-800: #141a4a;--brand-700: #1d2461;--brand-600: #232b76;--brand-500: #283080;--brand-400: #3b44a0;--brand-300: #7178c1;--brand-200: #adb2dd;--brand-100: #d6d8ee;--brand-050: #edeef8;--azure-700: #1c6fa9;--azure-600: #2280c1;--azure-500: #2890d0;--azure-400: #55a8dc;--azure-300: #8ac6e9;--azure-200: #bfe0f3;--azure-050: #e7f3fb;--ink-900: #0f1220;--ink-700: #2a2f45;--ink-500: #5a607a;--ink-300: #969cb4;--paper: #f7f8fc;--surface: #ffffff;--hairline: #e6e8f2;--hairline-dark: rgba(255, 255, 255, .13);--c-bg: var(--paper);--c-surface: var(--surface);--c-ink: var(--ink-900);--c-ink-soft: var(--ink-500);--c-brand: var(--brand-500);--c-brand-deep: var(--brand-900);--c-brand-hover: var(--brand-400);--c-neural: var(--azure-500);--c-accent: var(--azure-500);--c-tint: var(--azure-050);--c-on-dark: #eaf0fb;--c-on-dark-soft: #a7b2d6;--font-display: "Fraunces", Georgia, "Times New Roman", serif;--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--fs-display: clamp(2.5rem, 1.4rem + 5vw, 5rem);--fs-h1: clamp(2.25rem, 1.4rem + 3.8vw, 3.75rem);--fs-h2: clamp(2rem, 1.4rem + 2.6vw, 3.25rem);--fs-h3: clamp(1.4rem, 1.1rem + 1.4vw, 1.9rem);--fs-lead: clamp(1.1rem, 1rem + .6vw, 1.35rem);--fs-body: 1.0625rem;--fs-small: .875rem;--fs-eyebrow: .78rem;--lh-tight: 1.06;--lh-snug: 1.25;--lh-body: 1.7;--measure: 62ch;--space-3xs: .25rem;--space-2xs: .5rem;--space-xs: .75rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2.5rem;--space-xl: 4rem;--space-2xl: 6rem;--section-y: clamp(5rem, 3rem + 8vw, 9rem);--container: 1240px;--container-narrow: 760px;--gutter: clamp(1.25rem, .5rem + 3vw, 2rem);--radius-sm: 8px;--radius: 14px;--radius-lg: 22px;--shadow-sm: 0 1px 2px rgba(12, 16, 48, .06), 0 2px 6px rgba(12, 16, 48, .05);--shadow-md: 0 6px 18px rgba(12, 16, 48, .08), 0 2px 6px rgba(12, 16, 48, .05);--shadow-lg: 0 24px 60px rgba(12, 16, 48, .16), 0 8px 20px rgba(12, 16, 48, .08);--ring: 0 0 0 3px rgba(40, 144, 208, .4);--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-fast: .2s;--dur: .32s;--dur-slow: .64s;--header-h: 76px}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{min-height:100svh;background:var(--c-bg);color:var(--c-ink);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);letter-spacing:-.011em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden}img,picture,svg,video{display:block;max-width:100%}input,button,textarea,select{font:inherit;color:inherit}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{overflow-wrap:break-word}h1,h2,h3{font-family:var(--font-display);font-weight:400;line-height:var(--lh-tight);letter-spacing:-.02em;font-optical-sizing:auto}h3{line-height:var(--lh-snug)}.font-display{font-family:var(--font-display)}em,.italic{font-style:italic}::selection{background:var(--brand-200);color:var(--brand-900)}:focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--radius-sm)}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.container--narrow{max-width:var(--container-narrow)}.grid12{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gutter)}.section{padding-block:var(--section-y);position:relative}.section--tint{background:var(--c-tint)}.section--dark{background:var(--c-brand-deep);color:var(--c-on-dark)}.eyebrow{font-family:var(--font-sans);font-size:var(--fs-eyebrow);font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--c-brand);display:inline-flex;align-items:center;gap:.6em}.eyebrow:before{content:"";width:28px;height:1px;background:currentColor;opacity:.6}.section--dark .eyebrow{color:var(--azure-300)}.lead{font-size:var(--fs-lead);line-height:1.5;color:var(--c-ink-soft);max-width:var(--measure)}.section--dark .lead{color:var(--c-on-dark-soft)}.measure{max-width:var(--measure)}.hairline{height:1px;border:0;background:var(--hairline)}.section--dark .hairline{background:var(--hairline-dark)}.btn{--_bg: var(--c-brand);--_fg: #fff;display:inline-flex;align-items:center;justify-content:center;gap:.6em;padding:.95em 1.6em;border-radius:999px;background:var(--_bg);color:var(--_fg);font-weight:600;font-size:.975rem;letter-spacing:-.01em;border:1px solid transparent;cursor:pointer;transition:transform var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out);will-change:transform}.btn:hover{background:var(--c-brand-hover);transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn:active{transform:translateY(0)}.btn--ghost{--_bg: transparent;--_fg: var(--c-ink);border-color:var(--hairline)}.btn--ghost:hover{--_bg: transparent;border-color:var(--c-brand);color:var(--c-brand);box-shadow:none}.btn--on-dark{--_fg: var(--c-brand-deep);--_bg: #fff}.btn--on-dark.btn--ghost{--_bg: transparent;--_fg: var(--c-on-dark);border-color:var(--hairline-dark)}.btn--on-dark.btn--ghost:hover{color:#fff;border-color:#ffffff80}.btn .icon{width:1.15em;height:1.15em}.arrow-link{display:inline-flex;align-items:center;gap:.5em;font-weight:600;color:var(--c-brand)}.arrow-link svg{transition:transform var(--dur-fast) var(--ease-out)}.arrow-link:hover svg{transform:translate(4px)}.js [data-reveal]{opacity:0;transform:translateY(22px);transition:opacity var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out);transition-delay:var(--reveal-delay, 0ms)}.js [data-reveal].is-visible{opacity:1;transform:none}.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}.skip-link{position:absolute;left:var(--gutter);top:-100px;z-index:200;background:#fff;color:var(--c-brand);padding:.7em 1.1em;border-radius:var(--radius-sm);box-shadow:var(--shadow-md);transition:top var(--dur-fast) var(--ease-out)}.skip-link:focus{top:var(--space-sm)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}[data-reveal],.js [data-reveal]{opacity:1!important;transform:none!important}}
