/* ==========================================================================
   Loan pages (template-loan.php): Types of Loans hub + 14 loan pages.
   One block per flexible-content layout. Values measured from the Elementor pages
   (theme-redo/audit/measure-el); the container is the site-wide 1300px.
   ========================================================================== */

.loan .loan-h2 { font-weight: 600; font-size: 45px; line-height: 60px; margin: 0 0 20px; }
.loan .section--plain { background: var(--c-white); }
.loan-prose p { margin: 0 0 14px; }
.loan-prose > :last-child { margin-bottom: 0; }
.loan-prose { font-size: 18px; line-height: 27px; color: var(--c-text); }
.loan-after { font-size: 18px; line-height: 27px; margin: 20px 0 0; }

/* Imagify's picture-tag mode wraps non-WebP images in <picture> and moves the class onto it,
   so image rules below match img.class and picture.class > img alike. */
.loan picture { display: contents; }

/* Button with the uploaded arrow icon */
.loan-btn { align-self: flex-start; gap: 16px; padding: 9px 14px; min-height: 51px; font-size: 18px; line-height: 18px; }
.loan-btn__icon { width: 33px; height: auto; flex: 0 0 auto; }
.loan-btn.btn--light { color: var(--c-black); }
.loan-btn.btn--light:hover, .loan-btn.btn--light:focus-visible { background: var(--c-panel); color: var(--c-black); }

/* Tick list */
.loan-list { list-style: none; margin: 20px 0 0; padding: 0; font-size: 19px; line-height: 1.5; color: var(--c-text); }
.loan-list--small, .loan-benefits .loan-list { font-size: 17px; }
.loan-list:first-child { margin-top: 0; }
.loan-list li { display: flex; align-items: flex-start; gap: 8px; }
.loan-list li + li { margin-top: 15px; }
.loan-list__icon { flex: 0 0 21px; width: 21px; height: 21px; margin-top: 4px; }
.loan-list strong { font-weight: 700; }
.loan-list a { color: inherit; text-decoration: underline; }
.loan-list--on-dark { color: var(--c-white); }

/* ---------- Hero ---------- */
.loan-hero { position: relative; display: flex; align-items: flex-end; min-height: 668px; padding: 40px 0 115px; background: var(--c-charcoal); color: var(--c-white); overflow: hidden; }
:is(img.loan-hero__bg, picture.loan-hero__bg > img) { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; }
/* Approved contrast fix: the old hero had no overlay on desktop, so white text sat on bare photo. */
.loan-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(46, 46, 46, .55) 0%, rgba(46, 46, 46, .3) 45%, rgba(46, 46, 46, 0) 75%); }
.loan-hero .container { position: relative; z-index: 1; }
.loan-hero__title { max-width: 710px; margin: 0 0 20px; font-size: 60px; line-height: 75px; font-weight: 600; color: var(--c-white); }
.loan-hero__title--wide { max-width: none; }
.loan-hero__text { max-width: 641px; margin: 0 0 19px; font-size: 18px; line-height: 27px; }

/* ---------- Linked photo cards (hub) ---------- */
.loan-cards { padding: 90px 0 80px; }
.loan-cards .loan-h2 { line-height: 45px; margin-bottom: 50px; }
.loan-cards__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.loan-card { position: relative; display: flex; align-items: flex-end; min-height: 554px; padding: 20px 30px 30px 20px; border-radius: 20px; overflow: hidden; background: var(--c-black); color: var(--c-white); }
:is(img.loan-card__bg, picture.loan-card__bg > img) { position: absolute; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; }
.loan-card::after { content: ""; position: absolute; inset: 0; background: var(--c-black); opacity: 0; transition: opacity .4s; }
.loan-card:hover::after, .loan-card:focus-within::after { opacity: 1; }
.loan-card__body { position: relative; z-index: 1; width: 100%; }
.loan-card__title { margin: 0 0 20px; font-size: 30px; line-height: 30px; font-weight: 400; color: var(--c-white); }
.loan-card__link { color: inherit; text-decoration: none; }
.loan-card__link::after { content: ""; position: absolute; inset: 0; }
.loan-card__text { margin: 0 0 19px; font-size: 16px; line-height: 24px; }
.loan-card__more { display: flex; align-items: center; justify-content: space-between; margin: 0; font-size: 18px; font-weight: 500; line-height: 1; }
.loan-card__more img { width: 31px; height: 31px; }

