/* ========================================================================= */

:root {
	--rkm-maxw: 1200px;
	--rkm-card-border: 1px solid rgba(230, 242, 236, .12);
	--rkm-card-border-strong: 1px solid rgba(230, 242, 236, .22);
	--rkm-hairline: 1px solid rgba(255, 255, 255, .06);
}

/* ---- Base canvas & background glow ------------------------------------ */
body {
	background-color: var(--wp--preset--color--base);
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	/* clip (not hidden) prevents sideways scroll without creating a scroll
	   container that would break the sticky header */
	overflow-x: clip;
}

/* Front-end only: the ambient blue wash (re-shaped in the identity layer). */
.wp-site-blocks {
	position: relative;
}
.wp-site-blocks::before {
	content: "";
	position: fixed;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	background:
		radial-gradient(1200px 600px at 78% -8%, rgba(143, 169, 222, .16), transparent 60%),
		radial-gradient(900px 500px at 12% 4%, rgba(230, 242, 236, .08), transparent 55%);
}
.wp-site-blocks > * {
	position: relative;
	z-index: 1;
}

::selection {
	background: rgba(231, 184, 154, .3);
	color: #fff;
}

img {
	max-width: 100%;
	height: auto;
}

/* ---- Reusable section rhythm ------------------------------------------ */
.rkm-section {
	padding-top: clamp(40px, 6vw, 56px);
	padding-bottom: clamp(16px, 3vw, 24px);
}

/* ---- Eyebrow / labels -------------------------------------------------- */
.rkm-eyebrow {
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 1.4px;
	text-transform: uppercase;
	color: var(--wp--preset--color--coral-lit);
}

/* ---- Live / license badge --------------------------------------------- */
.rkm-badge {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 6px 13px;
	border-radius: var(--rkm-r-md);
	border: 1px solid rgba(231, 184, 154, .28);
	background: rgba(230, 242, 236, .06);
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: .4px;
	color: var(--wp--preset--color--acid);
}
.rkm-badge::before {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--wp--preset--color--sun);
	box-shadow: 0 0 8px var(--wp--preset--color--sun);
}

/* ---- Cards ------------------------------------------------------------- */
.rkm-card,
.rkm-card-raised {
	border-radius: var(--rkm-r-md);
	background: var(--wp--preset--gradient--card);
	border: var(--rkm-card-border);
}
.rkm-card-raised {
	background: var(--wp--preset--gradient--card-raised);
	border: var(--rkm-card-border-strong);
	box-shadow: var(--wp--preset--shadow--card);
}

/* ---- Buttons ----------------------------------------------------------- */
.wp-block-button.rkm-btn-outline .wp-block-button__link,
.wp-block-button__link.rkm-btn-outline {
	background: rgba(255, 255, 255, .02) !important;
	color: var(--wp--preset--color--contrast) !important;
	border: 1px solid rgba(231, 184, 154, .3);
	box-shadow: none;
}
.wp-block-button.rkm-btn-outline .wp-block-button__link:hover {
	border-color: var(--wp--preset--color--acid);
	color: var(--wp--preset--color--acid-lit) !important;
}
/* Copper buttons: explicit gradient (theme.json color.background renders a
   gradient token as a flat colour, so we set the real gradient here). */
.wp-block-button:not(.rkm-btn-outline) > .wp-block-button__link {
	background: var(--wp--preset--gradient--acid) !important;
	color: var(--wp--preset--color--ink) !important;
	border: none;
	box-shadow: var(--wp--preset--shadow--acid);
}
.wp-block-button:not(.rkm-btn-outline) > .wp-block-button__link:hover { filter: brightness(1.05); }
/* keep button labels on one line (fixes "Giri / ş" wrapping in the header) */
.wp-block-button__link { white-space: nowrap; }
/* button sizing by context (kept out of block attrs so markup stays valid) */
.rkm-hero .wp-block-buttons .wp-block-button__link { padding: 15px 30px; font-size: 16px; }
.rkm-header .wp-block-button__link { padding: 10px 16px; font-size: 14px; }
.rkm-flame-text { background: linear-gradient(120deg, #f2cdb4, #8fa9de); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: #b3c6ec; }
.wp-block-separator.rkm-sep { border: none; height: 1px; background: rgba(230, 242, 236, .12); opacity: 1; max-width: none; }

/* ---- Hero -------------------------------------------------------------- */
.rkm-hero {
	padding-top: clamp(36px, 6vw, 64px);
}
.rkm-hero__art img {
	border-radius: var(--rkm-r-md);
	border: 1px solid rgba(230, 242, 236, .18);
	box-shadow: var(--wp--preset--shadow--soft);
	aspect-ratio: 4 / 3;
	object-fit: cover;
	width: 100%;
}
.rkm-stats {
	gap: 26px 32px;
}
.rkm-stat__num {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400;
	font-size: 26px;
	color: var(--wp--preset--color--acid);
	line-height: 1;
}
.rkm-stat__label {
	font-size: 12.5px;
	color: var(--wp--preset--color--dim);
	font-weight: 600;
}

/* ---- Hero trust / payments row ---------------------------------------- */
/* Sits under the stats in the home hero so the (shorter) text column fills
   more of the height next to the tall image + offer card, killing the void
   that appeared when the columns were vertically centred. */
.rkm-trustrow {
	gap: 10px;
	margin-top: 24px;
	align-items: center;
}
.rkm-trust {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 8px 13px;
	border-radius: var(--rkm-r-md);
	background: rgba(255, 255, 255, .03);
	border: 1px solid rgba(230, 242, 236, .14);
	font-size: 12.5px;
	font-weight: 600;
	color: var(--wp--preset--color--muted);
	white-space: nowrap;
}
.rkm-trust b { color: var(--wp--preset--color--contrast); font-weight: 700; }

/* ---- Bonus offer card -------------------------------------------------- */
.rkm-offer {
	position: relative;
	overflow: hidden;
	border-radius: var(--rkm-r-md);
	padding: 34px 30px;
	background: var(--wp--preset--gradient--card-raised);
	border: var(--rkm-card-border-strong);
	box-shadow: var(--wp--preset--shadow--card);
}
.rkm-offer::after {
	content: "";
	position: absolute;
	inset: 0;
	border-radius: var(--rkm-r-md);
	pointer-events: none;
	background: radial-gradient(400px 200px at 80% 0%, rgba(143, 169, 222, .22), transparent 65%);
}
.rkm-offer > * { position: relative; z-index: 1; }
.rkm-offer__amount {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400;
	font-size: 46px;
	line-height: 1;
	color: var(--wp--preset--color--heading);
}
.rkm-offer__row {
	display: flex;
	justify-content: space-between;
	gap: 12px;
	font-size: 14px;
	padding: 9px 0;
	border-bottom: var(--rkm-hairline);
}
.rkm-offer__row span:first-child { color: var(--wp--preset--color--muted); }
.rkm-offer__row span:last-child  { color: var(--wp--preset--color--contrast); font-weight: 700; }

/* Floating animation (respect reduced motion) */
@keyframes rkm-float { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }
.rkm-float { animation: rkm-float 6s ease-in-out infinite; }
@media (prefers-reduced-motion: reduce) { .rkm-float { animation: none; } }

/* ---- Quick links ------------------------------------------------------- */
.rkm-quicklink {
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 22px 18px;
	border-radius: var(--rkm-r-md);
	background: var(--wp--preset--gradient--card);
	border: var(--rkm-card-border);
	transition: transform .18s ease, border-color .18s ease;
}
.rkm-quicklink:hover { transform: translateY(-3px); border-color: rgba(231, 184, 154, .35); }
.rkm-quicklink__icon { font-size: 26px; }
.rkm-quicklink__title { font-size: 15.5px; font-weight: 700; color: var(--wp--preset--color--contrast); }
.rkm-quicklink__sub { font-size: 12.5px; color: var(--wp--preset--color--dim); }

/* ---- Game cards -------------------------------------------------------- */
.rkm-game {
	border-radius: var(--rkm-r-md);
	overflow: hidden;
	background: var(--wp--preset--color--surface);
	border: 1px solid rgba(230, 242, 236, .1);
	transition: transform .18s ease, border-color .18s ease;
}
.rkm-game:hover { transform: translateY(-4px); border-color: rgba(231, 184, 154, .3); }
.rkm-game__media {
	position: relative;
	aspect-ratio: 3 / 4;
	overflow: hidden;
}
.rkm-game__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.rkm-game__body { padding: 12px 13px; }
.rkm-game__title {
	font-size: 14px; font-weight: 700; color: var(--wp--preset--color--contrast);
	/* Wrap to two lines instead of ellipsing: at 360px the grid tracks are ~150px
	   and titles like "Mini Roulette" were being truncated with no way to read them. */
	line-height: 1.25;
	display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
	overflow: hidden;
}
.rkm-game__meta { display: flex; justify-content: space-between; align-items: center; margin-top: 8px; }
.rkm-game__provider { font-size: 11.5px; color: var(--wp--preset--color--dim); }
.rkm-game__play {
	/* Tap target: the 5px/12px pill rendered ~22px tall — under the 44px minimum.
	   Sized here rather than per-card so every game grid inherits the fix. */
	font-size: 12.5px; font-weight: 700; color: var(--wp--preset--color--ink);
	background: var(--wp--preset--gradient--acid); padding: 10px 16px; border-radius: var(--rkm-r-md);
	display: inline-flex; align-items: center; justify-content: center;
	min-height: 44px; text-decoration: none;
	/* Owns its own top gap so the game cards don't each repeat an inline style
	   (18 identical style="" attributes were a network footprint tell). */
	margin-top: 10px;
}
.rkm-tag {
	position: absolute; top: 9px; left: 9px; z-index: 2;
	padding: 3px 9px; border-radius: var(--rkm-r-md); font-size: 10px; font-weight: 700; letter-spacing: .5px;
}
/* Crash-red labels carry white ink, so the background has to be the DEEP red:
   #FFFFFF on #f2848c is 3.03:1 (fails AA at 10px) while #FFFFFF on #182a4d is
   6.5:1. --wp--preset--color--risk stays reserved for red TEXT on graphite. */
:root { --rkm-alarm-deep: #182a4d; }
.rkm-tag--hot { background: var(--rkm-alarm-deep); color: #FFFFFF; }
.rkm-tag--jackpot { background: var(--wp--preset--gradient--acid); color: var(--wp--preset--color--ink); }

/* ---- Filter chips ------------------------------------------------------ */
.rkm-chips .wp-block-button__link {
	padding: 9px 16px; border-radius: var(--rkm-r-md); font-size: 13.5px; font-weight: 700;
	background: transparent !important; color: var(--wp--preset--color--muted) !important;
	border: 1px solid rgba(230, 242, 236, .14); box-shadow: none;
}
.rkm-chips .wp-block-button.is-active .wp-block-button__link,
.rkm-chips .wp-block-button:first-child .wp-block-button__link {
	background: rgba(230, 242, 236, .12) !important; color: var(--wp--preset--color--acid) !important;
	border-color: rgba(231, 184, 154, .4);
}

/* ---- Feature cards ----------------------------------------------------- */
.rkm-feature { padding: 26px 24px; border-radius: var(--rkm-r-md); background: var(--wp--preset--gradient--card); border: var(--rkm-card-border); }
.rkm-feature__icon {
	width: 48px; height: 48px; border-radius: var(--rkm-r-md); background: rgba(230, 242, 236, .1);
	display: flex; align-items: center; justify-content: center; font-size: 24px; margin-bottom: 16px;
}
.rkm-feature__title { font-size: 17px; font-weight: 700; color: var(--wp--preset--color--contrast); margin-bottom: 7px; }
.rkm-feature__text { font-size: 14px; line-height: 1.55; color: var(--wp--preset--color--muted); }

/* ---- App download ------------------------------------------------------ */
.rkm-app {
	position: relative; overflow: hidden;
	border-radius: var(--rkm-r-md); padding: clamp(28px, 4vw, 44px);
	background: var(--wp--preset--gradient--card-raised);
	border: 1px solid rgba(230, 242, 236, .16);
}
.rkm-app::after {
	content: ""; position: absolute; inset: 0; pointer-events: none;
	background: radial-gradient(500px 300px at 90% 50%, rgba(143, 169, 222, .16), transparent 60%);
}
.rkm-app > * { position: relative; z-index: 1; }
.rkm-app__art img { border-radius: var(--rkm-r-md); border: 1px solid rgba(230, 242, 236, .16); width: 100%; }
.rkm-store {
	display: inline-flex; align-items: center; gap: 10px; padding: 13px 22px; border-radius: var(--rkm-r-md);
	background: rgba(255, 255, 255, .05); border: 1px solid rgba(231, 184, 154, .25);
	font-weight: 700; color: var(--wp--preset--color--contrast);
}
.rkm-store:hover { border-color: var(--wp--preset--color--acid); color: var(--wp--preset--color--acid-lit); }

/* ---- Payments ---------------------------------------------------------- */
.rkm-pay {
	height: 64px; border-radius: var(--rkm-r-md); background: var(--wp--preset--color--surface);
	border: 1px solid rgba(230, 242, 236, .1); display: flex; align-items: center; justify-content: center;
	font-weight: 700; font-size: 14px; color: #f2cdb4;
}

/* ---- Steps ------------------------------------------------------------- */
.rkm-step { padding: 28px 24px; border-radius: var(--rkm-r-md); background: var(--wp--preset--gradient--card); border: var(--rkm-card-border); }
.rkm-step__num { font-family: var(--wp--preset--font-family--heading); font-weight: 400; font-size: 40px; color: rgba(231, 184, 154, .35); line-height: 1; margin-bottom: 14px; }
.rkm-step__title { font-size: 18px; font-weight: 700; color: var(--wp--preset--color--contrast); margin-bottom: 7px; }
.rkm-step__text { font-size: 14px; line-height: 1.55; color: var(--wp--preset--color--muted); }

/* ---- Reviews & comparison --------------------------------------------- */
.rkm-review { padding: 20px 22px; border-radius: var(--rkm-r-md); background: var(--wp--preset--gradient--card); border: var(--rkm-card-border); }
.rkm-avatar {
	width: 34px; height: 34px; border-radius: 50%; flex: 0 0 auto;
	/* `rose`, not `coral`: the coral gradient runs light->dark and a monogram on it is
	   illegible at one end whichever ink you choose. rose is light at every stop. */
	background: var(--wp--preset--gradient--acid);
	display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 14px; color: var(--wp--preset--color--ink);
}
.rkm-stars { color: var(--wp--preset--color--acid); font-size: 13px; letter-spacing: 1px; }
.rkm-rating-pill {
	padding: 6px 12px; border-radius: var(--rkm-r-md); background: rgba(143, 169, 222, .12);
	color: var(--wp--preset--color--sun-soft); font-size: 13px; font-weight: 700;
}
/* top clears the sticky header (topbar 34 + bar 74 + 12 breathing room). */
.rkm-compare { padding: 28px 26px; border-radius: var(--rkm-r-md); background: var(--wp--preset--gradient--card-raised); border: var(--rkm-card-border-strong); position: sticky; top: 124px; }
.rkm-compare__row { display: flex; justify-content: space-between; gap: 12px; font-size: 13.5px; padding: 8px 0; border-bottom: var(--rkm-hairline); }
.rkm-compare__row span:first-child { color: var(--wp--preset--color--muted); }
.rkm-compare__row span:last-child { color: var(--wp--preset--color--sun-soft); font-weight: 700; }

/* ---- Blog cards -------------------------------------------------------- */
.rkm-post { border-radius: var(--rkm-r-md); overflow: hidden; background: var(--wp--preset--color--surface); border: var(--rkm-card-border); display: block; transition: transform .18s ease, border-color .18s ease; }
.rkm-post:hover { transform: translateY(-4px); border-color: rgba(231, 184, 154, .3); }
.rkm-post__cover { aspect-ratio: 16 / 9; overflow: hidden; }
.rkm-post__cover img { width: 100%; height: 100%; object-fit: cover; }
.rkm-post__body { padding: 18px 20px; }
.rkm-post__cat { font-size: 12px; font-weight: 700; color: var(--wp--preset--color--coral-lit); }
.rkm-post__title { font-size: 16px; font-weight: 700; color: var(--wp--preset--color--contrast); line-height: 1.35; margin: 8px 0 6px; }
.rkm-post__date { font-size: 12.5px; color: var(--wp--preset--color--dim); }

/* ---- FAQ (native <details>) ------------------------------------------- */
.rkm-faq { border-radius: var(--rkm-r-md); background: var(--wp--preset--gradient--card); border: 1px solid rgba(230, 242, 236, .12); overflow: hidden; }
.rkm-faq + .rkm-faq { margin-top: 12px; }
.rkm-faq > summary {
	list-style: none; cursor: pointer; padding: 20px 22px;
	display: flex; justify-content: space-between; align-items: center; gap: 16px;
	font-size: 16px; font-weight: 700; color: var(--wp--preset--color--contrast);
}
.rkm-faq > summary::-webkit-details-marker { display: none; }
.rkm-faq > summary::after {
	content: "+"; flex: 0 0 auto; width: 26px; height: 26px; border-radius: var(--rkm-r-md);
	background: rgba(230, 242, 236, .12); color: var(--wp--preset--color--acid);
	display: flex; align-items: center; justify-content: center; font-size: 18px; transition: transform .2s ease;
}
.rkm-faq[open] > summary::after { transform: rotate(45deg); }
.rkm-faq__answer { margin: 0; padding: 0 22px 20px; font-size: 15.5px; line-height: 1.65; color: var(--wp--preset--color--body); max-width: 62ch; }

/* ---- Responsible gaming banner ---------------------------------------- */
.rkm-18 {
	display: flex; align-items: center; gap: 16px; padding: 18px 24px; border-radius: var(--rkm-r-md);
	background: rgba(143, 169, 222, .06); border: 1px solid rgba(143, 169, 222, .2);
}
.rkm-18__badge {
	width: 44px; height: 44px; flex: 0 0 auto; border-radius: var(--rkm-r-md); background: rgba(143, 169, 222, .15);
	display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 15px; color: var(--wp--preset--color--coral-lit);
}
.rkm-18__text { margin: 0; font-size: 13.5px; line-height: 1.55; color: var(--wp--preset--color--muted); }

/* =========================================================================
   INTERIOR PAGES — shared helpers
   ========================================================================= */
.rkm-breadcrumb { font-size: 12.5px; color: var(--wp--preset--color--dim); }
.rkm-breadcrumb a { color: var(--wp--preset--color--muted); }
.rkm-lead { font-size: 18px; line-height: 1.6; color: var(--wp--preset--color--body); max-width: 660px; }

/* Interior page hero (breadcrumb + eyebrow + H1 + lead + CTA) */
.rkm-hero:has(.rkm-breadcrumb) {
	position: relative;
	overflow: clip;
	text-align: center;
	padding-top: clamp(48px, 6vw, 76px);
	padding-bottom: clamp(28px, 4vw, 44px);
}
.rkm-hero:has(.rkm-breadcrumb)::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 0;
	pointer-events: none;
	background:
		radial-gradient(680px 320px at 50% 8%, rgba(143, 169, 222, .16), transparent 62%),
		radial-gradient(420px 220px at 50% 4%, rgba(230, 242, 236, .07), transparent 60%);
}
.rkm-hero:has(.rkm-breadcrumb) > * { position: relative; z-index: 1; }
/* comfortable measure + real centring for the lead and buttons */
.rkm-hero:has(.rkm-breadcrumb) .rkm-lead {
	margin-left: auto;
	margin-right: auto;
}
.rkm-hero:has(.rkm-breadcrumb) .rkm-breadcrumb,
.rkm-hero:has(.rkm-breadcrumb) .rkm-eyebrow { text-align: center; }
.rkm-hero:has(.rkm-breadcrumb) .wp-block-buttons { justify-content: center; margin-top: 8px; }

/* Fallback for browsers without :has() — still readable, just left-aligned */
@supports not selector(:has(*)) {
	.rkm-hero .rkm-lead { margin-right: auto; }
}

/* generic stat tiles (aviator game info, payment facts) */
.rkm-statbox { display: grid; grid-template-columns: repeat(auto-fill, minmax(130px, 1fr)); gap: 12px; }
.rkm-stat-tile {
	padding: 16px 18px; border-radius: var(--rkm-r-md); background: var(--wp--preset--gradient--card);
	border: var(--rkm-card-border);
}
.rkm-stat-tile .k { font-size: 12px; color: var(--wp--preset--color--dim); font-weight: 600; }
.rkm-stat-tile .v { font-family: var(--wp--preset--font-family--heading); font-weight: 400; font-size: 22px; color: var(--wp--preset--color--acid); }

/* bonus card = feature card + a price line + button (reuses .rkm-feature look) */
.rkm-bonus__amount { font-family: var(--wp--preset--font-family--heading); font-weight: 400; font-size: 30px; color: var(--wp--preset--color--acid); line-height: 1; margin: 6px 0 8px; }

/* CTA banner */
.rkm-cta {
	position: relative; overflow: hidden; text-align: center;
	padding: clamp(28px, 4vw, 44px); border-radius: var(--rkm-r-md);
	background: var(--wp--preset--gradient--card-raised); border: var(--rkm-card-border-strong);
}
.rkm-cta::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(600px 240px at 50% 0%, rgba(143, 169, 222, .16), transparent 65%); }
.rkm-cta > * { position: relative; z-index: 1; }

/* comparison / payment tables (dense, kept in html blocks) */
.rkm-table-wrap { overflow-x: auto; -webkit-overflow-scrolling: touch; }
/* Pages emit <figure class="wp-block-table rkm-table">, so the figure itself is the
   horizontal scroll container on mobile; the inner <table> keeps the min width. */
.rkm-table { display: block; width: 100%; min-width: 0; margin-left: 0; margin-right: 0; overflow-x: auto; -webkit-overflow-scrolling: touch; font-size: 14px; }
.rkm-table > table { width: 100%; border-collapse: collapse; min-width: 560px; }
.rkm-table th, .rkm-table td { padding: 12px 14px; text-align: left; border-bottom: var(--rkm-hairline); }
.rkm-table thead th { color: var(--wp--preset--color--heading); font-weight: 700; }
.rkm-table tbody th { color: var(--wp--preset--color--muted); font-weight: 600; }
.rkm-table td { color: var(--wp--preset--color--contrast); }
.rkm-table .yes { color: var(--wp--preset--color--sun-soft); font-weight: 700; }
.rkm-table .no { color: var(--wp--preset--color--dim); }
.rkm-table .rkm-col-hi { background: rgba(230, 242, 236, .08); color: var(--wp--preset--color--acid); font-weight: 700; }
.rkm-table .rkm-badge-rec { display:inline-block; margin-left:6px; padding:1px 7px; border-radius: var(--rkm-r-md); font-size:10px; font-weight:700; background:var(--wp--preset--gradient--acid); color:var(--wp--preset--color--ink); }

/* warning-sign / checklist rows */
.rkm-warn { list-style: none; padding-left: 0; margin: 0; display: grid; gap: 10px; }
.rkm-warn li { position: relative; padding: 13px 14px 13px 42px; border-radius: var(--rkm-r-md); background: var(--wp--preset--gradient--card); border: var(--rkm-card-border); font-size: 15px; line-height: 1.55; color: var(--wp--preset--color--body); }
/* U+FE0E forces the text (not emoji) presentation of the warning sign so it picks
   up the ice accent instead of rendering as a colour emoji on Win/Android. */
.rkm-warn li::before { content: "\26A0\FE0E"; position: absolute; left: 14px; top: 13px; color: var(--wp--preset--color--acid); }

/* =========================================================================
   HEADER
   ========================================================================= */
.rkm-header {
	position: sticky; top: 0; z-index: 50;
	backdrop-filter: blur(14px);
	background: rgba(1, 11, 9, .86);
	border-bottom: 1px solid rgba(230, 242, 236, .14);
}
.rkm-header__inner {
	min-height: 74px;
	max-width: var(--rkm-maxw);
	margin: 0 auto;
	padding: 0 24px;
	width: 100%;
	gap: 20px;
}
.rkm-instruments {
	max-width: var(--rkm-maxw);
	margin: 0 auto;
	padding: 6px 24px;
	width: 100%;
}
.rkm-header__actions { margin-left: auto; }
/* the nav lives in the middle and can shrink/scroll before the burger kicks in */
.rkm-nav { min-width: 0; }
/* Wordmark base layout */
.rkm-brand {
	display: flex;
	align-items: center;
	gap: 11px;
	text-decoration: none;
}
.rkm-brand__crest {
	flex: 0 0 auto;
	width: 36px;
	height: 36px;
	display: block;
	border-radius: var(--rkm-r-md);
	/* num emboss: warm rim light on the top edge, shadow under the bottom */
	box-shadow:
		inset 0 1px 0 rgba(255, 227, 214, .55),
		inset 0 -1px 0 rgba(0, 0, 0, .45),
		0 4px 14px rgba(230, 242, 236, .22);
}
.rkm-brand__lock {
	display: flex;
	align-items: baseline;
	gap: 7px;
	line-height: 1;
	min-width: 0;
}
.rkm-brand__word {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400;
	font-size: 19px;
	line-height: 1;
	letter-spacing: -.6px;
	color: var(--wp--preset--color--heading);
}
.rkm-brand__cluster {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400;
	font-size: 19px;
	line-height: 1;
	letter-spacing: -.6px;
	color: var(--wp--preset--color--acid);
}
.rkm-brand:hover .rkm-brand__cluster { color: var(--wp--preset--color--acid-lit); }
.rkm-brand--footer .rkm-brand__word,
.rkm-brand--footer .rkm-brand__cluster { font-size: 17px; }
/* Below 400px the lockup would push the burger off-screen. */
@media (max-width: 400px) {
	.rkm-brand__crest { width: 32px; height: 32px; }
	.rkm-brand__word,
	.rkm-brand__cluster { font-size: 16px; }
}

/* ---- Instrument rail under the header (replaces the sibling's topbar) ---- */
.rkm-instruments {
	max-width: var(--rkm-maxw);
	margin: 0 auto;
	padding: 8px 24px 10px;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 8px 22px;
	border-top: 1px solid rgba(255, 255, 255, .05);
}
.rkm-instruments__rail {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 6px 10px;
	margin: 0;
}
.rkm-instruments__cell {
	display: inline-flex;
	align-items: baseline;
	gap: 6px;
	padding: 3px 9px;
	border-radius: var(--rkm-r-md);
	background: rgba(230, 242, 236, .07);
	border: 1px solid rgba(230, 242, 236, .16);
}
.rkm-instruments__cell dt {
	font-size: 11px;
	letter-spacing: .7px;
	text-transform: uppercase;
	color: var(--wp--preset--color--dim);
}
.rkm-instruments__cell dd {
	margin: 0;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12.5px;
	font-weight: 600;
	color: #a8c1e8;
}
.rkm-instruments__legal { margin: 0; font-size: 12px; color: var(--wp--preset--color--dim); }
.rkm-instruments__legal a { color: var(--wp--preset--color--acid-lit); }
.rkm-instruments__age {
	display: inline-block;
	padding: 1px 6px;
	margin-right: 4px;
	border-radius: var(--rkm-r-md);
	font-size: 11px;
	font-weight: 700;
	color: #FFFFFF;
	background: var(--rkm-alarm-deep, #182a4d);
}

/* ---- Footer payment rail (mirrors the header rail, sits at the bottom) --- */
.rkm-payrail {
	max-width: var(--rkm-maxw);
	margin: 34px auto 0;
	padding-top: 24px;
	border-top: 1px solid rgba(143, 169, 222, .16);
}
.rkm-payrail__title {
	margin: 0 0 12px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .6px;
	color: var(--wp--preset--color--contrast);
}
.rkm-payrail__row { display: flex; flex-wrap: wrap; gap: 9px; }
.rkm-payrail__note { margin: 12px 0 0; font-size: 12px; line-height: 1.6; color: var(--wp--preset--color--dim); }

/* Navigation */
.rkm-nav { flex-wrap: nowrap; }
.rkm-nav .wp-block-navigation-item__content { font-size: 14px; font-weight: 600; color: var(--wp--preset--color--body); padding: 8px 11px; border-radius: var(--rkm-r-md); white-space: nowrap; }
.rkm-header__inner .wp-block-navigation__responsive-container:not(.is-menu-open) { background: transparent; }
.rkm-nav .current-menu-item .wp-block-navigation-item__content,
.rkm-nav .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--contrast); background: rgba(230, 242, 236, .08); }

/* Language pills */
.rkm-lang { display: flex; align-items: center; gap: 2px; padding: 3px; border: 1px solid rgba(230, 242, 236, .2); border-radius: var(--rkm-r-md); background: rgba(255, 255, 255, .02); }
.rkm-lang a { padding: 5px 10px; border-radius: var(--rkm-r-md); font-size: 12.5px; font-weight: 700; color: var(--wp--preset--color--dim); }
.rkm-lang a.is-active { background: rgba(230, 242, 236, .16); color: var(--wp--preset--color--acid); }

.rkm-instruments { min-height: 34px; font-size: 12px; color: var(--wp--preset--color--dim); }
.rkm-instruments__legal b { color: var(--wp--preset--color--acid); }

/* =========================================================================
   FOOTER
   ========================================================================= */
.rkm-footer { border-top: 1px solid rgba(230, 242, 236, .12); background: var(--wp--preset--color--base-deep); }
.rkm-footer__col-title { font-size: 13px; font-weight: 700; letter-spacing: .6px; color: var(--wp--preset--color--contrast); margin-bottom: 14px; }
.rkm-footer a { font-size: 13px; color: var(--wp--preset--color--muted); }
.rkm-footer a:hover { color: var(--wp--preset--color--acid); }
.rkm-footer .rkm-footer__links { list-style: none; padding-left: 0; margin: 0; display: flex; flex-direction: column; gap: 10px; }
.rkm-footer .rkm-brand__name { color: var(--wp--preset--color--heading); }
.rkm-footer__legal { font-size: 12px; color: var(--wp--preset--color--dim); }
.rkm-chip {
	padding: 8px 14px; border-radius: var(--rkm-r-md); background: rgba(255, 255, 255, .03);
	border: 1px solid rgba(255, 255, 255, .06); font-size: 12px; font-weight: 600; color: var(--wp--preset--color--dim);
}

/* =========================================================================
   RESPONSIVE  — the piece the original inline markup was missing entirely
   ========================================================================= */

/* Tablet */
@media (max-width: 900px) {
	.rkm-compare { position: static; }
	.rkm-offer__amount { font-size: 40px; }
}

/* Mobile */
@media (max-width: 600px) {
	body { --rkm-side: 16px; }
	.rkm-section { padding-top: 36px; }

	/* tighten root padding on small screens */
	.rkm-header__inner { min-height: 60px; }
	.rkm-brand__mark { width: 18px; height: 18px; }
	.rkm-brand__name { font-size: 17px; }

	/* stat row wraps to 2-up */
	.rkm-stats { gap: 18px 28px; }

	.rkm-offer { padding: 26px 20px; }
	.rkm-offer__amount { font-size: 38px; }

	/* buttons go full width so they are tappable */
	.rkm-hero .wp-block-buttons .wp-block-button,
	.rkm-app .wp-block-buttons .wp-block-button { width: 100%; }
	.rkm-hero .wp-block-buttons .wp-block-button__link,
	.rkm-app .wp-block-buttons .wp-block-button__link { display: block; text-align: center; }

	.rkm-faq > summary { font-size: 15px; padding: 16px 18px; }
	.rkm-18 { flex-direction: row; align-items: flex-start; }
}

/* Mobile header: keep only logo, burger and the primary CTA; the language
   switch and secondary link move out of the cramped bar. Core Navigation
   shows its hamburger below 600px. */
@media (max-width: 600px) {
	.rkm-header__inner { gap: 10px; padding: 0 16px; }
	.rkm-instruments { padding: 6px 16px; }
	.rkm-lang { display: none; }
	.rkm-header__actions .rkm-btn-outline { display: none; }
	.rkm-header__actions { gap: 10px; }
	/* let the nav (burger) sit just before the CTA on the right */
	.rkm-nav { order: 3; margin-left: auto; }
	.rkm-header__actions { order: 4; margin-left: 0; }
	.rkm-instruments { font-size: 11px; gap: 4px 12px; }
}

/* Very small */
@media (max-width: 400px) {
	.rkm-brand__name { display: none; }
	.rkm-header__actions .wp-block-button__link { padding: 9px 14px !important; }
}

/* =========================================================================== */

/* Skip-to-content: off-screen until it receives keyboard focus. */
.rkm-skip-link {
	position: absolute;
	left: 50%;
	top: 0;
	transform: translate(-50%, -130%);
	z-index: 2000;
	padding: 12px 22px;
	background: #080e20;
	color: #FFFFFF;
	font-family: "Nunito", system-ui, sans-serif;
	font-weight: 700;
	font-size: 15px;
	text-decoration: none;
	border-radius: 0 0 0 0;
	box-shadow: 0 8px 24px rgba(0, 0, 0, .45);
	transition: transform .18s ease-out;
}
.rkm-skip-link:focus {
	transform: translate(-50%, 0);
	outline: none;
}

/* Visible keyboard focus on every interactive element (WCAG 2.4.7).
   Only shows for keyboard users via :focus-visible, so mouse clicks stay clean. */
a:focus-visible,
button:focus-visible,
.wp-block-button__link:focus-visible,
.wp-block-navigation-item__content:focus-visible,
.wp-block-navigation__responsive-container-open:focus-visible,
.wp-block-navigation__responsive-container-close:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
	outline: 3px solid #f2cdb4;
	outline-offset: 3px;
	border-radius: var(--rkm-r-md);
}

