@font-face{font-family:Strawford;src:url(../media/Strawford-Light.1gss4j2uhj02g.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Strawford;src:url(../media/Strawford-Regular.1c6ff7-lby6p6.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Strawford;src:url(../media/Strawford-Medium.0ojmvegdzlalb.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Strawford;src:url(../media/Strawford-Bold.33h09e3li0iq8.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Strawford;src:url(../media/Strawford-Black.1-vz3aw5p2tu5.woff2)format("woff2");font-weight:900;font-style:normal;font-display:swap}:root{--brand-a:#f4b084;--brand-b:#efe373;--brand-c:#00a776;--brand-d:#c5197d;--brand-ink:#22272f;--brand-paper:#fafaf7;--brand-accent:var(--brand-c);--brand-cta:var(--brand-d);--font-display:"Strawford", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body:"Strawford", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--ink-0:var(--brand-paper);--ink-100:color-mix(in oklab, var(--brand-paper) 92%, var(--brand-ink));--ink-200:color-mix(in oklab, var(--brand-paper) 78%, var(--brand-ink));--ink-400:color-mix(in oklab, var(--brand-paper) 52%, var(--brand-ink));--ink-600:color-mix(in oklab, var(--brand-paper) 22%, var(--brand-ink));--ink-900:var(--brand-ink);--color-bg:var(--ink-0);--color-bg-elevated:#fff;--color-fg:var(--ink-900);--color-fg-muted:var(--ink-600);--color-fg-subtle:var(--ink-600);--color-accent:color-mix(in oklab, var(--brand-c) 45%, var(--brand-ink));--color-accent-cta:var(--brand-cta);--color-cta-fg:#fff;--color-hairline:var(--ink-200);--color-success:color-mix(in oklab, var(--brand-c) 45%, var(--brand-ink));--color-warning:color-mix(in oklab, var(--brand-a) 70%, var(--brand-ink));--color-danger:color-mix(in oklab, var(--brand-d) 78%, var(--brand-ink));--gradient-blob-1:var(--brand-a);--gradient-blob-2:var(--brand-b);--gradient-blob-3:var(--brand-c);--gradient-blob-4:var(--brand-d);--gradient-key:linear-gradient(150deg, var(--brand-b) 0%, var(--brand-a) 28%, var(--brand-d) 62%, var(--brand-c) 100%);--gradient-hairline:linear-gradient(90deg, var(--brand-c), var(--brand-d));--color-selection-bg:var(--brand-b);--color-selection-fg:var(--brand-ink);--glass-fill:#fafaf78c;--glass-fill-strong:#fafaf7b8;--glass-stroke:#ffffff8c;--glass-blur:18px;--glass-shadow:0 8px 32px #22272f1f, inset 0 1px 0 #fff9;--weight-light:300;--weight-regular:400;--weight-medium:500;--weight-bold:700;--weight-black:900;--text-display-hero:clamp(3rem, 9vw, 9rem);--text-display-1:clamp(2.5rem, 6vw, 5.5rem);--text-display-2:clamp(2rem, 4.5vw, 4rem);--text-h1:clamp(2rem, 3.5vw, 3rem);--text-h2:clamp(1.5rem, 2.5vw, 2.25rem);--text-h3:clamp(1.25rem, 2vw, 1.5rem);--text-body-lg:1.125rem;--text-body:1.0625rem;--text-body-sm:.9375rem;--text-caption:.8125rem;--leading-display:.95;--leading-tight:1.15;--leading-body:1.6;--leading-loose:1.75;--tracking-display:-.025em;--tracking-body:0;--tracking-mono:.02em;--tracking-label:.08em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-12:3rem;--space-16:4rem;--space-24:6rem;--space-32:8rem;--section-py:clamp(4rem, 10vw, 10rem);--content-max:1280px;--content-narrow:720px;--content-wide:1440px;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-glass:20px;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-in-out-quad:cubic-bezier(.45, 0, .55, 1);--ease-snappy:cubic-bezier(.2, .8, .2, 1);--duration-fast:.15s;--duration-base:.3s;--duration-slow:.6s;--duration-page:1.2s;--duration-mesh:60s}[data-theme=dark]{--color-bg:var(--brand-ink);--color-bg-elevated:color-mix(in oklab, var(--brand-ink) 88%, white);--color-fg:var(--ink-0);--color-fg-muted:var(--ink-200);--color-fg-subtle:var(--ink-200);--color-hairline:color-mix(in oklab, var(--brand-ink) 80%, white);--color-accent:color-mix(in oklab, var(--brand-accent) 60%, white);--color-accent-cta:color-mix(in oklab, var(--brand-cta) 88%, white);--color-success:color-mix(in oklab, var(--brand-c) 52%, white);--color-danger:color-mix(in oklab, var(--brand-d) 48%, white);--glass-fill:#2d333d8c;--glass-fill-strong:#2d333dbd;--glass-stroke:#ffffff24;--glass-shadow:0 8px 32px #0006, inset 0 1px 0 #ffffff14}@media (prefers-reduced-motion:reduce){:root{--duration-fast:1ms;--duration-base:1ms;--duration-slow:1ms;--duration-page:1ms;--duration-mesh:0s}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:var(--text-body);line-height:var(--leading-body);color:var(--color-fg);background:var(--color-bg);margin:0}::selection{background:var(--color-selection-bg);color:var(--color-selection-fg)}a{color:var(--color-accent);transition:color var(--duration-fast) var(--ease-snappy);text-decoration:none}a:hover{color:var(--color-accent-cta)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.ui-display-hero{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-display-hero);line-height:var(--leading-display);letter-spacing:var(--tracking-display)}.ui-display-1{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-display-1);line-height:var(--leading-display);letter-spacing:var(--tracking-display)}.ui-h1{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-h1);line-height:var(--leading-tight);letter-spacing:var(--tracking-display)}.ui-h2{font-family:var(--font-display);font-weight:var(--weight-bold);font-size:var(--text-h2);line-height:var(--leading-tight)}.ui-h3{font-family:var(--font-display);font-weight:var(--weight-medium);font-size:var(--text-h3);line-height:var(--leading-tight)}.ui-body-lg{font-size:var(--text-body-lg)}.ui-muted{color:var(--color-fg-muted)}.ui-subtle{color:var(--color-fg-subtle)}.ui-mono-label{font-family:var(--font-mono);font-size:var(--text-caption);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-fg-muted)}.ui-marker{font-family:var(--font-mono);font-size:var(--text-body-sm);letter-spacing:var(--tracking-mono);color:var(--color-fg-subtle)}.ui-gradient-text{background:var(--gradient-key);color:#0000;-webkit-background-clip:text;background-clip:text}.ui-container{max-width:var(--content-max);margin-inline:auto;padding-inline:clamp(1rem,4vw,2.5rem)}.ui-container--narrow{max-width:var(--content-narrow)}.ui-container--wide{max-width:var(--content-wide)}.ui-section{padding-block:var(--section-py)}.ui-hairline{background:var(--color-hairline);border:0;height:1px;margin:0}.ui-hairline--gradient{background:var(--gradient-hairline);height:2px}.ui-stack{gap:var(--space-4);flex-direction:column;display:flex}.ui-row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.ui-btn{justify-content:center;align-items:center;gap:var(--space-2);font-family:var(--font-body);font-weight:var(--weight-medium);font-size:var(--text-body-sm);min-height:44px;padding:0 var(--space-6);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;transition:transform var(--duration-fast) var(--ease-snappy), box-shadow var(--duration-fast) var(--ease-snappy), background var(--duration-fast) var(--ease-snappy), border-color var(--duration-fast) var(--ease-snappy);border:1px solid #0000;text-decoration:none;display:inline-flex}.ui-btn:active{box-shadow:none;transform:translateY(1px)}.ui-btn--primary{background:var(--color-accent-cta);color:var(--color-cta-fg)}.ui-btn--primary:hover{box-shadow:0 8px 32px color-mix(in srgb, var(--color-accent-cta) 30%, transparent);color:var(--color-cta-fg);transform:translateY(-1px)}.ui-btn--secondary{color:var(--color-fg);border-color:var(--color-fg);background:0 0}.ui-btn--secondary:hover{background:color-mix(in srgb, var(--color-fg) 6%, transparent);color:var(--color-fg);transform:translateY(-1px)}.ui-btn--ghost{color:var(--color-fg-muted);background:0 0}.ui-btn--ghost:hover{color:var(--color-fg);background:color-mix(in srgb, var(--color-fg) 5%, transparent)}.ui-btn--sm{min-height:44px;padding:0 var(--space-4);font-size:var(--text-caption)}.ui-btn--lg{min-height:52px;padding:0 var(--space-8);font-size:var(--text-body)}.ui-btn--icon{aspect-ratio:1;min-width:44px;padding:0}.ui-btn[disabled],.ui-btn--disabled{opacity:.45;pointer-events:none}.ui-link-cta{font-family:var(--font-mono);font-size:var(--text-body-sm);letter-spacing:var(--tracking-mono);color:var(--color-fg);background-image:linear-gradient(var(--color-accent-cta), var(--color-accent-cta));transition:background-size var(--duration-base) var(--ease-out-expo);background-position:0 100%;background-repeat:no-repeat;background-size:0% 2px;padding-bottom:3px}.ui-link-cta:hover{color:var(--color-fg);background-size:100% 2px}.ui-nav{z-index:50;align-items:center;gap:var(--space-6);background:var(--glass-fill-strong);min-height:64px;-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(160%);backdrop-filter:blur(var(--glass-blur)) saturate(160%);border-bottom:1px solid var(--color-hairline);padding-inline:clamp(1rem,4vw,2.5rem);display:flex;position:sticky;top:0}.ui-nav__brand{align-items:center;gap:var(--space-3);font-weight:var(--weight-bold);color:var(--color-fg);display:flex}.ui-nav__brand img,.ui-nav__brand svg{width:auto;height:32px;display:block}.ui-nav__links{align-items:center;gap:var(--space-6);margin-left:auto;display:flex}.ui-nav__link{color:var(--color-fg-muted);font-size:var(--text-body-sm);font-weight:var(--weight-medium)}.ui-nav__link:hover,.ui-nav__link[aria-current=page]{color:var(--color-fg)}.ui-card{background:var(--color-bg-elevated);border:1px solid var(--color-hairline);border-radius:var(--radius-lg);padding:var(--space-8)}.ui-card--flat{border-radius:0}.ui-card--glass{background:var(--glass-fill);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(160%);backdrop-filter:blur(var(--glass-blur)) saturate(160%);border:1px solid var(--glass-stroke);border-radius:var(--radius-glass);box-shadow:var(--glass-shadow)}.ui-card--hover{transition:transform var(--duration-base) var(--ease-out-expo), box-shadow var(--duration-base) var(--ease-out-expo)}.ui-card--hover:hover{transform:translateY(-2px);box-shadow:0 8px 32px #22272f1f}.ui-badge{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-caption);letter-spacing:var(--tracking-mono);border:1px solid var(--color-hairline);color:var(--color-fg-muted);border-radius:999px;padding:4px 12px;display:inline-flex}.ui-dot{background:var(--color-accent);border-radius:50%;flex:none;width:8px;height:8px}.ui-field{gap:var(--space-2);flex-direction:column;display:flex}.ui-label{font-family:var(--font-mono);font-size:var(--text-caption);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-fg-muted)}.ui-input,.ui-textarea,.ui-select{font-family:var(--font-body);font-size:var(--text-body);color:var(--color-fg);background:var(--color-bg-elevated);border:1px solid var(--color-hairline);border-radius:var(--radius-md);min-height:44px;padding:var(--space-2) var(--space-4);transition:border-color var(--duration-fast) var(--ease-snappy);width:100%}.ui-textarea{min-height:120px;padding-top:var(--space-3);resize:vertical}.ui-select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23909090' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-3) center;padding-right:2.5rem}.ui-input:focus,.ui-textarea:focus,.ui-select:focus{border-color:var(--color-accent);outline:none}.ui-input::placeholder,.ui-textarea::placeholder{color:var(--color-fg-subtle)}.ui-field--error .ui-input,.ui-field--error .ui-textarea{border-color:var(--color-danger)}.ui-error{font-size:var(--text-caption);color:var(--color-danger)}.ui-hint{font-size:var(--text-caption);color:var(--color-fg-subtle)}.ui-check{align-items:center;gap:var(--space-3);cursor:pointer;font-size:var(--text-body-sm);display:flex}.ui-check input{width:18px;height:18px;accent-color:var(--color-accent-cta)}.ui-seg{gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-seg label{cursor:pointer}.ui-seg input{opacity:0;pointer-events:none;position:absolute}.ui-seg span{min-height:44px;padding:0 var(--space-4);border:1px solid var(--color-hairline);font-size:var(--text-body-sm);color:var(--color-fg-muted);transition:all var(--duration-fast) var(--ease-snappy);border-radius:999px;align-items:center;display:inline-flex}.ui-seg input:checked+span{border-color:var(--color-fg);color:var(--color-fg);font-weight:var(--weight-medium)}.ui-seg input:focus-visible+span{outline:2px solid var(--color-accent);outline-offset:2px}.ui-switch{cursor:pointer;flex:none;width:44px;height:26px;display:inline-flex;position:relative}.ui-switch input{opacity:0;pointer-events:none;position:absolute}.ui-switch i{background:var(--color-hairline);transition:background var(--duration-fast) var(--ease-snappy);border-radius:999px;position:absolute;inset:0}.ui-switch i:after{content:"";background:var(--color-bg-elevated);width:20px;height:20px;transition:transform var(--duration-fast) var(--ease-snappy);border-radius:50%;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #22272f4d}.ui-switch input:checked+i{background:var(--color-accent)}.ui-switch input:checked+i:after{transform:translate(18px)}.ui-table{border-collapse:collapse;width:100%;font-size:var(--text-body-sm)}.ui-table th{text-align:left;font-family:var(--font-mono);font-size:var(--text-caption);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-fg-muted);font-weight:var(--weight-regular);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-fg)}.ui-table td{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-hairline)}.ui-table tr:hover td{background:color-mix(in srgb, var(--color-fg) 3%, transparent)}.ui-alert{gap:var(--space-3);padding:var(--space-4) var(--space-6);border:1px solid var(--color-hairline);border-radius:var(--radius-md);font-size:var(--text-body-sm);background:var(--color-bg-elevated);align-items:flex-start;display:flex}.ui-alert--success{border-color:color-mix(in srgb, var(--color-success) 45%, transparent)}.ui-alert--warning{border-color:color-mix(in srgb, var(--color-warning) 55%, transparent)}.ui-alert--danger{border-color:color-mix(in srgb, var(--color-danger) 50%, transparent)}.ui-alert--success .ui-dot{background:var(--color-success)}.ui-alert--warning .ui-dot{background:var(--color-warning)}.ui-alert--danger .ui-dot{background:var(--color-danger)}.ui-tabs{gap:var(--space-6);border-bottom:1px solid var(--color-hairline);display:flex}.ui-tab{padding:var(--space-3) 0;font-size:var(--text-body-sm);font-weight:var(--weight-medium);color:var(--color-fg-muted);cursor:pointer;transition:color var(--duration-fast) var(--ease-snappy);background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px}.ui-tab:hover{color:var(--color-fg)}.ui-tab[aria-selected=true]{color:var(--color-fg);border-bottom-color:var(--color-accent-cta)}.ui-modal::backdrop{background:color-mix(in srgb, var(--brand-ink) 55%, transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ui-modal{border:1px solid var(--glass-stroke);border-radius:var(--radius-glass);background:var(--color-bg-elevated);color:var(--color-fg);padding:var(--space-8);max-width:min(90vw,560px);box-shadow:0 8px 32px #22272f3d}.ui-mesh{background:var(--color-bg);position:relative;overflow:hidden}.ui-mesh:before{content:"";background:radial-gradient(40% 40% at 18% 22%, color-mix(in srgb, var(--gradient-blob-1) 55%, transparent), transparent 70%), radial-gradient(38% 38% at 82% 18%, color-mix(in srgb, var(--gradient-blob-2) 50%, transparent), transparent 70%), radial-gradient(42% 42% at 20% 85%, color-mix(in srgb, var(--gradient-blob-3) 45%, transparent), transparent 70%), radial-gradient(44% 44% at 85% 80%, color-mix(in srgb, var(--gradient-blob-4) 50%, transparent), transparent 70%);animation:ui-mesh-drift var(--duration-mesh) var(--ease-in-out-quad) infinite alternate;position:absolute;inset:-20%}.ui-mesh>*{position:relative}@keyframes ui-mesh-drift{0%{transform:translate(0)scale(1)}to{transform:translate(3%,-2%)scale(1.06)}}.ui-footer{border-top:1px solid var(--color-hairline);padding:var(--space-8) 0;font-family:var(--font-mono);font-size:var(--text-caption);letter-spacing:var(--tracking-mono);color:var(--color-fg-subtle)}.ui-footer a{color:var(--color-fg-muted)}
