/* Editorial layer only. The accepted suite/city renderer stays unchanged.
   Clip the fixed stage without making it scrollable when keyboard focus moves. */
:root{--ivory:#f6f0e4;--muted:#d0c6b7;--gold:#ddc39a;--edge:clamp(24px,4.2vw,80px)}
body{color:var(--ivory)}button,a{touch-action:manipulation}button{min-height:44px}button:focus-visible,a:focus-visible{outline-offset:4px}.stage{height:100dvh;overflow:clip}.picture{position:absolute;inset:0;pointer-events:none}.picture #film,.picture #fallback{width:100%;height:100%}.shade{background:linear-gradient(180deg,#0605048c,transparent 19%,transparent 68%,#0605044d);z-index:1}.site-header{position:absolute;top:max(28px,env(safe-area-inset-top));left:var(--edge);right:var(--edge);align-items:center;z-index:6}.brand{font-size:25px;letter-spacing:.32em;line-height:1}.brand span{max-width:none;white-space:nowrap;font-size:9px;letter-spacing:.04em;line-height:1.4;margin-top:10px}.header-actions{display:flex;align-items:center;gap:26px}.header-pilot{font-size:12px;line-height:1.4;text-shadow:0 2px 10px #000}.header-pilot span{margin-left:12px}.menu-toggle{display:flex;align-items:center;gap:18px;border:1px solid #f6f0e43b;border-radius:40px;padding:0 20px;font-size:12px;min-height:44px;background:#100e0b6b;backdrop-filter:blur(12px)}.menu-lines{width:16px;height:8px;border-block:1px solid currentColor}.header-pilot:hover,.text-link:hover{text-decoration:underline;text-underline-offset:5px}
.story-copy{position:absolute;z-index:4;left:7%;bottom:12%;width:min(520px,42vw);opacity:0;pointer-events:none;text-shadow:0 2px 18px #0008}.story-copy:not([inert]){pointer-events:auto}.kicker{font:500 10px/1.5 Geist,Arial,sans-serif;text-transform:uppercase;letter-spacing:.15em;color:var(--gold);margin:0 0 18px}.story-copy h1,.story-copy h2{font:400 clamp(46px,5.3vw,88px)/.99 'Instrument Serif',Georgia,serif;letter-spacing:-.025em;margin:0 0 24px;text-wrap:balance}.story-copy .lead{font-size:clamp(14px,1.15vw,18px);line-height:1.6;letter-spacing:-.01em;margin:0;color:var(--ivory);max-width:40ch}.body-copy{font-size:13px;line-height:1.7;color:var(--muted);max-width:43ch;margin:22px 0}.text-link{display:inline-flex;align-items:center;gap:18px;font-size:12px;line-height:1.5;padding:12px 0;background:none;border:0}.begin{margin-top:20px}.scroll-hint{font-size:10px;color:var(--muted);margin:4px 0 0}.bedside{left:auto;right:7%;text-align:right;width:min(450px,40vw);bottom:16%}.bedside .lead,.bedside .body-copy{margin-left:auto}.bedside h2{font-size:clamp(48px,5vw,76px)}.bedside .lead{line-height:1.9}.quote{z-index:4;align-items:center;justify-content:center;background:radial-gradient(ellipse,#0004,transparent 65%)}.quote p{font-size:clamp(32px,4.4vw,64px);line-height:1.1}.quote>span{font-size:10px;letter-spacing:.1em;color:var(--gold)}
.tv{width:960px;height:540px;opacity:1;background:#0a0a0b}.tv iframe{width:100%;height:100%;border:0;pointer-events:none}.feature-explorer{position:absolute;z-index:4;left:var(--edge);right:var(--edge);bottom:max(24px,env(safe-area-inset-bottom));display:grid;grid-template-columns:minmax(260px,.9fr) minmax(420px,1.1fr);gap:40px;align-items:end;opacity:0;pointer-events:none}.feature-explorer:not([inert]){pointer-events:auto}.feature-copy .kicker{margin-bottom:8px}.feature-copy h2{font:400 clamp(24px,2.6vw,38px)/1.1 'Instrument Serif',Georgia,serif;letter-spacing:-.015em;margin:0 0 9px}.feature-copy>p:not(.kicker){font-size:12px;line-height:1.6;color:var(--muted);max-width:58ch;margin:0}.feature-examples{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:12px}.feature-examples span{font-size:10px;color:var(--ivory)}.feature-examples span:before{content:'·';color:var(--gold);margin-right:7px}#feature-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px 8px}#feature-tabs button,#expanded-features button{font-size:11px;text-align:left;line-height:1.3;padding:10px 12px;border:1px solid #e5d7c02b;border-radius:4px;transition:background .15s}.feature-options .screen-open{font-size:11px;float:right;padding-bottom:0;min-height:32px}#feature-tabs button[aria-selected=true],#expanded-features button[aria-pressed=true]{background:var(--ivory);color:#211b14;border-color:var(--ivory)}#feature-tabs button:hover,#expanded-features button:hover{border-color:var(--gold)}
.exterior-copy{bottom:9%;width:min(500px,40vw)}.exterior-copy h2{font-size:clamp(42px,4.6vw,76px);margin-bottom:22px}.story-facts{list-style:none;padding:0;margin:25px 0 0;font-size:12px;line-height:1.5;max-width:430px}.story-facts li{padding:11px 0;border-top:1px solid #e5d7c034}.story-facts span{display:inline-block;width:36%;color:var(--gold);font-size:10px}.service-flow{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:13px}.service-flow li{display:flex;gap:18px;align-items:baseline;font-size:13px}.service-flow b{font-size:10px;font-weight:400;color:var(--gold);font-variant-numeric:tabular-nums}.service-flow small{display:block;font-size:11px;line-height:1.5;color:var(--muted);margin-top:3px}.story-actions{display:flex;gap:24px;align-items:center;margin-top:25px}.primary-link{display:inline-flex;gap:26px;align-items:center;background:var(--ivory);color:#211b14;font-size:12px;padding:15px 21px;min-height:46px}.primary-link:hover{background:#ddc39a}#ending #again{margin-top:8px;color:var(--muted)}
dialog{color:var(--ivory);font-family:Geist,Arial,sans-serif}dialog::backdrop{background:#030403a8;backdrop-filter:blur(8px)}.site-menu{position:fixed;inset:0 0 0 auto;margin:0;width:min(560px,100vw);height:100dvh;max-height:none;max-width:none;border:0;background:#14120ff7;padding:clamp(24px,4vw,52px);overflow:auto}.site-menu[open]{display:flex;flex-direction:column}.menu-top{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #e5d7c030;padding-bottom:24px}.menu-top p{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}.close-button{font-size:12px;display:flex;gap:20px;align-items:center;min-height:44px;padding:8px}.close-button span{font-size:24px}.chapter-links{display:flex;flex-direction:column;gap:0;padding:30px 0}.chapter-links button{display:flex;align-items:baseline;gap:20px;text-align:left;font:400 clamp(28px,3.1vw,40px)/1.1 'Instrument Serif',Georgia,serif;opacity:1;padding:14px 0;min-height:55px}.chapter-links button span{font:400 10px Geist,Arial,sans-serif;color:var(--gold)}.chapter-links button:hover,.chapter-links button[aria-current=step]{color:var(--gold)}.menu-links{border-top:1px solid #e5d7c030;padding:24px 0;display:grid;grid-template-columns:1fr 1fr;gap:6px 20px;font-size:12px}.menu-links a{padding:10px 0}.menu-bottom{margin-top:auto;padding-top:20px;display:flex;gap:20px;align-items:center;justify-content:space-between;border-top:1px solid #e5d7c030;font-size:10px}.menu-bottom #play{font-size:11px;letter-spacing:0;min-width:140px;gap:10px}.menu-bottom>span{display:flex;gap:16px}.menu-bottom a{padding:12px 0}.screen-dialog{width:min(1200px,94vw);max-width:94vw;max-height:94dvh;padding:24px;background:#11100e;border:1px solid #ddc39a50;overflow:auto}.screen-dialog[open]{display:flex;flex-direction:column}.screen-dialog-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.screen-dialog .kicker{margin:0 0 6px;font-size:9px}.screen-dialog h2{font:400 28px 'Instrument Serif',Georgia,serif;margin:0}.screen-preview{flex-shrink:0;width:100%;aspect-ratio:16/9;background:#0a0a0b}.screen-preview iframe{border:0;width:100%;height:100%}#expanded-features{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}#expanded-features button{font-size:11px;min-height:42px}.preview-note{font-size:11px;line-height:1.5;color:var(--muted);margin:18px 0 0}.motion-note{bottom:18px;font-size:11px;z-index:5;pointer-events:none}
@media(min-width:1500px){.feature-explorer{bottom:4.5%;gap:70px}.feature-copy>p:not(.kicker){font-size:14px}.feature-examples span,#feature-tabs button{font-size:12px}#feature-tabs button{padding:12px 16px}.story-copy .body-copy,.story-facts,.service-flow li{font-size:14px}.service-flow small{font-size:12px}}
@media(max-width:1000px){.header-actions{gap:18px}.story-copy{width:45vw}.feature-explorer{gap:24px;grid-template-columns:.85fr 1.15fr}.feature-copy h2{font-size:27px}#feature-tabs button{font-size:10px;padding:9px 8px}.exterior-copy h2{font-size:48px}.story-facts span{display:block;width:auto;margin-bottom:3px}}
/* Portrait is a native camera composition, with content layered over the room.
   There is no translated wide canvas or reserved letterbox area. */
@media(orientation:landscape){.feature-browse-hint{display:none}}
@media(orientation:portrait){
 :root{--edge:clamp(22px,5.5vw,44px)}
 .picture{transform:none}.picture #fallback{object-fit:cover;object-position:66% 50%}
 .shade{background:linear-gradient(180deg,#0605048c,transparent 23%,transparent 48%,#06050438)}
 .bar{display:none}
 .site-header{top:max(24px,calc(env(safe-area-inset-top) + 12px))}.header-pilot{display:none}.brand{font-size:22px}.brand span{font-size:8px}.menu-toggle{font-size:11px;padding:0 16px;gap:14px}
 .story-copy,.story-copy.bedside,.story-copy.exterior-copy{left:var(--edge);right:var(--edge);width:auto;bottom:max(34px,calc(env(safe-area-inset-bottom) + 18px));text-align:left}
 .story-copy h1,.story-copy h2{font-size:clamp(48px,12.5vw,76px);margin-bottom:18px;max-width:12ch}
 .story-copy .kicker{font-size:9px;margin-bottom:14px}.story-copy .lead{font-size:14px;line-height:1.6;max-width:42ch}.story-copy .body-copy{font-size:12px;margin:17px 0;max-width:40ch}
 .bedside .lead,.bedside .body-copy{margin-left:0}.bedside .lead{line-height:1.9}.desktop-break{display:none}
 
 .begin{margin-top:14px}.scroll-hint{display:none}
 .feature-explorer{bottom:max(24px,calc(env(safe-area-inset-bottom) + 12px));display:flex;flex-direction:column;align-items:stretch;gap:18px}
 
 .feature-copy h2{font-size:clamp(28px,7.7vw,42px);max-width:24ch;line-height:1.08;margin-bottom:10px}.feature-copy>p:not(.kicker){font-size:12px;line-height:1.6;max-width:55ch}.feature-copy .kicker{margin-bottom:10px}
 .feature-examples{margin-top:10px;gap:5px 12px}.feature-examples span{font-size:10px}
 #feature-tabs{display:flex;flex-wrap:nowrap;gap:7px;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;margin:0 calc(-1 * var(--edge));padding:2px var(--edge) 8px;scroll-padding-inline:var(--edge);-webkit-overflow-scrolling:touch}
 #feature-tabs::-webkit-scrollbar{display:none}#feature-tabs button{flex:0 0 auto;white-space:nowrap;font-size:11px;padding:12px 16px;min-height:44px;border-radius:30px;background:#15120f80}
 #feature-tabs button[aria-selected=true]{background:var(--ivory)}
 .feature-browse-hint{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.04em;color:var(--muted);margin:0 0 9px}.feature-browse-hint span{color:var(--gold)}
 .feature-options .screen-open{float:none;font-size:11px;margin-top:2px;min-height:36px;padding:6px 0}
 .quote{justify-content:flex-end;align-items:flex-start;text-align:left;padding:0 var(--edge) max(50px,calc(env(safe-area-inset-bottom) + 30px));background:linear-gradient(transparent 45%,#090706ac)}.quote p{font-size:clamp(40px,10.5vw,68px);margin-bottom:16px}.quote>span{font-size:10px}
 .story-facts{margin-top:22px;font-size:12px}.story-facts li{padding:10px 0;display:flex;gap:12px;align-items:baseline}.story-facts span{width:32%;flex-shrink:0;margin:0;font-size:10px}.service-flow{gap:12px;margin-top:20px}.service-flow li{font-size:13px}.service-flow small{font-size:11px}.story-actions{margin-top:22px;gap:20px}.exterior-copy .text-link{font-size:11px}
 .screen-dialog{padding:16px}.screen-dialog-header{order:0;position:sticky;top:-16px;z-index:2;background:#11100e;padding:12px 0;margin-top:-12px;margin-bottom:8px;gap:12px}#expanded-features{order:1;margin:0 0 16px;gap:6px}#expanded-features button{font-size:10px;min-height:36px;padding:8px 10px}.screen-preview{order:2;aspect-ratio:390/844}.preview-note{order:3}.screen-dialog h2{font-size:24px}.screen-dialog .close-button{font-size:11px}
 .motion-note{top:110px;bottom:auto;left:var(--edge);right:var(--edge);text-align:left;font-size:10px}.site-menu{width:min(560px,100vw)}
}
@media(orientation:portrait) and (min-width:600px){
 .story-copy,.story-copy.bedside,.story-copy.exterior-copy{bottom:6dvh;max-width:540px}.story-copy .lead{font-size:17px}.story-copy .body-copy{font-size:14px}.story-facts{font-size:14px}.feature-explorer{bottom:4dvh;max-width:650px;gap:24px}.feature-copy>p:not(.kicker){font-size:15px}.feature-examples span{font-size:12px}#feature-tabs button{font-size:13px}.feature-browse-hint{font-size:11px}.feature-options .screen-open{font-size:13px}
}
@media(orientation:portrait) and (max-height:740px){
 .site-header{top:max(18px,env(safe-area-inset-top))}.brand{font-size:20px}.brand span{margin-top:7px}.menu-toggle{min-height:40px}
 .story-copy,.story-copy.bedside,.story-copy.exterior-copy{bottom:max(20px,calc(env(safe-area-inset-bottom) + 10px))}.story-copy h1,.story-copy h2{font-size:42px;margin-bottom:12px}.story-copy .lead{font-size:12px}.story-copy .body-copy{font-size:11px;margin:12px 0}.story-copy .kicker{margin-bottom:9px}.begin{margin-top:8px}
 .feature-explorer{bottom:max(14px,env(safe-area-inset-bottom));gap:12px}.feature-copy .kicker{display:none}.feature-copy h2{font-size:25px;margin-bottom:8px}.feature-copy>p:not(.kicker){font-size:11px}.feature-examples{display:none}.feature-browse-hint{font-size:8px;margin-bottom:5px}#feature-tabs button{font-size:10px;padding:10px 13px}.feature-options .screen-open{min-height:32px;padding:4px 0;margin:0}
 .story-facts{margin-top:14px;font-size:11px}.story-facts li{padding:7px 0}.service-flow{gap:8px;margin-top:14px}.service-flow li{font-size:12px}.service-flow small{font-size:10px}.story-actions{margin-top:14px;gap:15px}.primary-link{font-size:11px;padding:12px 14px;min-height:44px}#ending #again{margin:0}.quote{padding-bottom:8dvh}.quote p{font-size:38px}
}
@media(orientation:landscape) and (max-height:600px){.site-header{top:16px}.brand{font-size:20px}.brand span{display:none}.header-pilot{font-size:11px}.menu-toggle{min-height:38px;font-size:11px}.story-copy{bottom:7%;width:43vw}.story-copy h1,.story-copy h2{font-size:40px;margin-bottom:12px}.kicker{font-size:9px;margin-bottom:9px}.story-copy .lead{font-size:12px;line-height:1.5}.story-copy .body-copy{font-size:11px;margin:12px 0}.begin{margin-top:9px}.feature-explorer{bottom:15px;grid-template-columns:1fr 1.2fr;gap:20px}.feature-copy h2{font-size:24px}.feature-copy>p:not(.kicker){font-size:10px}.feature-copy .kicker{display:none}.feature-examples{display:none}#feature-tabs button{min-height:32px;font-size:10px;padding:7px 8px}.feature-options .screen-open{min-height:25px;font-size:10px;padding:5px 0}.story-facts{font-size:10px;margin-top:12px}.story-facts li{padding:6px 0}.story-facts span{display:inline-block;width:34%;font-size:9px}.service-flow{gap:8px;margin-top:12px}.service-flow li{font-size:11px}.service-flow small{font-size:10px}.story-actions{margin-top:13px;gap:16px}.primary-link{font-size:11px;padding:11px 15px;min-height:40px}.text-link{font-size:11px;padding:8px 0;min-height:36px}.site-menu{padding:18px 28px}.menu-top{padding-bottom:10px}.chapter-links{padding:12px 0}.chapter-links button{font-size:26px;padding:8px 0;min-height:38px}.menu-links{padding:10px 0;font-size:11px;gap:0 20px}.menu-bottom{padding-top:8px}.quote p{font-size:36px}.bar{height:7vh}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.feature-explorer button{transition:none}.motion-note{background:#0c0c0bcc;padding:8px 12px;width:fit-content}}

.world-loading{position:fixed;bottom:12%;left:50%;transform:translateX(-50%);z-index:8;max-width:85%;padding:10px 16px;background:#100d0be8;border:1px solid #c2a47c44;border-radius:4px;color:#eadcc8;font-size:12px;text-align:center}.world-loading[hidden]{display:none}
