Theme Name: BonusHunter
Theme URI: https://bonushunter.it
Author: BonusHunter
Author URI: https://bonushunter.it
Description: Tema personalizzato per BonusHunter - Bonus Casino e Scommesse Online ADM.
Version: 1.0
Text Domain: bonushunter
*/


/* =========================================================
   HEADER
========================================================= */


/* =========================================================
   MENU
========================================================= */

/* ==========================================================
   FIX TAP / FOCUS ELEMENTI CLICCABILI
   Elimina riquadri e ombre al tocco su mobile
========================================================== */

a,
button,
img,
.site-logo,
.bh-menu-toggle,
.cover-link {
    outline: none !important;
    box-shadow: none !important;
    -webkit-tap-highlight-color: transparent;
}

a:focus,
a:focus-visible,
a:active,
button:focus,
button:focus-visible,
button:active,
.site-logo:focus,
.site-logo:active,
.cover-link:focus,
.cover-link:active,
.bh-menu-toggle:focus,
.bh-menu-toggle:active {
    outline: none !important;
    box-shadow: none !important;
    -webkit-tap-highlight-color: transparent;
}

.bh-menu{
    position:relative;
    width:0;
    height:0;
    padding:0;
    margin:0;
    background:transparent;
    border:0;
    box-shadow:none;
    z-index:999999;
}

.bh-menu ul,
.bh-menu li{
    list-style:none !important;
    margin:0 !important;
    padding:0 !important;
}

.bh-menu .main-menu,
.bh-menu > ul{
    display:flex !important;
    flex-direction:column;
    gap:10px;
    position:static !important;
    width:100%;
    height:auto;
    margin:0 !important;
    padding:0 !important;
    background:transparent;
    box-shadow:none;
}

.bh-menu.active .main-menu,
.bh-menu.active > ul{
    left:0;
}

.bh-menu a{
    display:flex;
    justify-content:center;
    width:100%;
    color:#fff !important;
    text-decoration:none !important;
    font-weight:800;
    padding:13px 18px;
    border-radius:999px;
    background:rgba(15,23,42,.92);
    border:1px solid #334155;
}

.bh-menu a:hover{
    background:#334155;
    color:#facc15 !important;
}

.bh-menu .current-menu-item > a,
.bh-menu .current_page_item > a{
    background:#22c55e;
    color:#000 !important;
    border-color:#22c55e;
}

.bh-menu-toggle{
    font-weight:900;
    position:fixed;
    top:16px;
    left:16px;
    width:50px;
    height:50px;
    max-width:none;
    margin:0;
    padding:0;
    border:0;
    border-radius:50%;
    background:#facc15;
    color:#000;
    font-size:26px;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    z-index:1000000;
    box-shadow:0 8px 24px rgba(0,0,0,.4);
}

.hamburger-icon{
    display:block;
    line-height:1;
}

.menu-panel{
    position:fixed;
    top:0;
    left:-100%;
    width:min(80vw,1100px);
    max-width:80vw;
    height:100dvh;
    padding:76px 24px 24px;
    background:radial-gradient(
            circle at top right,
            rgba(37,99,235,.20),
            transparent 38%
        ),
        linear-gradient(145deg,#071426,#0b1d39,#0f172a);
    overflow-y:auto;
    overflow-x:hidden;
    transition:left .32s ease;
    z-index:999999;
    box-shadow:12px 0 45px rgba(0,0,0,.55);
    border-right:1px solid rgba(250,204,21,.22);
}

.bh-menu.active .menu-panel{
    left:0;
}

.menu-overlay{
    position:fixed;
    inset:0;
    background:rgba(2,6,23,.70);
    backdrop-filter:blur(3px);
    opacity:0;
    visibility:hidden;
    transition:opacity .3s ease, visibility .3s ease;
    z-index:999998;
}

.bh-menu.active .menu-overlay{
    opacity:1;
    visibility:visible;
}

.menu-close{
    position:fixed;
    top:17px;
    left:-100px;
    width:44px;
    height:44px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:0;
    border-radius:50%;
    background:#facc15;
    color:#000;
    font-size:21px;
    font-weight:900;
    cursor:pointer;
    transition:left .32s ease, transform .2s ease;
    z-index:1000001;
    box-shadow:0 8px 24px rgba(0,0,0,.40);
}

.bh-menu.active .menu-close{
    left:calc(min(80vw,1100px) - 60px);
}

.menu-close:hover{
    transform:scale(1.06);
}

.menu-layout{
    display:grid;
    grid-template-columns:minmax(180px,235px) minmax(0,1fr);
    gap:28px;
    align-items:start;
    width:100%;
}

.menu-column-title{
    margin:0 0 14px;
    color:#facc15;
    font-size:.82rem;
    font-weight:900;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.menu-main-column{
    min-width:0;
}

.bh-menu .main-menu,
.bh-menu .menu-main-column > ul{
    display:flex !important;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
    position:static !important;
    width:max-content;
    max-width:100%;
    height:auto;
    margin:0 !important;
    padding:0 !important;
    background:transparent;
    box-shadow:none;
}

.bh-menu .main-menu li,
.bh-menu .menu-main-column > ul li{
    width:100%;
    margin:0 !important;
    padding:0 !important;
}

.bh-menu .main-menu a,
.bh-menu .menu-main-column > ul a{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    width:100%;
    min-width:170px;
    padding:11px 16px;
    border:1px solid #334155;
    border-radius:12px;
    background:rgba(15,23,42,.88);
    color:#fff !important;
    font-size:.94rem;
    font-weight:800;
    line-height:1.2;
    white-space:pre-wrap;
    text-decoration:none !important;
    transition:background .2s ease,
        border-color .2s ease,
        color .2s ease,
        transform .2s ease;
}

.bh-menu .main-menu a:hover,
.bh-menu .menu-main-column > ul a:hover{
    background:#1e3a5f;
    border-color:rgba(250,204,21,.55);
    color:#facc15 !important;
    transform:translateX(3px);
}

.bh-menu .main-menu .current-menu-item > a,
.bh-menu .main-menu .current_page_item > a{
    background:linear-gradient(135deg,#facc15,#eab308);
    border-color:#facc15;
    color:#000 !important;
}

.menu-updates{
    margin-top:22px;
    padding:16px;
    background:radial-gradient(
            circle at top right,
            rgba(250,204,21,.13),
            transparent 45%
        ),
        rgba(15,23,42,.88);
    border:1px solid rgba(250,204,21,.30);
    border-radius:16px;
}

.menu-updates h3{
    margin:0 0 9px;
    color:#fff;
    font-size:1rem;
}

.menu-updates p{
    margin:0;
    color:#cbd5e1;
    font-size:.84rem;
    line-height:1.5;
}

.menu-updates-status{
    margin-top:12px;
    padding:9px 11px;
    border-radius:9px;
    background:#1e293b;
    color:#94a3b8;
    font-size:.77rem;
    font-weight:700;
    text-align:center;
}

.menu-featured-column{
    min-width:0;
}

.menu-featured-grid{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
}

.menu-featured-card{
    display:grid;
    grid-template-columns:112px minmax(0,1fr);
    grid-template-rows:auto auto auto;
    column-gap:14px;
    align-items:center;
    padding:13px;
    background:radial-gradient(
            circle at top right,
            rgba(59,130,246,.15),
            transparent 42%
        ),
        rgba(15,23,42,.90);
    border:1px solid #334155;
    border-radius:17px;
    overflow:hidden;
    min-width:0;
}

.menu-featured-card.hunterissimo-card{
    border-color:rgba(250,204,21,.36);
    background:radial-gradient(
            circle at top right,
            rgba(250,204,21,.15),
            transparent 42%
        ),
        rgba(15,23,42,.92);
}

.menu-featured-label{
    grid-column:1 / -1;
    margin-bottom:10px;
    color:#facc15;
    font-size:.78rem;
    font-weight:900;
    letter-spacing:.04em;
    text-transform:uppercase;
}

.bh-menu .menu-featured-image{
    grid-column:1;
    grid-row:2 / 4;
    display:block;
    width:112px;
    height:82px;
    padding:0;
    border:0;
    border-radius:12px;
    background:transparent;
    overflow:hidden;
}

.menu-featured-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:12px;
    transition:transform .3s ease;
}

.menu-featured-image:hover img{
    transform:scale(1.05);
}

.menu-featured-card h3{
    grid-column:2;
    grid-row:2;
    margin:0 0 7px;
    min-width:0;
    font-size:.96rem;
    line-height:1.3;
}

.bh-menu .menu-featured-card h3 a{
    display:block;
    width:auto;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    color:#fff !important;
    font-weight:850;
    text-decoration:none !important;
    overflow-wrap:anywhere;
}

.bh-menu .menu-featured-card h3 a:hover{
    color:#facc15 !important;
    background:transparent;
}

.bh-menu .menu-featured-link{
    grid-column:2;
    grid-row:3;
    display:inline-flex;
    justify-content:flex-start;
    width:max-content;
    max-width:100%;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    color:#60a5fa !important;
    font-size:.79rem;
    font-weight:800;
    text-decoration:none !important;
}

.bh-menu .hunterissimo-card .menu-featured-link{
    color:#facc15 !important;
}

.bh-menu .menu-featured-link:hover{
    background:transparent;
    text-decoration:underline !important;
}

.menu-featured-card > p{
    grid-column:1 / -1;
    margin:0;
    color:#cbd5e1;
    font-size:.86rem;
    line-height:1.5;
}

.menu-social{
    margin-top:18px;
    padding-top:16px;
    border-top:1px solid rgba(255,255,255,.12);
}

.menu-social h3{
    margin:0 0 10px;
    color:#fff;
    font-size:.92rem;
}

.menu-social-links{
    display:flex;
    flex-wrap:wrap;
    gap:9px;
}

.bh-menu .menu-social-links a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:auto;
    min-width:0;
    margin:0;
    padding:9px 12px;
    border:0;
    border-radius:10px;
    color:#fff !important;
    font-size:.82rem;
    font-weight:850;
    text-decoration:none !important;
    white-space:nowrap;
}

.bh-menu .menu-social-instagram{
    background:linear-gradient(
        135deg,
        #833ab4,
        #fd1d1d,
        #fcb045
    ) !important;
}

.bh-menu .menu-social-facebook{
    background:#1877f2 !important;
}

.bh-menu .menu-social-youtube{
    background:#ff0000 !important;
}

.bh-menu .menu-social-links a:hover{
    filter:brightness(1.12);
    transform:translateY(-1px);
}

.menu-signature{
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:8px 18px;
    margin-top:23px;
    padding-top:17px;
    border-top:1px solid rgba(250,204,21,.22);
    color:#94a3b8;
    font-size:.78rem;
}

.menu-signature strong{
    color:#facc15;
    font-size:.88rem;
    letter-spacing:.04em;
}

.menu-signature span{
    text-align:right;
}

body:has(.bh-menu.active) #yt-mini{
    top:76px;
}

.bh-menu .menu-social-links{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:9px;

    width:fit-content;
    max-width:100%;
}

.bh-menu .menu-social-links > a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;

    width:auto;
    min-width:0;
    min-height:38px;

    margin:0;
    padding:6px 11px;

    box-sizing:border-box;
    border-radius:10px;

    font-size:.82rem;
    font-weight:700;
    line-height:1;

    text-align:center;
    text-decoration:none;
    white-space:nowrap;
}

