/* ==========================================================================
   ABOUT US — page styles. Every class is prefixed about-. Composes the shared vocabulary
   (layout / components / blocks); nothing global is overridden.
   01 Hero · 02 Story · 03 Vision + Mission · 04 Core values · 05 Guiding spirit · 06 President
   07 Organisation · 08 Governance · 09 Legacy timeline · 10 CTA
   ========================================================================== */

/* ---- Shared helpers ------------------------------------------------------- */
/* Decorative slots (arch, relief, seal, map): art only — the production label would sit behind the copy. */
.about-ambient .media-slot,
.about-ambient .media-slot__placeholder {
	background: transparent;
	box-shadow: none;
}

.about-ambient .media-slot__pattern,
.about-ambient .media-slot__meta {
	display: none;
}

.about-ambient .media-slot__art {
	inset: 0;
	filter: none;
}

/* Accent word inside a heading keeps the section's accent colour. */
.about-hero .accent {
	background: linear-gradient(100deg, var(--saffron-bright), var(--saffron) 55%, var(--antique-gold));
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	color: var(--saffron);
}


/* ==========================================================================
   01 HERO
   ========================================================================== */
.about-hero {
	align-items: center;
	padding-top: calc(var(--header-h) + clamp(2rem, 6vh, 4.5rem));
	padding-bottom: clamp(2.5rem, 6vh, 4.5rem);
}

.about-hero__light {
	position: absolute;
	inset: 0;
	z-index: -1;
	pointer-events: none;
	background: radial-gradient(55% 45% at 6% 100%, rgba(176, 112, 58, 0.26), transparent 70%),
		radial-gradient(40% 40% at 52% 8%, rgba(217, 164, 65, 0.1), transparent 70%);
}

/* Own grid (not .page-hero__inner): keeps .wrap's gutters and the 7 / 5 split independent of the shared hero rules. */
.about-hero__inner {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: clamp(2.25rem, 7vw, 3.5rem);
	align-items: center;
}

@media (min-width: 1024px) {
	.about-hero__inner {
		grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
		gap: 3rem;
	}
}

.about-hero .page-hero__title {
	margin-bottom: clamp(1.1rem, 2.4vw, 1.75rem);
}

/* The H1 is sized to its own column (container units) so each sentence stays on one line on desktop — a 2-line
   monumental motto keeps the hero near 80svh instead of stacking to four lines. Falls back to the global --fs-hero. */
.about-hero__content {
	container-type: inline-size;
}

@supports (width: 1cqw) {
	.about-hero .page-hero__title {
		font-size: clamp(2.75rem, 10.2cqw, 4rem);
	}
}

@media (min-width: 1024px) {
	@supports (width: 1cqw) {
		.about-hero .page-hero__title {
			font-size: clamp(3.5rem, 10.2cqw, 5.75rem);
		}
	}
}

/* Once split into masked lines, stack them in a flex column: the split lines carry negative margins that would
   otherwise collapse between sibling blocks and add ≈ 0.16em of leading to every line. */
.about-hero .page-hero__title.is-split {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.about-hero .page-hero__lead {
	max-width: 34rem;
}

/* The portal: a documentary still shown through the arch of a carved torana (3D model, or the torana ornament). */
.about-portal {
	/* Photo window = the opening of the torana ornament (viewBox 600 × 720, centred in a square): arch springs at
	   y 270, inner radius 146, floor at y 690. Re-tune these three if a different 3D model / poster is used. */
	--win-x: 29.7%;
	--win-top: 17.2%;
	--win-bottom: 4.2%;
	position: relative;
	width: min(100%, 21rem);
	aspect-ratio: 1;
	margin-inline: auto;
}

@media (min-width: 768px) {
	.about-portal {
		width: min(100%, 27rem);
	}
}

@media (min-width: 1024px) {
	.about-portal {
		width: min(100%, 33rem, 58svh);
		margin-inline: auto 0;
	}
}

.about-portal__glow {
	position: absolute;
	inset: -14%;
	z-index: -1;
	border-radius: 50%;
	background: radial-gradient(closest-side, rgba(244, 122, 31, 0.42), rgba(244, 122, 31, 0.14) 55%, transparent 74%);
	pointer-events: none;
}

.about-portal__window {
	position: absolute;
	top: var(--win-top);
	right: var(--win-x);
	bottom: var(--win-bottom);
	left: var(--win-x);
	z-index: 1;
	overflow: hidden;
	border-radius: 999px 999px 0 0;
	background: var(--charcoal-2);
	box-shadow: 0 0 0 1px rgba(217, 164, 65, 0.55), 0 36px 90px -30px rgba(0, 0, 0, 0.95), 0 0 90px -20px rgba(244, 122, 31, 0.5);
}

.about-portal__window::after {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 3;
	pointer-events: none;
	background: linear-gradient(180deg, rgba(11, 9, 7, 0.45) 0%, transparent 30%, transparent 58%, rgba(11, 9, 7, 0.7) 100%),
		radial-gradient(85% 55% at 50% 100%, rgba(244, 122, 31, 0.3), transparent 72%);
}

.about-portal__window .media-slot--image .media-slot__media {
	filter: saturate(0.9) contrast(1.05);
}

.about-portal__window .media-slot__badge {
	white-space: nowrap;
}

@container media (max-width: 230px) {
	.about-portal__window .media-slot__badge i {
		display: none;
	}
}

@media (max-width: 767px) {
	.about-portal__window .media-slot__meta {
		display: none;
	}
}

.about-portal__arch {
	position: absolute;
	inset: 0;
	z-index: 2;
	color: var(--antique-gold);
	pointer-events: none;
}

.about-portal__arch .media-slot__model {
	pointer-events: auto;
}


/* ==========================================================================
   02 OUR STORY  (ivory)
   ========================================================================== */
.about-story__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: clamp(2.5rem, 7vw, 4rem) var(--gap);
	align-items: start;
}

