:root {
	--paper: #f5f3ee;
	--paper-deep: #ebe7df;
	--paper-bright: #fffdfa;
	--forest: #0f5b3b;
	--forest-deep: #061a2f;
	--forest-soft: #23714f;
	--ink: #0b1f33;
	--ink-soft: #596672;
	--sage: #8ca696;
	--gold: #76561a;
	--gold-light: #e2bd5f;
	--focus-dark: #061a2f;
	--line: rgba(11, 31, 51, 0.14);
	--line-light: rgba(252, 250, 245, 0.2);
	--wrap: 1280px;
	--reading: 74ch;
	--gutter: clamp(1.25rem, 4.5vw, 4rem);
	--section: clamp(4.75rem, 7vw, 7rem);
	--section-compact: clamp(3.25rem, 5vw, 5rem);
	--serif: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, "Times New Roman", serif;
	--sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--ease: cubic-bezier(0.22, 1, 0.36, 1);
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; color-scheme: light; }
body {
	margin: 0;
	background: var(--paper);
	color: var(--ink);
	font-family: var(--sans);
	font-size: clamp(1rem, 0.28vw + 0.95rem, 1.16rem);
	line-height: 1.7;
	-webkit-font-smoothing: antialiased;
}
body.menu-open { overflow: hidden; }
img { display: block; max-width: 100%; height: auto; }
picture { display: block; }
svg { display: block; max-width: 100%; }
a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 0.2em; }
button, input { font: inherit; }
button { color: inherit; }
p, ul, ol, blockquote, figure { margin-top: 0; }
h1, h2, h3, h4, p { overflow-wrap: break-word; }
h1, h2, h3, h4 {
	margin: 0;
	font-family: var(--serif);
	font-weight: 500;
	line-height: 1.04;
	letter-spacing: -0.035em;
}
h2 { font-size: clamp(2.5rem, 4.6vw, 4.35rem); }
h3 { font-size: clamp(1.45rem, 2vw, 2rem); }
h4 { font-size: 1.18rem; }
::selection { background: var(--gold-light); color: var(--forest-deep); }
:focus-visible {
	outline: 3px solid var(--paper-bright);
	outline-offset: 2px;
	box-shadow: 0 0 0 7px var(--focus-dark);
}
[hidden] { display: none !important; }

.wrap { width: min(calc(100% - (var(--gutter) * 2)), var(--wrap)); margin-inline: auto; }
.menu, .footer-list { padding: 0; margin: 0; list-style: none; }
.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}
.screen-reader-text:focus {
	position: fixed !important;
	top: 1rem;
	left: 1rem;
	z-index: 1000;
	width: auto;
	height: auto;
	padding: 0.8rem 1rem;
	margin: 0;
	clip: auto;
	background: var(--paper-bright);
	color: var(--forest-deep);
}

/* Shared header */
.site-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: rgba(252, 250, 245, 0.96);
	border-bottom: 1px solid var(--line);
	transition: box-shadow 240ms ease, background 240ms ease;
}
.site-header.is-scrolled { background: rgba(252, 250, 245, 0.985); box-shadow: 0 12px 30px rgba(7, 39, 31, 0.08); }
.scroll-progress {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	width: 100%;
	height: 2px;
	background: var(--gold);
	transform: scaleX(0);
	transform-origin: left;
}
.header-utility { background: var(--forest-deep); color: rgba(252, 250, 245, 0.76); font-size: 0.74rem; letter-spacing: 0.02em; }
.header-utility-inner { min-height: 34px; display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.header-utility a { color: var(--paper-bright); text-decoration: none; }
.header-inner { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.brand { display: flex; align-items: center; flex: 0 0 auto; min-width: 0; }
.site-logo-link, .footer-logo-link { display: block; flex: 0 0 auto; text-decoration: none; }
.site-logo-link .site-logo { width: 58px; height: 58px; object-fit: contain; }
.site-logo-link .site-logo, .footer-logo-link .site-logo { transition: transform 360ms var(--ease); }
.site-logo-link:hover .site-logo, .footer-logo-link:hover .site-logo { transform: scale(1.035); }
.brand-text { min-width: 0; margin-left: 0.8rem; }
.site-name { margin: 0; color: var(--forest-deep); font-family: var(--serif); font-size: 1.75rem; font-weight: 600; letter-spacing: -0.03em; line-height: 1; }
.site-tagline { margin: 0.22rem 0 0; color: var(--ink-soft); font-size: 0.67rem; font-weight: 700; letter-spacing: 0.08em; line-height: 1.2; text-transform: uppercase; }
.site-navigation { margin-left: auto; }
.primary-menu { display: flex; align-items: center; gap: clamp(0.55rem, 1.25vw, 1.15rem); }
.primary-menu a {
	position: relative;
	display: block;
	padding-block: 0.65rem;
	font-size: 0.76rem;
	font-weight: 750;
	letter-spacing: 0.025em;
	text-decoration: none;
	white-space: nowrap;
}
.primary-menu a::after {
	content: "";
	position: absolute;
	left: 0;
	right: 100%;
	bottom: 0.38rem;
	height: 1px;
	background: var(--gold);
	transition: right 220ms ease;
}
.primary-menu a:hover::after, .primary-menu .current-menu-item a::after { right: 0; }
.primary-menu li:last-child a { padding: 0.7rem 0.9rem; border: 1px solid var(--forest); }
.primary-menu li:last-child a::after { display: none; }
.primary-menu li:last-child a:hover { background: var(--forest); color: var(--paper-bright); }
.menu-toggle { display: none; width: 46px; height: 46px; padding: 0; border: 1px solid var(--line); background: transparent; cursor: pointer; }
.menu-toggle-lines, .menu-toggle-lines::before, .menu-toggle-lines::after { display: block; width: 21px; height: 1px; margin: auto; background: currentColor; content: ""; transition: transform 220ms ease, opacity 220ms ease; }
.menu-toggle-lines { position: relative; }
.menu-toggle-lines::before { position: absolute; top: -6px; left: 0; }
.menu-toggle-lines::after { position: absolute; top: 6px; left: 0; }
.menu-toggle[aria-expanded="true"] .menu-toggle-lines { background: transparent; }
.menu-toggle[aria-expanded="true"] .menu-toggle-lines::before { transform: translateY(6px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] .menu-toggle-lines::after { transform: translateY(-6px) rotate(-45deg); }

/* Shared editorial elements */
.ia-label, .eyebrow, .team-role, .resource-badge {
	display: block;
	margin: 0 0 1rem;
	color: var(--gold);
	font-size: 0.72rem;
	font-weight: 800;
	letter-spacing: 0.16em;
	line-height: 1.35;
	text-transform: uppercase;
}
.ia-actions { display: flex; flex-wrap: wrap; gap: 0.75rem; margin-top: 2rem; }
.ia-button, .button, .resource-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 0.78rem 1.1rem;
	border: 1px solid currentColor;
	font-size: 0.82rem;
	font-weight: 760;
	letter-spacing: 0.02em;
	line-height: 1.2;
	text-decoration: none;
	transition: background 220ms ease, color 220ms ease, border-color 220ms ease, transform 220ms ease;
}
.ia-button:hover, .button:hover, .resource-button:hover { transform: translateY(-2px); }
.ia-button-primary { border-color: var(--gold-light); background: var(--gold-light); color: var(--forest-deep); }
.ia-button-primary:hover { border-color: var(--paper-bright); background: var(--paper-bright); }
.ia-button-ghost { border-color: rgba(252, 250, 245, 0.5); color: var(--paper-bright); }
.ia-button-ghost:hover { border-color: var(--paper-bright); background: rgba(252, 250, 245, 0.08); }
.ia-button-gold, .button-secondary, .resource-button { border-color: var(--forest); color: var(--forest); }
.ia-button-gold:hover, .button-secondary:hover, .resource-button:hover { background: var(--forest); color: var(--paper-bright); }
.ia-button-light { border-color: var(--paper-bright); color: var(--paper-bright); }
.ia-section { padding-block: var(--section); }
.ia-section-head { display: grid; grid-template-columns: minmax(12rem, 0.48fr) minmax(0, 1fr); gap: 2rem clamp(2rem, 6vw, 6rem); align-items: start; margin-bottom: clamp(3rem, 5vw, 5rem); }
.ia-section-head .ia-label { grid-row: 1 / span 2; }
.ia-section-head h2 { max-width: 16ch; }
.ia-section-head > p { max-width: var(--reading); margin: 0; color: var(--ink-soft); }

/* Homepage hero and single cinematic moment */
.ia-hero {
	position: relative;
	overflow: clip;
	background: var(--forest-deep);
	color: var(--paper-bright);
}
.ia-hero::before {
	content: "";
	position: absolute;
	top: -20%;
	right: -8%;
	width: min(58vw, 760px);
	aspect-ratio: 1;
	background: radial-gradient(circle, rgba(212, 191, 145, 0.13), transparent 64%);
	pointer-events: none;
	opacity: 0;
	transform: scale(0.88);
}
.ia-hero::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	width: 38%;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--gold-light));
	opacity: 0.65;
	transform: scaleX(0);
	transform-origin: right;
}
.ia-hero-inner {
	display: grid;
	grid-template-columns: minmax(0, 1.16fr) minmax(380px, 0.84fr);
	gap: clamp(3rem, 5vw, 4.5rem);
	align-items: center;
	padding-block: clamp(4rem, 6vw, 6rem);
}
.ia-hero-content { position: relative; z-index: 2; }
.ia-hero .ia-label { color: var(--gold-light); }
.ia-hero-title {
	max-width: 10.6ch;
	font-size: clamp(3.8rem, 5.6vw, 5.4rem);
	line-height: 0.94;
	letter-spacing: -0.052em;
	overflow-wrap: normal;
	word-break: normal;
	hyphens: none;
}
.ia-hero-subtitle { max-width: 57ch; margin: 1.75rem 0 0; color: rgba(252, 250, 245, 0.78); font-size: clamp(1.04rem, 1.35vw, 1.25rem); line-height: 1.68; }
.ia-hero-visual { position: relative; margin: 0; min-width: 0; }
.ia-hero-photo { position: relative; aspect-ratio: 4 / 5; overflow: hidden; background: var(--forest); }
.ia-hero-photo picture, .ia-hero-photo img { width: 100%; height: 100%; }
.ia-hero-photo picture { clip-path: inset(0 0 0 18%); }
.ia-hero-photo img {
	object-fit: cover;
	object-position: 52% center;
	filter: saturate(0.82) contrast(1.03) sepia(0.04);
	transform: scale(calc(1.025 + (var(--hero-shift, 0) * 0.02))) translateY(calc(var(--hero-shift, 0) * -8px));
	transition: transform 120ms linear;
}
.ia-hero-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 50%, rgba(7, 39, 31, 0.8)); pointer-events: none; }
.ia-hero-photo-caption { position: absolute; z-index: 2; left: 1.5rem; right: 1.5rem; bottom: 1.3rem; display: flex; align-items: end; justify-content: space-between; gap: 1rem; color: var(--paper-bright); }
.ia-hero-photo-caption strong { font-family: var(--serif); font-size: 1.25rem; font-weight: 500; }
.ia-hero-photo-caption span { max-width: 26ch; font-size: 0.7rem; letter-spacing: 0.08em; line-height: 1.5; text-align: right; text-transform: uppercase; }
.ia-hero-emblem { position: absolute; z-index: 3; left: -2.25rem; bottom: 2.3rem; display: flex; align-items: center; gap: 0.65rem; }
.ia-hero-emblem img { width: 74px; height: 74px; object-fit: contain; filter: drop-shadow(0 8px 12px rgba(7, 39, 31, 0.22)); }
.ia-hero-emblem span { max-width: 12ch; color: var(--paper-bright); font-size: 0.66rem; font-weight: 750; letter-spacing: 0.1em; line-height: 1.35; text-transform: uppercase; }
.ia-hero-principles { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 1rem; border-top: 1px solid var(--line-light); border-bottom: 1px solid var(--line-light); }
.ia-hero-principles p { margin: 0; padding: 0.9rem 0.8rem; font-family: var(--serif); font-size: 1.03rem; }
.ia-hero-principles p + p { border-left: 1px solid var(--line-light); }
.ia-hero-principles span { display: block; margin-bottom: 0.2rem; color: var(--gold-light); font-family: var(--sans); font-size: 0.58rem; font-weight: 800; letter-spacing: 0.14em; }
.js.site-ready .ia-hero-photo picture { animation: hero-mask 1.55s var(--ease) both; }
.js.site-ready .ia-hero-photo img { animation: hero-image 1.55s var(--ease) both; }
.js.site-ready .ia-hero-content > * { animation: hero-copy 1.2s var(--ease) both; }
.js.site-ready .ia-hero-content > *:nth-child(2) { animation-delay: 90ms; }
.js.site-ready .ia-hero-content > *:nth-child(3) { animation-delay: 170ms; }
.js.site-ready .ia-hero-content > *:nth-child(4) { animation-delay: 240ms; }
.js.site-ready .ia-hero::before { animation: hero-atmosphere 1.8s 180ms var(--ease) both; }
.js.site-ready .ia-hero::after { animation: hero-rule 1.4s 350ms var(--ease) both; }
@keyframes hero-mask { from { clip-path: inset(0 0 0 42%); } to { clip-path: inset(0); } }
@keyframes hero-image { from { opacity: 0.35; transform: scale(1.1); } to { opacity: 1; transform: scale(1.025); } }
@keyframes hero-copy { from { opacity: 0; transform: translateY(22px); } to { opacity: 1; transform: translateY(0); } }
@keyframes hero-atmosphere { to { opacity: 1; transform: scale(1); } }
@keyframes hero-rule { to { transform: scaleX(1); } }

/* Homepage narrative */
.ia-impact { background: var(--paper-bright); }
.ia-impact-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-bottom: 1px solid var(--line); }
.ia-impact-item { padding: clamp(1.7rem, 3vw, 2.6rem) clamp(0.5rem, 2vw, 1.8rem); }
.ia-impact-item + .ia-impact-item { border-left: 1px solid var(--line); }
.ia-impact-item strong { display: block; color: var(--forest); font-family: var(--serif); font-size: clamp(2rem, 3.4vw, 3.25rem); font-weight: 500; line-height: 1; }
.ia-impact-item > span { display: block; margin-top: 0.55rem; color: var(--ink-soft); font-size: 0.78rem; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; }
.ia-audience { background: var(--paper-bright); }
.ia-audience-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); }
.ia-editorial-card { padding: 2.3rem clamp(1rem, 2.5vw, 2.5rem) 0; }
.ia-editorial-card + .ia-editorial-card { border-left: 1px solid var(--line); }
.ia-editorial-card > span { color: var(--gold); font-size: 0.7rem; font-weight: 800; letter-spacing: 0.12em; }
.ia-editorial-card h3 { margin-top: 1.6rem; }
.ia-editorial-card p { margin: 1rem 0 0; color: var(--ink-soft); }
.ia-mission { padding-block: 0; background: var(--paper); }
.ia-split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); width: 100%; max-width: none; }
.ia-statement { min-width: 0; padding: clamp(3.8rem, 7vw, 7rem) max(var(--gutter), calc((100vw - var(--wrap)) / 2 + var(--gutter))); background: var(--forest); color: var(--paper-bright); }
.ia-statement-light { background: var(--paper-deep); color: var(--ink); }
.ia-statement .ia-label { color: var(--gold-light); }
.ia-statement-light .ia-label { color: var(--gold); }
.ia-statement h2 { max-width: 11ch; font-size: clamp(2.7rem, 4.8vw, 4.8rem); }
.ia-statement p { max-width: 54ch; margin: 1.5rem 0 0; color: rgba(252, 250, 245, 0.76); }
.ia-statement-light p { color: var(--ink-soft); }
.ia-work { background: var(--paper-bright); }
.ia-work-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line); }
.ia-work-card { position: relative; padding: 2rem 3.5rem 2rem 0; border-bottom: 1px solid var(--line); }
.ia-work-card:nth-child(even) { padding-left: 3rem; border-left: 1px solid var(--line); }
.ia-work-card h3 { font-size: clamp(1.45rem, 2.1vw, 2rem); }
.ia-work-card p { max-width: 58ch; margin: 0.8rem 0 0; color: var(--ink-soft); }
.ia-policy { background: var(--forest-deep); color: var(--paper-bright); }
.ia-policy-layout { display: grid; grid-template-columns: minmax(0, 0.72fr) minmax(0, 1fr); gap: clamp(3rem, 7vw, 8rem); align-items: start; }
.ia-policy-copy { position: sticky; top: 10rem; }
.ia-policy-copy .ia-label { color: var(--gold-light); }
.ia-policy-copy h2 { max-width: 12ch; }
.ia-policy-copy p { max-width: 54ch; margin: 1.5rem 0 0; color: rgba(252, 250, 245, 0.7); }
.ia-policy-grid { border-top: 1px solid var(--line-light); }
.ia-policy-card { padding: 1.8rem 0; border-bottom: 1px solid var(--line-light); }
.ia-policy-card h3 { font-family: var(--sans); font-size: 1.05rem; font-weight: 760; letter-spacing: -0.01em; }
.ia-policy-card p { margin: 0.65rem 0 0; color: rgba(252, 250, 245, 0.7); }
.ia-story { background: var(--paper); }
.ia-story-track { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line); }
.ia-story-step { position: relative; padding: 2rem 2rem 0 0; }
.ia-story-step + .ia-story-step { padding-left: 2rem; border-left: 1px solid var(--line); }
.ia-story-step > span { color: var(--gold); font-size: 0.67rem; font-weight: 800; letter-spacing: 0.12em; }
.ia-story-step h3 { margin-top: 1.4rem; }
.ia-story-step p { margin: 0.8rem 0 0; color: var(--ink-soft); }
.ia-section-action { margin-top: 2.5rem; }
.ia-news { background: var(--paper-bright); }
.ia-news-layout { display: grid; grid-template-columns: minmax(0, 0.75fr) minmax(0, 1fr); gap: clamp(3rem, 7vw, 8rem); align-items: start; }
.ia-news-copy h2 { max-width: 12ch; }
.ia-news-copy p { max-width: 56ch; margin: 1.4rem 0 2rem; color: var(--ink-soft); }
.ia-news-grid { border-top: 1px solid var(--line); }
.ia-news-card { padding: 1.65rem 0; border-bottom: 1px solid var(--line); }
.ia-news-card > span { color: var(--gold); font-size: 0.7rem; font-weight: 800; letter-spacing: 0.1em; text-transform: uppercase; }
.ia-news-card h3 { margin-top: 0.45rem; font-size: clamp(1.35rem, 2vw, 1.9rem); }
.ia-news-card p { margin: 0.65rem 0 0; color: var(--ink-soft); }
.ia-join { background: var(--paper-deep); }
.ia-join-panel { display: grid; grid-template-columns: minmax(0, 0.72fr) minmax(16rem, 0.8fr) auto; gap: 1.5rem 4rem; align-items: end; padding-block: clamp(0.5rem, 1.5vw, 1.5rem); }
.ia-join-panel .ia-label { grid-column: 1 / -1; margin-bottom: 0; }
.ia-join-panel h2 { max-width: 12ch; }
.ia-join-panel p { max-width: 58ch; margin: 0; color: var(--ink-soft); }
.ia-join-panel .ia-button { justify-self: start; white-space: nowrap; }

