*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
:root{--navy:#0A1628;--navy-mid:#0E1C30;--navy-light:#1A3052;--gold:#C8A55C;--gold-light:#DFC88A;--gold-pale:#F5ECD7;--gold-muted:#A89060;--cream:#FAF8F4;--white:#FFFFFF;--text-dark:#2C3E50;--text-light:#6B7C93}
html{scroll-behavior:smooth;font-size:16px;scroll-padding-top:56px}
body{font-family:'DM Sans',sans-serif;color:var(--text-dark);background:var(--cream);overflow-x:hidden}

nav{position:fixed;top:0;left:0;right:0;height:56px;background:var(--navy);z-index:100;display:flex;align-items:center;justify-content:center;border-bottom:1px solid rgba(200,165,92,.15)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1200px;padding:0 clamp(1rem,3vw,2.5rem)}
nav .nav-logo{display:flex;align-items:center;gap:.5rem}
nav .monogram{font-family:'Cormorant Garamond',serif;font-size:1.4rem;font-weight:600;letter-spacing:2px}
nav .monogram .b-letter{color:var(--white)}
nav .monogram .l-letter{color:var(--gold);opacity:.6}
nav .brand-name{font-family:'Cormorant Garamond',serif;font-size:.75rem;color:var(--white);letter-spacing:3px;text-transform:uppercase}
nav .nav-links{display:flex;gap:1.25rem;align-items:center}
nav .nav-links a{font-size:.75rem;color:rgba(255,255,255,.7);text-decoration:none;text-transform:uppercase;letter-spacing:.05em;font-weight:500;transition:color .3s}
nav .nav-links a:hover{color:var(--gold)}
nav .nav-cta{background:var(--gold);color:var(--navy);padding:.45rem 1rem;border-radius:6px;font-size:.75rem;font-weight:600;text-decoration:none;text-transform:uppercase;letter-spacing:.05em;transition:all .3s}

.hero{background:var(--navy);display:flex;justify-content:center;position:relative;overflow:hidden}
.hero::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='40' height='40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 0v40M0 20h40' stroke='%23C8A55C' stroke-width='.3' opacity='.03'/%3E%3C/svg%3E");z-index:0}
.hero-content{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:calc(56px + 2rem) 2rem 2rem;max-width:650px}
.hero-content .section-label{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--gold);margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}
.hero-content .section-label::before{content:'';width:1.5rem;height:1px;background:var(--gold)}
.hero-content h1{font-family:'Playfair Display',serif;font-size:clamp(1.6rem,3.2vw,2.4rem);color:var(--white);line-height:1.15;font-weight:600;margin-bottom:.6rem}
.hero-content h1 em{color:var(--gold);font-style:italic}
.hero-content p{font-size:.9rem;color:rgba(255,255,255,.6);line-height:1.6;max-width:440px;margin-bottom:1rem}
.hero-btns{display:flex;gap:.6rem;flex-wrap:wrap}
.btn-primary{background:var(--gold);color:var(--navy);padding:.6rem 1.1rem;border-radius:6px;font-size:.82rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex;align-items:center;gap:.4rem}
.btn-primary:hover{background:var(--gold-light);transform:translateY(-1px)}
.btn-secondary{border:1px solid rgba(200,165,92,.4);color:var(--gold);padding:.6rem 1.1rem;border-radius:6px;font-size:.82rem;font-weight:600;text-decoration:none;transition:all .3s}
.btn-secondary:hover{background:rgba(200,165,92,.1);border-color:var(--gold)}

.hero-right{position:relative;z-index:1;display:flex;align-items:flex-end;justify-content:center;padding-top:56px}
.hero-image-wrap{position:relative;width:100%;max-width:420px;height:90%}
.headshot-container{position:relative;width:100%;height:100%;background:linear-gradient(180deg,var(--navy-mid),var(--navy-light));border-radius:16px 16px 0 0;overflow:hidden;display:flex;align-items:flex-end;justify-content:center}
.headshot-img{width:100%;height:100%;object-fit:cover;object-position:center top}
.hero-stats{position:absolute;bottom:0;left:-1rem;right:-1rem;display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(200,165,92,.15)}
.hero-stat{background:var(--navy);padding:.6rem .5rem;text-align:center}
.hero-stat .stat-num{font-family:'Playfair Display',serif;font-size:1.4rem;font-weight:700;color:var(--gold);line-height:1}
.hero-stat .stat-label{font-size:.55rem;color:rgba(255,255,255,.45);text-transform:uppercase;letter-spacing:.08em;margin-top:.15rem}

