
:root{
  --ink:#10163C;        /* Luminate navy — all body ink */
  --ink-2:#414B70;
  --ink-3:#5D678D;
  --rule:rgba(16,22,60,.13);
  --rule-soft:rgba(16,22,60,.07);
  --blue:#2E5FD4;       /* readable accent — links, eyebrows */
  --blue-fill:#548DFD;  /* Luminate button blue */
  --sky:#9BDFFE;        /* Luminate sky — tints only */
  --tint:#F5F8FD;
  --tint-2:#EDF3FB;
  --paper:#FFFFFF;
  --measure:38rem;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{
  background:var(--paper);color:var(--ink);
  font-family:'Source Serif 4',Georgia,serif;
  font-size:18px;line-height:1.65;
  font-feature-settings:"kern","liga";
  -webkit-font-smoothing:antialiased;
}
.sans{font-family:'Poppins',system-ui,sans-serif;}

/* ── skip link + focus ── */
.skip{position:absolute;left:-9999px;}
.skip:focus{left:1rem;top:1rem;z-index:200;background:var(--ink);color:#fff;
  padding:.6rem 1rem;border-radius:6px;font-family:'Poppins',sans-serif;}
a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:3px;border-radius:3px;}

/* ── masthead ── */
.mast{border-bottom:1px solid var(--rule);background:rgba(255,255,255,.92);
  backdrop-filter:blur(12px);position:sticky;top:0;z-index:100;}
.mast-in{max-width:64rem;margin:0 auto;padding:.85rem 1.5rem;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;}
.wordmark{font-family:'Poppins',sans-serif;font-weight:600;font-size:.95rem;
  letter-spacing:-.01em;color:var(--ink);text-decoration:none;}
.wordmark b{color:var(--blue);font-weight:600;}
.mast nav{display:flex;gap:1.4rem;font-family:'Poppins',sans-serif;font-size:.8rem;}
.mast nav a{color:var(--ink-2);text-decoration:none;}
.mast nav a:hover{color:var(--blue);}
@media(max-width:680px){.mast nav{gap:.9rem;font-size:.72rem;flex-wrap:wrap;justify-content:flex-end;}.mast-in{flex-wrap:wrap;gap:.5rem;}}

/* ── shell ── */
.wrap{max-width:64rem;margin:0 auto;padding:0 1.5rem;}
main{padding:3.5rem 0 1rem;}
.col{max-width:var(--measure);}

/* ── type scale ── */
.eyebrow{font-family:'Poppins',sans-serif;font-size:.7rem;font-weight:600;
  letter-spacing:.13em;text-transform:uppercase;color:var(--blue);margin-bottom:1rem;}
h1{font-family:'Poppins',sans-serif;font-weight:600;font-size:clamp(2rem,5vw,3rem);
  line-height:1.1;letter-spacing:-.025em;margin-bottom:1.5rem;max-width:20ch;}
h2{font-family:'Poppins',sans-serif;font-weight:600;font-size:1.3rem;
  line-height:1.3;letter-spacing:-.015em;margin:3rem 0 1rem;max-width:26ch;}
h3{font-family:'Poppins',sans-serif;font-weight:600;font-size:1.02rem;margin:2rem 0 .5rem;}
p{margin-bottom:1.15rem;}
p:last-child{margin-bottom:0;}
a{color:var(--blue);text-decoration:underline;text-underline-offset:2px;
  text-decoration-thickness:1px;text-decoration-color:rgba(46,95,212,.35);}
a:hover{text-decoration-color:var(--blue);}
strong{font-weight:600;}
em{font-style:italic;}

/* ── THE SIGNATURE: the answer block ──
   The page's title question, answered in 40-60 words, before anything else.
   This is the GEO strategy made structural — it's the passage built to be
   extracted and quoted, so it gets the strongest treatment on the page. */
.answer{
  border-left:3px solid var(--blue-fill);
  background:linear-gradient(90deg,rgba(155,223,254,.16),rgba(155,223,254,0));
  padding:1.4rem 1.6rem;margin:0 0 2.75rem;
  font-family:'Poppins',sans-serif;font-weight:400;
  font-size:1.13rem;line-height:1.55;letter-spacing:-.008em;color:var(--ink);
}
.answer .lbl{display:block;font-size:.66rem;font-weight:600;letter-spacing:.14em;
  text-transform:uppercase;color:var(--blue);margin-bottom:.6rem;}

/* ── comparison table ── */
.tbl-wrap{overflow-x:auto;margin:2rem 0;}
table{border-collapse:collapse;width:100%;font-family:'Poppins',sans-serif;
  font-size:.84rem;min-width:34rem;}
th,td{text-align:left;padding:.7rem .9rem;border-bottom:1px solid var(--rule-soft);
  vertical-align:top;}
thead th{font-weight:600;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--blue);border-bottom:1px solid var(--rule);}
tbody th{font-weight:500;color:var(--ink-2);}
td:last-child{background:var(--tint);}