.bh-menu .menu-social-icon{
    flex:0 0 auto;
    line-height:1;
}

.bh-menu .menu-social-text{
    line-height:1;
}

.bh-menu .menu-social-links > a.menu-social-contact{
    grid-column: auto;
    width: auto;
    background:#facc15;
    color:#0f172a !important;
    -webkit-text-fill-color:#0f172a !important;
}

.bh-menu .menu-social-links > a.menu-social-contact:hover,
.bh-menu .menu-social-links > a.menu-social-contact:focus{
    background:#2563eb;
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
}

/* =========================================================
   HERO E COPERTINE
========================================================= */

.hero{
    padding:80px 20px;
    text-align:center;
    background:linear-gradient(135deg,#111827,#1e3a8a);
}

.hero h1{
    font-size:clamp(2rem,5vw,4rem);
    margin:0;
}

.hero p{
    max-width:900px;
    margin:20px auto;
    line-height:1.7;
}

.site-logo{
    display:block;
    width:220px;
    max-width:80%;
    height:auto;
    margin:0 auto 20px;
    animation:floatLogo 4s ease-in-out infinite;
}

.match-hero{
    width:100%;
    max-width:1360px;
    margin:2px auto 18px;
    padding:0 8px;
    overflow:hidden;
}

.cover-link,
.match-hero-image{
    display:block;
    width:100%;
    max-width:100%;
    overflow:hidden;
    text-decoration:none !important;
    outline:none !important;
}

.match-hero-image{
    border-radius:18px;
    box-shadow:none;
    border:none;
    transition:transform .3s ease;
    cursor:pointer;
}

.cover-link:hover .match-hero-image{
    transform:translateY(-2px);
    box-shadow:none;
}

.match-hero-image img{
    display:block;
    width:100%;
    max-width:100%;
    height:auto;
    object-fit:cover;
    border-radius:18px;
    box-shadow:none;
    border:none;
}

.match-hero-box{
    margin-top:25px;
    background:linear-gradient(135deg,#111827,#1e293b);
    border-left:6px solid #facc15;
    padding:28px;
    border-radius:20px;
}

.match-hero-box h1{
    margin:0 0 16px 0;
    font-size:clamp(2rem,4vw,3.2rem);
}

.match-hero-box h2{
    margin:0 0 16px 0;
    font-size:clamp(1.7rem,4vw,2.7rem);
}

.match-hero-box p{
    margin:0;
    line-height:1.7;
    font-size:1.05rem;
    color:#cbd5e1;
}

.post-thumbnail img{
    width:100%;
    height:auto;
    display:block;
    border-radius:18px;
}


/* =========================================================
   CARD, BADGE E BOTTONI
========================================================= */

a:not(.btn):not(.cta){
    color:#facc15 !important;
    text-decoration:none;
}

a:not(.btn):not(.cta):hover{
    text-decoration:underline;
}

.card{
    background:radial-gradient(circle at top right, rgba(59,130,246,.12), transparent 35%),
        linear-gradient(135deg,#1e293b,#0f172a);
    border:1px solid #334155;
    border-radius:20px;
    padding:20px;
    position:relative;
    box-shadow:0 10px 25px rgba(0,0,0,.3);
    display:flex;
    flex-direction:column;
    min-height:100%;
    width:100%;
    max-width:100%;
    min-width:0;
    overflow:visible;
}

.card.top-card{
    background:radial-gradient(circle at top right, rgba(250,204,21,.25), transparent 36%),
        linear-gradient(135deg,#2b1d00,#5a4200,#1e293b);
    border:2px solid #facc15;
    box-shadow:0 0 20px rgba(250,204,21,.22),
        0 18px 40px rgba(0,0,0,.45);
}

.card p{
    line-height:1.55;
}

.badge{
    position:absolute;
    top:10px;
    right:10px;
    background:#22c55e;
    color:#000;
    padding:6px 12px;
    border-radius:999px;
    font-weight:900;
    z-index:5;
    max-width:calc(100% - 20px);
    white-space:normal;
}

.card.top-card .badge{
    background:#facc15;
    color:#000;
    animation:none;
}

.brand{
    font-size:1.7rem;
    font-weight:bold;
    margin-top:24px;
    padding-right:90px;
    overflow-wrap:anywhere;
    word-break:break-word;
}

.card.top-card .brand{
    color:#facc15;
    text-shadow:0 0 8px rgba(250,204,21,.25);
}

.card.top-card .tag{
    background:rgba(250,204,21,.16);
    color:#fff;
    border:1px solid rgba(250,204,21,.35);
}

.btn,
.cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:#facc15;
    color:#000 !important;
    padding:12px 18px;
    text-decoration:none;
    border-radius:10px;
    font-weight:bold;
    text-align:center;
    line-height:1.2;
    min-height:46px;
    border:0;
    cursor:pointer;
}

.cta{
    display:inline-block;
    margin-top:10px;
    padding:14px 24px;
    border-radius:30px;
}

.bonus-buttons{
    margin-top:auto;
    padding-top:18px;
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    align-items:center;
}

.bonus-buttons .btn{
    flex:0 0 auto;
    width:auto;
    min-width:135px;
    max-width:190px;
    margin:0;
    white-space:nowrap;
}

.card > a.btn,
.card > span.btn{
    width:auto;
    min-width:135px;
    max-width:190px;
    align-self:flex-start;
    margin-top:10px;
    white-space:nowrap;
}

.card > a.btn:first-of-type,
.card > span.btn:first-of-type{
    margin-top:auto;
}

.secondary-btn{
    background:#2563eb !important;
    color:#fff !important;
}

.secondary-btn:hover{
    background:#1d4ed8 !important;
}

.disabled-btn{
    background:#64748b !important;
    color:#fff !important;
    opacity:.65;
    pointer-events:none;
    cursor:not-allowed;
}

.free-tag{
    display:inline-flex;
    align-items:center;
    gap:6px;
    align-self:flex-start;
    background:#22c55e;
    color:#000;
    font-weight:900;
    padding:7px 12px;
    border-radius:999px;
    margin:10px 0 14px;
    position:relative;
    max-width:100%;
    white-space:normal;
}

.info-icon{
    position:static;
    cursor:pointer;
}

.tooltip{
    visibility:hidden;
    opacity:0;
    position:fixed;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    display:block;
    white-space:normal !important;
    overflow-wrap:anywhere;
    width:calc(100vw - 30px);
    max-width:420px;
    background:#1d4ed8;
    color:#fff;
    border:2px solid #3b82f6;
    border-radius:18px;
    padding:20px;
    font-size:.95rem;
    line-height:1.5;
    z-index:99999999 !important;
    pointer-events:auto;
    box-shadow:0 20px 50px rgba(0,0,0,.6);
    transition:.2s;
}

.info-icon:hover .tooltip,
.info-icon:focus .tooltip{
    visibility:visible;
    opacity:1;
}

.guide-section{
    background:linear-gradient(135deg,#06121f,#0f172a,#111827);
    padding:34px;
    border-radius:28px;
    margin-top:34px;
    border:1px solid rgba(56,189,248,.28);
    box-shadow:0 20px 55px rgba(0,0,0,.35);
    width:100%;
    max-width:100%;
    overflow:hidden;
}

.guide-section h2{
    text-align:center;
    margin-top:0;
    color:#e0f2fe;
}

.guide-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:22px;
    width:100%;
    max-width:100%;
}

.guide-card{
    background:radial-gradient(circle at top right, rgba(56,189,248,.18), transparent 35%),
        linear-gradient(135deg,#082f49,#0f172a);
    border:1px solid rgba(56,189,248,.35);
}

.guide-card .brand{
    color:#38bdf8;
}

.book-logo img{
    max-width:170px;
    max-height:60px;
    display:block;
    margin:0 auto;
    width:100%;
    height:100%;
    object-fit:cover;
}

.book-logo{
    text-align:center;
    margin:10px 0 15px;
    border-radius:50%;
    overflow:hidden;
    background:#fff;
    border:2px solid #ececec;
    display:flex;
    justify-content:center;
    align-items:center;
    flex-shrink:0;
    width:90px;
    height:90px;
    flex:0 0 90px;
}

.card-header{
    display:flex;
    align-items:center;
    gap:15px;
    flex-wrap:nowrap;
    position:relative;
    margin-bottom:15px;
    padding:0;
}

.book-info{
    flex:1;
    min-width:0;
}

.book-info .brand{
    margin-top:0;
    padding-right:0;
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
    overflow-wrap:normal;
    word-break:normal;
    font-size:clamp(1rem, 2vw, 1.25rem);
    line-height:1.2;
}

.no-deposit-badge{
    background:linear-gradient(135deg,#2563eb,#1d4ed8);
    color:#fff;
    border:1px solid rgba(255,255,255,.18);
    animation:pulseTop 2s infinite;
}

.card.top-card .no-deposit-badge{
    background:linear-gradient(135deg,#2563eb,#1d4ed8);
    color:#fff;
}

.card-badges{
    display:flex;
    justify-content:flex-end;
    align-items:center;
    flex-wrap:nowrap;
    gap:10px;
    min-height:32px;
    margin-bottom:8px;
}

.card-badges .cashback-badge{
    background:#f97316;
    color:#fff;
    animation:none !important;
}

.card-badges .badge{
    position:static !important;
    top:auto !important;
    right:auto !important;
    margin:0;
    white-space:nowrap !important;
    font-size:.72rem;
    line-height:1;
    padding:5px 9px;
}

.card:has(.info-icon:focus){
    z-index:99999998;
}

.sport-no-deposit-badge{
    background:linear-gradient(135deg,#7c3aed,#5b21b6) !important;
    color:#fff !important;
    border:1px solid rgba(255,255,255,.2);
    animation:none !important;
}

.review-offer-card{
    border:1px solid rgba(250,204,21,.35);
    background:radial-gradient(circle at top right, rgba(250,204,21,.12), transparent 38%),
        linear-gradient(135deg,#1e293b,#0f172a);
    box-shadow:0 18px 45px rgba(0,0,0,.38);
}

.review-card-label{
    margin-top:5px;
    color:#94a3b8;
    font-size:.88rem;
    font-weight:700;
}

.review-offer-content{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
    margin-top:10px;
}

.review-offer-section{
    background:rgba(15,23,42,.78);
    border:1px solid #334155;
    border-radius:16px;
    padding:16px;
}

.review-offer-section p{
    margin:8px 0 0;
}

.review-offer-title{
    display:block;
    color:#facc15;
    font-size:1.05rem;
}

.review-adm,
.review-responsible{
    display:flex;
    align-items:center;
    gap:8px;
}

.review-adm img{
    width:38px;
    height:38px;
    object-fit:contain;
    background:#fff;
    border-radius:8px;
    padding:3px;
}

.review-responsible strong{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:32px;
    height:32px;
    border-radius:50%;
    background:#ef4444;
    color:#fff;
}

.review-responsible a{
    color:#facc15 !important;
    text-decoration:none !important;
    font-weight:700;
}


/* =========================================================
   BANNER E CTA
========================================================= */

/* ---------------------------------------------------------
   COOKIE BANNER
--------------------------------------------------------- */

#cookie-banner{
    position:fixed;
    left:50%;
    bottom:22px;
    transform:translateX(-50%);
    width:calc(100% - 30px);
    max-width:720px;
    z-index:99999;
    display:none;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    background:rgba(15,23,42,.96);
    color:#fff;
    border:1px solid rgba(250,204,21,.45);
    border-radius:22px;
    padding:18px 20px;
    box-shadow:0 18px 50px rgba(0,0,0,.55);
    backdrop-filter:blur(10px);
}

#cookie-banner p{
    margin:0;
    font-size:.95rem;
    line-height:1.45;
}

#cookie-banner button{
    border:0;
    background:#facc15;
    color:#000;
    padding:12px 22px;
    border-radius:999px;
    font-weight:800;
    cursor:pointer;
}

/* ---------------------------------------------------------
   BONUS HUNT - CASINO CONSIGLIATI
--------------------------------------------------------- */

.hunt-casinos{
    margin-top:40px;
}

.hunt-casinos h2{
    text-align:center;
    margin-bottom:30px;
}

.casino-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:24px;
}

.casino-banner{
    border-radius:24px;
    padding:28px;
    position:relative;
    overflow:hidden;
    min-height:320px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    box-shadow:0 18px 50px rgba(0,0,0,.4);
}

.starcasino{
    background:radial-gradient(circle at top right, rgba(34,197,94,.25), transparent 40%),
    linear-gradient(135deg,#07140c,#052012);
    border:1px solid rgba(34,197,94,.35);
}

.casino-top{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:20px;
}

.casino-top h3{
    margin:0;
    font-size:2rem;
}

.casino-badge{
    background:#22c55e;
    color:#000;
    font-weight:800;
    padding:6px 12px;
    border-radius:999px;
    font-size:.8rem;
}

.casino-badge.soon{
    background:#a855f7;
    color:#fff;
}

.offer-box{
    line-height:1.6;
}

.offer-main{
    font-size:1.35rem;
    font-weight:800;
}

.casino-btn{
    display:inline-block;
    text-align:center;
    background:#facc15;
    color:#000 !important;
    text-decoration:none !important;
    padding:14px 22px;
    border-radius:999px;
    font-weight:900;
}

.casino-no-deposit-badge{
    background:linear-gradient(135deg,#7c3aed,#5b21b6) !important;
    color:#fff !important;
    border:1px solid rgba(255,255,255,.2);
    animation:none !important;
}

/* ---------------------------------------------------------
   CTA - SCOPRI TUTTI I BONUS
--------------------------------------------------------- */

.all-bonus-cta{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:22px;
    width:100%;
    margin:28px auto;
    padding:28px;
    overflow:hidden;
    background:radial-gradient(
            circle at top right,
            rgba(250,204,21,.18),
            transparent 38%
        ),
        linear-gradient(135deg,#0f172a,#1e293b);
    border:1px solid rgba(250,204,21,.35);
    border-radius:22px;
    text-align:left;
}

.all-bonus-cta::before{
    content:"";
    position:absolute;
    inset:0;
    pointer-events:none;
    background:linear-gradient(
            120deg,
            transparent 20%,
            rgba(255,255,255,.05) 45%,
            transparent 70%
        );
}

.all-bonus-cta-icon{
    position:relative;
    z-index:1;
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 72px;
    width:72px;
    height:72px;
    border-radius:50%;
    background:linear-gradient(135deg,#facc15,#eab308);
    color:#111827;
    font-size:2rem;
    box-shadow:0 12px 28px rgba(0,0,0,.30);
}

.all-bonus-cta-content{
    position:relative;
    z-index:1;
    max-width:760px;
}

.all-bonus-cta h2{
    margin:0 0 10px;
    color:#ffffff;
    font-size:clamp(1.35rem,3vw,2rem);
    line-height:1.2;
}

.all-bonus-cta p{
    margin:0 0 18px;
    color:#cbd5e1;
    line-height:1.6;
}

.all-bonus-cta .all-bonus-btn,
.all-bonus-cta a.all-bonus-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:50px;
    padding:14px 24px;
    border:1px solid #facc15;
    border-radius:12px;
    background:linear-gradient(135deg,#facc15,#eab308);
    color:#111827 !important;
    font-size:18px;
    font-weight:900;
    line-height:1.2;
    text-decoration:none !important;
    text-shadow:none !important;
    box-shadow:0 10px 24px rgba(0,0,0,.28);
    transition:transform .2s ease,
        box-shadow .2s ease,
        background .2s ease;
}

.all-bonus-cta .all-bonus-btn:link,
.all-bonus-cta .all-bonus-btn:visited,
.all-bonus-cta .all-bonus-btn:focus,
.all-bonus-cta .all-bonus-btn:active{
    color:#111827 !important;
    text-decoration:none !important;
}

.all-bonus-cta .all-bonus-btn:hover{
    background:linear-gradient(135deg,#fde047,#facc15);
    color:#0f172a !important;
    transform:translateY(-2px);
    box-shadow:0 14px 30px rgba(250,204,21,.20);
}

.all-bonus-cta small{
    display:block;
    margin-top:11px;
    color:#94a3b8;
    font-size:.78rem;
    line-height:1.4;
}


/* =========================================================
   SLOT
========================================================= */

/* =========================================================
   SLOT - CARD UNIFORMI ALLE VETRINE BONUS HUNTER
   ========================================================= */

.slot-cta-box .btn{
    display:block;
    margin-bottom:18px;
}

.slot-cta-box .btn:last-child{
    margin-bottom:0;
}

.slot-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:18px;
}

.slot-card{
    display:flex;
    flex-direction:column;
    min-width:0;
    margin:0;
    padding:16px;
    overflow:hidden;
    background:#1e293b;
    border:1px solid rgba(255,255,255,0.10);
    border-radius:16px;
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease;
}

.slot-card:hover{
    transform:translateY(-4px);
    border-color:#facc15;
    box-shadow:0 14px 28px rgba(0,0,0,0.28);
}

.slot-card-image img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    object-position: center;
    background: #111827;
    border-radius: 14px;
    transition: transform 0.25s ease;
}

.slot-card-content{
    display:flex;
    flex:1;
    flex-direction:column;
    width:100%;
}

.slot-card-excerpt{
    margin-bottom:16px;
}

.slot-card-button{
    width:100%;
    margin-top:auto;
}

.slot-card:hover img{
    transform:scale(1.035);
}

.slot-card h2,
.slot-card h3{
    margin:16px 0 10px;
    color:#ffffff;
    font-size:1.08rem;
    line-height:1.35;
    text-align:center;
}

.slot-card h2 a,
.slot-card h3 a,
.slot-card h2 a:visited,
.slot-card h3 a:visited{
    color:#ffffff;
    text-decoration:none;
}

.slot-card .btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    margin-top:auto;
    padding:10px 16px;
    background:#2563eb;
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    font-size:0.9rem;
    font-weight:800;
    line-height:1.2;
    text-align:center;
    text-decoration:none;
    border-radius:10px;
}

.slot-card .btn:link,
.slot-card .btn:visited,
.slot-card .btn:hover,
.slot-card .btn:focus,
.slot-card .btn:active{
    color:#ffffff !important;
    -webkit-text-fill-color:#ffffff !important;
    text-decoration:none;
}

.slot-quick-link a{
    color:#facc15;
    font-weight:800;
    text-decoration:none;
}

.slot-quick-link a:hover{
    color:#facc15;
    text-decoration:underline;
}

@media (max-width:640px){

    .slot-grid{
        grid-template-columns:1fr;
        gap:18px;
    }

    /*
     * Card verticale su smartphone:
     * immagine, contenuto e pulsante.
     */
    .slot-card{
        display:flex;
        flex-direction:column;
        align-items:stretch;
        padding:14px;
    }

    .slot-card-image{
        display:block;
        width:100%;
    }

    .slot-card-image img {
        display:block;
        width:100%;
        height:auto;
        aspect-ratio:1 / 1;
        object-fit:cover;
        grid-row:auto;
    }

    .slot-card-content{
        display:flex;
        flex:1;
        flex-direction:column;
        width:100%;
    }

    .slot-card h2,
    .slot-card h3{
        margin:14px 0 10px;
        font-size:1.05rem;
        line-height:1.35;
        text-align:center;
    }

    .slot-card-excerpt{
        width:100%;
        margin:0 0 16px;
        line-height:1.5;
        text-align:left;
    }

    .slot-card .btn{
        align-self:stretch;
        justify-self:auto;
        width:100%;
        min-height:40px;
        margin-top:auto;
        padding:10px 14px;
        font-size:0.86rem;
    }
}


/* =========================================================
   SLOT - ALTRE SLOT RECENSITE / SLOT CORRELATE
   Mostrate in fondo alle singole recensioni slot
========================================================= */

.bh-related-slots{
    margin-top:40px;
}

.bh-related-slots > h2{
    margin-bottom:22px;
}

.bh-related-slots-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:22px;
}

.bh-related-slot-card{
    display:flex;
    flex-direction:column;
    overflow:hidden;
    background:#1e293b;
    border:1px solid rgba(255,255,255,0.08);
    border-radius:18px;
    box-shadow:0 12px 28px rgba(0,0,0,0.22);
    transition:transform 0.25s ease, box-shadow 0.25s ease;
}

.bh-related-slot-card:hover{
    transform:translateY(-4px);
    box-shadow:0 16px 34px rgba(0,0,0,0.30);
}

.bh-related-slot-image{
    display:block;
    position:relative;
    width:100%;
    aspect-ratio:16 / 9;
    overflow:hidden;
    background:#0f172a;
}

.bh-related-slot-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform 0.35s ease;
}

.bh-related-slot-card:hover .bh-related-slot-image img{
    transform:scale(1.04);
}

.bh-related-slot-content{
    display:flex;
    flex-direction:column;
    flex:1;
    gap:16px;
    padding:18px;
}

.bh-related-slot-content h3{
    margin:0;
    font-size:1.12rem;
    line-height:1.35;
}

.bh-related-slot-content h3 a{
    color:#fff;
    text-decoration:none;
}

.bh-related-slot-content h3 a:hover{
    color:#facc15;
}

.bh-related-slot-content .btn{
    margin-top:auto;
    width:100%;
    text-align:center;
    justify-content:center;
}

/* =========================================================
   NEWS - ALTRE NEWS CORRELATE
   Desktop: 3 card
   Tablet: 2 card
   Mobile: 3 card in colonna
========================================================= */

.bh-related-news{
    width:100%;
    margin-top:40px;
}

.bh-related-news > h2{
    margin-bottom:22px;
}

.bh-related-news-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:22px;
}

.bh-related-news-card{
    display:flex;
    flex-direction:column;
    min-width:0;
    overflow:hidden;
    background:#1e293b;
    border:1px solid rgba(255,255,255,0.08);
    border-radius:18px;
    box-shadow:0 12px 28px rgba(0,0,0,0.22);
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease;
}

.bh-related-news-card:hover{
    transform:translateY(-4px);
    border-color:#facc15;
    box-shadow:0 16px 34px rgba(0,0,0,0.30);
}

.bh-related-news-image{
    display:block;
    position:relative;
    width:100%;
    aspect-ratio:16 / 9;
    overflow:hidden;
    background:#0f172a;
}

.bh-related-news-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:cover;
    transition:transform 0.35s ease;
}

.bh-related-news-card:hover .bh-related-news-image img{
    transform:scale(1.04);
}

.bh-related-news-content{
    display:flex;
    flex-direction:column;
    flex:1;
    gap:12px;
    padding:18px;
}

.bh-related-news-date{
    margin:0;
    color:#94a3b8;
    font-size:0.84rem;
    font-weight:700;
}

.bh-related-news-content h3{
    margin:0;
    color:#ffffff;
    font-size:1.12rem;
    line-height:1.35;
}

.bh-related-news-content h3 a,
.bh-related-news-content h3 a:visited{
    color:#ffffff !important;
    text-decoration:none !important;
}

.bh-related-news-content h3 a:hover{
    color:#facc15 !important;
}

.bh-related-news-content p{
    margin:0;
    color:#cbd5e1;
    line-height:1.55;
}

.bh-related-news-content .btn{
    width:100%;
    margin-top:auto;
    text-align:center;
    justify-content:center;
}

.bh-related-news-footer{
    display:flex;
    justify-content:center;
    margin-top:24px;
}

.bh-related-news-footer .btn{
    min-width:220px;
    text-align:center;
    justify-content:center;
}

/* TABLET: 2 colonne e soltanto 2 card visibili */

@media (min-width:601px) and (max-width:900px){

    .bh-related-news-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .bh-related-news-card:nth-child(n+3){
        display:none;
    }

}

/* SMARTPHONE: tutte e 3 le card in colonna */

@media (max-width:600px){

    .bh-related-news-grid{
        grid-template-columns:1fr;
        gap:18px;
    }

    .bh-related-news-card:nth-child(n+3){
        display:flex;
    }

    .bh-related-news-content{
        padding:16px;
    }

}

/* =========================================================
   NEWS
========================================================= */

.news-categories{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin-top:20px;
}

.news-categories a{
    background:#0f172a;
    color:#facc15 !important;
    padding:10px 16px;
    border-radius:999px;
    border:1px solid #334155;
    font-weight:800;
}

.news-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}

.news-card{
    display:flex;
    flex-direction:column;
    min-width:0;
    overflow:hidden;
    background:#1e293b;
    border:1px solid #334155;
    border-radius:20px;
    box-shadow:0 12px 30px rgba(0,0,0,.35);
}

.news-thumb{
    display:block;
    width:100%;
    aspect-ratio:16 / 9;
    overflow:hidden;
    background:#111827;
}

.news-thumb img{
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
    background:#111827;
}

.news-card-content{
    display:flex;
    flex:1;
    flex-direction:column;
    padding:20px;
}

.news-card-content .btn{
    width:100%;
    margin-top:auto;
    justify-content:center;
}

.news-date{
    font-size:.9rem;
    color:#cbd5e1;
    margin-bottom:10px;
}

.news-card h2{
    font-size:1.25rem;
    margin:0 0 12px;
}

.news-card p{
    line-height:1.55;
}

.news-article .bonus-buttons{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}

.news-article .bonus-buttons .btn{
    max-width:100%;
    white-space:normal !important;
    line-height:1.25;
    text-align:center;
    flex:1 1 220px;
}

.hunterissimo-posts-section{
    width:100%;
    margin-top:36px;
}

.hunterissimo-section-heading{
    margin-bottom:22px;
}

.hunterissimo-eyebrow{
    display:block;
    margin-bottom:8px;
    color:#facc15;
    font-size:.82rem;
    font-weight:900;
    letter-spacing:.10em;
    text-transform:uppercase;
}


/* =========================================================
   FOOTER
========================================================= */

.site-footer,
footer{
    background:#111827;
    color:#cbd5e1;
    text-align:center;
    padding:40px 20px;
    margin-top:60px;
    border-top:1px solid #334155;
}

.site-footer a{
    color:#facc15;
    text-decoration:none;
}

.footer-links{
    margin-top:10px;
    font-size:.9rem;
}

.footer-grid{
    display:grid;
    grid-template-columns:1.4fr 1fr 1fr 1fr;
    gap:32px;
    text-align:left;
    align-items:start;
}

.footer-column p{
    margin:0 0 14px;
    line-height:1.6;
}

.footer-column ul{
    list-style:none;
    margin:0;
    padding:0;
}

.footer-column li{
    margin-bottom:10px;
}

.footer-social{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
    margin-top:18px;
    justify-content:flex-start;
    align-items:center;
}

.footer-social a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:9px 12px;
    border-radius:10px;
    background:#1e293b;
    border:1px solid #334155;
    font-weight:700;
}

