/* ============================================================
   FAST FINANCIAL — Landing page styles
   ============================================================ */
:root{
  --navy:        #0e2a47;
  --navy-2:      #123a5e;
  --navy-dark:   #0a1c30;
  --navy-darker: #071322;
  --green:       #4a9d2e;
  --green-2:     #5cb031;
  --green-btn:   #3f8f2c;
  --green-btn-d: #327122;
  --lime:        #8ed24a;
  --gold:        #e0b13a;
  --gray-bg:     #eef1f4;
  --gray-line:   #dfe4ea;
  --text:        #1c2b3a;
  --white:       #ffffff;
  --radius:      16px;
  --shadow:      0 18px 45px rgba(10,28,48,.12);
  --shadow-sm:   0 6px 18px rgba(10,28,48,.08);
  --maxw:        1180px;

  /* === HERO / CLOSING PHOTOS ===============================================
     Real photos are enabled. Desktop uses the landscape shot; phones swap to the
     portrait shot (see the max-width:760px override below). Gradients remain as
     an automatic fallback if an image ever fails to load.
     -------------------------------------------------------------------------- */
  --hero-image: url('assets/finanhero.png');
  /* --closing-image: url('assets/closing.jpg'); */
}

*,*::before,*::after{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; }
body{
  font-family:'Poppins',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
  color:var(--text);
  background:var(--white);
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{ max-width:100%; display:block; }
a{ color:inherit; text-decoration:none; }
button{ font-family:inherit; cursor:pointer; border:none; background:none; }

.container{ width:100%; max-width:var(--maxw); margin-inline:auto; padding-inline:20px; }

/* colour helpers */
.navy{ color:var(--navy); }
.navy-lt{ color:#16385c; }
.green{ color:var(--green); }
.lime{ color:var(--lime); }
.white{ color:#fff; }
.center{ text-align:center; }

/* condensed display font */
.hero__headline,.hero__sub,.form-card__title,.section-title,
.stat__value,.step__label,.choose__title,.closing__headline,
.brand__name,.amount,.hero__pill,.step__num{
  font-family:'Oswald',sans-serif;
}

/* ============================================================
   HERO
   ============================================================ */
.hero{
  position:relative;
  min-height:640px;
  color:#fff;
  /* Layers, top -> bottom:
     1) readability overlay  2) hero PHOTO (set --hero-image to a url to enable)
     3) always-present gradient base (fallback while there's no photo) */
  background-image:
    linear-gradient(180deg, rgba(210,224,214,.15) 0%, rgba(14,42,71,.05) 55%, rgba(14,42,71,.35) 100%),
    var(--hero-image, none),
    linear-gradient(135deg,#a9c6b0 0%,#cddccf 40%,#e7d9b8 100%);
  background-size:cover, cover, cover;
  background-position:center top, right center, center;
  background-repeat:no-repeat;
  padding-bottom:70px;
  overflow:hidden;
}
.hero__overlay{
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(92deg, rgba(233,240,235,.72) 0%, rgba(233,240,235,.32) 34%, rgba(233,240,235,.05) 52%, rgba(255,255,255,0) 66%);
  pointer-events:none;
}
.hero__inner{ position:relative; z-index:2; }

/* nav */
.nav{
  position:relative; z-index:5;
  display:flex; align-items:center; justify-content:space-between;
  padding-top:18px; padding-bottom:18px;
}
.brand{ display:flex; align-items:center; gap:10px; }
.brand__shield{ display:flex; }
.brand__text{ display:flex; flex-direction:column; line-height:1; }
.brand__name{ font-size:22px; font-weight:700; letter-spacing:.5px; color:var(--navy); }
.brand__tag{ font-size:9.5px; letter-spacing:3px; color:var(--green); font-weight:600; margin-top:3px; }

.nav__right{ display:flex; align-items:center; gap:16px; }
.nav__phone{ display:inline-flex; align-items:center; gap:8px; font-weight:700; color:var(--navy);
  font-size:15px; white-space:nowrap; background:#fff; padding:11px 20px; border-radius:40px;
  box-shadow:0 8px 22px rgba(10,28,48,.20); border:1px solid rgba(10,28,48,.05); transition:.18s; }
.nav__phone svg{ color:var(--green); }
.nav__phone:hover{ background:var(--green); color:#fff; box-shadow:0 10px 26px rgba(63,143,44,.32); transform:translateY(-1px); }
.nav__phone:hover svg{ color:#fff; }
.nav__toggle{ display:flex; flex-direction:column; gap:5px; padding:6px 2px; }
.nav__toggle span{ width:26px; height:3px; border-radius:2px; background:var(--navy); transition:.25s; }
.nav__toggle.is-open span:nth-child(1){ transform:translateY(8px) rotate(45deg); }
.nav__toggle.is-open span:nth-child(2){ opacity:0; }
.nav__toggle.is-open span:nth-child(3){ transform:translateY(-8px) rotate(-45deg); }

.mobile-menu{
  position:absolute; top:72px; right:20px; z-index:20;
  background:#fff; border-radius:14px; box-shadow:var(--shadow);
  display:none; flex-direction:column; padding:10px; min-width:210px;
}
.mobile-menu.is-open{ display:flex; }
.mobile-menu a{ padding:11px 14px; font-weight:500; color:var(--navy); border-radius:9px; }
.mobile-menu a:hover{ background:var(--gray-bg); }
.mobile-menu__cta{ background:var(--green-btn); color:#fff!important; text-align:center; margin-top:6px; }

/* hero copy */
.hero__copy{ padding-top:26px; max-width:560px; }
.hero__headline{ font-weight:700; line-height:.98; letter-spacing:.5px; }
.hero__headline span{ display:block; font-size:clamp(38px,11vw,64px); text-shadow:0 1px 0 rgba(255,255,255,.4); }
.hero__headline span:nth-child(3){ display:none; }   /* "NO BROKER." removed on all sizes */
.hero__divider{ display:flex; align-items:center; gap:14px; margin:20px 0 14px; max-width:340px; }
.hero__divider .line{ flex:1; height:2px; background:linear-gradient(90deg,var(--gold),rgba(224,177,58,.2)); }
.hero__divider .line:last-child{ background:linear-gradient(270deg,var(--gold),rgba(224,177,58,.2)); }
.hero__sub{ font-weight:700; line-height:1; }
.hero__sub span{ display:block; font-size:clamp(26px,7.5vw,42px); }
.hero__sub span.hero__sub-wc{ display:block; }   /* "for your working capital" — shown on all sizes */

.hero__pill{
  display:inline-flex; align-items:center; gap:10px;
  background:#fff; color:var(--navy);
  font-size:clamp(16px,4.6vw,22px); font-weight:600; letter-spacing:.5px;
  padding:13px 26px 13px 18px; border-radius:40px; margin-top:22px;
  box-shadow:var(--shadow-sm);
}
.hero__pill-icon{ display:flex; }

/* hero steps */
/* progress steps — now the header inside the form card */
.form-steps{
  display:flex; align-items:center; justify-content:space-between;
  gap:6px; max-width:460px; margin:0 auto 24px;
}
.step{ display:flex; flex-direction:column; align-items:center; gap:8px; flex:0 0 auto; }
.step__num{
  width:42px; height:42px; border-radius:50%;
  display:grid; place-items:center; font-size:19px; font-weight:600;
  background:#c3cbd3; color:#fff; box-shadow:0 4px 10px rgba(0,0,0,.15);
  transition:.3s;
}
.step.is-active .step__num{ background:var(--green); }
.step.is-complete .step__num{ background:var(--green); }
.step__label{ font-size:12.5px; font-weight:600; letter-spacing:1px; color:#5b6b7a; text-transform:uppercase; }
.step.is-active .step__label{ color:var(--green); }
.step__bar{ flex:1; height:5px; border-radius:3px; background:#c9d0d7; position:relative; top:-13px; overflow:hidden; }
.step__bar i{ position:absolute; inset:0; width:0; background:var(--green); transition:width .4s; }
.step__bar.is-fill i{ width:100%; }

/* ============================================================
   FORM CARD
   ============================================================ */
.apply{ background:linear-gradient(180deg,var(--navy) 0%,#12324f 100%); position:relative; padding:0 0 46px; }
.apply::before{ content:""; position:absolute; top:0; left:0; right:0; height:120px; background:var(--navy); z-index:0; }
.form-card{
  position:relative; z-index:2;
  background:#fff; border-radius:22px; box-shadow:var(--shadow);
  max-width:720px; margin:-46px auto 0; padding:30px 24px 26px;
}
.form-card__title{
  text-align:center; color:var(--navy); font-weight:600;
  font-size:clamp(21px,5.4vw,27px); letter-spacing:.5px; margin-bottom:20px;
}
.fstep{ display:none; }
.fstep.is-active{ display:block; animation:fade .35s ease; }
@keyframes fade{ from{ opacity:0; transform:translateY(8px);} to{ opacity:1; transform:none;} }

.amount-grid{ display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:22px; }
.amount{
  border:1.6px solid var(--gray-line); border-radius:12px;
  padding:18px 10px; font-size:clamp(15px,4vw,19px); font-weight:500; color:var(--navy);
  background:#fff; transition:.18s; letter-spacing:.3px;
}
.amount:hover{ border-color:var(--green); color:var(--green); }
.amount.is-selected{ border-color:var(--green); background:var(--green); color:#fff; box-shadow:0 8px 18px rgba(74,157,46,.3); }

.choice-grid{ display:grid; grid-template-columns:1fr 1fr; gap:14px; margin-bottom:22px; }
.choice{
  border:1.6px solid var(--gray-line); border-radius:12px; padding:18px 12px;
  font-size:15px; font-weight:500; color:var(--navy); background:#fff; transition:.18s;
}
.choice:hover{ border-color:var(--green); color:var(--green); }
.choice.is-selected{ border-color:var(--green); background:var(--green); color:#fff; }

.btn-primary{
  width:100%; display:flex; align-items:center; justify-content:center; gap:10px;
  background:var(--green-btn); color:#fff; font-weight:600;
  font-size:clamp(17px,4.4vw,20px); letter-spacing:.4px;
  padding:17px 22px; border-radius:12px; transition:.18s;
  box-shadow:0 10px 22px rgba(63,143,44,.28);
}
.btn-primary:hover{ background:var(--green-btn-d); transform:translateY(-1px); }
.btn-primary .arrow{ font-size:1.15em; line-height:1; }
.btn-primary--call{ background:var(--navy); box-shadow:none; }
.btn-back{ display:block; margin:14px auto 0; color:#7a8794; font-size:14px; font-weight:500; }
.btn-back:hover{ color:var(--navy); }

.form-card__note{ text-align:center; color:#6b7785; font-size:14px; margin-top:16px; }

.lead-form .field{ margin-bottom:13px; }
.lead-form input{
  width:100%; padding:15px 16px; border:1.6px solid var(--gray-line);
  border-radius:12px; font-size:16px; font-family:inherit; color:var(--navy); transition:.18s;
}
.lead-form input:focus{ outline:none; border-color:var(--green); box-shadow:0 0 0 3px rgba(74,157,46,.14); }
.lead-form input.invalid{ border-color:#e0524a; box-shadow:0 0 0 3px rgba(224,82,74,.12); }

.fstep--success{ text-align:center; }
.success__check{ display:inline-flex; margin-bottom:6px; }
.success__text{ color:#4c5a68; max-width:420px; margin:0 auto 20px; }

/* ============================================================
   SECTION TITLES
   ============================================================ */
.section-title{ font-weight:600; letter-spacing:.5px; font-size:clamp(24px,6vw,36px); line-height:1.1; }
.title-rule{ display:block; width:60px; height:4px; border-radius:3px; background:var(--green); margin:14px auto 0; }
.title-rule--lime{ background:var(--lime); }

/* ============================================================
   TRUST / ACCREDITATION TICKER
   ============================================================ */
.trust{
  /* refined black -> white gradient with a soft top sheen for depth */
  background:
    linear-gradient(180deg, rgba(255,255,255,.06) 0%, rgba(0,0,0,.14) 100%),
    linear-gradient(102deg,
      #0c0e12 0%, #16191e 20%, #2a2e35 38%, #4a4f58 52%,
      #7e848d 66%, #b6bcc4 82%, #e9edf1 100%);
  padding:32px 0 36px;
  overflow:hidden;
}
.trust__label{
  display:flex; align-items:center; justify-content:center; gap:16px;
  font-family:'Oswald',sans-serif; font-weight:500; letter-spacing:4px;
  font-size:12.5px; text-transform:uppercase; color:#c7ccd3; margin-bottom:22px;
}
.trust__label::before,.trust__label::after{ content:""; width:46px; height:1px; background:var(--gold); opacity:.75; }

.trust__mask{
  position:relative; overflow:hidden; max-width:1120px; margin:0 auto;
}
.trust__track{ display:flex; width:max-content; animation:trust-scroll 30s linear infinite; will-change:transform; }
.trust__mask:hover .trust__track{ animation-play-state:paused; }
@keyframes trust-scroll{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }

.trust__item{ flex:0 0 auto; margin:0 20px; }
/* no boxes — logos sit directly on the gradient */
.trust-badge{
  width:210px; height:140px; background:transparent; border:none; box-shadow:none;
  display:flex; align-items:center; justify-content:center; padding:0 8px;
}
.trust-badge img{ max-width:100%; max-height:76px; object-fit:contain; display:block;
  filter:drop-shadow(0 2px 5px rgba(0,0,0,.28)); }
/* compact / square logos scaled up so every logo reads at a similar visual size */
.tb-google img{ max-height:150px; }
.tb-inc img{ max-height:120px; }
.trust-badge--dark img{ max-height:120px; }   /* M&A award square poster */
/* graceful fallback if a logo file isn't present yet */
.trust-badge__fallback{
  font-family:'Oswald',sans-serif; font-weight:600; letter-spacing:.4px; color:var(--navy);
  text-align:center; font-size:16px; line-height:1.15;
}
.trust-badge__fallback small{ display:block; font-size:10px; letter-spacing:1px; color:#7a8794; font-weight:500; margin-top:3px; }

/* generic award badge (gold laurels + text) */
.trust-award{ display:flex; align-items:center; justify-content:center; gap:5px; color:var(--navy); }
.trust-award svg{ width:20px; height:50px; }
.trust-award .yr{ font-family:'Oswald',sans-serif; font-weight:700; font-size:22px; line-height:1; text-align:center; }
.trust-award .tt{ font-size:8.5px; font-weight:600; letter-spacing:.4px; color:#425466; margin-top:3px; text-align:center; }

@media (max-width:759px){
  .trust{ padding:26px 0 28px; }
  .trust-badge{ width:172px; height:82px; padding:12px 18px; }
  .trust-badge img{ max-height:52px; }
  .trust__track{ animation-duration:24s; }
}

/* ============================================================
   STATS
   ============================================================ */
.stats{ background:var(--gray-bg); padding:42px 0 48px; }
.stats .section-title{ text-align:center; margin-bottom:34px; }
.stats__grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:0; }
.stat{
  text-align:center; padding:6px 12px; position:relative;
  display:flex; flex-direction:column; align-items:center; gap:4px;
}
.stat + .stat::before{ content:""; position:absolute; left:0; top:14%; height:72%; width:1px; background:var(--gray-line); }
.stat__icon{ margin-bottom:8px; }
.stat__value{ font-size:clamp(26px,7vw,40px); font-weight:700; line-height:1; }
.stat__unit{ font-size:.5em; font-weight:600; }
.stat__label{ font-size:12.5px; font-weight:600; letter-spacing:1px; color:var(--navy); text-transform:uppercase; line-height:1.3; }
.stat__label--strong{ font-size:14px; margin-top:6px; }

/* ============================================================
   EXAMPLES CAROUSEL
   ============================================================ */
.examples{ background:#f6f8fa; padding:40px 0 46px; }
.examples__sub{ text-align:center; color:#6b7785; margin-top:8px; font-size:15px; }
.examples__viewport{ position:relative; }
.examples__track{
  display:flex; gap:16px; overflow-x:auto; scroll-snap-type:x mandatory;
  padding:26px 20px 10px; margin-top:6px; -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
}
.examples__track::-webkit-scrollbar{ display:none; }
.examples__track.is-grabbing{ cursor:grabbing; scroll-snap-type:none; }
.examples__track.is-grabbing .ex-card{ pointer-events:none; }

/* nav arrows (shown on wider screens; touch-scroll handles mobile) */
.examples__arrow{
  position:absolute; top:calc(50% + 8px); transform:translateY(-50%); z-index:6;
  width:48px; height:48px; border-radius:50%; background:#fff; color:var(--navy);
  border:1px solid var(--gray-line); box-shadow:0 8px 20px rgba(10,28,48,.16);
  display:none; align-items:center; justify-content:center; transition:.18s;
}
.examples__arrow:hover{ background:var(--green); color:#fff; border-color:var(--green); transform:translateY(-50%) scale(1.05); }
.examples__arrow:disabled{ opacity:.3; pointer-events:none; }
.examples__arrow--prev{ left:14px; }
.examples__arrow--next{ right:14px; }
.ex-card{
  flex:0 0 230px; scroll-snap-align:start;
  background:var(--navy); border-radius:16px; overflow:hidden;
  box-shadow:var(--shadow-sm); color:#fff;
}
.ex-card__img{ height:150px; position:relative; background-size:cover; background-position:center; }
.ex-card__badge{
  position:absolute; top:12px; left:12px;
  display:inline-flex; align-items:center; gap:6px;
  background:rgba(10,28,48,.72); color:#fff; font-size:11px; font-weight:600;
  letter-spacing:.6px; padding:5px 10px; border-radius:20px; text-transform:uppercase;
}
.ex-card__badge::before{ content:""; width:8px; height:8px; border-radius:50%; background:var(--green-2); box-shadow:0 0 8px var(--green-2); }
.ex-card__body{ padding:14px 16px 18px; }
.ex-card__name{ font-weight:600; font-size:16px; }
.ex-card__loc{ color:#9fb2c4; font-size:13px; margin-top:2px; }
.ex-card__amt{ font-family:'Oswald',sans-serif; color:var(--green-2); font-size:26px; font-weight:600; margin-top:8px; }
.examples__dots{ display:flex; justify-content:center; gap:8px; margin-top:14px; }
.examples__dots span{ width:9px; height:9px; border-radius:50%; background:#c7d0d8; transition:.2s; }
.examples__dots span.is-active{ background:var(--green); width:26px; border-radius:5px; }

/* ============================================================
   HOW IT WORKS
   ============================================================ */
.how{ background:#fff; padding:46px 0 52px; }
.how .section-title{ margin-bottom:0; }
.how__steps{ display:grid; grid-template-columns:1fr; gap:34px; margin-top:40px; position:relative; }
.how-step{ text-align:center; display:flex; flex-direction:column; align-items:center; gap:10px; position:relative; }
.how-step__num{
  width:52px; height:52px; border-radius:50%; display:grid; place-items:center;
  font-family:'Oswald',sans-serif; font-size:22px; font-weight:600; color:var(--green);
  background:#fff; border:2px solid var(--green);
  box-shadow:0 8px 18px rgba(74,157,46,.18);
}
.how-step__icon{ display:flex; }
.how-step__text{ color:#3a4b5c; font-size:15px; max-width:230px; }

/* ============================================================
   CHOOSE (dark)
   ============================================================ */
.choose{ background:linear-gradient(180deg,var(--navy-dark) 0%,var(--navy-darker) 100%); padding:50px 0 60px; color:#fff; }
.choose .section-title{ margin-bottom:0; }
.choose__grid{ display:grid; grid-template-columns:1fr; gap:16px; margin-top:40px; }
.choose__card{
  background:rgba(255,255,255,.03); border:1px solid rgba(142,210,74,.16);
  border-radius:16px; padding:26px 22px; text-align:center;
  display:flex; flex-direction:column; align-items:center; gap:12px;
}
.choose__card--feature{ background:rgba(142,210,74,.05); border-color:rgba(142,210,74,.3); }
.choose__shield{ filter:drop-shadow(0 8px 22px rgba(124,198,63,.4)); }
.choose__icon{ filter:drop-shadow(0 4px 14px rgba(142,210,74,.35)); }
.choose__title{ font-weight:600; font-size:24px; letter-spacing:.5px; line-height:1.1; color:#fff; }
.choose__title--sm{ font-size:20px; }
.choose__text{ color:#c3d0dc; font-size:15px; }
.choose__text--lg{ font-family:'Oswald',sans-serif; font-size:19px; font-weight:500; color:#fff; letter-spacing:.4px; line-height:1.25; }
.choose__text--muted{ color:#8a9aa9; font-size:14px; }

/* ============================================================
   CLOSING CTA
   ============================================================ */
.closing{
  position:relative; min-height:340px; display:flex; align-items:center;
  background-image:
    var(--closing-image, none),
    linear-gradient(120deg,#0e2a47 0%,#1c4a72 60%,#2f6b1f 120%);
  background-size:cover, cover;
  background-position:right center, center;
  background-repeat:no-repeat;
  padding:60px 0;
}
.closing__overlay{ position:absolute; inset:0; background:linear-gradient(90deg, rgba(233,240,235,.9) 0%, rgba(233,240,235,.5) 45%, rgba(233,240,235,.05) 75%); }
.closing__inner{ position:relative; z-index:2; }
.closing__headline{ font-weight:700; line-height:1; letter-spacing:.5px; }
.closing__headline span{ display:block; font-size:clamp(28px,7vw,44px); }
.closing .title-rule{ margin:16px 0 24px; }
.closing__btn{ max-width:320px; }

/* ============================================================
   FOOTER
   ============================================================ */
.footer{ background:var(--navy-darker); color:#9fb2c4; padding:40px 0 90px; }
.footer__inner{ text-align:center; display:flex; flex-direction:column; align-items:center; gap:14px; }
.brand--footer .brand__name{ color:#fff; }
.footer__phone a{ color:#fff; font-family:'Oswald',sans-serif; font-size:22px; font-weight:600; }
.footer__disclaimer{ font-size:12.5px; max-width:640px; line-height:1.6; color:#8095a8; }
.footer__copy{ font-size:13px; color:#6d8296; }

/* ============================================================
   SMALL MOBILE ADJUSTMENTS
   ============================================================ */
@media (max-width:480px){
  .container{ padding-inline:16px; }
  .brand__name{ font-size:19px; }
  .brand__tag{ letter-spacing:2.5px; }
  .nav__phone{ font-size:13px; padding:8px 13px; gap:6px; }
  .stats__grid{ gap:0; }
  .stat{ padding:6px 5px; }
  .stat__value{ font-size:23px; }
  .stat__label{ font-size:10.5px; letter-spacing:.4px; }
  .stat__label--strong{ font-size:11.5px; }
  .stat__icon svg{ width:34px; height:34px; }
}
@media (max-width:360px){
  .stat__value{ font-size:20px; }
}

/* ============================================================
   MOBILE HERO — full portrait, form overlapping at the belt
   ============================================================ */
@media (max-width:759px){
  :root{ --hero-image: url('assets/hero-mobile.png'); }

  /* show the FULL portrait: hero aspect matches the image so nothing is cropped */
  .hero{
    aspect-ratio:948 / 1686;
    min-height:0;
    padding-bottom:0;
    background-position:center top, center top, center;
  }
  /* light wash over the text column only; man on the right stays clear */
  .hero__overlay{
    background:linear-gradient(95deg,
      rgba(236,242,238,.85) 0%,
      rgba(236,242,238,.50) 34%,
      rgba(236,242,238,.08) 56%,
      rgba(236,242,238,0)  70%);
  }
  /* picture blends into navy from the belt down — no solid-blue slab */
  .hero::after{
    content:""; position:absolute; left:0; right:0; bottom:0; height:52%;
    background:linear-gradient(180deg, rgba(14,42,71,0) 0%, rgba(14,42,71,.45) 45%, var(--navy) 100%);
    z-index:1; pointer-events:none;
  }
  .nav{ position:relative; z-index:4; }
  .hero__inner{ position:relative; z-index:3; }
  .hero__headline span,.hero__sub span{ text-shadow:0 1px 10px rgba(240,246,242,.8); }
  .hero__headline span{ font-size:28px; }
  .hero__headline span:nth-child(3){ display:none; }   /* remove "NO BROKER." on mobile */
  .hero__sub span{ font-size:18px; }
  .hero__sub span.hero__sub-wc{ display:block; }        /* show "for your working capital" */
  .hero__copy{ padding-top:4px; max-width:66%; }        /* keep text off the man */

  /* small, compact divider */
  .hero__divider{ max-width:150px; margin:9px 0 9px; }

  /* smaller "no impact on credit" pill */
  .hero__pill{ font-size:12.5px; padding:8px 13px 8px 10px; gap:7px; margin-top:13px; letter-spacing:.3px; }
  .hero__pill-icon svg{ width:16px; height:19px; }

  /* compact steps that sit neatly in the gap between the pill and the card */
  .form-steps{ margin:0 auto 18px; padding:0 2px; max-width:100%; }
  .step{ gap:4px; }
  .step__num{ width:30px; height:30px; font-size:14px; }
  .step__label{ font-size:10px; letter-spacing:.3px; }
  .step__bar{ top:-8px; height:4px; }

  /* form pulled up so its top meets the belt, image blending into navy behind it */
  .apply{
    margin-top:-69%;
    background:linear-gradient(180deg, rgba(14,42,71,0) 0%, var(--navy) 130px);
  }
  .apply::before{ display:none; }
  .form-card{ margin-top:0; }
}

/* ============================================================
   DESKTOP / RESPONSIVE
   ============================================================ */
@media (min-width:760px){
  .stats__grid{ gap:0; }

  /* web hero: form overlaps the image, photo blends into navy (like mobile) */
  .hero{ min-height:840px; padding-bottom:0; }
  .hero::after{
    content:""; position:absolute; left:0; right:0; bottom:0; height:52%;
    background:linear-gradient(180deg, rgba(14,42,71,0) 0%, rgba(14,42,71,.45) 48%, var(--navy) 100%);
    z-index:1; pointer-events:none;
  }
  .hero__inner{ position:relative; z-index:3; }
  /* pin the call button to the far right of the hero, clear of the photo subject */
  .nav{ position:static; }
  .brand{ position:relative; z-index:6; }   /* keep the logo above the scrim */
  .nav__right{ position:absolute; right:22px; top:20px; z-index:6; }
  .apply{ margin-top:-300px; background:linear-gradient(180deg, rgba(14,42,71,0) 0%, var(--navy) 240px); }
  .apply::before{ display:none; }
  .form-card{ margin-top:0; }

  /* carousel: centered viewport + visible arrows + room for them */
  .examples__viewport{ max-width:var(--maxw); margin-inline:auto; }
  .examples__arrow{ display:flex; }
  .examples__track{ padding-left:60px; padding-right:60px; scroll-padding-left:60px; }
  .how__steps{ grid-template-columns:repeat(4,1fr); gap:20px; }
  .how__steps::before{
    content:""; position:absolute; top:26px; left:12%; right:12%; height:2px;
    background:repeating-linear-gradient(90deg,var(--green) 0 10px,transparent 10px 20px); opacity:.5; z-index:0;
  }
  .choose__grid{ grid-template-columns:repeat(3,1fr); grid-auto-rows:1fr; }
  .choose__card--feature{ grid-row:span 2; justify-content:center; }
}

@media (min-width:960px){
  .hero{ min-height:880px; }
  .hero__copy{ padding-top:40px; max-width:600px; }
  .hero__headline span{ font-size:66px; }
  .form-card{ padding:38px 44px 34px; }
  .amount-grid,.choice-grid{ gap:16px; }
  .ex-card{ flex-basis:250px; }
  .choose__grid{ grid-template-columns:repeat(3,1fr); }
  .closing{ min-height:400px; }
}

/* nav toggle only on mobile */
@media (min-width:760px){
  .nav__toggle{ display:none; }
  .mobile-menu{ display:none !important; }
}