/* Internal page framework */
.ia-page-hero { position: relative; overflow: hidden; padding-block: clamp(4.5rem, 7vw, 7rem); background: var(--paper-deep); }
.ia-page-hero::after {
	content: "";
	position: absolute;
	top: 50%;
	right: clamp(-10rem, -7vw, -4rem);
	width: clamp(14rem, 28vw, 26rem);
	aspect-ratio: 1;
	border: 1px solid rgba(118, 85, 31, 0.16);
	border-radius: 50%;
	box-shadow: 0 0 0 3.5rem rgba(118, 85, 31, 0.07), 0 0 0 7rem rgba(118, 85, 31, 0.035);
	pointer-events: none;
	opacity: 0;
	transform: translateY(-50%) scale(0.84);
}
.ia-page-hero-dark::after, .ia-page-hero-media::after { border-color: rgba(212, 191, 145, 0.18); box-shadow: 0 0 0 3.5rem rgba(212, 191, 145, 0.06), 0 0 0 7rem rgba(212, 191, 145, 0.03); }
.js.site-ready .ia-page-hero::after { animation: page-orbit 1.45s 120ms var(--ease) both; }
@keyframes page-orbit { to { opacity: 1; transform: translateY(-50%) scale(1); } }
.ia-page-hero-dark { background: var(--forest-deep); color: var(--paper-bright); }
.ia-page-hero-inner { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(11rem, 0.38fr) minmax(0, 1fr); gap: 1rem clamp(2rem, 7vw, 7rem); align-items: start; }
.ia-page-hero-inner .ia-label { grid-row: 1 / span 3; padding-top: 0.75rem; }
.ia-page-hero-dark .ia-label { color: var(--gold-light); }
.ia-page-hero h1 { max-width: 16ch; font-size: clamp(3.35rem, 5.5vw, 5rem); overflow-wrap: normal; word-break: normal; hyphens: none; }
.ia-page-hero-inner > p, .ia-page-copy { max-width: 64ch; margin: 1.3rem 0 0; color: var(--ink-soft); font-size: clamp(1.05rem, 1.45vw, 1.26rem); }
.ia-page-hero-dark .ia-page-hero-inner > p { color: rgba(252, 250, 245, 0.73); }
.ia-page-copy .iaid-page-intro { margin: 0; padding: 0; border: 0; }
.ia-page-copy .iaid-page-intro p { font-size: inherit; }
.ia-page-content { padding-block: var(--section); background: var(--paper-bright); }
.ia-prose { width: min(100%, var(--wrap)); }
.iaid-page-intro { max-width: 74ch; margin-bottom: clamp(3rem, 5vw, 5rem); }
.iaid-page-intro p { margin: 0; color: var(--ink-soft); font-size: clamp(1.13rem, 1.45vw, 1.34rem); line-height: 1.68; }
.iaid-page-intro p + p { margin-top: 1rem; }
.compact-section { display: grid; grid-template-columns: minmax(12rem, 0.48fr) minmax(0, 1fr); gap: 2rem clamp(2.5rem, 7vw, 7rem); padding-block: clamp(2.6rem, 4vw, 4.3rem); border-top: 1px solid var(--line); }
.compact-section h2 { max-width: 10ch; font-size: clamp(2.35rem, 4vw, 4rem); }
.compact-section > p { max-width: var(--reading); margin: 0; color: var(--ink-soft); }
.editorial-figure { margin: 0; }
.editorial-figure picture { overflow: hidden; background: var(--paper-deep); transition: clip-path 1s var(--ease); }
.editorial-figure img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.035); transition: transform 1.15s var(--ease); }
.editorial-figure.is-visible img { transform: scale(1); }
.js .editorial-figure.reveal-item picture { clip-path: inset(0 0 0 14%); }
.js .editorial-figure.reveal-item.is-visible picture { clip-path: inset(0); }
.editorial-figure figcaption { max-width: 70ch; margin-top: 0.75rem; color: var(--ink-soft); font-size: 0.72rem; line-height: 1.5; }
.editorial-break { margin: 0 0 clamp(4rem, 7vw, 7rem); }
.editorial-break picture { aspect-ratio: 16 / 7; }
.editorial-figure-committees img { object-position: center 43%; }
.editorial-figure-resources img { object-position: center 48%; }
.editorial-figure-register img { object-position: center 53%; }
.disclaimer-box { padding: 1.15rem 1.3rem; border-left: 3px solid var(--gold); background: var(--paper-deep); }
.disclaimer-box p { margin: 0; color: var(--ink-soft); font-size: 0.88rem; }

/* About and leadership */
.ia-page-about-content .ia-prose { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: 0 clamp(3rem, 7vw, 7rem); }
.ia-page-about-content .iaid-page-intro { grid-column: 1; align-self: center; margin: 0; }
.editorial-figure-about { grid-column: 2; margin-bottom: clamp(4.5rem, 7vw, 7rem); }
.editorial-figure-about picture { aspect-ratio: 4 / 3; }
.editorial-figure-about img { object-position: center 42%; }
.ia-page-about-content .compact-section { grid-column: 1 / -1; }
.leadership-section, .values-section { display: block; }
.leadership-section > h2, .values-section > h2 { max-width: none; margin-bottom: 1.2rem; }
.leadership-section > p { max-width: 76ch; margin-bottom: 3rem; color: var(--ink-soft); }
.leadership-structure { margin-top: 1.5rem; }
.leadership-officers { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line); }
.leadership-groups { display: grid; grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr); margin-top: 2.75rem; border-top: 1px solid var(--line); }
.leadership-group-stack { display: grid; grid-template-columns: 1fr; min-width: 0; }
.leadership-group-stack .leadership-card { padding-left: 0; border-left: 0; }
.leadership-groups > .leadership-card { padding-left: 2rem; border-left: 1px solid var(--line); }
.leadership-card { min-width: 0; padding: 1.7rem 1.7rem 1.7rem 0; border-bottom: 1px solid var(--line); background: transparent; }
.leadership-card + .leadership-card { padding-left: 1.7rem; border-left: 1px solid var(--line); }
.leadership-card-primary h3 { font-size: clamp(1.8rem, 2.8vw, 2.7rem); }
.leadership-card h3, .leadership-card h4 { overflow-wrap: anywhere; }
.leadership-card p { margin: 0.45rem 0 0; color: var(--ink-soft); }
.leadership-card-open { background: linear-gradient(135deg, rgba(233, 226, 212, 0.5), transparent 75%); }
.leadership-card-open h4 { color: var(--forest); }
.leadership-list { padding: 0; margin: 1rem 0 0; list-style: none; }
.leadership-list li { display: grid; gap: 0.2rem; padding-block: 0.7rem; border-top: 1px solid var(--line); }
.leadership-list span { color: var(--ink-soft); font-size: 0.82rem; }
.leadership-list-simple li { display: block; }
.leadership-subsection { margin-top: 3.25rem; }
.leadership-subsection > h3 { max-width: 22ch; margin-bottom: 1.5rem; }
.committee-leadership-grid, .county-chair-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); }
.county-chair-grid { grid-template-columns: repeat(4, 1fr); }
.committee-leadership-grid .leadership-card:nth-child(3n + 1), .county-chair-grid .leadership-card:nth-child(4n + 1) { padding-left: 0; border-left: 0; }
.leadership-note { margin: 2rem 0 0; color: var(--ink-soft); font-size: 0.85rem; }
.value-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); }
.value-grid article { padding: 1.75rem 2rem 1.75rem 0; border-bottom: 1px solid var(--line); }
.value-grid article:not(:nth-child(3n + 1)) { padding-left: 2rem; border-left: 1px solid var(--line); }
.value-grid h3 { font-size: 1.55rem; }
.value-grid p { margin: 0.7rem 0 0; color: var(--ink-soft); }

/* Story */
.ia-timeline-page .ia-prose { display: grid; grid-template-columns: minmax(0, 0.78fr) minmax(0, 1.22fr); gap: 0 clamp(3rem, 7vw, 7rem); }
.ia-timeline-page .iaid-page-intro { align-self: center; margin: 0; }
.editorial-figure-story { grid-column: 2; }
.editorial-figure-story picture { aspect-ratio: 4 / 3; }
.editorial-figure-story img { object-position: center 53%; }
.story-transition { grid-column: 1 / -1; display: flex; align-items: center; gap: 1.2rem; margin: clamp(4rem, 7vw, 7rem) 0 0; color: var(--forest); font-family: var(--serif); font-size: clamp(1.4rem, 2.5vw, 2.2rem); }
.story-transition span { flex: 1; height: 1px; background: linear-gradient(90deg, var(--gold), var(--line)); }
.story-timeline { --story-progress: 0; grid-column: 1 / -1; position: relative; display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 2rem; border-top: 1px solid var(--line); }
.story-timeline::before { content: ""; position: absolute; z-index: 2; top: -1px; left: 0; width: 100%; height: 2px; background: var(--gold); transform: scaleX(var(--story-progress)); transform-origin: left; }
.story-timeline article { position: relative; padding: 2.2rem 2.2rem 2.4rem 0; border-bottom: 1px solid var(--line); }
.story-timeline article:not(:nth-child(3n + 1)) { padding-left: 2.2rem; border-left: 1px solid var(--line); }
.story-timeline article > span { display: inline-grid; place-items: center; width: 2rem; height: 2rem; border: 1px solid var(--gold); color: var(--gold); font-size: 0.72rem; font-weight: 800; }
.story-timeline h3 { margin-top: 1.3rem; font-size: clamp(1.45rem, 2.2vw, 2.05rem); }
.story-timeline p { margin: 0.85rem 0 0; color: var(--ink-soft); }

/* Advocacy */
.ia-page-advocacy .ia-page-content { background: var(--forest-deep); color: var(--paper-bright); }
.advocacy-dashboard-strip { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--line-light); border-bottom: 1px solid var(--line-light); }
.advocacy-dashboard-strip > div { padding: 1.3rem 1.4rem; }
.advocacy-dashboard-strip > div + div { border-left: 1px solid var(--line-light); }
.advocacy-dashboard-strip strong { display: block; color: var(--gold-light); font-family: var(--serif); font-size: 1.28rem; font-weight: 500; }
.advocacy-dashboard-strip span { display: block; margin-top: 0.2rem; color: rgba(252, 250, 245, 0.65); font-size: 0.74rem; }
.editorial-figure-advocacy { margin: clamp(3rem, 5vw, 5rem) 0; }
.editorial-figure-advocacy picture { aspect-ratio: 16 / 7; }
.editorial-figure-advocacy img { object-position: center 34%; filter: saturate(0.8) contrast(1.05); }
.editorial-figure-advocacy figcaption { color: rgba(252, 250, 245, 0.62); }
.advocacy-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line-light); }
.advocacy-grid article { padding: 2.1rem 3rem 2.1rem 0; border-bottom: 1px solid var(--line-light); }
.advocacy-grid article:nth-child(even) { padding-left: 3rem; border-left: 1px solid var(--line-light); }
.advocacy-grid h2 { font-size: clamp(1.65rem, 2.6vw, 2.45rem); }
.advocacy-grid p { margin: 0.9rem 0 0; color: rgba(252, 250, 245, 0.68); }

/* Committees */
.committee-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line); }
.committee-grid article { min-width: 0; padding: 2.4rem 3.2rem 2.4rem 0; border-bottom: 1px solid var(--line); }
.committee-grid article:nth-child(even) { padding-left: 3.2rem; border-left: 1px solid var(--line); }
.committee-grid h2 { font-size: clamp(1.8rem, 2.7vw, 2.55rem); }
.committee-grid h3 { margin-top: 1.55rem; color: var(--gold); font-family: var(--sans); font-size: 0.7rem; font-weight: 800; letter-spacing: 0.14em; text-transform: uppercase; }
.committee-grid p { margin: 0.45rem 0 0; color: var(--ink-soft); }
.committee-grid article, .leadership-card, .value-grid article, .feature-card { transition: background-color 320ms ease; }
.committee-grid article:hover, .leadership-card:hover, .value-grid article:hover, .feature-card:hover { background: rgba(233, 226, 212, 0.22); }

/* Media library */
.ia-page-hero-media { background: var(--forest-deep); color: var(--paper-bright); }
.ia-page-hero-media .ia-label { color: var(--gold-light); }
.ia-page-hero-media .ia-page-copy { color: rgba(252, 250, 245, 0.72); }
.ia-page-hero-media .ia-page-copy .iaid-page-intro p { color: rgba(252, 250, 245, 0.72); }
.media-controls { display: grid; grid-template-columns: minmax(12rem, 0.34fr) minmax(0, 1fr); gap: 2rem 4rem; align-items: end; padding-bottom: 2rem; border-bottom: 1px solid var(--line); }
.media-search-label { font-family: var(--serif); font-size: clamp(1.8rem, 3vw, 2.8rem); line-height: 1.1; }
.media-controls-inner { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 1rem; align-items: center; }
.media-search-input { width: 100%; min-height: 50px; padding: 0.65rem 0.9rem; border: 1px solid var(--line); border-radius: 0; background: transparent; color: var(--ink); }
.media-result-count { margin: 0; color: var(--ink-soft); font-size: 0.78rem; white-space: nowrap; }
.filter-toolbar { display: flex; flex-wrap: wrap; gap: 0.45rem; margin: 1.5rem 0 3rem; }
.filter-button { min-height: 42px; padding: 0.55rem 0.75rem; border: 1px solid var(--line); border-radius: 0; background: transparent; font-size: 0.72rem; font-weight: 720; cursor: pointer; }
.filter-button:hover, .filter-button.is-active { border-color: var(--forest); background: var(--forest); color: var(--paper-bright); }
.media-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line); }
.media-card { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; padding: 2rem 3rem 2rem 0; border-bottom: 1px solid var(--line); }
.media-card:nth-child(even) { padding-left: 3rem; border-left: 1px solid var(--line); }
.media-card-meta { display: flex; flex-wrap: wrap; gap: 0.4rem 1rem; justify-content: space-between; width: 100%; color: var(--gold); font-size: 0.66rem; font-weight: 760; letter-spacing: 0.07em; text-transform: uppercase; }
.media-card h2 { margin-top: 1rem; font-size: clamp(1.55rem, 2.35vw, 2.25rem); }
.media-card p { margin: 0.8rem 0 0; color: var(--ink-soft); }
.media-card .media-source { color: var(--forest); font-size: 0.78rem; font-weight: 800; letter-spacing: 0.09em; text-transform: uppercase; }
.media-card .button { margin-top: auto; padding: 1.15rem 0 0; border: 0; border-bottom: 1px solid currentColor; min-height: 0; }
.media-card .button::after, .resource-button::after { content: "\2197"; margin-left: 0.5rem; }
.media-card .button:hover { background: transparent; color: var(--gold); }
.media-note { margin-top: 3rem; }
.media-empty-state { padding: 1.25rem 1.4rem; margin: 0 0 3rem; border-left: 3px solid var(--gold); background: var(--paper-deep); color: var(--ink-soft); }
.media-card, .resource-card { transition: background-color 320ms ease, transform 320ms var(--ease); }
.media-card:hover, .resource-card:hover { background: rgba(233, 226, 212, 0.2); transform: translateY(-3px); }

/* Resource hub */
.resource-hub-intro { max-width: 66ch; }
.resource-category { display: grid; grid-template-columns: minmax(13rem, 0.36fr) minmax(0, 1fr); gap: 2rem clamp(3rem, 7vw, 7rem); padding-block: clamp(3.5rem, 6vw, 5.5rem); border-top: 1px solid var(--line); }
.resource-category-head { align-self: start; }
.resource-category-head h2 { max-width: 11ch; font-size: clamp(2.2rem, 3.8vw, 3.7rem); }
.resource-category-head p { margin: 1rem 0 0; color: var(--ink-soft); }
.resource-grid { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line); }
.resource-card { display: flex; flex-direction: column; align-items: flex-start; min-width: 0; padding: 1.6rem 2rem 1.8rem 0; border-bottom: 1px solid var(--line); }
.resource-card:nth-child(even) { padding-left: 2rem; border-left: 1px solid var(--line); }
.resource-badge { margin-bottom: 0.9rem; font-size: 0.62rem; }
.resource-card h3 { font-size: clamp(1.35rem, 2vw, 1.85rem); }
.resource-card p { margin: 0.7rem 0 1.3rem; color: var(--ink-soft); }
.resource-button { min-height: 0; margin-top: auto; padding: 0.45rem 0; border: 0; border-bottom: 1px solid currentColor; }
.resource-button:hover { background: transparent; color: var(--gold); }
.resource-button-disabled { color: var(--ink-soft); opacity: 0.7; }
.resource-button-disabled::after { display: none; }
.resource-card-soon { background: rgba(233, 226, 212, 0.28); }
.resource-disclaimer { margin-top: 3rem; }

