@font-face{font-family:"Jost";font-style:normal;font-weight:400;font-display:swap;src:url("/polices/jost-latin-400-normal.woff2") format("woff2")}
@font-face{font-family:"Jost";font-style:normal;font-weight:500;font-display:swap;src:url("/polices/jost-latin-500-normal.woff2") format("woff2")}
@font-face{font-family:"Jost";font-style:normal;font-weight:600;font-display:swap;src:url("/polices/jost-latin-600-normal.woff2") format("woff2")}
@font-face{font-family:"Jost";font-style:normal;font-weight:700;font-display:swap;src:url("/polices/jost-latin-700-normal.woff2") format("woff2")}
/* tokens */
:root {
	--f-lead: 'Jost', 'Trebuchet MS', system-ui, sans-serif;
	--spr-base: 'Jost', 'Segoe UI', system-ui, sans-serif;

	--spr-lead: #ba7d2a;
	--spr-spot: #e5a24c;
	--spr-key-active: #df8f1f;
	--spr-sheet: #0a0909;
	--spr-raised: #171514;
	--spr-body: #ffffff;
	--spr-soft-text: #bebcbc;
	--spr-stroke: rgba(229, 162, 76, 0.28);
	--spr-stroke-heavy: rgba(229, 162, 76, 0.52);
	--spr-blend-a: #f6e0bd;
	--spr-grad-2: #e9c177;
	--spr-advisory: #d00000;

	--spr-step-0: 5px;
	--spr-step-1: 10px;
	--spr-step-2: 15px;
	--spr-step-3: 25px;
	--spr-step-4: 40px;
	--spr-step-5: 60px;
	--spr-step-6: 90px;
	--spr-step-7: 140px;

	--r-step-0: 2px;
	--r-step-1: 4px;
	--r-step-2: 8px;
	--r-step-3: 12px;
	--r-step-4: 16px;
	--r-step-5: 20px;
	--r-step-6: 26px;
	--r-step-7: 32px;
	--spr-pill: 9999px;
	--spr-circle: 50%;

	--spr-display-1: 48px;
	--spr-h2: 36px;
	--spr-h3: 26px;
	--spr-display-4: 21px;
	--spr-h5: 18px;
	--spr-micro-head: 16px;
	--spr-reading: 19px;
	--spr-sm: 16px;
	--spr-legal: 14px;

	--spr-tight: 1.2;
	--spr-default: 1.7;
	--spr-airy: 2;
	--spr-book: 400;
	--spr-semi: 500;
	--spr-bold: 600;
	--spr-narrow: -0.01em;
	--spr-normal: 0;
	--spr-wide: 0.02em;

	--d-step-0: none;
	--d-step-1: none;
	--d-step-2: none;
	--d-step-3: none;
	--d-step-4: 0 8px 24px rgba(0, 0, 0, 0.1);
	--d-step-5: 0 14px 40px rgba(0, 0, 0, 0.22);
	--d-step-6: 0 20px 56px rgba(0, 0, 0, 0.3);
	--d-step-7: 0 26px 70px rgba(0, 0, 0, 0.38);

	--spr-quick: 207ms;
	--spr-regular: 370ms;
	--spr-gentle: 650ms;
	--spr-exit: cubic-bezier(0.2, 0.88, 0.26, 0.96);
	--spr-in: cubic-bezier(0.56, 0.04, 0.59, 0.96);
	--spr-smooth: cubic-bezier(0.56, 0.04, 0.59, 0.96);
	--spr-elastic: cubic-bezier(0.4, 1.55, 0.7, 1.05);

	--spr-max: 1220px;
	--spr-inner: 880px;
	--spr-brief: 500px;
	--spr-pad-lg: 56px;
	--spr-pad-md: 32px;
	--spr-pad-sm: 16px;

	--spr-slim: 1px;
	--spr-even: 2px;
	--b-wide: 3px;

	--spr-h-lg: 64px;
	--spr-h-sm: 56px;
	--spr-shell-h: 64px;
	--spr-chrome-h: 110px;
}

/* base */
*,
*::before,
*::after { box-sizing: border-box; }

html,
body {
	background: var(--spr-sheet);
	overflow-x: clip;
}

body {
	color: var(--spr-body);
	font-family: var(--spr-base);
	font-size: var(--spr-reading);
	font-weight: var(--spr-book);
	line-height: var(--spr-airy);
	margin: 0;
	-webkit-font-smoothing: antialiased;
}

a { color: var(--spr-spot); }

h1, h2, h3, h4, h5, h6 {
	overflow-wrap: anywhere;
	margin: 0;
}

h1, h2 {
	font-family: var(--f-lead);
	font-weight: var(--spr-bold);
	letter-spacing: var(--spr-narrow);
	line-height: var(--spr-tight);
}

h3, h4 { font-weight: var(--spr-bold); line-height: var(--spr-tight); }

img { max-width: 100%; }

p { margin: 0 0 var(--spr-step-2); }

section > * { min-width: 0; }

table { border-collapse: collapse; }

ul, ol { margin: 0 0 var(--spr-step-2); }

[id] { scroll-margin-top: calc(var(--spr-shell-h) + 20px); }

::selection { background: var(--spr-spot); color: var(--spr-sheet); }

:focus-visible { outline: var(--spr-even) solid var(--spr-spot); outline-offset: 3px; }

