/* DOB Starter Theme | css/06-sections.css | v0.1.1 | 2026-04-30 | Generated by Claude, DOB-S8 */
/* Generic section styles: case, mapping, sponsor, org-band, plus the
   front-page Anchor Cover additions for the 3-up nested-scale band. */

/* === Case section (DOB-S8: copy-only narrowed) === */
.case {
	/* Inherits default section padding from layout.css */
}

.case h2 {
	margin-bottom: var(--s-4);
}

.case p {
	margin-bottom: var(--s-4);
}

/* === Mapping spotlight === */
.mapping {
	/* Inherits default section padding from layout.css */
}

.mapping h2 {
	margin-bottom: var(--s-3);
}

.mapping__lede {
	font-size: var(--fs-lede);
	color: var(--c-stone);
	max-width: 36rem;
	margin-bottom: var(--s-6);
}

.mapping__cta {
	margin-top: var(--s-6);
	margin-bottom: 0;
}

/* --- 3-up nested-scale band (DOB-S8 Anchor Cover) ---
 * Three figures in a row at desktop, captioned with one-word museum-label
 * scale names (Planet / Continent / Bioregion). Stacks vertically on
 * mobile. Each figure sits at 1:1 to keep the eye on the cartographic
 * subject regardless of source aspect.
 */
/* The grid uses repeat(auto-fit, ...) at desktop so a partial render (if
 * the PHP gate is ever bypassed) collapses gracefully to the count of
 * children rather than leaving empty tracks. */
.mapping-scales {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--s-5);
	margin: 0;
}

@media (min-width: 720px) {
	.mapping-scales {
		grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
		gap: var(--s-5);
	}
}

@media (min-width: 1100px) {
	.mapping-scales {
		gap: var(--s-6);
	}
}

.mapping-scales__figure {
	margin: 0;
	display: flex;
	flex-direction: column;
}

.mapping-scales__img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	background: var(--c-cream-warm);
	border-radius: 4px;
}

.mapping-scales__cap {
	margin-top: var(--s-3);
	font-family: var(--f-label);
	font-size: var(--fs-label);
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--c-stone);
	font-weight: 500;
	text-align: center;
}

/* === Sponsor CTA panel === */
.sponsor {
	background: var(--c-ink);
	color: var(--c-cream);
}

.sponsor .container {
	text-align: center;
	max-width: 44rem;
}

.sponsor h2 {
	color: var(--c-cream);
	max-width: 22ch;
	margin-left: auto;
	margin-right: auto;
}

.sponsor p {
	color: var(--c-cream-warm);
	font-size: var(--fs-lede);
	margin-bottom: var(--s-6);
}

.sponsor .section-eyebrow {
	color: var(--c-stone-light);
}

/* === Org footer band === */
.org-band {
	padding: var(--s-6) 0;
	background: var(--c-cream-warm);
	border-top: 1px solid color-mix(in srgb, var(--c-stone) 15%, transparent);
	border-bottom: 1px solid color-mix(in srgb, var(--c-stone) 15%, transparent);
}

.org-band p {
	text-align: center;
	font-family: var(--f-display);
	font-size: var(--fs-h3);
	font-style: italic;
	margin: 0;
	color: var(--c-stone);
	letter-spacing: -0.015em;
	font-weight: 400;
}
