/* Neues Menü: Übersicht links + Servicebereich rechts */
:where(.bwh-zentral-kopf) #bwh-menu-panel {
  background: #fbf8ee;
}

:where(.bwh-zentral-kopf) #bwh-menu-panel::before,
:where(.bwh-zentral-kopf) #bwh-menu-panel::after {
  display: none !important;
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .bwh-menu-group {
  margin: 0;
  padding: 18px 0;
  border-top: 1px solid rgba(71, 111, 36, 0.22);
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .vc_toggle_title {
  width: 100%;
  padding: 0 28px 0 0 !important;
  color: #2f501f;
  font-weight: 700;
  text-align: left;
  background: transparent;
  border: 0;
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .vc_toggle_icon {
  display: none !important;
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .vc_toggle_content {
  margin: 12px 0 0 !important;
  padding: 0 !important;
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .vc_toggle_content ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .vc_toggle_content li {
  margin: 0 0 7px;
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .vc_toggle_content a {
  color: #5f6959;
  text-decoration: none;
  transition: color 0.2s ease;
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .vc_toggle_content a:hover {
  color: #476f24;
}

/* Dunkelgrüner Servicebereich */
:where(.bwh-zentral-kopf) #bwh-menu-panel .bwh-menu-service {
  height: 100%;
  padding: 30px 26px;
  color: #fffdf6;
  background: #2f501f;
  border-radius: 22px;
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .bwh-menu-service-label {
  margin: 0 0 10px;
  color: #ffd65a;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .bwh-menu-service-title {
  margin: 0 0 12px;
  color: #ffffff;
  font-size: 27px;
  line-height: 1.2;
  font-weight: 700;
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .bwh-menu-service-text {
  margin: 0 0 22px;
  color: rgba(255, 255, 255, 0.85);
  line-height: 1.65;
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .bwh-menu-service-buttons {
  display: grid;
  gap: 10px;
  margin-bottom: 24px;
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .bwh-menu-service-button {
  display: block;
  padding: 13px 17px;
  border-radius: 999px;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .bwh-menu-service-button--primary {
  color: #2f501f;
  background: #ffd65a;
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .bwh-menu-service-button--secondary {
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, 0.55);
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .bwh-menu-service-contact {
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .bwh-menu-service-contact span {
  display: block;
  margin-bottom: 9px;
  color: rgba(255, 255, 255, 0.7);
  font-size: 13px;
}

:where(.bwh-zentral-kopf) #bwh-menu-panel .bwh-menu-service-contact a {
  display: block;
  margin-bottom: 8px;
  color: #ffffff;
  font-weight: 700;
  text-decoration: none;
}

/* Desktop */
@media (min-width: 901px) {
  :where(.bwh-zentral-kopf) #bwh-menu-panel {
    display: grid !important;
    grid-template-columns:
      repeat(3, minmax(0, 1fr))
      minmax(260px, 310px);
    gap: 0 32px;
    align-items: stretch;
    padding: 26px 32px 32px;
  }

  :where(.bwh-zentral-kopf) #bwh-menu-panel > .bwh-menu-heading {
    grid-column: 1 / -1;
    width: auto !important;
    float: none !important;
  }

  :where(.bwh-zentral-kopf) #bwh-menu-panel > .wpb_column:not(.bwh-menu-heading) {
    width: auto !important;
    float: none !important;
  }

  :where(.bwh-zentral-kopf) #bwh-menu-panel > .wpb_column:has(.bwh-menu-service) {
    grid-column: 4;
    grid-row: 2 / span 2;
  }

  :where(.bwh-zentral-kopf) #bwh-menu-panel .vc_toggle_content[hidden] {
    display: block !important;
  }

  :where(.bwh-zentral-kopf) #bwh-menu-panel .vc_toggle_title::after {
    display: none;
  }
}

/* Tablet und Smartphone */
@media (max-width: 900px) {
  :where(.bwh-zentral-kopf) #bwh-menu-panel {
    display: block !important;
    padding: 18px 22px 26px;
  }

  :where(.bwh-zentral-kopf) #bwh-menu-panel > .wpb_column {
    width: 100% !important;
    float: none !important;
  }

  :where(.bwh-zentral-kopf) #bwh-menu-panel .vc_toggle_title::after {
    content: "⌄";
    position: absolute;
    right: 2px;
    top: 0;
    color: #476f24;
    font-size: 21px;
    line-height: 1;
    transition: transform 0.2s ease;
  }

  :where(.bwh-zentral-kopf) #bwh-menu-panel .vc_toggle_title[aria-expanded="true"]::after {
    transform: rotate(180deg);
  }

  :where(.bwh-zentral-kopf) #bwh-menu-panel .vc_toggle_content[hidden] {
    display: none !important;
  }

  :where(.bwh-zentral-kopf) #bwh-menu-panel .bwh-menu-service {
    height: auto;
    margin-top: 22px;
    padding: 25px 22px;
    border-radius: 18px;
  }

  :where(.bwh-zentral-kopf) #bwh-menu-panel .bwh-menu-service-title {
    font-size: 23px;
  }
}


