@font-face{font-family:PP Neue Montreal;src:url(/fonts/PPNeueMontreal-Thin.woff2) format("woff2");font-weight:200;font-display:swap}@font-face{font-family:PP Neue Montreal;src:url(/fonts/PPNeueMontreal-Book.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:PP Neue Montreal;src:url(/fonts/PPNeueMontreal-Medium.woff2) format("woff2");font-weight:500;font-display:swap}@font-face{font-family:PP Neue Montreal;src:url(/fonts/PPNeueMontreal-Bold.woff2) format("woff2");font-weight:700;font-display:swap}@font-face{font-family:Space Mono;src:url(/fonts/SpaceMono-Regular.woff2) format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Space Mono;src:url(/fonts/SpaceMono-Bold.woff2) format("woff2");font-weight:700;font-display:swap}:root{--ink-900: #000000;--ink-800: #07040F;--ink-700: #0C062A;--ink-600: #120A29;--ink-500: #1B1140;--purple-700: #3F1E86;--purple-600: #552BB1;--purple-500: #6B3FD0;--lav-400: #917EEA;--lav-300: #B3A4F2;--lav-200: #DDD2FC;--white: #FEFEFE;--gray-300: #DBDBDB;--bg-alt: #0E1117;--available: #5FD3A3;--error: #F08A84;--error-soft: #F3A19C;--on-dark: #FEFEFE;--on-dark-soft: #DDD2FC;--on-dark-muted: rgba(221, 210, 252, .72);--on-dark-faint: rgba(221, 210, 252, .46);--bg: var(--ink-800);--surface: var(--ink-600);--surface-2: var(--ink-500);--heading: var(--on-dark);--text: var(--on-dark-soft);--text-soft: var(--on-dark-muted);--text-faint: var(--on-dark-faint);--accent: var(--purple-600);--accent-2: var(--lav-400);--border: rgba(221, 210, 252, .14);--border-strong: rgba(221, 210, 252, .28);--black: var(--ink-900);--ink: var(--ink-800);--navy: var(--ink-700);--navy-soft: var(--ink-600);--purple: var(--purple-600);--lav: var(--lav-400);--lightlav: var(--lav-200);--gray: var(--gray-300);--bg-elev: var(--surface);--hair: var(--border);--hair-strong: var(--border-strong);--font-sans: "PP Neue Montreal", system-ui, sans-serif;--font-mono: "Space Mono", ui-monospace, monospace;--step--2: clamp(.72rem, .69rem + .14vw, .8rem);--step--1: clamp(.83rem, .78rem + .2vw, .94rem);--step-0: clamp(1rem, .95rem + .25vw, 1.13rem);--step-1: clamp(1.2rem, 1.1rem + .5vw, 1.5rem);--step-2: clamp(1.5rem, 1.3rem + 1vw, 2.2rem);--step-3: clamp(2rem, 1.6rem + 2vw, 3.5rem);--step-4: clamp(2.6rem, 1.9rem + 3.5vw, 5.5rem);--fs-display: clamp(2.9rem, 1.9rem + 5vw, 7rem);--fs-h1: clamp(1.9rem, 1.45rem + 2vw, 3.25rem);--fs-h2: clamp(1.6rem, 1.3rem + 1.5vw, 2.5rem);--fs-h3: clamp(1.3rem, 1.12rem + .8vw, 1.75rem);--fs-h4: clamp(1.1rem, 1.02rem + .4vw, 1.3rem);--fs-lede: clamp(1.02rem, .96rem + .3vw, 1.2rem);--fs-body: var(--step-0);--fs-sm: var(--step--1);--fs-caption: var(--step--2);--lh-display: .95;--lh-heading: 1.08;--lh-snug: 1.18;--lh-body: 1.6;--ls-display: -.035em;--ls-heading: -.025em;--ls-snug: -.015em;--ls-body: -.005em;--ls-mono: .04em;--fw-regular: 400;--fw-medium: 500;--fw-bold: 700;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--space-32: 8rem;--section-y: clamp(5.5rem, 11vw, 9.5rem);--header-h: 5rem;--gutter: clamp(1.75rem, 6vw, 8rem);--maxw: 90rem;--space-xs: var(--space-2);--space-sm: var(--space-4);--space-md: var(--space-8);--space-lg: var(--space-16);--space-xl: var(--space-32);--r-sm: 8px;--r-md: 14px;--r-lg: 24px;--r-pill: 999px;--radius: var(--r-md);--border-grad: linear-gradient(135deg, var(--lav-400), var(--purple-600));--grad-cta: linear-gradient(90deg, var(--purple-600) 0%, #BDB2F2 100%);--shadow-sm: 0 2px 8px -2px rgba(5, 2, 18, .5);--shadow-md: 0 14px 34px -16px rgba(5, 2, 18, .7);--shadow-lg: 0 40px 90px -40px rgba(5, 2, 18, .85);--glow: 0 0 0 1px rgba(145, 126, 234, .4), 0 24px 60px -28px rgba(85, 43, 177, .75);--glow-soft: 0 18px 60px -30px rgba(85, 43, 177, .55);--blur: 10px;--glass: color-mix(in srgb, var(--ink-600) 60%, transparent);--ease-out: cubic-bezier(.2, .8, .2, 1);--ease-inout: cubic-bezier(.76, 0, .24, 1);--ease-expo: cubic-bezier(.16, 1, .3, 1);--dur-fast: .2s;--dur: .4s;--dur-slow: .7s}.section--light{--bg: var(--white);--surface: var(--lav-200);--surface-2: #EDE7FD;--bg-elev: var(--lav-200);--heading: var(--ink-700);--text: #1C1830;--text-soft: #4A4266;--text-faint: rgba(28, 24, 48, .55);--border: rgba(12, 6, 42, .12);--border-strong: rgba(12, 6, 42, .18);--hair: rgba(12, 6, 42, .12);--hair-strong: rgba(12, 6, 42, .18)}*,*:before,*:after{box-sizing:border-box;margin:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}img,svg,video{display:block;max-width:100%;height:auto}button{font:inherit}:focus-visible{outline:2px solid var(--accent-2);outline-offset:3px;border-radius:2px}::selection{background:var(--purple-600);color:var(--white)}h1,h2,h3,h4{color:var(--heading);font-weight:var(--fw-medium);text-wrap:balance}h1{font-size:var(--fs-h1);line-height:var(--lh-heading);letter-spacing:var(--ls-heading)}h2{font-size:var(--fs-h2);line-height:var(--lh-heading);letter-spacing:var(--ls-heading)}h3{font-size:var(--fs-h3);line-height:var(--lh-snug);letter-spacing:var(--ls-snug)}h4{font-size:var(--fs-h4);line-height:var(--lh-snug);letter-spacing:var(--ls-snug)}.t-display{font-size:var(--fs-display);font-weight:var(--fw-medium);line-height:var(--lh-display);letter-spacing:var(--ls-display);text-wrap:balance}.t-h1{font-size:var(--fs-h1);font-weight:var(--fw-medium);line-height:var(--lh-heading);letter-spacing:var(--ls-heading);text-wrap:balance}.t-h2{font-size:var(--fs-h2);font-weight:var(--fw-medium);line-height:var(--lh-heading);letter-spacing:var(--ls-heading);text-wrap:balance}.t-h3{font-size:var(--fs-h3);font-weight:var(--fw-medium);line-height:var(--lh-snug);letter-spacing:var(--ls-snug)}.t-h4{font-size:var(--fs-h4);font-weight:var(--fw-medium);line-height:var(--lh-snug);letter-spacing:var(--ls-snug)}.t-lede{font-size:var(--fs-lede);line-height:1.45;color:var(--text);max-width:52ch}.t-body{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text);max-width:60ch}.t-body-sm{font-size:var(--fs-sm);line-height:1.55;color:var(--text-soft);max-width:60ch}.t-caption{font-size:var(--fs-caption);color:var(--text-soft);letter-spacing:.02em}.mono{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:var(--ls-mono);font-size:var(--fs-sm);font-weight:var(--fw-regular)}.wrap,.container{width:min(100% - var(--gutter),var(--maxw));margin-inline:auto}.section{position:relative;padding-block:var(--section-y);scroll-margin-top:var(--header-h)}.section--tight{padding-block:clamp(2.5rem,5vw,4rem)}.section--hairline+.section--hairline,.section+.section{border-top:1px solid var(--border)}@media(max-width:760px){:root{--gutter: 2.5rem}}.sec-head{display:flex;align-items:baseline;gap:var(--space-6);margin-bottom:var(--space-12)}.sec-head .index{color:var(--accent-2)}.grid{display:grid;gap:var(--space-6)}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-8)}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-6)}.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-6)}.stack>*+*{margin-top:var(--space-4)}.mt{margin-top:var(--space-8)}.word{display:inline-block;overflow:hidden;vertical-align:top}.word>span{display:inline-block;will-change:transform}[data-reveal]{will-change:transform,opacity}.grain{position:fixed;inset:0;z-index:1;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.cursor,.cursor-ring{position:fixed;top:0;left:0;z-index:999;pointer-events:none;border-radius:50%;mix-blend-mode:difference;will-change:transform}.cursor{width:8px;height:8px;background:var(--white);margin:-4px 0 0 -4px}.cursor-ring{width:40px;height:40px;border:1px solid var(--lav-400);margin:-20px 0 0 -20px;transition:width .25s,height .25s,margin .25s,border-color .25s}.cursor-ring.is-hot{width:70px;height:70px;margin:-35px 0 0 -35px;border-color:var(--white)}@media(pointer:coarse){.cursor,.cursor-ring{display:none}}@media(pointer:fine){body[data-cursor-on],body[data-cursor-on] a,body[data-cursor-on] button{cursor:none}}.scroll-prog{position:fixed;top:0;left:0;height:3px;width:100%;transform:scaleX(0);transform-origin:left;background:var(--border-grad);z-index:1000}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.cursor,.cursor-ring{display:none!important}body[data-cursor-on]{cursor:auto}}
