/* ============================================
   BBB MODERNISED STYLESHEET — v2
   Based on approved example.html direction
   ============================================ */

/* --- Reset & Base --- */
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 100px; -webkit-font-smoothing: antialiased; }
body { font-family: Arial, Helvetica, sans-serif; font-size: 16px; line-height: 1.7; color: #52636b; background: #f2f4f6; min-width: 320px; }
ul, ol { list-style: none; }
a { text-decoration: none; color: inherit; outline: 0; }
a:focus-visible { outline: 2px solid #1565c0; outline-offset: 2px; border-radius: 4px; }
.cta-button:focus-visible, .offer-compact-btn:focus-visible { outline-color: #252a31; }
img { max-width: 100%; display: block; border: 0; }
p a { color: #1565c0; }
p a:hover { text-decoration: underline; }
p strong { color: #010101; }

/* --- Header --- */
.header-bg { position: sticky; top: 0; z-index: 100; background: #252A31; transition: box-shadow .3s; }
.header-bg.scrolled { box-shadow: 0 4px 24px rgba(0,0,0,0.25); }
.header-rds { display: flex; flex-flow: row wrap; justify-content: space-between; align-items: center; max-width: 1320px; margin: 0 auto; padding: 0 16px; font: 600 14px/1 Arial, Helvetica, sans-serif; color: #fff; }
.header-rds > .branding { flex: 0 0 151px; max-width: 151px; width: 100%; height: 40px; margin: 12px 0; background: url(../img/sitelogo-small.png) no-repeat center; background-size: contain; }
.redesign-navigation a:focus-visible,
.redesign-navigation span[role="button"]:focus-visible { outline: 2px solid #fe9842; outline-offset: 2px; border-radius: 4px; }

/* Mobile nav */
@media (max-width: 1023px) {
    .redesign-navigation { position: absolute; width: 100%; top: 100%; left: 0; border-radius: 0 0 10px 10px; transform: translateY(-8px); opacity: 0; pointer-events: none; visibility: hidden; background: #252a31; z-index: 10; transition: transform .2s ease, opacity .2s, visibility 0s .2s; box-shadow: 0 16px 40px rgba(0,0,0,0.3); }
    .redesign-navigation.redesign-nav-visible { transform: translateY(0); opacity: 1; pointer-events: all; visibility: visible; transition: transform .2s ease, opacity .2s, visibility 0s 0s; }
    .redesign-navigation.redesign-nav-visible > ul { padding-bottom: 15px; }
    .redesign-navigation > ul > li { width: 100%; text-align: left; font-weight: 500; font-size: 16px; }
    .redesign-navigation > ul > li > ul { display: block; max-height: 500px; padding: 6px 0 14px 35px; overflow: hidden; transition: max-height .2s, padding .2s; background: rgba(255,255,255,0.03); }
    .redesign-navigation > ul > li > ul.two-columns { columns: 2; }
    .redesign-navigation > ul > li:not(.is-expanded) > ul { max-height: 0; padding-top: 0; padding-bottom: 0; }
    .redesign-navigation > ul > li.is-expanded { background: #2d333b; }
    .redesign-navigation > ul > li > ul a { color: rgba(255,255,255,0.8); font-weight: 400; font-size: 14px; transition: color .15s; }
    .redesign-navigation > ul > li > ul a:hover { color: #fe9842; }
    .redesign-navigation > ul > li > ul li + li { margin-top: 12px; }
    .redesign-navigation > ul > li > a,
    .redesign-navigation > ul > li > span { display: block; position: relative; padding: 14px 35px; color: #fff; background: none !important; cursor: pointer; }
    .redesign-navigation > ul > li > a:hover { color: #f89021; }
    .redesign-navigation > ul > li > a:before,
    .redesign-navigation > ul > li > span:before { content: none; }
    .redesign-navigation .dd-trigger { position: absolute; display: block !important; width: 50px; height: 50px; top: 50%; right: 0; margin-top: -25px; }
    .redesign-navigation .dd-trigger:before { content: ''; position: absolute; width: 6px; height: 6px; top: 50%; left: 50%; margin: -5px 0 0 -3px; border-top: 1.5px solid rgba(255,255,255,0.5); border-right: 1.5px solid rgba(255,255,255,0.5); transform: rotate(135deg); transition: transform .2s, margin-top .2s; }
    .redesign-navigation > ul > .is-expanded .dd-trigger:before { margin-top: -3px; transform: rotate(-45deg); border-color: #fe9842; }
    .redesign-nav-btn { position: relative; width: 40px; height: 40px; cursor: pointer; }
    .redesign-nav-btn.redesign-nav-visible span { background: transparent; }
    .redesign-nav-btn.redesign-nav-visible span:before { bottom: 0; margin: 0; transform: rotate(45deg); }
    .redesign-nav-btn.redesign-nav-visible span:after { top: 0; margin: 0; transform: rotate(-45deg); }
    .redesign-nav-btn span { position: absolute; width: 22px; height: 2px; top: 50%; left: 50%; margin: -1px 0 0 -11px; border-radius: 2px; background: #fff; transition: background .15s; }
    .redesign-nav-btn span:before { bottom: 100%; margin-bottom: 5px; }
    .redesign-nav-btn span:after { top: 100%; margin-top: 5px; }
    .redesign-nav-btn span:before,
    .redesign-nav-btn span:after { content: ''; position: absolute; width: 100%; height: 100%; left: 0; background: #fff; border-radius: 2px; transition: top .15s, bottom .15s, margin .15s, transform .15s; }
}

/* Desktop nav */
@media (min-width: 1024px) {
    .header-rds { justify-content: flex-start; column-gap: 30px; padding: 0 30px; }
    .redesign-navigation > ul { display: flex; column-gap: 4px; }
    .redesign-navigation > ul > li { position: relative; padding: 20px 16px; border-radius: 6px 6px 0 0; transition: background .15s; }
    .redesign-navigation > ul > li > ul { position: absolute; display: block; min-width: 200px; top: 100%; left: -10px; padding: 8px; border-radius: 0 8px 8px 8px; transform: translateY(6px); opacity: 0; pointer-events: none; background: #2d333b; transition: transform .2s ease, opacity .15s; box-shadow: 0 12px 36px rgba(0,0,0,0.3); }
    .redesign-navigation > ul > li > ul li + li { margin-top: 2px; }
    .redesign-navigation > ul > li > ul a { display: block; padding: 10px 14px; border-radius: 5px; font-weight: 400; font-size: 14px; color: rgba(255,255,255,0.85); transition: color .12s, background .12s; }
    .redesign-navigation > ul > li > ul a:hover { color: #fff; background: rgba(255,255,255,0.06); }
    .redesign-navigation > ul > li:hover > ul,
    .redesign-navigation > ul > li:focus-within > ul { transform: translateY(0); opacity: 1; pointer-events: all; }
    .redesign-navigation > ul > .has-dropdown { padding-right: 32px; }
    .redesign-navigation > ul > .has-dropdown:after { content: ''; position: absolute; width: 5px; height: 5px; top: 24px; right: 14px; border-top: 1.5px solid rgba(255,255,255,0.4); border-right: 1.5px solid rgba(255,255,255,0.4); transform: rotate(135deg); transition: border-color .15s, transform .15s; }
    .redesign-navigation > ul > li:hover:after,
    .redesign-navigation > ul > li:focus-within:after { border-color: #fe9842; transform: rotate(315deg); }
    .redesign-navigation > ul > li:hover,
    .redesign-navigation > ul > li:focus-within { background: rgba(255,255,255,0.06); }
    .redesign-navigation > ul > li > a,
    .redesign-navigation > ul > li > span { display: block; font-size: 14px; font-weight: 600; color: #fff; transition: color .15s; background: none !important; cursor: pointer; }
    .redesign-navigation > ul > li > a:hover,
    .redesign-navigation > ul > li > span:hover { color: #f89021; }
    .redesign-nav-btn { display: none; }
}

/* --- Hero / Intro --- */
.hero2 { position: relative; padding: 52px 0 44px; overflow: hidden; }
.hero2::before { content: ''; position: absolute; inset: 0; background: #456c94; }
.hero2-inner { position: relative; z-index: 1; max-width: 1100px; margin: 0 auto; padding: 0 16px; }
.hero2-heading { font: 700 34px/1.15 Arial, Helvetica, sans-serif; letter-spacing: -0.3px; color: #fff; max-width: 700px; margin-bottom: 16px; }
.hero2-heading em { font-style: normal; color: #ffb866; }
.hero2-text { font: 400 16px/1.8 Arial, Helvetica, sans-serif; color: #fff; max-width: 660px; margin-bottom: 24px; }
.hero2-text a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.hero2-meta { display: flex; flex-wrap: wrap; }
.hero2-meta span { font: 400 14px/1 Arial, Helvetica, sans-serif; color: rgba(255,255,255,0.85); }
.hero2-meta span + span { padding-left: 12px; margin-left: 12px; border-left: 1px solid rgba(255,255,255,0.4); }
.hero2-meta span strong { color: #fff; }
@media (max-width: 767px) { .hero2 { padding: 36px 0 32px; } .hero2-heading { font-size: 28px; } .hero2-meta { flex-direction: column; gap: 6px; } .hero2-meta span + span { padding-left: 0; margin-left: 0; border-left: 0; } }
@media (min-width: 768px) { .hero2-inner { padding: 0 24px; } .hero2-heading { font-size: clamp(30px, 4vw, 44px); } .hero2-text { font-size: 16px; } }
@media (min-width: 1024px) {
    .home .hero2::before,
    .page-id-24 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-stadium.jpg) no-repeat right center / cover, #456c94; }
    .page-id-54 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-football.jpg) no-repeat right center / cover, #456c94; }
    .page-id-57 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-horse-racing.jpg) no-repeat right center / cover, #456c94; }
    .page-id-81 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-tennis.jpg) no-repeat right center / cover, #456c94; }
    .page-id-52 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-cricket.jpg) no-repeat right center / cover, #456c94; }
    .page-id-76 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-rugby.jpg) no-repeat right center / cover, #456c94; }
    .page-id-47 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-casino.jpg) no-repeat right center / cover, #456c94; }
    .page-id-44 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-bingo.jpg) no-repeat right center / cover, #456c94; }
    .page-id-69 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-poker.jpg) no-repeat right center / cover, #456c94; }
    .page-id-66 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-casinos-paypal.jpg) no-repeat right center / cover, #456c94; }
    .page-id-78 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-skrill.jpg) no-repeat right center / cover, #456c94; }
    .page-id-67 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-casinos-paysafecard.jpg) no-repeat right center / cover, #456c94; }
    .page-id-29975 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-apple-pay.jpg) no-repeat right center / cover, #456c94; }
    .page-id-28863 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-free-spins-no-wagering.jpg) no-repeat right center / cover, #456c94; }
    .page-id-28913 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-casinos-paypal.jpg) no-repeat right center / cover, #456c94; }
    .page-id-30174 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-casinos-apple-pay.jpg) no-repeat right center / cover, #456c94; }
    .page-id-30188 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-casinos-skrill.jpg) no-repeat right center / cover, #456c94; }
    .page-id-28948 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-casinos-paysafecard.jpg) no-repeat right center / cover, #456c94; }

    /* News hub - uses .news-hero, same 3-layer ATF stack as the homepage */
    .page-id-28286 .news-hero::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-latest-v2.jpg) no-repeat right center / cover, #456c94; }
    .page-id-29742 .news-hero::before { background: linear-gradient(90deg, #456c94 0%, #456c94 42%, rgba(69,108,148,0.88) 60%, rgba(73,86,103,0.3) 78%, rgba(61,79,95,0) 92%), url(../img/hero-predictions-v2.jpg) no-repeat right center / cover, #456c94; }
    .page-id-29744 .news-hero::before { background: linear-gradient(90deg, #456c94 0%, #456c94 42%, rgba(69,108,148,0.88) 60%, rgba(73,86,103,0.3) 78%, rgba(61,79,95,0) 92%), url(../img/hero-guides-v2.jpg) no-repeat right center / cover, #456c94; }
    /* ALL THREE HUBS NOW SIZE THEIR ART WITH `cover`, i.e. the shorthand's own
       value, which is why there is no size override here any more.
       /predictions/ and /guides/ carried one - `auto, auto 100%, auto` - so
       their v1 art would show whole rather than be cropped top and bottom. The
       -v2 art Mark supplied on 2026-09-16 does not want that: it is near-black
       to its edges with the subject in the right half, so height-sizing left it
       only ~440px wide on a ~1440px band and put a hard vertical seam where the
       dark JPEG met the mid-blue base gradient. `cover` fills the band, the
       scrim fades into the art instead of butting against it, and the subject
       still clears the 700px copy block. Checked at 1024, 1440 and 1920.
       COVER ALONE WAS NOT ENOUGH, THOUGH. It pulls the subject left as the
       viewport narrows, and at 1024-1100 the art reached the copy: white body
       text measured 3.28:1 on /predictions/ at 1024 and the /guides/ h1 2.74:1
       at 1060, against a 4.5 / 3.0 floor - a regression the old height-sizing
       did not have. So these two rules also hold their scrim further right,
       42/60/78/92 instead of 30/46/64/82. Worst case is now 4.63:1, and above
       1100px nothing changes visually because the copy ends before the fade.
       /latest/ keeps the original stops: its art is brighter and fills the
       frame, and it measured 5.49:1 at every width without help.
       If art with pale or busy edges is swapped back in, the height-sizing rule
       is in git - it is a property of the picture, not of the page. */
    /* Operator reviews - generic betting ATF */
    .page-id-30 .hero2::before,
    .page-id-31 .hero2::before,
    .page-id-32 .hero2::before,
    .page-id-34 .hero2::before,
    .page-id-35 .hero2::before,
    .page-id-36 .hero2::before,
    .page-id-37 .hero2::before,
    .page-id-38 .hero2::before,
    .page-id-39 .hero2::before,
    .page-id-40 .hero2::before,
    .page-id-41 .hero2::before,
    .page-id-42 .hero2::before,
    .page-id-43 .hero2::before,
    .page-id-45 .hero2::before,
    .page-id-46 .hero2::before,
    .page-id-48 .hero2::before,
    .page-id-50 .hero2::before,
    .page-id-51 .hero2::before,
    .page-id-53 .hero2::before,
    .page-id-55 .hero2::before,
    .page-id-58 .hero2::before,
    .page-id-59 .hero2::before,
    .page-id-60 .hero2::before,
    .page-id-61 .hero2::before,
    .page-id-62 .hero2::before,
    .page-id-63 .hero2::before,
    .page-id-64 .hero2::before,
    .page-id-68 .hero2::before,
    .page-id-70 .hero2::before,
    .page-id-72 .hero2::before,
    .page-id-73 .hero2::before,
    .page-id-74 .hero2::before,
    .page-id-79 .hero2::before,
    .page-id-80 .hero2::before,
    .page-id-84 .hero2::before,
    .page-id-85 .hero2::before,
    .page-id-86 .hero2::before,
    .page-id-87 .hero2::before,
    .page-id-28451 .hero2::before,
    .page-id-28897 .hero2::before,
    .page-id-28934 .hero2::before,
    .page-id-29010 .hero2::before,
    .page-id-29030 .hero2::before,
    .page-id-29043 .hero2::before,
    .page-id-29068 .hero2::before,
    .page-id-29389 .hero2::before,
    .page-id-29538 .hero2::before,
    .page-id-29576 .hero2::before,
    .page-id-29718 .hero2::before,
    .page-id-29781 .hero2::before,
    .page-id-29883 .hero2::before,
    .page-id-29135 .hero2::before { background: linear-gradient(90deg, #456c94 0%, #456c94 30%, rgba(69,108,148,0.88) 46%, rgba(73,86,103,0.3) 64%, rgba(61,79,95,0) 82%), url(../img/hero-betting-bonuses-review.jpg) no-repeat right center / 70%, #456c94; }
}

/* --- Operator Table Section --- */
.operators-section { background: #fff; padding: 28px 0 32px; }
.operators-inner { max-width: 1100px; margin: 0 auto; padding: 0 16px; }
.operators-heading { font: 700 26px/1.2 Arial, Helvetica, sans-serif; letter-spacing: -0.2px; color: #456c94; text-align: center; margin-bottom: 20px; }

/* Operator Row */
.operator-row { background: #fff; border: 1px solid #d7d8d9; border-radius: 4px; margin-bottom: 10px; overflow: hidden; }
.operator-row:hover { border-color: #b8c0cc; }

.op-top { display: flex; align-items: center; padding: 14px 0 14px 14px; gap: 14px; }

.op-rank { width: 4%; text-align: center; flex-shrink: 0; }
.rank-num { font: 800 16px/1 Arial, Helvetica, sans-serif; color: #586476; }

.op-brand { width: 13%; display: flex; flex-direction: column; align-items: center; gap: 4px; flex-shrink: 0; }
.op-logo { max-width: 100%; height: auto; object-fit: contain; }
.op-rating { font: 700 13px/1 Arial, Helvetica, sans-serif; color: #586476; }
.op-rating::before { content: '\2605'; color: #f5a623; margin-right: 3px; }

.op-bonus-block { width: 18%; padding: 12px 10px 14px; text-align: center; border-right: 1px solid #e3e7ec; flex-shrink: 0; }
.bonus-amount { font: 900 44px/1.15 Arial, Helvetica, sans-serif; color: #242628; }
.bonus-label { font: 400 14px/1.3 Arial, sans-serif; color: #586476; margin-top: 4px; }

.op-highlights-block { width: 32%; padding: 8px 14px; flex-shrink: 0; }
.highlights-label { font: 600 12px/1 Arial, Helvetica, sans-serif; color: #7a8290; margin-bottom: 8px; }
.op-highlights span { display: block; font-size: 14px; color: #555; line-height: 1.7; padding-left: 14px; position: relative; }
.op-highlights span::before { content: ''; position: absolute; left: 0; top: 10px; width: 5px; height: 5px; background: #456c94; }

.op-cta-col { width: 22%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 14px; flex-shrink: 0; padding: 14px; }
.cta-button { display: block; padding: 14px 0; width: 100%; font: 700 17px/1 Arial, Helvetica, sans-serif; color: #2A2A2A; background: #fe9842; border-radius: 4px; text-align: center; transition: background 0.15s; text-decoration: none; }
.cta-button:hover { background: #ffa457; }
.op-code-link { font: 600 13px/1 Arial, Helvetica, sans-serif; color: #1565c0; text-decoration: underline; padding: 10px 0; margin: -10px 0; }
.op-code-link:hover { text-decoration: underline; color: #0d47a1; }
.skip-link { position: absolute; left: 8px; top: -100px; z-index: 10000; background: #fff; color: #1565c0; font: 600 15px/1 Arial, Helvetica, sans-serif; padding: 12px 16px; border-radius: 4px; text-decoration: underline; }
.skip-link:focus { top: 8px; }
#main-content:focus { outline: none; }

/* T&Cs row — separate line below */
.op-terms { font: normal 12px/1.4 Arial, sans-serif; color: #5f6b7d; padding: 8px 14px; background: #f7f9fb; border-top: 1px solid #e3e7ec; }
.op-terms a { color: #1565c0; text-decoration: underline; }

.operators-footnote { font: 600 12px/1 Arial, Helvetica, sans-serif; color: #5f6b7d; text-align: center; margin-top: 14px; letter-spacing: 1px; }

/* Operator table mobile */
@media (max-width: 767px) {
    .op-top { flex-wrap: wrap; padding: 0; gap: 0; }
    .op-rank { width: 30px; padding: 10px 0; }
    .op-brand { width: auto; flex: 1; align-items: center; justify-content: center; padding: 14px; gap: 6px; }
    .op-logo { width: 140px; height: 56px; margin: 0 auto; }
    .op-rating { font: 700 12px/1 Arial, Helvetica, sans-serif; color: #586476; }
    .op-bonus-block { width: auto; margin: 0 14px; padding: 14px; text-align: center; border-right: 0; }
    .bonus-amount { font-size: 36px; }
    .bonus-label { font-size: 15px; }
    .op-highlights-block { width: 100%; padding: 10px 14px; text-align: center; }
    .op-highlights span { display: inline-block; padding-left: 0; font-size: 14px; position: static; }
    .op-highlights span::before { position: static; display: inline-block; width: 5px; height: 5px; margin: 0 8px 0 0; vertical-align: middle; }
    .op-highlights span + span { margin-left: 10px; }
    .op-highlights span + span::before { margin-left: 0; }
    .op-cta-col { width: 100%; padding: 10px 14px 14px; }
    .cta-button { width: 100%; padding: 15px; font-size: 17px; }
    .op-terms { padding: 8px 14px; }
}
@media (min-width: 768px) {
    .operators-inner { padding: 0 24px; }
    .operators-heading { font-size: 28px; }
    .bonus-amount { font-size: 38px; }
}
@media (min-width: 1024px) {
    .operators-section { padding: 32px 0 36px; }
    .operators-heading { font-size: 30px; }
    .bonus-amount { font-size: 44px; }
}

/* --- Operator Review Offers Table --- */
.review-offers { max-width: 1100px; margin: 0 auto; padding: 32px 16px 0; }
.review-offers-heading { font: 700 26px/1.2 Arial, Helvetica, sans-serif; color: #456c94; text-align: center; margin-bottom: 20px; }
.review-offer-row { background: #fff; border: 1px solid #d7d8d9; border-radius: 4px; margin-bottom: 10px; overflow: hidden; }
.review-offer-row:hover { border-color: #b8c0cc; }
.ro-top { display: flex; align-items: center; padding: 14px 14px 14px 24px; gap: 18px; }
.ro-cta-col { width: 26%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; flex-shrink: 0; padding: 14px 20px; }
.ro-brand { width: 13%; display: flex; flex-direction: column; align-items: center; gap: 6px; flex-shrink: 0; }
.ro-logo { max-width: 100%; height: auto; object-fit: contain; }
.ro-product-tag { display: inline-block; padding: 3px 10px; font: 700 10px/1 Arial, Helvetica, sans-serif; letter-spacing: 0.8px; text-transform: uppercase; color: #fff; border-radius: 3px; }
.review-offer-row[data-product="sports"] .ro-product-tag { background: #2e8b57; }
.review-offer-row[data-product="casino"] .ro-product-tag { background: #9b59b6; }
.review-offer-row[data-product="bingo"] .ro-product-tag { background: #e74c8b; }
.review-offer-row[data-product="poker"] .ro-product-tag { background: #2980b9; }
.ro-rating { font: 700 12px/1 Arial, Helvetica, sans-serif; color: #586476; }
.ro-rating::before { content: '\2605'; color: #f5a623; margin-right: 3px; }
.ro-bonus-block { width: 18%; padding: 12px 10px 14px; text-align: center; border-right: 1px solid #e3e7ec; flex-shrink: 0; }
.ro-bonus-amount { font: 900 36px/1.15 Arial, Helvetica, sans-serif; color: #242628; }
.ro-bonus-label { font: 400 13px/1.3 Arial, sans-serif; color: #586476; margin-top: 4px; }
.ro-highlights-block { width: 32%; padding: 8px 14px; flex-shrink: 0; }
.ro-highlights-label { font: 600 12px/1 Arial, Helvetica, sans-serif; color: #7a8290; margin-bottom: 8px; }
.ro-highlights span { display: block; font-size: 14px; color: #555; line-height: 1.7; padding-left: 14px; position: relative; }
.ro-highlights span::before { content: ''; position: absolute; left: 0; top: 10px; width: 5px; height: 5px; background: #456c94; }
.ro-terms { font: normal 12px/1.4 Arial, sans-serif; color: #5f6b7d; padding: 8px 14px; background: #f7f9fb; border-top: 1px solid #e3e7ec; }
.ro-terms a { color: #1565c0; text-decoration: underline; }
@media (max-width: 767px) {
    .ro-top { flex-wrap: wrap; padding: 0; gap: 0; }
    .ro-brand { width: auto; flex: 1; align-items: center; justify-content: center; padding: 14px; gap: 6px; }
    .ro-logo { width: 140px; height: 56px; margin: 0 auto; }
    .ro-bonus-block { width: auto; margin: 0 14px; padding: 14px; text-align: center; border-right: 0; }
    .ro-bonus-amount { font-size: 36px; }
    .ro-bonus-label { font-size: 15px; }
    .ro-highlights-block { width: 100%; padding: 10px 14px; text-align: center; }
    .ro-highlights span { display: inline; padding-left: 0; font-size: 14px; position: static; }
    .ro-highlights span::before { position: static; display: inline-block; width: 5px; height: 5px; margin: 0 8px 0 0; vertical-align: middle; }
    .ro-highlights span + span { margin-left: 6px; }
    .ro-highlights span + span::before { margin-left: 6px; }
    .ro-cta-col { width: 100%; padding: 10px 14px 14px; }
    .ro-cta-col .cta-button { width: 100%; padding: 15px; font-size: 17px; }
    .ro-terms { padding: 8px 14px; }
}
@media (min-width: 768px) {
    .review-offers { padding: 32px 24px 0; }
    .ro-bonus-amount { font-size: 38px; }
}
@media (min-width: 1024px) {
    .ro-bonus-amount { font-size: 40px; }
}

/* --- Quick Nav Bar --- */
.navi-fullw { display: none; padding: 20px 16px; font: 700 14px/1.4 Arial, Helvetica, sans-serif; border-bottom: 1px solid #eef0f2; max-width: 1100px; margin: 0 auto; }
@media (min-width: 768px) { .navi-fullw { padding: 20px 24px; } }
.navi-fullw > .title { display: inline-block; padding: 8px 0; font: 700 14px/1 Arial, Helvetica, sans-serif; color: #252a31; }
.navi-fullw > .txt { display: flex; flex-wrap: wrap; padding: 8px 0; margin-left: -13px; margin-right: -12px; clip-path: inset(-6px -6px -6px 13px); }
.navi-fullw > .txt a { display: inline-block; padding: 4px 0; font: 500 14px/1 Arial, Helvetica, sans-serif; color: #1565c0; text-decoration: underline; text-underline-offset: 3px; transition: color .15s; }
.navi-fullw > .txt a { margin-right: 12px; padding-left: 12px; border-left: 1px solid #d7d8d9; }
.navi-fullw > .txt a:hover { color: #f89021; }
@media (min-width: 600px) { .navi-fullw { display: block; padding: 20px 16px; } }
@media (min-width: 768px) { .navi-fullw { padding: 20px 24px; } }

/* --- Content Area --- */
.content-area { max-width: 1100px; margin: 0 auto; padding: 20px 16px 40px; background: #fff; }
@media (min-width: 768px) { .content-area { padding: 24px 24px 40px; } }

/* --- Headings --- */
.content-area h2 { font: 700 26px/1.2 Arial, Helvetica, sans-serif; color: #456c94; margin: 32px 0 10px; padding-bottom: 10px; border-bottom: 2px solid #eff4f9; }
.content-area h3 { font: 600 20px/1.3 Arial, Helvetica, sans-serif; color: #252A31; margin: 28px 0 8px; }
.content-area h3.sub-heading { color: #456c94; text-align: left; border-bottom: 1px dashed #d7d8d9; padding-bottom: 10px; font-size: 20px; }
@media (min-width: 768px) {
    .content-area h2 { font-size: 28px; }
    .content-area h3 { font-size: 24px; }
}

/* --- Body Text --- */
.content-area p { font: 400 16px/1.85 Arial, Helvetica, sans-serif; color: #52636b; margin: 14px 0; text-align: left; }
.content-area p a { color: #1565c0; }
.content-area p a:hover { text-decoration: underline; }
.content-area p strong { color: #010101; }

/* --- Bordered Text Block --- */
.content-area p.black-border { border: 1px solid #d7d8d9; border-left: 3px solid #fab174; border-radius: 0 6px 6px 0; padding: 16px 20px; background: #eff4f9; margin: 14px 0; }

/* --- Data Table (table-big) --- */
.table-wrap { margin: 20px 0; border-radius: 4px; border: 1px solid #dce2ea; }
.table-wrap .table-big { font-family: Arial, Helvetica, sans-serif !important; }
.table-big { width: 100%; border-collapse: separate; border-spacing: 0; font: normal 14px/1.5 Arial, sans-serif; color: #555; margin: 0; }
.table-big thead th { padding: 12px 14px; font: 700 13px/1.3 Arial, Helvetica, sans-serif; color: #fff; background: #456c94; text-align: left; }
.table-big thead th:first-child { border-radius: 4px 0 0 0; }
.table-big thead th:last-child { border-radius: 0 4px 0 0; }
.table-big tbody td { padding: 12px 14px; border-bottom: 1px solid #dce2ea; background: #fff; }
.table-big tbody tr:last-child td { border-bottom: none; }
.table-big tbody tr:nth-child(even) td { background: #eff4f9; }
.table-big tbody tr:hover td { background: #e4eaf2; }
.table-big tbody td:first-child { font-weight: 700; color: #252A31; }
@media (max-width: 767px) {
    .table-big { font-size: 12px; }
    .table-big thead th { padding: 8px 6px; font-size: 11px; }
    .table-big tbody td { padding: 8px 6px; }
}

/* --- Bullet List --- */
.content-area ul.bullet { margin: 14px 0; padding: 0; }
.content-area ul.bullet li { position: relative; padding: 6px 0 6px 22px; font: 400 16px/1.7 Arial, Helvetica, sans-serif; color: #52636b; }
.content-area ul.bullet li::before { content: ''; position: absolute; left: 0; top: 14px; width: 6px; height: 6px; background: #fab174; border-radius: 50%; }
.content-area ul.bullet li strong { color: #010101; }

/* --- Pros & Cons Block (full version with title) --- */
.content-area .positive-and-negative { margin: 20px 0; padding: 0; list-style: none; border: 1px solid #d7d8d9; border-radius: 8px; overflow: hidden; }
.content-area .positive-and-negative li.title { font: 700 12px/1 Arial, Helvetica, sans-serif; letter-spacing: 0.8px; text-transform: uppercase; color: #586476; padding: 14px 18px; background: #eff4f9; border-bottom: 1px solid #d7d8d9; }
.content-area .positive-and-negative li.n { padding: 10px 18px 10px 40px; position: relative; font: 400 14px/1.5 Arial, Helvetica, sans-serif; border-bottom: 1px solid #eef0f2; }
.content-area .positive-and-negative li.n:last-child { border-bottom: none; }
.content-area .positive-and-negative li.n.positive { color: #2e8b57; }
.content-area .positive-and-negative li.n.positive::before { content: '+'; position: absolute; left: 14px; top: 8px; width: 20px; height: 20px; font: 700 14px/20px Arial, sans-serif; text-align: center; color: #2e8b57; background: rgba(46,139,87,0.1); border-radius: 50%; }
.content-area .positive-and-negative li.n.negative { color: #c0392b; }
.content-area .positive-and-negative li.n.negative::before { content: '\2212'; position: absolute; left: 14px; top: 8px; width: 20px; height: 20px; font: 700 14px/20px Arial, sans-serif; text-align: center; color: #c0392b; background: rgba(192,57,43,0.1); border-radius: 50%; }
@media (min-width: 768px) {
    .content-area .positive-and-negative { max-width: 500px; }
    .content-area .positive-and-negative.right-position { float: right; margin: 0 0 16px 24px; }
}

/* --- Review Block --- */
.review-card { border-bottom: 1px solid #d7d8d9; overflow: hidden; }
.review-top { padding: 18px 0 0; }
.review-header { flex: 1; }
.review-card .review-title { font: 600 20px/1.3 Arial, Helvetica, sans-serif; color: #252A31; margin: 0 0 4px; }
.review-title a { color: #456c94; text-decoration: none; }
.review-title a:hover { text-decoration: underline; }
.review-tags { display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 8px 0 0; }
.tag-pro, .tag-con { display: inline-flex; align-items: center; gap: 6px; font: 600 13px/1.4 Arial, Helvetica, sans-serif; }
.tag-pro { color: #1f6b41; }
.tag-con { color: #a93226; }
.tag-pro svg, .tag-con svg { flex-shrink: 0; }
.review-body { padding: 0 0 18px; }
.review-body p { font: 400 16px/1.8 Arial, Helvetica, sans-serif; color: #52636b; margin: 12px 0 0; }
.review-body p a { color: #1565c0; }
.review-body p a:hover { text-decoration: underline; }
@media (min-width: 768px) {
    .review-title { font-size: 24px; }
}

/* --- Featured Offer (offer-test.html style) --- */
.offer-wrap { max-width: 1100px; margin: 0 auto; padding: 0 16px; }
.offer-card { background: linear-gradient(160deg, #e8eef6 0%, #f4f7fb 40%, #fff 100%); border: 1px solid #d0d4da; border-radius: 10px; overflow: hidden; box-shadow: inset 0 0 0 3px #fff; }
.offer-top { background: #456c94; padding: 14px 24px; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 10px; }
.offer-badge { font: 800 11px/1 Arial, Helvetica, sans-serif; color: #fff; background: #f89021; padding: 7px 16px; border-radius: 4px; text-transform: uppercase; letter-spacing: 1.5px; }
.offer-trust { display: flex; align-items: center; gap: 12px; }
.offer-trust-item { font: 600 11px/1 Arial, Helvetica, sans-serif; color: rgba(255,255,255,0.7); }
.offer-body { display: flex; align-items: stretch; }
.offer-bonus-side { width: 280px; flex-shrink: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 32px 24px; background: rgba(69,108,148,0.06); border-right: 1px solid #dce2ea; text-align: center; }
.offer-amount { font: 900 96px/0.85 Arial, Helvetica, sans-serif; color: #242628; }
.offer-amount-label { font: 400 20px/1 Arial, Helvetica, sans-serif; color: #456c94; margin-top: 8px; letter-spacing: 0.5px; }
.offer-amount-sub { font: 400 13px/1 Arial, Helvetica, sans-serif; color: #a0a5ad; margin-top: 8px; }
a.offer-amount-cta, p a.offer-amount-cta { margin-top: 20px; display: block; width: 100%; padding: 16px 20px; font: 700 18px/1 Arial, Helvetica, sans-serif; color: #2A2A2A; background: #fe9842; box-shadow: 0 3px 0 #eb702c; border-radius: 6px; text-align: center; text-decoration: none; transition: background 0.15s, transform 0.1s; }
a.offer-amount-cta:hover, p a.offer-amount-cta:hover { color: #2A2A2A; background: #ffa457; transform: translateY(-1px); text-decoration: none; }
.offer-info-side { flex: 1; padding: 28px; display: flex; justify-content: center; gap: 20px; }
.offer-info-content { flex: 1; }
.offer-info-logo { display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.offer-side-logo { width: 180px; height: auto; object-fit: contain; }
.offer-title { font: 700 26px/1.2 Arial, Helvetica, sans-serif; color: #252A31; margin-bottom: 16px; }
.offer-points { margin: 0 0 20px; padding: 0; list-style: none; }
.offer-points li { padding: 6px 0 6px 20px; position: relative; font: 400 16px/1.6 Arial, Helvetica, sans-serif; color: #52636b; }
.offer-points li::before { content: ''; position: absolute; left: 0; top: 14px; width: 6px; height: 6px; background: #fab174; border-radius: 50%; }
.offer-summary { font: 600 14px/1.5 Arial, Helvetica, sans-serif; color: #456c94; background: #eff4f9; padding: 12px 16px; border-radius: 6px; border-left: 3px solid #fab174; }
.offer-tc { font: normal 12px/1.4 Arial, sans-serif; color: #5f6b7d; padding: 10px 24px; border-top: 1px solid #dce2ea; }
.offer-tc a { color: #1565c0; text-decoration: underline; }

@media (max-width: 767px) {
    .offer-body { flex-direction: column; }
    .offer-bonus-side { width: 100%; padding: 24px 20px; border-right: none; border-bottom: 1px solid #dce2ea; }
    .offer-amount { font-size: 72px; }
    .offer-amount-label { font-size: 20px; }
    .offer-info-side { padding: 20px; flex-direction: column; }
    .offer-info-logo { justify-content: flex-start; order: -1; }
    .offer-side-logo { width: 140px; }
    .offer-title { font-size: 24px; }
    .offer-top { padding: 12px 16px; }
    .offer-tc { padding: 10px 16px; }
}

/* --- News Grid --- */
.lastposts { max-width: 1100px; margin: 0 auto; padding: 28px 16px; }
.lastposts > .title { font: 700 26px/1.2 Arial, Helvetica, sans-serif; color: #242628; padding: 0 0 16px; border-bottom: 1px dashed #d7d8d9; }
.lastposts ul { display: grid; grid-template-columns: 1fr; gap: 12px; padding: 20px 0 0; }
.lastposts ul li { position: relative; background: #eff4f9; border: 1px solid #d7d8d9; border-radius: 8px; overflow: hidden; transition: border-color 0.15s, box-shadow 0.15s; }
.lastposts ul li:hover { border-color: #b8c0cc; box-shadow: 0 4px 12px rgba(0,0,0,0.06); }
.lastposts ul li img { width: 100%; height: 160px; object-fit: cover; display: block; }
.lastposts ul li > span { display: block; padding: 10px 14px; font-size: 12px; line-height: 1.4; color: #8a8f96; border-bottom: 1px solid #dce2ea; }
.lastposts ul li > a { display: block; padding: 14px; font: 600 14px/1.4 Arial, Helvetica, sans-serif; color: #252A31; text-decoration: none; }
.lastposts ul li > a:hover { color: #456c94; }
.lastposts ul li > a:after { content: ''; position: absolute; inset: 0; }
@media (min-width: 600px) { .lastposts ul { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .lastposts ul { grid-template-columns: repeat(4, 1fr); } }

/* --- FAQ --- */
.faq-section { max-width: 1100px; margin: 0 auto; padding: 0 16px 32px; }
.faq-section h2 { font: 700 26px/1.2 Arial, Helvetica, sans-serif; color: #242628; margin-bottom: 16px; }
.faq-item { border-bottom: 1px solid #d7d8d9; overflow: hidden; }
.faq-q { font: 700 15px/1.4 Arial, Helvetica, sans-serif; color: #252A31; padding: 16px 0 6px; }
.faq-a { padding: 0 0 16px; font: 400 16px/1.7 Arial, Helvetica, sans-serif; color: #52636b; }
.faq-a a { color: #1565c0; }

/* --- Footer --- */
.footer-rds { z-index: 2; position: relative; padding-top: 40px; background: #252A31; clear: both; color: #fff; font-family: Arial, Helvetica, sans-serif; line-height: 1.8; overflow: hidden; }
.footer-rds .container { max-width: 1320px; padding: 0 18px; margin: 0 auto; }
.footer-rds .ft-logo { display: block; width: 151px; height: 40px; margin: 0 auto; font-size: 0; background: url(../img/sitelogo-small.png) no-repeat center; background-size: contain; }
.footer-rds .ft-heading { text-align: center; padding: 0 0 28px; }
.footer-rds .ft-heading p { margin-top: 10px; font-style: italic; font-size: 14px; line-height: 1.7; color: rgba(255,255,255,0.55); text-align: center; max-width: 600px; margin-left: auto; margin-right: auto; }
.footer-rds .ft-heading p a { font-weight: 700; color: #fff; }
.footer-rds .ft-highlight { border-radius: 16px; }
.footer-rds .ft-list { border-radius: 16px; padding: 40px 30px 50px; color: #fff; background: #1b2026; display: grid; grid-template-columns: 1fr; gap: 28px; }
@media (min-width: 600px) { .footer-rds .ft-list { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .footer-rds .ft-list { grid-template-columns: repeat(5, 1fr); padding: 40px 45px 50px; } }
.footer-rds h3 { margin-bottom: 14px; font-weight: 600; font-size: 14px; line-height: 1.2; text-align: left; color: rgba(255,255,255,0.5); text-transform: uppercase; letter-spacing: 0.5px; }
.footer-rds .ft-list ul { margin: 0; }
.footer-rds .ft-list li { position: relative; padding-left: 20px; line-height: 1; }
.footer-rds .ft-list li + li { margin-top: 10px; }
.footer-rds .ft-list li:before { position: absolute; content: ''; top: 5px; left: 0; width: 10px; height: 10px; background: url(../img/ico-orange-check.svg) no-repeat center / contain; }
.footer-rds .ft-list a { color: rgba(255,255,255,0.8); font-weight: 400; font-size: 14px; line-height: 1.6; transition: color .2s; }
.footer-rds .ft-list a:hover { color: #f89021; }
.footer-rds .ft-safe { text-align: center; padding: 0 20px 25px; }
.footer-rds .ft-safe h3 { position: relative; margin: -30px auto 0; font-size: 12px; color: rgba(255,255,255,0.6); text-align: center; font-weight: 400; background: #252a31; border-radius: 30px 30px 0 0; padding: 18px 35px 10px; width: fit-content; text-transform: uppercase; letter-spacing: 1px; clip-path: polygon(5% 0%, 95% 0%, 100% 100%, 0% 100%); }
.footer-rds .ft-safe h3:before { content: ''; display: inline-block; vertical-align: middle; background: url(../img/ico-orange-shield.svg) no-repeat center / contain; width: 20px; height: 20px; margin-right: 8px; }
.footer-rds .ft-safe-logos { display: flex; justify-content: center; align-items: center; gap: 20px; flex-wrap: wrap; margin: 16px auto 12px; }
.footer-rds .ft-safe-logos span,
.footer-rds .ft-safe-logos a { display: inline-block; height: 30px; font-size: 0; background-repeat: no-repeat; background-position: center; background-size: contain; opacity: 0.6; transition: opacity .2s; }
.footer-rds .ft-safe-logos span:hover,
.footer-rds .ft-safe-logos a:hover { opacity: 1; }
.footer-rds .gambling-commission-w { width: 100px; background-image: url(../img/gambling-commission-logo.png); }
.footer-rds .gamstop-w { width: 80px; background-image: url(../img/gamstop-logo.png); }
.footer-rds .gambleaware-w { width: 120px; background-image: url(../img/gambleaware-logo.png); }
.footer-rds .eighteen-w { width: 30px; background-image: url(../img/eighteen-plus-logo.png); }
.footer-rds .ft-safe-text { font-size: 12px; color: rgba(255,255,255,0.7); line-height: 1.6; }
.footer-rds .ft-safe-text a { color: rgba(255,255,255,0.6); text-decoration: underline; }
.footer-rds .ft-safe-text a:hover { color: #fff; }
.footer-rds .ft-links { padding: 20px 0; border-top: 1px solid rgba(255,255,255,0.08); }
.footer-rds .ft-links ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 20px; padding: 0; }
.footer-rds .ft-links ul li a { font-size: 13px; color: rgba(255,255,255,0.5); transition: color .2s; }
.footer-rds .ft-links ul li a:hover { color: #fff; }
.footer-rds .ft-rights { text-align: center; font-size: 12px; color: rgba(255,255,255,0.6); padding: 12px 0 0; }

/* --- Full-width white page wrapper --- */
.page-white { background: #fff; }

/* ================================================
   LEGACY CLASS SUPPORT
   Styles old content markup with the new design
   ================================================ */

/* --- Article wrapper --- */
article { max-width: 1100px; margin: 0 auto; padding: 0 20px 40px; background: #fff; }
@media (min-width: 768px) { article { padding: 0 24px 40px; } }

/* --- Intro / Hero (old .intro class) --- */
.intro { position: relative; margin: 0 -20px; padding: 44px 20px 0; color: #fff; overflow: hidden; }
.intro::before { content: ''; position: absolute; inset: 0; background: #456c94; z-index: 0; }
.intro::after { content: ''; position: absolute; top: -30%; right: -5%; width: 500px; height: 500px; background: radial-gradient(circle, rgba(254,152,66,0.1) 0%, transparent 55%); pointer-events: none; z-index: 0; }
.intro > * { position: relative; z-index: 1; }
article .intro .hs { color: #fff; border: none; margin: 0 0 14px; padding: 0; font: 700 28px/1.2 Arial, Helvetica, sans-serif; text-align: left; }
article .intro p { color: rgba(255,255,255,0.8); font: 400 16px/1.8 Arial, Helvetica, sans-serif; margin: 0; padding: 0 0 24px; max-width: 860px; }
article .intro p a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
@media (min-width: 768px) { .intro { margin: 0 -24px; padding: 50px 24px 0; } article .intro .hs { font-size: 30px; } }
@media (min-width: 1024px) { article .intro .hs { font-size: 34px; max-width: 750px; } }
@media (max-width: 540px) { article .intro .hs { font-size: 22px; } article .intro p.exp { max-height: none; } article .intro p.exp:after { display: none; } }

/* --- HR dividers --- */
hr { border: none; height: 0; margin: 0; }
hr.hr { height: 0; }
hr.intro { display: none; }

/* --- Operator Table (old .cvflex) --- */
.cvflex { padding: 20px 0 0; }
.cvflex-table-meta { padding: 12px 0 8px; }
.cvflex-table-last-updated { font: 400 13px/1 Arial, Helvetica, sans-serif; color: rgba(255,255,255,0.7); }
.intro .cvflex-table-last-updated { color: rgba(255,255,255,0.7); }
.cvflex-table-last-updated time { font-weight: 600; }
.cvflex caption { text-align: left; padding: 14px 0 10px; font: 700 20px/1.3 Arial, Helvetica, sans-serif; color: #fff; }
.intro .cvflex caption { color: #fff; }
.cvflex table { width: 100%; border-collapse: separate; border-spacing: 0 6px; }
.cvflex thead { display: none; }
.cvflex tbody tr { display: block; background: #eff4f9; border: 1px solid #d7d8d9; border-radius: 8px; margin-bottom: 6px; overflow: hidden; transition: border-color 0.2s, box-shadow 0.2s; }
.cvflex tbody tr:hover { border-color: #b8c0cc; box-shadow: 0 4px 16px rgba(37,42,49,0.08); }
.cvflex tbody td { display: block; padding: 8px 16px; font: 400 14px/1.5 Arial, Helvetica, sans-serif; color: #52636b; }
.cvflex tbody td:first-child { padding-top: 14px; }

/* Operator brand name */
.cvflex td .brand { display: inline-block; font: 700 16px/1.3 Arial, Helvetica, sans-serif; color: #252A31; text-decoration: none; }
.cvflex td .brand:hover { color: #456c94; }

/* Rating */
.cvflex td[class*="r"] { font: 700 15px/1 Arial, Helvetica, sans-serif; color: #456c94; }
.cvflex td[class*="r"] span { font-weight: 400; font-size: 12px; color: #a0a5ad; }

/* Bonus amount */
.cvflex tbody td:nth-child(3) { font: 400 15px/1.5 Arial, Helvetica, sans-serif; color: #252A31; }
.cvflex tbody td:nth-child(3) strong { font: 900 28px/1.1 Arial, Helvetica, sans-serif; color: #242628; display: block; }

/* Payout */
.cvflex tbody td[data-title="Payout"],
.cvflex tbody td[data-title="Min. Deposit"],
.cvflex tbody td[data-title="Offer"] { font: 500 13px/1 Arial, Helvetica, sans-serif; color: #586476; }

/* Highlights */
.cvflex tbody td:nth-child(5) span { display: inline-block; padding: 3px 10px; margin: 2px 4px 2px 0; font: 500 12px/1.4 Arial, Helvetica, sans-serif; color: #456c94; background: rgba(69,108,148,0.08); border-radius: 20px; }
.cvflex tbody td:nth-child(5) span.hidden { display: none !important; }

/* CTA */
.ext, .ext1 { display: inline-block; min-width: 130px; padding: 13px 24px; font: 700 15px/1.2 Arial, Helvetica, sans-serif; color: #2A2A2A; text-align: center; text-decoration: none; background: #fe9842; border-radius: 8px; transition: background .12s, transform .1s; box-shadow: 0 2px 8px rgba(254,152,66,0.2); cursor: pointer; }
.ext1:hover { background: #f58a2e; transform: translateY(-1px); box-shadow: 0 4px 16px rgba(254,152,66,0.3); }
.ext { color: #252A31; background: #fedf62; box-shadow: 0 2px 8px rgba(254,223,98,0.2); }
.ext:hover { background: #ffe97a; transform: translateY(-1px); }
.ext:before, .ext1:before { display: none; }

/* T&Cs */
.cvflex td.tnc { font: 400 11px/1.5 Arial, Helvetica, sans-serif; color: #9ba1aa; padding: 8px 16px 14px; border-top: 1px solid #dce2ea; }
.cvflex td.tnc a { color: #456c94; font-weight: 500; }

/* Footnote */
.cvflex .footnote { padding: 10px 0; font: 500 11px/1 Arial, Helvetica, sans-serif; color: #a0a5ad; text-align: right; }
.cvflex .footnote .mark { display: inline-flex; align-items: center; gap: 6px; }
.cvflex .footnote .mark:before { content: ''; width: 14px; height: 14px; background: url(../img/ico-orange-shield.svg) no-repeat center / contain; }

/* Desktop table */
@media (min-width: 768px) {
    .cvflex thead { display: table-header-group; }
    .cvflex thead th { padding: 10px 14px; font: 600 12px/1.3 Arial, Helvetica, sans-serif; color: #8a8f96; text-align: left; border-bottom: 2px solid #e8eaed; }
    .intro .cvflex thead th { color: rgba(255,255,255,0.5); border-bottom-color: rgba(255,255,255,0.1); }
    .cvflex tbody tr { display: table-row; border-radius: 0; margin-bottom: 0; }
    .cvflex tbody td { display: table-cell; padding: 14px; vertical-align: middle; background: #fafbfc; border-top: 1px solid #eef0f2; border-bottom: 1px solid #eef0f2; }
    .cvflex tbody tr:hover td { background: #f0f4f8; }
    .cvflex tbody td:first-child { border-left: 1px solid #eef0f2; border-radius: 8px 0 0 8px; }
    .cvflex tbody td:last-child { border-right: 1px solid #eef0f2; border-radius: 0 8px 8px 0; }
    .cvflex tbody td:nth-child(3) strong { font-size: 24px; }
    .cvflex td.tnc { border-top: none; padding: 14px; }
}


/* --- Content Headings (old .hs, .hs-black) --- */
article .hs { text-align: left; font: 700 22px/1.3 Arial, Helvetica, sans-serif; letter-spacing: -0.2px; color: #456c94; padding-bottom: 10px; margin-top: 28px; border-bottom: 1px solid #e3e7ec; }
article .hs-black { font: 700 22px/1.3 Arial, Helvetica, sans-serif; letter-spacing: -0.2px; color: #252A31; text-align: left; border-bottom: none; padding: 0; margin-top: 32px; margin-bottom: 8px; }
@media (min-width: 768px) { article .hs { font-size: 24px; } article .hs-black { font-size: 24px; } }

/* --- Body Text --- */
html body p, html body .cont-p { line-height: 1.85; margin-top: 14px; text-align: left; font: 400 16px/1.85 Arial, Helvetica, sans-serif; color: #52636b; }
html body p strong, html body .cont-p strong { color: #010101; font-weight: 600; }
html body p a, html body .cont-p a { color: #1565c0; }
html body p a:hover, html body .cont-p a:hover { text-decoration: underline; }

/* --- Bordered Text Block (old .black-border) --- */
html body p.black-border, html body .cont-p.black-border { border: 1px solid #d7d8d9; border-left: 3px solid #fab174; border-radius: 0 6px 6px 0; padding: 16px 20px; background: #eff4f9; overflow: hidden; }
@media (max-width: 540px) { html body p.black-border { padding: 12px; } }

/* --- Pros & Cons (old .positive-and-negative) --- */
.positive-tb-div { margin: 10px 0; }
html body article .positive-and-negative { list-style: none; display: flex; flex-wrap: wrap; gap: 8px; padding: 0; margin: 8px 0; }
html body article .positive-and-negative.right-position { float: none; margin: 8px 0; }
html body article .positive-and-negative li.title { display: none; }
html body article .positive-and-negative li.n { display: inline-flex; align-items: center; gap: 6px; padding: 5px 14px; font: 500 13px/1.4 Arial, Helvetica, sans-serif; border-radius: 5px; }
html body article .positive-and-negative li.n:nth-child(odd) { background: transparent; }
html body article .positive-and-negative li.n.positive { color: #2e8b57; background: rgba(46,139,87,0.06); border: 1px solid rgba(46,139,87,0.12); }
html body article .positive-and-negative li.n.negative { color: #c0392b; background: rgba(192,57,43,0.06); border: 1px solid rgba(192,57,43,0.12); }
html body article .positive-and-negative li.n.positive:before { content: '+'; display: inline-flex; align-items: center; justify-content: center; width: 18px; height: 18px; font-weight: 700; font-size: 13px; color: #2e8b57; background: rgba(46,139,87,0.12); border-radius: 50%; }
html body article .positive-and-negative li.n.negative:before { content: '\2212'; display: inline-flex; align-items: center; justify-content: center; width: 18px; height: 18px; font-weight: 700; font-size: 13px; color: #c0392b; background: rgba(192,57,43,0.12); border-radius: 50%; }
@media (min-width: 768px) {
    html body article .positive-and-negative.right-position { float: right; margin: 0 0 12px 20px; }
}

/* --- Featured Offer (old .h-b) --- */
html body article .h-b { margin: 20px 0; border-radius: 10px; overflow: hidden; border: 1px solid #d7d8d9; background: #fff; }
html body article .h-b:hover { box-shadow: 0 4px 20px rgba(0,0,0,0.05); }
html body article .h-b ul { display: flex; flex-wrap: wrap; list-style: none; padding: 0; margin: 0; }
html body article .h-b ul li { padding: 18px; }
html body article .h-b ul li.list { flex: 1 1 260px; }
html body article .h-b ul li.list span.row { display: block; }
html body article .h-b ul li.list span.row span { display: block; position: relative; padding: 4px 0 4px 20px; font: 400 14px/1.6 Arial, Helvetica, sans-serif; color: #52636b; }
html body article .h-b ul li.list span.row span:before { content: ''; position: absolute; left: 0; top: 10px; width: 10px; height: 10px; background: url(../img/ico-orange-check.svg) no-repeat center / contain; }
html body article .h-b ul li.img { flex: 0 0 auto; display: flex; align-items: center; }
html body article .h-b ul li.img img { max-width: 260px; border-radius: 6px; }
html body article .h-b ul li.bonus { flex: 1 1 200px; display: flex; flex-direction: column; justify-content: center; padding: 18px 22px; background: #fafbfc; }
html body article .h-b ul li.bonus .of { font: 700 16px/1.3 Arial, Helvetica, sans-serif; color: #252A31; }
html body article .h-b ul li.bonus .of strong { font: 900 34px/1 Arial, Helvetica, sans-serif; color: #456c94; display: block; margin-bottom: 4px; }
html body article .h-b ul li.bonus .row { margin-top: 10px; }
html body article .h-b ul li.bonus .row span { display: block; padding: 3px 0 3px 18px; position: relative; font: 400 13px/1.5 Arial, Helvetica, sans-serif; color: #7a8290; }
html body article .h-b ul li.bonus .row span:before { content: ''; position: absolute; left: 0; top: 9px; width: 6px; height: 6px; border-radius: 50%; background: #fab174; }
html body article .h-b ul li.link { flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 18px 22px; gap: 10px; }
html body article .h-b ul li.link .trusted { display: block; width: 24px; height: 24px; font-size: 0; background: url(../img/ico-orange-shield.svg) no-repeat center / contain; }
html body article .h-b ul li.link a { display: inline-block; padding: 14px 28px; font: 700 16px/1 Arial, Helvetica, sans-serif; color: #2A2A2A; background: #fe9842; border-radius: 8px; text-decoration: none; box-shadow: 0 2px 8px rgba(254,152,66,0.2); transition: background .12s, transform .1s; }
html body article .h-b ul li.link a:hover { background: #f58a2e; transform: translateY(-1px); }
html body article .h-b .tnc { padding: 10px 18px; font: 400 11px/1.6 Arial, Helvetica, sans-serif; color: #9ba1aa; background: #fafbfc; border-top: 1px solid #eef0f2; }
html body article .h-b .tnc a { color: #456c94; font-weight: 500; }
@media (min-width: 768px) { html body article .h-b ul { flex-wrap: nowrap; } }

/* --- Bullet Lists (old .bullet, .simple) --- */
ul.bullet, ol.number { margin: 14px 0; padding: 0; }
ul.bullet li, ol.number li { position: relative; padding: 6px 0 6px 20px; font: 400 16px/1.7 Arial, Helvetica, sans-serif; color: #52636b; }
ul.bullet li:before { content: ''; position: absolute; left: 0; top: 14px; width: 6px; height: 6px; background: #fab174; border-radius: 50%; }
ul.bullet li strong, ol.number li strong { color: #010101; font-weight: 600; }
ol.number { counter-reset: step; }
ol.number li { padding-left: 28px; }
ol.number li:before { content: counter(step); counter-increment: step; position: absolute; left: 0; top: 6px; width: 20px; height: 20px; font: 700 12px/20px Arial, Helvetica, sans-serif; text-align: center; color: #fff; background: #456c94; border-radius: 50%; }
.simple { display: table; margin: 0 auto 20px; padding-left: 30px; font: 600 14px/1 Arial, Helvetica, sans-serif; }
.simple li { padding: 5px 0; }

/* --- FAQ (old .faq-box) --- */
.faq-box { margin: 24px 0; }
.faq-box .body { border-bottom: 1px solid #d7d8d9; padding: 16px 0; }
.faq-box .body .title { font: 700 15px/1.4 Arial, Helvetica, sans-serif; color: #252A31; margin-bottom: 6px; }
.faq-box .body p { font: 400 16px/1.7 Arial, Helvetica, sans-serif; color: #52636b; margin: 0; padding: 0; }

/* --- Data Tables (old .table-big, .cvtab) --- */
.table-big { width: 100%; border-collapse: separate; border-spacing: 0; font: 400 14px/1.5 Arial, Helvetica, sans-serif; color: #52636b; margin: 18px 0; }
.table-big thead th { padding: 12px 14px; font: 600 13px/1.3 Arial, Helvetica, sans-serif; color: #fff; background: #456c94; text-align: left; }
.table-big thead th:first-child { border-radius: 4px 0 0 0; }
.table-big thead th:last-child { border-radius: 0 4px 0 0; }
.table-big tbody td { padding: 12px 14px; border-bottom: 1px solid #dce2ea; background: #fff; }
.table-big tbody tr:last-child td { border-bottom: none; }
.table-big tbody tr:nth-child(even) td { background: #eff4f9; }
.table-big tbody tr:hover td { background: #e4eaf2; }
.table-big tbody td:first-child { font-weight: 600; color: #252A31; }
@media (max-width: 767px) { .table-big { font-size: 12px; } .table-big thead th { padding: 8px 6px; font-size: 10px; } .table-big tbody td { padding: 8px 6px; } }

/* --- Operator Brand Logos --- */
.cvflex td .brand { display: block; width: 110px; height: 44px; text-indent: -9999px; background-repeat: no-repeat; background-position: center; background-size: contain; margin: 0; }
.brand.midnite { background-image: url(../img/midnite.png); }
.brand.bet247 { background-image: url(../img/247bet.png); }
.brand.quickbet { background-image: url(../img/quickbet.png); }
.brand.quinnbet { background-image: url(../img/quinnbet.png); }
.brand.bet10 { background-image: url(../img/10bet.png); }
.brand.pub-sports { background-image: url(../img/pub-sports.png); }
.brand.betway { background-image: url(../img/betway.png); }
.brand.betmgm { background-image: url(../img/betmgm.png); }
.brand.spreadex { background-image: url(../img/spreadex.png); }
.brand.betfred { background-image: url(../img/betfred.png); }
.brand.betwright { background-image: url(../img/betwright.png); }
.brand.yetibet { background-image: url(../img/yetibet.png); }
.brand.boylesports { background-image: url(../img/boylesports.png); }
.brand.casumo { background-image: url(../img/casumo.png); }
.brand.fun-sports { background-image: url(../img/fun-casino.png); }
.brand.hotstreak { background-image: url(../img/hotstreak.png); }
.brand.tote { background-image: url(../img/tote.png); }
.brand.nrg { background-image: url(../img/nrgbet.png); }
.brand.lottoland { background-image: url(../img/lottoland.png); }
.brand.fitzdares { background-image: url(../img/fitzdares.png); }
.brand.pools { background-image: url(../img/pools.png); }
.brand.luckymate { background-image: url(../img/luckymate.png); }
.brand.coral { background-image: url(../img/coral.png); }
.brand.ladbrokes { background-image: url(../img/ladbrokes.png); }
.brand.leovegas { background-image: url(../img/leovegas.png); }
.brand.star-sports { background-image: url(../img/star-sports.png); }
.brand.copybet { background-image: url(../img/copybet.png); }
.brand.netbet { background-image: url(../img/netbet.png); }
.brand.wh { background-image: url(../img/williamhill.png); }
.brand.bwin { background-image: url(../img/bwin.png); }
.brand.playzee { background-image: url(../img/playzee-sports.png); }
.brand.betvictor { background-image: url(../img/betvictor.png); }
.brand.daznbet { background-image: url(../img/daznbet.png); }
.brand.bet365 { background-image: url(../img/bet365.png); }
.brand.pricedup { background-image: url(../img/pricedup.png); }
.brand.grosvenor { background-image: url(../img/grosvenor.png); }
.brand.all-british-sports { background-image: url(../img/all-british-sports.png); }
.brand.unibet { background-image: url(../img/unibet.png); }
.brand.heyspin { background-image: url(../img/heyspin.png); }
.brand.matchbook { background-image: url(../img/matchbook.png); }
.brand.betreels { background-image: url(../img/betreels.png); }
.brand.betstorm { background-image: url(../img/betstorm.png); }
.brand.red32 { background-image: url(../img/32red.png); }
.brand.betuk { background-image: url(../img/betuk.png); }
/* Review page multi-product logos */
.brand.bet365-casino { background-image: url(../img/bet365-casino.png); }
.brand.bet365-bingo { background-image: url(../img/bet365-bingo.png); }
.brand.bet365-poker { background-image: url(../img/bet365-poker.png); }
.brand.coral-casino { background-image: url(../img/coral-casino.png); }
.brand.coral-bingo { background-image: url(../img/coral-bingo.png); }
.brand.coral-poker { background-image: url(../img/coral-poker.png); }
.brand.ladbrokes-casino { background-image: url(../img/ladbrokes-casino.png); }
.brand.ladbrokes-bingo { background-image: url(../img/ladbrokes-bingo.png); }
.brand.ladbrokes-poker { background-image: url(../img/ladbrokes-poker.png); }
.brand.boylesports-casino { background-image: url(../img/boylesports-casino.png); }
.brand.bwin-casino { background-image: url(../img/bwin-casino.png); }
.brand.all-british-casino { background-image: url(../img/all-british-casino.png); }

/* Missing logos — show text fallback */
.cvflex td .brand[class*="brand"]:not([style]) { font: 700 13px/44px Arial, Helvetica, sans-serif; text-indent: 0; text-align: center; color: #252A31; }

/* --- Misc legacy elements --- */
.conversion { display: none; }
.b-big { display: none; }
article .cta { font: 500 15px/1 Arial, Helvetica, sans-serif; color: #456c94; text-align: center; display: block; margin: 14px auto; }
article .cta:hover { text-decoration: underline; }
article .cta:before { display: none; }
article .btn-orange, article .btn-yellow { display: inline-block; padding: 12px 28px; font: 700 16px/1 Arial, Helvetica, sans-serif; color: #2A2A2A; background: #fe9842; border-radius: 8px; box-shadow: 0 3px 0 #eb702c; text-align: center; text-decoration: none; }
article .btn-orange:hover, article .btn-yellow:hover { background: #f58a2e; transform: translateY(-1px); }
article .btn-yellow { background: #fedf62; color: #252A31; box-shadow: 0 3px 0 #ffc64d; }
article .rev-navi { display: none; }
.back_to_top { display: none !important; }
.lastposts { display: none; }
img.big-bonus-img { margin-top: 20px; }
.lgsp-wrap, .ldsp-wrap { display: block; width: auto; text-align: center; }

/* --- Wrapper overrides --- */
.wrapper1 { background: #fff; max-width: 1100px; margin: 0 auto; }
.wrapper2 { float: none; margin-right: 0; width: 100%; }
.wrapper2 article { margin-right: 0; padding: 20px; }
@media (min-width: 768px) { .wrapper2 article { padding: 24px; } }
@media (min-width: 1024px) { .wrapper2 { float: none; margin-right: 0; } .wrapper2 article { margin-right: 0; padding: 30px; } }
aside { display: none; }

/* --- News page styles --- */
.wrapper2 article h1 { font: 700 28px/1.2 Arial, Helvetica, sans-serif; color: #252A31; margin-bottom: 10px; }
.wrapper2 article h2 { font: 700 24px/1.2 Arial, Helvetica, sans-serif; color: #456c94; margin: 28px 0 10px; padding-bottom: 8px; border-bottom: 2px solid #eff4f9; }
.wrapper2 article h3 { font: 600 20px/1.3 Arial, Helvetica, sans-serif; color: #252A31; margin: 24px 0 8px; }
.wrapper2 article p { font: 400 16px/1.85 Arial, Helvetica, sans-serif; color: #52636b; margin: 0; padding: 0 0 14px; text-align: left; }
.wrapper2 article p a { color: #1565c0; }
.wrapper2 .post { padding: 20px 0; border-bottom: 1px solid #eef0f2; overflow: hidden; }
.wrapper2 .post.first { border-top: 1px solid #eef0f2; border-bottom: 1px solid #eef0f2; padding: 24px 0; }
.wrapper2 .post h3 { margin-bottom: 6px; }
.wrapper2 .post h3 a { color: #252A31; transition: color .15s; }
.wrapper2 .post h3 a:hover { color: #456c94; }
.wrapper2 .post p.meta { font: 400 13px/1 Arial, Helvetica, sans-serif; color: #8a8f96; margin-bottom: 8px; padding: 0; }
.wrapper2 .post p.more a { display: inline-block; padding: 8px 20px; font: 700 13px/1 Arial, Helvetica, sans-serif; color: #b8560f; border: 1px solid #b8560f; border-radius: 6px; text-transform: uppercase; letter-spacing: 0.5px; transition: background .12s, color .12s; }
.wrapper2 .post p.more a:hover { background: #fe9842; color: #2A2A2A; text-decoration: none; }
.wrapper2 .post > .img { float: left; width: 40%; margin-right: 2%; }
.wrapper2 .post > .img img { border-radius: 6px; filter: none; }
@media (max-width: 767px) { .wrapper2 .post > .img { float: none; width: 100%; margin: 0 0 12px; } }

/* --- News Page --- */
.news-hero { position: relative; padding: 52px 0 44px; overflow: hidden; }
.news-hero::before { content: ''; position: absolute; inset: 0; background: #456c94; }
.news-hero::after { content: ''; position: absolute; top: -30%; right: -5%; width: 500px; height: 500px; background: radial-gradient(circle, rgba(254,152,66,0.1) 0%, transparent 55%); pointer-events: none; }
.news-hero-inner { position: relative; z-index: 1; max-width: 1100px; margin: 0 auto; padding: 0 16px; color: rgba(255,255,255,0.9); }
.news-hero h1 { font: 700 clamp(30px, 4vw, 44px)/1.15 Arial, Helvetica, sans-serif; color: #fff; max-width: 700px; margin-bottom: 14px; }
.news-hero p { font: 400 16px/1.7 Arial, Helvetica, sans-serif; color: rgba(255,255,255,0.85); max-width: 620px; margin: 0; }
@media (min-width: 768px) { .news-hero-inner { padding: 0 24px; } }
@media (max-width: 767px) { .news-hero { padding: 36px 0 32px; } }

.news-list { max-width: 1100px; margin: 0 auto; padding: 32px 16px 48px; }
@media (min-width: 768px) { .news-list { padding: 32px 24px 48px; } }

.news-post { display: flex; gap: 0; background: #eff4f9; border: 1px solid #d7d8d9; border-radius: 8px; overflow: hidden; margin-bottom: 10px; transition: border-color 0.2s, box-shadow 0.2s; }
.news-post:hover { border-color: #b8c0cc; box-shadow: 0 4px 16px rgba(37,42,49,0.08); }
.news-post-img { flex: 0 0 280px; overflow: hidden; }
.news-post-img a { display: block; height: 100%; }
.news-post-img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform 0.3s; }
.news-post:hover .news-post-img img { transform: scale(1.03); }
.news-post-content { flex: 1; padding: 20px 20px 20px 24px; display: flex; flex-direction: column; justify-content: center; }
.news-post-content h3 { font: 700 20px/1.3 Arial, Helvetica, sans-serif; color: #252A31; margin: 0 0 6px; }
.news-post-content h3 a { color: #252A31; text-decoration: none; transition: color .15s; }
.news-post-content h3 a:hover { color: #456c94; }
.news-post-meta { font: 400 12px/1 Arial, Helvetica, sans-serif; color: #8a8f96; margin: 0 0 10px; padding: 0; }
.news-post-meta strong { color: #586476; font-weight: 600; }
.news-post-excerpt { font: 400 14px/1.7 Arial, Helvetica, sans-serif; color: #52636b; margin: 0 0 14px; padding: 0; }
.news-post-more { display: inline-block; font: 700 13px/1 Arial, Helvetica, sans-serif; color: #b8560f; text-decoration: none; text-transform: uppercase; letter-spacing: 0.5px; }
.news-post-more:hover { color: #8f4109; }
.news-post.featured { border-left: 4px solid #f89021; }
.news-post.featured .news-post-content h3 { font-size: 24px; }
@media (max-width: 767px) {
    .news-post { flex-direction: column; }
    .news-post-img { flex: none; height: 200px; }
    .news-post-content { padding: 16px; }
    .news-post.featured .news-post-content h3 { font-size: 20px; }
}
@media (min-width: 768px) {
    .news-post.featured .news-post-img { flex: 0 0 360px; }
    .news-post.featured .news-post-content h3 { font-size: 26px; }
}
.quote-heading { font: 700 18px/1.3 Arial, Helvetica, sans-serif; color: #252A31; margin: 24px 0 8px; }
blockquote.info-quote { position: relative; margin: 12px 0 18px; padding: 14px 22px 14px 28px !important; font: 400 17px/1.7 Arial, Helvetica, sans-serif; color: #3d4f5f; border: none; background: none; display: block; }
blockquote.info-quote::before { content: ''; position: absolute; left: 0; top: 8px; bottom: 8px; width: 4px; background: linear-gradient(180deg, #fe9842, #fab174); border-radius: 2px; }
blockquote.info-quote::after { content: '"'; position: absolute; left: 14px; top: -8px; font: 800 60px/1 Arial, Helvetica, sans-serif; color: rgba(254,152,66,0.18); pointer-events: none; }
blockquote.info-quote a { color: #1565c0; }

.info-card { background: #fff !important; border: 1px solid #c0c5cc !important; border-radius: 4px !important; overflow: hidden; margin: 16px 0; }
.info-card-header { display: flex !important; align-items: center; gap: 12px; padding: 12px 18px; background: #fff !important; border-bottom: 1px solid #e3e7ec !important; }
.info-card-badge { display: inline-block; font: 700 13px/1 Arial, Helvetica, sans-serif; color: #456c94 !important; }
.info-card-meta { font: 500 13px/1 Arial, Helvetica, sans-serif; color: #5f6b7d; }
.info-card-body { padding: 18px 22px; background: #fff; }
.info-card-body p { margin: 0 !important; padding: 0 !important; font: 400 16px/1.85 Arial, Helvetica, sans-serif; color: #52636b; text-align: left; }
.info-card-body p a { color: #1565c0; }
@media (max-width: 540px) {
    .info-card-header { flex-direction: column; align-items: flex-start; gap: 6px; }
}

/* --- News Post Article --- */
.post-article { background: #fff; padding: 40px 0 60px; }
.post-article-inner { max-width: 800px; margin: 0 auto; padding: 0 16px; }
@media (min-width: 768px) { .post-article-inner { padding: 0 24px; } }
.post-article-inner .post-title { font: 700 32px/1.2 Arial, Helvetica, sans-serif; color: #252A31; margin-bottom: 10px; }
.post-article-inner .post-meta { font: 400 14px/1 Arial, Helvetica, sans-serif; color: #8a8f96; padding-bottom: 18px; margin-bottom: 20px; border-bottom: 1px solid #eef0f2; }
.post-article-inner .post-meta strong, .post-article-inner .post-meta b { color: #456c94; font-weight: 600; }
.post-content { font: 400 17px/1.85 Arial, Helvetica, sans-serif; color: #3d4f5f; }
.post-content h2 { font: 700 24px/1.3 Arial, Helvetica, sans-serif; color: #252A31; margin: 32px 0 12px; padding-bottom: 8px; border-bottom: 2px solid #eff4f9; }
.post-content h3 { font: 600 20px/1.3 Arial, Helvetica, sans-serif; color: #252A31; margin: 24px 0 8px; }
.post-content p { margin: 16px 0; }
.post-content p strong, .post-content p b { color: #252A31; font-weight: 600; }
.post-content a { color: #1565c0; font-weight: 500; border-bottom: 1px solid rgba(21,101,192,0.4); transition: border-color .15s; }
.post-content a:hover { border-color: #1565c0; }
.post-content ul, .post-content ol { margin: 16px 0 16px 20px; padding-left: 0; }
.post-content ul li, .post-content ol li { margin: 8px 0; font: 400 17px/1.7 Arial, Helvetica, sans-serif; color: #3d4f5f; position: relative; padding-left: 24px; }
.post-content ul li::before { content: ''; position: absolute; left: 0; top: 14px; width: 6px; height: 6px; background: #fab174; border-radius: 50%; }
.post-content ol { counter-reset: step; list-style: none; }
.post-content ol li { padding-left: 34px; }
.post-content ol li::before { counter-increment: step; content: counter(step); position: absolute; left: 0; top: 4px; width: 24px; height: 24px; font: 700 13px/24px Arial, Helvetica, sans-serif; text-align: center; color: #fff; background: #456c94; border-radius: 50%; }
.post-content img { max-width: 100%; height: auto; border-radius: 8px; margin: 20px 0; display: block; }
.post-content table { width: 100%; border-collapse: separate; border-spacing: 0; margin: 24px 0; border: 1px solid #dce2ea; border-radius: 8px; overflow: hidden; }
.post-content table th { padding: 12px 14px; font: 600 13px/1.3 Arial, Helvetica, sans-serif; color: #fff; background: #456c94; text-align: left; }
.post-content table td { padding: 12px 14px; font: 400 15px/1.5 Arial, Helvetica, sans-serif; color: #52636b; border-bottom: 1px solid #eef0f2; background: #fff; }
.post-content table tr:last-child td { border-bottom: none; }
.post-content table tr:nth-child(even) td { background: #fafbfc; }
.post-content blockquote { margin: 20px 0; padding: 16px 22px 16px 26px; border-left: 4px solid #fe9842; background: #fafbfc; font-style: italic; color: #3d4f5f; border-radius: 0 6px 6px 0; }
.post-content iframe { max-width: 100%; border-radius: 8px; margin: 20px 0; }
.post-back { margin-top: 36px; padding-top: 24px; border-top: 1px solid #eef0f2; }
.post-back a { display: inline-block; padding: 10px 20px; font: 600 14px/1 Arial, Helvetica, sans-serif; color: #456c94; background: #eff4f9; border-radius: 6px; text-decoration: none; transition: background .15s; }
.post-back a:hover { background: #dce7f0; }
@media (max-width: 767px) { .post-article { padding: 24px 0 40px; } .post-article-inner .post-title { font-size: 26px; } .post-content { font-size: 16px; } }

/* Operator / offer / review tables embedded inside post content keep their component colours (not the post-content link/heading treatment) */
.post-content .cta-button, .post-content a.offer-amount-cta, .post-content a.offer-compact-btn, .post-content .ext1 { color: #2A2A2A; font-weight: 700; border-bottom: none; }
.post-content .ext { color: #252A31; font-weight: 700; border-bottom: none; }
.post-content .op-code-link, .post-content .op-terms a, .post-content .ro-terms a, .post-content .offer-tc a { color: #1565c0; font-weight: 600; border-bottom: none; }
.post-content .review-title a { color: #456c94; font-weight: 600; border-bottom: none; }
.post-content .operators-heading, .post-content .review-offers-heading { color: #456c94; border-bottom: none; margin: 0 0 20px; padding-bottom: 0; }

/* --- Featured Offer Compact --- */
.offer-compact { max-width: 1100px; margin: 0 auto; padding: 0 16px; }
@media (min-width: 768px) { .offer-compact { padding: 0 24px; } }
.offer-compact-inner { background: #fff; border: 1px solid #d7d8d9; border-radius: 4px; overflow: hidden; }
.offer-compact-badge { display: inline-block; padding: 6px 12px; font: 700 12px/1 Arial, Helvetica, sans-serif; color: #252a31; background: #f89021; }
.offer-compact-body { display: flex; align-items: center; gap: 20px; padding: 16px 20px; }
.offer-compact-logo { flex: 0 0 130px; }
.offer-compact-logo-img { width: 130px; height: auto; object-fit: contain; }
.offer-compact-details { flex: 1; }
.offer-compact-title { font: 600 16px/1.3 Arial, Helvetica, sans-serif; color: #252A31; margin-bottom: 6px; }
.offer-compact-points { margin: 0; padding: 0; list-style: none; }
.offer-compact-points li { position: relative; padding: 2px 0 2px 14px; font: 400 16px/1.7 Arial, Helvetica, sans-serif; color: #52636b; }
.offer-compact-points li::before { content: ''; position: absolute; left: 0; top: 10px; width: 4px; height: 4px; background: #456c94; }
.offer-compact-bonus { flex: 0 0 auto; text-align: center; padding: 10px 16px; background: rgba(69,108,148,0.04); border-radius: 8px; }
.offer-compact-amount { font: 900 44px/1 Arial, Helvetica, sans-serif; color: #242628; }
.offer-compact-label { font: 400 12px/1 Arial, Helvetica, sans-serif; color: #456c94; margin-top: 2px; }
.offer-compact-cta { flex: 0 0 auto; display: flex; flex-direction: column; align-items: center; gap: 6px; }
.offer-compact-btn { display: block; padding: 14px 32px; font: 700 17px/1 Arial, Helvetica, sans-serif; color: #2A2A2A; background: #fe9842; border-radius: 4px; text-decoration: none; transition: background .12s; white-space: nowrap; }
.offer-compact-btn:hover { background: #f58a2e; color: #2A2A2A; text-decoration: none; }
p a.offer-compact-btn, a.offer-compact-btn { color: #2A2A2A; }
.offer-compact-trust { font: 500 10px/1 Arial, Helvetica, sans-serif; color: #5f6b7d; }
.offer-compact-tc { font: 400 12px/1.4 Arial, Helvetica, sans-serif; color: #5f6b7d; padding: 8px 20px; border-top: 1px solid #eef0f2; }
.offer-compact-tc a { color: #1565c0; text-decoration: underline; }
@media (max-width: 767px) {
    .offer-compact-body { flex-wrap: wrap; gap: 12px; padding: 14px 16px; }
    .offer-compact-logo { flex: 0 0 100px; }
    .offer-compact-logo-img { width: 100px; }
    .offer-compact-details { flex: 1 1 100%; order: 2; }
    .offer-compact-bonus { flex: 1; }
    .offer-compact-cta { flex: 1; }
    .offer-compact-btn { width: 100%; text-align: center; }
    .offer-compact-amount { font-size: 36px; }
}