/* Mobile: guarantee 44px tap targets and remove the 300ms tap delay (WCAG 2.5.5). */
@media (max-width: 600px) {
	.wp-block-button__link,
	.rkm-nav .wp-block-navigation-item__content,
	.rkm-header__actions a,
	.rkm-lang a {
		min-height: 44px;
		display: inline-flex;
		align-items: center;
		touch-action: manipulation;
	}
}

/* Honour prefers-reduced-motion globally, not just the floating hero art. */
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: .001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .001ms !important;
		scroll-behavior: auto !important;
	}
}

/* ---- Supplement: native wp:table dark styling + mobile scroll, notes (added by builder) ---- */
.wp-block-table{margin:18px 0;}
.wp-block-table.rkm-table,.wp-block-table{overflow-x:auto;-webkit-overflow-scrolling:touch;}
.wp-block-table table{width:100%;border-collapse:collapse;min-width:520px;font-size:14px;}
.wp-block-table th,.wp-block-table td{padding:12px 14px;text-align:left;border-bottom:var(--rkm-hairline,1px solid rgba(255, 255, 255,.08));}
.wp-block-table thead th{color:var(--wp--preset--color--heading);font-weight:700;font-family:var(--wp--preset--font-family--mono);letter-spacing:.3px;}
.wp-block-table tbody td{color:var(--wp--preset--color--body);}
.wp-block-table tbody td:nth-child(n+2){font-family:var(--wp--preset--font-family--mono);color:var(--wp--preset--color--contrast);}
.rkm-note{font-size:13px;line-height:1.6;color:var(--wp--preset--color--dim);border-left:2px solid rgba(231, 184, 154, .3);padding:2px 0 2px 14px;margin:14px 0;}
.rkm-rating-pill{white-space:nowrap;}
@media (max-width:600px){.wp-block-table table{min-width:480px;}}

/* Static single-language marker (AZ-only site). */
.rkm-langtag {
	display: inline-flex; align-items: center; padding: 6px 11px; border-radius: var(--rkm-r-md);
	border: 1px solid rgba(231, 184, 154, .3); background: rgba(230, 242, 236, .07);
	font-family: var(--wp--preset--font-family--mono);
	font-size: 13px; font-weight: 400; letter-spacing: 1px;
	color: var(--wp--preset--color--acid);
}

/* ---- Multiplier scale strip (green cash-out zone -> red crash zone) ------- */
.rkm-mult {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(96px, 1fr)); gap: 10px;
	list-style: none; padding-left: 0; margin: 0;
}
.rkm-mult li {
	padding: 14px 12px; border-radius: var(--rkm-r-md); text-align: center;
	background: var(--wp--preset--gradient--card); border: 1px solid rgba(255, 255, 255,.06);
}
.rkm-mult .x {
	display: block; font-family: var(--wp--preset--font-family--mono);
	font-size: 22px; line-height: 1; color: var(--wp--preset--color--contrast);
}
.rkm-mult .t { display: block; margin-top: 7px; font-size: 12px; color: var(--wp--preset--color--dim); }
.rkm-mult li.is-safe   { border-color: rgba(255, 216, 74, .34); }
.rkm-mult li.is-safe   .x { color: var(--wp--preset--color--sun-soft); }
.rkm-mult li.is-risky  { border-color: rgba(255, 122, 129, .3); }
.rkm-mult li.is-risky  .x { color: #cdd9f0; }

/* ---- RTP / provider fact card (mono figures) ----------------------------- */
.rkm-rtp {
	display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 1px;
	background: rgba(255, 255, 255,.07); border: 1px solid rgba(255, 255, 255,.07);
	border-radius: var(--rkm-r-md); overflow: hidden;
}
.rkm-rtp div { background: var(--wp--preset--color--surface); padding: 16px 18px; }
.rkm-rtp .k { font-size: 11.5px; letter-spacing: .8px; text-transform: uppercase; color: var(--wp--preset--color--muted); }
.rkm-rtp .v {
	font-family: var(--wp--preset--font-family--mono); font-size: 21px; line-height: 1.25;
	color: var(--wp--preset--color--acid); margin-top: 5px;
}

/* ---- Signal / predictor warning callout ---------------------------------- */
.rkm-alert {
	display: flex; gap: 16px; align-items: flex-start;
	padding: 20px 22px; border-radius: var(--rkm-r-md);
	background: rgba(255, 122, 129, .07);
	border: 1px solid rgba(255, 122, 129, .28);
	border-left-width: 3px;
}
.rkm-alert__icon {
	flex: 0 0 auto; width: 38px; height: 38px; border-radius: var(--rkm-r-md);
	display: flex; align-items: center; justify-content: center; font-size: 19px;
	background: rgba(255, 122, 129, .14); color: #cdd9f0;
}
.rkm-alert h3 {
	font-size: 16px; margin: 0 0 6px; color: #dbe4f4;
	letter-spacing: .4px;
}
.rkm-alert p { margin: 0; font-size: 14px; line-height: 1.6; color: var(--wp--preset--color--body); }

/* ---- Demo vs real comparison strip --------------------------------------- */
.rkm-vs { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.rkm-vs > div {
	padding: 20px 20px 18px; border-radius: var(--rkm-r-md);
	background: var(--wp--preset--gradient--card); border: 1px solid rgba(255, 255, 255,.07);
}
.rkm-vs > div.is-real { border-color: rgba(231, 184, 154, .3); }
.rkm-vs h3 { font-size: 15px; margin: 0 0 12px; letter-spacing: .6px; }
.rkm-vs ul { list-style: none; padding-left: 0; margin: 0; display: grid; gap: 9px; }
.rkm-vs li { position: relative; padding-left: 22px; font-size: 13.5px; line-height: 1.5; color: var(--wp--preset--color--body); }
.rkm-vs li::before { content: "\2013"; position: absolute; left: 4px; color: var(--wp--preset--color--muted); }
.rkm-vs li.y::before { content: "\2713"; color: var(--wp--preset--color--sun); }
.rkm-vs li.n::before { content: "\2715"; color: #cdd9f0; }
@media (max-width: 600px) { .rkm-vs { grid-template-columns: 1fr; } }

/* ---- Provider strip (Spribe & friends — text marks, no borrowed logos) ---- */
.rkm-provider {
	display: flex; align-items: center; justify-content: center; gap: 9px;
	height: 62px; border-radius: var(--rkm-r-md);
	background: var(--wp--preset--color--surface); border: 1px solid rgba(255, 255, 255,.07);
	font-family: var(--wp--preset--font-family--heading);
	font-size: 15px; font-weight: 400; letter-spacing: 1px; text-transform: uppercase;
	color: var(--wp--preset--color--contrast);
}
.rkm-provider small {
	font-family: var(--wp--preset--font-family--mono); font-size: 11px;
	letter-spacing: 0; text-transform: none; color: var(--wp--preset--color--muted);
}

/* Numeric emphasis: any mono run reads as instrument data. */
.rkm-num { font-family: var(--wp--preset--font-family--mono); color: var(--wp--preset--color--acid); }

/* Eyebrows pick up the mono voice on this domain. */
.rkm-eyebrow {
	font-family: var(--wp--preset--font-family--mono);
	font-weight: 400; letter-spacing: 2.6px; font-size: 12.5px;
	color: var(--wp--preset--color--acid);
}

/* Skeleton placeholder for the heavier grids (no images shipped). */
@keyframes rkm-shimmer { 0% { background-position: -420px 0; } 100% { background-position: 420px 0; } }
.rkm-skeleton {
	border-radius: var(--rkm-r-md); min-height: 120px;
	background: linear-gradient(90deg, #16274a 0%, #16274a 50%, #16274a 100%);
	background-size: 840px 100%;
	animation: rkm-shimmer 1.6s linear infinite;
}
@media (prefers-reduced-motion: reduce) { .rkm-skeleton { animation: none; } }
/* Aspect-ratio variants so a skeleton can reserve the exact box of the block it
   stands in for (no layout shift when the real content lands). */
.rkm-skeleton--card { aspect-ratio: 3 / 4; min-height: 0; }
.rkm-skeleton--wide { aspect-ratio: 16 / 9; min-height: 0; }
.rkm-skeleton--row  { min-height: 64px; }


/* =========================================================================== */

/* A. Fragment navigation must clear the sticky header */
html {
	scroll-padding-top: 124px;
}
@media (max-width: 600px) {
	html { scroll-padding-top: 88px; }
}

/* B. Root gutter: 24px is too much on a 360px screen */
@media (max-width: 600px) {
	body {
		--wp--style--root--padding-right: 16px;
		--wp--style--root--padding-left: 16px;
	}
}

/* ---- C. Skip link ------------------------------------------------------- */
/* Core adds a second skip link (#wp-skip-link) pointing at the same #rkm-main.
   Two identical first tab stops is noise — keep the theme's styled one. */
#wp-skip-link {
	display: none !important;
}
/* The theme's own link killed its outline; give it a ring for the moment it
   slides in, and pull the ring inside so the rounded corners don't clip it. */
.rkm-skip-link:focus,
.rkm-skip-link:focus-visible {
	outline: 3px solid var(--wp--preset--color--acid);
	outline-offset: -3px;
}

/* D. Interior page header */
.entry-content {
	position: relative;
}
.entry-content > .rkm-breadcrumb:first-child::after {
	content: "";
	position: absolute;
	left: 50%;
	top: -56px;
	transform: translateX(-50%);
	width: min(1180px, 132vw);
	height: 430px;
	z-index: -1;
	pointer-events: none;
	background:
		radial-gradient(640px 300px at 26% 22%, rgba(143, 169, 222, .15), transparent 62%),
		radial-gradient(430px 220px at 6% 6%, rgba(230, 242, 236, .08), transparent 60%);
}
.entry-content > .rkm-breadcrumb:first-child {
	margin-bottom: 16px;
}
.entry-content > .rkm-breadcrumb + h1 {
	margin-top: 0;
}

/* On these pages the eyebrow sits *after* the H1, so it reads as a kicker.
   Give it the flight-trail tick so it looks authored rather than misplaced. */
h1 + .rkm-eyebrow {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-top: 18px;
	margin-bottom: 0;
}
h1 + .rkm-eyebrow::before {
	content: "";
	flex: 0 0 auto;
	width: 34px;
	height: 2px;
	border-radius: var(--rkm-r-md);
	background: linear-gradient(90deg, var(--wp--preset--color--acid), rgba(231, 184, 154, 0));
}
h1 + .rkm-eyebrow + .rkm-lead {
	margin-top: 14px;
}

/* E. Vertical rhythm + prose measure */
.entry-content > h2,
.rkm-section > h2 {
	margin-top: clamp(44px, 5vw, 68px);
}
.entry-content > h3,
.rkm-section > h3 {
	margin-top: clamp(28px, 3vw, 38px);
}
.entry-content > .rkm-breadcrumb + h1,
.entry-content > h2:first-child,
.rkm-section > h2:first-child {
	margin-top: 0;
}
/* Flight-trail rule under every section head: identity marker + rhythm cue. */
.entry-content > h2::after,
.rkm-section > h2::after,
.rkm-cta > h2::after {
	content: "";
	display: block;
	width: 46px;
	height: 2px;
	margin-top: 14px;
	border-radius: var(--rkm-r-md);
	background: linear-gradient(90deg, var(--wp--preset--color--acid) 0%, rgba(143, 169, 222, .55) 68%, rgba(143, 169, 222, 0) 100%);
}
.rkm-cta h2::after,
h2.has-text-align-center::after {
	margin-left: auto;
	margin-right: auto;
}

.entry-content > p,
.entry-content > ul,
.entry-content > ol,
.rkm-section > p,
.rkm-section > ul,
.rkm-section > ol {
	max-width: 62ch;
}
.entry-content > p.has-text-align-center,
.rkm-section > p.has-text-align-center,
.rkm-cta p {
	/* Match the content column exactly (NOT `none`: core sets max-width in the same
	   low-specificity :where() rule, so `none` here made prose full-bleed while the
	   headings stayed at 720px — the same misalignment mirrored). */
	max-width: var(--wp--style--global--content-size, 740px);
}
/* The lead already had its own 660px cap; keep whichever is narrower. */
.rkm-lead {
	max-width: min(660px, 62ch);
}

/* ---- F. Legibility: no prose below 15px --------------------------------- */
.rkm-feature__text,
.rkm-step__text,
.rkm-alert p {
	font-size: 15px;
	line-height: 1.6;
}
.rkm-vs li,
.rkm-18__text {
	font-size: 14.5px;
}
.rkm-note {
	font-size: 14px;
}
.rkm-breadcrumb {
	font-size: 13px;
}
.rkm-footer a {
	font-size: 14px;
}
.rkm-instruments {
	font-size: 12px;
}

/* ---- G. Tap targets: 44px everywhere, not just under 600px --------------
   WCAG 2.5.5 / 2.5.8. Inline links inside a sentence are exempt and are left
   alone; every standalone control below was under 44px. */
a,
button,
summary,
.wp-block-button__link {
	touch-action: manipulation;
}
.rkm-brand {
	min-height: 44px;
}
.rkm-nav .wp-block-navigation-item__content {
	min-height: 44px;
	display: flex;
	align-items: center;
}
.rkm-header .wp-block-button__link,
.rkm-chips .wp-block-button__link {
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
/* Hamburger + overlay close button were 24px icon buttons. */
.rkm-nav .wp-block-navigation__responsive-container-open,
.rkm-nav .wp-block-navigation__responsive-container-close {
	min-width: 44px;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	color: var(--wp--preset--color--contrast);
	border-radius: var(--rkm-r-md);
}
/* Overlay menu: core forces `padding:0` on the links at (0,4,0) specificity, so
   the burger menu inherited 14px links with no vertical reach. */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .rkm-nav .wp-block-navigation-item__content {
	font-size: 19px;
	font-weight: 600;
	padding: 11px 4px;
	min-height: 48px;
	width: 100%;
}
/* Breadcrumb link was an 18px-tall inline target: pad the hit area out to 44px
   and pull it back with negative margin so the line box does not move. */
.rkm-breadcrumb a {
	display: inline-block;
	/* Grow the hit area to 44px tall without moving the text: the extra padding is
	   cancelled by an equal negative margin, and the left edge is left untouched so
	   the crumb still lines up with the H1 below it. */
	padding: 12px 8px 12px 0;
	margin: -12px -8px -12px 0;
}
.rkm-footer .rkm-footer__links {
	gap: 2px;
}
.rkm-footer .rkm-footer__links a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
}
/* 404 template: search field + pagination controls. */
.wp-block-search__input,
.wp-block-search__button {
	min-height: 44px;
}
.wp-block-search__input {
	background: var(--wp--preset--color--surface);
	border: 1px solid rgba(230, 242, 236, .22);
	color: var(--wp--preset--color--contrast);
	border-radius: var(--rkm-r-md);
	padding: 0 14px;
}
.wp-block-search__input::placeholder {
	/* muted #93a3c2 is 7.3:1 on surface — a placeholder, never body copy. */
	color: var(--wp--preset--color--muted);
	opacity: 1;
}
.wp-block-query-pagination a,
.wp-block-query-pagination .page-numbers {
	min-height: 44px;
	min-width: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 0 10px;
	border-radius: var(--rkm-r-md);
}
.wp-block-query-pagination .page-numbers.current {
	background: rgba(230, 242, 236, .12);
	color: var(--wp--preset--color--acid);
}

/* ---- H. Focus rings that are actually visible --------------------------- … */
.rkm-faq > summary:focus-visible {
	outline-offset: -4px;
}
.rkm-game .rkm-game__play:focus-visible,
.rkm-post:focus-visible {
	outline-offset: 2px;
}

/* ---- I. Complete the state matrix (hover / focus / active / disabled) ---- */
.wp-block-button__link:active,
.rkm-store:active,
.rkm-game__play:active,
.rkm-quicklink:active,
.rkm-sticky a:active {
	transform: translateY(1px);
}
.rkm-quicklink:focus-visible,
.rkm-quicklink:focus-within {
	border-color: rgba(231, 184, 154, .4);
}
.rkm-game:focus-within,
.rkm-post:focus-visible {
	border-color: rgba(231, 184, 154, .35);
}
.rkm-nav .wp-block-navigation-item__content:focus-visible {
	color: var(--wp--preset--color--contrast);
	background: rgba(230, 242, 236, .1);
}
.rkm-faq > summary:hover {
	background: rgba(230, 242, 236, .045);
}
.rkm-faq > summary:hover::after,
.rkm-faq > summary:focus-visible::after {
	background: rgba(230, 242, 236, .22);
	color: var(--wp--preset--color--acid-lit);
}
.rkm-faq[open] > summary {
	border-bottom: var(--rkm-hairline);
}
.rkm-footer a:focus-visible,
.rkm-breadcrumb a:hover,
.rkm-breadcrumb a:focus-visible {
	color: var(--wp--preset--color--acid);
}
button:disabled,
.wp-block-button__link[aria-disabled="true"],
.wp-block-button__link[disabled] {
	opacity: .45;
	cursor: not-allowed;
	box-shadow: none;
	filter: grayscale(.35);
	pointer-events: none;
}

/* J. Emoji are not an icon system */
.rkm-quicklink__icon {
	font-size: 0;
	width: 40px;
	height: 40px;
	border-radius: var(--rkm-r-md);
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 3px;
	background: rgba(230, 242, 236, .09);
	border: 1px solid rgba(230, 242, 236, .24);
	transition: background .18s ease, border-color .18s ease;
}
.rkm-quicklink__icon::before,
.rkm-quicklink__icon::after {
	content: "";
	width: 4px;
	height: 15px;
	border-radius: var(--rkm-r-md);
	background: var(--wp--preset--color--acid);
	box-shadow: 7px 0 0 0 var(--wp--preset--color--acid-deep);
}
.rkm-quicklink__icon::after {
	height: 9px;
	box-shadow: none;
	opacity: .55;
	margin-left: 7px;
}
.rkm-quicklink:hover .rkm-quicklink__icon,
.rkm-quicklink:focus-visible .rkm-quicklink__icon {
	background: rgba(230, 242, 236, .16);
	border-color: rgba(231, 184, 154, .42);
}
/* The alert callout's ⚠ comes from page markup — force text presentation so it
   inherits the crash-red tint rather than becoming a colour emoji. */
.rkm-alert__icon {
	font-variant-emoji: text;
}
/* J2. Two inherited rules carried latent contrast failures */
.rkm-brand__num {
	color: var(--wp--preset--color--ink);
}
.rkm-avatar {
	background: rgba(230, 242, 236, .14);
	border: 1px solid rgba(231, 184, 154, .28);
	color: var(--wp--preset--color--acid);
}

/* Footer age chip: was "🔞 18+" (emoji as an icon). Now a typographic ice chip. */
.rkm-chip--age {
	color: var(--wp--preset--color--acid);
	background: rgba(230, 242, 236, .07);
	border-color: rgba(231, 184, 154, .28);
	font-weight: 700;
	letter-spacing: .4px;
}

/* ---- K. Tables: nested scrollers + a scroll affordance ------------------ … */
.rkm-table-wrap {
	position: relative;
	overflow: visible;
}
.rkm-table:focus-visible {
	outline: 3px solid var(--wp--preset--color--acid-lit);
	outline-offset: 2px;
}
@media (max-width: 600px) {
	/* Below 600px every table (min-width 520–560px) definitely overflows, so the
	   fade is always truthful. */
	.rkm-table-wrap::after {
		content: "";
		position: absolute;
		top: 0;
		right: -1px;
		bottom: 0;
		width: 34px;
		pointer-events: none;
		background: linear-gradient(to left, var(--wp--preset--color--base), rgba(1, 11, 9, 0));
	}
}

/* L. Header: collapse the nav before it runs out of room */
@media (min-width: 600px) and (max-width: 899px) {
	.rkm-nav .wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: flex;
	}
	.rkm-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
		display: none;
	}
	.rkm-nav {
		order: 3;
		margin-left: auto;
	}
	.rkm-header__actions {
		order: 4;
		margin-left: 0;
	}
}

/* ---- M. Small-screen layout fixes -------------------------------------- */
@media (max-width: 600px) {
	/* "10.00x+" at 22px mono overflowed a 3-up 96px track: go 2-up instead. */
	.rkm-mult {
		grid-template-columns: repeat(auto-fit, minmax(132px, 1fr));
	}
	/* The static AZ marker is decorative and repeated in the footer — reclaim the
	   space in a nowrap header instead of risking an overflow. */
	.rkm-header__actions .rkm-langtag {
		display: none;
	}
	.rkm-18 {
		gap: 12px;
		padding: 16px 16px;
	}
	.rkm-18__text {
		font-size: 14px;
	}
	.rkm-alert {
		padding: 16px 16px;
		gap: 12px;
	}
	.rkm-offer__row,
	.rkm-compare__row {
		/* long AZ labels + value on one 328px line: let the pair wrap. */
		flex-wrap: wrap;
	}
	/* `.rkm-rtp` clips its children, so "Provably fair" at 21px mono was being cut
	   off in a 128px cell at 360px. Same guard for the stat tiles ("20:00–21:00"). */
	.rkm-rtp .v {
		font-size: 17px;
	}
	.rkm-stat-tile .v {
		font-size: 19px;
	}
	.rkm-rtp .v,
	.rkm-stat-tile .v,
	.rkm-mult .x {
		line-height: 1.3;
		overflow-wrap: anywhere;
	}
	.entry-content > .rkm-breadcrumb:first-child::after {
		height: 340px;
	}
}

/* ---- N. Reduced motion: finish the job --------------------------------- */
@media (prefers-reduced-motion: reduce) {
	/* The global block above zeroes durations; also stop the two decorative
	   translate effects from moving at all and drop the blur work. */
	.rkm-quicklink:hover,
	.rkm-game:hover,
	.rkm-post:hover,
	.wp-block-button__link:active,
	.rkm-store:active,
	.rkm-game__play:active,
	.rkm-quicklink:active,
	.rkm-sticky a:active {
		transform: none !important;
	}
	.rkm-header {
		backdrop-filter: none;
	}
	html {
		scroll-behavior: auto !important;
	}
}

/* ---- O. Forced-colors / high-contrast safety net ----------------------- */
@media (forced-colors: active) {
	.rkm-card, .rkm-card-raised, .rkm-quicklink, .rkm-game, .rkm-feature, .rkm-step,
	.rkm-faq, .rkm-flight, .rkm-offer, .rkm-cta, .rkm-alert, .rkm-18, .rkm-stat-tile {
		border: 1px solid CanvasText;
	}
	a:focus-visible, button:focus-visible, summary:focus-visible {
		outline: 3px solid Highlight;
	}
}

/* Item/game card grid */
.rkm-games {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 16px;
}
@media (max-width: 480px) {
	.rkm-games {
		grid-template-columns: 1fr;
	}
}

/* Tables authored as <div class="rkm-table-wrap"><table class="rkm-table"> */
.rkm-table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
table.rkm-table {
	display: table;
	width: 100%;
	min-width: 560px;
	border-collapse: collapse;
	overflow: visible;
}


/* =========================================================================== */

/* Reel strip: the signature hero ornament */
.rkm-reels {
	position: relative;
	overflow: hidden;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 10px;
	padding: 16px;
	aspect-ratio: 4 / 3;
	border-radius: var(--rkm-r-md);
	background:
		radial-gradient(520px 260px at 82% 4%, rgba(143, 169, 222, .26), transparent 62%),
		var(--wp--preset--gradient--card-raised);
	border: 1px solid rgba(230, 242, 236, .22);
	box-shadow: var(--wp--preset--shadow--card);
}
.rkm-reels__reel {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-around;
	border-radius: var(--rkm-r-md);
	background: rgba(2, 17, 14, .55);
	border: 1px solid rgba(230, 242, 236, .12);
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(20px, 4.2vw, 30px);
	line-height: 1;
	color: var(--wp--preset--color--acid);
	letter-spacing: 1px;
}
.rkm-reels__reel span { opacity: .38; }
.rkm-reels__reel span.is-hit { opacity: 1; text-shadow: 0 0 22px rgba(231, 184, 154, .55); }
.rkm-reels__line {
	position: absolute;
	left: 10px;
	right: 10px;
	top: 50%;
	height: 2px;
	transform: translateY(-1px);
	background: linear-gradient(90deg, rgba(231, 184, 154, 0), var(--wp--preset--color--acid) 22%, var(--wp--preset--color--acid) 78%, rgba(231, 184, 154, 0));
	opacity: .8;
}
.rkm-reels__tag {
	position: absolute;
	left: 16px;
	bottom: 14px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	letter-spacing: .6px;
	color: var(--wp--preset--color--dim);
}

/* ---- Provider / genre filter rail ---------------------------------------
   A real horizontal scroller (not JS tabs): on 360px it swipes, on desktop it
   wraps. Each chip is a link to the section it filters, so it works with JS off. */
.rkm-filter {
	display: flex;
	gap: 9px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
	scrollbar-width: thin;
	padding: 4px 0 10px;
	margin: 0;
	list-style: none;
}
.rkm-filter li { flex: 0 0 auto; }
.rkm-filter a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	padding: 0 16px;
	border-radius: var(--rkm-r-md);
	background: rgba(230, 242, 236, .05);
	border: 1px solid rgba(230, 242, 236, .18);
	font-size: 13.5px;
	font-weight: 700;
	color: var(--wp--preset--color--dim);
	text-decoration: none;
	white-space: nowrap;
	transition: background .16s ease, border-color .16s ease, color .16s ease;
}
.rkm-filter a:hover,
.rkm-filter a:focus-visible {
	background: rgba(230, 242, 236, .14);
	border-color: rgba(231, 184, 154, .46);
	color: var(--wp--preset--color--acid);
}
.rkm-filter a[aria-current="true"] {
	background: var(--wp--preset--gradient--acid);
	border-color: transparent;
	color: var(--wp--preset--color--ink);
}
@media (min-width: 782px) { .rkm-filter { flex-wrap: wrap; overflow: visible; } }

