@font-face {
	font-family: "Manrope";
	src: url("../fonts/Manrope-Latin.woff2") format("woff2");
	font-style: normal;
	font-weight: 400 800;
	font-display: swap;
}

@font-face {
	font-family: "Newsreader";
	src: url("../fonts/Newsreader-Regular.ttf") format("truetype");
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}

@font-face {
	font-family: "Newsreader";
	src: url("../fonts/Newsreader-SemiBold.ttf") format("truetype");
	font-style: normal;
	font-weight: 600;
	font-display: swap;
}

@font-face {
	font-family: "Newsreader";
	src: url("../fonts/Newsreader-Italic.ttf") format("truetype");
	font-style: italic;
	font-weight: 400;
	font-display: swap;
}

:root {
	/* Sea Glass 197 neutral ramp. */
	--sg-25: #fafcfd;
	--sg-50: #f7f9fa;
	--sg-100: #f1f5f6;
	--sg-200: #e8eef0;
	--sg-300: #c8d2d6;
	--sg-400: #9aaeb6;
	--sg-500: #5d8391;
	--sg-600: #4a7282;
	--sg-700: #305362;
	--sg-800: #21414f;
	--sg-900: #142a33;
	--sg-950: #0b171c;

	/* Surfaces, borders, and text. */
	--bg-canvas: var(--sg-100);
	--bg-surface: var(--sg-50);
	--bg-sunken: var(--sg-200);
	--border: var(--sg-300);
	--border-strong: var(--sg-500);
	--border-control: var(--sg-600);
	--border-on-dark: rgba(250, 252, 253, 0.35);
	--text-strong: var(--sg-950);
	--text: var(--sg-900);
	--text-muted: var(--sg-800);
	--text-subtle: var(--sg-700);
	--text-on-dark: var(--sg-25);
	--text-muted-on-dark: var(--sg-300);

	/* Actions and semantic states. */
	--accent: #1f546a;
	--accent-hover: #154356;
	--accent-active: #0e3446;
	--accent-tint: #e5f1f5;
	--accent-tint-hover: #d2e5ed;
	--quiet: var(--sg-200);
	--quiet-hover: #dae3e6;
	--quiet-active: var(--sg-300);
	--success: #115a38;
	--success-hover: #0b4429;
	--warning: #6f4600;
	--warning-hover: #5e3c00;
	--danger: #96231f;
	--danger-hover: #761a16;
	--on-accent: var(--sg-25);
	--focus: var(--accent-hover);
	--focus-on-dark: var(--sg-25);

	/* Primary CTA family. */
	--cta: #d3e9ce;
	--cta-hover: #c0dfb9;
	--cta-active: #aed6a4;
	--cta-ink: #1d4014;
	--cta-edge: #5a974b;
	--cta-gradient: linear-gradient(150deg, var(--deco-wash) 0%, var(--cta) 46%, var(--accent-tint-hover) 116%);
	--cta-gradient-hover: linear-gradient(150deg, var(--cta) 0%, var(--cta-hover) 52%, var(--accent-tint-hover) 116%);
	--cta-gradient-active: linear-gradient(150deg, var(--cta-hover) 0%, var(--cta-active) 58%, var(--accent-tint-hover) 116%);

	/* Decorative grounds and approved alpha colors. */
	--deco-wash: #e7f4e4;
	--deco-celadon: #cee6d1;
	--deco-mint: #cce3d5;
	--deco-sage: #c9dbbd;
	--deco-fern: var(--cta-edge);
	--scrim: rgba(11, 23, 28, 0.55);
	--overlay-soft: rgba(11, 23, 28, 0.22);
	--overlay-mid: rgba(11, 23, 28, 0.45);
	--shadow-color: rgba(11, 23, 28, 0.22);
	--shadow-elevated: 0 1.5rem 4.5rem var(--shadow-color);
	--cta-shadow: 0 4px 14px -10px rgba(29, 64, 20, 0.4);
	--cta-shadow-hover: 0 6px 16px -10px rgba(29, 64, 20, 0.45);
	--display: "Newsreader", Georgia, serif;
	--body: "Manrope", Arial, sans-serif;
	--header-height: 5rem;
	--shell: min(90rem, calc(100vw - 2.5rem));
	--narrow: min(52rem, calc(100vw - 2.5rem));
	--section-space: clamp(4rem, 7vw, 7rem);
}

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

html {
	scroll-behavior: smooth;
	scroll-padding-top: calc(var(--header-height) + 1rem);
	background: var(--bg-canvas);
}

body {
	margin: 0;
	background: var(--bg-canvas);
	color: var(--text);
	font-family: var(--body);
	font-size: 1.0625rem;
	font-weight: 430;
	line-height: 1.75;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}

html,
body {
	max-width: 100%;
	overflow-x: clip;
}

body.nav-open {
	overflow: hidden;
}

::selection {
	background: var(--text);
	color: var(--text-on-dark);
}

img,
svg,
video,
iframe {
	display: block;
	max-width: 100%;
}

img {
	height: auto;
}

button,
input,
textarea {
	font: inherit;
}

button,
a {
	-webkit-tap-highlight-color: transparent;
}

a {
	color: inherit;
	text-underline-offset: 0.18em;
}

a:hover {
	text-decoration-thickness: 0.12em;
}

:focus-visible {
	outline: 3px solid var(--focus);
	outline-offset: 4px;
}

.hero :focus-visible,
.section--dark :focus-visible,
.page-hero--dark :focus-visible,
.free-class-panel :focus-visible,
.low-pressure :focus-visible,
.proof-strip :focus-visible,
.site-footer :focus-visible {
	outline-color: var(--focus-on-dark);
}

h1,
h2,
h3,
h4,
p,
blockquote,
figure,
ul,
ol,
dl,
dd {
	margin-top: 0;
}

h1,
h2,
h3 {
	color: var(--text-strong);
	font-family: var(--display);
	font-weight: 400;
	line-height: 1.06;
	letter-spacing: -0.035em;
	text-wrap: balance;
}

h1 {
	font-size: clamp(3rem, 6vw, 4.5rem);
}

h2 {
	font-size: clamp(2.25rem, 4.3vw, 3.75rem);
}

h3 {
	font-size: clamp(1.5rem, 2.6vw, 2.25rem);
}

p,
li {
	text-wrap: pretty;
}

p:last-child,
ul:last-child,
blockquote:last-child {
	margin-bottom: 0;
}

.shell {
	width: var(--shell);
	margin-inline: auto;
}

.narrow {
	width: var(--narrow);
}

.section {
	padding-block: var(--section-space);
}

.section--light {
	background: var(--bg-surface);
}

.section--mist {
	background: var(--accent-tint);
}

.section--dark {
	background: var(--sg-950);
	color: var(--text-on-dark);
}

.section--dark h2,
.section--dark h3 {
	color: var(--text-on-dark);
}

.kicker {
	margin-bottom: 1.25rem;
	color: var(--text);
	font-size: 0.75rem;
	font-weight: 750;
	letter-spacing: 0.15em;
	line-height: 1.45;
	text-transform: uppercase;
}

.chapter-label {
	margin-bottom: 1.25rem;
	color: var(--text-muted);
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1.5;
	text-transform: none;
}

.section--dark .kicker,
.page-hero--dark .kicker {
	color: var(--text-muted-on-dark);
}

.free-class-panel .kicker,
.low-pressure .kicker {
	color: var(--text-muted-on-dark);
}

.section-heading {
	max-width: 48rem;
}

.section-heading h2 {
	margin-bottom: 1.5rem;
}

.section-heading>p:last-child {
	max-width: 41rem;
	color: var(--text-muted);
	font-size: 1.08rem;
}

.section-heading--wide {
	max-width: 68rem;
}

.section-heading--split {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(16rem, 0.65fr);
	gap: clamp(2rem, 7vw, 8rem);
	max-width: none;
	align-items: end;
}

.section-heading--split>p {
	margin-bottom: 0.5rem;
	color: var(--text-muted);
}

.button-row {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem 1.5rem;
	align-items: center;
}

