@font-face{font-family:Hanken Grotesk;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/hanken-grotesk-400-700.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500.woff2)format("woff2")}:root{--paper:#e9e7e1;--paper-deep:#d9d6ce;--ink:#181a19;--muted:#73716a;--line:#c8c5bd;--umber:#171310;--milk:#e5dcce;--oxblood:#6d302a;--moss:#565a43;--tungsten:#d2a26e;--page:clamp(24px, 4.4vw, 66px);--header-height:74px;--content-max:1440px;--font-sans:"Hanken Grotesk", "Helvetica Neue", Arial, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, "SF Mono", Menlo, monospace;--ease-exact:cubic-bezier(.2, .72, .18, 1);--ease-cinema:cubic-bezier(.68, 0, .22, 1);--ease-quart:cubic-bezier(.165, .84, .44, 1);--ease-expo:cubic-bezier(.19, 1, .22, 1);--scroll-progress:0}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}html[data-activation=criticalFracture],html[data-activation=breakthrough]{overflow:hidden}body{background:var(--paper);min-height:100svh;color:var(--ink);font-family:var(--font-sans);text-rendering:optimizelegibility;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;margin:0;font-size:16px;font-weight:430;line-height:1.5;overflow-x:clip}a{color:inherit;text-decoration:none}button,input{font:inherit}input,textarea,[contenteditable=true]{-webkit-user-select:text;user-select:text}button{color:inherit;cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:default;opacity:.48}img,video{max-width:100%;display:block}h1,h2,h3,p,figure,dl,dd{margin:0}ul{margin:0;padding:0;list-style:none}:focus-visible{outline-offset:4px;outline:2px solid}.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}.skip-link{z-index:200;background:var(--ink);color:var(--paper);padding:10px 14px;transition:transform .16s;position:fixed;top:12px;left:12px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.section-label,.eyebrow{font:500 10.5px/1.4 var(--font-mono);letter-spacing:.035em;text-transform:lowercase;color:var(--muted)}.quiet-link{border-bottom:1px solid;align-items:center;gap:12px;width:max-content;padding-block:6px;font-size:13px;line-height:1;display:inline-flex}.quiet-link span{transition:transform .18s var(--ease-exact)}.quiet-link:hover span{transform:translate(3px,-2px)}.quiet-button{border-bottom:1px solid;padding:8px 0}.page-return{margin-top:72px}.global-canvas,.visual-fallback{z-index:40;pointer-events:none;position:fixed;inset:0}.global-canvas *{pointer-events:none!important}.global-canvas canvas{pointer-events:none!important;width:100%!important;height:100%!important}.film-grain-overlay{z-index:100;pointer-events:none;mix-blend-mode:soft-light;opacity:.58;width:100%;height:100%;position:fixed;inset:0}html[data-world=cola] .film-grain-overlay{opacity:.62}html[data-activation=firstImpact] .film-grain-overlay,html[data-activation=secondImpact] .film-grain-overlay,html[data-activation=criticalFracture] .film-grain-overlay,html[data-activation=breakthrough] .film-grain-overlay{opacity:.48}.global-canvas.is-suspended{opacity:0}html[data-world=professional][data-activation=firstImpact] .global-canvas,html[data-world=professional][data-activation=secondImpact] .global-canvas,html[data-world=professional][data-activation=criticalFracture] .global-canvas,html[data-world=professional][data-activation=breakthrough] .global-canvas{z-index:70}html[data-world=professional][data-activation=firstImpact] .site-header,html[data-world=professional][data-activation=secondImpact] .site-header{z-index:80}html[data-world=cola][data-activation=breakthrough] .global-canvas{z-index:70;opacity:1}@property --tv-width{syntax:"<number>";inherits:false;initial-value:1}@property --tv-height{syntax:"<number>";inherits:false;initial-value:1}@property --tv-gain{syntax:"<number>";inherits:false;initial-value:1}@property --tv-gone{syntax:"<number>";inherits:false;initial-value:0}html[data-world=cola][data-activation=breakthrough][data-direction=return]:not([data-motion=reduced]) body{background:#070605}html[data-world=cola][data-activation=breakthrough][data-direction=return]:not([data-motion=reduced]) :where(.cola-world:not(:has(.cola-home)),.cola-tableau-nav,.site-header){transform-origin:50% 50vh;transform:scale(var(--tv-width), var(--tv-height));filter:brightness(var(--tv-gain));opacity:calc(1 - var(--tv-gone));will-change:transform, filter, opacity}html[data-world=cola][data-activation=breakthrough][data-direction=return]:not([data-motion=reduced]) .cola-world:has(.cola-home){background:0 0}html[data-world=cola][data-activation=breakthrough][data-direction=return]:not([data-motion=reduced]):has(.cola-home) :is(.cola-home,.site-header){z-index:71}html[data-world=cola][data-activation=breakthrough][data-direction=return]:not([data-motion=reduced]) .cola-tableau-nav{transform-origin:50% calc(50vh - var(--header-height))}html[data-visual-fallback=true][data-world=cola][data-activation=breakthrough][data-direction=return]:not([data-motion=reduced]) :is(.cola-world,.site-header){animation:.45s linear both cola-return-off}html[data-landing=return][data-world=professional]:not([data-motion=reduced]) :is(#main-content,.site-header){animation:fade-in .42s var(--ease-exact) both}html[data-landing=return][data-world=professional]:not([data-motion=reduced]) .professional-hero{animation:land-in .52s var(--ease-exact) both}@keyframes land-in{0%{transform:translateY(10px)}to{transform:none}}html[data-world=cola][data-activation=breakthrough][data-direction=return] .preview-badge{z-index:96;top:calc(var(--header-height) + 12px);color:#e5dcce;font:400 10.5px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#171310e6;border:1px solid #e5dcce38;border-radius:999px;align-items:center;gap:14px;padding:8px 8px 8px 16px;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 12px 40px #00000047}.preview-badge:before{content:"";background:#d2a26e;border-radius:50%;width:7px;height:7px;margin-right:-4px}.preview-badge a{color:inherit;background:#e5dcce1f;border-radius:999px;padding:7px 12px}.preview-badge a:hover,.preview-badge a:focus-visible{background:#e5dcce38}.persistent-player{opacity:0;transition:opacity .12s}@keyframes cola-return-off{0%{filter:none;animation-timing-function:cubic-bezier(.2,0,.1,1);transform:none}35%{filter:brightness(3.4);animation-timing-function:cubic-bezier(.55,0,.15,1);transform:scale(1.1,.003)}52%{filter:brightness(3.4);opacity:1;transform:scale(.003)}62%,to{filter:brightness(3.4);opacity:0;transform:scale(.003)}}.visual-fallback{z-index:0;background:var(--paper)}html[data-world=cola] .visual-fallback{background:var(--umber)}.site-header{z-index:60;width:100%;min-height:var(--header-height);padding:0 var(--page);background:#e9e7e1f7;border-bottom:1px solid #181a1929;grid-template-columns:minmax(190px,1fr) auto minmax(150px,1fr);align-items:center;gap:28px;display:grid;position:fixed;top:0;left:0}.site-header:after{content:"";opacity:.54;height:1px;transform:scaleX(var(--scroll-progress));transform-origin:0;will-change:transform;background:currentColor;position:absolute;bottom:-1px;left:0;right:0}.identity-mark{justify-self:start;line-height:1}.identity-mark>span:not(.cola-mark){grid-template-columns:auto auto;align-items:baseline;gap:12px;display:grid}.identity-mark b{letter-spacing:-.018em;transition:letter-spacing .26s var(--ease-exact), transform .26s var(--ease-exact);font-size:14px;font-weight:560;display:inline-block}.identity-mark:hover b{letter-spacing:-.005em;transform:translate(2px)}.identity-mark i{color:var(--muted);font-size:11px;font-style:normal}.primary-nav{justify-content:center;align-items:center;gap:22px;font-size:12px;display:flex}.primary-nav a{padding-block:7px;position:relative}.primary-nav a:after{content:"";transform-origin:100%;height:1px;transition:transform .18s var(--ease-exact);background:currentColor;position:absolute;bottom:3px;left:0;right:0;transform:scaleX(0)}.primary-nav a:hover:after,.primary-nav a[aria-current=page]:after{transform-origin:0;transform:scaleX(1)}.primary-nav a[data-pending=true]:after{animation:nav-pending .9s var(--ease-exact) infinite}@keyframes nav-pending{0%{transform-origin:0;transform:scaleX(0)}50%{transform-origin:0;transform:scaleX(1)}50.1%{transform-origin:100%;transform:scaleX(1)}to{transform-origin:100%;transform:scaleX(0)}}.cola-control-group{justify-self:end;align-items:center;display:flex}.world-control{font-size:12px;line-height:1}.cola-trigger{grid-template-columns:auto 21px;align-items:center;gap:12px;min-width:68px;padding:10px 0 10px 10px;display:grid}.cola-trigger>span{letter-spacing:-.02em}.cola-trigger>i{align-items:center;gap:3px;display:flex}.cola-trigger>i b{background:var(--line);width:5px;height:1px;transition:background .14s,height .14s}html[data-activation=firstImpact] .cola-trigger>i b:first-child,html[data-activation=secondImpact] .cola-trigger>i b:nth-child(-n+2),html[data-activation=criticalFracture] .cola-trigger>i b,html[data-activation=breakthrough] .cola-trigger>i b{background:var(--ink);height:2px}.menu-toggle{justify-self:end;place-items:center;width:40px;height:40px;margin-right:-8px;display:none}.menu-toggle-bars{width:22px;height:12px;display:block;position:relative}.menu-toggle-bars i{width:100%;height:1.5px;transition:transform .38s var(--ease-exact), width .38s var(--ease-exact);background:currentColor;position:absolute;left:0}.menu-toggle-bars i:first-child{top:0}.menu-toggle-bars i:last-child{width:62%;bottom:0}.menu-toggle[aria-expanded=true] .menu-toggle-bars i:first-child{transform:translateY(5.25px)rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-toggle-bars i:last-child{width:100%;transform:translateY(-5.25px)rotate(-45deg)}.site-menu{z-index:90;padding:calc(var(--header-height) + 8vh) var(--page) max(28px, env(safe-area-inset-bottom));background:var(--paper);visibility:hidden;opacity:0;transition:opacity .3s var(--ease-exact), visibility .3s;grid-template-rows:1fr auto;display:none;position:fixed;inset:0}html[data-world=cola] .site-menu{background:var(--umber);color:var(--milk)}.site-menu[data-open=true]{visibility:visible;opacity:1;transition:none}.site-menu-primary{align-content:start;gap:2px;display:grid}.site-menu-primary a{border-bottom:1px solid var(--line);opacity:0;grid-template-columns:34px 1fr;align-items:baseline;gap:4px 14px;padding:14px 0;display:grid;transform:translateY(14px)}html[data-world=cola] .site-menu-primary a{border-color:#e5dcce33}.site-menu[data-open=true] .site-menu-primary a{animation:menu-item-in .52s var(--ease-quart) both;animation-delay:calc(90ms + var(--i) * 55ms)}.site-menu[data-settled=true] .site-menu-primary a,.site-menu[data-settled=true] .site-menu-footer{opacity:1;animation:none;transform:none}.site-menu-primary span{color:var(--muted);font:400 10px/1 var(--font-mono)}.site-menu-primary strong{letter-spacing:-.045em;text-transform:lowercase;font-size:clamp(30px,10vw,46px);font-weight:540;line-height:1}.site-menu-primary i{color:var(--muted);font:400 10px/1 var(--font-mono);grid-column:2;font-style:normal}.site-menu-footer{opacity:0;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:18px;padding-top:28px;display:flex}.site-menu[data-open=true] .site-menu-footer{animation:menu-item-in .52s var(--ease-quart) both;animation-delay:calc(90ms + var(--i) * 55ms)}.site-menu-footer button{border-bottom:1px solid;padding-bottom:4px;font-size:13px}.site-menu-social{color:var(--muted);font:400 11px/1 var(--font-mono);gap:20px;display:flex}.site-menu-social a{border-bottom:1px solid #0000;padding-bottom:3px}.site-menu-social a:hover,.site-menu-social a:focus-visible{border-color:currentColor}@keyframes menu-item-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media (width<=900px){html[data-menu=open],html[data-menu=open] body{overflow:hidden}html[data-menu=open] .site-header{z-index:95}}.professional-main{z-index:10;width:min(100%, var(--content-max));min-height:100svh;padding-inline:var(--page);margin-inline:auto;position:relative}.professional-hero{grid-template-rows:auto auto 1fr auto;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:16px;min-height:94svh;padding-top:clamp(142px,18vh,196px);padding-bottom:42px;display:grid}.hero-name{letter-spacing:-.058em;text-transform:lowercase;grid-column:1/-1;max-width:1220px;margin-bottom:-.13em;padding-bottom:.13em;font-size:clamp(52px,7.25vw,104px);font-weight:540;line-height:.88;overflow:visible}.hero-role{grid-column:1/5;align-self:start;gap:5px;margin-top:22px;display:grid}.hero-role span{letter-spacing:-.015em;font-size:17px}.hero-role i{color:var(--muted);font:400 9.5px/1.4 var(--font-mono);text-transform:lowercase;font-style:normal}.hero-sentence{letter-spacing:-.026em;grid-column:7/11;align-self:start;max-width:430px;margin-top:24px;font-size:clamp(18px,1.75vw,25px);line-height:1.22}.hero-measure{color:var(--muted);font:400 9px/1 var(--font-mono);grid-column:1/-1;align-self:end;align-items:center;gap:16px;margin-top:28px;display:flex}.hero-measure span{background:var(--line);width:100%;height:1px}.hero-measure i{min-width:max-content;font-style:normal}.professional-section{border-top:1px solid var(--line);padding-block:clamp(72px,9vw,132px)}.compact-section-header{grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;margin-bottom:64px;display:grid}.compact-section-header h2{letter-spacing:-.028em;grid-column:1/5;font-size:28px;font-weight:540;line-height:1}.compact-section-header>p{max-width:450px;color:var(--muted);grid-column:7/12;font-size:14px}.project-sequence{gap:clamp(88px,12vw,176px);display:grid}.project-entry{grid-template-columns:repeat(12,minmax(0,1fr));align-items:center;gap:16px;min-height:430px;display:grid}.project-entry-copy{grid-column:1/5;max-width:410px}.project-entry-visual{aspect-ratio:16/9;perspective:1100px;grid-column:6/-1;min-height:280px;position:relative;overflow:hidden}.project-entry-visual:before{content:"";z-index:4;pointer-events:none;transition:border-color .36s var(--ease-exact), inset .36s var(--ease-exact);border:1px solid #0000;position:absolute;inset:0}.project-entry-visual:hover:before{border-color:#181a1947;inset:8px}.project-entry:nth-child(2n) .project-entry-copy{grid-column:9/-1}.project-entry:nth-child(2n) .project-entry-visual{grid-area:1/1/auto/8}.project-position{color:var(--muted);font:400 10.5px/1.4 var(--font-mono);justify-content:space-between;gap:20px;margin-bottom:20px;display:flex}.project-entry h3{letter-spacing:-.035em;max-width:390px;font-size:clamp(24px,3vw,36px);font-weight:550;line-height:1.02}.project-entry h3 a{transition:background-size .36s var(--ease-exact), background-position 0s .36s;background-image:linear-gradient(currentColor,currentColor);background-position:100% 100%;background-repeat:no-repeat;background-size:0 1px;display:inline}.project-entry h3 a:hover{background-position:0 100%;background-size:100% 1px}.project-entry-copy>p:not(.project-position,.project-technologies){color:#4f4e49;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:17px;font-size:13px;line-height:1.5;display:-webkit-box;overflow:hidden}.project-technologies{color:var(--muted);font:400 10.5px/1.55 var(--font-mono);margin-top:20px}.project-art{width:100%;height:100%;transform-style:preserve-3d;transition:filter .5s var(--ease-exact);background:#d6d4cd;display:block;position:relative;overflow:hidden}.project-entry-visual:hover .project-art{filter:contrast(1.035)saturate(1.03)}.project-art-ember{background:#d5cfc6}.project-art-signal{background:#cfd3ce}.project-art-graphite{background:#c9c7c0}.project-art-cobalt{background:#d2d1ca}.project-art:after{content:"";z-index:3;pointer-events:none;border:1px solid #181a1933;position:absolute;inset:24px}.project-art.has-project-image:after{border-color:#f5f2e833}.project-art-media{--parallax-y:0px;translate:0 var(--parallax-y);transform-style:preserve-3d;will-change:transform, translate;position:absolute;inset:-18px}.project-art img{object-fit:cover;object-position:50% 50%}.project-art img,.project-art-pixel-reveal{transition:transform .9s var(--ease-cinema), filter .6s var(--ease-exact);transform:scale(1.002)}.project-art .project-art-preview{z-index:0;image-rendering:pixelated}.project-art .project-art-full{z-index:1}html[data-pixel-reveal=armed] .project-art .project-art-full{opacity:0}.project-art-pixel-reveal{z-index:2;opacity:0;width:100%;height:100%;image-rendering:pixelated;pointer-events:none;position:absolute;inset:0}.project-entry-visual:hover .project-art img,.project-entry-visual:hover .project-art-pixel-reveal{filter:contrast(1.035)saturate(1.03);transform:scale(1.025)}.project-art-empty:before{content:"";background:radial-gradient(circle at 72% 30%,#ffffff5c,#0000 22%),linear-gradient(135deg,#0000 24%,#181a1909 25% 49%,#0000 50%);position:absolute;inset:0}.experience-compact article{border-top:1px solid var(--line);grid-template-columns:4fr 6fr 2fr;gap:16px;padding:20px 0;font-size:13px;display:grid}.experience-compact article:last-child{border-bottom:1px solid var(--line)}.experience-compact article>p:first-child{display:grid}.experience-compact article strong{font-weight:550}.experience-compact article span,.experience-compact article>p:nth-child(2){color:var(--muted)}.experience-compact article>p:last-child{font:400 10.5px/1.5 var(--font-mono);justify-self:end}.about-compact>p{letter-spacing:-.03em;max-width:780px;margin-left:33.333%;font-size:clamp(22px,3vw,36px);line-height:1.16}.capabilities-compact>div{margin-left:33.333%}.capabilities-compact>div p{border-top:1px solid var(--line);grid-template-columns:180px 1fr;gap:18px;padding:15px 0;font-size:13px;display:grid}.capabilities-compact>div p:last-child{border-bottom:1px solid var(--line)}.capabilities-compact strong{font-weight:540}.capabilities-compact span{color:var(--muted)}.contact-compact{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:16px;display:grid}.contact-compact h2{letter-spacing:-.028em;grid-column:1/5;font-size:28px;font-weight:540}.contact-compact>p{color:var(--muted);grid-column:5/9}.contact-compact>div{grid-column:9/-1;justify-items:start;gap:8px;font-size:13px;display:grid}.contact-compact a{border-bottom:1px solid #0000}.contact-compact a:hover{border-color:currentColor}.professional-footer{border-top:1px solid var(--line);color:var(--muted);font:400 10.5px/1.4 var(--font-mono);justify-content:space-between;gap:20px;padding:28px 0 42px;display:flex}.professional-footer p{gap:24px;display:flex}.scroll-to-top{z-index:55;right:max(18px, env(safe-area-inset-right));bottom:max(18px, env(safe-area-inset-bottom));width:38px;height:38px;color:var(--ink);opacity:0;visibility:hidden;pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:opacity .22s var(--ease-exact), visibility .22s, transform .32s var(--ease-exact), border-color .18s, background .18s;background:#e9e7e1e6;border:1px solid #181a194d;border-radius:50%;place-items:center;display:grid;position:fixed;transform:translateY(9px);box-shadow:0 9px 26px #181a191a}.scroll-to-top[data-visible=true]{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.scroll-to-top:hover{border-color:var(--ink);background:#e9e7e1fa;transform:translateY(-2px)}.scroll-to-top span{font:400 17px/1 var(--font-mono);display:block;transform:translateY(-1px)}.interior-page{padding-top:150px;padding-bottom:120px}.interior-hero{grid-template-columns:repeat(12,minmax(0,1fr));align-content:start;gap:16px;min-height:360px;padding-bottom:80px;display:grid}.interior-hero .section-label{grid-column:1/4}.interior-hero h1{letter-spacing:-.038em;grid-column:1/7;margin-top:48px;font-size:clamp(34px,4vw,48px);font-weight:540;line-height:1}.interior-hero>p:last-child{color:var(--muted);grid-column:8/12;align-self:end}.resume-page{padding-bottom:90px}.resume-page-header{grid-template-columns:minmax(0,8fr) minmax(220px,4fr);align-items:end;gap:16px;padding-bottom:48px;display:grid}.resume-page-header h1{letter-spacing:-.052em;margin-top:28px;font-size:clamp(42px,5.7vw,78px);font-weight:540;line-height:.92}.resume-page-header>div:first-child>p:last-child{max-width:520px;color:var(--muted);margin-top:22px}.resume-actions{font:400 11px/1.4 var(--font-mono);justify-content:flex-end;gap:24px;display:flex}.resume-actions a{border-bottom:1px solid var(--line);padding-bottom:4px;transition:border-color .18s,color .18s}.resume-actions a:hover{border-color:var(--ink)}.resume-actions span{margin-left:6px}.resume-document{border:1px solid var(--line);background:#f5f4ef;min-height:min(1120px,136vw);position:relative;overflow:hidden;box-shadow:0 24px 60px #181a1914}.resume-document:before{content:"JAMES COLASACCO / RESUME";z-index:0;color:var(--muted);font:400 9px/1 var(--font-mono);position:absolute;top:20px;left:20px}.resume-document object{z-index:1;background:#fff;border:0;width:100%;height:min(1120px,136vw);display:block;position:relative}.resume-document object>p{text-align:center;padding:80px 24px}.resume-document object a{border-bottom:1px solid}.case-study{padding-top:132px;padding-bottom:80px}.case-hero{grid-template-columns:repeat(12,minmax(0,1fr));gap:16px;display:grid}.case-breadcrumb{border-bottom:1px solid var(--line);font:400 10.5px/1 var(--font-mono);color:var(--muted);grid-column:1/-1;justify-content:space-between;padding-bottom:16px;display:flex}.case-hero h1{letter-spacing:-.04em;grid-column:1/8;margin-top:42px;font-size:clamp(34px,4.2vw,52px);font-weight:550;line-height:1}.case-summary{max-width:470px;color:var(--muted);grid-column:8/-1;align-self:end;margin-top:42px;font-size:17px}.case-links{flex-wrap:wrap;grid-column:8/-1;gap:20px;margin-top:22px;display:flex}.case-art{grid-column:1/-1;height:min(64vw,760px);margin-top:72px}.case-facts{border-bottom:1px solid var(--line);grid-column:1/-1;grid-template-columns:repeat(4,1fr);gap:16px;padding:20px 0 56px;display:grid}.case-facts dt{color:var(--muted);font:400 10px/1.4 var(--font-mono)}.case-facts dd{margin-top:8px;font-size:13px}.case-overview{grid-template-columns:repeat(3,1fr);gap:48px;padding:96px 0;display:grid}.case-overview h2{margin-bottom:18px;font-size:18px;font-weight:550}.case-overview p{color:var(--muted);font-size:14px}.case-modules{grid-template-columns:repeat(12,1fr);gap:16px;display:grid}.case-module{border-top:1px solid var(--line);grid-column:3/11;padding:72px 0}.case-module h2{letter-spacing:-.028em;margin:16px 0 24px;font-size:28px;font-weight:540}.case-module>h2:first-child{margin-top:0}.case-module>p:last-child{max-width:690px;color:var(--muted)}.decision-module>div{grid-template-columns:1fr 1fr;gap:40px;display:grid}.decision-module b{margin-bottom:10px;font-weight:550;display:block}.code-module pre{background:var(--ink);color:var(--paper);font:400 12px/1.65 var(--font-mono);padding:24px;overflow-x:auto}.metric-module strong{letter-spacing:-.04em;margin:24px 0;font-size:42px;font-weight:540;display:block}.case-end{border-top:1px solid var(--line);justify-content:space-between;margin-top:96px;padding-top:22px;font-size:13px;display:flex}.glass-lab{grid-template-columns:repeat(12,minmax(0,1fr));align-content:center;gap:16px;min-height:100svh;padding-top:130px;padding-bottom:80px;display:grid}.lab-copy{grid-column:1/6}.lab-copy h1{letter-spacing:-.04em;margin:20px 0 26px;font-size:clamp(32px,4vw,48px);font-weight:540;line-height:1}.lab-copy>p:last-child{max-width:390px;color:var(--muted)}.lab-test-pattern{border:1px solid var(--ink);flex-direction:column;grid-column:7/-1;justify-content:space-between;min-height:430px;padding:30px;display:flex;position:relative;overflow:hidden}.lab-lines{opacity:.22;background-size:22px 22px;background-image:linear-gradient(to right, var(--ink) 1px, transparent 1px), linear-gradient(to bottom, var(--ink) 1px, transparent 1px);position:absolute;inset:0}.lab-test-pattern>:not(.lab-lines){position:relative}.lab-test-pattern>p{font:400 10px/1 var(--font-mono)}.lab-test-pattern h2{max-width:380px;font-size:21px;font-weight:520;line-height:1.2}.lab-test-pattern dl{grid-template-columns:repeat(3,1fr);gap:20px;font-size:11px;display:grid}.lab-test-pattern dt{color:var(--muted);font-family:var(--font-mono)}.glass-lab-panel{z-index:70;right:var(--page);border:1px solid var(--line);width:min(330px,100vw - 28px);max-height:calc(100svh - 110px);font:400 9px/1.2 var(--font-mono);background:#e9e7e1f7;padding:15px;position:fixed;bottom:20px;overflow:auto}.glass-lab-panel header{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding-bottom:12px;display:flex}.glass-lab-panel header span,.glass-lab-panel legend,.lab-material-controls label>span{color:var(--muted)}.lab-mode-controls{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:8px;padding:12px 0;display:grid}.glass-lab-panel fieldset{border:0;flex-wrap:wrap;gap:4px;margin:0;padding:0;display:flex}.glass-lab-panel legend{width:100%;margin-bottom:4px}.glass-lab-panel button{padding:4px 5px}.glass-lab-panel button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.lab-material-controls{gap:9px;padding:12px 0;display:grid}.lab-material-controls label{gap:5px;display:grid}.lab-material-controls label>span{justify-content:space-between;gap:12px;display:flex}.lab-material-controls output{color:var(--ink)}.lab-material-controls input{width:100%;accent-color:var(--ink)}.glass-lab-panel .lab-reset{border-top:1px solid var(--line);text-align:left;width:100%;padding-top:11px}html[data-world=cola]{background:var(--umber);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html[data-world=cola] body{background:var(--umber);color:var(--milk)}html[data-world=cola] .site-header{color:var(--milk);background:#171310f2;border-color:#e5dcce2e}html[data-world=cola] .identity-mark i,html[data-world=cola] .section-label{color:#e5dcce8c}.cola-mark{letter-spacing:-.05em;font-size:24px;font-weight:540}.cola-primary-nav{gap:26px}.world-return{justify-self:end;padding:10px 0 10px 18px}.cola-world{background:var(--umber);min-height:100svh}.cola-main{z-index:45;width:min(100%, var(--content-max));min-height:100svh;color:var(--milk);margin-inline:auto;position:relative}.cola-home{background:0 0;height:100svh;overflow:hidden}.cola-tableau-nav{inset:var(--header-height) 0 0;position:fixed}html[data-viewport=fixed],html[data-viewport=fixed] body{overscroll-behavior:none;height:100%;overflow:hidden}html[data-viewport=fixed] body{position:relative}html[data-viewport=fixed] .cola-world,html[data-viewport=fixed] .cola-main,html[data-viewport=fixed] .cola-home,html[data-viewport=fixed] .photography-index,html[data-viewport=fixed] .infinite-photo-gallery,html[data-viewport=fixed] .music-page,html[data-viewport=fixed] .music-room,html[data-viewport=fixed] .video-page,html[data-viewport=fixed] .video-reel{height:100%;min-height:0}.tableau-link{color:var(--milk);outline-offset:-1px;isolation:isolate;transition:outline-color .26s var(--ease-cinema), color .26s, filter .52s var(--ease-cinema);outline:1px solid #0000;flex-direction:column;justify-content:flex-end;padding:15px;display:flex;position:absolute}.tableau-link:before{content:"";z-index:-1;opacity:0;transform-origin:0 100%;height:28%;transition:opacity .26s, transform .52s var(--ease-cinema);border-bottom:1px solid #e5dcceb8;border-left:1px solid #e5dcce66;position:absolute;bottom:9px;left:9px;right:9px;transform:scale(.96)}.tableau-link:hover,.tableau-link:focus-visible{filter:brightness(1.015);outline-color:#e5dcceb8}.tableau-link:hover:before,.tableau-link:focus-visible:before{opacity:1;transform:scale(1)}.tableau-link>span{font:400 9px/1 var(--font-mono);opacity:.6;position:absolute;top:12px;left:12px}.tableau-video>span{left:auto;right:12px}.tableau-link strong{transition:transform .46s var(--ease-cinema), letter-spacing .46s var(--ease-cinema);font-size:14px;font-weight:540}.tableau-link:hover strong,.tableau-link:focus-visible strong{letter-spacing:.01em;transform:translate(5px,-4px)}html[data-visual-fallback=true] .tableau-link{background:linear-gradient(158deg,#603e2c8c,#221c17cc);border:1px solid #e5dcce57}html[data-visual-fallback=true] .tableau-link strong{font-size:18px}html[data-visual-fallback=true] .tableau-link>span{opacity:.85}.tableau-photo{width:49%;height:57%;top:21.5%;left:12.5%}.tableau-video{width:28%;height:49%;top:35.5%;left:59%}.tableau-music{width:21%;height:28%;top:14%;left:52.5%}.photography-index{background:var(--umber);width:100%;max-width:none;height:100svh;overflow:hidden}.infinite-photo-gallery{overscroll-behavior:none;touch-action:none;background:var(--umber);width:100%;height:100svh;color:var(--milk);position:relative;overflow:hidden}.gallery-canvas{z-index:0;position:absolute;inset:0}.gallery-canvas canvas{width:100%!important;height:100%!important}.infinite-photo-gallery.is-fallback{touch-action:pan-y;overflow-y:auto}.gallery-dom-fallback{padding:calc(var(--header-height) + 110px) var(--page) 110px;grid-template-columns:1fr 1fr;gap:clamp(10px,2vw,30px);display:grid}.gallery-dom-fallback>div{align-content:start;gap:clamp(18px,4vw,60px);display:grid}.gallery-dom-fallback>div:nth-child(2){padding-top:13vh}.gallery-dom-fallback button{width:100%;display:block}.gallery-fallback-image,.gallery-fallback-placeholder{aspect-ratio:4/5;width:100%;color:var(--milk);background:#5f4133;place-items:end start;display:grid;position:relative;overflow:hidden}.gallery-fallback-image img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.gallery-fallback-placeholder{padding:18px;font-size:12px}.gallery-chrome{z-index:2;bottom:max(24px, env(safe-area-inset-bottom));left:var(--page);pointer-events:none;position:absolute}.gallery-count{color:var(--milk);font-variant-numeric:tabular-nums;text-shadow:0 2px 22px #00000080;align-items:baseline;gap:10px;margin:0;display:flex}.gallery-count strong{letter-spacing:-.055em;font-size:clamp(46px,5.6vw,88px);font-weight:560;line-height:.8}.gallery-count span{color:#e5dcce9e;font:400 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase}.gallery-dialog{cursor:zoom-out;place-items:center;padding:max(42px,5vh) max(38px,7vw);display:grid}.gallery-dialog:not([open]){display:none}.gallery-dialog[open]{animation:gallery-dialog-in .42s var(--ease-cinema) both}.gallery-dialog[open]::backdrop{animation:gallery-backdrop-in .42s var(--ease-exact) both}.gallery-dialog.is-closing{animation:gallery-dialog-out .34s var(--ease-exact) both}.gallery-dialog.is-closing::backdrop{animation:gallery-backdrop-out .34s var(--ease-exact) both}.gallery-dialog-media{cursor:default;transform-origin:50% 54%;width:fit-content;max-width:min(92vw,1800px);height:fit-content;max-height:86svh;animation:gallery-media-in .52s var(--ease-cinema) both;place-items:center;display:grid;position:relative}.gallery-dialog.is-closing .gallery-dialog-media{animation:gallery-media-out .34s var(--ease-exact) both}.gallery-dialog-media>img{object-fit:contain;display:block;width:var(--photo-width,auto)!important;max-width:min(92vw,1800px)!important;height:auto!important;max-height:86svh!important}.gallery-dialog-placeholder{background:#5f4133;flex-direction:column;justify-content:flex-end;gap:8px;width:100%;height:100%;padding:34px;display:flex}.gallery-dialog-placeholder span{color:#e5dcce80;font:400 9px/1 var(--font-mono)}.gallery-dialog-placeholder strong{letter-spacing:-.04em;font-size:clamp(24px,4vw,48px);font-weight:500}.photo-dialog{z-index:150;width:100vw;max-width:none;height:100svh;max-height:none;color:var(--milk);background:#0d0b09;border:0;margin:0;padding:4vh 7vw;position:fixed;inset:0}.photo-dialog::backdrop{background:#0d0b09}.dialog-close,.dialog-previous,.dialog-next{z-index:2;width:46px;height:46px;color:var(--milk);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .16s, border-color .16s, transform .24s var(--ease-exact), opacity .16s;background:#0d0b0980;border:1px solid #e5dcce42;border-radius:50%;place-items:center;display:grid;position:absolute}.dialog-close:hover,.dialog-previous:hover,.dialog-next:hover,.dialog-close:focus-visible,.dialog-previous:focus-visible,.dialog-next:focus-visible{background:#e5dcce1f;border-color:#e5dcceb8}.dialog-close svg,.dialog-previous svg,.dialog-next svg{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.dialog-previous,.dialog-next{top:50%;transform:translateY(-50%)}.dialog-previous:hover{transform:translate(-2px,-50%)}.dialog-next:hover{transform:translate(2px,-50%)}.dialog-close{top:18px;right:18px}.dialog-previous{left:18px}.dialog-next{right:18px}.dialog-caption{font-variant-numeric:tabular-nums;align-items:baseline;gap:8px;margin:0;display:flex;position:absolute;bottom:20px;left:24px}.dialog-caption strong{letter-spacing:-.05em;animation:reel-count-in .52s var(--ease-expo) both;font-size:34px;font-weight:560;line-height:.8}.dialog-caption span{color:#e5dcce8f;font:400 10.5px/1 var(--font-mono);letter-spacing:.12em}.gallery-dialog.is-flying[open]{animation:gallery-veil-in .54s var(--ease-exact) both}.gallery-dialog.is-flying .gallery-dialog-media{animation:none}.gallery-dialog.is-flying .dialog-close,.gallery-dialog.is-flying .dialog-previous,.gallery-dialog.is-flying .dialog-next,.gallery-dialog.is-flying .dialog-caption{animation:fade-in .36s .3s var(--ease-exact) both}.gallery-dialog.is-flying.is-closing{animation:gallery-veil-out .32s var(--ease-exact) both}.gallery-dialog.is-closing .dialog-close,.gallery-dialog.is-closing .dialog-previous,.gallery-dialog.is-closing .dialog-next,.gallery-dialog.is-closing .dialog-caption{opacity:0;animation:none}@keyframes gallery-veil-in{0%{background-color:#0d0b0900}to{background-color:#0d0b09}}@keyframes gallery-veil-out{0%{background-color:#0d0b09}to{background-color:#0d0b0900}}@keyframes gallery-dialog-in{0%{opacity:0}to{opacity:1}}@keyframes gallery-dialog-out{0%{opacity:1}to{opacity:0}}@keyframes gallery-backdrop-in{0%{background:#0d0b0900}to{background:#0d0b09f5}}@keyframes gallery-backdrop-out{0%{background:#0d0b09f5}to{background:#0d0b0900}}@keyframes gallery-media-in{0%{opacity:0;filter:blur(12px);transform:scale(.94)translateY(18px)}to{opacity:1;filter:blur();transform:scale(1)translateY(0)}}@keyframes gallery-media-out{0%{opacity:1;filter:blur();transform:scale(1)}to{opacity:0;filter:blur(8px);transform:scale(.965)translateY(12px)}}.music-page{background:#100d0b;width:100%;max-width:none;min-height:100svh;overflow:hidden}.music-room{isolation:isolate;min-height:100svh;padding:calc(var(--header-height) + clamp(18px, 3vh, 40px)) var(--page) 0;color:var(--milk);grid-template-rows:minmax(0,1fr) auto;display:grid;position:relative;overflow:hidden}.music-canvas{z-index:-1;position:fixed;inset:0}.music-canvas canvas{display:block}.music-room.is-fallback:before{content:"";z-index:-1;background:var(--cover-art) center / cover;filter:blur(64px)brightness(.32)saturate(1.2);position:fixed;inset:-12%}.music-layout{grid-template-columns:auto minmax(0,520px);justify-content:center;align-self:center;align-items:center;gap:clamp(36px,6.5vw,116px);min-height:0;display:grid}.music-cover{aspect-ratio:1;width:min(56vh,38vw);position:relative}.music-cover img{object-fit:cover;opacity:0;width:100%;height:100%;display:block}.music-cover-blank{opacity:0;background:radial-gradient(circle at 28% 24%,#d2a26e4d,#d2a26e00 62%),linear-gradient(135deg,#2c231c,#0e0b09);flex-direction:column;justify-content:flex-end;gap:10px;padding:8%;display:flex;position:absolute;inset:0}.music-room.is-fallback .music-cover-blank{opacity:1}.music-cover-blank strong{letter-spacing:-.03em;font-size:clamp(22px,3vw,44px);font-weight:560;line-height:1}.music-cover-blank span{color:#e5dcce80;font:400 11px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase}.music-room.is-fallback .music-cover img{opacity:1;box-shadow:0 30px 80px #0000008c}.music-layout{max-height:100%}.music-panel{grid-template-rows:auto auto auto minmax(0,auto);grid-template-columns:minmax(0,1fr);align-content:center;min-width:0;max-height:100%;display:grid}.music-back{color:#e5dcce9e;font:400 10.5px/1 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;border-radius:999px;justify-self:start;align-items:center;gap:6px;margin:0 0 18px -6px;padding:6px 10px 6px 4px;transition:color .16s,background .16s;display:inline-flex}.music-back:hover,.music-back:focus-visible{color:var(--milk);background:#e5dcce12}.music-back svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.music-library{--album:clamp(180px, min(36vh, 26vw), 360px);--bleed:64px;width:fit-content;max-width:calc(100% + var(--bleed) * 2);min-height:0;max-height:calc(100% + 48px);margin:-8px calc(var(--bleed) * -1) -40px;padding:8px var(--bleed) 40px;scrollbar-width:none;place-self:center;gap:clamp(20px,3.6vh,40px);display:grid;overflow-y:auto;-webkit-mask-image:linear-gradient(#000 calc(100% - 40px),#0000);mask-image:linear-gradient(#000 calc(100% - 40px),#0000)}.music-library::-webkit-scrollbar{display:none}.music-library-head .music-title{margin-bottom:0}.music-albums{flex-wrap:wrap;gap:clamp(28px,4vw,64px);margin:0;padding:0;list-style:none;display:flex}.music-album{width:var(--album);color:var(--milk);text-align:left;gap:6px;display:grid}.music-album-cover{aspect-ratio:1;width:100%;transition:transform .32s var(--ease-exact), box-shadow .32s var(--ease-exact);background:#171310;border-radius:4px;display:block;position:relative;overflow:hidden;box-shadow:0 24px 60px #00000080}.music-album-cover img{object-fit:cover;width:100%;height:100%;display:block}.music-album:hover .music-album-cover,.music-album:focus-visible .music-album-cover{transform:translateY(-4px);box-shadow:0 32px 70px #0009}.music-album:focus-visible{outline:none}.music-album:focus-visible .music-album-cover{outline:2px solid var(--milk);outline-offset:4px}.music-album-blank{background:radial-gradient(circle at 28% 24%,#d2a26e4d,#d2a26e00 62%),linear-gradient(135deg,#2c231c,#0e0b09);align-items:flex-end;padding:9%;display:flex;position:absolute;inset:0}.music-album-blank strong{letter-spacing:-.02em;font-size:clamp(18px,2vw,28px);font-weight:560;line-height:1}.music-album-playing{color:var(--milk);font:400 9.5px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0c0a089e;border-radius:999px;align-items:center;gap:7px;padding:6px 10px;display:flex;position:absolute;top:12px;left:12px}.music-album-playing i{background:var(--tungsten);border-radius:50%;width:6px;height:6px}.music-album-name{letter-spacing:-.015em;text-overflow:ellipsis;white-space:nowrap;margin-top:10px;font-size:clamp(17px,1.4vw,22px);font-weight:540;overflow:hidden}.music-album-artist{color:#e5dcceb8;letter-spacing:-.005em;text-overflow:ellipsis;white-space:nowrap;margin-top:-3px;font-size:clamp(14px,1.05vw,16px);font-weight:430;overflow:hidden}.music-album-meta{color:#e5dcce8c;font:400 10.5px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase;margin-top:3px}.music-eyebrow{color:#e5dcce99;font:400 10.5px/1.3 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:9px;display:flex}.music-eyebrow i{opacity:.4;font-style:normal}.music-title{letter-spacing:-.048em;text-wrap:balance;margin:14px 0 clamp(22px,4.2vh,44px);font-size:clamp(42px,5.8vw,92px);font-weight:560;line-height:.92}.music-tracks{scrollbar-width:thin;border-top:1px solid #e5dcce24;align-content:start;min-height:0;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.music-tracks li{border-bottom:1px solid #e5dcce24}.music-track{color:#e5dcceb8;text-align:left;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;min-height:46px;padding:0 10px 0 6px;transition:color .18s,background .18s;display:grid}.music-track:hover,.music-track:focus-visible{color:var(--milk);background:#e5dcce0f}.music-track[data-active=true]{color:var(--tungsten)}.music-track:disabled{opacity:.4;cursor:default}.music-track-number{color:#e5dcce73;font:400 11px/1 var(--font-mono);align-items:center;display:flex}.music-track[data-active=true] .music-track-number{color:var(--tungsten)}.music-track-title{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:500;overflow:hidden}.music-track-time{color:#e5dcce73;font:400 11px/1 var(--font-mono);font-variant-numeric:tabular-nums}.music-now{fill:currentColor;width:11px;height:11px}.music-empty{color:#e5dcce99;font:400 11px/1.5 var(--font-mono)}.music-transport{z-index:2;margin:0 calc(var(--page) * -1);padding:18px var(--page) max(20px, env(safe-area-inset-bottom));background:linear-gradient(#09070600,#090706d1);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(18px,3vw,44px);display:grid;position:relative}.music-transport-buttons,.music-transport-extras,.music-volume{align-items:center;gap:6px;display:flex}.music-play{background:var(--milk);color:#120f0c;width:58px;height:58px;transition:transform .22s var(--ease-exact);border-radius:999px;place-items:center;display:grid}.music-play:hover{transform:scale(1.06)}.music-play:disabled,.music-skip:disabled{opacity:.35;cursor:default}.music-play svg{fill:currentColor;stroke:currentColor;stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.music-skip,.music-toggle{color:#e5dccebd;border-radius:999px;place-items:center;width:42px;height:42px;transition:color .16s,background .16s;display:grid;position:relative}.music-skip:hover,.music-toggle:hover,.music-skip:focus-visible,.music-toggle:focus-visible{color:var(--milk);background:#e5dcce14}.music-skip svg{fill:currentColor;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.music-toggle svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.music-toggle[aria-pressed=true]{color:var(--tungsten)}.music-toggle b{font:600 8px/1 var(--font-mono);position:absolute;top:7px;right:7px}.music-now-playing{gap:4px;min-width:0;display:grid}.music-now-line{white-space:nowrap;align-items:baseline;gap:10px;min-width:0;margin:0 0 0 calc(4.6ch + 14px);display:flex;overflow:hidden}.music-now-line strong{letter-spacing:-.01em;text-overflow:ellipsis;font-size:13px;font-weight:520;overflow:hidden}.music-now-line span{color:#e5dcce8c;font:400 10px/1 var(--font-mono);letter-spacing:.12em;text-transform:uppercase}.music-scrub{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;display:grid}.music-time{color:#e5dcce99;min-width:4.6ch;font:400 11px/1 var(--font-mono);font-variant-numeric:tabular-nums}.music-scrub .music-time:last-child{text-align:right}.music-scrub input{cursor:pointer;appearance:none;background:0 0;width:100%;height:24px}.music-scrub input::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--tungsten) calc(var(--progress) * 100%), #e5dcce33 0);border-radius:3px;height:3px}.music-scrub input::-webkit-slider-thumb{background:var(--milk);opacity:0;-webkit-appearance:none;border-radius:50%;width:13px;height:13px;margin-top:-5px;transition:opacity .16s}.music-scrub:hover input::-webkit-slider-thumb{opacity:1}.music-scrub input:focus-visible::-webkit-slider-thumb{opacity:1}.music-scrub input::-moz-range-track{background:#e5dcce33;border-radius:3px;height:3px}.music-scrub input::-moz-range-progress{background:var(--tungsten);border-radius:3px;height:3px}.music-scrub input::-moz-range-thumb{background:var(--milk);border:0;border-radius:50%;width:13px;height:13px}.music-volume input{cursor:pointer;appearance:none;background:0 0;width:84px;height:24px}.music-volume input::-webkit-slider-runnable-track{background:linear-gradient(to right, #e5dccedb calc(var(--level) * 100%), #e5dcce33 0);border-radius:3px;height:3px}.music-volume input::-webkit-slider-thumb{background:var(--milk);-webkit-appearance:none;border-radius:50%;width:11px;height:11px;margin-top:-4px}.music-volume input::-moz-range-track{background:#e5dcce33;border-radius:3px;height:3px}.music-volume input::-moz-range-progress{background:#e5dccedb;border-radius:3px;height:3px}.music-volume input::-moz-range-thumb{background:var(--milk);border:0;border-radius:50%;width:11px;height:11px}.video-page{background:#0b0908;width:100%;max-width:none;height:100svh;overflow:hidden}.video-reel{--reel-progress:0;height:100svh;color:var(--milk);background:#0b0908;position:relative;overflow:hidden}.reel-stage{inset:var(--header-height) 0 0;isolation:isolate;touch-action:pan-y pinch-zoom;position:absolute;overflow:hidden}.reel-video{z-index:0;object-fit:cover;opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity .7s var(--ease-cinema);background:#0b0908;position:absolute;inset:0}.reel-video[data-active=true]{opacity:1}.reel-canvas{z-index:1;opacity:0;pointer-events:none;transition:opacity .5s var(--ease-exact);position:absolute;inset:0}.reel-canvas canvas{display:block}.video-reel.is-gl .reel-canvas{opacity:1}.video-reel.is-gl .reel-video{opacity:0;transition:opacity 0s .5s}.reel-stage:after{content:"";z-index:2;pointer-events:none;background:linear-gradient(#08060500,#0806054d 52%,#080605c2);height:min(46%,400px);position:absolute;bottom:0;left:0;right:0}.reel-edge{z-index:3;width:clamp(96px,18vw,280px);padding:0 var(--page);color:var(--milk);opacity:0;transition:opacity .26s var(--ease-exact);align-items:center;display:flex;position:absolute;top:0;bottom:0}.reel-edge-prev{background:linear-gradient(90deg,#08060566,#08060500);justify-content:flex-start;left:0}.reel-edge-next{background:linear-gradient(270deg,#08060566,#08060500);justify-content:flex-end;right:0}.reel-edge:hover,.reel-edge:focus-visible{opacity:1}.reel-edge:focus-visible{outline-offset:-8px}.reel-edge span{font:400 10.5px/1 var(--font-mono);letter-spacing:.16em;align-items:center;gap:10px;display:inline-flex}.reel-edge b{transition:transform .26s var(--ease-exact);font-size:15px;font-weight:400}.reel-edge-prev:hover b{transform:translate(-4px)}.reel-edge-next:hover b{transform:translate(4px)}.reel-timecode{z-index:3;top:clamp(16px,2.6vh,26px);right:var(--page);color:#e5dcceb8;font:400 10.5px/1 var(--font-mono);letter-spacing:.1em;font-variant-numeric:tabular-nums;text-shadow:0 1px 8px #0000008c;pointer-events:none;align-items:center;gap:10px;margin:0;display:flex;position:absolute}.reel-timecode i{background:var(--tungsten);border-radius:50%;width:6px;height:6px;animation:2.4s ease-in-out infinite reel-live;box-shadow:0 0 10px #d2a26ecc}.video-reel.is-paused .reel-timecode i{background:0 0;animation:none;box-shadow:inset 0 0 0 1px #e5dcceb3}.reel-controls{z-index:4;bottom:max(22px, env(safe-area-inset-bottom));left:var(--page);max-width:calc(100% - var(--page) * 2);justify-items:start;gap:12px;display:grid;position:absolute}.reel-heading{align-items:flex-end;gap:18px;display:flex}.reel-count{font-variant-numeric:tabular-nums;align-items:baseline;gap:10px;margin:0;display:flex}.reel-count strong{letter-spacing:-.055em;animation:reel-count-in .64s var(--ease-expo) both;font-size:clamp(46px,5.6vw,88px);font-weight:560;line-height:.8}.reel-count span{color:#e5dcce8f;font:400 11px/1 var(--font-mono);letter-spacing:.12em}.reel-pause{width:42px;height:42px;color:var(--milk);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:background .16s, border-color .16s, transform .22s var(--ease-exact);background:#0c0a0857;border:1px solid #e5dcce52;border-radius:999px;place-items:center;display:grid}.reel-pause:hover,.reel-pause:focus-visible{background:#e5dcce1f;border-color:#e5dcceb8}.reel-pause:active{transform:scale(.94)}.reel-pause svg{fill:currentColor;width:15px;height:15px}.reel-name{letter-spacing:-.02em;animation:reel-count-in .64s 60ms var(--ease-expo) both;margin:2px 0 0;font-size:clamp(18px,1.8vw,26px);font-weight:520}.reel-caption{color:#e5dccea8;font:400 10.5px/1.4 var(--font-mono);letter-spacing:.14em;text-transform:uppercase;margin:0}.reel-clips{--clip:clamp(96px, 8.4vw, 150px);gap:10px;margin:8px 0 0;padding:0;list-style:none;display:flex}.reel-clips li{display:block}.reel-clip{width:var(--clip);aspect-ratio:16/9;transition:transform .32s var(--ease-exact);background:#171310;border-radius:3px;display:block;position:relative;overflow:hidden;box-shadow:0 12px 30px #0006}.reel-clip video{object-fit:cover;opacity:.55;filter:saturate(.7);pointer-events:none;width:100%;height:100%;transition:opacity .22s,filter .22s;display:block}.reel-clip:hover,.reel-clip:focus-visible{transform:translateY(-3px)}.reel-clip:hover video,.reel-clip:focus-visible video,.reel-clip[aria-current=true] video{opacity:1;filter:none}.reel-clip:focus-visible{outline:1px solid var(--milk);outline-offset:3px}.reel-clip:before{content:"";z-index:1;border-radius:inherit;pointer-events:none;transition:box-shadow .22s;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #e5dcce24}.reel-clip[aria-current=true]:before{box-shadow:inset 0 0 0 1.5px var(--milk)}.reel-clip:after{content:"";z-index:2;background:var(--tungsten);transform-origin:0;height:2px;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.reel-clip[aria-current=true]:after{transform:scaleX(var(--reel-progress))}.reel-clip-number,.reel-clip-time{z-index:2;color:#e5dccee6;font:400 8.5px/1 var(--font-mono);letter-spacing:.06em;text-shadow:0 1px 3px #000000b3;pointer-events:none;position:absolute}.reel-clip-number{top:6px;left:7px}.reel-clip-time{text-shadow:none;background:#0806059e;border-radius:2px;padding:2px 4px;bottom:6px;right:5px}.reel-empty{color:#e5dcce99;font:400 11px/1.5 var(--font-mono);margin:0;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes reel-count-in{0%{opacity:0;filter:blur(8px);transform:translateY(12px)}to{opacity:1;filter:none;transform:none}}@keyframes reel-live{50%{opacity:.35}}@media (aspect-ratio<=6/5){.reel-video{object-fit:contain}}@media (hover:none){.reel-edge{opacity:0!important}}@media (width<=980px){html:has(.persistent-player) .reel-controls{bottom:calc(max(14px, env(safe-area-inset-bottom)) + 76px)}}.persistent-player{z-index:80;right:var(--page);bottom:max(16px, env(safe-area-inset-bottom));width:min(368px, calc(100vw - var(--page) * 2));color:var(--milk);-webkit-backdrop-filter:blur(18px)saturate(1.25);animation:mini-player-in .6s var(--ease-expo) both;background:#14100db8;border:1px solid #e5dcce24;border-radius:14px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:6px;padding:8px;transition:border-color .2s;display:grid;position:fixed;overflow:hidden;box-shadow:0 18px 48px #0000006b}.persistent-player:hover{border-color:#e5dcce42}.mini-player-now{border-radius:8px;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;min-width:0;display:grid}.mini-player-now:focus-visible{outline-offset:2px}.mini-player-art{aspect-ratio:1;background:#e5dcce14;border-radius:8px;width:44px;overflow:hidden;box-shadow:0 6px 16px #0006}.mini-player-art img{object-fit:cover;width:100%;height:100%;transition:transform .42s var(--ease-exact);display:block}.mini-player-now:hover .mini-player-art img{transform:scale(1.06)}.mini-player-text{gap:4px;min-width:0;display:grid}.mini-player-text strong{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:540;line-height:1.15;overflow:hidden}.mini-player-text span{color:#e5dcce8c;font:400 9.5px/1 var(--font-mono);letter-spacing:.12em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;overflow:hidden}.mini-player-controls{align-items:center;gap:2px;display:flex}.mini-player-skip{color:#e5dccec2;border-radius:999px;place-items:center;width:32px;height:32px;transition:color .16s,background .16s;display:grid}.mini-player-skip:hover,.mini-player-skip:focus-visible{color:var(--milk);background:#e5dcce17}.mini-player-skip svg{fill:currentColor;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.mini-player-play{background:var(--milk);color:#120f0c;width:38px;height:38px;transition:transform .22s var(--ease-exact);border-radius:999px;place-items:center;display:grid}.mini-player-play:hover{transform:scale(1.06)}.mini-player-play svg{fill:currentColor;stroke:currentColor;stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.mini-player-close{color:#e5dcce80;border-radius:999px;place-items:center;width:28px;height:28px;margin-left:4px;transition:color .16s,background .16s;display:grid;position:relative}.mini-player-close:before{content:"";background:#e5dcce24;width:1px;position:absolute;top:4px;bottom:4px;left:-5px}.mini-player-close:hover,.mini-player-close:focus-visible{color:var(--milk);background:#e5dcce17}.mini-player-close svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:13px;height:13px}.mini-player-progress{pointer-events:none;background:#e5dcce1a;border-radius:2px;height:2px;position:absolute;bottom:0;left:14px;right:14px}.mini-player-progress:after{content:"";border-radius:inherit;background:var(--tungsten);transform:scaleX(var(--progress,0));transform-origin:0;transition:transform .26s linear;position:absolute;inset:0}@keyframes mini-player-in{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:none}}@keyframes hero-name-in{0%{clip-path:inset(0 0 100%);transform:translateY(42%)}to{clip-path:inset(-12% -2% -22%);transform:translateY(0)}}@keyframes rise-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes rise-in-tight{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes settle-in{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes warm-up-in{0%{opacity:0;filter:blur(10px)brightness(.45);transform:scale(.985)}to{opacity:1;filter:blur()brightness();transform:scale(1)}}@keyframes ease-scale-in{0%{transform:scale(1.012)}to{transform:scale(1)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}html[data-entrance=done] .hero-name,html[data-entrance=done] .hero-role,html[data-entrance=done] .hero-sentence,html[data-entrance=done] .hero-measure,html[data-entrance=done] .interior-hero>*,html[data-entrance=done] .case-hero>*,html[data-entrance=done] .tableau-link,html[data-entrance=done] .music-panel,html[data-entrance=done] .reel-controls,html[data-entrance=done] .reel-timecode,html[data-entrance=done] .gallery-canvas,html[data-entrance=done] .gallery-chrome{animation:none}.hero-name{animation:hero-name-in 1.05s var(--ease-quart) both}.hero-role{animation:rise-in .72s .47s var(--ease-exact) both}.hero-sentence{animation:rise-in .72s .56s var(--ease-exact) both}.hero-measure{animation:rise-in-tight .52s .68s var(--ease-exact) both}.interior-hero>*,.case-hero>*{animation:rise-in-tight .72s var(--ease-exact) both}.interior-hero>:nth-child(2),.case-hero>:nth-child(2):nth-child(2){animation-delay:55ms}.interior-hero>:nth-child(3),.case-hero>:nth-child(3):nth-child(3){animation-delay:.11s}.interior-hero>:nth-child(4),.case-hero>:nth-child(4):nth-child(4){animation-delay:.165s}.interior-hero>:nth-child(5),.case-hero>:nth-child(5):nth-child(5){animation-delay:.22s}.interior-hero>:nth-child(n+6),.case-hero>:nth-child(n+6):nth-child(n+6){animation-delay:.275s}.tableau-link{animation:settle-in 1.1s var(--ease-expo) both}.tableau-link:nth-child(2){animation-delay:85ms}.tableau-link:nth-child(3){animation-delay:.17s}.music-panel{animation:rise-in .8s .14s var(--ease-exact) both}.reel-controls{animation:rise-in .8s .16s var(--ease-exact) both}.reel-timecode{animation:fade-in .72s .32s var(--ease-exact) both}.gallery-canvas{animation:ease-scale-in .82s var(--ease-exact) both}.gallery-chrome{animation:fade-in .72s .22s var(--ease-exact) both}@media (width<=900px){:root{--page:24px}.site-header{grid-template-columns:1fr auto auto;gap:16px}.primary-nav{display:none}.menu-toggle,.site-menu{display:grid}.identity-mark>span:not(.cola-mark){grid-template-columns:1fr;gap:3px}.identity-mark i{display:none}.professional-hero{min-height:820px}.hero-name{font-size:clamp(52px,8.8vw,80px)}.hero-role{grid-column:1/5}.hero-sentence{grid-column:5/-1}.hero-measure{grid-column:1/-1}.project-entry-copy{grid-column:1/6}.project-entry-visual{grid-column:6/-1;min-height:240px}.project-entry:nth-child(2n) .project-entry-copy{grid-column:8/-1}.project-entry:nth-child(2n) .project-entry-visual{grid-column:1/7}.about-compact>p,.capabilities-compact>div{margin-left:25%}}@media (width<=680px){:root{--page:18px;--header-height:64px}body{font-size:15px}.site-header{min-height:var(--header-height)}.identity-mark b{font-size:12px}.cola-trigger{gap:9px;min-width:62px}.professional-hero{flex-direction:column;min-height:max(740px,100svh);padding-top:132px;padding-bottom:24px;display:flex}.hero-name{letter-spacing:-.057em;max-width:92vw;font-size:clamp(46px,14.3vw,68px);line-height:.86}.hero-role{margin-top:17px}.hero-role span{font-size:15px}.hero-sentence{max-width:310px;margin-top:clamp(72px,13vh,120px);font-size:20px}.hero-measure{margin-top:auto;padding-top:28px}.professional-section{padding-block:72px}.compact-section-header{margin-bottom:52px;display:block}.compact-section-header>p{margin-top:16px}.project-sequence{gap:100px}.project-entry,.project-entry:nth-child(2n){flex-direction:column-reverse;align-items:stretch;min-height:0;display:flex}.project-entry:nth-child(2n){flex-direction:column-reverse}.project-entry-copy{max-width:none}.project-entry-visual{aspect-ratio:16/9;width:100%;min-height:0}.project-entry h3{font-size:27px}.experience-compact article{grid-template-columns:1fr auto;gap:18px}.experience-compact article>p:nth-child(2){grid-area:2/1/auto/-1}.experience-compact article>p:last-child{grid-area:1/2}.about-compact>p,.capabilities-compact>div{margin-left:0}.about-compact>p{font-size:25px}.capabilities-compact>div p{grid-template-columns:1fr;gap:7px}.contact-compact{display:block}.contact-compact>p{margin:14px 0 26px}.professional-footer{display:grid}.scroll-to-top{right:max(14px, env(safe-area-inset-right));bottom:max(14px, env(safe-area-inset-bottom));width:36px;height:36px}.interior-page,.case-study{padding-top:120px}.interior-hero{min-height:320px;display:block}.interior-hero h1{margin:42px 0 20px}.resume-page-header{padding-bottom:34px;display:block}.resume-page-header h1{margin-top:22px}.resume-actions{justify-content:flex-start;margin-top:30px}.resume-document,.resume-document object{height:74svh;min-height:74svh}.case-hero{display:block}.case-hero h1{margin-top:40px}.case-summary{margin-top:22px}.case-art{aspect-ratio:4/3;height:auto;margin-top:52px}.case-facts{grid-template-columns:1fr 1fr;gap:24px}.case-overview{grid-template-columns:1fr;gap:52px;padding:72px 0}.case-modules{display:block}.decision-module>div{grid-template-columns:1fr}.glass-lab{padding-top:130px;display:block}.lab-test-pattern{min-height:340px;margin-top:60px}.lab-test-pattern dl{grid-template-columns:1fr}.glass-lab-panel{bottom:10px;left:10px;right:10px;overflow-x:auto}.tableau-photo{width:76%;height:49%;top:33.5%;left:11%}.tableau-video{width:41%;height:34%;top:56%;left:48.5%}.tableau-music{width:32%;height:23%;top:19.5%;left:47%}.tableau-link{padding:10px}.tableau-link>span{top:8px;left:8px}.tableau-video>span{left:auto;right:8px}.gallery-chrome{top:calc(var(--header-height) + 16px);bottom:auto}.gallery-count strong{font-size:40px}.dialog-previous,.dialog-next{top:auto;bottom:max(14px, env(safe-area-inset-bottom));transform:none}.dialog-previous:hover,.dialog-next:hover{transform:none}.dialog-previous{left:auto;right:74px}.dialog-close{top:10px;right:12px}.dialog-caption{bottom:max(26px, calc(env(safe-area-inset-bottom) + 12px));left:18px}.gallery-dialog{padding:54px 18px 42px}.gallery-dialog-media{width:fit-content;max-width:100%;height:fit-content;max-height:78svh}.gallery-dialog-media>img{max-width:100%!important;max-height:78svh!important}.music-room{padding-top:calc(var(--header-height) + 12px)}.music-layout{overscroll-behavior:contain;scrollbar-width:none;grid-template-columns:minmax(0,1fr);align-self:start;justify-items:center;gap:16px;max-height:100%;overflow-y:auto}.music-layout::-webkit-scrollbar{display:none}.music-cover{width:min(66vw,36vh)}.music-panel{width:100%}.music-title{margin:8px 0 14px;font-size:clamp(32px,9.5vw,46px)}.music-library{--bleed:var(--page);width:calc(100% + var(--bleed) * 2);align-self:start}.music-albums{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px;display:grid}.music-album{width:100%}.music-album-name{font-size:15px}.music-album-artist{font-size:13.5px}.music-track{min-height:44px}.music-transport{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:"scrub scrub scrub"".buttons extras";gap:8px 6px;padding-top:10px}.music-now-playing{grid-area:scrub}.music-now-line{margin-left:0}.music-transport-buttons{grid-area:buttons}.music-transport-extras{grid-area:extras;justify-self:end;gap:0}.music-volume{display:none}.reel-controls{right:var(--page);justify-items:stretch;gap:10px}.reel-heading{justify-content:space-between}.reel-count strong{font-size:44px}.reel-clips{--clip:calc((100vw - var(--page) * 2 - 24px) / 5);gap:6px}.reel-clip-time{display:none}.reel-edge{width:30%}.reel-edge span{display:none}.persistent-player{right:12px;bottom:max(12px, env(safe-area-inset-bottom));width:auto;left:12px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}
