/* Mold Remediation � Service Page (Sprint 18) */

.mdr-page {
	--mdr-body-size: 1.125rem;
	--mdr-body-lh: 1.7;
	--mdr-body-weight: 500;
	--mdr-para-gap: 1.35rem;
	--mdr-card-title: 1.125rem;
	--mdr-timeline-desc: 1.125rem;
	--mdr-faq-question: 1.125rem;
	--mdr-dark-body: var(--text-primary-dark);
	--mdr-dark-muted: var(--text-secondary-dark);

	background: var(--color-bg-page);
	color: var(--color-text-on-dark-body);
	overflow-x: clip;
}

@media (max-width: 64rem) {
	.mdr-page {
		--mdr-body-size: 1.0625rem;
		--mdr-card-title: 1.0625rem;
		--mdr-timeline-desc: 1.0625rem;
		--mdr-faq-question: 1.0625rem;
	}
}

@media (max-width: 48rem) {
	.mdr-page {
		--mdr-body-size: 1rem;
		--mdr-sticky-call-height: 3.5rem;
		padding-top: var(--mdr-sticky-call-height);
	}
}

/* �� Mobile sticky call bar (Sprint 10D) �� */

.mdr-sticky-call {
	display: none;
}

@media (max-width: 48rem) {
	.mdr-sticky-call {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		z-index: 100;
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: center;
		gap: var(--space-3);
		min-height: 3.25rem;
		height: var(--mdr-sticky-call-height);
		padding: 0 var(--space-4);
		text-decoration: none;
		background: var(--color-bronze);
		color: var(--color-black);
		border-bottom: var(--border-width) solid rgba(9, 9, 9, 0.12);
		box-shadow: 0 2px 8px rgba(9, 9, 9, 0.14);
		-webkit-tap-highlight-color: transparent;
		transition: background var(--transition);
	}

	.mdr-sticky-call:active {
		background: var(--color-bronze-dark);
	}

	.mdr-sticky-call__action {
		font-family: var(--font-display);
		font-size: 0.6875rem;
		font-weight: var(--font-weight-semibold);
		line-height: 1;
		letter-spacing: var(--letter-spacing-eyebrow);
		text-transform: uppercase;
		color: var(--color-charcoal);
	}

	.mdr-sticky-call__number {
		font-family: var(--font-display);
		font-size: clamp(1rem, 4.2vw, 1.125rem);
		font-weight: var(--font-weight-bold);
		line-height: 1;
		letter-spacing: var(--letter-spacing-phone);
		color: var(--color-black);
	}

	.mdr-header__call {
		display: none;
	}
}

/* �� Service hero (Sprint 11A) �� */

.mdr-hero {
	--mdr-hero-photo-filter: brightness(0.88) contrast(1.1) saturate(0.72) sepia(0.05);
	--mdr-hero-video-position: 52% 42%;
	--mdr-hero-motion-media: 800ms;
	--mdr-hero-motion-cta-delay: 500ms;
	--mdr-hero-motion-trust-delay: 650ms;
	--mdr-hero-motion-fade: 450ms;

	position: relative;
	display: grid;
	grid-template-columns: 36fr 64fr;
	min-height: 90vh;
	background: var(--color-charcoal);
}

/* �� Hero entrance motion �� */

@keyframes mdr-hero-media-in {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@keyframes heroAccentReveal {
	from {
		opacity: 0;
		transform: translateY(22px);
		filter: blur(3px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
		filter: blur(0);
	}
}

@keyframes mdr-hero-fade-in {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

.mdr-hero__media {
	opacity: 0;
	animation: mdr-hero-media-in var(--mdr-hero-motion-media) ease-out forwards;
}

.mdr-hero__panel {
	display: flex;
	align-items: center;
	min-height: inherit;
	background: var(--color-charcoal);
}

.mdr-hero__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	min-height: inherit;
	padding: clamp(var(--spacing-12), 9vw, var(--spacing-15)) var(--space-8) clamp(var(--spacing-10), 7vw, var(--spacing-12)) max(var(--container-gutter), calc((100vw - min(100vw, var(--container-max))) / 2 + var(--container-gutter)));
}

.mdr-hero__breadcrumb {
	margin: 0 0 var(--space-5);
	font-size: var(--font-size-5xs);
	font-weight: var(--font-weight-medium);
	line-height: var(--line-height-ui);
	letter-spacing: var(--letter-spacing-wide);
	text-transform: uppercase;
	color: var(--color-text-on-dark-faint);
}

.mdr-hero__breadcrumb a {
	color: var(--color-text-on-dark-subtle);
	text-decoration: none;
	transition: color var(--transition);
}

.mdr-hero__breadcrumb a:hover {
	color: var(--color-bronze);
}

.mdr-hero__breadcrumb span[aria-hidden="true"] {
	margin-inline: var(--space-2);
	opacity: 0.45;
}

.mdr-hero__eyebrow {
	margin-bottom: var(--space-4);
	color: var(--color-bronze);
}

.mdr-hero__title {
	margin: 0 0 var(--space-5);
	max-width: 34rem;
	font-family: var(--font-display);
	font-size: clamp(2.125rem, 4vw, 3.375rem);
	font-weight: var(--font-weight-bold);
	line-height: 1.04;
	letter-spacing: var(--letter-spacing-trust);
	text-transform: uppercase;
	color: var(--color-white);
}

.mdr-hero__title-line {
	display: block;
}

.mdr-hero__title-line + .mdr-hero__title-line {
	margin-top: 0.06em;
}

.hero-headline-accent {
	display: block;
	margin-top: 0.12em;
	color: var(--bronze);
	opacity: 0;
	transform: translateY(22px);
	filter: blur(3px);
	animation: heroAccentReveal 1.2s cubic-bezier(0.22, 0.61, 0.36, 1) forwards;
	animation-delay: 1.4s;
}

.mdr-hero__body {
	max-width: 34rem;
	margin: 0 0 var(--space-5);
	font-size: var(--font-size-body-lg);
	line-height: var(--line-height-body-lg);
	color: var(--color-text-on-dark-body);
}

.mdr-hero__trust-bar {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-3);
	width: 100%;
	margin: 0 0 var(--space-6);
	opacity: 0;
	animation: mdr-hero-fade-in var(--mdr-hero-motion-fade) ease-out var(--mdr-hero-motion-trust-delay) forwards;
}

.mdr-hero__trust-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 1.125rem;
	background: rgba(9, 9, 9, 0.55);
	border: var(--border-width) solid var(--divider-bronze);
	border-radius: 0.75rem;
}

.mdr-hero__trust-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	margin-bottom: var(--space-3);
	color: var(--color-bronze);
}

.mdr-hero__trust-icon svg {
	width: 1.75rem;
	height: 1.75rem;
}

.mdr-hero__trust-title {
	margin: 0 0 var(--space-2);
	font-family: var(--font-display);
	font-size: clamp(1.125rem, 1.5vw, 1.25rem);
	font-weight: var(--font-weight-bold);
	line-height: 1.25;
	letter-spacing: var(--letter-spacing-trust);
	color: var(--color-white);
}