@media (min-width: 1024px) {
	.about-story__grid {
		grid-template-columns: repeat(12, minmax(0, 1fr));
	}

	.about-story__text {
		grid-column: 1 / span 6;
	}

	.about-story__aside {
		grid-column: 8 / span 5;
	}
}

.about-story .section-head {
	margin-bottom: clamp(1.75rem, 3vw, 2.75rem);
}

.about-story__body {
	max-width: 40rem;
}

/* The first paragraph is the editorial lede, whether it is draft copy or the editor's own text. */
.about-story__body > p:first-of-type {
	color: var(--heading);
	font-family: var(--font-display);
	font-size: clamp(1.45rem, 1.05rem + 1.5vw, 2.15rem);
	line-height: 1.3;
	letter-spacing: -0.01em;
	text-wrap: pretty;
}

.about-story__quote {
	position: relative;
	max-width: 40rem;
	margin: clamp(2.25rem, 5vw, 3.5rem) 0 0;
	padding: 1.75rem 0 0 0;
	border-top: 1px solid var(--line-strong);
}

.about-story__quote-mark {
	display: block;
	margin-bottom: 0.9rem;
	color: var(--saffron-ink);
	opacity: 0.85;
}

.about-story__quote blockquote {
	margin: 0;
}

.about-story__quote p {
	margin: 0;
	color: var(--heading);
	font-family: var(--font-display);
	font-size: clamp(1.55rem, 1.1rem + 1.7vw, 2.4rem);
	line-height: 1.18;
	letter-spacing: -0.015em;
	text-wrap: balance;
}

.about-story__quote figcaption {
	margin-top: 1.1rem;
	color: var(--accent-2);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.about-story__figure {
	position: relative;
	z-index: 0;
	max-width: 32rem;
	margin-inline: auto;
}

.about-story__figure::before {
	content: '';
	position: absolute;
	inset: 0.75rem -0.65rem -0.75rem 0.65rem;
	z-index: -1;
	border: 1px solid var(--accent-2);
	border-radius: 6px;
	opacity: 0.7;
}

.about-story__figure .media-slot {
	border-radius: 6px;
	box-shadow: var(--shadow-ivory);
}

.about-story__note {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
	max-width: 32rem;
	margin: 2.25rem auto 0;
	padding-left: 1.25rem;
	border-left: 2px solid var(--saffron-ink);
}

.about-story__note-year {
	color: var(--heading);
	font-family: var(--font-display);
	font-size: clamp(2.25rem, 1.6rem + 2.4vw, 3.5rem);
	font-weight: 400;
	line-height: 1;
	letter-spacing: -0.02em;
}

.about-story__note-place {
	display: inline-flex;
	align-items: center;
	gap: 0.5em;
	color: var(--fg-muted);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.about-story__note-place .icon {
	color: var(--saffron-ink);
}

@media (min-width: 1024px) {
	.about-story__figure,
	.about-story__note {
		margin-inline: 0;
	}

	.about-story__figure {
		max-width: none;
	}

	.about-story__figure::before {
		inset: 1.1rem -1.1rem -1.1rem 1.1rem;
	}

	.about-story__note {
		max-width: none;
	}
}


/* ==========================================================================
   03 VISION + MISSION  (charcoal band · two oversized manifesto panels)
   ========================================================================== */
.about-vm__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--gap);
}

@media (min-width: 900px) {
	.about-vm__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		align-items: stretch;
	}
}

.about-panel {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	min-height: clamp(25rem, 46vw, 38rem);
	padding: clamp(1.75rem, 1rem + 3.2vw, 4.25rem);
	overflow: hidden;
	isolation: isolate;
	border: 1px solid var(--line-strong);
	border-radius: var(--r-lg);
}

.about-panel__inner {
	position: relative;
	z-index: 2;
}

.about-panel__title {
	max-width: 17em;
	margin: 0 0 1.4rem;
	font-size: clamp(1.75rem, 1.05rem + 2.1vw, 2.9rem);
	line-height: 1.1;
	letter-spacing: -0.02em;
}

.about-panel__text {
	max-width: 33rem;
	margin: 0;
	color: var(--fg-soft);
	font-size: var(--fs-lg);
	line-height: 1.62;
}

.about-panel__link {
	margin-top: 1.75rem;
}

.about-panel__relief {
	position: absolute;
	z-index: 1;
	pointer-events: none;
}

