/* CasinoReports 2026 redesign. Mobile-first; layout changes at 768px and 1024px. */

:root {
  --cr26-ink: #16181D;
  --cr26-text: #3A3F4A;
  --cr26-muted: #5B6270;
  --cr26-rule: #E3E5E8;
  --cr26-rule-soft: #EEF0F3;
  --cr26-line: #C9CDD3;
  --cr26-accent: #C8102E;
  --cr26-accent-dark: #9E0C24;
  --cr26-tint: #FBEAEC;
  --cr26-panel: #F5F6F8;
  --cr26-white: #FFFFFF;
  --cr26-gold: #F2B544;
  --cr26-green: #2E7D4F;
  --cr26-max: 1280px;
  --cr26-gutter: 16px;
  --cr26-serif: 'Newsreader', Georgia, 'Times New Roman', serif;
  --cr26-sans: 'Public Sans', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  --cr26-tabbar-h: 64px;
}

@media (min-width: 768px) {
  :root { --cr26-gutter: 24px; }
}

/* ---------- Base / reset (scoped so the old theme cannot leak in) ---------- */
html.cr26-lock, html.cr26-lock body { overflow: hidden; }

body.cr26 {
  margin: 0;
  padding: 0;
  background: var(--cr26-white);
  color: var(--cr26-ink);
  font-family: var(--cr26-sans);
  font-size: 16px;
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
  padding-bottom: calc(var(--cr26-tabbar-h) + env(safe-area-inset-bottom, 0px));
}

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

.cr26 a { color: var(--cr26-ink); text-decoration: none; transition: color .15s; }
.cr26 a:hover { color: var(--cr26-accent); }
.cr26 a:focus-visible, .cr26 button:focus-visible, .cr26 select:focus-visible, .cr26 input:focus-visible {
  outline: 3px solid var(--cr26-accent);
  outline-offset: 2px;
  border-radius: 4px;
}
.cr26 h1, .cr26 h2, .cr26 h3, .cr26 p, .cr26 ul, .cr26 ol { margin: 0; padding: 0; }
.cr26 ul, .cr26 ol { list-style: none; }
/* :where() keeps this reset at zero specificity, so component padding (cards, tiles, rows) always wins. */
:where(.cr26) li { margin: 0; padding: 0; }
.cr26 img { max-width: 100%; height: auto; border: 0; }
.cr26 button { font: inherit; }
.cr26 time { font: inherit; }

.cr26 .cr26-ico { flex: 0 0 auto; display: block; }
.cr26 .cr26-wrap { width: 100%; max-width: var(--cr26-max); margin: 0 auto; padding-left: var(--cr26-gutter); padding-right: var(--cr26-gutter); }

.cr26-sr {
  position: absolute !important;
  width: 1px; height: 1px;
  margin: -1px; padding: 0; border: 0;
  overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%);
  white-space: nowrap;
}
.cr26 .cr26-skip {
  position: absolute; left: 8px; top: -100px; z-index: 100;
  padding: 12px 16px; background: var(--cr26-ink); color: var(--cr26-white); border-radius: 6px; font-weight: 600;
}
.cr26 .cr26-skip:focus { top: 8px; color: var(--cr26-white); }

.cr26-only-wide { display: none; }
@media (min-width: 768px) {
  .cr26-only-wide { display: inline; }
  .cr26-only-narrow { display: none; }
}

@media (prefers-reduced-motion: no-preference) {
  html { scroll-behavior: smooth; }
}
.cr26 [id] { scroll-margin-top: 120px; }
@media (min-width: 768px) { .cr26 [id] { scroll-margin-top: 24px; } }

/* ---------- Buttons / form controls ---------- */
.cr26 .cr26-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  min-height: 44px; padding: 0 20px;
  border: 1px solid var(--cr26-accent); border-radius: 8px;
  background: var(--cr26-accent); color: var(--cr26-white);
  font-size: 16px; font-weight: 700; line-height: 1.2; text-align: center; cursor: pointer;
  transition: background .15s, color .15s, border-color .15s;
}
.cr26 .cr26-btn:hover { background: var(--cr26-accent-dark); border-color: var(--cr26-accent-dark); color: var(--cr26-white); }
.cr26 .cr26-btn--ghost { background: var(--cr26-white); color: var(--cr26-accent); }
.cr26 .cr26-btn--ghost:hover { background: var(--cr26-tint); color: var(--cr26-accent-dark); border-color: var(--cr26-accent); }
.cr26 .cr26-btn--lg { min-height: 48px; padding: 0 26px; }

.cr26 .cr26-iconbtn {
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; padding: 0;
  border: 0; border-radius: 8px; background: transparent; color: var(--cr26-ink); cursor: pointer;
}
.cr26 .cr26-iconbtn:hover { background: var(--cr26-panel); }

