/* Public AARN Core profile and directory presentation. */
.aarn-core-profile,
.aarn-core-directory {
	box-sizing: border-box;
}

/*
 * On Core-managed Driver and Team records, the profile renderer supplies the
 * name, headshot/logo, and identity. Hide only the theme's duplicate post
 * chrome, while leaving the theme shell, header, footer, and navigation intact.
 */
body.aarn-core-profile-template .wp-block-post-featured-image,
body.aarn-core-profile-template .wp-block-post-title,
body.aarn-core-profile-template .wp-block-post-date,
body.aarn-core-profile-template .wp-block-post-author,
body.aarn-core-profile-template .wp-block-post-author-name,
body.aarn-core-profile-template .entry-header,
body.aarn-core-profile-template .entry-meta,
body.aarn-core-profile-template .post-meta,
body.aarn-core-profile-template .byline {
	display: none !important;
}

.aarn-core-profile {
	--aarn-profile-border: rgba(20, 20, 20, 0.2);
	--aarn-profile-muted: rgba(20, 20, 20, 0.68);
	--aarn-profile-accent: #bd0b21;
	margin: 0 0 2rem;
	padding: clamp(1.25rem, 3vw, 2.5rem);
	border: 1px solid var(--aarn-profile-border);
	border-top: 0.35rem solid var(--aarn-profile-accent);
	border-radius: 0.75rem;
	background: #fff;
	color: #141414;
	box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.08);
}

.aarn-core-profile a {
	color: inherit;
	text-decoration-color: var(--aarn-profile-accent);
	text-decoration-thickness: 0.12em;
	text-underline-offset: 0.12em;
}

.aarn-core-profile__hero {
	display: grid;
	grid-template-columns: minmax(0, 17rem) minmax(0, 1fr);
	gap: clamp(1.25rem, 3vw, 2.5rem);
	align-items: center;
}

.aarn-core-profile__image {
	margin: 0;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	border: 1px solid var(--aarn-profile-border);
	border-radius: 0.6rem;
	background: #111;
}

.aarn-core-driver-profile .aarn-core-profile__image {
	aspect-ratio: 4 / 5;
	border-radius: 0.6rem;
}

/* Preserve the entire driver photo instead of cropping faces or helmets. */
.aarn-core-driver-profile .aarn-core-profile__image img {
	object-fit: contain;
	object-position: center;
}

.aarn-core-profile__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.aarn-core-team-profile .aarn-core-profile__image img {
	object-fit: contain;
}

.aarn-core-profile__image--empty {
	display: grid;
	place-items: center;
	padding: 1rem;
	color: #fff;
	text-align: center;
}

.aarn-core-profile__eyebrow {
	margin: 0 0 0.4rem;
	color: var(--aarn-profile-accent);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.aarn-core-profile__name {
	margin: 0 0 1rem;
	font-size: clamp(2rem, 5vw, 3.8rem);
	line-height: 1.05;
}

.aarn-core-profile__identity,
.aarn-core-profile__socials {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
}

.aarn-core-profile__identity {
	margin-bottom: 1rem;
}

.aarn-core-profile__id,
.aarn-core-profile__status {
	display: inline-block;
	padding: 0.28rem 0.6rem;
	border-radius: 999px;
	font-size: 0.8rem;
	font-weight: 800;
	line-height: 1.35;
}

.aarn-core-profile__id {
	background: #111;
	color: #fff;
}

.aarn-core-profile__status {
	border: 1px solid var(--aarn-profile-accent);
	color: var(--aarn-profile-accent);
}

.aarn-core-profile__team,
.aarn-core-profile__detail {
	margin: 0.5rem 0;
}

.aarn-core-profile__team span,
.aarn-core-profile__detail span {
	display: inline-block;
	min-width: 7rem;
	color: var(--aarn-profile-muted);
	font-weight: 800;
}

.aarn-core-profile__socials {
	margin-top: 1.2rem;
}

.aarn-core-profile__socials a {
	padding: 0.4rem 0.65rem;
	border: 1px solid var(--aarn-profile-border);
	border-radius: 999px;
	font-size: 0.85rem;
	font-weight: 800;
	text-decoration: none;
}

.aarn-core-profile__bio,
.aarn-core-profile__roster {
	margin-top: 2rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--aarn-profile-border);
}

.aarn-core-profile__bio h2,
.aarn-core-profile__roster h2 {
	margin: 0 0 0.75rem;
	font-size: 1.2rem;
}

.aarn-core-profile__bio p:last-child {
	margin-bottom: 0;
}

.aarn-core-profile__stats {
	display: grid;
	grid-template-columns: repeat(7, minmax(0, 1fr));
	gap: 0.65rem;
	margin-top: 2rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--aarn-profile-border);
}

.aarn-core-stat {
	padding: 0.8rem 0.55rem;
	border: 1px solid var(--aarn-profile-border);
	border-radius: 0.45rem;
	text-align: center;
}

.aarn-core-stat__value,
.aarn-core-stat__label {
	display: block;
}

.aarn-core-stat__value {
	font-size: 1.25rem;
	font-weight: 900;
}

.aarn-core-stat__label {
	margin-top: 0.12rem;
	color: var(--aarn-profile-muted);
	font-size: 0.72rem;
	font-weight: 800;
	line-height: 1.25;
	text-transform: uppercase;
}

.aarn-core-profile__roster ul {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
	gap: 0.6rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.aarn-core-profile__roster li {
	padding: 0.65rem 0.8rem;
	border: 1px solid var(--aarn-profile-border);
	border-radius: 0.4rem;
	font-weight: 800;
}

.aarn-core-directory__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
	gap: 1rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.aarn-core-directory-card {
	overflow: hidden;
	border: 1px solid var(--aarn-profile-border);
	border-radius: 0.6rem;
	background: #fff;
}

.aarn-core-directory-card__image {
	display: block;
	aspect-ratio: 16 / 10;
	background: #111;
}

.aarn-core-directory-card__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.aarn-core-directory-card__body {
	padding: 0.9rem;
}

.aarn-core-directory-card__title,
.aarn-core-directory-card__meta {
	display: block;
}

.aarn-core-directory-card__title {
	font-weight: 900;
}

.aarn-core-directory-card__meta {
	margin-top: 0.25rem;
	color: var(--aarn-profile-muted);
	font-size: 0.86rem;
}

@media (max-width: 720px) {
	.aarn-core-profile {
		padding: 1.15rem;
	}

	.aarn-core-profile__hero {
		grid-template-columns: 1fr;
	}

	.aarn-core-profile__image {
		max-width: 16rem;
	}

	.aarn-core-profile__stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}


/* Public Series and Season profiles. */
body.aarn-core-competition-template .wp-block-post-featured-image,
body.aarn-core-competition-template .wp-block-post-title,
body.aarn-core-competition-template .wp-block-post-date,
body.aarn-core-competition-template .wp-block-post-author,
body.aarn-core-competition-template .wp-block-post-author-name,
body.aarn-core-competition-template .entry-header,
body.aarn-core-competition-template .entry-meta,
body.aarn-core-competition-template .post-meta,
body.aarn-core-competition-template .byline {
	display: none !important;
}

.aarn-core-competition {
	--aarn-competition-border: rgba(20, 20, 20, 0.2);
	--aarn-competition-muted: rgba(20, 20, 20, 0.68);
	--aarn-competition-accent: #bd0b21;
	box-sizing: border-box;
	margin: 0 0 2rem;
	padding: clamp(1.25rem, 3vw, 2.5rem);
	border: 1px solid var(--aarn-competition-border);
	border-top: 0.35rem solid var(--aarn-competition-accent);
	border-radius: 0.75rem;
	background: #fff;
	color: #141414;
	box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.08);
}

.aarn-core-competition a {
	color: inherit;
	text-decoration-color: var(--aarn-competition-accent);
	text-decoration-thickness: 0.12em;
	text-underline-offset: 0.12em;
}

.aarn-core-competition__hero {
	display: grid;
	grid-template-columns: minmax(0, 14rem) minmax(0, 1fr);
	gap: clamp(1.25rem, 3vw, 2.5rem);
	align-items: center;
}

.aarn-core-competition__image {
	display: grid;
	place-items: center;
	margin: 0;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	border: 1px solid var(--aarn-competition-border);
	border-radius: 0.6rem;
	background: #111;
}

.aarn-core-competition__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.aarn-core-competition__image--empty {
	padding: 1rem;
	color: #fff;
	font-weight: 800;
	text-align: center;
}

