/* ==========================================================================
   RRRFC — front-end styles

   Two colour modes share one layout. theme.json carries the LIGHT (navy)
   palette, so the site renders correctly with JavaScript off; the dark
   (burgundy) palette is applied by overriding the same custom properties.
   An inline head script stamps data-theme before paint, so switching never
   flashes the wrong palette.
   ========================================================================== */

/* --------------------------------------------------- Dark palette override */

:root[data-theme="dark"] {
	--wp--preset--color--ink: #0B1420;
	--wp--preset--color--ink-deep: #060E18;
	--wp--preset--color--surface: #122032;
	--wp--preset--color--surface-alt: #1A2C42;
	--wp--preset--color--line: #23374F;
	--wp--preset--color--primary: #6E1F3C;
	--wp--preset--color--primary-deep: #55162E;
	--wp--preset--color--gold: #C9A24A;
	--wp--preset--color--silver: #8A97A5;
	--wp--preset--color--muted: #9AA9BA;
	--wp--preset--color--paper: #EAEEF2;
	--rr-eyebrow: var(--wp--preset--color--gold);
	--rr-hero-panel: #0B1420;
	--rr-shadow: 0 20px 44px rgba(0, 0, 0, 0.45);
	--rr-scrim-strength: 1;
	color-scheme: dark;
}

/* Visitors who prefer dark and have not chosen get it too. */
@media (prefers-color-scheme: dark) {
	:root:not([data-theme="light"]) {
		--wp--preset--color--ink: #0B1420;
		--wp--preset--color--ink-deep: #060E18;
		--wp--preset--color--surface: #122032;
		--wp--preset--color--surface-alt: #1A2C42;
		--wp--preset--color--line: #23374F;
		--wp--preset--color--primary: #6E1F3C;
		--wp--preset--color--primary-deep: #55162E;
		--wp--preset--color--gold: #C9A24A;
		--wp--preset--color--silver: #8A97A5;
		--wp--preset--color--muted: #9AA9BA;
		--wp--preset--color--paper: #EAEEF2;
		--rr-eyebrow: var(--wp--preset--color--gold);
		--rr-hero-panel: #0B1420;
		--rr-shadow: 0 20px 44px rgba(0, 0, 0, 0.45);
		--rr-scrim-strength: 1;
		color-scheme: dark;
	}
}

:root {
	/* Gold on white fails contrast at body sizes, so the light mode leads with
	   navy and keeps gold for rules, buttons and dark-ground accents. */
	--rr-eyebrow: var(--wp--preset--color--primary);
	--rr-hero-panel: var(--wp--preset--color--surface);
	--rr-shadow: 0 14px 32px rgba(20, 26, 36, 0.09);
	--rr-scrim-strength: 0.35;
	--rrrfc-gutter: 56px;
	--rrrfc-scrim: 0.3;
	--rr-radius: 5px;
	color-scheme: light;
}

body { background-color: var(--wp--preset--color--ink); color: var(--wp--preset--color--paper); }

.rrrfc-display, .rrrfc-hero__title, .rrrfc-btn, .rrrfc-eyebrow,
.rrrfc-fixture__label, .rrrfc-fixture__name, .rrrfc-fixture__v, .rrrfc-fixture__all,
.rrrfc-results__label, .rrrfc-results__opponent, .rrrfc-results__score, .rrrfc-chip,
.rrrfc-sponsors__label {
	font-family: Oswald, Oswald, 'Barlow Condensed', 'Arial Narrow', sans-serif;
}

/* --------------------------------------------------------------- Buttons */

.rrrfc-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 54px;
	padding: 0 32px;
	font-size: 17px;
	font-weight: 700;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	text-decoration: none;
	border: 1px solid transparent;
	border-radius: var(--rr-radius);
	transition: background-color 0.16s ease, color 0.16s ease, border-color 0.16s ease;
}

