/*
Theme Name: Real Gameplay Journal
Theme URI: https://realgameplay.uk/
Description: Real Gameplay Journal, the Astra child theme for realgameplay.uk: humanist sans type, plum ink on warm white paper, a teal accent, soft 12px radii, one shared content measure and full-width tier styling for the ranking board. v1.2 adds header dropdown categories, a high-visibility board CTA and a utility footer without the Astra credit. v1.2.2 adds cache-safe asset versioning and the footer utility nav in the hooked fallback too.
Author: Real Gameplay
Author URI: https://realgameplay.uk/
Template: astra
Version: 1.2.2
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: rgam
Tags: blog, one-column, custom-colors, custom-menu, accessibility-ready
*/

/*
Design tokens. Plum ink on warm white paper, teal accent with a darker
teal for hover and a second series, lilac line and chip grounds, a 12px
radius everywhere, humanist sans stack for text and headings alike.
*/
:root {
	--rg-paper: #faf7f2;
	--rg-ink: #4a2b4f;
	--rg-accent: #0f8f8b;
	--rg-accent-ink: #0b6b68;
	--rg-line: #e4dcea;
	--rg-chip-bg: #f0e9f2;
	--rg-radius: 12px;
	--rg-measure: 72rem;
	--rg-font: "Segoe UI", "Trebuchet MS", Verdana, "DejaVu Sans", sans-serif;
}

/* Base typography and colour. */
html {
	box-sizing: border-box;
}

*,
*::before,
*::after {
	box-sizing: inherit;
}

body {
	background-color: var(--rg-paper);
	color: var(--rg-ink);
	font-family: var(--rg-font);
	font-size: 17px;
	line-height: 1.65;
	margin: 0;
}

h1, h2, h3, h4, h5, h6 {
	color: var(--rg-ink);
	font-family: var(--rg-font);
	line-height: 1.25;
	margin: 0 0 0.6em;
}

h1 { font-size: 2.15rem; }
h2 { font-size: 1.5rem; }
h3 { font-size: 1.15rem; }

p { margin: 0 0 1em; }

ul, ol { margin: 0 0 1em; padding-left: 1.4em; }

img, svg { max-width: 100%; }

a {
	color: var(--rg-accent);
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}

a:hover,
a:focus-visible {
	color: var(--rg-accent-ink);
}