/* shared section shell — single width for the whole site */
.arrowSet-shell,
.beamRail-shell,
.blockSpan-shell,
.boardRegion-shell,
.cabinWrapper-shell,
.cellTrack-shell,
.dartStrip-shell,
.districtSlider-shell,
.huskDisplay-shell,
.labelGrid-shell,
.padContainer-shell,
.padPanel-shell,
.pulseGroup-shell,
.sectionTrack-shell,
.slateTrack-shell {
	margin-inline: auto;
	max-width: calc(var(--spr-max) + 2 * var(--spr-pad-lg));
	padding-inline: var(--spr-pad-lg);
	width: 100%;
}

/* reveal (motion: unfold / rise) */
[data-appear] {
	opacity: 0;
	transform: translateY(34px);
	transition: opacity var(--spr-gentle) var(--spr-exit), transform var(--spr-gentle) var(--spr-exit);
}

[data-appear] > * { clip-path: inset(0 0 14% 0); transition: clip-path var(--spr-gentle) var(--spr-exit); }

[data-appear].on-screen { opacity: 1; transform: none; }

[data-appear].on-screen > * { clip-path: inset(0 0 0 0); }

/* --- alphabetical component block --- */

/* author card (AUTH-01) */
.arrowSet { padding-block: var(--spr-step-5); }

.arrowSet-articles { margin-top: var(--spr-step-4); }

.arrowSet-articles-caption { font-size: var(--spr-h3); margin-bottom: var(--spr-step-2); }

.arrowSet-articles-href {
	background-image: linear-gradient(currentColor, currentColor);
	background-position: 0 100%;
	background-repeat: no-repeat;
	background-size: 0 var(--spr-even);
	text-decoration: none;
	transition: background-size var(--spr-quick) var(--spr-exit);
}

.arrowSet-articles-href:hover,
.arrowSet-articles-href:focus-visible { background-size: 100% var(--spr-even); color: var(--spr-key-active); }

.arrowSet-articles-list { list-style: none; margin: 0; padding: 0; }

.arrowSet-articles-unit { border-top: var(--spr-slim) dashed var(--spr-stroke); padding-block: var(--spr-step-2); }

.arrowSet-bio { color: var(--spr-soft-text); line-height: var(--spr-airy); }

.arrowSet-card {
	background: var(--spr-raised);
	border-radius: var(--r-step-4);
	display: grid;
	gap: var(--spr-step-5);
	grid-template-columns: 160px 1fr;
	padding: var(--spr-step-5) var(--spr-step-4);
}

.arrowSet-duty {
	color: var(--spr-spot);
	font-size: var(--spr-sm);
	font-weight: var(--spr-semi);
	letter-spacing: var(--spr-wide);
	text-transform: uppercase;
}

.arrowSet-headshot {
	border-radius: var(--spr-circle);
	height: 160px;
	overflow: hidden;
	width: 160px;
}

.arrowSet-media { display: block; height: 100%; object-fit: cover; object-position: center top; width: 100%; }

.arrowSet-part { display: flex; flex-direction: column; gap: var(--spr-step-2); }

.arrowSet-tag {
	background: var(--spr-lead);
	border-radius: var(--spr-pill);
	color: var(--spr-body);
	font-size: var(--spr-legal);
	letter-spacing: var(--spr-wide);
	padding: var(--spr-step-0) var(--spr-step-2);
	text-transform: uppercase;
}

.arrowSet-tags { display: flex; flex-wrap: wrap; gap: var(--spr-step-1); }

/* header (HEAD-MIRROR) */
.beamRail {
	background: var(--spr-sheet);
	position: sticky;
	top: 0;
	transition: background var(--spr-regular) var(--spr-exit), backdrop-filter var(--spr-regular) var(--spr-exit);
	z-index: 80;
}

.beamRail-chev {
	border-bottom: var(--spr-even) solid currentColor;
	border-right: var(--spr-even) solid currentColor;
	display: inline-block;
	height: 7px;
	margin-left: var(--spr-step-1);
	transform: rotate(45deg);
	width: 7px;
}

.beamRail-drawer { display: none; }

.beamRail-drawer.is-open { display: block; }

.beamRail-drawer-href {
	color: var(--spr-body);
	display: block;
	font-size: var(--spr-h5);
	font-weight: var(--spr-bold);
	padding-block: var(--spr-step-2);
	text-decoration: none;
}

.beamRail-drawer-href:hover,
.beamRail-drawer-href[aria-current='page'] { color: var(--spr-spot); }

.beamRail-drawer-list {
	list-style: none;
	margin: 0;
	max-height: 68vh;
	overflow-y: auto;
	padding: 0 var(--spr-pad-sm) var(--spr-step-3);
}

.beamRail-drawer-list .beamRail-unit { border-bottom: var(--spr-slim) dashed var(--spr-stroke); }

.beamRail-emblem { display: inline-flex; flex-shrink: 0; margin-inline-start: auto; }

.beamRail-grid {
	background-image: radial-gradient(currentColor 42%, transparent 44%);
	background-size: 7px 7px;
	display: block;
	height: 18px;
	width: 18px;
}