.mdr-hero__trust-desc {
	margin: 0;
	font-size: clamp(0.9375rem, 1.1vw, 1rem);
	font-weight: var(--font-weight-medium);
	line-height: 1.5;
	color: var(--color-text-on-dark-body);
}

.mdr-hero__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: var(--hero-actions-gap);
	margin-bottom: var(--space-6);
	opacity: 0;
	animation: mdr-hero-fade-in var(--mdr-hero-motion-fade) ease-out var(--mdr-hero-motion-cta-delay) forwards;
}

.mdr-hero__actions .grady-btn {
	min-width: var(--hero-btn-min);
	min-height: var(--hero-btn-height);
	padding: var(--space-2) var(--hero-btn-padding-x);
}

.mdr-hero__actions .grady-btn--primary {
	min-width: var(--hero-btn-primary-min);
}

/* �� Hero trust: desktop proof bar (=900px) �� */

@media (min-width: 56.25rem) {
	.mdr-hero__actions {
		order: 10;
		margin-bottom: var(--space-4);
	}

	.mdr-hero__trust-bar {
		order: 11;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		column-gap: var(--space-5);
		row-gap: var(--space-3);
		margin-top: var(--space-5);
		margin-bottom: var(--space-6);
	}

	.mdr-hero__trust-card {
		flex-direction: row;
		align-items: center;
		gap: var(--space-2);
		padding: 0;
		background: none;
		border: none;
		border-radius: 0;
	}

	.mdr-hero__trust-card:not(:last-child) {
		padding-right: var(--space-5);
		border-right: var(--border-width) solid var(--divider-bronze-faint);
	}

	.mdr-hero__trust-icon {
		width: auto;
		height: auto;
		margin-bottom: 0;
	}

	.mdr-hero__trust-icon svg {
		width: 1.625rem;
		height: 1.625rem;
	}

	.mdr-hero__trust-title {
		margin: 0;
		font-size: clamp(1rem, 1.1vw, 1.125rem);
		font-weight: var(--font-weight-bold);
		line-height: var(--line-height-ui);
		letter-spacing: var(--letter-spacing-trust);
		text-transform: uppercase;
		white-space: nowrap;
	}

	.mdr-hero__trust-desc {
		display: none;
	}

	.mdr-hero__scroll {
		order: 12;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mdr-hero__media,
	.mdr-hero__actions,
	.mdr-hero__trust-bar {
		opacity: 1;
		transform: none;
		animation: none;
	}

	.hero-headline-accent {
		animation: none;
		opacity: 1;
		transform: none;
		filter: none;
	}
}

.mdr-hero__scroll {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--space-2);
	margin-top: auto;
	padding-top: var(--space-4);
	opacity: 0.55;
	animation: mdr-hero-scroll-fade 3s ease-in-out infinite;
}

.mdr-hero__scroll-line {
	display: block;
	width: 1px;
	height: 2.5rem;
	background: var(--color-bronze);
	opacity: 0.7;
}

.mdr-hero__scroll-arrow {
	width: 0.625rem;
	height: 0.625rem;
	color: var(--color-bronze);
}

@keyframes mdr-hero-scroll-fade {
	0%,
	100% {
		opacity: 0.35;
	}

	50% {
		opacity: 0.75;
	}
}

.mdr-hero__media {
	position: relative;
	min-height: inherit;
	overflow: hidden;
	background: var(--color-bg-placeholder-deep);
}

.mdr-hero__photo-frame {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.mdr-hero__video,
.mdr-hero__photo,
.mdr-hero__photo-placeholder {
	display: block;
	width: 100%;
	height: 100%;
	min-height: inherit;
	object-fit: cover;
	object-position: var(--mdr-hero-video-position);
	filter: var(--mdr-hero-photo-filter);
}

.mdr-hero__photo-placeholder {
	border: none;
}

.mdr-hero__photo-placeholder .photo-placeholder__label {
	max-width: 16rem;
	font-size: var(--font-size-5xs);
	line-height: var(--line-height-ui-xs);
	opacity: 0.55;
}

.mdr-hero__grade,
.mdr-hero__vignette,
.mdr-hero__grain,
.mdr-hero__edge-fade {
	position: absolute;
	inset: 0;
	pointer-events: none;
}

.mdr-hero__grade {
	z-index: 1;
	background: linear-gradient(
		180deg,
		rgba(8, 10, 14, 0.28) 0%,
		rgba(12, 11, 10, 0.08) 42%,
		rgba(16, 14, 11, 0.18) 100%
	);
}

.mdr-hero__vignette {
	z-index: 2;
	background: radial-gradient(
		ellipse 85% 75% at 62% 48%,
		transparent 35%,
		rgba(9, 9, 9, 0.42) 100%
	);
}

.mdr-hero__edge-fade {
	z-index: 2;
	background: linear-gradient(
		to right,
		var(--color-charcoal) 0%,
		rgba(9, 9, 9, 0.78) 14%,
		rgba(9, 9, 9, 0.42) 32%,
		transparent 52%
	);
}

.mdr-hero__grain {
	z-index: 3;
	opacity: 0.05;
	mix-blend-mode: overlay;
	background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
	background-size: 180px 180px;
	animation: mdr-hero-grain 10s steps(8) infinite;
}

@keyframes mdr-hero-grain {
	0% {
		transform: translate(0, 0);
	}

	100% {
		transform: translate(-12%, -8%);
	}
}

/* �� Emergency call strip �� */

.mdr-call-strip {
	background: var(--color-black);
	border-block: var(--border-light);
}

.mdr-call-strip__inner {
	display: flex;
	align-items: center;
	justify-content: center;
	padding-block: var(--space-4);
}

.mdr-call-strip__copy {
	margin: 0;
	font-family: var(--font-display);
	font-size: var(--font-size-sm);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui);
	letter-spacing: var(--letter-spacing-process);
	text-transform: uppercase;
	text-align: center;
	color: var(--color-ivory);
}

/* �� Section shells �� */

.mdr-section {
	padding-block: clamp(var(--spacing-12), 10vw, var(--spacing-15));
}

.mdr-section__header {
	max-width: var(--container-text);
	margin-bottom: clamp(var(--spacing-8), 5vw, var(--spacing-10));
}

.mdr-section--ivory {
	background: var(--color-ivory);
	color: var(--color-text-on-light);
}

.mdr-section--dark {
	background: var(--color-charcoal);
}

.mdr-section--graphite {
	background: var(--color-graphite);
}

.mdr-section--graphite .grady-eyebrow {
	color: var(--color-bronze);
}

.mdr-section--ivory .mdr-section__header .grady-heading--dark,
.mdr-section--ivory .grady-body {
	color: var(--color-text-on-light);
}

.mdr-section--dark .grady-heading--light,
.mdr-section--graphite .grady-heading--light {
	color: var(--color-white);
}

/* �� What we handle �� */

.mdr-handle-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--space-4) var(--col-gap);
}

.mdr-handle-item {
	padding-bottom: var(--space-4);
	border-bottom: var(--border-width) solid var(--divider-bronze-muted);
}

