/* ==========================================================================
   BCRC editorial system

   Replaces the card-and-grid homepage with an art-directed composition.
   Three rules govern everything below:

   1. Rules and whitespace separate content, not boxes.
   2. Photography is structural, not an accessory pasted into a container.
   3. Scale contrast carries hierarchy, so sections can be loud or quiet
      instead of all being the same height with the same padding.
   ========================================================================== */

:root {
	/* Resolved against the viewport, not the containing column: inside a
	   grid cell `100%` is the cell width and the calc collapses to the
	   minimum, which silently breaks alignment with the header. */
	--bcrc-gutter: max(
		var(--wp--preset--spacing--30),
		calc((100vw - var(--wp--style--global--wide-size)) / 2)
	);
}

/* --------------------------------------------------------------------------
   Hero: type column against a photograph that runs to the viewport edge
   -------------------------------------------------------------------------- */

.bcrc-lede-hero {
	position: relative;
	display: grid;
	grid-template-columns: 1fr;
	background: var(--wp--preset--color--base);
	border-bottom: 1px solid var(--wp--preset--color--line);
}

@media (min-width: 900px) {
	.bcrc-lede-hero {
		grid-template-columns: minmax(0, 1fr) minmax(0, 44%);
		align-items: stretch;
		min-height: min(74vh, 680px);
	}
}

.bcrc-lede-hero__type {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: var(--wp--preset--spacing--30);
	padding: clamp(2.5rem, 6vw, 5rem) var(--wp--preset--spacing--30)
	         clamp(2.5rem, 5vw, 4rem) var(--bcrc-gutter);
}

.bcrc-lede-hero__title {
	margin: 0;
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--hero);
	font-weight: 700;
	line-height: 1.24;
	letter-spacing: -.003em;
	max-width: 15ch;
	text-wrap: balance;
}

/* The serif is the human voice. It appears only where a person is speaking
   or where the organisation is explaining itself plainly. */
.bcrc-lede-hero__say {
	margin: 0;
	max-width: 40ch;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(1.15rem, 1.9vw, 1.45rem);
	line-height: 1.45;
	color: var(--wp--preset--color--contrast-2);
}

.bcrc-lede-hero__do {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.25rem 1.75rem;
	margin-top: .5rem;
}

.bcrc-lede-hero__media {
	position: relative;
	min-height: 320px;
	background: var(--wp--preset--color--base-2);
}
.bcrc-lede-hero__media img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}
@media (max-width: 899px) {
	.bcrc-lede-hero__media { min-height: 52vw; max-height: 340px; }
}

/* --------------------------------------------------------------------------
   Journey directory: the four visitor journeys as an index, not cards

   Full-width rows read faster than a four-up card grid, give a much larger
   touch target, and let the journey name be set at a size that actually
   signals importance. The photograph is a desktop-only enrichment, so
   nothing is lost without hover.
   -------------------------------------------------------------------------- */

.bcrc-directory { position: relative; }

/* Heading and note stack on the page grid. The note used to sit at the far
   end of a space-between row, where it floated mid-page and lost its
   alignment to the prose cascade. A stacked subhead cannot drift. */
.bcrc-directory__head {
	display: block;
	padding-bottom: var(--wp--preset--spacing--30);
}
.bcrc-directory__head h2 {
	margin: 0;
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--xxl);
	font-weight: 700;
	letter-spacing: var(--wp--custom--tracking--tight);
}
.bcrc-directory__note {
	margin: .6rem 0 0;
	max-width: 52ch;
	font-size: var(--wp--preset--font-size--md);
	line-height: 1.5;
	color: var(--wp--preset--color--contrast-2);
}

.bcrc-directory__list { list-style: none; margin: 0; padding: 0; }

.bcrc-row { border-top: 1px solid var(--wp--preset--color--line); }
.bcrc-row:last-child { border-bottom: 1px solid var(--wp--preset--color--line); }

.bcrc-row__link {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: center;
	gap: 1rem 2rem;
	padding: clamp(1.5rem, 3.2vw, 2.4rem) 0;
	text-decoration: none;
	color: inherit;
	transition: padding-inline-start .22s var(--bcrc-ease), color .18s var(--bcrc-ease);
}
.bcrc-row__link:hover { color: var(--wp--preset--color--brand-ink); }
@media (min-width: 900px) {
	.bcrc-row__link:hover { padding-inline-start: 1.25rem; }
}
.bcrc-row__link:focus-visible {
	outline: 3px solid var(--wp--preset--color--brand);
	outline-offset: -3px;
}

