/* Atualização 018: menu padronizado e remoção do realce azul em toque */

/* Remove sublinhado e destaque azul nativo em toques, sem remover foco de teclado. */
a,
button,
summary,
[role="button"],
input,
select,
textarea {
  -webkit-tap-highlight-color: transparent;
}

a,
a:link,
a:visited,
a:hover,
a:active {
  text-decoration: none !important;
}

button,
summary {
  -webkit-touch-callout: none;
}

/* Mantém acessibilidade para navegação por teclado. */
a:focus-visible,
button:focus-visible,
summary:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid var(--cyan, #7dd3fc);
  outline-offset: 3px;
}

/* Cabeçalho e menu iguais em todas as páginas. */
.header,
.header.inner,
.header.scrolled {
  background: rgba(8, 43, 66, .97) !important;
  box-shadow: 0 12px 40px rgba(4, 31, 48, .2) !important;
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
}

@media (max-width: 900px) {
  .mobile-nav,
  body.page-home .mobile-nav {
    display: block !important;
    position: fixed;
    z-index: 79;
    left: var(--page-pad, 20px);
    right: var(--page-pad, 20px);
    top: 86px;
    max-height: calc(100svh - 108px);
    overflow: auto;
    border: 1px solid rgba(255, 255, 255, .12) !important;
    border-radius: 24px;
    background: rgba(8, 43, 66, .97) !important;
    box-shadow: 0 28px 70px rgba(3, 20, 31, .28) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    backdrop-filter: blur(16px) !important;
  }

  .mobile-nav a,
  body.page-home .mobile-nav a {
    color: #fff !important;
    text-decoration: none !important;
  }

  .mobile-nav a.active,
  .mobile-nav a:hover,
  .mobile-nav a:focus-visible {
    color: var(--cyan) !important;
    background: rgba(46, 161, 255, .13);
  }
}

/* Garante que Galeria nunca desapareça no menu desktop. */
.desktop-nav a[href="galeria.html"] {
  display: inline-flex !important;
  visibility: visible !important;
  opacity: 1 !important;
}

@media (min-width: 901px) and (max-width: 1220px) {
  .nav { gap: 12px !important; }
  .desktop-nav { flex: 1 1 auto; justify-content: center; gap: 14px !important; }
  .desktop-nav a { white-space: nowrap; font-size: 9px !important; letter-spacing: .08em !important; }
  .nav-end { gap: 6px !important; }
  .nav-end .icon-link { display: none !important; }
  .nav-end .button.small { min-height: 38px; padding-inline: 13px !important; font-size: 11px; white-space: nowrap; }
}

@media (max-width: 430px) {
  .mobile-nav,
  body.page-home .mobile-nav {
    left: 10px;
    right: 10px;
    top: 78px;
    border-radius: 20px;
  }
}
