/* ================================================================
   Damage Fix v0.8.3 — Premium RepairHub Quotation Page
   Scoped to body.hnc-df-quote-page.
   ================================================================ */

.hnc-brand-damage-fix.hnc-df-quote-page {
	--hnc-df-quote-navy: #0d2944;
	--hnc-df-quote-navy-2: #173f62;
	--hnc-df-quote-orange: #f47a1f;
	--hnc-df-quote-orange-dark: #c95200;
	--hnc-df-quote-soft: #f4f8fb;
	--hnc-df-quote-border: #dbe5ec;
	--hnc-df-quote-muted: #5b6c7a;
}

.hnc-brand-damage-fix.hnc-df-quote-page .hnc-main {
	width: 100%;
	max-width: none;
	margin: 0;
	padding-block: 0 !important;
}

.hnc-brand-damage-fix.hnc-df-quote-page .wp-block-post-content,
.hnc-brand-damage-fix .hnc-df-quote-page-wrap {
	width: 100%;
	max-width: none;
	margin: 0;
}

.hnc-brand-damage-fix .hnc-df-quote-page-wrap > * {
	width: min(calc(100% - (2 * var(--hnc-df-page-gutter))), var(--hnc-df-wide-width));
	margin-inline: auto;
}

.hnc-brand-damage-fix.hnc-df-quote-page .hnc-df-footer-callout {
	display: none;
}

.hnc-df-quote-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1.45fr) minmax(18rem, 0.75fr);
	gap: clamp(1.4rem, 4vw, 3rem);
	align-items: center;
	overflow: hidden;
	margin-block: 0 clamp(2.2rem, 5vw, 4rem);
	border-radius: var(--hnc-df-radius-xl);
	background:
		radial-gradient(circle at 88% 12%, rgb(244 122 31 / 0.28), transparent 20rem),
		linear-gradient(135deg, #0a243c 0%, #123a5c 60%, #245b82 100%);
	box-shadow: var(--hnc-df-shadow-feature);
	padding: clamp(2rem, 5vw, 4.4rem);
}

.hnc-df-quote-hero::after {
	position: absolute;
	right: -6rem;
	bottom: -10rem;
	width: 24rem;
	height: 24rem;
	border: 2px solid rgb(255 255 255 / 0.08);
	border-radius: 50%;
	content: "";
	pointer-events: none;
}

