/* Homepage: asymmetric editorial matchbook */
.rb-home-hero { background: var(--rb-navy-950); color: var(--rb-text-light); overflow: hidden; padding-block: clamp(4.8rem,9vw,8.5rem); position: relative; }
.rb-home-hero::before { background-image: linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px); background-size: 42px 42px; content: ""; inset: 0; mask-image: linear-gradient(to bottom,#000,transparent 80%); position: absolute; }
.rb-home-hero__grid { align-items: center; display: grid; gap: clamp(2.5rem,6vw,6rem); grid-template-columns: minmax(0,58fr) minmax(330px,42fr); position: relative; }
.rb-home-hero__copy h1 { color: #fff; max-width: 820px; }
.rb-hero-dek { color: #c5d1dd; font-size: 1.1rem; max-width: 690px; }
.rb-home-hero__visual { margin-inline: auto; max-width: 470px; position: relative; width: 100%; }
.rb-home-hero__visual .rb-media__image { aspect-ratio: 4/5; object-fit: cover; }
.rb-home-hero__visual figcaption { color: #bac7d4; }
.rb-float-label { background: var(--rb-gold-500); border-radius: 999px; box-shadow: 0 12px 30px rgba(0,0,0,.25); color: var(--rb-navy-950); font-size: .67rem; font-weight: 900; letter-spacing: .09em; padding: .48rem .75rem; position: absolute; }
.rb-float-label--one { left: -2rem; top: 18%; }
.rb-float-label--two { right: -2rem; top: 47%; }
.rb-float-label--three { bottom: 13%; left: -1rem; }
.rb-route-bands { background: #fff; }
.rb-route-bands__list { display: grid; gap: .9rem; }
.rb-route-band { align-items: center; border: 1px solid var(--rb-line); display: grid; gap: 1.5rem; grid-template-columns: .45fr 1fr 1.25fr; min-height: 130px; padding: 1.2rem 1.6rem; text-decoration: none; }
.rb-route-band:nth-child(1) { border-radius: 12px 36px 12px 12px; margin-right: 8%; }
.rb-route-band:nth-child(2) { background: var(--rb-navy-900); border-color: var(--rb-navy-900); border-radius: 36px 12px 12px 12px; color: #fff; margin-left: 5%; }
.rb-route-band:nth-child(2) a, .rb-route-band:nth-child(2) p { color: #d4dfe9; }
.rb-route-band:nth-child(3) { border-radius: 12px 12px 36px 12px; margin-right: 16%; }
.rb-route-band__label { color: #7d5500; font-size: .76rem; font-weight: 900; letter-spacing: .16em; }
.rb-route-band__links { display: flex; flex-wrap: wrap; gap: .6rem; }
.rb-route-band__links a { border-bottom: 2px solid var(--rb-gold-500); color: inherit; font-weight: 760; text-decoration: none; }
.rb-home-matchbook { background: var(--rb-navy-900); color: #fff; }
.rb-home-matchbook > .rb-container { margin-inline: auto; }
.rb-home-matchbook .rb-kicker { color: var(--rb-gold-400); }
.rb-home-matchbook a { color: var(--rb-gold-400); }
.rb-matchbook-grid { align-items: stretch; display: grid; gap: 0; grid-template-columns: 46fr 54fr; }
.rb-matchbook-grid .wp-block-image { height: 100%; margin: 0; }
.rb-matchbook-grid .wp-block-image img { border-radius: 24px 0 0 24px; height: 100%; object-fit: cover; width: 100%; }
.rb-matchbook-panel { background: var(--rb-navy-800); border-radius: 0 24px 24px 0; padding: clamp(2rem,5vw,4rem); }
.rb-score-steps { counter-reset: score; display: grid; gap: .65rem; list-style: none; padding: 0; }
.rb-score-steps li { align-items: center; border-bottom: 1px solid rgba(255,255,255,.13); display: grid; gap: 1rem; grid-template-columns: 42px 1fr; padding: .75rem 0; }
.rb-score-steps li::before { color: var(--rb-gold-400); content: counter(score,decimal-leading-zero); counter-increment: score; font-variant-numeric: tabular-nums; font-weight: 900; }
.rb-home-casino-mosaic { background: #040b14; color: #fff; }
.rb-home-casino-mosaic figcaption { color: #c5d1dd; }
.rb-home-casino-mosaic a { color: var(--rb-gold-400); }
.rb-mosaic-grid { display: grid; gap: 1rem; grid-template-columns: 1.35fr .65fr .8fr; grid-template-rows: 260px 220px; }
.rb-mosaic-card { border-radius: 22px; color: #fff; overflow: hidden; position: relative; text-decoration: none; }
.rb-mosaic-card:first-child { grid-row: 1/3; }
.rb-mosaic-card:nth-child(2) { grid-column: 2/4; }
.rb-mosaic-card img { height: 100%; object-fit: cover; width: 100%; }
.rb-mosaic-card__diagram { background:#102235; display:block; height:100%; overflow:hidden; position:relative; width:100%; }
.rb-mosaic-card__diagram::before,
.rb-mosaic-card__diagram::after { content:""; position:absolute; }
.rb-mosaic-card__diagram span { display:block; position:absolute; }
.rb-mosaic-card:first-child .rb-mosaic-card__diagram { background:linear-gradient(135deg,#152c45,#07111f); }
.rb-mosaic-card:first-child .rb-mosaic-card__diagram::before { border:1px solid rgba(255,255,255,.22); border-radius:50%; height:58%; left:18%; top:14%; width:64%; }
.rb-mosaic-card:first-child .rb-mosaic-card__diagram::after { background:linear-gradient(90deg,transparent,rgba(255,196,0,.75),transparent); height:2px; left:10%; top:48%; width:80%; }
.rb-mosaic-card:first-child .rb-mosaic-card__diagram span { background:#19b5a5; border-radius:50%; height:9px; left:calc(26% + (var(--rb-dot, 0) * 18%)); top:32%; width:9px; }
.rb-mosaic-card:first-child .rb-mosaic-card__diagram span:nth-child(2) { --rb-dot:1; top:48%; }
.rb-mosaic-card:first-child .rb-mosaic-card__diagram span:nth-child(3) { --rb-dot:2; top:62%; }
.rb-mosaic-card:nth-child(2) .rb-mosaic-card__diagram { background:repeating-linear-gradient(90deg,#1a2d42 0 20%,#0c1929 20% 23%); }
.rb-mosaic-card:nth-child(2) .rb-mosaic-card__diagram::before { background:repeating-linear-gradient(0deg,transparent 0 22%,rgba(255,255,255,.18) 22% 24%); inset:12% 8% 28%; }
.rb-mosaic-card:nth-child(2) .rb-mosaic-card__diagram::after { border:2px solid var(--rb-gold-500); border-left:0; border-right:0; height:24%; left:7%; top:30%; width:86%; }
.rb-mosaic-card:nth-child(3) .rb-mosaic-card__diagram { background:radial-gradient(circle at 50% 30%,#206d5a,#0d3b35 72%); }
.rb-mosaic-card:nth-child(3) .rb-mosaic-card__diagram::before { border:2px solid rgba(255,255,255,.28); border-radius:50%; height:90px; left:50%; top:18%; transform:translateX(-50%); width:90px; }
.rb-mosaic-card:nth-child(3) .rb-mosaic-card__diagram::after { background:linear-gradient(90deg,transparent,rgba(255,255,255,.35),transparent); height:1px; left:8%; top:56%; width:84%; }
.rb-mosaic-card:nth-child(4) .rb-mosaic-card__diagram { background:linear-gradient(150deg,#132942,#07111f); }
.rb-mosaic-card:nth-child(4) .rb-mosaic-card__diagram::before { border-top:3px solid var(--rb-gold-500); border-radius:50%; height:80%; left:9%; top:17%; transform:rotate(-18deg); width:82%; }
.rb-mosaic-card:nth-child(4) .rb-mosaic-card__diagram::after { background:var(--rb-gold-500); border-radius:50%; height:10px; right:13%; top:22%; width:10px; }
.rb-mosaic-card::after { background: linear-gradient(0deg,rgba(3,9,16,.92),rgba(3,9,16,.04) 70%); content: ""; inset: 0; position: absolute; }
.rb-mosaic-card__copy { bottom: 0; left: 0; padding: 1.25rem; position: absolute; right: 0; z-index: 1; }
.rb-mosaic-card__copy p { color: #c7d2dd; font-size: .82rem; margin: .3rem 0 0; }
.rb-mobile-story { background: #edf1f4; }
.rb-device-story { align-items: center; display: grid; gap: clamp(2rem,6vw,5rem); grid-template-columns: .8fr 1.2fr; }
.rb-device-photo { background: var(--rb-navy-900); border: 10px solid var(--rb-navy-900); border-radius: 42px; box-shadow: var(--rb-shadow); margin-inline: auto; max-width: 390px; padding: .55rem; }
.rb-device-photo img { aspect-ratio: 4/5; border-radius: 28px; object-fit: cover; }
.rb-device-photo .wp-block-image figcaption { color: #c8d3de; }
.rb-platform-tabs { display: grid; gap: .8rem; }
.rb-platform-tabs details { background: #fff; border: 1px solid var(--rb-line); border-radius: 10px 24px 10px 10px; padding: .2rem 1rem; }
.rb-platform-tabs summary { cursor: pointer; font-weight: 780; min-height: 52px; padding-block: .75rem; }
.rb-home-ledger { background: var(--rb-ivory-50); }
.rb-ledger-sheet { background: #fffdf8; border: 1px solid #d9d1be; box-shadow: 14px 16px 0 #e5decd; display: grid; gap: 0; grid-template-columns: repeat(7,minmax(110px,1fr)); overflow-x: auto; padding: 1rem; }
.rb-ledger-sheet > div { border-bottom: 1px solid #ded7c8; min-width: 110px; padding: .8rem .65rem; }
.rb-ledger-sheet strong { display: block; font-size: .73rem; letter-spacing: .05em; }
.rb-ledger-status { display: grid; gap: .8rem; grid-template-columns: repeat(4,minmax(0,1fr)); margin-top: 2rem; }
.rb-ledger-status > div { border-left: 4px solid #8b6200; padding: .3rem 1rem; }
.rb-safety-home { background: var(--rb-navy-950); color: #fff; }
.rb-safety-home .rb-kicker, .rb-safety-home a { color: var(--rb-gold-400); }
.rb-safety-grid { display: grid; gap: 2rem; grid-template-columns: .8fr 1.2fr; }
.rb-safety-signals { display: grid; gap: .7rem; }
.rb-safety-signals div { align-items: center; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.13); border-radius: 10px; display: flex; justify-content: space-between; padding: .8rem 1rem; }
.rb-safety-signals span { color: var(--rb-teal-500); font-weight: 820; }
.rb-responsible-home { background: var(--rb-ivory-50); }
.rb-responsible-grid { align-items: center; display: grid; gap: 3rem; grid-template-columns: .9fr 1.1fr; }
.rb-responsible-grid .wp-block-image img { border-radius: 34px 12px 34px 12px; }
.rb-editorial-method { background: #fff; }
.rb-method-list { counter-reset: method; display: grid; gap: 0; grid-template-columns: repeat(4,minmax(0,1fr)); }
.rb-method-list > div { border-left: 1px solid var(--rb-line); min-height: 190px; padding: 1.4rem; }
.rb-method-list > div::before { color: #855a00; content: counter(method,decimal-leading-zero); counter-increment: method; font-size: 1.8rem; font-weight: 900; }
.rb-longread { background: #eef2f4; }
.rb-longread__shell { background: #fff; border-radius: 14px 42px 14px 14px; box-shadow: var(--rb-shadow); margin-inline: auto; max-width: 900px; padding: clamp(2rem,5vw,4.5rem); }
.rb-longread__shell h2 { border-top: 1px solid var(--rb-line); margin-top: 2.8rem; padding-top: 2rem; }
.rb-home-faq { background: var(--rb-navy-900); color: #fff; }
.rb-home-faq .rb-faq-item { color: var(--rb-text-dark); }

/* Homepage density pass */
.rb-home-toc { background: rgba(255,255,255,.96); border-bottom: 1px solid var(--rb-line); border-top: 1px solid var(--rb-line); position: sticky; top: 84px; z-index: 900; }
.rb-home-toc .rb-container { align-items: center; display: flex; gap: 1.2rem; min-height: 54px; overflow-x: auto; }
.rb-home-toc strong { color: #6f571b; font-size: .72rem; letter-spacing: .12em; white-space: nowrap; }
.rb-home-toc a { color: #35475a; flex: 0 0 auto; font-size: .78rem; font-weight: 740; text-decoration: none; }
.rb-home-device-sketch { align-items: end; display: grid; gap: 1rem; grid-template-columns: .9fr 1fr 1.15fr; min-height: 360px; padding: 1.4rem; }
.rb-home-device-frame { background:#dde5ea; border-radius:36px; padding:1rem; }
.rb-home-device-sketch span { align-items: end; background: var(--rb-navy-900); border: 8px solid #1a2b3d; border-radius: 34px 34px 14px 14px; color: var(--rb-gold-400); display: flex; font-size: .68rem; font-weight: 850; justify-content: center; min-height: 270px; padding: 1rem .4rem; text-align: center; }
.rb-home-device-sketch span:nth-child(2) { min-height: 330px; }
.rb-home-device-sketch span:nth-child(3) { border-radius: 16px; min-height: 240px; }
.rb-url-preview { background: #fff; border: 1px solid #b9c7d3; border-radius: 14px; color: var(--rb-text-dark); display: grid; gap: .8rem; padding: 1.3rem; }
.rb-url-preview code { background: #eef3f5; border-radius: 8px; color: #526174; overflow-wrap: anywhere; padding: .8rem; }
.rb-url-preview code strong { color: #075f59; }
.rb-url-preview a { font-weight: 780; }
.rb-safety-home .rb-url-preview a { color:#075f59; }
.rb-home-ledger .rb-ledger-sheet { margin-top: 2rem; }
.rb-responsible-home .rb-diagram { margin: 0; }
.rb-responsible-home .rb-diagram img { box-shadow: none; }
.rb-home-faq-list { max-width: 880px; }

/* Independent template frames */
.rb-guide-content .rb-page-hero { background: #eef2f5; overflow: hidden; padding-block: clamp(4.8rem,9vw,8rem); position: relative; }
.rb-guide-content .rb-page-hero > .wp-block-group__inner-container { position: relative; z-index: 1; }
.rb-guide-content .rb-page-hero h1 { max-width: 940px; }
.rb-guide-content .rb-page-hero .rb-lead { font-size: 1.12rem; max-width: 720px; }
.rb-sports-crumb,.rb-studio-crumb,.rb-pace-crumb,.rb-tree-crumb { padding-block: 1rem; }
.rb-sports-workbench { display: grid; grid-template-columns: 220px minmax(0,1fr); margin-inline: auto; max-width: 1460px; }
.rb-page-toc { align-self: start; display: grid; gap: .65rem; margin: 5rem 0 0; padding: 0 1.4rem; position: sticky; top: 160px; }
.rb-page-toc strong { color: #8a5b00; font-size: .72rem; letter-spacing: .12em; text-transform: uppercase; }
.rb-page-toc a { border-left: 2px solid #c9d2dc; color: #526174; font-size: .8rem; padding: .4rem 0 .4rem .8rem; text-decoration: none; }
.rb-sports-workbench__content { min-width: 0; }
.rb-sports-screen-page .rb-scoreboard-hero { background: var(--rb-navy-950); color: #fff; display:block; }
.rb-sports-screen-page .rb-scoreboard-hero__grid { align-items: center; display: grid; gap: 2.5rem; grid-template-columns: minmax(390px,1fr) minmax(460px,1.1fr); }
.rb-sports-screen-page .rb-scoreboard-hero__copy h1 { font-size: clamp(2.7rem,4.2vw,3.55rem); margin-inline: 0; max-width: 700px; text-align: left; }
.rb-sports-screen-page .rb-scoreboard-hero .rb-diagram { margin: 0; }
.rb-sports-screen-page .rb-scoreboard-hero .rb-diagram img { box-shadow: none; }
.rb-programme-mast,.rb-lab-ruler,.rb-storyboard-top,.rb-ledger-binding,.rb-diagram-label,.rb-url-lab-status,.rb-board-toolbar,.rb-library-index,.rb-charter-index,.rb-legal-mast { border-bottom: 1px solid var(--rb-line); font-size: .72rem; letter-spacing: .12em; }
.rb-programme-mast .rb-container,.rb-lab-ruler .rb-container,.rb-storyboard-top .rb-container,.rb-ledger-binding .rb-container,.rb-diagram-label .rb-container,.rb-url-lab-status .rb-container,.rb-board-toolbar .rb-container,.rb-library-index .rb-container,.rb-charter-index .rb-container,.rb-legal-mast .rb-container { align-items: center; display: flex; justify-content: space-between; min-height: 52px; }
.rb-cricket-programme-page { background: var(--rb-ivory-50); }
.rb-cricket-programme-page .rb-programme-hero { background: var(--rb-ivory-50); display:block; }
.rb-cricket-programme-page .rb-programme-hero__grid { align-items: center; display: grid; gap: 3rem; grid-template-columns: .85fr 1.15fr; }
.rb-cricket-programme-page .rb-diagram img { border: 1px solid #c9b77f; box-shadow: 12px 12px 0 #e3d9bb; }
.rb-casino-crumb { background: #050b13; padding-block: 1rem; }
.rb-casino-crumb .rb-breadcrumb,.rb-casino-crumb .rb-breadcrumb a { color: #b9c7d4; }
.rb-casino-result-page .rb-casino-hero { background: #050b13; color: #fff; }
.rb-casino-result-page .rb-casino-hero > .wp-block-group__inner-container { display: grid; gap: 1rem 3rem; grid-template-columns: .72fr 1.28fr; }
.rb-casino-result-page .rb-casino-hero .rb-diagram { grid-column: 2; grid-row: 1/5; margin: 0; }
.rb-casino-result-page .rb-casino-hero .rb-diagram img { box-shadow: none; }
.rb-live-studio-page { background: #07111f; }
.rb-live-studio-page .rb-studio-floor { background: #fff; }
.rb-live-studio-page .rb-live-hero { background: linear-gradient(135deg,#07111f,#143451); color:#fff; }
.rb-live-studio-page .rb-live-hero .rb-diagram { margin-top: 3rem; }
.rb-live-studio-page .rb-live-hero .rb-diagram img { box-shadow: none; }
.rb-slots-mechanics-page .rb-slots-hero { background:#0d1320; color:#fff; }
.rb-slots-mechanics-page .rb-slots-hero__grid { align-items: center; display: grid; gap: 3rem; grid-template-columns: 1fr 1fr; }
.rb-slots-mechanics-page .rb-slots-hero h1 { font-size:clamp(2.7rem,4.2vw,3.4rem); }
.rb-slots-mechanics-page .rb-slots-hero .rb-diagram { margin: 0; }
.rb-slots-mechanics-page .rb-slots-hero .rb-diagram img { box-shadow: none; }
.rb-table-atlas-page .rb-atlas-binding { background: #073d32; padding-block: 1rem; }
.rb-table-atlas-page .rb-atlas-binding .rb-breadcrumb,.rb-table-atlas-page .rb-atlas-binding a { color:#d9ebe4; }
.rb-table-atlas-page .rb-table-hero { background:#073d32; color:#fff; padding-bottom: 3rem; }
.rb-table-atlas-page .rb-table-hero .rb-diagram { margin-top: 2.5rem; overflow-x: auto; }
.rb-table-atlas-page .rb-table-hero .rb-diagram img { box-shadow: none; min-width: 940px; }
.rb-atlas-table th:first-child,.rb-atlas-table td:first-child { left: 0; position: sticky; z-index: 2; }
.rb-atlas-table td:first-child { background: #f7f4ea; }
.rb-crash-pace-page .rb-crash-hero { background:#111927; color:#fff; }
.rb-crash-pace-page .rb-crash-hero__grid { align-items: center; display: grid; gap: 3rem; grid-template-columns: .75fr 1.25fr; }
.rb-crash-pace-page .rb-crash-hero .rb-diagram { margin:0; }
.rb-mobile-storyboard-page .rb-app-hero { background:#eef1f4; }
.rb-mobile-storyboard-page .rb-app-hero > .wp-block-group__inner-container { display:grid; gap:1rem 3rem; grid-template-columns:.7fr 1.3fr; }
.rb-mobile-storyboard-page .rb-app-hero .rb-diagram { grid-column:2; grid-row:1/5; margin:0; }
.rb-payment-record-page { background:#fcfbf6; }
.rb-payment-record-page .rb-payment-hero { background:var(--rb-ivory-50); }
.rb-payment-record-page .rb-payment-hero .rb-diagram { margin-top:2.5rem; }
.rb-payment-record-page .rb-payment-hero .rb-diagram img { box-shadow:10px 12px 0 #e5decd; }
.rb-access-tree-page { background:#f4f7f9; }
.rb-access-tree-page .rb-login-hero { background:#fff; }
.rb-access-tree-page .rb-login-hero > .wp-block-group__inner-container { display:grid; gap:1rem 3rem; grid-template-columns:.8fr 1.2fr; }
.rb-access-tree-page .rb-login-hero .rb-diagram { grid-column:2; grid-row:1/5; margin:0; }
.rb-registration-diagram-page { background:#eaf5f3; }
.rb-registration-diagram-page .rb-registration-hero { background:#eaf5f3; }
.rb-registration-diagram-page .rb-registration-hero .rb-diagram { margin-top:2rem; }
.rb-terms-annotation-page { background:#faf8f1; }
.rb-terms-annotation-page .rb-promotion-hero { background:#fff9e9; }
.rb-terms-annotation-page .rb-promotion-hero > .wp-block-group__inner-container { display:grid; gap:1rem 3rem; grid-template-columns:.75fr 1.25fr; }
.rb-terms-annotation-page .rb-promotion-hero .rb-diagram { grid-column:2; grid-row:1/5; margin:0; }
.rb-url-lab-page,.rb-url-lab-status { background:#061321; color:#e8eff6; }
.rb-url-lab-status { border-color:rgba(255,255,255,.12); }
.rb-url-lab-status .rb-breadcrumb,.rb-url-lab-status a { color:#bed0df; }
.rb-url-lab-page .rb-safety-hero { background:#061321; color:#fff; padding-bottom:4rem; }
.rb-url-lab-page .rb-safety-hero > .wp-block-group__inner-container { display:grid; gap:1rem 2.5rem; grid-template-columns:.75fr 1.25fr; }
.rb-url-lab-page .rb-safety-hero .rb-diagram { grid-column:2; grid-row:1/4; margin:0; }
.rb-url-lab-page .rb-safety-hero .rb-tool { grid-column:1/-1; }
.rb-url-lab-page .rb-url-console { background:#091829; color:#e8eff6; }
.rb-support-board-page .rb-support-hero { background:#e9f4f5; }
.rb-support-board-page .rb-support-hero > .wp-block-group__inner-container { display:grid; gap:1rem 3rem; grid-template-columns:.72fr 1.28fr; }
.rb-support-board-page .rb-support-hero .rb-diagram { grid-column:2; grid-row:1/5; margin:0; }
.rb-knowledge-library-page { background:#f4f7f8; }
.rb-knowledge-library-page .rb-faq-hero { background:linear-gradient(130deg,#fff,#e8f2f2); }
.rb-knowledge-library-page .rb-faq-toolbar { background:rgba(255,255,255,.97); border:1px solid var(--rb-line); border-radius:14px; padding:1.1rem; position:sticky; top:94px; z-index:50; }
.rb-faq-categories button span { align-items:center; background:#e8eef2; border-radius:999px; display:inline-flex; font-size:.68rem; justify-content:center; margin-left:.3rem; min-width:24px; padding:.1rem .35rem; }
.rb-calm-toolkit-page,.rb-calm-toolkit-page .rb-responsible-hero,.rb-calm-toolkit-page .rb-calm-workbook { background:var(--rb-ivory-50); }
.rb-calm-toolkit-page .rb-tool { border-radius:8px; box-shadow:none; }
.rb-charter-index { background:#f1f4f6; }
.rb-public-info-map { background:#fff; border-left:8px solid var(--rb-navy-900); display:grid; gap:2rem; grid-template-columns:1.2fr .8fr; margin-top:3rem; padding:clamp(1.5rem,4vw,3rem); }
.rb-public-info-map ul { display:grid; gap:.5rem; margin:0; }
.rb-public-info-map dl { border-top:1px solid var(--rb-line); grid-column:1/-1; margin:0; }
.rb-public-info-map dl div { display:grid; gap:1rem; grid-template-columns:180px 1fr; padding:.8rem 0; }
.rb-public-info-map dt { font-weight:800; }
.rb-public-info-map dd { color:#526174; margin:0; }

/* Unified legal documents */
.rb-legal-document-page { background:#fff; }
.rb-legal-layout { display:grid; gap:clamp(2rem,5vw,5rem); grid-template-columns:220px minmax(0,760px); justify-content:center; padding-block:4rem 6rem; }
.rb-legal-toc { align-self:start; border-left:3px solid #d8e0e7; display:grid; gap:.7rem; padding-left:1rem; position:sticky; top:120px; }

/* Internal /go/ guide index used by the informational floating entry. */
.rb-go-index { display:grid; gap:2rem; }
.rb-go-index > p:first-of-type { font-size:1.08rem; }
.rb-go-link-grid { display:grid; gap:1rem; grid-template-columns:repeat(2,minmax(0,1fr)); }
.rb-go-link-group { background:#f2f5f7; border:1px solid var(--rb-line); border-radius:14px; display:grid; gap:.65rem; padding:1.35rem; }
.rb-go-link-group h2 { font-size:1.25rem; margin:0 0 .25rem; }
.rb-go-link-group a { align-items:center; border-bottom:1px solid #d6dee4; display:flex; justify-content:space-between; min-height:44px; text-decoration:none; }
.rb-go-link-group a::after { content:'→'; font-weight:850; }
.rb-go-boundary { background:var(--rb-navy-900); border-left:4px solid var(--rb-gold-500); border-radius:12px; color:var(--rb-text-light); padding:1.25rem 1.4rem; }
.rb-go-boundary p { margin:.45rem 0 0; }

@media (max-width: 620px) {
	.rb-go-link-grid { grid-template-columns:1fr; }
}
.rb-legal-toc strong { color:#8a5b00; font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; }
.rb-legal-toc a { color:#526174; font-size:.82rem; }
.rb-legal-body { min-width:0; }
.rb-legal-body .rb-page-hero { background:transparent; padding:0 0 2.5rem; }
.rb-legal-body .rb-page-hero .rb-container,.rb-legal-body .rb-chapter .rb-container { padding-inline:0; }
.rb-legal-body .rb-chapter { background:#fff; border-top:1px solid var(--rb-line); padding:2.5rem 0 0 !important; }
.rb-legal-body h1 { font-size:clamp(2.4rem,5vw,3.6rem); }
.rb-related-legal { border-top:1px solid var(--rb-line); padding-block:2.5rem 5rem; }
.rb-related-legal strong { display:block; margin-bottom:1rem; }
.rb-related-legal div { display:flex; flex-wrap:wrap; gap:.7rem; }
.rb-related-legal a { background:#eef3f5; border-radius:999px; color:var(--rb-text-dark); font-size:.82rem; font-weight:760; min-height:44px; padding:.6rem 1rem; text-decoration:none; }

/* Page-specific hero families */
.rb-guide .rb-page-hero { background: #eef2f5; }
.rb-sports-dashboard .rb-page-hero { background: var(--rb-navy-950); color: #fff; }
.rb-sports-dashboard .rb-page-hero h1 { margin-inline: auto; text-align: center; }
.rb-sports-dashboard .rb-page-hero::after { background: repeating-linear-gradient(90deg,transparent 0 84px,rgba(255,255,255,.05) 84px 85px); content:""; inset:0; position:absolute; }
.rb-scoreboard-hero { align-items: end; display: grid; gap: 2rem; grid-template-columns: 1.2fr .8fr; }
.rb-scoreboard-visual { background: #030911; border: 1px solid rgba(255,255,255,.16); border-radius: 8px; box-shadow: 12px 12px 0 var(--rb-gold-500); color: #fff; display: grid; gap: .7rem; grid-template-columns: 1fr auto; padding: 1.4rem; }
.rb-scoreboard-visual strong { color: var(--rb-gold-400); font-size: 2.4rem; font-variant-numeric: tabular-nums; }
.rb-screen-anatomy { display: grid; gap: 1rem; grid-template-columns: repeat(5,minmax(0,1fr)); }
.rb-screen-anatomy > div { background: #fff; border-top: 5px solid var(--rb-navy-900); min-height: 190px; padding: 1.2rem; }
.rb-sports-rail { display: flex; gap: 1rem; overflow-x: auto; padding-bottom: .7rem; scroll-snap-type: x proximity; }
.rb-sports-rail > article { background: var(--rb-navy-800); border-radius: 14px; color: #fff; flex: 0 0 280px; padding: 1.4rem; scroll-snap-align: start; }

.rb-cricket-programme .rb-page-hero { background: var(--rb-ivory-50); overflow: hidden; }
.rb-cricket-programme .rb-page-hero::after { border: 2px solid #b89330; border-radius: 50%; content:""; height:420px; position:absolute; right:-70px; top:-80px; width:420px; }
.rb-programme-hero { display: grid; gap: 2rem; grid-template-columns: 1fr 280px; }
.rb-programme-score { border: 2px solid var(--rb-navy-900); display:grid; gap:.5rem; padding:1.3rem; transform:rotate(-2deg); }
.rb-programme-score strong { font-size:3rem; }
.rb-format-timeline { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); }
.rb-format-timeline > div { border-top: 4px solid var(--rb-gold-500); padding: 1.2rem; }
.rb-market-grid { display:grid; gap:1rem; grid-template-columns:repeat(3,minmax(0,1fr)); }
.rb-market-grid > div { background:#fff; border:1px solid #d6d0c1; min-height:180px; padding:1.2rem; }
.rb-glossary { columns: 2; column-gap: 3rem; }
.rb-glossary dt { break-after: avoid; font-weight:800; }
.rb-glossary dd { break-inside:avoid; color:#526174; margin:0 0 1.2rem; }

.rb-casino-mosaic .rb-page-hero { background: #050b13; color:#fff; }
.rb-casino-mosaic .rb-page-hero::after { background:linear-gradient(120deg,transparent 45%,rgba(255,196,0,.1)); content:""; inset:0; position:absolute; }
.rb-category-comparison { display:grid; gap:1rem; grid-template-columns:1.4fr .9fr .7fr 1fr; }
.rb-category-comparison > div { background:#fff; border-radius:10px 28px 10px 10px; min-height:220px; padding:1.3rem; }
.rb-casino-gallery { align-items:start; display:grid; gap:clamp(1.4rem,3vw,2.6rem); grid-template-columns:1fr 1fr; }
.rb-casino-gallery .wp-block-image:first-child { grid-row:auto; }
.rb-casino-gallery img { border-radius:18px; height:auto; object-fit:cover; }
.rb-casino-gallery .rb-diagram { margin:0; }

.rb-live-studio .rb-page-hero { background:linear-gradient(135deg,#07111f,#143451); color:#fff; }
.rb-studio-map { display:grid; gap:1rem; grid-template-columns:repeat(3,minmax(0,1fr)); position:relative; }
.rb-studio-map::before { background:var(--rb-teal-500); content:""; height:2px; left:12%; position:absolute; right:12%; top:38px; }
.rb-studio-map > div { background:#fff; border:1px solid var(--rb-line); border-radius:50% 50% 16px 16px; min-height:190px; padding:1.2rem; position:relative; z-index:1; }
.rb-rule-accordion details { border-bottom:1px solid var(--rb-line); padding:1rem 0; }
.rb-rule-accordion summary { cursor:pointer; font-size:1.1rem; font-weight:780; }

.rb-slots-lab .rb-page-hero { background:#0d1320; color:#fff; }
.rb-reel-visual { display:flex; gap:.7rem; margin-top:2rem; }
.rb-reel-visual span { align-items:center; background:#fff; border-radius:10px; color:var(--rb-navy-950); display:flex; font-size:2rem; font-weight:900; height:80px; justify-content:center; width:70px; }
.rb-lab-grid { display:grid; gap:1rem; grid-template-columns:repeat(6,minmax(0,1fr)); }
.rb-lab-grid > div { background:#fff; border:1px solid var(--rb-line); min-height:170px; padding:1.1rem; }
.rb-lab-grid > div:nth-child(1),.rb-lab-grid > div:nth-child(4) { grid-column:span 2; }
.rb-lab-grid > div:nth-child(2),.rb-lab-grid > div:nth-child(3) { grid-column:span 1; }
.rb-lab-grid > div:nth-child(5) { grid-column:span 3; }
.rb-lab-grid > div:nth-child(6) { grid-column:span 1; }

.rb-table-atlas .rb-page-hero { background:#073d32; color:#fff; }
.rb-table-atlas .rb-chapter--ivory { background:#f8f2df; }
.rb-atlas-table table { min-width:940px; }
.rb-atlas-table th { background:#073d32; }
.rb-atlas-table tbody tr:nth-child(even) { background:#edf5ef; }

.rb-crash-timeline .rb-page-hero { background:#111927; color:#fff; }
.rb-curve-stage { background:linear-gradient(180deg,#101827,#090f18); border:1px solid rgba(255,255,255,.14); border-radius:14px; height:260px; overflow:hidden; position:relative; }
.rb-curve-stage::before { border-right:5px solid var(--rb-gold-500); border-top:5px solid var(--rb-gold-500); border-radius:0 100% 0 0; bottom:35px; content:""; height:170px; left:30px; position:absolute; transform:skewX(-18deg); width:75%; }
.rb-curve-stage::after { color:#fff; content:"ROUND PACE — NOT A PREDICTION"; font-size:.72rem; font-weight:850; letter-spacing:.12em; position:absolute; right:1.2rem; top:1rem; }
.rb-round-timeline { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.rb-round-timeline > div { border-top:4px solid var(--rb-red-500); min-height:170px; padding:1.2rem; }

.rb-app-storyboard .rb-page-hero { background:#eef1f4; }
.rb-storyboard { display:grid; gap:1rem; grid-template-columns:repeat(3,minmax(0,1fr)); }
.rb-storyboard > div { background:#fff; border:1px solid var(--rb-line); border-radius:26px 26px 10px 10px; min-height:240px; padding:1.3rem; }
.rb-storyboard > div::before { background:#d9e1e7; border-radius:999px; content:""; display:block; height:5px; margin:0 auto 1.4rem; width:44px; }
.rb-troubleshoot-matrix { display:grid; gap:1px; grid-template-columns:repeat(3,minmax(0,1fr)); background:#ccd6de; }
.rb-troubleshoot-matrix > div { background:#fff; min-height:160px; padding:1.1rem; }

.rb-payment-ledger .rb-page-hero { background:var(--rb-ivory-50); }
.rb-payment-ledger .rb-guide-content { background:#fcfbf6; }
.rb-payment-flow { display:grid; gap:0; grid-template-columns:repeat(5,minmax(0,1fr)); }
.rb-payment-flow > div { border-top:4px solid #8c6200; padding:1rem; position:relative; }
.rb-payment-flow > div:not(:last-child)::after { content:"→"; position:absolute; right:-.4rem; top:.8rem; }

.rb-login-tree .rb-page-hero { background:#fff; }
.rb-login-tree .rb-guide-content { background:#f4f7f9; }
.rb-decision-tree { display:grid; gap:1.1rem; margin-inline:auto; max-width:820px; }
.rb-decision-tree > div { background:#fff; border-left:5px solid var(--rb-teal-700); box-shadow:0 8px 20px rgba(7,17,31,.06); padding:1.2rem 1.4rem; position:relative; }
.rb-decision-tree > div:not(:last-child)::after { background:#8191a0; bottom:-1.1rem; content:""; height:1.1rem; left:2rem; position:absolute; width:2px; }

.rb-registration-anatomy .rb-page-hero { background:#eaf5f3; }
.rb-field-anatomy { display:grid; gap:1rem; grid-template-columns:repeat(2,minmax(0,1fr)); }
.rb-field-anatomy > div { background:#fff; border:1px solid #c9ddd9; border-radius:8px; padding:1rem 1.2rem; }
.rb-field-anatomy label { display:block; font-size:.76rem; font-weight:850; margin-bottom:.4rem; }
.rb-field-line { background:#e7eef1; border-radius:4px; height:12px; width:80%; }

.rb-promotion-terms .rb-page-hero { background:#fff9e9; }
.rb-promotion-terms .rb-guide-content { background:#faf8f1; }
.rb-terms-document { background:#fff; border-left:8px solid var(--rb-gold-500); box-shadow:var(--rb-shadow); margin-inline:auto; max-width:900px; padding:clamp(1.8rem,5vw,4rem); }
.rb-term-clause { border-bottom:1px solid var(--rb-line); display:grid; gap:1rem; grid-template-columns:180px 1fr; padding:1.3rem 0; }

.rb-safety-lab .rb-page-hero { background:#061321; color:#fff; }
.rb-safety-lab .rb-guide-content { background:#091829; color:#e8eff6; }
.rb-safety-lab .rb-chapter--dark { background:#091829; }
.rb-safety-lab .rb-tool { color:var(--rb-text-dark); }
.rb-threat-grid { display:grid; gap:1rem; grid-template-columns:repeat(3,minmax(0,1fr)); }
.rb-threat-grid > div { background:#11263b; border:1px solid rgba(255,255,255,.12); border-radius:12px 12px 28px 12px; min-height:180px; padding:1.2rem; }

.rb-support-builder .rb-page-hero { background:#e9f4f5; }
.rb-ticket-layout { display:grid; gap:2rem; grid-template-columns:.75fr 1.25fr; }
.rb-ticket-steps { counter-reset:ticket; display:grid; gap:.8rem; }
.rb-ticket-steps > div { border-bottom:1px solid var(--rb-line); padding:1rem 0 1rem 3.2rem; position:relative; }
.rb-ticket-steps > div::before { align-items:center; background:var(--rb-navy-900); border-radius:50%; color:#fff; content:counter(ticket); counter-increment:ticket; display:flex; height:34px; justify-content:center; left:0; position:absolute; top:.8rem; width:34px; }

.rb-faq-library .rb-page-hero { background:linear-gradient(130deg,#fff,#e8f2f2); }
.rb-faq-library .rb-guide-content { background:#f4f7f8; }
.rb-faq-categories { display:flex; gap:.6rem; overflow-x:auto; padding-bottom:.5rem; }
.rb-faq-categories button { background:#fff; border:1px solid #9eacb9; border-radius:999px; cursor:pointer; min-height:44px; padding:.55rem .9rem; white-space:nowrap; }

.rb-responsible-toolkit .rb-page-hero { background:var(--rb-ivory-50); }
.rb-responsible-toolkit .rb-guide-content { background:var(--rb-ivory-50); }
.rb-calm-principles { display:grid; gap:2rem; grid-template-columns:repeat(3,minmax(0,1fr)); }
.rb-calm-principles > div { border-top:3px solid #087d73; padding-top:1rem; }
.rb-stop-signs { background:#fff; border:1px solid #ded6c4; padding:2rem; }

.rb-editorial-about .rb-page-hero { background:#f1f4f6; }
.rb-source-pyramid { display:grid; gap:.7rem; margin-inline:auto; max-width:820px; }
.rb-source-pyramid > div { background:var(--rb-navy-900); color:#fff; margin-inline:auto; padding:1rem 1.3rem; text-align:center; }
.rb-source-pyramid > div:nth-child(1){width:45%;}.rb-source-pyramid > div:nth-child(2){width:65%;}.rb-source-pyramid > div:nth-child(3){width:82%;}.rb-source-pyramid > div:nth-child(4){width:100%;}
.rb-manifesto-grid { display:grid; gap:1rem; grid-template-columns:repeat(2,minmax(0,1fr)); }
.rb-manifesto-grid > div { border:1px solid var(--rb-line); padding:1.5rem; }

.rb-legal-document .rb-page-hero { padding-block:4rem; }
.rb-legal-document .rb-guide-content > .wp-block-group { padding-block:4rem; }
.rb-legal-document .rb-guide-content > .wp-block-group > .wp-block-group__inner-container { max-width:780px; }
.rb-legal-document .rb-guide-content h2 { border-top:1px solid var(--rb-line); margin-top:2.4rem; padding-top:1.8rem; }
