/* Phase 6: presentation only. Native booking markup, data and handlers remain. */
body.vm-booking .vm-header-bg { display: none !important; }
body.vm-booking #content > .ast-container {
	max-width: none;
	padding-inline: var(--vm-gutter);
}
body.vm-booking :is(#primary, .site-main, article, .entry-content) {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
}
body.vm-booking .entry-header:empty { display: none !important; }

body.vm-booking .vma-booking {
	--vma-border: var(--vm-border) !important;
	--vma-soft-border: var(--vm-border) !important;
	--vma-text: var(--vm-ink) !important;
	--vma-muted: var(--vm-muted) !important;
	--vma-accent: var(--vm-blue) !important;
	--vma-accent-dark: var(--vm-blue-hover) !important;
	--vma-danger: var(--vm-error) !important;
	--vma-success: var(--vm-success) !important;
	max-width: var(--vm-width-booking);
	margin-inline: auto;
	padding: 0 !important;
	color: var(--vm-body) !important;
	font: 1rem/1.625 var(--vm-font);
}
body.vm-booking .vma-booking .vma-card {
	max-width: none !important;
	margin: 0 !important;
	padding: var(--vm-space-8) 0 var(--vm-space-12) !important;
	background: var(--vm-white) !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}
body.vm-booking .vma-booking .vma-heading {
	max-width: var(--vm-width-reading);
	margin: 0 !important;
	color: var(--vm-ink) !important;
	font: 700 2rem/1.25 var(--vm-font) !important;
	letter-spacing: -.02em;
}
body.vm-booking .vma-booking .vma-intro {
	max-width: var(--vm-width-reading) !important;
	margin: var(--vm-space-2) 0 var(--vm-space-8) !important;
	color: var(--vm-muted) !important;
	font: 1rem/1.625 var(--vm-font) !important;
}
body.vm-booking .vma-booking form {
	display: flex !important;
	flex-direction: column;
	gap: 0 !important;
	border-block-start: 1px solid var(--vm-border);
}
body.vm-booking .vma-booking .vma-section {
	margin: 0;
	padding: var(--vm-space-6) 0 !important;
	background: var(--vm-white) !important;
	border: 0 !important;
	border-block-end: 1px solid var(--vm-border) !important;
	border-radius: 0 !important;
}
body.vm-booking .vma-booking .vma-section-title {
	display: flex;
	align-items: baseline;
	gap: var(--vm-space-3);
	margin: 0 0 var(--vm-space-5) !important;
	color: var(--vm-ink) !important;
	font: 700 1.125rem/1.45 var(--vm-font) !important;
	letter-spacing: -.01em;
}
body.vm-booking .vma-booking .vma-section-title::before {
	flex: 0 0 auto;
	color: var(--vm-blue);
	font: 700 .75rem/1.5 var(--vm-font);
	letter-spacing: .08em;
}
body.vm-booking .vma-booking .vma-step-slot .vma-section-title::before { content: "01"; }
body.vm-booking .vma-booking .vma-step-contact .vma-section-title::before { content: "02"; }
body.vm-booking .vma-booking .vma-step-bike .vma-section-title::before { content: "03"; }

body.vm-booking .vma-booking :is(.vma-grid-2, .vma-stack, .vma-phone-fields) { gap: var(--vm-space-4) !important; }
body.vm-booking .vma-booking .vma-contact-phone { margin-top: var(--vm-space-4) !important; }
body.vm-booking .vma-booking label {
	gap: var(--vm-space-2) !important;
	color: var(--vm-ink) !important;
	font: 600 1rem/1.5 var(--vm-font) !important;
}
body.vm-booking .vma-booking :is(input[type="text"], input[type="email"], select, textarea) {
	min-height: 44px !important;
	padding: .625rem .75rem !important;
	background: var(--vm-white) !important;
	border: 1px solid var(--vm-control-border) !important;
	border-radius: var(--vm-control-radius) !important;
	box-shadow: none !important;
	color: var(--vm-ink) !important;
	font: 1rem/1.5 var(--vm-font) !important;
}
body.vm-booking .vma-booking textarea { min-height: 128px !important; }
body.vm-booking .vma-booking .vma-help {
	margin: var(--vm-space-2) 0 0 !important;
	color: var(--vm-muted) !important;
	font: .875rem/1.5 var(--vm-font) !important;
}

