:root{
  --teal:#0aa89f;
  --teal-dark:#007c74;
  --ink:#141819;
  --muted:#657073;
  --line:#e6ecec;
  --soft:#f6f9f9;
  --white:#ffffff;
  --shadow:0 18px 50px rgba(20,24,25,.08);
  --radius:22px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--ink);
  background:#fff;
}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
.shell{width:min(1180px,calc(100% - 40px));margin:0 auto}
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(230,236,236,.9);
}
.nav-wrap{min-height:82px;display:flex;align-items:center;gap:28px}
.brand img{width:340px;height:105px;object-fit:contain;display:block}
.desktop-nav{display:flex;gap:26px;margin-left:auto}
.desktop-nav a{font-weight:650;color:#344043}
.desktop-nav a:hover{color:var(--teal-dark)}
.button{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:52px;padding:0 22px;border-radius:14px;
  border:1px solid var(--teal);
  background:var(--teal);color:#fff;font-weight:750;
  transition:.2s ease;
}
.button:hover{transform:translateY(-1px);background:var(--teal-dark);border-color:var(--teal-dark)}
.button-small{min-height:44px;padding:0 18px}
.button-secondary{background:#fff;color:var(--ink);border-color:var(--line)}
.button-secondary:hover{background:var(--soft);color:var(--ink);border-color:#d8e1e1}
.full{width:100%}
.hero{padding:20px 0 72px;background:linear-gradient(180deg,#fff 0%,#fbfdfd 100%)}
.hero-grid{display:grid;grid-template-columns:1.06fr .94fr;align-items:center;gap:76px}
.eyebrow{letter-spacing:.16em;font-size:.78rem;font-weight:850;color:var(--teal-dark);margin-bottom:18px}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(3.1rem,6vw,5.8rem);line-height:.95;letter-spacing:-.055em;margin-bottom:26px}
h1 span{color:var(--teal)}
.hero-lead{font-size:1.2rem;line-height:1.65;color:var(--muted);max-width:690px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:32px 0 18px}
.microcopy{font-size:.86rem;line-height:1.55;color:#7a8588;max-width:650px}
.phone-card{
  background:#fff;border:1px solid var(--line);border-radius:34px;
  padding:28px;box-shadow:var(--shadow);position:relative;
}
.phone-card:before{
  content:"";position:absolute;inset:-22px -22px auto auto;
  width:140px;height:140px;border-radius:40px;
  background:linear-gradient(145deg,rgba(10,168,159,.16),rgba(10,168,159,.02));
  z-index:-1;
}
.phone-top{display:flex;gap:18px;align-items:center;padding:8px 6px 22px}
.phone-top img{width:76px;height:76px;object-fit:contain;border-radius:16px;border:1px solid var(--line)}
.phone-top strong{font-size:1.35rem;display:block}
.phone-top span{display:block;color:var(--muted);margin-top:5px}
.app-actions{display:grid;gap:10px}
.app-actions a,.app-actions button{
  width:100%;text-align:left;
  display:flex;align-items:center;gap:14px;
  padding:16px;border:1px solid var(--line);
  background:#fff;border-radius:16px;color:var(--ink);
  transition:.2s ease;
}
.app-actions a:hover,.app-actions button:hover{border-color:#cfe5e3;box-shadow:0 8px 24px rgba(20,24,25,.06);transform:translateY(-1px)}
.icon{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#eaf8f7;color:var(--teal-dark);font-weight:900}
.app-actions strong{display:block;font-size:.98rem}
.app-actions small{display:block;color:var(--muted);margin-top:4px;font-size:.8rem}
.section{padding:96px 0}
.soft{background:var(--soft)}
.section-heading{max-width:760px;margin-bottom:44px}
.section-heading h2,.partner-grid h2,.contact-grid h2{font-size:clamp(2.2rem,4vw,3.8rem);line-height:1.03;letter-spacing:-.04em;margin-bottom:18px}
.section-heading p,.partner-grid p,.contact-grid p{color:var(--muted);font-size:1.08rem;line-height:1.65}
.calculator-grid{display:grid;grid-template-columns:1fr .88fr;gap:34px;align-items:start}
.calc-card,.result-card,.referral-form{
  border:1px solid var(--line);border-radius:var(--radius);
  background:#fff;padding:28px;box-shadow:0 10px 30px rgba(20,24,25,.04)
}
.calc-card{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.calc-card label,.referral-form label{display:grid;gap:8px;font-weight:700;font-size:.92rem}
.input-wrap{display:flex;align-items:center;border:1px solid #dfe7e7;border-radius:12px;background:#fff;overflow:hidden}
.input-wrap span{padding:0 12px;color:#6f7b7d;font-weight:700}
.input-wrap input{width:100%;border:0;outline:0;padding:14px 12px;background:transparent}
select,.referral-form input,.referral-form textarea{
  width:100%;border:1px solid #dfe7e7;border-radius:12px;padding:14px 13px;outline:0;background:#fff
}
select:focus,.referral-form input:focus,.referral-form textarea:focus,.input-wrap:focus-within{border-color:var(--teal);box-shadow:0 0 0 3px rgba(10,168,159,.09)}
.split-inputs{display:grid;grid-template-columns:1.2fr .8fr;gap:10px}
.result-card{position:sticky;top:110px}
.result-label{color:var(--muted);font-weight:700}
.payment{font-size:clamp(3rem,6vw,5.2rem);font-weight:850;letter-spacing:-.06em;margin:10px 0 24px}
.breakdown{border-top:1px solid var(--line);padding-top:16px;margin-bottom:22px}
.breakdown div{display:flex;justify-content:space-between;gap:16px;padding:9px 0;color:var(--muted)}
.breakdown strong{color:var(--ink)}
.disclaimer{font-size:.77rem;line-height:1.55;color:#7a8588;margin:16px 0 0}
.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.program-grid article{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;min-height:176px}
.program-grid h3{font-size:1.18rem;margin-bottom:10px}
.program-grid p{color:var(--muted);line-height:1.58;font-size:.94rem}
.partner-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}
.contact-pills{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.contact-pills a{border:1px solid var(--line);border-radius:999px;padding:12px 16px;font-weight:750}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.referral-form{display:grid;gap:16px}
.consent{grid-template-columns:auto 1fr!important;align-items:start!important;font-weight:500!important;line-height:1.45}
.consent input{width:auto;margin-top:3px}
.form-note{font-size:.8rem;color:#7a8588;margin:0;text-align:center}
.dark{background:#111617;color:#fff}
.contact-grid{display:flex;align-items:center;justify-content:space-between;gap:40px}
.contact-grid p{color:#b9c4c6}
.light{color:#76ddd6}
.contact-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.button-light{background:#fff;border-color:#fff;color:#111617}
.button-light:hover{background:#ecf4f4;border-color:#ecf4f4;color:#111617}
.button-outline-light{background:transparent;border-color:#455052;color:#fff}
.button-outline-light:hover{background:#202829;border-color:#596568}
footer{padding:46px 0;background:#fff;border-top:1px solid var(--line)}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:42px;align-items:start}
.footer-logo{width:190px;height:72px;object-fit:contain}
footer p,.legal-note{color:var(--muted);font-size:.9rem;line-height:1.6}
.footer-links{display:grid;gap:10px;font-weight:700}
.legal-note{display:grid;gap:6px}
.toast{
  position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);
  padding:12px 16px;border-radius:12px;background:#111617;color:#fff;
  opacity:0;pointer-events:none;transition:.25s ease;z-index:100;
}
.toast.show{opacity:1;transform:translate(-50%,0)}
@media (max-width:900px){
  .desktop-nav{display:none}
  .nav-wrap{justify-content:space-between}
  .hero-grid,.calculator-grid,.partner-grid{grid-template-columns:1fr}
  .hero{padding-top:56px}
  .phone-card{max-width:620px}
  .result-card{position:static}
  .program-grid{grid-template-columns:1fr 1fr}
  .contact-grid{display:grid}
  .contact-actions{justify-content:flex-start}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:620px){
  .site-header{display:none}
  .hero-copy{display:none}
  .hero{padding-top:20px}
  .brand{display:flex;justify-content:center;flex:1}

  .shell{width:min(100% - 26px,1180px)}
  .site-header .button-small{display:none}
  .brand img{width:160px}
  h1{font-size:3.4rem}
  .hero-grid{gap:44px}
  .section{padding:72px 0}
  .calc-card{grid-template-columns:1fr}
  .program-grid{grid-template-columns:1fr}
  .two-col{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .contact-actions .button{width:100%}
}


/* Suspirium Meet Our Team — append to styles.css */
.team-section{background:#fff;scroll-margin-top:120px}
.team-group-title{font-size:1.5rem;letter-spacing:-.025em;margin:0 0 20px}
.team-support-heading{margin-top:52px}
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.team-person{border:1px solid var(--line,#e6ecec);border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 10px 30px rgba(20,24,25,.045);min-width:0}
.team-person>img{width:100%;height:285px;object-fit:cover;object-position:center 24%;display:block;background:#f5f8f8}
.team-person-content{padding:22px}
.team-person h3{font-size:1.23rem;letter-spacing:-.025em;margin:0 0 6px}
.team-role{font-size:.92rem;color:#007c74;font-weight:750;min-height:2.5em;margin:0 0 12px}
.team-meta{font-size:.85rem;font-weight:650;color:#344043;line-height:1.5;margin-bottom:6px}
.team-language{font-size:.86rem;color:#657073;margin:0 0 20px}
.team-links{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}
.team-links a{border:1px solid #cfe5e3;color:#007c74;border-radius:10px;padding:10px 13px;font-size:.88rem;font-weight:750;min-height:42px;display:inline-flex;align-items:center;justify-content:center}
.team-links a:hover,.team-links a:focus-visible{background:#eaf8f7;outline-color:#007c74}
.team-footnote{font-size:.8rem;color:#657073;margin-top:28px}
@media(max-width:900px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.team-grid{grid-template-columns:1fr}.team-person>img{height:340px}.team-support-heading{margin-top:36px}.team-section{scroll-margin-top:20px}}

/* Team photos: compact, no forced stretching */
.team-person > img {height:200px;object-fit:contain;object-position:center;background:#f6f9f9}
@media(max-width:620px){.team-person > img{height:220px}}
/* Individual profile */
.profile-hero{padding:60px 0 86px;background:#f6f9f9}
.profile-back{display:inline-flex;color:var(--teal-dark);font-weight:750;margin-bottom:28px}
.profile-layout{display:grid;grid-template-columns:minmax(220px,350px) 1fr;gap:54px;align-items:start}
.profile-portrait{width:100%;max-height:390px;object-fit:contain;object-position:center;background:#fff;border:1px solid var(--line);border-radius:22px;padding:12px}
.profile-kicker{font-weight:850;letter-spacing:.13em;color:var(--teal-dark);font-size:.78rem;margin-bottom:12px}
.profile-info h1{font-size:clamp(2.3rem,5vw,4.4rem);line-height:1.06;letter-spacing:-.045em;margin-bottom:10px}
.profile-role{font-size:1.18rem;font-weight:750;margin-bottom:22px}
.profile-facts{display:grid;gap:10px;margin:20px 0 28px;color:#465256}
.profile-facts strong{color:var(--ink)}
.profile-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}
.profile-actions a{min-width:112px}
.profile-note{font-size:.88rem;color:var(--muted);line-height:1.6;max-width:640px}
.profile-application{margin-top:32px;border-top:1px solid var(--line);padding-top:26px}
.profile-application p{font-size:.88rem;color:var(--muted);line-height:1.55}
.team-profile-link{display:inline-flex;margin:0 0 12px;color:var(--teal-dark);font-weight:800;text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.profile-layout{grid-template-columns:1fr;gap:24px}.profile-portrait{max-width:330px;max-height:300px}.profile-hero{padding:30px 0 64px}}

/* Social media links: visible only for supplied profiles */
.team-social{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 16px}
.team-social a{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:7px 11px;border:1px solid #cfe5e3;border-radius:999px;background:#f5fbfa;color:#007c74;font-size:.79rem;font-weight:750;line-height:1.2}
.team-social a:hover,.team-social a:focus-visible{background:#e2f5f3;border-color:#007c74}

/* Company social links across all pages */
.company-social{display:flex;gap:9px;flex-wrap:wrap;align-items:center;margin-top:16px}
.company-social a{display:inline-flex;align-items:center;min-height:36px;padding:8px 12px;border:1px solid #b9deda;border-radius:999px;color:#007c74;background:#f3faf9;font-size:.84rem;font-weight:700;text-decoration:none}
.company-social a:hover,.company-social a:focus-visible{background:#dff2ef;border-color:#007c74}
.google-review-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;margin:12px 0 16px;padding:10px 15px;border:1px solid #cfe5e3;border-radius:10px;background:#f3faf9;color:#007c74;font-size:.88rem;font-weight:750;text-decoration:none}
.google-review-link:hover,.google-review-link:focus-visible{background:#dff2ef;border-color:#007c74}

/* Partner referral loan officer selector */
.referral-form select{width:100%;min-height:48px;padding:12px 14px;border:1px solid #d6e1e0;border-radius:10px;background:#fff;color:#263638;font:inherit;cursor:pointer}
.referral-form select:focus-visible{outline:2px solid #007c74;outline-offset:2px}

/* Company NMLS disclosure in site footer */
.footer-nmls{margin:8px 0 0;font-size:.86rem;font-weight:700;line-height:1.5;}

/* Compliance footer and legal pages */
.compliance-footer{margin-top:24px;padding-top:20px;border-top:1px solid #d6e1e0;font-size:.85rem;line-height:1.65;max-width:100%}
.compliance-footer p{margin:6px 0}.compliance-footer .equal-housing{font-weight:750}
.compliance-links{display:flex;gap:10px 20px;flex-wrap:wrap;margin:12px 0}
.compliance-links a{color:#007c74;text-decoration:underline;text-underline-offset:3px;font-weight:650}
.compliance-review-note{font-size:.76rem;opacity:.78}
.policy-header{background:#fff;border-bottom:1px solid #d6e1e0;padding:15px 0}
.policy-header .shell{display:flex;align-items:center;justify-content:space-between;gap:20px}
.policy-logo{width:155px;max-height:70px;object-fit:contain}
.policy-content{max-width:850px;padding-top:52px;padding-bottom:72px;line-height:1.75}
.policy-content h1{font-size:clamp(2rem,4vw,3rem);margin:8px 0 24px}.policy-content h2{font-size:1.25rem;margin:30px 0 10px}
.policy-content p{margin:0 0 15px}.policy-content a{color:#007c74;text-decoration:underline}
.policy-alert{border-left:4px solid #007c74;background:#f2f9f8;padding:16px 18px;margin-top:30px!important}

.footer-business-address{font-size:.86rem;line-height:1.55;opacity:.85;margin:8px 0 12px}

/* Footer layout refresh — shared by homepage, team, and policy pages */
.site-footer{background:#fff;border-top:1px solid #dce8e6;padding:44px 0 28px;color:#233538}
.site-footer .shell{width:min(1140px,calc(100% - 40px));max-width:1140px;margin-inline:auto}
.site-footer .footer-main{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start}
.site-footer .footer-main > *{min-width:0}
.site-footer .footer-logo{display:block;width:190px;max-width:100%;height:auto;max-height:84px;object-fit:contain;object-position:left center}
.site-footer .footer-tagline{margin:12px 0 10px}
.site-footer .footer-nmls{margin:0 0 8px;font-size:.9rem;font-weight:800;color:#233538}
.site-footer address{font-size:.88rem;font-style:normal;line-height:1.65;color:#586a6c}
.site-footer .footer-main h2{font-size:1rem;font-weight:800;line-height:1.3;margin:5px 0 16px;color:#233538}
.site-footer .footer-navigation{display:flex;flex-direction:column;align-items:flex-start;gap:11px}
.site-footer .footer-navigation a{font-size:.9rem;font-weight:650;text-decoration:none;color:#355052}
.site-footer .footer-navigation a:hover{text-decoration:underline;color:#007c74}
.site-footer .company-social{margin:0;display:flex;flex-wrap:wrap;gap:9px}
.site-footer .company-social a{font-size:.8rem;white-space:nowrap}
.site-footer .footer-compliance{margin-top:34px;padding-top:22px;border-top:1px solid #dce8e6;max-width:none}
.site-footer .footer-compliance p{margin:0 0 10px;line-height:1.65;font-size:.83rem}
.site-footer .footer-compliance .equal-housing{font-weight:800;color:#233538}
.site-footer .compliance-links{display:flex;flex-wrap:wrap;gap:10px 24px;margin:15px 0}
.site-footer .compliance-links a{font-size:.84rem}
.site-footer .footer-compliance .compliance-review-note{font-size:.76rem;color:#6c7a7b;margin-top:10px}
@media(max-width:800px){.site-footer .footer-main{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.site-footer .footer-connect{grid-column:1/-1}}
@media(max-width:560px){.site-footer{padding:34px 0 26px}.site-footer .shell{width:calc(100% - 36px)}.site-footer .footer-main{grid-template-columns:1fr;gap:28px}.site-footer .footer-connect{grid-column:auto}.site-footer .footer-navigation{gap:12px}.site-footer .footer-compliance{margin-top:28px}.site-footer .compliance-links{gap:12px 20px}}

/* Footer v3 */

.site-footer{background:#f7faf9!important;color:#203638!important;border-top:1px solid #dbe8e5!important;padding:48px 0 28px!important;font-family:inherit!important}
.site-footer .shell{width:calc(100% - 48px)!important;max-width:1140px!important;margin:0 auto!important}
.site-footer .footer-main{display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr)!important;gap:40px!important;align-items:start!important}
.site-footer .footer-main>*{min-width:0!important}
.site-footer .footer-logo{width:150px!important;max-width:100%!important;height:auto!important;max-height:90px!important;object-fit:contain!important;display:block!important;object-position:left!important}
.site-footer .footer-tagline{margin:14px 0 10px!important;font-size:14px!important}
.site-footer .footer-nmls{margin:0 0 10px!important;font-size:14px!important;font-weight:750!important}
.site-footer address{font-size:14px!important;line-height:1.7!important;font-style:normal!important;color:#506769!important}
.site-footer .footer-main h2{font-size:17px!important;margin:0 0 17px!important;font-weight:750!important;line-height:1.4!important}
.site-footer .footer-navigation{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:12px!important}
.site-footer .footer-navigation a{display:block!important;font-size:14px!important;line-height:1.5!important;text-decoration:none!important;color:#365355!important}
.site-footer .footer-connect .company-social{display:flex!important;flex-wrap:wrap!important;gap:9px!important;margin:0!important}
.site-footer .company-social a{display:inline-flex!important;align-items:center!important;padding:9px 13px!important;border:1px solid #b8dcd6!important;border-radius:24px!important;background:#fff!important;color:#007d75!important;font-size:13px!important;font-weight:650!important;text-decoration:none!important;white-space:nowrap!important}
.site-footer .footer-compliance{margin-top:36px!important;padding-top:22px!important;border-top:1px solid #dce7e5!important}
.site-footer .footer-compliance p{font-size:13px!important;line-height:1.7!important;margin:0 0 11px!important;color:#53696a!important}
.site-footer .footer-compliance .equal-housing{color:#203638!important;font-weight:750!important}
.site-footer .compliance-links{display:flex!important;flex-wrap:wrap!important;gap:12px 24px!important;margin:16px 0!important}
.site-footer .compliance-links a{display:inline-block!important;font-size:13px!important;line-height:1.5!important;color:#007d75!important;text-decoration:underline!important;text-underline-offset:3px!important}
.site-footer .footer-compliance .compliance-review-note{font-size:12px!important}
@media(max-width:820px){.site-footer .footer-main{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:32px!important}.site-footer .footer-connect{grid-column:1/-1!important}}
@media(max-width:560px){.site-footer{padding:34px 0 24px!important}.site-footer .shell{width:calc(100% - 36px)!important}.site-footer .footer-main{grid-template-columns:1fr!important;gap:30px!important}.site-footer .footer-connect{grid-column:auto!important}.site-footer .footer-compliance{margin-top:30px!important}}

.referral-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.referral-status{font-size:.88rem;color:#116b64;font-weight:650;min-height:1.5em;margin-top:12px}


/* Team social: outlined circular brand icons */
.team-social{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin:12px 0 16px!important;align-items:center!important}
.team-social a{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;padding:0!important;border:1.5px solid #a9d5d0!important;border-radius:50%!important;background:#fff!important;color:#007c74!important;box-shadow:none!important;text-decoration:none!important;line-height:1!important;transition:background .2s,border-color .2s,transform .2s!important}
.team-social a svg{display:block!important;width:19px!important;height:19px!important;fill:currentColor!important;flex-shrink:0!important}
.team-social a:hover,.team-social a:focus-visible{background:#e9f7f5!important;border-color:#007c74!important;transform:translateY(-1px)!important}
.team-social a:focus-visible{outline:2px solid #007c74!important;outline-offset:3px!important}


/* Company footer: match the outlined social icons used on team cards */
.site-footer .footer-connect .company-social{display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:center!important}
.site-footer .footer-connect .company-social a{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;box-sizing:border-box!important;padding:9px!important;border:1px solid #b8dcd6!important;border-radius:50%!important;background:#fff!important;color:#007c74!important;transition:background .2s,border-color .2s,transform .2s!important}
.site-footer .footer-connect .company-social a:hover,.site-footer .footer-connect .company-social a:focus-visible{background:#eaf8f7!important;border-color:#007c74!important;transform:translateY(-1px)}
.site-footer .footer-connect .company-social svg{display:block!important;width:20px!important;height:20px!important;fill:currentColor!important;stroke:none!important;flex-shrink:0!important}

/* Loan program application buttons */
#programs .program-grid > article{display:flex;flex-direction:column;align-items:flex-start}
#programs .program-grid > article .program-apply-button{margin-top:auto;padding:11px 16px;min-height:43px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:.9rem;line-height:1.3;white-space:nowrap}
#programs .program-grid > article p{margin-bottom:20px}

/* 2026 desktop refresh: house hero, mobile app menu preserved */
@media (min-width: 901px) {
  .desktop-house-hero {
    min-height: 620px; padding: 100px 0 115px;
    background-image: linear-gradient(90deg, rgba(255,255,255,1) 0%, rgba(255,255,255,.98) 28%, rgba(255,255,255,.72) 52%, rgba(255,255,255,.04) 84%), url("assets/desktop-hero-house.webp");
    background-position: center, right center;
    background-size: cover, auto 115%;
    background-repeat: no-repeat;
    background-color: #f9fcfb;
  }
  .desktop-house-hero .hero-grid {display:block;}
  .desktop-house-hero .hero-copy {display:block;max-width:650px;position:relative;z-index:1;}
  .desktop-house-hero .phone-card {display:none !important;}
  .desktop-house-hero h1 {font-size:clamp(3.5rem,5.5vw,5.4rem);line-height:1.03;}
  .desktop-house-hero .hero-lead {max-width:520px;color:#344043;}
  .desktop-house-hero .microcopy {max-width:500px;color:#4c5c5d;}
}
@media (min-width: 621px) and (max-width: 900px) {
  .desktop-house-hero {background:linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,255,255,.35)),url("assets/desktop-hero-house.webp") right center / auto 110% no-repeat;}
  .desktop-house-hero .phone-card {display:none !important;}
  .desktop-house-hero .hero-copy {display:block;}
}
@media (max-width: 620px) {
  .desktop-house-hero {background:#fff;}
  .desktop-house-hero .phone-card {display:block;}
  .desktop-house-hero .hero-copy {display:none;}
}

/* Wide, precomposed desktop house background: no cover zoom/cropping */
@media (min-width: 901px) {
  .desktop-house-hero {
    min-height: 620px;
    background-image: url("assets/desktop-hero-wide.webp") !important;
    background-position: center center !important;
    background-size: 100% 100% !important;
    background-repeat: no-repeat !important;
    background-color: #fff;
  }
}

/* Production hero slideshow — full-bleed imagery, isolated from other sections */
.desktop-house-hero{position:relative;isolation:isolate;overflow:hidden;background:#e7f1f2!important;min-height:620px}
.desktop-house-hero .hero-slides,.desktop-house-hero .hero-slide,.desktop-house-hero .hero-slide-shade{position:absolute;inset:0}
.desktop-house-hero .hero-slides{z-index:-2}
.desktop-house-hero .hero-slide{background-position:center center;background-size:cover;background-repeat:no-repeat;opacity:0;transition:opacity 1.2s ease-in-out}
.desktop-house-hero .hero-slide.is-active{opacity:1}
.desktop-house-hero .hero-slide-shade{z-index:-1;background:linear-gradient(90deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.90) 27%,rgba(255,255,255,.58) 49%,rgba(255,255,255,.06) 80%)}
.desktop-house-hero .hero-grid{position:relative;z-index:1}
.desktop-house-hero .hero-slide-controls{position:absolute;bottom:22px;left:50%;transform:translateX(-50%);z-index:3;display:flex;gap:15px;align-items:center;padding:6px 12px;border-radius:999px;background:rgba(15,35,38,.52)}
.desktop-house-hero .hero-slide-dots{display:flex;gap:10px;align-items:center}
.desktop-house-hero .hero-slide-dot{width:11px;height:11px;padding:0;border:1px solid white;border-radius:50%;background:transparent;cursor:pointer}
.desktop-house-hero .hero-slide-dot.is-active{background:#19b5b8;border-color:#19b5b8}
.desktop-house-hero .hero-slide-arrow{width:30px;height:30px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.2);color:white;font-size:27px;line-height:1;cursor:pointer}
.desktop-house-hero .hero-slide-arrow:hover,.desktop-house-hero .hero-slide-arrow:focus-visible{background:#139ea2}
@media(min-width:901px){.desktop-house-hero{background-image:none!important;background-size:cover!important;padding-bottom:115px}.desktop-house-hero .hero-copy{display:block}}
@media(min-width:621px) and (max-width:900px){.desktop-house-hero{background-image:none!important}.desktop-house-hero .hero-slide-shade{background:linear-gradient(90deg,rgba(255,255,255,.96),rgba(255,255,255,.48))}}
@media(max-width:620px){.desktop-house-hero{min-height:560px;background-image:none!important}.desktop-house-hero .hero-slide-shade{background:linear-gradient(180deg,rgba(255,255,255,.83),rgba(255,255,255,.42))}.desktop-house-hero .hero-slide-controls{bottom:12px}}
@media(prefers-reduced-motion:reduce){.desktop-house-hero .hero-slide{transition:none}}

/* V2 hero correction: keep all four slides above section background and avoid cover zoom. */
.desktop-house-hero .hero-slides{z-index:0;pointer-events:none}
.desktop-house-hero .hero-slide{background-size:100% auto!important;background-position:center center!important;background-color:#f6faf9}
.desktop-house-hero .hero-slide-shade{z-index:1;pointer-events:none}
.desktop-house-hero .hero-grid{position:relative;z-index:2}
.desktop-house-hero .hero-slide-controls{z-index:4}
@media(min-width:901px){
 .desktop-house-hero{box-sizing:border-box;min-height:clamp(520px,39.6vw,760px);padding:70px 0 85px;background-image:none!important}
}
@media(min-width:621px) and (max-width:900px){
 .desktop-house-hero{min-height:520px;padding:55px 0 75px}
}
@media(max-width:620px){
 .desktop-house-hero .hero-slide{background-size:contain!important;background-position:center center!important}
}
