:root{color-scheme:dark;--bg:#08172b;--surface:#102139;--panel:#13263e;--line:#293b51;--text:#f2f5f8;--muted:#a9b6c7;--gold:#e6bd72;--gold-light:#f8dba3;--focus:#f6d492;font-family:Inter,"Segoe UI",Arial,sans-serif;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,a{-webkit-tap-highlight-color:transparent}button,a,input{touch-action:manipulation}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{border:0}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--focus);outline-offset:4px}button:hover{filter:brightness(1.12)}[hidden]{display:none!important}.header{height:96px;max-width:1536px;margin:auto;padding:0 48px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px}.brand img{object-fit:contain}.brand>span{font-size:22px;letter-spacing:.15em;font-weight:750;line-height:1.1}.brand small{display:block;font-size:10px;font-weight:500;letter-spacing:.25em;margin-top:7px}.header-caption{font-size:12px;letter-spacing:.15em;color:var(--muted)}.contact-link{display:flex;gap:30px;align-items:center;border:1px solid #796647;padding:12px 18px;font-size:14px;border-radius:4px}.contact-link span{font-size:20px;color:var(--gold)}main{max-width:1536px;margin:auto;padding:0 48px}.intro{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;padding:38px 0 32px}.eyebrow{font-size:12px;font-weight:600;letter-spacing:.13em;color:var(--gold);margin:0 0 14px}.intro h1{font-size:clamp(30px,3.1vw,48px);line-height:1.12;letter-spacing:-.045em;font-weight:500;margin:0}.intro em{font-family:Georgia,serif;font-weight:400;color:var(--gold);letter-spacing:-.025em}.intro-copy{font-size:15px;color:var(--muted);line-height:1.7;margin:0 2px 2px 0}.explorer{display:grid;grid-template-columns:minmax(0,1fr) 302px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface)}.scene-column{min-width:0;display:flex;flex-direction:column}.scene-topbar{padding:12px 18px;display:flex;align-items:center;justify-content:space-between;gap:10px;background:#112139;border-bottom:1px solid var(--line);z-index:2}.view-tabs{display:flex;gap:3px}.view-tabs button{background:transparent;min-height:40px;padding:9px 16px;color:#b4c0cf;border-radius:4px;font-size:14px;font-weight:500}.view-tabs button.active{background:var(--gold);color:#142237}.quiet-button{display:flex;align-items:center;gap:8px;min-height:40px;padding:8px;background:transparent;color:#bfccdc;font-size:14px;white-space:nowrap}.quiet-button[aria-pressed=true]{color:var(--gold)}svg{width:19px;height:19px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;fill:none;display:block}[data-icon]{display:inline-flex;flex:none}.viewport{position:relative;flex:1;min-height:560px;height:clamp(560px,48vw,690px);overflow:hidden;background:radial-gradient(ellipse at 45% 55%,#253952,#13243b 75%);isolation:isolate}.viewport.night-scene{background:radial-gradient(ellipse at 45% 55%,#202f49,#0b172b 75%)}#canvas-host{position:absolute;inset:0}canvas{display:block;width:100%;height:100%;cursor:grab;outline-offset:-5px!important}canvas:active{cursor:grabbing}.scene-caption{position:absolute;z-index:2;top:24px;left:24px;pointer-events:none;display:flex;flex-direction:column;gap:7px}.model-number{font-size:11px;color:#b3c1d1;letter-spacing:.12em}.scene-caption strong{font-size:15px;font-weight:400;color:#e8edf3}.camera-tools{position:absolute;right:16px;top:100px;z-index:3;display:flex;flex-direction:column;padding:5px;background:#0b1b30d9;border:1px solid #33465c;border-radius:7px;backdrop-filter:blur(8px)}.icon-button{width:38px;height:38px;display:grid;place-items:center;background:transparent;color:#c6d1de;border-radius:4px}.icon-button:hover{background:#293d57;color:white}.tool-divider{height:1px;background:#334359;margin:3px 5px}.orientation{position:absolute;right:22px;bottom:24px;display:grid;justify-items:center;gap:5px;pointer-events:none;color:#9cafc6;font-size:9px;letter-spacing:.08em}.orientation svg{width:40px;height:40px;stroke-width:.8}.canvas-hint{position:absolute;bottom:26px;left:24px;display:flex;align-items:center;gap:8px;color:#afc0d3;font-size:12px;pointer-events:none}.canvas-hint svg{width:16px;height:16px}.scene-bottom{min-height:62px;padding:10px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#102139;border-top:1px solid var(--line)}.camera-presets{display:flex;gap:4px;flex-wrap:wrap}.camera-presets button{font-size:13px;padding:9px 12px;min-height:40px;border-radius:4px;background:transparent;color:#b6c3d3}.camera-presets button.active{background:#283b50;color:#f2cf90}.auto-rotate{font-size:13px}.details{padding:26px 24px 20px;border-left:1px solid var(--line);background:#0d1d32;display:flex;flex-direction:column;min-width:0}.detail-heading{display:flex;justify-content:space-between;gap:10px}.detail-heading .eyebrow{font-size:10px;letter-spacing:.09em}.small-mark{color:#7789a0;font-size:10px;letter-spacing:.03em;white-space:nowrap}.details h2{font-size:26px;line-height:1.17;letter-spacing:-.035em;font-weight:500;margin:9px 0 14px;min-height:61px}.details>p{font-size:14px;line-height:1.65;color:var(--muted);margin:0 0 22px;min-height:91px}.facts{display:flex;flex-direction:column;gap:11px;margin-bottom:22px}.facts div{display:flex;justify-content:space-between;font-size:13px;gap:12px}.facts span{color:#92a3b9}.facts strong{font-weight:500;text-align:right}.detail-block{border-top:1px solid var(--line);padding-top:20px;margin-bottom:22px}.layer-block label{font-size:14px;display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.layer-block output{font-size:12px;color:#f1ce94;font-variant-numeric:tabular-nums}input[type=range]{display:block;width:100%;accent-color:var(--gold);cursor:pointer;height:20px;margin:0}.range-labels{display:flex;justify-content:space-between;font-size:10px;color:#8ca0b9;margin-top:7px}.toggles{padding-top:11px;margin-bottom:19px}.toggle-row{display:flex;position:relative;align-items:center;justify-content:space-between;gap:16px;font-size:13px;cursor:pointer;min-height:43px}.toggle-row>span:first-child{display:flex;align-items:center;gap:10px}.toggle-row [data-icon]{color:#a2b5ca}.toggle-row svg{width:17px;height:17px}.toggle-row input{position:absolute;right:0;width:36px;height:22px;opacity:0;margin:0;cursor:pointer}.switch{width:32px;height:18px;background:#35475c;border-radius:20px;position:relative;flex:none;pointer-events:none}.switch:after{content:"";position:absolute;left:3px;top:3px;width:12px;height:12px;background:#e9edf2;border-radius:50%;transition:transform .2s}.toggle-row input:checked+.switch{background:var(--gold)}.toggle-row input:checked+.switch:after{transform:translateX(14px);background:#14253a}.toggle-row input:focus-visible+.switch{outline:2px solid var(--gold);outline-offset:5px}.material-section{border-top:1px solid var(--line);padding-top:17px}.control-label{font-size:13px;margin:0 0 13px}.materials{display:flex;gap:18px}.material{display:flex;align-items:center;flex-direction:column;gap:8px;background:transparent;padding:0 0 4px;color:#93a5bb;font-size:11px}.swatch{display:block;width:35px;height:35px;border-radius:50%;border:3px solid #0d1d32;outline:1px solid #405065}.swatch-natural{background:linear-gradient(120deg,#d7cfbe 0 50%,#926a42 50% 100%)}.swatch-stone{background:linear-gradient(120deg,#b6b8b7 0 50%,#777874 50% 100%)}.swatch-dark{background:linear-gradient(120deg,#4b5260 0 50%,#986b44 50% 100%)}.material.active{color:#efd29e}.material.active .swatch{outline:2px solid var(--gold)}.detail-note{display:flex;align-items:flex-start;gap:8px;margin-top:auto;padding-top:22px;color:#8e9fb5}.detail-note svg{width:14px;height:14px;margin-top:2px}.detail-note p{font-size:11px;line-height:1.55;margin:0}.closing{display:flex;justify-content:space-between;gap:16px;align-items:center;color:#91a0b6;font-size:12px;padding:24px 0 32px}.closing p{margin:0}.closing p span{color:#b2c0d0;font-size:11px;letter-spacing:.07em}.closing a{display:flex;gap:16px;align-items:center;color:#c1ccda;min-height:36px}.closing a span{color:var(--gold);font-size:17px}.hotspots{position:absolute;inset:0;pointer-events:none;z-index:2}.hotspot{position:absolute;left:0;top:0;display:flex;align-items:center;gap:8px;background:#0b1b30e8;padding:6px 10px 6px 7px;border:1px solid #6e7d8f;border-radius:25px;font-size:11px;white-space:nowrap;pointer-events:auto;box-shadow:0 4px 14px #05112533;min-height:32px;transform:translate(-50%,-50%)}.hotspot .pin-circle{display:grid;place-items:center;border:1px solid var(--gold);border-radius:50%;width:17px;height:17px;font-size:11px;color:var(--gold)}.hotspot:hover,.hotspot.selected{border-color:var(--gold);color:var(--gold-light)}.loader,.fallback{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:14px;text-align:center;background:#13263e;z-index:5;padding:30px}.loader strong{font-size:16px;font-weight:500}.loader>span:last-child{font-size:13px;color:var(--muted)}.loader-ring{width:32px;height:32px;border:2px solid #536277;border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite}.fallback strong{font-size:21px}.fallback p{color:#afc0d3;font-size:15px;max-width:320px;line-height:1.6}.fallback button{background:var(--gold);color:#12243a;padding:12px 20px;border-radius:4px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:24px;z-index:10;background:var(--gold);color:#08172b;padding:12px}.skip-link:focus{top:12px}.noscript{padding:25px;font-size:18px;text-align:center}@keyframes spin{to{transform:rotate(360deg)}}
@media(min-width:1600px){.viewport{height:700px}.details{padding-top:32px}.details>p{margin-bottom:28px}.detail-block{margin-bottom:28px}}
@media(max-width:1150px){.header{padding:0 28px}.header-caption{display:none}main{padding:0 28px}.explorer{grid-template-columns:minmax(0,1fr) 272px}.details{padding:24px 19px}.viewport{min-height:640px}.camera-presets button{padding:9px}.auto-rotate span:last-child{display:none}.intro-copy{font-size:14px}.hotspot{font-size:10px}.scene-caption{left:20px}}
@media(max-width:850px){.header{height:80px}.brand img{width:42px;height:42px}.intro{padding:28px 0 24px}.intro h1{font-size:35px}.intro-copy{max-width:205px}.intro-copy br{display:none}.explorer{grid-template-columns:1fr}.viewport{min-height:500px;height:58vw;flex:auto}.details{border-left:0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:0 32px;padding:26px}.detail-heading{grid-column:1/-1}.details h2{grid-column:1;min-height:0}.details>p{grid-column:1;grid-row:3;margin-bottom:16px;min-height:0}.facts{grid-column:1;grid-row:4}.layer-block{grid-column:2;grid-row:2/3;align-self:start}.toggles{grid-column:2;grid-row:3/5;margin:0}.material-section{grid-column:1;grid-row:5}.detail-note{grid-column:2;grid-row:5;align-self:end}.auto-rotate span:last-child{display:block}.camera-tools{top:110px}.hotspot{font-size:11px}.closing{flex-wrap:wrap}}
@media(max-width:560px){.header{padding:0 18px;height:76px}.brand{gap:6px}.brand>span{font-size:18px}.brand small{font-size:8px}.brand img{width:37px;height:37px}.contact-link{font-size:12px;padding:9px 11px;gap:10px;min-height:42px}main{padding:0 14px}.intro{padding:24px 4px;display:block}.intro .eyebrow{font-size:10px;letter-spacing:.1em;margin-bottom:12px}.intro h1{font-size:33px}.intro-copy{max-width:none;font-size:14px;margin-top:15px;line-height:1.6}.explorer{border-radius:7px}.scene-topbar{padding:10px}.view-tabs button{font-size:13px;padding:8px 12px;min-height:42px}.quiet-button{font-size:12px;gap:5px;padding:7px 4px}.viewport{height:470px;min-height:470px}.scene-caption{top:19px;left:17px}.scene-caption strong{font-size:13px}.model-number{font-size:9px}.camera-tools{right:10px;top:91px;padding:3px}.icon-button{width:38px;height:40px}.canvas-hint{bottom:19px;left:14px;font-size:10px;gap:5px}.orientation{right:14px;bottom:18px}.orientation svg{width:29px;height:29px}.orientation span:last-child{display:none}.scene-bottom{padding:9px 10px;gap:4px;flex-wrap:wrap}.camera-presets{gap:2px}.camera-presets button{font-size:12px;padding:9px 10px;min-height:44px}.auto-rotate{margin-left:auto;min-height:42px;padding:8px 6px}.auto-rotate span:last-child{display:none}.details{padding:23px 20px;grid-template-columns:1fr;gap:0}.detail-heading,.details h2,.details>p,.facts,.layer-block,.toggles,.material-section,.detail-note{grid-column:auto;grid-row:auto}.details h2{font-size:26px;margin:7px 0 12px}.details h2 br{display:none}.details h2 br:after{content:" "}.details>p{font-size:14px;line-height:1.65;margin-bottom:20px}.facts{font-size:14px;margin-bottom:23px}.facts div{font-size:14px}.layer-block{margin-bottom:21px;padding-top:20px}.layer-block label{font-size:14px}.range-labels{font-size:12px}.toggles{margin-bottom:19px;padding-top:10px}.toggle-row{font-size:14px;min-height:45px}.detail-heading .eyebrow{font-size:11px}.material{font-size:12px}.swatch{width:39px;height:39px}.detail-note{padding-top:20px}.detail-note p{font-size:12px}.control-label{font-size:14px}.closing{padding:19px 4px 24px;gap:4px;font-size:11px;line-height:1.7}.closing p{max-width:250px}.hotspot{font-size:10px;padding:5px 8px 5px 6px;gap:5px;min-height:32px}.hotspot .pin-circle{width:15px;height:15px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Keep model actions together; fixed embed heights avoid parent ResizeObserver feedback. */
.explorer{align-items:start}.viewport{flex:none;height:min(590px,calc(100svh - 90px));min-height:360px}
.viewport .scene-topbar{position:absolute;inset:10px 10px auto;padding:5px 8px;border:1px solid var(--line);border-radius:7px;background:#102139ed;z-index:4}
.viewport .view-tabs button{min-height:44px}.explode-buttons{position:absolute;top:78px;left:18px;display:flex;gap:6px;z-index:4}
.explode-buttons button{min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:5px;background:#102139;color:var(--text);font-size:13px}
.explode-buttons button.active{background:var(--gold);color:#102139;border-color:var(--gold)}.explode-buttons span{font-size:11px;align-self:center}.explode-buttons{gap:3px;flex-wrap:wrap;right:10px}.explode-buttons button{min-width:44px;padding:4px 6px}.details{padding:16px}.details>p{margin-bottom:12px;min-height:0}.details h2{font-size:24px;min-height:0}.detail-block{margin-bottom:12px}.facts{margin-bottom:12px}
.viewport .scene-caption{top:136px;left:18px}.viewport .camera-tools{top:136px;right:10px}
@media(max-width:560px){.viewport .scene-topbar{inset:8px 8px auto;gap:3px;padding:4px}.viewport .view-tabs button{padding:8px;font-size:12px}.viewport #night{min-height:42px}.explode-buttons{top:68px;left:12px}.explode-buttons button{padding:8px 10px}.viewport .scene-caption{top:125px;left:12px}.viewport .scene-caption strong{font-size:11px}.viewport .model-number{font-size:8px}.viewport .camera-tools{top:172px}.viewport .icon-button{height:36px}.viewport{height:min(470px,calc(100svh - 90px));min-height:360px}}
.scene-column .scene-topbar{position:static;display:flex;flex-wrap:wrap;gap:8px;padding:8px}.scene-topbar .explode-buttons{position:static;flex-wrap:nowrap;gap:3px;align-items:center}.scene-topbar .view-tabs{flex-shrink:0}.scene-topbar #night{margin-left:auto}.viewport .scene-caption{top:18px}.explorer{align-items:stretch}.scene-column{min-width:0}.details{padding:16px}.details .facts{margin:10px 0}.details .toggle-row{min-height:38px;padding:4px 0}.details .detail-block{margin-bottom:8px}.details .detail-note{margin-top:10px}.details>p{margin-bottom:10px}.details .material-section{margin-top:8px}@media(min-width:851px){html.embed .scene-column .viewport{flex:1;min-height:360px;height:auto}.scene-topbar{flex-wrap:nowrap!important}.details h2{font-size:22px}}@media(max-width:560px){.scene-topbar .explode-buttons{order:3;width:100%}.scene-topbar .explode-buttons button{padding:4px 6px}.viewport .scene-caption{top:14px}}
html.embed .header,html.embed .intro,html.embed .closing{display:none}html.embed main{max-width:none;padding:0}html.embed .explorer{border-radius:7px}html.embed .viewport{height:420px;min-height:420px}@media(max-width:560px){html.embed .viewport{height:360px;min-height:360px}}