body.vm-booking .vma-booking .vma-calendar-wrap {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 16.5rem;
	grid-template-rows: auto auto auto 1fr;
	column-gap: var(--vm-space-8);
	row-gap: var(--vm-space-3);
	padding: 0 0 0 var(--vm-space-5) !important;
	background: var(--vm-white) !important;
	border: 0 !important;
	border-inline-start: 3px solid var(--vm-dark) !important;
	border-radius: 0 !important;
}
body.vm-booking .vma-booking .vma-calendar-top {
	grid-column: 1;
	margin: 0 !important;
}
body.vm-booking .vma-booking .vma-calendar-title {
	color: var(--vm-ink) !important;
	font: 700 1.125rem/1.4 var(--vm-font) !important;
}
body.vm-booking .vma-booking .vma-weekdays { grid-column: 1; }
body.vm-booking .vma-booking .vma-days { grid-column: 1; }
body.vm-booking .vma-booking :is(.vma-weekdays, .vma-days) { gap: var(--vm-space-1) !important; }
body.vm-booking .vma-booking .vma-weekday {
	padding: var(--vm-space-1) 0 !important;
	color: var(--vm-muted) !important;
	font: 700 .75rem/1.5 var(--vm-font) !important;
	letter-spacing: .04em;
	text-transform: uppercase;
}
body.vm-booking .vma-booking :is(.vma-nav, .vma-day, .vma-time) {
	min-width: 44px;
	min-height: 44px !important;
	border: 1px solid var(--vm-border) !important;
	border-radius: var(--vm-control-radius) !important;
	box-shadow: none !important;
	font-family: var(--vm-font) !important;
}
body.vm-booking .vma-booking .vma-nav {
	width: 44px !important;
	height: 44px !important;
	background: var(--vm-white) !important;
	color: var(--vm-ink) !important;
}
body.vm-booking .vma-booking .vma-nav:hover:not(:disabled) { background: var(--vm-surface) !important; border-color: var(--vm-blue) !important; }
body.vm-booking .vma-booking .vma-day {
	padding: 0 !important;
	background: var(--vm-white) !important;
	color: var(--vm-ink) !important;
	font-size: .875rem !important;
	font-weight: 600 !important;
}
body.vm-booking .vma-booking .vma-day:hover:not(:disabled):not([aria-disabled="true"]) { background: var(--vm-surface) !important; border-color: var(--vm-blue) !important; }
body.vm-booking .vma-booking .vma-day.is-selected {
	background: var(--vm-blue) !important;
	border-color: var(--vm-blue) !important;
	color: var(--vm-white) !important;
	box-shadow: inset 0 -3px 0 var(--vm-blue-active) !important;
}
body.vm-booking .vma-booking .vma-day.is-unavailable {
	background: var(--vm-white) !important;
	color: var(--vm-muted) !important;
	text-decoration: line-through;
	text-decoration-thickness: 1px;
}
body.vm-booking .vma-booking .vma-day:is(:disabled, [aria-disabled="true"]) { opacity: .48 !important; }
body.vm-booking .vma-booking .vma-times {
	grid-column: 2;
	grid-row: 2 / 5;
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-content: start;
	gap: var(--vm-space-2) !important;
	margin: 0 !important;
}
body.vm-booking .vma-booking .vma-time,
body.vm-booking .vma-booking .vma-calendar .vma-time {
	width: 100%;
	min-width: 0 !important;
	padding: .5rem .75rem !important;
	background: var(--vm-white) !important;
	color: var(--vm-ink) !important;
	-webkit-text-fill-color: var(--vm-ink) !important;
	font-size: 1rem !important;
	font-weight: 600 !important;
	font-variant-numeric: tabular-nums;
}
body.vm-booking .vma-booking .vma-time:hover { background: var(--vm-surface) !important; border-color: var(--vm-blue) !important; }
body.vm-booking .vma-booking .vma-time:is(.is-selected, .selected, [aria-pressed="true"]) {
	background: var(--vm-blue) !important;
	border-color: var(--vm-blue) !important;
	color: var(--vm-white) !important;
	-webkit-text-fill-color: var(--vm-white) !important;
	box-shadow: inset 0 -3px 0 var(--vm-blue-active) !important;
}
body.vm-booking .vma-booking .vma-selected-slot {
	grid-column: 2;
	grid-row: 1;
	margin: 0 !important;
	padding: 0 !important;
	color: var(--vm-muted) !important;
	font-size: .875rem;
	line-height: 1.5;
}