.bcrc-row__name {
	margin: 0;
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(1.5rem, 3.6vw, 2.6rem);
	font-weight: 700;
	line-height: 1.26;
	letter-spacing: -.002em;
	text-wrap: balance;
}
.bcrc-row__what {
	grid-column: 1 / -1;
	margin: .5rem 0 0;
	max-width: 52ch;
	font-size: var(--wp--preset--font-size--md);
	line-height: 1.5;
	color: var(--wp--preset--color--contrast-2);
}
@media (min-width: 900px) {
	.bcrc-row__what { grid-column: 1; max-width: 44ch; margin-top: .55rem; }
}

.bcrc-row__go {
	display: inline-flex;
	align-items: center;
	gap: .55rem;
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 700;
	white-space: nowrap;
	color: var(--wp--preset--color--brand-ink);
	align-self: start;
	padding-top: .35rem;
}
.bcrc-row__go svg { flex: none; transition: transform .22s var(--bcrc-ease); }
.bcrc-row__link:hover .bcrc-row__go svg { transform: translateX(5px); }

@media (prefers-reduced-motion: reduce) {
	.bcrc-row__link, .bcrc-row__go svg { transition: none; }
}

/* --------------------------------------------------------------------------
   Impact: one figure carries the section, the rest are a quiet run of text
   -------------------------------------------------------------------------- */

.bcrc-impact { display: grid; gap: clamp(2rem, 4vw, 3.5rem); }
@media (min-width: 900px) {
	.bcrc-impact { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); align-items: end; }
}

.bcrc-impact__figure {
	display: block;
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(5rem, 15vw, 12rem);
	font-weight: 700;
	line-height: 1.0;
	letter-spacing: -.004em;
	color: var(--wp--preset--color--brand);
	font-variant-numeric: tabular-nums;
}
.bcrc-impact__means {
	margin: 1.25rem 0 0;
	max-width: 26ch;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(1.2rem, 2.1vw, 1.6rem);
	line-height: 1.35;
	color: var(--wp--preset--color--contrast);
}
.bcrc-impact__note {
	margin: .85rem 0 0;
	font-size: var(--wp--preset--font-size--xs);
	color: var(--wp--preset--color--contrast-2);
}

.bcrc-impact__rest { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; }
.bcrc-impact__item {
	display: grid;
	grid-template-columns: minmax(4.5rem, auto) 1fr;
	gap: 1.25rem;
	align-items: baseline;
	padding: 1rem 0;
	border-top: 1px solid var(--wp--preset--color--line);
}
.bcrc-impact__item:last-child { border-bottom: 1px solid var(--wp--preset--color--line); }
.bcrc-impact__n {
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(1.5rem, 2.6vw, 2rem);
	font-weight: 700;
	letter-spacing: -.002em;
	font-variant-numeric: tabular-nums;
	color: var(--wp--preset--color--deep);
}
.bcrc-impact__t {
	font-size: var(--wp--preset--font-size--sm);
	line-height: 1.45;
	color: var(--wp--preset--color--contrast-2);
}

/* --------------------------------------------------------------------------
   Featured service: photograph and two routes, deliberately asymmetric
   -------------------------------------------------------------------------- */

.bcrc-feature-split { display: grid; gap: 0; }
@media (min-width: 900px) {
	.bcrc-feature-split { grid-template-columns: minmax(0, 40%) minmax(0, 1fr); }
}
.bcrc-feature-split__media { position: relative; min-height: 300px; background: var(--wp--preset--color--base-2); }
.bcrc-feature-split__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; display: block; }
@media (max-width: 899px) { .bcrc-feature-split__media { min-height: 56vw; max-height: 320px; } }

.bcrc-feature-split__body {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 1.25rem;
	padding: clamp(2rem, 4.5vw, 3.5rem) 0 clamp(2rem, 4.5vw, 3.5rem) clamp(1.5rem, 4vw, 3.5rem);
}
@media (max-width: 899px) { .bcrc-feature-split__body { padding-left: 0; padding-top: 1.75rem; } }

