/**
 * print.css
 * Enqueued with media="print" - zero performance cost on screen.
 * Hides navigation, decorative elements, and interactive UI.
 * Renders body content cleanly in black on white.
 *
 * Pet peeve fixed: Elementor pages actually print well now.
 */

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

/* ── Hide everything non-essential ── */

.site-header,
.site-footer,
.primary-nav,
.primary-nav__toggle,
.skip-link,
.btn,
.elementor-widget-button,
.elementor-widget-video,
.elementor-widget-google_maps,
[class*="cookie"],
[class*="consent"],
[class*="popup"],
[class*="modal"],
[id*="cookie"],
[id*="consent"],
iframe,
video,
audio,
form,
nav {
    display: none !important;
}

/* ── Page setup ── */

@page {
    margin: 1.5cm;
}

html {
    font-size: 12pt;
}

body {
    font-family: Georgia, serif;
    line-height: 1.5;
    color:       #000;
}

/* ── Typography ── */

h1, h2, h3, h4, h5, h6 {
    page-break-after:  avoid;
    page-break-inside: avoid;
    font-family:       Georgia, serif;
    color:             #000;
}

h1 { font-size: 22pt; margin-bottom: 12pt; }
h2 { font-size: 18pt; margin-bottom: 10pt; }
h3 { font-size: 14pt; margin-bottom: 8pt;  }

p, li {
    font-size:   11pt;
    line-height: 1.6;
    orphans:     3;
    widows:      3;
}

p { margin-bottom: 8pt; }

/* ── Images ── */

img {
    max-width:         100% !important;
    page-break-inside: avoid;
}

/* ── Links - print the URL after the link text ── */

a[href]::after {
    content: ' (' attr(href) ')';
    font-size: 9pt;
    color: #444 !important;
}

/* Don't print URLs for internal anchors or javascript links */
a[href^="#"]::after,
a[href^="javascript"]::after {
    content: '';
}

/* ── Tables ── */

table {
    border-collapse: collapse;
    width:           100%;
}

th, td {
    border:  1px solid #999;
    padding: 6pt 8pt;
}

thead {
    display: table-header-group;
}

tr {
    page-break-inside: avoid;
}

/* ── Elementor specific ── */

/* Remove Elementor section backgrounds and padding extremes */
.elementor-section,
.elementor-container,
.elementor-column,
.elementor-widget-wrap,
.elementor-element {
    background-color: transparent !important;
    padding:          0 !important;
    margin:           0 !important;
}

/* Restore sensible spacing for content */
.elementor-widget {
    margin-bottom: 12pt !important;
}

/* Remove decorative dividers */
.elementor-divider,
.elementor-widget-divider {
    display: none !important;
}

/* ── Utility ── */

.no-print {
    display: none !important;
}

.print-only {
    display: block !important;
}