.footer-bottom{
    margin-top:30px;
    padding-top:22px;
    border-top:1px solid #334155;
    text-align:center;
    color:#94a3b8;
}

.footer-bottom p{
    margin:6px 0;
}

.footer-column h3{
    margin:0 0 16px;
    font-size:1.1rem;
    color:#facc15;
}

.footer-column a{
    text-decoration:none !important;
    color:#cbd5e1 !important;
}

.footer-column a:hover{
    color:#facc15 !important;
}

.footer-about p,
.footer-bottom{
    color:#cbd5e1;
}

.site-footer .footer-column h3{
    color:#ffffff !important;
}

.review-card-footer{
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:14px;
    margin-top:20px;
    padding-top:16px;
    border-top:1px solid #334155;
    color:#cbd5e1;
    font-size:.82rem;
}

.footer-legal-social{
    display:grid;
    grid-template-columns:minmax(0,1.4fr) minmax(0,2.6fr);
    align-items:center;
    gap:32px;

    width:100%;
    margin-top:30px;
}

.footer-legal-social .bh-adm-box{
    margin-top:0;
}

.footer-legal-social-links{
    justify-content:flex-start;
    margin-top:0;
}


/* =========================================================
   UTILITY, LAYOUT, FORM E COMPONENTI SECONDARI
========================================================= */

