/**
 * Garage Luxury — garagelive color scheme on current layout
 * Palette from garagelive theme; hero/forms/header match live site tones.
 */

:root {
	--luxe-logo: #c1121f;
	--luxe-black: #000000;
	--luxe-black-soft: #050505;
	--luxe-black-card: #111111;
	--luxe-smoke: rgba(245, 245, 245, 0.92);
	--luxe-smoke-mid: rgba(245, 245, 245, 0.62);
	--luxe-smoke-low: rgba(245, 245, 245, 0.38);
	--luxe-smoke-veil: rgba(245, 245, 245, 0.06);
	--luxe-smoke-border: rgba(245, 245, 245, 0.14);
	--luxe-red-glow: rgba(193, 18, 31, 0.22);
	--luxe-red-subtle: rgba(193, 18, 31, 0.12);
	--luxe-red-line: rgba(193, 18, 31, 0.55);
	--luxe-blood: #2b0205;
	--garage-red: #c1121f;
	--garage-red-dark: #9b0d18;

	--ease-luxe: cubic-bezier(0.22, 1, 0.36, 1);
	--ease-flow: cubic-bezier(0.4, 0, 0.2, 1);
	--duration-smooth: 0.55s;
	--duration-flow: 0.85s;

	--clr-primary-400: #ff4d57;
	--clr-primary-500: #c1121f;
	--clr-primary-600: #9b0d18;
	--clr-primary-700: #740912;
	--clr-primary-800: #4d050b;
	--clr-accent-400: #f5f5f5;
	--clr-accent-500: #e7e5e4;

	--garage-bg-start: #000000;
	--garage-bg-end: #120c0e;
	--garage-page-glow: rgba(193, 18, 31, 0.2);
	--garage-page-glow-2: rgba(245, 245, 245, 0.08);
	--garage-hero-orb-opacity: 0.12;

	--text-strong: var(--clr-accent-400);
	--text-body: rgba(245, 245, 245, 0.84);
	--text-soft: rgba(245, 245, 245, 0.62);
	--surface-border: var(--luxe-smoke-border);
	--surface-highlight: var(--luxe-red-subtle);
	--ring-focus: 0 0 0 2px rgba(193, 18, 31, 0.35);

	--surface-card: linear-gradient(160deg, rgba(193, 18, 31, 0.12), rgba(0, 0, 0, 0.96));
	--garage-form-surface: linear-gradient(
		160deg,
		rgba(193, 18, 31, 0.28) 0%,
		rgba(140, 14, 28, 0.14) 38%,
		rgba(12, 12, 12, 0.97) 72%,
		#000000 100%
	);
	--garage-form-input-bg: rgba(0, 0, 0, 0.35);
	--garage-form-input-border: rgba(193, 18, 31, 0.28);

	--garage-header-inner-bg: linear-gradient(
		180deg,
		rgba(193, 18, 31, 0.12),
		rgba(0, 0, 0, 0.04)
	);

	--shadow-elevation-1: 0 8px 30px rgba(0, 0, 0, 0.28);
	--shadow-elevation-2: 0 16px 45px rgba(0, 0, 0, 0.34);
	--shadow-elevation-3: 0 20px 60px rgba(0, 0, 0, 0.42);
}

:root[data-theme="light"] {
	color-scheme: dark;
}

/* ========== Canvas — continuous gradient (see site-canvas.css) ========== */
html {
	background: var(--garage-bg-end);
}

body {
	color: var(--text-body);
}

body::before {
	display: none;
}

/* No heavy red overlays on sections */
.garage-page > .u-section::before,
.garage-page > section.u-section::before,
.garage-hero-section::before {
	display: none;
}

::selection {
	background: rgba(193, 18, 31, 0.4);
	color: #ffffff;
}

/* ========== Header — smoke glass + red hairline ========== */
.garage-site-header__inner.u-glass,
.garage-site-header__inner {
	background: var(--garage-header-inner-bg) !important;
	border: 1px solid var(--luxe-smoke-border) !important;
	border-bottom: 1px solid var(--luxe-red-line) !important;
	box-shadow: var(--shadow-elevation-2) !important;
	backdrop-filter: blur(18px) saturate(1.1) !important;
	-webkit-backdrop-filter: blur(18px) saturate(1.1) !important;
	transition: box-shadow var(--duration-smooth) var(--ease-luxe), transform var(--duration-smooth) var(--ease-luxe);
}