/* Servicebereich zunächst ausblenden, bis er ins Menü verschoben wurde */
:where(.bwh-zentral-kopf) .bwh-menu-service {
  display: none;
}

:where(.bwh-zentral-kopf) #bwh-menu-panel > .bwh-menu-service {
  display: block;
}

@media (min-width: 901px) {
  :where(.bwh-zentral-kopf) #bwh-menu-panel > .bwh-menu-service {
    grid-column: 4;
    grid-row: 2 / span 2;
  }
}


/* Menüpunkte auch auf dem Desktop aufklappbar */
@media (min-width: 901px) {
  :where(.bwh-zentral-kopf) #bwh-menu-panel .vc_toggle_content[hidden] {
    display: none !important;
  }

  :where(.bwh-zentral-kopf) #bwh-menu-panel .vc_toggle_title {
    position: relative;
    cursor: pointer;
  }

  :where(.bwh-zentral-kopf) #bwh-menu-panel .vc_toggle_title::after {
    content: "⌄";
    display: block !important;
    position: absolute;
    top: -2px;
    right: 2px;
    color: #476f24;
    font-size: 21px;
    line-height: 1;
    transition: transform 0.2s ease;
  }

  :where(.bwh-zentral-kopf) #bwh-menu-panel .vc_toggle_title[aria-expanded="true"]::after {
    transform: rotate(180deg);
  }
}


/* Menü nur anzeigen, wenn der Menüknopf betätigt wurde */
:where(.bwh-zentral-kopf) #bwh-menu-panel[hidden] {
  display: none !important;
}

body:has(.bwh-zentral-kopf #bwh-start):not(.vc_editor) :is(.masthead,#phantom,.header-space,.mobile-header-space,.dt-mobile-header,.page-title,.icon-wrapper) {display:none!important}
.bwh-zentral-kopf {box-sizing:border-box;height:var(--bwh-zentral-hoehe,105px);margin:0;padding:0;overflow:visible;background:#fffdf7}
body #bwh-start.bwh-zentral-header #bwh-menu-panel[hidden] {display:none!important}
@media (max-width:767px){.bwh-zentral-kopf{height:var(--bwh-zentral-hoehe,87px)}}

/* Buchungsbutton im zentralen Kopfbereich. */
#bwh-start.bwh-zentral-header .bwh-header-cta a.bwh-zentral-buchen {
  background: var(--bw-gruen, #527000) !important;
  border-color: var(--bw-gruen, #527000) !important;
  color: #fff !important;
}
#bwh-start.bwh-zentral-header .bwh-header-cta a.bwh-zentral-buchen:hover,
#bwh-start.bwh-zentral-header .bwh-header-cta a.bwh-zentral-buchen:focus-visible {
  background: var(--bw-gruen-hover, #3f5800) !important;
  border-color: var(--bw-gruen-hover, #3f5800) !important;
  color: #fff !important;
}
