/* Phone menu shared by every page: the header's links fold into a «⋮» button, and a panel
   slides in from the right with every section and the phone number. */
.m-menu-toggle,.m-menu,.m-menu-shade,.m-menu-phone{display:none}
@media(max-width:700px){
 body>header nav,body>header .header-contact,.site-header nav,.site-header .header-phone{display:none!important}
 body>header.m-menu-open,.site-header.m-menu-open{z-index:200}

 .m-menu-phone{display:flex;align-items:center;gap:7px;margin-left:auto;margin-right:6px;padding:6px 4px;color:#f0f0e7;font-size:14px;font-weight:500;letter-spacing:.01em;white-space:nowrap;text-decoration:none!important;-webkit-tap-highlight-color:transparent}
 /* just the handset, in system grey */
 .m-menu-phone-icon{display:grid;place-items:center;color:#8e8e93}
 .m-menu-phone-icon svg{width:18px;height:18px}
 .m-menu-phone:active{color:#f3dc7a}
 .m-menu-phone:focus-visible{outline:2px solid var(--gold,#e3c85e);outline-offset:2px;border-radius:20px}
 @media(max-width:340px){.m-menu-phone>span:last-child{display:none}}
 .m-menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;width:44px;height:44px;margin-right:-10px;padding:0;border:0;border-radius:50%;background:transparent;color:#f0f0e7;cursor:pointer;-webkit-tap-highlight-color:transparent}
 .m-menu-toggle i{display:block;width:5px;height:5px;border-radius:50%;background:currentColor;transition:transform .3s ease,background .3s}
 .m-menu-toggle[aria-expanded="true"]{color:var(--gold,#e3c85e)}
 .m-menu-toggle:focus-visible{outline:2px solid var(--gold,#e3c85e);outline-offset:2px}

 .m-menu-shade{display:block;position:absolute;top:100%;left:0;right:0;height:100svh;background:#0000004d;opacity:0;visibility:hidden;transition:opacity .35s,visibility .35s}
 .m-menu{display:flex;flex-direction:column;position:absolute;top:100%;right:0;width:min(330px,86vw);height:calc(100svh - 100%);overflow:auto;overscroll-behavior:contain;padding:18px 24px calc(28px + env(safe-area-inset-bottom));background:linear-gradient(180deg,#0f0f0fe6,#060606f0);-webkit-backdrop-filter:blur(20px) saturate(160%);backdrop-filter:blur(20px) saturate(160%);box-shadow:-30px 0 70px #000000a6,-1px 0 24px #00000073;color:#f0f0e7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transform:translateX(100%);visibility:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1),visibility .35s}
 .m-menu-open .m-menu{transform:none;visibility:visible}
 .m-menu-open .m-menu-shade{opacity:1;visibility:visible}

 /* the items run edge to edge and sit on each other like the folds of an accordion: each fold
    is lit from above and falls into shadow below, no outlines */
 header .m-menu nav{display:flex!important;flex-direction:column;gap:0;margin:0 -24px;padding:0}
 .m-menu nav a{display:flex!important;align-items:center;justify-content:space-between;min-height:62px;padding:0 24px;border:0;border-radius:0;background:linear-gradient(180deg,#ffffff0d 0%,#ffffff03 100%);box-shadow:inset 0 1px 0 #ffffff14,inset 0 -1px 0 #00000066;font-size:14px;font-weight:400;line-height:1.2;letter-spacing:.16em;text-transform:uppercase;color:#eae7dd;text-decoration:none;-webkit-tap-highlight-color:transparent;transition:background .2s,color .2s}
 .m-menu nav a::after{content:"→";font-size:16px;letter-spacing:0;color:#c9b65d;transition:transform .2s}
 header .m-menu nav a,header .m-menu nav a:hover{text-decoration:none!important}
 /* the chosen fold: gold type, a thin gold edge and a warm light fading off to the right —
    the site's black stays black, gold is only the accent */
 .m-menu nav a:hover,.m-menu nav a:focus-visible,.m-menu nav a[aria-current]{color:#e3c85e;outline:0;background:linear-gradient(90deg,#e3c85e26 0,#e3c85e0d 40%,transparent 75%),linear-gradient(180deg,#ffffff12 0%,#ffffff05 100%);box-shadow:inset 2px 0 0 #e3c85e,inset 0 1px 0 #ffffff1a,inset 0 -1px 0 #0000008c}
 .m-menu nav a:hover::after,.m-menu nav a[aria-current]::after{transform:translateX(3px);color:#e3c85e}
 .m-menu nav a:active{color:#e3c85e;background:linear-gradient(90deg,#e3c85e33 0,#e3c85e12 45%,transparent 80%),linear-gradient(180deg,#00000033 0%,#ffffff08 100%);box-shadow:inset 2px 0 0 #e3c85e,inset 0 2px 6px #0008}
 .m-menu-kicker{display:block;margin:0 0 14px;font-size:var(--fs-kicker,12px);letter-spacing:var(--ls-kicker,.19em);color:var(--c-kicker,#c9b65d)}
 .m-menu-call{position:relative;margin-top:auto;padding-top:28px;isolation:isolate}
 /* a warm light behind the glass, so the glass has something to bend */
 .m-menu-call::before{content:"";position:absolute;z-index:-1;left:-10%;right:-10%;top:30%;height:110px;background:radial-gradient(55% 55% at 25% 50%,#e3c85e26,transparent 70%);filter:blur(12px);pointer-events:none}
 .m-menu-call a{position:relative;display:flex;align-items:center;gap:14px;min-height:64px;padding:10px 20px 10px 10px;border-radius:32px;border:1px solid #ffffff2e;background:linear-gradient(180deg,#ffffff24 0%,#ffffff0d 45%,#ffffff08 55%,#ffffff14 100%);-webkit-backdrop-filter:blur(18px) saturate(180%);backdrop-filter:blur(18px) saturate(180%);box-shadow:inset 0 1px 1px #ffffff66,inset 0 -1px 1px #00000059,inset 0 0 18px #ffffff0f,0 10px 26px #000000a6;color:#f7f4e8;text-decoration:none!important;overflow:hidden;-webkit-tap-highlight-color:transparent;transition:transform .15s ease,box-shadow .25s ease,border-color .25s,background .25s}
 /* the specular sheen along the top edge */
 .m-menu-call a::after{content:"";position:absolute;left:12px;right:12px;top:1px;height:45%;border-radius:30px 30px 60% 60%/30px 30px 22px 22px;background:linear-gradient(180deg,#ffffff38,#ffffff00);pointer-events:none}
 /* hover and keyboard focus light the glass from inside, like the menu folds */
 .m-menu-call a:hover,.m-menu-call a:focus-visible{outline:0;border-color:#f3dc7a80;background:radial-gradient(80% 140% at 25% 50%,#e3c85e4d 0,#e3c85e14 60%,transparent 85%),linear-gradient(180deg,#ffffff2e 0%,#ffffff12 45%,#ffffff0a 55%,#ffffff1a 100%);box-shadow:inset 0 1px 1px #ffffff80,inset 0 -1px 1px #00000059,inset 0 0 24px #e3c85e33,0 0 22px #e3c85e38,0 10px 26px #000000a6}
 .m-menu-call a:hover .m-menu-call-text b,.m-menu-call a:focus-visible .m-menu-call-text b{color:#f3dc7a}
 .m-menu-call a:hover .m-menu-call-icon,.m-menu-call a:focus-visible .m-menu-call-icon{box-shadow:inset 0 1px 1px #ffffffb3,inset 0 -2px 3px #6b561599,0 0 14px #e3c85e99,0 3px 8px #0008}
 .m-menu-call a:active{transform:scale(.98);box-shadow:inset 0 1px 1px #ffffff40,inset 0 -1px 1px #00000059,inset 0 0 22px #e3c85e2e,0 5px 14px #000000a6}
 .m-menu-call-icon{flex:none;transition:box-shadow .25s;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff3b8 0,#e3c85e 45%,#a8892a 100%);box-shadow:inset 0 1px 1px #ffffffb3,inset 0 -2px 3px #6b561599,0 3px 8px #0008;color:#1a1606}
 .m-menu-call-icon svg{width:21px;height:21px}
 .m-menu-call-text{display:flex;flex-direction:column;gap:2px;line-height:1.2}
 .m-menu-call-text b{font-size:14px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;transition:color .2s}
 .m-menu-call-text span{font-size:13px;color:#d9d6ca;letter-spacing:.02em}
 .m-menu-call small{display:block;margin-top:14px;font-size:13px;color:#bfc1b7}
}
@media(max-width:700px) and (prefers-reduced-motion:reduce){.m-menu,.m-menu-shade{transition:none}}