.aarn-core-competition__eyebrow {
	margin: 0 0 0.4rem;
	color: var(--aarn-competition-accent);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.aarn-core-competition__name {
	margin: 0 0 1rem;
	font-size: clamp(2rem, 5vw, 3.8rem);
	line-height: 1.05;
}

.aarn-core-competition__identity {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
	margin-bottom: 1rem;
}

.aarn-core-competition__id,
.aarn-core-competition__status {
	display: inline-block;
	padding: 0.28rem 0.6rem;
	border-radius: 999px;
	font-size: 0.8rem;
	font-weight: 800;
	line-height: 1.35;
}

.aarn-core-competition__id {
	background: #111;
	color: #fff;
}

.aarn-core-competition__status {
	border: 1px solid var(--aarn-competition-accent);
	color: var(--aarn-competition-accent);
}

.aarn-core-competition__detail {
	margin: 0.5rem 0;
}

.aarn-core-competition__detail span {
	display: inline-block;
	min-width: 7.75rem;
	color: var(--aarn-competition-muted);
	font-weight: 800;
}

.aarn-core-competition__description,
.aarn-core-competition__details,
.aarn-core-competition__seasons,
.aarn-core-competition__roster {
	margin-top: 2rem;
	padding-top: 1.5rem;
	border-top: 1px solid var(--aarn-competition-border);
}

.aarn-core-competition__description h2,
.aarn-core-competition__details h2,
.aarn-core-competition__seasons h2,
.aarn-core-competition__roster h2 {
	margin: 0 0 0.75rem;
	font-size: 1.2rem;
}

.aarn-core-competition__description p:last-child {
	margin-bottom: 0;
}

.aarn-core-competition__details dl {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
	gap: 0.65rem;
	margin: 0;
}

.aarn-core-competition__details dl div {
	padding: 0.8rem;
	border: 1px solid var(--aarn-competition-border);
	border-radius: 0.45rem;
}

.aarn-core-competition__details dt {
	color: var(--aarn-competition-muted);
	font-size: 0.74rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.aarn-core-competition__details dd {
	margin: 0.3rem 0 0;
	font-weight: 900;
}

.aarn-core-season-cards,
.aarn-core-season-roster {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
	gap: 0.75rem;
	margin: 0;
	padding: 0;
	list-style: none;
}

.aarn-core-season-card,
.aarn-core-season-roster__entry {
	padding: 0.85rem;
	border: 1px solid var(--aarn-competition-border);
	border-radius: 0.45rem;
}

.aarn-core-season-card a,
.aarn-core-season-roster__driver,
.aarn-core-season-roster__team,
.aarn-core-season-roster__badges {
	display: block;
}

.aarn-core-season-card__title,
.aarn-core-season-roster__driver {
	font-weight: 900;
}

.aarn-core-season-card__meta,
.aarn-core-season-roster__team,
.aarn-core-season-roster__badges {
	margin-top: 0.28rem;
	color: var(--aarn-competition-muted);
	font-size: 0.86rem;
}

.aarn-core-season-roster__badges {
	font-weight: 700;
}

@media (max-width: 720px) {
	.aarn-core-competition {
		padding: 1.15rem;
	}

	.aarn-core-competition__hero {
		grid-template-columns: 1fr;
	}

	.aarn-core-competition__image {
		max-width: 14rem;
	}
}

.aarn-core-competition__schedule,
.aarn-core-competition__standings,
.aarn-core-event__results,
.aarn-core-event__description {
	margin-top: 2rem;
	padding-top: 1.35rem;
	border-top: 1px solid var(--aarn-competition-border);
}

.aarn-core-table-wrap {
	overflow-x: auto;
	border: 1px solid var(--aarn-competition-border);
	border-radius: 0.55rem;
}

.aarn-core-table-wrap table {
	width: 100%;
	min-width: 42rem;
	margin: 0;
	border-collapse: collapse;
}

.aarn-core-table-wrap th,
.aarn-core-table-wrap td {
	padding: 0.72rem 0.8rem;
	border-bottom: 1px solid var(--aarn-competition-border);
	text-align: left;
	vertical-align: middle;
}

.aarn-core-table-wrap th {
	background: #f7f7f7;
	color: var(--aarn-competition-muted);
	font-size: 0.72rem;
	font-weight: 900;
	letter-spacing: 0.055em;
	text-transform: uppercase;
}

.aarn-core-table-wrap tr:last-child td {
	border-bottom: 0;
}

.aarn-core-standings__number {
	font-size: 0.86em;
	font-weight: 800;
}

.aarn-core-event {
	max-width: 58rem;
	margin: 2rem auto;
	padding: clamp(1.25rem, 4vw, 2.4rem);
	border-top: 4px solid var(--aarn-competition-accent);
	border-radius: 0.7rem;
	background: var(--aarn-competition-surface);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.07);
}

.aarn-core-event__eyebrow {
	margin: 0 0 0.45rem;
	color: var(--aarn-competition-accent);
	font-size: 0.72rem;
	font-weight: 900;
	letter-spacing: 0.13em;
	text-transform: uppercase;
}

.aarn-core-event h1 {
	margin: 0;
}

.aarn-core-event__identity {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	margin-top: 0.85rem;
}

.aarn-core-event__identity span {
	display: inline-block;
	padding: 0.25rem 0.55rem;
	border-radius: 999px;
	font-size: 0.78rem;
	font-weight: 900;
}

.aarn-core-event__identity span:first-child {
	background: #111;
	color: #fff;
}

.aarn-core-event__identity span:last-child {
	border: 1px solid var(--aarn-competition-accent);
	color: var(--aarn-competition-accent);
}

.aarn-core-event__details {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
	gap: 0.65rem;
	margin: 1.25rem 0 0;
}

.aarn-core-event__details div {
	padding: 0.75rem;
	border: 1px solid var(--aarn-competition-border);
	border-radius: 0.45rem;
}

.aarn-core-event__details dt {
	color: var(--aarn-competition-muted);
	font-size: 0.72rem;
	font-weight: 900;
	letter-spacing: 0.055em;
	text-transform: uppercase;
}

.aarn-core-event__details dd {
	margin: 0.28rem 0 0;
	font-weight: 800;
}

.aarn-core-event__broadcast {
	margin: 1.2rem 0 0;
}

.aarn-core-season-card a,
.aarn-core-season-roster__entry a,
.aarn-core-table-wrap a,
.aarn-core-event a {
	text-decoration: none;
}

.aarn-core-season-card a:hover,
.aarn-core-season-roster__entry a:hover,
.aarn-core-table-wrap a:hover,
.aarn-core-event a:hover {
	text-decoration: underline;
}

.aarn-core-season-card__title,
.aarn-core-season-card__meta {
	display: block;
}

.aarn-core-season-card__meta {
	margin-top: 0.32rem;
}

/* Track hero and layout media on AARN Event Profiles. */
.aarn-core-event__track-media {
	display: grid;
	grid-template-columns: minmax(0, 1.7fr) minmax(220px, 0.8fr);
	gap: 1rem;
	margin: 1.5rem 0;
}
.aarn-core-event__track-hero,
.aarn-core-event__track-layout {
	margin: 0;
	padding: 0;
}
.aarn-core-event__track-hero img,
.aarn-core-event__track-layout img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 10px;
}
.aarn-core-event__track-layout figcaption {
	margin: 0 0 0.5rem;
	font-size: 0.85rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}
@media (max-width: 760px) {
	.aarn-core-event__track-media {
		grid-template-columns: 1fr;
	}
}


/* Results: normal classified finishes do not need a redundant status column. */
.aarn-core-result-status {
	display: inline-block;
	margin-left: 0.38rem;
	padding: 0.14rem 0.38rem;
	border: 1px solid currentColor;
	border-radius: 999px;
	font-size: 0.68rem;
	font-weight: 900;
	letter-spacing: 0.04em;
	line-height: 1.2;
	vertical-align: middle;
}

.aarn-core-result-status--dnf,
.aarn-core-result-status--dq,
.aarn-core-result-status--dns {
	color: #a51f1f;
}

/* v0.7.8 schedule/standings polish: avoid clipped tables inside narrow theme columns. */
.aarn-core-competition,
.aarn-core-event {
	--aarn-competition-border: rgba(20, 20, 20, 0.2);
	--aarn-competition-muted: rgba(20, 20, 20, 0.68);
	--aarn-competition-accent: #bd0b21;
	--aarn-competition-surface: #fff;
}

.aarn-core-schedule-list,
.aarn-core-standings-list {
	display: grid;
	gap: 0.75rem;
}

.aarn-core-schedule-card,
.aarn-core-standings-card {
	display: grid;
	grid-template-columns: 4.25rem minmax(0, 1fr) minmax(9rem, auto);
	gap: 0.85rem;
	align-items: center;
	padding: 0.85rem;
	border: 1px solid var(--aarn-competition-border);
	border-radius: 0.6rem;
	background: #fff;
}

.aarn-core-schedule-card--bye {
	background: #f7f7f7;
}

.aarn-core-schedule-card__round,
.aarn-core-standings-card__rank {
	display: grid;
	place-items: center;
	min-height: 3.2rem;
	border-radius: 0.45rem;
	background: #111;
	color: #fff;
	text-align: center;
}

.aarn-core-schedule-card--bye .aarn-core-schedule-card__round {
	background: #666;
}

