/* Regras que substituem o que os scripts da GoDaddy faziam. Vale para os três sites. */
img { max-width: 100%; }

/* Menu do celular: o botão de três riscos aponta para a gaveta, que abre quando vira o alvo do endereço (#...) */
[id$="-navId-mobile"]:target {
  visibility: visible !important;
  width: 100% !important;
  max-width: 100% !important;
  opacity: 1 !important;
  transform: none !important;
}
.fecha-gaveta { color: inherit; cursor: pointer; }

/* Galeria de fotos: fila que rola de lado, uma foto por vez, com legenda e contador */
.galeria { position: relative; }
.galeria-trilho { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: thin; }
.galeria-trilho figure { flex: 0 0 100%; margin: 0; position: relative; scroll-snap-align: center; }
.galeria-trilho img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }
.galeria-trilho figcaption { position: absolute; left: 0; right: 0; bottom: 0; display: flex; justify-content: space-between; gap: 16px;
  padding: 8px; color: #fff; background: rgba(0, 0, 0, .5); font-size: 16px; line-height: 1.5; }
.galeria button { position: absolute; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; border: 0; cursor: pointer;
  color: #fff; background: rgba(0, 0, 0, .5); font-size: 30px; line-height: 1; }
.galeria-ant { left: 0; }
.galeria-prox { right: 0; }

/* Modelo que mostra as fotos inteiras, sem corte, uma ao lado da outra */
.galeria-inteira .galeria-trilho { gap: 4px; scroll-snap-type: x proximity; }
.galeria-inteira figure { flex: 0 0 auto; }
.galeria-inteira img { width: auto; height: min(600px, 62vw); aspect-ratio: auto; object-fit: contain; }

/* Mosaico: fotos em colunas, cada uma na sua proporção */
.galeria-grade { columns: 3 300px; column-gap: 4px; }
.galeria-grade img { display: block; width: 100%; height: auto; margin: 0 0 4px; break-inside: avoid; }

/* Horário de atendimento: tabela fixa com a semana inteira */
.horarios { border-collapse: collapse; font-size: 14px; line-height: 1.5; }
.horarios td { padding: 2px 24px 2px 0; }

/* Mapa incorporado do Google, com o botão de rota por cima */
.mapa { position: relative; }
.mapa iframe { display: block; width: 100%; height: 350px; border: 0; }
.mapa a { position: absolute; top: 12px; left: 24px; padding: 8px 20px; border-radius: 48px; color: #fff; background: #1a9fe0;
  font-size: 12px; font-weight: 700; letter-spacing: 2px; text-transform: uppercase; text-decoration: none; }

/* Link para o perfil no lugar do feed do Instagram */
.segue-instagram { display: block; text-align: center; font-size: 16px; }
