/* Camada partilhada de acessibilidade — carregar DEPOIS do CSS da página */
.skip{position:absolute;left:1rem;top:-4rem;background:#fff;color:#000;padding:.7rem 1rem;z-index:100;font:600 .9rem 'Figtree',sans-serif}
.skip:focus{top:1rem}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:0 0 0 6px #1d2a14}
.btn-reservar,.btn-carta,.menu-btn,.link-voltar{min-height:44px}
footer a,.footer-info a{padding:.35rem 0}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* ── Coerência entre páginas ── */
/* Botões: maiúsculas pequenas e espaçadas + seta */
.btn-reservar,.btn-carta,.btn,.btn-submit,.link-simples{text-transform:uppercase;letter-spacing:.12em;font-weight:600}
.menu-btn{text-transform:uppercase}
.btn-reservar:not(.btn-voltar)::after,.btn-carta::after,.btn:not(.btn-voltar)::after,.btn-submit::after{content:"→";content:"→" / "";margin-left:.6em}
.btn-voltar::before{content:"←";content:"←" / "";margin-right:.6em}
/* Logótipo do cabeçalho com o mesmo tamanho em desktop */
@media (min-width:901px){header .logo{height:48px;width:auto}}

/* ── Mobile ── */
html{-webkit-text-size-adjust:100%}
img,video{max-width:100%}
@media (max-width:900px){
  /* alturas que não "saltam" com a barra do browser */
  .hero{height:auto;min-height:70vh;min-height:70svh}
  .menu-center{height:auto;min-height:calc(100vh - 110px);min-height:calc(100svh - 110px)}
  /* iOS faz zoom em campos com menos de 16px */
  input,select,textarea{font-size:16px!important}
  .btn-reservar,.btn-carta,.btn,.btn-submit{min-height:48px}
  footer a,.footer-links a{padding:.5rem .25rem}
  header{padding-left:20px;padding-right:20px}
}
@media (max-width:768px){
  body.home-page{min-height:100vh;min-height:100svh}
  main.home-content.two-columns{height:calc(100vh - 50px);height:calc(100svh - 50px)}
  .column{min-height:30vh}
}

/* A Forum só existe em peso 400: nunca simular negrito */
body{font-synthesis:none}