.garage-site-header.is-floating .garage-site-header__inner {
	box-shadow: var(--shadow-elevation-3), 0 0 0 1px var(--luxe-red-subtle) !important;
}

.garage-site-header .garage-nav__link {
	color: var(--luxe-smoke-mid);
	transition: color var(--duration-smooth) var(--ease-luxe);
}

.garage-site-header .garage-nav__link:hover,
.garage-site-header .garage-nav__link.is-active {
	color: var(--luxe-smoke);
}

.garage-header-cta,
.garage-button--cta.garage-header-cta,
.garage-button--compact.garage-header-cta {
	background: linear-gradient(125deg, var(--clr-primary-400), var(--clr-primary-700)) !important;
	border: 1px solid transparent !important;
	color: var(--clr-accent-400) !important;
	box-shadow: 0 12px 30px rgba(193, 18, 31, 0.3) !important;
	transition: transform var(--duration-smooth) var(--ease-luxe), box-shadow var(--duration-smooth) var(--ease-luxe) !important;
}

.garage-header-cta::after,
.garage-button--cta.garage-header-cta::after {
	animation: none !important;
}

.garage-header-cta:hover,
.garage-button--cta.garage-header-cta:hover {
	transform: translateY(-2px);
	box-shadow: 0 18px 36px rgba(193, 18, 31, 0.42) !important;
	filter: saturate(1.08);
}

.garage-header-phone {
	color: var(--luxe-smoke) !important;
}

/* Mobile panel base — overridden in responsive block below */

/* ========== Hero backdrop — garagelive look, no white orb animation ========== */
/* Section gradients — site-canvas.css (alternating red/black per section) */
.garage-hero-section .garage-hero-backdrop,
.garage-page--about #garage-about-hero .garage-about-hero-backdrop,
.garage-page--contact .garage-contact-hero__bg,
.garage-page--services #garage-services-hero .garage-services-hero__backdrop {
	background: none;
}

