/* Restyle the real theme header: retain the logo, menus, search and mobile UI. */
#theme-header{--main-nav-background:#fff;--main-nav-secondry-background:#f1f5f2;--main-nav-primary-color:#217248;--main-nav-contrast-primary-color:#fff;--main-nav-text-color:#202b25;--main-nav-secondry-text-color:#526057;--main-nav-main-border-color:#dfe7e0;--main-nav-secondry-border-color:#eaf0eb;background:#fff;color:#202b25;box-shadow:none;border-bottom:1px solid #e5ebe6;width:calc(100% - 32px);max-width:1200px;margin:0 auto}
#theme-header .main-menu-wrapper,#theme-header .logo-container{background:#fff;box-shadow:none}
#theme-header #main-nav,#theme-header #main-nav.fixed-nav{background:#fff!important;color:#202b25}
#theme-header #main-nav .menu>li>a,#theme-header #main-nav .components>li>a{color:#202b25;background:transparent;font-weight:600}
#theme-header #main-nav .menu>li:hover>a,#theme-header #main-nav .menu>li>a:focus-visible{color:#217248;background:#f1f5f2}
#theme-header #main-nav .menu-sub-content{background:#fff;color:#202b25;border-color:#dfe7e0}
#theme-header #main-nav .menu-sub-content a{color:#202b25}
#theme-header #main-nav .menu-sub-content a:hover{background:#f1f5f2;color:#217248}
#theme-header a:focus-visible{outline:2px solid #217248;outline-offset:-3px}
@media(min-width:992px){
  #theme-header{display:grid;grid-template-columns:240px minmax(0,1fr);align-items:center;gap:28px;min-height:110px;padding:20px 0}
  #theme-header>.header-container,#theme-header #main-nav>.container{width:100%;max-width:none;margin:0;padding:0}
  #theme-header .logo-row{margin:0}
  #theme-header .logo-container{width:100%;padding:0}
  #theme-header #logo{float:none;margin:0!important;text-align:left;line-height:1}
  #theme-header #logo a,#theme-header #logo picture{display:block}
  #theme-header #logo img{display:block;width:240px!important;max-width:100%;height:auto;max-height:none!important;margin:0}
  #theme-header .main-nav-wrapper{min-width:0;height:auto!important}
  #theme-header #main-nav{line-height:1.4}
  #theme-header #main-nav.fixed-nav{position:static!important;transform:none!important;width:100%!important;box-shadow:none}
  #theme-header .main-menu-wrapper{float:none;width:100%;padding:0;border:0}
  #theme-header #menu-components-wrap{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:10px}
  #theme-header .main-menu-wrap{min-width:0;width:auto;float:none}
  #theme-header #main-nav-menu>.menu{display:flex;align-items:center;justify-content:flex-end;gap:2px}
  #theme-header #main-nav-menu>.menu>li{float:none;min-width:0}
  #theme-header #main-nav-menu>.menu>li>a{display:flex;align-items:center;min-height:48px;padding:10px 12px;font-size:17.5px;line-height:1.45;white-space:normal}
  #theme-header #main-nav-menu>.menu>.menu-item-has-children>a{padding-right:25px}
  #theme-header #main-nav .components{flex:0 0 auto;margin:0}
  #theme-header #main-nav .components>li>a{min-width:40px;line-height:48px}
  #theme-header #main-nav-menu>.menu>li:last-child>.sub-menu{left:auto;right:0}
}
@media(min-width:992px) and (max-width:1100px){#theme-header{grid-template-columns:200px minmax(0,1fr);gap:16px}#theme-header #main-nav-menu>.menu>li>a{padding-left:8px;padding-right:8px}#theme-header #main-nav-menu>.menu>.menu-item-has-children>a{padding-right:24px}}
@media(max-width:991px){#theme-header .header-container{width:100%;max-width:none}#theme-header .logo-container{padding-left:0;padding-right:0}#theme-header.has-normal-width-logo #logo img{max-width:min(240px,60vw)}#theme-header .mobile-header-components .components>li>a{color:#202b25}#theme-header .mobile-header-components .nav-icon,#theme-header .mobile-header-components .nav-icon:before,#theme-header .mobile-header-components .nav-icon:after{background:#202b25}}

/* Shared editorial footer, using the existing WordPress legal menu. */
#footer.site-footer{box-sizing:border-box;width:calc(100% - 32px);max-width:1200px;margin:40px auto 0;background:#f2f6f2;color:#123c2e;border-top:4px solid #217248;border-radius:0 0 12px 12px;box-shadow:none;font-family:Arial,sans-serif}
#footer.site-footer .container{width:100%;max-width:100%;box-sizing:border-box;padding:0}
#footer #footer-widgets-container{padding:52px 48px 42px;background:transparent}
#footer .footer-widget-area{padding:0;margin:0;border:0}
#footer .footer-widget-area>.tie-row{margin:0}
#footer .footer-widget-area>.tie-row>.tie-col-sm-4{float:none;width:100%;padding:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:start}
#footer .vih-footer-brand>a{display:block;width:270px;max-width:100%;min-height:44px}
#footer .vih-footer-brand img{display:block;width:100%;height:auto;margin:0}
#footer .vih-footer-brand p{font-size:28px;line-height:1.25;letter-spacing:-.7px;margin:25px 0 12px;color:#123c2e}
#footer .vih-footer-brand p strong{color:#217248;font-weight:600}
#footer .vih-footer-brand>span{font-size:15px;color:#506859}
#footer #nav_menu-3{padding:0;margin:0;background:transparent;border:0;box-shadow:none;color:#123c2e}
#footer #nav_menu-3 .widget-title{margin:4px 0 20px;padding:0;border:0;background:none;color:#217248;font-size:13px;line-height:1.5;text-transform:uppercase;letter-spacing:1.5px;font-weight:700}
#footer #nav_menu-3 .the-subtitle{padding:0;color:inherit;font-size:inherit;font-weight:inherit}
#footer #nav_menu-3 .widget-title:before,#footer #nav_menu-3 .widget-title:after,#footer #nav_menu-3 .widget-title-icon{display:none}
#footer #menu-rechtliche-informationen{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;margin:0;padding:0;list-style:none}
#footer #menu-rechtliche-informationen>li{border:0;border-bottom:1px solid #d3ded4;padding:0;margin:0}
#footer #menu-rechtliche-informationen>li:before{display:none}
#footer #menu-rechtliche-informationen>li>a{display:flex;align-items:center;min-height:64px;padding:14px 0;color:#123c2e;font-size:16px;line-height:1.5;font-weight:500;text-decoration:none;overflow-wrap:anywhere}
#footer #menu-rechtliche-informationen>li>a:hover{color:#217248;text-decoration:underline;text-underline-offset:5px}
#footer a:focus-visible{outline:2px solid #217248;outline-offset:4px}
#footer #site-info{margin:0 48px;padding:22px 0;background:transparent;border-top:1px solid #d3ded4;color:#506859;font-size:13px;text-align:left}
#footer #site-info .tie-row{margin:0}#footer #site-info .tie-col-md-12{padding:0}#footer #site-info .copyright-text{float:none;text-align:left;margin:0;color:inherit}
@media(max-width:767px){#footer #footer-widgets-container{padding:32px 24px}#footer .footer-widget-area>.tie-row>.tie-col-sm-4{grid-template-columns:1fr;gap:32px}#footer #site-info{margin:0 24px}#footer .vih-footer-brand p{font-size:26px}#footer #menu-rechtliche-informationen{gap:0 16px}}
@media(max-width:420px){#footer #menu-rechtliche-informationen{grid-template-columns:1fr}#footer #menu-rechtliche-informationen>li>a{min-height:48px}}