.beamRail-href {
	color: var(--spr-body);
	font-size: 14px;
	font-weight: 600;
	letter-spacing: var(--spr-normal);
	text-decoration: none;
	transition: transform var(--spr-quick) var(--spr-exit), color var(--spr-quick) var(--spr-exit);
	white-space: nowrap;
}

.beamRail-href:hover,
.beamRail-href:focus-visible { color: var(--spr-spot); transform: translateY(-2px); }

.beamRail-href.is-here { color: var(--spr-spot); font-weight: 800; }

.beamRail-list {
	align-items: center;
	display: flex;
	gap: var(--spr-step-3);
	list-style: none;
	margin: 0;
	padding: 0;
}

.beamRail-media {
	display: block;
	height: 44px;
	transition: height var(--spr-regular) var(--spr-exit);
	width: auto;
}

.beamRail-more { position: relative; }

.beamRail-more-menu {
	background: var(--spr-raised);
	border: var(--spr-slim) dashed var(--spr-stroke-heavy);
	border-radius: var(--r-step-2);
	inset-inline-end: 0;
	list-style: none;
	margin: 0;
	max-height: 60vh;
	min-width: 220px;
	overflow-y: auto;
	padding: var(--spr-step-1);
	position: absolute;
	top: calc(100% + 6px);
	z-index: 5;
}

.beamRail-more-menu { display: none; }

.beamRail-more-menu.is-open { display: block; }

.beamRail-more-menu .beamRail-href { display: block; padding: var(--spr-step-1) var(--spr-step-2); }

.beamRail-more-menu .beamRail-unit + .beamRail-unit { border-top: var(--spr-slim) dashed var(--spr-stroke); }

.beamRail-more-toggle {
	background: none;
	border: 0;
	color: var(--spr-body);
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	font-family: var(--spr-base);
	font-size: 14px;
	font-weight: 600;
	min-height: 44px;
	padding: 0 var(--spr-step-1);
	white-space: nowrap;
}

.beamRail-more-toggle:hover { color: var(--spr-spot); }

.beamRail-more-toggle[hidden] { display: none; }

.beamRail-nav { display: flex; flex: 0 1 auto; gap: var(--spr-step-2); min-width: 0; }

.beamRail-shell {
	align-items: center;
	display: flex;
	gap: var(--spr-step-3);
	min-height: 64px;
	padding-inline: var(--spr-pad-md);
	transition: min-height var(--spr-regular) var(--spr-exit);
}

.beamRail-toggle {
	align-items: center;
	background: none;
	border: 0;
	color: var(--spr-body);
	cursor: pointer;
	display: none;
	height: 44px;
	justify-content: center;
	padding: 0;
	width: 44px;
}

.beamRail.is-shrunk { backdrop-filter: blur(9px); background: rgba(10, 9, 9, 0.86); }

.beamRail.is-shrunk .beamRail-media { height: 34px; }

.beamRail.is-shrunk .beamRail-shell { min-height: 52px; }

/* footer (FOOT-08 newspaper masthead) */
.blockSpan { background: var(--spr-sheet); padding-block: var(--spr-step-5); }

.blockSpan-bottom {
	align-items: center;
	border-top: var(--spr-slim) dashed var(--spr-stroke);
	display: flex;
	flex-wrap: wrap;
	gap: var(--spr-step-2);
	justify-content: space-between;
	margin-top: var(--spr-step-4);
	padding-top: var(--spr-step-3);
}

.blockSpan-caption {
	color: var(--spr-spot);
	font-family: var(--f-lead);
	font-size: var(--spr-micro-head);
	font-weight: var(--spr-bold);
	letter-spacing: var(--spr-wide);
	margin-bottom: var(--spr-step-2);
	text-transform: uppercase;
}

.blockSpan-emblem { display: inline-flex; }

.blockSpan-fine { color: var(--spr-soft-text); font-size: var(--spr-legal); }

.blockSpan-grid {
	display: grid;
	gap: var(--spr-step-4);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: var(--spr-step-4);
}

.blockSpan-href {
	color: var(--spr-soft-text);
	display: inline-block;
	font-size: var(--spr-sm);
	line-height: 1.6;
	text-decoration: none;
}

.blockSpan-grid > .blockSpan-lane:first-child .blockSpan-list {
	column-gap: var(--spr-step-3);
	columns: 2;
}

.blockSpan-href:hover,
.blockSpan-href:focus-visible { color: var(--spr-spot); }

.blockSpan-issue {
	color: var(--spr-soft-text);
	font-family: var(--f-lead);
	font-size: var(--spr-legal);
	letter-spacing: var(--spr-wide);
	margin: 0;
	text-transform: uppercase;
}

.blockSpan-lane { min-width: 0; }

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

.blockSpan-masthead {
	align-items: center;
	border-bottom: var(--b-wide) double var(--spr-stroke-heavy);
	border-top: var(--b-wide) double var(--spr-stroke-heavy);
	display: flex;
	flex-wrap: wrap;
	gap: var(--spr-step-2);
	justify-content: space-between;
	padding-block: var(--spr-step-3);
}

.blockSpan-media { display: block; height: 56px; width: auto; }

.blockSpan-unit { padding-block: var(--spr-step-0); }

.blockSpan-up {
	color: var(--spr-spot);
	font-size: var(--spr-legal);
	letter-spacing: var(--spr-wide);
	text-decoration: none;
	text-transform: uppercase;
}

