/* ── SITE MENU: hamburger button + slide-in panel (all pages) ── */
.mnu-btn{display:flex;flex-direction:column;justify-content:center;gap:4px;width:38px;height:38px;padding:0 9px;background:transparent;border:0.5px solid rgba(255,255,255,0.16);border-radius:2px;cursor:pointer;transition:border-color .2s,background .2s;flex-shrink:0;}
.mnu-btn:hover{border-color:var(--gold);background:rgba(201,169,110,0.08);}
.mnu-btn span{display:block;width:100%;height:1px;background:rgba(255,255,255,0.65);transition:transform .25s,opacity .2s,background .2s;}
.mnu-btn:hover span{background:var(--gold3);}
.mnu-btn[aria-expanded="true"] span:nth-child(1){transform:translateY(5px) rotate(45deg);}
.mnu-btn[aria-expanded="true"] span:nth-child(2){opacity:0;}
.mnu-btn[aria-expanded="true"] span:nth-child(3){transform:translateY(-5px) rotate(-45deg);}

.mnu-scrim{position:fixed;inset:0;z-index:1400;background:rgba(4,11,20,0.72);backdrop-filter:blur(3px);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;}
.mnu-scrim.on{opacity:1;visibility:visible;}

.mnu-panel{position:fixed;top:0;right:0;bottom:0;z-index:1500;width:352px;max-width:88vw;background:rgba(8,18,30,0.985);backdrop-filter:blur(18px);border-left:0.5px solid rgba(201,169,110,0.28);display:flex;flex-direction:column;transform:translateX(103%);visibility:hidden;transition:transform .34s cubic-bezier(.4,0,.2,1),visibility .34s;overflow-y:auto;overscroll-behavior:contain;}
.mnu-panel.on{transform:translateX(0);visibility:visible;}

.mnu-head{display:flex;align-items:center;justify-content:space-between;padding:22px 26px 20px;border-bottom:0.5px solid rgba(255,255,255,0.07);flex-shrink:0;}
.mnu-logo{font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:600;color:#fff;letter-spacing:.02em;}
.mnu-logo span{color:var(--gold);}
.mnu-close{background:none;border:none;color:rgba(255,255,255,0.45);font-size:26px;line-height:1;cursor:pointer;padding:0 2px;transition:color .2s;font-family:'Inter',sans-serif;}
.mnu-close:hover{color:#fff;}

/* the site-wide `nav {}` rule (68px tall flex row, sticky, centred) also matches
   this panel's <nav>, which turned the three groups into squashed columns —
   reset it so they stack as one clean vertical list */
.mnu-panel .mnu-body{position:static;display:block;height:auto;padding:8px 26px 4px;background:none;backdrop-filter:none;border-bottom:none;align-items:stretch;justify-content:flex-start;flex:1;}
.mnu-group{padding:20px 0;border-bottom:0.5px solid rgba(255,255,255,0.06);}
.mnu-group:last-child{border-bottom:none;}
.mnu-group h4{font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:14px;font-weight:400;}
.mnu-group a{display:block;font-family:'Cormorant Garamond',serif;font-size:21px;font-weight:400;color:rgba(255,255,255,0.66);padding:7px 0;transition:color .2s,transform .2s;}
.mnu-group a:hover{color:#fff;transform:translateX(4px);}

.mnu-foot{padding:22px 26px 28px;border-top:0.5px solid rgba(255,255,255,0.07);flex-shrink:0;}
.mnu-foot .btn-g{width:100%;text-align:center;}
.mnu-ph{display:block;text-align:center;margin-top:14px;font-size:13px;color:var(--gold);letter-spacing:.03em;}
.mnu-ph span{display:block;font-size:10px;color:rgba(255,255,255,0.28);letter-spacing:.1em;text-transform:uppercase;margin-top:5px;}

@media(max-width:768px){
  .mnu-panel{padding-bottom:78px;}
}
