:root {
	--font-sans: "Work Sans", sans-serif;
	--font-serif: "Frank Ruhl Libre", serif;
	--font-mono: Menlo, monospace;
	--twilight-anchor: #0d1b27;
	--twilight-deep: #081118;
	--twilight-panel: #152333;
	--navy: #223b53;
	--crimson-deep: #862825;
	--crimson-signal: #c4412e;
	--crimson-btn: #7e2320;
	--crimson-btn-hover: #6c1d1b;
	--crimson-light: #e89384;
	--cream: #f2eee6;
	--white: #fff;
	--container: 1240px;
}

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

html {
	scroll-behavior: smooth;
	overflow-x: hidden;
}

body {
	margin: 0;
	background: var(--cream);
	color: var(--navy);
	font-family: var(--font-sans);
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

body.admin-bar .stell-site-header {
	top: 32px;
}

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

a {
	color: inherit;
	text-decoration: none;
}

button,
input,
textarea,
select {
	font: inherit;
}

button {
	cursor: pointer;
}

:focus-visible {
	outline: 2px solid var(--crimson-signal);
	outline-offset: 4px;
}

::selection {
	background: var(--crimson-deep);
	color: #fff;
}

.stell-container {
	width: min(100% - 3rem, var(--container));
	margin-inline: auto;
	position: relative;
	z-index: 2;
}

/* Shared width for the Services and Case Studies index templates. */
.ops-container {
	width: min(84%, 1320px);
	margin-inline: auto;
}

@media (max-width: 1100px) {
	.ops-container {
		width: 88%;
	}
}

@media (max-width: 700px) {
	.ops-container {
		width: calc(100% - 44px);
	}
}

.stell-page h1,
.stell-page h2,
.stell-page h3,
.stell-page p {
	margin: 0;
}

.stell-section {
	position: relative;
	overflow: hidden;
	padding-block: 6rem;
}

.stell-section--cream {
	background: var(--cream);
}

.stell-section--white {
	background: #fff;
}

.surface-twilight {
	background-color: var(--twilight-anchor);
	background-image:
		radial-gradient(90% 55% at 92% -8%, rgba(196,65,46,.045) 0%, rgba(196,65,46,0) 55%),
		radial-gradient(120% 120% at 50% 140%, rgba(0,0,0,.2) 0%, rgba(0,0,0,0) 62%),
		linear-gradient(180deg, #0f1e2c 0%, #0d1b27 60%, #0b1722 100%);
}

.surface-twilight-soft {
	background-color: var(--twilight-anchor);
	background-image:
		radial-gradient(100% 70% at 12% -15%, rgba(34,59,83,.3) 0%, rgba(34,59,83,0) 60%),
		linear-gradient(180deg, #0f1e2c 0%, #0d1b27 65%, #0b1825 100%);
}

.section-mark {
	display: flex;
	align-items: center;
	gap: .75rem;
	margin-bottom: 1.5rem;
}

.section-mark span {
	color: var(--crimson-deep);
	font-family: var(--font-mono);
	font-size: .75rem;
}

.section-mark i {
	width: 2rem;
	height: 1px;
	background: rgba(34,59,83,.2);
}

.section-mark b {
	color: rgba(34,59,83,.5);
	font-family: var(--font-mono);
	font-size: .6875rem;
	font-weight: 400;
	letter-spacing: .22em;
	text-transform: uppercase;
}

.section-mark--dark span {
	color: var(--crimson-signal);
}

.section-mark--dark i {
	background: rgba(255,255,255,.2);
}

.section-mark--dark b {
	color: rgba(255,255,255,.48);
}

.btn-stell {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .6rem;
	min-height: 44px;
	border-radius: 1px;
	padding: .95rem 2rem;
	font-family: var(--font-sans);
	font-size: .875rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: .01em;
	isolation: isolate;
	transition: transform .25s cubic-bezier(.2,.7,.3,1), box-shadow .25s ease, background-color .25s ease, border-color .25s ease, color .25s ease;
	-webkit-tap-highlight-color: transparent;
}

.btn-stell:focus-visible {
	outline: none;
	box-shadow: 0 0 0 2px var(--twilight-anchor), 0 0 0 4px var(--crimson-signal);
}

.btn-stell:active {
	transform: translateY(1px);
}

.btn-stell--sm {
	min-height: 0;
	padding: .6rem 1.15rem;
	font-size: .8125rem;
}

.btn-stell--tick::before {
	content: "";
	width: 14px;
	height: 1px;
	background: currentColor;
	opacity: .45;
	transition: width .25s cubic-bezier(.2,.7,.3,1), opacity .25s ease;
}

.btn-stell--tick:hover::before {
	width: 22px;
	opacity: .85;
}

.btn-stell--primary {
	color: #fff;
	background: var(--crimson-btn);
	border: 1px solid rgba(0,0,0,.4);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.12);
}

.btn-stell--primary::after,
.btn-stell--ghost-dark::after,
.btn-stell--ghost-light::after {
	content: "";
	position: absolute;
	inset: 3px;
	border: 1px solid rgba(255,255,255,.15);
	pointer-events: none;
	transition: border-color .25s ease;
}

.btn-stell--primary:hover {
	background: var(--crimson-btn-hover);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.18), 0 6px 20px -8px rgba(0,0,0,.55);
	transform: translateY(-1px);
}

.btn-stell--primary:hover::after {
	border-color: rgba(255,255,255,.3);
}

.btn-stell--ghost-dark {
	color: #fff;
	background: rgba(255,255,255,.015);
	border: 1px solid rgba(255,255,255,.22);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.06);
}

.btn-stell--ghost-dark::after {
	border-color: rgba(255,255,255,.09);
}

.btn-stell--ghost-dark:hover {
	background: rgba(255,255,255,.06);
	border-color: rgba(255,255,255,.55);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.12);
	transform: translateY(-1px);
}

.btn-stell--ghost-dark:hover::after {
	border-color: rgba(255,255,255,.22);
}

.btn-stell--ghost-light {
	color: var(--navy);
	background: rgba(34,59,83,.012);
	border: 1px solid rgba(34,59,83,.2);
	box-shadow: inset 0 1px 0 rgba(255,255,255,.5);
}

.btn-stell--ghost-light::after {
	border-color: rgba(34,59,83,.08);
}

.stell-hero .stell-actions {
	gap: 1rem;
}

.stell-hero .stell-actions .btn-stell {
	justify-content: space-between;
	gap: 2rem;
	min-height: 58px;
	padding: 0 1.6rem;
	border: 1px solid rgba(255,255,255,.32);
	border-radius: 1px;
	background: transparent;
	color: #fff;
	font-size: .95rem;
	font-weight: 650;
	letter-spacing: -.01em;
	line-height: 1;
	box-shadow: none;
	transition: background-color 180ms ease, border-color 180ms ease, color 180ms ease;
}

.stell-hero .stell-actions .btn-stell::after {
	content: none;
}

.stell-hero .stell-actions .btn-stell span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	height: auto;
	background: transparent;
	color: currentColor;
	font-size: 1rem;
	line-height: 1;
	transition: transform 180ms ease;
}