.rrrfc-btn--primary { background: var(--wp--preset--color--primary); color: #fff; }
.rrrfc-btn--primary:hover,
.rrrfc-btn--primary:focus-visible { background: var(--wp--preset--color--primary-deep); color: #fff; text-decoration: none; }

.rrrfc-btn--ghost { border-color: var(--wp--preset--color--line); color: var(--wp--preset--color--paper); background: transparent; font-weight: 600; }
.rrrfc-btn--ghost:hover,
.rrrfc-btn--ghost:focus-visible { border-color: var(--wp--preset--color--primary); color: var(--wp--preset--color--primary); text-decoration: none; }
:root[data-theme="dark"] .rrrfc-btn--ghost:hover { border-color: var(--wp--preset--color--gold); color: var(--wp--preset--color--gold); }

.rrrfc-eyebrow {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--rr-eyebrow);
}

.rrrfc-eyebrow__rule { width: 32px; height: 3px; background: var(--wp--preset--color--gold); flex: none; }
.rrrfc-crest { display: block; object-fit: contain; }

/* ------------------------------------------------------- Full-bleed hero
   The hero sits on a photograph in BOTH colour modes, so its text and card are
   deliberately fixed light-on-dark rather than following the palette. */

.rrrfc-hero {
	position: relative;
	isolation: isolate;
	overflow: clip;
	margin-block-start: 0;
	padding: 76px var(--rrrfc-gutter) 84px;
	background: #14161d;
	color: #f5f3f0;
}

.rrrfc-hero__media {
	position: absolute;
	inset: 0;
	z-index: -2;
	background-color: #14161d;
	background-size: cover;
	background-position: 50% 40%;
	background-repeat: no-repeat;
	opacity: 1;
	transition: opacity 0.75s ease;
}

.rrrfc-hero__scrim {
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		linear-gradient(180deg, rgba(14, 15, 19, calc(var(--rrrfc-scrim) * 0.7)) 0%, rgba(14, 15, 19, var(--rrrfc-scrim)) 55%, rgba(14, 15, 19, 0.92) 100%),
		linear-gradient(90deg, rgba(14, 15, 19, 0.66) 0%, rgba(14, 15, 19, 0.06) 64%);
}

.rrrfc-hero--plain .rrrfc-hero__media {
	background-image: radial-gradient(120% 100% at 78% 12%, #232734 0%, #14161d 58%, #0e0f13 100%);
}

/* The 1943 heritage crest as a watermark. The source art is black line work on
   white; inverting it gives white lines on black, and screen blending then drops
   the black away entirely — so the linework floats over the photograph with no
   box around it, and no recoloured copy of the logo has to be created. */
.rrrfc-hero__crest {
	position: absolute;
	right: -40px;
	top: -30px;
	width: 460px;
	height: 460px;
	background-image: url('../img/crest-1943.png');
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	filter: invert(1);
	mix-blend-mode: screen;
	opacity: 0.13;
	z-index: -1;
	pointer-events: none;
}

.rrrfc-hero__inner { display: flex; align-items: flex-start; justify-content: space-between; gap: 64px; max-width: 1328px; margin: 0 auto; }
.rrrfc-hero__copy { display: flex; flex-direction: column; gap: 26px; max-width: 660px; padding-top: 18px; }

.rrrfc-hero__title {
	font-family: Anton, 'Barlow Condensed', 'Arial Narrow', sans-serif;
	margin: 0;
	font-size: clamp(2.6rem, 6.4vw, 5.75rem);
	font-weight: 700;
	line-height: 0.92;
	text-transform: uppercase;
	text-wrap: balance;
	color: #ffffff;
}

.rrrfc-hero__text { margin: 0; max-width: 520px; font-size: 18px; line-height: 1.6; color: #ccd2dc; }
.rrrfc-hero__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; margin: 6px 0 0; }
.rrrfc-hero .rrrfc-eyebrow { color: var(--wp--preset--color--gold); }
.rrrfc-hero .rrrfc-btn--ghost { border-color: rgba(255, 255, 255, 0.42); color: #fff; }
.rrrfc-hero .rrrfc-btn--ghost:hover { border-color: var(--wp--preset--color--gold); color: var(--wp--preset--color--gold); }

html.rrrfc-hero-fade .rrrfc-hero__media { opacity: 0; }
html.rrrfc-hero-fade.rrrfc-hero-ready .rrrfc-hero__media { opacity: 1; }
@media (prefers-reduced-motion: reduce) { html.rrrfc-hero-fade .rrrfc-hero__media { opacity: 1; transition: none; } }

/* ----------------------------------------------------------- Fixture card */

.rrrfc-fixture {
	display: flex;
	flex-direction: column;
	flex: none;
	width: 400px;
	background: rgba(23, 25, 33, 0.94);
	backdrop-filter: blur(6px);
	border-top: 4px solid var(--wp--preset--color--primary);
	color: #f0eeeb;
	border-radius: var(--rr-radius) var(--rr-radius) 0 0;
}

.rrrfc-fixture__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 16px 24px; border-bottom: 1px solid rgba(255, 255, 255, 0.1); }
.rrrfc-fixture__label { font-size: 15px; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--wp--preset--color--gold); }
.rrrfc-fixture__team { font-size: 12px; font-weight: 500; letter-spacing: 0.1em; text-transform: uppercase; color: #9aa2b0; }

.rrrfc-fixture__teams { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 26px 24px; }
.rrrfc-fixture__side { display: flex; flex-direction: column; align-items: center; gap: 10px; flex: 1 1 0; min-width: 0; }
.rrrfc-fixture__name { font-size: 17px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; text-align: center; overflow-wrap: anywhere; }
.rrrfc-fixture__v { font-size: 30px; font-weight: 700; color: #5b6473; flex: none; }
.rrrfc-fixture__crest-blank { width: 62px; height: 62px; border: 1px dashed rgba(255, 255, 255, 0.22); border-radius: 50%; }
.rrrfc-fixture__logo { width: 62px; height: 62px; object-fit: contain; display: block; }

.rrrfc-fixture__meta { list-style: none; margin: 0; padding: 0 24px 22px; display: flex; flex-direction: column; gap: 9px; font-size: 14px; color: #b7bdc8; }
.rrrfc-fixture__meta li { display: flex; align-items: flex-start; gap: 10px; }
.rrrfc-fixture__meta svg { color: var(--wp--preset--color--gold); flex: none; margin-top: 3px; }
.rrrfc-fixture__empty { margin: 0; padding: 24px; font-size: 15px; line-height: 1.6; color: #b7bdc8; }

.rrrfc-fixture__all {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	height: 52px;
	margin-top: auto;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	background: rgba(255, 255, 255, 0.05);
	color: #f0eeeb;
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	text-decoration: none;
}

.rrrfc-fixture__all:hover { background: rgba(255, 255, 255, 0.1); color: var(--wp--preset--color--gold); text-decoration: none; }
.rrrfc-fixture__all svg { color: var(--wp--preset--color--gold); }

/* ---------------------------------------------------------------- Results */

.rrrfc-results { display: flex; align-items: stretch; background: var(--wp--preset--color--surface); border-bottom: 1px solid var(--wp--preset--color--line); margin-block-start: 0; }

.rrrfc-results__label {
	display: flex;
	align-items: center;
	margin: 0;
	padding: 0 34px;
	background: var(--wp--preset--color--primary);
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	max-width: 7.5em;
	line-height: 1.05;
}

.rrrfc-results__list { list-style: none; margin: 0; padding: 0; flex: 1 1 auto; display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1px; background: var(--wp--preset--color--line); }

.rrrfc-results__item { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; background: var(--wp--preset--color--surface); padding: 24px 30px; }
.rrrfc-results__meta { display: block; width: 100%; font-size: 11px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: var(--wp--preset--color--muted); font-family: 'Barlow', sans-serif; }
.rrrfc-results__opponent { font-size: 20px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; }
.rrrfc-results__score { display: inline-flex; align-items: center; gap: 12px; font-size: 30px; font-weight: 700; }

.rrrfc-chip { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; font-size: 16px; font-weight: 700; color: #fff; border-radius: 3px; }
.rrrfc-chip--win { background: var(--wp--preset--color--win); }
.rrrfc-chip--draw { background: var(--wp--preset--color--draw); }
.rrrfc-chip--loss { background: var(--wp--preset--color--loss); }

/* --------------------------------------------------------------- Sponsors */

.rrrfc-sponsors { background: var(--wp--preset--color--surface); color: var(--wp--preset--color--paper); padding: 48px var(--rrrfc-gutter); border-top: 1px solid var(--wp--preset--color--line); margin-block-start: 0; }
.rrrfc-sponsors__head { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 22px; }
.rrrfc-sponsors__label { margin: 0; font-size: 15px; font-weight: 700; letter-spacing: 0.2em; text-transform: uppercase; color: var(--wp--preset--color--muted); }
.rrrfc-sponsors__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 16px; }
.rrrfc-sponsors__item { display: flex; align-items: center; justify-content: center; min-height: 74px; padding: 12px; border: 1px solid var(--wp--preset--color--line); border-radius: 4px; background: var(--wp--preset--color--ink); }
.rrrfc-sponsors__item { overflow: hidden; }
/* Wide marks (Ansaldo Nuclear is 1937x532) broke out of the cell with
   width:auto — constrain both axes and let object-fit letterbox them. */
.rrrfc-sponsors__item img { max-height: 52px; max-width: 100%; width: auto; height: auto; object-fit: contain; filter: grayscale(1); opacity: 0.8; transition: filter 0.2s ease, opacity 0.2s ease; }
.rrrfc-sponsors__item a { display: flex; align-items: center; justify-content: center; width: 100%; min-width: 0; }
.rrrfc-sponsors__item a:hover img { filter: none; opacity: 1; }
.rrrfc-sponsors__name { font-size: 14px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: var(--wp--preset--color--muted); text-align: center; }

/* ---------------------------------------------------------------- Socials */

.rrrfc-socials { list-style: none; display: flex; align-items: center; gap: 14px; margin: 0; padding: 0; }
.rrrfc-socials a { display: inline-flex; color: inherit; }
.rrrfc-socials a:hover { color: var(--wp--preset--color--gold); }

/* ------------------------------------------------------- Light/dark switch */

.rrrfc-themetoggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	padding: 0;
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--rr-radius);
	background: transparent;
	color: inherit;
	cursor: pointer;
	transition: border-color 0.16s ease, color 0.16s ease, background-color 0.16s ease;
}

.rrrfc-themetoggle:hover { border-color: var(--wp--preset--color--gold); color: var(--wp--preset--color--gold); }
.rrrfc-themetoggle:focus-visible { outline: 2px solid var(--wp--preset--color--gold); outline-offset: 2px; }
.rrrfc-themetoggle__icon { display: none; line-height: 0; }
:root[data-theme="light"] .rrrfc-themetoggle__icon--moon { display: inline-flex; }
:root[data-theme="dark"] .rrrfc-themetoggle__icon--sun { display: inline-flex; }
:root:not([data-theme]) .rrrfc-themetoggle__icon--moon { display: inline-flex; }

/* --------------------------------------------------------- Header helpers */

.rrrfc-header { margin-block-end: 0; }

.rrrfc-utility {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	min-height: 38px;
	padding: 4px var(--rrrfc-gutter);
	background: var(--wp--preset--color--primary);
	color: #fff;
	font-family: Oswald, 'Barlow Condensed', 'Arial Narrow', sans-serif;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.09em;
	text-transform: uppercase;
}

.rrrfc-utility p { margin: 0; }
.rrrfc-utility a { color: #fff; }

/* Five playing sections is a tight fit; wrap to 3+2 before stacking. */
.rrrfc-streams > .wp-block-column { min-width: 0; border-radius: var(--rr-radius); }
.rrrfc-stream__more { margin-top: auto; padding-top: 6px; }
.rrrfc-stream__more a { display: inline-flex; align-items: center; gap: 7px; color: var(--rr-eyebrow); }
.rrrfc-stream__more a::after { content: "\2192"; font-size: 1.05em; line-height: 1; }

/* ------------------------------------------------------ Navigation submenus */

/* Core ships `.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container
   { background-color: #fff }`. The :not() makes it (0,3,0), which beat a plain
   two-class rule and left white text on a white panel in dark mode. */
.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container,
.wp-block-navigation.has-background .wp-block-navigation__submenu-container,
.wp-block-navigation .wp-block-navigation__submenu-container {
	background-color: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--line);
	border-top: 2px solid var(--wp--preset--color--gold);
	color: var(--wp--preset--color--paper);
	padding: 6px 0;
	min-width: 244px;
	border-radius: 0 0 var(--rr-radius) var(--rr-radius);
	box-shadow: var(--rr-shadow);
}

.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content { color: var(--wp--preset--color--paper); padding: 10px 20px; width: 100%; }
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover,
.wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content:focus-visible { color: var(--wp--preset--color--primary); background-color: var(--wp--preset--color--surface-alt); text-decoration: none; }
:root[data-theme="dark"] .wp-block-navigation .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--gold); }

.wp-block-navigation .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--primary); text-decoration: none; }
:root[data-theme="dark"] .wp-block-navigation .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--gold); }

