/* =====================================================================
   print.css — Dra. Nathália Monteiro. Folha de impressão:
   sem menus/botões/animações, texto preto em fundo branco, telefone e
   endereço visíveis, nada de conteúdo cortado.
   ===================================================================== */

/* ---------- base: preto sobre branco ---------- */
*, *::before, *::after {
  color: #000 !important;
  background: #fff !important;
  box-shadow: none !important;
  text-shadow: none !important;
  animation: none !important;
  transition: none !important;
}
html { background: #fff !important; }
body { font-size: 11pt; line-height: 1.5; }
img, svg { max-width: 100%; }

/* ---------- o que sai da impressão ---------- */
.main-nav, .mobile-menu, .nav-toggle, .header-cta,
.hero-actions, .scroll-hint, .marquee,
.grain, .ghost-mark, .glow, .hero-symbol,
.btn, button, .testi-controls,
.loc-actions, #mapa, .map-wrap,
.contact-form, .check, .lgpd, .form-note,
.wa-float, .to-top, .cv-modal, dialog,
.caderno-host, .skip,
.book-panel, .cover-badge, .section-num, .divisor {
  display: none !important;
}

/* ---------- animações de entrada: tudo visível no papel ---------- */
.reveal, .reveal.d1, .reveal.d2, .reveal.d3, .reveal.d4,
[data-parallax], .testi-track, .testi-slide, .marquee-track,
.hero-symbol, .front-cover, .book, .page-fan i {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}

/* ---------- estrutura: seções viram blocos simples ---------- */
.site-header { height: auto !important; padding: 0 0 10pt !important; }
.section, .hero, .section--cta {
  min-height: 0 !important;
  height: auto !important;
  display: block !important;
  padding: 14pt 0 !important;
}
.container { max-width: none !important; width: 100% !important; padding: 0 !important; }
.about-grid, .where-grid, .contact-grid, .faq-grid, .hero-grid {
  display: block !important;
}
.hero-figure, .about-side, .side-portrait, .portrait-frame,
.hero-copy, .about-copy, .section-head { max-width: none !important; }
.portrait-caption, .signature, .stats { display: block !important; }

/* ---------- tipografia legível ---------- */
h1, h2, h3, h4, .display { page-break-after: avoid; font-weight: bold; }
p, li { orphans: 3; widows: 3; }
.lead { font-size: 12pt; }

/* ---------- componentes viram listas/cartões simples ---------- */
.book-card {
  display: block !important;
  border: 1pt solid #000 !important;
  border-radius: 6pt;
  padding: 10pt 12pt;
  margin: 0 0 8pt;
  page-break-inside: avoid;
}
.front-cover, .book, .book-shadow, .book-back, .page-block, .page-fan {
  display: block !important;
  position: static !important;
  transform: none !important;
}
.page-block, .page-fan, .book-shadow, .book-back { display: none !important; }
.cover-kicker, .cover-title, .cover-sub, .cover-foot {
  display: block !important;
  position: static !important;
  transform: none !important;
}
.cover-title { font-size: 13pt; font-weight: bold; }
.shelf, .shelf-stage, .shelf-row { display: block !important; height: auto !important; }

.myth, .skin-card, .ccard, .testi-slide, .values li, .faq details {
  display: block !important;
  border: 1pt solid #000 !important;
  border-radius: 6pt;
  padding: 8pt 10pt;
  margin: 0 0 8pt;
  page-break-inside: avoid;
}
.myths-grid, .skin-steps, .contact-cards { display: block !important; }
.testi-track, .testi-viewport, .testi { transform: none !important; display: block !important; }
.testi-slide { position: static !important; width: auto !important; opacity: 1 !important; }
.testi-slide figcaption span::after { content: ""; }

/* ---------- details abertos na impressão (main.js abre em beforeprint;
   a regra abaixo é a garantia para o que já estiver aberto) ---------- */
details { border: 0 !important; padding: 4pt 0 !important; }
summary { font-weight: bold; list-style: none; }
summary::after, summary::before { display: none !important; }
.faq-body { display: block !important; }

/* ---------- retratos: tamanho contido no papel ---------- */
.portrait-frame, .side-portrait, .signature {
  position: static !important;
  aspect-ratio: auto !important;
  overflow: visible !important;
  transform: none !important;
}
.portrait-frame img, .side-portrait img {
  position: static !important;
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-height: 240pt !important;
  max-width: 100% !important;
  margin: 0 auto !important;
  object-fit: contain !important;
}
.signature img { max-height: 90pt !important; width: auto !important; }

/* ---------- contato sempre visível ---------- */
.locations, .loc-tab { display: block !important; border: 0 !important; padding: 0 !important; }
.loc-tab address { font-style: normal; }
.side-note, .tnum { font-weight: normal; }
.site-footer { display: block !important; padding: 12pt 0 !important; border-top: 1pt solid #000; }
.footer-grid { display: block !important; }
.footer-col, .footer-brand { margin-bottom: 10pt; page-break-inside: avoid; }
.footer-base { display: block !important; }

/* ---------- quebra de página ---------- */
section, footer, blockquote, figure { page-break-inside: auto; }
h2, h3, tr, .myth, .skin-card, .ccard { page-break-inside: avoid; }
a { text-decoration: underline; }
