/* dayogreats / print stylesheet
 * Final expert pass — journal-offprint quality output.
 *
 * Design principles:
 *   1. Printed page should look like a working paper, not a website screenshot
 *   2. Visible URLs after every link (academic convention)
 *   3. Page numbers + running header on every page
 *   4. Proper widow/orphan/break control
 *   5. Body type at 11pt Newsreader, 1.5 leading
 *   6. Generous margins (2cm side, 2.5cm top/bottom)
 *   7. Charts and images scale to fit, never overflow
 *   8. Code blocks readable in monochrome
 *   9. Tables don't break across pages where possible
 *  10. Notes and citations rendered in proper academic style
 */

@media print {

	@page {
		size: A4;
		margin: 2.5cm 2cm;

		@top-left {
			content: string(doc-author);
			font-family: Georgia, 'Times New Roman', serif;
			font-style: italic;
			font-size: 9pt;
			color: #666;
			padding-bottom: 6pt;
			border-bottom: 0.5pt solid #ccc;
		}
		@top-right {
			content: string(doc-title);
			font-family: Georgia, 'Times New Roman', serif;
			font-size: 9pt;
			color: #666;
			padding-bottom: 6pt;
			border-bottom: 0.5pt solid #ccc;
		}
		@bottom-center {
			content: counter(page) " / " counter(pages);
			font-family: 'Courier New', monospace;
			font-size: 8pt;
			color: #999;
			padding-top: 8pt;
		}
		@bottom-right {
			content: "dayogreats.com";
			font-family: 'Courier New', monospace;
			font-size: 7pt;
			color: #999;
			letter-spacing: 0.1em;
			padding-top: 8pt;
		}
	}

	@page :first {
		@top-left { content: none; }
		@top-right { content: none; }
	}

	.case-title, .essay-title, h1.entry-title, h1.case-title {
		string-set: doc-title content();
	}
	body { string-set: doc-author "Oluwafemi Greats"; }

	html, body {
		background: #fff !important;
		color: #000 !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	body {
		font-family: 'Newsreader', Georgia, 'Times New Roman', serif;
		font-size: 11pt;
		line-height: 1.5;
		font-weight: 400;
		text-rendering: optimizeLegibility;
		font-feature-settings: "kern" 1, "liga" 1, "onum" 1;
	}

	.masthead, .footer, .reader-settings, .reading-progress,
	.reading-progress-rail, .custom-cursor, .cursor-dot, .cursor-ring,
	.skip-link, .theme-toggle, .dg-copy-btn, #dg-cookie-banner,
	.newsletter-signup, .hero-cta-row, .hero-meta, .nav, .nav-cta,
	.case-meta-bar, button:not(.print-include), .btn-primary, .btn-link,
	.writing-filters, .feed-mast, noscript, .dg-dash {
		display: none !important;
	}

	canvas { display: none !important; }
	[data-cursor]::before, [data-cursor]::after { content: none !important; }

	h1, h2, h3, h4, h5, h6 {
		font-family: 'Newsreader', Georgia, serif;
		color: #000;
		page-break-after: avoid;
		break-after: avoid;
		page-break-inside: avoid;
		break-inside: avoid;
		font-weight: 500;
		letter-spacing: -0.01em;
	}

	h1, .case-title, .hero-name {
		font-size: 26pt;
		line-height: 1.1;
		margin: 0 0 14pt;
		font-weight: 500;
		letter-spacing: -0.025em;
		page-break-before: avoid;
	}
	h1 em, .case-title em, .hero-name em {
		font-style: italic;
		font-weight: 400;
	}

	h2 { font-size: 16pt; line-height: 1.2; margin: 24pt 0 8pt; letter-spacing: -0.015em; }
	h3 { font-size: 13pt; line-height: 1.25; margin: 18pt 0 6pt; }
	h4 { font-size: 11pt; line-height: 1.3; margin: 14pt 0 4pt; font-weight: 500; }

	.case-eyebrow, .section-eyebrow, .hero-eyebrow {
		font-family: 'Courier New', monospace;
		font-size: 8pt;
		letter-spacing: 0.18em;
		text-transform: uppercase;
		color: #666;
		margin-bottom: 10pt;
	}

	.case-deck, .section-deck, .positioning, .prose-lead {
		font-family: 'Newsreader', Georgia, serif;
		font-style: italic;
		font-weight: 400;
		font-size: 13pt;
		line-height: 1.45;
		color: #333;
		margin-bottom: 18pt;
		max-width: 100%;
	}

	p, li, blockquote, td, th {
		orphans: 3;
		widows: 3;
		hyphens: auto;
	}
	p { margin: 0 0 11pt; max-width: none; }

	.prose, .case-main, .essay-body {
		font-size: 11pt;
		line-height: 1.5;
		color: #000;
	}

	em, i { font-style: italic; }
	strong, b { font-weight: 600; color: #000; }

	a[href]:not([href^="#"]):not([href^="javascript:"]):not(.no-print-url):after {
		content: " (" attr(href) ")";
		font-size: 9pt;
		font-style: italic;
		color: #555;
		word-break: break-all;
		font-family: 'Newsreader', Georgia, serif;
	}
	a[href^="#"]:after, a[href^="mailto:"]:after, a[href^="tel:"]:after { content: ""; }
	h1 a:after, h2 a:after, h3 a:after, h4 a:after { content: ""; }
	a { color: #000; text-decoration: underline; text-decoration-color: #999; }

	blockquote, .wp-block-pullquote, .wp-block-quote, .pull-quote, .dg-pullquote {
		border-left: 2pt solid #000;
		padding: 4pt 0 4pt 14pt;
		margin: 14pt 0;
		font-style: italic;
		font-size: 12pt;
		line-height: 1.4;
		page-break-inside: avoid;
		break-inside: avoid;
		max-width: 100%;
	}
	blockquote p, .wp-block-pullquote p { margin-bottom: 6pt; font-style: italic; }
	cite, blockquote cite {
		font-family: 'Courier New', monospace;
		font-size: 9pt;
		font-style: normal;
		letter-spacing: 0.1em;
		text-transform: uppercase;
		color: #555;
		display: block;
		margin-top: 6pt;
	}

	pre, .wp-block-code, code {
		font-family: 'Courier New', 'Courier', monospace !important;
		color: #000 !important;
	}
	pre, .wp-block-code {
		background: #f7f7f7 !important;
		border: 0.5pt solid #ccc !important;
		padding: 8pt 12pt !important;
		font-size: 9pt !important;
		line-height: 1.4 !important;
		page-break-inside: avoid;
		break-inside: avoid;
		overflow: visible !important;
		white-space: pre-wrap !important;
		word-wrap: break-word !important;
		margin: 12pt 0 !important;
	}
	:not(pre) > code {
		background: #f0f0f0 !important;
		padding: 1pt 4pt;
		font-size: 9.5pt;
	}

	img, figure, .wp-block-image {
		max-width: 100% !important;
		height: auto !important;
		page-break-inside: avoid;
		break-inside: avoid;
		margin: 14pt 0 !important;
	}
	figure { page-break-inside: avoid; }
	figcaption {
		font-family: 'Newsreader', Georgia, serif;
		font-style: italic;
		font-size: 9.5pt;
		color: #555;
		text-align: center;
		margin-top: 6pt;
	}

	.wp-block-image.is-style-dg-framed,
	.wp-block-image.is-style-dg-polaroid {
		padding: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
		transform: none !important;
		border: 0 !important;
	}
	.wp-block-image.is-style-dg-framed img,
	.wp-block-image.is-style-dg-polaroid img {
		border: 0.5pt solid #999 !important;
	}

	table {
		border-collapse: collapse;
		width: 100%;
		page-break-inside: auto;
		font-size: 10pt;
		margin: 14pt 0;
	}
	thead { display: table-header-group; }
	tfoot { display: table-footer-group; }
	tr { page-break-inside: avoid; break-inside: avoid; }
	th, td {
		border: 0.5pt solid #999;
		padding: 5pt 8pt;
		text-align: left;
		vertical-align: top;
	}
	th {
		background: #f0f0f0 !important;
		font-weight: 600;
		font-family: 'Newsreader', Georgia, serif;
		font-size: 9pt;
	}

	ul, ol { margin: 0 0 11pt; padding-left: 22pt; }
	li { margin-bottom: 4pt; line-height: 1.5; }
	li > p { margin-bottom: 3pt; }

	.wp-block-list.is-style-dg-editorial-check {
		list-style: square;
		padding-left: 22pt;
	}
	.wp-block-list.is-style-dg-editorial-check li::before {
		content: "" !important;
		position: static !important;
	}
	.wp-block-list.is-style-dg-editorial-check li { padding-left: 0 !important; }

	.status-badge, .case-pill {
		background: transparent !important;
		color: #000 !important;
		border: 0.5pt solid #666 !important;
		padding: 1pt 6pt !important;
		font-family: 'Courier New', monospace !important;
		font-size: 8pt !important;
		letter-spacing: 0.12em !important;
		text-transform: uppercase !important;
	}
	.pulse-dot { background: #000 !important; animation: none !important; }

	.wp-block-group.is-style-dg-dark-section {
		background: transparent !important;
		color: #000 !important;
		padding: 14pt 0 !important;
		border-top: 1pt solid #000 !important;
		border-bottom: 1pt solid #000 !important;
	}
	.wp-block-group.is-style-dg-dark-section h1,
	.wp-block-group.is-style-dg-dark-section h2,
	.wp-block-group.is-style-dg-dark-section h3,
	.wp-block-group.is-style-dg-dark-section p { color: #000 !important; }

	.wp-block-group.is-style-dg-paper-soft {
		background: transparent !important;
		border-top: 0.5pt solid #999;
		border-bottom: 0.5pt solid #999;
		padding: 10pt 0 !important;
		margin: 14pt 0 !important;
	}

	.case-body { display: block !important; grid-template-columns: none !important; }
	.case-sidebar {
		display: block;
		border-top: 0.5pt solid #999;
		padding-top: 12pt;
		margin-top: 18pt;
		font-size: 9.5pt;
		page-break-inside: avoid;
	}
	.case-sidebar .sidebar-block {
		display: inline-block;
		margin-right: 20pt;
		margin-bottom: 8pt;
		vertical-align: top;
	}
	.case-sidebar .sidebar-label {
		font-family: 'Courier New', monospace;
		font-size: 7.5pt;
		letter-spacing: 0.16em;
		text-transform: uppercase;
		color: #666;
		display: block;
		margin-bottom: 2pt;
	}
	.case-sidebar .sidebar-value {
		font-family: 'Newsreader', Georgia, serif;
		font-size: 10pt;
		color: #000;
		display: block;
	}

	sup.footnote-ref, sup a[href^="#fn"] {
		font-size: 0.7em;
		vertical-align: super;
		line-height: 0;
	}
	sup.footnote-ref a::before { content: "[" !important; }
	sup.footnote-ref a::after  { content: "]" !important; }

	.footnotes, .wp-block-footnotes {
		margin-top: 24pt;
		padding-top: 12pt;
		border-top: 1pt solid #000;
		font-size: 9.5pt;
		line-height: 1.45;
		page-break-before: avoid;
	}
	.footnotes ol { padding-left: 18pt; }
	.footnotes li { margin-bottom: 5pt; }

	.print-page-break-before { page-break-before: always; break-before: page; }
	.print-page-break-after  { page-break-after: always;  break-after: page; }
	.print-keep-together     { page-break-inside: avoid;  break-inside: avoid; }
	.print-only              { display: block !important; }
	.no-print                { display: none !important; }

	.reveal-on-scroll { opacity: 1 !important; transform: none !important; }
	[hidden] { display: revert !important; }
}
