/* Das Logo stammt aus dem Theme. Seine SVG-Proportionen bestimmen die Breite. */
header > .logo > .icm-menu-mark { display: none; }
header[data-icm-menu] {
  --icm-logo-left: 40px;
  --icm-menu-gap: 12px;
}
header[data-icm-menu] > .logo > .icm-menu-mark {
  display: block;
  width: auto;
  height: 85px;
  max-width: none;
}

/* Die einzeilige Navigation bleibt auch im eingeklappten Zustand messbar. */
header[data-icm-menu] > .navigation { display: block !important; }
header[data-icm-menu] > .navigation > nav#header.d-xl-block {
  display: block !important;
  width: max-content;
}
header[data-icm-menu] > .navigation > nav.d-xl-block > .container { max-width: none; }
header[data-icm-menu] > .navigation > nav.d-xl-block > .container > .navbar-nav {
  display: flex;
  flex-flow: row nowrap;
  width: max-content;
}
header[data-icm-menu="row"] { height: 150px; }
header[data-icm-menu="row"] > .logo {
  top: 30px;
  left: var(--icm-logo-left);
  width: max-content;
  max-width: none;
  height: auto;
  background-image: none;
  transition: opacity .3s ease;
}
header[data-icm-menu="row"] > .navicon,
header[data-icm-menu="row"] > .mobilenavigation { display: none; }
header[data-icm-menu="row"] > .contactbar { right: 15px; }

header[data-icm-menu="compact"] > .logo > .icm-menu-mark {
  position: absolute;
  visibility: hidden;
  pointer-events: none;
}
header[data-icm-menu="compact"] > .navigation {
  visibility: hidden;
  pointer-events: none;
}
header[data-icm-menu="compact"] > .navicon,
header[data-icm-menu="compact"] > .mobilenavigation { display: block; }
header[data-icm-menu="compact"] > .mobilenavigation:not(.active) { visibility: hidden; }
header[data-icm-menu="compact"] .mobilenavigation ul.menu:not(.menu-language) {
  display: block;
  margin: 0 15px 45px;
}
header[data-icm-menu="compact"] .mobilenavigation li.open > ul.sub-menu { height: auto !important; }
header[data-icm-menu="compact"] > .contactbar { right: 135px; }
