.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}.text-reveal__line{display:inline}.text-reveal__clip{vertical-align:bottom;margin:-.12em .28em -.22em 0;padding:.12em 0 .22em;display:inline-block;overflow:hidden}.text-reveal__word{display:inline-block}:root{--brand-dark:#19181b;--brand-light-accent:#c23e0a;--color-primary:var(--brand-dark);--color-secondary:var(--brand-light-accent);--color-tertiary:#e6e6e6;--color-ink:var(--color-tertiary);--color-ink-muted:color-mix(in srgb, var(--color-tertiary) 62%, var(--color-primary));--color-ground:var(--color-primary);--color-ground-elevated:color-mix(in srgb, var(--color-primary) 90%, var(--color-ink));--color-ink-on-primary:var(--color-tertiary);--color-ink-on-secondary:#1a1f1c;--color-accent:var(--color-secondary);--color-accent-soft:color-mix(in srgb, var(--color-primary) 72%, white);--color-border:color-mix(in srgb, var(--color-primary) 22%, transparent);--color-glyph:var(--color-secondary);--color-overlay:color-mix(in srgb, var(--color-ground) 88%, transparent);--color-spot:color-mix(in srgb, var(--color-primary) 10%, transparent);--color-chrome:#c8cbc9;--font-display:"Science Gothic", system-ui, sans-serif;--font-serif:"Science Gothic", system-ui, sans-serif;--font-sans:"Science Gothic", system-ui, sans-serif;--space-3xs:.125rem;--space-2xs:.25rem;--space-xs:.5rem;--space-sm:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--space-4xl:8rem;--measure:65ch;--site-max:80rem;--chrome-inset:.5rem;--header-height:3.35rem;--header-offset:var(--header-height);--radius:.85rem;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--ease-expo:cubic-bezier(.16, 1, .3, 1);--duration-fast:.15s;--duration:.28s;--duration-slow:.56s;--he-frame-radius:1.15rem;--he-frame-shadow:0 0 0 1px color-mix(in srgb, var(--color-ink) 6%, transparent), 0 4px 12px color-mix(in srgb, var(--color-ink) 6%, transparent), 0 18px 40px color-mix(in srgb, var(--color-ink) 12%, transparent), 0 36px 72px color-mix(in srgb, var(--color-ink) 8%, transparent);color-scheme:light}[data-theme=light]{--color-primary:var(--brand-light-accent);--color-secondary:var(--brand-dark);color-scheme:light}[data-theme=dark]{--color-primary:var(--brand-dark);--color-secondary:var(--brand-light-accent);--color-ground:var(--color-primary);--color-ground-elevated:color-mix(in srgb, var(--color-primary) 90%, var(--color-ink));--color-ink:#eceae6;--color-ink-muted:#9aa0a8;--color-ink-on-primary:var(--color-tertiary);--color-ink-on-secondary:#1a1f1c;--color-accent:var(--color-secondary);--color-accent-soft:color-mix(in srgb, var(--color-primary) 72%, white);--color-border:#eceae61a;--color-glyph:var(--color-secondary);--color-overlay:#050607bf;--color-spot:color-mix(in srgb, var(--color-primary) 14%, transparent);--color-chrome:#9aa0a8;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.reduce-motion,.reduce-motion *{scroll-behavior:auto!important}.reduce-motion .motion-safe{transition:none!important;animation:none!important}::selection{background:color-mix(in srgb, var(--color-secondary) 45%, transparent);color:var(--color-ink)}:focus-visible{outline:2px solid var(--color-secondary);outline-offset:3px}:focus:not(:focus-visible){outline:none}body{isolation:isolate;background-color:var(--color-primary);min-height:100dvh;color:var(--color-ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;margin:0;font-size:1.0625rem;font-weight:300;line-height:1.65;display:flex;position:relative}body:before{content:"";z-index:9999;pointer-events:none;opacity:.045;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:180px 180px;position:fixed;inset:0}[data-theme=dark] body:before{opacity:.035;mix-blend-mode:overlay}.glyph-field{z-index:-1;pointer-events:none;--glyph-chrome-fade:2rem;--glyph-footer-band:3.25rem;width:100%;height:100%;mask-image:linear-gradient(to bottom, transparent 0, transparent var(--header-offset), #000 calc(var(--header-offset) + var(--glyph-chrome-fade)), #000 calc(100% - var(--glyph-footer-band) - var(--glyph-chrome-fade)), transparent calc(100% - var(--glyph-footer-band)), transparent 100%);-webkit-mask-image:linear-gradient(to bottom, transparent 0, transparent var(--header-offset), #000 calc(var(--header-offset) + var(--glyph-chrome-fade)), #000 calc(100% - var(--glyph-footer-band) - var(--glyph-chrome-fade)), transparent calc(100% - var(--glyph-footer-band)), transparent 100%);position:fixed;inset:0}img,picture,video,svg{max-width:100%;height:auto;display:block}a{color:var(--color-secondary);text-underline-offset:.2em;transition:color var(--duration) var(--ease-out);text-decoration-thickness:1px}a:hover{color:color-mix(in srgb, var(--color-secondary) 82%, var(--color-ink))}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 var(--space-md);color:var(--color-ink);font-weight:500;line-height:1.12}h1{font-size:clamp(2.5rem,6vw,4.25rem)}h2{font-size:clamp(1.85rem,3.8vw,2.75rem)}h3{letter-spacing:-.01em;font-size:clamp(1.25rem,2.2vw,1.6rem)}p{margin:0 0 var(--space-md);max-width:var(--measure)}.site-scroll-veil{--scroll-veil-fade:1.25rem;height:calc(var(--header-offset) + var(--scroll-veil-fade));z-index:40;pointer-events:none;background:color-mix(in srgb, var(--color-primary) 88%, transparent);-webkit-backdrop-filter:blur(48px)saturate(1.05);mask-image:linear-gradient(to bottom, #000 0%, #000 var(--header-offset), transparent 100%);-webkit-mask-image:linear-gradient(to bottom, #000 0%, #000 var(--header-offset), transparent 100%);position:fixed;top:0;left:0;right:0}.site-header{z-index:50;background:var(--color-primary);color:var(--color-ink-on-primary);box-sizing:border-box;padding:0;position:sticky;top:0;overflow:visible}.site-header__inner{--chrome-fade:5.75rem;--chrome-wave-overlap:1.15rem;width:100%;height:var(--header-height);align-items:center;gap:var(--space-md);background:var(--color-primary);box-sizing:border-box;border:none;border-radius:0;grid-template-columns:1fr auto 1fr;padding-inline:.85rem;display:grid;position:relative;overflow:visible}.site-brand,.site-header__center,.site-header__actions{z-index:1;position:relative}.site-header__waves,.site-footer__waves{height:calc(var(--chrome-fade) + var(--chrome-wave-overlap));pointer-events:none;z-index:0;position:absolute;left:0;right:0;overflow:hidden}.site-header__waves{top:calc(100% - var(--chrome-wave-overlap))}.site-footer__waves{bottom:calc(100% - var(--chrome-wave-overlap));transform:scaleY(-1)}.chrome-wave{background:var(--color-primary);will-change:transform;width:200%;height:100%;animation:chrome-wave-flow var(--wave-duration,16s) linear infinite;animation-direction:var(--wave-direction,normal);position:absolute;top:0;left:0;mask-size:50% 100%;mask-repeat:repeat-x}.chrome-wave--a{--wave-duration:14s;opacity:.95;filter:blur(.6px);mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23fff'/%3E%3Cstop offset='.38' stop-color='%23fff' stop-opacity='.8'/%3E%3Cstop offset='1' stop-color='%23fff' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='url(%23g)' d='M0 0h1200v36C1050 78 900 18 750 50 600 82 450 22 300 54 150 86 75 28 0 36V0z'/%3E%3C/svg%3E")}.chrome-wave--b{--wave-duration:22s;--wave-direction:reverse;opacity:.55;filter:blur(5px);mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23fff'/%3E%3Cstop offset='.32' stop-color='%23fff' stop-opacity='.7'/%3E%3Cstop offset='1' stop-color='%23fff' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='url(%23g)' d='M0 0h1200v42C1100 20 980 78 820 46 660 14 520 88 360 52 200 16 100 70 0 42V0z'/%3E%3C/svg%3E")}.chrome-wave--c{--wave-duration:31s;opacity:.35;filter:blur(9px);height:115%;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cdefs%3E%3ClinearGradient id='g' x1='0' y1='0' x2='0' y2='1'%3E%3Cstop offset='0' stop-color='%23fff'/%3E%3Cstop offset='.28' stop-color='%23fff' stop-opacity='.6'/%3E%3Cstop offset='1' stop-color='%23fff' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3Cpath fill='url(%23g)' d='M0 0h1200v48C1080 84 960 24 780 56 600 88 420 20 240 58 120 82 60 30 0 48V0z'/%3E%3C/svg%3E")}.chrome-wave--solid{--wave-duration:18s;opacity:1;filter:none;height:55%;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1200 120' preserveAspectRatio='none'%3E%3Cpath fill='%23fff' d='M0 0h1200v52C1050 88 900 28 750 58 600 88 450 32 300 62 150 92 75 36 0 52V0z'/%3E%3C/svg%3E")}@keyframes chrome-wave-flow{0%{transform:translate(0,0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion:reduce){.chrome-wave{animation:none}}.site-brand{font-family:var(--font-display);letter-spacing:-.01em;color:var(--color-ink-on-primary);white-space:nowrap;transition:color var(--duration) var(--ease-out);justify-self:start;font-size:1.125rem;font-weight:700;text-decoration:none}.site-brand:hover{color:var(--color-ink-on-primary);opacity:.88}.site-header__center{justify-self:center;align-items:center;display:flex;position:relative}.nav-menu{display:none;position:relative}.segment-track{box-sizing:border-box;border:1px solid var(--color-primary);border-radius:var(--radius);background:var(--color-primary);height:36px;color:color-mix(in srgb, var(--color-tertiary) 62%, transparent);flex-shrink:0;align-items:center;display:grid;position:relative}.segment-thumb{border-radius:calc(var(--radius) - 2px);pointer-events:none;z-index:0;background:var(--color-primary);border:1px solid var(--color-secondary);height:calc(100% - 4px);box-shadow:none;transition:transform .2s,width .2s,opacity .2s;position:absolute;top:2px;left:0}.segment-track>:not(.segment-thumb){grid-row:1}@media (prefers-reduced-motion:reduce){.segment-thumb{transition:none}}.site-nav{box-sizing:border-box;border:1px solid var(--color-primary);border-radius:var(--radius);background:var(--color-primary);min-width:17.5rem;height:36px;color:color-mix(in srgb, var(--color-tertiary) 62%, transparent);flex-shrink:0;grid-template-columns:1fr 1fr 1fr;align-items:center;display:grid;position:relative}.site-nav a{z-index:1;height:100%;font-family:var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:inherit;transition:color var(--duration-fast) var(--ease-out);justify-content:center;align-items:center;padding:1.5px .75rem 0 calc(.75rem + .12em);font-size:.8125rem;font-weight:300;line-height:1;text-decoration:none;display:flex;position:relative}.site-nav a:hover{color:var(--color-secondary)}.site-nav a[aria-current=page],.site-nav a[aria-current=page]:hover{color:var(--color-secondary);font-weight:600}.nav-toggle{border:1px solid color-mix(in srgb, var(--color-ink-on-primary) 28%, transparent);border-radius:var(--radius);width:2.5rem;height:2.5rem;color:var(--color-ink-on-primary);cursor:pointer;transition:color var(--duration) var(--ease-out), border-color var(--duration) var(--ease-out), background-color var(--duration) var(--ease-out);background:0 0;justify-content:center;align-items:center;padding:0;display:none}.nav-toggle:hover{color:var(--color-ink-on-primary);border-color:color-mix(in srgb, var(--color-secondary) 55%, transparent);background:color-mix(in srgb, var(--color-ink-on-primary) 8%, transparent)}.nav-toggle__bars{flex-direction:column;gap:5px;width:1.125rem;display:flex}.nav-toggle__bars span{width:100%;height:1px;transition:transform var(--duration) var(--ease-expo), opacity var(--duration-fast) var(--ease-out);background:currentColor;display:block}.nav-toggle[aria-expanded=true] .nav-toggle__bars span:first-child{transform:translateY(6px)rotate(45deg)}.nav-toggle[aria-expanded=true] .nav-toggle__bars span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] .nav-toggle__bars span:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.mobile-nav{z-index:60;visibility:hidden;opacity:0;pointer-events:none;transition:opacity var(--duration) var(--ease-out), visibility var(--duration) var(--ease-out), transform var(--duration) var(--ease-expo);background:0 0;border:none;margin:0;padding:0;display:block;position:absolute;top:calc(100% + .5rem);left:50%;transform:translate(-50%)translateY(-.35rem)}.mobile-nav[data-open=true],.mobile-nav.is-open{visibility:visible;opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}.mobile-nav .site-nav{box-shadow:0 8px 24px color-mix(in srgb, var(--color-ink) 18%, transparent);display:grid}.site-header__actions{justify-self:end;align-items:center;gap:var(--space-sm);display:flex}.theme-toggle-host{flex-shrink:0;align-items:center;display:flex}.theme-toggle{grid-template-columns:1fr 1fr 1fr;width:108px}.theme-toggle-option{all:unset;box-sizing:border-box;cursor:pointer;z-index:1;width:100%;height:100%;color:inherit;transition:color var(--duration-fast) var(--ease-out);justify-content:center;align-items:center;display:flex;position:relative}.theme-toggle-option[aria-checked=true],.theme-toggle-option:hover,.theme-toggle-option[aria-checked=true]:hover{color:var(--color-secondary)}.theme-toggle-option:focus-visible{outline-offset:-2px;outline:2px solid}.theme-toggle-option svg{display:block}.site-main{z-index:1;width:min(calc(100% - 2 * var(--chrome-inset)), var(--site-max));padding-block:var(--space-2xl);flex:1;margin-inline:auto;position:relative}.site-footer{--chrome-fade:5.75rem;--chrome-wave-overlap:1.15rem;z-index:1;margin-inline:0;width:100%;padding:.4rem max(var(--chrome-inset), .85rem);background:var(--color-primary);box-sizing:border-box;border:none;border-radius:0;margin-bottom:0;position:relative;overflow:visible}.site-footer__line{z-index:1;max-width:none;color:color-mix(in srgb, var(--color-ink-on-primary) 78%, transparent);letter-spacing:.02em;text-align:center;margin:0;font-size:.8125rem;position:relative}.btn{justify-content:center;align-items:center;gap:var(--space-xs);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-ink);font-family:var(--font-sans);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:color var(--duration) var(--ease-out), background-color var(--duration) var(--ease-out), border-color var(--duration) var(--ease-out);background:0 0;padding:.85rem 1.5rem;font-size:.8125rem;font-weight:300;text-decoration:none;display:inline-flex}.btn:hover{color:var(--color-ink);border-color:color-mix(in srgb, var(--color-primary) 50%, var(--color-border))}.btn--primary{background:var(--color-secondary);border-color:var(--color-tertiary);color:var(--color-ink-on-secondary)}.btn--primary:hover{background:color-mix(in srgb, var(--color-secondary) 88%, var(--color-ink));border-color:var(--color-tertiary);color:var(--color-ink-on-secondary)}.btn--ghost{border-color:var(--color-tertiary);color:var(--color-primary);background:0 0}.btn--ghost:hover{color:var(--color-ink-on-primary);border-color:var(--color-tertiary);background:var(--color-primary)}.eyebrow{margin:0 0 var(--space-sm);font-family:var(--font-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--color-primary);font-size:.75rem;font-weight:300}.section{padding-block:var(--space-3xl)}.section--tight{padding-block:var(--space-2xl)}.section--loose{padding-block:var(--space-4xl)}.full-bleed{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}@media (width<=768px){.site-header__center>.site-nav{display:none}.nav-menu{display:block}.nav-toggle{display:inline-flex}.site-brand{font-size:1rem}.site-main{padding-block:var(--space-xl)}.section{padding-block:var(--space-2xl)}.section--loose{padding-block:var(--space-3xl)}}
