/* ==========================================================================
   Print Styles — Clean output for printing pages and blog posts
   ========================================================================== */

@media print {
    /* Hide non-essential elements */
    .site-header,
    .site-header__toggle,
    .nav-overlay,
    .footer-cta,
    .footer-main,
    .footer-trust,
    .footer-bottom,
    .mobile-sticky-cta,
    .back-to-top,
    .whatsapp-float,
    .skip-link,
    .post-share,
    .btn,
    .service-sidebar,
    .quote-form-card,
    .cta-banner,
    .blog-sidebar,
    .related-posts,
    .archive-filters,
    .trust-bar,
    .checklist-cta__action,
    .footer-social,
    .error-404-search,
    .error-404-actions,
    .reading-progress,
    .announcement-bar,
    .seasonal-banner,
    .post-nav,
    .move-estimator,
    .faq-search,
    .hero__form,
    .service-testimonial {
        display: none !important;
    }

    /* Reset layout */
    body {
        font-size: 12pt;
        line-height: 1.5;
        color: #000;
        background: #fff;
    }

    .container {
        max-width: 100%;
        padding: 0;
        margin: 0;
    }

    .blog-layout {
        grid-template-columns: 1fr;
    }

    .layout-split {
        display: block;
    }

    /* Page hero */
    .page-hero,
    .city-hero {
        background: none !important;
        padding: 0.5cm 0;
        margin-top: 0 !important;
    }

    /* Typography */
    h1 { font-size: 18pt; }
    h2 { font-size: 14pt; }
    h3 { font-size: 12pt; }

    /* Links */
    a {
        color: #000;
        text-decoration: underline;
    }

    /* Show URL after external links only (skip internal site links) */
    .content-body a[href^="http"]:not([href*="ferozmovers.ca"])::after {
        content: " (" attr(href) ")";
        font-size: 9pt;
        color: #666;
    }

    /* Page break rules for figures and blockquotes */
    figure,
    blockquote {
        page-break-inside: avoid;
    }

    /* Page setup */
    @page {
        margin: 2cm;
    }

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

    /* Prevent page breaks inside cards and steps */
    .service-card,
    .feature-card,
    .testimonial-card,
    .faq-item,
    .thank-you-step {
        page-break-inside: avoid;
    }

    /* Show FAQ answers */
    .faq-answer {
        display: block !important;
        max-height: none !important;
    }

    /* Grids to single column */
    .services-grid,
    .features-grid,
    .areas-grid,
    .testimonials-grid,
    .blog-preview-grid {
        display: block;
    }

    .services-grid > *,
    .features-grid > *,
    .testimonials-grid > * {
        margin-bottom: 1cm;
    }

    /* Author box for print */
    .author-box {
        border: 1px solid #ccc;
        padding: 0.5cm;
    }

    /* Blog post date and reading time */
    .post-meta {
        border-bottom: 1px solid #ccc;
        padding-bottom: 0.3cm;
        margin-bottom: 0.5cm;
    }

    /* Breadcrumbs */
    .breadcrumbs {
        font-size: 9pt;
        color: #666;
    }

    /* Hero simplification */
    .hero {
        background: none !important;
        padding: 0.5cm 0 !important;
    }

    .hero__layout {
        display: block;
    }

}