/* ── FAQ ── */
.faq{margin:3rem 0 0;border-top:1px solid var(--rule);}
.faq details{border-bottom:1px solid var(--rule-soft);}
.faq summary{cursor:pointer;list-style:none;padding:1.05rem 2rem 1.05rem 0;
  font-family:'Poppins',sans-serif;font-weight:500;font-size:.98rem;position:relative;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";position:absolute;right:.2rem;top:1rem;
  color:var(--blue);font-size:1.15rem;font-weight:400;transition:transform .2s;}
.faq details[open] summary::after{transform:rotate(45deg);}
.faq .a{padding:0 0 1.2rem;color:var(--ink-2);font-size:.97rem;}

/* ── estimate flag ── */
.est{display:inline-block;font-family:'Poppins',sans-serif;font-size:.63rem;
  font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:#9A5B08;
  background:#FDF4E4;border:1px solid rgba(154,91,8,.22);
  padding:.24rem .6rem;border-radius:3px;margin-bottom:1.1rem;}
.est-note{font-family:'Poppins',sans-serif;font-size:.8rem;line-height:1.55;
  color:var(--ink-3);background:var(--tint);border:1px solid var(--rule-soft);
  padding:1rem 1.1rem;border-radius:6px;margin:2rem 0;}

/* ── keep reading ── */
.next{margin:4rem 0 0;padding-top:2rem;border-top:1px solid var(--rule);}
.next h2{margin:0 0 1.1rem;font-size:.7rem;letter-spacing:.13em;
  text-transform:uppercase;color:var(--blue);font-weight:600;}
.next ul{list-style:none;display:grid;gap:.55rem;}
.next a{font-family:'Poppins',sans-serif;font-size:.95rem;text-decoration:none;
  color:var(--ink);display:block;padding:.7rem .95rem;border:1px solid var(--rule);
  border-radius:7px;transition:border-color .15s,background .15s;}
.next a:hover{border-color:var(--blue-fill);background:var(--tint);}
.next a span{color:var(--blue);}

/* ── CTA ── */
.cta{margin:4rem 0 0;padding:2rem;background:var(--tint);
  border:1px solid var(--rule-soft);border-radius:9px;}
.cta h2{margin:0 0 .6rem;font-size:1.2rem;}
.cta p{font-size:.97rem;color:var(--ink-2);margin-bottom:1.2rem;}
.btn-alt{background:transparent!important;color:var(--blue)!important;border:1px solid var(--rule)!important;}
.btn{display:inline-block;font-family:'Poppins',sans-serif;font-weight:500;
  font-size:.9rem;background:var(--blue);color:#fff;text-decoration:none;
  padding:.7rem 1.4rem;border-radius:7px;transition:background .15s;}
.btn:hover{background:var(--ink);}

/* ── index ── */
.toc{margin:3rem 0 0;}
.toc h2{font-size:.7rem;letter-spacing:.13em;text-transform:uppercase;
  color:var(--blue);margin:2.5rem 0 .9rem;}
.toc ul{list-style:none;display:grid;gap:.4rem;}
.toc a{font-family:'Poppins',sans-serif;font-size:.95rem;text-decoration:none;
  color:var(--ink);padding:.6rem .9rem;border:1px solid var(--rule);border-radius:7px;
  display:block;}
.toc a:hover{border-color:var(--blue-fill);background:var(--tint);}

/* ── footer ── */
footer{margin-top:5rem;border-top:1px solid var(--rule);background:var(--tint);
  padding:2.5rem 0;font-family:'Poppins',sans-serif;font-size:.78rem;
  line-height:1.65;color:var(--ink-3);}
footer .who{color:var(--ink);font-weight:500;margin-bottom:.35rem;}
footer p{margin-bottom:.8rem;max-width:52rem;}
footer a{color:var(--ink-2);}
/* Compliance requires the Equal Housing Lender statement UNDERNEATH the
   logo, not beside it. */
.ehl{display:inline-flex;flex-direction:column;align-items:center;gap:.2rem;margin-top:.4rem;
  text-align:center;line-height:1.25;font-size:.72rem;color:var(--ink-3);}
.ehl svg{width:26px;height:26px;}

@media(prefers-reduced-motion:reduce){*{transition:none!important;
  animation:none!important;scroll-behavior:auto!important;}}

/* ── Sources ─────────────────────────────────────────────────────────
   Citations sit at the foot of the article, before the call to action.
   Quiet by design — present for a reader who wants to check a claim,
   not competing with the content. */
.sources{margin:38px 0 0;padding:20px 22px;border:1px solid var(--line,#dfe5ee);
  border-radius:10px;background:var(--tint,#f7f9fc);}
.sources h2{margin:0 0 10px;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;
  font-weight:700;color:var(--muted,#5b6a80);}
.sources ul{margin:0;padding:0 0 0 1.05rem;}
.sources li{margin:0 0 7px;font-size:.9rem;line-height:1.55;color:var(--muted,#5b6a80);}
.sources li a{font-weight:600;}
.sources .sources-note{margin:12px 0 0;font-size:.8rem;line-height:1.55;color:var(--muted,#5b6a80);}
