/*
 * GCR Dealer Theme intentionally provides no site design.
 *
 * Elementor owns header, footer, marketing/content pages and their widths.
 * The GCR Dealer Plugin owns inventory and dealer application interfaces.
 * Keep this file limited to neutral compatibility/reset rules and emergency
 * fallback presentation. Do not introduce global max-widths, typography,
 * colors, breakpoints, or component styling here.
 */

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
}

img {
	max-width: 100%;
	height: auto;
}

.gcr-theme-site,
.gcr-theme-main,
.gcr-theme-main--elementor {
	width: 100%;
}

.gcr-theme-main--elementor {
	margin: 0;
	padding: 0;
}

/*
 * Emergency fallback shell only. These selectors do not apply to Elementor
 * Theme Builder headers/footers or GCR Dealer Plugin inventory components.
 */
.gcr-theme-fallback {
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	color: #1f2937;
	background: #ffffff;
}

.gcr-theme-fallback__inner,
.gcr-theme-fallback-content {
	width: min(100% - 40px, 1200px);
	margin-inline: auto;
}

.gcr-theme-fallback--header {
	border-bottom: 1px solid #e5e7eb;
}

.gcr-theme-fallback--header .gcr-theme-fallback__inner {
	min-height: 72px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.gcr-theme-fallback__identity .custom-logo {
	display: block;
	width: auto;
	max-width: 220px;
	max-height: 52px;
}

.gcr-theme-fallback__site-title {
	color: inherit;
	font-size: 20px;
	font-weight: 700;
	text-decoration: none;
}

.gcr-theme-fallback__menu {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 20px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.gcr-theme-fallback__menu a {
	color: inherit;
	text-decoration: none;
}

.gcr-theme-fallback--footer {
	border-top: 1px solid #e5e7eb;
}

.gcr-theme-fallback--footer .gcr-theme-fallback__inner {
	padding-block: 24px;
	font-size: 14px;
}

.gcr-theme-main--fallback .gcr-theme-fallback-content {
	padding-block: 48px;
}

@media (max-width: 600px) {
	.gcr-theme-fallback__inner,
	.gcr-theme-fallback-content {
		width: min(100% - 32px, 1200px);
	}

	.gcr-theme-fallback--header .gcr-theme-fallback__inner {
		align-items: flex-start;
		flex-direction: column;
		padding-block: 16px;
	}
}