.button {
	display: inline-flex;
	min-height: 3.45rem;
	align-items: center;
	justify-content: center;
	gap: 0.8rem;
	border: 1px solid var(--cta-edge);
	background: var(--cta-gradient);
	box-shadow: var(--cta-shadow);
	color: var(--cta-ink);
	font-size: 0.875rem;
	font-weight: 750;
	letter-spacing: 0.09em;
	line-height: 1.2;
	padding: 1rem 1.4rem;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	transition: background 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.button:hover {
	background: var(--cta-gradient-hover);
	border-color: var(--cta-edge);
	box-shadow: var(--cta-shadow-hover);
	color: var(--cta-ink);
	text-decoration: none;
	transform: translateY(-2px);
}

.button:active {
	background: var(--cta-gradient-active);
	box-shadow: none;
	transform: translateY(1px);
}

.button--light {
	border-color: var(--cta-edge);
	background: var(--cta-gradient);
	color: var(--cta-ink);
}

.button--light:hover {
	border-color: var(--cta-edge);
	background: var(--cta-gradient-hover);
	color: var(--cta-ink);
}

.button--large {
	min-height: 4rem;
	font-size: 1rem;
	padding: 1.15rem 1.65rem;
}

.text-link {
	display: inline-flex;
	align-items: center;
	gap: 0.65rem;
	border-bottom: 1px solid currentColor;
	color: var(--text-strong);
	font-size: 0.875rem;
	font-weight: 750;
	letter-spacing: 0.11em;
	line-height: 1.5;
	padding-block: 0.25rem;
	text-decoration: none;
	text-transform: uppercase;
}

.text-link:hover {
	border-bottom-width: 2px;
	text-decoration: none;
}

.text-link--light {
	color: var(--text-on-dark);
}

.microcopy {
	color: var(--text-muted);
	font-size: 0.78rem;
	line-height: 1.65;
}

.skip-link {
	position: fixed;
	top: 0.5rem;
	left: 0.5rem;
	z-index: 9999;
	background: var(--bg-surface);
	color: var(--text-strong);
	font-weight: 750;
	padding: 0.8rem 1rem;
	transform: translateY(-150%);
}

.skip-link:focus {
	transform: translateY(0);
}

.site-header {
	position: sticky;
	top: 0;
	z-index: 1000;
	border-bottom: 1px solid var(--border);
	background: var(--bg-surface);
	transition: box-shadow 180ms ease, background-color 180ms ease;
}

.site-header.is-scrolled {
	box-shadow: 0 0.5rem 2rem var(--shadow-color);
	background: var(--bg-canvas);
}

.site-header__inner {
	display: grid;
	min-height: var(--header-height);
	grid-template-columns: auto 1fr;
	gap: clamp(1.5rem, 4vw, 4rem);
	align-items: center;
}

@media (min-width: 60.001rem) {
	.site-header__inner.shell {
		width: auto;
		margin-inline: clamp(1.2rem, 2.5vw, 3rem);
	}
}

.brand-mark {
	display: inline-flex;
	align-items: center;
	color: var(--text-strong);
	text-decoration: none;
}

.brand-mark__initials {
	margin-right: 0.8rem;
	border-right: 1px solid var(--border);
	font-family: var(--display);
	font-size: 2rem;
	font-style: italic;
	letter-spacing: -0.08em;
	line-height: 1;
	padding-right: 0.85rem;
}

.brand-mark__words {
	display: grid;
	font-size: 0.875rem;
	font-weight: 720;
	letter-spacing: 0.13em;
	line-height: 1.35;
	text-transform: uppercase;
}

.primary-nav {
	justify-self: end;
}

.primary-nav ul {
	display: flex;
	margin: 0;
	gap: clamp(1.2rem, 2vw, 2.25rem);
	align-items: center;
	list-style: none;
	padding: 0;
}

.primary-nav a {
	position: relative;
	font-size: 0.8125rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-decoration: none;
	text-transform: uppercase;
}

.primary-nav a::after {
	position: absolute;
	right: 0;
	bottom: -0.5rem;
	left: 0;
	height: 1px;
	background: var(--text);
	content: "";
	transform: scaleX(0);
	transform-origin: right;
	transition: transform 180ms ease;
}

.primary-nav a:hover::after,
.primary-nav a[aria-current="page"]::after {
	transform: scaleX(1);
	transform-origin: left;
}

.header-cta {
	min-height: 2.8rem;
	font-size: 0.8125rem;
	padding: 0.78rem 1rem;
}

.nav-toggle {
	display: none;
	width: 3rem;
	height: 3rem;
	border: 1px solid var(--border-strong);
	background: transparent;
	color: var(--text-strong);
	cursor: pointer;
	padding: 0.72rem;
}

.nav-toggle span:not(.screen-reader-text) {
	display: block;
	height: 1px;
	margin-block: 0.34rem;
	background: currentColor;
	transition: transform 180ms ease, opacity 180ms ease;
}

.nav-toggle[aria-expanded="true"] span:nth-of-type(1) {
	transform: translateY(0.34rem) rotate(45deg);
}

.nav-toggle[aria-expanded="true"] span:nth-of-type(2) {
	opacity: 0;
}

.nav-toggle[aria-expanded="true"] span:nth-of-type(3) {
	transform: translateY(-0.34rem) rotate(-45deg);
}

.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
}

.hero {
	position: relative;
	display: grid;
	min-height: calc(100svh - var(--header-height));
	isolation: isolate;
	align-items: center;
	overflow: hidden;
	background: var(--sg-950);
}

.hero__media {
	position: absolute;
	inset: 0;
	z-index: 0;
	overflow: hidden;
	background: var(--sg-500);
}

.hero__slide {
	position: absolute;
	inset: 0;
	margin: 0;
	opacity: 0;
	transition: opacity 900ms ease-out;
}

.hero__slide.is-active {
	opacity: 1;
}

.hero__slide img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center 42%;
}

.hero__slide--mirror img {
	transform: scaleX(-1);
}

.hero__slide:nth-child(3) img,
.hero__slide:nth-child(4) img,
.hero__slide:nth-child(5) img {
	object-position: 62% 32%;
}

.hero__veil {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(90deg, rgba(11, 23, 28, 0.22) 0%, rgba(11, 23, 28, 0.04) 54%, transparent 74%);
	pointer-events: none;
}

.hero__veil::before {
	position: absolute;
	inset: 0 42% 0 0;
	backdrop-filter: blur(18px);
	content: "";
	-webkit-backdrop-filter: blur(18px);
	-webkit-mask-image: linear-gradient(90deg, var(--sg-950) 0%, var(--sg-950) 42%, transparent 100%);
	mask-image: linear-gradient(90deg, var(--sg-950) 0%, var(--sg-950) 42%, transparent 100%);
}

.hero__inner {
	position: relative;
	z-index: 2;
	display: grid;
	width: 100%;
	max-width: none;
	min-height: inherit;
	align-items: center;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-inline: 0;
	padding: clamp(3rem, 7vw, 6rem) clamp(1.25rem, 5vw, 6rem);
}

.hero__folio {
	position: relative;
	display: block;
	width: min(38rem, calc(100% - clamp(1rem, 3vw, 3rem)));
	border: 1px solid var(--border-strong);
	background: var(--accent-tint-hover);
	background: color-mix(in srgb, var(--accent-tint-hover) 91%, transparent);
	box-shadow: var(--shadow-elevated);
	color: var(--text);
	justify-self: center;
	padding: clamp(2.25rem, 4vw, 3.75rem);
	text-shadow: none;
}

.hero__guide {
	margin-bottom: 1.4rem;
	color: var(--accent-hover);
	font-size: 0.75rem;
	font-weight: 760;
	letter-spacing: 0.17em;
	text-transform: uppercase;
}

.hero h1 {
	margin-bottom: 1.5rem;
	color: var(--text-strong);
	font-size: clamp(3.5rem, 4.6vw, 5.75rem);
}

.hero h1 em {
	display: block;
	margin-top: 0.35rem;
	color: var(--accent-hover);
	font-size: 0.58em;
	font-weight: 400;
	line-height: 1.2;
}

.hero__lede {
	max-width: 36rem;
	margin-bottom: 2rem;
	color: var(--text);
	font-size: clamp(1rem, 1.3vw, 1.16rem);
}

.hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem 1.4rem;
	align-items: center;
}

.hero__actions>span {
	color: var(--text);
	font-size: 0.74rem;
	font-weight: 650;
	letter-spacing: 0.05em;
}

.hero__controls {
	position: absolute;
	right: 2rem;
	bottom: 2rem;
	z-index: 3;
	display: flex;
	gap: 0.65rem;
}

.media-control {
	display: grid;
	width: 3rem;
	height: 3rem;
	border: 1px solid var(--border-on-dark);
	background: var(--scrim);
	color: var(--text-on-dark);
	cursor: pointer;
	place-items: center;
}

.media-control--next {
	font-size: 1.2rem;
}

.media-control svg {
	width: 1.1rem;
	fill: currentColor;
}

.media-control__play,
.media-control[aria-pressed="true"] .media-control__pause {
	display: none;
}

.media-control[aria-pressed="true"] .media-control__play {
	display: block;
}

.proof-strip {
	border-top: 1px solid var(--border-on-dark);
	background: var(--sg-950);
	color: var(--text-on-dark);
}

.proof-strip__inner {
	display: block;
}

.proof-strip__inner>p {
	margin: 0;
	display: flex;
	min-height: 6rem;
	color: var(--text-muted-on-dark);
	font-family: var(--display);
	font-size: clamp(1.25rem, 2vw, 1.65rem);
	font-style: italic;
	line-height: 1.35;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding-block: 1.5rem;
}

.section--warm {
	background: var(--deco-wash);
}

.program-intro__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(18rem, 1.1fr);
	gap: clamp(2.5rem, 8vw, 8rem);
	align-items: start;
}

.program-intro h2 {
	margin-bottom: 0;
}

.program-intro p {
	max-width: 44rem;
	font-size: 1.125rem;
}

.doubt-grid {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	gap: clamp(3rem, 9vw, 9rem);
	align-items: start;
}

.doubt-list {
	margin: 0;
	border-top: 1px solid var(--border);
	list-style: none;
	padding: 0;
}

.doubt-list li {
	border-bottom: 1px solid var(--border);
	color: var(--text);
	font-family: var(--display);
	font-size: clamp(1.75rem, 2.7vw, 2.65rem);
	font-style: italic;
	line-height: 1.12;
	padding: 1.35rem 0;
}

.free-class-panel {
	background: var(--sg-900);
	color: var(--text-on-dark);
}

.free-class-panel__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: clamp(2rem, 5vw, 5rem);
	border-block: 1px solid var(--border-on-dark);
	align-items: center;
	padding-block: clamp(2.5rem, 5vw, 4rem);
}


.free-class-panel h2 {
	max-width: 52rem;
	margin-bottom: 1rem;
	color: var(--text-on-dark);
}

.free-class-panel p:not(.kicker) {
	max-width: 42rem;
	color: var(--text-muted-on-dark);
}