.aarn-core-schedule-card__round span,
.aarn-core-standings-card__rank span {
	font-size: 0.62rem;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.aarn-core-schedule-card__round strong,
.aarn-core-standings-card__rank strong {
	font-size: 1.2rem;
	line-height: 1;
}

.aarn-core-schedule-card__main,
.aarn-core-schedule-card__meta,
.aarn-core-standings-card__driver,
.aarn-core-standings-card__stats {
	min-width: 0;
}

.aarn-core-schedule-card__date {
	display: block;
	color: var(--aarn-competition-muted);
	font-size: 0.88rem;
	font-weight: 800;
}

.aarn-core-schedule-card__title {
	margin: 0.16rem 0 0;
	font-size: 1.05rem;
	line-height: 1.2;
}

.aarn-core-schedule-card__title a,
.aarn-core-standings-card__driver a {
	text-decoration: none;
}

.aarn-core-schedule-card__track,
.aarn-core-schedule-card__setup {
	margin: 0.24rem 0 0;
	line-height: 1.35;
}

.aarn-core-schedule-card__setup {
	color: var(--aarn-competition-muted);
	font-size: 0.88rem;
	font-weight: 700;
}

.aarn-core-schedule-card__meta {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	justify-content: flex-end;
}

.aarn-core-schedule-card__meta span {
	display: inline-flex;
	align-items: center;
	padding: 0.25rem 0.48rem;
	border: 1px solid var(--aarn-competition-border);
	border-radius: 999px;
	font-size: 0.72rem;
	font-weight: 900;
	line-height: 1.2;
}

.aarn-core-standings-card {
	grid-template-columns: 4.25rem minmax(10rem, 1.1fr) minmax(0, 2.4fr);
}

.aarn-core-standings-card__driver {
	font-size: 1rem;
	font-weight: 900;
	line-height: 1.25;
}

.aarn-core-standings-card__stats {
	display: grid;
	grid-template-columns: repeat(6, minmax(4.2rem, 1fr));
	gap: 0.45rem;
	margin: 0;
}

.aarn-core-standings-card__stats div {
	padding: 0.45rem 0.5rem;
	border: 1px solid var(--aarn-competition-border);
	border-radius: 0.45rem;
	text-align: center;
}

.aarn-core-standings-card__stats dt {
	color: var(--aarn-competition-muted);
	font-size: 0.66rem;
	font-weight: 900;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.aarn-core-standings-card__stats dd {
	margin: 0.12rem 0 0;
	font-size: 1rem;
	font-weight: 900;
}

@media (max-width: 860px) {
	.aarn-core-schedule-card,
	.aarn-core-standings-card {
		grid-template-columns: 3.75rem minmax(0, 1fr);
	}

	.aarn-core-schedule-card__meta,
	.aarn-core-standings-card__stats {
		grid-column: 2;
		justify-content: flex-start;
	}

	.aarn-core-standings-card__stats {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 520px) {
	.aarn-core-schedule-card,
	.aarn-core-standings-card {
		grid-template-columns: 1fr;
	}

	.aarn-core-schedule-card__round,
	.aarn-core-standings-card__rank {
		width: 4.25rem;
		min-height: 3rem;
	}

	.aarn-core-schedule-card__meta,
	.aarn-core-standings-card__stats {
		grid-column: auto;
	}

	.aarn-core-standings-card__stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* v0.7.9 public directory search and standings cleanup. */
.aarn-core-directory-search {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
	align-items: center;
	margin: 0 0 1.1rem;
}

.aarn-core-directory-search input[type="search"] {
	box-sizing: border-box;
	flex: 1 1 16rem;
	min-width: 0;
	padding: 0.65rem 0.75rem;
	border: 1px solid var(--aarn-profile-border, rgba(20, 20, 20, 0.2));
	border-radius: 0.5rem;
	font: inherit;
}

.aarn-core-directory-search button,
.aarn-core-directory-search__clear {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.55rem;
	padding: 0.5rem 0.85rem;
	border: 1px solid #111;
	border-radius: 0.5rem;
	background: #111;
	color: #fff;
	font-weight: 900;
	text-decoration: none;
	cursor: pointer;
}

.aarn-core-directory-search__clear {
	background: #fff;
	color: #111;
}

.aarn-core-standings-list {
	max-width: 100%;
	overflow: visible;
}

.aarn-core-standings-card {
	grid-template-columns: 4.25rem minmax(0, 1fr);
	align-items: center;
	max-width: 100%;
	overflow: hidden;
}

.aarn-core-standings-card__driver {
	min-width: 0;
	word-break: break-word;
}

.aarn-core-standings-card__stats {
	grid-column: 1 / -1;
	grid-template-columns: repeat(auto-fit, minmax(4.35rem, 1fr));
	width: 100%;
}

.aarn-core-standings-card__stats div {
	min-width: 0;
}

@media (max-width: 520px) {
	.aarn-core-directory-search {
		align-items: stretch;
	}

	.aarn-core-directory-search input[type="search"],
	.aarn-core-directory-search button,
	.aarn-core-directory-search__clear {
		width: 100%;
	}

	.aarn-core-standings-card__stats {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* v0.8.0 archive directories and narrow-theme standings hardening. */
.aarn-core-directory-template,
.aarn-core-directory-page {
	box-sizing: border-box;
	max-width: min(1120px, calc(100vw - 2rem));
	margin: 0 auto;
	padding: 1.5rem 1rem 3rem;
}

.aarn-core-directory-page__header {
	margin: 0 0 1.35rem;
}

.aarn-core-directory-page__header h1 {
	margin: 0;
}

.aarn-core-standings-list {
	width: 100%;
	max-width: 100%;
	overflow: hidden;
}

.aarn-core-standings-card,
.aarn-core-competition .aarn-core-standings-card {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem;
	width: 100%;
	max-width: 100%;
	box-sizing: border-box;
	overflow: hidden;
}

.aarn-core-standings-card__rank {
	flex: 0 0 4.25rem;
}

.aarn-core-standings-card__driver {
	flex: 1 1 14rem;
	min-width: 0;
}

.aarn-core-standings-card__stats,
.aarn-core-competition .aarn-core-standings-card__stats {
	flex: 1 1 100%;
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	width: 100%;
	max-width: 100%;
	min-width: 0;
	box-sizing: border-box;
	margin: 0;
}

.aarn-core-standings-card__stats div,
.aarn-core-competition .aarn-core-standings-card__stats div {
	flex: 1 1 4.7rem;
	min-width: 4.35rem;
	max-width: 100%;
	box-sizing: border-box;
}

@media (max-width: 640px) {
	.aarn-core-directory-template,
	.aarn-core-directory-page {
		max-width: calc(100vw - 1rem);
		padding-inline: 0.5rem;
	}

	.aarn-core-standings-card__rank {
		flex-basis: 3.85rem;
	}

	.aarn-core-standings-card__driver {
		flex-basis: calc(100% - 5rem);
	}

	.aarn-core-standings-card__stats div,
	.aarn-core-competition .aarn-core-standings-card__stats div {
		flex-basis: calc(50% - 0.5rem);
	}
}

/* v0.8.1 directory archive polish: preserve image previews and tame theme archive chrome. */
.aarn-core-directory-template {
	box-sizing: border-box;
	width: min(100%, 76rem);
	margin: 0 auto;
	padding: clamp(1.25rem, 4vw, 2.5rem);
}

.aarn-core-directory-page__header {
	margin: 0 0 1.2rem;
}

.aarn-core-directory-page__header h1 {
	margin: 0;
	font-size: clamp(2.4rem, 6vw, 4.25rem);
	line-height: 1.02;
}

body.aarn-core-driver-directory-template .wp-block-post-title,
body.aarn-core-team-directory-template .wp-block-post-title,
body.aarn-core-driver-directory-template .archive-title,
body.aarn-core-team-directory-template .archive-title,
body.aarn-core-driver-directory-template .page-title,
body.aarn-core-team-directory-template .page-title {
	display: none !important;
}

body.aarn-core-driver-directory-template header .wp-block-site-title a,
body.aarn-core-team-directory-template header .wp-block-site-title a,
body.aarn-core-driver-directory-template header .site-title a,
body.aarn-core-team-directory-template header .site-title a,
body.aarn-core-driver-directory-template .site-title a,
body.aarn-core-team-directory-template .site-title a {
	font-size: clamp(1.35rem, 2.5vw, 2rem) !important;
	line-height: 1.1 !important;
	text-decoration: none !important;
}

body.aarn-core-driver-directory-template header .wp-block-site-tagline,
body.aarn-core-team-directory-template header .wp-block-site-tagline,
body.aarn-core-driver-directory-template header .site-description,
body.aarn-core-team-directory-template header .site-description {
	font-size: 0.95rem !important;
	line-height: 1.35 !important;
}

.aarn-core-directory__grid {
	grid-template-columns: repeat(auto-fill, minmax(13.75rem, 1fr));
	align-items: stretch;
}

.aarn-core-directory-card {
	display: flex;
	flex-direction: column;
	min-width: 0;
	box-shadow: 0 0.75rem 1.7rem rgba(0, 0, 0, 0.04);
}

.aarn-core-directory-card__image {
	position: relative;
	display: grid;
	place-items: center;
	overflow: hidden;
	background: #111;
	text-decoration: none !important;
}

.aarn-core-driver-directory .aarn-core-directory-card__image,
.aarn-core-directory-card--drivers .aarn-core-directory-card__image {
	aspect-ratio: 4 / 5;
}

.aarn-core-team-directory .aarn-core-directory-card__image,
.aarn-core-directory-card--teams .aarn-core-directory-card__image {
	aspect-ratio: 16 / 10;
}

.aarn-core-directory-card__image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
	background: #111;
}

.aarn-core-directory-card__placeholder {
	display: grid;
	place-items: center;
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, #111, #262626);
	color: #fff;
	font-size: clamp(2rem, 8vw, 3.5rem);
	font-weight: 900;
	letter-spacing: 0.04em;
}

.aarn-core-directory-card__body {
	flex: 1;
	background: #fff;
}

.aarn-core-directory-card__title {
	color: inherit;
	text-decoration: none !important;
}

.aarn-core-directory-card__title:hover,
.aarn-core-directory-card__title:focus {
	text-decoration: underline !important;
	text-decoration-thickness: 0.1em !important;
	text-underline-offset: 0.15em !important;
}

@media (max-width: 640px) {
	.aarn-core-directory-template {
		padding-inline: 1rem;
	}

	.aarn-core-directory__grid {
		grid-template-columns: repeat(auto-fill, minmax(10.5rem, 1fr));
	}
}


/* v0.8.2: suppress fallback theme archive chrome on Core-managed directory archives only. */
body.aarn-core-driver-directory-template > header,
body.aarn-core-team-directory-template > header,
body.aarn-core-driver-directory-template #masthead,
body.aarn-core-team-directory-template #masthead,
body.aarn-core-driver-directory-template .site-header,
body.aarn-core-team-directory-template .site-header,
body.aarn-core-driver-directory-template .wp-site-blocks > header,
body.aarn-core-team-directory-template .wp-site-blocks > header,
body.aarn-core-driver-directory-template .wp-block-template-part:has(header),
body.aarn-core-team-directory-template .wp-block-template-part:has(header) {
	display: none !important;
}

body.aarn-core-driver-directory-template,
body.aarn-core-team-directory-template {
	background: #f7f7f7;
}

body.aarn-core-driver-directory-template .aarn-core-directory-template,
body.aarn-core-team-directory-template .aarn-core-directory-template {
	padding-top: clamp(1.25rem, 4vw, 3rem);
}

/* v0.8.3: self-contained Core directory shell for driver/team archives. */
body.aarn-core-directory-standalone {
	margin: 0;
	background: #f7f7f7;
	color: #111;
}

body.aarn-core-directory-standalone .aarn-core-directory-shell {
	min-height: 100vh;
}

body.aarn-core-directory-standalone .aarn-core-directory-shell__bar {
	box-sizing: border-box;
	width: 100%;
	padding: 1rem clamp(1rem, 4vw, 2rem);
	border-bottom: 1px solid rgba(17, 17, 17, 0.14);
	background: #111;
	color: #fff;
}

body.aarn-core-directory-standalone .aarn-core-directory-shell__brand {
	display: inline-block;
	color: #fff;
	font-size: clamp(1.35rem, 3vw, 2.35rem);
	font-weight: 900;
	line-height: 1;
	text-decoration: none;
}

body.aarn-core-directory-standalone .aarn-core-directory-shell__bar p {
	margin: 0.35rem 0 0;
	color: rgba(255, 255, 255, 0.76);
	font-size: 0.95rem;
}

body.aarn-core-directory-standalone .aarn-core-directory-template {
	padding-top: clamp(1.5rem, 4vw, 3rem);
}

/* v0.8.4: optional visitor Dark Mode for public AARN Core pages. */
.aarn-core-theme-toggle {
	position: fixed;
	right: clamp(0.85rem, 2vw, 1.35rem);
	bottom: clamp(0.85rem, 2vw, 1.35rem);
	z-index: 9999;
	display: inline-flex;
	gap: 0.45rem;
	align-items: center;
	justify-content: center;
	min-height: 2.65rem;
	padding: 0.58rem 0.82rem;
	border: 1px solid rgba(255, 255, 255, 0.24);
	border-radius: 999px;
	background: #111;
	color: #fff;
	box-shadow: 0 0.7rem 1.7rem rgba(0, 0, 0, 0.18);
	font: inherit;
	font-size: 0.85rem;
	font-weight: 900;
	line-height: 1;
	cursor: pointer;
}

.aarn-core-theme-toggle:hover,
.aarn-core-theme-toggle:focus {
	transform: translateY(-1px);
}

.aarn-core-theme-toggle:focus-visible {
	outline: 3px solid #bd0b21;
	outline-offset: 3px;
}

html.aarn-core-theme-dark body,
html.aarn-core-theme-dark body.aarn-core-directory-standalone {
	background: #08090d;
	color: #f4f6fb;
}

html.aarn-core-theme-dark body.aarn-core-directory-standalone .aarn-core-directory-shell__bar {
	border-bottom-color: rgba(255, 255, 255, 0.12);
	background: #050508;
}

html.aarn-core-theme-dark .aarn-core-directory-template,
html.aarn-core-theme-dark .aarn-core-directory-page {
	color: #f4f6fb;
}

html.aarn-core-theme-dark .aarn-core-profile,
html.aarn-core-theme-dark .aarn-core-competition,
html.aarn-core-theme-dark .aarn-core-event {
	--aarn-profile-border: rgba(255, 255, 255, 0.16);
	--aarn-profile-muted: rgba(244, 246, 251, 0.72);
	--aarn-competition-border: rgba(255, 255, 255, 0.16);
	--aarn-competition-muted: rgba(244, 246, 251, 0.72);
	--aarn-competition-surface: #11131a;
	background: #11131a;
	color: #f4f6fb;
	box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.38);
}

html.aarn-core-theme-dark .aarn-core-profile__id,
html.aarn-core-theme-dark .aarn-core-competition__id,
html.aarn-core-theme-dark .aarn-core-event__identity span:first-child,
html.aarn-core-theme-dark .aarn-core-schedule-card__round,
html.aarn-core-theme-dark .aarn-core-standings-card__rank {
	background: #f4f6fb;
	color: #0b0c10;
}

html.aarn-core-theme-dark .aarn-core-profile__image,
html.aarn-core-theme-dark .aarn-core-competition__image,
html.aarn-core-theme-dark .aarn-core-directory-card__image,
html.aarn-core-theme-dark .aarn-core-directory-card__image img {
	background: #050508;
}

html.aarn-core-theme-dark .aarn-core-stat,
html.aarn-core-theme-dark .aarn-core-profile__roster li,
html.aarn-core-theme-dark .aarn-core-competition__details dl div,
html.aarn-core-theme-dark .aarn-core-season-card,
html.aarn-core-theme-dark .aarn-core-season-roster__entry,
html.aarn-core-theme-dark .aarn-core-event__details div,
html.aarn-core-theme-dark .aarn-core-table-wrap,
html.aarn-core-theme-dark .aarn-core-table-wrap th,
html.aarn-core-theme-dark .aarn-core-table-wrap td,
html.aarn-core-theme-dark .aarn-core-schedule-card,
html.aarn-core-theme-dark .aarn-core-standings-card,
html.aarn-core-theme-dark .aarn-core-standings-card__stats div,
html.aarn-core-theme-dark .aarn-core-schedule-card__meta span {
	border-color: rgba(255, 255, 255, 0.16);
}

html.aarn-core-theme-dark .aarn-core-directory-card,
html.aarn-core-theme-dark .aarn-core-directory-card__body,
html.aarn-core-theme-dark .aarn-core-schedule-card,
html.aarn-core-theme-dark .aarn-core-standings-card,
html.aarn-core-theme-dark .aarn-core-season-card,
html.aarn-core-theme-dark .aarn-core-season-roster__entry {
	background: #11131a;
	color: #f4f6fb;
}

html.aarn-core-theme-dark .aarn-core-schedule-card--bye,
html.aarn-core-theme-dark .aarn-core-table-wrap th {
	background: #181b24;
}

html.aarn-core-theme-dark .aarn-core-directory-card__meta,
html.aarn-core-theme-dark .aarn-core-schedule-card__date,
html.aarn-core-theme-dark .aarn-core-schedule-card__setup,
html.aarn-core-theme-dark .aarn-core-season-card__meta,
html.aarn-core-theme-dark .aarn-core-season-roster__team,
html.aarn-core-theme-dark .aarn-core-season-roster__badges,
html.aarn-core-theme-dark .aarn-core-stat__label,
html.aarn-core-theme-dark .aarn-core-table-wrap th,
html.aarn-core-theme-dark .aarn-core-standings-card__stats dt {
	color: rgba(244, 246, 251, 0.72);
}

html.aarn-core-theme-dark .aarn-core-directory-search input[type="search"] {
	border-color: rgba(255, 255, 255, 0.18);
	background: #11131a;
	color: #f4f6fb;
}

html.aarn-core-theme-dark .aarn-core-directory-search input[type="search"]::placeholder {
	color: rgba(244, 246, 251, 0.56);
}

html.aarn-core-theme-dark .aarn-core-directory-search button,
html.aarn-core-theme-dark .aarn-core-theme-toggle {
	border-color: rgba(255, 255, 255, 0.2);
	background: #f4f6fb;
	color: #0b0c10;
}

html.aarn-core-theme-dark .aarn-core-directory-search__clear {
	border-color: rgba(255, 255, 255, 0.2);
	background: #11131a;
	color: #f4f6fb;
}

html.aarn-core-theme-dark .aarn-core-profile a,
html.aarn-core-theme-dark .aarn-core-competition a,
html.aarn-core-theme-dark .aarn-core-event a,
html.aarn-core-theme-dark .aarn-core-directory-card__title {
	color: #f4f6fb;
}

html.aarn-core-theme-dark .aarn-core-profile__status,
html.aarn-core-theme-dark .aarn-core-competition__status,
html.aarn-core-theme-dark .aarn-core-event__identity span:last-child {
	background: rgba(189, 11, 33, 0.12);
}

@media (max-width: 640px) {
	.aarn-core-theme-toggle {
		right: 0.75rem;
		bottom: 0.75rem;
		min-height: 2.45rem;
		padding: 0.5rem 0.7rem;
		font-size: 0.78rem;
	}
}

/* v0.9.0: full-site dark mode hardening and AARN Core hub/navigation/news/sponsor polish. */
html.aarn-core-theme-dark {
	color-scheme: dark;
}

html.aarn-core-theme-dark body {
	background: #08090d !important;
	color: #f4f6fb !important;
}

html.aarn-core-theme-dark body:not(.aarn-core-directory-standalone) :where(.site, .wp-site-blocks, main, .site-main, .entry-content, .wp-block-group, .wp-block-post-content) {
	background-color: transparent;
	color: #f4f6fb;
}

html.aarn-core-theme-dark :where(h1, h2, h3, h4, h5, h6, p, li, dt, dd, figcaption, span, strong, em, label, legend, blockquote, cite) {
	color: inherit;
}

html.aarn-core-theme-dark :where(.wp-block-site-title a, .site-title a, .wp-block-navigation a, .site-header a, header a, footer a, .entry-content a) {
	color: #f4f6fb;
}

html.aarn-core-theme-dark :where(header, .site-header, #masthead, footer, .site-footer, .wp-block-template-part) {
	background-color: #08090d;
	color: #f4f6fb;
	border-color: rgba(255, 255, 255, 0.14);
}

html.aarn-core-theme-dark :where(input, select, textarea, button) {
	background-color: #11131a;
	color: #f4f6fb;
	border-color: rgba(255, 255, 255, 0.2);
}

html.aarn-core-theme-dark :where(table, th, td) {
	border-color: rgba(255, 255, 255, 0.16);
}

.aarn-core-quick-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 0.45rem;
	margin: 1rem 0 1.15rem;
}

.aarn-core-quick-nav a,
.aarn-core-hub-card {
	display: inline-flex;
	align-items: center;
	gap: 0.4rem;
	padding: 0.46rem 0.7rem;
	border: 1px solid var(--aarn-competition-border, rgba(20, 20, 20, 0.2));
	border-radius: 999px;
	background: #fff;
	color: #111;
	font-size: 0.84rem;
	font-weight: 900;
	line-height: 1.2;
	text-decoration: none !important;
}

.aarn-core-quick-nav a:hover,
.aarn-core-hub-card:hover {
	border-color: #bd0b21;
	color: #bd0b21;
}

.aarn-core-hub {
	box-sizing: border-box;
	max-width: min(1120px, calc(100vw - 2rem));
	margin: 2rem auto;
	padding: clamp(1.25rem, 4vw, 2.5rem);
	border: 1px solid rgba(20, 20, 20, 0.2);
	border-top: 0.35rem solid #bd0b21;
	border-radius: 0.75rem;
	background: #fff;
	color: #111;
}

.aarn-core-hub h2 {
	margin: 0 0 1rem;
	font-size: clamp(2rem, 5vw, 3.5rem);
	line-height: 1.05;
}

.aarn-core-hub__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(13rem, 1fr));
	gap: 0.75rem;
}

.aarn-core-hub-card {
	align-items: flex-start;
	justify-content: flex-start;
	flex-direction: column;
	border-radius: 0.65rem;
	padding: 0.9rem;
}

.aarn-core-hub-card span {
	color: rgba(20, 20, 20, 0.68);
	font-size: 0.86rem;
	font-weight: 600;
}

.aarn-core-event__sponsors,
.aarn-core-event__news {
	margin-top: 2rem;
	padding-top: 1.35rem;
	border-top: 1px solid var(--aarn-competition-border, rgba(20, 20, 20, 0.2));
}

.aarn-core-event__news {
	padding: clamp(1rem, 3vw, 1.35rem);
	border: 1px solid var(--aarn-competition-border, rgba(20, 20, 20, 0.2));
	border-left: 0.35rem solid #bd0b21;
	border-radius: 0.65rem;
	background: rgba(189, 11, 33, 0.035);
}

.aarn-core-event__news h2 {
	margin-top: 0;
	font-size: clamp(1.35rem, 3vw, 2rem);
}

.aarn-core-event-sponsors {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
	gap: 0.75rem;
}

.aarn-core-event-sponsor {
	display: grid;
	gap: 0.35rem;
	padding: 0.85rem;
	border: 1px solid var(--aarn-competition-border, rgba(20, 20, 20, 0.2));
	border-radius: 0.65rem;
	background: #fff;
	color: #111;
	text-decoration: none !important;
}

.aarn-core-event-sponsor__label {
	color: var(--aarn-competition-muted, rgba(20, 20, 20, 0.68));
	font-size: 0.68rem;
	font-weight: 900;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.aarn-core-event-sponsor__logo {
	display: grid;
	place-items: center;
	min-height: 5rem;
	padding: 0.55rem;
	border-radius: 0.5rem;
	background: #111;
}

.aarn-core-event-sponsor__logo img {
	display: block;
	width: 100%;
	max-height: 5rem;
	object-fit: contain;
}

.aarn-core-event-sponsor__placeholder {
	display: grid;
	place-items: center;
	width: 100%;
	min-height: 5rem;
	color: #fff;
	font-size: 2rem;
	font-weight: 900;
}

.aarn-core-sponsor-profile .aarn-core-profile__image img,
.aarn-core-sponsor-directory .aarn-core-directory-card__image img,
.aarn-core-directory-card--sponsors .aarn-core-directory-card__image img {
	object-fit: contain;
}

.aarn-core-sponsor-directory .aarn-core-directory-card__image,
.aarn-core-directory-card--sponsors .aarn-core-directory-card__image {
	aspect-ratio: 16 / 10;
}

html.aarn-core-theme-dark .aarn-core-quick-nav a,
html.aarn-core-theme-dark .aarn-core-hub,
html.aarn-core-theme-dark .aarn-core-hub-card,
html.aarn-core-theme-dark .aarn-core-event-sponsor,
html.aarn-core-theme-dark .aarn-core-event__news {
	border-color: rgba(255, 255, 255, 0.16);
	background: #11131a;
	color: #f4f6fb;
}

html.aarn-core-theme-dark .aarn-core-hub-card span,
html.aarn-core-theme-dark .aarn-core-event-sponsor__label {
	color: rgba(244, 246, 251, 0.72);
}

html.aarn-core-theme-dark .aarn-core-event__news {
	background: rgba(189, 11, 33, 0.12);
}

html.aarn-core-theme-dark .aarn-core-event-sponsor__logo {
	background: #050508;
}

/* v0.9.4 Race News readability polish */
.aarn-core-event__news-body {
	max-width: 74ch;
}

.aarn-core-event__news-body p {
	margin: 0 0 1.05rem;
	font-size: clamp(1rem, 1.7vw, 1.075rem);
	line-height: 1.72;
}

.aarn-core-event__news-body p:last-child {
	margin-bottom: 0;
}

.aarn-core-event__news-body h3 {
	margin: 1.6rem 0 0.55rem;
	padding-top: 0.9rem;
	border-top: 1px solid var(--aarn-competition-border, rgba(20, 20, 20, 0.16));
	color: #111;
	font-size: clamp(1.1rem, 2.3vw, 1.45rem);
	font-weight: 900;
	line-height: 1.2;
}

.aarn-core-event__news-body h3:first-child {
	margin-top: 0.75rem;
	padding-top: 0;
	border-top: 0;
}

.aarn-core-event__news-body blockquote {
	margin: 1.25rem 0;
	padding: 0.75rem 1rem;
	border-left: 0.25rem solid var(--aarn-competition-accent, #bd0b21);
	background: rgba(189, 11, 33, 0.06);
}

html.aarn-core-theme-dark .aarn-core-event__news-body h3 {
	border-color: rgba(255, 255, 255, 0.16);
	color: #f4f6fb;
}

html.aarn-core-theme-dark .aarn-core-event__news-body blockquote {
	background: rgba(189, 11, 33, 0.14);
}

/* v0.9.5 Race News article flow polish */
.aarn-core-event__news {
	max-width: 980px;
}

.aarn-core-event__news-body {
	max-width: 82ch;
}

.aarn-core-event__news-body p {
	margin: 0 0 1.35rem;
	font-size: clamp(1rem, 1.45vw, 1.08rem);
	line-height: 1.68;
	text-wrap: pretty;
}

.aarn-core-event__news-body h3 {
	margin: 2rem 0 0.7rem;
	padding-top: 0;
	border-top: 0;
	color: var(--aarn-competition-accent, #bd0b21);
	font-family: var(--aarn-core-heading-font, inherit);
	font-size: clamp(1.15rem, 2.4vw, 1.55rem);
	font-weight: 900;
	letter-spacing: -0.01em;
}

.aarn-core-event__news-body h3::after {
	content: '';
	display: block;
	width: 4rem;
	height: 0.18rem;
	margin-top: 0.45rem;
	background: var(--aarn-competition-accent, #bd0b21);
	border-radius: 999px;
}

html.aarn-core-theme-dark .aarn-core-event__news-body h3 {
	color: #ff4b5f;
}

/* v0.9.6 Event Race News should read like normal AARN Racing News posts. */
.aarn-core-event__news {
	max-width: min(820px, 100%);
	margin: 2.5rem auto 0;
	padding: 0;
	border: 0;
	border-top: 1px solid var(--aarn-competition-border, rgba(20, 20, 20, 0.2));
	border-left: 0;
	border-radius: 0;
	background: transparent;
	color: inherit;
}

.aarn-core-event__news > .aarn-core-event__eyebrow {
	margin-top: 1.6rem;
	color: var(--aarn-competition-accent, #bd0b21);
	font-size: 0.78rem;
	font-weight: 900;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.aarn-core-event__news > h2 {
	margin: 0 0 1.25rem;
	font-size: clamp(2rem, 4.5vw, 3.25rem);
	line-height: 1.08;
	letter-spacing: -0.02em;
}

.aarn-core-event__news-body {
	max-width: 74ch;
}

.aarn-core-event__news-body p {
	margin: 0 0 1.35rem;
	font-size: 1.05rem;
	line-height: 1.74;
	text-wrap: pretty;
}

.aarn-core-event__news-body h3 {
	margin: 2rem 0 0.8rem;
	padding: 0;
	border: 0;
	color: #111;
	font-family: inherit;
	font-size: clamp(1.45rem, 3vw, 2rem);
	font-weight: 800;
	letter-spacing: -0.015em;
	line-height: 1.18;
}

.aarn-core-event__news-body h3::after {
	display: none;
}

.aarn-core-event__news-body ul,
.aarn-core-event__news-body ol {
	margin: 0 0 1.45rem 1.35rem;
	padding: 0;
	font-size: 1.05rem;
	line-height: 1.74;
}

.aarn-core-event__news-body li {
	margin-bottom: 0.25rem;
}

html.aarn-core-theme-dark .aarn-core-event__news {
	background: transparent;
	border-color: rgba(255, 255, 255, 0.18);
	color: #f4f6fb;
}

html.aarn-core-theme-dark .aarn-core-event__news-body h3 {
	color: #f4f6fb;
}


/* v0.9.7 Race News cover image. */
.aarn-core-event__news-cover {
	margin: 0 0 1.5rem;
	border-radius: 18px;
	overflow: hidden;
	background: #111;
}

.aarn-core-event__news-cover img,
.aarn-core-event__news-image {
	display: block;
	width: 100%;
	height: auto;
}

html.aarn-core-theme-dark .aarn-core-event__news-cover {
	box-shadow: 0 0 0 1px rgba(255,255,255,0.12);
}


/* v0.9.9 Race News structured list readability. */
.aarn-core-event__news-data-list,
.aarn-core-event__news-statlist {
	margin: 1.25rem 0 1.75rem;
	padding: 0;
}

.aarn-core-event__news-data-list {
	list-style: none;
	display: grid;
	gap: 0.45rem;
}

.aarn-core-event__news-data-list li {
	display: grid;
	grid-template-columns: minmax(13rem, 1fr) auto;
	gap: 1rem;
	align-items: baseline;
	padding: 0.55rem 0;
	border-bottom: 1px solid rgba(20, 20, 20, 0.12);
	font-size: 1.02rem;
	line-height: 1.45;
}

.aarn-core-event__news-data-list li strong {
	font-weight: 800;
}

.aarn-core-event__news-data-list li span {
	text-align: right;
	font-weight: 650;
}

.aarn-core-event__news-statlist {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 0.75rem;
}

.aarn-core-event__news-statlist div {
	padding: 0.85rem 0.95rem;
	border: 1px solid rgba(20, 20, 20, 0.14);
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.72);
}

.aarn-core-event__news-statlist dt {
	margin: 0 0 0.2rem;
	color: rgba(20, 20, 20, 0.62);
	font-size: 0.74rem;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.aarn-core-event__news-statlist dd {
	margin: 0;
	font-size: 1.02rem;
	font-weight: 750;
	line-height: 1.35;
}

html.aarn-core-theme-dark .aarn-core-event__news-data-list li {
	border-color: rgba(255, 255, 255, 0.14);
}

html.aarn-core-theme-dark .aarn-core-event__news-statlist div {
	border-color: rgba(255, 255, 255, 0.14);
	background: rgba(255, 255, 255, 0.06);
}

html.aarn-core-theme-dark .aarn-core-event__news-statlist dt {
	color: rgba(244, 246, 251, 0.68);
}

@media (max-width: 640px) {
	.aarn-core-event__news-data-list li {
		grid-template-columns: 1fr;
		gap: 0.15rem;
	}

	.aarn-core-event__news-data-list li span {
		text-align: left;
	}
}

/* v1.1.0: public competition hubs, cleaner navigation, and standings/schedule boards. */
.aarn-core-public-hub {
	box-sizing: border-box;
	max-width: min(1180px, calc(100vw - 2rem));
	margin: 2rem auto 3rem;
	padding: clamp(1.25rem, 4vw, 2.5rem);
	border: 1px solid rgba(20, 20, 20, 0.14);
	border-top: 0.35rem solid #bd0b21;
	border-radius: 20px;
	background: #fff;
	color: #111;
	box-shadow: 0 1rem 2.8rem rgba(0, 0, 0, 0.08);
}

.aarn-core-public-hub h1 {
	margin: 0;
	font-size: clamp(2.4rem, 6vw, 4.5rem);
	line-height: 0.98;
	letter-spacing: -0.035em;
}

.aarn-core-public-hub__intro {
	max-width: 70ch;
	margin: 0.85rem 0 1.4rem;
	color: rgba(20, 20, 20, 0.7);
	font-size: 1.02rem;
	line-height: 1.55;
}

.aarn-core-season-switcher {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(13.5rem, 1fr));
	gap: 0.65rem;
	margin: 1.35rem 0 1.75rem;
}

.aarn-core-season-switcher__link {
	display: grid;
	gap: 0.15rem;
	padding: 0.78rem 0.9rem;
	border: 1px solid rgba(20, 20, 20, 0.14);
	border-radius: 14px;
	background: #f7f7f7;
	color: #111;
	text-decoration: none !important;
}

.aarn-core-season-switcher__link strong {
	font-size: 0.95rem;
	line-height: 1.2;
}

.aarn-core-season-switcher__link span {
	color: rgba(20, 20, 20, 0.62);
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.aarn-core-season-switcher__link.is-active,
.aarn-core-season-switcher__link:hover,
.aarn-core-season-switcher__link:focus {
	border-color: #bd0b21;
	background: #111;
	color: #fff;
}

.aarn-core-season-switcher__link.is-active span,
.aarn-core-season-switcher__link:hover span,
.aarn-core-season-switcher__link:focus span {
	color: rgba(255, 255, 255, 0.7);
}

.aarn-core-hub-section {
	margin-top: 1.5rem;
	padding-top: 1.25rem;
	border-top: 1px solid rgba(20, 20, 20, 0.12);
}

.aarn-core-hub-section > header {
	display: flex;
	flex-wrap: wrap;
	gap: 0.85rem;
	align-items: flex-end;
	justify-content: space-between;
	margin-bottom: 0.9rem;
}

.aarn-core-hub-section__eyebrow {
	margin: 0 0 0.25rem;
	color: #bd0b21;
	font-size: 0.74rem;
	font-weight: 900;
	letter-spacing: 0.12em;
	text-transform: uppercase;
}

.aarn-core-hub-section h2 {
	margin: 0;
	font-size: clamp(1.5rem, 3.8vw, 2.5rem);
	line-height: 1.05;
}

.aarn-core-hub-section > header > a {
	display: inline-flex;
	align-items: center;
	padding: 0.52rem 0.8rem;
	border: 1px solid rgba(20, 20, 20, 0.14);
	border-radius: 999px;
	background: #fff;
	color: #111;
	font-size: 0.82rem;
	font-weight: 900;
	text-decoration: none !important;
}

.aarn-core-schedule-board__grid {
	display: grid;
	gap: 0.65rem;
}

.aarn-core-schedule-row {
	display: grid;
	grid-template-columns: 4.35rem minmax(0, 1fr) minmax(11rem, auto);
	gap: 0.8rem;
	align-items: center;
	padding: 0.82rem;
	border: 1px solid rgba(20, 20, 20, 0.12);
	border-radius: 16px;
	background: #fff;
}

.aarn-core-schedule-row.is-bye {
	background: #f3f3f3;
}

.aarn-core-schedule-row__round {
	display: grid;
	place-items: center;
	min-height: 3.3rem;
	border-radius: 12px;
	background: #111;
	color: #fff;
	text-align: center;
}

.aarn-core-schedule-row.is-bye .aarn-core-schedule-row__round {
	background: #6b6b6b;
}

.aarn-core-schedule-row__round span {
	font-size: 0.62rem;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.aarn-core-schedule-row__round strong {
	font-size: 1.25rem;
	line-height: 1;
}

.aarn-core-schedule-row__main time {
	display: block;
	color: rgba(20, 20, 20, 0.62);
	font-size: 0.82rem;
	font-weight: 900;
}

.aarn-core-schedule-row__main h3 {
	margin: 0.15rem 0 0;
	font-size: 1.05rem;
	line-height: 1.2;
}

.aarn-core-schedule-row__main h3 a {
	color: inherit;
	text-decoration: none !important;
}

.aarn-core-schedule-row__main p {
	margin: 0.22rem 0 0;
	color: rgba(20, 20, 20, 0.68);
	line-height: 1.32;
}

.aarn-core-schedule-row__setup {
	display: flex;
	flex-wrap: wrap;
	gap: 0.35rem;
	justify-content: flex-end;
}

.aarn-core-schedule-row__setup span {
	display: inline-flex;
	align-items: center;
	padding: 0.28rem 0.5rem;
	border: 1px solid rgba(20, 20, 20, 0.12);
	border-radius: 999px;
	font-size: 0.76rem;
	font-weight: 850;
	line-height: 1.1;
}

.aarn-core-standings-board__table {
	border: 1px solid rgba(20, 20, 20, 0.12);
	border-radius: 16px;
	overflow: hidden;
	background: #fff;
}

.aarn-core-standings-board__head,
.aarn-core-standings-board__row {
	display: grid;
	grid-template-columns: 4.5rem minmax(12rem, 1fr) repeat(6, minmax(4.2rem, 0.45fr));
	gap: 0;
	align-items: center;
}

.aarn-core-standings-board__head {
	background: #111;
	color: #fff;
	font-size: 0.68rem;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.aarn-core-standings-board__head span,
.aarn-core-standings-board__row span {
	padding: 0.72rem 0.75rem;
	min-width: 0;
}

.aarn-core-standings-board__row {
	border-top: 1px solid rgba(20, 20, 20, 0.08);
}

.aarn-core-standings-board__row:nth-child(even) {
	background: #fafafa;
}

.aarn-core-standings-board__row .rank,
.aarn-core-standings-board__row .points {
	font-weight: 900;
}

.aarn-core-standings-board__row .driver {
	font-weight: 850;
}

.aarn-core-standings-board__row .driver a {
	color: inherit;
	text-decoration: none !important;
}

.aarn-core-standings-board__row .driver em {
	color: rgba(20, 20, 20, 0.58);
	font-style: normal;
}

@media (max-width: 900px) {
	.aarn-core-schedule-row {
		grid-template-columns: 4rem minmax(0, 1fr);
	}

	.aarn-core-schedule-row__setup {
		grid-column: 2;
		justify-content: flex-start;
	}

	.aarn-core-standings-board__table {
		display: grid;
		gap: 0.65rem;
		border: 0;
		background: transparent;
	}

	.aarn-core-standings-board__head {
		display: none;
	}

	.aarn-core-standings-board__row {
		display: grid;
		grid-template-columns: 4rem 1fr;
		gap: 0.25rem 0.75rem;
		padding: 0.8rem;
		border: 1px solid rgba(20, 20, 20, 0.12);
		border-radius: 16px;
		background: #fff;
	}

	.aarn-core-standings-board__row span {
		padding: 0;
	}

	.aarn-core-standings-board__row .rank {
		grid-row: span 2;
		display: grid;
		place-items: center;
		min-height: 3.5rem;
		border-radius: 12px;
		background: #111;
		color: #fff;
	}

	.aarn-core-standings-board__row .driver {
		grid-column: 2;
	}
}

@media (max-width: 560px) {
	.aarn-core-public-hub {
		max-width: calc(100vw - 1rem);
		padding: 1rem;
	}

	.aarn-core-schedule-row {
		grid-template-columns: 1fr;
	}

	.aarn-core-schedule-row__setup {
		grid-column: auto;
	}

	.aarn-core-schedule-row__round {
		width: 4.35rem;
	}
}

html.aarn-core-theme-dark .aarn-core-public-hub,
html.aarn-core-theme-dark .aarn-core-schedule-row,
html.aarn-core-theme-dark .aarn-core-standings-board__table,
html.aarn-core-theme-dark .aarn-core-standings-board__row,
html.aarn-core-theme-dark .aarn-core-hub-section > header > a,
html.aarn-core-theme-dark .aarn-core-season-switcher__link {
	border-color: rgba(255, 255, 255, 0.14);
	background: #11131a;
	color: #f4f6fb;
}

html.aarn-core-theme-dark .aarn-core-public-hub__intro,
html.aarn-core-theme-dark .aarn-core-schedule-row__main time,
html.aarn-core-theme-dark .aarn-core-schedule-row__main p,
html.aarn-core-theme-dark .aarn-core-season-switcher__link span,
html.aarn-core-theme-dark .aarn-core-standings-board__row .driver em {
	color: rgba(244, 246, 251, 0.68);
}

html.aarn-core-theme-dark .aarn-core-hub-section,
html.aarn-core-theme-dark .aarn-core-schedule-row__setup span,
html.aarn-core-theme-dark .aarn-core-standings-board__row {
	border-color: rgba(255, 255, 255, 0.12);
}

html.aarn-core-theme-dark .aarn-core-schedule-row.is-bye,
html.aarn-core-theme-dark .aarn-core-standings-board__row:nth-child(even) {
	background: #181b24;
}

html.aarn-core-theme-dark .aarn-core-season-switcher__link.is-active,
html.aarn-core-theme-dark .aarn-core-season-switcher__link:hover,
html.aarn-core-theme-dark .aarn-core-season-switcher__link:focus,
html.aarn-core-theme-dark .aarn-core-standings-board__head,
html.aarn-core-theme-dark .aarn-core-standings-board__row .rank {
	background: #f4f6fb;
	color: #08090d;
}

/* v1.1.1: hub visibility refinements for current schedules and active standings. */
.aarn-core-standings-hub .aarn-core-hub-section > p,
.aarn-core-schedule-hub .aarn-core-hub-section > p {
	margin: 0.5rem 0 0;
	padding: 0.9rem 1rem;
	border: 1px dashed rgba(20, 20, 20, 0.18);
	border-radius: 14px;
	background: #fafafa;
	color: rgba(20, 20, 20, 0.68);
	font-weight: 700;
}
html.aarn-core-theme-dark .aarn-core-standings-hub .aarn-core-hub-section > p,
html.aarn-core-theme-dark .aarn-core-schedule-hub .aarn-core-hub-section > p {
	border-color: rgba(255, 255, 255, 0.18);
	background: #181b24;
	color: rgba(244, 246, 251, 0.72);
}

/* v1.1.2: cleaner profile cards and streamlined public navigation support. */
body.aarn-core-profile-template .wp-block-post-author__byline,
body.aarn-core-profile-template .wp-block-post-author__name,
body.aarn-core-profile-template .wp-block-post-author__avatar,
body.aarn-core-profile-template .wp-block-post-author-biography,
body.aarn-core-profile-template .posted-on,
body.aarn-core-profile-template .post-author,
body.aarn-core-profile-template .author.vcard,
body.aarn-core-profile-template .entry-footer,
body.aarn-core-profile-template .post-navigation,
body.aarn-core-competition-template .wp-block-post-author__byline,
body.aarn-core-competition-template .wp-block-post-author__name,
body.aarn-core-competition-template .wp-block-post-author__avatar,
body.aarn-core-competition-template .wp-block-post-author-biography,
body.aarn-core-competition-template .posted-on,
body.aarn-core-competition-template .post-author,
body.aarn-core-competition-template .author.vcard,
body.aarn-core-competition-template .entry-footer,
body.aarn-core-competition-template .post-navigation {
	display: none !important;
}

.aarn-core-profile,
.aarn-core-competition {
	width: min(100%, 960px);
	margin: clamp(1.25rem, 3vw, 2.5rem) auto 2.5rem;
}

.aarn-core-profile__hero {
	grid-template-columns: minmax(15rem, 19rem) minmax(18rem, 1fr);
	align-items: center;
}

.aarn-core-team-profile .aarn-core-profile__hero,
.aarn-core-sponsor-profile .aarn-core-profile__hero {
	grid-template-columns: minmax(16rem, 20rem) minmax(20rem, 1fr);
	align-items: center;
}

.aarn-core-team-profile .aarn-core-profile__image,
.aarn-core-sponsor-profile .aarn-core-profile__image {
	aspect-ratio: 16 / 10;
	background: #0b0b0d;
}

.aarn-core-team-profile .aarn-core-profile__name,
.aarn-core-sponsor-profile .aarn-core-profile__name {
	font-size: clamp(2.1rem, 4.2vw, 3.45rem);
	line-height: 1.03;
	letter-spacing: -0.025em;
	text-wrap: balance;
}

.aarn-core-profile__team,
.aarn-core-profile__detail,
.aarn-core-competition__detail {
	display: grid;
	grid-template-columns: minmax(7rem, max-content) minmax(0, 1fr);
	gap: 0.35rem 0.85rem;
	align-items: baseline;
}

.aarn-core-profile__team span,
.aarn-core-profile__detail span,
.aarn-core-competition__detail span {
	min-width: 0;
}

.aarn-core-profile__summary,
.aarn-core-competition__summary {
	min-width: 0;
}

.aarn-core-profile__summary a,
.aarn-core-competition__summary a {
	word-break: normal;
	overflow-wrap: anywhere;
}

.aarn-core-profile__bio,
.aarn-core-profile__roster,
.aarn-core-competition__description,
.aarn-core-competition__details,
.aarn-core-competition__seasons,
.aarn-core-competition__roster {
	clear: both;
}

@media (max-width: 820px) {
	.aarn-core-profile__hero,
	.aarn-core-team-profile .aarn-core-profile__hero,
	.aarn-core-sponsor-profile .aarn-core-profile__hero,
	.aarn-core-competition__hero {
		grid-template-columns: 1fr;
	}

	.aarn-core-profile__image,
	.aarn-core-team-profile .aarn-core-profile__image,
	.aarn-core-sponsor-profile .aarn-core-profile__image,
	.aarn-core-competition__image {
		width: min(100%, 20rem);
		max-width: none;
	}
}

@media (max-width: 540px) {
	.aarn-core-profile__team,
	.aarn-core-profile__detail,
	.aarn-core-competition__detail {
		grid-template-columns: 1fr;
		gap: 0.1rem;
	}
}

/* v1.2.0: Race Center and next-race workflow. */
.aarn-core-next-event {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	gap: 1rem;
	align-items: center;
	margin: 1.25rem 0 1.5rem;
	padding: clamp(1rem, 2.5vw, 1.4rem);
	border: 1px solid rgba(20, 20, 20, 0.12);
	border-radius: 18px;
	background: linear-gradient(135deg, #101115 0%, #1f222b 60%, #0c0d10 100%);
	color: #fff;
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.12);
}

.aarn-core-next-event__label {
	padding: 0.55rem 0.75rem;
	border-radius: 999px;
	background: #d90429;
	color: #fff;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	font-size: 0.78rem;
}

.aarn-core-next-event__main time,
.aarn-core-next-event__main p,
.aarn-core-next-event__main span {
	display: block;
	color: rgba(255, 255, 255, 0.72);
	font-weight: 700;
}

.aarn-core-next-event__main h2 {
	margin: 0.2rem 0 0.25rem;
	font-size: clamp(1.65rem, 4vw, 3rem);
	line-height: 1;
}

.aarn-core-next-event__main h2 a {
	color: #fff;
	text-decoration: none;
}

.aarn-core-next-event__button,
.aarn-core-race-center__actions a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 2.8rem;
	padding: 0.75rem 1rem;
	border-radius: 12px;
	background: #fff;
	color: #08090d;
	font-weight: 900;
	text-decoration: none;
}

.aarn-core-race-center__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.65rem;
	margin: 0 0 1.5rem;
}

.aarn-core-race-center__actions a {
	background: #111;
	color: #fff;
}

.aarn-core-race-center__event-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(13.5rem, 1fr));
	gap: 0.8rem;
}

.aarn-core-race-center-card {
	padding: 1rem;
	border: 1px solid rgba(20, 20, 20, 0.12);
	border-radius: 16px;
	background: #fff;
}

.aarn-core-race-center-card time,
.aarn-core-race-center-card p,
.aarn-core-race-center-card span {
	color: rgba(20, 20, 20, 0.65);
	font-weight: 700;
}

.aarn-core-race-center-card h3 {
	margin: 0.3rem 0;
	font-size: 1.15rem;
	line-height: 1.12;
}

.aarn-core-race-center-card h3 a {
	color: inherit;
	text-decoration-thickness: 0.08em;
}

.aarn-core-schedule-row.is-next {
	border-color: rgba(217, 4, 41, 0.55);
	box-shadow: 0 0 0 2px rgba(217, 4, 41, 0.08);
}

.aarn-core-event-sequence {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.9rem;
	margin-top: 2rem;
}

.aarn-core-event-sequence__link {
	display: block;
	padding: 1rem;
	border: 1px solid rgba(20, 20, 20, 0.14);
	border-radius: 16px;
	background: #fff;
	text-decoration: none;
}

.aarn-core-event-sequence__link span {
	display: block;
	margin-bottom: 0.2rem;
	color: #d90429;
	font-size: 0.72rem;
	font-weight: 900;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.aarn-core-event-sequence__link strong {
	color: #111;
	font-size: 1.05rem;
}

html.aarn-core-theme-dark .aarn-core-race-center-card,
html.aarn-core-theme-dark .aarn-core-event-sequence__link {
	border-color: rgba(255, 255, 255, 0.14);
	background: #11131a;
	color: #f4f6fb;
}

html.aarn-core-theme-dark .aarn-core-race-center-card time,
html.aarn-core-theme-dark .aarn-core-race-center-card p,
html.aarn-core-theme-dark .aarn-core-race-center-card span {
	color: rgba(244, 246, 251, 0.68);
}

html.aarn-core-theme-dark .aarn-core-event-sequence__link strong {
	color: #f4f6fb;
}

html.aarn-core-theme-dark .aarn-core-race-center__actions a {
	background: #f4f6fb;
	color: #08090d;
}

@media (max-width: 720px) {
	.aarn-core-next-event,
	.aarn-core-event-sequence {
		grid-template-columns: 1fr;
	}
	.aarn-core-next-event__button {
		width: 100%;
	}
}

/* v1.2.4: Race Center and mobile hub polish. */
@media (max-width: 700px) {
	.aarn-core-public-hub {
		width: min(100%, calc(100vw - 1rem));
		max-width: calc(100vw - 1rem);
		margin: 0.75rem auto 2rem;
		padding: 0.9rem;
		border-radius: 16px;
		overflow: hidden;
	}

	.aarn-core-public-hub h1 {
		font-size: clamp(2rem, 11vw, 3.1rem);
		line-height: 1;
	}

	.aarn-core-next-event {
		display: block;
		padding: 1rem;
		border-radius: 18px;
		overflow: hidden;
	}

	.aarn-core-next-event__label {
		display: inline-flex;
		margin: 0 0 0.8rem;
		max-width: 100%;
		font-size: 0.72rem;
		line-height: 1.1;
	}

	.aarn-core-next-event__main h2 {
		font-size: clamp(1.75rem, 10vw, 2.55rem);
		line-height: 1.05;
		word-break: normal;
		overflow-wrap: anywhere;
	}

	.aarn-core-next-event__main time,
	.aarn-core-next-event__main p,
	.aarn-core-next-event__main span {
		font-size: 0.95rem;
		line-height: 1.45;
	}

	.aarn-core-next-event__button,
	.aarn-core-race-center__actions a {
		width: 100%;
		min-height: 3rem;
		box-sizing: border-box;
		padding: 0.85rem 1rem;
		font-size: 1rem;
		border-radius: 14px;
	}

	.aarn-core-race-center__actions {
		display: grid;
		grid-template-columns: 1fr;
		gap: 0.6rem;
	}

	.aarn-core-hub-section > header {
		align-items: flex-start;
	}
}

@media (max-width: 900px) {
	.aarn-core-standings-board__row span[data-label] {
		display: grid;
		grid-template-columns: minmax(5.4rem, max-content) minmax(0, 1fr);
		gap: 0.45rem;
		align-items: baseline;
		font-size: 0.98rem;
		line-height: 1.25;
	}

	.aarn-core-standings-board__row span[data-label]::before {
		content: attr(data-label);
		color: rgba(20, 20, 20, 0.62);
		font-size: 0.68rem;
		font-weight: 900;
		letter-spacing: 0.06em;
		text-transform: uppercase;
	}

	.aarn-core-standings-board__row .points {
		font-size: 1.15rem;
	}
}

@media (max-width: 560px) {
	.aarn-core-standings-board__row {
		grid-template-columns: 4rem minmax(0, 1fr);
		gap: 0.6rem 0.85rem;
	}

	.aarn-core-standings-board__row .driver {
		font-size: 1.1rem;
		line-height: 1.18;
	}

	.aarn-core-standings-board__row span[data-label] {
		grid-column: 1 / -1;
		padding: 0.55rem 0.65rem;
		border: 1px solid rgba(20, 20, 20, 0.1);
		border-radius: 12px;
		background: #fff;
	}
}

.aarn-core-sponsor-directory .aarn-core-directory-card__image,
.aarn-core-directory-card--sponsors .aarn-core-directory-card__image {
	box-sizing: border-box;
	padding: 0.85rem;
	aspect-ratio: 16 / 9;
}

.aarn-core-sponsor-directory .aarn-core-directory-card__image img,
.aarn-core-directory-card--sponsors .aarn-core-directory-card__image img {
	width: 100%;
	height: 100%;
	object-fit: contain !important;
	object-position: center;
}

@media (max-width: 640px) {
	.aarn-core-sponsor-directory .aarn-core-directory__grid {
		grid-template-columns: 1fr;
	}
}

html.aarn-core-theme-dark .aarn-core-standings-board__row span[data-label]::before {
	color: rgba(244, 246, 251, 0.68);
}

html.aarn-core-theme-dark .aarn-core-standings-board__row span[data-label] {
	border-color: rgba(255, 255, 255, 0.12);
	background: #11131a;
}

/* v1.2.5: Race Center + mobile standings/sponsor refinements. */
@media (max-width: 700px) {
	.aarn-core-standings-board__row {
		display: flex !important;
		flex-wrap: wrap;
		align-items: center;
		gap: 0.5rem;
		padding: 0.7rem !important;
	}

	.aarn-core-standings-board__row .rank {
		flex: 0 0 3.2rem;
		min-height: 3.2rem;
		border-radius: 12px;
	}

	.aarn-core-standings-board__row .driver {
		flex: 1 1 calc(100% - 4rem);
		font-size: 1rem;
		line-height: 1.15;
	}

	.aarn-core-standings-board__row span[data-label] {
		flex: 1 1 calc(33.333% - 0.5rem);
		display: grid;
		grid-template-columns: 1fr;
		gap: 0.05rem;
		min-width: 4.25rem;
		padding: 0.38rem 0.45rem !important;
		border: 1px solid rgba(20, 20, 20, 0.1);
		border-radius: 10px;
		background: #fff;
		font-size: 0.95rem;
		font-weight: 900;
		line-height: 1.1;
		text-align: center;
	}

	.aarn-core-standings-board__row span[data-label]::before {
		content: attr(data-label);
		font-size: 0.58rem;
		font-weight: 900;
		letter-spacing: 0.06em;
		line-height: 1;
		text-transform: uppercase;
		color: rgba(20, 20, 20, 0.58);
	}

	.aarn-core-standings-board__row .points {
		font-size: 1.05rem;
	}
}

@media (max-width: 420px) {
	.aarn-core-standings-board__row span[data-label] {
		flex-basis: calc(50% - 0.5rem);
	}
}

.aarn-core-sponsor-directory .aarn-core-directory-card__image,
.aarn-core-directory-card--sponsors .aarn-core-directory-card__image {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-sizing: border-box;
	min-height: 11rem;
	height: auto;
	padding: 1.25rem !important;
}

.aarn-core-sponsor-directory .aarn-core-directory-card__image img,
.aarn-core-directory-card--sponsors .aarn-core-directory-card__image img {
	display: block;
	width: auto !important;
	height: auto !important;
	max-width: 86% !important;
	max-height: 8.5rem !important;
	object-fit: contain !important;
	object-position: center center !important;
}

@media (max-width: 640px) {
	.aarn-core-sponsor-directory .aarn-core-directory-card__image,
	.aarn-core-directory-card--sponsors .aarn-core-directory-card__image {
		min-height: 9.25rem;
		padding: 1.4rem !important;
	}

	.aarn-core-sponsor-directory .aarn-core-directory-card__image img,
	.aarn-core-directory-card--sponsors .aarn-core-directory-card__image img {
		max-height: 6.5rem !important;
	}
}

html.aarn-core-theme-dark .aarn-core-standings-board__row span[data-label] {
	border-color: rgba(255, 255, 255, 0.12);
	background: #11131a;
}

html.aarn-core-theme-dark .aarn-core-standings-board__row span[data-label]::before {
	color: rgba(244, 246, 251, 0.68);
}