/* ---- Game tiles: portrait, blue light RTP badge --------------------------- */
.rkm-game { border-radius: var(--rkm-r-md); }
.rkm-game__rtp {
	position: absolute;
	right: 9px;
	bottom: 9px;
	z-index: 2;
	padding: 4px 9px;
	border-radius: var(--rkm-r-md);
	background: rgba(2, 17, 14, .82);
	border: 1px solid rgba(231, 184, 154, .34);
	font-family: var(--wp--preset--font-family--mono);
	font-size: 11.5px;
	color: var(--wp--preset--color--acid);
}
/* Card art with no raster image: a reel-band gradient keeps the 3:4 box filled
   and palette-locked instead of shipping an empty grey well. */
.rkm-game__media--css {
	background:
		linear-gradient(115deg, rgba(230, 242, 236, .16), transparent 58%),
		repeating-linear-gradient(90deg, rgba(255, 255, 255, .045) 0 2px, transparent 2px 26px),
		var(--wp--preset--gradient--card-raised);
	display: flex;
	align-items: center;
	justify-content: center;
	font-family: var(--wp--preset--font-family--heading);
	font-size: 30px;
	/* This label ("SLOT" / "CANLI") NAMES the game family, so it is content, not … */
	color: var(--wp--preset--color--acid-lit);
	letter-spacing: 2px;
}

/* ---- RTP meter: the number AND a bar, so the figure is scannable --------- */
.rkm-rtpbar { display: grid; gap: 12px; margin: 18px 0; }
.rkm-rtpbar__row {
	display: grid;
	grid-template-columns: minmax(120px, 1.4fr) minmax(90px, 3fr) auto;
	align-items: center;
	gap: 12px;
	padding: 12px 14px;
	border-radius: var(--rkm-r-md);
	background: var(--wp--preset--gradient--card);
	border: 1px solid rgba(230, 242, 236, .12);
}
.rkm-rtpbar__name { font-size: 14.5px; font-weight: 700; color: var(--wp--preset--color--contrast); }
.rkm-rtpbar__track {
	position: relative;
	height: 8px;
	border-radius: var(--rkm-r-md);
	background: rgba(255, 255, 255, .07);
	overflow: hidden;
}
.rkm-rtpbar__fill {
	position: absolute;
	inset: 0 auto 0 0;
	border-radius: var(--rkm-r-md);
	background: var(--wp--preset--gradient--acid);
}
.rkm-rtpbar__val {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 15px;
	color: var(--wp--preset--color--acid);
	white-space: nowrap;
}
@media (max-width: 600px) {
	.rkm-rtpbar__row { grid-template-columns: 1fr auto; }
	.rkm-rtpbar__track { grid-column: 1 / -1; }
}

/* ---- Jackpot tiers ------------------------------------------------------
   Tier NAMES and how the pool grows — deliberately NOT a live ticker: this site
   has no feed, and a fake counter would be a fabricated figure. */
.rkm-jackpot {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 12px;
	list-style: none;
	padding-left: 0;
	margin: 0;
}
.rkm-jackpot li {
	padding: 18px 16px;
	border-radius: var(--rkm-r-md);
	text-align: center;
	background: var(--wp--preset--gradient--card);
	border: 1px solid rgba(143, 169, 222, .22);
}
.rkm-jackpot .t {
	display: block;
	font-family: var(--wp--preset--font-family--heading);
	font-size: 15px;
	letter-spacing: 1.6px;
	text-transform: uppercase;
	color: var(--wp--preset--color--coral-lit);
}
.rkm-jackpot .r {
	display: block;
	margin-top: 9px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 17px;
	color: var(--wp--preset--color--acid);
}
.rkm-jackpot .d { display: block; margin-top: 8px; font-size: 13px; line-height: 1.5; color: var(--wp--preset--color--muted); }

/* ---- Demo callout ------------------------------------------------------- */
.rkm-demo {
	display: flex;
	align-items: center;
	gap: 18px;
	flex-wrap: wrap;
	padding: 22px 24px;
	border-radius: var(--rkm-r-md);
	background:
		radial-gradient(460px 200px at 92% 0%, rgba(143, 169, 222, .2), transparent 64%),
		var(--wp--preset--gradient--card-raised);
	border: 1px solid rgba(230, 242, 236, .22);
}
.rkm-demo__badge {
	flex: 0 0 auto;
	min-width: 62px;
	padding: 10px 12px;
	border-radius: var(--rkm-r-md);
	text-align: center;
	background: rgba(230, 242, 236, .12);
	border: 1px solid rgba(231, 184, 154, .3);
	font-family: var(--wp--preset--font-family--mono);
	font-size: 13px;
	color: var(--wp--preset--color--acid);
}
.rkm-demo p { margin: 0; flex: 1 1 260px; font-size: 15px; line-height: 1.6; color: var(--wp--preset--color--body); }

/* ---- Amber grid (keno hit table / plinko rows) ------------------------- */
.rkm-amber {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(84px, 1fr));
	gap: 8px;
	list-style: none;
	padding-left: 0;
	margin: 16px 0;
}
.rkm-amber li {
	padding: 12px 8px;
	border-radius: var(--rkm-r-md);
	text-align: center;
	background: var(--wp--preset--color--surface);
	border: 1px solid rgba(255, 255, 255, .06);
}
.rkm-amber .h {
	display: block;
	font-size: 11.5px;
	letter-spacing: .7px;
	text-transform: uppercase;
	color: var(--wp--preset--color--muted);
}
.rkm-amber .x {
	display: block;
	margin-top: 6px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 17px;
	line-height: 1.3;
	color: var(--wp--preset--color--contrast);
	overflow-wrap: anywhere;
}
.rkm-amber li.is-top { border-color: rgba(231, 184, 154, .42); }
.rkm-amber li.is-top .x { color: var(--wp--preset--color--acid); }

/* ---- Provider mark: text-only, never a borrowed logo file --------------- */
.rkm-provider { border-radius: var(--rkm-r-md); height: 66px; letter-spacing: 1.6px; }

/* ---- Section heads: swap the sibling's trail rule for a reel tick ------- */
.entry-content > h2::after,
.rkm-section > h2::after,
.rkm-cta > h2::after {
	width: 54px;
	height: 3px;
	border-radius: var(--rkm-r-md);
	background: linear-gradient(90deg, var(--wp--preset--color--acid) 0%, rgba(143, 169, 222, .7) 62%, rgba(143, 169, 222, 0) 100%);
}
h1 + .rkm-eyebrow::before {
	background: linear-gradient(90deg, var(--wp--preset--color--acid), rgba(231, 184, 154, 0));
}

/* ---- Ambient wash (superseded by the identity layer at the tail) ---- */
.wp-site-blocks::before {
	background:
		radial-gradient(1100px 560px at 84% -10%, rgba(143, 169, 222, .22), transparent 62%),
		radial-gradient(860px 480px at 8% 2%, rgba(230, 242, 236, .07), transparent 58%);
}

/* ---- Skeletons re-based on the teal surfaces ------------------------ */
.rkm-skeleton {
	background: linear-gradient(90deg, #16274a 0%, #16274a 50%, #16274a 100%);
	background-size: 840px 100%;
}

/* ---- Pill buttons need slightly tighter header padding ----------------- */
.rkm-header .wp-block-button__link { padding: 11px 20px; font-size: 14px; }
.rkm-game__play { border-radius: var(--rkm-r-md); }
.rkm-chips .wp-block-button__link { border-radius: var(--rkm-r-md); }

/* Trust rail sits BELOW the brand row on this domain (sibling-distinct) */
.rkm-header .rkm-instruments {
	border-top: 0;
	border-bottom: 1px solid rgba(230, 242, 236, .12);
	padding: 7px 24px;
	justify-content: flex-start;
}
@media (max-width: 600px) {
	.rkm-header .rkm-instruments { padding: 6px 16px; }
}

/* ---- Per-page last-updated line (inc/chrome.php appends it to the content) --- */
.rkm-updated {
	margin-top: clamp(34px, 4vw, 52px);
	padding-top: 16px;
	border-top: 1px solid rgba(230, 242, 236, .14);
	font-size: 13px;
	line-height: 1.6;
	color: var(--wp--preset--color--muted);
}
.rkm-updated .rkm-num { color: var(--wp--preset--color--acid); }

/* UX pass: box-sizing for the raw (wp:html) components */
[class*="rkm-"],
[class*="rkm-"]::before,
[class*="rkm-"]::after {
	box-sizing: border-box;
}

/* UX pass: the interior-page glow must not widen the document */
.entry-content > .rkm-breadcrumb:first-child::after {
	left: 0;
	transform: none;
	width: 100%;
	height: 460px;
	top: -64px;
	background:
		radial-gradient(700px 330px at 24% 20%, rgba(143, 169, 222, .17), transparent 64%),
		radial-gradient(470px 240px at 4% 4%, rgba(230, 242, 236, .08), transparent 62%);
}
@media (max-width: 600px) {
	.entry-content > .rkm-breadcrumb:first-child::after {
		height: 360px;
	}
}

/* UX pass: one left edge for the whole text column */
.entry-content > p,
.entry-content > ul,
.entry-content > ol,
.rkm-section > p,
.rkm-section > ul,
.rkm-section > ol {
	/* Match the content column exactly (NOT `none`: core sets max-width in the same
	   low-specificity :where() rule, so `none` here made prose full-bleed while the
	   headings stayed at 720px — the same misalignment mirrored). */
	max-width: var(--wp--style--global--content-size, 740px);
}

/* UX pass: game-tile density */
.rkm-game__media {
	aspect-ratio: 4 / 5;
}
.rkm-games {
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
}
@media (max-width: 480px) {
	.rkm-games {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 12px;
	}
	.rkm-game__body { padding: 11px 11px 12px; }
	.rkm-game__media--css { font-size: 24px; }
	.rkm-game__rtp { right: 7px; bottom: 7px; padding: 3px 7px; font-size: 11px; }
	/* At ~150px the pill label would wrap; keep it one line and full width. */
	.rkm-game__play { width: 100%; padding: 10px 8px; font-size: 12px; }
}

/* UX pass: game cards keep their CTA on one baseline */
.rkm-game {
	display: flex;
	flex-direction: column;
}
.rkm-game__body {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
}
.rkm-game__meta {
	margin-bottom: 2px;
}
.rkm-game__play {
	margin-top: auto;
}


/* =========================================================================== */
/* =========================================================================== */

/* Long-word safety net */
h1, h2, h3, .rkm-brand__word, .rkm-brand__cluster {
	overflow-wrap: break-word;
	word-break: normal;
	hyphens: auto;
}
h1 { -webkit-hyphens: auto; }

/* ---- Focus ring: alarm-blue, visible on every surface -------------------------- */
:where(a, button, summary, input, select, textarea, [tabindex]):focus-visible {
	outline: 3px solid var(--wp--preset--color--acid);
	outline-offset: 2px;
	border-radius: var(--rkm-r-md);
}

/* Dot-accent mark (header/footer wordmark) */
.rkm-brand__mark {
	flex: 0 0 auto;
	position: relative;
	width: 20px;
	height: 20px;
	display: grid;
	place-items: center;
	border-radius: 50%;
	border: 1px solid rgba(231, 184, 154, .38);
	background: transparent;
	transition: border-color .16s ease, box-shadow .16s ease;
}
.rkm-brand__mark::after {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--wp--preset--color--acid);
}
.rkm-brand:hover .rkm-brand__mark {
	border-color: var(--wp--preset--color--acid);
	box-shadow: 0 0 0 3px rgba(230, 242, 236, .1);
}
/* the old inline SVG monogram is no longer shipped; belt-and-braces if cached */
.rkm-brand__mark svg { display: none; }

/* ---- Game-category grid (the hub's primary navigation) --------------------
   Four equal cards on desktop, two on tablet, one on phone. Each card is a whole
   link (44px+ tap target by construction) with a mono count in num. */
.rkm-catgrid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
	gap: 14px;
	list-style: none;
	margin: 24px 0 0;
	padding-left: 0;
}
.rkm-cat {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 7px;
	padding: 20px 18px 18px;
	border-radius: var(--rkm-r-md);
	background: var(--wp--preset--gradient--card);
	border: 1px solid rgba(230, 242, 236, .14);
	transition: border-color .16s ease, transform .16s ease, background .16s ease;
}
.rkm-cat:hover { border-color: rgba(231, 184, 154, .42); transform: translateY(-2px); }
.rkm-cat__ico {
	width: 38px;
	height: 38px;
	display: grid;
	place-items: center;
	border-radius: var(--rkm-r-md);
	background: rgba(143, 169, 222, .14);
	border: 1px solid rgba(143, 169, 222, .3);
	font-size: 19px;
	line-height: 1;
}
.rkm-cat__title {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 17px;
	font-weight: 400;
	letter-spacing: -.4px;
	color: var(--wp--preset--color--heading);
}
.rkm-cat__title a { color: inherit; text-decoration: none; }
/* Stretch the title link over the whole card so the entire tile is clickable. */
.rkm-cat__title a::after { content: ""; position: absolute; inset: 0; border-radius: var(--rkm-r-md); }
.rkm-cat__sub { font-size: 13.5px; line-height: 1.55; color: var(--wp--preset--color--muted); margin: 0; }
.rkm-cat__count {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12.5px;
	color: var(--wp--preset--color--acid);
}
@media (prefers-reduced-motion: reduce) {
	.rkm-cat:hover { transform: none; }
}

/* ---- Live-dealer table list ----------------------------------------------
   A list, not a grid: live tables are read by limit and language, both of which
   are figures, so they belong in a mono column that lines up vertically. */
.rkm-tables { display: grid; gap: 10px; list-style: none; padding-left: 0; margin: 22px 0 0; }
.rkm-tbl {
	display: grid;
	grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr) auto;
	align-items: center;
	gap: 8px 16px;
	padding: 14px 16px;
	border-radius: var(--rkm-r-md);
	background: var(--wp--preset--gradient--card);
	border: 1px solid rgba(255, 255, 255, .06);
}
.rkm-tbl__name { font-weight: 600; font-size: 15px; color: var(--wp--preset--color--contrast); }
.rkm-tbl__prov { font-size: 13px; color: var(--wp--preset--color--muted); }
.rkm-tbl__lim {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 13.5px;
	color: var(--wp--preset--color--mint);
	white-space: nowrap;
}
@media (max-width: 600px) {
	.rkm-tbl { grid-template-columns: 1fr auto; }
	.rkm-tbl__prov { grid-column: 1; }
	.rkm-tbl__lim { grid-column: 2; grid-row: 1 / span 2; }
}

/* ---- Crash-multiplier ladder (aviator) -----------------------------------
   Illustrates how a crash round ends, with the round-outcome bands the page
   explains in prose. Decorative bars only — no live data, no promised result. */
.rkm-ladder { display: grid; gap: 8px; list-style: none; padding-left: 0; margin: 22px 0 0; }
.rkm-ladder li {
	display: grid;
	grid-template-columns: 62px 1fr auto;
	align-items: center;
	gap: 12px;
	font-size: 14px;
	color: var(--wp--preset--color--body);
}
.rkm-ladder .x {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 14.5px;
	color: var(--wp--preset--color--mint);
}
.rkm-ladder .bar {
	height: 9px;
	border-radius: var(--rkm-r-md);
	background: rgba(255, 255, 255, .07);
	overflow: hidden;
}
.rkm-ladder .bar i {
	display: block;
	height: 100%;
	border-radius: var(--rkm-r-md);
	background: var(--wp--preset--gradient--coral);
}
.rkm-ladder .n { font-family: var(--wp--preset--font-family--mono); font-size: 13px; color: var(--wp--preset--color--muted); }

/* ---- Provider marks: wordmark chips, never a real brand logo file --------- */
.rkm-provider {
	display: grid;
	place-items: center;
	padding: 0 14px;
	border-radius: var(--rkm-r-md);
	background: rgba(255, 255, 255, .035);
	border: 1px solid rgba(230, 242, 236, .16);
	font-family: var(--wp--preset--font-family--heading);
	font-size: 12.5px;
	font-weight: 400;
	letter-spacing: 0;
	text-align: center;
	color: var(--wp--preset--color--dim);
}

/* ---- Inline TOC on the long guide pages ---------------------------------- */
.rkm-toc {
	margin: 26px 0 0;
	padding: 18px 20px;
	border-radius: var(--rkm-r-md);
	background: rgba(255, 255, 255, .03);
	border-left: 3px solid var(--wp--preset--color--acid);
}
.rkm-toc p { margin: 0 0 10px; font-size: 13px; font-weight: 700; letter-spacing: .4px; text-transform: uppercase; color: var(--wp--preset--color--muted); }
.rkm-toc ul { margin: 0; padding-left: 18px; display: grid; gap: 6px; }
.rkm-toc li { font-size: 14.5px; }

/* ---- UX pass: chip rail, category grid, wide catalogue --------------------
   Found by shooting the built pages at 360/768/1024/1440. See polish_game.py. */

/* `.rkm-provider` is display:grid, so an unstyled `.rkm-chips` container stacked the
   studio marks one per row. This is a chip RAIL. */
.rkm-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 18px 0 0;
}
.rkm-chips .rkm-provider {
	height: 44px;
	min-width: 138px;
	flex: 0 1 auto;
}
@media (max-width: 420px) {
	.rkm-chips .rkm-provider { min-width: 0; flex: 1 1 calc(50% - 5px); }
}

/* Four category cards in a 740px column: 260px lands on 2x2, not 3 + orphan. */
.rkm-catgrid {
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
}

/* The catalogue grids get the wide column (see the alignwide wrappers in the page
   markup); inside it, ask for a denser tile so a row reads as a shelf. */
/* 272px resolves to FOUR tiles in the 1260px wide column, three at 1024 and two at */
.alignwide > .rkm-games,
.alignwide .rkm-games {
	grid-template-columns: repeat(auto-fit, minmax(272px, 1fr));
}

/* Azerbaijani headlines are long, so the last word of a hero regularly falls to a
   line of its own ("...Kazino / AZ"). Let the browser even the lines out instead of
   leaving a one-word widow under a 56px headline. */
h1, h2 { text-wrap: balance; }
.rkm-lead { text-wrap: pretty; }


/* =========================================================================== */

/* Squared geometry: knock ~40% off every inherited card radius. */
.rkm-cat,
.rkm-cat__title a::after,
.rkm-card,
.rkm-game,
.rkm-panel,
.rkm-note,
.rkm-steps li,
.rkm-faq,
.rkm-offer { border-radius: var(--rkm-r-md); }
.rkm-cat__ico,
.rkm-game__thumb,
.rkm-provider,
.rkm-chip { border-radius: var(--rkm-r-md); }

/* Wordmark: "game" is the weight-carrying half on this domain (royale-kazinom.com),
   so the emphasis order is flipped versus the sibling's "Royale"-first lockup. */
.rkm-brand__lock { gap: 4px; }
.rkm-brand__word {
	font-weight: 700;
	letter-spacing: -.2px;
	text-transform: lowercase;
}
.rkm-brand__cluster {
	font-weight: 500;
	letter-spacing: .6px;
	text-transform: lowercase;
	color: var(--wp--preset--color--muted);
}
.rkm-brand:hover .rkm-brand__cluster { color: var(--wp--preset--color--dim); }

/* Mono figures: Space Mono runs small at a given px, so nudge the tracking in
   and the brightness up — every number on this site is a claim being cited. */
.rkm-num,
.rkm-num * {
	font-family: var(--wp--preset--font-family--mono);
	letter-spacing: -.2px;
	font-variant-numeric: tabular-nums;
	color: var(--wp--preset--color--mint);
}

/* Ambient field: two cold alarm-blue washes instead of the inherited warm pair.
   Muted to .07/.05 because on a #0e1a36 canvas anything stronger greys the ink
   out and costs body copy its 4.5:1. */
.wp-site-blocks::before {
	background:
		radial-gradient(1100px 560px at 82% -10%, rgba(230, 242, 236, .07), transparent 62%),
		radial-gradient(820px 460px at 8% 2%, rgba(143, 169, 222, .05), transparent 58%);
}

/* Hairline rims read better than glows in a monochrome palette. */
.rkm-badge { border-radius: var(--rkm-r-md); }
:root {
	--rkm-card-border: 1px solid rgba(230, 242, 236, .1);
	--rkm-card-border-strong: 1px solid rgba(230, 242, 236, .2);
}

/* Provider chip rows */
.rkm-chips {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
}
.rkm-chips .rkm-provider {
	display: inline-flex;
	width: auto;
	height: auto;
	min-height: 44px;
	padding: 10px 16px;
	flex: 0 0 auto;
}

/* Step lists */
.rkm-steps {
	list-style: none;
	padding-left: 0;
	margin: 24px 0 0;
	display: grid;
	gap: 14px;
	counter-reset: none;
}
.rkm-steps > li::marker { content: none; }
@media (min-width: 780px) {
	.rkm-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
.rkm-step__num { display: block; }
.rkm-step__title { margin-top: 0; }

/* Crash-mechanics panel */
.rkm-flight {
	position: relative;
	padding: 24px 22px;
	border-radius: var(--rkm-r-md);
	background: var(--wp--preset--gradient--card);
	border: var(--rkm-card-border);
	overflow: hidden;
}

/* RTP badge: work in BOTH slots it gets authored into */
.rkm-game__meta .rkm-game__rtp,
.rkm-game__body .rkm-game__rtp {
	position: static;
	right: auto;
	bottom: auto;
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
}
/* The meta row is space-between with provider + tag + badge; let it wrap on the
   narrow tracks rather than squeeze the RTP figure out of legibility. */
.rkm-game__meta {
	flex-wrap: wrap;
	gap: 6px 8px;
}

/* Card labels outside the art: same escape, same fix */
.rkm-game__meta .rkm-tag,
.rkm-game__body .rkm-tag,
.rkm-tbl .rkm-tag,
.rkm-compare .rkm-tag,
p .rkm-tag,
li .rkm-tag {
	position: static;
	top: auto;
	left: auto;
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	background: rgba(230, 242, 236, .09);
	border: 1px solid rgba(230, 242, 236, .16);
	/* `muted`, not `dim`. The ground here is a COMPOSITE — a 9% bone wash over whatever
	   panel the tag lands on — so no palette-level checker can see the pair. Measured on
	   the raised panel it composites to rgb(43,58,85), where dim (#8494b4) is 4.38:1 and
	   muted (#93a3c2) is 5.21:1. dim is this palette's 12px legal-line ink; a badge was
	   never its job. */
	color: var(--wp--preset--color--muted);
	letter-spacing: .3px;
	font-weight: 700;
	/* 10px/800 with tracking is at the edge of legible; the badge exemption from the
	   15px prose floor is not a reason to sit at the floor of that exemption either. */
	font-size: 11.5px;
}
/* the semantic variants keep their own ink wherever they sit */
.rkm-game__meta .rkm-tag--hot,
.rkm-game__body .rkm-tag--hot,
p .rkm-tag--hot,
li .rkm-tag--hot {
	background: var(--rkm-alarm-deep);
	border-color: var(--rkm-alarm-deep);
	color: #FFFFFF;
}
.rkm-game__meta .rkm-tag--jackpot,
.rkm-game__body .rkm-tag--jackpot,
p .rkm-tag--jackpot,
li .rkm-tag--jackpot {
	background: var(--wp--preset--gradient--acid);
	border-color: transparent;
	color: var(--wp--preset--color--ink);
}

/* Card monogram tile */
.rkm-game__mono,
.rkm-game__media--css > span:not([class]) {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400;
	font-size: clamp(30px, 8vw, 44px);
	letter-spacing: 1px;
	line-height: 1;
	color: rgba(231, 184, 154, .3);
	user-select: none;
}
/* A monogram needs far less room than a poster: the inherited 3/4 portrait well left
   a ~370px empty column above a 3-line card body. Squarer reads as a shelf label. */
.rkm-game .rkm-game__media--css {
	aspect-ratio: 5 / 4;
}
@media (max-width: 480px) {
	.rkm-game .rkm-game__media--css { aspect-ratio: 4 / 3; }
}

/* Highlight column on a NATIVE core/table */
.rkm-table--hi3 thead th:nth-child(3),
.rkm-table--hi3 tbody td:nth-child(3) {
	background: rgba(230, 242, 236, .08);
	color: var(--wp--preset--color--acid);
	font-weight: 700;
}

/* =========================================================================== */

/* Wordmark: the jeton beside the letter */
.rkm-brand__lock {
	gap: 2px;
	align-items: flex-start;
	flex-direction: column;
}
.rkm-brand__word {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400;
	font-size: 20px;
	line-height: 1.05;
	letter-spacing: -0.4px;
	text-transform: none;
	color: var(--wp--preset--color--heading);
	transition: color .18s ease;
}
.rkm-brand__cluster {
	font-family: var(--wp--preset--font-family--mono);
	font-weight: 400;
	font-size: 10.5px;
	letter-spacing: 2.4px;
	text-transform: uppercase;
	color: var(--wp--preset--color--coral-lit);
}
.rkm-brand:hover .rkm-brand__word { color: var(--wp--preset--color--acid); }
.rkm-brand:hover .rkm-brand__cluster { color: var(--wp--preset--color--acid-lit); }
.rkm-brand--footer .rkm-brand__word { font-size: 19px; }
@media (max-width: 520px) {
	.rkm-brand__word { font-size: 17.5px; }
	.rkm-brand__cluster { font-size: 9.5px; letter-spacing: 1.8px; }
}

/* The jeton mark: engraved rim, no dot */
.rkm-brand__mark {
	width: 30px;
	height: 30px;
	border: 0;
	background: transparent;
	box-shadow: none;
	display: grid;
	place-items: center;
	flex: 0 0 auto;
}
.rkm-brand__mark::after { content: none; }
.rkm-brand__mark svg { display: block; }
.rkm-brand:hover .rkm-brand__mark { border-color: transparent; box-shadow: none; }
.rkm-shield { transition: transform .18s ease; }
.rkm-brand:hover .rkm-shield { transform: translateY(-1.5px); }
@media (max-width: 780px) {
	.rkm-brand__mark { width: 26px; height: 26px; }
	.rkm-shield { width: 26px; height: 26px; }
}
.rkm-brand { align-items: center; gap: 10px; }

/* Sharp geometry */
.rkm-card,
.rkm-card-raised,
.rkm-panel,
.rkm-cat,
.rkm-game,
.rkm-offer,
.rkm-flight,
.rkm-demo,
.rkm-statbox,
.rkm-stat-tile,
.rkm-quicklink,
.rkm-feature,
.rkm-step,
.rkm-alert,
.rkm-note,
.rkm-warn,
.rkm-jackpot,
.rkm-promo,
.rkm-table-wrap,
.rkm-toc { border-radius: var(--rkm-r-md); }
.rkm-cat__ico,
.rkm-quicklink__icon,
.rkm-feature__icon,
.rkm-game__thumb { border-radius: var(--rkm-r-md); }
.rkm-chip,
.rkm-provider,
.rkm-tag,
.rkm-badge,
.rkm-rating-pill,
.rkm-game__rtp,
.rkm-demo__badge,
.rkm-langtag,
.rkm-filter button,
.rkm-eyebrow { border-radius: var(--rkm-r-md); }
.rkm-game__media,
.rkm-game__media--css { border-radius: 0 0 0 0; }
.wp-block-button__link,
.wp-element-button { border-radius: var(--rkm-r-md); }

/* ---- Focus ring ------------------------------------------------------------- */
:where(a, button, summary, input, select, textarea, [tabindex]):focus-visible {
	outline: 3px solid var(--wp--preset--color--acid);
	outline-offset: 2px;
	border-radius: var(--rkm-r-md);
}

/* Ambient field */
.wp-site-blocks::before {
	background:
		radial-gradient(900px 620px at 6% 104%, rgba(143, 169, 222, .16), transparent 62%),
		radial-gradient(1100px 300px at 60% -6%, rgba(230, 242, 236, .07), transparent 60%);
}

/* Sora headline guards */
h1, h2 {
	text-wrap: balance;
	-webkit-hyphens: auto;
	hyphens: auto;
}
h1 { word-break: break-word; }

/* ---- In-prose links: plat rule that thickens ------------------------------ */
.entry-content a:not(.wp-element-button):not(.rkm-game__play):not(.rkm-quicklink):not(.rkm-cat) {
	text-decoration-color: rgba(231, 184, 154, .5);
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	transition: text-decoration-color .16s ease, text-decoration-thickness .16s ease;
}
.entry-content a:not(.wp-element-button):not(.rkm-game__play):not(.rkm-quicklink):not(.rkm-cat):hover {
	text-decoration-color: var(--wp--preset--color--acid);
	text-decoration-thickness: 2px;
}

/* ---- Route/quick-nav tiles --------------------------------------------------
   Square-ish glyph plates in a neon tint rather than the sibling's warm accent
   circles, and four across at wide width. */
.rkm-cat__ico,
.rkm-feature__icon,
.rkm-quicklink__icon {
	width: 44px;
	height: 44px;
	font-size: 22px;
	background: rgba(143, 169, 222, .16);
	border-color: rgba(143, 169, 222, .34);
	color: var(--wp--preset--color--acid);
}
.rkm-catgrid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 258px), 1fr)); gap: 14px; }
.rkm-cat { padding: 20px 18px 18px; }
.rkm-cat__title { font-size: 17.5px; }
.rkm-stats { gap: 14px; }
.rkm-stat__num { font-size: clamp(27px, 3.2vw, 38px); }
@media (max-width: 520px) {
	.rkm-eyebrow { font-size: 11px; letter-spacing: 1.4px; line-height: 1.5; }
}