.mdr-handle-item__title {
	margin: 0 0 var(--space-2);
	font-family: var(--font-display);
	font-size: var(--font-size-xs);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui-xs);
	letter-spacing: var(--letter-spacing-process);
	text-transform: uppercase;
	color: var(--color-black);
}

.mdr-handle-item p {
	margin: 0;
	font-size: var(--font-size-sm);
	line-height: var(--line-height-list);
	color: var(--color-text-on-light);
}

/* �� Why homeowners (Sprint 11B) �� */

.mdr-why-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--space-4) var(--col-gap);
}

.mdr-why-card {
	padding: var(--space-5);
	background: rgba(9, 9, 9, 0.025);
	border: var(--border-width) solid var(--divider-bronze-muted);
	transition: border-color var(--transition);
}

.mdr-why-card:hover {
	border-color: var(--divider-bronze-soft);
}

.mdr-why-card__title {
	margin: 0 0 var(--space-2);
	font-family: var(--font-display);
	font-size: var(--font-size-xs);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui-xs);
	letter-spacing: var(--letter-spacing-process);
	text-transform: uppercase;
	color: var(--color-black);
}

.mdr-why-card p {
	margin: 0;
	font-size: var(--font-size-sm);
	line-height: var(--line-height-list);
	color: var(--color-text-on-light);
}

/* �� Hidden moisture (Sprint 12) �� */

.mdr-hidden-moisture {
	padding-block: clamp(var(--spacing-12), 10vw, var(--spacing-15));
	background: var(--color-ivory);
}

.mdr-hidden-moisture__inner {
	display: grid;
	grid-template-columns: 40fr 60fr;
	gap: clamp(var(--spacing-8), 6vw, var(--spacing-12));
	align-items: start;
}

.mdr-hidden-moisture__editorial .grady-eyebrow {
	color: var(--color-bronze-dark);
}

.mdr-hidden-moisture__editorial .grady-body {
	max-width: 34rem;
}

.mdr-hidden-moisture__editorial .grady-body + .grady-body {
	margin-top: var(--space-4);
}

.mdr-hidden-moisture__photo {
	margin: 0 0 var(--space-5);
}

.mdr-hidden-moisture__photo-frame {
	overflow: hidden;
	border: var(--border-width) solid var(--divider-bronze-muted);
	border-radius: var(--radius-sm);
}

.mdr-hidden-moisture__photo-img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: cover;
	object-position: center 32%;
}

.mdr-hidden-moisture__cards {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--space-4);
}

.mdr-hidden-moisture__card {
	padding: var(--space-4);
	background: rgba(9, 9, 9, 0.025);
	border: var(--border-width) solid var(--divider-bronze-muted);
}

.mdr-hidden-moisture__card__title {
	margin: 0 0 var(--space-2);
	font-family: var(--font-display);
	font-size: var(--font-size-3xs);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui-xs);
	letter-spacing: var(--letter-spacing-process);
	text-transform: uppercase;
	color: var(--color-black);
}

.mdr-hidden-moisture__card p {
	margin: 0;
	font-size: var(--font-size-sm);
	line-height: var(--line-height-list);
	color: var(--color-text-on-light);
}

/* �� Signature water loss timeline (Sprint 10B) �� */

.mdr-loss-timeline {
	--mdr-timeline-hex-width: 4.5rem;
	--mdr-timeline-hex-height: 5.125rem;
	--mdr-timeline-num-width: 3.75rem;
	--mdr-timeline-marker-width: calc(var(--mdr-timeline-num-width) + var(--mdr-timeline-hex-width) + var(--space-4));
	--mdr-timeline-step-gap: clamp(var(--spacing-10), 8vw, var(--spacing-15));
	--mdr-timeline-line-x: calc(var(--mdr-timeline-num-width) + var(--mdr-timeline-hex-width) / 2 + var(--space-4));

	padding-block: clamp(var(--spacing-12), 11vw, var(--spacing-15));
	background: var(--color-charcoal);
	overflow: hidden;
}

.mdr-loss-timeline__inner {
	display: grid;
	grid-template-columns: 38fr 62fr;
	gap: clamp(var(--spacing-8), 6vw, var(--spacing-12));
	align-items: start;
	max-width: var(--container-max);
	margin-inline: auto;
	padding-inline: var(--container-gutter);
}

.mdr-loss-timeline__intro {
	position: sticky;
	top: var(--space-8);
	padding-block: var(--space-2);
}

.mdr-loss-timeline__lede {
	max-width: 36rem;
	margin-bottom: 0;
}

.mdr-loss-timeline__stage {
	position: relative;
	min-width: 0;
}

.mdr-loss-timeline__line-rail {
	position: absolute;
	top: 0;
	left: 0;
	width: var(--mdr-timeline-marker-width);
	height: 100%;
	pointer-events: none;
}

.mdr-loss-timeline__line-track,
.mdr-loss-timeline__line-fill {
	position: absolute;
	left: var(--mdr-timeline-line-x);
	width: var(--size-hairline);
	transform: translateX(-50%);
}

.mdr-loss-timeline__line-track {
	top: calc(var(--mdr-timeline-hex-height) / 2);
	bottom: calc(var(--mdr-timeline-hex-height) / 2);
	background: var(--divider-bronze-process);
	opacity: 0.35;
}

.mdr-loss-timeline__line-fill {
	top: calc(var(--mdr-timeline-hex-height) / 2);
	height: 0;
	background: var(--color-bronze);
	box-shadow: 0 0 12px rgba(168, 132, 84, 0.35);
	transition: height 0.12s linear;
	will-change: height;
}

.mdr-loss-timeline__steps {
	position: relative;
	z-index: 1;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mdr-loss-timeline__step {
	display: grid;
	grid-template-columns: var(--mdr-timeline-marker-width) minmax(0, 1fr);
	gap: clamp(var(--space-4), 3vw, var(--space-6));
	align-items: start;
	padding-bottom: var(--mdr-timeline-step-gap);
	opacity: 0;
	transform: translateY(1.25rem);
	transition:
		opacity var(--motion-duration) var(--motion-ease),
		transform var(--motion-duration) var(--motion-ease);
}

.mdr-loss-timeline__step:last-child {
	padding-bottom: 0;
}

.mdr-loss-timeline__step.is-revealed {
	opacity: 1;
	transform: translateY(0);
}

.mdr-loss-timeline__marker {
	display: grid;
	grid-template-columns: var(--mdr-timeline-num-width) var(--mdr-timeline-hex-width);
	gap: var(--space-4);
	align-items: center;
}

.mdr-loss-timeline__num {
	font-family: var(--font-display);
	font-size: clamp(1.75rem, 2.5vw, 2.25rem);
	font-weight: var(--font-weight-bold);
	line-height: 1;
	letter-spacing: var(--letter-spacing-trust);
	color: var(--color-bronze);
	opacity: 0.55;
	transition:
		opacity var(--motion-duration) var(--motion-ease),
		color var(--motion-duration) var(--motion-ease);
}

.mdr-loss-timeline__step.is-revealed .mdr-loss-timeline__num {
	opacity: 1;
	color: var(--color-bronze);
}

.mdr-loss-timeline__hex {
	position: relative;
	z-index: 1;
	width: var(--mdr-timeline-hex-width);
	height: var(--mdr-timeline-hex-height);
}

.mdr-loss-timeline__hex-frame {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	color: var(--color-bronze);
	opacity: 0.4;
	filter: brightness(0.82);
	transition:
		opacity var(--motion-duration) var(--motion-ease),
		filter var(--motion-duration) var(--motion-ease),
		box-shadow var(--motion-duration) var(--motion-ease);
}

.mdr-loss-timeline__hex-frame::before {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--color-bronze);
	clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
}