/* contact form (FORM-04 inline row) */
.boardRegion { padding-block: var(--spr-step-4); }

.boardRegion-button {
	background: var(--spr-spot);
	border: 0;
	border-radius: var(--r-step-2);
	color: var(--spr-sheet);
	cursor: pointer;
	font-family: var(--f-lead);
	font-size: var(--spr-micro-head);
	font-weight: var(--spr-bold);
	min-height: 52px;
	padding-inline: var(--spr-step-4);
	transition: background var(--spr-quick) var(--spr-exit);
}

.boardRegion-button:hover,
.boardRegion-button:focus-visible { background: var(--spr-key-active); color: var(--spr-sheet); }

.boardRegion-form {
	align-items: end;
	display: flex;
	flex-wrap: wrap;
	gap: var(--spr-step-2);
}

.boardRegion-input {
	background: transparent;
	border: 0;
	border-bottom: var(--spr-even) dashed var(--spr-stroke-heavy);
	color: var(--spr-body);
	font-family: var(--spr-base);
	font-size: var(--spr-sm);
	padding: var(--spr-step-1) 0;
	width: 100%;
}

.boardRegion-input:focus-visible { border-bottom-color: var(--spr-spot); }

.boardRegion-intro { color: var(--spr-soft-text); }

.boardRegion-note {
	color: var(--spr-soft-text);
	display: block;
	font-size: var(--spr-legal);
	letter-spacing: var(--spr-wide);
	text-transform: uppercase;
}

.boardRegion-ok {
	background: var(--spr-raised);
	border-left: var(--b-wide) solid var(--spr-spot);
	color: var(--spr-body);
	margin-top: var(--spr-step-3);
	padding: var(--spr-step-3);
}

.boardRegion-slot { flex: 1 1 240px; margin: 0; }

.boardRegion-slot.is-wide { flex: 1 1 100%; }

/* page header (PHEAD-03 big block) */
.cabinWrapper { background: var(--spr-lead); padding-block: var(--spr-step-6); }

.cabinWrapper-sub { color: var(--spr-sheet); font-size: var(--spr-h5); margin: var(--spr-step-2) 0 0; max-width: var(--spr-max); }

.cabinWrapper-title { color: var(--spr-sheet); font-size: clamp(30px, 6vw, 60px); }

/* cta block (CTA-06 bottom banner strip) */
.cellTrack { background: var(--spr-spot); padding-block: var(--spr-step-3); }

.cellTrack-cta { flex-shrink: 0; }

.cellTrack-part { min-width: 0; }

.cellTrack-prose { color: var(--spr-sheet); font-size: var(--spr-sm); margin: var(--spr-step-0) 0 0; }

.cellTrack-shell {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: var(--spr-step-3);
	justify-content: space-between;
	min-height: 80px;
}

.cellTrack-title { color: var(--spr-sheet); font-size: var(--spr-h3); }

/* author byline (BYLINE-07) */
.coreFooter { padding-block: var(--spr-step-4); }

.coreFooter-bio { color: var(--spr-soft-text); line-height: var(--spr-airy); margin-top: var(--spr-step-2); }

.coreFooter-card {
	background: var(--spr-raised);
	border-radius: var(--r-step-3);
	margin-inline: auto;
	max-width: calc(var(--spr-max) + 2 * var(--spr-pad-lg) - 2 * var(--spr-pad-lg));
	padding: var(--spr-step-4);
}

.coreFooter-duty { color: var(--spr-soft-text); font-size: var(--spr-sm); margin: 0; }

.coreFooter-headshot {
	border-radius: var(--spr-circle);
	flex-shrink: 0;
	height: 72px;
	object-fit: cover;
	object-position: center top;
	width: 72px;
}

.coreFooter-href { color: var(--spr-body); text-decoration: none; }

.coreFooter-href:hover { color: var(--spr-spot); }

.coreFooter-more {
	display: inline-block;
	font-size: var(--spr-sm);
	margin-top: var(--spr-step-2);
	text-decoration: underline;
	text-decoration-color: var(--spr-stroke-heavy);
	text-underline-offset: 4px;
}

.coreFooter-more:hover { color: var(--spr-key-active); }

.coreFooter-tag {
	background: var(--spr-lead);
	border-radius: var(--spr-pill);
	color: var(--spr-body);
	font-size: var(--spr-legal);
	letter-spacing: var(--spr-wide);
	padding: var(--spr-step-0) var(--spr-step-2);
	text-transform: uppercase;
}

.coreFooter-tags { display: flex; flex-wrap: wrap; gap: var(--spr-step-1); margin-top: var(--spr-step-2); }

.coreFooter-tier { align-items: center; display: flex; gap: var(--spr-step-2); }

.coreFooter-who { font-size: var(--spr-display-4); margin: 0; }

/* reviews (REV-04 featured + list) */
.dartStrip { padding-block: var(--spr-step-4); }

.dartStrip-caption { font-size: var(--spr-h2); margin-bottom: var(--spr-step-3); }

.dartStrip-card {
	border-top: var(--spr-slim) dashed var(--spr-stroke);
	padding: var(--spr-step-3) var(--spr-step-2);
}

.dartStrip-grid { display: grid; gap: var(--spr-step-3); grid-template-columns: repeat(2, minmax(0, 1fr)); }