.wp-block-navigation__responsive-container.is-menu-open { background-color: var(--wp--preset--color--ink); color: var(--wp--preset--color--paper); padding: 28px; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container { color: var(--wp--preset--color--paper); background-color: transparent; box-shadow: none; border: 0; }
.wp-block-navigation__responsive-container-open,
.wp-block-navigation__responsive-container-close { color: var(--wp--preset--color--paper); }


/* ==========================================================================
   Responsive

   Everything below lives inside a media query, so the desktop layout is
   unchanged. Fixes here came from measuring a real 375px viewport: horizontal
   overflow from full-width buttons, tap targets under 44px, an over-tall
   header that pushed the headline most of a screen down, and 11px labels.
   ========================================================================== */

/* Nothing should ever scroll sideways on a phone. The causes are fixed below;
   this only stops one stray element ruining the whole page. */
body { overflow-x: clip; }

@media (max-width: 1180px) {
	.rrrfc-streams { flex-wrap: wrap !important; }
	.rrrfc-streams > .wp-block-column { flex-basis: calc(33.333% - 12px) !important; flex-grow: 1; }
}

/* The fixture card drops to its own line when it would meet the copy — the
   headline and standfirst keep their own wrapping at every width rather than
   being squeezed narrower first. min-width matches the standfirst's max-width,
   so the copy never reflows; the card wraps instead. */
.rrrfc-hero__inner { flex-wrap: wrap; }
.rrrfc-hero__copy { min-width: 520px; }

@media (max-width: 700px) {
	.rrrfc-hero__copy { min-width: 0; }
	.rrrfc-fixture { width: 100%; max-width: 460px; }
}

@media (max-width: 900px) {
	:root { --rrrfc-gutter: 24px; }

	.rrrfc-hero { padding: 44px var(--rrrfc-gutter) 52px; }
	.rrrfc-hero__copy { padding-top: 0; gap: 20px; }
	.rrrfc-hero__crest { width: 320px; height: 320px; right: -70px; top: -30px; opacity: 0.1; }
	.rrrfc-hero__text { font-size: 16px; }

	/* The header was 283px tall before any content — trim it back hard. */
	.rrrfc-header > .wp-block-group:last-child { padding-top: 10px !important; padding-bottom: 10px !important; row-gap: 10px; }
	.rrrfc-header .wp-block-site-logo img { width: 42px !important; height: auto; }
	.rrrfc-header .wp-block-site-title { font-size: 17px !important; line-height: 1.05; }
	.rrrfc-header .wp-block-buttons .wp-block-button__link { padding: 11px 16px !important; font-size: 13px !important; }

	.rrrfc-results { flex-direction: column; }
	.rrrfc-results__label { max-width: none; padding: 12px var(--rrrfc-gutter); }
	.rrrfc-results__item { padding: 18px var(--rrrfc-gutter); }
	.rrrfc-sponsors { padding: 32px var(--rrrfc-gutter); }
	.rrrfc-sponsors__head { flex-wrap: wrap; gap: 10px; }
}

@media (max-width: 782px) {
	/* Five sections stack rather than squeezing into thirds. */
	.rrrfc-streams > .wp-block-column { flex-basis: 100% !important; }
}

@media (max-width: 600px) {
	/* The utility strip wrapped onto two lines and cost 54px. Its wording is
	   repeated in the footer, so the whole strip goes on a phone — hiding only
	   the text left an empty coloured band, since no socials are configured.
	   The class is doubled deliberately: this is a flex-layout group block, and
	   core's .wp-block-group.is-layout-flex rule outranks a single class. */
	.rrrfc-utility.rrrfc-utility { display: none; }

	/* The location strap pushed the title onto a second line; it is in the
	   footer too, so the header keeps just the club name. Targeted at the
	   sibling only — the site title is itself a <p>. */
	.rrrfc-header .wp-block-site-title + p { display: none; }
	.rrrfc-header .wp-block-site-title { font-size: 16px !important; }

	.rrrfc-hero { padding: 34px var(--rrrfc-gutter) 40px; }
	.rrrfc-hero__title { font-size: clamp(2.1rem, 10vw, 2.9rem); line-height: 0.98; }
	.rrrfc-hero__inner { gap: 28px; }

	/* width:100% plus 32px of side padding overflowed the viewport by 38px. */
	.rrrfc-btn { width: 100%; box-sizing: border-box; padding: 0 20px; font-size: 16px; }
	.rrrfc-hero__actions { flex-direction: column; align-items: stretch; width: 100%; }

	.rrrfc-fixture { max-width: none; }
	.rrrfc-fixture__teams { padding: 20px 16px; gap: 10px; }
	.rrrfc-fixture__name { font-size: 15px; }
	.rrrfc-fixture__crest-blank,
	.rrrfc-fixture__logo { width: 50px; height: 50px; }
	.rrrfc-fixture__side img { width: 50px !important; height: 50px !important; }

	.rrrfc-results__item { flex-wrap: wrap; gap: 8px; }
	.rrrfc-results__score { font-size: 26px; }
	.rrrfc-sponsors__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

	/* 11px strap lines are unreadable at arm's length. */
	.rrrfc-header .wp-block-group p { font-size: 12px !important; }
	.rrrfc-results__meta { font-size: 12px; }
}

/* ------------------------------------------------- Touch target minimums
   Measured at 375px: "Get involved" 23px, "Read more" 22px, the menu button
   24px. Anything a thumb has to hit gets 44px. */

@media (hover: none), (max-width: 900px) {
	.rrrfc-stream__more a,
	.wp-block-post-excerpt__more-link,
	.rrrfc-socials a {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
	}

	.rrrfc-socials a { min-width: 44px; justify-content: center; }
	.rrrfc-socials { gap: 4px; }

	.wp-block-navigation__responsive-container-open,
	.wp-block-navigation__responsive-container-close {
		min-width: 44px;
		min-height: 44px;
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
	}

	.rrrfc-themetoggle { width: 44px; height: 44px; }

	.custom-logo-link,
	.wp-block-site-logo a { display: inline-flex; align-items: center; min-height: 44px; }

	/* The site title is a link too, and the shop button landed 1px short. */
	.wp-block-site-title a { display: inline-flex; align-items: center; min-height: 44px; }
	.wp-block-button__link { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; }

	/* Menu links need room between them, not just within them. */
	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
		min-height: 44px;
		display: flex;
		align-items: center;
		font-size: 19px;
	}

	.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { font-size: 16px; padding-left: 14px; }
}

