/**
 * Site canvas — ONE continuous gradient per page (no per-section paint = no seams).
 */

:root {
	--garage-bg-base: #000000;
	--garage-bg-deep: #120c0e;
	--garage-red-glow: rgba(193, 18, 31, 0.26);
	--garage-red-mid: rgba(193, 18, 31, 0.12);
	--garage-black-glow: rgba(0, 0, 0, 0.82);
	--garage-shell-radius: clamp(1.25rem, 2vw, 1.9rem);
	--garage-image-frame-border: rgba(193, 18, 31, 0.42);
	--garage-image-frame-highlight: rgba(245, 245, 245, 0.1);

	/* Full-page canvas: overlapping zones alternate red L/R with no section breaks */
	--garage-page-canvas:
		radial-gradient(ellipse 120% 42% at -8% 10%, var(--garage-red-glow) 0%, var(--garage-red-mid) 38%, transparent 72%),
		radial-gradient(ellipse 110% 38% at 108% 14%, var(--garage-black-glow) 0%, transparent 68%),
		radial-gradient(ellipse 120% 42% at 108% 32%, var(--garage-red-glow) 0%, var(--garage-red-mid) 38%, transparent 72%),
		radial-gradient(ellipse 110% 38% at -8% 36%, var(--garage-black-glow) 0%, transparent 68%),
		radial-gradient(ellipse 120% 42% at -8% 54%, var(--garage-red-glow) 0%, var(--garage-red-mid) 38%, transparent 72%),
		radial-gradient(ellipse 110% 38% at 108% 58%, var(--garage-black-glow) 0%, transparent 68%),
		radial-gradient(ellipse 120% 42% at 108% 76%, var(--garage-red-glow) 0%, var(--garage-red-mid) 38%, transparent 72%),
		radial-gradient(ellipse 110% 38% at -8% 80%, var(--garage-black-glow) 0%, transparent 68%),
		radial-gradient(ellipse 130% 50% at 50% 95%, rgba(193, 18, 31, 0.08) 0%, transparent 62%),
		linear-gradient(180deg, var(--garage-bg-base) 0%, #050304 50%, var(--garage-bg-deep) 100%);
}

html {
	background-color: var(--garage-bg-deep) !important;
}

body {
	min-height: 100vh;
	background: var(--garage-page-canvas) !important;
	background-repeat: no-repeat !important;
	background-size: 100% 100% !important;
	background-attachment: scroll !important;
	color: var(--text-body);
}

.garage-site-main {
	overflow: visible !important;
	background: transparent !important;
}

/* Page shell — never paint background (one canvas on body only) */
.garage-page,
.garage-live-page,
article.garage-page {
	position: relative;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
}

.garage-page::before,
.garage-live-page::before,
article.garage-page::before {
	display: none !important;
	content: none !important;
}

.garage-page > section,
.garage-live-page > section,
.garage-page > *,
.garage-live-page > * {
	position: relative;
	z-index: 1;
}

/* STRICT — zero section backgrounds / pseudo layers (source of visible lines) */
.garage-page > section,
.garage-live-page > section {
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
	background: transparent !important;
	background-color: transparent !important;
	background-image: none !important;
}

.garage-page > section::before,
.garage-page > section::after,
.garage-live-page > section::before,
.garage-live-page > section::after {
	display: none !important;
	content: none !important;
	background: none !important;
}

.garage-page > section + section,
.garage-live-page > section + section {
	margin-top: 0 !important;
}

.garage-page > section.u-section,
.garage-live-page > section.u-section {
	padding-block: clamp(2.35rem, 5.25vw, 4.65rem) !important;
}

.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,
.garage-services-hero__bg {
	background: none !important;
}

.garage-site-footer {
	position: relative;
	z-index: 1;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

.garage-site-footer::before,
.garage-site-footer::after {
	display: none !important;
	content: none !important;
}

/* Image frames */
.garage-about-story-card__image-wrapper,
.garage-brand-panel__image-wrapper,
.garage-home-hero__visual,
.garage-story-hero__media,
.garage-rent-hero__video,
[class*="garage-"][class*="__image-wrapper"]:not(.garage-about-hero-image-wrapper) {
	box-sizing: border-box;
	border: 1px solid var(--garage-image-frame-border);
	border-radius: var(--garage-shell-radius);
	box-shadow:
		inset 0 0 0 1px var(--garage-image-frame-highlight),
		0 12px 36px rgba(0, 0, 0, 0.32);
}

.garage-page--about #garage-about-hero .garage-about-hero-panel {
	border: 1px solid var(--garage-form-input-border, rgba(193, 18, 31, 0.28)) !important;
	border-radius: var(--garage-shell-radius) !important;
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.28) !important;
	overflow: hidden;
}

.garage-page--about #garage-about-hero .garage-about-hero-image-wrapper {
	border: none !important;
	box-shadow: none !important;
	border-radius: 0 !important;
}

.garage-brand-panel__image-wrapper,
.garage-home-hero__visual,
.garage-story-hero__media,
.garage-rent-hero__video {
	border-radius: var(--garage-shell-radius);
}
