:root{--bg: #000000;--bg-elev: #0a0a0a;--bg-card: #111111;--bg-scrim: rgba(0, 0, 0, .4);--line: #1a1a1a;--line-strong: #2a2a2a;--text: #ffffff;--text-muted: rgba(255, 255, 255, .78);--text-dim: #666666;--text-faint: #555555;--accent: #ffffff;--success: #5fe090;--danger: #ff6060;--warning: #ffc040;--info: #2d3fff;--text-soft: rgba(255, 255, 255, .85);--text-quiet: rgba(255, 255, 255, .7);--bg-scrim-nav: rgba(0, 0, 0, .35);--bg-pill-ghost: rgba(10, 10, 10, .6);--line-faint: rgba(255, 255, 255, .05);--line-pill: rgba(255, 255, 255, .3);--line-pill-ghost: rgba(255, 255, 255, .18);--border: var(--line);--border-strong: var(--line-strong);--font-body: "Inter", sans-serif;--font-data: "JetBrains Mono", monospace;--font-display: "Space Grotesk", sans-serif;--space-0: 0;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--space-9: 80px;--space-10: 120px;--space-11: 160px;--page-pad-x: clamp(20px, 4vw, 48px);--nav-h: 72px;--nav-pad-y: 24px;--container-prose: 720px;--container-content: 880px;--container-wide: 1200px;--container-max: 1440px;--bp-sm: 640px;--bp-md: 768px;--bp-lg: 1024px;--bp-xl: 1280px;--bp-2xl: 1440px;--radius-none: 0;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-pill: 999px;--motion-fast: .15s ease;--motion-base: .25s ease;--motion-slow: .6s cubic-bezier(.77, 0, .175, 1);--motion-carousel: 1.1s cubic-bezier(.77, 0, .175, 1);--z-base: 0;--z-raised: 1;--z-bg: 0;--z-overlay: 10;--z-sticky: 50;--z-nav: 100;--z-dropdown: 200;--z-modal: 1000;--z-toast: 2000;--focus-ring: 0 0 0 2px var(--accent)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{min-height:100%;background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:hidden}body{font-size:17px;line-height:1.75}a{color:inherit;text-decoration:none;cursor:pointer}button{background:transparent;border:none;color:inherit;font-family:inherit;cursor:pointer}img,svg,canvas,video{display:block;max-width:100%}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}::selection{background:var(--text);color:var(--bg)}:focus{outline:none}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:2px}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}:root{--type-display-xl: 96px;--type-display-lg: 64px;--type-display-md: 40px;--type-display-sm: 28px;--type-body-lg: 24px;--type-body-md: 16px;--type-caption-md: 12px;--type-mono-lg: 20px;--type-mono-md: 16px;--type-mono-sm: 12px}@media (max-width: 1024px){:root{--type-display-xl: 80px;--type-display-lg: 56px;--type-display-md: 36px}}@media (max-width: 768px){:root{--type-display-xl: 64px;--type-display-lg: 48px;--type-display-md: 32px;--type-display-sm: 24px;--type-body-lg: 20px;--type-mono-lg: 16px;--type-mono-md: 12px}}@media (max-width: 390px){:root{--type-display-xl: 48px;--type-display-lg: 40px}}.type-display-xl{font-family:var(--font-display);font-size:var(--type-display-xl);line-height:.92;letter-spacing:-.03em;font-weight:400}.type-display-lg{font-family:var(--font-display);font-size:var(--type-display-lg);line-height:.95;letter-spacing:-.025em;font-weight:400}.type-display-md{font-family:var(--font-display);font-size:var(--type-display-md);line-height:1.05;letter-spacing:-.015em;font-weight:400}.type-display-sm{font-family:var(--font-display);font-size:var(--type-display-sm);line-height:1.1;letter-spacing:-.01em;font-weight:500}.type-body-lg{font-family:var(--font-body);font-size:var(--type-body-lg);line-height:1.5;letter-spacing:0;font-weight:400}.type-body-md{font-family:var(--font-body);font-size:var(--type-body-md);line-height:1.8;letter-spacing:.01em;font-weight:400;max-width:60ch}.type-caption-md{font-family:var(--font-body);font-size:var(--type-caption-md);line-height:1.6;letter-spacing:0;font-weight:400}.type-mono-lg{font-family:var(--font-data);font-size:var(--type-mono-lg);line-height:1.7;letter-spacing:0;font-weight:400}.type-mono-md{font-family:var(--font-data);font-size:var(--type-mono-md);line-height:1.7;letter-spacing:0;font-weight:400}.type-mono-sm{font-family:var(--font-data);font-size:var(--type-mono-sm);line-height:1.6;letter-spacing:.16em;text-transform:uppercase;font-weight:400}.mono{font-family:var(--font-data);font-size:10px;text-transform:uppercase;letter-spacing:.2em;color:var(--text-muted)}.eyebrow{font-family:var(--font-data);font-size:10px;text-transform:uppercase;letter-spacing:.24em;color:var(--text-dim)}.container{width:100%;max-width:var(--container-content);margin-inline:auto;padding-inline:var(--page-pad-x)}.container-prose{max-width:var(--container-prose)}.container-wide{max-width:var(--container-wide)}.container-max{max-width:var(--container-max)}.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-5)}@media (max-width: 1024px){.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.grid-4{grid-template-columns:1fr;gap:var(--space-4)}}.site-footer--footer{border-top:1px solid var(--line)}.site-footer--footer .footer-grid{padding-block:var(--space-7)}.site-footer--strip{border-top:none}.site-footer--strip .footer-grid{padding-block:var(--space-5)}.footer-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:var(--space-6);align-items:start;padding-inline:var(--page-pad-x)}.footer-slot{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.footer-slot--left{justify-self:start;text-align:left}.footer-slot--center{justify-self:center;text-align:center}.footer-slot--right{justify-self:end;text-align:right}@media (max-width: 640px){.footer-grid{grid-template-columns:1fr;gap:var(--space-3)}.site-footer--strip .footer-grid{padding-block:var(--space-4)}.footer-slot--left,.footer-slot--center,.footer-slot--right{justify-self:start;text-align:left}}.metarow-row{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-4) var(--space-5);padding:var(--space-3) 0}@media (max-width: 640px){.metarow-row{grid-template-columns:1fr;gap:var(--space-2)}}.image-grid{display:grid;grid-template-columns:repeat(var(--cols, 1),minmax(0,1fr));gap:var(--space-3);align-items:start}@media (max-width: 768px){.image-grid[data-collapse=true]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.image-grid[data-collapse=true]{display:flex;flex-direction:row;grid-template-columns:none;gap:var(--space-3);overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin-inline:calc(-1 * var(--page-pad-x));padding-inline:var(--page-pad-x);scroll-padding-inline:var(--page-pad-x)}.image-grid[data-collapse=true]::-webkit-scrollbar{display:none}.image-grid[data-collapse=true]>*{flex:0 0 80%;min-width:0;scroll-snap-align:start}}.grid-home-hero{display:grid;grid-template-columns:1.2fr 1fr;gap:var(--space-9);align-items:center}@media (max-width: 1024px){.grid-home-hero{grid-template-columns:1fr;gap:var(--space-7);align-items:start}}.home-work-col{justify-self:end}@media (max-width: 1024px){.home-work-col{justify-self:stretch}}.home-bottom-anchor-right{justify-self:end}@media (max-width: 1024px){.home-bottom-anchor-right{justify-self:stretch}}.grid-home-bottom-2col{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6);align-items:end}@media (max-width: 640px){.grid-home-bottom-2col{grid-template-columns:1fr;gap:var(--space-5)}}.grid-home-bottom{display:grid;grid-template-columns:1.2fr 2fr 1fr;gap:var(--space-6);align-items:start}@media (min-width: 1025px){.grid-home-bottom>*:last-child{align-items:flex-end;text-align:right}}@media (max-width: 1024px){.grid-home-bottom{grid-template-columns:1fr 1fr;row-gap:var(--space-5)}}@media (max-width: 640px){.grid-home-bottom{grid-template-columns:1fr;row-gap:var(--space-5)}}.hover-brighten{transition:color var(--motion-fast),opacity var(--motion-fast),text-shadow var(--motion-base)}.hover-brighten:hover{color:var(--text);opacity:1;text-shadow:0 0 1px rgba(255,255,255,.8),0 0 10px rgba(255,255,255,.55),0 0 24px rgba(255,255,255,.25)}.hover-brighten:active{opacity:.55;text-shadow:none}.link-external{color:var(--text);text-decoration:none;transition:color var(--motion-fast),text-shadow var(--motion-base),text-decoration-color var(--motion-fast)}.link-external:hover{text-decoration:underline;text-underline-offset:.2em;text-shadow:0 0 1px rgba(255,255,255,.8),0 0 10px rgba(255,255,255,.55),0 0 24px rgba(255,255,255,.25)}.link-external:active{opacity:.55;text-shadow:none}.hover-row{transition:padding-left var(--motion-fast),color var(--motion-fast),background var(--motion-fast),opacity var(--motion-fast);padding-left:0}.hover-row:hover{padding-left:var(--space-2);color:var(--text)}.hover-row:active{opacity:.7}.hover-pill{transition:background var(--motion-base),color var(--motion-base),border-color var(--motion-base),transform var(--motion-fast),opacity var(--motion-fast);transform:scale(1)}.hover-pill:hover{background:var(--text);color:var(--bg);border-color:var(--text)}.hover-pill:active{transform:scale(.97);opacity:.85}.hover-arrow{display:inline-block;transition:transform var(--motion-base)}.hover-row:hover .hover-arrow,.hover-pill:hover .hover-arrow{transform:translate(4px)}.focus-ring:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:2px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:var(--space-3);left:var(--space-3);z-index:var(--z-toast);padding:var(--space-2) var(--space-4);background:var(--bg-elev);color:var(--text);border:1px solid var(--line-strong);border-radius:var(--radius-md);font-family:var(--font-data);font-size:12px;text-decoration:none;transform:translateY(-200%);transition:transform .15s ease}.skip-link:focus,.skip-link:focus-visible{transform:translateY(0)}html.glass-cursor-on,html.glass-cursor-on body,html.glass-cursor-on *{cursor:none!important}html.glass-cursor-on input,html.glass-cursor-on textarea,html.glass-cursor-on [contenteditable=true]{cursor:text!important}.live-dot{display:inline-block;animation:livePulse 1.6s ease-in-out infinite}@keyframes livePulse{0%,to{opacity:.4}50%{opacity:1}}
