/* ===== Header base ===== */
header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
  transition: top 0.6s ease-in-out;
}

body.admin-bar header {
  top: 32px;
}

/* Header transparent ganz oben Template "Rechtliches" */
body.is-at-top:not(.page-template-rechtliches) > div.wp-site-blocks > header,
body.is-at-top:not(.page-template-rechtliches) > div.wp-site-blocks > header > * {
  background: transparent !important;
  box-shadow: none !important;
  filter: none !important;
}

/* Nav hover */
nav a:hover {
  color: var(--wp--preset--color--accent-2) !important;
  text-decoration: none;
}

/* Navigation accessibility tweaks */
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) {
  margin-bottom: 3px;
}

.wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
  outline-offset: 4px;
}

.wp-block-navigation .wp-block-navigation-item ul.wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  outline-offset: 0;
}

/* Mobile nav layout */
.wp-block-navigation__responsive-container.is-menu-open
.wp-block-navigation__responsive-container-content
.wp-block-navigation__container {
  padding-top: 4rem !important;
}

.wp-block-navigation__responsive-container-close {
  top: 14px;
}

/* Optional: Modal size (falls das Modal im Header steckt) */
#modal-1 {
  max-height: fit-content;
}

/* Navigation overlay animation (nur wenn reduced-motion NICHT aktiv) */
@media (prefers-reduced-motion: no-preference) {
  .wp-block-navigation__responsive-container.is-menu-open:not(.disable-default-overlay) {
    animation: none !important;
    transform-origin: top;
    animation: navSlideDown 520ms cubic-bezier(.22, 1, .36, 1) both !important;
  }

  .wp-block-navigation__responsive-container.is-menu-open
  .wp-block-navigation__responsive-container-content {
    animation: navContentIn 560ms cubic-bezier(.22, 1, .36, 1) both !important;
    animation-delay: 70ms !important;
  }

  @keyframes navSlideDown {
    0%   { opacity: 0; transform: translateY(-18px); }
    100% { opacity: 1; transform: translateY(0); }
  }

  @keyframes navContentIn {
    0%   { opacity: 0; transform: translateY(-10px); }
    100% { opacity: 1; transform: translateY(0); }
  }
}

/* Glass look */
.wp-block-navigation__responsive-container.is-menu-open:not(.disable-default-overlay) {
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

