/* ------------------------------------------------------------------
 * Mega panel (cascade): L2 list / L3 tiles + links + banner / image
 * ------------------------------------------------------------------ */
@media (min-width: 992px) {
  /* Kept rendered (not display: none) so opening and closing can animate */
  #header .arva-panel {
    --arva-panel-pad: clamp(1.625rem, 3.5vw, 4rem);
    --arva-first-w: 32vw;
    --arva-second-w: max(20.625rem, 24vw);
    --arva-third-w: 33vw;
    --arva-duration: .3s;
    --arva-easing: cubic-bezier(.77, 0, .175, 1);
    display: block;
    visibility: hidden;
    left: 0 !important;
    width: 100vw !important;
    max-width: none !important;
    height: calc(100vh - var(--arva-banner-h) - var(--arva-bar-h));
    background: rgba(0, 0, 0, 0);
    box-shadow: none;
    pointer-events: none;
    transition: background-color var(--arva-duration) var(--arva-easing), visibility 0s linear var(--arva-duration);
  }

  #header .arva-panel.is-visible {
    visibility: visible;
    background: rgba(0, 0, 0, .7);
    pointer-events: auto;
    transition: background-color var(--arva-duration) var(--arva-easing), visibility 0s;
  }

  #header .arva-panel .up-menu-panel__inner {
    height: 100%;
    padding: 0;
  }

  #header .arva-panel__levels {
    display: grid;
    grid-template-columns: var(--arva-first-w) var(--arva-second-w) var(--arva-third-w);
    gap: 0;
    align-items: stretch;
    width: max-content;
    height: 100%;
  }

  #header .arva-panel__levels > .up-menu-panel__col {
    height: 100%;
    overflow-y: auto;
    scrollbar-width: none;
    background: #fff;
    transition: transform var(--arva-duration) var(--arva-easing), clip-path var(--arva-duration) var(--arva-easing);
  }

  /* Closed: L2 list off-screen left, tiles hidden behind it, image clipped */
  #header .arva-panel__first {
    z-index: 3;
    transform: translate3d(-100%, 0, 0);
  }

  #header .arva-panel__second {
    z-index: 2;
    transform: translate3d(calc(-101% - var(--arva-first-w)), 0, 0);
  }

  #header .arva-panel__third {
    z-index: 1;
    transform: translate3d(calc(-100% - var(--arva-first-w) - var(--arva-second-w)), 0, 0);
    clip-path: inset(0 100% 0 0);
  }

  #header .arva-panel.is-visible .up-menu-panel__col {
    transform: translate3d(0, 0, 0);
  }

  #header .arva-panel.is-visible .arva-panel__third {
    clip-path: inset(0 0 0 0);
  }

  #header .arva-panel__first {
    padding: var(--arva-panel-pad) var(--arva-pad);
  }

  #header .arva-panel__first .up-menu-branches {
    display: flex;
    flex-direction: column;
    gap: 1.4vw 0;
  }

  #header .arva-panel__branch {
    display: block;
    padding: 0;
    border: 0;
    background: none;
    color: #000;
    font-size: 1.8vw;
    font-weight: 900;
    line-height: 1.2;
    text-align: left;
    text-transform: uppercase;
    opacity: .2;
    transition: opacity .15s;
    cursor: pointer;
  }

  #header .up-menu-branch.is-active .arva-panel__branch,
  #header .arva-panel__branch:hover,
  #header .arva-panel__branch:focus {
    color: #000;
    opacity: 1;
  }

  #header .arva-panel__second {
    padding: var(--arva-panel-pad) min(2.1vw, 1.875rem);
  }

  #header .arva-panel__third .arva-panel__image {
    height: 100%;
    background: var(--arva-gray);
  }

  #header .arva-panel__third img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}

@media (min-width: 992px) and (prefers-reduced-motion: reduce) {
  #header .arva-panel,
  #header .arva-panel.is-visible,
  #header .arva-panel__levels > .up-menu-panel__col {
    transition: none;
  }
}

#header .arva-panel__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(max(9vw, 7.5rem), 1fr));
  gap: 1.25rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

#header .arva-panel__grid a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: .781rem 0;
  color: #000;
}

#header .arva-panel__tile {
  width: 100%;
  aspect-ratio: 1;
  min-height: max(7.5rem, 10vw);
  background: var(--arva-gray);
}

#header .arva-panel__tile img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  mix-blend-mode: multiply;
}

#header .arva-panel__grid span {
  font-size: .719rem;
  font-weight: 600;
  line-height: 1.2;
  text-align: center;
  text-transform: uppercase;
}

#header .arva-panel__links {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .781rem;
  margin-top: max(2.5rem, 3.5vw);
  text-align: left;
}

#header .arva-panel__links a {
  color: #000;
  font-size: .938rem;
  font-weight: 600;
  line-height: 1.2;
  text-transform: uppercase;
}

#header .arva-panel__grid a:hover,
#header .arva-panel__links a:hover {
  color: var(--arva-red);
}

#header .arva-panel__banner {
  display: block;
  margin-top: max(2.5rem, 3.5vw);
}

#header .arva-panel__banner img {
  display: block;
  width: 100%;
  height: auto;
}