.garage-hero-orb--primary,
.garage-about-hero-orb--primary,
.garage-services-hero__orb--1,
.garage-contact-hero__orb--1 {
	background: var(--clr-primary-400, #ff4d57) !important;
	opacity: var(--garage-hero-orb-opacity) !important;
	animation: none !important;
	filter: blur(80px);
}

.garage-hero-orb--secondary,
.garage-hero-orb--accent,
.garage-about-hero-orb--secondary,
.garage-about-hero-orb--accent,
.garage-services-hero__orb--2,
.garage-contact-hero__orb--2 {
	display: none !important;
}

.garage-hero-grid-pattern,
.garage-services-hero__grid {
	opacity: 0.3 !important;
	animation: none !important;
}

.garage-hero-headline,
.garage-about-hero__headline,
.garage-services-hero__title {
	background: none !important;
	-webkit-text-fill-color: unset !important;
}

/* Contact hero — no content background box; glow stays on section backdrop */
.garage-page--contact .garage-contact-hero__content {
	position: relative;
	isolation: isolate;
	background: transparent !important;
	box-shadow: none !important;
}

.garage-page--contact .garage-contact-hero__content::before {
	display: none !important;
}

.garage-page--contact .garage-contact-hero__tags {
	gap: var(--space-md) !important;
}

.garage-page--contact .garage-contact-hero__title {
	background: linear-gradient(
		135deg,
		#ffffff 0%,
		#f5f0f1 38%,
		#e85a66 72%,
		var(--clr-primary-500) 100%
	) !important;
	-webkit-background-clip: text !important;
	background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
	color: transparent;
	animation: luxeHeroTitleIn 1s var(--ease-luxe) both;
}

.garage-hero-headline__line:not(.garage-hero-headline__line--accent) {
	background: none !important;
	-webkit-background-clip: unset !important;
	background-clip: unset !important;
	-webkit-text-fill-color: #ffffff !important;
	color: #ffffff !important;
}

.garage-hero-headline__line--accent {
	background: linear-gradient(135deg, var(--clr-primary-400), var(--clr-accent-400)) !important;
	-webkit-background-clip: text !important;
	background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
}

.garage-pulse-dot {
	background: var(--clr-primary-400) !important;
	box-shadow: 0 0 12px rgba(193, 18, 31, 0.45);
	animation: luxePulseSoft 2.8s ease-in-out infinite;
}

.garage-hero-badge {
	border: 1px solid var(--luxe-smoke-border);
	background: rgba(255, 255, 255, 0.04);
}

/* ========== Buttons — smoke body, red accent ========== */
.garage-btn {
	border-radius: var(--radius-pill);
	font-weight: 600;
	letter-spacing: 0.03em;
	transition:
		transform var(--duration-smooth) var(--ease-luxe),
		box-shadow var(--duration-smooth) var(--ease-luxe),
		border-color var(--duration-smooth) var(--ease-luxe),
		background var(--duration-smooth) var(--ease-luxe);
}

.garage-btn--primary,
.garage-button--cta {
	background: linear-gradient(125deg, var(--clr-primary-400), var(--clr-primary-700)) !important;
	border: 1px solid transparent !important;
	color: var(--clr-accent-400) !important;
	box-shadow: 0 12px 30px rgba(193, 18, 31, 0.3) !important;
}

.garage-btn--primary:hover,
.garage-button--cta:hover {
	transform: translateY(-2px);
	box-shadow: 0 18px 36px rgba(193, 18, 31, 0.42) !important;
	filter: saturate(1.08);
}

.garage-btn--outline,
.garage-btn--outline-light {
	background: rgba(255, 255, 255, 0.03) !important;
	border: 1px solid var(--luxe-smoke-border) !important;
	color: var(--luxe-smoke) !important;
}

.garage-btn--outline:hover,
.garage-btn--outline-light:hover {
	background: rgba(255, 255, 255, 0.06) !important;
	border-color: var(--luxe-red-line) !important;
}

/* ========== Forms — logo red cap + blood depth, black base ========== */
.garage-live-page .garage-hero-form .gapark-card,
.garage-live-form-shell {
	background: var(--garage-form-surface) !important;
	border: 1px solid var(--luxe-smoke-border) !important;
	border-top: 2px solid var(--clr-primary-500) !important;
	box-shadow: var(--shadow-elevation-2), inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
}

/* Contact form — intro panel + animated shell */
.garage-page--contact .garage-contact-form-wrap {
	display: grid !important;
	gap: 0 !important;
	border-radius: var(--radius-lg, 1.1rem) !important;
	overflow: hidden;
	border: 1px solid var(--luxe-smoke-border) !important;
	background: var(--garage-form-surface) !important;
	box-shadow: var(--shadow-elevation-2), inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
}

.garage-page--contact .garage-contact-form-wrap.is-visible {
	animation: luxeFormShellIn 0.95s var(--ease-luxe) both;
}

.garage-page--contact .garage-contact-form-intro {
	position: relative;
	display: grid !important;
	gap: 0.85rem !important;
	margin: 0 !important;
	padding: clamp(1.5rem, 3.2vw, 2.35rem) clamp(1.5rem, 3.2vw, 2.35rem)
		clamp(1rem, 2vw, 1.25rem) !important;
	border: none !important;
	border-bottom: 1px solid rgba(193, 18, 31, 0.25) !important;
	background: linear-gradient(
		180deg,
		rgba(193, 18, 31, 0.14) 0%,
		rgba(0, 0, 0, 0.04) 100%
	) !important;
	overflow: hidden;
	isolation: isolate;
}

.garage-page--contact .garage-contact-form-intro::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
		105deg,
		transparent 35%,
		rgba(193, 18, 31, 0.14) 50%,
		transparent 65%
	);
	transform: translateX(-130%);
	animation: luxeEyebrowShine 5.5s var(--ease-luxe) infinite;
	pointer-events: none;
	z-index: 0;
}

.garage-page--contact .garage-contact-form-intro > * {
	position: relative;
	z-index: 1;
}

.garage-page--contact .garage-contact-form-intro__eyebrow {
	opacity: 0;
}

