/* Sportsbook hub hero — the modality grid is the navigation. */

/* Fraunces is declared in sections.css, which every page loads. */

.sb-hero{
  background:linear-gradient(160deg,#08422F 0%,#053427 62%,#042A20 100%);
  border-bottom:1px solid var(--line);
  padding:64px 0 26px;
}
/* The global .section top padding is built for pages that open cold; here the hero already separates them. */
.sb-hero + .section{padding-top:30px}
.sb-hero-grid{
  display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);
  gap:62px;align-items:center;
}

.sb-kicker{
  display:inline-flex;align-items:center;gap:10px;
  font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:700;color:var(--muted);
}
.sb-kicker b{
  color:var(--forest-2);background:var(--gold);
  padding:4px 9px;border-radius:5px;font-size:11px;
}

.sb-title{
  margin:22px 0 0;
  font-family:Fraunces,Georgia,'Times New Roman',serif;
  font-variation-settings:'opsz' 120,'wght' 600,'SOFT' 40,'WONK' 1;
  font-weight:600;
  font-size:clamp(44px,5.6vw,78px);line-height:1.02;letter-spacing:-.02em;
}
.sb-title i{
  font-style:italic;color:var(--gold);
  font-variation-settings:'opsz' 120,'wght' 500,'SOFT' 60,'WONK' 1;
}
/* Category titles are descriptive sentences, not a two-word question. */
.sb-title-long{font-size:clamp(32px,3.7vw,52px);line-height:1.08;letter-spacing:-.015em}
.sb-hero .page-update-date{
  margin:16px 0 0;font-size:12px;color:var(--heromuted);
}
.sb-lede{
  margin:18px 0 0;font-size:17px;color:#CFE3D7;max-width:47ch;
}

.sb-actions{margin-top:30px;display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.sb-btn{
  display:inline-block;text-decoration:none;
  background:var(--button);color:var(--buttonink);
  font-weight:700;font-size:15px;padding:14px 26px;border-radius:12px;
  transition:filter .16s;
}
.sb-btn:hover{filter:brightness(1.08)}
.sb-btn.ghost{
  background:transparent;color:var(--ink);border:1px solid var(--line);
}
.sb-btn.ghost:hover{border-color:var(--gold);color:var(--gold);filter:none}

.sb-meta{
  margin:24px 0 0;display:flex;gap:18px;flex-wrap:wrap;
  font-size:12px;color:#8FAFA0;
}
.sb-meta span::after{content:"·";margin-left:18px;color:var(--line)}
.sb-meta span:last-child::after{content:""}

/* --- modality grid --- */
.sb-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.sb-tile{
  display:block;text-decoration:none;
  border:1px solid var(--line);border-radius:16px;
  background:rgba(4,36,27,.6);
  padding:20px 18px 16px;
  transition:border-color .18s,transform .18s,background .18s;
}
.sb-tile:hover,.sb-tile:focus-visible{
  border-color:var(--gold);transform:translateY(-3px);background:rgba(8,48,35,.85);
}
.sb-tile[aria-current="page"]{border-color:var(--gold);background:rgba(8,48,35,.9)}
.sb-tile-n{
  display:block;
  font-family:Fraunces,Georgia,serif;
  font-variation-settings:'opsz' 120,'wght' 700,'SOFT' 30,'WONK' 1;
  font-weight:700;font-size:42px;line-height:1;color:var(--gold);
}
.sb-tile-l{display:block;margin-top:8px;font-size:15px;font-weight:700;color:var(--ink)}
.sb-tile-marks{display:flex;align-items:center;margin-top:14px}
.sb-tile-marks .operator-logo{
  width:28px;height:28px;min-width:28px;min-height:28px;
  border-radius:8px;padding:3px;margin-left:-8px;
  border:1.5px solid #053427;background:#fff;
  display:grid;place-items:center;font-size:9px;flex:0 0 auto;
}
.sb-tile-marks .operator-logo:first-child{margin-left:0}
.sb-tile-marks .operator-logo img{width:100%;height:100%;object-fit:contain}
.sb-tile-marks b{margin-left:9px;font-size:11.5px;color:var(--muted);font-weight:600}

.sb-tile-all{
  grid-column:1/-1;
  display:flex;justify-content:space-between;align-items:center;gap:14px;
  border:1px dashed var(--line);border-radius:16px;padding:15px 18px;
  text-decoration:none;font-size:14px;color:var(--muted);
  transition:border-color .18s,color .18s;
}
.sb-tile-all b{color:var(--ink)}
.sb-tile-all:hover,.sb-tile-all:focus-visible{border-color:var(--gold);color:var(--gold)}
.sb-tile-all:hover b,.sb-tile-all:focus-visible b{color:var(--gold)}
.sb-tile-all[aria-current="page"]{border-style:solid;border-color:var(--line)}

.sb-footnote{
  margin:38px 0 0;font-size:12.5px;color:#8FAFA0;max-width:78ch;
}

@media (max-width:1080px){
  .sb-hero{padding:48px 0 24px}
  .sb-hero-grid{grid-template-columns:1fr;gap:38px}
  .sb-lede{max-width:none}
}
@media (max-width:720px){
  .sb-hero{padding:36px 0 20px}
  .sb-hero + .section{padding-top:22px}
  .sb-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sb-title{font-size:clamp(34px,9vw,48px)}
  .sb-title-long{font-size:clamp(27px,7vw,36px)}
  .sb-tile{padding:16px 14px 13px}
  .sb-tile-n{font-size:34px}
  .sb-btn{flex:1 1 100%;text-align:center}
  .sb-footnote{margin-top:26px}
}
@media (prefers-reduced-motion:reduce){
  .sb-tile:hover,.sb-tile:focus-visible{transform:none}
}

/* --- competition index (/apostas-esportivas/categorias/ligas) --- */
.league-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:6px 0 22px}
.league-card{
  display:flex;flex-direction:column;gap:10px;
  border:1px solid var(--line);border-radius:16px;background:var(--surface);
  padding:22px 20px;text-decoration:none;
  transition:border-color .18s,transform .18s;
}
.league-card:hover,.league-card:focus-visible{border-color:var(--gold);transform:translateY(-3px)}
.league-card h2{margin:0;font-size:19px;line-height:1.25;color:var(--ink)}
.league-card p{margin:0;font-size:13.5px;color:var(--muted);flex:1}
.league-card-go{font-size:13px;font-weight:700;color:var(--gold)}
@media (prefers-reduced-motion:reduce){.league-card:hover,.league-card:focus-visible{transform:none}}
@media (max-width:1080px){.league-index{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.league-index{grid-template-columns:1fr}}
