@media print {
    /* --- 1. GLOBAL RESET & PAGE RULES --- */
    @page {
        margin: 1.5cm 1cm 2cm 1cm;
    }

    * {
        page-break-inside: auto !important;
        break-inside: auto !important;
        -webkit-print-color-adjust: exact;
    }

    html, body {
        height: auto !important;
        min-height: 0 !important;
        overflow: visible !important;
        margin: 0;
        padding: 0;
        padding-bottom: 50px;
        background-color: #fff !important;
    }

    a[href]:after {
        content: none !important;
    }

    div, section, article {
        height: auto !important;
        min-height: 0 !important;
    }

    /* --- 2. LAYOUT & CONTAINERS --- */
    .article-col-main, 
    .blog-post-content, 
    .main-flex-container {
        display: block !important;
        float: none !important;
        margin: 0 auto !important;
        width: 85% !important;
        max-width: 800px !important;
        text-align: left;
    }

    p, blockquote, .article-col-main {
        page-break-inside: avoid;
    }

    /* --- 3. PRINT HEADER & FOOTER --- */
    .print-only-logo,
    .print-header {
        display: block !important;
        text-align: center !important;
        margin: 12px auto !important;
        width: 245px;
        max-height: 45px;
        page-break-before: avoid !important;
        page-break-after: avoid !important;
    }

    .print-footer {
        display: block !important;
        position: fixed;
        bottom: 0.2cm !important;
        left: 10px !important;
        right: auto;
        width: 100%;
        text-align: left !important;
        font-size: 9pt !important;
        color: #ff0000 !important; /* Kept red as requested */
        z-index: 99999 !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    /* --- 4. TYPOGRAPHY --- */
    h1, h2, h3 {
        page-break-after: avoid;
    }

    .blog-header {
        font-size: 21pt !important;
        line-height: 27pt !important;
        text-align: center !important;
        margin: 15px auto !important;
    }

    .blog-headline {
        font-size: 12pt !important;
        line-height: 16pt !important;
    }

    .blog-post-content, 
    .blog-post-content p, 
    .blog-post-content span, 
    .blog-post-content div {
        font-size: 13pt !important;
        line-height: 17pt !important;
    }

    /* --- 5. IMAGES & FIGURES --- */
    picture {
        display: block !important;
        height: auto !important;
    }

    /* Main Featured Image */
    .main-article-photo-figure {
        text-align: center !important;
        margin: 0 auto 20px auto !important;
    }

    .main-article-photo-figure.overlay-style {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        padding: 0 !important;
        position: static !important;
        transform: none !important;
        background: none !important;
    }

    .main-article-photo-figure picture,
    .main-article-photo-figure img {
        width: 100% !important;
        height: 400px !important;
        object-fit: cover !important;
        object-position: center !important;
        display: block !important;
        margin: 0 auto !important;
        float: none !important;
        border: none !important;
        box-shadow: none !important;
        page-break-inside: avoid !important;
    }

    .main-article-photo-figure img {
        display: inline-block !important;
    }

    /* Inline Article Images */
    .blog-post-content img {
        width: 100% !important;
        height: 280px !important;
        object-fit: cover !important;
        object-position: center !important;
        display: block !important;
        margin: 20px auto !important;
        float: none !important;
        page-break-inside: avoid !important;
        border: 1px solid #eee;
    }

    /* --- 6. THE KILL LIST (Elements to Hide) --- */
    iframe,
    .embed-container,
    .embed-responsive,
    .tiktok_iframe,
    .instagram-image-direct-caption,
    .instagram-embed,
    .main-header, 
    .footer-wrapper, 
    .breadcrumb-container, 
    .floating-bar, 
    .floating-bar-content, 
    .blog-author-share-box-right, 
    .blog-post-summary, 
    .blog-more-details-button, 
    .blog-count, 
    .blog-keywords, 
    .blog-post-read-also, 
    .photo-credit-overlay, 
    #more-related-articles, 
    .navbar, 
    .topbar, 
    .adsbygoogle, 
    .ad-unfilled, 
    .resto-ad, 
    .resto-ad-card, 
    .resto-ad-card2, 
    .resto-newsletter-fallback, 
    .form-searchbar-top, 
    #article-restaurants-list, 
    .mapview-icon-fixed, 
    .filter-icon-fixed, 
    .search-icon-fixed, 
    .bottom, 
    .menu-border, 
    .fixed-resto-header, 
    #footer-ads, 
    .sidebar, 
    .on, 
    .tag, 
    .topmenu-right, 
    .topmenu-left, 
    .filter-btn-top, 
    .rd-searchtop, 
    .rd-menu, 
    .qr-code {
        display: none !important;
        height: 0 !important;
        visibility: hidden !important;
        opacity: 0 !important;
    }

    .section-gray {
        background-color: #fff !important;
    }
}