/* modern_polish_20260601 — additive visual modernization, no color overrides (contrast script preserved) */

/* Subtle global typography tightening */
.content-wrapper, .article-content, .gpro_section, .review-container,
.comparison-block-xc, .bluf-block-20260513-f0cf570-20260601,
.faq-block, .testimonials-grid, .license-info, .trust-badges,
.payment-methods {
    font-feature-settings: "ss01","ss02","cv11";
    -webkit-font-smoothing: antialiased;
}

/* Card-style modernization on key blocks */
.review-container,
.gpro_section,
.comparison-block-xc,
.bluf-block-20260513-f0cf570-20260601,
.faq-accordion,
.testimonials-grid,
.license-info,
.trust-badges,
.payment-methods,
.article-content > section,
.article-content > div {
    border-radius: 14px;
    box-shadow: 0 6px 22px -10px rgba(15, 20, 35, 0.18), 0 2px 6px -2px rgba(15, 20, 35, 0.08);
    transition: transform .25s ease, box-shadow .25s ease;
}

.review-container:hover,
.gpro_section:hover,
.comparison-block-xc:hover {
    box-shadow: 0 14px 36px -14px rgba(15, 20, 35, 0.28), 0 4px 10px -2px rgba(15, 20, 35, 0.12);
}

/* Casino comparison rows: modern card chip look */
.comparison-block-xc .iv-table-row {
    border-radius: 12px;
    transition: transform .2s ease, box-shadow .25s ease;
}
.comparison-block-xc .iv-table-row:not(.mi-table-header):hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 24px -12px rgba(15, 20, 35, 0.25);
}

/* CTA buttons: modern pill + hover lift (color preserved) */
.aj-play-button, .gk-review-button, .review-cta, .sticky-footer-cta,
.exit-popup-offer-btn {
    border-radius: 999px !important;
    letter-spacing: .2px;
    transition: transform .15s ease, box-shadow .2s ease, filter .2s ease;
    box-shadow: 0 6px 16px -8px rgba(0,0,0,.35);
}
.aj-play-button:hover, .gk-review-button:hover, .review-cta:hover,
.sticky-footer-cta:hover, .exit-popup-offer-btn:hover {
    transform: translateY(-1px);
    filter: brightness(1.04);
    box-shadow: 0 10px 22px -10px rgba(0,0,0,.45);
}

/* Advantage / feature chips */
.yz-advantage-item, .celestial-advantages > div {
    border-radius: 999px;
    padding: 4px 12px;
    background: rgba(15, 20, 35, 0.06);
    backdrop-filter: blur(4px);
    transition: background .2s ease;
}
.yz-advantage-item:hover { background: rgba(15, 20, 35, 0.12); }

/* Logos: gentle frame */
.wh-casino-logo, .review-logo {
    border-radius: 10px;
    transition: transform .2s ease;
}
.wh-casino-logo:hover, .review-logo:hover { transform: scale(1.04); }

/* Payment icons: lift */
.payment-icon {
    border-radius: 10px !important;
    box-shadow: 0 2px 8px -4px rgba(0,0,0,.18);
    transition: transform .2s ease, box-shadow .2s ease;
}
.payment-icon:hover { transform: translateY(-2px); box-shadow: 0 6px 14px -6px rgba(0,0,0,.28); }

/* BLUF block polish */
.bluf-block-20260513-f0cf570-20260601 {
    box-shadow: 0 8px 24px -14px rgba(240,192,64,0.45), 0 2px 6px -2px rgba(15,20,35,0.08);
}

/* FAQ accordion modern look */
.faq-accordion details, .faq-block details {
    border-radius: 12px;
    margin-bottom: 8px;
    transition: background .2s ease;
}
.faq-accordion summary, .faq-block summary {
    border-radius: 12px;
    padding: 12px 14px;
    cursor: pointer;
}

/* Sticky footer modernization (preserve colors, refine shape) */
#stickyFooterBar, .sticky-footer-bar {
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-top: 1px solid rgba(255,255,255,0.08);
    box-shadow: 0 -6px 24px -8px rgba(0,0,0,.45) !important;
}
#stickyFooterBar .sticky-footer-cta, .sticky-footer-bar .sticky-footer-cta {
    border-radius: 999px !important;
}

/* Ensure body has padding so sticky footer never overlaps last block */
body { padding-bottom: 88px; }
@media (max-width: 480px) { body { padding-bottom: 76px; } }

/* Section vertical rhythm */
.article-content > section,
.article-content > div { margin-block: 22px; }

/* Smooth focus rings */
a:focus-visible, button:focus-visible, summary:focus-visible {
    outline: 2px solid #4c8bf5;
    outline-offset: 2px;
    border-radius: 8px;
}

/* Images render crisp */
img { image-rendering: -webkit-optimize-contrast; }

/* Prefers-reduced-motion respect */
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { transition: none !important; animation: none !important; }
}
