/* RPGRF Site Pages: shared design system, matching the home page (red, gold, black; Inter; 24px radius). */

.rpgr-pg {
	--rpgr-black: #111111;
	--rpgr-charcoal: #2e3138;
	--rpgr-text: #24262b;
	--rpgr-muted: #5b5f69;
	--rpgr-line: rgba(0, 0, 0, .10);
	--rpgr-bg: #ffffff;
	--rpgr-tint: #f6f7fa;
	--rpgr-red: #b32025;
	--rpgr-red-dark: #8f171c;
	--rpgr-red-soft: rgba(179, 32, 37, .10);
	--rpgr-gold: #f2c94c;
	--rpgr-gold-2: #ffd76b;
	--rpgr-shadow: 0 18px 55px rgba(0, 0, 0, .08);
	--rpgr-shadow-sm: 0 6px 20px rgba(0, 0, 0, .06);
	--rpgr-radius: 24px;
	--rpgr-radius-sm: 16px;

	display: block;
	width: 100%;
	background: var(--rpgr-bg);
	color: var(--rpgr-text);
	font-family: "Inter", Arial, sans-serif;
	font-size: 17px;
	line-height: 1.7;
	overflow-x: clip;
}

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

.rpgr-pg :where(h1, h2, h3, p, ul, ol, figure) { margin: 0; }
.rpgr-pg :where(h1, h2, h3) { font-family: inherit; color: var(--rpgr-black); letter-spacing: -.02em; text-transform: none; }
.rpgr-pg img { display: block; max-width: 100%; height: auto; }
.rpgr-pg a { color: var(--rpgr-red); text-underline-offset: 3px; }
.rpgr-pg a:hover { color: var(--rpgr-red-dark); }
.rpgr-pg a:focus-visible,
.rpgr-pg button:focus-visible { outline: 3px solid var(--rpgr-gold); outline-offset: 3px; border-radius: 6px; }

.rpgr-pg .screen-reader-text {
	position: absolute !important;
	width: 1px; height: 1px;
	padding: 0; margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.rpgr-pg-wrap { width: min(1200px, calc(100% - 32px)); margin: 0 auto; }

.rpgr-pg-icon { width: 1.25em; height: 1.25em; flex: none; vertical-align: -.2em; }

/* Sections */
.rpgr-pg-section { padding: clamp(48px, 7vw, 88px) 0; }
.rpgr-pg-section--tint { background: var(--rpgr-tint); }
.rpgr-pg-section--flush { padding-top: 0; padding-bottom: 0; }

.rpgr-pg-head { max-width: 760px; margin: 0 auto clamp(28px, 4vw, 44px); }
.rpgr-pg-head--center { text-align: center; }
.rpgr-pg-head--left { margin-left: 0; }

.rpgr-pg-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 14px !important;
	padding: 7px 14px;
	border-radius: 999px;
	background: var(--rpgr-red-soft);
	color: var(--rpgr-red-dark);
	font-size: .78rem;
	font-weight: 700;
	letter-spacing: .08em;
	line-height: 1.3;
	text-transform: uppercase;
}
.rpgr-pg-eyebrow--gold {
	background: linear-gradient(135deg, var(--rpgr-gold), var(--rpgr-gold-2));
	color: #111;
}

.rpgr-pg-title {
	font-size: clamp(1.8rem, 3.6vw, 2.75rem);
	font-weight: 800;
	line-height: 1.12;
	margin-bottom: 14px !important;
}
.rpgr-pg-sub { color: var(--rpgr-muted); font-size: 1.05rem; }

