@media print {
    /* hide non-essential UI */
    .noise,
    .cursor-ring,
    .scroll-progress,
    .bg-shapes,
    #particleCanvas,
    .preloader,
    .nav,
    .mobile-menu,
    .hero-grid,
    .hero-orb,
    .hero-glow,
    .hero-dots,
    .hero-vignette,
    .hero-scroll,
    .back-to-top,
    .footer-socials,
    .marquee-wrap,
    .divider,
    .status-pulse {
        display: none !important;
    }

    /* reset colors for paper */
    :root {
        --bg-deep: #fff;
        --bg-primary: #fff;
        --bg-secondary: #fff;
        --bg-tertiary: #f5f5f5;
        --text-primary: #111;
        --text-secondary: #444;
        --text-muted: #777;
        --accent: #D45A0A;
        --glass-border: #ddd;
    }

    * {
        color: #111 !important;
        background: transparent !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    body {
        font-size: 11pt;
        line-height: 1.5;
        background: #fff !important;
    }

    /* hero adjustments */
    .hero {
        min-height: auto;
        padding: 40px 0 20px;
    }

    .hero-title {
        font-size: 28pt;
        line-height: 1.2;
    }

    .hero-line {
        opacity: 1 !important;
        transform: none !important;
        animation: none !important;
    }

    .hero-line.accent {
        background: none !important;
        -webkit-text-fill-color: #D45A0A !important;
    }

    .hero-sub {
        opacity: 1 !important;
        transform: none !important;
    }

    .hero-ctas {
        display: none;
    }

    /* ensure all content is visible */
    .reveal {
        opacity: 1 !important;
        transform: none !important;
    }

    /* section spacing */
    section {
        padding: 20px 0;
        page-break-inside: avoid;
    }

    /* cards: border only */
    .service-card,
    .landmark-card,
    .why-card,
    .stat-card {
        border: 1px solid #ddd !important;
        padding: 16px;
        break-inside: avoid;
    }

    .service-card::before,
    .landmark-card::before,
    .why-card::before {
        background: #D45A0A !important;
    }

    .service-card::after,
    .landmark-card::after,
    .why-card::after {
        display: none !important;
    }

    /* gradient text → solid for print */
    .gradient-text {
        background: none !important;
        -webkit-text-fill-color: #D45A0A !important;
        color: #D45A0A !important;
    }

    /* tech stack: list instead of marquee */
    .tech {
        page-break-before: always;
    }

    /* grids: simpler layouts */
    .services-grid,
    .landmarks,
    .why-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
    }

    /* links: show URL */
    a[href^="mailto"]::after,
    a[href^="tel"]::after {
        content: none;
    }

    /* contact: hide form, show info */
    .form-card {
        display: none;
    }

    /* footer */
    .footer {
        border-top: 1px solid #ddd;
        padding: 12px 0;
    }

    .footer-copy,
    .footer-tag {
        color: #777 !important;
    }

    /* availability section */
    .availability-inner {
        border: 1px solid #ddd;
        background: none !important;
    }

    .status-text {
        color: #111 !important;
    }
}
