/* = typeface files = */
@font-face {
	font-family: 'Fredoka';
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url('/media/fredoka-400.woff2') format('woff2');
}
@font-face {
	font-family: 'Fredoka';
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url('/media/fredoka-500.woff2') format('woff2');
}
@font-face {
	font-family: 'Fredoka';
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url('/media/fredoka-600.woff2') format('woff2');
}

/* = tokens = */
:root {
	--ink-pillar: #276cf8;
	--ink-spot: #14c78c;
	--ink-spot-deep: #11a676;
	--ink-bg: #1f3988;
	--ink-panel: #25439b;
	--ink-script: #ffffff;
	--ink-faint: #c2c0c0;
	--ink-stroke: #35509f;
	--ink-stroke-heavy: #4f6ac0;
	--ink-ramp-start: #70edbe;
	--ink-ramp-end: #28eaa6;
	--ink-caution: #a51d1d;

	--flow-hair: 4px;
	--flow-tiny: 12px;
	--flow-snug: 20px;
	--flow-base: 36px;
	--flow-wide: 56px;
	--flow-roomy: 84px;
	--flow-vast: 120px;
	--flow-huge: 180px;

	--round-capsule: 9999px;
	--round-orb: 50%;
	--round-hair: 1px;
	--round-tiny: 2px;
	--round-snug: 6px;
	--round-base: 10px;
	--round-wide: 16px;
	--round-roomy: 22px;
	--round-vast: 28px;
	--round-huge: 36px;

	--face-title: 'Fredoka', 'Trebuchet MS', system-ui, sans-serif;
	--face-prose: 'Fredoka', 'Trebuchet MS', system-ui, sans-serif;

	--fs-display-1: 48px;
	--fs-display-2: 36px;
	--fs-lg-2: 26px;
	--fs-h4: 21px;
	--fs-sm-2: 18px;
	--fs-xs-2: 16px;
	--fs-copy: 19px;
	--fs-small: 16px;
	--fs-micro: 14px;

	--line-height-dense: 1.2;
	--line-height-regular: 1.7;
	--line-height-open: 2;

	--weight-book: 400;
	--weight-half: 500;
	--weight-bold: 600;

	--letter-snug: -0.01em;
	--letter-base: 0;
	--letter-loose: 0.02em;

	--lift-hair: none;
	--lift-tiny: none;
	--lift-snug: 0 1px 3px rgba(6, 14, 40, 0.35);
	--lift-base: 0 4px 12px rgba(6, 14, 40, 0.42);
	--lift-wide: 0 8px 24px rgba(6, 14, 40, 0.48);
	--lift-roomy: 0 12px 30px rgba(6, 14, 40, 0.52);
	--lift-vast: 0 18px 40px rgba(6, 14, 40, 0.56);
	--lift-huge: 0 26px 56px rgba(6, 14, 40, 0.6);

	--beat-short: 130ms;
	--beat-base: 250ms;
	--beat-long: 421ms;
	--ease-settle: cubic-bezier(0.14, 0.63, 0.54, 0.93);
	--ease-start: cubic-bezier(0.46, 0.07, 0.86, 0.37);
	--ease-in-out: cubic-bezier(0.41, 0.12, 0.53, 1);
	--ease-overshoot: cubic-bezier(0.33, 1.6, 0.61, 1.15);

	--bounds-full: 1300px;
	--bounds-narrow: 560px;
	--bounds-edge-wide: 56px;
	--bounds-edge-mid: 24px;
	--bounds-pad-sm: 16px;

	--stroke-hair: 1px;
	--stroke-regular: 2px;
	--stroke-wide: 3px;

	--topbar-size-desktop: 54px;
	--topbar-height-mobile: 54px;

	--pist-shell: 92px;
	--pist-sec-y: 44px;
	--pist-tier: 34px;
}

/* = narrow-screen scale = */
@media (max-width: 719px) {
	:root {
		--fs-display-1: 32px;
		--fs-display-2: 26px;
		--fs-lg-2: 22px;
		--fs-h4: 19px;
		--fs-sm-2: 17px;
		--fs-xs-2: 15px;
		--fs-copy: 18px;
		--fs-small: 15px;
		--fs-micro: 13px;
		--pist-sec-y: 34px;
	}
}

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

html,
body {
	overflow-x: clip;
}

