/*
 * Legacy (Ona Pro era) page content under the new tokens.
 * Enqueued on singular views from inc/templates.php.
 */

/* ---------- Bootstrap 5 leaks ----------
 * The three lawsuit pages load Bootstrap's CSS (for their press release modals)
 * from a Custom HTML block. Its reboot resets the body font, link colour and
 * heading weight site-wide, header and footer included. Point its variables at
 * our tokens and win back the element styles. */
html:root {
	--bs-body-font-family: var(--wp--preset--font-family--base);
	--bs-body-font-size: var(--wp--preset--font-size--base);
	--bs-body-line-height: 1.65;
	--bs-body-color: var(--wp--preset--color--ink);
	--bs-body-color-rgb: 27, 31, 59;
	--bs-body-bg: var(--wp--preset--color--white);
	--bs-link-color: var(--wp--preset--color--deep-blue);
	--bs-link-color-rgb: 46, 60, 165;
	--bs-link-hover-color: var(--wp--preset--color--ink);
	--bs-link-hover-color-rgb: 27, 31, 59;
	--bs-heading-color: var(--wp--preset--color--ink);
	--bs-border-color: var(--wp--preset--color--line);
	--bs-font-sans-serif: var(--wp--preset--font-family--base);
}

:root :is(h1, h2, h3, h4, h5, h6) {
	font-weight: 800;
}

/* ---------- Renumbered headings ----------
 * inc/embeds.php renumbers headings that skip a level (h2 then h4) and turns extra
 * h1s into h2s, tagging them icons-was-h<n>. Keep the size of the old level (same
 * values as theme.json); font-size classes and the column rules below still win. */
.icons-was-h1 {
	font-size: var(--wp--preset--font-size--x-large);
}

.icons-was-h3 {
	font-size: var(--wp--preset--font-size--medium-large);
	letter-spacing: -0.01em;
}

.icons-was-h4 {
	font-size: var(--wp--preset--font-size--medium);
	line-height: 1.25;
	letter-spacing: -0.01em;
}

.icons-was-h5 {
	font-size: var(--wp--preset--font-size--medium-small);
	line-height: 1.3;
	letter-spacing: 0;
}

.icons-was-h6 {
	font-size: var(--wp--preset--font-size--base);
	line-height: 1.4;
	letter-spacing: 0;
}

/* ---------- Old title-hiding hacks ----------
 * Some pages carry <style>header{display:none}</style> or hide
 * .wp-block-post-title themselves. The title hack is intended (their content
 * has its own H1). Hiding <header> is intended only on the donate landing page
 * (ncaa-lawsuit-donate), which drops the site header on purpose. */

/* ---------- Typography inside old content ---------- */

.wp-block-post-content :where(p, li) {
	text-wrap: pretty;
}

/* Ona's headings were light serif; ours are heavy. Scale down headings that sit
 * inside columns so 3-up card rows don't shout. */
.wp-block-post-content .wp-block-column :is(h2, .wp-block-heading.has-large-font-size) {
	font-size: var(--wp--preset--font-size--medium-large);
}

.wp-block-post-content .wp-block-column :is(h3, h4):not([class*="-font-size"]) {
	font-size: var(--wp--preset--font-size--medium-small);
	line-height: 1.3;
	letter-spacing: -0.01em;
}

.wp-block-post-content .wp-block-column :is(h5, h6):not([class*="-font-size"]) {
	font-size: var(--wp--preset--font-size--base);
}

/* Linked headings: ink, underline on hover only. */
.wp-block-post-content :is(h1, h2, h3, h4, h5, h6) a:where(:not(.wp-element-button)) {
	color: inherit;
	text-decoration: none;
}

.wp-block-post-content :is(h1, h2, h3, h4, h5, h6) a:where(:not(.wp-element-button)):hover {
	color: var(--wp--preset--color--deep-blue);
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 0.15em;
}

/* WonderBlocks (nfd-*) helper sizes from Bluehost's pattern library. */
.wp-block-post-content .nfd-text-sm {
	font-size: var(--wp--preset--font-size--small);
}

.wp-block-post-content .nfd-text-md {
	font-size: var(--wp--preset--font-size--medium-small);
}

.wp-block-post-content .nfd-text-opacity-80 {
	color: var(--wp--preset--color--slate);
}

.wp-block-post-content .nfd-text-balance {
	text-wrap: balance;
}

.wp-block-post-content .nfd-container,
.wp-block-post-content .nfd-p-lg {
	padding-top: var(--wp--preset--spacing--50);
	padding-bottom: var(--wp--preset--spacing--50);
}

.wp-block-post-content .nfd-bg-gray-100 {
	background-color: var(--wp--preset--color--cloud);
}

/* The Bluehost plugin's WonderBlocks CSS caps every image caption at 64ch and centres
   that box (!important), so a left-aligned caption under a wide photo started part
   way across it. Captions span their image; their own text-align decides the rest. */
.wp-block-post-content .wp-block-image figcaption {
	max-width: none !important;
	margin-inline: 0 !important;
}

/* Custom classes used in old content (their CSS lived in page-level <style> blocks). */
.wp-block-post-content .icons-black {
	color: var(--wp--preset--color--ink) !important;
}

.wp-block-post-content .icons-question {
	font-size: var(--wp--preset--font-size--medium-small);
	font-weight: 700;
	color: var(--wp--preset--color--ink);
}

.wp-block-post-content li.no-bullet {
	list-style: none;
}

/* Ported from Ona Pro's DB footer: keep lawsuit cover text readable. */
.lawsuit-cover h2,
.lawsuit-cover p {
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.85);
}

/* ---------- Layout ---------- */

/* Three-up column rows get a little more room than the reading width. */
.wp-block-post-content.is-layout-constrained > .wp-block-columns:not(.alignwide):not(.alignfull):has(> .wp-block-column:nth-child(3)) {
	max-width: min(1200px, 100%);
}

.wp-block-post-content .wp-block-columns {
	gap: var(--wp--preset--spacing--40);
}

/* Images inside columns: rounded, never overflowing. */
.wp-block-post-content .wp-block-column .wp-block-image img {
	border-radius: var(--wp--custom--radius--medium);
}

.wp-block-post-content .wp-block-image.aligncenter {
	text-align: center;
}

/* Full-width groups and covers butt up to each other like they did in Ona. */
.wp-block-post-content > .alignfull + .alignfull {
	margin-block-start: 0;
}

/* Cover blocks in old content stay square: many are page headers with a link bar
   or band attached underneath (e.g. the Mountain West header), and rounding only
   the cover made the pair look mismatched. */
.wp-block-post-content .wp-block-cover {
	border-radius: 0;
}

/* Embeds: a quiet frame while the iframe loads (and if it's blocked). */
.wp-block-post-content .wp-block-embed.is-type-video .wp-block-embed__wrapper {
	background: var(--wp--preset--color--ink);
	border-radius: var(--wp--custom--radius--medium);
	overflow: hidden;
}

.wp-block-post-content .wp-block-embed iframe {
	display: block;
}

/* Old "button" blocks with Ona styles. */
.wp-block-post-content .wp-block-button.is-style-fill > .wp-block-button__link:not(.has-background) {
	background-color: var(--wp--preset--color--periwinkle);
}

/* Old tables. */
.wp-block-post-content .wp-block-table table {
	border-collapse: collapse;
	width: 100%;
}

.wp-block-post-content .wp-block-table :is(th, td) {
	border: 1px solid var(--wp--preset--color--line);
	padding: 0.6em 0.8em;
}

/* Social icon rows inside content (team bios etc.). */
.wp-block-post-content .wp-block-social-links.is-style-logos-only .wp-social-link {
	color: var(--wp--preset--color--ink);
}

/* Old separators. */
.wp-block-post-content .wp-block-separator:not(.has-background):not(.has-text-color) {
	color: var(--wp--preset--color--line);
	border-color: currentColor;
	opacity: 1;
}

.wp-block-post-content .wp-block-separator.is-style-wide {
	border-top-width: 1px;
}

/* Embeds sized in px (Facebook's 560px video) inside old groups with a fixed
   content width: the layout's max-width beats the global iframe rule, so phones
   scrolled sideways. Donorbox sets its own inline max-width. */
.wp-block-post-content iframe:not([name="donorbox"]) {
	max-width: 100% !important;
}