*{
    box-sizing:border-box;
}

html,
body{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
}

body{
    margin:0;
    font-family:Arial,sans-serif;
    background:#0f172a;
    color:#fff;
}

img,
iframe,
video{
    max-width:100%;
    height:auto;
}

.container{
    width:100%;
    max-width:1280px;
    margin:0 auto;
    padding:20px;
    overflow-x:hidden;
}

.section-title{
    text-align:center;
    margin:50px 0 30px;
    font-size:2rem;
}

.grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(300px,1fr));
    gap:20px;
    width:100%;
    max-width:100%;
}

.tag{
    display:inline-block;
    align-self:flex-start;
    padding:6px 10px;
    border-radius:20px;
    background:#334155;
    margin:8px 0;
    max-width:100%;
    white-space:normal;
}

.sep{
    text-align:center;
    margin:70px 0;
    font-size:2rem;
}

.placeholder{
    border:2px dashed #475569;
    padding:50px;
    border-radius:20px;
    text-align:center;
}

.faq,
.seo{
    background:#1e293b;
    padding:25px;
    border-radius:20px;
    margin-top:30px;
    width:100%;
    max-width:100%;
    overflow-wrap:anywhere;
}

body.page .container,
body.single .container,
body.archive .container{
    padding-top:12px;
}

body.page .container > .seo:first-child,
body.single .container > .seo:first-child,
body.archive .container > .seo:first-child{
    margin-top:0;
}

table{
    width:100%;
    max-width:100%;
    border-collapse:collapse;
    background:#1e293b;
}

th,td{
    padding:12px;
    border:1px solid #334155;
    text-align:center;
}

.mobile-table-wrap{
    width:100%;
    max-width:100%;
    overflow:hidden;
}

.responsive-table{
    width:100%;
}

.back-to-top{
    display:none;
    position:fixed;
    right:24px;
    bottom:40px;
    width:58px;
    height:58px;
    border:none;
    border-radius:50%;
    background:#facc15;
    color:#000;
    font-size:26px;
    font-weight:bold;
    cursor:pointer;
    z-index:99997;
    box-shadow:0 10px 30px rgba(0,0,0,.45);
    align-items:center;
    justify-content:center;
    animation:floatBtn 2.8s ease-in-out infinite;
}

.guide-online{
    background:radial-gradient(circle at top right, rgba(34,197,94,.22), transparent 35%),
        linear-gradient(135deg,#064e3b,#0f172a);
    border:2px solid #22c55e;
}

.leovegas{
    background:radial-gradient(circle at top right, rgba(147,51,234,.25), transparent 40%),
    linear-gradient(135deg,#170822,#2a1040);
    border:1px solid rgba(168,85,247,.35);
}

.highlight{
    color:#facc15;
    font-weight:700;
}

#yt-popup{
    position:fixed;
    right:20px;
    bottom:120px;
    width:360px;
    max-width:calc(100vw - 24px);
    display:none;
    z-index:999999 !important;
}

#yt-popup img{
    display:block;
    width:100%;
    max-width:100%;
    height:auto;
    border-radius:18px;
    box-shadow:0 20px 60px rgba(0,0,0,.55);
}

#close-yt{
    position:absolute;
    top:-12px;
    right:-12px;
    width:34px;
    height:34px;
    border:0;
    border-radius:50%;
    background:#facc15;
    color:#000;
    font-weight:900;
    cursor:pointer;
    z-index:2;
}

#yt-mini{
    position:fixed;
    top:16px;
    right:16px;
    width:46px;
    height:46px;
    display:none;
    align-items:center;
    justify-content:center;
    border:2px solid rgba(255,255,255,.45);
    border-radius:50%;
    background:linear-gradient(135deg,#ff0000,#b91c1c);
    color:#fff;
    font-size:22px;
    cursor:pointer;
    z-index:999999 !important;
    box-shadow:0 10px 28px rgba(0,0,0,.45);
    padding:0;
}

#yt-mini:hover{
    transform:scale(1.08);
}

.chi-container{
    display:flex;
    flex-wrap:wrap;
    gap:30px;
    align-items:flex-start;
}

.foto{
    flex:1;
    min-width:250px;
    max-width:320px;
}

.foto img{
    width:100%;
    border-radius:18px;
}

.testo{
    flex:2;
}

.social{
    margin-top:20px;
}

.social a{
    display:inline-block;
    margin-right:10px;
    padding:12px 18px;
    border-radius:10px;
    color:#fff !important;
    text-decoration:none;
    font-weight:bold;
}

.instagram{
    background:#e1306c;
}

.facebook{
    background:#1877f2;
}

.logo-betsson{
    width:125%;
    height:125%;
    object-fit:contain;
}

.bh-breadcrumb{
    width:calc(100% - 32px);
    max-width:1280px;
    margin:10px auto 0;
    padding:10px 16px;
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:8px;
    background:#1e293b;
    border:1px solid #334155;
    border-radius:14px;
    color:#cbd5e1;
    font-size:.92rem;
}

.bh-breadcrumb a{
    color:#facc15 !important;
    font-weight:700;
    text-decoration:none !important;
}

.bh-breadcrumb a:hover{
    text-decoration:underline !important;
}

.bh-breadcrumb span{
    color:#cbd5e1;
}

html{
    scroll-behavior:smooth;
}

#dove-giocare{
    scroll-margin-top:30px;
}

#wpforms-541,
#wpforms-541.wpforms-container,
#wpforms-541 .wpforms-form{
    color:#ffffff !important;
}

#wpforms-541{
    width:min(900px,100%) !important;
    margin:0 auto 30px !important;
    padding:28px !important;
    background:radial-gradient(
            circle at top right,
            rgba(59,130,246,.12),
            transparent 35%
        ),
        linear-gradient(135deg,#1e293b,#0f172a) !important;
    border:1px solid #334155 !important;
    border-radius:20px !important;
    box-shadow:0 10px 25px rgba(0,0,0,.30) !important;
}

