/* Takeovers: space first, a clear service menu, and one real interactive visit. */
body.studio-immersive .site-header.studio-nav { background:#f4f2ea; box-shadow:0 3px 18px #1d1d1b05; }
body.studio-immersive .studio-nav .header-inner { padding-block:10px; }
body.studio-immersive .studio-nav .mobile-feature-rail { display:none; }
body.studio-immersive .studio-nav .nav-discovery {
 display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:12px;
 padding-block:8px 10px; border-top:1px solid #dedbd2;
}
body.studio-immersive .studio-nav .nav-season-rail {
 position:relative; display:flex; align-items:center; justify-content:center; gap:8px; min-height:44px;
 padding:6px 16px 6px 10px; color:#fff; background:#d33f18; border:0; border-radius:7px;
 font:600 .875rem/1.25 var(--body); text-decoration:none; overflow:hidden;
}
.studio-immersive .nav-season-bow { width:29px; height:29px; flex:none; fill:none; stroke:currentColor; stroke-width:1.45; stroke-linecap:round; stroke-linejoin:round; }
.studio-immersive .nav-season-spark { position:absolute; width:8px; height:8px; right:5px; top:5px; color:#fff2d3; }
.studio-immersive .nav-season-long { display:none; }
body.studio-immersive .studio-nav .nav-tour-window {
 display:flex; align-items:center; justify-content:space-between; gap:12px; min-width:0; min-height:44px;
 padding:6px 12px; position:relative; isolation:isolate; overflow:hidden; border-radius:7px;
 color:#fff; background:#1d1d1b; text-decoration:none; font:600 .875rem/1.3 var(--body);
}
.studio-immersive .nav-tour-window::before { content:''; position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,#171714f0 3%,#171714cf 56%,#171714a8),url('/assets/images/virtual-tour-day-480.webp') center 44%/cover; }
.studio-immersive .nav-tour-window .nav-tour-title { display:flex; gap:8px; align-items:center; }
.studio-immersive .nav-tour-window .nav-tour-title small { font:inherit; }
.studio-immersive .nav-tour-window > svg { width:20px; height:20px; flex:none; }
.studio-immersive .nav-tour-orbit { display:grid; place-items:center; flex:none; width:40px; height:29px; border:1px solid #eee8d9; border-radius:50%; font-size:.75rem; letter-spacing:-.03em; }
.studio-immersive .vt-footer-mark { font:600 .8125rem/1 var(--body); display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:30px; border:1px solid #9e9a90; border-radius:50%; margin-right:4px; }
.studio-immersive .vt-footer-link:focus-visible { outline:3px solid #b53213; outline-offset:4px; }
body.studio-immersive .studio-nav .nav-discovery-portal { display:none; }
body.studio-immersive .studio-nav .main-nav .nav-utility { border-left:0; }
body.studio-immersive .studio-nav .main-nav .nav-utility .nav-virtual-tour { display:none; }
body.studio-immersive .studio-nav .main-nav .christmas-nav-link { display:none; }
body.studio-immersive .studio-nav .menu-toggle { border-radius:50%; }
body.studio-immersive .studio-nav .nav-season-rail:hover { background:#b53213; }
body.studio-immersive .studio-nav .nav-season-rail[aria-current=page] { outline:2px solid #a63216; outline-offset:2px; }
body.studio-immersive .studio-nav .nav-tour-window:focus-visible { outline:3px solid #a63216; outline-offset:3px; }
@media(min-width:80rem) {
 html:not([data-studio-large-type]) body.studio-immersive .studio-nav .header-inner { min-height:78px; gap:32px; }
 html:not([data-studio-large-type]) body.studio-immersive .studio-nav .brand { width:158px; }
 html:not([data-studio-large-type]) body.studio-immersive .studio-nav .main-nav { margin-inline:auto; gap:clamp(24px,2.1vw,34px); }
 html:not([data-studio-large-type]) body.studio-immersive .studio-nav .main-nav > a { font-size:.9375rem; padding-block:12px; }
 html:not([data-studio-large-type]) body.studio-immersive .studio-nav .main-nav .nav-utility { display:none; }
 html:not([data-studio-large-type]) body.studio-immersive .studio-nav .header-actions { gap:20px; }
 html:not([data-studio-large-type]) body.studio-immersive .studio-nav .header-cta { font-size:.9375rem; padding-inline:20px; min-height:48px; box-shadow:none; }
 html:not([data-studio-large-type]) body.studio-immersive .studio-nav .nav-discovery { grid-template-columns:224px minmax(240px,410px) 1fr; gap:24px; padding-block:9px 12px; }
 html:not([data-studio-large-type]) .studio-immersive .nav-season-short { display:none; }
 html:not([data-studio-large-type]) .studio-immersive .nav-season-long { display:inline; }
 html:not([data-studio-large-type]) body.studio-immersive .studio-nav .nav-season-rail { justify-content:flex-start; padding-left:16px; gap:12px; }
 html:not([data-studio-large-type]) body.studio-immersive .studio-nav .nav-tour-window { padding-inline:16px; }
 html:not([data-studio-large-type]) body.studio-immersive .studio-nav .nav-discovery-portal { display:flex; align-items:center; gap:16px; justify-self:end; color:#34342f; font:500 .875rem/1.3 var(--body); text-decoration:none; padding:10px 0 10px 28px; border-left:1px solid #c9c5bb; }
 .studio-immersive .nav-discovery-portal svg { width:20px; height:20px; }
}
@media(max-width:47.99rem) {
 body.studio-immersive .studio-nav .header-inner { min-height:66px; gap:8px; }
 body.studio-immersive .studio-nav .nav-discovery { width:calc(100% - 2rem); gap:10px; padding-block:8px; }
 body.studio-immersive .studio-nav .nav-tour-window { gap:8px; }
}
@media(max-width:359px) {
 body.studio-immersive .studio-nav .brand { width:104px; }
 body.studio-immersive .studio-nav .header-cta { padding-inline:9px; }
 .studio-immersive .nav-tour-window .nav-tour-title { gap:6px; }
 .studio-immersive .nav-tour-window > svg { display:none; }
}
html[data-studio-large-type] body.studio-immersive .studio-nav .nav-discovery { display:flex; flex-wrap:wrap; }
html[data-studio-large-type] body.studio-immersive .studio-nav .nav-tour-window { flex:1 1 240px; }
html[data-studio-large-type] body.studio-immersive .studio-nav .nav-tour-window .nav-tour-title { flex-wrap:wrap; }

.studio-immersive .immersive-section { padding-block:clamp(40px,5vw,80px); scroll-margin-top:160px; }
.studio-immersive .immersive-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.62fr); align-items:end; gap:24px 72px; margin-bottom:28px; }
.studio-immersive .immersive-heading h2 { font-size:clamp(28px,3.5vw,50px); line-height:1.13; max-width:23ch; margin:0; text-wrap:balance; }
.studio-immersive .immersive-heading p { font-size:1.0625rem; line-height:1.6; margin:0; max-width:46ch; }
.studio-immersive .vt-preview { margin:0; min-width:0; }
.studio-immersive .vt-frame { position:relative; min-width:0; border-radius:12px; overflow:hidden; background:#1d1d1b; container-type:inline-size; }
.studio-immersive .vt-launch { border-radius:0; height:clamp(380px,40vw,630px); text-decoration:none; }
.studio-immersive .vt-launch[hidden] { display:none; }
.studio-immersive .vt-launch > img { height:100%; width:100%; max-height:none; aspect-ratio:auto; object-fit:cover; }
.studio-immersive .vt-launch::after { background:linear-gradient(0deg,#111510eb 0%,#11151057 28%,transparent 58%,#11151063 100%); }
.studio-immersive .vt-location { position:absolute; z-index:1; top:26px; left:28px; display:flex; gap:10px; align-items:center; color:#fff; background:#111510db; border:1px solid #ffffff38; border-radius:100px; padding:9px 14px; font-size:.875rem; font-weight:500; }
.studio-immersive .vt-location svg { width:18px; height:18px; }
.studio-immersive .vt-aperture { position:absolute; z-index:1; top:50%; left:50%; transform:translate(-50%,-50%); display:grid; place-items:center; width:92px; height:92px; color:#fff; border:1px solid #ffffffa8; border-radius:50%; background:#151813a8; box-shadow:0 0 0 14px #15181326; }
.studio-immersive .vt-aperture svg { width:66px; height:38px; fill:none; stroke:currentColor; stroke-width:1; }
.studio-immersive .vt-aperture b { position:absolute; font:600 1.25rem/1 var(--body); letter-spacing:-.04em; }
.studio-immersive .vt-launch-copy { inset:auto 32px 28px; align-items:end; gap:24px; }
.studio-immersive .vt-launch-copy strong { font:600 clamp(24px,3vw,40px)/1.15 var(--body); letter-spacing:-.035em; }
.studio-immersive .vt-launch-copy small { display:block; margin-top:10px; font-size:1rem; line-height:1.4; font-weight:400; color:#fff; }
.studio-immersive .vt-enter { flex:none; display:grid; place-items:center; width:58px; height:58px; border-radius:50%; background:#d33f18; color:#fff; }
.studio-immersive .vt-enter svg { width:25px; height:25px; }
.studio-immersive .vt-caption { border-bottom:1px solid #cbc7bd; padding-block:14px; gap:12px 24px; }
.studio-immersive .vt-caption > p { display:flex; align-items:center; gap:10px; max-width:54ch; font-size:.9375rem; line-height:1.4; margin:0; color:#484b42; }
.studio-immersive .vt-caption > p svg { flex:none; width:22px; height:22px; }
.studio-immersive .vt-caption .vt-modes { background:transparent; border-color:#b9b5aa; }
.studio-immersive .vt-caption .vt-modes button { min-height:40px; padding-block:8px; }
.studio-immersive .vt-playing .vt-caption [data-vt-controls] { display:none; }
.studio-immersive .vt-playing .vt-frame { min-height:clamp(430px,43vw,680px); }
.studio-immersive .vt-frame:has(dialog:modal) { overflow:visible; }
.studio-immersive [data-vt-slot]:empty { display:none; }
.studio-immersive .immersive-section > .immersive-more { margin-top:18px; display:flex; justify-content:flex-end; }
.studio-immersive .immersive-more a { display:inline-flex; align-items:center; gap:16px; min-height:44px; font-size:1rem; font-weight:600; text-underline-offset:5px; color:#1d1d1b; }
.studio-immersive .immersive-more svg { width:20px; height:20px; }
.studio-immersive .offer-explore .studio-resources { display:flex; flex-wrap:wrap; gap:18px 32px; }
.studio-immersive .offer-tour-jump { display:flex; gap:10px; align-items:center; min-height:44px; font:600 1rem/1.4 var(--body); color:inherit; text-underline-offset:5px; }
.studio-immersive .offer-tour-jump svg { width:25px; height:25px; }
.studio-immersive .vt-dialog-header { grid-template-columns:minmax(0,1fr) auto 44px 44px; gap:16px; padding:14px 18px; }
.studio-immersive .vt-dialog-title p { display:none; }
.studio-immersive #virtual-tour .vt-dialog-title h2 { margin:0; font-family:var(--body); font-size:1.125rem; font-weight:600; line-height:1.25; overflow-wrap:normal; }
.studio-immersive .vt-dialog .vt-close,.studio-immersive .vt-expand { display:grid; place-items:center; min-width:44px; width:44px; height:44px; padding:0; border:1px solid #aaa79f; border-radius:50%; background:transparent; color:#1d1d1b; cursor:pointer; }
.studio-immersive .vt-expand svg { width:21px; height:21px; }
.studio-immersive .vt-expand[hidden] { display:none; }
.studio-immersive .vt-dialog-header:has(.vt-expand[hidden]) { grid-template-columns:minmax(0,1fr) auto 44px; }
.studio-immersive .vt-dialog.vt-inline[open] { position:relative; inset:auto; width:100%; max-width:none; margin:0; height:clamp(430px,43vw,680px); max-height:none; border-radius:0; }
.studio-immersive .vt-inline .vt-dialog-header { background:#242923; color:#fff; }
.studio-immersive .vt-inline .vt-close,.studio-immersive .vt-inline .vt-expand { border-color:#858c80; color:#fff; }
.studio-immersive .vt-inline .vt-modes { background:transparent; border-color:#858c80; }
.studio-immersive .vt-inline .vt-modes button { color:#fff; }
.studio-immersive .vt-inline .vt-modes button[aria-pressed=true] { color:#1d1d1b; background:#f4f2ea; }
.studio-immersive .vt-loading { pointer-events:none; background:#1d1d1bf5; }
.studio-immersive .vt-dialog-footer { font-size:.8125rem; padding:6px 20px; }
@container(max-width:640px) {
 .studio-immersive .vt-inline .vt-dialog-header { grid-template-columns:minmax(0,1fr) 44px 44px; gap:10px; padding:12px; }
 .studio-immersive .vt-inline .vt-dialog-header .vt-modes { grid-column:1/-1; grid-row:2; }
 .studio-immersive .vt-inline .vt-dialog-header .vt-close { grid-row:1; grid-column:3; }
 .studio-immersive .vt-inline .vt-dialog-header .vt-expand { grid-row:1; grid-column:2; }
}

.studio-immersive .architecture-story { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:clamp(28px,5vw,80px); align-items:center; padding-block:clamp(40px,6vw,88px); }
.studio-immersive .architecture-story figure { margin:0; }
.studio-immersive .architecture-story img { display:block; width:100%; height:auto; aspect-ratio:5/4; object-fit:cover; border-radius:10px; }
.studio-immersive .architecture-story h2 { font-size:clamp(26px,3.25vw,46px); line-height:1.15; margin:0 0 22px; text-wrap:balance; }
.studio-immersive .architecture-story p { font-size:1.0625rem; line-height:1.65; max-width:48ch; }
.studio-immersive .architecture-story p + p { margin-top:14px; }
.studio-immersive .architecture-story a { display:inline-flex; gap:14px; align-items:center; min-height:44px; color:#1d1d1b; font-weight:600; text-underline-offset:5px; }
.studio-immersive .architecture-story a svg { width:22px; height:22px; flex:none; }
.studio-immersive .architecture-credit { font-size:.875rem; color:#55584f; line-height:1.45; margin-top:12px; }
.studio-immersive .architecture-reference { margin-top:20px; padding-top:18px; border-top:1px solid #cbc7bd; font-size:.9375rem; line-height:1.5; }
.studio-immersive .architecture-reference a { color:inherit; text-underline-offset:4px; }
.studio-immersive .studio-tech-note { padding:20px 0; border-top:1px solid #cbc7bd; margin-top:18px; font-size:1rem; line-height:1.65; }
.studio-immersive .studio-tech-note p { margin:0; max-width:65ch; }
@media(max-width:767px) {
 .studio-immersive .immersive-section { padding-block:38px; }
 .studio-immersive .immersive-heading { grid-template-columns:1fr; gap:16px; margin-bottom:22px; }
 .studio-immersive .immersive-heading h2 { font-size:clamp(26px,6.5vw,38px); max-width:100%; }
 .studio-immersive .immersive-heading p { font-size:1rem; }
 .studio-immersive .vt-launch { height:clamp(350px,55svh,500px); }
 .studio-immersive .vt-location { top:16px; left:16px; right:auto; padding:8px 12px; font-size:.8125rem; }
 .studio-immersive .vt-aperture { width:76px; height:76px; }
 .studio-immersive .vt-launch-copy { inset:auto 18px 22px; gap:14px; }
 .studio-immersive .vt-launch-copy strong { font-size:1.625rem; }
 .studio-immersive .vt-launch-copy small { font-size:.875rem; max-width:25ch; }
 .studio-immersive .vt-enter { width:46px; height:46px; }
 .studio-immersive .vt-caption { align-items:flex-start; }
 .studio-immersive .vt-caption > p { font-size:.875rem; }
 .studio-immersive .vt-dialog-header { grid-template-columns:minmax(0,1fr) 44px 44px; gap:10px; padding:12px; }
 .studio-immersive .vt-dialog-header:has(.vt-expand[hidden]) { grid-template-columns:minmax(0,1fr) 44px; }
 .studio-immersive .vt-dialog-header .vt-modes { grid-column:1/-1; grid-row:2; }
 .studio-immersive .vt-dialog-header .vt-close { grid-row:1; grid-column:-2/-1; }
 .studio-immersive .vt-expand { grid-row:1; grid-column:2; }
 .studio-immersive .vt-dialog-title h2 { font-size:1rem; }
 .studio-immersive .vt-dialog.vt-inline[open] { height:540px; }
 .studio-immersive .vt-playing .vt-frame { min-height:540px; }
 .studio-immersive .vt-dialog-footer { padding:6px 12px; gap:4px 12px; }
 .studio-immersive .architecture-story { grid-template-columns:1fr; gap:28px; padding-block:40px; }
 .studio-immersive .architecture-story img { aspect-ratio:4/3; }
}
@media(max-height:500px) and (min-width:568px) {
 .studio-immersive .vt-dialog-header { grid-template-columns:minmax(0,1fr) auto 44px 44px; padding:6px 12px; gap:10px; }
 .studio-immersive .vt-dialog-header:has(.vt-expand[hidden]) { grid-template-columns:minmax(0,1fr) auto 44px; }
 .studio-immersive .vt-dialog-header .vt-modes,.studio-immersive .vt-dialog-header .vt-expand,.studio-immersive .vt-dialog-header .vt-close { grid-area:auto; }
}
html[data-studio-large-type] .studio-immersive .immersive-heading { grid-template-columns:1fr; }
html[data-studio-large-type] .studio-immersive .vt-launch-copy strong { font-size:1.2rem; }
html[data-studio-large-type] .studio-immersive .vt-launch-copy small { display:none; }
html[data-studio-large-type] .studio-immersive .vt-location { display:none; }
html[data-studio-large-type] .studio-immersive .vt-dialog-header { gap:8px; }
html[data-studio-large-type] .studio-immersive #virtual-tour .vt-dialog-title h2 { font-family:var(--body); font-size:.7rem; font-weight:600; line-height:1.25; overflow-wrap:normal; }
html[data-studio-large-type] .studio-immersive .vt-dialog .vt-modes button { font-size:.7rem; padding-inline:12px; }
html[data-studio-large-type] .studio-immersive .vt-dialog-footer { font-size:.625rem; }
html[data-studio-large-type] .studio-immersive .architecture-story { grid-template-columns:1fr; }
@media(hover:hover) and (prefers-reduced-motion:no-preference) {
 .studio-immersive .nav-season-bow,.studio-immersive .nav-tour-window > svg,.studio-immersive .vt-enter { transition:transform .25s ease; }
 .studio-immersive .nav-season-rail:hover .nav-season-bow { transform:rotate(-8deg); }
 .studio-immersive .nav-tour-window:hover > svg { transform:translate(2px,-2px); }
 .studio-immersive .vt-launch:hover .vt-enter { transform:rotate(45deg); }
}