@media (prefers-reduced-motion: reduce) {
	* { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}

/* ==========================================================================
   Sticky header, tighter rhythm, motion
   ========================================================================== */

.rrrfc-header--sticky {
	position: sticky;
	top: 0;
	z-index: 90;
	background-color: var(--wp--preset--color--surface);
	border-bottom: 1px solid var(--wp--preset--color--line);
	transition: box-shadow 0.2s ease;
}

.rrrfc-header--sticky.is-stuck { box-shadow: var(--rr-shadow); }
.admin-bar .rrrfc-header--sticky { top: 32px; }
@media (max-width: 782px) { .admin-bar .rrrfc-header--sticky { top: 46px; } }

/* Section rhythm — the gaps between bands were doing more separating than the
   content needed. Trimmed roughly a third across the board. */
.rrrfc-section-tight > .wp-block-group,
.wp-site-blocks > main.wp-block-group { padding-top: 56px; padding-bottom: 56px; }
.rrrfc-sponsors { padding-top: 36px; padding-bottom: 36px; }
.rrrfc-hero { padding-top: 60px; padding-bottom: 66px; }

/* --------------------------------------------------- Ways to play, on hover */

.rrrfc-streams { align-items: stretch; }

.rrrfc-streams > .wp-block-column {
	position: relative;
	z-index: 1;
	/* Anchored to the bottom the card grew straight up over the heading above.
	   From the centre it expands evenly, and the row carries enough clearance
	   for the extra height. */
	transform-origin: center center;
	background-color: var(--wp--preset--color--surface);
	transition:
		transform 0.32s cubic-bezier(0.22, 0.72, 0.28, 1),
		box-shadow 0.32s ease,
		border-color 0.32s ease;
	will-change: transform;
}

/* Lift the hovered card over its neighbours; the siblings ease back a touch so
   the overlap reads as depth rather than a collision. */
.rrrfc-streams > .wp-block-column:hover,
.rrrfc-streams > .wp-block-column:focus-within {
	z-index: 5;
	box-shadow: 0 30px 64px rgba(0, 0, 0, 0.42);
}

/* Full 30% growth only where five cards sit in a row and the gutters can
   absorb it. Between 900 and 1180px the cards wrap to three-then-two and get
   wide enough that 30% would push the edge ones off-screen — where overflow-x:
   clip cuts them off rather than scrolling — so the lift is gentler there. */
@media (min-width: 1181px) {
	.rrrfc-streams > .wp-block-column:hover,
	.rrrfc-streams > .wp-block-column:focus-within { transform: scale(1.3); }
	.rrrfc-streams:hover > .wp-block-column:not(:hover) { transform: scale(0.96); }
}

@media (min-width: 901px) and (max-width: 1180px) {
	.rrrfc-streams > .wp-block-column:hover,
	.rrrfc-streams > .wp-block-column:focus-within { transform: scale(1.12); }
	.rrrfc-streams:hover > .wp-block-column:not(:hover) { transform: scale(0.98); }
}

.rrrfc-streams > .wp-block-column > * { transition: transform 0.32s cubic-bezier(0.22, 0.72, 0.28, 1); }
.rrrfc-streams > .wp-block-column:hover .rrrfc-stream__more a::after { transform: translateX(4px); }
.rrrfc-stream__more a::after { transition: transform 0.24s ease; }

/* ------------------------------------------------------- Scroll-in motion */

.rrrfc-reveal { opacity: 0; transform: translateY(18px); transition: opacity 0.55s ease, transform 0.55s cubic-bezier(0.22, 0.72, 0.28, 1); }
.rrrfc-reveal.is-in { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) {
	.rrrfc-reveal { opacity: 1; transform: none; transition: none; }
	.rrrfc-streams > .wp-block-column,
	.rrrfc-streams > .wp-block-column:hover,
	.rrrfc-streams:hover > .wp-block-column:not(:hover) { transform: none; transition: none; }
}

/* ------------------------------------------------------------ Results ticker */

.rrrfc-ticker {
	display: flex;
	align-items: stretch;
	background: var(--wp--preset--color--surface);
	border-bottom: 1px solid var(--wp--preset--color--line);
	overflow: hidden;
	margin-block-start: 0;
}

.rrrfc-ticker__label {
	display: flex;
	align-items: center;
	flex: none;
	padding: 0 22px;
	background: var(--wp--preset--color--primary);
	color: #fff;
	font-family: Oswald, 'Barlow Condensed', 'Arial Narrow', sans-serif;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.rrrfc-ticker__viewport { overflow: hidden; flex: 1 1 auto; }
.rrrfc-ticker__track { display: flex; width: max-content; animation: rrrfc-ticker 46s linear infinite; }
.rrrfc-ticker:hover .rrrfc-ticker__track,
.rrrfc-ticker:focus-within .rrrfc-ticker__track { animation-play-state: paused; }

.rrrfc-ticker__run { display: flex; align-items: center; gap: 0; list-style: none; margin: 0; padding: 0; }

.rrrfc-ticker__item {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 13px 26px;
	border-right: 1px solid var(--wp--preset--color--line);
	white-space: nowrap;
	font-size: 15px;
}

.rrrfc-ticker__date { font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: var(--wp--preset--color--muted); }
.rrrfc-ticker__team { font-size: 11px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; color: var(--wp--preset--color--muted); }
.rrrfc-ticker__opponent { font-family: Oswald, 'Barlow Condensed', 'Arial Narrow', sans-serif; font-size: 18px; font-weight: 600; letter-spacing: 0.03em; text-transform: uppercase; }
.rrrfc-ticker__score { font-family: Oswald, 'Barlow Condensed', 'Arial Narrow', sans-serif; font-size: 20px; font-weight: 700; }
.rrrfc-ticker .rrrfc-chip { width: 22px; height: 22px; font-size: 13px; }

@keyframes rrrfc-ticker { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) {
	.rrrfc-ticker__track { animation: none; }
	.rrrfc-ticker__viewport { overflow-x: auto; }
}

/* ---------------------------------------------------------- Instagram strip */

.rrrfc-ig { padding: 44px 0 48px; background: var(--wp--preset--color--surface); border-top: 1px solid var(--wp--preset--color--line); }
.rrrfc-ig__head { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; max-width: 1328px; margin: 0 auto 22px; padding: 0 var(--rrrfc-gutter); }

.rrrfc-ig__label { display: inline-flex; align-items: center; gap: 10px; font-family: Oswald, 'Barlow Condensed', 'Arial Narrow', sans-serif; font-size: 16px; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; color: var(--rr-eyebrow); }

.rrrfc-ig__follow {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-height: 44px;
	font-family: Oswald, 'Barlow Condensed', 'Arial Narrow', sans-serif;
	font-size: 16px;
	font-weight: 600;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	text-decoration: none;
}

.rrrfc-ig__viewport { overflow: hidden; }
.rrrfc-ig__track { display: flex; width: max-content; animation: rrrfc-ticker 60s linear infinite; }
.rrrfc-ig:hover .rrrfc-ig__track { animation-play-state: paused; }
.rrrfc-ig__run { display: flex; gap: 14px; list-style: none; margin: 0; padding: 0 7px; }
.rrrfc-ig__tile { flex: none; width: 236px; aspect-ratio: 1; overflow: hidden; border-radius: var(--rr-radius); background: var(--wp--preset--color--surface-alt); }
.rrrfc-ig__tile img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.4s ease; }
.rrrfc-ig__tile:hover img { transform: scale(1.06); }
.rrrfc-ig__empty { max-width: 1328px; margin: 0 auto; padding: 0 var(--rrrfc-gutter); color: var(--wp--preset--color--muted); }

@media (prefers-reduced-motion: reduce) {
	.rrrfc-ig__track { animation: none; }
	.rrrfc-ig__viewport { overflow-x: auto; }
}

/* ------------------------------------------------- News grid, equal heights */

.wp-block-post-template.is-layout-grid > li { display: flex; }
.wp-block-post-template.is-layout-grid > li > .wp-block-group { display: flex; flex-direction: column; width: 100%; }
.wp-block-post-template .wp-block-post-featured-image { margin: 0; }
.wp-block-post-template .wp-block-post-featured-image img { width: 100%; height: 200px; object-fit: cover; display: block; }
.wp-block-post-template .wp-block-post-title { overflow-wrap: anywhere; }

@media (max-width: 900px) {
	.rrrfc-ticker__label { padding: 0 14px; font-size: 13px; }
	.rrrfc-ticker__item { padding: 11px 18px; gap: 8px; }
	.rrrfc-ig__tile { width: 172px; }
	.rrrfc-streams > .wp-block-column:hover,
	.rrrfc-streams:hover > .wp-block-column:not(:hover) { transform: none; box-shadow: none; }
	.wp-site-blocks > main.wp-block-group { padding-top: 40px; padding-bottom: 40px; }
}

/* ------------------------------------------------- Fixtures & results page */

.rrrfc-fixtures { display: flex; flex-direction: column; gap: 48px; }
.rrrfc-fixtures__heading { font-size: var(--wp--preset--font-size--xl); margin: 0 0 18px; }
.rrrfc-fixtures__list { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--wp--preset--color--line); }

