/* =========================================================================
   IMD Logic Enterprise — Print stylesheet
   Tuned so the Corporate Capabilities page saves cleanly as a PDF from the
   browser's "Print → Save as PDF" dialog.
   ========================================================================= */

@page {
  size: Letter portrait;
  margin: 0.6in 0.65in 0.75in;
}

@media print {

  /* ---- Reset the shell ------------------------------------------------ */
  html, body {
    background: #fff !important;
    color: #111 !important;
    font-size: 10.5pt;
    line-height: 1.45;
  }

  body { margin: 0; }

  .imd-header,
  .imd-mobile-nav,
  .imd-nav-toggle,
  .imd-skip-link,
  .imd-footer__cols,
  .imd-footer__legal,
  .imd-cta,
  .imd-btn,
  .imd-btn-row,
  .imd-breadcrumbs,
  .imd-pagination,
  .imd-jobs-filter,
  .imd-form,
  .imd-panel--form,
  .imd-hero__visual,
  .imd-viz,
  form,
  #wpadminbar,
  .imd-noprint {
    display: none !important;
  }

  .imd-print-only { display: block !important; }

  /* ---- Layout --------------------------------------------------------- */
  .imd-container,
  .imd-container--wide,
  .imd-container--narrow {
    max-width: none !important;
    width: auto !important;
    padding: 0 !important;
    margin: 0 !important;
  }

  .imd-section,
  .imd-pagehero,
  .imd-hero {
    padding-block: 14pt !important;
    background: none !important;
    color: #111 !important;
  }
  .imd-section::before, .imd-section::after,
  .imd-pagehero::before, .imd-pagehero::after,
  .imd-hero::before, .imd-hero::after { display: none !important; }

  .imd-section--navy, .imd-section--dark, .imd-section--gray, .imd-section--tint {
    background: none !important;
    border-top: 0.75pt solid #ccc;
  }
  .imd-section--navy *, .imd-section--dark * { color: #111 !important; }

  .imd-grid, .imd-split, .imd-steps, .imd-facts, .imd-post-list {
    display: block !important;
  }
  .imd-grid > *, .imd-split > *, .imd-steps > * { margin-bottom: 12pt; }

  /* ---- Typography ----------------------------------------------------- */
  h1, h2, h3, h4, h5, h6 { color: #0B1A2D !important; page-break-after: avoid; break-after: avoid; }
  h1 { font-size: 21pt; margin: 0 0 8pt; }
  h2 { font-size: 15pt; margin: 16pt 0 6pt; padding-bottom: 4pt; border-bottom: 1pt solid #29ABE2; }
  h3 { font-size: 12pt; margin: 11pt 0 4pt; }
  h4 { font-size: 10.5pt; margin: 9pt 0 3pt; }
  p, li { orphans: 3; widows: 3; }
  p { margin: 0 0 7pt; }
  ul, ol { margin: 0 0 8pt; padding-left: 15pt; }
  li { margin-bottom: 2pt; }

  /* Pages built from blocks carry the is-style-* class names, so every print
     rule below matches both the template class and its block-style twin. */
  .imd-lead,
  .is-style-imd-lead,
  .imd-pagehero__lead {
    font-size: 11.5pt;
    color: #333 !important;
    max-width: none;
  }
  .imd-eyebrow,
  .is-style-imd-eyebrow,
  .imd-pagehero__eyebrow {
    color: #0A6FA8 !important; font-size: 8pt; letter-spacing: 0.1em;
  }
  .is-style-imd-eyebrow { border-bottom: 0 !important; padding-bottom: 0 !important; }
  .imd-rule { background: #29ABE2 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }

  /* ---- Surfaces ------------------------------------------------------- */
  .imd-card, .imd-pillar, .imd-panel, .imd-notice,
  .is-style-imd-card, .is-style-imd-panel {
    background: none !important;
    border: 0.75pt solid #d5d5d5 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    padding: 9pt 11pt !important;
    page-break-inside: avoid; break-inside: avoid;
    transform: none !important;
  }
  .imd-pillar::before { display: none !important; }
  .is-style-imd-rule { background: #29ABE2 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  /* Columns stack in print so nothing is squeezed into an unreadable width. */
  .wp-block-columns { display: block !important; }
  .wp-block-column { width: 100% !important; flex-basis: auto !important; margin-bottom: 10pt; }
  .imd-icon { display: none !important; }

  .imd-tag,
  ul.is-style-imd-taglist li {
    background: none !important; border: 0.5pt solid #bbb !important;
    border-radius: 0 !important; padding: 1pt 5pt; font-size: 8.5pt;
  }
  .imd-taglist, ul.is-style-imd-taglist { gap: 3pt 4pt; }

  /* Replace the tinted circle-and-tick with a plain bullet: it prints
     cleanly in black and white and uses no ink on backgrounds. */
  .imd-checklist li,
  ul.is-style-imd-checklist li { padding-left: 12pt; }
  .imd-checklist li::before,
  ul.is-style-imd-checklist li::before { display: none; }
  .imd-checklist li::after,
  ul.is-style-imd-checklist li::after {
    content: "\2022"; position: absolute; left: 2pt; top: 0;
    width: auto; height: auto; border: 0; transform: none; color: #0A6FA8;
  }

  .imd-step::after { color: #0A6FA8 !important; background: #fff !important; }
  .imd-step::before { background: #ddd !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }

  /* ---- Links: show destinations, but not for internal anchors --------- */
  a { color: #0A6FA8 !important; text-decoration: none; }
  a[href^="http"]::after {
    content: " (" attr(href) ")";
    font-size: 8pt; color: #666; word-break: break-all;
  }
  a[href^="#"]::after,
  a[href^="mailto:"]::after,
  .imd-brand a::after,
  .imd-footer a::after { content: ""; }

  img { max-width: 100% !important; page-break-inside: avoid; break-inside: avoid; }

  /* ---- Print-only masthead & footer ----------------------------------- */
  .imd-print-header {
    display: flex !important;
    align-items: center; justify-content: space-between;
    gap: 12pt; padding-bottom: 8pt; margin-bottom: 14pt;
    border-bottom: 1.5pt solid #0B1A2D;
  }
  .imd-print-header img { height: 34pt; width: auto; }
  .imd-print-header__meta { text-align: right; font-size: 8.5pt; color: #555; line-height: 1.4; }
  .imd-print-header__meta strong { display: block; color: #0B1A2D; font-size: 10pt; }

  .imd-footer {
    background: none !important; color: #444 !important;
    padding: 10pt 0 0 !important; margin-top: 16pt;
    border-top: 0.75pt solid #ccc; font-size: 8.5pt;
  }
  .imd-footer a { color: #0A6FA8 !important; }
  .imd-footer__top { display: block !important; }
  .imd-footer__brand img { display: none; }
  .imd-footer__bottom { border: 0; margin: 0; padding: 4pt 0 0; display: block; }

  .imd-page-break { page-break-before: always; break-before: page; }
  .imd-avoid-break { page-break-inside: avoid; break-inside: avoid; }
}

/* Hidden on screen, revealed by the print block above */
.imd-print-only,
.imd-print-header { display: none; }
