/* Header glass effect to match coach card popover */

/* Base: keep the header transparent with identical tint and blur */
header.dxpr-theme-header {
  --mc-header-fg: #3c4858;
  --mc-header-fg-active: #2ecc71;
  --mc-header-icon-fg: var(--mc-header-fg);
  background: transparent;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  z-index: 500; /* above sliders/content; DXPR default is ~405 */
}

/* JS toggles this when the underlying content is dark */
header.dxpr-theme-header.mc-header--invert {
  --mc-header-fg: #fff;
  --mc-header-fg-active: #fff;
  --mc-header-icon-fg: #fff;
}

/* Sticky/fixed variants must remain transparent (DXPR toggles these classes) */
header.dxpr-theme-header.dxpr-theme-header--sticky,
header.dxpr-theme-header.dxpr-theme-header--fixed {
  background: transparent !important; /* glass lives on inner container */
}

/* Hover-Farbe main menu */
#navbar.dxpr-theme-header--hover-text .menu .active>a,
#navbar.dxpr-theme-header--hover-text .menu a:hover,
#navbar.dxpr-theme-header--hover-text .menu a:focus,
#navbar.dxpr-theme-header--hover-text .menu a.is-active {
    color: var(--mc-header-fg-active) !important;
}


/* Progressive enhancement: apply blur where supported (match cards: 4px) */
@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .dxpr-theme-header .navbar-container {
    -webkit-backdrop-filter: blur(var(--mc-surface-blur));
    backdrop-filter: blur(var(--mc-surface-blur));
  }
}

/* Dropdown menus: ensure same translucent background and readability */
.dxpr-theme-header .dxpr-theme-main-menu .dropdown-menu {
  background: var(--mc-surface-bg);
  border: var(--mc-surface-border);
  box-shadow: var(--mc-surface-shadow);
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  border-radius: var(--mc-surface-radius);
}
@supports ((-webkit-backdrop-filter: blur(1px)) or (backdrop-filter: blur(1px))) {
  .dxpr-theme-header .dxpr-theme-main-menu .dropdown-menu {
    -webkit-backdrop-filter: blur(var(--mc-surface-blur));
    backdrop-filter: blur(var(--mc-surface-blur));
  }
}
.dxpr-theme-header .dxpr-theme-main-menu .dropdown-menu a {
  color: #fff;
}
.dxpr-theme-header .dxpr-theme-main-menu .dropdown-menu a:hover,
.dxpr-theme-header .dxpr-theme-main-menu .dropdown-menu a:focus,
.dxpr-theme-header .dxpr-theme-main-menu .dropdown-menu a.active {
  color: #fff;
  background: rgba(255,255,255,.06);
}

/* Maintain clickable areas and avoid layout jumps */
.dxpr-theme-header .navbar-container { 
  /* ensure stacking above carousels/sliders without affecting layout */
  position: relative;
  z-index: 501;
  /* Glass card container: centered, rounded, with edge spacing – tokenized */
  background: var(--mc-surface-bg);
  border: var(--mc-surface-border);
  backdrop-filter: blur(var(--mc-surface-blur));
  -webkit-backdrop-filter: blur(var(--mc-surface-blur));
  border-radius: 28px;
  /* horizontal page edge spacing */
  margin: 12px auto 0;
  /* constrain to content width while allowing small edge padding */
  max-width: 1200px;
  width: calc(100% - 24px);
  padding: 0 20px 0 32px;
  /* Unified shadow via token */
  /* box-shadow: var(--mc-surface-shadow);*/
  box-shadow:
    inset 0 2px 10px rgba(255, 255, 255, 0.8),  /* heller innerer Lichtschein */
    inset 0 -2px 10px rgba(0, 0, 0, 0.15),       /* sanfter unterer Schatten */
    0 4px 10px rgba(0, 0, 0, 0.05);    /* leichter äußerer Schatten für Tiefe */
}
@media (min-width: 1400px) {
  .dxpr-theme-header .navbar-container { max-width: 1320px; }
}
/* Tighter spacing below XL to prevent wrapping in Chrome/Firefox */
@media (max-width: 1199.98px) {
  /* give a bit more usable width inside the rounded container */
  .dxpr-theme-header .navbar-container {
    margin: 6px auto 0;
    width: calc(100% - 8px);
  }
  /* reduce horizontal padding and font size on top-level items */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .nav>li>a,
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .nav>li>span {
    padding-left: .55rem;
    padding-right: .55rem;
    font-size: 1.05rem;
  }
  /* trim branding padding to free space */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .wrap-branding .logo,
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .wrap-branding .navbar-brand {
    padding-right: .5rem;
  }
}

