/* Mobile navigation: compact quick links and an accessible full-height menu. */
.mobile-bar{display:none}
@media(max-width:700px){
 body{padding-bottom:calc(68px + env(safe-area-inset-bottom,0px))}
 .menu-icon{display:block;width:24px;height:18px;background:linear-gradient(currentColor,currentColor) center/24px 1px no-repeat;position:relative}
 .menu-icon:before,.menu-icon:after{content:"";position:absolute;left:0;width:24px;height:1px;background:currentColor;transition:transform .2s,top .2s;top:1px}
 .menu-icon:after{top:17px}
 [aria-expanded=true] .menu-icon{background:none}
 [aria-expanded=true] .menu-icon:before{top:9px;transform:rotate(45deg)}
 [aria-expanded=true] .menu-icon:after{top:9px;transform:rotate(-45deg)}
 .mobile-bar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;bottom:0;left:0;right:0;z-index:50;padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));background:#faf8f4;color:#003843;border-top:1px solid #deded6;box-shadow:0 -4px 24px #001c2410}
 .mobile-bar>a,.mobile-bar>.menu-toggle{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:44px;min-height:55px;padding:4px;background:none;border:0;color:inherit;font-size:10px;line-height:1.3;letter-spacing:.04em}
 .mobile-bar>a[aria-current=page],.mobile-bar>.menu-toggle[aria-expanded=true]{background:#e8eeea;border-radius:8px}
 .mobile-bar :focus-visible{outline-offset:-3px}
 .contact-dock,.contact-dock.at-footer{left:auto;right:10px;top:auto;bottom:calc(82px + env(safe-area-inset-bottom,0px));transform:none;flex-direction:column;gap:4px;padding:4px;width:auto;border-radius:27px;max-width:none}
 .contact-dock a{display:flex;flex:0 0 46px;align-items:center;justify-content:center;width:46px;height:46px;padding:0;border-radius:50%}
 .contact-dock svg{display:block;width:20px;height:20px}
 .contact-dock .contact-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .site-header .nav-links,.page-home .nav-links{position:fixed;top:80px;bottom:calc(68px + env(safe-area-inset-bottom,0px));left:0;right:0;overflow-y:auto;background:#003843;padding:24px max(28px,env(safe-area-inset-left));gap:0;border-top:1px solid #ffffff26;align-items:stretch}
 .nav-links.is-open:before{content:"MAKE YOURSELF AT HOME";font-size:10px;letter-spacing:.18em;color:#c8a47f;margin-bottom:20px}
 .site-header .nav-links a{font-family:var(--serif);font-size:clamp(26px,7vw,36px);line-height:1.3;padding:14px 0;border-bottom:1px solid #ffffff26}
 .mobile-menu-open{overflow:hidden}
 .mobile-menu-open .site-header,.page-home.mobile-menu-open .site-header{position:fixed;top:0;left:0;right:0;height:80px;background:#003843;z-index:45}
 .mobile-menu-open .contact-dock{visibility:hidden}
 .mobile-menu-open:not(.page-home) main{padding-top:80px}
}
@media(prefers-reduced-motion:reduce){.menu-icon:before,.menu-icon:after{transition:none}}
