/* ============================================================
   BRIGHT RATE MORTGAGE LLC — styles.css
   Licensed PA Mortgage Broker | NMLS #2838446
   Navy #0B2045 | Teal #1A6B7C | Gold #C9A84C
============================================================ */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --navy:#0B2045;--navy2:#152E62;--teal:#1A6B7C;
  --gold:#C9A84C;--gold2:#B8933D;--white:#FFFFFF;
  --light:#F5F7FA;--gray:#64748B;--gray-lt:#E2E8F0;
  --text:#1E293B;--rad:10px;--rad-lg:16px;
  --sh:0 2px 16px rgba(11,32,69,.09);
  --sh-lg:0 8px 40px rgba(11,32,69,.16);
  --nav-h:88px;--tr:.2s ease;
}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;color:var(--text);background:var(--white);font-size:16px;line-height:1.65}
h1,h2,h3,h4,h5{font-family:'Playfair Display',serif;font-weight:700;line-height:1.18;color:var(--navy)}
p{margin-bottom:1rem}p:last-child{margin-bottom:0}
a{color:var(--gold);text-decoration:none;transition:color var(--tr)}a:hover{color:var(--navy)}
ul{list-style:none;padding:0;margin:0}
img{max-width:100%;display:block}
input,select,textarea{font-family:inherit;font-size:.94rem;width:100%;padding:.72rem 1rem;border:1.5px solid var(--gray-lt);border-radius:var(--rad);background:var(--white);color:var(--text);transition:border-color var(--tr),box-shadow var(--tr);outline:none;display:block}
input:focus,select:focus,textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(26,107,124,.12)}
textarea{resize:vertical;min-height:120px}

