.bh-card{
  max-width:1100px;
  margin:32px auto;
  background:#fff;
  border:1px solid #e5e7eb;
  border-radius:18px;
  box-shadow:0 10px 28px rgba(0,0,0,.08);
  padding:24px;
  font-family:Inter,Arial,sans-serif;
}

.bh-top{
  display:flex;
  align-items:center;
  gap:24px;
}

.bh-logo-box{
  width:130px;
  height:100px;
  flex:0 0 130px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  border:1px solid #dfe3e8;
  border-radius:16px;
  box-shadow:0 4px 12px rgba(0,0,0,.08);
  padding:12px;
}

.bh-logo-box img{
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}

.bh-head-text{
  flex:1;
}

.bh-bookmaker-name{
  margin:0 0 6px;
  color:#111827;
  font-size:1.55rem;
  line-height:1.15;
  font-weight:900;
  letter-spacing:.02em;
}

.bh-stars{
  color:#FFD700;
  font-size:22px;
  font-weight:800;
  margin-bottom:8px;
}

.bh-stars span{
  color:#1f2937;
  font-size:16px;
  font-weight:700;
  margin-left:8px;
}

.bh-head-text p{
  margin:0;
  color:#4b5563;
  font-size:15px;
  line-height:1.5;
}

.bh-offers{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:10px;
  margin:22px 0;
}

.bh-offers div{
  background:#f8fafc;
  border:1px solid #edf0f3;
  border-radius:12px;
  padding:12px;
  font-size:14px;
  color:#1f2937;
}

.bh-info-icons{
  display:flex;
  justify-content:center;
  gap:12px;
  margin-bottom:22px;
  flex-wrap:wrap;
}

.bh-info-btn{
  border:1px solid #e5e7eb;
  background:#fff;
  border-radius:12px;
  padding:10px 14px;
  cursor:pointer;
  min-width:120px;
}

.bh-info-btn span{
  display:block;
  font-size:22px;
  margin-bottom:4px;
}

.bh-info-btn small{
  color:#374151;
  font-weight:700;
}

.bh-info-btn:hover{
  border-color:#1E7F49;
  box-shadow:0 5px 14px rgba(30,127,73,.12);
}

.bh-buttons{
  display:flex;
  gap:14px;
}

.bh-btn{
  flex:1;
  padding:15px;
  border-radius:12px;
  text-align:center;
  font-weight:800;
  text-decoration:none;
}

.bh-primary{
  background:#1E7F49;
  color:#fff;
}

.bh-secondary{
  border:2px solid #1E7F49;
  color:#1E7F49;
  background:#fff;
}

.bh-footer{
  margin-top:18px;
  padding-top:14px;
  border-top:1px solid #eef0f2;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-size:12px;
  color:#6b7280;
}

.bh-footer img{
  height:24px;
  width:auto;
}

@media(max-width:900px){
  .bh-offers{
    grid-template-columns:repeat(2,1fr);
  }
}

@media(max-width:600px){
  .bh-card{
    padding:18px;
  }

  .bh-top{
    flex-direction:column;
    text-align:center;
  }

  .bh-logo-box{
    width:150px;
  }

  .bh-offers{
    grid-template-columns:1fr;
  }

  .bh-buttons{
    flex-direction:column;
  }

  .bh-stars span{
    display:block;
    margin-left:0;
    margin-top:4px;
  }
}
/* =========================================
   BANNER SLOT COMPATTI / APRIBILI
   ========================================= */

.bh-slot-banner-item{
    margin:0 0 16px;
}

.bh-slot-banner-toggle{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:12px 16px;
    border:1px solid #dbe2ea;
    border-radius:14px;
    background:#fff;
    color:#111827;
    font-weight:800;
    cursor:pointer;
    box-shadow:0 6px 18px rgba(0,0,0,.06);
}

.bh-slot-banner-toggle:hover{
    border-color:#ffd400;
}

.bh-slot-banner-toggle-text{
    text-align:left;
}

.bh-slot-banner-arrow{
    flex:0 0 auto;
    transition:transform .25s ease;
}

.bh-slot-banner-toggle[aria-expanded="true"] .bh-slot-banner-arrow{
    transform:rotate(180deg);
}

.bh-slot-banner-item.is-open .bh-slot-banner-toggle{
    border-color:#ffd400;
}

@media(max-width:600px){

    .bh-slot-banner-toggle{
        padding:11px 14px;
        font-size:.95rem;
    }
}
/* Nelle recensioni Slot mantiene visibile la testata del banner */

.bh-slot-banner-content{
    display:block;
}

.bh-slot-banner-content .bh-card{
    margin:0;
}

.bh-slot-banner-content .bh-offers,
.bh-slot-banner-content .bh-info-icons,
.bh-slot-banner-content .bh-buttons,
.bh-slot-banner-content .bh-footer{
    display:none;
}

.bh-slot-banner-item.is-open .bh-slot-banner-content .bh-offers{
    display:grid;
}

.bh-slot-banner-item.is-open .bh-slot-banner-content .bh-info-icons{
    display:flex;
}

.bh-slot-banner-item.is-open .bh-slot-banner-content .bh-buttons{
    display:flex;
}

.bh-slot-banner-item.is-open .bh-slot-banner-content .bh-footer{
    display:flex;
}
/* Linguetta integrata dentro il banner Slot */

.bh-slot-banner-content .bh-slot-banner-toggle{
    margin:18px 0 0;
    border:0;
    border-top:1px solid #e5e7eb;
    border-radius:0;
    box-shadow:none;
    padding:14px 4px 2px;
    background:transparent;
    color:#003b8f;
}

.bh-slot-banner-content .bh-slot-banner-toggle:hover{
    border-color:#ffd400;
    color:#b58a00;
}

.bh-slot-banner-item.is-open .bh-slot-banner-toggle{
    border-color:#ffd400;
}