/* ============================================================
   CIRRUS LAKE SOLUTIONS — Print stylesheet
   Procurement officers occasionally print the contracting page,
   case studies, or capability statement landing for review packets.
   This sheet:
   - Hides interactive chrome (header nav, mobile menu, scroll-top,
     cookie banner, CTAs, contact forms, JS-driven decoration)
   - Forces black-on-white, drops shadows and gradients
   - Expands all link URLs after the link text so the printout
     has the full URL for reviewers
   - Avoids breaking inside cards / sections
   Pulling this into the site.css bundle would make every page carry
   it in the render-blocking cascade — instead, link this file with
   media="print" on each page so it is only fetched when printing.
   ============================================================ */

@media print {
  /* Reset to print-safe defaults */
  *, *::before, *::after {
    background: transparent !important;
    color: black !important;
    box-shadow: none !important;
    text-shadow: none !important;
    filter: none !important;
  }
  body {
    font-size: 11pt;
    line-height: 1.5;
    color: black;
  }

  /* Hide chrome that doesn't belong in a printout */
  .skip-link,
  .site-header,
  .mobile-menu,
  .nav-toggle,
  .scroll-top,
  .cookie-banner,
  .cls-toast,
  .hero-scroll,
  .hero-bg,
  .hero-dots,
  .hero-ring,
  .cap-download-card::before,
  .cs-card-header::before,
  .core-comp-section::before,
  .values-section::before,
  .page-header::before,
  .cta-banner-bg,
  .diff-section-bg {
    display: none !important;
  }

  /* CTA banners and the contact form aren't useful on paper */
  .cta-banner,
  .contact-page-section,
  .contact-home,
  .footer-cap-link {
    display: none !important;
  }

  /* Campaign landing pages (/campaigns/) use the lp-* system rather than
     the main-site classes above, so they need their own equivalents:
       .lp-header       — sticky nav strip (mirrors .site-header)
       .lp-hero-decor   — positioned decoration wrapper
       .lp-hero-scroll  — "keep scrolling" cue (mirrors .hero-scroll)
       .lp-hero-form    — lead-capture form; prints as blank input boxes
       .landing-proof-cta — in-page anchor to the now-hidden form
     The .landing-explore CTA is intentionally kept: it links to an external
     resource, and the a[href^="http"] rule below prints its URL. */
  .lp-header,
  .lp-hero-decor,
  .lp-hero-scroll,
  .lp-hero-form,
  .landing-proof-cta {
    display: none !important;
  }

  /* Make headings break naturally and stay with their content */
  h1, h2, h3, h4 {
    page-break-after: avoid;
    break-after: avoid;
  }
  p, li {
    orphans: 3;
    widows: 3;
  }

  /* Cards shouldn't break in the middle */
  .data-card,
  .naics-card,
  .pp-card,
  .core-comp-item,
  .value-card,
  .cs-card,
  .csd-block,
  .csd-meta,
  .csd-stack-item,
  .leader-card,
  .model-card,
  .industry-challenge-card {
    page-break-inside: avoid;
    break-inside: avoid;
    border: 1px solid #888 !important;
    background: white !important;
  }

  /* Diagram figures — keep with their caption, allow them to scale */
  .csd-diagram-figure {
    page-break-inside: avoid;
    break-inside: avoid;
    border: 1px solid #888 !important;
  }
  .csd-diagram-svg {
    max-width: 100%;
    height: auto;
  }

  /* Page header on interior pages — collapse the dark gradient */
  .page-header {
    padding: 24pt 0 12pt;
    background: white !important;
  }
  .page-header h1 { font-size: 22pt; }
  .page-header p { font-size: 12pt; }

  /* Section padding is too large for print */
  .section-pad,
  .section-pad-lg,
  .csd-section,
  .svc-detail-section,
  .cluster-section,
  .models-section,
  .core-comp-section,
  .past-performance-section,
  .contracting-grid-section,
  .contracting-contact-section,
  .standards-section,
  .case-studies-page,
  .naics-section,
  .about-story-section,
  .values-section,
  .leadership-section {
    padding: 16pt 0 !important;
  }

  /* Expand link URLs after the visible text — useful for print
     reviewers. Skip in-page anchors and obfuscated email links. */
  a[href^="http"]::after {
    content: " (" attr(href) ")";
    font-size: 0.85em;
    word-break: break-all;
    color: #555 !important;
  }

  /* Footer: keep but compress */
  .site-footer {
    padding: 18pt 0 8pt !important;
    border-top: 1px solid #888 !important;
    color: black !important;
    font-size: 9pt;
  }
  .footer-grid {
    grid-template-columns: 1fr 1fr 1fr !important;
    gap: 16pt !important;
    padding-bottom: 12pt !important;
    border-bottom: 1px solid #ccc !important;
  }
  .footer-logo-img {
    filter: none !important;
  }
  .footer-id span,
  .footer-col-link {
    color: black !important;
  }
}
