/**
 * PaywallProject — printable articles.
 *
 * Loaded with media="print" on single articles (ArticlePrint). It keeps the
 * headline, kicker, byline, date, featured image and story, and hides site
 * chrome, ads, comments, share tools and the plugin's own paywall UI.
 *
 * Two layers work together:
 * 1. The selector lists below cover common themes (Blocksy, Genesis and
 *    Magazine Pro, Twenty Ten to Twenty Twenty-Five, WPZOOM) and plugins.
 * 2. article-print.js marks everything outside the article, and blocks
 *    beside the story inside it that hold no headline, byline or featured
 *    image, with .ppaccess-print-hidden. That catches theme-specific wrappers
 *    and side columns that no list can know about. It also marks the wrappers
 *    around the story (.ppaccess-print-chain), so their column widths go, and
 *    puts the headline above a featured image a theme shows first.
 *
 * Nothing here can show locked text: for a locked article the server only
 * ever sends the teaser, so there is nothing hidden on the page to reveal.
 */

@page {
	margin: 16mm 15mm 18mm;
}

/* ---------------------------------------------------------------------------
 * Hide site chrome, ads, comments, sharing and overlays.
 * ------------------------------------------------------------------------ */
.ppaccess-print-hidden,
#wpadminbar,
.skip-link,
.screen-reader-text,
/* Headers and navigation */
.site-header,
#masthead,
body > header,
header.wp-block-template-part,
#header,
.ct-header,
#header-sticky,
[data-sticky],
.before-header,
.top-navbar,
.navbar,
nav,
.nav-primary,
.nav-secondary,
.main-navigation,
.genesis-nav-menu,
.navigation,
.post-navigation,
.posts-navigation,
.wp-block-post-navigation-link,
.breadcrumb,
.breadcrumbs,
.ct-breadcrumbs,
.yoast-breadcrumbs,
.rank-math-breadcrumb,
/* Sidebars and widgets */
#secondary,
#sidebar,
.sidebar,
.sidebar-primary,
.sidebar-secondary,
.widget-area,
.ct-sidebar,
aside.widget-area,
/* Footers */
.site-footer,
#colophon,
body > footer,
footer.wp-block-template-part,
#footer,
.ct-footer,
.footer-widgets,
/* Comments */
#comments,
.comments-area,
.comment-respond,
#respond,
.entry-comments,
.ct-comments-container,
.wp-block-comments,
.wp-block-post-comments-form,
/* Edit links for logged-in staff */
.edit-link,
.post-edit-link,
/* Author photos and theme extras inside the article (WPZOOM: side column
 * with author and "More in", author box, tags, after-post banner) */
img.avatar,
.entry-details,
.related_posts,
.post_author,
.tag_list,
.adv_content,
.site-widgetized-section,
.page-links,
/* Share tools and related posts */
.sharedaddy,
.sd-sharing-enabled,
.jp-relatedposts,
.addtoany_share_save_container,
.a2a_kit,
.heateor_sss_sharing_container,
.shared-counts-wrap,
.social-share,
.share-buttons,
.post-share,
.ct-share-box,
.wp-block-social-links,
.related-posts,
.ct-related-posts-container,
.yarpp-related,
.author-box,
.ct-author-box,
.after-entry,
.wp-block-query:not(.entry-content .wp-block-query),
.wp-block-group:has(.wp-block-query):not(:has(.wp-block-post-content, .entry-content)):not(.entry-content *),
/* Ads: Advanced Ads, AdSense, Google Ad Manager and common wrappers */
.advads-ad,
.advads-adlabel,
[class^="advads-"],
[class*=" advads-"],
[id^="advads-"],
[data-advadstrackid],
.adsbygoogle,
ins.adsbygoogle,
[id^="div-gpt-ad"],
[id^="google_ads"],
.advertisement,
.ad-container,
.ad-wrapper,
.ad-slot,
.widget_advads_ad_widget,
/* Popups, sticky bars, cookie banners, back-to-top */
.pum-overlay,
.pum-container,
.mfp-wrap,
.mfp-bg,
.elementor-popup-modal,
#cookie-notice,
#cookie-law-info-bar,
.cky-consent-container,
.cmplz-cookiebanner,
#onesignal-bell-container,
.simple-banner,
.ct-back-to-top,
#back-to-top,
.scroll-to-top,
.ct-drawer-canvas,
#offcanvas,
/* The plugin's own on-screen UI */
.ppaccess-paywall,
.ppaccess-paywall-card,
.ppaccess-paywall-modal,
.ppaccess-modal-root,
.ppaccess-slideup-root,
.ppaccess-modal,
.ppaccess-agift,
.ppaccess-staff-share,
.ppaccess-print-bar,
.ppaccess-gift-notice,
.ppaccess-comment-gate,
iframe[src*="doubleclick"],
iframe[id^="google_ads"] {
	display: none !important;
}