.mdr-loss-timeline__hex-frame::after {
	content: "";
	position: absolute;
	inset: var(--process-hex-inset);
	background: var(--color-charcoal);
	clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
}

.mdr-loss-timeline__hex-frame .hex-icon {
	position: absolute;
	inset: 0;
	margin: auto;
	z-index: 1;
}

.mdr-loss-timeline__hex-frame .hex-icon svg {
	width: 28px;
	height: 28px;
}

.mdr-loss-timeline__step.is-revealed .mdr-loss-timeline__hex-frame {
	opacity: 1;
	filter: brightness(1);
	box-shadow: 0 0 24px rgba(168, 132, 84, 0.22);
}

.mdr-loss-timeline__content {
	padding-top: var(--space-2);
}

.mdr-loss-timeline__content--split {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 40%);
	gap: clamp(var(--space-4), 3vw, var(--space-6));
	align-items: center;
	padding-top: var(--space-1);
}

.mdr-loss-timeline__title {
	margin: 0 0 var(--space-2);
	font-family: var(--font-display);
	font-size: clamp(1.125rem, 1.6vw, 1.375rem);
	font-weight: var(--font-weight-bold);
	line-height: var(--line-height-ui-xs);
	letter-spacing: var(--letter-spacing-process);
	text-transform: uppercase;
	color: var(--color-ivory);
}

.mdr-loss-timeline__desc {
	max-width: 22rem;
	margin: 0;
	font-size: var(--font-size-sm);
	line-height: var(--line-height-body-lg);
	color: var(--color-text-on-dark-subtle);
}

.mdr-loss-timeline__content--split .mdr-loss-timeline__desc {
	max-width: none;
}

.mdr-loss-timeline__photo {
	margin: 0;
}

.mdr-loss-timeline__photo-inner {
	min-height: clamp(10rem, 18vw, 14rem);
	border: var(--border-light);
	overflow: hidden;
	transition:
		transform calc(var(--motion-duration) * 1.4) var(--motion-ease),
		opacity var(--motion-duration) var(--motion-ease);
	transform: scale(var(--motion-scale-photo));
	opacity: 0;
}

.mdr-loss-timeline__photo-inner--matterport,
.mdr-loss-timeline__photo-inner--truck,
.mdr-loss-timeline__photo-inner--monitoring,
.mdr-loss-timeline__photo-inner--extraction {
	border: var(--border-width) solid var(--divider-bronze-muted);
	border-radius: var(--radius-sm);
}

.mdr-loss-timeline__photo-img {
	display: block;
	width: 100%;
	min-height: clamp(10rem, 18vw, 14rem);
	object-fit: cover;
	object-position: center center;
}

.mdr-loss-timeline__step.is-revealed .mdr-loss-timeline__photo-inner {
	transform: scale(var(--motion-scale-base));
	opacity: 1;
}

.mdr-loss-timeline__photo-inner .photo-placeholder__label {
	font-size: var(--font-size-5xs);
}

/* �� Why we document (Sprint 12) �� */

.mdr-document-why {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: clamp(var(--spacing-8), 6vw, var(--spacing-12));
	align-items: start;
}

.mdr-document-why__copy .grady-body {
	max-width: 34rem;
}

.mdr-document-why__copy .grady-body + .grady-body {
	margin-top: var(--space-4);
}

.mdr-document-why__list {
	margin: 0;
	padding: var(--space-5);
	list-style: none;
	background: rgba(9, 9, 9, 0.025);
	border: var(--border-width) solid var(--divider-bronze-muted);
}

.mdr-document-why__list li {
	padding-block: var(--space-3);
	font-size: var(--font-size-sm);
	font-weight: var(--font-weight-medium);
	line-height: var(--line-height-ui);
	letter-spacing: var(--letter-spacing-trust);
	color: var(--color-text-on-light);
	border-bottom: var(--border-width) solid var(--divider-bronze-muted);
}

.mdr-document-why__list li:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

/* �� Recent projects (Sprint 12) �� */

.mdr-projects-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--space-5);
}

.mdr-project-card {
	display: flex;
	flex-direction: column;
	background: rgba(243, 239, 231, 0.03);
	border: var(--border-light);
	overflow: hidden;
}

.mdr-project-card__photo {
	margin: 0;
	overflow: hidden;
}

.mdr-project-card__photo-inner {
	min-height: 11rem;
	border: none;
	border-bottom: var(--border-light);
}

.mdr-project-card__body {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	padding: var(--space-5);
}

.mdr-project-card__title {
	margin: 0 0 var(--space-1);
	font-family: var(--font-display);
	font-size: var(--font-size-sm);
	font-weight: var(--font-weight-bold);
	line-height: var(--line-height-ui-xs);
	letter-spacing: var(--letter-spacing-process);
	text-transform: uppercase;
	color: var(--color-ivory);
}

.mdr-project-card__location {
	margin: 0 0 var(--space-4);
	font-size: var(--font-size-3xs);
	font-weight: var(--font-weight-medium);
	line-height: var(--line-height-ui);
	letter-spacing: var(--letter-spacing-wide);
	text-transform: uppercase;
	color: var(--color-bronze);
}

.mdr-project-card__meta {
	margin: 0;
	padding: 0;
	list-style: none;
}

.mdr-project-card__meta li {
	padding: var(--space-2) 0;
	font-size: var(--font-size-sm);
	line-height: var(--line-height-list);
	color: var(--color-text-on-dark-subtle);
	border-top: var(--border-width) solid var(--divider-bronze-muted);
}

.mdr-project-card__meta li:first-child {
	border-top: none;
	padding-top: 0;
}

.mdr-project-card__more {
	margin-top: auto;
	padding-top: var(--space-4);
	font-family: var(--font-display);
	font-size: var(--font-size-sm);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui);
	letter-spacing: var(--letter-spacing-wide);
	text-decoration: none;
	color: var(--color-bronze);
	transition:
		color var(--transition),
		text-decoration-color var(--transition),
		transform 0.3s var(--motion-ease);
}

.mdr-project-card__more:hover {
	color: var(--color-bronze);
	text-decoration: underline;
	text-decoration-color: var(--color-bronze);
	text-underline-offset: 0.2em;
	transform: translateX(0.25rem);
}

/* �� Insurance documentation dashboard (Sprint 11B) �� */

.mdr-docs-dashboard {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--space-4);
	margin-bottom: var(--space-6);
}

.mdr-docs-item {
	display: flex;
	gap: var(--space-4);
	align-items: flex-start;
	padding: var(--space-4);
	background: rgba(243, 239, 231, 0.04);
	border: var(--border-light);
	transition: border-color var(--transition), background-color var(--transition);
}

