/* ============================================================
   CV em PDF a partir da própria página.
   Cmd/Ctrl + P → "Salvar como PDF" → margens padrão,
   com "gráficos de fundo" DESLIGADO.
   Uma fonte só de conteúdo: o que muda no site muda no PDF.
   ============================================================ */

@page { size: A4; margin: 14mm 15mm; }

@media print {
  /* tudo visível: nenhuma revelação de scroll pendurada */
  .rev, html.js .rev { opacity: 1 !important; transform: none !important; animation: none !important; }
  .anim-l, .anim-r, .anim-u, .anim-p,
  html.js .anim-l, html.js .anim-r, html.js .anim-u, html.js .anim-p { animation: none !important; opacity: 1 !important; transform: none !important; }

  html, body { background: #fff !important; color: #1A1A1A !important; }
  .page { max-width: none !important; padding: 0 !important; }

  /* painéis viram folha branca */
  .panel, .field {
    background: #fff !important; color: #1A1A1A !important;
    border-radius: 0 !important; padding: 0 !important;
    margin: 0 0 7mm !important; box-shadow: none !important;
    break-inside: auto;
  }
  .panel .bd, .panel .bd-s, .field .bd, .stat span, .job p, .edu .what { color: #333 !important; }

  /* fora do papel: navegação, foto, assinatura, rodapé do site */
  .framerow nav, .hero .shot, .sig, .endnote, .rule-dia { display: none !important; }

  /* cabeçalho do documento */
  .framerow {
    padding: 0 0 3mm !important; border-bottom: 1.2pt solid #824142;
    margin-bottom: 6mm !important; color: #824142 !important;
  }
  .framerow .dia { background: #824142 !important; }
  .framerow .full { display: inline !important; }

  /* tipografia de papel */
  body { font-size: 9.6pt !important; line-height: 1.42 !important; }
  .disp { color: #824142 !important; }
  .d-xl { font-size: 23pt !important; }
  .d-lg { font-size: 15pt !important; }
  .d-md { font-size: 12.5pt !important; }
  .lab  { font-size: 7.4pt !important; color: #824142 !important; }
  .bd   { font-size: 9.6pt !important; line-height: 1.45 !important; }
  .bd-s { font-size: 9pt !important; line-height: 1.38 !important; }

  .hero { display: block !important; }
  .hero .line { margin: 2mm 0 !important; }
  .hero .line span { background: #824142 !important; }
  .role span { color: #444 !important; }

  /* números em linha */
  .stats { grid-template-columns: repeat(4, 1fr) !important; gap: 4mm !important;
    border-top: .6pt solid #C9B8B0 !important; padding-top: 3mm !important; margin-top: 3mm !important; }
  .stat b { font-size: 13pt !important; color: #824142 !important; }
  .stat span { font-size: 7.6pt !important; line-height: 1.3 !important; }

  /* experiência: nada de cargo partido entre páginas */
  .job { break-inside: avoid; page-break-inside: avoid;
    grid-template-columns: 26mm 1fr !important; gap: 0 6mm !important;
    padding: 3mm 0 !important; border-top: .6pt solid #D8CCC6 !important; }
  .job h3 { font-size: 11pt !important; color: #1A1A1A !important; }
  .job .who { font-size: 8.6pt !important; color: #824142 !important; margin-bottom: 1mm !important; }
  .job .yr { font-size: 8pt !important; color: #824142 !important; }

  /* duas colunas continuam duas colunas no papel */
  .two { grid-template-columns: 1fr 1fr !important; gap: 6mm !important; }
  .about { grid-template-columns: 1fr 1fr !important; gap: 6mm !important; }

  .pill { border-color: #B9A69E !important; color: #333 !important;
    font-size: 7.6pt !important; padding: .18em .6em !important; }
  .pill.solid { background: #824142 !important; color: #fff !important; }

  .edu li { padding: 1.6mm 0 !important; border-top: .5pt solid #E0D6D0 !important; break-inside: avoid; }
  .edu .inst { font-size: 8.8pt !important; }
  .edu .what { font-size: 8pt !important; }
  .edu .yr { font-size: 7.6pt !important; }

  .langs { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 0 6mm !important; }
  .lang { border-top: .5pt solid #E0D6D0 !important; padding: 1.4mm 0 !important; }
  .lang b { font-size: 8.8pt !important; min-width: 22mm !important; color: #1A1A1A !important; }
  .lang span { font-size: 8.2pt !important; color: #444 !important; opacity: 1 !important; }

  /* contato no fim, em uma linha */
  .connect { padding: 4mm 0 0 !important; break-inside: avoid; }
  .connect .inner { grid-template-columns: 1fr !important; margin: 0 !important; gap: 2mm !important; }
  .connect .disp { text-align: left !important; font-size: 12.5pt !important; }
  .connect .lines { border: 0 !important; padding: 0 !important;
    flex-direction: row !important; flex-wrap: wrap; gap: 0 6mm !important; }
  .connect .lines a { font-size: 8.8pt !important; color: #824142 !important; }

  h1, h2, h3, .disp { break-after: avoid; page-break-after: avoid; }
  a { text-decoration: none !important; }
}