/* Donorbox forms load after the page (inc/embeds.php): a placeholder until they
   paint (the iframe is transparent till then). As on the Donate page. */
.wp-block-post-content iframe[name="donorbox"] {
	background:
		url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='320' height='40'%3E%3Ctext x='160' y='25' text-anchor='middle' font-family='system-ui,sans-serif' font-size='15' fill='%235b6178'%3ELoading the secure donation form…%3C/text%3E%3C/svg%3E") center 120px no-repeat,
		var(--wp--preset--color--white);
}

/* ICONS In The News: recent coverage list (content/steps/15-in-the-news.php). */
.icons-news-recent .icons-news-year {
	font-size: var(--wp--preset--font-size--large);
	margin-top: var(--wp--preset--spacing--60);
	padding-bottom: var(--wp--preset--spacing--20);
	border-bottom: 2px solid var(--wp--preset--color--mist);
}

.icons-news-recent .icons-news-item {
	margin-top: var(--wp--preset--spacing--40);
}

.icons-news-recent .icons-news-item > * + * {
	margin-top: var(--wp--preset--spacing--20);
}

.icons-news-recent .icons-news-item h3 a {
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}

.icons-news-recent .icons-news-item h3 a:hover,
.icons-news-recent .icons-news-item h3 a:focus-visible {
	color: var(--wp--preset--color--deep-blue);
	text-decoration: underline;
}

/* Event photos added to existing pages (content/steps/17-page-photos.php). */
.wp-block-post-content .icons-page-photo {
	margin-block: 0 var(--wp--preset--spacing--50);
}

.wp-block-post-content .icons-page-photo img {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	border-radius: var(--wp--custom--radius--medium);
	box-shadow: var(--wp--preset--shadow--soft);
}

.wp-block-post-content .icons-page-photo figcaption {
	margin-top: var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--slate);
	font-size: var(--wp--preset--font-size--small);
	text-align: left;
}

/* Legal Advocacy: highlights and the full legal record (content/steps/18-legal-record.php). */
.icons-legal-record > h2 {
	margin-top: var(--wp--preset--spacing--60);
}

/* Two across (one on phones): four across left the headlines wrapping to four lines. */
.icons-legal-highlights {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--50);
}

@media (max-width: 600px) {
	.icons-legal-highlights {
		grid-template-columns: minmax(0, 1fr);
	}
}

.icons-legal-highlights > .icons-legal-highlight {
	margin-block: 0;
}

/* 16:9 keeps the words on the NCAA and Penn graphics in frame. */
.icons-legal-highlights .wp-block-image img {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	border-radius: var(--wp--custom--radius--medium);
}

.icons-legal-highlight h3 {
	margin-top: var(--wp--preset--spacing--30);
}

.icons-legal-highlight h3 a {
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}

.icons-legal-highlight h3 a:hover,
.icons-legal-highlight h3 a:focus-visible {
	color: var(--wp--preset--color--deep-blue);
	text-decoration: underline;
}

.icons-legal-record .icons-record-year {
	max-width: 52rem;
	margin-left: 0 !important;
	font-size: var(--wp--preset--font-size--large);
	margin-top: var(--wp--preset--spacing--50);
	padding-bottom: var(--wp--preset--spacing--20);
	border-bottom: 2px solid var(--wp--preset--color--mist);
}

.icons-legal-record .icons-record-item {
	max-width: 52rem;
	margin-left: 0 !important;
	margin-top: var(--wp--preset--spacing--40);
}

.icons-legal-record .icons-record-item > * + *,
.icons-legal-page .icons-record-item > * + * {
	margin-top: var(--wp--preset--spacing--20);
}

.icons-legal-record .icons-record-item h4,
.icons-legal-page .icons-record-item h4 {
	color: var(--wp--preset--color--ink);
}

.icons-legal-record .icons-record-links a,
.icons-legal-page .icons-record-links a {
	font-weight: 700;
}

/* A legal action with its document's first page beside it (content/lib.php icons_legal_item). */
.icons-record-item.has-cover {
	display: grid;
	grid-template-columns: 7.5rem minmax(0, 1fr);
	column-gap: var(--wp--preset--spacing--40);
	align-items: start;
}

.icons-record-item.has-cover > :not(.icons-record-cover) {
	grid-column: 2;
}

/* The date and court run across the top; the thumbnail starts beside the title (Scott, 2026-10-26). */
.icons-record-item.has-cover > .is-style-eyebrow {
	grid-column: 1 / -1;
	grid-row: 1;
}

.icons-record-item.has-cover > .icons-record-cover {
	grid-column: 1;
	grid-row: 2 / span 8;
	margin: var(--wp--preset--spacing--20) 0 0;
}

/* No document to show (a docket page only): a paper-style tile naming the court. */
.icons-record-cover--tile {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	box-sizing: border-box;
	aspect-ratio: 300 / 388;
	padding: 0.75rem 0.6rem;
	border: 1px solid var(--wp--preset--color--line);
	border-top: 4px solid var(--wp--preset--color--periwinkle);
	border-radius: 3px;
	background: var(--wp--preset--color--cloud);
	box-shadow: 0 1px 2px rgba(27, 31, 59, 0.08), 0 6px 16px rgba(27, 31, 59, 0.1);
	color: var(--wp--preset--color--ink);
	text-decoration: none;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.icons-record-cover--tile:hover,
.icons-record-cover--tile:focus-visible {
	transform: translateY(-3px);
	box-shadow: 0 2px 4px rgba(27, 31, 59, 0.1), 0 12px 24px rgba(27, 31, 59, 0.16);
}

.icons-record-cover__kind {
	color: var(--wp--preset--color--deep-blue);
	font-size: 0.625rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.icons-record-cover__court {
	font-family: var(--wp--preset--font-family--headings);
	font-size: 0.8125rem;
	font-weight: 700;
	line-height: 1.25;
}

.icons-record-cover__go {
	margin-top: auto;
	color: var(--wp--preset--color--deep-blue);
	font-size: 0.6875rem;
	font-weight: 700;
}

.icons-record-cover img {
	display: block;
	width: 100% !important;
	height: auto;
	border: 1px solid var(--wp--preset--color--line);
	border-radius: 3px;
	background: var(--wp--preset--color--white);
	box-shadow: 0 1px 2px rgba(27, 31, 59, 0.08), 0 6px 16px rgba(27, 31, 59, 0.1);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.icons-record-cover a:hover img,
.icons-record-cover a:focus-visible img {
	transform: translateY(-3px);
	box-shadow: 0 2px 4px rgba(27, 31, 59, 0.1), 0 12px 24px rgba(27, 31, 59, 0.16);
}

@media (max-width: 600px) {
	.icons-record-item.has-cover {
		grid-template-columns: 5rem minmax(0, 1fr);
		column-gap: var(--wp--preset--spacing--30);
	}
}

/* A legal action's outcome badge, pull quote from its document, and outcome note. */
.icons-record-item > .icons-record-outcome {
	justify-self: start;
	display: inline-block;
	width: auto;
}

.icons-record-quote {
	padding: var(--wp--preset--spacing--10) 0 var(--wp--preset--spacing--10) var(--wp--preset--spacing--30);
	border-left: 3px solid var(--wp--preset--color--periwinkle);
	color: var(--wp--preset--color--ink);
	font-size: var(--wp--preset--font-size--medium-small);
	font-style: italic;
	line-height: 1.5;
}

.icons-record-quote__cite {
	display: block;
	margin-top: var(--wp--preset--spacing--10);
	color: var(--wp--preset--color--slate);
	font-size: var(--wp--preset--font-size--tiny);
	font-style: normal;
	font-weight: 700;
	letter-spacing: 0.02em;
}

.icons-record-outcome-note {
	color: var(--wp--preset--color--slate);
}

/* "Our legal work" on Legal Advocacy (content/steps/18): a card per Legal page (step 41). */
.icons-legal-cats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--30);
	margin-top: var(--wp--preset--spacing--40);
	margin-bottom: var(--wp--preset--spacing--60);
}

@media (max-width: 900px) {
	.icons-legal-cats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.icons-legal-cats {
		grid-template-columns: minmax(0, 1fr);
	}
}

.icons-legal-cats > .icons-legal-cat {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	margin: 0;
	padding: var(--wp--preset--spacing--40);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--radius--medium);
	background: var(--wp--preset--color--white);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.icons-legal-cat > * {
	margin: 0;
}

/* The whole card is the link (the heading's link stretched over it). */
.icons-legal-cat h3 a {
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}

.icons-legal-cat h3 a::after {
	content: "";
	position: absolute;
	inset: 0;
}

.icons-legal-cat:hover,
.icons-legal-cat:focus-within {
	border-color: var(--wp--preset--color--periwinkle);
	box-shadow: 0 6px 18px rgba(27, 31, 59, 0.08);
}

.icons-legal-cat:hover h3 a,
.icons-legal-cat:focus-within h3 a {
	color: var(--wp--preset--color--deep-blue);
}

.icons-legal-cat__count {
	margin-top: auto !important;
	color: var(--wp--preset--color--slate);
	font-weight: 700;
}

.icons-legal-cats > .icons-legal-cat--help {
	background: var(--wp--preset--color--mist);
	border-color: var(--wp--preset--color--mist);
}

/* The Legal pages (content/steps/41). */
.icons-legal-page__banner {
	margin-bottom: var(--wp--preset--spacing--40) !important;
}

.icons-legal-page__banner img {
	width: 100%;
	height: auto;
	border-radius: var(--wp--custom--radius--medium);
}

.icons-legal-page__lead {
	font-size: var(--wp--preset--font-size--medium-small);
}

/* Three across, wider than the text column (Kim, 2026-10-26); stacked on phones. */
.icons-case-cards {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--30);
	position: relative;
	left: 50%;
	width: min(75rem, calc(100vw - 2.5rem));
	max-width: none !important;
	margin-block: var(--wp--preset--spacing--50) !important;
	transform: translateX(-50%);
}

