/* ============================================================
   APECXTV GLOBAL — PRINT STYLESHEET
   Professional print output for all pages
   ============================================================ */

@media print {
  /* ── Reset for print ── */
  *, *::before, *::after {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }

  /* ── Hide navigation and interactive elements ── */
  .site-nav,
  .nav-mobile,
  .back-to-top,
  .cta-band,
  .hero-scroll,
  .filter-btn,
  .map-controls-bar,
  .map-legend,
  .filter-panel,
  .project-panel,
  .toast,
  .skip-link,
  form button[type="submit"],
  .btn-primary,
  .btn-secondary,
  .btn-gold,
  .hero-cta {
    display: none !important;
  }

  /* ── Page setup ── */
  @page {
    margin: 20mm 15mm;
    size: A4;
  }

  body {
    font-family: 'Inter', Arial, sans-serif;
    font-size: 10pt;
    line-height: 1.5;
    color: #000;
  }

  /* ── Hero for print ── */
  .hero, .page-hero {
    background: #042B6B !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
    padding: 20mm 0 15mm;
    page-break-after: avoid;
  }

  .hero h1, .page-hero h1 {
    color: white !important;
    font-size: 22pt;
  }

  .page-hero .intro {
    color: rgba(255,255,255,0.85) !important;
    font-size: 11pt;
  }

  /* ── Typography ── */
  h1 { font-size: 20pt; page-break-after: avoid; }
  h2 { font-size: 16pt; page-break-after: avoid; }
  h3 { font-size: 13pt; page-break-after: avoid; }
  h4 { font-size: 11pt; page-break-after: avoid; }

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

  /* ── Links ── */
  a[href]::after {
    content: " (" attr(href) ")";
    font-size: 8pt;
    color: #666;
  }
  a[href^="#"]::after,
  a[href^="javascript:"]::after,
  .btn::after,
  .nav-link::after {
    content: "" !important;
  }

  /* ── Container ── */
  .container { max-width: 100%; padding: 0; }

  /* ── Cards ── */
  .card, .capability-card, .resource-card, .industry-card {
    border: 1pt solid #ddd;
    page-break-inside: avoid;
    break-inside: avoid;
  }

  /* ── Grid ── */
  .grid-3, .grid-4 { grid-template-columns: repeat(2, 1fr); }
  .grid-2 { grid-template-columns: repeat(2, 1fr); }
  .stats-grid { grid-template-columns: repeat(4, 1fr); }

  /* ── Footer ── */
  .site-footer {
    background: #042B6B !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
    padding: 10mm 0;
    margin-top: 10mm;
    border-top: 2pt solid #D4A017;
  }

  .footer-logo-name, .footer-copyright, .footer-link {
    color: white !important;
  }

  .footer-grid {
    grid-template-columns: 2fr 1fr 1fr;
  }

  /* ── Project table ── */
  .downloads-table {
    font-size: 9pt;
    width: 100%;
  }

  .downloads-table th {
    background: #042B6B !important;
    color: white !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .downloads-table tr { page-break-inside: avoid; }

  /* ── Map section ── */
  .map-interface, #project-map-section .map-container-wrap {
    display: none !important;
  }

  /* ── Stats bar ── */
  .stats-bar {
    background: #042B6B !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .stat-number, .stat-label { color: white !important; }

  /* ── Reveal animations ── */
  .reveal { opacity: 1 !important; transform: none !important; }

  /* ── Print-specific header ── */
  .print-header {
    display: block !important;
    text-align: right;
    font-size: 8pt;
    color: #666;
    margin-bottom: 5mm;
    padding-bottom: 3mm;
    border-bottom: 0.5pt solid #ddd;
  }

  /* ── Page breaks ── */
  .section { page-break-inside: avoid; }
  .section--dark, .section--alt { page-break-inside: avoid; }

  /* ── Gold divider ── */
  .gold-divider {
    background: #D4A017 !important;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
    height: 2pt;
    width: 40pt;
    margin-bottom: 8pt;
  }

  /* ── Eyebrow ── */
  .eyebrow { color: #D4A017 !important; }
}
