/* Shared catalog taxonomy, desktop disclosures and mobile catalog drawer. */
.catalog-navigation{border-bottom:1px solid var(--line);position:relative;background:var(--paper)}
.catalog-nav-row{display:flex;justify-content:center;align-items:stretch;gap:clamp(12px,2.6vw,38px)}
.catalog-nav-row>a,.catalog-menu-group>summary{display:flex;align-items:center;gap:9px;min-height:58px;padding:8px 0;font-size:15px;line-height:1.4;white-space:nowrap}
.catalog-nav-all{color:var(--accent);font-weight:600}.catalog-nav-all .icon{width:20px;height:20px}
.catalog-menu-group>summary{list-style:none;cursor:pointer;border-bottom:2px solid transparent}
.catalog-menu-group>summary::-webkit-details-marker,.catalog-drawer-group>summary::-webkit-details-marker{display:none}
.catalog-menu-group>summary::after,.catalog-menu-group[open]>summary::after,.catalog-drawer-group>summary::after,.catalog-drawer-group[open]>summary::after{content:none}
.catalog-menu-group[open]>summary,.catalog-menu-group[data-current-group]>summary{color:var(--accent);border-bottom-color:var(--accent)}
.catalog-nav-row>a:hover,.catalog-menu-group>summary:hover{color:var(--accent)}
.catalog-menu-chevron{display:block;flex:0 0 7px;width:7px;height:7px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:translateY(-2px) rotate(45deg)}
details[open]>summary>.catalog-menu-chevron{transform:translateY(2px) rotate(225deg)}
.catalog-menu-panel{position:absolute;top:100%;left:0;right:0;border-bottom:1px solid var(--line);background:var(--paper);box-shadow:0 18px 24px #332d2912;max-height:calc(100dvh - 160px);overflow:auto;overscroll-behavior:contain}
.catalog-menu-inner{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:clamp(30px,7vw,110px);padding-top:30px;padding-bottom:34px;max-width:1220px}
.catalog-menu-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding-bottom:21px;border-bottom:1px solid var(--line);margin-bottom:20px}
.catalog-menu-heading>p{font-size:23px;font-weight:500;line-height:1.3;margin:0}.catalog-menu-heading>a{font-size:14px;color:var(--accent);text-decoration:underline;text-underline-offset:4px;white-space:nowrap}
.catalog-menu-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px}
.catalog-menu-label{font-size:13px;color:var(--muted);line-height:1.5;margin:0 0 7px}
.catalog-menu-column ul{list-style:none;margin:0;padding:0}.catalog-menu-column a{display:flex;align-items:center;min-height:38px;font-size:16px;line-height:1.4;padding:7px 0;max-width:100%;overflow-wrap:anywhere}
.catalog-menu-column a:hover,.catalog-menu-column a[aria-current]{color:var(--accent);text-decoration:underline;text-underline-offset:4px}
.catalog-menu-picture{background:var(--cream);align-self:start;margin-top:1px;aspect-ratio:3/4;overflow:hidden}.catalog-menu-picture img{width:100%;height:100%;object-fit:contain}
.catalog-mobile-shortcuts{display:none}
.catalog-drawer.dialog{padding:0;width:min(460px,100%);max-width:100%;height:100dvh;max-height:100dvh;margin:0 auto 0 0;overflow:auto;overscroll-behavior:contain}
.catalog-drawer-heading{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--line);background:var(--paper)}
.catalog-drawer-heading h2{font-size:24px;line-height:1.3;margin:0;letter-spacing:-.5px}.catalog-drawer-heading .icon-button{width:44px;height:44px;flex-shrink:0}
.catalog-drawer-body{padding:0 20px calc(26px + env(safe-area-inset-bottom,0px))}
.catalog-drawer-all{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;color:var(--accent);font-size:17px;font-weight:500;border-bottom:1px solid var(--line)}
.menu-dialog.catalog-drawer nav{display:block;font-size:inherit}
.catalog-drawer-group{border-bottom:1px solid var(--line)}
.catalog-drawer-group>summary{display:flex;justify-content:space-between;align-items:center;gap:16px;list-style:none;padding:19px 0;cursor:pointer}
.catalog-drawer-group strong{display:block;font-size:18px;line-height:1.35;font-weight:500}.catalog-drawer-group small{display:block;font-size:13px;line-height:1.55;color:var(--muted);margin-top:5px}
.catalog-drawer-group[open]>summary strong{color:var(--accent)}
.catalog-drawer-links{padding:0 0 22px}.catalog-drawer-links .catalog-menu-columns{grid-template-columns:1fr;gap:16px}.catalog-drawer-links .catalog-menu-label{margin:11px 0 5px}.catalog-drawer-links .catalog-menu-column a{min-height:44px;padding:10px 12px}.catalog-drawer-links .catalog-menu-column a:hover{background:var(--tint)}
.catalog-drawer-section{display:flex;min-height:44px;align-items:center;padding:8px 12px;background:var(--tint);color:var(--accent);font-size:15px}
.catalog-drawer-help{padding-top:22px;display:grid;gap:4px}.catalog-drawer-help>a{display:flex;align-items:center;gap:12px;min-height:44px;font-size:15px}.catalog-drawer-help small{display:block;color:var(--muted);font-size:13px;line-height:1.5;margin:4px 0 12px}
html:has(.catalog-drawer[open]){overflow:hidden}
@media(min-width:1001px){.mobile-menu{display:none}}
@media(max-width:1000px){
  .catalog-navigation{display:none}.mobile-menu{display:inline-flex}
  .catalog-mobile-shortcuts{display:flex;align-items:center;gap:24px;padding:0 var(--gutter);border-bottom:1px solid var(--line);overflow:auto;scrollbar-width:none;white-space:nowrap}
  .catalog-mobile-shortcuts::-webkit-scrollbar{display:none}
  .catalog-mobile-shortcuts>a{display:inline-flex;flex-shrink:0;align-items:center;gap:8px;min-height:48px;font-size:15px;line-height:1.4;padding:8px 0}
  .catalog-mobile-shortcuts .catalog-mobile-trigger{color:var(--accent);font-weight:600}.catalog-mobile-trigger .icon{width:18px;height:18px}
  .catalog-mobile-shortcuts [aria-current]{color:var(--accent);text-decoration:underline;text-underline-offset:5px}
}
@media(max-width:360px){.catalog-mobile-shortcuts{gap:20px}.catalog-drawer-group strong{font-size:17px}}
@media(prefers-reduced-motion:reduce){.catalog-drawer{scroll-behavior:auto}}