.dartStrip-lead {
	background: var(--spr-raised);
	border-radius: var(--r-step-4);
	margin: 0 0 var(--spr-step-4);
	padding: var(--spr-step-5) var(--spr-step-4);
}

.dartStrip-prose { color: var(--spr-soft-text); font-size: var(--spr-sm); margin: var(--spr-step-1) 0 0; }

.dartStrip-quote {
	font-size: var(--spr-display-4);
	font-style: italic;
	line-height: var(--spr-default);
	margin: var(--spr-step-2) 0;
}

.dartStrip-rate { display: inline-flex; flex-shrink: 0; gap: 3px; }

.dartStrip-star {
	background: var(--spr-spot);
	clip-path: polygon(50% 0, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
	display: inline-block;
	flex-shrink: 0;
	height: 16px;
	width: 16px;
}

.dartStrip-star.is-off { background: var(--spr-stroke-heavy); }

.dartStrip-tier { align-items: center; display: flex; flex-wrap: wrap; gap: var(--spr-step-1); justify-content: space-between; }

.dartStrip-who { color: var(--spr-body); font-weight: var(--spr-bold); font-style: normal; }

.dartStrip-lead .dartStrip-rate .dartStrip-star { height: 28px; width: 28px; }

/* data table (TABLE-01 striped) */
.districtSlider { padding-block: var(--spr-step-4); }

.districtSlider-caption { font-size: var(--spr-h2); margin-bottom: var(--spr-step-3); }

.districtSlider-frame {
	border-radius: var(--r-step-3);
	overflow-x: auto;
	width: 100%;
}

.districtSlider-table {
	background: var(--spr-raised);
	min-width: 560px;
	width: 100%;
}

.districtSlider-table td {
	color: var(--spr-soft-text);
	font-size: var(--spr-sm);
	padding: var(--spr-step-2);
	text-align: left;
	vertical-align: top;
}

.districtSlider-table td:first-child { color: var(--spr-body); font-weight: var(--spr-semi); }

.districtSlider-table th {
	background: var(--spr-lead);
	color: var(--spr-sheet);
	font-size: var(--spr-micro-head);
	font-weight: var(--spr-semi);
	letter-spacing: var(--spr-wide);
	padding: var(--spr-step-2);
	text-align: left;
	text-transform: uppercase;
}

.districtSlider-table tr:nth-child(even) td { background: rgba(255, 255, 255, 0.03); }

.districtSlider-table tr:hover td { background: rgba(255, 255, 255, 0.06); transition: background var(--spr-quick) var(--spr-exit); }

/* 18+ band (RG-04 dark strip with coloured edge) */
.guardBand {
	background: var(--spr-raised);
	border-bottom: var(--b-wide) solid var(--spr-advisory);
	color: var(--spr-body);
	font-size: var(--spr-legal);
	line-height: 1.75;
	margin: 0;
	padding: var(--spr-step-1) var(--spr-pad-sm);
	text-align: center;
}

.guardBand-href {
	color: var(--spr-spot);
	display: inline-block;
	text-decoration: underline;
	text-decoration-color: var(--spr-advisory);
	text-underline-offset: 3px;
}

.guardBand-mark {
	color: var(--spr-body);
	font-weight: var(--spr-bold);
	letter-spacing: var(--spr-wide);
}

/* items grid (GRID-10 compact tiles) */
.huskDisplay { padding-block: var(--spr-step-4); }

.huskDisplay-caption { font-size: var(--spr-h2); margin-bottom: var(--spr-step-3); }

.huskDisplay-card {
	background: var(--spr-raised);
	border: var(--spr-slim) dashed var(--spr-stroke);
	border-radius: var(--r-step-2);
	min-height: 180px;
	padding: var(--spr-step-3);
	transition: border-color var(--spr-quick) var(--spr-exit);
}

.huskDisplay-card:hover { border-color: var(--spr-spot); }

.huskDisplay-grid { display: grid; gap: var(--spr-step-2); grid-template-columns: repeat(4, minmax(0, 1fr)); }

.huskDisplay-icon {
	display: block;
	fill: var(--spr-spot);
	height: 30px;
	margin-bottom: var(--spr-step-1);
	width: 30px;
}

.huskDisplay-prose { color: var(--spr-soft-text); font-size: var(--spr-sm); line-height: var(--spr-default); margin: 0; }

.huskDisplay-title { font-size: var(--spr-h5); margin-bottom: var(--spr-step-1); }

/* body links inside prose */
.inkHref {
	background-image: linear-gradient(currentColor, currentColor);
	background-position: 0 100%;
	background-repeat: no-repeat;
	background-size: 0 var(--spr-even);
	color: var(--spr-spot);
	text-decoration: none;
	transition: background-size var(--spr-quick) var(--spr-exit), color var(--spr-quick) var(--spr-exit);
}

.inkHref:hover,
.inkHref:focus-visible { background-size: 100% var(--spr-even); color: var(--spr-key-active); }

/* inline cta (INLINE-CTA-01 banner strip) */
.labelGrid { background: var(--spr-lead); display: block; padding-block: var(--spr-step-3); }

.labelGrid-cta { flex-shrink: 0; }

.labelGrid-prose {
	color: var(--spr-sheet);
	font-size: var(--spr-h5);
	font-weight: var(--spr-bold);
	margin: 0;
}

.labelGrid-shell {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: var(--spr-step-3);
	justify-content: space-between;
}

/* main flow */
.mainFlow { display: block; }

.pageBody { min-height: 100%; position: relative; }

/* prose (PROSE-14 alternating filled sections) */
.padContainer { padding-block: var(--spr-step-4); }

.padContainer-act { align-items: center; display: flex; flex-wrap: wrap; gap: var(--spr-step-2); margin-top: var(--spr-step-3); }

.padContainer-figure { margin: var(--spr-step-3) 0 0; }

.padContainer-list { color: var(--spr-body); line-height: var(--spr-airy); padding-left: var(--spr-step-3); }

.padContainer-list li { margin-bottom: var(--spr-step-1); }

.padContainer-media {
	border-radius: var(--r-step-3);
	display: block;
	height: clamp(230px, 42vh, 420px);
	object-fit: cover;
	width: 100%;
}

.padContainer-cta { flex-shrink: 0; }

.padContainer-note { color: var(--spr-soft-text); font-size: var(--spr-legal); }

.padContainer-title { font-size: var(--spr-h2); margin-block-start: 0; margin-bottom: var(--spr-step-2); }

.padContainer.is-plate .padContainer-shell {
	border: var(--spr-slim) dashed var(--spr-stroke);
	border-radius: var(--r-step-3);
	max-width: calc(var(--spr-max) + 2 * var(--spr-pad-lg));
	padding-block: var(--spr-step-4);
}

/* hero (HERO-01 full-bleed cinematic) */
.padPanel {
	align-items: flex-end;
	background-image: url('/view/render.webp');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	display: flex;
	max-height: 900px;
	min-height: min(calc(100vh - var(--spr-chrome-h, 110px)), 860px);
	padding-block: var(--spr-step-5);
	position: relative;
}

.padPanel-cta { position: relative; z-index: 3; }

.padPanel-shell { margin-block-end: min(22%, 240px); position: relative; z-index: 3; }

.padPanel-sub {
	color: rgba(255, 255, 255, 0.88);
	font-size: var(--spr-h5);
	line-height: var(--spr-default);
	margin: var(--spr-step-3) 0 var(--spr-step-4);
	max-width: var(--spr-brief);
}

.padPanel-title {
	color: var(--spr-body);
	font-size: clamp(30px, 5.4vw, 48px);
	max-width: 15ch;
	text-shadow: 0 2px 18px rgba(0, 0, 0, 0.55);
}

.padPanel-veil {
	background: linear-gradient(180deg, rgba(10, 9, 9, 0.25) 0%, rgba(10, 9, 9, 0.72) 62%, rgba(10, 9, 9, 0.95) 100%);
	inset: 0;
	position: absolute;
	z-index: 2;
}

.padPanel.is-tight { max-height: none; min-height: clamp(360px, 52vh, 520px); }

/* faq (FAQ-04 side-numbered accordion) */
.pulseGroup { padding-block: var(--spr-step-4); }

.pulseGroup-answer { color: var(--spr-soft-text); padding: 0 0 var(--spr-step-2) 56px; }

.pulseGroup-answer p { margin: 0; }

.pulseGroup-arrow {
	border-bottom: var(--spr-even) solid var(--spr-spot);
	border-right: var(--spr-even) solid var(--spr-spot);
	height: 9px;
	transform: rotate(45deg);
	width: 9px;
}

.pulseGroup-caption { font-size: var(--spr-h2); margin-bottom: var(--spr-step-3); }

.pulseGroup-list { border-top: var(--spr-slim) dashed var(--spr-stroke); }

.pulseGroup-num {
	color: var(--spr-spot);
	font-family: var(--f-lead);
	font-size: var(--spr-h3);
	font-weight: var(--spr-bold);
	line-height: 1;
}

.pulseGroup-summary {
	align-items: baseline;
	cursor: pointer;
	display: grid;
	gap: var(--spr-step-2);
	grid-template-columns: 40px 1fr 16px;
	list-style: none;
	padding-block: var(--spr-step-2);
}

.pulseGroup-summary::-webkit-details-marker { display: none; }

.pulseGroup-title { font-size: var(--spr-h5); font-weight: var(--spr-bold); margin: 0; }

.pulseGroup-unit { border-bottom: var(--spr-slim) dashed var(--spr-stroke); }

.pulseGroup-unit[open] .pulseGroup-arrow { transform: rotate(-135deg); }

/* legal (LEGAL-02 numbered sections) */
.sectionTrack { padding-block: var(--spr-step-4); }

.sectionTrack-intro { color: var(--spr-soft-text); font-size: var(--spr-h5); }

.sectionTrack-list { color: var(--spr-soft-text); line-height: var(--spr-airy); padding-left: var(--spr-step-3); }

.sectionTrack-note {
	border-left: var(--b-wide) solid var(--spr-advisory);
	color: var(--spr-soft-text);
	font-size: var(--spr-sm);
	margin-top: var(--spr-step-3);
	padding-left: var(--spr-step-2);
}

.sectionTrack-part { counter-reset: sectionTrack-count; }

.sectionTrack-tier { counter-increment: sectionTrack-count; margin-bottom: var(--spr-step-3); }

.sectionTrack-tier p { padding-left: var(--spr-step-3); }

.sectionTrack-title { font-size: var(--spr-h3); margin-bottom: var(--spr-step-1); margin-top: var(--spr-step-3); }

.sectionTrack-tier .sectionTrack-title::before {
	color: var(--spr-spot);
	content: counter(sectionTrack-count) '. ';
	font-family: var(--f-lead);
	font-weight: var(--spr-bold);
	margin-right: var(--spr-step-1);
}

/* skip link */
.skipJump {
	background: var(--spr-spot);
	color: var(--spr-sheet);
	left: var(--spr-step-2);
	padding: var(--spr-step-1) var(--spr-step-2);
	position: absolute;
	z-index: 200;
}

.skipJump:not(:focus) { top: -200px !important; }

.skipJump:focus { top: var(--spr-step-1); }

/* cookie banner (COOK-09 left-anchored slab) */
.slateBlock {
	inset-block-end: var(--spr-step-4);
	inset-inline-end: auto;
	inset-inline-start: var(--spr-step-4);
	max-width: min(420px, calc(100vw - 2 * var(--spr-step-4)));
	opacity: 0;
	pointer-events: none;
	position: fixed;
	transition: opacity var(--spr-regular) var(--spr-exit), visibility var(--spr-regular) var(--spr-exit);
	visibility: hidden;
	z-index: 90;
}

.slateBlock-grant,
.slateBlock-skip {
	border-radius: var(--r-step-1);
	cursor: pointer;
	font-family: var(--f-lead);
	font-size: var(--spr-sm);
	font-weight: var(--spr-bold);
	min-height: 44px;
	padding-inline: var(--spr-step-3);
}

.slateBlock-grant { background: var(--spr-spot); border: 0; color: var(--spr-sheet); }

.slateBlock-grant:hover,
.slateBlock-grant:focus-visible { background: var(--spr-key-active); color: var(--spr-sheet); }

.slateBlock-keys { display: flex; flex-wrap: wrap; gap: var(--spr-step-1); }

.slateBlock-say { color: var(--spr-body); font-size: var(--spr-sm); line-height: var(--spr-default); margin: 0; }

.slateBlock-shell {
	background: var(--spr-sheet);
	border-inline-start: 4px solid var(--spr-spot);
	border-radius: 0 var(--r-step-2) var(--r-step-2) 0;
	box-shadow: var(--d-step-5);
	display: flex;
	flex-direction: column;
	gap: var(--spr-step-2);
	padding: var(--spr-step-3);
}

.slateBlock-skip {
	background: transparent;
	border: var(--spr-slim) solid var(--spr-stroke-heavy);
	color: var(--spr-body);
}

.slateBlock-skip:hover,
.slateBlock-skip:focus-visible { background: var(--spr-raised); color: var(--spr-spot); }

.slateBlock.is-live { opacity: 1; pointer-events: auto; visibility: visible; }

/* error block (ERR-06 bordered card) */
.slateTrack { padding-block: var(--spr-step-5); }

.slateTrack-back {
	background: var(--spr-spot);
	border-radius: var(--r-step-2);
	color: var(--spr-sheet);
	display: inline-block;
	font-family: var(--f-lead);
	font-weight: var(--spr-bold);
	min-height: 52px;
	line-height: 52px;
	padding-inline: var(--spr-step-4);
	text-decoration: none;
}

.slateTrack-back:hover,
.slateTrack-back:focus-visible { background: var(--spr-key-active); color: var(--spr-sheet); }

.slateTrack-card {
	align-items: center;
	background: var(--spr-raised);
	border: var(--spr-even) solid var(--spr-spot);
	border-radius: var(--r-step-4);
	display: flex;
	flex-direction: column;
	gap: var(--spr-step-3);
	margin-inline: auto;
	max-width: var(--spr-brief);
	padding: var(--spr-step-5) var(--spr-step-4);
	text-align: center;
}

.slateTrack-prose { color: var(--spr-soft-text); margin: 0; }

.slateTrack-title { font-size: var(--spr-h3); }

/* utilities */
.srOnly {
	clip: rect(0 0 0 0);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute;
	white-space: nowrap;
	width: 1px;
}

/* tablet */
@media (max-width: 1099px) {
	.arrowSet-card { gap: var(--spr-step-4); }
	.blockSpan-grid { gap: var(--spr-step-3); }
	.huskDisplay-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }

	.arrowSet-shell,
	.beamRail-shell,
	.blockSpan-shell,
	.boardRegion-shell,
	.cabinWrapper-shell,
	.cellTrack-shell,
	.dartStrip-shell,
	.districtSlider-shell,
	.huskDisplay-shell,
	.labelGrid-shell,
	.padContainer-shell,
	.padPanel-shell,
	.pulseGroup-shell,
	.sectionTrack-shell,
	.slateTrack-shell { padding-inline: var(--spr-pad-md); }
}

