@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#101713;--text:#eef0e8;--muted:#919e92;--line:#ffffff18;--accent:#b6d7a0}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;transition:background .5s,color .5s}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit;background:none;border:1px solid var(--line);border-radius:30px;padding:12px 20px;transition:.25s}button:hover{border-color:var(--accent);background:#a8d89912}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:2px solid #b6d7a0;outline-offset:5px}header{height:92px;display:flex;align-items:center;justify-content:space-between;margin:0 5%;border-bottom:1px solid var(--line)}a{color:inherit;text-decoration:none}.logo{font-size:29px;font-weight:800;letter-spacing:-1.5px;display:flex;align-items:center}.logo span{color:#91b77c}.logo i{width:5px;height:5px;border-radius:50%;background:#b6d7a0;margin:15px 0 0 4px}.studio,.label,.eyebrow,.edition>span{font-size:10px;letter-spacing:2px;font-weight:600}.studio{color:var(--muted)}header button{font-size:12px}.intro{text-align:center;padding:36px 20px 0;position:relative;z-index:1}.eyebrow{color:var(--accent);display:flex;align-items:center;justify-content:center;gap:10px}.eyebrow>span{height:5px;width:5px;background:var(--accent);border-radius:50%}h1{font-family:Manrope,sans-serif;font-size:clamp(32px,4.2vw,58px);line-height:1.12;letter-spacing:-3px;margin:22px 0 18px;font-weight:500}h1 em{font-style:normal;color:var(--accent)}.intro p{color:var(--muted);font-size:14px}#stage{height:470px;position:relative;margin-top:-15px;overflow:hidden;isolation:isolate}#scene{position:relative;z-index:1;width:100%;height:100%;display:block;touch-action:none;cursor:grab}#scene:active{cursor:grabbing}.stage-name{position:absolute;top:13%;left:50%;transform:translateX(-50%);font-family:Manrope,sans-serif;font-size:clamp(100px,22vw,320px);font-weight:800;letter-spacing:-15px;color:#b9d3ac07;pointer-events:none}.edition{position:absolute;left:6%;bottom:120px;z-index:2;pointer-events:none}.edition>span{color:var(--muted);font-size:9px}.edition strong{display:block;font-family:Manrope,sans-serif;font-size:23px;margin:12px 0 7px;font-weight:500}.edition small{color:var(--muted);font-size:11px}.gesture{position:absolute;bottom:84px;width:100%;text-align:center;font-size:10px;letter-spacing:1px;color:var(--muted);pointer-events:none;z-index:2}.views{position:absolute;z-index:3;bottom:20px;left:50%;transform:translateX(-50%);display:flex;gap:4px;padding:5px;border:1px solid var(--line);border-radius:30px;background:#18221dcc;backdrop-filter:blur(15px);white-space:nowrap}.views button{border:0;font-size:11px;padding:11px 18px}.views .active{background:#b6d7a0;color:#18291b}.config{margin:0 6%;padding:29px 0;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line);gap:20px}.label{color:var(--muted);font-size:9px}.swatches{display:flex;align-items:center;gap:13px;margin-top:14px}.swatch{width:23px;height:23px;border-radius:50%;padding:0;border:2px solid var(--bg);outline:1px solid transparent}.swatch.active{outline-color:var(--accent)}.forest{background:#325c43}.graphite{background:#373b3a}.pearl{background:#dbdaca}.swatches>span{font-size:12px;margin-left:5px}.material p{font-size:12px;margin:13px 0 0;color:var(--muted)}#light{font-size:12px}.details{margin:0 6%;padding:78px 0;display:grid;grid-template-columns:1fr 1fr;gap:60px}h2{font-family:Manrope,sans-serif;font-size:36px;font-weight:500;line-height:1.2;letter-spacing:-1.5px;margin:20px 0 0}.detail-copy>p{font-size:14px;color:var(--muted);line-height:1.8;margin-top:0}.specs{display:flex;gap:35px;margin-top:32px}.specs b{display:block;font-weight:500;font-size:22px;letter-spacing:-.5px}.specs span{font-size:10px;color:var(--muted);display:block;margin-top:7px}footer{border-top:1px solid var(--line);margin:0 6%;padding:25px 0 40px;display:flex;align-items:flex-start;gap:40px;color:var(--muted);font-size:10px}footer>span{white-space:nowrap}footer p{max-width:580px;margin:0;line-height:1.8}footer a{white-space:nowrap;margin-left:auto;color:var(--text)}#loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:14px;color:var(--accent);z-index:4}body.light{--bg:#eaece5;--text:#17271d;--muted:#657363;--line:#17271d20;--accent:#3d6745}.light .views{background:#e4e9dfcc}.light .stage-name{color:#44664009}@media(max-width:700px){header{height:75px}.studio{display:none}.intro{padding-top:38px}.eyebrow{font-size:8px;letter-spacing:1.1px}h1{letter-spacing:-1.5px}.intro p{font-size:12px}#stage{height:480px}.edition{left:6%;bottom:121px}.edition strong{font-size:18px}.edition>span{font-size:7px}.edition small{font-size:9px}.views button{font-size:10px;padding:10px 12px}.views{gap:0}.gesture{font-size:8px}.config{flex-wrap:wrap}.material{display:none}.details{grid-template-columns:1fr;gap:30px;padding:50px 0}h2{font-size:30px}.specs{gap:30px}footer{flex-wrap:wrap;gap:16px}footer p{order:3}footer a{margin-left:auto}header button{font-size:10px;padding:10px 14px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}