.garage-page--contact .garage-contact-form-intro__title {
	margin: 0 !important;
	padding: 0 !important;
	font-family: var(--ff-heading);
	font-size: clamp(1.35rem, 2.8vw, 1.75rem) !important;
	line-height: 1.2 !important;
	letter-spacing: -0.02em;
	color: var(--luxe-smoke) !important;
	opacity: 0;
}

.garage-page--contact .garage-contact-form-wrap.is-visible .garage-contact-form-intro__eyebrow {
	animation: luxeFormIntroPart 0.8s var(--ease-luxe) 0.12s forwards;
}

.garage-page--contact .garage-contact-form-wrap.is-visible .garage-contact-form-intro__title {
	animation: luxeFormIntroPart 0.85s var(--ease-luxe) 0.28s forwards;
}

.garage-page--contact .garage-contact-form-wrap .garage-live-form-shell,
.garage-page--contact .garage-contact-form-wrap .garage-contact-cf7-shell {
	border: none !important;
	border-radius: 0 !important;
	border-top: none !important;
	box-shadow: none !important;
	padding: clamp(1.25rem, 2.5vw, 2rem) clamp(1.5rem, 3.2vw, 2.35rem)
		clamp(1.5rem, 3vw, 2.35rem) !important;
}


.garage-live-page .garage-hero-form .gapark-card::before {
	display: none;
}

.garage-live-page .garage-hero-form .gapark-card input:focus,
.garage-live-page .garage-hero-form .gapark-card select:focus,
.garage-live-page .garage-hero-form .gapark-card textarea:focus {
	border-color: rgba(193, 18, 31, 0.55) !important;
	box-shadow: 0 0 0 2px rgba(193, 18, 31, 0.2) !important;
}

.garage-live-page .garage-hero-form button[type="submit"],
.garage-live-page .garage-hero-form .gapark-card button,
.garage-live-page .garage-contact-cf7-shell input[type="submit"],
.garage-live-page .garage-contact-cf7-shell .wpcf7-submit,
.garage-live-page .garage-contact-inquiry__submit {
	background: linear-gradient(125deg, var(--clr-primary-400), var(--clr-primary-700)) !important;
	border: 1px solid transparent !important;
	color: #fff !important;
	box-shadow: 0 12px 30px rgba(193, 18, 31, 0.3) !important;
}

/* ========== Cards — smoke on black ========== */
.u-glass,
.garage-panel,
.garage-stat-card,
.garage-service-card--modern,
.garage-step-card--modern,
.garage-proof-card-modern,
.garage-service-item__inner,
.garage-about-hero-panel,
.garage-rent-vehicle-card,
.garage-contact-info__card,
.garage-review-card {
	background: var(--surface-card) !important;
	border: 1px solid var(--luxe-smoke-border) !important;
	box-shadow: var(--shadow-elevation-1) !important;
	transition:
		transform var(--duration-flow) var(--ease-luxe),
		box-shadow var(--duration-flow) var(--ease-luxe),
		border-color var(--duration-smooth) var(--ease-luxe);
}

.garage-stat-card:hover,
.garage-service-card--modern:hover,
.garage-step-card--modern:hover,
.garage-proof-card-modern:hover,
.garage-review-card:hover {
	transform: translateY(-4px);
	border-color: rgba(193, 18, 31, 0.28) !important;
	box-shadow: var(--shadow-elevation-2) !important;
}