@media (max-width: 900px) {
	.icons-case-cards {
		grid-template-columns: minmax(0, 1fr);
		left: auto;
		width: auto;
		transform: none;
	}
}

/* A lawsuit: photo of the athletes across the top, then the case; the whole card links to its page. */
.icons-case-cards > .icons-case-card {
	position: relative;
	display: flex;
	flex-direction: column;
	margin: 0;
	overflow: hidden;
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--radius--medium);
	background: var(--wp--preset--color--white);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.icons-case-card:hover,
.icons-case-card:focus-within {
	border-color: var(--wp--preset--color--periwinkle);
	box-shadow: 0 10px 28px rgba(27, 31, 59, 0.1);
}

.icons-case-card__photo {
	margin: 0 !important;
}

.icons-case-card__photo img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 2 / 1;
	object-fit: cover;
}

.icons-case-card__body {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	padding: var(--wp--preset--spacing--40);
}

.icons-case-card h3 {
	font-size: var(--wp--preset--font-size--medium-large) !important;
	line-height: 1.2;
}

.icons-case-card__body > * {
	margin: 0 !important;
}

.icons-case-card__body .is-style-badge {
	align-self: flex-start;
}

.icons-case-card h3 a {
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}

.icons-case-card h3 a::after {
	content: "";
	position: absolute;
	inset: 0;
}

.icons-case-card:hover h3 a,
.icons-case-card:focus-within h3 a {
	color: var(--wp--preset--color--deep-blue);
}

.icons-case-card__meta {
	color: var(--wp--preset--color--slate);
}

.icons-case-card__more {
	margin-top: auto !important;
	padding-top: var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--deep-blue);
	font-weight: 700;
}

@media (max-width: 781px) {
	.icons-case-card__body {
		padding: var(--wp--preset--spacing--40);
	}
}

.icons-legal-page > h2 {
	font-size: var(--wp--preset--font-size--large);
	margin-top: var(--wp--preset--spacing--60);
	padding-bottom: var(--wp--preset--spacing--20);
	border-bottom: 2px solid var(--wp--preset--color--mist);
}

.icons-legal-page__steps li + li {
	margin-top: var(--wp--preset--spacing--20);
}

.icons-legal-page__note {
	box-sizing: border-box;
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
	border-radius: var(--wp--custom--radius--medium);
	background: var(--wp--preset--color--cloud);
}

.icons-legal-page__back {
	margin-top: var(--wp--preset--spacing--60) !important;
	font-weight: 700;
}

/* Coverage cards: lawsuit pages' "Latest coverage" (content/steps/22) and the Social Media
   page's recent statements (content/steps/24). Eyebrow, headline, then the date at the bottom. */
.icons-lawsuit-coverage .icons-coverage-grid {
	gap: var(--wp--preset--spacing--30);
	margin-top: var(--wp--preset--spacing--40);
}

.icons-coverage-card {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	padding: var(--wp--preset--spacing--40);
}

.icons-coverage-card > * {
	margin: 0;
}

.icons-coverage-card h3 a {
	color: inherit;
	text-decoration: none;
}

.icons-coverage-card h3 a:hover,
.icons-coverage-card h3 a:focus-visible {
	color: var(--wp--preset--color--periwinkle-dark);
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

.icons-coverage-card .icons-coverage-date {
	margin-top: auto;
	color: var(--wp--preset--color--slate);
}

.icons-lawsuit-coverage > .icons-more-link {
	margin-top: var(--wp--preset--spacing--40);
}

/* Social Media page (content/steps/24). */
.icons-social-intro {
	max-width: 40rem;
	margin-inline: auto;
	color: var(--wp--preset--color--slate);
}

.icons-social-cards {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--40);
	max-width: 64rem;
	margin: var(--wp--preset--spacing--50) auto 0;
}

/* Grid items: no flow-layout top margin on the second card. */
.icons-social-cards > * {
	margin: 0;
}

@media (max-width: 700px) {
	.icons-social-cards {
		grid-template-columns: minmax(0, 1fr);
	}
}

.icons-social-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--20);
	padding: var(--wp--preset--spacing--50);
}

.icons-social-card > * {
	margin: 0;
}

.icons-social-card__logo {
	display: grid;
	place-items: center;
	width: 3.5rem;
	height: 3.5rem;
	margin-bottom: var(--wp--preset--spacing--20);
	border-radius: var(--wp--custom--radius--medium);
	color: var(--wp--preset--color--white);
	background: var(--wp--preset--color--ink);
}

.icons-social-card--instagram .icons-social-card__logo {
	background: linear-gradient(45deg, #f09433, #dc2743 50%, #bc1888);
}

.icons-social-card__logo svg {
	width: 1.75rem;
	height: 1.75rem;
	fill: currentColor;
}

.icons-social-card__handle {
	font-weight: 700;
	color: var(--wp--preset--color--periwinkle-dark);
}

.icons-social-card .wp-block-buttons {
	margin-top: auto;
	padding-top: var(--wp--preset--spacing--20);
}

.icons-social-more {
	margin-top: var(--wp--preset--spacing--40);
	color: var(--wp--preset--color--slate);
}

.icons-social-recent {
	max-width: 64rem;
	margin: var(--wp--preset--spacing--70) auto 0;
}

/* Science page (content/steps/27). */
.icons-science-page {
	max-width: 64rem;
	margin-inline: auto;
}

.icons-science-page > * + * {
	margin-top: var(--wp--preset--spacing--50);
}

/* Subhead and intro, centred under the centred page title (as on the Social Media page). */
.icons-science-subhead {
	max-width: 40rem;
	margin-inline: auto;
	margin-top: 0;
	text-align: center;
	color: var(--wp--preset--color--ink);
	text-wrap: balance;
}

.icons-science-page > .icons-science-subhead + .icons-science-intro {
	margin-top: var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--slate);
}

.icons-science-intro {
	max-width: 46rem;
	margin-inline: auto;
	text-align: center;
}

/* The Tucker quote and its claim, as a plain pull quote (no shaded box; Scott, 2026-10-26). */
.icons-science-key {
	max-width: 46rem;
	margin-inline: auto;
}

.icons-science-key > * {
	margin: 0;
}

.icons-science-key > * + * {
	margin-top: var(--wp--preset--spacing--30);
}

.icons-science-quote {
	padding: 0 0 0 var(--wp--preset--spacing--40);
	border-left: 4px solid var(--wp--preset--color--periwinkle);
}

.icons-science-quote p {
	font-family: var(--wp--preset--font-family--headings);
	font-size: var(--wp--preset--font-size--medium-large);
	font-weight: 800;
	line-height: 1.2;
	letter-spacing: -0.01em;
	color: var(--wp--preset--color--ink);
	text-wrap: balance;
}

