/* ASV Bietigheim/Enz – Helix3 3.1.4 | 27.10.2026 */
:root {
  --asv-blue: #087bc8;
  --asv-blue-dark: #075d98;
  --asv-text: #243442;
  --asv-focus: #ffcf40;
}
body { color: var(--asv-text); line-height: 1.65; -webkit-font-smoothing: antialiased; }
#sp-main-body { background: #fff; }
#sp-main-body p { line-height: 1.75; }
#sp-main-body a { text-underline-offset: 3px; }
#sp-main-body img, .sp-module img, .article-details img, .item-page img { max-width: 100%; height: auto; }
#sp-top-bar, #sp-header { box-sizing: border-box; }
#sp-top-bar a, #sp-header a { transition: color .2s ease, background-color .2s ease; }
.sp-megamenu-parent > li > a, .sp-megamenu-parent > li > span { transition: color .2s ease, background-color .2s ease; }
.sp-megamenu-parent > li > a:focus-visible, .sp-megamenu-parent > li > a:hover { text-decoration: underline; text-underline-offset: 5px; }
#sp-main-body .entry-header, #sp-main-body .page-header { margin-bottom: 18px; }
#sp-main-body h1, #sp-main-body h2, #sp-main-body h3 { line-height: 1.3; }
#sp-main-body p + p { margin-top: 12px; }
#sp-footer { background-color: var(--asv-blue-dark); color: #fff; }
#sp-footer a { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
#sp-footer a:hover { color: #e6f5ff; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, [tabindex]:focus-visible { outline: 3px solid var(--asv-focus); outline-offset: 3px; }
/* Eigenständige Navigationszeile */
#sp-navigation { background-color: #075080; padding-top: 0 !important; padding-bottom: 0 !important; }
#sp-navigation .sp-megamenu-parent > li > a, #sp-navigation .sp-megamenu-parent > li > span { color: #fff !important; text-shadow: none !important; }
#sp-navigation .sp-megamenu-parent > li > a:hover, #sp-navigation .sp-megamenu-parent > li > a:focus-visible { color: #b9e3ff !important; }
/* Wappenposition aus dem zuletzt bestätigten Desktop-Screenshot */
#sp-header { overflow: visible !important; }
#sp-header .logo { position: relative; top: 105px; z-index: 10; }
#sp-header .logo .sp-default-logo { width: 130px; height: auto; }
/* Tatsächlicher Helix3-Schalter ist eine ID, keine Klasse */
@media (min-width: 992px) {
  #offcanvas-toggler { display: none !important; }
}
@media (max-width: 767px) {
  body { font-size: 16px; }
  #sp-main-body p { line-height: 1.7; }
  #sp-main-body h1 { font-size: clamp(1.65rem, 6vw, 2.1rem); }
  #sp-main-body h2 { font-size: clamp(1.35rem, 5vw, 1.75rem); }
  #sp-footer { text-align: center; }
}
@media (prefers-reduced-motion: reduce) {
  #sp-top-bar a, #sp-header a, .sp-megamenu-parent > li > a, .sp-megamenu-parent > li > span { transition: none !important; }
}
	/* ASV – Smartphone-Optimierung */
@media (max-width: 767px) {

    /* Vereinswappen verkleinern */
    #sp-header .logo .sp-default-logo {
        width: 90px !important;
        height: auto !important;
    }

    /* Wappenposition mobil anpassen */
    #sp-header .logo {
        top: 105px;
        z-index: 10;
    }

    /* Mobiles Menü gut erkennbar */
    #offcanvas-toggler {
        display: inline-block !important;
    }

    #offcanvas-toggler i {
        color: #ffffff !important;
    }
}
/* ASV – Abstände im mobilen Inhaltsbereich */
@media (max-width: 767px) {
    #sp-main-body h1,
    #sp-main-body h2 {
        margin-bottom: 12px !important;
    }
}