/* Mobile: keep ordering vertically (main first, then account).
   Hamburger-Modus läuft nur bis <576px (Bootstrap sm breakpoint). */
@media (max-width: 575.98px) {
  header.dxpr-theme-header {
    padding-top: 0;
  }

  /* Leave extra space before page content on non-front pages (mobile only) */
  body.body--dxpr-theme-nav-mobile:not(.page-node-type-front-page):not(.path-frontpage) header.dxpr-theme-header {
    margin-bottom: 30px !important;
  }

  body.body--dxpr-theme-nav-mobile:not(.page-node-type-front-page):not(.path-frontpage) .main-container {
    margin-top: 60px !important;
  }
  /* Checkout pages often render helper hints or warnings outside .main-container,
     so shift the entire content wrapper instead of only the main column. */
  body.body--dxpr-theme-nav-mobile.path-checkout .wrap-containers,
  body.body--dxpr-theme-nav-mobile.page-checkout .wrap-containers,
  body.body--dxpr-theme-nav-mobile[class*="checkout"] .wrap-containers {
    margin-top: 70px !important;
  }
  /* Prevent double spacing on checkout pages (wrap already handles the offset). */
  body.body--dxpr-theme-nav-mobile.path-checkout .main-container,
  body.body--dxpr-theme-nav-mobile.page-checkout .main-container,
  body.body--dxpr-theme-nav-mobile[class*="checkout"] .main-container {
    margin-top: 0 !important;
  }
  /* Review & confirmation steps start with helper hints that sit closer to the top,
     so give them a bit more breathing room to avoid overlap with the sticky menu. */
  body.body--dxpr-theme-nav-mobile[class*="checkout-"][class*="review"] .wrap-containers,
  body.body--dxpr-theme-nav-mobile[class*="checkout-"][class*="order-confirmation"] .wrap-containers,
  body.body--dxpr-theme-nav-mobile[class*="checkout-"][class*="orderconfirmation"] .wrap-containers {
    margin-top: 96px !important;
  }

  body.body--dxpr-theme-nav-mobile header.dxpr-theme-header {
    padding-top: 0;
  }
  body.body--dxpr-theme-nav-mobile header.dxpr-theme-header .navbar-container {
    margin: 0 auto !important;
    width: calc(100% - 12px) !important;
    padding: 0 16px !important;
    min-height: 0 !important;
    height: 42px !important;
    border-radius: 999px !important;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    /* Navigationsleiste nach oben verschieben Abstand der Navigation zum oberen Bildschirmrand (ohne transform, damit Offcanvas losgelöst bleibt) */
    top: -32px;
  }
  body.body--dxpr-theme-nav-mobile .dxpr-theme-header--top .navbar-container > .row,
  body.body--dxpr-theme-nav-mobile .dxpr-theme-header--top .navbar-container > .container-row,
  body.body--dxpr-theme-nav-mobile .dxpr-theme-header--top .navbar-container > .row > .col-sm-12,
  body.body--dxpr-theme-nav-mobile .dxpr-theme-header--top .navbar-container > .container-row > .container-col,
  body.body--dxpr-theme-nav-mobile .dxpr-theme-header--top .navbar-header {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    gap: .5rem;
    justify-content: space-between !important;
    position: relative !important;
    padding-right: 56px !important; /* reserve room for the toggle */
  }
  body.body--dxpr-theme-nav-mobile header.dxpr-theme-header .wrap-branding,
  body.body--dxpr-theme-nav-mobile header.dxpr-theme-header .wrap-branding .logo,
  body.body--dxpr-theme-nav-mobile header.dxpr-theme-header .wrap-branding .navbar-brand {
    display: inline-flex !important;
    align-items: center !important;
    height: 100% !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin: 0 !important;
  }

  body.body--dxpr-theme-nav-mobile header.dxpr-theme-header #logo {
    display: inline-flex !important;
    align-items: center !important;
    height: 100% !important;
    line-height: 0 !important;
  order: 1 !important;
  }

  body.body--dxpr-theme-nav-mobile header.dxpr-theme-header #dxpr-theme-menu-toggle {
    order: 2 !important;
    position: absolute !important;
    right: 26px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    padding: 0 !important;
    height: 32px !important;
    min-height: 32px !important;
    width: 44px !important;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  body.body--dxpr-theme-nav-mobile .dxpr-theme-main-menu .region.region-navigation-collapsible {
    display: flex; flex-direction: column; align-items: stretch; gap: 0;
  }
  body.body--dxpr-theme-nav-mobile .dxpr-theme-main-menu #block-mycoachz-theme-hauptnavi { order: 1; }
  body.body--dxpr-theme-nav-mobile .dxpr-theme-main-menu #block-useraccountmenu { order: 2; }

  /* Mobile logo size: match desktop proportions */
  body.body--dxpr-theme-nav-mobile header.dxpr-theme-header #logo {
    height: 32px !important;
    max-height: 32px !important;
    width: auto !important;
  }
  body.body--dxpr-theme-nav-mobile header.dxpr-theme-header .wrap-branding .logo {
    padding: 0 10px !important;
  }

  /* Dim background + lock scroll when the menu is open */
  body.body--dxpr-theme-nav-mobile {
    position: relative;
  }
  /* Mobile off-canvas: base (hidden) state Verhalten der weissen Karte, die sich nach links öffnet*/
  body.body--dxpr-theme-nav-mobile #dxpr-theme-main-menu {
    position: fixed !important;
    top: var(--dxt-setting-header-top-height, 46px) !important;
    left: -110% !important;
    right: auto !important;
    bottom: auto !important;
    width: min(200px, calc(100% - 230px)) !important;
    max-width: 200px !important;
    max-height: calc(100vh - var(--dxt-setting-header-top-height, 46px) - 24px) !important;
    height: auto !important;
    padding: 24px 28px 28px !important;
    background: rgba(255, 255, 255, 0.99) !important;
    box-shadow: 0 25px 60px rgba(27, 32, 50, 0.25) !important;
    border-radius: 0 32px 32px 0 !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    display: block !important; /* override Bootstrap collapse */
    overflow-y: auto !important;
    transition:
      left 220ms ease,
      opacity 220ms ease,
      visibility 220ms ease !important;
    z-index: 1400 !important;
  }

  body.body--dxpr-theme-nav-mobile #dxpr-theme-main-menu .menu__breadcrumbs,
  body.body--dxpr-theme-nav-mobile #dxpr-theme-main-menu .menu__breadcrumbs {
    display: none !important; /* only need basic list */
  }

  body.body--dxpr-theme-nav-mobile #dxpr-theme-main-menu .menu__level {
    position: static !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    left: auto !important;
    right: auto !important;
  }

  /* Debug cleanup: reset menu list backgrounds */
  body.body--dxpr-theme-nav-mobile #dxpr-theme-main-menu .menu,
  body.body--dxpr-theme-nav-mobile #dxpr-theme-main-menu .menu *,
  body.body--dxpr-theme-nav-mobile #dxpr-theme-main-menu .menu::before,
  body.body--dxpr-theme-nav-mobile #dxpr-theme-main-menu .menu::after {
    background: transparent !important;
    box-shadow: none !important;
  }

  body.body--dxpr-theme-nav-mobile #dxpr-theme-main-menu .menu__level {
    gap: 0;
  }

  body.body--dxpr-theme-nav-mobile #dxpr-theme-main-menu .menu__item {
    list-style: none;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  }

  body.body--dxpr-theme-nav-mobile #dxpr-theme-main-menu .menu__item:last-child {
    border-bottom: none;
  }

  body.body--dxpr-theme-nav-mobile #dxpr-theme-main-menu .menu__item > a,
  body.body--dxpr-theme-nav-mobile #dxpr-theme-main-menu .menu__item > span {
    display: block;
    padding: 14px 4px;
    color: #1f2a37;
    text-transform: none;
    font-size: 1rem;
    font-weight: 600;
    letter-spacing: 0.04em;
  }

  /* Mobile off-canvas: visible state */
  body.body--dxpr-theme-nav-mobile .dxpr-theme-main-menu.menu--open,
  body.body--dxpr-theme-nav-mobile #dxpr-theme-main-menu.menu--open,
  body.body--dxpr-theme-nav-mobile #dxpr-theme-main-menu.menu--open .menu__breadcrumbs,
  body.body--dxpr-theme-nav-mobile #dxpr-theme-main-menu.menu--open .menu__level {
    left: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }
}