.icons-science-quote cite {
	display: block;
	margin-top: var(--wp--preset--spacing--20);
	font-size: var(--wp--preset--font-size--small);
	font-style: normal;
	font-weight: 700;
	color: var(--wp--preset--color--periwinkle-dark);
}

@media (max-width: 600px) {
	.icons-science-quote {
		padding-left: var(--wp--preset--spacing--30);
	}

	.icons-science-quote p {
		font-size: var(--wp--preset--font-size--medium);
	}
}

.icons-science-start {
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50);
	border-left: 6px solid var(--wp--preset--color--periwinkle);
}

.icons-science-start > * {
	margin: 0;
}

.icons-science-start > * + * {
	margin-top: var(--wp--preset--spacing--20);
}

.icons-science-section.icons-science-start > h2 {
	margin-bottom: 0;
}

.icons-science-start .wp-block-buttons {
	margin-top: var(--wp--preset--spacing--30);
}

/* Section shortcuts under the subhead: a line of links between rules, as on the
   Research library ("Jump to", .icons-library__toc; Kim prefers it to pills, 2026-10-26). */
.icons-science-toc {
	padding-block: var(--wp--preset--spacing--30);
	border-block: 1px solid var(--wp--preset--color--line);
	font-size: var(--wp--preset--font-size--small);
	line-height: 2;
	color: var(--wp--preset--color--slate);
}

.icons-science-toc strong {
	color: var(--wp--preset--color--ink);
}

.icons-science-page > .icons-science-section {
	margin-top: var(--wp--preset--spacing--70);
}

.icons-science-section > h2 {
	margin: 0 0 var(--wp--preset--spacing--30);
	scroll-margin-top: calc(var(--icons-header-h, var(--wp--custom--header--height)) + var(--wp--preset--spacing--30));
}

.icons-science-section > h3 {
	margin-top: var(--wp--preset--spacing--40);
}

.icons-science-section .wp-block-columns {
	align-items: center;
	margin-top: 0;
}

.icons-science-section .wp-block-column > :first-child {
	margin-top: 0;
}

.icons-science-section__lead {
	font-size: var(--wp--preset--font-size--medium-small);
	font-weight: 700;
	color: var(--wp--preset--color--ink);
}

.icons-science-papers li + li {
	margin-top: var(--wp--preset--spacing--20);
}

.icons-science-section .wp-block-image img {
	border-radius: var(--wp--custom--radius--medium);
}

.icons-science-section .wp-block-image figcaption {
	margin-top: var(--wp--preset--spacing--20);
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--slate);
	text-align: left;
}

/* Two across (one on phones): the study cards. */
.icons-science-studies {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--40);
	margin-top: var(--wp--preset--spacing--40);
}

.icons-science-studies > *,
.icons-science-facts > *,
.icons-science-books > * {
	margin: 0;
}

@media (max-width: 700px) {
	.icons-science-studies {
		grid-template-columns: minmax(0, 1fr);
	}
}

.icons-science-study {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	padding: var(--wp--preset--spacing--40);
}

.icons-science-study > * {
	margin: 0;
}

.icons-science-study h3 {
	line-height: 1.3;
}

.icons-science-study h3 a {
	color: inherit;
}

/* Before puberty: three study cards in a row on wide screens. */
@media (min-width: 1000px) {
	.icons-science-studies--three {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* His webinar on the podcast, under his name. */
.icons-science-listen {
	margin-top: var(--wp--preset--spacing--30);
	padding: var(--wp--preset--spacing--30);
	border-radius: var(--wp--custom--radius--medium);
	background: var(--wp--preset--color--mist);
	color: var(--wp--preset--color--ink);
}

/* The researcher behind them: round photo beside name and title. */
.icons-science-researcher {
	display: flex;
	align-items: flex-start;
	gap: var(--wp--preset--spacing--30);
	margin-top: var(--wp--preset--spacing--40);
}

.icons-science-researcher > * {
	margin: 0;
}

.icons-science-section .icons-science-researcher__photo {
	flex: none;
}

.icons-science-section .icons-science-researcher__photo img {
	width: 72px;
	height: 72px;
	border-radius: 50%;
}

.icons-science-hint {
	margin-top: 0;
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--slate);
}

/* Fast facts: whole infographics (never cropped), each opens full size. */
.icons-science-facts {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--40);
	align-items: start;
	margin-top: var(--wp--preset--spacing--30);
}

@media (max-width: 700px) {
	.icons-science-facts {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--wp--preset--spacing--30);
	}
}

.icons-science-facts .wp-block-image img {
	width: 100%;
	height: auto;
	border: 1px solid var(--wp--preset--color--line);
}

/* A video beside its title, under a section's text. */
.icons-science-section .icons-science-watch {
	align-items: center;
	margin-top: var(--wp--preset--spacing--50);
	padding: var(--wp--preset--spacing--40);
	border-radius: var(--wp--custom--radius--large);
	background: var(--wp--preset--color--mist);
}

.icons-science-watch .wp-block-column > * {
	margin: 0;
}

.icons-science-watch .wp-block-column > * + * {
	margin-top: var(--wp--preset--spacing--20);
}

.icons-science-watch h3 {
	line-height: 1.3;
}

/* Books: cover beside title and author, two across (one on phones). */
.icons-science-books {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50);
}

@media (max-width: 700px) {
	.icons-science-books {
		grid-template-columns: minmax(0, 1fr);
	}
}

.icons-science-book {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--30);
}

.icons-science-book > * {
	margin: 0;
}

.icons-science-section .icons-science-book__cover {
	flex: none;
}

.icons-science-section .icons-science-book__cover img {
	display: block;
	border-radius: var(--wp--custom--radius--small);
	box-shadow: var(--wp--preset--shadow--soft);
}

.icons-science-book__title {
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.45;
	color: var(--wp--preset--color--slate);
}

.icons-science-book__title a {
	font-size: var(--wp--preset--font-size--base);
	font-weight: 700;
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}

.icons-science-book__title a:hover,
.icons-science-book__title a:focus-visible {
	color: var(--wp--preset--color--periwinkle-dark);
	text-decoration: underline;
}

/* Podcast: cover art beside the latest episodes. */
.icons-science-podcast__cols {
	align-items: flex-start !important;
}

.icons-science-podcast__cols > .wp-block-column:first-child {
	flex: 0 0 200px !important;
}

.icons-science-section .icons-science-podcast__art img {
	display: block;
	border-radius: var(--wp--custom--radius--medium);
}

.icons-science-episodes .wp-block-post-template {
	margin: var(--wp--preset--spacing--30) 0 0;
	padding: 0;
	list-style: none;
}

.icons-science-episodes .wp-block-post {
	padding-block: var(--wp--preset--spacing--20);
	border-top: 1px solid var(--wp--preset--color--line);
}

.icons-science-episodes .wp-block-post > * {
	margin: 0;
}

.icons-science-episodes .wp-block-post-date {
	color: var(--wp--preset--color--slate);
}

.icons-science-episodes .wp-block-post-title {
	display: block;
	line-height: 1.35;
}

.icons-science-episodes .wp-block-post-title a {
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}

.icons-science-episodes .wp-block-post-title a:hover,
.icons-science-episodes .wp-block-post-title a:focus-visible {
	color: var(--wp--preset--color--periwinkle-dark);
	text-decoration: underline;
}

/* Science: the testosterone gap chart (HTML/CSS bars on a 0-35 nmol/L scale). */
.icons-tchart {
	margin: 0;
	padding: var(--wp--preset--spacing--40);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--radius--large);
	background: var(--wp--preset--color--white);
	box-shadow: var(--wp--preset--shadow--soft);
	--icons-tchart-label: 7.5rem;
}

.icons-tchart__title {
	margin: 0 0 var(--wp--preset--spacing--50);
	font-family: var(--wp--preset--font-family--headings);
	font-size: var(--wp--preset--font-size--medium-small);
	font-weight: 800;
	color: var(--wp--preset--color--ink);
}

.icons-tchart__sr {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip-path: inset(50%);
	white-space: nowrap;
}

.icons-tchart__plot {
	position: relative;
	display: grid;
	gap: 0.9rem;
}

