/* HistoricJackpot — layout.css */
.wrap{
  max-width: 1080px;
  margin: 0 auto;
  padding: 0 1.25rem;
}

header.site-header{
  background: var(--color-bg);
  color: var(--color-text-dark);
  border-bottom: 4px solid var(--color-accent);
}
header.site-header .wrap{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:1rem;
  padding-top:1rem;
  padding-bottom:1rem;
}
.brand{
  font-family: var(--font-head);
  font-weight:700;
  font-size:1.4rem;
  color: var(--color-text-dark);
  text-decoration:none;
}
.brand span{ color: var(--color-accent); }

nav.site-nav ul{
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  gap:0.25rem 1rem;
  margin:0;
  padding:0;
}
nav.site-nav a{
  color: var(--color-text-dark);
  text-decoration:none;
  font-family: var(--font-head);
  font-size:0.95rem;
  padding: 0.35rem 0.15rem;
  border-bottom: 2px solid transparent;
}
nav.site-nav a:hover, nav.site-nav a:focus{
  border-bottom-color: var(--color-accent);
  color: var(--color-text-dark);
}

main{ display:block; }

.hero{
  background: linear-gradient(135deg, var(--color-bg) 0%, var(--color-surface) 100%);
  color: var(--color-text-dark);
  padding: 3rem 0;
}
.hero h1{ color: var(--color-text-dark); font-size:2.2rem; max-width: 34ch; }
.hero p.lede{ font-size:1.15rem; max-width: 60ch; }

.page-hero{
  background: var(--color-bg);
  color: var(--color-text-dark);
  padding: 2.25rem 0;
  border-bottom: 4px solid var(--color-accent);
}
.page-hero h1{ color: var(--color-text-dark); }

section{ padding: 2.5rem 0; }
section.alt{ background: #EFE9D8; }

footer.site-footer{
  background: var(--color-bg);
  color: var(--color-text-dark);
  padding: 2.5rem 0 1.5rem;
  margin-top: 2rem;
}
footer.site-footer a{ color: var(--color-text-dark); }
footer.site-footer .footer-cols{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(200px,1fr));
  gap: 1.5rem;
  margin-bottom: 1.5rem;
}
footer.site-footer h2{ color: var(--color-accent); font-size:1rem; }
footer.site-footer ul{ list-style:none; padding:0; margin:0; }
footer.site-footer li{ margin-bottom:0.4rem; }
.footer-fine{
  border-top: 1px solid rgba(255,255,255,0.2);
  padding-top:1rem;
  font-size:0.85rem;
  color: #C9D8D5;
}

.grid-cards{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(260px,1fr));
  gap:1.5rem;
}

.breadcrumb-nav ol{
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  gap:0.3rem;
  padding:0;
  margin: 0.75rem 0 0;
  font-size:0.85rem;
}
.breadcrumb-nav a{ color: var(--color-text-dark); }
.breadcrumb-nav li:not(:last-child)::after{ content:"›"; margin-left:0.3rem; color:var(--color-accent); }

@media (max-width: 640px){
  .hero h1{ font-size:1.6rem; }
  nav.site-nav ul{ gap: 0.2rem 0.6rem; }
}
