/* ============================================================
   print.css — one source of truth: the live web page prints.
   No stored PDFs. Loaded with media="print" on every page.
   ============================================================ */

@page {
  size: Letter;
  margin: 0.75in 0.7in;
}

/* ---------- Chrome that never prints ---------- */
nav.top,
.nav-mobile,
.nav-mobile-toggle,
.nav-desktop,
footer,
.site-footer,
#final-cta,
.sec-index,
.art-toc,
.isub,
#library,
[data-library],
.dl-bar,
.dl-gate,
video,
iframe,
.skip-link,
#sticky-cta,
.sticky-cta,
#tweaks,
.cta-bar {
  display: none !important;
}

/* ---------- Page shell ---------- */
html,
body {
  background: #fff !important;
  color: #14181f !important;
}

body {
  font-size: 10.5pt;
  line-height: 1.45;
  /* Reserve the running-footer band so body copy never runs under the stamp. */
  padding-bottom: 0.6in !important;
}

.wrap,
main,
article,
.art,
.art-body,
.measure,
.art-wrap {
  max-width: 100% !important;
  width: auto !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  float: none !important;
}

/* Any two-column article grid collapses for print */
.art-grid,
.art-shell,
.insight-grid {
  display: block !important;
}

/* Dark blocks become paper-friendly */
[style*="background:var(--navy)"],
[style*="background: var(--navy)"],
.navy,
.bg-navy {
  background: #fff !important;
  color: #14181f !important;
  border: 1px solid #e0d6bf !important;
}

/* ---------- Break behaviour ---------- */
h1,
h2,
h3,
h4,
h5,
h6,
.eyebrow {
  page-break-after: avoid;
  break-after: avoid;
  page-break-inside: avoid;
  break-inside: avoid;
}

table,
figure,
.wn-card,
.tbl-wrap,
blockquote,
.pull,
.callout,
.lgr {
  page-break-inside: avoid;
  break-inside: avoid;
}

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

/* ---------- Links ---------- */
a {
  color: #14181f !important;
  text-decoration: none !important;
}

a[href^="http"]::after {
  content: " (" attr(href) ")";
  font-size: 9pt;
  color: #4c463a;
  word-break: break-all;
}

a[href^="mailto"]::after,
a[href^="tel"]::after,
a[href^="#"]::after,
.no-print-href::after {
  content: "" !important;
}

/* ---------- Running footer stamp ---------- */
.print-stamp {
  display: none;
}

@media print {
  .print-stamp {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    font-family: var(--mono, ui-monospace, Menlo, monospace);
    font-size: 9pt;
    line-height: 1.35;
    color: #4c463a;
    border-top: 1px solid #e0d6bf;
    padding-top: 6pt;
    background: #fff;
  }

  .print-stamp p {
    margin: 0 0 2pt;
  }
}