/* Promo-code field (new on this domain) */
.rkm-promo {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
	padding: 16px 18px;
	background: var(--wp--preset--gradient--card-raised);
	border: 1px solid rgba(230, 242, 236, .24);
}
.rkm-promo__label {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 11.5px;
	letter-spacing: 1.8px;
	text-transform: uppercase;
	color: var(--wp--preset--color--muted);
	flex: 1 1 100%;
	margin: 0;
}
.rkm-promo__code {
	font-family: var(--wp--preset--font-family--mono);
	font-size: clamp(19px, 2.4vw, 25px);
	font-weight: 700;
	letter-spacing: 2px;
	color: var(--wp--preset--color--heading);
	padding: 10px 16px;
	border: 1px dashed rgba(231, 184, 154, .45);
	border-radius: var(--rkm-r-md);
	background: rgba(2, 17, 14, .5);
	user-select: all;
}
.rkm-promo__copy {
	font: inherit;
	font-weight: 700;
	font-size: 14px;
	min-height: 44px;
	padding: 11px 20px;
	border: 1px solid transparent;
	border-radius: var(--rkm-r-md);
	cursor: pointer;
	color: var(--wp--preset--color--ink);
	background: var(--wp--preset--gradient--acid);
	touch-action: manipulation;
	transition: filter .16s ease, transform .12s ease;
}
.rkm-promo__copy:hover { filter: brightness(1.06); }
.rkm-promo__copy:active { transform: translateY(1px); }
.rkm-promo__done {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12.5px;
	color: var(--wp--preset--color--sun);
	margin: 0;
	flex: 1 1 100%;
}
.rkm-promo__done[hidden] { display: none; }
@media (prefers-reduced-motion: reduce) {
	.rkm-promo__copy { transition: none; }
	.rkm-promo__copy:active { transform: none; }
	.rkm-shield, .rkm-brand__word { transition: none; }
	.rkm-brand:hover .rkm-shield { transform: none; }
}

/* Completing the half-inherited card families */
.rkm-catgrid,
.rkm-features,
.rkm-steps {
	display: grid;
	gap: 16px;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 258px), 1fr));
	margin: 4px 0 0;
}
.rkm-steps { grid-template-columns: repeat(auto-fit, minmax(min(100%, 270px), 1fr)); }

.rkm-cat {
	display: block;
	background: var(--wp--preset--gradient--card);
	border: var(--rkm-card-border);
	text-decoration: none;
	transition: transform .18s ease, border-color .18s ease;
}
.rkm-cat:hover { transform: translateY(-3px); border-color: rgba(231, 184, 154, .34); }
.rkm-cat__title {
	display: block;
	font-weight: 700;
	color: var(--wp--preset--color--contrast);
	margin: 12px 0 6px;
	line-height: 1.3;
}
.rkm-cat__sub,
.rkm-cat__text {
	display: block;
	font-size: 13.5px;
	line-height: 1.55;
	color: var(--wp--preset--color--muted);
	margin: 0;
}
.rkm-cat__count {
	display: inline-block;
	margin-top: 10px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 11.5px;
	letter-spacing: 1.2px;
	text-transform: uppercase;
	color: var(--wp--preset--color--coral-lit);
}
/* A whole card that is a link must not also underline its own label. */
a.rkm-cat,
a.rkm-cat:hover { text-decoration: none; }

@media (prefers-reduced-motion: reduce) {
	.rkm-cat { transition: none; }
	.rkm-cat:hover { transform: none; }
}

/* Trust-bar segments */
.rkm-instruments__legal {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 3px 8px;
}
.rkm-seg { display: inline-flex; align-items: center; gap: 5px; }
/* The separator is a TRAILING pseudo-element, not a leading one: as a ::before it */
.rkm-seg:not(:last-child)::after {
	content: "·";
	margin-left: 8px;
	color: rgba(231, 184, 154, .42);
}
.rkm-seg--narrow { display: none; }
@media (max-width: 560px) {
	.rkm-seg--wide { display: none; }
	.rkm-seg--narrow { display: inline-flex; }
	.rkm-seg--clock { display: none; }
	.rkm-instruments__legal { gap: 2px 7px; line-height: 1.45; }
	.rkm-seg:not(:last-child)::after { margin-left: 7px; }
	/* The clock is display:none here, so the RG link becomes the last VISIBLE
	   segment while :last-child still matches the hidden clock — which left a
	   trailing middot dangling after the final item. Silence it explicitly. */
	.rkm-seg:nth-last-child(2)::after { content: none; }
}

/* Core's own outline button style has to work too */
.wp-block-button.is-style-outline > .wp-block-button__link,
.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-background) {
	background: rgba(255, 255, 255, .02) !important;
	color: var(--wp--preset--color--contrast) !important;
	border: 1px solid rgba(231, 184, 154, .3) !important;
	box-shadow: none;
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover {
	border-color: var(--wp--preset--color--acid) !important;
	color: var(--wp--preset--color--acid-lit) !important;
	filter: none;
}


/* =========================================================================== */

/* Variable-width guard */
:root {
	font-stretch: 88%;
}

/* Baloo 2 display guards */
h1, h2, h3, .rkm-brand__word, .rkm-eyebrow--serif {
	font-variation-settings: "SOFT" 20, "WONK" 0, "opsz" 96;
	font-optical-sizing: none;
}
h1, h2, h3 {
	overflow-wrap: break-word;
	word-break: normal;
	hyphens: auto;
	text-wrap: balance;
}
h1 {
	-webkit-hyphens: auto;
	font-weight: 700;
}
/* Body copy keeps automatic optical sizing: at 17.5px Baloo 2 is never used,
   but a serif <strong> inside prose inherits the setting otherwise. */
p, li, dd, figcaption {
	font-variation-settings: normal;
}

/* Ambient field */
.wp-site-blocks::before {
	background:
		radial-gradient(680px 520px at 14% -10%, rgba(231, 184, 154, .16), transparent 64%),
		radial-gradient(900px 420px at 92% 106%, rgba(143, 169, 222, .16), transparent 62%);
}
::selection {
	background: rgba(231, 184, 154, .32);
	color: #f6f9ff;
}

/* Engraved plate geometry */
.rkm-card, .rkm-panel, .rkm-cat, .rkm-step, .rkm-faq, .rkm-toc, .rkm-note, .rkm-warn,
.rkm-table-wrap, .rkm-statbox, .rkm-shot, .rkm-kyc__row, .rkm-rail__plate {
	border-radius: var(--rkm-r-md);
}
.rkm-toc { border-radius: var(--rkm-r-md); }
.rkm-game__thumb, .rkm-game__media--css { border-radius: 0 0 0 0; }
.wp-element-button, .rkm-game__play, .rkm-quicklink { border-radius: var(--rkm-r-md); }
.rkm-badge, .rkm-eyebrow, .rkm-seg--clock { border-radius: var(--rkm-r-md); }

/* Wordmark: a monolithic display lockup */
.rkm-brand { align-items: center; gap: 11px; }
.rkm-brand__lock {
	gap: 3px;
	align-items: flex-start;
	flex-direction: column;
}
.rkm-brand__word {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400;
	font-size: 21px;
	line-height: 1;
	letter-spacing: 0;
	text-transform: none;
	color: var(--wp--preset--color--heading);
	transition: color .18s ease;
}
.rkm-brand__cluster {
	font-family: var(--wp--preset--font-family--body);
	font-weight: 500;
	font-size: 11px;
	letter-spacing: .5px;
	text-transform: none;
	color: var(--wp--preset--color--muted);
	transition: color .18s ease;
}
.rkm-brand__mark {
	width: 34px;
	height: 34px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 0;
	background: none;
	box-shadow: none;
}
.rkm-brand__mark::after { content: none; }
.rkm-brand__mark svg { display: block; }
.rkm-shield rect[stroke], .rkm-shield path { transition: stroke .18s ease; }
.rkm-brand:hover .rkm-brand__word { color: var(--wp--preset--color--acid-lit); }
.rkm-brand:hover .rkm-brand__cluster { color: var(--wp--preset--color--acid); }
.rkm-brand:hover .rkm-shield { transform: none; }
.rkm-brand--footer .rkm-brand__word { font-size: 19px; }

/* Buttons: a struck blue plate */
.wp-element-button, .wp-block-button__link {
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .38), inset 0 -1px 0 rgba(5, 9, 26, .32);
	text-transform: none;
	letter-spacing: .1px;
}
.wp-element-button:hover, .wp-block-button__link:hover { filter: brightness(1.05); }
.wp-element-button:active, .wp-block-button__link:active { transform: translateY(1px); }

/* ---- In-prose links: blue light rule that thickens ---------------------------- */
.entry-content a:not(.wp-element-button):not(.rkm-game__play):not(.rkm-quicklink):not(.rkm-cat):not(.rkm-seg) {
	color: var(--wp--preset--color--acid-lit);
	text-decoration-color: rgba(232, 255, 160, .5);
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}
.entry-content a:not(.wp-element-button):not(.rkm-game__play):not(.rkm-quicklink):not(.rkm-cat):not(.rkm-seg):hover {
	color: #c4d0e6;
	text-decoration-color: currentColor;
	text-decoration-thickness: 2px;
}

/* Wizard-step ledger */
.rkm-steps {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	margin: 26px 0 8px;
	padding: 0;
	list-style: none;
	border-left: 1px solid rgba(231, 184, 154, .28);
}
.rkm-steps > li, .rkm-step {
	position: relative;
	margin: 0;
	padding: 4px 0 26px 54px;
	border: 0;
	background: none;
	border-radius: var(--rkm-r-md);
}
.rkm-steps > li:last-child, .rkm-step:last-child { padding-bottom: 4px; }
/* The numeral comes from the MARKUP (.rkm-step__num), not a CSS counter: the plate
   is content a screen reader should hear as part of the step, and a counter would
   also double up with the span the page authors already write. */
.rkm-step__num {
	position: absolute;
	left: -18px;
	top: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: var(--rkm-r-md);
	background: var(--wp--preset--gradient--acid);
	color: var(--wp--preset--color--ink);
	font-family: var(--wp--preset--font-family--mono);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: -0.5px;
	box-shadow: 0 6px 18px rgba(0, 0, 0, .5);
}
.rkm-step__title {
	display: block;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400;
	font-size: 19px;
	line-height: 1.25;
	color: var(--wp--preset--color--heading);
	margin: 4px 0 6px;
}
.rkm-step__text, .rkm-steps > li > p {
	margin: 0 0 8px;
	color: var(--wp--preset--color--body);
	font-size: 16.5px;
	line-height: 1.62;
}
.rkm-step__hint {
	display: block;
	font-size: 14px;
	color: var(--wp--preset--color--muted);
}
.rkm-step__hint .rkm-num { color: var(--wp--preset--color--mint); }

/* CSS mock-UI frame ("skrinşot" without a screenshot) */
.rkm-shot {
	margin: 22px 0;
	border: 1px solid rgba(230, 242, 236, .14);
	background: linear-gradient(168deg, #16274a 0%, #0e1a36 100%);
	overflow: hidden;
	box-shadow: 0 18px 44px rgba(0, 0, 0, .55);
}
.rkm-shot__bar {
	display: flex;
	align-items: center;
	gap: 7px;
	padding: 10px 14px;
	background: #1d3157;
	border-bottom: 1px solid rgba(230, 242, 236, .1);
}
.rkm-shot__dot {
	width: 9px;
	height: 9px;
	border-radius: 50%;
	background: rgba(230, 242, 236, .22);
	flex: none;
}
.rkm-shot__url {
	margin-left: 6px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 11px;
	letter-spacing: .2px;
	color: var(--wp--preset--color--muted);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.rkm-shot__body {
	display: grid;
	gap: 12px;
	padding: 20px 18px 22px;
}
.rkm-shot__label {
	display: block;
	font-family: var(--wp--preset--font-family--body);
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: .4px;
	text-transform: none;
	color: var(--wp--preset--color--muted);
	margin-bottom: 6px;
}
.rkm-shot__field {
	display: flex;
	align-items: center;
	min-height: 44px;
	padding: 0 14px;
	border: 1px solid rgba(230, 242, 236, .16);
	border-radius: var(--rkm-r-md);
	background: rgba(230, 242, 236, .04);
	font-family: var(--wp--preset--font-family--mono);
	font-size: 13px;
	color: var(--wp--preset--color--dim);
}
.rkm-shot__field--focus {
	border-color: var(--wp--preset--color--acid);
	box-shadow: 0 0 0 3px rgba(231, 184, 154, .18);
}
.rkm-shot__check {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	font-size: 14px;
	line-height: 1.5;
	color: var(--wp--preset--color--body);
}
.rkm-shot__box {
	flex: none;
	width: 18px;
	height: 18px;
	margin-top: 2px;
	border-radius: var(--rkm-r-md);
	border: 1px solid var(--wp--preset--color--acid-deep);
	background: rgba(231, 184, 154, .12);
}
.rkm-shot__btn {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	border-radius: var(--rkm-r-md);
	background: var(--wp--preset--gradient--acid);
	color: var(--wp--preset--color--ink);
	font-weight: 700;
	font-size: 15px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .38);
}
.rkm-shot__cap, .rkm-figcap {
	margin: 8px 0 0;
	font-size: 13px;
	line-height: 1.5;
	color: var(--wp--preset--color--muted);
}
.rkm-shot__cap strong { color: var(--wp--preset--color--dim); }

/* KYC document checklist */
.rkm-kyc {
	display: grid;
	gap: 10px;
	margin: 22px 0;
	padding: 0;
	list-style: none;
}
.rkm-kyc__row {
	display: grid;
	grid-template-columns: 34px 1fr auto;
	gap: 14px;
	align-items: center;
	padding: 14px 16px;
	border: 1px solid rgba(230, 242, 236, .12);
	background: rgba(230, 242, 236, .03);
}
.rkm-kyc__ico {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: var(--rkm-r-md);
	border: 1px solid rgba(231, 184, 154, .38);
	background: rgba(231, 184, 154, .1);
	color: var(--wp--preset--color--acid);
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	font-weight: 700;
}
.rkm-kyc__name {
	display: block;
	font-weight: 600;
	color: var(--wp--preset--color--heading);
	font-size: 16px;
	line-height: 1.35;
}
.rkm-kyc__meta {
	display: block;
	margin-top: 3px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	color: var(--wp--preset--color--muted);
}
.rkm-kyc__state {
	font-size: 12.5px;
	font-weight: 600;
	letter-spacing: .3px;
	padding: 5px 10px;
	border-radius: var(--rkm-r-md);
	white-space: nowrap;
	border: 1px solid rgba(255, 216, 74, .4);
	background: rgba(255, 216, 74, .12);
	color: var(--wp--preset--color--sun);
}
.rkm-kyc__state--wait {
	border-color: rgba(231, 184, 154, .4);
	background: rgba(231, 184, 154, .12);
	color: var(--wp--preset--color--acid);
}
@media (max-width: 560px) {
	.rkm-kyc__row {
		grid-template-columns: 34px 1fr;
	}
	.rkm-kyc__state {
		grid-column: 2;
		justify-self: start;
	}
}

/* ---- Mascot plate ----------------------------------------------------------- */
.rkm-rail {
	margin: 24px 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
}
.rkm-rail__plate {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	width: 100%;
	padding: 18px 18px 0;
	border: 1px solid rgba(231, 184, 154, .22);
	border-radius: var(--rkm-r-md);
	background:
		radial-gradient(420px 220px at 50% 8%, rgba(231, 184, 154, .12), transparent 68%),
		linear-gradient(168deg, #16274a 0%, #0e1a36 100%);
}
.rkm-rail__art { max-width: 100%; height: auto; }
.rkm-rail__cap {
	margin: 0;
	text-align: center;
	font-size: 13px;
	color: var(--wp--preset--color--muted);
}
.rkm-rail--inline { max-width: 320px; margin-inline: auto; }

/* ---- Trust rail: blue hairline separators ------------------------------------ */
.rkm-seg:not(:last-child)::after {
	background: rgba(231, 184, 154, .38);
}
.rkm-instruments {
	border-bottom: 1px solid rgba(231, 184, 154, .2);
}

/* ---- Focus ring: blue, visible on teal and on blue fills ----------------- */
:where(a, button, summary, input, select, textarea, [tabindex]):focus-visible {
	outline: 3px solid var(--wp--preset--color--acid-lit);
	outline-offset: 2px;
	border-radius: var(--rkm-r-md);
}

/* ---- Motion ----------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
	.rkm-cat:hover, .rkm-card:hover, .wp-element-button:active { transform: none; }
	* { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}


/* ===========================================================================
   STEP-7 UX pass — fixes measured on the built pages (shoot_qeyd.js)
   =========================================================================== */

/* Table / figure captions */
.wp-element-caption,
figcaption.wp-element-caption,
.wp-block-table figcaption {
	color: var(--wp--preset--color--dim);
	font-size: 13px;
	line-height: 1.55;
	margin-top: 10px;
	padding-left: 12px;
	border-left: 2px solid rgba(231, 184, 154, .38);
	text-align: left;
}

/* Buttons must wrap */
.wp-element-button,
.wp-block-button__link {
	white-space: normal;
	overflow-wrap: anywhere;
	text-align: center;
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	max-width: 100%;
}
.wp-block-button {
	max-width: 100%;
}


/* =========================================================================== */
.rkm-stat-tile {
	border-radius: var(--rkm-r-md);
	display: flex;
	flex-direction: column;
	gap: 6px;
}
.rkm-stat__num,
.rkm-stat__label {
	display: block;
}
.rkm-stat__num {
	font-size: clamp(22px, 2.4vw, 27px);
	letter-spacing: -0.3px;
}
.rkm-stat__label {
	line-height: 1.35;
	color: var(--wp--preset--color--muted);
}


/* =========================================================================== */
.rkm-nav { display: flex; align-items: center; min-width: 0; }
.rkm-nav ul { list-style: none; margin: 0; padding: 0; }
.rkm-nav__list { display: flex; align-items: center; gap: 2px; }
.rkm-nav__list a,
.rkm-nav__panel a {
	display: flex;
	align-items: center;
	font-size: 14px;
	font-weight: 600;
	color: var(--wp--preset--color--body);
	text-decoration: none;
	padding: 10px 12px;
	min-height: 44px;
	border-radius: var(--rkm-r-md);
	white-space: nowrap;
	transition: color .16s ease, background-color .16s ease;
}
.rkm-nav__list a:hover,
.rkm-nav__panel a:hover,
.rkm-nav__list a[aria-current="page"],
.rkm-nav__panel a[aria-current="page"] {
	color: var(--wp--preset--color--contrast);
	background: rgba(230, 242, 236, .08);
}
.rkm-nav__list a[aria-current="page"],
.rkm-nav__panel a[aria-current="page"] {
	box-shadow: inset 0 -2px 0 var(--wp--preset--color--acid);
}
/* The current-page marker above is a RESTING box-shadow at specificity 0,2,1, and the
   site's focus ring is also a box-shadow but only 0,1,1 (`a:focus-visible`). So the
   marker won the cascade and REPLACED the ring: tabbing onto the nav item for the page
   you are already on produced the rose underline and nothing else, and because the
   outline in that rule is deliberately transparent (kept only for forced-colors), the
   one nav link on every page had no visible focus indicator at all — WCAG 2.4.7/1.4.11.
   The same trap is already documented one section down for the primary CTA; the
   aria-current nav item was the case that got missed. Both shadows are composed here
   rather than the ring overriding the marker, so the current page stays identifiable
   while it is focused. Specificity 0,3,1 beats the marker. */
.rkm-nav__list a[aria-current="page"]:focus-visible,
.rkm-nav__panel a[aria-current="page"]:focus-visible {
	box-shadow:
		inset 0 -2px 0 var(--wp--preset--color--acid),
		0 0 0 2px var(--wp--preset--color--base),
		0 0 0 5px #8fa9de;
	outline: 3px solid transparent;
	outline-offset: 3px;
}
@media (forced-colors: active) {
	.rkm-nav__list a[aria-current="page"]:focus-visible,
	.rkm-nav__panel a[aria-current="page"]:focus-visible {
		outline: 3px solid CanvasText;
		box-shadow: none;
	}
}
.rkm-nav__mobile { display: none; position: relative; }
.rkm-nav__mobile > summary {
	display: flex;
	align-items: center;
	gap: 8px;
	min-height: 44px;
	padding: 10px 14px;
	border: 1px solid rgba(230, 242, 236, .2);
	border-radius: var(--rkm-r-md);
	font-size: 14px;
	font-weight: 600;
	color: var(--wp--preset--color--contrast);
	cursor: pointer;
	list-style: none;
	white-space: nowrap;
}
.rkm-nav__mobile > summary::-webkit-details-marker { display: none; }
.rkm-nav__bars {
	width: 16px;
	height: 2px;
	background: var(--wp--preset--color--acid);
	box-shadow: 0 5px 0 var(--wp--preset--color--acid), 0 -5px 0 var(--wp--preset--color--acid);
}
.rkm-nav__mobile[open] > summary { border-color: rgba(231, 184, 154, .5); }
.rkm-nav__panel {
	position: absolute;
	right: 0;
	top: calc(100% + 8px);
	z-index: 60;
	min-width: 246px;
	display: flex;
	flex-direction: column;
	gap: 2px;
	padding: 8px;
	background: var(--wp--preset--color--surface-lift);
	border: 1px solid rgba(230, 242, 236, .14);
	border-radius: var(--rkm-r-md);
	box-shadow: 0 24px 64px rgba(0, 0, 0, .7);
}
.rkm-nav__panel a { white-space: normal; }

@media (max-width: 860px) {
	.rkm-nav__list { display: none; }
	.rkm-nav__mobile { display: block; }
}

/* Header at phone widths */
@media (max-width: 520px) {
	.rkm-brand__cluster { display: none; }
	.rkm-brand__word { font-size: 18px; }
	.rkm-brand { gap: 8px; }
	.rkm-brand__mark { width: 30px; height: 30px; }
	.rkm-brand__mark svg { width: 26px; height: 26px; }
}
@media (max-width: 400px) {
	.rkm-brand__word { font-size: 16.5px; }
	.rkm-nav__mobile > summary { padding: 10px 11px; }
}

/* Stat tiles: the value is not always a numeral */
.rkm-statbox {
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 152px), 1fr));
}
.rkm-stat__num {
	font-size: clamp(19px, 2.1vw, 25px);
	/* break-word, not anywhere: a mid-word break in a 25px display grotesque reads as a
	   rendering fault. Long values are shortened in the copy instead; this is the
	   safety net for the next author who forgets. */
	overflow-wrap: break-word;
	line-height: 1.12;
}


/* =========================================================================== */

/* Undo the inherited variable-width hack */
:root {
	font-stretch: normal;
}
.rkm-num, .rkm-ledger__v, .rkm-flow__meta, code, kbd, samp {
	font-family: var(--wp--preset--font-family--mono);
	font-variant-numeric: tabular-nums;
	letter-spacing: -0.2px;
	font-size: .95em;
}

/* Baloo 2 guards */
h1, h2, h3, .rkm-brand__word, .rkm-eyebrow--serif {
	font-variation-settings: normal;
	font-optical-sizing: auto;
}
h1 { font-weight: 700; letter-spacing: -0.9px; }
h2 { font-weight: 600; }
h3 { font-weight: 600; letter-spacing: -0.3px; }
h1, h2, h3 {
	overflow-wrap: break-word;
	word-break: normal;
	hyphens: auto;
	text-wrap: balance;
}
p, li, dd, figcaption { font-variation-settings: normal; }

/* Ambient field */
.wp-site-blocks::before {
	background:
		linear-gradient(180deg, rgba(231, 184, 154, .13) 0%, rgba(231, 184, 154, 0) 42%),
		radial-gradient(760px 460px at 4% 108%, rgba(143, 169, 222, .17), transparent 66%);
}
::selection {
	background: rgba(231, 184, 154, .3);
	color: #f6f9ff;
}

/* ---- Ledger geometry: rounder than the plate it forked from ------------------ */
.rkm-card, .rkm-panel, .rkm-cat, .rkm-step, .rkm-faq, .rkm-toc, .rkm-note, .rkm-warn,
.rkm-table-wrap, .rkm-statbox, .rkm-shot, .rkm-method, .rkm-ledger, .rkm-flow,
.rkm-cutoff, .rkm-check {
	border-radius: var(--rkm-r-md);
}
.rkm-toc { border-radius: var(--rkm-r-md); }
.rkm-game__thumb, .rkm-game__media--css { border-radius: 0 0 0 0; }
.wp-element-button, .wp-block-button__link, .rkm-game__play, .rkm-quicklink {
	border-radius: var(--rkm-r-md);
}
.rkm-badge, .rkm-eyebrow, .rkm-seg--clock, .rkm-chip { border-radius: var(--rkm-r-md); }

/* ---- Wordmark: shield + a tracked grotesk lockup ---------------------------- */
.rkm-brand { align-items: center; gap: 10px; }
.rkm-brand__lock { gap: 2px; align-items: flex-start; flex-direction: column; }
.rkm-brand__word {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400;
	font-size: 19.5px;
	line-height: 1;
	letter-spacing: .3px;
	text-transform: uppercase;
	color: var(--wp--preset--color--heading);
	transition: color .18s ease;
}
.rkm-brand__cluster {
	font-family: var(--wp--preset--font-family--body);
	font-weight: 500;
	font-size: 10.5px;
	letter-spacing: .4px;
	text-transform: none;
	color: var(--wp--preset--color--muted);
	transition: color .18s ease;
}
.rkm-brand__mark {
	width: 34px; height: 34px;
	display: inline-flex; align-items: center; justify-content: center;
	border: 0; background: none; box-shadow: none;
}
.rkm-brand__mark::after { content: none; }
.rkm-brand__mark svg { display: block; }
.rkm-shield path[stroke], .rkm-shield circle { transition: stroke .18s ease; }
.rkm-brand:hover .rkm-brand__word { color: var(--wp--preset--color--acid-lit); }
.rkm-brand:hover .rkm-brand__cluster { color: var(--wp--preset--color--acid); }
.rkm-brand:hover .rkm-shield { transform: none; }
.rkm-brand--footer .rkm-brand__word { font-size: 17.5px; }

/* ---- Buttons: a minted coin edge -------------------------------------------- */
.wp-element-button, .wp-block-button__link {
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .34), inset 0 -1px 0 rgba(5, 9, 26, .3);
	text-transform: none;
	letter-spacing: .15px;
	font-weight: 700;
}
.wp-element-button:hover, .wp-block-button__link:hover { filter: brightness(1.05); }
.wp-element-button:active, .wp-block-button__link:active { transform: translateY(1px); }

/* ---- In-prose links --------------------------------------------------------- */
.entry-content a:not(.wp-element-button):not(.rkm-game__play):not(.rkm-quicklink):not(.rkm-cat):not(.rkm-seg) {
	color: var(--wp--preset--color--acid-lit);
	text-decoration-color: rgba(232, 255, 160, .46);
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}
.entry-content a:not(.wp-element-button):not(.rkm-game__play):not(.rkm-quicklink):not(.rkm-cat):not(.rkm-seg):hover {
	color: #c4d0e6;
	text-decoration-color: currentColor;
	text-decoration-thickness: 2px;
}

/* .rkm-flow — the transfer-rail schematic */
.rkm-flow {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	align-items: stretch;
	margin: 24px 0;
	padding: 18px 16px;
	list-style: none;
	background: var(--wp--preset--gradient--card);
	border: 1px solid rgba(230, 242, 236, .12);
}
.rkm-flow__node {
	position: relative;
	flex: 1 1 190px;
	min-width: 0;
	margin: 0;
	padding: 14px 15px;
	border-radius: var(--rkm-r-md);
	background: rgba(230, 242, 236, .04);
	border: 1px solid rgba(230, 242, 236, .1);
	border-top: 2px solid var(--wp--preset--color--coral);
}
.rkm-flow__node--money { border-top-color: var(--wp--preset--color--acid); }
.rkm-flow__node + .rkm-flow__node::before {
	content: "";
	position: absolute;
	left: -10px; top: 50%;
	width: 10px; height: 2px;
	background: rgba(231, 184, 154, .5);
}
.rkm-flow__step {
	display: block;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 10.5px;
	letter-spacing: 1.2px;
	text-transform: uppercase;
	color: var(--wp--preset--color--coral-lit);
	margin-bottom: 6px;
}
.rkm-flow__node--money .rkm-flow__step { color: var(--wp--preset--color--acid-lit); }
.rkm-flow__name {
	display: block;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400;
	font-size: 16.5px;
	line-height: 1.24;
	color: var(--wp--preset--color--heading);
	margin-bottom: 5px;
}
.rkm-flow__meta {
	display: block;
	font-size: 13px;
	line-height: 1.55;
	color: var(--wp--preset--color--body);
}
.rkm-flow__who {
	display: block;
	margin-top: 7px;
	font-size: 12.5px;
	color: var(--wp--preset--color--muted);
}
@media (max-width: 700px) {
	.rkm-flow { flex-direction: column; }
	.rkm-flow__node { flex: 1 1 auto; }
	.rkm-flow__node + .rkm-flow__node::before {
		left: 50%; top: -10px;
		width: 2px; height: 10px;
	}
}

