@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;600&display=swap');


:root{--blue:#124ec4;--deep:#103a8f;--cream:#f1ebdf;--ink:#24271f;--gold:#c69b51;--pad:clamp(32px,5.55vw,100px);--ease:cubic-bezier(.16,1,.3,1);--header-ink:var(--cream);--rule:rgba(36,39,31,.23)}
*{box-sizing:border-box}html{scroll-behavior:auto;scrollbar-color:#ae9e82 var(--cream);scrollbar-width:thin}body{margin:0;color:var(--ink);background:var(--cream);font:15px Manrope,Arial,sans-serif;-webkit-font-smoothing:antialiased}body[data-theme=cream]{--header-ink:var(--ink)}::selection{background:#d5b779;color:#1b291f}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}a{color:inherit;text-decoration:none}button{color:inherit;cursor:pointer;border:0}button:disabled{cursor:default;opacity:.5}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid currentColor;outline-offset:6px}input:focus-visible,textarea:focus-visible{outline:2px solid #dfc391;outline-offset:3px}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.3;flex-shrink:0}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--display);font-weight:400;letter-spacing:-.035em;line-height:.95;text-wrap:balance}h1 em,h2 em{font-weight:400}h2{font-size:clamp(64px,6.65vw,104px)}p{line-height:1.7}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}[hidden]{display:none!important}.skip-link{position:fixed;z-index:200;left:24px;top:-70px;padding:15px 22px;background:var(--cream);color:var(--ink)}.skip-link:focus{top:16px}
.header{position:fixed;inset:0 0 auto;z-index:70;display:flex;align-items:center;justify-content:space-between;padding:28px var(--pad);color:var(--header-ink);transition:color .4s,background .4s;gap:36px}.header.on-content,body[data-theme=cream] .header{background:rgba(241,235,223,.97)}.header.on-contact{background:#164bb4}.wordmark{display:flex;flex-direction:column;align-items:center;line-height:1;flex-shrink:0}.wordmark>span{font-size:24px;font-weight:600;letter-spacing:-.025em}.wordmark small{font-size:10px;letter-spacing:.48em;padding-left:.48em;margin-top:8px}.header nav{display:flex;gap:38px;font-size:13px}.header nav a{padding:8px 0;position:relative}.header nav a:after{content:'';position:absolute;left:0;bottom:1px;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}.header nav a:hover:after{transform:scaleX(1)}.header-contact{font-size:12px;display:flex;align-items:center;gap:24px;border-bottom:1px solid currentColor;padding:10px 0}.header-contact svg{width:16px;height:16px;transition:transform .45s var(--ease)}.header-contact:hover svg{transform:translate(3px,-3px)}
.story-rail{height:650vh;position:relative}.story-stage{height:100svh;min-height:640px;position:sticky;top:0;overflow:clip;background:var(--blue);isolation:isolate}.scene{position:absolute;inset:0;overflow:clip}.hero{z-index:1;background:linear-gradient(130deg,#1647af,#1455ca 62%,#155fc5);color:var(--cream)}.hero-atmosphere{position:absolute;inset:0;overflow:hidden}.hero-cloud{position:absolute;left:-10%;top:4%;width:67%;opacity:.1}.hero-copy{position:absolute;left:var(--pad);top:27%;z-index:4;width:57%;will-change:transform,opacity}.hero-copy h1{font-size:clamp(80px,8.15vw,132px);line-height:.93;max-width:850px}.hero-copy h1 em{white-space:nowrap}.hero-copy p{font-size:14px;margin-top:30px;line-height:1.8}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;padding:17px 23px;font-size:12px;font-weight:600;min-height:52px;transition:background .35s,color .35s,transform .5s var(--ease);border:1px solid transparent}.button svg{width:18px;height:18px;transition:transform .5s var(--ease)}.button:hover svg{transform:translateX(4px)}.button:active{transform:translateY(2px)}.button-light{border-color:rgba(241,235,223,.65);margin-top:35px}.button-light:hover{background:var(--cream);color:var(--deep)}.button-cream{background:var(--cream);color:var(--deep)}.button-cream:hover{background:#fff9ed}.statue-position{position:absolute;right:1.5%;bottom:7%;height:84%;z-index:3;transform-origin:50% 85%;will-change:transform}.statue-position img{height:100%;width:auto;max-width:none;filter:drop-shadow(-14px 14px 26px rgba(4,14,36,.18))}.curtain{position:absolute;right:-12%;top:-18%;width:47%;height:126%;background:radial-gradient(ellipse at 0 18%,#3e443e,#101d2a 60%,#091522);border-radius:0 0 0 68%;transform:rotate(-8deg);transform-origin:80% 0;box-shadow:-12px 16px 45px rgba(0,9,37,.22);will-change:transform}.curtain i{position:absolute;width:34%;height:115%;border-radius:50%;top:-5%;background:linear-gradient(90deg,transparent,rgba(153,160,155,.24) 34%,rgba(0,0,0,.35) 58%,transparent 80%);transform:rotate(-8deg)}.curtain i:nth-child(1){left:-5%}.curtain i:nth-child(2){left:15%}.curtain i:nth-child(3){left:35%}.curtain i:nth-child(4){left:55%}.curtain i:nth-child(5){left:75%}.plinth{position:absolute;bottom:0;right:0;height:9.8%;width:51%;background:linear-gradient(110deg,#c5bca8,#e7dece 47%,#bfb3a0);z-index:4;transform-origin:right bottom}.plinth:before,.plinth:after{content:'';position:absolute;left:-3%;width:104%;height:10px;background:#e7e0d2;box-shadow:0 5px 8px rgba(60,42,22,.2)}.plinth:before{top:-6px}.plinth:after{top:13px;height:5px;background:#cac0ae}.plinth i{position:absolute;inset:28px 6% 0;border:1px solid rgba(100,89,65,.3)}.hero-bottom{position:absolute;left:var(--pad);bottom:12%;z-index:5;display:flex;align-items:center;justify-content:space-between;width:45%;gap:24px;font-size:11px;line-height:1.8}.hero-bottom>a{display:flex;align-items:center;gap:12px}.scroll-line{height:39px;width:1px;background:rgba(241,235,223,.45);display:block;position:relative;overflow:hidden}.scroll-line:after{content:'';position:absolute;left:0;top:0;width:1px;height:14px;background:#fff;animation:scroll-tip 2.4s infinite var(--ease)}@keyframes scroll-tip{from{transform:translateY(-16px)}to{transform:translateY(40px)}}
.garden{z-index:2;background:#ece7da;opacity:0;color:var(--ink);will-change:opacity}.garden-sun{position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(ellipse at 18% 63%,#f3eddf 0%,rgba(243,237,223,.98) 24%,rgba(243,237,223,.76) 40%,transparent 65%)}.garden-tree{position:absolute;pointer-events:none;will-change:transform;z-index:1}.tree-left{width:102%;left:-61%;top:-99%;transform:rotate(26deg)}.tree-right{width:95%;right:-36%;top:-64%;transform:rotate(-22deg)}.garden-tree img{width:100%;transform-origin:50% 85%;filter:drop-shadow(10px 25px 16px rgba(29,38,12,.11))}.tree-sway{animation:tree-sway 10s ease-in-out infinite alternate}.tree-right .tree-sway{animation-duration:13s;animation-delay:-5s}.garden-copy{position:absolute;z-index:3;left:var(--pad);top:39%;width:55%;will-change:transform,opacity}.garden-copy h2{font-size:clamp(65px,6.6vw,108px)}.garden-copy p{font-size:14px;margin-top:24px}.idea-note{position:absolute;left:var(--pad);right:auto;bottom:17%;font-size:11px;z-index:3}.fine-line{display:block;width:60px;height:1px;background:currentColor;margin-bottom:15px}.sky{z-index:3;background:linear-gradient(160deg,#1139a3,#145aca 80%,#1b67c6);color:var(--cream);opacity:0;will-change:opacity}.sky-cloud{position:absolute;pointer-events:none}.cloud-a{width:55%;left:-28%;bottom:-25%;animation-duration:23s}.cloud-b{width:37%;right:-10%;top:8%;animation-duration:29s;animation-delay:-8s;opacity:.85}.cloud-c{width:21%;left:27%;top:-2%;opacity:.27;animation-duration:36s;animation-delay:-20s}.sky-clear{position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,60,163,.34),transparent 70%);pointer-events:none}.sky-copy{position:absolute;left:var(--pad);top:38%;z-index:2;will-change:transform,opacity}.sky-copy h2{font-size:clamp(68px,7.8vw,122px)}.sky-copy p{font-size:14px;margin-top:30px}.sky-caption{position:absolute;right:11%;bottom:15%;font-size:11px;line-height:1.8}.studio{z-index:5;background:var(--cream);opacity:0;will-change:opacity}.studio-copy{position:absolute;left:var(--pad);top:21%;width:48%;z-index:2}.studio-copy h2{font-size:clamp(65px,6.5vw,102px);line-height:.91}.studio-copy p{font-size:12px;margin-top:26px;line-height:1.8}.exhibit{position:absolute;width:35vw;height:35vw;max-height:540px;max-width:540px;right:9%;top:22%;will-change:transform}.exhibit-frame{position:absolute;inset:0;background:#e4dccb;box-shadow:12px 27px 36px rgba(66,45,16,.17),inset 0 0 0 7px #eae2d3,inset 0 0 0 9px #b5a88d,inset 0 0 0 15px #d3c7b3}.exhibit-frame:before{content:'';position:absolute;inset:23px;border:1px solid #b1a188;background:radial-gradient(ellipse at 48% 42%,#f7f0df,#d1c5b0);box-shadow:inset 3px 8px 18px rgba(79,57,31,.15)}.exhibit-frame i{position:absolute;inset:32px;border:1px solid rgba(133,110,76,.2)}.exhibit-shadow{position:absolute;bottom:12%;left:25%;width:50%;height:9%;border-radius:50%;background:#5d4e2c;opacity:.15;filter:blur(15px)}.exhibit-caption{position:absolute;right:9%;width:35vw;text-align:center;bottom:15%;font-size:11px}.studio-next{position:absolute;bottom:9%;left:var(--pad)}
.orb-host{position:absolute;z-index:7;width:540px;height:540px;left:65.5%;top:27.5%;transform:translate(-50%,-50%) scale(.38);transform-origin:50% 50%;will-change:transform;cursor:grab;touch-action:pan-y}.orb-host:active{cursor:grabbing}.orb-host canvas{display:block;width:100%;height:100%;outline:0}.orb-host canvas.ready+.orb-fallback{display:none}.orb-fallback{position:absolute;inset:20%;transform-style:preserve-3d;animation:orb-idle 20s linear infinite}.orb-fallback i{position:absolute;inset:0;border:9px solid #c7a464;border-radius:50%;transform:rotateY(60deg)}.orb-fallback i:nth-child(2){transform:rotateX(50deg) rotateY(-30deg)}.orb-fallback b{position:absolute;inset:33%;border-radius:50%;background:radial-gradient(circle at 25% 23%,#fff1cc,#bd893a 60%,#63421c)}.orb-hint{position:absolute;z-index:8;left:71%;top:76%;transform:translateX(-50%);font-size:11px;opacity:0;pointer-events:none}.foreground-cloud{position:absolute;z-index:9;left:-20%;top:100%;width:140%;pointer-events:none;will-change:transform,opacity;opacity:0}.foreground-cloud img{width:100%}.scene-navigation{position:absolute;z-index:30;left:22px;top:47%;display:flex;flex-direction:column;gap:10px;color:var(--header-ink)}.scene-navigation button{width:28px;height:26px;padding:7px 4px;background:transparent;display:flex;align-items:center}.scene-navigation i{width:6px;height:6px;border-radius:50%;border:1px solid currentColor;transition:background .3s,transform .3s}.scene-navigation [aria-current=step] i{background:currentColor;transform:scale(1.35)}.story-bottom{position:absolute;z-index:30;bottom:25px;left:var(--pad);right:var(--pad);display:flex;align-items:center;justify-content:space-between;color:var(--header-ink);font-size:11px}.story-bottom>a,.motion-toggle{display:flex;align-items:center;gap:9px}.story-bottom>a{padding:7px 0}.story-bottom svg{width:14px;height:14px}.motion-toggle{padding:7px 0;background:transparent;font-size:11px}.play-icon{display:none}.paused .pause-icon{display:none}.paused .play-icon{display:block}.page-progress{position:fixed;bottom:0;left:0;right:0;height:2px;z-index:80}.page-progress i{display:block;width:0;height:100%;background:#c8ad76}.cloud-drift{animation:cloud-drift 28s ease-in-out infinite alternate}.paused .cloud-drift,.paused .tree-sway,.paused .scroll-line:after,.paused .orb-fallback{animation-play-state:paused}@keyframes tree-sway{from{transform:rotate(-1.4deg) skewX(-.7deg)}to{transform:rotate(1.3deg) skewX(.7deg)}}@keyframes cloud-drift{from{transform:translate3d(-20px,0,0) scale(1.01)}to{transform:translate3d(35px,-17px,0) scale(1.06)}}@keyframes orb-idle{to{transform:rotateY(360deg) rotateZ(360deg)}}
.content-section{padding:90px var(--pad);position:relative;scroll-margin-top:105px}.section-rule{display:flex;justify-content:space-between;border-top:1px solid var(--rule);padding-top:18px;font-size:11px;gap:20px}.work{background:var(--cream)}.work-heading{display:flex;justify-content:space-between;align-items:flex-end;margin:24px 0 64px;gap:40px}.work-heading h2{font-size:clamp(65px,6.6vw,104px)}.work-heading>p{font-size:12px;max-width:300px;padding-bottom:8px}.project-list{border-top:1px solid var(--rule)}.project-row{display:grid;grid-template-columns:1.1fr .8fr auto;gap:36px;align-items:center;padding:42px 8px;border-bottom:1px solid var(--rule);position:relative;isolation:isolate}.project-row:before{content:'';position:absolute;inset:0;background:#e7dfcf;transform:scaleY(0);transform-origin:bottom;transition:transform .5s var(--ease);z-index:-1}.project-row:hover:before{transform:scaleY(1)}.project-name{font-family:var(--display);font-size:64px;line-height:1.05;letter-spacing:-.02em;transition:transform .5s var(--ease)}.project-row:hover .project-name{transform:translateX(8px)}.project-type{font-size:12px;line-height:1.9}.project-type small{font-size:11px;color:#606656}.project-open{display:flex;align-items:center;gap:30px;font-size:11px}.project-open svg{width:22px;height:22px;transition:transform .5s var(--ease)}.project-row:hover svg{transform:translate(3px,-3px)}.work-foot{display:flex;justify-content:space-between;margin-top:25px;font-size:11px;color:#5b6250}.services{padding-top:50px}.services-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;margin-top:76px}.services-intro h2{font-size:clamp(64px,6.4vw,102px)}.services-intro>p{font-size:13px;margin-top:28px}.text-link{display:inline-flex;align-items:center;gap:25px;font-size:11px;padding-bottom:9px;border-bottom:1px solid currentColor}.services-intro>.text-link{margin-top:34px}.text-link svg{width:16px;height:16px;transition:transform .5s var(--ease)}.text-link:hover svg{transform:translateX(4px)}.service-list{padding-top:4px}.service-list details{border-top:1px solid var(--rule)}.service-list details:last-child{border-bottom:1px solid var(--rule)}.service-list summary{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px 0}.service-list h3{font-size:19px;font-weight:400}.service-list svg{width:18px;height:18px;transition:transform .4s}.service-list details[open] summary svg{transform:rotate(45deg)}.service-list details>div{padding:0 36px 32px 0}.service-list p{font-size:13px;max-width:58ch;color:#4c5347}.service-list details>div>span{font-size:11px;display:block;margin-top:22px;color:#5f6557}.process{padding-bottom:140px}.process>h2{font-size:clamp(58px,5.8vw,96px)}.process-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:7%;margin-top:64px}.process-steps article{border-top:1px solid var(--rule);padding-top:20px}.process-steps article>span{font-size:11px}.process-steps h3{font-family:var(--display);font-size:34px;font-weight:400;margin-top:34px}.process-steps p{font-size:12px;margin-top:15px;max-width:37ch;color:#51584b}
.contact{background:linear-gradient(145deg,#12399d,#155acb 75%,#1b65c4);color:var(--cream);position:relative;min-height:105vh;overflow:hidden;padding:140px var(--pad) 0;scroll-margin-top:60px;isolation:isolate}.contact-copy{position:relative;z-index:3;margin-left:32%;width:68%;padding-bottom:140px}.contact-copy>h2{font-size:clamp(80px,8.3vw,132px)}.contact-copy>p{font-size:13px;margin-top:28px}.contact-copy>.button{margin-top:30px}.contact-cloud{position:absolute;top:-6%;right:-19%;width:75%;opacity:.13;z-index:-1}.contact-tree{position:absolute;left:-23%;bottom:60px;width:62%;z-index:1;pointer-events:none;transform:rotate(5deg)}.contact-tree>img{width:100%;transform-origin:50% 90%}.brief{margin-top:30px;max-width:580px}.brief>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;width:fit-content;font-size:11px;padding:10px 0;border-bottom:1px solid #c8d5ed88}.brief>summary svg{width:14px;height:14px}.brief[open]>summary svg{transform:rotate(45deg)}.brief form,.brief #brief-result{margin-top:30px}.brief label{display:block;font-size:11px;line-height:1.8}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.brief input,.brief textarea{display:block;width:100%;background:#0c3b8e99;border:1px solid #e5eaf285;border-radius:0;padding:13px 14px;color:var(--cream);margin-top:8px;caret-color:#efd79b;font-size:13px;resize:vertical}.brief input::placeholder,.brief textarea::placeholder{color:#e0e7f4}.brief form>.button{margin-top:24px}.form-note,#copy-status{font-size:11px;line-height:1.7;margin-top:14px}.result-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:20px}.edit-brief{padding:10px 0;background:none;text-decoration:underline;text-underline-offset:5px;font-size:11px;margin-top:10px}.contact footer{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #dee6f073;gap:24px;padding:28px 0 35px}.contact footer p{font-size:11px}.contact footer>a:last-child{display:flex;gap:20px;align-items:center;font-size:11px}.contact footer svg{width:15px;height:15px}
html:not(.js) .story-rail{height:auto}html:not(.js) .story-stage{height:auto;position:relative}html:not(.js) .scene{position:relative;height:100vh;clip-path:none!important}html:not(.js) .orb-host,html:not(.js) .scene-navigation,html:not(.js) .story-bottom{display:none}
@media(min-width:1800px){.hero-copy h1{font-size:152px}.hero-copy{top:30%}.hero-copy p{font-size:17px}.button{font-size:14px}.scene-navigation{left:40px}.studio-copy p{font-size:15px}}
@media(max-height:740px) and (min-width:901px){.story-stage{min-height:560px}.hero-copy{top:25%}.hero-copy h1{font-size:95px}.hero-copy p{margin-top:20px}.hero-copy .button{margin-top:20px}.hero-bottom{bottom:11%}.studio-copy{top:20%}.studio-copy h2{font-size:70px}.studio-copy p{font-size:11px;margin-top:20px}.exhibit{width:31vw;height:31vw;right:12%;top:24%}.exhibit-caption{bottom:12%}.studio-next{bottom:8%}.garden-copy h2{font-size:77px}}
@media(max-width:1100px){:root{--pad:42px}.header nav{gap:22px}.hero-copy h1{font-size:90px}.hero-copy{width:65%;top:31%}.statue-position{right:-7%;height:78%;bottom:8%}.scene-navigation{left:10px}.studio-copy h2{font-size:78px}.exhibit{right:7%;top:30%}.exhibit-caption{bottom:22%}.work-heading h2{font-size:78px}.services-layout{gap:7%}.project-name{font-size:55px}.project-open{gap:15px}.hero-copy p{font-size:12px}.contact-copy{margin-left:27%;width:73%}.contact-copy>h2{font-size:96px}.contact-tree{left:-30%;width:70%}}
@media(max-width:900px){:root{--pad:25px}.header{padding:20px var(--pad);gap:20px}.wordmark>span{font-size:19px}.wordmark small{font-size:9px;margin-top:6px}.header nav{display:none}.header-contact{font-size:11px;gap:12px}.header-contact svg{width:13px}.story-rail{height:590vh}.story-stage{min-height:620px;max-height:1000px}.hero-copy{top:16%;width:94%;z-index:5}.hero-copy h1{font-size:clamp(66px,12.8vw,98px);line-height:.91;max-width:570px}.hero-copy p{font-size:11px;margin-top:19px}.hero-copy>.button{margin-top:20px;min-height:44px;padding:12px 15px;font-size:11px;gap:14px}.statue-position{height:53%;right:-5%;bottom:6.3%}.curtain{width:66%;height:85%;top:28%;right:-26%;border-radius:55% 0 0 0}.plinth{height:6.8%;width:64%}.plinth i{inset:24px 5% 0}.hero-bottom{bottom:20%;width:40%;display:block;font-size:11px}.hero-bottom>a{margin-top:20px;max-width:110px;line-height:1.6}.hero-bottom>span{max-width:110px;display:block}.scene-navigation{left:auto;right:9px;top:47%;gap:8px}.scene-navigation button{width:20px}.story-bottom{bottom:16px;font-size:11px}.motion-toggle{font-size:11px}.garden-copy{top:25%;width:90%}.garden-copy h2{font-size:clamp(58px,11.5vw,80px)}.garden-copy p{font-size:12px;margin-top:22px}.tree-left{width:170%;left:-115%;top:-48%}.tree-right{width:150%;right:-90%;top:-38%}.garden-sun{background:radial-gradient(ellipse at 22% 42%,#f3eddf 0%,rgba(243,237,223,.97) 23%,rgba(243,237,223,.75) 40%,transparent 70%)}.idea-note{right:8%;bottom:12%;font-size:11px}.orb-host{width:400px;height:400px}.orb-hint{font-size:11px;top:79%}.sky-copy{top:23%}.sky-copy h2{font-size:clamp(62px,12vw,88px)}.sky-copy p{font-size:12px;margin-top:24px}.cloud-a{width:110%;left:-72%;bottom:-7%}.cloud-b{width:65%;right:-35%;top:43%}.cloud-c{width:45%;left:18%;top:2%}.sky-caption{right:9%;bottom:12%;font-size:11px}.studio-copy{top:16%;width:90%}.studio-copy h2{font-size:60px;line-height:.87}.studio-copy p{font-size:11px;margin-top:20px}.exhibit{width:44vw;height:44vw;right:8%;top:auto;bottom:14%}.exhibit-frame:before{inset:13px}.exhibit-frame i{inset:19px}.exhibit-caption{bottom:10%;right:8%;width:48vw;font-size:11px}.studio-next{bottom:7%;font-size:11px;gap:10px}.content-section{padding:65px var(--pad);scroll-margin-top:82px}.section-rule{font-size:11px}.section-rule>span:last-child{max-width:140px;text-align:right}.work-heading{display:block;margin:47px 0 40px}.work-heading h2{font-size:60px}.work-heading p{margin-top:25px;font-size:11px}.project-row{grid-template-columns:1fr auto;gap:16px;padding:30px 0}.project-name{font-size:44px}.project-type{font-size:11px;grid-row:2;grid-column:1}.project-open{font-size:0;grid-column:2;grid-row:1/3}.project-open svg{width:24px;height:24px}.work-foot{font-size:11px;gap:28px;line-height:1.6}.work-foot>span:last-child{max-width:180px;text-align:right}.services-layout{display:block;margin-top:50px}.services-intro h2{font-size:70px}.services-intro p{font-size:12px;margin-top:25px}.service-list{margin-top:48px}.service-list summary{padding:25px 0}.service-list h3{font-size:17px}.service-list p{font-size:12px}.process>h2{font-size:58px}.process-steps{grid-template-columns:1fr;gap:32px;margin-top:42px}.process-steps h3{margin-top:20px;font-size:32px}.process-steps p{max-width:45ch;font-size:12px;margin-top:11px}.process{padding-bottom:90px}.contact{padding:100px var(--pad) 0;min-height:100svh}.contact-copy{margin-left:0;width:100%;padding-bottom:155px}.contact-copy>h2{font-size:70px}.contact-copy>p{font-size:11px}.contact-copy>.button{font-size:11px;gap:15px;padding:15px 18px}.contact-tree{width:97%;left:-52%;bottom:80px;opacity:.45}.contact-cloud{width:120%;top:10%;right:-60%;opacity:.13}.brief{max-width:100%}.brief>summary{font-size:11px;gap:15px}.form-row{grid-template-columns:1fr;gap:20px}.contact footer{flex-wrap:wrap;padding:25px 0;gap:25px}.contact footer p{font-size:11px;max-width:130px;text-align:right}.contact footer>a:last-child{margin-left:auto;font-size:11px}.foreground-cloud{width:260%;left:-80%}.hero-cloud{width:110%;top:14%}.button{font-size:11px}}
@media(prefers-reduced-motion:reduce){.cloud-drift,.tree-sway,.scroll-line:after,.orb-fallback{animation:none!important}*,*:before,*:after{transition-duration:.01ms!important}}

/* Full-stage 3D viewport: never enlarge a rasterized canvas. */
.orb-host{inset:0;width:100%;height:100%;transform:none;will-change:auto;pointer-events:none;cursor:auto}.orb-host canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.orb-hit-target{position:absolute;z-index:1;pointer-events:auto;cursor:grab;touch-action:pan-y;clip-path:circle(34%)}.orb-hit-target:active{cursor:grabbing}.orb-host .orb-fallback{inset:auto;pointer-events:none}
/* A single grounded sculpture and a viewport-sized final scene. */
:root{--display:Manrope,Arial,sans-serif;--header-height:100px;--contact-blue:#164bb4}
h1,h2,h3,.project-name{font-family:var(--display);font-weight:600;font-style:normal;letter-spacing:-.04em;line-height:1.04}
h1 em,h2 em{font-style:normal;font-weight:inherit}
h1,h2,h3,p,.project-name{overflow-wrap:break-word}
.hero{--plinth-height:9.8%;--plinth-depth:clamp(18px,3.6svh,36px)}
.sculpture{position:absolute;inset:0;z-index:3;pointer-events:none;will-change:transform}
.statue-position{bottom:calc(var(--plinth-height) - 2px);z-index:4;transform:none;transform-origin:50% 100%}
.statue-position:after{content:'';position:absolute;left:25%;bottom:-1px;width:39%;height:7px;background:rgba(51,41,24,.3);filter:blur(4px);border-radius:50%;z-index:-1}
.plinth{height:var(--plinth-height);z-index:3}
.plinth:before{top:calc(-1 * var(--plinth-depth));height:var(--plinth-depth);left:-3%;width:103%;clip-path:polygon(6% 0,100% 0,100% 100%,0 100%);background:linear-gradient(135deg,#eee6d7,#c8bda8);box-shadow:none}
.plinth:after{top:0;left:-3%;width:103%;height:7px;background:#e8e0d1;box-shadow:0 5px 8px #3c2a2233}
.hero-copy{width:55%;top:27%}
.hero-copy h1{font-size:clamp(48px,6.15vw,110px);line-height:1.04}
.hero-copy p{max-width:36ch}
.garden-copy{width:48%;top:34%}
.garden-copy h2{font-size:clamp(44px,4.8vw,84px)}
.sky-copy{width:49%;top:34%}
.sky-copy h2{font-size:clamp(44px,4.8vw,84px)}
.studio-copy{width:47%;top:21%}
.studio-copy h2{font-size:clamp(42px,4.7vw,78px)}
.studio-copy p{max-width:42ch}
.work-heading h2,.services-intro h2{font-size:clamp(42px,5vw,84px)}
.process>h2{font-size:clamp(40px,4.7vw,78px)}
.project-name{font-size:clamp(32px,4vw,58px);letter-spacing:-.035em}
.process-steps h3{font-size:clamp(24px,2.1vw,32px);letter-spacing:-.025em}
.work-heading>*,.services-layout>*,.project-row>*,.process-steps>*{min-width:0}
.contact-rail{position:relative;padding-bottom:20svh;background:var(--contact-blue)}
.contact{position:sticky;top:0;width:100%;min-height:100svh;display:flex;flex-direction:column;padding:var(--header-height) var(--pad) 0;background:var(--contact-blue);overflow:clip;scroll-margin-top:0}
.contact-backdrop{position:absolute;inset:var(--header-height) 0 0;z-index:0;overflow:clip;pointer-events:none;isolation:isolate}
.contact-backdrop:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,var(--contact-blue),transparent 22%,transparent 76%,var(--contact-blue)),linear-gradient(90deg,transparent 12%,rgba(22,75,180,.15) 32%,var(--contact-blue) 46%);z-index:2}
.contact-tree{left:-16%;bottom:-12%;height:min(105svh,1100px);width:auto;aspect-ratio:2/3;max-width:60%;opacity:.9;transform:rotate(3deg);z-index:1}
.contact-tree>img{height:100%;width:100%;object-fit:contain;object-position:left bottom}
.contact-cloud{top:8%;right:-18%;width:65%;opacity:.1;z-index:0}
.contact-copy{width:62%;margin:auto 0 auto 38%;padding:clamp(48px,7svh,100px) 0;z-index:3}
.contact-copy>h2{font-size:clamp(44px,5.6vw,96px);line-height:1.06;letter-spacing:-.04em;max-width:none}
.contact-copy>p{font-size:14px;margin-top:24px}
.contact-copy>.button{margin-top:28px;max-width:100%}
.contact .brief{max-width:100%;width:min(100%,580px)}
.contact .brief>summary{max-width:100%;line-height:1.6;min-height:44px}
.contact footer{flex-shrink:0;display:grid;grid-template-columns:auto 1fr auto;gap:32px;align-items:center;padding:24px 0 max(24px,env(safe-area-inset-bottom));background:transparent;z-index:3}
.contact footer p{max-width:28ch;justify-self:center}
.contact footer>a:last-child{margin:0;justify-self:end}
.header.on-contact{color:var(--cream);background:var(--contact-blue)}


.brief input,.brief textarea{font-size:16px}
@media(min-width:901px) and (max-width:1100px){
 .hero-copy{width:56%;top:29%}.hero-copy h1{font-size:6.1vw}.statue-position{right:-6%;height:76%}
 .garden-copy,.sky-copy{width:48%}.garden-copy h2,.sky-copy h2{font-size:4.8vw}
 .studio-copy h2{font-size:4.7vw}.studio-copy p{font-size:12px}.studio-copy p br{display:none}
 .contact-copy{margin-left:34%;width:66%}.contact-copy>h2{font-size:5.8vw}.contact-tree{left:-23%;max-width:64%}
 .project-row{gap:24px}.project-open{font-size:10px;gap:12px}
}
@media(max-width:900px){
 :root{--pad:clamp(20px,5.5vw,32px);--header-height:82px}
 .header{gap:14px}.header-contact{gap:10px;font-size:10px}.wordmark>span{font-size:18px}
 .story-stage{min-height:700px;max-height:none}
 .hero{--plinth-height:7%;--plinth-depth:24px}
 .hero-copy{top:calc(var(--header-height) + 28px);width:calc(100% - 2 * var(--pad));z-index:5}
 .hero-copy h1{font-size:clamp(35px,9.2vw,64px);line-height:1.04}
 .hero-copy p{font-size:12px;line-height:1.65;margin-top:18px}.hero-copy>.button{margin-top:18px}
 .statue-position{height:49%;right:-6%;bottom:calc(var(--plinth-height) - 2px)}
 .hero-bottom{width:35%;bottom:17%;font-size:10px}.hero-bottom>a{margin-top:16px}
 .garden-copy,.sky-copy{top:calc(var(--header-height) + 36px);width:calc(100% - 2 * var(--pad) - 12px)}
 .garden-copy h2,.sky-copy h2{font-size:clamp(32px,8.3vw,52px);line-height:1.08}
 .garden-copy p,.sky-copy p{font-size:12px;margin-top:20px;max-width:31ch}
 .garden-copy p br,.sky-copy p br{display:none}
 .idea-note{bottom:10%;max-width:40%;font-size:10px}.sky-caption{bottom:10%;right:var(--pad);max-width:48%;font-size:10px}
 .studio-copy{top:calc(var(--header-height) + 24px);width:calc(100% - 2 * var(--pad) - 14px)}
 .studio-copy h2{font-size:clamp(32px,8.2vw,48px);line-height:1.06}
 .studio-copy p{font-size:12px;max-width:36ch;line-height:1.6;margin-top:20px}.studio-copy p br{display:none}
 .exhibit{width:39vw;height:39vw;right:10%;bottom:14.5%;top:auto}
 .exhibit-caption{width:46%;right:6%;bottom:10.5%;font-size:9px}
 .studio-next{bottom:6.5%;font-size:10px}
 .work-heading h2,.services-intro h2,.process>h2{font-size:clamp(32px,8.4vw,54px);line-height:1.08}
 .project-name{font-size:clamp(30px,8vw,44px)}.project-row{padding:28px 0}.process-steps h3{font-size:26px}
 .contact{min-height:100svh;padding-top:var(--header-height)}
 .contact-copy{width:100%;margin:auto 0;padding:44px 0 120px}
 .contact-copy>h2{font-size:clamp(36px,9.3vw,64px);max-width:none;line-height:1.08}
 .contact-copy>p{font-size:12px;max-width:27ch;margin-top:22px}
 .contact-copy>.button{font-size:11px;gap:14px;min-height:48px}
 .contact-tree{height:min(72svh,630px);max-width:none;width:74%;left:-24%;bottom:-10%;opacity:.48;aspect-ratio:auto}
 .contact-backdrop:after{background:linear-gradient(180deg,var(--contact-blue) 0%,var(--contact-blue) 35%,rgba(22,75,180,.7) 55%,transparent 75%,var(--contact-blue) 100%),linear-gradient(90deg,transparent,var(--contact-blue) 76%)}
 .contact-cloud{width:95%;right:-50%}
 .contact footer{grid-template-columns:1fr auto;gap:18px 20px;padding-top:22px;align-items:center}
 .contact footer .wordmark{justify-self:start}.contact footer p{font-size:10px;max-width:18ch;justify-self:end;text-align:right}
 .contact footer>a:last-child{grid-column:1/-1;justify-self:end;font-size:11px;min-height:34px}
 
 .button,.text-link{max-width:100%}.brief>summary{font-size:11px}.result-actions{gap:16px}
}
@media(max-width:380px){.header{gap:10px}.header-contact{font-size:9px;gap:6px}.wordmark>span{font-size:16px}.wordmark small{font-size:8px}.hero-copy h1{font-size:9.15vw}.hero-copy p{font-size:11px}.hero-bottom{font-size:9px}.contact-copy>.button{padding-inline:14px;font-size:10px}.contact-copy>h2{font-size:9.1vw}}
@media(min-width:901px) and (max-height:740px){.hero-copy{top:25%}.hero-copy h1{font-size:min(6vw,78px)}.studio-copy{top:19%}.studio-copy h2{font-size:min(4.4vw,52px)}.studio-copy p{margin-top:16px}.garden-copy h2,.sky-copy h2{font-size:min(4.8vw,66px)}.contact-copy{padding-block:36px}.contact-copy>h2{font-size:min(5.4vw,72px)}}
@media(prefers-reduced-motion:reduce){.contact-rail{padding-bottom:0}.contact{position:relative}}

/* Keep foliage outside the reading area and controls clear of the pedestal. */
.garden-sun{background:linear-gradient(90deg,#f3eddf 0%,rgba(243,237,223,.98) 39%,rgba(243,237,223,.78) 49%,transparent 70%)}
.story-stage[data-scene-index="0"] .story-bottom>a{color:var(--ink)}
@media(max-width:900px){.garden-sun{background:linear-gradient(180deg,#f3eddf 0%,rgba(243,237,223,.98) 35%,rgba(243,237,223,.65) 47%,transparent 62%)}.motion-toggle span{max-width:65px;text-align:left;line-height:1.3}.story-bottom{gap:20px}.orb-hint{max-width:44%;text-align:center}}
@media(pointer:coarse){.orb-hint{display:none}}
@media(max-width:900px){.header-contact,.studio-next,.exhibit-caption,.idea-note,.sky-caption,.contact footer p,.contact-copy>.button{font-size:11px}.exhibit-caption{line-height:1.35}.hero-bottom{font-size:10px}}
/* The sticky travel belongs to the rail's content, not its padding box. */
.contact-rail{padding-bottom:0}.contact-rail:after{content:'';display:block;height:20svh}
@media(prefers-reduced-motion:reduce){.contact-rail:after{height:0}}

/* One fixed screen, native internal scrolling; no wheel or touch interception. */
html,body{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}
.site-viewport{position:fixed;inset:0;height:100svh;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:#b5a27f transparent;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;isolation:isolate}
.site-viewport:focus{outline:none}.site-viewport:focus-visible{outline:2px solid #c8ad76;outline-offset:-2px}
.story-stage{height:100svh;min-height:0;max-height:none}
.site-viewport main{min-height:100%}
.header{padding-top:max(20px,env(safe-area-inset-top))}

.contact .contact-copy{padding-bottom:clamp(40px,7svh,88px)}
.contact footer>a[href="#home"]:not(.wordmark){display:flex;gap:16px;align-items:center;font-size:11px;justify-self:end}
.footer-legal{grid-column:1/-1;width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:24px;border-top:1px solid #dee6f03b;padding-top:20px}
.contact footer .footer-legal p{font-size:11px;max-width:none;justify-self:start;text-align:left;flex-shrink:0;line-height:1.7}
.footer-legal nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:2px 22px;max-width:65%}
.footer-legal button,.legal-inline{font-size:11px;line-height:1.6;background:none;padding:8px 0;text-align:left;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#f1ebdf66}
.footer-legal button:hover,.legal-inline:hover{text-decoration-color:currentColor}
.legal-inline{display:inline;padding:0}
.legal-dialog{color:var(--ink);background:var(--cream);border:1px solid #c5bdad;width:min(860px,calc(100% - 48px));max-width:none;max-height:calc(100svh - 48px);height:min(800px,calc(100svh - 48px));margin:auto;padding:0;overflow:hidden;box-shadow:0 32px 100px #050e3066}
.legal-dialog[open]{display:flex;flex-direction:column}
.legal-dialog::backdrop{background:#081c44b3;backdrop-filter:blur(8px)}
.legal-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 24px 15px 32px;border-bottom:1px solid #24271f24;flex-shrink:0}
.legal-top>span{font-size:11px;letter-spacing:.07em}.legal-close{display:flex;align-items:center;justify-content:center;background:transparent;width:44px;height:44px;flex-shrink:0}.legal-close:hover{background:#e4dccd}.legal-close svg{width:22px;height:22px;stroke-width:1.6}
.legal-tabs{display:flex;flex-wrap:wrap;gap:4px 8px;padding:12px 24px 12px 32px;flex-shrink:0;border-bottom:1px solid #24271f24}
.legal-tabs button{background:transparent;font-size:12px;padding:10px 12px;min-height:40px;line-height:1.4}
.legal-tabs button[aria-pressed=true]{background:var(--blue);color:var(--cream)}
.legal-content{overflow-y:auto;overscroll-behavior:contain;padding:28px 40px 40px;min-height:0;flex:1;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#9e927c transparent}
.legal-content:focus-visible{outline:2px solid var(--blue);outline-offset:-4px}
.legal-content .legal-date{font-size:11px;color:#656957;margin-bottom:18px}
.legal-content h2{font-size:clamp(25px,3.4vw,42px);line-height:1.12;letter-spacing:-.035em;text-wrap:wrap;overflow-wrap:anywhere;margin-bottom:24px}
.legal-content .legal-lead{font-size:16px;line-height:1.65;margin-bottom:24px}
.legal-content h3{font-size:18px;line-height:1.4;letter-spacing:-.015em;margin:30px 0 12px}
.legal-content p{font-size:14px;line-height:1.8;margin-bottom:14px;overflow-wrap:anywhere}
.legal-content a{color:#1649ad;text-decoration:underline;text-underline-offset:3px}
.legal-details{margin:0 0 28px}.legal-details>div{display:grid;grid-template-columns:155px 1fr;gap:20px;border-top:1px solid #24271f26;padding:18px 0;font-size:14px;line-height:1.7}.legal-details dt{color:#656957}.legal-details dd{margin:0}
.legal-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 32px;border-top:1px solid #24271f24;flex-shrink:0}.legal-bottom>span{font-size:11px;line-height:1.6}.legal-done{display:flex;align-items:center;gap:14px;background:var(--blue);color:var(--cream);padding:14px 16px;font-size:12px;white-space:nowrap}
@media(max-width:900px){.contact footer>a[href="#home"]:not(.wordmark){grid-column:1/-1}.footer-legal{display:block}.footer-legal nav{justify-content:flex-start;max-width:none;gap:0 20px;margin-top:12px}.contact .contact-copy{padding-bottom:48px}.legal-dialog{width:calc(100% - 24px);max-height:calc(100svh - 24px);height:calc(100svh - 24px)}.legal-top{padding:10px 12px 10px 20px}.legal-top>span{font-size:10px}.legal-tabs{padding:10px 14px;gap:4px}.legal-tabs button{font-size:11px;padding:9px 8px}.legal-content{padding:24px 22px 32px}.legal-content h2{font-size:28px}.legal-content h3{font-size:17px}.legal-content .legal-lead{font-size:15px}.legal-bottom{padding:12px 18px;gap:12px}.legal-bottom>span{max-width:140px;font-size:10px}.legal-done{font-size:11px;gap:8px;padding:12px}.legal-details>div{grid-template-columns:1fr;gap:5px}}
@media(max-width:900px) and (max-height:740px){.hero-copy{top:calc(var(--header-height) + 16px)}.hero-copy h1{font-size:clamp(30px,8.2vw,54px)}.hero-copy p{font-size:11px;margin-top:12px}.hero-copy>.button{margin-top:12px;padding:10px 14px;min-height:40px}.hero-bottom>span{display:none}.hero-bottom{bottom:17%;width:28%}.hero-bottom>a{font-size:9px;max-width:80px}.statue-position{height:46%}.studio-copy h2{font-size:clamp(29px,7.5vw,42px)}.studio-copy p{font-size:11px;margin-top:12px;max-width:31ch}.exhibit{width:32vw;height:32vw;right:9%;bottom:15%}.exhibit-caption{font-size:10px}.garden-copy,.sky-copy{top:calc(var(--header-height) + 22px)}}
@media(max-height:500px) and (min-width:601px){.header{padding-block:12px}.hero-copy{top:25%;width:52%}.hero-copy h1{font-size:clamp(30px,5vw,52px)}.hero-copy p{margin-top:12px;font-size:11px}.hero-copy>.button{margin-top:12px;min-height:38px;padding:8px 14px}.statue-position{height:78%;right:0}.hero-bottom{display:none}.garden-copy,.sky-copy{top:26%;width:48%}.garden-copy h2,.sky-copy h2{font-size:4vw}.garden-copy p,.sky-copy p{font-size:11px;margin-top:12px}.studio-copy{top:25%;width:48%}.studio-copy h2{font-size:3.5vw}.studio-copy p{font-size:10px;max-width:40ch;margin-top:10px}.exhibit{height:44svh;width:44svh;right:12%;bottom:21%}.studio-next{bottom:12%;font-size:10px}.exhibit-caption{bottom:13%}.legal-top{padding-block:4px}.legal-tabs{padding-block:6px}.legal-bottom{padding-block:8px}}
@media(max-width:380px){.legal-content{padding-inline:18px}.legal-content h2{font-size:22px;overflow-wrap:normal;hyphens:auto}.legal-tabs{gap:4px}.legal-tabs button{font-size:10px;padding-inline:7px}.legal-bottom>span{font-size:9px}.legal-done{font-size:10px}}

/* The brief stays in a dialog, so opening it never changes footer geometry. */
.brief-trigger{display:flex;align-items:center;justify-content:space-between;gap:20px;background:transparent;border-bottom:1px solid #c8d5ed88;padding:12px 0;margin-top:24px;font-size:12px;line-height:1.6;text-align:left;max-width:100%;min-height:44px}
.brief-trigger svg{width:15px;height:15px}
.modal-open .site-viewport{overflow-y:hidden}
.modal-open .cloud-drift,.modal-open .tree-sway{animation-play-state:paused}
.legal-dialog{position:fixed;inset:auto;left:50%;top:calc(var(--dialog-viewport-top,0px) + var(--dialog-available-height,100svh)/2);transform:translate(-50%,-50%);margin:0;max-height:calc(var(--dialog-available-height,100svh) - 24px)}
.brief-dialog{width:min(700px,calc(100% - 48px));height:auto;max-height:calc(var(--dialog-available-height,100svh) - 48px)}
.brief-content{flex:0 1 auto;padding:30px 38px 34px}
.brief-content h2{font-size:clamp(27px,3.4vw,40px);margin-bottom:14px}
.brief-content .brief-intro{font-size:14px;margin-bottom:28px;max-width:42ch}
.brief-dialog .brief{margin:0;max-width:none}
.brief-dialog .brief form,.brief-dialog .brief #brief-result{margin:0}
.brief-dialog .brief label{font-size:12px;line-height:1.6}
.brief-dialog .brief input,.brief-dialog .brief textarea{color:var(--ink);background:#fffaf1;border:1px solid #a6a28e;caret-color:var(--blue);padding:12px;font-size:16px}
.brief-dialog .brief input::placeholder,.brief-dialog .brief textarea::placeholder{color:#747566}
.brief-dialog .brief input:focus-visible,.brief-dialog .brief textarea:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.brief-dialog .form-row{gap:20px;margin-bottom:20px}
.brief-dialog .button{background:var(--blue);color:var(--cream);font-size:12px;min-height:48px}
.brief-dialog .button:hover{background:var(--deep)}
.brief-dialog .form-note,.brief-dialog #copy-status{font-size:12px;line-height:1.65;margin:14px 0 10px;color:#555c4c}
.brief-dialog #copy-status:empty{display:none}
.brief-dialog .legal-inline{color:var(--deep);font-size:12px;text-decoration-color:currentColor}
.brief-dialog .result-intro{font-size:14px;margin-bottom:20px}
.brief-dialog .result-actions .text-link{font-size:12px;color:var(--deep)}
.brief-dialog .edit-brief{font-size:12px}
.brief-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 38px;border-top:1px solid #24271f24;flex-shrink:0;font-size:11px}
.brief-bottom button{background:transparent;font-size:11px;padding:8px 0;text-decoration:underline;text-underline-offset:4px}
@media(max-width:900px){.brief-dialog{width:calc(100% - 24px);max-height:calc(var(--dialog-available-height,100svh) - 24px)}.brief-content{padding:24px}.brief-content h2{font-size:30px}.brief-dialog .form-row{grid-template-columns:1fr;gap:16px}.brief-dialog .brief textarea{min-height:110px}.brief-dialog .result-actions{gap:16px}.brief-dialog .result-actions>*{width:100%;justify-content:center}.brief-bottom{padding:12px 24px}.brief-trigger{font-size:11px;gap:14px}}
@media(max-width:380px){.brief-content{padding:20px}.brief-content h2{font-size:26px}.brief-content .brief-intro{font-size:13px;margin-bottom:20px}.brief-bottom{padding-inline:20px}.brief-trigger{font-size:10px}}
/* A single project link leaves breathing room for scene controls on phones. */
@media(max-width:900px){.studio-next{display:none}}

/* The caption is part of its artwork, with a real gap below the outer frame. */
.exhibit{margin:0;--exhibit-size:min(35vw,540px,calc(78svh - 110px));width:var(--exhibit-size);height:var(--exhibit-size);max-width:none;max-height:none}
.exhibit .exhibit-caption{position:absolute;left:0;right:auto;top:calc(100% + 20px);bottom:auto;width:100%;font-size:12px;line-height:1.5;text-align:center;white-space:normal}
html:not(.js) .scene{opacity:1!important}
@media(min-width:901px) and (max-height:740px){.exhibit{--exhibit-size:min(31vw,calc(76svh - 110px))}}
@media(max-width:900px){.exhibit{--exhibit-size:min(39vw,calc(60svh - 120px));bottom:max(110px,14.5%)}.exhibit .exhibit-caption{top:calc(100% + 16px);font-size:11px;line-height:1.4}}
@media(max-width:900px) and (max-height:740px){.exhibit{--exhibit-size:min(32vw,calc(60svh - 120px))}.exhibit .exhibit-caption{font-size:10px}}
@media(max-height:500px) and (min-width:601px){.exhibit{--exhibit-size:44svh;bottom:25%}.exhibit .exhibit-caption{top:calc(100% + 14px)}}

/* A small camera-like tilt keeps the statue and its pedestal together. */
.sculpture{transform-origin:76% 93%}