.garage-stat-card__value,
.garage-stat-card__value-inner {
	background: linear-gradient(180deg, #ffffff 0%, rgba(193, 18, 31, 0.85) 100%) !important;
	-webkit-background-clip: text !important;
	background-clip: text !important;
	-webkit-text-fill-color: transparent !important;
}

/* ========== Typography — compact luxe eyebrows ========== */
.u-eyebrow {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: flex-start !important;
	gap: 0.5rem !important;
	width: fit-content !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0.55rem 1.15rem 0.55rem 0.95rem !important;
	border-radius: 999px !important;
	background: linear-gradient(
		135deg,
		rgba(193, 18, 31, 0.16) 0%,
		rgba(255, 255, 255, 0.05) 45%,
		rgba(0, 0, 0, 0.35) 100%
	) !important;
	border: 1px solid rgba(193, 18, 31, 0.38) !important;
	box-shadow:
		0 0 28px rgba(193, 18, 31, 0.14),
		inset 0 1px 0 rgba(255, 255, 255, 0.07) !important;
	color: var(--luxe-smoke-mid) !important;
	font-size: 0.72rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	line-height: 1.2 !important;
	position: relative !important;
	overflow: hidden !important;
	isolation: isolate;
	animation: luxeEyebrowIn 0.9s var(--ease-luxe) both;
}

.u-eyebrow::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(
		105deg,
		transparent 38%,
		rgba(193, 18, 31, 0.22) 50%,
		transparent 62%
	);
	transform: translateX(-130%);
	animation: luxeEyebrowShine 4.5s var(--ease-luxe) infinite;
	pointer-events: none;
}

.u-eyebrow svg {
	flex-shrink: 0;
	color: var(--luxe-logo) !important;
	filter: drop-shadow(0 0 8px rgba(193, 18, 31, 0.45));
}

.garage-about-story-content > .u-eyebrow,
.garage-story-panel > .u-eyebrow {
	justify-self: start;
}

.garage-section-header,
.garage-section-head {
	text-align: center;
	justify-items: center;
}

.garage-section-header > .u-eyebrow,
.garage-section-head > .u-eyebrow,
.garage-rent-cta-banner__content > .u-eyebrow {
	justify-self: center;
	margin-inline: auto;
}

.garage-section-title,
.garage-section-header h2 {
	color: var(--luxe-smoke);
}

.garage-section-header .garage-section-title,
.garage-section-head .garage-section-title,
.garage-section-head h2 {
	position: relative;
	display: inline-block;
	max-width: 28ch;
	text-wrap: balance;
}

.garage-section-header .garage-section-title::before,
.garage-section-head .garage-section-title::before,
.garage-section-head h2::before {
	display: none;
	content: none;
}

.garage-section-header .garage-section-title::after,
.garage-section-head .garage-section-title::after,
.garage-section-head h2::after {
	content: "";
	display: block;
	width: 3rem;
	height: 2px;
	margin: 0.85rem auto 0;
	background: linear-gradient(90deg, transparent, var(--clr-primary-500), transparent);
	border-radius: 999px;
	opacity: 0.85;
}

.garage-section-header::after {
	display: none;
}

/* ========== CTA — dark smoke, red edge only (not .garage-last-cta — see page-end-cta.css) ========== */
.garage-cta-block__inner,
.garage-cta-block--flat,
.garage-rent-cta-banner {
	background: linear-gradient(
		180deg,
		rgba(255, 255, 255, 0.05) 0%,
		rgba(17, 17, 17, 0.95) 30%,
		#000000 100%
	) !important;
	border: 1px solid var(--luxe-smoke-border) !important;
	border-left: 3px solid var(--clr-primary-500) !important;
	box-shadow: var(--shadow-elevation-2) !important;
}

.garage-cta-block__inner::before {
	display: none;
}

/* ========== Grids ========== */
.garage-service-grid--modern {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: clamp(1rem, 2vw, 1.5rem) !important;
}