/* Default desktop layout (>=576px): logo left, nav right */
@media (min-width: 576px) {
  /* Leave a small gap before page content on non-front pages (desktop only) */
  body.body--dxpr-theme-nav-desktop:not(.page-node-type-front-page):not(.path-frontpage) header.dxpr-theme-header {
    margin-bottom: 10px !important;
  }

  .dxpr-theme-header--top .navbar-container > .row,
  .dxpr-theme-header--top .navbar-container > .container-row {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
  }
  .dxpr-theme-header--top .navbar-container > .row > .col-sm-12,
  .dxpr-theme-header--top .navbar-container > .container-row > .container-col {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
  }
  .dxpr-theme-header--top .navbar-header {
    float: none;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex: 0 0 auto;
  }
  .dxpr-theme-header--top #dxpr-theme-main-menu,
  .dxpr-theme-header--top .dxpr-theme-main-menu {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    justify-content: flex-end;
  }
  .dxpr-theme-header--top .region.region-navigation-collapsible {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .75rem;
    flex-wrap: nowrap;
    width: 100%;
    min-width: 0;
  }
  .dxpr-theme-header--top .region.region-navigation-collapsible > .block {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    flex: 0 1 auto;
  }
  .dxpr-theme-header--top .region.region-navigation-collapsible .navbar-nav {
    display: inline-flex;
    flex-wrap: nowrap;
    gap: 0;
    margin: 0;
    padding: 0;
  }
  .dxpr-theme-header--top .region.region-navigation-collapsible .block-hr {
    display: none !important;
  }
  .dxpr-theme-header--top .region.region-navigation-collapsible .clearfix {
    display: contents;
  }
  .dxpr-theme-header--top .region.region-navigation-collapsible > span[data-big-pipe-placeholder-id] {
    display: contents;
  }
  .dxpr-theme-header--top .region.region-navigation-collapsible > span[data-big-pipe-placeholder-id] {
    display: contents;
  }
  .dxpr-theme-header--top .region.region-navigation-collapsible #block-mycoachz-theme-hauptnavi {
    order: 1 !important;
    margin-right: .5rem;
    flex: 1 1 auto;
    min-width: 0;
  }
  .dxpr-theme-header--top .region.region-navigation-collapsible #block-useraccountmenu {
    order: 2 !important;
    margin-left: .5rem;
    flex: 0 0 auto;
  }
  .dxpr-theme-header--top .navbar-collapse {
    display: flex !important;
    flex-direction: row !important;
    justify-content: flex-end;
    align-items: center;
    width: auto !important;
    flex: 0 1 auto;
    min-width: 0;
    float: none;
  }
  .dxpr-theme-header--top .nav {
    display: inline-flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: flex-end;
    gap: .75rem;
    margin: 0;
  }
  .dxpr-theme-header--top .nav > li {
    float: none;
    display: inline-flex;
    align-items: center;
  }
  .dxpr-theme-header--top .nav > li > a,
  .dxpr-theme-header--top .nav > li > span {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
  }

  body.body--dxpr-theme-nav-mobile.mc-force-desktop-nav .dxpr-theme-header {
    position: relative !important;
  }
  body.body--dxpr-theme-nav-mobile.mc-force-desktop-nav .dxpr-theme-header .navbar-container {
    display: flex !important;
    float: none !important;
    height: auto !important;
  }
  body.body--dxpr-theme-nav-mobile.mc-force-desktop-nav .dxpr-theme-header .navbar-container .navbar-header {
    display: flex !important;
    flex: 0 0 auto !important;
    height: auto !important;
    width: auto !important;
  }
  body.body--dxpr-theme-nav-mobile.mc-force-desktop-nav .dxpr-theme-header .navbar-collapse {
    display: flex !important;
    flex-direction: row !important;
    justify-content: flex-end !important;
    align-items: center !important;
    width: auto !important;
    float: none !important;
  }
  body.body--dxpr-theme-nav-mobile.mc-force-desktop-nav .dxpr-theme-header .nav {
    float: none !important;
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    margin-top: 0 !important;
  }
  body.body--dxpr-theme-nav-mobile.mc-force-desktop-nav .dxpr-theme-header .nav > li {
    float: none !important;
    display: inline-flex !important;
    align-items: center !important;
  }
  body.body--dxpr-theme-nav-mobile.mc-force-desktop-nav .dxpr-theme-header .nav > li > a,
  body.body--dxpr-theme-nav-mobile.mc-force-desktop-nav .dxpr-theme-header .nav > li > span {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: var(--dxt-setting-header-top-height);
  }

  @media (min-width: 576px) and (max-width: 650px) {
    .dxpr-theme-header--top .region.region-navigation-collapsible {
      gap: .35rem;
    }
    .dxpr-theme-header--top .nav > li > a,
    .dxpr-theme-header--top .nav > li > span {
      padding-left: .35rem;
      padding-right: .35rem;
      font-size: .95rem;
    }
    #block-useraccountmenu .nav > li > a,
    #block-useraccountmenu .nav > li > span {
      padding-left: .3rem;
      padding-right: .3rem;
    }
  }
}