body.vm-booking .vma-booking .vma-consent {
	margin: 0;
	padding: var(--vm-space-5) 0;
	border-block-end: 1px solid var(--vm-border);
	font-weight: 400 !important;
}
body.vm-booking .vma-booking .vma-consent input {
	flex: 0 0 auto;
	width: 20px !important;
	height: 20px !important;
	margin: 2px 0 0 !important;
}
body.vm-booking .vma-booking .vma-submit {
	align-self: flex-start;
	min-height: 48px !important;
	margin-top: var(--vm-space-5);
	padding: .6875rem var(--vm-space-5) !important;
	background: var(--vm-blue) !important;
	border: 1px solid var(--vm-blue) !important;
	border-radius: var(--vm-control-radius) !important;
	box-shadow: none !important;
	color: var(--vm-white) !important;
	font: 600 1rem/1.5 var(--vm-font) !important;
}
body.vm-booking .vma-booking .vma-submit:hover { background: var(--vm-blue-hover) !important; border-color: var(--vm-blue-hover) !important; }
body.vm-booking .vma-booking .vma-submit:active { background: var(--vm-blue-active) !important; border-color: var(--vm-blue-active) !important; }
body.vm-booking .vma-booking .vma-submit:is(:disabled, [aria-disabled="true"]) { background: var(--vm-disabled) !important; border-color: var(--vm-border) !important; color: var(--vm-muted) !important; }
body.vm-booking .vma-booking .vma-submit:is([aria-busy="true"], .is-loading) { cursor: progress; }
body.vm-booking .vma-booking .vma-notice {
	margin: 0 0 var(--vm-space-5) !important;
	padding: var(--vm-space-3) var(--vm-space-4) !important;
	border-radius: 0 !important;
	border-width: 0 0 0 3px !important;
}
body.vm-booking .vma-booking .vma-notice-error { background: #fef3f2 !important; border-color: var(--vm-error) !important; color: var(--vm-error) !important; }
body.vm-booking .vma-booking .vma-notice-success { background: #ecfdf3 !important; border-color: var(--vm-success) !important; color: var(--vm-success) !important; }
body.vm-booking .vma-booking .vma-admin-diagnostic { border-radius: 0 !important; box-shadow: none !important; }

body.vm-booking .vma-booking :is(a, button, input, select, textarea):focus-visible {
	outline: 3px solid var(--vm-blue) !important;
	outline-offset: 3px !important;
	box-shadow: 0 0 0 3px var(--vm-white) !important;
}

@media (max-width: 839px) {
	body.vm-booking .vma-booking .vma-calendar-wrap {
		grid-template-columns: minmax(0, 1fr);
		grid-template-rows: auto;
		padding-inline-start: var(--vm-space-4) !important;
	}
	body.vm-booking .vma-booking :is(.vma-calendar-top, .vma-weekdays, .vma-days, .vma-times, .vma-selected-slot) {
		grid-column: 1;
		grid-row: auto;
	}
	body.vm-booking .vma-booking .vma-times {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		margin-top: var(--vm-space-2) !important;
	}
}

@media (max-width: 700px) {
	body.vm-booking .vma-booking .vma-card { padding: var(--vm-space-6) 0 var(--vm-space-10) !important; }
	body.vm-booking .vma-booking .vma-heading { font-size: 1.75rem !important; line-height: 1.214286 !important; }
	body.vm-booking .vma-booking .vma-intro { margin-bottom: var(--vm-space-6) !important; font-size: 1rem !important; }
	body.vm-booking .vma-booking .vma-section { padding: var(--vm-space-5) 0 !important; }
	body.vm-booking .vma-booking .vma-grid-2,
	body.vm-booking .vma-booking .vma-phone-fields { grid-template-columns: minmax(0, 1fr) !important; }
	body.vm-booking .vma-booking .vma-submit { align-self: stretch; width: 100% !important; }
}

@media (max-width: 479px) {
	body.vm-booking .vma-booking .vma-calendar-wrap { padding-inline-start: var(--vm-space-3) !important; }
	body.vm-booking .vma-booking :is(.vma-weekdays, .vma-days) { gap: 2px !important; }
	body.vm-booking .vma-booking .vma-day { min-width: 0; min-height: 44px !important; font-size: .8125rem !important; }
	body.vm-booking .vma-booking .vma-times { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (max-width: 359px) {
	body.vm-booking .vma-booking .vma-calendar-wrap {
		box-sizing: border-box;
		width: calc(100% + 2 * var(--vm-gutter));
		margin-inline: calc(-1 * var(--vm-gutter));
		padding-inline: 6px !important;
		border-inline-start: 0 !important;
	}
	body.vm-booking .vma-booking :is(.vma-weekdays, .vma-days) { gap: 1px !important; }
}