.rrrfc-fixtures__row {
	display: grid;
	grid-template-columns: 210px minmax(0, 1fr) 90px 110px 90px;
	align-items: center;
	gap: 16px;
	padding: 14px 4px;
	border-bottom: 1px solid var(--wp--preset--color--line);
}

.rrrfc-fixtures__block:last-child .rrrfc-fixtures__row { grid-template-columns: 210px minmax(0, 1fr) 90px 130px; }

.rrrfc-fixtures__date { font-size: 14px; color: var(--wp--preset--color--muted); }
.rrrfc-fixtures__opp { display: flex; align-items: center; gap: 12px; font-family: Oswald, 'Barlow Condensed', 'Arial Narrow', sans-serif; font-size: 19px; font-weight: 600; letter-spacing: 0.03em; text-transform: uppercase; }
.rrrfc-fixtures__opp img { width: 32px; height: 32px; object-fit: contain; flex: none; }
.rrrfc-fixtures__opp .rrrfc-fixture__crest-blank { width: 32px; height: 32px; }
.rrrfc-fixtures__meta { font-size: 13px; letter-spacing: 0.1em; text-transform: uppercase; color: var(--wp--preset--color--muted); }
.rrrfc-fixtures__score { display: inline-flex; align-items: center; gap: 10px; font-family: Oswald, 'Barlow Condensed', 'Arial Narrow', sans-serif; font-size: 22px; font-weight: 700; }
.rrrfc-fixtures__empty { color: var(--wp--preset--color--muted); }