/* .rkm-methods — the method plates */
.rkm-methods {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(238px, 1fr));
	gap: 14px;
	margin: 24px 0;
	padding: 0;
	list-style: none;
}
.rkm-method {
	margin: 0;
	padding: 17px 17px 16px;
	background: var(--wp--preset--gradient--card-raised);
	border: 1px solid rgba(230, 242, 236, .11);
	border-left: 3px solid var(--wp--preset--color--acid);
}
.rkm-method--wallet { border-left-color: var(--wp--preset--color--coral); }
.rkm-method--crypto { border-left-color: var(--wp--preset--color--acid-deep); }
.rkm-method__name {
	display: block;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400;
	font-size: 17.5px;
	line-height: 1.2;
	color: var(--wp--preset--color--heading);
}
.rkm-method__type {
	display: block;
	margin: 5px 0 9px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 10.5px;
	letter-spacing: 1.1px;
	text-transform: uppercase;
	color: var(--wp--preset--color--coral-lit);
}
.rkm-method__text {
	margin: 0 0 9px;
	font-size: 14.5px;
	line-height: 1.58;
	color: var(--wp--preset--color--body);
}
.rkm-method__check {
	display: block;
	padding-top: 9px;
	border-top: 1px solid rgba(230, 242, 236, .1);
	font-size: 13px;
	line-height: 1.5;
	color: var(--wp--preset--color--muted);
}
.rkm-method__check b { color: var(--wp--preset--color--acid-lit); font-weight: 600; }

/* .rkm-ledger — labelled rows */
.rkm-ledger {
	margin: 22px 0;
	padding: 6px 0;
	border: 1px solid rgba(230, 242, 236, .12);
	background: rgba(230, 242, 236, .025);
}
.rkm-ledger__row {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 18px;
	align-items: baseline;
	padding: 13px 17px;
	border-bottom: 1px dashed rgba(230, 242, 236, .12);
}
.rkm-ledger__row:last-child { border-bottom: 0; }
.rkm-ledger__k {
	flex: 1 1 210px;
	min-width: 0;
	font-size: 14.5px;
	line-height: 1.5;
	color: var(--wp--preset--color--body);
}
.rkm-ledger__v {
	flex: 0 1 auto;
	font-size: 14.5px;
	font-weight: 500;
	color: var(--wp--preset--color--mint);
	text-align: right;
}
.rkm-ledger__v--open {
	font-family: var(--wp--preset--font-family--body);
	font-size: 13.5px;
	letter-spacing: 0;
	color: var(--wp--preset--color--coral-lit);
	font-style: normal;
}

/* ---- .rkm-cutoff — the Baku processing window -------------------------------- */
.rkm-cutoff {
	display: flex;
	gap: 13px;
	align-items: flex-start;
	margin: 22px 0;
	padding: 15px 17px;
	background: rgba(143, 169, 222, .08);
	border: 1px solid rgba(143, 169, 222, .26);
}
.rkm-cutoff__clock {
	flex: none;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .4px;
	padding: 5px 9px;
	border-radius: var(--rkm-r-md);
	color: #080e20;
	background: var(--wp--preset--color--coral);
}
.rkm-cutoff p { margin: 0; font-size: 14.5px; line-height: 1.6; color: var(--wp--preset--color--body); }

/* ---- .rkm-check — "nəyi yoxlamalı" list -------------------------------------- */
.rkm-check {
	margin: 22px 0;
	padding: 16px 18px 16px 20px;
	list-style: none;
	background: var(--wp--preset--gradient--card);
	border: 1px solid rgba(230, 242, 236, .12);
	border-left: 3px solid var(--wp--preset--color--coral);
}
.rkm-check > li {
	position: relative;
	margin: 0 0 11px;
	padding-left: 26px;
	font-size: 15px;
	line-height: 1.6;
	color: var(--wp--preset--color--body);
}
.rkm-check > li:last-child { margin-bottom: 0; }
.rkm-check > li::before {
	content: "";
	position: absolute;
	left: 0; top: .52em;
	width: 13px; height: 7px;
	border-left: 2px solid var(--wp--preset--color--coral);
	border-bottom: 2px solid var(--wp--preset--color--coral);
	transform: rotate(-45deg) translateY(-2px);
}

/* ---- Tables: numbers right, labels left ------------------------------------- */
.entry-content .wp-block-table td.rkm-num,
.entry-content .wp-block-table td .rkm-num { white-space: nowrap; }
.entry-content .wp-block-table th { color: var(--wp--preset--color--acid-lit); }

/* ---- Focus ring: blue, and legible ON a vermilion fill ----------------------- */
:where(a, button, summary, input, select, textarea, [tabindex]):focus-visible {
	outline: 2px solid var(--wp--preset--color--acid-lit);
	outline-offset: 2px;
	border-radius: var(--rkm-r-md);
}
.wp-element-button:focus-visible, .wp-block-button__link:focus-visible {
	outline: 2px solid #080e20;
	outline-offset: -4px;
	box-shadow: 0 0 0 3px rgba(232, 255, 160, .85);
}

/* ---- Motion ----------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
	.rkm-brand__word, .rkm-brand__cluster, .rkm-shield path[stroke], .rkm-shield circle,
	.wp-element-button, .wp-block-button__link { transition: none; }
}


/* =========================================================================== */

.rkm-eyebrow,
.rkm-chip--age,
.rkm-langtag,
.rkm-cat__ico,
.rkm-instruments__age {
	color: var(--wp--preset--color--acid-lit);
}

/* Figures are num, sitewide. The two exceptions are elements that paint their
   own light background and set their own dark ink — inheriting there would put a
   pale figure on a pale fill, which is the same bug in the other direction. */
.rkm-num {
	color: var(--wp--preset--color--mint);
}
/* `.rkm-updated .rkm-num` (two classes) outranks a bare `.rkm-num`, so the date
   line needs its own selector at the same specificity — the reason the first
   pass of this file left exactly one finding standing on all seven pages. */
.rkm-updated .rkm-num {
	color: var(--wp--preset--color--mint);
}

.rkm-cutoff__clock .rkm-num,
.rkm-step__num .rkm-num,
.rkm-shot__btn .rkm-num,
.wp-element-button .rkm-num,
.wp-block-button__link .rkm-num {
	color: inherit;
}

/* The cashier schematic's field labels are data labels, so they take the cyan
   voice rather than a paler blue. */
.rkm-shot__label {
	color: var(--wp--preset--color--coral-lit);
}

/* The wordmark's cluster tag: quieter than the word above it, and legible on
   both the header canvas and the deeper footer band. */
.rkm-brand__cluster {
	color: var(--wp--preset--color--dim);
}
.rkm-brand:hover .rkm-brand__cluster,
.rkm-brand:focus-visible .rkm-brand__cluster {
	color: var(--wp--preset--color--acid-lit);
}


/* ===========================================================================
   STEP-7 POLISH — header at phone widths   (appended last, wins)
   =========================================================================== */

/* One money CTA per screen. 781px is the sticky bar's own breakpoint (see */
@media (max-width: 781px) {
	.rkm-header__actions .wp-block-button:not(.rkm-btn-outline) {
		display: none;
	}
	.rkm-header__actions {
		gap: 8px;
	}
}

/* Prefer a word boundary. `anywhere` is kept out of the wrapping decision and
   only `break-word` remains, so a two-word Azerbaijani label wraps between the
   words instead of inside one. */
.wp-element-button,
.wp-block-button__link {
	overflow-wrap: break-word;
	word-break: normal;
}

/* =========================================================================== */

/* A. Baloo 2 is a single-weight, caps-only face */
h1,
h2,
h3,
h4,
.rkm-brand__word,
.rkm-plate__num,
.rkm-eyebrow--serif {
	font-weight: 400;
	font-variation-settings: normal;
	font-optical-sizing: auto;
	-webkit-font-smoothing: antialiased;
}
/* LEADING. The 0.94 / 1.0 above this line were inherited from the donor, whose display
   face was Bebas Neue: caps-only, essentially no descenders, so sub-1.0 leading was safe.
   Baloo 2 has lowercase, and its ink runs 1.036em above the baseline (İ, Ğ) and 0.218em
   below it (q, g, p, y, ğ) — so at leading 1.0 the second line's accents overlapped the
   first line's descenders by ~0.25em. 44 headings wrap to two lines at 360/768/1024px and
   Azerbaijani uses those glyphs in almost every sentence, so this was visible, not
   theoretical: the binding pair is ş/i, a cedilla directly above a dotted i.
   1.20 is not a guess — leading_rwa.js walks both lines of every wrapped heading glyph by
   glyph and measures the ink gap over horizontally OVERLAPPING pairs only. 1.16 still
   collides 8 times; 1.20 is the smallest value that clears everything (+0.018em to spare).
   Re-run `node leading_rwa.js` if the display face or the type scale ever changes. */
h1 { letter-spacing: 0.5px; line-height: 1.2; }
h2 { letter-spacing: 0.4px; line-height: 1.2; }
h3 { letter-spacing: 0.5px; line-height: 1.12; }
h4 { letter-spacing: 0.5px; }

/* Bebas has no lowercase, so a heading containing a lowercase word renders in */
h1, h2, h3, h4 {
	text-transform: uppercase;
	text-wrap: balance;
	overflow-wrap: break-word;
	word-break: normal;
	hyphens: manual;
}

/* Sentence-case is preserved where the "heading" is really prose: the FAQ */
.rkm-faq summary,
.rkm-step__title,
.rkm-faq__answer,
.rkm-cat__title,
.rkm-game__title {
	font-family: var(--wp--preset--font-family--body);
	font-weight: 600;
	text-transform: none;
	letter-spacing: 0;
	line-height: 1.35;
}

/* B. Ambient field */
.wp-site-blocks::before {
	background:
		linear-gradient(270deg, rgba(231, 184, 154, .14) 0%, rgba(231, 184, 154, 0) 38%),
		radial-gradient(680px 420px at 2% -6%, rgba(143, 169, 222, .15), transparent 68%);
}