#wpforms-541 .wpforms-field-label,
#wpforms-541 .wpforms-field-label-inline,
#wpforms-541 .wpforms-field-description,
#wpforms-541 .wpforms-field-sublabel,
#wpforms-541 .wpforms-field-html,
#wpforms-541 .wpforms-field-checkbox label,
#wpforms-541 .wpforms-field-checkbox li,
#wpforms-541 p{
    color:#ffffff !important;
}

#wpforms-541 .wpforms-field-label{
    font-weight:800 !important;
}

#wpforms-541 a{
    color:#facc15 !important;
    font-weight:800 !important;
    text-decoration:underline !important;
}

#wpforms-541 input[type="text"],
#wpforms-541 input[type="email"],
#wpforms-541 input[type="tel"],
#wpforms-541 input[type="number"],
#wpforms-541 select,
#wpforms-541 textarea{
    width:100% !important;
    padding:12px 14px !important;
    background:#ffffff !important;
    color:#0f172a !important;
    border:2px solid #64748b !important;
    border-radius:10px !important;
    box-shadow:none !important;
}

#wpforms-541 input::placeholder,
#wpforms-541 textarea::placeholder{
    color:#64748b !important;
    opacity:1 !important;
}

#wpforms-541 input:focus,
#wpforms-541 select:focus,
#wpforms-541 textarea:focus{
    border-color:#facc15 !important;
    box-shadow:0 0 0 3px rgba(250,204,21,.18) !important;
    outline:none !important;
}

#wpforms-541 input[type="checkbox"]{
    accent-color:#facc15;
}

#wpforms-541 button[type="submit"]{
    min-height:48px !important;
    padding:12px 24px !important;
    background:#facc15 !important;
    color:#000000 !important;
    border:0 !important;
    border-radius:10px !important;
    font-size:16px !important;
    font-weight:900 !important;
    cursor:pointer !important;
}

#wpforms-541 button[type="submit"]:hover{
    background:#fde047 !important;
}

#wpforms-541 label.wpforms-error,
#wpforms-541 em.wpforms-error{
    color:#fca5a5 !important;
}

.wpforms-confirmation-container-full,
.wpforms-confirmation-container{
    background:#22c55e !important;
    color:#0f172a !important;
    border:1px solid #16a34a !important;
    border-radius:12px;
    font-weight:700;
}

.wpforms-confirmation-container-full p,
.wpforms-confirmation-container p{
    color:#0f172a !important;
}


/* =========================================================
   ANIMAZIONI
========================================================= */

@keyframes floatLogo{
    0%,100%{transform:translateY(0)}
    50%{transform:translateY(-8px)}
}

@keyframes pulseTop{
    0%,100%{transform:scale(1)}
    50%{transform:scale(1.08)}
}

@keyframes floatBtn{
    0%,100%{transform:translateY(0)}
    50%{transform:translateY(-6px)}
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media(min-width:769px){
    .bonus-buttons{
        flex-direction:row !important;
        align-items:center !important;
        justify-content:flex-start !important;
    }

    .bonus-buttons .btn,
    .card > a.btn,
    .card > span.btn{
        width:auto !important;
        min-width:135px !important;
        max-width:190px !important;
        flex:0 0 auto !important;
        white-space:nowrap !important;
        align-self:flex-start !important;
    }

    #yt-popup{
        width:360px !important;
        max-width:360px !important;
        right:20px !important;
        bottom:120px !important;
        left:auto !important;
    }
}

@media(max-width:900px){
    .casino-grid{grid-template-columns:1fr}
}

@media(max-width:768px){
    .container{
        padding-left:12px;
        padding-right:12px;
        overflow-x:hidden;
    }

    .hero{padding:55px 14px}

    .grid,
    .guide-grid,
    .casino-grid{
        display:grid;
        grid-template-columns:1fr !important;
        width:100%;
        max-width:100%;
    }

    .card{
    width:100%;
    max-width:100%;
    min-width:0;
    overflow:visible;
}

.guide-card{
    width:100%;
    max-width:100%;
    min-width:0;
    overflow:hidden;
}

    .brand{
        padding-right:0 !important;
        font-size:1.45rem;
    }

.badge,
.free-badge{
    position:absolute;
    top:10px;
    right:10px;
    z-index:20;
    margin:0;
}

    .bonus-buttons{
        flex-direction:column;
        align-items:stretch;
    }

    .btn,
    .bonus-buttons .btn,
    .card > a.btn,
    .card > span.btn{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        white-space:normal !important;
        align-self:stretch !important;
    }

    .seo,
    .faq,
    .guide-section{
        padding:18px;
        overflow-x:hidden;
    }

    #cookie-banner{
        flex-direction:column;
        text-align:center;
        bottom:12px;
        width:calc(100% - 20px);
    }

    #cookie-banner button{width:100%}

    .chi-container{flex-direction:column}

    .back-to-top{
        right:15px;
        bottom:95px;
        width:52px;
        height:52px;
        font-size:22px;
    }

    .match-hero{padding:0 12px}

    .match-hero-image img{
        max-height:none;
        object-fit:contain;
    }

    .match-hero-box{padding:20px}

    #yt-popup{
        left:10px;
        right:10px;
        bottom:90px;
        width:auto;
        max-width:calc(100vw - 20px);
    }

    #yt-mini{
    top:16px;
    right:16px;
    width:42px;
    height:42px;
    font-size:20px;
}
.menu-social{
    margin-top:30px;
    padding-top:20px;
    border-top:1px solid rgba(255,255,255,.15);
}

.menu-social h3{
    margin:0 0 10px;
    text-align:center;
    color:#facc15;
    font-size:1rem;
}

.menu-social a{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    margin-top:8px;
    padding:11px 14px;
    border-radius:12px;
    color:#fff !important;
    text-decoration:none !important;
    font-weight:800;
    border:0;
}

.menu-social-instagram{
    background:linear-gradient(135deg,#833ab4,#fd1d1d,#fcb045) !important;
}

.menu-social-facebook{
    background:#1877f2 !important;
}

.menu-social-youtube{
    background:#ff0000 !important;
}

    
    table{
        font-size:.9rem;
    }

    th,
    td{
        padding:8px 6px;
        word-break:normal;
        overflow-wrap:normal;
    }

    
    .responsive-table,
    .responsive-table tbody,
    .responsive-table tr,
    .responsive-table td{
        display:block;
        width:100%;
    }

    .responsive-table tr:first-child{display:none}

    .responsive-table tr{
        background:#0f172a;
        border:1px solid #334155;
        border-radius:14px;
        margin-bottom:14px;
        padding:12px;
    }

    .responsive-table td{
        border:0;
        border-bottom:1px solid #334155;
        text-align:left;
        white-space:normal !important;
        padding:9px 0;
    }

    .responsive-table td:last-child{border-bottom:0}

    .responsive-table td::before{
        content:attr(data-label) ": ";
        font-weight:900;
        color:#facc15;
    }
}

@media(max-width:420px){
    .container{padding:12px 10px}
    .section-title{font-size:1.55rem}
    .hero h1{font-size:2rem}
    .card{padding:16px}
    .faq,.seo{padding:16px}
    .guide-section{padding:18px}
    .casino-banner{padding:20px;min-height:260px}
    .casino-top{flex-direction:column;align-items:flex-start;gap:10px}
}

/* Archivi News e Slot: 3 colonne desktop/tablet */
@media (min-width:701px) and (max-width:900px){

    .news-grid,
    .slot-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:18px;
    }
}

/* Archivi News e Slot: una card per riga su mobile */
@media (max-width:700px){

    .news-grid,
    .slot-grid{
        grid-template-columns:1fr;
        gap:18px;
    }
}

@media (max-width:768px){

    .card-badges{
        display:flex;
        flex-wrap:wrap;
        justify-content:flex-end;
        gap:7px;
        min-height:auto;
    }

}

@media(max-width:900px){
    .footer-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:600px){
    .footer-grid{
        grid-template-columns:1fr;
        text-align:center;
    }

    .footer-social{
        justify-content:center;
    }
}

@media(max-width:768px){
    .bh-breadcrumb{
        width:calc(100% - 20px);
        margin-top:14px;
        padding:10px 12px;
        font-size:.86rem;
    }
}

@media(max-width:768px){

    .review-offer-content{
        grid-template-columns:1fr;
    }

    .review-card-footer{
        align-items:flex-start;
        flex-direction:column;
    }
}

@media(max-width:900px){

    .menu-panel{
        width:86vw;
        max-width:86vw;
        padding-left:18px;
        padding-right:18px;
    }

    .bh-menu.active .menu-close{
        left:calc(86vw - 59px);
    }

    .menu-layout{
        grid-template-columns:minmax(155px,200px) minmax(0,1fr);
        gap:18px;
    }

    .bh-menu .main-menu a,
    .bh-menu .menu-main-column > ul a{
        min-width:150px;
        padding:10px 13px;
        font-size:.86rem;
    }

    .menu-featured-card{
        grid-template-columns:92px minmax(0,1fr);
        column-gap:11px;
        padding:11px;
    }

    .bh-menu .menu-featured-image{
        width:92px;
        height:70px;
    }

    .menu-featured-card h3{
        font-size:.86rem;
    }
}

@media(max-width:620px){

    .menu-panel{
        width:92vw;
        max-width:92vw;
        padding:72px 14px 22px;
    }

    .bh-menu.active .menu-close{
        left:calc(92vw - 57px);
    }

    .menu-layout{
        grid-template-columns:1fr;
        gap:24px;
    }

    .bh-menu .main-menu,
    .bh-menu .menu-main-column > ul{
        width:100%;
    }

    .bh-menu .main-menu a,
    .bh-menu .menu-main-column > ul a{
        width:100%;
        min-width:0;
        justify-content:center;
        padding:11px 14px;
    }

    .menu-updates{
        margin-top:18px;
    }

    .menu-featured-card{
        grid-template-columns:94px minmax(0,1fr);
    }

    .bh-menu .menu-featured-image{
        width:94px;
        height:72px;
    }

.menu-social-links{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:7px;
}

.menu-social-links a{
    display:flex;
    align-items:center;
    justify-content:center;

    min-height:44px;
    padding:8px 10px;

    border-radius:10px;
    text-align:center;
    font-weight:700;
    line-height:1.2;
    text-decoration:none;
}

    .bh-menu .menu-social-links a{
        width:100%;
        padding:9px 6px;
        font-size:.72rem;
        white-space:normal;
    }

    .menu-signature{
        display:block;
        text-align:center;
    }

    .menu-signature span{
        display:block;
        margin-top:6px;
        text-align:center;
        line-height:1.4;
    }
}

@media(max-width:380px){

    .menu-panel{
        width:96vw;
        max-width:96vw;
    }

    .bh-menu.active .menu-close{
        left:calc(96vw - 55px);
    }

    .menu-featured-card{
        grid-template-columns:80px minmax(0,1fr);
    }

    .bh-menu .menu-featured-image{
        width:80px;
        height:64px;
    }
}

@media(max-width:620px){
    body:has(.bh-menu.active) #yt-mini{
        top:74px;
    }
}

@media(max-width:620px){

    .all-bonus-cta{
        display:block;
        padding:22px 18px;
        text-align:center;
    }

    .all-bonus-cta-icon{
        width:62px;
        height:62px;
        margin:0 auto 15px;
        font-size:1.7rem;
    }

    .all-bonus-cta .all-bonus-btn,
    .all-bonus-cta a.all-bonus-btn{
        width:100%;
    }
}