.free-class-panel__action {
	display: grid;
	gap: 1.5rem;
	justify-items: start;
}


.program-preview .section-heading {
	margin-bottom: clamp(3.5rem, 8vw, 7rem);
}

.program-path {
	border-top: 1px solid var(--border);
}

.program-path__item {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(2.5rem, 6vw, 5.5rem);
	border-bottom: 1px solid var(--border);
	align-items: center;
	padding-block: clamp(3rem, 7vw, 6rem);
}

.program-path__item--reverse .program-path__media {
	order: 2;
}

.program-path__item--reverse .program-path__copy {
	order: 1;
}

.program-path__media {
	position: relative;
	max-width: 31rem;
}

.program-path__media::before {
	position: absolute;
	top: -1rem;
	right: -1rem;
	width: 45%;
	height: 42%;
	border-top: 1px solid var(--accent);
	border-right: 1px solid var(--accent);
	content: "";
}

.program-path__media img {
	position: relative;
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
}

.program-path__media--portrait img {
	object-position: center 20%;
}

.program-path__step,
.course-part__label,
.offer-folio__label,
.value-stack__label {
	display: block;
	margin-bottom: 1.2rem;
	color: var(--text-muted);
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.03em;
	text-transform: none;
}

.program-path__copy h3 {
	margin-bottom: 1.4rem;
	font-size: clamp(2.65rem, 3.7vw, 4.2rem);
}

.program-path__step {
	font-size: clamp(0.95rem, 1vw, 1.05rem);
}

.program-path__copy p {
	max-width: 44rem;
	color: var(--text-muted);
	font-size: clamp(1.08rem, 1.25vw, 1.32rem);
	line-height: 1.7;
}

.program-path__copy strong {
	display: block;
	margin-top: 1.8rem;
	color: var(--text);
	font-family: var(--display);
	font-size: clamp(1.65rem, 2.2vw, 2.35rem);
	font-style: italic;
	font-weight: 400;
}

.section-link {
	padding-top: 2.5rem;
	text-align: right;
}

.outcomes__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
	gap: clamp(3rem, 9vw, 9rem);
}

.outcome-list {
	margin: 0;
	border-top: 1px solid var(--border-strong);
	list-style: none;
	padding: 0;
}

.outcome-list li {
	display: grid;
	grid-template-columns: 3rem 1fr;
	gap: 1.5rem;
	border-bottom: 1px solid var(--border-strong);
	align-items: baseline;
	padding: 1.35rem 0;
}

.outcome-list span {
	color: var(--accent);
	font-size: 0.75rem;
	font-weight: 750;
	letter-spacing: 0.14em;
}

.outcome-list p {
	margin: 0;
	color: var(--text-strong);
	font-family: var(--display);
	font-size: clamp(1.5rem, 2.5vw, 2.25rem);
	line-height: 1.18;
}

.student-stories .section-heading {
	margin-bottom: clamp(3.5rem, 7vw, 6rem);
}

.story-ledger {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1px;
	margin-bottom: 2.5rem;
	background: var(--border);
	border: 1px solid var(--border);
}

.story {
	display: grid;
	grid-template-columns: minmax(8rem, 0.45fr) minmax(0, 1fr);
	gap: clamp(1.5rem, 4vw, 3.5rem);
	background: var(--bg-surface);
	align-items: center;
	padding: clamp(1.5rem, 4vw, 3.5rem);
}

.story--feature {
	grid-column: 1 / -1;
	grid-template-columns: minmax(14rem, 0.55fr) minmax(0, 1.45fr);
}

.story img {
	width: 100%;
	aspect-ratio: 4 / 5;
	filter: saturate(0.82);
	object-fit: cover;
}

.story blockquote {
	margin-bottom: 1.5rem;
	color: var(--text-strong);
	font-family: var(--display);
	font-size: clamp(1.55rem, 2.7vw, 2.65rem);
	font-style: italic;
	line-height: 1.18;
}

.story p {
	display: grid;
	margin: 0;
	gap: 0.35rem;
}

.story p strong {
	font-size: 0.78rem;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.story p span {
	color: var(--text-muted);
	font-size: 0.78rem;
}

.mentor__grid {
	display: grid;
	grid-template-columns: minmax(18rem, 0.75fr) minmax(0, 1.25fr);
	gap: clamp(3rem, 9vw, 10rem);
	align-items: center;
}

.mentor__portrait {
	position: relative;
}

.mentor__portrait::after {
	position: absolute;
	right: -1.2rem;
	bottom: -1.2rem;
	width: 55%;
	height: 55%;
	border-right: 1px solid var(--border-on-dark);
	border-bottom: 1px solid var(--border-on-dark);
	content: "";
}

.mentor__portrait img {
	width: 100%;
	max-height: 43rem;
	object-fit: cover;
	object-position: center top;
}

.mentor__copy p:not(.kicker) {
	max-width: 42rem;
	color: var(--text-muted-on-dark);
}

.mentor__copy .text-link {
	margin-top: 1.4rem;
}

.faq__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.72fr) minmax(0, 1.28fr);
	gap: clamp(3rem, 9vw, 9rem);
	align-items: start;
}

.faq__list {
	border-top: 1px solid var(--border);
}

.faq details {
	border-bottom: 1px solid var(--border);
}

.faq summary {
	position: relative;
	list-style: none;
	color: var(--text-strong);
	cursor: pointer;
	font-family: var(--display);
	font-size: clamp(1.45rem, 2.2vw, 2rem);
	line-height: 1.2;
	padding: 1.5rem 3rem 1.5rem 0;
}

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

.faq summary::after {
	position: absolute;
	top: 50%;
	right: 0.25rem;
	content: "+";
	font-family: var(--body);
	font-size: 1.2rem;
	font-weight: 400;
	transform: translateY(-50%);
}

.faq details[open] summary::after {
	content: "−";
}

.faq details p {
	max-width: 46rem;
	margin-bottom: 1.7rem;
	color: var(--text-muted);
}

.closing-call {
	text-align: center;
}

.closing-call__inner {
	max-width: 68rem;
	border-block: 1px solid var(--border);
	padding-block: clamp(3rem, 7vw, 6rem);
}

.closing-call h2 {
	margin-bottom: 1.2rem;
}

.closing-call p:not(.kicker) {
	max-width: 42rem;
	margin: 0 auto 2rem;
	color: var(--text-muted);
	font-size: 1.08rem;
}

.closing-call .button-row {
	justify-content: center;
}

.page-hero {
	position: relative;
	border-bottom: 1px solid var(--border);
	background: var(--accent-tint);
	padding-block: clamp(5rem, 10vw, 10rem);
	overflow: hidden;
}

.page-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.3fr) minmax(19rem, 0.7fr);
	gap: clamp(3rem, 8vw, 8rem);
	align-items: center;
}

.page-hero__copy {
	max-width: 58rem;
}

.page-hero__copy h1 {
	margin-bottom: 2rem;
	font-size: clamp(3.6rem, 7.2vw, 7.2rem);
}

.page-hero__copy>p:not(.kicker) {
	max-width: 48rem;
	font-size: clamp(1.05rem, 1.5vw, 1.25rem);
}

.page-hero__copy .button-row {
	margin-top: 2.2rem;
}

.page-hero--center {
	text-align: center;
}

.page-hero--center .narrow {
	margin-inline: auto;
}

.page-hero--center h1 {
	margin-bottom: 1.5rem;
}

.page-hero--center p:not(.kicker) {
	margin-inline: auto;
}

.page-hero--dark {
	border-color: var(--border-on-dark);
	background: var(--sg-950);
	color: var(--text-on-dark);
}

.page-hero--dark h1 {
	color: var(--text-on-dark);
}

.offer-folio {
	width: min(28rem, 100%);
	border: 1px solid var(--border-strong);
	background: var(--bg-surface);
	box-shadow: var(--shadow-elevated);
	padding: clamp(2rem, 3vw, 3rem);
}

.offer-folio__stat {
	display: grid;
	gap: 1.15rem;
	justify-items: start;
}

.offer-folio__stat > p {
	margin: 0;
}

.offer-folio__label {
	margin-bottom: 0;
}

.offer-folio__price {
	margin-bottom: 0;
	color: var(--text-strong);
	font-family: var(--display);
	font-size: clamp(5rem, 8vw, 7.5rem);
	line-height: 0.9;
}

.offer-folio__price>span[aria-hidden="true"] {
	display: inline-block;
	font-size: 1em;
	vertical-align: baseline;
}

.offer-folio__unit {
	color: var(--text-muted);
	font-size: 0.95rem;
}

.offer-folio__rule {
	height: 1px;
	margin-block: 1.35rem;
	background: var(--border);
}

.offer-folio ul {
	margin-bottom: 0;
	padding-left: 1.2rem;
}