@media (max-width: 1023px) {
	.garage-service-grid--modern {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 560px) {
	.garage-service-grid--modern {
		grid-template-columns: 1fr !important;
	}
}

.garage-service-card--modern {
	min-width: 0;
	position: relative;
}

.garage-steps-track {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(1rem, 2vw, 1.5rem);
}

@media (max-width: 900px) {
	.garage-steps-track {
		grid-template-columns: 1fr;
	}
}

.garage-live-page .garage-stat-grid--modern {
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

/* ========== Reviews — marquee (reviews-carousel.css) ========== */
.garage-reviews-section {
	overflow: hidden;
	background: transparent !important;
}

.garage-reviews-carousel-shell,
.garage-reviews-carousel.owl-carousel {
	display: none !important;
}

/* ========== Footer ========== */
.garage-site-footer {
	background: transparent;
	border-top: 1px solid var(--luxe-smoke-border);
}

.garage-site-footer a:hover {
	color: var(--clr-primary-500);
}

/* ========== Hero trust lines — borderless, animated ========== */
.garage-hero-features {
	display: flex !important;
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 0.55rem !important;
	margin-block: 0 !important;
}

.garage-hero-feature-item {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.7rem !important;
	width: auto !important;
	max-width: 38rem !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--luxe-smoke-mid) !important;
	font-size: clamp(0.88rem, 1.4vw, 0.95rem) !important;
	line-height: 1.45 !important;
	opacity: 0;
	transform: translateX(-0.65rem);
	animation: luxeFeatureIn 0.8s var(--ease-luxe) forwards;
}

.garage-hero-feature-item:nth-child(1) {
	animation-delay: 0.12s;
}

.garage-hero-feature-item:nth-child(2) {
	animation-delay: 0.24s;
}

.garage-hero-feature-item:nth-child(3) {
	animation-delay: 0.36s;
}

.garage-hero-feature-item:nth-child(4) {
	animation-delay: 0.48s;
}

.garage-hero-feature-icon {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-shrink: 0 !important;
	width: 1.4rem !important;
	height: 1.4rem !important;
	color: var(--luxe-logo) !important;
	background: rgba(193, 18, 31, 0.14) !important;
	border-radius: 50% !important;
	box-shadow: 0 0 14px rgba(193, 18, 31, 0.35) !important;
	animation: luxeCheckPulse 3.2s ease-in-out infinite;
}

.garage-hero-feature-icon svg {
	width: 0.85rem;
	height: 0.85rem;
}

/* Service / contact tags — subtle pills only */
.garage-tag {
	display: inline-flex !important;
	align-items: center !important;
	gap: 0.4rem !important;
	width: fit-content !important;
	padding: 0.45rem 0.9rem !important;
	margin: 0 !important;
	background: rgba(255, 255, 255, 0.04) !important;
	border: 1px solid rgba(193, 18, 31, 0.22) !important;
	border-radius: 999px !important;
	color: var(--luxe-smoke-mid) !important;
	font-size: 0.82rem !important;
	transition:
		border-color var(--duration-smooth) var(--ease-luxe),
		box-shadow var(--duration-smooth) var(--ease-luxe),
		transform var(--duration-smooth) var(--ease-luxe);
}

.garage-tag:hover {
	border-color: var(--luxe-red-line) !important;
	box-shadow: 0 0 20px rgba(193, 18, 31, 0.2) !important;
	transform: translateY(-1px);
}

/* Check lists — clean vertical rhythm */
.garage-check-list--modern {
	display: grid !important;
	gap: 0.85rem !important;
	margin-block: 0.35rem 0 !important;
	padding: 0 !important;
}

.garage-check-list--modern li {
	display: flex !important;
	align-items: flex-start !important;
	gap: 0.75rem !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	border: none !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--luxe-smoke-mid) !important;
	font-size: clamp(0.88rem, 1.4vw, 0.95rem) !important;
	line-height: 1.5 !important;
	opacity: 0;
	transform: translateY(0.55rem);
}

.garage-check-list--modern li::before {
	display: none !important;
}

.garage-check-list--modern li svg {
	flex-shrink: 0;
	margin-block-start: 0.15rem;
	color: var(--luxe-logo) !important;
	filter: drop-shadow(0 0 10px rgba(193, 18, 31, 0.4));
}

.is-visible .garage-check-list--modern li {
	animation: luxeListIn 0.75s var(--ease-luxe) forwards;
}

.is-visible .garage-check-list--modern li:nth-child(1) {
	animation-delay: 0.08s;
}

.is-visible .garage-check-list--modern li:nth-child(2) {
	animation-delay: 0.18s;
}

.is-visible .garage-check-list--modern li:nth-child(3) {
	animation-delay: 0.28s;
}

.is-visible .garage-check-list--modern li:nth-child(4) {
	animation-delay: 0.38s;
}

.is-visible .garage-check-list--modern li:nth-child(5) {
	animation-delay: 0.48s;
}

/* ========== Scroll reveal — smooth ========== */
[data-scroll-animate] {
	transition:
		opacity var(--duration-flow) var(--ease-luxe),
		transform var(--duration-flow) var(--ease-luxe);
}

