/* JMU Painting — service-area (city) pages.
   Only the handful of classes unique to city pages live here; the hero,
   body intro, outcome grids, service cards, reviews, and CTA all reuse the
   existing .jmu-service-* styles. Uses theme tokens for consistency. */

/* --- Full-width sections ---
   On a standard service page some sections are capped at 760px because they
   sit above a full-width proof gallery. On area pages these sections contain
   full-width grids, so let them use the whole content column. The intro lead
   stays at a comfortable reading measure but is centered, not stranded left. */
.jmu-area-guide {
	max-width: 780px;
	margin-inline: auto;
	font-size: 1.1rem;
	line-height: 1.75;
	color: var(--text-muted);
}

.jmu-area-guide section {
	margin-top: var(--space-xl);
	scroll-margin-top: 8rem;
}

.jmu-area-guide h2 {
	color: var(--text-strong);
	font-size: clamp(1.8rem, 3vw, 2.5rem);
	line-height: 1.15;
}

.jmu-area-guide a {
	text-decoration: underline;
	text-underline-offset: 0.16em;
}

.jmu-area-guide__contents {
	border-bottom: 1px solid var(--border-color-muted);
	padding-bottom: var(--space-md);
}

.jmu-area-guide__contents ul {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 1.5rem;
	list-style: none;
	padding: 0;
}

.jmu-area-guide__decisions {
	margin: var(--space-lg) 0;
}

.jmu-area-guide__decisions div {
	padding: var(--space-md) 0 var(--space-md) var(--space-md);
	border-left: 3px solid var(--brand-red);
	border-bottom: 1px solid var(--border-color-muted);
}

.jmu-area-guide__decisions dt {
	font-weight: 700;
	color: var(--text-strong);
}

.jmu-area-guide__decisions dd {
	margin: 0.5rem 0 0;
}

.jmu-area-body .jmu-service-scope-section,
.jmu-area-body .jmu-service-outcome-section {
	max-width: none;
}

.jmu-area-body .jmu-service-body__intro {
	max-width: 900px;
	margin-inline: auto;
	text-align: center;
	justify-items: center;
}

.jmu-area-body .jmu-service-body__intro .jmu-service-body__lead {
	max-width: 760px;
}

/* --- Feature image (banner between intro and neighborhoods) --- */
.jmu-area-feature {
	margin: var(--space-xl) 0 0;
}

.jmu-area-feature img {
	display: block;
	width: 100%;
	height: clamp(240px, 34vw, 460px);
	object-fit: cover;
	object-position: center 40%;
	border-radius: var(--radius-lg);
}

/* --- Local-knowledge cards ("What Akron's Houses Ask of a Paint Job") ---
   A lighter 2-column treatment, distinct from the dark numbered outcome grid
   used by the "Why" section below, and a clean 2x2 for four items. */
.jmu-area-local-grid {
	list-style: none;
	margin: var(--space-lg) 0 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--space-md);
}

.jmu-area-local-grid li {
	background: var(--bg-warm);
	border: 1px solid var(--border-color-muted);
	border-left: 4px solid var(--brand-red);
	border-radius: var(--radius-lg);
	padding: var(--space-lg);
	display: flex;
	flex-direction: column;
	gap: var(--space-2xs);
}

.jmu-area-local-grid strong {
	font-family: var(--font-display);
	font-weight: 600;
	color: var(--text-strong);
	font-size: 1.25rem;
	line-height: 1.25;
}

.jmu-area-local-grid span {
	color: var(--text-muted);
	line-height: 1.6;
}

@media (max-width: 640px) {
	.jmu-area-local-grid {
		grid-template-columns: 1fr;
	}
}

/* --- Neighborhoods grid --- */
.jmu-area-neighborhoods {
	margin-top: var(--space-xl);
}

.jmu-area-neighborhood-grid {
	list-style: none;
	margin: var(--space-md) 0 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: var(--space-md);
}

.jmu-area-neighborhood-grid li {
	background: var(--bg-warm);
	border: 1px solid var(--border-color-muted);
	border-radius: var(--radius-lg);
	padding: var(--space-md);
	display: flex;
	flex-direction: column;
	gap: var(--space-3xs);
}

.jmu-area-neighborhood-grid strong {
	font-family: var(--font-display);
	font-weight: 600;
	color: var(--text-strong);
	font-size: 1.125rem;
}

.jmu-area-neighborhood-grid span {
	color: var(--text-muted);
	line-height: 1.5;
}

/* --- Nearby communities --- */
.jmu-area-nearby {
	margin-top: var(--space-xl);
	background: var(--bg-warm-strong);
	border-radius: var(--radius-lg);
	padding: var(--space-lg);
}

.jmu-area-nearby-list {
	list-style: none;
	margin: var(--space-sm) 0 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-2xs) var(--space-xs);
}

.jmu-area-nearby-list li {
	font-family: var(--font-display);
	font-weight: 600;
	font-size: 0.9rem;
	color: var(--brand-red);
	background: var(--white);
	border: 1px solid var(--border-color-muted);
	padding: 0.35rem 0.75rem;
	border-radius: var(--radius-full);
}

/* Editorial photo used only in the Cuyahoga Falls guide. */
.jmu-falls-local-photo { margin: 1.5rem 0 2rem; }
.jmu-falls-local-photo img { display: block; width: 100%; height: auto; }
.jmu-falls-local-photo figcaption { margin-top: 0.85rem; font-size: 0.95rem; line-height: 1.65; }
.jmu-falls-local-photo figcaption span { display: block; margin-top: 0.5rem; font-size: 0.8rem; }
