@page {
  margin: 15mm 12mm;
}

@media print {
  body {
    margin: 0;
    color: #000;
    background: none;
  }

  #main-content {
    margin: 0 auto;
  }

  .section-mb-1,
  .section-mb-2,
  .section-mb-3 {
    margin-bottom: 30px !important;
  }

  .print-header {
    margin: 0 0 8mm;
  }

  .print-header-logo {
    display: block;
    width: auto;
    height: 38px;
  }

  .print-header-rule {
    border: 0;
    border-bottom: 1px solid #000;
    width: 100%;
    margin: 4mm 0 0;
  }

  /* HOMEPAGE SPECIFIC PRINT STYLES */
  #homepage {
    .homepage-hero {
      min-height: auto !important;
      background: none;
      color: #000;
      margin: 30px 0 50px;
      padding: 0;

      h1 {
        color: #000;
        font-size: 3rem !important;
        margin: 0 0 20px;
      }
    }

    .explore-panel-row > * {
      width: auto;
      margin: 0 auto;
      padding: 0;
    }

    .explore-panel-container {
      height: auto !important;
      max-height: none !important;
      background: none !important;
      color: #000;

      .h3 {
        color: #585858;
        font-size: 2rem !important;
      }

      .h4 {
        color: #585858;
        font-size: 1.25rem !important;
      }
    }
  }

  /* LIST PAGE SPECIFIC PRINT STYLES */
  #hero-section.listpage-hero {
    margin: 0;
    padding: 0;
    background: none;
    color: #000;

    h1 {
      color: #000;
    }

    .hero-text {
      margin: 0;
      padding: 0;
    }
  }

  main:not(#homepage) div.container:first-child,
  div.container:has(#reports-table_info) {
    margin: 0;
    padding: 0;
  }

  #reports-table_info {
    font-size: 1.5rem !important;
  }

  table#reports-table {
    th,
    td {
      font-size: 0.85rem !important;
    }

    td.dataTables_empty {
      font-size: 1.5rem !important;
    }
  }

  /* GLOBAL NON-HOME/LIST PRINT STYLES */
  main:not(#homepage, #list-view) {
    margin: 0;

    > .container {
      margin: 0;
    }
  }

  #details-view {
    .data-definition-section:first-of-type {
      margin: 50px 0 0;
    }

    .data-definition-heading {
      margin: 30px 0 15px;
    }
  }
}