.cr26 .cr26-input, .cr26 .cr26-select {
  width: 100%; min-height: 48px; padding: 0 12px;
  border: 1px solid var(--cr26-line); border-radius: 8px;
  background-color: var(--cr26-white); color: var(--cr26-ink);
  font: inherit; font-size: 16px;
}
.cr26 .cr26-select { padding-right: 36px; -webkit-appearance: none; appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235B6270' stroke-width='3' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 14px center; }

/* ---------- Top bar ---------- */
.cr26-topbar { background: var(--cr26-ink); color: #E8E9EC; font-size: 12px; }
.cr26-topbar__in { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding-top: 7px; padding-bottom: 7px; }
.cr26-topbar p { margin: 0; }
.cr26 .cr26-topbar a { color: #E8E9EC; text-decoration: underline; }
.cr26 .cr26-topbar a:hover { color: var(--cr26-white); }
.cr26-topbar__age { display: flex; align-items: center; gap: 8px; }
.cr26-topbar__right { display: flex; align-items: center; gap: 16px; }
.cr26-topbar__date { color: #9AA0AB; }
.cr26-age {
  display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto;
  min-width: 28px; height: 18px; padding: 0 4px;
  border: 1px solid var(--cr26-muted); border-radius: 4px; font-size: 10px; font-weight: 700; color: inherit;
}
.cr26-lang { display: flex; gap: 2px; padding: 2px; border: 1px solid var(--cr26-text); border-radius: 6px; }
.cr26 .cr26-lang__item { display: inline-flex; align-items: center; min-height: 24px; padding: 0 8px; border-radius: 4px; color: #C9CCD2; font-weight: 600; text-decoration: none; }
.cr26 .cr26-lang__item.is-active { background: var(--cr26-text); color: var(--cr26-white); }
@media (min-width: 768px) {
  .cr26-topbar { font-size: 13px; }
  .cr26-topbar__in { padding-top: 8px; padding-bottom: 8px; }
  .cr26-age { height: 20px; min-width: 30px; font-size: 11px; }
}
/* Language links: give touch users a real target without enlarging the bar on desktop */
@media (max-width: 767px) {
  .cr26 .cr26-lang__item { min-width: 44px; justify-content: center; min-height: 32px; }
  .cr26 .cr26-topbar a { display: inline-block; padding: 8px 0; margin: -8px 0; }
}

/* ---------- Header ---------- */
.cr26-header { position: sticky; top: 0; z-index: 30; background: var(--cr26-white); border-bottom: 1px solid var(--cr26-rule); }
.cr26-header__in { display: flex; flex-wrap: wrap; align-items: center; gap: 0 12px; padding-top: 8px; padding-bottom: 8px; }
.cr26 .cr26-brand { display: flex; align-items: center; gap: 8px; margin-right: auto; min-height: 44px; }
.cr26-brand__word { font-family: var(--cr26-serif); font-size: 23px; font-weight: 700; letter-spacing: -0.01em; color: var(--cr26-ink); }
.cr26-brand__word span { color: var(--cr26-accent); }
.cr26-mark { width: 28px; height: 28px; }

.cr26 .cr26-pill {
  order: 3; display: inline-flex; align-items: center; gap: 6px;
  min-height: 44px; padding: 0 14px; margin: 0 0 6px;
  border: 1px solid var(--cr26-rule); border-radius: 999px;
  font-size: 14px; font-weight: 600; background: var(--cr26-white);
}
.cr26 .cr26-pill .cr26-ico:first-child { color: var(--cr26-accent); }
.cr26 .cr26-pill .cr26-ico:last-child { color: var(--cr26-muted); }
.cr26 .cr26-pill:hover { border-color: var(--cr26-accent); }

.cr26-btns { display: flex; gap: 2px; margin-right: -8px; }
.cr26 .cr26-menu-toggle { display: none; }
.cr26-js .cr26-menu-toggle { display: inline-flex; }

/* Nav: horizontally scrollable strip without JS; hidden behind the drawer on mobile with JS */
.cr26-nav {
  order: 4; flex: 1 0 100%; display: flex; gap: 4px 20px; overflow-x: auto; scrollbar-width: none;
  font-size: 15px; font-weight: 600; border-top: 1px solid var(--cr26-rule-soft);
}
.cr26-nav::-webkit-scrollbar { display: none; }
.cr26 .cr26-nav a { flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 44px; }
.cr26-js .cr26-nav { display: none; }

.cr26-searchbar { border-top: 1px solid var(--cr26-rule); background: var(--cr26-panel); padding: 12px 0; }
.cr26-searchbar[hidden] { display: none; }
.cr26-searchform { display: flex; gap: 8px; max-width: 640px; }
.cr26-searchform .cr26-input { flex: 1 1 auto; min-width: 0; }

@media (min-width: 768px) {
  .cr26-header { position: static; }
  .cr26-header__in { flex-wrap: wrap; gap: 8px 32px; padding-top: 18px; padding-bottom: 18px; justify-content: space-between; }
  .cr26 .cr26-brand { margin-right: 0; gap: 10px; }
  .cr26-brand__word { font-size: 30px; }
  .cr26-mark { width: 34px; height: 34px; }
  .cr26-nav, .cr26-js .cr26-nav { order: 0; flex: 0 1 auto; display: flex; flex-wrap: wrap; overflow: visible; border: 0; gap: 0 24px; }
  .cr26 .cr26-pill { order: 0; margin: 0; }
  .cr26-btns { margin-right: 0; gap: 8px; }
  .cr26 .cr26-menu-toggle, .cr26-js .cr26-menu-toggle { display: none; }
  .cr26 .cr26-search-toggle { border: 1px solid var(--cr26-rule); }
  .cr26 .cr26-search-toggle:hover { border-color: var(--cr26-accent); }
}

/* ---------- Mobile drawer ---------- */
.cr26-drawer { position: fixed; inset: 0; z-index: 50; display: flex; justify-content: flex-end; visibility: hidden; pointer-events: none; transition: visibility 0s linear .25s; }
.cr26-drawer.is-open { visibility: visible; pointer-events: auto; transition-delay: 0s; }
.cr26-drawer__scrim { position: absolute; inset: 0; background: rgba(22, 24, 29, .5); opacity: 0; transition: opacity .25s ease; }
.cr26-drawer.is-open .cr26-drawer__scrim { opacity: 1; }
.cr26-drawer__panel {
  position: relative; width: 84%; max-width: 340px; height: 100%;
  display: flex; flex-direction: column; background: var(--cr26-white);
  box-shadow: -8px 0 24px rgba(22, 24, 29, .2);
  transform: translateX(100%); transition: transform .25s ease; overflow-y: auto;
}
.cr26-drawer.is-open .cr26-drawer__panel { transform: none; }
.cr26-drawer__head { display: flex; align-items: center; justify-content: space-between; padding: 10px 8px 10px 16px; border-bottom: 1px solid var(--cr26-rule); }
.cr26-drawer__title { font-family: var(--cr26-serif); font-size: 20px; font-weight: 700; }
.cr26-drawer__nav { display: flex; flex-direction: column; padding: 8px 16px; font-size: 17px; font-weight: 600; }
.cr26 .cr26-drawer__nav a { display: flex; align-items: center; justify-content: space-between; min-height: 52px; border-bottom: 1px solid var(--cr26-rule-soft); }
.cr26-drawer__nav .cr26-ico { color: var(--cr26-line); }
.cr26-drawer__foot { margin-top: auto; padding: 16px; background: var(--cr26-panel); font-size: 13px; line-height: 1.5; color: var(--cr26-text); }
.cr26 .cr26-drawer__foot a { text-decoration: underline; }
@media (min-width: 768px) { .cr26-drawer { display: none; } }
@media (prefers-reduced-motion: reduce) {
  .cr26-drawer, .cr26-drawer__scrim, .cr26-drawer__panel { transition: none; }
}

/* ---------- Main layout ---------- */
.cr26-main { display: flex; flex-direction: column; gap: 40px; padding-bottom: 32px; outline: 0; }
.cr26-main > section { min-width: 0; }
@media (min-width: 768px) { .cr26-main { gap: 64px; padding-bottom: 72px; } }

/* Shared bits */
.cr26-eyebrow { display: flex; align-items: center; gap: 8px; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--cr26-ink); }
.cr26-eyebrow .cr26-ico { color: var(--cr26-accent); }
.cr26-eyebrow__bar { width: 3px; height: 14px; background: var(--cr26-accent); }
.cr26-meta { font-size: 12px; color: var(--cr26-muted); }
.cr26-cat { color: var(--cr26-accent); font-weight: 600; }
.cr26 .cr26-more { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; font-size: 15px; font-weight: 600; color: var(--cr26-accent); }
.cr26 .cr26-more:hover { color: var(--cr26-accent-dark); }
@media (min-width: 768px) { .cr26-meta { font-size: 13px; } }

.cr26-img { display: block; width: 100%; height: 100%; object-fit: cover; }
.cr26-ph { display: block; width: 100%; height: 100%; }
.cr26-ph svg { display: block; width: 100%; height: 100%; }
.cr26-ph--0 { background: linear-gradient(135deg, #1E2129, #3A1119); }
.cr26-ph--1 { background: linear-gradient(135deg, #0F2A4A, #1D5C9E); }
.cr26-ph--2 { background: linear-gradient(180deg, #3A1119, #C8102E); }
.cr26-ph--3 { background: linear-gradient(135deg, #1E2129, #3A3F4A); }

.cr26-sechead { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 16px; }
.cr26-sechead h2 { font-family: var(--cr26-serif); font-size: 24px; font-weight: 700; line-height: 1.15; }
.cr26 .cr26-sechead a { display: inline-flex; align-items: center; min-height: 44px; font-size: 14px; font-weight: 600; color: var(--cr26-accent); }
.cr26-sechead--rule { border-bottom: 2px solid var(--cr26-ink); padding-bottom: 4px; margin-bottom: 20px; }
@media (min-width: 768px) { .cr26-sechead h2 { font-size: 30px; } }

/* ---------- Lead + Latest ---------- */
.cr26-top { display: flex; flex-direction: column; gap: 28px; padding-top: 16px; }
.cr26-lead { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.cr26-lead__media { position: relative; border-radius: 8px; overflow: hidden; aspect-ratio: 16 / 10; background: var(--cr26-panel); }
.cr26-lead__media > a { display: block; width: 100%; height: 100%; }
.cr26-badge { position: absolute; left: 12px; top: 12px; padding: 5px 8px; border-radius: 4px; background: var(--cr26-accent); color: var(--cr26-white); font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.cr26-lead__title { margin-top: 4px; font-family: var(--cr26-serif); font-size: 30px; line-height: 1.1; font-weight: 700; letter-spacing: -0.01em; }
.cr26-lead__title a:hover { color: var(--cr26-accent); }
.cr26-lead__excerpt { font-size: 16px; line-height: 1.5; color: var(--cr26-text); max-width: 66ch; }

.cr26-latest { min-width: 0; }
.cr26-latest .cr26-eyebrow { margin-bottom: 4px; }
.cr26-latest__list { display: flex; flex-direction: column; }
.cr26 .cr26-item { display: flex; gap: 12px; padding: 12px 0; border-bottom: 1px solid var(--cr26-rule); min-height: 44px; }
.cr26-item__thumb { flex: 0 0 64px; width: 64px; height: 64px; border-radius: 6px; overflow: hidden; background: var(--cr26-panel); }
.cr26-item__text { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.cr26-item__title { font-family: var(--cr26-serif); font-size: 17px; font-weight: 500; line-height: 1.25; transition: color .15s; }
.cr26 .cr26-item:hover .cr26-item__title { color: var(--cr26-accent); }
.cr26-latest .cr26-more { margin-top: 8px; }

@media (min-width: 768px) {
  .cr26-top { flex-direction: row; flex-wrap: wrap; gap: 40px; padding-top: 32px; }
  .cr26-lead { flex: 2 1 560px; gap: 14px; }
  .cr26-lead__media { aspect-ratio: 16 / 8; }
  .cr26-badge { left: 16px; top: 16px; padding: 6px 10px; font-size: 12px; }
  .cr26-lead__title { font-size: 44px; line-height: 1.08; letter-spacing: -0.015em; }
  .cr26-lead__excerpt { font-size: 18px; line-height: 1.55; }
  .cr26-latest { flex: 1 1 300px; }
  .cr26-latest .cr26-eyebrow { font-size: 13px; margin-bottom: 12px; }
  .cr26-latest__list > li:first-child .cr26-item { border-top: 1px solid var(--cr26-rule); }
  .cr26-item { gap: 14px; }
  .cr26-item__thumb { flex-basis: 72px; width: 72px; height: 72px; }
  .cr26-item__title { font-size: 18px; line-height: 1.3; }
  .cr26-latest .cr26-more { margin-top: 12px; }
}
@media (prefers-reduced-motion: no-preference) {
  .cr26-lead, .cr26-card { transition: transform .2s ease; }
  .cr26-lead:hover, .cr26-card:hover { transform: translateY(-3px); }
}

/* ---------- Trust strip ---------- */
.cr26-trust {
  display: grid; grid-template-columns: 1fr 1fr; gap: 1px;
  background: var(--cr26-rule); border: 1px solid var(--cr26-rule); border-radius: 10px; overflow: hidden;
}
.cr26-trust li { display: flex; flex-direction: column; gap: 8px; padding: 14px 12px; background: var(--cr26-white); }
.cr26-trust__ico { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%; background: var(--cr26-tint); color: var(--cr26-accent); }
.cr26-trust__ico .cr26-ico { width: 16px; height: 16px; }
.cr26-trust__txt { display: flex; flex-direction: column; }
.cr26-trust__txt b { font-size: 14px; line-height: 1.25; }
.cr26-trust__txt span { display: none; font-size: 13px; color: var(--cr26-muted); }
@media (min-width: 768px) {
  .cr26-trust-wrap { margin-top: -24px; }
  .cr26-trust { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
  .cr26-trust li { flex-direction: row; align-items: center; gap: 14px; padding: 18px 20px; }
  .cr26-trust__ico { flex: 0 0 40px; width: 40px; height: 40px; }
  .cr26-trust__ico .cr26-ico { width: 20px; height: 20px; }
  .cr26-trust__txt b { font-size: 15px; }
  .cr26-trust__txt span { display: block; }
}

/* ---------- Finder band ---------- */
.cr26-finder { position: relative; overflow: hidden; background: var(--cr26-panel); border-top: 1px solid var(--cr26-rule); border-bottom: 1px solid var(--cr26-rule); }
.cr26-finder__deco { position: absolute; right: -80px; top: -90px; width: 420px; height: 420px; opacity: .06; pointer-events: none; }
.cr26-finder__in { position: relative; display: flex; flex-direction: column; gap: 16px; padding-top: 28px; padding-bottom: 28px; }
.cr26-finder__head { display: flex; flex-direction: column; gap: 10px; max-width: 760px; }
.cr26-pillbadge {
  display: inline-flex; align-self: flex-start; align-items: center; gap: 6px; padding: 4px 10px;
  border: 1px solid var(--cr26-rule); border-radius: 999px; background: var(--cr26-white);
  font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--cr26-accent);
}
.cr26-finder__head h2 { font-family: var(--cr26-serif); font-size: 28px; font-weight: 700; line-height: 1.1; letter-spacing: -0.01em; }
.cr26-finder__head p { font-size: 15px; line-height: 1.5; color: var(--cr26-text); }

.cr26-form {
  display: flex; flex-direction: column; gap: 12px; padding: 14px;
  background: var(--cr26-white); border: 1px solid var(--cr26-rule); border-radius: 12px; box-shadow: 0 6px 18px rgba(22, 24, 29, .06);
}
.cr26-field { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.cr26-field label { display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; color: var(--cr26-muted); }
.cr26-field label .cr26-ico { color: var(--cr26-accent); }

.cr26-finder__h3 { font-size: 16px; font-weight: 700; line-height: 1.3; margin-top: 4px; }
.cr26-ontario {
  display: flex; align-items: flex-start; gap: 14px; padding: 16px;
  background: var(--cr26-white); border: 1px solid var(--cr26-rule); border-left: 4px solid var(--cr26-accent); border-radius: 12px;
  font-size: 15px; line-height: 1.5; color: var(--cr26-text);
}
.cr26-ontario .cr26-ico { color: var(--cr26-accent); margin-top: 2px; }

/* Casino list: stacked cards on mobile, grid "table" from 768px */
.cr26-casinos__head { display: none; }
.cr26-casinos__list { display: flex; flex-direction: column; gap: 10px; }
.cr26-casino {
  display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; align-items: center;
  padding: 14px; background: var(--cr26-white); border: 1px solid var(--cr26-rule); border-radius: 12px;
}
.cr26-casino__id { display: flex; align-items: center; gap: 12px; min-width: 0; }
.cr26-casino__name { font-size: 16px; font-weight: 700; line-height: 1.25; overflow-wrap: anywhere; }
.cr26-casino__score { display: flex; justify-content: flex-end; }
.cr26-casino__offer { grid-column: 1 / -1; }
.cr26-casino__offer:empty { display: none; }
.cr26-casino__cta { grid-column: 1 / -1; display: flex; gap: 8px; }
.cr26-casino__cta .cr26-btn { flex: 1 1 0; padding: 0 12px; font-size: 15px; }

/* Logo box: fixed size so any logo (and the monogram fallback) fills the same space */
.cr26-logo, .cr26 .cr26-logo { flex: 0 0 72px; width: 72px; height: 40px; display: flex; align-items: center; justify-content: center; border-radius: 8px; overflow: hidden; background: var(--cr26-panel); }
.cr26-logo img, .cr26 .cr26-logo img { width: 100%; height: 100%; max-width: 100%; max-height: 100%; padding: 3px; object-fit: contain; display: block; }
.cr26 .cr26-logo picture, .cr26 .cr26-logo a, .cr26 .cr26-logo > span:not(.cr26-mono) { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
.cr26-logo .cr26-mono { border-radius: 8px; }
@media (min-width: 768px) {
  .cr26-logo, .cr26 .cr26-logo { flex-basis: 88px; width: 88px; height: 44px; }
}

.cr26-mono {
  display: flex; align-items: center; justify-content: center; width: 100%; height: 100%;
  border-radius: 10px; color: var(--cr26-white); font-size: 14px; font-weight: 800; letter-spacing: -.02em; line-height: 1;
}
.cr26-mono--sm { flex: 0 0 36px; width: 36px; height: 36px; border-radius: 8px; font-size: 12px; }
.cr26-mono--0 { background: linear-gradient(135deg, #0F2A4A, #1D5C9E); }
.cr26-mono--1 { background: linear-gradient(135deg, #0E5E3A, #2BA36B); }
.cr26-mono--2 { background: linear-gradient(135deg, #3B1060, #8A3FD1); }
.cr26-mono--3 { background: linear-gradient(135deg, #7A4A00, #E0A21B); }
.cr26-mono--4 { background: linear-gradient(135deg, #12304A, #1F6F8B); }
.cr26-mono--5 { background: linear-gradient(135deg, #2B1A33, #C8102E); }

/* Score ring: conic gradient filled to score / 5 */
.cr26-ring {
  position: relative; display: inline-flex; align-items: center; justify-content: center;
  width: 46px; height: 46px; border-radius: 50%;
  background: conic-gradient(var(--cr26-accent) calc(var(--p, 0) * 1%), var(--cr26-rule) 0);
  font-size: 13px; font-weight: 700; color: var(--cr26-ink);
}
.cr26-ring::before { content: ""; position: absolute; inset: 3px; border-radius: 50%; background: var(--cr26-white); }
.cr26-ring__n { position: relative; }

.cr26-offer {
  padding: 8px 10px; border-radius: 8px; background: var(--cr26-tint); color: var(--cr26-accent-dark);
  font-size: 14px; font-weight: 600; line-height: 1.4;
}
.cr26-offer p { margin: 0; }
.cr26 .cr26-offer a { color: inherit; text-decoration: underline; }
.cr26-offer img { max-width: 100%; height: auto; }

.cr26-finder__foot { display: flex; flex-direction: column; align-items: flex-start; gap: 4px 16px; }
.cr26-fine { font-size: 13px; line-height: 1.5; color: var(--cr26-muted); }
.cr26-empty { padding: 16px; background: var(--cr26-white); border: 1px solid var(--cr26-rule); border-radius: 12px; color: var(--cr26-text); }

@media (min-width: 768px) {
  .cr26-finder__in { gap: 24px; padding-top: 52px; padding-bottom: 52px; }
  .cr26-pillbadge { font-size: 12px; padding: 5px 10px; }
  .cr26-finder__head h2 { font-size: 40px; line-height: 1.08; }
  .cr26-finder__head p { font-size: 17px; }

  .cr26-form { flex-direction: row; flex-wrap: wrap; align-items: flex-end; padding: 18px; box-shadow: 0 8px 24px rgba(22, 24, 29, .06); }
  .cr26-field { flex: 1 1 200px; }
  .cr26-form .cr26-btn { flex: 0 0 auto; }
  .cr26-finder__h3 { font-size: 20px; margin-top: 0; }
  .cr26-ontario { padding: 24px; font-size: 16px; }

  .cr26-casinos { background: var(--cr26-white); border: 1px solid var(--cr26-rule); border-radius: 12px; overflow: hidden; }
  .cr26-casinos__head, .cr26-casino {
    display: grid; align-items: center; column-gap: 20px;
    grid-template-columns: minmax(200px, 1.4fr) 90px minmax(180px, 1.6fr) auto;
  }
  .cr26-casinos--plain .cr26-casinos__head, .cr26-casinos--plain .cr26-casino { grid-template-columns: minmax(200px, 1.4fr) 90px auto; }
  .cr26-casinos__head {
    padding: 14px 20px; background: #FBFBFC; border-bottom: 1px solid var(--cr26-rule);
    font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--cr26-muted); text-align: left;
  }
  .cr26-casinos__list { gap: 0; }
  .cr26-casino { padding: 16px 20px; border: 0; border-bottom: 1px solid var(--cr26-rule-soft); border-radius: 0; transition: background .15s; }
  .cr26-casino:last-child { border-bottom: 0; }
  .cr26-casino:hover { background: #FBFBFC; }
  .cr26-casino__id { gap: 12px; }
  .cr26-casino__score { justify-content: flex-start; }
  .cr26-casino__offer, .cr26-casino__cta { grid-column: auto; }
  .cr26-casino__offer:empty { display: block; }
  .cr26-casino__cta { justify-content: flex-end; white-space: nowrap; }
  .cr26-casino__cta .cr26-btn { flex: 0 0 auto; padding: 0 16px; }
  .cr26-finder__foot { flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: space-between; }
}

/* ---------- Industry reports + sidebar ---------- */
.cr26-split { display: flex; flex-direction: column; gap: 32px; }
.cr26-reports { min-width: 0; }
.cr26-reports__row {
  display: flex; gap: 12px; margin: 0 calc(var(--cr26-gutter) * -1); padding: 0 var(--cr26-gutter) 4px;
  overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch;
}
.cr26-reports__row::-webkit-scrollbar { display: none; }
.cr26-reports__row > li { flex: 0 0 78%; max-width: 300px; scroll-snap-align: start; }
.cr26 .cr26-card { display: flex; flex-direction: column; gap: 8px; height: 100%; }
.cr26-card__media { display: block; width: 100%; aspect-ratio: 3 / 2; border-radius: 8px; overflow: hidden; background: var(--cr26-panel); }
.cr26-card__cat { font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--cr26-accent); }
.cr26-card__title { font-family: var(--cr26-serif); font-size: 18px; font-weight: 500; line-height: 1.25; transition: color .15s; }
.cr26 .cr26-card:hover .cr26-card__title { color: var(--cr26-accent); }

.cr26-side { display: flex; flex-direction: column; gap: 28px; min-width: 0; }
.cr26-box { padding: 16px; border: 1px solid var(--cr26-rule); border-radius: 12px; }
.cr26-box .cr26-eyebrow { margin-bottom: 8px; }
.cr26-rev li { border-top: 1px solid var(--cr26-rule); }
.cr26 .cr26-rev a { display: flex; align-items: center; gap: 12px; min-height: 56px; padding: 10px 0; font-weight: 600; }
.cr26-paynav { display: flex; flex-direction: column; gap: 14px; }

.cr26-tiles { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.cr26 .cr26-tile {
  display: flex; align-items: center; gap: 10px; min-height: 44px; padding: 12px;
  border: 1px solid var(--cr26-rule); border-radius: 10px; font-size: 14px; font-weight: 600; height: 100%;
  transition: border-color .15s, box-shadow .15s;
}
.cr26 .cr26-tile:hover { border-color: var(--cr26-accent); box-shadow: 0 4px 14px rgba(22, 24, 29, .08); }
.cr26 .cr26-tile--sm .cr26-ico { color: var(--cr26-accent); }
.cr26 .cr26-tile--dash { justify-content: center; border-style: dashed; border-color: var(--cr26-line); color: var(--cr26-muted); }

@media (min-width: 768px) {
  .cr26-split { flex-direction: row; flex-wrap: wrap; gap: 40px; }
  .cr26-reports { flex: 2 1 560px; }
  .cr26-reports__row {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 28px 24px;
    margin: 0; padding: 0; overflow: visible; scroll-snap-type: none;
  }
  .cr26-reports__row > li { flex: none; max-width: none; }
  .cr26-card { gap: 10px; }
  .cr26-card__cat { font-size: 12px; }
  .cr26-card__title { font-size: 21px; }
  .cr26-side { flex: 1 1 300px; gap: 28px; }
  .cr26-box { padding: 20px; }
  .cr26-box .cr26-eyebrow, .cr26-paynav .cr26-eyebrow { font-size: 13px; }
}

/* ---------- Game guides ---------- */
.cr26-guides { display: flex; flex-direction: column; }
.cr26-tiles--guides { grid-template-columns: 1fr 1fr; gap: 12px; }
.cr26-tiles--guides .cr26-tile { flex-direction: column; align-items: flex-start; gap: 14px; padding: 16px; border-radius: 12px; }
.cr26-tile__ico { display: flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 12px; background: var(--cr26-tint); color: var(--cr26-accent); }
.cr26-tile__txt { display: flex; flex-direction: column; gap: 2px; }
.cr26-tile__txt b { font-size: 16px; }
.cr26-tile__txt span { font-size: 13px; color: var(--cr26-muted); }
@media (min-width: 768px) {
  .cr26-tiles--guides { grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); }
  .cr26-tiles--guides .cr26-tile { padding: 18px; }
}

/* ---------- Footer ---------- */
.cr26-footer { background: var(--cr26-ink); color: #C9CCD2; font-size: 14px; line-height: 1.6; }
.cr26-footer__in { display: flex; flex-direction: column; gap: 24px; padding-top: 32px; padding-bottom: 24px; }
.cr26-footer__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px 16px; }
.cr26-footer__about { grid-column: 1 / -1; display: flex; flex-direction: column; gap: 10px; }
.cr26-footer__about p { max-width: 44ch; }
.cr26 .cr26-footer__brand { display: inline-flex; align-items: center; gap: 10px; align-self: flex-start; font-family: var(--cr26-serif); font-size: 21px; font-weight: 700; color: var(--cr26-white); }
.cr26-footer__col { display: flex; flex-direction: column; }
.cr26-footer__col b { margin-bottom: 4px; color: var(--cr26-white); font-size: 13px; letter-spacing: .06em; text-transform: uppercase; }
.cr26 .cr26-footer a { color: #C9CCD2; }
.cr26 .cr26-footer a:hover { color: var(--cr26-white); }
.cr26 .cr26-footer__col a { display: flex; align-items: center; min-height: 44px; }
.cr26-footer__legal { display: flex; flex-direction: column; gap: 12px; padding-top: 16px; border-top: 1px solid #2E323B; font-size: 13px; }
.cr26-footer__rg { display: flex; align-items: center; gap: 10px; }
.cr26 .cr26-footer__rg a { color: var(--cr26-white); text-decoration: underline; display: inline-block; padding: 8px 0; }
.cr26-age--lg { width: 34px; height: 34px; min-width: 34px; border: 2px solid #C9CCD2; border-radius: 50%; padding: 0; color: var(--cr26-white); font-size: 11px; }
.cr26-footer__copy { color: #9AA0AB; }
@media (min-width: 768px) {
  .cr26-footer__in { gap: 32px; padding-top: 48px; }
  .cr26-footer__grid { grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 32px; }
  .cr26-footer__about { grid-column: span 2; }
  .cr26 .cr26-footer__brand { font-size: 24px; }
  .cr26 .cr26-footer__col a { min-height: 32px; }
  .cr26-footer__legal { flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; padding-top: 20px; }
}

/* ---------- Mobile bottom tab bar ---------- */
.cr26-tabbar {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 40;
  display: grid; grid-template-columns: repeat(4, 1fr);
  min-height: var(--cr26-tabbar-h); padding: 4px 4px calc(6px + env(safe-area-inset-bottom, 0px));
  background: var(--cr26-white); border-top: 1px solid var(--cr26-rule); box-shadow: 0 -4px 14px rgba(22, 24, 29, .06);
}
.cr26 .cr26-tabbar a {
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px;
  min-height: 48px; padding: 4px 0; font-size: 11px; font-weight: 600; color: var(--cr26-muted);
}
.cr26 .cr26-tabbar a[aria-current="page"] { color: var(--cr26-accent); font-weight: 700; }
.cr26 .cr26-tabbar a:hover { color: var(--cr26-accent); }
@media (min-width: 768px) {
  .cr26-tabbar { display: none; }
  body.cr26 { padding-bottom: 0; }
}

/* =========================================================================
   REVIEW PAGE (review.php)
   Styles the markup produced by the old shortcodes inside .cr26-review-body.
   ====================================================================== */

/* ---------- Hero ---------- */
.cr26-rhero { background: linear-gradient(180deg, var(--cr26-panel) 0%, var(--cr26-white) 100%); border-bottom: 1px solid var(--cr26-rule); }
.cr26-rhero__in { display: flex; flex-direction: column; gap: 12px; padding-top: 16px; padding-bottom: 20px; }
.cr26-crumbs ol { display: flex; flex-wrap: wrap; align-items: center; font-size: 13px; color: var(--cr26-muted); }
.cr26-crumbs li { display: flex; align-items: center; }
.cr26-crumbs li + li::before { content: "\203A"; margin: 0 8px; color: var(--cr26-line); }
.cr26 .cr26-crumbs a { display: inline-flex; align-items: center; min-height: 44px; color: var(--cr26-muted); }
.cr26 .cr26-crumbs a:hover { color: var(--cr26-accent); }
.cr26-crumbs [aria-current] { color: var(--cr26-ink); }
.cr26-rhero__title { font-family: var(--cr26-serif); font-size: 34px; line-height: 1.06; font-weight: 700; letter-spacing: -0.015em; }
.cr26-rhero__by { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 16px; font-size: 14px; color: var(--cr26-muted); }
.cr26-rhero__by > span { display: inline-flex; align-items: center; gap: 5px; }
.cr26 .cr26-rhero__by a { display: inline-flex; align-items: center; min-height: 44px; color: var(--cr26-muted); text-decoration: underline; }
@media (min-width: 768px) {
  .cr26-rhero__in { padding-top: 24px; padding-bottom: 32px; gap: 16px; }
  .cr26 .cr26-crumbs a { min-height: 32px; }
  .cr26-rhero__title { font-size: 50px; line-height: 1.04; }
}

/* ---------- Mobile section chips ---------- */
.cr26-chips { border-bottom: 1px solid var(--cr26-rule); background: var(--cr26-white); }
.cr26-chips[hidden] { display: none; }
.cr26-chips__row { display: flex; gap: 8px; overflow-x: auto; padding: 8px var(--cr26-gutter); margin: 0 calc(var(--cr26-gutter) * -1); scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.cr26-chips__row::-webkit-scrollbar { display: none; }
.cr26 .cr26-chip {
  flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 44px; padding: 0 14px;
  border: 1px solid var(--cr26-line); border-radius: 999px; background: var(--cr26-white);
  font-size: 14px; font-weight: 600; white-space: nowrap; color: var(--cr26-ink);
}
.cr26 .cr26-chip[aria-current="true"] { border-color: var(--cr26-accent); background: var(--cr26-tint); color: var(--cr26-accent-dark); }
@media (min-width: 768px) { .cr26-chips, .cr26-chips[hidden] { display: none; } }

/* ---------- Layout ---------- */
.cr26-rlayout { display: flex; flex-direction: column; gap: 32px; padding-top: 24px; padding-bottom: 8px; }
.cr26-rarticle { min-width: 0; }
.cr26-rside { display: none; }
@media (min-width: 768px) {
  .cr26-rlayout { flex-direction: row; align-items: flex-start; gap: 40px; padding-top: 40px; }
  .cr26-rarticle { flex: 1 1 0; }
  .cr26-rside { display: block; flex: 0 0 280px; position: sticky; top: 24px; align-self: flex-start; }
  .cr26-rside__in { display: flex; flex-direction: column; gap: 20px; max-height: calc(100vh - 48px); overflow-y: auto; }
}
@media (min-width: 1024px) {
  .cr26-rlayout { gap: 56px; }
  .cr26-rside { flex-basis: 320px; }
}

/* ---------- Sidebar: TOC + Visit card ---------- */
.cr26-toc[hidden] { display: none; }
.cr26-toc .cr26-eyebrow { font-size: 13px; margin-bottom: 8px; }
.cr26-toc__list { display: flex; flex-direction: column; border-left: 2px solid var(--cr26-rule); }
.cr26 .cr26-toc__list a { display: block; min-height: 44px; padding: 10px 0 10px 14px; margin-left: -2px; border-left: 2px solid transparent; font-size: 15px; font-weight: 500; line-height: 1.3; color: var(--cr26-text); }
.cr26 .cr26-toc__list a:hover { color: var(--cr26-accent); }
.cr26 .cr26-toc__list a[aria-current="true"] { border-left-color: var(--cr26-accent); color: var(--cr26-accent-dark); font-weight: 700; }

.cr26-vcard { display: flex; flex-direction: column; gap: 14px; padding: 20px; background: var(--cr26-white); border: 1px solid var(--cr26-rule); border-radius: 16px; box-shadow: 0 10px 28px rgba(22, 24, 29, .07); }
.cr26-vcard__top { display: flex; align-items: center; gap: 12px; }
.cr26 .cr26-logo--lg { flex-basis: 96px; width: 96px; height: 48px; }
.cr26-vcard__name { font-family: var(--cr26-serif); font-size: 20px; line-height: 1.2; font-weight: 700; overflow-wrap: anywhere; }
.cr26-vcard__score { display: flex; align-items: center; gap: 12px; font-size: 14px; font-weight: 600; color: var(--cr26-muted); }
.cr26-vcard .cr26-ring { width: 56px; height: 56px; font-size: 16px; }
.cr26 .cr26-btn--block { display: flex; width: 100%; }
.cr26-na { display: flex; align-items: center; gap: 8px; padding: 12px; border-radius: 8px; background: var(--cr26-panel); font-size: 14px; font-weight: 600; line-height: 1.4; color: var(--cr26-text); }
.cr26-na .cr26-ico { color: var(--cr26-accent); }

/* ---------- Mobile sticky casino bar (replaces the tab bar) ---------- */
.cr26-bar {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 40;
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  min-height: var(--cr26-tabbar-h); padding: 8px var(--cr26-gutter) calc(8px + env(safe-area-inset-bottom, 0px));
  background: var(--cr26-white); border-top: 1px solid var(--cr26-rule); box-shadow: 0 -4px 14px rgba(22, 24, 29, .06);
}
.cr26-bar__info { display: flex; flex-direction: column; min-width: 0; }
.cr26-bar__name { font-size: 15px; line-height: 1.25; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.cr26-bar__score { display: inline-flex; align-items: center; gap: 4px; font-size: 13px; font-weight: 600; color: var(--cr26-muted); }
.cr26-bar__score .cr26-ico { color: #E0A21B; fill: currentColor; }
.cr26-bar .cr26-btn { flex: 0 0 auto; min-width: 112px; }
.cr26-bar__na { flex: 0 0 auto; max-width: 50%; font-size: 13px; font-weight: 600; text-align: right; color: var(--cr26-text); }
body.cr26.cr26-review-page { padding-bottom: 0; }
body.cr26.cr26-review-page.cr26-has-bar { padding-bottom: calc(var(--cr26-tabbar-h) + env(safe-area-inset-bottom, 0px)); }
@media (min-width: 768px) {
  .cr26-bar { display: none; }
  body.cr26.cr26-review-page.cr26-has-bar { padding-bottom: 0; }
}

/* ---------- Review body typography ---------- */
.cr26-review-body { font-size: 16px; line-height: 1.65; color: var(--cr26-text); overflow-wrap: break-word; }
.cr26-review-body::after { content: ""; display: block; clear: both; }
.cr26-review-body > p, .cr26-review-body > ul, .cr26-review-body > ol, .cr26-review-body > h2, .cr26-review-body > h3, .cr26-review-body > h4, .cr26-review-body > blockquote { max-width: 72ch; }
.cr26-review-body p { margin: 0 0 1.1em; }
.cr26-review-body p:empty { display: none; }
.cr26-review-body h2, .cr26-review-body h3, .cr26-review-body h4 { clear: both; font-family: var(--cr26-serif); color: var(--cr26-ink); font-weight: 700; letter-spacing: -0.01em; }
.cr26-review-body h2 { margin: 1.8em 0 .6em; padding-top: .2em; font-size: 28px; line-height: 1.15; }
.cr26-review-body h3 { margin: 1.5em 0 .5em; font-size: 22px; line-height: 1.2; }
.cr26-review-body h4 { margin: 1.3em 0 .4em; font-size: 18px; }
.cr26-review-body > :first-child { margin-top: 0; }
.cr26-review-body strong, .cr26-review-body b { color: var(--cr26-ink); font-weight: 700; }
.cr26 .cr26-review-body a { color: var(--cr26-accent); text-decoration: underline; text-underline-offset: 2px; }
.cr26 .cr26-review-body a:hover { color: var(--cr26-accent-dark); }
.cr26-review-body ul, .cr26-review-body ol { margin: 0 0 1.2em; padding-left: 1.3em; }
.cr26-review-body ul { list-style: disc; }
.cr26-review-body ol { list-style: decimal; }
.cr26-review-body li { margin: 0 0 .4em; padding-left: .2em; }
.cr26-review-body li::marker { color: var(--cr26-accent); }
.cr26-review-body blockquote { margin: 1.4em 0; padding: 4px 0 4px 18px; border-left: 4px solid var(--cr26-accent); font-family: var(--cr26-serif); font-size: 1.1em; }
.cr26-review-body img { max-width: 100%; height: auto; border-radius: 8px; }
.cr26-review-body .alignleft, .cr26-review-body .alignright, .cr26-review-body .aligncenter { display: block; float: none; margin: 0 auto 14px; }
.cr26-review-body iframe { max-width: 100%; }
@media (min-width: 768px) {
  .cr26-review-body { font-size: 18px; line-height: 1.7; }
  .cr26-review-body h2 { font-size: 34px; }
  .cr26-review-body h3 { font-size: 25px; }
  .cr26-review-body .alignleft { float: left; margin: 6px 24px 14px 0; }
  .cr26-review-body .alignright { float: right; margin: 6px 0 14px 24px; }
}

/* Neutralise the old Bootstrap grid inside the body */
.cr26-review-body .row { display: block; margin: 0; }
.cr26-review-body [class*="col-xs-"], .cr26-review-body [class*="col-sm-"], .cr26-review-body [class*="col-md-"], .cr26-review-body [class*="col-lg-"] {
  float: none; width: auto; max-width: none; flex: none; padding: 0; margin: 0; position: static; min-height: 0;
}
.cr26-review-body .clearfix::before, .cr26-review-body .clearfix::after { content: none; display: none; }
.cr26-review-body .clearfix { display: block; clear: both; height: 0; margin: 0; padding: 0; }

/* ---------- Heading block (.casino-heading): rating, logo, restrictions, video ---------- */
.cr26-review-body .review-container { display: flex; flex-direction: column; gap: 16px; margin: 0 0 28px; max-width: none; }
.cr26-review-body .casino-heading { display: flex; flex-direction: column; gap: 14px; padding: 18px; background: var(--cr26-white); border: 1px solid var(--cr26-rule); border-radius: 16px; box-shadow: 0 6px 18px rgba(22, 24, 29, .05); }
.cr26-review-body .casino-restrictions { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; font-size: 12px; line-height: 1.4; color: var(--cr26-muted); }
.cr26-review-body .casino-restrictions p { margin: 0; }
.cr26-review-body .casino-restrictions img { width: 20px; height: auto; border-radius: 2px; }
.cr26-review-body .casino-allowed, .cr26-review-body .casino-restricted { padding: 3px 8px; border-radius: 4px; font-size: 11px; font-weight: 700; letter-spacing: .06em; }
.cr26-review-body .casino-allowed { background: #EDF7F0; color: #155C33; }
.cr26-review-body .casino-restricted { background: var(--cr26-tint); color: var(--cr26-accent-dark); }
.cr26-review-body .rating-info { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; }
.cr26-review-body .casino-star-rating { display: flex; flex-direction: column; gap: 6px; font-size: 14px; color: var(--cr26-muted); }
.cr26-review-body .casino-star-rating strong { font-family: var(--cr26-serif); font-size: 22px; color: var(--cr26-ink); }
.cr26-review-body .casino-logo { flex: 0 0 auto; width: 140px; height: 70px; display: flex; align-items: center; justify-content: center; }
.cr26-review-body .casino-logo img { width: 100%; height: 100%; object-fit: contain; border-radius: 0; }

/* Stars drawn with CSS so they do not depend on the old icon font */
.cr26-review-body .casino-star-rating .fa { display: inline-block; width: 20px; height: 20px; margin-right: 2px; vertical-align: middle; font-size: 0; line-height: 0; background: var(--cr26-rule);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l2.4 6.9H22l-6 4.5 2.3 7.1L12 16l-6.3 4.5L8 13.4 2 8.9h7.6z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l2.4 6.9H22l-6 4.5 2.3 7.1L12 16l-6.3 4.5L8 13.4 2 8.9h7.6z'/%3E%3C/svg%3E") center / contain no-repeat; }
.cr26-review-body .casino-star-rating .fa::before { content: none; }
.cr26-review-body .casino-star-rating .fa.checked { background: #E0A21B; }
.cr26-review-body .casino-star-rating .fa-star-half-o.checked { background: linear-gradient(90deg, #E0A21B 50%, var(--cr26-rule) 50%); }

/* Visit button inside the heading (.playbtn) and the bonus box button (.playBtn) */
.cr26-review-body .playbtn { margin-top: 4px; }
.cr26 .cr26-review-body .playbtn a, .cr26 .cr26-review-body .playBtn {
  display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 22px;
  border: 1px solid var(--cr26-accent); border-radius: 8px; background: var(--cr26-accent); color: var(--cr26-white);
  font: inherit; font-size: 16px; font-weight: 700; line-height: 1.2; text-decoration: none; cursor: pointer; transition: background .15s;
}
.cr26 .cr26-review-body .playbtn a:hover, .cr26 .cr26-review-body .playBtn:hover { background: var(--cr26-accent-dark); border-color: var(--cr26-accent-dark); color: var(--cr26-white); }

.cr26-review-body .video-review-holder { position: relative; aspect-ratio: 16 / 9; border-radius: 12px; overflow: hidden; background-color: var(--cr26-ink); background-size: cover !important; background-position: center !important; }
.cr26-review-body .video-review-holder iframe, .cr26-review-body .hidden-video { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; border-radius: 0; }

@media (min-width: 768px) {
  .cr26-review-body .casino-heading { flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: space-between; padding: 22px; gap: 16px 24px; }
  .cr26-review-body .casino-restrictions { flex: 1 1 100%; font-size: 13px; }
  .cr26-review-body .rating-info { flex: 1 1 100%; flex-wrap: nowrap; }
  .cr26-review-body .casino-logo { width: 180px; height: 90px; }
}

/* ---------- Pros / cons ---------- */
.cr26-review-body .casinoreview { margin: 0 0 28px; }
.cr26-review-body .casinoreview > .row { display: grid; grid-template-columns: 1fr; gap: 16px; }
.cr26-review-body .casinoreview > .row > :not(.proscons) { grid-column: 1 / -1; }
.cr26-review-body .proscons { padding: 20px; border-radius: 12px; background: #EDF7F0; }
.cr26-review-body .proscons:has(ul.cons) { background: var(--cr26-tint); }
.cr26-review-body .cr26-pc-title { margin: 0 0 10px; font-size: 16px; font-weight: 700; color: #155C33; }
.cr26-review-body .proscons:has(ul.cons) .cr26-pc-title { color: var(--cr26-accent-dark); }
.cr26-review-body ul.pros, .cr26-review-body ul.cons { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 9px; font-size: 15px; line-height: 1.45; max-width: none; }
.cr26-review-body ul.pros li, .cr26-review-body ul.cons li { position: relative; margin: 0; padding: 0 0 0 28px; color: var(--cr26-ink); }
.cr26-review-body ul.pros li::before { content: ""; position: absolute; left: 6px; top: 3px; width: 6px; height: 11px; border: solid #2E7D4F; border-width: 0 2.5px 2.5px 0; transform: rotate(45deg); }
.cr26-review-body ul.cons li::before { content: "\00d7"; position: absolute; left: 3px; top: -3px; font-size: 24px; font-weight: 700; line-height: 1.2; color: var(--cr26-accent); }
@media (min-width: 768px) {
  .cr26-review-body .casinoreview > .row { grid-template-columns: 1fr 1fr; }
  .cr26-review-body ul.pros, .cr26-review-body ul.cons { font-size: 16px; }
}

/* ---------- Tables (casino info + banking) ---------- */
.cr26-review-body .schema-table { margin: 0 0 28px; overflow-x: auto; -webkit-overflow-scrolling: touch; background: var(--cr26-white); border: 1px solid var(--cr26-rule); border-radius: 12px; }
.cr26-review-body table { width: 100%; margin: 0; border-collapse: collapse; font-size: 15px; line-height: 1.45; color: var(--cr26-text); }
.cr26-review-body table caption { caption-side: top; padding: 14px 16px; text-align: left; font-family: var(--cr26-serif); font-size: 20px; font-weight: 700; color: var(--cr26-ink); border-bottom: 1px solid var(--cr26-rule); }
.cr26-review-body th, .cr26-review-body td { padding: 12px 16px; text-align: left; vertical-align: middle; border-bottom: 1px solid var(--cr26-rule-soft); }
.cr26-review-body tbody tr:last-child > * { border-bottom: 0; }
.cr26-review-body thead th { background: #FBFBFC; border-bottom: 1px solid var(--cr26-rule); font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--cr26-muted); white-space: nowrap; }
.cr26-review-body tbody tr:hover { background: #FBFBFC; }
.cr26-review-body .casinoInfoContainer th { width: 36%; min-width: 150px; font-weight: 600; color: var(--cr26-ink); }
.cr26-review-body .casinoInfoContainer th img.emoji { display: inline-block; width: 1.1em; height: 1.1em; margin: 0 8px 0 0; vertical-align: -0.15em; border-radius: 0; }
.cr26-review-body .casinoInfoContainer td img { display: inline-block; height: 28px; width: auto; max-width: none; margin: 2px 6px 2px 0; vertical-align: middle; border-radius: 4px; }
.cr26-review-body .banking-options table { min-width: 520px; }
.cr26-review-body .banking-options td:first-child { white-space: nowrap; font-weight: 600; color: var(--cr26-ink); }
.cr26-review-body .banking-options td img { display: inline-block; height: 26px; width: auto; max-width: 56px; margin: 0 10px 0 0; vertical-align: middle; border-radius: 4px; object-fit: contain; }

/* ---------- Bonus cards (.casinoBonuses) ---------- */
.cr26-review-body .casinoBonuses { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 16px; margin: 0 0 1.6em; max-width: none; }
.cr26-review-body .casino-bonus-wrapper { display: flex; flex-direction: column; background: var(--cr26-white); border: 1px solid var(--cr26-rule); border-radius: 12px; overflow: hidden; transition: box-shadow .2s, border-color .2s; }
.cr26-review-body .casino-bonus-wrapper:hover { border-color: #D5D8DD; box-shadow: 0 8px 22px rgba(22, 24, 29, .07); }
.cr26-review-body .casinoReview-bonus { display: flex; flex-direction: column; gap: 12px; padding: 16px; }
.cr26-review-body .casinoReview-bonus p { margin: 0; }
.cr26-review-body .casinoReview-bonus > div:first-child { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; }
.cr26-review-body .bonusName { flex: 0 0 100%; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--cr26-muted); }
.cr26-review-body .casinoReview-bonus .lead { font-family: var(--cr26-serif); font-size: 32px; line-height: 1.1; font-weight: 700; color: var(--cr26-accent-dark); }
.cr26-review-body .casinoReview-bonus .lead small { font-family: var(--cr26-sans); font-size: 13px; font-weight: 500; color: var(--cr26-muted); }
.cr26-review-body .casinoReview-bonus .lead-sec { font-family: var(--cr26-serif); font-size: 24px; font-weight: 700; color: var(--cr26-ink); }
.cr26-review-body .casinoReview-bonus .lead-free { padding: 2px 8px; border-radius: 999px; background: var(--cr26-tint); color: var(--cr26-accent-dark); font-size: 13px; font-weight: 700; }
.cr26-review-body .bonus-box-footer { display: flex; flex-wrap: wrap; gap: 8px; }
.cr26-review-body .bonus-box-footer .wr, .cr26-review-body .bonus-box-footer .code { position: relative; display: inline-flex; align-items: center; gap: 6px; min-height: 36px; padding: 4px 10px; border-radius: 6px; background: var(--cr26-panel); font-size: 13px; color: var(--cr26-muted); }
.cr26-review-body .bonus-box-footer p { margin: 0; }
.cr26-review-body .bonus-box-footer p + p { font-weight: 700; color: var(--cr26-ink); }
.cr26-review-body .bonus-box-footer .code { border: 1px dashed var(--cr26-accent); background: var(--cr26-tint); cursor: pointer; min-height: 44px; }
.cr26-review-body .bonus-box-footer .code p + p { color: var(--cr26-accent-dark); font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; letter-spacing: .02em; }
.cr26-review-body .bonus-box-footer .code:hover { border-style: solid; }
.cr26-review-body .bonus-box-footer .code:focus-visible { outline: 3px solid var(--cr26-accent); outline-offset: 2px; }
.cr26-copied { position: absolute; right: 6px; top: -10px; padding: 2px 8px; border-radius: 4px; background: var(--cr26-ink); color: var(--cr26-white); font-size: 12px; font-weight: 600; opacity: 0; pointer-events: none; transition: opacity .15s; }
.cr26-review-body .code.is-copied .cr26-copied { opacity: 1; }
.cr26-review-body .bonus-buttons { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; }
.cr26 .cr26-review-body .bonus-buttons > a:first-child { flex: 1 1 140px; display: block; text-decoration: none; }
.cr26 .cr26-review-body .bonus-buttons .playBtn { width: 100%; }
/* The terms text stays visible: nothing that carries conditions is hidden. */
.cr26 .cr26-review-body .details-close { display: none; }
.cr26 .cr26-review-body .casino-details { display: block !important; height: auto !important; padding: 12px 16px; margin: 0; border-top: 1px solid var(--cr26-rule-soft); background: var(--cr26-panel); font-size: 13px; line-height: 1.5; color: var(--cr26-text); }
.cr26-review-body .casino-details:empty { display: none !important; }

/* ---------- Comments ---------- */
.cr26-comments { margin-top: 48px; padding-top: 32px; border-top: 2px solid var(--cr26-ink); max-width: 72ch; font-size: 16px; line-height: 1.6; }
.cr26-comments h2, .cr26-comments h3 { margin: 0 0 16px; font-family: var(--cr26-serif); font-size: 26px; font-weight: 700; line-height: 1.15; }
.cr26-comments .comment-list, .cr26-comments .children { margin: 0; padding: 0; list-style: none; }
.cr26-comments .children { margin-left: 16px; padding-left: 16px; border-left: 2px solid var(--cr26-rule); }
.cr26-comments .comment-body { padding: 16px 0; border-bottom: 1px solid var(--cr26-rule); }
.cr26-comments .comment-author { display: flex; align-items: center; gap: 10px; font-weight: 700; }
.cr26-comments .comment-author img { width: 40px; height: 40px; border-radius: 50%; }
.cr26-comments .comment-author .says { display: none; }
.cr26-comments .comment-meta, .cr26-comments .comment-metadata { margin: 4px 0 8px; font-size: 13px; color: var(--cr26-muted); }
.cr26-comments .comment-content p { margin: 0 0 .8em; }
.cr26 .cr26-comments .comment-reply-link { display: inline-flex; align-items: center; min-height: 44px; font-size: 14px; font-weight: 600; color: var(--cr26-accent); }
.cr26-comments .comment-respond { margin-top: 28px; padding: 20px; background: var(--cr26-panel); border: 1px solid var(--cr26-rule); border-radius: 12px; }
.cr26-comments .comment-reply-title { margin: 0 0 12px; font-size: 22px; }
.cr26-comments .comment-reply-title small { margin-left: 8px; font-size: 14px; font-family: var(--cr26-sans); }
.cr26-comments form p { margin: 0 0 14px; }
.cr26-comments label { display: block; margin-bottom: 6px; font-size: 14px; font-weight: 600; color: var(--cr26-muted); }
.cr26-comments input[type="text"], .cr26-comments input[type="email"], .cr26-comments input[type="url"], .cr26-comments textarea {
  width: 100%; min-height: 48px; padding: 10px 12px; border: 1px solid var(--cr26-line); border-radius: 8px;
  background: var(--cr26-white); color: var(--cr26-ink); font: inherit; font-size: 16px;
}
.cr26-comments textarea { min-height: 140px; resize: vertical; }
.cr26-comments .comment-form-cookies-consent { display: flex; align-items: flex-start; gap: 10px; }
.cr26-comments .comment-form-cookies-consent input { flex: 0 0 auto; width: 20px; height: 20px; margin-top: 3px; }
.cr26-comments .comment-form-cookies-consent label { margin: 0; font-weight: 400; }
.cr26-comments input[type="submit"], .cr26-comments .submit {
  min-height: 48px; padding: 0 26px; border: 1px solid var(--cr26-accent); border-radius: 8px;
  background: var(--cr26-accent); color: var(--cr26-white); font: inherit; font-size: 16px; font-weight: 700; cursor: pointer; transition: background .15s;
}
.cr26-comments input[type="submit"]:hover, .cr26-comments .submit:hover { background: var(--cr26-accent-dark); border-color: var(--cr26-accent-dark); }

@media (prefers-reduced-motion: reduce) {
  .cr26-review-body .casino-bonus-wrapper, .cr26-copied, .cr26-review-body .playBtn { transition: none; }
}

/* Lead review: Visit card above the TOC; tighter gap under the hero. */
.cr26-rside__in { display: flex; flex-direction: column; gap: 24px; }
.cr26-rside__in .cr26-vcard { order: -1; }
@media (min-width: 768px) { .cr26-rlayout { padding-top: 24px; } }
.cr26-main.cr26-review { gap: 0; }

/* The old in-body heading keeps its own Visit link; hide it wherever the casino isn't available to this visitor:
   when the heading itself says "Not accepted", or when our rules (closed/blacklisted/warning/Ontario/region) hide Visit. */
.cr26-review-body .casino-heading:has(.casino-restricted) .playbtn,
.cr26-review-body.cr26-novisit .casino-heading .playbtn { display: none; }

/* =========================================================================
   BONUSES PAGE (bonuses.php)
   Restyles the [casino-bonus-type] card markup inside .cr26-bonus-body.
   ====================================================================== */

.cr26-main.cr26-bonuses { gap: 0; padding-bottom: 48px; }

/* ---------- Hero ---------- */
.cr26-bhero { position: relative; overflow: hidden; background: linear-gradient(135deg, #1E2129 0%, #2A1218 60%, #3A1119 100%); color: var(--cr26-white); }
.cr26-bhero__deco { position: absolute; right: -20px; bottom: -30px; width: 220px; height: 220px; opacity: .08; pointer-events: none; }
.cr26-bhero__in { position: relative; display: flex; flex-direction: column; gap: 12px; padding-top: 16px; padding-bottom: 56px; }
.cr26-crumbs--dark ol { color: #C9CCD2; }
.cr26 .cr26-crumbs--dark a { color: #C9CCD2; }
.cr26 .cr26-crumbs--dark a:hover { color: var(--cr26-white); }
.cr26-crumbs--dark [aria-current] { color: var(--cr26-white); }
.cr26-crumbs--dark li + li::before { color: #7C8290; }
.cr26-bhero__title { font-family: var(--cr26-serif); font-size: 34px; line-height: 1.06; font-weight: 700; letter-spacing: -0.015em; max-width: 20ch; }
.cr26-bhero__by { display: flex; flex-wrap: wrap; gap: 4px 16px; font-size: 14px; color: #C9CCD2; }
.cr26-bhero__by > span { display: inline-flex; align-items: center; gap: 5px; }
@media (min-width: 768px) {
  .cr26-bhero__deco { width: 340px; height: 340px; right: 40px; bottom: -60px; }
  .cr26-bhero__in { padding-top: 24px; padding-bottom: 72px; gap: 16px; }
  .cr26-bhero__title { font-size: 50px; line-height: 1.04; max-width: 24ch; }
}

/* ---------- Tabs (links to the three pages) ---------- */
.cr26-btabs { position: sticky; top: var(--cr26-header-h, 112px); z-index: 25; background: var(--cr26-white); border-bottom: 1px solid var(--cr26-rule); }
.cr26-btabs__row { display: flex; gap: 8px; overflow-x: auto; padding: 8px 0; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.cr26-btabs__row::-webkit-scrollbar { display: none; }
.cr26 .cr26-btabs a {
  flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 44px; padding: 0 16px;
  border: 1px solid var(--cr26-line); border-radius: 999px; background: var(--cr26-white);
  font-size: 14px; font-weight: 600; white-space: nowrap; color: var(--cr26-ink); transition: border-color .15s, background .15s;
}
.cr26 .cr26-btabs a:hover { border-color: var(--cr26-accent); color: var(--cr26-accent-dark); }
.cr26 .cr26-btabs a[aria-current="page"] { border-color: var(--cr26-accent); background: var(--cr26-tint); color: var(--cr26-accent-dark); }
@media (min-width: 768px) {
  .cr26-btabs { position: relative; top: auto; z-index: 3; margin: -28px auto 0; width: calc(100% - var(--cr26-gutter) * 2); max-width: calc(var(--cr26-max) - var(--cr26-gutter) * 2); background: var(--cr26-white); border: 1px solid var(--cr26-rule); border-radius: 14px; box-shadow: 0 10px 28px rgba(22, 24, 29, .1); }
  .cr26-btabs > .cr26-wrap { padding: 0 12px; }
  .cr26-btabs__row { padding: 10px 0; }
  .cr26 .cr26-btabs a { padding: 0 20px; font-size: 15px; }
}

/* ---------- Layout ---------- */
.cr26-blayout { display: flex; flex-direction: column; gap: 32px; padding-top: 24px; }
.cr26-bmain { min-width: 0; }
.cr26-bside { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
@media (min-width: 768px) {
  .cr26-blayout { flex-direction: row; align-items: flex-start; gap: 40px; padding-top: 32px; }
  .cr26-bmain { flex: 1 1 0; }
  .cr26-bside { flex: 0 0 280px; position: sticky; top: 24px; }
}
@media (min-width: 1024px) {
  .cr26-blayout { gap: 56px; }
  .cr26-bside { flex-basis: 320px; }
}

/* Ontario panel */
.cr26-onpanel { display: flex; align-items: flex-start; gap: 16px; margin-bottom: 24px; padding: 20px; background: var(--cr26-white); border: 1px solid var(--cr26-rule); border-left: 4px solid var(--cr26-accent); border-radius: 12px; }
.cr26-onpanel > .cr26-ico { color: var(--cr26-accent); margin-top: 2px; }
.cr26-onpanel h2 { margin-bottom: 8px; font-family: var(--cr26-serif); font-size: 22px; line-height: 1.2; font-weight: 700; }
.cr26-onpanel p { font-size: 15px; line-height: 1.55; color: var(--cr26-text); }

/* ---------- Sidebar boxes ---------- */
.cr26-bbox { padding: 20px; background: var(--cr26-white); border: 1px solid var(--cr26-rule); border-radius: 12px; }
.cr26-bbox > h2 { display: flex; align-items: center; gap: 8px; margin-bottom: 12px; font-size: 16px; font-weight: 700; }
.cr26-bbox > h2 .cr26-ico { color: var(--cr26-accent); }
.cr26-calc__intro { margin-bottom: 14px; font-size: 14px; line-height: 1.5; color: var(--cr26-text); }
.cr26-calc__fields { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.cr26-calc .cr26-field label { font-size: 13px; }
.cr26-calc__result { display: flex; flex-direction: column; gap: 2px; margin: 14px 0 8px; padding: 14px; border-radius: 8px; background: var(--cr26-tint); color: var(--cr26-accent-dark); font-size: 13px; font-weight: 600; }
.cr26-calc__out { font-family: var(--cr26-serif); font-size: 30px; line-height: 1.1; font-weight: 700; color: var(--cr26-accent-dark); overflow-wrap: anywhere; }
.cr26-steps { display: flex; flex-direction: column; gap: 12px; font-size: 15px; line-height: 1.45; }
.cr26-steps li { display: flex; align-items: flex-start; gap: 12px; }
.cr26-steps__n { flex: 0 0 28px; display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; background: var(--cr26-tint); color: var(--cr26-accent-dark); font-size: 13px; font-weight: 700; }
.cr26-bnews .cr26-eyebrow { margin-bottom: 4px; font-size: 13px; }
.cr26 .cr26-item--sm { align-items: center; }
.cr26-item--sm .cr26-item__thumb { flex-basis: 56px; width: 56px; height: 56px; }
.cr26-item--sm .cr26-item__title { font-size: 16px; }

/* ---------- Bonus body typography ---------- */
.cr26-bonus-body { font-size: 16px; line-height: 1.65; color: var(--cr26-text); overflow-wrap: break-word; }
.cr26-bonus-body::after { content: ""; display: block; clear: both; }
.cr26-bonus-body > p, .cr26-bonus-body > ul, .cr26-bonus-body > ol, .cr26-bonus-body > h2, .cr26-bonus-body > h3, .cr26-bonus-body > blockquote { max-width: 72ch; }
.cr26-bonus-body p { margin: 0 0 1.1em; }
.cr26-bonus-body p:empty { display: none; }
.cr26-bonus-body h2, .cr26-bonus-body h3 { clear: both; font-family: var(--cr26-serif); color: var(--cr26-ink); font-weight: 700; letter-spacing: -0.01em; }
.cr26-bonus-body h2 { margin: 1.8em 0 .6em; font-size: 28px; line-height: 1.15; }
.cr26-bonus-body h3 { margin: 1.5em 0 .5em; font-size: 22px; line-height: 1.2; }
.cr26-bonus-body > :first-child { margin-top: 0; }
.cr26-bonus-body strong, .cr26-bonus-body b { color: var(--cr26-ink); font-weight: 700; }
.cr26 .cr26-bonus-body a { color: var(--cr26-accent); text-decoration: underline; text-underline-offset: 2px; }
.cr26 .cr26-bonus-body a:hover { color: var(--cr26-accent-dark); }
.cr26-bonus-body ul, .cr26-bonus-body ol { margin: 0 0 1.2em; padding-left: 1.3em; }
.cr26-bonus-body ul { list-style: disc; }
.cr26-bonus-body ol { list-style: decimal; }
.cr26-bonus-body li { margin: 0 0 .4em; padding-left: .2em; }
.cr26-bonus-body li::marker { color: var(--cr26-accent); }
.cr26-bonus-body img { max-width: 100%; height: auto; border-radius: 8px; }
.cr26-bonus-body .alignleft, .cr26-bonus-body .alignright, .cr26-bonus-body .aligncenter { display: block; float: none; margin: 0 auto 14px; }
@media (min-width: 768px) {
  .cr26-bonus-body { font-size: 18px; line-height: 1.7; }
  .cr26-bonus-body h2 { font-size: 34px; }
  .cr26-bonus-body h3 { font-size: 25px; }
  .cr26-bonus-body .alignleft { float: left; margin: 6px 24px 14px 0; }
  .cr26-bonus-body .alignright { float: right; margin: 6px 0 14px 24px; }
}

/* Neutralise the old grid classes inside the body only */
.cr26-bonus-body .row { display: block; margin: 0; }
.cr26-bonus-body [class*="col-xs-"], .cr26-bonus-body [class*="col-sm-"], .cr26-bonus-body [class*="col-md-"], .cr26-bonus-body [class*="col-lg-"] { float: none; width: auto; max-width: none; flex: none; padding: 0; margin: 0; }
.cr26-bonus-body .clearfix::before, .cr26-bonus-body .clearfix::after { content: none; display: none; }
.cr26-bonus-body .grid-container, .cr26-bonus-body .grid-item { display: block; width: auto; max-width: none; margin: 0; padding: 0; float: none; }

/* ---------- Bonus cards: one horizontal row per offer ---------- */
.cr26-bonus-body .grid-container.bonusCasinos { margin: 0 0 28px; max-width: none; }
.cr26-bonus-body .grid-item.bonuses { display: flex; flex-direction: column; gap: 12px; }
.cr26-bonus-body .oneBonusCasino {
  position: relative; display: grid; align-items: center; gap: 12px 16px;
  grid-template-columns: 72px minmax(0, 1fr);
  grid-template-areas: "logo name" "offer offer" "code code" "tc tc" "btn btn";
  margin: 0; padding: 14px; background: var(--cr26-white); border: 1px solid var(--cr26-rule); border-radius: 12px;
  transition: box-shadow .2s, border-color .2s;
}
.cr26-bonus-body .oneBonusCasino:hover { border-color: #D5D8DD; box-shadow: 0 8px 22px rgba(22, 24, 29, .07); }
.cr26-bonus-body .oneBonusCasino p { margin: 0; }
.cr26-bonus-body .casinoTitle { grid-area: name; font-size: 16px; font-weight: 700; line-height: 1.25; color: var(--cr26-ink); overflow-wrap: anywhere; }
.cr26 .cr26-bonus-body .logoImg { grid-area: logo; display: flex; align-items: center; justify-content: center; width: 72px; height: 40px; border-radius: 8px; overflow: hidden; background: var(--cr26-panel); text-decoration: none; }
.cr26-bonus-body img.casinoLogo { display: block; width: 100%; height: 100%; padding: 3px; object-fit: contain; border-radius: 0; }
.cr26-bonus-body .specialBonus { grid-area: offer; display: block; }
.cr26-bonus-body .specialBonus > p { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; font-family: var(--cr26-serif); font-size: 26px; line-height: 1.15; font-weight: 700; color: var(--cr26-accent-dark); }
.cr26-bonus-body .specialBonus small { font-family: var(--cr26-serif); font-size: .7em; font-weight: 700; }
.cr26-bonus-body .bonus-percent, .cr26-bonus-body .bonus-percent-bigger, .cr26-bonus-body .max-bonus { white-space: nowrap; }
.cr26-bonus-body .up-to { font-family: var(--cr26-sans); font-size: 13px; font-weight: 500; color: var(--cr26-muted); }
.cr26-bonus-body .max-bonus { color: var(--cr26-ink); }
.cr26-bonus-body .free-spins { padding: 2px 8px; border-radius: 999px; background: var(--cr26-tint); color: var(--cr26-accent-dark); font-family: var(--cr26-sans); font-size: 13px; font-weight: 700; }
.cr26-bonus-body .ex-bon:empty { display: none; }
.cr26-bonus-body .bon-type { padding: 3px 8px; border-radius: 4px; background: var(--cr26-ink); color: var(--cr26-white); font-family: var(--cr26-sans); font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.cr26-bonus-body .bonus-code { grid-area: code; display: inline-flex; align-items: center; gap: 8px; justify-self: start; min-height: 36px; padding: 4px 10px; border: 1px dashed var(--cr26-accent); border-radius: 6px; background: var(--cr26-tint); font-size: 13px; color: var(--cr26-muted); }
.cr26-bonus-body .bonus-code span { font-weight: 600; }
.cr26-bonus-body .bonus-code p { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-weight: 700; letter-spacing: .02em; color: var(--cr26-accent-dark); overflow-wrap: anywhere; }
.cr26-bonus-body .tc-link-uk { grid-area: tc; font-size: 12px; line-height: 1.45; color: var(--cr26-muted); }
.cr26-bonus-body .tc-link-uk:empty { display: none; }
.cr26-bonus-body .tc-link-uk a { font-size: inherit; }
.cr26-bonus-body .playbtn { grid-area: btn; margin: 0; }
.cr26 .cr26-bonus-body .playbtn a {
  display: flex; align-items: center; justify-content: center; min-height: 48px; padding: 0 22px;
  border-radius: 8px; background: var(--cr26-accent); color: var(--cr26-white);
  font-size: 16px; font-weight: 700; line-height: 1.2; text-align: center; text-decoration: none; text-transform: none; transition: background .15s;
}
.cr26 .cr26-bonus-body .playbtn a:hover { background: var(--cr26-accent-dark); color: var(--cr26-white); }

@media (min-width: 768px) {
  .cr26-bonus-body .oneBonusCasino {
    grid-template-columns: 88px minmax(120px, 1fr) minmax(0, 1.6fr) auto;
    grid-template-areas: "logo name offer btn" "logo code offer btn" "tc tc tc tc";
    column-gap: 20px; row-gap: 4px; padding: 16px 20px;
  }
  .cr26 .cr26-bonus-body .logoImg { width: 88px; height: 44px; }
  .cr26-bonus-body .casinoTitle { align-self: end; font-size: 17px; }
  .cr26-bonus-body .bonus-code { align-self: start; }
  .cr26-bonus-body .specialBonus > p { font-size: 28px; }
  .cr26-bonus-body .playbtn { align-self: center; }
  .cr26 .cr26-bonus-body .playbtn a { min-width: 150px; }
  .cr26-bonus-body .tc-link-uk { padding-top: 6px; }
}

/* Load more / load all (handled by the old casinoreports.js) */
.cr26-bonus-body .more-bonuses { display: flex; flex-direction: column; align-items: center; gap: 12px; margin: 4px 0 28px; text-align: center; }
.cr26-bonus-body .more-bonuses p { margin: 0; font-size: 14px; color: var(--cr26-muted); }
.cr26-bonus-body .button-container { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.cr26-bonus-body .more-bonuses button {
  min-height: 44px; padding: 0 22px; border: 1px solid var(--cr26-accent); border-radius: 8px; background: var(--cr26-white);
  color: var(--cr26-accent); font: inherit; font-size: 15px; font-weight: 700; cursor: pointer; transition: background .15s, color .15s;
}
.cr26-bonus-body .more-bonuses button:hover { background: var(--cr26-tint); color: var(--cr26-accent-dark); }
.cr26-bonus-body .more-bonuses button:focus-visible { outline: 3px solid var(--cr26-accent); outline-offset: 2px; }
/* Spinner box: the old script shows/hides it, so only style it (no display rule that could keep it open) */
.cr26-bonus-body .loading-box { align-items: center; justify-content: center; gap: 8px; margin: 12px 0; font-size: 14px; font-weight: 600; color: var(--cr26-muted); }
.cr26-bonus-body .loading-box img { display: inline-block; width: 20px; height: 20px; vertical-align: middle; margin-right: 8px; border-radius: 0; }

/* ---------- Terms explained ---------- */
.cr26-bterms { padding-top: 48px; }
.cr26-bterms__grid { display: grid; grid-template-columns: 1fr; gap: 12px; }
.cr26-bterm { display: flex; flex-direction: column; gap: 8px; padding: 20px; border: 1px solid var(--cr26-rule); border-radius: 12px; }
.cr26-bterm h3 { font-size: 17px; font-weight: 700; }
.cr26-bterm p { font-size: 14px; line-height: 1.55; color: var(--cr26-text); }
@media (min-width: 768px) {
  .cr26-bterms { padding-top: 64px; }
  .cr26-bterms__grid { grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; }
}

/* ---------- FAQ ---------- */
.cr26-bfaq { padding-top: 40px; }
.cr26-faq { max-width: 860px; }
.cr26-faq__item { border-bottom: 1px solid var(--cr26-rule); }
.cr26-faq__item summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 56px; padding: 12px 0; font-size: 17px; font-weight: 600; line-height: 1.35; cursor: pointer; list-style: none; }
.cr26-faq__item summary::-webkit-details-marker { display: none; }
.cr26-faq__icon { position: relative; flex: 0 0 20px; width: 20px; height: 20px; }
.cr26-faq__icon::before, .cr26-faq__icon::after { content: ""; position: absolute; left: 3px; right: 3px; top: 9px; height: 2px; background: var(--cr26-accent); border-radius: 2px; }
.cr26-faq__icon::after { transform: rotate(90deg); transition: transform .2s; }
.cr26-faq__item[open] .cr26-faq__icon::after { transform: rotate(0); }
.cr26-faq__item p { max-width: 70ch; padding: 0 0 18px; font-size: 16px; line-height: 1.6; color: var(--cr26-text); }
.cr26 .cr26-faq__item summary:focus-visible { outline: 3px solid var(--cr26-accent); outline-offset: 2px; }
@media (min-width: 768px) { .cr26-bfaq { padding-top: 56px; } }

@media (prefers-reduced-motion: reduce) {
  .cr26-bonus-body .oneBonusCasino, .cr26-faq__icon::after, .cr26 .cr26-btabs a, .cr26 .cr26-bonus-body .playbtn a { transition: none; }
}
/* Hidden until casinoreports.js sets display:block inline while loading. */
.cr26-bonus-body .loading-box { display: none; }
/* Phones: the H1 already names the page, so drop the long last crumb. */
@media (max-width: 767px) { .cr26-crumbs li:last-child:not(:first-child) { display: none; } }

/* =========================================================================
   PAYMENTS (payments.php): hub tiles and method-page casino cards
   ====================================================================== */

.cr26-main.cr26-pay { gap: 0; padding-bottom: 48px; }

/* ---------- Hero ---------- */
.cr26-phero { position: relative; overflow: hidden; background: linear-gradient(135deg, #12304A 0%, #1E2129 55%, #3A1119 100%); color: var(--cr26-white); }
.cr26-phero__deco { position: absolute; right: -30px; bottom: -20px; width: 240px; height: auto; opacity: .1; pointer-events: none; }
.cr26-phero__in { position: relative; display: flex; flex-direction: column; gap: 12px; padding-top: 16px; padding-bottom: 28px; }
.cr26-phero__title { max-width: 22ch; }
.cr26 .cr26-phero__back { display: inline-flex; align-items: center; align-self: flex-start; gap: 6px; min-height: 44px; font-size: 14px; font-weight: 600; color: var(--cr26-white); text-decoration: underline; text-underline-offset: 3px; }
.cr26 .cr26-phero__back:hover { color: #FFD6DC; }
.cr26-goals { display: flex; flex-direction: column; gap: 8px; margin-top: 4px; }
.cr26-goals__h { font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #C9CCD2; }
.cr26-goals__row { display: flex; gap: 8px; overflow-x: auto; margin: 0 calc(var(--cr26-gutter) * -1); padding: 0 var(--cr26-gutter) 4px; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.cr26-goals__row::-webkit-scrollbar { display: none; }
.cr26 .cr26-goals__row a {
  flex: 0 0 auto; display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 0 16px;
  border: 1px solid rgba(255, 255, 255, .28); border-radius: 999px; background: rgba(255, 255, 255, .08);
  font-size: 14px; font-weight: 600; white-space: nowrap; color: var(--cr26-white); transition: background .15s, border-color .15s;
}
.cr26 .cr26-goals__row a:hover { background: rgba(255, 255, 255, .18); border-color: var(--cr26-white); color: var(--cr26-white); }
@media (min-width: 768px) {
  .cr26-phero__deco { width: 380px; right: 40px; bottom: -30px; }
  .cr26-phero__in { padding-top: 24px; padding-bottom: 40px; gap: 16px; }
  .cr26-goals { flex-direction: row; align-items: center; gap: 16px; }
  .cr26-goals__row { flex-wrap: wrap; overflow: visible; margin: 0; padding: 0; }
}

/* ---------- Layout ---------- */
.cr26-paylayout { display: flex; flex-direction: column; gap: 32px; padding-top: 24px; }
.cr26-paymain { min-width: 0; }
.cr26-paymain > .cr26-ontario { margin-bottom: 20px; }
.cr26-payside { display: flex; flex-direction: column; gap: 16px; min-width: 0; }
@media (min-width: 768px) {
  .cr26-paylayout { flex-direction: row; align-items: flex-start; gap: 40px; padding-top: 32px; }
  .cr26-paymain { flex: 1 1 0; }
  .cr26-payside { flex: 0 0 280px; position: sticky; top: 24px; }
  .cr26-paylayout--hub { display: block; }
}
@media (min-width: 1024px) {
  .cr26-paylayout { gap: 56px; }
  .cr26-payside { flex-basis: 320px; }
}
.cr26-tips { display: flex; flex-direction: column; gap: 14px; }
.cr26-tips li { display: flex; flex-direction: column; gap: 2px; font-size: 14px; line-height: 1.5; color: var(--cr26-text); }
.cr26-tips b { font-size: 15px; color: var(--cr26-ink); }

/* ---------- Body typography ---------- */
.cr26-pay-body { font-size: 16px; line-height: 1.65; color: var(--cr26-text); overflow-wrap: break-word; }
.cr26-pay-body::after { content: ""; display: block; clear: both; }
.cr26-pay-body > p, .cr26-pay-body > ul, .cr26-pay-body > ol, .cr26-pay-body > h2, .cr26-pay-body > h3, .cr26-pay-body > blockquote { max-width: 72ch; }
.cr26-pay-body p { margin: 0 0 1.1em; }
.cr26-pay-body p:empty { display: none; }
.cr26-pay-body h2, .cr26-pay-body h3 { clear: both; font-family: var(--cr26-serif); color: var(--cr26-ink); font-weight: 700; letter-spacing: -0.01em; }
.cr26-pay-body h2 { margin: 1.8em 0 .6em; font-size: 28px; line-height: 1.15; }
.cr26-pay-body h3 { margin: 1.5em 0 .5em; font-size: 22px; line-height: 1.2; }
.cr26-pay-body > :first-child { margin-top: 0; }
.cr26-pay-body strong, .cr26-pay-body b { color: var(--cr26-ink); font-weight: 700; }
.cr26 .cr26-pay-body a { color: var(--cr26-accent); text-decoration: underline; text-underline-offset: 2px; }
.cr26 .cr26-pay-body a:hover { color: var(--cr26-accent-dark); }
.cr26-pay-body ul, .cr26-pay-body ol { margin: 0 0 1.2em; padding-left: 1.3em; }
.cr26-pay-body ul { list-style: disc; }
.cr26-pay-body ol { list-style: decimal; }
.cr26-pay-body li { margin: 0 0 .4em; padding-left: .2em; }
.cr26-pay-body li::marker { color: var(--cr26-accent); }
.cr26-pay-body img { max-width: 100%; height: auto; }
.cr26-pay-body .alignleft, .cr26-pay-body .alignright, .cr26-pay-body .aligncenter { display: block; float: none; margin: 0 auto 14px; border-radius: 8px; }
@media (min-width: 768px) {
  .cr26-pay-body { font-size: 18px; line-height: 1.7; }
  .cr26-pay-body h2 { font-size: 34px; }
  .cr26-pay-body h3 { font-size: 25px; }
  .cr26-pay-body .alignleft { float: left; margin: 6px 24px 14px 0; }
  .cr26-pay-body .alignright { float: right; margin: 6px 0 14px 24px; }
}

/* Neutralise the old grid classes inside the body only */
.cr26-pay-body .row { display: block; margin: 0; }
.cr26-pay-body [class*="col-xs-"], .cr26-pay-body [class*="col-sm-"], .cr26-pay-body [class*="col-md-"], .cr26-pay-body [class*="col-lg-"] { float: none; width: auto; max-width: none; flex: none; padding: 0; margin: 0; position: static; min-height: 0; }
.cr26-pay-body .clearfix::before, .cr26-pay-body .clearfix::after { content: none; display: none; }
.cr26-pay-body .flex-center { align-items: center; }
.cr26-pay-body .text-center { text-align: inherit; }
.cr26-pay-body .top-casinos p { max-width: none; }

/* ---------- Hub: payment methods as tiles ---------- */
.cr26-pay-body #bankingTableUnique { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 220px), 1fr)); gap: 12px; margin: 0 0 28px; max-width: none; }
/* Heading row: kept for crawlers; with JS its text becomes the tile labels, so it is visually hidden. */
.cr26-pay-body #bankingTableUnique .top-casinos-heading { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(6, 1fr); gap: 8px; font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; color: var(--cr26-muted); }
.cr26-js .cr26-pay-body #bankingTableUnique .top-casinos-heading { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.cr26-pay-body #bankingTableUnique .top-casinos-row {
  display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: center; gap: 10px 8px;
  margin: 0; padding: 16px; background: var(--cr26-white); border: 1px solid var(--cr26-rule); border-radius: 12px;
  transition: border-color .15s, box-shadow .15s;
}
.cr26-pay-body #bankingTableUnique .top-casinos-row:hover { border-color: var(--cr26-accent); box-shadow: 0 4px 14px rgba(22, 24, 29, .08); }
.cr26-pay-body #bankingTableUnique .top-casinos-row > :nth-child(1) { grid-column: 1; grid-row: 1; }
.cr26-pay-body #bankingTableUnique .top-casinos-row > :nth-child(2) { grid-column: 2 / 4; grid-row: 1; }
.cr26-pay-body #bankingTableUnique .top-casinos-row > :nth-child(3) { grid-column: 1; grid-row: 2; }
.cr26-pay-body #bankingTableUnique .top-casinos-row > :nth-child(4) { grid-column: 2; grid-row: 2; }
.cr26-pay-body #bankingTableUnique .top-casinos-row > :nth-child(5) { grid-column: 3; grid-row: 2; }
.cr26-pay-body #bankingTableUnique .top-casinos-row > :nth-child(6) { grid-column: 1 / 4; grid-row: 3; }
.cr26-pay-body #bankingTableUnique .logo-container { display: flex; align-items: center; justify-content: center; width: 72px; height: 44px; border-radius: 8px; overflow: hidden; background: var(--cr26-panel); }
.cr26-pay-body #bankingTableUnique .logo-container img { width: 100%; height: 100%; padding: 4px; object-fit: contain; border-radius: 0; }
.cr26-pay-body #bankingTableUnique .casino-name-table { margin: 0; font-size: 17px; font-weight: 700; line-height: 1.25; }
.cr26 .cr26-pay-body #bankingTableUnique .casino-name-table a { color: var(--cr26-ink); text-decoration: none; }
.cr26 .cr26-pay-body #bankingTableUnique .casino-name-table a:hover { color: var(--cr26-accent); }
.cr26-pay-body #bankingTableUnique [data-label] { display: flex; flex-direction: column; gap: 1px; padding: 8px 10px; border-radius: 8px; background: var(--cr26-panel); }
.cr26-pay-body #bankingTableUnique [data-label]::before { content: attr(data-label); font-size: 11px; font-weight: 600; letter-spacing: .04em; text-transform: uppercase; color: var(--cr26-muted); }
.cr26-pay-body #bankingTableUnique [data-label] p { margin: 0; font-size: 15px; font-weight: 700; color: var(--cr26-ink); text-align: left; }
.cr26-pay-body #bankingTableUnique .text-center { margin: 0; font-size: 15px; font-weight: 600; }

/* Shared secondary / primary link buttons inside lists */
.cr26 :is(.cr26-pay-body, .cr26-article-body) .r-link {
  display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 16px;
  border: 1px solid var(--cr26-accent); border-radius: 8px; background: var(--cr26-white); color: var(--cr26-accent);
  font-size: 15px; font-weight: 700; text-align: center; text-decoration: none; transition: background .15s, color .15s;
}
.cr26 :is(.cr26-pay-body, .cr26-article-body) .r-link:hover { background: var(--cr26-tint); color: var(--cr26-accent-dark); }

/* ---------- Method pages: casino cards ---------- */
:is(.cr26-pay-body, .cr26-article-body) .top-casinos:not(#bankingTableUnique) { display: flex; flex-direction: column; gap: 10px; margin: 0 0 20px; max-width: none; }
:is(.cr26-pay-body, .cr26-article-body) .top-casinos:not(#bankingTableUnique) .top-casinos-heading { position: absolute; width: 1px; height: 1px; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
:is(.cr26-pay-body, .cr26-article-body) .top-casinos:not(#bankingTableUnique) .top-casinos-row {
  display: grid; align-items: center; gap: 12px 14px; grid-template-columns: 72px minmax(0, 1fr);
  margin: 0; padding: 14px; background: var(--cr26-white); border: 1px solid var(--cr26-rule); border-radius: 12px; transition: border-color .2s, box-shadow .2s;
}
:is(.cr26-pay-body, .cr26-article-body) .top-casinos:not(#bankingTableUnique) .top-casinos-row:hover { border-color: #D5D8DD; box-shadow: 0 8px 22px rgba(22, 24, 29, .07); }
:is(.cr26-pay-body, .cr26-article-body) .top-casinos-row > :nth-child(1) { grid-column: 1; grid-row: 1; display: flex; align-items: center; justify-content: center; width: 72px; height: 40px; border-radius: 8px; overflow: hidden; background: var(--cr26-panel); }
:is(.cr26-pay-body, .cr26-article-body) .top-casinos-row > :nth-child(1) img { display: block; width: 100%; height: 100%; padding: 3px; object-fit: contain; border-radius: 0; }
:is(.cr26-pay-body, .cr26-article-body) .top-casinos:not(#bankingTableUnique) .top-casinos-row > :nth-child(2) { grid-column: 2; grid-row: 1; min-width: 0; display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; }
:is(.cr26-pay-body, .cr26-article-body) .top-casinos:not(#bankingTableUnique) .top-casinos-row > :nth-child(3) { grid-column: 1 / -1; grid-row: 2; display: flex; gap: 8px; }
:is(.cr26-pay-body, .cr26-article-body) .banking-icon-holder { position: relative; }
:is(.cr26-pay-body, .cr26-article-body) .bonus-icon { order: 3; margin-left: auto; }
:is(.cr26-pay-body, .cr26-article-body) .bonus-icon img { display: block; height: 22px; width: auto; max-width: 44px; object-fit: contain; border-radius: 0; }
:is(.cr26-pay-body, .cr26-article-body) .top-bonus-type { padding: 3px 8px; border-radius: 4px; background: var(--cr26-ink); color: var(--cr26-white); font-size: 11px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
:is(.cr26-pay-body, .cr26-article-body) .top-bonus { flex: 1 1 100%; display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px 8px; }
:is(.cr26-pay-body, .cr26-article-body) .top-bonus p { margin: 0; }
:is(.cr26-pay-body, .cr26-article-body) .top-bonus .lead { font-family: var(--cr26-serif); font-size: 22px; line-height: 1.15; font-weight: 700; color: var(--cr26-accent-dark); }
:is(.cr26-pay-body, .cr26-article-body) .top-bonus .lead small { font-family: var(--cr26-sans); font-size: 12px; font-weight: 500; color: var(--cr26-muted); }
:is(.cr26-pay-body, .cr26-article-body) .top-bonus .lead-sec { font-family: var(--cr26-serif); font-size: 22px; line-height: 1.15; font-weight: 700; color: var(--cr26-ink); }
:is(.cr26-pay-body, .cr26-article-body) .top-bonus .lead-free { padding: 2px 8px; border-radius: 999px; background: var(--cr26-tint); color: var(--cr26-accent-dark); font-size: 13px; font-weight: 700; }
:is(.cr26-pay-body, .cr26-article-body) .top-casinos-row .playbtn { flex: 1 1 0; margin: 0; }
:is(.cr26-pay-body, .cr26-article-body) .top-casinos-row > :nth-child(3) .r-link { flex: 1 1 0; }
.cr26 :is(.cr26-pay-body, .cr26-article-body) .playbtn a {
  display: flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 20px;
  border-radius: 8px; background: var(--cr26-accent); color: var(--cr26-white);
  font-size: 15px; font-weight: 700; text-align: center; text-decoration: none; transition: background .15s;
}
.cr26 :is(.cr26-pay-body, .cr26-article-body) .playbtn a:hover { background: var(--cr26-accent-dark); color: var(--cr26-white); }
@media (min-width: 768px) {
  :is(.cr26-pay-body, .cr26-article-body) .top-casinos:not(#bankingTableUnique) .top-casinos-row { grid-template-columns: 88px minmax(0, 1fr) auto; padding: 14px 20px; gap: 12px 20px; }
  :is(.cr26-pay-body, .cr26-article-body) .top-casinos-row > :nth-child(1) { width: 88px; height: 44px; }
  :is(.cr26-pay-body, .cr26-article-body) .top-casinos:not(#bankingTableUnique) .top-casinos-row > :nth-child(3) { grid-column: 3; grid-row: 1; }
  :is(.cr26-pay-body, .cr26-article-body) .top-casinos-row .playbtn, :is(.cr26-pay-body, .cr26-article-body) .top-casinos-row > :nth-child(3) .r-link { flex: 0 0 auto; min-width: 100px; }
}

/* Cap long lists (only when JS added .is-capped; without JS everything shows) */
/* !important: the row layout rule uses :not(#bankingTableUnique), whose ID specificity would otherwise win. */
.cr26-js :is(.cr26-pay-body, .cr26-article-body) .top-casinos.is-capped:not(.is-open) .is-extra { display: none !important; }
:is(.cr26-pay-body, .cr26-article-body) .cr26-showall {
  display: flex; align-items: center; justify-content: center; width: 100%; min-height: 48px; margin: 0 0 28px; padding: 0 22px;
  border: 1px solid var(--cr26-accent); border-radius: 8px; background: var(--cr26-white); color: var(--cr26-accent);
  font: inherit; font-size: 16px; font-weight: 700; cursor: pointer; transition: background .15s;
}
:is(.cr26-pay-body, .cr26-article-body) .cr26-showall:hover { background: var(--cr26-tint); color: var(--cr26-accent-dark); }
:is(.cr26-pay-body, .cr26-article-body) .cr26-showall:focus-visible { outline: 3px solid var(--cr26-accent); outline-offset: 2px; }
@media (min-width: 768px) { :is(.cr26-pay-body, .cr26-article-body) .cr26-showall { width: auto; min-width: 280px; margin-left: auto; margin-right: auto; } }

/* ---------- Ultimate FAQs (plugin JS still toggles the body) ---------- */
:is(.cr26-pay-body, .cr26-article-body) .ewd-ufaq-faqs { max-width: 860px; margin: 0 0 28px; }
:is(.cr26-pay-body, .cr26-article-body) .ewd-ufaq-faq-div { border-bottom: 1px solid var(--cr26-rule); }
.cr26 :is(.cr26-pay-body, .cr26-article-body) .ewd-ufaq-faq-title a.ewd-ufaq-post-margin { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 56px; padding: 12px 0; color: var(--cr26-ink); text-decoration: none; cursor: pointer; }
:is(.cr26-pay-body, .cr26-article-body) .ewd-ufaq-faq-title a.ewd-ufaq-post-margin:focus-visible { outline: 3px solid var(--cr26-accent); outline-offset: 2px; }
:is(.cr26-pay-body, .cr26-article-body) .ewd-ufaq-post-margin-symbol { display: none; }
:is(.cr26-pay-body, .cr26-article-body) .ewd-ufaq-faq-title-text { flex: 1 1 auto; min-width: 0; }
:is(.cr26-pay-body, .cr26-article-body) .ewd-ufaq-faq-title-text h4, :is(.cr26-pay-body, .cr26-article-body) .ewd-ufaq-faq-title h4 { margin: 0; font-family: var(--cr26-sans); font-size: 17px; font-weight: 600; line-height: 1.35; color: var(--cr26-ink); }
:is(.cr26-pay-body, .cr26-article-body) .ewd-ufaq-faq-title a.ewd-ufaq-post-margin::after {
  content: "+"; flex: 0 0 20px; width: 20px; text-align: center; font-size: 24px; font-weight: 400; line-height: 1; color: var(--cr26-accent);
}
:is(.cr26-pay-body, .cr26-article-body) .ewd-ufaq-faq-title:has(+ .ewd-ufaq-faq-body:not(.ewd-ufaq-hidden)) a.ewd-ufaq-post-margin::after { content: "\2212"; }
:is(.cr26-pay-body, .cr26-article-body) .ewd-ufaq-clear { display: none; }
:is(.cr26-pay-body, .cr26-article-body) .ewd-ufaq-faq-body .ewd-ufaq-faq-post, :is(.cr26-pay-body, .cr26-article-body) .ewd-ufaq-faq-body p { max-width: 70ch; margin: 0; padding: 0 0 18px; font-size: 16px; line-height: 1.6; color: var(--cr26-text); }

@media (prefers-reduced-motion: reduce) {
  :is(.cr26-pay-body, .cr26-article-body) .top-casinos-row, :is(.cr26-pay-body, .cr26-article-body) .cr26-showall, .cr26 .cr26-goals__row a, .cr26 :is(.cr26-pay-body, .cr26-article-body) .playbtn a { transition: none; }
}
/* Hub tiles: keep fact labels on one line (they broke mid-word in narrow cells). */
:is(.cr26-pay-body, .cr26-article-body) #bankingTableUnique [data-label] { min-width: 0; padding: 8px; }
:is(.cr26-pay-body, .cr26-article-body) #bankingTableUnique [data-label]::before { font-size: 10px; letter-spacing: 0; text-transform: none; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* =========================================================================
   ARTICLE (article.php): news posts and general content pages
   Casino rows inside .cr26-article-body reuse the payment-page card styles above.
   ====================================================================== */

.cr26-main.cr26-art { gap: 0; padding-bottom: 32px; }

/* ---------- Hero ---------- */
.cr26 .cr26-ahero__cat { margin: 0; }
.cr26 .cr26-ahero__cat a { display: inline-flex; align-items: center; min-height: 32px; padding: 0 10px; border-radius: 4px; background: var(--cr26-accent); color: var(--cr26-white); font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.cr26 .cr26-ahero__cat a:hover { background: var(--cr26-accent-dark); color: var(--cr26-white); }
.cr26-ahero__dek { max-width: 62ch; font-size: 18px; line-height: 1.5; color: var(--cr26-text); }
@media (min-width: 768px) { .cr26-ahero__dek { font-size: 21px; } }

/* ---------- Layout ---------- */
.cr26-aside { display: block; }
.cr26-alayout .cr26-rside__in { gap: 28px; }
@media (max-width: 767px) { .cr26-aside .cr26-toc { display: none; } }
.cr26-afig { margin: 0 0 24px; }
.cr26-afig img, .cr26-afig .cr26-img { display: block; width: 100%; aspect-ratio: 16 / 9; height: auto; object-fit: cover; border-radius: 12px; }
.cr26-afig figcaption { margin-top: 8px; font-size: 13px; color: var(--cr26-muted); }
.cr26-rel .cr26-eyebrow { margin-bottom: 4px; font-size: 13px; }
.cr26-rel__pages li { border-top: 1px solid var(--cr26-rule); }
.cr26 .cr26-rel__pages a { display: flex; align-items: center; min-height: 44px; padding: 8px 0; font-size: 15px; font-weight: 600; line-height: 1.3; }

/* ---------- Body typography ---------- */
.cr26-article-body { font-size: 16px; line-height: 1.65; color: var(--cr26-text); overflow-wrap: break-word; }
.cr26-article-body::after { content: ""; display: block; clear: both; }
.cr26-article-body > p, .cr26-article-body > ul, .cr26-article-body > ol, .cr26-article-body > h2, .cr26-article-body > h3, .cr26-article-body > h4, .cr26-article-body > blockquote { max-width: 72ch; }
.cr26-article-body p { margin: 0 0 1.1em; }
.cr26-article-body p:empty { display: none; }
.cr26-article-body h2, .cr26-article-body h3, .cr26-article-body h4 { clear: both; font-family: var(--cr26-serif); color: var(--cr26-ink); font-weight: 700; letter-spacing: -0.01em; }
.cr26-article-body h2 { margin: 1.8em 0 .6em; font-size: 28px; line-height: 1.15; }
.cr26-article-body h3 { margin: 1.5em 0 .5em; font-size: 22px; line-height: 1.2; }
.cr26-article-body h4 { margin: 1.3em 0 .4em; font-size: 18px; }
.cr26-article-body > :first-child { margin-top: 0; }
.cr26-article-body strong, .cr26-article-body b { color: var(--cr26-ink); font-weight: 700; }
.cr26 .cr26-article-body a { color: var(--cr26-accent); text-decoration: underline; text-underline-offset: 2px; }
.cr26 .cr26-article-body a:hover { color: var(--cr26-accent-dark); }
.cr26-article-body ul, .cr26-article-body ol { margin: 0 0 1.2em; padding-left: 1.3em; }
.cr26-article-body ul { list-style: disc; }
.cr26-article-body ol { list-style: decimal; }
.cr26-article-body li { margin: 0 0 .4em; padding-left: .2em; }
.cr26-article-body li::marker { color: var(--cr26-accent); }
.cr26-article-body li > ul, .cr26-article-body li > ol { margin: .4em 0 0; }
.cr26-article-body blockquote { margin: 1.4em 0; padding: 4px 0 4px 18px; border-left: 4px solid var(--cr26-accent); font-family: var(--cr26-serif); font-size: 1.12em; line-height: 1.5; color: var(--cr26-ink); }
.cr26-article-body blockquote p:last-child { margin-bottom: 0; }
.cr26-article-body hr { margin: 2em 0; border: 0; border-top: 1px solid var(--cr26-rule); }
.cr26-article-body iframe, .cr26-article-body video { max-width: 100%; }
.cr26-article-body pre { overflow-x: auto; padding: 14px; border-radius: 8px; background: var(--cr26-panel); font-size: 14px; }

/* Images and captions */
.cr26-article-body img { max-width: 100%; height: auto; border-radius: 8px; }
.cr26-article-body .alignleft, .cr26-article-body .alignright, .cr26-article-body .aligncenter { display: block; float: none; margin: 0 auto 14px; }
.cr26-article-body .aligncenter { margin-left: auto; margin-right: auto; }
.cr26-article-body .wp-caption { max-width: 100%; margin: 0 auto 14px; }
.cr26-article-body .wp-caption img { display: block; margin: 0 auto; }
.cr26-article-body .wp-caption-text, .cr26-article-body figcaption { margin: 6px 0 0; font-size: 13px; line-height: 1.4; color: var(--cr26-muted); }
@media (min-width: 768px) {
  .cr26-article-body { font-size: 18px; line-height: 1.7; }
  .cr26-article-body h2 { font-size: 34px; }
  .cr26-article-body h3 { font-size: 25px; }
  .cr26-article-body .alignleft { float: left; margin: 6px 24px 14px 0; }
  .cr26-article-body .alignright { float: right; margin: 6px 0 14px 24px; }
  .cr26-article-body .wp-caption.alignleft, .cr26-article-body .wp-caption.alignright { max-width: 50%; }
}

/* Tables scroll sideways rather than breaking the layout */
.cr26-article-body table { display: block; width: 100%; max-width: 100%; margin: 0 0 1.4em; overflow-x: auto; -webkit-overflow-scrolling: touch; border-collapse: collapse; font-size: 15px; line-height: 1.45; }
.cr26-article-body th, .cr26-article-body td { padding: 10px 14px; border: 1px solid var(--cr26-rule); text-align: left; vertical-align: top; }
.cr26-article-body th { background: #FBFBFC; color: var(--cr26-ink); font-weight: 600; }

/* Old share buttons are replaced by our own share row */
.cr26-article-body .mashsb-container, .cr26-article-body aside.mashsb-container { display: none !important; }

/* Neutralise the old grid inside the body only */
.cr26-article-body .row { display: block; margin: 0; }
.cr26-article-body [class*="col-xs-"], .cr26-article-body [class*="col-sm-"], .cr26-article-body [class*="col-md-"], .cr26-article-body [class*="col-lg-"] { float: none; width: auto; max-width: none; flex: none; padding: 0; margin: 0; position: static; min-height: 0; }
.cr26-article-body .clearfix::before, .cr26-article-body .clearfix::after { content: none; display: none; }
.cr26-article-body .clear, .cr26-article-body .clearfix { display: block; clear: both; height: 0; margin: 0; padding: 0; }
.cr26-article-body .flex-center { align-items: center; }
.cr26-article-body .text-center { text-align: inherit; }
.cr26-article-body .top-casinos p { max-width: none; }

/* Child-page index (.toc-child-pages) as a tidy link grid */
.cr26-article-body .toc-index-title { margin: 1.6em 0 .6em; font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--cr26-ink); }
.cr26-article-body ol.toc-child-pages { display: grid; grid-template-columns: 1fr; gap: 12px; margin: 0 0 1.6em; padding: 0; list-style: none; max-width: none; }
.cr26-article-body ol.toc-child-pages > li { margin: 0; padding: 14px 16px; font-size: 0; border: 1px solid var(--cr26-rule); border-radius: 12px; background: var(--cr26-white); transition: border-color .15s, box-shadow .15s; }
.cr26-article-body ol.toc-child-pages > li:hover { border-color: var(--cr26-accent); box-shadow: 0 4px 14px rgba(22, 24, 29, .08); }
.cr26 .cr26-article-body a.toc-child-pages-title { display: block; margin-bottom: 4px; font-family: var(--cr26-serif); font-size: 18px; font-weight: 700; line-height: 1.25; color: var(--cr26-ink); text-decoration: none; }
.cr26 .cr26-article-body a.toc-child-pages-title:hover { color: var(--cr26-accent); }
.cr26-article-body ol.toc-child-pages p { margin: 0; font-size: 14px; line-height: 1.5; color: var(--cr26-text); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
@media (min-width: 768px) { .cr26-article-body ol.toc-child-pages { grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); } }

/* ---------- After the body: tags, share, author box, previous/next ---------- */
.cr26-tags, .cr26-share { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-top: 28px; }
.cr26-tags__h, .cr26-share__h { font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--cr26-muted); }
.cr26-tags ul, .cr26-share ul { display: flex; flex-wrap: wrap; gap: 8px; }
.cr26 .cr26-tags a, .cr26 .cr26-share a, .cr26-share__copy {
  display: inline-flex; align-items: center; gap: 6px; min-height: 44px; padding: 0 14px;
  border: 1px solid var(--cr26-line); border-radius: 999px; background: var(--cr26-white);
  font: inherit; font-size: 14px; font-weight: 600; color: var(--cr26-ink); cursor: pointer; transition: border-color .15s, background .15s;
}
.cr26 .cr26-tags a:hover, .cr26 .cr26-share a:hover, .cr26-share__copy:hover { border-color: var(--cr26-accent); color: var(--cr26-accent-dark); }
.cr26-share__copy { display: none; }
.cr26-js .cr26-share__copy { display: inline-flex; }
.cr26-share__copy.is-copied { border-color: var(--cr26-accent); background: var(--cr26-tint); color: var(--cr26-accent-dark); }
.cr26-share__copy:focus-visible { outline: 3px solid var(--cr26-accent); outline-offset: 2px; }

.cr26-authorbox { display: flex; align-items: flex-start; gap: 16px; margin-top: 32px; padding: 20px; background: var(--cr26-panel); border: 1px solid var(--cr26-rule); border-radius: 12px; }
.cr26-authorbox__img, .cr26-authorbox img { flex: 0 0 64px; width: 64px; height: 64px; border-radius: 50%; object-fit: cover; }
.cr26-authorbox h2 { margin-bottom: 4px; font-family: var(--cr26-serif); font-size: 20px; font-weight: 700; line-height: 1.2; }
.cr26-authorbox p { margin: 0 0 4px; font-size: 15px; line-height: 1.55; color: var(--cr26-text); }

.cr26-pn { display: grid; grid-template-columns: 1fr; gap: 12px; margin-top: 28px; }
.cr26 .cr26-pn__item { display: flex; flex-direction: column; gap: 2px; min-height: 44px; padding: 14px 16px; border: 1px solid var(--cr26-rule); border-radius: 12px; transition: border-color .15s; }
.cr26 .cr26-pn__item:hover { border-color: var(--cr26-accent); }
.cr26-pn__item span { font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--cr26-muted); }
.cr26-pn__item b { font-family: var(--cr26-serif); font-size: 17px; font-weight: 500; line-height: 1.3; color: var(--cr26-ink); }
.cr26-pn__item--next { text-align: right; }
@media (min-width: 768px) { .cr26-pn { grid-template-columns: 1fr 1fr; } .cr26-pn__item--prev:only-child { grid-column: 1; } .cr26-pn__item--next:only-child { grid-column: 2; } }

@media (prefers-reduced-motion: reduce) {
  .cr26-article-body ol.toc-child-pages > li, .cr26 .cr26-tags a, .cr26 .cr26-share a, .cr26-share__copy, .cr26 .cr26-pn__item { transition: none; }
}

.cr26-article-body p:empty { display: none; }

/* =========================================================================
   LISTING / 404 (listing.php, 404.php)
   ====================================================================== */

.cr26-main.cr26-listing, .cr26-main.cr26-e404 { gap: 0; padding-bottom: 40px; }

/* ---------- Hero ---------- */
.cr26-lhero__desc { max-width: 66ch; font-size: 17px; line-height: 1.55; color: var(--cr26-text); }
.cr26-lhero__desc p { margin: 0 0 .6em; }
.cr26 .cr26-lhero__desc a { color: var(--cr26-accent); text-decoration: underline; }
.cr26-lhero__search { width: 100%; }
.cr26-lhero__search .cr26-searchform, .cr26-empty-state .cr26-searchform, .cr26-e404__search .cr26-searchform { max-width: 640px; }

/* ---------- Grid ---------- */
.cr26-lbody { padding-top: 24px; padding-bottom: 8px; }
.cr26-lgrid { display: grid; grid-template-columns: 1fr; gap: 28px 24px; }
.cr26-lgrid > li { min-width: 0; }
.cr26 .cr26-lgrid .cr26-card { display: flex; flex-direction: column; gap: 10px; height: 100%; }
.cr26-card__body { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
.cr26-card__ex { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 15px; line-height: 1.5; color: var(--cr26-text); }
@media (min-width: 600px) { .cr26-lgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 768px) {
  .cr26-lbody { padding-top: 40px; }
  .cr26-lgrid { gap: 36px 24px; }
}
@media (min-width: 1024px) { .cr26-lgrid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* Lead card: full width on page 1 of categories and the posts index */
.cr26-lgrid > li.is-lead { grid-column: 1 / -1; }
.cr26-card--lead .cr26-card__title { font-size: 26px; line-height: 1.15; font-weight: 700; }
.cr26-card--lead .cr26-card__ex { -webkit-line-clamp: 3; font-size: 16px; }
@media (min-width: 768px) {
  .cr26 .cr26-lgrid .cr26-card--lead { flex-direction: row; align-items: center; gap: 32px; }
  .cr26-card--lead .cr26-card__media { flex: 1 1 56%; }
  .cr26-card--lead .cr26-card__body { flex: 1 1 44%; gap: 12px; }
  .cr26-card--lead .cr26-card__title { font-size: 36px; letter-spacing: -0.01em; }
  .cr26-card--lead .cr26-card__ex { font-size: 18px; }
}

/* ---------- Pagination ---------- */
.cr26-pager { margin-top: 40px; }
.cr26-pager ul.page-numbers { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.cr26-pager .page-numbers > li { display: block; }
.cr26 .cr26-pager a.page-numbers, .cr26-pager span.page-numbers {
  display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-width: 44px; min-height: 44px; padding: 0 14px;
  border: 1px solid var(--cr26-line); border-radius: 999px; background: var(--cr26-white);
  font-size: 15px; font-weight: 600; color: var(--cr26-ink); transition: border-color .15s, background .15s;
}
.cr26 .cr26-pager a.page-numbers:hover { border-color: var(--cr26-accent); color: var(--cr26-accent-dark); }
.cr26-pager span.page-numbers.current { border-color: var(--cr26-accent); background: var(--cr26-accent); color: var(--cr26-white); }
.cr26-pager span.page-numbers.dots { border-color: transparent; background: transparent; min-width: 24px; padding: 0; }

/* ---------- Empty state ---------- */
.cr26-empty-state { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; padding: 24px 0 8px; }
.cr26-empty-state h2 { font-family: var(--cr26-serif); font-size: 28px; font-weight: 700; line-height: 1.15; }
.cr26-empty-state > p { color: var(--cr26-text); font-size: 16px; }
.cr26-empty-state .cr26-searchform { width: 100%; }

/* ---------- Quick-link tiles (empty state, 404) ---------- */
.cr26-quick { grid-template-columns: 1fr 1fr; gap: 12px; width: 100%; }
.cr26-quick .cr26-tile { flex-direction: column; align-items: flex-start; gap: 12px; padding: 16px; border-radius: 12px; }
@media (min-width: 768px) { .cr26-quick { grid-template-columns: repeat(4, minmax(0, 1fr)); } }

/* ---------- 404 ---------- */
.cr26-e404__panel { display: flex; flex-direction: column; align-items: center; gap: 16px; padding-top: 40px; padding-bottom: 32px; text-align: center; }
.cr26-e404__num { font-family: var(--cr26-serif); font-size: 96px; line-height: 1; font-weight: 700; letter-spacing: -0.03em; color: var(--cr26-accent); }
.cr26-e404__panel h1 { max-width: 20ch; font-family: var(--cr26-serif); font-size: 32px; line-height: 1.1; font-weight: 700; letter-spacing: -0.015em; }
.cr26-e404__p { max-width: 56ch; font-size: 16px; line-height: 1.55; color: var(--cr26-text); }
.cr26-e404__search { width: 100%; display: flex; justify-content: center; }
.cr26-e404__search .cr26-searchform { width: 100%; text-align: left; }
.cr26-e404__panel .cr26-quick { max-width: 880px; text-align: left; }
.cr26-e404__news { padding-top: 24px; }
@media (min-width: 768px) {
  .cr26-e404__panel { padding-top: 72px; padding-bottom: 48px; gap: 20px; }
  .cr26-e404__num { font-size: 160px; }
  .cr26-e404__panel h1 { font-size: 44px; }
  .cr26-e404__p { font-size: 18px; }
  .cr26-e404__news { padding-top: 32px; }
}

@media (prefers-reduced-motion: reduce) {
  .cr26 .cr26-pager a.page-numbers { transition: none; }
}

/* =========================================================================
   MENUS: header nav bar (mega panels), drawer accordion, footer menu
   OFFERS: region-aware "Top casinos" block (side list and strip)
   ====================================================================== */

/* Items the old walker marks as restricted for Ontario visitors */
.cr26 .ontario-resticted-hide { display: none !important; }

/* ---------- Header: logo row + full-width nav bar ---------- */
.cr26-header__in .cr26-brand { margin-right: auto; }
.cr26-navbar { position: relative; background: var(--cr26-white); border-top: 1px solid var(--cr26-rule-soft); }
.cr26-menu { display: flex; flex-wrap: nowrap; gap: 0 4px; overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.cr26-menu::-webkit-scrollbar { display: none; }
.cr26-menu ul { list-style: none; margin: 0; padding: 0; }
.cr26-menu > li { position: static; display: flex; align-items: center; flex: 0 0 auto; margin: 0; }
.cr26 .cr26-menu > li > a { display: inline-flex; align-items: center; min-height: 48px; padding: 0 12px; font-size: 15px; font-weight: 600; white-space: nowrap; color: var(--cr26-ink); }
.cr26 .cr26-menu > li > a:hover { color: var(--cr26-accent); }
.cr26 .cr26-menu > li.current-menu-item > a, .cr26 .cr26-menu > li.current-menu-ancestor > a, .cr26 .cr26-menu > li.current-page-ancestor > a, .cr26 .cr26-menu > li.current_page_item > a, .cr26 .cr26-menu > li.is-open > a {
  color: var(--cr26-accent); box-shadow: inset 0 -3px 0 var(--cr26-accent);
}
.cr26-menu > li > ul { display: none; }

.cr26-sub-toggle {
  display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; width: 44px; min-height: 48px; margin-left: -12px; padding: 0;
  border: 0; background: transparent; color: var(--cr26-muted); cursor: pointer;
}
.cr26-sub-toggle::before { content: ""; width: 7px; height: 7px; border: solid currentColor; border-width: 0 2px 2px 0; transform: translateY(-2px) rotate(45deg); }
.cr26-sub-toggle[aria-expanded="true"]::before { transform: translateY(2px) rotate(225deg); color: var(--cr26-accent); }
.cr26-sub-toggle:hover { color: var(--cr26-accent); }
.cr26 .cr26-sub-toggle:focus-visible { outline: 3px solid var(--cr26-accent); outline-offset: -3px; }

/* Below 1100px: with JS the drawer replaces the bar; without JS the bar scrolls sideways (submenus stay closed) */
.cr26-js .cr26-navbar { display: none; }
@media (min-width: 768px) and (max-width: 1099px) {
  .cr26 .cr26-menu-toggle, .cr26-js .cr26-menu-toggle { display: inline-flex; }
  .cr26-drawer { display: flex; }
}
@media (min-width: 1100px) {
  .cr26-header__in { padding-top: 14px; padding-bottom: 14px; }
  .cr26-js .cr26-navbar, .cr26-navbar { display: block; }
  .cr26-menu { flex-wrap: wrap; justify-content: space-between; overflow: visible; }
  .cr26 .cr26-menu > li > a { padding: 0 10px; }

  /* Mega panel: full width of the bar, content centred to the page width */
  .cr26-menu > li > ul.sub-menu, .cr26-menu > li > ul {
    position: absolute; left: 0; right: 0; top: 100%; z-index: 40;
    grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 12px 28px; align-content: start;
    max-height: min(72vh, 640px); overflow-y: auto;
    padding: 24px max(var(--cr26-gutter), calc((100% - var(--cr26-max)) / 2 + var(--cr26-gutter)));
    background: var(--cr26-white); border-top: 1px solid var(--cr26-rule); border-bottom: 1px solid var(--cr26-rule); box-shadow: 0 18px 36px rgba(22, 24, 29, .14);
  }
  .cr26-menu > li.is-open > ul { display: grid; }
  html:not(.cr26-js) .cr26-menu > li:hover > ul, html:not(.cr26-js) .cr26-menu > li:focus-within > ul { display: grid; }
  .cr26-menu > li > ul > li { min-width: 0; margin: 0; }
  .cr26 .cr26-menu ul a { display: flex; align-items: center; min-height: 44px; padding: 6px 0; font-size: 15px; font-weight: 500; line-height: 1.3; color: var(--cr26-text); white-space: normal; }
  .cr26 .cr26-menu ul a:hover { color: var(--cr26-accent); }
  .cr26 .cr26-menu > li > ul > li > a { font-weight: 600; color: var(--cr26-ink); }
  /* Second-level items that have children become column headings */
  .cr26 .cr26-menu > li > ul > li:has(> ul) > a { min-height: 36px; margin-bottom: 4px; border-bottom: 1px solid var(--cr26-rule); font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--cr26-accent-dark); }
  .cr26-menu > li > ul > li > ul { display: flex; flex-direction: column; }
  .cr26-menu > li > ul > li > ul ul { padding-left: 12px; }
}
@media (min-width: 1100px) and (prefers-reduced-motion: no-preference) {
  .cr26-menu > li.is-open > ul { animation: cr26-pop .14s ease-out; }
  @keyframes cr26-pop { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
}

/* ---------- Drawer accordion ---------- */
.cr26-dmenu { display: flex; flex-direction: column; }
.cr26-dmenu ul { list-style: none; margin: 0; padding: 0; }
.cr26-dmenu li { display: flex; flex-wrap: wrap; align-items: stretch; margin: 0; border-bottom: 1px solid var(--cr26-rule-soft); }
.cr26-dmenu li li { border-bottom: 0; }
.cr26 .cr26-dmenu a { flex: 1 1 0; display: flex; align-items: center; min-width: 0; min-height: 48px; padding: 0; border-bottom: 0; font-size: 17px; font-weight: 600; color: var(--cr26-ink); }
.cr26-dmenu .cr26-sub-toggle { flex: 0 0 48px; width: 48px; min-height: 48px; margin: 0; }
.cr26-dmenu ul { flex: 1 0 100%; padding: 0 0 8px 14px; border-left: 2px solid var(--cr26-rule); margin-left: 4px; }
.cr26 .cr26-dmenu ul a { font-size: 15px; font-weight: 500; color: var(--cr26-text); }
.cr26-dmenu ul ul { padding-bottom: 0; }
.cr26 .cr26-dmenu ul ul a { font-size: 14px; }
.cr26-dmenu ul[hidden] { display: none; }

/* ---------- Footer menu ---------- */
.cr26-footer__col--menu { grid-column: span 2; }
.cr26-fmenu { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; list-style: none; margin: 0; padding: 0; }
.cr26 .cr26-fmenu a { display: flex; align-items: center; min-height: 44px; }

/* ---------- Offers block ---------- */
.cr26-offers { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.cr26-offers__h { font-size: 16px; font-weight: 700; line-height: 1.3; }
.cr26-offers__list { display: flex; flex-direction: column; gap: 10px; }
.cr26-ocard { display: flex; flex-direction: column; gap: 10px; min-width: 0; padding: 14px; background: var(--cr26-white); border: 1px solid var(--cr26-rule); border-radius: 12px; }
.cr26-ocard__top { display: flex; align-items: center; gap: 10px; }
.cr26-ocard__name { flex: 1 1 auto; min-width: 0; font-size: 15px; font-weight: 700; line-height: 1.25; overflow-wrap: anywhere; }
.cr26-ocard .cr26-ring { flex: 0 0 auto; width: 40px; height: 40px; font-size: 12px; }
.cr26-ocard .cr26-offer { font-size: 13px; }
.cr26-ocard__cta { display: flex; gap: 8px; margin-top: auto; }
.cr26-ocard__cta .cr26-btn { flex: 1 1 0; min-width: 0; padding: 0 10px; font-size: 14px; }
.cr26-offers .cr26-ontario { padding: 12px; font-size: 14px; }

/* Strip: horizontal row, scrolls sideways on narrow screens */
.cr26-offers--strip { margin: 32px 0; }
.cr26-offers--strip .cr26-offers__list { flex-direction: row; gap: 12px; margin: 0 calc(var(--cr26-gutter) * -1); padding: 0 var(--cr26-gutter) 6px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.cr26-offers--strip .cr26-offers__list::-webkit-scrollbar { display: none; }
.cr26-offers--strip .cr26-ocard { flex: 0 0 78%; max-width: 280px; scroll-snap-align: start; }
.cr26-offers--strip .cr26-offer { max-height: 4.4em; overflow: hidden; }
@media (min-width: 768px) {
  .cr26-offers--strip { margin: 44px 0; }
  .cr26-offers--strip .cr26-offers__h { font-size: 22px; font-family: var(--cr26-serif); }
  .cr26-offers--strip .cr26-ocard { flex-basis: 240px; max-width: none; }
}
@media (min-width: 1100px) {
  .cr26-offers--strip .cr26-offers__list { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 0; padding: 0; overflow: visible; }
  .cr26-offers--strip .cr26-ocard { flex: none; }
}
.cr26-offers-wrap { padding-top: 8px; }

/* =========================================================================
   LAYOUT POLISH (2026-11-01, after launch)
   ========================================================================= */

/* Logos: most LCB logos are square images, which looked tiny in wide boxes. Use a 4:3 box everywhere. */
.cr26-logo, .cr26 .cr26-logo { flex: 0 0 56px; width: 56px; height: 42px; }
.cr26-logo img, .cr26 .cr26-logo img { padding: 2px; }
@media (min-width: 768px) { .cr26-logo, .cr26 .cr26-logo { flex-basis: 64px; width: 64px; height: 48px; } }
.cr26 .cr26-logo--lg { flex-basis: 80px; width: 80px; height: 60px; }
.cr26 .cr26-bonus-body .logoImg { width: 64px; height: 48px; }
@media (min-width: 768px) { .cr26 .cr26-bonus-body .logoImg { width: 72px; height: 54px; } }

/* Homepage casino table: fixed columns so the headings line up with every row, even row heights,
   offers as text instead of different-sized pink boxes. */
@media (min-width: 768px) {
  .cr26-casinos__head, .cr26-casino { grid-template-columns: minmax(0, 1.3fr) 64px minmax(0, 1.2fr) 236px; column-gap: 24px; }
  .cr26-casinos--plain .cr26-casinos__head, .cr26-casinos--plain .cr26-casino { grid-template-columns: minmax(0, 1fr) 64px 236px; }
  .cr26-casino { min-height: 80px; padding-top: 12px; padding-bottom: 12px; }
  .cr26-casino__cta { width: 236px; justify-content: flex-end; }
  .cr26-casino__cta .cr26-btn { min-width: 110px; justify-content: center; }
}
.cr26-casino .cr26-offer { padding: 0; background: none; color: var(--cr26-accent-dark); font-size: 15px; line-height: 1.35; }
.cr26-casino .cr26-offer br + br { display: none; }
@media (min-width: 768px) { .cr26-casino__offer:empty::before { content: "\2014"; color: var(--cr26-line); } }
@media (max-width: 767px) { .cr26-casino .cr26-offer { padding: 8px 10px; border-radius: 8px; background: var(--cr26-tint); } }

/* Section headings: one consistent style (rule underneath) on every homepage section. */
.cr26-sechead { border-bottom: 2px solid var(--cr26-ink); padding-bottom: 8px; margin-bottom: 20px; }

/* Bonus pages: the tab bar fits its tabs instead of stretching into a long empty strip. */
@media (min-width: 768px) {
  .cr26-btabs { width: max-content; max-width: calc(100% - var(--cr26-gutter) * 2); margin-left: max(var(--cr26-gutter), calc((100% - var(--cr26-max)) / 2 + var(--cr26-gutter))); margin-right: auto; }
}
/* Bonus codes stay on one line. */
.cr26-bonus-body .bonus-code span, .cr26-bonus-body .bonus-code p { white-space: nowrap; overflow-wrap: normal; }
.cr26-bonus-body .bonus-code span { font-size: 12px; }

/* Reviews: the sidebar card (and the mobile sticky bar) already show the score, logo and Visit button,
   so the old in-text box keeps only its "accepted / not accepted" line. */
.cr26-review-body.cr26-hascard .casino-heading .rating-info { display: none; }
.cr26-review-body.cr26-hascard .casino-heading { padding-top: 12px; padding-bottom: 12px; }

/* Review and article heroes: less empty space under the byline. */
.cr26-rhero__in { padding-bottom: 20px; }
@media (min-width: 768px) { .cr26-rhero__in { padding-bottom: 24px; } }

/* Phones: the province pill took a whole row under the logo; the finder already asks for the province. */
@media (max-width: 767px) { .cr26 .cr26-pill { display: none; } }
/* EN/FR switch: both items the same size and baseline. */
.cr26 .cr26-lang__item { line-height: 1; text-decoration: none; }
.cr26 .cr26-lang__item:not(.is-active) { color: #C9CCD2; }
@media (min-width: 768px) { .cr26-casinos__head, .cr26-casino { padding-left: 20px; padding-right: 20px; } }
@media (min-width: 768px) { .cr26 .cr26-casinos .cr26-casino { padding-left: 20px; padding-right: 20px; } }
/* The WordPress Footer Menu has a "logo" item carrying the old logo image; the new footer has its own logo. */
.cr26 footer li.logo { display: none; }
/* A generic mobile tap-target rule made the FR link a 48px block; keep both language items identical. */
.cr26 .cr26-lang a.cr26-lang__item, .cr26 .cr26-lang span.cr26-lang__item { display: inline-flex; align-items: center; justify-content: center; min-height: 32px; height: 32px; min-width: 44px; padding: 0 8px; text-decoration: none; }
.cr26 .cr26-lang .cr26-lang__item { margin: 0; align-self: center; position: static; }
.cr26-lang { align-items: center; }

/* =========================================================================
   LOGOS: larger, no grey box (owner request 2026-11-01). Logos sit straight on the card
   at the largest size the row allows, with only the image's own margin around them.
   ========================================================================= */
.cr26 .cr26-logo, .cr26 .cr26-bonus-body .logoImg,
.cr26 :is(.cr26-pay-body, .cr26-article-body) .top-casinos-row > :nth-child(1),
.cr26 .cr26-pay-body #bankingTableUnique .logo-container {
  background: none; border-radius: 0; overflow: visible;
}
.cr26 .cr26-logo img, .cr26 .cr26-bonus-body img.casinoLogo,
.cr26 :is(.cr26-pay-body, .cr26-article-body) .top-casinos-row > :nth-child(1) img,
.cr26 .cr26-pay-body #bankingTableUnique .logo-container img { padding: 0; }

/* Homepage table, sidebar cards and offer cards */
.cr26 .cr26-logo { flex: 0 0 80px; width: 80px; height: 48px; }
@media (min-width: 768px) { .cr26 .cr26-logo { flex-basis: 104px; width: 104px; height: 56px; } }
.cr26 .cr26-logo--lg { flex-basis: 120px; width: 120px; height: 64px; }
.cr26 .cr26-ocard .cr26-logo { flex-basis: 72px; width: 72px; height: 44px; }
/* Monogram fallbacks keep a tile so they still read as a logo */
.cr26 .cr26-logo .cr26-mono { border-radius: 8px; }

/* Bonus cards */
.cr26 .cr26-bonus-body .oneBonusCasino { grid-template-columns: 96px minmax(0, 1fr); }
.cr26 .cr26-bonus-body .logoImg { width: 96px; height: 52px; }
@media (min-width: 768px) {
  .cr26 .cr26-bonus-body .oneBonusCasino { grid-template-columns: 128px minmax(120px, 1fr) minmax(0, 1.6fr) auto; }
  .cr26 .cr26-bonus-body .logoImg { width: 128px; height: 64px; }
}

/* Casino rows on guides and payment pages */
.cr26 :is(.cr26-pay-body, .cr26-article-body) .top-casinos:not(#bankingTableUnique) .top-casinos-row { grid-template-columns: 96px minmax(0, 1fr); }
.cr26 :is(.cr26-pay-body, .cr26-article-body) .top-casinos-row > :nth-child(1) { width: 96px; height: 52px; }
@media (min-width: 768px) {
  .cr26 :is(.cr26-pay-body, .cr26-article-body) .top-casinos:not(#bankingTableUnique) .top-casinos-row { grid-template-columns: 128px minmax(0, 1fr) auto; }
  .cr26 :is(.cr26-pay-body, .cr26-article-body) .top-casinos-row > :nth-child(1) { width: 128px; height: 64px; }
}

/* Payment-method tiles on the hub */
.cr26 .cr26-pay-body #bankingTableUnique .logo-container { width: 96px; height: 48px; }

/* Square LCB logo files (115x115) carry ~25-45px of empty space above and below wide artwork, but little at the
   sides. cr26.js tags square files with .cr26-sq; those fill a 16:9 box with object-fit: cover, which trims only
   the empty top and bottom. Non-square files keep object-fit: contain. */
/* !important: older logo rules set object-fit: contain with higher specificity. */
.cr26 img.cr26-sq { object-fit: cover !important; object-position: center; }
.cr26 .cr26-logo { flex: 0 0 80px; width: 80px; height: 45px; }
@media (min-width: 768px) { .cr26 .cr26-logo { flex-basis: 112px; width: 112px; height: 63px; } }
.cr26 .cr26-logo--lg { flex-basis: 128px; width: 128px; height: 72px; }
.cr26 .cr26-ocard .cr26-logo { flex-basis: 80px; width: 80px; height: 45px; }
.cr26 .cr26-bonus-body .logoImg { width: 96px; height: 54px; }
.cr26 :is(.cr26-pay-body, .cr26-article-body) .top-casinos-row > :nth-child(1) { width: 96px; height: 54px; }
@media (min-width: 768px) {
  .cr26 .cr26-bonus-body .logoImg { width: 128px; height: 72px; }
  .cr26 :is(.cr26-pay-body, .cr26-article-body) .top-casinos-row > :nth-child(1) { width: 128px; height: 72px; }
}
.cr26 .cr26-logo, .cr26 .cr26-bonus-body .logoImg, .cr26 :is(.cr26-pay-body, .cr26-article-body) .top-casinos-row > :nth-child(1) { overflow: hidden; }
/* 16:10 boxes: tall enough that the tallest square-file artwork seen (70px of 115, BitStarz) isn't trimmed. */
.cr26 .cr26-logo { flex: 0 0 80px; width: 80px; height: 50px; }
@media (min-width: 768px) { .cr26 .cr26-logo { flex-basis: 112px; width: 112px; height: 70px; } }
.cr26 .cr26-logo--lg { flex-basis: 128px; width: 128px; height: 80px; }
.cr26 .cr26-ocard .cr26-logo { flex-basis: 80px; width: 80px; height: 50px; }
.cr26 .cr26-bonus-body .logoImg, .cr26 :is(.cr26-pay-body, .cr26-article-body) .top-casinos-row > :nth-child(1) { width: 96px; height: 60px; }
@media (min-width: 768px) {
  .cr26 .cr26-bonus-body .logoImg, .cr26 :is(.cr26-pay-body, .cr26-article-body) .top-casinos-row > :nth-child(1) { width: 128px; height: 80px; }
}
.cr26-casinos__head span { white-space: nowrap; }
/* New reviews list: real casino logos, same no-box style as the other lists. */
.cr26 .cr26-rev .cr26-logo--rev { flex: 0 0 72px; width: 72px; height: 45px; }
.cr26 .cr26-rev a { align-items: center; }

/* Bonus codes on bonus pages: click (or Enter/Space) copies the code. */
.cr26 .cr26-bonus-body .bonus-code[data-cr26-copy] { position: relative; cursor: pointer; transition: background .15s, border-color .15s; }
.cr26 .cr26-bonus-body .bonus-code[data-cr26-copy]:hover { border-style: solid; background: #F9DCE0; }
.cr26 .cr26-bonus-body .bonus-code[data-cr26-copy]:focus-visible { outline: 2px solid var(--cr26-accent); outline-offset: 2px; }
.cr26 .cr26-bonus-body .bonus-code .cr26-copyhint { display: inline-flex; align-items: center; gap: 4px; padding-left: 8px; border-left: 1px solid rgba(200, 16, 46, .3); font-size: 12px; font-weight: 700; color: var(--cr26-accent); white-space: nowrap; }
.cr26 .cr26-bonus-body .bonus-code.is-copied { border-style: solid; border-color: #1F7A4A; background: #E6F4EC; }
.cr26 .cr26-bonus-body .bonus-code.is-copied .cr26-copyhint { color: #1F7A4A; border-left-color: rgba(31, 122, 74, .3); }

/* Copy icon in bonus code chips (replaces the "Copy" word). */
.cr26 .cr26-bonus-body .bonus-code .cr26-copyhint { padding-left: 8px; }
.cr26 .cr26-bonus-body .bonus-code .cr26-copyhint svg { display: block; }

/* Bonus terms: info button beside the offer, popover card with an arrow. */
.cr26-tc[hidden] { display: none !important; }
.cr26-tcw { position: relative; display: inline-flex; vertical-align: middle; margin-left: 10px; }
.cr26 .cr26-tcbtn { display: inline-flex; align-items: center; gap: 5px; min-height: 30px; padding: 4px 10px; border: 1px solid var(--cr26-rule); border-radius: 999px; background: var(--cr26-white); font: inherit; font-size: 12px; font-weight: 700; color: var(--cr26-muted); cursor: pointer; transition: border-color .15s, color .15s, background .15s; }
.cr26 .cr26-tcbtn:hover, .cr26 .cr26-tcbtn[aria-expanded="true"] { border-color: var(--cr26-accent); color: var(--cr26-accent-dark); background: var(--cr26-tint); }
.cr26 .cr26-tcbtn:focus-visible { outline: 2px solid var(--cr26-accent); outline-offset: 2px; }
.cr26-tcpop { position: absolute; z-index: 30; top: calc(100% + 10px); left: 50%; transform: translateX(-50%); width: min(320px, 86vw); padding: 14px 16px; border: 1px solid var(--cr26-rule); border-radius: 12px; background: var(--cr26-white); box-shadow: 0 16px 40px rgba(22, 24, 29, .18); text-align: left; animation: cr26-tcpop .14s ease-out; }
.cr26-tcpop[hidden] { display: none; }
.cr26-tcpop::before { content: ""; position: absolute; top: -7px; left: calc(50% - 7px); width: 12px; height: 12px; border-left: 1px solid var(--cr26-rule); border-top: 1px solid var(--cr26-rule); background: var(--cr26-white); transform: rotate(45deg); }
.cr26-tcpop.is-up { top: auto; bottom: calc(100% + 10px); }
.cr26-tcpop.is-up::before { top: auto; bottom: -7px; transform: rotate(225deg); }
.cr26-tcpop__h { display: block; margin-bottom: 6px; font-family: var(--cr26-sans, inherit); font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--cr26-accent-dark); }
.cr26-tcpop__b { max-height: 220px; overflow: auto; font-family: var(--cr26-sans, inherit); font-size: 13px; font-weight: 400; line-height: 1.55; color: var(--cr26-text); white-space: normal; }
.cr26-tcpop__b p, .cr26-tcpop__b div { margin: 0 0 6px; }
.cr26-tcpop__b ul, .cr26-tcpop__b ol { margin: 0 0 6px 18px; }
.cr26 .cr26-tcpop .cr26-tc__link { display: inline-block; margin-top: 4px; font-weight: 700; color: var(--cr26-accent); text-decoration: underline; }
@keyframes cr26-tcpop { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .cr26-tcpop { animation: none; } }
@media (max-width: 767px) { .cr26-tcw { margin-left: 6px; } .cr26-tcpop { left: 0; transform: none; } .cr26-tcpop::before { left: 18px; } }
/* The card holding an open terms popup sits above its neighbours (each card is its own stacking layer). */
.cr26 .cr26-bonus-body .oneBonusCasino { position: relative; }
.cr26 .cr26-bonus-body .oneBonusCasino:has(.cr26-tcpop:not([hidden])), .cr26 .cr26-bonus-body .oneBonusCasino:has(.cr26-tcw:hover) { z-index: 40; overflow: visible; }

/* =========================================================================
   BUTTON ICONS, sitewide (owner request 2026-11-01).
   Drawn with CSS masks so they follow the button's text colour, and added only where a button has no icon yet.
   ========================================================================= */
.cr26 {
  --cr26-i-ext: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17L17 7M9 7h8v8'/%3E%3C/svg%3E");
  --cr26-i-doc: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z'/%3E%3Cpath d='M14 3v5h5M9 13h6M9 17h4'/%3E%3C/svg%3E");
  --cr26-i-gift: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 12v8H4v-8M2 7h20v5H2zM12 22V7M12 7H8a2.5 2.5 0 1 1 0-5c3 0 4 5 4 5zM12 7h4a2.5 2.5 0 1 0 0-5c-3 0-4 5-4 5z'/%3E%3C/svg%3E");
  --cr26-i-play: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='black'%3E%3Cpath d='M8 5.5v13a1 1 0 0 0 1.5.86l10.5-6.5a1 1 0 0 0 0-1.72L9.5 4.64A1 1 0 0 0 8 5.5z'/%3E%3C/svg%3E");
  --cr26-i-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  --cr26-i-down2: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 7l6 6 6-6M6 13l6 6 6-6'/%3E%3C/svg%3E");
}
.cr26 :is(.cr26-btn, .playbtn > a, a.r-link, .more-bonuses button, .cr26-showall) { display: inline-flex; align-items: center; justify-content: center; gap: 7px; }
.cr26 :is(.cr26-btn, .playbtn > a, a.r-link, .more-bonuses button, .cr26-showall):not(:has(svg))::before,
.cr26 :is(.cr26-btn, .playbtn > a):not(:has(svg))::after {
  flex: 0 0 auto; width: 16px; height: 16px; background: currentColor;
  -webkit-mask: var(--cr26-icon) center / contain no-repeat; mask: var(--cr26-icon) center / contain no-repeat;
}
/* Visit / Play / Get bonus: arrow after the label (these open the casino in a new tab). */
.cr26 :is(.cr26-btn, .playbtn > a)[href*="/visit/"]:not(:has(svg))::after { content: ""; --cr26-icon: var(--cr26-i-ext); }
/* "Get bonus" also gets a gift before the label; "Play" gets a play triangle. */
.cr26 .cr26-bonus-body .playbtn > a:not(:has(svg))::before { content: ""; --cr26-icon: var(--cr26-i-gift); }
.cr26 :is(.cr26-pay-body, .cr26-article-body) .top-casinos-row .playbtn > a:not(:has(svg))::before { content: ""; --cr26-icon: var(--cr26-i-play); width: 13px; height: 13px; }
/* Read review / Review: document icon before the label. */
.cr26 :is(a.cr26-btn--ghost, a.r-link):not(:has(svg))::before { content: ""; --cr26-icon: var(--cr26-i-doc); }
/* Load more / load all / show all: chevrons. */
.cr26 .more-bonuses #ajax-more::before, .cr26 .cr26-showall[aria-expanded="false"]::before { content: ""; --cr26-icon: var(--cr26-i-down); }
.cr26 .more-bonuses #ajax-all::before { content: ""; --cr26-icon: var(--cr26-i-down2); }
.cr26 .cr26-showall[aria-expanded="true"]::before { content: ""; --cr26-icon: var(--cr26-i-down); transform: rotate(180deg); }
@media (max-width: 767px) { .cr26 :is(.cr26-btn, .playbtn > a, a.r-link)::before, .cr26 :is(.cr26-btn, .playbtn > a)::after { width: 15px; height: 15px; } }
/* Row "Play" buttons keep just the play triangle. */
.cr26 :is(.cr26-pay-body, .cr26-article-body) .top-casinos-row .playbtn > a::after { content: none; }
/* Popover is positioned by JS (fixed); the arrow follows the button via --cr26-ax. */
.cr26-tcpop::before { left: calc(var(--cr26-ax, 50%) - 7px) !important; }
.cr26-tcpop { z-index: 200; }

/* Sidebar / strip casino cards: the bonus gets more room and weight. */
.cr26 .cr26-ocard .cr26-offer { display: block; padding: 12px 14px; font-size: 16px; font-weight: 700; line-height: 1.35; }
.cr26 .cr26-ocard .cr26-offer :is(.up-to, small) { font-size: 13px; font-weight: 600; }
.cr26 .cr26-ocard .cr26-tcw { margin: 8px 0 0; display: flex; }
.cr26 .cr26-casino .cr26-tcw { margin: 6px 0 0; display: flex; }
/* Bonus tabs: more breathing room inside the bar, between the pills and around the bar. */
@media (min-width: 768px) {
  .cr26-btabs > .cr26-wrap { padding: 8px 10px; }
  .cr26 .cr26-btabs__row { gap: 8px; }
  .cr26-bhero__in { padding-bottom: 84px; }
  .cr26-btabs + * { margin-top: 12px; }
}

/* =========================================================================
   REVIEW BODY: old shortcode blocks, modernised (Gamblezen pass, 2026-11-01)
   ========================================================================= */
/* Casino details: line icons in a soft circle instead of emoji. */
.cr26-review-body .casino-details-table th { white-space: normal; }
.cr26-review-body .casino-details-table th > span:not(.cr26-dico) { vertical-align: middle; }
.cr26-review-body .cr26-dico { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; margin-right: 10px; border-radius: 50%; background: var(--cr26-tint); color: var(--cr26-accent); vertical-align: middle; flex: 0 0 auto; }
.cr26-review-body .casino-details-table th { display: flex; align-items: center; }
/* Provider logo cloud: tidy grid of small logos, two rows until expanded. */
.cr26-review-body td.cr26-logocloud { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; }
.cr26-review-body td.cr26-logocloud img { width: auto; height: 22px; max-width: 84px; object-fit: contain; filter: grayscale(1); opacity: .8; transition: filter .15s, opacity .15s; }
.cr26-review-body td.cr26-logocloud a:hover img, .cr26-review-body td.cr26-logocloud img:hover { filter: none; opacity: 1; }
.cr26-js .cr26-review-body td.cr26-logocloud.is-capped:not(.is-open) .cr26-extra { display: none !important; }
.cr26 .cr26-showall--sm { min-height: 32px; padding: 4px 12px; font-size: 13px; }

/* Bonus boxes: card look with the offer up front; terms open in the popover. */
.cr26-review-body .cr26-bbox { position: relative; }
.cr26-review-body .cr26-bbox:has(.cr26-tcpop:not([hidden])) { z-index: 40; }
.cr26-review-body .cr26-bbox .details-close[hidden] { display: none !important; }
.cr26-review-body .cr26-bbox .bonus-box-footer { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.cr26-review-body .cr26-bbox .bonus-box-footer .wr { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 999px; background: var(--cr26-panel); font-size: 13px; }
.cr26-review-body .cr26-bbox .bonus-box-footer .wr p { margin: 0; }
.cr26-review-body .cr26-bbox .bonus-box-footer .wr p:first-child { color: var(--cr26-muted); font-weight: 600; }
.cr26-review-body .cr26-bbox .bonus-box-footer .wr p:last-child { font-weight: 700; color: var(--cr26-ink); }
.cr26-review-body .cr26-bbox .cr26-tcw { margin-left: 0; }
.cr26-review-body .cr26-bbox .bonus-buttons > a { display: flex; text-decoration: none; }
.cr26-review-body .cr26-bbox .playBtn { display: inline-flex; align-items: center; justify-content: center; gap: 7px; width: 100%; }
.cr26-review-body .cr26-bbox .playBtn::after { content: ""; width: 16px; height: 16px; background: currentColor; -webkit-mask: var(--cr26-i-ext) center / contain no-repeat; mask: var(--cr26-i-ext) center / contain no-repeat; }

/* Banking table: chips instead of yes/no images; first 8 rows until expanded. */
.cr26-review-body .cr26-yn { display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; }
.cr26-review-body .cr26-yn--yes { background: #E6F4EC; color: #1F7A4A; }
.cr26-review-body .cr26-yn--no { background: var(--cr26-panel); color: var(--cr26-line); }
.cr26-review-body .banking-options td:first-child a { display: inline-flex; align-items: center; gap: 10px; font-weight: 600; }
.cr26-review-body .banking-options td:first-child img { width: 40px; height: 26px; object-fit: contain; }
.cr26-review-body .banking-options th:not(:first-child), .cr26-review-body .banking-options td:not(:first-child) { text-align: center; }
.cr26-js .cr26-review-body .banking-options.is-capped:not(.is-open) tr.cr26-extra { display: none !important; }
.cr26-review-body .banking-options + .cr26-showall { margin: 4px 0 24px; }
/* Logo cloud lives in a wrapper div (the td stays a table cell). */
.cr26-review-body td.cr26-logocloud { display: table-cell; }
.cr26-review-body div.cr26-logocloud { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; }
.cr26-review-body div.cr26-logocloud img { width: auto; height: 22px; max-width: 84px; object-fit: contain; filter: grayscale(1); opacity: .8; transition: filter .15s, opacity .15s; }
.cr26-review-body div.cr26-logocloud a:hover img, .cr26-review-body div.cr26-logocloud img:hover { filter: none; opacity: 1; }
.cr26-js .cr26-review-body div.cr26-logocloud.is-capped:not(.is-open) .cr26-extra { display: none !important; }
/* "Show more" buttons in reviews: secondary button style. */
.cr26 .cr26-review-body .cr26-showall, .cr26 .cr26-review .cr26-showall { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; margin-top: 10px; padding: 6px 14px; border: 1px solid var(--cr26-rule); border-radius: 999px; background: var(--cr26-white); color: var(--cr26-ink); font: inherit; font-size: 14px; font-weight: 700; cursor: pointer; box-shadow: none; }
.cr26 .cr26-review-body .cr26-showall:hover, .cr26 .cr26-review .cr26-showall:hover { border-color: var(--cr26-accent); color: var(--cr26-accent-dark); background: var(--cr26-tint); }
/* The old "Read Details" text now lives in the terms popover; an earlier rule forced it visible. */
.cr26 .cr26-review-body .cr26-bbox .casino-details.cr26-tc[hidden] { display: none !important; }
/* Bonus boxes: equal heights, Visit button pinned to the bottom of each card. */
.cr26-review-body .casinoBonuses { align-items: stretch; }
.cr26-review-body .cr26-bbox { display: flex; flex-direction: column; }
.cr26-review-body .cr26-bbox .casinoReview-bonus { display: flex; flex-direction: column; flex: 1 1 auto; }
.cr26-review-body .cr26-bbox .bonus-buttons { margin-top: auto; padding-top: 12px; }

/* In this section (sub-page list) and the A-Z review index. */
.cr26-secindex, .cr26-azindex { margin: 40px 0 8px; padding-top: 20px; border-top: 2px solid var(--cr26-ink); }
.cr26-secindex h2, .cr26-azindex h2 { margin: 0 0 14px; font-family: var(--cr26-serif); font-size: 24px; font-weight: 700; }
.cr26-secindex ul { display: grid; grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 8px; margin: 0; padding: 0; list-style: none; }
.cr26 .cr26-secindex a { display: flex; align-items: center; min-height: 44px; padding: 8px 12px; border: 1px solid var(--cr26-rule); border-radius: 10px; font-size: 15px; font-weight: 600; color: var(--cr26-ink); text-decoration: none; transition: border-color .15s, color .15s; }
.cr26 .cr26-secindex a:hover { border-color: var(--cr26-accent); color: var(--cr26-accent-dark); }
.cr26-azindex__jump { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 18px; }
.cr26 .cr26-azindex__jump a { display: inline-flex; align-items: center; justify-content: center; min-width: 36px; min-height: 36px; border: 1px solid var(--cr26-rule); border-radius: 8px; font-weight: 700; color: var(--cr26-ink); text-decoration: none; }
.cr26 .cr26-azindex__jump a:hover { border-color: var(--cr26-accent); color: var(--cr26-accent-dark); }
.cr26-azindex__group { margin-bottom: 18px; scroll-margin-top: 140px; }
.cr26-azindex__group h3 { margin: 0 0 8px; font-size: 18px; font-weight: 700; color: var(--cr26-accent-dark); }
.cr26-azindex__group ul { columns: 4 180px; column-gap: 24px; margin: 0; padding: 0; list-style: none; }
.cr26-azindex__group li { break-inside: avoid; padding: 3px 0; font-size: 15px; }
.cr26 .cr26-azindex__group a { color: var(--cr26-ink); text-decoration: none; }
.cr26 .cr26-azindex__group a:hover { color: var(--cr26-accent); text-decoration: underline; }