.offer-folio a {
	color: var(--text);
	font-size: 0.875rem;
	font-weight: 750;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.fit-section .section-heading {
	margin-bottom: 3.5rem;
}

.fit-ledger {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	border: 1px solid var(--border);
}

.fit-ledger>div {
	padding: clamp(2rem, 5vw, 4rem);
}

.fit-ledger>div+div {
	border-left: 1px solid var(--border);
	background: var(--deco-celadon);
}

.fit-ledger h3 {
	margin-bottom: 1.6rem;
	font-size: clamp(2rem, 3vw, 3rem);
}

.check-list,
.plain-list,
.topic-list {
	margin: 0;
	list-style: none;
	padding: 0;
}

.check-list li,
.plain-list li,
.topic-list li {
	position: relative;
	border-top: 1px solid var(--border);
	padding: 1rem 0 1rem 1.8rem;
}

.check-list li::before {
	position: absolute;
	top: 1.05rem;
	left: 0;
	color: var(--accent);
	content: "✓";
	font-weight: 800;
}

.plain-list li::before,
.topic-list li::before {
	position: absolute;
	top: 1.25rem;
	left: 0.2rem;
	width: 0.45rem;
	height: 0.45rem;
	background: var(--accent);
	content: "";
}

.course-parts .section-heading {
	margin-bottom: clamp(4rem, 8vw, 7rem);
}

.course-part {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(3rem, 6vw, 5.5rem);
	border-top: 1px solid var(--border);
	align-items: center;
	padding-block: clamp(3.5rem, 7vw, 6.5rem);
}

.course-part--reverse .course-part__media {
	order: 2;
}

.course-part--reverse .course-part__copy {
	order: 1;
}

.course-part__media {
	position: relative;
}

.course-part__media img {
	width: 100%;
	max-height: 38rem;
	aspect-ratio: 4 / 5;
	object-fit: cover;
}

.course-part__media span {
	position: absolute;
	right: -1px;
	bottom: -1px;
	background: var(--sg-900);
	color: var(--text-on-dark);
	font-size: 0.72rem;
	font-weight: 750;
	letter-spacing: 0.12em;
	padding: 0.85rem 1.1rem;
	text-transform: uppercase;
}

.course-part__copy h3 {
	margin-bottom: 1.3rem;
	font-size: clamp(2.4rem, 3.25vw, 3.65rem);
}

.course-part__label {
	font-size: clamp(0.95rem, 1vw, 1.05rem);
}

.course-part__copy>p:not(.course-part__label) {
	max-width: 46rem;
	color: var(--text-muted);
	font-size: clamp(1.08rem, 1.2vw, 1.28rem);
	line-height: 1.7;
}

.topic-list {
	margin-top: 2rem;
}

.topic-list li {
	font-size: clamp(1.02rem, 1.05vw, 1.16rem);
	line-height: 1.6;
	padding-block: 1.2rem;
}

.support-section__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
	gap: clamp(3rem, 8vw, 8rem);
}

.support-notes {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	border: 1px solid var(--border-strong);
}

.support-notes article {
	padding: clamp(2rem, 4vw, 3.5rem);
}

.support-notes article+article {
	border-left: 1px solid var(--border-strong);
}

.support-notes span,
.coaching-topics span {
	color: var(--accent);
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: none;
}

.teaching-principles span {
	color: var(--accent);
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: none;
}

.support-notes h3 {
	margin: 1rem 0;
	font-size: clamp(2rem, 3vw, 3rem);
}

.program-story__grid {
	display: grid;
	grid-template-columns: minmax(13rem, 0.45fr) minmax(0, 1.55fr);
	gap: clamp(3rem, 8vw, 8rem);
	align-items: center;
}

.program-story img {
	width: 100%;
	max-height: 33rem;
	aspect-ratio: 4 / 5;
	object-fit: cover;
}

.program-story h2 {
	max-width: 60rem;
	margin-bottom: 1.7rem;
}

.program-story blockquote {
	max-width: 48rem;
	color: var(--text-muted-on-dark);
	font-family: var(--display);
	font-size: 1.6rem;
	font-style: italic;
	line-height: 1.35;
}

.program-story p:not(.kicker) {
	color: var(--text-muted-on-dark);
}

.value-section__grid {
	display: grid;
	grid-template-columns: minmax(19rem, 0.8fr) minmax(0, 1.2fr);
	gap: clamp(3rem, 9vw, 9rem);
	align-items: center;
}

.value-stack {
	border: 1px solid var(--border);
	background: var(--bg-surface);
	padding: clamp(2rem, 4vw, 3.5rem);
}

.value-stack>div {
	display: flex;
	gap: 2rem;
	border-top: 1px solid var(--border);
	align-items: baseline;
	justify-content: space-between;
	padding-block: 1rem;
}

.value-stack strong {
	color: var(--text);
	font-family: var(--display);
	font-size: 1.7rem;
	font-weight: 400;
}

.value-stack .value-stack__total {
	border-top: 2px solid var(--text);
	font-weight: 750;
}

.value-section .section-heading .button {
	margin-top: 1.2rem;
}

.value-section .section-heading {
	max-width: 54rem;
	margin-inline: auto;
	text-align: center;
}

.value-section .section-heading h2,
.value-section .section-heading > p {
	margin-inline: auto;
}

.value-section .section-heading > p {
	max-width: 46rem;
}

.value-section .microcopy {
	margin-top: 1.3rem;
}

.low-pressure {
	background: var(--bg-canvas);
}

.low-pressure__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: clamp(2rem, 5vw, 5rem);
	align-items: center;
	border: 1px solid var(--sg-700);
	background: var(--sg-900);
	box-shadow: var(--shadow-elevated);
	color: var(--text-on-dark);
	padding: clamp(2.5rem, 5vw, 5rem);
}

.low-pressure__inner .button {
	justify-self: end;
}

.low-pressure h2 {
	margin-bottom: 1rem;
	color: var(--text-on-dark);
}

.low-pressure p:not(.kicker) {
	max-width: 45rem;
	color: var(--text-muted-on-dark);
}

.page-hero__portrait {
	position: relative;
	margin: 0;
}

.page-hero__portrait img {
	width: 100%;
	max-height: 41rem;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	object-position: center top;
}

.page-hero__portrait figcaption {
	position: absolute;
	right: 0;
	bottom: 0;
	background: var(--bg-surface);
	color: var(--text);
	font-size: 0.67rem;
	font-weight: 750;
	letter-spacing: 0.11em;
	padding: 0.85rem 1rem;
	text-transform: uppercase;
}

.story-chapter__grid {
	display: grid;
	grid-template-columns: minmax(8rem, 0.35fr) minmax(0, 1.65fr);
	gap: clamp(2rem, 8vw, 8rem);
}

.chapter-label {
	border-top: 1px solid var(--border);
	padding-top: 1.2rem;
}

.story-chapter__copy {
	max-width: 61rem;
}

.story-chapter__copy h2 {
	margin-bottom: 2rem;
}

.story-chapter__copy p {
	font-size: clamp(1rem, 1.4vw, 1.16rem);
}

.story-chapter__copy blockquote,
.why-program blockquote {
	margin: 2.5rem 0 0;
	border-left: 1px solid var(--accent);
	color: var(--text);
	font-family: var(--display);
	font-size: clamp(1.7rem, 3vw, 2.8rem);
	font-style: italic;
	line-height: 1.2;
	padding-left: clamp(1.5rem, 3vw, 3rem);
}

.career-spread__grid {
	display: grid;
	grid-template-columns: minmax(17rem, 0.75fr) minmax(0, 1.25fr);
	gap: clamp(3rem, 9vw, 9rem);
	align-items: center;
}

.career-spread__image img {
	width: 100%;
	max-height: 43rem;
	aspect-ratio: 4 / 5;
	object-fit: cover;
}

.career-spread__copy p:not(.kicker) {
	max-width: 45rem;
}

.career-facts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin: 2.5rem 0 0;
	border-top: 1px solid var(--border-strong);
	border-bottom: 1px solid var(--border-strong);
}

.career-facts div {
	display: grid;
	min-width: 0;
	min-height: 11.5rem;
	align-content: center;
	gap: 0.65rem;
	justify-items: center;
	padding: 2rem clamp(1.5rem, 3vw, 2.5rem);
	text-align: center;
}

.career-facts div+div {
	border-left: 1px solid var(--border-strong);
}

.career-facts dt {
	margin: 0;
	color: var(--text);
	font-family: var(--display);
	font-size: clamp(3rem, 4vw, 4.5rem);
	font-weight: 400;
	line-height: 0.95;
	text-align: center;
}

.career-facts dd {
	max-width: 24ch;
	margin: 0;
	color: var(--text-muted);
	font-family: var(--sans);
	font-size: clamp(0.9rem, 1.1vw, 1.05rem);
	font-weight: 600;
	letter-spacing: 0.025em;
	line-height: 1.4;
	text-align: center;
}

.teaching-section__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.75fr) minmax(0, 1.25fr);
	gap: clamp(3rem, 8vw, 8rem);
}

.teaching-principles {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border: 1px solid var(--border-on-dark);
}

.teaching-principles article {
	padding: clamp(1.5rem, 3vw, 2.7rem);
}

.teaching-principles article+article {
	border-left: 1px solid var(--border-on-dark);
}

.teaching-principles span {
	color: var(--text-muted-on-dark);
}

.teaching-principles p {
	margin-top: 1.3rem;
	color: var(--text-muted-on-dark);
}

.why-program__inner {
	max-width: 74rem;
	text-align: center;
}

.why-program h2 {
	max-width: 19ch;
	margin: 0 auto 2rem;
}

.why-program__copy {
	max-width: 50rem;
	margin-inline: auto;
}

.why-program__copy p {
	break-inside: avoid;
}

.why-program .button {
	margin-top: 2.5rem;
}

.results-page .page-hero {
	padding-block: clamp(3rem, 5vw, 5rem);
}

.results-page .page-hero+.result-feature {
	padding-top: clamp(3rem, 5vw, 5rem);
}


.results-page .page-hero .microcopy {
	max-width: 43rem;
	margin-top: 1.4rem;
}

.result-feature__grid {
	display: grid;
	grid-template-columns: minmax(16rem, 0.65fr) minmax(0, 1.35fr);
	gap: clamp(3rem, 9vw, 9rem);
	align-items: center;
}