.hnc-df-quote-hero > * { position: relative; z-index: 1; }
.hnc-df-quote-hero .hnc-df-eyebrow { color: #ffd1ae !important; }

.hnc-df-quote-hero h1 {
	max-width: 13ch;
	margin: 0 0 1rem;
	color: #fff;
	font-size: clamp(3rem, 6vw, 5.4rem);
	font-weight: 880;
	letter-spacing: -0.06em;
	line-height: 0.98;
}

.hnc-df-quote-lead {
	max-width: 760px;
	margin: 0;
	color: rgb(255 255 255 / 0.92);
	font-size: clamp(1.08rem, 1.8vw, 1.3rem);
	line-height: 1.65;
}

.hnc-df-quote-hero-actions { margin-block-start: 1.35rem; }
.hnc-df-quote-hero .is-style-hnc-df-secondary .wp-block-button__link {
	border-color: rgb(255 255 255 / 0.68);
	color: #fff !important;
}

.hnc-df-quote-hero-proof {
	display: grid;
	gap: 0.75rem;
}

.hnc-df-quote-hero-proof > div {
	border: 1px solid rgb(255 255 255 / 0.16);
	border-radius: 0.85rem;
	background: rgb(255 255 255 / 0.08);
	backdrop-filter: blur(8px);
	padding: 0.95rem 1rem;
}

.hnc-df-quote-hero-proof strong,
.hnc-df-quote-hero-proof span { display: block; }
.hnc-df-quote-hero-proof strong { color: #fff; font-size: 0.98rem; }
.hnc-df-quote-hero-proof span { margin-top: 0.18rem; color: rgb(255 255 255 / 0.72); font-size: 0.82rem; line-height: 1.45; }

.hnc-df-quote-section-head { max-width: 900px; margin-bottom: 1.3rem; }
.hnc-df-quote-section-head h2,
.hnc-df-quote-form-intro h2 {
	margin: 0 0 0.65rem;
	color: var(--hnc-df-quote-navy);
	font-size: var(--hnc-df-h2);
	font-weight: 850;
	letter-spacing: -0.04em;
	line-height: 1.08;
}
.hnc-df-quote-section-head > p:last-child,
.hnc-df-quote-form-intro > div > p:last-child { margin: 0; color: var(--hnc-df-quote-muted); line-height: 1.68; }

.hnc-df-quote-prep,
.hnc-df-quote-next,
.hnc-df-quote-roles,
.hnc-df-quote-journey,
.hnc-df-quote-vehicles,
.hnc-df-quote-services,
.hnc-df-quote-environment,
.hnc-df-quote-photos,
.hnc-df-quote-why,
.hnc-df-quote-repairer-banner,
.hnc-df-quote-faq,
.hnc-df-quote-final,
.hnc-df-quote-disclaimer {
	margin-block: var(--hnc-df-section-gap);
}

.hnc-df-quote-prep {
	border: 1px solid var(--hnc-df-quote-border);
	border-radius: var(--hnc-df-radius-xl);
	background: linear-gradient(135deg, #f8fbfd, #eef5f9);
	box-shadow: 0 14px 34px rgb(13 41 68 / 0.05);
	padding: var(--hnc-df-section-pad);
}

.hnc-df-quote-prep-grid,
.hnc-df-quote-next-grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 0.8rem;
}

.hnc-df-quote-prep-grid article,
.hnc-df-quote-next-grid article {
	border: 1px solid var(--hnc-df-quote-border);
	border-radius: 0.85rem;
	background: #fff;
	box-shadow: 0 8px 20px rgb(13 41 68 / 0.04);
	padding: 1rem;
}

.hnc-df-quote-prep-grid span,
.hnc-df-quote-next-grid span,
.hnc-df-quote-journey-grid span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.1rem;
	height: 2.1rem;
	margin-bottom: 0.6rem;
	border-radius: 50%;
	background: var(--hnc-df-quote-orange);
	color: #15212a;
	font-weight: 900;
}

.hnc-df-quote-prep-grid h3,
.hnc-df-quote-next-grid h3 { margin: 0 0 0.35rem; color: var(--hnc-df-quote-navy); font-size: 1rem; }
.hnc-df-quote-prep-grid p,
.hnc-df-quote-next-grid p { margin: 0; color: var(--hnc-df-quote-muted); font-size: 0.85rem; line-height: 1.55; }

.hnc-df-quote-form-section {
	width: min(calc(100% - (2 * var(--hnc-df-page-gutter))), 1240px) !important;
	margin-block: var(--hnc-df-section-gap);
	scroll-margin-top: 7rem;
}

.hnc-df-quote-form-intro {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(15rem, 0.38fr);
	gap: 1rem;
	align-items: end;
	margin-bottom: 1rem;
}

.hnc-df-quote-form-security {
	border-left: 4px solid var(--hnc-df-quote-orange);
	border-radius: 0 0.75rem 0.75rem 0;
	background: #fff6ee;
	padding: 0.85rem 1rem;
}
.hnc-df-quote-form-security strong,
.hnc-df-quote-form-security span { display: block; }
.hnc-df-quote-form-security strong { color: var(--hnc-df-quote-navy); }
.hnc-df-quote-form-security span { margin-top: 0.18rem; color: var(--hnc-df-quote-muted); font-size: 0.84rem; line-height: 1.5; }

.hnc-df-quote-form-shell {
	overflow: hidden;
	border: 1px solid #d5e0e8;
	border-radius: 1.15rem;
	background: #fff;
	box-shadow: 0 22px 58px rgb(13 41 68 / 0.10);
	padding: clamp(0.85rem, 2.4vw, 1.7rem);
}

.hnc-df-quote-form-shell form { width: 100%; max-width: none; margin: 0; }
.hnc-df-quote-form-shell :where(input, select, textarea, button) { scroll-margin-top: 7rem; }
.hnc-df-quote-form-shell :where(input:not([type="checkbox"]):not([type="radio"]):not([type="file"]), select, textarea) { max-width: 100%; }
.hnc-df-quote-form-shell :where(button, input[type="submit"]) { min-height: 3rem; }

.hnc-df-quote-next {
	border-top: 1px solid var(--hnc-df-quote-border);
	border-bottom: 1px solid var(--hnc-df-quote-border);
	padding-block: var(--hnc-df-section-gap);
}

.hnc-df-quote-roles .hnc-df-card { position: relative; }
.hnc-df-quote-card-label {
	align-self: flex-start;
	margin: 0 0 0.6rem !important;
	border-radius: 999px;
	background: #fff0e4;
	color: var(--hnc-df-quote-orange-dark) !important;
	padding: 0.28rem 0.55rem;
	font-size: 0.68rem !important;
	font-weight: 850;
	letter-spacing: 0.06em;
	line-height: 1.2 !important;
	text-transform: uppercase;
}

.hnc-df-quote-journey {
	border-radius: var(--hnc-df-radius-xl);
	background:
		radial-gradient(circle at 88% 18%, rgb(244 122 31 / 0.08), transparent 18rem),
		linear-gradient(135deg, #f7fafc, #eef5f9);
	padding: var(--hnc-df-section-pad);
}

.hnc-df-quote-journey-grid {
	position: relative;
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 0.75rem;
}
.hnc-df-quote-journey-grid::before {
	position: absolute;
	top: 1.05rem;
	left: 7%;
	right: 7%;
	height: 2px;
	background: linear-gradient(90deg, var(--hnc-df-quote-orange), #ffc08e, var(--hnc-df-quote-orange));
	content: "";
}
.hnc-df-quote-journey-grid > div { position: relative; z-index: 1; border-radius: 0.8rem; background: #fff; box-shadow: 0 8px 20px rgb(13 41 68 / 0.05); padding: 1rem; }
.hnc-df-quote-journey-grid span { box-shadow: 0 0 0 5px #fff; }
.hnc-df-quote-journey-grid strong { display: block; color: var(--hnc-df-quote-navy); }
.hnc-df-quote-journey-grid p { margin: 0.3rem 0 0; color: var(--hnc-df-quote-muted); font-size: 0.83rem; line-height: 1.5; }

.hnc-df-quote-vehicle-grid,
.hnc-df-quote-benefit-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.hnc-df-quote-vehicle-grid article,
.hnc-df-quote-benefit-grid article {
	border: 1px solid var(--hnc-df-quote-border);
	border-radius: 1rem;
	background: #fff;
	box-shadow: 0 10px 26px rgb(13 41 68 / 0.05);
	padding: 1.25rem;
}
.hnc-df-quote-vehicle-grid h3,
.hnc-df-quote-benefit-grid h3 { margin: 0 0 0.45rem; color: var(--hnc-df-quote-navy); }
.hnc-df-quote-vehicle-grid p:not(.hnc-df-quote-card-label),
.hnc-df-quote-benefit-grid p { color: var(--hnc-df-quote-muted); line-height: 1.62; }
.hnc-df-quote-vehicle-grid a { display: inline-block; margin: 0.2rem 0.8rem 0 0; font-weight: 750; }

.hnc-df-quote-services,
.hnc-df-quote-why { border-top: 1px solid var(--hnc-df-quote-border); padding-top: var(--hnc-df-section-gap); }

.hnc-df-quote-environment {
	border-radius: var(--hnc-df-radius-xl);
	background: #f4f8fb;
	padding: var(--hnc-df-section-pad);
}
.hnc-df-quote-compare-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.hnc-df-quote-compare-grid article { border: 1px solid var(--hnc-df-quote-border); border-top: 5px solid var(--hnc-df-quote-orange); border-radius: 1rem; background: #fff; padding: 1.3rem; }
.hnc-df-quote-compare-grid article:last-child { border-top-color: var(--hnc-df-quote-navy-2); }
.hnc-df-quote-compare-grid h3 { margin: 0 0 0.65rem; color: var(--hnc-df-quote-navy); }
.hnc-df-quote-compare-grid ul { padding-left: 1.15rem; color: var(--hnc-df-quote-muted); line-height: 1.65; }
.hnc-df-quote-suitability-link { margin: 1rem 0 0; color: var(--hnc-df-quote-muted); }

.hnc-df-quote-photos {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(18rem, 0.8fr);
	gap: 1rem;
	align-items: stretch;
}
.hnc-df-quote-photos-copy,
.hnc-df-quote-limitations { border-radius: var(--hnc-df-radius-xl); padding: clamp(1.4rem, 3vw, 2.2rem); }
.hnc-df-quote-photos-copy { border: 1px solid var(--hnc-df-quote-border); background: #fff; }
.hnc-df-quote-photos-copy h2 { margin: 0 0 0.7rem; color: var(--hnc-df-quote-navy); font-size: var(--hnc-df-h2); letter-spacing: -0.035em; }
.hnc-df-quote-photos-copy ul { padding-left: 1.2rem; color: var(--hnc-df-quote-muted); line-height: 1.65; }
.hnc-df-quote-limitations { background: linear-gradient(135deg, #0e2c47, #1b476b); box-shadow: var(--hnc-df-shadow-feature); }
.hnc-df-quote-limitations h3 { margin: 0 0 0.75rem; color: #fff; font-size: 1.35rem; }
.hnc-df-quote-limitations ul { margin: 0; padding-left: 1.2rem; color: rgb(255 255 255 / 0.82); line-height: 1.68; }

.hnc-df-quote-repairer-banner {
	display: grid;
	grid-template-columns: minmax(16rem, 0.72fr) minmax(0, 1.28fr);
	gap: clamp(1.4rem, 4vw, 3rem);
	align-items: center;
	overflow: hidden;
	border-radius: var(--hnc-df-radius-xl);
	background:
		radial-gradient(circle at 92% 15%, rgb(244 122 31 / 0.22), transparent 18rem),
		linear-gradient(135deg, #0b263f, #183f63);
	box-shadow: var(--hnc-df-shadow-feature);
	padding: clamp(1.5rem, 4vw, 2.8rem);
}
.hnc-df-quote-repairer-logo { border-radius: 1rem; background: #fff; box-shadow: 0 16px 34px rgb(4 21 36 / 0.22); padding: 1rem; }
.hnc-df-quote-repairer-logo img { display: block; width: 100%; height: auto; }
.hnc-df-quote-repairer-copy .hnc-df-eyebrow { color: #ffd1ae !important; }
.hnc-df-quote-repairer-copy h2 { margin: 0 0 0.75rem; color: #fff; font-size: clamp(1.7rem, 3vw, 2.6rem); letter-spacing: -0.04em; line-height: 1.08; }
.hnc-df-quote-repairer-copy > p:not(.hnc-df-eyebrow) { color: rgb(255 255 255 / 0.84); line-height: 1.68; }
.hnc-df-quote-repairer-points { display: flex; flex-wrap: wrap; gap: 0.5rem; margin: 1rem 0; }
.hnc-df-quote-repairer-points span { border: 1px solid rgb(255 255 255 / 0.18); border-radius: 999px; background: rgb(255 255 255 / 0.08); color: #fff; padding: 0.42rem 0.7rem; font-size: 0.78rem; font-weight: 700; }
.hnc-df-quote-repairer-banner .is-style-hnc-df-secondary .wp-block-button__link { border-color: rgb(255 255 255 / 0.62); color: #fff !important; }

.hnc-df-quote-faq-list { display: grid; gap: 0.7rem; }
.hnc-df-quote-faq-list details { border: 1px solid var(--hnc-df-quote-border); border-radius: 0.8rem; background: #fff; box-shadow: 0 7px 18px rgb(13 41 68 / 0.035); padding: 1rem 1.1rem; }
.hnc-df-quote-faq-list summary { color: var(--hnc-df-quote-navy); font-weight: 800; cursor: pointer; }
.hnc-df-quote-faq-list details[open] summary { margin-bottom: 0.6rem; }
.hnc-df-quote-faq-list p { margin: 0; color: var(--hnc-df-quote-muted); line-height: 1.62; }

.hnc-df-quote-final {
	position: relative;
	overflow: hidden;
	border-radius: var(--hnc-df-radius-xl);
	background:
		radial-gradient(circle at 88% 20%, rgb(244 122 31 / 0.25), transparent 18rem),
		linear-gradient(135deg, #0d2944, #1c4a70);
	box-shadow: var(--hnc-df-shadow-feature);
	padding: clamp(2rem, 5vw, 3.3rem);
}
.hnc-df-quote-final .hnc-df-eyebrow { color: #ffd1ae !important; }
.hnc-df-quote-final :where(h2, p) { color: #fff; }
.hnc-df-quote-final h2 { margin: 0 0 0.65rem; font-size: clamp(1.8rem, 3.5vw, 3rem); line-height: 1.05; }
.hnc-df-quote-final p { max-width: 760px; color: rgb(255 255 255 / 0.82); line-height: 1.65; }
.hnc-df-quote-final .is-style-hnc-df-secondary .wp-block-button__link { border-color: rgb(255 255 255 / 0.65); color: #fff !important; }

.hnc-df-quote-disclaimer { border-left: 5px solid var(--hnc-df-quote-orange); border-radius: 0 0.8rem 0.8rem 0; background: #fff7f0; padding: 1rem 1.1rem; }
.hnc-df-quote-disclaimer p { margin: 0; color: #4d5e6b; font-size: 0.88rem; line-height: 1.62; }

@media (max-width: 1080px) {
	.hnc-df-quote-hero { grid-template-columns: 1fr; }
	.hnc-df-quote-hero-proof { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.hnc-df-quote-prep-grid,
	.hnc-df-quote-next-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.hnc-df-quote-journey-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.hnc-df-quote-journey-grid::before { display: none; }
}

@media (max-width: 780px) {
	.hnc-brand-damage-fix .hnc-df-quote-page-wrap > *,
	.hnc-df-quote-form-section { width: min(calc(100% - 1.25rem), var(--hnc-df-wide-width)) !important; }
	.hnc-df-quote-hero { padding: 2rem 1.2rem; }
	.hnc-df-quote-hero h1 { font-size: clamp(2.55rem, 12vw, 4rem); }
	.hnc-df-quote-hero-proof,
	.hnc-df-quote-prep-grid,
	.hnc-df-quote-next-grid,
	.hnc-df-quote-journey-grid,
	.hnc-df-quote-vehicle-grid,
	.hnc-df-quote-benefit-grid,
	.hnc-df-quote-compare-grid,
	.hnc-df-quote-photos,
	.hnc-df-quote-repairer-banner,
	.hnc-df-quote-form-intro { grid-template-columns: 1fr; }
	.hnc-df-quote-repairer-logo { max-width: 30rem; }
	.hnc-df-quote-form-shell { padding: 0.6rem; }
	.hnc-df-quote-hero-actions,
	.hnc-df-quote-final .wp-block-buttons,
	.hnc-df-quote-repairer-banner .wp-block-buttons { display: grid; grid-template-columns: 1fr; }
	.hnc-df-quote-hero-actions .wp-block-button,
	.hnc-df-quote-hero-actions .wp-block-button__link,
	.hnc-df-quote-final .wp-block-button,
	.hnc-df-quote-final .wp-block-button__link,
	.hnc-df-quote-repairer-banner .wp-block-button,
	.hnc-df-quote-repairer-banner .wp-block-button__link { width: 100%; }
}

@media (max-width: 480px) {
	.hnc-df-quote-hero-proof,
	.hnc-df-quote-prep-grid,
	.hnc-df-quote-next-grid,
	.hnc-df-quote-journey-grid { grid-template-columns: 1fr; }
	.hnc-df-quote-form-shell { border-radius: 0.85rem; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
}