/* Vision: deep saffron rising from black. Text sits in the dark upper part (AA), the sun-disc glows below. */
.about-panel--vision {
	border-color: rgba(244, 122, 31, 0.34);
	background: radial-gradient(90% 60% at 82% 112%, rgba(255, 154, 77, 0.55), transparent 70%),
		linear-gradient(180deg, #0b0907 0%, #170b06 30%, #3a1607 60%, #752c0b 86%, var(--deep-saffron) 112%);
}

.about-panel--vision .about-panel__title,
.about-panel--vision .about-panel__text {
	color: var(--warm-ivory);
}

.about-panel--vision .about-panel__relief {
	right: -22%;
	bottom: -34%;
	width: min(92%, 32rem);
	aspect-ratio: 1;
	color: rgba(255, 214, 160, 0.9);
	opacity: 0.34;
}

.about-panel--vision .about-panel__relief .media-slot {
	position: absolute;
	inset: 0;
}

/* Mission: warm ivory, black text, a faint pillar relief. */
.about-panel--mission {
	border-color: rgba(217, 164, 65, 0.5);
	background: linear-gradient(160deg, var(--ivory-3) 0%, var(--warm-ivory) 55%, var(--ivory-2) 100%);
	color: var(--sanctum-black);
}

.about-panel--mission .about-panel__relief {
	right: clamp(0.75rem, 2.5vw, 2rem);
	bottom: 0;
	width: clamp(5.5rem, 12vw, 9rem);
	color: var(--gold-ink);
	opacity: 0.16;
}


/* ==========================================================================
   04 CORE VALUES  (sanctum black · medallions around a centred motto)
   ========================================================================== */
.about-values__ring {
	position: relative;
	margin-top: clamp(0.5rem, 2vw, 1.5rem);
}

.about-values__core {
	position: relative;
	display: grid;
	place-items: center;
	width: min(100%, 19rem);
	aspect-ratio: 1;
	margin: 0 auto clamp(2rem, 6vw, 3rem);
	text-align: center;
}

.about-values__seal {
	position: absolute;
	inset: 0;
	opacity: 0.55;
	color: var(--antique-gold);
}

.about-values__seal::after {
	content: '';
	position: absolute;
	inset: 12%;
	border-radius: 50%;
	background: radial-gradient(closest-side, rgba(11, 9, 7, 0.88) 55%, transparent 100%);
}

.about-values__motto {
	position: relative;
	z-index: 2;
	max-width: 12.5rem;
}

.about-values__motto-hi {
	margin: 0 0 0.6rem;
	color: var(--gold-soft);
	font-family: var(--font-hi-display);
	font-size: clamp(1.2rem, 0.95rem + 1vw, 1.55rem);
	line-height: 1.5;
	text-wrap: balance;
}

.about-motto__part {
	white-space: nowrap;
}

.about-values__motto-en {
	margin: 0;
	color: var(--fg-muted);
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	line-height: 1.6;
	text-transform: uppercase;
	text-wrap: balance;
}

.about-values__list {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(1.75rem, 5vw, 2.5rem) 0.75rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.about-values__item {
	margin: 0;
}

@media (min-width: 768px) {
	.about-values__list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 2.75rem 1.5rem;
	}
}

@media (min-width: 1100px) {
	.about-values__list {
		grid-template-columns: minmax(0, 1fr) minmax(19rem, 25rem) minmax(0, 1fr);
		grid-template-rows: repeat(3, auto);
		gap: 2.25rem 0;
	}

	.about-values__item:nth-child(-n + 3) {
		grid-column: 1;
	}

	.about-values__item:nth-child(n + 4) {
		grid-column: 3;
	}

	.about-values__item:nth-child(1),
	.about-values__item:nth-child(4) {
		grid-row: 1;
	}

	.about-values__item:nth-child(2),
	.about-values__item:nth-child(5) {
		grid-row: 2;
	}

	.about-values__item:nth-child(3),
	.about-values__item:nth-child(6) {
		grid-row: 3;
	}

	/* Gentle arc: outer medallions lean toward the motto. `left` (not translate) so reveal/tilt transforms never fight it. */
	.about-values__item {
		position: relative;
	}

	.about-values__item:nth-child(1),
	.about-values__item:nth-child(3) {
		left: 3.5rem;
	}

	.about-values__item:nth-child(4),
	.about-values__item:nth-child(6) {
		left: -3.5rem;
	}

	.about-values__core {
		position: absolute;
		inset: 0;
		z-index: 1;
		width: 25rem;
		margin: auto;
		pointer-events: none;
	}

	.about-values__item {
		z-index: 2;
	}
}

/* The medallion (template-parts/content-value-card.php) */
.about-value {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.85rem;
	text-align: center;
}

.about-value__disc {
	--disc: clamp(8.25rem, 38vw, 10rem);
	position: relative;
	display: grid;
	place-items: center;
	align-content: center;
	gap: 0.3rem;
	width: var(--disc);
	aspect-ratio: 1;
	overflow: hidden;
	isolation: isolate;
	border-radius: 50%;
	background: radial-gradient(circle at 32% 24%, #44352a 0%, #2a1f18 36%, #17110d 70%, #0d0a08 100%);
	box-shadow: inset 0 2px 1px rgba(255, 233, 200, 0.12), inset 0 -14px 26px rgba(0, 0, 0, 0.6), 0 20px 42px -20px rgba(0, 0, 0, 0.9),
		0 0 0 1px rgba(217, 164, 65, 0.4);
	transition: box-shadow var(--dur) ease;
}

@media (min-width: 768px) {
	.about-value__disc {
		--disc: clamp(9.5rem, 17vw, 12rem);
	}
}

.about-value__rim {
	position: absolute;
	inset: 6.5%;
	z-index: 1;
	border-radius: 50%;
	border: 1px solid rgba(217, 164, 65, 0.4);
	box-shadow: inset 0 0 0 5px rgba(0, 0, 0, 0.22), 0 1px 0 rgba(255, 233, 200, 0.07);
}

.about-value__engrave {
	position: absolute;
	inset: 9%;
	z-index: 1;
	color: var(--antique-gold);
	opacity: 0.2;
}

.about-value__icon,
.about-value__word {
	position: relative;
	z-index: 2;
}

.about-value__icon {
	color: var(--saffron);
	filter: drop-shadow(0 0 10px rgba(244, 122, 31, 0.55));
}

.about-value__icon .icon {
	width: clamp(1.5rem, 2.2vw, 1.9rem);
	height: clamp(1.5rem, 2.2vw, 1.9rem);
}

/* Embossed keyword: a light edge below, a dark edge above. */
.about-value__word {
	color: var(--gold-soft);
	font-family: var(--font-hi-display);
	font-size: clamp(1.2rem, 1rem + 0.7vw, 1.6rem);
	line-height: 1.2;
	text-shadow: 0 1px 0 rgba(255, 233, 200, 0.25), 0 -1px 0 rgba(0, 0, 0, 0.75);
	white-space: nowrap;
}

.about-value__sheen {
	position: absolute;
	inset: 0;
	z-index: 3;
	border-radius: 50%;
	background: linear-gradient(115deg, transparent 34%, rgba(255, 214, 150, 0.3) 50%, transparent 66%);
	translate: -125% 0;
	pointer-events: none;
	transition: translate 0.95s var(--ease-out);
}

.about-value:hover .about-value__sheen,
.about-value:focus-within .about-value__sheen {
	translate: 125% 0;
}

.about-value:hover .about-value__disc {
	box-shadow: inset 0 2px 1px rgba(255, 233, 200, 0.16), inset 0 -14px 26px rgba(0, 0, 0, 0.55), 0 24px 50px -20px rgba(244, 122, 31, 0.5),
		0 0 0 1px rgba(244, 122, 31, 0.7);
}

.about-value__name {
	margin: 0.15rem 0 0;
	font-size: clamp(1.2rem, 1.05rem + 0.6vw, 1.5rem);
	line-height: 1.2;
}

.about-value__text {
	max-width: 15rem;
	margin: 0;
	color: var(--fg-muted);
	font-size: var(--fs-sm);
	line-height: 1.5;
}


/* ==========================================================================
   05 GUIDING SPIRIT  (charcoal · saffron rim light · embers)
   ========================================================================== */
.about-spirit__rim {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	width: min(55%, 40rem);
	background: linear-gradient(90deg, rgba(244, 122, 31, 0.3), rgba(244, 122, 31, 0.08) 45%, transparent);
	-webkit-mask-image: linear-gradient(to bottom, transparent, #000 22%, #000 78%, transparent);
	mask-image: linear-gradient(to bottom, transparent, #000 22%, #000 78%, transparent);
	pointer-events: none;
}

.about-spirit__rim::before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	width: 2px;
	background: linear-gradient(to bottom, transparent, var(--saffron) 30%, var(--saffron-bright) 50%, var(--saffron) 70%, transparent);
	box-shadow: 0 0 24px 2px rgba(244, 122, 31, 0.55);
}

.about-spirit__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: clamp(2.5rem, 7vw, 4rem) var(--gap);
	align-items: center;
}

@media (min-width: 1024px) {
	.about-spirit__grid {
		grid-template-columns: repeat(12, minmax(0, 1fr));
	}

	.about-spirit__visual {
		grid-column: 1 / span 5;
	}

	.about-spirit__text {
		grid-column: 7 / span 6;
	}
}

.about-spirit__frame {
	position: relative;
	width: min(100%, 28rem);
	margin-inline: auto;
}

.about-spirit__frame .media-slot {
	border-radius: 4px;
	box-shadow: 0 0 0 1px rgba(217, 164, 65, 0.45), 0 40px 90px -40px rgba(0, 0, 0, 0.95);
}

/* sacred corner brackets */
.about-spirit__frame::before,
.about-spirit__frame::after {
	content: '';
	position: absolute;
	z-index: 3;
	width: 2.25rem;
	height: 2.25rem;
	border: 0 solid var(--saffron);
	filter: drop-shadow(0 0 6px rgba(244, 122, 31, 0.55));
	pointer-events: none;
}

.about-spirit__frame::before {
	top: -0.7rem;
	left: -0.7rem;
	border-top-width: 2px;
	border-left-width: 2px;
}

.about-spirit__frame::after {
	right: -0.7rem;
	bottom: -0.7rem;
	border-right-width: 2px;
	border-bottom-width: 2px;
}

.about-spirit__flag {
	position: absolute;
	top: -7%;
	right: -3%;
	z-index: 4;
	width: 26%;
	color: var(--saffron);
	filter: drop-shadow(0 0 22px rgba(244, 122, 31, 0.45));
	pointer-events: none;
}

@media (min-width: 768px) {
	.about-spirit__flag {
		right: -9%;
		width: 30%;
	}
}

.about-spirit__list {
	margin: clamp(2rem, 4vw, 3rem) 0 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid var(--line-strong);
}

.about-spirit__item {
	display: grid;
	grid-template-columns: auto auto minmax(0, 1fr);
	align-items: center;
	gap: 0 1.1rem;
	margin: 0;
	padding: 1.15rem 0;
	border-bottom: 1px solid var(--line-strong);
}

.about-spirit__num {
	min-width: 1.75rem;
	color: var(--accent);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.14em;
}

.about-spirit__icon {
	display: grid;
	place-items: center;
	width: 2.9rem;
	height: 2.9rem;
	border: 1px solid rgba(217, 164, 65, 0.45);
	border-radius: 50%;
	background: radial-gradient(circle at 30% 20%, rgba(244, 122, 31, 0.2), transparent 70%);
	color: var(--accent-2);
}

.about-spirit__icon .icon {
	width: 1.35rem;
	height: 1.35rem;
}

.about-spirit__name {
	margin: 0;
	font-size: clamp(1.25rem, 1.05rem + 0.8vw, 1.65rem);
	line-height: 1.15;
}

.about-spirit__line {
	margin: 0.2rem 0 0;
	color: var(--fg-muted);
	font-size: var(--fs-sm);
}

.about-spirit__item {
	transition: background-color var(--dur) ease;
}

@media (hover: hover) {
	.about-spirit__item:hover .about-spirit__icon {
		border-color: var(--saffron);
		box-shadow: 0 0 24px -4px rgba(244, 122, 31, 0.6);
	}
}


/* ==========================================================================
   06 PRESIDENT'S MESSAGE  (ivory)
   ========================================================================== */
.about-president__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: clamp(2rem, 6vw, 3.5rem) var(--gap);
	align-items: center;
}

@media (min-width: 1024px) {
	.about-president__grid {
		grid-template-columns: repeat(12, minmax(0, 1fr));
	}

	.about-president__portrait {
		grid-column: 1 / span 5;
	}

	/* Plan: portrait 5 columns + message 7 columns — the message column carries its own inner gutter. */
	.about-president__message {
		grid-column: 6 / span 7;
		padding-left: clamp(1.5rem, 4vw, 4rem);
	}
}

.about-president__frame {
	position: relative;
	z-index: 0;
	width: min(100%, 26rem);
	margin-inline: auto;
}

.about-president__frame::before {
	content: '';
	position: absolute;
	inset: -0.8rem 0.8rem 0.8rem -0.8rem;
	z-index: -1;
	border: 1px solid var(--accent-2);
	border-radius: 6px;
	opacity: 0.7;
}

.about-president__frame .media-slot {
	border-radius: 6px;
	box-shadow: var(--shadow-ivory);
}

.about-president__title {
	margin-bottom: clamp(1.25rem, 3vw, 2rem);
	font-size: clamp(2rem, 1.2rem + 3vw, 3.5rem);
}

.about-president__body {
	position: relative;
	max-width: 42rem;
	padding-top: 0.5rem;
}

.about-president__mark {
	display: block;
	margin-bottom: 0.75rem;
	color: var(--saffron-ink);
	opacity: 0.8;
}

.about-president__body .prose > p:first-child {
	color: var(--heading);
	font-family: var(--font-display);
	font-size: clamp(1.3rem, 1.05rem + 1vw, 1.8rem);
	line-height: 1.35;
}

.about-president__empty {
	color: var(--heading);
	font-family: var(--font-display);
	font-size: clamp(1.4rem, 1.1rem + 1.3vw, 2rem);
	line-height: 1.3;
}

.about-president__note {
	margin-top: 1rem;
	max-width: 34rem;
	color: var(--fg-muted);
}

.about-president__lockup {
	margin-top: clamp(1.75rem, 4vw, 2.5rem);
}

.about-president__rule {
	display: block;
	width: 72px;
	height: 2px;
	margin-bottom: 1.25rem;
	background: linear-gradient(90deg, var(--saffron), var(--antique-gold));
}

.about-president__name {
	margin: 0;
	color: var(--heading);
	font-family: var(--font-display);
	font-size: clamp(1.5rem, 1.2rem + 1.2vw, 2.1rem);
	line-height: 1.15;
}

.about-president__role {
	margin: 0.35rem 0 0;
	color: var(--accent);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.about-president__signature {
	width: min(100%, 13rem);
	margin-top: 1rem;
}

.about-president__signature .media-slot {
	background: transparent;
}

.about-president__where {
	display: inline-flex;
	align-items: center;
	gap: 0.5em;
	margin: 0.6rem 0 0;
	color: var(--fg-muted);
	font-size: var(--fs-sm);
}

.about-president__where .icon {
	color: var(--accent);
}

.about-president__links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 1.5rem;
	margin: 1rem 0 0;
	padding: 0;
	list-style: none;
}

.about-president__links li {
	margin: 0;
}

.about-president__profile {
	max-width: 42rem;
	margin-top: clamp(1.75rem, 4vw, 2.5rem);
	padding: 1.25rem 1.5rem;
	border: 1px solid var(--line);
	border-left: 3px solid var(--saffron-ink);
	border-radius: var(--r-md);
	background: var(--surface);
}

.about-president__profile-title {
	margin: 0 0 0.5rem;
	color: var(--accent-2);
	font-family: var(--font-body);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.about-president__profile p {
	margin: 0;
	color: var(--fg-soft);
}


/* ==========================================================================
   07 ORGANISATION STRUCTURE  (charcoal · tabs by level · hierarchy diagram)
   ========================================================================== */
.about-org__map {
	position: absolute;
	top: 50%;
	right: -14%;
	width: min(80vw, 56rem);
	aspect-ratio: 1;
	translate: 0 -50%;
	opacity: 0.14;
	color: var(--antique-gold);
	-webkit-mask-image: radial-gradient(closest-side, #000 35%, transparent 100%);
	mask-image: radial-gradient(closest-side, #000 35%, transparent 100%);
}

/* [data-tabs] root: tab bar across the full width, then diagram (left, sticky) + the active panel (right). */
.about-org__layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 0.5rem 0;
}

@media (min-width: 1024px) {
	.about-org__layout {
		grid-template-columns: minmax(0, 4fr) minmax(0, 8fr);
		column-gap: clamp(2.5rem, 5vw, 5rem);
		row-gap: 2rem;
		align-items: start;
	}

	.about-org__tabs {
		grid-column: 1 / -1;
	}

	.about-org__viz {
		grid-column: 1;
		grid-row: 2 / span 5;
		position: sticky;
		top: calc(var(--header-h) + 28px);
		align-self: start;
	}

	.about-org__panel {
		grid-column: 2;
		min-width: 0;
	}
}

.about-org__diagram {
	position: relative;
	padding-left: 4.75rem;
}

.about-org__svg {
	display: block;
	width: 100%;
	height: auto;
	overflow: visible;
}

.about-org__links path {
	fill: none;
	stroke: rgba(217, 164, 65, 0.4);
	stroke-width: 1;
	transition: stroke 0.5s ease, opacity 0.5s ease;
}

.about-org__links path.is-dashed {
	stroke-dasharray: 3 4;
}

.about-org__node {
	fill: var(--charcoal-3);
	stroke: rgba(217, 164, 65, 0.7);
	stroke-width: 1.2;
	transition: fill 0.5s ease, stroke 0.5s ease;
}

.about-org__ring {
	fill: none;
	stroke: rgba(217, 164, 65, 0.3);
	stroke-width: 1;
}

.about-org__halo {
	fill: url('#about-org-glow');
	opacity: 0;
	transition: opacity 0.6s ease;
}

.about-org__band {
	fill: rgba(217, 164, 65, 0.05);
	stroke: rgba(217, 164, 65, 0.32);
	stroke-dasharray: 4 5;
}

/* Dim everything, then light the chosen level (JS keeps data-level in sync with the selected tab). */
.about-org__svg [data-lv],
.about-org__tier {
	transition: opacity 0.5s ease, color 0.5s ease;
}

html.hs-js .about-org__layout:not([data-level='all']) .about-org__svg [data-lv] {
	opacity: 0.3;
}

html.hs-js .about-org__layout:not([data-level='all']) .about-org__tier {
	opacity: 0.88; /* stays ≥ 4.5:1 — only the chosen tier turns saffron */
}

.about-org__layout[data-level='national'] [data-lv='national'],
.about-org__layout[data-level='state'] [data-lv='state'],
.about-org__layout[data-level='district'] [data-lv='district'],
.about-org__layout[data-level='volunteers'] [data-lv='volunteers'],
.about-org__layout[data-level='committees'] [data-lv='committees'] {
	opacity: 1 !important;
}

.about-org__layout[data-level='national'] g[data-lv='national'] .about-org__node,
.about-org__layout[data-level='state'] g[data-lv='state'] .about-org__node,
.about-org__layout[data-level='district'] g[data-lv='district'] .about-org__node,
.about-org__layout[data-level='volunteers'] g[data-lv='volunteers'] .about-org__node,
.about-org__layout[data-level='committees'] g[data-lv='committees'] .about-org__node {
	fill: var(--saffron);
	stroke: var(--saffron-bright);
	filter: drop-shadow(0 0 7px rgba(244, 122, 31, 0.85));
}

.about-org__layout[data-level='national'] g[data-lv='national'] .about-org__halo {
	opacity: 0.6;
}

.about-org__layout[data-level='national'] path[data-lv='state'],
.about-org__layout[data-level='state'] path[data-lv='state'],
.about-org__layout[data-level='state'] path[data-lv='district'],
.about-org__layout[data-level='district'] path[data-lv='district'],
.about-org__layout[data-level='district'] path[data-lv='volunteers'],
.about-org__layout[data-level='volunteers'] path[data-lv='volunteers'],
.about-org__layout[data-level='committees'] path[data-lv='committees'] {
	opacity: 1 !important;
	stroke: rgba(244, 122, 31, 0.8);
}

.about-org__tiers {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.about-org__tier {
	position: absolute;
	top: var(--y);
	left: 0;
	margin: 0;
	color: var(--fg-muted);
	font-size: 0.68rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	translate: 0 -50%;
}

.about-org__layout[data-level='national'] .about-org__tier[data-lv='national'],
.about-org__layout[data-level='state'] .about-org__tier[data-lv='state'],
.about-org__layout[data-level='district'] .about-org__tier[data-lv='district'],
.about-org__layout[data-level='volunteers'] .about-org__tier[data-lv='volunteers'],
.about-org__layout[data-level='committees'] .about-org__tier[data-lv='committees'] {
	color: var(--saffron-bright);
}

@media (prefers-reduced-motion: no-preference) {
	.about-org__layout[data-level='national'] g[data-lv='national'] .about-org__node,
	.about-org__layout[data-level='state'] g[data-lv='state'] .about-org__node,
	.about-org__layout[data-level='district'] g[data-lv='district'] .about-org__node,
	.about-org__layout[data-level='volunteers'] g[data-lv='volunteers'] .about-org__node,
	.about-org__layout[data-level='committees'] g[data-lv='committees'] .about-org__node {
		animation: about-node-pulse 3.2s ease-in-out infinite;
	}
}

@keyframes about-node-pulse {
	50% {
		filter: drop-shadow(0 0 13px rgba(255, 154, 77, 1));
	}
}

.about-org__tabs {
	margin-bottom: 0.5rem;
}

@media (min-width: 768px) {
	.about-org__tabs [role='tab'] {
		padding-inline: 1rem;
	}

	.about-org__tabs [role='tab']::after {
		right: 0.75rem;
		left: 0.75rem;
	}
}

/* The first tab lines up with the section's left edge. */
.about-org__tabs [role='tab']:first-child {
	padding-left: 0;
}

.about-org__tabs [role='tab']:first-child::after {
	left: 0;
}

.about-org__count {
	display: inline-grid;
	place-items: center;
	min-width: 1.5rem;
	height: 1.5rem;
	margin-left: 0.5rem;
	padding: 0 0.4rem;
	border-radius: var(--r-pill);
	background: rgba(244, 122, 31, 0.16);
	color: var(--accent);
	font-size: 0.72rem;
	font-weight: 800;
	line-height: 1;
}

[role='tab'][aria-selected='true'] .about-org__count {
	background: var(--saffron);
	color: var(--sanctum-black);
}

/* No JS: the tab bar does nothing, so hide it and show every level's panel in turn. */
html:not(.hs-js) .about-org__tabs {
	display: none;
}

html:not(.hs-js) .about-org [role='tabpanel'][hidden] {
	display: block !important;
}

html:not(.hs-js) .about-org__panel + .about-org__panel {
	margin-top: 2.5rem;
	padding-top: 2.5rem;
	border-top: 1px solid var(--line);
}

.about-org__intro {
	display: flex;
	align-items: center;
	gap: 1.1rem;
	margin-bottom: 1.75rem;
}

.about-org__intro-icon {
	width: 3.25rem;
	height: 3.25rem;
}

.about-org__panel-title {
	margin: 0;
	font-size: clamp(1.4rem, 1.15rem + 1vw, 1.9rem);
}

.about-org__panel-text {
	max-width: 36rem;
	margin: 0.25rem 0 0;
	color: var(--fg-soft);
	font-size: var(--fs-sm);
}

.about-org__people {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 0.85rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.about-org__people > li {
	margin: 0;
}

@media (min-width: 640px) {
	.about-org__people {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (min-width: 1024px) {
	.about-org__people {
		grid-template-columns: repeat(auto-fill, minmax(12.5rem, 1fr));
		gap: 1.25rem;
	}
}

.about-org__empty {
	display: flex;
	align-items: center;
	gap: 1.25rem;
	padding: 1.5rem;
	border: 1px dashed var(--line-strong);
	border-radius: var(--r-md);
	color: var(--fg-muted);
}

.about-org__empty-art {
	flex: none;
	width: 3.5rem;
	color: var(--accent-2);
	opacity: 0.8;
}

.about-org__empty-text {
	margin: 0;
	font-size: var(--fs-sm);
}

/* Leader card */
.about-leader {
	display: grid;
	grid-template-columns: 4.75rem minmax(0, 1fr);
	gap: 1rem;
	align-items: center;
	height: 100%;
	padding: 0.85rem;
	border: 1px solid var(--line);
	border-radius: var(--r-md);
	background: var(--surface);
	transition: border-color var(--dur) ease, translate var(--dur) var(--ease-out);
}

.about-leader:hover {
	border-color: rgba(244, 122, 31, 0.5);
	translate: 0 -3px;
}

.about-leader__media {
	min-width: 0;
}

.about-leader__media .media-slot {
	border-radius: 10px;
}

.about-leader__monogram {
	display: grid;
	place-items: center;
	width: 100%;
	aspect-ratio: 1;
	border: 1px solid rgba(217, 164, 65, 0.5);
	border-radius: 50%;
	background: radial-gradient(circle at 30% 22%, rgba(244, 122, 31, 0.25), var(--charcoal-3) 70%);
	color: var(--gold-soft);
	font-family: var(--font-display);
	font-size: 1.5rem;
	letter-spacing: 0.04em;
}

.about-leader__name {
	margin: 0;
	font-size: 1.15rem;
	line-height: 1.2;
}

.about-leader__role {
	margin: 0.25rem 0 0;
	color: var(--accent);
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	line-height: 1.4;
	text-transform: uppercase;
}

.about-leader__where {
	display: flex;
	align-items: center;
	gap: 0.4em;
	margin: 0.4rem 0 0;
	color: var(--fg-muted);
	font-size: 0.82rem;
}

.about-leader__where .icon {
	color: var(--accent-2);
}

.about-leader__links {
	display: flex;
	gap: 0.25rem;
	margin: 0.5rem 0 0 -0.5rem;
	padding: 0;
	list-style: none;
}

.about-leader__links li {
	margin: 0;
}

.about-leader__links a {
	display: grid;
	place-items: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	color: var(--fg-soft);
}

.about-leader__links a:hover,
.about-leader__links a:focus-visible {
	background: rgba(244, 122, 31, 0.14);
	color: var(--saffron-bright);
}

@media (min-width: 1024px) {
	.about-leader {
		grid-template-columns: minmax(0, 1fr);
		align-content: start;
		gap: 0.9rem;
		padding: 0.75rem 0.75rem 1.1rem;
		border-radius: var(--r-lg);
	}

	.about-leader__media .media-slot {
		border-radius: calc(var(--r-lg) - 6px);
	}

	.about-leader__monogram {
		aspect-ratio: 4 / 5;
		border-radius: calc(var(--r-lg) - 6px);
		font-size: 2.6rem;
	}

	.about-leader__body {
		padding-inline: 0.35rem;
	}
}


/* ==========================================================================
   08 RECOGNITION & GOVERNANCE  (ivory)
   ========================================================================== */
.about-gov__statements {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 1rem;
	margin: 0 0 clamp(2rem, 4vw, 3rem);
}

@media (min-width: 768px) {
	.about-gov__statements {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

.about-gov__statement {
	margin: 0;
	padding: 1.35rem 1.6rem;
	border: 1px solid var(--line);
	border-left: 3px solid var(--accent-2);
	border-radius: var(--r-md);
	background: var(--surface);
	box-shadow: var(--card-shadow);
}

.about-gov__statement dt {
	margin: 0 0 0.5rem;
	color: var(--accent-2);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.about-gov__statement dd {
	margin: 0;
	color: var(--fg-soft);
}

.about-doc .card__media .media-slot__media {
	object-position: top center;
}

.about-doc .card__title {
	font-size: clamp(1.15rem, 1.05rem + 0.5vw, 1.4rem);
}

.about-doc__facts {
	margin: 0.25rem 0 0;
}

.about-doc__facts .facts__row {
	grid-template-columns: minmax(5.5rem, 34%) 1fr;
	padding: 0.55rem 0;
}

.about-doc__facts dd {
	font-size: var(--fs-sm);
}

.about-doc__file {
	color: var(--fg-muted);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.06em;
}

.about-gov__empty {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1rem;
	max-width: 40rem;
	margin: 0 auto;
	padding: clamp(2rem, 5vw, 3.5rem) clamp(1.25rem, 4vw, 3rem);
	border: 1px dashed var(--line-strong);
	border-radius: var(--r-lg);
	background: var(--surface);
	text-align: center;
}

.about-gov__empty-icon {
	display: grid;
	place-items: center;
	width: 4.5rem;
	height: 4.5rem;
	border: 1px solid rgba(125, 90, 18, 0.45);
	border-radius: 50%;
	background: radial-gradient(circle at 30% 20%, rgba(244, 122, 31, 0.14), transparent 70%);
	color: var(--gold-ink);
}

.about-gov__empty-text {
	margin: 0;
	color: var(--heading);
	font-family: var(--font-display);
	font-size: clamp(1.25rem, 1.05rem + 0.9vw, 1.7rem);
	line-height: 1.3;
	text-wrap: balance;
}


/* ==========================================================================
   09 MILESTONES / LEGACY  (sanctum black · centred vertical timeline)
   ========================================================================== */
.about-legacy .timeline__rail {
	margin: 0;
}

.about-legacy__timeline {
	max-width: 70rem;
	margin-inline: auto;
}

.about-timeline-item__card {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 1.1rem;
	overflow: hidden;
	padding: 1.4rem 1.5rem 1.5rem;
	border: 1px solid var(--line);
	border-radius: var(--r-lg);
	background: var(--surface);
	box-shadow: var(--card-shadow);
	text-align: left;
	transition: border-color var(--dur) ease;
}

.about-timeline-item:hover .about-timeline-item__card {
	border-color: rgba(244, 122, 31, 0.45);
}

.about-timeline-item__media {
	margin: -1.4rem -1.5rem 0;
}

.about-timeline-item__media .media-slot {
	border-radius: 0;
}

.about-timeline-item__badge {
	width: 3.25rem;
	height: 3.25rem;
}

.about-timeline-item__body .timeline__title {
	font-size: clamp(1.35rem, 1.15rem + 0.8vw, 1.8rem);
}

.about-timeline-item__body .timeline__text {
	color: var(--fg-muted);
}

.about-timeline-item__link {
	margin-top: 1rem;
}

@media (min-width: 1024px) {
	.about-legacy .timeline--center .timeline__item > .about-timeline-item__card {
		justify-self: stretch;
		width: 100%;
		max-width: 31rem;
		margin-left: auto;
		text-align: left;
	}

	.about-legacy .timeline--center .timeline__item:nth-child(even) > .about-timeline-item__card {
		margin-left: 0;
		margin-right: auto;
	}

	.about-legacy .timeline--center .timeline__item .timeline__text {
		margin-left: 0;
	}
}


/* ==========================================================================
   10 CTA — shared .cta-band; only a touch of local spacing
   ========================================================================== */
/* Centred layout: the gada linework sits at the far edge, clear of the buttons. */
.about-cta .cta-band__title {
	max-width: 16em;
	margin-inline: auto;
}

.about-cta .cta-band__art {
	right: 1%;
	width: clamp(150px, 18vw, 260px);
}

@media (max-width: 899px) {
	.about-cta .cta-band__art {
		display: none;
	}
}
