:root { --nav-panel-top: 136px; }
.nav-dropdown > summary {
  width: 203px;
  padding-top: 6px;
  border-bottom: 6px solid transparent;
  transition: background-color .15s;
}
.nav-dropdown[open] > summary,
.nav-dropdown > summary:hover { background: #cccce1; border-bottom-color: var(--ink); }
.mega-menu {
  padding: 48px 5% 40px;
  background: #fff;
  border-top: 1px solid #e3e0de;
  box-shadow: 0 12px 20px #301d160d;
  max-height: calc(100dvh - var(--nav-panel-top) - 12px);
  overflow-y: auto;
  overscroll-behavior: contain;
}
.mega-menu .nav-product-grid, .nav-product-grid {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 44px 28px;
  max-width: 1490px;
  margin: 0 auto;
}
.mega-menu .nav-product-card, .site-menu .nav-product-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 0;
  border: 0;
  text-align: center;
  min-width: 0;
}
.nav-product-circle {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: clamp(112px, 10.5vw, 180px);
  aspect-ratio: 1;
  border-radius: 50%;
  overflow: hidden;
  background: var(--category-color);
  transition: transform .18s ease;
}
.nav-product-circle img {
  width: 87%;
  height: 90%;
  object-fit: contain;
  mix-blend-mode: multiply;
}
.nav-product-circle .nav-category-illustration { width: 78%; height: 78%; }
.nav-product-label { font: 17px/1.25 Trade, Arial, sans-serif; text-transform: uppercase; }
.mega-menu .nav-product-card:hover, .site-menu .nav-product-card:hover { text-decoration: none; }
.nav-product-card:hover .nav-product-circle { transform: translateY(-3px); }
.nav-product-card:hover .nav-product-label { text-decoration: underline; text-underline-offset: 4px; }
.mobile-catalog-menu { display: none; }
.site-menu { top: var(--nav-panel-top); max-height: calc(100dvh - var(--nav-panel-top)); overflow-y: auto; overscroll-behavior: contain; }
@media (max-width: 1200px) {
  .nav-dropdown > summary { width: 145px; }
  .mega-menu { padding: 32px 3%; }
  .mega-menu .nav-product-grid { gap: 30px 16px; }
  .nav-product-label { font-size: 15px; }
}
@media (max-width: 900px) {
  .site-menu { width: 100%; max-width: 100%; padding: 12px 22px 28px; background: #fff; }
  .drawer-links { display: flex; gap: 20px; }
  .drawer-links a { flex: 1; }
  .desktop-category-links { display: none; }
  .mobile-catalog-menu { display: block; }
  .mobile-catalog-menu > details { border-bottom: 1px solid var(--line); }
  .mobile-catalog-menu > details > summary { display: flex; justify-content: space-between; padding: 20px 5px; font: 21px Trade, sans-serif; text-transform: uppercase; }
  .mobile-catalog-menu > details[open] > summary span { transform: rotate(45deg); }
  .mobile-catalog-menu .nav-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 25px 18px; padding: 8px 0 28px; }
  .nav-product-circle { width: min(33vw, 150px); }
  .nav-product-label { font-size: 15px; }
}
@media (prefers-reduced-motion: reduce) { .nav-product-circle { transition: none; } }
