.finance-page { background: var(--paper); }
.finance-page .nav .is-active { color: var(--gold); border-color: currentColor; }

.finance-hero { position: relative; min-height: 880px; display: grid; align-items: end; overflow: hidden; color: #fff; background: var(--green-deep); }
.finance-hero__media, .finance-hero__shade { position: absolute; inset: 0; }
.finance-hero__media img { width: 100%; height: 100%; object-fit: cover; object-position: center 42%; }
.finance-hero__shade { background: linear-gradient(90deg, rgba(8,35,32,.94) 0%, rgba(8,35,32,.77) 42%, rgba(8,35,32,.12) 76%), linear-gradient(0deg, rgba(8,35,32,.82), transparent 55%); }
.finance-hero__content { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(0,1fr) 385px; gap: clamp(40px,6vw,95px); align-items: end; padding: 180px 0 70px; }
.finance-hero__copy { max-width: 870px; }
.finance-hero h1 { max-width: 920px; margin: 22px 0 30px; font-size: clamp(64px,7.2vw,116px); font-weight: 500; letter-spacing: -.068em; line-height: .88; }
.finance-hero__copy > p { max-width: 680px; margin: 0; color: rgba(255,255,255,.82); font-size: clamp(17px,1.45vw,21px); }
.finance-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 36px; }
.finance-hero__facts { border-top: 3px solid var(--gold); background: rgba(16,47,44,.88); box-shadow: 0 28px 70px rgba(0,0,0,.22); backdrop-filter: blur(18px); }
.finance-hero__facts article { padding: 24px 28px; border-bottom: 1px solid rgba(255,255,255,.12); }
.finance-hero__facts strong { display: block; color: var(--gold); font-size: 66px; line-height: .9; letter-spacing: -.06em; }
.finance-hero__facts strong span { font-size: 26px; }
.finance-hero__facts p { margin: 10px 0 0; color: rgba(255,255,255,.72); font-size: 13px; line-height: 1.5; }
.finance-hero__bank { background: #0057a8; }
.finance-hero__bank > span { display: block; color: rgba(255,255,255,.78); font-size: 10px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.finance-hero__bank img { width: 205px; height: auto; margin-top: 12px; filter: none; }

.finance-subnav { position: sticky; z-index: 100; top: 0; border-bottom: 1px solid var(--line); background: rgba(255,254,250,.95); backdrop-filter: blur(16px); }
.header.is-solid + main .finance-subnav { top: 0; }
.finance-subnav .shell { display: flex; justify-content: center; overflow-x: auto; scrollbar-width: none; }
.finance-subnav .shell::-webkit-scrollbar { display: none; }
.finance-subnav a { flex: 0 0 auto; padding: 19px 22px; color: var(--green); border-bottom: 2px solid transparent; font-size: 10px; font-weight: 800; letter-spacing: .1em; text-decoration: none; text-transform: uppercase; }
.finance-subnav a:hover { color: var(--gold); border-color: currentColor; }

.finance-trust { display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(50px,8vw,130px); align-items: start; }
.finance-trust__lead { position: sticky; top: 130px; }
.finance-trust .section-title { font-size: clamp(44px,5.2vw,76px); }
.finance-trust__copy { max-width: 790px; }
.finance-trust__copy > p { color: var(--muted); font-size: 16px; }
.finance-lead { color: var(--green) !important; font-size: clamp(22px,2.2vw,31px) !important; font-weight: 500; letter-spacing: -.025em; line-height: 1.45; }
.finance-benefits { display: grid; grid-template-columns: repeat(3,1fr); gap: 10px; margin-top: 28px; }
.finance-benefits div { padding: 18px; border: 1px solid var(--line); border-radius: 17px; background: var(--cream); }
.finance-benefits strong { display: block; color: var(--green); font-size: 13px; }
.finance-benefits span { display: block; margin-top: 7px; color: var(--muted); font-size: 11px; line-height: 1.55; }
.finance-bank-link { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 24px; align-items: center; margin-top: 38px; padding: 24px 28px; border: 1px solid var(--line); border-radius: 22px; color: var(--green); background: var(--cream); text-decoration: none; transition: transform .2s ease, box-shadow .2s ease; }
.finance-bank-link:hover { transform: translateY(-3px); box-shadow: var(--shadow); }
.finance-bank-link > strong { color: var(--green); font-size: 15px; line-height: 1.4; }
.advice-panel--csas .advice-panel__brand img { filter: brightness(0) saturate(100%) invert(20%) sepia(15%) saturate(1140%) hue-rotate(126deg) brightness(88%) contrast(92%); }
.finance-bank-link b { justify-self: end; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }

.finance-process-section { color: #fff; background: var(--green-deep); }
.finance-process-section .section-title { color: #fff; }
.finance-process-section .section-head__aside { color: rgba(255,255,255,.62); }
.finance-section-head { margin-bottom: 54px; }
.payment-split { display: grid; grid-template-columns: 1fr 115px 1fr; gap: 0; align-items: stretch; }
.payment-step { overflow: hidden; border: 1px solid rgba(255,255,255,.14); border-radius: 28px; background: rgba(255,255,255,.065); }
.payment-step__top { display: flex; justify-content: space-between; align-items: start; padding: 30px 34px 22px; border-bottom: 1px solid rgba(255,255,255,.13); }
.payment-step__number { display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; color: var(--green-deep); background: var(--gold); font-size: 11px; font-weight: 800; }
.payment-step__top strong { color: var(--gold); font-size: clamp(86px,8vw,130px); font-weight: 500; letter-spacing: -.08em; line-height: .78; }
.payment-step__top small { font-size: .3em; }
.payment-step__copy { padding: 34px; }
.payment-step h3 { margin: 15px 0 18px; color: #fff; font-size: clamp(31px,3vw,45px); font-weight: 500; letter-spacing: -.045em; line-height: 1; }
.payment-step p { color: rgba(255,255,255,.68); }
.payment-connector { display: grid; grid-template-rows: 1fr auto 1fr; place-items: center; gap: 14px; padding: 25px 0; }
.payment-connector span { width: 1px; height: 100%; background: rgba(185,162,104,.55); }
.payment-connector b { max-width: 90px; color: var(--gold); font-size: 9px; line-height: 1.45; letter-spacing: .12em; text-align: center; text-transform: uppercase; }
.funding-note { display: grid; grid-template-columns: 72px 1fr; gap: 24px; align-items: center; max-width: 920px; margin: 38px auto 0; padding: 24px 30px; border-radius: 22px; color: var(--green-deep); background: var(--gold); }
.funding-note svg { width: 62px; height: 62px; fill: none; stroke: currentColor; stroke-width: 2; }
.funding-note strong { font-size: 19px; }
.funding-note p { margin: 5px 0 0; font-size: 13px; line-height: 1.55; }

.finance-options { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(45px,7vw,100px); align-items: center; }
.finance-options .section-title { font-size: clamp(44px,5vw,72px); }
.finance-options__cards { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.finance-options__cards article { position: relative; min-height: 390px; padding: 34px; overflow: hidden; border: 1px solid var(--line); border-radius: 25px; background: var(--cream); }
.option-icon { display: grid; place-items: center; width: 68px; height: 68px; border-radius: 50%; color: var(--gold); background: var(--green); }
.option-icon svg { width: 35px; height: 35px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2; }
.option-number { position: absolute; top: 26px; right: 30px; color: rgba(30,63,60,.15); font-size: 66px; font-weight: 800; line-height: 1; }
.finance-options__cards h3 { margin: 78px 0 15px; color: var(--green); font-size: 27px; }
.finance-options__cards p { color: var(--muted); }

.finance-mortgage { background: linear-gradient(145deg,#e8e1d1,#f5f1e7 58%,#ebe5d6); }
.finance-mortgage__layout { display: grid; grid-template-columns: 1.04fr .96fr; overflow: hidden; border-radius: 30px; background: var(--paper); box-shadow: var(--shadow); }
.finance-mortgage__image { min-height: 680px; }
.finance-mortgage__image img { width: 100%; height: 100%; object-fit: cover; }
.finance-mortgage__copy { display: grid; align-content: center; padding: clamp(40px,5vw,80px); }
.finance-mortgage .section-title { font-size: clamp(42px,4.5vw,67px); }
.finance-mortgage__copy > p:not(.finance-lead) { color: var(--muted); }
.finance-mortgage__copy .button { justify-self: start; margin-top: 20px; }

.finance-protection { color: #fff; background: var(--green); }
.finance-protection__layout { display: grid; grid-template-columns: 260px 1fr; gap: clamp(45px,7vw,110px); align-items: center; max-width: 1180px; }
.finance-protection__icon { display: grid; place-items: center; aspect-ratio: 1; border: 1px solid rgba(255,255,255,.16); border-radius: 50%; color: var(--gold); background: rgba(255,255,255,.055); }
.finance-protection__icon svg { width: 62%; height: 62%; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 3; }
.finance-protection h2 { max-width: 890px; margin: 18px 0 24px; color: #fff; font-size: clamp(45px,5.5vw,78px); font-weight: 500; letter-spacing: -.055em; line-height: .98; }
.finance-protection p { max-width: 820px; color: rgba(255,255,255,.7); }

.finance-advice__intro { max-width: 980px; margin-bottom: 55px; }
.advice-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px; align-items: stretch; }
.advice-panel { display: flex; flex-direction: column; min-width: 0; height: 100%; padding: clamp(30px,4vw,52px); border: 1px solid var(--line); border-top: 5px solid var(--gold); border-radius: 28px; background: var(--cream); }
.advice-panel__brand { display: flex; justify-content: space-between; align-items: center; min-height: 85px; padding-bottom: 25px; border-bottom: 1px solid var(--line); }
.advice-panel__brand > span { max-width: 210px; color: var(--green); font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.advice-panel__brand img { width: 180px; max-height: 76px; object-fit: contain; }
.advice-panel--independent .advice-panel__brand img { filter: brightness(0) saturate(100%) invert(20%) sepia(15%) saturate(1140%) hue-rotate(126deg) brightness(88%) contrast(92%); }
.advice-panel > p { color: var(--muted); }
.advisor-card { display: grid; grid-template-columns: 74px 1fr; gap: 20px; align-items: center; margin-top: 28px; padding: 24px; border-radius: 20px; background: var(--paper); }
.advisor-card__monogram { display: grid; place-items: center; width: 74px; height: 74px; border-radius: 50%; color: #fff; background: var(--green); font-size: 20px; font-weight: 800; }
.advisor-card h3 { margin: 0 0 6px; color: var(--green); font-size: 20px; }
.advisor-card span, .advisor-card a { display: block; color: var(--muted); font-size: 12px; line-height: 1.65; overflow-wrap: anywhere; }
.advisor-card a { color: var(--green); font-weight: 650; text-decoration: none; }
.advisor-links { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.advisor-links a { padding: 10px 13px; border: 1px solid var(--line); border-radius: 999px; color: var(--green); background: var(--paper); font-size: 11px; font-weight: 700; text-decoration: none; }
.independent-advisors { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 28px; }
.advisor-card--small { grid-template-columns: 54px 1fr; margin: 0; padding: 18px; }
.advisor-card--small .advisor-card__monogram { width: 54px; height: 54px; font-size: 15px; }
.advisor-card--small h3 { font-size: 16px; }
.advice-panel__note { margin: auto 0 0; padding-top: 18px; border-top: 1px solid var(--line); font-size: 12px; }
.advice-panel__note a { color: var(--green); font-weight: 700; }

.finance-cta { padding: clamp(75px,8vw,125px) 0; color: #fff; background: var(--green-deep); }
.finance-cta__inner { display: grid; grid-template-columns: 1fr auto; gap: 70px; align-items: end; }
.finance-cta h2 { max-width: 1050px; margin: 18px 0 22px; font-size: clamp(45px,5.4vw,78px); font-weight: 500; letter-spacing: -.055em; line-height: .98; }
.finance-cta p { max-width: 750px; color: rgba(255,255,255,.65); }
.finance-cta__actions { display: grid; gap: 10px; min-width: 250px; }
.finance-page .footer { margin-top: 0; }
.finance-page .to-top { z-index: 120; }

@media (max-width: 1180px) {
  .finance-hero__content { grid-template-columns: 1fr 330px; }
  .finance-hero h1 { font-size: clamp(62px,8vw,96px); }
  .finance-trust { grid-template-columns: 1fr; gap: 40px; }
  .finance-trust__lead { position: static; }
  .finance-trust__copy { max-width: 920px; }
  .payment-split { grid-template-columns: 1fr 70px 1fr; }
  .finance-options { grid-template-columns: 1fr; }
  .finance-options__heading { max-width: 800px; }
  .independent-advisors { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
  .finance-hero { min-height: auto; }
  .finance-hero__content { grid-template-columns: 1fr; padding: 155px 0 45px; }
  .finance-hero__copy { padding-top: 120px; }
  .finance-hero__facts { display: grid; grid-template-columns: 1fr 1fr; }
  .finance-hero__bank { grid-column: 1 / -1; }
  .finance-hero__media img { object-position: 58% center; }
  .finance-subnav .shell { justify-content: flex-start; }
  .payment-split { grid-template-columns: 1fr; gap: 18px; }
  .payment-connector { grid-template-columns: 1fr auto 1fr; grid-template-rows: auto; padding: 0 24px; }
  .payment-connector span { width: 100%; height: 1px; }
  .finance-mortgage__layout { grid-template-columns: 1fr; }
  .finance-mortgage__image { min-height: 450px; }
  .advice-grid { grid-template-columns: 1fr; }
  .independent-advisors { grid-template-columns: 1fr 1fr; }
  .finance-cta__inner { grid-template-columns: 1fr; gap: 35px; }
  .finance-cta__actions { display: flex; flex-wrap: wrap; }
}

@media (max-width: 760px) {
  .finance-page .header__phone,
  .finance-page .header:not(.is-solid) .header__phone,
  .finance-page .header.is-solid .header__phone { display: none; }
  .finance-hero__content { padding-top: 130px; }
  .finance-hero__copy { padding-top: 170px; }
  .finance-hero h1 { font-size: clamp(52px,15vw,72px); line-height: .9; }
  .finance-hero__copy > p { font-size: 15px; }
  .finance-hero__facts { grid-template-columns: 1fr; }
  .finance-hero__bank { grid-column: auto; }
  .finance-hero__facts strong { font-size: 58px; }
  .finance-subnav a { padding: 16px 14px; }
  .finance-bank-link { grid-template-columns: 1fr; gap: 12px; }
  .finance-bank-link b { justify-self: start; }
  .payment-step__top, .payment-step__copy { padding: 26px; }
  .payment-step__top strong { font-size: 86px; }
  .funding-note { grid-template-columns: 50px 1fr; padding: 22px; }
  .funding-note svg { width: 48px; height: 48px; }
  .finance-options__cards { grid-template-columns: 1fr; }
  .finance-benefits { grid-template-columns: 1fr; }
  .finance-options__cards article { min-height: 330px; }
  .finance-mortgage__image { min-height: 330px; }
  .finance-protection__layout { grid-template-columns: 1fr; }
  .finance-protection__icon { width: 150px; }
  .advice-panel__brand { align-items: flex-start; gap: 20px; }
  .advice-panel__brand img { width: 140px; }
  .independent-advisors { grid-template-columns: 1fr; }
  .advisor-card { grid-template-columns: 60px 1fr; padding: 18px; }
  .advisor-card__monogram { width: 60px; height: 60px; }
  .finance-cta__actions { display: grid; }
}

@media (prefers-reduced-motion: reduce) {
  .finance-page *, .finance-page *::before, .finance-page *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; }
}
