:root{color-scheme:dark;--ink:#f5f5f7;--muted:#86868b;--blue:#8bb9ff;--nav-height:68px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--nav-height)}body{margin:0;background:#050507;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--blue);outline-offset:6px}button{cursor:pointer}img{display:block;max-width:100%}.skip-link{position:fixed;z-index:20;top:8px;left:8px;padding:12px;background:#fff;color:#000;transform:translateY(-180%)}.skip-link:focus{transform:none}.floating-header{position:fixed;inset:0 0 auto;z-index:10;border-bottom:1px solid #ffffff12;background:#09090cba;backdrop-filter:blur(24px) saturate(150%);-webkit-backdrop-filter:blur(24px) saturate(150%)}.nav-inner{max-width:1240px;margin:auto;padding:0 32px;min-height:var(--nav-height);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;white-space:nowrap}.brand img{width:32px;height:32px;object-fit:contain}.brand span{font-size:13px;font-weight:650;letter-spacing:.06em}.floating-header nav{display:flex;gap:30px}.floating-header nav a{font-size:12px;color:#b5b5ba;transition:color .3s;padding:16px 0}.floating-header nav a:hover,.floating-header nav a[aria-current]{color:#fff}.chapter{position:relative;scroll-margin-top:0}.section-shell{max-width:1160px;margin:auto;padding:0 48px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.17em;margin:0 0 24px;color:#a2a2aa}.hero{padding:calc(var(--nav-height) + 68px) 0 42px;overflow:hidden;min-height:100svh;background:radial-gradient(ellipse at 50% 65%,#18203066,transparent 60%),#050507}.hero-copy{text-align:center;position:relative;z-index:2;padding:0 24px}.hero #hero-title{font-size:clamp(64px,7.6vw,104px);font-weight:650;letter-spacing:-.065em;line-height:1.02;margin:0}.silver-text{background:linear-gradient(120deg,#fff 15%,#b5c1d5 50%,#6d90c5 85%);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-description{font-size:21px;line-height:1.45;letter-spacing:-.02em;color:#a5a5ae;margin:24px 0 20px}.text-link{display:inline-flex;align-items:center;gap:9px;color:var(--blue);font-size:17px;letter-spacing:-.01em}.text-link span,.pill-link span{display:inline-block;transition:transform .3s}.text-link:hover span,.pill-link:hover span{transform:translate(3px,-3px)}.hero-scene{position:relative;max-width:1100px;margin:50px auto 0;height:390px;perspective:1400px;--hero-progress:0}.hero-art{position:absolute;overflow:hidden;box-shadow:0 28px 70px #0008;border:1px solid #ffffff20;background:#141419;border-radius:22px}.hero-art img{width:100%;height:100%;object-fit:cover;transform:scale(calc(1 + var(--hero-progress)*.08))}.hero-art-center{z-index:2;width:52%;height:100%;left:24%;transform:translateY(calc(var(--hero-progress)*-35px))}.hero-art-left{width:27%;height:76%;top:12%;left:3%;transform:rotateY(16deg) rotateZ(-7deg) translateX(calc(var(--hero-progress)*-35px))}.hero-art-right{width:27%;height:76%;top:12%;right:3%;transform:rotateY(-16deg) rotateZ(7deg) translateX(calc(var(--hero-progress)*35px))}.image-signature{position:absolute;inset:auto 0 0;padding:36px 24px 24px;background:linear-gradient(transparent,#000a);font-size:11px;letter-spacing:.22em}.scroll-cue{display:flex;flex-direction:column;align-items:center;gap:8px;margin:32px 0 0;color:#777780;font-size:11px}.scroll-cue span:last-child{font-size:20px;color:#c5c5cc}.about{padding:130px 0 140px;background:#f5f5f7;color:#1d1d1f}.about .eyebrow,.contact .eyebrow{color:#73737b}.section-heading h2,.contact h2{font-size:clamp(48px,5.7vw,76px);letter-spacing:-.055em;line-height:1.05;margin:0;font-weight:650}.muted{color:#86868b}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;margin-top:76px}.about-visual{position:sticky;top:calc(var(--nav-height) + 40px);border-radius:28px;overflow:hidden;height:590px;background:#dedee2}.about-visual img{width:100%;height:100%;object-fit:cover}.image-caption{position:absolute;inset:auto 0 0;padding:48px 26px 26px;color:white;font-size:12px;background:linear-gradient(transparent,#0009)}.about-lead{font-size:36px;line-height:1.15;font-weight:600;letter-spacing:-.04em;margin:0 0 32px}.about-body{color:#6e6e73;font-size:20px;line-height:1.65;letter-spacing:-.02em}.about-body p{margin:0 0 24px}.disciplines{display:flex;flex-wrap:wrap;gap:9px;margin:32px 0}.disciplines span{border:1px solid #d2d2d7;border-radius:100px;padding:9px 15px;font-size:12px;color:#6e6e73}.about .text-link{color:#0066cc;font-size:16px}.portfolio{padding:130px 0 110px;overflow:hidden;background:#09090c}.portfolio-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:50px}.portfolio-intro>p{color:#86868b;font-size:18px;line-height:1.6;max-width:340px;margin:0 0 4px}.marquee{margin-top:64px}.portfolio-ribbon{display:block;overflow:hidden;padding:15px 0 24px}.marquee-track{display:flex;width:max-content;animation:ribbon-left 65s ease-in-out infinite alternate;will-change:transform}.marquee-group{display:flex;gap:20px;padding-right:20px}.ribbon-card{position:relative;flex:0 0 auto;width:320px;height:240px;border-radius:20px;overflow:hidden;margin:0;background:#1d1d22;transform:translateZ(0);transition:transform .4s}.ribbon-card img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.ribbon-card figcaption{position:absolute;inset:auto 0 0;padding:48px 22px 20px;background:linear-gradient(transparent,#000b);font-size:14px;font-weight:600;color:#fff}.ribbon-card .ribbon-kind{display:block;font-size:10px;letter-spacing:.15em;margin-bottom:7px;color:#d0d0d8}.portfolio-ribbon:hover .ribbon-card img{transform:scale(1.04)}.portfolio-ribbon:hover .marquee-track,.portfolio-ribbon:focus-visible .marquee-track,.marquee-paused .marquee-track{animation-play-state:paused}.ribbon-controls{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:22px}.pill-link{display:inline-flex;align-items:center;gap:16px;padding:15px 24px;border-radius:40px;background:#f5f5f7;color:#1d1d1f;font-size:14px;font-weight:550;transition:background .3s}.pill-link:hover{background:#fff}.motion-toggle{display:flex;align-items:center;gap:8px;border:1px solid #ffffff26;border-radius:40px;padding:12px 16px;background:#ffffff08;color:#aaaab2;font-size:12px}.motion-icon{font-size:15px;line-height:1}.contact{padding:125px 0 100px;background:#f5f5f7;color:#1d1d1f}.contact-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:70px;align-items:start}.contact h2{font-size:clamp(42px,4.8vw,64px)}.contact-copy>p{font-size:20px;line-height:1.5;color:#6e6e73;margin:30px 0}.email-link{font-size:14px;line-height:1.5;word-break:break-word;color:#0066cc}.email-link span{white-space:nowrap}.contact-panel{padding:32px;background:#fff;border-radius:26px;box-shadow:0 12px 48px #1d1d1f05}.contact-form{display:grid;gap:20px}.contact-form label{display:block;font-size:12px;font-weight:550;margin-bottom:8px;color:#515157}.contact-form input,.contact-form textarea{display:block;width:100%;background:#f5f5f7;border:1px solid #e6e6eb;border-radius:10px;color:#1d1d1f;padding:14px;font-size:14px;line-height:1.4}.contact-form textarea{resize:vertical;min-height:105px}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#8e8e96}.submit-button{border:0;border-radius:30px;background:#0071e3;color:white;padding:14px 22px;font-size:14px;justify-self:start}.submit-button:hover{background:#0077ed}.mail-note{font-size:11px!important;color:#86868b;line-height:1.6;margin:0}.terms-link{display:inline-block;font-size:11px;color:#86868b;margin-top:32px}.landing-footer{max-width:1160px;margin:auto;padding:30px 48px;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:10px;color:#86868b}.landing-footer>span:first-child{color:#c5c5ce;letter-spacing:.06em}.landing-footer a:hover{color:white}.motion-ready .reveal{opacity:0;transform:translateY(38px);transition:opacity .9s ease,transform .9s cubic-bezier(.16,1,.3,1),filter .9s ease}.motion-ready .reveal.in-view{opacity:1;transform:none;filter:none}.hero-copy .reveal:nth-child(2){transition-delay:.08s}.hero-copy .reveal:nth-child(3){transition-delay:.16s}.hero-copy .reveal:nth-child(4){transition-delay:.24s}@keyframes ribbon-left{to{transform:translateX(-50%)}}
@media(max-width:900px){.about-layout{gap:36px}.about-visual{height:520px}.about-body{font-size:18px}.portfolio-intro{align-items:start;flex-direction:column;gap:24px}.contact-layout{gap:36px}.section-shell{padding:0 32px}.nav-inner{padding:0 24px}.floating-header nav{gap:22px}.hero-scene{height:330px}.hero-description{font-size:19px}.hero{padding-top:120px}.contact-panel{padding:24px}.landing-footer{padding:26px 32px}}
@media(max-width:600px){:root{--nav-height:94px}.nav-inner{flex-direction:column;gap:0;padding:12px 20px 0}.brand img{width:24px;height:24px}.brand span{font-size:11px}.floating-header nav{width:100%;justify-content:center;gap:28px}.floating-header nav a{padding:13px 0 15px;font-size:11px}.section-shell{padding:0 24px}.hero{padding-top:138px;min-height:auto;padding-bottom:30px}.hero #hero-title{font-size:64px}.hero-description{font-size:17px}.eyebrow{font-size:10px;margin-bottom:18px}.text-link{font-size:15px}.hero-scene{height:250px;margin-top:40px;max-width:550px;width:115%;left:-7.5%}.hero-art{border-radius:14px}.hero-art-center{width:56%;left:22%}.hero-art-left,.hero-art-right{width:28%;height:80%;top:10%}.hero-art-left{left:1%}.hero-art-right{right:1%}.image-signature{padding:30px 14px 16px;font-size:8px}.scroll-cue{font-size:10px;margin-top:25px}.about,.portfolio,.contact{padding:78px 0}.section-heading h2{font-size:48px}.about-layout{grid-template-columns:1fr;gap:35px;margin-top:38px}.about-visual{position:relative;top:auto;height:400px;border-radius:22px}.about-lead{font-size:30px;margin-bottom:24px}.about-body{font-size:17px;line-height:1.65}.about .text-link{font-size:14px}.disciplines{margin:24px 0}.disciplines span{font-size:11px;padding:8px 12px}.portfolio-intro>p{font-size:16px}.marquee{margin-top:35px}.ribbon-card{width:270px;height:205px;border-radius:16px}.marquee-group{gap:14px;padding-right:14px}.ribbon-controls{gap:12px}.pill-link{padding:13px 19px;font-size:12px}.motion-toggle{padding:11px 13px;font-size:11px}.contact-layout{grid-template-columns:1fr;gap:40px}.contact h2{font-size:46px}.contact-copy>p{font-size:18px;margin:24px 0}.contact-panel{padding:24px 20px;border-radius:22px}.landing-footer{padding:26px 24px;flex-wrap:wrap;gap:15px}.landing-footer>span:nth-child(2){display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion-ready .reveal{opacity:1;transform:none;filter:none;transition:none}.marquee-track{animation:none}.portfolio-ribbon{overflow-x:auto}.marquee-group[aria-hidden]{display:none}.hero-art,.hero-art img{transform:none}.motion-toggle{display:none}*,*:before,*:after{transition:none!important}}
.site-atmosphere{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0;background:linear-gradient(#05070c20,#05070c40),url('/assets/accd865015ceae6da1e2.webp') center center/cover no-repeat}.landing>main,.landing-footer{position:relative;z-index:1}.hero{padding-top:calc(var(--nav-height) + 24px);background:linear-gradient(180deg,transparent 60%,#050507c9)}.portfolio{background:linear-gradient(#050507b0,#050507b0)}.hero-brand-mark{position:relative;width:340px;height:225px;max-width:100%;margin:0 auto 8px;overflow:hidden;-webkit-mask-image:radial-gradient(ellipse closest-side at center,#000 80%,transparent 100%);mask-image:radial-gradient(ellipse closest-side at center,#000 80%,transparent 100%)}.hero-brand-mark img{position:absolute;width:1000px;max-width:none;left:50%;top:-28px;transform:translateX(-50%)}.hero-brand-name{font-size:14px;letter-spacing:.2em;font-weight:550;margin:0 0 20px;color:#dbeaff}.hero #hero-title{font-size:clamp(60px,6.1vw,82px)}.hero .eyebrow{margin-bottom:18px;color:#adbace}.brand img{filter:drop-shadow(0 0 6px #8bb9ff50)}.silver-text{background-image:linear-gradient(120deg,#fff 10%,#b6dcff 48%,#619feb 88%)}.smoke-layer{position:absolute;inset:-15%;background:url('/assets/smoke.svg') center/100% 100% no-repeat;mix-blend-mode:screen;opacity:.35;animation:mist-drift 18s ease-in-out infinite alternate;will-change:transform}.smoke-back{opacity:.2;animation-duration:29s;animation-delay:-12s;animation-direction:alternate-reverse}.hero-copy .reveal{transition-delay:0s}.hero-copy .hero-brand-name{transition-delay:.06s}.hero-copy h1{transition-delay:.1s}.hero-copy .hero-description{transition-delay:.15s}.hero-copy .text-link{transition-delay:.2s}@keyframes mist-drift{from{transform:translate3d(-8%,6%,0)}to{transform:translate3d(8%,-6%,0)}}
@media(max-width:600px){.hero{padding-top:calc(var(--nav-height) + 18px)}.hero-brand-mark{width:270px;height:180px}.hero-brand-mark img{width:860px;top:-22px}.hero-brand-name{font-size:12px;margin-bottom:18px}.hero #hero-title{font-size:56px}.site-atmosphere{background-position:center top}.smoke-layer{opacity:.25}.smoke-back{opacity:.13}}
@media(prefers-reduced-motion:reduce){.smoke-layer{animation:none;will-change:auto}.marquee-track{animation:none;will-change:auto}}
.motion-ready .reveal.from-top:not(.in-view){transform:translateY(-38px)}
@media(prefers-reduced-motion:reduce){.motion-ready .reveal.from-top:not(.in-view){transform:none}}
.intro-screen{position:relative;height:100svh;display:grid;place-items:center;padding:calc(var(--nav-height) + 24px) 24px 70px;overflow:hidden;background:linear-gradient(180deg,#05070c08,#05070c28)}.identity-copy{text-align:center;width:100%}.identity-copy .hero-brand-mark{width:clamp(220px,42svh,420px);height:auto;aspect-ratio:1;margin:0 auto 24px;overflow:visible;-webkit-mask-image:none;mask-image:none}.identity-copy .hero-brand-mark img{position:static;width:100%;max-width:100%;height:auto;transform:none}.identity-copy .hero-brand-name{font-size:18px;line-height:1.4;letter-spacing:.24em;margin:0 0 18px;font-weight:550}.identity-copy .eyebrow{margin:0;color:#c1ccdd;font-size:12px;letter-spacing:.23em}.intro-screen>.scroll-cue{position:absolute;bottom:24px;left:0;right:0;margin:0;color:#b6c4d8}.hero{padding-top:calc(var(--nav-height) + 38px)}.hero #hero-title{font-size:clamp(56px,6.2vw,84px);font-weight:650;letter-spacing:-.065em;line-height:1.02;margin:0}.hero .hero-scene{height:clamp(240px,36svh,360px);margin-top:35px}.hero .hero-description{margin:20px 0 18px}.hero .scroll-cue{position:relative;z-index:2}.smoke-layer{inset:-28%;opacity:.88;animation-duration:7s;background-size:110% 110%}.smoke-back{opacity:.6;animation-duration:11s;animation-delay:-5s;animation-direction:alternate-reverse}@keyframes mist-drift{from{transform:translate3d(-8%,6%,0)}to{transform:translate3d(8%,-6%,0)}}
@media(max-width:600px){.identity-copy .hero-brand-mark{width:clamp(200px,40svh,340px);margin-bottom:22px}.identity-copy .hero-brand-name{font-size:15px;letter-spacing:.2em;margin-bottom:16px}.identity-copy .eyebrow{font-size:10px;letter-spacing:.19em}.hero #hero-title{font-size:54px}.hero{padding-top:calc(var(--nav-height) + 35px)}.hero .hero-scene{height:250px}.smoke-layer{opacity:.76}.smoke-back{opacity:.48}}
@media(max-height:560px){.identity-copy .hero-brand-mark{width:35svh;margin-bottom:12px}.identity-copy .hero-brand-name{font-size:13px;margin-bottom:8px}.identity-copy .eyebrow{font-size:9px}.intro-screen>.scroll-cue{bottom:12px}}
@media(prefers-reduced-motion:reduce){.smoke-layer{animation:none}}
.about-layout{grid-template-columns:1fr;max-width:820px;margin-top:54px}.about-copy .about-body{font-size:22px;line-height:1.65}.about-copy .about-lead{font-size:32px}
@media(max-width:600px){.about-layout{margin-top:38px}.about-copy .about-body{font-size:18px}.about-copy .about-lead{font-size:28px}}
.hero .hero-description{color:#d4dce8;text-shadow:0 2px 12px #000}.hero-copy .text-link{text-shadow:0 2px 12px #000}
.home .intro-screen,.home .hero{background:none}
html.reset-entry{scroll-behavior:auto!important}
.motion-ready .reveal{filter:none;transition:opacity .65s ease,transform .8s cubic-bezier(.16,1,.3,1)}.smoke-layer{background-image:url('/assets/smoke-texture.png');mix-blend-mode:normal}.floating-header{background:#09090cef;backdrop-filter:none;-webkit-backdrop-filter:none}.hero-art,.hero-art img{will-change:transform;backface-visibility:hidden}.site-entering .identity-copy .hero-brand-mark,.site-entering .identity-copy .hero-brand-name,.site-entering .identity-copy .eyebrow{filter:none}@keyframes logo-enter{from{opacity:0;transform:translate3d(0,20px,0) scale(.82)}to{opacity:1;transform:none}}@keyframes opening-text{from{opacity:0;transform:translate3d(0,16px,0)}to{opacity:1;transform:none}}@media(max-width:600px){.smoke-back{display:none}.smoke-front{opacity:.9}}@media(prefers-reduced-motion:reduce){.motion-ready .reveal{transition:none}.hero-art,.hero-art img{will-change:auto}}
.site-entering .site-atmosphere{animation:atmosphere-enter 1.5s ease-out both}.site-entering .floating-header{animation:menu-enter 1s .85s cubic-bezier(.16,1,.3,1) both}.site-entering .identity-copy .hero-brand-mark{animation:logo-enter 1.6s .2s cubic-bezier(.16,1,.3,1) both}.site-entering .identity-copy .hero-brand-name{animation:opening-text .9s .75s cubic-bezier(.16,1,.3,1) both}.site-entering .identity-copy .eyebrow{animation:opening-text .9s .95s cubic-bezier(.16,1,.3,1) both}.site-entering .intro-screen>.scroll-cue{animation:opening-text 1s 1.15s cubic-bezier(.16,1,.3,1) both}@keyframes atmosphere-enter{from{opacity:0}to{opacity:1}}@keyframes logo-enter{from{opacity:0;transform:translateY(20px) scale(.82);filter:none}to{opacity:1;transform:none;filter:none}}@keyframes opening-text{from{opacity:0;transform:translateY(16px);filter:none}to{opacity:1;transform:none;filter:none}}@keyframes menu-enter{from{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.site-entering .site-atmosphere,.site-entering .floating-header,.site-entering .identity-copy .reveal,.site-entering .intro-screen>.scroll-cue{animation:none}}

.site-atmosphere{inset:0 0 auto;height:100vh;height:100lvh;transform:none}

.social-links{display:flex;align-items:center;gap:12px;margin-top:24px}.social-links a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;color:#dbeaff;border:1px solid #b6dcff35;border-radius:50%;background:#0b152045;transition:color .2s,background .2s,border-color .2s}.social-links svg{display:block;width:23px;height:23px;fill:currentColor}.social-links a:hover,.social-links a:focus-visible{color:#fff;background:#75b8ff22;border-color:#9dcdff}.social-links a:focus-visible{outline:2px solid #9dcdff;outline-offset:3px}.identity-copy .social-links{justify-content:center}.site-entering .identity-copy .social-links{animation:opening-text .9s 1.05s cubic-bezier(.16,1,.3,1) both}@media(max-height:560px){.identity-copy .social-links{margin-top:12px}}@media(prefers-reduced-motion:reduce){.site-entering .identity-copy .social-links{animation:none}}
/* Portfolio: the same living backdrop, two full-height chapters. */
.page-shell>main{position:relative;z-index:1}.portfolio-page{overflow:hidden}.portfolio-opening{min-height:100svh;display:grid;place-items:center;padding:calc(var(--nav-height) + 44px) 32px 60px;text-align:center}.portfolio-opening-copy{max-width:860px;margin:auto}.portfolio-emblem{width:140px;height:140px;object-fit:contain;margin:0 auto 18px}.portfolio-opening .eyebrow{color:#b6c4d8;margin-bottom:18px}.portfolio-opening h1{font-size:clamp(56px,7vw,94px);line-height:1.02;font-weight:650;letter-spacing:-.065em;margin:0}.portfolio-statement{max-width:720px;margin:30px auto;color:#c2ccda;font-size:clamp(21px,2.2vw,28px);line-height:1.55;letter-spacing:-.025em}.portfolio-selection{min-height:100svh;padding:100px 0 65px}.portfolio-selection .section-heading{text-align:center}.wheel-hint{margin:24px auto 0;max-width:420px;color:#a6b2c4;font-size:17px;line-height:1.5}.wheel-stage{--wheel-card-width:320px;margin-top:28px}.portfolio-wheel{position:relative;display:flex;gap:24px;padding:28px max(24px,calc((100% - var(--wheel-card-width))/2)) 34px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:none;cursor:grab;-webkit-overflow-scrolling:touch}.portfolio-wheel::-webkit-scrollbar{display:none}.portfolio-wheel.is-dragging{scroll-snap-type:none;cursor:grabbing;user-select:none}.wheel-item{position:relative;flex:0 0 var(--wheel-card-width);height:390px;scroll-snap-align:center}.wheel-card{position:relative;display:block;width:100%;height:100%;border:1px solid #d5e6ff25;border-radius:24px;overflow:hidden;background:#101723;transform:perspective(1100px) rotateY(calc(var(--wheel-distance,0)*-18deg)) translateZ(calc(var(--wheel-depth,0)*1px)) scale(var(--wheel-scale,1));opacity:.72;transition:opacity .3s,border-color .3s;will-change:transform;backface-visibility:hidden}.wheel-card.is-selected{opacity:1;border-color:#a1caff99}.wheel-card img{width:100%;height:100%;object-fit:cover;pointer-events:none}.wheel-empty{height:100%;display:grid;place-items:center;font-size:64px;letter-spacing:.08em;color:#8bb9ff}.wheel-caption{position:absolute;inset:auto 0 0;padding:76px 24px 26px;background:linear-gradient(transparent,#020409e8);text-align:left}.wheel-kind{display:block;font-size:9px;letter-spacing:.22em;color:#b6dcff;margin-bottom:10px}.wheel-title{display:block;font-size:24px;font-weight:550;line-height:1.15;letter-spacing:-.035em}.wheel-controls{display:flex;flex-direction:column;align-items:center;gap:22px}.wheel-navigation{display:flex;align-items:center;gap:24px}.wheel-arrow{width:44px;height:44px;border:1px solid #ffffff30;border-radius:50%;background:#0d192775;color:#e1ecfc;font-size:21px}.wheel-arrow:hover{background:#8bb9ff26}.wheel-arrow:disabled{opacity:.25;cursor:default}.wheel-counter{margin:0;color:#8699b2;font-size:12px;letter-spacing:.14em;min-width:64px;text-align:center}.wheel-current{color:#eef5ff}.wheel-open{max-width:100%;text-align:center;line-height:1.4;gap:5px;flex-wrap:wrap;justify-content:center}.wheel-open>span:last-child{margin-left:6px}.portfolio-return{font-size:13px;margin-top:8px}.page-shell{opacity:1}.page-leaving .page-shell{opacity:0;transition:opacity .35s ease}.page-leaving .floating-header{transform:translateY(-12px);transition:transform .35s ease}.page-arriving .page-shell{animation:page-shell-enter .7s ease both}.page-arriving .floating-header{animation:menu-enter .65s cubic-bezier(.16,1,.3,1) both}.page-arriving main{animation:page-content-enter .7s cubic-bezier(.16,1,.3,1) both}.site-entering body[data-page="portfolio"] .portfolio-opening-copy{animation:page-content-enter 1.1s .2s cubic-bezier(.16,1,.3,1) both}@keyframes page-shell-enter{from{opacity:0}to{opacity:1}}@keyframes page-content-enter{from{opacity:0;transform:translate3d(0,18px,0)}to{opacity:1;transform:none}}
@media(max-width:600px){.portfolio-opening{padding:calc(var(--nav-height) + 28px) 24px 44px}.portfolio-emblem{width:110px;height:110px;margin-bottom:20px}.portfolio-opening .eyebrow{font-size:9px}.portfolio-opening h1{font-size:clamp(44px,14vw,56px)}.portfolio-statement{font-size:21px;line-height:1.5;margin:25px auto 28px}.portfolio-selection{padding:90px 0 60px}.wheel-hint{font-size:15px;max-width:280px}.wheel-stage{--wheel-card-width:256px;margin-top:20px}.portfolio-wheel{gap:16px;padding-top:22px;padding-bottom:26px}.wheel-item{height:320px}.wheel-card{border-radius:20px}.wheel-caption{padding:66px 20px 24px}.wheel-title{font-size:23px}.wheel-controls{gap:18px}.wheel-open{font-size:13px;padding:13px 18px}}
@media(max-height:600px) and (min-width:601px){.portfolio-opening{padding-top:calc(var(--nav-height) + 20px)}.portfolio-emblem{width:90px;height:90px}.portfolio-opening h1{font-size:52px}.portfolio-statement{font-size:20px;margin:20px auto}.portfolio-selection{padding-top:80px}}
@media(prefers-reduced-motion:reduce){.page-leaving .page-shell{opacity:1;transition:none}.page-leaving .floating-header{transform:none}.page-arriving .page-shell,.page-arriving main,.page-arriving .floating-header,.site-entering body[data-page="portfolio"] .portfolio-opening-copy{animation:none}.wheel-card{transform:none;will-change:auto}.portfolio-wheel{scroll-behavior:auto}}

body[data-page="portfolio"]{--nav-height:64px}html:has(body[data-page="portfolio"]){scroll-padding-top:72px}.portfolio-back-bar{position:fixed;inset:0 0 auto;z-index:10;height:64px;display:flex;align-items:center;padding:0 24px;background:#09090c;border-bottom:1px solid #ffffff12}.portfolio-back{margin:0;padding:12px 0;min-height:44px;background:none}.page-leaving .portfolio-back-bar{transform:translateY(-12px);transition:transform .35s ease}.page-arriving .portfolio-back-bar{animation:menu-enter .65s cubic-bezier(.16,1,.3,1) both}.site-entering .portfolio-back-bar{animation:menu-enter 1s .3s cubic-bezier(.16,1,.3,1) both}@media(min-width:601px){.portfolio-back-bar{padding:0 32px}}@media(prefers-reduced-motion:reduce){.page-leaving .portfolio-back-bar{transform:none;transition:none}.page-arriving .portfolio-back-bar,.site-entering .portfolio-back-bar{animation:none}}

.page-shell>main[tabindex="-1"]:focus{outline:none}

@font-face{font-family:MIHScript;src:url('/assets/592c5d8fa63597b0770b.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}.portfolio-opening h1.portfolio-script{font-family:MIHScript,cursive;font-size:clamp(88px,11vw,140px);font-weight:400;letter-spacing:0;line-height:1.2;margin:4px 0 0}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:pre-wrap;border:0}.cgv-open,.cgv-open body{overflow:hidden}.cgv-dialog{padding:0;border:1px solid #c7deff24;border-radius:24px;width:min(960px,calc(100vw - 40px));max-width:none;height:min(92svh,1100px);max-height:none;background:#0d1016;color:#f5f5f7;box-shadow:0 30px 100px #0009;overflow:clip;opacity:0;transform:translate3d(0,20px,0) scale(.97);transition:opacity .3s ease,transform .35s cubic-bezier(.16,1,.3,1)}.cgv-dialog.is-visible{opacity:1;transform:none}.cgv-dialog::backdrop{background:#0000;transition:background .3s ease}.cgv-dialog.is-visible::backdrop{background:rgba(0,0,0,.72)}.cgv-window{position:absolute;inset:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto}.cgv-toolbar{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 26px;border-bottom:1px solid #ffffff14}.cgv-toolbar .eyebrow{font-size:9px;color:#a4b9d5;letter-spacing:.18em;margin:0 0 8px}.cgv-toolbar h2{font-size:18px;line-height:1.3;letter-spacing:-.025em;margin:0;font-weight:550}.cgv-close{flex:0 0 44px;width:44px;height:44px;border:1px solid #ffffff25;border-radius:50%;background:#ffffff08;color:#e4efff;font-size:26px;line-height:1}.cgv-reader{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;background:#d7dbe2;padding:12px;touch-action:pan-x pan-y pinch-zoom}.cgv-reader:focus{outline:none}.cgv-page{margin:0 auto 12px;width:100%;max-width:900px;background:white}.cgv-page:last-child{margin-bottom:0}.cgv-page img{width:100%;height:auto}.cgv-reader.is-zoomed .cgv-page{width:max(100%,760px);max-width:none}.cgv-actions{flex:0 0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;padding:18px 26px;font-size:12px;border-top:1px solid #ffffff14}.cgv-actions a,.cgv-actions button{color:#b5d6ff}.cgv-zoom{background:none;border:0;padding:4px 0}.cgv-actions a:hover,.cgv-actions button:hover{color:white}@media(max-width:600px){.cgv-dialog{width:calc(100vw - 24px);height:calc(100svh - 40px);border-radius:20px}.cgv-toolbar{padding:18px 16px;gap:12px}.cgv-toolbar h2{font-size:15px}.cgv-reader{padding:8px}.cgv-actions{padding:15px 16px;gap:14px;font-size:11px}}@media(prefers-reduced-motion:reduce){.cgv-dialog,.cgv-dialog::backdrop{transition:none;transform:none}}

.portfolio-word{margin:4px 0 0!important;line-height:1!important}.portfolio-word img{width:min(70vw,440px);height:auto;margin:0 auto}.footer-brand{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.footer-brand>span{color:#c5c5ce;letter-spacing:.06em}.footer-email{font-size:10px;color:#86868b;letter-spacing:0;line-height:1.4}
@media(orientation:landscape) and (max-height:600px){body[data-page="portfolio"]{--nav-height:48px}html:has(body[data-page="portfolio"]){scroll-padding-top:56px}.portfolio-back-bar{height:48px}.portfolio-opening{padding:calc(var(--nav-height) + 18px) 32px 24px}.portfolio-opening-copy{display:grid;grid-template-columns:100px minmax(0,1fr);column-gap:34px;align-items:center;text-align:left;max-width:780px}.portfolio-emblem{grid-column:1;grid-row:1/5;width:100px;height:100px;margin:0}.portfolio-opening .eyebrow,.portfolio-word,.portfolio-statement,.portfolio-opening .text-link{grid-column:2}.portfolio-opening .eyebrow{margin-bottom:10px;font-size:9px}.portfolio-word img{width:min(34vw,280px);margin:0}.portfolio-statement{font-size:17px;line-height:1.45;margin:14px 0 16px}.portfolio-opening .text-link{font-size:14px}.portfolio-selection{padding:60px 0 36px}.portfolio-selection .section-heading h2{font-size:40px}.wheel-hint{font-size:14px;margin-top:15px}.wheel-stage{--wheel-card-width:clamp(156px,47svh,260px);margin-top:14px}.wheel-item{height:clamp(190px,57svh,315px)}.portfolio-wheel{gap:18px;padding-top:10px;padding-bottom:12px}.wheel-caption{padding:45px 16px 17px}.wheel-title{font-size:18px}.wheel-kind{font-size:8px;margin-bottom:7px}.wheel-controls{gap:9px}.wheel-open{font-size:12px;padding:10px 18px}.portfolio-return{margin-top:2px}.intro-screen{padding:calc(var(--nav-height) + 10px) 32px 44px}.identity-copy{display:grid;grid-template-columns:150px 1fr;column-gap:32px;align-items:center;max-width:620px;margin:auto}.identity-copy .hero-brand-mark{grid-column:1;grid-row:1/4;width:150px;margin:0}.identity-copy .hero-brand-name{grid-column:2;font-size:17px;margin-bottom:10px}.identity-copy .eyebrow{grid-column:2;margin:0;font-size:10px}.identity-copy .social-links{grid-column:2;margin-top:15px}.intro-screen>.scroll-cue{bottom:12px}}
.contact-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.submit-button:disabled{opacity:.6;cursor:wait}.mail-note.contact-error{color:#ad3636}

/* Gallery media stay visible: only the page and its introduction animate. */
body[data-page="gallery"]{--nav-height:64px}html:has(body[data-page="gallery"]){scroll-padding-top:80px}.gallery-opening{min-height:100svh;display:grid;place-items:center;padding:calc(var(--nav-height) + 44px) 32px 64px;text-align:center}.gallery-opening-copy{max-width:960px;margin:auto}.gallery-emblem{width:140px;height:140px;object-fit:contain;margin:0 auto 28px}.gallery-opening .eyebrow{color:#b6c4d8;line-height:1.7}.gallery-opening .eyebrow span{margin:0 8px;color:#6784aa}.gallery-opening h1{font-size:clamp(48px,7vw,92px);font-weight:650;line-height:1.06;letter-spacing:-.055em;margin:0 0 38px;text-wrap:balance}.gallery-copy{max-width:700px;margin:0 auto 32px;color:#c2ccda;font-size:19px;line-height:1.6}.gallery-copy p{margin:0 0 16px}.gallery-content{padding-top:28px;padding-bottom:70px}.gallery-media{position:relative}.gallery-item{margin:0 0 24px;break-inside:avoid;opacity:1;transform:none}.gallery-photographs{columns:2;column-gap:24px}.gallery-item>img{width:100%;height:auto;border-radius:16px}.gallery-item figcaption{padding:14px 4px 4px;color:#c1cede;font-size:14px;line-height:1.5;overflow-wrap:anywhere}.gallery-item figcaption a{color:var(--blue)}.gallery-films{max-width:1040px;margin:auto}.gallery-films .gallery-item{margin-bottom:48px}.gallery-player{position:relative;width:100%;overflow:hidden;border-radius:16px;background:#080c12}.gallery-player-portrait{max-width:420px;margin:auto}.gallery-player video,.gallery-player iframe{display:block;width:100%;height:100%;border:0;object-fit:contain}.gallery-player iframe{position:absolute;inset:0}.gallery-films figcaption{text-align:center;padding-top:16px}.gallery-empty{text-align:center;color:#b6c4d8;padding:48px 0}.gallery-navigation{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding:42px 0 32px;margin-top:28px;border-top:1px solid #c7deff20}.gallery-neighbour{display:flex;flex-direction:column;gap:12px;align-items:flex-start;font-size:clamp(19px,2.6vw,28px);line-height:1.2;letter-spacing:-.03em}.gallery-neighbour:last-child{align-items:flex-end;text-align:right}.gallery-neighbour .eyebrow{margin:0;color:#a0b7d8;font-size:9px;letter-spacing:.13em}.gallery-neighbour:hover>span:last-child{color:var(--blue)}.gallery-return{text-align:center;margin:18px 0 0}.site-entering body[data-page="gallery"] .gallery-opening-copy{animation:page-content-enter 1.1s .2s cubic-bezier(.16,1,.3,1) both}
@media(max-width:600px){.gallery-opening{padding:calc(var(--nav-height) + 28px) 24px 48px}.gallery-emblem{width:110px;height:110px;margin-bottom:24px}.gallery-opening h1{font-size:clamp(40px,12vw,56px);margin-bottom:30px}.gallery-opening .eyebrow{font-size:9px;letter-spacing:.14em}.gallery-copy{font-size:17px}.gallery-content{padding-top:16px;padding-bottom:48px}.gallery-photographs{columns:1}.gallery-item{margin-bottom:20px}.gallery-item>img,.gallery-player{border-radius:12px}.gallery-films .gallery-item{margin-bottom:32px}.gallery-navigation{gap:20px;padding-top:32px}.gallery-neighbour{font-size:19px}.gallery-neighbour .eyebrow{font-size:8px;line-height:1.7;letter-spacing:.08em}}
@media(orientation:landscape) and (max-height:600px){body[data-page="gallery"]{--nav-height:48px}html:has(body[data-page="gallery"]){scroll-padding-top:64px}.gallery-opening{padding:calc(var(--nav-height) + 22px) 32px 28px}.gallery-opening-copy{display:grid;grid-template-columns:100px minmax(0,1fr);column-gap:34px;text-align:left;max-width:780px;align-items:center}.gallery-emblem{grid-column:1;grid-row:1/5;width:100px;height:100px;margin:0}.gallery-opening .eyebrow,.gallery-opening h1,.gallery-copy,.gallery-opening .text-link{grid-column:2}.gallery-opening .eyebrow{margin-bottom:12px}.gallery-opening h1{font-size:clamp(32px,5vw,48px);margin-bottom:20px}.gallery-copy{font-size:16px;margin:0 0 18px}.gallery-opening .text-link{font-size:14px}.gallery-photographs{columns:2}.gallery-player-portrait{max-width:240px}.gallery-content{padding-top:16px}}
@media(prefers-reduced-motion:reduce){.site-entering body[data-page="gallery"] .gallery-opening-copy{animation:none}}
@media(orientation:landscape) and (max-height:600px){.gallery-player{width:min(100%,calc((100svh - 88px)*var(--media-ratio,1.77778)));margin-left:auto;margin-right:auto}}
.gallery-photo{display:block;cursor:zoom-in}.gallery-photo img{width:100%;height:auto;border-radius:16px}.gallery-lightbox-open,.gallery-lightbox-open body{overflow:hidden}.gallery-lightbox{width:100vw;max-width:none;height:100svh;max-height:none;padding:64px 70px 32px;border:0;margin:0;background:transparent;color:#f5f5f7;overflow:clip;opacity:0;transform:translateY(12px);transition:opacity .3s,transform .35s cubic-bezier(.16,1,.3,1)}.gallery-lightbox.is-visible{opacity:1;transform:none}.gallery-lightbox::backdrop{background:#0000;transition:background .3s}.gallery-lightbox.is-visible::backdrop{background:#000e}.gallery-lightbox figure{height:100%;margin:0;display:flex;flex-direction:column;align-items:center;gap:16px;pointer-events:none}.gallery-lightbox figure img{width:100%;height:calc(100% - 40px);object-fit:contain}.gallery-lightbox figcaption{font-size:12px;letter-spacing:.14em;color:#b6c4d8}.gallery-lightbox button{position:absolute;width:44px;height:44px;border-radius:50%;border:1px solid #ffffff35;background:#111b2bd9;color:#e4efff;font-size:24px}.gallery-lightbox button:disabled{opacity:.25;cursor:default}.gallery-lightbox-close{right:20px;top:14px;font-size:28px!important}.gallery-lightbox-prev{left:14px;top:calc(50% - 22px)}.gallery-lightbox-next{right:14px;top:calc(50% - 22px)}@media(max-width:600px){.gallery-photo img{border-radius:12px}.gallery-lightbox{padding:70px 12px 64px}.gallery-lightbox-prev,.gallery-lightbox-next{top:auto;bottom:16px}.gallery-lightbox-prev{left:calc(50% - 60px)}.gallery-lightbox-next{right:calc(50% - 60px)}}@media(prefers-reduced-motion:reduce){.gallery-lightbox,.gallery-lightbox::backdrop{transition:none;transform:none}}

/* Pointer interactions never add a focus halo, including dialog autofocus. */
.pointer-navigation :is(a,button,[tabindex]):focus{outline:none!important}
:is(.cgv-close,.gallery-lightbox button,.wheel-arrow){display:grid;place-items:center;padding:0;line-height:1;appearance:none;-webkit-appearance:none}
.control-icon{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
