.card.is-previewing .portfolio-film-preview{opacity:1}.hold-preview-hint{display:none}.portfolio-grid .card-copy h3{color:var(--green)}@media(hover:none),(pointer:coarse){.card.has-hold-preview{touch-action:pan-y pinch-zoom;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.card.has-hold-preview img{pointer-events:none;-webkit-user-drag:none}.portfolio-page .portfolio-grid .card.has-hold-preview .card-copy{z-index:2;min-height:0;padding:9px 10px;opacity:1;transform:none;background:linear-gradient(to bottom,#090a0d35,#090a0da6);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.portfolio-grid .card.has-hold-preview .card-copy p,.portfolio-grid .card.has-hold-preview .media-label{display:none}.portfolio-grid .has-hold-preview .preview-title{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .25s ease,opacity .25s ease}.portfolio-grid .has-hold-preview .preview-title>div{overflow:hidden;min-height:0}.portfolio-grid .has-hold-preview.is-previewing .preview-title{grid-template-rows:1fr;opacity:1}.portfolio-page .portfolio-grid .has-hold-preview .card-copy h3{margin:0;color:var(--green)}.hold-preview-hint{display:block;margin:0;max-height:3em;overflow:hidden;font-size:12px;line-height:1.4;font-weight:500;color:#fff;transition:max-height .25s ease,opacity .2s ease}.is-previewing .hold-preview-hint{max-height:0;opacity:0}}@media(prefers-reduced-motion:reduce){.hold-preview-hint{display:none}.portfolio-grid .has-hold-preview .preview-title{grid-template-rows:1fr;opacity:1;transition:none}}.wrap.detail.cave-case-study{--cave-accent:#c2ae83;width:min(1080px,calc(100% - 64px));max-width:none;padding:42px 0 30px}.cave-case-study .eyebrow{color:var(--green);font-size:10px;letter-spacing:.15em;margin:0 0 24px}.cave-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;padding:70px 0 85px}.cave-case-study .cave-intro h1{font-size:clamp(46px,6vw,78px);font-weight:400;letter-spacing:-.06em;line-height:1.02;margin:0}.cave-case-study p{font-size:14px;line-height:1.8;color:#a2a5aa;margin:0}.cave-case-study .cave-lede{font-size:25px;line-height:1.35;color:#ecebe6;margin:0 0 22px}.cave-intro dl{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;border-top:1px solid var(--line);padding:22px 0 0;margin:26px 0 0}.cave-intro dt{font-size:9px;color:#93969e;text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}.cave-intro dd{margin:0;font-size:11px}.cave-chapter{padding:52px 0 60px;border-top:1px solid var(--line)}.cave-heading{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-bottom:34px}.cave-case-study h2{font-size:clamp(30px,3.5vw,44px);line-height:1.08;font-weight:400;letter-spacing:-.045em;margin:0}.cave-case-study figure{margin:0;min-width:0}.cave-case-study figure a{display:block}.cave-case-study img{display:block;width:100%;height:auto;border-radius:5px}.cave-case-study figcaption{font-size:9px;color:#95999f;letter-spacing:.07em;text-transform:uppercase;line-height:1.7;padding:12px 0 0}.cave-film-layout{display:grid;grid-template-columns:1fr;gap:32px;justify-items:center}.cave-film{width:min(100%,440px);margin-inline:auto!important}.cave-film video{display:block;width:100%;aspect-ratio:9/16;object-fit:contain;background:#08090b;border-radius:6px}.cave-film-notes{width:min(100%,600px);padding:0;text-align:center}.cave-film-notes h3{font-size:27px;font-weight:400;letter-spacing:-.03em}.cave-palette{display:flex;justify-content:center;gap:8px;margin-top:38px}.cave-palette span{width:40px;height:5px;background:#747570}.cave-palette span:nth-child(2){background:#ad7846}.cave-palette span:nth-child(3){background:#355a81}.cave-case-study .cave-note{font-size:10px;margin-top:12px}.cave-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.cave-triptych{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:35px}.cave-duo{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:35px auto 0;max-width:780px}.cave-end{padding:60px 0 70px;border-top:1px solid var(--line)}.cave-end p:not(.eyebrow){max-width:480px;margin:25px 0}.cave-end a{color:var(--cave-accent);font-size:13px}.cave-case-study footer{width:100%;margin:0;padding:24px 0;border-top:1px solid var(--line)}.cave-case-study a:focus-visible,.cave-case-study video:focus-visible{outline:2px solid var(--cave-accent);outline-offset:5px}.card .portfolio-film-preview{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;pointer-events:none;opacity:0;transition:opacity .25s}.card:hover .portfolio-film-preview,.card:focus-visible .portfolio-film-preview{opacity:1}@media(max-width:760px){.wrap.detail.cave-case-study{width:calc(100% - 36px);padding-top:30px}.cave-intro{grid-template-columns:1fr;gap:30px;padding:45px 0 55px}.cave-heading{grid-template-columns:1fr;gap:20px}.cave-film-layout{grid-template-columns:1fr;gap:28px}.cave-film-notes{padding:0}.cave-grid{grid-template-columns:1fr;gap:25px}.cave-triptych{gap:10px}.cave-duo{gap:14px}.cave-chapter{padding:38px 0 42px}.cave-case-study figcaption{font-size:8px}.cave-case-study footer{gap:20px;font-size:10px}.cave-film{max-width:400px}.cave-palette{margin-top:24px}}@media(prefers-reduced-motion:reduce){.card .portfolio-film-preview{display:none}}.case-study-sound{position:fixed;z-index:30;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));padding:12px 18px;border:1px solid #c1ff8050;border-radius:30px;background:#090a0d;color:var(--green);font-size:13px}.case-study-sound:focus-visible{outline:2px solid var(--green);outline-offset:4px}.wrap.detail.illustrator-case-study{--illustrator-accent:#d5e887;width:min(1080px,calc(100% - 64px));max-width:none;padding:0 0 36px}.illustrator-case-study .eyebrow{color:var(--illustrator-accent);letter-spacing:.16em;font-size:10px;font-weight:700;margin:0 0 24px}.illustrator-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:100px 0 88px}.illustrator-case-study .illustrator-intro h1{font-size:clamp(56px,7vw,92px);font-weight:400;letter-spacing:-.065em;line-height:.95;margin:0}.illustrator-intro-copy{padding-top:30px}.illustrator-case-study .illustrator-intro-copy p,.illustrator-case-study .illustrator-heading-row p,.illustrator-case-study .illustrator-notes p:not(.eyebrow){font-size:14px;color:#9c9da3;line-height:1.8;margin:0}.illustrator-case-study .illustrator-intro-copy .illustrator-lede{font-size:23px;line-height:1.4;color:var(--text);margin:0 0 18px;letter-spacing:-.025em}.illustrator-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;border-top:1px solid var(--line);padding-top:19px;margin:26px 0 0}.illustrator-meta dt{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:#9c9da3;margin-bottom:9px}.illustrator-meta dd{margin:0;font-size:12px}.illustrator-chapter{padding:58px 0 26px;border-top:1px solid var(--line)}.illustrator-section-heading{margin-bottom:32px}.illustrator-heading-row{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:start}.illustrator-case-study h2{font-size:clamp(29px,3.2vw,43px);letter-spacing:-.045em;line-height:1.08;font-weight:400;margin:0}.illustrator-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 22px;margin-bottom:44px}.illustrator-artwork,.illustrator-showcase{margin:0;min-width:0}.illustrator-artwork a{display:block;background:#121316;border:1px solid var(--line);border-radius:8px;overflow:hidden}.illustrator-artwork img{display:block;width:100%;height:auto}.illustrator-case-study figcaption{color:#92959d;text-transform:uppercase;letter-spacing:.075em;font-size:9px;line-height:1.6;padding:13px 2px 0}.illustrator-gallery--campaigns .illustrator-artwork:first-child{grid-row:span 2;align-self:center}.illustrator-gallery--campaigns .illustrator-artwork:not(:first-child) img{aspect-ratio:1;object-fit:contain}.illustrator-gallery--packaging .illustrator-artwork:first-child,.illustrator-gallery--packaging .illustrator-artwork:last-child,.illustrator-gallery--character .illustrator-artwork:first-child,.illustrator-gallery--illustration .illustrator-artwork:last-child,.illustrator-gallery--collections .illustrator-artwork{grid-column:1/-1}.illustrator-gallery--packaging .illustrator-artwork:nth-child(2) img,.illustrator-gallery--packaging .illustrator-artwork:nth-child(3) img{aspect-ratio:.9;object-fit:contain}.illustrator-gallery--illustration .illustrator-artwork:not(:last-child) img{aspect-ratio:.94;object-fit:contain}.illustrator-gallery--identity .illustrator-artwork:first-child{grid-row:span 2}.illustrator-gallery--identity .illustrator-artwork:last-child{grid-column:1/-1;width:min(460px,100%);justify-self:center}.illustrator-showcase{margin-bottom:44px}.illustrator-showcase video{display:block;width:100%;aspect-ratio:16/9;background:#101114;border:1px solid var(--line);border-radius:8px;object-fit:contain}.illustrator-notes{border-top:1px solid var(--line);padding:60px 0 65px}.illustrator-case-study .illustrator-notes p:not(.eyebrow){max-width:560px;margin:24px 0}.illustrator-notes a{display:inline-block;font-size:12px;margin-top:14px;color:var(--illustrator-accent)}.illustrator-case-study footer{width:100%;margin:0;border-top:1px solid var(--line);padding:24px 0;font-size:9px;text-transform:uppercase;letter-spacing:.12em}.illustrator-case-study a:focus-visible{outline:2px solid var(--illustrator-accent);outline-offset:5px}@media(max-width:700px){.wrap.detail.illustrator-case-study{width:calc(100% - 36px)}.illustrator-intro{grid-template-columns:1fr;gap:28px;padding:60px 0}.illustrator-intro-copy{padding:0}.illustrator-heading-row{grid-template-columns:1fr;gap:20px}.illustrator-gallery{grid-template-columns:1fr;gap:24px}.illustrator-gallery .illustrator-artwork{grid-column:auto;grid-row:auto}.illustrator-chapter{padding-top:40px}.illustrator-gallery--identity .illustrator-artwork:last-child{width:100%;max-width:460px}.illustrator-gallery--campaigns .illustrator-artwork:not(:first-child) img,.illustrator-gallery--packaging .illustrator-artwork:nth-child(2) img,.illustrator-gallery--packaging .illustrator-artwork:nth-child(3) img{aspect-ratio:auto}.illustrator-case-study footer{gap:20px;line-height:1.6}}:root{color-scheme:dark;color-scheme:only dark;background-color:#08090c}:root{--ink:#090a0d;--line:#ffffff18;--text:#efeff5;--muted:#9798aa;--green:#c1ff80;--purple:#9470ff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--ink);color:var(--text);font-family:Arial,Helvetica,sans-serif}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.055;z-index:10;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23n)' opacity='.7' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}header{position:sticky;top:0;z-index:20;background:#090a0ddd;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--line)}.nav{max-width:1160px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:22px 28px}.name{font-family:Georgia,serif;font-style:italic;font-weight:700;font-size:25px;letter-spacing:-1px}.nav-links{display:flex;gap:28px;align-items:center;font-size:12px;color:#c8c7d2}.nav-links a:last-child{border:1px solid #c1ff8050;border-radius:30px;padding:10px 16px;color:var(--green)}.preview-bar{background:#14141d;border-bottom:1px solid var(--line);display:flex;justify-content:center;align-items:center;gap:16px;padding:10px 20px;font-size:10px;letter-spacing:1px;color:#b0aec3}.preview-bar button{border:0;background:none;color:var(--green);font-size:11px}.wrap{max-width:1100px;margin:auto;padding:0 28px}.hero{position:relative;height:620px;isolation:isolate;overflow:hidden}.hero:before{content:"";position:absolute;top:-20%;right:-10%;bottom:-20%;left:-10%;background:radial-gradient(ellipse at 61% 45%,#6743bd65,transparent 36%),radial-gradient(ellipse at 38% 35%,#26478055,transparent 35%);filter:blur(42px);z-index:-1}.hero-top{text-align:center;padding-top:45px;font-size:10px;letter-spacing:3px;color:#a4a0b9}.dot{display:inline-block;width:5px;height:5px;background:var(--green);border-radius:50%;margin-right:10px}.portrait{position:absolute;bottom:0;left:50%;transform:translate(-50%);width:400px;height:490px;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 0 40px #9576ff12);-webkit-mask-image:linear-gradient(#000 85%,transparent);mask-image:linear-gradient(#000 85%,transparent)}.logo{position:absolute;width:61px;height:61px;border:1px solid #ffffff21;border-radius:16px;display:grid;place-items:center;background:#171723;box-shadow:0 10px 35px #0005;color:#ddd;font-weight:700;font-size:24px;transform:rotate(var(--r));transition:transform .3s,border-color .3s;z-index:3}.logo:hover,.logo:focus{transform:rotate(0);border-color:var(--green)}.logo .peek{display:none;position:absolute;top:72px;left:0;width:200px;height:125px;border-radius:14px;border:1px solid #ffffff30;background:radial-gradient(ellipse at 65% 10%,#6041a8,#15152c 60%);padding:15px;color:#fff;text-align:left;font-size:11px;box-shadow:0 20px 50px #0009}.logo:hover .peek,.logo:focus .peek{display:flex;flex-direction:column;justify-content:space-between}.peek small{font-weight:400;color:#bfb5da}.u{left:18%;top:145px;--r:-15deg}.b{right:19%;top:133px;--r:15deg;color:#f9a05d}.m{left:29%;top:290px;--r:12deg;color:#6de0d2}.pr{right:12%;top:285px;--r:-17deg;color:#b9a0ff}.ai{left:11%;top:397px;--r:-12deg;color:#ffba5c}.ae{left:29%;top:510px;--r:15deg;color:#bdadff}.pt{right:27%;top:437px;--r:12deg;color:#c1ff80}.hero-caption{position:absolute;bottom:18px;right:2%;color:#8d88a3;font-size:10px;line-height:1.7;max-width:150px}.role{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:25px 0 29px;display:flex;align-items:center;justify-content:space-between;gap:20px}.role h1{margin:0;font-size:clamp(24px,4.5vw,56px);font-weight:500;letter-spacing:-2px}.role span{font-size:9px;color:var(--green);letter-spacing:1.5px;white-space:nowrap}.section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:78px 0 26px}.eyebrow{color:var(--green);font-size:10px;text-transform:uppercase;letter-spacing:2px;margin-bottom:12px}h2{font-size:37px;font-weight:400;letter-spacing:-1.5px;margin:0}.section-head p{font-size:12px;color:var(--muted);max-width:245px;line-height:1.6;margin:0}.projects{display:grid;grid-template-columns:1fr 1fr;gap:22px}.card{position:relative;border-radius:22px;overflow:hidden;border:1px solid var(--line);aspect-ratio:9/16;background:#141421;display:block;isolation:isolate}.wide{grid-column:span 2;aspect-ratio:16/9}.art{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 70% 20%,#544097,transparent 58%),linear-gradient(145deg,#17152a,#0b1018 70%);transition:filter .4s}.art:before{content:"";position:absolute;width:44%;height:70%;left:30%;top:15%;border:3px solid #b7a0fc66;border-radius:50%;transform:rotate(35deg);box-shadow:inset 20px 0 45px #8671ca55,18px 0 55px #6861bc33}.art:after{content:"";position:absolute;width:25%;height:46%;left:40%;top:27%;border-radius:50%;background:linear-gradient(120deg,#c3aff1,#2c254b 30%,#10131f 70%,#69875e);transform:rotate(35deg);box-shadow:10px 20px 40px #0008}.mint .art{background:radial-gradient(ellipse at 60% 35%,#314d42,transparent 60%),#0f1717}.mint .art:after{background:linear-gradient(120deg,#c6efa2,#243c36 40%,#0d1618)}.blue .art{background:radial-gradient(ellipse at 35% 40%,#244884,transparent 65%),#0d1322}.warm .art{background:radial-gradient(ellipse at 60% 20%,#614267,transparent 60%),#171019}.card:nth-child(2n) .art:before{border-radius:24%;transform:rotate(-30deg)}.card:nth-child(2n) .art:after{border-radius:24%;transform:rotate(-30deg)}.media-label{position:absolute;left:22px;top:21px;font-size:9px;letter-spacing:1.6px;color:#dbd6ef99}.ratio{position:absolute;right:20px;top:18px;background:#08081055;border:1px solid #ffffff20;border-radius:20px;padding:6px 9px;color:#e5dffa9c;font-size:9px}.card-copy{position:absolute;bottom:0;left:0;right:0;padding:60px 28px 26px;background:linear-gradient(transparent,#0a0a13c9 40%,#0a0a13ee);transform:translateY(44px);transition:transform .35s}.card-copy h3{font-size:26px;font-weight:400;margin:5px 0 10px;letter-spacing:-.6px}.card-copy small{font-size:9px;text-transform:uppercase;letter-spacing:2px;color:var(--green)}.card-copy p{font-size:12px;color:#bdb9cd;margin:0;line-height:1.7;opacity:0;transition:opacity .35s}.arrow{position:absolute;right:27px;bottom:29px;color:var(--green);font-size:25px}.card:hover .art,.card:focus .art{filter:brightness(.65)}.card:hover .card-copy,.card:focus .card-copy{transform:translateY(0)}.card:hover .card-copy p,.card:focus .card-copy p{opacity:1}.note{color:#7e7c8c;font-size:10px;line-height:1.8;margin:14px 0}.about{margin-top:90px;padding:65px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:70px}.about h2{font-family:Georgia,serif;font-style:italic;font-size:65px;line-height:1.05;color:#c8b9fa}.about p{font-size:14px;line-height:1.9;color:#b3afc2;margin:0 0 25px}.experience{display:flex;justify-content:space-between;padding:17px 0;border-top:1px solid var(--line);font-size:11px;color:#aaa5bd}.experience span:last-child{color:#716c83}.skills{padding:65px 0 85px}.tags{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px;max-width:800px}.tags span{padding:12px 18px;background:#15151d;border:1px solid #ffffff14;border-radius:8px;font-size:12px;color:#cbc8d9}.contact{border:1px solid var(--line);border-radius:26px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;min-height:420px;background:#101017;margin:0 0 40px}.object{position:relative;background:radial-gradient(ellipse at 50% 50%,#47326d77,transparent 65%),#0c0e14;min-height:380px;display:grid;place-items:center}.ring{width:180px;height:230px;border:28px solid #8e78b6;border-right-color:#282134;border-bottom-color:#463664;border-radius:50%;transform:rotate(-30deg) skewY(12deg);box-shadow:inset 10px 0 20px #0008,20px 20px 70px #302042}.object small{position:absolute;bottom:25px;font-size:9px;letter-spacing:1.5px;color:#a393b6}.contact-copy{padding:55px 40px}.contact h2{font-size:44px;line-height:1.08;max-width:260px}.contact-list{margin-top:32px}.contact-row{display:flex;justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--line);font-size:12px}.contact-row span:last-child{color:var(--green)}footer{display:flex;justify-content:space-between;padding:20px 0 38px;font-size:10px;color:#757181}.detail{display:none;padding-top:65px}.detail.open{display:block}.home.hidden{display:none}.detail-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin:35px 0 45px}.detail h1{font-size:70px;font-weight:400;letter-spacing:-3px;margin:0}.detail p{color:#a7a2b8;line-height:1.9;font-size:14px}.detail .card{pointer-events:none}.detail-meta{display:flex;gap:35px;color:#b4aeca;font-size:10px;border-top:1px solid var(--line);padding-top:18px}.detail-split{display:grid;grid-template-columns:1fr 1fr;gap:45px;align-items:center;margin:45px 0}.detail-split .card{aspect-ratio:1}.detail .back{color:var(--green);font-size:12px}.detail h2{font-size:34px}.detail-end{padding:55px 0;text-align:center}.detail-end button{border:1px solid #c1ff8050;border-radius:30px;background:transparent;color:var(--green);padding:13px 22px}.instruction{padding:14px 0;color:#8d879d;font-size:11px;line-height:1.7}@media(max-width:700px){.nav{padding:17px 16px}.name{font-size:20px}.nav-links{gap:12px;font-size:10px}.nav-links a:last-child{padding:7px}.wrap{padding:0 18px}.hero{height:510px}.portrait{width:300px;height:390px}.hero-top{font-size:8px}.logo{width:42px;height:42px;border-radius:11px;font-size:18px}.u{left:8%;top:120px}.b{right:10%;top:125px}.m{left:19%;top:240px}.pr{right:4%;top:260px}.ai{left:4%;top:355px}.ae{left:20%;top:425px}.pt{right:14%;top:390px}.hero-caption{display:none}.role{display:block}.role h1{font-size:31px;letter-spacing:-1px}.role span{display:block;margin-top:14px}.section-head{margin-top:55px}.section-head p{max-width:150px;font-size:10px}h2{font-size:29px}.projects{gap:12px}.card{border-radius:14px}.card-copy{padding:40px 15px 15px;transform:none}.card-copy h3{font-size:17px}.card-copy p{display:none}.card-copy small,.media-label,.ratio{font-size:7px}.media-label{left:12px;top:15px}.ratio{right:10px;top:9px}.arrow{right:12px;bottom:13px;font-size:17px}.about{grid-template-columns:1fr;gap:30px;margin-top:55px;padding:40px 0}.about h2{font-size:52px}.contact{grid-template-columns:1fr}.object{min-height:290px}.contact-copy{padding:35px 25px}.detail-intro,.detail-split{grid-template-columns:1fr;gap:20px}.detail h1{font-size:50px}.detail-split{margin:30px 0}.preview-bar{gap:10px;letter-spacing:0;font-size:9px}.tags span{padding:10px 13px}.section-head{align-items:start}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}body{min-width:1100px}.card-copy{transform:none}.card-copy p{opacity:1}a,.logo{cursor:pointer}:root{--hero-width:94vw;--gallery-width:70.5vw;--reading-width:58.75vw;--role-height:clamp(84px,12svh,145px)}body{min-width:0;isolation:isolate;background:#08090c}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;pointer-events:none;background:radial-gradient(ellipse at 58% 32%,#59388955,transparent 43%),radial-gradient(ellipse at 35% 45%,#25457838,transparent 45%)}body:before{z-index:-1;opacity:.018;background-size:160px 160px}header{height:84px;position:sticky;top:0}.nav{height:100%;max-width:none;width:var(--hero-width);padding:0;margin:auto}.nav-links{gap:clamp(18px,2vw,45px);font-size:clamp(12px,.85vw,18px)}.name{font-family:Georgia,Times New Roman,serif;font-size:clamp(25px,2.2vw,46px);font-weight:600;letter-spacing:-1.5px;perspective:500px;white-space:nowrap}.name span{display:inline-block;transform-origin:center;transition:color .3s}.name:hover .name-letters span{animation:nameFlip .7s ease-in-out both;animation-delay:calc(var(--i)*24ms)}@keyframes nameFlip{0%{transform:rotateY(0)}45%{transform:rotateY(180deg);color:#c1ff80}to{transform:rotateY(360deg)}}.wrap.home{width:100%;max-width:none;padding:0}.hero{width:var(--hero-width);height:max(280px,calc(100svh - 84px - var(--role-height)));margin:auto;overflow:visible;isolation:auto}.hero:before{display:none}.hero-top{padding-top:clamp(15px,3svh,35px);font-size:clamp(9px,.7vw,13px)}.portrait{height:89%;width:48%;max-width:none;bottom:0;object-fit:contain;object-position:center bottom;-webkit-mask-image:linear-gradient(#000 94%,transparent);mask-image:linear-gradient(#000 94%,transparent)}.logo-mark{display:flex;align-items:center;justify-content:center;width:100%;height:100%;overflow:visible}.logo-mark img{display:block;width:100%;height:100%;object-fit:contain;border-radius:0;background:transparent}.logo{width:clamp(48px,4.1vw,90px);height:clamp(48px,4.1vw,90px);font-size:0;border-radius:0;z-index:3;cursor:pointer;background:none;border:none;box-shadow:none}.logo:hover,.logo:focus{z-index:12;outline:none}.u{left:17%;top:20%}.b{right:18%;top:18%}.m{left:27%;top:44%}.pr{right:12%;top:44%}.ai{left:17%;top:63%}.ae{left:22.5%;top:81%}.pt{right:18%;top:68%}.gpt{right:9%;top:83%;--r:12deg;color:#d9f6ee;font-size:0}.logo .peek{width:clamp(200px,17vw,300px);height:160px;top:calc(100% + 10px);left:0;font-size:12px;border-radius:15px;z-index:15;transform:none}.pr .peek,.b .peek{left:auto;right:0}.ae .peek,.pt .peek,.gpt .peek,.ai .peek{top:auto;bottom:calc(100% + 10px)}.pt .peek,.gpt .peek{left:auto;right:0}.hero-caption{display:none}.role{width:var(--hero-width);height:var(--role-height);margin:auto;padding:12px 0;display:flex;justify-content:center;align-items:center;text-align:center}.role h1{font-size:clamp(28px,4.25vw,96px);font-weight:750;letter-spacing:-.035em;line-height:1.04;white-space:nowrap}.role>span{display:none}#portfolio{width:var(--gallery-width);margin:0 auto}.section-head{margin-top:65px}.projects{gap:24px}.card-copy{transform:translateY(100%);opacity:0;padding:40px 30px 28px;background:linear-gradient(180deg,#18162520,#171421b0 35%,#0f0e1acc);-webkit-backdrop-filter:blur(16px) saturate(.8);backdrop-filter:blur(16px) saturate(.8);border-top:1px solid #ffffff20;transition:transform .45s ease,opacity .35s ease;min-height:28%}.card-copy p{opacity:0;transition:opacity .4s .08s}.card-copy h3{font-size:clamp(24px,2vw,42px)}.projects .card:hover .card-copy,.projects .card:focus .card-copy{transform:translateY(0);opacity:1}.projects .card:hover .card-copy p,.projects .card:focus .card-copy p{opacity:1}.projects .card:hover .art,.projects .card:focus .art{filter:brightness(.6)}.arrow{opacity:0;transition:opacity .3s}.card:hover .arrow,.card:focus .arrow{opacity:1}#about,#skills,#contact,.home>footer{width:var(--reading-width);margin-left:auto;margin-right:auto}.about{grid-template-columns:1fr 1fr;gap:55px}.skills{padding-top:65px}.contact{grid-template-columns:1fr 1fr}.wrap.detail{width:var(--reading-width);max-width:none;padding-left:0;padding-right:0}.detail-intro,.detail-split{grid-template-columns:1fr 1fr}.detail .art{filter:none}.detail-end{cursor:pointer}@media(prefers-reduced-motion:reduce){.name:hover .name-letters span{animation:none}}.name{font-family:Brush Script MT,Segoe Script,cursive;font-size:clamp(32px,2.9vw,60px);font-weight:400;letter-spacing:0;line-height:1.1}.role h1{font-family:Agency FB,Bahnschrift Condensed,sans-serif;font-weight:700;font-size:clamp(34px,5.2vw,112px);letter-spacing:.065em;line-height:1}.projects .card:not(.wide){width:min(100%,calc((100svh - 150px)*.5625));height:auto;aspect-ratio:9/16;justify-self:start;scroll-margin-top:110px}.projects .card:nth-child(3n+2){justify-self:end}.projects .card{transition:transform .28s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .25s;transform-origin:center;scroll-margin-top:110px}.projects .card:is(:hover,:focus){transform:scale(.975);border-color:#d4c7ff40;box-shadow:0 12px 45px #0005}.projects .card .card-copy{transition:transform .4s ease,opacity .3s ease;transition-delay:0s;padding:clamp(14px,2.2vh,28px);min-height:0}.projects .card:is(:hover,:focus) .card-copy{transition-delay:.14s}.projects .card .card-copy p{transition-delay:0s}.projects .card:is(:hover,:focus) .card-copy p{transition-delay:.22s}.projects .card:not(.wide) .card-copy h3{font-size:clamp(18px,2.5vh,30px);line-height:1.1;margin:8px 0}.projects .card:not(.wide) .card-copy p{font-size:clamp(10px,1.35vh,14px);line-height:1.5;padding-right:16px}.projects .card:not(.wide) .card-copy small{font-size:clamp(7px,1vh,10px);letter-spacing:1.3px}.projects .card:not(.wide) .arrow{right:16px;bottom:16px}.nav-links{gap:clamp(8px,1.1vw,24px)}.nav-links a{display:inline-block;padding:10px 16px;border:1px solid #c1ff8050;border-radius:30px;color:var(--green);transition:transform .2s,background .2s,color .2s,border-color .2s;white-space:nowrap}@media(hover:hover)and (pointer:fine){.nav-links a:hover{transform:translateY(-2px) scale(1.025);background:#c1ff800d;border-color:#c1ff8050;color:var(--green)}}.nav-links a:focus-visible{outline:2px solid var(--green);outline-offset:3px}.back,footer a,.detail-end span{display:inline-block;border-radius:20px;padding:7px 12px;transition:transform .2s,color .2s,background .2s;cursor:pointer}.back:hover,footer a:hover,.detail-end:hover span{transform:translateY(-2px);color:var(--green);background:#c1ff800b}.tags span{transition:transform .2s,background .2s,border-color .2s,color .2s;cursor:default}.tags span:hover{transform:translateY(-3px) scale(1.025);background:#20202c;border-color:#c1ff8050;color:#e0ffb9}.contact-row,.experience{transition:transform .2s,background .2s,border-color .2s}.contact-row:hover,.experience:hover{transform:translate(3px);background:#ffffff04;border-color:#c1ff8038}.contact-row span:last-child{display:inline-block;transition:transform .2s,color .2s}.contact-row:hover span:last-child{transform:translate(2px);color:#dbffb7}@media(prefers-reduced-motion:reduce){.projects .card:is(:hover,:focus),.nav-links a:is(:hover,:focus-visible),.tags span:hover,.contact-row:hover,.experience:hover,.preview-bar button:hover,.back:hover,footer a:hover,.detail-end:hover span{transform:none}}.project-stage{height:calc(100svh - 84px);display:flex;align-items:center;justify-content:center;gap:24px;position:relative;scroll-margin-top:84px}.projects .project-stage .card.wide{width:min(100%,calc((100svh - 132px)*1.7777778));height:auto;aspect-ratio:16/9;flex:none}.projects .project-stage .card:not(.wide){width:min(calc((100% - 24px)/2),calc((100svh - 150px)*.5625));height:auto;aspect-ratio:9/16;flex:none}.hero-atmosphere{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;pointer-events:none;z-index:0;-webkit-mask-image:linear-gradient(transparent,#000 15%,#000 80%,transparent);mask-image:linear-gradient(transparent,#000 15%,#000 80%,transparent)}.hero-atmosphere .orb{display:none}.hero-atmosphere:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.035;background-size:160px 160px;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath filter='url(%23n)' opacity='.7' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}.hero-top{position:relative;z-index:1}.portrait{z-index:1}.hero-rings{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden;-webkit-mask-image:linear-gradient(transparent,#000 10%,#000 88%,transparent);mask-image:linear-gradient(transparent,#000 10%,#000 88%,transparent)}.hero-rings svg{position:absolute;width:max(105%,115vh);height:auto;aspect-ratio:1;left:50%;top:52%;transform:translate(-50%,-50%);opacity:.6}:root{--nav-height:84px}[hidden]{display:none!important}header{height:var(--nav-height)}.home-stage{scroll-margin-top:var(--nav-height)}#intro-stage{height:calc(100svh - var(--nav-height));min-height:560px}#intro-stage .hero{height:calc(100% - var(--role-height))}.projects{display:block}.project-stage{height:calc(100svh - var(--nav-height));min-height:560px;display:flex;align-items:center;justify-content:center;gap:clamp(20px,3vw,60px);padding:28px 0}.project-tile{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:16px}.project-stage .project-tile:only-child{width:min(100%,calc((100svh - 190px)*1.77778))}.project-stage .project-tile:not(:only-child){width:min(calc((100% - 24px)/2),calc((100svh - 170px)*.5625))}.software-heading{font-size:clamp(20px,2vw,38px);font-weight:500;letter-spacing:-.03em;margin:0;color:#f2edf9}.projects .project-stage .project-tile .card{display:block;width:100%;height:auto;flex:none}.projects .project-stage .project-tile:only-child .card{aspect-ratio:16/9}.projects .project-stage .project-tile:not(:only-child) .card{aspect-ratio:9/16}.projects .project-stage .project-tile--portrait:only-child .card{aspect-ratio:9/16}@media(min-width:761px){.project-stage .project-tile--portrait:only-child{width:min(100%,calc((100svh - 190px)*.5625))}}.projects .project-stage .project-tile .card{max-width:none}.about-stage,.contact-stage{width:var(--reading-width);margin:auto;min-height:calc(100svh - var(--nav-height));display:flex;flex-direction:column;justify-content:center}.about-stage .about,.about-stage .skills,.contact-stage .contact,.contact-stage footer{width:100%;margin-left:0;margin-right:0}.about-stage .about{margin-top:0}.about-experience{grid-column:1/-1}.contact-stage .contact{margin-bottom:0}.contact.contact--details{grid-template-columns:minmax(0,1fr)}.contact-stage footer{padding-top:28px}.portfolio-page{width:min(1100px,calc(100% - 56px));max-width:none;padding:52px 0 0}.page-heading{margin-bottom:36px}.page-heading h1{font-size:clamp(42px,5vw,76px);font-weight:400;letter-spacing:-.05em;margin:0 0 10px}.page-heading p{font-size:14px;line-height:1.7;color:var(--muted);margin:0}.portfolio-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.portfolio-grid .portfolio-card{width:100%;aspect-ratio:1;min-width:0}.portfolio-grid .card-thumbnail{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transition:filter .4s}.portfolio-grid .card-thumbnail-background{position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px;width:calc(100% + 24px);height:calc(100% + 24px);object-fit:cover;filter:blur(3px) brightness(.55);transform:scale(1.04);pointer-events:none}.portfolio-grid .has-thumbnail-background .card-thumbnail-background{transform:scale(1.65)}.portfolio-grid .thumbnail-crop-16x9 .card-thumbnail-frame{position:absolute;z-index:0;top:50%;left:0;width:100%;aspect-ratio:16 / 9;overflow:hidden;transform:translateY(-50%)}.portfolio-grid .thumbnail-crop-16x9 .card-thumbnail{top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;transform:none}.portfolio-grid .thumbnail-letterbox .card-thumbnail{-webkit-mask-image:linear-gradient(to bottom,transparent 0%,transparent 19%,#000 34%,#000 69%,transparent 84%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,transparent 19%,#000 34%,#000 69%,transparent 84%,transparent 100%)}.portfolio-grid .thumbnail-contain .card-thumbnail{object-fit:contain;transform:scale(1.15)}.portfolio-grid .has-thumbnail .art:before,.portfolio-grid .has-thumbnail .art:after{display:none}.portfolio-grid .has-thumbnail:hover .card-thumbnail,.portfolio-grid .has-thumbnail:focus-visible .card-thumbnail{filter:brightness(.65)}.portfolio-grid .card-copy{padding:40px 16px 16px}.portfolio-grid .card-copy h3{font-size:clamp(16px,1.6vw,24px)}.portfolio-grid .card-copy p{font-size:11px}.portfolio-grid .arrow{right:12px;bottom:10px;font-size:20px}.portfolio-page footer{margin-top:45px}.detail-end a{display:inline-block;color:var(--green);padding:12px 20px;border:1px solid #c1ff8050;border-radius:30px}.detail-copy{max-width:760px;margin:48px 0 34px}.detail-copy h2{font-size:clamp(28px,3.3vw,44px);font-weight:500;line-height:1.1;margin:12px 0 18px}.detail-copy p{max-width:620px;color:var(--muted);font-size:14px;line-height:1.8;margin:0}@media(max-width:700px){:root{--nav-height:72px}header{height:var(--nav-height)}#intro-stage{height:auto;min-height:calc(100svh - var(--nav-height))}#intro-stage .hero{height:calc(100svh - var(--nav-height) - 90px);min-height:420px}.home-stage{scroll-snap-align:start}.project-stage{height:auto;min-height:0;padding:45px 0;display:flex;gap:16px}.project-stage .project-tile:only-child{width:100%}.project-stage .project-tile:not(:only-child){width:calc((100% - 16px)/2)}.software-heading{font-size:clamp(15px,4vw,24px)}.about-stage,.contact-stage{width:calc(100% - 36px);min-height:0;padding:40px 0}.portfolio-page{width:calc(100% - 36px);padding-top:36px}.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.portfolio-grid .card-copy h3{font-size:15px}}.wrap.detail.headphones-case-study{width:min(1140px,calc(100% - 64px));max-width:none;padding:42px 0 0}.headphones-case-study .back{margin-bottom:34px}.headphones-intro{display:grid;grid-template-columns:1.05fr .8fr;gap:clamp(48px,10vw,150px);align-items:start;margin:0 0 42px}.headphones-intro h1{max-width:600px;margin:0;font-size:68px;font-weight:400;line-height:.98;letter-spacing:0}.headphones-intro-copy p,.headphones-bridge p,.headphones-section-copy p,.headphones-notes>p{color:var(--muted);font-size:13px;line-height:1.75;margin:0 0 14px}.headphones-intro-copy .headphones-summary{font-size:16px;line-height:1.5;color:var(--text);margin:16px 0}.headphones-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:28px 0 0;padding-top:16px;border-top:1px solid var(--line)}.headphones-meta div{min-width:0}.headphones-meta dt,.headphones-meta dd{font-size:9px;line-height:1.6;margin:0}.headphones-meta dt{color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:5px}.headphones-meta dd{color:var(--text)}.headphones-media{min-width:0;margin:0}.headphones-media-surface{position:relative;display:grid;place-items:center;overflow:hidden;border:1px solid #ffffff18;border-radius:3px;background:radial-gradient(ellipse at 50% 45%,#132332 0,#0b1017 48%,#080a0d);aspect-ratio:1 / 1}.headphones-media-surface>img{display:block;width:100%;height:100%;object-fit:contain;background:#303030}.headphones-media-surface:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#ffffff08,transparent 48%,#0003);pointer-events:none}.headphones-media-surface span{position:relative;z-index:1;display:grid;place-items:center;width:78%;height:100%;padding:12px;border:1px solid #ffffff20;background:linear-gradient(155deg,#152b37,#0c1118 65%,#101924);color:#aeb9c0;text-align:center;text-transform:uppercase;font-size:9px;letter-spacing:1.5px}.headphones-youtube-embed{position:absolute;top:0;right:0;bottom:0;left:0}.headphones-youtube-embed iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.headphones-media-surface>video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain}.headphones-media--image .headphones-media-surface span{width:100%;height:100%;background:linear-gradient(145deg,#182128,#101316 60%,#18191b);border:0}.headphones-media figcaption{margin-top:8px;color:#777987;font-size:8px;line-height:1.5;text-transform:uppercase;letter-spacing:1.2px}.headphones-media--wide .headphones-media-surface{aspect-ratio:1.86 / 1}.headphones-case-study>.headphones-media:first-of-type{width:min(100%,420px);margin:0 auto 16px}.headphones-case-study>.headphones-media:first-of-type .headphones-media-surface{aspect-ratio:9 / 16}.headphones-bridge{display:grid;grid-template-columns:1fr .55fr;gap:38px;align-items:start;margin:26px 0 100px}.headphones-bridge h2,.headphones-section-copy h2,.headphones-notes h2{font-size:42px;font-weight:400;line-height:1.02;margin:0}.headphones-bridge p{margin-top:4px}.headphones-section{margin:0 0 112px}.headphones-section-copy{max-width:570px;margin:0 0 34px}.headphones-section-copy .eyebrow,.headphones-notes .eyebrow{color:#a3a3ad}.headphones-section-copy h2{max-width:540px;margin:0 0 18px}.headphones-section-copy p{max-width:570px}.headphones-media-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:center}.headphones-media-pair .headphones-media:nth-child(2n){transform:translateY(30px)}.headphones-media--video:not(.headphones-media--wide) .headphones-media-surface{aspect-ratio:.78 / 1}.headphones-section:nth-of-type(5) .headphones-media--video .headphones-media-surface,.headphones-section:nth-of-type(6) .headphones-media--video .headphones-media-surface{aspect-ratio:.76 / 1}.headphones-section>.headphones-media--wide{margin-top:40px}.headphones-notes{display:grid;grid-template-columns:1fr .72fr;gap:50px;align-items:start;padding:42px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.headphones-notes h2{margin-top:16px}.headphones-notes>p{margin-top:22px}.headphones-case-study .detail-end{padding:36px 0}.headphones-case-study footer{width:100%;margin:0;padding-bottom:30px}.hero .logo .peek{width:clamp(180px,15vw,270px);height:140px;padding:13px}.home .logo:is(.b,.gpt) .peek{height:auto;min-height:0;padding:12px;gap:9px}.home .logo:is(.b,.gpt) .logo-preview-video{width:min(120px,100%)}.logo-preview-video{position:relative;display:block;flex:none;align-self:center;width:min(120px,100%);height:auto;aspect-ratio:9 / 16;max-height:38svh;overflow:hidden;border-radius:4px;background:#0b1118}.logo-preview-video--landscape{width:min(195px,100%);aspect-ratio:16 / 9}.logo-preview-video iframe,.logo-preview-video video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.logo-preview-video video{object-fit:cover}.home .logo.ae .peek{width:230px;height:auto;min-height:0;padding:12px;gap:9px}.projects .project-stage .video-preview .art{display:none}.home-video-preview{position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;pointer-events:none}.projects .project-stage .video-preview .media-label,.projects .project-stage .video-preview .ratio{z-index:2;pointer-events:none}.wrap.detail.blender-case-study{width:min(980px,calc(100% - 64px));max-width:none;padding:0 0 36px}.blender-intro{display:grid;grid-template-columns:1.05fr .8fr;gap:clamp(48px,8vw,120px);align-items:start;margin:104px 0 70px}.blender-intro h1{max-width:560px;margin:18px 0 0;font-size:clamp(64px,7vw,94px);font-weight:400;line-height:.96;letter-spacing:0}.blender-intro-copy{padding-top:40px}.blender-intro-copy p,.blender-section-copy p,.blender-hero-caption p,.blender-project-notes p,.blender-media-note{color:var(--muted);font-size:13px;line-height:1.75;margin:0 0 14px}.blender-intro-copy .blender-summary{color:var(--text);font-size:18px;line-height:1.5;margin:0 0 18px}.blender-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:36px 0 0;padding-top:18px;border-top:1px solid var(--line)}.blender-meta div{min-width:0}.blender-meta dt,.blender-meta dd{font-size:10px;line-height:1.6;margin:0}.blender-meta dt{color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:6px}.blender-meta dd{color:var(--text)}.blender-hero{margin:0 0 100px}.blender-media-labels{display:flex;width:min(100%,420px);justify-content:space-between;gap:16px;margin:0 auto 12px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:1.2px}.blender-hero-frame{position:relative;width:min(100%,420px);margin:0 auto;overflow:hidden;aspect-ratio:9/16;border:1px solid var(--line);background:#08090c}.blender-hero-portrait{position:relative;width:100%;height:100%;overflow:hidden;background:#08090c}.blender-hero-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.blender-hero-caption{display:grid;grid-template-columns:1fr .62fr;gap:42px;margin:22px 0 0}.blender-hero-caption h2,.blender-section-copy h2,.blender-project-notes h2{font-size:40px;font-weight:400;line-height:1.04;margin:0}.blender-hero-caption p{margin:2px 0 0}.blender-section{margin:0 0 108px}.blender-section-copy{max-width:620px;margin:0 0 32px}.blender-section-copy .eyebrow,.blender-project-notes .eyebrow{color:var(--muted)}.blender-section-copy h2{max-width:620px;margin:0 0 18px}.blender-section-copy p{max-width:600px}.blender-media-pair,.blender-development-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}.blender-media{min-width:0;margin:0}.blender-media-frame{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:3px;background:linear-gradient(145deg,#171a1e,#101215 62%,#17191b)}.blender-media-frame>img{display:block;width:100%;height:100%;object-fit:contain;background:#101215}.blender-media-video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.blender-media--square .blender-media-frame{aspect-ratio:1/1}.blender-media--portrait .blender-media-frame{aspect-ratio:9/16}.blender-media--landscape .blender-media-frame{aspect-ratio:1.78/1}.blender-media--vertical .blender-media-frame{aspect-ratio:9/16}.blender-media figcaption{margin-top:9px;color:#858693;font-size:8px;line-height:1.5;text-transform:uppercase;letter-spacing:1.1px}.blender-media-note{margin:12px 0 0;font-size:12px}.blender-project-notes{max-width:760px;margin:0 0 54px;padding-top:32px;border-top:1px solid var(--line)}.blender-project-notes h2{margin:18px 0}.blender-project-notes p{max-width:700px}.blender-case-study footer{width:100%;margin:0}.wrap.detail.maya-case-study{width:min(980px,calc(100% - 64px));max-width:none;padding:42px 0 36px}.maya-case-study .back{margin-bottom:38px}.maya-intro{display:grid;grid-template-columns:1.05fr .8fr;gap:clamp(48px,8vw,120px);align-items:start;margin:0 0 42px}.maya-intro h1{max-width:560px;margin:0;font-size:clamp(58px,6.5vw,82px);font-weight:400;line-height:.96;letter-spacing:-.04em}.maya-intro-copy{padding-top:10px}.maya-intro-copy p,.maya-section-copy p,.maya-hero-caption p,.maya-notes p{color:var(--muted);font-size:12px;line-height:1.7;margin:0 0 12px}.maya-intro-copy .maya-summary{font-size:14px;line-height:1.55;color:var(--text);margin:0 0 12px}.maya-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:26px 0 0;padding-top:14px;border-top:1px solid var(--line)}.maya-meta div{min-width:0}.maya-meta dt,.maya-meta dd{font-size:8px;line-height:1.55;margin:0}.maya-meta dt{color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:5px}.maya-meta dd{color:var(--text)}.maya-hero{margin:0 0 92px}.maya-media-labels{display:flex;justify-content:space-between;gap:15px;margin-bottom:10px;color:#858691;font-size:8px;text-transform:uppercase;letter-spacing:1.1px}.maya-hero-frame{position:relative;overflow:hidden;aspect-ratio:16/9;border:1px solid #ffffff18;background:#08090c}.maya-hero-frame iframe,.maya-hero-frame video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.maya-hero-frame video,.fisherman-video-panel video{object-fit:contain}.maya-hero-caption{display:grid;grid-template-columns:1fr .58fr;gap:34px;align-items:start;margin-top:18px}.maya-hero-caption h2,.maya-section-copy h2,.maya-notes h2{font-size:34px;font-weight:400;line-height:1.04;letter-spacing:-.035em;margin:0}.maya-hero-caption p{margin:4px 0 0}.maya-section{margin:0 0 100px}.maya-section-copy{max-width:570px;margin:0 0 30px}.maya-section-copy .eyebrow,.maya-notes .eyebrow{color:#a3a3ad}.maya-section-copy h2{margin:0 0 14px}.maya-section-copy p{max-width:560px}.maya-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.maya-section--trio .maya-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.maya-media{min-width:0;margin:0}.maya-media-frame{position:relative;overflow:hidden;border:1px solid #ffffff18;border-radius:3px;background:#111315;aspect-ratio:1.5/1}.maya-media-frame img{display:block;width:100%;height:100%;object-fit:cover}.maya-section--trio .maya-media-frame{aspect-ratio:1/1}.maya-media figcaption{margin-top:8px;color:#858693;font-size:8px;line-height:1.5;text-transform:uppercase;letter-spacing:1px}.maya-notes{display:grid;grid-template-columns:1fr .72fr;gap:50px;align-items:start;padding:36px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.maya-notes h2{margin-top:16px}.maya-notes p{margin:8px 0 14px}.maya-end{padding:34px 0}.maya-end a{display:inline-block;color:var(--green);padding:12px 20px;border:1px solid #c1ff8050;border-radius:30px}.maya-case-study footer{width:100%;margin:0}.wrap.detail.ae-case-study{width:min(980px,calc(100% - 64px));max-width:none;padding:42px 0 36px}.ae-intro{display:grid;grid-template-columns:1fr .78fr;gap:clamp(48px,9vw,130px);align-items:start;margin:0 0 42px}.ae-intro h1{max-width:580px;margin:0;font-size:clamp(56px,6vw,76px);font-weight:400;line-height:.95;letter-spacing:-.055em}.ae-intro-copy p,.ae-section-copy p,.ae-hero-caption p,.ae-closing p{color:var(--muted);font-size:12px;line-height:1.7;margin:0 0 12px}.ae-intro-copy .ae-summary{font-size:14px;line-height:1.55;color:var(--text);margin:20px 0 12px}.ae-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:26px 0 0;padding-top:14px;border-top:1px solid var(--line)}.ae-meta div{min-width:0}.ae-meta dt,.ae-meta dd{font-size:8px;line-height:1.55;margin:0}.ae-meta dt{color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:5px}.ae-meta dd{color:var(--text)}.ae-hero{margin-bottom:94px}.ae-media-labels{display:flex;justify-content:space-between;gap:15px;margin-bottom:10px;color:#858691;font-size:8px;text-transform:uppercase;letter-spacing:1.1px}.ae-media{min-width:0;margin:0}.ae-media-frame{position:relative;overflow:hidden;border:1px solid #ffffff18;background:#f4f4f4;aspect-ratio:1.45 / 1}.ae-media-frame>img{display:block;width:100%;height:100%;object-fit:contain}.ae-media-frame>iframe,.ae-media-frame>video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.ae-media-frame>video{object-fit:contain}.ae-media figcaption{margin-top:7px;color:#777987;font-size:7px;line-height:1.5;text-transform:uppercase;letter-spacing:1px}.ae-media--wide .ae-media-frame{aspect-ratio:16 / 9}.ae-hero-caption{display:grid;grid-template-columns:1fr .58fr;gap:34px;align-items:start;margin-top:18px}.ae-hero-caption h2,.ae-section-copy h2,.ae-closing h2{font-size:34px;font-weight:400;line-height:1.04;letter-spacing:-.035em;margin:0}.ae-hero-caption p{margin:4px 0 0}.ae-section{margin:0 0 100px}.ae-section-copy{max-width:570px;margin:0 0 30px}.ae-section-copy .eyebrow,.ae-closing .eyebrow{color:#a3a3ad}.ae-section-copy h2{margin:0 0 14px}.ae-section-copy p{max-width:560px}.ae-media-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:center}.ae-media-pair .ae-media:nth-child(2n){transform:translateY(26px)}.ae-media-pair--single{grid-template-columns:minmax(0,1fr);width:100%;max-width:840px;margin-inline:auto}.ae-closing{display:grid;grid-template-columns:1fr .58fr;gap:34px;align-items:start;padding:36px 0 42px;border-top:1px solid var(--line)}.ae-closing p{margin:7px 0 0}.ae-case-study footer{width:100%;margin:0}.wrap.detail.fisherman-case-study{width:min(980px,calc(100% - 64px));max-width:none;padding:42px 0 36px}.fisherman-case-study .back{margin-bottom:34px}.fisherman-intro{display:grid;grid-template-columns:1fr .78fr;gap:clamp(48px,9vw,130px);align-items:start;margin:0 0 42px}.fisherman-intro h1{max-width:580px;margin:0;font-size:clamp(56px,6vw,76px);font-weight:400;line-height:.95;letter-spacing:-.055em}.fisherman-intro-copy p,.fisherman-section-copy p,.fisherman-bridge p,.fisherman-notes p{color:var(--muted);font-size:12px;line-height:1.7;margin:0 0 12px}.fisherman-intro-copy .fisherman-summary{font-size:14px;line-height:1.55;color:var(--text);margin:20px 0 12px}.fisherman-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:26px 0 0;padding-top:14px;border-top:1px solid var(--line)}.fisherman-meta div{min-width:0}.fisherman-meta dt,.fisherman-meta dd{font-size:8px;line-height:1.55;margin:0}.fisherman-meta dt{color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:5px}.fisherman-meta dd{color:var(--text)}.fisherman-hero{margin-bottom:44px}.fisherman-media-labels{display:flex;justify-content:space-between;gap:15px;margin-bottom:10px;color:#858691;font-size:8px;text-transform:uppercase;letter-spacing:1.1px}.fisherman-video-panel{position:relative;width:100%;aspect-ratio:16 / 9;border:1px solid #ffffff18;background:#08090c}.fisherman-video-panel iframe,.fisherman-video-panel video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.fisherman-bridge{display:grid;grid-template-columns:1fr .58fr;gap:34px;align-items:start;margin:0 0 76px}.fisherman-bridge h2,.fisherman-section-copy h2,.fisherman-notes h2{font-size:34px;font-weight:400;line-height:1.04;letter-spacing:-.035em;margin:0}.fisherman-bridge p{margin:4px 0 0}.fisherman-section{margin:0 0 94px}.fisherman-section-copy{max-width:570px;margin:0 0 28px}.fisherman-section-copy .eyebrow,.fisherman-notes .eyebrow{color:#a3a3ad}.fisherman-section-copy h2{margin:0 0 14px}.fisherman-section-copy p{max-width:560px}.fisherman-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}.fisherman-media{min-width:0;margin:0}.fisherman-media-frame{position:relative;overflow:hidden;border:1px solid #ffffff18;background:#111218;aspect-ratio:1.45 / 1}.fisherman-media-frame img{display:block;width:100%;height:100%;object-fit:cover}.fisherman-media figcaption{margin-top:7px;color:#777987;font-size:7px;line-height:1.5;text-transform:uppercase;letter-spacing:1px}.fisherman-title-gallery{display:grid;gap:20px}.fisherman-media--wide .fisherman-media-frame{aspect-ratio:16 / 9}.fisherman-notes{display:grid;grid-template-columns:1fr .58fr;gap:34px;align-items:start;padding:36px 0 42px;border-top:1px solid var(--line)}.fisherman-notes p{margin:7px 0 0}.fisherman-case-study .detail-end{padding:8px 0 30px}.fisherman-case-study footer{width:100%;margin:0}.wrap.detail.unreal-case-study{width:min(980px,calc(100% - 64px));max-width:none;padding:42px 0 36px}.unreal-intro{display:grid;grid-template-columns:1fr .78fr;gap:clamp(48px,9vw,130px);align-items:start;margin:0 0 42px}.unreal-intro h1{max-width:580px;margin:0;font-size:clamp(56px,6vw,76px);font-weight:400;line-height:.94;letter-spacing:-.055em}.unreal-intro-copy p,.unreal-section-copy p,.unreal-caption p,.unreal-notes-copy p{color:var(--muted);font-size:12px;line-height:1.7;margin:0 0 12px}.unreal-intro-copy .unreal-summary{font-size:14px;line-height:1.55;color:var(--text);margin:20px 0 12px}.unreal-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:26px 0 0;padding-top:14px;border-top:1px solid var(--line)}.unreal-meta div{min-width:0}.unreal-meta dt,.unreal-meta dd{font-size:8px;line-height:1.55;margin:0}.unreal-meta dt{color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:5px}.unreal-meta dd{color:var(--text)}.unreal-hero{margin-bottom:94px}.unreal-labels{display:flex;justify-content:space-between;gap:15px;margin-bottom:10px;color:#858691;font-size:8px;text-transform:uppercase;letter-spacing:1.1px}.unreal-media{min-width:0;margin:0}.unreal-media-frame{position:relative;overflow:hidden;border:1px solid #ffffff18;background:#08090e;aspect-ratio:1.45 / 1}.unreal-media-frame>img{display:block;width:100%;height:100%;object-fit:contain}.unreal-media-frame>iframe,.unreal-media-frame>video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.unreal-media-frame>video{object-fit:contain}.unreal-media-frame--image{aspect-ratio:auto;background:transparent}.unreal-media-frame--image>img{height:auto}.unreal-media figcaption{margin-top:7px;color:#777987;font-size:7px;line-height:1.5;text-transform:uppercase;letter-spacing:1px}.unreal-media--wide .unreal-media-frame{aspect-ratio:16 / 9}.unreal-media--wide .unreal-media-frame--image{aspect-ratio:auto}.unreal-media--portrait .unreal-media-frame{aspect-ratio:.78 / 1}.unreal-caption{display:grid;grid-template-columns:1fr .58fr;gap:34px;align-items:start;margin-top:18px}.unreal-caption h2,.unreal-section-copy h2,.unreal-notes h2{font-size:34px;font-weight:400;line-height:1.04;letter-spacing:-.035em;margin:0}.unreal-caption p{margin:4px 0 0}.unreal-section{margin:0 0 100px}.unreal-section-copy{max-width:570px;margin:0 0 30px}.unreal-section-copy .eyebrow,.unreal-notes .eyebrow{color:#a3a3ad}.unreal-section-copy h2{margin:0 0 14px}.unreal-section-copy p{max-width:560px}.unreal-section-copy p>span{display:block}.unreal-section-copy p>span+span{margin-top:12px}.unreal-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:center}.unreal-pair .unreal-media:nth-child(2n){transform:translateY(26px)}.unreal-trio{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:center}.unreal-trio .unreal-media:nth-child(2){transform:translateY(24px)}.unreal-trio .unreal-media:nth-child(3){transform:translateY(48px)}.unreal-material-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.unreal-shot-stack{display:grid;grid-template-columns:1fr .62fr;gap:20px}.unreal-shot-stack .unreal-media:first-child{grid-column:1 / -1}.unreal-shot-stack .unreal-media:last-child{grid-column:2}.unreal-secondary-media{width:78%;margin:30px auto 0}.unreal-process{display:grid;grid-template-columns:.78fr 1.22fr;gap:28px;align-items:center;margin-bottom:28px}.unreal-process .unreal-section-copy{margin:0}.unreal-pair--video .unreal-media-frame{aspect-ratio:.78 / 1}.unreal-disclosure{margin-top:28px;padding:14px 0 0;border-top:1px solid var(--line);font-size:10px}.unreal-disclosure summary{width:max-content;max-width:100%;cursor:pointer;color:var(--text)}.unreal-disclosure-media{width:40%;max-width:320px;margin:20px auto 0}.unreal-disclosure-media--wide{width:70%;max-width:640px}.unreal-notes{display:grid;grid-template-columns:1fr .62fr;gap:42px;align-items:start;padding:36px 0 42px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.unreal-notes-copy p{margin:5px 0 14px}.unreal-notes-copy .unreal-disclaimer{font-size:8px}.unreal-case-study footer{width:100%;margin:0}.wrap.detail.substance-case-study{width:min(980px,calc(100% - 64px));max-width:none;padding:42px 0 36px}.substance-intro{display:grid;grid-template-columns:1fr .78fr;gap:clamp(48px,9vw,130px);align-items:start;margin:0 0 82px}.substance-intro h1{margin:0;font-size:clamp(56px,6vw,76px);font-weight:400;line-height:.95;letter-spacing:-.055em}.substance-intro-copy p,.substance-caption p,.substance-section-copy p,.substance-notes p,.substance-source{color:var(--muted);font-size:12px;line-height:1.7;margin:0 0 12px}.substance-intro-copy .substance-summary{font-size:clamp(16px,1.8vw,24px);line-height:1.45;color:var(--text);margin:20px 0 18px}.substance-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:42px 0 0;padding-top:14px;border-top:1px solid var(--line)}.substance-meta dt,.substance-meta dd{font-size:8px;line-height:1.55;margin:0}.substance-meta dt{color:var(--muted);text-transform:uppercase;letter-spacing:1px;margin-bottom:5px}.substance-labels{display:flex;justify-content:space-between;gap:15px;margin-bottom:10px;color:#858691;font-size:8px;text-transform:uppercase;letter-spacing:1.1px}.substance-section{margin:0 0 100px}.substance-media{min-width:0;margin:0}.substance-media-frame{position:relative;display:grid;place-items:center;overflow:hidden;border:1px solid #ffffff18;background:#232323;aspect-ratio:1.45 / 1}.substance-media-frame>span{color:#858691;font-size:9px;letter-spacing:1.2px;text-transform:uppercase}.substance-media-frame>img,.substance-media-frame>video{display:block;width:100%;height:100%;object-fit:contain}.substance-media figcaption{margin-top:7px;color:#777987;font-size:7px;line-height:1.5;text-transform:uppercase;letter-spacing:1px}.substance-media--wide .substance-media-frame{aspect-ratio:16 / 9}.substance-caption{display:grid;grid-template-columns:1fr .58fr;gap:34px;align-items:start;margin:30px 0 38px}.substance-caption h2,.substance-section-copy h2,.substance-notes h2{font-size:34px;font-weight:400;line-height:1.04;letter-spacing:-.035em;margin:0}.substance-caption p{margin:4px 0 0}.substance-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 28px;align-items:start}.substance-hero .substance-gallery .substance-media:nth-child(2){transform:translateY(26px)}.substance-section-copy{max-width:570px;margin-bottom:46px}.substance-section-copy .eyebrow,.substance-notes .eyebrow{color:#a3a3ad}.substance-section-copy h2{margin-bottom:26px}.substance-gallery--workflow .substance-media-frame{aspect-ratio:2 / 1}.substance-workflow-wide{width:78%;margin:30px auto 36px}.substance-source{font-size:10px}.substance-source span{text-decoration:underline;text-underline-offset:3px}.substance-notes{display:grid;grid-template-columns:1fr .62fr;gap:42px;align-items:start;padding:90px 0 42px;border-top:1px solid var(--line)}.substance-notes h2{margin-top:24px}.substance-notes p{margin:48px 0 18px}.substance-notes p+p{margin-top:0}.substance-case-study .detail-end{padding:36px 0 90px}.substance-case-study footer{width:100%;margin:0}.home .portrait{animation:portrait-pop .56s cubic-bezier(.2,.8,.25,1) both}@keyframes portrait-pop{0%{opacity:0;transform:translate(-50%) scale(.86)}72%{opacity:1;transform:translate(-50%) scale(1.025)}to{opacity:1;transform:translate(-50%) scale(1)}}.home .logo{opacity:1;animation:logo-pop-jiggle .62s cubic-bezier(.2,.75,.25,1) backwards;animation-delay:.65s}.home .logo:before{content:"";position:absolute;z-index:0;top:-10%;right:-10%;bottom:-10%;left:-10%;border-radius:50%;background:radial-gradient(ellipse,#9b83ff99 0%,#8170df4d 42%,transparent 100%);filter:blur(10px);opacity:.68;pointer-events:none;animation:logo-halo 2.8s ease-in-out infinite}.home .logo-mark{position:relative;z-index:1}.home .logo.u{animation-delay:.65s}.home .logo.b{animation-delay:.72s}.home .logo.m{animation-delay:.79s}.home .logo.pr{animation-delay:.86s}.home .logo.ai{animation-delay:.93s}.home .logo.ae{animation-delay:1s}.home .logo.pt{animation-delay:1.07s}.home .logo.gpt{animation-delay:1.14s}@keyframes logo-pop-jiggle{0%{opacity:0;transform:rotate(var(--r)) scale(.2)}58%{opacity:1;transform:rotate(calc(var(--r) - 7deg)) scale(1.12)}76%{transform:rotate(calc(var(--r) + 4deg)) scale(.96)}90%{transform:rotate(calc(var(--r) - 2deg)) scale(1.02)}to{opacity:1;transform:rotate(var(--r)) scale(1)}}@keyframes logo-halo{0%,to{opacity:.48;transform:scale(.82)}50%{opacity:.94;transform:scale(1.16)}}.home .logo:is(:hover,:focus-visible){transform:rotate(0)}.home .logo .peek{display:none}.home .logo:is(:hover,:focus-visible) .peek{display:flex;flex-direction:column;justify-content:space-between}@media(hover:hover)and (min-width:701px){.projects .card,.portfolio-grid .card,.portfolio-grid .portfolio-card{position:relative;transition:transform .28s cubic-bezier(.2,.7,.2,1),border-color .25s,box-shadow .25s}.projects .card:after,.portfolio-grid .card:after,.portfolio-grid .portfolio-card:after{content:"";position:absolute;z-index:1;top:0;right:0;bottom:0;left:0;background:#090a0d35;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:0;pointer-events:none;transition:opacity .28s ease}.projects .card .card-copy,.portfolio-grid .card .card-copy,.portfolio-grid .portfolio-card .card-copy{z-index:2;top:auto;bottom:0;left:0;right:0;opacity:0;min-height:0;padding:22px 26px;background:none;-webkit-backdrop-filter:none;backdrop-filter:none;border-top:0;transform:translateY(10px);transition:opacity .24s ease,transform .24s ease}.projects .card .card-copy p,.portfolio-grid .card .card-copy p,.portfolio-grid .portfolio-card .card-copy p{opacity:1}.projects .card:is(:hover,:focus-visible),.portfolio-grid .card:is(:hover,:focus-visible),.portfolio-grid .portfolio-card:is(:hover,:focus-visible){transform:scale(.975);border-color:#d4c7ff40;box-shadow:0 12px 45px #0005}.projects .card:is(:hover,:focus-visible):after,.portfolio-grid .card:is(:hover,:focus-visible):after,.portfolio-grid .portfolio-card:is(:hover,:focus-visible):after{opacity:1}.projects .card:is(:hover,:focus-visible) .card-copy,.portfolio-grid .card:is(:hover,:focus-visible) .card-copy,.portfolio-grid .portfolio-card:is(:hover,:focus-visible) .card-copy{opacity:1;transform:translateY(0)}.projects .card:is(:hover,:focus-visible) .art,.portfolio-grid .card:is(:hover,:focus-visible) .art,.portfolio-grid .portfolio-card:is(:hover,:focus-visible) .art{filter:brightness(.8)}}@media(prefers-reduced-motion:reduce){.home .portrait,.home .logo{animation:none;opacity:1}.home .logo:before{animation:none;opacity:.68}}@media(max-width:760px){.wrap.detail.substance-case-study{width:calc(100% - 32px);padding:30px 0 28px}.substance-intro{grid-template-columns:minmax(0,1fr);gap:22px;margin-bottom:42px}.substance-intro h1{font-size:clamp(50px,13vw,68px)}.substance-intro-copy .substance-summary{margin-top:0;font-size:18px}.substance-meta{gap:9px;margin-top:24px}.substance-caption,.substance-notes{grid-template-columns:minmax(0,1fr);gap:16px}.substance-caption{margin:24px 0 30px}.substance-section{margin-bottom:74px}.substance-section-copy{margin-bottom:28px}.substance-section-copy h2{margin-bottom:18px}.substance-gallery{gap:22px 16px}.substance-hero .substance-gallery .substance-media:nth-child(2){transform:translateY(18px)}.substance-workflow-wide{width:100%;margin-top:24px}.substance-notes{padding:40px 0 24px}.substance-notes h2{margin-top:16px}.substance-notes p{margin:0 0 14px}.substance-case-study .detail-end{padding:24px 0 50px}}@media(max-width:520px){.substance-gallery{grid-template-columns:minmax(0,1fr)}.substance-hero .substance-gallery .substance-media:nth-child(2){transform:none}}:root{--nav-height: 84px}.name .name-letters{display:contents}.name .name-wordmark{display:none}@media(max-width:760px){:root{--nav-height: 60px;--mobile-gutter: 16px}html{max-width:100%;overflow-x:hidden;scroll-padding-top:var(--nav-height)}body{width:100%;min-width:0;max-width:100%;overflow-x:clip}header{height:var(--nav-height)}.nav{width:100%;height:var(--nav-height);padding:0 10px;gap:8px}.name{flex:0 0 auto;max-width:82px;overflow:hidden;font-size:23px;letter-spacing:-1px}.name .name-letters{display:none}.name .name-wordmark{display:block;width:4.4em;height:auto}.nav-links{min-width:0;flex:0 0 auto;display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-left:auto;font-size:7px;letter-spacing:0}.nav-links a,.nav-links a:last-child{padding:5.575px 8.1px;border-radius:30px;text-align:center;white-space:nowrap;line-height:1.15}.wrap,.wrap.detail,#portfolio{width:100%;max-width:none;margin-left:auto;margin-right:auto;padding-left:var(--mobile-gutter);padding-right:var(--mobile-gutter)}#about,#skills,#contact{width:100%;margin-left:0;margin-right:0;padding-left:0;padding-right:0}.wrap.home{width:100%;padding:0}.home-stage,.project-stage,#about-stage,#contact-stage,.about-stage,.contact-stage{scroll-snap-align:none;scroll-margin-top:var(--nav-height)}.home-stage#intro-stage,#intro-stage.home-stage{min-height:0;display:grid;grid-template-rows:440px auto}.home-stage#intro-stage .hero,#intro-stage.home-stage .hero,.hero{width:100%;min-height:0;height:440px;margin:0;overflow:visible}.home-stage#intro-stage .hero,#intro-stage.home-stage .hero{align-self:stretch}.hero-top{padding-top:20px;font-size:7px;letter-spacing:2px}.portrait{width:min(72vw,285px);height:auto;object-fit:contain;object-position:center bottom;-webkit-mask-image:linear-gradient(#000 91%,transparent);mask-image:linear-gradient(#000 91%,transparent)}.hero-rings{top:0;right:-18vw;bottom:0;left:-18vw}.hero-rings svg{width:max(145%,76svh);top:55%;opacity:.45}.logo{width:43px;height:43px;border-radius:0;font-size:0;background:transparent;border:none;box-shadow:none;touch-action:auto;pointer-events:none;-webkit-tap-highlight-color:transparent}.home .logo{animation:none;opacity:1}.home .logo:before{display:none}.hero .logo.u{left:8.5%;right:auto;top:9.5%}.hero .logo.b{left:auto;right:8%;top:10%}.hero .logo.m{left:20%;right:auto;top:30%}.hero .logo.pr{left:auto;right:18%;top:32%}.hero .logo.ai{left:7%;right:auto;top:84%}.hero .logo.ae{left:auto;right:10%;top:84%}.hero .logo.pt{left:6.5%;right:auto;top:53%}.hero .logo.gpt{left:auto;right:7.5%;top:55%;font-size:12px}.logo .peek,.logo:hover .peek,.logo:focus .peek{display:none;top:auto;bottom:calc(100% + 8px);width:min(220px,calc(100vw - 32px));height:112px;padding:12px;font-size:10px;pointer-events:none}.logo:is(.u,.m,.ai,.ae) .peek{left:0;right:auto}.logo:is(.b,.pr,.pt,.gpt) .peek{left:auto;right:0}.role,.home-stage .role{width:100%;height:auto;min-height:64px;margin:0;padding:10px var(--mobile-gutter)}.role h1{max-width:100%;font-size:clamp(24px,7.1vw,30px);line-height:.98;letter-spacing:.025em;white-space:normal}.section-head{flex-direction:column;align-items:flex-start;margin:22px 0 14px;gap:12px}.section-head p{max-width:320px;font-size:12px}h2{font-size:28px}.projects{display:block}.project-stage,.home-stage.project-stage{width:100%;min-height:0;height:auto;padding:32px 0;display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;gap:200px}.project-stage .project-tile:not(:only-child){width:100%}.project-tile{width:100%;min-width:0;display:grid;grid-template-columns:1fr;gap:8px;align-items:center}.project-tile>.software-heading,.project-stage>.software-heading{grid-column:1 / -1;margin:0 0 2px;color:var(--green);font-size:10px;font-weight:500;letter-spacing:1.4px;text-transform:uppercase}.project-tile:has(>.card.wide){grid-template-columns:1fr}.projects .project-stage .card,.projects .project-stage .card:not(.wide),.projects .project-stage .card.wide,.project-tile>.card{width:100%;height:auto;max-width:none;justify-self:stretch;flex:none;border-radius:14px;transform:none}.projects .project-stage .card:not(.wide),.project-tile>.card:not(.wide){aspect-ratio:9 / 16}.projects .project-stage .card.wide,.project-tile>.card.wide{aspect-ratio:16 / 9}.projects .card .card-copy,.projects .card:is(:hover,:focus) .card-copy{min-height:0;padding:28px 12px 12px;opacity:1;transform:none;border-top:0;background:linear-gradient(transparent,#090a12e8 52%,#090a12f5);-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none}.projects .card .card-copy h3,.projects .card:not(.wide) .card-copy h3{margin:4px 20px 0 0;font-size:clamp(14px,4.1vw,18px);line-height:1.12}.projects .card .card-copy small{font-size:6px;letter-spacing:1px}.projects .card .card-copy p{display:none}.projects .card .arrow,.projects .card:is(:hover,:focus) .arrow{right:10px;bottom:10px;display:block;opacity:1;font-size:16px;pointer-events:none}.projects .card:is(:hover,:focus),.projects .card:is(:hover,:focus) .art{transform:none;filter:none}.media-label{left:10px;right:44px;top:11px;overflow:hidden;font-size:6px;white-space:nowrap;text-overflow:ellipsis}.ratio{right:8px;top:7px;font-size:6px}#about-stage,.about-stage{width:100%;min-height:0;margin-top:34px;padding:0 var(--mobile-gutter);display:flex;flex-direction:column;justify-content:flex-start}#about-stage>.about,.about-stage>.about,.about{width:100%;margin-top:0;padding:38px 0;grid-template-columns:1fr;gap:24px}.about h2{font-size:clamp(43px,13vw,54px)}.about p{margin-bottom:16px;font-size:12px;line-height:1.65}.experience{gap:12px;padding:13px 0;font-size:9px}#about-stage>.skills,.about-stage>.skills,.skills{width:100%;padding:34px 0 40px}.tags{gap:7px;margin-top:18px}.tags span{padding:8px 10px;font-size:10px}#contact-stage,.contact-stage{width:100%;min-height:0;padding:0 var(--mobile-gutter);display:flex;align-items:stretch}#contact-stage>.contact,.contact-stage>.contact,.contact{width:100%;margin:0;grid-template-columns:1fr;min-height:0;border-radius:18px}.object{min-height:220px}.ring{width:130px;height:165px;border-width:20px}.contact-copy{padding:28px 22px}.contact h2{font-size:36px}.contact-list{margin-top:22px}.contact-row{gap:12px;padding:12px 0;font-size:10px}footer,.contact-stage footer{align-items:center;gap:12px;padding:18px 0 28px}footer a,.back{padding-left:0;padding-right:0}.portfolio-page .portfolio-grid{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.portfolio-page .portfolio-grid .card.portfolio-card{width:100%;min-width:0;aspect-ratio:1;border-radius:12px}.portfolio-page .portfolio-grid .card-copy{z-index:2;border-top:0;min-height:0;padding:8px 10px 9px;background:linear-gradient(to bottom,#090a0d35,#090a0da6);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);opacity:1;transform:none}.portfolio-page .portfolio-grid .card-copy h3{margin:3px 16px 0 0;font-size:13px}.wrap.detail{padding-top:34px}.detail-intro,.detail-split{grid-template-columns:minmax(0,1fr);gap:20px}.detail-intro{margin:26px 0 32px}.detail h1{font-size:clamp(42px,14vw,56px);letter-spacing:-2px}.detail p{font-size:12px;line-height:1.7}.detail-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;font-size:8px}.detail .card,.detail .card.wide{width:100%;max-width:100%}.detail-split{margin:28px 0}.detail-copy{max-width:none;margin:26px 0 22px}.detail-copy h2{font-size:clamp(25px,8vw,34px)}.detail-end{padding:38px 0}}@media(max-width:370px){:root{--mobile-gutter: 13px}.name{max-width:72px;font-size:21px}.nav-links{font-size:8px}.nav-links a,.nav-links a:last-child{padding-left:3.1px;padding-right:3.1px;white-space:nowrap}.nav-links{grid-template-columns:repeat(3,minmax(0,1fr))}.project-tile,.project-stage,.home-stage.project-stage{gap:8px}.project-stage .project-tile:not(:only-child){width:calc((100% - 8px)/2)}.projects .card .card-copy h3,.projects .card:not(.wide) .card-copy h3{font-size:14px}}@media(max-width:760px)and (hover:hover)and (pointer:fine){.logo:hover .peek,.logo:focus-visible .peek{display:flex;flex-direction:column;justify-content:space-between}}@media(max-width:760px)and (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media(max-width:760px){.project-stage .project-tile{display:flex;flex-direction:column;align-items:stretch}.home .logo .peek,.home .logo:is(:hover,:focus-visible) .peek{display:none}.portfolio-grid .card-copy p{display:none}.portfolio-grid .card-copy small{font-size:7px}.name{max-width:none;font-size:21px}}@media(max-width:370px){.name{font-size:19px}}@media(max-width:760px){.wrap.detail.maya-case-study{width:calc(100% - 32px);padding:30px 0 28px}.maya-case-study .back{margin-bottom:28px}.maya-intro{grid-template-columns:minmax(0,1fr);gap:22px;margin-bottom:30px}.maya-intro h1{font-size:clamp(50px,13vw,68px)}.maya-intro-copy{padding-top:0}.maya-intro-copy .maya-summary{margin-top:0}.maya-meta{gap:9px;margin-top:22px}.maya-meta dt,.maya-meta dd{font-size:8px}.maya-hero{margin-bottom:72px}.maya-media-labels{font-size:7px;letter-spacing:.8px}.maya-hero-caption,.maya-notes{grid-template-columns:minmax(0,1fr);gap:12px}.maya-hero-caption h2,.maya-section-copy h2,.maya-notes h2{font-size:34px}.maya-section{margin-bottom:74px}.maya-section-copy{margin-bottom:22px}.maya-gallery,.maya-section--trio .maya-gallery{gap:16px}.maya-notes{padding:30px 0}}@media(min-width:761px)and (max-width:1000px){:root{--nav-height: 72px}header{height:var(--nav-height)}#intro-stage{height:auto;min-height:0}#intro-stage .hero{height:550px;min-height:0}#intro-stage>.role{height:90px;min-height:90px;padding:14px 0}.portrait{width:52%;height:auto;max-width:none;object-fit:contain;object-position:center bottom}.hero .logo{width:56px;height:56px}.hero .logo.u{left:8.5%;right:auto;top:16%}.hero .logo.b{left:auto;right:6%;top:17%}.hero .logo.m{left:20.6%;right:auto;top:39%}.hero .logo.pr{left:auto;right:13%;top:41%}.hero .logo.ai{left:7%;right:auto;top:66%}.hero .logo.ae{left:24.6%;right:auto;top:85%}.hero .logo.pt{left:auto;right:19.5%;top:68%}.hero .logo.gpt{left:auto;right:2%;top:83%}}@media(max-width:520px){.maya-gallery,.maya-section--trio .maya-gallery{grid-template-columns:minmax(0,1fr);gap:22px}}@media(max-width:760px){.wrap.detail.headphones-case-study{width:calc(100% - 32px);padding:28px 0 0}.headphones-case-study .back{margin-bottom:28px}.headphones-intro{grid-template-columns:minmax(0,1fr);gap:22px;margin-bottom:28px}.headphones-intro h1{max-width:520px;font-size:52px;line-height:1}.headphones-intro-copy p,.headphones-bridge p,.headphones-section-copy p,.headphones-notes>p{font-size:12px}.headphones-intro-copy .headphones-summary{font-size:15px}.headphones-meta{gap:8px;margin-top:22px}.headphones-meta dt,.headphones-meta dd{font-size:8px}.headphones-case-study>.headphones-media:first-of-type .headphones-media-surface{aspect-ratio:9 / 16}.headphones-bridge{grid-template-columns:minmax(0,1fr);gap:12px;margin:26px 0 72px}.headphones-bridge h2,.headphones-section-copy h2,.headphones-notes h2{font-size:34px}.headphones-section{margin-bottom:76px}.headphones-section-copy{margin-bottom:22px}.headphones-media-pair{gap:18px}.headphones-media-pair .headphones-media:nth-child(2n){transform:translateY(18px)}.headphones-section>.headphones-media--wide{margin-top:30px}.headphones-notes{grid-template-columns:minmax(0,1fr);gap:12px;padding:30px 0}.headphones-notes>p{margin-top:0}}@media(max-width:520px){.headphones-intro h1{font-size:46px}.headphones-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.headphones-media-pair{grid-template-columns:minmax(0,1fr);gap:22px}.headphones-media-pair .headphones-media:nth-child(2n){transform:none}.headphones-media-surface{aspect-ratio:1.12 / 1}.headphones-media--video:not(.headphones-media--wide) .headphones-media-surface{aspect-ratio:.88 / 1}}@media(max-width:760px){.home .logo{pointer-events:none}.home .logo:is(:hover,:focus-visible){transform:none}.home .logo .peek,.home .logo:is(:hover,:focus-visible) .peek,.home .logo.is-preview-open .peek{display:none!important}}@media(min-width:761px)and (max-width:1000px){#about-stage,.about-stage{width:calc(100% - 64px)}#about,#skills{width:100%}#about-stage>.about,.about-stage>.about,.about{grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);column-gap:40px;row-gap:30px}.about h2{font-size:clamp(48px,6vw,58px)}.about-copy p{font-size:13px;line-height:1.7;margin-bottom:14px}.about-experience{grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}.about-experience .experience{min-width:0;align-items:flex-start;justify-content:flex-start;gap:18px;padding:14px 0;font-size:11px;line-height:1.5}.about-experience .experience span{flex:0 0 38%}.about-experience .experience span:last-child{flex:1 1 auto}.about-stage>.skills{padding-top:40px}}@media(max-width:760px){.wrap.detail.blender-case-study{width:calc(100% - 32px);padding:0 0 28px}.blender-intro{grid-template-columns:minmax(0,1fr);gap:20px;margin:58px 0 42px}.blender-intro h1{font-size:clamp(54px,13vw,72px);margin-top:12px}.blender-intro-copy{padding-top:0}.blender-intro-copy .blender-summary{font-size:16px}.blender-intro-copy p,.blender-section-copy p,.blender-hero-caption p,.blender-project-notes p,.blender-media-note{font-size:12px}.blender-meta{gap:10px;margin-top:22px}.blender-meta dt,.blender-meta dd{font-size:9px}.blender-hero{margin-bottom:76px}.blender-media-labels{font-size:7px;letter-spacing:.8px}.blender-hero-frame{aspect-ratio:9/16}.blender-hero-portrait{height:100%}.blender-hero-caption{grid-template-columns:minmax(0,1fr);gap:12px;margin-top:18px}.blender-hero-caption h2,.blender-section-copy h2,.blender-project-notes h2{font-size:34px}.blender-section{margin-bottom:78px}.blender-section-copy{margin-bottom:22px}.blender-media-pair,.blender-development-grid{gap:18px}.blender-project-notes{margin-bottom:36px;padding-top:26px}}@media(max-width:520px){.blender-media-pair,.blender-development-grid{grid-template-columns:minmax(0,1fr)}.blender-media--portrait .blender-media-frame{aspect-ratio:.82/1}}@media(max-width:760px){.wrap.detail.fisherman-case-study{width:calc(100% - 32px);padding:30px 0 28px}.fisherman-case-study .back{margin-bottom:28px}.fisherman-intro{grid-template-columns:minmax(0,1fr);gap:22px;margin-bottom:30px}.fisherman-intro h1{font-size:clamp(50px,13vw,68px)}.fisherman-intro-copy .fisherman-summary{margin-top:0}.fisherman-intro-copy p,.fisherman-section-copy p,.fisherman-bridge p,.fisherman-notes p{font-size:12px}.fisherman-meta{gap:9px;margin-top:22px}.fisherman-meta dt,.fisherman-meta dd{font-size:8px}.fisherman-hero{margin-bottom:34px}.fisherman-media-labels{font-size:7px;letter-spacing:.8px}.fisherman-bridge,.fisherman-notes{grid-template-columns:minmax(0,1fr);gap:12px}.fisherman-bridge{margin-bottom:64px}.fisherman-bridge h2,.fisherman-section-copy h2,.fisherman-notes h2{font-size:34px}.fisherman-section{margin-bottom:74px}.fisherman-section-copy{margin-bottom:22px}.fisherman-gallery{gap:16px}.fisherman-notes{padding:30px 0}}@media(max-width:520px){.fisherman-gallery{grid-template-columns:minmax(0,1fr);gap:22px}}@media(max-width:760px){.wrap.detail.ae-case-study{width:calc(100% - 32px);padding:30px 0 28px}.ae-intro{grid-template-columns:minmax(0,1fr);gap:22px;margin-bottom:30px}.ae-intro h1{font-size:clamp(50px,13vw,68px)}.ae-intro-copy .ae-summary{margin-top:0}.ae-intro-copy p,.ae-section-copy p,.ae-hero-caption p,.ae-closing p{font-size:12px}.ae-meta{gap:9px;margin-top:22px}.ae-meta dt,.ae-meta dd{font-size:8px}.ae-hero{margin-bottom:72px}.ae-media-labels{font-size:7px;letter-spacing:.8px}.ae-hero-caption,.ae-closing{grid-template-columns:minmax(0,1fr);gap:12px}.ae-hero-caption h2,.ae-section-copy h2,.ae-closing h2{font-size:34px}.ae-section{margin-bottom:74px}.ae-section-copy{margin-bottom:22px}.ae-media-pair{gap:16px}.ae-media-pair .ae-media:nth-child(2n){transform:translateY(18px)}.ae-media-pair--single{width:100%}.ae-closing{padding:30px 0}}@media(max-width:520px){.ae-media-pair{grid-template-columns:minmax(0,1fr);gap:22px}.ae-media-pair .ae-media:nth-child(2n){transform:none}.ae-media-frame{aspect-ratio:1.2 / 1}}@media(max-width:760px){.wrap.detail.unreal-case-study{width:calc(100% - 32px);padding:30px 0 28px}.unreal-intro{grid-template-columns:minmax(0,1fr);gap:22px;margin-bottom:30px}.unreal-intro h1{font-size:clamp(50px,13vw,68px)}.unreal-intro-copy .unreal-summary{margin-top:0}.unreal-intro-copy p,.unreal-section-copy p,.unreal-caption p,.unreal-notes-copy p{font-size:12px}.unreal-meta{gap:9px;margin-top:22px}.unreal-meta dt,.unreal-meta dd{font-size:8px}.unreal-hero{margin-bottom:72px}.unreal-labels{font-size:7px;letter-spacing:.8px}.unreal-caption,.unreal-notes{grid-template-columns:minmax(0,1fr);gap:12px}.unreal-caption h2,.unreal-section-copy h2,.unreal-notes h2{font-size:34px}.unreal-section{margin-bottom:74px}.unreal-section-copy{margin-bottom:22px}.unreal-pair,.unreal-trio{gap:16px}.unreal-pair .unreal-media:nth-child(2n){transform:translateY(18px)}.unreal-shot-stack{grid-template-columns:1fr;gap:22px}.unreal-shot-stack .unreal-media:first-child,.unreal-shot-stack .unreal-media:last-child{grid-column:1;transform:none}.unreal-secondary-media{width:100%}.unreal-process{grid-template-columns:minmax(0,1fr);gap:0;margin-bottom:28px}.unreal-process .unreal-section-copy{margin-bottom:22px}.unreal-material-grid{gap:16px}.unreal-disclosure-media,.unreal-disclosure-media--wide{width:100%}.unreal-notes{padding:30px 0}}@media(max-width:520px){.unreal-pair,.unreal-trio,.unreal-material-grid{grid-template-columns:minmax(0,1fr);gap:22px}.unreal-pair .unreal-media:nth-child(2n){transform:none}.unreal-trio .unreal-media:nth-child(2),.unreal-trio .unreal-media:nth-child(3){transform:none}}@media(hover:none),(pointer:coarse){.nav-links a{-webkit-tap-highlight-color:transparent}.nav-links a:active{background:#c1ff800d}}@media(hover:none),(pointer:coarse){.name .name-letters{display:none}.name .name-wordmark{display:block;width:4.4em;height:auto}}.name .name-wordmark{position:relative;height:calc(4.4em * var(--name-height));overflow:visible}.name .name-glyph{position:absolute;top:0;height:100%;transform-origin:center}.name .name-glyph-ink{position:absolute;top:0;height:100%;max-width:none;background-color:currentColor;-webkit-mask:var(--glyph-image) center / 100% 100% no-repeat;mask:var(--glyph-image) center / 100% 100% no-repeat;pointer-events:none}@media(hover:none)and (prefers-reduced-motion:no-preference),(pointer:coarse)and (prefers-reduced-motion:no-preference){.name .name-wordmark.is-tapped .name-glyph{animation:nameFlip .7s ease-in-out both;animation-delay:calc(var(--i) * 24ms)}}