.icons-tchart__row,
.icons-tchart__axis {
	display: grid;
	grid-template-columns: var(--icons-tchart-label) minmax(0, 1fr);
	align-items: center;
	gap: var(--wp--preset--spacing--20);
}

.icons-tchart__label {
	font-size: var(--wp--preset--font-size--small);
	font-weight: 700;
	line-height: 1.25;
	color: var(--wp--preset--color--ink);
}

.icons-tchart__track {
	position: relative;
	height: 2.25rem;
	border-radius: var(--wp--custom--radius--small);
	background: var(--wp--preset--color--cloud);
}

.icons-tchart__bar {
	position: absolute;
	top: 0;
	bottom: 0;
	border-radius: var(--wp--custom--radius--small);
}

.icons-tchart__bar--women {
	background: var(--wp--preset--color--periwinkle);
}

.icons-tchart__bar--pcos {
	background: color-mix(in srgb, var(--wp--preset--color--periwinkle) 55%, white);
}

.icons-tchart__bar--men {
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--wp--preset--color--deep-blue);
	color: var(--wp--preset--color--white);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 700;
}

.icons-tchart__value {
	position: absolute;
	top: 50%;
	padding-left: 0.4rem;
	transform: translateY(-50%);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 700;
	white-space: nowrap;
	color: var(--wp--preset--color--ink);
}

/* The gap: a dashed band between the PCOS limit and the male range. The overlay
   covers the bar column only, so the band's left/width are % of the 0-30 scale. */
.icons-tchart__overlay {
	position: absolute;
	top: -0.5rem;
	bottom: 1.4rem;
	left: calc(var(--icons-tchart-label) + var(--wp--preset--spacing--20));
	right: 0;
	pointer-events: none;
}

.icons-tchart__gap {
	position: absolute;
	top: 0;
	bottom: 0;
	border-inline: 2px dashed var(--wp--preset--color--action-red);
	background: color-mix(in srgb, var(--wp--preset--color--action-red) 8%, transparent);
}

.icons-tchart__gap > span {
	position: absolute;
	bottom: 100%;
	left: 50%;
	transform: translateX(-50%);
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	white-space: nowrap;
	color: var(--wp--preset--color--action-red-dark);
}

.icons-tchart__ticks {
	position: relative;
	height: 1.2rem;
	border-top: 1px solid var(--wp--preset--color--line);
}

.icons-tchart__ticks > span {
	position: absolute;
	top: 0.2rem;
	transform: translateX(-50%);
	font-size: 0.75rem;
	white-space: nowrap;
	color: var(--wp--preset--color--slate);
}

.icons-tchart__ticks > span:last-child {
	transform: translateX(-100%);
}

.icons-tchart figcaption {
	margin-top: var(--wp--preset--spacing--30);
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.5;
	color: var(--wp--preset--color--slate);
}

@media (max-width: 600px) {
	.icons-tchart {
		padding: var(--wp--preset--spacing--30);
		--icons-tchart-label: 5.25rem;
	}
}

/* Event pages: 2023 Summit and 2022 Kickoff Conference (content/steps/29). */
.wp-block-post-content > .icons-event-page.alignwide {
	max-width: 64rem;
	margin-inline: auto;
}

.icons-event-page > * + * {
	margin-top: var(--wp--preset--spacing--50);
}

/* Date and place, then a lead line, centred under the centred page title. */
.icons-event-page > .icons-event-when {
	margin-top: 0;
	text-align: center;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--periwinkle-dark);
}

.icons-event-page > .icons-event-when + .icons-event-lead {
	margin-top: var(--wp--preset--spacing--20);
}

.wp-block-post-content .icons-event-page > .icons-event-lead + .icons-page-photo {
	margin-top: var(--wp--preset--spacing--50);
}

.icons-event-lead {
	max-width: 44rem;
	margin-inline: auto;
	text-align: center;
	color: var(--wp--preset--color--ink);
	text-wrap: balance;
}

.icons-event-toc {
	padding-block: var(--wp--preset--spacing--30);
	border-block: 1px solid var(--wp--preset--color--line);
	font-size: var(--wp--preset--font-size--small);
	line-height: 2;
	color: var(--wp--preset--color--slate);
}

.icons-event-toc strong {
	color: var(--wp--preset--color--ink);
}

.icons-event-page > .icons-event-toc + .icons-event-note {
	margin-top: var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--slate);
}

.icons-event-page > .icons-event-section {
	margin-top: var(--wp--preset--spacing--70);
}

.icons-event-section > h2 {
	margin: 0 0 var(--wp--preset--spacing--30);
	scroll-margin-top: calc(var(--icons-header-h, var(--wp--custom--header--height)) + var(--wp--preset--spacing--30));
}

.icons-event-day > .is-style-eyebrow {
	margin: 0;
}

.icons-event-day > .is-style-eyebrow + h2 {
	margin-top: var(--wp--preset--spacing--10);
}

.icons-event-page .wp-block-embed {
	margin: 0;
}

.icons-event-page .wp-block-embed figcaption {
	margin-top: var(--wp--preset--spacing--20);
	text-align: left;
	color: var(--wp--preset--color--slate);
	font-size: var(--wp--preset--font-size--small);
}

/* Summit sessions: title and speaker chips on the left, the programme text beside them. */
.icons-session {
	display: grid;
	grid-template-columns: minmax(0, 17rem) minmax(0, 1fr);
	gap: var(--wp--preset--spacing--30) var(--wp--preset--spacing--50);
	align-items: start;
	margin-top: var(--wp--preset--spacing--60);
	padding-top: var(--wp--preset--spacing--50);
	border-top: 1px solid var(--wp--preset--color--line);
}

.icons-event-page .icons-session > *,
.icons-session__head > *,
.icons-session__body > * {
	margin-block: 0;
}

.icons-session__head > * + * {
	margin-top: var(--wp--preset--spacing--30);
}

/* On wide screens the title and speakers stay in view beside long session text. */
@media (min-width: 781px) {
	.icons-session__head {
		position: sticky;
		top: calc(var(--icons-header-h, var(--wp--custom--header--height)) + var(--wp--preset--spacing--30));
	}
}

.icons-session__body > * + * {
	margin-top: var(--wp--preset--spacing--30);
}

@media (max-width: 780px) {
	.icons-session {
		grid-template-columns: minmax(0, 1fr);
	}
}

.icons-session__speakers {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--10) var(--wp--preset--spacing--20);
}

.icons-chip {
	display: inline-flex;
	align-items: center;
	gap: 0.5em;
	min-height: 40px;
	padding: 4px 14px 4px 4px;
	border-radius: var(--wp--custom--radius--pill);
	background: var(--wp--preset--color--mist);
	color: var(--wp--preset--color--ink);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
}

/* No photo: same ink and weight as the linked chips, just padded where the photo sits. */
span.icons-chip {
	padding-left: 14px;
}

a.icons-chip:hover {
	background: var(--wp--preset--color--cloud);
	color: var(--wp--preset--color--deep-blue);
}

.icons-chip img {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	flex: none;
}

/* Speakers grid. */
.icons-speakers__grid {
	gap: var(--wp--preset--spacing--30);
}

.icons-speaker {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr);
	column-gap: var(--wp--preset--spacing--30);
	align-content: start;
	align-items: center;
	padding: var(--wp--preset--spacing--30);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--radius--medium);
	background: var(--wp--preset--color--white);
	scroll-margin-top: calc(var(--icons-header-h, var(--wp--custom--header--height)) + var(--wp--preset--spacing--30));
}

.icons-speaker:target {
	border-color: var(--wp--preset--color--periwinkle);
	box-shadow: 0 0 0 3px var(--wp--preset--color--periwinkle);
}

.icons-speaker > * {
	margin-block: 0;
}

.icons-speaker > .icons-speaker__photo {
	grid-row: 1 / span 2;
	margin: 0;
}

.icons-speaker__photo img {
	display: block;
	border-radius: 50%;
}

.icons-speaker > h3 {
	align-self: end;
	line-height: 1.25;
}

.icons-speaker > .icons-speaker__country {
	align-self: start;
	margin-top: 2px;
	font-size: var(--wp--preset--font-size--tiny);
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--periwinkle-dark);
}

.icons-speaker > .icons-speaker__creds {
	grid-column: 1 / -1;
	margin-top: var(--wp--preset--spacing--30);
	padding-left: 1.1em;
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.45;
	color: var(--wp--preset--color--slate);
}