@media(max-width:768px){
    #wpforms-541{
        padding:18px !important;
    }

    #wpforms-541 button[type="submit"]{
        width:100% !important;
    }
}

@media(max-width:700px){

    .footer-legal-social{
        grid-template-columns:1fr;
        gap:18px;
    }

    .footer-legal-social-links{
        justify-content:center;
    }

}

@media (max-width: 900px) {
    .bh-related-slots-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .bh-related-slots {
        margin-top: 30px;
    }

    .bh-related-slots-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .bh-related-slot-content {
        padding: 16px;
    }

    .bh-related-slot-content h3 {
        font-size: 1.05rem;
    }
}

@media (max-width: 620px) {

    .bh-menu .menu-social-links {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;

        gap: 7px;

        width: fit-content;
        max-width: 100%;
        margin: 0 auto;
    }

    .bh-menu .menu-social-links > a,
    .bh-menu .menu-social-links > a.menu-social-contact {
        grid-column: auto;

        width: auto;
        min-width: 0;
        min-height: 38px;

        margin: 0;
        padding: 6px 9px;

        font-size: 0.72rem;
        line-height: 1;
        white-space: nowrap;
    }
}

/* ==================================================
   CARD BOOKMAKER COMPATTE — HOME E AREA BONUS
   Layout: logo tondo a sinistra,
   titolo, offerta e pulsanti a destra
   ================================================== */

body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr);
    align-items: center;
    column-gap: 20px;
    row-gap: 10px;
    padding: 18px 20px;
}

/* Nasconde le sezioni estese nel formato compatto */
body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card > .bh-offers,
body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card > .bh-info-icons,
body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card > .bh-footer {
    display: none;
}

/* Logo e contenuto diventano elementi diretti della griglia */
body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card > .bh-top {
    display: contents;
}

/* ==================================================
   LOGO TONDO A SINISTRA
   ================================================== */

body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card .bh-logo-box {
    grid-column: 1;
    grid-row: 1 / 3;

    display: flex;
    align-items: center;
    justify-content: center;

    width: 96px;
    height: 96px;
    min-width: 96px;

    margin: auto;

    padding: 10px;

    background: #fff;
    border-radius: 50%;
    overflow: hidden;

    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18);
}

body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card .bh-logo-box img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: contain;
}

/* ==================================================
   TITOLO E TESTO OFFERTA
   ================================================== */

body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card .bh-head-text {
    grid-column: 2;
    grid-row: 1;

    display: flex;
    flex-direction: column;
    justify-content: center;

    min-width: 0;
}

body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card .bh-bookmaker-name {
    margin: 0 0 5px;

    font-size: 1.2rem;
    font-weight: 700;

    white-space: normal;
    overflow: visible;
    text-overflow: clip;
}

/* Stelle nascoste nel formato compatto */
body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card .bh-stars {
    display: none;
}

/* Testo dell’offerta */
body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card .bh-head-text p {
    max-width: 720px;
    min-height: 2.7em;

    margin: 0;

    font-size: 0.96rem;
    line-height: 1.4;
}

/* ==================================================
   PULSANTI AFFIANCATI SOTTO IL TESTO
   ================================================== */

body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card > .bh-buttons {
    grid-column: 2;
    grid-row: 2;

    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;

    gap: 8px;

    width: auto;
    margin: 0;
}

body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card .bh-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: auto;
    min-width: 130px;
    min-height: 36px;

    margin: 0;
    padding: 7px 11px;

    font-size: 0.8rem;
    line-height: 1.15;

    text-align: center;
    white-space: nowrap;
}

/* ==================================================
   TABLET
   ================================================== */

@media (max-width: 800px) {

    body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card {
        grid-template-columns: 92px minmax(0, 1fr);
        column-gap: 16px;
        row-gap: 9px;

        padding: 16px 17px;
    }

    body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card .bh-logo-box {
        width: 84px;
        height: 84px;
        min-width: 84px;

        padding: 9px;
    }

    body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card .bh-bookmaker-name {
        font-size: 1.12rem;
    }

    body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card > .bh-buttons {
        width: 100%;
    }

    body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card .bh-btn {
        flex: 1 1 0;
        min-width: 0;
    }
}

/* ==================================================
   SMARTPHONE
   ================================================== */

@media (max-width: 520px) {

    body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card {
        grid-template-columns: 74px minmax(0, 1fr);
        column-gap: 12px;
        row-gap: 8px;

        padding: 14px;
    }

    body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card .bh-logo-box {
        width: 70px;
        height: 70px;
        min-width: 70px;

        padding: 7px;
    }

    body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card .bh-bookmaker-name {
        margin-bottom: 4px;

        font-size: 1.04rem;
    }

    body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card .bh-head-text p {
        min-height: 0;

        font-size: 0.88rem;
        line-height: 1.35;
    }

    body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card > .bh-buttons {
        gap: 6px;
    }

    body:is(.home, .page-id-140, .page-id-134, .bh-compact-bookmakers) .bh-card .bh-btn {
        min-height: 34px;

        padding: 6px 5px;

        font-size: 0.7rem;
        white-space: normal;
    }
}

/* Banner a riga intera nelle griglie News e Slot */
body.bh-compact-bookmakers .news-grid > .bh-home-banner-list,
body.bh-compact-bookmakers .slot-grid > .bh-home-banner-list,
body.bh-compact-bookmakers .news-grid > .bh-random-banner,
body.bh-compact-bookmakers .slot-grid > .bh-random-banner {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    max-width: none !important;
}

/* =========================================================
   VETRINA BOOKMAKER NELLE RECENSIONI
   Shortcode: [bh_bookmaker_showcase]
   ========================================================= */

.bh-bookmaker-showcase {
    width: 100%;
    margin: 48px auto 20px;
    padding: 32px;
    background: #0f172a;
    border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 18px;
}

.bh-showcase-heading {
    max-width: 760px;
    margin: 0 auto 28px;
    text-align: center;
}

.bh-showcase-kicker {
    display: inline-block;
    margin-bottom: 8px;
    color: #facc15;
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.bh-showcase-heading h2 {
    margin: 0 0 10px;
    color: #ffffff;
    font-size: clamp(1.6rem, 3vw, 2.2rem);
    line-height: 1.2;
}

.bh-showcase-heading p {
    margin: 0;
    color: rgba(255, 255, 255, 0.82);
    font-size: 1rem;
    line-height: 1.65;
}

.bh-bookmaker-showcase-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

/* =========================================================
   CARD BOOKMAKER
   ========================================================= */

.bh-bookmaker-showcase-card {
    min-width: 0;
    overflow: hidden;
    background: #1e293b;
    border: 1px solid rgba(255, 255, 255, 0.10);
    border-radius: 16px;
    transition:
        transform 0.25s ease,
        border-color 0.25s ease,
        box-shadow 0.25s ease;
}

.bh-bookmaker-showcase-card:hover {
    transform: translateY(-4px);
    border-color: #facc15;
    box-shadow: 0 14px 28px rgba(0, 0, 0, 0.28);
}

.bh-bookmaker-showcase-link {
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 100%;
    padding: 16px;
    color: #ffffff;
    text-align: center;
    text-decoration: none;
}

.bh-bookmaker-showcase-link:visited,
.bh-bookmaker-showcase-link:hover,
.bh-bookmaker-showcase-link:focus {
    color: #ffffff;
    text-decoration: none;
}

/* Immagine in evidenza quadrata con bordi arrotondati */

.bh-bookmaker-showcase-logo {
    width: 100%;
    aspect-ratio: 16 / 9;
    margin-bottom: 16px;
    overflow: hidden;
    background: #111827;
    border-radius: 14px;
}

.bh-bookmaker-showcase-logo img {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    object-fit: cover;
    border: 0;
    border-radius: 0;
}

/* Contenuto della card */

.bh-bookmaker-showcase-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    align-items: center;
    width: 100%;
    min-width: 0;
}

.bh-bookmaker-showcase-content h3 {
    width: 100%;
    margin: 0 0 10px;
    overflow: visible;
    color: #ffffff;
    font-size: 1.08rem;
    line-height: 1.35;
    text-overflow: unset;
    white-space: normal;
    overflow-wrap: anywhere;
}

.bh-bookmaker-showcase-rating {
    display: block;
    margin-bottom: 18px;
    color: #facc15;
    font-size: 1.05rem;
    line-height: 1;
    letter-spacing: 0.08em;
}

.bh-bookmaker-showcase-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    margin-top: auto;
    padding: 10px 16px;
    background: #2563eb;
    color: #ffffff !important;
    font-size: 0.9rem;
    font-weight: 800;
    line-height: 1.2;
    text-align: center;
    border-radius: 10px;
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}

.bh-bookmaker-showcase-card:hover
.bh-bookmaker-showcase-button {
    transform: translateY(-1px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.20);
}

/* Pulsante finale */

.bh-showcase-footer {
    margin-top: 26px;
    text-align: center;
}

.bh-showcase-all-link,
.bh-showcase-all-link:link,
.bh-showcase-all-link:visited,
.bh-showcase-all-link:hover,
.bh-showcase-all-link:focus,
.bh-showcase-all-link:active{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:11px 22px;
    background:#facc15;
    border-radius:10px;

    color:#111827 !important;
    -webkit-text-fill-color:#111827 !important;

    font-size:16px;
    font-weight:800;

    text-decoration:none !important;
}

.bh-showcase-all-link:visited,
.bh-showcase-all-link:hover,
.bh-showcase-all-link:focus {
    color: #0f172a !important;
    text-decoration: none;
}

.bh-showcase-all-link:hover,
.bh-showcase-all-link:focus {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.22);
}

/* =========================================================
   RESPONSIVE VETRINA BOOKMAKER
   ========================================================= */

/* Tablet */

@media (max-width: 1000px) {

    .bh-bookmaker-showcase-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Mobile */

@media (max-width: 600px) {

    .bh-bookmaker-showcase {
        margin-top: 34px;
        padding: 24px 14px;
        border-radius: 14px;
    }

    .bh-showcase-heading {
        margin-bottom: 22px;
    }

    .bh-showcase-heading h2 {
        font-size: 1.55rem;
    }

    .bh-showcase-heading p {
        font-size: 0.95rem;
        line-height: 1.55;
    }

    .bh-bookmaker-showcase-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .bh-bookmaker-showcase-link {
        flex-direction: row;
        align-items: center;
        padding: 14px;
        text-align: left;
    }

    .bh-bookmaker-showcase-logo {
        flex: 0 0 96px;
        width: 96px;
        height: 96px;
        aspect-ratio: 1 / 1;
        margin: 0 15px 0 0;
        border-radius: 12px;
    }

    .bh-bookmaker-showcase-logo img {
        width: 100%;
        height: 100%;
        padding: 0;
        object-fit: cover;
        border-radius: 0;
    }

    .bh-bookmaker-showcase-content {
        align-items: flex-start;
        min-width: 0;
    }

    .bh-bookmaker-showcase-content h3 {
        margin-bottom: 6px;
        font-size: 1rem;
        text-align: left;
    }

    .bh-bookmaker-showcase-rating {
        margin-bottom: 11px;
        font-size: 0.92rem;
    }

    .bh-bookmaker-showcase-button {
        min-height: 38px;
        margin-top: 0;
        padding: 9px 13px;
        font-size: 0.84rem;
    }

    .bh-showcase-footer {
        margin-top: 22px;
    }

    .bh-showcase-all-link {
        width: 100%;
        min-height: 44px;
        padding: 10px 16px;
    }
}
/* =========================================================
   BONUS HUNTER - ULTIMI CONTENUTI HOME
   Stile unificato con Vetrina Bookmaker
   ========================================================= */

.bh-latest-section{
    margin:48px auto;
}

.bh-latest-heading{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:18px;
    margin-bottom:24px;
}

.bh-latest-heading .section-title{
    margin:0;
}

.bh-latest-all-link{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:11px 22px;
    background:#facc15;
    color:#111827 !important;
    -webkit-text-fill-color:#111827 !important;
    font-weight:800;
    text-decoration:none;
    border-radius:10px;
}

.bh-latest-all-link:link,
.bh-latest-all-link:visited,
.bh-latest-all-link:hover,
.bh-latest-all-link:focus,
.bh-latest-all-link:active{
    color:#111827 !important;
    -webkit-text-fill-color:#111827 !important;
    text-decoration:none;
}

.bh-latest-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}

