/* Layout and hierarchy only. Glass surface, card radius and entrance motion
   share the original mega-menu rules in public/base/polish.css. */
jj-catalog-navigation {
  /* Inherit the original glass surface; strengthen content, not opacity. */
  --jj-menu-border:rgba(var(--header-color-text,var(--color-text,24,24,24)),.45);
  display:block;
  color:rgb(var(--header-color-text, var(--color-text, 24,24,24)));
  font-family:var(--sort-body-font, inherit);
  font-style:var(--sort-body-font-style, normal);
  font-weight:var(--sort-body-font-weight, 400);
  line-height:var(--sort-body-line-height, 1.5);
  letter-spacing:var(--sort-body-letter-spacing, normal);
}
.jj-navigation *, .jj-navigation *::before, .jj-navigation *::after { box-sizing:border-box; }
.jj-navigation ul { list-style:none; padding:0; margin:0; }
.jj-navigation a { color:inherit; text-decoration:none; }
.jj-navigation summary { list-style:none; cursor:pointer; }
.jj-navigation summary::-webkit-details-marker { display:none; }
.jj-navigation a:focus-visible, .jj-navigation summary:focus-visible { outline:2px solid currentColor; outline-offset:4px; border-radius:3px; }
.jj-navigation__roots { display:flex; align-items:center; gap:32px; }
.jj-navigation__root-link { display:flex; align-items:center; gap:9px; min-height:52px; padding:12px 0; font-size:var(--body3-font-size); font-weight:var(--sort-body-font-weight, 400); line-height:1.625; white-space:nowrap; }
.transparent:not(:hover) .jj-navigation--desktop .jj-navigation__root-link { color:rgb(var(--header-transparent-color-text, var(--color-text))); }
.theme-sticky-header--sticky .transparent .jj-navigation--desktop .jj-navigation__root-link { color:rgb(var(--header-color-text)); }
.jj-navigation__chevron { display:inline-block; flex:0 0 auto; width:7px; height:7px; border-inline-end:1.5px solid currentColor; border-block-end:1.5px solid currentColor; transform:rotate(45deg); margin-top:-4px; transition:transform .3s var(--ease-silk); }
details[open] > summary > .jj-navigation__chevron { transform:rotate(225deg); margin-top:3px; }
.jj-navigation__panel { position:absolute; z-index:var(--header-nav-dropdown-panel-z-index,4); inset-inline:0; top:100%; padding:24px; max-height:calc(100dvh - 130px); overflow:auto; overscroll-behavior:contain; color:rgb(var(--header-color-text, var(--color-text))); }
.jj-navigation__root:not([open]) > .jj-navigation__panel { display:none; }
.jj-navigation__panel-heading { display:flex; justify-content:space-between; align-items:center; gap:20px; padding-bottom:16px; margin-bottom:20px; border-bottom:1px solid var(--jj-menu-border); font-size:var(--body6-font-size); font-weight:500; letter-spacing:.08em; text-transform:uppercase; }
.jj-navigation__panel-heading > a { letter-spacing:var(--sort-body-letter-spacing, normal); text-transform:none; font-size:var(--body5-font-size); padding:10px 0; }
.jj-navigation__products { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.jj-navigation__product { min-width:0; padding:18px 20px; border:1px solid var(--jj-menu-border); background:rgba(var(--header-background, var(--color-background)),.16); }
.jj-navigation__series-title { display:flex; justify-content:space-between; align-items:center; gap:12px; min-height:44px; padding:2px 0; font-family:var(--sort-title-font, inherit); font-size:var(--title4-font-size); font-weight:600; letter-spacing:.02em; line-height:1.3; }
.jj-navigation__series-title > span[aria-hidden] { font-family:var(--sort-body-font,inherit); font-size:var(--body3-font-size); opacity:1; }
.jj-navigation__series-title--single { min-height:44px; }
.jj-navigation__size-group { margin-top:14px; padding-inline-start:14px; border-inline-start:3px solid rgba(var(--header-color-text,var(--color-text)),.65); }
.jj-navigation__size-heading { margin:0 0 8px; font-size:var(--body5-font-size); font-weight:600; line-height:1.4; letter-spacing:.08em; text-transform:uppercase; opacity:1; }
.jj-navigation__sizes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.jj-navigation__sizes a { display:flex; flex-direction:column; justify-content:center; min-height:66px; gap:5px; padding:10px; background:rgba(var(--header-color-text,var(--color-text)),.06); border:1px solid var(--jj-menu-border); border-radius:6px; transition:background .3s var(--ease-silk),border-color .3s var(--ease-silk); }
.jj-navigation__sizes a > span { font-size:var(--body4-font-size); font-weight:600; }
.jj-navigation__sizes small { font-size:var(--body5-font-size); line-height:1.5; letter-spacing:0; font-variant-numeric:tabular-nums; opacity:1; }
.jj-navigation__materials { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.jj-navigation__material { display:flex; align-items:center; justify-content:space-between; gap:16px; min-height:66px; padding:16px 20px; border:1px solid var(--jj-menu-border); background:rgba(var(--header-background, var(--color-background)),.16); font-size:var(--body3-font-size); font-weight:600; }
.jj-navigation__material > span[aria-hidden] { opacity:1; }
.jj-navigation__all-series { display:inline-flex; gap:8px; align-items:center; min-height:44px; margin-top:8px; font-size:var(--body5-font-size); text-decoration:underline !important; text-underline-offset:4px; }
.jj-navigation--desktop { grid-area:nav; min-width:0; }
.jj-navigation__series-title .header-nav__underline, .jj-navigation__material .header-nav__underline { white-space:normal; }
@media (hover:hover) {
  .jj-navigation__sizes a:hover, .jj-navigation__material:hover { background:rgba(var(--header-color-text,var(--color-text)),.12); border-color:rgb(var(--header-color-text,var(--color-text))); }
}
.jj-navigation--mobile .jj-navigation__roots { display:block; }
.jj-catalog-drawer .header-nav-drawer__content { max-width:100vw; background:var(--glass-bg-strong); -webkit-backdrop-filter:var(--glass-blur); backdrop-filter:var(--glass-blur); }
.jj-navigation--mobile { min-height:0; overflow-y:auto; overscroll-behavior:contain; font-family:var(--sort-body-font-mobile,var(--sort-body-font)); }
.jj-navigation--mobile .jj-navigation__roots > li { border-bottom:1px solid var(--jj-menu-border); }
.jj-navigation--mobile .jj-navigation__root-link { justify-content:space-between; min-height:60px; padding:14px 20px; font-size:var(--body2-font-size); font-weight:600; white-space:normal; }
.jj-navigation--mobile .jj-navigation__panel { position:static; max-height:none; overflow:visible; padding:0 20px 20px; border:0; border-radius:0; box-shadow:none; background:transparent; }
.jj-navigation--mobile .jj-navigation__panel-heading { padding:0 0 8px; margin:0 0 12px; font-size:var(--body6-font-size); }
.jj-navigation--mobile .jj-navigation__products, .jj-navigation--mobile .jj-navigation__materials { display:grid; grid-template-columns:minmax(0,1fr); gap:10px; }
.jj-navigation--mobile .jj-navigation__product { padding:8px 12px; }
.jj-navigation--mobile .jj-navigation__series-title { min-height:44px; font-size:calc(var(--body3-font-size) * 1.2857); font-weight:600; }
.jj-navigation--mobile .jj-navigation__size-group { margin-top:8px; padding-inline-start:10px; }
.jj-navigation--mobile .jj-navigation__material { min-height:52px; padding:12px; font-size:var(--body3-font-size); }
@media (max-width:959px) { .jj-navigation--desktop { display:none; } }
@media (min-width:960px) and (max-width:1199px) {
  .jj-navigation__roots { gap:22px; }
  .jj-navigation__products { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (prefers-reduced-motion:reduce) { .jj-navigation *,.jj-navigation *::after { transition:none !important; } }

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  .jj-catalog-drawer .header-nav-drawer__content { background:rgb(var(--header-background,var(--color-background))); }
}