@media (max-width: 782px) {
	.rrrfc-fixtures__row,
	.rrrfc-fixtures__block:last-child .rrrfc-fixtures__row {
		grid-template-columns: 1fr auto;
		gap: 4px 12px;
		padding: 14px 4px;
	}
	.rrrfc-fixtures__date { grid-column: 1 / -1; font-size: 12px; letter-spacing: 0.1em; text-transform: uppercase; }
	.rrrfc-fixtures__opp { grid-column: 1; font-size: 17px; }
	.rrrfc-fixtures__score { grid-column: 2; grid-row: 2; }
	.rrrfc-fixtures__meta { grid-column: 1 / -1; }
}

/* ----------------------------------------- Site title stays put on hover
   It still links home; it just should not restyle itself when hovered,
   clicked or previously visited. The keyboard focus ring is deliberately
   kept — removing that would make the header untraversable without a mouse. */

.rrrfc-header .wp-block-site-title a,
.rrrfc-header .wp-block-site-title a:hover,
.rrrfc-header .wp-block-site-title a:focus,
.rrrfc-header .wp-block-site-title a:active,
.rrrfc-header .wp-block-site-title a:visited,
.rrrfc-header .wp-block-site-logo a,
.rrrfc-header .wp-block-site-logo a:hover,
.rrrfc-header .wp-block-site-logo a:focus,
.rrrfc-header .wp-block-site-logo a:active {
	color: var(--wp--preset--color--paper);
	text-decoration: none;
	opacity: 1;
	filter: none;
	background: none;
}

