/* ==========================================================================
   Content pages: testing library, single COA record, warehouse locations,
   contact, and the imported policy pages.
   ========================================================================== */

.wbs-woo__body.wbs-prose,
.wbs-prose { max-width: 78ch; }
.wbs-prose h2 {
	font-family: var(--wbs-font-heading);
	font-weight: 800; font-size: 1.5rem; line-height: 1.15;
	color: var(--wbs-ink-deep); margin: 1.7em 0 .5em;
}
.wbs-prose h2:first-child { margin-top: 0; }
.wbs-prose h3 {
	font-family: var(--wbs-font-heading);
	font-weight: 700; font-size: 1.12rem;
	color: var(--wbs-ink-deep); margin: 1.5em 0 .4em;
}
.wbs-prose p, .wbs-prose li { color: var(--wbs-muted); }
.wbs-prose ul, .wbs-prose ol { padding-left: 1.2em; }
.wbs-prose li { margin-bottom: .4em; }
.wbs-prose table { width: 100%; border-collapse: collapse; margin: 1em 0; }
.wbs-prose th, .wbs-prose td {
	padding: 10px 8px; border-bottom: 1px solid var(--wbs-line-soft);
	text-align: left; font-size: 14.5px;
}

/* --- COA library ---------------------------------------------------------- */
.wbs-coagrid--page { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }

.wbs-coapage__meta {
	display: grid; gap: 12px; list-style: none; margin: 0 0 22px; padding: 16px;
	grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
	background: var(--wbs-white);
	border: 1px solid var(--wbs-sage-cool);
	border-radius: var(--wbs-radius);
}
.wbs-coapage__meta span {
	display: block; font-size: 11.5px; letter-spacing: .08em;
	text-transform: uppercase; color: var(--wbs-muted);
}
.wbs-coapage__meta strong { font-size: 16px; color: var(--wbs-ink); }
.wbs-coapage__shot {
	margin: 0 0 22px; padding: 12px;
	background: var(--wbs-white);
	border: 1px solid var(--wbs-sage-cool);
	border-radius: var(--wbs-radius-lg);
}
.wbs-coapage__shot img { display: block; width: 100%; height: auto; border-radius: 8px; }

/* --- warehouse locations ---------------------------------------------------- */
.wbs-whpage { padding: clamp(24px, 4vw, 48px) 0 clamp(40px, 6vw, 72px); }
.wbs-whpage__hero { margin-bottom: 36px; }
.wbs-whpage__map { margin-bottom: 40px; }
.wbs-whpage__mapimg {
	display: block; width: 100%; height: auto;
	border: 1px solid var(--wbs-sage-cool);
	border-radius: var(--wbs-radius-lg);
	background: var(--wbs-white);
}
.wbs-whpage__mapnote, .wbs-whpage__note { font-size: 13px; color: var(--wbs-muted); }

.wbs-whlist {
	display: grid; gap: 14px; list-style: none; margin: 22px 0 0; padding: 0;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}
.wbs-whitem {
	padding: 18px;
	background: var(--wbs-white);
	border: 1px solid var(--wbs-sage-cool);
	border-radius: var(--wbs-radius);
}
.wbs-whitem--planned { background: var(--wbs-paper); border-style: dashed; }
.wbs-whitem__status {
	display: inline-block; margin-bottom: 8px; padding: 3px 9px;
	border-radius: var(--wbs-radius-pill);
	background: var(--wbs-mist);
	font-size: 11px; font-weight: 700; letter-spacing: .04em;
	text-transform: uppercase; color: var(--wbs-teal-deep);
}
.wbs-whitem--planned .wbs-whitem__status { color: var(--wbs-rust); background: rgba(167,101,53,.10); }
.wbs-whitem__city {
	font-family: var(--wbs-font-heading);
	font-size: 1.1rem; font-weight: 800; margin: 0 0 6px; color: var(--wbs-ink-deep);
}
.wbs-whitem__note { font-size: 14px; color: var(--wbs-muted); margin-bottom: 8px; }

.wbs-whpage__coverage { margin-top: 44px; }
.wbs-tablewrap { overflow-x: auto; }
.wbs-table { width: 100%; border-collapse: collapse; margin: 18px 0; }
.wbs-table th, .wbs-table td {
	padding: 12px 10px; border-bottom: 1px solid var(--wbs-line-soft);
	text-align: left; font-size: 14.5px;
}
.wbs-table thead th {
	font-family: var(--wbs-font-heading); font-size: 12px;
	letter-spacing: .08em; text-transform: uppercase; color: var(--wbs-muted);
}

.wbs-pill.is-active { background: var(--wbs-teal); color: #fff; }