.icons-speaker__creds li + li {
	margin-top: 4px;
}

/* Kickoff video grid: titles under each video read as titles, not captions. */
.icons-event-videos {
	gap: var(--wp--preset--spacing--40) var(--wp--preset--spacing--30);
}

.icons-event-videos .wp-block-embed figcaption {
	color: var(--wp--preset--color--ink);
	font-size: var(--wp--preset--font-size--base);
	font-weight: 700;
	line-height: 1.35;
}

/* From the newsroom. */
.icons-event-news__list {
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid var(--wp--preset--color--line);
}

.icons-event-news__list li {
	padding-block: var(--wp--preset--spacing--30);
	border-bottom: 1px solid var(--wp--preset--color--line);
}

.icons-event-news__meta {
	display: block;
	margin-bottom: 2px;
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--slate);
}

.icons-event-news__list a {
	font-weight: 700;
	color: var(--wp--preset--color--ink);
}

.icons-event-news__list a:hover {
	color: var(--wp--preset--color--deep-blue);
}

/* The card linking to the other event. */
.icons-event-page > .icons-event-next {
	margin-top: var(--wp--preset--spacing--70);
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50);
	border-left: 6px solid var(--wp--preset--color--periwinkle);
}

.icons-event-next > *,
.icons-event-next__body > * {
	margin-block: 0;
}

.icons-event-next > * + *,
.icons-event-next__body > * + * {
	margin-top: var(--wp--preset--spacing--20);
}

.icons-event-next .wp-block-buttons {
	margin-top: var(--wp--preset--spacing--30);
}

.icons-event-page > .icons-event-next.has-photo {
	display: grid;
	grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
	gap: var(--wp--preset--spacing--40);
	align-items: center;
	padding: var(--wp--preset--spacing--30);
	border-left: 1px solid var(--wp--preset--color--line);
}

.icons-event-next.has-photo > .icons-event-next__body {
	margin-top: 0;
	padding-right: var(--wp--preset--spacing--30);
}

.icons-event-next__photo img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	border-radius: var(--wp--custom--radius--small);
}

@media (max-width: 700px) {
	.icons-event-page > .icons-event-next {
		padding: var(--wp--preset--spacing--30);
	}

	.icons-event-page > .icons-event-next.has-photo {
		grid-template-columns: 1fr;
	}

	.icons-event-next.has-photo > .icons-event-next__body {
		padding: 0 var(--wp--preset--spacing--10) var(--wp--preset--spacing--10);
	}
}

/* ---------- About page (content/steps/30) ---------- */

.wp-block-post-content > .icons-about-page.alignwide {
	max-width: 64rem;
	margin-inline: auto;
}

.icons-about-page > * {
	margin-block: 0;
}

.icons-about-intro > h2,
.icons-about-intro__text > h2 {
	margin: 0;
	text-wrap: balance;
}

/* Heading and lead beside the top photo (Kim and Marshi at the podium); stacked on phones. */
.icons-about-intro__head {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: var(--wp--preset--spacing--50);
	align-items: center;
}

.icons-about-intro__head > * {
	margin: 0 !important;
}

.icons-about-intro__head .icons-page-photo {
	margin: 0 !important;
}

.icons-about-intro__head .icons-page-photo img {
	aspect-ratio: 4 / 3;
}

@media (max-width: 781.98px) {
	.icons-about-intro__head {
		grid-template-columns: minmax(0, 1fr);
	}
}

.icons-about-lead {
	max-width: 44rem;
	margin-top: var(--wp--preset--spacing--30);
	color: var(--wp--preset--color--ink);
}

.icons-about-values {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--40);
	margin-top: var(--wp--preset--spacing--50);
}

@media (max-width: 781.98px) {
	.icons-about-values {
		grid-template-columns: minmax(0, 1fr);
	}
}

.icons-about-value {
	margin: 0;
	padding: var(--wp--preset--spacing--40);
}

.icons-about-value > * {
	margin: 0;
}

.icons-about-value > * + * {
	margin-top: var(--wp--preset--spacing--20);
}

.icons-about-page > .icons-about-section {
	margin-top: var(--wp--preset--spacing--70);
}

.icons-about-section > h2 {
	margin: 0 0 var(--wp--preset--spacing--40);
	scroll-margin-top: calc(var(--icons-header-h, var(--wp--custom--header--height)) + var(--wp--preset--spacing--30));
}

.icons-about-section > .is-style-eyebrow {
	margin: 0;
}

/* A founder: photos and social links beside the text; photos side by side on phones. */
.icons-founder {
	display: grid;
	grid-template-columns: 16rem minmax(0, 1fr);
	gap: var(--wp--preset--spacing--50);
	align-items: start;
}

.icons-founder + .icons-founder {
	margin-top: var(--wp--preset--spacing--60);
	padding-top: var(--wp--preset--spacing--60);
	border-top: 1px solid var(--wp--preset--color--line);
}

.icons-founder > *,
.icons-founder__media > *,
.icons-founder__body > * {
	margin: 0;
}

.icons-founder__photos {
	display: grid;
	gap: var(--wp--preset--spacing--20);
}

.icons-founder__photos .wp-block-image {
	margin: 0;
}

.icons-founder__photos img {
	width: 100%;
	aspect-ratio: 1;
	object-fit: cover;
	/* A little above centre, so the tennis photo keeps Kim's head in the square. */
	object-position: 50% 15%;
	border-radius: var(--wp--custom--radius--medium);
}

.icons-founder .icons-founder__social {
	gap: 0.625rem;
	margin-top: var(--wp--preset--spacing--30);
}

.icons-founder__social .wp-social-link {
	background: var(--wp--preset--color--mist);
	color: var(--wp--preset--color--ink);
}

.icons-founder__social .wp-social-link:hover {
	background: var(--wp--preset--color--cloud);
	transform: none;
}

.icons-founder__social .wp-social-link a {
	padding: 0.625rem;
}

.icons-founder__body > * + * {
	margin-top: var(--wp--preset--spacing--30);
}

.icons-founder__body > h3 {
	margin-top: var(--wp--preset--spacing--10);
	scroll-margin-top: calc(var(--icons-header-h, var(--wp--custom--header--height)) + var(--wp--preset--spacing--30));
}

/* Highlights as tags. */
.icons-founder__facts {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--10);
	padding: 0;
	list-style: none;
}

.icons-founder__facts li {
	margin: 0;
	padding: 0.35em 0.9em;
	border-radius: var(--wp--custom--radius--pill);
	background: var(--wp--preset--color--mist);
	color: var(--wp--preset--color--ink);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 700;
	line-height: 1.3;
}

.icons-founder__body .icons-about-quote {
	margin-top: var(--wp--preset--spacing--40);
	padding: 0 0 0 var(--wp--preset--spacing--40);
	border-left: 4px solid var(--wp--preset--color--periwinkle);
}

.icons-about-quote p {
	margin: 0;
	font-family: var(--wp--preset--font-family--headings);
	font-size: var(--wp--preset--font-size--medium);
	font-weight: 700;
	line-height: 1.35;
	color: var(--wp--preset--color--ink);
}

.icons-about-quote cite {
	display: block;
	margin-top: var(--wp--preset--spacing--20);
	font-size: var(--wp--preset--font-size--small);
	font-style: normal;
	font-weight: 700;
	color: var(--wp--preset--color--periwinkle-dark);
}

@media (max-width: 781.98px) {
	.icons-founder {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--wp--preset--spacing--40);
	}

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

/* Leadership team: a card each, headshot or initials on top; two across on desktop. */
.icons-leaders {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 22rem), 1fr));
	gap: var(--wp--preset--spacing--40);
}

.icons-leaders > .icons-leader {
	margin: 0;
	padding: var(--wp--preset--spacing--40);
}

.icons-leader > * {
	margin: 0;
}

.icons-leader > * + * {
	margin-top: var(--wp--preset--spacing--20);
}

.icons-leader__photo,
.icons-leader__initials {
	width: 6rem;
	height: 6rem;
	margin-bottom: var(--wp--preset--spacing--20) !important;
	border-radius: 50%;
}

.icons-leader__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
}