.rrrfc-header .wp-block-site-title a:focus-visible,
.rrrfc-header .wp-block-site-logo a:focus-visible {
	outline: 2px solid var(--wp--preset--color--gold);
	outline-offset: 3px;
}

/* The shop button keeps the club primary colour in both modes. */
.rrrfc-shopbtn .wp-block-button__link {
	background-color: var(--wp--preset--color--primary);
	color: #fff;
	border-radius: var(--rr-radius);
	font-family: Oswald, 'Barlow Condensed', 'Arial Narrow', sans-serif;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	padding: 12px 22px;
}

.rrrfc-shopbtn .wp-block-button__link:hover { background-color: var(--wp--preset--color--primary-deep); color: #fff; }

/* ==========================================================================
   Navigation: side drawer instead of a squashed menu bar

   Core only swaps to its overlay below 600px, which left the menu cramping
   itself between roughly 600 and 1100px. The breakpoint is moved up, and the
   overlay is restyled from a full-screen sheet into a right-hand drawer.
   ========================================================================== */

/* Collapsed state.

   The class is set by the header measuring its own contents, so the menu stays
   inline for exactly as long as it genuinely fits — no width is hard-coded,
   and changing the club name or the menu items adjusts it automatically.
   The media query at the end is the no-JavaScript fallback only. */

.rrrfc-header.rrrfc-nav-collapsed .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
	display: none !important;
}

.rrrfc-header.rrrfc-nav-collapsed .wp-block-navigation__responsive-container-open:not(.always-shown) {
	display: flex !important;
}

.wp-block-navigation__responsive-container.is-menu-open { display: flex !important; }

/* Collapsed, the menu button, shop button and light/dark switch travel together
   as one right-aligned, vertically centred group; only the crest and club name
   stay on the left. */
.rrrfc-header.rrrfc-nav-collapsed > .wp-block-group:last-child {
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-start;
	column-gap: 14px;
}

.rrrfc-header.rrrfc-nav-collapsed .wp-block-navigation { margin-left: auto; flex: none; }
.rrrfc-header.rrrfc-nav-collapsed .rrrfc-shopbtn,
.rrrfc-header.rrrfc-nav-collapsed .rrrfc-themetoggle { flex: none; align-self: center; }
.rrrfc-header.rrrfc-nav-collapsed .wp-block-navigation__responsive-container-open { align-self: center; }

/* Without JavaScript the class is never set, so fall back to a plain width. */
@media (max-width: 1000px) {
	.rrrfc-header .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none !important; }
	.rrrfc-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex !important; }
	.rrrfc-header > .wp-block-group:last-child { flex-wrap: nowrap; align-items: center; justify-content: flex-start; column-gap: 14px; }
	.rrrfc-header .wp-block-navigation { margin-left: auto; flex: none; }
}

/* The Club Shop entry is a menu item so it can sit at the foot of the drawer;
   on wide screens the real button already covers it. */
.rrrfc-navshop { display: none !important; }
.wp-block-navigation__responsive-container.is-menu-open .rrrfc-navshop { display: flex !important; margin-top: auto; }

/* Core forces a white overlay with
   `.wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container
    .is-menu-open:not(.disable-default-overlay)` — FIVE classes, (0,5,0). Matching
   the selector exactly is brittle if core ever changes it, so this is marked
   important: the drawer must follow the colour mode, full stop. */
.wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open:not(.disable-default-overlay),
.wp-block-navigation.has-background .wp-block-navigation__responsive-container.is-menu-open,
.wp-block-navigation__responsive-container.is-menu-open {
	background-color: var(--wp--preset--color--surface) !important;
	color: var(--wp--preset--color--paper);
}

.wp-block-navigation__responsive-container.is-menu-open {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: auto;
	/* content-box is the default here, and core's overlay padding (56px a side,
	   from the root padding) outranks a plain two-class rule — together those
	   made a "360px" drawer measure 473px. Both are pinned explicitly. */
	box-sizing: border-box;
	width: min(360px, 88vw);
	max-width: none;
	padding: 22px 24px 28px !important;
	background-color: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--paper);
	border-left: 1px solid var(--wp--preset--color--line);
	/* Dims the rest of the page without needing a separate backdrop element. */
	box-shadow: 0 0 0 100vmax rgba(6, 8, 12, 0.55);
	overflow-y: auto;
	overscroll-behavior: contain;
	animation: rrrfc-drawer 0.26s cubic-bezier(0.22, 0.72, 0.28, 1);
}