/* Hero */
.rpgr-pg-hero {
	position: relative;
	display: flex;
	align-items: flex-end;
	min-height: clamp(380px, 62vh, 620px);
	padding: clamp(56px, 9vw, 110px) 0 clamp(40px, 6vw, 72px);
	background: #111;
	color: #fff;
	isolation: isolate;
	overflow: hidden;
}
.rpgr-pg-hero__img {
	position: absolute;
	inset: 0;
	z-index: -2;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover;
	object-position: var(--rpgr-hero-pos, center);
}
.rpgr-pg-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		linear-gradient(180deg, rgba(0, 0, 0, .15) 0%, rgba(0, 0, 0, .55) 55%, rgba(0, 0, 0, .82) 100%),
		linear-gradient(90deg, rgba(143, 23, 28, .55) 0%, rgba(143, 23, 28, 0) 60%);
}
.rpgr-pg-hero__inner { position: relative; }
.rpgr-pg-hero__title {
	max-width: 900px;
	color: #fff !important;
	font-size: clamp(2.3rem, 5.4vw, 4.1rem);
	font-weight: 800;
	line-height: 1.04;
	letter-spacing: -.03em;
	text-shadow: 0 3px 18px rgba(0, 0, 0, .35);
}
.rpgr-pg-hero__intro {
	max-width: 680px;
	margin-top: 16px !important;
	color: rgba(255, 255, 255, .92);
	font-size: clamp(1.02rem, 1.6vw, 1.2rem);
	line-height: 1.6;
	text-shadow: 0 2px 12px rgba(0, 0, 0, .35);
}
.rpgr-pg-hero .rpgr-pg-btns { margin-top: 28px; }

