/* Lending reference pages: dense figure tables that stay readable on a phone. */
.ref-hero { padding: clamp(2rem, 4vw, 3rem) 0; }
.ref-hero h1 { margin-bottom: 0; }
.ref-breadcrumb { font-size: .9rem; margin-bottom: .75rem; color: #dbe7f3; }
.ref-breadcrumb a { color: #ffffff; text-decoration: underline; text-underline-offset: 3px; }

.ref-page { padding: 2.5rem 0 1rem; color: #1f2d3d; }
.ref-page a { color: #1a365d; text-decoration: underline; text-underline-offset: 3px; }
.ref-page a:hover { color: #2d6f7f; }

.ref-lead { max-width: 52rem; }
.ref-lead > p { font-size: 1.1rem; line-height: 1.7; margin-bottom: 1rem; }

.ref-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 1.5rem 0 0; background: #ffffff; border: 1px solid #dbe3ec; border-radius: 12px; overflow: hidden; }
.ref-facts > div { padding: 1rem 1.25rem; border-bottom: 1px solid #e7edf3; }
.ref-facts > div:nth-child(odd) { border-right: 1px solid #e7edf3; }
.ref-facts dt { font-size: .85rem; color: #526070; margin-bottom: .25rem; }
.ref-facts dd { margin: 0; font-weight: 600; color: #1a365d; line-height: 1.45; }

.ref-section { margin: 3rem 0; }
.ref-section h2 { color: #1a365d; font-family: Poppins, sans-serif; font-size: clamp(1.35rem, 2.2vw, 1.7rem); font-weight: 600; line-height: 1.3; margin-bottom: .75rem; }
.ref-section h3 { color: #1a365d; font-size: 1.15rem; font-weight: 700; margin: 2rem 0 .5rem; }
.ref-section > p { max-width: 48rem; line-height: 1.65; color: #455365; margin-bottom: 1rem; }

.ref-table-wrap { overflow-x: auto; background: #ffffff; border: 1px solid #dbe3ec; border-radius: 12px; margin: 1rem 0; }
.ref-table-wrap:focus-visible { outline: 3px solid #eab308; outline-offset: 2px; }
.ref-table-narrow { max-width: 30rem; }
.ref-table { width: 100%; border-collapse: collapse; font-size: .95rem; }
.ref-table caption { caption-side: top; text-align: left; padding: .9rem 1rem .6rem; font-weight: 600; color: #1a365d; }
.ref-table th, .ref-table td { padding: .6rem 1rem; border-top: 1px solid #e7edf3; text-align: left; vertical-align: top; }
.ref-table thead th { background: #f5f7fa; color: #334155; font-size: .85rem; font-weight: 600; white-space: nowrap; }
.ref-table tbody th { font-weight: 600; color: #1a365d; white-space: nowrap; }
.ref-table-grid td { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.ref-table-grid thead th:not(:first-child) { text-align: right; }
.ref-table-grid tbody th { position: sticky; left: 0; background: #ffffff; }
.ref-table-grid thead th:first-child { position: sticky; left: 0; z-index: 1; }
.ref-table-rules td { min-width: 16rem; }
.ref-table-files td:last-child { min-width: 18rem; color: #455365; }
.ref-held { color: #8a5800; font-weight: 600; }
.ref-table-grid td.ref-date { color: #526070; }

.ref-source { font-size: .88rem; color: #526070; line-height: 1.6; margin: .5rem 0 1rem; max-width: 52rem; }
.ref-callout { background: rgba(234, 179, 8, .1); border-left: 4px solid #eab308; border-radius: 0 8px 8px 0; padding: .9rem 1rem; color: #3b3627; line-height: 1.6; max-width: 52rem; margin: 1rem 0; }

.ref-examples { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.ref-example { background: #ffffff; border: 1px solid #dbe3ec; border-radius: 12px; padding: 1.25rem; }
.ref-section .ref-example h3 { margin: 0 0 .75rem; font-size: 1.05rem; }
.ref-lines { width: 100%; border-collapse: collapse; }
.ref-lines th, .ref-lines td { padding: .55rem 0; border-top: 1px solid #e7edf3; vertical-align: top; text-align: left; }
.ref-lines th { font-weight: 600; color: #1a365d; padding-right: 1rem; }
.ref-lines td { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.ref-basis { display: block; font-weight: 400; font-size: .85rem; color: #526070; line-height: 1.5; margin-top: .2rem; }
.ref-total th, .ref-total td { font-weight: 700; border-top: 2px solid #1a365d; }
.ref-check { font-size: .85rem; color: #526070; margin: .75rem 0 0; line-height: 1.5; }

.ref-questions { max-width: 52rem; }
.ref-section .ref-questions h3 { font-size: 1.05rem; margin: 1.5rem 0 .4rem; }
.ref-questions p { line-height: 1.65; color: #455365; }

.ref-sources, .ref-plain-list, .ref-link-list { list-style: disc; padding-left: 1.25rem; line-height: 1.65; max-width: 52rem; color: #455365; }
.ref-sources li, .ref-plain-list li { margin-bottom: .5rem; overflow-wrap: anywhere; }
.ref-link-list li { margin-bottom: .25rem; }
.ref-link-list a { display: inline-flex; align-items: center; min-height: 44px; }

.ref-page .blog-disclaimer p + p, .ref-page .blog-disclaimer ul { margin-top: .5rem; }
.ref-page .blog-disclaimer ul { list-style: disc; padding-left: 1.25rem; }

@media (max-width: 767px) {
    .ref-facts { grid-template-columns: 1fr; }
    .ref-facts > div:nth-child(odd) { border-right: 0; }
    .ref-examples { grid-template-columns: 1fr; }
    .ref-table th, .ref-table td { padding: .55rem .75rem; }
    .ref-table-rules td { min-width: 12rem; }
}
