@font-face{font-family:Phosphor;src:url(./Phosphor-DtdjzkpE.woff2)format("woff2");font-weight:400;font-style:normal;font-display:block}.ph{speak:never;font-variant:normal;text-transform:none;letter-spacing:0;font-feature-settings:"liga";font-variant-ligatures:discretionary-ligatures;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-style:normal;font-weight:400;line-height:1;font-family:Phosphor!important}.ph-arrow-down:before{content:""}.ph-arrow-left:before{content:""}.ph-arrow-right:before{content:""}.ph-arrow-up:before{content:""}.ph-arrow-up-right:before{content:""}.ph-arrows-out-simple:before{content:""}.ph-envelope-simple:before{content:""}.ph-eye:before{content:""}.ph-heart:before{content:""}.ph-info:before{content:""}.ph-pause:before{content:""}.ph-play:before{content:""}.ph-waveform:before{content:""}.ph-sun:before{content:""}.ph-x:before{content:""}.ph-moon-stars:before{content:""}@font-face{font-family:Mona Sans Variable;font-style:normal;font-display:swap;font-weight:200 900;font-stretch:75% 125%;src:url(./mona-sans-vietnamese-wdth-normal-Rd0aZl9c.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Mona Sans Variable;font-style:normal;font-display:swap;font-weight:200 900;font-stretch:75% 125%;src:url(./mona-sans-latin-ext-wdth-normal-CQ1tG6In.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Mona Sans Variable;font-style:normal;font-display:swap;font-weight:200 900;font-stretch:75% 125%;src:url(./mona-sans-latin-wdth-normal-BMVx8nn_.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif;font-style:normal;font-display:swap;font-weight:400;src:url(./instrument-serif-latin-400-normal-DnYpCC2O.woff2)format("woff2"),url(./instrument-serif-latin-400-normal-BVbkICAY.woff)format("woff")}@font-face{font-family:Instrument Serif;font-style:italic;font-display:swap;font-weight:400;src:url(./instrument-serif-latin-400-italic-DKMiL14s.woff2)format("woff2"),url(./instrument-serif-latin-400-italic-u__WvvIK.woff)format("woff")}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-cyrillic-ext-wght-normal-X_5orZeX.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-cyrillic-wght-normal-DiZS0aHC.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-symbols2-wght-normal-CO5SzqOn.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-vietnamese-wght-normal-DadHysG0.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-latin-ext-wght-normal-Bwz-egvJ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-latin-wght-normal-XN7g48iV.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Mona Sans Fallback;src:local(Arial),local(Helvetica Neue),local(Liberation Sans);size-adjust:104.9%;ascent-override:103.9%;descent-override:30.5%;line-gap-override:0%}@font-face{font-family:Instrument Serif Fallback;src:local(Times New Roman),local(Times),local(Liberation Serif);size-adjust:84.2%;ascent-override:117.6%;descent-override:36.8%;line-gap-override:0%}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--theme-mix:0;--ink-day:0;--depth-ink:0;--submerged:0;--look-up:0;--depth-progress:0;--font-serif:"Instrument Serif", "Instrument Serif Fallback", "Iowan Old Style", "Times New Roman", serif;--font-sans:"Mona Sans Variable", "Mona Sans Fallback", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;--font-mono:"Geist Mono Variable", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--serif:var(--font-serif);--sans:var(--font-sans);--mono:var(--font-mono);--fs-title:clamp(2.25rem, .6rem + 6.8vw, 7rem);--fs-display-xl:clamp(4rem, 1.6rem + 9vw, 10.5rem);--fs-display:clamp(3rem, 7.6vw, 7.25rem);--fs-h1:clamp(2.75rem, 1.5rem + 3.2vw, 4.75rem);--fs-h1-rail:clamp(2.75rem, 1.4rem + 3.4vw, 5.25rem);--fs-h1-detail:clamp(2.5rem, 1.4rem + 3vw, 4.5rem);--fs-h2:clamp(1.875rem, 1.35rem + 1.6vw, 3rem);--fs-h3:clamp(1.375rem, 1.15rem + .9vw, 2rem);--fs-h4:clamp(1.125rem, 1.05rem + .35vw, 1.375rem);--fs-lead:clamp(1.5rem, 1.1rem + 1.6vw, 2.5rem);--fs-lead-s:clamp(1.25rem, 1.05rem + .5vw, 1.5rem);--fs-body-lg:clamp(1.0625rem, .99rem + .3vw, 1.25rem);--fs-body:clamp(.96875rem, .93rem + .16vw, 1.0625rem);--fs-small:clamp(.8125rem, .79rem + .1vw, .875rem);--fs-label:.75rem;--fs-micro:.6875rem;--fs-num-xl:clamp(2.75rem, 1.5rem + 4vw, 5.75rem);--fs-num-l:clamp(2rem, 1.2rem + 1.6vw, 3.25rem);--lh-tight:.9;--lh-head:1.02;--lh-lead:1.15;--lh-body:1.62;--lh-body-lg:1.5;--lh-small:1.5;--lh-label:1.5;--tr-title:.22em;--tr-display:-.012em;--tr-label:.2em;--tr-mono:.16em;--tr-num:-.02em;--wd-title:125%;--wd-label:112%;--wd-ui:106%;--frame:clamp(14px, 1.5vw, 26px);--chrome-x:calc(var(--frame) + 28px);--gutter:clamp(20px, 5.4vw, 104px);--gap:clamp(16px, 1.8vw, 28px);--mast-h:76px;--zone-top:clamp(100px, 13svh, 148px);--zone-bottom:clamp(40px, 7svh, 72px);--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;--s-10:128px;--r-chip:6px;--r-card:12px;--r-pill:999px;--edge:var(--gutter);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-film:cubic-bezier(.22, .61, .36, 1);--ease-io:cubic-bezier(.65, 0, .35, 1);--ease-sine:cubic-bezier(.37, 0, .63, 1);--t-micro:.18s;--t-ui:.24s;--t-panel:.32s;--t-reveal:.9s;--t-title:1.2s;--t-cine:1.6s;--stagger:80ms}@property --depth-ink{syntax:"<number>";inherits:true;initial-value:0}:root,.inline-zone-section{transition:--depth-ink .28s var(--ease-io)}:root,.portfolio-panel,.inline-zone-section{--theme-night:calc((1 - var(--theme-mix)) * 100%);--night-amt:calc(max(1 - var(--ink-day), var(--depth-ink)) * 100%);--li-ink:#f1f7f5;--li-ink-2:color-mix(in oklab, #c9d8d7 var(--theme-night), #e2efee);--li-ink-3:color-mix(in oklab, #97adb0 var(--theme-night), #d0e3e4);--li-accent:color-mix(in oklab, #8febe3 var(--theme-night), #b4fff5);--li-glass:color-mix(in oklab, #06182261 var(--theme-night), #04283c57);--li-frost:color-mix(in oklab, #010c144d var(--theme-night), #0018344d);--li-scrim:color-mix(in oklab, #010a12db var(--theme-night), #021c3cd6);--ink:color-mix(in oklab, var(--li-ink) var(--night-amt), #07212a);--ink-2:color-mix(in oklab, var(--li-ink-2) var(--night-amt), #0e2a33);--ink-3:color-mix(in oklab, var(--li-ink-3) var(--night-amt), #1b3943);--accent:color-mix(in oklab, var(--li-accent) var(--night-amt), #00363c);--accent-strong:color-mix(in oklab, #e2fffb var(--night-amt), #002a2f);--ember:color-mix(in oklab, #e9b96e var(--night-amt), #7a4e0c);--hair:color-mix(in oklab, #dcf4f033 var(--night-amt), #06283238);--hair-2:color-mix(in oklab, #dcf4f066 var(--night-amt), #0628326b);--glass:color-mix(in oklab, var(--li-glass) var(--night-amt), #f0f9fb8c);--glass-strong:color-mix(in oklab, #04121bb3 var(--night-amt), #f2fafcd6);--glass-rim:color-mix(in oklab, #e1faf63d var(--night-amt), #ffffffa6);--frost:color-mix(in oklab, var(--li-frost) var(--night-amt), #ecf8fa33);--frost-strong:color-mix(in oklab, var(--li-frost) var(--night-amt), #ecf8fa80);--halo:color-mix(in oklab, #000a1461 var(--night-amt), #ecf8fa66);--scrim:color-mix(in oklab, var(--li-scrim) var(--night-amt), #e2f2f6e0);--paper:color-mix(in oklab, #020a12 var(--theme-night), #dcebef);--deep:var(--paper);--ink-soft:var(--ink-2);--ink-faint:var(--ink-3);--cyan:var(--accent);--cyan-bright:var(--accent-strong);--line:var(--hair);--line-strong:var(--hair-2);--gold:var(--ember)}html[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (width>=761px) and (height<=820px){:root{--fs-display:min(7.6vw, 11.5svh);--fs-h1:min(clamp(2.75rem, 1.5rem + 3.2vw, 4.75rem), 9svh)}}@media (width<=760px){:root{--frame:10px;--chrome-x:20px;--gutter:20px;--mast-h:64px;--zone-top:96px;--zone-bottom:56px}}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-snap-type:y proximity;background:var(--paper);scrollbar-width:none;-ms-overflow-style:none;min-width:320px}html::-webkit-scrollbar{display:none}@media (width>=761px){html{scroll-snap-type:y mandatory}}body{background:var(--paper);min-width:320px;font-family:var(--font-sans);font-size:var(--fs-body);font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;overflow-x:hidden}body,.portfolio-panel,.inline-zone-section{color:var(--ink)}body.panel-open{overflow:hidden}body.panel-open .portfolio-story,body.panel-open .experience>.masthead,body.panel-open .experience>.depth-gauge{visibility:hidden}:where(button,a){color:inherit;font:inherit}:focus-visible{outline:2px solid var(--accent-strong);outline-offset:3px}img{max-width:100%;display:block}#ocean{z-index:0;touch-action:pan-y;opacity:0;width:100%;height:100%;transition:opacity .9s ease-out;display:block;position:fixed;inset:0}html[data-boot=revealing] #ocean,html[data-boot=done] #ocean{opacity:1}html[data-boot=pending],html[data-boot=revealing],html[data-boot=pending] body,html[data-boot=revealing] body{overflow:hidden}#bootVeil{display:none}html[data-boot=pending] #bootVeil,html[data-boot=revealing] #bootVeil{display:grid}.boot-veil{z-index:50;background:var(--paper);opacity:1;pointer-events:none;place-items:center;transition:opacity .72s .18s;position:fixed;inset:0}html[data-boot=revealing] .boot-veil{opacity:0}html[data-boot=done] #bootVeil{display:none}.boot-veil-wordmark{color:var(--ink);align-items:center;gap:12px;display:inline-flex;position:relative}.boot-veil-wordmark:after{content:"";background:linear-gradient(90deg, transparent, var(--accent) 30% 70%, transparent);width:120px;height:1px;animation:boot-veil-calibrate 1.2s var(--ease-out) .2s forwards;margin-left:-60px;position:absolute;top:calc(100% + 14px);left:50%;transform:scaleX(0)}html[data-boot=pending] .boot-veil-wordmark{animation:2.4s ease-in-out infinite boot-veil-breathe}@keyframes boot-veil-breathe{0%,to{opacity:.68}50%{opacity:1}}@keyframes boot-veil-calibrate{to{transform:scaleX(1)}}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.webgl-fallback{top:calc(100svh - var(--frame) - 92px);z-index:1;width:min(100% - 2 * var(--gutter), 30em);color:var(--ink-2);font:400 var(--fs-body-lg) / var(--lh-body-lg) var(--font-sans);text-align:center;text-wrap:balance;margin-inline:auto;position:absolute;left:0;right:0;translate:0 -100%}.webgl-fallback[hidden]{display:none}html[data-renderer=none]{--submerged:1}html[data-boot] .agent-document{display:none!important}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto;scroll-snap-type:none}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html[data-boot=pending] #ocean,html[data-boot=revealing] #ocean,html[data-boot=done] #ocean{opacity:1}html[data-boot=pending] .boot-veil-wordmark{opacity:1;animation:none}}:where(.surface-hero-copy h1,.surface-hero-reflection){font-family:var(--font-sans);font-size:var(--fs-title);font-weight:240;font-stretch:var(--wd-title);letter-spacing:var(--tr-title);text-transform:uppercase;margin:0;line-height:1}:where(.contact-heading,.about-heading .zone-title,.campaigns-heading .zone-title,.music-heading .zone-title,.data-heading .zone-title,.project-overview h1,.data-stage-title,.narrative-section h2,.campaign-slide-title,.data-project-index-title,.music-video-title,.campaign-progress-title,.pagination-title){font-family:var(--font-serif);letter-spacing:var(--tr-display);margin:0;font-weight:400}:where(.contact-heading){font-size:var(--fs-display-xl);letter-spacing:-.015em;line-height:.86}:where(.about-heading .zone-title){font-size:var(--fs-display);line-height:.9}:where(.campaigns-heading .zone-title,.music-heading .zone-title){font-size:var(--fs-h1);line-height:.9}:where(.data-heading .zone-title){font-size:var(--fs-h1-rail);line-height:.9}:where(.project-overview h1){font-size:var(--fs-h1-detail);line-height:.92}:where(.data-stage-title,.narrative-section h2){font-size:var(--fs-h2);line-height:.98}:where(.campaign-slide-title,.pagination-title){font-size:var(--fs-h3);line-height:1.02}:where(.data-project-index-title,.music-video-title,.campaign-progress-title){font-size:var(--fs-h4);letter-spacing:0;line-height:1.05}:where(.surface-hero-tagline,.contact-intro){font-family:var(--font-serif);font-size:var(--fs-lead);font-style:italic;font-weight:400;line-height:1.12}:where(.about-note,.detail-project-tagline,.interactive-activate-label){font-family:var(--font-serif);font-size:var(--fs-lead-s);font-style:italic;font-weight:400;line-height:1.2}:where(.about-intro p:first-child,.music-heading .collection-intro,.narrative-section p){font-family:var(--font-sans);font-size:var(--fs-body-lg);font-weight:380;line-height:var(--lh-body-lg)}:where(.about-intro p+p,.data-heading .collection-intro,.detail-summary){font-family:var(--font-sans);font-size:var(--fs-body);font-weight:400;line-height:var(--lh-body)}:where(.about-fact dd,.detail-facts dd,.data-stage-summary,.music-video-caption,.collection-footnote,.data-code-chart-title){font-family:var(--font-sans);font-size:var(--fs-small);font-weight:400;line-height:var(--lh-small)}:where(.data-code-chart-title){color:var(--ink);font-weight:480}:where(.text-link,.campaign-slide-action,.data-stage-action,.interactive-collapse,.detail-back,.music-reel-step){font-family:var(--font-sans);font-size:var(--fs-small);font-weight:520;font-stretch:var(--wd-ui);letter-spacing:.02em}:where(.surface-hero-credential,.campaign-slide-hint){font-family:var(--font-sans);font-size:var(--fs-label);font-weight:520;font-stretch:var(--wd-label);line-height:var(--lh-label);letter-spacing:var(--tr-label);text-transform:uppercase}:where(.wordmark,.panel-wordmark,.boot-veil-wordmark){font-family:var(--font-sans);font-size:.8125rem;font-weight:520;font-stretch:var(--wd-title);letter-spacing:.32em;text-transform:uppercase}:where(.discipline,.panel-masthead>p,.panel-close span,.depth-gauge-label,.zone-slate,.about-fact dt,.detail-facts dt,.data-stage-metric dt,.campaign-slide-year,.campaign-slide-brand,.campaign-slide-types,.campaign-progress-number,.data-stage-label,.data-stage-meta,.data-project-index-number,.data-project-index-meta,.data-code-chart-note,.data-chart-tooltip,.data-chart-tooltip-kicker,.music-total-views-label,.music-total-views-meta,.music-video-stats,.music-video-views,.music-video-likes,.music-scroll-hint,.contact-ascend,.contact-credit,.detail-index,.feature-label,.project-media-item figcaption,.interactive-browser-bar span,.narrative-index,.pagination-label){font-family:var(--font-mono);font-size:var(--fs-micro);font-weight:450;line-height:var(--lh-label);letter-spacing:var(--tr-mono);text-transform:uppercase}:where(.depth-gauge strong,.zone-slate-depth,.detail-depth){font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:.06em;text-transform:none;font-weight:450}:where(.music-total-views-value){font-family:var(--font-sans);font-size:var(--fs-num-xl);font-weight:220;font-stretch:var(--wd-label);font-variant-numeric:proportional-nums;letter-spacing:-.03em;line-height:.86}:where(.data-stage-metric dd){font-family:var(--font-sans);font-size:var(--fs-num-l);font-weight:230;font-stretch:var(--wd-label);font-variant-numeric:proportional-nums;letter-spacing:var(--tr-num);line-height:.95}:where(p,dd,li,figcaption){text-wrap:pretty}:where(h1,h2,h3,.surface-hero-tagline,.surface-hero-credential,.contact-intro){text-wrap:balance}.keep{white-space:nowrap}.amp{font-family:var(--font-serif);font-style:italic;font-weight:400}@property --glint{syntax:"<number>";inherits:false;initial-value:0}:where(.text-link,.campaign-slide-action,.data-stage-action,.campaign-carousel-control,.music-reel-step,.interactive-collapse,.panel-close,.theme-toggle,.campaign-progress-button[aria-current=step],.data-project-index-button[aria-current=true],.data-code-chart,.data-chart-tooltip,.campaign-slide-hint,.interactive-activate-label){border:1px solid var(--glass-rim);background:radial-gradient(240px circle at var(--mx,50%) var(--my,-30%), rgb(255 255 255/var(--glint)), transparent 62%), linear-gradient(180deg, #ffffff17, #fff0 42%), var(--glass);-webkit-backdrop-filter:blur(18px)saturate(1.5);backdrop-filter:blur(18px)saturate(1.5);transition:border-color var(--t-ui) ease, color var(--t-ui) ease, --glint var(--t-ui) ease, transform .12s ease;box-shadow:inset 0 1px #ffffff29,inset 0 -1px #0000001f,0 24px 60px -32px #00060c8c}:where(.text-link,.campaign-slide-action,.data-stage-action,.campaign-carousel-control,.music-reel-step,.interactive-collapse,.panel-close,.theme-toggle,.campaign-progress-button[aria-current=step],.data-project-index-button[aria-current=true]):hover{--glint:.12;border-color:var(--hair-2)}:where(.text-link,.campaign-slide-action,.data-stage-action,.campaign-carousel-control,.music-reel-step,.interactive-collapse,.panel-close,.theme-toggle):focus-visible{box-shadow:inset 0 1px 0 #ffffff29, inset 0 -1px 0 #0000001f, 0 0 0 6px color-mix(in oklab, var(--accent) 22%, transparent)}:where(.text-link,.campaign-slide-action,.data-stage-action,.campaign-carousel-control,.music-reel-step,.interactive-collapse,.panel-close,.theme-toggle):active{transform:scale(.98)}.campaign-slide-media:focus-visible,.music-video-poster:focus-visible,.interactive-activate:focus-visible{outline-offset:-4px;outline-color:#0000}.campaign-slide-media:focus-visible:after,.music-video-poster:focus-visible:after,.interactive-activate:focus-visible:after{content:"";z-index:3;border:2px solid var(--accent-strong);border-radius:calc(var(--r-card) - 4px);pointer-events:none;position:absolute;inset:4px;box-shadow:0 0 0 2px #03101a8c,inset 0 0 0 2px #03101a8c}:where(.text-link,.campaign-slide-action,.data-stage-action,.detail-back,.contact-ascend,.music-reel-step) i{transition:translate var(--t-ui) var(--ease-out)}:where(.text-link,.campaign-slide-action,.data-stage-action,.detail-back,.contact-ascend,.music-reel-step):is(:hover,:focus-visible) .ph-arrow-up-right{translate:2px -2px}:where(.text-link,.campaign-slide-action,.data-stage-action,.detail-back,.contact-ascend,.music-reel-step):is(:hover,:focus-visible) .ph-arrow-right{translate:3px}:where(.text-link,.campaign-slide-action,.data-stage-action,.detail-back,.contact-ascend,.music-reel-step):is(:hover,:focus-visible) .ph-arrow-up{translate:0 -3px}:where(.text-link,.campaign-slide-action,.data-stage-action,.detail-back,.contact-ascend,.music-reel-step):is(:hover,:focus-visible) .ph-arrow-left{translate:-3px}html[data-quality=low] .data-code-chart,html[data-quality=low] .masthead:before,html[data-quality=low] .panel-masthead:before{-webkit-backdrop-filter:none;backdrop-filter:none}html[data-quality=low] .data-code-chart{background:var(--glass-strong)}.frost{--frost-x:112px;--frost-y:80px;isolation:isolate;position:relative}.frost:before{--frost-mask-x:linear-gradient(90deg, transparent, #0000001a calc(var(--frost-x) * .22), #00000061 calc(var(--frost-x) * .46), #000000bd calc(var(--frost-x) * .72), #000 var(--frost-x), #000 calc(100% - var(--frost-x)), #000000bd calc(100% - var(--frost-x) * .72), #00000061 calc(100% - var(--frost-x) * .46), #0000001a calc(100% - var(--frost-x) * .22), transparent);--frost-mask-y:linear-gradient(180deg, transparent, #0000001a calc(var(--frost-y) * .22), #00000061 calc(var(--frost-y) * .46), #000000bd calc(var(--frost-y) * .72), #000 var(--frost-y), #000 calc(100% - var(--frost-y)), #000000bd calc(100% - var(--frost-y) * .72), #00000061 calc(100% - var(--frost-y) * .46), #0000001a calc(100% - var(--frost-y) * .22), transparent);content:"";inset:calc(var(--frost-y) * -1) calc(var(--frost-x) * -1);z-index:-1;pointer-events:none;background:var(--frost);-webkit-mask:var(--frost-mask-x), var(--frost-mask-y);-webkit-mask-composite:source-in;-webkit-mask:var(--frost-mask-x), var(--frost-mask-y);mask:var(--frost-mask-x), var(--frost-mask-y);position:absolute;-webkit-mask-composite:source-in;mask-composite:intersect}:where(.about-intro,.about-facts,.about-note,.collection-intro,.data-stage-summary,.music-video-caption,.contact-intro){text-shadow:0 1px 14px var(--halo)}.collection-screen{min-height:100%;padding:var(--zone-top) var(--gutter) var(--zone-bottom)}.zone-slate{color:var(--ink-2);letter-spacing:.18em;align-items:center;gap:14px;margin:0 0 clamp(14px,2svh,22px);display:flex}.zone-slate-index{color:var(--accent)}.zone-slate-rule{background:linear-gradient(90deg, var(--accent), color-mix(in oklab, var(--accent) 0%, transparent));flex:none;width:56px;height:1px}.zone-slate-depth{color:var(--ink-2)}.media-frame{background:color-mix(in oklab, #061821c7 var(--night-amt), #e9f5f7d1);position:relative;overflow:hidden}.media-frame img{object-fit:cover;width:100%;height:100%;transition:transform .65s cubic-bezier(.2,.7,.2,1),filter .35s}.collection-intro{max-width:390px;color:var(--ink-2);margin:30px 0 0}.prerender-screen{max-width:calc(46rem + 2 * var(--gutter))}.prerender-screen h2{margin:0 0 var(--s-6);font-family:var(--font-serif);font-size:var(--fs-h1);letter-spacing:var(--tr-display);font-weight:400;line-height:.95}.prerender-screen :is(p,li,dd){margin:0 0 var(--s-4);color:var(--ink-2);font-size:var(--fs-body-lg);line-height:var(--lh-body-lg)}.prerender-screen a{color:var(--ink);text-underline-offset:.2em}.prerender-screen ul{padding-left:1.1em}.prerender-screen dl{margin:var(--s-6) 0;border-top:1px solid var(--hair-2)}.prerender-screen dl>div{gap:var(--s-4);border-bottom:1px solid var(--hair);grid-template-columns:9rem minmax(0,1fr);align-items:baseline;padding:12px 0 0;display:grid}.prerender-screen dt{color:var(--ink-3);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:var(--tr-mono);text-transform:uppercase}.text-link{border-radius:var(--r-pill);min-height:48px;color:var(--ink);justify-content:center;align-items:center;gap:12px;margin:0;padding:0 22px;text-decoration:none;display:inline-flex}.text-link i{color:var(--accent)}@media (prefers-reduced-motion:no-preference){html:not([data-qa=true]) .inline-zone-section:not(.is-revealed) [data-reveal]{opacity:0}.inline-zone-section.is-revealed [data-reveal]{--d:calc(var(--i,0) * var(--stagger) + var(--delay,0s));animation:var(--reveal-name,reveal-rise) var(--reveal-duration,1s) var(--ease-out) var(--d) backwards}.inline-zone-section.is-revealed [data-reveal=title]{--reveal-name:reveal-title;--reveal-duration:var(--t-title);--delay:.12s}.inline-zone-section.is-revealed [data-reveal=rise]{--delay:.38s}.inline-zone-section.is-revealed [data-reveal=iris]{--reveal-name:reveal-iris;--reveal-duration:1.1s;--delay:.52s}.inline-zone-section.is-revealed [data-reveal=slate]{--reveal-name:reveal-fade;--reveal-duration:var(--t-reveal)}.inline-zone-section.is-revealed [data-reveal=slate] .zone-slate-rule{transform-origin:0;animation:reveal-draw .7s var(--ease-out) .1s backwards}}@keyframes reveal-fade{0%{opacity:0}}@keyframes reveal-rise{0%{opacity:0;transform:translateY(16px)}}@keyframes reveal-title{0%{opacity:0;filter:blur(12px);transform:translateY(18px)}}@keyframes reveal-iris{0%{opacity:0;clip-path:inset(10% 0 0 0 round var(--r-card));transform:translateY(24px)}to{clip-path:inset(0 round var(--r-card))}}@keyframes reveal-draw{0%{transform:scaleX(0)}}.experience{z-index:10;position:relative}.experience:after{--m:14px;--c:var(--hair-2);content:"";inset:var(--frame);z-index:29;pointer-events:none;opacity:.5;background:linear-gradient(var(--c), var(--c)) top left / var(--m) 1px no-repeat, linear-gradient(var(--c), var(--c)) top left / 1px var(--m) no-repeat, linear-gradient(var(--c), var(--c)) top right / var(--m) 1px no-repeat, linear-gradient(var(--c), var(--c)) top right / 1px var(--m) no-repeat, linear-gradient(var(--c), var(--c)) bottom left / var(--m) 1px no-repeat, linear-gradient(var(--c), var(--c)) bottom left / 1px var(--m) no-repeat, linear-gradient(var(--c), var(--c)) bottom right / var(--m) 1px no-repeat, linear-gradient(var(--c), var(--c)) bottom right / 1px var(--m) no-repeat;position:fixed}body.panel-open .experience:after{visibility:hidden}html[data-boot=pending] .masthead>*,html[data-boot=pending] .depth-gauge{opacity:0}html[data-boot=revealing] .masthead>*,html[data-boot=revealing] .depth-gauge{opacity:1;transition:opacity .52s .78s}.masthead,.panel-masthead{z-index:30;height:calc(var(--mast-h) + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) max(var(--chrome-x), env(safe-area-inset-right,0px)) 0 max(var(--chrome-x), env(safe-area-inset-left,0px));pointer-events:none;grid-template-columns:1fr auto 1fr;align-items:center;display:grid;position:fixed;top:0;left:0;right:0}.masthead>*,.panel-masthead>*{pointer-events:auto}.masthead:before,.panel-masthead:before{--band-fade:48px;--band-cut:0px;--band-ramp:calc(var(--band-fade) + var(--band-cut));content:"";inset:0 0 calc(var(--band-fade) * -1);z-index:-1;pointer-events:none;background:var(--scrim);-webkit-mask-image:linear-gradient(#000 calc(100% - var(--band-ramp)), #0000008f calc(100% - var(--band-ramp) * .62), #0003 calc(100% - var(--band-ramp) * .3), transparent);-webkit-mask-image:linear-gradient(#000 calc(100% - var(--band-ramp)), #0000008f calc(100% - var(--band-ramp) * .62), #0003 calc(100% - var(--band-ramp) * .3), transparent);mask-image:linear-gradient(#000 calc(100% - var(--band-ramp)), #0000008f calc(100% - var(--band-ramp) * .62), #0003 calc(100% - var(--band-ramp) * .3), transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);opacity:var(--submerged);position:absolute}.masthead:before{--band-fade:calc(48px + 32px * var(--look-up,0));--band-cut:calc(30px * var(--look-up,0));opacity:calc(var(--submerged) * (1 - .55 * var(--look-up,0)))}.panel-masthead:before{opacity:1}.portfolio-story :is(a,button,canvas,iframe,[tabindex]){scroll-margin-top:calc(var(--mast-h) + env(safe-area-inset-top,0px) + 12px)}.wordmark,.panel-wordmark{width:max-content;min-height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;justify-self:start;align-items:center;gap:12px;padding:0 4px 0 0;text-decoration:none;display:inline-flex}.wordmark-dot{background:var(--accent);width:6px;height:6px;box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 18%, transparent), 0 0 12px color-mix(in oklab, var(--accent) 70%, transparent);transition:box-shadow var(--t-ui) ease;border-radius:50%}.wordmark:is(:hover,:focus-visible) .wordmark-dot,.panel-wordmark:is(:hover,:focus-visible) .wordmark-dot{box-shadow:0 0 0 3px color-mix(in oklab, var(--accent) 30%, transparent), 0 0 18px var(--accent)}.experience[data-zone=surface] .wordmark-dot{animation:wordmark-breathe 4.8s var(--ease-sine) infinite}@keyframes wordmark-breathe{0%,to{opacity:1}50%{opacity:.45}}.discipline,.panel-masthead>p{color:var(--ink-2);letter-spacing:.22em;white-space:nowrap;margin:0}.theme-toggle,.panel-close{border-radius:var(--r-pill);height:40px;color:var(--ink);cursor:pointer;justify-content:center;justify-self:end;align-items:center;padding:0;display:inline-flex}.theme-toggle{width:40px}.theme-toggle.is-transitioning{animation:.52s cubic-bezier(.34,1.2,.64,1) theme-toggle-turn}@keyframes theme-toggle-turn{0%{transform:rotate(0)scale(1)}38%{transform:rotate(-16deg)scale(.9)}to{transform:rotate(0)scale(1)}}.theme-toggle-icon{width:1.05rem;height:1.05rem;position:relative}.theme-toggle-icon i{color:var(--accent);place-items:center;margin:0;font-size:1.05rem;transition:opacity .42s,transform .52s cubic-bezier(.34,1.4,.64,1);display:grid;position:absolute;inset:0}.theme-toggle-moon{opacity:1;transform:rotate(0)scale(1)}.theme-toggle-sun{opacity:0;transform:rotate(-72deg)scale(.34)}.theme-toggle.is-light .theme-toggle-moon{opacity:0;transform:rotate(72deg)scale(.34)}.theme-toggle.is-light .theme-toggle-sun{opacity:1;transform:rotate(0)scale(1)}.panel-close{gap:10px;padding:0 16px 0 18px}.panel-close span{letter-spacing:.2em}.panel-close i{color:var(--accent);font-size:.95rem}.depth-gauge{top:env(safe-area-inset-top,0px);right:calc(max(var(--chrome-x), env(safe-area-inset-right,0px)) + 40px + 16px);z-index:31;height:var(--mast-h);pointer-events:none;align-items:center;gap:10px;display:flex;position:fixed}.depth-gauge-label{color:var(--ink-2)}.depth-gauge strong{color:var(--ink);white-space:nowrap}.depth-gauge small{font:inherit;color:var(--ink-2)}.depth-gauge-line{--rail-h:min(44svh, 400px);top:50%;right:calc(var(--frame) + 4px);width:1px;height:var(--rail-h);margin-top:calc(var(--rail-h) / -2);background:var(--hair);opacity:var(--submerged);position:fixed;overflow:visible}#depthFill{background:linear-gradient(var(--accent), color-mix(in oklab, var(--accent) 35%, transparent));transform:scaleY(var(--depth-progress));transform-origin:top;position:absolute;inset:0}.depth-gauge-line:after{content:"";top:calc(var(--depth-progress) * 100%);background:var(--accent);width:7px;height:7px;box-shadow:0 0 12px var(--accent);border-radius:50%;margin-top:-3.5px;position:absolute;left:-3px}.depth-stops{position:absolute;inset:0}.depth-stop{top:calc(var(--at) * 100%);background:var(--hair-2);width:7px;height:1px;transition:width .4s var(--ease-out), background .4s ease;position:absolute;right:0}.experience[data-zone=about] .depth-stop[data-stop=about],.experience[data-zone=campaigns] .depth-stop[data-stop=campaigns],.experience[data-zone=data] .depth-stop[data-stop=data],.experience[data-zone=music] .depth-stop[data-stop=music],.experience[data-zone=contact] .depth-stop[data-stop=contact]{background:var(--accent);width:13px}html:not([data-boot]) .depth-gauge,html:not([data-boot]) .theme-toggle,html[data-renderer=none] .depth-gauge,html[data-renderer=none] .theme-toggle{display:none}html:not([data-boot]) .masthead:before{opacity:1}@media (width<=1050px){.discipline,.panel-masthead>p{display:none}.masthead,.panel-masthead{grid-template-columns:1fr 1fr}}@media (width<=760px){.theme-toggle,.panel-close{height:44px}.theme-toggle{width:44px}.panel-close{width:44px;padding:0}.panel-close span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.depth-gauge{right:calc(var(--chrome-x) + 44px + 12px)}.experience:after{background:linear-gradient(var(--c), var(--c)) bottom left / var(--m) 1px no-repeat, linear-gradient(var(--c), var(--c)) bottom left / 1px var(--m) no-repeat, linear-gradient(var(--c), var(--c)) bottom right / var(--m) 1px no-repeat, linear-gradient(var(--c), var(--c)) bottom right / 1px var(--m) no-repeat}.depth-gauge-line{top:calc(env(safe-area-inset-top,0px) + var(--mast-h));width:auto;height:1px;margin:0;left:0;right:0}#depthFill{transform:scaleX(var(--depth-progress));transform-origin:0}.depth-gauge-line:after{display:none}.depth-stop{top:-1px;right:auto;left:min(calc(var(--at) * 100%), calc(100% - 1px));width:1px;height:3px}.experience[data-zone] .depth-stop[data-stop]{width:1px}}@media (prefers-reduced-motion:reduce){.experience[data-zone=surface] .wordmark-dot{animation:none}}.portfolio-story{position:relative}.story-section{pointer-events:none;scroll-snap-align:start;scroll-snap-stop:normal;min-height:112svh;position:relative}@media (width>=761px){.story-section{scroll-snap-stop:always}}.inline-zone-section{isolation:isolate;pointer-events:auto;min-height:100svh;overflow-x:clip}.portfolio-story:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(120% 85% at 50% 45%, transparent 42%, color-mix(in oklab, #01080e80 var(--night-amt), #01162200) 100%), linear-gradient(180deg, color-mix(in oklab, #010c1438 var(--night-amt), transparent), transparent 28% 72%, color-mix(in oklab, #010c1442 var(--night-amt), transparent));opacity:var(--submerged);position:fixed;inset:0}.inline-zone-host{z-index:1;pointer-events:auto;min-height:100svh;position:relative}.inline-zone-host .collection-screen{min-height:100svh}html:not([data-boot]){scroll-snap-type:none}html:not([data-boot]) :is(.inline-zone-section,.inline-zone-host,.inline-zone-host .collection-screen){min-height:0}.surface-section{min-height:112svh}.surface-hero{--hero-night:1;--hero-presence:1;--hero-dive:0;--portrait-presence:1;--hero-ink-rgb:240 245 243;--hero-sea-night:1;--hero-sea-ink-rgb:240 245 243;--horizon-y:48.5svh;--hero-fs:var(--fs-title);--hero-rise:calc(var(--hero-fs) * .79);isolation:isolate;pointer-events:none;width:100%;height:100svh;position:sticky;top:0;overflow:hidden}.surface-hero:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(70% 42% at 50% calc(var(--horizon-y) - 4svh), rgb(1 10 18/calc(.32 * var(--hero-night))), transparent 75%);opacity:var(--hero-presence);position:fixed;inset:0}.surface-hero-copy{z-index:3;color:rgb(var(--hero-ink-rgb));opacity:var(--hero-presence);transform:translate3d(0, calc(-3svh * var(--hero-dive)), 0);position:fixed;inset:0}.surface-hero-copy h1{filter:blur(calc((1 - var(--hero-presence)) * 8px))}.surface-hero-tagline{filter:blur(calc((1 - var(--hero-presence)) * 3px))}.surface-hero-copy h1,.surface-hero-reflection{--baseline-drop:.115em;bottom:calc(100% - var(--horizon-y) - var(--baseline-drop));padding-left:var(--tr-title);color:rgb(var(--hero-ink-rgb));font-size:var(--hero-fs);text-align:center;white-space:nowrap;margin:0;position:absolute;inset-inline:0}.surface-hero-copy h1{text-shadow:0 0 48px rgb(1 10 18/calc(.55 * var(--hero-night)))}.surface-hero-reflection{transform-origin:50% calc(100% - var(--baseline-drop));opacity:calc((.14 + .04 * var(--hero-night)) * var(--hero-presence));filter:url(#heroRipple);will-change:opacity;pointer-events:none;-webkit-user-select:none;user-select:none;display:block;transform:scaleY(-.6);-webkit-mask-image:linear-gradient(#0000 4%,#000 54% 74%,#0000 100%);mask-image:linear-gradient(#0000 4%,#000 54% 74%,#0000 100%)}html:not([data-boot]) .surface-hero:before,html:not([data-boot]) .surface-hero-copy,html:not([data-boot]) .surface-hero-cue,html[data-renderer=none] .surface-hero:before,html[data-renderer=none] .surface-hero-copy,html[data-renderer=none] .surface-hero-cue{position:absolute}html[data-renderer=none] .surface-hero-reflection,html[data-title-reflection=webgl] .surface-hero-reflection{display:none}.surface-hero-credential{bottom:calc(100% - var(--horizon-y) + var(--hero-rise) + clamp(26px, 4svh, 44px));width:min(88vw,84em);max-width:none;color:rgb(var(--hero-ink-rgb) / calc(.84 + .16 * (1 - var(--hero-night))));letter-spacing:.24em;text-align:center;text-shadow:0 0 18px rgb(1 10 18/calc(.7 * var(--hero-night))), 0 0 14px rgb(236 248 250/calc(.45 * (1 - var(--hero-night))));opacity:var(--hero-presence);margin:0 auto;position:absolute;inset-inline:0}.surface-hero-tagline{top:calc(var(--horizon-y) + clamp(72px, 13svh, 136px));width:min(92vw,30ch);max-width:none;color:rgb(var(--hero-sea-ink-rgb) / .94);text-align:center;text-shadow:0 1px 24px rgb(1 10 18/calc(.5 * var(--hero-sea-night)));margin:0 auto;position:absolute;inset-inline:0}.surface-hero-cue{bottom:calc(var(--frame) + 10px);background:linear-gradient(rgb(var(--hero-sea-ink-rgb) / 0), rgb(var(--hero-sea-ink-rgb) / .5));width:1px;height:64px;opacity:calc(var(--hero-presence) * (1 - var(--hero-dive) * 8));transform-origin:top;margin-left:-.5px;position:fixed;left:50%}.surface-hero-cue:after{content:"";background:rgb(var(--hero-sea-ink-rgb));width:5px;height:5px;box-shadow:0 0 10px rgb(var(--hero-sea-ink-rgb) / .6);animation:cue-drop 2.6s var(--ease-out) infinite;border-radius:50%;position:absolute;bottom:0;left:-2px}@keyframes cue-drop{0%{opacity:0;transform:translateY(-64px)}30%{opacity:1}to{opacity:0;transform:translateY(0)}}html[data-boot=pending] .surface-hero-copy h1,html[data-boot=pending] .surface-hero-reflection{letter-spacing:.6em;padding-left:.6em}html[data-boot=pending] .surface-hero-copy h1{opacity:0;filter:blur(12px)}html[data-boot=pending] .surface-hero-reflection,html[data-boot=pending] .surface-hero-tagline,html[data-boot=pending] .surface-hero-cue{opacity:0}html[data-boot=pending] .surface-hero-credential{opacity:0;transform:translateY(-6px)}html[data-boot=pending] .surface-hero-cue{transform:scaleY(0)}html[data-hero-intro=playing] .surface-hero-copy h1{transition:letter-spacing var(--t-cine) var(--ease-out) .2s, padding-left var(--t-cine) var(--ease-out) .2s, filter var(--t-title) var(--ease-out) .2s, opacity var(--t-title) var(--ease-out) .2s}html[data-hero-intro=playing] .surface-hero-reflection{transition:letter-spacing var(--t-cine) var(--ease-out) .2s, padding-left var(--t-cine) var(--ease-out) .2s, opacity var(--t-title) var(--ease-out) .9s}html[data-hero-intro=playing] .surface-hero-credential{transition:opacity .7s var(--ease-out) 1.1s, transform .7s var(--ease-out) 1.1s}html[data-hero-intro=playing] .surface-hero-tagline{transition:opacity .9s var(--ease-out) 1.3s}html[data-hero-intro=playing] .surface-hero-cue{transition:opacity .6s var(--ease-out) 1.8s, transform .6s var(--ease-out) 1.8s}.surface-portrait{z-index:2;width:clamp(650px,57vw,880px);height:100svh;filter:drop-shadow(0 22px 36px rgb(0 8 16/calc(.22 + .22 * var(--hero-night))));-webkit-mask-image:linear-gradient(to top, transparent 0%, transparent calc(var(--hero-dive) * 130% - 42%), #00000059 calc(var(--hero-dive) * 130% - 30%), black calc(var(--hero-dive) * 130% - 18%), black 100%);-webkit-mask-image:linear-gradient(to top, transparent 0%, transparent calc(var(--hero-dive) * 130% - 42%), #00000059 calc(var(--hero-dive) * 130% - 30%), black calc(var(--hero-dive) * 130% - 18%), black 100%);mask-image:linear-gradient(to top, transparent 0%, transparent calc(var(--hero-dive) * 130% - 42%), #00000059 calc(var(--hero-dive) * 130% - 30%), black calc(var(--hero-dive) * 130% - 18%), black 100%);transform:translate3d(calc(-1.2vw * var(--hero-dive)), calc(4svh * var(--hero-dive)), 0) rotate(calc(-1.8deg * var(--hero-dive)));transform-origin:bottom;opacity:var(--portrait-presence);will-change:opacity, transform, mask-image;margin:0;transition:opacity .18s;position:absolute;bottom:0;right:clamp(40px,5vw,82px)}.surface-portrait[hidden]{display:none}html[data-boot=pending] .surface-portrait{opacity:0}html[data-boot=revealing] .surface-portrait{opacity:var(--portrait-presence);transition:opacity .68s cubic-bezier(.22,1,.36,1) .42s,transform .18s,-webkit-mask-image .18s,mask-image .18s}html[data-boot=done] .surface-portrait{transition:opacity .18s}.surface-portrait-image{transform-origin:50%;object-fit:contain;object-position:center bottom;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%;position:absolute;inset:0;transform:translateY(1.5svh)scale(1.04)}html[data-portrait-renderer=realtime] .surface-portrait{opacity:0}@media (width<=1050px){.surface-portrait{width:67vw;right:-7vw}}@media (width<=760px){.surface-hero{--hero-fs:clamp(2.75rem, 14.6vw, 4.5rem);--hero-rise:calc(var(--hero-fs) * 1.77)}.surface-hero-copy h1,.surface-hero-reflection{--baseline-drop:.105em;width:min(7em, 100% - 2 * var(--gutter));letter-spacing:.16em;white-space:normal;margin-inline:auto;padding-left:.16em;line-height:.98}.surface-hero-reflection{-webkit-mask-image:linear-gradient(#0000 50%,#000 68% 88%,#0000 100%);mask-image:linear-gradient(#0000 50%,#000 68% 88%,#0000 100%)}.surface-hero-credential{width:min(100% - 2 * var(--gutter), 34em);font-family:var(--font-mono);font-size:var(--fs-micro);letter-spacing:.18em;font-weight:450;font-stretch:100%}.surface-hero-tagline{top:calc(var(--horizon-y) + 15svh);font-size:1.625rem}.surface-portrait{width:126vw;height:88svh;right:-40vw}.surface-portrait-image{transform:translateY(1.5svh)scale(1.16)}}@media (width<=480px){.surface-portrait{width:142vw;height:86svh;bottom:-2svh;right:-50vw}.surface-portrait-image{transform:translateY(4svh)scale(1.12)}}@media (height<=500px){.surface-hero-cue{display:none}}@media (prefers-reduced-motion:reduce){.surface-hero-copy{transform:none}.surface-hero-copy h1,.surface-hero-tagline{filter:none}.surface-hero-cue:after{opacity:0;animation:none}}.portfolio-panel{--depth-ink:1;background:color-mix(in oklab, #020a12b8 var(--theme-night), #032636a8);opacity:0;width:100vw;max-width:none;height:100dvh;max-height:none;transition:opacity var(--t-panel) ease;-webkit-backdrop-filter:blur(20px)saturate(1.25)brightness(.92);backdrop-filter:blur(20px)saturate(1.25)brightness(.92);border:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}html[data-quality=low] .portfolio-panel{-webkit-backdrop-filter:none;backdrop-filter:none;background:color-mix(in oklab, #020a12eb var(--theme-night), #032636e6)}.portfolio-panel::backdrop{background:0 0}.portfolio-panel.is-visible{opacity:1}.portfolio-panel.case-transitioning .portfolio-panel-content{pointer-events:none}.campaign-case-transition-ghost{z-index:120;border:1px solid var(--glass-rim);border-radius:var(--r-card);background:var(--glass-strong);pointer-events:auto;will-change:top, left, width, height, opacity;position:fixed;overflow:hidden;box-shadow:0 34px 92px #00080e57}.campaign-case-transition-ghost img{object-fit:cover;width:100%;height:100%}.panel-masthead{z-index:3;position:absolute}.portfolio-panel.experience-expanded .panel-masthead:before{inset:0}.portfolio-panel-content{--band-clear:calc(var(--mast-h) + env(safe-area-inset-top,0px));z-index:2;overscroll-behavior:contain;width:100%;height:100%;scroll-padding-top:calc(var(--band-clear) + 12px);scrollbar-width:thin;scrollbar-color:var(--hair-2) transparent;-webkit-mask-image:linear-gradient(transparent calc(var(--band-clear) - 12px), #00000080 calc(var(--band-clear) + 8px), #000 calc(var(--band-clear) + 28px));-webkit-mask-image:linear-gradient(transparent calc(var(--band-clear) - 12px), #00000080 calc(var(--band-clear) + 8px), #000 calc(var(--band-clear) + 28px));mask-image:linear-gradient(transparent calc(var(--band-clear) - 12px), #00000080 calc(var(--band-clear) + 8px), #000 calc(var(--band-clear) + 28px));position:relative;overflow:hidden auto}.portfolio-panel.experience-expanded .portfolio-panel-content{-webkit-mask-image:none;mask-image:none}.portfolio-panel-content:focus{outline:none}.project-detail.case-transition-entering,.project-detail.case-transition-ready{pointer-events:none}.project-detail.case-transition-entering>*{opacity:0;transform:translateY(10px)}.project-detail.case-transition-entering>.project-media{transform:none}.project-detail.case-transition-ready>*{opacity:1;transition:opacity .36s .28s,transform .52s cubic-bezier(.22,1,.36,1) .22s;transform:translateY(0)}.project-detail.case-transition-ready>.project-media{transition:opacity .36s .28s;transform:none}.campaigns-screen{padding:var(--zone-top) 0 clamp(20px, 3svh, 32px);grid-template-rows:auto minmax(0,1fr);gap:clamp(16px,3svh,28px);display:grid;position:relative;overflow-x:clip}@media (width>=761px) and (height>=720px){.campaigns-screen{height:100svh;overflow:hidden}}.campaigns-header{align-items:end;gap:var(--s-5) var(--s-6);padding-inline:var(--gutter);grid-template-columns:minmax(0,1fr) auto;display:grid}.campaigns-heading{min-width:0}.campaigns-heading .zone-title{white-space:nowrap}.campaigns-tools{align-items:center;gap:var(--s-5);margin-bottom:2px;display:flex}.campaign-progress{align-items:center;gap:4px;display:flex}.campaign-progress-button{border-radius:var(--r-pill);min-width:0;min-height:44px;color:var(--ink-2);cursor:pointer;transition:color var(--t-ui) ease, border-color var(--t-ui) ease, background-color var(--t-ui) ease;align-items:center;padding:0 16px 0 14px;display:inline-flex;position:relative}.campaign-progress-button:not([aria-current=step]){background:0 0;border:1px solid #0000}.campaign-progress-button:not([aria-current=step]):is(:hover,:focus-visible){border-color:var(--hair);color:var(--ink)}.campaign-progress-mark{background:var(--hair-2);width:2px;height:8px;transition:height .42s var(--ease-film), background-color var(--t-ui) ease, box-shadow var(--t-ui) ease;border-radius:1px;flex:none}.campaign-progress-button:is(:hover,:focus-visible) .campaign-progress-mark{background:var(--accent)}.campaign-progress-copy{transition:grid-template-columns .52s var(--ease-film);grid-template-columns:auto minmax(0,0fr);align-items:baseline;margin-left:10px;line-height:1;display:grid}.campaign-progress-number{line-height:inherit;white-space:nowrap}.campaign-progress-title{white-space:nowrap;opacity:0;min-width:0;transition:opacity var(--t-ui) ease;line-height:1.2;overflow:hidden}.campaign-progress-button:not([aria-current=step]):is(:hover,:focus-visible) .campaign-progress-copy{grid-template-columns:auto minmax(0,1fr)}.campaign-progress-button:not([aria-current=step]):is(:hover,:focus-visible) .campaign-progress-title{opacity:1;padding-left:10px}.campaign-progress-button[aria-current=step]{color:var(--ink)}.campaign-progress-button[aria-current=step] .campaign-progress-mark{background:var(--accent);height:14px;box-shadow:0 0 10px color-mix(in oklab, var(--accent) 55%, transparent)}.campaign-progress-button[aria-current=step] .campaign-progress-number{color:var(--accent)}.campaign-progress-fill{background:var(--accent);opacity:0;pointer-events:none;transform-origin:0;height:1px;position:absolute;inset:auto 12px 6px;transform:scaleX(0)}.campaign-progress-button[aria-current=step] .campaign-progress-fill{opacity:.8}@keyframes campaign-progress-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.campaign-carousel-controls{gap:8px;display:flex}.campaign-carousel-control{width:44px;height:44px;color:var(--ink);cursor:pointer;border-radius:50%;place-items:center;padding:0;font-size:1.05rem;display:grid}.campaign-carousel-control i{color:var(--accent)}.campaign-carousel-control:disabled{opacity:.38;cursor:default}.campaign-rotation{margin-right:4px}.campaign-rotation[hidden]{display:none}.campaign-carousel{min-width:0;min-height:0;display:grid;position:relative}.campaign-carousel-viewport{--peek-solid:calc(var(--gutter) + 72px);--peek-gone:calc(var(--frame) + 40px);--cap-h:76px;--frame-span:64cqi;--frame-h:min(calc(100cqh - var(--cap-h) - 14px), calc(var(--frame-span) * 9 / 16));--frame-w:calc(var(--frame-h) * 16 / 9);--frame-mid:min(calc((100cqh - var(--cap-h) - 14px) / 2), calc(var(--frame-h) / 2 + 40px));touch-action:pan-y;overscroll-behavior-x:contain;height:100%;min-height:0;-webkit-mask-image:linear-gradient(90deg, transparent var(--peek-gone), #000 var(--peek-solid), #000 calc(100% - var(--peek-solid)), transparent calc(100% - var(--peek-gone)));-webkit-mask-image:linear-gradient(90deg, transparent var(--peek-gone), #000 var(--peek-solid), #000 calc(100% - var(--peek-solid)), transparent calc(100% - var(--peek-gone)));mask-image:linear-gradient(90deg, transparent var(--peek-gone), #000 var(--peek-solid), #000 calc(100% - var(--peek-solid)), transparent calc(100% - var(--peek-gone)));outline:none;position:relative;container:campaign-carousel/size}.campaign-carousel-viewport:focus-visible .campaign-slide[data-position=active] .campaign-slide-media{outline:2px solid var(--accent-strong);outline-offset:4px}.campaign-slide{--campaign-slide-duration:.82s;top:var(--frame-mid);z-index:1;width:calc(var(--frame-w) * .5);opacity:0;pointer-events:none;touch-action:pan-y;position:absolute;left:50%;transform:translate(-50%,-50%)scale(.78);container:campaign-slide/inline-size}.campaigns-screen.is-ready .campaign-slide{transition:transform var(--campaign-slide-duration) var(--ease-film), width var(--campaign-slide-duration) var(--ease-film), opacity .7s ease}.campaign-slide[data-position=active]{z-index:4;width:var(--frame-w);opacity:1;pointer-events:auto;transform:translate(-50%,-50%)}.campaign-slide[data-position=left],.campaign-slide[data-position=right]{z-index:2;opacity:.42;pointer-events:auto}.campaign-slide[data-position=left]{transform:translate3d(calc(-50% - var(--frame-w) * .715 - 28px), -50%, 0) scale(.86)}.campaign-slide[data-position=right]{transform:translate3d(calc(-50% + var(--frame-w) * .715 + 28px), -50%, 0) scale(.86)}.campaign-slide:is([data-position=left],[data-position=right]):hover{opacity:.7}.campaign-slide-ghost{pointer-events:none}.campaign-slide[data-position=far-left]{transform:translate3d(calc(-50% - var(--frame-w) * 1.15 - 56px), -50%, 0) scale(.78)}.campaign-slide[data-position=far-right]{transform:translate3d(calc(-50% + var(--frame-w) * 1.15 + 56px), -50%, 0) scale(.78)}.campaign-slide-media{border-radius:var(--r-card);width:100%;box-shadow:0 0 0 1px var(--glass-rim), 0 40px 90px -40px #00060cbf;cursor:pointer;touch-action:pan-y;background:0 0;border:0;padding:0;display:block;position:relative;overflow:hidden}.campaign-slide .media-frame{aspect-ratio:16/9}.campaign-slide:not([data-position=active]) .media-frame img{filter:brightness(.8)saturate(.7)}.campaign-slide .media-frame img{transition:transform .7s var(--ease-out), filter .32s ease}.campaign-slide[data-position=active] .campaign-slide-media:is(:hover,:focus-visible) img{transform:scale(1.025)}.campaign-slide-hint{z-index:2;border-radius:var(--r-pill);--glass:var(--glass-strong);min-height:36px;color:var(--ink);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--t-ui) ease, transform var(--t-ui) var(--ease-out);align-items:center;gap:10px;padding:0 16px 0 18px;display:inline-flex;position:absolute;bottom:18px;left:50%;transform:translate(-50%,4px)}.campaign-slide-hint i{color:var(--accent);font-size:.875rem}.campaign-slide:not([data-position=active]) .campaign-slide-hint{display:none}.campaign-slide-media:is(:hover,:focus-visible) .campaign-slide-hint{opacity:1;transform:translate(-50%)}@media (hover:none){.campaign-slide-hint{opacity:1;transform:translate(-50%)}}.campaign-slide-caption{min-height:var(--cap-h);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;column-gap:clamp(16px,1.8vw,28px);margin-top:14px;display:grid;position:absolute;top:100%;left:0;right:0}.campaign-slide:not([data-position=active]) .campaign-slide-caption{visibility:hidden;opacity:0}.campaigns-screen.is-ready .campaign-slide[data-position=active] .campaign-slide-caption{transition:opacity .42s .26s}.campaign-slide-number{display:none}.campaign-slide-year{border-right:1px solid var(--hair-2);color:var(--ink-2);align-self:stretch;align-items:center;padding-right:clamp(16px,1.8vw,28px);display:flex}.campaign-slide-heading{gap:4px;min-width:0;display:grid}.campaign-slide-brand{color:var(--accent);margin:0}.campaign-slide-title{color:var(--ink)}.campaign-slide-types{color:var(--ink-2);text-align:right;white-space:nowrap;margin:0}@media (width>=761px){@container campaign-slide (width<=600px){.campaign-slide-caption{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"year heading heading""year types action";row-gap:10px}.campaign-slide-year{grid-area:year}.campaign-slide-heading,.campaign-slide-caption>.campaign-slide-title{grid-area:heading}.campaign-slide-types{text-align:left;grid-area:types}.campaign-slide-action{grid-area:action}}}.campaign-slide-action{border-radius:var(--r-pill);min-height:44px;color:var(--ink);white-space:nowrap;cursor:pointer;align-items:center;gap:10px;padding:0 18px 0 20px;display:inline-flex}.campaign-slide-action i{color:var(--accent)}@media (width>=761px) and (orientation:portrait){.campaign-carousel-viewport{--frame-span:84cqi;--peek-solid:calc(var(--gutter) + 24px);--peek-gone:calc(var(--frame) + 12px)}}@media (width>=761px) and (height<=719px){.campaign-carousel-viewport{height:clamp(380px,64svh,560px)}}@media (width<=760px){.campaigns-screen{min-height:100svh;padding:var(--zone-top) var(--gutter) var(--zone-bottom);flex-direction:column;justify-content:center;gap:20px;display:flex}.campaigns-header{grid-template-columns:minmax(0,1fr);gap:16px;padding-inline:0}.campaigns-heading .zone-title{white-space:normal;font-size:clamp(2.75rem,13vw,3.5rem)}.campaigns-tools{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-bottom:0}.campaign-progress{gap:2px}.campaign-progress-button{padding-inline:8px 10px}.campaign-carousel-controls{gap:6px}.campaign-rotation{margin-right:0}.campaign-progress-button:not([aria-current=step]):is(:hover,:focus-visible) .campaign-progress-copy{grid-template-columns:auto minmax(0,0fr)}.campaign-progress-button:not([aria-current=step]):is(:hover,:focus-visible) .campaign-progress-title{opacity:0;padding-left:0}.campaign-carousel-viewport{height:auto;-webkit-mask-image:none;mask-image:none;container-type:normal}.campaign-slide{display:none}.campaign-slide[data-position=active]{width:100%;display:block;position:relative;top:auto;left:auto;transform:none}.campaign-slide .media-frame{aspect-ratio:4/3}.campaign-slide-hint{bottom:14px}.campaign-slide-caption{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"year brand""title title""types types""action action";align-items:center;gap:10px 16px;min-height:0;position:static}.campaign-slide-heading{display:contents}.campaign-slide-year{grid-area:year;padding-right:16px}.campaign-slide-brand{grid-area:brand}.campaign-slide-title{grid-area:title;font-size:clamp(1.5rem,7vw,1.875rem)}.campaign-slide-types{text-align:left;white-space:normal;grid-area:types}.campaign-slide-action{grid-area:action;justify-self:start;margin-top:4px}}.music-screen{padding:var(--zone-top) 0 var(--zone-bottom) var(--gutter);display:block}.music-heading{justify-content:space-between;align-items:flex-start;gap:var(--s-7);padding-right:var(--gutter);margin-bottom:clamp(20px,3.4svh,36px);display:flex}.music-heading-copy{min-width:0}.music-heading .collection-intro{max-width:46ch;margin-top:clamp(14px,2.2svh,22px)}.music-heading-side{justify-items:end;gap:var(--s-4);flex-shrink:0;display:grid}.music-total-views{text-align:right;justify-items:end;gap:8px;display:grid}.music-total-views-label,.music-total-views-meta{margin:0}.music-total-views-label{color:var(--accent)}.music-total-views-meta{color:var(--ink-2)}.music-total-views-value{color:var(--ink);margin:0}@property --reel-fade{syntax:"<length>";inherits:false;initial-value:120px}@property --reel-cut{syntax:"<length>";inherits:false;initial-value:0}@property --reel-clear{syntax:"<length>";inherits:false;initial-value:0}.music-video-grid{--poster-h:clamp(220px, 32svh, 320px);--reel-clear:calc(var(--frame) + 40px);--reel-cut:var(--reel-clear);padding:4px var(--gutter) 8px 2px;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;-webkit-mask-image:linear-gradient(90deg, #000 calc(100% - var(--reel-fade)), transparent calc(100% - var(--reel-cut)));-webkit-mask-image:linear-gradient(90deg, #000 calc(100% - var(--reel-fade)), transparent calc(100% - var(--reel-cut)));mask-image:linear-gradient(90deg, #000 calc(100% - var(--reel-fade)), transparent calc(100% - var(--reel-cut)));transition:--reel-fade var(--t-micro) ease, --reel-cut var(--t-micro) ease;gap:clamp(18px,2vw,28px);margin-left:-2px;scroll-padding-inline-start:2px;display:flex;overflow-x:auto}.music-video-grid::-webkit-scrollbar{display:none}.music-video{width:calc(var(--poster-h) * .8);min-width:0;color:var(--ink);scroll-snap-align:start;flex:none;grid-template-rows:auto 1fr;gap:14px;display:grid}.music-video-embed{aspect-ratio:4/5;border-radius:var(--r-card);background:var(--glass-strong);width:100%;box-shadow:0 0 0 1px var(--glass-rim), 0 30px 70px -36px #00060cb3;position:relative;overflow:hidden}.music-video-poster{border-radius:inherit;width:100%;height:100%;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;display:block;position:absolute;inset:0}.music-video-poster img{object-fit:cover;object-position:center;filter:saturate(.85)brightness(.92);width:100%;height:100%;transition:transform .65s var(--ease-out), filter var(--t-ui) ease;display:block}.music-video-poster.is-missing{background:radial-gradient(120% 80% at 50% 110%, color-mix(in oklab, var(--accent) 34%, transparent), transparent 70%), var(--glass-strong)}.music-video-poster.is-missing img{display:none}.music-video-veil{pointer-events:none;background:linear-gradient(#0000 46%,#020a106b);position:absolute;inset:0}.music-video-play{z-index:2;color:#f1f7f5;width:56px;height:56px;transition:width var(--t-ui) var(--ease-out), height var(--t-ui) var(--ease-out), background-color var(--t-ui) ease, border-color var(--t-ui) ease;background:#04101859;border:1px solid #fff9;border-radius:50%;place-items:center;font-size:1.125rem;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.music-video-play i{margin-left:2px}.music-video-poster:is(:hover,:focus-visible) img{filter:none;transform:scale(1.03)}.music-video-poster:is(:hover,:focus-visible) .music-video-play{background:#04101880;border-color:#fff;width:60px;height:60px}.music-video-embed iframe{border:0;width:100%;height:100%;display:block;position:absolute;inset:0}.music-video.is-playing .music-video-poster{display:none}.music-video-meta{transition:opacity var(--t-ui) ease;align-content:start;gap:8px;padding:0 2px;display:grid}.music-video.is-clipped .music-video-meta{opacity:0}.music-video-title{color:var(--ink)}.music-video-stats{flex-wrap:wrap;align-items:center;gap:4px 12px;margin:0;display:flex}.music-video-stats span{letter-spacing:.06em;align-items:center;gap:6px;display:inline-flex}.music-video-stats i{color:var(--accent);font-size:.875rem}.music-video-views{color:var(--ink)}.music-video-likes{color:var(--ink-2)}.music-video-caption{color:var(--ink-2);margin:0}.music-reel-tools{align-items:center;gap:var(--s-4);display:flex}.music-scroll-hint{color:var(--ink-2);align-items:center;gap:10px;margin:0;display:inline-flex}.music-scroll-hint i{color:var(--accent);font-size:.875rem}.music-reel-controls{gap:8px;display:none}@media (hover:hover) and (pointer:fine){.music-reel-controls{display:flex}}.music-reel-step{width:44px;height:44px;color:var(--ink);cursor:pointer;border-radius:50%;place-items:center;padding:0;font-size:1.05rem;display:grid}.music-reel-step i{color:var(--accent)}.music-reel-step:disabled{opacity:.38;cursor:default}@property --fold-clear{syntax:"<length>";inherits:false;initial-value:0}.collection-footnote{--fold-clear:calc(var(--frame) + 16px);max-width:72ch;margin:calc(clamp(20px, 3svh, 32px) + var(--note-drop,0px)) 0 0;padding-right:var(--gutter);color:var(--ink-2);align-items:baseline;gap:10px;display:flex}.collection-footnote i{color:var(--accent);flex:none;translate:0 2px}@media (width<=760px){.music-heading{align-items:flex-start;gap:var(--s-5);flex-direction:column}.music-heading-side,.music-total-views{text-align:left;justify-items:start}.music-total-views-value{font-size:clamp(2.5rem,12vw,3.25rem)}.music-video-grid{--reel-clear:var(--frame);gap:16px}.music-video{width:min(64vw,260px)}.music-video-embed{aspect-ratio:9/16}}.about-screen{column-gap:var(--gap);grid-template-rows:auto auto auto auto 1fr;grid-template-columns:repeat(12,minmax(0,1fr));align-content:start;align-items:start;display:grid}.about-heading{display:contents}.about-screen .zone-slate{grid-area:1/1/2/-1}.about-heading .zone-title{z-index:2;grid-area:2/1/3/-1;position:relative}@media (width>=761px){html.fonts-ready .about-heading .zone-title{white-space:nowrap}}.about-intro{max-width:62ch;color:var(--ink-2);grid-area:3/1/6/8;margin:clamp(28px,4.5svh,52px) 0 0}.about-intro p{margin:0}.about-intro p+p{margin-top:1em}.about-intro p:first-child{color:var(--ink)}.about-facts{grid-area:3/9/4/-1;margin:clamp(32px,5svh,58px) 0 0}.about-fact{border-bottom:1px solid var(--hair);grid-template-columns:6.5rem minmax(0,1fr);align-items:baseline;gap:16px;padding:13px 0;display:grid}.about-fact:first-child{border-top:1px solid var(--hair-2)}.about-fact dt{color:var(--ink-3)}.about-fact dd{color:var(--ink);margin:0}.about-links{margin-top:var(--s-6);flex-wrap:wrap;grid-area:4/9/5/-1;gap:12px;display:flex}.about-note{max-width:34ch;margin:var(--s-5) 0 0;color:var(--ink-2);grid-area:5/9/6/-1}@media (width<=1050px){.about-facts,.about-links,.about-note{grid-column-start:8}}@media (width<=900px){.about-facts.frost,.about-note.frost{--frost:var(--frost-strong)}}@media (width>=761px) and (width<=900px){.about-intro{grid-area:3/1/4/-1}.about-facts{grid-area:4/1/6/7}.about-links{grid-area:4/8/5/-1;margin-top:clamp(32px,5svh,58px)}.about-note{grid-area:5/8/6/-1}}@media (width<=760px){.about-screen,.about-heading{display:block}.about-heading .zone-title{font-size:clamp(2.75rem,12.5vw,3.5rem);line-height:.92}.about-intro{margin-top:var(--s-6)}.about-facts{margin-top:var(--s-7)}.about-fact{grid-template-columns:7.5rem minmax(0,1fr)}.about-links{margin-top:var(--s-6)}.about-links .text-link{width:100%}.about-note{margin-top:var(--s-6)}}.data-screen{--chart-ink:#f1f7f5;--chart-soft:#deecebd6;--chart-faint:#d6e8e8b3;--chart-grid:#dcf4f01a;--chart-axis:#dcf4f04d;--chart-dummy:#9fb3b6;--chart-logistic:#6fb4ff;--chart-champion:#e9b96e;--chart-search:#6fe0e8;--chart-media:#ff8a72;grid-template-columns:minmax(270px,21vw) minmax(0,1fr);gap:clamp(28px,3.2vw,56px);display:grid;position:relative}html[data-theme=light] .data-screen{--chart-soft:#e8f2f1e0;--chart-faint:#e2eeeec2;--chart-logistic:#8cc4ff}@media (width>=761px) and (height>=720px){.data-screen{height:100svh;overflow:hidden}}.data-rail{flex-direction:column;min-width:0;display:flex}.data-heading .collection-intro{max-width:32ch;margin-top:clamp(18px,3svh,28px)}.data-heading-rule{background:var(--hair);height:1px;margin-top:clamp(22px,3.6svh,36px);display:block}.data-project-index{gap:6px;margin-top:clamp(14px,2.4svh,22px);display:grid}.data-project-index-button{border-radius:var(--r-card);width:100%;min-height:48px;color:var(--ink-2);text-align:left;cursor:pointer;transition:color var(--t-ui) ease, border-color var(--t-ui) ease, background-color var(--t-ui) ease, translate var(--t-ui) var(--ease-out);grid-template-columns:28px minmax(0,1fr);align-items:baseline;padding:12px 14px 12px 12px;display:grid}.data-project-index-button:not([aria-current=true]){background:0 0;border:1px solid #0000}.data-project-index-button:hover{color:var(--ink);translate:2px}.data-project-index-button[aria-current=true]{color:var(--ink)}.data-project-index-number{color:var(--accent)}.data-project-index-copy{gap:6px;min-width:0;display:grid}.data-project-index-title{text-wrap:balance}.data-project-index-meta{color:var(--ink-3);transition:color var(--t-ui) ease}.data-project-index-button:is(:hover,[aria-current=true]) .data-project-index-meta{color:var(--accent)}.data-stage{border-left:1px solid var(--hair);min-width:0;min-height:0;padding-left:clamp(28px,3vw,52px)}.data-stage-panel{grid-template-rows:auto minmax(0,1fr);gap:clamp(16px,2.6svh,26px);height:100%;min-height:0;display:grid}.data-stage-panel[hidden]{display:none}.data-stage-copy{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:end;gap:12px clamp(24px,3vw,48px);min-width:0;display:grid}.data-stage-heading,.data-stage-brief{min-width:0}.data-stage-label{color:var(--accent);align-items:center;gap:10px;margin:0;display:flex}.data-stage-label:before{content:"";background:var(--accent);width:6px;height:6px;box-shadow:0 0 8px var(--accent);border-radius:50%}.data-stage-title{color:var(--ink);margin-top:10px}.data-stage-meta{color:var(--ink-2);margin:10px 0 0}.data-stage-summary{max-width:46ch;color:var(--ink-2);margin:0}.data-stage-action{border-radius:var(--r-pill);min-height:44px;color:var(--ink);cursor:pointer;align-items:center;gap:10px;margin-top:14px;padding:0 18px 0 20px;display:inline-flex}.data-stage-action i{color:var(--accent)}.data-stage-visual{grid-template-rows:minmax(0,1.55fr) minmax(0,1fr);grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(14px,1.6vw,22px);min-height:0;display:grid}.data-curve-plots{grid-column:1/-1;grid-template-rows:auto minmax(0,1fr);grid-template-columns:repeat(2,minmax(0,1fr));gap:0 clamp(14px,1.6vw,22px);min-width:0;min-height:0;display:grid}.data-curve-plots .data-code-chart{grid-row:span 2;grid-template-rows:subgrid}.data-chart-capacity{grid-column:1/8}.data-code-chart{border-radius:var(--r-card);grid-template-rows:auto minmax(0,1fr);gap:8px;min-width:0;min-height:0;margin:0;padding:14px 16px 10px;display:grid;position:relative}.data-code-chart-caption{border-bottom:1px solid var(--hair);flex-direction:column;align-items:flex-start;gap:4px;padding-bottom:8px;display:flex}.data-code-chart-note{color:var(--ink-3)}.data-code-chart-canvas{border-radius:var(--r-chip);cursor:crosshair;touch-action:pan-y;width:100%;height:100%;min-height:0;display:block}.data-code-chart-canvas:focus-visible{outline-offset:2px}.data-chart-tooltip{z-index:2;border-radius:var(--r-chip);background:var(--glass-strong);width:max-content;max-width:172px;color:var(--ink);pointer-events:none;grid-area:2/1;gap:4px;padding:9px 11px;display:grid;position:absolute;top:22px;left:0}.data-chart-tooltip[hidden]{display:none}.data-chart-tooltip-kicker{border-bottom:1px solid var(--hair);color:var(--accent);letter-spacing:.1em;padding-bottom:5px}.data-chart-tooltip-row{letter-spacing:.04em;text-transform:none;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.data-chart-tooltip-row:before{content:"";background:var(--series-color);border-radius:50%;width:6px;height:6px}.data-chart-tooltip-row strong{font-weight:560}.data-stage-metrics{grid-column:8/-1;align-self:center;margin:0}.data-stage-metric{border-bottom:1px solid var(--hair);grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:16px;padding:clamp(6px,1.2svh,10px) 0;display:grid}.data-stage-metric:first-child{border-top:1px solid var(--hair-2)}.data-stage-metric dt{color:var(--ink-2)}.data-stage-metric dd{color:var(--ink);margin:0}@media (prefers-reduced-motion:no-preference){.data-screen[data-stage-switched] .data-stage-panel [data-reveal]{animation:data-stage-enter .42s var(--ease-out) backwards}.data-screen[data-stage-switched] .data-stage-panel .data-stage-heading{animation-name:data-stage-focus}}@keyframes data-stage-enter{0%{opacity:0;transform:translateY(6px)}}@keyframes data-stage-focus{0%{opacity:0;filter:blur(6px)}}@media (width<=1050px){.data-screen{grid-template-columns:240px minmax(0,1fr);padding-bottom:clamp(20px,3svh,32px)}.data-stage-visual{grid-template-rows:minmax(0,1.35fr) minmax(0,1fr)}}@media (width>=761px) and (width<=900px){.data-screen{height:auto;display:block;overflow:visible}.data-rail{align-items:end;column-gap:var(--s-6);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.data-heading-rule{display:none}.data-stage{margin-top:var(--s-6);padding:var(--s-6) 0 0;border-top:1px solid var(--hair);border-left:0}.data-stage-panel{height:auto}.data-stage-visual{grid-template-rows:300px 230px}}@media (width<=760px){.data-screen{display:block}.data-heading .zone-title{font-size:clamp(2.5rem,11vw,3.25rem)}.data-heading .collection-intro{max-width:38ch}.data-stage{margin-top:var(--s-7);padding:var(--s-7) 0 0;border-top:1px solid var(--hair);border-left:0}.data-stage-panel{height:auto}.data-stage-copy{grid-template-columns:minmax(0,1fr);gap:16px}.data-stage-visual{grid-template-rows:none;grid-template-columns:minmax(0,1fr);gap:16px;display:grid}.data-curve-plots{grid-template-rows:none;grid-template-columns:minmax(0,1fr);gap:16px}.data-curve-plots .data-code-chart{grid-row:auto;grid-template-rows:auto minmax(0,1fr);height:280px}.data-chart-capacity,.data-stage-metrics{grid-column:1}.data-chart-capacity{height:220px}.data-stage-metrics{margin-top:var(--s-3)}.data-stage-metric dd{font-size:clamp(1.75rem,8vw,2.25rem)}}.contact-section,.contact-screen{min-height:100svh}.contact-screen{padding:var(--zone-top) var(--gutter) calc(var(--frame) + 88px);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:relative}.contact-screen .zone-slate{margin-bottom:clamp(18px,3svh,30px)}.contact-heading{max-width:none}.contact-intro{max-width:30ch;color:var(--ink-2);margin:clamp(22px,3.6svh,36px) 0 0}.contact-links{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:clamp(28px,4.6svh,44px);display:flex}.contact-links .text-link{min-height:56px;padding:0 28px}.contact-footer{right:var(--gutter);bottom:calc(var(--frame) + 18px);left:var(--gutter);border-top:1px solid var(--hair);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding-top:18px;display:flex;position:absolute}.contact-ascend{min-height:44px;color:var(--ink-2);transition:color var(--t-ui) ease;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.contact-ascend i{color:var(--accent)}.contact-ascend:hover,.contact-ascend:focus-visible{color:var(--ink)}.contact-credit{color:var(--ink-2);margin:0}@media (width<=760px){.contact-screen{padding-bottom:var(--zone-bottom)}.contact-heading{font-size:clamp(3.5rem,18vw,5rem)}.contact-intro{font-size:1.5rem}.contact-footer{width:100%;margin-top:var(--s-8);flex-direction:column;gap:8px;position:static}}.project-detail{--plate-pad:14px;--plate-inset:calc(2 * (var(--plate-pad) + 1px));column-gap:var(--gap);row-gap:var(--s-8);min-height:100%;padding:var(--zone-top) var(--gutter) var(--s-9);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;display:grid}.project-overview{grid-column:1/5;min-width:0}.detail-back{min-height:44px;margin:0 0 var(--s-6);color:var(--ink-2);cursor:pointer;transition:color var(--t-ui) ease;background:0 0;border:0;align-items:center;gap:10px;padding:0 12px 0 0;display:inline-flex}.detail-back:hover{color:var(--ink)}.detail-back i{color:var(--accent)}.detail-index{margin:0 0 var(--s-4);color:var(--accent)}.detail-depth{color:var(--ink-2)}.project-overview h1{color:var(--ink)}.project-overview h1>span{display:block}.detail-project-tagline{margin:var(--s-5) 0 0;color:var(--ink);text-wrap:balance}.detail-summary{color:var(--ink-2);margin:20px 0 0}.project-overview h1+.detail-summary{margin-top:var(--s-5)}.detail-facts{margin:var(--s-6) 0 0}.detail-facts>div{gap:var(--s-4);border-bottom:1px solid var(--hair);grid-template-columns:7rem minmax(0,1fr);align-items:baseline;padding:12px 0;display:grid}.detail-facts>div:first-child{border-top:1px solid var(--hair-2)}.detail-facts dt{color:var(--ink-3)}.detail-facts dd{color:var(--ink);margin:0}.detail-links{margin-top:var(--s-6);flex-wrap:wrap;gap:12px;display:flex}.project-detail:not(.interactive-project-detail) .project-media{display:contents}.project-figure-column{align-content:start;gap:var(--s-6);min-width:0;margin-left:calc(var(--s-7) - var(--gap));grid-column:5/-1;display:grid}.project-figure,.project-media-item{min-width:0;margin:0}.project-media-item{--plate-at-scale:calc((100% - var(--plate-inset)) * min(1, var(--nw,1) / var(--lead-nw,1)) + var(--plate-inset))}.project-figure-column .project-media-item{width:var(--plate-at-scale);justify-self:start}.feature-label,.project-media-item figcaption{min-height:44px;margin:0 0 var(--s-2);color:var(--accent);align-items:center;gap:14px;display:flex}.feature-label:after,.project-media-item figcaption:after{content:"";background:linear-gradient(90deg, var(--hair-2), transparent);flex:auto;height:1px}.project-media .media-frame{padding:var(--plate-pad);border:1px solid var(--glass-rim);border-radius:var(--r-card);background:#f4f6f5;box-shadow:0 40px 90px -50px #00060ccc}.project-media .media-frame img{object-fit:contain;height:auto}.project-media-rail{align-items:flex-start;gap:var(--s-6) var(--gap);grid-column:1/-1;display:flex}.project-media-rail .project-media-item{flex:var(--ar,1.5) 1 var(--plate-inset)}.interactive-project-detail .project-media{--chin:64px;height:max(360px, min(calc(100svh - var(--zone-top) - 48px), 820px));min-height:0;margin-left:calc(var(--s-7) - var(--gap));grid-column:5/-1;grid-template-rows:minmax(0,1fr);display:grid}.interactive-browser{grid-template-rows:auto minmax(0, 1fr) var(--chin);border:1px solid var(--glass-rim);border-radius:var(--r-card);background:#050d13;min-height:0;display:grid;position:relative;overflow:hidden;box-shadow:0 50px 120px -50px #00060cd9}.interactive-browser-bar{min-height:36px;color:var(--li-ink-2);text-align:center;background:#08121aeb;border-bottom:1px solid #dcf4f014;grid-template-columns:56px minmax(0,1fr) 56px;align-items:center;padding:4px 14px;display:grid}.interactive-browser-lights{gap:6px;display:flex}.interactive-browser-lights i{border:1px solid #dcf4f057;border-radius:50%;width:7px;height:7px}.interactive-browser-chin{background:#08121aeb;border-top:1px solid #dcf4f014;grid-area:3/1}.interactive-browser iframe{pointer-events:none;background:#f2f5f0;border:0;grid-area:2/1;width:100%;height:100%;min-height:0;display:block}.interactive-activate{z-index:1;padding:0 16px calc((var(--chin) - 48px) / 2);color:var(--li-ink);cursor:pointer;transition:opacity var(--t-panel) ease, visibility var(--t-panel) ease;background:0 0;border:0;grid-area:2/1/4/2;place-items:end center;margin:0;display:grid;position:relative}.interactive-activate:before{content:"";inset:0 0 var(--chin);opacity:0;transition:opacity var(--t-ui) ease;background:#03101a38;position:absolute}.interactive-activate:is(:hover,:focus-visible):before{opacity:1}.interactive-activate-label{--glass:var(--glass-strong);border-radius:var(--r-pill);align-items:center;gap:12px;min-height:48px;padding:0 20px 0 24px;display:inline-flex;position:relative}.interactive-activate-label i{color:var(--accent);transition:scale var(--t-ui) var(--ease-out);font-size:1rem}.interactive-activate:is(:hover,:focus-visible) .interactive-activate-label{--glint:.12;border-color:var(--hair-2)}.interactive-activate:is(:hover,:focus-visible) .interactive-activate-label i{scale:1.15}.interactive-collapse{--glass:var(--glass-strong);border-radius:var(--r-pill);min-height:44px;color:var(--ink);cursor:pointer;align-items:center;gap:10px;margin:0;padding:0 22px 0 18px;display:none}.interactive-collapse i{color:var(--accent)}.interactive-project-detail.experience-expanded>:not(.project-media){opacity:0;visibility:hidden;transition:opacity var(--t-panel) ease, visibility 0s linear var(--t-panel)}.interactive-project-detail.experience-expanded .project-media{inset:calc(var(--mast-h) + env(safe-area-inset-top,0px)) 24px 24px;z-index:80;width:auto;height:calc(100dvh - var(--mast-h) - env(safe-area-inset-top,0px) - 24px);max-height:none;margin:0;position:fixed}.interactive-project-detail.experience-expanded .interactive-browser{box-shadow:0 30px 90px -30px #0009}.interactive-project-detail.experience-expanded .interactive-browser iframe{pointer-events:auto}.interactive-project-detail.experience-expanded .interactive-activate,.interactive-project-detail .project-media.experience-morphing .interactive-activate{opacity:0;visibility:hidden;pointer-events:none}.interactive-project-detail.experience-expanded .interactive-collapse{bottom:calc((var(--chin) - 44px) / 2);z-index:3;display:inline-flex;position:absolute;left:50%;translate:-50%}.interactive-project-detail .project-media.experience-morphing{pointer-events:none;will-change:top, left, width, height;overflow:hidden}.project-narrative,.narrative-section{grid-column:1/-1;grid-template-columns:subgrid;display:grid}.narrative-section{padding-block:var(--s-7);border-top:1px solid var(--hair);align-items:baseline}.narrative-index{color:var(--accent);grid-column:1}.narrative-section h2{color:var(--ink);grid-column:2/6}.narrative-section p{max-width:62ch;color:var(--ink-2);grid-column:6/12;margin:0}.project-pagination{gap:var(--gap);margin-top:calc(var(--s-8) * -1);border-top:1px solid var(--hair-2);grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.pagination-link{min-height:88px;padding:var(--s-5) 0;border-radius:var(--r-chip);color:var(--ink-2);align-content:center;justify-self:start;justify-items:start;gap:6px;text-decoration:none;display:grid}.pagination-next{text-align:right;grid-column:2;justify-self:end;justify-items:end}.pagination-label{align-items:center;gap:10px;display:inline-flex}.pagination-label i{color:var(--accent);transition:translate var(--t-ui) var(--ease-out)}.pagination-title{color:var(--ink);transition:color var(--t-ui) ease}.pagination-link:is(:hover,:focus-visible) .pagination-title{color:var(--accent)}.pagination-previous:is(:hover,:focus-visible) .pagination-label i{translate:-4px}.pagination-next:is(:hover,:focus-visible) .pagination-label i{translate:4px}@media (prefers-reduced-motion:no-preference){.project-detail[data-arrival] .project-overview>:not(.detail-links),.project-detail[data-arrival] .detail-links>*{animation:reveal-rise .76s var(--ease-out) calc(var(--i,0) * 50ms + 60ms) backwards}}@media (width<=1050px){.narrative-section p{grid-column:6/-1}}@media (width<=900px){.project-media-rail{align-items:flex-start;gap:var(--s-6);flex-direction:column}.project-media-rail .project-media-item{width:var(--plate-at-scale);flex:none}}@media (width>=761px) and (width<=900px){.project-overview,.interactive-project-detail .project-overview{grid-column:1/-1;max-width:40rem}.project-figure-column,.interactive-project-detail .project-media{grid-column:1/-1;margin-left:0}.project-detail{row-gap:var(--s-7)}.project-pagination{margin-top:calc(var(--s-7) * -1)}}@media (width<=760px){.project-detail{row-gap:var(--s-7);padding-bottom:var(--s-8);grid-template-columns:minmax(0,1fr)}.project-overview,.project-figure-column,.project-media-rail,.interactive-project-detail .project-overview,.interactive-project-detail .project-media{grid-column:1;margin-left:0}.project-overview h1{font-size:clamp(2.5rem,11vw,3.25rem)}.detail-back{margin-bottom:var(--s-5)}.detail-facts>div{grid-template-columns:6.5rem minmax(0,1fr)}.project-detail{--plate-pad:10px}.project-figure-column{gap:var(--s-5)}.project-figure-column .project-media-item,.project-media-rail .project-media-item{justify-self:stretch;width:auto}.project-media-rail{align-items:stretch}.interactive-project-detail .project-media{--chin:60px;height:clamp(64svh, calc((100vw - 2 * var(--gutter)) * 1.25), 78svh)}.interactive-browser-bar{grid-template-columns:36px minmax(0,1fr) 36px;padding:6px 10px}.interactive-browser-bar span{letter-spacing:.08em}.interactive-project-detail.experience-expanded .project-media{inset:calc(var(--mast-h) + env(safe-area-inset-top,0px)) 10px 10px;height:calc(100dvh - var(--mast-h) - env(safe-area-inset-top,0px) - 10px)}.project-narrative,.narrative-section{display:block}.narrative-section{padding-block:var(--s-6)}.narrative-index{margin-bottom:var(--s-3);display:block}.narrative-section h2{margin-bottom:var(--s-4)}.project-pagination{margin-top:calc(var(--s-7) * -1)}.pagination-link{min-height:88px}}html[data-qa=true] *,html[data-qa=true] :before,html[data-qa=true] :after{caret-color:#0000!important;transition:none!important;animation:none!important}html[data-qa=true]{scroll-behavior:auto;scroll-snap-type:none}@media (forced-colors:active){:root[data-boot] #ocean{opacity:.3}.experience:after,.frost:before,.portfolio-story:before,.surface-hero:before,.surface-hero-reflection,.surface-hero-cue{display:none}.masthead:before,.panel-masthead:before{-webkit-backdrop-filter:none;backdrop-filter:none;background:canvas;inset:0;-webkit-mask-image:none;mask-image:none}:is(.text-link,.campaign-slide-action,.data-stage-action,.campaign-carousel-control,.music-reel-step,.interactive-collapse,.panel-close,.theme-toggle,.campaign-progress-button[aria-current=step],.data-project-index-button[aria-current=true],.data-chart-tooltip,.campaign-slide-hint,.interactive-activate-label){-webkit-backdrop-filter:none;backdrop-filter:none;background:canvas;border:1px solid buttontext}.campaign-progress-button[aria-current=step],.data-project-index-button[aria-current=true]{border:2px solid highlight}.portfolio-panel,html[data-quality] .portfolio-panel{-webkit-backdrop-filter:none;backdrop-filter:none;background:canvas;border:1px solid canvastext}:focus-visible,.campaign-slide-media:focus-visible,.music-video-poster:focus-visible,.interactive-activate:focus-visible{outline-color:highlight}.wordmark-dot,.zone-slate-rule,.campaign-progress-mark,.feature-label:after,.project-media-item figcaption:after,.depth-gauge-line,.depth-stop{background:canvastext}#depthFill,.depth-gauge-line:after,.campaign-progress-fill,.campaign-progress-button[aria-current=step] .campaign-progress-mark,.experience[data-zone=about] .depth-stop[data-stop=about],.experience[data-zone=campaigns] .depth-stop[data-stop=campaigns],.experience[data-zone=data] .depth-stop[data-stop=data],.experience[data-zone=music] .depth-stop[data-stop=music],.experience[data-zone=contact] .depth-stop[data-stop=contact]{background:highlight}.data-code-chart{forced-color-adjust:none;background:#000;border-color:#fff}.interactive-browser,.project-media .media-frame{border:1px solid canvastext}}@media (prefers-reduced-transparency:reduce){:root,.portfolio-panel,.inline-zone-section{--glass:var(--glass-strong);--frost:color-mix(in oklab, color-mix(in oklab, #010c14b3 var(--theme-night), #001834b3) var(--night-amt), #ecf8fab3);--frost-strong:var(--frost);--scrim:color-mix(in oklab, #010a12f2 var(--night-amt), #e2f2f6f5)}:is(.text-link,.campaign-slide-action,.data-stage-action,.campaign-carousel-control,.music-reel-step,.interactive-collapse,.panel-close,.theme-toggle,.campaign-progress-button[aria-current=step],.data-project-index-button[aria-current=true],.data-code-chart,.data-chart-tooltip,.campaign-slide-hint,.interactive-activate-label),.masthead:before,.panel-masthead:before{-webkit-backdrop-filter:none;backdrop-filter:none}.data-code-chart{background:var(--glass-strong)}.portfolio-panel,html[data-quality] .portfolio-panel{-webkit-backdrop-filter:none;backdrop-filter:none;background:color-mix(in oklab, #020a12f0 var(--theme-night), #032636f0)}}@media (prefers-contrast:more){:root,.portfolio-panel,.inline-zone-section{--ink-3:var(--ink-2);--hair:color-mix(in oklab, #dcf4f066 var(--night-amt), #06283270);--hair-2:color-mix(in oklab, #dcf4f0cc var(--night-amt), #062832d6);--glass-rim:color-mix(in oklab, #e1faf67a var(--night-amt), #06283280);--frost:color-mix(in oklab, color-mix(in oklab, #010c1499 var(--theme-night), #00183499) var(--night-amt), #ecf8fa7a);--frost-strong:color-mix(in oklab, color-mix(in oklab, #010c1499 var(--theme-night), #00183499) var(--night-amt), #ecf8fa9e)}.data-screen,html[data-theme=light] .data-screen{--chart-faint:var(--chart-soft);--chart-grid:#dcf4f033;--chart-axis:#dcf4f099}}@media (prefers-reduced-motion:reduce){.campaign-slide[data-position=active] .campaign-slide-media:is(:hover,:focus-visible) img,.music-video-poster:is(:hover,:focus-visible) img,.interactive-activate:is(:hover,:focus-visible) .interactive-activate-label i{transform:scale(1)}}
