.mobile-menu-toggle{display:none}
.mobile-navigation[hidden]{display:none}
@media(min-width:1101px){
  .mini-nav{height:90px;gap:7px}
  .mini-nav .utility-btn{flex:0 0 91px;width:91px;height:86px;min-height:86px;padding:7px 4px 6px;gap:2px}
  .mini-nav .utility-icon,.mini-nav .utility-sitemap .utility-icon{height:31px;margin:0 auto 2px}
  .mini-nav .utility-favorite .utility-icon{height:32px}
  .mini-nav .utility-sitemap .utility-icon{margin-top:0;margin-bottom:2px}
  .mini-nav .utility-btn b{font-size:11px;line-height:1.2;letter-spacing:0}
  .mini-nav{margin-right:-12px;translate:12px 0}
  .topnav-right>.search{translate:-28px 0}
}
@media(max-width:1100px){
  .topbar{z-index:40}
  .topnav-right{grid-template-columns:minmax(0,1fr) 62px;align-items:center;gap:8px}
  .search{grid-column:1;grid-row:1;min-width:0}
  .mobile-menu-toggle{
    grid-column:2;grid-row:1;position:relative;z-index:2;
    display:flex;min-width:58px;min-height:55px;flex-direction:column;align-items:center;justify-content:center;gap:3px;
    padding:4px 5px;color:#fff5d6;border:0;background:transparent;
    font:700 11px/1.2 var(--reading-font);cursor:pointer;
  }
  .mobile-menu-toggle:focus-visible{outline:2px solid #fff0a1;outline-offset:2px}
  .mobile-menu-toggle__icon{display:flex;width:31px;height:26px;flex-direction:column;justify-content:space-around;padding:3px 0}
  .mobile-menu-toggle__icon i{display:block;width:100%;height:2px;border-radius:2px;background:linear-gradient(90deg,#ffe7a0,#c58c32 55%,#fff0bd);box-shadow:0 1px 1px #00182a;transition:transform .16s ease,opacity .16s ease}
  .mobile-menu-toggle[aria-expanded="true"] .mobile-menu-toggle__icon i:first-child{transform:translateY(7px) rotate(45deg)}
  .mobile-menu-toggle[aria-expanded="true"] .mobile-menu-toggle__icon i:nth-child(2){opacity:0}
  .mobile-menu-toggle[aria-expanded="true"] .mobile-menu-toggle__icon i:last-child{transform:translateY(-7px) rotate(-45deg)}
  .mobile-navigation:not([hidden]){
    position:absolute;z-index:80;top:100%;right:0;left:0;max-height:calc(100dvh - 190px);overflow:auto;
    padding:12px 12px 16px;border-top:1px solid #d4a64a;border-bottom:3px solid #754814;
    background:linear-gradient(155deg,#0c4268,#062b49 58%,#031c32);
    box-shadow:0 8px 18px #00101dcc,inset 0 1px #ffdf82;
  }
  .mobile-navigation__categories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
  .mobile-navigation__categories .global-menu__link{min-height:60px;aspect-ratio:auto;padding:6px 10px;background-size:100% 100%;filter:drop-shadow(0 2px 1px #00101d99)}
  .mobile-navigation__categories .global-menu__icon{width:34px;height:34px}
  .mobile-navigation__categories .global-menu__label{font-size:16px}
  .mobile-navigation__categories .global-menu__label--stack{font-size:14px}
  .mobile-navigation__utilities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:9px;padding-top:9px;border-top:1px solid #d1a44f88}
  .mobile-navigation__utilities .utility-btn{display:flex;min-width:0;min-height:62px;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:5px 3px;border:1px solid #84622c;border-radius:0 0 5px 5px;background:linear-gradient(90deg,#062941,#0a4268 48%,#042338);box-shadow:inset 0 0 0 1px #1b5370,0 2px 0 #38230e;color:#f4eee1;text-align:center;text-decoration:none}
  .mobile-navigation__utilities .utility-icon{width:auto;height:27px;margin:0;object-fit:contain}
  .mobile-navigation__utilities .utility-favorite .utility-icon{height:28px}
  .mobile-navigation__utilities .utility-btn b{font:700 12px/1.3 var(--reading-font);letter-spacing:0;white-space:normal}
  .mobile-menu-open{overflow:hidden}
}
@media(max-width:380px){
  .mobile-navigation__categories .global-menu__link{min-height:54px;gap:5px;padding-inline:6px}
  .mobile-navigation__categories .global-menu__icon{width:29px;height:29px}
  .mobile-navigation__categories .global-menu__label{font-size:15px}
  .mobile-navigation__categories .global-menu__label--stack{font-size:13px}
}
@media(prefers-reduced-motion:reduce){.mobile-menu-toggle__icon i{transition:none}}
/* Leave space for the mobile logo's silhouette above the search controls. */
@media(max-width:760px){
  .topnav{display:block}
  .topnav>.logo.logo-image{margin-bottom:16px;filter:drop-shadow(0 4px 4px #00101d80)}
  .topnav>.logo.logo-image>img{filter:drop-shadow(0 3px 1px #2b160980) drop-shadow(0 5px 5px #00101d80)}
}
