:root{color-scheme:light;--ink:#293b2b;--green:#4c683f;--paper:#faf9f5;--line:#dedfd3;--ease:cubic-bezier(.22,.61,.36,1)}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible,a:focus-visible,canvas:focus-visible,[tabindex]:focus-visible{outline:3px solid #8c9c64;outline-offset:3px}button[disabled]{cursor:default;opacity:.45}[hidden]{display:none!important}a{color:var(--green)}
.viewer-header{max-width:1330px;padding:26px 34px;margin:auto;display:flex;justify-content:space-between;align-items:center}.viewer-header a{text-decoration:none;font-size:12px}.viewer-header .brand{letter-spacing:.25em;font-weight:500;font-size:17px}main{max-width:1330px;margin:auto;padding:15px 34px 34px}.viewer-intro{margin-bottom:27px}.eyebrow{font-size:9px;letter-spacing:.19em;font-weight:600;text-transform:uppercase;margin:0 0 9px}.viewer-intro h1{font:400 44px/1.1 'Cormorant Garamond',serif;margin:0}.viewer-intro h1 em{color:#6d8058}
.tour-layout{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#f9f9f5}.viewer-toolbar{display:flex;align-items:center;padding:14px 20px;border-bottom:1px solid var(--line);background:#fbfbf8}.room-tabs{display:flex;gap:5px}.room-tabs button{border:0;background:transparent;color:#52604b;padding:12px 18px;border-radius:30px;font-size:12px;font-weight:500;white-space:nowrap;transition:background .2s,color .2s}.room-tabs button[aria-selected=true]{background:var(--green);color:white}.room-tabs button:hover:not([aria-selected=true]){background:#e7ebdf}
.tour-stage{height:520px;position:relative;background:radial-gradient(ellipse at 45% 45%,#fdfdf8 0%,#eaece1 76%,#e3e7d8 100%);isolation:isolate}.model-section{position:relative;width:100%;height:100%;transition:width .85s var(--ease)}.split-view .model-section{width:46%}.viewport{position:relative;height:100%;overflow:hidden}#studioCanvas{display:block;width:100%;height:100%;cursor:grab;touch-action:pan-y}#studioCanvas.dragging{cursor:grabbing}

.model-loading,.model-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#eef1e6;z-index:4;font-size:13px}.model-fallback{flex-direction:column;text-align:center;padding:30px;line-height:1.7}.model-fallback p{max-width:350px}
.gallery-shell{position:absolute;top:0;right:0;width:54%;height:100%;opacity:0;transform:translateX(60px);pointer-events:none;transition:opacity .65s var(--ease),transform .85s var(--ease)}.split-view .gallery-shell{opacity:1;transform:translateX(0);pointer-events:auto;transition-delay:.13s}.gallery-inner{height:100%;padding:20px 22px 20px 0;overflow:hidden}.photo-panel,.photo-pair{height:100%}.photo-pair{display:grid;grid-template-rows:minmax(0,1fr) minmax(0,1fr);gap:14px;justify-items:center}.photo-card{display:block;position:relative;height:100%;width:auto;max-width:100%;aspect-ratio:3/2;overflow:hidden;border-radius:10px;border:0;padding:0;background:#d1c6b5;box-shadow:0 4px 18px #38482c10}.photo-card img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .65s var(--ease)}.photo-card:hover img{transform:scale(1.025)}.photo-card span{position:absolute;bottom:12px;right:12px;border:1px solid #ffffff75;color:white;background:#26352150;border-radius:50%;width:28px;height:28px;display:grid;place-items:center;font-size:18px;backdrop-filter:blur(4px)}.photo-panel.entering{animation:photo-enter .65s var(--ease)}@keyframes photo-enter{from{opacity:0;transform:translateX(26px)}to{opacity:1;transform:translateX(0)}}
dialog{padding:0;border:1px solid #ffffff38;border-radius:14px;background:#20271e;color:#f7f7f0;max-width:min(1250px,94vw);max-height:94dvh;overflow:auto}dialog::backdrop{background:#152010df;backdrop-filter:blur(6px)}dialog img{max-width:100%;max-height:92dvh;display:block;object-fit:contain}#closePhoto{position:absolute;right:14px;top:14px;border:1px solid #ffffff70;background:#263521bb;color:#fff;width:38px;height:38px;border-radius:50%;font-size:25px;z-index:1}
.embedded .viewer-header,.embedded .viewer-intro{display:none}.embedded main{max-width:none;padding:0}.embedded .tour-layout{border:0;border-radius:0}
@media(min-width:1100px){.tour-stage{height:540px}.gallery-inner{padding:18px 24px 18px 0}}
@media(max-width:760px){main{padding:12px 16px 24px}.viewer-header{padding:23px 18px}.viewer-intro h1{font-size:36px}.viewer-toolbar{padding:12px;justify-content:center}.room-tabs{width:100%;gap:3px;justify-content:center}.room-tabs button{padding:12px 13px;font-size:11px}.tour-stage{height:auto;display:grid;grid-template-rows:auto 0fr;transition:grid-template-rows .85s var(--ease)}.split-view .tour-stage{grid-template-rows:auto 1fr}.model-section,.split-view .model-section{width:100%;height:400px;transition:height .85s var(--ease)}.split-view .model-section{height:300px}.gallery-shell{position:relative;top:auto;right:auto;width:100%;height:auto;min-height:0;overflow:hidden;transform:translateX(35px)}.gallery-inner{height:auto;padding:0 16px 16px}.photo-panel,.photo-pair{height:auto}.photo-pair{grid-template-rows:none;grid-template-columns:1fr 1fr;gap:12px}.photo-card{width:100%;height:auto;aspect-ratio:3/2}.split-view .gallery-shell{transition-delay:0s}}
@media(max-width:480px){.room-tabs button{padding:11px 10px;font-size:10px}.model-section{height:370px}.split-view .model-section{height:270px}.photo-pair{grid-template-columns:1fr}.photo-card span{bottom:10px;right:10px}}
@media(prefers-reduced-motion:reduce){.photo-panel.entering{animation:none}.photo-card img{transition:none}.gallery-shell{transform:none;transition:opacity .35s ease}.model-section,.tour-stage{transition-duration:.4s}}
