/* GENERATED from css/SMACSS/site.css by Build/AssetPipeline.cs. Do not edit. */
:root{--color-navy-50:#E8EAF6;--color-navy-100:#C7CBE5;--color-navy-200:#9AA0CA;--color-navy-300:#6B72A8;--color-navy-400:#454C85;--color-navy-500:#2C3366;--color-navy-600:#1F2552;--color-navy-700:#171C42;--color-navy-800:#111534;--color-navy-900:#0C0F26;--color-navy-950:#080A1A;--color-navy-1000:#04050E;--color-gold-50:#FCF7EA;--color-gold-100:#F6EAC6;--color-gold-200:#EDD79B;--color-gold-300:#E1C171;--color-gold-400:#D2A954;--color-gold-500:#B98F3B;--color-gold-600:#997431;--color-gold-700:#785A27;--color-gold-800:#57411C;--color-gold-900:#382A12;--color-purple-50:#F3EFFC;--color-purple-100:#E0D7F6;--color-purple-200:#C3B2ED;--color-purple-300:#A38AE1;--color-purple-400:#8A66D6;--color-purple-500:#6F48C2;--color-purple-600:#5737A0;--color-purple-700:#41297A;--color-purple-800:#2C1C55;--color-purple-900:#1A1136;--color-purple-neon:#A77BFF;--color-neutral-0:#FFFFFF;--color-neutral-50:#F5F6FA;--color-neutral-100:#EBEDF3;--color-neutral-200:#D8DBE5;--color-neutral-300:#B8BDCC;--color-neutral-400:#9097A9;--color-neutral-500:#6C7388;--color-neutral-600:#4F5569;--color-neutral-700:#383D4E;--color-neutral-800:#242836;--color-neutral-900:#151822;--color-neutral-950:#0B0D13;--color-ruby-300:#F2A0AE;--color-ruby-400:#E5687E;--color-ruby-900:#3A0F1A;--color-emerald-300:#86DDB0;--color-emerald-400:#4CC08A;--color-emerald-900:#0C2A1D}:root{--container-max:90rem;--container-narrow:60rem;--container-gutter:clamp(1.25rem,0.6rem + 3.2vw,3.5rem);--grid-columns:12;--grid-gap:clamp(1rem,0.6rem + 1.4vw,2rem);--measure-body:68ch;--measure-short:42ch;--z-base:0;--z-raised:10;--z-nav:200;--z-overlay:300;--z-modal:400;--z-toast:500}:root{--space-0:0px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-14:56px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--space-40:160px;--space-section:clamp(var(--space-20),6rem + 6vw,var(--space-40));--space-stack:clamp(var(--space-8),1.5rem + 2vw,var(--space-16))}:root{--font-family-display:'Bodoni Moda','Bodoni 72',Didot,'Times New Roman',serif;--font-family-body:'Geist','Segoe UI',system-ui,-apple-system,sans-serif;--font-family-mono:'Geist Mono',ui-monospace,'Cascadia Mono',Consolas,monospace;--font-size-2xs:0.6875rem;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-size-6xl:3.75rem;--font-size-7xl:4.5rem;--font-size-fluid-sm:clamp(1.75rem,1.4rem + 1.55vw,2.5rem);--font-size-fluid-md:clamp(2.25rem,1.6rem + 2.9vw,3.75rem);--font-size-fluid-lg:clamp(2.75rem,1.6rem + 5.1vw,5rem);--font-size-fluid-xl:clamp(3.25rem,1.5rem + 7.8vw,6rem);--font-weight-light:300;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:800;--line-height-display:0.94;--line-height-tight:1.1;--line-height-snug:1.25;--line-height-normal:1.5;--line-height-relaxed:1.7;--letter-spacing-display:-0.03em;--letter-spacing-tight:-0.015em;--letter-spacing-normal:0em;--letter-spacing-wide:0.04em;--letter-spacing-wider:0.1em;--letter-spacing-widest:0.18em}:root{--radius-none:0px;--radius-xs:1px;--radius-sm:2px;--radius-md:4px;--radius-lg:8px;--radius-full:9999px;--border-width-none:0px;--border-width-thin:1px;--border-width-medium:2px;--border-width-thick:4px}:root{--duration-instant:0ms;--duration-fast:160ms;--duration-normal:280ms;--duration-slow:480ms;--duration-slower:720ms;--duration-slowest:1100ms;--stagger-step:70ms;--ease-linear:linear;--ease-premium:cubic-bezier(0.16,1,0.3,1);--ease-precise:cubic-bezier(0.65,0,0.35,1);--ease-exit:cubic-bezier(0.7,0,0.84,0)}@media (prefers-reduced-motion:reduce){:root{--duration-fast:1ms;--duration-normal:1ms;--duration-slow:1ms;--duration-slower:1ms;--duration-slowest:1ms;--stagger-step:0ms}}:root{--shadow-none:none;--shadow-xs:0 1px 2px color-mix(in oklab,var(--color-navy-1000) 60%,transparent);--shadow-sm:0 2px 6px -1px color-mix(in oklab,var(--color-navy-1000) 55%,transparent);--shadow-md:0 8px 20px -6px color-mix(in oklab,var(--color-navy-1000) 65%,transparent);--shadow-lg:0 18px 40px -12px color-mix(in oklab,var(--color-navy-1000) 75%,transparent);--shadow-xl:0 32px 64px -20px color-mix(in oklab,var(--color-navy-1000) 85%,transparent);--shadow-inner-sm:inset 0 1px 2px color-mix(in oklab,var(--color-navy-1000) 50%,transparent)}:root{--text-heading:var(--color-neutral-0);--text-primary:var(--color-neutral-50);--text-secondary:var(--color-neutral-300);--text-muted:var(--color-neutral-400);--text-disabled:var(--color-neutral-600);--text-inverse:var(--color-navy-950);--text-on-action:var(--color-navy-950);--text-accent:var(--color-gold-300);--text-link:var(--color-gold-300);--text-link-hover:var(--color-gold-200);--text-aura:var(--color-purple-200);--text-selection-bg:var(--color-gold-400);--text-selection-text:var(--color-navy-1000)}:root{--surface-sunken:var(--color-navy-1000);--surface-canvas:var(--color-navy-950);--surface-raised:var(--color-navy-900);--surface-overlay:var(--color-navy-800);--surface-highlight:var(--color-navy-700);--surface-inverse:var(--color-neutral-50);--surface-scrollbar:var(--color-navy-500);--surface-scrim:color-mix(in oklab,var(--color-navy-950) 72%,transparent)}:root{--border-subtle:color-mix(in oklab,var(--color-neutral-0) 7%,transparent);--border-default:color-mix(in oklab,var(--color-neutral-0) 13%,transparent);--border-strong:var(--color-neutral-500);--border-brand:var(--color-gold-400);--border-brand-subtle:color-mix(in oklab,var(--color-gold-400) 35%,transparent);--border-aura:var(--color-purple-500);--border-error:var(--color-ruby-400);--focus-ring-color:var(--color-gold-300);--focus-ring-width:var(--border-width-medium);--focus-ring-offset:3px}:root{--action-primary:var(--color-gold-400);--action-primary-hover:var(--color-gold-300);--action-primary-active:var(--color-gold-500);--action-primary-text:var(--text-on-action);--action-secondary:transparent;--action-secondary-hover:color-mix(in oklab,var(--color-gold-400) 10%,transparent);--action-secondary-border:var(--border-brand);--action-secondary-text:var(--color-gold-300);--action-ghost-hover:color-mix(in oklab,var(--color-neutral-0) 6%,transparent);--action-disabled:var(--color-navy-700);--action-disabled-text:var(--text-disabled)}:root{--feedback-success-surface:var(--color-emerald-900);--feedback-success-border:var(--color-emerald-400);--feedback-success-text:var(--color-emerald-300);--feedback-warning-surface:var(--color-gold-900);--feedback-warning-border:var(--color-gold-400);--feedback-warning-text:var(--color-gold-200);--feedback-error-surface:var(--color-ruby-900);--feedback-error-border:var(--color-ruby-400);--feedback-error-text:var(--color-ruby-300);--feedback-info-surface:var(--color-purple-900);--feedback-info-border:var(--color-purple-400);--feedback-info-text:var(--color-purple-200)}:root{--aura-core:var(--color-purple-500);--aura-bright:var(--color-purple-neon);--aura-deep:var(--color-purple-800);--aura-wash:radial-gradient(60% 50% at 78% 0%,color-mix(in oklab,var(--color-purple-600) 26%,transparent),transparent 70%),radial-gradient(40% 40% at 10% 100%,color-mix(in oklab,var(--color-purple-800) 30%,transparent),transparent 70%);--elevation-1:var(--shadow-sm);--elevation-2:var(--shadow-md);--elevation-3:var(--shadow-lg),0 24px 48px -24px color-mix(in oklab,var(--color-purple-600) 35%,transparent);--glow-aura:0 14px 40px -12px color-mix(in oklab,var(--color-purple-500) 55%,transparent);--glow-gold:0 10px 28px -12px color-mix(in oklab,var(--color-gold-400) 45%,transparent)}:root{--type-family-heading:var(--font-family-display);--type-family-body:var(--font-family-body);--type-family-data:var(--font-family-mono);--type-display-size:var(--font-size-fluid-xl);--type-h1-size:var(--font-size-fluid-lg);--type-h2-size:var(--font-size-fluid-md);--type-h3-size:var(--font-size-fluid-sm);--type-h4-size:var(--font-size-2xl);--type-h5-size:var(--font-size-xl);--type-h6-size:var(--font-size-lg);--type-heading-weight:var(--font-weight-medium);--type-body-size:var(--font-size-base);--type-body-lg-size:var(--font-size-lg);--type-small-size:var(--font-size-sm);--type-body-weight:var(--font-weight-regular);--type-body-leading:var(--line-height-relaxed);--type-label-size:var(--font-size-xs);--type-label-weight:var(--font-weight-medium);--type-label-tracking:var(--letter-spacing-wider)}:root{--button-background:var(--action-primary);--button-background-hover:var(--action-primary-hover);--button-background-active:var(--action-primary-active);--button-background-disabled:var(--action-disabled);--button-text:var(--action-primary-text);--button-text-disabled:var(--action-disabled-text);--button-border:transparent;--button-border-width:var(--border-width-thin);--button-border-radius:var(--radius-sm);--button-padding-x:var(--space-8);--button-padding-y:var(--space-4);--button-font-size:var(--type-label-size);--button-font-weight:var(--type-label-weight);--button-letter-spacing:var(--letter-spacing-widest);--button-shadow-hover:var(--glow-gold);--button-sheen:color-mix(in oklab,var(--text-heading) 38%,transparent);--button-transition:background-color var(--duration-normal) var(--ease-premium),color var(--duration-normal) var(--ease-premium),border-color var(--duration-normal) var(--ease-premium),box-shadow var(--duration-slow) var(--ease-premium),transform var(--duration-slow) var(--ease-premium)}:root{--project-grid-rule:var(--border-width-thin);--project-card-bg:var(--surface-canvas);--project-card-bg-hover:var(--surface-raised);--project-card-border:var(--border-default);--project-card-border-hover:var(--border-strong);--project-card-border-active:var(--border-brand);--project-card-padding:clamp(var(--space-6),1rem + 1.2vw,var(--space-8));--project-card-padding-featured:clamp(var(--space-6),1rem + 2vw,var(--space-12));--project-card-title-size:var(--type-h4-size);--project-card-title-size-featured:var(--font-size-fluid-sm);--project-card-media-ratio:4 / 3;--project-card-media-scale:1.04;--project-cover-aura:radial-gradient(120% 95% at 0% 100%,color-mix(in oklab,var(--aura-core) 46%,transparent),transparent 62%),var(--surface-raised);--project-cover-gold:radial-gradient(95% 80% at 100% 0%,color-mix(in oklab,var(--action-primary) 30%,transparent),transparent 62%),var(--surface-sunken);--project-cover-abyss:radial-gradient(80% 80% at 50% 120%,color-mix(in oklab,var(--aura-deep) 60%,transparent),transparent 70%),var(--surface-sunken);--project-card-cover-word:color-mix(in oklab,var(--text-heading) 10%,transparent);--project-card-cover-word-gold:color-mix(in oklab,var(--text-accent) 36%,transparent);--project-card-shot-border:var(--border-default);--project-card-shot-border-mobile:var(--border-brand-subtle);--project-card-shot-shadow:var(--elevation-3);--project-card-shot-drift:-3%;--project-card-shot-lift:-4%;--project-card-spotlight:color-mix(in oklab,var(--aura-bright) 20%,transparent);--project-card-spotlight-size:26rem;--project-card-drift:-4%;--project-card-drift-featured:-6%;--project-card-duration:var(--duration-slow);--project-card-ease:var(--ease-premium);--project-filter-text:var(--text-muted);--project-filter-text-active:var(--text-heading);--project-filter-indicator:var(--border-brand)}:root{--badge-background:transparent;--badge-text:var(--text-secondary);--badge-border:var(--border-default);--badge-border-width:var(--border-width-thin);--badge-border-radius:var(--radius-xs);--badge-accent-text:var(--text-accent);--badge-accent-border:var(--border-brand-subtle);--badge-aura-background:color-mix(in oklab,var(--aura-deep) 45%,transparent);--badge-aura-text:var(--text-aura);--badge-aura-border:color-mix(in oklab,var(--aura-core) 50%,transparent);--badge-padding-x:var(--space-2);--badge-padding-y:0.3125rem;--badge-font-size:var(--font-size-2xs);--badge-font-weight:var(--type-label-weight);--badge-letter-spacing:var(--letter-spacing-wider)}:root{--form-input-background:transparent;--form-input-border:var(--border-default);--form-input-border-hover:var(--border-strong);--form-input-border-focus:var(--border-brand);--form-input-border-error:var(--border-error);--form-input-focus-weight:var(--border-width-medium);--form-input-autofill:var(--surface-canvas);--form-input-text:var(--text-primary);--form-input-font-size:var(--type-body-lg-size);--form-input-placeholder:var(--text-muted);--form-input-padding-y:var(--space-3);--form-label-text:var(--text-secondary);--form-label-text-focus:var(--text-accent);--form-error-text:var(--feedback-error-text)}:root{--nav-bg:transparent;--nav-bg-scrolled:var(--surface-scrim);--nav-backdrop:blur(18px) saturate(140%);--nav-border:transparent;--nav-border-scrolled:var(--border-subtle);--nav-link-text:var(--text-secondary);--nav-link-text-hover:var(--text-heading);--nav-link-text-active:var(--text-accent);--nav-link-font-size:var(--type-label-size);--nav-link-tracking:var(--letter-spacing-widest);--nav-indicator-color:var(--border-brand);--nav-indicator-height:var(--border-width-thin);--nav-sheet-bg:var(--surface-overlay);--nav-height:4.5rem;--nav-height-scrolled:3.75rem;--nav-compress-scale:0.8333;--nav-compress-shift:calc((var(--nav-height-scrolled) - var(--nav-height)) / 2);--nav-padding-x:var(--container-gutter);--nav-z:var(--z-nav);--nav-duration:var(--duration-slow);--nav-ease:var(--ease-premium)}:root{--hero-title-size:clamp(4rem,min(1rem + 12vw,21vh),11rem);--hero-title-leading:0.86;--hero-title-color:var(--text-heading);--hero-title-stop:var(--text-accent);--hero-statement-size:var(--type-body-lg-size);--hero-statement-color:var(--text-secondary);--hero-statement-lead:var(--text-heading);--hero-spec-label:var(--text-muted);--hero-spec-value:var(--text-primary);--hero-spec-rule:var(--border-default);--hero-rule-color:var(--border-subtle);--hero-aura-inner:color-mix(in oklab,var(--aura-core) 30%,transparent);--hero-aura-outer:color-mix(in oklab,var(--aura-deep) 22%,transparent);--hero-aura-drift:48px;--hero-pad-top:clamp(var(--space-10),9vh,var(--space-24));--hero-pad-bottom:clamp(var(--space-6),4vh,var(--space-10));--hero-reveal-duration:var(--duration-slowest);--hero-reveal-ease:var(--ease-premium)}:root{--portrait-plate:radial-gradient(110% 80% at 100% 0%,color-mix(in oklab,var(--aura-core) 40%,transparent),transparent 60%),var(--surface-raised);--portrait-frame:var(--border-brand-subtle);--portrait-frame-inset:var(--space-4);--portrait-monogram:color-mix(in oklab,var(--text-heading) 10%,transparent);--ledger-rule:var(--border-default);--ledger-rule-soft:var(--border-subtle);--ledger-marker:var(--border-brand);--status-code:color-mix(in oklab,var(--text-heading) 16%,transparent);--site-footer-bg:var(--surface-sunken);--site-footer-link:var(--text-secondary);--site-footer-link-hover:var(--text-heading);--site-footer-wordmark:color-mix(in oklab,var(--text-heading) 6%,transparent);--site-footer-wordmark-stop:color-mix(in oklab,var(--text-accent) 45%,transparent);--site-footer-wordmark-size:clamp(4.5rem,17vw,17rem)}@font-face{font-family:'Bodoni Moda';font-style:italic;font-weight:400 900;font-display:swap;src:url('/fonts/bodoni-moda/bodoni-moda-italic-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Bodoni Moda';font-style:italic;font-weight:400 900;font-display:swap;src:url('/fonts/bodoni-moda/bodoni-moda-italic-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:400 900;font-display:swap;src:url('/fonts/bodoni-moda/bodoni-moda-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:400 900;font-display:swap;src:url('/fonts/bodoni-moda/bodoni-moda-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Geist';font-style:normal;font-weight:300 700;font-display:swap;src:url('/fonts/geist/geist-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Geist';font-style:normal;font-weight:300 700;font-display:swap;src:url('/fonts/geist/geist-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Geist Mono';font-style:normal;font-weight:400 500;font-display:swap;src:url('/fonts/geist-mono/geist-mono-normal-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Geist Mono';font-style:normal;font-weight:400 500;font-display:swap;src:url('/fonts/geist-mono/geist-mono-normal-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;hanging-punctuation:first last}ul,ol{list-style:none}img,picture,video,canvas,svg{display:block;max-width:100%}img,video{height:auto}input,button,textarea,select{font:inherit;color:inherit;letter-spacing:inherit}button{background:none;border:0;cursor:pointer}textarea{resize:vertical}table{border-collapse:collapse;border-spacing:0}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}[hidden]{display:none !important}html{color-scheme:dark;background-color:var(--surface-canvas);scroll-padding-top:calc(var(--nav-height) + var(--space-6));scrollbar-color:var(--surface-scrollbar) var(--surface-canvas);scrollbar-width:thin}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{min-height:100dvh;background-color:var(--surface-canvas);color:var(--text-primary);font-family:var(--type-family-body);font-size:var(--type-body-size);font-weight:var(--type-body-weight);line-height:var(--type-body-leading);font-kerning:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;caret-color:var(--focus-ring-color)}::selection{background-color:var(--text-selection-bg);color:var(--text-selection-text)}h1,h2,h3,h4,h5,h6{color:var(--text-heading);font-family:var(--type-family-heading);font-weight:var(--type-heading-weight);font-optical-sizing:auto;line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);text-wrap:balance}h1{font-size:var(--type-h1-size);line-height:var(--line-height-display);letter-spacing:var(--letter-spacing-display)}h2{font-size:var(--type-h2-size);line-height:var(--line-height-display);letter-spacing:var(--letter-spacing-display)}h3{font-size:var(--type-h3-size)}h4{font-size:var(--type-h4-size)}h5{font-size:var(--type-h5-size)}h6{font-size:var(--type-h6-size)}p{max-width:var(--measure-body);text-wrap:pretty}small{font-size:var(--type-small-size)}strong,b{font-weight:var(--font-weight-semibold);color:var(--text-heading)}a{color:inherit;text-decoration:none;transition:color var(--duration-normal) var(--ease-premium)}a:hover{color:var(--text-link-hover)}p a{color:var(--text-link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:0.3em;text-decoration-color:var(--border-brand-subtle);transition:color var(--duration-normal) var(--ease-premium),text-decoration-color var(--duration-normal) var(--ease-premium)}p a:hover{text-decoration-color:currentColor}:focus{outline:none}:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset);border-radius:var(--radius-xs)}code,kbd,samp,pre,time,data{font-family:var(--type-family-data);font-variant-numeric:tabular-nums}code,kbd,samp,pre{font-size:0.9em}hr{border:0;border-top:var(--border-width-thin) solid var(--border-subtle)}::placeholder{color:var(--text-muted);opacity:1}img{font-style:italic;background-color:var(--surface-raised)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--surface-canvas)}::-webkit-scrollbar-thumb{background-color:var(--surface-scrollbar);border:3px solid var(--surface-canvas);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background-color:var(--border-brand)}.l-container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-gutter)}.l-header{position:fixed;inset:0 0 auto 0;z-index:var(--nav-z)}.l-main:focus{outline:none}.l-hero{position:relative}.l-footer{width:100%}.l-grid{display:grid;grid-template-columns:repeat(var(--grid-columns),minmax(0,1fr));column-gap:var(--grid-gap)}.l-section{padding-block:var(--space-section)}.l-section--ruled{border-top:var(--border-width-thin) solid var(--border-subtle)}.l-section--flush-top{padding-top:0}.l-section--compact{padding-block:var(--space-12)}.l-section--page{padding-top:calc(var(--nav-height) + var(--space-section) * 0.6);padding-bottom:var(--space-stack)}.site-nav{color:var(--text-primary);transition:transform var(--nav-duration) var(--nav-ease)}.site-nav::before{content:"";position:absolute;inset:0;background-color:var(--nav-bg-scrolled);-webkit-backdrop-filter:var(--nav-backdrop);backdrop-filter:var(--nav-backdrop);border-bottom:var(--border-width-thin) solid var(--nav-border-scrolled);opacity:0;transform-origin:top;transition:opacity var(--nav-duration) var(--nav-ease),transform var(--nav-duration) var(--nav-ease);pointer-events:none}.site-nav__skip{position:absolute;top:var(--space-3);left:var(--container-gutter);z-index:3;padding:var(--space-3) var(--space-4);background-color:var(--action-primary);color:var(--action-primary-text);font-size:var(--type-label-size);font-weight:var(--type-label-weight);letter-spacing:var(--letter-spacing-widest);text-transform:uppercase;transform:translateY(-200%);transition:transform var(--duration-normal) var(--ease-premium)}.site-nav__skip:focus-visible{color:var(--action-primary-text);transform:none}.site-nav__bar{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:var(--space-8);height:var(--nav-height)}.site-nav__brand{position:relative;z-index:2;display:inline-flex;align-items:center;gap:var(--space-3);color:var(--text-heading);transition:transform var(--nav-duration) var(--nav-ease)}.site-nav__brand:hover{color:var(--text-heading)}.site-nav__monogram{display:grid;place-items:center;width:2.25rem;height:2.25rem;border:var(--border-width-thin) solid var(--border-brand-subtle);font-family:var(--type-family-heading);font-size:0.95rem;font-style:italic;font-weight:var(--font-weight-medium);letter-spacing:-0.02em;line-height:1;transition:background-color var(--duration-normal) var(--ease-premium),border-color var(--duration-normal) var(--ease-premium),color var(--duration-normal) var(--ease-premium)}.site-nav__brand:hover .site-nav__monogram{background-color:var(--action-primary);border-color:var(--action-primary);color:var(--text-on-action)}.site-nav__wordmark{font-size:var(--type-label-size);font-weight:var(--type-label-weight);letter-spacing:var(--letter-spacing-widest);text-transform:uppercase}.site-nav__menu{position:fixed;inset:0;z-index:1;display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-12);padding:calc(var(--nav-height) + var(--space-12)) var(--container-gutter) var(--space-10);background:var(--aura-wash),var(--nav-sheet-bg);overflow-y:auto;overscroll-behavior:contain;visibility:hidden;clip-path:inset(0 0 100% 0);transition:clip-path var(--duration-slow) var(--ease-exit),visibility 0s linear var(--duration-slow)}.site-nav__list{display:flex;flex-direction:column;gap:var(--space-2)}.site-nav__item{overflow:clip}.site-nav__item:nth-child(2){--nav-order:1}.site-nav__item:nth-child(3){--nav-order:2}.site-nav__item:nth-child(4){--nav-order:3}.site-nav__link{position:relative;display:inline-block;font-family:var(--type-family-heading);font-size:var(--font-size-fluid-md);font-weight:var(--font-weight-regular);line-height:1.12;letter-spacing:var(--letter-spacing-display);color:var(--nav-link-text);transform:translate3d(0,110%,0);transition:transform var(--duration-slower) var(--ease-premium) calc(var(--stagger-step) * var(--nav-order,0)),color var(--duration-normal) var(--ease-premium)}.site-nav__link:hover{color:var(--nav-link-text-hover)}.site-nav__link--active{color:var(--nav-link-text-active);font-style:italic}.site-nav__link--active:hover{color:var(--nav-link-text-active)}.site-nav__cta{align-self:flex-start}.site-nav__cta--active{background-color:var(--action-secondary-hover)}.site-nav__indicator{display:none}.site-nav__toggle{position:relative;z-index:2;display:inline-flex;align-items:center;gap:var(--space-3);min-height:44px;padding-inline:var(--space-1);color:var(--text-heading);font-size:var(--type-label-size);font-weight:var(--type-label-weight);letter-spacing:var(--letter-spacing-widest);text-transform:uppercase;transition:transform var(--nav-duration) var(--nav-ease)}.site-nav__toggle-icon{position:relative;width:22px;height:8px}.site-nav__toggle-line{position:absolute;left:0;width:100%;height:1px;background-color:currentColor;transition:transform var(--duration-slow) var(--ease-premium)}.site-nav__toggle-line:first-child{top:0}.site-nav__toggle-line:last-child{top:7px}.no-js .site-nav__toggle{display:none}.no-js .site-nav__menu{position:static;flex-direction:row;padding:0;background:none;visibility:visible;clip-path:none}.no-js .site-nav__list{flex-direction:row;gap:var(--space-4)}.no-js .site-nav__link{font-family:var(--type-family-body);font-size:var(--nav-link-font-size);letter-spacing:var(--nav-link-tracking);text-transform:uppercase;transform:none}.no-js .site-nav__cta{display:none}@media (min-width:992px){.site-nav__toggle{display:none}.site-nav__menu{position:relative;inset:auto;z-index:auto;flex-direction:row;align-items:center;justify-content:flex-end;gap:var(--space-10);padding:0;background:none;overflow:visible;visibility:visible;clip-path:none;transition:transform var(--nav-duration) var(--nav-ease)}.site-nav__list{flex-direction:row;gap:var(--space-8)}.site-nav__item{overflow:visible}.site-nav__link{display:block;padding-block:var(--space-3);font-family:var(--type-family-body);font-size:var(--nav-link-font-size);font-style:normal;font-weight:var(--font-weight-medium);letter-spacing:var(--nav-link-tracking);line-height:1;text-transform:uppercase;transform:none;transition:color var(--duration-normal) var(--ease-premium)}.site-nav__link::after{content:"";position:absolute;right:0;bottom:0;left:0;height:var(--nav-indicator-height);background-color:var(--nav-indicator-color);transform:scaleX(0);transform-origin:left}.site-nav__link--active::after{transform:scaleX(1)}.site-nav__indicator{position:absolute;top:0;left:0;display:block;width:1px;height:var(--nav-indicator-height);background-color:var(--nav-indicator-color);transform-origin:left center;transform:translate3d(var(--indicator-x,0px),var(--indicator-y,0px),0) scaleX(var(--indicator-w,0));opacity:0;pointer-events:none;transition:transform var(--duration-slow) var(--ease-premium),opacity var(--duration-normal) var(--ease-premium)}.site-nav__cta{align-self:auto}}.site-footer{overflow:clip;padding-top:var(--space-section);background-color:var(--site-footer-bg);border-top:var(--border-width-thin) solid var(--border-subtle)}.site-footer__top{row-gap:var(--space-12)}.site-footer__intro{grid-column:1 / -1;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-5)}.site-footer__tagline{max-width:18ch;color:var(--text-heading);font-family:var(--type-family-heading);font-size:var(--font-size-fluid-sm);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);text-wrap:balance}.site-footer__nav,.site-footer__social{grid-column:span 6}.site-footer__label{margin-bottom:var(--space-5);color:var(--text-muted);font-family:var(--type-family-body);font-size:var(--font-size-2xs);font-weight:var(--type-label-weight);letter-spacing:var(--letter-spacing-widest);line-height:var(--line-height-normal);text-transform:uppercase}.site-footer__list{display:flex;flex-direction:column;gap:var(--space-3)}.site-footer__link{color:var(--site-footer-link);transition:color var(--duration-normal) var(--ease-premium)}.site-footer__link:hover{color:var(--site-footer-link-hover)}.site-footer__bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-2) var(--space-8);margin-top:var(--space-20);padding-block:var(--space-6);border-top:var(--border-width-thin) solid var(--border-subtle)}.site-footer__meta{max-width:none;color:var(--text-muted);font-size:var(--font-size-xs)}.site-footer__legal{display:flex;gap:var(--space-6)}.site-footer__meta-link{color:var(--text-muted);font-size:var(--font-size-xs);transition:color var(--duration-normal) var(--ease-premium)}.site-footer__meta-link:hover{color:var(--site-footer-link-hover)}.site-footer__wordmark{max-width:none;margin-bottom:-0.2em;padding-inline:var(--container-gutter);color:var(--site-footer-wordmark);font-family:var(--type-family-heading);font-size:var(--site-footer-wordmark-size);line-height:1;letter-spacing:var(--letter-spacing-display);white-space:nowrap;user-select:none;pointer-events:none}.site-footer__wordmark-stop{color:var(--site-footer-wordmark-stop)}@media (min-width:992px){.site-footer__intro{grid-column:1 / 7}.site-footer__nav{grid-column:8 / 10}.site-footer__social{grid-column:10 / -1}}.btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--button-padding-y) var(--button-padding-x);font-family:var(--type-family-body);font-size:var(--button-font-size);font-weight:var(--button-font-weight);letter-spacing:var(--button-letter-spacing);line-height:1;text-transform:uppercase;text-decoration:none;white-space:nowrap;border:var(--button-border-width) solid transparent;border-radius:var(--button-border-radius);cursor:pointer;transition:var(--button-transition)}.btn__icon{flex-shrink:0;transition:transform var(--duration-slow) var(--ease-premium)}.btn:hover .btn__icon,.btn:focus-visible .btn__icon{transform:translateX(3px)}.btn--primary{background-color:var(--button-background);color:var(--button-text);border-color:var(--button-background)}.btn--primary::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 30%,var(--button-sheen) 50%,transparent 70%);transform:translateX(-110%);transition:transform var(--duration-slower) var(--ease-premium)}.btn--primary:hover{background-color:var(--button-background-hover);color:var(--button-text);border-color:var(--button-background-hover);box-shadow:var(--button-shadow-hover);transform:translateY(-1px)}.btn--primary:hover::before{transform:translateX(110%)}.btn--primary:active{background-color:var(--button-background-active);border-color:var(--button-background-active);box-shadow:none;transform:none}.btn--secondary{background-color:var(--action-secondary);color:var(--action-secondary-text);border-color:var(--action-secondary-border)}.btn--secondary:hover{background-color:var(--action-secondary-hover);color:var(--action-secondary-text)}.btn--ghost{background-color:transparent;color:var(--text-primary);border-color:transparent}.btn--ghost:hover{background-color:var(--action-ghost-hover);color:var(--text-primary)}.btn--compact{padding:var(--space-3) var(--space-5)}.btn:disabled,.btn[disabled]{background-color:var(--button-background-disabled);color:var(--button-text-disabled);border-color:transparent;box-shadow:none;cursor:not-allowed;pointer-events:none}.badge{display:inline-flex;align-items:center;padding:var(--badge-padding-y) var(--badge-padding-x);background-color:var(--badge-background);color:var(--badge-text);border:var(--badge-border-width) solid var(--badge-border);border-radius:var(--badge-border-radius);font-family:var(--type-family-body);font-size:var(--badge-font-size);font-weight:var(--badge-font-weight);letter-spacing:var(--badge-letter-spacing);line-height:1;text-transform:uppercase;white-space:nowrap}.badge--accent{color:var(--badge-accent-text);border-color:var(--badge-accent-border)}.badge--aura{background-color:var(--badge-aura-background);color:var(--badge-aura-text);border-color:var(--badge-aura-border)}.line-link{position:relative;display:inline-flex;padding-block:var(--space-2);color:var(--text-heading);font-size:var(--type-label-size);font-weight:var(--type-label-weight);letter-spacing:var(--letter-spacing-widest);text-transform:uppercase}.line-link::after{content:"";position:absolute;right:0;bottom:0;left:0;height:var(--border-width-thin);background-color:var(--border-brand);transform:scaleX(0.3);transform-origin:left;transition:transform var(--duration-slow) var(--ease-premium)}.line-link:hover{color:var(--text-heading)}.line-link:hover::after,.line-link:focus-visible::after{transform:scaleX(1)}.alert{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2) var(--space-3);margin-bottom:var(--space-12);padding:var(--space-5) var(--space-6);border:var(--border-width-thin) solid}.alert__title{font-weight:var(--font-weight-semibold)}.alert--success{background-color:var(--feedback-success-surface);border-color:var(--feedback-success-border);color:var(--feedback-success-text)}.alert--success .alert__title{color:var(--feedback-success-text)}.alert--error{background-color:var(--feedback-error-surface);border-color:var(--feedback-error-border);color:var(--feedback-error-text)}.alert--error ul{display:grid;gap:var(--space-1)}.section-head{row-gap:var(--space-6);align-items:end;margin-bottom:var(--space-stack)}.section-head__title{grid-column:1 / -1;font-size:var(--type-h1-size);line-height:var(--line-height-display);letter-spacing:var(--letter-spacing-display)}.section-head__aside{grid-column:1 / -1;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-5)}.section-head__body{max-width:var(--measure-short);color:var(--text-secondary)}.section-head--page .section-head__title{font-size:var(--type-display-size)}.section-head--balanced{align-items:start}@media (min-width:768px){.section-head__title{grid-column:1 / 8}.section-head__aside{grid-column:8 / -1}}@media (min-width:1200px){.section-head__aside{grid-column:10 / -1}}@media (min-width:768px){.section-head--balanced .section-head__title{grid-column:1 / 7}.section-head--balanced .section-head__aside{grid-column:8 / -1}}.hero{isolation:isolate;overflow:clip}.hero__aura{position:absolute;top:-40vh;right:-30vw;z-index:-1;width:min(90rem,140vw);aspect-ratio:1;background:radial-gradient(closest-side,var(--hero-aura-inner),var(--hero-aura-outer) 50%,transparent);transform:translate3d(var(--hero-aura-x,0px),var(--hero-aura-y,0px),0);pointer-events:none}.hero__grid{position:relative;display:grid;grid-template-columns:repeat(var(--grid-columns),minmax(0,1fr));grid-template-rows:auto auto 1fr auto;column-gap:var(--grid-gap);min-height:min(100svh,64rem);padding-top:calc(var(--nav-height) + var(--hero-pad-top));padding-bottom:var(--hero-pad-bottom)}.hero__rule{display:none}.hero__title{position:relative;z-index:1;grid-column:1 / -1;grid-row:1;display:flex;flex-direction:column;color:var(--hero-title-color);font-size:var(--hero-title-size);font-weight:var(--font-weight-regular);line-height:var(--hero-title-leading);letter-spacing:var(--letter-spacing-display);white-space:nowrap}.hero__title-line{display:block;overflow:clip;padding-block:0.12em 0.06em;margin-block:-0.12em -0.06em;padding-inline-end:0.14em}.hero__title-line--offset{padding-inline-start:calc((100% + var(--grid-gap)) / 12);font-style:italic}.hero__title-text{display:inline-block}.hero__title-stop{color:var(--hero-title-stop)}.hero__intro{position:relative;z-index:1;grid-column:1 / -1;grid-row:2;margin-top:var(--space-10)}.hero__statement{max-width:38ch;font-size:var(--hero-statement-size);line-height:var(--line-height-relaxed);color:var(--hero-statement-color)}.hero__statement-lead{color:var(--hero-statement-lead)}.hero__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4) var(--space-8);margin-top:var(--space-8)}.hero__specs{position:relative;z-index:1;grid-column:1 / -1;grid-row:4;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-6) var(--grid-gap);margin-top:var(--space-16);padding-top:var(--space-5);border-top:var(--border-width-thin) solid var(--hero-spec-rule)}.hero__spec{position:relative;display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.hero__spec-label{color:var(--hero-spec-label);font-size:var(--font-size-2xs);font-weight:var(--type-label-weight);letter-spacing:var(--letter-spacing-widest);text-transform:uppercase}.hero__spec-value{color:var(--hero-spec-value);font-size:var(--type-small-size)}.hero__clock{letter-spacing:0.02em}@media (min-width:768px){.hero__title-line--offset{padding-inline-start:calc((100% + var(--grid-gap)) / 6)}.hero__grid{grid-template-rows:auto minmax(var(--space-12),1fr) auto auto}.hero__intro{grid-column:6 / -1;grid-row:1;margin-top:0}.hero__title{grid-row:3}.hero__specs{grid-row:4;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:var(--space-10)}.hero__spec + .hero__spec::before{content:"";position:absolute;top:calc(-1 * var(--space-5));bottom:0;left:calc(var(--grid-gap) / -2);width:var(--border-width-thin);background-color:var(--hero-spec-rule)}}@media (min-width:992px){.hero__intro{grid-column:7 / -1}.hero__specs{grid-template-columns:subgrid}.hero__spec{grid-column:span 3}}@media (min-width:1200px){.hero__intro{grid-column:10 / -1}.hero__title{grid-column:1 / 10;grid-row:1 / 4;align-self:end;margin-top:var(--space-12)}.hero__title-line--offset{padding-inline-start:calc((100% + var(--grid-gap)) * 2 / 9)}.hero__rule{display:block;grid-row:1 / -1;justify-self:start;width:var(--border-width-thin);margin-top:calc(-1 * (var(--nav-height) + var(--hero-pad-top)));margin-bottom:calc(-1 * var(--hero-pad-bottom));margin-left:calc(var(--grid-gap) / -2);background:linear-gradient(to bottom,transparent,var(--hero-rule-color) 35%);transform-origin:top}.hero__rule--first{grid-column:4}.hero__rule--second{grid-column:7;--hero-order:1}.hero__rule--third{grid-column:10;--hero-order:2}}@media (prefers-reduced-motion:no-preference){.is-enhanced .hero__rule{animation:hero-rule-draw var(--hero-reveal-duration) var(--hero-reveal-ease) both;animation-delay:calc(var(--stagger-step) * var(--hero-order,0))}.is-enhanced .hero__title-text{animation:hero-line-rise var(--hero-reveal-duration) var(--hero-reveal-ease) both;animation-delay:calc(var(--stagger-step) * 2 * var(--hero-order,0))}.hero__title-line--offset{--hero-order:1}.is-enhanced .hero__intro,.is-enhanced .hero__specs{animation:hero-resolve var(--duration-slower) var(--hero-reveal-ease) both;animation-delay:620ms}.is-enhanced .hero__specs{animation-delay:780ms}}.prose{max-width:var(--measure-body);color:var(--text-secondary)}.prose>* + *{margin-top:var(--space-5)}.prose>h2{margin-top:var(--space-16);padding-top:var(--space-5);border-top:var(--border-width-thin) solid var(--ledger-rule-soft);font-size:var(--type-h4-size)}.prose>h3{margin-top:var(--space-8);font-size:var(--font-size-xl)}.prose>h2 + *,.prose>h3 + *{margin-top:var(--space-4)}.prose ul{display:grid;gap:var(--space-2)}.prose li{position:relative;padding-left:var(--space-6)}.prose ul>li::before{content:"";position:absolute;top:0.85em;left:0;width:var(--space-3);height:var(--border-width-thin);background-color:var(--ledger-marker)}.prose a{color:var(--text-link);text-decoration:underline;text-decoration-color:var(--border-brand-subtle);text-decoration-thickness:var(--border-width-thin);text-underline-offset:0.3em;overflow-wrap:anywhere;transition:color var(--duration-normal) var(--ease-premium),text-decoration-color var(--duration-normal) var(--ease-premium)}.prose a:hover{color:var(--text-link-hover);text-decoration-color:currentColor}.prose code{padding:0.1em 0.35em;background-color:var(--surface-raised);border:var(--border-width-thin) solid var(--border-subtle);color:var(--text-primary);font-size:0.85em;overflow-wrap:anywhere}.prose__lead{color:var(--text-primary);font-size:var(--type-body-lg-size)}.prose__table{overflow-x:auto;border-top:var(--border-width-thin) solid var(--ledger-rule)}.prose__table table{width:100%;min-width:40rem;font-size:var(--type-small-size)}.prose__table th{padding:var(--space-4) var(--space-4) var(--space-4) 0;border-bottom:var(--border-width-thin) solid var(--ledger-rule);color:var(--text-muted);font-size:var(--font-size-2xs);font-weight:var(--type-label-weight);letter-spacing:var(--letter-spacing-widest);text-align:left;text-transform:uppercase}.prose__table td{padding:var(--space-4) var(--space-4) var(--space-4) 0;border-bottom:var(--border-width-thin) solid var(--ledger-rule-soft);vertical-align:top}.legal{row-gap:var(--space-12);align-items:start}.legal__meta,.legal__body{grid-column:1 / -1}.legal__updated{display:flex;flex-direction:column;gap:var(--space-2);color:var(--text-accent);font-family:var(--type-family-data);font-size:var(--type-small-size);font-variant-numeric:tabular-nums}.legal__updated-label,.legal__toc-label{color:var(--text-muted);font-family:var(--type-family-body);font-size:var(--font-size-2xs);font-weight:var(--type-label-weight);letter-spacing:var(--letter-spacing-widest);text-transform:uppercase}.legal__toc{display:none}.legal__toc-label{margin-bottom:var(--space-4)}.legal__toc-list{display:flex;flex-direction:column;gap:var(--space-1);border-left:var(--border-width-thin) solid var(--ledger-rule-soft)}.legal__toc-link{display:block;margin-left:calc(-1 * var(--border-width-thin));padding:var(--space-1) 0 var(--space-1) var(--space-4);border-left:var(--border-width-thin) solid transparent;color:var(--text-muted);font-size:var(--type-small-size);transition:color var(--duration-normal) var(--ease-premium),border-left-color var(--duration-normal) var(--ease-premium)}.legal__toc-link:hover{border-left-color:var(--border-brand);color:var(--text-heading)}@media (min-width:992px){.legal__meta{position:sticky;top:calc(var(--nav-height) + var(--space-8));grid-column:1 / 4;display:flex;flex-direction:column;gap:var(--space-10)}.legal__toc{display:block}.legal__body{grid-column:5 / -1}}@media (min-width:1200px){.legal__body{grid-column:5 / 12}}.status{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-10);padding-top:var(--space-8);border-top:var(--border-width-thin) solid var(--border-default)}.status__code{color:var(--status-code);font-family:var(--type-family-heading);font-size:var(--font-size-fluid-xl);font-style:italic;line-height:var(--line-height-display);letter-spacing:var(--letter-spacing-display);font-variant-numeric:lining-nums}.status__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4) var(--space-8)}.status__reference{color:var(--text-muted);font-size:var(--type-small-size)}.status__reference code{color:var(--text-secondary);font-family:var(--type-family-data);overflow-wrap:anywhere}.project-grid{display:grid;grid-template-columns:minmax(0,1fr);grid-auto-flow:row dense}.project-grid__item{position:relative;display:flex;min-width:0;margin:0 calc(-1 * var(--project-grid-rule)) calc(-1 * var(--project-grid-rule)) 0}.project-grid__item:hover,.project-grid__item:focus-within{z-index:1}@media (min-width:768px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.project-grid__item--featured{grid-column:span 2}}@media (min-width:992px){.project-grid{grid-template-columns:repeat(var(--grid-columns),minmax(0,1fr))}.project-grid__item{grid-column:span 4}.project-grid__item--featured{grid-column:span 8}}.project-card{position:relative;isolation:isolate;display:flex;flex:1 1 auto;flex-direction:column;min-width:0;background-color:var(--project-card-bg);border:var(--project-grid-rule) solid var(--project-card-border);overflow:clip;transition:background-color var(--project-card-duration) var(--project-card-ease),border-color var(--project-card-duration) var(--project-card-ease)}.project-card__media{position:relative;aspect-ratio:var(--project-card-media-ratio);overflow:clip;background-color:var(--surface-sunken);container-type:inline-size}.project-card__image{width:100%;height:100%;object-fit:cover;object-position:top center;transition:transform var(--duration-slower) var(--project-card-ease)}.project-card__shot{position:absolute;display:block;background-color:var(--surface-sunken);border:var(--border-width-thin) solid var(--project-card-shot-border);box-shadow:var(--project-card-shot-shadow);object-fit:cover;object-position:top;transition:transform var(--duration-slower) var(--project-card-ease)}.project-card__shot--desktop{top:10%;left:7%;width:112%;aspect-ratio:16 / 9;border-radius:var(--radius-md)}.project-card__shot--mobile{right:7%;bottom:7%;width:28%;aspect-ratio:9 / 19.5;border-color:var(--project-card-shot-border-mobile);border-radius:var(--radius-lg)}.project-card__cover{position:absolute;inset:0}.project-card__cover--aura{background:var(--project-cover-aura)}.project-card__cover--gold{background:var(--project-cover-gold)}.project-card__cover--abyss{background:var(--project-cover-abyss)}.project-card__cover-word{position:absolute;bottom:-0.2em;left:-0.05em;color:var(--project-card-cover-word);font-family:var(--type-family-heading);font-size:36cqi;font-style:italic;font-weight:var(--font-weight-regular);line-height:1;letter-spacing:-0.04em;white-space:nowrap;transition:transform var(--duration-slower) var(--project-card-ease)}.project-card__cover--gold .project-card__cover-word{color:var(--project-card-cover-word-gold)}.project-card__body{display:flex;flex:1 1 auto;flex-direction:column;gap:var(--space-3);padding:var(--project-card-padding)}.project-card__category{color:var(--text-accent);font-size:var(--font-size-2xs);font-weight:var(--type-label-weight);letter-spacing:var(--letter-spacing-widest);text-transform:uppercase}.project-card__title{font-size:var(--project-card-title-size);line-height:var(--line-height-snug)}.project-card__link{color:inherit}.project-card__link:hover{color:inherit}.project-card__link::after{content:"";position:absolute;inset:0;z-index:3}.project-card__link-note{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.project-card__link:focus-visible{outline:none}.project-card__summary{max-width:52ch;color:var(--text-secondary);font-size:var(--type-small-size);line-height:var(--line-height-relaxed)}.project-card__highlights{display:grid;gap:var(--space-2);margin-top:var(--space-2)}.project-card__highlight{position:relative;padding-left:var(--space-5);color:var(--text-primary);font-size:var(--type-small-size);line-height:var(--line-height-normal)}.project-card__highlight::before{content:"";position:absolute;top:0.75em;left:0;width:var(--space-3);height:var(--border-width-thin);background-color:var(--ledger-marker)}.project-card__tags{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:auto;padding-top:var(--space-4)}.project-card__cta{position:relative;display:inline-flex;align-self:flex-start;align-items:center;gap:var(--space-2);margin-top:var(--space-4);padding-block:var(--space-2);color:var(--text-heading);font-size:var(--type-label-size);font-weight:var(--type-label-weight);letter-spacing:var(--letter-spacing-widest);text-transform:uppercase}.project-card__cta::after{content:"";position:absolute;right:0;bottom:0;left:0;height:var(--border-width-thin);background-color:var(--border-brand);transform:scaleX(0.3);transform-origin:left;transition:transform var(--project-card-duration) var(--project-card-ease)}.project-card__cta-icon{transition:transform var(--project-card-duration) var(--project-card-ease)}.project-card__spotlight{position:absolute;inset:0;z-index:2;background:radial-gradient( var(--project-card-spotlight-size) circle at var(--spot-x,50%) var(--spot-y,50%),var(--project-card-spotlight),transparent 70%);mix-blend-mode:screen;opacity:0;pointer-events:none;transition:opacity var(--project-card-duration) var(--project-card-ease)}@media (hover:hover){.project-card:hover{border-color:var(--project-card-border-hover)}.project-card:hover .project-card__spotlight{opacity:1}.project-card:hover .project-card__cover-word{transform:translate3d(var(--project-card-drift),0,0)}}.project-card--linked:hover,.project-card--linked:focus-within{background-color:var(--project-card-bg-hover);border-color:var(--project-card-border-active)}.project-card--linked:hover .project-card__image,.project-card--linked:focus-within .project-card__image{transform:scale(var(--project-card-media-scale))}.project-card--linked:hover .project-card__shot--desktop,.project-card--linked:focus-within .project-card__shot--desktop{transform:translate3d(var(--project-card-shot-drift),0,0)}.project-card--linked:hover .project-card__shot--mobile,.project-card--linked:focus-within .project-card__shot--mobile{transform:translate3d(0,var(--project-card-shot-lift),0)}.project-card--linked:hover .project-card__cta::after,.project-card--linked:focus-within .project-card__cta::after{transform:scaleX(1)}.project-card--linked:hover .project-card__cta-icon,.project-card--linked:focus-within .project-card__cta-icon{transform:translateX(3px)}.project-card--linked:hover .project-card__cta-icon--external,.project-card--linked:focus-within .project-card__cta-icon--external{transform:translate(2px,-2px)}.project-card--linked:has(.project-card__link:focus-visible){outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:calc(-1 * var(--focus-ring-width))}.project-card--featured .project-card__title{font-size:var(--project-card-title-size-featured);line-height:var(--line-height-tight)}.project-card--featured .project-card__cover-word{font-size:30cqi}@media (hover:hover){.project-card--featured:hover .project-card__cover-word{transform:translate3d(var(--project-card-drift-featured),0,0)}}@media (min-width:768px){.project-card--featured{flex-direction:row}.project-card--featured .project-card__media{flex:0 0 62.5%;aspect-ratio:auto;min-height:22rem;container-type:size}.project-card--featured .project-card__shot--desktop{top:18%;left:8%}.project-card--featured .project-card__shot--mobile{right:8%;bottom:9%;width:30%}.project-card--featured .project-card__cover-word{font-size:min(56cqb,32cqi)}.project-card--featured .project-card__body{padding:var(--project-card-padding-featured)}}.project-card:target{animation:project-card-arrive 2400ms var(--project-card-ease)}.project-filter{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:var(--space-4) var(--space-8);padding-bottom:var(--space-6)}.project-filter__list{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-8)}.project-filter__option{position:relative;display:inline-flex;align-items:flex-start;gap:var(--space-1);padding-block:var(--space-2);color:var(--project-filter-text);font-size:var(--type-label-size);font-weight:var(--type-label-weight);letter-spacing:var(--letter-spacing-widest);text-transform:uppercase;transition:color var(--duration-normal) var(--ease-premium)}.project-filter__option::after{content:"";position:absolute;right:0;bottom:0;left:0;height:var(--border-width-thin);background-color:var(--project-filter-indicator);transform:scaleX(0);transform-origin:left;transition:transform var(--duration-slow) var(--ease-premium)}.project-filter__option:hover{color:var(--project-filter-text-active)}.project-filter__count{font-family:var(--type-family-data);font-size:0.625rem;font-variant-numeric:tabular-nums;letter-spacing:0.04em;color:var(--text-muted);transform:translateY(-0.35em)}.project-filter__status{color:var(--text-muted);font-size:var(--type-small-size)}.bio{row-gap:var(--space-12);align-items:start}.bio__portrait{grid-column:1 / -1;max-width:24rem}.bio__content{grid-column:1 / -1}.bio__title{margin-bottom:var(--space-8);font-size:var(--type-h1-size)}.bio__text{color:var(--text-secondary);font-size:var(--type-body-lg-size)}.bio__text:first-of-type{color:var(--text-primary)}.bio__text + .bio__text{margin-top:var(--space-5)}.bio__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4) var(--space-8);margin-top:var(--space-10)}@media (min-width:768px){.bio__portrait{position:sticky;top:calc(var(--nav-height) + var(--space-8));grid-column:1 / 6;max-width:none}.bio__content{grid-column:7 / -1}}.portrait__plate{position:relative;aspect-ratio:4 / 5;overflow:clip;background:var(--portrait-plate);border:var(--border-width-thin) solid var(--ledger-rule);container-type:inline-size}.portrait__plate::after{content:"";position:absolute;inset:var(--portrait-frame-inset);border:var(--border-width-thin) solid var(--portrait-frame);pointer-events:none}.portrait__image{width:100%;height:100%;object-fit:cover}.portrait__monogram{position:absolute;bottom:-0.18em;left:-0.06em;color:var(--portrait-monogram);font-family:var(--type-family-heading);font-size:88cqi;font-style:italic;line-height:1;letter-spacing:-0.04em;white-space:nowrap}.portrait__caption{display:flex;justify-content:space-between;gap:var(--space-4);max-width:none;margin-top:var(--space-4);color:var(--text-muted);font-size:var(--font-size-2xs);font-weight:var(--type-label-weight);letter-spacing:var(--letter-spacing-widest);text-transform:uppercase}.capability-list{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-12) var(--grid-gap)}.capability-list__group{position:relative;padding-top:var(--space-5);border-top:var(--border-width-thin) solid var(--ledger-rule)}.capability-list__label{margin-bottom:var(--space-6);color:var(--text-muted);font-family:var(--type-family-body);font-size:var(--font-size-2xs);font-weight:var(--type-label-weight);letter-spacing:var(--letter-spacing-widest);line-height:var(--line-height-normal);text-transform:uppercase}.capability-list__items{display:flex;flex-direction:column;gap:var(--space-2)}.capability-list__item{color:var(--text-primary);font-family:var(--type-family-heading);font-size:var(--font-size-xl);line-height:var(--line-height-snug)}@media (min-width:768px){.capability-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:992px){.capability-list{grid-template-columns:none;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column}.capability-list__group + .capability-list__group::before{content:"";position:absolute;top:calc(-1 * var(--space-5));bottom:0;left:calc(var(--grid-gap) / -2);width:var(--border-width-thin);background-color:var(--ledger-rule-soft)}}.principle-list{border-bottom:var(--border-width-thin) solid var(--ledger-rule)}.principle-list__item{row-gap:var(--space-4);padding-block:var(--space-10);border-top:var(--border-width-thin) solid var(--ledger-rule)}.principle-list__title{grid-column:1 / -1;font-size:var(--font-size-fluid-sm);line-height:var(--line-height-tight)}.principle-list__body{grid-column:1 / -1;max-width:52ch;color:var(--text-secondary);font-size:var(--type-body-lg-size)}@media (min-width:768px){.principle-list__title{grid-column:1 / 6}.principle-list__body{grid-column:7 / -1;padding-top:0.4em}}.timeline{border-bottom:var(--border-width-thin) solid var(--ledger-rule)}.timeline__entry{display:grid;grid-template-columns:minmax(0,1fr);row-gap:var(--space-5);padding-block:var(--space-10);border-top:var(--border-width-thin) solid var(--ledger-rule)}.timeline__meta{display:flex;flex-direction:column;gap:var(--space-1)}.timeline__period{color:var(--text-accent);font-family:var(--type-family-data);font-size:var(--type-small-size);font-variant-numeric:tabular-nums;letter-spacing:0.02em}.timeline__org{color:var(--text-secondary);font-size:var(--type-small-size)}.timeline__role{font-size:var(--font-size-fluid-sm);line-height:var(--line-height-tight)}.timeline__summary{max-width:60ch;margin-top:var(--space-4);color:var(--text-secondary);font-size:var(--type-body-lg-size)}.timeline__highlights{display:grid;gap:var(--space-3);max-width:64ch;margin-top:var(--space-6)}.timeline__highlight{position:relative;padding-left:var(--space-6);color:var(--text-primary)}.timeline__highlight::before{content:"";position:absolute;top:0.85em;left:0;width:var(--space-3);height:var(--border-width-thin);background-color:var(--ledger-marker)}@media (min-width:768px){.timeline__entry{grid-template-columns:repeat(var(--grid-columns),minmax(0,1fr));column-gap:var(--grid-gap)}.timeline__meta{grid-column:1 / 4;padding-top:0.5em}.timeline__body{grid-column:5 / -1}}.contact{row-gap:var(--space-16);align-items:start}.contact__form,.contact__details{grid-column:1 / -1}.contact__direct{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-5);padding-top:var(--space-6);border-top:var(--border-width-thin) solid var(--border-default)}.contact__direct-lead{color:var(--text-secondary);font-size:var(--type-body-lg-size)}.contact__direct-link{color:var(--text-heading);font-family:var(--type-family-heading);font-size:var(--font-size-fluid-sm);line-height:var(--line-height-tight);text-decoration:underline;text-decoration-color:var(--border-brand);text-decoration-thickness:var(--border-width-thin);text-underline-offset:0.25em;overflow-wrap:anywhere;transition:text-decoration-color var(--duration-normal) var(--ease-premium)}.contact__direct-link:hover{color:var(--text-heading);text-decoration-color:var(--text-accent)}@media (min-width:992px){.contact__form{grid-column:1 / 8}.contact__details{grid-column:9 / -1}}@media (min-width:1200px){.contact__details{grid-column:10 / -1}}.form__trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form__grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-10) var(--grid-gap)}.form__field{display:flex;flex-direction:column;gap:var(--space-2)}.form__label{color:var(--form-label-text);font-size:var(--type-label-size);font-weight:var(--type-label-weight);letter-spacing:var(--letter-spacing-widest);text-transform:uppercase;transition:color var(--duration-normal) var(--ease-premium)}.form__field:focus-within .form__label{color:var(--form-label-text-focus)}.form__input{width:100%;padding:var(--form-input-padding-y) 0;background-color:var(--form-input-background);background-image:linear-gradient(var(--form-input-border-focus),var(--form-input-border-focus));background-position:left bottom;background-repeat:no-repeat;background-size:0% var(--form-input-focus-weight);border:0;border-bottom:var(--border-width-thin) solid var(--form-input-border);border-radius:0;color:var(--form-input-text);font-size:var(--form-input-font-size);transition:background-size var(--duration-slow) var(--ease-premium),border-bottom-color var(--duration-normal) var(--ease-premium)}.form__input:hover{border-bottom-color:var(--form-input-border-hover)}.form__input:focus,.form__input:focus-visible{outline:none;background-size:100% var(--form-input-focus-weight)}.form__input:-webkit-autofill{-webkit-box-shadow:0 0 0 100vmax var(--form-input-autofill) inset;-webkit-text-fill-color:var(--form-input-text);caret-color:var(--form-input-text)}.form__input--textarea{min-height:9rem;line-height:var(--line-height-relaxed);resize:vertical}.form__error{color:var(--form-error-text);font-size:var(--type-small-size)}.form__actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4) var(--space-8);margin-top:var(--space-12)}@media (min-width:768px){.form__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form__field--full{grid-column:1 / -1}}.detail-list{border-top:var(--border-width-thin) solid var(--ledger-rule)}.detail-list__row{display:flex;flex-direction:column;gap:var(--space-2);padding-block:var(--space-5);border-bottom:var(--border-width-thin) solid var(--ledger-rule-soft)}.detail-list__term{color:var(--text-muted);font-size:var(--font-size-2xs);font-weight:var(--type-label-weight);letter-spacing:var(--letter-spacing-widest);text-transform:uppercase}.detail-list__value{color:var(--text-primary)}.detail-list__value--links{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5)}.detail-list__link{color:var(--text-link);text-decoration:underline;text-decoration-color:var(--border-brand-subtle);text-decoration-thickness:var(--border-width-thin);text-underline-offset:0.3em;overflow-wrap:anywhere;transition:color var(--duration-normal) var(--ease-premium),text-decoration-color var(--duration-normal) var(--ease-premium)}.detail-list__link:hover{color:var(--text-link-hover);text-decoration-color:currentColor}html.is-nav-open{overflow:hidden}.site-nav.is-scrolled::before{opacity:1;transform:scaleY(var(--nav-compress-scale))}.site-nav.is-scrolled .site-nav__brand,.site-nav.is-scrolled .site-nav__toggle{transform:translate3d(0,var(--nav-compress-shift),0)}@media (min-width:992px){.site-nav.is-scrolled .site-nav__menu{transform:translate3d(0,var(--nav-compress-shift),0)}}.site-nav.is-hidden{transform:translate3d(0,-100%,0)}.site-nav.is-open .site-nav__menu{visibility:visible;clip-path:inset(0);transition:clip-path var(--duration-slower) var(--ease-premium),visibility 0s}.site-nav.is-open .site-nav__link{transform:none}.site-nav.is-open .site-nav__toggle-line:first-child{transform:translateY(3.5px) rotate(45deg)}.site-nav.is-open .site-nav__toggle-line:last-child{transform:translateY(-3.5px) rotate(-45deg)}.site-nav__list.is-indicator-ready .site-nav__link::after{display:none}.site-nav__indicator.is-visible{opacity:1}.site-nav__indicator.is-instant{transition:opacity var(--duration-normal) var(--ease-premium)}.project-filter__option.is-active{color:var(--project-filter-text-active)}.project-filter__option.is-active::after{transform:scaleX(1)}.form__input.input-validation-error{border-bottom-color:var(--form-input-border-error);background-image:linear-gradient(var(--form-input-border-error),var(--form-input-border-error));background-size:100% var(--form-input-focus-weight)}.form__field:has(.input-validation-error) .form__label{color:var(--form-error-text)}.form__error.field-validation-valid{display:none}.form__summary.validation-summary-valid{display:none}@keyframes hero-rule-draw{from{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes hero-line-rise{from{transform:translate3d(0,110%,0)}to{transform:none}}@keyframes hero-resolve{from{opacity:0;transform:translate3d(0,0.75rem,0);filter:blur(8px)}to{opacity:1;transform:none;filter:none}}@keyframes project-card-arrive{0%,35%{border-color:var(--project-card-border-active);box-shadow:inset 0 0 0 1px var(--project-card-border-active),var(--glow-aura)}100%{border-color:var(--project-card-border);box-shadow:none}}::view-transition-old(root),::view-transition-new(root){animation:none}::view-transition-group(*){animation-duration:var(--duration-slow);animation-timing-function:var(--ease-premium)}