/* ── LAYOUT ── */
.container{width:100%;max-width:1180px;margin:0 auto;padding:0 1.5rem}
.section{padding:4.5rem 0}
.bg-white{background:var(--white)}.bg-light{background:var(--light)}.bg-navy{background:var(--navy)}
.mt-1{margin-top:1.5rem}.mb-2{margin-bottom:1.5rem}
.section-hd{text-align:center;max-width:660px;margin:0 auto 3rem}
.section-hd h2{font-size:clamp(1.9rem,3vw,2.5rem);margin-bottom:.75rem}
.section-hd__sub{color:var(--gray);font-size:1.05rem}
.section-hd--white h2{color:var(--white)}
.eyebrow{display:block;font-family:'Inter',sans-serif;font-weight:700;font-size:.75rem;letter-spacing:.13em;text-transform:uppercase;color:var(--teal);margin-bottom:.5rem}
.eyebrow--gold{color:var(--gold)}
.text-gold{color:var(--gold)}.text-white{color:var(--white)!important}
.card{background:var(--white);border-radius:var(--rad-lg);box-shadow:var(--sh);padding:2rem}
.notice-box{background:#FFFBEB;border:1px solid #F0D080;border-left:4px solid var(--gold);border-radius:var(--rad);padding:1rem 1.25rem;font-size:.88rem;color:#5A4A1A;line-height:1.65}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.3)}}
@keyframes spinIt{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

/* ── BUTTONS ── */
.btn{display:inline-block;padding:.82rem 1.9rem;border-radius:var(--rad);font-family:'Inter',sans-serif;font-weight:600;font-size:.93rem;cursor:pointer;border:2px solid transparent;transition:all var(--tr);text-align:center;letter-spacing:.02em;text-decoration:none}
.btn-gold{background:var(--gold);color:var(--navy);border-color:var(--gold)}
.btn-gold:hover{background:var(--gold2);color:var(--navy);border-color:var(--gold2)}
.btn-navy{background:var(--navy);color:var(--white);border-color:var(--navy)}
.btn-navy:hover{background:var(--navy2);color:var(--white);border-color:var(--navy2)}
.btn-outline-white{background:transparent;color:var(--white);border-color:rgba(255,255,255,.6)}
.btn-outline-white:hover{background:rgba(255,255,255,.12);color:var(--white)}
.btn-block{width:100%;display:block}

/* ── NAVBAR ── */
.navbar{position:sticky;top:0;z-index:1000;background:var(--white);height:var(--nav-h);border-bottom:1px solid var(--gray-lt);box-shadow:var(--sh)}
.navbar__inner{display:flex;align-items:center;height:var(--nav-h);gap:1rem}
.navbar__logo{display:flex;align-items:center;flex-shrink:0;text-decoration:none}
.logo-lockup{display:flex;align-items:center;gap:13px}
.logo-mark{width:68px;height:68px;flex-shrink:0;filter:drop-shadow(0 3px 10px rgba(11,32,69,.28))}
.logo-mark svg{width:68px;height:68px;display:block}
.logo-text-block{display:flex;flex-direction:column;gap:0}
.logo-name{font-family:'Inter',sans-serif;font-weight:800;font-size:1.18rem;color:var(--navy);letter-spacing:.08em;line-height:1.1}
.logo-sub-name{font-family:'Inter',sans-serif;font-weight:700;font-size:1.02rem;color:var(--teal);letter-spacing:.06em;line-height:1.2}
.logo-tagline{font-family:'Inter',sans-serif;font-weight:500;font-size:.58rem;color:var(--gray);letter-spacing:.14em;text-transform:uppercase;margin-top:3px}
.logo-nmls{font-family:'Inter',sans-serif;font-weight:600;font-size:.6rem;color:var(--gold);letter-spacing:.03em;margin-top:2px}
.navbar__hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:.5rem;margin-left:auto}
.navbar__hamburger span{display:block;width:24px;height:2px;background:var(--navy);border-radius:2px;transition:all .3s}
.navbar__links{display:flex;align-items:center;margin-left:auto}
.navbar__links>li{position:relative}
.navbar__links>li>a{display:block;padding:.5rem .85rem;color:var(--text);font-weight:500;font-size:.9rem;white-space:nowrap;transition:color var(--tr)}
.navbar__links>li>a:hover{color:var(--teal)}
.nav-cta{margin-left:.5rem}
.has-drop:hover .dropdown{display:block}
.dropdown{display:none;position:absolute;top:100%;left:0;background:var(--white);box-shadow:var(--sh-lg);border-radius:var(--rad);border-top:3px solid var(--gold);min-width:190px;z-index:200;padding:.5rem 0}
.dropdown li a{display:block;padding:.6rem 1.25rem;color:var(--text);font-size:.88rem;transition:background var(--tr),color var(--tr)}
.dropdown li a:hover{background:var(--light);color:var(--navy)}

/* ── SPA ── */
.page{display:none}.page.active{display:block}

/* ── HERO ── */
.hero{position:relative;min-height:560px;display:flex;flex-direction:column;overflow:hidden;background:var(--navy)}
.hero__overlay{position:absolute;inset:0;z-index:0;background:linear-gradient(135deg,rgba(11,32,69,.97) 0%,rgba(11,32,69,.82) 55%,rgba(26,107,124,.55) 100%)}
.hero__overlay::after{content:'';position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg width='80' height='80' viewBox='0 0 80 80' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='0' y='0' width='40' height='40' fill='%23C9A84C' fill-opacity='0.04'/%3E%3Crect x='40' y='40' width='40' height='40' fill='%23C9A84C' fill-opacity='0.04'/%3E%3C/svg%3E")}
.hero__shine{position:absolute;top:-200px;right:-200px;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle,rgba(26,107,124,.18) 0%,transparent 70%);pointer-events:none;z-index:0}
.hero__content{position:relative;z-index:2;flex:1;padding:3.5rem 1.5rem 2.5rem;display:grid;grid-template-columns:1fr 360px;gap:3rem;align-items:center}
.hero__badge{display:inline-block;background:rgba(201,168,76,.2);color:#E8D08A;border:1px solid rgba(201,168,76,.45);border-radius:50px;padding:.38rem 1.1rem;font-size:.78rem;font-weight:600;margin-bottom:1.5rem;letter-spacing:.04em}
.hero__title{font-size:clamp(2.1rem,4.5vw,3.4rem);color:var(--white);margin-bottom:1.25rem;line-height:1.08}
.hero__sub{color:rgba(255,255,255,.78);font-size:1rem;margin-bottom:2rem;max-width:480px;line-height:1.75}
.hero__actions{display:flex;gap:.85rem;flex-wrap:wrap}
.hero__right{display:flex;flex-direction:column;gap:.85rem;position:relative;z-index:2}
.hero__info-card{background:rgba(15,35,75,.85);border:1px solid rgba(201,168,76,.35);border-left:3px solid var(--gold);border-radius:var(--rad);padding:1rem 1.25rem}
.hero__info-title{font-family:'Inter',sans-serif;font-weight:700;font-size:.88rem;color:var(--gold);margin-bottom:.4rem;display:block}
.hero__info-card>p{color:rgba(255,255,255,.82);font-size:.84rem;line-height:1.6;margin:0}
.hero__info-small{color:rgba(255,255,255,.5);font-size:.76rem;display:block;margin-top:.2rem}
.hero__checklist{padding:0;margin:.35rem 0 0;list-style:none}
.hero__checklist li{color:rgba(255,255,255,.82);font-size:.83rem;padding:.2rem 0}
.hero__info-nmls{font-size:.74rem;color:rgba(255,255,255,.42);text-align:center;padding-top:.25rem}
.hero__info-nmls a{color:rgba(201,168,76,.7)}
.hero__stats{position:relative;z-index:2;background:rgba(255,255,255,.07);border-top:1px solid rgba(255,255,255,.1)}
.hero__stats-grid{display:flex;align-items:center;padding:1.25rem 0}
.hero__stat{flex:1;text-align:center;padding:.5rem 1rem}
.hero__stat-n{display:block;font-family:'Playfair Display',serif;font-size:2rem;font-weight:700;color:var(--gold);line-height:1}
.hero__stat-l{display:block;font-size:.74rem;color:rgba(255,255,255,.65);margin-top:.3rem;line-height:1.4}
.hero__stat-div{width:1px;height:40px;background:rgba(255,255,255,.15);flex-shrink:0}

/* ── RATE STRIP ── */
.rate-strip{background:var(--navy2);border-bottom:1px solid rgba(255,255,255,.1);padding:.75rem 0}
.rate-strip__label{display:flex;align-items:center;gap:.6rem;font-size:.72rem;color:rgba(255,255,255,.5);font-style:italic;margin-bottom:.5rem;letter-spacing:.03em}
.rate-strip__pulse{width:7px;height:7px;border-radius:50%;background:#34D399;display:inline-block;animation:pulse 1.8s ease-in-out infinite;flex-shrink:0}
.rate-strip__tickers{display:flex;align-items:center;flex-wrap:nowrap;overflow-x:auto}
.rate-strip__item{display:flex;flex-direction:column;align-items:center;padding:.3rem 1.25rem;flex-shrink:0}
.rate-strip__prog{font-size:.72rem;color:rgba(255,255,255,.55);font-weight:500;letter-spacing:.04em;white-space:nowrap}
.rate-strip__val{font-family:'Playfair Display',serif;font-size:1.15rem;font-weight:700;color:var(--gold);line-height:1.2}
.rate-strip__divider{width:1px;height:36px;background:rgba(255,255,255,.15);flex-shrink:0}
.rate-strip__cta{margin-left:auto;flex-shrink:0;background:rgba(201,168,76,.15);color:var(--gold);border:1px solid rgba(201,168,76,.35);border-radius:50px;padding:.35rem 1rem;font-size:.78rem;font-weight:600;text-decoration:none;white-space:nowrap;transition:background var(--tr)}
.rate-strip__cta:hover{background:rgba(201,168,76,.28);color:var(--gold)}

/* ── PILLARS / RESOURCES ── */
.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.pillar{background:var(--light);border-radius:var(--rad);padding:2rem 1.5rem;border-top:3px solid var(--gold);transition:box-shadow var(--tr),transform var(--tr)}
.pillar:hover{box-shadow:var(--sh-lg);transform:translateY(-4px)}
.pillar__icon{font-size:2.2rem;margin-bottom:1rem}
.pillar h4{font-size:1.05rem;margin-bottom:.5rem}
.pillar p{color:var(--gray);font-size:.88rem;margin:0}
.resources{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
.resource-card{background:var(--white);border-radius:var(--rad);padding:2rem 1.5rem;box-shadow:var(--sh);cursor:pointer;transition:box-shadow var(--tr),transform var(--tr);border-bottom:3px solid transparent}
.resource-card:hover{box-shadow:var(--sh-lg);transform:translateY(-4px);border-bottom-color:var(--gold)}
.resource-card__icon{font-size:2.4rem;margin-bottom:1rem}
.resource-card h4{font-size:1rem;margin-bottom:.5rem}
.resource-card p{color:var(--gray);font-size:.86rem;margin-bottom:1rem}
.resource-card__cta{color:var(--gold);font-weight:600;font-size:.86rem}

/* ── LOAN QUICK GRID ── */
.loan-quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-bottom:1.5rem}
.lq-card{background:var(--white);border-radius:var(--rad);box-shadow:var(--sh);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow var(--tr),transform var(--tr)}
.lq-card:hover{box-shadow:var(--sh-lg);transform:translateY(-3px)}
.lq-badge{padding:.65rem 1.25rem;font-family:'Inter',sans-serif;font-weight:800;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--white)}
.lq-badge--conv{background:var(--navy)}.lq-badge--fha{background:#1D4ED8}.lq-badge--va{background:#065F46}
.lq-badge--usda{background:#3D6B21}.lq-badge--jumbo{background:#6B21A8}.lq-badge--nonqm{background:var(--teal)}
.lq-body{padding:.75rem 1.25rem;flex:1}
.lq-row{display:flex;justify-content:space-between;align-items:baseline;padding:.45rem 0;font-size:.82rem;border-bottom:1px solid var(--light);gap:.5rem}
.lq-row:last-child{border:none}
.lq-row span{color:var(--gray);flex-shrink:0}.lq-row strong{color:var(--navy);text-align:right;font-size:.82rem}
.lq-link{display:block;padding:.6rem 1.25rem;font-size:.8rem;font-weight:600;color:var(--teal);border-top:1px solid var(--light);transition:background var(--tr);text-decoration:none}
.lq-link:hover{background:var(--light);color:var(--navy)}
.loan-quick-disc{font-size:.76rem;color:var(--gray);font-style:italic;text-align:center;max-width:700px;margin:0 auto}

/* ── TIMELINE ── */
.timeline{position:relative;max-width:820px;margin:0 auto}
.timeline::before{content:'';position:absolute;left:28px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--teal),var(--gold))}
.tl-item{display:flex;gap:1.5rem;margin-bottom:2rem;position:relative}
.tl-item:last-child{margin-bottom:0}
.tl-num{width:58px;height:58px;flex-shrink:0;background:var(--navy);border:3px solid var(--gold);border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:1.2rem;font-weight:700;color:var(--gold);position:relative;z-index:1}
.tl-body{background:var(--white);border-radius:var(--rad);padding:1.5rem;box-shadow:var(--sh);flex:1;border-left:3px solid var(--teal)}
.tl-body h4{font-size:1.05rem;margin-bottom:.5rem;color:var(--navy)}
.tl-body p{font-size:.9rem;color:var(--gray);margin:0;line-height:1.7}
.tl-tip{background:#FFFBEB;border-left:3px solid var(--gold);padding:.6rem .9rem;margin-top:.85rem;border-radius:0 6px 6px 0;font-size:.8rem;color:#78350F;font-style:italic}

/* ── FAQ ── */
.faq-list{max-width:820px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--gray-lt)}
.faq-item:first-child{border-top:1px solid var(--gray-lt)}
.faq-q{width:100%;background:none;border:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 0;text-align:left;font-family:'Playfair Display',serif;font-size:1rem;font-weight:700;color:var(--navy);transition:color var(--tr)}
.faq-q:hover,.faq-q.open{color:var(--teal)}
.faq-icon{font-size:1.3rem;font-weight:300;color:var(--gold);flex-shrink:0;transition:transform var(--tr);line-height:1}
.faq-q.open .faq-icon{transform:rotate(45deg)}
.faq-a{display:none;padding:0 0 1.25rem}
.faq-a.open{display:block}
.faq-a p{font-size:.9rem;color:var(--gray);line-height:1.75;margin:0}

/* ── COMPARE ── */
.compare-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.compare-col{background:rgba(255,255,255,.06);border-radius:var(--rad);padding:2rem}
.compare-col--broker{border:1px solid rgba(201,168,76,.5);border-top:3px solid var(--gold)}
.compare-col--lender{border:1px solid rgba(255,255,255,.1)}
.compare-col h3{color:var(--white);font-size:1.15rem;margin-bottom:1.25rem}
.badge-us{display:inline-block;background:var(--gold);color:var(--navy);font-size:.7rem;font-weight:700;padding:.2rem .7rem;border-radius:50px;margin-left:.5rem;vertical-align:middle;font-family:'Inter',sans-serif}
.compare-col ul li{color:rgba(255,255,255,.78);font-size:.9rem;padding:.4rem 0;border-bottom:1px solid rgba(255,255,255,.07)}
.compare-col ul li:last-child{border:none}

/* ── PA MARKET ── */
.pa-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:2.5rem;align-items:start}
.pa-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.pa-stat{background:var(--white);border-radius:var(--rad);padding:1.5rem;box-shadow:var(--sh);text-align:center;border-top:3px solid var(--gold)}
.pa-stat__n{display:block;font-family:'Playfair Display',serif;font-size:2rem;font-weight:700;color:var(--navy);line-height:1.1}
.pa-stat__l{display:block;font-size:.78rem;color:var(--gray);margin-top:.4rem;line-height:1.4}
.pa-stat__l small{font-size:.72rem;display:block;opacity:.8}
.pa-facts{background:var(--white);border-radius:var(--rad);padding:2rem;box-shadow:var(--sh)}
.pa-facts h3{font-size:1.2rem;margin-bottom:1.25rem}
.pa-list{padding:0}
.pa-list li{display:flex;gap:1rem;align-items:flex-start;padding:.85rem 0;border-bottom:1px solid var(--light);font-size:.88rem;color:var(--gray)}
.pa-list li:last-child{border:none}
.pa-list__icon{font-size:1.2rem;flex-shrink:0;margin-top:.1rem}
.pa-list li strong{color:var(--navy);display:block;margin-bottom:.15rem}

/* ── CTA STRIP ── */
.cta-strip{background:linear-gradient(135deg,var(--navy) 0%,var(--navy2) 60%,rgba(26,107,124,.8) 100%);padding:4rem 0;border-top:3px solid var(--gold)}
.cta-strip__inner{display:flex;align-items:center;justify-content:space-between;gap:2.5rem;flex-wrap:wrap}
.cta-strip__inner h2{font-size:clamp(1.5rem,2.5vw,2rem);color:var(--white);margin-bottom:.6rem}
.cta-strip__inner p{color:rgba(255,255,255,.72);font-size:.95rem;line-height:1.7;max-width:560px;margin:0}
.cta-strip__btns{display:flex;gap:1rem;flex-shrink:0;flex-wrap:wrap}

/* ── PAGE HERO ── */
.page-hero{background:var(--navy);padding:3.5rem 0 2.5rem;position:relative;overflow:hidden}
.page-hero::before{content:'';position:absolute;right:-150px;top:-150px;width:500px;height:500px;border-radius:50%;background:rgba(26,107,124,.12);pointer-events:none}
.page-hero h1{color:var(--white);font-size:clamp(1.9rem,4vw,3rem);margin:.4rem 0 .5rem}
.page-hero__sub{color:rgba(255,255,255,.72);font-size:1rem;margin:0}

/* ── ABOUT ── */
.content-split{display:grid;grid-template-columns:1fr 360px;gap:2.5rem;align-items:start}
.content-aside{display:flex;flex-direction:column;gap:1.5rem}
.content-main h2{font-size:1.9rem;margin-bottom:1rem}
.content-main h3{font-size:1.25rem;margin:1.75rem 0 .75rem}
.aside-card{background:var(--light);border-radius:var(--rad);padding:1.75rem;border-top:3px solid var(--gold)}
.aside-card h4{margin-bottom:1rem;font-size:1rem}
.aside-card--eho{display:flex;gap:1rem;align-items:flex-start;background:var(--navy)}
.aside-card--eho h4{color:var(--gold);margin-bottom:.4rem}
.aside-card--eho p{color:rgba(255,255,255,.75);font-size:.86rem;margin:0}
.eho-logo{font-size:2.5rem;color:var(--gold);flex-shrink:0;line-height:1}
.detail-list li{display:grid;grid-template-columns:80px 1fr;font-size:.86rem;padding:.5rem 0;border-bottom:1px solid var(--gray-lt);gap:.5rem}
.detail-list li:last-child{border:none}
.detail-list li span{font-weight:700;color:var(--gray);font-size:.78rem}

/* ── TEAM ── */
.team-loading{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:4rem 0;color:var(--gray);font-size:.95rem}
.team-spinner{width:40px;height:40px;border:3px solid var(--gray-lt);border-top-color:var(--teal);border-radius:50%;animation:spinIt .8s linear infinite}
.team-error{background:#FEF2F2;border:1px solid #FECACA;border-left:4px solid #EF4444;border-radius:var(--rad);padding:1rem 1.25rem;font-size:.9rem;color:#7F1D1D;margin-bottom:2rem}
.team-empty{text-align:center;padding:4rem 2rem;background:var(--white);border-radius:var(--rad-lg);box-shadow:var(--sh)}
.team-empty__icon{font-size:3.5rem;margin-bottom:1rem}
.team-empty h3{font-size:1.5rem;margin-bottom:.75rem}
.team-empty p{color:var(--gray);max-width:460px;margin:0 auto}
.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:2rem;margin-bottom:3rem}
.mlo-card{background:var(--white);border-radius:var(--rad-lg);box-shadow:var(--sh);overflow:hidden;transition:box-shadow var(--tr),transform var(--tr);display:flex;flex-direction:column}
.mlo-card:hover{box-shadow:var(--sh-lg);transform:translateY(-4px)}
.mlo-card__header{background:linear-gradient(135deg,var(--navy) 0%,var(--navy2) 100%);padding:2rem 1.75rem 1.5rem;display:flex;align-items:flex-start;gap:1.25rem;position:relative}
.mlo-card__header::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--gold),var(--teal))}
.mlo-photo-wrap{flex-shrink:0;width:90px;height:90px;border-radius:50%;overflow:hidden;border:3px solid var(--gold);box-shadow:0 4px 12px rgba(0,0,0,.3);background:var(--light)}
.mlo-photo{width:100%;height:100%;object-fit:cover;object-position:top center;display:block}
.mlo-photo-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--teal),var(--navy));display:flex;align-items:center;justify-content:center;font-size:2.2rem;color:rgba(255,255,255,.6)}
.mlo-header-info{flex:1;min-width:0}
.mlo-name{font-family:'Playfair Display',serif;font-size:1.2rem;font-weight:700;color:var(--white);margin-bottom:.2rem;line-height:1.2}
.mlo-title{font-size:.8rem;color:var(--gold);font-weight:600;letter-spacing:.04em;margin-bottom:.6rem}
.mlo-status-badge{display:inline-block;font-size:.68rem;font-weight:700;padding:.18rem .65rem;border-radius:50px;letter-spacing:.06em;text-transform:uppercase;font-family:'Inter',sans-serif}
.mlo-status-badge--active{background:#D1FAE5;color:#065F46}
.mlo-status-badge--pending{background:#FEF3C7;color:#92400E}
.mlo-card__body{padding:1.5rem 1.75rem;flex:1;display:flex;flex-direction:column;gap:1.1rem}
.mlo-nmls{display:flex;align-items:center;gap:.5rem;font-size:.82rem;color:var(--gray);background:var(--light);padding:.5rem .85rem;border-radius:6px}
.mlo-nmls strong{color:var(--navy);font-weight:700}
.mlo-nmls a{color:var(--teal);font-size:.78rem;margin-left:auto;white-space:nowrap}
.mlo-bio{font-size:.9rem;color:var(--text);line-height:1.7;margin:0}
.mlo-bio.collapsed{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.mlo-read-more{background:none;border:none;color:var(--teal);font-size:.82rem;font-weight:600;cursor:pointer;padding:0;margin-top:.25rem;font-family:'Inter',sans-serif}
.mlo-read-more:hover{color:var(--navy)}
.mlo-section-label{font-family:'Inter',sans-serif;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--gray);margin-bottom:.5rem;display:block}
.mlo-tags{display:flex;flex-wrap:wrap;gap:.4rem}
.mlo-tag{background:#EFF9FB;color:var(--teal);border:1px solid rgba(26,107,124,.2);border-radius:50px;padding:.22rem .75rem;font-size:.75rem;font-weight:600;font-family:'Inter',sans-serif}
.mlo-states{display:flex;flex-wrap:wrap;gap:.4rem}
.mlo-state{background:var(--navy);color:var(--white);border-radius:4px;padding:.18rem .55rem;font-size:.72rem;font-weight:700;font-family:'Inter',sans-serif;letter-spacing:.05em}
.mlo-langs{font-size:.82rem;color:var(--gray)}
.mlo-fun-fact{background:linear-gradient(135deg,#FFFBEB,#FEF3C7);border-left:3px solid var(--gold);border-radius:0 var(--rad) var(--rad) 0;padding:.65rem 1rem;font-size:.82rem;color:#78350F;font-style:italic}
.mlo-fun-fact::before{content:'💡 ';font-style:normal}
.mlo-card__footer{padding:1.1rem 1.75rem 1.5rem;border-top:1px solid var(--gray-lt);display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}
.mlo-contact-links{display:flex;flex-direction:column;gap:.3rem}
.mlo-contact-link{display:flex;align-items:center;gap:.45rem;font-size:.82rem;color:var(--text);text-decoration:none;transition:color var(--tr)}
.mlo-contact-link:hover{color:var(--teal)}
.mlo-contact-link span{font-size:.95rem}
.mlo-social-links{display:flex;gap:.5rem}
.mlo-social-link{width:34px;height:34px;border-radius:50%;background:var(--light);border:1.5px solid var(--gray-lt);display:flex;align-items:center;justify-content:center;font-size:.9rem;text-decoration:none;transition:background var(--tr),border-color var(--tr),transform var(--tr)}
.mlo-social-link:hover{background:var(--teal);border-color:var(--teal);transform:translateY(-2px)}
.team-join{margin-top:2rem}
.team-join__inner{display:flex;align-items:flex-start;gap:1.5rem;background:var(--navy);border-radius:var(--rad-lg);padding:2.5rem;border-left:4px solid var(--gold)}
.team-join__icon{font-size:2.5rem;flex-shrink:0}
.team-join__inner h3{color:var(--white);font-size:1.3rem;margin-bottom:.6rem}
.team-join__inner p{color:rgba(255,255,255,.75);font-size:.92rem;margin-bottom:1.25rem;line-height:1.7}

/* ── LOAN CARDS ── */
.loan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.loan-card{background:var(--white);border-radius:var(--rad);box-shadow:var(--sh);overflow:hidden;transition:box-shadow var(--tr)}
.loan-card:hover{box-shadow:var(--sh-lg)}
.loan-card--wide{grid-column:1/-1}
.loan-card__head{padding:1.25rem 1.5rem 1rem}
.loan-card__head h3{color:var(--white);font-size:1.15rem;margin-top:.5rem}
.loan-card__head--conv{background:var(--navy)}.loan-card__head--fha{background:#1D4ED8}
.loan-card__head--va{background:#065F46}.loan-card__head--usda{background:#3D6B21}
.loan-card__head--jumbo{background:#6B21A8}.loan-card__head--refi{background:#92400E}
.loan-card__head--nonqm{background:var(--teal)}
.loan-badge{display:inline-block;background:rgba(255,255,255,.22);color:#fff;font-weight:700;font-size:.72rem;padding:.2rem .75rem;border-radius:50px;letter-spacing:.06em;text-transform:uppercase;font-family:'Inter',sans-serif}
.loan-card__body{padding:1.5rem}
.loan-card__body h5{font-family:'Inter',sans-serif;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--gray);margin:1rem 0 .45rem}
.loan-card__body ul{padding-left:1.2rem;list-style:disc}
.loan-card__body ul li{font-size:.88rem;color:var(--gray);margin-bottom:.28rem}
.nonqm-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;margin:1rem 0}
.nonqm-grid h5{font-family:'Inter',sans-serif;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--teal);margin-bottom:.4rem}
.nonqm-grid p{font-size:.86rem;color:var(--gray);margin:0}

/* ── CALCULATOR ── */
.calc-layout{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}
.calc-inputs h3,.calc-results h3{font-size:1.15rem;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:2px solid var(--light)}
.fg{margin-bottom:1.1rem}
.fg label{display:block;font-size:.83rem;font-weight:600;color:var(--navy);margin-bottom:.38rem}
.fg-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.fg--btn{display:flex;align-items:flex-end}
.fg--btn .btn{width:100%}
.calc-ltv{font-size:.8rem;color:var(--gray);margin-top:.25rem;font-style:italic}
.calc-total{font-family:'Playfair Display',serif;font-size:2.8rem;font-weight:700;color:var(--navy);text-align:center;margin:1rem 0}
.breakdown{border-top:1px solid var(--gray-lt);padding-top:1rem}
.breakdown__row{display:flex;justify-content:space-between;align-items:center;padding:.45rem 0;font-size:.88rem;color:var(--gray);border-bottom:1px solid var(--light)}
.breakdown__row span:first-child{display:flex;align-items:center}
.dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:.5rem;flex-shrink:0}
.breakdown__total{display:flex;justify-content:space-between;padding:.75rem 0;font-size:1rem;font-weight:700;color:var(--navy);border-top:2px solid var(--navy);margin-top:.25rem}
.donut-wrap{display:flex;justify-content:center;margin:1.5rem 0 1rem}
.calc-disc{font-size:.76rem;color:var(--gray);font-style:italic;border-top:1px solid var(--gray-lt);padding-top:1rem;margin:0}

/* ── AMORTIZATION ── */
.amort-inputs{display:flex;flex-wrap:wrap;gap:1rem;align-items:flex-end;margin-bottom:2rem}
.amort-inputs .fg{flex:1 1 180px;margin:0}
.amort-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem}
.amort-stat{background:var(--white);border-radius:var(--rad);padding:1.5rem;box-shadow:var(--sh);text-align:center}
.amort-stat__label{display:block;font-size:.76rem;color:var(--gray);font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.5rem}
.amort-stat__val{display:block;font-family:'Playfair Display',serif;font-size:1.7rem;font-weight:700;color:var(--navy)}
.amort-stat__val.text-gold{color:var(--gold)}
.table-wrap{overflow-x:auto;border-radius:var(--rad);box-shadow:var(--sh);max-height:500px;overflow-y:auto}
.amort-table{width:100%;border-collapse:collapse;font-size:.86rem;background:var(--white)}
.amort-table thead{position:sticky;top:0;z-index:1}
.amort-table th{background:var(--navy);color:var(--white);padding:.85rem 1rem;text-align:right;font-family:'Inter',sans-serif;font-weight:600;font-size:.8rem;letter-spacing:.05em}
.amort-table th:first-child{text-align:center}
.amort-table td{padding:.62rem 1rem;border-bottom:1px solid var(--light);text-align:right}
.amort-table td:first-child{text-align:center;color:var(--gray)}
.amort-table tbody tr:nth-child(even){background:var(--light)}
.amort-table tbody tr:hover{background:#EAF4F7}
.table-wrap::-webkit-scrollbar{width:6px;height:6px}
.table-wrap::-webkit-scrollbar-track{background:var(--light)}
.table-wrap::-webkit-scrollbar-thumb{background:var(--gray-lt);border-radius:3px}

/* ── RATES WIDGET ── */
.rate-widget__head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.75rem;gap:1rem}
.rate-widget__title{font-size:1.6rem;margin-bottom:.2rem}
.rate-widget__ts{font-size:.82rem;color:var(--gray)}
.rate-widget__live{display:flex;align-items:center;gap:.5rem;font-size:.8rem;font-weight:600;color:var(--teal);background:#EFF9FB;border:1px solid rgba(26,107,124,.25);padding:.4rem .85rem;border-radius:50px;white-space:nowrap;flex-shrink:0}
.live-dot{width:8px;height:8px;border-radius:50%;background:var(--teal);animation:pulse 1.8s ease-in-out infinite}
.rates-status{margin-bottom:1rem;min-height:1.6rem}
.rates-loading{font-size:.82rem;color:var(--gray);font-style:italic;display:inline-flex;align-items:center;gap:.4rem}
.rates-live-badge{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;color:#065F46;background:#D1FAE5;border:1px solid #34D399;border-radius:50px;padding:.28rem .85rem}
.rates-cached-badge{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;color:#1E40AF;background:#DBEAFE;border:1px solid #93C5FD;border-radius:50px;padding:.28rem .85rem}
.rates-fallback-badge{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;font-weight:600;color:#78350F;background:#FEF3C7;border:1px solid #F59E0B;border-radius:50px;padding:.28rem .85rem}
.spin{display:inline-block;animation:spinIt 1s linear infinite}
.rate-widget__inputs{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.75rem}
.loan-amt-display{padding:.72rem 1rem;background:var(--light);border-radius:var(--rad);border:1.5px solid var(--gray-lt);font-size:.94rem;font-weight:700;color:var(--navy)}
.rate-table-wrap{border-radius:var(--rad);overflow:hidden;border:1px solid var(--gray-lt)}
.rate-table{width:100%;border-collapse:collapse}
.rate-table thead tr{background:var(--light)}
.rate-table th{padding:.85rem 1.25rem;text-align:left;font-family:'Inter',sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--gray)}
.rate-table th:not(:first-child){text-align:right}
.rate-table td{padding:1rem 1.25rem;border-bottom:1px solid var(--light);font-size:.93rem}
.rate-table td:not(:first-child){text-align:right}
.rate-table tbody tr:last-child td{border-bottom:none}
.rate-table tbody tr:hover{background:#F8FCFD}
.rt-program{font-weight:600;color:var(--navy)}.rt-rate{color:var(--teal);font-weight:700;font-size:1rem}.rt-apr{color:var(--gray)}
.rt-payment strong{font-family:'Playfair Display',serif;font-size:1.05rem;color:var(--navy)}
.rate-widget__disc{font-size:.76rem;color:var(--gray);margin-top:1.25rem;line-height:1.65;font-style:italic}
.factors-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem}
.factor{display:flex;align-items:center;gap:.5rem;background:var(--light);padding:.65rem 1rem;border-radius:8px;font-size:.86rem;font-weight:500}

/* ── CONTACT ── */
.contact-layout{display:grid;grid-template-columns:1fr 360px;gap:2rem;align-items:start}
.consent-group{background:var(--light);padding:1rem;border-radius:var(--rad);margin-top:.5rem}
.checkbox-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer;font-size:.86rem;color:var(--gray);line-height:1.55}
.checkbox-label input[type="checkbox"]{width:auto;flex-shrink:0;margin-top:.2rem;display:inline}
.form-note{font-size:.76rem;color:var(--gray);margin-top:.75rem;font-style:italic}
.success-msg{background:#D1FAE5;border:1px solid #34D399;border-radius:var(--rad);padding:1rem 1.25rem;color:#065F46;font-weight:600;display:flex;align-items:center;gap:.75rem}
.contact-aside .card{padding:1.5rem;margin-bottom:1.5rem}
.contact-aside .card h4{font-size:1rem;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:2px solid var(--light)}
.ci{display:flex;gap:1rem;margin-bottom:1.1rem;align-items:flex-start}
.ci>span{font-size:1.4rem;flex-shrink:0}
.ci strong{display:block;font-size:.8rem;color:var(--navy);margin-bottom:.15rem}
.ci p{font-size:.86rem;color:var(--gray);margin:0}

/* ── LEGAL ── */
.content-narrow{max-width:820px}
.policy-date{font-size:.83rem;color:var(--gray);margin-bottom:2rem}
.content-narrow h2{font-size:1.35rem;margin:2rem 0 .75rem}
.content-narrow h2:first-of-type{margin-top:0}
.eho-block{display:flex;gap:1.25rem;align-items:flex-start;background:var(--light);border-radius:var(--rad);padding:1.5rem;margin-top:.5rem}
.eho-block .eho-logo{font-size:3rem;color:var(--gold);flex-shrink:0;line-height:1}
.eho-block p{font-size:.9rem;color:var(--gray);margin:0}

/* ── CONTACT BAR ── */
.contact-bar{background:var(--navy2);border-top:1px solid rgba(255,255,255,.08);padding:.9rem 0}
.contact-bar__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:1rem 2.5rem}
.contact-bar__item{font-size:.82rem;color:rgba(255,255,255,.65);display:flex;align-items:center;gap:.4rem}
.contact-bar__item a{color:rgba(255,255,255,.72);text-decoration:none;transition:color var(--tr)}
.contact-bar__item a:hover{color:var(--gold)}

/* ── FOOTER ── */
.footer__top{background:var(--navy);padding:3.5rem 0 2rem}
.footer__grid{display:grid;grid-template-columns:260px 1fr;gap:3rem}
.footer__logo-wrap{display:flex;align-items:center;gap:10px;margin-bottom:1rem}
.footer__logo-svg{width:56px;height:56px;flex-shrink:0;display:block;filter:drop-shadow(0 2px 6px rgba(0,0,0,.3))}
.footer__logo-text{display:flex;flex-direction:column}
.footer__logo-name{font-family:'Inter',sans-serif;font-weight:800;font-size:.95rem;color:var(--white);letter-spacing:.07em}
.footer__logo-sub{font-family:'Inter',sans-serif;font-weight:500;font-size:.72rem;color:rgba(255,255,255,.55);letter-spacing:.06em;margin-top:2px}
.footer__logo-nmls{font-family:'Inter',sans-serif;font-weight:600;font-size:.6rem;color:var(--gold);letter-spacing:.03em;margin-top:4px}
.footer__tagline{font-size:.83rem;color:rgba(255,255,255,.48);margin-bottom:1.25rem;line-height:1.6}
.footer__eho{display:flex;align-items:center;gap:.5rem;color:rgba(255,255,255,.55);font-size:.8rem}
.footer__links{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.footer__col h5{font-family:'Inter',sans-serif;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--gold);margin-bottom:1rem}
.footer__col ul li{margin-bottom:.5rem}
.footer__col ul li a{color:rgba(255,255,255,.58);font-size:.86rem;transition:color var(--tr)}
.footer__col ul li a:hover{color:var(--gold)}
.footer__compliance{background:#061328;padding:1.5rem 0}
.footer__compliance p{font-size:.76rem;color:rgba(255,255,255,.4);line-height:1.75;margin-bottom:.5rem}
.footer__compliance p:last-child{margin:0}
.footer__compliance a{color:rgba(255,255,255,.5)}
.footer__compliance a:hover{color:var(--gold)}
.footer__copy{margin-top:1rem!important;border-top:1px solid rgba(255,255,255,.07);padding-top:1rem!important}

/* ═══ RESPONSIVE — single block ═══════════════════════════ */
@media(max-width:1100px){
  .hero__content{grid-template-columns:1fr 320px;gap:2rem}
  .pillars{grid-template-columns:repeat(2,1fr)}
  .resources{grid-template-columns:repeat(2,1fr)}
  .loan-grid{grid-template-columns:repeat(2,1fr)}
  .loan-card--wide{grid-column:1/-1}
  .loan-quick-grid{grid-template-columns:repeat(2,1fr)}
  .nonqm-grid{grid-template-columns:repeat(2,1fr)}
  .calc-layout{grid-template-columns:1fr}
  .content-split{grid-template-columns:1fr}
  .contact-layout{grid-template-columns:1fr}
  .rate-widget__inputs{grid-template-columns:repeat(2,1fr)}
  .factors-grid{grid-template-columns:repeat(3,1fr)}
  .footer__grid{grid-template-columns:1fr;gap:2rem}
  .compare-grid{grid-template-columns:1fr}
  .pa-grid{grid-template-columns:1fr}
  .cta-strip__inner{flex-direction:column;text-align:center}
  .cta-strip__btns{justify-content:center}
}
@media(max-width:768px){
  :root{--nav-h:68px}
  .section{padding:3rem 0}
  .navbar__hamburger{display:flex}
  .navbar__links{display:none;position:fixed;top:var(--nav-h);left:0;right:0;bottom:0;background:var(--white);flex-direction:column;align-items:flex-start;padding:1rem 0;overflow-y:auto;box-shadow:var(--sh-lg);z-index:999}
  .navbar__links.open{display:flex}
  .navbar__links>li{width:100%}
  .navbar__links>li>a{padding:.85rem 1.5rem;border-bottom:1px solid var(--light);font-size:1rem}
  .nav-cta{margin-left:0;padding:.85rem 1.5rem;border-bottom:1px solid var(--light)}
  .nav-cta .btn{display:block;text-align:center}
  .dropdown{display:none!important}
  .logo-mark{width:50px;height:50px}
  .logo-mark svg{width:50px;height:50px}
  .logo-name{font-size:.95rem}.logo-sub-name{font-size:.85rem}.logo-nmls{font-size:.55rem}
  .hero{min-height:auto}
  .hero__content{grid-template-columns:1fr;gap:0;padding:3rem 1.5rem 2rem}
  .hero__right{display:none}
  .hero__title{font-size:2.1rem}
  .hero__actions{flex-direction:column}
  .hero__actions .btn{text-align:center;width:100%;max-width:320px}
  .hero__stats-grid{flex-wrap:wrap}
  .hero__stat{flex:1 1 45%}
  .hero__stat-div{display:none}
  .rate-strip__tickers{flex-wrap:nowrap;overflow-x:auto;padding-bottom:.25rem}
  .rate-strip__item{padding:.3rem .75rem}
  .rate-strip__cta{margin-left:1rem}
  .loan-grid{grid-template-columns:1fr}
  .loan-quick-grid{grid-template-columns:1fr}
  .nonqm-grid{grid-template-columns:1fr}
  .amort-inputs{flex-direction:column}
  .amort-summary{grid-template-columns:1fr}
  .fg-row{grid-template-columns:1fr}
  .footer__links{grid-template-columns:1fr 1fr}
  .factors-grid{grid-template-columns:repeat(2,1fr)}
  .rate-widget__head{flex-direction:column;gap:1rem}
  .rate-widget__inputs{grid-template-columns:1fr 1fr}
  .pa-stat-grid{grid-template-columns:1fr 1fr}
  .timeline::before{left:22px}
  .tl-num{width:46px;height:46px;font-size:1rem}
  .tl-body{padding:1.1rem}
  .team-grid{grid-template-columns:1fr}
  .team-join__inner{flex-direction:column;gap:1rem;padding:1.75rem}
  .mlo-card__header{flex-direction:column;align-items:center;text-align:center}
  .mlo-nmls a{margin-left:0}
}
@media(max-width:480px){
  .pillars{grid-template-columns:1fr}
  .resources{grid-template-columns:1fr}
  .footer__links{grid-template-columns:1fr}
  .rate-widget__inputs{grid-template-columns:1fr}
  .amort-table th,.amort-table td{padding:.5rem .6rem;font-size:.78rem}
  .calc-total{font-size:2.1rem}
  .logo-tagline{display:none}
  .mlo-photo-wrap{width:80px;height:80px}
}
.hero__left{}
