/* Presentation-only layout: the same client UI, framed at its native mobile width. */
.hero-presentation, .hero-presentation body { height: 100%; overflow: hidden; }
.hero-presentation .shell { height: 100dvh; min-height: 0; display: flex; flex-direction: column; padding: 0; }
.hero-presentation .topbar { height: 57px; flex-shrink: 0; padding: 10px 19px; }
.hero-presentation main { flex: 1; min-height: 0; display: flex; flex-direction: column; overflow: hidden; }
.hero-presentation .intro { padding: 15px 19px 12px; }
.hero-presentation .intro h1 { font-size: 25px; }
.hero-presentation .order-heading { padding: 0 19px 12px; }
.hero-presentation .desktop-grid { flex: 1; min-height: 0; display: flex; }
.hero-presentation .desktop-grid > div:first-child { display: flex; flex-direction: column; width: 100%; min-height: 0; }
.hero-presentation .map-panel { flex: 1; min-height: 180px; display: flex; flex-direction: column; }
.hero-presentation .liberty-map-stage { flex: 1; min-height: 0; }
.hero-presentation .liberty-map-host { height: 100%; }
.hero-presentation .liberty-map-footer { padding: 4px 6px; gap: 2px 6px; font-size: 8px; }
.hero-presentation .maplibregl-ctrl-top-right { display: none; }
.hero-presentation .tracking-card { flex-shrink: 0; padding: 15px; margin-bottom: 12px; }
.hero-presentation .eta-row h2 { font-size: 21px; }
.hero-presentation .bottom-nav { position: static; flex-shrink: 0; height: 61px; padding: 6px 12px; }
.hero-presentation .sidebar-content, .hero-presentation .sim-controls,
.hero-presentation .reduced-note, .hero-presentation .role-nav { display: none; }
.hero-presentation button, .hero-presentation a { pointer-events: none; }
