/*
 * print.css — Print stylesheet for C7 LaunchPad
 * ---------------------------------------------------------------------------
 * Loaded with media="print" (enqueued elsewhere), so these rules apply ONLY
 * when printing or generating a PDF. The @media print wrapper is kept for
 * clarity and as a safety net if this file is ever concatenated/loaded
 * without the media attribute.
 *
 * Goal: a clean, readable rendering of article/page content — site chrome
 * (header, nav, footer, sliders, social, CTAs, search, comments, admin bar)
 * is hidden; the content area is reset to full-width black-on-white text.
 *
 * Selectors below were verified against the theme markup:
 *   header.php  (#masthead, .site-header, .header-nav, .header-cta-btn,
 *                .mobile-menu-overlay, .header-mobile-bar, .hamburger-btn,
 *                .social-links, .search-form-wrp, .skip-link)
 *   footer.php  (#colophon, .site-footer, .back-to-top)
 *   single.php  (#content, .site-content, #main, .container, .c7lp-post-*,
 *                .c7lp-related-posts, .c7lp-author-box, .c7lp-comments-area)
 *   index.php   (#main, .home-page)
 *   theme-helpers.php / searchform.php / comments.php
 *                (.c7lp-breadcrumbs, .c7lp-searchform, .comments-area)
 *   css/components.css (.back-to-top, .slick-arrow/.slick-dots/.slick-prev/
 *                .slick-next, .slider-wrp)
 * @package c7-launchpad
 */

@media print {

  /* ─────────────────────────────────────────────────────────────────────
     1. Hide non-content chrome
     ──────────────────────────────────────────────────────────────────── */

  /* Site header / navigation (all header layout presets) */
  #masthead,
  .site-header,
  .header-mobile-bar,
  .header-topbar-row,
  .header-nav,
  .main-navigation,
  .header-cta-btn,
  .hamburger-btn,
  .header-utility,
  .header-utility-row,

  /* Mobile menu + search */
  .mobile-menu-overlay,
  .mobile-menu-backdrop,
  .mobile-search-bar,
  .mobile-search-toggle,
  .mobile-cta-btn,
  .mobile-phone-link,

  /* Skip link */
  .skip-link,

  /* Footer + back-to-top */
  #colophon,
  .site-footer,
  .back-to-top,

  /* Social bars */
  .social-links,

  /* Breadcrumbs */
  .c7lp-breadcrumbs,

  /* Search forms */
  .search-form-wrp,
  .c7lp-search-form,
  .c7lp-searchform,
  form[role="search"],

  /* Comments + comment form */
  #comments,
  .comments-area,
  .c7lp-comments-area,
  #respond,
  .comment-respond,
  .comment-reply-link,
  .form-submit,

  /* Slider / carousel controls */
  .slick-arrow,
  .slick-prev,
  .slick-next,
  .slick-dots,
  .slider-arrow,

  /* Buttons / CTAs */
  .btn,
  .btns-wrp,
  .cta-buttons,
  .banner-btn-group,
  .button-link,
  .page-links,

  /* Post navigation (prev/next) and related posts grid */
  .post-navigation,
  .c7lp-post-nav,
  .c7lp-related-posts,

  /* WP admin bar */
  #wpadminbar {
    display: none !important;
  }

  /* Belt-and-suspenders: kill any sticky/fixed positioning so nothing
     floats over the printed content or reserves space. */
  * {
    position: static !important;
  }

  /* Drop the body padding the sticky header reserves on screen. */
  body,
  body.menu-sticky-header,
  body.admin-bar {
    padding-top: 0 !important;
    margin: 0 !important;
  }

  /* ─────────────────────────────────────────────────────────────────────
     2. Page + content reset
     ──────────────────────────────────────────────────────────────────── */

  html,
  body {
    background: #fff !important;
    color: #000 !important;
    font-family: Georgia, "Times New Roman", Cambria, "Liberation Serif", serif !important;
    font-size: 12pt !important;
    line-height: 1.5 !important;
    width: auto !important;
  }

  /* Full-width content area — remove screen-only containers / grid widths */
  #page,
  #content,
  .site-content,
  #main,
  .site-main,
  .home-page,
  .container,
  article,
  .c7lp-single-post,
  .c7lp-post-content,
  .c7lp-post-header,
  .entry-content {
    width: auto !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    float: none !important;
  }

  /* Strip backgrounds, shadows and decorative colour from everything so
     ink isn't wasted and text stays legible. */
  *,
  *::before,
  *::after {
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
    text-shadow: none !important;
    color: #000 !important;
  }

  /* ─────────────────────────────────────────────────────────────────────
     3. Typography + headings
     ──────────────────────────────────────────────────────────────────── */

  h1, h2, h3, h4, h5, h6 {
    color: #000 !important;
    font-family: Georgia, "Times New Roman", Cambria, serif !important;
    page-break-after: avoid;
    break-after: avoid;
  }

  h1 { font-size: 22pt !important; }
  h2 { font-size: 18pt !important; }
  h3 { font-size: 15pt !important; }
  h4, h5, h6 { font-size: 13pt !important; }

  p, blockquote, li, td, th {
    orphans: 3;
    widows: 3;
  }

  blockquote {
    border-left: 3px solid #999 !important;
    padding-left: 12pt !important;
    font-style: italic;
  }

  /* ─────────────────────────────────────────────────────────────────────
     4. Images + figures
     ──────────────────────────────────────────────────────────────────── */

  img {
    max-width: 100% !important;
    height: auto !important;
    page-break-inside: avoid;
    break-inside: avoid;
  }

  figure,
  .c7lp-post-featured,
  .wp-block-image {
    page-break-inside: avoid;
    break-inside: avoid;
  }

  /* ─────────────────────────────────────────────────────────────────────
     5. Links — show URLs for content links
     ──────────────────────────────────────────────────────────────────── */

  a {
    color: #000 !important;
    text-decoration: underline;
  }

  /* Print the destination after content links so printed copies are useful. */
  .entry-content a[href]::after,
  .c7lp-post-content a[href]::after {
    content: " (" attr(href) ")";
    font-size: 90%;
    word-wrap: break-word;
  }

  /* …but not for in-page anchors or javascript: pseudo-links. */
  .entry-content a[href^="#"]::after,
  .entry-content a[href^="javascript:"]::after,
  .c7lp-post-content a[href^="#"]::after,
  .c7lp-post-content a[href^="javascript:"]::after {
    content: "";
  }

  /* ─────────────────────────────────────────────────────────────────────
     6. Misc cleanup
     ──────────────────────────────────────────────────────────────────── */

  /* Hero/slider blocks tend to be tall decorative banners — collapse the
     reserved min-heights so they don't waste a whole printed page. */
  .slider-wrp,
  .common-hero-bar .slider-wrp .each {
    min-height: 0 !important;
  }

  /* Ensure printed pages use a sensible margin. */
  @page {
    margin: 1.6cm;
  }

}