/* Hover transitions only; the site runs no other animation. */
a,
button,
.rgb-tier-cta {
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

/*
One width rule. Every block in the flow spans the same --rg-measure:
prose, tables, figures, the board stack, the contents bar, the asides.
Insets are legal only inside objects with their own edge: cells, figure
frames, chips, tier rows, panels, the contents bar and the boxed asides.
*/
.rg-crumb, .rg-hero, .rg-board-slot, .rg-toc, .rg-body, .rg-sec,
.rg-dtablewrap, .rg-tablewrap, .rg-fig, .rg-faq, .rg-licence, .rg-care,
.rg-onward, .rg-calc, .rg-disclaimer {
	box-sizing: border-box;
	width: 100%;
	max-width: var(--rg-measure);
	margin-left: auto;
	margin-right: auto;
}

.site .entry-content > * {
	width: 100%;
	max-width: var(--rg-measure);
	margin-left: auto;
	margin-right: auto;
}

/* Site header and brand block. */
.rg-header {
	background-color: var(--rg-paper);
	border-bottom: 1px solid var(--rg-line);
}

.rg-header-inner {
	margin: 0 auto;
	max-width: calc(var(--rg-measure) + 40px);
	padding: 14px 20px 0;
}

.rg-brand { padding-bottom: 8px; }

.rg-brand-link {
	color: var(--rg-ink);
	display: inline-block;
	text-decoration: none;
}

.rg-brand-name {
	display: block;
	font-size: 1.65rem;
	font-weight: 700;
	letter-spacing: 0.01em;
}

.rg-brand-tagline {
	color: var(--rg-accent-ink);
	display: block;
	font-size: 0.92rem;
	margin-top: 2px;
}

/* Primary navigation. */
.rg-nav-toggle { display: none; }

.rg-nav-list {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 16px;
	list-style: none;
	margin: 0;
	padding: 6px 0 16px;
}

.rg-nav-item {
	margin: 0;
	position: relative;
}

.rg-nav-link {
	border-radius: var(--rg-radius);
	color: var(--rg-ink);
	display: inline-block;
	font-weight: 600;
	padding: 8px 12px;
	text-decoration: none;
}

.rg-nav-link:hover,
.rg-nav-link:focus-visible {
	background-color: var(--rg-chip-bg);
	color: var(--rg-accent-ink);
}

/*
Dropdown panels for category children. Elevation comes from box-shadow
only. A z-index -1 pseudo-element is never used: a positioned element that
carries a z-index becomes the root of its own stacking context, and the
pseudo-element then paints above the panel background it was meant to
sit behind. A positioned panel with no z-index paints above flow content
in the same context, which is all a menu needs.
*/
.rg-nav-panel {
	background-color: #ffffff;
	border: 1px solid var(--rg-line);
	border-radius: var(--rg-radius);
	box-shadow: 0 16px 32px rgba(74, 43, 79, 0.16);
	display: none;
	left: 0;
	list-style: none;
	margin: 6px 0 0;
	min-width: 280px;
	max-height: 70vh;
	overflow-y: auto;
	padding: 10px;
	position: absolute;
	top: 100%;
	z-index: 90;
}

.rg-nav-haspanel:hover > .rg-nav-panel,
.rg-nav-haspanel:focus-within > .rg-nav-panel,
.rg-nav-panel.rg-nav-open {
	display: block;
}

.rg-nav-panel-item { margin: 0; }

.rg-nav-panel-link {
	border-radius: var(--rg-radius);
	color: var(--rg-ink);
	display: block;
	padding: 8px 10px;
	text-decoration: none;
}

.rg-nav-panel-link:hover,
.rg-nav-panel-link:focus-visible {
	background-color: var(--rg-chip-bg);
	color: var(--rg-accent-ink);
}

.rg-nav-panel-toggle {
	align-items: center;
	background-color: var(--rg-chip-bg);
	border: 1px solid var(--rg-line);
	border-radius: 50%;
	color: var(--rg-ink);
	cursor: pointer;
	display: inline-flex;
	height: 24px;
	justify-content: center;
	margin-left: 2px;
	padding: 0;
	vertical-align: middle;
	width: 24px;
}

.rg-nav-panel-toggle::after {
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	border-top: 5px solid currentColor;
	content: "";
	display: block;
}

/* Mobile navigation: toggle visible under 900px, list collapsed. */
@media (max-width: 899px) {
	.rg-nav-toggle {
		align-items: center;
		background-color: var(--rg-chip-bg);
		border: 1px solid var(--rg-line);
		border-radius: var(--rg-radius);
		color: var(--rg-ink);
		cursor: pointer;
		display: inline-flex;
		font: inherit;
		font-weight: 600;
		gap: 10px;
		margin: 4px 0 12px;
		padding: 10px 16px;
	}

	.rg-nav-toggle-bars {
		display: inline-flex;
		flex-direction: column;
		gap: 4px;
	}

	.rg-nav-toggle-bar {
		background-color: var(--rg-ink);
		border-radius: 2px;
		display: block;
		height: 2px;
		width: 18px;
	}

	.rg-nav { display: none; }

	.rg-nav.rg-nav-open,
	.rg-nav-toggle:focus-visible + .rg-nav { display: block; }

	.rg-nav-list {
		flex-direction: column;
		gap: 2px;
		padding: 0 0 14px;
	}

	.rg-nav-item { width: 100%; }

	/* Touch screens open panels with the toggle button, not hover. */
	.rg-nav-haspanel:hover > .rg-nav-panel,
	.rg-nav-haspanel:focus-within > .rg-nav-panel { display: none; }

	.rg-nav-panel {
		border: 0;
		border-left: 3px solid var(--rg-line);
		border-radius: 0;
		box-shadow: none;
		margin: 0 0 8px 16px;
		min-width: 0;
		padding: 4px 0 4px 10px;
		position: static;
	}
}

/* Page hero. */
.rg-hero { padding: 10px 0 6px; }

.rg-kicker {
	background-color: var(--rg-chip-bg);
	border-radius: var(--rg-radius);
	color: var(--rg-accent-ink);
	display: inline-block;
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	margin: 0 0 14px;
	padding: 4px 12px;
	text-transform: uppercase;
}

.rg-hero h1 { margin: 0 0 12px; }

.rg-stand {
	font-size: 1.12rem;
	line-height: 1.6;
	margin: 0 0 16px;
}

/* Board slot and the tier strips printed by the board plugin. */
.rg-board-slot { margin: 8px auto 34px; }

.rg-board-leadin { margin: 0 0 14px; }

.rgb-board {
	display: flex;
	flex-direction: column;
	gap: 14px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.rgb-board-head,
.rgb-board-note {
	color: var(--rg-ink);
	margin: 0;
}

.rgb-tier {
	align-items: center;
	background-color: #ffffff;
	border: 1px solid var(--rg-line);
	border-radius: var(--rg-radius);
	box-shadow: 0 10px 22px rgba(74, 43, 79, 0.08);
	column-gap: 20px;
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 18px 22px;
	row-gap: 8px;
}

.rgb-tier-rank {
	color: var(--rg-accent);
	flex: 0 0 auto;
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 1;
	min-width: 64px;
	text-align: center;
}

.rgb-tier-brand {
	flex: 1 1 240px;
	font-size: 1.18rem;
	font-weight: 700;
	margin: 0;
}

.rgb-tier-score {
	background-color: var(--rg-chip-bg);
	border-radius: var(--rg-radius);
	color: var(--rg-accent-ink);
	display: inline-block;
	flex: 0 0 auto;
	font-size: 0.85rem;
	font-weight: 700;
	padding: 3px 12px;
}

.rgb-tier-offer {
	flex: 1 1 100%;
	margin: 0;
}

.rgb-tier-chips {
	display: flex;
	flex: 1 1 100%;
	flex-wrap: wrap;
	gap: 8px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.rgb-chip {
	background-color: var(--rg-chip-bg);
	border-radius: var(--rg-radius);
	color: var(--rg-ink);
	display: inline-block;
	font-size: 0.82rem;
	padding: 3px 12px;
}

.rgb-tier-cta {
	flex: 0 0 auto;
	margin-left: auto;
	max-width: 300px;
	min-width: 220px;
	text-align: center;
}

.rgb-tier-licence {
	color: var(--rg-ink);
	font-size: 0.8rem;
	margin: 0 0 8px;
}

.rgb-tier-cta-link {
	background-color: var(--rg-accent);
	border-radius: var(--rg-radius);
	box-shadow: 0 6px 14px rgba(15, 143, 139, 0.32);
	color: #ffffff;
	display: inline-block;
	font-size: 1.05rem;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1.2;
	padding: 14px 30px;
	text-align: center;
	text-decoration: none;
}

.rgb-tier-cta-link:hover,
.rgb-tier-cta-link:focus-visible {
	background-color: var(--rg-accent-ink);
	box-shadow: 0 10px 20px rgba(11, 107, 104, 0.4);
	color: #ffffff;
	transform: translateY(-1px);
}

.rgb-tier-cta-link:active {
	box-shadow: 0 4px 10px rgba(11, 107, 104, 0.35);
	transform: translateY(0);
}

@media (max-width: 640px) {
	.rgb-tier { padding: 16px; }

	.rgb-tier-rank {
		font-size: 2.1rem;
		min-width: 48px;
	}

	.rgb-tier-cta {
		margin-left: 0;
		max-width: 100%;
		width: 100%;
	}

	.rgb-tier-cta-link { width: 100%; }
}

/* Contents bar. */
.rg-toc {
	background-color: var(--rg-chip-bg);
	border: 1px solid var(--rg-line);
	border-radius: var(--rg-radius);
	margin-bottom: 30px;
	padding: 14px 18px;
}

.rg-toc ul {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 16px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.rg-toc li { margin: 0; }

.rg-toc a {
	color: var(--rg-accent-ink);
	font-weight: 600;
	text-decoration: none;
}

.rg-toc a:hover,
.rg-toc a:focus-visible { text-decoration: underline; }

/* Body sections. */
.rg-body { margin-bottom: 34px; }

.rg-sec { margin-bottom: 34px; }

.rg-sec > h2,
.rg-faq > h2 {
	border-bottom: 1px solid var(--rg-line);
	padding-bottom: 8px;
}

.rg-sec h3 { margin-top: 1.4em; }

/* Data tables and the comparison table sit in scroll wrappers. */
.rg-dtablewrap,
.rg-tablewrap {
	background-color: #ffffff;
	border: 1px solid var(--rg-line);
	border-radius: var(--rg-radius);
	margin-bottom: 28px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

@media (max-width: 720px) {
	.rg-dtablewrap,
	.rg-tablewrap {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
	}
}

.rg-dtable,
.rg-table {
	border-collapse: collapse;
	margin: 0;
	width: 100%;
}

.rg-dtable caption,
.rg-table caption {
	font-weight: 700;
	padding: 12px 14px 6px;
	text-align: left;
}

.rg-dtable th,
.rg-dtable td,
.rg-table th,
.rg-table td {
	border: 0;
	border-bottom: 1px solid var(--rg-line);
	font-size: 0.95rem;
	padding: 10px 14px;
	text-align: left;
	vertical-align: top;
}

.rg-dtable thead th,
.rg-table thead th {
	background-color: var(--rg-chip-bg);
	color: var(--rg-ink);
	font-weight: 700;
}

.rg-dtable tbody tr:nth-child(even),
.rg-table tbody tr:nth-child(even) {
	background-color: var(--rg-paper);
}

.rg-tblnote {
	font-size: 0.88rem;
	margin: 10px 0 0;
}

/* Figure frame. */
.rg-fig {
	background-color: #ffffff;
	border: 1px solid var(--rg-line);
	border-radius: var(--rg-radius);
	margin-bottom: 28px;
	padding: 16px;
}

.rg-fig svg {
	display: block;
	height: auto;
	width: 100%;
}

.rg-fig figcaption {
	color: var(--rg-ink);
	font-size: 0.88rem;
	margin: 10px 0 0;
}

/* FAQ block. */
.rg-faq { margin-bottom: 34px; }

.rg-faq-list { list-style: none; margin: 0; padding: 0; }

.rg-faq-list li { margin: 0 0 6px; }

.rg-faq .rg-q,
.rg-faq h3 {
	font-size: 1.05rem;
	margin: 18px 0 6px;
}

.rg-faq .rg-a,
.rg-faq .rg-faq-a {
	border-left: 3px solid var(--rg-line);
	margin: 0 0 16px;
	padding-left: 14px;
}

/* Licence note and safer gambling asides. */
.rg-licence {
	background-color: var(--rg-chip-bg);
	border: 1px solid var(--rg-line);
	border-radius: var(--rg-radius);
	margin-bottom: 26px;
	padding: 16px 20px;
}

.rg-care {
	background-color: #ffffff;
	border: 1px solid var(--rg-line);
	border-left: 4px solid var(--rg-accent);
	border-radius: var(--rg-radius);
	margin-bottom: 26px;
	padding: 16px 20px;
}

.rg-licence-k,
.rg-care-k {
	color: var(--rg-accent-ink);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	margin: 0 0 8px;
	text-transform: uppercase;
}

.rg-licence p:last-child,
.rg-care p:last-child { margin-bottom: 0; }

/* Onward reading. */
.rg-onward { margin-bottom: 26px; }

.rg-onward-k {
	font-weight: 700;
	margin: 0 0 10px;
}

.rg-onward ul {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 10px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.rg-onward li { margin: 0; }

.rg-onward a {
	background-color: var(--rg-chip-bg);
	border: 1px solid var(--rg-line);
	border-radius: var(--rg-radius);
	color: var(--rg-accent-ink);
	display: inline-block;
	font-weight: 600;
	padding: 7px 14px;
	text-decoration: none;
}

.rg-onward a:hover,
.rg-onward a:focus-visible {
	background-color: var(--rg-accent);
	border-color: var(--rg-accent);
	color: #ffffff;
}

/* Breadcrumb. */
.rg-crumb { font-size: 0.9rem; margin-top: 8px; }

.rg-crumb ol {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 8px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.rg-crumb li { margin: 0; }

.rg-crumb li + li::before {
	color: var(--rg-accent-ink);
	content: "/";
	margin-right: 8px;
}

.rg-crumb a {
	color: var(--rg-accent-ink);
	text-decoration: none;
}

/* Calculator. */
.rg-calc {
	background-color: #ffffff;
	border: 1px solid var(--rg-line);
	border-radius: var(--rg-radius);
	margin-bottom: 28px;
	padding: 18px 20px;
}

.rg-calc label {
	display: block;
	font-weight: 600;
	margin: 0 0 4px;
}

.rg-calc-field { min-width: 0; }

.rg-calc input[type="number"],
.rg-calc input[type="text"],
.rg-calc select {
	background-color: var(--rg-paper);
	border: 1px solid var(--rg-line);
	border-radius: var(--rg-radius);
	color: var(--rg-ink);
	font: inherit;
	max-width: 100%;
	padding: 10px 12px;
	width: 100%;
}

.rg-calc-fields {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	margin: 0 0 14px;
}

.rg-calc button,
.rg-calc-button {
	background-color: var(--rg-accent);
	border: 0;
	border-radius: var(--rg-radius);
	color: #ffffff;
	cursor: pointer;
	font: inherit;
	font-weight: 700;
	padding: 11px 24px;
}

.rg-calc button:hover,
.rg-calc button:focus-visible,
.rg-calc-button:hover,
.rg-calc-button:focus-visible {
	background-color: var(--rg-accent-ink);
}

.rg-calc output,
.rg-calc-result {
	background-color: var(--rg-chip-bg);
	border-radius: var(--rg-radius);
	display: block;
	font-weight: 700;
	margin: 12px 0 0;
	padding: 12px 16px;
}

.rg-calc-note {
	font-size: 0.88rem;
	margin: 10px 0 0;
}

/* Colophon printed last by the pages plugin. */
.rg-disclaimer {
	border-top: 1px solid var(--rg-line);
	font-size: 0.88rem;
	margin-top: 30px;
	padding-top: 14px;
}

.rg-disclaimer p { margin: 0 0 8px; }

/* Site footer: dark plum band, utility navigation, no theme credit. */
.rg-footer {
	background-color: var(--rg-ink);
	color: #f2e9f3;
	margin-top: 44px;
}

.rg-footer-inner {
	margin: 0 auto;
	max-width: calc(var(--rg-measure) + 40px);
	padding: 30px 20px 34px;
}

.rg-footer-nav {
	display: flex;
	flex-wrap: wrap;
	gap: 6px 18px;
	list-style: none;
	margin: 0 0 14px;
	padding: 0;
}

.rg-footer-nav a {
	color: #f2e9f3;
	font-weight: 600;
	text-decoration: none;
}

.rg-footer-nav a:hover,
.rg-footer-nav a:focus-visible {
	color: #8fd8d4;
	text-decoration: underline;
}

.rg-footer-colophon {
	font-size: 0.95rem;
	line-height: 1.6;
	margin: 0 0 10px;
}

.rg-footer-care {
	color: #d8c8db;
	font-size: 0.88rem;
	margin: 0;
}

.rg-footer-copy {
	color: #d8c8db;
	font-size: 0.85rem;
	margin: 14px 0 0;
}

.rg-footer a { color: #8fd8d4; }

/*
Belt and braces: the Astra footer is replaced by rgam_footer_markup, but
if a parent template ever sneaks its credit back in, it stays invisible
without breaking layout.
*/
.site-footer,
.ast-footer-site-credit,
.ast-footer-site-credit-wrap {
	display: none;
}

/* Keep the parent card wrapper quiet so the palette above stays in charge. */
.ast-separate-container .ast-article-single {
	background-color: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

/* Screen reader helper for the nav toggles. */
.rg-header .screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}

/* Print basics: keep the text, drop the chrome and the interactive bits. */
@media print {
	.rg-nav,
	.rg-nav-toggle,
	.rg-calc,
	.rgb-tier-cta,
	.rg-onward { display: none; }

	body {
		background-color: #ffffff;
		color: #000000;
		font-size: 12pt;
	}

	.rg-footer {
		background-color: #ffffff;
		color: #000000;
	}

	.rg-footer-care { color: #444444; }

	a { color: #000000; }

	.rg-dtablewrap, .rg-tablewrap, .rg-fig, .rg-licence, .rg-care, .rgb-tier {
		border-color: #cccccc;
		box-shadow: none;
		break-inside: avoid;
	}
}

/* Reduced motion: only hover transitions exist, so switch those off. */
@media (prefers-reduced-motion: reduce) {
	a,
	button,
	.rg-nav-link,
	.rg-nav-panel-link,
	.rg-onward a,
	.rgb-tier-cta,
	.rgb-tier-cta-link,
	.rg-calc button,
	.rg-calc-button {
		transition: none;
	}

	.rgb-tier-cta-link:hover {
		transform: none;
	}
}

/*
v1.2.2 upgrade block. Sits last so it wins any cascade ties with older
clones of this sheet elsewhere on a network. Contents: the high-contrast
board CTA pill (solid teal, hover lift, full-width on phones), the footer
utility nav, the Astra credit kill-switch, and reduced-motion guards.
*/
.rg-footer-nav{display:flex;flex-wrap:wrap;gap:4px 18px;list-style:none;margin:0 0 14px;padding:0;}
.rg-footer-nav a{color:#8fd8d4;font-weight:600;text-decoration:none;}
.rg-footer-nav a:hover,.rg-footer-nav a:focus-visible{color:#ffffff;text-decoration:underline;}
.rg-home-hero{max-width:var(--rg-measure);margin:0 auto;padding:26px 0 6px;}
.rg-home-hero .rg-kicker{margin-bottom:10px;}
.rg-home-hero p.rg-stand{font-size:1.15rem;max-width:60ch;}
.rg-directory{max-width:var(--rg-measure);margin:0 auto 30px;}
.rg-directory h2{border-bottom:1px solid var(--rg-line);padding-bottom:6px;}
.rg-directory ul{display:grid;gap:8px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));list-style:none;margin:0 0 22px;padding:0;}
.rg-directory li{margin:0;}
.rg-directory a{background-color:#ffffff;border:1px solid var(--rg-line);border-radius:var(--rg-radius);color:var(--rg-ink);display:block;font-weight:600;padding:10px 14px;text-decoration:none;}
.rg-directory a:hover,.rg-directory a:focus-visible{border-color:var(--rg-accent);color:var(--rg-accent-ink);}
.rg-directory .rg-dir-hub a{border-color:var(--rg-accent);color:var(--rg-accent-ink);}
.rgb-tier-cta-link{background-color:var(--rg-accent);border-radius:999px;box-shadow:0 6px 14px rgba(15,143,139,0.28);color:#ffffff;display:inline-block;font-size:1rem;font-weight:700;letter-spacing:0.02em;padding:13px 30px;text-align:center;text-decoration:none;}
.rgb-tier-cta-link:hover,.rgb-tier-cta-link:focus-visible{background-color:var(--rg-accent-ink);box-shadow:0 8px 18px rgba(11,107,104,0.35);color:#ffffff;transform:translateY(-1px);}
.rgb-tier-cta{text-align:right;}
.rgb-tier-licence{color:var(--rg-accent-ink);font-size:0.78rem;font-weight:600;margin:0 0 6px;}
.rgb-tier:hover{border-color:var(--rg-accent);}
.rgb-tier{transition:border-color 0.15s ease,box-shadow 0.15s ease;}
@media (max-width:640px){.rgb-tier-cta{width:100%;text-align:center;}}
.site-footer,.ast-footer-site-credit,.ast-footer-site-credit-wrap{display:none!important;}
@media (prefers-reduced-motion: reduce){.rgb-tier-cta-link:hover{transform:none;}}