/*
 * Brightlink Law School — supplementary global styles.
 *
 * theme.json provides colour, typography, spacing and button/link
 * styling. This file covers what theme.json cannot express: a real
 * (non-":where()") heading/paragraph margin reset — WordPress emits its
 * own theme.json heading sizes wrapped in ":where()", which has zero
 * CSS specificity and was silently losing to the browser's UA
 * stylesheet (this was the cause of the H1 rendering smaller than the
 * lead paragraph on first render) — plus skip-link visibility, a
 * two-colour focus treatment, reduced-motion, anchor scroll offset, the
 * clickable-card technique, hero mobile stacking order, and light
 * polish for the header, footer and benefit grid.
 */

/* Header — single coherent implementation, reproducing the approved
   homepage reference mock-up. Container width, height and brand
   no-wrap are controlled explicitly here via dedicated classes rather
   than WordPress's align:wide/constrained-layout mechanics, so the
   result does not depend on how those interact with root-padding-aware
   alignment elsewhere in the theme. Navigation typography lives in
   theme.json (blocks."core/navigation") rather than being duplicated
   here, to avoid two competing sources for the same styling. */
.bls-site-header {
	padding: 0;
	border-bottom: 1px solid #E9E9EA;
}

.bls-site-header-inner {
	max-width: 1200px;
	margin-inline: auto;
	padding: 1.25rem 2rem;
}

/* Founder feedback: the text "Brightlink Law School" brand (a core
   Site Title block) is replaced with the approved icon-only logo mark
   (BL Logo no words transparent.png — deliberately not one of the
   supplied full wordmark files, since those read "Brightlink
   Learning", not the site's public "Brightlink Law School" identity).
   .bls-site-brand is now a plain anchor (no longer a heading/Site
   Title block), so it needs its own display/alignment rule; the
   parent .bls-site-header-inner's flex verticalAlignment:center still
   handles vertical centring against the navigation.

   ROOT CAUSE of the oversized-header bug: the <img> tag's own HTML
   width/height attributes were set to the logo file's actual intrinsic
   pixel dimensions (256x256 — the resized-for-web derivative, still
   far above the ~48px display size), rather than to the intended
   display size. Browsers use those attributes to reserve the image's
   box BEFORE any stylesheet has necessarily applied, and — critically —
   this theme's supplementary CSS (this file) is only enqueued on the
   published front-end via wp_enqueue_scripts; it is never loaded
   inside the WordPress Site Editor's template-part canvas, which only
   receives assets/css/editor.css (registered via add_editor_style()).
   Reviewing the header template part inside the Site Editor therefore
   rendered the <img> at its raw 256x256 HTML-attribute size with no
   corrective CSS in effect at all — exactly the "several-hundred-
   pixel-tall header" symptom reported. Fixed at the root by changing
   the HTML width/height attributes themselves to 48x48 (the intended
   desktop display size), so the image renders correctly-sized by
   default in ANY context, with or without this stylesheet. The CSS
   rules below remain in place for the front end's responsive
   (tablet/mobile) sizing and as redundant, defensive reinforcement of
   the same 48px desktop value. */
/* Founder feedback (brand lock-up round): the icon now sits beside
   live "Brightlink Law School" text inside the same anchor, rather
   than standing alone — the approved icon-only logo is unchanged; no
   full wordmark (which would read "Brightlink Learning") was used.
   The image's alt is now empty (decorative) and the visible text span
   is the anchor's sole accessible name, avoiding the
   "Brightlink Law School Brightlink Law School" duplicate-announcement
   problem a redundant alt/aria-label would otherwise cause. gap:14px
   is the icon-to-text spacing (mid-point of the requested 12-16px). */
.bls-site-brand {
	display: inline-flex;
	align-items: center;
	gap: 0.875rem;
	flex: 0 0 auto;
	white-space: nowrap;
}

.bls-site-brand__logo {
	display: block;
	height: 48px;
	width: auto;
	max-height: 48px;
	object-fit: contain;
	flex: 0 0 auto;
}

.bls-site-brand__text {
	display: block;
	font-size: 1.625rem;
	font-weight: 700;
	line-height: 1.1;
	color: var(--wp--preset--color--dark-text);
}

@media (max-width: 899px) {
	.bls-site-brand__logo {
		height: 43px;
		max-height: 43px;
	}

	.bls-site-brand__text {
		font-size: 1.4375rem;
	}
}

@media (max-width: 599px) {
	.bls-site-header-inner {
		padding: 1rem 1.25rem;
	}

	.bls-site-brand {
		gap: 0.625rem;
	}

	.bls-site-brand__logo {
		height: 39px;
		max-height: 39px;
	}

	.bls-site-brand__text {
		font-size: 1.3125rem;
	}
}

/* Real heading/paragraph margin reset: give every block a single,
   predictable rhythm driven entirely by the theme's block-gap value
   instead of fighting inconsistent browser default margins. */
h1, h2, h3, h4, h5, h6, p, ul, ol {
	margin-top: 0;
	margin-bottom: 0;
}

/* Real-selector link colour, for the same reason as the reset above:
   theme.json's element-level link colour is ":where()"-wrapped (zero
   specificity) and is not guaranteed to beat the browser's own default
   link colour. More specific rules elsewhere (button/utility colour
   classes, .bls-footer-links, .bls-footer-legal) still take precedence
   over this. */
a {
	color: var(--wp--preset--color--dark-blue);
}

a:hover {
	color: var(--wp--preset--color--purple);
}

/* Screen-reader-only text (skip link uses this until focused) */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}

.skip-link.screen-reader-text {
	background: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	display: block;
	font-weight: 600;
	padding: 1em 1.5em;
	position: absolute;
	left: 0.5rem;
	top: -100px;
	z-index: 100000;
	text-decoration: none;
	border-radius: 0 0 8px 8px;
	transition: top 0.2s ease;
}

.skip-link.screen-reader-text:focus,
.skip-link.screen-reader-text:focus-visible {
	clip: auto !important;
	clip-path: none !important;
	height: auto !important;
	width: auto !important;
	overflow: visible !important;
	margin: 0 !important;
	top: 0 !important;
}

/* Two-colour focus treatment: visible on both light and dark backgrounds */
a:focus-visible,
button:focus-visible,
.wp-block-button__link:focus-visible,
.wp-block-navigation-item__content:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
	outline: 3px solid var(--wp--preset--color--white);
	outline-offset: 2px;
	box-shadow: 0 0 0 5px var(--wp--preset--color--dark-blue);
	border-radius: 4px;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.001ms !important;
		scroll-behavior: auto !important;
	}
}

/* Anchor targets: comfortable landing offset for in-page jump navigation */
h1[id],
h2[id],
h3[id],
section[id] {
	scroll-margin-top: 1.5rem;
}

/* Accessible clickable-card technique: the visible link inside the card
   gets a full-card hit area and keeps its own focus outline, so
   keyboard and screen-reader users get the same single, clear target
   that mouse/touch users get. */
.bls-card {
	position: relative;
}

.bls-card__link {
	position: static;
}

.bls-card__link::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: inherit;
}

@media (max-width: 599px) {
	.wp-block-columns:not(.is-not-stacked-on-mobile) {
		gap: var(--wp--preset--spacing--30);
	}
}

/* Hero — cinematic editorial composition reproducing the approved
   homepage reference: a left text zone (~40-42%) integrated with a
   large photograph filling the remaining width (~58-60%), via CSS
   Grid. No Media & Text, no Columns, no centred layout, no overline
   (removed — the H1 is now the first textual element). Every element
   here is a plain Group/Heading/Paragraph/Buttons/Image, controlled
   entirely by this stylesheet via classes unique to this file, so
   nothing depends on WordPress-generated layout classes or theme.json
   preset generation.

   Font sizes are hardcoded (not theme.json presets) and marked
   !important — a deliberate, documented exception to the project's
   general "avoid !important" rule: earlier hero attempts used sound,
   standards-based approaches that should have worked but were
   repeatedly reported as still rendering incorrectly on the actual
   staging site. This hero depends on nothing outside this stylesheet
   block. No other element in the theme uses !important for sizing. */

.bls-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(360px, 42%) 1fr;
	align-items: stretch;
	min-height: 580px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-hero__text {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-hero__heading {
	font-size: clamp(3.5rem, 1.4375rem + 3.125vw, 4.25rem) !important;
	line-height: 1.04 !important;
	font-weight: 700 !important;
	letter-spacing: -0.015em !important;
	color: var(--wp--preset--color--dark-text) !important;
	margin: 0 !important;
}

/* Deterministic two-line break: each half of the headline is its own
   nowrap span, separated by an explicit <br> in the markup. This does
   not depend on the browser's natural wrapping point — "Clear
   pathways" and "into law" each render as a single unbroken run of
   text, and the <br> is solely what puts them on separate lines. */
.bls-hero__title-line {
	white-space: nowrap;
}

.bls-hero__rule {
	width: 56px;
	height: 3px;
	background-color: var(--wp--preset--color--dark-blue);
	margin: 1.375rem 0 1.75rem;
}

.bls-hero__lead {
	font-size: 1.1875rem !important;
	line-height: 1.55 !important;
	font-weight: 400 !important;
	color: var(--wp--preset--color--dark-text) !important;
	max-width: 380px;
	margin: 0 0 1.875rem !important;
}

.bls-hero .wp-block-buttons {
	margin: 0;
}

.bls-hero__cta.wp-block-button__link {
	min-height: 52px;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
}

.bls-hero__photo {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
}

.bls-hero__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 55% 30%;
	display: block;
}

/* Soft integration between the text zone and the photograph: a subtle
   fade at the image's left edge toward the hero's background colour,
   rather than a hard vertical seam. Decorative only — a ::before
   pseudo-element is never exposed to assistive technology, so no
   aria-hidden is needed or possible here. */
.bls-hero__photo::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 781px) {
	.bls-hero {
		grid-template-columns: 1fr;
		min-height: auto;
	}
	.bls-hero__text {
		padding: 2.5rem 1.5rem 2rem;
	}
	/* Separate mobile clamp, not just the desktop clamp's floor: the
	   desktop rule's minimum (3.5rem/56px) is deliberately higher than
	   the ~42-48px mobile target, so it would otherwise apply
	   unchanged at every width below where its fluid part reaches
	   56px — including mobile. */
	.bls-hero__heading {
		font-size: clamp(2.625rem, 2.3rem + 2vw, 3rem) !important;
	}
	/* Below this breakpoint "Clear pathways" may no longer fit as a
	   single unbroken run at any comfortable size, so nowrap is
	   released here and the browser wraps naturally — avoiding
	   horizontal overflow takes priority over the exact desktop break
	   once the layout has already stacked to one column. */
	.bls-hero__title-line {
		white-space: normal;
	}
	.bls-hero__lead {
		max-width: 100%;
	}
	.bls-hero__photo {
		height: 320px;
	}
	.bls-hero__photo::before {
		display: none;
	}
}

/* Journey/subjourney cards: restrained border, subtle elevation, and an
   accessible hover/focus lift. The card's own link keeps its normal
   focus-visible outline (see above) — this only adds a whole-card cue
   for mouse/touch users, guarded by the reduced-motion rule above.
   This shared baseline is used by both the homepage audience cards
   below and the Learner page's subjourney cards — left unchanged so
   the Learner page (out of scope for this pass) is unaffected. */
.bls-card {
	border: 1px solid var(--wp--preset--color--border);
	box-shadow: 0 1px 2px rgba(17, 24, 39, 0.06);
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.bls-card:hover,
.bls-card:focus-within {
	box-shadow: 0 10px 24px rgba(17, 24, 39, 0.1);
	transform: translateY(-2px);
}

/* Homepage audience-choice section — full rebuild. The previous version
   used align:"wide" (WordPress-generated class, resolved width
   unreliably in this nested context — the same category of issue found
   and fixed for the header/footer earlier, mistakenly not applied
   here) and core Columns (inherited that same unreliable width). Both
   are gone. Width is now set entirely by explicit CSS on
   .bls-audience__inner, and the card row is CSS Grid on
   .bls-audience__grid — no WordPress-generated layout/alignment class
   is involved anywhere in this section. Everything here is scoped
   under .bls-audience / .bls-card--audience, which exist only on the
   homepage, so none of it leaks onto the Learner page's subjourney
   cards (which keep the plain shared .bls-card baseline above).

   Stepped card alignment (card 2 lower than card 1, card 3 lower
   again), diagnosed: each card is a nested wp:group. WordPress's core
   block-library CSS applies a blockGap-derived margin-block-start to
   every non-first direct child of a "flow"-layout group (the same
   ":where()"-wrapped, zero-specificity pattern documented at the top
   of this file for heading sizes) — so cards 2 and 3 silently received
   ~24px of extra top margin that card 1 (exempted as :first-child)
   did not, even though .bls-audience__grid is visually a CSS Grid row.
   Fixed with a real, un-wrapped "margin: 0" on .bls-card--audience
   itself, which beats WordPress's zero-specificity rule outright — no
   negative-margin compensation needed.

   The identical WordPress blockGap injection was also inflating the
   gap between the section heading and the card row: .bls-audience__grid
   is itself a non-first child of .bls-audience__inner and had no
   margin reset, so it silently carried ~24px of extra margin-top on
   top of the heading's own declared margin-bottom. Fixed the same way,
   with a real "margin: 0" below. Card internals were then rebuilt to
   an icon+heading row (.bls-audience-card__header, flex) above the
   body copy and CTA, per the approved reference; that inner group is
   likewise given a real "> * { margin: 0 }" reset so the same
   zero-specificity WordPress rule cannot reintroduce stray spacing
   between its icon and heading children. */
.bls-audience {
	padding: 4.75rem 0 5.25rem;
}

@media (max-width: 599px) {
	.bls-audience {
		padding: 3rem 0 3.5rem;
	}
}

.bls-audience__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-audience__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

/* Primary heading + Dark Blue supporting line, matching the Why
   Brightlink section's H2/subheading treatment exactly (same font
   size, weight, line-height and colour) — replaces the previous small
   uppercase overline + giant two-line H2 pattern. */
.bls-audience__heading {
	font-size: clamp(2.25rem, 1.9rem + 1.3vw, 2.75rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.75rem;
}

.bls-audience__subheading {
	font-size: 1.375rem;
	font-weight: 600;
	line-height: 1.3;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	max-width: 720px;
	margin: 0 0 2.25rem;
}

.bls-audience__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 24px;
	align-items: stretch;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-audience__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 900px) {
	.bls-audience__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bls-card--audience {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 13px;
	box-shadow: 0 4px 16px rgba(17, 24, 39, 0.05);
	padding: 1.75rem;
	text-align: left;
}

.bls-card--audience:hover,
.bls-card--audience:focus-within {
	box-shadow: 0 10px 28px rgba(17, 24, 39, 0.1);
	transform: translateY(-2px);
}

.bls-audience-card__header {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	margin: 0;
}

.bls-audience-card__header > * {
	margin: 0;
}

/* Icon nudged down slightly so it optically aligns with the cap-height
   of the now-larger heading (previously align-items:center, fine for
   a single-line 20px heading, but visually floated too high once the
   heading grew and the longer "Collaborate with Brightlink" heading
   started wrapping to two lines). */
.bls-audience-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin-top: 0.2rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-audience-card__icon svg {
	width: 22px;
	height: 22px;
}

/* Founder feedback: headings enlarged from 20px to a responsive
   30-32px/27-29px/24-27px (desktop/tablet/mobile, matching the grid's
   own 900px/600px breakpoints) so they read as clearly more prominent
   than the 16px body copy. "Collaborate with Brightlink" is the
   longest heading and is allowed to wrap naturally rather than being
   shrunk independently or forced onto one line, per the brief. */
.bls-audience-card__heading {
	font-size: 1.625rem;
	font-weight: 700;
	line-height: 1.18;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-audience-card__heading {
		font-size: 1.75rem;
	}
}

@media (min-width: 900px) {
	.bls-audience-card__heading {
		font-size: 1.875rem;
	}
}

.bls-audience-card__body {
	font-size: 1rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	flex-grow: 1;
	margin: 1.125rem 0 0;
}

.bls-audience-card__cta {
	margin-top: 1.5rem;
	text-align: left;
}

.bls-card--audience .bls-card__link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
	white-space: nowrap;
}

.bls-card--audience .bls-card__link:hover,
.bls-card--audience .bls-card__link:focus-visible {
	color: var(--wp--preset--color--purple);
	text-decoration: underline;
}

@media (max-width: 599px) {
	.bls-audience__subheading {
		margin-bottom: 2rem;
	}
	.bls-card--audience {
		padding: 1.5rem;
	}
	.bls-card--audience .bls-card__link {
		white-space: normal;
	}
}

/* Footer — deliberately minimal rebuild (two compact horizontal rows,
   not a sitemap). Same deterministic width strategy as every other
   section (explicit CSS width, no align:"wide"). Real-selector
   "margin: 0" on every direct child of a flow-layout wp:group here
   defends against the same zero-specificity WordPress blockGap
   injection documented earlier in this file (audience cards, Why
   Brightlink) — without it, non-first children would silently pick up
   stray top margin. The bottom row's mobile order is reversed (legal
   nav above the legal/copyright text, matching the desktop row's
   left-to-right reading order visually while flipping it for the
   mobile stack) via the CSS "order" property, not by duplicating
   markup. */
.bls-footer {
	padding-top: 2.75rem;
}

.bls-footer__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-footer__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-footer__top {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1.5rem;
}

@media (min-width: 600px) {
	.bls-footer__top {
		flex-direction: row;
		align-items: flex-start;
		justify-content: space-between;
		gap: 2rem;
	}
}

.bls-footer__brand,
.bls-footer__nav {
	margin: 0;
}

.bls-footer__brand-link {
	display: inline-block;
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.2;
	color: var(--wp--preset--color--dark-text);
	text-decoration: none;
}

.bls-footer__brand-link:hover,
.bls-footer__brand-link:focus-visible {
	color: var(--wp--preset--color--dark-blue);
	text-decoration: underline;
}

.bls-footer__phone {
	margin: 0.5rem 0 0;
	font-size: 0.875rem;
	line-height: 1.5;
	color: #4b5563;
}

.bls-footer__phone a {
	color: #4b5563;
	font-weight: 600;
	text-decoration: underline;
}

.bls-footer__phone a:hover {
	color: var(--wp--preset--color--dark-blue);
}

.bls-footer__nav-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 1.75rem;
}

.bls-footer__nav-list a {
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--wp--preset--color--dark-text);
	text-decoration: none;
}

.bls-footer__nav-list a:hover,
.bls-footer__nav-list a:focus-visible {
	color: var(--wp--preset--color--dark-blue);
	text-decoration: underline;
}

@media (max-width: 599px) {
	.bls-footer__nav-list {
		flex-direction: column;
		align-items: flex-start;
		gap: 0.6875rem;
	}
}

.bls-footer__divider {
	width: min(calc(100% - 40px), 1200px);
	margin: 1.75rem auto;
	height: 1px;
	background-color: rgba(140, 147, 160, 0.35);
}

@media (min-width: 600px) {
	.bls-footer__divider {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-footer__bottom {
	margin: 0;
	padding-bottom: 1.75rem;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1rem;
}

@media (min-width: 600px) {
	.bls-footer__bottom {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		gap: 1.5rem;
	}
}

.bls-footer__legal-copy,
.bls-footer__legal-nav {
	margin: 0;
}

@media (max-width: 599px) {
	.bls-footer__legal-nav {
		order: -1;
	}
}

.bls-footer__legal-copy p {
	font-size: 0.8125rem;
	line-height: 1.5;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-footer__legal-nav-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	justify-items: center;
	gap: 0.75rem 1.5rem;
}

@media (min-width: 600px) {
	.bls-footer__legal-nav-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 900px) {
	.bls-footer__legal-nav-list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0.5rem 2rem;
	}
}

.bls-footer__legal-nav-list a {
	font-size: 0.8125rem;
	font-weight: 600;
	color: var(--wp--preset--color--dark-text);
	text-decoration: none;
}

.bls-footer__legal-nav-list a:hover,
.bls-footer__legal-nav-list a:focus-visible {
	color: var(--wp--preset--color--dark-blue);
	text-decoration: underline;
}

/* Why Brightlink — full rebuild reproducing the approved reference: a
   left editorial column (heading/intro/photos) beside a right 2x2
   benefit grid with subtle dividers, replacing the previous centred
   heading + two centred wp:columns rows. Same deterministic width
   strategy as the audience section (explicit CSS width, no
   align:"wide") and the same real-selector "margin: 0" defence against
   WordPress's zero-specificity blockGap injection (documented above
   for the audience section) applied everywhere a nested wp:group
   would otherwise silently receive stray margin-top. Scoped entirely
   under .bls-why / .bls-why-benefit, so nothing here can affect any
   other section.

   "Why Brightlink?" is now the prominent H2 (previously a small
   uppercase eyebrow label); "Practical support at every step" is a
   secondary supporting line beneath it, styled as a paragraph rather
   than a second heading level to keep one H2 per section. The two
   supporting photographs are deliberately constrained to a fixed
   max-width container (not a percentage of the column), so they stay
   compact editorial thumbnails at every viewport instead of scaling
   up and dominating the section. */
.bls-why {
	padding: 6rem 0;
}

@media (max-width: 599px) {
	.bls-why {
		padding: 3.5rem 0;
	}
}

.bls-why__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
}

@media (min-width: 600px) {
	.bls-why__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 1024px) {
	.bls-why__inner {
		grid-template-columns: minmax(0, 44fr) minmax(0, 56fr);
		column-gap: 2.5rem;
		align-items: start;
	}
}

.bls-why__intro {
	margin: 0;
}

.bls-why__heading {
	font-size: clamp(2.25rem, 1.9rem + 1.3vw, 2.75rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	max-width: 430px;
	margin: 0 0 0.75rem;
}

.bls-why__subheading {
	font-size: 1.375rem;
	font-weight: 600;
	line-height: 1.3;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	max-width: 430px;
	margin: 0 0 1rem;
}

.bls-why__lead {
	font-size: 1.0625rem;
	line-height: 1.6;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	max-width: 430px;
	margin: 0;
}

/* Single restrained supporting image beneath the intro copy. A fixed
   pixel width on a plain block-level div (not a flex item) is used
   deliberately: an earlier two-image version used percentage widths
   on flex children, and a flex item's automatic minimum size
   (min-width: auto) is based on the <img>'s intrinsic content size,
   which silently overrode the percentage and made the images render
   far larger than intended. Fixed pixel width on a non-flex block
   sidesteps that entirely. */
.bls-why__image {
	width: 340px;
	max-width: 340px;
	margin: 1.5rem 0 0;
}

.bls-why__image img {
	display: block;
	width: 100%;
	height: 220px;
	object-fit: cover;
	border-radius: 11px;
	box-shadow: 0 6px 16px rgba(17, 24, 39, 0.07);
}

@media (max-width: 599px) {
	.bls-why__image {
		width: 220px;
		max-width: 220px;
	}

	.bls-why__image img {
		height: 150px;
	}
}

.bls-why__benefits {
	margin: 0;
	display: grid;
	grid-template-columns: 1fr;
}

@media (min-width: 600px) {
	.bls-why__benefits {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.bls-why-benefit {
	margin: 0;
	padding: 1.5rem 0;
	border-top: 1px solid rgba(140, 147, 160, 0.35);
}

.bls-why-benefit:first-child {
	padding-top: 0;
	border-top: none;
}

@media (min-width: 600px) {
	.bls-why-benefit {
		padding: 1.625rem;
		border-top: none;
	}

	.bls-why-benefit:first-child {
		padding-top: 0;
		padding-left: 0;
	}

	.bls-why-benefit:nth-child(2) {
		padding-top: 0;
		padding-right: 0;
	}

	.bls-why-benefit:nth-child(3) {
		padding-left: 0;
	}

	.bls-why-benefit:nth-child(4) {
		padding-right: 0;
	}

	.bls-why-benefit:nth-child(odd) {
		border-right: 1px solid rgba(140, 147, 160, 0.35);
	}

	.bls-why-benefit:nth-child(n + 3) {
		border-top: 1px solid rgba(140, 147, 160, 0.35);
	}
}

.bls-why-benefit__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.75rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-why-benefit__icon svg {
	width: 22px;
	height: 22px;
}

/* Founder feedback: the first three benefit items are now proof
   points, each led by a large stat above the existing descriptor
   heading. Deliberately kept below the section's own H2 (which fluidly
   scales 2.25rem-2.75rem / 36-44px) at every viewport, per the brief's
   "do not make any of the stats larger than the main Why Brightlink?
   heading" instruction. Real plain text, not image text. The fourth
   item (CILEX) has no stat and is unaffected by this rule. */
.bls-why-benefit__stat {
	font-size: 1.875rem;
	font-weight: 700;
	line-height: 1.1;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 0.25rem;
}

@media (min-width: 600px) {
	.bls-why-benefit__stat {
		font-size: 2.375rem;
	}
}

.bls-why-benefit__heading {
	font-size: 1.3125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-why-benefit__body {
	font-size: 1rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* Homepage closing CTA — full rebuild. Same deterministic width
   strategy as every other section (explicit CSS width, no
   align:"wide"), a left content column beside a right-hand button
   using CSS Grid (not core Buttons/Columns), scoped entirely under
   .bls-cta. The global real-selector "a { color: dark-blue }" rule
   would be illegible on this Dark Blue panel, so links inside it are
   explicitly overridden to white/dark-blue as appropriate — a real
   selector on .bls-cta itself, which safely beats that rule regardless
   of source order. */
.bls-cta {
	background-color: var(--wp--preset--color--dark-blue);
	padding: 4rem 0;
}

.bls-cta__inner {
	width: min(calc(100% - 64px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 900px) {
	.bls-cta__inner {
		grid-template-columns: minmax(0, 73fr) minmax(0, 27fr);
		gap: 2.5rem;
		align-items: center;
	}
}

.bls-cta__content {
	margin: 0;
}

.bls-cta__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	text-align: left;
	color: rgba(255, 255, 255, 0.82);
	margin: 0 0 1rem;
}

.bls-cta__heading {
	font-size: clamp(2.125rem, 1.8rem + 1.2vw, 2.625rem);
	font-weight: 700;
	line-height: 1.12;
	text-align: left;
	color: var(--wp--preset--color--white);
	max-width: 760px;
	margin: 0;
}

.bls-cta__contact {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
	margin: 1.375rem 0 0;
	font-size: 1.0625rem;
	line-height: 1.5;
	color: var(--wp--preset--color--white);
	text-align: left;
}

.bls-cta__phone-icon {
	flex: 0 0 20px;
	width: 20px;
	height: 20px;
	margin-top: 0.2rem;
	color: var(--wp--preset--color--white);
}

.bls-cta__phone-icon svg {
	width: 20px;
	height: 20px;
}

.bls-cta__phone-link {
	color: var(--wp--preset--color--white);
	font-weight: 700;
	text-decoration: underline;
}

.bls-cta__phone-link:hover {
	color: var(--wp--preset--color--yellow);
}

.bls-cta__action {
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

@media (min-width: 900px) {
	.bls-cta__action {
		justify-content: flex-end;
	}
}

.bls-cta__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem;
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--dark-blue);
	font-size: 1rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-cta__button:hover,
.bls-cta__button:focus-visible {
	background-color: var(--wp--preset--color--surface);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

@media (max-width: 899px) {
	.bls-cta__heading {
		font-size: clamp(1.875rem, 1.6rem + 1.2vw, 2.125rem);
	}
}

/* Learner page hero — a premium split hero, structurally analogous to
   the homepage's frozen .bls-hero (CSS Grid, full-bleed photograph via
   height:100%/object-fit:cover, soft left-edge fade) but entirely
   independent: every selector here is scoped under .bls-learner-hero,
   so nothing in this block can reach or be reached by .bls-hero*.
   The primary CTA uses the real "wp-element-button" utility class
   (the same one WordPress's Button block applies), so it inherits the
   site's one global button appearance from theme.json; only a small
   flex/gap/weight modifier is layered on top via
   .bls-learner-hero__primary-cta, mirroring exactly how the homepage
   hero's own .bls-hero__cta modifier works. */
.bls-learner-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 46%) 1fr;
	align-items: stretch;
	min-height: 560px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-learner-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-learner-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 1rem;
}

.bls-learner-hero__heading {
	font-size: clamp(3.75rem, 3.25rem + 1vw, 4.25rem);
	line-height: 1.08;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	max-width: 600px;
	text-align: left;
	margin: 0 0 1.25rem;
}

/* Deterministic multi-line treatment: each intended line is a
   nowrap span on desktop so it can never fragment internally,
   regardless of exact font-metric width — see the docblock in
   learner-hero.php for the full root-cause explanation. Reverts to
   normal wrapping at tablet/mobile below. */
.bls-learner-hero__heading-line {
	display: inline-block;
	white-space: nowrap;
}

.bls-learner-hero__lead {
	font-size: 1.1875rem;
	line-height: 1.5;
	font-weight: 400;
	color: var(--wp--preset--color--dark-text);
	max-width: 500px;
	text-align: left;
	margin: 0;
}

.bls-learner-hero__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.75rem;
	margin-top: 2rem;
}

/* CTA correction (round 2): the Employer hero's smaller CTA treatment
   is the source of truth, not this class's previous unmodified state.
   theme.json's global button style (inherited here via the real
   "wp-element-button" class, kept for its Dark Blue background / white
   text / 8px radius) carries 0.9rem top/bottom padding — with no
   box-sizing: border-box reset anywhere in this theme, that padding is
   added ON TOP of min-height under the browser's default content-box
   model, so this button was rendering at roughly 81px tall
   (14.4 + 52 + 14.4), not 52px — the same "square tile" bug previously
   diagnosed and fixed on the Employer hero CTA alone. Zeroing the
   vertical padding here (only horizontal padding remains) makes
   min-height the sole source of the button's height, matching the
   Employer hero CTA exactly. !important is used narrowly and only for
   this padding property, to reliably win against the
   equal-specificity ".wp-element-button" padding regardless of
   stylesheet load order — consistent with this project's established,
   documented, narrowly-scoped use of !important elsewhere. */
.bls-learner-hero__primary-cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem !important;
	font-weight: 700;
}

.bls-learner-hero__secondary-cta {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 1rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-learner-hero__secondary-cta:hover,
.bls-learner-hero__secondary-cta:focus-visible {
	color: var(--wp--preset--color--purple);
	text-decoration: underline;
}

.bls-learner-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
}

.bls-learner-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 55% 22%;
	display: block;
	border-radius: 0;
}

.bls-learner-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-learner-hero {
		display: block;
		min-height: 0;
	}

	.bls-learner-hero__content {
		padding: 3rem 24px 2.5rem;
	}

	.bls-learner-hero__heading {
		font-size: clamp(2.5rem, 2.1rem + 1.6vw, 3rem);
		max-width: 100%;
	}

	.bls-learner-hero__heading-line {
		display: inline;
		white-space: normal;
	}

	.bls-learner-hero__lead {
		max-width: 100%;
	}

	.bls-learner-hero__media {
		height: 320px;
	}

	.bls-learner-hero__media::before {
		display: none;
	}
}

@media (max-width: 480px) {
	.bls-learner-hero__actions {
		flex-direction: column;
		align-items: flex-start;
		gap: 1.25rem;
	}
}

/* Learner page — "What would you like to explore?" choice section.
   Same deterministic width/CSS-Grid approach as every other section
   on the site (explicit CSS width, no align:"wide", no wp:columns).
   Entirely independent of the homepage's .bls-audience-card system —
   .bls-learner-choice does NOT use the shared .bls-card base class, so
   nothing here can affect the approved homepage cards. Real-selector
   "margin: 0" on every direct child of a flow-layout wp:group defends
   against the same zero-specificity WordPress blockGap injection
   documented earlier in this file. */
.bls-learner-choices {
	padding: 5rem 0;
}

@media (max-width: 599px) {
	.bls-learner-choices {
		padding: 3rem 0;
	}
}

.bls-learner-choices__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-learner-choices__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-learner-choices__intro {
	margin: 0 0 2.75rem;
	max-width: 700px;
}

.bls-learner-choices__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-learner-choices__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1rem;
}

.bls-learner-choices__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	text-align: left;
	color: #4b5563;
	margin: 0;
}

.bls-learner-choices__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-learner-choices__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 900px) {
	.bls-learner-choices__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bls-learner-choice {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.875rem;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.bls-learner-choice:hover,
.bls-learner-choice:focus-within {
	box-shadow: 0 10px 24px rgba(17, 24, 39, 0.09);
	transform: translateY(-2px);
}

.bls-learner-choice__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 1.125rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-learner-choice__icon svg {
	width: 21px;
	height: 21px;
}

.bls-learner-choice__heading {
	font-size: 1.3125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-learner-choice__body {
	font-size: 1rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	flex-grow: 1;
	margin: 0;
}

.bls-learner-choice__cta {
	margin-top: 1.5rem;
}

.bls-learner-choice__link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
	white-space: nowrap;
}

.bls-learner-choice__link:hover,
.bls-learner-choice__link:focus-visible {
	color: var(--wp--preset--color--purple);
	text-decoration: underline;
}

@media (max-width: 599px) {
	.bls-learner-choices__intro {
		margin-bottom: 2rem;
	}

	.bls-learner-choice {
		padding: 1.5rem;
	}

	.bls-learner-choice__link {
		white-space: normal;
	}
}

/* Learner page — "Where are you starting from?" section. Deliberately
   NOT another bordered card grid (that's the choices section directly
   above it) — four open editorial columns with subtle dividers,
   divider direction changing by breakpoint (horizontal on single-
   column mobile, none at the 2-column tablet width, vertical on the
   4-column desktop row). Same deterministic width approach as the
   rest of the site, entirely independent selectors — shares no CSS
   with .bls-learner-choice* or any other section. Real-selector
   "margin: 0" on every direct child of a flow-layout wp:group defends
   against the same zero-specificity WordPress blockGap injection
   documented earlier in this file. */
.bls-learner-start {
	padding: 5rem 0;
}

@media (max-width: 599px) {
	.bls-learner-start {
		padding: 3rem 0;
	}
}

.bls-learner-start__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-learner-start__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-learner-start__intro {
	margin: 0 0 2.75rem;
	max-width: 720px;
}

.bls-learner-start__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-learner-start__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1rem;
}

.bls-learner-start__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	text-align: left;
	color: #4b5563;
	max-width: 680px;
	margin: 0;
}

.bls-learner-start__grid {
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-learner-start__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2rem;
		row-gap: 2.5rem;
	}
}

@media (min-width: 960px) {
	.bls-learner-start__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		column-gap: 0;
		row-gap: 0;
	}
}

/* Founder feedback (starting-point architecture round): each item now
   carries its own CTA (replacing the removed single section-level
   "Explore Career Pathways" link), so items are now equal-height flex
   columns with flex-grow on the body paragraph — the same
   bottom-anchored-CTA technique already used for the learner-choice
   cards above this section — keeping all four CTAs aligned at the
   same relative position regardless of body-copy length. */
.bls-learner-start__item {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
}

@media (max-width: 599px) {
	.bls-learner-start__item:not(:first-child) {
		border-top: 1px solid rgba(140, 147, 160, 0.35);
		padding-top: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-learner-start__item {
		padding: 0 1.75rem;
	}

	.bls-learner-start__item:last-child {
		padding-right: 0;
	}

	.bls-learner-start__item:not(:first-child) {
		border-left: 1px solid rgba(140, 147, 160, 0.35);
	}
}

.bls-learner-start__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	margin: 0 0 1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-learner-start__icon svg {
	width: 20px;
	height: 20px;
}

.bls-learner-start__item-heading {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-learner-start__item-body {
	font-size: 1rem;
	line-height: 1.6;
	color: #4b5563;
	text-align: left;
	flex-grow: 1;
	margin: 0 0 1rem;
}

.bls-learner-start__item-cta {
	margin: 0;
}

.bls-learner-start__item-cta-link,
.bls-learner-start__item-cta-link:visited {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-learner-start__item-cta-link:hover,
.bls-learner-start__item-cta-link:focus-visible {
	color: var(--wp--preset--color--purple);
	text-decoration: underline;
}

/* Learner page — "Why learn with Brightlink?" section. Deliberately
   not a copy of the homepage's .bls-why*: a left editorial intro
   beside three stacked benefit rows (icon left, heading+body right,
   horizontal dividers) rather than an icon-above-heading 2x2 card
   grid. Same deterministic-width/fr-based-grid approach as the rest
   of the site (no align:"wide", no wp:columns; fr units — not
   percentages — for the two-column split, so the column-gap can never
   push the row wider than the container, the same fix already applied
   to the homepage Why Brightlink section). Entirely independent
   selectors — shares no CSS with .bls-why*/.bls-why-benefit* or any
   other section. Real-selector "margin: 0" on every direct child of a
   flow-layout wp:group defends against the same zero-specificity
   WordPress blockGap injection documented earlier in this file. */
.bls-learner-why {
	padding: 5.25rem 0;
}

@media (max-width: 599px) {
	.bls-learner-why {
		padding: 3.25rem 0;
	}
}

.bls-learner-why__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
}

@media (min-width: 600px) {
	.bls-learner-why__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 960px) {
	.bls-learner-why__inner {
		grid-template-columns: minmax(280px, 36fr) minmax(0, 64fr);
		column-gap: 4rem;
		align-items: start;
	}
}

.bls-learner-why__intro {
	margin: 0;
}

.bls-learner-why__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-learner-why__heading {
	font-size: clamp(2.5rem, 2rem + 2vw, 3rem);
	font-weight: 700;
	line-height: 1.08;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.25rem;
}

.bls-learner-why__lead {
	font-size: 1.0625rem;
	line-height: 1.6;
	text-align: left;
	color: #4b5563;
	max-width: 420px;
	margin: 0;
}

.bls-learner-why__benefits {
	margin: 0;
	display: flex;
	flex-direction: column;
}

.bls-learner-benefit {
	display: flex;
	align-items: flex-start;
	gap: 1.25rem;
	padding: 1.75rem 0;
	border-top: 1px solid rgba(140, 147, 160, 0.35);
	margin: 0;
}

.bls-learner-benefit:first-child {
	padding-top: 0;
	border-top: none;
}

.bls-learner-benefit__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-learner-benefit__icon svg {
	width: 21px;
	height: 21px;
}

.bls-learner-benefit__content {
	margin: 0;
	flex: 1 1 auto;
	min-width: 0;
}

.bls-learner-benefit__heading {
	font-size: 1.3125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-learner-benefit__body {
	font-size: 1rem;
	line-height: 1.6;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* Learner page — CILEX Registration Support section. Full rebuild
   replacing the previous large gold ".bls-callout" panel. Same
   deterministic-width/fr-based-grid approach as the rest of the site
   (no align:"wide", no wp:columns; fr units for the two-column split
   so the column-gap can never push the row wider than the
   container). Entirely independent selectors — does not use or
   affect the shared ".bls-callout" class still used by the
   unrebuilt Talk to Us callout below it. Real-selector "margin: 0" on
   every direct child of a flow-layout wp:group defends against the
   same zero-specificity WordPress blockGap injection documented
   earlier in this file. The second prep item's divider is applied via
   an adjacent-sibling selector (item + item), not :first-of-type,
   because :first-of-type would incorrectly match the icon <div> that
   precedes both items (same tag, different class). */
.bls-learner-registration {
	background-color: var(--wp--preset--color--surface);
	padding: 5.25rem 0;
}

@media (max-width: 599px) {
	.bls-learner-registration {
		padding: 3.25rem 0;
	}
}

.bls-learner-registration__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
}

@media (min-width: 600px) {
	.bls-learner-registration__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 960px) {
	.bls-learner-registration__inner {
		grid-template-columns: minmax(0, 57fr) minmax(280px, 43fr);
		column-gap: 3.5rem;
		align-items: start;
	}
}

.bls-learner-registration__content {
	margin: 0;
}

.bls-learner-registration__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-learner-registration__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	max-width: 600px;
	margin: 0 0 1.25rem;
}

.bls-learner-registration__lead {
	font-size: 1.0625rem;
	line-height: 1.6;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	max-width: 620px;
	margin: 0 0 1rem;
}

.bls-learner-registration__meta {
	font-size: 1rem;
	line-height: 1.55;
	text-align: left;
	color: #4b5563;
	max-width: 620px;
	margin: 0 0 2rem;
}

.bls-learner-registration__cta {
	margin: 0;
}

.bls-learner-registration__cta-link {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	font-weight: 700;
}

.bls-learner-registration__prep {
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 15px;
	padding: 1.875rem;
}

.bls-learner-registration__prep-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 1.125rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-learner-registration__prep-icon svg {
	width: 21px;
	height: 21px;
}

.bls-learner-registration__prep-heading {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.25;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.25rem;
}

.bls-learner-registration__prep-item {
	margin: 0;
	padding: 0;
}

.bls-learner-registration__prep-item + .bls-learner-registration__prep-item {
	border-top: 1px solid rgba(140, 147, 160, 0.35);
	margin-top: 1rem;
	padding-top: 1rem;
}

.bls-learner-registration__prep-item-title {
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.25;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.375rem;
}

.bls-learner-registration__prep-item-body {
	font-size: 1rem;
	line-height: 1.55;
	text-align: left;
	color: #4b5563;
	margin: 0;
}

.bls-learner-registration__note {
	font-size: 0.9375rem;
	line-height: 1.5;
	text-align: left;
	color: #4b5563;
	margin: 1.5rem 0 0;
	padding-top: 1.25rem;
	border-top: 1px solid rgba(140, 147, 160, 0.35);
}

/* Learner page — final closing CTA, replacing two previous separate
   closing structures. Same deterministic width and fr-based grid
   approach as the homepage's own closing CTA (fr units, not
   percentages, for the main-row split, so the column-gap can never
   push it wider than the container). Entirely independent selectors
   under .bls-learner-final — shares no CSS with .bls-cta* (homepage)
   or any other section. The primary button is fully custom, not the
   global wp-element-button class, because its colours are inverted
   from the site's default button on this Dark Blue panel — matching
   why the homepage's own closing CTA button is likewise custom.
   Real-selector "margin: 0" on every direct child of a flow-layout
   wp:group defends against the same zero-specificity WordPress
   blockGap injection documented earlier in this file. */
.bls-learner-final {
	background-color: var(--wp--preset--color--dark-blue);
	padding: 4.5rem 0 3.5rem;
}

@media (max-width: 599px) {
	.bls-learner-final {
		padding: 3.25rem 0 2.75rem;
	}
}

.bls-learner-final__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-learner-final__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-learner-final__main {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
	margin: 0 0 2.75rem;
}

@media (min-width: 900px) {
	.bls-learner-final__main {
		grid-template-columns: minmax(0, 73fr) minmax(0, 27fr);
		column-gap: 2.5rem;
		align-items: center;
	}
}

.bls-learner-final__content {
	margin: 0;
}

.bls-learner-final__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: rgba(255, 255, 255, 0.82);
	margin: 0 0 1rem;
}

.bls-learner-final__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--white);
	max-width: 640px;
	margin: 0 0 1rem;
}

.bls-learner-final__lead {
	font-size: 1.0625rem;
	line-height: 1.58;
	text-align: left;
	color: var(--wp--preset--color--white);
	max-width: 700px;
	margin: 0;
}

.bls-learner-final__action {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin: 0;
}

@media (min-width: 900px) {
	.bls-learner-final__action {
		justify-content: flex-end;
	}
}

.bls-learner-final__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem;
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--dark-blue);
	font-size: 1rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-learner-final__button:hover,
.bls-learner-final__button:focus-visible {
	background-color: var(--wp--preset--color--surface);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

.bls-learner-final__secondary {
	margin: 0;
	padding-top: 2.25rem;
	border-top: 1px solid rgba(255, 255, 255, 0.18);
}

.bls-learner-final__secondary-label {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	text-align: left;
	color: rgba(255, 255, 255, 0.75);
	margin: 0 0 0.875rem;
}

.bls-learner-final__links {
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 2rem;
}

.bls-learner-final__links a {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--wp--preset--color--white);
	text-decoration: none;
}

.bls-learner-final__links a:hover,
.bls-learner-final__links a:focus-visible {
	text-decoration: underline;
}

@media (max-width: 599px) {
	.bls-learner-final__links {
		flex-direction: column;
		gap: 0.75rem;
	}
}

/* ==========================================================================
   Employer page — full new build, mirroring the same architectural
   techniques already approved throughout this theme (deterministic
   CSS width, fr-based grids instead of percentages, no align:"wide",
   no wp:columns, real-selector "margin: 0" defence against WordPress's
   zero-specificity blockGap injection). Every selector below is scoped
   under a bls-employer-* namespace independent of bls-hero*,
   bls-learner-hero*, bls-learner-choice*, bls-learner-start* and
   bls-learner-final* — nothing here can affect the Homepage or
   Learner page. ========================================================== */

/* Employer hero — structurally analogous to the Learner hero (CSS
   Grid split, full-bleed photo, soft left-edge fade, real
   wp-element-button primary CTA with a small flex/gap/weight
   modifier), but an even 1fr/1fr column split rather than 44/56. */
.bls-employer-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 1fr) minmax(340px, 1fr);
	align-items: stretch;
	min-height: 560px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-employer-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-employer-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-employer-hero__heading {
	font-size: clamp(3.375rem, 2.4rem + 2.4vw, 4.25rem);
	line-height: 1.06;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	max-width: 560px;
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-employer-hero__lead {
	font-size: 1.1875rem;
	line-height: 1.5;
	font-weight: 400;
	color: var(--wp--preset--color--dark-text);
	max-width: 500px;
	text-align: left;
	margin: 0;
}

.bls-employer-hero__actions {
	display: flex;
	align-items: center;
	margin-top: 2rem;
}

/* CTA correction (round 2): reverts the previous round's mistaken fix,
   which removed this padding override in an attempt to match the
   Learner hero CTA — that made the Employer button grow to ~81px
   ("square tile") instead of shrinking the Learner button to match
   Employer's original, correct, smaller size. The Employer hero CTA's
   smaller size (this rule) is the source of truth; the equivalent
   override has now been added to .bls-learner-hero__primary-cta
   instead, so both hero primary CTAs render identically at 52px. The
   button's vertical size is controlled entirely by min-height, not by
   padding + line-height. theme.json's global button style (inherited
   here via the real "wp-element-button" class, kept for its Dark Blue
   background / white text / 8px radius) also carries 0.9rem top/bottom
   padding — with no box-sizing: border-box reset anywhere in this
   theme, that padding is added ON TOP of min-height under the
   browser's default content-box model, so without this override the
   button renders at roughly 81px tall (14.4 + 52 + 14.4), not 52px.
   Zeroing the vertical padding here (only horizontal padding remains)
   makes min-height the sole source of the button's height. !important
   is used narrowly and only for this padding property, to reliably win
   against the equal-specificity ".wp-element-button" padding
   regardless of stylesheet load order — consistent with this
   project's established, documented, narrowly-scoped use of
   !important elsewhere. */
.bls-employer-hero__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem !important;
	font-weight: 700;
}

.bls-employer-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
}

.bls-employer-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 54% 30%;
	display: block;
}

.bls-employer-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-employer-hero {
		display: block;
		min-height: 0;
	}

	.bls-employer-hero__content {
		padding: 3rem 24px 2.5rem;
	}

	.bls-employer-hero__heading {
		font-size: clamp(2.5rem, 2.1rem + 1.6vw, 3rem);
		max-width: 100%;
	}

	.bls-employer-hero__lead {
		max-width: 100%;
	}

	.bls-employer-hero__media {
		height: 320px;
	}

	.bls-employer-hero__media::before {
		display: none;
	}
}

/* Employer primary needs — three equal cards, reusing the exact
   technique already approved for the Learner "What would you like to
   explore?" cards. */
.bls-employer-needs {
	padding: 5rem 0;
}

@media (max-width: 599px) {
	.bls-employer-needs {
		padding: 3rem 0;
	}
}

.bls-employer-needs__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-employer-needs__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-employer-needs__intro {
	margin: 0 0 2.75rem;
	max-width: 700px;
}

.bls-employer-needs__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-employer-needs__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1rem;
}

.bls-employer-needs__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	text-align: left;
	color: #4b5563;
	margin: 0;
}

.bls-employer-needs__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-employer-needs__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 900px) {
	.bls-employer-needs__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* Card proportions tightened: vertical padding, icon/heading margins
   and (mainly) the CTA's margin-top were all reduced. Equal card
   height across the row still comes from height:100% on the card
   plus flex-grow:1 on the body (unchanged) — the previous 1.5rem
   CTA margin-top was the biggest contributor to the "dead space"
   between description and CTA on shorter-body cards, so it was cut
   the most. Horizontal padding, typography, icon size, border,
   radius and shadow are all untouched. */
.bls-employer-need {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.25rem 1.875rem;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.bls-employer-need:hover,
.bls-employer-need:focus-within {
	box-shadow: 0 10px 24px rgba(17, 24, 39, 0.09);
	transform: translateY(-2px);
}

.bls-employer-need__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.75rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-employer-need__icon svg {
	width: 21px;
	height: 21px;
}

.bls-employer-need__heading {
	font-size: 1.3125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-employer-need__body {
	font-size: 1rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	flex-grow: 1;
	margin: 0;
}

.bls-employer-need__cta {
	margin-top: 0.625rem;
}

.bls-employer-need__link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
	white-space: nowrap;
}

.bls-employer-need__link:hover,
.bls-employer-need__link:focus-visible {
	color: var(--wp--preset--color--purple);
	text-decoration: underline;
}

@media (max-width: 599px) {
	.bls-employer-needs__intro {
		margin-bottom: 2rem;
	}

	.bls-employer-need {
		padding: 1.5rem;
	}

	.bls-employer-need__link {
		white-space: normal;
	}
}

/* Employer benefits — four open editorial columns, reusing the exact
   technique already approved for the Learner "Where are you starting
   from?" section (vertical dividers on desktop, horizontal on
   single-column mobile, no divider at the two-column tablet width). */
.bls-employer-benefits {
	padding: 5rem 0;
}

@media (max-width: 599px) {
	.bls-employer-benefits {
		padding: 3rem 0;
	}
}

.bls-employer-benefits__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-employer-benefits__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-employer-benefits__intro {
	margin: 0 0 2.75rem;
	max-width: 720px;
}

.bls-employer-benefits__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-employer-benefits__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-employer-benefits__grid {
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-employer-benefits__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2rem;
		row-gap: 2.5rem;
	}
}

@media (min-width: 960px) {
	.bls-employer-benefits__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		column-gap: 0;
		row-gap: 0;
	}
}

.bls-employer-benefit {
	margin: 0;
}

@media (max-width: 599px) {
	.bls-employer-benefit:not(:first-child) {
		border-top: 1px solid rgba(140, 147, 160, 0.35);
		padding-top: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-employer-benefit {
		padding: 0 1.75rem;
	}

	.bls-employer-benefit:first-child {
		padding-left: 0;
	}

	.bls-employer-benefit:last-child {
		padding-right: 0;
	}

	.bls-employer-benefit:not(:first-child) {
		border-left: 1px solid rgba(140, 147, 160, 0.35);
	}
}

.bls-employer-benefit__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	margin: 0 0 0.75rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-employer-benefit__icon svg {
	width: 20px;
	height: 20px;
}

.bls-employer-benefit__heading {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-employer-benefit__body {
	font-size: 1rem;
	line-height: 1.6;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* Employer support — left intro beside a compact two-column service
   list. fr-based grid split (not percentages) so the column-gap can
   never overflow the container. Bottom padding deliberately smaller
   than top: the top value sets the transition from the section above,
   while the bottom value only needs to close the section cleanly
   beneath whichever column (intro or list) ends up taller — the
   previous symmetric padding read as excess whitespace under the
   shorter intro column. */
.bls-employer-support {
	padding: 5.25rem 0 3.5rem;
}

@media (max-width: 599px) {
	.bls-employer-support {
		padding: 3.25rem 0 2.5rem;
	}
}

.bls-employer-support__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
}

@media (min-width: 600px) {
	.bls-employer-support__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 960px) {
	.bls-employer-support__inner {
		grid-template-columns: minmax(280px, 38fr) minmax(0, 62fr);
		column-gap: 4rem;
		align-items: start;
	}
}

.bls-employer-support__intro {
	margin: 0;
}

.bls-employer-support__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-employer-support__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.25rem;
}

.bls-employer-support__lead {
	font-size: 1.0625rem;
	line-height: 1.6;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	max-width: 420px;
	margin: 0;
}

.bls-employer-support__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	column-gap: 2rem;
	row-gap: 0;
}

@media (min-width: 600px) {
	.bls-employer-support__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.bls-employer-support__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	padding: 0.875rem 0;
	border-bottom: 1px solid rgba(140, 147, 160, 0.35);
	font-size: 1rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

/* The very last row never has a divider beneath it (true final item,
   relevant on single-column mobile). On the two-column desktop/
   tablet grid, items fill left-to-right in row-major order across
   nine items — five in the left column, four in the right — so the
   bottom-most item in EACH column needs its divider removed: the
   true last child (bottom of the left column) and the second-to-last
   child (bottom of the right column). */
.bls-employer-support__list li:last-child {
	border-bottom: none;
}

@media (min-width: 600px) {
	.bls-employer-support__list li:nth-last-child(2) {
		border-bottom: none;
	}
}

.bls-employer-support__list-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	flex: 0 0 28px;
	margin-top: 0.1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-employer-support__list-icon svg {
	width: 14px;
	height: 14px;
}

.bls-employer-support__list-text {
	flex: 1 1 auto;
	min-width: 0;
}

/* Employer why — restrained reasons checklist on a pale surface tint,
   for light/dark section rhythm against the plain-white sections
   above and below it. .bls-employer-why__inner is now a two-column
   grid (left intro, right 2x2 reasons) at desktop — fr-based split
   (not percentages) so the column-gap can never overflow the
   container, the same fix already applied elsewhere on this page. */
.bls-employer-why {
	background-color: var(--wp--preset--color--surface);
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-employer-why {
		padding: 2.75rem 0;
	}
}

.bls-employer-why__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 600px) {
	.bls-employer-why__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 960px) {
	.bls-employer-why__inner {
		grid-template-columns: minmax(0, 40fr) minmax(0, 60fr);
		column-gap: 4rem;
		align-items: start;
	}
}

.bls-employer-why__intro {
	margin: 0;
}

.bls-employer-why__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-employer-why__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-employer-why__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.25rem;
}

@media (min-width: 600px) {
	.bls-employer-why__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.bls-employer-why__item {
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	margin: 0;
}

.bls-employer-why__item-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 36px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-employer-why__item-icon svg {
	width: 18px;
	height: 18px;
}

.bls-employer-why__item-text {
	font-size: 1rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	padding-top: 0.3rem;
}

/* Employer final CTA — same Dark Blue visual language as the approved
   Homepage/Learner closing CTAs, fr-based grid, custom white button
   (colours inverted from the site default button on this panel). */
.bls-employer-final {
	background-color: var(--wp--preset--color--dark-blue);
	padding: 4.5rem 0 3.5rem;
}

@media (max-width: 599px) {
	.bls-employer-final {
		padding: 3.25rem 0 2.75rem;
	}
}

.bls-employer-final__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-employer-final__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-employer-final__main {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
	margin: 0;
}

@media (min-width: 900px) {
	.bls-employer-final__main {
		grid-template-columns: minmax(0, 73fr) minmax(0, 27fr);
		column-gap: 2.5rem;
		align-items: center;
	}
}

.bls-employer-final__content {
	margin: 0;
}

.bls-employer-final__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: rgba(255, 255, 255, 0.82);
	margin: 0 0 1rem;
}

.bls-employer-final__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--white);
	max-width: 640px;
	margin: 0 0 1rem;
}

.bls-employer-final__lead {
	font-size: 1.0625rem;
	line-height: 1.58;
	text-align: left;
	color: var(--wp--preset--color--white);
	max-width: 700px;
	margin: 0;
}

.bls-employer-final__action {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin: 0;
}

@media (min-width: 900px) {
	.bls-employer-final__action {
		justify-content: flex-end;
	}
}

.bls-employer-final__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem;
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--dark-blue);
	font-size: 1rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-employer-final__button:hover,
.bls-employer-final__button:focus-visible {
	background-color: var(--wp--preset--color--surface);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

.bls-employer-final__secondary {
	margin: 0;
	text-align: left;
}

.bls-employer-final__secondary a {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 600;
	text-decoration: none;
}

.bls-employer-final__secondary a:hover,
.bls-employer-final__secondary a:focus-visible {
	text-decoration: underline;
}

/* ==========================================================================
   Talk to Us page — major structural rebuild (round 3). New order:
   hero, combined Phone + CILEX contact-options panel, general enquiry
   (intro + compact form), global footer. Same architectural techniques
   already approved throughout this theme (deterministic CSS width,
   fr-based grids, no align:"wide", no wp:columns, real-selector
   "margin: 0" defence against WordPress's zero-specificity blockGap
   injection). Every selector below is scoped under a bls-talk-*
   namespace independent of every other page's selectors.
   ========================================================================== */

/* Hero — compact editorial hero, no photograph (this is a utility/
   contact page, not a marketing landing page). Padding and heading
   size significantly reduced (round 3) so the contact-options panel
   is visible much sooner on load. */
.bls-talk-hero {
	padding: 4rem 0 3.25rem;
}

@media (max-width: 599px) {
	.bls-talk-hero {
		padding: 2.5rem 0 2rem;
	}
}

.bls-talk-hero__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-talk-hero__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-talk-hero__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-talk-hero__heading {
	font-size: clamp(3.125rem, 2.75rem + 1.5vw, 3.5rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	max-width: 760px;
	margin: 0 0 1.125rem;
}

.bls-talk-hero__lead {
	font-size: 1.0625rem;
	line-height: 1.6;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	max-width: 700px;
	margin: 0;
}

/* Combined contact-options panel (round 3) — Phone (left, ~60%) and
   CILEX Registration Support (right, ~40%) inside ONE contained
   pale-blue panel, immediately below the hero, so both contact routes
   are visible together without scrolling past the general form. */
.bls-talk-contact {
	padding: 0.75rem 0 2rem;
}

@media (max-width: 599px) {
	.bls-talk-contact {
		padding: 0 0 1.5rem;
	}
}

.bls-talk-contact__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-talk-contact__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-talk-contact__panel {
	display: flex;
	flex-direction: column;
	gap: 2rem;
	background-color: rgba(45, 172, 217, 0.07);
	border: 1px solid rgba(45, 172, 217, 0.28);
	border-radius: 16px;
	padding: 2rem;
}

@media (max-width: 599px) {
	.bls-talk-contact__panel {
		padding: 1.5rem;
	}
}

@media (min-width: 768px) {
	.bls-talk-contact__panel {
		flex-direction: row;
		align-items: center;
		gap: 2.5rem;
		padding: 2.75rem 3rem;
	}
}

.bls-talk-contact__phone {
	margin: 0;
	min-width: 0;
	flex: 1 1 60%;
}

@media (min-width: 768px) {
	.bls-talk-contact__phone {
		flex-basis: 60%;
	}
}

.bls-talk-contact__cilex {
	margin: 0;
	min-width: 0;
	flex: 1 1 40%;
}

@media (min-width: 768px) {
	.bls-talk-contact__cilex {
		flex-basis: 40%;
	}
}

.bls-talk-contact__phone-icon,
.bls-talk-contact__cilex-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.875rem;
}

.bls-talk-contact__phone-icon {
	flex: 0 0 56px;
	width: 56px;
	height: 56px;
}

.bls-talk-contact__phone-icon svg {
	width: 24px;
	height: 24px;
}

.bls-talk-contact__cilex-icon {
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
}

.bls-talk-contact__cilex-icon svg {
	width: 20px;
	height: 20px;
}

.bls-talk-contact__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.5rem;
}

.bls-talk-contact__heading {
	font-size: clamp(1.375rem, 1.15rem + 0.9vw, 1.75rem);
	font-weight: 700;
	line-height: 1.2;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.5rem;
}

.bls-talk-contact__lead {
	font-size: 0.9375rem;
	line-height: 1.55;
	text-align: left;
	color: #4b5563;
	margin: 0 0 1rem;
}

.bls-talk-contact__phone-action,
.bls-talk-contact__cilex-action {
	margin: 0;
}

.bls-talk-contact__number {
	display: inline-block;
	font-size: clamp(1.875rem, 1.6rem + 1.2vw, 2.375rem);
	font-weight: 700;
	line-height: 1.15;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
	transition: color 0.2s ease;
}

.bls-talk-contact__number:hover,
.bls-talk-contact__number:focus-visible {
	color: var(--wp--preset--color--bright-blue);
	text-decoration: underline;
}

.bls-talk-contact__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	white-space: nowrap;
	font-weight: 700;
}

.bls-talk-contact__divider {
	display: none;
}

@media (min-width: 768px) {
	.bls-talk-contact__divider {
		display: block;
		align-self: stretch;
		flex: 0 0 1px;
		width: 1px;
		background-color: rgba(140, 147, 160, 0.35);
	}
}

/* General enquiry section (round 3) — minimal left intro (label,
   heading, lead only — the three reassurance points were removed to
   reduce page length) beside a materially more compact form panel.
   fr-based grid split (not percentages) so the column-gap can never
   overflow the container. */
.bls-talk-form {
	padding: 3rem 0 5rem;
}

@media (max-width: 599px) {
	.bls-talk-form {
		padding: 2rem 0 3rem;
	}
}

.bls-talk-form__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
}

@media (min-width: 600px) {
	.bls-talk-form__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 960px) {
	.bls-talk-form__inner {
		grid-template-columns: minmax(260px, 32fr) minmax(0, 68fr);
		column-gap: 4rem;
		align-items: start;
	}
}

.bls-talk-form__intro {
	margin: 0;
}

.bls-talk-form__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-talk-form__heading {
	font-size: clamp(2rem, 1.75rem + 1.25vw, 2.5rem);
	font-weight: 700;
	line-height: 1.15;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1rem;
}

.bls-talk-form__lead {
	font-size: 1.0625rem;
	line-height: 1.6;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	max-width: 380px;
	margin: 0;
}

.bls-talk-form__panel {
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 15px;
	padding: 2rem;
}

@media (max-width: 599px) {
	.bls-talk-form__panel {
		padding: 1.5rem;
	}
}

.bls-talk-form__required-note {
	font-size: 0.875rem;
	color: #4b5563;
	margin: 0 0 1.125rem;
	text-align: left;
}

.bls-talk-form__form {
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin: 0;
}

/* Field-row grid — FIXED (round 3): Full Name/Email and Phone/
   Organisation previously overlapped on desktop because
   .bls-talk-field__input had no box-sizing declared, so width:100%
   plus its own padding and border rendered wider than its 1fr track
   under this theme's default content-box sizing (no theme-wide
   box-sizing:border-box reset exists). Every input/textarea below now
   explicitly sets box-sizing:border-box, and each row's field children
   get min-width:0 so long unbreakable content can never force a track
   wider than its share of the grid. */
.bls-talk-field-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 20px;
	margin: 0;
}

@media (min-width: 520px) {
	.bls-talk-field-row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.bls-talk-field {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	margin: 0;
	min-width: 0;
	max-width: 100%;
}

.bls-talk-field__label {
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-talk-field__hint {
	font-weight: 400;
	color: #4b5563;
	font-size: 0.875rem;
	margin-left: 0.25rem;
}

.bls-talk-field__input {
	display: block;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	min-height: 48px;
	padding: 0 1rem;
	border: 1px solid rgba(140, 147, 160, 0.5);
	border-radius: 8px;
	font-family: inherit;
	font-size: 1rem;
	color: var(--wp--preset--color--dark-text);
	background-color: var(--wp--preset--color--white);
	transition: border-color 0.2s ease;
}

.bls-talk-field__input:focus {
	border-color: var(--wp--preset--color--dark-blue);
}

.bls-talk-field__textarea {
	min-height: 120px;
	padding: 0.75rem 1rem;
	resize: vertical;
}

.bls-talk-field__note {
	font-size: 0.8125rem;
	line-height: 1.5;
	color: #4b5563;
	margin: 0.5rem 0 0;
	text-align: left;
}

.bls-talk-choice {
	border: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.bls-talk-choice__legend {
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	padding: 0;
	margin: 0 0 0.25rem;
}

.bls-talk-choice__options {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 1.5rem;
}

.bls-talk-choice__option {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 1rem;
	color: var(--wp--preset--color--dark-text);
	cursor: pointer;
}

.bls-talk-choice__option input[type="radio"] {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	margin: 0;
	accent-color: var(--wp--preset--color--dark-blue);
}

.bls-talk-form__submit {
	width: 100%;
	justify-content: center;
	min-height: 50px;
	padding: 0 2rem;
	font-weight: 700;
	gap: 0.5rem;
}

.bls-talk-form__privacy {
	font-size: 0.8125rem;
	line-height: 1.5;
	color: #4b5563;
	margin: 0.5rem 0 0;
	text-align: left;
}

/* ==========================================================================
   Collaborate with Brightlink page — full new build. Same architectural
   techniques already approved throughout this theme (deterministic CSS
   width, fr-based grids, no align:"wide", no wp:columns, real-selector
   "margin: 0" defence against WordPress's zero-specificity blockGap
   injection). Every selector below is scoped under a bls-collab-*
   namespace independent of every other page's selectors.
   ========================================================================== */

/* Hero — structurally identical technique to the approved Employer
   hero (even 50/50 CSS Grid split, full-bleed photograph with a soft
   edge fade, wp-element-button primary CTA at the site's established
   smaller/52px premium size), entirely independent selectors. */
.bls-collab-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 1fr) minmax(340px, 1fr);
	align-items: stretch;
	min-height: 560px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-collab-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-collab-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-collab-hero__heading {
	font-size: clamp(3.375rem, 2.4rem + 2.4vw, 4.25rem);
	line-height: 1.06;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	max-width: 560px;
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-collab-hero__lead {
	font-size: 1.1875rem;
	line-height: 1.5;
	font-weight: 400;
	color: var(--wp--preset--color--dark-text);
	max-width: 500px;
	text-align: left;
	margin: 0;
}

.bls-collab-hero__actions {
	display: flex;
	align-items: center;
	margin-top: 2rem;
}

/* Matches the site's established smaller/52px premium hero CTA
   treatment exactly (same technique as .bls-employer-hero__cta and
   .bls-learner-hero__primary-cta): min-height is the sole source of
   the button's height, with vertical padding zeroed to defeat the
   content-box/min-height padding-stacking behaviour described
   elsewhere in this theme (no box-sizing:border-box reset exists
   here). !important is used narrowly and only for this padding
   property, consistent with this project's established use of it. */
.bls-collab-hero__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem !important;
	font-weight: 700;
}

.bls-collab-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
}

.bls-collab-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 52% 30%;
	display: block;
}

.bls-collab-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-collab-hero {
		display: block;
		min-height: 0;
	}

	.bls-collab-hero__content {
		padding: 3rem 24px 2.5rem;
	}

	.bls-collab-hero__heading {
		font-size: clamp(2.5rem, 2.1rem + 1.6vw, 3rem);
		max-width: 100%;
	}

	.bls-collab-hero__lead {
		max-width: 100%;
	}

	.bls-collab-hero__media {
		height: 320px;
	}

	.bls-collab-hero__media::before {
		display: none;
	}
}

/* Ways to Collaborate — three equal cards, reusing the exact
   height-reduced technique already approved for the Employer page's
   "How can we help?" cards. */
.bls-collab-routes {
	padding: 5rem 0;
}

@media (max-width: 599px) {
	.bls-collab-routes {
		padding: 3rem 0;
	}
}

.bls-collab-routes__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-collab-routes__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-collab-routes__intro {
	margin: 0 0 2.75rem;
	max-width: 700px;
}

.bls-collab-routes__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-collab-routes__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1rem;
}

.bls-collab-routes__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	text-align: left;
	color: #4b5563;
	margin: 0;
}

.bls-collab-routes__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-collab-routes__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 900px) {
	.bls-collab-routes__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bls-collab-route {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.25rem 1.875rem;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.bls-collab-route:hover,
.bls-collab-route:focus-within {
	box-shadow: 0 10px 24px rgba(17, 24, 39, 0.09);
	transform: translateY(-2px);
}

.bls-collab-route__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.75rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-collab-route__icon svg {
	width: 21px;
	height: 21px;
}

.bls-collab-route__heading {
	font-size: 1.3125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-collab-route__body {
	font-size: 1rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	flex-grow: 1;
	margin: 0;
}

.bls-collab-route__cta {
	margin-top: 0.625rem;
}

.bls-collab-route__link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
	white-space: nowrap;
}

.bls-collab-route__link:hover,
.bls-collab-route__link:focus-visible {
	color: var(--wp--preset--color--purple);
	text-decoration: underline;
}

@media (max-width: 599px) {
	.bls-collab-routes__intro {
		margin-bottom: 2rem;
	}

	.bls-collab-route {
		padding: 1.5rem;
	}

	.bls-collab-route__link {
		white-space: normal;
	}
}

/* Possibilities — left editorial intro beside a compact, scannable
   two-column capability list, reusing the exact refined service-list
   technique already approved on the Employer page's "Employer
   Support" section. */
.bls-collab-possibilities {
	padding: 5.25rem 0 3.5rem;
}

@media (max-width: 599px) {
	.bls-collab-possibilities {
		padding: 3.25rem 0 2.5rem;
	}
}

.bls-collab-possibilities__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
}

@media (min-width: 600px) {
	.bls-collab-possibilities__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 960px) {
	.bls-collab-possibilities__inner {
		grid-template-columns: minmax(280px, 38fr) minmax(0, 62fr);
		column-gap: 4rem;
		align-items: start;
	}
}

.bls-collab-possibilities__intro {
	margin: 0;
}

.bls-collab-possibilities__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-collab-possibilities__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.25rem;
}

.bls-collab-possibilities__lead {
	font-size: 1.0625rem;
	line-height: 1.6;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	max-width: 420px;
	margin: 0;
}

.bls-collab-possibilities__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	column-gap: 2rem;
	row-gap: 0;
}

@media (min-width: 600px) {
	.bls-collab-possibilities__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.bls-collab-possibilities__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	padding: 0.875rem 0;
	border-bottom: 1px solid rgba(140, 147, 160, 0.35);
	font-size: 1rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

/* Eight items, two columns, row-major fill: four in each column. The
   true last child (bottom of the right column) and the second-to-last
   child (bottom of the left column) both need their divider removed
   on the two-column desktop/tablet grid; only the true last child on
   single-column mobile. Same nth-last-child(2) technique already
   approved on the Employer Support list. */
.bls-collab-possibilities__list li:last-child {
	border-bottom: none;
}

@media (min-width: 600px) {
	.bls-collab-possibilities__list li:nth-last-child(2) {
		border-bottom: none;
	}
}

.bls-collab-possibilities__list-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	flex: 0 0 28px;
	margin-top: 0.1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-collab-possibilities__list-icon svg {
	width: 14px;
	height: 14px;
}

.bls-collab-possibilities__list-text {
	flex: 1 1 auto;
	min-width: 0;
}

/* Why Brightlink — restrained reasons checklist on a pale surface
   tint, reusing the exact two-column fr-based grid technique already
   approved on the Employer page's "Why Brightlink?" section. Each
   item pairs a bold title with a supporting sentence (unlike the
   Employer page's single-line reasons), matching the approved brief's
   own two-part copy. */
.bls-collab-why {
	background-color: var(--wp--preset--color--surface);
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-collab-why {
		padding: 2.75rem 0;
	}
}

.bls-collab-why__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 600px) {
	.bls-collab-why__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 960px) {
	.bls-collab-why__inner {
		grid-template-columns: minmax(0, 40fr) minmax(0, 60fr);
		column-gap: 4rem;
		align-items: start;
	}
}

.bls-collab-why__intro {
	margin: 0;
}

.bls-collab-why__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-collab-why__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-collab-why__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.25rem;
}

@media (min-width: 600px) {
	.bls-collab-why__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.bls-collab-why__item {
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	margin: 0;
}

.bls-collab-why__item-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 36px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-collab-why__item-icon svg {
	width: 18px;
	height: 18px;
}

.bls-collab-why__item-text {
	display: block;
	font-size: 1rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	padding-top: 0.3rem;
}

/* Founder feedback (differentiators round): reason-heading size
   increased from 15px to 18px (within the requested 18-20px range),
   since the new founder-provided headings are longer and needed to
   keep their existing visual prominence rather than reading as
   incidental labels. */
.bls-collab-why__item-title {
	display: block;
	font-size: 1.125rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.3rem;
}

/* Final CTA — same Dark Blue visual language as the approved
   Homepage/Learner/Employer closing CTAs. Deliberately "Start a
   Conversation", not "Talk to Us" — see collab-final-cta.php docblock. */
.bls-collab-final {
	background-color: var(--wp--preset--color--dark-blue);
	padding: 4.5rem 0 3.5rem;
}

@media (max-width: 599px) {
	.bls-collab-final {
		padding: 3.25rem 0 2.75rem;
	}
}

.bls-collab-final__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 600px) {
	.bls-collab-final__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-collab-final__inner {
		grid-template-columns: minmax(0, 73fr) minmax(0, 27fr);
		column-gap: 2.5rem;
		align-items: center;
	}
}

.bls-collab-final__content {
	margin: 0;
}

.bls-collab-final__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: rgba(255, 255, 255, 0.82);
	margin: 0 0 1rem;
}

.bls-collab-final__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--white);
	max-width: 640px;
	margin: 0 0 1rem;
}

.bls-collab-final__lead {
	font-size: 1.0625rem;
	line-height: 1.58;
	text-align: left;
	color: var(--wp--preset--color--white);
	max-width: 700px;
	margin: 0;
}

.bls-collab-final__action {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin: 0;
}

@media (min-width: 900px) {
	.bls-collab-final__action {
		justify-content: flex-end;
	}
}

.bls-collab-final__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem;
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--dark-blue);
	font-size: 1rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-collab-final__button:hover,
.bls-collab-final__button:focus-visible {
	background-color: var(--wp--preset--color--surface);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

/* ==========================================================================
   Request a CILEX Registration Call page — full new build. Same
   architectural techniques already approved throughout this theme
   (deterministic CSS width, fr-based grids, no align:"wide", no
   wp:columns, real-selector "margin: 0" defence against WordPress's
   zero-specificity blockGap injection). Every selector below is
   scoped under a bls-cilex-* namespace independent of every other
   page's selectors.
   ========================================================================== */

/* Hero — structurally identical technique to the approved Employer/
   Collaboration heroes (even 50/50 CSS Grid split, full-bleed
   photograph with a soft edge fade, wp-element-button CTA at the
   site's established smaller/52px premium size). The CTA is an
   in-page anchor to the request-form panel, not a route change. */
.bls-cilex-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 1fr) minmax(340px, 1fr);
	align-items: stretch;
	min-height: 560px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-cilex-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-cilex-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-cilex-hero__heading {
	font-size: clamp(2.625rem, 2.2rem + 1.8vw, 3.375rem);
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	max-width: 520px;
	text-align: left;
	margin: 0 0 1.125rem;
}

/* Founder feedback (hero intro round): a short contextual lead-in,
   deliberately smaller/lighter than the H1 (17px/600-weight here vs
   the H1's much larger clamp) so it reads as a brief statement, not a
   second heading, banner or alert — no background, no border, no
   icon. Same 480px max-width as the existing lead/sublead paragraphs;
   margin-bottom sits within the requested 18-24px gap before the
   existing "Brightlink learners can request..." paragraph. */
.bls-cilex-hero__intro {
	font-size: 1.0625rem;
	line-height: 1.5;
	font-weight: 600;
	color: var(--wp--preset--color--dark-blue);
	max-width: 480px;
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-cilex-hero__lead {
	font-size: 1.1875rem;
	line-height: 1.5;
	font-weight: 400;
	color: var(--wp--preset--color--dark-text);
	max-width: 480px;
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-cilex-hero__sublead {
	font-size: 1rem;
	line-height: 1.55;
	color: #4b5563;
	max-width: 480px;
	text-align: left;
	margin: 0 0 1.5rem;
}

.bls-cilex-hero__points {
	list-style: none;
	margin: 0 0 2rem;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.625rem;
}

.bls-cilex-hero__points li {
	display: flex;
	align-items: center;
	gap: 0.625rem;
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-cilex-hero__points-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-cilex-hero__points-icon svg {
	width: 12px;
	height: 12px;
}

.bls-cilex-hero__actions {
	margin: 0;
}

.bls-cilex-hero__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem !important;
	font-weight: 700;
}

.bls-cilex-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
}

.bls-cilex-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 30%;
	display: block;
}

.bls-cilex-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-cilex-hero {
		display: block;
		min-height: 0;
	}

	.bls-cilex-hero__content {
		padding: 3rem 24px 2.5rem;
	}

	.bls-cilex-hero__heading {
		font-size: clamp(2.25rem, 1.9rem + 1.6vw, 2.75rem);
		max-width: 100%;
	}

	.bls-cilex-hero__intro,
	.bls-cilex-hero__lead,
	.bls-cilex-hero__sublead {
		max-width: 100%;
	}

	.bls-cilex-hero__media {
		height: 300px;
	}

	.bls-cilex-hero__media::before {
		display: none;
	}
}

/* What You'll Get — four-column editorial benefit row, reusing the
   exact divider-based (no card, no shadow) technique already approved
   for the Learner page's "Where are you starting from?" section. */
.bls-cilex-benefits {
	padding: 5rem 0;
}

@media (max-width: 599px) {
	.bls-cilex-benefits {
		padding: 3rem 0;
	}
}

.bls-cilex-benefits__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-cilex-benefits__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-cilex-benefits__intro {
	margin: 0 0 2.75rem;
	max-width: 700px;
}

.bls-cilex-benefits__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-cilex-benefits__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-cilex-benefits__grid {
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-cilex-benefits__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2rem;
		row-gap: 2.5rem;
	}
}

@media (min-width: 960px) {
	.bls-cilex-benefits__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		column-gap: 0;
		row-gap: 0;
	}
}

.bls-cilex-benefit {
	margin: 0;
}

@media (max-width: 599px) {
	.bls-cilex-benefit:not(:first-child) {
		border-top: 1px solid rgba(140, 147, 160, 0.35);
		padding-top: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-cilex-benefit {
		padding: 0 1.75rem;
	}

	.bls-cilex-benefit:last-child {
		padding-right: 0;
	}

	.bls-cilex-benefit:not(:first-child) {
		border-left: 1px solid rgba(140, 147, 160, 0.35);
	}
}

.bls-cilex-benefit__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	margin: 0 0 1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-cilex-benefit__icon svg {
	width: 20px;
	height: 20px;
}

.bls-cilex-benefit__heading {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-cilex-benefit__body {
	font-size: 1rem;
	line-height: 1.6;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* Process + form — contained ~48/52 fr-based two-column grid (left
   info column: Before Your Call, Please Note, How It Works, stacked;
   right column: the request-form panel). */
.bls-cilex-process {
	background-color: var(--wp--preset--color--surface);
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-cilex-process {
		padding: 2.75rem 0;
	}
}

.bls-cilex-process__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
}

@media (min-width: 600px) {
	.bls-cilex-process__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 960px) {
	.bls-cilex-process__inner {
		grid-template-columns: minmax(0, 48fr) minmax(0, 52fr);
		column-gap: 3.5rem;
		align-items: start;
	}
}

.bls-cilex-process__info {
	display: flex;
	flex-direction: column;
	gap: 2.5rem;
	margin: 0;
}

/* Before Your Call */
.bls-cilex-before {
	margin: 0;
}

.bls-cilex-before__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-cilex-before__heading {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.125rem);
	font-weight: 700;
	line-height: 1.15;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.75rem;
}

.bls-cilex-before__lead {
	font-size: 1rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0 0 1.5rem;
}

.bls-cilex-before__item {
	margin: 0 0 1.5rem;
}

.bls-cilex-before__item:last-child {
	margin-bottom: 0;
}

.bls-cilex-before__item-heading {
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-cilex-before__item-lead {
	font-size: 0.9375rem;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-cilex-before__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
}

.bls-cilex-before__list li {
	position: relative;
	padding-left: 1.125rem;
	font-size: 0.9375rem;
	line-height: 1.5;
	color: #4b5563;
	text-align: left;
}

.bls-cilex-before__list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.55em;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background-color: var(--wp--preset--color--dark-blue);
}

.bls-cilex-before__item-note {
	font-size: 0.875rem;
	font-style: italic;
	color: #4b5563;
	text-align: left;
	margin: 0.5rem 0 0;
}

/* Please Note */
.bls-cilex-note {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	margin: 0;
	background-color: rgba(45, 172, 217, 0.07);
	border: 1px solid rgba(45, 172, 217, 0.28);
	border-radius: 14px;
	padding: 1.5rem;
}

.bls-cilex-note__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
	margin: 0;
}

.bls-cilex-note__icon svg {
	width: 20px;
	height: 20px;
}

.bls-cilex-note__content {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
}

.bls-cilex-note__heading {
	font-size: 1.0625rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.4rem;
}

.bls-cilex-note__body {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* How It Works */
.bls-cilex-steps {
	margin: 0;
}

.bls-cilex-steps__heading {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.125rem);
	font-weight: 700;
	line-height: 1.15;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.25rem;
}

.bls-cilex-steps__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

.bls-cilex-steps__item {
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	margin: 0;
}

.bls-cilex-steps__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 36px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-cilex-steps__icon svg {
	width: 18px;
	height: 18px;
}

.bls-cilex-steps__text {
	display: block;
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	padding-top: 0.25rem;
}

.bls-cilex-steps__item-title {
	display: block;
	font-size: 1rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.2rem;
}

/* Request form panel */
.bls-cilex-form__panel {
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 15px;
	padding: 2.25rem;
	scroll-margin-top: 1.5rem;
}

@media (max-width: 599px) {
	.bls-cilex-form__panel {
		padding: 1.5rem;
	}
}

.bls-cilex-form__heading {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.125rem);
	font-weight: 700;
	line-height: 1.15;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.75rem;
}

.bls-cilex-form__lead {
	font-size: 1rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-cilex-form__required-note {
	font-size: 0.875rem;
	color: #4b5563;
	margin: 0 0 1.25rem;
	text-align: left;
}

.bls-cilex-form__form {
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin: 0;
}

.bls-cilex-field-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 20px;
	margin: 0;
}

@media (min-width: 480px) {
	.bls-cilex-field-row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.bls-cilex-field {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	margin: 0;
	min-width: 0;
	max-width: 100%;
}

.bls-cilex-field__label {
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-cilex-field__hint {
	font-weight: 400;
	color: #4b5563;
	font-size: 0.875rem;
	margin-left: 0.25rem;
}

.bls-cilex-field__hint-text {
	font-size: 0.8125rem;
	line-height: 1.5;
	color: #4b5563;
	margin: 0;
	text-align: left;
}

.bls-cilex-field__input {
	display: block;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	min-height: 48px;
	padding: 0 1rem;
	border: 1px solid rgba(140, 147, 160, 0.5);
	border-radius: 8px;
	font-family: inherit;
	font-size: 1rem;
	color: var(--wp--preset--color--dark-text);
	background-color: var(--wp--preset--color--white);
	transition: border-color 0.2s ease;
}

.bls-cilex-field__input:focus {
	border-color: var(--wp--preset--color--dark-blue);
}

.bls-cilex-field__textarea {
	min-height: 110px;
	padding: 0.75rem 1rem;
	resize: vertical;
}

.bls-cilex-field__note {
	font-size: 0.8125rem;
	line-height: 1.5;
	color: #4b5563;
	margin: 0.5rem 0 0;
	text-align: left;
}

.bls-cilex-choice {
	border: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.bls-cilex-choice__legend {
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	padding: 0;
	margin: 0 0 0.25rem;
}

.bls-cilex-choice__options {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem 1.5rem;
}

.bls-cilex-choice__option {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 1rem;
	color: var(--wp--preset--color--dark-text);
	cursor: pointer;
}

.bls-cilex-choice__option input[type="radio"] {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	margin: 0;
	accent-color: var(--wp--preset--color--dark-blue);
}

.bls-cilex-form__submit,
.bls-cilex-form__submit:visited {
	width: 100%;
	justify-content: center;
	min-height: 52px;
	padding: 0 1.5rem;
	font-weight: 700;
	gap: 0.5rem;
}

.bls-cilex-form__privacy {
	font-size: 0.8125rem;
	line-height: 1.5;
	color: #4b5563;
	margin: 0.5rem 0 0;
	text-align: left;
}

/* Phone signpost — restrained, contained row (not a full Dark Blue
   slab), matching the site's established smaller-panel treatment. */
.bls-cilex-phone {
	padding: 0 0 4.5rem;
}

@media (max-width: 599px) {
	.bls-cilex-phone {
		padding: 0 0 3rem;
	}
}

.bls-cilex-phone__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: flex;
	align-items: center;
	gap: 1.25rem;
}

@media (max-width: 479px) {
	.bls-cilex-phone__inner {
		flex-direction: column;
		align-items: flex-start;
	}
}

.bls-cilex-phone__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 56px;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-cilex-phone__icon svg {
	width: 26px;
	height: 26px;
}

.bls-cilex-phone__content {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
}

.bls-cilex-phone__heading {
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.2;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.3rem;
}

.bls-cilex-phone__lead {
	font-size: 1rem;
	line-height: 1.5;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-cilex-phone__number {
	color: var(--wp--preset--color--dark-blue);
	font-weight: 700;
	text-decoration: none;
}

.bls-cilex-phone__number:hover,
.bls-cilex-phone__number:focus-visible {
	color: var(--wp--preset--color--purple);
	text-decoration: underline;
}

/* ==========================================================================
   About page — full founder-content rebuild. Same architectural
   techniques already approved throughout this theme (deterministic CSS
   width, fr-based grids, no align:"wide", no wp:columns). Every
   selector below is scoped under a bls-about-* namespace independent of
   every other page's selectors. The previous About page's CSS
   (bls-about-values*, bls-about-story*, bls-about-cta*) has been fully
   removed as part of this rebuild — those selectors are no longer
   referenced by any pattern; bls-about-hero* and bls-about-purpose*
   are reused filenames/selectors but with entirely new rules for the
   new content structure.
   ========================================================================== */

/* The shared .bls-about-image-placeholder component (base, __visual,
   __caption, __label, __desc, __note, and the --wide modifier) that
   previously lived here has been removed. Its last two live uses
   (patterns/about-purpose.php's "Why Brightlink Exists" image and
   patterns/about-human.php's "Human Connection by Design" image) were
   both replaced with real photographs in the image redistribution
   round, leaving this component with zero remaining references
   anywhere in the theme, so it was deleted rather than kept as dead
   CSS. */

/* Hero — full-bleed split hero, reusing the exact grid/media/fade
   architecture already established and approved on
   patterns/learner-hero.php, patterns/employer-hero.php and
   patterns/collab-hero.php (see about-hero.php's own docblock for the
   full rationale). Even 50/50 column split, matching the Employer/
   Collab references (About's copy volume and single-CTA structure is
   closer to those two than to Learner's wider 46/54 split). */
.bls-about-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 1fr) minmax(340px, 1fr);
	align-items: stretch;
	min-height: 560px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-about-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-about-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-about-hero__heading {
	font-size: clamp(2.375rem, 2rem + 1.6vw, 3.125rem);
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-about-hero__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	font-weight: 400;
	color: var(--wp--preset--color--dark-text);
	max-width: 560px;
	text-align: left;
	margin: 0 0 0.875rem;
}

.bls-about-hero__quote {
	font-size: 1rem;
	line-height: 1.55;
	font-weight: 600;
	color: var(--wp--preset--color--dark-blue);
	max-width: 560px;
	text-align: left;
	margin: 1.25rem 0 1.5rem;
	padding-left: 1rem;
	border-left: 3px solid rgba(45, 172, 217, 0.4);
}

.bls-about-hero__action {
	margin: 0;
}

.bls-about-hero__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-about-hero__button:visited {
	color: var(--wp--preset--color--white);
}

.bls-about-hero__button:hover,
.bls-about-hero__button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

/* Media slot: same position/z-index/margin/height mechanics as the
   reference heroes' `__media`, but this one holds a centred logo
   rather than a cover-fit photograph, so it is a flex box on a pale
   surface-tint background instead of being filled edge-to-edge by an
   object-fit:cover image — the one narrowly-scoped About-specific
   difference the brief explicitly anticipated. No border-radius, no
   padding box: it fills its full grid cell exactly like the
   reference media columns do. */
.bls-about-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
	background-color: var(--wp--preset--color--surface);
	display: flex;
	align-items: center;
	justify-content: center;
}

/* Logo sizing: scales with the media canvas (roughly a third of its
   width) but is capped so it can never become oversized on very wide
   viewports. Both dimensions are auto-derived from the same
   percentage, so the square source (256x256) can never distort. */
.bls-about-hero__logo {
	display: block;
	width: min(34%, 260px);
	height: auto;
	border-radius: 0;
}

/* Left-edge fade: an unmodified copy of the exact gradient already
   used by patterns/learner-hero.php, patterns/employer-hero.php and
   patterns/collab-hero.php, so the white text column visually blends
   into the media canvas exactly as it does on those three pages. At
   this hero's widths the logo is centred well clear of this 110px
   band, so the fade never touches it. */
.bls-about-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-about-hero {
		display: block;
		min-height: 0;
	}

	.bls-about-hero__content {
		padding: 3rem 24px 2.5rem;
	}

	.bls-about-hero__media {
		height: 320px;
	}

	.bls-about-hero__media::before {
		display: none;
	}
}

/* Why Brightlink Exists — copy left, placeholder right. */
.bls-about-purpose {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-about-purpose {
		padding: 2.75rem 0;
	}
}

.bls-about-purpose__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
}

@media (min-width: 600px) {
	.bls-about-purpose__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-about-purpose__inner {
		grid-template-columns: minmax(0, 55fr) minmax(0, 45fr);
		align-items: center;
		gap: 3rem;
	}

	.bls-about-purpose__media {
		order: 2;
	}
}

.bls-about-purpose__content {
	margin: 0;
}

.bls-about-purpose__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-about-purpose__heading {
	font-size: clamp(2rem, 1.75rem + 1.25vw, 2.5rem);
	font-weight: 700;
	line-height: 1.15;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.125rem;
}

.bls-about-purpose__text {
	font-size: 1rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1rem;
}

.bls-about-purpose__statement {
	font-size: 1.0625rem;
	line-height: 1.5;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 1.25rem 0 0;
	padding-left: 1rem;
	border-left: 3px solid rgba(45, 172, 217, 0.4);
}

.bls-about-purpose__media {
	margin: 0;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border-radius: 14px;
}

.bls-about-purpose__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 35% 25%;
}

/* Our Roots Run Deep — founder story, portrait placeholder, timeline.
   Founder feedback (layout round): two rows now, not one grid — Row 1
   (story + portrait) sits above Row 2 (a full-width timeline), so the
   timeline no longer sits confined to the shorter right-hand column
   beneath a much taller portrait placeholder, which was leaving a
   large empty area under the founder narrative. */
.bls-about-roots {
	background-color: var(--wp--preset--color--surface);
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-about-roots {
		padding: 2.75rem 0;
	}
}

.bls-about-roots__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-about-roots__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

/* Row 1: founder narrative + portrait placeholder. */
.bls-about-roots__row1 {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
	margin: 0;
}

@media (min-width: 960px) {
	.bls-about-roots__row1 {
		grid-template-columns: minmax(0, 62fr) minmax(0, 38fr);
		gap: 3rem;
		align-items: start;
	}
}

.bls-about-roots__story {
	margin: 0;
}

.bls-about-roots__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-about-roots__heading {
	font-size: clamp(2rem, 1.75rem + 1.25vw, 2.5rem);
	font-weight: 700;
	line-height: 1.15;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.25rem;
}

.bls-about-roots__text {
	font-size: 0.9375rem;
	line-height: 1.65;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1rem;
}

.bls-about-roots__text:last-child {
	margin-bottom: 0;
}

/* Portrait: 4:5 ratio, not stretched to the text column's height even
   though the row's align-items:start already prevents that. Founder
   photograph, object-fit: cover with a tuned object-position so the
   face and hair remain fully visible; simple rectangular corner-radius
   treatment, no decorative frame. */
.bls-about-roots__portrait {
	aspect-ratio: 4 / 5;
	min-height: 0;
	align-self: start;
	margin: 0;
	overflow: hidden;
	border-radius: 14px;
}

.bls-about-roots__portrait img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 20%;
}

/* The former "A Brief Timeline" component (Row 2) previously lived
   here: .bls-about-roots__timeline-wrap / __timeline-label /
   __timeline / __timeline-item (+ --marked, --today modifiers) /
   __timeline-year / __timeline-text / __timeline-arrow, plus their
   700px and 1100px responsive rules. Removed in the image
   redistribution round along with its markup in patterns/about-
   roots.php; none of these selectors are shared with any other
   component on the site, so the entire block was deleted rather than
   retained as dead CSS. */

/* The People Behind Brightlink — intro plus an accessible, manual
   (non-autoplaying) tutor carousel. */
.bls-about-team {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-about-team {
		padding: 2.75rem 0;
	}
}

.bls-about-team__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-about-team__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-about-team__intro {
	max-width: 820px;
	margin: 0 0 2.75rem;
}

.bls-about-team__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-about-team__heading {
	font-size: clamp(2rem, 1.75rem + 1.25vw, 2.5rem);
	font-weight: 700;
	line-height: 1.15;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.125rem;
}

.bls-about-team__text {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1rem;
}

.bls-about-team__statement {
	font-size: 1rem;
	line-height: 1.5;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 1.25rem 0 0;
	padding-left: 1rem;
	border-left: 3px solid rgba(45, 172, 217, 0.4);
}

.bls-about-team__carousel {
	margin: 0;
}

.bls-about-team__carousel-controls {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin: 0 0 1.5rem;
}

.bls-about-team__carousel-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.4);
	color: var(--wp--preset--color--dark-blue);
	cursor: pointer;
	padding: 0;
	transition: background-color 0.2s ease, box-shadow 0.2s ease;
}

.bls-about-team__carousel-btn svg {
	width: 20px;
	height: 20px;
}

.bls-about-team__carousel-btn:hover:not(:disabled),
.bls-about-team__carousel-btn:focus-visible:not(:disabled) {
	background-color: var(--wp--preset--color--surface);
	box-shadow: 0 3px 10px rgba(17, 24, 39, 0.08);
}

.bls-about-team__carousel-btn:focus-visible {
	outline: 2px solid var(--wp--preset--color--dark-blue);
	outline-offset: 2px;
}

.bls-about-team__carousel-btn:disabled {
	opacity: 0.35;
	cursor: not-allowed;
}

.bls-about-team__carousel-progress {
	font-size: 0.875rem;
	font-weight: 600;
	color: #4b5563;
	text-align: center;
	margin: 0;
	white-space: nowrap;
}

.bls-about-team__carousel-track {
	list-style: none;
	margin: 0;
	padding: 0 0 0.5rem;
	display: flex;
	gap: 1.5rem;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: none;
}

.bls-about-team__carousel-track::-webkit-scrollbar {
	display: none;
}

.bls-about-team__carousel-item {
	flex: 0 0 100%;
	max-width: 100%;
	scroll-snap-align: start;
}

@media (min-width: 700px) {
	.bls-about-team__carousel-item {
		flex: 0 0 calc((100% - 1.5rem) / 2);
		max-width: calc((100% - 1.5rem) / 2);
	}
}

@media (min-width: 1100px) {
	.bls-about-team__carousel-item {
		flex: 0 0 calc((100% - 4.5rem) / 4);
		max-width: calc((100% - 4.5rem) / 4);
	}
}

.bls-about-team__card {
	display: flex;
	flex-direction: column;
	align-items: center;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.75rem 1.25rem;
	text-align: center;
}

.bls-about-team__card-photo {
	display: block;
	width: 128px;
	height: 128px;
	object-fit: cover;
	margin: 0 0 1.125rem;
}

.bls-about-team__card-name {
	font-size: 1rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: center;
	margin: 0 0 0.25rem;
}

.bls-about-team__card-role {
	font-size: 0.875rem;
	line-height: 1.4;
	color: #4b5563;
	text-align: center;
	margin: 0;
}

@media (max-width: 599px) {
	.bls-about-team__carousel-controls {
		margin-bottom: 1.25rem;
	}

	.bls-about-team__card {
		padding: 1.5rem 1.125rem;
	}
}

/* The Brightlink Legal Learning Method — diagram placeholder plus six
   accessible HTML stages. */
.bls-about-method {
	background-color: rgba(45, 172, 217, 0.06);
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-about-method {
		padding: 2.75rem 0;
	}
}

.bls-about-method__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-about-method__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-about-method__intro {
	max-width: 780px;
	margin: 0 0 2.5rem;
}

.bls-about-method__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-about-method__heading {
	font-size: clamp(2rem, 1.75rem + 1.25vw, 2.5rem);
	font-weight: 700;
	line-height: 1.15;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.125rem;
}

.bls-about-method__text {
	font-size: 1rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* Founder-supplied original Legal Learning Method diagram. Centred,
   restrained presentation inside the section's existing pale-blue
   background (not placed inside a separate white card), with generous
   surrounding whitespace and a sensible max-width so it stays readable
   on desktop without becoming oversized. object-fit: contain (never
   cover) so the entire diagram always remains visible, uncropped and
   undistorted. */
.bls-about-method__diagram {
	max-width: 620px;
	margin: 0 auto 3rem;
}

.bls-about-method__diagram img {
	display: block;
	width: 100%;
	height: auto;
	object-fit: contain;
}

@media (max-width: 599px) {
	.bls-about-method__diagram {
		margin: 0 auto 2.25rem;
	}
}

.bls-about-method__stages {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.75rem;
}

@media (min-width: 700px) {
	.bls-about-method__stages {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2rem;
	}
}

@media (min-width: 1100px) {
	.bls-about-method__stages {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bls-about-method__stage {
	background-color: var(--wp--preset--color--white);
	border-radius: 12px;
	padding: 1.75rem;
}

.bls-about-method__stage-number {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
	font-size: 0.9375rem;
	font-weight: 700;
	margin: 0 0 1rem;
}

.bls-about-method__stage-heading {
	font-size: 1.125rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-about-method__stage-intro {
	font-size: 0.875rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

.bls-about-method__closing {
	font-size: 1.0625rem;
	line-height: 1.5;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 2.5rem;
}

/* Human Connection by Design — placeholder plus content, two-column. */
.bls-about-human {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-about-human {
		padding: 2.75rem 0;
	}
}

.bls-about-human__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
}

@media (min-width: 600px) {
	.bls-about-human__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-about-human__inner {
		grid-template-columns: minmax(0, 45fr) minmax(0, 55fr);
		align-items: center;
		gap: 3rem;
	}
}

.bls-about-human__media {
	margin: 0;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border-radius: 14px;
}

.bls-about-human__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 55% 20%;
}

.bls-about-human__content {
	margin: 0;
}

.bls-about-human__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-about-human__heading {
	font-size: clamp(2rem, 1.75rem + 1.25vw, 2.5rem);
	font-weight: 700;
	line-height: 1.15;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.125rem;
}

.bls-about-human__text {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1rem;
}

.bls-about-human__statement {
	font-size: 1.0625rem;
	line-height: 1.5;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 1.25rem 0;
	padding-left: 1rem;
	border-left: 3px solid rgba(45, 172, 217, 0.4);
}

.bls-about-human__closing {
	font-size: 0.9375rem;
	line-height: 1.5;
	font-weight: 600;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 1rem 0 0;
}

/* Our Teaching Approach — restorative practice, simple text section. */
.bls-about-restorative {
	background-color: var(--wp--preset--color--surface);
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-about-restorative {
		padding: 2.75rem 0;
	}
}

.bls-about-restorative__inner {
	width: min(calc(100% - 40px), 820px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-about-restorative__inner {
		width: min(calc(100% - 64px), 820px);
	}
}

.bls-about-restorative__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-about-restorative__heading {
	font-size: clamp(2rem, 1.75rem + 1.25vw, 2.5rem);
	font-weight: 700;
	line-height: 1.15;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.25rem;
}

.bls-about-restorative__text {
	font-size: 1rem;
	line-height: 1.65;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-about-restorative__statement {
	font-size: 1.0625rem;
	line-height: 1.5;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 1.25rem 0 0;
	padding-left: 1rem;
	border-left: 3px solid rgba(45, 172, 217, 0.4);
}

/* What This Looks Like in Practice — compact seven-item icon row. */
.bls-about-practice {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-about-practice {
		padding: 2.75rem 0;
	}
}

.bls-about-practice__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-about-practice__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-about-practice__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-about-practice__heading {
	font-size: clamp(2rem, 1.75rem + 1.25vw, 2.5rem);
	font-weight: 700;
	line-height: 1.15;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.75rem;
}

.bls-about-practice__lead {
	font-size: 0.9375rem;
	line-height: 1.5;
	color: #4b5563;
	text-align: left;
	margin: 0 0 2.25rem;
}

.bls-about-practice__list {
	list-style: none;
	margin: 0 0 2rem;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.75rem;
}

@media (min-width: 700px) {
	.bls-about-practice__list {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-about-practice__item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.75rem;
}

.bls-about-practice__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-about-practice__icon svg {
	width: 18px;
	height: 18px;
}

.bls-about-practice__text {
	font-size: 0.875rem;
	line-height: 1.4;
	font-weight: 600;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-about-practice__employer {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	max-width: 760px;
	margin: 0;
	padding-top: 1.75rem;
	border-top: 1px solid rgba(140, 147, 160, 0.3);
}

/* Brightlink Today — content plus a four-point proof grid. */
.bls-about-today {
	background-color: rgba(45, 172, 217, 0.06);
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-about-today {
		padding: 2.75rem 0;
	}
}

.bls-about-today__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-about-today__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-about-today__content {
	max-width: 820px;
	margin: 0 0 2.5rem;
}

.bls-about-today__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-about-today__heading {
	font-size: clamp(2rem, 1.75rem + 1.25vw, 2.5rem);
	font-weight: 700;
	line-height: 1.15;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.125rem;
}

.bls-about-today__text {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1rem;
}

.bls-about-today__proof {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.25rem;
}

@media (min-width: 700px) {
	.bls-about-today__proof {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-about-today__proof-item {
	background-color: var(--wp--preset--color--white);
	border-radius: 12px;
	padding: 1.5rem;
	text-align: center;
}

.bls-about-today__proof-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	margin: 0 auto 0.875rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-about-today__proof-icon svg {
	width: 19px;
	height: 19px;
}

.bls-about-today__proof-stat {
	font-size: 1.375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-align: center;
	margin: 0 0 0.25rem;
}

.bls-about-today__proof-label {
	font-size: 0.8125rem;
	line-height: 1.4;
	color: #4b5563;
	text-align: center;
	margin: 0;
}

/* What We Believe — closing beliefs plus a broad closing placeholder. */
.bls-about-beliefs {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-about-beliefs {
		padding: 2.75rem 0;
	}
}

.bls-about-beliefs__inner {
	width: min(calc(100% - 40px), 820px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-about-beliefs__inner {
		width: min(calc(100% - 64px), 820px);
	}
}

.bls-about-beliefs__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-about-beliefs__heading {
	font-size: clamp(2rem, 1.75rem + 1.25vw, 2.5rem);
	font-weight: 700;
	line-height: 1.15;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.25rem;
}

.bls-about-beliefs__text {
	font-size: 1rem;
	line-height: 1.65;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-about-beliefs__media {
	margin: 0;
	aspect-ratio: 16 / 9;
	overflow: hidden;
	border-radius: 14px;
}

.bls-about-beliefs__media img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 45%;
}

.bls-about-beliefs__closing {
	font-size: 1.25rem;
	line-height: 1.4;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 2.5rem;
}

/* Find Your Next Step — three audience actions. */
.bls-about-next-step {
	background-color: var(--wp--preset--color--dark-blue);
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-about-next-step {
		padding: 3rem 0;
	}
}

.bls-about-next-step__inner {
	width: min(calc(100% - 40px), 900px);
	margin-inline: auto;
	text-align: center;
}

@media (min-width: 600px) {
	.bls-about-next-step__inner {
		width: min(calc(100% - 64px), 900px);
	}
}

.bls-about-next-step__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: center;
	color: rgba(255, 255, 255, 0.82);
	margin: 0 0 1rem;
}

.bls-about-next-step__heading {
	font-size: clamp(1.875rem, 1.6rem + 1.2vw, 2.375rem);
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	color: var(--wp--preset--color--white);
	margin: 0 auto 1rem;
	max-width: 700px;
}

.bls-about-next-step__text {
	font-size: 1rem;
	line-height: 1.55;
	color: var(--wp--preset--color--white);
	text-align: center;
	max-width: 640px;
	margin: 0 auto 2rem;
}

.bls-about-next-step__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 1rem;
}

.bls-about-next-step__action {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--dark-blue);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-about-next-step__action:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-about-next-step__action:hover,
.bls-about-next-step__action:focus-visible {
	background-color: var(--wp--preset--color--surface);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

@media (max-width: 479px) {
	.bls-about-next-step__actions {
		flex-direction: column;
		align-items: stretch;
	}

	.bls-about-next-step__action {
		justify-content: center;
	}
}

/* ==========================================================================
   New to Legal Study page — full new build (/learners/new-to-legal-study/).
   Same architectural techniques already approved throughout this theme
   (deterministic CSS width, fr-based grids, no align:"wide", no
   wp:columns). Every selector below is scoped under a
   bls-new-study-* namespace independent of every other page's selectors.
   ========================================================================== */

/* Hero — same technique as the Employer/Collaboration/CILEX/About heroes. */
.bls-new-study-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 1fr) minmax(340px, 1fr);
	align-items: stretch;
	min-height: 480px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-new-study-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-new-study-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-new-study-hero__heading {
	font-size: clamp(2.5rem, 2.1rem + 1.6vw, 3.125rem);
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	max-width: 520px;
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-new-study-hero__lead {
	font-size: 1.125rem;
	line-height: 1.55;
	font-weight: 400;
	color: var(--wp--preset--color--dark-text);
	max-width: 480px;
	text-align: left;
	margin: 0;
}

.bls-new-study-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
}

.bls-new-study-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 30%;
	display: block;
}

.bls-new-study-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-new-study-hero {
		display: block;
		min-height: 0;
	}

	.bls-new-study-hero__content {
		padding: 3rem 24px 2.5rem;
	}

	.bls-new-study-hero__heading {
		font-size: clamp(2.125rem, 1.8rem + 1.6vw, 2.5rem);
		max-width: 100%;
	}

	.bls-new-study-hero__lead {
		max-width: 100%;
	}

	.bls-new-study-hero__media {
		height: 280px;
	}

	.bls-new-study-hero__media::before {
		display: none;
	}
}

/* Your Starting Options — two substantial information panels. */
.bls-new-study-options {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-new-study-options {
		padding: 2.75rem 0;
	}
}

.bls-new-study-options__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-new-study-options__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-new-study-options__intro {
	margin: 0 0 2.5rem;
	max-width: 720px;
}

.bls-new-study-options__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-new-study-options__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-new-study-options__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-new-study-options__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 900px) {
	.bls-new-study-options__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2rem;
		align-items: stretch;
	}
}

.bls-new-study-option {
	border-radius: 14px;
	padding: 2rem;
	display: flex;
	flex-direction: column;
}

.bls-new-study-option--cpq {
	background-color: rgba(45, 172, 217, 0.07);
}

.bls-new-study-option--apprenticeship {
	background-color: rgba(223, 165, 56, 0.09);
}

.bls-new-study-option__heading {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.2;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-new-study-option__tagline {
	font-size: 1rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.5rem;
}

.bls-new-study-option__rows {
	margin: 0;
}

.bls-new-study-option__row {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.25rem 0.75rem;
	padding: 0.875rem 0;
	border-bottom: 1px solid rgba(140, 147, 160, 0.3);
}

.bls-new-study-option__row--last {
	border-bottom: none;
	padding-bottom: 0;
}

.bls-new-study-option__row dt {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	flex: 0 0 auto;
	min-width: 160px;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
}

.bls-new-study-option__row dd {
	flex: 1 1 220px;
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-new-study-option__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background-color: rgba(255, 255, 255, 0.65);
	color: var(--wp--preset--color--dark-blue);
}

.bls-new-study-option__icon svg {
	width: 15px;
	height: 15px;
}

.bls-new-study-option__caution {
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	background-color: rgba(255, 255, 255, 0.55);
	border-radius: 8px;
	padding: 0.875rem 1rem;
	margin: 1.5rem 0 0;
}

.bls-new-study-option__cta {
	margin: 1.25rem 0 0;
}

.bls-new-study-option__cta-link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-new-study-option__cta-link:hover,
.bls-new-study-option__cta-link:focus-visible {
	text-decoration: underline;
}

.bls-new-study-option__cta-link:visited {
	color: var(--wp--preset--color--dark-blue);
}

/* Founder feedback (CPQ CTA round): bottom-aligned action area for the
   CPQ Foundation panel only — margin-top:auto on a flex-column parent
   (.bls-new-study-option already display:flex/flex-direction:column)
   pushes this to the bottom of the panel regardless of how much the
   rows above it wrap, with no absolute positioning or fixed offsets. */
.bls-new-study-option__action {
	margin-top: auto;
	padding-top: 1.5rem;
	border-top: 1px solid rgba(140, 147, 160, 0.3);
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

@media (min-width: 480px) {
	.bls-new-study-option__action {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		flex-wrap: wrap;
		gap: 1.25rem;
	}
}

.bls-new-study-option__action-text {
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.4;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	max-width: 340px;
	margin: 0;
}

.bls-new-study-option__action-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	flex: 0 0 auto;
	min-height: 44px;
	padding: 0 1.375rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 8px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-new-study-option__action-button:visited {
	color: var(--wp--preset--color--white);
}

.bls-new-study-option__action-button:hover,
.bls-new-study-option__action-button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.16);
	transform: translateY(-1px);
}

@media (max-width: 599px) {
	.bls-new-study-option {
		padding: 1.5rem;
	}

	.bls-new-study-option__row dt {
		min-width: 0;
		flex: 1 1 100%;
	}

	.bls-new-study-option__row dd {
		flex: 1 1 100%;
		padding-left: 2.25rem;
	}
}

/* Where could this take your career? — founder feedback round: full
   replacement of the previous qualification-ladder progression rows
   with a three-item career-outcome editorial row (icon, heading, body)
   plus a closing aspirational strip. Arrows here are purely decorative
   (career development in spirit, not a guaranteed sequence), unlike
   the previous version's arrows, which represented an actual
   qualification-stage sequence. */
.bls-new-study-progression {
	background-color: rgba(45, 172, 217, 0.06);
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-new-study-progression {
		padding: 2.75rem 0;
	}
}

.bls-new-study-progression__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-new-study-progression__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-new-study-progression__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-new-study-progression__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-new-study-progression__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	max-width: 760px;
	margin: 0 0 2.75rem;
}

.bls-new-study-progression__outcomes {
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2rem;
	margin: 0 0 2.5rem;
}

@media (min-width: 900px) {
	.bls-new-study-progression__outcomes {
		grid-template-columns: 1fr auto 1fr auto 1fr;
		align-items: start;
		column-gap: 1.5rem;
		row-gap: 0;
	}
}

.bls-new-study-progression__outcome {
	margin: 0;
}

.bls-new-study-progression__outcome-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.16);
	color: var(--wp--preset--color--dark-blue);
}

.bls-new-study-progression__outcome-icon svg {
	width: 21px;
	height: 21px;
}

.bls-new-study-progression__outcome-heading {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-new-study-progression__outcome-text {
	font-size: 1rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

.bls-new-study-progression__arrow {
	display: none;
	color: var(--wp--preset--color--border);
	font-size: 1.25rem;
	line-height: 1;
}

@media (min-width: 900px) {
	.bls-new-study-progression__arrow {
		display: flex;
		align-items: center;
		justify-content: center;
		padding-top: 0.5rem;
	}
}

.bls-new-study-progression__closing {
	background-color: var(--wp--preset--color--white);
	border-radius: 12px;
	padding: 1.25rem 1.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.75rem;
	text-align: center;
	flex-wrap: wrap;
}

.bls-new-study-progression__closing-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	color: var(--wp--preset--color--dark-blue);
}

.bls-new-study-progression__closing-icon svg {
	width: 18px;
	height: 18px;
}

.bls-new-study-progression__closing-text {
	font-size: 1rem;
	font-weight: 600;
	line-height: 1.4;
	color: var(--wp--preset--color--dark-blue);
	margin: 0;
}

@media (max-width: 599px) {
	.bls-new-study-progression__closing {
		padding: 1.125rem 1.25rem;
	}
}

/* What studying with Brightlink is like — five-item editorial row. */
.bls-new-study-learning {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-new-study-learning {
		padding: 2.75rem 0;
	}
}

.bls-new-study-learning__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-new-study-learning__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-new-study-learning__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 2.75rem;
}

.bls-new-study-learning__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2rem;
}

@media (min-width: 600px) {
	.bls-new-study-learning__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2rem;
		row-gap: 2.5rem;
	}
}

@media (min-width: 960px) {
	.bls-new-study-learning__list {
		grid-template-columns: repeat(5, minmax(0, 1fr));
		column-gap: 0;
		row-gap: 0;
	}
}

.bls-new-study-learning__item {
	margin: 0;
}

@media (max-width: 599px) {
	.bls-new-study-learning__item:not(:first-child) {
		border-top: 1px solid rgba(140, 147, 160, 0.35);
		padding-top: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-new-study-learning__item {
		padding: 0 1.5rem;
	}

	.bls-new-study-learning__item:last-child {
		padding-right: 0;
	}

	.bls-new-study-learning__item:not(:first-child) {
		border-left: 1px solid rgba(140, 147, 160, 0.35);
	}
}

.bls-new-study-learning__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	margin: 0 0 1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-new-study-learning__icon svg {
	width: 20px;
	height: 20px;
}

.bls-new-study-learning__title {
	display: block;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.4rem;
}

.bls-new-study-learning__text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* Costs and funding at a glance — two horizontal summary panels. */
.bls-new-study-costs {
	background-color: var(--wp--preset--color--surface);
	padding: 4rem 0;
}

@media (max-width: 599px) {
	.bls-new-study-costs {
		padding: 2.75rem 0;
	}
}

.bls-new-study-costs__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-new-study-costs__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-new-study-costs__heading {
	font-size: clamp(2rem, 1.75rem + 1.25vw, 2.375rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 2rem;
}

.bls-new-study-costs__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.25rem;
}

@media (min-width: 600px) {
	.bls-new-study-costs__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.5rem;
	}
}

.bls-new-study-costs__panel {
	background-color: var(--wp--preset--color--white);
	border-radius: 12px;
	padding: 1.75rem;
	display: flex;
	align-items: flex-start;
	gap: 1rem;
}

.bls-new-study-costs__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 42px;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	color: var(--wp--preset--color--dark-blue);
}

.bls-new-study-costs__panel--cpq .bls-new-study-costs__icon {
	background-color: rgba(45, 172, 217, 0.14);
}

.bls-new-study-costs__panel--apprenticeship .bls-new-study-costs__icon {
	background-color: rgba(223, 165, 56, 0.18);
}

.bls-new-study-costs__icon svg {
	width: 20px;
	height: 20px;
}

.bls-new-study-costs__panel-content {
	display: flex;
	flex-direction: column;
}

.bls-new-study-costs__panel-title {
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.375rem;
}

.bls-new-study-costs__figure {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.2;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.375rem;
}

.bls-new-study-costs__figure--text {
	font-size: 1.0625rem;
}

.bls-new-study-costs__note {
	font-size: 0.875rem;
	line-height: 1.45;
	color: #4b5563;
	margin: 0;
}

/* Not sure which route is right for you? — contained, pale, two-part CTA. */
.bls-new-study-cta {
	padding: 4rem 0;
}

@media (max-width: 599px) {
	.bls-new-study-cta {
		padding: 2.75rem 0;
	}
}

.bls-new-study-cta__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	background-color: rgba(45, 172, 217, 0.08);
	border-radius: 16px;
	padding: 2.5rem;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.75rem;
}

@media (min-width: 600px) {
	.bls-new-study-cta__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-new-study-cta__inner {
		grid-template-columns: minmax(0, 60fr) auto minmax(0, 32fr);
		align-items: center;
	}
}

.bls-new-study-cta__main {
	margin: 0;
}

.bls-new-study-cta__heading {
	font-size: clamp(1.5rem, 1.3rem + 0.9vw, 1.875rem);
	font-weight: 700;
	line-height: 1.2;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-new-study-cta__lead {
	font-size: 1rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-new-study-cta__action {
	margin: 0;
}

.bls-new-study-cta__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-new-study-cta__button:hover,
.bls-new-study-cta__button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

.bls-new-study-cta__divider {
	display: none;
}

@media (min-width: 900px) {
	.bls-new-study-cta__divider {
		display: block;
		width: 1px;
		align-self: stretch;
		background-color: rgba(47, 85, 151, 0.18);
	}
}

.bls-new-study-cta__phone {
	display: flex;
	align-items: center;
	gap: 0.875rem;
	margin: 0;
}

.bls-new-study-cta__phone-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: rgba(255, 255, 255, 0.7);
	color: var(--wp--preset--color--dark-blue);
}

.bls-new-study-cta__phone-icon svg {
	width: 19px;
	height: 19px;
}

.bls-new-study-cta__phone-text {
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

.bls-new-study-cta__phone-link {
	color: var(--wp--preset--color--dark-blue);
	font-weight: 700;
	text-decoration: none;
}

.bls-new-study-cta__phone-link:hover,
.bls-new-study-cta__phone-link:focus-visible {
	text-decoration: underline;
}

.bls-new-study-cta__phone-link:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-new-study-cta__phone-text a:visited {
	color: var(--wp--preset--color--dark-blue);
}

/* ==========================================================================
   Already Working in Law page — full new build
   (/learners/already-working-in-law/). Same architectural techniques
   already approved throughout this theme (deterministic CSS width,
   fr-based grids, no align:"wide", no wp:columns). Every selector
   below is scoped under a bls-working-law-* namespace, entirely
   independent of the New to Legal Study page's own bls-new-study-*
   selectors, even where the visual language matches by design.
   ========================================================================== */

/* Hero — same technique as the other approved heroes. */
.bls-working-law-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 1fr) minmax(340px, 1fr);
	align-items: stretch;
	min-height: 480px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-working-law-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-working-law-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-working-law-hero__heading {
	font-size: clamp(2.5rem, 2.1rem + 1.6vw, 3.125rem);
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	max-width: 520px;
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-working-law-hero__lead {
	font-size: 1.125rem;
	line-height: 1.55;
	font-weight: 400;
	color: var(--wp--preset--color--dark-text);
	max-width: 480px;
	text-align: left;
	margin: 0;
}

.bls-working-law-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
}

.bls-working-law-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 60% 25%;
	display: block;
}

.bls-working-law-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-working-law-hero {
		display: block;
		min-height: 0;
	}

	.bls-working-law-hero__content {
		padding: 3rem 24px 2.5rem;
	}

	.bls-working-law-hero__heading {
		font-size: clamp(2.125rem, 1.8rem + 1.6vw, 2.5rem);
		max-width: 100%;
	}

	.bls-working-law-hero__lead {
		max-width: 100%;
	}

	.bls-working-law-hero__media {
		height: 280px;
	}

	.bls-working-law-hero__media::before {
		display: none;
	}
}

/* Your Options — two substantial route panels. */
.bls-working-law-options {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-working-law-options {
		padding: 2.75rem 0;
	}
}

.bls-working-law-options__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-working-law-options__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-working-law-options__intro {
	margin: 0 0 2.5rem;
	max-width: 760px;
}

.bls-working-law-options__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-working-law-options__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-working-law-options__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-working-law-options__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 900px) {
	.bls-working-law-options__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2rem;
		align-items: stretch;
	}
}

.bls-working-law-option {
	border-radius: 14px;
	padding: 2rem;
	display: flex;
	flex-direction: column;
}

.bls-working-law-option--cpq {
	background-color: rgba(45, 172, 217, 0.07);
}

.bls-working-law-option--apprenticeship {
	background-color: rgba(223, 165, 56, 0.09);
}

.bls-working-law-option__heading {
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-working-law-option__tagline {
	font-size: 1rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.5rem;
}

.bls-working-law-option__stages {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	margin: 0 0 1.5rem;
}

.bls-working-law-stage {
	padding-bottom: 1.5rem;
	border-bottom: 1px solid rgba(140, 147, 160, 0.3);
}

.bls-working-law-stage--last {
	padding-bottom: 0;
	border-bottom: none;
}

.bls-working-law-stage__title-row {
	display: flex;
	align-items: baseline;
	gap: 0.625rem;
	margin: 0 0 0.5rem;
}

.bls-working-law-stage__title {
	font-size: 1.0625rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-working-law-stage__level {
	display: inline-flex;
	align-items: center;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	background-color: rgba(255, 255, 255, 0.65);
	border-radius: 999px;
	padding: 0.2rem 0.625rem;
}

.bls-working-law-stage__note {
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.75rem;
}

.bls-working-law-stage__rows {
	margin: 0;
}

.bls-working-law-stage__row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.2rem 0.75rem;
	padding: 0.5rem 0;
}

.bls-working-law-stage__row dt {
	flex: 0 0 auto;
	min-width: 130px;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
}

.bls-working-law-stage__row dd {
	flex: 1 1 200px;
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-working-law-stage__checklist {
	list-style: none;
	margin: 0 0 1rem;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.bls-working-law-stage__checklist li {
	position: relative;
	padding-left: 1.5rem;
	font-size: 0.9375rem;
	line-height: 1.45;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-working-law-stage__checklist li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.3rem;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.18);
}

.bls-working-law-stage__checklist li::after {
	content: "";
	position: absolute;
	left: 4.5px;
	top: 0.62rem;
	width: 7px;
	height: 4px;
	border-left: 2px solid var(--wp--preset--color--dark-blue);
	border-bottom: 2px solid var(--wp--preset--color--dark-blue);
	transform: rotate(-45deg);
}

.bls-working-law-option__note {
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	background-color: rgba(255, 255, 255, 0.55);
	border-radius: 8px;
	padding: 0.875rem 1rem;
	margin: 0 0 1.5rem;
}

.bls-working-law-option__action {
	margin-top: auto;
	padding-top: 1.5rem;
}

.bls-working-law-option__action-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 0.4rem;
	min-height: 44px;
	padding: 0 1.375rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 8px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-working-law-option__action-button:visited {
	color: var(--wp--preset--color--white);
}

.bls-working-law-option__action-button:hover,
.bls-working-law-option__action-button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 6px 16px rgba(0, 0, 0, 0.16);
	transform: translateY(-1px);
}

.bls-working-law-option__caution {
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	background-color: rgba(255, 255, 255, 0.55);
	border-radius: 8px;
	padding: 0.875rem 1rem;
	margin: 0 0 1.5rem;
}

.bls-working-law-option__cta {
	margin-top: auto;
	padding-top: 1.5rem;
}

.bls-working-law-option__cta-link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-working-law-option__cta-link:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-working-law-option__cta-link:hover,
.bls-working-law-option__cta-link:focus-visible {
	text-decoration: underline;
}

@media (max-width: 599px) {
	.bls-working-law-option {
		padding: 1.5rem;
	}

	.bls-working-law-stage__row dt {
		min-width: 0;
		flex: 1 1 100%;
	}

	.bls-working-law-stage__row dd {
		flex: 1 1 100%;
		padding-left: 1.5rem;
	}
}

/* Why study with Brightlink? — five-item editorial row. */
.bls-working-law-support {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-working-law-support {
		padding: 2.75rem 0;
	}
}

.bls-working-law-support__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-working-law-support__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-working-law-support__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-working-law-support__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 2.75rem;
}

.bls-working-law-support__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2rem;
}

@media (min-width: 600px) {
	.bls-working-law-support__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2rem;
		row-gap: 2.5rem;
	}
}

@media (min-width: 960px) {
	.bls-working-law-support__list {
		grid-template-columns: repeat(5, minmax(0, 1fr));
		column-gap: 0;
		row-gap: 0;
	}
}

.bls-working-law-support__item {
	margin: 0;
}

@media (max-width: 599px) {
	.bls-working-law-support__item:not(:first-child) {
		border-top: 1px solid rgba(140, 147, 160, 0.35);
		padding-top: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-working-law-support__item {
		padding: 0 1.5rem;
	}

	.bls-working-law-support__item:last-child {
		padding-right: 0;
	}

	.bls-working-law-support__item:not(:first-child) {
		border-left: 1px solid rgba(140, 147, 160, 0.35);
	}
}

.bls-working-law-support__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	margin: 0 0 1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-working-law-support__icon svg {
	width: 20px;
	height: 20px;
}

.bls-working-law-support__title {
	display: block;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.4rem;
}

.bls-working-law-support__text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* Where could this take your career? — three-item career-outcome row. */
.bls-working-law-career {
	background-color: rgba(45, 172, 217, 0.06);
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-working-law-career {
		padding: 2.75rem 0;
	}
}

.bls-working-law-career__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-working-law-career__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-working-law-career__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-working-law-career__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-working-law-career__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	max-width: 760px;
	margin: 0 0 2.75rem;
}

.bls-working-law-career__outcomes {
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2rem;
}

@media (min-width: 900px) {
	.bls-working-law-career__outcomes {
		grid-template-columns: 1fr auto 1fr auto 1fr;
		align-items: start;
		column-gap: 1.5rem;
		row-gap: 0;
	}
}

.bls-working-law-career__outcome {
	margin: 0;
}

.bls-working-law-career__outcome-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.16);
	color: var(--wp--preset--color--dark-blue);
}

.bls-working-law-career__outcome-icon svg {
	width: 21px;
	height: 21px;
}

.bls-working-law-career__outcome-heading {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-working-law-career__outcome-text {
	font-size: 1rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

.bls-working-law-career__arrow {
	display: none;
	color: var(--wp--preset--color--border);
	font-size: 1.25rem;
	line-height: 1;
}

@media (min-width: 900px) {
	.bls-working-law-career__arrow {
		display: flex;
		align-items: center;
		justify-content: center;
		padding-top: 0.5rem;
	}
}

/* Talk to us. — contained, pale, two-part final CTA. */
.bls-working-law-cta {
	padding: 4rem 0;
}

@media (max-width: 599px) {
	.bls-working-law-cta {
		padding: 2.75rem 0;
	}
}

.bls-working-law-cta__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	background-color: rgba(45, 172, 217, 0.08);
	border-radius: 16px;
	padding: 2.5rem;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.75rem;
}

@media (min-width: 600px) {
	.bls-working-law-cta__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-working-law-cta__inner {
		grid-template-columns: minmax(0, 58fr) auto minmax(0, 34fr);
		align-items: center;
	}
}

.bls-working-law-cta__main {
	margin: 0;
}

.bls-working-law-cta__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.875rem;
}

.bls-working-law-cta__heading {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.125rem);
	font-weight: 700;
	line-height: 1.15;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-working-law-cta__lead {
	font-size: 1rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	max-width: 480px;
	margin: 0 0 1.25rem;
}

.bls-working-law-cta__action {
	margin: 0;
}

.bls-working-law-cta__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-working-law-cta__button:visited {
	color: var(--wp--preset--color--white);
}

.bls-working-law-cta__button:hover,
.bls-working-law-cta__button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

.bls-working-law-cta__divider {
	display: none;
}

@media (min-width: 900px) {
	.bls-working-law-cta__divider {
		display: block;
		width: 1px;
		align-self: stretch;
		background-color: rgba(47, 85, 151, 0.18);
	}
}

.bls-working-law-cta__phone {
	margin: 0;
}

.bls-working-law-cta__phone-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	margin: 0 0 0.75rem;
	border-radius: 50%;
	background-color: rgba(255, 255, 255, 0.7);
	color: var(--wp--preset--color--dark-blue);
}

.bls-working-law-cta__phone-icon svg {
	width: 19px;
	height: 19px;
}

.bls-working-law-cta__phone-label {
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.375rem;
}

.bls-working-law-cta__phone-number {
	margin: 0 0 0.5rem;
}

.bls-working-law-cta__phone-number a {
	font-size: 1.375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-working-law-cta__phone-number a:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-working-law-cta__phone-number a:hover,
.bls-working-law-cta__phone-number a:focus-visible {
	text-decoration: underline;
}

.bls-working-law-cta__phone-text {
	font-size: 0.875rem;
	line-height: 1.45;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* ==========================================================================
   Law Graduate page — full new build (/learners/law-graduate/). Same
   architectural techniques already approved throughout this theme
   (deterministic CSS width, fr-based grids, no align:"wide", no
   wp:columns). Every selector below is scoped under a
   bls-law-graduate-* namespace, entirely independent of the New to
   Legal Study (bls-new-study-*) and Already Working in Law
   (bls-working-law-*) selectors, even where the visual language matches
   by design.
   ========================================================================== */

/* Hero — same technique as the other approved heroes. */
.bls-law-graduate-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 1fr) minmax(340px, 1fr);
	align-items: stretch;
	min-height: 480px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-law-graduate-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-law-graduate-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-law-graduate-hero__heading {
	font-size: clamp(2.5rem, 2.1rem + 1.6vw, 3.125rem);
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	max-width: 520px;
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-law-graduate-hero__lead {
	font-size: 1.125rem;
	line-height: 1.55;
	font-weight: 400;
	color: var(--wp--preset--color--dark-text);
	max-width: 480px;
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-law-graduate-hero__sublead {
	font-size: 1rem;
	line-height: 1.55;
	color: #4b5563;
	max-width: 480px;
	text-align: left;
	margin: 0;
}

.bls-law-graduate-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
}

.bls-law-graduate-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 35% 20%;
	display: block;
}

.bls-law-graduate-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-law-graduate-hero {
		display: block;
		min-height: 0;
	}

	.bls-law-graduate-hero__content {
		padding: 3rem 24px 2.5rem;
	}

	.bls-law-graduate-hero__heading {
		font-size: clamp(2.125rem, 1.8rem + 1.6vw, 2.5rem);
		max-width: 100%;
	}

	.bls-law-graduate-hero__lead,
	.bls-law-graduate-hero__sublead {
		max-width: 100%;
	}

	.bls-law-graduate-hero__media {
		height: 280px;
	}

	.bls-law-graduate-hero__media::before {
		display: none;
	}
}

/* Your Graduate Options — three route panels plus LPC/BPC strip. */
.bls-law-graduate-routes {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-law-graduate-routes {
		padding: 2.75rem 0;
	}
}

.bls-law-graduate-routes__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-law-graduate-routes__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-law-graduate-routes__intro {
	margin: 0 0 2.5rem;
	max-width: 780px;
}

.bls-law-graduate-routes__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-law-graduate-routes__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-law-graduate-routes__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-law-graduate-routes__note {
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-blue);
	font-weight: 600;
	text-align: left;
	margin: 0;
}

.bls-law-graduate-routes__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0 0 1.75rem;
}

@media (min-width: 900px) {
	.bls-law-graduate-routes__grid {
		grid-template-columns: minmax(0, 58fr) minmax(0, 42fr);
		align-items: stretch;
		gap: 1.75rem;
	}
}

.bls-law-graduate-routes__side {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.bls-law-graduate-route {
	border-radius: 14px;
	padding: 2rem;
	display: flex;
	flex-direction: column;
}

.bls-law-graduate-route--primary {
	padding: 2.25rem;
}

.bls-law-graduate-routes__side .bls-law-graduate-route {
	flex: 1 1 0;
	padding: 1.75rem;
}

.bls-law-graduate-route--blue {
	background-color: rgba(45, 172, 217, 0.07);
}

.bls-law-graduate-route--gold {
	background-color: rgba(223, 165, 56, 0.09);
}

.bls-law-graduate-route__heading {
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-law-graduate-routes__side .bls-law-graduate-route__heading {
	font-size: 1.1875rem;
}

.bls-law-graduate-route__tagline {
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-law-graduate-route__checklist {
	list-style: none;
	margin: 0 0 1.5rem;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.5rem;
}

@media (min-width: 480px) {
	.bls-law-graduate-route__checklist {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.bls-law-graduate-route__checklist li {
	position: relative;
	padding-left: 1.5rem;
	font-size: 0.9375rem;
	line-height: 1.45;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-law-graduate-route__checklist li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.3rem;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.18);
}

.bls-law-graduate-route__checklist li::after {
	content: "";
	position: absolute;
	left: 4.5px;
	top: 0.62rem;
	width: 7px;
	height: 4px;
	border-left: 2px solid var(--wp--preset--color--dark-blue);
	border-bottom: 2px solid var(--wp--preset--color--dark-blue);
	transform: rotate(-45deg);
}

.bls-law-graduate-route__rows {
	margin: 0;
}

.bls-law-graduate-route__row {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.25rem 0.75rem;
	padding: 0.75rem 0;
	border-bottom: 1px solid rgba(140, 147, 160, 0.3);
}

.bls-law-graduate-route__row--last {
	border-bottom: none;
	padding-bottom: 0;
}

.bls-law-graduate-route__row dt {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	flex: 0 0 auto;
	min-width: 160px;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
}

.bls-law-graduate-route__row dd {
	flex: 1 1 200px;
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-law-graduate-route__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 26px;
	width: 26px;
	height: 26px;
	border-radius: 50%;
	background-color: rgba(255, 255, 255, 0.65);
	color: var(--wp--preset--color--dark-blue);
}

.bls-law-graduate-route__icon svg {
	width: 14px;
	height: 14px;
}

.bls-law-graduate-routes__fee-note {
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	background-color: var(--wp--preset--color--surface);
	border-radius: 8px;
	padding: 0.875rem 1rem;
	margin: 0 0 1.75rem;
}

.bls-law-graduate-routes__action {
	text-align: center;
	margin: 0 0 2rem;
}

.bls-law-graduate-routes__action-button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.75rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-law-graduate-routes__action-button:visited {
	color: var(--wp--preset--color--white);
}

.bls-law-graduate-routes__action-button:hover,
.bls-law-graduate-routes__action-button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

.bls-law-graduate-routes__lpc {
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	background-color: var(--wp--preset--color--surface);
	border-radius: 12px;
	padding: 1.25rem 1.5rem;
}

.bls-law-graduate-routes__lpc-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 32px;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.16);
	color: var(--wp--preset--color--dark-blue);
	margin-top: 0.1rem;
}

.bls-law-graduate-routes__lpc-icon svg {
	width: 17px;
	height: 17px;
}

.bls-law-graduate-routes__lpc-text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

.bls-law-graduate-routes__lpc-link {
	display: inline-flex;
	align-items: center;
	gap: 0.3rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-law-graduate-routes__lpc-link:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-law-graduate-routes__lpc-link:hover,
.bls-law-graduate-routes__lpc-link:focus-visible {
	text-decoration: underline;
}

@media (max-width: 599px) {
	.bls-law-graduate-route {
		padding: 1.5rem;
	}

	.bls-law-graduate-route--primary {
		padding: 1.5rem;
	}

	.bls-law-graduate-routes__side .bls-law-graduate-route {
		padding: 1.5rem;
	}

	.bls-law-graduate-route__row dt {
		min-width: 0;
		flex: 1 1 100%;
	}

	.bls-law-graduate-route__row dd {
		flex: 1 1 100%;
		padding-left: 2.25rem;
	}
}

/* SQE note — deliberately quiet, a bordered strip, not a full pale
   section, so it never competes visually with the graduate routes. */
.bls-law-graduate-sqe {
	padding: 1rem 0 3rem;
}

.bls-law-graduate-sqe__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 12px;
	padding: 1.75rem 2rem;
}

@media (min-width: 600px) {
	.bls-law-graduate-sqe__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-law-graduate-sqe__label {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.625rem;
}

.bls-law-graduate-sqe__heading {
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.25;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.625rem;
}

.bls-law-graduate-sqe__text {
	font-size: 0.9375rem;
	line-height: 1.5;
	color: #4b5563;
	text-align: left;
	max-width: 620px;
	margin: 0 0 1rem;
}

.bls-law-graduate-sqe__action {
	margin: 0;
}

.bls-law-graduate-sqe__action-link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-law-graduate-sqe__action-link:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-law-graduate-sqe__action-link:hover,
.bls-law-graduate-sqe__action-link:focus-visible {
	text-decoration: underline;
}

@media (max-width: 599px) {
	.bls-law-graduate-sqe__inner {
		padding: 1.5rem;
	}
}

/* Why study with Brightlink? — five-item editorial row. */
.bls-law-graduate-support {
	padding: 4.5rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-law-graduate-support {
		padding: 2.75rem 0;
	}
}

.bls-law-graduate-support__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-law-graduate-support__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-law-graduate-support__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-law-graduate-support__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-law-graduate-support__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	max-width: 760px;
	margin: 0 0 2.75rem;
}

.bls-law-graduate-support__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2rem;
}

@media (min-width: 600px) {
	.bls-law-graduate-support__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2rem;
		row-gap: 2.5rem;
	}
}

@media (min-width: 960px) {
	.bls-law-graduate-support__list {
		grid-template-columns: repeat(5, minmax(0, 1fr));
		column-gap: 0;
		row-gap: 0;
	}
}

.bls-law-graduate-support__item {
	margin: 0;
}

@media (max-width: 599px) {
	.bls-law-graduate-support__item:not(:first-child) {
		border-top: 1px solid rgba(140, 147, 160, 0.35);
		padding-top: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-law-graduate-support__item {
		padding: 0 1.5rem;
	}

	.bls-law-graduate-support__item:last-child {
		padding-right: 0;
	}

	.bls-law-graduate-support__item:not(:first-child) {
		border-left: 1px solid rgba(140, 147, 160, 0.35);
	}
}

.bls-law-graduate-support__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	margin: 0 0 1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-law-graduate-support__icon svg {
	width: 20px;
	height: 20px;
}

.bls-law-graduate-support__title {
	display: block;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.4rem;
}

.bls-law-graduate-support__text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* Where could this take your career? — three-item career-outcome row. */
.bls-law-graduate-career {
	background-color: rgba(45, 172, 217, 0.06);
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-law-graduate-career {
		padding: 2.75rem 0;
	}
}

.bls-law-graduate-career__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-law-graduate-career__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-law-graduate-career__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-law-graduate-career__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-law-graduate-career__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	max-width: 760px;
	margin: 0 0 2.75rem;
}

.bls-law-graduate-career__outcomes {
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2rem;
}

@media (min-width: 900px) {
	.bls-law-graduate-career__outcomes {
		grid-template-columns: 1fr auto 1fr auto 1fr;
		align-items: start;
		column-gap: 1.5rem;
		row-gap: 0;
	}
}

.bls-law-graduate-career__outcome {
	margin: 0;
}

.bls-law-graduate-career__outcome-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.16);
	color: var(--wp--preset--color--dark-blue);
}

.bls-law-graduate-career__outcome-icon svg {
	width: 21px;
	height: 21px;
}

.bls-law-graduate-career__outcome-heading {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-law-graduate-career__outcome-text {
	font-size: 1rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

.bls-law-graduate-career__arrow {
	display: none;
	color: var(--wp--preset--color--border);
	font-size: 1.25rem;
	line-height: 1;
}

@media (min-width: 900px) {
	.bls-law-graduate-career__arrow {
		display: flex;
		align-items: center;
		justify-content: center;
		padding-top: 0.5rem;
	}
}

/* CILEX Registration Support signpost — compact, contained panel. */
.bls-law-graduate-registration {
	padding: 4rem 0;
}

@media (max-width: 599px) {
	.bls-law-graduate-registration {
		padding: 2.75rem 0;
	}
}

.bls-law-graduate-registration__inner {
	width: min(calc(100% - 40px), 860px);
	margin-inline: auto;
	background-color: rgba(223, 165, 56, 0.09);
	border-radius: 16px;
	padding: 2.5rem;
	text-align: center;
}

.bls-law-graduate-registration__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: center;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-law-graduate-registration__heading {
	font-size: clamp(1.625rem, 1.4rem + 1vw, 2rem);
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1rem;
}

.bls-law-graduate-registration__text {
	font-size: 1rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: center;
	max-width: 560px;
	margin: 0 auto 0.75rem;
}

.bls-law-graduate-registration__note {
	font-size: 0.875rem;
	line-height: 1.5;
	color: #4b5563;
	text-align: center;
	margin: 0 0 1.5rem;
}

.bls-law-graduate-registration__action {
	margin: 0;
}

.bls-law-graduate-registration__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.75rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-law-graduate-registration__button:visited {
	color: var(--wp--preset--color--white);
}

.bls-law-graduate-registration__button:hover,
.bls-law-graduate-registration__button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

@media (max-width: 599px) {
	.bls-law-graduate-registration__inner {
		padding: 1.75rem;
	}
}

/* Talk to us. — contained, pale, two-part final CTA. */
.bls-law-graduate-cta {
	padding: 4rem 0;
}

@media (max-width: 599px) {
	.bls-law-graduate-cta {
		padding: 2.75rem 0;
	}
}

.bls-law-graduate-cta__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	background-color: rgba(45, 172, 217, 0.08);
	border-radius: 16px;
	padding: 2.5rem;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.75rem;
}

@media (min-width: 600px) {
	.bls-law-graduate-cta__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-law-graduate-cta__inner {
		grid-template-columns: minmax(0, 58fr) auto minmax(0, 34fr);
		align-items: center;
	}
}

.bls-law-graduate-cta__main {
	margin: 0;
}

.bls-law-graduate-cta__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.875rem;
}

.bls-law-graduate-cta__heading {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.125rem);
	font-weight: 700;
	line-height: 1.15;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-law-graduate-cta__lead {
	font-size: 1rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	max-width: 480px;
	margin: 0 0 1.25rem;
}

.bls-law-graduate-cta__action {
	margin: 0;
}

.bls-law-graduate-cta__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-law-graduate-cta__button:visited {
	color: var(--wp--preset--color--white);
}

.bls-law-graduate-cta__button:hover,
.bls-law-graduate-cta__button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

.bls-law-graduate-cta__divider {
	display: none;
}

@media (min-width: 900px) {
	.bls-law-graduate-cta__divider {
		display: block;
		width: 1px;
		align-self: stretch;
		background-color: rgba(47, 85, 151, 0.18);
	}
}

.bls-law-graduate-cta__phone {
	margin: 0;
}

.bls-law-graduate-cta__phone-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	margin: 0 0 0.75rem;
	border-radius: 50%;
	background-color: rgba(255, 255, 255, 0.7);
	color: var(--wp--preset--color--dark-blue);
}

.bls-law-graduate-cta__phone-icon svg {
	width: 19px;
	height: 19px;
}

.bls-law-graduate-cta__phone-label {
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.375rem;
}

.bls-law-graduate-cta__phone-number {
	margin: 0;
}

.bls-law-graduate-cta__phone-number a {
	font-size: 1.375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-law-graduate-cta__phone-number a:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-law-graduate-cta__phone-number a:hover,
.bls-law-graduate-cta__phone-number a:focus-visible {
	text-decoration: underline;
}

/* ==========================================================================
   Legal Services Apprenticeships page — full new build
   (/learners/apprenticeships/). Same architectural techniques already
   approved throughout this theme (deterministic CSS width, fr-based
   grids, no align:"wide", no wp:columns). Every selector below is
   scoped under a bls-apprenticeships-* namespace, entirely independent
   of the New to Legal Study, Already Working in Law and Law Graduate
   selectors, even where the visual language matches by design.
   ========================================================================== */

/* Hero — same technique as the other approved heroes, plus a same-page
   anchor CTA instead of a route CTA. */
.bls-apprenticeships-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 1fr) minmax(340px, 1fr);
	align-items: stretch;
	min-height: 480px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-apprenticeships-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-apprenticeships-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-apprenticeships-hero__heading {
	font-size: clamp(2.5rem, 2.1rem + 1.6vw, 3.125rem);
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	max-width: 520px;
	text-align: left;
	margin: 0 0 0.75rem;
}

/* SEO content round: the previous H1 wording ("A funded route into a
   legal career.") is retained here as a prominent subheading immediately
   beneath the new H1, sized between the heading and the lead so the
   visual hierarchy stays strong. */
.bls-apprenticeships-hero__subheading {
	font-size: clamp(1.25rem, 1.1rem + 0.6vw, 1.5rem);
	line-height: 1.3;
	font-weight: 600;
	color: var(--wp--preset--color--dark-blue);
	max-width: 500px;
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-apprenticeships-hero__lead {
	font-size: 1.125rem;
	line-height: 1.55;
	font-weight: 400;
	color: var(--wp--preset--color--dark-text);
	max-width: 480px;
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-apprenticeships-hero__sublead {
	font-size: 1rem;
	line-height: 1.55;
	color: #4b5563;
	max-width: 480px;
	text-align: left;
	margin: 0 0 1.5rem;
}

.bls-apprenticeships-hero__action {
	margin: 0;
}

.bls-apprenticeships-hero__action-link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-apprenticeships-hero__action-link:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-apprenticeships-hero__action-link:hover,
.bls-apprenticeships-hero__action-link:focus-visible {
	text-decoration: underline;
}

.bls-apprenticeships-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
}

.bls-apprenticeships-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 49% 22%;
	display: block;
}

.bls-apprenticeships-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-apprenticeships-hero {
		display: block;
		min-height: 0;
	}

	.bls-apprenticeships-hero__content {
		padding: 3rem 24px 2.5rem;
	}

	.bls-apprenticeships-hero__heading {
		font-size: clamp(2.125rem, 1.8rem + 1.6vw, 2.5rem);
		max-width: 100%;
	}

	.bls-apprenticeships-hero__lead,
	.bls-apprenticeships-hero__sublead {
		max-width: 100%;
	}

	.bls-apprenticeships-hero__media {
		height: 280px;
	}

	.bls-apprenticeships-hero__media::before {
		display: none;
	}
}

/* Two apprenticeship routes — Level 3 / Level 5 panels. */
.bls-apprenticeships-routes {
	padding: 4.5rem 0;
	scroll-margin-top: 24px;
}

@media (max-width: 599px) {
	.bls-apprenticeships-routes {
		padding: 2.75rem 0;
	}
}

.bls-apprenticeships-routes__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-apprenticeships-routes__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-apprenticeships-routes__intro {
	margin: 0 0 2.5rem;
	max-width: 760px;
}

.bls-apprenticeships-routes__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-apprenticeships-routes__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-apprenticeships-routes__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-apprenticeships-routes__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
	margin: 0 0 1.75rem;
}

@media (min-width: 900px) {
	.bls-apprenticeships-routes__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: stretch;
		gap: 2rem;
	}
}

.bls-apprenticeships-route {
	border-radius: 14px;
	padding: 2rem;
	display: flex;
	flex-direction: column;
}

.bls-apprenticeships-route--blue {
	background-color: rgba(45, 172, 217, 0.07);
}

.bls-apprenticeships-route--gold {
	background-color: rgba(223, 165, 56, 0.09);
}

.bls-apprenticeships-route__title-row {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.625rem;
	margin: 0 0 0.5rem;
}

.bls-apprenticeships-route__heading {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0;
}

.bls-apprenticeships-route__level {
	display: inline-flex;
	align-items: center;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	background-color: rgba(255, 255, 255, 0.65);
	border-radius: 999px;
	padding: 0.2rem 0.625rem;
}

.bls-apprenticeships-route__tagline {
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.5rem;
}

.bls-apprenticeships-route__rows {
	margin: 0;
}

.bls-apprenticeships-route__row {
	padding: 0.75rem 0;
	border-bottom: 1px solid rgba(140, 147, 160, 0.3);
}

.bls-apprenticeships-route__row--last {
	border-bottom: none;
	padding-bottom: 0;
}

.bls-apprenticeships-route__row dt {
	display: block;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.25rem;
}

.bls-apprenticeships-route__row dd {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-apprenticeships-route__action {
	margin-top: auto;
	padding-top: 1.5rem;
}

.bls-apprenticeships-route__action-button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-apprenticeships-route__action-button:visited {
	color: var(--wp--preset--color--white);
}

.bls-apprenticeships-route__action-button:hover,
.bls-apprenticeships-route__action-button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

.bls-apprenticeships-routes__note {
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	background-color: var(--wp--preset--color--surface);
	border-radius: 8px;
	padding: 0.875rem 1rem;
	margin: 0;
}

@media (max-width: 599px) {
	.bls-apprenticeships-route {
		padding: 1.5rem;
	}
}

/* Why choose an apprenticeship? — five-item editorial row. */
.bls-apprenticeships-benefits {
	padding: 4.5rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-apprenticeships-benefits {
		padding: 2.75rem 0;
	}
}

.bls-apprenticeships-benefits__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-apprenticeships-benefits__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-apprenticeships-benefits__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-apprenticeships-benefits__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 2.75rem;
}

.bls-apprenticeships-benefits__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2rem;
}

@media (min-width: 600px) {
	.bls-apprenticeships-benefits__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2rem;
		row-gap: 2.5rem;
	}
}

@media (min-width: 960px) {
	.bls-apprenticeships-benefits__list {
		grid-template-columns: repeat(5, minmax(0, 1fr));
		column-gap: 0;
		row-gap: 0;
	}
}

.bls-apprenticeships-benefits__item {
	margin: 0;
}

@media (max-width: 599px) {
	.bls-apprenticeships-benefits__item:not(:first-child) {
		border-top: 1px solid rgba(140, 147, 160, 0.35);
		padding-top: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-apprenticeships-benefits__item {
		padding: 0 1.5rem;
	}

	.bls-apprenticeships-benefits__item:last-child {
		padding-right: 0;
	}

	.bls-apprenticeships-benefits__item:not(:first-child) {
		border-left: 1px solid rgba(140, 147, 160, 0.35);
	}
}

.bls-apprenticeships-benefits__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	margin: 0 0 1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-apprenticeships-benefits__icon svg {
	width: 20px;
	height: 20px;
}

.bls-apprenticeships-benefits__title {
	display: block;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.4rem;
}

.bls-apprenticeships-benefits__text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* Where could this take your career? — three-item career-outcome row. */
.bls-apprenticeships-career {
	background-color: rgba(45, 172, 217, 0.06);
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-apprenticeships-career {
		padding: 2.75rem 0;
	}
}

.bls-apprenticeships-career__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-apprenticeships-career__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-apprenticeships-career__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-apprenticeships-career__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-apprenticeships-career__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	max-width: 760px;
	margin: 0 0 2.75rem;
}

.bls-apprenticeships-career__outcomes {
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2rem;
}

@media (min-width: 900px) {
	.bls-apprenticeships-career__outcomes {
		grid-template-columns: 1fr auto 1fr auto 1fr;
		align-items: start;
		column-gap: 1.5rem;
		row-gap: 0;
	}
}

.bls-apprenticeships-career__outcome {
	margin: 0;
}

.bls-apprenticeships-career__outcome-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.16);
	color: var(--wp--preset--color--dark-blue);
}

.bls-apprenticeships-career__outcome-icon svg {
	width: 21px;
	height: 21px;
}

.bls-apprenticeships-career__outcome-heading {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-apprenticeships-career__outcome-text {
	font-size: 1rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

.bls-apprenticeships-career__arrow {
	display: none;
	color: var(--wp--preset--color--border);
	font-size: 1.25rem;
	line-height: 1;
}

@media (min-width: 900px) {
	.bls-apprenticeships-career__arrow {
		display: flex;
		align-items: center;
		justify-content: center;
		padding-top: 0.5rem;
	}
}

/* Important to know — employer/eligibility information. */
.bls-apprenticeships-eligibility {
	padding: 4rem 0;
}

@media (max-width: 599px) {
	.bls-apprenticeships-eligibility {
		padding: 2.75rem 0;
	}
}

.bls-apprenticeships-eligibility__inner {
	width: min(calc(100% - 40px), 860px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-apprenticeships-eligibility__inner {
		width: min(calc(100% - 64px), 860px);
	}
}

.bls-apprenticeships-eligibility__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-apprenticeships-eligibility__heading {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.125rem);
	font-weight: 700;
	line-height: 1.2;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.5rem;
}

.bls-apprenticeships-eligibility__list {
	list-style: none;
	margin: 0 0 1.5rem;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.bls-apprenticeships-eligibility__list li {
	position: relative;
	padding-left: 1.5rem;
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-apprenticeships-eligibility__list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.5rem;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background-color: var(--wp--preset--color--dark-blue);
}

.bls-apprenticeships-eligibility__note {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-blue);
	font-weight: 600;
	text-align: left;
	margin: 0;
}

/* Talk to us. — contained, pale, two-part final CTA. */
.bls-apprenticeships-cta {
	padding: 4rem 0;
}

@media (max-width: 599px) {
	.bls-apprenticeships-cta {
		padding: 2.75rem 0;
	}
}

.bls-apprenticeships-cta__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	background-color: rgba(223, 165, 56, 0.09);
	border-radius: 16px;
	padding: 2.5rem;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.75rem;
}

@media (min-width: 600px) {
	.bls-apprenticeships-cta__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-apprenticeships-cta__inner {
		grid-template-columns: minmax(0, 58fr) auto minmax(0, 34fr);
		align-items: center;
	}
}

.bls-apprenticeships-cta__main {
	margin: 0;
}

.bls-apprenticeships-cta__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.875rem;
}

.bls-apprenticeships-cta__heading {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.125rem);
	font-weight: 700;
	line-height: 1.15;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-apprenticeships-cta__lead {
	font-size: 1rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	max-width: 480px;
	margin: 0 0 1.25rem;
}

.bls-apprenticeships-cta__action {
	margin: 0;
}

.bls-apprenticeships-cta__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-apprenticeships-cta__button:visited {
	color: var(--wp--preset--color--white);
}

.bls-apprenticeships-cta__button:hover,
.bls-apprenticeships-cta__button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

.bls-apprenticeships-cta__divider {
	display: none;
}

@media (min-width: 900px) {
	.bls-apprenticeships-cta__divider {
		display: block;
		width: 1px;
		align-self: stretch;
		background-color: rgba(47, 85, 151, 0.18);
	}
}

.bls-apprenticeships-cta__phone {
	margin: 0;
}

.bls-apprenticeships-cta__phone-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	flex: 0 0 40px;
	margin: 0 0 0.75rem;
	border-radius: 50%;
	background-color: rgba(255, 255, 255, 0.7);
	color: var(--wp--preset--color--dark-blue);
}

.bls-apprenticeships-cta__phone-icon svg {
	width: 19px;
	height: 19px;
}

.bls-apprenticeships-cta__phone-label {
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.375rem;
}

.bls-apprenticeships-cta__phone-number {
	margin: 0;
}

.bls-apprenticeships-cta__phone-number a {
	font-size: 1.375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-apprenticeships-cta__phone-number a:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-apprenticeships-cta__phone-number a:hover,
.bls-apprenticeships-cta__phone-number a:focus-visible {
	text-decoration: underline;
}

/* ==========================================================================
   Flexible Learning page — full new build (/learners/flexible-learning/).
   Same architectural techniques already approved throughout this theme
   (deterministic CSS width, fr-based grids, no align:"wide", no
   wp:columns). Every selector below is scoped under a
   bls-flexible-learning-* namespace, entirely independent of the New to
   Legal Study, Already Working in Law, Law Graduate and Legal Services
   Apprenticeships selectors, even where the visual language matches by
   design.
   ========================================================================== */

/* Hero — same technique as the other approved heroes. */
.bls-flexible-learning-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 1fr) minmax(340px, 1fr);
	align-items: stretch;
	min-height: 480px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-flexible-learning-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-flexible-learning-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-flexible-learning-hero__heading {
	font-size: clamp(2.5rem, 2.1rem + 1.6vw, 3.125rem);
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	max-width: 520px;
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-flexible-learning-hero__lead {
	font-size: 1.125rem;
	line-height: 1.55;
	font-weight: 400;
	color: var(--wp--preset--color--dark-text);
	max-width: 480px;
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-flexible-learning-hero__sublead {
	font-size: 1rem;
	line-height: 1.55;
	color: #4b5563;
	max-width: 480px;
	text-align: left;
	margin: 0 0 1.5rem;
}

.bls-flexible-learning-hero__action {
	margin: 0;
}

.bls-flexible-learning-hero__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-flexible-learning-hero__button:visited {
	color: var(--wp--preset--color--white);
}

.bls-flexible-learning-hero__button:hover,
.bls-flexible-learning-hero__button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

.bls-flexible-learning-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
}

.bls-flexible-learning-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 54% 25%;
	display: block;
}

.bls-flexible-learning-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-flexible-learning-hero {
		display: block;
		min-height: 0;
	}

	.bls-flexible-learning-hero__content {
		padding: 3rem 24px 2.5rem;
	}

	.bls-flexible-learning-hero__heading {
		font-size: clamp(2.125rem, 1.8rem + 1.6vw, 2.5rem);
		max-width: 100%;
	}

	.bls-flexible-learning-hero__lead,
	.bls-flexible-learning-hero__sublead {
		max-width: 100%;
	}

	.bls-flexible-learning-hero__media {
		height: 280px;
	}

	.bls-flexible-learning-hero__media::before {
		display: none;
	}
}

/* Key Benefits — five-item editorial row. */
.bls-flexible-learning-benefits {
	padding: 4.5rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-flexible-learning-benefits {
		padding: 2.75rem 0;
	}
}

.bls-flexible-learning-benefits__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-flexible-learning-benefits__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-flexible-learning-benefits__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-flexible-learning-benefits__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 2.75rem;
}

.bls-flexible-learning-benefits__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2rem;
}

@media (min-width: 600px) {
	.bls-flexible-learning-benefits__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2rem;
		row-gap: 2.5rem;
	}
}

@media (min-width: 960px) {
	.bls-flexible-learning-benefits__list {
		grid-template-columns: repeat(5, minmax(0, 1fr));
		column-gap: 0;
		row-gap: 0;
	}
}

.bls-flexible-learning-benefits__item {
	margin: 0;
}

@media (max-width: 599px) {
	.bls-flexible-learning-benefits__item:not(:first-child) {
		border-top: 1px solid rgba(140, 147, 160, 0.35);
		padding-top: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-flexible-learning-benefits__item {
		padding: 0 1.5rem;
	}

	.bls-flexible-learning-benefits__item:last-child {
		padding-right: 0;
	}

	.bls-flexible-learning-benefits__item:not(:first-child) {
		border-left: 1px solid rgba(140, 147, 160, 0.35);
	}
}

.bls-flexible-learning-benefits__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	margin: 0 0 1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-flexible-learning-benefits__icon svg {
	width: 20px;
	height: 20px;
}

.bls-flexible-learning-benefits__title {
	display: block;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.4rem;
}

.bls-flexible-learning-benefits__text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* What You Get — three grouped clusters (Study / Support / Prepare). */
.bls-flexible-learning-features {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-flexible-learning-features {
		padding: 2.75rem 0;
	}
}

.bls-flexible-learning-features__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-flexible-learning-features__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-flexible-learning-features__intro {
	margin: 0 0 2.75rem;
	max-width: 780px;
}

.bls-flexible-learning-features__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-flexible-learning-features__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-flexible-learning-features__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-flexible-learning-features__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
}

@media (min-width: 700px) {
	.bls-flexible-learning-features__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 2rem;
	}
}

.bls-flexible-learning-cluster__heading {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1.25rem;
	padding-bottom: 0.75rem;
	border-bottom: 2px solid rgba(45, 172, 217, 0.3);
}

.bls-flexible-learning-cluster__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
}

.bls-flexible-learning-cluster__item {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	padding-bottom: 1.25rem;
	border-bottom: 1px solid rgba(140, 147, 160, 0.25);
}

.bls-flexible-learning-cluster__item:last-child {
	padding-bottom: 0;
	border-bottom: none;
}

.bls-flexible-learning-cluster__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 32px;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
	margin-top: 0.1rem;
}

.bls-flexible-learning-cluster__icon svg {
	width: 16px;
	height: 16px;
}

.bls-flexible-learning-cluster__text {
	display: block;
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-flexible-learning-cluster__text strong {
	display: block;
	font-size: 1rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.25rem;
}

/* How It Works — vertical numbered steps, text-led. */
.bls-flexible-learning-process {
	padding: 4.5rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-flexible-learning-process {
		padding: 2.75rem 0;
	}
}

.bls-flexible-learning-process__inner {
	width: min(calc(100% - 40px), 800px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-flexible-learning-process__inner {
		width: min(calc(100% - 64px), 800px);
	}
}

.bls-flexible-learning-process__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-flexible-learning-process__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 2.75rem;
}

.bls-flexible-learning-process__steps {
	list-style: none;
	margin: 0;
	padding: 0;
}

.bls-flexible-learning-process__step {
	display: flex;
	gap: 1.25rem;
	position: relative;
	padding-bottom: 2rem;
}

.bls-flexible-learning-process__step--last {
	padding-bottom: 0;
}

.bls-flexible-learning-process__step:not(.bls-flexible-learning-process__step--last)::before {
	content: "";
	position: absolute;
	left: 19px;
	top: 40px;
	bottom: 0;
	width: 2px;
	background-color: rgba(45, 172, 217, 0.3);
}

.bls-flexible-learning-process__step-number {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
	font-size: 1.0625rem;
	font-weight: 700;
	position: relative;
	z-index: 1;
}

.bls-flexible-learning-process__step-content {
	padding-top: 0.4rem;
}

.bls-flexible-learning-process__step-heading {
	display: block;
	font-size: 1.125rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.375rem;
}

.bls-flexible-learning-process__step-text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* Is Flexible Learning Right for You? — Designed for real life. */
.bls-flexible-learning-fit {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-flexible-learning-fit {
		padding: 2.75rem 0;
	}
}

.bls-flexible-learning-fit__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-flexible-learning-fit__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-flexible-learning-fit__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-flexible-learning-fit__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-flexible-learning-fit__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	max-width: 760px;
	margin: 0 0 2.75rem;
}

.bls-flexible-learning-fit__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.25rem;
}

@media (min-width: 600px) {
	.bls-flexible-learning-fit__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 960px) {
	.bls-flexible-learning-fit__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-flexible-learning-fit__item {
	background-color: var(--wp--preset--color--surface);
	border-radius: 12px;
	padding: 1.75rem;
}

.bls-flexible-learning-fit__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	margin: 0 0 1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-flexible-learning-fit__icon svg {
	width: 18px;
	height: 18px;
}

.bls-flexible-learning-fit__title {
	display: block;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.4rem;
}

.bls-flexible-learning-fit__text {
	font-size: 0.9375rem;
	line-height: 1.5;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* When Assessments Approach — restrained visual treatment. */
.bls-flexible-learning-assessment {
	padding: 4rem 0;
	background-color: rgba(223, 165, 56, 0.09);
}

@media (max-width: 599px) {
	.bls-flexible-learning-assessment {
		padding: 2.75rem 0;
	}
}

.bls-flexible-learning-assessment__inner {
	width: min(calc(100% - 40px), 800px);
	margin-inline: auto;
	text-align: center;
}

@media (min-width: 600px) {
	.bls-flexible-learning-assessment__inner {
		width: min(calc(100% - 64px), 800px);
	}
}

.bls-flexible-learning-assessment__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: center;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-flexible-learning-assessment__heading {
	font-size: clamp(1.875rem, 1.6rem + 1.2vw, 2.375rem);
	font-weight: 700;
	line-height: 1.15;
	text-align: center;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1rem;
}

.bls-flexible-learning-assessment__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: center;
	margin: 0 0 1.75rem;
}

.bls-flexible-learning-assessment__list {
	list-style: none;
	margin: 0 0 1.75rem;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.625rem 0.875rem;
}

.bls-flexible-learning-assessment__list li {
	font-size: 0.875rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	background-color: var(--wp--preset--color--white);
	border-radius: 999px;
	padding: 0.5rem 1rem;
}

.bls-flexible-learning-assessment__note {
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: center;
	max-width: 620px;
	margin: 0 auto;
}

/* Ready to Find Out More? — contained, restrained final CTA. */
.bls-flexible-learning-cta {
	padding: 4rem 0;
}

@media (max-width: 599px) {
	.bls-flexible-learning-cta {
		padding: 2.75rem 0;
	}
}

.bls-flexible-learning-cta__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	background-color: rgba(45, 172, 217, 0.08);
	border-radius: 16px;
	padding: 2.5rem;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.75rem;
	align-items: center;
}

@media (min-width: 600px) {
	.bls-flexible-learning-cta__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-flexible-learning-cta__inner {
		grid-template-columns: minmax(0, 66fr) minmax(0, 34fr);
	}
}

.bls-flexible-learning-cta__main {
	margin: 0;
}

.bls-flexible-learning-cta__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.875rem;
}

.bls-flexible-learning-cta__heading {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.125rem);
	font-weight: 700;
	line-height: 1.15;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-flexible-learning-cta__lead {
	font-size: 1rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	max-width: 520px;
	margin: 0;
}

.bls-flexible-learning-cta__actions {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1rem;
}

@media (min-width: 900px) {
	.bls-flexible-learning-cta__actions {
		align-items: flex-end;
	}
}

.bls-flexible-learning-cta__action {
	margin: 0;
}

.bls-flexible-learning-cta__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-flexible-learning-cta__button:visited {
	color: var(--wp--preset--color--white);
}

.bls-flexible-learning-cta__button:hover,
.bls-flexible-learning-cta__button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

.bls-flexible-learning-cta__phone {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin: 0;
	font-size: 1.0625rem;
	font-weight: 700;
}

.bls-flexible-learning-cta__phone-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background-color: rgba(255, 255, 255, 0.7);
	color: var(--wp--preset--color--dark-blue);
}

.bls-flexible-learning-cta__phone-icon svg {
	width: 14px;
	height: 14px;
}

.bls-flexible-learning-cta__phone a {
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-flexible-learning-cta__phone a:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-flexible-learning-cta__phone a:hover,
.bls-flexible-learning-cta__phone a:focus-visible {
	text-decoration: underline;
}

/* ==========================================================================
   Costs & Funding page — full new build (/learners/costs-funding/). Same
   architectural techniques already approved throughout this theme
   (deterministic CSS width, fr-based grids, no align:"wide", no
   wp:columns). Every selector below is scoped under a
   bls-costs-funding-* namespace, entirely independent of the New to
   Legal Study, Already Working in Law, Law Graduate, Legal Services
   Apprenticeships and Flexible Learning selectors, even where the
   visual language matches by design.
   ========================================================================== */

/* Hero — same technique as the other approved heroes. */
.bls-costs-funding-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 1fr) minmax(340px, 1fr);
	align-items: stretch;
	min-height: 480px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-costs-funding-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-costs-funding-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-costs-funding-hero__heading {
	font-size: clamp(2.5rem, 2.1rem + 1.6vw, 3.125rem);
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	max-width: 520px;
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-costs-funding-hero__lead {
	font-size: 1.125rem;
	line-height: 1.55;
	font-weight: 400;
	color: var(--wp--preset--color--dark-text);
	max-width: 480px;
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-costs-funding-hero__sublead {
	font-size: 1rem;
	line-height: 1.55;
	color: #4b5563;
	max-width: 480px;
	text-align: left;
	margin: 0 0 1.5rem;
}

.bls-costs-funding-hero__action {
	margin: 0;
}

.bls-costs-funding-hero__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-costs-funding-hero__button:visited {
	color: var(--wp--preset--color--white);
}

.bls-costs-funding-hero__button:hover,
.bls-costs-funding-hero__button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

.bls-costs-funding-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
}

.bls-costs-funding-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 30%;
	display: block;
}

.bls-costs-funding-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-costs-funding-hero {
		display: block;
		min-height: 0;
	}

	.bls-costs-funding-hero__content {
		padding: 3rem 24px 2.5rem;
	}

	.bls-costs-funding-hero__heading {
		font-size: clamp(2.125rem, 1.8rem + 1.6vw, 2.5rem);
		max-width: 100%;
	}

	.bls-costs-funding-hero__lead,
	.bls-costs-funding-hero__sublead {
		max-width: 100%;
	}

	.bls-costs-funding-hero__media {
		height: 280px;
	}

	.bls-costs-funding-hero__media::before {
		display: none;
	}
}

/* Ways to Pay — four-item editorial row. */
.bls-costs-funding-payment-options {
	padding: 4.5rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-costs-funding-payment-options {
		padding: 2.75rem 0;
	}
}

.bls-costs-funding-payment-options__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-costs-funding-payment-options__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-costs-funding-payment-options__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-costs-funding-payment-options__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 2.75rem;
}

.bls-costs-funding-payment-options__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2rem;
}

@media (min-width: 600px) {
	.bls-costs-funding-payment-options__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2rem;
		row-gap: 2.5rem;
	}
}

@media (min-width: 960px) {
	.bls-costs-funding-payment-options__list {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		column-gap: 0;
		row-gap: 0;
	}
}

.bls-costs-funding-payment-options__item {
	margin: 0;
}

@media (max-width: 599px) {
	.bls-costs-funding-payment-options__item:not(:first-child) {
		border-top: 1px solid rgba(140, 147, 160, 0.35);
		padding-top: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-costs-funding-payment-options__item {
		padding: 0 1.5rem;
	}

	.bls-costs-funding-payment-options__item:last-child {
		padding-right: 0;
	}

	.bls-costs-funding-payment-options__item:not(:first-child) {
		border-left: 1px solid rgba(140, 147, 160, 0.35);
	}
}

.bls-costs-funding-payment-options__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	margin: 0 0 1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-costs-funding-payment-options__icon svg {
	width: 20px;
	height: 20px;
}

.bls-costs-funding-payment-options__title {
	display: block;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.4rem;
}

.bls-costs-funding-payment-options__text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* Current Brightlink Tuition — real HTML table (CPQ) + CGQ panel. */
.bls-costs-funding-fees {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-costs-funding-fees {
		padding: 2.75rem 0;
	}
}

.bls-costs-funding-fees__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-costs-funding-fees__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-costs-funding-fees__intro {
	margin: 0 0 2.5rem;
	max-width: 780px;
}

.bls-costs-funding-fees__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-costs-funding-fees__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-costs-funding-fees__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-costs-funding-fees__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 960px) {
	.bls-costs-funding-fees__grid {
		grid-template-columns: minmax(0, 64fr) minmax(0, 36fr);
		align-items: start;
		gap: 2rem;
	}
}

.bls-costs-funding-fees__table-heading {
	font-size: 1.375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-costs-funding-fees__vat {
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.25rem;
}

.bls-costs-funding-fees__table-scroll {
	overflow-x: auto;
	border-radius: 12px;
	border: 1px solid rgba(140, 147, 160, 0.3);
}

.bls-costs-funding-fees__table {
	width: 100%;
	min-width: 480px;
	border-collapse: collapse;
	font-size: 0.9375rem;
}

.bls-costs-funding-fees__table thead th {
	background-color: rgba(45, 172, 217, 0.1);
	color: var(--wp--preset--color--dark-blue);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	text-align: left;
	padding: 0.875rem 1rem;
}

.bls-costs-funding-fees__table tbody th,
.bls-costs-funding-fees__table tbody td {
	padding: 0.875rem 1rem;
	border-top: 1px solid rgba(140, 147, 160, 0.25);
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	font-weight: 400;
}

.bls-costs-funding-fees__table tbody th {
	font-weight: 700;
}

.bls-costs-funding-fees__table tbody td:last-child {
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
}

.bls-costs-funding-fees__cgq {
	background-color: rgba(45, 172, 217, 0.07);
	border-radius: 14px;
	padding: 1.75rem;
}

.bls-costs-funding-fees__cgq-heading {
	font-size: 1.1875rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 0.625rem;
}

.bls-costs-funding-fees__cgq-text {
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-costs-funding-fees__cgq-list {
	list-style: none;
	margin: 0 0 1.25rem;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.bls-costs-funding-fees__cgq-list li {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	gap: 0.75rem;
	padding-bottom: 0.75rem;
	border-bottom: 1px solid rgba(140, 147, 160, 0.25);
	font-size: 0.9375rem;
}

.bls-costs-funding-fees__cgq-list li:last-child {
	border-bottom: none;
	padding-bottom: 0;
}

.bls-costs-funding-fees__cgq-name {
	color: var(--wp--preset--color--dark-text);
}

.bls-costs-funding-fees__cgq-price {
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	white-space: nowrap;
}

.bls-costs-funding-fees__cgq-specialisms {
	font-size: 0.8125rem;
	line-height: 1.5;
	color: #4b5563;
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-costs-funding-fees__cgq-link {
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

.bls-costs-funding-fees__cgq-link a {
	color: var(--wp--preset--color--dark-blue);
	font-weight: 700;
	text-decoration: none;
}

.bls-costs-funding-fees__cgq-link a:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-costs-funding-fees__cgq-link a:hover,
.bls-costs-funding-fees__cgq-link a:focus-visible {
	text-decoration: underline;
}

/* Funded Routes — Welsh Legal Services Apprenticeships (pale Gold panel). */
.bls-costs-funding-apprenticeships {
	padding: 4rem 0;
}

@media (max-width: 599px) {
	.bls-costs-funding-apprenticeships {
		padding: 2.75rem 0;
	}
}

.bls-costs-funding-apprenticeships__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-costs-funding-apprenticeships__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-costs-funding-apprenticeships__content {
	background-color: rgba(223, 165, 56, 0.1);
	border-radius: 16px;
	padding: 2.5rem;
	max-width: 760px;
}

.bls-costs-funding-apprenticeships__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-costs-funding-apprenticeships__heading {
	font-size: clamp(1.875rem, 1.6rem + 1.2vw, 2.375rem);
	font-weight: 700;
	line-height: 1.15;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1rem;
}

.bls-costs-funding-apprenticeships__text {
	font-size: 1rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.875rem;
}

.bls-costs-funding-apprenticeships__note {
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.5rem;
}

.bls-costs-funding-apprenticeships__action {
	margin: 0;
}

.bls-costs-funding-apprenticeships__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-costs-funding-apprenticeships__button:visited {
	color: var(--wp--preset--color--white);
}

.bls-costs-funding-apprenticeships__button:hover,
.bls-costs-funding-apprenticeships__button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

@media (max-width: 599px) {
	.bls-costs-funding-apprenticeships__content {
		padding: 1.75rem;
	}
}

/* Additional Costs / About Fees — two-column info strip. */
.bls-costs-funding-additional-costs {
	padding: 4rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-costs-funding-additional-costs {
		padding: 2.75rem 0;
	}
}

.bls-costs-funding-additional-costs__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 600px) {
	.bls-costs-funding-additional-costs__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-costs-funding-additional-costs__inner {
		grid-template-columns: 1fr auto 1fr;
		align-items: start;
		gap: 2.5rem;
	}
}

.bls-costs-funding-additional-costs__col {
	margin: 0;
}

.bls-costs-funding-additional-costs__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	margin: 0 0 1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-costs-funding-additional-costs__icon svg {
	width: 20px;
	height: 20px;
}

.bls-costs-funding-additional-costs__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.5rem;
}

.bls-costs-funding-additional-costs__heading {
	font-size: 1.125rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.625rem;
}

.bls-costs-funding-additional-costs__text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-costs-funding-additional-costs__divider {
	display: none;
}

@media (min-width: 900px) {
	.bls-costs-funding-additional-costs__divider {
		display: block;
		width: 1px;
		align-self: stretch;
		background-color: rgba(140, 147, 160, 0.3);
	}
}

/* Need Help with Costs or Funding? — contained, restrained final CTA. */
.bls-costs-funding-cta {
	padding: 4rem 0;
}

@media (max-width: 599px) {
	.bls-costs-funding-cta {
		padding: 2.75rem 0;
	}
}

.bls-costs-funding-cta__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	background-color: rgba(45, 172, 217, 0.08);
	border-radius: 16px;
	padding: 2.5rem;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.75rem;
	align-items: center;
}

@media (min-width: 600px) {
	.bls-costs-funding-cta__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-costs-funding-cta__inner {
		grid-template-columns: minmax(0, 66fr) minmax(0, 34fr);
	}
}

.bls-costs-funding-cta__main {
	margin: 0;
}

.bls-costs-funding-cta__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.875rem;
}

.bls-costs-funding-cta__heading {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.125rem);
	font-weight: 700;
	line-height: 1.15;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-costs-funding-cta__lead {
	font-size: 1rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	max-width: 520px;
	margin: 0;
}

.bls-costs-funding-cta__actions {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1rem;
}

@media (min-width: 900px) {
	.bls-costs-funding-cta__actions {
		align-items: flex-end;
	}
}

.bls-costs-funding-cta__action {
	margin: 0;
}

.bls-costs-funding-cta__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-costs-funding-cta__button:visited {
	color: var(--wp--preset--color--white);
}

.bls-costs-funding-cta__button:hover,
.bls-costs-funding-cta__button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

.bls-costs-funding-cta__phone {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin: 0;
	font-size: 1.0625rem;
	font-weight: 700;
}

.bls-costs-funding-cta__phone-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background-color: rgba(255, 255, 255, 0.7);
	color: var(--wp--preset--color--dark-blue);
}

.bls-costs-funding-cta__phone-icon svg {
	width: 14px;
	height: 14px;
}

.bls-costs-funding-cta__phone a {
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-costs-funding-cta__phone a:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-costs-funding-cta__phone a:hover,
.bls-costs-funding-cta__phone a:focus-visible {
	text-decoration: underline;
}

/* ==========================================================================
   CILEX fee disclosure note — a single reusable component (Section 3 of
   the site-wide CILEX fee disclosure audit) used wherever a NEW disclosure
   element is inserted (Costs & Funding, New to Legal Study), reusing the
   exact pale Bright Blue circular icon treatment and info-glyph already
   established on the Costs & Funding "About fees" heading. Pages that
   already carried an established pale-box fee note (Already Working in
   Law, Law Graduate, Train Your Team) had their existing note's vague
   "Separate CILEX fees may apply" clause replaced with the new exact
   wording in place, reusing their own existing note class, so this shared
   component was not needed there. Deliberately restrained per the brief's
   design instructions: pale neutral background, dark accessible text,
   moderate padding, subtle radius, no warning/alarm styling.
   ========================================================================== */
.bls-cilex-fee-note {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	background-color: var(--wp--preset--color--surface);
	border-radius: 8px;
	padding: 0.875rem 1rem;
	margin: 1.25rem 0 0;
}

.bls-cilex-fee-note__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 24px;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
	margin-top: 0.05rem;
}

.bls-cilex-fee-note__icon svg {
	width: 13px;
	height: 13px;
}

.bls-cilex-fee-note__text {
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* Small secondary callout pointing to the future detailed CILEX course-
   fees breakdown page (patterns/costs-funding-fees.php only). Restrained
   pale-blue information-panel treatment, reusing the same tint already
   established for the Talk to Us contact panel and the Start a
   Conversation context panel, deliberately smaller and quieter than
   either: one line of text, no icon, no button. Entirely independent
   selectors, scoped to this one pattern. */
.bls-costs-funding-fees__callout {
	background-color: rgba(45, 172, 217, 0.07);
	border: 1px solid rgba(45, 172, 217, 0.28);
	border-radius: 10px;
	padding: 0.875rem 1.125rem;
	margin: 0.875rem 0 0;
}

.bls-costs-funding-fees__callout-text {
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

.bls-costs-funding-fees__callout-text a {
	color: var(--wp--preset--color--dark-blue);
	font-weight: 700;
	text-decoration: underline;
}

.bls-costs-funding-fees__callout-text a:hover,
.bls-costs-funding-fees__callout-text a:focus-visible {
	color: var(--wp--preset--color--bright-blue);
}

/* ==========================================================================
   Train Your Team page — full new build (/employers/train-your-team/).
   Same architectural techniques already approved throughout this theme
   (deterministic CSS width, fr-based grids, no align:"wide", no
   wp:columns). Every selector below is scoped under a bls-train-team-*
   namespace, entirely independent of the Employer landing, Apprenticeships,
   New to Legal Study and Costs & Funding selectors, even where the visual
   language matches by design.
   ========================================================================== */

/* Hero — same technique as the other approved heroes, plus a same-page
   anchor CTA instead of a route CTA. */
.bls-train-team-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 1fr) minmax(340px, 1fr);
	align-items: stretch;
	min-height: 520px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-train-team-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-train-team-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-train-team-hero__heading {
	font-size: clamp(2.625rem, 2.2rem + 1.7vw, 3.375rem);
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	max-width: 540px;
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-train-team-hero__lead {
	font-size: 1.125rem;
	line-height: 1.55;
	font-weight: 400;
	color: var(--wp--preset--color--dark-text);
	max-width: 500px;
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-train-team-hero__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.5rem;
	margin-top: 1.75rem;
}

.bls-train-team-hero__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem !important;
	font-weight: 700;
}

.bls-train-team-hero__secondary {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-train-team-hero__secondary:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-train-team-hero__secondary:hover,
.bls-train-team-hero__secondary:focus-visible {
	text-decoration: underline;
}

.bls-train-team-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
}

.bls-train-team-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 30%;
	display: block;
}

.bls-train-team-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-train-team-hero {
		display: block;
		min-height: 0;
	}

	.bls-train-team-hero__content {
		padding: 3rem 24px 2.5rem;
	}

	.bls-train-team-hero__heading {
		font-size: clamp(2.125rem, 1.8rem + 1.6vw, 2.5rem);
		max-width: 100%;
	}

	.bls-train-team-hero__lead {
		max-width: 100%;
	}

	.bls-train-team-hero__media {
		height: 280px;
	}

	.bls-train-team-hero__media::before {
		display: none;
	}
}

/* Benefit strip — four open editorial columns, reusing the exact technique
   already approved for the Legal Services Apprenticeships "Why choose an
   apprenticeship?" section (five columns there, four here). */
.bls-train-team-benefits {
	padding: 4.5rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-train-team-benefits {
		padding: 2.75rem 0;
	}
}

.bls-train-team-benefits__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-train-team-benefits__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-train-team-benefits__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2rem;
}

@media (min-width: 600px) {
	.bls-train-team-benefits__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2rem;
		row-gap: 2.5rem;
	}
}

@media (min-width: 960px) {
	.bls-train-team-benefits__list {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		column-gap: 0;
		row-gap: 0;
	}
}

.bls-train-team-benefits__item {
	margin: 0;
}

@media (max-width: 599px) {
	.bls-train-team-benefits__item:not(:first-child) {
		border-top: 1px solid rgba(140, 147, 160, 0.35);
		padding-top: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-train-team-benefits__item {
		padding: 0 1.75rem;
	}

	.bls-train-team-benefits__item:first-child {
		padding-left: 0;
	}

	.bls-train-team-benefits__item:last-child {
		padding-right: 0;
	}

	.bls-train-team-benefits__item:not(:first-child) {
		border-left: 1px solid rgba(140, 147, 160, 0.35);
	}
}

.bls-train-team-benefits__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	margin: 0 0 1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-train-team-benefits__icon svg {
	width: 20px;
	height: 20px;
}

.bls-train-team-benefits__title {
	display: block;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.4rem;
}

.bls-train-team-benefits__text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* Training options — three cards, reusing the exact technique already
   approved for the Employer landing page's "Train Your Team / Recruit
   Legal Talent / Retain Your People" cards. */
.bls-train-team-options {
	padding: 4.75rem 0;
	scroll-margin-top: 24px;
}

@media (max-width: 599px) {
	.bls-train-team-options {
		padding: 2.75rem 0;
	}
}

.bls-train-team-options__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-train-team-options__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-train-team-options__intro {
	margin: 0 0 2.75rem;
	max-width: 720px;
}

.bls-train-team-options__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-train-team-options__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-train-team-options__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-train-team-options__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-train-team-options__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 900px) {
	.bls-train-team-options__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bls-train-team-option {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.25rem 1.875rem;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.bls-train-team-option:hover,
.bls-train-team-option:focus-within {
	box-shadow: 0 10px 24px rgba(17, 24, 39, 0.09);
	transform: translateY(-2px);
}

.bls-train-team-option__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.75rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-train-team-option__icon svg {
	width: 21px;
	height: 21px;
}

.bls-train-team-option__heading {
	font-size: 1.3125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-train-team-option__body {
	font-size: 1rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	flex-grow: 1;
	margin: 0;
}

.bls-train-team-option__cta {
	margin-top: 0.625rem;
}

.bls-train-team-option__link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
	white-space: nowrap;
}

.bls-train-team-option__link:hover,
.bls-train-team-option__link:focus-visible {
	color: var(--wp--preset--color--purple);
	text-decoration: underline;
}

@media (max-width: 599px) {
	.bls-train-team-option {
		padding: 1.5rem;
	}

	.bls-train-team-option__link {
		white-space: normal;
	}
}

/* CPQ for employers — three compact stage panels, an employer-support
   checklist and a CPQ-specific CTA. Carries the #cpq-for-employers
   anchor target. */
.bls-train-team-cpq {
	padding: 4.5rem 0;
	background-color: var(--wp--preset--color--surface);
	scroll-margin-top: 24px;
}

@media (max-width: 599px) {
	.bls-train-team-cpq {
		padding: 2.75rem 0;
	}
}

.bls-train-team-cpq__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-train-team-cpq__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-train-team-cpq__intro {
	margin: 0 0 2.5rem;
	max-width: 760px;
}

.bls-train-team-cpq__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-train-team-cpq__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-train-team-cpq__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.75rem;
	margin: 0 0 1.5rem;
}

@media (min-width: 700px) {
	.bls-train-team-cpq__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1100px) {
	.bls-train-team-cpq__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bls-train-team-cpq-stage {
	background-color: var(--wp--preset--color--white);
	border-radius: 14px;
	padding: 1.75rem;
	display: flex;
	flex-direction: column;
}

.bls-train-team-cpq-stage__title-row {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.625rem;
	margin: 0 0 1rem;
}

.bls-train-team-cpq-stage__heading {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0;
}

.bls-train-team-cpq-stage__level {
	display: inline-flex;
	align-items: center;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	background-color: rgba(45, 172, 217, 0.14);
	border-radius: 999px;
	padding: 0.2rem 0.625rem;
}

.bls-train-team-cpq-stage__rows {
	margin: 0;
}

.bls-train-team-cpq-stage__row {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	padding: 0.75rem 0;
	border-bottom: 1px solid rgba(140, 147, 160, 0.3);
}

.bls-train-team-cpq-stage__row--last {
	border-bottom: none;
	padding-bottom: 0;
}

.bls-train-team-cpq-stage__row dt {
	display: flex;
	align-items: center;
	gap: 0.625rem;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.375rem;
}

.bls-train-team-cpq-stage__row dd {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-train-team-cpq-stage__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	flex: 0 0 26px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-train-team-cpq-stage__icon svg {
	width: 14px;
	height: 14px;
}

.bls-train-team-cpq__fee-note {
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	background-color: var(--wp--preset--color--white);
	border-radius: 8px;
	padding: 0.875rem 1rem;
	margin: 0 0 2.5rem;
}

.bls-train-team-cpq__support {
	background-color: var(--wp--preset--color--white);
	border-radius: 14px;
	padding: 2rem;
}

.bls-train-team-cpq__support-heading {
	font-size: 1.0625rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-train-team-cpq__support-list {
	list-style: none;
	margin: 0 0 1.5rem;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	column-gap: 2rem;
	row-gap: 0;
}

@media (min-width: 700px) {
	.bls-train-team-cpq__support-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.bls-train-team-cpq__support-list li {
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	padding: 0.75rem 0;
	border-bottom: 1px solid rgba(140, 147, 160, 0.3);
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-train-team-cpq__support-list li:last-child {
	border-bottom: none;
}

@media (min-width: 700px) {
	.bls-train-team-cpq__support-list li:nth-last-child(2) {
		border-bottom: none;
	}
}

.bls-train-team-cpq__support-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	flex: 0 0 26px;
	margin-top: 0.1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-train-team-cpq__support-icon svg {
	width: 13px;
	height: 13px;
}

.bls-train-team-cpq__support-cta {
	margin: 0;
}

.bls-train-team-cpq__support-button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-train-team-cpq__support-button:visited {
	color: var(--wp--preset--color--white);
}

.bls-train-team-cpq__support-button:hover,
.bls-train-team-cpq__support-button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

@media (max-width: 599px) {
	.bls-train-team-cpq-stage {
		padding: 1.5rem;
	}

	.bls-train-team-cpq__support {
		padding: 1.5rem;
	}
}

/* Welsh Legal Services Apprenticeships (employer view) — eligibility
   conditions, two compact level panels, employer-role notes and a dual
   CTA. Carries the #welsh-apprenticeships anchor target. */
.bls-train-team-apprenticeships {
	padding: 4.5rem 0;
	scroll-margin-top: 24px;
}

@media (max-width: 599px) {
	.bls-train-team-apprenticeships {
		padding: 2.75rem 0;
	}
}

.bls-train-team-apprenticeships__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-train-team-apprenticeships__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-train-team-apprenticeships__intro {
	margin: 0 0 2rem;
	max-width: 760px;
}

.bls-train-team-apprenticeships__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-train-team-apprenticeships__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-train-team-apprenticeships__eligibility {
	background-color: var(--wp--preset--color--surface);
	border-radius: 14px;
	padding: 1.75rem 2rem;
	margin: 0 0 2.5rem;
}

.bls-train-team-apprenticeships__eligibility-label {
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.875rem;
}

.bls-train-team-apprenticeships__eligibility-list {
	margin: 0 0 1rem;
	padding-left: 1.25rem;
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 0.5rem;
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

@media (min-width: 700px) {
	.bls-train-team-apprenticeships__eligibility-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2rem;
	}
}

.bls-train-team-apprenticeships__eligibility-note {
	font-size: 0.875rem;
	line-height: 1.5;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-train-team-apprenticeships__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.75rem;
	margin: 0 0 2rem;
}

@media (min-width: 900px) {
	.bls-train-team-apprenticeships__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: stretch;
	}
}

.bls-train-team-apprenticeship-level {
	border-radius: 14px;
	padding: 1.75rem;
	display: flex;
	flex-direction: column;
	background-color: rgba(45, 172, 217, 0.07);
}

.bls-train-team-apprenticeship-level__title-row {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.625rem;
	margin: 0 0 0.5rem;
}

.bls-train-team-apprenticeship-level__heading {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0;
}

.bls-train-team-apprenticeship-level__badge {
	display: inline-flex;
	align-items: center;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	background-color: rgba(255, 255, 255, 0.65);
	border-radius: 999px;
	padding: 0.2rem 0.625rem;
}

.bls-train-team-apprenticeship-level__tagline {
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-train-team-apprenticeship-level__rows {
	margin: 0;
}

.bls-train-team-apprenticeship-level__row {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	padding: 0.75rem 0;
	border-bottom: 1px solid rgba(140, 147, 160, 0.3);
}

.bls-train-team-apprenticeship-level__row--last {
	border-bottom: none;
	padding-bottom: 0;
}

.bls-train-team-apprenticeship-level__row dt {
	display: flex;
	align-items: center;
	gap: 0.625rem;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.375rem;
}

.bls-train-team-apprenticeship-level__row dd {
	margin: 0;
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

/* Compact checklist nested inside the "Employer responsibility" <dd>,
   beneath the existing exam-resits sentence. Deliberately smaller and
   tighter than the card's main dt/dd rows (smaller icon, smaller
   font, no dividers) so it reads as visually subordinate to the
   "Employer responsibility" label rather than four more full-weight
   rows. Reuses the exact pale Bright Blue checkmark-circle icon
   already established site-wide for "confirmed item" concepts. */
.bls-train-team-apprenticeship-level__responsibility-list {
	list-style: none;
	margin: 0.625rem 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
}

.bls-train-team-apprenticeship-level__responsibility-list li {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
	font-size: 0.875rem;
	line-height: 1.45;
	color: var(--wp--preset--color--dark-text);
}

.bls-train-team-apprenticeship-level__responsibility-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 18px;
	height: 18px;
	flex: 0 0 18px;
	margin-top: 0.1rem;
	border-radius: 50%;
	background-color: rgba(255, 255, 255, 0.65);
	color: var(--wp--preset--color--dark-blue);
}

.bls-train-team-apprenticeship-level__responsibility-icon svg {
	width: 10px;
	height: 10px;
}

.bls-train-team-apprenticeship-level__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	flex: 0 0 26px;
	border-radius: 50%;
	background-color: rgba(255, 255, 255, 0.65);
	color: var(--wp--preset--color--dark-blue);
}

.bls-train-team-apprenticeship-level__icon svg {
	width: 14px;
	height: 14px;
}

.bls-train-team-apprenticeships__employer-role {
	background-color: var(--wp--preset--color--surface);
	border-radius: 14px;
	padding: 1.75rem 2rem;
	margin: 0 0 2rem;
}

.bls-train-team-apprenticeships__employer-role-heading {
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.875rem;
}

.bls-train-team-apprenticeships__employer-role-list {
	margin: 0;
	padding-left: 1.25rem;
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 0.5rem;
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

@media (min-width: 700px) {
	.bls-train-team-apprenticeships__employer-role-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2rem;
	}
}

.bls-train-team-apprenticeships__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.5rem;
}

.bls-train-team-apprenticeships__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-train-team-apprenticeships__button:visited {
	color: var(--wp--preset--color--white);
}

.bls-train-team-apprenticeships__button:hover,
.bls-train-team-apprenticeships__button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

.bls-train-team-apprenticeships__link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-train-team-apprenticeships__link:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-train-team-apprenticeships__link:hover,
.bls-train-team-apprenticeships__link:focus-visible {
	text-decoration: underline;
}

@media (max-width: 599px) {
	.bls-train-team-apprenticeships__eligibility,
	.bls-train-team-apprenticeships__employer-role {
		padding: 1.5rem;
	}

	.bls-train-team-apprenticeship-level {
		padding: 1.5rem;
	}
}

/* Tailored and group learning — left editorial intro/CTA beside a compact
   checklist, reusing the exact checkmark-circle icon already approved on
   the Employer landing page's own support list. */
.bls-train-team-tailored {
	padding: 4.5rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-train-team-tailored {
		padding: 2.75rem 0;
	}
}

.bls-train-team-tailored__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 600px) {
	.bls-train-team-tailored__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 960px) {
	.bls-train-team-tailored__inner {
		grid-template-columns: minmax(280px, 42fr) minmax(0, 58fr);
		column-gap: 4rem;
		align-items: start;
	}
}

.bls-train-team-tailored__intro {
	margin: 0;
}

.bls-train-team-tailored__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1rem;
}

.bls-train-team-tailored__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	max-width: 420px;
	margin: 0 0 1rem;
}

.bls-train-team-tailored__caution {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	max-width: 420px;
	margin: 0 0 1.5rem;
}

.bls-train-team-tailored__cta {
	margin: 0;
}

.bls-train-team-tailored__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-train-team-tailored__button:visited {
	color: var(--wp--preset--color--white);
}

.bls-train-team-tailored__button:hover,
.bls-train-team-tailored__button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

.bls-train-team-tailored__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	column-gap: 2rem;
	row-gap: 0;
}

@media (min-width: 600px) {
	.bls-train-team-tailored__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.bls-train-team-tailored__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	padding: 0.875rem 0;
	border-bottom: 1px solid rgba(140, 147, 160, 0.35);
	font-size: 1rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-train-team-tailored__list li:last-child {
	border-bottom: none;
}

@media (min-width: 600px) {
	.bls-train-team-tailored__list li:nth-last-child(2) {
		border-bottom: none;
	}
}

.bls-train-team-tailored__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	flex: 0 0 28px;
	margin-top: 0.1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-train-team-tailored__icon svg {
	width: 14px;
	height: 14px;
}

.bls-train-team-tailored__text {
	flex: 1 1 auto;
	min-width: 0;
}

/* Employer support ("More than a course provider") — 2x2 icon-card grid,
   reusing the exact card technique already approved for Employer
   Benefits. */
.bls-train-team-support {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-train-team-support {
		padding: 2.75rem 0;
	}
}

.bls-train-team-support__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-train-team-support__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-train-team-support__intro {
	margin: 0 0 2.75rem;
	max-width: 720px;
}

.bls-train-team-support__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-train-team-support__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-train-team-support__grid {
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2.5rem;
}

@media (min-width: 600px) {
	.bls-train-team-support__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2.5rem;
	}
}

.bls-train-team-support-item {
	margin: 0;
}

.bls-train-team-support-item__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.875rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-train-team-support-item__icon svg {
	width: 21px;
	height: 21px;
}

.bls-train-team-support-item__heading {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-train-team-support-item__body {
	font-size: 1rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* Organisational outcomes — pale Bright Blue tinted panel, four icon
   items in a row. */
.bls-train-team-outcomes {
	background-color: rgba(45, 172, 217, 0.06);
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-train-team-outcomes {
		padding: 2.75rem 0;
	}
}

.bls-train-team-outcomes__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-train-team-outcomes__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-train-team-outcomes__intro {
	margin: 0 0 2.75rem;
	max-width: 720px;
}

.bls-train-team-outcomes__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-train-team-outcomes__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-train-team-outcomes__grid {
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2rem;
}

@media (min-width: 600px) {
	.bls-train-team-outcomes__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2rem;
		row-gap: 2.5rem;
	}
}

@media (min-width: 960px) {
	.bls-train-team-outcomes__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		column-gap: 0;
		row-gap: 0;
	}
}

.bls-train-team-outcome {
	margin: 0;
}

@media (max-width: 599px) {
	.bls-train-team-outcome:not(:first-child) {
		border-top: 1px solid rgba(140, 147, 160, 0.35);
		padding-top: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-train-team-outcome {
		padding: 0 1.75rem;
	}

	.bls-train-team-outcome:first-child {
		padding-left: 0;
	}

	.bls-train-team-outcome:last-child {
		padding-right: 0;
	}

	.bls-train-team-outcome:not(:first-child) {
		border-left: 1px solid rgba(140, 147, 160, 0.35);
	}
}

.bls-train-team-outcome__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	margin: 0 0 0.875rem;
	border-radius: 50%;
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--dark-blue);
}

.bls-train-team-outcome__icon svg {
	width: 20px;
	height: 20px;
}

.bls-train-team-outcome__heading {
	font-size: 1.1875rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-train-team-outcome__body {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* SQE note — visually restrained bordered strip, same technique already
   approved on the Law Graduate page. */
.bls-train-team-sqe {
	padding: 1rem 0 3rem;
}

.bls-train-team-sqe__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 12px;
	padding: 1.75rem 2rem;
}

@media (min-width: 600px) {
	.bls-train-team-sqe__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-train-team-sqe__label {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.625rem;
}

.bls-train-team-sqe__heading {
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.25;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.625rem;
}

.bls-train-team-sqe__text {
	font-size: 0.9375rem;
	line-height: 1.5;
	color: #4b5563;
	text-align: left;
	max-width: 620px;
	margin: 0 0 1rem;
}

.bls-train-team-sqe__action {
	margin: 0;
}

.bls-train-team-sqe__action-link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-train-team-sqe__action-link:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-train-team-sqe__action-link:hover,
.bls-train-team-sqe__action-link:focus-visible {
	text-decoration: underline;
}

@media (max-width: 599px) {
	.bls-train-team-sqe__inner {
		padding: 1.5rem;
	}
}

/* Final CTA — same restrained closing-CTA concept already used on New to
   Legal Study, Already Working in Law, Law Graduate, Legal Services
   Apprenticeships, Flexible Learning and Costs & Funding. */
.bls-train-team-cta {
	padding: 4rem 0;
}

@media (max-width: 599px) {
	.bls-train-team-cta {
		padding: 2.75rem 0;
	}
}

.bls-train-team-cta__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	background-color: rgba(45, 172, 217, 0.08);
	border-radius: 16px;
	padding: 2.5rem;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.75rem;
	align-items: center;
}

@media (min-width: 600px) {
	.bls-train-team-cta__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-train-team-cta__inner {
		grid-template-columns: minmax(0, 66fr) minmax(0, 34fr);
	}
}

.bls-train-team-cta__main {
	margin: 0;
}

.bls-train-team-cta__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.875rem;
}

.bls-train-team-cta__heading {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.125rem);
	font-weight: 700;
	line-height: 1.15;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-train-team-cta__lead {
	font-size: 1rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	max-width: 520px;
	margin: 0;
}

.bls-train-team-cta__actions {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1rem;
}

@media (min-width: 900px) {
	.bls-train-team-cta__actions {
		align-items: flex-end;
	}
}

.bls-train-team-cta__action {
	margin: 0;
}

.bls-train-team-cta__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-train-team-cta__button:visited {
	color: var(--wp--preset--color--white);
}

.bls-train-team-cta__button:hover,
.bls-train-team-cta__button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

.bls-train-team-cta__phone {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin: 0;
	font-size: 1.0625rem;
	font-weight: 700;
}

.bls-train-team-cta__phone-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background-color: rgba(255, 255, 255, 0.7);
	color: var(--wp--preset--color--dark-blue);
}

.bls-train-team-cta__phone-icon svg {
	width: 14px;
	height: 14px;
}

.bls-train-team-cta__phone a {
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-train-team-cta__phone a:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-train-team-cta__phone a:hover,
.bls-train-team-cta__phone a:focus-visible {
	text-decoration: underline;
}

/* ==========================================================================
   Recruit Legal Talent page — full new build (/employers/recruit-legal-talent/).
   Same architectural techniques already approved throughout this theme
   (deterministic CSS width, fr-based grids, no align:"wide", no
   wp:columns). Every selector below is scoped under a
   bls-recruit-talent-* namespace, entirely independent of the Employer
   landing, Train Your Team, Costs & Funding and Flexible Learning
   selectors, even where the visual language matches by design.
   ========================================================================== */

/* Hero — same technique as the Employer landing hero (50/50 grid split). */
.bls-recruit-talent-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 1fr) minmax(340px, 1fr);
	align-items: stretch;
	min-height: 520px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-recruit-talent-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-recruit-talent-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-recruit-talent-hero__heading {
	font-size: clamp(2.625rem, 2.2rem + 1.7vw, 3.375rem);
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	max-width: 540px;
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-recruit-talent-hero__lead {
	font-size: 1.125rem;
	line-height: 1.55;
	font-weight: 400;
	color: var(--wp--preset--color--dark-text);
	max-width: 500px;
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-recruit-talent-hero__sublead {
	font-size: 1rem;
	line-height: 1.55;
	color: #4b5563;
	max-width: 500px;
	text-align: left;
	margin: 0;
}

.bls-recruit-talent-hero__actions {
	display: flex;
	align-items: center;
	margin-top: 1.75rem;
}

.bls-recruit-talent-hero__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem !important;
	font-weight: 700;
}

.bls-recruit-talent-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
}

.bls-recruit-talent-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 28%;
	display: block;
}

.bls-recruit-talent-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-recruit-talent-hero {
		display: block;
		min-height: 0;
	}

	.bls-recruit-talent-hero__content {
		padding: 3rem 24px 2.5rem;
	}

	.bls-recruit-talent-hero__heading {
		font-size: clamp(2.125rem, 1.8rem + 1.6vw, 2.5rem);
		max-width: 100%;
	}

	.bls-recruit-talent-hero__lead,
	.bls-recruit-talent-hero__sublead {
		max-width: 100%;
	}

	.bls-recruit-talent-hero__media {
		height: 280px;
	}

	.bls-recruit-talent-hero__media::before {
		display: none;
	}
}

/* Build Your Talent Pipeline — four open editorial columns, reusing the
   exact technique already approved for Employer Benefits / Apprenticeships
   Benefits. */
.bls-recruit-talent-benefits {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-recruit-talent-benefits {
		padding: 2.75rem 0;
	}
}

.bls-recruit-talent-benefits__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-recruit-talent-benefits__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-recruit-talent-benefits__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-recruit-talent-benefits__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-recruit-talent-benefits__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-recruit-talent-benefits__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-recruit-talent-benefits__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2rem;
}

@media (min-width: 600px) {
	.bls-recruit-talent-benefits__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2rem;
		row-gap: 2.5rem;
	}
}

@media (min-width: 960px) {
	.bls-recruit-talent-benefits__list {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		column-gap: 0;
		row-gap: 0;
	}
}

.bls-recruit-talent-benefits__item {
	margin: 0;
}

@media (max-width: 599px) {
	.bls-recruit-talent-benefits__item:not(:first-child) {
		border-top: 1px solid rgba(140, 147, 160, 0.35);
		padding-top: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-recruit-talent-benefits__item {
		padding: 0 1.75rem;
	}

	.bls-recruit-talent-benefits__item:first-child {
		padding-left: 0;
	}

	.bls-recruit-talent-benefits__item:last-child {
		padding-right: 0;
	}

	.bls-recruit-talent-benefits__item:not(:first-child) {
		border-left: 1px solid rgba(140, 147, 160, 0.35);
	}
}

.bls-recruit-talent-benefits__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	margin: 0 0 1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-recruit-talent-benefits__icon svg {
	width: 20px;
	height: 20px;
}

.bls-recruit-talent-benefits__title {
	display: block;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.4rem;
}

.bls-recruit-talent-benefits__text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* Start with Your Needs — three cards, reusing the exact technique already
   approved for the Employer landing page's own navigation cards. */
.bls-recruit-talent-roles {
	padding: 4.75rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-recruit-talent-roles {
		padding: 2.75rem 0;
	}
}

.bls-recruit-talent-roles__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-recruit-talent-roles__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-recruit-talent-roles__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-recruit-talent-roles__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-recruit-talent-roles__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-recruit-talent-roles__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-recruit-talent-roles__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-recruit-talent-roles__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 900px) {
	.bls-recruit-talent-roles__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		align-items: start;
	}
}

/* Content-driven card height (employer-journey round): now that the
   cards no longer end in a bottom-pinned link, cards are no longer
   stretched to match the tallest sibling (align-items:start above,
   at the breakpoint where stretching could otherwise occur), so
   height:100% is no longer needed here. */
.bls-recruit-talent-role {
	display: flex;
	flex-direction: column;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.25rem 1.875rem;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.bls-recruit-talent-role:hover,
.bls-recruit-talent-role:focus-within {
	box-shadow: 0 10px 24px rgba(17, 24, 39, 0.09);
	transform: translateY(-2px);
}

.bls-recruit-talent-role__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.75rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-recruit-talent-role__icon svg {
	width: 21px;
	height: 21px;
}

.bls-recruit-talent-role__heading {
	font-size: 1.3125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-recruit-talent-role__body {
	font-size: 1rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-recruit-talent-role__body:last-child {
	margin-bottom: 0;
}

/* Transition callout beneath the cards: "Not sure what level of legal
   talent you need?" Reuses the exact button treatment already
   established on patterns/about-hero.php's Talk to Us button, on a
   white card matching this section's own card styling, since the
   section background is already the pale surface tint. */
.bls-recruit-talent-roles__transition {
	margin: 2.5rem 0 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	padding: 2rem;
	text-align: center;
}

.bls-recruit-talent-roles__transition-heading {
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--dark-text);
	text-align: center;
	margin: 0 0 0.625rem;
}

.bls-recruit-talent-roles__transition-text {
	font-size: 1rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	max-width: 560px;
	text-align: center;
	margin: 0 auto 1.5rem;
}

.bls-recruit-talent-roles__transition-cta {
	margin: 0;
}

.bls-recruit-talent-roles__transition-button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.75rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-recruit-talent-roles__transition-button:visited {
	color: var(--wp--preset--color--white);
}

.bls-recruit-talent-roles__transition-button:hover,
.bls-recruit-talent-roles__transition-button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

@media (max-width: 599px) {
	.bls-recruit-talent-role {
		padding: 1.5rem;
	}

	.bls-recruit-talent-role__link {
		white-space: normal;
	}
}

/* How Brightlink Can Help — four numbered steps in a vertical timeline,
   reusing the exact technique already approved for Flexible Learning's
   "How It Works" section. */
.bls-recruit-talent-process {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-recruit-talent-process {
		padding: 2.75rem 0;
	}
}

.bls-recruit-talent-process__inner {
	width: min(calc(100% - 40px), 800px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-recruit-talent-process__inner {
		width: min(calc(100% - 64px), 800px);
	}
}

.bls-recruit-talent-process__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-recruit-talent-process__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 2.75rem;
}

.bls-recruit-talent-process__steps {
	list-style: none;
	margin: 0;
	padding: 0;
}

.bls-recruit-talent-process__step {
	display: flex;
	gap: 1.25rem;
	position: relative;
	padding-bottom: 2rem;
}

.bls-recruit-talent-process__step--last {
	padding-bottom: 0;
}

.bls-recruit-talent-process__step:not(.bls-recruit-talent-process__step--last)::before {
	content: "";
	position: absolute;
	left: 19px;
	top: 40px;
	bottom: 0;
	width: 2px;
	background-color: rgba(45, 172, 217, 0.3);
}

.bls-recruit-talent-process__step-number {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
	font-size: 1.0625rem;
	font-weight: 700;
	position: relative;
	z-index: 1;
}

.bls-recruit-talent-process__step-content {
	padding-top: 0.4rem;
}

.bls-recruit-talent-process__step-heading {
	display: block;
	font-size: 1.125rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.375rem;
}

.bls-recruit-talent-process__step-text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* Recruit and Develop — pale Bright Blue apprenticeship-as-recruitment
   section. */
.bls-recruit-talent-apprenticeships {
	background-color: rgba(45, 172, 217, 0.07);
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-recruit-talent-apprenticeships {
		padding: 2.75rem 0;
	}
}

.bls-recruit-talent-apprenticeships__inner {
	width: min(calc(100% - 40px), 800px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-recruit-talent-apprenticeships__inner {
		width: min(calc(100% - 64px), 800px);
	}
}

.bls-recruit-talent-apprenticeships__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-recruit-talent-apprenticeships__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.25rem;
}

.bls-recruit-talent-apprenticeships__text {
	font-size: 1.0625rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.5rem;
}

.bls-recruit-talent-apprenticeships__caution {
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	background-color: var(--wp--preset--color--white);
	border-radius: 8px;
	padding: 0.875rem 1rem;
	margin: 0 0 1.75rem;
}

.bls-recruit-talent-apprenticeships__action {
	margin: 0;
}

.bls-recruit-talent-apprenticeships__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 0.9375rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-recruit-talent-apprenticeships__button:visited {
	color: var(--wp--preset--color--white);
}

.bls-recruit-talent-apprenticeships__button:hover,
.bls-recruit-talent-apprenticeships__button:focus-visible {
	background-color: var(--wp--preset--color--purple);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

/* Working with Brightlink — 2x2 icon-item grid, reusing the exact
   technique already approved on Train Your Team's own support section. */
.bls-recruit-talent-value {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-recruit-talent-value {
		padding: 2.75rem 0;
	}
}

.bls-recruit-talent-value__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-recruit-talent-value__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-recruit-talent-value__intro {
	margin: 0 0 2.75rem;
	max-width: 720px;
}

.bls-recruit-talent-value__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-recruit-talent-value__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-recruit-talent-value__grid {
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2.5rem;
}

@media (min-width: 600px) {
	.bls-recruit-talent-value__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 2.5rem;
	}
}

.bls-recruit-talent-value-item {
	margin: 0;
}

.bls-recruit-talent-value-item__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.875rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-recruit-talent-value-item__icon svg {
	width: 21px;
	height: 21px;
}

.bls-recruit-talent-value-item__heading {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-recruit-talent-value-item__body {
	font-size: 1rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* Clear Responsibilities — two-column comparison with a vertical divider,
   reusing the exact technique already approved on Costs & Funding's own
   Additional Costs section. */
.bls-recruit-talent-responsibilities {
	padding: 4.75rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-recruit-talent-responsibilities {
		padding: 2.75rem 0;
	}
}

.bls-recruit-talent-responsibilities__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-recruit-talent-responsibilities__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-recruit-talent-responsibilities__intro {
	margin: 0 0 2.75rem;
	max-width: 720px;
}

.bls-recruit-talent-responsibilities__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-recruit-talent-responsibilities__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-recruit-talent-responsibilities__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 900px) {
	.bls-recruit-talent-responsibilities__grid {
		grid-template-columns: 1fr auto 1fr;
		align-items: start;
		gap: 2.5rem;
	}
}

.bls-recruit-talent-responsibilities__col {
	margin: 0;
}

.bls-recruit-talent-responsibilities__col-heading {
	font-size: 1.0625rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-recruit-talent-responsibilities__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.bls-recruit-talent-responsibilities__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	padding: 0.75rem 0;
	border-bottom: 1px solid rgba(140, 147, 160, 0.3);
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-recruit-talent-responsibilities__list li:last-child {
	border-bottom: none;
}

.bls-recruit-talent-responsibilities__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	flex: 0 0 26px;
	margin-top: 0.05rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-recruit-talent-responsibilities__icon svg {
	width: 13px;
	height: 13px;
}

.bls-recruit-talent-responsibilities__divider {
	display: none;
}

@media (min-width: 900px) {
	.bls-recruit-talent-responsibilities__divider {
		display: block;
		width: 1px;
		align-self: stretch;
		background-color: rgba(140, 147, 160, 0.3);
	}
}

/* Your Questions, Answered — native <details>/<summary> FAQ, zero
   JavaScript. */
.bls-recruit-talent-faq {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-recruit-talent-faq {
		padding: 2.75rem 0;
	}
}

.bls-recruit-talent-faq__inner {
	width: min(calc(100% - 40px), 800px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-recruit-talent-faq__inner {
		width: min(calc(100% - 64px), 800px);
	}
}

.bls-recruit-talent-faq__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 2rem;
}

.bls-recruit-talent-faq__list {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.bls-recruit-talent-faq__item {
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 10px;
	padding: 0 1.25rem;
}

.bls-recruit-talent-faq__item[open] {
	background-color: var(--wp--preset--color--surface);
}

.bls-recruit-talent-faq__question {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1rem 0;
	font-size: 1rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	cursor: pointer;
	list-style: none;
}

.bls-recruit-talent-faq__question::-webkit-details-marker {
	display: none;
}

.bls-recruit-talent-faq__question::after {
	content: "+";
	flex: 0 0 auto;
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	transition: transform 0.2s ease;
}

.bls-recruit-talent-faq__item[open] .bls-recruit-talent-faq__question::after {
	content: "\2212";
}

.bls-recruit-talent-faq__question:focus-visible {
	outline: 2px solid var(--wp--preset--color--dark-blue);
	outline-offset: 2px;
	border-radius: 4px;
}

.bls-recruit-talent-faq__answer {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: #4b5563;
	text-align: left;
	margin: 0 0 1.25rem;
}

/* Planning Your Next Hire? — dark navy final CTA, reusing the exact visual
   language already approved on the Employer landing page's own closing
   section. */
.bls-recruit-talent-cta {
	background-color: var(--wp--preset--color--dark-blue);
	padding: 4.5rem 0 3.5rem;
}

@media (max-width: 599px) {
	.bls-recruit-talent-cta {
		padding: 3.25rem 0 2.75rem;
	}
}

.bls-recruit-talent-cta__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 600px) {
	.bls-recruit-talent-cta__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-recruit-talent-cta__inner {
		grid-template-columns: minmax(0, 73fr) minmax(0, 27fr);
		column-gap: 2.5rem;
		align-items: center;
	}
}

.bls-recruit-talent-cta__content {
	margin: 0;
}

.bls-recruit-talent-cta__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: rgba(255, 255, 255, 0.82);
	margin: 0 0 1rem;
}

.bls-recruit-talent-cta__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--white);
	max-width: 640px;
	margin: 0 0 1rem;
}

.bls-recruit-talent-cta__lead {
	font-size: 1.0625rem;
	line-height: 1.58;
	text-align: left;
	color: var(--wp--preset--color--white);
	max-width: 700px;
	margin: 0;
}

.bls-recruit-talent-cta__action {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin: 0;
}

@media (min-width: 900px) {
	.bls-recruit-talent-cta__action {
		justify-content: flex-end;
	}
}

.bls-recruit-talent-cta__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem;
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--dark-blue);
	font-size: 1rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-recruit-talent-cta__button:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-recruit-talent-cta__button:hover,
.bls-recruit-talent-cta__button:focus-visible {
	background-color: var(--wp--preset--color--surface);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

/* ==========================================================================
   Retain Your People page — full new build (/employers/retain-your-people/).
   Same architectural techniques already approved throughout this theme
   (deterministic CSS width, fr-based grids, no align:"wide", no
   wp:columns). Every selector below is scoped under a
   bls-retain-people-* namespace, entirely independent of the Employer
   landing, Recruit Legal Talent, Train Your Team and Flexible Learning
   selectors, even where the visual language matches by design.
   ========================================================================== */

/* Hero — same technique as the Employer landing / Recruit Legal Talent
   heroes (50/50 grid split). */
.bls-retain-people-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 1fr) minmax(340px, 1fr);
	align-items: stretch;
	min-height: 520px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-retain-people-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-retain-people-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-retain-people-hero__heading {
	font-size: clamp(2.625rem, 2.2rem + 1.7vw, 3.375rem);
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	max-width: 540px;
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-retain-people-hero__lead {
	font-size: 1.125rem;
	line-height: 1.55;
	font-weight: 400;
	color: var(--wp--preset--color--dark-text);
	max-width: 500px;
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-retain-people-hero__sublead {
	font-size: 1rem;
	line-height: 1.55;
	color: #4b5563;
	max-width: 500px;
	text-align: left;
	margin: 0;
}

.bls-retain-people-hero__actions {
	display: flex;
	align-items: center;
	margin-top: 1.75rem;
}

.bls-retain-people-hero__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem !important;
	font-weight: 700;
}

.bls-retain-people-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
}

.bls-retain-people-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 53% 28%;
	display: block;
}

.bls-retain-people-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-retain-people-hero {
		display: block;
		min-height: 0;
	}

	.bls-retain-people-hero__content {
		padding: 3rem 24px 2.5rem;
	}

	.bls-retain-people-hero__heading {
		font-size: clamp(2.125rem, 1.8rem + 1.6vw, 2.5rem);
		max-width: 100%;
	}

	.bls-retain-people-hero__lead,
	.bls-retain-people-hero__sublead {
		max-width: 100%;
	}

	.bls-retain-people-hero__media {
		height: 280px;
	}

	.bls-retain-people-hero__media::before {
		display: none;
	}
}

/* Why It Matters — four white bordered icon cards in a row, reusing the
   exact card technique already approved for the Employer landing page's
   own navigation cards. */
.bls-retain-people-benefits {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-retain-people-benefits {
		padding: 2.75rem 0;
	}
}

.bls-retain-people-benefits__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-retain-people-benefits__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-retain-people-benefits__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-retain-people-benefits__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-retain-people-benefits__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-retain-people-benefits__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-retain-people-benefits__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-retain-people-benefits__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-retain-people-benefits__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-retain-people-benefit {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.5rem;
}

.bls-retain-people-benefit__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.875rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-retain-people-benefit__icon svg {
	width: 21px;
	height: 21px;
}

.bls-retain-people-benefit__heading {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-retain-people-benefit__body {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* Start with Your People — three white bordered icon cards, same
   technique as the Why It Matters cards above. */
.bls-retain-people-start {
	padding: 4.75rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-retain-people-start {
		padding: 2.75rem 0;
	}
}

.bls-retain-people-start__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-retain-people-start__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-retain-people-start__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-retain-people-start__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-retain-people-start__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-retain-people-start__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-retain-people-start__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 900px) {
	.bls-retain-people-start__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bls-retain-people-start-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.75rem;
}

.bls-retain-people-start-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.875rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-retain-people-start-card__icon svg {
	width: 21px;
	height: 21px;
}

.bls-retain-people-start-card__heading {
	font-size: 1.1875rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-retain-people-start-card__body {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* Progression Pathways — three pale panels, reusing the exact panel
   technique already approved on the Legal Services Apprenticeships
   route panels. */
.bls-retain-people-pathways {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-retain-people-pathways {
		padding: 2.75rem 0;
	}
}

.bls-retain-people-pathways__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-retain-people-pathways__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-retain-people-pathways__intro {
	margin: 0 0 2.5rem;
	max-width: 760px;
}

.bls-retain-people-pathways__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-retain-people-pathways__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-retain-people-pathways__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-retain-people-pathways__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.75rem;
}

@media (min-width: 900px) {
	.bls-retain-people-pathways__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		align-items: stretch;
	}
}

.bls-retain-people-pathway {
	background-color: rgba(45, 172, 217, 0.07);
	border-radius: 14px;
	padding: 1.75rem;
	display: flex;
	flex-direction: column;
}

.bls-retain-people-pathway__heading {
	font-size: 1.1875rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 1rem;
}

.bls-retain-people-pathway__list {
	list-style: none;
	margin: 0 0 1.5rem;
	padding: 0;
	flex-grow: 1;
}

.bls-retain-people-pathway__list li {
	position: relative;
	padding: 0.5rem 0 0.5rem 1.25rem;
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	border-bottom: 1px solid rgba(140, 147, 160, 0.25);
}

.bls-retain-people-pathway__list li:last-child {
	border-bottom: none;
}

.bls-retain-people-pathway__list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 1.05rem;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background-color: var(--wp--preset--color--dark-blue);
}

.bls-retain-people-pathway__cta {
	margin: 0;
}

.bls-retain-people-pathway__link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-retain-people-pathway__link:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-retain-people-pathway__link:hover,
.bls-retain-people-pathway__link:focus-visible {
	color: var(--wp--preset--color--purple);
	text-decoration: underline;
}

@media (max-width: 599px) {
	.bls-retain-people-pathway {
		padding: 1.5rem;
	}
}

/* Development That Fits Around Work — text-only two-column checklist,
   reusing the exact intro/list technique already approved on the
   Employer landing page's own support section. */
.bls-retain-people-flexible {
	padding: 4.75rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-retain-people-flexible {
		padding: 2.75rem 0;
	}
}

.bls-retain-people-flexible__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
}

@media (min-width: 600px) {
	.bls-retain-people-flexible__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 960px) {
	.bls-retain-people-flexible__inner {
		grid-template-columns: minmax(280px, 38fr) minmax(0, 62fr);
		column-gap: 4rem;
		align-items: start;
	}
}

.bls-retain-people-flexible__intro {
	margin: 0;
}

.bls-retain-people-flexible__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-retain-people-flexible__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.25rem;
}

.bls-retain-people-flexible__lead {
	font-size: 1.0625rem;
	line-height: 1.6;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	max-width: 420px;
	margin: 0;
}

.bls-retain-people-flexible__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	column-gap: 2rem;
	row-gap: 0;
}

@media (min-width: 600px) {
	.bls-retain-people-flexible__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.bls-retain-people-flexible__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	padding: 0.875rem 0;
	border-bottom: 1px solid rgba(140, 147, 160, 0.35);
	font-size: 1rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-retain-people-flexible__list li:last-child {
	border-bottom: none;
}

@media (min-width: 600px) {
	.bls-retain-people-flexible__list li:nth-last-child(2) {
		border-bottom: none;
	}
}

.bls-retain-people-flexible__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	flex: 0 0 28px;
	margin-top: 0.1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-retain-people-flexible__icon svg {
	width: 14px;
	height: 14px;
}

/* Build Internal Capability — three open editorial columns, reusing the
   exact technique already approved for Employer Benefits (reduced to
   three items). */
.bls-retain-people-internal {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-retain-people-internal {
		padding: 2.75rem 0;
	}
}

.bls-retain-people-internal__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-retain-people-internal__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-retain-people-internal__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-retain-people-internal__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-retain-people-internal__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-retain-people-internal__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-retain-people-internal__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 2rem;
}

@media (min-width: 600px) {
	.bls-retain-people-internal__list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		column-gap: 2rem;
		row-gap: 0;
	}
}

.bls-retain-people-internal__item {
	margin: 0;
}

@media (max-width: 599px) {
	.bls-retain-people-internal__item:not(:first-child) {
		border-top: 1px solid rgba(140, 147, 160, 0.35);
		padding-top: 1.75rem;
	}
}

@media (min-width: 600px) {
	.bls-retain-people-internal__item {
		padding: 0 1.75rem;
	}

	.bls-retain-people-internal__item:first-child {
		padding-left: 0;
	}

	.bls-retain-people-internal__item:last-child {
		padding-right: 0;
	}

	.bls-retain-people-internal__item:not(:first-child) {
		border-left: 1px solid rgba(140, 147, 160, 0.35);
	}
}

.bls-retain-people-internal__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	margin: 0 0 1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-retain-people-internal__icon svg {
	width: 20px;
	height: 20px;
}

.bls-retain-people-internal__title {
	display: block;
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.4rem;
}

.bls-retain-people-internal__text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* Looking Ahead — restrained pale-surface text section. */
.bls-retain-people-succession {
	background-color: var(--wp--preset--color--surface);
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-retain-people-succession {
		padding: 2.75rem 0;
	}
}

.bls-retain-people-succession__inner {
	width: min(calc(100% - 40px), 800px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-retain-people-succession__inner {
		width: min(calc(100% - 64px), 800px);
	}
}

.bls-retain-people-succession__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-retain-people-succession__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.25rem;
}

.bls-retain-people-succession__text {
	font-size: 1.0625rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-retain-people-succession__text:last-child {
	margin-bottom: 0;
}

/* Working with Brightlink — four white bordered icon cards, same
   technique as the Why It Matters / Start with Your People cards, plus
   a short founder-access strip. */
.bls-retain-people-support {
	padding: 4.75rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-retain-people-support {
		padding: 2.75rem 0;
	}
}

.bls-retain-people-support__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-retain-people-support__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-retain-people-support__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-retain-people-support__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-retain-people-support__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-retain-people-support__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0 0 2rem;
}

@media (min-width: 600px) {
	.bls-retain-people-support__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-retain-people-support__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-retain-people-support-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.5rem;
}

.bls-retain-people-support-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.875rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-retain-people-support-card__icon svg {
	width: 21px;
	height: 21px;
}

.bls-retain-people-support-card__heading {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-retain-people-support-card__body {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

.bls-retain-people-support__founder {
	display: flex;
	align-items: center;
	gap: 0.875rem;
	background-color: var(--wp--preset--color--white);
	border-radius: 10px;
	padding: 1.125rem 1.5rem;
}

.bls-retain-people-support__founder-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 36px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-retain-people-support__founder-icon svg {
	width: 18px;
	height: 18px;
}

.bls-retain-people-support__founder-text {
	font-size: 1rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* Your Questions, Answered — native <details>/<summary> FAQ, zero
   JavaScript, reusing the exact technique already approved on Recruit
   Legal Talent's own FAQ section. */
.bls-retain-people-faq {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-retain-people-faq {
		padding: 2.75rem 0;
	}
}

.bls-retain-people-faq__inner {
	width: min(calc(100% - 40px), 800px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-retain-people-faq__inner {
		width: min(calc(100% - 64px), 800px);
	}
}

.bls-retain-people-faq__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 2rem;
}

.bls-retain-people-faq__list {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.bls-retain-people-faq__item {
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 10px;
	padding: 0 1.25rem;
}

.bls-retain-people-faq__item[open] {
	background-color: var(--wp--preset--color--surface);
}

.bls-retain-people-faq__question {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1rem 0;
	font-size: 1rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	cursor: pointer;
	list-style: none;
}

.bls-retain-people-faq__question::-webkit-details-marker {
	display: none;
}

.bls-retain-people-faq__question::after {
	content: "+";
	flex: 0 0 auto;
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	transition: transform 0.2s ease;
}

.bls-retain-people-faq__item[open] .bls-retain-people-faq__question::after {
	content: "\2212";
}

.bls-retain-people-faq__question:focus-visible {
	outline: 2px solid var(--wp--preset--color--dark-blue);
	outline-offset: 2px;
	border-radius: 4px;
}

.bls-retain-people-faq__answer {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: #4b5563;
	text-align: left;
	margin: 0 0 1.25rem;
}

/* Develop Your People — dark navy final CTA, reusing the exact visual
   language already approved on the Employer landing / Recruit Legal
   Talent pages' own closing sections. */
.bls-retain-people-cta {
	background-color: var(--wp--preset--color--dark-blue);
	padding: 4.5rem 0 3.5rem;
}

@media (max-width: 599px) {
	.bls-retain-people-cta {
		padding: 3.25rem 0 2.75rem;
	}
}

.bls-retain-people-cta__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 600px) {
	.bls-retain-people-cta__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-retain-people-cta__inner {
		grid-template-columns: minmax(0, 73fr) minmax(0, 27fr);
		column-gap: 2.5rem;
		align-items: center;
	}
}

.bls-retain-people-cta__content {
	margin: 0;
}

.bls-retain-people-cta__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: rgba(255, 255, 255, 0.82);
	margin: 0 0 1rem;
}

.bls-retain-people-cta__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--white);
	max-width: 640px;
	margin: 0 0 1rem;
}

.bls-retain-people-cta__lead {
	font-size: 1.0625rem;
	line-height: 1.58;
	text-align: left;
	color: var(--wp--preset--color--white);
	max-width: 700px;
	margin: 0;
}

.bls-retain-people-cta__action {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin: 0;
}

@media (min-width: 900px) {
	.bls-retain-people-cta__action {
		justify-content: flex-end;
	}
}

.bls-retain-people-cta__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem;
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--dark-blue);
	font-size: 1rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-retain-people-cta__button:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-retain-people-cta__button:hover,
.bls-retain-people-cta__button:focus-visible {
	background-color: var(--wp--preset--color--surface);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

/* ==========================================================================
   Subcontract Training Delivery page — full new build
   (/collaborate/subcontract-training-delivery/). Same architectural
   techniques already approved throughout this theme (deterministic CSS
   width, fr-based grids, no align:"wide", no wp:columns). Every selector
   below is scoped under a bls-subcontract-* namespace, entirely
   independent of the Collaboration landing, Recruit Legal Talent and
   Retain Your People selectors, even where the visual language matches
   by design.
   ========================================================================== */

/* Hero — same technique as the Employer landing / Recruit Legal Talent /
   Retain Your People heroes (50/50 grid split). Reuses stock-image-6.webp,
   the same asset and object-position already approved on the Recruit
   Legal Talent hero, since it is the same photograph. */
.bls-subcontract-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 1fr) minmax(340px, 1fr);
	align-items: stretch;
	min-height: 540px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-subcontract-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-subcontract-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-subcontract-hero__heading {
	font-size: clamp(2.625rem, 2.2rem + 1.7vw, 3.375rem);
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	max-width: 560px;
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-subcontract-hero__lead {
	font-size: 1.125rem;
	line-height: 1.55;
	font-weight: 400;
	color: var(--wp--preset--color--dark-text);
	max-width: 500px;
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-subcontract-hero__sublead {
	font-size: 1rem;
	line-height: 1.55;
	color: #4b5563;
	max-width: 500px;
	text-align: left;
	margin: 0;
}

.bls-subcontract-hero__actions {
	display: flex;
	align-items: center;
	margin-top: 1.75rem;
}

.bls-subcontract-hero__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem !important;
	font-weight: 700;
}

.bls-subcontract-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
}

.bls-subcontract-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 51% 15%;
	display: block;
}

.bls-subcontract-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-subcontract-hero {
		display: block;
		min-height: 0;
	}

	.bls-subcontract-hero__content {
		padding: 3rem 24px 2.5rem;
	}

	.bls-subcontract-hero__heading {
		font-size: clamp(2.125rem, 1.8rem + 1.6vw, 2.5rem);
		max-width: 100%;
	}

	.bls-subcontract-hero__lead,
	.bls-subcontract-hero__sublead {
		max-width: 100%;
	}

	.bls-subcontract-hero__media {
		height: 280px;
	}

	.bls-subcontract-hero__media::before {
		display: none;
	}
}

/* Where We Can Help — four white bordered icon cards in a row, reusing
   the exact card technique already approved on Retain Your People's
   "Why It Matters" section. */
.bls-subcontract-help {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-subcontract-help {
		padding: 2.75rem 0;
	}
}

.bls-subcontract-help__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-subcontract-help__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-subcontract-help__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-subcontract-help__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-subcontract-help__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-subcontract-help__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-subcontract-help__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-subcontract-help__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-subcontract-help__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-subcontract-help-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.5rem;
}

.bls-subcontract-help-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.875rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-subcontract-help-card__icon svg {
	width: 21px;
	height: 21px;
}

.bls-subcontract-help-card__heading {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-subcontract-help-card__body {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* Delivery Areas — same card technique as Where We Can Help, on a pale
   surface background to create visual rhythm. */
.bls-subcontract-delivery {
	padding: 4.75rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-subcontract-delivery {
		padding: 2.75rem 0;
	}
}

.bls-subcontract-delivery__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-subcontract-delivery__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-subcontract-delivery__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-subcontract-delivery__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-subcontract-delivery__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-subcontract-delivery__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-subcontract-delivery__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-subcontract-delivery__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-subcontract-delivery__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-subcontract-delivery-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.5rem;
}

.bls-subcontract-delivery-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.875rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-subcontract-delivery-card__icon svg {
	width: 21px;
	height: 21px;
}

.bls-subcontract-delivery-card__heading {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-subcontract-delivery-card__body {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* How It Works — four numbered steps in a vertical editorial list,
   reusing the exact technique already approved on Recruit Legal
   Talent's own process section. */
.bls-subcontract-process {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-subcontract-process {
		padding: 2.75rem 0;
	}
}

.bls-subcontract-process__inner {
	width: min(calc(100% - 40px), 800px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-subcontract-process__inner {
		width: min(calc(100% - 64px), 800px);
	}
}

.bls-subcontract-process__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-subcontract-process__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 2.75rem;
}

.bls-subcontract-process__steps {
	list-style: none;
	margin: 0;
	padding: 0;
}

.bls-subcontract-process__step {
	display: flex;
	gap: 1.25rem;
	position: relative;
	padding-bottom: 2rem;
}

.bls-subcontract-process__step--last {
	padding-bottom: 0;
}

.bls-subcontract-process__step:not(.bls-subcontract-process__step--last)::before {
	content: "";
	position: absolute;
	left: 19px;
	top: 40px;
	bottom: 0;
	width: 2px;
	background-color: rgba(45, 172, 217, 0.3);
}

.bls-subcontract-process__step-number {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
	font-size: 1.0625rem;
	font-weight: 700;
	position: relative;
	z-index: 1;
}

.bls-subcontract-process__step-content {
	padding-top: 0.4rem;
}

.bls-subcontract-process__step-heading {
	display: block;
	font-size: 1.125rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.375rem;
}

.bls-subcontract-process__step-text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* Delivery That Puts Learners First — substantial section, reusing the
   exact 38/62 intro-plus-checklist technique already approved on Retain
   Your People's "Development That Fits Around Work" section. */
.bls-subcontract-quality {
	padding: 4.75rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-subcontract-quality {
		padding: 2.75rem 0;
	}
}

.bls-subcontract-quality__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
}

@media (min-width: 600px) {
	.bls-subcontract-quality__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 960px) {
	.bls-subcontract-quality__inner {
		grid-template-columns: minmax(280px, 38fr) minmax(0, 62fr);
		column-gap: 4rem;
		align-items: start;
	}
}

.bls-subcontract-quality__intro {
	margin: 0;
}

.bls-subcontract-quality__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-subcontract-quality__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.25rem;
}

.bls-subcontract-quality__lead {
	font-size: 1.0625rem;
	line-height: 1.6;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	max-width: 420px;
	margin: 0;
}

.bls-subcontract-quality__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	column-gap: 2rem;
	row-gap: 0;
}

@media (min-width: 600px) {
	.bls-subcontract-quality__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.bls-subcontract-quality__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	padding: 0.875rem 0;
	border-bottom: 1px solid rgba(140, 147, 160, 0.35);
	font-size: 1rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-subcontract-quality__list li:last-child {
	border-bottom: none;
}

@media (min-width: 600px) {
	.bls-subcontract-quality__list li:nth-last-child(2) {
		border-bottom: none;
	}
}

.bls-subcontract-quality__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	flex: 0 0 28px;
	margin-top: 0.1rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-subcontract-quality__icon svg {
	width: 14px;
	height: 14px;
}

/* Clear Roles — two-column comparison with a vertical divider on
   desktop, reusing the exact technique already approved on Recruit
   Legal Talent's own responsibilities section. */
.bls-subcontract-roles {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-subcontract-roles {
		padding: 2.75rem 0;
	}
}

.bls-subcontract-roles__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-subcontract-roles__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-subcontract-roles__intro {
	margin: 0 0 2.75rem;
	max-width: 720px;
}

.bls-subcontract-roles__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-subcontract-roles__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-subcontract-roles__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-subcontract-roles__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 900px) {
	.bls-subcontract-roles__grid {
		grid-template-columns: 1fr auto 1fr;
		align-items: start;
		gap: 2.5rem;
	}
}

.bls-subcontract-roles__col {
	margin: 0;
}

.bls-subcontract-roles__col-heading {
	font-size: 1.0625rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-subcontract-roles__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.bls-subcontract-roles__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	padding: 0.75rem 0;
	border-bottom: 1px solid rgba(140, 147, 160, 0.3);
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-subcontract-roles__list li:last-child {
	border-bottom: none;
}

.bls-subcontract-roles__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	flex: 0 0 26px;
	margin-top: 0.05rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-subcontract-roles__icon svg {
	width: 13px;
	height: 13px;
}

.bls-subcontract-roles__divider {
	display: none;
}

@media (min-width: 900px) {
	.bls-subcontract-roles__divider {
		display: block;
		width: 1px;
		align-self: stretch;
		background-color: rgba(140, 147, 160, 0.3);
	}
}

/* Getting the Partnership Right — checklist grid of topics for
   discussion, using the same checkmark-item visual language as the
   Clear Roles lists above, in a responsive card-row grid. */
.bls-subcontract-checklist {
	padding: 4.75rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-subcontract-checklist {
		padding: 2.75rem 0;
	}
}

.bls-subcontract-checklist__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-subcontract-checklist__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-subcontract-checklist__intro {
	margin: 0 0 2.25rem;
	max-width: 760px;
}

.bls-subcontract-checklist__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-subcontract-checklist__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-subcontract-checklist__grid {
	list-style: none;
	margin: 0 0 2rem;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.875rem;
}

@media (min-width: 600px) {
	.bls-subcontract-checklist__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 900px) {
	.bls-subcontract-checklist__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bls-subcontract-checklist__item {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.3);
	border-radius: 10px;
	padding: 0.875rem 1.125rem;
	margin: 0;
}

.bls-subcontract-checklist__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-subcontract-checklist__icon svg {
	width: 12px;
	height: 12px;
}

.bls-subcontract-checklist__text {
	font-size: 0.9375rem;
	line-height: 1.4;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-subcontract-checklist__note {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
	max-width: 760px;
}

/* Why Brightlink — four white bordered icon cards, same technique as
   Where We Can Help / Delivery Areas above, plus a short founder-access
   strip, reusing the exact strip technique already approved on Retain
   Your People's "Working with Brightlink" section. */
.bls-subcontract-why {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-subcontract-why {
		padding: 2.75rem 0;
	}
}

.bls-subcontract-why__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-subcontract-why__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-subcontract-why__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-subcontract-why__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-subcontract-why__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-subcontract-why__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0 0 2rem;
}

@media (min-width: 600px) {
	.bls-subcontract-why__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-subcontract-why__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-subcontract-why-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.5rem;
}

.bls-subcontract-why-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.875rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-subcontract-why-card__icon svg {
	width: 21px;
	height: 21px;
}

.bls-subcontract-why-card__heading {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-subcontract-why-card__body {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

.bls-subcontract-why__founder {
	display: flex;
	align-items: center;
	gap: 0.875rem;
	background-color: var(--wp--preset--color--surface);
	border-radius: 10px;
	padding: 1.125rem 1.5rem;
}

.bls-subcontract-why__founder-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 36px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-subcontract-why__founder-icon svg {
	width: 18px;
	height: 18px;
}

.bls-subcontract-why__founder-text {
	font-size: 1rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* Explore a Partnership — dark navy final CTA, reusing the exact visual
   language already approved on the Collaboration landing page's own
   closing section. */
.bls-subcontract-cta {
	background-color: var(--wp--preset--color--dark-blue);
	padding: 4.5rem 0 3.5rem;
}

@media (max-width: 599px) {
	.bls-subcontract-cta {
		padding: 3.25rem 0 2.75rem;
	}
}

.bls-subcontract-cta__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 600px) {
	.bls-subcontract-cta__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-subcontract-cta__inner {
		grid-template-columns: minmax(0, 73fr) minmax(0, 27fr);
		column-gap: 2.5rem;
		align-items: center;
	}
}

.bls-subcontract-cta__content {
	margin: 0;
}

.bls-subcontract-cta__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: rgba(255, 255, 255, 0.82);
	margin: 0 0 1rem;
}

.bls-subcontract-cta__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--white);
	max-width: 640px;
	margin: 0 0 1rem;
}

.bls-subcontract-cta__lead {
	font-size: 1.0625rem;
	line-height: 1.58;
	text-align: left;
	color: var(--wp--preset--color--white);
	max-width: 700px;
	margin: 0;
}

.bls-subcontract-cta__action {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin: 0;
}

@media (min-width: 900px) {
	.bls-subcontract-cta__action {
		justify-content: flex-end;
	}
}

.bls-subcontract-cta__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem;
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--dark-blue);
	font-size: 1rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-subcontract-cta__button:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-subcontract-cta__button:hover,
.bls-subcontract-cta__button:focus-visible {
	background-color: var(--wp--preset--color--surface);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

/* ==========================================================================
   Co-create Courses page — full new build
   (/collaborate/co-create-courses/). Same architectural techniques already
   approved throughout this theme (deterministic CSS width, fr-based grids,
   no align:"wide", no wp:columns). Every selector below is scoped under a
   bls-cocreate-* namespace, entirely independent of the Collaboration
   landing and Subcontract Training Delivery selectors, even where the
   visual language matches by design.
   ========================================================================== */

/* Hero — same technique as the Subcontract Training Delivery hero (50/50
   grid split). Reuses stock-image-5.webp, the same asset already
   approved on the Collaboration landing hero and the Costs & Funding
   hero. */
.bls-cocreate-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 1fr) minmax(340px, 1fr);
	align-items: stretch;
	min-height: 540px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-cocreate-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-cocreate-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-cocreate-hero__heading {
	font-size: clamp(2.625rem, 2.2rem + 1.7vw, 3.375rem);
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	max-width: 560px;
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-cocreate-hero__lead {
	font-size: 1.125rem;
	line-height: 1.55;
	font-weight: 400;
	color: var(--wp--preset--color--dark-text);
	max-width: 500px;
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-cocreate-hero__sublead {
	font-size: 1rem;
	line-height: 1.55;
	color: #4b5563;
	max-width: 500px;
	text-align: left;
	margin: 0;
}

.bls-cocreate-hero__actions {
	display: flex;
	align-items: center;
	margin-top: 1.75rem;
}

.bls-cocreate-hero__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem !important;
	font-weight: 700;
}

.bls-cocreate-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
}

.bls-cocreate-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 53% 22%;
	display: block;
}

.bls-cocreate-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-cocreate-hero {
		display: block;
		min-height: 0;
	}

	.bls-cocreate-hero__content {
		padding: 3rem 24px 2.5rem;
	}

	.bls-cocreate-hero__heading {
		font-size: clamp(2.125rem, 1.8rem + 1.6vw, 2.5rem);
		max-width: 100%;
	}

	.bls-cocreate-hero__lead,
	.bls-cocreate-hero__sublead {
		max-width: 100%;
	}

	.bls-cocreate-hero__media {
		height: 280px;
	}

	.bls-cocreate-hero__media::before {
		display: none;
	}
}

/* Why Co-create? — four white bordered icon cards in a row, reusing the
   exact card technique already approved on Subcontract Training
   Delivery's own "Where We Can Help" section. */
.bls-cocreate-why {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-cocreate-why {
		padding: 2.75rem 0;
	}
}

.bls-cocreate-why__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-cocreate-why__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-cocreate-why__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-cocreate-why__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-cocreate-why__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-cocreate-why__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-cocreate-why__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-cocreate-why__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-cocreate-why__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-cocreate-why-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.5rem;
}

.bls-cocreate-why-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.875rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-cocreate-why-card__icon svg {
	width: 21px;
	height: 21px;
}

.bls-cocreate-why-card__heading {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-cocreate-why-card__body {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* Possibilities — same card technique as Why Co-create?, on a pale
   surface background to create visual rhythm. */
.bls-cocreate-possibilities {
	padding: 4.75rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-cocreate-possibilities {
		padding: 2.75rem 0;
	}
}

.bls-cocreate-possibilities__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-cocreate-possibilities__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-cocreate-possibilities__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-cocreate-possibilities__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-cocreate-possibilities__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-cocreate-possibilities__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-cocreate-possibilities__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-cocreate-possibilities__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-cocreate-possibilities-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.5rem;
}

.bls-cocreate-possibilities-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.875rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-cocreate-possibilities-card__icon svg {
	width: 21px;
	height: 21px;
}

.bls-cocreate-possibilities-card__heading {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-cocreate-possibilities-card__body {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* How It Works — five numbered steps in a vertical editorial list,
   reusing the exact technique already approved on Subcontract Training
   Delivery's own process section. */
.bls-cocreate-process {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-cocreate-process {
		padding: 2.75rem 0;
	}
}

.bls-cocreate-process__inner {
	width: min(calc(100% - 40px), 800px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-cocreate-process__inner {
		width: min(calc(100% - 64px), 800px);
	}
}

.bls-cocreate-process__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-cocreate-process__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 2.75rem;
}

.bls-cocreate-process__steps {
	list-style: none;
	margin: 0;
	padding: 0;
}

.bls-cocreate-process__step {
	display: flex;
	gap: 1.25rem;
	position: relative;
	padding-bottom: 2rem;
}

.bls-cocreate-process__step--last {
	padding-bottom: 0;
}

.bls-cocreate-process__step:not(.bls-cocreate-process__step--last)::before {
	content: "";
	position: absolute;
	left: 19px;
	top: 40px;
	bottom: 0;
	width: 2px;
	background-color: rgba(45, 172, 217, 0.3);
}

.bls-cocreate-process__step-number {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
	font-size: 1.0625rem;
	font-weight: 700;
	position: relative;
	z-index: 1;
}

.bls-cocreate-process__step-content {
	padding-top: 0.4rem;
}

.bls-cocreate-process__step-heading {
	display: block;
	font-size: 1.125rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.375rem;
}

.bls-cocreate-process__step-text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-cocreate-process__note {
	font-size: 0.9375rem;
	line-height: 1.5;
	font-style: italic;
	color: #4b5563;
	text-align: left;
	margin: 2rem 0 0;
	padding-left: 65px;
}

@media (max-width: 599px) {
	.bls-cocreate-process__note {
		padding-left: 0;
	}
}

/* Designed Around the Learner — checklist grid of eleven themes, reusing
   the exact checkmark-item grid technique already approved on
   Subcontract Training Delivery's own "Getting the Partnership Right"
   section, on a pale surface background. */
.bls-cocreate-learning {
	padding: 4.75rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-cocreate-learning {
		padding: 2.75rem 0;
	}
}

.bls-cocreate-learning__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-cocreate-learning__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-cocreate-learning__intro {
	margin: 0 0 2.25rem;
	max-width: 760px;
}

.bls-cocreate-learning__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-cocreate-learning__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-cocreate-learning__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-cocreate-learning__grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.875rem;
}

@media (min-width: 600px) {
	.bls-cocreate-learning__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 900px) {
	.bls-cocreate-learning__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bls-cocreate-learning__item {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.3);
	border-radius: 10px;
	padding: 0.875rem 1.125rem;
	margin: 0;
}

.bls-cocreate-learning__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-cocreate-learning__icon svg {
	width: 12px;
	height: 12px;
}

.bls-cocreate-learning__text {
	font-size: 0.9375rem;
	line-height: 1.4;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

/* Flexible Formats — four white bordered icon cards, same technique as
   Why Co-create? / Possibilities above. */
.bls-cocreate-formats {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-cocreate-formats {
		padding: 2.75rem 0;
	}
}

.bls-cocreate-formats__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-cocreate-formats__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-cocreate-formats__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-cocreate-formats__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-cocreate-formats__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-cocreate-formats__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-cocreate-formats__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-cocreate-formats__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-cocreate-formats__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-cocreate-formats-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.5rem;
}

.bls-cocreate-formats-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.875rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-cocreate-formats-card__icon svg {
	width: 21px;
	height: 21px;
}

.bls-cocreate-formats-card__heading {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-cocreate-formats-card__body {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* Working Together — two-column comparison with a vertical divider on
   desktop, reusing the exact technique already approved on Subcontract
   Training Delivery's own "Clear Roles" section, on a pale surface
   background. */
.bls-cocreate-partners {
	padding: 4.75rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-cocreate-partners {
		padding: 2.75rem 0;
	}
}

.bls-cocreate-partners__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-cocreate-partners__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-cocreate-partners__intro {
	margin: 0 0 2.75rem;
	max-width: 720px;
}

.bls-cocreate-partners__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-cocreate-partners__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-cocreate-partners__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-cocreate-partners__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 900px) {
	.bls-cocreate-partners__grid {
		grid-template-columns: 1fr auto 1fr;
		align-items: start;
		gap: 2.5rem;
	}
}

.bls-cocreate-partners__col {
	margin: 0;
}

.bls-cocreate-partners__col-heading {
	font-size: 1.0625rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-cocreate-partners__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.bls-cocreate-partners__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	padding: 0.75rem 0;
	border-bottom: 1px solid rgba(140, 147, 160, 0.3);
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-cocreate-partners__list li:last-child {
	border-bottom: none;
}

.bls-cocreate-partners__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	flex: 0 0 26px;
	margin-top: 0.05rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-cocreate-partners__icon svg {
	width: 13px;
	height: 13px;
}

.bls-cocreate-partners__divider {
	display: none;
}

@media (min-width: 900px) {
	.bls-cocreate-partners__divider {
		display: block;
		width: 1px;
		align-self: stretch;
		background-color: rgba(140, 147, 160, 0.3);
	}
}

/* Before Development Begins — checklist grid of seventeen topics, same
   technique as Designed Around the Learner above. */
.bls-cocreate-agreement {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-cocreate-agreement {
		padding: 2.75rem 0;
	}
}

.bls-cocreate-agreement__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-cocreate-agreement__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-cocreate-agreement__intro {
	margin: 0 0 2.25rem;
	max-width: 760px;
}

.bls-cocreate-agreement__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-cocreate-agreement__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-cocreate-agreement__grid {
	list-style: none;
	margin: 0 0 2rem;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.875rem;
}

@media (min-width: 600px) {
	.bls-cocreate-agreement__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 900px) {
	.bls-cocreate-agreement__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bls-cocreate-agreement__item {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	background-color: var(--wp--preset--color--surface);
	border: 1px solid rgba(140, 147, 160, 0.3);
	border-radius: 10px;
	padding: 0.875rem 1.125rem;
	margin: 0;
}

.bls-cocreate-agreement__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-cocreate-agreement__icon svg {
	width: 12px;
	height: 12px;
}

.bls-cocreate-agreement__text {
	font-size: 0.9375rem;
	line-height: 1.4;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-cocreate-agreement__note {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
	max-width: 800px;
}

/* Why Co-create With Brightlink? — four white bordered icon cards, same
   technique as the other card sections above, plus a short founder-
   access strip, reusing the exact strip technique already approved on
   Subcontract Training Delivery's own "Why Brightlink" section, on a
   pale surface background. */
.bls-cocreate-brightlink {
	padding: 4.75rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-cocreate-brightlink {
		padding: 2.75rem 0;
	}
}

.bls-cocreate-brightlink__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-cocreate-brightlink__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-cocreate-brightlink__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-cocreate-brightlink__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-cocreate-brightlink__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-cocreate-brightlink__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0 0 2rem;
}

@media (min-width: 600px) {
	.bls-cocreate-brightlink__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-cocreate-brightlink__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-cocreate-brightlink-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.5rem;
}

.bls-cocreate-brightlink-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.875rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-cocreate-brightlink-card__icon svg {
	width: 21px;
	height: 21px;
}

.bls-cocreate-brightlink-card__heading {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-cocreate-brightlink-card__body {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

.bls-cocreate-brightlink__founder {
	display: flex;
	align-items: center;
	gap: 0.875rem;
	background-color: var(--wp--preset--color--white);
	border-radius: 10px;
	padding: 1.125rem 1.5rem;
}

.bls-cocreate-brightlink__founder-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 36px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-cocreate-brightlink__founder-icon svg {
	width: 18px;
	height: 18px;
}

.bls-cocreate-brightlink__founder-text {
	font-size: 1rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* Build Something Together — dark navy final CTA, reusing the exact
   visual language already approved on the Collaboration landing page's
   own closing section and patterns/subcontract-cta.php. */
.bls-cocreate-cta {
	background-color: var(--wp--preset--color--dark-blue);
	padding: 4.5rem 0 3.5rem;
}

@media (max-width: 599px) {
	.bls-cocreate-cta {
		padding: 3.25rem 0 2.75rem;
	}
}

.bls-cocreate-cta__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 600px) {
	.bls-cocreate-cta__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-cocreate-cta__inner {
		grid-template-columns: minmax(0, 73fr) minmax(0, 27fr);
		column-gap: 2.5rem;
		align-items: center;
	}
}

.bls-cocreate-cta__content {
	margin: 0;
}

.bls-cocreate-cta__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: rgba(255, 255, 255, 0.82);
	margin: 0 0 1rem;
}

.bls-cocreate-cta__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--white);
	max-width: 640px;
	margin: 0 0 1rem;
}

.bls-cocreate-cta__lead {
	font-size: 1.0625rem;
	line-height: 1.58;
	text-align: left;
	color: var(--wp--preset--color--white);
	max-width: 700px;
	margin: 0;
}

.bls-cocreate-cta__action {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin: 0;
}

@media (min-width: 900px) {
	.bls-cocreate-cta__action {
		justify-content: flex-end;
	}
}

.bls-cocreate-cta__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem;
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--dark-blue);
	font-size: 1rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-cocreate-cta__button:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-cocreate-cta__button:hover,
.bls-cocreate-cta__button:focus-visible {
	background-color: var(--wp--preset--color--surface);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

/* ==========================================================================
   Innovate Legal Education page — full new build
   (/collaborate/innovate-legal-education/), the third and final detailed
   Collaboration destination page. Same architectural techniques already
   approved throughout this theme (deterministic CSS width, fr-based grids,
   no align:"wide", no wp:columns). Every selector below is scoped under a
   bls-innovate-* namespace, entirely independent of the Collaboration
   landing, Subcontract Training Delivery and Co-create Courses selectors,
   even where the visual language matches by design.
   ========================================================================== */

/* Hero — same technique as the other Collaboration destination heroes
   (50/50 grid split). Reuses stock-image-7.webp, the same asset already
   approved on the Train Your Team hero. */
.bls-innovate-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 1fr) minmax(340px, 1fr);
	align-items: stretch;
	min-height: 540px;
	background-color: var(--wp--preset--color--white);
	overflow: hidden;
	margin: 0;
}

.bls-innovate-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

.bls-innovate-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-innovate-hero__heading {
	font-size: clamp(2.625rem, 2.2rem + 1.7vw, 3.375rem);
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	max-width: 560px;
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-innovate-hero__lead {
	font-size: 1.125rem;
	line-height: 1.55;
	font-weight: 400;
	color: var(--wp--preset--color--dark-text);
	max-width: 500px;
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-innovate-hero__sublead {
	font-size: 1rem;
	line-height: 1.55;
	color: #4b5563;
	max-width: 500px;
	text-align: left;
	margin: 0;
}

.bls-innovate-hero__actions {
	display: flex;
	align-items: center;
	margin-top: 1.75rem;
}

.bls-innovate-hero__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem !important;
	font-weight: 700;
}

.bls-innovate-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
}

.bls-innovate-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 45%;
	display: block;
}

.bls-innovate-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-innovate-hero {
		display: block;
		min-height: 0;
	}

	.bls-innovate-hero__content {
		padding: 3rem 24px 2.5rem;
	}

	.bls-innovate-hero__heading {
		font-size: clamp(2.125rem, 1.8rem + 1.6vw, 2.5rem);
		max-width: 100%;
	}

	.bls-innovate-hero__lead,
	.bls-innovate-hero__sublead {
		max-width: 100%;
	}

	.bls-innovate-hero__media {
		height: 280px;
	}

	.bls-innovate-hero__media::before {
		display: none;
	}
}

/* Why Innovate? — four white bordered icon cards in a row, reusing the
   exact card technique already approved on Co-create Courses' own "Why
   Co-create?" section. */
.bls-innovate-why {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-innovate-why {
		padding: 2.75rem 0;
	}
}

.bls-innovate-why__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-innovate-why__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-innovate-why__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-innovate-why__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-innovate-why__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-innovate-why__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-innovate-why__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-innovate-why__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-innovate-why__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-innovate-why-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.5rem;
}

.bls-innovate-why-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.875rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-innovate-why-card__icon svg {
	width: 21px;
	height: 21px;
}

.bls-innovate-why-card__heading {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-innovate-why-card__body {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* Areas for Innovation — same card technique as Why Innovate?, on a
   pale surface background to create visual rhythm. */
.bls-innovate-areas {
	padding: 4.75rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-innovate-areas {
		padding: 2.75rem 0;
	}
}

.bls-innovate-areas__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-innovate-areas__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-innovate-areas__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-innovate-areas__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-innovate-areas__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-innovate-areas__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-innovate-areas__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-innovate-areas__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-innovate-areas-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.5rem;
}

.bls-innovate-areas-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.875rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-innovate-areas-card__icon svg {
	width: 21px;
	height: 21px;
}

.bls-innovate-areas-card__heading {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-innovate-areas-card__body {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* How We Can Work Together — five numbered steps in a vertical
   editorial list, reusing the exact technique already approved on
   Co-create Courses' own process section. */
.bls-innovate-process {
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-innovate-process {
		padding: 2.75rem 0;
	}
}

.bls-innovate-process__inner {
	width: min(calc(100% - 40px), 800px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-innovate-process__inner {
		width: min(calc(100% - 64px), 800px);
	}
}

.bls-innovate-process__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-innovate-process__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 2.75rem;
}

.bls-innovate-process__steps {
	list-style: none;
	margin: 0;
	padding: 0;
}

.bls-innovate-process__step {
	display: flex;
	gap: 1.25rem;
	position: relative;
	padding-bottom: 2rem;
}

.bls-innovate-process__step--last {
	padding-bottom: 0;
}

.bls-innovate-process__step:not(.bls-innovate-process__step--last)::before {
	content: "";
	position: absolute;
	left: 19px;
	top: 40px;
	bottom: 0;
	width: 2px;
	background-color: rgba(45, 172, 217, 0.3);
}

.bls-innovate-process__step-number {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
	font-size: 1.0625rem;
	font-weight: 700;
	position: relative;
	z-index: 1;
}

.bls-innovate-process__step-content {
	padding-top: 0.4rem;
}

.bls-innovate-process__step-heading {
	display: block;
	font-size: 1.125rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.375rem;
}

.bls-innovate-process__step-text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-innovate-process__note {
	font-size: 0.9375rem;
	line-height: 1.5;
	font-style: italic;
	color: #4b5563;
	text-align: left;
	margin: 2rem 0 0;
	padding-left: 65px;
}

@media (max-width: 599px) {
	.bls-innovate-process__note {
		padding-left: 0;
	}
}

/* How We Think — left editorial intro beside a compact 2x2 icon-list of
   four principles, reusing the exact list technique already approved on
   patterns/collab-why.php. */
.bls-innovate-principles {
	background-color: var(--wp--preset--color--surface);
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-innovate-principles {
		padding: 2.75rem 0;
	}
}

.bls-innovate-principles__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 600px) {
	.bls-innovate-principles__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 960px) {
	.bls-innovate-principles__inner {
		grid-template-columns: minmax(0, 40fr) minmax(0, 60fr);
		column-gap: 4rem;
		align-items: start;
	}
}

.bls-innovate-principles__intro {
	margin: 0;
}

.bls-innovate-principles__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-innovate-principles__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-innovate-principles__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.25rem;
}

@media (min-width: 600px) {
	.bls-innovate-principles__list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.bls-innovate-principles__item {
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	margin: 0;
}

.bls-innovate-principles__item-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 36px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-innovate-principles__item-icon svg {
	width: 18px;
	height: 18px;
}

.bls-innovate-principles__item-text {
	display: block;
	font-size: 1rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	padding-top: 0.3rem;
}

.bls-innovate-principles__item-title {
	display: block;
	font-size: 1.0625rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.25rem;
}

/* Our Approach — combined "Technology With Purpose" / "Widening
   Opportunity" two-column section. */
.bls-innovate-philosophy {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-innovate-philosophy {
		padding: 2.75rem 0;
	}
}

.bls-innovate-philosophy__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
}

@media (min-width: 600px) {
	.bls-innovate-philosophy__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-innovate-philosophy__inner {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 3.5rem;
		align-items: start;
	}
}

.bls-innovate-philosophy__col {
	margin: 0;
}

.bls-innovate-philosophy__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-innovate-philosophy__heading {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.25;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1rem;
}

.bls-innovate-philosophy__text {
	font-size: 1rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

.bls-innovate-philosophy__quote {
	font-size: 1.125rem;
	line-height: 1.5;
	font-weight: 600;
	font-style: italic;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	border-left: 3px solid rgba(45, 172, 217, 0.5);
	padding-left: 1.25rem;
	margin: 0 0 1.25rem;
}

/* Quality Matters — checklist grid of twelve considerations, reusing
   the exact checkmark-item grid technique already approved on
   Co-create Courses' own "Designed Around the Learner" section, on a
   pale surface background. */
.bls-innovate-quality {
	padding: 4.75rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-innovate-quality {
		padding: 2.75rem 0;
	}
}

.bls-innovate-quality__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-innovate-quality__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-innovate-quality__intro {
	margin: 0 0 2.25rem;
	max-width: 760px;
}

.bls-innovate-quality__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-innovate-quality__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-innovate-quality__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-innovate-quality__grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.875rem;
}

@media (min-width: 600px) {
	.bls-innovate-quality__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 900px) {
	.bls-innovate-quality__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bls-innovate-quality__item {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.3);
	border-radius: 10px;
	padding: 0.875rem 1.125rem;
	margin: 0;
}

.bls-innovate-quality__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-innovate-quality__icon svg {
	width: 12px;
	height: 12px;
}

.bls-innovate-quality__text {
	font-size: 0.9375rem;
	line-height: 1.4;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

/* Collaborative by Design — two-column comparison with a vertical
   divider on desktop, reusing the exact technique already approved on
   Co-create Courses' own "Working Together" section, on a pale surface
   background. */
.bls-innovate-partners {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-innovate-partners {
		padding: 2.75rem 0;
	}
}

.bls-innovate-partners__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-innovate-partners__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-innovate-partners__intro {
	margin: 0 0 2.75rem;
	max-width: 720px;
}

.bls-innovate-partners__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-innovate-partners__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-innovate-partners__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-innovate-partners__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 900px) {
	.bls-innovate-partners__grid {
		grid-template-columns: 1fr auto 1fr;
		align-items: start;
		gap: 2.5rem;
	}
}

.bls-innovate-partners__col {
	margin: 0;
}

.bls-innovate-partners__col-heading {
	font-size: 1.0625rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-innovate-partners__list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.bls-innovate-partners__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	padding: 0.75rem 0;
	border-bottom: 1px solid rgba(140, 147, 160, 0.3);
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-innovate-partners__list li:last-child {
	border-bottom: none;
}

.bls-innovate-partners__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	flex: 0 0 26px;
	margin-top: 0.05rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-innovate-partners__icon svg {
	width: 13px;
	height: 13px;
}

.bls-innovate-partners__divider {
	display: none;
}

@media (min-width: 900px) {
	.bls-innovate-partners__divider {
		display: block;
		width: 1px;
		align-self: stretch;
		background-color: rgba(140, 147, 160, 0.3);
	}
}

/* From Idea to Agreement — checklist grid of sixteen topics, same
   technique as Quality Matters above. */
.bls-innovate-agreement {
	padding: 4.75rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-innovate-agreement {
		padding: 2.75rem 0;
	}
}

.bls-innovate-agreement__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-innovate-agreement__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-innovate-agreement__intro {
	margin: 0 0 2.25rem;
	max-width: 760px;
}

.bls-innovate-agreement__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-innovate-agreement__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-innovate-agreement__grid {
	list-style: none;
	margin: 0 0 2rem;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.875rem;
}

@media (min-width: 600px) {
	.bls-innovate-agreement__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 900px) {
	.bls-innovate-agreement__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bls-innovate-agreement__item {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.3);
	border-radius: 10px;
	padding: 0.875rem 1.125rem;
	margin: 0;
}

.bls-innovate-agreement__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-innovate-agreement__icon svg {
	width: 12px;
	height: 12px;
}

.bls-innovate-agreement__text {
	font-size: 0.9375rem;
	line-height: 1.4;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-innovate-agreement__note {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
	max-width: 800px;
}

/* Why Innovate With Brightlink? — four white bordered icon cards, same
   technique as the other card sections above, plus a short founder-
   access strip, reusing the exact strip technique already approved on
   Co-create Courses' own "Why Brightlink" section. */
.bls-innovate-brightlink {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-innovate-brightlink {
		padding: 2.75rem 0;
	}
}

.bls-innovate-brightlink__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-innovate-brightlink__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-innovate-brightlink__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-innovate-brightlink__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-innovate-brightlink__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-innovate-brightlink__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0 0 2rem;
}

@media (min-width: 600px) {
	.bls-innovate-brightlink__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-innovate-brightlink__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-innovate-brightlink-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.5rem;
}

.bls-innovate-brightlink-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.875rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-innovate-brightlink-card__icon svg {
	width: 21px;
	height: 21px;
}

.bls-innovate-brightlink-card__heading {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-innovate-brightlink-card__body {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

.bls-innovate-brightlink__founder {
	display: flex;
	align-items: center;
	gap: 0.875rem;
	background-color: var(--wp--preset--color--surface);
	border-radius: 10px;
	padding: 1.125rem 1.5rem;
}

.bls-innovate-brightlink__founder-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 36px;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-innovate-brightlink__founder-icon svg {
	width: 18px;
	height: 18px;
}

.bls-innovate-brightlink__founder-text {
	font-size: 1rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* Explore What's Possible — dark navy final CTA, reusing the exact
   visual language already approved on the Collaboration landing page's
   own closing section and patterns/subcontract-cta.php /
   patterns/cocreate-cta.php. */
.bls-innovate-cta {
	background-color: var(--wp--preset--color--dark-blue);
	padding: 4.5rem 0 3.5rem;
}

@media (max-width: 599px) {
	.bls-innovate-cta {
		padding: 3.25rem 0 2.75rem;
	}
}

.bls-innovate-cta__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 600px) {
	.bls-innovate-cta__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-innovate-cta__inner {
		grid-template-columns: minmax(0, 73fr) minmax(0, 27fr);
		column-gap: 2.5rem;
		align-items: center;
	}
}

.bls-innovate-cta__content {
	margin: 0;
}

.bls-innovate-cta__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: rgba(255, 255, 255, 0.82);
	margin: 0 0 1rem;
}

.bls-innovate-cta__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--white);
	max-width: 640px;
	margin: 0 0 1rem;
}

.bls-innovate-cta__lead {
	font-size: 1.0625rem;
	line-height: 1.58;
	text-align: left;
	color: var(--wp--preset--color--white);
	max-width: 700px;
	margin: 0;
}

.bls-innovate-cta__action {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin: 0;
}

@media (min-width: 900px) {
	.bls-innovate-cta__action {
		justify-content: flex-end;
	}
}

.bls-innovate-cta__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem;
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--dark-blue);
	font-size: 1rem;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	border-radius: 9px;
	transition: box-shadow 0.2s ease, transform 0.2s ease, background-color 0.2s ease;
}

.bls-innovate-cta__button:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-innovate-cta__button:hover,
.bls-innovate-cta__button:focus-visible {
	background-color: var(--wp--preset--color--surface);
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
	transform: translateY(-2px);
}

/* ==========================================================================
   Paralegal Success Pledge page — full new build
   (/learners/paralegal-success-pledge/), plus four short cross-site
   callouts (Flexible Learning, New to Legal Study, Already Working in
   Law, Costs & Funding). Same architectural techniques already approved
   throughout this theme (deterministic CSS width, fr-based grids, no
   align:"wide", no wp:columns). Every selector below is scoped under a
   bls-pledge-* / bls-{page}-pledge-* namespace, entirely independent of
   every other section on these five pages.
   ========================================================================== */

/* Every wp:group block on this theme is saved with "layout":{"type":
   "default"}, which WordPress core renders at request time as
   "is-layout-flow"/"is-layout-constrained" and injects its own
   block-gap margin CSS (via block-supports/layout.php, wrapped in
   :where() so theme CSS can win on specificity), independent of
   anything in this stylesheet. This reset makes every descendant's
   var(--wp--style--block-gap, ...) resolve to 0 inside the remaining
   Pledge sections that still use wp:group wrappers, so only this
   theme's own deliberately-tuned margins take effect. The Eligibility/
   Engagement and Continued Support/Good To Know rows are NOT listed
   here any more: their outer wrapper markup (patterns/pledge-
   eligibility.php, patterns/pledge-continued.php) was rebuilt as a
   single wp:html block (see .bls-pledge-info-section below), which
   WordPress's block-supports layout system never processes at all, so
   there is nothing left for this reset to do for those two rows. */
.bls-pledge-hero,
.bls-pledge-provides,
.bls-pledge-process,
.bls-pledge-faq,
.bls-flexible-learning-pledge,
.bls-new-study-pledge,
.bls-working-law-pledge,
.bls-costs-funding-pledge {
	--wp--style--block-gap: 0;
}

/* Hero — text-led/icon-led, no photograph. Pale surface section
   background with a stronger pale Bright Blue panel on the right,
   matching the attached mock-up. */
.bls-pledge-hero {
	background-color: var(--wp--preset--color--surface);
	padding: 4.5rem 0;
}

@media (max-width: 599px) {
	.bls-pledge-hero {
		padding: 2.75rem 0;
	}
}

.bls-pledge-hero__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
}

@media (min-width: 600px) {
	.bls-pledge-hero__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 900px) {
	.bls-pledge-hero__inner {
		grid-template-columns: minmax(0, 58fr) minmax(0, 42fr);
		align-items: center;
		gap: 3rem;
	}
}

.bls-pledge-hero__content {
	margin: 0;
}

.bls-pledge-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-pledge-hero__heading {
	font-size: clamp(2.375rem, 2rem + 1.7vw, 3.125rem);
	line-height: 1.12;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-pledge-hero__lead {
	font-size: 1.0625rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	max-width: 560px;
	text-align: left;
	margin: 0;
}

.bls-pledge-hero__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.5rem;
	margin-top: 1.75rem;
}

.bls-pledge-hero__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 52px;
	padding: 0 1.75rem !important;
	font-weight: 700;
}

.bls-pledge-hero__secondary {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-pledge-hero__secondary:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-pledge-hero__secondary:hover,
.bls-pledge-hero__secondary:focus-visible {
	color: var(--wp--preset--color--purple);
	text-decoration: underline;
}

.bls-pledge-hero__panel {
	background-color: rgba(45, 172, 217, 0.1);
	border-radius: 16px;
	padding: 2.25rem;
}

.bls-pledge-hero__panel-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1.125rem;
}

.bls-pledge-hero__panel-icon svg {
	width: 23px;
	height: 23px;
}

.bls-pledge-hero__panel-heading {
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.875rem;
}

.bls-pledge-hero__panel-text {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* What The Pledge Provides — four white bordered icon cards, reusing
   the exact card technique already established across the site. */
.bls-pledge-provides {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-pledge-provides {
		padding: 2.75rem 0;
	}
}

.bls-pledge-provides__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-pledge-provides__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-pledge-provides__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-pledge-provides__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-pledge-provides__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-pledge-provides__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	margin: 0;
}

@media (min-width: 600px) {
	.bls-pledge-provides__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 1.75rem;
	}
}

@media (min-width: 960px) {
	.bls-pledge-provides__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-pledge-provides-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 14px;
	box-shadow: 0 3px 14px rgba(17, 24, 39, 0.05);
	padding: 1.5rem;
}

.bls-pledge-provides-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	flex: 0 0 44px;
	margin: 0 0 0.875rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-pledge-provides-card__icon svg {
	width: 21px;
	height: 21px;
}

.bls-pledge-provides-card__heading {
	font-size: 1.125rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-pledge-provides-card__body {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* Eligibility / Engagement two-column panel row. Pale Bright Blue and
   pale Gold tints reuse the exact values already established elsewhere
   on the site (patterns/retain-people-pathways.php; patterns/new-study-
   options.php and patterns/working-law-options.php's Apprenticeship
   panels). */
/* Shared two-column pale-panel row shape, used identically by the
   Eligibility/Engagement row (patterns/pledge-eligibility.php) and the
   Continued Support/Good To Know row (patterns/pledge-continued.php).
   Both rows' outer markup is now a single wp:html block (plain,
   static HTML with no wp:group wrapper at any level), so this is the
   ONLY layout rule governing their outer structure: WordPress's block-
   supports layout system never processes wp:html content, so no
   block-gap margin, no layout-support class, and no block-level
   "Minimum height" Dimensions attribute can ever be injected here,
   by construction, regardless of the WordPress version or how the
   Page is assembled in the editor. Content-driven height only. */
.bls-pledge-info-section {
	height: auto;
	min-height: 0;
	margin: 0;
	padding-block: 4.75rem;
}

/* Only the Eligibility/Engagement row carried a pale surface-tint
   section background previously (Continued Support/Good To Know did
   not); preserved here as a modifier so the shared base class doesn't
   change either row's existing background. */
.bls-pledge-info-section--tinted {
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-pledge-info-section {
		padding-block: 2.75rem;
	}
}

@media (min-width: 600px) and (max-width: 899px) {
	.bls-pledge-info-section {
		padding-block: 3.5rem;
	}
}

.bls-pledge-info-container {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-pledge-info-container {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-pledge-info-grid {
	height: auto;
	min-height: 0;
	margin: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
}

@media (min-width: 600px) {
	.bls-pledge-info-grid {
		gap: 1.75rem;
	}
}

@media (min-width: 900px) {
	.bls-pledge-info-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: start;
	}
}

.bls-pledge-eligibility__col {
	margin: 0;
	border-radius: 16px;
	padding: 2rem;
	display: flex;
	flex-direction: column;
}

.bls-pledge-eligibility__col--blue {
	background-color: rgba(45, 172, 217, 0.07);
}

.bls-pledge-eligibility__col--gold {
	background-color: rgba(223, 165, 56, 0.09);
}

.bls-pledge-eligibility__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-pledge-eligibility__heading {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.25;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.25rem;
}

.bls-pledge-eligibility__intro-text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1rem;
}

.bls-pledge-eligibility__list {
	list-style: none;
	margin: 0 0 1.25rem;
	padding: 0;
}

.bls-pledge-eligibility__list li {
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
	padding: 0.4rem 0;
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-pledge-eligibility__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	flex: 0 0 24px;
	margin-top: 0.05rem;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.18);
	color: var(--wp--preset--color--dark-blue);
}

.bls-pledge-eligibility__icon--gold {
	background-color: rgba(223, 165, 56, 0.22);
	color: #a87418;
}

.bls-pledge-eligibility__icon svg {
	width: 12px;
	height: 12px;
}

.bls-pledge-eligibility__note {
	font-size: 0.8125rem;
	line-height: 1.5;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* After Your Result — four-step horizontal process on desktop, stacked
   on mobile. */
.bls-pledge-process {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-pledge-process {
		padding: 2.75rem 0;
	}
}

.bls-pledge-process__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-pledge-process__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-pledge-process__intro {
	margin: 0 0 2.75rem;
	max-width: 760px;
}

.bls-pledge-process__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-pledge-process__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-pledge-process__steps {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 700px) {
	.bls-pledge-process__steps {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1100px) {
	.bls-pledge-process__steps {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-pledge-process__step {
	margin: 0;
}

.bls-pledge-process__step-top {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin: 0 0 0.875rem;
}

.bls-pledge-process__step-number {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
	font-size: 1.0625rem;
	font-weight: 700;
}

.bls-pledge-process__step-arrow {
	color: rgba(45, 172, 217, 0.5);
	font-size: 1.125rem;
}

@media (max-width: 1099px) {
	.bls-pledge-process__step-arrow {
		display: none;
	}
}

.bls-pledge-process__step-heading {
	display: block;
	font-size: 1.0625rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.375rem;
}

.bls-pledge-process__step-text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* Continued Support / Good To Know two-column panel row. Outer wrapper
   uses the shared .bls-pledge-info-section / .bls-pledge-info-container
   / .bls-pledge-info-grid classes defined above (same shape as the
   Eligibility / Engagement row); only the card-level classes below are
   specific to this row. */
.bls-pledge-continued__col {
	margin: 0;
	border-radius: 16px;
	padding: 2rem;
	display: flex;
	flex-direction: column;
}

.bls-pledge-continued__col--blue {
	background-color: rgba(45, 172, 217, 0.07);
}

.bls-pledge-continued__col--gold {
	background-color: rgba(223, 165, 56, 0.09);
}

.bls-pledge-continued__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-pledge-continued__heading {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.25;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1.125rem;
}

.bls-pledge-continued__text {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1rem;
}

.bls-pledge-continued__text:last-of-type {
	margin-bottom: 0;
}

.bls-pledge-continued__fee-note {
	margin-top: 1.25rem;
}

/* FAQ + final CTA two-column row. FAQ reuses the exact native
   <details>/<summary> technique already established on
   patterns/recruit-talent-faq.php and patterns/retain-people-faq.php. */
.bls-pledge-faq {
	padding: 4.75rem 0;
}

@media (max-width: 599px) {
	.bls-pledge-faq {
		padding: 2.75rem 0;
	}
}

.bls-pledge-faq__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
}

@media (min-width: 600px) {
	.bls-pledge-faq__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 960px) {
	.bls-pledge-faq__inner {
		grid-template-columns: minmax(0, 64fr) minmax(0, 36fr);
		align-items: start;
	}
}

.bls-pledge-faq__col {
	margin: 0;
}

.bls-pledge-faq__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-pledge-faq__heading {
	font-size: clamp(2.375rem, 2rem + 1.5vw, 2.875rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 2rem;
}

.bls-pledge-faq__list {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.bls-pledge-faq__item {
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 10px;
	padding: 0 1.25rem;
}

.bls-pledge-faq__item[open] {
	background-color: var(--wp--preset--color--surface);
}

.bls-pledge-faq__question {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	padding: 1rem 0;
	font-size: 1rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	cursor: pointer;
	list-style: none;
}

.bls-pledge-faq__question::-webkit-details-marker {
	display: none;
}

.bls-pledge-faq__question::after {
	content: "+";
	flex: 0 0 auto;
	font-size: 1.25rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	transition: transform 0.2s ease;
}

.bls-pledge-faq__item[open] .bls-pledge-faq__question::after {
	content: "\2212";
}

.bls-pledge-faq__question:focus-visible {
	outline: 2px solid var(--wp--preset--color--dark-blue);
	outline-offset: 2px;
	border-radius: 4px;
}

.bls-pledge-faq__answer {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: #4b5563;
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-pledge-faq__cta {
	background-color: rgba(45, 172, 217, 0.1);
	border-radius: 16px;
	padding: 2rem;
}

.bls-pledge-faq__cta-label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-pledge-faq__cta-heading {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.25;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.875rem;
}

.bls-pledge-faq__cta-text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.5rem;
}

.bls-pledge-faq__cta-button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.5rem !important;
	font-weight: 700;
	margin: 0 0 1.5rem;
}

.bls-pledge-faq__disclaimer {
	display: flex;
	align-items: flex-start;
	gap: 0.625rem;
	padding-top: 1.25rem;
	border-top: 1px solid rgba(45, 172, 217, 0.25);
}

.bls-pledge-faq__disclaimer-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 22px;
	width: 22px;
	height: 22px;
	color: var(--wp--preset--color--dark-blue);
	margin-top: 0.1rem;
}

.bls-pledge-faq__disclaimer-icon svg {
	width: 15px;
	height: 15px;
}

.bls-pledge-faq__disclaimer-text p {
	font-size: 0.8125rem;
	line-height: 1.5;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* Flexible Learning / New to Legal Study / Already Working in Law /
   Costs & Funding pledge callouts. Four independently-scoped compact
   sections sharing a similar icon-plus-content composition, each
   sized to its own page's rhythm. */
.bls-flexible-learning-pledge,
.bls-new-study-pledge,
.bls-working-law-pledge,
.bls-costs-funding-pledge {
	padding: 3.5rem 0;
}

@media (max-width: 599px) {

	.bls-flexible-learning-pledge,
	.bls-new-study-pledge,
	.bls-working-law-pledge,
	.bls-costs-funding-pledge {
		padding: 2.25rem 0;
	}
}

.bls-flexible-learning-pledge__inner,
.bls-new-study-pledge__inner,
.bls-working-law-pledge__inner,
.bls-costs-funding-pledge__inner {
	width: min(calc(100% - 40px), 1000px);
	margin-inline: auto;
	background-color: rgba(45, 172, 217, 0.07);
	border-radius: 16px;
	padding: 2rem;
	display: flex;
	align-items: flex-start;
	gap: 1.25rem;
}

@media (min-width: 600px) {

	.bls-flexible-learning-pledge__inner,
	.bls-new-study-pledge__inner,
	.bls-working-law-pledge__inner,
	.bls-costs-funding-pledge__inner {
		width: min(calc(100% - 64px), 1000px);
	}
}

@media (max-width: 479px) {

	.bls-flexible-learning-pledge__inner,
	.bls-new-study-pledge__inner,
	.bls-working-law-pledge__inner,
	.bls-costs-funding-pledge__inner {
		flex-direction: column;
	}
}

.bls-flexible-learning-pledge__icon,
.bls-new-study-pledge__icon,
.bls-working-law-pledge__icon,
.bls-costs-funding-pledge__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--dark-blue);
}

.bls-flexible-learning-pledge__icon svg,
.bls-new-study-pledge__icon svg,
.bls-working-law-pledge__icon svg,
.bls-costs-funding-pledge__icon svg {
	width: 21px;
	height: 21px;
}

.bls-flexible-learning-pledge__content,
.bls-new-study-pledge__content,
.bls-working-law-pledge__content,
.bls-costs-funding-pledge__content {
	margin: 0;
	flex: 1 1 auto;
}

.bls-flexible-learning-pledge__label,
.bls-costs-funding-pledge__label {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.625rem;
}

.bls-flexible-learning-pledge__heading,
.bls-new-study-pledge__heading,
.bls-working-law-pledge__heading,
.bls-costs-funding-pledge__heading {
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-flexible-learning-pledge__text,
.bls-new-study-pledge__text,
.bls-working-law-pledge__text,
.bls-costs-funding-pledge__text {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

.bls-costs-funding-pledge__note {
	font-size: 0.875rem;
	line-height: 1.5;
	color: #4b5563;
	text-align: left;
	margin: 0.75rem 0 0;
}

.bls-flexible-learning-pledge__cta,
.bls-costs-funding-pledge__cta {
	margin: 1rem 0 0;
}

.bls-flexible-learning-pledge__cta-link,
.bls-costs-funding-pledge__cta-link,
.bls-new-study-pledge__link,
.bls-working-law-pledge__link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
	white-space: nowrap;
}

.bls-flexible-learning-pledge__cta-link:visited,
.bls-costs-funding-pledge__cta-link:visited,
.bls-new-study-pledge__link:visited,
.bls-working-law-pledge__link:visited {
	color: var(--wp--preset--color--dark-blue);
}

.bls-flexible-learning-pledge__cta-link:hover,
.bls-flexible-learning-pledge__cta-link:focus-visible,
.bls-costs-funding-pledge__cta-link:hover,
.bls-costs-funding-pledge__cta-link:focus-visible,
.bls-new-study-pledge__link:hover,
.bls-new-study-pledge__link:focus-visible,
.bls-working-law-pledge__link:hover,
.bls-working-law-pledge__link:focus-visible {
	color: var(--wp--preset--color--purple);
	text-decoration: underline;
}

/* ==========================================================================
   Shared policy/information page component (founder-approved policy
   pack round). One consistent long-form, plain-typographic legal-
   document presentation, reused by all five founder-approved policy
   pages: Privacy Policy (patterns/privacy-policy-content.php), Cookie
   Policy (patterns/cookie-policy-content.php), Accessibility Statement
   (patterns/accessibility-statement-content.php), Website Information
   and Disclaimer (patterns/website-information-disclaimer-content.php)
   and Safeguarding and Online Safety Statement (patterns/safeguarding-
   online-safety-content.php). Deliberately shared as ONE component
   rather than five duplicated per-page class families, per this
   round's explicit instruction ("create/reuse a sensible shared
   policy-page styling system rather than duplicating large blocks of
   CSS five times"), superseding the previous rounds' separate
   .bls-privacy__* and .bls-terms__* class families (both removed; the
   Terms and Conditions page/pattern/template no longer exist at all,
   since the founder-approved pack does not include a Terms and
   Conditions document). Comfortable 840px reading width (within the
   requested 760-900px range), strong H1/H2 hierarchy, semantic lists.
   Links inherit the theme's global link styling (theme.json styles.
   elements.link) with no override. Anchor-jump targets reuse the
   existing site-wide `section[id] { scroll-margin-top }` rule defined
   earlier in this file. */
.bls-policy {
	padding: 4rem 0 5rem;
}

@media (max-width: 599px) {
	.bls-policy {
		padding: 2.75rem 0 3.5rem;
	}
}

.bls-policy__inner {
	width: min(calc(100% - 40px), 840px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-policy__inner {
		width: min(calc(100% - 64px), 840px);
	}
}

.bls-policy__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-policy__h1 {
	font-size: clamp(2.375rem, 2rem + 1.6vw, 3.125rem);
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.75rem;
}

.bls-policy__h2 {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1rem;
}

.bls-policy__lead {
	font-size: 1.0625rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1rem;
}

.bls-policy__toc {
	background-color: var(--wp--preset--color--surface);
	border-radius: 14px;
	padding: 1.5rem 1.75rem;
	margin: 1.5rem 0 3rem;
}

.bls-policy__toc-label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.875rem;
}

.bls-policy__toc-list {
	columns: 1;
	column-gap: 2rem;
	margin: 0;
	padding-left: 1.25rem;
	font-size: 0.9375rem;
	line-height: 1.9;
}

@media (min-width: 600px) {
	.bls-policy__toc-list {
		columns: 2;
	}
}

.bls-policy__toc-list li {
	break-inside: avoid;
}

.bls-policy__body section {
	margin: 0 0 2.75rem;
}

.bls-policy__body section:last-of-type {
	margin-bottom: 2rem;
}

.bls-policy__body h3 {
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.4;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 1.25rem 0 0.625rem;
}

.bls-policy__body p {
	font-size: 1rem;
	line-height: 1.65;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1rem;
}

.bls-policy__body p:last-child {
	margin-bottom: 0;
}

.bls-policy__body ul,
.bls-policy__body ol.bls-policy__sublist {
	margin: 0 0 1rem;
	padding-left: 1.375rem;
}

.bls-policy__body ul:last-child,
.bls-policy__body ol.bls-policy__sublist:last-child {
	margin-bottom: 0;
}

.bls-policy__body li {
	font-size: 1rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-policy__body li:last-child {
	margin-bottom: 0;
}

.bls-policy__updated {
	font-size: 0.9375rem;
	font-weight: 700;
	color: #4b5563;
	text-align: left;
	padding-top: 1.5rem;
	border-top: 1px solid rgba(140, 147, 160, 0.3);
	margin: 0;
}

/* Terms & Conditions page — legacy-link block. Deliberately understated
   and visually secondary to the current Terms of Use: same muted grey
   (#4b5563) and top-divider treatment as .bls-policy__updated above,
   smaller heading, no card/box styling. Independent .bls-terms-legacy*
   namespace, used only on patterns/terms-and-conditions-content.php. */
.bls-terms-legacy {
	margin-top: 2rem;
	padding-top: 1.5rem;
	border-top: 1px solid rgba(140, 147, 160, 0.3);
}

.bls-terms-legacy__heading {
	font-size: 0.9375rem;
	font-weight: 700;
	color: #4b5563;
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-terms-legacy__text {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: #4b5563;
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-terms-legacy__link {
	font-size: 0.9375rem;
	font-weight: 600;
	color: #4b5563;
	text-decoration: underline;
}

.bls-terms-legacy__link:hover,
.bls-terms-legacy__link:focus-visible {
	color: var(--wp--preset--color--dark-blue);
}

/* ==========================================================================
   Start a Conversation page (/start-a-conversation/) — new build. This
   route already had eight approved CTAs pointing to it across the
   Collaboration journey (patterns/collab-hero.php, collab-final-cta.php,
   cocreate-hero.php, cocreate-cta.php, innovate-hero.php, innovate-cta.php,
   subcontract-hero.php, subcontract-cta.php) but no destination page had
   ever been built, so the published WordPress Page record (blank content)
   fell back to templates/page.html and rendered nothing between the
   header and footer. Entirely independent selectors under
   bls-start-conversation, structurally similar to the established
   .bls-talk-form__* pattern (same box-sizing:border-box defence on every
   input so two-column field rows cannot overlap under this theme's
   default content-box sizing) but not sharing its selectors, and
   deliberately simpler: a single centred column (no hero photograph, no
   phone/call-back block), since 01-Project/02-Website-Specification/
   06-Forms-and-Booking.md Section 5 explicitly documents Start a
   Conversation as "a written enquiry journey" distinct from Talk to Us's
   phone-first options. */
.bls-start-conversation {
	padding: 4rem 0 5rem;
}

@media (max-width: 599px) {
	.bls-start-conversation {
		padding: 2.5rem 0 3rem;
	}
}

.bls-start-conversation__inner {
	width: min(calc(100% - 40px), 720px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-start-conversation__inner {
		width: min(calc(100% - 64px), 720px);
	}
}

.bls-start-conversation__intro {
	margin: 0 0 2rem;
}

.bls-start-conversation__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-start-conversation__h1 {
	font-size: clamp(2.125rem, 1.85rem + 1.4vw, 2.75rem);
	font-weight: 700;
	line-height: 1.15;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0;
}

.bls-start-conversation__panel {
	margin: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.35);
	border-radius: 15px;
	padding: 2rem;
}

@media (max-width: 599px) {
	.bls-start-conversation__panel {
		padding: 1.5rem;
	}
}

.bls-start-conversation__required-note {
	font-size: 0.875rem;
	color: #4b5563;
	margin: 0 0 1.125rem;
	text-align: left;
}

.bls-start-conversation__form {
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin: 0;
}

.bls-start-conversation-field-row {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 20px;
	margin: 0;
}

@media (min-width: 520px) {
	.bls-start-conversation-field-row {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.bls-start-conversation-field {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	margin: 0;
	min-width: 0;
	max-width: 100%;
}

.bls-start-conversation-field__label {
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
}

.bls-start-conversation-field__hint {
	font-weight: 400;
	color: #4b5563;
	font-size: 0.875rem;
	margin-left: 0.25rem;
}

.bls-start-conversation-field__input {
	display: block;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	min-height: 48px;
	padding: 0 1rem;
	border: 1px solid rgba(140, 147, 160, 0.5);
	border-radius: 8px;
	font-family: inherit;
	font-size: 1rem;
	color: var(--wp--preset--color--dark-text);
	background-color: var(--wp--preset--color--white);
	transition: border-color 0.2s ease;
}

.bls-start-conversation-field__input:focus {
	border-color: var(--wp--preset--color--dark-blue);
}

.bls-start-conversation-field__select {
	appearance: auto;
}

.bls-start-conversation-field__textarea {
	min-height: 120px;
	padding: 0.75rem 1rem;
	resize: vertical;
}

.bls-start-conversation-field__note {
	font-size: 0.8125rem;
	line-height: 1.5;
	color: #4b5563;
	margin: 0.5rem 0 0;
	text-align: left;
}

.bls-start-conversation__submit {
	width: 100%;
	justify-content: center;
	min-height: 50px;
	padding: 0 2rem;
	font-weight: 700;
	gap: 0.5rem;
}

.bls-start-conversation__privacy {
	font-size: 0.8125rem;
	line-height: 1.5;
	color: #4b5563;
	margin: 0.5rem 0 0;
	text-align: left;
}

/* ==========================================================================
   Start a Conversation page — visual-quality refinement (round 2). Three
   new sections (hero, pale-blue reassurance panel, two-column form
   section) replace the single eyebrow+H1+form pattern from the previous
   round, bringing the page's rhythm and depth in line with the Talk to
   Us page (bls-talk-hero, bls-talk-contact, bls-talk-form) while staying
   entirely independent: no selector below is shared with any bls-talk-*
   class. The previous round's .bls-start-conversation__eyebrow / __h1 /
   __inner / __intro rules (used only by the now-unreferenced
   patterns/start-a-conversation-content.php) are left in place below,
   unused, per this theme's established practice of not deleting CSS or
   pattern files tied to a superseded-but-undeleted pattern. The field-
   level rules further below (.bls-start-conversation__panel,
   __required-note, __form, -field-row, -field, -field__*, __submit,
   __privacy) are UNCHANGED and are now used by the new
   start-a-conversation-form.php pattern instead — nothing in that block
   was edited, so the form's own appearance and behaviour are identical
   to the previous round. */

/* --- Hero (patterns/start-a-conversation-hero.php) --- */
.bls-start-conv-hero {
	padding: 4rem 0 3.25rem;
}

@media (max-width: 599px) {
	.bls-start-conv-hero {
		padding: 2.5rem 0 2rem;
	}
}

.bls-start-conv-hero__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-start-conv-hero__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-start-conv-hero__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-start-conv-hero__heading {
	font-size: clamp(2.375rem, 2rem + 1.6vw, 3.125rem);
	font-weight: 700;
	line-height: 1.1;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	max-width: 760px;
	margin: 0 0 1.125rem;
}

.bls-start-conv-hero__lead {
	font-size: 1.0625rem;
	line-height: 1.6;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	max-width: 700px;
	margin: 0;
}

/* --- Reassurance panel (patterns/start-a-conversation-context.php) --- */
.bls-start-conv-context {
	padding: 0 0 2.5rem;
}

@media (max-width: 599px) {
	.bls-start-conv-context {
		padding: 0 0 1.75rem;
	}
}

.bls-start-conv-context__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-start-conv-context__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-start-conv-context__panel {
	background-color: rgba(45, 172, 217, 0.07);
	border: 1px solid rgba(45, 172, 217, 0.28);
	border-radius: 16px;
	padding: 2rem;
}

@media (min-width: 768px) {
	.bls-start-conv-context__panel {
		padding: 2.75rem 3rem;
	}
}

.bls-start-conv-context__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.75rem;
}

.bls-start-conv-context__heading {
	font-size: clamp(1.375rem, 1.15rem + 0.9vw, 1.75rem);
	font-weight: 700;
	line-height: 1.2;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.75rem;
}

.bls-start-conv-context__lead {
	font-size: 0.9375rem;
	line-height: 1.55;
	text-align: left;
	color: #4b5563;
	max-width: 620px;
	margin: 0 0 1.75rem;
}

.bls-start-conv-context__items {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1.25rem;
}

@media (min-width: 640px) {
	.bls-start-conv-context__items {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 1.5rem;
	}
}

.bls-start-conv-context__item {
	display: flex;
	align-items: center;
	gap: 0.875rem;
	min-width: 0;
}

.bls-start-conv-context__item-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-start-conv-context__item-icon svg {
	width: 20px;
	height: 20px;
}

.bls-start-conv-context__item-label {
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.35;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

/* --- Main enquiry section (patterns/start-a-conversation-form.php) --- */
.bls-start-conv-form-section {
	padding: 0.5rem 0 5rem;
}

@media (max-width: 599px) {
	.bls-start-conv-form-section {
		padding: 0.25rem 0 3rem;
	}
}

.bls-start-conv-form-section__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
}

@media (min-width: 600px) {
	.bls-start-conv-form-section__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 960px) {
	.bls-start-conv-form-section__inner {
		grid-template-columns: minmax(260px, 32fr) minmax(0, 68fr);
		column-gap: 4rem;
		align-items: start;
	}
}

.bls-start-conv-form-section__intro {
	margin: 0;
}

.bls-start-conv-form-section__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-start-conv-form-section__heading {
	font-size: clamp(1.75rem, 1.55rem + 1vw, 2.25rem);
	font-weight: 700;
	line-height: 1.2;
	text-align: left;
	color: var(--wp--preset--color--dark-text);
	max-width: 380px;
	margin: 0 0 1.75rem;
}

.bls-start-conv-form-section__reasons {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}

.bls-start-conv-form-section__reason {
	margin: 0;
	padding: 1.125rem 0 0;
	border-top: 1px solid rgba(140, 147, 160, 0.3);
}

.bls-start-conv-form-section__reason:first-child {
	padding-top: 0;
	border-top: none;
}

.bls-start-conv-form-section__reason-label {
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.375rem;
}

.bls-start-conv-form-section__reason-text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* ==========================================================================
   Public enquiry form submission feedback. Shared, cross-form styling used
   by the brightlink-law-school/enquiry-form dynamic block
   (inc/enquiry-forms.php) on the Talk to Us, Start a Conversation and
   CILEX Registration Support forms: the success / error notice banner,
   per-field error text, invalid-field emphasis and the off-screen
   honeypot. Every existing form-layout rule above is unchanged; this is
   the only style addition for the live-form-backend round. */
.bls-form-notice {
	border-radius: 12px;
	padding: 1rem 1.25rem;
	margin: 0 0 1.5rem;
	font-size: 0.9375rem;
	line-height: 1.55;
}

.bls-form-notice:focus {
	outline: 2px solid var(--wp--preset--color--dark-blue);
	outline-offset: 3px;
}

.bls-form-notice--success {
	background-color: rgba(45, 172, 217, 0.1);
	border: 1px solid rgba(45, 172, 217, 0.45);
	color: var(--wp--preset--color--dark-text);
}

.bls-form-notice--error {
	background-color: #fdecec;
	border: 1px solid #c23934;
	color: #7a1c16;
}

.bls-form-notice__title {
	font-weight: 700;
	margin: 0;
}

.bls-form-notice__list {
	margin: 0.5rem 0 0;
	padding-left: 1.25rem;
}

.bls-form-notice__list li {
	margin: 0.25rem 0;
}

.bls-form-notice--error a {
	color: inherit;
}

.bls-form-field-error {
	color: #b42318;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.45;
	margin: 0.4rem 0 0;
	text-align: left;
}

.bls-talk-field__input[aria-invalid="true"],
.bls-cilex-field__input[aria-invalid="true"],
.bls-start-conversation-field__input[aria-invalid="true"] {
	border-color: #c23934;
}

.bls-talk-form__form[id],
.bls-cilex-form__form[id],
.bls-start-conversation__form[id] {
	scroll-margin-top: 2rem;
}

.bls-form-hp {
	position: absolute !important;
	left: -9999px !important;
	top: auto !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

/* ==========================================================================
   CILEX Course Fees page (/learners/costs-funding/cilex-course-fees/) -
   new secondary learner detail page, full new build. A separate detail
   page behind the main Costs & Funding page, not a flagship navigation
   destination. Reuses the theme's established deterministic-width,
   pale-blue-table and .bls-cilex-fee-note conventions already proven on
   patterns/costs-funding-fees.php, under entirely new page-scoped
   selectors (apart from the two documented, deliberate reuses:
   .bls-costs-funding-fees__table-scroll and .bls-cilex-fee-note, both
   already shared components).
   ========================================================================== */

/* --- Hero / intro (patterns/cilex-course-fees-hero.php) --- */
.bls-cilex-course-fees-hero {
	padding: 3.5rem 0 3rem;
}

@media (max-width: 599px) {
	.bls-cilex-course-fees-hero {
		padding: 2.25rem 0 2rem;
	}
}

.bls-cilex-course-fees-hero__inner {
	width: min(calc(100% - 40px), 900px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-cilex-course-fees-hero__inner {
		width: min(calc(100% - 64px), 900px);
	}
}

.bls-cilex-course-fees-hero__back {
	margin: 0 0 1.25rem;
}

.bls-cilex-course-fees-hero__back a {
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-cilex-course-fees-hero__back a:hover,
.bls-cilex-course-fees-hero__back a:focus-visible {
	text-decoration: underline;
}

.bls-cilex-course-fees-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-cilex-course-fees-hero__heading {
	font-size: clamp(2.375rem, 2rem + 1.6vw, 3.125rem);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-cilex-course-fees-hero__lead {
	font-size: 1.0625rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-cilex-course-fees-hero__sublead {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* --- Shared section intro (CPQ + CGQ) --- */
.bls-cilex-course-fees-cpq,
.bls-cilex-course-fees-cgq {
	padding: 1.5rem 0 3rem;
}

@media (max-width: 599px) {
	.bls-cilex-course-fees-cpq,
	.bls-cilex-course-fees-cgq {
		padding: 1rem 0 2rem;
	}
}

.bls-cilex-course-fees-cpq__inner,
.bls-cilex-course-fees-cgq__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-cilex-course-fees-cpq__inner,
	.bls-cilex-course-fees-cgq__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-cilex-course-fees-cpq__intro,
.bls-cilex-course-fees-cgq__intro {
	margin: 0 0 1.75rem;
	max-width: 760px;
}

.bls-cilex-course-fees-cpq__label,
.bls-cilex-course-fees-cgq__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.75rem;
}

.bls-cilex-course-fees-cpq__heading,
.bls-cilex-course-fees-cgq__heading {
	font-size: clamp(1.625rem, 1.4rem + 1vw, 2rem);
	font-weight: 700;
	line-height: 1.2;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.625rem;
}

.bls-cilex-course-fees-cpq__lead,
.bls-cilex-course-fees-cgq__lead {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* --- Summary cards (headline position at a glance, no scrolling of any
   kind involved) --- */
.bls-cilex-course-fees-cpq__summary-grid,
.bls-cilex-course-fees-cgq__summary-grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1.25rem;
	margin: 0 0 2.25rem;
}

@media (min-width: 640px) {
	.bls-cilex-course-fees-cpq__summary-grid,
	.bls-cilex-course-fees-cgq__summary-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bls-cilex-course-fees-cpq__summary-card,
.bls-cilex-course-fees-cgq__summary-card {
	min-width: 0;
	background-color: rgba(45, 172, 217, 0.07);
	border: 1px solid rgba(45, 172, 217, 0.28);
	border-radius: 14px;
	padding: 1.25rem 1.5rem;
	text-align: left;
}

.bls-cilex-course-fees-cpq__summary-label,
.bls-cilex-course-fees-cgq__summary-label {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.5rem;
	font-size: 0.875rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.375rem;
}

.bls-cilex-course-fees-cpq__summary-price,
.bls-cilex-course-fees-cgq__summary-price {
	font-size: 1.75rem;
	font-weight: 700;
	line-height: 1.15;
	color: var(--wp--preset--color--dark-blue);
	margin: 0;
}

/* --- Detail stack: every detailed CPQ stage / CGQ pathway is a separate,
   always-full-width card. Never placed side by side, so a card is always
   as wide as the page content column and never needs to force its
   content narrower than it can comfortably read. --- */
.bls-cilex-course-fees-cpq__stack,
.bls-cilex-course-fees-cgq__stack {
	display: flex;
	flex-direction: column;
	gap: 1.75rem;
}

.bls-cilex-course-fees-cpq__card,
.bls-cilex-course-fees-cgq__card {
	min-width: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.3);
	border-radius: 14px;
	padding: 1.75rem;
}

@media (min-width: 640px) {
	.bls-cilex-course-fees-cpq__card,
	.bls-cilex-course-fees-cgq__card {
		padding: 2rem 2.25rem;
	}
}

.bls-cilex-course-fees-cpq__card-heading {
	font-size: 1.1875rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.125rem;
}

.bls-cilex-course-fees-cgq__card-heading {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	gap: 0.5rem;
	font-size: 1.1875rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-cilex-course-fees-cpq__route-tag,
.bls-cilex-course-fees-cgq__route-tag {
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	background-color: rgba(45, 172, 217, 0.12);
	border-radius: 999px;
	padding: 0.2rem 0.6rem;
}

.bls-cilex-course-fees-cgq__specialisms-lead {
	font-size: 0.875rem;
	font-weight: 600;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-cilex-course-fees-cgq__specialisms-list {
	margin: 0 0 1.25rem;
	padding-left: 1.25rem;
	font-size: 0.875rem;
	line-height: 1.6;
	color: #4b5563;
}

.bls-cilex-course-fees-cgq__specialisms-list li {
	margin: 0 0 0.2rem;
}

/* --- Fee rows: description list, not a table. Every row is a CSS grid
   with a flexible, wrapping label column (minmax(0, 1fr)) and a fixed
   price column (120px, comfortably inside the brief's 100-130px range),
   so the price is always simultaneously visible with its label at any
   viewport width and NOTHING on this page ever needs horizontal
   scrolling to be read: minmax(0, 1fr) lets the label column shrink and
   wrap freely without ever forcing the row wider than its container,
   which is what a <table>'s intrinsic content-width auto-sizing was
   doing before (a real <table> cannot be told "wrap this column and
   never let the row exceed its container" without either fixing a
   table-layout that then clips long names, or letting the browser widen
   the table past its box, which is exactly the horizontal-scroll defect
   this redesign removes). Shared verbatim by CPQ and CGQ: both patterns'
   markup uses these same bls-cilex-course-fees-cpq__rows/__row/
   __row--total/__group-label classes directly (see
   patterns/cilex-course-fees-cgq.php's own docblock), rather than each
   defining its own identical copy, so only one set of selectors exists
   below. */
.bls-cilex-course-fees-cpq__rows {
	margin: 0;
}

.bls-cilex-course-fees-cpq__row {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 120px;
	column-gap: 1rem;
	align-items: start;
	padding: 0.75rem 0;
	border-top: 1px solid rgba(140, 147, 160, 0.25);
}

.bls-cilex-course-fees-cpq__rows > div:first-child {
	border-top: none;
}

.bls-cilex-course-fees-cpq__row dt {
	min-width: 0;
	margin: 0;
	font-size: 0.9375rem;
	font-weight: 600;
	line-height: 1.45;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	overflow-wrap: break-word;
}

.bls-cilex-course-fees-cpq__row dd {
	margin: 0;
	font-size: 0.9375rem;
	font-weight: 700;
	line-height: 1.45;
	color: var(--wp--preset--color--dark-blue);
	text-align: right;
	white-space: nowrap;
}

/* Full-width subsection band ("All mandatory units", "Plus one optional
   unit below", etc., CPQ only) - a plain paragraph BETWEEN two <dl> row
   groups, never a dt/dd squeezed into a narrow cell, and never an orphan
   <dt> with no matching <dd> (which a group-only row inside a <dl> would
   otherwise be). */
.bls-cilex-course-fees-cpq__group-label {
	background-color: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--dark-blue);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	text-align: left;
	border-radius: 8px;
	margin: 1.25rem 0 0.5rem;
	padding: 0.5rem 0.875rem;
}

.bls-cilex-course-fees-cpq__card-heading + .bls-cilex-course-fees-cpq__group-label {
	margin-top: 0;
}

.bls-cilex-course-fees-cpq__row--total {
	margin-top: 0.5rem;
	padding: 1rem 0;
	border-top: 2px solid rgba(45, 172, 217, 0.35);
}

.bls-cilex-course-fees-cpq__row--total dt {
	font-weight: 700;
}

.bls-cilex-course-fees-cpq__row--total dd {
	font-size: 1.0625rem;
}

/* Options nested inside a "choose 1 option from either" row's label
   (CGQ Route 1 only). Still inside the flexible minmax(0, 1fr) label
   column, so it wraps with it rather than forcing the row wider. */
.bls-cilex-course-fees-cgq__option-list {
	margin: 0.4rem 0 0;
	padding-left: 1.125rem;
	font-size: 0.8125rem;
	font-weight: 400;
	line-height: 1.5;
	color: #4b5563;
}

.bls-cilex-course-fees-cgq__option-list li {
	margin: 0 0 0.15rem;
}

/* Narrow phones: keep the same two-column grid (it already never causes
   horizontal scrolling at any width, since the label column is
   minmax(0, ...) and simply wraps more), just tighten the price column
   and spacing so long labels get a little more breathing room. */
@media (max-width: 420px) {
	.bls-cilex-course-fees-cpq__row {
		grid-template-columns: minmax(0, 1fr) 84px;
		column-gap: 0.625rem;
	}

	.bls-cilex-course-fees-cpq__card,
	.bls-cilex-course-fees-cgq__card {
		padding: 1.25rem;
	}
}

/* --- Notes: CILEX disclosure + third-party costs + payment summary
   (patterns/cilex-course-fees-notes.php) --- */
.bls-cilex-course-fees-notes {
	padding: 1rem 0 3.5rem;
}

@media (max-width: 599px) {
	.bls-cilex-course-fees-notes {
		padding: 0.5rem 0 2.5rem;
	}
}

.bls-cilex-course-fees-notes__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-cilex-course-fees-notes__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-cilex-course-fees-notes__grid {
	display: flex;
	flex-direction: column;
	gap: 1.75rem;
	margin: 1.75rem 0 0;
	background-color: var(--wp--preset--color--surface);
	border-radius: 14px;
	padding: 1.75rem;
}

@media (min-width: 768px) {
	.bls-cilex-course-fees-notes__grid {
		flex-direction: row;
		padding: 2.25rem 2.5rem;
	}
}

.bls-cilex-course-fees-notes__col {
	flex: 1 1 50%;
	min-width: 0;
	margin: 0;
}

.bls-cilex-course-fees-notes__divider {
	display: none;
}

@media (min-width: 768px) {
	.bls-cilex-course-fees-notes__divider {
		display: block;
		align-self: stretch;
		flex: 0 0 1px;
		width: 1px;
		background-color: rgba(140, 147, 160, 0.35);
	}
}

.bls-cilex-course-fees-notes__heading {
	font-size: 1.0625rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.625rem;
}

.bls-cilex-course-fees-notes__text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

.bls-cilex-course-fees-notes__link {
	margin: 0.75rem 0 0;
}

.bls-cilex-course-fees-notes__link a {
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: underline;
}

.bls-cilex-course-fees-notes__link a:hover,
.bls-cilex-course-fees-notes__link a:focus-visible {
	color: var(--wp--preset--color--bright-blue);
}

/* --- Closing CTA (patterns/cilex-course-fees-cta.php), modelled on
   patterns/costs-funding-cta.php under independent selectors --- */
.bls-cilex-course-fees-cta {
	padding: 1rem 0 5rem;
}

@media (max-width: 599px) {
	.bls-cilex-course-fees-cta {
		padding: 0.5rem 0 3rem;
	}
}

.bls-cilex-course-fees-cta__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	background-color: var(--wp--preset--color--surface);
	border-radius: 16px;
	padding: 2.5rem;
	display: flex;
	flex-direction: column;
	gap: 1.75rem;
}

@media (min-width: 600px) {
	.bls-cilex-course-fees-cta__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 768px) {
	.bls-cilex-course-fees-cta__inner {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		padding: 3rem 3.5rem;
		gap: 2.5rem;
	}
}

.bls-cilex-course-fees-cta__main {
	margin: 0;
	max-width: 560px;
}

.bls-cilex-course-fees-cta__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.75rem;
}

.bls-cilex-course-fees-cta__heading {
	font-size: clamp(1.625rem, 1.4rem + 1vw, 2rem);
	font-weight: 700;
	line-height: 1.2;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-cilex-course-fees-cta__lead {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-cilex-course-fees-cta__actions {
	margin: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1rem;
	flex-shrink: 0;
}

.bls-cilex-course-fees-cta__action {
	margin: 0;
}

.bls-cilex-course-fees-cta__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.75rem;
	border-radius: 8px;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
}

.bls-cilex-course-fees-cta__button:hover,
.bls-cilex-course-fees-cta__button:focus-visible {
	background-color: var(--wp--preset--color--bright-blue);
}

.bls-cilex-course-fees-cta__phone {
	margin: 0;
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.9375rem;
}

.bls-cilex-course-fees-cta__phone a {
	color: var(--wp--preset--color--dark-text);
	font-weight: 600;
	text-decoration: none;
}

.bls-cilex-course-fees-cta__phone a:hover,
.bls-cilex-course-fees-cta__phone a:focus-visible {
	text-decoration: underline;
}

.bls-cilex-course-fees-cta__phone-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 32px;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-cilex-course-fees-cta__phone-icon svg {
	width: 15px;
	height: 15px;
}

/* ==========================================================================
   Employer Partnership Programme page (/employers/employer-partnership-
   programme/) - new secondary Employer destination, full new build. Not
   a primary navigation page. Reuses the theme's established
   deterministic-width, pale-blue-panel and pale-gold-panel conventions
   throughout, under entirely new page-scoped selectors. Two media areas
   (hero, testimonial) use a shared, clearly labelled placeholder
   treatment instead of a real photograph, per the approved brief - no
   generated, downloaded or mock-up-extracted image has been used
   anywhere in this build.
   ========================================================================== */

/* --- Hero (patterns/employer-partnership-hero.php), grid-split
   footprint modelled on .bls-employer-hero --- */
.bls-employer-partnership-hero {
	position: relative;
	display: grid;
	grid-template-columns: minmax(340px, 1fr) minmax(340px, 1fr);
	align-items: stretch;
	min-height: 520px;
}

@media (max-width: 899px) {
	.bls-employer-partnership-hero {
		display: block;
		min-height: 0;
	}
}

.bls-employer-partnership-hero__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: center;
	margin: 0;
	padding: 3rem 2.5rem 3rem max(2rem, calc((100vw - 1200px) / 2 + 2rem));
}

@media (max-width: 899px) {
	.bls-employer-partnership-hero__content {
		padding: 3rem 24px 2.5rem;
	}
}

.bls-employer-partnership-hero__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-employer-partnership-hero__heading {
	font-size: clamp(2.375rem, 2rem + 1.8vw, 3.25rem);
	line-height: 1.1;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	max-width: 560px;
	text-align: left;
	margin: 0 0 1rem;
}

@media (max-width: 899px) {
	.bls-employer-partnership-hero__heading {
		max-width: 100%;
	}
}

.bls-employer-partnership-hero__lead {
	font-size: 1.1875rem;
	line-height: 1.5;
	font-weight: 600;
	color: var(--wp--preset--color--dark-text);
	max-width: 520px;
	text-align: left;
	margin: 0 0 0.875rem;
}

.bls-employer-partnership-hero__sublead {
	font-size: 1rem;
	line-height: 1.6;
	color: #4b5563;
	max-width: 520px;
	text-align: left;
	margin: 0;
}

@media (max-width: 899px) {
	.bls-employer-partnership-hero__lead,
	.bls-employer-partnership-hero__sublead {
		max-width: 100%;
	}
}

.bls-employer-partnership-hero__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.5rem;
	margin-top: 2rem;
}

.bls-employer-partnership-hero__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.75rem !important;
	font-weight: 700;
}

.bls-employer-partnership-hero__anchor {
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: underline;
}

.bls-employer-partnership-hero__anchor:hover,
.bls-employer-partnership-hero__anchor:focus-visible {
	color: var(--wp--preset--color--bright-blue);
}

.bls-employer-partnership-hero__media {
	position: relative;
	z-index: 1;
	margin: 0;
	height: 100%;
	min-height: 320px;
}

.bls-employer-partnership-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Left-edge fade, same 110px white-to-transparent gradient technique as
   .bls-employer-hero__media::before and .bls-collab-hero__media::before
   (both unchanged). ROOT CAUSE of the reported "fade not visible" round:
   this rule was already correct and already live on the server (confirmed
   via a cache-bypassing fetch of the origin file), but the theme's
   enqueued stylesheet version (style.css "Version:") had never changed
   across any prior round, so the browser (and any host/CDN cache) kept
   serving an old cached copy of global.css under the same never-changing
   `?ver=0.1.0` URL: confirmed directly, document.styleSheets on the live
   page contained only the pre-fade .bls-employer-partnership-hero__media
   rule, with neither this ::before rule nor the img{object-fit:cover}
   rule from the previous round present at all. Not a CSS logic bug. Fixed
   by bumping style.css to Version: 0.1.1, the standard WordPress
   cache-busting mechanism (wp_enqueue_style in functions.php already
   versions every asset off wp_get_theme()->get('Version')), so the next
   install serves fresh files under a new URL. */
.bls-employer-partnership-hero__media::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 110px;
	background: linear-gradient(to right, var(--wp--preset--color--white) 0%, rgba(255, 255, 255, 0) 100%);
	z-index: 2;
	pointer-events: none;
}

@media (max-width: 899px) {
	.bls-employer-partnership-hero__media {
		height: 320px;
	}

	.bls-employer-partnership-hero__media::before {
		display: none;
	}
}

/* Placeholder treatment, shared visual language between the hero and
   testimonial media areas: a pale surface fill, dashed border, a
   generic image glyph and a plainly labelled caption, entirely
   aria-hidden since it conveys no real content yet and must not
   generate screen-reader noise. */
.bls-employer-partnership-hero__placeholder,
.bls-employer-partnership-testimonial__placeholder {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 0.75rem;
	width: 100%;
	height: 100%;
	background-color: var(--wp--preset--color--surface);
	border: 2px dashed rgba(140, 147, 160, 0.5);
	color: #8c93a0;
}

.bls-employer-partnership-hero__placeholder svg,
.bls-employer-partnership-testimonial__placeholder svg {
	width: 48px;
	height: 48px;
}

.bls-employer-partnership-hero__placeholder span,
.bls-employer-partnership-testimonial__placeholder span {
	font-size: 0.8125rem;
	font-weight: 600;
	letter-spacing: 0.02em;
}

/* --- Partnership options (patterns/employer-partnership-options.php) --- */
.bls-employer-partnership-options {
	padding: 4rem 0;
}

@media (max-width: 599px) {
	.bls-employer-partnership-options {
		padding: 2.75rem 0;
	}
}

.bls-employer-partnership-options__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	scroll-margin-top: 1.5rem;
}

@media (min-width: 600px) {
	.bls-employer-partnership-options__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-employer-partnership-options__heading {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.125rem);
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.75rem;
}

.bls-employer-partnership-options__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1.75rem;
}

@media (min-width: 700px) {
	.bls-employer-partnership-options__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.bls-employer-partnership-options__card {
	min-width: 0;
	border-radius: 16px;
	padding: 2rem;
	background-color: rgba(45, 172, 217, 0.07);
	border: 1px solid rgba(45, 172, 217, 0.28);
}

.bls-employer-partnership-options__card--plus {
	background-color: rgba(223, 165, 56, 0.09);
	border-color: rgba(223, 165, 56, 0.4);
}

.bls-employer-partnership-options__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.16);
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1.25rem;
}

.bls-employer-partnership-options__icon--plus {
	background-color: rgba(223, 165, 56, 0.22);
	color: var(--wp--preset--color--gold);
}

.bls-employer-partnership-options__icon svg {
	width: 24px;
	height: 24px;
}

.bls-employer-partnership-options__card-heading {
	font-size: 1.375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.375rem;
}

.bls-employer-partnership-options__eligibility {
	font-size: 0.9375rem;
	color: #4b5563;
	text-align: left;
	margin: 0 0 1.25rem;
	padding-bottom: 1.25rem;
	border-bottom: 1px solid rgba(140, 147, 160, 0.3);
}

.bls-employer-partnership-options__price {
	font-size: 1rem;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-employer-partnership-options__price strong {
	display: block;
	font-size: 2.25rem;
	font-weight: 700;
	line-height: 1.15;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.125rem;
}

.bls-employer-partnership-options__card--plus .bls-employer-partnership-options__price strong {
	color: var(--wp--preset--color--dark-blue);
}

.bls-employer-partnership-options__list {
	margin: 0;
	padding-left: 1.25rem;
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
}

.bls-employer-partnership-options__list li {
	margin: 0 0 0.375rem;
}

.bls-employer-partnership-options__list li:last-child {
	margin-bottom: 0;
}

/* --- Benefits grid (patterns/employer-partnership-benefits.php) --- */
.bls-employer-partnership-benefits {
	padding: 1rem 0 4rem;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-employer-partnership-benefits {
		padding: 0.5rem 0 2.75rem;
	}
}

.bls-employer-partnership-benefits__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	padding-top: 3rem;
}

@media (min-width: 600px) {
	.bls-employer-partnership-benefits__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-employer-partnership-benefits__intro {
	max-width: 700px;
	margin: 0 0 2rem;
}

.bls-employer-partnership-benefits__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.75rem;
}

.bls-employer-partnership-benefits__heading {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.125rem);
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.625rem;
}

.bls-employer-partnership-benefits__lead {
	font-size: 1rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-employer-partnership-benefits__grid {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1.5rem 2rem;
}

@media (min-width: 640px) {
	.bls-employer-partnership-benefits__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 960px) {
	.bls-employer-partnership-benefits__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bls-employer-partnership-benefits__item {
	display: flex;
	align-items: flex-start;
	gap: 0.875rem;
	min-width: 0;
	margin: 0;
}

.bls-employer-partnership-benefits__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
}

.bls-employer-partnership-benefits__icon svg {
	width: 19px;
	height: 19px;
}

.bls-employer-partnership-benefits__text {
	font-size: 0.9375rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	padding-top: 0.5rem;
}

/* --- How it works (patterns/employer-partnership-process.php) --- */
.bls-employer-partnership-process {
	padding: 4rem 0;
}

@media (max-width: 599px) {
	.bls-employer-partnership-process {
		padding: 2.75rem 0;
	}
}

.bls-employer-partnership-process__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-employer-partnership-process__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-employer-partnership-process__heading {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.125rem);
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.625rem;
}

.bls-employer-partnership-process__lead {
	font-size: 1rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	max-width: 700px;
	margin: 0 0 2rem;
}

.bls-employer-partnership-process__grid {
	list-style: none;
	counter-reset: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 2rem;
}

@media (min-width: 640px) {
	.bls-employer-partnership-process__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 960px) {
	.bls-employer-partnership-process__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-employer-partnership-process__step {
	min-width: 0;
	margin: 0;
}

.bls-employer-partnership-process__number {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: var(--wp--preset--color--dark-blue);
	color: var(--wp--preset--color--white);
	font-size: 1.0625rem;
	font-weight: 700;
	margin: 0 0 1rem;
}

.bls-employer-partnership-process__step-heading {
	font-size: 1.0625rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-employer-partnership-process__step-text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* --- Programme rules (patterns/employer-partnership-rules.php) --- */
.bls-employer-partnership-rules {
	padding: 0 0 4rem;
}

@media (max-width: 599px) {
	.bls-employer-partnership-rules {
		padding: 0 0 2.75rem;
	}
}

.bls-employer-partnership-rules__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-employer-partnership-rules__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-employer-partnership-rules__panel {
	background-color: var(--wp--preset--color--surface);
	border-radius: 16px;
	padding: 2.25rem;
	max-width: 820px;
}

@media (min-width: 600px) {
	.bls-employer-partnership-rules__panel {
		padding: 2.75rem 3rem;
	}
}

.bls-employer-partnership-rules__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-employer-partnership-rules__icon svg {
	width: 20px;
	height: 20px;
}

.bls-employer-partnership-rules__heading {
	font-size: 1.375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-employer-partnership-rules__list {
	margin: 0;
	padding-left: 1.25rem;
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--wp--preset--color--dark-text);
}

.bls-employer-partnership-rules__list li {
	margin: 0 0 0.75rem;
}

.bls-employer-partnership-rules__list li:last-child {
	margin-bottom: 0;
}

/* --- Why partner with Brightlink (patterns/employer-partnership-why.php) --- */
.bls-employer-partnership-why {
	padding: 1rem 0 4rem;
}

@media (max-width: 599px) {
	.bls-employer-partnership-why {
		padding: 0.5rem 0 2.75rem;
	}
}

.bls-employer-partnership-why__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-employer-partnership-why__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-employer-partnership-why__heading {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.125rem);
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 2rem;
}

.bls-employer-partnership-why__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 2rem;
}

@media (min-width: 640px) {
	.bls-employer-partnership-why__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 960px) {
	.bls-employer-partnership-why__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-employer-partnership-why__item {
	min-width: 0;
}

.bls-employer-partnership-why__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background-color: rgba(45, 172, 217, 0.14);
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-employer-partnership-why__icon svg {
	width: 22px;
	height: 22px;
}

.bls-employer-partnership-why__item-heading {
	font-size: 1.0625rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.5rem;
}

.bls-employer-partnership-why__item-text {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

/* --- Testimonial (patterns/employer-partnership-testimonial.php) --- */
.bls-employer-partnership-testimonial {
	padding: 1rem 0 4rem;
}

@media (max-width: 599px) {
	.bls-employer-partnership-testimonial {
		padding: 0.5rem 0 2.75rem;
	}
}

.bls-employer-partnership-testimonial__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	background-color: var(--wp--preset--color--dark-blue);
	border-radius: 18px;
	overflow: hidden;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
}

@media (min-width: 600px) {
	.bls-employer-partnership-testimonial__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 820px) {
	.bls-employer-partnership-testimonial__inner {
		grid-template-columns: minmax(0, 60fr) minmax(280px, 40fr);
		align-items: stretch;
	}
}

.bls-employer-partnership-testimonial__content {
	margin: 0;
	padding: 2.75rem 2rem;
}

@media (min-width: 600px) {
	.bls-employer-partnership-testimonial__content {
		padding: 3.5rem;
	}
}

.bls-employer-partnership-testimonial__mark {
	display: block;
	font-family: Georgia, "Times New Roman", serif;
	font-size: 3.5rem;
	line-height: 1;
	font-weight: 700;
	color: rgba(255, 255, 255, 0.35);
	margin: 0 0 0.5rem;
}

.bls-employer-partnership-testimonial__quote {
	font-size: 1.25rem;
	line-height: 1.55;
	font-weight: 600;
	color: var(--wp--preset--color--white);
	text-align: left;
	max-width: 640px;
	margin: 0 0 1.25rem;
}

.bls-employer-partnership-testimonial__attribution {
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: rgba(255, 255, 255, 0.75);
	text-align: left;
	margin: 0;
}

.bls-employer-partnership-testimonial__media {
	margin: 0;
	height: 220px;
}

.bls-employer-partnership-testimonial__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

@media (min-width: 820px) {
	.bls-employer-partnership-testimonial__media {
		height: 100%;
	}
}

.bls-employer-partnership-testimonial__placeholder {
	border-radius: 0;
	border-width: 0 0 0 0;
	background-color: rgba(255, 255, 255, 0.06);
	color: rgba(255, 255, 255, 0.6);
	border: 2px dashed rgba(255, 255, 255, 0.25);
}

/* --- Final CTA (patterns/employer-partnership-cta.php), modelled on
   .bls-employer-final under independent selectors --- */
.bls-employer-partnership-cta {
	padding: 1rem 0 5rem;
}

@media (max-width: 599px) {
	.bls-employer-partnership-cta {
		padding: 0.5rem 0 3rem;
	}
}

.bls-employer-partnership-cta__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	background-color: var(--wp--preset--color--dark-blue);
	border-radius: 18px;
	padding: 2.75rem;
	display: flex;
	flex-direction: column;
	gap: 1.75rem;
}

@media (min-width: 600px) {
	.bls-employer-partnership-cta__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 768px) {
	.bls-employer-partnership-cta__inner {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		padding: 3.25rem 3.5rem;
		gap: 2.5rem;
	}
}

.bls-employer-partnership-cta__content {
	margin: 0;
	max-width: 620px;
}

.bls-employer-partnership-cta__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: rgba(255, 255, 255, 0.75);
	margin: 0 0 0.75rem;
}

.bls-employer-partnership-cta__heading {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.25rem);
	font-weight: 700;
	color: var(--wp--preset--color--white);
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-employer-partnership-cta__lead {
	font-size: 1rem;
	line-height: 1.55;
	color: rgba(255, 255, 255, 0.85);
	text-align: left;
	margin: 0;
}

.bls-employer-partnership-cta__action {
	margin: 0;
	flex-shrink: 0;
}

.bls-employer-partnership-cta__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 50px;
	padding: 0 2rem;
	border-radius: 8px;
	background-color: var(--wp--preset--color--white);
	color: var(--wp--preset--color--dark-blue);
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
}

.bls-employer-partnership-cta__button:hover,
.bls-employer-partnership-cta__button:focus-visible {
	background-color: var(--wp--preset--color--surface);
}

/* ==========================================================================
   Employer landing page CTA panel (patterns/employer-partnership-promo.php).
   The ONLY change made to /employers/ this round. Sits between the three
   primary journey cards and the rest of the page's existing content.
   ========================================================================== */
.bls-employer-partnership-promo {
	padding: 3rem 0;
}

@media (max-width: 599px) {
	.bls-employer-partnership-promo {
		padding: 2rem 0;
	}
}

.bls-employer-partnership-promo__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	background-color: rgba(45, 172, 217, 0.07);
	border: 1px solid var(--wp--preset--color--dark-blue);
	border-radius: 18px;
	padding: 2.5rem;
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

@media (min-width: 600px) {
	.bls-employer-partnership-promo__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

@media (min-width: 860px) {
	.bls-employer-partnership-promo__inner {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		padding: 3rem 3.5rem;
		gap: 3rem;
	}
}

.bls-employer-partnership-promo__main {
	margin: 0;
	max-width: 620px;
}

.bls-employer-partnership-promo__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.75rem;
}

.bls-employer-partnership-promo__heading {
	font-size: clamp(1.5rem, 1.3rem + 0.9vw, 1.875rem);
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-employer-partnership-promo__body {
	font-size: 0.9375rem;
	line-height: 1.55;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.5rem;
}

.bls-employer-partnership-promo__action {
	margin: 0;
}

.bls-employer-partnership-promo__button {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.75rem !important;
	font-weight: 700;
	white-space: normal;
	text-align: left;
}

.bls-employer-partnership-promo__stats {
	display: flex;
	gap: 1.25rem;
	flex-shrink: 0;
	flex-wrap: wrap;
}

@media (min-width: 860px) {
	.bls-employer-partnership-promo__stats {
		flex-wrap: nowrap;
	}
}

.bls-employer-partnership-promo__stat {
	min-width: 150px;
	flex: 1 1 150px;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(45, 172, 217, 0.3);
	border-radius: 12px;
	padding: 1.25rem 1.5rem;
	text-align: left;
}

.bls-employer-partnership-promo__stat--plus {
	border-color: rgba(223, 165, 56, 0.45);
}

.bls-employer-partnership-promo__stat-eligibility {
	font-size: 0.8125rem;
	font-weight: 600;
	color: #4b5563;
	margin: 0 0 0.375rem;
}

.bls-employer-partnership-promo__stat-figure {
	font-size: 1.625rem;
	font-weight: 700;
	line-height: 1.15;
	color: var(--wp--preset--color--dark-blue);
	margin: 0;
}

.bls-employer-partnership-promo__stat--plus .bls-employer-partnership-promo__stat-figure {
	color: var(--wp--preset--color--dark-blue);
}

.bls-employer-partnership-promo__stat-text {
	font-size: 0.8125rem;
	color: #4b5563;
	margin: 0;
}


/* ==========================================================================
   Certification / recognition logos - REBUILT (urgent fix round). The
   previous round's implementation rendered broken: content flush to the
   viewport edge, logos at their raw 500x500 native pixel size, no
   card/grid styling. Root cause could not be directly confirmed against
   a live WordPress install (none exists in this environment), but the
   previous markup differed from this theme's own proven-working
   image-in-card convention (patterns/about-team.php's tutor cards) in
   one concrete way: the <img> itself carried no class and was targeted
   only via a wrapper-descendant selector (".bls-about-standards__logo
   img"), rather than a class placed directly on the <img> element as
   about-team.php does. That difference, however it actually manifested,
   is now eliminated entirely: every certification/recognition <img>
   below carries its own class directly, matching the theme's own proven
   pattern exactly. The entire previous CSS block for this feature has
   been deleted (not layered over) and is rebuilt below under a new,
   more explicit namespace, per the brief's own suggested naming.
   Defensive HTML width/height attributes on every <img> now hint the
   INTENDED small display size (not the raw 500x500 source canvas), so
   even in a worst-case scenario where none of this CSS were to apply,
   the images would still render at a modest, proportionate size rather
   than "enormous". Everything below is content-driven: no fixed
   section heights, no min-heights, no viewport-height sections, no
   spacer blocks.

   Shared building block, used identically in all three locations (About,
   Employer, CILEX Course Fees): a fixed-height "logo canvas" flex
   container plus an <img> constrained by max-width/max-height with
   object-fit: contain. Height/size modifiers below set the actual pixel
   constraints per context, since the brief calls for slightly different
   scale in each place (About ~130px canvas, Employer ~110px canvas,
   CILEX badge ~80px canvas). Never uses width:100% on these images.
   ========================================================================== */

.bls-certification-logo {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.bls-certification-logo__img {
	display: block;
	width: auto;
	height: auto;
	object-fit: contain;
}

.bls-certification-logo--card {
	width: 100%;
	height: 130px;
	margin: 0 0 1.125rem;
}

.bls-certification-logo--card .bls-certification-logo__img {
	max-width: 180px;
	max-height: 110px;
}

.bls-certification-logo--strip {
	height: 110px;
}

.bls-certification-logo--strip .bls-certification-logo__img {
	max-width: 150px;
	max-height: 100px;
}

.bls-certification-logo--badge {
	height: 80px;
}

.bls-certification-logo--badge .bls-certification-logo__img {
	max-width: 110px;
	max-height: 72px;
}

/* --- About page: Standards and Recognition (patterns/about-standards.php) --- */
.bls-certifications {
	padding: 4rem 0;
	background-color: var(--wp--preset--color--surface);
}

@media (max-width: 599px) {
	.bls-certifications {
		padding: 2.75rem 0;
	}
}

.bls-certifications__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-certifications__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-certifications__intro {
	max-width: 760px;
	margin: 0 0 2.5rem;
}

.bls-certifications__label {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: left;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.875rem;
}

.bls-certifications__heading {
	font-size: clamp(1.75rem, 1.5rem + 1vw, 2.125rem);
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.75rem;
}

.bls-certifications__lead {
	font-size: 1rem;
	line-height: 1.6;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-certifications__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1.5rem;
}

@media (min-width: 600px) {
	.bls-certifications__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 900px) {
	.bls-certifications__grid {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

.bls-certification-card {
	min-width: 0;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(140, 147, 160, 0.25);
	border-radius: 14px;
	padding: 1.75rem 1.5rem;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.bls-certification-card__heading {
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.35;
	color: var(--wp--preset--color--dark-text);
	text-align: center;
	margin: 0 0 0.5rem;
}

.bls-certification-card__text {
	font-size: 0.875rem;
	line-height: 1.5;
	color: #4b5563;
	text-align: center;
	margin: 0;
}

/* --- Employer landing: recognition strip
   (patterns/employer-recognition-strip.php). Deliberately smaller and
   quieter than the Employer Partnership Programme promo panel: a plain
   surface-tint strip, no button, no large figures. --- */
.bls-employer-recognition {
	padding: 2.5rem 0;
}

@media (max-width: 599px) {
	.bls-employer-recognition {
		padding: 1.75rem 0;
	}
}

.bls-employer-recognition__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
	background-color: var(--wp--preset--color--surface);
	border-radius: 14px;
	padding: 1.75rem 2rem;
}

@media (min-width: 600px) {
	.bls-employer-recognition__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-employer-recognition__heading {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-employer-recognition__items {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1.5rem;
}

@media (min-width: 560px) {
	.bls-employer-recognition__items {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.bls-employer-recognition__item {
	display: flex;
	align-items: center;
	gap: 1.125rem;
	min-width: 0;
}

.bls-employer-recognition__text {
	min-width: 0;
}

.bls-employer-recognition__label {
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
}

.bls-employer-recognition__note {
	font-size: 0.8125rem;
	line-height: 1.45;
	color: #4b5563;
	text-align: left;
	margin: 0.25rem 0 0;
}

/* --- CILEX Course Fees: compact CILEX trust badge, inline inside the
   existing CPQ intro block (markup in patterns/cilex-course-fees-cpq.php,
   not a separate pattern) --- */
.bls-cilex-trust-badge {
	display: flex;
	align-items: center;
	gap: 0.875rem;
	margin: 1.25rem 0 0;
	padding: 0.875rem 1.125rem;
	background-color: var(--wp--preset--color--surface);
	border-radius: 10px;
	max-width: 420px;
}

.bls-cilex-trust-badge__text {
	font-size: 0.8125rem;
	line-height: 1.5;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0;
	min-width: 0;
}

.bls-cilex-trust-badge__text strong {
	font-weight: 700;
}

/* ==========================================================================
   Brightlink Insights: editorial architecture (landing page, About-page
   teaser, single-article template). No articles exist yet; this is
   structural CSS only. Deterministic-width containers throughout, matching
   the rest of the site (no align:"wide"). Gold is deliberately not used as
   text colour anywhere in this section (per the approved brief), only
   Dark Blue / Bright Blue / dark text / muted grey, all already proven to
   pass WCAG 2.2 AA contrast elsewhere in this theme.
   ========================================================================== */

/* --- Landing hero (patterns/insights-landing-hero.php) --- */
.bls-insights-landing {
	padding: 4.5rem 0 2.5rem;
}

@media (max-width: 599px) {
	.bls-insights-landing {
		padding: 3rem 0 2rem;
	}
}

.bls-insights-landing__inner {
	width: min(calc(100% - 40px), 800px);
	margin-inline: auto;
	text-align: left;
}

@media (min-width: 600px) {
	.bls-insights-landing__inner {
		width: min(calc(100% - 64px), 800px);
	}
}

.bls-insights-landing__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 1rem;
}

.bls-insights-landing__heading {
	font-size: clamp(2.375rem, 2rem + 1.6vw, 3.125rem);
	line-height: 1.12;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 1rem;
}

.bls-insights-landing__intro {
	font-size: 1.1875rem;
	line-height: 1.6;
	color: #4b5563;
	max-width: 640px;
	margin: 0;
}

/* --- Landing list (patterns/insights-landing-list.php) --- */
.bls-insights-list {
	padding: 1.5rem 0 5rem;
}

.bls-insights-list__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-insights-list__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-insights-empty {
	font-size: 1.0625rem;
	line-height: 1.6;
	color: #4b5563;
	text-align: left;
	background-color: var(--wp--preset--color--surface);
	border: 1px solid rgba(140, 147, 160, 0.3);
	border-radius: 12px;
	padding: 2.5rem;
	margin: 0;
}

/* --- Shared article-card grid, used by both the landing list and the
   About-page teaser (patterns/about-insights.php). --- */
.bls-insights-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2rem;
}

@media (min-width: 600px) {
	.bls-insights-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 2rem 1.75rem;
	}
}

@media (min-width: 900px) {
	.bls-insights-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

.bls-insights-card {
	display: flex;
	flex-direction: column;
	background-color: var(--wp--preset--color--white);
	border: 1px solid rgba(45, 172, 217, 0.28);
	border-radius: 14px;
	padding: 1.75rem;
	min-width: 0;
}

.bls-insights-card__title {
	font-size: 1.1875rem;
	line-height: 1.35;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.625rem;
}

.bls-insights-card__meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 0.4rem;
	font-size: 0.8125rem;
	font-weight: 600;
	color: #4b5563;
	text-align: left;
	margin: 0 0 0.875rem;
}

.bls-insights-card__meta-sep {
	color: rgba(140, 147, 160, 0.8);
}

.bls-insights-card__excerpt {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: #4b5563;
	text-align: left;
	margin: 0 0 1.25rem;
	flex-grow: 1;
}

.bls-insights-card__cta {
	margin: 0;
}

.bls-insights-card__link {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	min-height: 44px;
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-insights-card__link:hover,
.bls-insights-card__link:focus-visible {
	color: var(--wp--preset--color--bright-blue);
	text-decoration: underline;
}

/* --- About page teaser (patterns/about-insights.php) --- */
.bls-about-insights {
	padding: 5rem 0;
}

@media (max-width: 599px) {
	.bls-about-insights {
		padding: 3.5rem 0;
	}
}

.bls-about-insights__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-about-insights__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-about-insights__intro {
	max-width: 720px;
	margin: 0 0 2.5rem;
}

.bls-about-insights__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 1rem;
}

.bls-about-insights__heading {
	font-size: clamp(1.875rem, 1.6rem + 1.2vw, 2.375rem);
	line-height: 1.15;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 0.875rem;
}

.bls-about-insights__text {
	font-size: 1.0625rem;
	line-height: 1.6;
	color: #4b5563;
	text-align: left;
	margin: 0;
}

.bls-about-insights__more {
	margin: 2.5rem 0 0;
}

.bls-about-insights__more a {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 44px;
	font-size: 1rem;
	font-weight: 700;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: underline;
}

.bls-about-insights__more a:hover,
.bls-about-insights__more a:focus-visible {
	color: var(--wp--preset--color--bright-blue);
}

/* --- About page Brightlink Events signpost (patterns/about-events.php) ---
   Deliberately smaller and quieter than the Insights teaser above it: a
   single centered pale-blue panel, reusing the same tint and border
   already established for the Talk to Us contact panel
   (.bls-talk-contact__panel), rather than a new visual treatment. No
   icon, no image, one CTA. */
.bls-about-events {
	padding: 3rem 0;
}

@media (max-width: 599px) {
	.bls-about-events {
		padding: 2.25rem 0;
	}
}

.bls-about-events__inner {
	width: min(calc(100% - 40px), 1200px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-about-events__inner {
		width: min(calc(100% - 64px), 1200px);
	}
}

.bls-about-events__panel {
	box-sizing: border-box;
	width: min(100%, 680px);
	margin-inline: auto;
	text-align: center;
	background-color: rgba(45, 172, 217, 0.07);
	border: 1px solid rgba(45, 172, 217, 0.28);
	border-radius: 16px;
	padding: 1.75rem;
}

@media (min-width: 600px) {
	.bls-about-events__panel {
		padding: 2.5rem 3rem;
	}
}

.bls-about-events__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	text-align: center;
	color: var(--wp--preset--color--dark-blue);
	margin: 0 0 0.75rem;
}

.bls-about-events__heading {
	font-size: clamp(1.375rem, 1.15rem + 0.9vw, 1.75rem);
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	color: var(--wp--preset--color--dark-text);
	margin: 0 0 0.75rem;
}

.bls-about-events__text {
	font-size: 0.9375rem;
	line-height: 1.6;
	text-align: center;
	color: #4b5563;
	max-width: 520px;
	margin: 0 auto 0.75rem;
}

.bls-about-events__text:last-of-type {
	margin-bottom: 0;
}

.bls-about-events__action {
	margin: 1.5rem 0 0;
}

.bls-about-events__cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
	padding: 0 1.75rem;
	font-weight: 700;
}

/* --- Single article template (templates/single.html) --- */
.bls-single-insight {
	padding: 3rem 0 5rem;
}

.bls-single-insight__inner {
	width: min(calc(100% - 40px), 720px);
	margin-inline: auto;
}

@media (min-width: 600px) {
	.bls-single-insight__inner {
		width: min(calc(100% - 64px), 720px);
	}
}

.bls-single-insight__back {
	margin: 0 0 1.75rem;
}

.bls-single-insight__back a {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	min-height: 44px;
	font-size: 0.9375rem;
	font-weight: 600;
	color: var(--wp--preset--color--dark-blue);
	text-decoration: none;
}

.bls-single-insight__back a:hover,
.bls-single-insight__back a:focus-visible {
	color: var(--wp--preset--color--bright-blue);
	text-decoration: underline;
}

.bls-single-insight__eyebrow {
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dark-blue);
	text-align: left;
	margin: 0 0 1rem;
}

.bls-single-insight__heading {
	font-size: clamp(2rem, 1.6rem + 1.8vw, 2.75rem);
	line-height: 1.15;
	font-weight: 700;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--dark-text);
	text-align: left;
	margin: 0 0 1.25rem;
}

.bls-single-insight__meta {
	font-size: 0.9375rem;
	font-weight: 600;
	color: #4b5563;
	margin: 0 0 2rem;
}

.bls-single-insight__meta-sep {
	color: rgba(140, 147, 160, 0.8);
}

.bls-single-insight__image {
	margin: 0 0 2.5rem;
}

.bls-single-insight__image img {
	width: 100%;
	height: auto;
	border-radius: 14px;
	display: block;
}

/* Article body typography: comfortable long-form reading, narrower than
   the site's marketing-page content width (set on .bls-single-insight__inner
   above), with a real heading/paragraph/list/blockquote/link rhythm driven
   entirely by this stylesheet rather than theme.json's zero-specificity
   ":where()" defaults, matching the same reasoning already documented
   earlier in this file for the sitewide h1-h6/p reset. */
.bls-single-insight__content {
	font-size: 1.125rem;
	line-height: 1.7;
	color: var(--wp--preset--color--dark-text);
}

.bls-single-insight__content > * {
	max-width: 100%;
}

.bls-single-insight__content p {
	margin: 0 0 1.5rem;
}

.bls-single-insight__content h2 {
	font-size: 1.625rem;
	line-height: 1.3;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	margin: 2.5rem 0 1rem;
}

.bls-single-insight__content h3 {
	font-size: 1.3125rem;
	line-height: 1.35;
	font-weight: 700;
	color: var(--wp--preset--color--dark-text);
	margin: 2rem 0 0.875rem;
}

.bls-single-insight__content ul,
.bls-single-insight__content ol {
	margin: 0 0 1.5rem;
	padding-left: 1.5rem;
}

.bls-single-insight__content li {
	margin: 0 0 0.5rem;
	line-height: 1.65;
}

.bls-single-insight__content blockquote {
	margin: 2rem 0;
	padding: 0.25rem 0 0.25rem 1.5rem;
	border-left: 3px solid var(--wp--preset--color--bright-blue);
	font-size: 1.1875rem;
	line-height: 1.6;
	font-style: italic;
	color: #4b5563;
}

.bls-single-insight__content a {
	color: var(--wp--preset--color--dark-blue);
	text-decoration: underline;
}

.bls-single-insight__content a:hover,
.bls-single-insight__content a:focus-visible {
	color: var(--wp--preset--color--bright-blue);
}

.bls-single-insight__content img {
	max-width: 100%;
	height: auto;
	border-radius: 14px;
}

.bls-single-insight__next {
	margin-top: 3rem;
	padding-top: 2.5rem;
	border-top: 1px solid rgba(140, 147, 160, 0.3);
}

.bls-single-insight__next-cta {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	min-height: 48px;
}