.states-bar{background:var(--navy);padding:.6rem 0;border-top:1px solid rgba(200,165,92,.08)}
.states-bar-inner{max-width:1200px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:.4rem;padding:0 1rem}
.states-label{font-size:.55rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--gold);margin-bottom:.1rem}
.states-list{display:flex;flex-wrap:wrap;justify-content:center;gap:.3rem}
.states-list span{font-family:'DM Sans',sans-serif;font-size:.65rem;font-weight:600;color:rgba(255,255,255,.5);background:rgba(255,255,255,.06);padding:.2rem .45rem;border-radius:4px;letter-spacing:.03em;transition:all .2s}
.states-list span:hover{color:var(--gold);background:rgba(200,165,92,.12)}
.states-list .state-home{background:var(--gold-pale);color:var(--navy);font-weight:700}
.states-list .state-home:hover{background:var(--gold);color:var(--navy)}

.trust-bar{background:var(--navy-mid);padding:.45rem 0;border-top:1px solid rgba(200,165,92,.1);border-bottom:1px solid rgba(200,165,92,.1)}
.trust-bar-inner{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:1.5rem;padding:0 1rem;flex-wrap:wrap}
.trust-item{display:flex;align-items:center;gap:.3rem;font-size:.6rem;color:rgba(255,255,255,.45);text-transform:uppercase;letter-spacing:.05em}
.trust-item .gold-dot{width:4px;height:4px;background:var(--gold);border-radius:50%}

.container{max-width:1200px;margin:0 auto;padding:0 clamp(1rem,3vw,2.5rem)}
.section-label{font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--gold-muted);margin-bottom:.35rem;display:flex;align-items:center;gap:.5rem}
.section-label::before{content:'';width:1.5rem;height:1px;background:var(--gold-muted)}
h2{font-family:'Playfair Display',serif;font-size:clamp(1.4rem,2.8vw,2rem);color:var(--navy);line-height:1.2;margin-bottom:.5rem}
h2 em{color:var(--gold);font-style:italic}

.about{padding:1.5rem 0;background:var(--cream)}
.about-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:1.5rem;align-items:center}
.about-image{position:relative}
.img-frame{background:var(--navy);border-radius:12px;aspect-ratio:4/5;overflow:hidden;position:relative}
.img-frame img{width:100%;height:100%;object-fit:cover;object-position:center top}
.img-frame::after{content:'';position:absolute;inset:0;border:1px solid rgba(200,165,92,.2);border-radius:12px;pointer-events:none}
.credential-badge{position:absolute;bottom:-1rem;right:-.75rem;background:var(--navy);border:1px solid rgba(200,165,92,.3);border-radius:8px;padding:.5rem .75rem;display:flex;flex-direction:column;gap:.1rem}
.credential-badge .badge-label{font-size:.5rem;color:var(--gold);text-transform:uppercase;letter-spacing:.1em;font-weight:700}
.credential-badge .badge-value{font-size:.72rem;color:var(--white);font-weight:500}
.about-text p{font-size:.88rem;color:var(--text-light);line-height:1.7;margin-bottom:.4rem}
.about-highlights{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-top:.75rem}
.highlight-card{background:var(--white);border:1px solid rgba(10,22,40,.06);border-radius:8px;padding:.5rem .6rem;transition:all .3s;text-align:center}
.highlight-card:hover{border-color:var(--gold)}
.highlight-card .hl-num{font-family:'Playfair Display',serif;font-size:1.1rem;font-weight:700;color:var(--gold)}
.highlight-card .hl-text{font-size:.72rem;color:var(--text-light);margin-top:.1rem}