/* ---------- Comparison table (hub) ---------- */
.loan-table { padding: 90px 0 0; }
.loan-table__scroll { overflow-x: auto; }
.loan-table__table { width: calc(100% + 40px); margin: 0 -20px; border-collapse: separate; border-spacing: 20px 0; table-layout: fixed; }
.loan-table__table thead th { padding: 0 0 20px; font-weight: 400; }
.loan-table__table thead th span { display: block; padding: 14px 10px 16px; border-radius: 15px; background: var(--c-charcoal); color: var(--c-white); font-family: var(--f-head); font-size: 24px; line-height: 24px; text-align: center; }
.loan-table__table tbody th, .loan-table__table tbody td { padding: 14px 22px; border-bottom: 1px solid transparent; background-clip: padding-box; font-family: var(--f-head); font-size: 19px; line-height: 19px; font-weight: 400; text-align: left; }
.loan-table__table tbody th { background-color: var(--c-green); color: var(--c-white); }
.loan-table__table tbody td { background-color: var(--c-white); color: var(--c-charcoal); }
.loan-table__table tbody tr:first-child > * { border-radius: 15px 15px 0 0; }
.loan-table__table tbody tr:last-child > * { border-bottom: 0; }
.loan-table--cols-4 thead th:nth-child(-n+2) { width: 33.333%; }

/* ---------- Image and text ---------- */
.loan-split { padding: 85px 0 75px; }
.loan-split .container { position: relative; z-index: 1; }
.loan-split__row { display: flex; align-items: stretch; }
.loan-split__media { flex: 0 0 50%; min-width: 0; }
.loan-split__text { flex: 0 0 50%; min-width: 0; display: flex; flex-direction: column; justify-content: center; padding-left: 50px; }
.loan-split--img-right .loan-split__media { order: 2; }
.loan-split--img-right .loan-split__text { padding-left: 0; padding-right: 30px; }
.loan-split--noimg .loan-split__text { flex-basis: 100%; padding: 0; }
:is(img.loan-split__img, picture.loan-split__img > img) { width: 100%; border-radius: 25px; }
.has-img-h :is(img.loan-split__img, picture.loan-split__img > img) { height: var(--img-h); object-fit: cover; }
.loan-split__decor { position: absolute; inset: 0; background: left center / contain no-repeat; }
/* two images side by side, offset up and down */
.loan-split--pair .loan-split__media { display: flex; gap: 20px; align-items: flex-start; margin-top: 20px; }
.loan-split--pair :is(img.loan-split__img, picture.loan-split__img > img) { flex: 1 1 0; min-width: 0; height: var(--img-h, 500px); object-fit: cover; margin-top: -21px; }
.loan-split--pair :is(img.loan-split__img--2, picture.loan-split__img--2 > img) { margin-top: 21px; }
/* large image with a framed image over its edge */
.loan-split--overlap .loan-split__media { position: relative; display: flex; align-items: center; }
.loan-split--overlap :is(img.loan-split__img, picture.loan-split__img > img) { width: calc(100% - 100px); margin-left: 100px; height: var(--img-h, 500px); object-fit: cover; border-radius: 0 25px 25px 0; }
.loan-split--overlap :is(img.loan-split__img--2, picture.loan-split__img--2 > img) { position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 269px; height: 394px; margin: 0; border: 9px solid var(--c-white); border-radius: 25px; box-shadow: 0 0 10px rgba(0, 0, 0, .17); }
/* one image filling its half to the viewport edge */
.loan-split--cover { padding: 0; }
.loan-split--cover .container { position: static; }
.loan-split--cover .loan-split__media { position: absolute; top: 0; bottom: 0; left: 0; width: 50%; }
.loan-split--cover.loan-split--img-right .loan-split__media { left: auto; right: 0; }
.loan-split--cover :is(img.loan-split__img, picture.loan-split__img > img) { width: 100%; height: 100%; object-fit: cover; border-radius: 0 25px 25px 0; }
.loan-split--cover.loan-split--img-right :is(img.loan-split__img, picture.loan-split__img > img) { border-radius: 25px 0 0 25px; }
.loan-split--cover .loan-split__text { margin-left: 50%; padding: 85px 0 85px 50px; }
.loan-split--cover.loan-split--img-right .loan-split__text { margin-left: 0; margin-right: 50%; padding: 85px 50px 85px 0; }
/* inside a run of grey sections the old page had no top padding */
.loan-scenario + .loan-split, .loan-panel + .loan-split, .loan-group + .loan-split { padding-top: 20px; }

