        /* ═══════════════════════════════════════
           PRINT / PDF EXPORT
        ═══════════════════════════════════════ */
        @media print {
            @page { size: A4 landscape; margin: 0; }
            * {
                -webkit-print-color-adjust: exact !important;
                print-color-adjust: exact !important;
            }
            html { font-size: 15px; }
            body { overflow: visible !important; }
            /* hide screen-only chrome */
            .nav, .hero-scroll { display: none !important; }
            /* reveal all scroll-animated content */
            .fade-up, .fade-right, .stagger > *,
            [class*="fade"] { opacity: 1 !important; transform: none !important; }

            /* ── one slide per section (mm units — vh is unreliable in print) ── */
            section, #data-strip { break-before: page; }
            .hero { break-before: avoid !important; }

            /* full-bleed image slides fill the page */
            .hero, .vision, .cta { height: 209mm !important; min-height: 0 !important; }
            .cta { display: flex; flex-direction: column; justify-content: center; }

            /* content sections: one full slide, vertically centred */
            .section {
                min-height: 209mm;
                box-sizing: border-box;
                display: flex;
                flex-direction: column;
                justify-content: center;
                padding: 12mm 16mm !important;
            }
            #data-strip { min-height: 209mm; align-content: center; }

            /* lead form is interactive — drop it from the PDF */
            .cta-form { display: none !important; }
            /* footer becomes a clean credits slide */
            .footer {
                break-before: page;
                min-height: 209mm;
                display: flex !important;
                flex-direction: column;
                justify-content: center;
                padding: 20mm 60px !important;
            }
            .footer .fcredit-logo { height: 80px !important; }

            /* keep advantages compact enough for a single clean slide */
            #advantages { padding: 9mm 16mm !important; }
            #advantages .section-header { margin-bottom: 16px !important; }
            #advantages .advantage-card { padding: 16px 18px !important; }
            #advantages .advantage-icon { width: 46px !important; height: 46px !important; margin-bottom: 10px !important; }
            #advantages .advantage-icon svg { width: 23px !important; height: 23px !important; }
            #advantages .advantage-card h3 { font-size: 1.02rem !important; margin-bottom: 6px !important; }
            #advantages .advantage-card p { font-size: 0.8rem !important; line-height: 1.45 !important; }

            /* tighter spacing so single-row sections clear the page boundary (avoid header orphans) */
            .section-header { margin-bottom: 26px !important; }
            .sustain-card-img { height: 188px !important; }
            .sustain-card-body { padding: 20px !important; }
            .sustain-card-body p { font-size: 0.85rem !important; line-height: 1.5 !important; }
            .gallery-item.large img { height: 300px !important; }
            .gallery-item:not(.large) img { height: 140px !important; }
            .building-card-image { height: 190px !important; }

            /* spaces & amenities — compact to one centred slide (class hook) */
            .pdf-fit {
                display: flex !important;
                flex-direction: column;
                justify-content: center;
                min-height: 209mm;
                padding: 10mm 16mm !important;
            }
            .pdf-fit .section-header { margin-bottom: 18px !important; }
            .pdf-fit .section-title { font-size: 1.75rem !important; line-height: 1.15 !important; }
            .pdf-fit .section-desc { font-size: 0.85rem !important; }
            .pdf-fit .uses-grid { gap: 18px !important; }
            .pdf-fit .use-card-header { padding: 14px 20px !important; }
            .pdf-fit .use-card-header h3 { font-size: 1.05rem !important; }
            .pdf-fit .use-card-header .use-icon svg { width: 30px !important; height: 30px !important; }
            .pdf-fit .use-card-body { padding: 14px 20px !important; }
            .pdf-fit .use-card-body ul { gap: 5px !important; }
            .pdf-fit .use-card-body li { font-size: 0.8rem !important; line-height: 1.4 !important; }
            .pdf-fit .amenity-showcase { margin-bottom: 18px !important; }
            .pdf-fit .amenity-showcase img { height: 150px !important; }
            .pdf-fit .amenity-showcase-overlay { padding: 16px !important; }
            .pdf-fit .amenity-showcase-overlay h3 { font-size: 1.2rem !important; margin-bottom: 4px !important; }
            .pdf-fit .amenity-showcase-overlay p { font-size: 0.82rem !important; }
            .pdf-fit .amenity-grid { gap: 12px !important; }
            .pdf-fit .amenity-item { padding: 12px 8px !important; }
            .pdf-fit .amenity-item-icon { margin-bottom: 8px !important; }
            .pdf-fit .amenity-item-icon svg { width: 28px !important; height: 28px !important; }
            .pdf-fit .amenity-item h4 { font-size: 0.86rem !important; margin-bottom: 3px !important; }
            .pdf-fit .amenity-item p { font-size: 0.72rem !important; line-height: 1.35 !important; }
            /* gallery — fit all images on one centred slide */
            .pdf-fit .gallery-grid { gap: 16px !important; }
            .pdf-fit .gallery-item.large img { height: 346px !important; }
            .pdf-fit .gallery-item:not(.large) img { height: 165px !important; }

            /* print width triggers the mobile breakpoints — force the desktop grids back */
            .data-strip { grid-template-columns: repeat(5, 1fr) !important; }
            .advantages-grid, .holistic-grid, .sustain-grid { grid-template-columns: repeat(3, 1fr) !important; }
            .uses-grid, .buildings-grid, .location-grid { grid-template-columns: repeat(2, 1fr) !important; }
            .amenity-grid { grid-template-columns: repeat(4, 1fr) !important; }
            .gallery-grid { grid-template-columns: repeat(3, 1fr) !important; }
            .gallery-item.large { grid-column: span 2 !important; grid-row: span 2 !important; }

            /* never split a tile across pages; keep headers with their content */
            .advantage-card, .use-card, .sustain-card, .amenity-item,
            .building-card, .gallery-item, .location-feature,
            .data-strip-item, .holistic-item { break-inside: avoid; }
            .section-header { break-after: avoid; }
        }