.result-feature--reverse .result-feature__grid {
	grid-template-columns: minmax(0, 1.35fr) minmax(16rem, 0.65fr);
}

.result-feature--reverse .result-feature__image {
	order: 2;
}

.result-feature--reverse .result-feature__copy {
	order: 1;
}

.result-feature__image {
	position: relative;
}

.result-feature__image img {
	width: 100%;
	max-height: 42rem;
	aspect-ratio: 4 / 5;
	filter: saturate(0.85);
	object-fit: cover;
}

.result-feature__name {
	position: static;
	margin: 0.9rem 0 0;
	color: var(--text-muted);
	font-family: var(--body);
	font-size: 0.875rem;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 0.04em;
	padding: 0;
}

.student-context {
	display: block;
	margin-top: 0.25rem;
	color: var(--text-muted);
	font-size: 0.75rem;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.45;
	text-transform: none;
}

.result-feature__copy h2 {
	margin-bottom: 2rem;
}

.result-feature__copy blockquote {
	margin: 0;
	color: var(--text-muted);
	font-family: var(--display);
	font-size: clamp(1.35rem, 2vw, 1.9rem);
	line-height: 1.4;
}

.result-feature__copy blockquote p {
	margin-bottom: 1rem;
}

.result-note {
	margin-top: 1.8rem;
	border-top: 1px solid var(--border);
	color: var(--text-muted);
	font-size: 1rem;
	padding-top: 1.2rem;
}

.quote-ledger .section-heading {
	margin-bottom: 3.5rem;
}

.quote-ledger__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1px;
	border: 1px solid var(--border-strong);
	background: var(--border-strong);
}

.quote-ledger figure {
	display: flex;
	min-height: 21rem;
	margin: 0;
	background: var(--bg-sunken);
	flex-direction: column;
	justify-content: space-between;
	padding: clamp(1.7rem, 3.5vw, 3rem);
}

.quote-ledger blockquote {
	color: var(--text-strong);
	font-family: var(--display);
	font-size: clamp(1.35rem, 2vw, 1.85rem);
	font-style: italic;
	line-height: 1.3;
}

.quote-ledger figcaption {
	position: static;
	color: var(--text-muted);
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	margin-top: 0.9rem;
	text-transform: none;
}

.webinar-hero {
	padding: 0;
	text-align: left;
}

.webinar-hero h1 {
	margin-bottom: 0;
}

.webinar-hero__content {
	display: grid;
	grid-template-columns: minmax(0, 35%) minmax(0, 65%);
	align-items: stretch;
	width: 100%;
}

.webinar-hero__copy {
	display: flex;
	grid-column: 1;
	grid-row: 1;
	flex-direction: column;
	justify-content: center;
	width: min(calc(100% - 3rem), 30rem);
	margin-inline: auto;
	padding: clamp(1.5rem, 2.3vw, 3rem) 0;
}

.webinar-player {
	grid-column: 2;
	grid-row: 1;
}

.webinar-hero__lede {
	margin: clamp(1.5rem, 2.5vw, 2.5rem) 0 0;
	color: var(--text-muted);
	font-size: clamp(1.1rem, 1.5vw, 1.3rem);
	line-height: 1.65;
}

.webinar-hero .video-frame {
	box-shadow: none;
}

.webinar-hero .kicker {
	color: var(--accent);
	font-size: 0.78rem;
}


.video-frame {
	position: relative;
	width: 100%;
	background: var(--sg-950);
	box-shadow: var(--shadow-elevated);
	overflow: hidden;
	padding-top: 56.25%;
}

.video-frame iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.video-poster {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	border: 0;
	background: var(--sg-950);
	color: var(--text-on-dark);
	cursor: pointer;
	font: inherit;
	padding: 0;
	text-align: left;
}

.video-poster::after {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(180deg, rgba(11, 23, 28, 0.22), var(--scrim)),
		linear-gradient(90deg, rgba(11, 23, 28, 0.22), transparent 62%);
	content: "";
}

.video-poster>img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 500ms cubic-bezier(0.22, 1, 0.36, 1);
}

.video-poster__content {
	position: absolute;
	inset: 0;
	z-index: 1;
	display: grid;
	align-content: start;
	justify-items: center;
	padding: clamp(1.5rem, 5vw, 4rem);
	text-align: center;
}

.video-poster__eyebrow,
.video-poster__action {
	font-size: clamp(0.875rem, 1.1vw, 1rem);
	font-weight: 750;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.video-poster__play {
	display: grid;
	width: clamp(4.5rem, 8vw, 6rem);
	height: clamp(4.5rem, 8vw, 6rem);
	margin-block: clamp(1rem, 2vw, 1.5rem);
	border: 1px solid var(--border-on-dark);
	border-radius: 50%;
	background: rgba(11, 23, 28, 0.45);
	box-shadow: 0 0.8rem 2rem rgba(11, 23, 28, 0.22);
	place-items: center;
	transition: background-color 180ms ease, transform 180ms ease;
}

.video-poster__play::before {
	width: 0;
	height: 0;
	margin-left: 0.35rem;
	border-top: 0.65rem solid transparent;
	border-bottom: 0.65rem solid transparent;
	border-left: 1rem solid currentcolor;
	content: "";
}

.video-poster__title {
	max-width: 35rem;
	margin-bottom: 0.8rem;
	font-family: var(--display);
	font-size: clamp(1.8rem, 4vw, 3.5rem);
	line-height: 1.05;
}

.webinar-hero .video-poster__content {
	inset: auto auto clamp(1.25rem, 2.5vw, 2.5rem) clamp(1.25rem, 2.5vw, 2.5rem);
	display: flex;
	align-items: center;
	gap: 1rem;
	width: auto;
	padding: 0;
	text-align: left;
}

.webinar-hero .video-poster__eyebrow,
.webinar-hero .video-poster__title {
	display: none;
}

.webinar-hero .video-poster__play {
	flex: none;
	width: clamp(3.5rem, 5vw, 4.5rem);
	height: clamp(3.5rem, 5vw, 4.5rem);
	margin: 0;
	background: var(--scrim);
}

.webinar-hero .video-poster__action {
	text-shadow: 0 2px 8px var(--scrim);
}

.video-poster:hover>img {
	transform: scale(1.025);
}

.video-poster:hover .video-poster__play {
	background: var(--cta-gradient);
	color: var(--cta-ink);
	transform: scale(1.06);
}

.video-poster:focus-visible {
	outline: 3px solid var(--focus-on-dark);
	outline-offset: -7px;
}


.video-placeholder {
	display: grid;
	min-height: 32rem;
	background: var(--sg-950);
	color: var(--text-on-dark);
	place-items: center;
}

.webinar-notes__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr);
	gap: clamp(3rem, 8vw, 8rem);
}

.webinar-offer__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.3fr) minmax(18rem, 0.7fr);
	gap: clamp(3rem, 8vw, 8rem);
	align-items: center;
}

.webinar-offer h2 {
	margin-bottom: 1.5rem;
}

.webinar-offer p:not(.kicker) {
	color: var(--text-muted-on-dark);
}

.webinar-offer__testimonial {
	max-width: 40rem;
	margin: clamp(2.5rem, 5vw, 4rem) 0 0;
	border-top: 1px solid var(--border-on-dark);
	padding-top: clamp(1.75rem, 3vw, 2.5rem);
}

.webinar-offer__testimonial blockquote {
	margin: 0;
	color: var(--text-on-dark);
	font-family: var(--display);
	font-size: clamp(1.4rem, 2.2vw, 1.8rem);
	font-style: italic;
	line-height: 1.4;
}

.webinar-offer__testimonial figcaption {
	margin-top: 1rem;
	color: var(--text-muted-on-dark);
	font-size: 0.875rem;
	font-weight: 700;
}

.webinar-offer__price {
	border: 1px solid var(--border-on-dark);
	padding: clamp(2rem, 4vw, 3.5rem);
}

.webinar-offer__price>span {
	font-size: 0.875rem;
	font-weight: 750;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.webinar-offer__price>strong {
	display: block;
	margin-block: 0.5rem;
	font-family: var(--display);
	font-size: clamp(4rem, 7vw, 6rem);
	font-weight: 400;
	line-height: 1;
}

.webinar-offer__price .button {
	width: 100%;
	margin: 1.2rem 0;
}

.webinar-offer__price .text-link {
	font-size: 0.875rem;
}

.coaching-details__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.7fr) minmax(0, 1.3fr);
	gap: clamp(3rem, 8vw, 8rem);
}

.coaching-topics {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	border: 1px solid var(--border);
}

.coaching-topics article {
	padding: clamp(1.5rem, 3vw, 2.7rem);
}

.coaching-topics article+article {
	border-left: 1px solid var(--border);
}

.coaching-topics p {
	margin-top: 1.2rem;
	color: var(--text-muted);
}

.coaching-offer__grid {
	display: grid;
	grid-template-columns: minmax(15rem, 0.6fr) minmax(0, 1.4fr);
	gap: clamp(3rem, 9vw, 9rem);
	align-items: center;
}

.coaching-offer__price {
	border: 1px solid var(--border);
	background: var(--bg-surface);
	padding: clamp(2rem, 4vw, 3.5rem);
}

