@layer components{.cursor[data-astro-cid-qmueewfo]{--cursor-color:var(--color-text-bright);inset:calc(var(--cursor-size) / -2) auto auto calc(var(--cursor-size) / -2);inline-size:var(--cursor-size);block-size:var(--cursor-size);border-radius:var(--radius-pill);background-color:var(--cursor-color);mix-blend-mode:difference;pointer-events:none;opacity:0;transition:opacity var(--motion-duration-ui) var(--motion-ease-ui), scale var(--motion-duration-ui) var(--motion-ease-ui);border:0;margin:0;padding:0;position:fixed;overflow:visible}.cursor[data-astro-cid-qmueewfo][data-visible=true]{opacity:1}.cursor[data-astro-cid-qmueewfo][data-active=true]{scale:var(--cursor-hover-scale)}.nav-link[data-astro-cid-3o5q7yvo]{--nav-link-size:var(--text-body);--nav-link-color:var(--color-text-bright);--nav-link-color-hover:var(--color-accent);--nav-link-color-active:var(--color-accent-secondary);--nav-link-dot-color:var(--color-accent);--nav-link-dot-size:var(--space-1);align-items:center;gap:var(--space-1);padding-block:var(--hit-area-extension);margin-block:calc(var(--hit-area-extension) * -1);color:var(--nav-link-color);font-family:var(--font-sans);font-size:var(--nav-link-size);font-weight:var(--font-weight-black);line-height:var(--leading-tight);letter-spacing:var(--tracking-wider);text-transform:uppercase;transition:color var(--motion-duration-ui) var(--motion-ease-ui);text-decoration:none;display:inline-flex}.nav-link[data-astro-cid-3o5q7yvo][aria-current]:before{content:"";inline-size:var(--nav-link-dot-size);block-size:var(--nav-link-dot-size);border-radius:var(--radius-full);background-color:var(--nav-link-dot-color);flex:none}.nav-link[data-astro-cid-3o5q7yvo]:hover,.nav-link[data-astro-cid-3o5q7yvo][data-state=hover]{color:var(--nav-link-color-hover)}.nav-link[data-astro-cid-3o5q7yvo]:active,.nav-link[data-astro-cid-3o5q7yvo][data-state=active]{color:var(--nav-link-color-active)}.site-header[data-astro-cid-fzpbxy5g]{--site-header-padding:var(--space-gutter);--site-header-name-color:var(--color-text-strong);--site-header-role-color:var(--color-text-muted);--site-header-icon-color:var(--color-accent);--site-header-button-color:var(--color-text-bright);--site-header-button-hover-color:var(--color-accent);--site-header-bg-contrast:var(--color-bg);justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-4);padding:var(--site-header-padding);mix-blend-mode:difference;flex-wrap:wrap;display:flex}.site-header__identity[data-astro-cid-fzpbxy5g]{align-items:center;gap:var(--space-1) var(--space-7);font-family:var(--font-mono);font-size:var(--text-body);font-weight:var(--font-weight-light);line-height:var(--leading-tight);letter-spacing:var(--tracking-wider);text-transform:uppercase;flex-wrap:wrap;display:flex}.site-header__name[data-astro-cid-fzpbxy5g]{padding-block:var(--hit-area-extension);margin-block:calc(var(--hit-area-extension) * -1);color:var(--site-header-name-color);overflow-wrap:anywhere;text-decoration:none}.site-header__role[data-astro-cid-fzpbxy5g]{align-items:center;gap:var(--space-1);color:var(--site-header-role-color);display:none}.site-header__role[data-astro-cid-fzpbxy5g] svg{color:var(--site-header-icon-color)}.site-header__links[data-astro-cid-fzpbxy5g]{gap:var(--space-4);flex-wrap:wrap;display:flex}.site-header__button[data-astro-cid-fzpbxy5g]{inline-size:var(--size-target);block-size:var(--size-target);margin-block:calc((var(--size-target) - var(--size-icon-md)) / -2);color:var(--site-header-button-color);cursor:pointer;transition:color var(--motion-duration-ui) var(--motion-ease-ui);background:0 0;border:0;flex:none;place-items:center;margin-inline-end:calc((var(--size-target) - var(--size-icon-md)) / -2);padding:0;display:grid}.site-header__button[data-astro-cid-fzpbxy5g]:hover,.site-header__button[data-astro-cid-fzpbxy5g]:active{color:var(--site-header-button-hover-color)}.site-header__open[data-astro-cid-fzpbxy5g]{display:none}.site-header--menu[data-astro-cid-fzpbxy5g]{column-gap:var(--space-1);flex-wrap:nowrap}.site-header--menu[data-astro-cid-fzpbxy5g] .site-header__open[data-astro-cid-fzpbxy5g]{display:grid}.site-header--menu[data-astro-cid-fzpbxy5g] .site-header__nav[data-astro-cid-fzpbxy5g]{display:none}@media (width>=48rem){.site-header__role[data-astro-cid-fzpbxy5g]{display:flex}.site-header--menu[data-astro-cid-fzpbxy5g]{column-gap:var(--space-4);flex-wrap:wrap}.site-header--menu[data-astro-cid-fzpbxy5g] .site-header__open[data-astro-cid-fzpbxy5g]{display:none}.site-header--menu[data-astro-cid-fzpbxy5g] .site-header__nav[data-astro-cid-fzpbxy5g]{display:block}}.site-menu[data-astro-cid-fzpbxy5g]{--site-menu-bg:var(--color-bg);--site-menu-color:var(--color-text-bright);overscroll-behavior:contain;background-color:var(--site-menu-bg);block-size:auto;max-block-size:none;inline-size:auto;max-inline-size:none;color:var(--site-menu-color);border:0;margin:0;padding:0;position:fixed;inset:0;overflow-y:auto}html:has(.site-menu[open]){scrollbar-gutter:stable;overflow:hidden}.site-menu__bar[data-astro-cid-fzpbxy5g]{justify-content:space-between;align-items:center;gap:var(--space-1);padding:var(--site-header-padding);display:flex}.site-menu__links[data-astro-cid-fzpbxy5g]{gap:var(--space-4);padding:var(--space-6) var(--space-gutter);flex-direction:column;display:flex}.site-menu__links[data-astro-cid-fzpbxy5g] .nav-link{--nav-link-size:var(--text-display-md);--nav-link-dot-size:var(--space-2);overflow-wrap:anywhere}@media (prefers-reduced-motion:no-preference){.site-menu[data-astro-cid-fzpbxy5g][open]{transition:opacity var(--motion-duration-ui) var(--motion-ease-ui)}@starting-style{.site-menu[data-astro-cid-fzpbxy5g][open]{opacity:0}}@supports (overlay:auto){.site-menu[data-astro-cid-fzpbxy5g]:not([open]){opacity:0}.site-menu[data-astro-cid-fzpbxy5g]{transition:opacity var(--motion-duration-ui) var(--motion-ease-ui), display var(--motion-duration-ui) allow-discrete, overlay var(--motion-duration-ui) allow-discrete}}}@media (height>=30rem){.site-header[data-astro-cid-fzpbxy5g]{z-index:var(--layer-header);position:sticky;inset-block-start:0}:root{scroll-padding-block-start:var(--site-header-height,var(--site-header-height-fallback))}}@media (width>=64rem){.site-header--overlay[data-astro-cid-fzpbxy5g]{z-index:var(--layer-header);position:absolute;inset-block-start:0;inset-inline:0}}@media (width>=64rem) and (height>=30rem){.site-header--overlay[data-astro-cid-fzpbxy5g]{position:fixed}}@media (forced-colors:active),(prefers-contrast:more){.site-header[data-astro-cid-fzpbxy5g]{background-color:var(--site-header-bg-contrast);mix-blend-mode:normal}}.skip-link[data-astro-cid-pbhazpx6]{--skip-link-bg:var(--color-accent);--skip-link-color:var(--color-text-inverse);z-index:var(--layer-skip-link);padding:var(--space-1) var(--space-2);background-color:var(--skip-link-bg);color:var(--skip-link-color);font-family:var(--font-mono);font-weight:var(--font-weight-medium);translate:0 calc(-100% - var(--space-2));text-decoration:none;position:absolute;inset-block-start:var(--space-1);inset-inline-start:var(--space-1)}.skip-link[data-astro-cid-pbhazpx6]:focus{translate:none}.page[data-astro-cid-z4jru4n3]{position:relative}}@layer tokens{:root{--palette-white:#fff;--palette-grey-50:#f1f1f1;--palette-grey-150:#d9d9d9;--palette-grey-350:#ababab;--palette-grey-450:#908f8f;--palette-grey-500:#7d7d7d;--palette-grey-600:#505050;--palette-grey-800:#383838;--palette-ink-900:#131216;--palette-ink-950:#09090b;--palette-slate-500:#6c7493;--palette-orange-500:#e78a08;--palette-pink-500:#e948ab;--grid-unit:.5rem;--space-1:calc(var(--grid-unit) * 1);--space-2:calc(var(--grid-unit) * 2);--space-3:calc(var(--grid-unit) * 3);--space-4:calc(var(--grid-unit) * 4);--space-5:calc(var(--grid-unit) * 5);--space-6:calc(var(--grid-unit) * 6);--space-7:calc(var(--grid-unit) * 7);--space-8:calc(var(--grid-unit) * 8);--space-9:calc(var(--grid-unit) * 9);--space-10:calc(var(--grid-unit) * 10);--space-12:calc(var(--grid-unit) * 12);--space-16:calc(var(--grid-unit) * 16);--space-20:calc(var(--grid-unit) * 20);--stroke-1:1px;--stroke-2:2px;--font-size-12:.75rem;--font-size-14:.875rem;--font-size-16:1rem;--font-size-18:1.125rem;--font-size-20:1.25rem;--font-size-24:1.5rem;--font-size-28:1.75rem;--font-size-32:2rem;--font-size-40:2.5rem;--font-size-48:3rem;--font-size-56:3.5rem;--font-size-72:4.5rem;--font-size-80:5rem;--font-weight-light:300;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--leading-tight:1.15;--leading-snug:1.3;--leading-normal:1.4;--leading-relaxed:1.5;--tracking-tighter:-.03em;--tracking-tight:-.02em;--tracking-snug:-.01em;--tracking-wide:.02em;--tracking-wider:.05em;--tracking-widest:.09em;--opsz-9:9;--opsz-14:14;--radius-1:var(--space-1);--radius-2:var(--space-2);--radius-full:100vmax;--duration-0:0s;--duration-150:.15s;--duration-600:.6s;--ease-out-quart:cubic-bezier(.25, 1, .5, 1);--ease-in-cubic:cubic-bezier(.32, 0, .67, 0);--ease-in-out-cubic:cubic-bezier(.65, 0, .35, 1);--color-bg:var(--palette-ink-950);--color-surface:var(--palette-ink-900);--color-surface-inverse:var(--palette-white);--color-border:var(--palette-grey-800);--color-text-bright:var(--palette-white);--color-text-strong:var(--palette-grey-50);--color-text:var(--palette-grey-150);--color-text-muted:var(--palette-grey-350);--color-text-subtle:var(--palette-grey-450);--color-text-inverse:var(--palette-ink-950);--color-text-inverse-muted:var(--palette-slate-500);--color-accent:var(--palette-orange-500);--color-accent-secondary:var(--palette-pink-500);--color-on-accent:var(--palette-white);--gradient-accent:linear-gradient(to bottom, var(--color-accent), var(--color-accent-secondary));--frame-accent:linear-gradient(to right, var(--color-accent), var(--color-accent-secondary)) 1;--frame-accent-width:var(--stroke-2);--color-backdrop:color-mix(in srgb, var(--palette-ink-950) 80%, transparent);--color-dot:color-mix(in srgb, var(--palette-grey-600) 27%, transparent);--color-ascii:var(--palette-grey-500);--focus-ring-color:var(--color-accent);--focus-ring-width:var(--stroke-2);--focus-ring-offset:var(--stroke-2);--font-sans:var(--font-dm-sans);--font-mono:var(--font-dm-mono);--font-pixel:var(--font-geist-pixel-square);--font-brace:var(--font-geist);--font-code-glyph:var(--font-pixelify-sans);--opsz-text:var(--opsz-14);--opsz-small:var(--opsz-9);--text-display-xl:clamp(var(--font-size-48), 2.4286rem + 2.8571vw, var(--font-size-80));--text-display-lg:clamp(var(--font-size-32), 1.2857rem + 3.5714vw, var(--font-size-72));--text-display-md:clamp(var(--font-size-40), 2.2143rem + 1.4286vw, var(--font-size-56));--text-heading-lg:clamp(var(--font-size-24), 1.2143rem + 1.4286vw, var(--font-size-40));--text-heading-md:clamp(var(--font-size-20), 1.1786rem + .3571vw, var(--font-size-24));--text-heading-sm:var(--font-size-20);--text-body-lg:var(--font-size-18);--text-body:var(--font-size-16);--text-body-sm:var(--font-size-14);--text-caption:var(--font-size-12);--space-gutter:clamp(var(--space-2), .8571rem + .7143vw, var(--space-3));--container-max:calc(var(--grid-unit) * 166);--measure:65ch;--size-icon-sm:var(--space-2);--size-icon-md:var(--space-3);--size-target:var(--space-6);--hit-area-extension:var(--space-2);--space-section-xs:var(--space-4);--space-section-sm:clamp(var(--space-4), 1.4286rem + 2.8571vw, var(--space-8));--space-section-md:clamp(var(--space-6), 2.2857rem + 3.5714vw, calc(var(--grid-unit) * 11));--space-section:clamp(var(--space-8), 3rem + 5vw, calc(var(--grid-unit) * 15));--space-section-xl:clamp(var(--space-16), 5rem + 15vw, calc(var(--grid-unit) * 37));--radius-control:var(--radius-1);--radius-media:var(--radius-2);--radius-pill:var(--radius-full);--border-width:var(--stroke-1);--border-width-accent:var(--space-3);--layer-raised:1;--layer-intro:1;--layer-page:2;--layer-header:10;--layer-sheet:20;--layer-skip-link:100;--motion-duration-ui:var(--duration-150);--motion-duration-reveal:var(--duration-600);--motion-ease-ui:var(--ease-out-quart);--motion-ease-reveal:var(--ease-in-out-cubic);--site-header-height-fallback:calc(var(--grid-unit) * 12);--hero-photo-max:calc(var(--grid-unit) * 74);--hero-min-height-wide:96dvh;--hero-composition-span:1.34;--hero-photo-ratio:1045 / 993;--hero-photo-fade-in:5%;--hero-photo-fade-start:85%;--hero-photo-fade-end:98%;--hero-dot-size:calc(var(--grid-unit) / 2);--hero-dot-pitch-x:calc(var(--grid-unit) * 13);--hero-dot-pitch-y:calc(var(--grid-unit) * 7);--hero-design-width:40%;--hero-design-y:24%;--hero-design-x:60%;--hero-design-x-wide:66%;--hero-design-height:calc(40cqi * 59 / 307);--hero-system-height:calc(43cqi * 58 / 323);--hero-system-y:59%;--hero-system-x:0%;--hero-system-x-wide:-17%;--hero-phrase-y:40%;--hero-phrase-measure:34ch;--hero-phrase-size:max(var(--text-body-lg), 3.3cqi);--hero-brace-size:max(var(--text-display-xl), 9.4cqi);--hero-hold-screen:100dvh;--hero-speed-design:.45;--hero-speed-phrase:.3;--hero-speed-system:.15;--hero-speed-photo:.06;--hero-enter-offset:100vw;--hero-enter-duration:.75s;--hero-enter-ease:var(--ease-in-out-cubic);--hero-swap-offset:16cqi;--hero-swap-ease:var(--ease-in-out-cubic);--hero-swap-slot:3s;--hero-swap-cycle:calc(var(--hero-swap-slot) * 5);--hero-spin-period:4s;--hero-spin-ease:var(--ease-in-out-cubic);--label-title-duration:1s;--label-title-ease:var(--ease-out-quart);--label-title-text-delay:.12s;--label-title-text-mask:linear-gradient(to right, var(--palette-ink-950) 40%, transparent 60%);--label-title-text-mask-size:250% 100%;--label-title-marker-delay:calc(var(--label-title-duration) / 2);--builder-offset:clamp(var(--space-10), 2.7143rem + 11.4286vw, calc(var(--grid-unit) * 26));--conviction-min-height:calc(var(--grid-unit) * 74);--conviction-content-start:calc(var(--grid-unit) * 18);--conviction-photo-width:52%;--conviction-photo-ratio:508 / 569;--showcase-max:calc(var(--grid-unit) * 138);--showcase-ratio:16 / 9;--project-columns:minmax(0, 7fr) minmax(0, 4fr);--project-min-height:calc(var(--grid-unit) * 53);--project-media-ratio:483 / 424;--project-media-position:100% 0;--project-title-size:clamp(var(--font-size-20), 1.1071rem + .7143vw, var(--font-size-28));--project-sheet-open-duration:var(--motion-duration-reveal);--project-sheet-open-ease:var(--ease-in-out-cubic);--project-sheet-close-duration:.3s;--project-sheet-close-ease:var(--ease-in-cubic);--project-sheet-header-columns:minmax(0, 15fr) minmax(0, 16fr);--project-sheet-split-columns:minmax(0, 16fr) minmax(0, 15fr);--project-sheet-split-columns-end:minmax(0, 15fr) minmax(0, 16fr);--project-sheet-feature-columns:minmax(0, 20fr) minmax(0, 11fr);--project-sheet-band-max:calc(var(--grid-unit) * 128);--project-sheet-title-size:clamp(var(--font-size-24), 1.3571rem + .7143vw, var(--font-size-32));--project-sheet-gap:clamp(var(--space-8), 3.4286rem + 2.8571vw, var(--space-12));--project-sheet-padding-end:clamp(var(--space-12), 4.1429rem + 9.2857vw, calc(var(--grid-unit) * 25));--project-sheet-path-lines:1;--project-sheet-video-ratio:16 / 9;--project-sheet-highlight-delay:var(--project-sheet-open-duration);--project-sheet-highlight-delay-arrival:0s;--project-sheet-hold-screen:100dvh;--link-button-compact-icon:calc(var(--grid-unit) * 2.5);--link-button-compact-padding-inline:calc(var(--grid-unit) * 1.5);--prototypes-title-offset:clamp(var(--space-16), 4.7143rem + 16.4286vw, calc(var(--grid-unit) * 39));--prototype-step:var(--space-8);--prototype-width:calc(var(--grid-unit) * 62);--prototype-media-ratio:8 / 5;--prototype-media-radius:var(--radius-1);--prototype-start-overflow:.375;--prototype-follow:.2s;--prototype-follow-stagger:80ms;--clients-padding-block:calc(var(--grid-unit) * 3.75);--clients-gap:var(--space-7);--clients-duration:40s;--offwork-title-offset:clamp(var(--space-6), 2rem + 5vw, calc(var(--grid-unit) * 13));--offwork-stack-max:calc(var(--grid-unit) * 148);--offwork-card-max:calc(var(--grid-unit) * 95);--offwork-card-min-height:calc(var(--grid-unit) * 45);--offwork-media-width:calc(var(--grid-unit) * 34);--offwork-media-height:calc(var(--grid-unit) * 18);--offwork-media-ratio:17 / 9;--offwork-text-max:calc(var(--grid-unit) * 47);--contact-padding-end:calc(var(--grid-unit) * 14);--scramble-tick:45ms;--scramble-duration-short:1s;--scramble-duration-long:2s;--scramble-start:10%;--cursor-size:var(--space-3);--cursor-hover-scale:2;--reveal-offset:var(--space-4);--reveal-start:10%;--reveal-duration:var(--motion-duration-reveal);--reveal-ease:var(--ease-out-quart);--melt-duration:90s;--melt-ease-power:2;--melt-columns:400;--melt-contrast:1.1;--melt-grain:.04;--melt-drop-speed:.08;--melt-edge-fade:.3;--melt-source:.33;--melt-blend:normal;--intro-line-height:var(--space-3);--intro-dim-opacity:.25;--intro-rise:100svh;--intro-duration-sparks:.6s;--intro-duration-fill:.4s;--intro-duration-scramble:.8s;--intro-duration-fade:.8s;--intro-tick:80ms}@media (prefers-reduced-motion:reduce){:root{--motion-duration-ui:var(--duration-0);--motion-duration-reveal:var(--duration-0)}}}@layer reset{*,:before,:after{box-sizing:border-box}*{margin:0}body{min-block-size:100svh}img,video,canvas,svg{max-inline-size:100%;display:block}picture{display:contents}picture source{display:none}input,button,textarea,select{font:inherit;color:inherit}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit;text-wrap:balance}p{text-wrap:pretty}h1,h2,h3,h4,h5,h6,p{overflow-wrap:anywhere}ul[role=list],ol[role=list]{padding:0;list-style:none}}@layer base{:root{color-scheme:dark}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-body);line-height:var(--leading-normal);font-variation-settings:"opsz" var(--opsz-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit}:focus-visible{outline:var(--focus-ring-width) solid var(--focus-ring-color);outline-offset:var(--focus-ring-offset)}::selection{background-color:var(--color-accent);color:var(--color-text-inverse)}}@layer utilities{.visually-hidden:not(:focus-within,:active){inline-size:var(--stroke-1);block-size:var(--stroke-1);clip-path:inset(50%);white-space:nowrap;position:absolute;overflow:hidden}.container{inline-size:min(100% - 2 * var(--space-gutter), var(--container-max));margin-inline:auto}.measure{max-inline-size:var(--measure)}.has-custom-cursor,.has-custom-cursor *{cursor:none}[data-reveal=slide][data-reveal-state=pending]{opacity:0;translate:calc(var(--reveal-offset) * -1) 0}[data-reveal=slide][data-reveal-state=shown]{animation:reveal var(--reveal-duration) var(--reveal-ease)}@keyframes reveal{0%{opacity:0;translate:calc(var(--reveal-offset) * -1) 0}}}
