:root{color-scheme:dark;--ink: #07070b;--graphite: #111118;--platinum: #ece9e2;--smoke: #8f8c99;--hair: rgba(236, 233, 226, .12);--hair-strong: rgba(236, 233, 226, .24);--lav: #b8a6ff;--champagne: #d8c6a0;--danger: #ff9aa9;--ok: #b9f0cf;--glass: rgba(17, 17, 24, .72);--ease: cubic-bezier(.16, 1, .3, 1);--serif: "Instrument Serif", "Cormorant Garamond", Georgia, "Times New Roman", serif;--sans: "Manrope", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--gutter: clamp(18px, 5vw, 72px);--nav-h: 82px;--pad-x: clamp(22px, 4.6vw, 72px);--glass-fill: linear-gradient(145deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .016) 45%, rgba(184, 166, 255, .03));--glass-tint: rgba(10, 10, 15, .56);--glass-edge: rgba(236, 233, 226, .14);--glass-blur: 14px;--glass-radius: 30px}*,*:before,*:after{box-sizing:border-box}html{overflow-x:hidden;scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 24px)}body{margin:0;background:var(--ink);color:var(--platinum);font-family:var(--sans);font-size:16px;font-weight:400;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:clip}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit}[hidden]{display:none!important}svg{width:1em;height:1em;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}svg.fill{fill:currentColor;stroke:none}::selection{background:#b8a6ff59}:focus-visible{outline:1px solid var(--lav);outline-offset:4px;border-radius:6px}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(120% 90% at 50% 40%,transparent 55%,rgba(0,0,0,.65) 100%),radial-gradient(60% 50% at 72% 30%,rgba(124,103,242,.12),transparent 70%),radial-gradient(50% 45% at 8% 4%,rgba(124,103,242,.1),transparent 70%),radial-gradient(42% 40% at 34% 100%,rgba(240,166,255,.05),transparent 70%)}.page{position:relative;z-index:2;max-width:1280px;margin:0 auto;padding-inline:var(--gutter);padding-block:calc(var(--nav-h) + 26px) 28px;display:flex;flex-direction:column;gap:clamp(18px,2.2vw,28px)}.splash+.page{padding-top:26px}.glass{position:relative;border-radius:var(--glass-radius);background:var(--glass-fill),var(--glass-tint);backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));box-shadow:inset 0 0 0 1px var(--glass-edge),inset 0 1px #ffffff29,0 40px 90px -50px #000000f2}.glass:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.07),transparent 26%)}.glass>*{position:relative}.js [data-rise]{opacity:0;transition:opacity 1.1s var(--ease)}.js [data-rise].in{opacity:1}.js body:after{content:"";position:fixed;inset:0;z-index:300;background:var(--ink);pointer-events:none;transition:opacity 1.1s ease .05s,visibility 0s linear 1.2s}.js body.is-loaded:after{opacity:0;visibility:hidden}.js [data-fadein]{opacity:0;translate:0 32px;transition:opacity 1s var(--ease) var(--d, 0ms),translate 1.2s var(--ease) var(--d, 0ms)}.js [data-fadein].in{opacity:1;translate:0 0}.js .card[data-fadein]{transition:opacity 1s var(--ease) var(--d, 0ms),translate 1.2s var(--ease) var(--d, 0ms),transform .8s var(--ease),box-shadow .6s var(--ease)}.pane{background:linear-gradient(145deg,#ffffff0f,#ffffff04);box-shadow:inset 0 0 0 1px var(--glass-edge),inset 0 1px #ffffff1f}[data-fade]{opacity:0;transform:translateY(22px);transition:opacity 1.2s var(--ease),transform 1.2s var(--ease);transition-delay:calc(var(--i, 0) * .12s + .2s)}body.is-loaded [data-fade]{opacity:1;transform:none}.hero h1 .line{display:block;overflow:hidden;padding-bottom:.06em}.hero h1 .line>span{display:inline-block;transform:translateY(105%);transition:transform 1.4s var(--ease)}body.is-loaded .hero h1 .line>span{transform:none;transition-delay:.45s}body.is-loaded .hero h1 .line:nth-child(2)>span{transition-delay:.58s}body.is-loaded .hero h1 .line:nth-child(3)>span{transition-delay:.71s}.hero h1 em{font-style:italic;color:var(--lav)}.hero--home h1 em{white-space:nowrap}.js [data-reveal]{opacity:0;transform:translateY(36px);transition:opacity 1.2s var(--ease),transform 1.2s var(--ease);transition-delay:var(--d, 0ms)}.js [data-reveal].in{opacity:1;transform:none}h2{margin:0 0 12px;font-family:var(--serif);font-weight:400;font-size:clamp(42px,5.4vw,72px);line-height:1;letter-spacing:-.02em;text-wrap:balance}h3{margin:0;font-size:17px;font-weight:600;letter-spacing:-.01em}p{margin:0}.kicker{display:flex;align-items:center;gap:14px;margin:0 0 22px;color:var(--smoke);font-size:13px;font-weight:500;letter-spacing:.04em}.kicker:before{content:"";width:28px;height:1px;background:var(--lav);opacity:.8;flex-shrink:0}.kicker.live:before{width:8px;height:8px;border-radius:50%;background:var(--lav);box-shadow:0 0 #b8a6ff99;animation:live 2.4s ease-out infinite}@keyframes live{70%{box-shadow:0 0 0 10px #b8a6ff00}to{box-shadow:0 0 #b8a6ff00}}.btn{--x: 50%;--y: 50%;--r: 120px;--mx: 0px;--my: 0px;position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:999px;font:600 15px/1 var(--sans);letter-spacing:.01em;cursor:pointer;overflow:hidden;transform:translate(var(--mx),var(--my));transition:transform .6s var(--ease),box-shadow .5s var(--ease),color .35s ease,background-color .4s ease;-webkit-tap-highlight-color:transparent}.btn:after{content:"";position:absolute;inset:0;z-index:-2;border-radius:inherit;background:linear-gradient(135deg,#c9bcff,#8a74ff 55%,#6a52f0);opacity:0;transition:opacity .45s ease}.btn:before{content:"";position:absolute;inset:-1px;z-index:-1;border-radius:inherit;background:radial-gradient(circle var(--r) at var(--x) var(--y),#ffffff 0%,#fdeeff 14%,#f0a6ff 32%,rgba(196,120,255,.5) 52%,rgba(120,90,255,0) 74%);opacity:0;transform:scale(.92);transition:opacity .5s ease,transform .7s var(--ease)}.btn-label{position:relative;display:inline-flex;align-items:center;gap:10px;white-space:nowrap}.btn .ico{font-size:1.1em;transition:transform .5s var(--ease)}.btn-label .ico:last-child{margin-left:2px}.btn-label .ico.back{transform:scaleX(-1);margin:0 2px 0 0}.btn-primary{color:#fff;background:linear-gradient(135deg,#a893ff,#7c67f2,#5b45e0);box-shadow:inset 0 1px #ffffff59,inset 0 0 0 1px #ffffff1f,0 14px 34px -14px #7c67f2e6}.btn-ghost,.btn-icon{color:var(--platinum);background:#ece9e20f;box-shadow:inset 0 0 0 1px var(--hair-strong)}.btn:hover,.btn.is-hover{color:#140a33;box-shadow:inset 0 0 0 1px #fff9,0 20px 44px -12px #b46effbf}.btn:hover:before,.btn.is-hover:before{opacity:1;transform:scale(1)}.btn:hover:after,.btn.is-hover:after{opacity:1}.btn:hover .btn-label .ico:last-child{transform:translate(4px)}.btn:hover .btn-label .ico.back{transform:scaleX(-1) translate(4px)}.btn:active{transition-duration:.15s;transform:translate(var(--mx),var(--my)) scale(.96)}.btn:disabled{cursor:progress;opacity:.75}.btn-sm{padding:12px 20px;font-size:13px;--r: 70px}.btn-lg{padding:19px 32px}.btn-icon{width:48px;height:48px;padding:0;font-size:18px;--r: 40px}.btn-icon.btn-xs{width:38px;height:38px;font-size:15px;--r: 32px}.btn-icon svg .dot{fill:currentColor;stroke:none}.link{background:linear-gradient(currentColor,currentColor) 0 100% / 0 1px no-repeat;transition:background-size .6s var(--ease),color .4s ease}.link:hover{color:var(--lav);background-size:100% 1px}.link-arrow{position:relative;display:inline-flex;align-items:center;gap:9px;color:var(--lav);font-size:13.5px;font-weight:500;letter-spacing:.02em}.link-arrow:after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .6s var(--ease)}.link-arrow:hover:after{transform:scaleX(1);transform-origin:left}.link-arrow svg{transition:transform .5s var(--ease)}.link-arrow:hover svg{transform:translate(4px)}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;padding:calc(env(safe-area-inset-top,0px) + 14px) var(--gutter) 0;pointer-events:none}.nav{position:relative;display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:calc(1280px - 2 * var(--gutter));height:68px;margin:0 auto;padding:0 12px 0 28px;border-radius:999px;pointer-events:auto;background:var(--glass-fill),#0c0c1280;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:inset 0 0 0 1px var(--glass-edge),inset 0 1px #ffffff29,0 24px 60px -30px #000000e6;transition:background-color .5s ease}.site-header.scrolled .nav{background:var(--glass-fill),#0a0a0fa8}.brand{font-family:var(--serif);font-size:24px;letter-spacing:.005em;line-height:1;white-space:nowrap}.brand span{color:var(--smoke)}.nav-links{display:flex;gap:36px;font-size:13.5px;font-weight:500;letter-spacing:.02em}.nav-links a{position:relative;padding:6px 0;color:#ece9e2b8;transition:color .4s ease}.nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:currentColor;transform:scaleX(0);transform-origin:right;transition:transform .6s var(--ease)}.nav-links a:hover{color:var(--platinum)}.nav-links a:hover:after{transform:scaleX(1);transform-origin:left}.nav-links a.active{color:var(--lav)}.nav-links a.active:after{transform:scaleX(1)}.menu-toggle{display:none}.splash{--bw: min(116vw, 270svh );position:sticky;top:0;z-index:0;height:100vh;height:100svh;min-height:420px;overflow:hidden;transform-origin:50% 60%;will-change:transform,opacity}.splash-in{position:absolute;inset:0;opacity:0;transition:opacity 1.4s ease}body.is-loaded .splash-in{opacity:1}.sp-bg{position:absolute;inset:0;background:radial-gradient(ellipse 60% 118% at 50% 64%,#08085a,#06064a 18%,#04042f 40%,#02021a 64%,#000 86%),var(--ink)}.sp-wide{position:absolute;left:50%;bottom:0;transform:translate(-50%);width:var(--bw);max-width:none;height:auto;filter:saturate(.8);-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 16%);mask-image:linear-gradient(to bottom,transparent 0,#000 16%)}.splash.gone{visibility:hidden;pointer-events:none}.cue{position:absolute;left:50%;bottom:34px;transform:translate(-50%);z-index:3;display:flex;flex-direction:column;align-items:center;gap:10px;font-size:12.5px;letter-spacing:.06em;color:#ece9e2b8;padding:8px 14px;transition:color .4s ease}.cue:hover{color:var(--lav)}.cue i{display:block;width:1px;height:42px;background:linear-gradient(var(--lav),transparent);animation:cue 2.4s var(--ease) infinite}@keyframes cue{0%{transform:scaleY(.2);transform-origin:top;opacity:0}40%{opacity:1}to{transform:scaleY(1);transform-origin:top;opacity:0}}.hero{padding:clamp(52px,10vh,120px) var(--pad-x) clamp(52px,9vh,110px)}.hero h1{margin:0 0 34px;font-family:var(--serif);font-weight:400;font-size:clamp(60px,10vw,144px);line-height:.92;letter-spacing:-.025em;text-wrap:balance}.lead{margin:0 0 42px;max-width:46ch;color:#ece9e2c7;font-size:17px;font-weight:300;line-height:1.75}.hero-actions{display:flex;align-items:center;gap:16px 24px;flex-wrap:wrap}.hero-mail{color:var(--smoke);font-size:14px;user-select:all}.focus{display:flex;flex-wrap:wrap;gap:10px 28px;margin:64px 0 0;padding:22px 0 0;list-style:none;border-top:1px solid var(--hair);max-width:560px;color:var(--smoke);font-size:13px;letter-spacing:.04em}.focus li{display:flex;align-items:center;gap:10px}.focus li:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--champagne);opacity:.8}.hero--home{padding-top:clamp(56px,10vh,110px)}.hero--home h1{font-size:clamp(54px,7.4vw,132px);margin-bottom:0;text-wrap:initial}@media(min-width:900px){.hero--home h1 .line{white-space:nowrap}}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(48px,6vw,88px);align-items:center;margin-top:58px}.hero-grid .lead{margin-bottom:38px}.hero--home .hero-actions{margin-bottom:52px}.stats{display:flex;border-top:1px solid var(--hair);padding-top:28px}.stat{padding:0 clamp(14px,2vw,30px);border-left:1px solid var(--hair)}.stat:first-child{padding-left:0;border-left:0}.stat b{display:block;font-family:var(--serif);font-weight:400;font-size:42px;line-height:1.1}.stat span{display:block;color:var(--smoke);font-size:12.5px;font-weight:500;letter-spacing:.04em}.showcase{position:relative}.showcase-in{position:relative;overflow:hidden;padding:10px;border-radius:24px;transform:perspective(1100px) rotateX(var(--tx, 0deg)) rotateY(var(--ty, 0deg));transition:transform .8s var(--ease)}.showcase-in img{border-radius:16px;width:100%;height:auto;filter:saturate(.8) contrast(1.02);transform:scale(1.04);transition:transform 1.2s var(--ease),filter 1.2s ease}.showcase:hover .showcase-in img{transform:scale(1.09);filter:saturate(1) contrast(1.04)}.showcase-in:before{content:"";position:absolute;z-index:1;pointer-events:none;inset:10px;border-radius:16px;background:linear-gradient(160deg,#3c307873,#14122233 60%);mix-blend-mode:multiply}.showcase-in:after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.16) 45%,transparent 60%);transform:translate(-120%);transition:transform 1.4s var(--ease)}.showcase:hover .showcase-in:after{transform:translate(120%)}.metric{position:absolute;z-index:3;padding:14px 20px;border-radius:16px;background:linear-gradient(145deg,#ffffff1f,#ffffff08),#0e0e15d1;box-shadow:inset 0 0 0 1px #ece9e233,inset 0 1px #fff3,0 20px 40px -18px #000c;animation:float 6s ease-in-out infinite}.metric span{display:block;color:var(--smoke);font-size:12.5px;font-weight:500;letter-spacing:.05em}.metric b{font-family:var(--serif);font-weight:400;font-size:28px;line-height:1.2;color:var(--platinum)}.metric b i{font-style:normal}.m1{left:-8%;top:9%}.m2{right:-7%;top:26%;animation-delay:-2s}.m3{left:-5%;bottom:11%;animation-delay:-4s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.section{padding:clamp(44px,6.4vw,92px) var(--pad-x)}.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px 28px;flex-wrap:wrap;margin-bottom:56px}.sec-head h2{margin:0}.section-bleed{overflow:hidden}.reel-vp{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 94%,transparent 100%)}.reel-track{display:flex;align-items:flex-start;width:max-content;animation:reelrun var(--dur, 25s) linear infinite;will-change:transform}@keyframes reelrun{0%{transform:translateZ(0)}to{transform:translate3d(-50%,0,0)}}.reel-vp:hover .reel-track,.reel-vp:focus-within .reel-track,.reel.is-off .reel-track{animation-play-state:paused}.reel-card{flex:0 0 auto;display:block;margin-right:26px;width:clamp(280px,34vw,520px)}.reel-shot{height:clamp(190px,23vw,330px);padding:14px;overflow:hidden;border-radius:20px;transition:box-shadow .6s var(--ease)}.reel-shot img{width:100%;height:100%;object-fit:contain;transition:transform 1.2s var(--ease)}.reel-card:hover .reel-shot{box-shadow:inset 0 0 0 1px #b8a6ff73}.reel-card:hover .reel-shot img{transform:scale(1.04)}.reel-cap{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin-top:20px;padding-top:16px;border-top:1px solid var(--hair)}.reel-cap h3{font-family:var(--serif);font-weight:400;font-size:clamp(22px,2vw,28px);letter-spacing:-.015em;line-height:1.1;transition:color .4s ease}.reel-card:hover .reel-cap h3{color:var(--lav)}.reel-cap span{color:var(--smoke);font-size:12.5px;font-weight:500;letter-spacing:.05em;white-space:nowrap}.duo{display:grid;grid-template-columns:1fr 1fr}.duo>div:first-child{padding-right:clamp(32px,5vw,64px)}.duo>div:last-child{padding-left:clamp(32px,5vw,64px);border-left:1px solid var(--hair)}.duo h2{margin-bottom:50px}.svc{display:flex;gap:20px;padding:26px 0;border-top:1px solid var(--hair)}.svc:last-child{border-bottom:1px solid var(--hair)}.svc-n{min-width:30px;padding-top:3px;color:var(--champagne);font-size:12.5px;font-weight:500}.svc h3{margin-bottom:5px}.svc p,.step p{color:var(--smoke);font-size:14.5px;font-weight:300}.steps{display:grid;grid-template-columns:1fr 1fr;gap:34px 30px}.step{position:relative;padding-left:22px}.step:before{content:"";position:absolute;left:0;top:9px;width:5px;height:5px;border-radius:50%;background:var(--champagne);opacity:.8}.step-n{display:block;margin-bottom:6px;color:var(--lav);font-size:12.5px;font-weight:500;letter-spacing:.06em}.step h3{margin-bottom:4px}.trio{display:grid;grid-template-columns:1fr 1fr 1fr}.trio>div{padding:0 clamp(28px,3.6vw,46px)}.trio>div:first-child{padding-left:0}.trio>div:last-child{padding-right:0}.trio>div+div{border-left:1px solid var(--hair)}.trio h2{font-size:clamp(42px,3.8vw,54px);margin-bottom:34px}.list{margin:0;padding:0;list-style:none}.list li{position:relative;margin-bottom:11px;padding-left:20px;color:#ece9e2c7;font-size:14.5px;font-weight:300}.list li:before{content:"";position:absolute;left:0;top:10px;width:5px;height:5px;border-radius:50%;background:var(--champagne);opacity:.8}.sub-label{display:block;margin:30px 0 14px;color:var(--lav);font-size:12.5px;font-weight:500;letter-spacing:.05em}.about p:not(.kicker){margin-bottom:26px;color:#ece9e2c7;font-size:16px;font-weight:300}.meter{margin-bottom:22px}.meter-top{display:flex;justify-content:space-between;margin-bottom:9px;font-size:13.5px}.meter-top em{font-style:normal;color:var(--smoke)}.track{position:relative;height:1px;overflow:hidden;background:var(--hair)}.track i{position:absolute;inset:0 auto 0 0;width:0;background:linear-gradient(90deg,var(--lav),var(--champagne));transition:width 1.6s var(--ease)}.hero--work{padding-bottom:clamp(44px,6vw,72px)}.work-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(32px,5vw,72px);align-items:center}.work-hero h1{font-size:clamp(52px,6.2vw,96px)}.work-hero .lead{margin-bottom:0}.hero-art{position:relative;container-type:inline-size;aspect-ratio:515 / 360}.hero-art img{width:100%;height:100%;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 93%,transparent 100%),linear-gradient(180deg,transparent 0,#000 5%,#000 90%,transparent 100%);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent 0,#000 6%,#000 93%,transparent 100%),linear-gradient(180deg,transparent 0,#000 5%,#000 90%,transparent 100%);mask-composite:intersect}.chip{position:absolute;left:67.2%;display:flex;align-items:center;gap:2cqw;padding-left:2cqw;border-radius:1.6cqw;background:linear-gradient(145deg,#ffffff1a,#ffffff05),#0e0d16eb;box-shadow:inset 0 0 0 1px #b8a6ff57,inset 0 1px #ffffff29,0 0 3cqw #7c67f238;color:var(--platinum);font-size:2.45cqw;font-weight:500;white-space:nowrap;animation:float 6s ease-in-out infinite}.chip--1{top:18.6%;width:27.2%;height:13.6%}.chip--2{top:34%;width:29.1%;height:12.5%;animation-delay:-2s}.chip--3{top:49%;width:28.4%;height:11.7%;animation-delay:-4s}.chip-icon{display:grid;place-items:center;width:5.6cqw;height:5.6cqw;border-radius:1.2cqw;background:#7c67f238;color:var(--lav)}.chip-icon svg{width:3.7cqw;height:3.7cqw}.filters{display:flex;flex-wrap:wrap;gap:10px}.hero--work .filters{margin-top:clamp(40px,5vw,56px)}.pill{height:42px;padding:0 20px;border:0;border-radius:999px;background:#ece9e20a;box-shadow:inset 0 0 0 1px var(--hair-strong);color:#ece9e2b8;font:500 13.5px/1 var(--sans);letter-spacing:.02em;cursor:pointer;transition:color .4s ease,box-shadow .4s ease,background .4s ease;-webkit-tap-highlight-color:transparent}.pill:hover{color:var(--platinum);box-shadow:inset 0 0 0 1px #b8a6ff8c}.pill.is-active{color:#fff;background:linear-gradient(135deg,#a893ff,#7c67f2,#5b45e0);box-shadow:inset 0 1px #ffffff59,0 12px 28px -14px #7c67f2e6}.pill-n{margin-left:7px;color:var(--smoke);font-variant-numeric:tabular-nums;font-size:.92em}.pill.is-active .pill-n{color:#ffffffbf}.projects{display:grid;grid-template-columns:1fr 1fr;gap:clamp(18px,2.2vw,28px)}.card{display:flex;flex-direction:column;overflow:hidden;transition:transform .8s var(--ease),box-shadow .6s var(--ease)}.card:hover{transform:perspective(1100px) rotateX(var(--tx, 0deg)) rotateY(var(--ty, 0deg)) translateY(-6px);box-shadow:inset 0 0 0 1px #b8a6ff66,inset 0 1px #fff3,0 50px 90px -40px #000000f2}.card:after,.poster-img:after{content:"";position:absolute;inset:0;z-index:3;border-radius:inherit;pointer-events:none;background:radial-gradient(480px circle at var(--gx, 50%) var(--gy, 0%),rgba(255,255,255,.11),transparent 45%);opacity:0;transition:opacity .5s ease}.card:hover:after,.poster-img:hover:after{opacity:1}.card-media{position:relative;container-type:inline-size;margin:10px 10px 0;aspect-ratio:1500 / 646;overflow:hidden;border-radius:18px;background:#ebe9e8;box-shadow:0 0 0 1px #ffffff1a}.card--banner .card-media{aspect-ratio:1500 / 505}.card-media img{width:100%;height:100%;object-fit:cover;object-position:var(--pos, 50% 50%);transition:transform 1.2s var(--ease)}.card:hover .card-media img{transform:scale(1.04)}.card-media .btn-icon{position:absolute;top:12px;right:12px;z-index:2;background:#07070b8c}.banner-text{position:absolute;left:7%;top:38%;z-index:1;display:flex;flex-direction:column;gap:.8cqw}.banner-text strong{color:#1f2a12;font-family:var(--serif);font-weight:400;font-size:6cqw;line-height:1}.banner-text span{color:#2f3520;font-size:2.2cqw;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.card-body{flex:1;display:flex;flex-direction:column;padding:26px 28px 28px}.tag{margin-bottom:14px;color:var(--lav);font-size:12.5px;font-weight:500;letter-spacing:.06em}.card-title{margin:0 0 10px;font-family:var(--serif);font-weight:400;font-size:clamp(28px,2.6vw,36px);line-height:1.05;letter-spacing:-.015em}.card-desc{max-width:42ch;margin-bottom:24px;color:#ece9e2b8;font-size:15px;font-weight:300;line-height:1.65}.card-body .link-arrow{margin-top:auto;align-self:flex-start}.card-files{display:flex;flex-wrap:wrap;gap:8px;margin:-6px 0 24px;padding:0;list-style:none}.card-files a{display:inline-flex;align-items:center;gap:8px;max-width:100%;padding:7px 12px;border:1px solid rgba(184,166,255,.28);border-radius:999px;background:#b8a6ff0f;color:#ece9e2e0;font-size:13px;line-height:1.2;text-decoration:none;transition:border-color .3s var(--ease),background .3s var(--ease)}.card-files a:hover,.card-files a:focus-visible{border-color:#b8a6ffb3;background:#b8a6ff24}.card-files svg{flex:none;width:15px;height:15px;fill:none;stroke:var(--lav);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.card-files span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-files i{flex:none;color:var(--lav);font-size:10.5px;font-style:normal;font-weight:600;letter-spacing:.08em}.stats-band{display:grid;grid-template-columns:repeat(4,1fr);padding:clamp(30px,4vw,48px) var(--pad-x)}.stats-band .stat{display:flex;align-items:center;gap:18px;padding:0 clamp(16px,2.4vw,32px)}.stats-band .stat:first-child{padding-left:0}.stats-band .stat .stat-ico{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:50%;color:var(--lav);font-size:19px;background:#7c67f21a;box-shadow:inset 0 0 0 1px #b8a6ff47}.gallery{padding:clamp(32px,4.6vw,64px) var(--pad-x)}.masonry{columns:3;column-gap:clamp(16px,2vw,26px);margin-top:40px}.poster{margin:0 0 clamp(22px,2.6vw,34px);break-inside:avoid}.poster-img{position:relative;display:block;padding:8px;border-radius:20px;transition:transform .8s var(--ease),box-shadow .6s var(--ease)}.poster-img img{border-radius:13px}.poster-img img{width:100%;height:auto;transition:transform 1.2s var(--ease)}.poster-img:hover{transform:perspective(900px) rotateX(var(--tx, 0deg)) rotateY(var(--ty, 0deg));box-shadow:inset 0 0 0 1px #b8a6ff73,0 30px 60px -30px #000000e6}.poster figcaption{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px;padding:14px 2px 0}.poster-n{color:var(--lav);font-size:12.5px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:.04em}.poster-t{font-size:14.5px;font-weight:500;line-height:1.35}.poster-c{flex-basis:100%;color:var(--smoke);font-size:12.5px;letter-spacing:.02em}.contact{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:clamp(40px,7vw,110px);padding:clamp(44px,6.4vw,92px) var(--pad-x)}.contact h2,.cta h2{margin:0 0 12px;font-family:var(--serif);font-weight:400;font-size:clamp(42px,5.4vw,72px);line-height:1;letter-spacing:-.02em;text-wrap:balance}.sub{margin:0;color:#ece9e2b3;font-size:17px;font-weight:300}.contact--home{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}.contact--home h2{font-size:clamp(46px,6.4vw,96px);max-width:12ch;margin-bottom:24px}.contact--home .sub{max-width:44ch;margin-bottom:34px}.contact--home .details{margin-bottom:34px}.contact--home form{margin-top:8px}form{display:grid;gap:34px;margin-top:54px}.row.two{display:grid;grid-template-columns:1fr 1fr;gap:34px}.field{position:relative;display:flex;flex-direction:column;gap:10px}.field label{font-size:12.5px;font-weight:500;letter-spacing:.06em;color:var(--smoke);transition:color .4s ease}.field:focus-within label{color:var(--lav)}.field input,.field textarea{width:100%;padding:4px 0 14px;background:transparent;border:0;border-bottom:1px solid var(--hair-strong);border-radius:0;outline:0;color:var(--platinum);font:300 18px/1.5 var(--sans);resize:vertical}.field textarea{min-height:110px}.field ::placeholder{color:#8f8c99bf;transition:opacity .4s ease,transform .4s ease}.field :focus::placeholder{opacity:.35}.field .bar{position:absolute;left:0;right:0;height:1px;bottom:0;background:linear-gradient(90deg,var(--lav),var(--champagne));transform:scaleX(0);transform-origin:left;transition:transform .8s var(--ease)}.field:has(.err:not(:empty)) .bar{bottom:26px}.field:focus-within .bar{transform:scaleX(1)}.field.invalid input,.field.invalid textarea{border-bottom-color:var(--danger)}.err{font-style:normal;font-size:12.5px;color:var(--danger)}.err:empty{display:none}.form-foot{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:6px}.wa-hint{margin:0;font-size:13.5px;color:var(--smoke)}.wa-hint a{color:var(--platinum);border-bottom:1px solid var(--hair-strong);transition:border-color .4s ease,color .4s ease}.wa-hint a:hover{color:var(--lav);border-color:var(--lav)}.form-status{flex-basis:100%;margin:0;font-size:14px;color:var(--smoke)}.form-status:empty{display:none}.form-status.ok{color:var(--ok)}.form-status a{text-decoration:underline}.portrait{position:relative;margin:0 0 30px;max-width:340px;aspect-ratio:4 / 5;border-radius:180px 180px 18px 18px;overflow:hidden;background:var(--graphite);box-shadow:0 0 0 1px var(--hair-strong),0 40px 80px -30px #000c;transform:perspective(900px) rotateX(var(--tx, 0deg)) rotateY(var(--ty, 0deg));transition:transform .8s var(--ease)}.portrait img{width:100%;height:100%;object-fit:cover;filter:saturate(.8) contrast(1.02);transform:scale(1.04);transition:transform 1.2s var(--ease),filter 1.2s ease}.portrait:hover img{transform:scale(1.09);filter:saturate(1) contrast(1.04)}.portrait:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(160deg,#3c30788c,#14122240 60%);mix-blend-mode:multiply;transition:opacity 1.2s ease}.portrait:hover:before{opacity:.55}.portrait:after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(255,255,255,.16) 45%,transparent 60%);transform:translate(-120%);z-index:2;transition:transform 1.4s var(--ease)}.portrait:hover:after{transform:translate(120%)}.portrait figcaption{position:absolute;left:0;right:0;bottom:0;display:grid;gap:2px;padding:60px 22px 20px;z-index:3;background:linear-gradient(to top,rgba(7,7,11,.92),transparent)}.portrait figcaption strong{font-family:var(--serif);font-weight:400;font-size:28px;line-height:1.1}.portrait figcaption span{color:#ece9e2bf;font-size:13.5px;letter-spacing:.04em}.bio{margin:0 0 30px;max-width:34ch;color:#ece9e2c7;font-size:16px;font-weight:300}.details{margin:0;display:grid}.details>div{display:grid;grid-template-columns:110px 1fr;gap:16px;padding-block:18px;border-top:1px solid var(--hair)}.details dt{color:var(--smoke);font-size:12.5px;letter-spacing:.06em;padding-top:2px}.details dd{margin:0;font-size:15px;line-height:1.6;word-break:break-word}.connect{padding-top:26px;border-top:1px solid var(--hair)}.connect .kicker{margin-bottom:18px}.socials{display:flex;gap:12px}.cta{padding:clamp(48px,7vw,104px) var(--pad-x);overflow:hidden}.cta h2{max-width:14ch;font-size:clamp(46px,7vw,104px);margin-bottom:36px}.cta-row{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}.cta-row .sub{max-width:46ch}.cta-wave{position:absolute;right:0;bottom:0;width:min(62%,720px);height:58%;pointer-events:none;stroke:none;opacity:.9;position:absolute!important}.footer{display:grid;grid-template-columns:auto auto;justify-content:space-between;align-items:center;gap:20px 40px;padding:28px var(--pad-x) 22px;border-radius:26px}.foot-social{display:flex;gap:18px;font-size:17px;color:var(--smoke)}.foot-social a{transition:color .4s ease,transform .5s var(--ease)}.foot-social a:hover{color:var(--platinum);transform:translateY(-3px)}.copy{grid-column:1 / -1;margin:4px 0 0;color:#8f8c99b3;font-size:12.5px}.lightbox{position:fixed;inset:0;z-index:120;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(8px,2vw,24px);padding:clamp(16px,4vw,48px);background:#07070be6;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);opacity:0;transition:opacity .35s ease}.lightbox.show{opacity:1}.lb-stage{margin:0;height:100%;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px}.lb-img{width:auto;height:auto;max-width:100%;max-height:calc(100vh - 150px);max-height:calc(100dvh - 150px);border-radius:14px;box-shadow:0 0 0 1px var(--glass-edge),0 40px 90px -30px #000000e6;transform:scale(.97);transition:transform .45s var(--ease)}.lightbox.show .lb-img{transform:none}.lb-cap{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 10px;text-align:center;font-size:14.5px;font-weight:500}.lb-client{flex-basis:100%;color:var(--smoke);font-size:12.5px;font-weight:400}.lb-close{position:absolute;top:clamp(14px,3vw,28px);right:clamp(14px,3vw,28px);z-index:2}html.lb-open{overflow:hidden}@media(max-width:620px){.lightbox{grid-template-columns:minmax(0,1fr);padding-bottom:84px}.lb-nav{position:absolute;bottom:22px}.lb-prev{left:calc(50% - 64px)}.lb-next{right:calc(50% - 64px)}}.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));z-index:100;max-width:calc(100% - 32px);padding:13px 20px;border-radius:999px;background:#111118f0;box-shadow:inset 0 0 0 1px var(--hair-strong),0 20px 40px -12px #000000b3;color:var(--platinum);font-size:14px;opacity:0;transform:translate(-50%,14px);pointer-events:none;transition:opacity .45s ease,transform .6s var(--ease)}.toast.show{opacity:1;transform:translate(-50%)}@media(max-width:1080px){.hero-grid{grid-template-columns:1fr;gap:64px}.showcase{max-width:560px;width:100%;margin-inline:auto}.m1{left:-3%}.m2{right:-3%}.m3{left:-2%}.duo{grid-template-columns:1fr}.duo>div:first-child{padding-right:0;padding-bottom:64px}.duo>div:last-child{padding-left:0;border-left:0;border-top:1px solid var(--hair);padding-top:64px}.trio{grid-template-columns:1fr 1fr}.trio>div:last-child{grid-column:1 / -1;padding:46px 0 0;border-left:0;border-top:1px solid var(--hair);margin-top:46px}.work-hero{grid-template-columns:1fr}.hero-art{max-width:620px;width:100%}.stats-band{grid-template-columns:1fr 1fr;row-gap:32px}.stats-band .stat:nth-child(3){padding-left:0;border-left:0}}@media(max-width:980px){.contact,.contact--home{grid-template-columns:1fr}.portrait{max-width:300px}}@media(max-width:820px){:root{--nav-h: 72px;--glass-blur: 10px;--glass-radius: 24px;--glass-tint: rgba(10, 10, 15, .82)}.glass{backdrop-filter:none;-webkit-backdrop-filter:none}.nav{height:60px;padding:0 8px 0 20px}.nav>.btn{display:none}.menu-toggle{display:grid;gap:6px;place-content:center;width:44px;height:44px;border:0;border-radius:50%;background:#ece9e20d;box-shadow:inset 0 0 0 1px var(--hair-strong);cursor:pointer}.menu-toggle span{display:block;width:18px;height:1.5px;background:var(--platinum);border-radius:2px;transition:transform .5s var(--ease)}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.75px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.75px) rotate(-45deg)}.nav-links{position:absolute;top:calc(100% + 10px);left:0;right:0;flex-direction:column;gap:0;padding:10px 20px;border-radius:20px;background:#111118f5;box-shadow:inset 0 0 0 1px var(--hair);font-family:var(--serif);font-size:28px;letter-spacing:0;opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .4s ease,transform .5s var(--ease)}.nav-links.open{opacity:1;transform:none;pointer-events:auto}.nav-links a{padding:8px 0}.nav-links a:after{display:none}.footer{grid-template-columns:1fr;justify-content:stretch;justify-items:center;text-align:center}.splash{--bw: 115vw}.sp-wide{bottom:auto;top:50%;transform:translate(-50%,-50%);-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 14%,#000 86%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 14%,#000 86%,transparent 100%)}.projects{grid-template-columns:1fr}.masonry{columns:2}}@media(max-width:620px){.steps,.trio{grid-template-columns:1fr}.trio>div,.trio>div:last-child{padding:0}.trio>div+div{border-left:0;border-top:1px solid var(--hair);padding-top:46px;margin-top:46px}.stats{display:grid;grid-template-columns:repeat(3,1fr)}.stat{padding:0 0 0 14px}.stat b{font-size:32px}.metric{padding:10px 14px;border-radius:12px}.metric b{font-size:21px}.metric span{font-size:11.5px}.m1{left:-2%;top:5%}.m2{right:-2%}.m3{left:-2%}.sec-head{margin-bottom:34px}.stats-band{grid-template-columns:1fr}.stats-band .stat,.stats-band .stat:first-child{padding:0;border-left:0}.card-body{padding:22px 20px 24px}.masonry{column-gap:12px}.poster-t{font-size:13px}.poster-c{font-size:12px}.pill{height:38px;padding:0 16px;font-size:13px}}@media(max-width:560px){.row.two{grid-template-columns:1fr}.lead{font-size:16px}.details>div{grid-template-columns:1fr;gap:4px}.btn-lg{padding:17px 26px}.hero-mail{font-size:13px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition-duration:.01ms!important;transition-delay:0s!important}html{scroll-behavior:auto}.splash-in,[data-fade],.js [data-reveal],.js [data-rise],.js [data-fadein]{opacity:1;transform:none;translate:none;filter:none}.js body:after{display:none}.hero h1 .line>span{transform:none}.reel-track{transform:none}.reel-vp{overflow-x:auto;scrollbar-width:thin;-webkit-mask-image:none;mask-image:none}}