@keyframes rrrfc-drawer { from { transform: translateX(100%); } to { transform: none; } }
@media (prefers-reduced-motion: reduce) { .wp-block-navigation__responsive-container.is-menu-open { animation: none; } }

.wp-block-navigation__responsive-container.is-menu-open *,
.wp-block-navigation__responsive-container.is-menu-open { box-sizing: border-box; }

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	width: 100%;
	flex: 1 1 auto;
	padding-top: 8px;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 0;
	width: 100%;
	flex: 1 1 auto;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	display: block;
	width: 100%;
	border-bottom: 1px solid var(--wp--preset--color--line);
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	display: flex;
	align-items: center;
	min-height: 52px;
	width: 100%;
	font-size: 19px;
	letter-spacing: 0.06em;
}

/* Submenus read as an indented continuation rather than a floating panel. */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	position: static;
	width: 100%;
	min-width: 0;
	border: 0;
	padding: 0 0 6px 14px;
	box-shadow: none;
	background: transparent;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item { border-bottom: 0; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container .wp-block-navigation-item__content { min-height: 44px; font-size: 16px; color: var(--wp--preset--color--muted); }

/* Club Shop reads as the button it replaces. */
.wp-block-navigation__responsive-container.is-menu-open .rrrfc-navshop { border-bottom: 0; padding-top: 18px; }
.wp-block-navigation__responsive-container.is-menu-open .rrrfc-navshop .wp-block-navigation-item__content {
	justify-content: center;
	background: var(--wp--preset--color--primary);
	color: #fff;
	border-radius: var(--rr-radius);
	font-family: Oswald, 'Barlow Condensed', 'Arial Narrow', sans-serif;
	font-weight: 700;
	text-transform: uppercase;
}

.wp-block-navigation__responsive-container-close { position: absolute; top: 18px; right: 20px; }
.wp-block-navigation__responsive-container-open svg,
.wp-block-navigation__responsive-container-close svg { width: 26px; height: 26px; }

/* On narrow screens the shop button is in the drawer, so the header keeps just
   the crest, the menu button and the light/dark switch. */
@media (max-width: 600px) {
	.rrrfc-shopbtn { display: none; }
}

/* Expanded state: one row, nothing broken mid-word, nothing scaled down. */
.rrrfc-header:not(.rrrfc-nav-collapsed) > .wp-block-group:last-child { flex-wrap: nowrap; column-gap: 22px; }
.rrrfc-header .wp-block-navigation-item__content,
.rrrfc-header .rrrfc-shopbtn .wp-block-button__link,
.rrrfc-header .wp-block-site-title { white-space: nowrap; }
.rrrfc-header:not(.rrrfc-nav-collapsed) .wp-block-navigation { flex: 1 1 auto; min-width: 0; justify-content: flex-end; }
.rrrfc-header:not(.rrrfc-nav-collapsed) .wp-block-navigation__container { flex-wrap: nowrap; column-gap: 22px; }
.rrrfc-header .rrrfc-shopbtn,
.rrrfc-header .rrrfc-themetoggle,
.rrrfc-header .wp-block-site-logo,
.rrrfc-header .wp-block-site-title { flex: none; }

/* Two squeeze bands keep the inline menu alive well below the point where the
   default sizing would run it into the club name (~1358px measured). Every
   element in the row gives up a little rather than one giving up a lot. */



/* The header row is space-between, which on narrow screens pushed the crest and
   the club name to opposite ends of the brand block. Pin the brand together. */
.rrrfc-header .wp-block-site-logo + .wp-block-group,
.rrrfc-header > .wp-block-group > .wp-block-group:first-child {
	flex: 0 0 auto;
	justify-content: flex-start;
	column-gap: 13px;
}

.rrrfc-header > .wp-block-group > .wp-block-group:first-child > * { flex: 0 0 auto; }


/* Clearance so a hovered card expands into space rather than over the section
   heading. 30% of a ~360px card is ~54px each way; 60px covers it. */
@media (min-width: 1181px) {
	.rrrfc-streams { margin-top: 60px; margin-bottom: 60px; }
}

@media (min-width: 901px) and (max-width: 1180px) {
	.rrrfc-streams { margin-top: 28px; margin-bottom: 28px; }
}

/* The cards and the menu dropdowns must never let the page show through. */
.rrrfc-streams > .wp-block-column,
.wp-block-navigation .wp-block-navigation__submenu-container {
	background-color: var(--wp--preset--color--surface);
	background-image: none;
}

.rrrfc-streams > .wp-block-column:hover,
.rrrfc-streams > .wp-block-column:focus-within { background-color: var(--wp--preset--color--surface); }

/* ----------------------------------------------------------- Footer links
   The footer ground is club dark blue in BOTH colour modes, so the global
   burgundy link colour was near-unreadable on it. Links go light, with gold
   on hover to match the rest of the site's accent behaviour. */

.wp-block-template-part footer a,
footer.wp-block-group a {
	color: #C7D2E0;
	text-decoration: none;
}

.wp-block-template-part footer a:hover,
.wp-block-template-part footer a:focus-visible,
footer.wp-block-group a:hover,
footer.wp-block-group a:focus-visible {
	color: var(--wp--preset--color--gold);
	text-decoration: underline;
}

/* The club name in the footer stays white and unstyled. */
.wp-block-template-part footer .wp-block-site-title a,
footer.wp-block-group .wp-block-site-title a {
	color: #ffffff;
	text-decoration: none;
}

footer.wp-block-group .rrrfc-socials a { color: #C7D2E0; }
footer.wp-block-group .rrrfc-socials a:hover { color: var(--wp--preset--color--gold); }