/* Buttons */
.rpgr-pg-btns { display: flex; flex-wrap: wrap; gap: 12px; }
.rpgr-pg-btns--card { margin-top: auto; padding-top: 18px; }
.rpgr-pg .rpgr-pg-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 12px 24px;
	border: 2px solid transparent;
	border-radius: 999px;
	font-size: .98rem;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	transition: transform .2s ease, background-color .2s ease, color .2s ease, box-shadow .2s ease;
}
.rpgr-pg .rpgr-pg-btn:hover { transform: translateY(-2px); }
.rpgr-pg .rpgr-pg-btn--primary { background: var(--rpgr-red); color: #fff; box-shadow: 0 10px 24px rgba(179, 32, 37, .25); }
.rpgr-pg .rpgr-pg-btn--primary:hover { background: var(--rpgr-red-dark); color: #fff; }
.rpgr-pg .rpgr-pg-btn--secondary { border-color: var(--rpgr-red); color: var(--rpgr-red); background: #fff; }
.rpgr-pg .rpgr-pg-btn--secondary:hover { background: var(--rpgr-red-soft); color: var(--rpgr-red-dark); }
.rpgr-pg .rpgr-pg-btn--gold { background: linear-gradient(135deg, var(--rpgr-gold), var(--rpgr-gold-2)); color: #111; box-shadow: 0 10px 24px rgba(242, 201, 76, .3); }
.rpgr-pg .rpgr-pg-btn--gold:hover { color: #111; }
.rpgr-pg .rpgr-pg-btn--light { border-color: rgba(255, 255, 255, .85); color: #fff; background: rgba(255, 255, 255, .08); }
.rpgr-pg .rpgr-pg-btn--light:hover { background: #fff; color: #111; }

/* School-year links */
.rpgr-pg-pills {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin-top: -28px;
	padding: 14px 18px;
	position: relative;
	background: #fff;
	border-radius: var(--rpgr-radius-sm);
	box-shadow: var(--rpgr-shadow);
	width: fit-content;
	max-width: 100%;
}
.rpgr-pg-pills__label { color: var(--rpgr-muted); font-size: .8rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; margin-right: 4px; }
.rpgr-pg-pills a {
	padding: 8px 16px;
	border: 2px solid var(--rpgr-red);
	border-radius: 999px;
	color: var(--rpgr-red);
	font-size: .95rem;
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
}
.rpgr-pg-pills a:hover { background: var(--rpgr-red-soft); }
.rpgr-pg-pills a[aria-current="page"] { background: var(--rpgr-red); color: #fff; }

/* Lead paragraph */
.rpgr-pg-lead { max-width: 820px; text-align: center; font-size: clamp(1.08rem, 1.7vw, 1.25rem); color: var(--rpgr-charcoal); }
.rpgr-pg-lead p + p { margin-top: 16px; }

/* Split: text + photo */
.rpgr-pg-split { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(28px, 5vw, 64px); align-items: center; }
.rpgr-pg-split--top { align-items: start; }
.rpgr-pg-split__text p + p { margin-top: 14px; }
.rpgr-pg-split__media { position: relative; }
.rpgr-pg-split__media img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--rpgr-radius); box-shadow: var(--rpgr-shadow); }
.rpgr-pg-split__text .rpgr-pg-split__media { margin-top: 24px; }
.rpgr-pg figcaption { margin-top: 10px; color: var(--rpgr-muted); font-size: .88rem; }

.rpgr-pg-checks { list-style: none; padding: 0; margin-top: 20px !important; display: grid; gap: 10px; }
.rpgr-pg-checks li { position: relative; padding-left: 32px; font-weight: 600; }
.rpgr-pg-checks li::before {
	content: "";
	position: absolute; left: 0; top: .3em;
	width: 20px; height: 20px;
	border-radius: 50%;
	background: var(--rpgr-red) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12 5 5 9-10'/%3E%3C/svg%3E") center / 12px no-repeat;
}

/* Timeline */
.rpgr-pg-timeline { list-style: none; padding: 0; max-width: 860px; margin: 0 auto !important; position: relative; }
.rpgr-pg-timeline::before { content: ""; position: absolute; left: 11px; top: 8px; bottom: 8px; width: 3px; border-radius: 3px; background: linear-gradient(var(--rpgr-red), var(--rpgr-gold)); }
.rpgr-pg-timeline li { position: relative; padding: 0 0 32px 48px; }
.rpgr-pg-timeline li:last-child { padding-bottom: 0; }
.rpgr-pg-timeline li::before { content: ""; position: absolute; left: 2px; top: 6px; width: 21px; height: 21px; border-radius: 50%; background: #fff; border: 4px solid var(--rpgr-red); }
.rpgr-pg-timeline__when { color: var(--rpgr-red); font-size: .82rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.rpgr-pg-timeline h3 { font-size: 1.3rem; font-weight: 800; margin: 4px 0 8px; }
.rpgr-pg-timeline p:not(.rpgr-pg-timeline__when) { color: var(--rpgr-charcoal); }

.rpgr-pg-figure img { margin: 0 auto; border-radius: var(--rpgr-radius-sm); box-shadow: var(--rpgr-shadow); }

/* Cards */
.rpgr-pg-cards { display: grid; gap: clamp(16px, 2.4vw, 28px); }
.rpgr-pg-cards--2 { grid-template-columns: repeat(2, 1fr); }
.rpgr-pg-cards--3 { grid-template-columns: repeat(3, 1fr); }
.rpgr-pg-cards--4 { grid-template-columns: repeat(4, 1fr); }
.rpgr-pg-card {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	background: #fff;
	border: 1px solid var(--rpgr-line);
	border-radius: var(--rpgr-radius);
	box-shadow: var(--rpgr-shadow-sm);
	color: var(--rpgr-text);
	transition: transform .25s ease, box-shadow .25s ease;
}
.rpgr-pg .rpgr-pg-card--link { text-decoration: none; color: var(--rpgr-text); }
.rpgr-pg-card--link:hover,
.rpgr-pg-story:hover { transform: translateY(-4px); box-shadow: var(--rpgr-shadow); }
.rpgr-pg-card__media { display: block; aspect-ratio: 16 / 10; overflow: hidden; background: var(--rpgr-tint); }
.rpgr-pg-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.rpgr-pg-card--link:hover .rpgr-pg-card__media img,
.rpgr-pg-story:hover .rpgr-pg-card__media img { transform: scale(1.04); }
.rpgr-pg-card__placeholder { display: grid; place-items: center; height: 100%; color: var(--rpgr-red); font-size: 2.4rem; background: linear-gradient(135deg, #fff, var(--rpgr-red-soft)); }
.rpgr-pg-card__body { display: flex; flex-direction: column; flex: 1; gap: 8px; padding: 22px 24px 24px; }
.rpgr-pg-card__kicker { display: flex; align-items: center; gap: 6px; color: var(--rpgr-red); font-size: .8rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }
.rpgr-pg-card__title { display: block; color: var(--rpgr-black); font-size: 1.2rem; font-weight: 800; line-height: 1.3; }
.rpgr-pg-card__title a { color: inherit; text-decoration: none; }
.rpgr-pg-card__title a::after { content: ""; position: absolute; inset: 0; }
.rpgr-pg-story { position: relative; }
.rpgr-pg-card__title a:hover { color: var(--rpgr-red); }
.rpgr-pg-card__text { display: block; color: var(--rpgr-muted); font-size: .97rem; line-height: 1.6; }
.rpgr-pg-card__more { display: inline-flex; align-items: center; gap: 6px; margin-top: auto; padding-top: 6px; color: var(--rpgr-red); font-weight: 700; font-size: .95rem; }
.rpgr-pg-card--feature,
.rpgr-pg-bulletin { padding: 28px; gap: 10px; }
.rpgr-pg-card__icon {
	display: inline-grid;
	place-items: center;
	width: 52px; height: 52px;
	flex: none;
	border-radius: 16px;
	background: var(--rpgr-red-soft);
	color: var(--rpgr-red);
	font-size: 1.5rem;
}

.rpgr-pg-empty { max-width: 640px; margin: 0 auto; padding: 28px; text-align: center; border: 2px dashed var(--rpgr-line); border-radius: var(--rpgr-radius); color: var(--rpgr-muted); }

/* Rows with icons */
.rpgr-pg-stack { display: grid; gap: 18px; }
.rpgr-pg-row { display: flex; gap: 18px; padding: 22px; background: #fff; border-radius: var(--rpgr-radius-sm); box-shadow: var(--rpgr-shadow-sm); }
.rpgr-pg-row h3 { font-size: 1.12rem; font-weight: 800; margin-bottom: 4px; }
.rpgr-pg-row p { color: var(--rpgr-muted); font-size: .97rem; }

/* Photo mosaic */
.rpgr-pg-mosaic { display: grid; grid-template-columns: repeat(4, 1fr); grid-auto-rows: clamp(140px, 17vw, 220px); gap: 14px; }
.rpgr-pg-mosaic figure { overflow: hidden; border-radius: var(--rpgr-radius-sm); }
.rpgr-pg-mosaic figure:first-child { grid-column: span 2; grid-row: span 2; }
.rpgr-pg-mosaic img { width: 100%; height: 100%; object-fit: cover; }

/* Stats */
.rpgr-pg-stats {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	margin-top: -44px;
	position: relative;
	background: #fff;
	border-radius: var(--rpgr-radius);
	box-shadow: var(--rpgr-shadow);
	overflow: hidden;
}
.rpgr-pg-stat { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 26px 16px; text-align: center; }
.rpgr-pg-stat + .rpgr-pg-stat { border-left: 1px solid var(--rpgr-line); }
.rpgr-pg-stat__value { font-variant-numeric: tabular-nums; color: var(--rpgr-red); font-size: clamp(1.7rem, 3.4vw, 2.5rem); font-weight: 800; line-height: 1.1; letter-spacing: -.02em; }
.rpgr-pg-stat__label { color: var(--rpgr-muted); font-size: .92rem; font-weight: 600; }

/* Scholarship years */
.rpgr-pg-years { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 22px; align-items: start; }
.rpgr-pg-year { padding: 22px 24px; background: #fff; border-radius: var(--rpgr-radius-sm); box-shadow: var(--rpgr-shadow-sm); border-top: 4px solid var(--rpgr-red); }
.rpgr-pg-year__title { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; font-size: 1.5rem; font-weight: 800; margin-bottom: 10px !important; }
.rpgr-pg-year__title span { color: var(--rpgr-muted); font-size: .8rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.rpgr-pg-year__names { list-style: none; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 4px 14px; font-size: .95rem; }

/* People */
.rpgr-pg-people { list-style: none; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 32px 22px; }
.rpgr-pg-people > li { width: 168px; }
.rpgr-pg-people--large > li { width: 200px; }
.rpgr-pg-person { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 4px; }
.rpgr-pg-person__photo {
	display: block;
	width: 100%;
	max-width: 180px;
	aspect-ratio: 1;
	margin-bottom: 12px;
	border-radius: 50%;
	overflow: hidden;
	background: linear-gradient(135deg, var(--rpgr-red), var(--rpgr-red-dark));
	box-shadow: 0 0 0 4px #fff, 0 0 0 6px var(--rpgr-gold), var(--rpgr-shadow-sm);
}
.rpgr-pg-person--small .rpgr-pg-person__photo { max-width: 140px; }
.rpgr-pg-person__photo img { width: 100%; height: 100%; object-fit: cover; }
.rpgr-pg-person__initials { display: grid; place-items: center; height: 100%; color: #fff; font-size: 2.4rem; font-weight: 800; letter-spacing: .02em; }
.rpgr-pg-person__name { color: var(--rpgr-black); font-weight: 800; font-size: 1.08rem; line-height: 1.3; }
.rpgr-pg-person__role { color: var(--rpgr-red); font-size: .85rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }

/* Embeds */
.rpgr-pg-embed,
.rpgr-pg-calendar { overflow: hidden; border-radius: var(--rpgr-radius); background: #fff; box-shadow: var(--rpgr-shadow); }
.rpgr-pg-embed { height: 650px; background: #111; }
.rpgr-pg-embed iframe,
.rpgr-pg-calendar iframe { display: block; width: 100%; height: 100%; border: 0; }
.rpgr-pg-calendar iframe { height: 1065px; }

/* Forms */
.rpgr-pg-formcard { padding: clamp(22px, 3vw, 36px); background: #fff; border: 1px solid var(--rpgr-line); border-radius: var(--rpgr-radius); box-shadow: var(--rpgr-shadow); }
.rpgr-pg-formcard .wpforms-container { margin: 0 !important; }
.rpgr-pg-formcard input[type="text"],
.rpgr-pg-formcard input[type="email"],
.rpgr-pg-formcard input[type="tel"],
.rpgr-pg-formcard textarea,
.rpgr-pg-formcard select { width: 100% !important; max-width: 100% !important; border-radius: 12px !important; border: 1px solid #cfd2d8 !important; padding: 12px 14px !important; font: inherit !important; }
.rpgr-pg-formcard button[type="submit"] { min-height: 48px; padding: 12px 28px !important; border: 0 !important; border-radius: 999px !important; background: var(--rpgr-red) !important; color: #fff !important; font-weight: 700 !important; }

/* Sponsorship levels */
.rpgr-pg-tiers { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; }
.rpgr-pg-tier { display: flex; flex-direction: column; justify-content: space-between; gap: 18px; min-height: 170px; padding: 24px 20px; border-radius: var(--rpgr-radius-sm); background: #fff; border: 1px solid var(--rpgr-line); box-shadow: var(--rpgr-shadow-sm); }
.rpgr-pg-tier__name { font-weight: 800; font-size: 1.08rem; line-height: 1.3; color: var(--rpgr-black); }
.rpgr-pg-tier__range { font-weight: 800; font-size: 1.25rem; color: var(--rpgr-red); }
.rpgr-pg-tier--3 { background: linear-gradient(160deg, #fff, #eef0f3); }
.rpgr-pg-tier--4 { background: linear-gradient(160deg, #fffaf0, #fdf0c8); border-color: rgba(242, 201, 76, .6); }
.rpgr-pg-tier--5 { background: linear-gradient(160deg, var(--rpgr-red), var(--rpgr-red-dark)); border-color: transparent; }
.rpgr-pg-tier--5 .rpgr-pg-tier__name { color: #fff; }
.rpgr-pg-tier--5 .rpgr-pg-tier__range { color: var(--rpgr-gold); }

.rpgr-pg-note { max-width: 760px; margin: 28px auto 0 !important; text-align: center; color: var(--rpgr-muted); }

/* Steps */
.rpgr-pg-steps { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; counter-reset: rpgr-step; }
.rpgr-pg-steps li { counter-increment: rpgr-step; padding: 28px; background: #fff; border-radius: var(--rpgr-radius); box-shadow: var(--rpgr-shadow-sm); }
.rpgr-pg-steps li::before { content: counter(rpgr-step); display: grid; place-items: center; width: 44px; height: 44px; margin-bottom: 14px; border-radius: 50%; background: linear-gradient(135deg, var(--rpgr-gold), var(--rpgr-gold-2)); color: #111; font-weight: 800; font-size: 1.15rem; }
.rpgr-pg-steps h3 { font-size: 1.2rem; font-weight: 800; margin-bottom: 6px; }
.rpgr-pg-steps p { color: var(--rpgr-muted); }

/* Donate */
.rpgr-pg-give { max-width: 860px; margin: 0 auto; }
.rpgr-pg-give .rpgr-pg-card--feature { align-items: center; text-align: center; }
.rpgr-pg-give__code img { width: 170px; height: 170px; object-fit: contain; border-radius: 16px; }

/* Call to action band */
.rpgr-pg-cta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: clamp(28px, 4.5vw, 52px);
	border-radius: var(--rpgr-radius);
	background:
		radial-gradient(circle at 100% 0%, rgba(242, 201, 76, .22), transparent 45%),
		linear-gradient(135deg, #1a1a1a 0%, #111 55%, var(--rpgr-red-dark) 140%);
	color: #fff;
	box-shadow: var(--rpgr-shadow);
}
.rpgr-pg-cta__title { color: #fff !important; font-size: clamp(1.5rem, 3vw, 2.2rem); font-weight: 800; line-height: 1.15; }
.rpgr-pg-cta__text { margin-top: 8px !important; color: rgba(255, 255, 255, .82); }

/* Responsive */
@media (max-width: 1080px) {
	.rpgr-pg-cards--4 { grid-template-columns: repeat(2, 1fr); }
	.rpgr-pg-tiers { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 880px) {
	.rpgr-pg-cards--3 { grid-template-columns: repeat(2, 1fr); }
	.rpgr-pg-split { grid-template-columns: 1fr; }
	.rpgr-pg-steps { grid-template-columns: 1fr; }
	.rpgr-pg-mosaic { grid-template-columns: repeat(2, 1fr); }
	.rpgr-pg-embed { height: 520px; }
}
@media (max-width: 640px) {
	.rpgr-pg { font-size: 16px; }
	.rpgr-pg-cards--2,
	.rpgr-pg-cards--3,
	.rpgr-pg-cards--4 { grid-template-columns: 1fr; }
	.rpgr-pg-tiers { grid-template-columns: 1fr; }
	.rpgr-pg-tier { min-height: 0; flex-direction: row; align-items: center; justify-content: space-between; gap: 12px; padding: 18px 20px; }
	.rpgr-pg-tier__range { white-space: nowrap; font-size: 1.02rem; }
	.rpgr-pg-stats { grid-template-columns: 1fr; margin-top: -32px; }
	.rpgr-pg-stat + .rpgr-pg-stat { border-left: 0; border-top: 1px solid var(--rpgr-line); }
	.rpgr-pg-pills { margin-top: -22px; }
	.rpgr-pg-hero .rpgr-pg-btn { flex: 1 1 100%; }
	.rpgr-pg-embed { height: 430px; }
	.rpgr-pg-calendar iframe { height: calc(100vw + 260px); }
	.rpgr-pg-year__names { grid-template-columns: 1fr; }
	.rpgr-pg-people { gap: 24px 12px; }
	.rpgr-pg-people > li,
	.rpgr-pg-people--large > li { width: calc(50% - 6px); }
}
@media (prefers-reduced-motion: reduce) {
	.rpgr-pg *,
	.rpgr-pg *::before,
	.rpgr-pg *::after { transition: none !important; }
}

/* Home: slider */
.rpgr-pg-slider { position: relative; background: #111; isolation: isolate; }
.rpgr-pg-slider__track { display: grid; }
.rpgr-pg-slide {
	grid-area: 1 / 1;
	position: relative;
	display: flex; align-items: flex-end;
	min-height: clamp(440px, 72vh, 720px);
	padding: clamp(56px, 9vw, 110px) 0 clamp(72px, 9vw, 110px);
	color: #fff;
	opacity: 0; visibility: hidden;
	transition: opacity .7s ease, visibility 0s linear .7s;
}
.rpgr-pg-slide.is-active { z-index: 1; opacity: 1; visibility: visible; transition-delay: 0s; }
.rpgr-pg-slide::after {
	content: ""; position: absolute; inset: 0; z-index: -1;
	background: linear-gradient(180deg, rgba(0, 0, 0, .12) 0%, rgba(0, 0, 0, .5) 55%, rgba(0, 0, 0, .82) 100%), linear-gradient(90deg, rgba(143, 23, 28, .5) 0%, rgba(143, 23, 28, 0) 60%);
}
.rpgr-pg-slide__inner { position: relative; }
.rpgr-pg-slide .rpgr-pg-hero__title { font-size: clamp(2rem, 4.6vw, 3.6rem); }
.rpgr-pg-slider__controls {
	position: absolute; left: 0; right: 0; bottom: 22px; z-index: 2;
	display: flex; align-items: center; justify-content: center; gap: 14px;
}
.rpgr-pg .rpgr-pg-slider__btn {
	width: 44px; height: 44px; border: 0; border-radius: 50%;
	background: rgba(255, 255, 255, .16); color: #fff; font-size: 1rem; cursor: pointer;
	backdrop-filter: blur(6px);
}
.rpgr-pg .rpgr-pg-slider__btn:hover { background: rgba(255, 255, 255, .32); }
.rpgr-pg-slider__dots { display: flex; gap: 8px; }
.rpgr-pg .rpgr-pg-slider__dots button { width: 12px; height: 12px; padding: 0; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .45); cursor: pointer; }
.rpgr-pg .rpgr-pg-slider__dots button[aria-selected="true"] { width: 32px; border-radius: 6px; background: var(--rpgr-gold); }

/* Home: video, events, inline stats */
.rpgr-pg-video { aspect-ratio: 16 / 9; overflow: hidden; border-radius: var(--rpgr-radius); background: #111; box-shadow: var(--rpgr-shadow); }
.rpgr-pg-video iframe { display: block; width: 100%; height: 100%; border: 0; }
/* Lazy images with sizes="auto" get a wrong auto height in Chrome, so every split photo keeps a fixed proportion. */
.rpgr-pg-split__media--natural img { aspect-ratio: 5 / 4; object-fit: contain; background: #fff; }
.rpgr-pg-events { list-style: none; padding: 0; display: grid; gap: 14px; max-width: 820px; margin: 0 auto !important; }
.rpgr-pg-events li { display: grid; grid-template-columns: 220px 1fr; gap: 6px 20px; align-items: center; padding: 18px 22px; background: #fff; border: 1px solid var(--rpgr-line); border-radius: var(--rpgr-radius-sm); box-shadow: var(--rpgr-shadow-sm); }
.rpgr-pg-events__when { display: inline-flex; align-items: center; gap: 6px; color: var(--rpgr-red); font-weight: 700; font-size: .95rem; }
.rpgr-pg-events__title { font-weight: 800; font-size: 1.1rem; color: var(--rpgr-black); text-decoration: none; }
.rpgr-pg-events__where { grid-column: 2; color: var(--rpgr-muted); font-size: .92rem; }
.rpgr-pg-stats--inline { list-style: none; padding: 0; margin-top: 26px !important; box-shadow: none; border-radius: 0; background: transparent; grid-template-columns: repeat(3, auto); justify-content: start; gap: 28px; }
.rpgr-pg-stats--inline .rpgr-pg-stat { align-items: flex-start; text-align: left; padding: 0; }
.rpgr-pg-stats--inline .rpgr-pg-stat + .rpgr-pg-stat { border: 0; }
@media (max-width: 640px) {
	.rpgr-pg-events li { grid-template-columns: 1fr; }
	.rpgr-pg-events__where { grid-column: 1; }
	.rpgr-pg-stats--inline { grid-template-columns: 1fr; gap: 16px; margin-top: 20px !important; }
	.rpgr-pg-slider__controls { bottom: 14px; }
}

/* WP Custom Layout bulletin widget inside our pages */
.rpgr-pg-wpcl-bulletins .wpcl-bulletins { padding: 0; background: transparent; }
.rpgr-pg-wpcl-bulletins .wpcl-bulletin-cover { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; object-position: top; }
.rpgr-pg-card__media--cover img { object-position: top; }
