/* mnav:inicio — menu mobile em ecrã inteiro (gerado por gerar_concelhos/mobile_nav.py, proposta 16/10/2026). Só ≤860px; desktop sem alterações. */
.mnav{position:fixed;inset:0;z-index:70;background:#F6F3EE;color:#14263C;font-family:Outfit,"Segoe UI",sans-serif;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.mnav[hidden]{display:none}
.mnav-top{display:flex;justify-content:flex-end;align-items:center;min-height:72px;padding:0 max(14px,calc((100% - 1120px)/2));flex:none;border-bottom:1px solid rgba(12,30,54,.06)}
.mnav-x{width:52px;height:52px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #E3DCD1;border-radius:50%;background:#fff;color:#0C1E36;cursor:pointer;padding:0;margin-right:6px}
.mnav-x svg{width:22px;height:22px}
.mnav-x:hover{border-color:#C6A36A}
.mnav-x:focus-visible,.mnav-list a:focus-visible{outline:2px solid #C6A36A;outline-offset:2px}
.mnav-list{list-style:none;margin:0;padding:18px 20px 40px;display:flex;flex-direction:column}
.mnav-list a{display:flex;align-items:center;min-height:52px;padding:4px 4px 4px 14px;color:#0C1E36;text-decoration:none;font-size:1.12rem;font-weight:420;border-left:3px solid transparent}
.mnav-list .mnav-p a{min-height:60px;font-size:1.42rem;font-weight:640;letter-spacing:-.01em}
.mnav-list a[aria-current="page"]{border-left-color:#C6A36A}
.mnav-list a:active,.mnav-list a:hover{color:#8A6A33}
.mnav-sep{height:1px;background:#E3DCD1;margin:14px 0 12px 14px;position:relative}
.mnav-sep::before{content:"";position:absolute;left:0;top:0;width:36px;height:1px;background:#C6A36A}
html.mnav-lock,html.mnav-lock body{overflow:hidden}
@media (min-width:861px){.mnav{display:none!important}}
@media (prefers-reduced-motion:no-preference){.mnav:not([hidden]){animation:mnavF .18s ease-out}@keyframes mnavF{from{opacity:0}}}
/* mnav:fim */
