/* ============================================================
   PRINT — Dr. Fábio D'Elboux Guimarães
   Versão em papel: fundo branco, texto escuro, ~3 páginas
   ============================================================ */

@page { margin: 1.4cm 1.7cm; }

/* Não vai para o papel: navegação, ações, mapa, formulário,
   chamada final redundante e peças puramente visuais */
.site-header,
.fab-whats,
.cookie-bar,
.skip-link,
.btn,
.nav-toggle,
.mapa,
.form-contato,
.hero-media,
.hero-scrim,
.onde-media,
.onde-scrim,
.shelf-scrim,
.book-capa,
.retrato-pendente,
.cta-final {
  display: none !important;
}

/* Papel branco, tinta escura, sem sombras nem fundos de bloco */
*,
*::before,
*::after {
  color: #262C30 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

html,
body { background: #fff !important; }

body {
  font-size: 9.5pt;
  line-height: 1.42;
}

/* Links sem cor de destaque: apenas sublinhado */
a {
  color: inherit !important;
  text-decoration: underline;
}

/* Blocos .reveal ficam com opacity 0 até o IntersectionObserver
   marcar .is-in na rolagem — no papel tudo sai visível */
.reveal,
.is-in {
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
}

/* Ritmo compacto para caber em ~3 páginas */
.section { padding-block: 0.7rem; }

.hero,
.onde-atendo {
  display: block;
  min-height: 0;
  padding-block: 0.7rem;
}

.hero-inner { min-height: 0; padding-block: 0; }

.hero-title { font-size: 17pt; }

.o-medico-titulo,
.temas-titulo,
.atendimento-titulo,
.depoimentos-titulo,
.duvidas-titulo,
.onde-titulo,
.contato-titulo {
  margin-bottom: 0.4rem;
  font-size: 13pt;
}

.etapa-titulo,
.bp-titulo { font-size: 11.5pt; }

.kicker { margin-bottom: 0.3rem; }

.temas-intro,
.atendimento-intro,
.depoimentos-intro,
.duvidas-intro,
.onde-intro { margin-bottom: 0.8rem; }

.container { max-width: none; padding-inline: 0; }

/* Estante vira uma lista simples de temas */
.shelf {
  display: block;
  padding: 0;
  perspective: none;
}

.shelf::after { content: none; }

.shelf-item {
  display: block;
  max-width: none;
  margin: 0;
}

.shelf-stage { display: block; }

.book-lombada { padding-top: 0.15rem; }

.book-panel { margin-top: 0.6rem; }

/* Grades viram colunas de jornal: cartões embalados sem corte */
.o-medico-grid,
.onde-lista,
.contato-grid,
.footer-grid {
  display: block;
  max-width: none;
}

.voz-lista,
.etapas,
.faq {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.4rem 0.9rem;
  align-items: start;
  max-width: none;
}

.depo-lista {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.4rem 0.9rem;
  align-items: start;
  max-width: none;
}

.onde-lista {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.7rem;
}

.etapa,
.depo-card,
.faq-item,
.onde-item,
.voz-item {
  margin: 0;
  padding: 0.6rem 0.8rem;
  border: 1px solid #C9C2B4 !important;
}

.voz-item,
.depo-destaque,
.onde-principal { border-left: 3px solid #8a8378 !important; }

.depo-texto { margin-bottom: 0.3rem; }

.depo-texto p,
.voz-item { font-size: 10.5pt; }

.faq-pergunta { padding: 0; }

.faq-pergunta::after { content: none !important; }

.faq-resposta { padding: 0.3rem 0 0; }

/* Respostas do FAQ sempre visíveis no papel */
.faq-item:not([open]) .faq-resposta { display: block; }

.faq { margin-bottom: 1rem; }

.onde-lista { margin-bottom: 0.6rem; }

.onde-nota { margin-bottom: 0.3rem; }

.site-footer {
  padding-block: 0.8rem;
  border-top: 1px solid #C9C2B4 !important;
}

.footer-links { padding-left: 0; }

/* Quebras de página: seções e cartões não são fatiados;
   a seção de dúvidas flui por ocupar quase uma página sozinha */
.section,
.site-footer,
.etapa,
.depo-card,
.faq-item,
.onde-item,
.book-panel,
.voz-item,
blockquote {
  break-inside: avoid;
  page-break-inside: avoid;
}

.duvidas,
.depoimentos { break-inside: auto; }