@media (min-width: 576px) and (max-width: 991.98px) {
  /* Layout B: keep branding + menu on one line */
  .profile--layout-b .dxpr-theme-header--top .navbar-container { display: block !important; }
  .profile--layout-b .dxpr-theme-header--top .navbar-container > .row,
  .profile--layout-b .dxpr-theme-header--top .navbar-container > .container-row { display: flex !important; width: 100% !important; }
  .profile--layout-b .dxpr-theme-header--top .navbar-container > .row > .col-sm-12,
  .profile--layout-b .dxpr-theme-header--top .navbar-container > .container-row > .container-col {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }
  .profile--layout-b .dxpr-theme-header--top .navbar-header {
    float: none !important; display: block !important; flex: 0 0 auto !important;
  }
  .profile--layout-b .dxpr-theme-header--top #dxpr-theme-main-menu,
  .profile--layout-b .dxpr-theme-header--top .dxpr-theme-main-menu {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    display: flex !important;
    width: auto !important;
    justify-content: flex-end !important;
  }
  .profile--layout-b .dxpr-theme-header--top .dxpr-theme-main-menu .region.region-navigation-collapsible {
    display: flex !important; align-items: center !important; justify-content: flex-end !important;
    flex-wrap: nowrap !important; gap: 0 !important; width: auto !important; min-width: 0 !important;
  }
  .profile--layout-b .dxpr-theme-header--top .dxpr-theme-main-menu .region.region-navigation-collapsible > .block {
    display: inline-flex !important;
    align-items: center;
  }
  .profile--layout-b .dxpr-theme-header--top .dxpr-theme-main-menu #block-mycoachz-theme-hauptnavi { order: 1 !important; margin-right: .5rem; }
  .profile--layout-b .dxpr-theme-header--top .dxpr-theme-main-menu #block-useraccountmenu { order: 2 !important; margin-left: .5rem; }
  .profile--layout-b .dxpr-theme-header--top .dxpr-theme-main-menu .region.region-navigation-collapsible .navbar-nav {
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 0;
    margin: 0; padding: 0;
  }
  .profile--layout-b .dxpr-theme-header--top .nav>li>a,
  .profile--layout-b .dxpr-theme-header--top .nav>li>span {
    padding-left: .5rem;
    padding-right: .5rem;
  }

  /* Fallback: falls DXPR noch auf nav-mobile steht, Toggle verbergen und Menü zeigen */
  body.body--dxpr-theme-nav-mobile.mc-force-desktop-nav #dxpr-theme-menu-toggle { display: none !important; }
  body.body--dxpr-theme-nav-mobile.mc-force-desktop-nav #dxpr-theme-main-menu,
  body.body--dxpr-theme-nav-mobile.mc-force-desktop-nav .dxpr-theme-main-menu {
    display: block !important; visibility: visible !important; opacity: 1 !important;
    position: static !important; width: auto !important; height: auto !important;
  }
  body.body--dxpr-theme-nav-mobile.mc-force-desktop-nav .region-navigation-collapsible .menu,
  body.body--dxpr-theme-nav-mobile.mc-force-desktop-nav .region-navigation-collapsible .nav {
    display: flex !important; flex-direction: row !important; align-items: center !important; gap: 0;
  }
  body.body--dxpr-theme-nav-mobile.mc-force-desktop-nav .navbar-collapse.collapse { display: block !important; height: auto !important; overflow: visible !important; }

  /* keep comfortable inset from rounded container edge */
  .dxpr-theme-header .navbar-container { padding-right: 2px; padding-left: 16px; }
}