/* ==========================
   CARD
   ========================== */

.bh-latest-card{
    display:flex;
    flex-direction:column;
    overflow:hidden;
    background:#1e293b;
    border:1px solid rgba(255,255,255,.10);
    border-radius:16px;
    transition:.25s;
}

.bh-latest-card:hover{
    transform:translateY(-4px);
    border-color:#facc15;
    box-shadow:0 14px 28px rgba(0,0,0,.28);
}



/* ==========================
   IMMAGINE
   ========================== */

.bh-latest-image{
    width:calc(100% - 32px);
    aspect-ratio:16 / 9;
    margin:16px 16px 0;
    overflow:hidden;
    background:#111827;
    border-radius:14px;
}

.bh-latest-image img{
    display:block;
    width:100%;
    height:100%;
    object-fit:contain;
    object-position:center;
    background:#111827;
    transition:.25s;
}

.bh-latest-card:hover .bh-latest-image img{
    transform:scale(1.04);
}

/* ==========================
   CONTENUTO
   ========================== */

.bh-latest-content{
    display:flex;
    flex:1;
    flex-direction:column;
    align-items:center;
    padding:16px;
    text-align:center;
}

.bh-latest-title{
    margin:0 0 12px;
    color:#fff;
    font-size:1.08rem;
    line-height:1.35;
}

.bh-latest-title a{
    color:#fff;
    text-decoration:none;
}

.bh-latest-excerpt{
    margin:0 0 18px;
    color:rgba(255,255,255,.82);
    line-height:1.6;
}

/* ==========================
   PULSANTE
   ========================== */

.bh-latest-read{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-top:auto;
    min-height:42px;
    padding:10px 16px;
    background:#2563eb;
    color:#fff;
    font-weight:800;
    text-decoration:none;
    border-radius:10px;
}

.bh-latest-read:hover{
    color:#fff;
    text-decoration:none;
}

/* ==========================
   TABLET
   ========================== */

/* Home tablet: le 3 card restano sulla stessa riga */
@media (min-width:641px) and (max-width:900px){

    .bh-latest-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:14px;
    }

}

/* ==========================
   MOBILE
   ========================== */

@media(max-width:640px){

    .bh-latest-heading{
        flex-direction:column;
        align-items:flex-start;
    }

    .bh-latest-grid{
        grid-template-columns:1fr;
    }

    .bh-latest-card{
        flex-direction:row;
        align-items:center;
        padding:14px;
    }

    .bh-latest-image{
        width:96px;
        height:96px;
        margin:0 15px 0 0;
        flex-shrink:0;
    }

    .bh-latest-content{
        align-items:flex-start;
        padding:0;
        text-align:left;
    }

    .bh-latest-title{
        font-size:1rem;
        margin-bottom:8px;
    }

    .bh-latest-excerpt{
        display:none;
    }

    .bh-latest-read{
        min-height:38px;
        padding:9px 13px;
        font-size:.84rem;
    }

    .bh-latest-all-link{
        width:100%;
        justify-content:center;
    }

}

/* ===========================
   ADM BOX FOOTER
=========================== */

.bh-adm-box{
    display:flex;
    align-items:center;
    gap:16px;
    margin-top:20px;
    padding:14px;
    border-radius:12px;
    background:rgba(255,255,255,.05);
    border:1px solid rgba(250,204,21,.25);
}

.bh-adm-logo{
    width:70px;
    height:auto;
    border-radius:16%;
    flex-shrink:0;
}

.bh-adm-text strong{
    display:block;
    color:#facc15;
    margin-bottom:6px;
    font-size:15px;
}

.bh-adm-text p{
    margin:0;
    font-size:14px;
    line-height:1.6;
    color:#d1d5db;
}

/* Date pubblicazione e aggiornamento articoli */
.bh-post-dates {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    margin: 20px 0 8px;
    padding: 12px 16px;
    background: #1e293b;
    border-left: 4px solid #facc15;
    border-radius: 8px;
    color: #fff;
    font-size: 0.95rem;
    line-height: 1.5;
}

.post-content .bh-post-dates + h2 {
    margin-top: 0;
}

.bh-post-dates span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

@media (max-width: 600px) {
    .bh-post-dates {
        display: block;
    }

    .bh-post-dates span {
        display: block;
    }

    .bh-post-dates span + span {
        margin-top: 6px;
    }
}

/* =========================================================
   VETRINA SLOT CORRELATE
   Desktop: 3 card
   Tablet verticale: 4 card in griglia 2x2
   ========================================================= */

/* Desktop: nasconde la quarta Slot */
@media (min-width: 901px) {
    .bh-slot-showcase .bh-bookmaker-showcase-card:nth-child(n + 4) {
        display: none;
    }
}

/* Tablet verticale: mostra 4 Slot in due colonne */
@media (min-width: 601px) and (max-width: 900px) {
    .bh-slot-showcase .bh-bookmaker-showcase-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bh-slot-showcase .bh-bookmaker-showcase-card {
        display: block;
    }
}

/* =========================================================
   PAGINAZIONE SLOT CORRELATE
   ========================================================= */

.bh-slot-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin: 24px 0 8px;
}

.bh-slot-page-button {
    min-width: 40px;
    height: 40px;
    padding: 0 10px;
    border: 1px solid #facc15;
    border-radius: 8px;
    background: #1e293b;
    color: #ffffff;
    font-weight: 700;
    cursor: pointer;
}

.bh-slot-page-button:hover,
.bh-slot-page-button.is-active {
    background: #facc15;
    color: #0f172a;
}

.bh-slot-page-button:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

.bh-slot-page-ellipsis {
    padding: 0 4px;
    color: #ffffff;
}

.bh-slot-showcase.is-loading .bh-bookmaker-showcase-grid {
    opacity: 0.5;
    pointer-events: none;
}

/* =========================================================
   VETRINA GUIDE
   Desktop: 3 card
   Tablet verticale: 4 card in griglia 2x2
   ========================================================= */

@media (min-width: 901px) {

    .bh-guide-showcase .bh-bookmaker-showcase-card:nth-child(n + 4) {
        display: none;
    }
}

@media (min-width: 601px) and (max-width: 900px) {

    .bh-guide-showcase .bh-bookmaker-showcase-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bh-guide-showcase .bh-bookmaker-showcase-card {
        display: block;
    }
}

/* =========================================================
   PAGINA TIPI DI BONUS
   CTA offerte attive e pulsanti Guide
   ========================================================= */

.bh-bonus-active-cta {
    margin: 32px 0;
    padding: 28px;
    border: 1px solid #facc15;
    border-radius: 16px;
    background: #1e293b;
    color: #ffffff;
    text-align: center;
}

.bh-bonus-active-cta h2 {
    margin-top: 0;
    color: #facc15;
}

.bh-bonus-active-cta p {
    max-width: 760px;
    margin: 0 auto 20px;
}

/* Pulsanti delle singole sezioni */
.bonus-page .bonus-section p a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 7px 6px 7px 0;
    padding: 11px 16px;
    border: 1px solid #facc15;
    border-radius: 9px;
    background: #1e293b;
    color: #ffffff;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
    text-decoration: none;
    transition:
        background-color 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease;
}

.bonus-page .bonus-section p a:hover {
    background: #facc15;
    color: #0f172a;
    transform: translateY(-2px);
}

/* Elenco finale Guide BonusHunter */
.bonus-page #guide-bonus ul {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin: 20px 0;
    padding: 0;
    list-style: none;
}

.bonus-page #guide-bonus li {
    margin: 0;
}

.bonus-page #guide-bonus li a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 52px;
    height: 100%;
    padding: 12px 14px;
    border: 1px solid #facc15;
    border-radius: 9px;
    background: #1e293b;
    color: #ffffff;
    font-weight: 700;
    text-align: center;
    text-decoration: none;
}

.bonus-page #guide-bonus li a:hover {
    background: #facc15;
    color: #0f172a;
}

@media (max-width: 900px) {

    .bonus-page #guide-bonus ul {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {

    .bh-bonus-active-cta {
        padding: 22px 16px;
    }

    .bonus-page .bonus-section p a {
        display: flex;
        width: 100%;
        margin: 8px 0;
        box-sizing: border-box;
    }

    .bonus-page #guide-bonus ul {
        grid-template-columns: 1fr;
    }
}

/* Testo leggibile sui pulsanti gialli dopo il tocco */

.bh-bonus-active-cta .bh-showcase-all-link:hover,
.bh-bonus-active-cta .bh-showcase-all-link:focus,
.bh-bonus-active-cta .bh-showcase-all-link:active,
.bonus-page .bonus-section p a:hover,
.bonus-page .bonus-section p a:focus,
.bonus-page .bonus-section p a:active,
.bonus-page #guide-bonus li a:hover,
.bonus-page #guide-bonus li a:focus,
.bonus-page #guide-bonus li a:active {
    background: #facc15 !important;
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a;
}

/* =========================================================
   VETRINA RECENSIONI BOOKMAKER
   Desktop: 3 card
   Tablet verticale: 4 card in griglia 2x2
   ========================================================= */

@media (min-width: 901px) {

    .bh-bookmaker-review-showcase
    .bh-bookmaker-showcase-card:nth-child(n + 4) {
        display: none;
    }
}

@media (min-width: 601px) and (max-width: 900px) {

    .bh-bookmaker-review-showcase
    .bh-bookmaker-showcase-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bh-bookmaker-review-showcase
    .bh-bookmaker-showcase-card {
        display: block;
    }
}

/* =========================================================
   ALTRE NEWS CORRELATE
   Desktop: 3 card
   Tablet verticale: 4 card in griglia 2x2
   ========================================================= */

.bh-related-news-paginated .bh-related-news-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.bh-related-news-paginated .bh-related-news-card {
    display: flex;
    flex-direction: column;
}

.bh-related-news-paginated .bh-related-news-content {
    display: flex;
    flex: 1;
    flex-direction: column;
}

/* Pulsante interno: blu con testo bianco */
.bh-related-news-read,
.bh-related-news-read:link,
.bh-related-news-read:visited,
.bh-related-news-read:hover,
.bh-related-news-read:focus,
.bh-related-news-read:active {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    margin-top: auto;
    padding: 10px 16px;
    border-radius: 10px;
    background: #2563eb;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-weight: 800;
    text-align: center;
    text-decoration: none !important;
}

.bh-related-news-read:hover,
.bh-related-news-read:focus {
    transform: translateY(-1px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.20);
}

