/* ──────────────────────────────────────────────────────────────────────────
   Impression / export PDF des pages « Programme de formation ».

   Ces documents partent à l'Afdas et aux stagiaires : on retire tout ce qui
   n'a de sens qu'à l'écran (barre latérale, pied de site, bouton de retour,
   encart Trustpilot) et on remplace le logo produit « indy's » par l'en-tête
   de l'organisme de formation.

   ⚠️ La largeur d'impression d'une A4 (~745 px) passe SOUS le point de rupture
   mobile de 768 px des pages programme. Sans les règles ci-dessous, le PDF
   sortirait dans la version empilée du téléphone : une colonne, illisible sur
   une feuille. On rétablit donc explicitement la présentation large.

   Partagé par programme-promotion-musicale.html et programme-promotion-sortie.html,
   et utilisé par services/programmePdfService.js pour la génération serveur.
────────────────────────────────────────────────────────────────────────── */

/* En-tête de document : masqué à l'écran, révélé à l'impression. */
.logo-print { display: none; }

@media print {
  #site-sidebar,
  #site-footer,
  .back-link,
  .trustpilot-box,
  .resultats-methodo { display: none !important; }

  .logo { display: none; }
  .logo-print { display: block; width: 205px; height: auto; margin-bottom: 14px; }

  html, body {
    background: #fff !important;
    font-size: 15px;
  }

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

  .content-card {
    box-shadow: none;
    border: 1px solid #e5e5e5;
    padding: 24px;
    margin-bottom: 16px;
    break-inside: avoid;
  }

  /* Annulation du point de rupture mobile, cf. avertissement en tête. */
  .page-header { flex-direction: row; text-align: left; }
  .header-content { text-align: left; }
  .header-illustration { max-width: 220px; width: 220px; height: 250px; }
  .key-info-grid { grid-template-columns: repeat(4, 1fr); }
  .indicators-grid { grid-template-columns: repeat(3, 1fr); }

  .module, .info-box, .accessibility-box, .price-highlight { break-inside: avoid; }
  h2, h3 { break-after: avoid; }

  /* Les aplats jaunes portent l'information (jalons, durées, tarif) : sans
     cette règle, Chrome les imprime en blanc. */
  * { -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}

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