/* ============================================
   PRINT STYLES — Privital
   Imprime solo el contenido relevante
   ============================================ */

@media print {
  /* Reset body */
  html, body {
    background: #ffffff !important;
    color: #000000 !important;
    font-size: 11pt !important;
    line-height: 1.5 !important;
  }

  /* Ocultar elementos interactivos y de navegaci&oacute;n */
  .topbar,
  .navbar,
  .footer,
  #whatsapp-float,
  .whatsapp-button,
  .whatsapp-float,
  .btn,
  .navbar__mobile,
  .navbar__hamburger,
  .directorio-search,
  .directorio-filters,
  .directorio-pagination,
  .directorio-modal,
  .directorio-toast,
  .skip-link,
  .hero__form,
  .cotizador-card,
  form,
  [data-aos],
  .aos-animate,
  video,
  iframe {
    display: none !important;
  }

  /* Restaurar visibilidad de contenido */
  main, main * {
    visibility: visible;
  }

  /* Hero interno simplificado */
  .page-hero {
    padding: 1cm 0 !important;
    background: #ffffff !important;
    border-bottom: 1pt solid #cccccc !important;
  }

  .page-hero__bg,
  .page-hero__symbol,
  .hero__bg,
  .hero__symbol {
    display: none !important;
  }

  .page-hero__title,
  .hero__title {
    color: #000000 !important;
    font-size: 20pt !important;
    background: none !important;
    -webkit-text-fill-color: #000000 !important;
  }

  .breadcrumb {
    display: none !important;
  }

  /* Tipograf&iacute;a */
  h1, h2, h3, h4, h5, h6 {
    color: #000000 !important;
    page-break-after: avoid;
    break-after: avoid;
  }

  h1 { font-size: 20pt !important; }
  h2 { font-size: 16pt !important; }
  h3 { font-size: 13pt !important; }

  p, li {
    orphans: 3;
    widows: 3;
  }

  /* Links: mostrar URL destino */
  a[href^="http"]::after,
  a[href^="mailto:"]::after,
  a[href^="tel:"]::after {
    content: " (" attr(href) ")";
    font-size: 9pt;
    color: #555555;
    word-break: break-all;
  }

  /* No mostrar URLs para links internos repetitivos */
  a[href^="#"]::after,
  a[href^="/"]::after {
    content: "";
  }

  /* Im&aacute;genes */
  img {
    max-width: 100% !important;
    page-break-inside: avoid;
    break-inside: avoid;
  }

  /* Tablas */
  table, figure {
    page-break-inside: avoid;
    break-inside: avoid;
  }

  /* Secciones: evitar cortes incómodos */
  section {
    page-break-inside: auto;
    background: #ffffff !important;
  }

  /* Quitar gradientes/colores de fondo */
  .text-gradient,
  .error-page__code {
    background: none !important;
    -webkit-background-clip: initial !important;
    -webkit-text-fill-color: #000000 !important;
    color: #000000 !important;
  }

  /* Pie legal en cada p&aacute;gina impresa */
  @page {
    margin: 1.5cm 1.2cm;
  }
}
