
  :root{
    --ink:#23243a; --ink-soft:#4f5168; --ink-mute:#888ba1;
    --navy:#292A43; --navy-deep:#1f2034; --navy-tint:#eceef4;
    --brand:#292A43; --brand-deep:#1f2034;
    --blue:#005881; --blue-deep:#01435f; --blue-soft:#e2eef3;   /* mid blue */
    --gold:#CA0774; --gold-soft:#fbe6f1;            /* brand pink (kept var name) */
    --save:#0f7a58; --save-soft:#e6f4ee; --save-line:#c4e3d6;
    --over:#b23b2a; --over-soft:#f8ebe7;
    --surface:#fbfbfd; --surface-2:#f1f2f7; --card:#ffffff;
    --line:#e8e9f1; --line-strong:#d8dae6;
    --warn:#8a6310;
    --r-sm:8px; --r:12px; --r-lg:18px; --r-xl:26px;
    --shadow-s:0 1px 2px rgba(22,26,46,.04), 0 1px 3px rgba(22,26,46,.04);
    --shadow-m:0 2px 6px rgba(22,26,46,.05), 0 10px 24px rgba(22,26,46,.07);
    --shadow-l:0 24px 60px rgba(22,26,46,.14);
    --maxw:1080px;
  }
  *,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
  html{scroll-behavior:smooth}
  body{
    font-family:'DM Sans',system-ui,sans-serif;background:var(--surface);color:var(--ink);
    font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
    min-height:100vh;display:flex;flex-direction:column;
  }
  body::before{
    content:"";position:fixed;inset:0 0 auto;height:560px;z-index:-1;pointer-events:none;
    background:
      radial-gradient(1200px 460px at 88% -180px, rgba(208,32,128,.06), transparent 64%),
      linear-gradient(180deg, #f4f5fb 0%, var(--surface) 70%);
  }
  h1,h2,h3,h4{font-family:'DM Sans',system-ui,sans-serif;font-weight:700;letter-spacing:-.02em;line-height:1.1;color:var(--ink)}
  .serif{font-family:'DM Sans',system-ui,sans-serif}
  .num{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}
  a{color:var(--brand);text-underline-offset:3px;text-decoration-thickness:1.5px}
  :focus-visible{outline:2.5px solid var(--gold);outline-offset:2px;border-radius:5px}
  button{font-family:inherit}
  ::selection{background:var(--gold);color:#fff}

  /* ── header ───────────────────────────────────────────────── */
  header.site{
    position:sticky;top:0;z-index:40;background:rgba(251,251,253,.82);
    backdrop-filter:saturate(160%) blur(14px);border-bottom:1px solid var(--line);
  }
  .hwrap{max-width:var(--maxw);margin:0 auto;display:flex;align-items:center;
    gap:.85rem;padding:0 1.5rem;height:70px}
  .brand{display:flex;align-items:center;gap:.6rem;cursor:pointer;background:none;border:none;padding:0;flex:0 0 auto;
    border-radius:8px;transition:opacity .15s}
  .brand:hover{opacity:.78}
  .brand:focus-visible{outline:2.5px solid var(--gold);outline-offset:4px}
  .logo{height:46px;width:auto;display:block;mix-blend-mode:multiply}
  .brandfb{display:flex;align-items:center;gap:.55rem}
  .mark{width:30px;height:30px;flex:0 0 auto}
  .wordmark{font-size:1.3rem;font-weight:700;color:var(--ink);letter-spacing:-.02em}
  .wordmark .pt{color:var(--gold)}
  .htag{display:none;align-items:center;gap:.5rem;flex:0 0 auto;
    font-size:12.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft);
    padding-left:.85rem;margin-left:.1rem;border-left:1px solid var(--line-strong)}
  .htag::before{content:"";width:14px;height:2px;background:var(--gold);border-radius:2px;flex:0 0 auto}
  .hspacer{flex:1 1 auto}
  @media (min-width:620px){ .htag{display:inline-flex} }
  .hrestart{font-size:13px;font-weight:600;color:var(--navy);background:none;border:1px solid var(--line-strong);
    padding:7px 14px;border-radius:99px;cursor:pointer;transition:.15s;display:none}
  .hrestart:hover{background:var(--surface-2);border-color:var(--navy)}
  .hrestart.show{display:inline-flex;align-items:center;gap:6px}
  .hnav{display:flex;align-items:center;gap:.2rem}
  .hlink{position:relative;font-size:14.5px;font-weight:600;color:var(--ink-soft);background:none;border:none;cursor:pointer;
    padding:10px 12px;font-family:inherit;transition:color .15s}
  .hlink::after{content:"";position:absolute;left:12px;right:12px;bottom:6px;height:2px;background:var(--gold);
    border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .18s ease}
  .hlink:hover{color:var(--ink)}
  .hlink:hover::after,.hlink.on::after{transform:scaleX(1)}
  .hlink.on{color:var(--ink)}
  .hcontact{display:flex;align-items:center;gap:.5rem;margin-left:.4rem;padding-left:.6rem;border-left:1px solid var(--line)}
  .hmail{display:none;align-items:center;gap:.45rem;color:var(--ink-soft);text-decoration:none;font-size:13.5px;font-weight:600;
    padding:8px 10px;border-radius:99px;transition:.15s}
  .hmail:hover{color:var(--navy);background:var(--surface-2)}
  .hphone{display:inline-flex;align-items:center;gap:.45rem;color:#fff;background:var(--navy);text-decoration:none;
    font-size:14px;font-weight:700;padding:9px 15px;border-radius:99px;white-space:nowrap;transition:.15s;
    box-shadow:0 3px 10px rgba(32,40,88,.2)}
  .hphone:hover{background:var(--navy-deep);transform:translateY(-1px)}
  @media (min-width:1000px){ .hmail{display:inline-flex} }
  @media (max-width:560px){ .hphone-t{display:none} .hphone{padding:9px;border-radius:50%} }

  main{flex:1;width:100%}
  .screen{display:none;animation:fade .4s ease both}
  .screen.active{display:block}
  @keyframes fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
  @media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

  .pad{max-width:var(--maxw);margin:0 auto;padding:0 1.5rem}
  .eyebrow{display:inline-flex;align-items:center;gap:.55rem;font-size:12.5px;font-weight:700;letter-spacing:.12em;
    text-transform:uppercase;color:var(--gold);line-height:1}
  .eyebrow::before{content:"";display:inline-block;width:18px;height:2px;background:var(--gold);border-radius:2px}

  /* ── home / hero ──────────────────────────────────────────── */
  .hero{padding:4.4rem 0 0}
  .hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:3rem;align-items:center}
  .hero .eyebrow{margin-bottom:1.3rem}
  .hero h1{font-size:clamp(2.4rem,5.4vw,3.7rem);line-height:1.04;letter-spacing:-.035em;color:var(--ink)}
  .hero h1 em{font-style:normal;color:var(--gold)}
  .hero .lede{font-size:clamp(1.08rem,1.7vw,1.24rem);color:var(--ink-soft);max-width:46ch;margin-top:1.2rem;line-height:1.55}
  .hero-cta{margin-top:1.8rem;display:flex;gap:.7rem;flex-wrap:wrap}
  .hero-btn{display:inline-flex;align-items:center;gap:.5rem;font-family:inherit;font-size:15px;font-weight:700;
    padding:14px 22px;border-radius:99px;cursor:pointer;border:1.5px solid transparent;transition:transform .15s,box-shadow .15s,background .15s}
  .hero-btn.solid{background:var(--navy);color:#fff;box-shadow:0 6px 18px rgba(32,40,88,.22)}
  .hero-btn.solid:hover{transform:translateY(-2px);box-shadow:0 10px 26px rgba(32,40,88,.28)}
  .hero-btn.ghost{background:var(--card);color:var(--navy);border-color:var(--line-strong)}
  .hero-btn.ghost:hover{border-color:var(--navy);transform:translateY(-2px)}
  .hero-btn svg{transition:transform .18s}
  .hero-btn:hover svg{transform:translateX(3px)}
  .hero-btn.light{background:#fff;color:var(--blue);box-shadow:0 6px 18px rgba(0,0,0,.14)}
  .hero-btn.light:hover{transform:translateY(-2px);background:#eef4f7}

  /* ── section bands (visual separation) ───────────────────── */
  .band{width:100%}
  .band > .pad{padding-top:3.4rem;padding-bottom:3.4rem}
  .band--hero{background:linear-gradient(180deg,#ffffff,#f6f8fb)}
  .band--hero > .pad{padding-bottom:2.6rem}
  .band--hero .hero{padding:0}
  .band--scene{background:#eef4f8;border-top:1px solid #e3e9f0}
  .band--scene > .pad{padding-top:2.4rem;padding-bottom:3rem}
  .band--tint{background:var(--navy-tint)}
  .band--cta{background:var(--blue)}
  .band--warn{background:#fbf2f7;border-top:1px solid #f1d8e7}
  .band--warn > .pad{padding-top:1.7rem;padding-bottom:1.7rem}

  /* high-street scene: real photos */
  .scene-cap{max-width:660px;margin:0 auto 1.5rem;text-align:center;color:var(--ink-soft);
    font-size:1.06rem;font-weight:500;line-height:1.5}
  .scene-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;max-width:1080px;margin:0 auto}
  .scene-ph{margin:0;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-s)}
  .scene-ph img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:var(--surface-2)}
  @media (max-width:680px){ .scene-grid{grid-template-columns:1fr 1fr} }
  /* hero photo */
  .hero-photo{position:relative}
  .hero-photo img{width:100%;height:auto;border-radius:var(--r-xl);box-shadow:var(--shadow-m);
    display:block;aspect-ratio:4/3;object-fit:cover;background:var(--surface-2)}
  .hero-photo-call{position:absolute;left:14px;right:14px;bottom:14px;display:flex;align-items:center;gap:.6rem;
    padding:.8rem 1rem;background:rgba(255,255,255,.94);backdrop-filter:blur(4px);border-radius:var(--r);
    color:var(--navy);text-decoration:none;font-size:13.5px;box-shadow:var(--shadow-s)}
  .hero-photo-call svg{flex:0 0 auto;color:var(--gold)}
  .hero-photo-call b{white-space:nowrap}
  .hero-photo-call:hover{background:#fff}

  /* hero trust chips */
  .hero-trust{display:flex;flex-wrap:wrap;gap:.55rem 1.4rem;margin-top:1.5rem}
  .hero-trust span{display:inline-flex;align-items:center;gap:.4rem;font-size:13px;font-weight:600;color:var(--ink-soft)}
  .hero-trust svg{color:var(--gold);flex:0 0 auto}

  /* closing CTA band */
  .cta-band{display:flex;align-items:center;justify-content:space-between;gap:1.4rem 2rem;flex-wrap:wrap}
  .cta-band-copy h2{color:#fff;font-size:1.55rem;letter-spacing:-.02em;margin-bottom:.25rem}
  .cta-band-copy p{color:rgba(255,255,255,.86);font-size:1rem}
  .cta-band-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
  .cta-band-call{color:#fff;font-weight:600;text-decoration:none;font-size:14.5px;opacity:.92}
  .cta-band-call:hover{opacity:1;text-decoration:underline}

  /* repossession warning */
  .repo-warn{font-size:13px;line-height:1.7;color:var(--ink-soft);max-width:960px;margin:0 auto;text-align:center}
  .repo-warn b{color:var(--ink);font-size:1.5em;line-height:1.45;display:block;margin:0 auto .55rem;max-width:900px}

  /* hero anchor: a quiet sample-result card (shows what the tool produces) */
  .hero-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-m);
    padding:1.4rem 1.5rem;position:relative;overflow:hidden}
  .hero-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--gold)}
  .hero-card .hc-tag{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute)}
  .hero-card .hc-row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--line)}
  .hero-card .hc-row:last-of-type{border-bottom:none}
  .hero-card .hc-advisor{display:flex;align-items:center;gap:.6rem;margin-top:.9rem;padding:.85rem .95rem;
    background:var(--navy-tint);border-radius:var(--r);color:var(--navy);text-decoration:none;
    font-size:13.5px;line-height:1.4;transition:.15s}
  .hero-card .hc-advisor svg{flex:0 0 auto;color:var(--gold)}
  .hero-card .hc-advisor b{font-weight:700;white-space:nowrap}
  .hero-card .hc-advisor:hover{background:#e3e6f3}
  .hero-card .hc-name{font-size:14px;font-weight:600;color:var(--ink)}
  .hero-card .hc-sub{font-size:12px;color:var(--ink-mute)}
  .hero-card .hc-num{font-weight:700;letter-spacing:-.02em;font-size:1.15rem;color:var(--ink);font-variant-numeric:tabular-nums}
  .hero-card .hc-best{color:var(--save)}
  .hero-card .hc-foot{margin-top:.9rem;font-size:12px;color:var(--ink-mute);display:flex;align-items:center;gap:.4rem}
  .hero-card .hc-pill{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;color:var(--save);
    background:var(--save-soft);border:1px solid var(--save-line);padding:3px 9px;border-radius:99px}

  /* how it works, a real 3-step sequence, not repeated CTAs */
  .how{margin:0}
  .how-head{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);
    display:flex;align-items:center;gap:.6rem;margin-bottom:1.4rem}
  .how-head::before{content:"";width:16px;height:2px;background:var(--gold);border-radius:2px}
  .how-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.1rem}
  .how-step{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);
    padding:1.4rem 1.4rem 1.5rem;box-shadow:var(--shadow-s)}
  .how-step .hn{font-size:13px;font-weight:700;color:var(--gold);font-variant-numeric:tabular-nums;letter-spacing:.02em}
  .how-step h3{font-size:1.12rem;letter-spacing:-.015em;margin:.5rem 0 .35rem}
  .how-step p{font-size:13.5px;color:var(--ink-soft);line-height:1.5}

  .trustbar{display:flex;flex-wrap:wrap;gap:.5rem 1.6rem;align-items:center;margin:1.7rem 0 0;
    font-size:13.5px;color:var(--ink-soft)}
  .trustbar span{display:inline-flex;align-items:center;gap:.45rem;white-space:nowrap}
  .trustbar b{margin:0 .12rem}
  .trustbar b{color:var(--ink);font-weight:700}
  .trustbar .ck{color:var(--save);flex:0 0 auto}

  /* lenders, quiet inline row, not pills */
  .lenders-row{margin:3.4rem 0 0;padding-top:1.8rem;border-top:1px solid var(--line)}
  .lenders-row .lcap{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:.9rem}
  .lender-strip{display:flex;flex-wrap:wrap;gap:.5rem .65rem;align-items:center}
  .lchip{font-size:13px;font-weight:600;color:var(--ink-soft)}
  .lchip:not(:last-child)::after{content:"·";margin-left:.65rem;color:var(--line-strong)}
  .lchip.soon{color:var(--gold);font-weight:700}

  .home-note{margin:2.4rem 0 0;padding:1.15rem 1.35rem 1.15rem 1.5rem;background:var(--card);
    border:1px solid var(--line);border-left:3px solid var(--navy);border-radius:var(--r);
    font-size:13.5px;color:var(--ink-soft);line-height:1.6}
  .home-note b{color:var(--ink)}

  /* ── wizard ───────────────────────────────────────────────── */
  .wizwrap{max-width:620px;margin:0 auto;padding:2.4rem 1.5rem 4rem}
  .progress{display:flex;align-items:center;gap:.9rem;margin-bottom:1.7rem}
  .pbar{flex:1;height:7px;background:var(--surface-2);border-radius:99px;overflow:hidden}
  .pbar i{display:block;height:100%;width:0;background:var(--gold);
    border-radius:99px;transition:width .45s cubic-bezier(.4,0,.2,1)}
  .pstep{font-size:12.5px;font-weight:600;color:var(--ink-mute);white-space:nowrap;font-variant-numeric:tabular-nums}

  .qcard{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);
    padding:2.2rem 2rem 2rem;box-shadow:var(--shadow-m);animation:qin .3s cubic-bezier(.2,.7,.3,1) both}
  @keyframes qin{from{opacity:0;transform:translateY(10px) scale(.995)}to{opacity:1;transform:none}}
  .qcard .eyebrow{margin-bottom:.7rem}
  .qcard h2{font-size:clamp(1.55rem,3.6vw,2rem);letter-spacing:-.025em;margin-bottom:.55rem}
  .qhelp{font-size:14.5px;color:var(--ink-soft);margin-bottom:1.5rem;line-height:1.5}
  .qhelp a{font-weight:600}

  /* choice buttons */
  .choices{display:grid;gap:.7rem}
  .choices.two{grid-template-columns:1fr 1fr}
  .choice{position:relative;text-align:left;background:var(--surface);border:1.5px solid var(--line-strong);
    border-radius:var(--r);padding:1.05rem 1.15rem;cursor:pointer;transition:.15s;display:flex;flex-direction:column;gap:3px}
  .choice:hover{border-color:var(--brand);background:var(--card)}
  .choice.sel{border-color:var(--brand);background:var(--navy-tint);box-shadow:inset 0 0 0 1px var(--brand)}
  .choice .ct{font-weight:700;font-size:15.5px;color:var(--ink)}
  .choice .cd{font-size:13px;color:var(--ink-soft);line-height:1.4}
  .choice .tick{position:absolute;top:12px;right:12px;width:22px;height:22px;border-radius:50%;
    border:2px solid var(--line-strong);display:flex;align-items:center;justify-content:center;color:#fff;transition:.15s}
  .choice.sel .tick{background:var(--gold);border-color:var(--gold)}
  .choice .tick svg{opacity:0;transition:.15s}
  .choice.sel .tick svg{opacity:1}

  .epc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem}
  .epc{aspect-ratio:1;border:1.5px solid var(--line-strong);background:var(--surface);border-radius:var(--r-sm);
    font-weight:700;font-size:1.25rem;color:var(--ink);cursor:pointer;transition:.13s;display:flex;align-items:center;justify-content:center}
  .epc:hover{border-color:var(--navy)}
  .epc.sel{background:var(--navy);color:#fff;border-color:var(--navy)}
  .epc.unsure{grid-column:span 4;aspect-ratio:auto;padding:11px;font-size:14px;font-weight:600}

  /* text / number inputs */
  .field{position:relative}
  .moneywrap{position:relative;display:flex;align-items:center}
  .moneywrap .prefix{position:absolute;left:16px;font-size:1.4rem;font-weight:600;color:var(--ink-mute);pointer-events:none}
  .bigin{width:100%;font-family:'DM Sans',sans-serif;font-size:1.55rem;font-weight:600;color:var(--ink);
    padding:14px 16px;border:1.5px solid var(--line-strong);border-radius:var(--r);background:var(--surface);
    outline:none;transition:.15s;font-variant-numeric:tabular-nums}
  .bigin.money{padding-left:38px}
  .bigin.pct{padding-right:46px}
  .bigin:focus{border-color:var(--brand);background:var(--card);box-shadow:0 0 0 3px rgba(32,40,88,.12)}
  .suffix{position:absolute;right:16px;font-size:1.3rem;font-weight:600;color:var(--ink-mute);pointer-events:none}
  .liveline{margin-top:.7rem;font-size:13.5px;color:var(--ink-soft);min-height:20px;transition:.2s}
  .liveline.warn{color:var(--warn);font-weight:600}
  .liveline.good{color:var(--save);font-weight:600}
  .liveline b{color:var(--ink)}
  .txtin{width:100%;font-family:'DM Sans',sans-serif;font-size:1.05rem;padding:13px 15px;border:1.5px solid var(--line-strong);
    border-radius:var(--r);background:var(--surface);outline:none;transition:.15s}
  .txtin:focus{border-color:var(--brand);background:var(--card);box-shadow:0 0 0 3px rgba(32,40,88,.12)}
  .skiplink{display:inline-block;margin-top:.9rem;font-size:13.5px;color:var(--ink-mute);background:none;border:none;
    cursor:pointer;text-decoration:underline;text-underline-offset:3px}
  .skiplink:hover{color:var(--ink)}

  /* slider for commercial % */
  .resi-reveal{margin-top:1.1rem;padding-top:1.1rem;border-top:1px dashed var(--line-strong);display:none}
  .resi-reveal.show{display:block;animation:fade .3s ease both}
  .slabel{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.6rem;font-size:14px;color:var(--ink-soft)}
  .slabel b{font-size:1.3rem;color:var(--navy);font-weight:700;letter-spacing:-.02em}
  input[type=range]{width:100%;height:8px;-webkit-appearance:none;appearance:none;background:linear-gradient(90deg,var(--gold),var(--navy));
    border-radius:99px;outline:none}
  input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;border-radius:50%;background:#fff;
    border:3px solid var(--brand);cursor:pointer;box-shadow:var(--shadow-s)}
  input[type=range]::-moz-range-thumb{width:26px;height:26px;border-radius:50%;background:#fff;border:3px solid var(--navy);cursor:pointer}
  .srow{display:flex;justify-content:space-between;font-size:11.5px;color:var(--ink-mute);margin-top:.4rem}

  /* wizard nav */
  .wiznav{display:flex;align-items:center;gap:.8rem;margin-top:1.7rem}
  .btn{font-family:inherit;font-size:15px;font-weight:700;padding:13px 26px;border-radius:99px;cursor:pointer;
    border:1.5px solid transparent;transition:.15s;display:inline-flex;align-items:center;justify-content:center;gap:8px}
  .btn.primary{background:var(--brand);color:#fff;flex:1;box-shadow:0 4px 14px rgba(32,40,88,.28)}
  .btn.primary:hover{background:var(--brand-deep)}
  .btn.primary:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}
  .btn.ghost{background:none;color:var(--ink-soft);border-color:var(--line-strong)}
  .btn.ghost:hover{border-color:var(--brand);color:var(--brand)}
  .btn.big{font-size:16px;padding:15px 30px}

  /* ── results ──────────────────────────────────────────────── */
  .results{padding:2rem 0 3.5rem}
  .res-hero{background:var(--card);border:1px solid var(--line);border-radius:var(--r-xl);
    padding:2.1rem 2rem;box-shadow:var(--shadow-m);margin-bottom:1.6rem;position:relative;overflow:hidden}
  .res-hero .eyebrow{margin-bottom:.8rem}
  .bignum{font-weight:700;letter-spacing:-.04em;font-size:clamp(3rem,11vw,4.6rem);line-height:.95;color:var(--navy);
    font-variant-numeric:tabular-nums;letter-spacing:-.02em}
  .bignum.save{color:var(--save)}
  .bignum.over{color:var(--over)}
  .bignum .per{font-family:'DM Sans',sans-serif;font-size:1.4rem;font-weight:600;color:var(--ink-mute);letter-spacing:0}
  .res-sub{font-size:15.5px;color:var(--ink-soft);margin-top:.7rem;max-width:54ch}
  .res-sub b{color:var(--ink)}
  .res-sub .lname{font-weight:700;color:var(--navy)}

  /* cost meter (signature) */
  .meter{margin:1.6rem 0 .2rem}
  .meter-track{position:relative;height:54px;background:var(--surface-2);border-radius:var(--r);overflow:hidden}
  .meter-fill{position:absolute;top:0;bottom:0;background:var(--save-soft)}
  .meter-fill.over{background:var(--over-soft)}
  .meter-mark{position:absolute;top:0;bottom:0;width:3px;background:var(--ink);transform:translateX(-50%)}
  .meter-mark.best{background:var(--save);width:4px}
  .meter-mark.cur{background:var(--ink)}
  .meter-cap{position:absolute;top:50%;transform:translate(-50%,-50%);font-size:11px;font-weight:700;
    white-space:nowrap;padding:3px 8px;border-radius:99px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-s)}
  .meter-ends{display:flex;justify-content:space-between;margin-top:.5rem;font-size:12px;color:var(--ink-mute);font-variant-numeric:tabular-nums}
  .meter-legend{display:flex;gap:1.2rem;flex-wrap:wrap;margin-top:.9rem;font-size:13px;color:var(--ink-soft)}
  .meter-legend span{display:inline-flex;align-items:center;gap:6px}
  .lg-dot{width:11px;height:11px;border-radius:3px}

  /* controls row */
  .res-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem 1rem;margin:0 0 1.1rem}
  .seg{display:inline-flex;background:var(--surface-2);border-radius:99px;padding:3px;gap:2px}
  .seg button{font-size:13px;font-weight:600;padding:7px 14px;border-radius:99px;border:none;background:none;
    color:var(--ink-soft);cursor:pointer;transition:.15s}
  .seg button.on{background:#fff;color:var(--brand-deep);box-shadow:var(--shadow-s)}
  .ctl-label{font-size:12.5px;color:var(--ink-mute);font-weight:600}
  .res-controls .right{margin-left:auto;display:flex;align-items:center;gap:.5rem}
  .selsort{font-family:inherit;font-size:13px;font-weight:600;color:var(--navy);background:var(--card);
    border:1px solid var(--line-strong);border-radius:99px;padding:7px 12px;cursor:pointer}

  /* product-type filter */
  .res-filter{display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;margin:0 0 1.2rem;
    padding:.9rem 1rem;background:var(--surface-2);border-radius:var(--r)}
  .ptype-pills{display:flex;flex-wrap:wrap;gap:.4rem}
  .ptype-pill{font-family:inherit;font-size:13px;font-weight:600;color:var(--ink-soft);background:var(--card);
    border:1px solid var(--line-strong);border-radius:99px;padding:7px 14px;cursor:pointer;transition:.15s}
  .ptype-pill:hover{border-color:var(--navy);color:var(--navy)}
  .ptype-pill.on{background:var(--navy);border-color:var(--navy);color:#fff}
  .filter-empty{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.6rem 1.5rem;margin-bottom:1.2rem}
  .filter-empty p{font-size:15px;color:var(--ink);margin-bottom:.4rem}
  .filter-empty .fe-sub{font-size:13.5px;color:var(--ink-soft);margin-bottom:0}
  .filter-empty a{font-weight:700;color:var(--navy)}

  .res-count{font-size:13.5px;color:var(--ink-soft);margin-bottom:1rem}
  .res-count b{color:var(--navy)}

  /* deal cards */
  .deals{display:grid;gap:.9rem}
  .deal{position:relative;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);
    padding:1.3rem 1.4rem;box-shadow:var(--shadow-s);transition:.15s;display:grid;
    grid-template-columns:1fr auto;gap:.4rem 1.2rem;align-items:center}
  .deal:hover{box-shadow:var(--shadow-m);border-color:var(--line-strong)}
  .deal.best{border-color:var(--save-line);box-shadow:0 0 0 2px var(--save-soft),var(--shadow-m)}
  .deal-badge{position:absolute;top:-11px;left:18px;background:var(--save);color:#fff;font-size:11px;font-weight:700;
    letter-spacing:.05em;text-transform:uppercase;padding:4px 11px;border-radius:99px;box-shadow:var(--shadow-s)}
  .deal-badge.ind{background:var(--gold);color:#3a2c00}
  .deal-l{min-width:0}
  .deal-lender{font-size:1.18rem;font-weight:700;color:var(--ink);letter-spacing:-.02em;display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}
  .deal-type{display:inline-block;font-size:12px;font-weight:600;color:var(--ink-soft);background:var(--surface-2);
    padding:3px 9px;border-radius:99px;margin-top:.4rem}
  .deal-meta{font-size:13px;color:var(--ink-soft);margin-top:.7rem;display:flex;flex-wrap:wrap;gap:.35rem 1.3rem}
  .deal-meta>span{display:inline-flex;align-items:baseline;gap:.35rem}
  .deal-meta .mk{color:var(--ink-mute)}
  .deal-meta .mv{color:var(--ink);font-weight:700;font-variant-numeric:tabular-nums}
  .deal-r{text-align:right;white-space:nowrap}
  .deal-monthly{font-size:1.65rem;font-weight:700;color:var(--navy);font-variant-numeric:tabular-nums;line-height:1.05}
  .deal-monthly .mo{font-size:.8rem;font-weight:600;color:var(--ink-mute)}
  .deal-monthly.from::before{content:"from ";font-size:.7rem;font-weight:600;color:var(--ink-mute)}
  .deal-delta{font-size:13px;font-weight:700;margin-top:.35rem}
  .deal-delta.save{color:var(--save)}
  .deal-delta.over{color:var(--over)}
  .deal-delta.same{color:var(--ink-mute)}

  /* "current deal" pinned card in compare view */
  .curcard{background:linear-gradient(180deg,#fbfaf6,var(--card));border:1.5px solid var(--line-strong);
    border-radius:var(--r-lg);padding:1.2rem 1.4rem;margin-bottom:.9rem;display:flex;justify-content:space-between;
    align-items:center;gap:1rem;flex-wrap:wrap}
  .curcard .cl{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute)}
  .curcard .cn{font-size:1.1rem;font-weight:700;color:var(--ink);margin-top:.2rem}
  .curcard .cm{font-size:1.5rem;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
  .curcard .cm .mo{font-size:.78rem;font-weight:600;color:var(--ink-mute)}

  /* no match */
  .nomatch{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:2rem 1.8rem;text-align:center}
  .nomatch h3{font-size:1.5rem;color:var(--ink);margin-bottom:.6rem}
  .nomatch p{color:var(--ink-soft);max-width:46ch;margin:0 auto 1.2rem}

  /* explainer / glossary accordion */
  .panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);margin-top:1.6rem;overflow:hidden}
  .panel summary{list-style:none;cursor:pointer;padding:1.1rem 1.4rem;font-weight:700;font-size:15.5px;color:var(--ink);
    display:flex;align-items:center;justify-content:space-between}
  .panel summary::-webkit-details-marker{display:none}
  .panel summary .chev{transition:transform .2s;color:var(--ink-mute)}
  .panel[open] summary .chev{transform:rotate(180deg)}
  .panel-body{padding:0 1.4rem 1.3rem;font-size:14.5px;color:var(--ink-soft);line-height:1.6}
  .gloss{display:grid;gap:.9rem}
  .gloss dt{font-weight:700;color:var(--ink);font-size:14.5px}
  .gloss dd{margin:.15rem 0 0;color:var(--ink-soft)}

  .info-soon{margin-top:1.4rem;padding:1.2rem 1.4rem;background:var(--gold-soft);border:1px solid #e6d6a8;
    border-radius:var(--r);font-size:14px;color:#5b4710;line-height:1.55}
  .info-soon b{color:#3f3000}

  .beforeswitch{margin-top:1.4rem;padding:1.3rem 1.5rem;background:var(--save-soft);border:1px solid var(--save-line);
    border-radius:var(--r-lg)}
  .beforeswitch h3{font-size:1.15rem;color:var(--ink);margin-bottom:.7rem;font-weight:700;letter-spacing:-.02em}
  .beforeswitch ul{list-style:none;display:grid;gap:.55rem}
  .beforeswitch li{font-size:14px;color:var(--ink-soft);padding-left:1.7rem;position:relative;line-height:1.5}
  .beforeswitch li::before{content:"";position:absolute;left:0;top:7px;width:14px;height:14px;border-radius:4px;
    background:var(--save);opacity:.85}
  .beforeswitch li b{color:var(--ink)}

  .disclaimer{margin-top:1.6rem;font-size:12.5px;color:var(--ink-mute);line-height:1.6}
  .disclaimer b{color:var(--ink-soft)}

  .res-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1.8rem}

  /* footer */
  footer.site{background:var(--navy-deep);color:rgba(255,255,255,.72);margin-top:auto}
  .fwrap{max-width:var(--maxw);margin:0 auto;padding:2rem 1.25rem;font-size:12.5px;line-height:1.7}
  .fwrap .fbrand{font-weight:700;letter-spacing:-.02em;font-size:1.1rem;color:#fff;margin-bottom:.5rem}
  .fwrap a{color:#fff}
  .fwrap .fcontact{color:rgba(255,255,255,.82);margin-bottom:1rem}
  .fwrap .fcontact a{font-weight:600;text-decoration:none}
  .fwrap .fabout{color:rgba(255,255,255,.74);max-width:760px;margin-bottom:1.3rem;line-height:1.75}
  .fwrap .fnote{margin-bottom:1rem}
  .fwrap .flegal{font-size:11.5px;color:rgba(255,255,255,.55);border-top:1px solid rgba(255,255,255,.14);padding-top:1rem}
  .fpolicy{display:flex;flex-wrap:wrap;gap:.5rem 1.3rem;margin-top:.9rem}
  .fpolicy a{color:rgba(255,255,255,.7);text-decoration:none;font-size:12px;font-weight:600}
  .fpolicy a:hover{color:#fff;text-decoration:underline}
  .fdir{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem 1.5rem;margin:0 0 1.6rem;
    padding:1.4rem 0;border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14)}
  .fdir h4{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.6);margin-bottom:.7rem}
  .fdir a{display:block;color:rgba(255,255,255,.82);text-decoration:none;font-size:13.5px;line-height:1.5;margin-bottom:.35rem}
  .fdir a:hover{color:#fff;text-decoration:underline}
  @media (max-width:680px){ .fdir{grid-template-columns:1fr} }

  /* ── header nav ───────────────────────────────────────────── */
  /* nav styles consolidated in header block above */

  /* ── guides hub ───────────────────────────────────────────── */
  .ghero{padding:3.4rem 0 1.6rem;max-width:680px}
  .ghero .eyebrow{margin-bottom:.5rem}
  .ghero h1{font-size:clamp(2.1rem,5vw,3.2rem);letter-spacing:-.03em;line-height:1.05}
  .ghero p{font-size:clamp(1.02rem,2vw,1.15rem);color:var(--ink-soft);max-width:56ch;margin-top:.9rem}
  .gcat{display:flex;align-items:center;gap:.6rem;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);margin:2.4rem 0 1rem}
  .gcat::before{content:"";width:16px;height:2px;background:var(--gold);border-radius:2px}
  .gcat:first-of-type{margin-top:1rem}
  .ggrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:1rem}
  .gcard{position:relative;text-align:left;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);
    padding:1.3rem 1.35rem;cursor:pointer;transition:transform .2s cubic-bezier(.2,.7,.3,1),box-shadow .2s,border-color .2s;
    box-shadow:var(--shadow-s);display:flex;flex-direction:column;gap:.45rem}
  .gcard:hover{transform:translateY(-3px);box-shadow:var(--shadow-m);border-color:var(--line-strong)}
  .gcard h3{font-size:1.08rem;letter-spacing:-.01em;line-height:1.25}
  .gcard p{font-size:13.5px;color:var(--ink-soft);line-height:1.5;flex:1}
  .gcard .gmeta{font-size:12px;font-weight:700;color:var(--ink-mute);display:flex;align-items:center;gap:7px;margin-top:.4rem;
    padding-top:.7rem;border-top:1px solid var(--line)}
  .gcard .gmeta .go{color:var(--navy);display:inline-flex;align-items:center;gap:5px;margin-left:auto;transition:.18s}
  .gcard:hover .gmeta .go{color:var(--gold)}
  .gcard.sdlt-tile{background:linear-gradient(135deg,var(--navy) 0%,var(--navy-deep) 100%);border-color:transparent;color:#fff}
  .gcard.sdlt-tile h3{color:#fff}
  .gcard.sdlt-tile p{color:rgba(255,255,255,.78)}
  .gcard.sdlt-tile .gmeta{color:rgba(255,255,255,.6);border-top-color:rgba(255,255,255,.15)}
  .gcard.sdlt-tile .gmeta .go{color:#fff}
  .gcard.sdlt-tile:hover .gmeta .go{color:#fff}
  .gcard.allguides-tile{background:var(--navy-tint);border-color:transparent}
  .gcard.allguides-tile .gmeta .go{color:var(--gold)}
  .gcard.allguides-tile:hover{border-color:var(--gold)}

  /* ── article ──────────────────────────────────────────────── */
  .article{max-width:760px;margin:0 auto;padding:1.5rem 0 1rem}
  .crumbs{display:flex;align-items:center;gap:.5rem;font-size:13px;color:var(--ink-mute);margin-bottom:1.3rem;flex-wrap:wrap}
  .crumbs button{background:none;border:none;color:var(--navy);font-weight:600;cursor:pointer;font-family:inherit;font-size:13px;padding:0}
  .crumbs button:hover{text-decoration:underline}
  .crumbs .sep{opacity:.5}
  .article .acat{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold)}
  .article h1{font-size:clamp(1.8rem,4.4vw,2.6rem);color:var(--ink);margin:.5rem 0 .6rem;line-height:1.12}
  .article .dek{font-size:clamp(1.05rem,2.2vw,1.2rem);color:var(--ink-soft);line-height:1.5;margin-bottom:.6rem}
  .article .ameta{font-size:12.5px;color:var(--ink-mute);font-weight:600;margin-bottom:1.8rem;padding-bottom:1.4rem;border-bottom:1px solid var(--line)}
  .article h2{font-size:clamp(1.35rem,3vw,1.7rem);color:var(--ink);margin:2.1rem 0 .7rem;line-height:1.2}
  .article h3{font-size:1.12rem;color:var(--ink);margin:1.5rem 0 .5rem}
  .article p{font-size:16px;color:var(--ink-soft);line-height:1.72;margin-bottom:1rem}
  .article ul,.article ol{margin:0 0 1.1rem 0;padding-left:1.2rem}
  .article li{font-size:16px;color:var(--ink-soft);line-height:1.66;margin-bottom:.5rem}
  .article b,.article strong{color:var(--ink);font-weight:600}
  .article a{color:var(--navy);font-weight:600}

  /* ── contact page ─────────────────────────────────────────── */
  .article.contact{max-width:980px}
  .contact-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:1.5rem;
    margin:1.9rem 0 2.4rem;align-items:stretch}
  .contact-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);
    padding:1.5rem 1.6rem;box-shadow:var(--shadow-s);display:flex;flex-direction:column}
  .contact-item{display:flex;gap:1rem;align-items:flex-start;padding:1.05rem 0;border-top:1px solid var(--line)}
  .contact-item:first-of-type{border-top:0;padding-top:.15rem}
  .contact-ic{flex:0 0 auto;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;
    background:var(--gold-soft);color:var(--gold)}
  .contact-ic svg{width:20px;height:20px}
  .contact-lbl{font-size:11.5px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
    color:var(--ink-mute);margin-bottom:.2rem}
  .contact-val{font-size:1.06rem;font-weight:600;color:var(--ink);line-height:1.4}
  .contact-val a{color:var(--ink);font-weight:600;text-decoration:none;word-break:break-word}
  .contact-val a:hover{color:var(--gold)}
  .contact-val.addr{font-weight:600;line-height:1.5}
  .contact-sub{font-size:13px;color:var(--ink-mute);margin-top:.2rem;font-weight:500}
  .contact-actions{display:flex;gap:.7rem;flex-wrap:wrap;margin-top:auto;padding-top:1.4rem}
  .contact-actions .btn{flex:0 1 auto;font-size:14.5px;padding:12px 20px}
  .contact-map{position:relative;border-radius:var(--r-lg);overflow:hidden;border:1px solid var(--line);
    box-shadow:var(--shadow-s);min-height:370px;background:var(--surface-2)}
  .contact-map iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
  .contact-maplink{position:absolute;left:12px;bottom:12px;z-index:2;background:#fff;color:var(--navy);
    font-size:13px;font-weight:600;text-decoration:none;padding:9px 13px;border-radius:99px;
    box-shadow:var(--shadow-m);display:inline-flex;align-items:center;gap:.4rem}
  .contact-maplink:hover{color:var(--gold)}
  .contact-notes{max-width:720px;margin-top:.4rem}
  @media (max-width:820px){
    .contact-grid{grid-template-columns:1fr}
    .contact-map{min-height:300px;order:-1}
  }
  .callout{background:var(--navy-tint);border:1px solid #d7daea;border-left:4px solid var(--navy);
    border-radius:var(--r);padding:1rem 1.2rem;margin:1.4rem 0;font-size:14.5px;color:var(--ink-soft);line-height:1.6}
  .callout b{color:var(--navy)}
  .callout.tip{background:var(--gold-soft);border-color:#f0cfe2;border-left-color:var(--gold)}
  .callout.tip b{color:var(--gold)}
  .pc{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.2rem 0 1.4rem}
  .pcbox{border:1px solid var(--line);border-radius:var(--r);padding:1rem 1.1rem;background:var(--card)}
  .pcbox h4{font-size:14px;font-weight:700;display:flex;align-items:center;gap:7px;margin-bottom:.6rem}
  .pcbox.pros h4{color:var(--save)} .pcbox.cons h4{color:var(--over)}
  .pcbox ul{margin:0;padding-left:1.05rem}
  .pcbox li{font-size:14px;line-height:1.55;margin-bottom:.45rem}
  .pcbox.pros li::marker{content:"✓  ";color:var(--save);font-weight:700}
  .pcbox.cons li::marker{content:"–  ";color:var(--over);font-weight:700}
  .keytable{width:100%;border-collapse:collapse;margin:1.2rem 0 1.5rem;font-size:14.5px}
  .keytable th,.keytable td{text-align:left;padding:.7rem .8rem;border-bottom:1px solid var(--line);vertical-align:top;color:var(--ink-soft)}
  .keytable th{color:var(--ink);font-weight:700;background:var(--surface)}
  .keytable td:first-child{font-weight:600;color:var(--ink);width:32%}
  .gloss dt{font-weight:700;color:var(--ink);margin-top:1.1rem;font-size:15.5px}
  .gloss dd{margin:.25rem 0 0;color:var(--ink-soft);font-size:15px;line-height:1.6}
  .cta-box{position:relative;background:var(--navy);color:#fff;border-radius:var(--r-lg);padding:1.9rem 1.9rem;margin:2.6rem 0 1.6rem;
    overflow:hidden}
  .cta-box::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--gold)}
  .cta-box h3{color:#fff;font-size:1.35rem;letter-spacing:-.02em;margin-bottom:.4rem}
  .cta-box p{color:rgba(255,255,255,.8);font-size:14.5px;margin-bottom:1.3rem;line-height:1.55;max-width:46ch}
  .cta-box .ctas{display:flex;gap:.7rem;flex-wrap:wrap}
  .cta-box .cbtn{font-weight:700;font-size:14.5px;padding:12px 22px;border-radius:99px;cursor:pointer;border:1px solid transparent;font-family:inherit}
  .cta-box .cbtn.p{background:#fff;color:var(--navy)}
  .cta-box .cbtn.s{background:rgba(255,255,255,.12);color:#fff;border-color:rgba(255,255,255,.3)}
  .cta-box .cbtn:hover{transform:translateY(-1px)}
  .cta-box .cta-contact{margin-top:1.1rem;font-size:13px;color:rgba(255,255,255,.72)}
  .cta-box .cta-contact a{color:#fff;font-weight:700;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.4)}
  .cta-box .cta-contact a:hover{border-bottom-color:#fff}
  .related{margin:2rem 0 1rem}
  .related h3{font-size:1.05rem;color:var(--ink);margin-bottom:.9rem}
  .relgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:.7rem}
  .relcard{text-align:left;background:var(--card);border:1px solid var(--line);border-radius:var(--r);
    padding:.85rem 1rem;cursor:pointer;font-size:14px;font-weight:600;color:var(--ink);transition:.15s;
    display:flex;align-items:center;justify-content:space-between;gap:8px;font-family:inherit}
  .relcard:hover{border-color:var(--navy);color:var(--navy)}
  /* why positive lending */
  .why{margin:0}
  .why-head{max-width:660px;margin-bottom:1.7rem}
  .why-head--split{max-width:none;display:grid;grid-template-columns:1.3fr .9fr;gap:2rem;align-items:center;margin-bottom:2rem}
  .why-head--split .why-head-text{max-width:560px}
  .why-head-img{margin:0}
  .why-head-img img{width:100%;height:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r-lg);box-shadow:var(--shadow-m);display:block;background:var(--surface-2)}
  @media (max-width:760px){ .why-head--split{grid-template-columns:1fr} .why-head-img{display:none} }
  .why-head h2{font-size:1.6rem;letter-spacing:-.02em;margin:.35rem 0 .55rem;color:var(--ink)}
  .why-lede{color:var(--ink-soft);font-size:1.02rem;line-height:1.6}
  .stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);
    border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;margin-bottom:1.8rem}
  .stat{background:var(--card);padding:1.4rem 1rem;text-align:center}
  .stat-n{font-size:1.85rem;font-weight:800;color:var(--navy);letter-spacing:-.02em;line-height:1}
  .stat-l{font-size:12.5px;color:var(--ink-mute);margin-top:.4rem;font-weight:600}
  .why-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.8rem}
  .why-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.4rem 1.5rem}
  .why-ic{color:var(--gold);margin-bottom:.5rem}
  .why-card h3{font-size:1.06rem;margin:0 0 .4rem;letter-spacing:-.01em;color:var(--ink)}
  .why-card p{font-size:14px;color:var(--ink-soft);line-height:1.6}
  .why-cta{display:flex;align-items:center;gap:.6rem 1rem;flex-wrap:wrap;
    background:var(--navy-tint);border-radius:var(--r-lg);padding:1.2rem 1.5rem}
  .why-cta-t{font-weight:700;color:var(--navy);font-size:1.02rem;margin-right:.3rem}
  .why-call{font-weight:600;color:var(--ink-soft);text-decoration:none;font-size:14.5px}
  .why-call:hover{color:var(--navy)}
  @media (max-width:680px){
    .stats{grid-template-columns:repeat(2,1fr)}
    .why-grid{grid-template-columns:1fr}
    .why-head h2{font-size:1.4rem}
  }
  /* home guides teaser */
  .home-guides{margin:0}
  .home-guides .hg-head{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;margin-bottom:1.2rem;flex-wrap:wrap}
  .home-guides .hg-head h2{white-space:nowrap}
  .home-guides h2{font-size:1.5rem;letter-spacing:-.02em}
  .home-guides .seeall{font-size:14px;font-weight:700;color:var(--gold);background:none;border:none;cursor:pointer;font-family:inherit}
  .home-guides .seeall:hover{text-decoration:underline}
  .home-guides .home-feat{grid-template-columns:repeat(3,1fr)}
  @media (max-width:760px){ .home-guides .home-feat{grid-template-columns:repeat(2,1fr)} }
  @media (max-width:520px){ .home-guides .home-feat{grid-template-columns:1fr} }
  @media(max-width:560px){ .pc{grid-template-columns:1fr} .keytable td:first-child{width:40%} }

  /* ── stamp duty calculator ────────────────────────────────── */
  .sd-wrap{max-width:980px;margin:0 auto;padding:1.5rem 0 1rem}
  .sd-head{margin-bottom:1.6rem}
  .sd-head h1{font-size:clamp(1.8rem,4.4vw,2.6rem);color:var(--ink);margin:.4rem 0 .5rem}
  .sd-lede{font-size:clamp(1.02rem,2vw,1.15rem);color:var(--ink-soft);max-width:60ch;line-height:1.5}
  .sd-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.4rem;align-items:start}
  .sd-form{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.5rem 1.5rem 1.6rem;box-shadow:var(--shadow-s)}
  .sd-label{display:block;font-size:13px;font-weight:700;color:var(--ink);margin:1.2rem 0 .55rem}
  .sd-label:first-child{margin-top:0}
  .sdseg{display:grid;gap:.5rem}
  .sdseg.two{grid-template-columns:1fr 1fr}
  .sdseg.three{grid-template-columns:1fr 1fr 1fr}
  .sdseg-btn{text-align:left;background:var(--surface);border:1.5px solid var(--line-strong);border-radius:var(--r);
    padding:.7rem .8rem;cursor:pointer;font-family:inherit;transition:.15s;display:flex;flex-direction:column;gap:2px}
  .sdseg-btn:hover{border-color:var(--navy)}
  .sdseg-btn.on{border-color:var(--navy);background:var(--navy-tint);box-shadow:inset 0 0 0 1px var(--navy)}
  .sdseg-t{font-weight:700;font-size:14px;color:var(--ink)}
  .sdseg-s{font-size:11.5px;color:var(--ink-mute);line-height:1.2}
  .sd-money{display:flex;align-items:center;background:var(--surface);border:1.5px solid var(--line-strong);border-radius:var(--r);padding:0 1rem;transition:.15s}
  .sd-money:focus-within{border-color:var(--navy);background:var(--card);box-shadow:0 0 0 3px rgba(32,40,88,.12)}
  .sd-pound{font-size:1.4rem;font-weight:600;color:var(--ink-mute);margin-right:.4rem}
  .sd-input{flex:1;border:none;background:none;outline:none;font-family:inherit;font-size:1.6rem;font-weight:600;color:var(--ink);padding:.7rem 0}
  .sd-checks{margin-top:1.2rem;display:flex;flex-direction:column;gap:.6rem}
  .sd-check{display:flex;align-items:flex-start;gap:.7rem;background:var(--surface);border:1.5px solid var(--line-strong);
    border-radius:var(--r);padding:.8rem .9rem;cursor:pointer;transition:.15s}
  .sd-check:hover{border-color:var(--navy)}
  .sd-check.on{border-color:var(--navy);background:var(--navy-tint)}
  .sd-check input{margin-top:3px;width:17px;height:17px;accent-color:var(--navy);flex:0 0 auto}
  .sd-check b{display:block;font-size:14px;color:var(--ink)}
  .sd-check small{display:block;font-size:12px;color:var(--ink-mute);line-height:1.3;margin-top:1px}
  .sd-hint{font-size:13px;color:var(--ink-soft);background:var(--gold-soft);border-radius:var(--r);padding:.7rem .85rem;margin-top:1rem;line-height:1.45}
  .sd-result{position:sticky;top:90px}
  .sd-empty{position:relative;display:flex;flex-direction:column;align-items:center;
    background:linear-gradient(180deg,#ffffff,#f7f8fc);border:1.5px dashed var(--line-strong);
    border-radius:var(--r-lg);padding:2.75rem 1.6rem;text-align:center;color:var(--ink-mute)}
  .sd-empty-ic{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;
    background:var(--gold-soft);color:var(--gold);margin-bottom:1.05rem;
    box-shadow:0 0 0 7px rgba(202,7,116,.06)}
  .sd-empty-ic svg{width:26px;height:26px}
  .sd-empty-t{font-size:15px;font-weight:600;color:var(--ink-soft)}
  .sd-empty-s{margin-top:.35rem;font-size:13px;color:var(--ink-mute);max-width:32ch;line-height:1.5}
  .sd-total{background:var(--navy);color:#fff;border-radius:var(--r-lg) var(--r-lg) 0 0;padding:1.6rem 1.5rem 1.4rem;text-align:center}
  .sd-total-lbl{font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.7)}
  .sd-total-num{font-weight:700;letter-spacing:-.035em;font-size:clamp(2.4rem,7vw,3.2rem);line-height:1.05;margin:.3rem 0}
  .sd-eff{font-size:13px;color:rgba(255,255,255,.8)}
  .sd-table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-top:none;font-size:13.5px}
  .sd-table th,.sd-table td{padding:.6rem .9rem;border-bottom:1px solid var(--line);text-align:left;color:var(--ink-soft)}
  .sd-table th{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-mute);background:var(--surface)}
  .sd-table .num{text-align:right;font-variant-numeric:tabular-nums}
  .sd-table tr:last-child td{border-bottom:none}
  .sd-note{font-size:12.5px;color:var(--ink-mute);line-height:1.5;margin-top:.8rem;padding:0 .2rem}
  .sd-relief{font-size:13px;color:var(--ink-soft);background:var(--gold-soft);border-radius:var(--r);padding:.8rem .9rem;margin-top:.8rem;line-height:1.5}
  .sd-cta{margin-top:1.1rem}
  .sd-disclaimer{font-size:12.5px;color:var(--ink-mute);line-height:1.6;background:var(--surface-2);border-radius:var(--r);padding:1.1rem 1.3rem;margin-top:1.8rem}
  .sd-disclaimer b{color:var(--ink-soft)}
  @media(max-width:760px){ .sd-grid{grid-template-columns:1fr} .sd-result{position:static} .sdseg.three{grid-template-columns:1fr} }

  /* compare: two-bar visual */
  .cmp-bars{display:grid;gap:.85rem;margin:1.5rem 0 .3rem}
  .cmp-bar{}
  .cmp-bar .cb-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.4rem}
  .cmp-bar .cb-name{font-size:13.5px;font-weight:600;color:var(--ink-soft)}
  .cmp-bar .cb-name b{color:var(--ink)}
  .cmp-bar .cb-val{font-size:1.05rem;font-weight:700;color:var(--ink);font-variant-numeric:tabular-nums}
  .cmp-bar .cb-track{height:26px;background:var(--surface-2);border-radius:8px;overflow:hidden}
  .cmp-bar .cb-fill{height:100%;border-radius:8px;transition:width .8s cubic-bezier(.4,0,.2,1)}
  .cmp-bar.now .cb-fill{background:linear-gradient(90deg,#5a6779,#46506180)}
  .cmp-bar.best .cb-fill{background:linear-gradient(90deg,var(--save),#13a074)}
  .cmp-bar.best.over .cb-fill{background:linear-gradient(90deg,var(--over),#c0563f)}
  .cmp-bar.best .cb-val{color:var(--save)}
  .cmp-bar.best.over .cb-val{color:var(--over)}
  .savechip{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:700;padding:7px 14px;
    border-radius:99px;margin-top:.4rem}
  .savechip.save{background:var(--save-soft);color:var(--save);border:1px solid var(--save-line)}
  .savechip.over{background:var(--over-soft);color:var(--over);border:1px solid #e8c4ba}

  /* source: range strip */
  .range-strip{margin:1.5rem 0 .3rem}
  .rs-track{position:relative;height:40px;border-radius:10px;
    background:linear-gradient(90deg,var(--save-soft),var(--surface-2) 55%,#f6e6e0);border:1px solid var(--line)}
  .rs-end{position:absolute;top:50%;transform:translateY(-50%);font-size:12px;font-weight:700;
    background:#fff;border:1px solid var(--line);border-radius:99px;padding:4px 11px;box-shadow:var(--shadow-s);font-variant-numeric:tabular-nums}
  .rs-end.lo{left:8px;color:var(--save)}
  .rs-end.hi{right:8px;color:var(--over)}
  .rs-cap{display:flex;justify-content:space-between;margin-top:.55rem;font-size:12px;color:var(--ink-mute)}
  .rs-note{margin-top:.9rem;font-size:14px;color:var(--ink-soft)}
  .rs-note b{color:var(--ink)}

  @media (max-width:860px){
    .hero-grid{grid-template-columns:1fr;gap:2rem}
    .hero-card{max-width:420px}
    .how-grid{grid-template-columns:1fr}
  }
  @media (max-width:640px){
    .paths{grid-template-columns:1fr}
    .choices.two{grid-template-columns:1fr}
    .deal{grid-template-columns:1fr;gap:.8rem}
    .deal-r{text-align:left}
    .hwrap{padding:.7rem 1rem;gap:.5rem}
    .hnav{display:none}
    .hcontact{margin-left:auto;border-left:none;padding-left:0}
    .res-hero{padding:1.6rem 1.3rem;border-radius:var(--r-lg)}
    .qcard{padding:1.5rem 1.2rem}
  }

/* ── static SEO pages ─────────────────────────────────────── */
a.brand{text-decoration:none}
.fwrap .foot-warn{color:#fff;font-size:13px;line-height:1.6;background:rgba(202,7,116,.18);border:1px solid rgba(202,7,116,.4);border-radius:10px;padding:.8rem 1rem;margin-bottom:1rem}
.fwrap .fabout{color:rgba(255,255,255,.74);max-width:760px;margin-bottom:1.3rem;line-height:1.75}
.hlink{text-decoration:none}
.hmail,.hphone{text-decoration:none}
.crumbs a{background:none;border:none;color:var(--navy);font-weight:600;cursor:pointer;font-family:inherit;font-size:13px;padding:0;text-decoration:none}
.crumbs a:hover{text-decoration:underline}
.quick-answer{background:var(--gold-soft);border:1px solid #f0cfe2;border-left:4px solid var(--gold);
  border-radius:var(--r);padding:1.1rem 1.3rem;margin:0 0 1.6rem}
.guide-compliance{font-size:12px;line-height:1.65;color:var(--ink-mute);background:var(--surface-2);
  border:1px solid var(--line);border-radius:var(--r);padding:.9rem 1.1rem;margin:1.8rem 0 0}
.ameta{font-size:12.5px;color:var(--ink-mute);font-weight:600;margin:0 0 1.4rem}
.quick-answer .qa-label{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);margin-bottom:.4rem}
.quick-answer p{font-size:16px;color:var(--ink);line-height:1.6;margin:0}
.quick-answer b{color:var(--ink)}
a.gcard{text-decoration:none;color:inherit}
a.relcard{text-decoration:none}
.related h2{font-size:1.05rem;color:var(--ink);margin-bottom:.9rem}
.cta-box .cbtn{display:inline-block;text-decoration:none}


/* ── Header: highlighted Product Sourcing Tool button ── */
.hlink--tool{background:var(--gold,#CA0774);color:#fff !important;border-radius:22px;
  padding:.5rem 1rem;font-weight:700;box-shadow:0 4px 12px rgba(202,7,116,.25);
  transition:transform .15s,box-shadow .15s}
.hlink--tool:hover{transform:translateY(-1px);box-shadow:0 6px 16px rgba(202,7,116,.35);
  background:var(--gold,#CA0774);color:#fff}
a.hlink--tool{text-decoration:none}


/* ── Author byline with photo ── */
.ameta{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}
.byline-face{width:34px;height:34px;border-radius:50%;object-fit:cover;object-position:top;
  border:2px solid #FBF5EC;box-shadow:0 2px 8px rgba(32,40,88,.15);flex:0 0 auto}

:focus-visible{outline:2.5px solid var(--gold,#CA0774);outline-offset:2px}


/* ── Standalone repayment calculator ── */
.calc-card{background:#fff;border:1px solid var(--line,#e6e8ef);border-radius:18px;padding:1.4rem 1.5rem;
  box-shadow:0 10px 26px rgba(32,40,88,.08);margin:1.2rem 0 1.8rem}
.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.9rem}
.calc-grid label{font-size:.78rem;font-weight:700;color:var(--ink,#23243a)}
.calc-grid input,.calc-grid select{display:block;width:100%;margin-top:.35rem;font:inherit;font-size:1rem;
  padding:.6rem .7rem;border:1.5px solid var(--line,#e6e8ef);border-radius:10px;box-sizing:border-box;background:#fff}
.calc-out{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.8rem;margin-top:1.2rem}
.calc-out div{background:#FBF5EC;border-radius:12px;padding:.85rem .95rem}
.calc-out span{display:block;font-size:.74rem;color:var(--ink-mute,#888ba1);font-weight:600}
.calc-out b{display:block;font-size:1.35rem;color:var(--blue,#005881);margin-top:.15rem}
.calc-note{font-size:.82rem;color:var(--ink-mute,#888ba1);margin:.9rem 0 0}
.calc-cta{background:#f4f6fa;border-radius:16px;padding:1.3rem 1.5rem;margin-top:1.8rem}
.calc-cta .hero-btn{display:inline-block;background:var(--navy,#292A43);color:#fff;text-decoration:none;
  font-weight:700;border-radius:12px;padding:.75rem 1.4rem}

.rates-table{width:100%;border-collapse:collapse;margin:1rem 0 1.2rem;font-size:.92rem}
.rates-table th{text-align:left;background:#FBF5EC;color:var(--ink,#23243a);padding:.6rem .8rem;border-bottom:2px solid var(--gold,#CA0774)}
.rates-table td{padding:.55rem .8rem;border-bottom:1px solid var(--line,#eef0f4);color:var(--ink-soft,#4f5168)}
.rates-table td:nth-child(n+2){font-variant-numeric:tabular-nums}
