/* V317 Farbpalette – ausschließlich Farben, kein Layout. BEMER lädt diese Datei nicht. */
:root{
  --mg-waldgruen:#4F7355;
  --mg-moos:#3E5C44;
  --mg-salbei:#A3B899;
  --mg-sand:#F4F0E8;
  --mg-hellgruen:#E8EFE5;
}

html,body{background:var(--mg-sand)!important;}

/* Sand / Weiß im Wechsel; Top-Leiste und Hinweisband hellgrün. */
header.site-header{background:#fff!important;}
.top-bar{
  background:var(--mg-hellgruen)!important;
  color:var(--mg-moos)!important;
}
.top-bar a,.top-bar a:visited{color:var(--mg-moos)!important;}
.top-bar a:hover,.top-bar a:focus{color:var(--mg-waldgruen)!important;}
.v256-main section.hero,
.v256-main section.page-hero:has(.v256-hero-grid){background:var(--mg-sand)!important;}
.v256-main section.v256-soft-section,
.v256-main .bg-soft{background:#fff!important;}
.v256-main .card,
.v256-main .product-card{background:var(--mg-sand)!important;}

/* Navigation: Waldgrün, weiße Schrift. */
.nav-cta,
.nav-cta:visited{
  background:var(--mg-waldgruen)!important;
  border-color:var(--mg-waldgruen)!important;
  color:#fff!important;
}
.nav-cta:hover,.nav-cta:focus{
  background:var(--mg-moos)!important;
  border-color:var(--mg-moos)!important;
  color:#fff!important;
}
nav.main-nav a[aria-current="page"]{color:var(--mg-waldgruen)!important;}

/* Normale Links und Nummern auf hellem Grund: dunkles Moos. */
.v256-main a:not(.btn):not(.btn2):not(.nav-cta):not(.fab):not(.cv244-button):not(.cv244-partner),
.v256-main a:not(.btn):not(.btn2):not(.nav-cta):not(.fab):not(.cv244-button):not(.cv244-partner):visited{
  color:var(--mg-moos)!important;
}
.v256-main a:not(.btn):not(.btn2):not(.nav-cta):not(.fab):not(.cv244-button):not(.cv244-partner):hover,
.v256-main a:not(.btn):not(.btn2):not(.nav-cta):not(.fab):not(.cv244-button):not(.cv244-partner):focus{
  color:var(--mg-waldgruen)!important;
}

/* Hero-Buttons: Salbei auf der Aubergine-/Markenwelt. */
.v256-main .hero a.btn,
.v256-main .page-hero a.btn{
  background:var(--mg-salbei)!important;
  border-color:var(--mg-salbei)!important;
  color:#fff!important;
}
.v256-main .hero a.btn:hover,
.v256-main .page-hero a.btn:hover{
  background:var(--mg-waldgruen)!important;
  border-color:var(--mg-waldgruen)!important;
  color:#fff!important;
}

/* Der explizite „Über mich“-Button bleibt Waldgrün + weiß. */
.v256-main a.btn[href="ueber-mich.html"]{
  background:var(--mg-waldgruen)!important;
  border-color:var(--mg-waldgruen)!important;
  color:#fff!important;
}
.v256-main a.btn[href="ueber-mich.html"]:hover{
  background:var(--mg-moos)!important;
  border-color:var(--mg-moos)!important;
  color:#fff!important;
}

/* Salbei auf Aubergine-Flächen, Linien und 01–04 bei „So arbeite ich“. */
.bg-anthrazit a:not(.btn):not(.btn2),
.bg-anthrazit .section-kicker,
.bg-anthrazit .accent{color:var(--mg-salbei)!important;}
.bg-anthrazit .icon svg,
.bg-anthrazit [class*="icon"] svg{fill:var(--mg-salbei)!important;color:var(--mg-salbei)!important;}
.bg-anthrazit blockquote,
.bg-anthrazit .notice,
.bg-anthrazit [class*="line"]{border-color:var(--mg-salbei)!important;}
.v256-main .timeline .step b,
.v256-main .steps .step::before{
  background:var(--mg-salbei)!important;
  color:#fff!important;
}

/* Kontakt-Fläche: Dunkles Moos als klarer grüner Abschluss. */
.v256-main .v256-contact{
  background:var(--mg-moos)!important;
  color:#fff!important;
}
.v256-main .v256-contact .cv244-title,
.v256-main .v256-contact .cv244-intro,
.v256-main .v256-contact .cv244-note,
.v256-main .v256-contact .cv244-note strong{
  color:#fff!important;
}
.v256-main .v256-contact .cv244-kicker{color:var(--mg-salbei)!important;}
.v256-main .v256-contact .cv244-note a{color:var(--mg-salbei)!important;}
.v256-main .v256-contact .cv244-button{
  border-color:#fff!important;
  color:#fff!important;
  background:transparent!important;
}
.v256-main .v256-contact .cv244-button:hover{
  background:#fff!important;
  border-color:#fff!important;
  color:var(--mg-moos)!important;
}
.v256-main .v256-contact .cv244-button.cv244-primary{
  background:var(--mg-salbei)!important;
  border-color:var(--mg-salbei)!important;
  color:var(--mg-moos)!important;
}
.v256-main .v256-contact .cv244-button.cv244-primary:hover{
  background:#fff!important;
  border-color:#fff!important;
  color:var(--mg-moos)!important;
}
.v256-main .v256-contact .cv244-card{
  background:var(--mg-sand)!important;
}
.v256-main .v256-contact .cv244-card,
.v256-main .v256-contact .cv244-card p,
.v256-main .v256-contact .cv244-card strong{
  color:var(--c-text)!important;
}
.v256-main .v256-contact .cv244-card a{color:var(--mg-moos)!important;}

/* Hinweisband: hellgrüne Tönung statt Vollfarbe. */
.zfd-event-v304{background:var(--mg-sand)!important;}
.zfd-event-card-v304{
  background:var(--mg-hellgruen)!important;
  border:1px solid var(--mg-salbei)!important;
  color:var(--mg-moos)!important;
}
.zfd-event-card-v304 p,
.zfd-event-card-v304 span,
.zfd-event-card-v304 .zfd-event-title-v304,
.zfd-event-card-v304 .zfd-event-greeting-v304{
  color:var(--mg-moos)!important;
}
.zfd-event-card-v304 a,
.zfd-event-card-v304 a:visited{color:var(--mg-moos)!important;}
.zfd-event-card-v304 a:hover{color:var(--mg-waldgruen)!important;}

/* Footer: Aubergine bleibt bestehen. Grundtext weiß, Links Salbei. */
footer.site-footer,
footer.site-footer .footer-brand,
footer.site-footer .footer-brand p,
footer.site-footer .footer-address,
footer.site-footer .footer-grid,
footer.site-footer .footer-grid h2,
footer.site-footer .footer-grid li,
footer.site-footer .footer-bottom,
footer.site-footer span,
footer.site-footer small,
footer.site-footer p{
  color:#fff!important;
}
footer.site-footer a,
footer.site-footer a:visited{
  color:var(--mg-salbei)!important;
}
footer.site-footer a:hover,
footer.site-footer a:focus{
  color:#fff!important;
}

/* Floating Social Buttons bleiben in der Markenwelt Waldgrün. */
.floating-actions .fab-social,
.floating-actions .fab-whatsapp{
  background:var(--mg-waldgruen)!important;
}
.floating-actions .fab-social:hover,
.floating-actions .fab-whatsapp:hover{
  background:var(--mg-moos)!important;
}


/* V318 – Responsive-Sicherheitskorrektur: Desktop-Navigation früher einklappen.
   BEMER lädt diese Datei bewusst nicht und bleibt daher unverändert. */
@media (max-width:1280px){
  nav.main-nav{
    position:fixed !important;
    left:0 !important;
    right:0 !important;
    top:0;
    height:100vh;
    background:#F4F0E8 !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    padding:30px 24px !important;
    gap:18px !important;
    transform:translateY(-120%) !important;
    transition:transform .25s ease !important;
    overflow-y:auto !important;
    visibility:hidden !important;
    z-index:220 !important;
  }
  nav.main-nav.open{
    transform:translateY(0) !important;
    visibility:visible !important;
  }
  nav.main-nav a{font-size:1.05rem !important;}
  .nav-toggle{
    display:inline-flex !important;
    background:none !important;
    border:0 !important;
    font-size:1.6rem !important;
    color:var(--c-anthrazit) !important;
    cursor:pointer !important;
    padding:4px 8px !important;
    position:relative;
    z-index:230;
  }
}

/* Diagnose: Grid-Items dürfen bei mittleren Desktop-/Tabletbreiten nicht überlaufen. */
@media (max-width:1280px) and (min-width:901px){
  body.diagnose-page-v267 .v256-main .v256-hero-grid,
  body.diagnose-page-v267 .v256-main .split{
    grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr) !important;
    gap:32px !important;
  }
  body.diagnose-page-v267 .v256-main .v256-hero-grid > *,
  body.diagnose-page-v267 .v256-main .split > *{
    min-width:0 !important;
  }
  body.diagnose-page-v267 .v256-main .v256-hero-media,
  body.diagnose-page-v267 .v256-main .split .photo{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    justify-self:stretch !important;
  }
}
@media (max-width:900px){
  body.diagnose-page-v267 .v256-main .v256-hero-grid,
  body.diagnose-page-v267 .v256-main .split{
    grid-template-columns:1fr !important;
  }
  body.diagnose-page-v267 .v256-main .v256-hero-media,
  body.diagnose-page-v267 .v256-main .split .photo{
    width:100% !important;
    max-width:560px !important;
    min-width:0 !important;
    margin-inline:auto !important;
    justify-self:center !important;
  }
}
