/* Live HTML above a coherent 3D room; no photograph or sprite compositing. */
html{scroll-padding-top:94px}
.site-header{height:82px;padding-inline:4vw;gap:26px;background:#0309166b;border-bottom-color:#d2e3ff24}
.site-header.scrolled{background:#030916ed;border-bottom-color:transparent}
.site-header .brand img{width:146px}
.site-header nav{gap:18px}
.header-contacts{flex-direction:row;align-items:center;gap:20px;font-size:13px;line-height:1.2}
.header-contacts>a{min-height:44px}
.header-contacts .phone{flex-direction:row;align-items:center;font-size:16px;font-weight:600}
.header-email{gap:7px;color:#c9d5e8}
.header-email svg{width:16px;height:16px;flex-shrink:0}
.header-cta{min-height:46px;padding:11px 18px;gap:16px}
.icon-arrow{width:18px;height:18px;display:inline-block;flex-shrink:0;vertical-align:middle}
.header-cta>span{display:flex;align-items:center}
.hero-secondary{display:inline-flex;align-items:center;gap:10px}
.hero-secondary .icon-arrow{width:17px;height:17px}
.contact-hours{font-size:13px;margin-top:20px;color:var(--muted)}
.selected-track{background:#061226}
.selected-stage{background:#061226}
.selected-stage::after{display:none}
.room-space,.room-foreground{position:absolute;inset:0;pointer-events:none;opacity:0}
.room-space{z-index:0;mask-image:linear-gradient(to bottom,#000 calc(100% - 42px),transparent)}
.room-foreground{z-index:4}
.room-space canvas,.room-foreground canvas{display:block;width:100%;height:100%}
.hero-surface{box-shadow:0 0 0 2px #01050b,0 0 36px #2353a00d}
.hero-background{background:radial-gradient(ellipse at 75% 20%,#193967,#060c1a 70%)}
.selected-transition{display:block;position:relative;min-height:0;height:22svh;background:linear-gradient(180deg,#061226 0%,#213550 22%,#71869f 48%,#c2cdd5 72%,#f3f1ea 100%);pointer-events:none}
.entry-first{position:relative;z-index:0;padding-top:65px}
.reduced .selected-stage{padding:0;height:100svh;min-height:680px}
.reduced .room-space,.reduced .room-foreground{display:none}
.scene-unavailable .selected-track{height:100svh!important}
.scene-unavailable .selected-stage{position:relative}
.scene-unavailable .room-space,.scene-unavailable .room-foreground{display:none}
@media(min-width:1900px){.site-header{padding-inline:4vw;gap:32px}.site-header nav{gap:30px}.header-contacts{gap:26px}}
@media(min-width:701px) and (max-width:1280px){
 html{scroll-padding-top:134px}
 .site-header{height:124px;grid-template-columns:1fr auto auto;grid-template-rows:72px 52px;gap:0 18px;padding-inline:24px}
 .site-header .brand img{width:120px}
 .header-contacts{grid-column:2;grid-row:1;flex-direction:row;gap:14px;font-size:12px}
 .header-contacts .phone{font-size:14px}
 .header-email svg{display:none}
 .header-cta{grid-column:3;grid-row:1;font-size:13px;gap:12px;padding-inline:16px}
 .site-header nav{grid-column:1/-1;grid-row:2;font-size:13px;justify-content:space-between;gap:14px}
}
@media(max-width:700px){
 html{scroll-padding-top:106px}
 .site-header{height:96px;padding:0 18px;grid-template-columns:1fr auto auto;grid-template-rows:52px 44px;gap:0 10px;background:#030916ad}
 .site-header .brand{grid-column:1;grid-row:1}
 .site-header .brand img{width:100px}
 .header-cta{grid-column:2;grid-row:1;min-height:40px;margin:0;padding:9px 13px;font-size:12px;gap:10px;justify-self:auto}
 .header-cta .icon-arrow{width:16px;height:16px}
 .site-header .menu-button{grid-column:3;grid-row:1;min-height:40px;padding:8px 10px;font-size:10px;border-radius:4px}
 .header-contacts{grid-column:1/-1;grid-row:2;width:100%;margin:0;flex-direction:row;justify-content:space-between;gap:12px;font-size:12px}
 .header-contacts .phone{font-size:13px;flex-direction:row;align-items:center}
 .header-email{gap:6px}
 .header-email svg{width:14px;height:14px}
 .site-header nav.open{inset:96px 18px auto}
 .hero-copy{top:var(--copy-y,54%)}
 .selected-transition{height:18svh}
 .entry-first{padding-top:45px}
}
@media(max-width:360px){
 .site-header{padding-inline:14px;gap:0 6px}
 .site-header .brand img{width:84px}
 .header-cta{padding-inline:11px;gap:8px;font-size:11px}
 .site-header .menu-button{padding-inline:8px}
 .header-contacts{font-size:11px}
 .header-contacts .phone{font-size:12px}
 .header-email svg{width:13px;height:13px}
}
