/* ============================================================
   Dr. Jonas Watanabe — Folha de estilos principal
   ============================================================ */

/* Base */
html { scroll-behavior: smooth; scroll-padding-top: 96px; }
body { -webkit-font-smoothing: antialiased; }

/* Reveal on scroll */
.reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity .8s cubic-bezier(.16,.84,.44,1),
              transform .8s cubic-bezier(.16,.84,.44,1);
}
.reveal.is-visible { opacity: 1; transform: none; }

/* Seleção de texto */
::selection { background: #C6A87C; color: #0A1C2E; }

/* ── Navbar ── */
.nav-link { position: relative; }
.nav-link::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -6px;
  height: 1px;
  width: 0;
  background: #C6A87C;
  transition: width .35s ease;
}
.nav-link:hover::after,
.nav-link.active::after { width: 100%; }
.nav-link.active { color: #C6A87C; }

/*
  Mobile: fundo escuro sólido no navbar em qualquer seção —
  garante leitura do logo e do hambúrguer sobre fundo claro ou escuro.
  Quando rolado (.nav-scrolled), o JS adiciona bg-white/95 e
  a regra abaixo deixa de se aplicar, passando o controle ao Tailwind.
*/
@media (max-width: 1023px) {
  #navbar:not(.nav-scrolled) {
    background: rgba(10, 28, 46, 0.94);
  }
}

/* ── FAQ accordion ── */
.faq-panel { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .35s ease; }
.faq-item.open .faq-panel { grid-template-rows: 1fr; }
.faq-panel > div { overflow: hidden; }

/* ── Hairline decorativa ── */
.hairline {
  background: linear-gradient(
    90deg,
    transparent,
    rgba(198, 168, 124, .55),
    transparent
  );
}

/* ── Acessibilidade: movimento reduzido ── */
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .reveal { opacity: 1; transform: none; transition: none; }
}