html {
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
	margin-block-start: var(--pist-shell, 92px);
	background: var(--ink-bg);
	color: var(--ink-script);
	font-family: var(--face-prose);
	font-size: var(--fs-copy);
	font-weight: var(--weight-book);
	line-height: var(--line-height-regular);
	letter-spacing: var(--letter-base);
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

main {
	display: block;
	flex: 1 0 auto;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	overflow-wrap: anywhere;
	margin: 0;
	color: var(--ink-script);
}

h1 {
	font-family: var(--face-title);
	font-size: clamp(30px, 4.4vw, var(--fs-display-1));
	font-weight: var(--weight-bold);
	line-height: var(--line-height-dense);
	letter-spacing: var(--letter-snug);
}

h2 {
	font-family: var(--face-title);
	font-size: clamp(24px, 3.1vw, var(--fs-display-2));
	font-weight: var(--weight-bold);
	line-height: var(--line-height-dense);
}

h3 {
	font-family: var(--face-prose);
	font-size: var(--fs-lg-2);
	font-weight: var(--weight-bold);
	line-height: 1.3;
}

h4 {
	font-family: var(--face-prose);
	font-size: var(--fs-h4);
	font-weight: var(--weight-bold);
}

p {
	margin: 0 0 var(--flow-snug) 0;
}

p:last-child {
	margin-bottom: 0;
}

a {
	color: var(--ink-spot);
	text-decoration: none;
	transition: color var(--beat-short) var(--ease-settle);
}

a:hover {
	color: var(--ink-ramp-start);
}

img {
	max-width: 100%;
}

ul,
ol {
	margin: 0;
	padding: 0;
}

figure {
	margin: 0;
}

blockquote {
	margin: 0;
}

button {
	font: inherit;
}

:focus-visible {
	outline: var(--stroke-regular) solid var(--ink-ramp-start);
	outline-offset: 2px;
}

[id] {
	scroll-margin-block-start: calc(var(--pist-shell, 92px) + var(--flow-tiny));
}

.skip-hop {
	position: absolute;
	inset-inline-start: var(--flow-snug);
	background: var(--ink-spot);
	color: #0d1b3f;
	padding: var(--flow-tiny) var(--flow-snug);
	border-radius: var(--round-base);
	font-weight: var(--weight-bold);
	z-index: 200;
}

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

.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

/* = shared shells = */
.pist-hold {
	width: 100%;
	max-width: calc(var(--bounds-full) + 2 * var(--bounds-edge-wide));
	margin-inline: auto;
	padding-inline: var(--bounds-edge-wide) var(--bounds-edge-mid);
}

.pist-band {
	padding-block: var(--pist-sec-y);
}

.pist-frame {
	width: 100%;
	margin-block: var(--flow-base);
	text-align: center;
}

.pist-shot {
	width: 100%;
	height: auto;
	border-radius: var(--round-wide);
	box-shadow: var(--lift-base);
}

.pist-shot-wide {
	max-width: 720px;
}

.pist-shot-tall {
	max-width: 380px;
}

.pist-act {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding: 14px 30px;
	border-radius: var(--round-capsule);
	font-family: var(--face-title);
	font-size: var(--fs-small);
	font-weight: var(--weight-bold);
	letter-spacing: var(--letter-loose);
	text-align: center;
	text-decoration: none;
}

.pist-fine {
	display: block;
	font-size: var(--fs-micro);
	color: var(--ink-faint);
	line-height: var(--line-height-regular);
}

@media (max-width: 1039px) {
	.pist-hold {
		padding-inline: var(--bounds-edge-mid);
	}
}

@media (max-width: 719px) {
	.pist-hold {
		padding-inline: var(--bounds-pad-sm);
	}
	.pist-shot-wide,
	.pist-shot-tall {
		max-width: 100%;
	}
	.pist-frame {
		margin-block: var(--flow-snug);
	}
}

/* = a13 legal = */
.a13 {
	padding-block: var(--pist-sec-y);
	counter-reset: pist-clause;
}

.a13-lead {
	font-size: var(--fs-copy);
	color: var(--ink-faint);
	margin-block-end: var(--flow-base);
}

.a13-part {
	margin-block-end: var(--flow-base);
}

.a13-heading {
	font-size: var(--fs-h4);
	font-weight: var(--weight-bold);
	margin-block-end: var(--flow-tiny);
}

.a13-heading::before {
	counter-increment: pist-clause;
	content: '§ ' counter(pist-clause) '. ';
	color: var(--ink-spot);
	font-family: var(--face-title);
}

.a13-line {
	font-size: var(--fs-small);
	line-height: var(--line-height-regular);
	color: var(--ink-script);
	margin-block-end: var(--flow-tiny);
}

.a13-roll {
	list-style: none;
	margin-block: var(--flow-tiny) 0;
}

.a13-one {
	position: relative;
	padding-inline-start: var(--flow-snug);
	font-size: var(--fs-small);
	color: var(--ink-faint);
	margin-block-end: var(--flow-hair);
}

.a13-one::before {
	content: '▸';
	position: absolute;
	inset-inline-start: 0;
	color: var(--ink-spot);
}

.a13-note {
	display: block;
	margin-block-start: var(--flow-base);
	padding: var(--flow-snug);
	background: var(--ink-panel);
	color: var(--ink-faint);
	border-radius: var(--round-base);
	border-inline-start: var(--stroke-wide) solid var(--ink-stroke-heavy);
	font-size: var(--fs-micro);
}

.a13-when {
	display: block;
	font-size: var(--fs-micro);
	color: var(--ink-faint);
	margin-block-end: var(--flow-snug);
}

/* = e66 header = */
.e66 {
	position: fixed;
	inset-block-start: 0;
	inset-inline: 0;
	z-index: 120;
	background: var(--ink-bg);
	color: var(--ink-script);
	border-block-end: var(--stroke-hair) solid var(--ink-stroke);
	transition: transform var(--beat-base) var(--ease-settle);
}

.e66.is-away {
	transform: translateY(-100%);
}

.e66-tier {
	height: var(--pist-tier);
	background: var(--ink-panel);
	color: var(--ink-faint);
	border-block-end: var(--stroke-hair) solid var(--ink-stroke);
	font-size: var(--fs-micro);
}

.e66-tier-hold {
	display: flex;
	align-items: center;
	gap: var(--flow-snug);
	height: 100%;
	width: 100%;
	max-width: calc(var(--bounds-full) + 2 * var(--bounds-edge-wide));
	margin-inline: auto;
	padding-inline: var(--bounds-edge-wide) var(--bounds-edge-mid);
}

.e66-note {
	color: var(--ink-faint);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.e66-sub {
	margin-inline-start: auto;
	display: inline-flex;
	align-items: center;
	gap: var(--flow-tiny);
	color: var(--ink-faint);
	white-space: nowrap;
}

.e66-sub a {
	color: var(--ink-faint);
}

.e66-sub a:hover {
	color: var(--ink-script);
}

.e66-when {
	display: inline-flex;
	align-items: center;
	padding: 2px 8px;
	border: var(--stroke-hair) solid var(--ink-stroke-heavy);
	border-radius: var(--round-capsule);
	background: var(--ink-bg);
	color: var(--ink-script);
	font-size: 11px;
	font-weight: var(--weight-half);
	letter-spacing: var(--letter-loose);
}

.e66-base {
	height: 54px;
	min-height: 54px;
	transition: height var(--beat-base) var(--ease-settle);
}

.e66.is-tight .e66-base {
	height: 46px;
}

.e66-base-hold {
	display: flex;
	align-items: center;
	gap: var(--flow-snug);
	height: 100%;
	width: 100%;
	max-width: calc(var(--bounds-full) + 2 * var(--bounds-edge-wide));
	margin-inline: auto;
	padding-inline: var(--bounds-edge-wide) var(--bounds-edge-mid);
}

.e66-badge {
	order: 1;
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
	padding: 3px 14px;
	background: var(--ink-panel);
	color: var(--ink-script);
	border: var(--stroke-hair) solid var(--ink-stroke);
	border-radius: var(--round-capsule);
}

.e66-badge-shot {
	display: block;
	height: 44px;
	width: auto;
	flex-shrink: 0;
}

.e66.is-tight .e66-badge-shot {
	height: 36px;
}

.e66-index {
	order: 2;
	flex: 0 0 auto;
	margin-inline-end: auto;
}

.e66-roll {
	display: flex;
	align-items: center;
	gap: var(--flow-snug);
	list-style: none;
}

.e66-one {
	display: flex;
	align-items: center;
}

.e66-one + .e66-one::before {
	content: '/';
	color: var(--ink-stroke-heavy);
	margin-inline-end: var(--flow-snug);
}

.e66-anchor {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding-block-start: 3px;
	border-block-start: var(--stroke-regular) solid transparent;
	color: var(--ink-script);
	font-size: 13px;
	font-weight: 500;
	white-space: nowrap;
	transition: transform var(--beat-short) var(--ease-settle), color var(--beat-short) var(--ease-settle);
}

.e66-anchor:hover {
	color: var(--ink-ramp-start);
	transform: translateY(-2px);
}

.e66-anchor[aria-current='page'] {
	border-block-start-color: var(--ink-spot);
	color: var(--ink-script);
}

.e66-more {
	position: relative;
	display: flex;
	align-items: center;
}

.e66-more-opener {
	display: inline-flex;
	align-items: center;
	gap: var(--flow-hair);
	min-height: 44px;
	padding-inline: var(--flow-tiny);
	background: transparent;
	color: var(--ink-script);
	border: 0;
	font-size: 13px;
	font-weight: 500;
	cursor: pointer;
	white-space: nowrap;
}

.e66-more-opener:hover {
	color: var(--ink-ramp-start);
}

.e66-more-opener::after {
	content: '▾';
	font-size: 11px;
}

.e66-more-pane {
	display: none;
	position: absolute;
	inset-block-start: calc(100% + 6px);
	inset-inline-end: 0;
	min-width: 220px;
	max-height: 70vh;
	overflow-y: auto;
	list-style: none;
	background: var(--ink-panel);
	color: var(--ink-script);
	border: var(--stroke-hair) solid var(--ink-stroke-heavy);
	border-radius: var(--round-base);
	box-shadow: var(--lift-wide);
	padding: var(--flow-tiny);
	z-index: 130;
}

.e66-more-pane.is-open {
	display: block;
}

.e66-more-pane .e66-one {
	display: block;
}

.e66-more-pane .e66-one + .e66-one::before {
	content: none;
}

.e66-more-pane .e66-anchor {
	display: flex;
	width: 100%;
	padding-inline: var(--flow-tiny);
	border-block-start: 0;
	min-height: 40px;
}

.e66-controls {
	order: 3;
	display: flex;
	align-items: center;
	gap: var(--flow-tiny);
	flex-shrink: 0;
}

.e66-hook {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding-inline: var(--flow-base);
	border-radius: var(--round-base);
	background: var(--ink-spot);
	color: #0d1b3f;
	font-family: var(--face-title);
	font-size: 14px;
	font-weight: var(--weight-bold);
	white-space: nowrap;
	flex-shrink: 0;
	text-decoration: none;
}

.e66-hook:hover {
	background: var(--ink-spot-deep);
	color: #0d1b3f;
}

.e66-hook-quiet {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 40px;
	padding-inline: var(--flow-snug);
	border: var(--stroke-hair) solid var(--ink-stroke-heavy);
	border-radius: var(--round-base);
	background: var(--ink-bg);
	color: var(--ink-script);
	font-family: var(--face-title);
	font-size: 14px;
	font-weight: var(--weight-half);
	white-space: nowrap;
	flex-shrink: 0;
	text-decoration: none;
}

.e66-hook-quiet:hover {
	background: var(--ink-script);
	color: var(--ink-bg);
}

.e66-menu-tap {
	order: 4;
	display: none;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 5px;
	min-height: 44px;
	padding-inline: var(--flow-tiny);
	background: transparent;
	color: var(--ink-script);
	border: 0;
	cursor: pointer;
	flex-shrink: 0;
}

.e66-lines {
	display: block;
	width: 22px;
	height: 2px;
	background: var(--ink-script);
	border-radius: var(--round-tiny);
	transition: transform var(--beat-short) var(--ease-settle);
}

.e66-menu-tap[aria-expanded='true'] .e66-lines:nth-child(1) {
	transform: translateY(3px) rotate(45deg);
}

.e66-menu-tap[aria-expanded='true'] .e66-lines:nth-child(2) {
	transform: translateY(-3px) rotate(-45deg);
}

.e66-panel {
	display: none;
	position: absolute;
	inset-block-start: 100%;
	inset-inline: 0;
	max-height: 74vh;
	overflow-y: auto;
	background: var(--ink-panel);
	color: var(--ink-script);
	border-block-end: var(--stroke-hair) solid var(--ink-stroke);
	box-shadow: var(--lift-wide);
	padding: var(--flow-snug) 0;
	z-index: 125;
}

.e66-panel.is-open {
	display: block;
}

.e66-panel .e66-roll {
	flex-direction: column;
	align-items: stretch;
	gap: 0;
}

.e66-panel .e66-one {
	display: block;
}

.e66-panel .e66-one + .e66-one::before {
	content: none;
}

.e66-panel .e66-anchor {
	display: flex;
	width: 100%;
	min-height: 46px;
	border-block-start: 0;
	border-block-end: var(--stroke-hair) solid var(--ink-stroke);
	font-size: 16px;
}

.e66-panel .e66-anchor:hover {
	transform: none;
}

.e66-panel-quiet {
	display: flex;
	margin: var(--flow-tiny) 0 0 0;
}

@media (max-width: 1379px) {
	.e66-roll {
		gap: var(--flow-tiny);
	}
	.e66-one + .e66-one::before {
		margin-inline-end: var(--flow-tiny);
	}
	.e66-anchor {
		font-size: 12.5px;
	}
	.e66-badge-shot {
		height: 38px;
	}
	.e66-hook,
	.e66-hook-quiet {
		padding-inline: var(--flow-snug);
		font-size: 13px;
	}
}

@media (max-width: 1039px) {
	.e66-index {
		display: none;
	}
	.e66-menu-tap {
		display: inline-flex;
	}
	.e66-controls {
		margin-inline-start: auto;
	}
	.e66-hook-quiet {
		display: none;
	}
	.e66-note {
		display: none;
	}
	.e66-sub {
		margin-inline-start: 0;
	}
}

@media (max-width: 619px) {
	.e66-base {
		height: auto;
		min-height: 54px;
		padding-block: 8px;
	}
	.e66-base-hold {
		flex-wrap: wrap;
		gap: var(--flow-tiny);
		row-gap: 8px;
	}
	.e66-badge-shot {
		height: 32px;
	}
	.e66-badge {
		padding-inline: 10px;
	}
	.e66-menu-tap {
		order: 2;
		margin-inline-start: auto;
	}
	.e66-controls {
		order: 3;
		flex-basis: 100%;
		margin-inline-start: 0;
	}
	.e66-hook {
		width: 100%;
	}
}

/* = k39 contact form = */
.k39 {
	padding-block: var(--pist-sec-y);
}

.k39-grid {
	display: grid;
	grid-template-columns: 1fr 2fr;
	gap: var(--flow-base);
	align-items: start;
}

.k39-side {
	padding: var(--flow-snug);
	background: var(--ink-panel);
	color: var(--ink-script);
	border-radius: var(--round-base);
	border: var(--stroke-hair) solid var(--ink-stroke);
}

.k39-heading {
	font-size: var(--fs-h4);
	margin-block-end: var(--flow-tiny);
}

.k39-roll {
	list-style: none;
	margin-block-start: var(--flow-tiny);
}

.k39-one {
	font-size: var(--fs-small);
	color: var(--ink-faint);
	margin-block-end: var(--flow-hair);
	overflow-wrap: anywhere;
}

.k39-form {
	display: block;
}

.k39-cell {
	display: block;
	margin-block-end: var(--flow-snug);
}

.k39-mark {
	display: block;
	font-size: var(--fs-micro);
	color: var(--ink-faint);
	text-transform: uppercase;
	letter-spacing: var(--letter-loose);
	margin-block-end: var(--flow-hair);
}

.k39-cell input,
.k39-cell textarea {
	width: 100%;
	padding: var(--flow-tiny) var(--flow-snug);
	background: var(--ink-bg);
	color: var(--ink-script);
	border: var(--stroke-hair) solid var(--ink-stroke-heavy);
	border-radius: var(--round-base);
	font-family: var(--face-prose);
	font-size: var(--fs-small);
}

.k39-cell textarea {
	min-height: 150px;
	resize: vertical;
}

.k39-hook {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding-inline: var(--flow-base);
	background: var(--ink-pillar);
	color: var(--ink-script);
	border: 0;
	border-radius: var(--round-capsule);
	font-family: var(--face-title);
	font-weight: var(--weight-bold);
	cursor: pointer;
	transition: transform var(--beat-short) var(--ease-settle);
}

.k39-hook:hover {
	background: var(--ink-pillar);
	color: var(--ink-script);
	transform: translateY(2px);
}

.k39-words {
	display: none;
	margin-block-start: var(--flow-snug);
	padding: var(--flow-tiny) var(--flow-snug);
	background: var(--ink-spot);
	color: #0d1b3f;
	border-radius: var(--round-base);
	font-weight: var(--weight-half);
}

.k39-words.is-open {
	display: block;
}

@media (max-width: 1039px) {
	.k39-grid {
		grid-template-columns: 1fr;
	}
}

/* = m54 reviews = */
.m54 {
	padding-block: var(--pist-sec-y);
}

.m54-heading {
	margin-block-end: var(--flow-base);
}

.m54-roll {
	list-style: none;
}

.m54-one {
	position: relative;
	padding-block: var(--flow-snug);
	padding-inline-start: var(--flow-base);
	border-block-end: var(--stroke-hair) solid var(--ink-stroke);
}

.m54-one:last-child {
	border-block-end: 0;
}

.m54-one::before {
	content: '\201C';
	position: absolute;
	inset-block-start: 4px;
	inset-inline-start: 0;
	font-family: var(--face-title);
	font-size: var(--fs-display-1);
	line-height: 1;
	color: var(--ink-spot);
}

.m54-quote {
	max-width: 1050px;
}

.m54-line {
	font-family: var(--face-title);
	font-size: var(--fs-h4);
	font-style: italic;
	line-height: var(--line-height-dense);
	color: var(--ink-script);
}

.m54-sub {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--flow-tiny);
	margin-block-start: var(--flow-tiny);
	font-size: var(--fs-small);
	color: var(--ink-faint);
}

.m54-handle {
	font-style: normal;
	font-weight: var(--weight-half);
	color: var(--ink-script);
}

.m54-mark {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	padding: 2px 10px;
	background: var(--ink-panel);
	color: var(--ink-ramp-start);
	border-radius: var(--round-capsule);
	font-size: var(--fs-micro);
}

/* = m64 cookie banner = */
.m64 {
	display: none;
	position: fixed;
	inset-block-end: var(--flow-wide);
	inset-inline: auto var(--flow-wide);
	max-width: 360px;
	z-index: 90;
	background: var(--ink-bg);
	color: var(--ink-script);
	border: var(--stroke-hair) solid var(--ink-stroke-heavy);
	border-radius: var(--round-wide);
	box-shadow: var(--lift-base);
	padding: var(--flow-snug);
}

.m64.is-open {
	display: flex;
	gap: var(--flow-tiny);
	align-items: flex-start;
}

.m64.is-gone {
	transform: translateX(130vw);
	opacity: 0;
}

.m64-glyph {
	flex-shrink: 0;
	width: 20px;
	height: 20px;
	color: var(--ink-spot);
	stroke: currentColor;
	fill: none;
	stroke-width: 1.8;
}

.m64-meat {
	flex: 1 1 auto;
}

.m64-words {
	font-size: var(--fs-micro);
	line-height: var(--line-height-regular);
	color: var(--ink-faint);
	margin-block-end: var(--flow-tiny);
}

.m64-controls {
	display: flex;
	align-items: center;
	gap: var(--flow-tiny);
}

.m64-accept {
	white-space: nowrap;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding-inline: var(--flow-snug);
	background: var(--ink-spot);
	color: #0d1b3f;
	border: 0;
	border-radius: var(--round-capsule);
	font-family: var(--face-title);
	font-size: var(--fs-micro);
	font-weight: var(--weight-bold);
	cursor: pointer;
}

.m64-accept:hover {
	background: var(--ink-ramp-end);
	color: #0d1b3f;
}

.m64-reject {
	white-space: nowrap;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 36px;
	padding-inline: var(--flow-tiny);
	background: var(--ink-bg);
	color: var(--ink-faint);
	border: 0;
	text-decoration: underline;
	font-size: var(--fs-micro);
	cursor: pointer;
}

.m64-reject:hover {
	background: var(--ink-bg);
	color: var(--ink-script);
}

@media (max-width: 719px) {
	.m64 {
		inset-block-end: var(--flow-tiny);
		inset-inline: var(--flow-tiny);
		max-width: none;
	}
	.m64-accept,
	.m64-reject {
		flex: 1 1 auto;
		min-height: 44px;
		white-space: normal;
	}
}

/* = n37 data table = */
.n37 {
	padding-block: var(--pist-sec-y);
}

.n37-heading {
	margin-block-end: var(--flow-base);
}

.n37-roll {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: var(--flow-snug);
	list-style: none;
	align-items: stretch;
}

.n37-tile {
	padding: var(--flow-snug);
	background: var(--ink-panel);
	color: var(--ink-script);
	border: var(--stroke-hair) solid var(--ink-stroke);
	border-radius: var(--round-base);
}

.n37-cell {
	display: block;
	margin-block-end: var(--flow-tiny);
}

.n37-cell:last-child {
	margin-block-end: 0;
}

.n37-mark {
	display: block;
	font-size: var(--fs-micro);
	text-transform: uppercase;
	letter-spacing: var(--letter-loose);
	color: var(--ink-faint);
}

.n37-value {
	display: block;
	font-size: var(--fs-small);
	font-weight: var(--weight-half);
	color: var(--ink-script);
	overflow-wrap: anywhere;
}

/* = o16 author byline = */
.o16 {
	border-block-end: var(--stroke-hair) solid var(--ink-stroke);
}

.o16-hold {
	display: flex;
	align-items: center;
	gap: var(--flow-tiny);
	padding-block: var(--flow-snug);
	width: 100%;
	max-width: calc(var(--bounds-full) + 2 * var(--bounds-edge-wide));
	margin-inline: auto;
	padding-inline: var(--bounds-edge-wide) var(--bounds-edge-mid);
}

.o16-avatar {
	width: 28px;
	height: 28px;
	border-radius: var(--round-orb);
	object-fit: cover;
	flex-shrink: 0;
}

.o16-sub {
	font-size: var(--fs-small);
	color: var(--ink-faint);
}

.o16-handle {
	color: var(--ink-spot);
	font-weight: var(--weight-half);
}

.o16-handle:hover {
	text-decoration: underline;
	color: var(--ink-ramp-start);
}

.o16-credit {
	color: var(--ink-faint);
}

@media (max-width: 1039px) {
	.o16-hold {
		padding-inline: var(--bounds-edge-mid);
	}
}

@media (max-width: 719px) {
	.o16-hold {
		padding-inline: var(--bounds-pad-sm);
	}
}

/* = o23 inline cta = */
.o23 {
	display: block;
	margin-block: var(--flow-base);
	padding-block: var(--flow-snug);
	background: var(--ink-panel);
	color: var(--ink-script);
	border: var(--stroke-hair) solid var(--ink-stroke-heavy);
	border-radius: var(--round-wide);
}

.o23-plug {
	margin-block: 0;
}

.pist-slot {
	list-style: none;
	grid-column: 1 / -1;
}

.o23-guts {
	display: flex;
	flex-direction: column;
	gap: var(--flow-tiny);
	align-items: center;
	max-width: calc(var(--bounds-full) + 2 * var(--bounds-edge-wide));
	margin-inline: auto;
	padding-inline: var(--flow-snug);
}

.o23-line {
	font-size: var(--fs-copy);
	color: var(--ink-script);
	text-align: center;
	max-width: var(--bounds-narrow);
	margin: 0;
}

.o23-controls {
	display: flex;
	flex-direction: row;
	gap: var(--flow-tiny);
	justify-content: center;
	flex-wrap: wrap;
}

.o23-hook-ghost {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 50px;
	padding-inline: var(--flow-base);
	background: var(--ink-bg);
	color: var(--ink-script);
	border: var(--stroke-hair) solid var(--ink-stroke-heavy);
	border-radius: var(--round-capsule);
	font-family: var(--face-title);
	font-weight: var(--weight-half);
	text-decoration: none;
}

.o23-hook-ghost:hover {
	background: var(--ink-script);
	color: var(--ink-bg);
	border-color: var(--ink-script);
}

@media (max-width: 719px) {
	.o23-controls {
		flex-direction: column;
		width: 100%;
	}
	.o23-hook-ghost {
		width: 100%;
	}
}

/* = o47 hero = */
.o47 {
	position: relative;
	background-color: var(--ink-bg);
	background-image: linear-gradient(180deg, rgba(12, 24, 66, 0.82), rgba(12, 24, 66, 0.94)), url('/media/opening-97.webp');
	background-size: cover;
	background-position: center;
	color: var(--ink-script);
	border-block-end: var(--stroke-hair) solid var(--ink-stroke);
}

.o47-guts {
	width: 100%;
	max-width: calc(var(--bounds-full) + 2 * var(--bounds-edge-wide));
	margin-inline: auto;
	padding-inline: var(--bounds-edge-wide) var(--bounds-edge-mid);
	padding-block: var(--flow-roomy);
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--flow-snug);
}