/* ---------- Benefits: dark panel + image ---------- */
.loan-benefits { padding: 60px 0 0; }
.loan-benefits__container { max-width: none; padding: 0; }
.loan-benefits__row { display: flex; gap: 20px; align-items: stretch; }
.loan-benefits__panel { flex: 1 1 0; min-width: 0; display: flex; align-items: center; padding: 40px 30px 40px max(var(--gutter), calc((100vw - var(--container)) / 2)); border-radius: 0 20px 20px 0; background: var(--c-charcoal) left center / cover no-repeat; color: var(--c-white); }
.loan-benefits__inner { width: 100%; max-width: 650px; }
.loan-benefits .loan-h2 { line-height: 50px; color: var(--c-white); }
.loan-benefits__media { flex: 0 0 42.85%; min-width: 0; }
/* the old page stretches this picture to the panel height; kept so the baked-in badge stays in the corner */
.loan-benefits__media img { width: 100%; height: 100%; min-height: 560px; object-fit: fill; }

/* ---------- Dark rounded panel ---------- */
.loan-panel { padding: 40px 0 20px; }
.loan-panel__box { display: flex; padding: 50px; border-radius: 25px; background: var(--c-charcoal) center / cover no-repeat; color: var(--c-white); }
.loan-panel__text { flex: 0 0 60%; min-width: 0; display: flex; flex-direction: column; justify-content: center; padding-right: 40px; }
/* image on the left: picture first, text padded on the other side */
.loan-panel__box--img-left .loan-panel__media { order: -1; }
.loan-panel__box--img-left .loan-panel__text { padding-right: 0; padding-left: 40px; }
.loan-panel__box--noimg .loan-panel__text { flex-basis: 100%; padding-right: 0; }
.loan-panel .loan-h2, .loan-panel .loan-prose, .loan-panel .loan-after { color: var(--c-white); }
.loan-panel__media { flex: 1 1 0; min-width: 0; }
.loan-panel__media img { width: 100%; height: 500px; object-fit: cover; border-radius: 25px; }

/* ---------- Green panel (variations) ---------- */
.loan-variations { padding: 60px 0; background: var(--c-green) center / cover no-repeat; color: var(--c-white); }
.loan-variations__row { display: flex; align-items: stretch; }
.loan-variations__text { flex: 0 0 50%; min-width: 0; display: flex; flex-direction: column; justify-content: center; padding-right: 30px; }
.loan-variations .loan-h2, .loan-variations .loan-prose, .loan-variations .loan-after { color: var(--c-white); }
.loan-variations .loan-btn { margin-top: 20px; }
.loan-variations__media { flex: 0 0 50%; min-width: 0; }
.loan-variations__media img { width: 100%; height: var(--img-h, 100%); object-fit: cover; border-radius: 25px; }

