/* ── Print Stylesheet ─────────────────────────────────────────────────────
   Applied only when printing (media="print" on <link>).
   Strips chrome, keeps article content readable on paper.
   ───────────────────────────────────────────────────────────────────────── */

/* ── Hide non-content elements ──────────────────────────────────────────── */
.site-header,
.site-footer,
footer,
nav,
.back-to-top,
.newsletter-cta-section,
.cookie-popup,
.cookie-banner,
.reading-progress,
.share-strip,
.share-bar,
.social-share,
.comment-section,
.comment-form,
.blog-sidebar,
.sidebar,
.filter-bar,
.search-bar,
.video-card,
.video-grid,
.shop-cta,
.related-posts,
.pagination,
.skip-to-content,
.site-flash,
.btn,
.hero__cta,
.view-all,
.post-nav,
#back-to-top,
#newsletter-cta,
#cookie-popup,
[data-noprint] {
  display: none !important;
}

/* ── Base reset for print ───────────────────────────────────────────────── */
*,
*::before,
*::after {
  background: transparent !important;
  color: #000 !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

html, body {
  font-family: Georgia, "Times New Roman", Times, serif;
  font-size: 12pt;
  line-height: 1.6;
  margin: 0;
  padding: 0;
}

/* ── Typography ─────────────────────────────────────────────────────────── */
h1 { font-size: 22pt; margin-bottom: 0.4em; }
h2 { font-size: 18pt; margin-bottom: 0.4em; }
h3 { font-size: 14pt; margin-bottom: 0.3em; }
h4 { font-size: 12pt; margin-bottom: 0.3em; }

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

blockquote {
  border-left: 3px solid #555;
  padding-left: 0.75em;
  margin-left: 0;
  font-style: italic;
}

/* ── Links: show URL after text ─────────────────────────────────────────── */
a[href]::after {
  content: " (" attr(href) ")";
  font-size: 0.85em;
  color: #555 !important;
  word-break: break-all;
}
/* Don't show URL for anchors, JS links, or very long internal links */
a[href^="#"]::after,
a[href^="javascript"]::after,
.post-card a::after,
.article-card-link::after {
  content: "";
}

/* ── Images ─────────────────────────────────────────────────────────────── */
img {
  max-width: 100% !important;
  height: auto !important;
  opacity: 1 !important;
  filter: none !important;
  break-inside: avoid;
  page-break-inside: avoid;
}

.blur-up,
.img-blur-wrap {
  opacity: 1 !important;
  filter: none !important;
}

figure {
  break-inside: avoid;
  page-break-inside: avoid;
  margin: 1em 0;
}

figcaption {
  font-size: 0.85em;
  font-style: italic;
}

/* ── Layout ─────────────────────────────────────────────────────────────── */
main {
  max-width: 100%;
  margin: 0;
  padding: 0;
}

.container-wide,
.post-body,
.article-body {
  max-width: 100%;
  padding: 0;
  margin: 0;
}

/* ── Page breaks ────────────────────────────────────────────────────────── */
h1, h2, h3, h4 {
  page-break-after: avoid;
  break-after: avoid;
}

table, pre, code, img {
  page-break-inside: avoid;
  break-inside: avoid;
}

/* ── Tables ─────────────────────────────────────────────────────────────── */
table {
  border-collapse: collapse;
  width: 100%;
}
th, td {
  border: 1px solid #ccc;
  padding: 6px 8px;
  text-align: left;
}

/* ── Code blocks ────────────────────────────────────────────────────────── */
pre, code {
  font-family: "Courier New", Courier, monospace;
  font-size: 0.9em;
  border: 1px solid #ddd;
  padding: 2px 4px;
}
pre {
  padding: 0.5em;
  white-space: pre-wrap;
  word-wrap: break-word;
}
