/* The static city welcome reserves its layout before either 3D view loads. */
[data-story-content][hidden], #storyWelcome[hidden] { display: none !important; }
.story-awaiting main { display: block; height: auto; }
.story-welcome { position: relative; isolation: isolate; min-height: min(760px, calc(100svh - 76px)); display: flex; align-items: flex-end; padding: clamp(24px, 6vw, 84px); overflow: hidden; background: #071923; }
.story-welcome > img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.story-welcome::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, #06131c05 15%, #06131c50 45%, #06131cf2 100%); }
.story-welcome-copy { max-width: 760px; }
.story-welcome .eyebrow { font-size: 11px; font-weight: 650; letter-spacing: .18em; color: #d4e8e8; }
.story-welcome h1 { font-size: clamp(32px, 4.6vw, 64px); line-height: 1.05; letter-spacing: -.025em; margin: 12px 0 18px; }
.story-welcome p { color: #e3edef; max-width: 620px; }
.story-entry-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 24px; align-items: center; }
.story-entry-actions button, .story-entry-actions a { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; padding: 12px 22px; border-radius: 28px; font-weight: 650; text-decoration: none; }
.story-entry-actions a { color: #e3f3f4; background: #143542df; border: 1px solid #729da7; }
.story-entry-actions button:disabled { cursor: progress; opacity: .8; }
#storyEntryStatus { min-height: 1.5em; margin: 18px 0 8px; font-size: 14px; }
.story-entry-fallback { font-size: 13px; text-underline-offset: 4px; }
.story-welcome :focus-visible { outline: 3px solid #e6c988; outline-offset: 4px; }
@media(max-width:760px) { .story-welcome { min-height: 650px; min-height: max(580px, calc(100svh - 70px)); padding: 30px 22px; } .story-welcome > img { object-position: 54% center; } .story-entry-actions { align-items: stretch; } .story-entry-actions button, .story-entry-actions a { flex: 1 1 180px; } }