/* A dedicated interaction area keeps the object clear of the controls. */
#stage{height:clamp(650px,80vh,1000px);margin-top:10px;isolation:auto}
#scene{position:absolute;inset:0 0 auto;height:calc(100% - 120px);width:100%}
.edition{top:32px;bottom:auto;left:6%}.stage-name{top:18%;pointer-events:none}
.gesture{bottom:95px;font-size:10px}
.viewer-toolbar{position:absolute;bottom:20px;left:6%;right:6%;z-index:3;display:flex;justify-content:center;gap:16px;align-items:center}
.views{position:static;transform:none;display:flex;background:#18221de8;flex-wrap:wrap;justify-content:center}
.explore-tools{display:flex;gap:4px;border:1px solid var(--line);padding:5px;border-radius:30px;background:#18221de8;backdrop-filter:blur(15px)}
.explore-tools button{border:0;font-size:11px;padding:11px 16px;white-space:nowrap}.explore-tools button.active{background:var(--accent);color:var(--bg)}
#zoomIn,#zoomOut{font-size:19px;line-height:1;padding:8px 15px}
.light .explore-tools,.light .views{background:#e4e9dfe8}
#stage.expanded{position:fixed;inset:0;margin:0;height:100dvh;width:100%;z-index:100;background:var(--bg)}
body.viewer-open{overflow:hidden}#stage.expanded .edition{top:30px}
@media(max-width:700px){#stage{height:680px;margin-top:0}.edition{top:20px}.edition small{max-width:180px;display:block}#scene{height:calc(100% - 160px)}.viewer-toolbar{bottom:15px;left:12px;right:12px;flex-direction:column;gap:8px}.views button{padding:10px 12px}.gesture{bottom:132px;font-size:8px;letter-spacing:0}.explore-tools button{padding:9px 16px}#stage.expanded{height:100dvh}}

/* Keep exploration controls within reach from the first screen. */
.viewer-toolbar{position:fixed;bottom:24px;left:6%;right:6%;z-index:40;transition:opacity .18s}
#stage.controls-hidden .viewer-toolbar{opacity:0;pointer-events:none}
#stage.expanded .viewer-toolbar{z-index:103}
@media(max-width:700px){.viewer-toolbar{bottom:16px;left:12px;right:12px}}