.stell-hero .stell-actions .btn-stell:hover span {
	transform: translateX(2px);
}

.stell-hero .stell-actions .btn-stell:focus-visible {
	outline: 2px solid rgba(255,255,255,.85);
	outline-offset: 4px;
	box-shadow: none;
}

.stell-hero .stell-actions .btn-stell--primary {
	color: #fff;
	background: transparent;
	border-color: rgba(255,255,255,.38);
	box-shadow: none;
}

.stell-hero .stell-actions .btn-stell--primary::before {
	content: "";
	position: absolute;
	top: 14px;
	bottom: 14px;
	left: -1px;
	width: 3px;
	height: auto;
	background: var(--crimson-signal);
	opacity: 1;
	transition: top 180ms ease, bottom 180ms ease, opacity 180ms ease;
}

.stell-hero .stell-actions .btn-stell--primary:hover {
	background: rgba(255,255,255,.035);
	border-color: rgba(255,255,255,.56);
	box-shadow: none;
	transform: none;
}

.stell-hero .stell-actions .btn-stell--primary:hover::before {
	top: 10px;
	bottom: 10px;
	opacity: 1;
}

.stell-hero .stell-actions .btn-stell--ghost-dark {
	color: #fff;
	background: transparent;
	border-color: rgba(255,255,255,.28);
	box-shadow: none;
}

.stell-hero .stell-actions .btn-stell--ghost-dark:hover {
	background: rgba(255,255,255,.035);
	border-color: rgba(255,255,255,.5);
	box-shadow: none;
	transform: none;
}

.stell-pattern {
	position: absolute;
	background-repeat: no-repeat;
	background-size: contain;
	pointer-events: none;
	z-index: 1;
}

.stell-pattern--hero {
	top: -10rem;
	right: -10rem;
	width: 70rem;
	height: 70rem;
	opacity: .06;
}

.stell-pattern--services {
	left: -14rem;
	bottom: -12rem;
	width: 57.5rem;
	height: 57.5rem;
	opacity: .05;
}

.stell-pattern--cta {
	right: -8rem;
	bottom: -12rem;
	width: 65rem;
	height: 65rem;
	opacity: .07;
}

.stell-pattern--footer {
	left: -12rem;
	bottom: -14rem;
	width: 47.5rem;
	height: 47.5rem;
	opacity: .04;
}

.img-editorial {
	width: 100%;
	height: 100%;
	object-fit: cover;
	filter: grayscale(1) contrast(1.05) brightness(.96);
}

.img-tint {
	position: relative;
	overflow: hidden;
}

.img-tint::after {
	content: "";
	position: absolute;
	inset: 0;
	background:
		linear-gradient(180deg, rgba(13,27,39,.15) 0%, rgba(13,27,39,.55) 100%),
		radial-gradient(80% 60% at 70% 20%, rgba(134,40,37,.18) 0%, rgba(134,40,37,0) 60%);
	mix-blend-mode: multiply;
	pointer-events: none;
}

.stell-site-header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 50;
	padding-block: 1.5rem;
	transition: padding .3s ease, background-color .3s ease, border-color .3s ease, backdrop-filter .3s ease;
}

.stell-site-header.is-scrolled,
.stell-site-header.is-menu-open {
	padding-block: .75rem;
	background: rgba(13,27,39,.7);
	border-bottom: 1px solid rgba(255,255,255,.06);
	backdrop-filter: blur(12px);
}

.stell-nav {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
}

.stell-brand {
	display: flex;
	align-items: center;
	gap: .75rem;
	min-height: 44px;
}

.stell-brand img {
	width: auto;
	height: 1.75rem;
}

.stell-brand span,
.stell-footer__brand span {
	padding-left: .75rem;
	border-left: 1px solid rgba(255,255,255,.15);
	color: rgba(255,255,255,.35);
	font-family: var(--font-mono);
	font-size: .625rem;
	letter-spacing: .2em;
	text-transform: uppercase;
}

.stell-desktop-nav {
	display: flex;
	align-items: center;
	gap: 2.25rem;
}

.stell-nav-link {
	display: inline-flex;
	align-items: center;
	gap: .25rem;
	min-height: 44px;
	padding: 0;
	border: 0;
	background: transparent;
	color: rgba(255,255,255,.85);
	font-size: .875rem;
	transition: color .2s ease;
}

.stell-nav-link:hover,
.stell-nav-link:focus-visible {
	color: #fff;
}

.stell-services-dropdown {
	position: relative;
}

.stell-services-menu {
	position: absolute;
	top: calc(100% + .75rem);
	left: 0;
	width: 16.25rem;
	overflow: hidden;
	background: var(--twilight-panel);
	border: 1px solid rgba(255,255,255,.1);
	box-shadow: 0 24px 60px rgba(0,0,0,.35);
}

.stell-services-menu a,
.stell-services-menu div {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: .1rem .75rem;
	padding: .875rem 1rem;
	border-bottom: 1px solid rgba(255,255,255,.05);
}

.stell-services-dropdown:hover .stell-services-menu,
.stell-services-menu:not([hidden]) {
	display: block;
}

.stell-services-menu[hidden] {
	display: none;
}

.stell-services-menu span {
	grid-row: span 2;
	margin-top: .15rem;
	color: var(--crimson-signal);
	font-family: var(--font-mono);
	font-size: .625rem;
}

.stell-services-menu strong {
	color: #fff;
	font-size: .875rem;
	font-weight: 500;
}

.stell-services-menu small {
	color: rgba(255,255,255,.55);
	font-family: var(--font-mono);
	font-size: .625rem;
}

.stell-services-menu a:hover {
	background: rgba(255,255,255,.05);
}

.stell-services-menu .is-disabled {
	opacity: .5;
	cursor: default;
}

.stell-mobile-toggle {
	display: none;
	width: 48px;
	height: 48px;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: .35rem;
	border: 0;
	background: transparent;
}

.stell-mobile-toggle span {
	width: 1.35rem;
	height: 2px;
	background: #fff;
	transition: transform .2s ease;
}

.stell-site-header.is-menu-open .stell-mobile-toggle span:first-child {
	transform: translateY(.22rem) rotate(45deg);
}

.stell-site-header.is-menu-open .stell-mobile-toggle span:last-child {
	transform: translateY(-.22rem) rotate(-45deg);
}

.stell-mobile-menu {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	padding: 1.25rem 1.5rem;
	background: var(--twilight-anchor);
	border-bottom: 1px solid rgba(255,255,255,.1);
}

.stell-mobile-menu a {
	display: flex;
	align-items: center;
	min-height: 44px;
	color: rgba(255,255,255,.9);
	font-size: 1.125rem;
}

.stell-mobile-menu .btn-stell {
	margin-top: .25rem;
	justify-content: center;
}

.stell-hero {
	position: relative;
	overflow: hidden;
	padding-top: 8rem;
}

.stell-blueprint-grid {
	position: absolute;
	inset: 0;
	z-index: 1;
	background-image: linear-gradient(to right, rgba(255,255,255,.025) 1px, transparent 1px);
	background-size: 120px 100%;
	opacity: .6;
	pointer-events: none;
}