.bh-related-news-footer {
    margin-top: 26px;
    text-align: center;
}

/* Desktop: nasconde la quarta News */
@media (min-width: 901px) {

    .bh-related-news-paginated
    .bh-related-news-card:nth-child(n + 4) {
        display: none;
    }
}

/* Tablet verticale: mostra 4 News in formato 2x2 */
@media (min-width: 601px) and (max-width: 900px) {

    .bh-related-news-paginated .bh-related-news-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bh-related-news-paginated .bh-related-news-card {
        display: flex;
    }
}

/* Smartphone: una News per riga */
@media (max-width: 600px) {

    .bh-related-news-paginated .bh-related-news-grid {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   PAGINAZIONE NEWS CORRELATE
   ========================================================= */

.bh-news-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin: 24px 0 8px;
}

.bh-news-page-button {
    min-width: 40px;
    height: 40px;
    padding: 0 10px;
    border: 1px solid #facc15;
    border-radius: 8px;
    background: #1e293b;
    color: #ffffff;
    font-weight: 700;
    cursor: pointer;
}

.bh-news-page-button:hover,
.bh-news-page-button:focus,
.bh-news-page-button.is-active {
    background: #facc15;
    color: #0f172a;
    -webkit-text-fill-color: #0f172a;
}

.bh-news-page-button:disabled {
    opacity: 0.45;
    cursor: not-allowed;
}

.bh-news-page-ellipsis {
    padding: 0 4px;
    color: #ffffff;
}

.bh-related-news-paginated.is-loading
.bh-related-news-grid {
    opacity: 0.5;
    pointer-events: none;
}

.bh-related-news-paginated.is-loading
.bh-news-pagination {
    pointer-events: none;
}

/* =========================================================
   HOME: TESTO BIANCO NEI PULSANTI BLU DELLE CARD
   ========================================================= */

.bh-latest-read,
.bh-latest-read:link,
.bh-latest-read:visited,
.bh-latest-read:hover,
.bh-latest-read:focus,
.bh-latest-read:active {
    background: #2563eb;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    text-decoration: none !important;
}

/* ==================================================
   PAGINAZIONE ARCHIVIO SLOT
   ================================================== */

.slot-pagination {
    display: flex;
    justify-content: center;
    width: 100%;
    margin: 32px 0;
}

.slot-pagination ul.page-numbers {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 8px;

    margin: 0;
    padding: 0;

    list-style: none;
}

.slot-pagination ul.page-numbers li {
    margin: 0;
    padding: 0;
    list-style: none;
}

.slot-pagination a.page-numbers,
.slot-pagination span.page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 42px;
    min-height: 42px;
    padding: 8px 14px;

    color: #fff;
    background: #1e293b;
    border: 1px solid #334155;
    border-radius: 10px;

    font-weight: 700;
    line-height: 1;
    text-decoration: none;

    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease,
        transform 0.2s ease;
}

.slot-pagination a.page-numbers:hover,
.slot-pagination a.page-numbers:focus-visible {
    color: #fff;
    background: #2563eb;
    border-color: #2563eb;
    transform: translateY(-2px);
}

.slot-pagination span.page-numbers.current {
    color: #0f172a;
    background: #facc15;
    border-color: #facc15;
}

.slot-pagination .prev.page-numbers,
.slot-pagination .next.page-numbers {
    width: auto;
    padding-right: 16px;
    padding-left: 16px;
}

/* Smartphone */
@media (max-width: 520px) {

    .slot-pagination {
        margin: 26px 0;
    }

    .slot-pagination ul.page-numbers {
        gap: 6px;
    }

    .slot-pagination a.page-numbers,
    .slot-pagination span.page-numbers {
        min-width: 38px;
        min-height: 38px;
        padding: 7px 10px;
        font-size: 0.86rem;
    }

    .slot-pagination .prev.page-numbers,
    .slot-pagination .next.page-numbers {
        padding-right: 12px;
        padding-left: 12px;
    }
}

/* ==================================================
   CARD ARCHIVI NEWS E SLOT — FORMATO DEFINITIVO
   Valido su desktop, tablet e smartphone
   ================================================== */

/* Immagini Slot sempre rettangolari */
.slot-card-image {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9 !important;
    overflow: hidden;
    background: #111827;
    border-radius: 14px;
}

.slot-card-image img {
    display: block;
    width: 100%;
    height: 100% !important;
    aspect-ratio: 16 / 9 !important;
    object-fit: cover !important;
    object-position: center;
    border-radius: 14px;
}

/* News con lo stesso stile delle Slot */
.news-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 16px;
    overflow: hidden;
    background: #1e293b;
    border: 1px solid #334155;
    border-radius: 20px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35);
}

.news-thumb {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9 !important;
    overflow: hidden;
    background: #111827;
    border-radius: 14px;
}

.news-thumb img {
    display: block;
    width: 100%;
    height: 100% !important;
    aspect-ratio: 16 / 9 !important;
    object-fit: cover !important;
    object-position: center;
    border-radius: 14px;
}

.news-card-content {
    display: flex;
    flex: 1;
    flex-direction: column;
    width: 100%;
    padding: 16px 4px 0;
}

.news-card-content .btn {
    width: 100%;
    margin-top: auto;
    justify-content: center;
}

/* SOTTOMENU MOBILE */

.main-menu .sub-menu {
    display: none;
}

.main-menu .menu-item-has-children.submenu-open > .sub-menu {
    display: block;
}

.main-menu .menu-item-has-children > a::after {
    content: " ▾";
    font-size: 0.75em;
}

/* Modifica layout menu SOLO da Mobile (sotto i 768px) */
@media screen and (max-width: 768px) {

    /* Impostiamo la colonna layout come Flex container verticale */
    .menu-layout {
        display: flex !important;
        flex-direction: column !important;
    }

    /* 1. Mettiamo in prima posizione i link del Menu principale */
    .menu-main-column .main-menu {
        order: 1;
    }

    /* 2. Mettiamo subito dopo la colonna "Da non perdere" (i 4 box dinamici) */
    .menu-featured-column {
        order: 2;
    }

    /* 3. Mettiamo il blocco "Rimani aggiornato" dopo "Da non perdere" */
    .menu-updates {
        order: 3;
    }

    /* 4. Mettiamo i Social e il Footer in fondo */
    .menu-social {
        order: 4;
    }
}

@media screen and (max-width: 768px) {
    /* Trasforma tutto il pannello interno in un unico flusso */
    .menu-layout,
    .menu-main-column {
        display: flex !important;
        flex-direction: column !important;
    }

    /* 1. Voci del menu in alto */
    .menu-main-column > .menu-column-title,
    .menu-main-column > .main-menu {
        order: 1 !important;
    }

    /* 2. Blocco "Da non perdere" al centro */
    .menu-featured-column {
        order: 2 !important;
    }

    /* 3. Blocco "Rimani aggiornato" sotto "Da non perdere" */
    .menu-updates {
        order: 3 !important;
        margin-top: 25px !important;
    }

    /* 4. Social in fondo */
    .menu-social {
        order: 4 !important;
    }
}

/* =========================================================
   MENU MOBILE FISSO IN BASSO (BARRA DI NAVIGAZIONE RAPIDA)
========================================================= */

.bh-mobile-bottom-nav {
    display: none; /* Nascosto di default su desktop */
}

@media (max-width: 768px) {
    /* Spazio in basso per evitare che il contenuto sia coperto dal menu fisso */
    body {
        padding-bottom: 70px;
    }

    .bh-mobile-bottom-nav {
        display: flex;
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 62px;
        background: rgba(15, 23, 42, 0.95);
        backdrop-filter: blur(10px);
        border-top: 1px solid rgba(250, 204, 21, 0.25);
        z-index: 99999;
        justify-content: space-around;
        align-items: center;
        padding: 0 10px;
        box-shadow: 0 -8px 20px rgba(0, 0, 0, 0.4);
    }

    .bh-mob-nav-item {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        flex: 1;
        color: #cbd5e1 !important;
        text-decoration: none !important;
        font-size: 0.72rem;
        font-weight: 700;
        transition: color 0.2s ease;
    }

    .bh-mob-nav-item span.bh-mob-icon {
        font-size: 1.25rem;
        margin-bottom: 2px;
        line-height: 1;
    }

    .bh-mob-nav-item:hover,
    .bh-mob-nav-item.active {
        color: #facc15 !important;
    }
}

/* =========================================================
   FIX PULITO: ALZA IL BANNER COOKIE SOPRA IL MENU MOBILE
========================================================= */
@media (max-width: 768px) {
    #cookie-banner {
        margin-bottom: 70px !important; 
        z-index: 100000 !important;
    }
}

/* --- Gestione pulita tendina sottomenu mobile (BonusHunter) --- */

/* 1. Spaziatura di base e grafica quando la sottovoce è aperta */
.bh-menu .main-menu .menu-item-has-children .sub-menu,
.bh-menu .main-menu .menu-item-has-children ul.children {
    margin-top: 12px !important;
    margin-bottom: 12px !important;
    padding: 8px 10px 8px 15px !important;
    border-left: 3px solid #ffd700 !important; /* Bordo giallino */
    background-color: rgba(255, 215, 0, 0.03) !important; /* Sfumatura leggera */
    border-radius: 0 6px 6px 0;
}

/* 2. Spaziatura tra le singole voci interne */
.bh-menu .main-menu .sub-menu li,
.bh-menu .main-menu ul.children li {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
}

.bh-menu .main-menu .sub-menu li a,
.bh-menu .main-menu ul.children li a {
    display: block !important;
    padding: 6px 10px !important;
}

@media (max-width: 768px) {
    .betting-dashboard .gauges-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }
}

/* Forza le immagini della home a riempire perfettamente il contenitore senza spazi vuoti */
.bh-latest-image img {
    display: block;
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: 16 / 9 !important;
    object-fit: cover !important;
    object-position: center !important;
    background: #111827;
    border-radius: 14px;
}

/* =========================================================
   FIX MOBILE: CARD VERTICALI CON IMMAGINI RETTANGOLARI
   ========================================================= */

@media(max-width:640px){

    .bh-latest-card{
        flex-direction: column !important;
        align-items: stretch !important;
        padding: 16px !important;
    }

    .bh-latest-image{
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 16 / 9 !important;
        margin: 0 0 16px 0 !important;
    }

    .bh-latest-content{
        align-items: center !important;
        padding: 0 !important;
        text-align: center !important;
    }

    .bh-latest-title{
        font-size: 1.05rem;
        margin-bottom: 8px;
    }

    .bh-latest-excerpt{
        display: block !important;
    }

    .bh-latest-read{
        min-height: 42px;
        padding: 10px 16px;
        font-size: .9rem;
    }

    .bh-latest-all-link{
        width: 100%;
        justify-content: center;
    }

}

@media (max-width: 600px) {
    .bh-bookmaker-showcase-link {
        flex-direction: column !important;
        align-items: center !important;
        padding: 16px !important;
        text-align: center !important;
    }

    .bh-bookmaker-showcase-logo {
        flex: none !important;
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 16 / 9 !important;
        margin: 0 0 16px 0 !important;
        border-radius: 14px !important;
    }

    .bh-bookmaker-showcase-logo img {
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        border-radius: 14px !important;
    }

    .bh-bookmaker-showcase-content {
        align-items: center !important;
        text-align: center !important;
    }

    .bh-bookmaker-showcase-content h3 {
        text-align: center !important;
    }
}