@charset "UTF-8";:root{--gold:#c0a05a;--white:#fff;--black:#080808;--ease:cubic-bezier(.2,.8,.2,1)}*{box-sizing:border-box}body{margin:0;background:var(--black);color:#fff;font-family:"Yu Gothic UI","Yu Gothic",sans-serif}body:not(.subpage){overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:1px solid #c0a05a66;cursor:pointer}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--gold);outline-offset:5px}header{height:94px;position:fixed;inset:0 0 auto;z-index:20;display:flex;align-items:center;gap:25px;padding:0 5vw;background:linear-gradient(#080808 65%,transparent)}.brand{font-size:26px;font-weight:800;letter-spacing:-1px}.brand span{display:block;font-size:8px;letter-spacing:3px;font-weight:400;margin-top:4px}header nav{display:flex;gap:22px;margin-left:auto;font-size:12px}header nav a:hover{color:var(--gold)}#motion{font-size:10px;padding:9px;white-space:nowrap}#menu{display:none}.skip{position:fixed;top:-60px;z-index:99;background:#fff;color:#000;padding:12px}.skip:focus{top:0}#stage{height:100svh;position:relative}.scene{position:absolute;inset:0;padding:120px 8vw 75px;overflow:hidden;opacity:0;visibility:hidden;transform:translateY(5%) scale(1.035);transition:opacity .7s var(--ease),transform .9s var(--ease),visibility .7s;display:flex;flex-direction:column;justify-content:center;gap:20px;touch-action:none;isolation:isolate}.scene.active{opacity:1;visibility:visible;transform:none}.scene:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 80% 50%,#c0a05a0d,transparent 60%);z-index:-1}.eyebrow{font-size:10px;letter-spacing:3px;color:var(--gold);margin:0 0 10px}.kicker{font-size:11px;letter-spacing:2px}h1,h2,h3,p{margin:0}h1{font-size:clamp(48px,5.6vw,92px);line-height:1.2;letter-spacing:-3px;font-weight:500}h2{font-size:clamp(32px,4.2vw,68px);line-height:1.35;letter-spacing:-2px;font-weight:400}em{font-style:normal;color:var(--gold)}.body-copy{font-size:15px;line-height:2.4;margin-top:18px}.scene small,small{font-size:10px;color:#ffffff80;line-height:1.7}.hero-copy{z-index:2;width:50%;display:grid;gap:20px}.hero-copy>p:last-child{font-size:13px}.fv>.eyebrow{position:absolute;top:140px}.office{position:absolute;right:1vw;top:26%;width:64%;z-index:1}.office canvas{width:100%;height:auto;image-rendering:pixelated}.office-tag{display:block;text-align:center;font-size:8px;letter-spacing:3px;color:var(--gold)}.micro{position:absolute;right:9vw;bottom:17%;font-size:9px;color:var(--gold)}.next-cta{align-self:flex-start;padding:15px 25px;margin-top:18px;border-width:0 0 1px;font-size:11px;z-index:3}.next-cta span{padding-left:60px}.active h1,.active h2{animation:reveal 1.1s var(--ease) both}.active .body-copy,.active .hero-copy>p,.active .steps,.active .flow,.active .questions{animation:reveal 1.1s .15s var(--ease) both}.active .rail{animation:slide 1.1s .2s var(--ease) both}.active .office{animation:officeIn 1.4s var(--ease) both}@keyframes reveal{from{opacity:0;clip-path:inset(0 0 100% 0);transform:translateY(30px)}to{opacity:1;clip-path:inset(0);transform:none}}@keyframes slide{from{opacity:0;transform:translateX(100px)}to{opacity:1;transform:none}}@keyframes officeIn{from{opacity:0;transform:scale(1.15) translateY(30px)}to{opacity:1;transform:none}}.rail{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--gold) transparent;touch-action:pan-x;padding:5px 4px 16px;max-width:100%;overscroll-behavior-x:contain}.card{flex:0 0 37%;scroll-snap-align:start;min-width:0;display:grid;gap:12px}.card h3{font-size:17px;font-weight:500}.card p{font-size:12px;line-height:1.8;color:#ffffffb3}.art{height:clamp(120px,23vh,230px);border:1px solid #c0a05a55;position:relative;font-size:45px;font-weight:700;line-height:.9;padding:25px;overflow:hidden;color:#fff}.art:after{content:"";position:absolute;border:1px solid var(--gold);width:180px;height:180px;right:-35px;top:-55px;border-radius:50%}.art2:after{border-radius:0;transform:rotate(30deg);top:-40px}.art3:after{border-width:24px}.art span{position:absolute;right:16px;bottom:14px;font-size:10px;color:var(--gold)}.hint{font-size:9px;color:var(--gold);letter-spacing:1px}.services .card{flex-basis:31%;border:1px solid #c0a05a44;padding:28px;min-height:230px}.services b{font-size:45px;font-weight:300;color:var(--gold)}.services a{font-size:11px;border-bottom:1px solid var(--gold);justify-self:start;margin-top:12px}.questions{display:grid;gap:22px;margin-top:20px}.questions p{font-size:clamp(18px,2.5vw,32px);border-bottom:1px solid #c0a05a44;padding-bottom:16px;max-width:850px}.steps{display:flex;gap:40px;margin-top:24px}.steps>div{flex:1;border-top:1px solid var(--gold);padding-top:22px}.steps b{color:var(--gold);font-size:11px}.steps h3{font-size:24px;margin:18px 0}.steps p{font-size:12px;line-height:1.8}.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:20px}.flow span{border-top:1px solid var(--gold);padding:18px 0;font-size:12px}.cta{border:1px solid var(--gold);padding:22px 30px;align-self:flex-start;font-size:15px;min-width:310px;display:flex;justify-content:space-between;gap:30px;margin:12px 0}.cta:hover{background:var(--gold);color:#000}.connection{display:flex;align-items:center;margin-top:40px;font-size:11px;letter-spacing:2px}.connection i{height:1px;background:var(--gold);width:10vw;transform-origin:left}.active .connection i{animation:line 1.5s .2s both}@keyframes line{from{transform:scaleX(0)}to{transform:scaleX(1)}}.orb{position:absolute;width:32vw;height:32vw;right:8%;border:1px solid var(--gold);border-radius:50%;z-index:-1;box-shadow:inset 25px 0 50px #c0a05a26;animation:orb 9s ease-in-out infinite alternate}@keyframes orb{to{transform:translateY(-30px) scale(.9)}}.columns .card{flex-basis:32%;border-top:1px solid var(--gold);padding:25px 10px}.columns .num{font-size:65px;font-weight:200;color:var(--gold)}.columns a{font-size:11px}.last h2{font-size:clamp(44px,10vw,160px);font-weight:700}.last h2 span{display:block;font-size:10px;letter-spacing:7px;margin-top:10px;font-weight:400}.last footer{margin-top:20px;display:grid;gap:15px;font-size:10px;color:#ffffff80}.last footer nav{display:flex;gap:30px;color:#fff}.controls{position:fixed;bottom:25px;right:5vw;display:flex;align-items:center;gap:12px;z-index:25}.controls span{font-size:9px;letter-spacing:2px;margin-right:20px}.controls button{width:34px;height:34px;border-radius:50%;color:var(--gold)}.controls button:disabled{opacity:.25;cursor:default}#notice{position:fixed;bottom:32px;left:5vw;font-size:8px;color:#ffffff73;z-index:22}.progress{position:fixed;right:0;top:0;width:2px;height:100svh;background:#ffffff15;z-index:30}.progress i{display:block;width:100%;height:10%;background:var(--gold);transition:transform .7s}.subpage{overflow:auto;min-height:100svh}.sub-content{padding:145px 8vw 90px;max-width:1200px;margin:auto}.sub-content h1{font-size:60px}.sub-content>p{font-size:14px;line-height:2;margin:24px 0}.sub-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.sub-card{padding:26px;border:1px solid #c0a05a55;margin-top:20px}.sub-card h2{font-size:26px}.sub-card p{font-size:13px;line-height:2;margin:20px 0}.sub-content footer{padding-top:35px;margin-top:40px;border-top:1px solid var(--gold);display:flex;gap:25px;font-size:12px}.sub-content label{display:block;font-size:12px;margin:20px 0}.sub-content input,.sub-content textarea{display:block;width:100%;background:transparent;color:#fff;border:1px solid #c0a05a77;padding:12px;font:inherit;margin-top:8px}.sub-content textarea{height:110px}.sub-content form button{padding:15px 25px}.sub-content table{border-collapse:collapse;width:100%;font-size:12px;line-height:1.8}.sub-content td,.sub-content th{text-align:left;vertical-align:top;border-bottom:1px solid #c0a05a55;padding:16px 10px}.sub-content th{color:var(--gold)}.reduce-motion *{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reduce-motion .scene.active{opacity:1;transform:none}.reduce-motion .scene.active>*{opacity:1;transform:none;clip-path:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(max-width:760px){header{height:77px;padding:0 6vw;gap:12px}.brand{font-size:22px}.brand span{font-size:6px}header nav{display:none;position:absolute;top:76px;inset-inline:0;background:#080808;padding:30px;flex-direction:column;font-size:18px;margin:0;border-bottom:1px solid var(--gold)}header nav.open{display:flex}#menu{display:block;margin-left:auto;padding:8px;font-size:10px}#motion{font-size:8px;max-width:80px;white-space:normal}.scene{padding:100px 7vw 78px;gap:17px;justify-content:center}h1{font-size:48px;letter-spacing:-2px}h2{font-size:34px;letter-spacing:-1px}.eyebrow{font-size:8px;letter-spacing:1.6px}.fv{justify-content:flex-start;padding-top:110px}.fv>.eyebrow{position:static}.hero-copy{width:100%;gap:13px}.hero-copy .kicker{font-size:8px}.hero-copy>p:last-child{font-size:10px;max-width:220px}.office{width:118%;top:auto;bottom:16%;right:-13%}.micro{right:7vw;bottom:13%;font-size:8px}.next-cta{position:absolute;bottom:19%;left:7vw;margin:0;padding:8px 0;font-size:9px}.office-tag{font-size:6px}.body-copy{font-size:12px;line-height:2.2;max-width:95%;margin-top:6px}.rail{gap:18px;margin-right:-4vw}.card{flex-basis:86%}.card h3{font-size:16px}.art{height:160px;font-size:37px}.services .card{flex-basis:86%;padding:23px;min-height:235px}.services b{font-size:40px}.questions{gap:16px}.questions p{font-size:19px}.steps{flex-direction:column;gap:16px;margin-top:4px}.steps>div{padding-top:12px}.steps h3{font-size:19px;margin:6px 0}.steps b{float:right}.steps p{font-size:10px}.flow{grid-template-columns:1fr 1fr;font-size:10px;gap:10px}.flow span{font-size:10px;padding:12px 0}.cta{min-width:100%;font-size:13px;padding:18px 20px}.connection{font-size:7px;letter-spacing:0;margin-top:22px}.connection i{width:8vw}.orb{width:65vw;height:65vw;right:-25%;top:30%}.columns .card{flex-basis:85%}.last h2{font-size:51px}.last h2 span{font-size:7px;letter-spacing:3px}.controls{right:7vw;bottom:24px;gap:8px}.controls span{margin:0;font-size:8px}.controls button{width:29px;height:29px}#notice{left:7vw;bottom:31px;font-size:6px;max-width:43%}.sub-content{padding:115px 7vw 60px}.sub-content h1{font-size:42px}.sub-grid{grid-template-columns:1fr}.sub-content table{font-size:10px}.sub-content td,.sub-content th{padding:12px 5px}.sub-content footer{gap:18px;font-size:10px}}@media(max-height:680px){.scene{gap:12px;padding-top:100px}h2{font-size:31px}.art{height:120px}.card{gap:8px}.services .card{min-height:190px}.body-copy{line-height:1.8}.flow span{padding:10px 0}}

.scene.active:before{animation:ambient 9s ease-in-out infinite alternate}.scene:not(.active) *,.scene:not(.active):before{animation-play-state:paused}@keyframes ambient{from{transform:translateX(-3%) scale(1)}to{transform:translateX(3%) scale(1.05)}}

.presentation{overflow:hidden}

#ambient-film{position:fixed;inset:0;width:100%;height:100svh;pointer-events:none;opacity:.2;z-index:0}#stage{z-index:1}.portfolio-videos{display:flex;gap:28px;flex-wrap:wrap}.portfolio-videos figure{margin:0;flex:1;min-width:200px}.portfolio-videos video{display:block;width:100%;max-width:280px;aspect-ratio:9/16;object-fit:contain;background:#000;border:1px solid #c0a05a66;filter:grayscale(1)}figcaption{font-size:11px;line-height:1.8;margin:12px 0}.scene.active:after{content:"";position:absolute;inset:0;border-top:1px solid #c0a05a33;pointer-events:none;z-index:-1}.office{top:22%}@media(max-width:760px){.office{top:auto;bottom:14%;width:127%;right:-17%}.next-cta{bottom:18%;background:#080808cc}.portfolio-videos figure{min-width:145px}.portfolio-videos{gap:16px}}

/* r2.3 centered crop, shared logical pixel density */
.office{top:24%;right:0;width:65%;overflow:hidden;background:#eee5d6;border-radius:12px}.office canvas{width:100%;display:block;image-rendering:pixelated}.office-tag{color:#433629;padding:8px;background:#f2eadc}.micro{display:none}
@media(max-width:700px){.office{top:auto;bottom:90px;right:0;width:100%;height:44svh;border-radius:0}.office canvas{height:100%;width:auto;max-width:none;position:absolute;left:50%;transform:translateX(-50%)}.office-tag{position:absolute;bottom:0;width:100%;font-size:7px}.hero-copy{width:100%;align-self:flex-start}.fv{justify-content:flex-start;padding-top:130px}.fv .hero-copy h1{font-size:42px}}

/* v007 overlay is sized by visible office viewport, independent of room crop. */
.office-dialogue{position:absolute;inset:0;z-index:5;pointer-events:none}.office-bubble{position:absolute;margin:0;padding:10px 12px;min-height:44px;line-height:22px;border:2px solid #ad8243;background:#fffdf8;color:#272a2e;overflow-wrap:anywhere;white-space:normal;box-sizing:border-box;border-radius:8px;box-shadow:0 3px 8px #0002}.office-services{position:absolute;inset:0;z-index:4;pointer-events:none}.office-services a{position:absolute;min-height:44px;padding:10px;background:#fffaf1e8;border:1px solid #ad8243;color:#302a23;font-size:12px;pointer-events:auto;display:flex;align-items:center;justify-content:center}.office-services.office-mobile{inset:auto 0 20px;display:flex;gap:8px;overflow-x:auto;padding:4px 12px;pointer-events:auto;touch-action:pan-x;max-width:100%;height:54px;scroll-snap-type:x proximity}.office-services.office-mobile a{position:static;flex:0 0 auto;scroll-snap-align:start;white-space:nowrap}.office-services a:focus-visible{outline:3px solid #302a23;outline-offset:2px}

.head-bubble{position:absolute;margin:0;box-sizing:border-box;display:flex;align-items:center;justify-content:center;padding:6px 10px;line-height:22px;border:2px solid #ad8243;border-radius:16px;background:#fffdf8;color:#272a2e;box-shadow:0 2px 5px #0002;white-space:normal;overflow-wrap:anywhere}.head-bubble-tail{position:absolute;bottom:-9px;width:14px;height:14px;transform:rotate(45deg);background:#fffdf8;border-right:2px solid #ad8243;border-bottom:2px solid #ad8243}.office-sign-links{position:absolute;inset:0;z-index:4;pointer-events:none}.office-sign-links a{position:absolute;pointer-events:auto;background:transparent}.office-sign-links a:focus-visible{outline:3px solid #fff;outline-offset:2px}

/* r23b: original room fills FV; local copy scrim only, no frame/white band. */
.fv{isolation:isolate;padding:0;background:#d4b780}.fv .office{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;transform:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;background:none!important;overflow:hidden;z-index:0}.fv #office{width:100%!important;height:100%!important;object-fit:fill}.fv .hero-copy{position:absolute;z-index:3;left:5vw;top:22%;max-width:43vw;padding:24px;color:#fff;text-shadow:0 2px 10px #251c15}.fv .hero-copy:before{content:"";position:absolute;inset:-30px;background:radial-gradient(ellipse,#211a14b8,transparent 72%);z-index:-1;pointer-events:none}.fv .eyebrow{position:absolute;top:110px;left:5vw;z-index:3;color:#fff;text-shadow:0 2px 5px #211a14}.fv .next-cta{z-index:4;bottom:7%;}.r23b-speech{position:absolute;pointer-events:none;background:#fffdf5;color:#29261f;border:1px solid #ac884a;border-radius:12px;padding:9px 11px;text-align:center;box-sizing:border-box;line-height:1.45;box-shadow:0 2px 8px #261c1220}.r23b-speech:after{content:"";position:absolute;left:var(--tip);bottom:-8px;border:8px solid transparent;border-bottom:0;border-top-color:#fffdf5;transform:translateX(-50%)}.r23b-link{position:absolute;background:transparent;border:0;display:block;z-index:2}.r23b-link:focus-visible{outline:3px solid #d9b85f;outline-offset:5px}.r23b-load{position:absolute;bottom:12px;left:12px;font-size:11px;background:#fffdf5d9;color:#27241e;padding:5px 9px;z-index:4}
@media(max-width:700px){.fv .hero-copy{left:5vw;top:15%;max-width:85vw;padding:12px}.fv .hero-copy h1{font-size:clamp(38px,11vw,52px)}.fv .hero-copy p{font-size:12px}.fv .eyebrow{top:86px;font-size:10px}.fv .next-cta{bottom:9%;left:5vw}.r23b-speech{padding:7px 8px}}