.coaching-offer__price span {
	font-size: 0.875rem;
	font-weight: 750;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.coaching-offer__price strong {
	display: block;
	margin-block: 0.6rem;
	color: var(--text);
	font-family: var(--display);
	font-size: clamp(5rem, 8vw, 7rem);
	font-weight: 400;
	line-height: 1;
}

.callout-note {
	margin-block: 2rem;
	border: 1px solid var(--accent);
	background: var(--bg-surface);
	padding: 1.2rem 1.4rem;
}

.callout-note strong {
	color: var(--text);
	font-size: 0.875rem;
	letter-spacing: 0.04em;
	text-transform: none;
}

.callout-note p {
	margin-top: 0.4rem;
}

.contact-section {
	min-height: calc(100svh - var(--header-height));
}

.contact-section__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.8fr) minmax(22rem, 1.2fr);
	gap: clamp(3rem, 10vw, 10rem);
	align-items: start;
}

.contact-intro {
	position: sticky;
	top: calc(var(--header-height) + 3rem);
}

.contact-intro h1 {
	margin-bottom: 1.8rem;
}

.contact-intro__note {
	margin-top: 2.5rem;
	border-top: 1px solid var(--border);
	padding-top: 1.4rem;
}

.contact-intro__note strong {
	font-size: 0.875rem;
	letter-spacing: 0.04em;
	text-transform: none;
}

.contact-intro__note p {
	margin-top: 0.5rem;
	color: var(--text-muted);
	font-size: 0.875rem;
}

.contact-form-wrap {
	border: 1px solid var(--border-control);
	background: var(--bg-surface);
	padding: clamp(1.5rem, 4vw, 3.5rem);
	box-shadow: 0 1.5rem 3rem var(--shadow-color);
}

.contact-form-wrap .fluentform {
	color: var(--text);
}

.contact-form-wrap .ff-t-container {
	gap: 1rem;
}

.contact-form-wrap .ff-el-group {
	margin-bottom: 1.35rem;
}