.bcrc-feature-split__title {
	margin: 0;
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--xxxl);
	font-weight: 700;
	line-height: 1.24;
	letter-spacing: -.002em;
}
.bcrc-feature-split__say {
	margin: 0;
	max-width: 46ch;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(1.1rem, 1.7vw, 1.3rem);
	line-height: 1.45;
	color: var(--wp--preset--color--contrast-2);
}

.bcrc-routes { list-style: none; margin: .5rem 0 0; padding: 0; display: grid; gap: 0; }
.bcrc-route { border-top: 1px solid var(--wp--preset--color--line); }
.bcrc-route:last-child { border-bottom: 1px solid var(--wp--preset--color--line); }
.bcrc-route a {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 1rem;
	padding: 1.05rem 0;
	text-decoration: none;
	color: inherit;
	font-family: var(--wp--preset--font-family--display);
	font-weight: 600;
	font-size: var(--wp--preset--font-size--lg);
	transition: color .16s var(--bcrc-ease);
}
.bcrc-route a:hover { color: var(--wp--preset--color--brand-ink); }
.bcrc-route a::after { content: "\2192"; color: var(--wp--preset--color--brand-ink); }

/* --------------------------------------------------------------------------
   Stories: one dominant story, two supporting. Not three equal cards.
   -------------------------------------------------------------------------- */

.bcrc-stories-lead { display: grid; gap: clamp(2rem, 4vw, 3.5rem); }
@media (min-width: 900px) {
	.bcrc-stories-lead { grid-template-columns: minmax(0, 1fr) minmax(0, .82fr); align-items: start; }
}

.bcrc-story-lead { display: grid; gap: 1.75rem; }
@media (min-width: 620px) {
	.bcrc-story-lead { grid-template-columns: minmax(0, 15rem) minmax(0, 1fr); align-items: start; }
}
.bcrc-story-lead__photo { aspect-ratio: 4 / 5; overflow: hidden; background: var(--wp--preset--color--base-2); }
.bcrc-story-lead__photo img { width: 100%; height: 100%; object-fit: cover; display: block; }

.bcrc-story-lead__quote { margin: 0; }
.bcrc-story-lead__quote p {
	margin: 0;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(1.35rem, 2.6vw, 1.9rem);
	line-height: 1.32;
	letter-spacing: -.002em;
	text-wrap: pretty;
}
.bcrc-story-lead__cite {
	margin-top: 1.25rem;
	padding-top: 1rem;
	border-top: 1px solid var(--wp--preset--color--line);
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--sm);
}
.bcrc-story-lead__cite b { display: block; font-weight: 700; }
.bcrc-story-lead__cite span { color: var(--wp--preset--color--contrast-2); font-weight: 400; }

.bcrc-story-more { list-style: none; margin: 0; padding: 0; }
.bcrc-story-more li { border-top: 1px solid var(--wp--preset--color--line); padding: 1.35rem 0; }
.bcrc-story-more li:last-child { border-bottom: 1px solid var(--wp--preset--color--line); }
.bcrc-story-more p {
	margin: 0 0 .6rem;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: var(--wp--preset--font-size--lg);
	line-height: 1.4;
}
.bcrc-story-more .who {
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--xs);
	font-weight: 700;
	letter-spacing: var(--wp--custom--tracking--caps);
	text-transform: uppercase;
	color: var(--wp--preset--color--contrast-2);
}

/* --------------------------------------------------------------------------
   Section rhythm: sections are allowed to be different sizes
   -------------------------------------------------------------------------- */

.bcrc-sec-lg { padding-block: clamp(3rem, 6vw, 5.5rem); }
.bcrc-sec-md { padding-block: clamp(2.75rem, 5.5vw, 4.5rem); }
.bcrc-sec-sm { padding-block: clamp(2rem, 4vw, 3rem); }

.bcrc-inset { padding-inline: var(--bcrc-gutter); }

/* A single hairline, used where a section change needs marking but a full
   background band would be too heavy. */
.bcrc-rule { border-top: 1px solid var(--wp--preset--color--line); }

/* Text action: the third tier of the CTA hierarchy. Not every action is a
   button. */
.bcrc-textlink {
	display: inline-flex;
	align-items: center;
	gap: .45rem;
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 700;
	color: var(--wp--preset--color--deep);
	text-decoration: none;
	border-bottom: 2px solid var(--wp--preset--color--brand);
	padding-bottom: 2px;
	transition: color .16s var(--bcrc-ease), border-color .16s var(--bcrc-ease);
}
.bcrc-textlink:hover { color: var(--wp--preset--color--brand-ink); border-color: var(--wp--preset--color--brand-ink); }
.bcrc-textlink::after { content: "\2192"; }

