/* aufwertung.css
   Visuelle Vereinheitlichung der Seite. Lädt nach style.css und überschreibt nur Darstellung.
   Zurücknehmen: diese Datei und den zugehörigen <link> entfernen. */

:root{
  --mv-ink:#15382f;
  --mv-navy:#1f3344;
  --mv-green:#2f7a52;
  --mv-green-dark:#256443;
  --mv-sage:#79bfa5;
  --mv-tint:#f4f8f5;
  --mv-line:#dfe9e3;
}

/* 1. Überschriften: eine Schrift, eine Farbe */
html body:not(#_) #main h2,
html body:not(#_) #main h2 a{
  font-family:inherit!important;
  color:var(--mv-ink)!important;
  font-weight:700!important;
  letter-spacing:-0.01em;
}
html body:not(#_) #main h3,
html body:not(#_) #main h3 a{
  font-family:inherit!important;
  color:var(--mv-navy)!important;
}
/* Beitragstitel in Listen bleiben ruhiger als Abschnittsüberschriften */
html body:not(#_) #main .news-overview-cards .news-card h2,
html body:not(#_) #main .news-overview-cards .news-card h2 a{
  font-weight:600!important;
  color:var(--mv-navy)!important;
  letter-spacing:-0.005em;
}
html body:not(#_) #main h2 a,
html body:not(#_) #main h3 a{text-decoration:none!important}
html body:not(#_) #main h2 a:hover,
html body:not(#_) #main h3 a:hover{text-decoration:underline!important;text-underline-offset:0.18em}

/* Keine automatische Silbentrennung in Überschriften, Buttons und Navigation */
html body:not(#_) h1,html body:not(#_) h2,html body:not(#_) h3,
html body:not(#_) .btn,html body:not(#_) summary,html body:not(#_) .nav-links a{
  hyphens:manual!important;-webkit-hyphens:manual!important;
}

/* 2. Links im Text: einheitlich grün und erkennbar */
html body:not(#_) #main p a:not(.btn):not(.statute__btn):not(.cta-text-link),
html body:not(#_) #main li a:not(.btn),
html body:not(#_) #main .news-card-cta a{
  color:var(--mv-green-dark)!important;
  text-decoration:underline!important;
  text-decoration-thickness:1px!important;
  text-decoration-color:rgba(37,100,67,.45)!important;
  text-underline-offset:0.2em!important;
}
html body:not(#_) #main p a:not(.btn):not(.statute__btn):not(.cta-text-link):hover,
html body:not(#_) #main li a:not(.btn):hover,
html body:not(#_) #main .news-card-cta a:hover{
  color:var(--mv-ink)!important;
  text-decoration-color:currentColor!important;
}
html body:not(#_) #main a.section-sub-link{font-weight:600!important}
html body:not(#_) main.home-page .home-section-head{margin-bottom:1.5rem!important}

/* 3. Buttons: ohne farbigen Leuchtschatten, überall gleich */
html body:not(#_) .btn.btn-primary{
  background:var(--mv-green)!important;
  border:1px solid var(--mv-green)!important;
  color:#fff!important;
  border-radius:6px!important;
  box-shadow:0 1px 2px rgba(21,56,47,.18)!important;
}
html body:not(#_) .btn.btn-primary:hover{
  background:var(--mv-green-dark)!important;
  border-color:var(--mv-green-dark)!important;
  box-shadow:0 2px 6px rgba(21,56,47,.2)!important;
}
html body:not(#_) .btn.btn-secondary{
  background:#fff!important;
  border:1px solid rgba(47,122,82,.55)!important;
  color:var(--mv-ink)!important;
  border-radius:6px!important;
  box-shadow:none!important;
}
html body:not(#_) .btn.btn-secondary:hover{
  border-color:var(--mv-green)!important;
  background:var(--mv-tint)!important;
}
html body:not(#_) .btn:focus-visible{outline:3px solid var(--mv-ink)!important;outline-offset:3px!important}

/* 4. Abschluss-Band: der eine dunkle Block pro Seite */
html body:not(#_) #main section.cta-band{
  background:var(--mv-ink)!important;
  border:0!important;
  padding-top:clamp(2.5rem,5vw,3.5rem)!important;
  padding-bottom:clamp(2.5rem,5vw,3.5rem)!important;
}
html body:not(#_) #main section.cta-band h2{color:#fff!important}
html body:not(#_) #main section.cta-band p{color:rgba(255,255,255,.88)!important}
html body:not(#_) #main section.cta-band .btn.btn-primary{
  background:#fff!important;border-color:#fff!important;color:var(--mv-ink)!important;box-shadow:none!important;
}
html body:not(#_) #main section.cta-band .btn.btn-primary:hover{background:#e6f1eb!important;border-color:#e6f1eb!important}
html body:not(#_) #main section.cta-band .btn.btn-secondary{
  background:transparent!important;border-color:rgba(255,255,255,.7)!important;color:#fff!important;
}
html body:not(#_) #main section.cta-band .btn.btn-secondary:hover{background:rgba(255,255,255,.1)!important;border-color:#fff!important}
html body:not(#_) #main section.cta-band a.cta-text-link{
  color:#fff!important;text-decoration:underline!important;text-decoration-color:rgba(255,255,255,.6)!important;text-underline-offset:0.2em!important;
}
html body:not(#_) #main section.cta-band a.cta-text-link:hover{text-decoration-color:#fff!important}
html body:not(#_) #main section.cta-band .btn:focus-visible,
html body:not(#_) #main section.cta-band a:focus-visible{outline:3px solid #fff!important;outline-offset:3px!important}

/* 5. Footer: ruhige Fläche statt Verlauf */
html body:not(#_) footer.site-footer{background:var(--mv-tint)!important;background-image:none!important}

/* 6. Startseite: Flächen wechseln, Haarlinien entfallen */
html body:not(#_) main.home-page > section{border-top:0!important;border-bottom:0!important}
html body:not(#_) main.home-page > section.home-trust-block{background:#fff!important}
html body:not(#_) main.home-page > section.home-incident-strip{background:var(--mv-tint)!important}
html body:not(#_) main.home-page > section.home-member-benefits{background:#fff!important}
html body:not(#_) main.home-page > section.home-content-teaser{background:var(--mv-tint)!important}
html body:not(#_) main.home-page > section.home-content-teaser + section.home-content-teaser:not(.home-help-section){background:#fff!important}
html body:not(#_) main.home-page > section.home-help-section{background:var(--mv-tint)!important}
html body:not(#_) main.home-page > section.home-faq-section{background:#fff!important}

/* Abschnittskopf: Luft zwischen Überschrift, Einleitung und Link */
html body:not(#_) main.home-page .home-section-head h2{margin-bottom:.6rem!important}
html body:not(#_) main.home-page .home-section-head p{color:#263746!important}
html body:not(#_) main.home-page .home-section-head p + p{margin-top:.5rem!important}

/* Teaser-Karten: linksbündig, Rahmen statt Schatten */
html body:not(#_) main.home-page .home-grid-2 .news-card{
  text-align:left!important;box-shadow:none!important;border:1px solid var(--mv-line)!important;background:#fff!important;
}
html body:not(#_) main.home-page .home-grid-2 .news-card h3,
html body:not(#_) main.home-page .home-grid-2 .news-card h3 a{text-align:left!important}

/* 7. Themen-Einstiege als Kacheln */
html body:not(#_) main.home-page .home-incident-strip__links{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:1rem!important;align-items:stretch!important;
  border:0!important;padding:0!important;margin-top:1.75rem!important;
}
html body:not(#_) main.home-page .home-incident-strip__links a{
  display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;gap:.85rem!important;
  min-height:0!important;padding:1.15rem 1.15rem 1.1rem!important;
  background:#fff!important;border:1px solid var(--mv-line)!important;border-radius:10px!important;
  color:var(--mv-ink)!important;font-weight:650!important;font-size:1rem!important;line-height:1.35!important;text-align:left!important;text-decoration:none!important;
  transition:border-color .16s ease,transform .16s ease!important;
}
html body:not(#_) main.home-page .home-incident-strip__links a:hover{border-color:var(--mv-green)!important;transform:translateY(-2px)}
html body:not(#_) main.home-page .home-incident-strip__links a:focus-visible{outline:3px solid var(--mv-ink)!important;outline-offset:3px!important}
html body:not(#_) main.home-page .mv-tile__icon{
  display:inline-grid;place-items:center;width:44px;height:44px;flex:none;border-radius:50%;background:#e6f1eb;color:var(--mv-green);
}
html body:not(#_) main.home-page .mv-tile__icon svg{width:22px;height:22px;display:block}
html body:not(#_) main.home-page .mv-tile__label::after{content:" →";color:var(--mv-green);font-weight:600}
@media (max-width:900px){
  html body:not(#_) main.home-page .home-incident-strip__links{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media (max-width:480px){
  html body:not(#_) main.home-page .home-incident-strip__links{grid-template-columns:1fr!important}
  html body:not(#_) main.home-page .home-incident-strip__links a{flex-direction:row!important;align-items:center!important}
}

/* 8. Faktenleiste unter dem Einstieg */
html body:not(#_) main.home-page .mv-facts{
  list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;
  max-width:880px;margin:1.5rem auto 0;padding:0;border:1px solid var(--mv-line);border-radius:10px;background:var(--mv-tint);
}
html body:not(#_) main.home-page .mv-facts li{
  display:flex;align-items:center;gap:.75rem;margin:0;padding:.9rem 1.1rem;text-align:left;border-left:1px solid var(--mv-line);
}
html body:not(#_) main.home-page .mv-facts li:first-child{border-left:0}
html body:not(#_) main.home-page .mv-facts svg{width:22px;height:22px;flex:none;color:var(--mv-green)}
html body:not(#_) main.home-page .mv-facts strong{display:block;color:var(--mv-ink);font-size:.95rem;line-height:1.3}
html body:not(#_) main.home-page .mv-facts span{display:block;color:#3f5148;font-size:.875rem;line-height:1.35}
@media (max-width:760px){
  html body:not(#_) main.home-page .mv-facts{grid-template-columns:1fr}
  html body:not(#_) main.home-page .mv-facts li{border-left:0;border-top:1px solid var(--mv-line)}
  html body:not(#_) main.home-page .mv-facts li:first-child{border-top:0}
}

/* Kennzahlen behalten ihre Serifenziffern, der Abschnitt wird weiß */
html body:not(#_) main.home-page > section.home-member-benefits.home-membership-redesign{background:#fff!important}

/* 9. Hero: Fließtext dunkler für sicheren Kontrast */
html body main#main>#hero#hero#hero .hero-intro,
html body main#main>#hero#hero#hero .hero-seo-intro,
html body main#main>#hero#hero#hero .hero-copy p{color:#2b3b36!important;opacity:1!important}
html body:not(#_) #main #hero .btn.btn-primary{box-shadow:0 1px 2px rgba(21,56,47,.18)!important;background:var(--mv-green)!important}

@media (prefers-reduced-motion:reduce){
  html body:not(#_) main.home-page .home-incident-strip__links a{transition:none!important}
  html body:not(#_) main.home-page .home-incident-strip__links a:hover{transform:none}
}

/* 10. Mitgliedschaft: Abstände straffen, Karten angleichen, Kontraste */
html body:not(#_) main.mitgliedschaft-page #beitragsmodelle .grid-2 > section{padding-top:0!important;padding-bottom:0!important;margin-top:0!important}
html body:not(#_) main.mitgliedschaft-page #beitragsmodelle .grid-2 h3{margin-top:1.25rem!important}
html body:not(#_) main.mitgliedschaft-page #beitragsmodelle > h2{margin-top:0!important;margin-bottom:.5rem!important}
html body:not(#_) main.mitgliedschaft-page .pricing-card,
html body:not(#_) main.mitgliedschaft-page .pricing-card.pricing-card--highlight{
  border:1px solid var(--mv-line)!important;box-shadow:none!important;background:#fff!important;
}
html body:not(#_) main .pricing-card__label,
html body:not(#_) main .membership-benefit-kicker{color:var(--mv-green)!important}
html body:not(#_) main .membership-step__icon{background:#e6f1eb!important;color:var(--mv-green)!important}
html body:not(#_) main .membership-step__icon svg{color:var(--mv-green)!important}
html body:not(#_) main#main section.statute{padding-top:0!important;padding-bottom:0!important}
html body:not(#_) main.mitgliedschaft-page #beitragsmodelle > section.statute{margin-top:3rem!important;margin-bottom:3rem!important}

/* 11. Leistungen: Hinweisblöcke als ruhige Flächen, Listen mit Marken */
html body:not(#_) main.leistungen-page .important-note{
  background:var(--mv-tint)!important;border:1px solid var(--mv-line)!important;border-radius:12px!important;
  padding:1.75rem 2rem!important;margin-top:2rem!important;margin-bottom:2rem!important;
}
html body:not(#_) main.leistungen-page .important-note h3{margin-top:0!important}
html body:not(#_) main.leistungen-page .important-note > ul > li{position:relative;padding-left:1.7rem!important}
html body:not(#_) main.leistungen-page .important-note > ul > li::before{
  content:"";position:absolute;left:.15rem;top:.42em;width:.55rem;height:.3rem;
  border-left:2px solid var(--mv-green);border-bottom:2px solid var(--mv-green);transform:rotate(-45deg);
}
html body:not(#_) main.leistungen-page .important-note > p:last-child{margin-bottom:0!important}
html body:not(#_) main.leistungen-page #leistungen > p{text-align:left!important}
@media (max-width:600px){
  html body:not(#_) main.leistungen-page .important-note{padding:1.25rem 1.1rem!important}
}

/* Text im dunklen Band und kleine Kontrastkorrekturen */
html body:not(#_) #main section.cta-band li{color:rgba(255,255,255,.88)!important}
html body:not(#_) #main section.cta-band li::marker{color:#fff!important}
html body:not(#_) #main .contact-quick-card > span{color:var(--mv-green)!important}
html body:not(#_) #main #hero .article-date,
html body:not(#_) #main #hero .article-date time{color:#55655f!important}
html body:not(#_) #main .artikel-update-label{color:#9a5200!important}
html body:not(#_) main.mitgliedschaft-page #beitragsmodelle .grid-2 > section{display:flex!important;flex-direction:column!important}
html body:not(#_) main.mitgliedschaft-page #beitragsmodelle .grid-2 > section > .pricing-card{flex:1 1 auto!important;height:auto!important}
html body:not(#_) main.mitgliedschaft-page .membership-overview{padding-top:2.75rem!important;padding-bottom:2.75rem!important}
html body:not(#_) main.mitgliedschaft-page .membership-overview > h2{margin-top:0!important}
html body:not(#_) main.mitgliedschaft-page .membership-step{padding-left:1.25rem!important;padding-right:1.25rem!important}
html body:not(#_) main.mitgliedschaft-page .membership-step p{max-width:none!important;width:auto!important}
html body:not(#_) main .membership-benefit-list li::before{background:var(--mv-green)!important}
html body:not(#_) main.home-page .home-incident-strip__links a::after,
html body:not(#_) main.home-page .home-incident-strip__links a::before{content:none!important}

/* Nachbesserungen aus der unabhängigen Prüfung */
html body main#main>#hero#hero#hero h1{hyphens:manual!important;-webkit-hyphens:manual!important;overflow-wrap:normal!important;word-break:normal!important}
html body:not(#_) #main h2,html body:not(#_) #main h3{hyphens:manual!important;-webkit-hyphens:manual!important}
html body:not(#_) main.home-page .home-incident-strip__copy,
html body:not(#_) main.home-page .home-incident-strip__copy p{text-align:center!important}
html body:not(#_) main.home-page .home-incident-strip__copy p{margin-left:auto!important;margin-right:auto!important}
html body:not(#_) main.leistungen-page section.cta-band{margin-top:3.5rem!important}
html body:not(#_) #main section.cta-band a.cta-text-link{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:44px!important;padding:.7rem 1.15rem!important;
  border:1px solid rgba(255,255,255,.7)!important;border-radius:6px!important;font-weight:700!important;font-size:.875rem!important;text-decoration:none!important;
}
html body:not(#_) #main section.cta-band a.cta-text-link:hover{background:rgba(255,255,255,.1)!important;border-color:#fff!important}
html body:not(#_) #main p a[href^="tel:"]:not(.btn){text-decoration:none!important;font-weight:600!important}
html body:not(#_) main.leistungen-page .important-note.leistungen-detail-links > ul > li{padding-left:0!important}
html body:not(#_) main.leistungen-page .important-note.leistungen-detail-links > ul > li::before{content:none!important}
html body:not(#_) main.leistungen-page .important-note .btn + .btn{margin-left:.5rem!important}

/* Linkkette "Weitere Themen": ruhiger, Unterstreichung erst beim Überfahren */
html body:not(#_) #main section[aria-labelledby=weitere-themen-heading] li a:not(.btn){
  text-decoration:none!important;font-weight:600!important;color:var(--mv-green-dark)!important;
}
html body:not(#_) #main section[aria-labelledby=weitere-themen-heading] li a:not(.btn):hover{text-decoration:underline!important}
