/* Screen: hide print-only elements */
.print-window-card { display: none; }

@media print {

    @page { size: A4 portrait; margin: 1.2cm 1.4cm; }

    /* ── Site chrome ─────────────────────────────────────────── */
    .sidebar, .topbar, .bottomnav, .nav-overlay,
    .site-footer, .cookie-banner, .a2hs-banner { display: none !important; }

    .main-content,
    .container { margin-left: 0 !important; padding-left: 0 !important; }

    /* ── Cover image: hidden ─────────────────────────────────── */
    .biz-cover { display: none !important; }

    /* ── Biz header ──────────────────────────────────────────── */
    .biz-header { margin-bottom: 0 !important; }

    /* ── Interactive / social elements ──────────────────────── */
    .no-print,
    .biz-header__actions,
    .biz-social-proof,
    .biz-local-proof,
    [data-support-type],
    .setup-nudge,
    .biz-quickinfo,
    .biz-goers,
    .biz-layout,
    .biz-cover--video,
    .biz-header__name .biz-badge { display: none !important; }

    /* ── Print window card ───────────────────────────────────── */
    .print-window-card {
        display: block !important;
        padding-top: 1.2rem;
        margin-top: .4rem;
        border-top: 1px solid #e0e0e0;
    }

    /* Two-column grid */
    .print-window-card__grid {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 2.5rem;
        align-items: start;
    }

    /* Section heading */
    .print-window-card__heading {
        font-size: .62rem;
        text-transform: uppercase;
        letter-spacing: .14em;
        color: #666;
        font-weight: 700;
        margin: 0 0 .8rem;
        padding-bottom: .4rem;
        border-bottom: 1px solid #ddd;
    }
    .print-window-card__heading--gap { margin-top: 1.2rem; }

    /* ── Opening hours: centred within column ────────────────── */
    .print-window-card__col:first-child {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .print-window-card__col:first-child .print-window-card__heading {
        width: 100%;
        align-self: stretch;
    }
    .print-hours { border-collapse: collapse; width: auto; }
    .print-hours td {
        padding: .32rem 1.2rem .32rem 0;
        font-size: 1.05rem;
        vertical-align: middle;
        color: #333;
        white-space: nowrap;
    }
    .print-hours td:first-child {
        font-weight: 500;
        color: #777;
        padding-right: 1.2rem;
    }
    .print-hours--today td            { font-weight: 800; color: #000 !important; }
    .print-hours--today td:first-child { color: #000 !important; }

    /* ── Address / contact ───────────────────────────────────── */
    .print-address {
        font-style: normal;
        font-size: .98rem;
        line-height: 1.7;
        margin: 0;
        color: #111;
    }
    .print-window-card__col p {
        margin: .3rem 0;
        font-size: .98rem;
        line-height: 1.5;
        color: #111;
    }

    /* ── Food hygiene ────────────────────────────────────────── */
    .print-fhrs-img  { display: block; height: 50px; width: auto; margin: .1rem 0 .3rem; }
    .print-fhrs-date { font-size: .78rem !important; color: #777 !important; margin: 0 !important; }

    /* ── Footer: JustVybe left · QR right ───────────────────── */
    .print-window-card__footer {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 1.5rem;
        margin-top: 1rem;
        padding-top: 1rem;
        border-top: 1px solid #d8d8d8;
        break-before: avoid;
        page-break-before: avoid;
    }
    .print-justvybe { flex: 1; }
    .print-justvybe__wordmark {
        font-family: 'Audiowide', sans-serif;
        font-size: 2.4rem;
        font-weight: 400;
        letter-spacing: .04em;
        color: #000;
        line-height: 1;
        margin: 0 0 .45rem;
    }
    .print-justvybe__strapline {
        font-size: .8rem;
        color: #7c5cfc;
        line-height: 1.4;
        margin: 0;
        max-width: 26ch;
    }
    .print-qr-block  { flex-shrink: 0; text-align: center; }
    .print-qr-img    { display: block; width: 130px; height: 130px; margin: 0 auto .35rem; }
    .print-justvybe__scan {
        font-size: .75rem !important;
        font-weight: 500 !important;
        color: #444 !important;
        margin: 0 0 .1rem !important;
    }
    .print-justvybe__url {
        font-size: .68rem !important;
        color: #bbb !important;
        margin: 0 !important;
        letter-spacing: .02em !important;
    }

    /* ── Typography ──────────────────────────────────────────── */
    body { color: #000 !important; background: #fff !important; }
    a    { color: #111 !important; text-decoration: none !important; }

}