/* Square by default. Radius is now the exception, not the rule. */
.bcrc-card, .bcrc-story, .bcrc-person__photo, .bcrc-hero__media img,
.bcrc-card__media, .bcrc-story__photo, .bcrc-notice { border-radius: 0; }

/* --------------------------------------------------------------------------
   Settlement band: the quietest, plainest block on the page

   This audience may be reading in a second language, on a cheap phone, in a
   stressful week. So: short lines, large text, no decoration, one action.
   -------------------------------------------------------------------------- */

.bcrc-settle { padding-block: clamp(3rem, 6.5vw, 5.5rem); }

.bcrc-settle__grid { display: grid; gap: clamp(2rem, 4vw, 4rem); }
@media (min-width: 900px) {
	.bcrc-settle__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: start; }
}

.bcrc-settle__title {
	margin: 0 0 1rem;
	max-width: 20ch;
	font-family: var(--wp--preset--font-family--display);
	font-size: clamp(1.75rem, 3.4vw, 2.7rem);
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: -.002em;
	color: #fff;
	text-wrap: balance;
}
.bcrc-settle__say {
	margin: 0 0 1.75rem;
	max-width: 40ch;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(1.1rem, 1.8vw, 1.35rem);
	line-height: 1.5;
	color: rgba(255, 255, 255, .86);
}
.bcrc-settle__cta { margin: 0; }

.bcrc-settle__list {
	list-style: none;
	margin: 0 0 1.75rem;
	padding: 0;
	border-top: 1px solid rgba(255, 255, 255, .22);
}
.bcrc-settle__list li {
	padding: .9rem 0 .9rem 1.75rem;
	border-bottom: 1px solid rgba(255, 255, 255, .22);
	font-size: clamp(1rem, 1.5vw, 1.125rem);
	line-height: 1.45;
	color: #fff;
	position: relative;
}
/* A short rule rather than a bullet: quieter, and it lines up. */
.bcrc-settle__list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 1.45em;
	width: .85rem;
	height: 2px;
	background: var(--wp--preset--color--brand);
}

.bcrc-settle__caveat {
	margin: 0;
	max-width: 46ch;
	font-size: var(--wp--preset--font-size--sm);
	line-height: 1.6;
	color: rgba(255, 255, 255, .78);
}

/* --------------------------------------------------------------------------
   Closing assistance block. Left-aligned: nothing else on the page is
   centred, so centring this would be arbitrary.
   -------------------------------------------------------------------------- */

.bcrc-close__grid { display: grid; gap: clamp(1.5rem, 3vw, 3rem); }
@media (min-width: 820px) {
	.bcrc-close__grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); align-items: start; }
}
.bcrc-close__title {
	margin: 0;
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--xxxl);
	font-weight: 700;
	line-height: 1.24;
	letter-spacing: -.002em;
	max-width: 14ch;
	text-wrap: balance;
}
.bcrc-close__say {
	margin: 0 0 1.5rem;
	max-width: 48ch;
	font-size: var(--wp--preset--font-size--lg);
	line-height: 1.5;
	color: var(--wp--preset--color--contrast-2);
}
.bcrc-close__acts {
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1rem 1.75rem;
}

/* The partner strip is furniture, so its heading steps back. */
.bcrc-sec--partners .bcrc-sec__title {
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 700;
	letter-spacing: var(--wp--custom--tracking--caps);
	text-transform: uppercase;
	color: var(--wp--preset--color--contrast-2);
}

/* The impact heading is small; the figure is the headline. */
.bcrc-sec--stats .bcrc-sec__title {
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 700;
	letter-spacing: var(--wp--custom--tracking--caps);
	text-transform: uppercase;
	color: var(--wp--preset--color--contrast-2);
}

/* --------------------------------------------------------------------------
   Component lists opt out of the prose measure

   The readable-line-length cap belongs to running text. Every layout element
   in this theme that happens to be a list carries a bcrc- class, so keying
   the exemption off that is both robust and self-maintaining: new components
   are covered without anyone remembering to add them here.
   -------------------------------------------------------------------------- */

.bcrc-content ul[class*="bcrc-"],
.bcrc-content ol[class*="bcrc-"],
.bcrc-content dl[class*="bcrc-"] {
	max-width: none !important;
	padding-left: 0;
	margin-left: 0 !important;
}