.team{padding:1.5rem 0;background:var(--white);border-top:1px solid rgba(10,22,40,.04);border-bottom:1px solid rgba(10,22,40,.04)}
.team .section-label{justify-content:center}.team .section-label::before{display:none}
.team h2{text-align:center}
.team-intro{text-align:center;font-size:.82rem;color:var(--text-light);max-width:480px;margin:0 auto .75rem;line-height:1.5}
.team-grid{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}
.team-card{background:var(--cream);border:1px solid rgba(10,22,40,.06);border-radius:12px;padding:1.25rem;display:flex;align-items:center;gap:1rem;min-width:300px;max-width:400px;transition:all .3s}
.team-card:hover{border-color:var(--gold);box-shadow:0 4px 16px rgba(200,165,92,.08)}
.team-avatar{width:52px;height:52px;border-radius:50%;background:var(--navy);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:1rem;font-weight:600;color:var(--gold);flex-shrink:0}
.team-avatar-img{width:52px;height:52px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid var(--gold)}
.team-info .team-name{font-family:'Playfair Display',serif;font-size:.95rem;color:var(--navy);font-weight:600}
.team-info .team-role{font-size:.7rem;color:var(--gold-muted);text-transform:uppercase;letter-spacing:.08em;font-weight:700;margin-top:.1rem}
.team-info .team-contact{display:flex;flex-direction:column;gap:.15rem;margin-top:.35rem}
.team-info .team-contact a{font-size:.75rem;color:var(--text-light);text-decoration:none;transition:color .2s}
.team-info .team-contact a:hover{color:var(--gold)}

.services{padding:1.5rem 0;background:var(--navy);position:relative}
.services::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='40' height='40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 0v40M0 20h40' stroke='%23C8A55C' stroke-width='.3' opacity='.03'/%3E%3C/svg%3E")}
.services .container{position:relative;z-index:1}
.services .section-label{color:var(--gold);justify-content:center}.services .section-label::before{display:none}
.services h2{color:var(--white);text-align:center}
.services-intro{font-size:.82rem;color:rgba(255,255,255,.5);line-height:1.6;max-width:550px;margin:0 auto .75rem;text-align:center}
.service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}
.service-card{background:var(--navy-mid);border:1px solid rgba(200,165,92,.1);border-radius:12px;padding:1rem;transition:all .3s;position:relative;overflow:hidden}
.service-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--gold),transparent);opacity:0;transition:opacity .3s}
.service-card:hover{border-color:rgba(200,165,92,.3);transform:translateY(-2px)}.service-card:hover::before{opacity:1}
.card-icon{width:36px;height:36px;border-radius:8px;background:rgba(200,165,92,.08);display:flex;align-items:center;justify-content:center;margin-bottom:.5rem}
.card-icon svg{width:18px;height:18px;stroke:var(--gold);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.service-card h3{font-family:'Playfair Display',serif;font-size:1.05rem;color:var(--white);margin-bottom:.35rem;font-weight:600}
.service-card p{font-size:.78rem;color:rgba(255,255,255,.45);line-height:1.6;margin-bottom:.6rem}
.card-examples{border-top:1px solid rgba(200,165,92,.1);padding-top:.5rem}
.card-examples .example-label{font-size:.55rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-muted);font-weight:700;margin-bottom:.3rem}
.card-examples ul{list-style:none;display:flex;flex-direction:column;gap:.2rem}
.card-examples li{font-size:.72rem;color:rgba(255,255,255,.4);padding-left:.75rem;position:relative}
.card-examples li::before{content:'';position:absolute;left:0;top:.4em;width:4px;height:4px;border-radius:50%;background:var(--gold-muted)}