.mdr-docs-item:hover {
	background: rgba(185, 155, 104, 0.06);
	border-color: var(--divider-bronze-soft);
}

.mdr-docs-item__icon {
	flex-shrink: 0;
}

.mdr-docs-item__hex {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: var(--process-hex-width);
	height: var(--process-hex-height);
	color: var(--color-bronze);
}

.mdr-docs-item__hex::before {
	content: "";
	position: absolute;
	inset: 0;
	background: var(--color-bronze);
	clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
}

.mdr-docs-item__hex::after {
	content: "";
	position: absolute;
	inset: var(--process-hex-inset);
	background: var(--color-charcoal);
	clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
}

.mdr-docs-item__hex .hex-icon {
	position: absolute;
	inset: 0;
	margin: auto;
	z-index: 1;
}

.mdr-docs-item__copy__title {
	margin: 0 0 var(--space-1);
	font-family: var(--font-display);
	font-size: var(--font-size-3xs);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui-xs);
	letter-spacing: var(--letter-spacing-process);
	text-transform: uppercase;
	color: var(--color-ivory);
}

.mdr-docs-item__copy p {
	margin: 0;
	font-size: var(--font-size-sm);
	line-height: var(--line-height-list);
	color: var(--color-text-on-dark-subtle);
}

.mdr-insurance-cta {
	padding: var(--space-4) var(--space-5);
	background: rgba(243, 239, 231, 0.04);
	border: var(--border-light);
}

.mdr-section--dark .mdr-insurance-cta p {
	margin: 0 0 var(--space-2);
	font-size: var(--font-size-sm);
	line-height: var(--line-height-list);
	color: var(--color-text-on-dark-body);
}

.mdr-section--dark .mdr-insurance-cta a {
	font-family: var(--font-display);
	font-size: var(--font-size-xs);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui);
	letter-spacing: var(--letter-spacing-wide);
	text-transform: uppercase;
	text-decoration: none;
	color: var(--color-bronze);
	transition: color var(--transition);
}

.mdr-section--dark .mdr-insurance-cta a:hover {
	color: var(--color-limestone);
}

/* �� Inside the Grady Drying System (Sprint 14) �� */

.mdr-sanitation-system .mdr-section__header {
	max-width: 52rem;
}

.mdr-sanitation-system .mdr-section__header .grady-body--light {
	max-width: none;
}

.mdr-spec-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--space-5);
}

.mdr-spec-card {
	display: flex;
	flex-direction: column;
	background: rgba(9, 9, 9, 0.55);
	border: var(--border-width) solid var(--divider-bronze-muted);
	border-radius: var(--radius-sm);
	overflow: hidden;
}

.mdr-spec-card__media {
	aspect-ratio: 16 / 10;
	overflow: hidden;
	border-bottom: var(--border-width) solid var(--divider-bronze-muted);
}

.mdr-spec-card__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.mdr-spec-card__media--crop-chamber img {
	object-position: center 30%;
}

.mdr-spec-card__media--crop-fleet img {
	object-position: 22% center;
}

.mdr-spec-card__media--crop-large-loss img {
	object-position: 52% 58%;
}

.mdr-spec-card__body {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	padding: var(--space-5);
}

.mdr-spec-card__manufacturer {
	margin: 0 0 var(--space-2);
	font-family: var(--font-display);
	font-size: var(--font-size-3xs);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui-xs);
	letter-spacing: var(--letter-spacing-process);
	text-transform: uppercase;
	color: var(--color-bronze);
}

.mdr-spec-card__headline {
	margin: 0 0 var(--space-3);
	font-family: var(--font-display);
	font-size: clamp(1.125rem, 1.4vw, 1.3125rem);
	font-weight: var(--font-weight-bold);
	line-height: 1.25;
	letter-spacing: var(--letter-spacing-trust);
	color: var(--color-white);
}

.mdr-spec-card__copy {
	margin: 0;
	font-size: var(--mdr-body-size);
	line-height: var(--mdr-body-lh);
	font-weight: var(--mdr-body-weight);
	color: var(--color-text-on-dark-muted);
}

.mdr-spec-card__features {
	margin: var(--space-4) 0 0;
	padding: 0;
	list-style: none;
}

.mdr-spec-card__features li {
	padding-block: var(--space-2);
	font-size: var(--font-size-sm);
	font-weight: var(--font-weight-medium);
	line-height: var(--line-height-ui);
	letter-spacing: var(--letter-spacing-trust);
	color: var(--color-text-on-dark-body);
	border-top: var(--border-width) solid var(--divider-bronze-muted);
}

/* �� Common causes grid �� */

.mdr-causes-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--space-5);
}

.mdr-cause-card {
	display: flex;
	flex-direction: column;
	padding: var(--space-5);
	min-height: 12rem;
	background: rgba(9, 9, 9, 0.025);
	border: var(--border-width) solid var(--divider-bronze-muted);
}

.mdr-cause-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	height: 2.25rem;
	margin-bottom: var(--space-3);
	color: var(--color-bronze-dark);
}

.mdr-cause-card__icon svg {
	width: 1.25rem;
	height: 1.25rem;
}

.mdr-cause-card__title {
	margin: 0 0 var(--space-2);
	font-family: var(--font-display);
	font-size: var(--font-size-xs);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui-xs);
	letter-spacing: var(--letter-spacing-process);
	text-transform: uppercase;
	color: var(--color-black);
}

.mdr-cause-card p {
	flex: 1;
	margin: 0 0 var(--space-4);
	font-size: var(--font-size-sm);
	line-height: var(--line-height-body-lg);
	color: var(--color-text-on-light);
}

.mdr-cause-card .grady-link-arrow {
	margin-top: auto;
	font-size: var(--font-size-4xs);
	color: var(--color-bronze-dark);
}

.mdr-cause-card .grady-link-arrow::after {
	content: none;
	display: none;
}

/* �� Service area map (Sprint 14F) �� */

.mdr-service-area__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
	grid-template-areas:
		"intro map"
		"areas map";
	gap: var(--space-6) var(--space-8);
	align-items: start;
}

.mdr-service-area__intro {
	grid-area: intro;
}

.mdr-service-area__intro .grady-heading {
	margin-bottom: var(--space-4);
}

.mdr-service-area__intro .grady-body {
	max-width: 36rem;
	margin-bottom: 0;
}

.mdr-service-area__map {
	grid-area: map;
	position: relative;
	min-height: clamp(16rem, 34vw, 22rem);
	border: var(--border-width) solid var(--divider-bronze-muted);
	border-radius: var(--radius-sm);
	overflow: hidden;
	background: var(--placeholder-deep);
	align-self: stretch;
}

.mdr-service-area__map-svg {
	display: block;
	width: 100%;
	height: 100%;
	min-height: inherit;
}

.mdr-service-area__markers {
	position: absolute;
	inset: 0;
	margin: 0;
	padding: 0;
	list-style: none;
	pointer-events: none;
}

.mdr-service-area__marker {
	position: absolute;
	left: var(--marker-x);
	top: var(--marker-y);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.125rem;
	transform: translate(-50%, -50%);
}

