:root { --gutter: 16px; --header-height: 56px; --footer-height: 42px; }

body { font-size: 17px; }
h2 { font-size: 46px; }

.nav { position: relative; }
.nav-toggle { display: block; padding: 4px 12px; border: 1px solid var(--border); border-radius: var(--radius); background: var(--panel); font-size: 15px; }
.nav-links { position: absolute; top: 100%; left: 0; right: 0; display: none; flex-direction: column; align-items: stretch; gap: 0; padding: 8px var(--gutter) 16px; background: var(--bg-deep); border-bottom: 1px solid var(--border); font-size: 16px; }
.nav-links.is-open { display: flex; }
.nav-links a:not(.button) { padding: 10px 0; }
.nav-links a.is-active { box-shadow: none; color: var(--accent); }
.nav-links .button { margin-top: 8px; padding: 10px 14px; text-align: center; }

.hero { min-height: 0; padding: 28px 0 0; background: url("../images/road.svg?v=12") bottom / 100% 150px no-repeat, linear-gradient(120deg, rgba(79, 124, 255, 0.16), transparent 60%), var(--bg); }
.hero-copy { padding: 0 var(--gutter); }
.hero h1 { font-size: 92px; }
.lead, .hero-note { max-width: none; }
.lead { font-size: 18px; }
.hero-trucks { position: relative; right: auto; bottom: auto; width: 118%; max-width: none; margin: 24px 0 16px -9%; }
.ticker span { padding: 9px 16px; font-size: 15px; }

.live-band { padding: 12px 0; }
.live-inner { flex-direction: column; gap: 10px; }
.live-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.live-stats div { padding: 10px; }
.live-stats dt { font-size: 13px; line-height: 1.25; }
.live-stats dd { font-size: 30px; }

.showroom-band { padding-top: 40px; }
.showroom-head { flex-direction: column; align-items: stretch; gap: 16px; padding-bottom: 16px; }
.showroom-tabs { justify-content: flex-start; }
.showroom-tabs button { padding: 6px 12px; font-size: 15px; }
.showroom { height: 62vh; min-height: 380px; max-height: 560px; }
.showroom-label { top: 14px; bottom: auto; }
.showroom-label h3 { font-size: 28px; }
.showroom-controls { left: var(--gutter); right: auto; bottom: 12px; }
.showroom-controls button { padding: 0 10px; font-size: 14px; }

.section { padding-top: 44px; }
.section-split { gap: 16px; padding-bottom: 48px; }
.explorer { gap: 16px; }
.explorer-tabs { flex-direction: column; }
.explorer-tabs button, .explorer-soon { width: 100%; padding: 8px 12px; }
.explorer-tabs strong { font-size: 23px; }
.panel-copy { grid-template-columns: minmax(0, 1fr); gap: 12px; padding: 14px; }

.night { gap: 20px; }
.scene-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.scene-grid span { left: 6px; bottom: 6px; padding: 2px 8px; font-size: 12px; }

.video-grid { grid-template-columns: minmax(0, 1fr); gap: 12px; margin-top: 18px; }
.video-play { width: 60px; height: 60px; font-size: 22px; }
.release-grid { grid-template-columns: minmax(0, 1fr); gap: 12px; }
.not-found h1 { font-size: 84px; }

.spec-grid { grid-template-columns: minmax(0, 1fr); gap: 12px; }
.spec-table td:last-child { white-space: normal; }
.steps, .testimonial-grid { grid-template-columns: minmax(0, 1fr); gap: 12px; margin-top: 18px; }

.download-inner { grid-template-columns: minmax(0, 1fr); gap: 0; padding: 36px var(--gutter) 0; }
.download-copy { padding-bottom: 20px; }

.site-footer { font-size: 13px; }
.footer-note { display: none; }
.footer-links { gap: 14px; }

@media (max-width: 380px) {
  .hero h1 { font-size: 76px; }
  .scene-grid { grid-template-columns: minmax(0, 1fr); }
}
