/* Membership additions only; existing hardware menu layout stays unchanged. */
.membership-nav-category {
  width: 100%;
  border: 0;
  font-family: inherit;
  text-align: left;
}

.membership-nav-category .megamenu-nav-icon,
.membership-mobile-nav .mobile-sub-product-thumb { object-fit: cover; }

.membership-nav-category:focus-visible,
.membership-mobile-nav > summary:focus-visible,
.membership-mobile-plan-links a:focus-visible {
  outline: 2px solid var(--color-primary, #2277ff);
  outline-offset: 3px;
}

.membership-nav-panel .membership-nav-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.membership-nav-panel .membership-nav-description {
  margin: 0 0 14px;
  font-size: 13.5px;
  line-height: 20px;
  color: var(--color-text-muted, #667085);
}

.membership-mobile-nav {
  width: 100%;
  border: 0;
}

.membership-mobile-nav > summary {
  list-style: none;
}

.membership-mobile-nav > summary::-webkit-details-marker {
  display: none;
}

.membership-mobile-nav > summary::marker {
  content: "";
}

.membership-mobile-nav[open] > summary .item-arrow {
  transform: rotate(180deg);
}

.membership-mobile-nav .membership-mobile-plan-links {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 0;
  padding: 0 0 16px 50px;
}

.membership-mobile-nav .membership-mobile-plan-links a {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 0;
  margin: 0;
  color: #1d1d1f;
  background: transparent;
  font-size: 15px;
  font-weight: 400;
  line-height: 22px;
  text-align: left;
  text-decoration: none;
}

.membership-mobile-plan-links img { width: 28px; height: 36px; object-fit: cover; flex-shrink: 0; }

/* Plan anchors are reached from the shared navigation on every local page. */
.membership-page #premium-title,
.membership-page #elite-title {
  scroll-margin-top: 104px;
}

@media (prefers-reduced-motion: reduce) {
  .membership-mobile-nav > summary .item-arrow {
    transition: none;
  }
}
