@page {
  size: A4;
  margin: 16mm;
}
body {
  color: #000;
  background: #fff !important;
  font:
    10pt/1.45 Arial,
    sans-serif;
}
body .site-header,
body .site-footer,
body .breadcrumb,
body .article-aside,
body .related-section,
body .toc,
.skip-link,
.calc-actions,
.calc-cta,
.compare-link,
.table-hint,
.reset-calculation,
.menu-toggle,
.toast,
dialog,
.help-banner,
button,
.hero-copy,
.source-note .icon {
  display: none !important;
}
main,
.container,
.article-layout,
.wide-article {
  width: 100% !important;
  max-width: none !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}
.page-heading {
  padding: 0 0 16px !important;
}
.page-heading h1 {
  font-size: 22pt;
}
.page-heading p {
  font-size: 10pt;
}
.page-heading .eyebrow {
  display: none;
}
body.print-tool .page-heading p {
  display: none;
}
body.print-tool .article-main > :not(.article-calculator) {
  display: none !important;
}
.home main > :not(.home-hero) {
  display: none !important;
}
.product-calculator,
.calculator {
  padding: 15px !important;
  border: 1px solid #888;
  border-radius: 0;
  max-width: none;
}
.product-calc-heading {
  margin-bottom: 12px;
}
.product-calc-heading h2 {
  font-size: 16pt;
}
.product-select {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.product-select select {
  width: 60%;
}
.product-field,
.field-main {
  margin-top: 8px;
}
.number-control input,
.amount-input input {
  font-size: 19pt;
  min-height: 28px;
}
.product-results,
.calc-results {
  margin-top: 8px;
  padding-top: 12px;
}
input[type='range'],
.range-labels,
.term-presets,
.date-options {
  display: none !important;
}
input,
select {
  border: 0 !important;
  background: none !important;
  color: #000 !important;
  appearance: none;
}
.total-row {
  margin-top: 10px;
  padding-top: 10px;
}
.total-row strong {
  font-size: 21pt;
}
.monthly-payment {
  margin-bottom: 10px;
  padding-bottom: 10px;
}
.monthly-payment strong {
  font-size: 23pt;
}
.monthly-payment p {
  font-size: 8pt;
}
.payment-summary {
  font-size: 8pt;
}
.print-version {
  display: block !important;
  margin-top: 10px;
  font-size: 9pt;
}
.calc-note {
  margin-top: 10px;
  font-size: 8pt;
}
.schedule-details::details-content,
.assumptions::details-content {
  content-visibility: visible;
}
.schedule-details,
.schedule-details .table-scroll,
.term-comparison .table-scroll {
  overflow: visible;
}
.schedule-details {
  margin-top: 15px;
  padding-top: 10px;
}
.schedule-details summary {
  font-size: 9pt;
  min-height: 25px;
  list-style: none;
}
.schedule-details table {
  min-width: 0;
  font-size: 8pt;
}
.schedule-details th,
.schedule-details td {
  padding: 6px;
}
.term-comparison table {
  min-width: 0;
  font-size: 8pt;
}
.term-choice {
  display: block !important;
  border: 0;
  color: #000 !important;
  background: none !important;
  min-height: 0;
  padding: 0;
  font-size: inherit;
}
.term-choice span {
  display: none;
}
.table-scroll {
  overflow: visible;
}
.product-table {
  min-width: 0;
}
.product-table thead {
  display: table-header-group;
}
.product-table tbody {
  display: table-row-group;
}
.product-table tbody tr {
  display: table-row;
  height: auto;
}
.product-table tbody th,
.product-table tbody td {
  display: table-cell;
  min-width: 0;
  font-size: 9pt;
  padding: 10px;
  border-bottom: 1px solid #999;
}
.product-table td::before {
  display: none;
}
.assumption-fields {
  display: grid !important;
  gap: 8px;
}
.assumption-fields input {
  padding: 3px;
  min-height: 26px;
}
.prose-section {
  break-inside: avoid;
}
.prose-section h2 {
  font-size: 15pt;
}
.prose-section p,
.prose-section li {
  font-size: 10pt;
}
.source-note {
  font-size: 8pt;
}