.icons-leader__initials {
	display: grid;
	place-items: center;
	background: var(--wp--preset--color--mist);
	color: var(--wp--preset--color--periwinkle-dark);
	font-family: var(--wp--preset--font-family--headings);
	font-size: var(--wp--preset--font-size--large);
	font-weight: 800;
	letter-spacing: 0.02em;
}

.icons-leader > .is-style-eyebrow + h3,
.icons-leader > .is-style-eyebrow + .icons-leader__team,
.icons-leader > .icons-leader__team + h3 {
	margin-top: var(--wp--preset--spacing--10);
}

/* A leader's interview or podcast, under their bio. */
.icons-leader__listen {
	padding-top: var(--wp--preset--spacing--20);
	border-top: 1px solid var(--wp--preset--color--line);
	color: var(--wp--preset--color--slate);
	font-size: var(--wp--preset--font-size--small);
}

.icons-leader__listen a {
	font-weight: 700;
}

/* The part of ICONS a Leadership Team member leads (ICONS Rowing, ICONS Soccer). */
.icons-leader__team {
	color: var(--wp--preset--color--slate);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 700;
}

/* Who stands with us: logos in white tiles, all the same size. */
.icons-about-allies__intro {
	margin: calc(-1 * var(--wp--preset--spacing--20)) 0 var(--wp--preset--spacing--40);
	color: var(--wp--preset--color--slate);
}

/* Four tiles a row (three on tablets, two on phones), a short last row centred. */
.icons-allies {
	--icons-allies-cols: 4;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: var(--wp--preset--spacing--30);
	margin: 0;
	padding: 0;
	list-style: none;
}

@media (max-width: 900px) {
	.icons-allies {
		--icons-allies-cols: 3;
	}
}

@media (max-width: 600px) {
	.icons-allies {
		--icons-allies-cols: 2;
	}
}

.icons-allies li {
	flex: 0 0 calc((100% - (var(--icons-allies-cols) - 1) * var(--wp--preset--spacing--30)) / var(--icons-allies-cols));
	margin: 0;
}

/* Each tile the same shape; the logo fitted inside it. */
.icons-allies a {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	aspect-ratio: 16 / 9;
	padding: var(--wp--preset--spacing--30);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--radius--medium);
	background: var(--wp--preset--color--white);
	transition: box-shadow var(--wp--custom--transition), border-color var(--wp--custom--transition);
}

.icons-allies a:hover,
.icons-allies a:focus-visible {
	border-color: var(--wp--preset--color--periwinkle);
	box-shadow: var(--wp--preset--shadow--soft);
}

.icons-allies img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.icons-about-video .wp-block-embed figcaption {
	margin-top: var(--wp--preset--spacing--20);
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--slate);
	text-align: left;
}

/* ---------- Form pages: Join the Network, Media and Donor Inquiries (content/steps/32, 33) ---------- */

.wp-block-post-content > .icons-form-page.alignwide {
	max-width: 68rem;
	margin-inline: auto;
}

/* Phones: intro, form, details. Desktop: intro and details on the left, the form beside them. */
.icons-form-page {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--wp--preset--spacing--50);
}

.icons-form-page > * {
	margin: 0 !important;
}

@media (min-width: 900px) {
	.icons-form-page {
		grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
		grid-template-areas: "intro form" "details form";
		grid-template-rows: auto 1fr;
		column-gap: var(--wp--preset--spacing--60);
		align-items: start;
	}

	.icons-form-page__intro {
		grid-area: intro;
	}

	.icons-form-page__form {
		grid-area: form;
	}

	.icons-form-page__details {
		grid-area: details;
	}
}

.icons-form-page__intro > *,
.icons-form-page__details > *,
.icons-form-page__form > * {
	margin-block: 0;
}

.icons-form-page__intro > * + *,
.icons-form-page__details > * + * {
	margin-top: var(--wp--preset--spacing--30);
}

.icons-form-page__intro > h2 {
	margin-top: var(--wp--preset--spacing--10);
	text-wrap: balance;
}

.icons-form-page__lead {
	color: var(--wp--preset--color--ink);
}

.icons-form-page__form {
	padding: var(--wp--preset--spacing--40);
	border: 1px solid var(--wp--preset--color--line);
	border-top: 4px solid var(--wp--preset--color--periwinkle);
	border-radius: var(--wp--custom--radius--medium);
	background: var(--wp--preset--color--white);
	box-shadow: var(--wp--preset--shadow--soft);
}

.icons-form-page__form > h2 {
	margin-bottom: var(--wp--preset--spacing--20);
}

.icons-form-page__form .wpforms-container.wpforms-container-full {
	margin-block: 0;
}

@media (max-width: 600px) {
	.icons-form-page__form {
		padding: var(--wp--preset--spacing--30);
	}
}

.wp-block-post-content .icons-form-page__details .icons-page-photo {
	margin: 0;
}

.icons-form-page__details > h3 {
	margin-top: var(--wp--preset--spacing--50);
}

.icons-form-page__list {
	padding-left: 1.2em;
}

.icons-form-page__list li + li {
	margin-top: var(--wp--preset--spacing--20);
}

.icons-form-page__note {
	padding: var(--wp--preset--spacing--30);
	border-radius: var(--wp--custom--radius--medium);
	background: var(--wp--preset--color--mist);
	color: var(--wp--preset--color--ink);
}

/* ---------- Roanoke College investigation (content/steps/35) ---------- */

.wp-block-post-content > .icons-roanoke.alignwide {
	max-width: 72rem;
	margin-inline: auto;
}

.icons-roanoke > * {
	margin-block: 0;
}

.icons-roanoke > * + * {
	margin-top: var(--wp--preset--spacing--40);
}

.icons-roanoke__banner img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 2560 / 495;
	object-fit: cover;
	border-radius: var(--wp--custom--radius--medium);
}

.icons-roanoke__intro {
	max-width: 48rem;
}

.icons-roanoke__intro > * {
	margin-block: 0;
}

.icons-roanoke__intro > * + * {
	margin-top: var(--wp--preset--spacing--20);
}

.icons-roanoke__lead {
	color: var(--wp--preset--color--ink);
	font-weight: 600;
}

.icons-roanoke__toc {
	padding-block: var(--wp--preset--spacing--30);
	border-block: 1px solid var(--wp--preset--color--line);
	font-size: var(--wp--preset--font-size--small);
	line-height: 2;
	color: var(--wp--preset--color--slate);
}

.icons-roanoke__toc strong {
	color: var(--wp--preset--color--ink);
}

/* Main column and the donation card beside it (stacked on phones, main first). */
.icons-roanoke__cols {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--wp--preset--spacing--60);
	align-items: start;
}

@media (min-width: 900px) {
	.icons-roanoke__cols {
		grid-template-columns: minmax(0, 1.7fr) minmax(0, 1fr);
	}
}

.icons-roanoke__cols > *,
.icons-roanoke__main > *,
.icons-roanoke__donate > * {
	margin-block: 0;
}

.icons-roanoke__main > * + * {
	margin-top: var(--wp--preset--spacing--30);
}

.icons-roanoke__main > h2 {
	margin-top: var(--wp--preset--spacing--60);
	scroll-margin-top: calc(var(--icons-header-h, 76px) + var(--wp--preset--spacing--30));
}

.icons-roanoke__main > h2:first-child {
	margin-top: 0;
}

.icons-roanoke__story {
	padding-block: var(--wp--preset--spacing--30);
	border-top: 1px solid var(--wp--preset--color--line);
}

.icons-roanoke__story > * {
	margin-block: 0;
}

.icons-roanoke__story > * + * {
	margin-top: var(--wp--preset--spacing--10);
}

.icons-roanoke__story h3 {
	line-height: 1.3;
}

.icons-roanoke__story h3 a {
	color: inherit;
}

.icons-roanoke__listen {
	padding: var(--wp--preset--spacing--30);
	border-radius: var(--wp--custom--radius--medium);
	background: var(--wp--preset--color--mist);
	color: var(--wp--preset--color--ink);
}

.icons-roanoke__donate {
	padding: var(--wp--preset--spacing--40);
	border: 1px solid var(--wp--preset--color--line);
	border-top: 4px solid var(--wp--preset--color--action-red);
	border-radius: var(--wp--custom--radius--medium);
	background: var(--wp--preset--color--white);
	box-shadow: var(--wp--preset--shadow--soft);
	scroll-margin-top: calc(var(--icons-header-h, 76px) + var(--wp--preset--spacing--30));
}

