/* Only used by WZ Exposé pages. */
.wz-expose-print-brand { display: none; }
.wz-expose-actions { margin: 0 0 24px; }
.wz-expose-actions-bottom { margin: 32px 0 0; }
.wz-expose .wz-expose-print-button {
    border: 1px solid #b5121b;
    border-radius: 3px;
    padding: 10px 16px;
    background: #b5121b;
    color: #fff;
    font: inherit;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
}
.wz-expose .wz-expose-print-button:hover { background: #8f0e15; border-color: #8f0e15; color: #fff; }
.wz-expose .wz-expose-print-button:focus-visible { outline: 3px solid #2271b1; outline-offset: 3px; }
.wz-expose .wz-expose-print-button:disabled { cursor: wait; opacity: .7; }
.wz-expose-print-status { display: block; font-size: 14px; margin-top: 8px; }
.wz-expose-print-status:empty { display: none; }
@page { size: A4 portrait; margin: 15mm; }
@media print {
    html:has(body.single-wz_expose), body.single-wz_expose {
        margin: 0 !important; padding: 0 !important;
        background: white !important; color: #222 !important;
    }
    /* Keep the content and its ancestors; remove theme and admin UI. */
    body.single-wz_expose *:not(.wz-expose):not(.wz-expose *):not(:has(.wz-expose)) {
        display: none !important;
    }
    body.single-wz_expose :has(.wz-expose) {
        width: auto !important; max-width: none !important;
        margin: 0 !important; padding: 0 !important;
        overflow: visible !important; position: static !important;
        background: white !important; box-shadow: none !important;
    }
    .wz-expose {
        width: 100% !important; max-width: none !important;
        margin: 0 !important; padding: 0 !important;
    }
    .wz-expose .wz-expose-actions { display: none !important; }
    .wz-expose .wz-expose-print-brand { display: block; margin-bottom: 8mm; }
    .wz-expose-print-brand img { width: 58mm; height: auto; }
    .wz-expose article, .wz-expose .wp-block-group {
        font: 10.5pt/1.45 Arial, sans-serif !important;
        color: #222 !important; background: white !important;
        max-width: none !important;
    }
    .wz-expose :is(h1,h2,h3) {
        font-family: Arial, sans-serif !important;
        line-height: 1.2 !important; color: #222 !important;
        break-after: avoid-page; page-break-after: avoid;
        margin: 0 0 5mm !important;
    }
    .wz-expose h1 { font-size: 22pt !important; }
    .wz-expose h2 { font-size: 18pt !important; break-before: page; }
    .wz-expose h3 { font-size: 14pt !important; margin-top: 5mm !important; }
    .wz-expose h3:has(+ .wp-block-image) { break-before: page; margin-top: 0 !important; }
    .wz-expose p { margin: 0 0 4mm !important; orphans: 3; widows: 3; }
    .wz-expose figure { margin: 0 0 5mm !important; }
    .wz-expose .wp-block-image {
        break-inside: avoid-page; page-break-inside: avoid;
        text-align: center;
    }
    .wz-expose .wp-block-image img {
        display: block; width: auto !important; height: auto !important;
        max-width: 100% !important; max-height: 225mm !important;
        margin: 0 auto; object-fit: contain !important;
    }
    .wz-expose article > .wp-block-image:first-of-type img,
    .wz-expose article > .wp-block-group > .wp-block-image:first-of-type img {
        max-height: 110mm !important;
    }
    .wz-expose .wp-block-gallery {
        display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr));
        gap: 4mm !important; align-items: start;
        break-inside: auto;
    }
    .wz-expose .wp-block-gallery figure.wp-block-image:not(#individual-image) {
        width: 100% !important; margin: 0 !important;
        min-width: 0; align-self: start;
    }
    .wz-expose .wp-block-gallery .wp-block-image img {
        max-height: 67mm !important; width: auto !important;
    }
    .wz-expose .wp-block-table { font-size: 9pt !important; margin: 0 0 5mm !important; overflow: visible !important; }
    .wz-expose .wp-block-table table { table-layout: fixed; border-collapse: collapse; }
    .wz-expose .wp-block-table :is(td,th) {
        border: .2mm solid #b9b9b9; padding: 1.6mm 2mm !important;
        line-height: 1.3 !important; height: auto;
    }
    .wz-expose .wp-block-table tr { break-inside: avoid-page; }
    .wz-expose .wp-block-table td:first-child { width: 42%; }
    .wz-expose a { color: inherit; text-decoration: none; }
    .wz-expose a::after { content: none !important; }
}

/* These wrappers do not alter the online presentation. */
.wz-print-cover-facts, .wz-print-contact { display: contents; }
.wz-print-photo-heading { display: none; }
@media print {
    .wz-expose-print-brand img { margin: 0 !important; }
    .wz-expose .wz-print-cover-facts {
        display: grid; grid-template-columns: 1fr 1fr; gap: 3mm 7mm;
        margin-top: 7mm; padding-top: 5mm; border-top: .3mm solid #bbb;
        break-inside: avoid-page;
    }
    .wz-expose .wz-print-cover-facts p { margin: 0 !important; font-size: 11pt; }
    .wz-expose .wz-print-duplicate-type { display: none !important; }
    .wz-expose .wz-print-address {
        grid-column: 1 / -1; grid-row: 1; font-size: 15pt !important; font-weight: 600;
    }
    .wz-expose .wz-print-price {
        grid-column: 1 / -1; font-size: 18pt !important; font-weight: 700; padding-top: 3mm;
    }
    .wz-expose .wz-print-commission { grid-column: 1 / -1; font-size: 9pt !important; }
    .wz-expose .wz-print-photo-heading { display: block; break-before: page; margin-top: 0 !important; }
    .wz-expose .wz-print-contact { display: block; break-inside: avoid-page; margin-top: 7mm; border-top: .3mm solid #bbb; padding-top: 5mm; }
    .wz-expose .wz-print-contact h2 { break-before: auto; font-size: 14pt !important; }
    .wz-expose .wz-print-before-contact img { max-height: 185mm !important; }
}
