@media print {

    /* ── Reset ────────────────────────────────────────────────── */
    *,
    *::before,
    *::after {
        box-shadow: none !important;
        text-shadow: none !important;
    }

    /* ── Typography ───────────────────────────────────────────── */
    body {
        font-family: "Libre Franklin", Georgia, serif;
        font-size: 10pt;
        line-height: 1.5;
        color: #000 !important;
        background: #fff !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    h1, .h1, .heading-1 {
        font-size: 16pt;
        line-height: 1.2;
        margin-top: 0 !important;
        margin-bottom: 6pt;
    }

    .body-regular-20 {
        font-size: 13pt !important;
        line-height: 1.5 !important;
    }

    .body-regular-22 {
        font-size: 12pt !important;
        line-height: 1.5 !important;
    }

    h2, .h2 {
        font-size: 14pt;
        margin-bottom: 6pt;
    }

    h3, .h3 {
        font-size: 12pt;
        margin-bottom: 4pt;
    }

    h4, .h4, h5, .h5, h6, .h6 {
        font-size: 11pt;
        margin-bottom: 4pt;
    }

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

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

        a[href]::after {
            content: " (" attr(href) ")";
            font-size: 9pt;
            color: #555;
        }

        a[href^="#"]::after,
        a[href^="javascript:"]::after {
            content: "";
        }

    /* ── Print-area isolation ────────────────────────────────── */
    body * {
        visibility: hidden !important;
    }

    .print-area,
    .print-area * {
        visibility: visible !important;
    }

    .print-area {
        position: absolute !important;
        inset: 0 !important;
        width: 100% !important;
    }

    /* ── Hide non-content elements ────────────────────────────── */
    header,
    footer,
    nav,
    .breadcrumb,
    .blog-share,
    .owl-carousel,
    .modal,
    .btn,
    #cookieConsent,
    .language-selector,
    .sub-menu,
    [class*="coach"],
    .pagination,
    #silktide-cookie-icon,
    #silktide-wrapper {
        display: none !important;
    }

    /* ── Layout: single column ────────────────────────────────── */
    .container,
    .container-fluid {
        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
    }

    .row {
        display: block !important;
    }

    .col-lg-4,
    .col-lg-8,
    [class*="col-"] {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
    }

    /* ── Blog detail ──────────────────────────────────────────── */
    .blog-detail-hero {
        background: none !important;
        padding: 0 0 8pt !important;
        margin: 0 !important;
        text-align: left !important;
    }

    .content-section,
    section {
        padding: 0 !important;
        margin: 0 !important;
    }

    .blog-detail-sidebar {
        position: static !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        gap: 6pt !important;
        padding-bottom: 8pt;
        margin-bottom: 12pt;
    }

    .blog-detail-sidebar-author {
        display: flex !important;
        background: none !important;
        padding: 0 !important;
        border-radius: 0 !important;
    }

    .blog-detail-sidebar-time [class^="icon-"],
    .blog-detail-sidebar-time [class*=" icon-"] {
        display: none !important;
    }

    .blog-content {
        font-size: 12pt;
        line-height: 1.7;
    }

        .blog-content img {
            max-width: 100% !important;
            border-radius: 0 !important;
            page-break-inside: avoid;
        }

    /* ── Video placeholders ───────────────────────────────────── */
    iframe,
    video {
        display: none !important;
    }

    .print-video-placeholder {
        display: flex !important;
        align-items: center;
        gap: 8pt;
        border: 1pt solid #ccc;
        border-radius: 4pt;
        padding: 8pt 12pt;
        margin: 8pt 0;
        font-size: 10pt;
        color: #333;
        page-break-inside: avoid;
    }

    .print-video-icon {
        font-size: 14pt;
        flex-shrink: 0;
    }

    .print-video-url {
        font-size: 8pt;
        color: #555;
        word-break: break-all;
    }

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

    img, figure, blockquote {
        page-break-inside: avoid;
    }

    /* ── Page margins ─────────────────────────────────────────── */
    @page {
        margin: 20mm 15mm;
    }

    .site-header, .site-footer, .testimonials, .site-breadcrumb {
        display: none;
    }

    .blog-page-poster img {
        margin-top: 16pt;
    }
}