.bcrc-content :where(.bcrc-directory, .bcrc-directory__head, .bcrc-impact,
	.bcrc-stories-lead, .bcrc-settle__grid, .bcrc-close__grid,
	.bcrc-feature-split, .bcrc-lede-hero, .bcrc-svc-hero__grid, .bcrc-next) {
	max-width: none;
}
.bcrc-content :where(.bcrc-row__what, .bcrc-settle__caveat, .bcrc-close__say,
	.bcrc-impact__means, .bcrc-svc-hero__say) {
	max-width: none;
}

/* ==========================================================================
   Civic register

   The institutional half of the direction. Labels, figures and rules behave
   like a public record: everything is named, sourced and legible. Used only
   where it carries real information, never as decoration.
   ========================================================================== */

/* All figures line up in columns. */
.bcrc-impact__figure, .bcrc-impact__n, .bcrc-stat__value,
.bcrc-deets dd, .bcrc-timeline__year, table td, table th {
	font-variant-numeric: tabular-nums;
}

/* The metadata label. Small, tracked, quiet, and only ever attached to a
   real value: a service area, a source, a date, a status. */
.bcrc-label {
	display: inline-block;
	font-family: var(--wp--preset--font-family--display);
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--wp--preset--color--contrast-2);
}

.bcrc-row__head { display: flex; flex-direction: column-reverse; gap: .5rem; }

/* The institutional name of the service sits above the visitor's own words,
   set small: they can recognise the plain question first and learn the
   programme name second. */
.bcrc-row__area {
	font-family: var(--wp--preset--font-family--display);
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--wp--preset--color--contrast-2);
	transition: color .18s var(--bcrc-ease);
}
.bcrc-row__link:hover .bcrc-row__area { color: var(--wp--preset--color--brand-ink); }

/* --------------------------------------------------------------------------
   Masthead utility bar

   A public service is judged partly on how easy it is to reach. The phone
   number, the interpreter line and Contact stay visible at every width,
   above the navigation rather than inside it.
   -------------------------------------------------------------------------- */

.bcrc-utility {
	background: var(--wp--preset--color--deep);
	color: #fff;
	font-family: var(--wp--preset--font-family--display);
	font-size: .8125rem;
}
.bcrc-utility__inner {
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding: .55rem var(--wp--preset--spacing--30);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: .35rem 1.5rem;
	justify-content: space-between;
}
.bcrc-utility__group { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem 1.5rem; }
.bcrc-utility a {
	color: #fff;
	text-decoration: none;
	font-weight: 600;
	border-bottom: 1px solid rgba(255, 255, 255, .35);
	padding-bottom: 1px;
}
.bcrc-utility a:hover { border-bottom-color: var(--wp--preset--color--brand); color: var(--wp--preset--color--brand); }
.bcrc-utility a:focus-visible { outline: 2px solid var(--wp--preset--color--brand); outline-offset: 3px; }
.bcrc-utility__note { color: rgba(255, 255, 255, .78); font-weight: 400; }

@media (max-width: 620px) {
	.bcrc-utility__inner { padding-inline: var(--wp--preset--spacing--20); font-size: .78rem; }
	.bcrc-utility__note { display: none; }
}

/* --------------------------------------------------------------------------
   Service-design blocks: what a visitor needs to know before acting
   -------------------------------------------------------------------------- */

.bcrc-facts {
	display: grid;
	gap: 0;
	margin: var(--wp--preset--spacing--30) 0;
	border-top: 1px solid var(--wp--preset--color--line);
}
@media (min-width: 760px) { .bcrc-facts { grid-template-columns: repeat(3, 1fr); border-top: 0; } }

.bcrc-fact {
	padding: 1.1rem 0;
	border-bottom: 1px solid var(--wp--preset--color--line);
}
@media (min-width: 760px) {
	.bcrc-fact { border-top: 1px solid var(--wp--preset--color--line); border-bottom: 0; padding: 1.1rem 1.5rem 1.1rem 0; }
}
.bcrc-fact dt {
	font-family: var(--wp--preset--font-family--display);
	font-size: .6875rem;
	font-weight: 700;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--wp--preset--color--contrast-2);
	margin-bottom: .3rem;
}
.bcrc-fact dd { margin: 0; font-size: var(--wp--preset--font-size--md); line-height: 1.5; }