.o47-mark {
	display: inline-flex;
	align-items: center;
	padding: 4px 14px;
	background: var(--ink-panel);
	color: var(--ink-ramp-start);
	border-radius: var(--round-capsule);
	font-size: var(--fs-micro);
	text-transform: uppercase;
	letter-spacing: var(--letter-loose);
	animation: pist-rise var(--beat-long) var(--ease-settle) both;
}

.o47-banner {
	max-width: 24ch;
	animation: pist-rise var(--beat-long) var(--ease-settle) 65ms both;
}

.o47-lead {
	max-width: var(--bounds-narrow);
	margin: 0;
	color: var(--ink-faint);
	font-size: var(--fs-copy);
	line-height: var(--line-height-regular);
	animation: pist-rise var(--beat-long) var(--ease-settle) 130ms both;
}

.o47-hook {
	margin-block-start: var(--flow-hair);
}

.o47-fine {
	max-width: var(--bounds-narrow);
	margin: 0;
}

@keyframes pist-rise {
	from {
		opacity: 0;
		transform: translateY(28px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media (max-width: 1039px) {
	.o47-guts {
		padding-inline: var(--bounds-edge-mid);
		padding-block: var(--flow-wide);
	}
	.o47-banner {
		max-width: none;
	}
}

@media (max-width: 719px) {
	.o47-guts {
		padding-inline: var(--bounds-pad-sm);
		padding-block: var(--flow-base);
	}
}

/* = q65 cta block = */
.q65 {
	position: relative;
	z-index: 5;
	background: var(--ink-spot);
	color: #0d1b3f;
	box-shadow: var(--lift-wide);
	border-block: var(--stroke-hair) solid var(--ink-spot-deep);
}

.q65-guts {
	display: flex;
	align-items: center;
	gap: var(--flow-snug);
	min-height: 80px;
	padding-block: var(--flow-tiny);
	width: 100%;
	max-width: calc(var(--bounds-full) + 2 * var(--bounds-edge-wide));
	margin-inline: auto;
	padding-inline: var(--bounds-edge-wide) var(--bounds-edge-mid);
}

.q65-meat {
	flex: 1 1 auto;
}

.q65-banner {
	font-size: var(--fs-copy);
	font-weight: var(--weight-bold);
	font-family: var(--face-title);
	color: #0d1b3f;
	line-height: var(--line-height-dense);
}

.q65-line {
	margin: 6px 0 0 0;
	font-size: var(--fs-micro);
	color: #123055;
}

.q65-tap {
	flex-shrink: 0;
	width: 32px;
	height: 32px;
	background: var(--ink-spot);
	color: #0d1b3f;
	border: var(--stroke-hair) solid var(--ink-spot-deep);
	border-radius: var(--round-orb);
	cursor: pointer;
	line-height: 1;
}

.q65-tap:hover {
	background: var(--ink-spot-deep);
	color: #0d1b3f;
}

.q65.is-gone {
	display: none;
}

@media (max-width: 719px) {
	.q65-guts {
		flex-direction: column;
		align-items: stretch;
		text-align: center;
		padding-block: var(--flow-snug);
	}
	.q65-tap {
		position: absolute;
		inset-block-start: 8px;
		inset-inline-end: 8px;
	}
}

/* = q80 error block = */
.q80 {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-block: var(--flow-roomy);
	text-align: center;
}

.q80-core {
	width: 100%;
	max-width: calc(var(--bounds-full) + 2 * var(--bounds-edge-wide));
	margin-inline: auto;
	padding-inline: var(--bounds-edge-wide) var(--bounds-edge-mid);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: var(--flow-snug);
}

.q80-digits {
	font-family: var(--face-title);
	font-size: clamp(80px, 16vw, 200px);
	font-weight: var(--weight-bold);
	line-height: var(--line-height-dense);
	color: var(--ink-spot);
}

.q80-banner {
	max-width: var(--bounds-narrow);
}

.q80-line {
	max-width: var(--bounds-narrow);
	font-size: var(--fs-sm-2);
	color: var(--ink-faint);
	line-height: var(--line-height-regular);
	margin: 0;
}

.q80-hook {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 52px;
	padding-inline: var(--flow-roomy);
	background: var(--ink-spot);
	color: #0d1b3f;
	border-radius: var(--round-base);
	font-family: var(--face-title);
	font-weight: var(--weight-bold);
	letter-spacing: var(--letter-loose);
	text-decoration: none;
}

.q80-hook:hover {
	background: var(--ink-spot-deep);
	color: #0d1b3f;
}

@media (max-width: 1039px) {
	.q80-core {
		padding-inline: var(--bounds-edge-mid);
	}
	.q80-hook {
		padding-inline: var(--flow-base);
	}
}

@media (max-width: 719px) {
	.q80-core {
		padding-inline: var(--bounds-pad-sm);
	}
	.q80 {
		padding-block: var(--flow-base);
	}
}

/* = s94 faq = */
.s94 {
	padding-block: var(--pist-sec-y);
}

.s94-heading {
	margin-block-end: var(--flow-base);
}

.s94-roll {
	list-style: none;
}

.s94-one {
	border-block-end: var(--stroke-hair) solid var(--ink-stroke);
}

.s94-tile {
	padding-block: var(--flow-tiny);
}

.s94-ask {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--flow-tiny);
	list-style: none;
	cursor: pointer;
	padding-block: var(--flow-tiny);
}

.s94-ask::-webkit-details-marker {
	display: none;
}

.s94-ask::after {
	content: '⌄';
	font-size: var(--fs-lg-2);
	line-height: 1;
	color: var(--ink-spot);
	flex-shrink: 0;
}

.s94-tile[open] .s94-ask::after {
	transform: rotate(180deg);
}

.s94-mark {
	font-size: var(--fs-sm-2);
	font-weight: var(--weight-bold);
	color: var(--ink-script);
}

.s94-ask:hover .s94-mark {
	color: var(--ink-ramp-start);
}

.s94-meat {
	padding-block: 0 var(--flow-tiny);
}

.s94-line {
	font-size: var(--fs-small);
	color: var(--ink-faint);
	line-height: var(--line-height-regular);
	margin: 0;
}

/* = u37 page header = */
.u37 {
	border-block-end: var(--stroke-hair) solid var(--ink-stroke);
	background: var(--ink-bg);
	color: var(--ink-script);
}

.u37-guts {
	width: 100%;
	max-width: calc(var(--bounds-full) + 2 * var(--bounds-edge-wide));
	margin-inline: auto;
	padding-inline: var(--bounds-edge-wide) var(--bounds-edge-mid);
	padding-block: var(--flow-base);
	display: grid;
	grid-template-columns: 1.2fr 1fr;
	gap: var(--flow-base);
	align-items: start;
}

.u37-side {
	min-width: 0;
}

.u37-mark {
	display: block;
	font-size: var(--fs-micro);
	text-transform: uppercase;
	letter-spacing: var(--letter-loose);
	color: var(--ink-ramp-start);
	margin-block-end: var(--flow-hair);
}

.u37-lead {
	font-size: var(--fs-small);
	color: var(--ink-faint);
	line-height: var(--line-height-regular);
	margin: 0;
	align-self: end;
}

@media (max-width: 1039px) {
	.u37-guts {
		padding-inline: var(--bounds-edge-mid);
		grid-template-columns: 1fr;
		gap: var(--flow-snug);
	}
}

@media (max-width: 719px) {
	.u37-guts {
		padding-inline: var(--bounds-pad-sm);
		padding-block: var(--flow-snug);
	}
}

/* = v23 footer = */
.v23 {
	background: var(--ink-bg);
	color: var(--ink-script);
	border-block-start: var(--stroke-hair) solid var(--ink-stroke);
	padding-block: var(--flow-wide);
	margin-block-start: auto;
}

.v23-bar {
	width: 100%;
	max-width: calc(var(--bounds-full) + 2 * var(--bounds-edge-wide));
	margin-inline: auto;
	padding-inline: var(--bounds-edge-wide) var(--bounds-edge-mid);
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--flow-base);
}

.v23-bar-top {
	align-items: center;
}

.v23-one {
	display: flex;
	align-items: center;
}

.v23-bar-low {
	margin-block-start: var(--flow-base);
	padding-block-start: var(--flow-base);
	border-block-start: var(--stroke-hair) solid var(--ink-stroke);
	align-items: flex-start;
}

.v23-badge {
	display: inline-flex;
	align-items: center;
	flex-shrink: 0;
	padding: 4px 14px;
	background: var(--ink-panel);
	color: var(--ink-script);
	border-radius: var(--round-capsule);
}

.v23-badge-shot {
	display: block;
	height: 56px;
	width: auto;
}

.v23-index {
	flex: 1 1 auto;
}

.v23-roll {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: var(--flow-tiny) var(--flow-snug);
	list-style: none;
}

.v23-anchor {
	color: var(--ink-faint);
	font-size: var(--fs-small);
}

.v23-anchor:hover {
	color: var(--ink-script);
}

.v23-note {
	flex: 1 1 auto;
	font-size: var(--fs-micro);
	color: var(--ink-faint);
	line-height: var(--line-height-regular);
}

.v23-legal-index {
	flex: 0 1 auto;
}

.v23-legal-roll {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: var(--flow-hair) var(--flow-tiny);
	list-style: none;
}

.v23-legal-one + .v23-legal-one::before {
	content: '·';
	color: var(--ink-stroke-heavy);
	margin-inline-end: var(--flow-tiny);
}

.v23-legal-one {
	display: flex;
	align-items: center;
	font-size: var(--fs-micro);
}

.v23-legal-anchor {
	color: var(--ink-faint);
	font-size: var(--fs-micro);
}

.v23-legal-anchor:hover {
	color: var(--ink-script);
}

.rg-strip {
	width: 100%;
	max-width: calc(var(--bounds-full) + 2 * var(--bounds-edge-wide));
	margin-inline: auto;
	margin-block-end: var(--flow-base);
	padding-block-end: var(--flow-base);
	padding-inline: var(--bounds-edge-wide) var(--bounds-edge-mid);
	border-block-end: var(--stroke-hair) solid var(--ink-stroke);
	display: block;
	text-align: center;
}

.rg-plate {
	display: inline-block;
	padding: var(--flow-tiny) var(--flow-snug);
	background: #fdf0f0;
	color: var(--ink-caution);
	border-radius: var(--round-base);
	font-size: var(--fs-micro);
	line-height: var(--line-height-regular);
}

.rg-mark {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 34px;
	padding: 2px 8px;
	margin-inline-end: 8px;
	background: var(--ink-caution);
	color: #ffffff;
	border-radius: var(--round-capsule);
	font-weight: var(--weight-bold);
}

.rg-anchor {
	color: var(--ink-caution);
	background: #fdf0f0;
	text-decoration: underline;
	font-weight: var(--weight-half);
}

.rg-anchor:hover {
	color: #7d1616;
	background: #fdf0f0;
}

@media (max-width: 1039px) {
	.v23-bar,
	.rg-strip {
		padding-inline: var(--bounds-edge-mid);
	}
}

@media (max-width: 719px) {
	.v23 {
		padding-block: var(--flow-base);
	}
	.v23-bar,
	.rg-strip {
		padding-inline: var(--bounds-pad-sm);
		flex-direction: column;
		align-items: center;
		gap: var(--flow-snug);
		text-align: center;
	}
	.v23-roll,
	.v23-legal-roll {
		justify-content: center;
	}
}

/* = v48 prose = */
.v48 {
	padding-block: var(--pist-sec-y);
}

.v48-part {
	display: grid;
	grid-template-columns: 28% 1fr;
	gap: var(--flow-base);
	align-items: start;
	margin-block-end: var(--flow-wide);
}

.v48-part:last-child {
	margin-block-end: 0;
}

.v48-side {
	text-align: center;
	border-inline-end: var(--stroke-regular) solid var(--ink-stroke);
	padding-inline-end: var(--flow-snug);
	align-self: stretch;
}

.v48-heading {
	font-size: clamp(21px, 2.4vw, 30px);
	font-weight: var(--weight-bold);
	font-family: var(--face-title);
	line-height: var(--line-height-dense);
	margin-block-start: 0;
}

.v48-meat {
	min-width: 0;
}

.v48-meat p {
	font-size: var(--fs-copy);
	line-height: var(--line-height-open);
	margin-block-end: var(--flow-snug);
}

.v48-meat strong {
	color: var(--ink-ramp-start);
	font-weight: var(--weight-bold);
}

.v48-meat a {
	color: var(--ink-spot);
	text-decoration: underline;
}

.v48-meat a:hover {
	color: var(--ink-ramp-start);
}

.v48-roll {
	list-style: none;
	margin-block-end: var(--flow-snug);
}

.v48-one {
	position: relative;
	padding-inline-start: var(--flow-snug);
	margin-block-end: var(--flow-tiny);
	line-height: var(--line-height-regular);
}

.v48-one::before {
	content: '▸';
	position: absolute;
	inset-inline-start: 0;
	color: var(--ink-spot);
}

.v48-tally {
	counter-reset: pist-step;
	list-style: none;
	margin-block-end: var(--flow-snug);
}

.v48-tally .v48-one {
	padding-inline-start: var(--flow-base);
}

.v48-tally .v48-one::before {
	counter-increment: pist-step;
	content: counter(pist-step) '.';
	color: var(--ink-spot);
	font-weight: var(--weight-bold);
}

@media (max-width: 1039px) {
	.v48-part {
		grid-template-columns: 1fr;
		gap: var(--flow-tiny);
		margin-block-end: var(--flow-base);
	}
	.v48-side {
		text-align: start;
		border-inline-end: 0;
		padding-inline-end: 0;
	}
}

/* = w24 breadcrumbs = */
.w24 {
	padding-block: var(--flow-tiny);
	border-block-end: var(--stroke-hair) solid var(--ink-stroke);
}

.w24-hold {
	width: 100%;
	max-width: calc(var(--bounds-full) + 2 * var(--bounds-edge-wide));
	margin-inline: auto;
	padding-inline: var(--bounds-edge-wide) var(--bounds-edge-mid);
}

.w24-roll {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	list-style: none;
	gap: var(--flow-hair);
}

.w24-one {
	display: flex;
	align-items: center;
	font-size: var(--fs-small);
	text-transform: uppercase;
	letter-spacing: var(--letter-loose);
	color: var(--ink-script);
}

.w24-one + .w24-one::before {
	content: '—';
	color: var(--ink-faint);
	margin-inline: var(--flow-tiny);
}

.w24-tally {
	font-family: var(--face-title);
	font-weight: var(--weight-bold);
	font-size: var(--fs-xs-2);
	color: var(--ink-spot);
	margin-inline-end: var(--flow-hair);
}

.w24-anchor {
	color: var(--ink-faint);
	font-size: var(--fs-small);
}

.w24-anchor:hover {
	color: var(--ink-script);
}

@media (max-width: 1039px) {
	.w24-hold {
		padding-inline: var(--bounds-edge-mid);
	}
}

@media (max-width: 719px) {
	.w24-hold {
		padding-inline: var(--bounds-pad-sm);
	}
	.w24-one {
		font-size: var(--fs-micro);
	}
}

/* = y73 author card = */
.y73 {
	padding-block: var(--flow-roomy);
	background-color: var(--ink-panel);
	background-image: linear-gradient(135deg, var(--ink-pillar), var(--ink-bg));
	color: var(--ink-script);
}

.y73-guts {
	width: 100%;
	max-width: calc(var(--bounds-full) + 2 * var(--bounds-edge-wide));
	margin-inline: auto;
	padding-inline: var(--bounds-edge-wide) var(--bounds-edge-mid);
	display: grid;
	grid-template-columns: 256px 1fr;
	gap: var(--flow-base);
	align-items: start;
}

.y73-avatar {
	width: 256px;
	max-width: 100%;
	height: auto;
	border-radius: var(--round-wide);
	box-shadow: var(--lift-wide);
	align-self: start;
}

.y73-meat {
	min-width: 0;
}

.y73-mark {
	display: block;
	font-size: var(--fs-small);
	text-transform: uppercase;
	letter-spacing: var(--letter-loose);
	color: var(--ink-ramp-start);
	margin-block-end: var(--flow-hair);
}

.y73-banner {
	font-size: clamp(34px, 5vw, 58px);
	margin-block-end: var(--flow-snug);
}

.y73-line {
	font-size: var(--fs-sm-2);
	line-height: var(--line-height-regular);
	color: var(--ink-script);
	margin-block-end: var(--flow-snug);
}

.y73-roll {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	gap: var(--flow-hair) var(--flow-tiny);
}

.y73-one {
	padding: 4px 14px;
	background: var(--ink-bg);
	color: var(--ink-script);
	border-radius: var(--round-capsule);
	font-size: var(--fs-micro);
}

@media (max-width: 1039px) {
	.y73-guts {
		padding-inline: var(--bounds-edge-mid);
		grid-template-columns: 1fr;
	}
	.y73 {
		padding-block: var(--flow-base);
	}
}

@media (max-width: 719px) {
	.y73-guts {
		padding-inline: var(--bounds-pad-sm);
	}
	.y73-avatar {
		width: 180px;
	}
}

/* = z13 items grid = */
.z13 {
	padding-block: var(--pist-sec-y);
}

.z13-heading {
	margin-block-end: var(--flow-base);
}

.z13-roll {
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: var(--flow-wide);
}

.z13-one {
	max-width: 100%;
}

.z13-banner {
	font-family: var(--face-title);
	font-size: var(--fs-lg-2);
	font-weight: var(--weight-bold);
	color: var(--ink-script);
	margin-block-end: var(--flow-tiny);
}

.z13-rule {
	display: block;
	width: 60px;
	height: 2px;
	margin: 0 0 var(--flow-tiny) 0;
	background: var(--ink-spot);
	border: 0;
}

.z13-line {
	font-size: var(--fs-copy);
	line-height: var(--line-height-open);
	color: var(--ink-script);
}

.z13-one:hover .z13-rule {
	width: 120px;
	transition: width var(--beat-base) var(--ease-settle);
}

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

/* = offer button = */
.pist-act {
	position: relative;
	background: #C026D3;
	color: #FFFFFF;
	text-decoration: none;
	transition: background var(--beat-short) var(--ease-settle);
}

.pist-act.pist-act {
	color: #FFFFFF;
	text-decoration: none;
}

.pist-act:hover {
	background: #A21CAF;
	color: #FFFFFF;
	animation: none;
}

.pist-act.pist-act:hover {
	color: #FFFFFF;
	text-decoration: none;
}

.pist-act:hover::after {
	animation: none;
}

.pist-act:active {
	background: #86198F;
	color: #FFFFFF;
}

.pist-act:focus-visible {
	outline: var(--stroke-wide) solid var(--ink-ramp-start);
	outline-offset: 3px;
}

@keyframes pist-wake {
	0% {
		box-shadow: 0 0 0 0 currentColor;
		opacity: 0.55;
	}
	70%,
	100% {
		box-shadow: 0 0 0 3px transparent;
		opacity: 0;
	}
}

.pist-act::after {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: inherit;
	pointer-events: none;
	animation: pist-wake calc(var(--beat-long) * 4) var(--ease-in-out) infinite;
}

.q65 .pist-act {
	box-shadow: 0 0 0 var(--stroke-wide) var(--ink-bg);
}

.e66-hook.e66-hook {
	min-height: 40px;
	padding: 0 var(--flow-base);
	border-radius: var(--round-base);
	font-size: 14px;
	letter-spacing: var(--letter-base);
}

@media (max-width: 619px) {
	.e66-hook.e66-hook {
		width: 100%;
	}
}

@media (max-width: 1067px) {
  .e66-index { display: none !important; }
  .e66-menu-tap { display: flex !important; }
}