/* ---------- Steps and comparison cards ---------- */
.loan-group { padding: 90px 0 20px; }
.loan-group + .loan-group { padding-top: 50px; }
.loan-group .loan-h2 { margin-bottom: 30px; }
.loan-pills { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 40px 20px; }
.loan-pill { flex: 0 0 calc(50% - 10px); min-width: 0; display: flex; flex-direction: column; gap: 20px; }
.loan-pill__title { margin: 0; padding: 14px 22px 16px; border-radius: 15px; background: var(--c-charcoal); color: var(--c-white); font-size: 24px; line-height: 24px; font-weight: 400; text-align: center; }
.loan-pills--left .loan-pill__title { padding-left: 30px; text-align: left; }
.loan-pill__lines { flex: 1 1 auto; display: flex; flex-direction: column; gap: 1px; }
.loan-pill__lines p { margin: 0; padding: 14px 22px; font-family: var(--f-head); font-size: 19px; line-height: 24px; text-align: center; background: var(--c-green); color: var(--c-white); }
.loan-pill__lines p:first-child { border-radius: 15px 15px 0 0; }
.loan-pill__lines p:only-child { border-radius: 15px; flex: 1 1 auto; }
.loan-pills--white .loan-pill__lines p { background: var(--c-white); color: #3D3D3D; }
.loan-pills--left .loan-pill__lines p, .loan-pills--lines-left .loan-pill__lines p { text-align: left; }

/* ---------- Label and description rows ---------- */
.loan-pairs .loan-h2 { margin-bottom: 20px; }
.loan-pairs__list { margin: 30px 0 0; width: 73%; }
.loan-pairs__row { display: flex; gap: 20px; }
.loan-pairs__row + .loan-pairs__row { margin-top: 20px; }
.loan-pairs__row dt { flex: 0 0 calc(40% - 12px); display: flex; align-items: center; padding: 14px 10px 16px 30px; border-radius: 15px; background: var(--c-charcoal); color: var(--c-white); font-family: var(--f-head); font-size: 26px; line-height: 26px; }
.loan-pairs__row dd { flex: 1 1 0; margin: 0; display: flex; align-items: center; padding: 15px 22px 18px; border-radius: 15px; background: var(--c-white); color: #3D3D3D; font-family: var(--f-head); font-size: 19px; line-height: 23px; }
.loan-pairs .loan-btn { margin-top: 20px; }

/* ---------- Example scenario ---------- */
.loan-scenario { padding: 85px 0 60px; }
.loan-scenario__row { display: flex; align-items: stretch; }
.loan-scenario__media { flex: 0 0 50%; min-width: 0; display: flex; flex-direction: column; justify-content: center; }
.loan-scenario__text { flex: 0 0 50%; min-width: 0; display: flex; flex-direction: column; justify-content: center; padding-left: 50px; }
.loan-scenario--img-right .loan-scenario__media { order: 2; }
.loan-scenario--img-right .loan-scenario__text { padding-left: 0; padding-right: 50px; }
.loan-scenario .loan-h2 { margin-bottom: 30px; }
.loan-scenario__label { margin: 0 0 10px; font-family: var(--f-body); font-size: 18px; line-height: 18px; font-weight: 600; color: var(--c-charcoal); }
.loan-scenario__text .loan-prose { margin-bottom: 10px; }
.loan-scenario__text .loan-prose:last-child { margin-bottom: 0; }
.loan-scenario__text .loan-prose p { margin-bottom: 14px; }
:is(img.loan-scenario__img, picture.loan-scenario__img > img) { width: 100%; height: 600px; object-fit: cover; border-radius: 25px; }
.loan-scenario__media--stack :is(img.loan-scenario__img, picture.loan-scenario__img > img) { width: 71%; object-position: left center; }
.loan-scenario__media--stack :is(img.loan-scenario__img--2, picture.loan-scenario__img--2 > img) { position: relative; width: 53%; height: 500px; margin: -400px 0 0 auto; object-position: right center; border: 9px solid var(--c-white); box-shadow: 0 0 10px rgba(0, 0, 0, .17); }

/* ---------- Highlights row ---------- */
.loan-highlights { padding: 60px 0 50px; }
.loan-highlights .loan-h2 { margin-bottom: 30px; }
.loan-highlights__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 0 45px; font-size: 20px; font-weight: 600; line-height: 1.2; color: var(--c-text); }
.loan-highlights__list li { display: inline-flex; align-items: center; gap: 8px; min-height: 70px; }
.loan-highlights__list i { font-size: 15px; color: var(--c-green); }

/* ---------- FAQ ---------- */
.loan-faq { padding: 60px 0 80px; }
.loan-faq .loan-h2 { line-height: 45px; margin-bottom: 40px; }
.loan-faq .accordion { max-width: 750px; }
.loan-faq .accordion__item { border-bottom: 1px solid rgba(0, 0, 0, .3); }
.loan-faq .accordion__item.is-open { border-bottom-color: transparent; }
.loan-faq .accordion__trigger { padding: 20px 0; font-size: 23px; line-height: 34.5px; color: #1F2124; }
.loan-faq .accordion__icon { color: var(--c-green); }
.loan-faq .accordion__panel { padding: 0 2px 20px 0; font-size: 17px; line-height: 25.5px; font-weight: 500; color: #555; }
.loan-faq .accordion__panel p { margin: 0 0 14px; }
.loan-faq .accordion__panel > :last-child { margin-bottom: 0; }

/* ---------- Closing call to action ---------- */
.loan-cta { color: var(--c-white); }
.loan-cta__title { max-width: 553px; margin: 0 0 20px; font-size: 55px; line-height: 73px; font-weight: 600; color: var(--c-white); }
.loan-cta__text { min-width: 0; display: flex; flex-direction: column; justify-content: center; }
.loan-cta__text p { max-width: 641px; margin: 0 0 19px; font-size: 18px; line-height: 27px; }
.loan-cta__box { display: flex; align-items: stretch; }
.loan-cta__media { position: relative; z-index: 2; min-width: 0; }
.loan-cta__media img { width: 100%; }
.loan-cta--img-left .loan-cta__media { order: -1; }
/* band: full-width green, photo hangs above and below */
.loan-cta--band { padding-bottom: 250px; background: var(--c-white); }
.loan-cta--band .loan-cta__band { padding: 70px 0; background: var(--c-green) center / cover no-repeat; }
.loan-cta--band .loan-cta__text { flex: 0 0 60%; padding: 10px; }
.loan-cta--band .loan-cta__media { flex: 0 0 40%; display: flex; align-items: center; margin: -179px 0; padding: 10px; }
.loan-cta--band .loan-cta__media img { border-radius: 18px; }
.loan > section:has(+ .loan-cta--band) { padding-bottom: 190px; }
/* panel: rounded green box on the section background */
.loan-cta--panel { padding: 170px 0; }
.loan-cta--panel.section--plain { background: var(--c-white); }
.loan-cta--panel.section--panel { background: var(--c-panel); }
.loan-cta--panel .loan-cta__box { padding: 70px 30px 70px 70px; border-radius: 20px; background: var(--c-green) center / cover no-repeat; }
.loan-cta--panel .loan-cta__media { flex: 0 0 40%; margin: -147px 0; padding: 10px; }
.loan-cta--panel .loan-cta__media img { height: 600px; object-fit: cover; border-radius: 24px; }
.loan-cta--panel .loan-cta__text { flex: 1 1 0; padding-left: 40px; }
.loan-cta--panel.loan-cta--img-right .loan-cta__box { padding: 70px 70px 70px 30px; }
.loan-cta--panel.loan-cta--img-right .loan-cta__text { padding-left: 0; padding-right: 40px; }

/* ---------- Tablet ---------- */
@media (max-width: 1024px) {
  .loan-hero { min-height: 57vh; }
  .loan-hero__title { font-size: 35px; line-height: 45.5px; }
  .loan-hero::after { background: rgba(46, 46, 46, .5); }
  .loan-cards__grid { grid-template-columns: repeat(2, 1fr); }
  .loan-pairs__list { width: 100%; }
  .loan-cta--panel .loan-cta__box { padding: 50px 30px; }
  .loan-cta__title { font-size: 42px; line-height: 1.3; }
}

/* ---------- Phone ---------- */
@media (max-width: 767px) {
  .loan .container { --gutter: 20px; }
  .loan .loan-h2 { font-size: 30px; line-height: 39px; }

  .loan-hero { min-height: 0; padding: 81px 0 95px; }
  .loan-hero::after { background: rgba(46, 46, 46, .8); }
  .loan-hero__title { font-size: 35px; line-height: 45.5px; }
  .loan-variations .loan-btn { display: flex; align-self: stretch; justify-content: center; }

  .loan-cards { padding: 50px 0; }
  .loan-cards .loan-h2 { margin-bottom: 30px; }
  .loan-cards__grid { grid-template-columns: 1fr; }
  .loan-card { min-height: 380px; }

  .loan-table { padding: 50px 0 0; }
  .loan-table__table { min-width: 640px; }
  .loan-table__table thead th span { font-size: 19px; }
  .loan-table__table tbody th, .loan-table__table tbody td { font-size: 16px; padding: 14px 12px; }

  .loan-split { padding: 40px 0; }
  .loan-split__row { flex-direction: column; }
  .loan-split__media, .loan-split__text { flex: 0 0 auto; width: 100%; }
  .loan-split__text, .loan-split--img-right .loan-split__text { order: 1; padding: 0; }
  .loan-split__media, .loan-split--img-right .loan-split__media { order: 2; margin-top: 30px; }
  .has-img-h :is(img.loan-split__img, picture.loan-split__img > img) { height: 300px; }
  /* phones: text first unless the section is set to lead with the picture */
  .loan-split--decor { padding: 60px 0 40px; }
  .loan-split--m-image .loan-split__media { order: 0; margin-top: 0; }
  .loan-split--m-image .loan-split__text { margin-top: 30px; }
  .loan-split--decor.loan-split--m-image .loan-split__text { margin-top: 90px; }
  .loan-split--overlap.has-img-h :is(img.loan-split__img, picture.loan-split__img > img) { height: 500px; }
  .loan-split--overlap.has-img-h :is(img.loan-split__img--2, picture.loan-split__img--2 > img) { height: 394px; }
  .loan-split__decor { inset: 0 auto auto 0; width: 266px; height: 449px; background-size: cover; background-position: right bottom; }
  .loan-split--pair .loan-split__media, .loan-split--pair.loan-split--m-image .loan-split__media { flex-direction: column; gap: 41px; margin-top: 51px; }
  .loan-split--pair :is(img.loan-split__img, picture.loan-split__img > img) { flex: 0 0 auto; height: 300px; }
  .loan-split--pair :is(img.loan-split__img--2, picture.loan-split__img--2 > img) { margin-top: 0; }
  .loan-split--cover .loan-split__media, .loan-split--cover.loan-split--img-right .loan-split__media { position: static; width: 100%; }
  .loan-split--cover { padding: 40px 0; }
  .loan-split--cover :is(img.loan-split__img, picture.loan-split__img > img), .loan-split--cover.loan-split--img-right :is(img.loan-split__img, picture.loan-split__img > img) { height: 300px; border-radius: 0 25px 25px 0; }
  .loan-split--cover .loan-split__text, .loan-split--cover.loan-split--img-right .loan-split__text { margin: 0; padding: 0; }
  .loan-scenario + .loan-split, .loan-panel + .loan-split, .loan-group + .loan-split { padding-top: 20px; }

  .loan-benefits__row { flex-direction: column; }
  .loan-benefits__panel { padding: 40px 20px; }
  .loan-benefits .loan-h2 { line-height: 39px; }
  .loan-benefits__media { flex: 0 0 auto; padding: 0 20px; }
  .loan-benefits__media img { height: 300px; min-height: 0; }

  .loan-panel__box { flex-direction: column; padding: 40px 20px; }
  .loan-panel__text, .loan-panel__box--img-left .loan-panel__text { flex: 0 0 auto; padding: 0; }
  .loan-panel__media { order: 2; margin-top: 30px; }
  .loan-panel__box--img-left .loan-panel__media { order: -1; margin: 0 0 30px; }
  .loan-panel__media img { height: 300px; }

  .loan-variations { padding: 40px 0; }
  .loan-variations__row { flex-direction: column; }
  .loan-variations__text { flex: 0 0 auto; padding-right: 0; }
  .loan-variations__media { flex: 0 0 auto; margin-top: 30px; }
  .loan-variations__media img { height: 300px; }

  .loan-group { padding: 50px 0 0; }
  .loan-group + .loan-group { padding-top: 40px; }
  .loan-group .loan-h2 { margin-bottom: 20px; line-height: 36px; }
  .loan-pills { gap: 20px; }
  .loan-pill { flex-basis: 100%; }
  .loan-pill__title, .loan-pills--left .loan-pill__title { padding: 14px 16px 16px; }
  .loan-pill__lines p { padding: 14px 20px; line-height: 24.7px; }
  .loan-pairs__list { margin-top: 20px; }
  .loan-pairs__row { flex-direction: column; gap: 10px; }
  .loan-pairs__row dt { flex: 0 0 auto; font-size: 22px; padding-left: 20px; }

  .loan-scenario { padding: 20px 0 20px; }
  .loan-scenario__row { flex-direction: column; }
  .loan-scenario__media, .loan-scenario__text { flex: 0 0 auto; }
  .loan-scenario--img-right .loan-scenario__media { order: 0; }
  .loan-scenario__text, .loan-scenario--img-right .loan-scenario__text { padding: 0; margin-top: 30px; }
  .loan-scenario .loan-h2 { line-height: 36px; }
  .loan-scenario__media:not(.loan-scenario__media--stack) :is(img.loan-scenario__img, picture.loan-scenario__img > img) { height: 300px; }

  .loan-highlights { padding: 50px 0; }
  .loan-highlights__list { flex-direction: column; align-items: flex-start; padding-left: 8px; }
  .loan-highlights__list { font-size: 15px; }
  .loan-highlights__list li { min-height: 52px; }

  .loan-faq { padding: 50px 0; }
  .loan-faq .loan-h2 { line-height: 39px; }
  .loan-faq .accordion__trigger { font-size: 20px; line-height: 30px; }

  .loan-cta__title { font-size: 30px; line-height: 39px; }
  .loan-cta__box { flex-direction: column; }
  .loan-cta--band { padding-bottom: 60px; }
  .loan-cta--band .loan-cta__band { padding: 40px 0; }
  .loan-cta--band .loan-cta__text { flex: 0 0 auto; padding: 0; }
  .loan-cta--band .loan-cta__media { flex: 0 0 auto; margin: 32px 0 0; padding: 0; }
  .loan > section:has(+ .loan-cta--band) { padding-bottom: 50px; }
  .loan-cta--panel { padding: 70px 0 60px; }
  .loan-cta--panel .loan-cta__box, .loan-cta--panel.loan-cta--img-right .loan-cta__box { padding: 40px 20px; }
  .loan-cta--panel .loan-cta__media { flex: 0 0 auto; margin: 29px 0 0; padding: 0; order: -1; }
  .loan-cta--panel .loan-cta__text, .loan-cta--panel.loan-cta--img-right .loan-cta__text { flex: 0 0 auto; padding: 0; margin-top: 20px; }
}

@media (prefers-reduced-motion: reduce) {
  .loan-card::after { transition: none; }
}