.contact-form-wrap .ff-el-input--label label {
	display: block;
	margin-bottom: 0.45rem;
	color: var(--text-strong);
	font-size: 0.875rem;
	font-weight: 750;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.contact-form-wrap .ff-el-required {
	color: var(--danger);
	font-size: 1rem;
	font-weight: 750;
}

.contact-form-wrap .ff-el-form-control {
	width: 100%;
	border: 1px solid var(--border-control);
	border-radius: 0;
	background: var(--bg-canvas);
	color: var(--text);
	font: inherit;
	line-height: 1.5;
	padding: 0.9rem 1rem;
	transition: border-color 160ms ease, box-shadow 160ms ease;
}

.contact-form-wrap input.ff-el-form-control {
	min-height: 3.2rem;
}

.contact-form-wrap textarea.ff-el-form-control {
	min-height: 12rem;
	resize: vertical;
}

.contact-form-wrap .ff-el-form-control:focus {
	border-color: var(--focus);
	box-shadow: none;
	outline: 3px solid var(--focus);
	outline-offset: 2px;
}

.contact-form-wrap .ff-el-is-error .ff-el-form-control {
	border-color: var(--danger);
}

.contact-form-wrap .ff-el-is-error .text-danger,
.contact-form-wrap .ff-el-is-error .error {
	color: var(--danger);
	font-size: 0.875rem;
}

.contact-form-wrap .ff-btn-submit {
	display: inline-flex;
	min-height: 3.45rem;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--cta-edge);
	border-radius: 0;
	background: var(--cta-gradient);
	box-shadow: var(--cta-shadow);
	color: var(--cta-ink);
	font-size: 0.875rem;
	font-weight: 750;
	letter-spacing: 0.09em;
	line-height: 1.2;
	padding: 1rem 1.4rem;
	text-transform: uppercase;
	transition: background 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.contact-form-wrap .ff-btn-submit:hover,
.contact-form-wrap .ff-btn-submit:focus-visible {
	border-color: var(--cta-edge);
	background: var(--cta-gradient-hover);
	box-shadow: var(--cta-shadow-hover);
	color: var(--cta-ink);
	opacity: 1;
	transform: translateY(-2px);
}

.contact-form-wrap .ff-btn-submit:active {
	background: var(--cta-gradient-active);
	box-shadow: none;
	transform: translateY(1px);
}

.contact-form-wrap .ff-btn-submit:focus-visible {
	outline: 3px solid var(--focus);
	outline-offset: 3px;
}

.contact-form-wrap .ff-message-success {
	border: 1px solid var(--success);
	background: var(--deco-mint);
	color: var(--text-strong);
	padding: 1.2rem 1.4rem;
}

.contact-form-fallback {
	border: 1px solid var(--warning);
	background: var(--accent-tint);
	color: var(--text-strong);
	padding: 1.2rem 1.4rem;
}

.contact-form-wrap .ff-message-success p,
.contact-form-fallback p {
	margin: 0;
}

/* Fluent Forms loads its component stylesheet after the theme on some installs. */
.contact-form-wrap .fluentform .ff-el-input--label label {
	color: var(--text-strong) !important;
}

.contact-form-wrap .fluentform .ff-el-required {
	color: var(--danger) !important;
}

.contact-form-wrap .fluentform .ff-el-form-control {
	border-color: var(--border-control) !important;
	background: var(--bg-canvas) !important;
	box-shadow: none !important;
	color: var(--text) !important;
}

.contact-form-wrap .fluentform .ff-el-form-control:focus {
	border-color: var(--focus) !important;
	box-shadow: none !important;
	outline: 3px solid var(--focus) !important;
	outline-offset: 2px !important;
}

.contact-form-wrap .fluentform .ff-el-is-error .ff-el-form-control {
	border-color: var(--danger) !important;
}

.contact-form-wrap .fluentform .ff-el-is-error .text-danger,
.contact-form-wrap .fluentform .ff-el-is-error .error {
	color: var(--danger) !important;
}

.contact-form-wrap .fluentform .ff-btn-submit {
	border: 1px solid var(--cta-edge) !important;
	background: var(--cta-gradient) !important;
	box-shadow: var(--cta-shadow) !important;
	color: var(--cta-ink) !important;
	opacity: 1 !important;
}

.contact-form-wrap .fluentform .ff-btn-submit:hover,
.contact-form-wrap .fluentform .ff-btn-submit:focus-visible {
	border-color: var(--cta-edge) !important;
	background: var(--cta-gradient-hover) !important;
	box-shadow: var(--cta-shadow-hover) !important;
	color: var(--cta-ink) !important;
}

.contact-form-wrap .fluentform .ff-btn-submit:active {
	background: var(--cta-gradient-active) !important;
	box-shadow: none !important;
}

.contact-form-wrap .fluentform .ff-btn-submit:disabled,
.contact-form-wrap .fluentform .ff-btn-submit[disabled] {
	border-color: var(--sg-400) !important;
	background: var(--sg-300) !important;
	box-shadow: none !important;
	color: var(--text-muted) !important;
	cursor: not-allowed !important;
	opacity: 1 !important;
	transform: none !important;
	transition: none !important;
}

.contact-form-fallback h2 {
	margin-bottom: 0.75rem;
	font-size: clamp(1.5rem, 3vw, 2rem);
}

.form-privacy {
	margin-top: 1.2rem;
	color: var(--text-muted);
	font-size: 0.875rem;
}

.legal-copy {
	max-width: 75ch;
	font-size: 1rem;
}

.legal-copy h1 {
	margin-bottom: 2.5rem;
	font-size: clamp(2.5rem, 5vw, 3.75rem);
}

.webinar-hero h1 {
	font-size: clamp(2.75rem, 5vw, 3.5rem);
}

.coaching-hero__media {
	max-width: 42rem;
	margin: 2.5rem auto 0;
}

.coaching-hero__media img {
	width: 100%;
	max-height: 25rem;
	object-fit: cover;
	object-position: center 28%;
}

.legal-copy h2 {
	margin: 3rem 0 1rem;
	font-size: clamp(1.8rem, 3vw, 2.6rem);
	line-height: 1.15;
}

.legal-copy p,
.legal-copy li {
	color: var(--text-muted);
}

.legal-copy ul {
	padding-left: 1.4rem;
}

.legal-copy address {
	font-style: normal;
}

.page-shell {
	min-height: 60vh;
	padding-block: var(--section-space);
}

.prose {
	max-width: 55rem;
}

.prose>h1,
.prose article>h1,
.empty-state h1 {
	margin-bottom: 2rem;
}

.empty-state {
	text-align: center;
}

.empty-state .button-row {
	margin-top: 2rem;
	justify-content: center;
}

.site-footer {
	border-top: 1px solid var(--border-on-dark);
	background: var(--sg-950);
	color: var(--text-on-dark);
}

.site-footer__cta {
	display: flex;
	gap: 3rem;
	border-bottom: 1px solid var(--border-on-dark);
	align-items: end;
	justify-content: space-between;
	padding-block: clamp(3rem, 6vw, 5rem);
}

.site-footer__cta h2 {
	margin-bottom: 0.8rem;
	color: var(--text-on-dark);
	font-size: clamp(2.25rem, 4vw, 3.5rem);
}

.site-footer__cta p:not(.kicker) {
	max-width: 40rem;
	color: var(--text-muted-on-dark);
}

.site-footer__main {
	display: grid;
	grid-template-columns: minmax(14rem, 1.2fr) repeat(2, minmax(10rem, 0.7fr));
	gap: clamp(2rem, 7vw, 7rem);
	padding-block: clamp(3rem, 6vw, 5rem);
}

.site-footer--compact .site-footer__main {
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: start;
	gap: clamp(2rem, 6vw, 6rem);
	padding-block: clamp(2.25rem, 4vw, 3.5rem);
}

.site-footer .brand-mark {
	color: var(--text-on-dark);
}

.site-footer__brand>p {
	max-width: 29rem;
	margin-top: 1.4rem;
	color: var(--text-muted-on-dark);
	font-size: 0.875rem;
}

.site-footer__heading {
	color: var(--text-muted-on-dark);
	font-size: 0.75rem;
	font-weight: 750;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.site-footer__nav ul,
.site-footer__systems ul {
	margin: 0;
	list-style: none;
	padding: 0;
}

.site-footer__nav li,
.site-footer__systems li {
	margin-top: 0.5rem;
}

.site-footer__nav a,
.site-footer__systems a {
	color: var(--sg-200);
	font-size: 0.875rem;
}

.site-footer__legal {
	display: flex;
	gap: 1rem 2rem;
	border-top: 1px solid var(--border-on-dark);
	color: var(--text-muted-on-dark);
	font-size: 0.75rem;
	justify-content: space-between;
	padding-block: 1.4rem;
}

.site-footer__legal p {
	margin: 0;
}

.js .reveal {
	opacity: 0;
	transform: translateY(1.5rem);
	transition: opacity 700ms ease, transform 700ms cubic-bezier(0.22, 1, 0.36, 1), clip-path 850ms cubic-bezier(0.22, 1, 0.36, 1);
}

.js .reveal--wipe {
	clip-path: inset(0 100% 0 0);
	transform: none;
}

.js .reveal--stagger>* {
	opacity: 0;
	transform: translateY(1rem);
	transition: opacity 550ms ease, transform 550ms cubic-bezier(0.22, 1, 0.36, 1);
}

.js .reveal.is-visible {
	opacity: 1;
	clip-path: inset(0 0 0 0);
	transform: translateY(0);
}

.js .reveal--stagger.is-visible>* {
	opacity: 1;
	transform: translateY(0);
}

.js .reveal--stagger.is-visible>*:nth-child(2) {
	transition-delay: 90ms;
}

.js .reveal--stagger.is-visible>*:nth-child(3) {
	transition-delay: 180ms;
}

.js .reveal--stagger.is-visible>*:nth-child(4) {
	transition-delay: 270ms;
}

.js .reveal--stagger.is-visible>*:nth-child(5) {
	transition-delay: 360ms;
}

.js .reveal--stagger.is-visible>*:nth-child(6) {
	transition-delay: 450ms;
}

@media (min-width: 72.001rem) {
	.webinar-hero h1 {
		font-size: clamp(2.75rem, 3vw, 4.25rem);
	}

	.webinar-hero__lede {
		margin-top: 1.5rem;
		font-size: clamp(1.1rem, 1.2vw, 1.45rem);
		line-height: 1.55;
	}
}

@media (max-width: 72rem) {
	.webinar-hero__content {
		grid-template-columns: 1fr;
	}

	.webinar-player {
		grid-column: 1;
		grid-row: 1;
	}

	.webinar-hero__copy {
		grid-column: 1;
		grid-row: 2;
		width: var(--shell);
		margin-inline: auto;
		padding: clamp(2rem, 5vw, 4rem) 0;
	}
}

@media (max-width: 76rem) {
	.primary-nav ul {
		gap: 1.15rem;
	}

	.header-cta {
		display: none;
	}

	.site-header__inner {
		grid-template-columns: auto 1fr;
	}

	.hero__folio {
		width: min(36rem, calc(100% - 1.5rem));
	}

	.proof-strip__inner {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.proof-strip__inner>p {
		grid-column: 1 / -1;
		min-height: auto;
		border-top: 1px solid var(--border-on-dark);
		padding-block: 1.25rem;
		text-align: center;
		justify-content: center;
	}

	.quote-ledger__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.teaching-section__grid,
	.coaching-details__grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 64rem) {
	.hero {
		display: grid;
		min-height: calc(100svh - var(--header-height));
		align-items: center;
		overflow: hidden;
		background: var(--sg-950);
	}

	.hero__media {
		position: absolute;
		inset: 0;
		z-index: 0;
		width: auto;
		height: auto;
	}

	.hero__veil {
		background: linear-gradient(90deg, rgba(11, 23, 28, 0.22) 0%, rgba(11, 23, 28, 0.04) 56%, transparent 78%);
	}

	.hero__inner {
		width: 100%;
		min-height: inherit;
		align-items: center;
		margin-inline: 0;
		background: transparent;
		padding: clamp(2.5rem, 6vw, 4.5rem) clamp(1.2rem, 4vw, 3rem);
	}

	.hero__folio {
		display: block;
		width: min(34rem, calc(100% - 1rem));
		margin-inline: 0;
		border: 1px solid var(--border-strong);
		background: var(--accent-tint-hover);
		background: color-mix(in srgb, var(--accent-tint-hover) 92%, transparent);
		box-shadow: var(--shadow-elevated);
		color: var(--text);
		padding: clamp(2rem, 4vw, 3rem);
	}

	.hero__guide {
		margin-bottom: 0.8rem;
		color: var(--accent);
	}

	.hero h1 {
		margin-bottom: 1.25rem;
		color: var(--text-strong);
		font-size: clamp(3rem, 9vw, 5.1rem);
	}

	.hero h1 em {
		color: var(--accent);
	}

	.hero__lede {
		margin-bottom: 1.5rem;
	}

	.hero__actions>span {
		color: var(--text);
	}

	.hero__controls {
		right: 1.2rem;
		bottom: 1.2rem;
		top: auto;
	}
}

@media (max-width: 60rem) {
	:root {
		--header-height: 4.5rem;
		--shell: min(92rem, calc(100vw - 2.4rem));
		--narrow: min(52rem, calc(100vw - 2.4rem));
	}

	.nav-toggle {
		display: block;
		justify-self: end;
	}

	.site-header__inner {
		grid-template-columns: 1fr auto;
	}

	.primary-nav {
		position: fixed;
		top: var(--header-height);
		right: 0;
		bottom: 0;
		left: 0;
		display: none;
		background: var(--bg-canvas);
		padding: 2rem 1.2rem;
	}

	.primary-nav.is-open {
		display: block;
	}

	.primary-nav ul {
		width: min(38rem, 100%);
		margin-inline: auto;
		align-items: stretch;
		flex-direction: column;
		gap: 0;
	}

	.primary-nav li {
		border-bottom: 1px solid var(--border);
	}

	.primary-nav a {
		display: flex;
		min-height: 4.25rem;
		align-items: center;
		font-family: var(--display);
		font-size: 1.75rem;
		font-weight: 400;
		letter-spacing: -0.01em;
		text-transform: none;
	}

	.primary-nav a::after {
		display: none;
	}

	.hero__inner {
		grid-template-columns: 1fr;
		padding-inline: clamp(1.2rem, 5vw, 3rem);
	}

	.hero__folio {
		width: min(40rem, calc(100% - 2.4rem));
		margin-inline: 0;
		justify-self: center;
		padding: clamp(2rem, 5vw, 3rem);
	}

	.hero h1 {
		margin-bottom: 1.25rem;
		font-size: clamp(3rem, 9vw, 5.1rem);
	}

	.hero__guide {
		margin-bottom: 0.8rem;
	}

	.hero__lede {
		margin-bottom: 1.5rem;
	}

	.hero__controls {
		right: 1.2rem;
		bottom: 1.2rem;
		top: auto;
	}

	.page-hero h1 {
		font-size: clamp(2.75rem, 7vw, 3.75rem);
	}

	.section-heading--split {
		grid-template-columns: 1fr;
		gap: 1.2rem;
	}

	.media-control {
		top: 1rem;
		right: 1rem;
		bottom: auto;
	}

	.program-intro__grid,
	.doubt-grid,
	.outcomes__grid,
	.faq__grid,
	.support-section__grid,
	.webinar-notes__grid,
	.contact-section__grid {
		grid-template-columns: 1fr;
	}

	.career-spread__grid,
	.quote-ledger__grid,
	.proof-strip__inner,
	.mentor__grid,
	.program-story__grid,
	.story-chapter__grid,
	.program-path__item,
	.course-part {
		grid-template-columns: 1fr;
	}

	.result-feature__grid,
	.result-feature--reverse .result-feature__grid {
		grid-template-columns: 1fr;
	}

	.result-feature--reverse .result-feature__image,
	.result-feature--reverse .result-feature__copy,
	.course-part--reverse .course-part__media,
	.course-part--reverse .course-part__copy,
	.program-path__item--reverse .program-path__media,
	.program-path__item--reverse .program-path__copy {
		grid-column: auto;
		grid-row: auto;
	}

	.free-class-panel__grid {
		grid-template-columns: auto 1fr;
	}

	.free-class-panel__action {
		grid-column: 1 / -1;
		grid-template-columns: 1fr auto;
		align-items: center;
	}

	.program-path__item,
	.course-part {
		gap: clamp(2rem, 5vw, 4rem);
	}

	.program-path__media::before {
		right: 0;
	}

	.story {
		grid-template-columns: minmax(7rem, 0.4fr) minmax(0, 1fr);
	}

	.page-hero__grid,
	.value-section__grid,
	.webinar-offer__grid,
	.coaching-offer__grid {
		grid-template-columns: 1fr;
	}

	.offer-folio {
		width: min(32rem, 100%);
	}

	.teaching-principles,
	.coaching-topics {
		grid-template-columns: 1fr;
	}

	.teaching-principles article+article,
	.coaching-topics article+article {
		border-top: 1px solid var(--border-on-dark);
		border-left: 0;
	}

	.coaching-topics article+article {
		border-top-color: var(--border);
	}

	.contact-intro {
		position: static;
	}

	.site-footer__main {
		grid-template-columns: 1fr 1fr;
	}

	.site-footer__brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 44rem) {
	.page-hero--portrait {
		padding-block: 2.5rem;
	}

	.page-hero--portrait h1 {
		font-size: clamp(2.2rem, 9vw, 2.75rem);
		line-height: 1.08;
	}

	.page-hero--portrait .page-hero__grid {
		gap: 2.5rem;
	}

	.page-hero--portrait .page-hero__copy {
		order: -1;
	}

	.page-hero--portrait .page-hero__portrait {
		order: 0;
	}

	body {
		font-size: 1rem;
	}

	h1 {
		font-size: clamp(2.625rem, 11vw, 3.25rem);
	}

	h2 {
		font-size: clamp(2.125rem, 9vw, 2.875rem);
	}

	.section-heading--split {
		grid-template-columns: 1fr;
		gap: 1.2rem;
	}

	.button,
	.hero__actions .button {
		width: 100%;
	}

	.text-link {
		font-size: 0.875rem;
	}

	.brand-mark__initials {
		font-size: 1.75rem;
	}

	.brand-mark__words {
		font-size: 0.8125rem;
	}

	.site-footer--compact .site-footer__main {
		grid-template-columns: 1fr;
	}

	.program-path__media::before,
	.mentor__portrait::after,
	.result-feature__image span {
		right: 0;
	}

	.hero h1 {
		font-size: clamp(2.5rem, 10.5vw, 3.125rem);
		line-height: 1.08;
	}

	.hero__lede {
		font-size: 1rem;
	}

	.hero__actions>span {
		width: 100%;
		text-align: center;
	}

	.proof-strip__inner {
		grid-template-columns: 1fr;
	}

	.proof-strip__inner>div,
	.proof-strip__inner>p {
		min-height: auto;
		border-right: 0;
		border-bottom: 1px solid var(--border-on-dark);
		text-align: center;
		padding-block: 1.4rem;
	}

	.proof-strip__inner>p {
		grid-column: auto;
		border-top: 0;
	}

	.free-class-panel__grid {
		grid-template-columns: 1fr;
	}

	.free-class-panel__number {
		font-size: 7rem;
	}

	.free-class-panel__action {
		grid-column: auto;
		grid-template-columns: 1fr;
	}

	.program-path__item,
	.course-part {
		grid-template-columns: 1fr;
	}

	.program-path__item--reverse .program-path__media,
	.course-part--reverse .course-part__media {
		order: 1;
	}

	.program-path__item--reverse .program-path__copy,
	.course-part--reverse .course-part__copy {
		order: 2;
	}

	.program-path__media {
		max-width: none;
	}

	.story-ledger,
	.fit-ledger,
	.support-notes,
	.career-facts {
		grid-template-columns: 1fr;
	}

	.video-poster__content {
		align-content: center;
		padding: 1rem;
	}

	.video-poster__eyebrow,
	.video-poster__title {
		display: none;
	}

	.video-poster__play {
		margin-block: 0 0.9rem;
	}

	.story,
	.story--feature {
		grid-column: auto;
		grid-template-columns: 1fr;
	}

	.story img {
		max-height: 24rem;
		aspect-ratio: 5 / 4;
		object-position: center 25%;
	}

	.mentor__grid,
	.program-story__grid,
	.story-chapter__grid,
	.career-spread__grid,
	.result-feature__grid {
		grid-template-columns: 1fr;
	}

	.faq__grid {
		gap: 2.5rem;
	}

	.fit-ledger>div+div,
	.support-notes article+article,
	.career-facts div+div {
		border-top: 1px solid var(--border);
		border-left: 0;
	}

	.career-facts div,
	.career-facts div+div {
		min-height: 0;
		padding: 1.4rem 0;
	}

	.career-facts dd {
		min-height: 0;
	}

	.program-story img {
		max-height: 28rem;
		aspect-ratio: 5 / 4;
		object-position: center 25%;
	}

	.low-pressure__inner {
		grid-template-columns: 1fr;
		align-items: stretch;
	}

	.low-pressure__inner .button {
		width: 100%;
		justify-self: stretch;
	}

	.site-footer__cta {
		align-items: stretch;
		flex-direction: column;
	}

	.page-hero {
		padding-block: 4rem;
	}

	.page-hero--portrait {
		padding-block: 2.5rem;
	}

	.page-hero__copy h1 {
		font-size: clamp(3.1rem, 14vw, 4.8rem);
	}

	.page-hero--portrait h1 {
		font-size: clamp(2.2rem, 9vw, 2.75rem);
		line-height: 1.08;
	}

	.page-hero--portrait .page-hero__copy {
		order: -1;
	}

	.page-hero--portrait .page-hero__portrait {
		order: 0;
	}

	.teaching-principles,
	.coaching-topics,
	.quote-ledger__grid {
		grid-template-columns: 1fr;
	}

	.why-program__copy {
		columns: 1;
	}

	.result-feature--reverse .result-feature__image {
		order: 1;
	}

	.result-feature--reverse .result-feature__copy {
		order: 2;
	}

	.result-feature__image img {
		max-height: 30rem;
		aspect-ratio: 5 / 4;
		object-position: center 25%;
	}

	.quote-ledger figure {
		min-height: auto;
	}

	.video-placeholder {
		min-height: 18rem;
	}

	.site-footer__main {
		grid-template-columns: 1fr;
	}

	.site-footer__brand {
		grid-column: auto;
	}

	.site-footer__legal {
		flex-direction: column;
	}
}

.about-page .page-hero__copy h1 {
	font-size: clamp(3rem, 5.2vw, 5.6rem);
	line-height: 1.08;
}

.doubt-list li {
	color: var(--text);
	font-size: clamp(1.3rem, 2vw, 2rem);
	font-style: normal;
	line-height: 1.3;
}

.value-section__grid {
	display: block;
	max-width: 54rem;
}

.result-feature__copy blockquote {
	font-size: clamp(1.2rem, 1.7vw, 1.6rem);
	line-height: 1.55;
}

@media (max-width: 44rem) {
	.hero {
		min-height: max(46rem, calc(100svh - var(--header-height)));
		overflow: hidden;
	}

	.hero__media {
		inset: 0;
		height: auto;
	}

	.hero__veil {
		inset: 0;
		height: auto;
		background: linear-gradient(90deg, rgba(11, 23, 28, 0.22) 0%, rgba(11, 23, 28, 0.04) 62%, transparent 88%);
	}

	.hero__veil::before {
		backdrop-filter: blur(12px);
		-webkit-backdrop-filter: blur(12px);
	}

	.hero__inner {
		align-items: end;
		padding: 1.2rem 1.2rem 5.75rem;
	}

	.hero__folio {
		width: 100%;
		border: 1px solid var(--border-strong);
		background: var(--accent-tint-hover);
		background: color-mix(in srgb, var(--accent-tint-hover) 94%, transparent);
		box-shadow: var(--shadow-elevated);
		padding: clamp(1.5rem, 6vw, 2.25rem);
	}

	.about-page .page-hero__copy h1 {
		font-size: clamp(2.2rem, 9vw, 2.75rem);
	}

	.hero__controls {
		right: 1rem;
		bottom: auto;
		top: 1rem;
	}

	.hero__slide img {
		object-position: 65% 32%;
	}

	.hero__slide:nth-child(3) img,
	.hero__slide:nth-child(4) img,
	.hero__slide:nth-child(5) img {
		object-position: 54% 22%;
	}

	.career-facts dt {
		font-size: clamp(1.75rem, 8vw, 2.35rem);
	}

	.career-facts dd {
		font-size: 0.9rem;
	}

	.career-facts div,
	.career-facts div + div {
		min-height: 11rem;
		padding: 2rem 1rem;
	}

	.result-feature__grid,
	.result-feature--reverse .result-feature__grid {
		grid-template-columns: 1fr;
	}
}

/* Keep the Accessibly launcher clear of the CAPTCHA notice on the right. */
#accessiblyAppWidgetButton {
	left: 15px !important;
	right: auto !important;
}

#accessiblyAppDialog {
	left: 0 !important;
	right: auto !important;
}

#accessiblyAppDialogButton {
	background-image: linear-gradient(var(--accent), var(--accent)) !important;
}