.digital-lenders{padding:1.5rem 0;background:var(--cream)}
.digital-lenders .section-label{justify-content:center}.digital-lenders .section-label::before{display:none}
.digital-lenders h2{text-align:center}
.dl-intro{text-align:center;font-size:.82rem;color:var(--text-light);max-width:480px;margin:0 auto .75rem;line-height:1.5}
.dl-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;max-width:700px;margin:0 auto}
.dl-card{background:var(--white);border:1px solid rgba(10,22,40,.06);border-radius:12px;padding:1.25rem;text-align:center;text-decoration:none;transition:all .3s;display:flex;flex-direction:column;align-items:center;gap:.5rem}
.dl-card:hover{border-color:var(--gold);box-shadow:0 4px 16px rgba(200,165,92,.1);transform:translateY(-2px)}
.dl-icon{width:44px;height:44px;border-radius:10px;background:var(--navy);display:flex;align-items:center;justify-content:center}
.dl-icon svg{width:22px;height:22px;stroke:var(--gold);fill:none;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.dl-card h3{font-family:'Playfair Display',serif;font-size:1rem;color:var(--navy);font-weight:600;margin:0}
.dl-card p{font-size:.75rem;color:var(--text-light);line-height:1.5;margin:0}
.dl-card .dl-btn{font-size:.72rem;font-weight:600;color:var(--gold);text-transform:uppercase;letter-spacing:.08em;border:1px solid rgba(200,165,92,.3);padding:.35rem .75rem;border-radius:6px;transition:all .3s}
.dl-card:hover .dl-btn{background:var(--gold);color:var(--navy)}
.dl-card[style*="navy-mid"]:hover{border-color:rgba(200,165,92,.3) !important;box-shadow:0 4px 16px rgba(0,0,0,.3)}

.reviews{padding:1.5rem 0;background:var(--navy);position:relative;overflow:hidden}
.reviews::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='40' height='40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 0v40M0 20h40' stroke='%23C8A55C' stroke-width='.3' opacity='.03'/%3E%3C/svg%3E")}
.reviews .container{position:relative;z-index:1}
.reviews .section-label{color:var(--gold);justify-content:center}.reviews .section-label::before{display:none}
.reviews h2{color:var(--white);text-align:center}
.reviews-intro{text-align:center;font-size:.82rem;color:rgba(255,255,255,.45);max-width:480px;margin:0 auto .75rem;line-height:1.5}
.review-badge{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:.75rem}
.review-badge-item{display:flex;align-items:center;gap:.4rem}
.badge-stars{display:flex;gap:.1rem}
.badge-stars svg{width:12px;height:12px;fill:var(--gold)}
.badge-text{font-size:.72rem;color:rgba(255,255,255,.5)}.badge-text strong{color:var(--white)}
.reviews-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:1rem}
.review-card{background:var(--navy-mid);border:1px solid rgba(200,165,92,.1);border-radius:10px;padding:.85rem;position:relative}
.review-card::before{content:'\201C';position:absolute;top:.5rem;right:1rem;font-family:'Playfair Display',serif;font-size:2.5rem;color:rgba(200,165,92,.1);line-height:1}
.review-stars{display:flex;gap:.15rem;margin-bottom:.4rem}
.review-stars svg{width:12px;height:12px;fill:var(--gold)}
.review-text{font-size:.78rem;color:rgba(255,255,255,.55);line-height:1.6;font-style:italic;margin-bottom:.5rem}
.review-author{display:flex;align-items:center;gap:.5rem}
.review-author-avatar{width:28px;height:28px;border-radius:50%;background:rgba(200,165,92,.12);display:flex;align-items:center;justify-content:center;font-family:'Playfair Display',serif;font-size:.65rem;font-weight:600;color:var(--gold)}
.review-name{font-size:.72rem;color:var(--white);font-weight:600}
.review-source{font-size:.55rem;color:var(--gold-muted);text-transform:uppercase;letter-spacing:.08em}
.reviews-cta{text-align:center}
.reviews-cta a{display:inline-flex;align-items:center;gap:.4rem;color:var(--gold);font-size:.78rem;font-weight:600;text-decoration:none;border:1px solid rgba(200,165,92,.25);padding:.5rem 1rem;border-radius:6px;transition:all .3s}
.reviews-cta a:hover{background:rgba(200,165,92,.1)}
.reviews-cta a svg{width:14px;height:14px;stroke:var(--gold);fill:none;stroke-width:2}

.process{padding:1.5rem 0;background:var(--cream)}
.process .section-label{justify-content:center}.process .section-label::before{display:none}
.process h2{text-align:center}
.process-intro{text-align:center;font-size:.82rem;color:var(--text-light);max-width:440px;margin:0 auto 1rem;line-height:1.5}
.process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative}
.process-steps::before{content:'';position:absolute;top:1.5rem;left:12%;right:12%;height:1px;background:linear-gradient(90deg,transparent,var(--gold-muted),var(--gold-muted),transparent)}
.step{text-align:center;padding:0 .75rem}
.step-num{width:36px;height:36px;border-radius:50%;border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;margin:0 auto .6rem;font-family:'Playfair Display',serif;font-size:.9rem;font-weight:700;color:var(--gold);background:var(--cream);position:relative;z-index:1}
.step h3{font-family:'Playfair Display',serif;font-size:.9rem;color:var(--navy);margin-bottom:.25rem;font-weight:600}
.step p{font-size:.72rem;color:var(--text-light);line-height:1.5}

