/* MHR Custom-Styles für Helix Ultimate */
/* Leere Topbar ausblenden */
#sp-top-bar { display: none !important; }
/* Begrüßungs-Hero (Startseite, content-top) */
.mhr-hero {
  text-align: center;
  padding: 3rem 1.3rem 2.7rem;
  background:
    linear-gradient(90deg, rgba(17,56,26,.85), rgba(17,56,26,.45) 60%),
    url(../images/hero-bg.webp) center / cover no-repeat,
    #14401a;
  color: #fff;
  border-radius: 14px;
  margin: -70px 0 2rem;
  overflow: hidden;
}
.mhr-hero h1 { color:#fff; margin:0 0 .55rem; font-size: clamp(1.8rem, 3.2vw, 2.6rem); font-weight:700; text-shadow:0 2px 8px rgba(0,0,0,.30); }
.mhr-hero p { margin:0; font-size: 1.12rem; color:#eef6ef; text-shadow:0 1px 6px rgba(0,0,0,.28); }
@media (max-width: 767px){
  .mhr-hero {
    padding-bottom: 4.2rem;
    background:
      linear-gradient(rgba(17,56,26,.6), rgba(17,56,26,.72)),
      url(../images/hero-bg.webp) center bottom / cover no-repeat,
      #14401a;
  }
}

.spielorte-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:1rem; margin:1.5rem 0; }
.spielort { border:1px solid #e6ebe7; border-radius:12px; padding:1.1rem 1.2rem; background:#f6f8f6; }
.spielort h3 { margin:0 0 .45rem; font-size:1.06rem; color:#226b2b; }
.spielort p { margin:0 0 .7rem; color:#1f2a24; }
.spielort a { font-weight:600; }
/* Tabellen dezent */
.article-details table td, .article-details table th { padding:.55rem .8rem; }

/* Footer zentriert */
#sp-footer { padding: 1.4rem 0; }
#sp-footer1 .sp-column { text-align: center; }
#sp-footer1 ul.menu, #sp-footer1 .mod-menu {
  display: flex; justify-content: center; align-items: center;
  gap: .4rem 1.8rem; flex-wrap: wrap; list-style: none; padding: 0; margin: 0;
}
#sp-footer1 .mod-menu .nav-item > a { padding: .2rem .3rem; }
/* Copyright im Footer */
#sp-footer1 .sp-column::after {
  content: "© 2026 Mittelhessenrunde";
  display: block;
  width: 100%;
  margin-top: .9rem;
  font-size: .85rem;
  color: #cfe0d2;
}
/* Helix Offcanvas-Toggle auf Desktop ausblenden (Menü ist sichtbar) */
@media (min-width: 992px){ .sp-megamenu-toggle, #offcanvas-toggler { display:none !important; } }

/* Breite Tabellen (Termine, Meldeliste) auf Mobile horizontal scrollbar.
   Helix-Artikel-Container = .article-details; inline width:500px muss überschrieben werden. */
@media (max-width: 767px){
  .article-details table,
  .com-content-article table,
  .item-page table {
    display: block !important;
    width: 100% !important;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .article-details table td, .article-details table th,
  .com-content-article table td, .com-content-article table th,
  .item-page table td, .item-page table th {
    white-space: nowrap;
  }
}

/* Tabellen (Termine, Meldeliste): Header einfärben + Zebra für Datenzeilen */
.mhr-table { border-collapse: collapse; }
.mhr-table td { border: 1px solid #cdddcf; }
.mhr-table tr:first-child td {
  background: #226b2b;
  color: #fff;
  font-weight: 700;
}
.mhr-table tr:nth-child(even) td { background: #eef4ee; }
.mhr-table tr:nth-child(odd):not(:first-child) td { background: #ffffff; }
/* Meldeliste: zweite Kopfzeile (Spielorte) ebenfalls als Header */
.mhr-table--2head tr:nth-child(2) td { background: #2f8038; color: #fff; font-weight: 700; }
.mhr-table caption { padding-bottom: .6rem; font-size: 1rem; }