.stell-hero__grid {
	display: grid;
	grid-template-columns: 1.05fr .95fr;
	align-items: center;
	gap: 4rem;
	padding-bottom: 6rem;
}

.stell-hero h1 {
	color: #fff;
	font-size: clamp(2.35rem, 5.6vw, 4.6rem);
	font-weight: 600;
	letter-spacing: 0;
	line-height: .98;
}

.stell-hero h1 > span,
.stell-hero h1 > em {
	white-space: nowrap;
}

.stell-hero h1 em {
	color: rgba(255,255,255,.9);
	font-family: var(--font-serif);
	font-weight: 400;
}

.stell-hero__copy > p {
	max-width: 30rem;
	margin-top: 2rem;
	color: rgba(255,255,255,.76);
	font-size: 1.125rem;
	line-height: 1.7;
}

.stell-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 1.25rem;
	margin-top: 2.5rem;
}

.ops-stack {
	position: relative;
	padding-left: 2rem;
	border-left: 1px solid rgba(255,255,255,.12);
}

.ops-stack__axis {
	position: absolute;
	left: -1px;
	top: .5rem;
	bottom: 4rem;
	width: .5rem;
	background: repeating-linear-gradient(to bottom, rgba(255,255,255,.2) 0 1px, transparent 1px 65px);
}

.ops-stack__row {
	padding-block: 1rem;
	border-bottom: 1px solid rgba(255,255,255,.08);
}

.ops-stack__row > div {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: .5rem;
}

.ops-stack__row span,
.ops-stack footer,
.service-row small,
.ledger-head,
.pipeline header,
.pipeline > div > span,
.pipeline em,
.case-body header span,
.case-body em,
.chart-panel header,
.audience-list > article > span,
.audience-list em,
.mini-metric small {
	font-family: var(--font-mono);
}

