/* Explain: Print-friendly stylesheet for optimized paper output. */
/* Print-friendly stylesheet — clean, readable, paper-optimized layout */
@media print {
    @page {
        margin: 1.5cm;
    }

    html,
    body {
        background: #ffffff !important;
        color: #000000 !important;
    }

    body {
        background: #ffffff !important;
    }

    /* Hide interactive chrome and screen-only controls */
    .site-header,
    .mobile-eval-bar,
    .print-toolbar,
    .evaluation-overlay,
    nav,
    .orb,
    .portrait-shade,
    .btn,
    button {
        display: none !important;
    }

    /* Interactive forms are not meaningful on paper */
    .tax-estimator-form,
    #evaluationForm,
    #overlayEvaluationForm {
        display: none !important;
    }

    /* Flatten glassy / decorative surfaces */
    .glass-panel,
    .arch-frame,
    .service-card,
    .area-card,
    .detail-card,
    .tax-estimator,
    .evaluation-form,
    .tax-estimator-result,
    .hero-split,
    .contact-section,
    footer {
        background: #ffffff !important;
        border: 1px solid #cccccc !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
    }

    .hero-split {
        min-height: 0 !important;
    }

    .print-document-main {
        padding-top: 0 !important;
    }

    .arch-frame::after {
        display: none !important;
    }

    /* Media frames: no fixed heights that clip content */
    .arch-frame-large,
    .arch-frame-medium,
    .arch-frame-small,
    .area-image-wrap {
        height: auto !important;
        min-height: 0 !important;
        max-width: 100% !important;
        border-radius: 0.75rem !important;
    }

    img {
        max-width: 100% !important;
    }

    /* Keep headings with their content */
    h1,
    h2,
    h3 {
        break-after: avoid;
        page-break-after: avoid;
    }

    /* Never split cards or articles across pages */
    .service-card,
    .area-card,
    .detail-card,
    .tax-estimator,
    article,
    figure {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    section {
        padding-top: 1.25rem !important;
        padding-bottom: 1.25rem !important;
    }

    /* Footer stays readable on paper */
    footer {
        border-radius: 0 !important;
        color: #333333 !important;
    }

    footer a,
    footer span,
    footer p {
        color: #333333 !important;
    }
}