#accessiblyAppDialog .accessibly-app-navigation,
#accessiblyAppDialog .accessibly-app-reset-button {
	background-color: var(--accent) !important;
}

#accessiblyAppDialog .accessibly-app-option-button,
#accessiblyAppDialog .accessibly-app-option-button > div,
#accessiblyAppDialog .accessibly-app-feature-group-container,
#accessiblyAppDialog .accessibly-app-current-language-container {
	color: var(--accent) !important;
}

#accessiblyAppDialog .accessibly-app-feature-group-container {
	outline-color: var(--accent) !important;
}

#accessiblyAppDialog .accessibly-app-current-language-container {
	border-color: var(--accent) !important;
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}

	.js .reveal,
	.js .reveal--stagger>* {
		opacity: 1;
		clip-path: none;
		transform: none;
	}

	.hero__slide {
		transition: none;
	}
}

@media print {

	.site-header,
	.site-footer__cta,
	.media-control,
	.button {
		display: none !important;
	}

	body,
	.section,
	.section--dark,
	.section--mist,
	.section--light {
		background: var(--sg-25) !important;
		color: var(--sg-950) !important;
	}

	.js .reveal,
	.js .reveal--stagger>* {
		opacity: 1 !important;
		clip-path: none !important;
		transform: none !important;
	}
}