.ops-stack__row > div span {
	color: rgba(255,255,255,.35);
	font-size: .625rem;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.ops-stack__row i,
.ledger-row i {
	display: inline-block;
	width: .375rem;
	height: .375rem;
	border-radius: 50%;
	background: var(--crimson-signal);
}

.ops-stack__row strong {
	color: #fff;
	font-size: 1rem;
	font-weight: 500;
}

.ops-stack__row p {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: .25rem 1rem;
	color: rgba(255,255,255,.45);
	font-size: .625rem;
}

.ops-stack footer {
	display: flex;
	justify-content: space-between;
	margin-top: 1rem;
	color: rgba(255,255,255,.3);
	font-size: .625rem;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.stell-quote-band {
	border-top: 1px solid rgba(255,255,255,.1);
}

.stell-quote-band p {
	padding-block: 2rem;
	color: rgba(255,255,255,.75);
	font-family: var(--font-serif);
	font-size: clamp(1.125rem, 2vw, 1.25rem);
	font-style: italic;
}

.two-col {
	display: grid;
	gap: 3rem;
}

.two-col--services {
	grid-template-columns: .8fr 1.2fr;
	gap: 5rem;
}

.two-col--intro {
	grid-template-columns: .85fr 1.15fr;
	align-items: start;
	margin-bottom: 3.5rem;
}

.two-col--agentic {
	grid-template-columns: .9fr 1.1fr;
	align-items: start;
	gap: 4rem;
}

.two-col--cta {
	grid-template-columns: 1.1fr .9fr;
	align-items: end;
	gap: 3rem;
}

.sticky-col {
	position: sticky;
	top: 8rem;
	align-self: start;
}

.stell-section h2,
.section-intro h2,
.proof-header h2 {
	color: var(--navy);
	font-size: clamp(2.5rem, 5vw, 5rem);
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.02;
}

.surface-twilight h2,
.stell-cta h2 {
	color: #fff;
}

.serif-heading {
	font-family: var(--font-serif);
	font-size: clamp(2.5rem, 4vw, 3.25rem) !important;
	font-weight: 400 !important;
	line-height: 1.05 !important;
}

.sticky-col > p,
.section-intro p,
.proof-header p,
.two-col--intro > p,
.two-col--agentic p,
.two-col--cta p {
	margin-top: 1.5rem;
	color: rgba(34,59,83,.78);
	font-size: 1.125rem;
	line-height: 1.7;
}

.surface-twilight .sticky-col > p,
.two-col--cta p {
	color: rgba(255,255,255,.78);
}

.service-index,
.audience-list {
	border-top: 1px solid rgba(34,59,83,.15);
}

.service-row {
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: 1rem 1.5rem;
	align-items: start;
	margin-inline: -1rem;
	padding: 2.25rem 1rem;
	border-bottom: 1px solid rgba(34,59,83,.15);
	transition: background .2s ease;
}

.service-row:hover {
	background: rgba(255,255,255,.45);
}

.row-number,
.service-row > span:last-child {
	color: var(--crimson-deep);
	font-family: var(--font-mono);
}

.service-row h3 {
	display: flex;
	align-items: center;
	gap: .75rem;
	color: var(--navy);
	font-size: clamp(1.5rem, 3vw, 2rem);
	font-weight: 600;
	line-height: 1.15;
}

.service-row h3 em {
	padding: .15rem .35rem;
	border: 1px solid rgba(34,59,83,.2);
	color: rgba(34,59,83,.42);
	font-family: var(--font-mono);
	font-size: .5625rem;
	font-style: normal;
	font-weight: 400;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.service-row p {
	max-width: 29rem;
	margin-top: .65rem;
	color: rgba(34,59,83,.75);
	line-height: 1.65;
}

.service-row small {
	display: block;
	margin-top: 1rem;
	color: rgba(34,59,83,.55);
	font-size: .6875rem;
}

.service-row--soon {
	opacity: .7;
}

.two-col--services .sticky-col h2 {
	font-size: clamp(2.5rem, 4.4vw, 4.35rem);
}

.two-col--services .sticky-col > p {
	max-width: 32rem;
}

.service-index .service-row {
	padding-block: 2rem;
	transition: background-color 180ms ease;
}

.service-index .service-row:hover {
	background: rgba(255,255,255,.32);
}

.service-index .service-row h3 {
	font-size: clamp(1.65rem, 3vw, 2.25rem);
}

.service-index .service-row p {
	max-width: 26rem;
	font-size: 1.03125rem;
}

.service-index .service-row small {
	letter-spacing: .1em;
	text-transform: uppercase;
}

.service-index .service-row > span:last-child {
	align-self: center;
	font-size: 1rem;
	opacity: .72;
	transition: opacity 180ms ease, transform 180ms ease;
}

.service-index .service-row:hover > span:last-child {
	opacity: 1;
	transform: translateX(2px);
}

.services-ledger-section {
	background: var(--cream);
}

.services-ledger-section--white {
	background: var(--white);
}

.services-ledger-section .stell-pattern--services {
	top: -10rem;
	right: -24rem;
	bottom: auto;
	left: auto;
	width: 64rem;
	height: 64rem;
	opacity: .035;
	background-repeat: no-repeat;
	background-size: contain;
}

.services-ledger-section--white .stell-pattern--services {
	opacity: .026;
}

.services-ledger {
	position: relative;
	z-index: 2;
}

.services-ledger__header {
	max-width: 60rem;
	margin-bottom: 4.5rem;
}

.services-ledger__header h2 {
	max-width: 56rem;
	color: var(--navy);
	font-size: clamp(2.65rem, 4.2vw, 4.15rem);
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.02;
}

.services-ledger__header > p {
	max-width: 39rem;
	margin-top: 1.5rem;
	color: rgba(34,59,83,.78);
	font-size: 1.125rem;
	line-height: 1.7;
}

.services-ledger__rows {
	border-top: 1px solid rgba(34,59,83,.16);
}

.services-ledger__row {
	display: grid;
	grid-template-columns: 10rem minmax(12rem, .78fr) minmax(18rem, 1.18fr);
	gap: clamp(2rem, 5vw, 4rem);
	align-items: start;
	padding: 2.5rem 0;
	border-bottom: 1px solid rgba(34,59,83,.16);
}

.services-ledger__marker {
	display: grid;
	gap: .45rem;
	align-self: start;
	justify-self: start;
	padding-top: 0;
}

.services-ledger__marker span {
	color: var(--crimson-deep);
	font-family: var(--font-mono);
	font-size: .8125rem;
	line-height: 1;
}

.services-ledger__marker b {
	color: rgba(34,59,83,.58);
	font-family: var(--font-mono);
	font-size: .6875rem;
	font-weight: 400;
	letter-spacing: .18em;
	line-height: 1;
	text-transform: uppercase;
}

.services-ledger__row h3 {
	align-self: start;
	justify-self: start;
	max-width: 24rem;
	color: var(--navy);
	font-family: var(--font-serif);
	font-size: clamp(1.75rem, 3vw, 2.125rem);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.08;
}

.services-ledger__body {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	align-self: start;
	justify-self: start;
	text-align: left;
}

.services-ledger__body p {
	max-width: 32.5rem;
	margin: 0;
	color: rgba(34,59,83,.76);
	font-size: 1rem;
	line-height: 1.7;
}

.services-ledger__marks {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	margin: 1rem 0 0;
	padding: 0;
	list-style: none;
}

.services-ledger__marks li {
	padding: .4rem .55rem;
	border: 1px solid rgba(34,59,83,.18);
	border-radius: 0;
	color: rgba(34,59,83,.62);
	font-family: var(--font-mono);
	font-size: .65625rem;
	letter-spacing: .12em;
	line-height: 1;
	text-transform: uppercase;
}

.layer-panel {
	overflow: hidden;
}

.layer-image {
	height: clamp(14.375rem, 32vw, 18.75rem);
	border-bottom: 1px solid rgba(255,255,255,.1);
}

.layer-image figcaption {
	position: absolute;
	inset: auto 0 0;
	z-index: 2;
	padding: 5rem 2.5rem 2rem;
	background: linear-gradient(to top, #081118 30%, rgba(8,17,24,.85), transparent);
}

.layer-image figcaption span {
	display: block;
	margin-bottom: .5rem;
	color: #eca08c;
	font-family: var(--font-mono);
	font-size: .625rem;
	letter-spacing: .25em;
	text-transform: uppercase;
}

.layer-image figcaption strong {
	display: block;
	max-width: 34rem;
	color: #fff;
	font-family: var(--font-serif);
	font-size: clamp(1.25rem, 3vw, 1.6rem);
	font-weight: 400;
	line-height: 1.25;
}

.layer-list {
	position: relative;
	z-index: 2;
}

.layer-row {
	display: grid;
	grid-template-columns: 15rem 1fr;
	align-items: center;
	gap: 2.5rem;
	padding: 2.25rem 3rem;
	border-bottom: 1px solid rgba(255,255,255,.08);
}

.layer-row div {
	display: flex;
	align-items: center;
	gap: 1rem;
}

.layer-row div span {
	color: var(--crimson-signal);
	font-family: var(--font-mono);
	font-size: .75rem;
}

.layer-row strong {
	color: #fff;
	font-family: var(--font-serif);
	font-size: clamp(1.5rem, 3vw, 1.7rem);
	font-weight: 400;
}

.layer-row p {
	display: flex;
	flex-wrap: wrap;
	gap: .625rem;
}

.layer-row p span {
	padding: .45rem .75rem;
	border: 1px solid rgba(255,255,255,.15);
	color: rgba(255,255,255,.72);
	font-family: var(--font-mono);
	font-size: .75rem;
}

.layer-panel footer {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	padding: 1.25rem 3rem;
	border-top: 1px solid rgba(255,255,255,.1);
	color: rgba(255,255,255,.5);
	font-family: var(--font-mono);
	font-size: .625rem;
	letter-spacing: .2em;
	text-transform: uppercase;
}

.layer-panel footer span:nth-child(2) {
	color: var(--crimson-light);
}

.diagnostic-ledger {
	color: rgba(255,255,255,.8);
}

.ledger-head,
.ledger-row {
	display: grid;
	grid-template-columns: 1.2fr 1fr 1fr auto;
	gap: 1.5rem;
	align-items: center;
}

.ledger-head {
	padding-bottom: .75rem;
	border-bottom: 1px solid rgba(255,255,255,.15);
	color: rgba(255,255,255,.45);
	font-size: .625rem;
	letter-spacing: .2em;
	text-transform: uppercase;
}

.ledger-row {
	padding-block: 1.25rem;
	border-bottom: 1px solid rgba(255,255,255,.1);
}

.ledger-row strong {
	display: flex;
	align-items: center;
	gap: .75rem;
	color: #fff;
	font-size: .9375rem;
	font-weight: 500;
}

.ledger-row span {
	color: rgba(255,255,255,.82);
}

.ledger-row em {
	white-space: nowrap;
	padding: .35rem .5rem;
	border: 1px solid rgba(196,65,46,.35);
	color: var(--crimson-light);
	font-family: var(--font-mono);
	font-size: .625rem;
	font-style: normal;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.diagnostic-ledger > p {
	max-width: 33rem;
	margin-top: 2rem;
	color: rgba(255,255,255,.75);
	font-size: .9375rem;
	line-height: 1.7;
}

.section-intro {
	max-width: 40rem;
	margin-bottom: 4rem;
}

.process-grid {
	position: relative;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1.5rem;
}

.process-grid::before {
	content: "";
	position: absolute;
	top: .45rem;
	left: 0;
	right: 0;
	height: 1px;
	background: rgba(34,59,83,.2);
}

.process-grid article {
	position: relative;
	z-index: 2;
}

.process-grid article > i {
	display: block;
	width: .65rem;
	height: .65rem;
	margin-bottom: 2rem;
	border-radius: 50%;
	background: var(--crimson-deep);
}

.process-grid h3 {
	display: flex;
	align-items: baseline;
	gap: .75rem;
	color: var(--navy);
	font-size: 1.5rem;
	font-weight: 600;
}

.process-grid h3 span {
	color: rgba(34,59,83,.25);
	font-family: var(--font-mono);
	font-size: 1.875rem;
	font-weight: 400;
}

.process-grid p {
	margin-top: 1rem;
	color: rgba(34,59,83,.75);
	font-size: .9375rem;
	line-height: 1.65;
}

.operations-section {
	background: var(--white);
}

.section-anchor {
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 1px;
	pointer-events: none;
}

.operations-ledger {
	position: relative;
	z-index: 2;
}

.operations-ledger__header {
	max-width: 42.5rem;
	margin-bottom: 3rem;
}

.operations-ledger__header h2 {
	color: var(--navy);
	font-size: clamp(2.5rem, 5vw, 5rem);
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.02;
}

.operations-ledger__header > p {
	max-width: 40rem;
	margin-top: 1.5rem;
	color: rgba(34,59,83,.76);
	font-size: 1.125rem;
	line-height: 1.7;
}

.operations-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	border-top: 1px solid rgba(34,59,83,.12);
	border-left: 1px solid rgba(34,59,83,.12);
}

.operations-cell {
	position: relative;
	display: flex;
	min-height: 13.75rem;
	flex-direction: column;
	overflow: hidden;
	padding: 1.75rem;
	border-right: 1px solid rgba(34,59,83,.12);
	border-bottom: 1px solid rgba(34,59,83,.12);
	background: var(--white);
}

.operations-cell__header {
	display: flex;
	align-items: center;
	gap: .75rem;
	margin-bottom: 2rem;
}

.operations-cell__header span {
	color: var(--crimson-deep);
	font-family: var(--font-mono);
	font-size: .75rem;
	line-height: 1;
}

.operations-cell__header i {
	height: 1px;
	flex: 1;
	background: rgba(34,59,83,.12);
}

.operations-cell__header b {
	color: rgba(255,255,255,.55);
	font-family: var(--font-mono);
	font-size: .5625rem;
	font-weight: 400;
	letter-spacing: .18em;
	line-height: 1;
	text-transform: uppercase;
}

.operations-cell h3 {
	margin-bottom: 1rem;
	color: var(--navy);
	font-family: var(--font-mono);
	font-size: .6875rem;
	font-weight: 400;
	letter-spacing: .18em;
	line-height: 1;
	text-transform: uppercase;
}

.operations-cell p {
	color: rgba(34,59,83,.7);
	font-size: .875rem;
	line-height: 1.65;
}

.operations-cell--milestone {
	margin-top: -1px;
	margin-left: -1px;
	border: 1px solid var(--twilight-anchor);
	background-color: var(--twilight-anchor);
	background-image: linear-gradient(180deg, #0f1e2c 0%, #0d1b27 64%, #0b1722 100%);
}

.operations-cell__frame {
	position: absolute;
	inset: 5px;
	border: 1px solid rgba(255,255,255,.08);
	pointer-events: none;
}

.operations-cell--milestone .operations-cell__header i {
	background: rgba(255,255,255,.15);
}

.operations-cell--milestone h3 {
	color: #fff;
}

.operations-cell--milestone p {
	color: rgba(255,255,255,.7);
}

.operations-cell--milestone .operations-cell__payoff {
	margin-top: auto;
	padding-top: 2rem;
	color: #fff;
	font-family: var(--font-serif);
	font-size: .9375rem;
	font-style: italic;
	line-height: 1.45;
}

.stell-page .operations-ledger__closing {
	max-width: 35rem;
	margin-top: 2.5rem;
	color: var(--navy);
	font-family: var(--font-serif);
	font-size: clamp(1.25rem, 2vw, 1.5rem);
	font-style: italic;
	line-height: 1.45;
}

.audience-section {
	background: var(--cream);
}

.audience-intro {
	max-width: 58rem;
	margin-bottom: 3.5rem;
}

.audience-intro h2 {
	max-width: 56rem;
	color: var(--navy);
	font-size: clamp(2.45rem, 4.25vw, 4.35rem);
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.04;
}

.audience-intro > p {
	max-width: 42rem;
	margin-top: 1.5rem;
	color: rgba(34,59,83,.76);
	font-size: 1.125rem;
	line-height: 1.7;
}

.audience-grid {
	display: grid;
	grid-auto-rows: 1fr;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 2rem;
}

.audience-card {
	position: relative;
	display: flex;
	min-height: 24rem;
	flex-direction: column;
	padding: clamp(2rem, 3.7vw, 3.125rem);
	border: 1px solid rgba(34,59,83,.1);
	border-radius: 0;
	background: var(--white);
	box-shadow: none;
}

.audience-card::before {
	content: "";
	position: absolute;
	inset: 6px;
	border: 1px solid rgba(34,59,83,.055);
	pointer-events: none;
}

.audience-card__meta {
	position: relative;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 1.25rem;
	margin-bottom: 2rem;
}

.audience-card__meta span {
	color: var(--crimson-deep);
	font-family: var(--font-mono);
	font-size: clamp(1.9rem, 4vw, 2.65rem);
	line-height: .9;
	opacity: .16;
}

.audience-card__meta b {
	max-width: 16rem;
	color: rgba(134,40,37,.86);
	font-family: var(--font-mono);
	font-size: .6875rem;
	font-weight: 400;
	letter-spacing: .26em;
	line-height: 1.35;
	text-align: right;
	text-transform: uppercase;
}

.audience-card h3 {
	position: relative;
	max-width: 35rem;
	color: var(--navy);
	font-family: var(--font-serif);
	font-size: clamp(1.8rem, 3vw, 2.45rem);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.08;
}

.audience-card p {
	position: relative;
	max-width: 38rem;
	margin-top: 1.4rem;
	color: rgba(34,59,83,.72);
	font-size: 1rem;
	line-height: 1.72;
}

.audience-card__marks {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	gap: .55rem;
	margin: auto 0 0;
	padding: 2rem 0 0;
	list-style: none;
}

.audience-card__marks li {
	padding: .45rem .65rem;
	border: 1px solid rgba(34,59,83,.12);
	color: rgba(34,59,83,.5);
	font-family: var(--font-mono);
	font-size: .65625rem;
	letter-spacing: .1em;
	line-height: 1;
	text-transform: uppercase;
}

.proof-header {
	display: grid;
	grid-template-columns: 1fr auto;
	align-items: end;
	gap: 1.5rem;
	margin-bottom: 3.5rem;
}

.proof-header > div {
	max-width: 39rem;
}

.proof-header > span {
	color: rgba(34,59,83,.42);
	font-family: var(--font-mono);
	font-size: .6875rem;
	letter-spacing: .2em;
	text-transform: uppercase;
}

.case-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1.5rem;
}

.case-card {
	display: flex;
	flex-direction: column;
	border: 1px solid rgba(34,59,83,.12);
	background: #fff;
}

.case-card--featured {
	grid-row: span 2;
	background: var(--cream);
}

.case-card figure {
	height: 9.375rem;
	margin: 0;
	border-bottom: 1px solid rgba(34,59,83,.12);
}

.case-card--featured figure {
	height: clamp(12.5rem, 24vw, 14.375rem);
}

.case-body {
	padding: 1.75rem;
}

.case-card--featured .case-body {
	flex: 1;
	padding: clamp(1.75rem, 4vw, 2.25rem);
}

.case-body header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	margin-bottom: 1.25rem;
}

.case-body header span {
	color: var(--crimson-deep);
	font-size: .6875rem;
	letter-spacing: .2em;
	text-transform: uppercase;
}

.case-card:not(.case-card--featured) .case-body header span {
	color: rgba(34,59,83,.65);
}

.case-body header p {
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
}

.case-body em {
	padding: .2rem .5rem;
	border: 1px solid rgba(34,59,83,.2);
	color: rgba(34,59,83,.55);
	font-size: .625rem;
	font-style: normal;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.case-body h3 {
	margin-bottom: .75rem;
	color: var(--navy);
	font-family: var(--font-serif);
	font-size: clamp(1.5rem, 4vw, 1.875rem);
	font-weight: 400;
}

.case-body > p {
	color: rgba(34,59,83,.8);
	line-height: 1.65;
}

.case-body blockquote {
	margin: 1.5rem 0 0;
	padding-left: .875rem;
	border-left: 2px solid var(--crimson-deep);
	color: var(--navy);
	font-size: .9375rem;
	font-weight: 500;
	line-height: 1.45;
}

.metrics {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1rem;
	margin-top: 1.75rem;
}

.metrics div {
	padding-top: .85rem;
	border-top: 1px solid rgba(34,59,83,.2);
}

.metrics strong,
.mini-metric strong {
	display: block;
	color: var(--navy);
	font-size: clamp(1.9rem, 6vw, 2.5rem);
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1;
}

.metrics span {
	display: block;
	margin-top: .35rem;
	color: rgba(34,59,83,.7);
	font-size: .75rem;
}

.metrics small {
	display: block;
	margin-top: .55rem;
	color: rgba(34,59,83,.7);
	font-family: var(--font-mono);
	font-size: .625rem;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.chart-panel {
	padding: 1.5rem;
}

.chart-panel header {
	display: flex;
	justify-content: space-between;
	margin-bottom: .75rem;
	color: rgba(255,255,255,.58);
	font-size: .625rem;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.chart-panel header strong {
	color: #4ade80;
	font-weight: 500;
}

.area-chart {
	height: 8.75rem;
}

.area-chart svg {
	width: 100%;
	height: 100%;
}

.area-chart path {
	fill: rgba(74,222,128,.14);
}

.area-chart polyline {
	fill: none;
	stroke: #4ade80;
	stroke-width: 3;
}

.mini-metric {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 1rem;
	margin-top: 1.25rem;
}

.mini-metric small {
	display: block;
	margin-top: .5rem;
	color: rgba(34,59,83,.7);
	font-size: .625rem;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.bar-spark {
	display: flex;
	align-items: end;
	gap: .35rem;
	width: 7.5rem;
	height: 2.75rem;
}

.bar-spark i {
	flex: 1;
	min-width: .55rem;
	background: rgba(134,40,37,.85);
	border-radius: 2px 2px 0 0;
}

.bar-spark--pair {
	width: 5.75rem;
}

.proof-field {
	background: var(--white);
}

.proof-field__header {
	display: grid;
	grid-template-columns: minmax(0, 38rem) auto;
	align-items: end;
	gap: 2rem;
	margin-bottom: 3rem;
}

.proof-field.has-proof-motion .proof-field__header {
	opacity: 0;
	transform: translateY(24px);
	transition: opacity .6s ease-out, transform .6s ease-out;
}

.proof-field.has-proof-motion.is-visible .proof-field__header {
	opacity: 1;
	transform: translateY(0);
}

.proof-field__intro {
	max-width: 38rem;
}

.proof-field__intro h2 {
	color: var(--navy);
	font-size: clamp(2.6rem, 4.6vw, 4.75rem);
	font-weight: 600;
	letter-spacing: 0;
	line-height: 1.02;
}

.proof-field__intro > p {
	margin-top: 1.5rem;
	color: rgba(34,59,83,.76);
	font-size: 1.0625rem;
	line-height: 1.7;
}

.proof-field__controls {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: .65rem .8rem;
	justify-self: end;
}

.proof-field__controls-label,
.proof-field__counter,
.proof-field__link {
	font-family: var(--font-mono);
	line-height: 1;
	text-transform: uppercase;
	white-space: nowrap;
}

.proof-field__controls-label {
	color: rgba(34,59,83,.4);
	font-size: .5625rem;
	letter-spacing: .24em;
}

.proof-field__counter {
	color: rgba(34,59,83,.6);
	font-size: .6875rem;
	font-variant-numeric: tabular-nums;
	letter-spacing: .08em;
}

.proof-field__nav {
	display: flex;
	gap: .35rem;
}

.proof-field__nav button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	padding: 0;
	border: 1px solid rgba(34,59,83,.18);
	border-radius: 0;
	background: transparent;
	color: rgba(34,59,83,.68);
	line-height: 1;
	transition: border-color .18s ease, color .18s ease, background-color .18s ease;
}

.proof-field__nav button span {
	display: block;
	margin-top: -1px;
	font-size: 1.125rem;
	line-height: 1;
}

.proof-field__nav button:hover:not(:disabled) {
	border-color: rgba(34,59,83,.36);
	background: rgba(34,59,83,.025);
	color: var(--navy);
}

.proof-field__nav button:disabled {
	opacity: .25;
	cursor: default;
}

.proof-field__link {
	position: relative;
	color: rgba(34,59,83,.58);
	font-size: .625rem;
	letter-spacing: .1em;
	transition: color .18s ease;
}

.proof-field__link span {
	display: inline-block;
	transition: transform .18s ease;
}

.proof-field__link:hover {
	color: var(--navy);
}

.proof-field__link:hover span {
	transform: translateX(2px);
}

.proof-field__rail {
	display: flex;
	align-items: stretch;
	gap: 1.5rem;
	overflow-x: auto;
	padding-top: 2rem;
	border-top: 1px solid rgba(34,59,83,.12);
	scroll-padding-inline: 0;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}

.proof-field__rail::-webkit-scrollbar {
	display: none;
}

.proof-case-card {
	display: flex;
	flex: 0 0 calc((100% - 3rem) / 3);
	min-width: 0;
	flex-direction: column;
	border: 1px solid rgba(34,59,83,.15);
	border-radius: 0;
	background: var(--white);
	box-shadow: none;
	outline: none;
	scroll-snap-align: start;
}

.proof-case-card:focus,
.proof-case-card:focus-visible {
	outline: 2px solid var(--crimson-deep);
	outline-offset: 4px;
}

.proof-case-card__masthead {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	min-height: 2.75rem;
	padding: .75rem 1rem;
	border-bottom: 1px solid rgba(34,59,83,.12);
	background: #f7f4ee;
	white-space: nowrap;
}

.proof-case-card__masthead span,
.proof-case-card__masthead b {
	overflow: hidden;
	font-family: var(--font-mono);
	font-size: .625rem;
	font-weight: 400;
	letter-spacing: .18em;
	line-height: 1;
	text-overflow: ellipsis;
	text-transform: uppercase;
	white-space: nowrap;
}

.proof-case-card__masthead span {
	flex: 0 0 auto;
	color: var(--crimson-deep);
}

.proof-case-card__masthead b {
	min-width: 0;
	color: rgba(34,59,83,.45);
	text-align: right;
}

.proof-case-card__cover {
	position: relative;
}

.proof-case-card__plate {
	height: 188px;
	overflow: hidden;
	border-bottom: 1px solid rgba(34,59,83,.12);
}

.proof-case-card__plate svg {
	width: 100%;
	height: 100%;
}

.proof-case-card__problem {
	position: absolute;
	bottom: 0;
	left: 1.5rem;
	padding: .55rem .7rem;
	background: var(--crimson-deep);
	color: var(--cream);
	font-family: var(--font-mono);
	font-size: .5625rem;
	letter-spacing: .16em;
	line-height: 1;
	text-transform: uppercase;
	transform: translateY(50%);
}

.proof-case-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	padding: 2.35rem 1.5rem 1.5rem;
}

.proof-case-card__body h3 {
	min-height: 5.25rem;
	color: var(--navy);
	font-family: var(--font-serif);
	font-size: clamp(1.55rem, 2vw, 1.8rem);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.12;
}

.proof-case-card__body > p {
	flex: 1;
	min-height: 4.25rem;
	margin-top: 1rem;
	color: rgba(34,59,83,.75);
	font-size: .9375rem;
	line-height: 1.7;
}

.proof-case-card__ledger {
	margin: 1.5rem 0 0;
	border-top: 1px solid rgba(34,59,83,.14);
}

.proof-case-card__ledger-row {
	display: grid;
	grid-template-columns: 4rem minmax(0, 1fr);
	gap: 1rem;
	padding-block: .85rem;
	border-bottom: 1px solid rgba(34,59,83,.1);
}

.proof-case-card__ledger-row:last-child {
	border-bottom: 0;
}

.proof-case-card__ledger dt,
.proof-case-card__ledger dd {
	margin: 0;
}

.proof-case-card__ledger dt {
	color: rgba(34,59,83,.45);
	font-family: var(--font-mono);
	font-size: .625rem;
	letter-spacing: .12em;
	line-height: 1.4;
	text-transform: uppercase;
}

.proof-case-card__ledger dd {
	color: rgba(34,59,83,.8);
	font-size: .8125rem;
	line-height: 1.45;
}

.proof-case-card__ledger-row--outcome dt {
	color: var(--crimson-deep);
}

.proof-case-card__ledger-row--outcome dd {
	color: var(--navy);
	font-weight: 500;
}

.two-col--agentic small {
	display: block;
	margin-top: 1.25rem;
	color: rgba(34,59,83,.72);
	font-family: var(--font-mono);
	font-size: .75rem;
	line-height: 1.65;
}

.pipeline {
	border: 1px solid rgba(34,59,83,.12);
	background: #fff;
}

.pipeline header,
.pipeline > div {
	display: flex;
	align-items: center;
	gap: 1rem;
	padding: .9rem 1.25rem;
	border-bottom: 1px solid rgba(34,59,83,.1);
}

.pipeline header {
	justify-content: space-between;
	color: rgba(34,59,83,.65);
	font-size: .625rem;
	letter-spacing: .2em;
	text-transform: uppercase;
}

.pipeline > div:last-child {
	border-bottom: 0;
}

.pipeline > div:hover {
	background: rgba(242,238,230,.6);
}

.pipeline > div > span {
	width: 1.5rem;
	color: rgba(34,59,83,.38);
	font-size: .6875rem;
}

.pipeline p {
	flex: 1;
	min-width: 0;
	margin: 0;
}

.pipeline strong {
	display: block;
	color: var(--navy);
	font-size: .9375rem;
}

.pipeline p small {
	display: block;
	margin: .1rem 0 0;
	overflow: hidden;
	color: rgba(34,59,83,.62);
	font-family: var(--font-sans);
	font-size: .8125rem;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.pipeline em {
	padding: .35rem .5rem;
	font-size: .5625rem;
	font-style: normal;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.pipeline .is-agentic {
	background: rgba(134,40,37,.08);
	color: var(--crimson-deep);
}

.pipeline .is-senior {
	background: rgba(34,59,83,.06);
	color: rgba(34,59,83,.72);
}

.audience-list article {
	display: grid;
	grid-template-columns: auto 1fr auto;
	gap: .5rem 1.25rem;
	padding-block: 1.5rem;
	border-bottom: 1px solid rgba(34,59,83,.15);
}

.audience-list > article > span {
	padding-top: .35rem;
	color: var(--crimson-deep);
	font-size: .75rem;
}

.audience-list h3 {
	color: var(--navy);
	font-size: 1.125rem;
	font-weight: 600;
	line-height: 1.25;
}

.audience-list p {
	margin-top: .35rem;
	color: rgba(34,59,83,.72);
	font-size: .9375rem;
	line-height: 1.65;
}

.audience-list em {
	margin-top: .25rem;
	padding: .35rem .5rem;
	border: 1px solid rgba(134,40,37,.25);
	color: var(--crimson-deep);
	font-size: .5625rem;
	font-style: normal;
	letter-spacing: .08em;
	text-transform: uppercase;
	white-space: nowrap;
}

.stell-cta {
	position: relative;
}

.stell-footer {
	position: relative;
	overflow: hidden;
	padding: 2.5rem 1.5rem;
	border-top: 1px solid rgba(255,255,255,.05);
	background: var(--twilight-deep);
}

.stell-footer .stell-container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
}

.stell-footer__brand {
	display: flex;
	align-items: center;
	gap: .75rem;
}

.stell-footer__brand img {
	width: auto;
	height: 1.5rem;
	opacity: .6;
}

.stell-footer nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: .6rem 1.75rem;
	color: rgba(255,255,255,.55);
	font-family: var(--font-mono);
	font-size: .6875rem;
}

.stell-footer a:hover {
	color: rgba(255,255,255,.78);
}

.stell-footer p {
	color: rgba(255,255,255,.25);
	font-family: var(--font-mono);
	font-size: .625rem;
}

.stell-fallback {
	min-height: 100vh;
	padding-block: 8rem;
	background: var(--cream);
}

.stell-fallback h1 {
	margin: 0 0 1rem;
	color: var(--navy);
	font-size: 3rem;
}

@media (min-width: 768px) {
	.stell-section {
		padding-block: 8rem;
	}
}

@media (max-width: 1023px) {
	.stell-container {
		width: min(100% - 3rem, var(--container));
	}

	.ops-stack {
		display: none;
	}

	.stell-hero__grid,
	.two-col--services,
	.two-col--intro,
	.two-col--agentic,
	.two-col--cta {
		grid-template-columns: 1fr;
		gap: 3rem;
	}

	.sticky-col {
		position: static;
	}

	.services-ledger__header {
		margin-bottom: 3rem;
	}

	.services-ledger__row {
		grid-template-columns: 1fr;
		gap: 1.2rem;
		padding-block: 2.25rem;
	}

	.services-ledger__marker {
		display: flex;
		align-items: flex-start;
		gap: .9rem;
		padding-top: 0;
	}

	.operations-grid {
		grid-template-columns: 1fr;
	}

	.operations-cell--milestone {
		margin-left: 0;
	}

	.audience-grid {
		gap: 1.25rem;
	}

	.stell-hero__copy {
		max-width: 44rem;
	}

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

	.proof-header > span {
		display: none;
	}

	.proof-field__header {
		grid-template-columns: 1fr;
		align-items: start;
	}

	.proof-field__controls {
		justify-content: flex-start;
		justify-self: start;
	}

	.stell-footer .stell-container {
		flex-direction: column;
	}
}

@media (max-width: 767px) {
	body.admin-bar .stell-site-header {
		top: 46px;
	}

	.stell-desktop-nav,
	.stell-header-cta,
	.stell-brand span {
		display: none;
	}

	.stell-mobile-toggle {
		display: flex;
	}

	.stell-mobile-menu:not([hidden]) {
		display: flex;
		flex-direction: column;
		gap: .25rem;
	}

	.stell-hero {
		padding-top: 7rem;
	}

	.stell-hero__grid {
		padding-bottom: 5rem;
	}

	.stell-section {
		padding-block: 6rem;
	}

	.services-ledger-section .stell-pattern--services {
		top: 8rem;
		right: -28rem;
		width: 38rem;
		height: 38rem;
		opacity: .026;
	}

	.services-ledger__header {
		margin-bottom: 2.5rem;
	}

	.services-ledger__header h2 {
		font-size: 2.85rem;
	}

	.services-ledger__header > p {
		font-size: 1rem;
		line-height: 1.65;
	}

	.operations-ledger__header {
		margin-bottom: 2.5rem;
	}

	.operations-ledger__header h2 {
		font-size: 2.85rem;
	}

	.operations-ledger__header > p {
		font-size: 1rem;
		line-height: 1.65;
	}

	.operations-cell {
		min-height: 13rem;
		padding: 1.5rem;
	}

	.audience-intro {
		margin-bottom: 2.5rem;
	}

	.audience-intro h2 {
		font-size: 2.65rem;
	}

	.audience-intro > p {
		font-size: 1rem;
		line-height: 1.65;
	}

	.audience-grid {
		grid-template-columns: 1fr;
	}

	.audience-card {
		min-height: 22rem;
		padding: 1.75rem;
	}

	.audience-card__meta {
		margin-bottom: 1.65rem;
	}

	.audience-card__meta b {
		max-width: 13.5rem;
		font-size: .625rem;
		letter-spacing: .2em;
	}

	.audience-card h3 {
		font-size: 1.8rem;
	}

	.service-row {
		grid-template-columns: auto 1fr;
	}

	.service-row > span:last-child {
		grid-column: 2;
	}

	.service-index .service-row {
		margin-inline: 0;
		padding: 1.75rem 0;
	}

	.service-index .service-row > span:last-child {
		display: none;
	}

	.services-ledger__row {
		padding-block: 2rem;
	}

	.services-ledger__row h3 {
		max-width: none;
		font-size: 1.85rem;
	}

	.services-ledger__body p {
		font-size: .96875rem;
	}

	.services-ledger__marks {
		gap: .45rem;
	}

	.layer-row {
		grid-template-columns: 1fr;
		gap: 1rem;
		padding: 2rem 1.5rem;
	}

	.layer-panel footer {
		padding-inline: 1.5rem;
		font-size: .55rem;
		letter-spacing: .12em;
	}

	.layer-panel footer span:nth-child(2) {
		display: none;
	}

	.ledger-head {
		display: none;
	}

	.ledger-row {
		grid-template-columns: 1fr;
		gap: .35rem;
		padding-block: 1.15rem;
	}

	.ledger-row span::before {
		content: attr(data-label);
		margin-right: .5rem;
		color: rgba(255,255,255,.58);
		font-family: var(--font-mono);
		font-size: .625rem;
		letter-spacing: .08em;
		text-transform: uppercase;
	}

	.ledger-row em {
		justify-self: start;
		margin-top: .5rem;
	}

	.process-grid {
		grid-template-columns: 1fr;
		gap: 2rem;
	}

	.process-grid::before,
	.process-grid article > i {
		display: none;
	}

	.case-grid {
		grid-template-columns: 1fr;
	}

	.case-card--featured {
		grid-row: auto;
	}

	.proof-field__header {
		margin-bottom: 2.5rem;
	}

	.proof-field__intro h2 {
		font-size: 2.85rem;
		line-height: 1.08;
	}

	.proof-field__intro > p {
		font-size: 1rem;
		line-height: 1.65;
	}

	.proof-field__controls {
		align-items: flex-start;
		flex-direction: column;
		gap: .85rem;
	}

	.proof-field__nav {
		order: 3;
	}

	.proof-field__link {
		order: 4;
	}

	.proof-field__rail {
		gap: 1rem;
		scroll-snap-type: x mandatory;
	}

	.proof-case-card {
		flex-basis: 82vw;
		max-width: 82vw;
	}

	.proof-case-card__body h3,
	.proof-case-card__body > p {
		min-height: 0;
	}

	.metrics {
		gap: .65rem;
	}

	.metrics strong {
		font-size: clamp(1.5rem, 8vw, 2rem);
	}

	.mini-metric {
		align-items: start;
		flex-direction: column;
	}

	.audience-list article {
		grid-template-columns: auto 1fr;
	}

	.audience-list em {
		grid-column: 2;
		justify-self: start;
	}

	.pipeline > div {
		align-items: start;
	}

	.pipeline p small {
		white-space: normal;
	}
}

@media (max-width: 560px) {
	.stell-hero .stell-actions {
		align-items: stretch;
		flex-direction: column;
		gap: .75rem;
	}

	.stell-hero .stell-actions .btn-stell {
		width: 100%;
		min-height: 52px;
		padding-inline: 1.15rem;
	}
}

@media (max-width: 430px) {
	.stell-container {
		width: min(100% - 2rem, var(--container));
	}

	.stell-actions,
	.two-col--cta .stell-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.btn-stell {
		width: 100%;
		padding-inline: 1.15rem;
	}

	.stell-hero h1 {
		font-size: clamp(2.1rem, 9.6vw, 2.35rem);
	}

	.stell-section h2,
	.section-intro h2,
	.proof-header h2 {
		font-size: 2.55rem;
	}

	.layer-image figcaption {
		padding-inline: 1.25rem;
	}

	.case-body {
		padding: 1.4rem;
	}

	.proof-field__intro h2 {
		font-size: 2.35rem;
		line-height: 1.28;
	}

	.proof-case-card__masthead {
		gap: .65rem;
		padding-inline: .85rem;
	}

	.proof-case-card__masthead span,
	.proof-case-card__masthead b {
		font-size: .5625rem;
		letter-spacing: .14em;
	}

	.proof-case-card__plate {
		height: 176px;
	}

	.proof-case-card__body {
		padding: 2.2rem 1.25rem 1.25rem;
	}

	.proof-case-card__ledger-row {
		grid-template-columns: 3.75rem minmax(0, 1fr);
		gap: .85rem;
	}

	.metrics small {
		font-size: .52rem;
	}

	.stell-footer__brand span {
		display: none;
	}
}

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

	.proof-field.has-proof-motion .proof-field__header {
		opacity: 1;
		transform: none;
	}
}