[data-scroll-animate="fade-up"]:not(.is-visible) {
	opacity: 0;
	transform: translateY(1.25rem);
}

[data-scroll-animate="fade-left"]:not(.is-visible) {
	opacity: 0;
	transform: translateX(1.25rem);
}

[data-scroll-animate="fade-right"]:not(.is-visible) {
	opacity: 0;
	transform: translateX(-1.25rem);
}

/* ========== Keyframes — gentle ========== */
@keyframes luxeOrbDrift {
	0% {
		transform: translate(0, 0) scale(1);
	}
	100% {
		transform: translate(2%, 3%) scale(1.04);
	}
}

@keyframes luxePulseSoft {
	0%,
	100% {
		opacity: 1;
		transform: scale(1);
	}
	50% {
		opacity: 0.85;
		transform: scale(1.08);
	}
}

@keyframes luxeEyebrowIn {
	from {
		opacity: 0;
		transform: translateY(0.5rem);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes luxeEyebrowShine {
	0%,
	72% {
		transform: translateX(-130%);
	}
	100% {
		transform: translateX(130%);
	}
}

@keyframes luxeFeatureIn {
	from {
		opacity: 0;
		transform: translateX(-0.65rem);
	}
	to {
		opacity: 1;
		transform: translateX(0);
	}
}

@keyframes luxeListIn {
	from {
		opacity: 0;
		transform: translateY(0.55rem);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes luxeCheckPulse {
	0%,
	100% {
		box-shadow: 0 0 10px rgba(193, 18, 31, 0.28);
	}
	50% {
		box-shadow: 0 0 18px rgba(193, 18, 31, 0.5);
	}
}

@keyframes luxeHeroVeilPulse {
	from {
		opacity: 0.75;
		transform: scale(1);
	}
	to {
		opacity: 1;
		transform: scale(1.04);
	}
}

@keyframes luxeHeroTitleIn {
	from {
		opacity: 0;
		transform: translateY(0.75rem);
		filter: blur(4px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
		filter: blur(0);
	}
}

@keyframes luxeFormShellIn {
	from {
		opacity: 0;
		transform: translateY(1.25rem);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes luxeFormIntroPart {
	from {
		opacity: 0;
		transform: translateY(0.65rem);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* ========== Responsive — heroes + mobile navigation ========== */
@media (max-width: 1023px) {
	.garage-site-header__inner {
		padding: 0.65rem 0.85rem !important;
		gap: 0.5rem !important;
	}

	.garage-header-cta {
		padding: 0.5rem 0.7rem !important;
		font-size: 0.72rem !important;
		white-space: nowrap;
	}

	.garage-page,
	.garage-live-page {
		overflow-x: clip;
	}

	.garage-hero-cta-group,
	.garage-about-hero__actions,
	.garage-services-hero__actions {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch !important;
		gap: var(--space-sm) !important;
		width: 100%;
	}

	.garage-hero-cta-group .garage-btn,
	.garage-about-hero__actions .garage-btn,
	.garage-services-hero__actions .garage-btn {
		width: 100%;
		justify-content: center;
	}

	.garage-live-page .garage-stat-grid--modern,
	.garage-service-grid--modern {
		grid-template-columns: 1fr !important;
	}

	.garage-contact-grid {
		grid-template-columns: 1fr !important;
	}

	.garage-dual-grid--modern {
		grid-template-columns: 1fr !important;
	}
}

@media (max-width: 1023px) {
	[data-menu-overlay],
	.garage-overlay {
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
		background: rgba(0, 0, 0, 0.5) !important;
	}

	[data-menu-panel].garage-mobile-panel,
	.garage-mobile-panel.u-glass,
	.garage-mobile-panel {
		width: min(21rem, 100vw) !important;
		padding: calc(var(--header-height, 5.25rem) + 0.75rem) 1.15rem 1.35rem !important;
		background: linear-gradient(
			180deg,
			#2a1a1e 0%,
			#1a1014 55%,
			#120a0c 100%
		) !important;
		border-left: 3px solid var(--clr-primary-400) !important;
		box-shadow: -16px 0 48px rgba(0, 0, 0, 0.45) !important;
		color: #f5f5f5 !important;
		backdrop-filter: none !important;
		-webkit-backdrop-filter: none !important;
	}

	.garage-mobile-panel__header {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		gap: 0.75rem;
		padding-bottom: 1rem !important;
		margin-bottom: 0.75rem !important;
		border-bottom: 1px solid rgba(245, 245, 245, 0.14) !important;
	}

	.garage-mobile-panel__brand {
		display: grid;
		gap: 0.35rem;
		min-width: 0;
	}

	.garage-mobile-panel__brand strong {
		color: #ffffff !important;
		font-size: 0.95rem !important;
	}

	.garage-mobile-panel .garage-inline-feedback {
		color: rgba(245, 245, 245, 0.72) !important;
		font-size: 0.8rem !important;
	}

	.garage-mobile-panel .garage-nav__list {
		display: grid !important;
		gap: 0.55rem !important;
		margin: 0 !important;
		padding: 0 !important;
		list-style: none !important;
	}

	.garage-mobile-panel .garage-nav__link {
		display: flex !important;
		align-items: center;
		width: 100%;
		padding: 0.85rem 1rem !important;
		border-radius: 0.75rem !important;
		background: rgba(255, 255, 255, 0.1) !important;
		border: 1px solid rgba(245, 245, 245, 0.2) !important;
		color: #ffffff !important;
		font-size: 1rem !important;
		font-weight: 600 !important;
		text-decoration: none !important;
		box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
	}

	.garage-mobile-panel .garage-nav__link:hover,
	.garage-mobile-panel .garage-nav__link:focus-visible,
	.garage-mobile-panel .garage-nav__link.is-active {
		background: rgba(193, 18, 31, 0.35) !important;
		border-color: rgba(255, 77, 87, 0.55) !important;
		color: #ffffff !important;
	}

	.garage-mobile-panel [data-menu-close],
	.garage-mobile-panel .garage-icon-button {
		flex-shrink: 0;
		width: 2.5rem;
		height: 2.5rem;
		border-radius: 0.5rem !important;
		background: rgba(255, 255, 255, 0.12) !important;
		border: 1px solid rgba(255, 255, 255, 0.28) !important;
		color: #ffffff !important;
	}

	.garage-mobile-panel__meta {
		display: grid !important;
		gap: 0.65rem !important;
		margin-top: 1rem !important;
		padding-top: 1rem !important;
		border-top: 1px solid rgba(245, 245, 245, 0.12);
	}

	.garage-mobile-panel__meta .garage-header-phone {
		display: flex !important;
		justify-content: center;
		padding: 0.75rem 1rem !important;
		border-radius: 0.75rem !important;
		background: rgba(255, 255, 255, 0.08) !important;
		border: 1px solid rgba(245, 245, 245, 0.18) !important;
		color: #f5f5f5 !important;
		text-decoration: none !important;
	}

	.garage-mobile-panel__meta .garage-header-cta {
		width: 100%;
		justify-content: center;
	}

	body.is-menu-open {
		overflow: hidden;
		touch-action: none;
	}

	body.is-menu-open .garage-site-header {
		z-index: calc(var(--layer-z-menu, 75) + 5);
	}
}

@media (max-width: 767px) {
	.u-container,
	.garage-hero-container {
		width: min(100% - 1.25rem, 76rem) !important;
		max-width: 100% !important;
	}

	.garage-brand__logo {
		max-width: clamp(6.5rem, 28vw, 9rem);
		height: auto;
	}

	.garage-header-phone {
		display: none !important;
	}

	.garage-cta-block--flat,
	.garage-cta-block__inner {
		grid-template-columns: 1fr !important;
		padding: var(--space-xl) !important;
	}

	.garage-cta-block__actions {
		flex-direction: column !important;
		align-items: stretch !important;
		width: 100%;
	}

	.garage-cta-block__actions .garage-btn {
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}

	body {
		background-attachment: scroll !important;
	}

	.garage-reviews-carousel.owl-carousel .owl-item {
		opacity: 1;
		transform: none;
	}
}