/* ---------------------------------------------------------------------------
 * Page and layout: one column, full width, no theme boxes.
 * ------------------------------------------------------------------------ */
html,
body {
	margin: 0 !important;
	padding: 0 !important;
	background: #fff !important;
	color: #000 !important;
}

body {
	font-family: Georgia, "Times New Roman", Times, serif !important;
	font-size: 11.5pt !important;
	line-height: 1.5 !important;
}

/* Layout wrappers across themes: drop columns, widths and offsets. */
#page,
#main-container,
.site,
.site-container,
.site-inner,
.site-content,
.content-area,
.content-sidebar-wrap,
.ct-container,
.ct-container-full,
.container,
.wrap,
main,
.site-main,
#main,
#content,
#primary,
article,
.hentry,
.entry,
.post,
.entry-content,
.wp-block-post-content,
.wp-site-blocks,
.wp-block-group {
	position: static !important;
	float: none !important;
	display: block !important;
	width: auto !important;
	max-width: none !important;
	min-height: 0 !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	box-shadow: none !important;
	border: 0 !important;
	background: transparent !important;
	transform: none !important;
	columns: auto !important;
}

/* Content widths: block themes and Blocksy centre each block in a narrower
 * column; on paper the story uses the full page width. */
.hero-section,
.hero-section .entry-header,
.entry-header,
.entry-content > *,
.wp-block-post-content > *,
.is-layout-constrained > *,
.ppaccess-paywall-leadin,
.ppaccess-paywall-leadin > * {
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Every wrapper around the story (marked by article-print.js): one full-width
 * column, whatever widths, floats, flex or grid columns, offsets and rules
 * the theme gave it for a sidebar or side column that print hides. */
.ppaccess-print-chain {
	position: static !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	border: 0 !important;
	float: none !important;
	display: block !important;
	width: auto !important;
	max-width: none !important;
	min-width: 0 !important;
	flex: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	transform: none !important;
	columns: auto !important;
}

/* The article header: no screen spacing or rule under the byline. */
.entry-header,
.ppaccess-print-lead {
	margin-top: 0 !important;
	margin-bottom: 10pt !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	border: 0 !important;
}

/* Headline above a featured image the theme shows first. */
body .ppaccess-print-stack,
body .ppaccess-print-chain.ppaccess-print-stack {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
}

.ppaccess-print-stack > * {
	order: 2;
}

.ppaccess-print-stack > .ppaccess-print-lead {
	order: 1;
}

/* Template groups around the story keep their screen padding even when
 * everything in them is hidden, which left half a page blank. */
.wp-block-group:not(.entry-content *):not(.wp-block-post-content *) {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	margin-top: 0 !important;
	margin-bottom: 6pt !important;
}

.wp-block-spacer:not(.entry-content *),
.wp-block-separator:not(.entry-content *) {
	display: none !important;
}

/* Theme layouts that offset the page for a fixed header. */
body,
#main,
.site-main,
main {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* ---------------------------------------------------------------------------
 * Type.
 * ------------------------------------------------------------------------ */
.entry-content,
.entry-content p,
.entry-content li,
.entry-content blockquote,
.entry-content td,
.entry-content th,
.wp-block-post-content p,
.wp-block-post-content li {
	font-family: Georgia, "Times New Roman", Times, serif !important;
	font-size: 11.5pt !important;
	line-height: 1.5 !important;
	color: #000 !important;
}

.entry-content p,
.wp-block-post-content p {
	margin: 0 0 0.7em !important;
	orphans: 3;
	widows: 3;
}

h1,
h2,
h3,
h4,
h5,
h6,
.entry-title,
.wp-block-post-title {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
	color: #000 !important;
	line-height: 1.2 !important;
	break-after: avoid;
	page-break-after: avoid;
	break-inside: avoid;
	page-break-inside: avoid;
}

h1,
.entry-title,
.wp-block-post-title {
	font-size: 22pt !important;
	margin: 0 0 6pt !important;
}

.entry-content h2,
.wp-block-post-content h2 {
	font-size: 15pt !important;
	margin: 14pt 0 6pt !important;
}

.entry-content h3,
.entry-content h4,
.wp-block-post-content h3,
.wp-block-post-content h4 {
	font-size: 12.5pt !important;
	margin: 12pt 0 4pt !important;
}

/* Kicker, byline and date. */
.cat-links,
.entry-categories,
.entry-meta,
.byline,
.posted-on,
.entry-date,
.wp-block-post-terms,
.wp-block-post-author,
.wp-block-post-author-name,
.wp-block-post-date,
.ct-meta-element,
.post-meta,
.meta {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
	font-size: 9.5pt !important;
	color: #333 !important;
}

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

/* ---------------------------------------------------------------------------
 * Images, captions, quotes and tables.
 * ------------------------------------------------------------------------ */
img,
svg,
video,
figure {
	max-width: 100% !important;
}

img {
	height: auto !important;
	max-height: 20cm;
	object-fit: contain;
}

figure,
.wp-caption,
.wp-block-image,
.wp-block-post-featured-image,
.post-thumbnail,
.featured-media,
.ct-featured-image,
blockquote,
pre,
table,
tr {
	break-inside: avoid;
	page-break-inside: avoid;
}

figure,
.wp-caption {
	width: auto !important;
	margin: 0 0 12pt !important;
}

figcaption,
.wp-caption-text,
.wp-element-caption,
.ppaccess-print-caption {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
	font-size: 9pt !important;
	line-height: 1.35 !important;
	color: #333 !important;
	margin-top: 4pt !important;
	text-align: left !important;
}

/* The featured image: at most about a third of the page, so the story starts
 * on page one. */
img.ppaccess-print-featured {
	display: block !important;
	width: auto !important;
	max-width: 100% !important;
	max-height: 9cm !important;
	object-fit: contain;
	margin: 0 !important;
}

figure.ppaccess-print-featured,
.wp-caption.ppaccess-print-featured {
	width: auto !important;
	max-width: 100% !important;
	margin: 0 0 12pt !important;
}

/* Hero images some themes paint as backgrounds still need to show. */
.wp-block-post-featured-image img,
.post-thumbnail img,
.ct-featured-image img {
	display: block;
	width: auto !important;
}

/* Lead-in on a locked article: drop the on-screen fade. */
.ppaccess-paywall-leadin {
	max-height: none !important;
	overflow: visible !important;
	-webkit-mask-image: none !important;
	mask-image: none !important;
}

.ppaccess-paywall-leadin::after,
.ppaccess-paywall-leadin::before {
	display: none !important;
	content: none !important;
}

/* ---------------------------------------------------------------------------
 * Footer printed under the article: source URL, site and print date, plus
 * the subscribe line on a locked article.
 * ------------------------------------------------------------------------ */
.ppaccess-print-footer[hidden],
.ppaccess-print-footer {
	display: block !important;
	margin: 18pt 0 0 !important;
	padding: 8pt 0 0 !important;
	border-top: 0.75pt solid #000;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
	font-size: 9pt !important;
	line-height: 1.4 !important;
	color: #000 !important;
	break-inside: avoid;
	page-break-inside: avoid;
}

.ppaccess-print-footer p {
	margin: 0 0 3pt !important;
	font-size: 9pt !important;
}

.ppaccess-print-footer .ppaccess-print-locked-note {
	display: none;
	margin: 0 0 10pt !important;
	font-family: Georgia, "Times New Roman", Times, serif !important;
	font-size: 11.5pt !important;
	font-style: italic;
}

.ppaccess-print-is-locked .ppaccess-print-footer .ppaccess-print-locked-note,
body:has(.ppaccess-paywall-card, .ppaccess-paywall-leadin, .ppaccess-paywall-modal) .ppaccess-print-footer .ppaccess-print-locked-note {
	display: block !important;
}

.ppaccess-print-caption {
	display: block !important;
	margin: -6pt 0 12pt !important;
}

.ppaccess-print-footer .ppaccess-print-url {
	word-break: break-all;
}