.mdr-service-area__marker-star {
	font-size: 0.875rem;
	line-height: 1;
	color: var(--color-bronze);
	text-shadow: 0 0 0.5rem rgba(184, 148, 95, 0.45);
}

.mdr-service-area__marker-label {
	font-family: var(--font-display);
	font-size: 0.5625rem;
	font-weight: var(--font-weight-semibold);
	line-height: 1.2;
	letter-spacing: var(--letter-spacing-process);
	text-transform: uppercase;
	color: var(--color-ivory);
	white-space: nowrap;
	opacity: 0.92;
}

.mdr-service-area__areas {
	grid-area: areas;
	display: flex;
	flex-direction: column;
	align-items: stretch;
}

.mdr-service-area__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	column-gap: var(--space-5);
	row-gap: 0;
	width: 100%;
}

.mdr-service-area__list {
	display: contents;
	margin: 0;
	padding: 0;
	list-style: none;
}

.mdr-service-area__list--more[hidden] {
	display: none;
}

.mdr-service-area__list li {
	min-width: 0;
	border-bottom: var(--border-width) solid rgba(185, 155, 104, 0.14);
}

.mdr-service-area__list a {
	display: block;
	padding: var(--space-3) var(--space-1) var(--space-3) 0;
	font-family: var(--font-display);
	font-size: clamp(0.9375rem, 0.25vw + 0.875rem, 1.0625rem);
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	text-align: left;
	text-decoration: none;
	color: var(--color-bronze);
	transition:
		color var(--transition),
		text-decoration-color var(--transition),
		transform 0.25s var(--motion-ease);
}

.mdr-service-area__list a:hover {
	color: var(--color-ivory);
	text-decoration: underline;
	text-underline-offset: 0.18em;
	transform: translateX(0.2rem);
}

.mdr-service-area__list--more:not([hidden]) li {
	animation: wdrAreaRevealItem 0.35s var(--motion-ease);
}

@keyframes wdrAreaRevealItem {
	from {
		opacity: 0;
		transform: translateY(-0.2rem);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.mdr-service-area__toggle {
	display: inline-block;
	align-self: flex-start;
	margin-top: var(--space-4);
	padding: 0;
	border: none;
	background: none;
	font-family: var(--font-display);
	font-size: var(--font-size-sm);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui);
	letter-spacing: var(--letter-spacing-wide);
	color: var(--color-bronze);
	cursor: pointer;
	transition:
		color var(--transition),
		text-decoration-color var(--transition),
		transform 0.3s var(--motion-ease);
}

.mdr-service-area__toggle:hover {
	color: var(--color-bronze);
	text-decoration: underline;
	text-underline-offset: 0.2em;
	transform: translateX(0.25rem);
}

.mdr-service-area__support {
	max-width: 36rem;
	margin: var(--space-4) 0 0;
	font-size: var(--font-size-sm);
	color: var(--color-text-on-dark-muted);
}

/* �� FAQ �� */

.mdr-faq-section {
	overflow-x: clip;
}

.mdr-faq-section .grady-wrap {
	max-width: 57.5rem;
	margin-inline: auto;
}

.mdr-faq-section .grady-heading {
	text-align: center;
	margin-inline: auto;
	text-wrap: balance;
}

.mdr-faq {
	width: 100%;
	margin-inline: auto;
}

.mdr-faq details {
	border-bottom: var(--border-width) solid var(--divider-bronze-muted);
}

.mdr-faq details:first-child {
	border-top: var(--border-width) solid var(--divider-bronze-muted);
}

.mdr-faq summary {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: var(--space-4);
	padding-block: var(--space-5);
	padding-inline: 0;
	font-family: var(--font-display);
	font-size: var(--font-size-sm);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui-xs);
	letter-spacing: var(--letter-spacing-trust);
	color: var(--color-black);
	cursor: pointer;
	list-style: none;
}

.mdr-faq summary::-webkit-details-marker {
	display: none;
}

.mdr-faq summary::after {
	content: "+";
	flex-shrink: 0;
	align-self: center;
	margin-left: var(--space-4);
	font-family: var(--font-body);
	font-size: 1.375rem;
	font-weight: var(--font-weight-regular);
	line-height: 1;
	color: var(--color-bronze-dark);
	transition: color var(--transition);
}

.mdr-faq details[open] summary::after {
	content: "-";
	color: var(--color-bronze);
}

.mdr-faq details p {
	margin: 0;
	padding: 0 var(--space-6) var(--space-5) 0;
	font-size: var(--font-size-sm);
	line-height: var(--line-height-body-lg);
	color: var(--color-text-on-light);
}

/* �� Service final CTA �� */

.mdr-final-cta {
	position: relative;
	overflow: hidden;
	background: var(--color-charcoal);
}

.mdr-final-cta__media {
	position: absolute;
	inset: 0;
	background: var(--color-bg-placeholder-deep);
}

.mdr-final-cta__overlay {
	position: absolute;
	inset: 0;
	background: rgba(9, 9, 9, 0.78);
}

.mdr-final-cta__inner {
	position: relative;
	z-index: 1;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-4);
	padding-block: var(--section-cta-y);
}

.mdr-final-cta__copy .grady-heading {
	margin-bottom: var(--space-2);
}

.mdr-final-cta__copy .grady-body {
	margin-bottom: 0;
}

/* �� Service header (compact) �� */

.mdr-header {
	position: relative;
	z-index: 3;
	padding-block: var(--space-3);
	background: var(--color-charcoal);
	border-bottom: var(--border-light);
}

.mdr-header__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-3);
}

.mdr-header .brand--wordmark {
	align-items: flex-start;
}

.mdr-header .brand__name,
.mdr-header .brand__tag {
	text-indent: 0;
}

.mdr-header__call {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: var(--space-2) var(--space-4);
	font-family: var(--font-display);
	font-size: var(--font-size-xs);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui);
	letter-spacing: var(--letter-spacing-process);
	text-transform: uppercase;
	text-decoration: none;
	color: var(--color-ivory);
	border: var(--border-width) solid var(--divider-bronze);
	border-radius: var(--radius-sm);
	transition: border-color var(--transition), background-color var(--transition), color var(--transition);
}

.mdr-header__call:hover {
	border-color: var(--color-bronze);
	background: rgba(185, 155, 104, 0.08);
	color: var(--color-white);
}

/* �� Responsive �� */