.cta-section{padding:1.5rem 0;background:var(--cream)}
.cta-box{max-width:800px;margin:0 auto;background:var(--navy);border-radius:14px;padding:1.25rem 1.5rem;text-align:center;position:relative;overflow:hidden}
.cta-box::before{content:'';position:absolute;inset:0;background:url("data:image/svg+xml,%3Csvg width='40' height='40' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 0v40M0 20h40' stroke='%23C8A55C' stroke-width='.3' opacity='.04'/%3E%3C/svg%3E")}
.cta-box>*{position:relative;z-index:1}
.cta-box .section-label{justify-content:center;color:var(--gold);margin-bottom:.25rem}.cta-box .section-label::before{display:none}
.cta-box h2{color:var(--white);margin-bottom:.35rem;font-size:1.4rem}
.cta-box p{color:rgba(255,255,255,.5);font-size:.82rem;line-height:1.5;max-width:440px;margin:0 auto .75rem}
.cta-btns{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap}
.cta-contact{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(200,165,92,.1);border-radius:8px;overflow:hidden;max-width:450px;margin:.75rem auto 0}
.cta-contact-item{background:var(--navy-mid);padding:.4rem .4rem;text-align:center}
.cc-label{font-size:.5rem;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-muted);font-weight:700;margin-bottom:.1rem}
.cc-value{font-size:.72rem;color:var(--white)}
.cc-value a{color:var(--white);text-decoration:none}

footer{background:var(--navy);border-top:1px solid rgba(200,165,92,.1);padding:.6rem 0 .4rem}
.footer-inner{max-width:1200px;margin:0 auto;padding:0 clamp(1rem,3vw,2.5rem)}
.footer-top{display:flex;flex-direction:column;align-items:center;gap:.4rem;margin-bottom:.5rem}
.f-logo{font-family:'Cormorant Garamond',serif;font-size:.85rem;letter-spacing:3px;text-align:center}
.f-logo .b-letter{color:var(--white)}.f-logo .l-letter{color:var(--gold);opacity:.6}
.f-tagline{font-size:.5rem;color:rgba(255,255,255,.3);text-transform:uppercase;letter-spacing:.1em;text-align:center}
.footer-links{display:flex;gap:1rem}
.footer-links a{font-size:.62rem;color:rgba(255,255,255,.4);text-decoration:none;transition:color .3s}
.footer-links a:hover{color:var(--gold)}
.footer-bottom{border-top:1px solid rgba(200,165,92,.06);padding-top:.6rem;text-align:center}
.footer-compliance{font-size:.55rem;color:rgba(255,255,255,.25);line-height:1.5}
.footer-compliance a{color:rgba(200,165,92,.4);text-decoration:none}
.footer-badges{display:flex;align-items:center;justify-content:center;gap:1.5rem;margin-top:.6rem;padding-top:.5rem;border-top:1px solid rgba(200,165,92,.06)}
.footer-badge{display:flex;align-items:center;gap:.4rem;color:var(--gold-muted);text-decoration:none;transition:color .3s;opacity:.55;transition:opacity .3s}
.footer-badge:hover{opacity:.85}
a.footer-badge{cursor:pointer}
.nmls-logo{width:72px;height:28px;color:var(--gold-muted)}
.eho-logo{width:22px;height:22px;color:var(--gold-muted)}
.eho-badge span{font-size:.45rem;color:rgba(255,255,255,.3);text-transform:uppercase;letter-spacing:.04em;line-height:1.3}

@media(max-width:900px){
.hero-content{padding:calc(56px + 1.5rem) 1.5rem 2rem}
.about-grid{grid-template-columns:1fr}.about-image{order:-1;max-width:280px;margin:0 auto}
.service-cards{grid-template-columns:1fr}
.reviews-grid{grid-template-columns:1fr}
.dl-grid{grid-template-columns:1fr}
.process-steps{grid-template-columns:repeat(2,1fr);gap:1rem}.process-steps::before{display:none}
.cta-contact{grid-template-columns:1fr}
nav .nav-links{display:none}
}
@media(max-width:600px){.process-steps{grid-template-columns:1fr}.about-highlights{grid-template-columns:1fr}}

@keyframes fadeUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
.hero-content .section-label{animation:fadeUp .5s ease both .1s}
.hero-content h1{animation:fadeUp .5s ease both .2s}
.hero-content p{animation:fadeUp .5s ease both .3s}
.hero-btns{animation:fadeUp .5s ease both .4s}