:root{--ink:#303b3c;--paper:#f1ebdf;--muted:#737971;--gold:#c5a878;--serif:'Songti SC','STSong','Noto Serif CJK SC',serif;--sans:-apple-system,BlinkMacSystemFont,'PingFang SC',sans-serif}*{box-sizing:border-box}html,body{margin:0;min-height:100%;color:var(--ink);background:var(--paper);font-family:var(--sans)}body{overflow:hidden}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;border:0;background:none}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:2px solid #b99a66;outline-offset:6px}button:disabled{opacity:.45;cursor:wait}p{line-height:1.9}h1,h2{font-family:var(--serif);font-weight:400;margin:0}button,a{touch-action:manipulation}[hidden]{display:none!important}.sr-only,.skip{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip:focus{z-index:50;clip-path:none;width:auto;height:auto;padding:16px;background:white}.masthead{position:fixed;top:0;left:0;width:100%;height:100px;padding:25px 4.5vw;z-index:20;display:flex;align-items:center;justify-content:space-between;color:#eddfc6;transition:color .6s}.brand{display:flex;align-items:center;gap:13px;font:23px var(--serif);letter-spacing:.14em}.brand small{display:block;font:9px var(--sans);letter-spacing:.25em;margin-top:8px;opacity:.68}.seal{display:grid;place-items:center;width:33px;height:44px;border:1px solid currentColor;border-radius:9px 3px;font-size:22px;opacity:.8}.masthead nav{display:flex;align-items:center;gap:35px;font:14px var(--serif);letter-spacing:.12em}.masthead nav a,.masthead nav button{position:relative;padding:9px 0}.masthead nav [aria-current=page]:after{content:'';position:absolute;bottom:0;left:50%;width:4px;height:4px;border-radius:50%;background:currentColor}.masthead nav button{font:inherit}.room{position:relative;width:100%;height:100svh;min-height:620px;overflow:hidden}.room.entered{animation:room-arrive .7s ease-out}.eyebrow{font:11px/1.7 var(--sans);letter-spacing:.23em;margin:0 0 20px}.gate{color:#f5e6ca;background:#26353d}.gate-world{position:absolute;inset:0;overflow:hidden;transform-origin:53% 60%;transition:transform 1s cubic-bezier(.2,.4,.3,1),filter 1s}.gate-image{width:100%;height:100%;object-fit:cover;object-position:50% 55%;transform:scale(1.04) translate(var(--px,0px),var(--py,0px));transition:transform 1s ease-out;filter:saturate(.75) brightness(.77)}.gate-shade{position:absolute;inset:0;background:linear-gradient(180deg,#182b3860 0%,#18273522 35%,transparent 60%,#15292c66 100%)}.gate-heading{position:absolute;top:19%;left:50%;transform:translateX(-50%);text-align:center;min-width:400px;text-shadow:0 3px 35px #243339}.gate-heading .eyebrow{opacity:.9}.gate h1{font-size:clamp(44px,4.8vw,76px);line-height:1.42;letter-spacing:.18em}.gate h1 span{margin-left:.5em}.gate-poem{font:14px/2.1 var(--serif);letter-spacing:.23em;opacity:.88;margin-top:24px}.gate-entry{position:absolute;bottom:9%;left:50%;transform:translateX(-50%);display:flex;align-items:center;flex-direction:column;gap:15px}.entry-circle{width:112px;height:112px;border:1px solid #e9d4ad88;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;background:#2c3a364a;backdrop-filter:blur(4px);box-shadow:0 0 40px #ddc39412;transition:background .3s,transform .3s;font:17px var(--serif);letter-spacing:.12em}.entry-circle:hover{background:#c4a57133;transform:scale(1.04)}.entry-circle i{font-style:normal;font-size:20px;font-weight:200}.gate-entry>a{font-size:10px;letter-spacing:.17em;opacity:.72}.scene-credit{position:absolute;bottom:20px;left:4.5vw;font:10px var(--serif);letter-spacing:.1em;opacity:.62}.gate-side{position:absolute;right:7%;top:40%;writing-mode:vertical-rl;font:12px var(--serif);letter-spacing:.6em;opacity:.63}.mist{position:absolute;width:150%;height:36%;left:-25%;pointer-events:none;background:radial-gradient(ellipse,#c9d8d625,transparent 62%);filter:blur(25px);animation:mist-drift 24s ease-in-out infinite alternate}.mist-a{bottom:-8%}.mist-b{top:18%;opacity:.4;animation-delay:-13s}.gate.is-travelling .gate-world{transform:scale(1.22);filter:brightness(1.2)}.gate.is-travelling .gate-heading,.gate.is-travelling .gate-entry{opacity:0;transition:opacity .55s}.gate.is-travelling:after{content:'';position:absolute;inset:0;background:var(--paper);animation:veil .85s ease-in forwards;pointer-events:none}body[data-room=story] .masthead,body[data-room=atelier] .masthead{color:#43534f}.story{background:#f0e9da}.story-intro{position:absolute;top:18%;left:5%;z-index:3;pointer-events:none}.story h1{font-size:clamp(25px,2.9vw,43px);line-height:1.6;letter-spacing:.08em}.story-intro p{font:12px/2 var(--serif);color:#66716b;margin-top:18px}.story-intro .eyebrow{font-size:10px;color:#797e70}.scroll-rail{position:absolute;left:0;top:0;width:100%;height:82%;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;cursor:grab;touch-action:pan-x}.scroll-rail::-webkit-scrollbar{display:none}.scroll-rail.dragging{cursor:grabbing}.scroll-world{width:2600px;height:100%;position:relative}.scroll-world>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;user-select:none;pointer-events:none;opacity:.75;mask-image:linear-gradient(180deg,transparent 0%,#000 17%,#000 77%,transparent 100%)}.scroll-trail{position:absolute;left:360px;right:260px;top:63%;height:1px;background:linear-gradient(90deg,transparent,#b3a28755 8%,#b3a28755 92%,transparent)}.memory-node{position:absolute;top:50%;left:var(--x);display:flex;flex-direction:column;align-items:center;width:220px;text-align:center;transform:translateX(-50%);z-index:2}.memory-node:nth-child(even){top:41%}.memory-node button{display:flex;flex-direction:column;align-items:center;max-width:240px;gap:16px;padding:18px 20px;color:#394943}.memory-node time{font:12px var(--sans);letter-spacing:.16em}.memory-node h2{writing-mode:vertical-rl;text-align:left;font-size:23px;letter-spacing:.2em;line-height:1.65;max-height:235px;text-shadow:0 2px 20px #fff9}.memory-node .memory-dot{height:12px;width:12px;border-radius:50%;background:#be925b;box-shadow:0 0 0 8px #b7976430,0 0 24px #bda78345;transition:box-shadow .3s}.memory-node button:hover .memory-dot{box-shadow:0 0 0 13px #b7976425,0 0 25px #b99763aa}.memory-node p{font:11px var(--serif);color:#69786b;margin:0;max-width:180px}.scroll-end{position:absolute;right:90px;top:45%;writing-mode:vertical-rl;font:22px/2 var(--serif);letter-spacing:.3em;color:#8b917f}.scroll-footer{position:absolute;bottom:7.5%;left:5%;right:5%;display:grid;grid-template-columns:1fr 1.2fr 1fr;align-items:center;gap:30px;z-index:4;font-size:12px}.era-nav{display:flex;gap:23px;font-family:var(--serif)}.era-nav button{padding:10px 0;opacity:.56}.era-nav button[aria-current=true]{opacity:1;border-bottom:1px solid #9c805a}.scroll-control{display:flex;gap:16px;align-items:center;justify-content:center}.scroll-control label{display:flex;align-items:center;gap:9px;font-size:10px;color:#6e786e}.scroll-control input{width:110px;accent-color:#9b805b;height:2px}.scroll-control>button{white-space:nowrap;padding:12px 0}.text-link{justify-self:end;font-family:var(--serif);letter-spacing:.04em}.text-link span{margin-left:18px}.story-caption{position:absolute;bottom:18px;left:5%;font-size:9px;color:#879083;letter-spacing:.07em}.theatre{background:#25363c;color:#e8dec9}.theatre-haze{position:absolute;inset:0;background:radial-gradient(ellipse at 45% 44%,#6e777343,transparent 50%),linear-gradient(150deg,#223340,#384342)}.room-heading{position:absolute;z-index:3;left:5%;top:19%;pointer-events:none}.room-heading h1{font-size:clamp(30px,3.4vw,49px);line-height:1.65;letter-spacing:.07em}.room-heading>p:not(.eyebrow){font:13px/2 var(--serif);margin-top:20px;opacity:.7}.webgl-stage{position:absolute;inset:100px 0 80px}.webgl-stage canvas{display:block;width:100%;height:100%;touch-action:none;outline:none}.webgl-stage canvas:focus-visible{outline:1px solid #af996866;outline-offset:-15px}.loading-note{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:12px;letter-spacing:.1em;text-align:center}.loading-note.error{max-width:340px;padding:22px;line-height:1.9;background:#f2ebdf;color:var(--ink);border-radius:14px}.mechanism-stage{right:25%;left:17%;top:12%;bottom:11%}.mechanism-copy{position:absolute;right:5%;top:29%;width:25%;max-width:360px}.step-label{font-size:10px;letter-spacing:.18em;color:#b7ad93}.mechanism-copy h2{font-size:25px;line-height:1.65;margin:16px 0}.mechanism-copy p{font-size:13px;line-height:2.05;opacity:.78;min-height:108px}.soft-button{display:inline-flex;gap:25px;align-items:center;justify-content:center;border:1px solid #ad987755;border-radius:30px;padding:13px 21px;margin:14px 0;font:13px var(--serif);background:#c1ab7910}.soft-button:hover{background:#bdab8125}.step-nav{display:flex;gap:20px;margin:24px 0 22px;font:11px var(--serif)}.step-nav button{padding:10px 0;opacity:.5;white-space:nowrap}.step-nav button[aria-pressed=true]{opacity:1;border-bottom:1px solid #c2ab7b}.source-line{font-size:9px;line-height:1.8;opacity:.62}.room-bottom{position:absolute;bottom:25px;left:5%;right:5%;display:flex;justify-content:space-between;align-items:center;gap:20px;font:11px var(--serif);z-index:4}.room-bottom>span{font-size:9px;opacity:.6}.room-bottom button{font:inherit}.atelier{background:#ebe6dc}.atelier-light{position:absolute;inset:0;background:radial-gradient(ellipse at 47% 48%,#fff8e7 0%,transparent 50%),linear-gradient(170deg,#e6e9e4,#e6ded0)}.atelier .room-heading{top:19%}.small-note{font-size:10px}.product-stage{left:18%;right:21%;top:9%;bottom:11%}.product-panel{position:absolute;right:5%;top:24%;width:24%;max-width:320px;z-index:3}.product-panel h2{font-size:24px;line-height:1.7}.product-panel p{font-size:12px;line-height:2.05;color:#6b736a;min-height:120px}.part-list{display:flex;flex-wrap:wrap;gap:10px 17px;margin:15px 0}.part-list button{font:11px var(--serif);padding:8px 0;opacity:.55;border-bottom:1px solid transparent}.part-list button[aria-pressed=true]{opacity:1;border-color:#a18862}.text-button{display:block;font:11px var(--serif);padding:11px 0;color:#6a705e}.model-controls{position:absolute;left:45%;transform:translateX(-50%);bottom:12%;display:flex;align-items:center;justify-content:center;gap:16px;z-index:4;font:11px var(--serif)}.model-controls button{padding:10px 0;white-space:nowrap}.model-controls span{position:absolute;top:100%;font:9px var(--sans);color:#85897e;white-space:nowrap;letter-spacing:.08em}.model-controls [aria-pressed=true]{border-bottom:1px solid #9b825a}dialog{border:0;box-shadow:0 15px 100px #11252c40;border-radius:18px;color:var(--ink);background:#f7f2e8;width:min(700px,90vw);max-height:85svh;padding:48px 54px;overflow:auto}dialog::backdrop{background:#13263182;backdrop-filter:blur(7px)}.dialog-close{position:sticky;top:-28px;float:right;margin-right:-25px;font-size:29px;line-height:1;z-index:2;background:#f7f2e8;border-radius:50%;width:32px;height:32px}dialog h2{font-size:30px;line-height:1.5;margin:16px 0 22px}dialog h3{font:18px var(--serif);margin-top:28px}dialog p{font-size:14px;line-height:2.1}dialog .reader-label{font:10px var(--sans);letter-spacing:.15em;color:#8b8c79}dialog a{border-bottom:1px solid #b49b77;color:#676f5c;font-size:12px}dialog ul{padding-left:20px;font-size:13px;line-height:2.3}dialog .reader-note{padding-top:20px;border-top:1px solid #a794762e;color:#7c8174;font-size:12px}#concept-dialog{width:min(1100px,94vw);padding:30px}#concept-dialog img{width:100%;height:auto;border-radius:8px}#concept-dialog p{font-size:12px}.no-js{position:fixed;bottom:0;z-index:100;background:#fff;color:#000;padding:20px}.room-heading h1:focus{outline:0}
@keyframes mist-drift{from{transform:translateX(-7%)}to{transform:translateX(7%)}}@keyframes veil{from{opacity:0}to{opacity:1}}@keyframes room-arrive{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(min-width:1700px){.product-panel,.mechanism-copy{right:8%;width:22%;max-width:400px}.room-heading{left:7%}.product-stage{left:15%;right:24%}.product-panel p,.mechanism-copy p{font-size:15px}.product-panel h2,.mechanism-copy h2{font-size:29px}}
@media(max-width:900px){.masthead{height:80px;padding:20px 6%}.brand{font-size:18px;gap:8px}.brand small{display:none}.seal{width:27px;height:34px;font-size:19px}.masthead nav{gap:20px;font-size:12px}.room{min-height:600px}.gate-heading{top:22%;min-width:290px}.gate h1{font-size:50px}.gate-poem{font-size:12px}.gate-image{object-position:52% 50%}.gate-entry{bottom:11%}.gate-side{right:7%;font-size:10px}.story-intro{top:16%;left:7%}.story h1{font-size:27px}.story-intro p{font-size:11px}.scroll-world{width:2100px}.scroll-world>img{object-fit:cover}.scroll-rail{height:77%}.memory-node{top:51%}.memory-node:nth-child(even){top:44%}.memory-node h2{font-size:22px;max-height:185px}.scroll-footer{bottom:8%;grid-template-columns:1fr 1fr;gap:8px}.era-nav{gap:21px}.scroll-control{grid-row:2;grid-column:1/-1;justify-content:flex-start;gap:18px}.text-link{font-size:11px}.story-caption{font-size:8px;right:5%}.room-heading{top:15%;left:7%}.room-heading h1{font-size:31px}.room-heading>p:not(.eyebrow){font-size:11px;margin-top:12px}.room-heading .eyebrow{font-size:9px;margin-bottom:12px}.mechanism-stage{left:5%;right:5%;top:23%;bottom:30%}.mechanism-copy{top:auto;bottom:11%;right:7%;left:7%;width:auto;max-width:none}.mechanism-copy h2{font-size:21px;margin:8px 0}.mechanism-copy p{font-size:12px;min-height:0;line-height:1.9;margin:8px 0}.mechanism-copy .step-label{display:none}.mechanism-copy .soft-button{margin:7px 0;padding:10px 18px}.step-nav{position:absolute;right:0;bottom:36px;gap:15px;font-size:10px;margin:0}.source-line{display:block;font-size:8px}.room-bottom{bottom:19px;flex-wrap:wrap;gap:12px;font-size:10px}.room-bottom>span{width:100%;font-size:8px}.product-stage{left:0;right:0;top:19%;bottom:35%}.atelier .room-heading{top:14%}.product-panel{top:auto;bottom:10%;left:7%;right:7%;width:auto;max-width:none}.product-panel>.eyebrow{display:none}.product-panel h2{font-size:21px}.product-panel p{font-size:11px;min-height:0;margin:8px 0;max-width:600px}.part-list{gap:15px;margin:5px 0}.product-panel .soft-button{padding:9px 16px;margin:4px 20px 4px 0}.text-button{display:inline-block;margin-right:15px;font-size:10px}.model-controls{left:auto;right:6%;top:21%;bottom:auto;transform:none;flex-direction:column;gap:0;font-size:10px}.model-controls span{display:none}.product-panel .text-button:last-child{display:none}dialog{padding:34px 27px;border-radius:13px}.dialog-close{margin-right:-12px;top:-15px}dialog h2{font-size:26px}dialog p{font-size:13px}}
@media(max-height:740px) and (min-width:901px){.room-heading{top:22%}.room-heading h1{font-size:38px}.mechanism-copy{top:24%}.mechanism-copy p{font-size:12px;min-height:80px}.step-nav{margin:12px 0}.product-panel{top:21%}.product-panel p{font-size:11px;min-height:85px}.product-panel h2{font-size:22px}.gate-heading{top:17%}.gate h1{font-size:51px}.gate-poem{margin-top:12px}.entry-circle{width:88px;height:88px;font-size:14px}.gate-entry{bottom:8%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.gate-image{transform:none}.gate.is-travelling:after{opacity:1}}
/* Keep the complete node and its reading hint inside the scroll viewport. */
@media(min-width:901px){.memory-node{top:34%}.memory-node:nth-child(even){top:26%}.story-intro:before{content:'';position:absolute;inset:-35px -80px -35px -50px;background:radial-gradient(ellipse,#f0e9dac9,transparent 72%);z-index:-1}.model-controls{bottom:10%}}
@media(max-width:900px){.product-stage{top:33%;bottom:34%}.atelier .room-heading h1{font-size:28px;line-height:1.5}.atelier .room-heading>p:not(.eyebrow){margin-top:10px}.story-intro{background:radial-gradient(ellipse at 0 30%,#f0e9da9c,transparent 80%)}}
@media(max-height:650px){body{overflow:auto}.room{height:760px}.masthead{position:absolute}}
.memory-node h2{max-height:none;white-space:nowrap}
@media(max-width:900px){.memory-node{top:47%}.memory-node:nth-child(even){top:40%}.memory-node h2{font-size:20px;letter-spacing:.1em;max-height:none}}
/* Give the scroll a quiet foreword margin; moving events never cross its text. */
@media(min-width:901px){.scroll-rail{left:25%;width:75%;mask-image:linear-gradient(90deg,transparent,#000 8%)}.story-intro{width:22%;left:4%;top:22%}.story h1{font-size:clamp(25px,2.6vw,39px)}.story-intro:before{inset:-80px -30px -80px -40px}.scroll-world>img{opacity:.8}}
/* Third edition: one continuous history and a full-width performance. */
.gate-chapters{position:absolute;left:5%;bottom:15%;display:flex;gap:35px}.gate-chapters a{font:17px var(--serif);display:grid;gap:10px}.gate-chapters small{font:10px var(--sans);color:#cdb483}.gate-chapters span{font:10px var(--sans);opacity:.6}
.story-intro{top:16%;left:5%;width:auto}.story h1{font-size:30px;line-height:1.4}.story-intro p{margin:12px 0}.scroll-rail{left:0;width:100%;top:0;height:85%;mask-image:none}.scroll-world>img{width:120%;left:-10%;transform:translateX(var(--drift,0px));opacity:.53;mask-image:linear-gradient(180deg,transparent 8%,#000 40%,#000 83%,transparent)}.history-mist{position:absolute;inset:25% 0 0;background:radial-gradient(ellipse at 40% 80%,#fff9e760,transparent 60%);transform:translateX(var(--drift,0px));pointer-events:none}.scroll-trail{left:0;right:0;top:80%;background:linear-gradient(90deg,transparent,#94724766,transparent)}.memory-node,.memory-node:nth-child(even){top:30%;width:540px;opacity:.35;transform:translateX(-50%) scale(.9);transition:opacity .9s,transform 1.2s}.memory-node.is-current{opacity:1;transform:translateX(-50%) scale(1)}.memory-node button{max-width:540px;width:100%;padding:30px 45px;gap:17px}.memory-node time{font:clamp(42px,6vw,84px)/1.1 var(--serif);letter-spacing:.03em;color:#9c6745}.memory-node h2{writing-mode:horizontal-tb;font-size:32px;white-space:normal;letter-spacing:.08em;text-align:center}.memory-node .memory-dot{order:5;width:7px;height:7px;margin-top:13px}.memory-node p{font:13px/1.9 var(--serif);max-width:420px}.memory-node p.history-summary{font:15px/2.1 var(--sans);color:#47564f;margin:5px 0;max-width:440px}.history-read{font-size:10px;letter-spacing:.14em;color:#8c755b}.scroll-end{display:none}.story-caption{font-size:9px}.story-intro:before{display:none}.scroll-footer{bottom:7%}
.theatre{background:#111d24}.theatre-haze{background:radial-gradient(ellipse at 48% 55%,#3e464b77,transparent 60%),linear-gradient(120deg,#101d25,#202b2b)}.theatre .room-heading{top:15%;left:5%}.theatre .room-heading h1{font-size:43px}.theatre .room-heading>p:not(.eyebrow){font-size:12px;letter-spacing:.12em}.mechanism-stage{left:18%;right:22%;top:7%;bottom:8%}.mechanism-copy{top:30%;right:4%;width:24%;max-width:315px}.mechanism-copy h2{font-size:27px;line-height:1.8}.mechanism-copy p{min-height:105px;font-size:12px}.step-nav{gap:19px;margin:14px 0}.performance-seek{font-size:9px;letter-spacing:.1em;display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:18px 0}.performance-seek input{width:100%;height:2px;accent-color:#cba46c;cursor:pointer}.performance-seek span{opacity:.6}.source-line{font-size:8px}.theatre .room-bottom{bottom:23px}
@media(max-width:900px){.masthead nav{gap:13px;font-size:10px}.masthead nav button{font-size:9px}.brand{font-size:15px}.seal{display:none}.gate-chapters{left:8%;right:8%;bottom:4.8%;justify-content:space-between;gap:12px}.gate-chapters a{font-size:13px;gap:5px}.gate-chapters small{font-size:8px}.gate-chapters span{display:none}.gate .scene-credit{display:none}.gate-entry{bottom:16%}.story-intro{top:13%;left:7%}.story h1{font-size:23px}.story-intro p{font-size:10px}.story-intro .eyebrow{margin-bottom:10px}.memory-node,.memory-node:nth-child(even){top:34%;width:100vw;max-width:520px}.memory-node button{padding:24px 30px;gap:13px}.memory-node time{font-size:55px}.memory-node h2{font-size:25px;letter-spacing:.03em}.memory-node p.history-summary{font-size:13px;line-height:2;max-width:350px}.memory-node p{font-size:11px}.scroll-rail{height:83%}.scroll-footer{bottom:7%;gap:8px}.era-nav{gap:20px}.theatre .room-heading{top:12%;left:7%}.theatre .room-heading h1{font-size:29px}.theatre .room-heading>p:not(.eyebrow){display:none}.theatre .room-heading .eyebrow{margin-bottom:6px}.mechanism-stage{left:0;right:0;top:19%;bottom:35%}.mechanism-copy{top:auto;bottom:9%;left:7%;right:7%;width:auto;max-width:none}.mechanism-copy h2{font-size:19px;margin:5px 0;line-height:1.5}.mechanism-copy p{min-height:0;font-size:11px;line-height:1.8;margin:7px 0}.mechanism-copy .soft-button{font-size:11px;padding:9px 16px;margin:5px 0}.step-nav{position:static;display:flex;gap:0;justify-content:space-between;margin:3px 0;font-size:10px}.step-nav button{padding:6px 0}.performance-seek{display:grid;grid-template-columns:1fr 3fr 1.3fr;gap:9px;margin:10px 0;font-size:8px}.performance-seek input{width:100%}.source-line{display:none}.theatre .room-bottom{bottom:15px;font-size:9px;gap:7px}.theatre .room-bottom>span{font-size:7px}.theatre .step-label{display:none}}
@media(prefers-reduced-motion:reduce){.scroll-world>img,.history-mist{transform:none}.memory-node{transition:none}}
@media(min-width:901px) and (max-height:780px){.mechanism-copy{top:24%}.mechanism-copy h2{font-size:23px;line-height:1.65;margin:10px 0}.mechanism-copy p{min-height:75px;line-height:1.9}.mechanism-copy .soft-button{margin:7px 0}.step-nav{margin:8px 0}.performance-seek{margin:12px 0}.mechanism-copy .source-line{display:none}}
/* Fine-model viewpoints stay separate from layer and material choices. */
.product-views{position:absolute;left:46%;top:17%;transform:translateX(-50%);display:flex;gap:24px;z-index:5;font:11px var(--serif);color:#6c715f}.product-views button{padding:9px 0;border-bottom:1px solid #ac966240}.product-views button:hover{color:#8f5737;border-color:#8f5737}.product-stage{left:17%;right:24%}.product-panel p{min-height:105px}.part-list{gap:8px 14px}
@media(max-width:900px){.product-views{top:30%;left:7%;right:7%;transform:none;justify-content:center;gap:27px;font-size:10px}.product-stage{left:0;right:0;top:34%;bottom:34%}.product-panel p{min-height:0}.part-list{gap:7px 12px}.part-list button{font-size:10px}.model-controls{top:37%}}
@media(min-width:901px){.product-views{top:14.5%}}
.product-views{padding:3px 16px;background:#f0ece1de;border:1px solid #a9936330;border-radius:30px;backdrop-filter:blur(8px)}
@media(max-width:900px){body[data-room=atelier]{overflow-y:auto}.atelier{height:max(980px,100svh)}.atelier .room-heading{top:100px}.atelier .room-heading h1{font-size:26px;line-height:1.35}.atelier .room-heading>p:not(.eyebrow){margin-top:9px}.atelier .product-views{top:252px}.atelier .product-stage{top:300px;bottom:330px}.atelier .model-controls{top:325px}.atelier .product-panel{bottom:90px}}