/* burger threshold */
@media (max-width: 899px) {
	.beamRail-nav { display: none; }
	.beamRail-toggle { display: inline-flex; margin-right: auto; }
	.beamRail-emblem { margin-inline-start: 0; margin-inline-end: 0; }
}

@media (min-width: 900px) {
	.beamRail-drawer { display: none !important; }
}

/* mobile */
@media (max-width: 799px) {
	:root {
		--spr-display-1: 32px;
		--spr-h2: 26px;
		--spr-h3: 22px;
		--spr-display-4: 19px;
		--spr-h5: 17px;
		--spr-micro-head: 15px;
		--spr-reading: 18px;
		--spr-sm: 15px;
		--spr-legal: 13px;
	}

	.arrowSet-card { grid-template-columns: 1fr; justify-items: center; padding: var(--spr-step-4) var(--spr-step-3); text-align: center; }
	.arrowSet-headshot { height: 120px; width: 120px; }
	.arrowSet-tags { justify-content: center; }
	.blockSpan-grid { grid-template-columns: 1fr; }
	.blockSpan-media { height: 44px; }
	.cellTrack-shell { min-height: 64px; }
	.dartStrip-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.dartStrip-lead { padding: var(--spr-step-3); }
	.dartStrip-lead .dartStrip-rate .dartStrip-star { height: 22px; width: 22px; }
	.districtSlider-table { min-width: 520px; }
	.huskDisplay-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.padContainer-media { height: clamp(200px, 34vh, 300px); }
	.padContainer.is-plate .padContainer-shell { padding-block: var(--spr-step-3); }
	.padPanel { min-height: max(480px, calc(70vh - var(--spr-chrome-h, 110px))); padding-block: var(--spr-step-4) var(--spr-step-5); }
	.padPanel-cta { display: block; text-align: center; }
	.padPanel-title { max-width: none; }
	.pulseGroup-answer { padding-left: 0; }
	.pulseGroup-summary { grid-template-columns: 32px 1fr 14px; }
	.sectionTrack-tier p { padding-left: 0; }

	.arrowSet-shell,
	.beamRail-shell,
	.blockSpan-shell,
	.boardRegion-shell,
	.cabinWrapper-shell,
	.cellTrack-shell,
	.dartStrip-shell,
	.districtSlider-shell,
	.huskDisplay-shell,
	.labelGrid-shell,
	.padContainer-shell,
	.padPanel-shell,
	.pulseGroup-shell,
	.sectionTrack-shell,
	.slateTrack-shell { padding-inline: var(--spr-pad-sm); }
}

