:root{--bg:#07080b;--surface:#0e0f14;--surface-2:#12141a;--line:#242832;--text:#f4f4f5;--muted:#a1a1aa;--muted-2:#71717a;--blue:#3b82f6;--blue-soft:rgba(59,130,246,.16);--page-x:80px}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:#060709;background-image:radial-gradient(80vw circle at 15% 25%,rgba(59,130,246,.07),transparent 60%),radial-gradient(90vw circle at 85% 65%,rgba(124,58,237,.05),transparent 60%),radial-gradient(70vw circle at 50% 95%,rgba(59,130,246,.06),transparent 60%);background-attachment:fixed;color:var(--text);font-family:Geist,sans-serif;font-weight:400;overflow-x:clip}body,button,input,textarea{font-family:Geist,Arial,sans-serif;font-weight:400}a{text-decoration:none}a,button{color:inherit}img{display:block;max-width:100%}::selection{background:var(--blue);color:#fff}.page-shell{width:100%;min-height:100vh;background:var(--bg);overflow-x:clip}.eyebrow{margin:0;color:var(--blue);font-size:14px;font-weight:500;text-transform:uppercase;line-height:18px;letter-spacing:.02em}.section-title{margin:0;font-family:"Instrument Serif",Georgia,serif;font-size:48px;font-weight:400;line-height:62px}.section-head{display:flex;flex-direction:column;gap:12px}[data-reveal]{opacity:1}.about,.contact,.footer,.portfolio,.services,.stats{position:relative;isolation:isolate;overflow:hidden;border-top:1px solid rgba(36,40,50,.72)}.focus{isolation:isolate;overflow:visible;border-top:1px solid rgba(36,40,50,.72)}.about:before,.contact:before,.focus:before,.footer:before,.portfolio:before,.services:before,.stats:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.014),transparent 34%)}.about>*,.contact>*,.focus>*,.footer>*,.portfolio>*,.services>*,.stats>*{position:relative;z-index:1}.about-image-wrap,.contact-form,.focus-card,.project-card,.service-card{box-shadow:0 26px 80px rgba(0,0,0,.24)}.navbar{position:fixed;z-index:90;left:0;right:0;top:0;height:85px;padding:24px var(--page-x);justify-content:space-between;background:rgba(9,9,11,.78);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid rgba(39,39,42,.9)}.brand,.navbar{display:flex;align-items:center}.brand{gap:8px;height:37px}.brand img{width:12px;height:12px}.brand span{font-family:"Instrument Serif",Georgia,serif;font-style:normal;font-size:26px;line-height:34px;white-space:nowrap}.nav-links{display:flex;gap:20px;align-items:center;font-size:14px;font-weight:500;line-height:18px}.nav-links a{position:relative;color:var(--muted);transition:color .2s ease}.nav-links a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:1px;background:var(--text);transition:right .28s ease}.nav-links a.active,.nav-links a:hover{color:var(--text)}.nav-links a.active:after{right:0}.nav-cta{height:37px;padding:10px 20px;display:flex;gap:8px;align-items:center;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);font-size:13px;font-weight:500;white-space:nowrap;transition:border-color .2s ease,transform .2s ease}.nav-cta:hover{border-color:#52525b;transform:translateY(-1px)}.nav-cta img{width:6px;height:6px}.menu-toggle{display:none;width:42px;height:38px;background:transparent;border:1px solid var(--line);border-radius:10px;align-items:center;justify-content:center;flex-direction:column;gap:5px}.menu-toggle span{width:17px;height:1px;background:var(--text);transition:transform .2s ease}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px) rotate(-45deg)}.mobile-menu{position:fixed;inset:85px 0 0 0;z-index:80;background:rgba(9,9,11,.98);padding:42px var(--page-x);display:flex;flex-direction:column;visibility:hidden;opacity:0;pointer-events:none;overflow-y:auto;transition:opacity .25s ease,visibility .25s ease}.mobile-menu a{font-family:Geist,Arial,sans-serif;font-size:34px;font-weight:500;line-height:1.2;padding:16px 0;border-bottom:1px solid var(--line);transform:translateY(10px);opacity:0;transition:transform .35s ease var(--menu-delay),opacity .35s ease var(--menu-delay)}.mobile-menu a span{display:inline-block;width:52px;font-family:Geist,Arial,sans-serif;font-size:11px;color:var(--muted-2);vertical-align:middle}.mobile-menu.open{visibility:visible;opacity:1;pointer-events:auto;transition:opacity .25s ease,visibility 0s}.mobile-menu.open a{transform:none;opacity:1}.mobile-availability,.mobile-project-controls,.project-mobile-link{display:none}.mobile-menu-label{margin:0 0 16px;color:var(--muted-2);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.mobile-menu a[aria-current=location]{color:var(--blue)}.mobile-menu a[aria-current=location]:after{content:"↗";float:right;font-size:.75em}.rail-buttons button:disabled{opacity:.3;cursor:default;background:transparent;border-color:var(--line)}.hero{min-height:100svh;height:auto;padding:150px var(--page-x) 96px;display:flex;gap:64px;align-items:center;position:relative;isolation:isolate;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;border-radius:0;background:radial-gradient(560px circle at var(--hero-x,50%) var(--hero-y,50%),rgba(59,130,246,.15),rgba(124,58,237,.085) 34%,transparent 70%);opacity:0;pointer-events:none;transition:opacity .45s cubic-bezier(.22,1,.36,1);z-index:0}.hero[data-hover=true]:before{opacity:1}.hero-art,.hero-copy{position:relative;z-index:1}.hero-copy{flex:1 1;min-width:0;gap:40px;align-items:flex-start}.hero-copy,.hero-text{display:flex;flex-direction:column}.hero-text{width:100%;gap:20px}.hero .hello{margin:0;color:var(--blue);font-size:16px;font-weight:500;text-transform:uppercase;line-height:21px}.hero h1{margin:0;font-family:"Instrument Serif",Georgia,serif;font-size:84px;font-weight:400;line-height:.95}.hero-desc,.hero-role{margin:0;color:var(--muted);font-size:18px;line-height:1.6}.hero-actions{display:flex;gap:16px}.btn{height:48px;padding:14px 28px;border-radius:12px;border:1.5px solid transparent;display:inline-flex;gap:8px;align-items:center;justify-content:center;font-size:15px;font-weight:500;line-height:20px;cursor:pointer;transition:transform .42s cubic-bezier(.22,1,.36,1),background .38s ease,border-color .38s ease}.btn:hover{transform:translateY(-3px)}.btn.primary{background:var(--text);color:var(--bg)}.btn.secondary{background:transparent;color:var(--text);border-color:var(--line)}.btn.secondary:hover{border-color:#52525b;background:#101012}.btn img{width:16px;height:16px}.hero-art{position:relative;width:555px;height:555px;flex:none;--parallax-x:0px;--parallax-y:0px;--parallax-r:0deg;perspective:900px}.hero-gradient{left:114px;top:57px;width:391px;height:391px;border-radius:10px;background:linear-gradient(244.544deg,#c4c4c4 21.621%,#646464 72.297%);transform:translate(calc(var(--parallax-x) * -.35),calc(var(--parallax-y) * -.35)) rotate(calc(var(--parallax-r) * -.4))}.hero-gradient,.hero-person{position:absolute;transition:transform .45s cubic-bezier(.22,1,.36,1)}.hero-person{left:0;top:0;width:505px;height:505px;object-fit:cover;transform:translate(var(--parallax-x),var(--parallax-y)) rotate(var(--parallax-r));filter:grayscale(.82) contrast(1.04) drop-shadow(0 24px 30px rgba(0,0,0,.36))}.hero-orbit{position:absolute;border:1px solid rgba(59,130,246,.2);border-radius:50%;pointer-events:none;opacity:0;transition:opacity .5s ease,transform .5s cubic-bezier(.22,1,.36,1)}.hero-art:hover .hero-orbit{opacity:1}.orbit-one{width:470px;height:470px;left:20px;top:24px;transform:translate(calc(var(--parallax-x) * -.8),calc(var(--parallax-y) * -.8))}.orbit-two{width:520px;height:520px;left:-5px;top:-1px;transform:translate(calc(var(--parallax-x) * -.4),calc(var(--parallax-y) * -.4))}.hero-float-label{position:absolute;right:2px;bottom:65px;padding:8px 10px;border:1px solid var(--line);background:rgba(9,9,11,.84);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:9px;letter-spacing:.18em;color:var(--muted);transform:translate(calc(var(--parallax-x) * -.6),calc(var(--parallax-y) * -.6));transition:transform .45s cubic-bezier(.22,1,.36,1),opacity .38s ease;opacity:.68}.hero-art:hover .hero-float-label,.hero[data-hover=true] .hero-float-label{opacity:1}.stats{height:169px;padding:48px var(--page-x);justify-content:space-between;background:rgba(18,20,26,.52);border-bottom:1px solid rgba(36,40,50,.72)}.stat,.stats{display:flex;align-items:center}.stat{gap:16px}.stat-value{font-family:"Instrument Serif",Georgia,serif;font-size:56px;line-height:73px;white-space:nowrap}.stat-label{width:120px;color:var(--muted);font-size:14px;font-weight:500;line-height:18px}.about{height:auto;min-height:668px;padding:64px var(--page-x);display:flex;gap:80px;align-items:center}.about-image-wrap{width:420px;height:428px;border:1px solid var(--line);border-radius:24px;overflow:hidden;flex:none;position:relative}.about-image{position:absolute;inset:0;width:100%;height:100%}.about-portrait{position:absolute;inset:-12px -16px;transform:translateY(var(--scroll-y,0));transition:transform .5s cubic-bezier(.22,1,.36,1)}.about-image-wrap:hover .about-portrait{transform:translateY(var(--scroll-y,0)) scale(1.025)}.about-bar{position:absolute;left:0;width:100%;height:126px;border-radius:10px;background:linear-gradient(90deg,#c4c4c4 35%,#595959 75%)}.about-bar.one{top:52px}.about-bar.two{top:248px}.about-person{position:absolute;inset:0;width:100%;max-width:none;height:100%;object-fit:cover;object-position:center}.image-index{position:absolute;left:16px;bottom:14px;background:rgba(9,9,11,.82);border:1px solid var(--line);border-radius:999px;padding:7px 10px;font-size:9px;letter-spacing:.12em;color:var(--muted);opacity:0;transform:translateY(6px);transition:.24s ease}.about-image-wrap:hover .image-index{opacity:1;transform:none}.about-content{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:20px}.about-copy{margin:0;color:var(--muted);font-size:16px;line-height:1.7}.pills{display:flex;flex-wrap:wrap;gap:10px}.pill{min-height:28px;padding:6px 12px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);color:var(--muted);font-size:12px;font-weight:500;line-height:16px;white-space:nowrap;transition:border-color .2s ease,color .2s ease,transform .2s ease}.pill:hover{border-color:#52525b;color:var(--text);transform:translateY(-1px)}.focus{position:relative;height:auto;padding:64px var(--page-x);display:flex;flex-direction:column;gap:32px}.focus-top{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.focus-mobile-feed{display:none}.focus-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:24px;gap:24px}.focus-grid .focus-card{transition:opacity .45s cubic-bezier(.22,1,.36,1),transform .45s cubic-bezier(.22,1,.36,1),border-color .35s ease,box-shadow .4s ease}.focus-grid .focus-card.is-scrolled-off{opacity:0!important;transform:translateY(-26px) scale(.96)!important;pointer-events:none!important}.focus-card{position:relative;background:linear-gradient(180deg,rgba(22,24,30,.85),rgba(14,15,20,.95));border:1px solid var(--line);border-radius:24px;overflow:hidden;display:flex;flex-direction:column;transition:transform .5s cubic-bezier(.22,1,.36,1),scale .5s cubic-bezier(.22,1,.36,1),border-color .35s ease,box-shadow .4s ease}.focus-card:hover{transform:translateY(-8px);scale:1.035;border-color:rgba(255,255,255,.28);box-shadow:0 32px 64px rgba(0,0,0,.65),0 0 35px rgba(59,130,246,.15);z-index:5}.focus-card-media{position:relative;width:100%;height:190px;overflow:hidden}.focus-card-media img{width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.22,1,.36,1)}.focus-card:hover .focus-card-media img{transform:scale(1.12)}.focus-card-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.15),rgba(14,15,20,.9))}.focus-card-badge{left:16px;background:rgba(14,15,20,.75);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.12);padding:5px 12px;border-radius:999px;color:var(--text);letter-spacing:.04em}.focus-card-badge,.focus-card-num{position:absolute;top:16px;font-size:11px}.focus-card-num{right:16px;letter-spacing:.12em;color:var(--muted);font-family:var(--font-geist-mono,monospace)}.focus-card-body{padding:24px 28px 28px;display:flex;flex-direction:column;gap:10px;flex:1 1}.focus-card-body h3{font-family:"Instrument Serif",Georgia,serif;font-size:28px;font-weight:400;margin:0;line-height:1.15;color:var(--text)}.focus-card-body p{font-size:14px;color:var(--muted);line-height:1.6;margin:0}.focus-card-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:12px}.focus-tag{font-size:11px;color:var(--muted);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);padding:4px 10px;border-radius:8px}.portfolio{height:auto;padding:64px var(--page-x) 72px;display:flex;flex-direction:column;gap:28px}.portfolio-top{display:flex;align-items:flex-end;justify-content:space-between}.portfolio-actions{display:flex;align-items:center;gap:12px}.rail-buttons{display:flex;gap:8px}.rail-buttons button{width:44px;height:44px;border-radius:12px;border:1px solid var(--line);background:transparent;color:var(--muted);font-size:17px;cursor:pointer;transition:.2s ease}.rail-buttons button:hover{color:var(--text);background:var(--surface);border-color:#52525b}.projects-viewport{width:100%;overflow-x:auto;scrollbar-width:none;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain}.projects-viewport::-webkit-scrollbar{display:none}.projects-grid{height:auto;display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/3);grid-gap:24px;gap:24px}.project-card{position:relative;height:100%;min-height:444px;background:linear-gradient(180deg,rgba(18,20,26,.92),rgba(14,15,20,.95));border:1px solid var(--line);border-radius:24px;overflow:hidden;scroll-snap-align:start;isolation:isolate;transition:transform .55s cubic-bezier(.22,1,.36,1),border-color .42s ease;--mx:50%;--my:50%;display:flex;flex-direction:column}.project-card:before{content:"";position:absolute;inset:0;z-index:5;pointer-events:none;background:radial-gradient(280px circle at var(--mx) var(--my),rgba(59,130,246,.16),transparent 56%);opacity:0;transition:opacity .45s ease}.project-card:hover{transform:translateY(-7px);border-color:#3f3f46}.project-card:hover:before{opacity:1}.project-image-wrap{position:relative;width:100%;height:260px;overflow:hidden;background:#0d0d0f;flex:none}.project-image{width:100%;height:260px;object-fit:cover;transition:transform .8s cubic-bezier(.22,1,.36,1),filter .65s ease;transform:translateY(var(--scroll-y,0)) scale(var(--scroll-scale,1))}.project-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(9,9,11,.5));opacity:0;transition:opacity .5s ease}.project-card:hover .project-image{transform:translateY(var(--scroll-y,0)) scale(max(1.055,var(--scroll-scale,1)));filter:saturate(1.08) contrast(1.03)}.project-card:hover .project-shade{opacity:1}.project-details{position:relative;height:auto;min-height:184px;padding:24px;display:flex;flex-direction:column;gap:12px;flex:1 1}.project-pill{align-self:flex-start;min-height:28px;padding:6px 12px;border-radius:999px;background:var(--blue-soft);border:1px solid var(--blue);color:var(--blue);font-size:12px;font-weight:500;line-height:16px;white-space:nowrap}.project-details h3{margin:0;font-family:"Instrument Serif",Georgia,serif;font-size:32px;line-height:42px;font-weight:400}.project-details p{margin:0;color:var(--muted);font-size:14px;line-height:1.5;padding-right:8px}.project-index{right:24px;top:30px;letter-spacing:.1em;color:#52525b}.project-cursor,.project-index{position:absolute;font-size:10px}.project-cursor{left:var(--mx);top:var(--my);z-index:8;width:72px;height:72px;border-radius:50%;background:var(--text);color:var(--bg);font-weight:500;line-height:1.3;display:flex;align-items:center;justify-content:center;text-align:center;transform:translate(-50%,-50%) scale(.72);opacity:0;pointer-events:none;transition:opacity .15s ease,transform .25s cubic-bezier(.22,1,.36,1)}.project-card:hover .project-cursor{opacity:1;transform:translate(-50%,-50%) scale(1)}.services{height:auto;min-height:692px;padding:64px var(--page-x);display:flex;flex-direction:column;gap:20px;background:rgba(18,20,26,.44);border-bottom:1px solid rgba(36,40,50,.72)}.services-list{height:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:24px;gap:24px}.service-card{position:relative;height:100%;background:linear-gradient(180deg,rgba(14,15,20,.94),rgba(10,11,15,.95));border:1px solid var(--line);border-radius:24px;padding:24px;display:flex;flex-direction:column;gap:24px;overflow:hidden;transition:transform .52s cubic-bezier(.22,1,.36,1),border-color .42s ease}.service-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(59,130,246,.07),transparent 45%);opacity:0;transition:opacity .45s ease}.service-card:hover{transform:translateY(-6px);border-color:#3f3f46}.service-card:hover:before{opacity:1}.service-card.short{min-height:262px}.service-card.tall{min-height:304px}.service-top{display:flex;flex-direction:column;gap:12px;flex:1 1;position:relative;z-index:1}.service-index{font-size:10px;color:#52525b;letter-spacing:.12em}.service-top h3{margin:0;font-family:"Instrument Serif",Georgia,serif;font-size:32px;line-height:42px;font-weight:400}.service-bottom i{position:absolute;right:0;color:var(--text);font-size:13px;font-style:normal;opacity:0;transform:translateX(8px);transition:.42s ease}.service-bottom{position:relative;z-index:1;border-top:1px solid var(--line);padding-top:20px;display:flex;align-items:center;justify-content:space-between;line-height:21px}.service-bottom span{color:var(--muted-2);font-size:14px}.service-bottom strong{color:var(--blue);font-size:16px;font-weight:500;transition:opacity .2s ease,transform .2s ease}.service-card:hover .service-bottom strong{opacity:0;transform:translateX(-8px)}.service-card:hover .service-bottom i{opacity:1;transform:none}.contact{height:auto;min-height:770px;padding:64px var(--page-x);display:flex;gap:80px;align-items:center}.contact-left{flex:1 1;min-width:0;gap:40px}.contact-heading,.contact-left{display:flex;flex-direction:column}.contact-heading{gap:16px}.contact-title{margin:0;font-family:"Instrument Serif",Georgia,serif;font-size:64px;line-height:1;font-weight:400;max-width:640px}.contact-details{display:flex;flex-direction:column;gap:16px}.contact-detail{display:flex;gap:12px;align-items:center;font-size:16px;line-height:21px}.contact-detail img{width:20px;height:20px}.contact-detail.location{color:var(--muted)}.contact-form{width:560px;height:auto;min-height:530px;flex:none;background:linear-gradient(180deg,rgba(18,20,26,.94),rgba(14,15,20,.96));border:1px solid var(--line);border-radius:24px;padding:24px;display:flex;flex-direction:column;gap:24px;transition:border-color .25s ease,box-shadow .25s ease}.contact-form:focus-within{border-color:#3f3f46;box-shadow:0 24px 60px rgba(0,0,0,.18)}.form-head{display:flex;align-items:center;justify-content:space-between}.form-head h3{margin:0;font-family:"Instrument Serif",Georgia,serif;font-size:32px;line-height:42px;font-weight:400}.form-pulse{width:8px;height:8px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 0 rgba(59,130,246,.35);animation:pulse 2.2s infinite}@keyframes pulse{70%{box-shadow:0 0 0 8px rgba(59,130,246,0)}to{box-shadow:0 0 0 0 rgba(59,130,246,0)}}.field{display:flex;flex-direction:column;gap:8px}.field label{color:var(--muted);font-size:12px;font-weight:500;line-height:16px}.field input,.field textarea{width:100%;background:var(--bg);border:1px solid var(--line);border-radius:10px;color:var(--text);font-size:14px;outline:none;padding:14px;resize:none;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.field input{height:46px}.field textarea{height:100px}.field input::placeholder,.field textarea::placeholder{color:var(--muted-2)}.field input:focus,.field textarea:focus{border-color:rgba(59,130,246,.7);box-shadow:0 0 0 3px rgba(59,130,246,.08);background:#0b0b0e}.form-submit-row{display:flex;align-items:center;gap:14px}.submit{flex:none}.form-status{font-size:11px;color:var(--muted);line-height:1.35;max-width:180px}.footer{height:215px;padding:48px var(--page-x) 48px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:24px}.footer-bottom,.footer-top{display:flex;align-items:center;justify-content:space-between}.footer-brand{display:flex;gap:8px;align-items:center}.footer-brand img{width:10px;height:10px}.footer-brand span{font-family:"Instrument Serif",Georgia,serif;font-style:normal;font-size:22px;line-height:29px}.socials{display:flex;gap:16px}.socials a{width:38px;height:38px;border-radius:999px;background:var(--surface-2);border:1px solid var(--line);display:flex;align-items:center;justify-content:center;transition:border-color .18s ease,transform .18s ease,background .18s ease}.socials a:hover{border-color:#52525b;transform:translateY(-3px);background:#202024}.socials img{width:18px;height:18px}.footer-bottom{font-size:13px;line-height:17px;color:var(--muted-2)}.footer-bottom>div{display:flex;gap:24px;color:var(--muted)}.case-page{max-width:1440px;margin:0 auto;min-height:100vh;padding:0 80px 80px;background:var(--bg)}.case-nav{height:85px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted);position:-webkit-sticky;position:sticky;top:0;background:rgba(9,9,11,.86);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10}.case-back:hover,.case-repo:hover{color:var(--text)}.case-links{display:flex;gap:24px}.case-hero{padding:64px 0 80px;max-width:920px}.case-hero h1{font-family:"Instrument Serif",Georgia,serif;font-size:96px;line-height:.95;font-weight:400;margin:24px 0 28px}.case-hero>p:last-of-type{font-size:20px;line-height:1.7;color:var(--muted);max-width:820px}.case-stack{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}.case-image-wrap{height:620px;border-radius:28px;overflow:hidden;border:1px solid var(--line);background:var(--surface)}.case-image-wrap img{width:100%;height:100%;object-fit:cover;transition:transform 1s cubic-bezier(.22,1,.36,1)}.case-image-wrap:hover img{transform:scale(1.025)}.case-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:24px;gap:24px;padding:64px 0}.case-grid article{border:1px solid var(--line);border-radius:24px;padding:42px;background:var(--surface)}.case-grid h2,.case-highlights h2{font-family:"Instrument Serif",Georgia,serif;font-size:42px;line-height:1.1;font-weight:400;margin:18px 0}.case-grid article>p:last-child{color:var(--muted);line-height:1.75}.case-highlights{padding:20px 0 120px}.case-highlight-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:16px;gap:16px;margin-top:38px}.case-highlight{min-height:180px;border:1px solid var(--line);border-radius:20px;padding:28px;background:var(--surface);display:flex;flex-direction:column;justify-content:space-between;transition:transform .25s ease,border-color .25s ease}.case-highlight:hover{transform:translateY(-5px);border-color:#3f3f46}.case-highlight span{font-size:10px;color:var(--muted-2);letter-spacing:.12em}.case-highlight p{font-size:18px;font-weight:500;line-height:1.45;margin:0}.case-footer{border-top:1px solid var(--line);padding:48px 0 0;font-family:"Instrument Serif",Georgia,serif;font-size:24px}@media (max-width:1100px){:root{--page-x:40px}.nav-cta,.nav-links{display:none}.menu-toggle{display:flex}.hero{height:auto;min-height:0}.hero h1{font-size:56px}.hero-art{width:360px;height:360px}.hero-gradient{left:95px;top:47px;width:324px;height:324px}.hero-person{width:418px;height:418px}.orbit-one{width:390px;height:390px}.orbit-two{width:430px;height:430px}.stats{display:grid;grid-template-columns:1fr 1fr;grid-gap:24px}.about,.stats{height:auto;gap:24px}.about{min-height:668px}.about-image-wrap{width:360px}.focus{height:auto}.focus-grid{height:auto;grid-template-columns:1fr 1fr}.focus-card{height:239px}.portfolio{height:auto}.projects-grid{grid-auto-columns:calc((100% - 24px)/2)}.services{height:auto}.services-list{height:auto;grid-template-columns:1fr}.service-card.short,.service-card.tall{height:auto;min-height:250px}.contact{height:auto;min-height:770px;gap:24px}.contact-form{width:500px}.case-page{padding-left:40px;padding-right:40px}.case-highlight-grid{grid-template-columns:1fr 1fr}}@media (max-width:760px){:root{--page-x:clamp(20px,5.5vw,32px)}body{background-attachment:scroll}.navbar{height:72px;padding-top:14px;padding-bottom:14px;gap:14px}.brand span{font-size:25px}.menu-toggle{width:44px;height:44px;flex:none;border-radius:12px}.mobile-availability{display:flex;align-items:center;gap:6px;margin-left:auto;color:var(--muted);font-size:11px;white-space:nowrap}.mobile-availability img{width:6px;height:6px}.mobile-menu{inset:72px 0 0;padding:24px var(--page-x) max(24px,env(safe-area-inset-bottom));overscroll-behavior:contain}.mobile-menu a{font-size:clamp(26px,7vw,34px);padding:15px 0;min-height:60px}.mobile-menu a span{width:40px}.hero{min-height:0;height:auto;padding-top:112px;padding-bottom:48px;flex-direction:column;align-items:stretch;gap:20px}.hero-copy{gap:26px}.hero-text{gap:16px}.hero .hello{font-size:12px;line-height:18px;letter-spacing:.1em}.hero h1{font-size:clamp(52px,14.5vw,72px);line-height:1;letter-spacing:-.025em}.hero-role{font-size:14px;line-height:1.6}.hero-desc{font-size:15px;line-height:1.7}.hero-actions{display:grid;grid-template-columns:1.1fr 1fr;grid-gap:10px;gap:10px;width:100%}.hero-actions .btn{height:48px;padding:12px 10px;font-size:13px;gap:6px;white-space:nowrap}.hero-actions .btn img{width:15px;height:15px;flex:none}.hero-art{width:min(100%,380px);align-self:center}.stats{padding:12px var(--page-x);grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.stat{min-width:0;min-height:120px;gap:7px;align-items:flex-start;justify-content:center;flex-direction:column;padding:20px 0}.stat:nth-child(2n){padding-left:24px;border-left:1px solid var(--line)}.stat:nth-child(n+3){border-top:1px solid var(--line)}.stat-value{font-size:clamp(34px,10vw,44px);line-height:1.1}.stat:last-child .stat-value{font-size:clamp(29px,8.3vw,38px)}.stat-label{width:auto;text-align:left;font-size:12px;line-height:18px}.about,.contact,.focus,.portfolio,.services{padding:48px var(--page-x);min-height:0;gap:20px}.about{flex-direction:column;align-items:stretch}.about-image-wrap{width:100%;max-width:440px;align-self:center;height:auto;aspect-ratio:1/1.02;border-radius:20px}.about-bar{height:30%}.about-bar.one{top:12%}.about-bar.two{top:59%}.about-content{gap:24px}.about-copy{font-size:15px;line-height:1.8}.image-index{opacity:1;transform:none}.section-head{gap:10px}.eyebrow{font-size:11px;line-height:16px;letter-spacing:.1em}.section-title{font-size:clamp(28px,6vw,36px);line-height:1.1;text-wrap:balance}.focus{height:auto!important;padding:48px var(--page-x)!important}.desktop-only-grid{display:none!important}.focus-mobile-feed{display:flex;flex-direction:column;gap:20px;width:100%}.focus-mobile-feed .focus-card{height:auto;min-height:0;padding:0;gap:0;border-radius:22px;transform:scale(.82);opacity:.6;transition:transform .5s cubic-bezier(.22,1,.36,1),opacity .45s ease,border-color .4s ease,box-shadow .45s ease}.focus-mobile-feed .focus-card.in-focus{transform:scale(1.02);opacity:1;border-color:rgba(255,255,255,.32);box-shadow:0 24px 50px rgba(0,0,0,.65),0 0 28px rgba(59,130,246,.2);z-index:2}.focus-mobile-feed .focus-card-media{height:175px;flex:none}.focus-mobile-feed .focus-card.in-focus .focus-card-media img{transform:scale(1.1)}.focus-mobile-feed .focus-card-body{padding:20px}.focus-mobile-feed .focus-card-body h3{font-size:24px}.focus-mobile-feed .focus-card-body p{font-size:13.5px}.portfolio-top{height:auto;align-items:flex-start;gap:20px;flex-direction:column}.portfolio-actions{width:100%}.portfolio-actions>.rail-buttons{display:none}.portfolio-actions .btn{min-height:44px;height:auto;padding:10px 0;border:0;border-radius:0;font-size:13px;color:var(--muted)}.projects-grid{grid-auto-columns:100%;gap:14px}.project-card{min-height:0;border-radius:20px}.project-image-wrap{height:auto;aspect-ratio:1.45}.project-image{height:100%}.project-details{min-height:0;padding:20px;gap:10px}.project-details h3{font-size:24px;line-height:1.2}.project-details p{font-size:13px;line-height:1.65;padding:0}.project-pill{font-size:10px;padding:5px 9px;min-height:26px}.project-index{right:18px;top:28px;font-size:9px}.project-mobile-link{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:16px;font-size:12px;color:var(--text)}.project-mobile-link>span{font-size:18px;color:var(--blue)}.mobile-project-controls{display:flex;align-items:center;justify-content:space-between;margin-top:-12px}.project-position{display:flex;flex-direction:column;gap:6px;font-size:11px;color:var(--muted-2)}.project-position>span:first-child{font-size:12px;letter-spacing:.15em;color:var(--text);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.services-list{gap:14px}.service-card.short,.service-card.tall{min-height:0;padding:24px;border-radius:20px;gap:24px}.service-top{gap:12px}.service-top h3{font-size:24px;line-height:1.15}.service-top p{margin:0;color:var(--muted);font-size:14px;line-height:1.75}.service-bottom{padding-top:16px}.service-bottom span{font-size:12px}.service-bottom strong{font-size:13px}.contact{flex-direction:column;align-items:stretch}.contact-left{gap:24px}.contact-title{font-size:clamp(32px,8vw,42px);line-height:1.05;text-wrap:balance}.contact-details{gap:12px}.contact-detail{font-size:13px;line-height:1.6;min-height:44px;gap:10px}.contact-detail span{min-width:0}.contact-form{width:100%;height:auto;min-height:0;padding:24px 20px;border-radius:20px;gap:22px}.form-head h3{font-size:24px;line-height:1.2}.field label{font-size:12px}.field input,.field textarea{font-size:16px;padding:14px}.field input{height:50px}.field textarea{height:132px;resize:vertical}.form-submit-row{align-items:stretch;flex-direction:column}.submit{width:100%;min-height:50px}.form-status:empty{display:none}.footer{height:auto;padding:36px var(--page-x) max(28px,env(safe-area-inset-bottom));gap:28px}.footer-top{align-items:center;gap:16px;flex-wrap:wrap}.socials{gap:8px}.socials a{width:44px;height:44px}.footer-bottom{align-items:flex-start;gap:16px;flex-direction:column;font-size:11px;line-height:1.8}.footer-bottom>div{flex-wrap:wrap;gap:20px}.case-page{padding:0 var(--page-x) 48px}.case-nav{height:auto;min-height:72px;gap:12px;flex-wrap:wrap;padding:12px 0;font-size:12px}.case-links{gap:16px}.case-nav a{display:inline-flex;align-items:center;min-height:44px}.case-hero{padding:48px 0 32px}.case-hero h1{font-size:clamp(44px,13vw,64px);overflow-wrap:anywhere;margin:20px 0}.case-hero>p:last-of-type{font-size:15px;line-height:1.8}.case-stack{gap:8px;margin-top:24px}.case-image-wrap{height:auto;aspect-ratio:4/3;border-radius:18px}.case-image-wrap img{object-fit:contain}.case-grid{grid-template-columns:1fr;gap:14px;padding:48px 0}.case-grid article{padding:24px;border-radius:18px}.case-grid h2,.case-highlights h2{font-size:34px}.case-grid article>p:last-child{font-size:14px}.case-highlight-grid{grid-template-columns:1fr;gap:12px;margin-top:24px}.case-highlight{min-height:120px;padding:22px;gap:20px;border-radius:18px}.case-highlight p{font-size:16px}.case-highlights{padding-bottom:48px}.case-footer{padding-top:28px;font-size:25px}.case-footer a{display:block;min-height:44px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}[data-reveal]{opacity:1!important}.hero-float-label,.hero-gradient,.hero-person,[data-reveal]{transform:none!important}}section[id]{scroll-margin-top:85px}a:focus-visible,button:focus-visible{outline:2px solid var(--blue);outline-offset:5px}.navbar{transition:background-color .35s ease}.navbar.is-scrolled{background:rgba(9,9,11,.94)}.nav-links a:after{display:none}.nav-indicator{position:absolute;left:0;right:0;bottom:-8px;height:1px;background:var(--text);pointer-events:none}.title-mask{overflow:clip;overflow-clip-margin:.14em}.title-line,.title-mask{display:block}.hero-idle{position:absolute;inset:0}.hero-float-label,.hero-gradient,.hero-person{transition:opacity .25s ease}.hero-orbit{display:block;opacity:.18;will-change:transform,opacity}.contact-title,.section-title{transform:translateY(var(--scroll-y,0))}.hero-art{translate:0 var(--scroll-y,0)}.hero-person{transform:translate(var(--pointer-x,0),calc(var(--pointer-y,0px) + var(--scroll-y,0px)))}.hero-gradient{transform:translate(calc(var(--pointer-x,0px) * -.35),calc(var(--pointer-y,0px) * -.35))}.hero-float-label{transform:translate(calc(var(--pointer-x,0px) * -.6),calc(var(--pointer-y,0px) * -.6))}.hero[data-hover=true] .hero-orbit{opacity:.86}.orbit-one{transform:translate(calc(var(--pointer-x,0px) * -.75),calc(var(--pointer-y,0px) * -.75))}.orbit-two{transform:translate(calc(var(--pointer-x,0px) * -.38),calc(var(--pointer-y,0px) * -.38))}.magnetic{transition:background .25s ease,border-color .25s ease}.magnetic>img,.magnetic>span{translate:var(--pointer-x,0) var(--pointer-y,0)}.btn img,.case-back,.case-repo,.contact-detail img{transition:transform .3s cubic-bezier(.22,1,.36,1),color .25s ease}.btn:hover img{transform:translateX(2px)}.portfolio-actions .btn:hover img,.submit:hover img{transform:translate(2px,-2px)}.contact-detail:hover img{transform:translateY(-2px)}.focus-card,.project-card,.service-card,.socials a{transition:border-color .25s ease,background .25s ease}.project-card:before{display:none}.project-spotlight{position:absolute;left:0;top:0;width:420px;height:420px;z-index:5;background:radial-gradient(circle,rgba(59,130,246,.12),transparent 65%);opacity:0;pointer-events:none;transform:translate(calc(var(--cursor-x,0px) - 210px),calc(var(--cursor-y,0px) - 210px));transition:opacity .25s ease}.project-image-wrap{--scroll-y:0px}.project-image-wrap:has(.project-image){background:var(--surface)}.projects-viewport{overflow-y:hidden;padding-top:9px;margin-top:-9px;height:auto;min-height:453px}.focus-icon{position:relative;flex-shrink:0;transition:transform .35s cubic-bezier(.22,1,.36,1)}.focus-icon:before{content:"";position:absolute;inset:-5px;border-radius:17px;background:rgba(59,130,246,.05);opacity:0;transition:opacity .25s ease}.focus-card:hover .focus-icon{transform:translateY(-2px) scale(1.035);box-shadow:none}.focus-card:hover .focus-icon:before{opacity:1}.service-top h3{transition:transform .3s cubic-bezier(.22,1,.36,1)}.service-card:hover .service-top h3{transform:translateX(3px)}.service-bottom strong{transition:color .25s ease}.service-card:hover .service-bottom strong{opacity:1;transform:none;color:#74a7fa}.service-bottom i{top:100%;margin-top:5px;font-size:11px}.field label{transition:color .2s ease}.field:focus-within label{color:var(--text)}.field input::placeholder,.field textarea::placeholder{transition:opacity .2s ease}.field input:focus::placeholder,.field textarea:focus::placeholder{opacity:.55}.btn.primary:hover{background:#dedee2}.submit{min-width:210px}.submit:disabled{cursor:default}.submit[data-state=success]{background:#dcebe0}.button-spinner{width:16px;height:16px;border:1.5px solid;border-right:1.5px solid transparent;border-radius:50%;animation:button-spin .75s linear infinite;flex:none}@keyframes button-spin{to{rotate:1turn}}.form-pulse{animation:none;position:relative}.form-pulse:after{content:"";position:absolute;inset:-4px;border:1px solid rgba(59,130,246,.3);border-radius:50%;opacity:0}.contact-form:focus-within .form-pulse:after{opacity:1;transition:opacity .3s ease}.cursor-aura{inset:0;z-index:118;background:radial-gradient(430px circle at var(--cursor-x,-200px) var(--cursor-y,-200px),rgba(59,130,246,.14),rgba(124,58,237,.08) 38%,transparent 72%);mix-blend-mode:screen;transition:opacity .45s ease}.cursor-aura,.cursor-enhancement{position:fixed;pointer-events:none;opacity:0}.cursor-enhancement{left:0;top:0;width:18px;height:18px;border:1px solid rgba(244,244,245,.3);border-radius:50%;z-index:120;transform:translate(calc(var(--cursor-x,-100px) - 9px),calc(var(--cursor-y,-100px) - 9px)) scale(var(--cursor-scale,1));transition:opacity .35s ease}.cursor-trail{position:fixed;inset:0;width:100%;height:100%;z-index:119;pointer-events:none}.hero-idle{animation:portrait-idle 7s ease-in-out 1.4s infinite}@keyframes portrait-idle{0%,to{translate:0 0}50%{translate:0 -3px}}@media (hover:hover) and (pointer:fine) and (min-width:1101px){.project-cursor{left:0;top:0;translate:calc(var(--cursor-x,0px) - 36px) calc(var(--cursor-y,0px) - 36px);transform:scale(.85);transition:opacity .2s ease,transform .3s cubic-bezier(.22,1,.36,1)}.project-card:hover .project-cursor{opacity:0;transform:scale(.85)}.project-card[data-hover=true] .project-cursor{opacity:1;transform:scale(1)}.project-card[data-hover=true] .project-spotlight{opacity:1}.project-image{transition:none}.project-card:hover .project-image,.project-image{transform:translate(var(--pointer-x,0),calc(var(--pointer-y,0px) + var(--scroll-y,0px))) scale(max(var(--hover-scale,1),var(--scroll-scale,1)))}.project-card:hover .project-image{filter:none}.focus-card,.magnetic,.project-card,.service-card,.socials a{transform:translateY(var(--lift,0))}.socials a{transform:translateY(var(--lift,0)) scale(var(--hover-scale,1))}.socials a[data-hover=true] img{rotate:-4deg;transition:rotate .3s ease}}@media (hover:none),(max-width:1100px),(pointer:coarse){.cursor-aura,.cursor-enhancement,.cursor-trail,.project-spotlight{display:none}.about-image-wrap:hover .about-portrait,.focus-card:hover,.magnetic:hover,.project-card:hover,.service-card:hover,.socials a:hover{transform:none}.service-bottom i{display:none}.btn:active,.project-card:active,.service-card:active,.socials a:active{scale:.985}}@media (max-width:760px){section[id]{scroll-margin-top:72px}[data-reveal]{transform:none}.hero-art,.hero-person{height:auto;aspect-ratio:1}.hero-person{width:91%}.hero-gradient{left:20.5%;top:10.2%;width:70.5%;height:auto;aspect-ratio:1}.hero-float-label{display:none}.hero-orbit{opacity:.18}.orbit-one{width:90%;height:90%;left:5%;top:5%}.orbit-two{width:105%;height:105%;left:-2.5%;top:-2.5%}.projects-viewport{width:100vw;margin-left:calc(var(--page-x) * -1);padding:0 var(--page-x);min-height:0;scroll-padding-left:var(--page-x);scroll-padding-right:var(--page-x)}.contact-detail{overflow-wrap:anywhere}.contact-detail img{flex:none}.submit{min-width:0}}@media (min-width:761px) and (max-width:960px){.hero{display:grid;grid-template-columns:1.1fr .9fr;grid-gap:24px;gap:24px;min-height:720px;padding-top:132px;padding-bottom:64px}.hero h1{font-size:60px}.hero-copy{gap:28px}.hero-desc,.hero-role{font-size:16px}.hero-actions{flex-wrap:wrap}.hero-art{aspect-ratio:1}.hero-art,.hero-person{width:100%;height:auto}.hero-gradient{left:20%;top:10%;width:80%;height:80%}.orbit-one{width:90%;height:90%;left:5%;top:5%}.orbit-two{width:105%;height:105%;left:-2.5%;top:-2.5%}.about{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px}.about-image-wrap{width:100%;height:auto;aspect-ratio:1/1.15}.about-content{gap:24px}.about .section-title{font-size:38px;line-height:1.1}.contact{flex-direction:column;align-items:stretch}.contact-form{width:100%;max-width:560px}}@media (max-width:380px){.submit{padding-inline:16px;white-space:nowrap}}@media (max-width:359px){.hero-actions{grid-template-columns:1fr}.hero-actions .btn{font-size:14px}.mobile-availability{font-size:10px}.navbar{gap:10px}.brand span{font-size:23px}.focus-card{padding:20px 16px;gap:12px}.focus-text h3{font-size:24px}.footer-top{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){.hero:before{display:none}.focus-mobile-feed .focus-card{opacity:1!important}.about-portrait{transform:none!important}.about-bar,.about-person{opacity:1!important;transform:none!important;translate:none!important;scale:1!important}.about-image,.case-hero,.case-image-wrap,.case-nav,.focus-icon,.hello,.hero-actions .btn,.hero-art,.hero-desc,.hero-role,.navbar,.pill,[data-reveal]{opacity:1!important;-webkit-clip-path:none!important;clip-path:none!important;translate:none!important;scale:1!important}.btn,.contact-title,.focus-card,.focus-icon,.hero-float-label,.hero-gradient,.hero-person,.project-card,.project-image,.section-title,.service-card,.socials a,.title-line{transform:none!important;translate:none!important;scale:1!important}.hero-idle{animation:none;translate:none}.cursor-aura,.cursor-enhancement,.cursor-trail,.project-cursor,.project-spotlight{display:none!important}.btn>img,.btn>span,.service-top h3,.socials img{translate:none!important;transform:none!important;rotate:none!important}}.desktop-only{display:none!important}.project-3d-carousel{flex-direction:column;margin-left:calc(var(--page-x) * -1);margin-top:18px}.carousel-track,.project-3d-carousel{display:flex;align-items:center;width:100vw}.carousel-track{justify-content:center;height:540px;position:relative;cursor:-webkit-grab;cursor:grab;touch-action:pan-y pinch-zoom!important}.carousel-track:active{cursor:-webkit-grabbing;cursor:grabbing}.carousel-item{position:absolute;width:85vw;max-width:560px;height:500px}@media (max-width:760px){.project-3d-carousel{margin-top:16px}.carousel-track{height:500px}.carousel-item{width:86vw;max-width:340px;height:460px}}.carousel-card,.mobile-3d-card{height:100%;margin:0;min-height:0;display:flex;flex-direction:column;border-radius:22px;overflow:hidden;background:linear-gradient(180deg,rgba(24,26,33,.95),rgba(14,15,20,.98));border:1px solid var(--line);box-shadow:0 24px 48px rgba(0,0,0,.42);transition:border-color .35s ease,box-shadow .4s ease}.carousel-card:hover{border-color:rgba(255,255,255,.28);box-shadow:0 32px 64px rgba(0,0,0,.6),0 0 28px rgba(59,130,246,.15)}.carousel-card-image{height:200px;flex:none;aspect-ratio:auto;overflow:hidden}.carousel-card-details{padding:20px 24px 22px;flex:1 1;display:flex;flex-direction:column;gap:10px;pointer-events:none}.carousel-card-title{font-size:28px;margin:0;font-family:"Instrument Serif",Georgia,serif;font-weight:400;line-height:1.15}.carousel-card-desc{font-size:13.5px;color:var(--muted);margin:0;line-height:1.55}.carousel-indicators{display:flex;gap:0;margin-top:8px;flex-wrap:wrap;justify-content:center}.carousel-indicators .indicator{width:44px;height:44px;display:grid;place-items:center;padding:0;border:0;background:transparent;cursor:pointer}.carousel-indicators .indicator:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--line);transition:background .3s ease,transform .3s ease;cursor:pointer}.carousel-indicators .indicator.active:before{background:var(--blue);transform:scale(1.3)}.carousel-playback{width:44px;height:44px;border:0;background:transparent;color:var(--muted);cursor:pointer;font-size:12px}@media (max-width:760px){.carousel-card-image{height:195px}.carousel-card-details{padding:16px 18px 18px}.carousel-card-title{font-size:25px}.carousel-card-desc{font-size:13px;line-height:1.5}.carousel-indicators{margin-top:16px}}