/* Page box and margins (supported in Chrome/Edge) */
@page { size: A4; margin: 14mm 14mm 18mm 14mm; }

@media print {
    /* Hide site chrome */
    .site-header, .site-footer, .sidebar, .cookie-banner, .share, .buttons, nav, .wpadminbar { display: none !important; }

    /* Content width and base typography */
    html, body { height: auto !important; }
    body { font: 12pt/1.45 "DejaVu Sans", Arial, sans-serif !important; color: #111 !important; -webkit-print-color-adjust: exact !important; print-color-adjust: exact !important; }
    h1, h2, h3 { margin: 0 0 8pt !important; line-height: 1.25 !important; }
    h1 { font-size: 20pt !important; }
    h2 { font-size: 14pt !important; margin-top: 14pt !important; page-break-after: avoid !important; }
    h3 { font-size: 12pt !important; margin-top: 10pt !important; color: #333 !important; }
    p { margin: 0 0 8pt !important; }
    ul, ol { margin: 0 0 8pt 14pt !important; }
    h2 + p, h2 + ul, h2 + ol { page-break-before: avoid !important; }
    .small { font-size: 10pt !important; }
    .muted { color: #666 !important; }

    /* Fixed header/footer to mimic Dompdf */
    .pdf-header { height: 8mm !important; font: 10pt/1.2 "DejaVu Sans", Arial, sans-serif !important; color: #666 !important; }

    /* Layout helpers */
    .section { margin: 12pt 0 14pt !important; }
    .block { margin-bottom: 12pt !important; }
    .avoid-break { page-break-inside: avoid !important; }
    .page-break { page-break-after: always !important; }

    /* Intro grid and contact cards (table-based like in Dompdf) */
    .intro__meta { margin-bottom: 6pt !important; font-size: 10pt !important; color: #444 !important; }
    .intro__grid { width: 100% !important; border-collapse: collapse !important; }
    .intro__left { width: 65% !important; vertical-align: top !important; padding-right: 10pt !important; }
    .intro__right { width: 35% !important; vertical-align: top !important; }
    .intro__tags { margin: 4pt 0 6pt !important; color: #333 !important; }

    .contact-card { border: 0.3mm solid #ddd !important; padding: 8pt !important; page-break-inside: avoid !important; }
    .contact-row { display: table !important; width: 100% !important; }
    .contact-col { display: table-cell !important; vertical-align: top !important; }
    .contact-col--img { width: 64pt !important; }
    .contact-img { width: 64pt !important; height: 64pt !important; object-fit: cover !important; border-radius: 2pt !important; }
    .contact-name { font-weight: bold !important; margin-bottom: 2pt !important; }

    /* Benefits */
    .job-points__list { list-style: none !important; padding: 0 !important; margin: 0 !important; }
    .job-points__listIcon { margin: 0 0 6pt !important; display: table !important; }
    .job-points__listIconSVG { width: 18pt !important; height: 18pt !important; margin-right: 6pt !important; display: inline-block !important; }

    /* Salary */
    .salary { border: 0.3mm solid #ddd !important; padding: 8pt !important; page-break-inside: avoid !important; }
    .salary__row { display: table !important; width: 100% !important; }
    .salary__cell { display: table-cell !important; vertical-align: top !important; }

    /* Contacts */
    .contacts { display: table !important; width: 100% !important; table-layout: fixed !important; }
    .contacts__col { display: table-cell !important; width: 50% !important; padding-right: 10pt !important; vertical-align: top !important; }
    .contacts__col:last-child { padding-right: 0 !important; }
    .contacts__title { margin-bottom: 6pt !important; }
}