/* ==========================================================================
   Responsiv finpudsning (tablet < 900px, mobil < 640px, lille mobil < 380px)
   ========================================================================== */
@media (max-width: 900px) {
	.section > .container { padding-top: 48px; padding-bottom: 48px; }
}
@media (max-width: 780px) {
	.site-header .container { flex-wrap: nowrap; gap: 10px; padding-top: 10px; padding-bottom: 10px; }
	.site-branding { min-width: 0; flex: 1 1 auto; }
	.site-branding a { font-size: 20px; }
	.header-actions { gap: 8px; margin-left: auto; }
	.header-cta { padding: 10px 14px; font-size: 14px; }
}
@media (max-width: 640px) {
	.container { padding-left: 20px; padding-right: 20px; }
	.utility-bar { font-size: 12.5px; line-height: 1.35; }
	.utility-bar .container { flex-direction: column; align-items: flex-start; gap: 2px; padding-top: 7px; padding-bottom: 7px; }
	.utility-bar .utility-right { gap: 2px 14px; }
	.utility-bar .bt-icon { width: 15px; height: 15px; vertical-align: -3px; }
	.hero .container { padding-top: 30px; padding-bottom: 26px; }
	.hero-search { padding: 12px; margin-top: 18px; }
	.hero-badges { gap: 6px 16px; font-size: 13px; margin-top: 16px; }
	.trust-grid { padding: 20px; gap: 16px; }
	.section > .container { padding-top: 40px; padding-bottom: 40px; }
	.section-head { margin-bottom: 18px; }
	.category-card .thumb { height: 140px; }
	.button { padding: 13px 18px; }
	.hero-actions .button { flex: 1 1 100%; }
	.cta-band .container { padding-top: 34px; padding-bottom: 34px; }
	.cta-band .actions { width: 100%; }
	.cta-band .actions .button { flex: 1 1 auto; }
	.about-grid { gap: 28px; }
	.contact-card { padding: 20px; }
	.footer-grid { gap: 22px; }
	.footer-bottom { flex-direction: column; gap: 10px; }
	.spec-table th { width: 46%; }
	.vehicle-hero-empty { height: 200px; }

	/* Prisoversigten bliver til kort i stedet for en tabel, der skal scrolles sidelæns */
	.price-table { min-width: 0; border: 0; background: transparent; }
	.price-table thead { position: absolute; left: -9999px; }
	.price-table, .price-table tbody, .price-table tr, .price-table td { display: block; width: 100%; }
	.price-table tr { background: #fff; border: 1px solid var(--bt-color-border); border-radius: var(--bt-radius-md); margin-bottom: 12px; padding: 6px 0; }
	.price-table td { border: 0; padding: 6px 14px; display: flex; justify-content: space-between; gap: 12px; font-size: 14.5px; }
	.price-table td::before { content: attr(data-label); font-weight: 600; color: var(--bt-color-text-muted-2); font-size: 13px; }
	.price-table td:first-child { font-size: 16px; padding-top: 10px; }
	.price-table td:first-child::before { content: none; }
}
@media (max-width: 380px) {
	.site-branding a { font-size: 18px; }
	.header-cta .bt-icon { display: none; }
}

/* Genvej til booking øverst på køretøjssiden (kun når bookingkortet ligger nederst, dvs. på tablet/mobil) */
.vehicle-jump { display: none; margin: 4px 0 16px; }
@media (max-width: 900px) { .vehicle-jump { display: block; } .vehicle-jump .button { width: 100%; } }