/* Force single-row desktop nav around XL breakpoint to avoid accidental wraps */
@media (min-width: 992px) and (max-width: 1199.98px) {
  /* ensure container itself doesn't shrink; flex at inner wrappers instead */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .navbar-container {
    display: block !important;
  }
  /* make the inner row full-width and flex */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .navbar-container > .row,
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .navbar-container > .container-row {
    display: flex;
    flex: 1 1 auto;
    width: 100%;
  }
  /* handle DXPR optional row/col wrappers: full width and flex between branding/menu */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .navbar-container > .row > .col-sm-12,
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .navbar-container > .container-row > .container-col {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    flex: 1 1 auto;
    min-width: 0;
  }
  /* region inside main menu: layout both menu blocks on a single row, right-aligned */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .dxpr-theme-main-menu .region.region-navigation-collapsible {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: nowrap;
    gap: .5rem;
    min-width: 0;
  }
  /* make block wrappers flex items so order property works */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .dxpr-theme-main-menu .region.region-navigation-collapsible > .block {
    display: inline-flex;
    align-items: center;
  }
  /* remove decorative HRs and flatten inner clearfix wrappers that force line breaks */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .dxpr-theme-main-menu .region.region-navigation-collapsible .block-hr { display: none !important; }
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .dxpr-theme-main-menu .region.region-navigation-collapsible .clearfix { display: contents; }
  /* normalize UL spacing so they don't reserve extra vertical space */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .dxpr-theme-main-menu .region.region-navigation-collapsible ul.navbar-nav { margin: 0; padding: 0; }
  /* Make blocks addressable for ordering (override earlier display:contents) */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .dxpr-theme-main-menu .region.region-navigation-collapsible > .block { display: inline-flex; align-items: center; }
  /* Order main menu block before account block */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .dxpr-theme-main-menu #block-mycoachz-theme-hauptnavi { order: 1 !important; margin-right: .5rem; }
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .dxpr-theme-main-menu #block-useraccountmenu { order: 2 !important; margin-left: .5rem; }
  /* Keep each UL in a single row inside its block so both blocks sit side-by-side */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .dxpr-theme-main-menu .region.region-navigation-collapsible .navbar-nav { display: inline-flex !important; flex-wrap: nowrap; gap: 0; }
  /* Ensure list items behave like inline buttons in the shared row */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .dxpr-theme-main-menu .navbar-nav > li {
    display: inline-flex; align-items: center; margin-left: .75rem;
  }
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .navbar-header {
    float: none !important;
    display: block;
    flex: 0 0 auto;
  }
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top #dxpr-theme-main-menu,
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .dxpr-theme-main-menu {
    flex: 1 1 auto;
    min-width: 0; /* allow shrinking to avoid wrap */
    display: flex;
    width: 100%;
    justify-content: flex-end;
  }
  /* ensure the region spans full width and aligns items in a single row */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .dxpr-theme-main-menu .region.region-navigation-collapsible {
    display: flex;
    flex: 1 1 auto;
    width: 100%;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: nowrap;
    min-width: 0;
    margin: 0; padding: 0;
  }
  /* force single-row flex nav (override DXPR table/float layout) */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .nav {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 0 !important;
    min-width: 0;
  }
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .nav>li {
    float: none !important;
    display: flex !important;
    align-items: center !important;
    flex: 0 0 auto;
  }
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .nav>li>a,
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .nav>li>span {
    display: flex !important;
    align-items: center !important;
    white-space: nowrap !important;
  }

  /* ----- Ordering fix: main menu first, then account; keep single row ----- */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .dxpr-theme-main-menu .region.region-navigation-collapsible {
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    flex-wrap: nowrap;
    gap: 0;
  }
  /* override earlier display: contents; make blocks true flex items for ordering */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .dxpr-theme-main-menu .region.region-navigation-collapsible > .block {
    display: inline-flex !important;
    align-items: center;
  }
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .dxpr-theme-main-menu #block-mycoachz-theme-hauptnavi { order: 1 !important; margin-right: .5rem; }
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .dxpr-theme-main-menu #block-useraccountmenu { order: 2 !important; margin-left: .5rem; }
  /* keep ULs as single-line rows inside each block (overrides display: contents) */
  .body--dxpr-theme-nav-desktop .dxpr-theme-header--top .dxpr-theme-main-menu .region.region-navigation-collapsible .navbar-nav {
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 0;
    margin: 0; padding: 0;
  }
}