@media (max-width: 64rem) {
	.mdr-hero {
		grid-template-columns: 1fr;
		min-height: auto;
	}

	.mdr-hero__panel {
		order: 1;
		min-height: auto;
	}

	.mdr-hero__content {
		min-height: auto;
		padding: var(--section-y) var(--gutter);
	}

	.mdr-hero__media {
		order: 2;
		min-height: clamp(22rem, 52vw, 32rem);
	}

	.mdr-hero__scroll {
		display: none;
	}

	.mdr-hero__edge-fade {
		background: linear-gradient(
			to bottom,
			rgba(9, 9, 9, 0.08) 0%,
			transparent 22%
		);
	}

	.mdr-handle-grid {
		grid-template-columns: 1fr;
	}

	.mdr-docs-dashboard {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mdr-why-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mdr-hidden-moisture__inner {
		grid-template-columns: 1fr;
		gap: var(--space-8);
	}

	.mdr-document-why {
		grid-template-columns: 1fr;
		gap: var(--space-6);
	}

	.mdr-projects-grid {
		grid-template-columns: 1fr;
	}

	.mdr-spec-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mdr-causes-grid {
		grid-template-columns: 1fr;
	}

	.mdr-loss-timeline__inner {
		grid-template-columns: 1fr;
		gap: var(--space-8);
	}

	.mdr-loss-timeline__intro {
		position: static;
	}

	.mdr-loss-timeline__content--split {
		grid-template-columns: 1fr;
	}

	.mdr-loss-timeline__photo {
		order: -1;
	}

	.mdr-loss-timeline__step {
		padding-bottom: var(--space-10);
	}

	.mdr-service-area__layout {
		grid-template-columns: 1fr;
		grid-template-areas:
			"intro"
			"map"
			"areas";
		gap: var(--space-6);
	}

	.mdr-service-area__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (prefers-reduced-motion: reduce) {
	.mdr-loss-timeline__step {
		opacity: 1;
		transform: none;
		transition: none;
	}

	.mdr-loss-timeline__hex-frame,
	.mdr-loss-timeline__num,
	.mdr-loss-timeline__photo-inner {
		opacity: 1;
		transform: none;
		filter: none;
		transition: none;
	}

	.mdr-loss-timeline__line-fill {
		transition: none;
	}

	.mdr-hero__scroll,
	.mdr-hero__grain {
		animation: none;
	}

	.mdr-service-area__list--more:not([hidden]) li {
		animation: none;
	}
}

@media (max-width: 48rem) {
	.mdr-hero__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.mdr-hero__actions .grady-btn {
		width: 100%;
		min-width: 0;
	}

	.mdr-hero__panel {
		order: 2;
	}

	.mdr-hero__media {
		order: 1;
		min-height: clamp(16rem, 48vw, 24rem);
	}

	.mdr-causes-grid {
		grid-template-columns: 1fr;
	}

	.mdr-why-grid,
	.mdr-spec-grid,
	.mdr-docs-dashboard,
	.mdr-hidden-moisture__cards {
		grid-template-columns: 1fr;
	}

	.mdr-docs-item {
		flex-direction: row;
	}

	.mdr-final-cta__inner {
		flex-direction: column;
		align-items: flex-start;
	}

	.mdr-final-cta__phone {
		align-items: flex-start;
		width: 100%;
	}

	.mdr-faq-section .grady-wrap {
		padding-inline: clamp(var(--spacing-4), 5vw, var(--spacing-5));
	}

	.mdr-faq-section .grady-heading {
		font-size: clamp(1.375rem, 5.5vw, var(--font-size-heading));
		line-height: var(--line-height-heading);
	}

	.mdr-faq summary {
		gap: var(--space-3);
		padding-block: var(--space-4);
	}

	.mdr-faq summary::after {
		align-self: flex-start;
		margin-top: 0.05em;
		margin-left: var(--space-3);
	}

	.mdr-faq details p {
		padding: 0 0 var(--space-5);
	}

	.mdr-service-area__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: var(--space-3);
	}

	.mdr-service-area__list a {
		font-size: clamp(0.875rem, 0.15vw + 0.84rem, 0.9375rem);
		letter-spacing: 0.06em;
		padding: var(--space-2) var(--space-1) var(--space-2) 0;
	}
}

@media (max-width: 22rem) {
	.mdr-service-area__grid {
		grid-template-columns: 1fr;
	}
}

/* �� Desktop microinteractions (Sprint 12) �� */

@media (min-width: 48.0625rem) {
	.mdr-why-card,
	.mdr-cause-card,
	.mdr-spec-card,
	.mdr-docs-item,
	.mdr-project-card,
	.mdr-hidden-moisture__card,
	.mdr-handle-item {
		transition:
			transform 0.35s var(--motion-ease),
			border-color var(--transition),
			background-color var(--transition),
			box-shadow 0.35s var(--motion-ease);
	}

	.mdr-why-card:hover,
	.mdr-cause-card:hover,
	.mdr-spec-card:hover,
	.mdr-docs-item:hover,
	.mdr-project-card:hover,
	.mdr-hidden-moisture__card:hover {
		transform: translateY(-4px);
		border-color: var(--divider-bronze-soft);
	}

	.mdr-hero__actions .grady-btn {
		transition:
			background-color var(--transition),
			border-color var(--transition),
			color var(--transition),
			transform 0.3s var(--motion-ease);
	}

	.mdr-hero__actions .grady-btn:hover {
		transform: translateY(-2px);
	}
}

@media (prefers-reduced-motion: reduce) {
	.mdr-why-card,
	.mdr-cause-card,
	.mdr-spec-card,
	.mdr-docs-item,
	.mdr-project-card,
	.mdr-hidden-moisture__card,
	.mdr-hero__actions .grady-btn {
		transition: none;
	}

	.mdr-why-card:hover,
	.mdr-cause-card:hover,
	.mdr-spec-card:hover,
	.mdr-docs-item:hover,
	.mdr-project-card:hover,
	.mdr-hidden-moisture__card:hover,
	.mdr-hero__actions .grady-btn:hover,
	.mdr-project-card__more:hover {
		transform: none;
	}

	.mdr-service-area__toggle:hover {
		transform: none;
	}

	.mdr-service-area__list a:hover {
		transform: none;
	}
}

/* �� Typography refinement (cascade override) �� */

.mdr-page .grady-body,
.mdr-hero__body,
.mdr-handle-item p,
.mdr-why-card p,
.mdr-hidden-moisture__card p,
.mdr-hidden-moisture__editorial .grady-body,
.mdr-document-why__copy .grady-body,
.mdr-document-why__list li,
.mdr-cause-card p,
.mdr-spec-card__copy,
.mdr-spec-card__features li,
.mdr-section__header .grady-body,
.mdr-docs-item__copy p,
.mdr-insurance-cta p,
.mdr-faq details p,
.mdr-service-area__intro .grady-body,
.mdr-service-area__support {
	font-size: var(--mdr-body-size);
	line-height: var(--mdr-body-lh);
	font-weight: var(--mdr-body-weight);
}

.mdr-hidden-moisture__editorial .grady-body + .grady-body,
.mdr-document-why__copy .grady-body + .grady-body,
.mdr-section__header .grady-body + .grady-body,
.mdr-page .grady-body + .grady-body {
	margin-top: var(--mdr-para-gap);
}

.mdr-why-card__title,
.mdr-handle-item__title,
.mdr-hidden-moisture__card__title,
.mdr-cause-card__title,
.mdr-docs-item__copy__title {
	font-size: var(--mdr-card-title);
}

.mdr-loss-timeline__lede,
.mdr-loss-timeline__desc {
	font-size: var(--mdr-timeline-desc);
	line-height: var(--mdr-body-lh);
	font-weight: var(--mdr-body-weight);
}

.mdr-project-card__meta li {
	font-size: var(--mdr-body-size);
	line-height: var(--mdr-body-lh);
	font-weight: var(--mdr-body-weight);
}

.mdr-faq summary {
	font-size: var(--mdr-faq-question);
	line-height: var(--mdr-body-lh);
	font-weight: var(--font-weight-semibold);
	padding-block: var(--space-5);
}

.mdr-faq details p {
	padding-bottom: var(--space-5);
}

.mdr-loss-timeline__lede {
	color: var(--mdr-dark-body);
}

.mdr-hero__body,
.mdr-section--dark .grady-body--light,
.mdr-section--graphite .grady-body--light,
.mdr-loss-timeline__desc,
.mdr-docs-item__copy p,
.mdr-insurance-cta p,
.mdr-project-card__meta li,
.mdr-final-cta__copy .grady-body,
.mdr-spec-card__copy,
.mdr-spec-card__features li,
.mdr-service-area__support {
	color: var(--mdr-dark-muted);
}

.mdr-hero__body,
.mdr-section--dark .mdr-section__header .grady-body--light,
.mdr-section--graphite .mdr-section__header .grady-body--light {
	color: var(--mdr-dark-body);
}

.mdr-section--ivory .grady-body,
.mdr-handle-item p,
.mdr-why-card p,
.mdr-hidden-moisture__card p,
.mdr-hidden-moisture__editorial .grady-body,
.mdr-document-why__copy .grady-body,
.mdr-document-why__list li,
.mdr-cause-card p,
.mdr-faq details p {
	color: var(--color-text-on-light);
}

/* �� Sprint 18: Mold-specific sections �� */

.mdr-containment {
	padding-block: clamp(var(--spacing-12), 10vw, var(--spacing-15));
	background: var(--color-ivory);
}

.mdr-containment__inner {
	display: grid;
	grid-template-columns: 40fr 60fr;
	gap: clamp(var(--spacing-8), 6vw, var(--spacing-12));
	align-items: start;
}

.mdr-containment__editorial .grady-eyebrow {
	color: var(--color-bronze-dark);
}

.mdr-containment__editorial .grady-body {
	max-width: 34rem;
}

.mdr-containment__editorial .grady-body + .grady-body {
	margin-top: var(--space-4);
}

.mdr-containment__photo {
	margin: 0 0 var(--space-5);
}

.mdr-containment__photo-frame {
	overflow: hidden;
	border: var(--border-width) solid var(--divider-bronze-muted);
	border-radius: var(--radius-sm);
	min-height: 14rem;
}

.mdr-containment__photo-placeholder {
	min-height: 14rem;
}

.mdr-containment__cards {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--space-4);
}

