/* ============================================================
   print.css — Print-only styles for stpatrickdesign.com
   Linked with media="print" so it only fires when the user
   prints or saves as PDF. Produces a clean single-column résumé.
   ============================================================ */

@page {
  size: Letter;
  margin: 0.55in 0.65in;
}

@media print {

  /* ---------- 1. Force a light, neutral palette ---------- */

  *, *::before, *::after {
    background: transparent !important;
    background-image: none !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    border-color: #000 !important;
    animation: none !important;
    transition: none !important;
  }

  html, body {
    margin: 0;
    padding: 0;
    background: #fff !important;
    color: #000;
    font-family: "Iowan Old Style", "Palatino Linotype", Georgia, "Times New Roman", serif;
    font-size: 10.5pt;
    line-height: 1.42;
    -webkit-print-color-adjust: economy;
    print-color-adjust: economy;
  }

  /* Kill the screen-only fixed grid overlay */
  body::before { display: none !important; }

  /* ---------- 2. Hide everything that's not résumé content ---------- */

  nav.top,
  .marquee,
  header.hero,
  footer,
  .placeholder-note,
  .pull,
  .contact-blurb,
  .eyebrow,
  [data-no-print],
  #print-resume {
    display: none !important;
  }

  /* Hide the contact section's marketing heading */
  #contact h2 { display: none !important; }

  /* ---------- 3. Container reset ---------- */

  .wrap {
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
  }

  section {
    padding: 0 !important;
    margin: 0 0 12pt !important;
    border: 0 !important;
  }

  /* ---------- 4. Print header (replaces the screen hero) ---------- */

  #print-header {
    display: block !important;
    margin: 0 0 14pt;
    padding: 0 0 8pt;
    border-bottom: 2pt solid #000;
    page-break-after: avoid;
  }
  #print-header h1 {
    font-size: 24pt;
    font-weight: 700;
    line-height: 1.05;
    letter-spacing: -0.01em;
    margin: 0 0 2pt;
  }
  #print-header .tagline {
    font-size: 11.5pt;
    font-style: italic;
    color: #444 !important;
    margin: 0;
  }

  /* ---------- 5. Section headings ---------- */

  section h2 {
    font-size: 12pt !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    border-bottom: 0.5pt solid #000;
    padding-bottom: 2pt;
    margin: 0 0 6pt !important;
    max-width: 100% !important;
    line-height: 1.2;
    page-break-after: avoid;
  }
  section h2 .accent { color: #000 !important; }

  /* ---------- 6. About: linearize ---------- */

  #about .about {
    display: block !important;
  }
  #about .about > div {
    margin: 0;
  }
  #about p {
    margin: 0 0 5pt !important;
    font-size: 10.5pt !important;
    max-width: 100% !important;
  }

  /* ---------- 7. Work / experience ---------- */

  .work-list {
    display: block !important;
  }
  .job {
    display: grid !important;
    grid-template-columns: 1.15in 1fr auto;
    column-gap: 14pt;
    align-items: baseline;
    padding: 5pt 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-bottom: 0.5pt dotted #aaa !important;
    background: transparent !important;
    page-break-inside: avoid;
  }
  .job:last-of-type {
    border-bottom: 0 !important;
  }
  .job .yr {
    font-family: inherit !important;
    font-size: 10pt !important;
    font-weight: 700 !important;
    color: #000 !important;
  }
  .job .ttl {
    font-size: 11pt !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    letter-spacing: 0 !important;
  }
  .job .ttl span {
    display: block !important;
    font-weight: 400 !important;
    font-style: italic !important;
    font-size: 10pt !important;
    color: #333 !important;
    margin-top: 1pt !important;
  }
  .job .place {
    text-align: right !important;
    font-family: inherit !important;
    font-size: 10pt !important;
    font-style: italic !important;
    font-weight: 400 !important;
    color: #000 !important;
  }

  /* ---------- 8. Capabilities ---------- */

  #capabilities .cap-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr 1fr !important;
    gap: 14pt !important;
    page-break-inside: avoid;
  }
  .cap {
    border: 0 !important;
    padding: 0 !important;
    background: transparent !important;
  }
  .cap h3 {
    font-family: inherit !important;
    font-size: 10pt !important;
    font-weight: 700 !important;
    color: #000 !important;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    border-bottom: 0.5pt solid #000;
    padding-bottom: 1pt;
    margin: 0 0 4pt;
  }
  .cap ul {
    list-style: disc;
    margin: 0 0 0 13pt;
    padding: 0;
  }
  .cap li {
    border: 0 !important;
    padding: 0 !important;
    margin: 0 0 1pt;
    font-size: 10pt !important;
    line-height: 1.3;
  }

  /* ---------- 9. Contact (footer of résumé) ---------- */

  #contact .contact {
    display: block !important;
    border: 0.5pt solid #000 !important;
    padding: 8pt 12pt !important;
    margin: 0 !important;
    background: transparent !important;
  }
  #contact .lines {
    display: block;
  }
  #contact .lines a {
    display: inline !important;
    border: 0 !important;
    padding: 0 !important;
    margin: 0 14pt 0 0;
    font-family: inherit !important;
    font-size: 10.5pt !important;
    color: #000 !important;
    text-decoration: none !important;
  }
  #contact .lines a::before { content: "" !important; }

  /* Reveal the underlying URL after each contact link */
  #contact a[href^="mailto:"]::after,
  #contact a[href^="tel:"]::after {
    content: "";  /* email/phone text is already the value */
  }

  /* ---------- 10. Page break safety ---------- */

  h2 { page-break-after: avoid; }
  section { page-break-inside: auto; }
  p, li { orphans: 3; widows: 3; }
}