@media (max-width: 720px) {
	.slateBlock {
		inset-block-end: var(--spr-step-2);
		inset-inline-end: var(--spr-step-2);
		inset-inline-start: var(--spr-step-2);
		max-width: none;
	}

	.slateBlock-grant,
	.slateBlock-skip { flex: 1 1 auto; font-size: 13px; min-height: 40px; padding-inline: var(--spr-step-2); }

	.slateBlock-say { font-size: 13px; line-height: 1.4; }

	.slateBlock-shell { gap: var(--spr-step-1); padding: var(--spr-step-2); }
}

@media (max-width: 499px) {
	.beamRail-media { height: 34px; }
	.dartStrip-grid { grid-template-columns: 1fr; }
	.huskDisplay-grid { grid-template-columns: 1fr; }
	.blockSpan-bottom { flex-direction: column; align-items: flex-start; }
	.cellTrack-shell { flex-direction: column; align-items: flex-start; }
	.labelGrid-shell { flex-direction: column; align-items: stretch; }
	.labelGrid-cta { text-align: center; }
	.padContainer.is-plate .padContainer-shell { border-inline: 0; border-radius: 0; }
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation: none !important;
		scroll-behavior: auto !important;
		transition: none !important;
	}

	[data-appear] { opacity: 1; transform: none; }

	[data-appear] > * { clip-path: none; }
}
.luki-go{display:inline-flex;align-items:center;justify-content:center;padding:0 var(--spr-step-4);min-height:52px;border-radius:var(--r-step-2);font-weight:var(--spr-bold)}
.luki-go{position:relative;
  background:#7C3AED;color:#FFFFFF;text-decoration:none;
  transition:background var(--spr-quick) var(--spr-exit),color var(--spr-quick) var(--spr-exit),transform var(--spr-quick) var(--spr-exit);}