/* Contact and registration */
.ia-contact-content .ia-prose { display: grid; grid-template-columns: minmax(0, 0.72fr) minmax(0, 1fr); gap: clamp(3rem, 8vw, 8rem); align-items: start; }
.ia-contact-content .iaid-page-intro { margin: 0; }
.email-contact-card { padding: 0 0 0 clamp(1.5rem, 3vw, 3rem); border-left: 2px solid var(--gold); }
.email-contact-card h2 { font-size: clamp(2.5rem, 4.5vw, 4.4rem); }
.email-contact-card p { max-width: 48ch; margin: 1rem 0 1.5rem; color: var(--ink-soft); }
.email-link { display: inline-block; max-width: 100%; color: var(--forest); font-weight: 760; overflow-wrap: anywhere; }
.ia-register-content .iaid-page-intro { max-width: 70ch; }
.ia-register-content .email-contact-card { margin: 0 0 clamp(3rem, 6vw, 5rem); padding-block: 1rem; }
.two-column-cards { display: grid; grid-template-columns: repeat(2, 1fr); border-top: 1px solid var(--line); }
.feature-card { padding: 2rem 3rem 2rem 0; border-bottom: 1px solid var(--line); }
.feature-card + .feature-card { padding-left: 3rem; border-left: 1px solid var(--line); }
.feature-card h2 { font-size: clamp(1.9rem, 3vw, 2.8rem); }
.feature-card p { margin: 0.9rem 0 0; color: var(--ink-soft); }
.ia-register-content .compact-section { margin-top: 0; }
.check-list { padding: 0; margin: 0; list-style: none; }
.check-list li { position: relative; padding: 0.6rem 0 0.6rem 1.5rem; border-top: 1px solid var(--line); }
.check-list li::before { content: ""; position: absolute; left: 0; top: 1.2rem; width: 0.45rem; height: 0.45rem; background: var(--gold); }

/* Footer */
.footer-cta { padding-block: clamp(3rem, 5vw, 5rem); background: var(--forest); color: var(--paper-bright); }
.footer-cta-inner { display: flex; align-items: end; justify-content: space-between; gap: 2rem 4rem; }
.footer-cta .eyebrow { color: var(--gold-light); }
.footer-cta h2 { font-size: clamp(2.6rem, 4.8vw, 4.5rem); }
.footer-cta p { max-width: 55ch; margin: 0.8rem 0 0; color: rgba(252, 250, 245, 0.7); }
.footer-cta .button { border-color: var(--paper-bright); color: var(--paper-bright); }
.footer-cta .button:hover { background: var(--paper-bright); color: var(--forest-deep); }
.site-footer { background: var(--forest-deep); color: rgba(252, 250, 245, 0.74); }
.footer-grid { display: grid; grid-template-columns: minmax(0, 1.8fr) repeat(3, minmax(0, 0.8fr)); gap: 2.5rem clamp(2rem, 4vw, 4rem); padding-block: clamp(4rem, 7vw, 7rem); }
.footer-brand .site-logo { width: 76px; height: 76px; }
.footer-title { max-width: 20ch; margin: 1.4rem 0 0; color: var(--paper-bright); font-family: var(--serif); font-size: 1.45rem; line-height: 1.2; }
.footer-brand > p:not(.footer-title) { max-width: 50ch; margin: 1rem 0; }
.footer-email { color: var(--paper-bright); overflow-wrap: anywhere; }
.site-footer h2 { margin-bottom: 1rem; color: var(--paper-bright); font-family: var(--sans); font-size: 0.72rem; font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; }
.site-footer ul li { margin: 0.48rem 0; }
.site-footer a { color: inherit; }
.site-footer a:hover { color: var(--paper-bright); }
.footer-note { font-size: 0.78rem; line-height: 1.6; }
.footer-bottom { display: flex; justify-content: space-between; gap: 1rem; padding-block: 1.2rem 1.6rem; border-top: 1px solid var(--line-light); font-size: 0.75rem; }
.footer-bottom p { margin: 0; }
.footer-dots { width: 54px; height: 8px; background: radial-gradient(circle, var(--gold-light) 2px, transparent 3px) 0 50% / 18px 8px repeat-x; opacity: 0.7; }

/* 404 */
.error404 .ia-page-hero { min-height: 52vh; display: grid; align-items: center; }
.error404 .ia-page-hero-inner h1 { font-size: clamp(5rem, 12vw, 10rem); }
.error404 .ia-page-hero-inner p { max-width: 45ch; }
.error404 .error-home-link { grid-column: 2; justify-self: start; }

/* Progressive reveals */
.js .reveal-item { opacity: 0; transform: translateY(24px); transition: opacity 760ms var(--ease), transform 760ms var(--ease); transition-delay: var(--reveal-delay, 0ms); }
.js .reveal-item.is-visible { opacity: 1; transform: none; }

@media (max-width: 1180px) {
	.site-tagline { display: none; }
	.primary-menu { gap: 0.7rem; }
	.primary-menu a { font-size: 0.74rem; }
	.ia-hero-inner { grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.8fr); gap: 3.5rem; }
	.ia-hero-title { font-size: clamp(3.8rem, 6.4vw, 5.1rem); }
	.footer-grid { grid-template-columns: minmax(0, 1.4fr) repeat(3, minmax(0, 0.8fr)); }
}

@media (max-width: 980px) {
	.header-utility-inner > span { display: none; }
	.header-utility-inner { justify-content: flex-end; }
	.header-inner { min-height: 76px; }
	.menu-toggle { display: block; }
	.site-navigation {
		position: fixed;
		top: 110px;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 40;
		margin: 0;
		padding: 1.25rem var(--gutter) 2rem;
		background: var(--paper-bright);
		overflow-y: auto;
		overscroll-behavior: contain;
		visibility: hidden;
		opacity: 0;
		transform: translateY(-10px);
		transition: visibility 220ms ease, opacity 220ms ease, transform 220ms ease;
	}
	.site-navigation.is-open { visibility: visible; opacity: 1; transform: none; }
	.primary-menu { display: block; }
	.primary-menu li { border-bottom: 1px solid var(--line); }
	.primary-menu a { padding: 1rem 0; font-family: var(--serif); font-size: 1.7rem; font-weight: 500; white-space: normal; }
	.primary-menu a::after { display: none; }
	.primary-menu li:last-child { margin-top: 1rem; border: 0; }
	.primary-menu li:last-child a { padding: 0.9rem 1rem; font-family: var(--sans); font-size: 0.9rem; text-align: center; }
	.ia-hero-inner { grid-template-columns: 1fr; }
	.ia-hero-content { max-width: 780px; }
	.ia-hero-title { max-width: 12ch; }
	.ia-hero-visual { width: min(100%, 780px); margin-left: auto; }
	.ia-hero-photo { aspect-ratio: 16 / 10; }
	.ia-hero-emblem { left: -1rem; bottom: 2rem; }
	.ia-section-head, .ia-page-hero-inner { grid-template-columns: 1fr; gap: 1rem; }
	.ia-section-head .ia-label, .ia-page-hero-inner .ia-label { grid-row: auto; padding-top: 0; }
	.ia-section-head h2 { max-width: 14ch; }
	.ia-page-hero h1 { max-width: 15ch; }
	.error404 .error-home-link { grid-column: 1; }
	.ia-page-about-content .ia-prose, .ia-timeline-page .ia-prose { grid-template-columns: 1fr; }
	.ia-page-about-content .iaid-page-intro, .editorial-figure-about, .editorial-figure-story { grid-column: 1; }
	.ia-page-about-content .iaid-page-intro, .ia-timeline-page .iaid-page-intro { margin-bottom: 2.5rem; }
	.editorial-figure-about { margin-bottom: 4rem; }
	.ia-policy-layout, .ia-news-layout { grid-template-columns: 1fr; }
	.ia-policy-copy { position: static; }
	.ia-story-track { grid-template-columns: repeat(2, 1fr); }
	.ia-story-step:nth-child(odd) { padding-left: 0; border-left: 0; }
	.ia-story-step:nth-child(even) { padding-left: 2rem; border-left: 1px solid var(--line); }
	.resource-category { grid-template-columns: 1fr; }
	.resource-category-head { display: grid; grid-template-columns: 0.3fr 0.7fr; gap: 1rem 2rem; }
	.resource-category-head .ia-label { grid-row: 1 / span 2; }
	.footer-grid { grid-template-columns: 1.4fr 1fr 1fr; }
	.footer-grid > :last-child { grid-column: 2 / -1; }
}

@media (max-width: 760px) {
	:root { --section: clamp(4rem, 15vw, 5.5rem); --section-compact: clamp(3rem, 11vw, 4.5rem); }
	.header-utility { display: none; }
	.header-inner { min-height: 72px; }
	.site-navigation { top: 72px; }
	.site-logo-link .site-logo { width: 50px; height: 50px; }
	.site-name { font-size: 1.5rem; }
	.ia-hero-inner { padding-block: 3.75rem 4.75rem; }
	.ia-hero-title { max-width: 11.5ch; font-size: clamp(2.85rem, 12vw, 4.25rem); line-height: 0.98; }
	.ia-hero-subtitle { font-size: 1rem; }
	.ia-hero-photo { aspect-ratio: 4 / 5; }
	.ia-hero-photo-caption { left: 1rem; right: 1rem; bottom: 1rem; display: block; }
	.ia-hero-photo-caption span { display: block; margin-top: 0.25rem; text-align: left; }
	.ia-hero-emblem { left: -0.4rem; bottom: 5.1rem; }
	.ia-hero-emblem img { width: 60px; height: 60px; }
	.ia-hero-emblem span { display: none; }
	.ia-hero-principles p { padding-inline: 0.4rem; font-size: 0.88rem; }
	.ia-impact-grid { grid-template-columns: repeat(2, 1fr); }
	.ia-impact-item:nth-child(3) { border-left: 0; }
	.ia-impact-item:nth-child(n + 3) { border-top: 1px solid var(--line); }
	.ia-audience-grid, .ia-work-grid, .ia-split, .ia-story-track, .advocacy-grid, .committee-grid, .media-grid, .resource-grid, .two-column-cards { grid-template-columns: 1fr; }
	.ia-editorial-card, .ia-editorial-card + .ia-editorial-card { padding: 1.7rem 0; border-left: 0; border-bottom: 1px solid var(--line); }
	.ia-statement { padding-inline: var(--gutter); }
	.ia-work-card, .ia-work-card:nth-child(even), .ia-story-step, .ia-story-step:nth-child(even), .advocacy-grid article, .advocacy-grid article:nth-child(even), .committee-grid article, .committee-grid article:nth-child(even), .media-card, .media-card:nth-child(even), .resource-card, .resource-card:nth-child(even), .feature-card, .feature-card + .feature-card { padding: 1.75rem 0; border-left: 0; }
	.ia-join-panel { grid-template-columns: 1fr; gap: 1.25rem; }
	.ia-page-hero { padding-block: 3.75rem 4.25rem; }
	.ia-page-hero h1 { font-size: clamp(2.8rem, 12vw, 4rem); }
	.compact-section { grid-template-columns: 1fr; gap: 1rem; }
	.compact-section h2 { max-width: 14ch; }
	.leadership-officers, .leadership-groups, .committee-leadership-grid, .county-chair-grid, .value-grid { grid-template-columns: 1fr; }
	.leadership-groups > .leadership-card { padding-left: 0; border-left: 0; }
	.leadership-card, .leadership-card + .leadership-card, .committee-leadership-grid .leadership-card, .county-chair-grid .leadership-card, .value-grid article, .value-grid article:not(:nth-child(3n + 1)) { padding: 1.45rem 0; border-left: 0; }
	.story-timeline { grid-template-columns: 1fr; margin-left: 1rem; border-top: 0; border-left: 1px solid var(--line); }
	.story-timeline::before { top: 0; left: -1px; width: 2px; height: 100%; transform: scaleY(var(--story-progress)); transform-origin: top; }
	.story-timeline article, .story-timeline article:not(:nth-child(3n + 1)) { padding: 0 0 2.5rem 2rem; border-left: 0; }
	.story-timeline article > span { position: absolute; top: 0; left: -1rem; background: var(--paper-bright); }
	.advocacy-dashboard-strip { grid-template-columns: repeat(2, 1fr); }
	.advocacy-dashboard-strip > div:nth-child(3) { border-left: 0; border-top: 1px solid var(--line-light); }
	.advocacy-dashboard-strip > div:nth-child(4) { border-top: 1px solid var(--line-light); }
	.editorial-figure-advocacy picture { aspect-ratio: 4 / 3; }
	.editorial-break picture { aspect-ratio: 4 / 3; }
	.media-controls, .media-controls-inner { grid-template-columns: 1fr; gap: 1rem; }
	.media-result-count { white-space: normal; }
	.resource-category-head { display: block; }
	.resource-category-head .ia-label { margin-bottom: 0.8rem; }
	.ia-contact-content .ia-prose { grid-template-columns: 1fr; }
	.email-contact-card { padding-left: 1.2rem; }
	.footer-cta-inner { display: block; }
	.footer-cta .button { margin-top: 1.5rem; }
	.footer-grid { grid-template-columns: 1fr 1fr; }
	.footer-grid > :first-child, .footer-grid > :last-child { grid-column: 1 / -1; }
}

