/* ==========================================================================
   Print stylesheet — used when a project page is printed / saved as PDF.
   Goal: a single condensed page per project — no site chrome, no gallery,
   just Purpose / Process / Results with the strongest supporting photos.
   ========================================================================== */

@media print {

  @page {
    size: letter;
    margin: 9mm 10mm;
  }

  * { -webkit-print-color-adjust: exact !important; print-color-adjust: exact !important; }

  html, body { background: #fff !important; }

  /* Hide chrome + gallery entirely for a condensed single-page export */
  .site-nav, .site-footer, .proj-nextprev, .proj-actions,
  .nav-toggle, .proj-gallery, .no-print { display: none !important; }

  a { color: inherit !important; text-decoration: none !important; }
  a[href]::after { content: none !important; }

  .wrap { max-width: 100% !important; padding-left: 2mm !important; padding-right: 2mm !important; }

  /* Hero */
  .proj-hero { border-bottom: none !important; padding-top: 0 !important; }
  .proj-hero .backlink { display: none !important; }
  .proj-hero-top { padding-bottom: 6px !important; align-items: flex-start !important; }
  .proj-hero h1 { font-size: 23px !important; }
  .proj-hero .org { font-size: 9.5px !important; margin-bottom: 5px !important; }
  .proj-tags { margin-top: 7px !important; gap: 5px !important; }
  .tag { border-color: #999 !important; font-size: 7.5px !important; padding: 2px 7px !important; }

  .proj-hero-img { aspect-ratio: auto !important; height: 30mm !important; page-break-inside: avoid; margin-top: 6px; }
  .proj-hero-img img { width: 100% !important; height: 100% !important; object-fit: cover !important; }

  /* Body sections */
  .proj-body { padding: 3px 0 !important; }
  .proj-block {
    grid-template-columns: 92px 1fr !important;
    gap: 12px !important;
    padding: 7px 0 !important;
    page-break-inside: avoid;
  }
  .proj-block .label { font-size: 8px !important; gap: 6px !important; }
  .proj-block .content p,
  .proj-block .content li { font-size: 9.7px !important; line-height: 1.32 !important; margin-bottom: 3px !important; }
  .proj-block .content ul { padding-left: 14px !important; }
  .proj-block .content p:last-child { margin-top: 4px !important; }

  .proj-figrow { gap: 5px !important; margin-top: 6px !important; page-break-inside: avoid; }
  figure.fig img { aspect-ratio: 16/10 !important; }
  figure.fig figcaption { font-size: 6.8px !important; margin-top: 2px !important; line-height: 1.25 !important; }

  .results-callouts { page-break-inside: avoid; margin-bottom: 5px !important; }
  .callout { padding: 6px 8px !important; }
  .callout .num { font-size: 14px !important; }
  .callout .desc { font-size: 6.5px !important; margin-top: 2px !important; }

  /* Print-only footer identity strip, since nav/footer are hidden */
  .only-print {
    display: flex !important;
    justify-content: space-between;
    font-family: 'IBM Plex Mono', monospace;
    font-size: 7.5px;
    color: #555;
    border-top: 1px solid #ccc;
    margin-top: 8px;
    padding-top: 5px;
  }

  h1, h2, h3, h4 { break-after: avoid; }
  img { break-inside: avoid; }
}