.icons-roanoke__donate > * + * {
	margin-top: var(--wp--preset--spacing--20);
}

.icons-roanoke__donate iframe[name="donorbox"] {
	display: block;
	max-width: 100% !important;
	min-width: 0 !important;
}

.icons-roanoke__check {
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--slate);
}

@media (max-width: 600px) {
	.icons-roanoke__donate {
		padding: var(--wp--preset--spacing--30);
	}
}

/* Legal record: year links and the closing line (content/steps/18). */
.icons-record-years {
	padding-block: var(--wp--preset--spacing--20);
	border-block: 1px solid var(--wp--preset--color--line);
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--slate);
}

.icons-record-years strong {
	color: var(--wp--preset--color--ink);
}

.icons-record-year {
	scroll-margin-top: calc(var(--icons-header-h, 76px) + var(--wp--preset--spacing--30));
}

.icons-record-more {
	margin-top: var(--wp--preset--spacing--50);
	padding: var(--wp--preset--spacing--30);
	border-radius: var(--wp--custom--radius--medium);
	background: var(--wp--preset--color--mist);
	color: var(--wp--preset--color--ink);
}

/* ---------- Research library (content/steps/36) ---------- */

.wp-block-post-content > .icons-library.alignwide {
	max-width: 52rem;
	margin-inline: auto;
}

.icons-library > * {
	margin-block: 0;
}

.icons-library > * + * {
	margin-top: var(--wp--preset--spacing--30);
}

.icons-library__lead {
	color: var(--wp--preset--color--ink);
}

.icons-library__note {
	padding: var(--wp--preset--spacing--30);
	border-radius: var(--wp--custom--radius--medium);
	background: var(--wp--preset--color--mist);
	color: var(--wp--preset--color--ink);
	font-size: var(--wp--preset--font-size--small);
}

.icons-library__toc {
	padding-block: var(--wp--preset--spacing--30);
	border-block: 1px solid var(--wp--preset--color--line);
	font-size: var(--wp--preset--font-size--small);
	line-height: 2;
	color: var(--wp--preset--color--slate);
}

.icons-library__toc strong {
	color: var(--wp--preset--color--ink);
}

.icons-library > .icons-library__group {
	margin-top: var(--wp--preset--spacing--60);
}

.icons-library__group > * {
	margin-block: 0;
}

.icons-library__group > h2 {
	scroll-margin-top: calc(var(--icons-header-h, 76px) + var(--wp--preset--spacing--30));
}

.icons-library__desc {
	margin-top: var(--wp--preset--spacing--20) !important;
	color: var(--wp--preset--color--slate);
}

.icons-library__papers {
	margin-top: var(--wp--preset--spacing--30) !important;
	padding-left: 1.6em;
}

.icons-library__papers li {
	padding-left: 0.2em;
	line-height: 1.5;
}

.icons-library__papers li + li {
	margin-top: var(--wp--preset--spacing--30);
}

.icons-library__papers li::marker {
	color: var(--wp--preset--color--periwinkle-dark);
	font-weight: 700;
}

.icons-library__title {
	display: block;
	font-weight: 700;
	color: var(--wp--preset--color--ink);
}

.icons-library__cite {
	display: block;
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--slate);
}

.icons-library__finding {
	display: block;
	margin-top: 0.25em;
}

.icons-library__back {
	margin-top: var(--wp--preset--spacing--60) !important;
}

/* Science page: the pointer from "Differences before puberty" to the Research library. */
.icons-science-more {
	margin-top: var(--wp--preset--spacing--40);
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--slate);
}

/* Books page (content/steps/43): the shelf moved from Science. */
.icons-books-page__lead {
	color: var(--wp--preset--color--slate);
}

.icons-books-page .icons-science-books {
	margin-top: var(--wp--preset--spacing--40);
}

/* Each book: cover beside title, publisher and a short description. */
.icons-books-page .icons-book {
	align-items: flex-start;
}

.icons-book__body > * {
	margin: 0;
}

.icons-book__body > * + * {
	margin-top: var(--wp--preset--spacing--10);
}

.icons-book__meta {
	color: var(--wp--preset--color--slate);
	font-size: var(--wp--preset--font-size--tiny);
	font-weight: 700;
	letter-spacing: 0.02em;
}

.icons-book__desc {
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.55;
}

/* Athlete Stories (content/steps/44): story cards, three across (Kim, 2026-10-27); two on tablets, one on phones. */
.icons-stories-page__lead {
	color: var(--wp--preset--color--slate);
}

.icons-stories-page > h2 {
	margin-top: var(--wp--preset--spacing--60);
}

.icons-stories {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--30);
	margin-top: var(--wp--preset--spacing--40) !important;
}

@media (max-width: 1024px) {
	.icons-stories {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 640px) {
	.icons-stories {
		grid-template-columns: minmax(0, 1fr);
	}
}

.icons-stories > .icons-story {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	margin: 0;
	padding: var(--wp--preset--spacing--40);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--radius--medium);
	background: var(--wp--preset--color--white);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.icons-stories > .icons-story--op-ed {
	border-top: 4px solid var(--wp--preset--color--periwinkle);
}

.icons-story > * {
	margin: 0 !important;
}

/* An athlete's photo across the top of her card, edge to edge. */
.icons-story > .icons-story__photo {
	margin: calc(-1 * var(--wp--preset--spacing--40)) calc(-1 * var(--wp--preset--spacing--40)) var(--wp--preset--spacing--10) !important;
}

.icons-story__photo img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 8 / 5;
	object-fit: cover;
}

.icons-stories > .icons-story:has(> .icons-story__photo) {
	overflow: hidden;
}

.icons-story h3 a {
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}

.icons-story h3 a::after {
	content: "";
	position: absolute;
	inset: 0;
}

.icons-story:hover,
.icons-story:focus-within {
	border-color: var(--wp--preset--color--periwinkle);
	box-shadow: 0 6px 18px rgba(27, 31, 59, 0.08);
}

.icons-story:hover h3 a,
.icons-story:focus-within h3 a {
	color: var(--wp--preset--color--deep-blue);
}

.icons-story__athletes {
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--ink);
}

.icons-story__quote {
	padding-left: var(--wp--preset--spacing--30);
	border-left: 3px solid var(--wp--preset--color--periwinkle);
	font-style: italic;
	line-height: 1.5;
}

.icons-story__byline {
	margin-top: auto !important;
	padding-top: var(--wp--preset--spacing--10);
	color: var(--wp--preset--color--slate);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 700;
}

.icons-stories-podcast {
	margin-top: var(--wp--preset--spacing--60) !important;
}

/* A related page link on a story card, above the card-wide link. */
.icons-story__more {
	position: relative;
	z-index: 1;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 700;
}

/* The featured video on Athlete Stories. */
.icons-stories-video {
	margin-top: var(--wp--preset--spacing--50) !important;
}

.icons-stories-video,
.icons-stories-podcast {
	padding: var(--wp--preset--spacing--50) !important;
}

.icons-stories-video > * {
	margin-block: 0 !important;
}

.icons-stories-video > * + * {
	margin-top: var(--wp--preset--spacing--20) !important;
}

.icons-stories-video .wp-block-embed {
	margin-top: var(--wp--preset--spacing--30) !important;
}

.icons-stories-video .twitter-tweet {
	margin-inline: auto !important;
}

/* A video at the top of a story card, edge to edge like the photos, and above the
   card-wide link so its controls work. */
.icons-story > .icons-story__video {
	position: relative;
	z-index: 1;
	margin: calc(-1 * var(--wp--preset--spacing--40)) calc(-1 * var(--wp--preset--spacing--40)) var(--wp--preset--spacing--10) !important;
	background: #000;
}

.icons-story__video video {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
}

.icons-stories > .icons-story:has(> .icons-story__video) {
	overflow: hidden;
}

/* Event photo grid (2022 Kickoff: meeting the athletic directors). */
.icons-event-photos__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--20);
	margin-top: var(--wp--preset--spacing--30);
}

.icons-event-photos__grid figure {
	margin: 0;
}

.icons-event-photos__grid img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: var(--wp--custom--radius--medium);
}

@media (max-width: 600px) {
	.icons-event-photos__grid {
		grid-template-columns: minmax(0, 1fr);
	}
}