.luki-go.luki-go{color:#FFFFFF;text-decoration:none;}
.luki-go:hover{background:#6D28D9;color:#FFFFFF;animation:none}
.luki-go.luki-go:hover{color:#FFFFFF;text-decoration:none}
.luki-go:hover::after{animation:none}
.luki-go:active{background:#5B21B6;color:#FFFFFF}
.luki-go:focus-visible{outline:3px solid #0A0909;outline-offset:3px}
@keyframes luki-wake{0%,100%{transform:scaleX(0)}40%,60%{transform:scaleX(1)}}
.luki-go::after{content:"";position:absolute;left:12%;right:12%;bottom:6px;height:3px;background:currentColor;opacity:.5;transform-origin:left;animation:luki-wake 1.3s cubic-bezier(.50,.10,.70,1) infinite}
@media (prefers-reduced-motion:reduce){.luki-go,.luki-go::after{animation:none!important;transition:none!important}}

/* offer button geometry inside large blocks */
.padPanel .luki-go{font-size:var(--spr-micro-head);min-height:56px;padding-inline:var(--spr-step-5)}
.cellTrack .luki-go,.labelGrid .luki-go{min-height:52px}
@media (max-width:499px){.padPanel .luki-go,.labelGrid .luki-go{width:100%}}

@media (max-width: 937px) {
  .beamRail-nav,
  .beamRail-list,
  .beamRail-href,
  .beamRail-more { display: none !important; }
  .beamRail-toggle { display: flex !important; }
}
