/* HailDC site menu (shared by the hub and every page). */
.mm-mast{position:sticky;top:0;z-index:50;background:rgba(17,6,7,.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid #341a1c;view-transition-name:mast}
:root[data-theme=light] .mm-mast{background:rgba(255,250,242,.92);border-bottom-color:#e2d2bd}
.mm-bar{max-width:1360px;margin:0 auto;padding:0 clamp(16px,3vw,36px);display:flex;align-items:center;gap:18px;height:64px}
.mm-brand{display:flex;align-items:center;gap:10px;flex:none}
.mm-brand img{width:46px;height:46px}
.mm-brand span{font:800 18px/1 "Libre Franklin",sans-serif;letter-spacing:-.01em}
.mm-top{display:flex;gap:2px;flex:1;min-width:0}
.mm-top>li{list-style:none}
.mm-top{margin:0;padding:0}
.mm-btn{display:flex;align-items:center;gap:6px;padding:10px 11px;border-radius:10px;font:800 14.5px/1 "Libre Franklin",sans-serif;color:#bba897;white-space:nowrap;transition:color .2s,background .2s}
:root[data-theme=light] .mm-btn{color:#6b5244}
.mm-btn:hover,.mm-btn[aria-expanded=true],.mm-btn.on{color:#ffb612;background:rgba(255,182,18,.08)}
.mm-btn svg{width:10px;height:10px;transition:transform .25s}
.mm-btn[aria-expanded=true] svg{transform:rotate(180deg)}
.mm-tools{display:flex;align-items:center;gap:8px;flex:none;margin-left:auto}
.mm-ic{width:40px;height:40px;display:grid;place-items:center;border:1px solid #4f2729;border-radius:10px;color:#f7eddd;transition:border-color .2s,color .2s}
:root[data-theme=light] .mm-ic{color:#1c0b0c;border-color:#cfb999}
.mm-ic:hover{border-color:#ffb612;color:#ffb612}
.mm-ic svg{width:18px;height:18px}
.mm-burger{display:none}
.mm-panel{position:absolute;left:0;right:0;top:100%;background:rgba(19,7,8,.98);border-bottom:1px solid #4f2729;box-shadow:0 30px 60px rgba(0,0,0,.5);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .25s,transform .3s cubic-bezier(.2,.8,.2,1),visibility .25s}
:root[data-theme=light] .mm-panel{background:rgba(255,250,242,.99);border-bottom-color:#e2d2bd}
.mm-panel.open{opacity:1;visibility:visible;transform:none}
.mm-panel__in{max-width:1360px;margin:0 auto;padding:22px clamp(16px,3vw,36px) 28px;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:6px 18px}
.mm-link{display:block;padding:11px 12px;border-radius:12px;transition:background .2s,transform .2s}
.mm-link:hover{background:rgba(255,182,18,.09);transform:translateX(3px)}
.mm-link b{display:block;font:800 15px/1.2 "Libre Franklin",sans-serif;color:#f7eddd}
:root[data-theme=light] .mm-link b{color:#1c0b0c}
.mm-link span{display:block;font:500 12.5px/1.35 "Libre Franklin",sans-serif;color:#bba897;margin-top:3px}
.mm-panel.open .mm-link{animation:mmIn .4s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i)*25ms)}
@keyframes mmIn{from{opacity:0;transform:translateY(8px)}}
.mm-sheet{display:none}
@media (max-width:1100px){
  .mm-top{display:none}
  .mm-burger{display:grid}
  .mm-sheet{display:block;position:fixed;z-index:49;inset:64px 0 0;visibility:hidden;background:rgba(17,6,7,.99);overflow-y:auto;transform:translateX(100%);transition:transform .35s cubic-bezier(.2,.8,.2,1);padding:10px clamp(16px,3vw,36px) 80px}
  :root[data-theme=light] .mm-sheet{background:#fffaf2}
  .mm-sheet.open{transform:none;visibility:visible}
  .mm-sheet details{border-bottom:1px solid #341a1c}
  .mm-sheet summary{list-style:none;cursor:pointer;padding:16px 4px;font:800 19px/1 "Libre Franklin",sans-serif;display:flex;justify-content:space-between}
  .mm-sheet summary::after{content:"+";color:#ffb612}
  .mm-sheet details[open] summary::after{content:"–"}
  .mm-sheet .mm-link{padding:9px 6px}
}
@media (prefers-reduced-motion:reduce){.mm-panel,.mm-sheet,.mm-link{transition:none!important;animation:none!important}}
