@font-face{font-family:ZigzagSans;src:local('Helvetica Neue')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:#f2f1ed;color:#322e33;font-family:ZigzagSans,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;border:0;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #3f21d6;outline-offset:6px}button:hover,a:hover{opacity:.7}.skip{position:fixed;left:20px;top:-100px;background:#fff;padding:12px;z-index:100}.skip:focus{top:20px}.site-header{position:fixed;inset:0 0 auto;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:28px 38px;pointer-events:none}.site-header>*{pointer-events:auto}.brand{width:125px}.brand img{display:block;width:100%}.header-note{font-size:11px;line-height:1.4;text-align:center;margin-left:-30px}.contact{font-size:13px;display:flex;gap:20px;align-items:center}.contact span{font-size:23px}.journey{height:290svh;position:relative}.stage{height:100svh;position:sticky;top:0;overflow:hidden;background:#f2f1ed}.scene,.fallback{position:absolute;inset:0}.scene{z-index:2}.scene canvas{display:block;width:100%;height:100%;touch-action:pan-y;transition:opacity .4s}.fallback{z-index:1;transition:opacity .5s}.fallback>img:not(.fallback-logo){position:absolute;left:var(--x);top:var(--y);width:var(--w);transform:translate(-50%,-50%) rotate(var(--r));filter:drop-shadow(0 12px 10px #28202818)}.fallback-logo{position:absolute;left:50%;top:48%;width:55vw;transform:translate(-50%,-50%)}.intro-copy{position:absolute;left:50%;top:49%;width:80%;text-align:center;transform:translate(-50%,calc(-35% + 50px));z-index:3;opacity:0;pointer-events:none;color:#3f21d6;will-change:transform,opacity}.eyebrow{font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin:0 0 20px}h1{font-size:clamp(50px,8.5vw,140px);line-height:.96;font-weight:500;letter-spacing:-.075em;margin:0}h1 span{font-family:Georgia,serif;font-style:italic;font-weight:400;letter-spacing:-.065em}.intro-description{font-size:clamp(14px,1.25vw,20px);line-height:1.45;margin:27px 0 0}.stage-footer{position:absolute;bottom:26px;left:38px;right:38px;z-index:5;display:flex;justify-content:space-between;align-items:center;font-size:12px}.studio-label{width:240px}.scroll-cue{display:flex;align-items:center;gap:16px}.scroll-cue span{font-size:22px;animation:nudge 2.5s infinite}.scene-tools{width:240px;display:flex;justify-content:flex-end;gap:8px;align-items:center}.scene-tools button{background:#fff9;backdrop-filter:blur(12px);border:1px solid #322e3314;border-radius:99px;padding:9px 13px;font-size:11px}.scene-tools #motion{width:34px;height:34px;padding:0}#index-toggle{display:flex;gap:15px}.loading{position:absolute;z-index:6;left:50%;bottom:82px;transform:translateX(-50%);font-size:11px;color:#726d79;white-space:nowrap;transition:opacity .6s}.loading span{margin-left:12px;font-variant-numeric:tabular-nums}.hover-label{position:absolute;z-index:7;top:0;left:0;padding:9px 13px;background:#322e33ee;color:#fff;border-radius:4px;font-size:11px;pointer-events:none;opacity:0;white-space:nowrap}.object-index{position:absolute;z-index:8;right:38px;bottom:76px;width:290px;max-height:calc(100svh - 180px);overflow:auto;padding:22px;background:#fcfbf7f5;backdrop-filter:blur(24px);border:1px solid #322e3319;border-radius:10px;box-shadow:0 16px 70px #2c1c3b16}.index-heading{display:flex;justify-content:space-between;align-items:center;font-size:15px}.index-heading button{background:transparent;font-size:25px}ol{list-style:none;margin:20px 0 0;padding:0;counter-reset:item}ol li{counter-increment:item;border-top:1px solid #322e3313}ol button{display:flex;align-items:center;gap:10px;background:none;text-align:left;padding:9px 0;width:100%;font-size:12px}ol button:before{content:counter(item,decimal-leading-zero);font-size:9px;color:#8b8497}ol button span{margin-left:auto;color:#8b8497;font-size:9px}.object-index p{font-size:11px;line-height:1.5;color:#797382;margin-top:20px}.studio{position:relative;padding:35px 38px 0;background:#3f21d6;color:#f2f1ed;z-index:4;min-height:95svh}.section-kicker{display:flex;justify-content:space-between;font-size:11px;border-bottom:1px solid #ffffff40;padding-bottom:24px}.studio-content{display:grid;grid-template-columns:1.15fr 1fr;gap:9vw;padding:100px 0 90px}.studio h2{font-size:clamp(48px,6.3vw,106px);font-weight:400;line-height:.99;letter-spacing:-.065em;margin:0}.studio-detail{max-width:450px}.studio-detail p:first-child{font-size:clamp(20px,2vw,30px);line-height:1.3;margin:0 0 28px;letter-spacing:-.025em}.studio-detail p{font-size:14px;line-height:1.6;color:#eee9ffcf}.text-link{display:inline-flex;gap:25px;border-bottom:1px solid #fff7;padding-bottom:10px;margin-top:24px;font-size:12px}.disciplines{display:flex;justify-content:space-between;border-top:1px solid #ffffff40;padding:25px 0 35px;font-size:clamp(17px,2.3vw,38px);letter-spacing:-.035em}.contact-footer{padding:40px 38px;display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:11px}.contact-footer img{width:125px}body.fallback-mode .journey{height:210svh}body.fallback-mode .fallback{opacity:calc(1 - var(--progress,0)*1.6)}@keyframes nudge{0%,100%{transform:translateY(-2px)}50%{transform:translateY(3px)}}@media(max-width:700px){.site-header{padding:22px}.brand{width:105px}.header-note{display:none}.contact{font-size:12px;gap:12px}.journey{height:250svh}.stage-footer{left:20px;right:20px;bottom:21px;gap:10px}.studio-label{display:none}.scene-tools{width:auto}.scroll-cue{font-size:11px;gap:10px}.fallback-logo{width:79vw;top:47%}.fallback>img:not(.fallback-logo){width:calc(var(--w)*2)}.loading{font-size:10px;bottom:80px}.intro-copy{width:94%;top:47%}h1{font-size:clamp(50px,13vw,92px)}.intro-description{font-size:14px}.object-index{right:20px;bottom:70px;width:280px}.studio{padding:28px 22px 0}.studio-content{grid-template-columns:1fr;gap:40px;padding:65px 0}.studio h2{font-size:64px}.studio-detail p:first-child{font-size:23px}.disciplines{flex-wrap:wrap;gap:20px;justify-content:flex-start}.disciplines span{width:calc(50% - 15px);font-size:24px}.contact-footer{padding:32px 22px;flex-wrap:wrap;gap:25px}.contact-footer>*{width:calc(50% - 20px)}.contact-footer img{width:110px}.contact-footer a{font-size:10px}.contact-footer span:last-child{text-align:right}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scroll-cue span{animation:none}*{transition:none!important}}

.scene canvas{cursor:grab}.scene canvas:focus-visible{outline:2px solid #3f21d6;outline-offset:-6px}@media(max-width:700px){.scene canvas{cursor:auto}}