@media (max-width: 430px) {
	:root { --gutter: 1.15rem; }
	.brand-text { margin-left: 0.55rem; }
	.site-tagline { display: none; }
	.ia-actions { display: grid; grid-template-columns: 1fr; }
	.ia-button { width: 100%; }
	.ia-hero-principles { grid-template-columns: 1fr; }
	.ia-hero-principles p + p { border-left: 0; border-top: 1px solid var(--line-light); }
	.ia-hero-emblem { bottom: 8.4rem; }
	.ia-impact-item { padding-inline: 0.6rem; }
	.advocacy-dashboard-strip { grid-template-columns: 1fr; }
	.advocacy-dashboard-strip > div + div { border-left: 0; border-top: 1px solid var(--line-light); }
	.filter-toolbar {
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		margin-inline: calc(var(--gutter) * -1);
		padding: 0 var(--gutter) 0.7rem;
		overscroll-behavior-inline: contain;
		scroll-snap-type: x proximity;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}
	.filter-toolbar::-webkit-scrollbar { display: none; }
	.filter-button { flex: 0 0 auto; width: auto; white-space: nowrap; scroll-snap-align: start; }
	.media-card-meta { display: grid; justify-content: start; }
	.footer-grid { grid-template-columns: 1fr; }
	.footer-grid > * { grid-column: 1 !important; }
	.footer-bottom { display: block; }
	.footer-dots { margin-top: 0.75rem; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { scroll-behavior: auto !important; animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; }
	.js .reveal-item { opacity: 1 !important; transform: none !important; }
	.ia-hero-photo picture { clip-path: inset(0) !important; }
	.ia-hero-photo img { transform: none !important; }
}

/* IAID gold-standard visual system */
body {
	background: var(--paper);
	color: var(--ink);
}

h1, h2, h3, h4 { color: inherit; }

.header-utility { display: none; }

.site-header,
.site-header.is-scrolled {
	background: rgba(6, 26, 47, 0.94);
	border-bottom-color: rgba(255, 253, 250, 0.1);
	color: var(--paper-bright);
	box-shadow: none;
}

.site-header.is-scrolled { box-shadow: 0 14px 44px rgba(2, 11, 22, 0.18); }
.header-inner { min-height: 86px; }
.scroll-progress { background: linear-gradient(90deg, var(--forest-soft), var(--gold-light)); }
.site-logo-link, .footer-logo-link {
	border-radius: 50%;
	overflow: hidden;
	background: #fff;
}
.site-logo-link { width: 54px; height: 54px; border: 1px solid rgba(226, 189, 95, 0.55); }
.site-logo-link .site-logo,
.footer-logo-link .site-logo {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transform: scale(1.035);
}
.site-logo-link:hover .site-logo, .footer-logo-link:hover .site-logo { transform: scale(1.085); }
.site-name { color: var(--paper-bright); font-family: var(--sans); font-size: 1.25rem; font-weight: 780; letter-spacing: -0.02em; }
.site-tagline { color: rgba(255, 253, 250, 0.55); }
.primary-menu a { color: rgba(255, 253, 250, 0.8); }
.primary-menu a:hover, .primary-menu .current-menu-item a { color: var(--paper-bright); }
.primary-menu a::after { background: var(--gold-light); }
.primary-menu li:last-child a {
	padding: 0.72rem 1rem;
	border-color: var(--gold-light);
	border-radius: 999px;
	background: var(--gold-light);
	color: var(--forest-deep);
}
.primary-menu li:last-child a:hover { border-color: var(--paper-bright); background: var(--paper-bright); color: var(--forest-deep); }
.menu-toggle { border-color: rgba(255, 253, 250, 0.2); border-radius: 50%; color: var(--paper-bright); }
.site-navigation a:focus-visible { outline: 2px solid var(--gold-light); outline-offset: 3px; box-shadow: none; }

.ia-label, .eyebrow, .team-role, .resource-badge { color: var(--gold); }
.ia-button, .button, .resource-button { border-radius: 999px; }
.ia-button-primary {
	border-color: var(--gold-light);
	background: var(--gold-light);
	color: var(--forest-deep);
	box-shadow: 0 12px 30px rgba(226, 189, 95, 0.16);
}
.ia-button-primary:hover { border-color: #f0d785; background: #f0d785; }
.ia-button-gold, .button-secondary, .resource-button { border-color: var(--forest); color: var(--forest); }
.ia-button-gold:hover, .button-secondary:hover, .resource-button:hover { background: var(--forest); color: var(--paper-bright); }

/* Seamless homepage */
.ia-hero {
	isolation: isolate;
	min-height: calc(100svh - 86px);
	background:
		radial-gradient(circle at 88% 16%, rgba(35, 113, 79, 0.32), transparent 30%),
		radial-gradient(circle at 72% 86%, rgba(118, 86, 26, 0.22), transparent 34%),
		linear-gradient(120deg, #06172b 0%, #071e34 52%, #082c35 100%);
}
.ia-hero::before {
	inset: 0;
	width: auto;
	height: auto;
	aspect-ratio: auto;
	background-image:
		linear-gradient(rgba(255,255,255,0.035) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255,255,255,0.035) 1px, transparent 1px);
	background-size: 72px 72px;
	opacity: 1;
	transform: none;
}
.ia-hero::after {
	right: 0;
	bottom: 0;
	width: 100%;
	height: 28%;
	background: linear-gradient(180deg, transparent, rgba(15, 91, 59, 0.1));
	opacity: 1;
	transform: none;
}
.js.site-ready .ia-hero::before, .js.site-ready .ia-hero::after { animation: none; }
.ia-hero-inner {
	position: relative;
	z-index: 2;
	grid-template-columns: minmax(0, 1.12fr) minmax(400px, 0.88fr);
	gap: clamp(3rem, 6vw, 7rem);
	min-height: calc(100svh - 86px);
	padding-block: clamp(4.5rem, 7vw, 7rem) clamp(6.5rem, 9vw, 8rem);
}
.ia-hero-content { align-self: center; }
.ia-hero-badge {
	display: inline-flex;
	align-items: center;
	gap: 1rem;
	padding: 0.48rem 0.6rem;
	border: 1px solid rgba(255, 253, 250, 0.14);
	border-radius: 999px;
	background: rgba(255, 253, 250, 0.06);
	box-shadow: inset 0 1px rgba(255,255,255,0.08);
	color: rgba(255, 253, 250, 0.72);
	font-size: 0.74rem;
}
.ia-hero-badge span {
	padding: 0.48rem 0.8rem;
	border-radius: 999px;
	background: var(--forest-soft);
	color: var(--paper-bright);
	font-weight: 780;
	letter-spacing: 0.02em;
}
.ia-hero-badge strong { padding-right: 0.6rem; font-weight: 650; }
.ia-hero-title {
	max-width: 10.8ch;
	margin-top: clamp(2rem, 4vw, 3.5rem);
	font-size: clamp(4.1rem, 7.25vw, 7.35rem);
	line-height: 0.88;
	letter-spacing: -0.065em;
}
.ia-hero-title span { display: block; color: var(--gold-light); }
.ia-hero-subtitle { max-width: 60ch; margin-top: 2rem; color: rgba(255, 253, 250, 0.72); line-height: 1.65; }
.ia-actions { gap: 0.75rem; }
.ia-button-quiet { border-color: rgba(255, 253, 250, 0.22); color: rgba(255, 253, 250, 0.86); }
.ia-button-quiet:hover { border-color: var(--paper-bright); background: rgba(255,255,255,0.07); }
.ia-hero-assurance {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	margin: 1.8rem 0 0;
	color: rgba(255, 253, 250, 0.48);
	font-size: 0.68rem;
	font-weight: 760;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}
.ia-hero-assurance span { width: 4px; height: 4px; border-radius: 50%; background: var(--gold-light); }
.ia-hero-visual { align-self: center; min-height: 570px; display: grid; grid-template-rows: minmax(0, 1fr) auto; gap: 1.75rem; }
.ia-hero-crest { position: relative; min-height: 455px; display: grid; place-items: center; }
.ia-hero-logo-stage {
	position: relative;
	z-index: 2;
	width: min(76%, 430px);
	aspect-ratio: 1;
	padding: 0;
	border: 1px solid rgba(226, 189, 95, 0.55);
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 32px 80px rgba(0, 0, 0, 0.28), 0 0 0 12px rgba(255,255,255,0.035);
	overflow: hidden;
}
.ia-hero-logo-stage img { width: 100%; height: 100%; object-fit: cover; transform: scale(1.015); }
.ia-hero-orbit {
	position: absolute;
	top: 50%;
	left: 50%;
	width: min(92%, 540px);
	aspect-ratio: 1;
	border: 1px solid rgba(226, 189, 95, 0.18);
	border-radius: 50%;
	transform: translate(-50%, -50%);
}
.ia-hero-orbit::before, .ia-hero-orbit::after { content: ""; position: absolute; border: 1px solid rgba(255,255,255,0.07); border-radius: 50%; }
.ia-hero-orbit::before { inset: 9%; }
.ia-hero-orbit::after { inset: -9%; border-color: rgba(35, 113, 79, 0.18); }
.ia-hero-stats {
	position: relative;
	z-index: 3;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0.75rem;
}
.ia-hero-stats > div {
	padding: 1.2rem 0.85rem;
	border: 1px solid rgba(255,253,250,0.13);
	border-radius: 16px;
	background: rgba(255, 253, 250, 0.08);
	box-shadow: inset 0 1px rgba(255,255,255,0.08);
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
	text-align: center;
}
.ia-hero-stats strong { display: block; color: var(--gold-light); font-family: var(--serif); font-size: clamp(1.75rem, 2.5vw, 2.4rem); font-weight: 600; line-height: 1; }
.ia-hero-stats > div:first-child strong { color: #7fc69a; }
.ia-hero-stats > div:last-child strong { color: var(--paper-bright); }
.ia-hero-stats > div > span { display: block; margin-top: 0.5rem; color: rgba(255,253,250,0.58); font-size: 0.61rem; font-weight: 760; letter-spacing: 0.1em; line-height: 1.4; text-transform: uppercase; }
.ia-hero-scroll {
	position: absolute;
	z-index: 3;
	bottom: 1.5rem;
	left: 50%;
	display: flex;
	align-items: center;
	gap: 0.8rem;
	color: rgba(255,253,250,0.52);
	font-size: 0.62rem;
	font-weight: 760;
	letter-spacing: 0.14em;
	text-decoration: none;
	text-transform: uppercase;
	transform: translateX(-50%);
}
.ia-hero-scroll i { position: relative; width: 1px; height: 28px; background: rgba(255,255,255,0.2); overflow: hidden; }
.ia-hero-scroll i::after { content: ""; position: absolute; inset: 0; background: var(--gold-light); animation: scroll-line 2s ease-in-out infinite; transform: translateY(-100%); }
@keyframes scroll-line { 0% { transform: translateY(-100%); } 55%, 100% { transform: translateY(100%); } }
@keyframes hero-logo-in { from { opacity: 0; transform: scale(0.84) rotate(-3deg); } to { opacity: 1; transform: scale(1) rotate(0); } }
@keyframes hero-stats-in { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
@keyframes orbit-breathe { 0%, 100% { transform: translate(-50%, -50%) scale(0.96); opacity: 0.55; } 50% { transform: translate(-50%, -50%) scale(1.025); opacity: 1; } }
.js.site-ready .ia-hero-logo-stage { animation: hero-logo-in 1.3s 180ms var(--ease) both; }
.js.site-ready .ia-hero-stats { animation: hero-stats-in 1s 520ms var(--ease) both; }
.js.site-ready .ia-hero-orbit { animation: orbit-breathe 8s 1.3s ease-in-out infinite; }

/* Consistent page surfaces and cards */
.ia-section-head h2, .ia-news-copy h2, .ia-join-panel h2 { color: var(--ink); }
.home .ia-section-head {
	position: relative;
	isolation: isolate;
	grid-template-columns: minmax(220px, 0.38fr) minmax(0, 1fr);
	gap: 0;
	align-items: stretch;
	padding: 0;
	border: 1px solid var(--line);
	border-radius: 28px;
	background: var(--paper-bright);
	box-shadow: 0 20px 60px rgba(6,26,47,0.055);
	overflow: hidden;
}
.home .ia-section-head::after {
	content: "";
	position: absolute;
	z-index: 0;
	top: -9rem;
	right: -8rem;
	width: 24rem;
	aspect-ratio: 1;
	border: 1px solid rgba(15,91,59,0.09);
	border-radius: 50%;
	box-shadow: 0 0 0 4rem rgba(15,91,59,0.025), 0 0 0 8rem rgba(226,189,95,0.018);
	pointer-events: none;
}
.home .ia-section-head .ia-label {
	position: relative;
	isolation: isolate;
	grid-row: 1 / span 2;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	min-height: 100%;
	margin: 0;
	padding: clamp(2rem, 4vw, 3.5rem);
	background: linear-gradient(155deg, var(--forest-deep), var(--forest));
	color: var(--gold-light);
	overflow: hidden;
}
.home .ia-chapter-label > span {
	font-size: clamp(0.78rem, 0.9vw, 0.95rem);
	line-height: 1.35;
}
.home .ia-chapter-label > strong {
	display: block;
	margin-top: auto;
	color: rgba(255,253,250,0.16);
	font-family: var(--serif);
	font-size: clamp(5.5rem, 9vw, 9rem);
	font-weight: 500;
	letter-spacing: -0.065em;
	line-height: 0.78;
}
.home .ia-chapter-label > b {
	display: block;
	max-width: 12ch;
	margin-top: 1.25rem;
	color: var(--paper-bright);
	font-family: var(--serif);
	font-size: clamp(1.85rem, 2.6vw, 3rem);
	font-weight: 500;
	letter-spacing: -0.035em;
	line-height: 1.02;
	text-transform: none;
}
.home .ia-chapter-label > small {
	display: block;
	max-width: 27ch;
	margin-top: 1rem;
	margin-bottom: 2.1rem;
	color: rgba(255,253,250,0.66);
	font-family: var(--sans);
	font-size: clamp(0.82rem, 1vw, 0.98rem);
	font-weight: 520;
	letter-spacing: 0;
	line-height: 1.55;
	text-transform: none;
}
.home .ia-section-head .ia-label::before {
	content: "";
	position: absolute;
	z-index: -1;
	right: -5rem;
	bottom: -6rem;
	width: 14rem;
	aspect-ratio: 1;
	border: 1px solid rgba(226,189,95,0.28);
	border-radius: 50%;
	box-shadow: 0 0 0 2.4rem rgba(226,189,95,0.055), 0 0 0 4.8rem rgba(255,255,255,0.035);
}
.home .ia-section-head .ia-label::after {
	content: "";
	position: absolute;
	left: clamp(2rem, 4vw, 3.5rem);
	bottom: clamp(2rem, 4vw, 3.5rem);
	width: 2.5rem;
	height: 2px;
	background: linear-gradient(90deg, var(--gold-light), transparent);
}
.home .ia-section-head h2 {
	position: relative;
	z-index: 1;
	max-width: 19ch;
	padding: clamp(2.5rem, 4.5vw, 4.5rem) clamp(2rem, 5vw, 5rem) 0;
	font-size: clamp(2.8rem, 4.6vw, 4.7rem);
}
.home .ia-section-head > p {
	position: relative;
	z-index: 1;
	max-width: 72ch;
	margin: 1.5rem 0 0;
	padding: 0 clamp(2rem, 5vw, 5rem) clamp(2.5rem, 4.5vw, 4.5rem);
}
.ia-audience, .ia-work, .ia-news, .ia-page-content { background: var(--paper-bright); }
.ia-audience { padding-top: calc(var(--section) + 1rem); }
.ia-audience-grid { gap: 1rem; border: 0; }
.ia-editorial-card {
	padding: 2rem;
	border: 1px solid var(--line) !important;
	border-radius: 18px;
	background: var(--paper);
}
.ia-editorial-card h3 { color: var(--ink); }
.ia-editorial-card > span { color: var(--forest); }
.ia-mission { padding-block: var(--section); background: var(--paper); }
.ia-split {
	width: min(calc(100% - (var(--gutter) * 2)), var(--wrap));
	margin-inline: auto;
	border: 1px solid rgba(255,255,255,0.08);
	border-radius: 28px;
	background: var(--forest-deep);
	box-shadow: 0 24px 70px rgba(6, 26, 47, 0.13);
	overflow: hidden;
}
.ia-statement { padding: clamp(3rem, 6vw, 5.5rem); background: linear-gradient(145deg, var(--forest), #0a4632); }
.ia-statement-light { background: linear-gradient(145deg, #0b263c, var(--forest-deep)); color: var(--paper-bright); }
.ia-statement-light .ia-label { color: var(--gold-light); }
.ia-statement-light p { color: rgba(255,253,250,0.68); }
.ia-work-grid, .ia-story-track, .ia-news-grid { border-color: var(--line); }
.ia-work-card { transition: background 300ms ease, transform 300ms var(--ease); }
.ia-work-card:hover { background: rgba(15, 91, 59, 0.035); transform: translateY(-3px); }
.ia-policy { background: linear-gradient(135deg, var(--forest-deep), #092940); }
.ia-policy-copy .ia-label { color: var(--gold-light); }
.ia-policy-card h3::before { content: ""; display: inline-block; width: 0.5rem; height: 0.5rem; margin-right: 0.8rem; border-radius: 50%; background: var(--forest-soft); }
.ia-story { background: var(--paper); }
.ia-news { border-top: 1px solid var(--line); }
.ia-news-card > span { color: var(--forest); }
.ia-join { background: var(--paper); }
.ia-join-panel { padding: clamp(2rem, 4vw, 3.5rem); border: 1px solid var(--line); border-radius: 24px; background: var(--paper-bright); box-shadow: 0 20px 60px rgba(6,26,47,0.07); }

.ia-page-hero, .ia-page-hero-dark, .ia-page-hero-media {
	min-height: auto;
	display: grid;
	align-items: center;
	padding-block: clamp(3rem, 5vw, 5rem);
	background:
		radial-gradient(circle at 88% 22%, rgba(15, 91, 59, 0.32), transparent 30%),
		linear-gradient(120deg, var(--forest-deep), #082a3c);
	color: var(--paper-bright);
}
.ia-page-hero::before { content: ""; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,0.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.025) 1px, transparent 1px); background-size: 72px 72px; }
.ia-page-hero::after, .ia-page-hero-dark::after, .ia-page-hero-media::after { border-color: rgba(226,189,95,0.24); box-shadow: 0 0 0 3.5rem rgba(226,189,95,0.05), 0 0 0 7rem rgba(15,91,59,0.07); }
.ia-page-hero .ia-label, .ia-page-hero-dark .ia-label, .ia-page-hero-media .ia-label { color: var(--gold-light); }
.ia-page-hero-inner > p, .ia-page-copy, .ia-page-hero-media .ia-page-copy, .ia-page-hero-media .ia-page-copy .iaid-page-intro p { color: rgba(255,253,250,0.7); }
.ia-page-hero-inner {
	grid-template-columns: minmax(220px, 0.34fr) minmax(0, 1fr);
	gap: 0;
	align-items: stretch;
	min-height: clamp(330px, 31vw, 430px);
	padding: 0;
	border: 1px solid rgba(255,253,250,0.12);
	border-radius: 28px;
	background: rgba(255,253,250,0.035);
	box-shadow: 0 28px 80px rgba(2,11,22,0.18);
	overflow: hidden;
}
.ia-page-hero-inner .ia-label {
	position: relative;
	isolation: isolate;
	grid-row: 1 / span 3;
	min-height: 100%;
	margin: 0;
	padding: clamp(2rem, 4vw, 3.5rem);
	background: linear-gradient(155deg, rgba(15,91,59,0.94), rgba(6,26,47,0.88));
	overflow: hidden;
}
.ia-page-hero-inner .ia-label::before {
	content: "";
	position: absolute;
	z-index: -1;
	right: -5.5rem;
	bottom: -6rem;
	width: 15rem;
	aspect-ratio: 1;
	border: 1px solid rgba(226,189,95,0.32);
	border-radius: 50%;
	box-shadow: 0 0 0 2.7rem rgba(226,189,95,0.06), 0 0 0 5.4rem rgba(255,255,255,0.035);
}
.ia-page-hero-inner .ia-label::after {
	content: "";
	position: absolute;
	left: clamp(2rem, 4vw, 3.5rem);
	bottom: clamp(2rem, 4vw, 3.5rem);
	width: 2.5rem;
	height: 2px;
	background: linear-gradient(90deg, var(--gold-light), transparent);
}
.ia-page-hero-inner h1 {
	align-self: end;
	max-width: 18ch;
	padding: clamp(2.5rem, 5vw, 4.5rem) clamp(2rem, 5vw, 5rem) 0;
}
.ia-page-hero-inner > p, .ia-page-hero-inner > .ia-page-copy {
	align-self: start;
	max-width: 76ch;
	margin: 1.35rem 0 0;
	padding: 0 clamp(2rem, 5vw, 5rem) clamp(2.5rem, 4.5vw, 4.5rem);
}
.error404 .error-home-link {
	margin: 0 clamp(2rem, 5vw, 5rem) clamp(2.5rem, 4.5vw, 4.5rem);
	border-color: var(--gold-light);
	background: var(--gold-light);
	color: var(--forest-deep);
}
.error404 .error-home-link:hover {
	border-color: var(--paper-bright);
	background: var(--paper-bright);
	color: var(--forest-deep);
}
.ia-page-content { background: var(--paper); }
.iaid-page-intro { position: relative; padding: 1.9rem 2.2rem; border: 1px solid var(--line); border-left: 5px solid var(--forest); border-radius: 0 18px 18px 0; background: linear-gradient(115deg, rgba(15,91,59,0.04), var(--paper-bright) 62%); box-shadow: 0 14px 38px rgba(6,26,47,0.035); }
.iaid-page-intro p { color: var(--ink-soft); }
.ia-page-copy .iaid-page-intro { padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.resource-hub-intro { max-width: 100%; }
.compact-section { border-color: var(--line); }
.compact-section h2 { color: var(--ink); }

.ia-page-about-content .ia-prose, .ia-timeline-page .ia-prose { display: block; }
.ia-page-about-content .iaid-page-intro, .ia-timeline-page .iaid-page-intro { max-width: 78ch; margin-bottom: clamp(4rem, 7vw, 6rem); }
.story-transition { margin-top: 0; color: var(--forest); }
.ia-page-advocacy .ia-page-content { background: var(--paper); color: var(--ink); }
.advocacy-dashboard-strip { gap: 0.75rem; border: 0; }
.advocacy-dashboard-strip > div {
	border: 1px solid var(--line) !important;
	border-radius: 14px;
	background: var(--paper-bright);
}
.advocacy-dashboard-strip strong { color: var(--forest); }
.advocacy-dashboard-strip span { color: var(--ink-soft); }

.advocacy-grid, .committee-grid, .media-grid, .resource-grid, .two-column-cards, .value-grid, .committee-leadership-grid, .county-chair-grid, .leadership-officers, .leadership-groups {
	gap: 1rem;
	border: 0;
}
.advocacy-grid article, .committee-grid article, .media-card, .resource-card, .feature-card, .value-grid article, .leadership-card {
	position: relative;
	padding: clamp(1.6rem, 3vw, 2.25rem) !important;
	border: 1px solid var(--line) !important;
	border-top: 3px solid var(--forest) !important;
	border-radius: 18px;
	background: linear-gradient(180deg, rgba(15,91,59,0.045), var(--paper-bright) 34%);
	box-shadow: 0 12px 34px rgba(6,26,47,0.035);
	transition: border-color 280ms ease, box-shadow 280ms ease, transform 280ms var(--ease);
}
.advocacy-grid article:nth-child(3n + 2), .committee-grid article:nth-child(3n + 2), .media-card:nth-child(3n + 2), .resource-card:nth-child(3n + 2), .feature-card:nth-child(3n + 2), .value-grid article:nth-child(3n + 2), .leadership-card:nth-child(3n + 2) {
	border-top-color: var(--gold) !important;
	background: linear-gradient(180deg, rgba(226,189,95,0.07), var(--paper-bright) 34%);
}
.advocacy-grid article:nth-child(3n), .committee-grid article:nth-child(3n), .media-card:nth-child(3n), .resource-card:nth-child(3n), .feature-card:nth-child(3n), .value-grid article:nth-child(3n), .leadership-card:nth-child(3n) {
	border-top-color: #284a64 !important;
	background: linear-gradient(180deg, rgba(40,74,100,0.055), var(--paper-bright) 34%);
}
.committee-grid { counter-reset: iaid-committee; }
.committee-grid article { counter-increment: iaid-committee; padding-right: clamp(3.8rem, 6vw, 5.5rem) !important; }
.committee-grid article::before {
	content: counter(iaid-committee, decimal-leading-zero);
	position: absolute;
	top: 1.6rem;
	right: 1.7rem;
	color: var(--gold);
	font-size: 0.66rem;
	font-weight: 820;
	letter-spacing: 0.12em;
}
.advocacy-grid article:hover, .committee-grid article:hover, .media-card:hover, .resource-card:hover, .feature-card:hover, .value-grid article:hover, .leadership-card:hover {
	border-color: rgba(15,91,59,0.32) !important;
	background: var(--paper-bright);
	box-shadow: 0 18px 48px rgba(6,26,47,0.08);
	transform: translateY(-4px);
}
.advocacy-grid p, .committee-grid p, .media-card p, .resource-card p, .feature-card p { color: var(--ink-soft); }
.committee-grid h3, .media-card .media-source { color: var(--forest); }
.editorial-break { margin-bottom: clamp(4rem, 7vw, 6rem); }
.editorial-break picture { border-radius: 24px; box-shadow: 0 24px 70px rgba(6,26,47,0.12); }
.editorial-figure figcaption { color: var(--ink-soft); }
.media-search-input { border-radius: 12px; background: var(--paper-bright); }
.filter-button { min-width: 44px; min-height: 44px; padding-inline: 0.9rem; border-radius: 999px; }
.filter-button:hover, .filter-button.is-active { border-color: var(--forest); background: var(--forest); }
.media-card .button, .resource-button {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	margin-top: auto;
	padding: 0.62rem 0.9rem;
	border: 1px solid rgba(15, 91, 59, 0.28);
	border-radius: 999px;
	color: var(--forest);
	text-decoration: none;
}
.media-card .button:hover, .resource-button:hover { border-color: var(--forest); background: var(--forest); color: var(--paper-bright); }
.resource-category { border-color: var(--line); }
.email-contact-card { position: relative; isolation: isolate; padding: clamp(2rem, 4vw, 3.5rem); border: 1px solid var(--line); border-left: 5px solid var(--gold); border-radius: 20px; background: var(--paper-bright); box-shadow: 0 18px 50px rgba(6,26,47,0.06); overflow: hidden; }
.email-contact-card::after {
	content: "";
	position: absolute;
	z-index: -1;
	top: 50%;
	right: -5rem;
	width: clamp(12rem, 22vw, 20rem);
	aspect-ratio: 1;
	border: 1px solid rgba(15,91,59,0.12);
	border-radius: 50%;
	box-shadow: 0 0 0 2.8rem rgba(15,91,59,0.035), 0 0 0 5.6rem rgba(226,189,95,0.025);
	transform: translateY(-50%);
}
.email-link { color: var(--forest); }
.disclaimer-box, .media-empty-state { border-left-color: var(--gold); border-radius: 0 12px 12px 0; background: var(--paper-deep); }

.footer-cta {
	position: relative;
	overflow: hidden;
	border-bottom: 1px solid rgba(226,189,95,0.38);
	background:
		radial-gradient(circle at 86% 50%, rgba(226,189,95,0.12), transparent 24%),
		linear-gradient(120deg, var(--forest), #0a4934);
}
.footer-cta::after {
	content: "";
	position: absolute;
	right: 7%;
	top: 50%;
	width: clamp(12rem, 22vw, 22rem);
	aspect-ratio: 1;
	border: 1px solid rgba(226,189,95,0.16);
	border-radius: 50%;
	box-shadow: 0 0 0 3rem rgba(226,189,95,0.035), 0 0 0 6rem rgba(255,255,255,0.018);
	transform: translateY(-50%);
}
.footer-cta-inner { position: relative; z-index: 1; }
.footer-cta .button {
	border-color: var(--gold-light);
	background: var(--gold-light);
	color: var(--forest-deep);
	box-shadow: 0 14px 34px rgba(2,17,13,0.18);
}
.footer-cta .button:hover { border-color: var(--paper-bright); background: var(--paper-bright); color: var(--forest-deep); }
.site-footer {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	background:
		radial-gradient(circle at 12% 32%, rgba(15,91,59,0.3), transparent 26%),
		radial-gradient(circle at 92% 14%, rgba(226,189,95,0.08), transparent 22%),
		linear-gradient(115deg, #061a2f 0%, #071d31 55%, #08283a 100%);
}
.site-footer::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0 0 auto;
	height: 3px;
	background: linear-gradient(90deg, var(--forest-soft), var(--gold-light) 52%, rgba(226,189,95,0));
}
.site-footer::after {
	content: "";
	position: absolute;
	z-index: -1;
	right: -8rem;
	top: 5rem;
	width: 25rem;
	aspect-ratio: 1;
	border: 1px solid rgba(226,189,95,0.075);
	border-radius: 50%;
	box-shadow: 0 0 0 4rem rgba(15,91,59,0.04), 0 0 0 8rem rgba(226,189,95,0.018);
}
.footer-grid { position: relative; z-index: 1; }
.footer-grid > div:not(.footer-brand) {
	position: relative;
	padding-left: clamp(1.4rem, 2.5vw, 2.3rem);
	border-left: 1px solid rgba(226,189,95,0.16);
}
.footer-logo-link {
	width: 82px;
	height: 82px;
	border: 2px solid var(--gold-light);
	box-shadow: 0 0 0 7px rgba(15,91,59,0.3), 0 16px 36px rgba(0,0,0,0.2);
}
.footer-brand .site-logo { width: 100%; height: 100%; }
.footer-title { color: var(--gold-light); }
.site-footer h2 { color: var(--gold-light); }
.site-footer h2::after {
	content: "";
	display: block;
	width: 2.25rem;
	height: 2px;
	margin-top: 0.75rem;
	background: linear-gradient(90deg, var(--gold-light), var(--forest-soft));
}
.site-footer a { text-decoration-color: rgba(226,189,95,0.5); text-underline-offset: 0.2em; }
.site-footer a:hover { color: var(--gold-light); text-decoration-color: var(--gold-light); }
.footer-menu a { color: rgba(255,253,250,0.9); }
.footer-list li { position: relative; padding-left: 1rem; }
.footer-list li::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0.7em;
	width: 0.34rem;
	height: 0.34rem;
	border-radius: 50%;
	background: var(--gold-light);
	box-shadow: 0 0 0 3px rgba(15,91,59,0.28);
}
.footer-note { color: rgba(255,253,250,0.58); }
.footer-bottom { position: relative; z-index: 1; border-top-color: rgba(226,189,95,0.2); }
.footer-dots { opacity: 1; }

@media (max-width: 1180px) {
	.ia-hero-inner { grid-template-columns: minmax(0, 1fr) minmax(360px, 0.72fr); }
	.ia-hero-title { font-size: clamp(3.8rem, 7vw, 5.8rem); }
}

@media (max-width: 980px) {
	.site-navigation { top: 86px; background: rgba(6, 26, 47, 0.99); color: var(--paper-bright); }
	.primary-menu li { border-bottom-color: rgba(255,255,255,0.1); }
	.primary-menu a { color: var(--paper-bright); }
	.ia-hero, .ia-hero-inner { min-height: auto; }
	.ia-hero-inner { grid-template-columns: 1fr; padding-top: 5rem; }
	.ia-hero-title { max-width: 11ch; }
	.ia-hero-visual { width: min(100%, 680px); min-height: 560px; margin-inline: auto; }
	.ia-hero-crest { min-height: 430px; }
	.ia-hero-logo-stage { width: min(68%, 400px); }
	.ia-split { grid-template-columns: 1fr; }
	.home .ia-section-head { grid-template-columns: 1fr; border-radius: 22px; }
	.home .ia-section-head .ia-label {
		grid-row: auto;
		display: grid;
		grid-template-columns: minmax(0, 1fr) auto;
		align-content: center;
		min-height: 190px;
		padding: 1.6rem;
	}
	.home .ia-chapter-label > span { align-self: end; }
	.home .ia-chapter-label > strong { grid-column: 2; grid-row: 1 / span 3; align-self: center; margin: 0 0 0 1.5rem; font-size: clamp(5rem, 14vw, 7.5rem); }
	.home .ia-chapter-label > b { grid-column: 1; margin-top: 0.6rem; font-size: clamp(1.7rem, 5vw, 2.5rem); }
	.home .ia-chapter-label > small { grid-column: 1; max-width: 44ch; margin: 0.65rem 0 0; }
	.home .ia-section-head .ia-label::after { left: 1.6rem; bottom: 1.6rem; }
	.home .ia-section-head h2 { padding: 2.2rem 1.6rem 0; }
	.home .ia-section-head > p { margin-top: 1.15rem; padding: 0 1.6rem 2.2rem; }
	.ia-page-hero-inner { grid-template-columns: 1fr; min-height: auto; border-radius: 22px; }
	.ia-page-hero-inner .ia-label { grid-row: auto; min-height: 132px; padding: 1.6rem; }
	.ia-page-hero-inner .ia-label::after { left: 1.6rem; bottom: 1.6rem; }
	.ia-page-hero-inner h1 { align-self: start; padding: 2.2rem 1.6rem 0; }
	.ia-page-hero-inner > p, .ia-page-hero-inner > .ia-page-copy { margin-top: 1.15rem; padding: 0 1.6rem 2.2rem; }
	.error404 .error-home-link { grid-column: 1; margin: 0 1.6rem 2.2rem; }
}

@media (max-width: 760px) {
	.header-inner { min-height: 74px; }
	.site-navigation { top: 74px; }
	.site-logo-link { width: 48px; height: 48px; }
	.site-logo-link .site-logo { width: 100%; height: 100%; }
	.ia-hero-inner { padding-block: 3.5rem 6rem; }
	.ia-hero-badge { font-size: 0.66rem; }
	.ia-hero-title { margin-top: 2.5rem; font-size: clamp(3.15rem, 15vw, 5rem); line-height: 0.91; }
	.ia-actions { grid-template-columns: 1fr; }
	.ia-hero-assurance { flex-wrap: wrap; }
	.ia-hero-visual { min-height: auto; }
	.ia-hero-crest { min-height: 360px; }
	.ia-hero-logo-stage { width: min(76%, 330px); }
	.ia-hero-orbit { width: min(90%, 420px); }
	.ia-hero-stats { gap: 0.45rem; }
	.ia-hero-stats > div { padding: 1rem 0.4rem; border-radius: 12px; }
	.ia-hero-stats > div > span { font-size: 0.52rem; }
	.ia-hero-scroll { display: none; }
	.ia-page-hero { min-height: auto; padding-block: 2.5rem; }
	.ia-statement { padding: 2.5rem 1.5rem; }
	.ia-join-panel { border-radius: 18px; }
	.advocacy-dashboard-strip { gap: 0.6rem; }
	.footer-grid > div:not(.footer-brand) { padding-left: 1.25rem; }
}

@media (max-width: 430px) {
	.ia-hero-badge { display: grid; gap: 0.35rem; width: fit-content; border-radius: 18px; }
	.ia-hero-badge strong { padding: 0.2rem 0.7rem 0.35rem; }
	.ia-hero-title { font-size: clamp(2.85rem, 15vw, 4.15rem); }
	.ia-hero-subtitle { font-size: 0.97rem; }
	.ia-hero-visual { min-height: 390px; }
	.ia-hero-logo-stage { width: min(78%, 270px); }
	.ia-hero-crest { min-height: 300px; }
	.ia-hero-stats strong { font-size: 1.55rem; }
	.ia-hero-stats > div > span { letter-spacing: 0.06em; }
	.ia-hero-assurance { font-size: 0.6rem; }
	.home .ia-section-head .ia-label { min-height: 205px; }
	.home .ia-chapter-label > strong { align-self: start; font-size: 4.6rem; }
	.home .ia-chapter-label > b { max-width: 10ch; font-size: 1.65rem; }
	.home .ia-chapter-label > small { max-width: 27ch; padding-right: 1rem; font-size: 0.78rem; }
}

@media (prefers-reduced-motion: reduce) {
	.ia-hero-scroll i::after, .js.site-ready .ia-hero-logo-stage, .js.site-ready .ia-hero-stats, .js.site-ready .ia-hero-orbit { animation: none !important; }
}

/* Premium visual-depth pass */
.ia-audience {
	background:
		radial-gradient(circle at 8% 8%, rgba(15,91,59,0.09), transparent 25%),
		radial-gradient(circle at 92% 76%, rgba(226,189,95,0.1), transparent 25%),
		var(--paper-bright);
}
.ia-audience-grid { gap: 1rem; margin-top: clamp(2.5rem, 5vw, 4.5rem); }
.ia-editorial-card {
	position: relative;
	isolation: isolate;
	min-height: 285px;
	padding: clamp(2rem, 3vw, 2.75rem) !important;
	border: 0 !important;
	border-radius: 22px;
	box-shadow: 0 20px 52px rgba(6,26,47,0.1);
	overflow: hidden;
	transition: transform 360ms var(--ease), box-shadow 360ms ease;
}
.ia-editorial-card + .ia-editorial-card { border-left: 0; }
.ia-editorial-card::after {
	content: "";
	position: absolute;
	z-index: -1;
	right: -4rem;
	bottom: -5rem;
	width: 13rem;
	aspect-ratio: 1;
	border: 1px solid currentColor;
	border-radius: 50%;
	box-shadow: 0 0 0 2.5rem rgba(255,255,255,0.045), 0 0 0 5rem rgba(255,255,255,0.025);
	opacity: 0.18;
	transition: transform 500ms var(--ease);
}
.ia-editorial-card:nth-child(1) { background: linear-gradient(145deg, #0f5b3b, #083e31); color: var(--paper-bright); }
.ia-editorial-card:nth-child(2) { background: linear-gradient(145deg, #f0d785, var(--gold-light)); color: var(--forest-deep); }
.ia-editorial-card:nth-child(3) { background: linear-gradient(145deg, #0a2941, var(--forest-deep)); color: var(--paper-bright); }
.ia-editorial-card > span {
	color: inherit !important;
	font-family: var(--serif);
	font-size: clamp(3.5rem, 5.5vw, 5.8rem);
	font-weight: 500;
	letter-spacing: -0.06em;
	line-height: 0.8;
	opacity: 0.2;
}
.ia-editorial-card h3 { position: relative; z-index: 1; max-width: 14ch; margin-top: 2.2rem; color: inherit; font-size: clamp(1.7rem, 2.5vw, 2.4rem); }
.ia-editorial-card p { position: relative; z-index: 1; color: rgba(255,253,250,0.72); }
.ia-editorial-card:nth-child(2) p { color: rgba(6,26,47,0.72); }
.ia-editorial-card:hover { transform: translateY(-8px); box-shadow: 0 28px 68px rgba(6,26,47,0.16); }
.ia-editorial-card:hover::after { transform: translate(-0.8rem, -0.6rem) scale(1.08); }

.ia-hero-stats > div { position: relative; overflow: hidden; }
.ia-hero-stats > div:nth-child(1) { box-shadow: inset 0 3px 0 #67b486; }
.ia-hero-stats > div:nth-child(2) { box-shadow: inset 0 3px 0 var(--gold-light); }
.ia-hero-stats > div:nth-child(3) { box-shadow: inset 0 3px 0 rgba(255,253,250,0.75); }
.ia-hero-stats > div:nth-child(1) strong { color: #7bc99d; }
.ia-hero-stats > div:nth-child(2) strong { color: var(--gold-light); }
.ia-hero-stats > div:nth-child(3) strong { color: var(--paper-bright); }

.ia-statement {
	background:
		radial-gradient(circle at 88% 16%, rgba(15,91,59,0.3), transparent 28%),
		linear-gradient(135deg, var(--forest-deep), #0a3140);
}
.ia-statement-light {
	border-left: 1px solid rgba(226,189,95,0.2);
	background:
		radial-gradient(circle at 88% 12%, rgba(226,189,95,0.2), transparent 27%),
		linear-gradient(145deg, #fffdfa, #f5f0e4);
	color: var(--ink);
}
.ia-statement-light h2 { color: var(--ink); }
.ia-statement-light .ia-label { color: var(--gold); }
.ia-statement-light p { color: var(--ink-soft); }

.ia-work {
	background:
		radial-gradient(circle at 92% 10%, rgba(15,91,59,0.08), transparent 23%),
		linear-gradient(180deg, var(--paper-bright), #f1f4ef 100%);
}
.ia-work-grid {
	display: grid;
	grid-template-columns: repeat(12, minmax(0, 1fr));
	gap: 1rem;
	margin-top: clamp(2.5rem, 5vw, 4.5rem);
	border: 0;
	counter-reset: iaid-work;
}
.ia-work-card,
.ia-work-card:nth-child(even) {
	grid-column: span 6;
	position: relative;
	isolation: isolate;
	min-height: 245px;
	padding: clamp(2rem, 3.4vw, 3rem) !important;
	border: 1px solid rgba(6,26,47,0.08);
	border-radius: 22px;
	box-shadow: 0 18px 46px rgba(6,26,47,0.07);
	overflow: hidden;
	counter-increment: iaid-work;
	transition: transform 360ms var(--ease), box-shadow 360ms ease, border-color 360ms ease;
}
.ia-work-card:nth-child(even) { border-left: 1px solid rgba(6,26,47,0.08); }
.ia-work-card::before {
	content: counter(iaid-work, decimal-leading-zero);
	position: absolute;
	z-index: 1;
	top: 1.7rem;
	right: 2rem;
	font-family: var(--serif);
	font-size: clamp(3.2rem, 5vw, 5rem);
	font-weight: 500;
	letter-spacing: -0.06em;
	line-height: 1;
	opacity: 0.13;
}
.ia-work-card::after {
	content: "";
	position: absolute;
	z-index: -1;
	right: -5rem;
	bottom: -6rem;
	width: 15rem;
	aspect-ratio: 1;
	border: 1px solid currentColor;
	border-radius: 50%;
	box-shadow: 0 0 0 3rem rgba(255,255,255,0.04), 0 0 0 6rem rgba(255,255,255,0.022);
	opacity: 0.16;
	transition: transform 500ms var(--ease);
}
.ia-work-card h3, .ia-work-card p { position: relative; z-index: 1; max-width: 78%; }
.ia-work-card h3 { color: inherit; font-size: clamp(1.65rem, 2.35vw, 2.35rem); }
.ia-work-card:nth-child(1) { background: linear-gradient(145deg, var(--forest), #09412f); color: var(--paper-bright); }
.ia-work-card:nth-child(2) { background: linear-gradient(145deg, #f1da91, var(--gold-light)); color: var(--forest-deep); }
.ia-work-card:nth-child(3) { background: linear-gradient(145deg, #0a2942, var(--forest-deep)); color: var(--paper-bright); }
.ia-work-card:nth-child(4) { background: linear-gradient(145deg, #e7f1eb, #f8faf6); color: var(--ink); }
.ia-work-card:nth-child(5) { background: linear-gradient(145deg, #fbf4df, #fffdf8); color: var(--ink); }
.ia-work-card:nth-child(6) { background: linear-gradient(145deg, #14734e, #0c5039); color: var(--paper-bright); }
.ia-work-card:nth-child(7) { grid-column: 1 / -1; min-height: 215px; background: linear-gradient(115deg, var(--forest-deep), #0b3440 58%, var(--forest)); color: var(--paper-bright); }
.ia-work-card:nth-child(1) p, .ia-work-card:nth-child(3) p, .ia-work-card:nth-child(6) p, .ia-work-card:nth-child(7) p { color: rgba(255,253,250,0.72); }
.ia-work-card:nth-child(2) p { color: rgba(6,26,47,0.72); }
.ia-work-card:hover { border-color: rgba(226,189,95,0.52); background-color: inherit; box-shadow: 0 26px 64px rgba(6,26,47,0.14); transform: translateY(-7px); }
.ia-work-card:hover::after { transform: translate(-1rem, -0.75rem) scale(1.08); }

.ia-policy {
	background:
		radial-gradient(circle at 16% 14%, rgba(15,91,59,0.35), transparent 30%),
		radial-gradient(circle at 88% 82%, rgba(226,189,95,0.1), transparent 25%),
		linear-gradient(135deg, var(--forest-deep), #071f35);
}
.ia-policy-grid { display: grid; gap: 0.7rem; border: 0; }
.ia-policy-card {
	padding: 1.35rem 1.5rem;
	border: 1px solid rgba(255,255,255,0.09);
	border-radius: 14px;
	background: rgba(255,255,255,0.035);
	transition: border-color 280ms ease, background 280ms ease, transform 280ms var(--ease);
}
.ia-policy-card:nth-child(2n) { border-color: rgba(226,189,95,0.16); background: rgba(226,189,95,0.045); }
.ia-policy-card:hover { border-color: rgba(226,189,95,0.45); background: rgba(255,255,255,0.065); transform: translateX(7px); }
.ia-policy-layout { grid-template-columns: minmax(0, 0.62fr) minmax(0, 1.18fr); }
.ia-policy-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ia-policy-card { min-height: 185px; padding: 1.55rem 1.6rem; }
.ia-policy-card:last-child:nth-child(odd) { grid-column: 1 / -1; min-height: 150px; }
.ia-policy-card h3 { max-width: 18ch; color: var(--paper-bright); font-family: var(--serif); font-size: clamp(1.35rem, 2vw, 1.85rem); font-weight: 600; }
.ia-policy-card:nth-child(3n + 1) h3 { color: #7bc99d; }
.ia-policy-card:nth-child(3n + 2) h3 { color: var(--gold-light); }
.ia-policy-card:nth-child(3n) h3 { color: var(--paper-bright); }
.ia-policy-card h3::before { display: block; width: 2rem; height: 2px; margin: 0 0 1rem; border-radius: 0; background: currentColor; }

.ia-story {
	background:
		radial-gradient(circle at 5% 75%, rgba(226,189,95,0.11), transparent 24%),
		linear-gradient(180deg, var(--paper), #f3f1ea);
}
.ia-story-track { gap: 1rem; margin-top: clamp(2.5rem, 5vw, 4rem); border: 0; }
.ia-story-step,
.ia-story-step + .ia-story-step {
	min-height: 270px;
	padding: 1.8rem !important;
	border: 1px solid var(--line);
	border-radius: 18px;
	background: var(--paper-bright);
	box-shadow: 0 16px 40px rgba(6,26,47,0.055);
}
.ia-story-step:nth-child(2) { background: linear-gradient(145deg, #ecf5ef, #f8faf7); }
.ia-story-step:nth-child(3) { border-color: rgba(255,255,255,0.08); background: linear-gradient(145deg, var(--forest), #0a4331); color: var(--paper-bright); }
.ia-story-step:nth-child(4) { background: linear-gradient(145deg, #f3dda0, #f8eabd); color: var(--forest-deep); }
.ia-story-step > span { display: inline-grid; place-items: center; width: 2.35rem; height: 2.35rem; border: 1px solid currentColor; border-radius: 50%; color: var(--forest); }
.ia-story-step:nth-child(3) > span { color: var(--gold-light); }
.ia-story-step h3 { color: inherit; }
.ia-story-step:nth-child(3) p { color: rgba(255,253,250,0.72); }
.ia-story-step:nth-child(4) p { color: rgba(6,26,47,0.72); }

.ia-news {
	background:
		radial-gradient(circle at 88% 20%, rgba(15,91,59,0.075), transparent 28%),
		var(--paper-bright);
}
.ia-news-grid { display: grid; gap: 0.7rem; border: 0; }
.ia-news-card {
	padding: 1.45rem 1.6rem;
	border: 1px solid var(--line);
	border-left: 4px solid var(--forest);
	border-radius: 0 14px 14px 0;
	background: linear-gradient(110deg, rgba(15,91,59,0.055), var(--paper-bright) 48%);
}
.ia-news-card:nth-child(2) { border-left-color: var(--gold); background: linear-gradient(110deg, rgba(226,189,95,0.1), var(--paper-bright) 48%); }
.ia-news-card:nth-child(3) { border-left-color: #284a64; background: linear-gradient(110deg, rgba(40,74,100,0.075), var(--paper-bright) 48%); }
.ia-join { background: linear-gradient(180deg, #edf1eb, var(--paper)); }
.ia-join-panel {
	position: relative;
	isolation: isolate;
	padding: clamp(2.5rem, 5vw, 4.5rem);
	border: 1px solid rgba(226,189,95,0.2);
	background:
		radial-gradient(circle at 92% 20%, rgba(226,189,95,0.13), transparent 25%),
		linear-gradient(120deg, var(--forest-deep), #0a3340);
	color: var(--paper-bright);
	overflow: hidden;
}
.ia-join-panel h2 { color: var(--paper-bright); }
.ia-join-panel p { color: rgba(255,253,250,0.7); }
.ia-join-panel .ia-label { color: var(--gold-light); }
.ia-join-panel .ia-button { border-color: var(--gold-light); background: var(--gold-light); color: var(--forest-deep); }

.ia-page-content {
	background:
		radial-gradient(circle at 96% 8%, rgba(15,91,59,0.055), transparent 22%),
		radial-gradient(circle at 3% 64%, rgba(226,189,95,0.055), transparent 20%),
		var(--paper);
}
.ia-page-about-content .compact-section:not(.leadership-section):not(.values-section),
.ia-register-content .compact-section {
	margin-bottom: 1rem;
	padding: clamp(2rem, 4vw, 3.2rem);
	border: 1px solid var(--line);
	border-left: 5px solid var(--forest);
	border-radius: 0 20px 20px 0;
	background: linear-gradient(115deg, rgba(15,91,59,0.055), var(--paper-bright) 48%);
	box-shadow: 0 14px 40px rgba(6,26,47,0.04);
}
.ia-page-about-content .compact-section:nth-of-type(3n),
.ia-register-content .compact-section:nth-of-type(3n) { border-left-color: var(--gold); background: linear-gradient(115deg, rgba(226,189,95,0.09), var(--paper-bright) 48%); }

.advocacy-movement-story {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(320px, 0.8fr);
	max-width: none;
	overflow: hidden;
	margin: clamp(2.75rem, 5vw, 4.5rem) 0;
	padding: 0;
	border: 1px solid var(--line);
	border-top: 4px solid var(--gold);
	border-radius: 24px;
	background:
		radial-gradient(circle at 92% 18%, rgba(226,189,95,0.16), transparent 25%),
		linear-gradient(135deg, rgba(15,91,59,0.08), var(--paper-bright) 58%);
	box-shadow: 0 22px 60px rgba(6,26,47,0.08);
}
.advocacy-story-copy { padding: clamp(2.25rem, 4.5vw, 4rem); }
.advocacy-movement-story .ia-label { color: var(--gold); }
.advocacy-movement-story h2 { max-width: 15ch; margin: 1rem 0 1.6rem; font-size: clamp(2.4rem, 5vw, 4.4rem); }
.advocacy-movement-story p { max-width: 82ch; color: var(--ink-soft); }
.advocacy-movement-story p:last-child { margin-bottom: 0; }
.advocacy-movement-story strong { color: var(--forest); }
.advocacy-story-impact {
	position: relative;
	isolation: isolate;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	min-height: 100%;
	padding: clamp(2.2rem, 4vw, 3.6rem);
	background:
		radial-gradient(circle at 100% 0%, rgba(226,189,95,0.2), transparent 32%),
		linear-gradient(145deg, var(--forest-deep), #0a4937);
	color: var(--paper-bright);
}
.advocacy-story-impact::before {
	content: "";
	position: absolute;
	z-index: -1;
	right: -7rem;
	top: 50%;
	width: 22rem;
	aspect-ratio: 1;
	border: 1px solid rgba(226,189,95,0.24);
	border-radius: 50%;
	box-shadow: 0 0 0 4rem rgba(255,255,255,0.025), 0 0 0 8rem rgba(15,91,59,0.12);
	transform: translateY(-50%);
}
.advocacy-story-kicker { color: var(--gold-light); font-size: 0.72rem; font-weight: 850; letter-spacing: 0.11em; text-transform: uppercase; }
.advocacy-story-primary-stat { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 1rem; align-items: end; margin: clamp(2rem, 4vw, 4rem) 0; }
.advocacy-story-primary-stat strong { color: var(--gold-light); font-family: var(--serif); font-size: clamp(6rem, 10vw, 10rem); font-weight: 500; letter-spacing: -0.08em; line-height: 0.72; }
.advocacy-story-primary-stat span { max-width: 12ch; color: var(--paper-bright); font-family: var(--serif); font-size: clamp(1.35rem, 2.2vw, 2.1rem); line-height: 1.08; }
.advocacy-story-stat-grid { display: grid; gap: 0; border-top: 1px solid rgba(255,255,255,0.18); }
.advocacy-story-stat-grid > div { display: grid; grid-template-columns: minmax(5.5rem, 0.38fr) minmax(0, 1fr); gap: 1rem; padding: 1rem 0; border-bottom: 1px solid rgba(255,255,255,0.18); }
.advocacy-story-stat-grid strong { color: var(--gold-light); font-family: var(--serif); font-size: 1.35rem; font-weight: 500; }
.advocacy-story-stat-grid span { color: rgba(255,253,250,0.72); font-size: 0.78rem; line-height: 1.5; }
.advocacy-campaigns { margin: clamp(4rem, 7vw, 7rem) 0 0; }
.advocacy-campaigns-head { margin-top: 0; }
.advocacy-campaign-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.advocacy-campaign-card {
	position: relative;
	isolation: isolate;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	min-height: 390px;
	padding: clamp(1.7rem, 3vw, 2.35rem);
	border: 1px solid var(--line);
	border-top: 4px solid var(--forest);
	border-radius: 22px;
	background: linear-gradient(145deg, rgba(15,91,59,0.08), var(--paper-bright) 60%);
	box-shadow: 0 18px 50px rgba(6,26,47,0.065);
}
.advocacy-campaign-card::after {
	content: "";
	position: absolute;
	z-index: -1;
	right: -5rem;
	top: -5rem;
	width: 12rem;
	aspect-ratio: 1;
	border: 1px solid rgba(15,91,59,0.14);
	border-radius: 50%;
	box-shadow: 0 0 0 2.5rem rgba(15,91,59,0.025);
}
.advocacy-campaign-card:nth-child(3n + 2) { border-top-color: var(--gold-dark); background: linear-gradient(145deg, rgba(226,189,95,0.17), var(--paper-bright) 60%); }
.advocacy-campaign-card:nth-child(3n) { border-top-color: #244d6b; background: linear-gradient(145deg, rgba(36,77,107,0.1), var(--paper-bright) 60%); }
.advocacy-campaign-number { position: absolute; right: 1.3rem; top: 0.9rem; color: rgba(15,91,59,0.15); font-family: var(--serif); font-size: clamp(3rem, 5vw, 5rem); line-height: 1; }
.advocacy-campaign-card > .ia-label { position: relative; z-index: 1; max-width: calc(100% - 4rem); color: var(--gold-dark); }
.advocacy-campaign-card h3 { position: relative; z-index: 1; max-width: 15ch; margin: 1rem 0; font-size: clamp(1.8rem, 2.45vw, 2.55rem); }
.advocacy-campaign-card h3 em { color: var(--forest); font-style: normal; }
.advocacy-campaign-card p { position: relative; z-index: 1; margin: 0; color: var(--ink-soft); }
.advocacy-campaign-result { position: relative; z-index: 1; display: inline-flex; align-self: flex-start; margin-top: 1.25rem; padding: 0.45rem 0.65rem; border-radius: 999px; background: rgba(15,91,59,0.08); color: var(--forest); font-size: 0.68rem; font-weight: 850; letter-spacing: 0.05em; text-transform: uppercase; }
.advocacy-campaign-links { position: relative; z-index: 1; display: flex; flex-wrap: wrap; gap: 0.7rem 1rem; margin-top: auto; padding-top: 1.5rem; }
.advocacy-campaign-links a { color: var(--forest); font-size: 0.76rem; font-weight: 820; text-decoration: none; }
.advocacy-campaign-links a::after { content: "\2197"; margin-left: 0.35rem; color: var(--gold-dark); }
.advocacy-campaign-links a:hover, .advocacy-campaign-links a:focus-visible { color: var(--gold-dark); text-decoration: underline; text-underline-offset: 0.22rem; }
.advocacy-section-head {
	display: grid;
	grid-template-columns: minmax(180px, 0.32fr) minmax(0, 1fr);
	gap: 0.75rem clamp(2rem, 6vw, 6rem);
	align-items: start;
	margin: clamp(3.5rem, 6vw, 6rem) 0 clamp(1.75rem, 3vw, 2.75rem);
}
.advocacy-section-head .ia-label { grid-row: 1 / span 2; padding-top: 0.7rem; color: var(--gold); }
.advocacy-section-head h2 { max-width: 17ch; font-size: clamp(2.5rem, 5vw, 4.5rem); }
.advocacy-section-head p { max-width: 66ch; margin: 0.65rem 0 0; color: var(--ink-soft); }
.advocacy-grid .ia-label { display: block; margin-bottom: 1rem; color: var(--gold); }
.advocacy-grid article { display: flex; flex-direction: column; }
.advocacy-current-grid { grid-template-columns: repeat(2, 1fr); }
.advocacy-current-grid article { min-height: 245px; }
.advocacy-source-link {
	display: inline-flex;
	align-items: center;
	gap: 0.45rem;
	margin-top: auto;
	padding-top: 1.15rem;
	color: var(--forest);
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.055em;
	line-height: 1.4;
	text-decoration: none;
	text-transform: uppercase;
}
.advocacy-source-link::after { content: "\2197"; color: var(--gold-dark); font-size: 1rem; }
.advocacy-source-link:hover { color: var(--gold-dark); }
.advocacy-closing-statement {
	margin-top: clamp(2.5rem, 5vw, 4.5rem);
	padding: clamp(2.25rem, 4.5vw, 4rem);
	border-left: 5px solid var(--gold-light);
	border-radius: 0 24px 24px 0;
	background:
		radial-gradient(circle at 92% 50%, rgba(226,189,95,0.12), transparent 25%),
		linear-gradient(120deg, var(--forest-deep), #0a3340);
	box-shadow: 0 22px 60px rgba(6,26,47,0.13);
}
.advocacy-closing-statement p { max-width: 72ch; margin: 0; color: rgba(255,253,250,0.82); font-family: var(--serif); font-size: clamp(1.55rem, 2.7vw, 2.4rem); line-height: 1.35; }

.advocacy-dashboard-strip > div { min-height: 118px; padding: 1.45rem 1.55rem; border: 0 !important; box-shadow: 0 14px 36px rgba(6,26,47,0.08); }
.advocacy-dashboard-strip > div:nth-child(1) { background: linear-gradient(145deg, var(--forest), #0a4331); }
.advocacy-dashboard-strip > div:nth-child(2) { background: linear-gradient(145deg, #f0d785, var(--gold-light)); }
.advocacy-dashboard-strip > div:nth-child(3) { background: linear-gradient(145deg, #0a2941, var(--forest-deep)); }
.advocacy-dashboard-strip > div:nth-child(4) { background: linear-gradient(145deg, #e7f1eb, #f7faf7); }
.advocacy-dashboard-strip > div:nth-child(1) strong, .advocacy-dashboard-strip > div:nth-child(3) strong { color: var(--gold-light); }
.advocacy-dashboard-strip > div:nth-child(1) span, .advocacy-dashboard-strip > div:nth-child(3) span { color: rgba(255,253,250,0.7); }
.advocacy-dashboard-strip > div:nth-child(2) strong, .advocacy-dashboard-strip > div:nth-child(4) strong { color: var(--forest-deep); }
.advocacy-dashboard-strip > div:nth-child(2) span, .advocacy-dashboard-strip > div:nth-child(4) span { color: rgba(6,26,47,0.68); }

.advocacy-grid article, .committee-grid article, .media-card, .resource-card, .feature-card, .value-grid article, .leadership-card {
	isolation: isolate;
	overflow: hidden;
	border-top-width: 4px !important;
	background: linear-gradient(145deg, #eaf4ee, var(--paper-bright) 62%);
	box-shadow: 0 16px 42px rgba(6,26,47,0.055);
}
.advocacy-grid article::after, .committee-grid article::after, .media-card::after, .resource-card::after, .feature-card::after, .value-grid article::after, .leadership-card::after {
	content: "";
	position: absolute;
	z-index: -1;
	right: -3.7rem;
	top: -3.7rem;
	width: 9rem;
	aspect-ratio: 1;
	border: 1px solid rgba(15,91,59,0.1);
	border-radius: 50%;
	box-shadow: 0 0 0 1.8rem rgba(15,91,59,0.025);
	transition: transform 420ms var(--ease);
}
.advocacy-grid article:nth-child(3n + 2), .committee-grid article:nth-child(3n + 2), .media-card:nth-child(3n + 2), .resource-card:nth-child(3n + 2), .feature-card:nth-child(3n + 2), .value-grid article:nth-child(3n + 2), .leadership-card:nth-child(3n + 2) {
	background: linear-gradient(145deg, #fbf1d3, var(--paper-bright) 62%);
}
.advocacy-grid article:nth-child(3n), .committee-grid article:nth-child(3n), .media-card:nth-child(3n), .resource-card:nth-child(3n), .feature-card:nth-child(3n), .value-grid article:nth-child(3n), .leadership-card:nth-child(3n) {
	background: linear-gradient(145deg, #eaf0f5, var(--paper-bright) 62%);
}
.advocacy-grid article:hover::after, .committee-grid article:hover::after, .media-card:hover::after, .resource-card:hover::after, .feature-card:hover::after, .value-grid article:hover::after, .leadership-card:hover::after { transform: translate(-0.75rem, 0.75rem) scale(1.12); }

@media (max-width: 1180px) {
	.advocacy-campaign-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
	.advocacy-movement-story { grid-template-columns: 1fr; border-radius: 20px; }
	.advocacy-story-copy, .advocacy-story-impact { padding: 1.8rem 1.5rem; }
	.advocacy-story-primary-stat { margin: 2.8rem 0; }
	.advocacy-story-primary-stat strong { font-size: clamp(6rem, 30vw, 8rem); }
	.advocacy-campaign-grid { grid-template-columns: 1fr; }
	.advocacy-campaign-card { min-height: auto; }
	.advocacy-section-head { grid-template-columns: 1fr; gap: 0.65rem; }
	.advocacy-section-head .ia-label { grid-row: auto; padding-top: 0; }
	.advocacy-section-head h2 { font-size: clamp(2.4rem, 12vw, 3.5rem); }
	.advocacy-current-grid { grid-template-columns: 1fr; }
	.advocacy-current-grid article { min-height: auto; }
	.advocacy-closing-statement { padding: 2rem 1.5rem; border-radius: 0 20px 20px 0; }
}

.committee-grid article::before {
	top: 1.3rem;
	right: 1.55rem;
	color: rgba(15,91,59,0.18);
	font-family: var(--serif);
	font-size: clamp(2.8rem, 4vw, 4.2rem);
	font-weight: 500;
	letter-spacing: -0.05em;
	line-height: 1;
}

.resource-category {
	grid-template-columns: minmax(17rem, 0.44fr) minmax(0, 1fr);
	margin-bottom: 1rem;
	padding: clamp(2rem, 4.5vw, 4rem);
	border: 1px solid var(--line);
	border-radius: 22px;
	background: linear-gradient(120deg, rgba(15,91,59,0.045), var(--paper-bright) 45%);
	box-shadow: 0 18px 50px rgba(6,26,47,0.045);
}
.resource-category-head h2 { max-width: 15ch; overflow-wrap: normal; word-break: normal; hyphens: none; }
.resource-category:nth-child(2n) { background: linear-gradient(120deg, rgba(226,189,95,0.085), var(--paper-bright) 45%); }
.resource-category:nth-child(3n) { background: linear-gradient(120deg, rgba(40,74,100,0.06), var(--paper-bright) 45%); }
.resource-category-head .ia-label { display: inline-flex; padding: 0.45rem 0.7rem; border-radius: 999px; background: var(--forest); color: var(--paper-bright); }
.resource-category:nth-child(2n) .resource-category-head .ia-label { background: var(--gold-light); color: var(--forest-deep); }

.email-contact-card {
	padding: clamp(2.2rem, 5vw, 4.5rem);
	border: 1px solid rgba(226,189,95,0.24);
	border-left: 5px solid var(--gold-light);
	background:
		radial-gradient(circle at 88% 24%, rgba(226,189,95,0.14), transparent 27%),
		linear-gradient(125deg, var(--forest-deep), #0a3b40);
	color: var(--paper-bright);
	box-shadow: 0 24px 65px rgba(6,26,47,0.14);
}
.email-contact-card h2 { color: var(--paper-bright); }
.email-contact-card p { color: rgba(255,253,250,0.7); }
.email-contact-card .email-link { color: var(--gold-light); }
.email-contact-card::after { border-color: rgba(226,189,95,0.18); box-shadow: 0 0 0 2.8rem rgba(226,189,95,0.045), 0 0 0 5.6rem rgba(15,91,59,0.055); }
.feature-card:first-child { border-top-color: var(--forest) !important; background: linear-gradient(145deg, #e8f3ec, var(--paper-bright) 65%); }
.feature-card:last-child { border-top-color: var(--gold) !important; background: linear-gradient(145deg, #fbf0d0, var(--paper-bright) 65%); }

@media (max-width: 980px) {
	.ia-work-card, .ia-work-card:nth-child(even), .ia-work-card:nth-child(7) { grid-column: 1 / -1; }
	.ia-story-track { grid-template-columns: repeat(2, 1fr); }
	.ia-policy-layout { grid-template-columns: 1fr; }
	.ia-policy-copy { position: static; }
	.resource-category { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
	.ia-editorial-card { min-height: 250px; }
	.ia-work-grid, .ia-story-track { grid-template-columns: 1fr; }
	.ia-work-card, .ia-work-card:nth-child(even), .ia-work-card:nth-child(7) { grid-column: 1; min-height: 225px; }
	.ia-work-card h3, .ia-work-card p { max-width: 88%; }
	.ia-story-step, .ia-story-step + .ia-story-step { min-height: auto; }
	.ia-policy-grid { grid-template-columns: 1fr; }
	.ia-policy-card, .ia-policy-card:last-child:nth-child(odd) { grid-column: 1; min-height: auto; }
	.ia-join-panel { display: grid; padding: 2rem 1.5rem; }
	.resource-category { padding: 1.6rem; border-radius: 18px; }
	.email-contact-card { padding: 2rem 1.5rem; }
}

/* Final internal-page refinement: branded chapter rails */
.ia-page-hero-inner .ia-label {
	background: linear-gradient(155deg, rgba(15,91,59,0.98), rgba(6,26,47,0.94));
}
.ia-page-hero-inner .ia-label::before {
	right: 50%;
	bottom: 50%;
	width: clamp(10rem, 13vw, 13rem);
	border-color: rgba(226,189,95,0.2);
	box-shadow: 0 0 0 2.2rem rgba(226,189,95,0.035), 0 0 0 4.4rem rgba(255,255,255,0.025);
	transform: translate(50%, 50%);
}
.ia-page-hero-inner .ia-label::after {
	display: block;
	content: "";
	position: absolute;
	z-index: 1;
	top: 50%;
	left: 50%;
	bottom: auto;
	width: clamp(104px, 9vw, 142px);
	height: auto;
	aspect-ratio: 1;
	border: 4px solid rgba(255, 253, 250, 0.92);
	border-radius: 50%;
	background: #fff url("../images/iaid-logo.png") center / cover no-repeat;
	box-shadow: 0 16px 34px rgba(2, 11, 22, 0.25), 0 0 0 1px rgba(226, 189, 95, 0.45);
	transform: translate(-50%, -50%);
}
.ia-page-hero-inner > .ia-label { font-size: 0.88rem; }

/* Our Story: cinematic evidence, colour, and a clearer narrative rhythm */
.ia-page-story .ia-timeline-page { overflow: hidden; }
.ia-page-story .iaid-page-intro { margin-bottom: clamp(2.5rem, 5vw, 4.5rem); }
.story-cinema-frame {
	position: relative;
	isolation: isolate;
	margin: 0 0 clamp(1.25rem, 2.5vw, 2rem);
	border-radius: 26px;
	box-shadow: 0 26px 72px rgba(6,26,47,0.16);
	overflow: hidden;
}
.story-cinema-frame picture {
	position: relative;
	display: block;
	aspect-ratio: 16 / 7;
	border-radius: inherit;
	background: var(--forest-deep);
}
.story-cinema-frame picture::after {
	content: "";
	position: absolute;
	inset: 45% 0 0;
	background: linear-gradient(180deg, transparent, rgba(6,26,47,0.84));
	pointer-events: none;
}
.story-cinema-frame img { object-position: center 53%; filter: contrast(1.02); }
.story-cinema-frame figcaption {
	position: absolute;
	z-index: 2;
	right: clamp(1.2rem, 3vw, 2.5rem);
	bottom: clamp(1.1rem, 2.4vw, 2rem);
	left: clamp(1.2rem, 3vw, 2.5rem);
	max-width: 64ch;
	margin: 0;
	color: rgba(255,253,250,0.78);
	font-size: 0.72rem;
}
.story-principles {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: clamp(0.75rem, 1.25vw, 1rem);
	margin-bottom: clamp(3.5rem, 6vw, 5.5rem);
}
.story-principles > div {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: clamp(154px, 13vw, 186px);
	padding: clamp(1.5rem, 2.5vw, 2.2rem);
	border: 1px solid rgba(255,255,255,0.07);
	border-radius: 24px;
	background: linear-gradient(145deg, #061a2f, #08243c);
	box-shadow: 0 18px 42px rgba(6,26,47,0.13);
	text-align: center;
}
.story-principles strong {
	display: block;
	max-width: 11ch;
	color: #74a95a;
	font-family: var(--serif);
	font-size: clamp(1.75rem, 3vw, 2.75rem);
	font-weight: 600;
	line-height: 0.98;
}
.story-principles > div:nth-child(2) strong { color: #24cbe4; }
.story-principles > div:nth-child(3) strong { color: #e6ae45; }
.story-principles > div:nth-child(4) strong { color: #74a95a; }
.story-principles span {
	display: block;
	margin-top: 1rem;
	color: rgba(255,253,250,0.82);
	font-size: clamp(0.62rem, 0.8vw, 0.75rem);
	font-weight: 780;
	letter-spacing: 0.11em;
	line-height: 1.35;
	text-transform: uppercase;
}
.story-transition { margin-bottom: 1.25rem; }
.story-timeline {
	gap: 1rem;
	padding-top: 0.25rem;
	border-top: 0;
}
.story-timeline article,
.story-timeline article:not(:nth-child(3n + 1)) {
	min-width: 0;
	padding: clamp(1.6rem, 3vw, 2.25rem) !important;
	border: 1px solid var(--line);
	border-top: 4px solid var(--forest);
	border-radius: 18px;
	background: linear-gradient(145deg, #e8f3ec, var(--paper-bright) 62%);
	box-shadow: 0 14px 38px rgba(6,26,47,0.05);
}
.story-timeline article:nth-child(3n + 2) { border-top-color: var(--gold); background: linear-gradient(145deg, #fbf0d0, var(--paper-bright) 62%); }
.story-timeline article:nth-child(3n) { border-top-color: #284a64; background: linear-gradient(145deg, #eaf0f5, var(--paper-bright) 62%); }
.story-timeline article > span { border-radius: 50%; background: var(--forest); color: var(--paper-bright); }
.story-timeline article:nth-child(3n + 2) > span { border-color: #9d7627; background: var(--gold-light); color: var(--forest-deep); }

/* Contact: one purposeful destination instead of repeated introductions */
.ia-contact-content .ia-prose { display: block; }
.contact-primary-card {
	display: grid;
	grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr);
	gap: clamp(2.5rem, 6vw, 6rem);
	align-items: center;
}
.contact-primary-copy { min-width: 0; }
.contact-primary-card h2 { max-width: 11ch; }
.contact-topic-grid { display: grid; gap: 0.75rem; }
.contact-topic-grid > div {
	padding: 1.2rem 1.3rem;
	border: 1px solid rgba(226,189,95,0.2);
	border-radius: 14px;
	background: rgba(255,253,250,0.055);
	backdrop-filter: blur(6px);
}
.contact-topic-grid strong { display: block; color: var(--gold-light); font-size: 0.82rem; }
.contact-topic-grid span { display: block; margin-top: 0.35rem; color: rgba(255,253,250,0.66); font-size: 0.82rem; line-height: 1.55; }

.resource-grid > .resource-card:last-child:nth-child(odd) { grid-column: 1 / -1; }

/* Media library: publisher-led pictorial previews with an IAID editorial finish */
.media-card { align-items: stretch; }
.media-thumbnail {
	position: relative;
	isolation: isolate;
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	margin: 1.15rem 0 0.3rem;
	border: 1px solid rgba(6, 26, 47, 0.12);
	border-radius: 15px;
	background: linear-gradient(135deg, #071d31, var(--forest-deep));
	box-shadow: 0 14px 30px rgba(6, 26, 47, 0.1);
	overflow: hidden;
	text-decoration: none;
}
.media-thumbnail::before {
	content: "";
	position: absolute;
	z-index: 1;
	inset: auto 0 0;
	height: 52%;
	background: linear-gradient(180deg, transparent, rgba(3, 16, 29, 0.78));
	pointer-events: none;
}
.media-thumbnail::after {
	content: "\2197";
	position: absolute;
	z-index: 3;
	top: 0.75rem;
	right: 0.75rem;
	display: grid;
	place-items: center;
	width: 2.2rem;
	aspect-ratio: 1;
	border: 1px solid rgba(255, 253, 250, 0.55);
	border-radius: 50%;
	background: rgba(6, 26, 47, 0.74);
	color: var(--gold-light);
	font-size: 1rem;
	box-shadow: 0 8px 20px rgba(6, 26, 47, 0.18);
	backdrop-filter: blur(8px);
	transition: background-color 260ms ease, color 260ms ease, transform 260ms var(--ease);
}
.media-thumbnail img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: filter 500ms ease, transform 700ms var(--ease);
}
.media-thumbnail[data-fit="contain"] img {
	object-fit: contain;
	background: linear-gradient(135deg, #eef3f0, #f8f2df);
}
.media-thumbnail[data-position="portrait"] img { object-position: center 30%; }
.media-thumbnail-source {
	position: absolute;
	z-index: 3;
	left: 0.8rem;
	bottom: 0.75rem;
	max-width: calc(100% - 1.6rem);
	padding: 0.48rem 0.7rem;
	border: 1px solid rgba(255, 253, 250, 0.2);
	border-radius: 999px;
	background: rgba(6, 26, 47, 0.74);
	color: var(--paper-bright);
	font-size: 0.66rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	line-height: 1.15;
	text-transform: uppercase;
	backdrop-filter: blur(8px);
}
.media-thumbnail:hover img { filter: saturate(1.06) contrast(1.025); transform: scale(1.035); }
.media-thumbnail:hover::after { background: var(--gold-light); color: var(--forest-deep); transform: translate(0.1rem, -0.1rem); }
.media-thumbnail:focus-visible { outline: 3px solid var(--gold); outline-offset: 3px; }
.media-card > .media-source { display: none; }
.media-card h2 { max-width: 19ch; margin-top: 1.1rem; }

/* News, events, and continuous education */
.ia-latest {
	position: relative;
	overflow: hidden;
	background:
		radial-gradient(circle at 12% 20%, rgba(15, 91, 59, 0.46), transparent 32%),
		radial-gradient(circle at 95% 76%, rgba(226, 189, 95, 0.17), transparent 27%),
		linear-gradient(135deg, #061a2f, #082e38 72%, #0a4637);
	color: var(--paper-bright);
}
.ia-latest::after {
	content: "";
	position: absolute;
	right: -10vw;
	top: -18vw;
	width: 48vw;
	aspect-ratio: 1;
	border: 1px solid rgba(226, 189, 95, 0.18);
	border-radius: 50%;
	box-shadow: 0 0 0 7vw rgba(255, 255, 255, 0.018), 0 0 0 14vw rgba(15, 91, 59, 0.05);
	pointer-events: none;
}
.ia-latest-layout {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: minmax(280px, 0.72fr) minmax(0, 1.28fr);
	gap: clamp(2.5rem, 6vw, 7rem);
	align-items: center;
}
.latest-event-visual {
	position: relative;
	display: grid;
	gap: 0.72rem;
	max-width: 520px;
	padding: clamp(0.75rem, 1.4vw, 1rem);
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.07);
	box-shadow: 0 30px 90px rgba(2, 13, 24, 0.34);
	transition: transform 320ms var(--ease), border-color 320ms ease;
}
.latest-event-visual:hover { border-color: rgba(226, 189, 95, 0.54); transform: translateY(-5px) rotate(-0.35deg); }
.latest-event-visual > span {
	position: static;
	justify-self: start;
	padding: 0.56rem 0.78rem;
	border-radius: 999px;
	background: var(--gold-light);
	color: var(--forest-deep);
	font-size: 0.68rem;
	font-weight: 850;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.latest-event-visual img { width: 100%; border-radius: 22px; }
.latest-content { min-width: 0; }
.latest-content > .ia-label { color: var(--gold-light); }
.latest-content > h2 { max-width: 16ch; margin: 1rem 0 2rem; color: var(--paper-bright); font-size: clamp(2.7rem, 5.4vw, 5rem); }
.latest-rotator {
	position: relative;
	min-height: 355px;
	padding: clamp(1.5rem, 3vw, 2.4rem);
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 24px;
	background: rgba(7, 30, 47, 0.72);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.07), 0 18px 48px rgba(0, 0, 0, 0.16);
	backdrop-filter: blur(14px);
}
.latest-rotator-toolbar { display: flex; justify-content: space-between; gap: 1rem; align-items: center; margin-bottom: 1.6rem; }
.latest-rotator-toolbar > span { color: var(--gold-light); font-size: 0.72rem; font-weight: 850; letter-spacing: 0.1em; }
.latest-rotator-controls { display: flex; gap: 0.45rem; }
.latest-rotator-controls button {
	min-width: 42px;
	min-height: 42px;
	padding: 0.45rem 0.72rem;
	border: 1px solid rgba(255, 255, 255, 0.24);
	border-radius: 999px;
	background: transparent;
	color: var(--paper-bright);
	font: inherit;
	font-size: 0.75rem;
	font-weight: 760;
	cursor: pointer;
}
.latest-rotator-controls button:hover, .latest-rotator-controls button:focus-visible { border-color: var(--gold-light); color: var(--gold-light); }
.latest-slide > time, .latest-slide > span { color: var(--gold-light); font-size: 0.72rem; font-weight: 850; letter-spacing: 0.09em; text-transform: uppercase; }
.latest-slide-portrait { width: 74px; aspect-ratio: 1; margin: 1rem 0 0.2rem; border: 3px solid rgba(226, 189, 95, 0.84); border-radius: 50%; object-fit: cover; object-position: center 22%; box-shadow: 0 10px 24px rgba(0, 0, 0, 0.2); }
.latest-slide-photo { width: clamp(138px, 15vw, 188px); aspect-ratio: 4 / 3; margin: 1rem 0 0.25rem; border: 3px solid rgba(226, 189, 95, 0.84); border-radius: 14px; object-fit: cover; object-position: center; box-shadow: 0 10px 24px rgba(0, 0, 0, 0.2); }
.latest-slide h3 { max-width: 20ch; margin: 0.8rem 0 1rem; color: var(--paper-bright); font-size: clamp(2rem, 3.6vw, 3.25rem); }
.latest-slide p { max-width: 58ch; color: rgba(255, 253, 250, 0.74); }
.latest-slide a { display: inline-flex; margin-top: 1.25rem; color: var(--gold-light); font-weight: 800; text-decoration: none; }
.latest-slide a::after { content: "\2192"; margin-left: 0.5rem; }
.latest-actions { display: flex; flex-wrap: wrap; gap: 0.8rem; margin-top: 1.5rem; }
.ia-latest .ia-button-quiet { border-color: rgba(255, 255, 255, 0.34); color: var(--paper-bright); }

.ia-page-news-events .ia-page-hero { background: linear-gradient(135deg, #061a2f 0%, #083640 74%, #0e5940 100%); }
.ia-page-news-events .ia-page-hero-inner::after { box-shadow: 0 0 0 7vw rgba(226, 189, 95, 0.06); }
.ia-events-content { background: var(--paper); }
.upcoming-event-feature {
	display: grid;
	grid-template-columns: minmax(280px, 0.74fr) minmax(0, 1.26fr);
	gap: clamp(2.5rem, 6vw, 6rem);
	align-items: start;
	padding: clamp(1rem, 2vw, 1.5rem);
	border: 1px solid var(--line);
	border-top: 5px solid var(--forest);
	border-radius: 28px;
	background:
		radial-gradient(circle at 96% 8%, rgba(226, 189, 95, 0.13), transparent 23%),
		var(--paper-bright);
	box-shadow: 0 24px 70px rgba(6, 26, 47, 0.09);
}
.event-poster-frame { position: relative; display: grid; gap: 0.72rem; overflow: hidden; padding: 0.72rem; border-radius: 20px; background: #f6f2e9; }
.event-poster-frame img { width: 100%; border-radius: 14px; }
.event-status-badge {
	position: static;
	justify-self: start;
	padding: 0.55rem 0.75rem;
	border-radius: 999px;
	background: var(--forest);
	color: var(--paper-bright);
	font-size: 0.68rem;
	font-weight: 850;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.event-feature-copy { padding: clamp(1.2rem, 3vw, 3rem) clamp(0.2rem, 2vw, 2rem) clamp(1.5rem, 3vw, 3rem) 0; }
.event-feature-copy > .ia-label { color: var(--gold-dark); }
.event-feature-copy > h2 { max-width: 15ch; margin: 1rem 0 1.4rem; font-size: clamp(2.7rem, 5vw, 4.6rem); }
.event-feature-copy .event-lead { max-width: 61ch; color: var(--ink-soft); font-size: clamp(1.05rem, 1.5vw, 1.25rem); }
.event-fact-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0.8rem; margin: 2rem 0; }
.event-fact-grid > div { padding: 1rem; border: 1px solid var(--line); border-radius: 14px; background: rgba(15, 91, 59, 0.035); }
.event-fact-grid span { display: block; margin-bottom: 0.35rem; color: var(--gold-dark); font-size: 0.66rem; font-weight: 850; letter-spacing: 0.08em; text-transform: uppercase; }
.event-fact-grid strong { color: var(--ink); font-size: 0.98rem; line-height: 1.45; }
.event-topics { margin: 2rem 0; padding: 1.4rem 1.5rem; border-left: 4px solid var(--gold); border-radius: 0 15px 15px 0; background: rgba(226, 189, 95, 0.1); }
.event-topics h3 { margin: 0 0 0.8rem; font-size: 1.4rem; }
.event-topics ul { display: grid; gap: 0.45rem; margin: 0; padding-left: 1.2rem; color: var(--ink-soft); }
.event-feature-copy > p:last-of-type { color: var(--ink-soft); }
.events-section-head { display: grid; grid-template-columns: minmax(190px, 0.32fr) minmax(0, 1fr); gap: 0.7rem clamp(2rem, 6vw, 6rem); margin-bottom: clamp(1.8rem, 3vw, 2.8rem); }
.events-section-head > .ia-label { grid-row: 1 / span 2; padding-top: 0.65rem; color: var(--gold-dark); }
.events-section-head h2 { max-width: 17ch; font-size: clamp(2.6rem, 5vw, 4.5rem); }
.events-section-head p { max-width: 67ch; margin: 0.7rem 0 0; color: var(--ink-soft); }
.news-highlight-section, .cpd-programme { padding-top: clamp(5rem, 9vw, 8rem); }
.appointment-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.appointment-card { position: relative; overflow: hidden; min-height: 330px; padding: clamp(2rem, 4vw, 3.5rem); border: 1px solid var(--line); border-top: 5px solid var(--gold); border-radius: 24px; background: var(--paper-bright); box-shadow: 0 18px 52px rgba(6, 26, 47, 0.06); }
.appointment-card::after { content: ""; position: absolute; right: -4rem; bottom: -6rem; width: 18rem; aspect-ratio: 1; border: 1px solid rgba(15, 91, 59, 0.14); border-radius: 50%; box-shadow: 0 0 0 3rem rgba(15, 91, 59, 0.035); }
.appointment-card-featured { border-top-color: var(--forest); background: linear-gradient(135deg, #061a2f, #0a3840); }
.appointment-card-head { position: relative; z-index: 1; display: block; }
.appointment-card-head > div { min-width: 0; }
.appointment-portrait { display: block; width: clamp(82px, 7vw, 104px); aspect-ratio: 1; margin-bottom: 1.15rem; border: 3px solid var(--gold-light); border-radius: 50%; object-fit: cover; object-position: center 22%; box-shadow: 0 12px 28px rgba(6, 26, 47, 0.14); }
.appointment-kicker { position: relative; z-index: 1; color: var(--gold-dark); font-size: 0.7rem; font-weight: 850; letter-spacing: 0.09em; text-transform: uppercase; }
.appointment-card h3 { position: relative; z-index: 1; max-width: 15ch; margin: 0.55rem 0 0; font-size: clamp(2rem, 2.55vw, 2.7rem); }
.appointment-card p { position: relative; z-index: 1; max-width: 54ch; color: var(--ink-soft); }
.appointment-card-featured .appointment-kicker { color: var(--gold-light); }
.appointment-card-featured h3 { color: var(--paper-bright); }
.appointment-card-featured p { color: rgba(255, 253, 250, 0.76); }
.appointment-card-tenure { border-top-color: var(--forest) !important; background: linear-gradient(180deg, rgba(15, 91, 59, 0.08), var(--paper-bright) 42%); }
.award-recognition-card { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: clamp(1.3rem, 3vw, 2.4rem); align-items: center; overflow: hidden; margin-top: 1rem; padding: clamp(1.6rem, 3vw, 2.8rem); border: 1px solid rgba(126, 84, 14, 0.22); border-left: 6px solid var(--gold); border-radius: 22px; background: linear-gradient(120deg, rgba(226, 189, 95, 0.18), var(--paper-bright) 58%, rgba(15, 91, 59, 0.055)); box-shadow: 0 18px 50px rgba(6, 26, 47, 0.07); }
.award-recognition-card::after { content: "CAI · 2026"; position: absolute; right: clamp(1.2rem, 3vw, 2.5rem); top: 1.2rem; color: rgba(126, 84, 14, 0.16); font-family: var(--serif); font-size: clamp(1.8rem, 4vw, 4rem); pointer-events: none; }
.award-recognition-photo { position: relative; z-index: 1; width: clamp(230px, 27vw, 370px); aspect-ratio: 4 / 3; border: 4px solid var(--gold); border-radius: 18px; object-fit: cover; object-position: center; box-shadow: 0 14px 34px rgba(6, 26, 47, 0.14); }
.award-recognition-card > div { position: relative; z-index: 1; }
.award-recognition-card h3 { max-width: 25ch; margin: 0.55rem 0 0.65rem; font-size: clamp(2rem, 3.4vw, 3.35rem); }
.award-recognition-card p { max-width: 75ch; margin: 0; color: var(--ink-soft); }
.webinar-showcase { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.webinar-card { overflow: hidden; padding: 0 0 1.6rem; border: 1px solid var(--line); border-radius: 20px; background: var(--paper-bright); box-shadow: 0 16px 42px rgba(6, 26, 47, 0.055); }
.webinar-image { overflow: hidden; aspect-ratio: 5 / 7; margin-bottom: 1.45rem; background: #edf3ef; }
.webinar-image img { width: 100%; height: 100%; object-fit: contain; object-position: center; transition: transform 500ms var(--ease); }
.webinar-card:hover .webinar-image img { transform: scale(1.035); }
.webinar-card > span, .webinar-card h3, .webinar-card p { display: block; margin-left: 1.45rem; margin-right: 1.45rem; }
.webinar-card > span { color: var(--gold-dark); font-size: 0.66rem; font-weight: 850; letter-spacing: 0.08em; text-transform: uppercase; }
.webinar-card h3 { margin-top: 0.75rem; font-size: clamp(1.45rem, 2vw, 2rem); }
.webinar-card p { color: var(--ink-soft); }
.education-continuity { display: grid; grid-template-columns: minmax(170px, 0.38fr) minmax(0, 1fr) auto; gap: 1.5rem 2.2rem; align-items: center; margin-top: 1rem; padding: clamp(1.8rem, 3vw, 2.8rem); border-radius: 20px; background: linear-gradient(120deg, var(--forest-deep), #0a4937); color: var(--paper-bright); }
.education-continuity strong { color: var(--gold-light); font-family: var(--serif); font-size: clamp(1.8rem, 3vw, 2.7rem); }
.education-continuity p { margin: 0; color: rgba(255, 253, 250, 0.74); }
.education-continuity .ia-button { white-space: nowrap; }
.leadership-external-role { color: var(--gold-dark) !important; font-size: 0.76rem !important; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; }
.leadership-portrait { width: 104px; aspect-ratio: 1; margin-bottom: 1.2rem; border: 3px solid var(--gold-light); border-radius: 50%; object-fit: cover; object-position: center 24%; box-shadow: 0 12px 30px rgba(6, 26, 47, 0.12); }
.leadership-portrait-small { width: 78px; margin-bottom: 1rem; }
.leadership-list li:has(.leadership-list-portrait) { grid-template-columns: auto minmax(0, 1fr); column-gap: 0.8rem; align-items: center; }
.leadership-list-portrait { grid-row: 1 / span 2; width: 48px; aspect-ratio: 1; border: 2px solid rgba(226, 189, 95, 0.72); border-radius: 50%; object-fit: cover; object-position: center 24%; }
.leadership-list-simple li:has(.leadership-list-portrait) { display: grid; grid-template-columns: auto minmax(0, 1fr); }

@media (max-width: 1180px) {
	.appointment-grid { grid-template-columns: 1fr; }
	.webinar-showcase { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.education-continuity { grid-template-columns: 1fr 1.25fr; }
	.education-continuity .ia-button { grid-column: 1 / -1; justify-self: start; }
}

@media (max-width: 980px) {
	.ia-latest-layout, .upcoming-event-feature { grid-template-columns: 1fr; }
	.latest-event-visual { max-width: none; }
	.latest-event-visual img { max-height: 560px; object-fit: cover; object-position: center 12%; }
	.latest-content > h2 { max-width: 18ch; }
	.event-poster-frame { max-width: 480px; margin: 0 auto; }
	.event-feature-copy { padding: 1rem clamp(0.5rem, 3vw, 2rem) clamp(1.5rem, 4vw, 3rem); }
	.events-section-head { grid-template-columns: 1fr; gap: 0.6rem; }
	.events-section-head > .ia-label { grid-row: auto; padding-top: 0; }
	.appointment-grid { grid-template-columns: 1fr; }
	.appointment-card { min-height: 280px; }
}

@media (max-width: 640px) {
	.latest-event-visual img { max-height: none; }
	.latest-content > h2 { font-size: clamp(2.4rem, 13vw, 3.5rem); }
	.latest-rotator { min-height: 420px; padding: 1.25rem; }
	.latest-rotator-toolbar { align-items: flex-start; }
	.latest-slide h3 { font-size: clamp(1.9rem, 10vw, 2.65rem); }
	.event-fact-grid, .webinar-showcase, .education-continuity { grid-template-columns: 1fr; }
	.event-feature-copy > h2, .events-section-head h2 { font-size: clamp(2.25rem, 11vw, 3.3rem); }
	.award-recognition-card { grid-template-columns: 1fr; }
	.award-recognition-card::after { top: 0.8rem; right: 0.9rem; font-size: 1.5rem; }
	.award-recognition-photo { width: 100%; }
	.education-continuity .ia-button { grid-column: auto; width: 100%; white-space: normal; }
}

@media (max-width: 980px) {
	.ia-page-hero-inner .ia-label {
		min-height: 166px;
	}
	.ia-page-hero-inner .ia-label::before { right: 50%; bottom: 50%; width: 8rem; transform: translate(50%, 50%); }
	.ia-page-hero-inner .ia-label::after { width: 98px; }
	.story-principles { grid-template-columns: repeat(2, 1fr); }
	.contact-primary-card { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
	.ia-page-hero-inner .ia-label {
		min-height: 180px;
		padding: 1.25rem 1.4rem;
		text-align: center;
	}
	.ia-page-hero-inner .ia-label::before {
		right: 50%;
		bottom: 35%;
		width: 7.5rem;
		transform: translate(50%, 50%);
	}
	.ia-page-hero-inner .ia-label::after {
		top: 65%;
		left: 50%;
		width: 92px;
		transform: translate(-50%, -50%);
	}
	.media-thumbnail { aspect-ratio: 16 / 10; border-radius: 13px; }
	.media-thumbnail-source { font-size: 0.61rem; }
	.story-cinema-frame { border-radius: 20px; }
	.story-cinema-frame picture { aspect-ratio: 4 / 3; }
	.story-cinema-frame img { object-position: center 54%; }
	.story-principles { grid-template-columns: 1fr; }
	.story-principles > div { min-height: 132px; border-radius: 20px; }
	.story-timeline {
		grid-template-columns: 1fr;
		gap: 0.8rem;
		margin-left: 0;
		padding: 0 0 0 1.1rem;
		border-left: 1px solid var(--line);
	}
	.story-timeline::before { top: 0; left: -1px; width: 2px; height: 100%; transform: scaleY(var(--story-progress)); transform-origin: top; }
	.story-timeline article,
	.story-timeline article:not(:nth-child(3n + 1)) { padding: 1.45rem !important; }
	.story-timeline article > span { position: static; }
	.contact-primary-card { gap: 2rem; padding: 2rem 1.5rem; }
	.resource-grid > .resource-card:last-child:nth-child(odd) { grid-column: 1; }
}

@media (prefers-reduced-motion: reduce) {
	.media-thumbnail img,
	.media-thumbnail::after { transition: none; }
	.media-thumbnail:hover img { transform: none; }
}
