.landing-demo-link { display: inline-flex; gap: 10px; margin-top: 20px; font-size: 14px; font-weight: 600; text-decoration: underline; text-underline-offset: 5px; }
.landing-search { grid-template-columns: minmax(0, 1fr) minmax(0, .8fr) minmax(0, .9fr) auto; }
.landing-city-field { display: grid; gap: 6px; }
.landing-city-field label span { font-weight: 400; }
.landing-city-field .button { justify-self: start; padding: 0; min-height: 24px; border: 0; text-decoration: underline; text-underline-offset: 3px; }
.landing-demo { width: min(1120px, calc(100% - 80px)); margin: 0 auto 56px; display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; scroll-margin-top: 90px; }
.landing-demo-intro { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, .8fr); gap: 48px; align-items: end; }
.landing-demo h2 { font-size: clamp(27px, 3vw, 36px); line-height: 1.15; letter-spacing: -.045em; margin: 12px 0 0; }
.landing-demo-intro p { font-size: 15px; line-height: 1.7; color: var(--muted); max-width: 480px; margin: 0; }
.landing-demo-intro p + p { margin-top: 12px; }
.landing-demo-intro .landing-demo-duration { font-size: 12px; }
.landing-demo-player { min-width: 0; }
.landing-demo video { display: block; width: 100%; aspect-ratio: 16 / 9; background: #f2f1ed; border: 1px solid var(--border); border-radius: 10px; scroll-margin-block: 90px 20px; }
.landing-demo-player p { font-size: 11px; color: var(--muted); margin: 8px 0 0; line-height: 1.5; }
.landing-demo video::cue { font-size: 1em; }
.landing-demo-chapters { grid-column: 1 / -1; display: flex; gap: 14px; border-bottom: 1px solid var(--border); padding-bottom: 22px; }
.landing-demo-chapters button { display: flex; align-items: center; gap: 12px; flex: 1; padding: 14px 18px; border: 1px solid var(--border); border-radius: 6px; background: var(--surface); color: var(--ink); font: inherit; font-size: 14px; cursor: pointer; }
.landing-demo-chapters button:hover { border-color: var(--accent); }
.landing-demo-chapters button:focus-visible { outline: 2px solid #b93720; outline-offset: 3px; }
.landing-demo-chapters span { font-size: 12px; color: var(--muted); }
.landing-demo-transcript { grid-column: 1 / -1; font-size: 13px; }
.landing-demo-transcript summary { cursor: pointer; text-decoration: underline; text-underline-offset: 4px; }
.landing-demo-transcript li { padding: 6px 0; line-height: 1.8; max-width: 850px; }
body.dashboard-view .landing-demo { display: none; }
@media(max-width: 850px) { .landing-search { grid-template-columns: 1fr 1fr; } .landing-city-field { grid-column: 1 / -1; } .landing-demo { width: calc(100% - 40px); } .landing-demo-intro { grid-template-columns: minmax(0, 1fr); gap: 16px; } .landing-demo-intro p { max-width: 600px; } }
@media(max-width: 600px) { .landing-search { grid-template-columns: 1fr; } .landing-demo-chapters { flex-direction: column; gap: 8px; } .landing-demo-chapters button { padding: 12px; } }
@media(prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