.mdr-containment__card {
	padding: var(--space-4);
	background: rgba(9, 9, 9, 0.025);
	border: var(--border-width) solid var(--divider-bronze-muted);
}

.mdr-containment__card__title {
	margin: 0 0 var(--space-2);
	font-family: var(--font-display);
	font-size: var(--font-size-3xs);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui-xs);
	letter-spacing: var(--letter-spacing-process);
	text-transform: uppercase;
	color: var(--color-black);
}

.mdr-containment__card p {
	margin: 0;
	font-size: var(--font-size-sm);
	line-height: var(--line-height-list);
	color: var(--color-text-on-light);
}

.mdr-science-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--space-4);
}

.mdr-science-card {
	padding: var(--space-5);
	border: var(--border-width) solid var(--divider-bronze-process);
	background: rgba(255, 255, 255, 0.02);
}

.mdr-science-card__title {
	margin: 0 0 var(--space-2);
	font-family: var(--font-display);
	font-size: var(--font-size-3xs);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui-xs);
	letter-spacing: var(--letter-spacing-process);
	text-transform: uppercase;
	color: var(--color-ivory);
}

.mdr-science-card p {
	margin: 0;
	font-size: var(--font-size-sm);
	line-height: var(--line-height-list);
	color: var(--mdr-dark-muted);
}

.mdr-sensitive__inner {
	display: grid;
	grid-template-columns: 1.1fr 0.9fr;
	gap: clamp(var(--spacing-8), 5vw, var(--spacing-10));
	align-items: start;
}

.mdr-sensitive__aside {
	display: flex;
	flex-direction: column;
}

.mdr-sensitive__link {
	margin-top: var(--space-5);
	font-size: var(--font-size-4xs);
	color: var(--color-bronze-dark);
}

.mdr-sensitive__link::after {
	content: "\2192";
}

.mdr-sensitive__list {
	margin: 0;
	padding: var(--space-5);
	list-style: none;
	background: rgba(9, 9, 9, 0.025);
	border: var(--border-width) solid var(--divider-bronze-muted);
}

.mdr-sensitive__list li {
	padding-block: var(--space-2);
	font-size: var(--font-size-sm);
	line-height: var(--line-height-list);
	color: var(--color-text-on-light);
	border-bottom: var(--border-width) solid var(--divider-bronze-muted);
}

.mdr-sensitive__list li:last-child {
	border-bottom: none;
}

.mdr-equipment-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--space-4);
}

.mdr-equipment-card {
	padding: var(--space-5);
	border: var(--border-width) solid rgba(185, 155, 104, 0.18);
	background: rgba(255, 255, 255, 0.03);
	transition: border-color var(--transition);
}

.mdr-equipment-card:hover {
	border-color: rgba(185, 155, 104, 0.32);
}

.mdr-equipment-card__title {
	margin: 0 0 var(--space-2);
	font-family: var(--font-display);
	font-size: var(--font-size-3xs);
	font-weight: var(--font-weight-semibold);
	line-height: var(--line-height-ui-xs);
	letter-spacing: var(--letter-spacing-process);
	text-transform: uppercase;
	color: var(--color-ivory);
}

.mdr-equipment-card p {
	margin: 0;
	font-size: var(--font-size-sm);
	line-height: var(--line-height-list);
	color: var(--mdr-dark-muted);
}

.mdr-final-cta__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--space-3);
}

.mdr-final-cta .grady-btn--outline {
	color: var(--color-ivory);
	border-color: rgba(243, 239, 231, 0.45);
}

.mdr-final-cta .grady-btn--outline:hover {
	border-color: var(--color-bronze);
	background: rgba(185, 155, 104, 0.12);
	color: var(--color-ivory);
}

.mdr-cause-card .grady-link-arrow::after {
	content: "\2192";
}

.mdr-containment__editorial .grady-body,
.mdr-science-card p {
	color: inherit;
}

@media (max-width: 64rem) {
	.mdr-containment__inner {
		grid-template-columns: 1fr;
	}

	.mdr-science-grid,
	.mdr-equipment-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.mdr-sensitive__inner {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 48rem) {
	.mdr-containment__cards {
		grid-template-columns: 1fr;
	}

	.mdr-science-grid,
	.mdr-equipment-grid {
		grid-template-columns: 1fr;
	}

	.mdr-final-cta__inner {
		flex-direction: column;
		align-items: flex-start;
	}

	.mdr-final-cta__actions {
		width: 100%;
		flex-direction: column;
		align-items: stretch;
	}

	.mdr-final-cta__actions .grady-btn {
		justify-content: center;
	}
}

@media (prefers-reduced-motion: reduce) {
	.mdr-equipment-card:hover {
		border-color: rgba(185, 155, 104, 0.18);
	}
}