/* Force text color via tokens so JS can flip it */
header.dxpr-theme-header,
header.dxpr-theme-header a {
  color: var(--mc-header-fg) !important;
}
header.dxpr-theme-header a:hover,
header.dxpr-theme-header a:focus,
header.dxpr-theme-header a.active {
  color: var(--mc-header-fg-active) !important;
}

/* Improve hover background for top-level items for readability */
.dxpr-theme-header .dxpr-theme-main-menu .menu a:hover,
.dxpr-theme-header .dxpr-theme-main-menu .menu a:focus {
  background: rgba(255,255,255,.06);
}

/* Ensure hamburger/toggle inherits computed color */
header.dxpr-theme-header #dxpr-theme-menu-toggle {
  color: var(--mc-header-icon-fg);
}

/* Prevent text wraps in top-level menu items */
.body--dxpr-theme-nav-desktop .dxpr-theme-header--top .nav>li>a,
.body--dxpr-theme-nav-desktop .dxpr-theme-header--top .nav>li>span {
  white-space: nowrap;
}

/* vermeide die Schattenkante beim sticky header */
.body--dxpr-theme-nav-desktop .dxpr-theme-header--top.dxpr-theme-header--fixed, .body--dxpr-theme-nav-desktop .dxpr-theme-header--top.affix {
     -webkit-box-shadow: none; 
     box-shadow: none; 
     }

/* Keep “Mein Profil” in title case (DXPR sets uppercase on top-level links).
   We mark the LI via preprocess and disable uppercase just for that item. */
header.dxpr-theme-header .dxpr-theme-main-menu li.mc-no-uppercase > a {
  text-transform: none !important;
}

/* Highlight “Mein Profil” when there are pending confirmations */
header.dxpr-theme-header .dxpr-theme-main-menu li.mc-has-alert > a {
  color: #ffa500 !important;
  font-weight: 600;
}

/* mobiles Menü */
@media (max-width: 575.98px) {
  #dxpr-theme-main-menu {
    max-width: 80%;
    background-color: transparent !important;
  }

  .region-navigation-collapsible {
    background-color: rgba(255,255,255,.9);
    border-radius: 0 0 35px 0;
    margin-top:10px;
  }
}

.body--dxpr-theme-nav-mobile .dxpr-theme-header #dxpr-theme-menu-toggle span, 
.body--dxpr-theme-nav-mobile .dxpr-theme-header #dxpr-theme-menu-toggle span::before, 
.body--dxpr-theme-nav-mobile .dxpr-theme-header #dxpr-theme-menu-toggle span::after {
  height: 0.18rem;
  border-radius: 0.09rem;
  }