/* "What happens next" is the single most reassuring thing a service page can
   tell an anxious visitor, so it gets a treatment of its own. */
.bcrc-next {
	border-top: 2px solid var(--wp--preset--color--deep);
	padding-top: var(--wp--preset--spacing--30);
	margin-top: var(--wp--preset--spacing--40);
}
.bcrc-next__title {
	margin: 0 0 1rem;
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--xl);
	font-weight: 700;
	letter-spacing: var(--wp--custom--tracking--tight);
}
.bcrc-next__list { list-style: none; margin: 0; padding: 0; counter-reset: bcrc-next; }
.bcrc-next__list li {
	counter-increment: bcrc-next;
	display: grid;
	grid-template-columns: 2rem 1fr;
	gap: 1rem;
	padding: .85rem 0;
	border-bottom: 1px solid var(--wp--preset--color--line);
	line-height: 1.5;
}
/* Numbers here are legitimate: this really is a sequence, and the order is
   information the visitor needs. */
.bcrc-next__list li::before {
	content: counter( bcrc-next );
	font-family: var(--wp--preset--font-family--display);
	font-weight: 700;
	font-variant-numeric: tabular-nums;
	color: var(--wp--preset--color--brand-ink);
}

/* --------------------------------------------------------------------------
   Service page opener
   -------------------------------------------------------------------------- */

.bcrc-svc-hero { padding-block: clamp(2.5rem, 5vw, 4.25rem) clamp(2rem, 4vw, 3rem); }
.bcrc-svc-hero__grid { display: grid; gap: clamp(1.5rem, 3.5vw, 3.5rem); }
@media (min-width: 900px) {
	.bcrc-svc-hero__grid { grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); align-items: end; }
}
.bcrc-svc-hero__title {
	margin: .6rem 0 0;
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--display);
	font-weight: 700;
	line-height: 1.24;
	letter-spacing: -.002em;
	max-width: 20ch;
	text-wrap: balance;
}
.bcrc-svc-hero__say {
	margin: 0;
	max-width: 44ch;
	font-family: var(--wp--preset--font-family--editorial);
	font-size: clamp(1.15rem, 1.9vw, 1.4rem);
	line-height: 1.45;
	color: var(--wp--preset--color--contrast-2);
}
.bcrc-svc-hero__do { margin: 1.5rem 0 0; display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.75rem; }

/* A plain list of what we actually help with. Rules, not tiles. */
.bcrc-helps { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; }
@media (min-width: 760px) { .bcrc-helps { grid-template-columns: 1fr 1fr; column-gap: 3rem; } }
.bcrc-helps li {
	padding: .95rem 0;
	border-bottom: 1px solid var(--wp--preset--color--line);
	font-size: var(--wp--preset--font-size--md);
	line-height: 1.5;
}
.bcrc-helps li:first-child, .bcrc-helps li:nth-child(2) { border-top: 1px solid var(--wp--preset--color--line); }
@media (max-width: 759px) {
	.bcrc-helps li:nth-child(2) { border-top: 0; }
}

.bcrc-svc-section { padding-block: clamp(1.75rem, 3.5vw, 2.75rem); }
.bcrc-svc-section > h2 {
	margin: 0 0 1.25rem;
	font-family: var(--wp--preset--font-family--display);
	font-size: var(--wp--preset--font-size--xxl);
	font-weight: 700;
	letter-spacing: -.002em;
}

/* The acknowledgement heading breaks on measure, not on a <br>: a hard break
   inside a heading joins the words together for screen readers. */
.bcrc-ack-band__title { max-width: 9ch; }
@media (max-width: 899px) { .bcrc-ack-band__title { max-width: none; } }

/* On narrow screens the row action moves below the description. Beside the
   heading it competes with it and squeezes long journey names onto three
   lines; the whole row is one link either way. */
@media (max-width: 720px) {
	.bcrc-row__link { grid-template-columns: 1fr; gap: .35rem; }
	.bcrc-row__go { grid-row: 3; padding-top: .75rem; }
	.bcrc-row__what { margin-top: .45rem; }
}

/* Touch targets: every row and route is comfortably over 44px. */
@media (pointer: coarse) {
	.bcrc-row__link { padding-block: 1.5rem; }
	.bcrc-route a { padding-block: 1.15rem; }
	.bcrc-utility a { padding-block: .3rem; }
}
