/* Lock-in the print dialog settings */
@page {
  size: letter portrait;
  margin-top: 0.5in !important;
  margin-bottom: 0.5in !important;
  margin-left: 0.5in !important;
  margin-right: 0.5in !important;
}

/* Exclude from print */
.print-display--none {
  display: none !important;
}

#page-boundry {
  box-sizing: border-box;
  transform-origin: top left;
  font-size: 9pt;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  print-color-adjust: exact;
  -webkit-print-color-adjust: exact;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Make content spacing consistent with font size */
#page-boundry :where(.is-layout-flow) > * {
  margin-block-start: 1rem;
}

#page-boundry section {
  page-break-before: always;
  break-before: always;
  page-break-after: always;
  break-after: always;
  margin-block-start: 0;
}

/* Prevent adding a new page before the first section */
#page-boundry > section:last-child {
  page-break-after: avoid;
  break-after: avoid;
}

/* Prevent adding a new page after the last section */
#page-boundry > section:first-child {
  page-break-before: avoid;
  break-before: avoid;
}

#page-boundry section.break-before--avoid {
  margin-block-start: 3rem;
}

/* Content breaking rules */
.break-before--avoid { break-before: avoid !important; }
.break-before--always { page-break-before: always !important; break-before: page !important; }
.break-before--avoid-page { break-before: avoid-page !important; }

.break-inside--avoid { break-inside: avoid !important; }
.break-inside--always { break-inside: always !important; }
.break-inside--avoid-page { break-inside: avoid-page !important; }

.break-after--avoid { break-after: avoid !important; }
.break-after--always { page-break-after: always !important; break-after: page !important; }
.break-after--avoid-page { break-after: avoid-page !important; }