.menu-toggle{display:none;border:1px solid #2f555740;border-radius:6px;background:transparent;color:var(--ink);width:46px;height:46px;padding:11px;cursor:pointer;align-items:center;justify-content:center;flex-direction:column;gap:5px;flex-shrink:0}
.menu-toggle span{display:block;width:22px;height:2px;background:currentColor;transition:transform .2s,opacity .2s}
.menu-toggle:focus-visible{outline:3px solid #b17b38;outline-offset:4px}
@media(max-width:1050px){
  header{flex-direction:row;flex-wrap:wrap;min-height:0;gap:12px;align-items:center}
  header .site-logo{flex:0 1 260px;width:calc(100% - 64px);max-width:260px}
  header nav{flex-basis:100%;width:100%;flex-direction:column;align-items:stretch;gap:0}
  header nav a{padding:12px 8px;font-size:1rem;line-height:1.5;border-bottom:1px solid #2f555718;overflow-wrap:anywhere}
  header nav a[aria-current="page"]{background:#ffffff40;border-radius:4px}
  header.menu-ready .menu-toggle{display:flex}
  header.menu-ready nav{display:none}
  header.menu-ready.menu-open nav{display:flex;position:absolute;top:100%;left:0;right:0;padding:10px 24px 18px;background:#eae0d6;box-shadow:0 12px 18px #2f555715;max-height:calc(100dvh - var(--header-height,110px));overflow-y:auto;overscroll-behavior:contain}
  .menu-open .menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .menu-open .menu-toggle span:nth-child(2){opacity:0}
  .menu-open .menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
}
@media(max-width:700px){header{padding:10px 20px}header .site-logo{flex-basis:220px;max-width:calc(100% - 60px)}}
@media(prefers-reduced-motion:reduce){.menu-toggle span{transition:none}}
@media print{.menu-toggle{display:none!important}header.menu-ready nav{display:flex;position:static}}