/* C. The «1» anchor: this identity's dominant graphic anchor */
.rkm-plate {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 2px;
	margin: 0 0 6px;
	line-height: 1;
}
.rkm-plate__num {
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(84px, 17vw, 196px);
	line-height: 0.78;
	letter-spacing: 2px;
	color: var(--wp--preset--color--coral);
	background: linear-gradient(168deg, #b3c6ec 0%, #8fa9de 26%, #e7b89a 88%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	/* A hairline keeps the numerals from dissolving into the graphite where the
	   gradient reaches its darkest stop. */
	-webkit-text-stroke: 1px rgba(255, 194, 165, .16);
}
.rkm-plate__label {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12.5px;
	letter-spacing: 1.6px;
	text-transform: uppercase;
	color: var(--wp--preset--color--mint);
}
.rkm-plate--coral .rkm-plate__num {
	background: linear-gradient(168deg, #7fa0d8 0%, #b3c6ec 40%, #8fa9de 100%);
}
@supports not ((-webkit-background-clip: text) or (background-clip: text)) {
	.rkm-plate__num { -webkit-text-fill-color: currentColor; }
}
@media (forced-colors: active) {
	.rkm-plate__num {
		-webkit-text-fill-color: currentColor;
		-webkit-text-stroke: 0;
		background: none;
	}
}

/* D. Topline: the trust strip ABOVE the brand row */
.rkm-topline {
	background: var(--wp--preset--color--base-deep);
	border-bottom: 1px solid rgba(231, 184, 154, .18);
	padding: 7px 20px;
}
.rkm-topline__row {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 14px;
	max-width: 1200px;
	margin: 0 auto;
	font-size: 12px;
	line-height: 1.5;
	color: var(--wp--preset--color--body);
}
.rkm-topline__age {
	font-family: var(--wp--preset--font-family--mono);
	font-weight: 700;
	font-size: 11.5px;
	letter-spacing: .6px;
	color: var(--wp--preset--color--ink);
	background: var(--wp--preset--gradient--acid);
	border-radius: var(--rkm-r-md);
	padding: 2px 7px;
}
.rkm-topline .rkm-seg + .rkm-seg::before {
	content: "·";
	margin-right: 12px;
	color: var(--wp--preset--color--muted);
}
.rkm-topline .rkm-seg--rg {
	color: var(--wp--preset--color--acid-lit);
	text-decoration: underline;
	text-underline-offset: 2px;
	/* 44px targets are enforced globally; inside a 7px strip the hit area is
	   grown with padding rather than height so the strip keeps its proportion. */
	padding: 6px 2px;
}
.rkm-topline .rkm-seg--rg:hover { color: var(--wp--preset--color--coral-lit); }
.rkm-topline .rkm-seg--clock { margin-left: auto; }
.rkm-topline .rkm-num { color: var(--wp--preset--color--mint); letter-spacing: .4px; }
@media (max-width: 860px) {
	.rkm-topline .rkm-seg--wide { display: none; }
	.rkm-topline .rkm-seg--clock { margin-left: 0; }
}
@media (min-width: 861px) {
	.rkm-topline .rkm-seg--narrow { display: none; }
}

/* ---- E. Wordmark: the number is the brand --------------------------------- */
.rkm-brand__word {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 25px;
	letter-spacing: 0.8px;
	text-transform: uppercase;
	color: var(--wp--preset--color--heading);
}
.rkm-brand__num {
	color: var(--wp--preset--color--coral);
	/* The digits sit on the mono face so the brand's number reads as a figure —
	   the same rule the rest of the site follows for every numeral. */
	font-family: var(--wp--preset--font-family--mono);
	font-size: 21px;
	font-weight: 500;
	letter-spacing: -0.5px;
}
.rkm-brand__cluster {
	font-size: 10.5px;
	letter-spacing: 1.3px;
	text-transform: uppercase;
	color: var(--wp--preset--color--muted);
}
.rkm-brand__mark { display: inline-flex; flex: 0 0 auto; }

/* F. Route tiles on the pillar */
.rkm-routes {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(212px, 1fr));
	gap: 14px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.rkm-route__name {
	display: block;
	font-family: var(--wp--preset--font-family--heading);
	font-size: 22px;
	letter-spacing: 0.6px;
	text-transform: uppercase;
	color: var(--wp--preset--color--heading);
}
.rkm-route__sub {
	display: block;
	margin-top: 4px;
	font-size: 13.5px;
	line-height: 1.5;
	color: var(--wp--preset--color--body);
}
.rkm-route__idx {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 11.5px;
	letter-spacing: 1px;
	color: var(--wp--preset--color--acid-lit);
}

/* G. Platform table (/yukle) */
.rkm-plat__name {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 19px;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	color: var(--wp--preset--color--heading);
}
.rkm-plat__note {
	display: block;
	margin-top: 2px;
	font-size: 12.5px;
	color: var(--wp--preset--color--muted);
}

/* ---- H. The promo-code field, drawn rather than implemented ---------------
   Not an <input>: see inc/brand.php. The caret blinks only when the reader has
   not asked for reduced motion, and never carries meaning on its own. */
.rkm-codebox {
	background: var(--wp--preset--gradient--card-raised);
	border: 1px solid rgba(231, 184, 154, .22);
	border-radius: var(--rkm-r-md);
	padding: 18px 18px 14px;
	margin: 22px 0;
}
.rkm-codebox__label {
	margin: 0 0 10px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 11.5px;
	letter-spacing: 1.2px;
	text-transform: uppercase;
	color: var(--wp--preset--color--mint);
}
.rkm-codebox__field {
	display: flex;
	align-items: center;
	gap: 8px;
	min-height: 46px;
	padding: 0 14px;
	background: var(--wp--preset--color--base-deep);
	border: 1px dashed rgba(232, 255, 160, .45);
	border-radius: var(--rkm-r-md);
}
.rkm-codebox__caption {
	font-size: 14.5px;
	color: var(--wp--preset--color--muted);
}
.rkm-codebox__caret {
	width: 2px;
	height: 20px;
	background: var(--wp--preset--color--coral);
	animation: rkm-caret 1.15s steps(2, start) infinite;
}
@keyframes rkm-caret { to { opacity: 0; } }
.rkm-codebox__note {
	margin: 12px 0 0;
	font-size: 13px;
	line-height: 1.6;
	color: var(--wp--preset--color--dim);
}
@media (prefers-reduced-motion: reduce) {
	.rkm-codebox__caret { animation: none; }
}

/* ---- I. Focus ring: electric blue, visible on graphite AND on a vermilion fill -- */
:where(a, button, summary, input, select, textarea, [tabindex]):focus-visible {
	outline: 2px solid #f2cdb4;
	outline-offset: 2px;
	border-radius: var(--rkm-r-md);
}
.wp-element-button:focus-visible,
.wp-block-button__link:focus-visible {
	outline: 2px solid #0e1a36;
	outline-offset: 2px;
	box-shadow: 0 0 0 4px rgba(232, 255, 160, .9);
}

/* J. Buttons: a struck chip edge */
.wp-element-button,
.wp-block-button__link {
	border-radius: var(--rkm-r-md);
	text-transform: uppercase;
	letter-spacing: 0.5px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, .28);
}
.rkm-btn-outline .wp-block-button__link,
.rkm-btn-outline .wp-element-button {
	background: transparent;
	color: var(--wp--preset--color--acid-lit);
	border: 1px solid rgba(232, 255, 160, .55);
	box-shadow: none;
}
.rkm-btn-outline .wp-block-button__link:hover,
.rkm-btn-outline .wp-element-button:hover {
	color: var(--wp--preset--color--coral-lit);
	border-color: rgba(255, 194, 165, .75);
	background: rgba(231, 184, 154, .1);
}

/* ---- K. In-prose links: a blue rule that thickens ------------------------ */
.wp-block-post-content :is(p, li, dd, th, td, figcaption, blockquote) a:not(.wp-element-button):not(.rkm-seg):not(.rkm-quicklink),
.rkm-section p a:not(.wp-element-button):not(.rkm-quicklink) {
	color: var(--wp--preset--color--acid-lit);
	text-decoration-line: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
	transition: text-decoration-thickness .14s ease, color .14s ease;
}
.wp-block-post-content :is(p, li, dd, th, td, figcaption, blockquote) a:not(.wp-element-button):not(.rkm-seg):not(.rkm-quicklink):hover,
.rkm-section p a:not(.wp-element-button):not(.rkm-quicklink):hover {
	color: var(--wp--preset--color--coral-lit);
	text-decoration-thickness: 2px;
}

/* ---- L. Figures stay on the mono face ------------------------------------ */
.rkm-num,
.rkm-game__rtp,
.rkm-stat__num,
.rkm-offer__amount,
.rkm-step__num {
	font-family: var(--wp--preset--font-family--mono);
	font-variant-numeric: tabular-nums;
	letter-spacing: 0;
}
/* The COLOUR sweep deliberately skips .rkm-step__num. That one is not a figure sitting
   on the dark field: it is an ordinal inside a platinum-gradient plate, where `num`
   (a pale lume) measures 2.5:1 against the plate's darkest stop and ~1.1:1 against its
   lightest — the numeral all but disappears. The plate carries `ink`, like a button. */
.rkm-num,
.rkm-game__rtp,
.rkm-stat__num,
.rkm-offer__amount {
	color: var(--wp--preset--color--mint);
}
/* Restated AFTER the sweep. `.rkm-step__num .rkm-num { color: inherit }` already existed
   earlier in the file, but the sweep repainted the plate itself, so `inherit` resolved
   to the pale tone and the fix silently did nothing. */
.rkm-step__num,
.rkm-step__num .rkm-num {
	color: var(--wp--preset--color--ink);
}

/* ---- M. Small-screen: the plate must not push the hero off the fold ------- */
@media (max-width: 600px) {
	.rkm-plate__num { font-size: clamp(72px, 26vw, 108px); }
	.rkm-brand__cluster { display: none; }
	.rkm-brand__word { font-size: 22px; }
	.rkm-brand__num { font-size: 19px; }
}

/* ---- N. Reduced motion ---------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
	.wp-element-button,
	.wp-block-button__link,
	.wp-block-post-content a,
	.rkm-game__play { transition: none; }
}

/* ---- O. Offer headline (/bonus) ------------------------------------------
   The one string the Offer JSON-LD node reads. It is a headline, not a heading:
   the page's H2 above it names the section, this names the package. */
.rkm-offer__headline {
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(28px, 5vw, 42px);
	line-height: 1.04;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	color: var(--wp--preset--color--heading);
	margin: 0 0 10px;
}
.rkm-offer__headline .rkm-num {
	font-size: .82em;
	color: var(--wp--preset--color--coral);
}
.rkm-offer__sub {
	margin: 0 0 16px;
	font-size: 14.5px;
	line-height: 1.6;
	color: var(--wp--preset--color--body);
}

/* P. Warning callout: support BOTH authored shapes */
.rkm-warn > p {
	position: relative;
	margin: 0;
	padding: 13px 14px 13px 42px;
	border-radius: var(--rkm-r-md);
	background: var(--wp--preset--gradient--card);
	border: 1px solid rgba(255, 122, 129, .34);
	font-size: 15px;
	line-height: 1.55;
	color: var(--wp--preset--color--body);
}
.rkm-warn > p + p { margin-top: 10px; }
.rkm-warn > p::before {
	content: "\26A0\FE0E";
	position: absolute;
	left: 14px;
	top: 13px;
	color: var(--wp--preset--color--risk);
}
/* A <ul class="rkm-warn"> keeps its inherited blue marker; the paragraph form is
   used for the sharper "this will cost you money" warnings, so it gets alarm. */


/* =========================================================================== */

/* 1. Card art lettermark: legible, and not a synthetic bold */
.rkm-game__mono,
.rkm-game__media--css > span:not([class]) {
	color: rgba(255, 194, 165, .55);
	font-weight: 400;
}

/* ---- 2. Demo badge: accent blue is a FILL, not 13px text ------------------
   #e7b89a on the raised surface measured 3.35:1, under AA for body-size text.
   blue-soft is the token whose role is accent-as-text (5.8:1 here). */
.rkm-demo__badge {
	color: var(--wp--preset--color--acid-lit);
}

/* 3. The «1» anchor keeps real margin at its darkest stop */
.rkm-plate__num {
	background: linear-gradient(168deg, #b3c6ec 0%, #8fa9de 26%, #a6b4d0 88%);
	-webkit-background-clip: text;
	background-clip: text;
}
.rkm-plate--coral .rkm-plate__num {
	background: linear-gradient(168deg, #7fa0d8 0%, #b3c6ec 40%, #a6b4d0 100%);
	-webkit-background-clip: text;
	background-clip: text;
}

/* 4. Four route tiles want a 2x2 block */
@media (min-width: 620px) {
	.rkm-routes {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

/* 5. The game-card CTA owns its own colour */
.rkm-game__play,
.rkm-game__play:hover,
.rkm-game__play:focus {
	color: var(--wp--preset--color--ink);
	text-decoration: none;
}

/* ========================================================================== … */

/* ---- 1. Ambient field: a plat wedge from the BOTTOM-RIGHT plus one neon
   pool high on the LEFT. Deliberately the inverse of the inherited silhouette,
   so no two network pages share a background shape. ------------------------- */
.wp-site-blocks::before {
	background:
		linear-gradient(315deg, rgba(231, 184, 154, .17) 0%, rgba(231, 184, 154, 0) 42%),
		radial-gradient(720px 380px at 8% 4%, rgba(143, 169, 222, .13), transparent 70%),
		radial-gradient(520px 520px at 96% 92%, rgba(110, 40, 15, .22), transparent 72%);
}

/* ---- 3. The «1» anchor: a HOLLOW numeral, a dot and a tick rail ---------- … */
.rkm-one {
	position: relative;
	display: grid;
	grid-template-columns: auto auto minmax(0, 1fr);
	align-items: end;
	gap: 0 clamp(12px, 2vw, 22px);
	margin: 0 0 14px;
	line-height: 1;
}
.rkm-one__rail {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: 7px;
	padding-bottom: 1.15em;
	order: -1;
}
.rkm-one__rail i {
	display: block;
	width: 20px;
	height: 3px;
	border-radius: var(--rkm-r-md);
	background: var(--wp--preset--color--acid);
}
/* Descending weight down the rail, so it reads as a scale rather than as five
   identical dashes. Opacity is safe here: the rail is aria-hidden decoration and
   carries no information a reader has to resolve. */
.rkm-one__rail i:nth-child(2) { opacity: .72; width: 17px; }
.rkm-one__rail i:nth-child(3) { opacity: .52; width: 14px; }
.rkm-one__rail i:nth-child(4) { opacity: .34; width: 11px; }
.rkm-one__rail i:nth-child(5) { opacity: .2;  width: 8px; }
.rkm-one__num {
	position: relative;
	z-index: 1;
	font-family: var(--wp--preset--font-family--heading);
	/* The FLOOR is the mobile size: 24vw of a 360px phone is 86px, which clamps,
	   so the floor is the number to tune, not the ceiling. 138px keeps the anchor
	   dominant at 360px while leaving the mono label room beneath it. */
	font-size: clamp(138px, 24vw, 272px);
	line-height: 0.78;
	letter-spacing: -0.04em;
	color: var(--wp--preset--color--acid);
}
@supports (-webkit-text-stroke: 1px black) or (text-stroke: 1px black) {
	.rkm-one__num {
		color: transparent;
		-webkit-text-stroke: clamp(3px, 0.6vw, 6px) var(--wp--preset--color--acid);
	}
}
.rkm-one__dot {
	position: absolute;
	z-index: 2;
	top: .06em;
	left: calc(100% - .1em);
	width: clamp(16px, 2.6vw, 30px);
	height: clamp(16px, 2.6vw, 30px);
	border-radius: 50%;
	background: var(--wp--preset--color--coral);
	pointer-events: none;
}
.rkm-one__label {
	position: relative;
	z-index: 1;
	align-self: end;
	padding-bottom: 1.15em;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12.5px;
	letter-spacing: 1.4px;
	line-height: 1.55;
	text-transform: uppercase;
	color: var(--wp--preset--color--mint);
}
.rkm-one--coral .rkm-one__num { color: var(--wp--preset--color--coral-lit); }
@supports (-webkit-text-stroke: 1px black) or (text-stroke: 1px black) {
	.rkm-one--coral .rkm-one__num {
		color: transparent;
		-webkit-text-stroke: clamp(3px, 0.6vw, 6px) var(--wp--preset--color--coral-lit);
	}
}
.rkm-one--coral .rkm-one__dot { background: var(--wp--preset--color--acid); }
/* Below 620px the label cannot sit beside a 138px glyph without wrapping to one
   word per line, and the rail eats width the numeral needs. */
@media (max-width: 620px) {
	.rkm-one { grid-template-columns: auto minmax(0, 1fr); gap: 4px 14px; }
	.rkm-one__rail { flex-direction: row; justify-content: flex-start; padding: 0; grid-column: 1 / -1; order: 3; }
	.rkm-one__rail i { width: 3px; height: 16px; }
	.rkm-one__rail i:nth-child(2) { width: 3px; height: 13px; }
	.rkm-one__rail i:nth-child(3) { width: 3px; height: 11px; }
	.rkm-one__rail i:nth-child(4) { width: 3px; height: 8px; }
	.rkm-one__rail i:nth-child(5) { width: 3px; height: 6px; }
	.rkm-one__label { padding-bottom: 0; }
}
@media (forced-colors: active) {
	.rkm-one__num { color: currentColor; -webkit-text-stroke: 0; }
	.rkm-one__dot { background: currentColor; }
}

/* ---- 3a. The bracketed mark ---------------------------------------------- */
.rkm-mark { display: block; }
.rkm-brand__num {
	/* The «1» is the whole equity of this domain, so it takes the accent voice. … */
	color: var(--wp--preset--color--acid);
	font-family: var(--wp--preset--font-family--mono);
	font-size: 21px;
	font-weight: 500;
	letter-spacing: 0;
}
.rkm-brand__word { letter-spacing: -0.3px; font-size: 23px; }
.rkm-brand:hover .rkm-brand__num { color: var(--wp--preset--color--coral-lit); }

/* ---- 3b. The macro chip stack ------------------------------------------- … */
.rkm-rail { display: block; height: auto; }
.rkm-rail-slot {
	display: flex;
	justify-content: center;
	align-items: flex-end;
	flex: 0 0 auto;
}
@media (prefers-reduced-motion: no-preference) {
	.rkm-rail-slot .rkm-rail { transition: transform .35s ease; }
	.rkm-rail-slot:hover .rkm-rail { transform: translateY(-4px); }
}

/* ---- 4. Trust ribbon ------------------------------------------------------
   A pre-header strip above the brand row, so `.rkm-topline`'s own border-bottom
   is the correct edge and no `--under` variant is needed. The sibling's variant
   rule (border-top, gradient) is deleted rather than left in place: it matched
   nothing after the part was rewritten and would have shipped in every page's
   render-blocking stylesheet.

   What differs from the sibling is the ribbon's CONTENT, not just its place: it
   leads on "müstəqil bələdçi" (independent guide) instead of the negative
   "operator deyil", because the first thing a reader should learn is what this
   site IS. */
.rkm-topline__row { letter-spacing: .2px; }

/* ---- 5. Footer signature band --------------------------------------------- … */
.rkm-sig {
	position: relative;
	overflow: hidden;
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 0 4px;
}
.rkm-sig__lock {
	position: relative;
	display: flex;
	align-items: center;
	gap: 11px;
	flex-wrap: wrap;
}
.rkm-sig__word {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 21px;
	letter-spacing: 0.4px;
	text-transform: uppercase;
	color: var(--wp--preset--color--heading);
}
.rkm-sig__host {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12.5px;
	letter-spacing: .5px;
	color: var(--wp--preset--color--mint);
	padding: 3px 8px;
	border: 1px solid rgba(143, 169, 222, .32);
	border-radius: var(--rkm-r-md);
}
.rkm-sig__note {
	position: relative;
	max-width: 62ch;
	margin: 12px 0 0;
	font-size: 13.5px;
	line-height: 1.7;
	color: var(--wp--preset--color--dim);
}
@media (max-width: 620px) {
}

/* ---- 6. Payment rail as a full-width strip -------------------------------
   The sibling parked the rail inside a footer column, where five chips wrapped
   to three lines. Given the width it reads as one band. */
.rkm-payrail--strip {
	max-width: 1200px;
	margin: 30px auto 0;
	padding: 16px 18px;
	border-radius: var(--rkm-r-md);
	background: var(--wp--preset--gradient--card);
	border: 1px solid var(--wp--preset--color--rim);
}
.rkm-payrail__title {
	margin: 0 0 10px;
	font-size: 12px;
	letter-spacing: 1.2px;
	text-transform: uppercase;
	color: var(--wp--preset--color--muted);
}
.rkm-payrail--strip .rkm-payrail__row { flex-wrap: wrap; }
.rkm-payrail--strip .rkm-payrail__note {
	margin: 11px 0 0;
	font-size: 12.5px;
	line-height: 1.65;
	color: var(--wp--preset--color--dim);
}

/* ---- 7. Baloo 2's metrics --------------------------------------------------- … */
h1, h2, h3,
.rkm-offer__headline,
.rkm-sig__word,
.rkm-brand__word {
	text-wrap: balance;
}
h1 { word-break: normal; overflow-wrap: break-word; }
.rkm-offer__headline { letter-spacing: 0.2px; }

/* The trust ribbon is a sentence, not a label row: leave it in sentence case. */
.rkm-topline__row { text-transform: none; }

/* ---- 8. Number-string band (the hyper-focus row) -------------------------- … */
.rkm-variants {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(215px, 1fr));
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.rkm-variant {
	padding: 15px 16px;
	border-radius: var(--rkm-r-md);
	background: var(--wp--preset--gradient--card);
	border: 1px solid var(--wp--preset--color--rim);
}
.rkm-variant__key {
	display: block;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 15px;
	font-weight: 500;
	letter-spacing: .3px;
	color: var(--wp--preset--color--mint);
	margin-bottom: 6px;
}
.rkm-variant__what {
	margin: 0;
	font-size: 13.5px;
	line-height: 1.62;
	color: var(--wp--preset--color--body);
}
.rkm-variant--is .rkm-variant__key { color: var(--wp--preset--color--coral-lit); }
.rkm-variant--isnt .rkm-variant__key { color: var(--wp--preset--color--risk); }

/* ---- 9. Focus ring: TWO-TONE, because the accent is light ----------------- … */
a:focus-visible,
button:focus-visible,
.wp-block-button__link:focus-visible,
.wp-block-navigation-item__content:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible,
.rkm-quicklink:focus-visible,
.rkm-cat:focus-visible,
.rkm-game .rkm-game__play:focus-visible,
.rkm-faq > summary:focus-visible,
.rkm-skip-link:focus-visible {
	outline: 3px solid var(--wp--preset--color--heading);
	outline-offset: 2px;
	box-shadow: 0 0 0 2px var(--wp--preset--color--ink);
	border-radius: var(--rkm-r-md);
}

/* ---- 10. Hero composition, measured on the real render ------------------- … */
.rkm-rail { pointer-events: none; }
@media (min-width: 1080px) {
	.rkm-section:has(> .rkm-lead + .rkm-rail) { position: relative; }
	.rkm-lead + .rkm-rail {
		position: absolute;
		top: 232px;
		right: clamp(16px, 3.4vw, 96px);
		margin: 0 !important;
		z-index: 1;
	}
}

/* ---- 11. Section rhythm --------------------------------------------------- … */
.rkm-section {
	padding-top: clamp(34px, 5vw, 50px);
	padding-bottom: clamp(20px, 3.6vw, 32px);
}

/* ---- 12. Footer, restructured --------------------------------------------
   The payment band now OPENS the footer instead of sitting between the columns and
   the legal text, and the brand signature has moved out of a full-width band into
   the third column. Two reasons, one editorial and one structural:

     - the AZN rails (m10 / Kapital / ABB / Pasha) are the strongest local trust
       leaf on the page, and they were buried three blocks down;
     - the sibling's signature band relied on `overflow:hidden` to clip a giant ghost
       numeral. That numeral is gone here (repeating the hero's own device in the
       footer is the sibling's signature, not this one), so the band no longer needs
       to be full width, and it reads better as the last of three columns — brand
       last, in reading order, after the reader has been offered the routes.

   The chip stack closes the column at 132px: the same object as the hero's, one
   scale down, which is what ties the two ends of the page together without a second
   display-sized graphic. */
.rkm-payrail--strip { margin-top: 0; }
.rkm-footer__sigcol {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 10px;
}
.rkm-sig {
	position: static;
	overflow: visible;
	max-width: none;
	margin: 0;
	padding: 0;
}
.rkm-sig__note { max-width: 46ch; }
/* The stack is decorative and the column is narrow, so on a phone it would push the
   legal text down for nothing. */
@media (max-width: 781px) {
	.rkm-footer__sigcol .rkm-rail { display: none; }
}

/* ---- 13. Fixes found while authoring the pages ---------------------------
   Three inherited rules that were written for a layout this site does not use.

   a) `.rkm-compare` shipped `position: sticky; top: 124px`. It was authored for a
      SIDEBAR column on an ancestor theme; /yukle uses it full-width in the flow, and
      a full-width sticky block detaches and rides over the section below it while the
      reader scrolls past. Static is the correct behaviour for a block that is as wide
      as its container.
   b) `.rkm-plat__name` / `__note` existed with no CONTAINER, so three platform
      plates would have stacked as bare text. `.rkm-plats` lays them out as an
      auto-fit grid; the page pairs each with `.rkm-panel` for the card surface.
   c) `.rkm-store` is `inline-flex`, so a row of store labels needs a flex wrapper
      to gap and wrap properly on a phone. */
.rkm-compare { position: static; top: auto; }
.rkm-plats {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	gap: 14px;
	margin: 0 0 18px;
}
.rkm-plats .rkm-plat { display: flex; flex-direction: column; gap: 6px; }
.rkm-store-row {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0 0 6px;
}
/* The comparison rows on /yukle carry THREE cells (aspect · app · browser), while the
   inherited rule only coloured the first and last. Without this the middle cell —
   the app's own behaviour, i.e. the answer — was the only one left at inherited body
   colour, so the row read as if the browser column were the emphasis. */
.rkm-compare__row > span:nth-child(2) {
	color: var(--wp--preset--color--acid);
	font-weight: 700;
	text-align: right;
}
.rkm-compare__row > span:nth-child(3) { text-align: right; }
.rkm-compare__row > span:first-child { flex: 1 1 40%; text-align: left; }
@media (max-width: 560px) {
	.rkm-compare__row { flex-wrap: wrap; }
	.rkm-compare__row > span:first-child { flex: 1 1 100%; }
	.rkm-compare__row > span:nth-child(2),
	.rkm-compare__row > span:nth-child(3) { flex: 1 1 46%; text-align: left; }
}

/* ---- 14. The «1» anchor, corrected on the real render --------------------
   Two things only an eyeball pass catches (the UX harness checks overflow, tap
   targets and contrast — it cannot see that a composition has fallen apart):

   a) THE ACCENT DOT WAS STRANDED. It was `position:absolute; left:calc(100% - .1em)`
      inside `.rkm-one`, and `.rkm-one` is a GRID that spans the whole content
      column — so 100% was the column's width, not the numeral's. The dot landed
      ~600px to the right of the glyph it belongs to, reading as a stray green
      circle floating in the hero. Fixed by giving the grid named areas and putting
      the dot in the SAME cell as the numeral: an auto-width column is exactly as
      wide as the glyph, so `justify-self:end` parks the dot on the numeral's own
      right edge whatever the viewport does.
   b) THE TICK RAIL WAS CLUMPED at the numeral's baseline, because the grid is
      `align-items:end` and the rail had nothing to stretch against. It now spans
      the numeral's full height and distributes, which is what makes it read as a
      scale beside the figure rather than as four stray dashes.

   Named areas also let the 620px layout be declared rather than re-derived from
   `order`, which is what made the mobile rule hard to follow. */
.rkm-one {
	grid-template-columns: auto auto minmax(0, 1fr);
	grid-template-areas: "rail num label";
	align-items: stretch;
}
.rkm-one__rail {
	grid-area: rail;
	order: 0;
	justify-content: space-between;
	padding: 0.14em 0 0.3em;
	gap: 0;
}
.rkm-one__num { grid-area: num; align-self: end; }
.rkm-one__dot {
	grid-area: num;
	position: relative;
	justify-self: end;
	align-self: start;
	top: 0.06em;
	left: 0;
	margin-right: -0.34em;
}
.rkm-one__label { grid-area: label; align-self: end; }
@media (max-width: 620px) {
	.rkm-one {
		grid-template-columns: auto minmax(0, 1fr);
		grid-template-areas:
			"num  num"
			"rail label";
	}
	.rkm-one__rail { flex-direction: row; align-items: flex-end; gap: 4px; padding: 8px 0 0; }
	.rkm-one__label { align-self: center; }
}
/* The anchor's flag was crossing the last line of the lead paragraph. WP's
   constrained layout forces margin-INLINE with !important but leaves the block
   axis alone, so a plain margin-top is enough here. */
.rkm-one { margin-top: 26px; }

/* ---- 15. The comparison component needs a header row ---------------------
   Found by looking at the render, not by the harness. Without column labels the
   two value cells in each row are just two strings side by side, and the reader has
   to infer which one describes the app — the colour difference (plat vs jade-soft)
   carries the distinction, which is exactly the kind of meaning colour must never
   carry alone (WCAG 1.4.1). The page now authors a header row; this styles it and
   puts a hairline between the two value columns so they stop reading as one phrase. */
.rkm-compare__row--head {
	border-bottom: 1px solid rgba(231, 184, 154, .34);
	padding-bottom: 12px;
	margin-bottom: 4px;
}
.rkm-compare__row--head > span {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 11.5px;
	letter-spacing: 1.2px;
	text-transform: uppercase;
	font-weight: 500;
}
.rkm-compare__row--head > span:first-child { color: var(--wp--preset--color--muted); }
.rkm-compare__row--head > span:nth-child(2) { color: var(--wp--preset--color--acid); }
.rkm-compare__row--head > span:nth-child(3) { color: var(--wp--preset--color--sun-soft); }
/* Fixed value tracks + a divider: the two cells were running together into one
   sentence at 1024px and above. */
.rkm-compare__row > span:nth-child(2),
.rkm-compare__row > span:nth-child(3) { flex: 0 0 27%; }
.rkm-compare__row > span:nth-child(3) { padding-left: 14px; border-left: var(--rkm-hairline); }
@media (max-width: 560px) {
	.rkm-compare__row > span:nth-child(2),
	.rkm-compare__row > span:nth-child(3) { flex: 1 1 46%; }
	.rkm-compare__row > span:nth-child(3) { padding-left: 0; border-left: 0; }
	.rkm-compare__row--head { display: none; }
}
/* On a phone the header row is hidden (three columns of caps labels above a wrapped
   two-up grid is unreadable), so the labels move INTO the cells. Without this the
   mobile layout has the same defect the header row was added to fix — two values
   side by side distinguished only by colour. */
@media (max-width: 560px) {
	.rkm-compare__row:not(.rkm-compare__row--head) > span:nth-child(2)::before { content: "Tətbiqdə: "; }
	.rkm-compare__row:not(.rkm-compare__row--head) > span:nth-child(3)::before { content: "Brauzerdə: "; }
	.rkm-compare__row:not(.rkm-compare__row--head) > span:nth-child(2)::before,
	.rkm-compare__row:not(.rkm-compare__row--head) > span:nth-child(3)::before {
		display: block;
		font-family: var(--wp--preset--font-family--mono);
		font-size: 10.5px;
		letter-spacing: 1px;
		text-transform: uppercase;
		font-weight: 500;
		color: var(--wp--preset--color--muted);
	}
}

/* =========================================================================
   RZ IDENTITY LAYER — royale-kazinom.com · "Obsidian Blue & Platinum"
   Appended LAST on purpose. Two hard-won reasons:

   1. `:where()` has ZERO specificity, so an identity rule written that way loses
      to the inherited plain selector list it is meant to replace. Every override
      below is a plain selector at equal specificity, placed last, which is what
      actually wins.
   2. The inherited «1» anchor was a HOLLOW stroked numeral with an accent dot and
      a tick rail. This build's anchor is an editorial MASTHEAD, so the container
      and the numeral are fully re-declared here — including inside the
      `@supports (-webkit-text-stroke)` block, or the numeral stays transparent
      and the hero renders an empty column.
   ========================================================================= */

/* ---- 1. The «1» anchor as an editorial masthead --------------------------
   Reading top to bottom: a DOUBLE hairline, the display face figure with a mono ordinal
   at its shoulder, then a single hairline whose own gap carries the kicker. What
   makes this a graphic is the ruling, not the glyph — which is exactly why the
   figure is a plain solid display cut here and not hollow or doubled.

   Grid, not flow: the ordinal has to sit against the numeral's own left edge at
   every viewport. An `auto` column is exactly the glyph's width, so the ordinal
   parked in the SAME cell cannot drift — the trap on the sibling build was an
   absolutely-positioned dot resolving against the grid instead of the glyph and
   landing ~600px away. Nothing here is absolutely positioned. */
.rkm-one {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	grid-template-areas: "rules" "figure" "kicker";
	align-items: stretch;
	gap: 0;
	margin: 0 0 18px;
	line-height: 1;
}

/* The double rule. One element, two borders — a second element would be a second
   thing to keep in sync at four breakpoints. */
.rkm-one__rules {
	grid-area: rules;
	display: block;
	height: 7px;
	border-top: 2px solid var(--wp--preset--color--acid);
	border-bottom: 1px solid var(--wp--preset--color--rim);
}

.rkm-one__figure {
	grid-area: figure;
	display: grid;
	grid-template-columns: auto auto minmax(0, 1fr);
	align-items: start;
	gap: 0 clamp(6px, 1vw, 12px);
	padding: clamp(4px, 1vw, 10px) 0 0;
}

/* The ordinal mark. Mono, because the mono face is reserved for figures and an
   ordinal belongs to the figure it introduces. Aligned to the numeral's cap, not
   its baseline — an ordinal on the baseline reads as a footnote. */
.rkm-one__ord {
	font-family: var(--wp--preset--font-family--mono);
	font-size: clamp(15px, 2.4vw, 30px);
	font-weight: 500;
	line-height: 1;
	padding-top: .34em;
	color: var(--wp--preset--color--coral-lit);
}

/* The figure itself: Baloo 2 900, solid. The clamp FLOOR is the number to tune,
   not the ceiling — 24vw of a 360px phone is 86px, which clamps, so 128px is what
   a phone actually renders. */
.rkm-one__num {
	position: static;
	z-index: auto;
	font-family: var(--wp--preset--font-family--heading);
	font-size: clamp(128px, 23vw, 252px);
	font-weight: 400;
	line-height: 0.8;
	letter-spacing: -0.04em;
	color: var(--wp--preset--color--acid);
	-webkit-text-stroke: 0;
}

/* Undo the inherited hollow treatment. Without this the numeral keeps
   `color: transparent` from the earlier @supports block and disappears. */
@supports (-webkit-text-stroke: 1px black) or (text-stroke: 1px black) {
	.rkm-one__num {
		color: var(--wp--preset--color--acid);
		-webkit-text-stroke: 0;
	}
	.rkm-one--coral .rkm-one__num {
		color: var(--wp--preset--color--coral-lit);
		-webkit-text-stroke: 0;
	}
}

/* The kicker, set INTO the lower rule: the rule runs across the row and the text
   sits in it with the field showing through on both sides. A pseudo-element rule
   plus a padded span is the only way to get a real gap without hardcoding a text
   width. */
.rkm-one__kicker {
	grid-area: kicker;
	position: relative;
	display: flex;
	align-items: center;
	gap: 14px;
	margin-top: clamp(8px, 1.4vw, 16px);
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12.5px;
	font-weight: 500;
	letter-spacing: .14em;
	line-height: 1.5;
	text-transform: uppercase;
	color: var(--wp--preset--color--mint);
}
.rkm-one__kicker::after {
	content: "";
	flex: 1 1 auto;
	height: 1px;
	background: var(--wp--preset--color--rim);
}

.rkm-one--coral .rkm-one__num { color: var(--wp--preset--color--coral-lit); }
.rkm-one--coral .rkm-one__rules { border-top-color: var(--wp--preset--color--coral-lit); }
.rkm-one--coral .rkm-one__ord { color: var(--wp--preset--color--acid); }

@media (max-width: 620px) {
	.rkm-one { grid-template-columns: minmax(0, 1fr); gap: 0; }
	.rkm-one__figure { grid-template-columns: auto minmax(0, 1fr); }
	.rkm-one__kicker { letter-spacing: .1em; }
}

@media (forced-colors: active) {
	.rkm-one__num,
	.rkm-one__ord { color: currentColor; -webkit-text-stroke: 0; }
	.rkm-one__rules { border-top-color: currentColor; border-bottom-color: currentColor; }
}

/* ---- 2. The dark-bokeh field --------------------------------------------
   Replaces the sibling's chip-stack entirely. Decorative and aria-hidden, with an
   intrinsic width/height on the <svg> so it costs no layout shift. */
.rkm-bokeh {
	display: block;
	max-width: 100%;
	height: auto;
	border: 1px solid var(--wp--preset--color--rim);
	border-radius: var(--wp--preset--border-radius--medium, 4px);
}
.rkm-bokeh-slot {
	display: block;
	margin: clamp(18px, 3vw, 30px) 0 0;
}
/* In the footer signature band the field is a quiet strip, not a picture. */
.rkm-footer .rkm-bokeh { opacity: .78; }

/* ---- 3. The trust band, now BELOW the brand row -------------------------
   The inherited topline sat above the header and read as a browser chrome strip.
   Moved under the brand row it becomes the identity's structural device: a ruled
   band. Hairline top and bottom, no fill — a filled bar would compete with the
   masthead. */
.rkm-topline--under {
	margin-top: 4px;
	border-top: 1px solid var(--wp--preset--color--rim);
	border-bottom: 1px solid var(--wp--preset--color--rim);
	background: transparent;
}

/* ---- 4. The footer signature as a full-width masthead band --------------- */
.rkm-sig--band {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: 14px;
	padding-bottom: 26px;
	border-bottom: 1px solid var(--wp--preset--color--rim);
}
.rkm-sig--band .rkm-sig__lock {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 12px 16px;
}
.rkm-sig--band .rkm-sig__host {
	font-size: 12.5px;
	letter-spacing: .06em;
	color: var(--wp--preset--color--muted);
}
.rkm-sig--band .rkm-sig__note { max-width: 62ch; margin: 0; }
@media (min-width: 900px) {
	.rkm-sig--band {
		grid-template-columns: minmax(0, 22rem) minmax(0, 1fr);
		align-items: start;
		gap: 30px 44px;
	}
}

/* ---- 5. Editorial section rule ------------------------------------------
   A hairline above each section heading is this identity's one repeated device,
   which is what lets the pages carry no card borders and still read as ordered. */
.rkm-section > .wp-block-heading:first-child {
	padding-top: 16px;
	border-top: 1px solid var(--wp--preset--color--rim);
}

/* ---- 5b. GEOMETRY NORMALISATION -----------------------------------------
   The forked stylesheet carries ~20 pill and disc radii from an identity whose
   silhouette was round-cornered. This one is editorial: 0/4/18 with a 2px button, a
   mark that is a knocked-out SLAB, and the hairline as its structural device. A pill
   chip beside a square button is the kind of mismatch that reads as "unfinished"
   without ever being reportable as a bug.

   The worst of them was `.rkm-brand__mark { border-radius: 50% }`, which framed the
   new rounded display mark in a circle in the header and the footer signature.

   Round is KEPT where round is semantically right — a window-chrome dot on the mock
   UI frame, a bullet marker, an avatar — and nowhere else. */
.rkm-brand__mark,
.rkm-brand__mark::after { border-radius: var(--rkm-r-md); }

.rkm-chip,
.rkm-badge,
.rkm-eyebrow,
.rkm-seg--clock,
.rkm-game__rtp,
.rkm-kyc__state,
.rkm-cutoff__clock,
.rkm-filter a,
.rkm-chips .wp-block-button__link { border-radius: var(--rkm-r-md); }

.rkm-game__play { border-radius: var(--rkm-r-md); }

/* Bars with square ends read as RULES, which is this identity's one device. */
.rkm-rtpbar__track,
.rkm-rtpbar__fill,
.rkm-ladder .bar,
.rkm-ladder .bar i { border-radius: var(--rkm-r-md); }

/* The section-heading flourish becomes a plain rule rather than a rounded lozenge. */
.rkm-cta > h2::after { border-radius: var(--rkm-r-md); }

/* ---- 5a1. H1 AND H2 ARE MIXED CASE -------------------------------------
   theme.json sets `elements.heading.textTransform: none`, and it was losing. The
   stylesheet carries `h1, h2, h3, h4 { text-transform: uppercase }` under the comment
   "Bebas has no lowercase, so a heading containing a lowercase word renders in…" —
   a rule written for the FIRST site in this fork chain, whose display face was Bebas
   Neue. It has been inherited by every fork since, and element selectors in a
   stylesheet beat theme.json's generated `:root :where(h1)` output.

   Baloo 2 has a full lowercase, and mixed-case display headings are the premise of this
   identity, so h1 and h2 are reset here. h3/h4 KEEP their uppercase — they are set in
   the body face at label size, which is this build's deliberate inversion of the
   sibling convention. */
h1, h2,
h1.wp-block-heading, h2.wp-block-heading { text-transform: none; }

/* ---- 5a2. THE ANCHOR'S NUMERAL HAD A STALE GRID-AREA -------------------
   `.rkm-one__num { grid-area: num }` and `.rkm-one__label { grid-area: label }` refer to
   the SIBLING construction's `grid-template-areas: "rail num label"`. This build's
   container declares "rules" / "figure" / "kicker" instead, so `num` is an unknown area
   name: the numeral fell out of the flow and auto-placed into a new implicit column at
   the far right of the hero, orphaning the mono ordinal on the left. Same failure class
   as an absolutely-positioned element resolving against the grid instead of the glyph,
   and equally invisible to the UX harness — it checks overflow, tap targets and
   contrast, all of which still passed.

   The figure's children live in a NESTED grid, so they take auto placement. */
.rkm-one__num,
.rkm-one__ord { grid-area: auto; align-self: start; }

/* ---- 5c. STEEL AS TEXT, AND A CLAMP THAT CROSSES THE AA THRESHOLD -------
   `.rkm-offer__headline .rkm-num` was painted in `neon`. At 1440px the figure renders
   at 34px, which WCAG counts as large text (need 3.0) and 4.13:1 passes — so the
   desktop view looked fine. Its font-size is a clamp, and at 360px it resolves to
   23px, just under the 24px large-text threshold, where the requirement becomes 4.5
   and the same colour measures 3.61:1. A contrast bug that only exists at one
   breakpoint because a clamp crosses a WCAG boundary.

   The fix is not a bigger font — it is the palette rule: neon is a FILL, and
   `neon-lit` is the token reserved for the second accent AS TEXT. It measures
   6.9:1 here, so the component is compliant at every size the clamp can produce. */
.rkm-offer__headline .rkm-num { color: var(--wp--preset--color--coral-lit); }
.rkm-plate__num { color: var(--wp--preset--color--coral-lit); }

/* ---- 5d. THE DISPLAY FACE IS SET MIXED CASE ----------------------------
   The forked stylesheet uppercased seven components in the display face, which was
   right when that face was condensed. Baloo 2 is a WIDE techno grotesque, and this
   identity's premise is mixed-case display headings with the hairline as its device — so
   an uppercased display line is the one voice on the site that contradicts the rest.

   Two specific consequences fixed here:
     * the WORDMARK read "ROYALE 1" in the header and the footer signature while the
       Open Graph card renders "Royale Casino". A brand whose name is cased differently in
       the tab, the page and the social preview is a brand with three spellings;
     * `.rkm-offer__headline` is a 130-character SENTENCE (it is also the Offer
       schema's `name`), and a long uppercase display line is genuinely hard to read.

   Small labels keep their uppercase, but move to the BODY face — which is exactly the
   rule this theme already applies to h3. */
.rkm-brand__word,
.rkm-sig__word,
.rkm-offer__headline { text-transform: none; }

.rkm-brand__word { letter-spacing: -0.5px; }
.rkm-offer__headline { letter-spacing: -0.4px; }

.rkm-route__name,
.rkm-plat__name,
.rkm-provider {
	font-family: var(--wp--preset--font-family--body);
	font-weight: 700;
	letter-spacing: 0.07em;
}

/* ---- 6. THE FOCUS RING — TWO-TONE, AND THIS MUST BE LAST ----------------
   No single colour clears 3:1 on BOTH a near-black obsidian field and a light
   plat button fill. The sibling build shipped a ring that measured 1.31:1 on
   its own primary CTA for exactly this reason: one colour, two very different
   backgrounds. So the ring is two halves and always both:

     * `box-shadow: 0 0 0 2px ink`  — near-black, wins on a plat/jade FILL
       (12.5:1 and 9.1:1, asserted in contrast_rz.py);
     * `outline: 3px heading`       — near-white, wins on the FIELD and on cards
       (16.5:1 / 14.4:1 / 12.5:1).

   Whichever background the element has, one half of the ring is visible against
   it. Both halves are unconditional — a media query or an :is() wrapper here
   would reintroduce the specificity problem this block exists to solve. */
a:focus-visible,
button:focus-visible,
.wp-block-button__link:focus-visible,
.wp-block-navigation-item__content:focus-visible,
.wp-block-navigation__responsive-container-open:focus-visible,
.wp-block-navigation__responsive-container-close:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
summary:focus-visible,
details:focus-visible,
[tabindex]:focus-visible {
	outline: 3px solid var(--wp--preset--color--heading);
	outline-offset: 2px;
	box-shadow: 0 0 0 2px var(--wp--preset--color--ink);
	border-radius: var(--rkm-r-md);
}

/* Windows High Contrast strips both colours; the system ring must survive. */
@media (forced-colors: active) {
	a:focus-visible,
	button:focus-visible,
	.wp-block-button__link:focus-visible,
	summary:focus-visible,
	[tabindex]:focus-visible {
		outline: 3px solid currentColor;
		box-shadow: none;
	}
}
/* ================= END RZ IDENTITY LAYER ================= */

/* ================= LX IDENTITY LAYER (inherited, royale-lux.com) =================
   Appended last on purpose: this stylesheet is a stack of successive re-skin layers
   and the cascade resolves in file order, so the identity that ships is whatever the
   tail says. Everything above this line belongs to the number micro-hub this theme
   was forked from; everything below is «Platinum & Onyx — Glacier».

   Three devices, and only three, so the site reads as one thing:
     1. the RULE      — a warm 1px hairline (--color--rim), the structural element;
     2. the SUIT      — the diamond knocked out of the R in the mark, spade+diamond as
                        pips on the wordmark's rule;
     3. BRUSHED METAL — a gleam-to-rose-to-rose-deep ramp, used on the wordmark and
                        on primary buttons, never on body text.

   Geometry is 0/3/14 with SQUARE buttons. The fork's 0/4/18-and-2px-button geometry is
   normalised below, because a stylesheet this old carries radii from three identities
   at once and a rounded chip beside a square button reads as unfinished.
   ==================================================================== */

/* ---- 1. The wordmark in the header / footer signature -------------------
   "Royale" is the display face italic; "VIP" is the mono plate — the pair IS the equity.
   Not a gradient here: at 19px a clipped gradient loses its lit edge and just looks
   muddy. The gradient belongs to the page-anchor wordmark (section 2), which is 4x
   the size. */
/* The plate itself is defined once, in section 1 below («The brand lockup in the
   header»), and BOTH instances of the mark — header and footer signature — take it.
   An earlier coral-and-platinum treatment used to live here; its descendant selector
   `.rkm-sig__word .rkm-brand__vip` (0,2,0) outranked the plate rule (0,1,0), so the
   footer kept the old `color: plat` while still taking the plate's `background: plat`
   — platinum on platinum, i.e. an invisible «VIP» in the footer signature on every
   page. Removed rather than re-pointed: two rules for one mark is how it happened. */
/* The fork's numeral span no longer exists in the markup; neutralise its rules so a
   stale copy of the header cannot paint a stray accent. */
.rkm-brand__num { color: inherit; -webkit-text-stroke: 0; }

/* ---- 2. The page anchor: «Royale Casino» as display lettering --------------
   The brief asks for the brand's own lettering AS the page's main graphic anchor. So
   the anchor is type, not art: a mono kicker, the two-part lockup with a brushed-metal
   ramp clipped to the second word, and a suit rule under it.

   The ramp's dark stop (plat-deep, 4.1:1 on the field) is parked in the last 12% of
   the gradient, so the glyph body stays on plat/lume (12.9:1 / 15.9:1). At
   clamp-min 44px this is large text, where 3:1 applies — but a display face whose
   descenders sat in the dark stop would still look broken, hence the stop position.
   `color` is set BEFORE the clip so a browser without background-clip:text (or with
   the ramp disabled by forced-colors) still renders solid coral rather than nothing. */
.rkm-wordmark {
	display: grid;
	gap: 10px;
	justify-items: start;
	margin: 0 0 6px;
}
.rkm-wordmark__kicker {
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12.5px;
	font-weight: 500;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: var(--wp--preset--color--mint);
}
.rkm-wordmark__lock {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 0 0.3em;
	font-family: var(--wp--preset--font-family--heading);
	line-height: 0.94;
}
.rkm-wordmark__royale {
	font-size: clamp(21px, 3.2vw, 32px);
	font-weight: 700;
	letter-spacing: -0.2px;
	color: var(--wp--preset--color--contrast);
}
.rkm-wordmark__vip {
	font-size: clamp(44px, 9vw, 96px);
	font-weight: 900;
	letter-spacing: -2.4px;
	color: var(--wp--preset--color--acid);
	background-image: linear-gradient(122deg, #f2cdb4 0%, #e7b89a 54%, #6d7fa2 88%, #8a5a42 100%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
}
.rkm-wordmark--coral .rkm-wordmark__vip {
	background-image: linear-gradient(122deg, #7fa0d8 0%, #8fa9de 58%, #33477a 100%);
	color: var(--wp--preset--color--coral-lit);
}
.rkm-wordmark__rule {
	position: relative;
	display: flex;
	align-items: center;
	gap: 10px;
	width: min(100%, 20rem);
	padding-top: 12px;
	border-top: 1px solid var(--wp--preset--color--rim);
	font-size: 13px;
	line-height: 1;
}
/* The pips are U+2660 / U+2666, and NONE of this identity's three faces carries them
   (the same gap turned the first Open Graph card's pips into tofu boxes — see
   assets_lux.py, which draws them as polygons for that reason). A browser DOES fall
   back per character, but only to a family it can find, so the stack names the symbol
   fonts explicitly rather than trusting the platform default. */
.rkm-wordmark__pip {
	font-family: "Segoe UI Symbol", "Apple Symbols", "Noto Sans Symbols 2", "DejaVu Sans", sans-serif;
	line-height: 1;
}
.rkm-wordmark__pip--crown { color: var(--wp--preset--color--acid-lit); }
.rkm-wordmark__pip--crown { color: var(--wp--preset--color--coral-lit); }
@media (forced-colors: active) {
	.rkm-wordmark__vip {
		background-image: none;
		-webkit-text-fill-color: currentColor;
		color: CanvasText;
	}
}

/* ---- 3. The abstract light field ---------------------------------------
   Beams, not discs — see inc/brand.php for why the motif had to differ from the fork's
   bokeh. Fixed intrinsic size is set on the svg element itself (anti-CLS); this only
   places it and keeps it decorative. */
.rkm-light {
	display: block;
	width: 100%;
	height: auto;
	border: 1px solid var(--wp--preset--color--rim);
	border-radius: var(--rkm-r-md);
}
.rkm-footer .rkm-light { opacity: .72; }

/* ---- 4. The trust band sits ABOVE the brand row ------------------------
   The fork moved this band below the brand row. Two sites in one network with the same
   tree should not also share the same header stacking order, and above the brand row it
   behaves like a printed masthead's dateline: a thin ruled strip the eye reads once and
   then ignores. Hairline BOTTOM only — a top hairline against the viewport edge is a
   line nobody sees. */
.rkm-topline--over {
	margin: 0 0 2px;
	border-top: 0;
	border-bottom: 1px solid var(--wp--preset--color--rim);
	background: transparent;
}
.rkm-topline--over .rkm-topline__row { letter-spacing: .18px; }

/* ---- 5. Footer support column ------------------------------------------ */
.rkm-footer__support {
	margin: 0 0 10px;
	font-size: 14px;
	line-height: 1.62;
	color: var(--wp--preset--color--body);
}
.rkm-footer__support--muted { color: var(--wp--preset--color--muted); font-size: 13px; }
.rkm-footer__support a { color: var(--wp--preset--color--acid-lit); }

/* ---- 6. GEOMETRY: 0 / 3 / 14, square buttons --------------------------
   theme.json now declares these radii, but around twenty hard-coded radii survive in
   the layers above (pills on chips, 50% on the mark frame, 2px on buttons, 8-10px on
   cards). They are restated here rather than hunted one by one: the tail wins, and a
   single block is auditable where twenty scattered edits are not. */
.rkm-chip,
.rkm-chips .wp-block-button__link,
.wp-block-button__link,
.wp-element-button,
.rkm-plate,
.rkm-route,
.rkm-codebox__field,
.rkm-agegate__row button,
.rkm-cookie__row button,
.rkm-sticky a { border-radius: var(--rkm-r-md); }
.rkm-card,
.rkm-panel,
.rkm-codebox,
.rkm-payrail--strip,
.wp-block-table { border-radius: var(--rkm-r-md); }
.rkm-brand__mark { border-radius: var(--rkm-r-md); }
.rkm-agegate__card,
.rkm-cookie { border-radius: var(--rkm-r-md); }
/* The age-gate badge is the one place a shape is allowed to be a plate: it is a stamp,
   not a control. Square, like everything else, but carrying the coral ramp. */
.rkm-agegate__badge { border-radius: var(--rkm-r-md); }

/* ---- 7. Brushed platinum on primary buttons --------------------------------
   theme.json points the button background at the plat gradient and its text at ink
   (#0e1a36 on #e7b89a = 9.4:1). Restated here for the three chrome buttons that are
   NOT core buttons (they are inline-styled in inc/chrome.php) so the primary controls
   on a page cannot drift apart. */
.rkm-agegate__yes,
.rkm-cookie__row .rkm-cookie__ok,
.rkm-sticky a {
	background: linear-gradient(122deg, #f2cdb4 0%, #e7b89a 56%, #b98668 100%);
	color: var(--wp--preset--color--ink);
}

/* ---- 8. The hairline rule keeps its warmth ---------------------------- */
.rkm-section > .wp-block-heading:first-child { border-top-color: var(--wp--preset--color--rim); }
hr.wp-block-separator { border-color: var(--wp--preset--color--rim); opacity: 1; }
/* ---- 9. An offer value that is a SENTENCE, not an amount ----------------
   `.rkm-offer__amount` is display-sized because it was built to hold «550 AZN». Three
   rows on this site legitimately hold prose instead — the wager multiplier and the
   validity window are values only the operator may state, so the honest cell reads
   «operatorun şərtlərində göstərilir». At 34px that sentence set two lines tall and
   made its own row label look like a footnote.

   Two selectors, deliberately. The explicit modifier is what the imported pages carry,
   so the fix is deterministic; the `:has()` rule is the safety net for any future page
   whose author forgets it — a value with no `.rkm-num` figure inside it is by definition
   not an amount. Older engines without `:has()` still get the modifier. */
.rkm-offer__amount--open,
.rkm-offer__amount:not(:has(.rkm-num)) {
	font-family: var(--wp--preset--font-family--body);
	font-size: 15.5px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0;
	color: var(--wp--preset--color--muted);
	text-transform: none;
}
/* The same rule for the ledger's open values, which share the problem and the reason. */
.rkm-ledger__v--open {
	font-family: var(--wp--preset--font-family--body);
	font-size: 15.5px;
	font-weight: 500;
	letter-spacing: 0;
	color: var(--wp--preset--color--muted);
}
/* ================= END LX IDENTITY LAYER ================= */

/* === R1V IDENTITY LAYER — royale-kazinom.com · «Royale Casino» ===================
   Appended AFTER every inherited layer, so each rule here wins on source order alone
   and none of them needs !important.

   Three themes have now been stacked into this stylesheet (RZ, LX, VY). The colour
   tokens were re-pointed by fork_r1v.py, but the inherited layers still LAY THINGS OUT
   like the sibling they came from: an italic didone wordmark with a filled «VIP» plate
   and a neon halo, 20px plates, 10px buttons. Two hubs in this network already ship a
   Platinum & Onyx field; if this one also ships the sibling's SHAPES it is the same
   site with a different hue, which is exactly the fingerprint the brief forbids.

   So this layer is the silhouette:
     - hard edges, not soft. 14px plates, 2px buttons, 0 on the rank chip.
     - the filled plate moves off «VIP» and onto the RANK NUMERAL, which is what this
       domain's name is actually about.
     - no italic anywhere in the display face. The sibling's whole voice is italic
       serif; this one is roman, and its emphasis device is a glacier ice mono kicker.
     - the decorative motif is a STEPPED TERRACE (see inc/brand.php), never arcs, never
       bokeh discs.
   ========================================================================== */

/* ---- 0. Weights the theme actually loads -------------------------------------
   Baloo 2's variable range runs 100-900 but this build requests 600/700/800 only, so
   any 900 in an inherited rule is a synthetic bold: the browser smears the 800 master
   and the stem/joint ratio of a techno grotesque goes visibly soft at hero size.
   Every display weight is pinned to one that is really loaded. */
h1, .rkm-hero h1 { font-weight: 700; }
h2 { font-weight: 700; }
h3, h4 { font-weight: 700; }

/* Baloo 2 is a WIDE techno grotesque: it already sets loose, so it wants only a hair of
   negative tracking at hero size and none at all below 24px. The inherited -1.4px was
   cut for a geometric serif and closed Baloo 2's counters into each other. */
h1 {
	letter-spacing: -0.6px;
	/* 1.2, not 1.05, and it must be repeated HERE: this bare `h1` rule sits ~1550 lines
	   after the leading block near h2's, carries the same 0,0,1 specificity, and therefore
	   won on document order. Setting only the earlier one left exactly one heading still
	   colliding — the wrapped H1 "Royale Casino Mobil Tətbiq Yüklə" at 360px, y over b at
	   -0.094em. See the leading note earlier in this file and `node leading_rwa.js`. */
	line-height: 1.2;
}
h2 { letter-spacing: -0.25px; }

/* The one emphasis device in the type system: a name inside prose, set in the accent
   rather than in italic, because Baloo 2 ships no italic in this build.
   It takes the ACID-LIME family, not coral. Coral is this identity's data colour
   and is spent only on measured figures; an emphasised proper noun in that colour reads as
   a value to compare, which is exactly the wrong signal on «MilliÖN» and «Azərlotereya» —
   the two names the page exists to tell apart from a payment rail. */
.rkm-em {
	font-style: normal;
	font-weight: 700;
	color: var(--wp--preset--color--acid-lit);
}

/* ---- 1. The brand lockup in the header --------------------------------------
   «Royale Casino» in the display face, and the rank as a small filled chip after it. The chip is
   the only glacier ice in the header, so the eye lands on the number — which is the half
   of the name that separates this domain from its siblings. */
.rkm-brand__word {
	font-weight: 700;
	letter-spacing: -0.4px;
}
.rkm-brand__vip {
	display: inline-block;
	margin-left: 0.3em;
	padding: 0.1em 0.34em;
	font-family: var(--wp--preset--font-family--body);
	font-size: 0.66em;
	font-weight: 700;
	letter-spacing: 0.16em;
	line-height: 1.2;
	color: var(--wp--preset--color--acid);
	background: transparent;
	border: 1px solid var(--wp--preset--color--acid-deep);
	border-radius: var(--rkm-r-md);
	vertical-align: 0.16em;
}
.rkm-brand__num {
	display: inline-block;
	margin-left: 0.26em;
	padding: 0.1em 0.42em;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 0.62em;
	font-weight: 600;
	line-height: 1.24;
	color: var(--wp--preset--color--ink);
	background: var(--wp--preset--color--coral);
	border-radius: var(--rkm-r-md);
	vertical-align: 0.2em;
}
.rkm-brand:hover .rkm-brand__vip,
.rkm-brand:focus-visible .rkm-brand__vip { border-color: var(--wp--preset--color--acid); }
.rkm-brand:hover .rkm-brand__num,
.rkm-brand:focus-visible .rkm-brand__num { background: var(--wp--preset--color--coral-lit); }
.rkm-brand__cluster { color: var(--wp--preset--color--muted); }
.rkm-brand__crest {
	border-radius: var(--rkm-r-md);
	box-shadow: inset 0 1px 0 rgba(232, 255, 160, .22);
}

/* ---- 2. The page wordmark ----------------------------------------------------
   Roman «Royale», an OUTLINED «VIP», then the rank on a filled glacier ice plate. Reading
   left to right the weight increases and the contrast increases, so the numeral is the
   terminal beat of the lockup rather than an afterthought stuck on the end. */
.rkm-wordmark__lock {
	align-items: baseline;
	gap: 0 0.3em;
}
.rkm-wordmark__royale {
	font-size: clamp(36px, 7vw, 74px);
	font-style: normal;
	font-weight: 700;
	letter-spacing: -2.2px;
	color: var(--wp--preset--color--heading);
}
.rkm-wordmark__vip {
	position: static;
	padding: 0.2em 0.46em;
	font-family: var(--wp--preset--font-family--body);
	font-size: clamp(16px, 2.3vw, 25px);
	font-weight: 700;
	letter-spacing: 0.2em;
	line-height: 1;
	color: var(--wp--preset--color--acid);
	background: transparent;
	background-image: none;
	-webkit-text-fill-color: currentColor;
	border: 1px solid var(--wp--preset--color--acid-deep);
	border-radius: var(--rkm-r-md);
}
/* The halo the sibling paints behind its plate is gone with the plate. */
.rkm-wordmark__vip::after { content: none; }
.rkm-wordmark__rank {
	display: inline-block;
	padding: 0.16em 0.5em;
	font-family: var(--wp--preset--font-family--mono);
	font-size: clamp(18px, 2.6vw, 28px);
	font-weight: 600;
	line-height: 1;
	color: var(--wp--preset--color--ink);
	background: var(--wp--preset--color--coral);
	border-radius: var(--rkm-r-md);
}
.rkm-wordmark--coral .rkm-wordmark__rank {
	color: var(--wp--preset--color--heading);
	background: var(--wp--preset--color--coral-deep);
}
.rkm-wordmark__rule {
	width: min(100%, 24rem);
	height: 2px;
	padding-top: 0;
	border-top: 0;
	background: linear-gradient(90deg,
		var(--wp--preset--color--coral) 0%,
		var(--wp--preset--color--acid-deep) 38%,
		transparent 100%);
}

/* ---- 3. [rkm_pull] — the citable Q -> A block ---------------------------------
   The passage an AI Overview is meant to lift. The sibling rules it on the inline-start
   edge and sets the answer in italic serif; here it is a BAND — hairlines above and
   below, roman serif inside — so the block reads as a plate cut out of the page rather
   than as a margin note. */
.rkm-pull {
	margin: 28px 0 32px;
	padding: 20px 0 22px;
	border-inline-start: 0;
	border-top: 1px solid var(--wp--preset--color--acid-deep);
	border-bottom: 1px solid var(--wp--preset--color--rim);
}
.rkm-pull__q {
	margin: 0 0 12px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--wp--preset--color--coral-lit);
}
.rkm-pull__a > p {
	margin: 0 0 0.7em;
	font-family: var(--wp--preset--font-family--heading);
	font-style: normal;
	font-size: clamp(19px, 2.1vw, 23px);
	font-weight: 400;
	line-height: 1.46;
	letter-spacing: -0.3px;
	color: var(--wp--preset--color--contrast);
}
.rkm-pull__a > p:last-child { margin-bottom: 0; }
/* From the second paragraph the answer drops to the body face: the lifted passage is
   the FIRST paragraph, and three of them in display grotesque is a wall, not a quotation. */
.rkm-pull__a > p ~ p {
	font-family: var(--wp--preset--font-family--body);
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.66;
	color: var(--wp--preset--color--body);
}

/* ---- 4. [rkm_tiers] — the VIP ladder -----------------------------------------
   Five rows, rank / name / condition. Only the first rung is lit, because «1» is this
   domain's name and not a rating. Grid rather than a table: there is no data here to
   sort or compare across columns, and a three-cell row reflows to two lines on a phone
   far more gracefully than a table does.

   Note the CONDITION column carries no figures. The operator sets the turnover bands
   and changes them; printing a plausible number here would be a fabricated fact in
   front of a reader about to spend money. */
.rkm-ladder {
	display: grid;
	gap: 0;
	margin: 26px 0 0;
	padding: 0;
	list-style: none;
	border: 1px solid var(--wp--preset--color--rim);
	border-radius: var(--rkm-r-md);
	overflow: hidden;
	background: var(--wp--preset--color--surface);
}
.rkm-ladder__row {
	display: grid;
	grid-template-columns: 46px 1fr auto;
	align-items: center;
	gap: 14px;
	padding: 14px 16px;
	border-top: 1px solid var(--wp--preset--color--rim);
}
.rkm-ladder__row:first-child { border-top: 0; }
.rkm-ladder__row--lit { background: rgba(143, 169, 222, .07); }
.rkm-ladder__rank {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 14px;
	font-weight: 600;
	color: var(--wp--preset--color--mint);
	border: 1px solid var(--wp--preset--color--acid-deep);
	border-radius: var(--rkm-r-md);
}
.rkm-ladder__row--lit .rkm-ladder__rank {
	color: var(--wp--preset--color--ink);
	background: var(--wp--preset--color--coral);
	border-color: var(--wp--preset--color--coral);
}
.rkm-ladder__name {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 18px;
	font-weight: 400;
	letter-spacing: -0.2px;
	color: var(--wp--preset--color--heading);
}
.rkm-ladder__cond {
	font-size: 14px;
	line-height: 1.4;
	color: var(--wp--preset--color--muted);
	text-align: right;
}
.rkm-ladder__note {
	grid-column: 1 / -1;
	margin: 0;
	padding: 14px 16px 16px;
	border-top: 1px solid var(--wp--preset--color--rim);
	background: var(--wp--preset--color--base);
	font-size: 14px;
	line-height: 1.62;
	color: var(--wp--preset--color--body);
}
@media (max-width: 560px) {
	.rkm-ladder__row {
		grid-template-columns: 38px 1fr;
		row-gap: 4px;
	}
	.rkm-ladder__cond {
		grid-column: 2;
		text-align: left;
	}
	.rkm-ladder__rank { width: 30px; height: 30px; }
}

/* ---- 5. Focus ring -----------------------------------------------------------
   Bone white would be nearly the same value as the platinum accent, so on a platinum
   button the ring would vanish. Two-tone instead: a dark separator against the control
   and a glacier ice ring outside it, which is the one hue on the site that no surface
   uses as a large fill. The outline is kept (transparent) so Windows High Contrast
   still paints one. Radius 3px, to agree with the hard edges above rather than
   rounding a square button while it is focused. */
a:focus-visible,
button:focus-visible,
.wp-block-button__link:focus-visible,
.wp-block-navigation-item__content:focus-visible,
.wp-block-navigation__responsive-container-open:focus-visible,
.wp-block-navigation__responsive-container-close:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible,
summary:focus-visible,
[tabindex]:focus-visible {
	outline: 3px solid transparent;
	outline-offset: 3px;
	box-shadow:
		0 0 0 2px var(--wp--preset--color--base),
		0 0 0 5px #8fa9de;
	border-radius: var(--rkm-r-md);
}
/* …and again at 0,4,0 for the primary CTA. The gradient-button rule
   `.wp-block-button:not(.rkm-btn-outline) > .wp-block-button__link` is 0,3,0 and carries
   a RESTING box-shadow, so a 0,2,0 focus rule loses to it and the one control the page
   is built around is the only one with no visible focus state. */
.wp-block-button:not(.rkm-btn-outline) > .wp-block-button__link:focus-visible,
.wp-block-button.rkm-btn-outline > .wp-block-button__link:focus-visible {
	outline: 3px solid transparent;
	outline-offset: 3px;
	box-shadow:
		0 0 0 2px var(--wp--preset--color--base),
		0 0 0 5px #8fa9de;
}
@media (forced-colors: active) {
	a:focus-visible,
	button:focus-visible,
	.wp-block-button__link:focus-visible,
	.wp-block-button:not(.rkm-btn-outline) > .wp-block-button__link:focus-visible,
	summary:focus-visible,
	[tabindex]:focus-visible {
		outline: 3px solid CanvasText;
		box-shadow: none;
	}
}

/* ---- 6. Plate geometry -------------------------------------------------------
   The inherited layer softened every plate to 20px and every button to 10px for an
   italic-serif voice. This identity is struck metal: a 14px plate, a 2px button, and a
   hairline that does the work a shadow would. */
.rkm-card,
.rkm-card-raised,
.rkm-panel,
.rkm-plate,
.rkm-faq,
.rkm-offer,
.rkm-step,
.rkm-feature,
.rkm-quicklink,
.rkm-statbox { border-radius: var(--rkm-r-md); }
.wp-block-button__link,
.wp-element-button { border-radius: var(--rkm-r-md); }

/* ---- 7. The one saturated hue, spent deliberately -----------------------------
   Glacier ice appears in exactly four places sitewide: the crown in the mark, the rank
   chip, the lit rung of the ladder, and the focus ring. Anything the inherited layers
   painted in the old accent that is NOT one of those four is returned to metal, so the
   hue keeps its meaning. */
.rkm-eyebrow { color: var(--wp--preset--color--acid); }
.rkm-badge::before {
	background: var(--wp--preset--color--acid);
	box-shadow: 0 0 8px rgba(231, 184, 154, .5);
}

/* ---- 8. prefers-reduced-motion ------------------------------------------------ */
@media (prefers-reduced-motion: reduce) {
	.rkm-skeleton,
	.rkm-skeleton--card,
	.rkm-skeleton--row,
	.rkm-skeleton--wide { animation: none; }
	.rkm-sticky { transition: none; }
}
/* ================= END R1V IDENTITY LAYER ================= */

/* === R1V STEP-7 UX PASS — defects measured on the real render ================
   Both of these are things the headless audit reports as "clean": neither is an
   overflow, a tap target, a contrast pair or a console error. They were found by
   looking at the shots.
   ========================================================================== */

/* ---- 1. The trust strip was drawing TWO separators per gap -------------------
   Three inherited layers each added a divider to `.rkm-seg`: an `::after` middot,
   a later rule that gave that same `::after` a `background` (so it painted as a
   hairline BAR as well as a glyph), and finally a `.rkm-topline .rkm-seg + .rkm-seg::before`
   middot. Between two segments the reader therefore saw «| ·».

   Worse, the `::before` sits INSIDE the following element, so on the one segment
   that is a link (Məsuliyyətli oyun) the link's underline ran under the middot and
   the pair rendered as a colon. Underline decoration does not propagate into an
   inline-block, which is the fix for that half.

   One separator, owned by the `::before`, and never underlined. */
.rkm-topline .rkm-seg + .rkm-seg::before { content: none; }
.rkm-topline .rkm-seg:not(:last-child)::after {
	content: "·";
	background: none;
	margin: 0 0 0 10px;
	color: var(--wp--preset--color--muted);
}

/* …with ONE exception, and it is the whole reason this rule was hard: the RG link is
   itself a `:not(:last-child)` segment (the AZN/clock follows it), so it grew an
   `::after` of its own — inside the link again, underlined again, reading as a colon
   again. It gets none. Nothing is lost: `--clock` is pushed to the far right by
   `margin-left:auto`, so there is a 400px gap where the separator would have gone and
   a dot there would separate nothing. */
.rkm-topline .rkm-seg.rkm-seg--rg:not(:last-child)::after,
.rkm-topline .rkm-seg--rg::after { content: none; }

/* The separator has to live on the PRECEDING segment, never inside the following
   one — and `display:inline-block` is not enough to save it when the following
   segment is the «Məsuliyyətli oyun» link: Chrome draws a text-decoration line
   across atomic inline children too, so the middot kept its underline tick and the
   pair still read as a colon. A trailing `::after` on the previous, non-link segment
   cannot be underlined by anything.

   Below 700px the strip stops being a strip: the segments become their own lines, and
   a middot is then either dangling at the end of a line or leading the next one.
   Neither is a separator, so there is nothing to separate and the dots go. */
@media (max-width: 700px) {
	.rkm-topline .rkm-seg::after,
	.rkm-topline .rkm-seg:not(:last-child)::after { content: none; }
	.rkm-topline__row { row-gap: 4px; }
}

/* ---- 2. The hero masthead outranked the page's own H1 ------------------------
   `[rkm_wordmark]` sets «Royale» at clamp(36px, 7vw, 74px) — designed for a page
   that has no competing display line. On the home page it sits directly above an
   H1 at 56px, so the first two things in the document were the same word twice, in
   the same serif, with the SMALLER one being the actual heading. Inverted
   hierarchy, and the repetition read as a rendering bug rather than as a masthead.

   Scoped to the case that is wrong: a wordmark followed by an H1. Elsewhere the
   lockup keeps its full scale. */
.rkm-wordmark:has(~ h1) .rkm-wordmark__royale,
.rkm-hero .rkm-wordmark .rkm-wordmark__royale {
	font-size: clamp(26px, 3.4vw, 40px);
	letter-spacing: -1.1px;
}
.rkm-wordmark:has(~ h1) .rkm-wordmark__vip,
.rkm-hero .rkm-wordmark .rkm-wordmark__vip { font-size: clamp(12px, 1.3vw, 15px); }
.rkm-wordmark:has(~ h1) .rkm-wordmark__rank,
.rkm-hero .rkm-wordmark .rkm-wordmark__rank { font-size: clamp(13px, 1.5vw, 17px); }
.rkm-wordmark:has(~ h1) .rkm-wordmark__kicker,
.rkm-hero .rkm-wordmark .rkm-wordmark__kicker { font-size: 11.5px; }
.rkm-wordmark:has(~ h1) .rkm-wordmark__rule,
.rkm-hero .rkm-wordmark .rkm-wordmark__rule { width: min(100%, 15rem); }
/* ============ END R1V STEP-7 UX PASS ============ */


/* ===========================================================================
   royale-kazinom.com — identity layer
   Loaded last on purpose: everything below either re-shapes a component the fork
   inherited square, or replaces a device that belonged to the donor domain.
   =========================================================================== */

/* ---- Geometry -------------------------------------------------------------
   The donor is a square house (2/4/14, 2px buttons). This one is soft. The ramp is in
   theme.json, but a fork's hand-written components carry their own literal radii, so
   they are re-pointed at the tokens here rather than left at 2px in eleven places. */
.rkm-card, .rkm-plate, .rkm-step, .rkm-faq, .rkm-note, .rkm-alert,
.rkm-codebox, .rkm-codebox__field, .rkm-table, .rkm-quick__item,
.rkm-payrail, .rkm-pull, .rkm-mockform, .rkm-access__row {
	border-radius: var(--wp--preset--border-radius--large, 20px);
}
.rkm-chip, .rkm-seg, .rkm-langtag, .rkm-badge, .rkm-brand__vip, .rkm-tag {
	border-radius: var(--rkm-r-md);
}
.wp-block-button__link, .rkm-cta, .rkm-sticky__link, .rkm-agegate__row button {
	border-radius: var(--rkm-r-md);
}
/* The age-gate badge is a DISC here — the mark is a jeton, so the one large round
   shape on the site is the identity rather than an exception to it. */
.rkm-agegate__badge { border-radius: 50%; }

/* ---- The brand lockup -----------------------------------------------------
   Three registers for three parts of one name, as in the donor — but the third slot is
   the CLUSTER, not a rank. «Giriş» is what this domain owns; a numeral here would be a
   borrowed device from a sibling. */
.rkm-brand__vip {
	font-family: var(--wp--preset--font-family--body);
	letter-spacing: 0.16em;
	border: 1px solid var(--wp--preset--color--acid-deep);
	background: transparent;
	color: var(--wp--preset--color--acid);
}
.rkm-brand__num,
.rkm-wordmark__rank {
	font-family: var(--wp--preset--font-family--body);
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink);
	background: var(--wp--preset--color--coral);
	border-radius: var(--rkm-r-md);
	padding: 0.14em 0.62em;
}
/* Sono is reserved for FIGURES. «Giriş» is a word, and an uppercase word in
   the mono face is exactly the class of bug that painted «BƏLƏDÇİSİ» as «BOLODÇİSİ» on
   an earlier build — so the lockup's third slot is explicitly moved off the mono face
   above, and this is the standing reminder of why. */

/* ---- The jeton mark -------------------------------------------------------
   Round, with an engraved rim. Given a hairline halo so it separates from the onyx
   header without needing a plate behind it. */
.rkm-mark { display: block; }
.rkm-brand__mark {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	box-shadow: 0 0 0 1px rgba(231, 184, 154, .10);
}

/* ---- Access panel (replaces the donor's VIP ladder) -----------------------
   A login site's central figure is not a ladder of ranks — it is the question "am I on
   the real entry point or a copy". So the device is a checklist of what a genuine entry
   point looks like, with the one row a reader can verify themselves lit. */
.rkm-access {
	display: grid;
	gap: 10px;
	margin: 26px 0;
	padding: 20px;
	background: var(--wp--preset--gradient--card, #16274a);
	border: 1px solid var(--wp--preset--color--rim);
	border-radius: var(--wp--preset--border-radius--large, 20px);
}
.rkm-access__row {
	display: grid;
	grid-template-columns: 40px 1fr;
	gap: 14px;
	align-items: start;
	padding: 13px 14px;
	background: var(--wp--preset--color--surface-lift);
	border: 1px solid var(--wp--preset--color--rim);
}
.rkm-access__row--lit {
	border-color: var(--wp--preset--color--coral);
	background: linear-gradient(180deg, rgba(143, 169, 222, .09), rgba(143, 169, 222, 0));
}
.rkm-access__no {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	border-radius: 50%;
	font-family: var(--wp--preset--font-family--mono);
	font-size: 14px;
	font-weight: 600;
	color: var(--wp--preset--color--ink);
	background: var(--wp--preset--color--acid);
}
.rkm-access__row--lit .rkm-access__no { background: var(--wp--preset--color--coral); }
.rkm-access__what {
	margin: 0 0 3px;
	font-weight: 700;
	color: var(--wp--preset--color--heading);
	line-height: 1.32;
}
.rkm-access__why {
	margin: 0;
	font-size: 14.5px;
	line-height: 1.56;
	color: var(--wp--preset--color--body);
}
.rkm-access__note {
	grid-column: 1 / -1;
	margin: 4px 0 0;
	font-size: 13px;
	line-height: 1.6;
	color: var(--wp--preset--color--dim);
}
@media (max-width: 520px) {
	.rkm-access { padding: 14px; }
	.rkm-access__row { grid-template-columns: 32px 1fr; gap: 11px; padding: 12px; }
	.rkm-access__no { width: 30px; height: 30px; font-size: 13px; }
}

/* ---- Mock login form ------------------------------------------------------
   The DESIGN-KIT asks the how-to templates for a form ILLUSTRATION and is explicit that
   it must not be a live control. So it is a <div> that looks like a form and announces
   itself as a picture: no <input>, no name attribute, nothing focusable, nothing that
   could ever receive — let alone transmit — a real credential. */
.rkm-mockform {
	margin: 24px 0;
	padding: 20px;
	background: var(--wp--preset--gradient--card, #16274a);
	border: 1px solid var(--wp--preset--color--rim);
}
.rkm-mockform__title {
	margin: 0 0 4px;
	font-weight: 700;
	color: var(--wp--preset--color--heading);
}
.rkm-mockform__lede {
	margin: 0 0 16px;
	font-size: 14.5px;
	line-height: 1.58;
	color: var(--wp--preset--color--muted);
}
.rkm-mockform__field {
	margin-bottom: 12px;
	padding: 12px 15px;
	background: var(--wp--preset--color--base);
	border: 1px solid var(--wp--preset--color--acid-deep);
	border-radius: var(--rkm-r-md);
}
.rkm-mockform__cap {
	display: block;
	font-size: 12.5px;
	letter-spacing: 0.09em;
	text-transform: uppercase;
	color: var(--wp--preset--color--dim);
}
.rkm-mockform__line {
	display: block;
	height: 11px;
	margin-top: 7px;
	border-radius: var(--rkm-r-md);
	background: linear-gradient(90deg, rgba(231, 184, 154, .26), rgba(231, 184, 154, .06));
}
.rkm-mockform__line--short { width: 42%; }
.rkm-mockform__btn {
	display: block;
	margin-top: 4px;
	padding: 14px 22px;
	text-align: center;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--ink);
	background: var(--wp--preset--gradient--acid);
	border-radius: var(--rkm-r-md);
}
.rkm-mockform__note {
	margin: 14px 0 0;
	font-size: 13px;
	line-height: 1.6;
	color: var(--wp--preset--color--dim);
}

/* ---- «Güncəl keçid» alert -------------------------------------------------
   The kit asks for an alert on the how-to pages. Coral, not the accent: this one says
   "check before you type", and spending the brand colour on a warning would make every
   warning look like an offer. */
.rkm-alert {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 13px;
	align-items: start;
	margin: 24px 0;
	padding: 16px 18px;
	background: rgba(255, 122, 129, .07);
	border: 1px solid rgba(255, 122, 129, .34);
}
.rkm-alert__mark {
	font-family: var(--wp--preset--font-family--mono);
	font-weight: 600;
	color: var(--wp--preset--color--risk);
}
.rkm-alert p { margin: 0; font-size: 15px; line-height: 1.6; color: var(--wp--preset--color--body); }
.rkm-alert p + p { margin-top: 8px; }


/* ===========================================================================
   The mono face carries FIGURES; every uppercase LABEL uses a text face.
   ---------------------------------------------------------------------------
   Not a coverage fix — Sono's ə and Ə are both verified real, correctly
   drawn outlines (assets_rwa.py probe). It is the structural rule that removes the
   whole class of risk, because a cmap entry is not a correct letter: Inconsolata has
   U+018F and draws it as a plain «O», which set «BƏLƏDÇİSİ» as «BOLODÇİSİ» on a sibling
   build with no missing glyph, no fallback and nothing any checker in this pipeline can
   see. Auditing that per face has to be redone for every future mono; keeping uppercase
   Azerbaijani out of the mono face does not.

   `shoot_rwa.js` enforces this as a standing check, so a component that drifts back into
   the mono face shows up in the next UX run rather than in a screenshot nobody reads.
   =========================================================================== */

/* The page kicker: a short label, so it keeps its caps — in the body face. */
.rkm-eyebrow {
	font-family: var(--wp--preset--font-family--body);
	font-weight: 600;
	letter-spacing: 0.13em;
}

/* The citable question. A fifty-character question in uppercase monospace is the one
   passage on the page designed to be read whole and quoted whole, so it gets the display
   face in mixed case — the same treatment as every other heading in this identity. */
.rkm-pull__q {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 400;
	font-size: 21px;
	line-height: 1.3;
	letter-spacing: -0.2px;
	text-transform: none;
}
@media (max-width: 600px) {
	.rkm-pull__q { font-size: 18.5px; }
}

/* Offer-plate captions («İlk depozitə», «Yuxarı hədd», «Müddət») label the figure beside
   them; the FIGURE stays in the mono face, the caption does not. */
.rkm-plate__label,
.rkm-codebox__label {
	font-family: var(--wp--preset--font-family--body);
	font-weight: 600;
	letter-spacing: 0.11em;
}

/* Comparison-table column headers («Cəhət», «Tətbiqdə», «Brauzerdə») are words. */
.rkm-compare__row--head > span {
	font-family: var(--wp--preset--font-family--body);
	font-weight: 700;
	letter-spacing: 0.1em;
}


/* ===========================================================================
   A ROW of plates is a different component from ONE plate.
   ---------------------------------------------------------------------------
   `.rkm-plate__num` is a HERO figure: clamp(84px, 17vw, 196px), cut for one number that
   dominates a section. Five of them in a column is a summary table wearing a hero's
   clothes — on the hub it ran to about 1 500 px of numerals, which no lint, no SEO check
   and no viewport audit flags, because it is neither an overflow nor a contrast failure
   nor invalid markup. So the row gets its own component instead of the single-plate one
   being shrunk for everybody.
   =========================================================================== */
.rkm-plates {
	display: grid;
	/* 200px, not 168: the section is inside the 736px constrained measure, so 168 laid
	   the five plates out 4 + 1 — a widow that reads as a mistake. 200 gives three
	   columns and a deliberate 3 + 2, and leaves «550 AZN» room to set on one line. */
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 14px;
	margin: 26px 0;
}
.rkm-plates .rkm-plate {
	display: flex;
	flex-direction: column;
	gap: 6px;
	padding: 18px 18px 20px;
	background: var(--wp--preset--gradient--card, #16274a);
	border: 1px solid var(--wp--preset--color--rim);
	border-radius: var(--wp--preset--border-radius--large, 20px);
}
.rkm-plates .rkm-plate__label {
	font-size: 12px;
	line-height: 1.3;
	color: var(--wp--preset--color--muted);
}
/* Summary size, not hero size. Still the display face and still the accent ramp, so the
   figures keep the identity — they just stop being the page. */
.rkm-plates .rkm-plate__num {
	font-size: clamp(27px, 3.4vw, 38px);
	line-height: 1.06;
	letter-spacing: 0;
	white-space: nowrap;
}
@media (max-width: 400px) {
	.rkm-plates { gap: 10px; }
	.rkm-plates .rkm-plate { padding: 14px 15px 16px; }
}

/* ---- AZ casing guard ---------------------------------------------------
   Under lang="az" the browser maps «i» to «İ», so uppercasing any label that
   contains «Giriş» ships «GİRİŞ» — and any i in a brand label the same way. The brand's own elements therefore
   opt out of text-transform for good; capped copy is authored in caps instead. */
.rkm-brand, .rkm-brand__word, .rkm-brand__cluster,
.rkm-wordmark, .rkm-wordmark__lock, .wp-block-site-title,
.rkm-brandline, .rkm-sig__word { text-transform: none; }

/* ---- 360px: a nowrap trust chip cannot be longer than the viewport -----------
   `.rkm-trust` sets white-space:nowrap so short chips («AZN balans», «Bakı UTC+4»)
   never break across two lines mid-phrase. On the hub the licence chip is a whole
   sentence — «Curaçao lisenziya № ___ — nömrə operatorun öz altlığında» — whose
   intrinsic nowrap width is 366px, so at a 360px viewport it pushed the document
   6px wide and the whole page scrolled sideways. Shortening that one string would
   fix today's instance and leave the trap; below 480px the chips are simply allowed
   to wrap, which is correct for any long chip on any page. */
@media (max-width: 480px) {
	.rkm-trust { white-space: normal; }
}

/* ---- Card and button links are not prose links -------------------------------
   theme.json sets elements.link.textDecoration = underline, which WordPress emits as a
   bare `a { text-decoration: underline }`. That is right for a link inside a sentence and
   wrong for a link that IS a card: the route tiles came out with «GİRİŞ» underlined and a
   rule under every tile's description, and the store buttons on /yukle/ the same. A
   probe of every <a> on all eight pages found exactly three components affected —
   .rkm-quicklink (19), .rkm-store (3), and .rkm-seg (8), the last of which is underlined
   ON PURPOSE (the responsible-gambling link in the trust strip, where underline is the
   only affordance a 7px strip can carry). So the reset is named, not global.
   These two keep a non-colour affordance without the rule: both are bordered boxes with
   a hover lift and the site's coral focus ring. */
.rkm-quicklink,
.rkm-quicklink:hover,
.rkm-store,
.rkm-store:hover { text-decoration: none; }

/* ==== RPL IDENTITY LAYER — royale-kazinom.com ==== */
/* ====================================================================
   RPL IDENTITY LAYER — royale-kazinom.com  «Deep Green & Neon Lime — Jade & Acid»
   Appended to assets/css/theme.css by identity_rpl.py, LAST, so it wins at equal
   specificity over every inherited layer in the fork chain (RZ / LX / R1V / RPN).

   The sheet names this row's skin «Deep Green & Neon Lime» with the exact hexes
   #0a1329→#05091a / #eec2a8 / #6fd79e — and those exact three values already ship
   BYTE-IDENTICAL on royale1.org and royale-apk.az. A third copy is the cheapest
   fingerprint an outsider can collect, so the family is kept and the values move:
   the field turns JADE (a teal-green cast, hue ~166, against the siblings' olive
   ~140), the lime goes ACID (#e7b89a, yellower), and the second saturated slot —
   the one the sheet does not pin — becomes CORAL, which no green-field sibling has.

   Two jobs only:
     (a) undo what the fork inherited from a SQUARE embossed-brass plate with a slab
         display face that stopped at 700;
     (b) state this domain's own premise: a milled JETON. Every plate is round, its
         edge is drawn as concentric rings that follow the radius, the display face
         is a rounded 800, and the page is allowed to be playful — because the row's
         brief is "play/oyna, playful, demo-first", not the donor's arithmetic.
   Kept as one appended block so a re-run replaces it wholesale.
   ==================================================================== */

/* ---- 0. The round scale + the weights the display face really has --------
   Baloo 2 carries a true 800 master (verified against the served woff2 per weight,
   not against the declared unicode-range), so unlike the donor — whose slab display face
   stopped at 700 and was silently clamped by css2 — this identity can spend a real
   extra-bold on h1/h2 and keep h3 in the body face. */
:root {
	--rkm-r-sm: 10px;
	--rkm-r-md: 18px;
	--rkm-r-lg: 28px;
	--rkm-r-pill: 999px;
	/* the jeton edge: hairline, dark gap, milled ring — follows any radius */
	--rkm-jeton:
		inset 0 0 0 1px rgba(232, 255, 160, .10),
		inset 0 0 0 5px rgba(2, 17, 14, .55),
		inset 0 0 0 6px rgba(42, 140, 115, .30);
	--rkm-lift: 0 22px 50px rgba(5, 9, 26, .55);
}

h1,
h2,
.rkm-brand__word,
.rkm-plate__num,
.rkm-offer__amount,
.rkm-bonus__amount {
	font-variation-settings: normal;
	font-optical-sizing: auto;
}
h1 { font-weight: 800; }
h2 { font-weight: 800; }
h3 { font-weight: 700; }
.rkm-brand__word { font-weight: 800; }
.rkm-brand__cluster { font-weight: 700; }
.rkm-plate__num,
.rkm-stat-tile .v,
.rkm-bonus__amount,
.rkm-step__num { font-weight: 800; }

/* ---- 1. Tracking and leading for a ROUNDED display ----------------------
   The inherited values were measured for a slab (positive tracking, because serifs
   optically bind adjacent letters). Baloo 2 is the opposite object: wide round
   bowls with generous sidebearings, which at display size reads loose unless the
   tracking is pulled in. Leading has to go the other way — up, not down: Baloo 2
   sets a tall ascender and a deep descender, and the binding pair in Azerbaijani is
   ş over İ (a cedilla hanging under one line beneath a dotted capital on the next).
   leading_rpl.js measures the real ink gap per column at 360/768/1024/1440 before
   these numbers are trusted; royale-win-az shipped 44 colliding headings by
   assuming a substituted display face inherits the donor's leading. */
h1 { letter-spacing: -0.4px; line-height: 1.14; }
h2 { letter-spacing: -0.2px; line-height: 1.2; }
h3 { letter-spacing: 0.02em; line-height: 1.36; }
h4 { letter-spacing: 0.02em; line-height: 1.4; }

/* Azerbaijani is never uppercased by CSS on this site: `lang="az"` + text-transform
   turns i into İ in some engines and into I in others, so a headline's spelling
   becomes engine-dependent. Labels that want the uppercase register get it typed. */
h1, h2, h3, h4,
.rkm-brand__word,
.rkm-offer__headline {
	text-transform: none;
}

/* ---- 2. Plate geometry: ROUND, with a milled jeton edge ------------------
   The donor flattened every radius to 0 and moved its signature to a 3px square
   top-rule. Both are gone (identity_rpl.py cut that layer rather than override it,
   so the next fork cannot inherit a square premise from a round site). The
   signature here is the EDGE of a chip: a hairline, a dark gap and a milled ring,
   all as inset shadows so they follow the radius and nothing reflows.

   Applied ONLY to containers that are never focusable — a resting box-shadow on a
   focusable element replaces its focus ring, which this codebase has shipped twice.
   `.rkm-faq` is a <details>: the ring lives on its <summary>, so it is safe. */
.rkm-card,
.rkm-card-raised,
.rkm-panel,
.rkm-cat,
.rkm-step,
.rkm-faq,
.rkm-toc,
.rkm-note,
.rkm-table-wrap,
.rkm-statbox,
.rkm-shot,
.rkm-ledger,
.rkm-flow,
.rkm-check,
.rkm-kyc__row,
.rkm-rail__plate,
.rkm-stat,
.rkm-game__thumb,
.rkm-game__media--css,
.rkm-offer,
.rkm-promo,
.rkm-mockform,
.rkm-codebox,
.rkm-access,
.rkm-payrail,
.rkm-demo,
.rkm-feature {
	border-radius: var(--rkm-r-lg);
}
.rkm-card,
.rkm-panel,
.rkm-statbox,
.rkm-note,
.rkm-table-wrap,
.rkm-ledger,
.rkm-stat,
.rkm-offer,
.rkm-access,
.rkm-payrail {
	box-shadow: var(--rkm-jeton), var(--rkm-lift);
}
/* `.rkm-card` and `.rkm-panel` declare a background, a border and a radius in the
   inherited layers and NO PADDING, anywhere in 6000 lines — so authored text sits flush
   against the border. Every page in the fork chain avoided them by accident rather than by
   design (the theme's own patterns never use them, and a page author who reaches for the
   two most obviously named container classes gets the one pair that is broken). Declared
   here, once, with the same rhythm the working containers use. */
.rkm-card,
.rkm-card-raised,
.rkm-panel {
	padding: clamp(18px, 2.2vw, 26px);
}

/* `.rkm-method` stays out of the ring list: it carries a 3px border-left whose COLOUR is
   the plate's semantic (acid / coral / acid-deep). A ring painted over it would destroy
   the one distinction the component exists to make. */
.rkm-warn,
.rkm-cutoff {
	border-radius: var(--rkm-r-lg);
	box-shadow:
		inset 0 0 0 1px rgba(255, 122, 129, .34),
		inset 0 0 0 5px rgba(2, 17, 14, .5),
		inset 0 0 0 6px rgba(255, 122, 129, .22);
}

/* Small objects take the small radius; anything that reads as a control is a PILL —
   that single decision is what makes the page look like a chip rack rather than a
   recoloured sibling. */
.rkm-chip,
.rkm-tag,
.rkm-badge,
.rkm-rating-pill,
.rkm-langtag,
.rkm-seg,
.rkm-demo__badge,
.rkm-game__rtp,
.rkm-rtp,
.rkm-cta,
.rkm-btn-outline,
.rkm-sticky__link,
.rkm-promo__copy,
.rkm-agegate__yes,
.rkm-agegate__no,
.rkm-cookie__ok,
.rkm-cookie__row button,
.wp-block-button__link,
.wp-element-button {
	border-radius: var(--rkm-r-pill);
}
.rkm-quicklink,
.rkm-route,
.rkm-game,
.rkm-post,
.rkm-plate,
.rkm-compare__row,
.rkm-ladder__row,
.rkm-method,
.rkm-skeleton {
	border-radius: var(--rkm-r-md);
}
.rkm-cat__ico,
.rkm-quicklink__icon,
.rkm-feature__icon,
.rkm-step__num,
.rkm-route__idx,
.rkm-agegate__badge,
.rkm-brand__mark,
.rkm-avatar {
	border-radius: 50%;
}

/* ---- 3. The two accents have separate jobs and never swap ----------------
   ACID owns action and structure: CTAs, the button gradient, plate rules, prose
   emphasis, the wordmark's second half. CORAL — the one warm hue on an all-green
   field — owns LABELS and NAMED THINGS: the eyebrow, the citable question, badges,
   the mascot's accents. MINT owns FIGURES, and only on the mono face. SUN marks
   positive state, because a green tick on a green field is invisible.
   royale-pro-az shipped a stylesheet whose description claimed a split its rules did
   not implement; the rules below are the whole split, and nothing else spends coral. */
.rkm-eyebrow,
.rkm-pull__q,
.rkm-cat__count,
.rkm-plat__note,
.rkm-figcap,
.rkm-instruments__age,
.rkm-chip--age,
.rkm-18__text {
	color: var(--wp--preset--color--coral-lit);
}
.rkm-badge {
	border-color: rgba(143, 169, 222, .34);
	background: rgba(143, 169, 222, .10);
	color: var(--wp--preset--color--coral-lit);
}
.rkm-badge::before {
	background: var(--wp--preset--color--sun);
	box-shadow: 0 0 8px var(--wp--preset--color--sun);
}
.rkm-demo__badge {
	background: var(--wp--preset--color--coral-deep);
	color: var(--wp--preset--color--heading);
	border: 1px solid rgba(255, 194, 165, .4);
}
/* `.rkm-em` is deliberately NOT coral: an emphasised proper noun in prose is neither
   a label nor a value, and on royale-pro-az «MilliÖN» painted in the data colour read
   as a figure to compare. It takes the accent-lit tone instead. */
.rkm-em {
	color: var(--wp--preset--color--acid-lit);
	font-style: normal;
	font-weight: 700;
}

/* Figures: mono, tabular, mint. The mono face carries FIGURES ONLY — never an
   uppercase Azerbaijani label. That is a structural rule, not a preference: the mono
   slot is where ə/Ə is most often missing or (Inconsolata) drawn as a plain O, and
   restricting mono to digits removes the whole class of risk.

   Two components the donor kept on this list are NOT on it here, and the reason is what
   the pages actually put inside them. `.rkm-ledger__v` is the value column of a key/value
   ledger: on the donor it held amounts, on this build the page authors use it for whole
   Azerbaijani sentences («Yoxdur. Ad, e-poçt, telefon və ya kart soruşan sahə yoxdur»),
   fifteen of them across four pages. `.rkm-offer__amount` holds a PHRASE («250 fırlanma
   + 550 AZN-ə qədər»), not a number. Setting either in a monospace face is a legibility
   and register failure even where the glyphs exist — so both keep tabular figures and
   lose the mono family. Figures inside them still get it, because the pages wrap those
   in `.rkm-num`. */
.rkm-num,
.rkm-rtp,
.rkm-table td,
.rkm-plate__num,
.rkm-stat-tile .v,
.rkm-stat__num,
.rkm-tbl__lim,
.rkm-cutoff__clock,
.rkm-game__mono {
	font-family: var(--wp--preset--font-family--mono);
	font-variant-numeric: tabular-nums;
	text-transform: none;
}
.rkm-ledger__v,
.rkm-offer__amount {
	font-variant-numeric: tabular-nums;
}
/* Mint is the figure colour ON A DARK GROUND. `.rkm-cutoff__clock` is deliberately absent:
   it is a figure on a CORAL FILL, where mint measures 1.68:1 — the shoot harness caught it
   on four pages × four breakpoints. A colour rule that is correct on the field and wrong on
   a fill is the exact failure royale1.org recorded for its focus ring; the fix is the same
   one, scope the rule to the ground it was reasoned about. */
.rkm-num,
.rkm-rtp,
.rkm-table td,
.rkm-plate__num,
.rkm-stat-tile .v,
.rkm-stat__num,
.rkm-tbl__lim,
.rkm-game__mono {
	color: var(--wp--preset--color--mint);
}
/* Ink on coral: 8.35:1. */
.rkm-cutoff__clock {
	color: var(--wp--preset--color--ink);
}
/* The offer amount is a headline value, so it takes the display face. */
.rkm-offer__amount {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 800;
	color: var(--wp--preset--color--acid);
}
.rkm-rtp {
	border: 1px solid rgba(168, 193, 232, .34);
	background: rgba(168, 193, 232, .08);
	color: var(--wp--preset--color--mint);
}
.rkm-bar,
.rkm-rtpbar__track {
	border-radius: var(--rkm-r-pill);
	background: rgba(230, 242, 236, .10);
	overflow: hidden;
}
.rkm-bar > i,
.rkm-rtpbar__fill {
	border-radius: var(--rkm-r-pill);
	background: linear-gradient(90deg, var(--wp--preset--color--acid-deep), var(--wp--preset--color--acid));
}
.rkm-rtpbar__val {
	color: var(--wp--preset--color--mint);
}
.rkm-method__check,
.rkm-kyc__state {
	color: var(--wp--preset--color--sun);
}

/* ---- 4. Buttons read as chips ------------------------------------------
   A pill with a milled edge and no drop shadow at rest: the shadow slot is reserved
   for the focus ring, and the edge is what makes the control look struck rather than
   filled. */
.wp-block-button:not(.rkm-btn-outline) > .wp-block-button__link,
.rkm-cta,
.rkm-sticky__link {
	background: var(--wp--preset--gradient--acid);
	color: var(--wp--preset--color--ink);
	border: none;
	box-shadow: none;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 800;
	letter-spacing: 0.01em;
}
.wp-block-button:not(.rkm-btn-outline) > .wp-block-button__link:hover,
.rkm-cta:hover,
.rkm-sticky__link:hover {
	filter: brightness(1.06);
}
.rkm-btn-outline {
	border: 1.5px solid var(--wp--preset--color--rim);
	color: var(--wp--preset--color--contrast);
	background: rgba(230, 242, 236, .02);
}
.rkm-btn-outline:hover {
	border-color: var(--wp--preset--color--acid);
	color: var(--wp--preset--color--acid-lit);
}

/* ---- 4b. The three components this identity ADDS ------------------------
   The mark and the mascot are inline SVG from inc/brand.php, so they need a box; the
   wordmark's pip is drawn here rather than typed, because the donor used ♛ (U+265B) and
   Baloo 2 has no such glyph — the one decorative character in the lockup would have
   fallen back to whatever the OS supplies and rendered differently per platform. */
.rkm-mascot {
	display: block;
	width: min(100%, 168px);
	height: auto;
	margin-inline: auto;
}
.rkm-wordmark__pip--jeton {
	display: inline-block;
	position: relative;
	width: .66em;
	height: .66em;
	border-radius: 50%;
	background: var(--wp--preset--color--acid);
	box-shadow: inset 0 0 0 .085em var(--wp--preset--color--ink);
	vertical-align: .02em;
	/* the inherited rule points the pip at a symbol font for ♛; there is no glyph here */
	font-family: inherit;
	color: transparent;
}
.rkm-wordmark__pip--jeton::after {
	content: "";
	position: absolute;
	left: 57%;
	top: 50%;
	transform: translate(-50%, -50%);
	border-left: .2em solid var(--wp--preset--color--ink);
	border-top: .13em solid transparent;
	border-bottom: .13em solid transparent;
}

/* The quick-nav rail carries FIVE routes on this site (Demo · Oyunlar · Bonus · Giriş ·
   Yüklə), and the inherited grid was written for four: `repeat(2, 1fr)` above 620px, which
   strands the fifth tile alone in a half-width row. Five slim tiles in one row is also the
   right read for a nav rail, so the wide case gets five columns; the mid case keeps two and
   lets any LONE final tile span the row, which is correct for an odd count of any size and
   avoids the auto-fit trap that stranded a cell on royale-vip.org. */
@media (min-width: 900px) {
	.rkm-routes {
		grid-template-columns: repeat(5, 1fr);
	}
}
@media (min-width: 620px) and (max-width: 899px) {
	.rkm-routes {
		grid-template-columns: repeat(2, 1fr);
	}
	.rkm-routes > :last-child:nth-child(odd) {
		grid-column: 1 / -1;
	}
}

/* ---- 5. Focus: a TWO-TONE ring, and this must be last -------------------
   The accent is LIGHT — acid lime is 14.8:1 on the jade field, so a single ring
   colour cannot clear 3:1 on both the field and an acid-filled button (royale1.org
   shipped exactly that: an inherited ring at 1.31:1 on every primary CTA). Two tones
   solve it: a near-black spacer that wins ON the fill, and a white outline that wins
   ON the field. Stated with :focus-visible AND a plain :focus fallback, and NOT
   inside :where() — :where() has zero specificity, so any later class rule silently
   outranks it. */
a:focus-visible,
button:focus-visible,
summary:focus-visible,
input:focus-visible,
select:focus-visible,
[tabindex]:focus-visible,
.rkm-cta:focus-visible,
.rkm-btn-outline:focus-visible,
.rkm-sticky__link:focus-visible,
.wp-block-button__link:focus-visible,
.wp-element-button:focus-visible {
	outline: 3px solid var(--wp--preset--color--heading);
	outline-offset: 2px;
	box-shadow: 0 0 0 2px var(--wp--preset--color--ink);
}
a:focus,
button:focus,
summary:focus {
	outline: 3px solid var(--wp--preset--color--heading);
	outline-offset: 2px;
}

/* ---- 6. The ambient field ----------------------------------------------
   One acid wash from the top-right and one coral wash from the lower-left, both very
   low alpha: two hues at 6–14% is what keeps an all-green page from reading flat
   without ever competing with a CTA. */
.wp-site-blocks::before {
	background:
		radial-gradient(1100px 620px at 82% -10%, rgba(231, 184, 154, .10), transparent 62%),
		radial-gradient(880px 520px at 6% 88%, rgba(143, 169, 222, .07), transparent 60%);
}
::selection {
	background: rgba(231, 184, 154, .28);
	color: #26150a;
}

/* ---- 7. Motion, and the reduced-motion contract ------------------------- */
.rkm-cta,
.rkm-btn-outline,
.rkm-quicklink,
.rkm-game,
.rkm-cat {
	transition: transform .16s ease, filter .16s ease, border-color .16s ease;
}
.rkm-quicklink:hover,
.rkm-cat:hover,
.rkm-game:hover {
	transform: translateY(-2px);
}
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: .001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: .001ms !important;
		scroll-behavior: auto !important;
	}
	.rkm-quicklink:hover,
	.rkm-cat:hover,
	.rkm-game:hover {
		transform: none;
	}
}

/* ---- 8. The offer banner's headline and its honesty note ----------------
   inc/schema.php builds the /bonus Offer node from `.rkm-offer__headline`, so the
   element has to be a real thing the READER sees, never a PHP constant. The note is
   the sentence that says the figures belong to the operator and change without
   notice — on royale-pro-az it was USED by the page and DECLARED by no stylesheet,
   so it rendered as full-size unstyled prose: visually the loudest thing in the
   banner and semantically the quietest. Declared here on purpose. */
.rkm-offer__headline {
	margin: 0 0 6px;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 800;
	font-size: clamp(20px, 2.5vw, 26px);
	line-height: 1.22;
	letter-spacing: -0.2px;
	color: var(--wp--preset--color--heading);
}
.rkm-offer__note {
	margin: 14px 0 0;
	font-size: 12.5px;
	line-height: 1.6;
	color: var(--wp--preset--color--dim);
}
/* ==== END RPL IDENTITY LAYER ==== */
