/* A quieter, more practical presentation of the established brand. */
:root{--paper:#f5f1e8;--paper-deep:#ece6da;--ink:#08283d;--muted:#53636e;--forest:#08283d;--forest-deep:#051c2c;--gold:#bc9857;--line:#d8d3c8}
body{line-height:1.7}.container{width:min(1232px,calc(100% - 96px))}figure{margin:0}
h1,h2,h3{letter-spacing:-.03em;line-height:1.15}h1{font-size:clamp(3rem,5.3vw,4.8rem)}h2{font-size:clamp(2.15rem,3.5vw,3rem)}h3{font-size:1.65rem}em{font-style:normal;color:inherit}
.eyebrow{font-size:.8125rem;font-weight:500;letter-spacing:.105em;margin-bottom:23px;color:#53636e}
.lead{font-size:1.1875rem;line-height:1.7}.small{font-size:.875rem}
.site-header{background:#f5f1e8f5;border-bottom-color:var(--line)}.header-inner{min-height:94px}.wordmark>span{font-size:2rem;letter-spacing:-.04em}.wordmark small{font-size:.75rem;letter-spacing:.19em;line-height:1.3;margin-top:8px}
.main-nav{gap:30px}.main-nav>a{min-height:44px;display:inline-flex;align-items:center}.main-nav .nav-call{padding:11px 20px;min-height:47px;border-radius:5px;margin-left:7px;letter-spacing:.02em}
.button{justify-content:center;min-height:54px;border-radius:5px;padding:14px 24px;font-size:.9375rem;text-align:center;transition:background .2s}.button:hover{transform:none;background:#17435c}.button-group{gap:18px 25px}.text-link{gap:12px;font-size:.875rem}.text-link:hover{gap:12px}.inline-link{text-decoration:underline;text-underline-offset:4px}
.hero{grid-template-columns:.93fr 1.07fr;gap:64px;padding-block:60px 66px}.hero-copy{padding-block:12px;min-width:0}.hero h1{font-size:clamp(3.6rem,5.5vw,4.9rem);line-height:1.08;letter-spacing:-.045em;margin-bottom:25px}.hero .eyebrow{font-size:.8125rem;margin-bottom:26px;display:block}.hero-description{font-size:1.125rem;line-height:1.72;max-width:490px;margin-bottom:29px}.hero .button-group{flex-direction:row;align-items:center;gap:18px 25px}.hero .text-link{font-size:.875rem}
.hero-identity{font-size:.875rem;margin-top:35px;line-height:1.7}.hero-identity>span{font-size:.875rem}.hero-visual{height:auto;align-self:center;min-width:0;margin:0}.hero-home{height:508px;object-position:center bottom;border-radius:8px}
figcaption{font-size:.75rem;color:var(--muted);padding-top:10px;line-height:1.5}figcaption a{text-decoration:underline;text-underline-offset:3px}
.hero .hero-home{object-position:72% center}
.section{padding-block:62px 82px;border-top:1px solid var(--line)}.section-heading{gap:65px;margin-bottom:36px}.section-heading .eyebrow{margin-bottom:17px}.section-heading>p{max-width:295px}.service-list{border-top-color:#d8d3c8}
.service-row{grid-template-columns:1fr 1.05fr 115px;gap:45px;padding:31px 0;transition:background .2s}.service-row h3{font-size:1.95rem;margin:0}.service-row p{font-size:1rem;line-height:1.65;max-width:400px;margin:0}.service-row:hover{padding-left:0;background:transparent}.service-row:hover h3{color:#826327}.service-link-label{font-size:.875rem;white-space:nowrap;display:flex;align-items:center;justify-content:flex-end;gap:12px}.service-link-label span{transition:transform .2s}.service-row:hover .service-link-label span{transform:translateX(4px)}
.process-section{background:var(--paper-deep);padding-block:74px}.process-layout{display:grid;grid-template-columns:1fr 1.18fr;gap:100px;align-items:start}.process-layout>div>p:not(.eyebrow){color:var(--muted);max-width:340px}.process-layout h2{line-height:1.16}
.process-list{padding:0;margin:0;list-style:none;counter-reset:steps}.process-list li{counter-increment:steps;position:relative;padding:22px 0 24px 47px;border-top:1px solid #d8d3c8}.process-list li:first-child{padding-top:0;border-top:0}.process-list li:before{content:counter(steps,decimal-leading-zero);position:absolute;left:0;top:26px;font-size:.75rem;color:#53636e;line-height:1.5}.process-list li:first-child:before{top:4px}.process-list h3{font-family:var(--sans);font-size:1.0625rem;font-weight:500;letter-spacing:0;line-height:1.5;margin-bottom:9px}.process-list p{color:var(--muted);font-size:1rem;margin:0}
.agent-intro{display:grid;grid-template-columns:1fr 1.18fr;gap:100px;padding-block:79px 85px}.agent-intro h2{margin-bottom:18px}.agent-intro>div>p:not(.eyebrow){color:var(--muted)}.agent-intro .lead{color:var(--ink);font-size:1.25rem}.agent-intro-contact{display:flex;flex-direction:column;gap:6px;padding-top:7px}.agent-intro-contact a{font-size:1.25rem;letter-spacing:.015em;width:max-content}.agent-intro-contact a:hover{text-decoration:underline;text-underline-offset:4px}.agent-intro-contact span{color:var(--muted);font-size:.8125rem}
.cta-band{padding-block:45px}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:65px}.cta-inner h2{font-size:2.4rem;margin-bottom:12px}.cta-inner>div>p:not(.eyebrow){color:#e3ded3;margin:0;max-width:560px}.cta-inner>div:last-child{min-width:0}.cta-actions{display:flex;flex-direction:column;align-items:center;gap:12px;flex-shrink:0}.cta-band .button{min-width:190px;background:var(--paper);color:var(--forest)}.cta-band .button:hover{background:#e5dbc5}.cta-phone{padding:0;font-size:.875rem;letter-spacing:.02em}
.site-footer{padding-top:54px}.footer-top{grid-template-columns:1fr 1fr 1.2fr;gap:45px;padding-bottom:39px}.footer-top>div:first-child>p{font-size:.875rem;margin-top:21px}.footer-identity,.footer-contact{font-size:.875rem;line-height:1.7}.footer-identity strong{font-size:1rem}.footer-contact a:first-child{font-size:1.125rem}.footer-bottom{grid-template-columns:1fr 1.6fr auto;gap:30px;padding-block:26px;font-size:.75rem}.footer-bottom>a{grid-column:auto;text-decoration:underline;text-underline-offset:4px;border:0;padding:0}.footer-end{font-size:.75rem;padding-block:17px}
.page-intro{padding-block:67px 50px}.intro-grid{grid-template-columns:1fr 1fr;gap:100px;align-items:start}.intro-grid>div{max-width:520px}.intro-grid .lead{color:var(--ink)}.services-hub{padding-bottom:75px}
.detail-intro{padding-block:28px 57px}.back-link{margin-bottom:30px}.detail-intro-grid{grid-template-columns:1.65fr .8fr;gap:92px;align-items:start}.detail-intro h1{font-size:clamp(3rem,5vw,4.4rem);margin-bottom:24px}.detail-intro .lead{font-size:1.125rem;max-width:690px;margin-bottom:29px}.detail-intro .eyebrow{margin-bottom:22px}
.detail-aside{padding:28px;border:1px solid #d8d3c8;border-top:3px solid var(--gold);border-radius:5px;background:white;color:var(--ink);min-height:0;display:block}.detail-aside .eyebrow{font-size:.75rem;letter-spacing:.075em;margin-bottom:19px;color:#53636e}.detail-aside h2{font-size:1.9rem;margin-bottom:18px;line-height:1.15;color:var(--ink)}.aside-phone{display:inline-block;font-size:1.2rem;letter-spacing:.01em;margin-bottom:19px}.aside-phone:hover{text-decoration:underline;text-underline-offset:4px}.detail-aside p:not(.eyebrow){font-size:.875rem;color:var(--muted);margin-bottom:18px}.detail-aside p:last-child{font-size:.75rem;margin-bottom:0;color:var(--muted)}
.detail-section{padding-block:16px 69px}.detail-section .section-heading{margin-bottom:30px}.detail-section h2{font-size:2.25rem}.detail-steps{gap:40px}.detail-step{padding-top:21px}.step-number{margin-bottom:22px;letter-spacing:.02em}.detail-step h3{font-size:1.6rem}
.faq-section{padding-block:66px;background:var(--paper-deep)}.faq-grid{grid-template-columns:.85fr 1.25fr;gap:95px}.faq-grid h2{font-size:2.6rem}.faq-grid>div>p:not(.eyebrow){font-size:1rem;max-width:330px}.faq-list summary{padding-block:22px;font-size:1rem}.faq-list details p{font-size:1rem}.source-note{font-size:.8125rem;padding-top:21px}.related-section{padding-block:47px}.related-links{display:flex;justify-content:space-between;gap:26px;flex-wrap:wrap}.related-links a{font-size:1rem;min-height:44px;display:flex;gap:25px;align-items:center;border:0;border-bottom:1px solid #d8d3c8;border-radius:0;padding:0 0 7px}.related-links a:hover{border-color:var(--ink);background:transparent}
.about-page{grid-template-columns:1.35fr .8fr;gap:115px;padding-block:69px 79px;align-items:start}.about-page-copy{max-width:660px}.about-page h1{font-size:clamp(2.75rem,5vw,4.4rem);overflow-wrap:normal}.agent-role{font-size:1rem;border-left:2px solid var(--gold);padding-left:16px;color:var(--muted);margin-block:27px}.about-page-copy .lead{font-size:1.1875rem;color:var(--ink)}.about-portrait{max-width:375px;justify-self:end;width:100%;padding-top:12px;border-radius:0;overflow:visible}.about-portrait>img{width:100%;height:auto;aspect-ratio:auto;object-fit:contain;border-radius:7px}.about-portrait figcaption{font-size:.75rem;line-height:1.6}
.values-section{background:var(--paper-deep);padding-block:66px}.values-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:90px}.values-list article{padding-block:22px;border-top:1px solid #d8d3c8}.values-list article:first-child{border-top:0;padding-top:0}.values-list article:last-child{padding-bottom:0}.values-list h3{font-family:var(--sans);font-size:1.0625rem;font-weight:500;letter-spacing:0;line-height:1.5}.values-list p{color:var(--muted);margin-bottom:0}
.brokerage-section{display:flex;justify-content:space-between;align-items:center;gap:60px;padding-block:64px;text-align:left}.brokerage-section .eyebrow{margin-bottom:17px}.brokerage-section h2{font-size:2.55rem;margin-bottom:15px}.brokerage-section p:not(.eyebrow){color:var(--muted);margin:0}.brokerage-section .text-link{flex-shrink:0}
.contact-intro{padding-block:62px 37px}.contact-intro h1{font-size:clamp(3.1rem,5.4vw,4.8rem);line-height:1.15}.contact-intro .lead{font-size:1.125rem}.contact-layout{grid-template-columns:1.4fr .8fr;gap:110px;padding-bottom:81px;align-items:start}.contact-method{padding-block:23px 29px}.contact-method .eyebrow{font-size:.8125rem;margin-bottom:12px}.contact-phone{display:block;font-size:clamp(2.5rem,3.8vw,3.3rem);letter-spacing:-.025em;line-height:1.2;width:max-content;max-width:100%}.contact-email{font-size:1.125rem}.contact-topics{padding-top:24px}.topic-link{font-size:.875rem;border-radius:5px;padding:11px 16px;min-height:46px}.contact-topics .small{font-size:.875rem;max-width:480px}
.contact-agent{display:block;background:white;border:1px solid var(--line);border-top:3px solid var(--gold);border-radius:5px;padding:32px;margin:0;overflow:visible}.contact-agent .eyebrow{font-size:.75rem;letter-spacing:.09em;margin-bottom:20px}.contact-agent h2{font-size:2.2rem;margin-bottom:19px}.contact-agent p:not(.eyebrow){font-size:.875rem;color:var(--muted);margin-bottom:0}.contact-agent .text-link{margin-top:21px}
@media(max-width:1120px){.container{width:calc(100% - 72px)}.main-nav{gap:23px}.hero{gap:40px}.hero h1{font-size:5.6vw}.hero-home{height:490px}.hero-description br{display:none}.hero .button-group{gap:12px 20px}.hero .button{font-size:.875rem;padding-inline:19px}.service-row{gap:28px;grid-template-columns:1fr 1fr 108px}.service-row h3{font-size:1.8rem}.process-layout,.agent-intro{gap:65px}.detail-intro-grid{gap:55px}.faq-grid{gap:60px}.about-page{gap:65px;grid-template-columns:1.3fr .8fr}.contact-layout{gap:65px}.footer-top{gap:30px}.footer-bottom{grid-template-columns:1fr 1.5fr;gap:22px}.footer-bottom>a{grid-column:1/-1;justify-self:start}.intro-grid{gap:60px}.values-layout{gap:65px}}
@media(max-width:860px){.container{width:calc(100% - 48px)}.header-inner{min-height:85px;padding-block:18px}.wordmark>span{font-size:1.8rem}.main-nav{gap:15px}.main-nav>a{min-height:48px}.main-nav .nav-call{margin:10px 0 0;justify-content:center}.hero{grid-template-columns:1fr 1fr;gap:28px;padding-block:40px 50px}.hero h1{font-size:5.9vw}.hero .eyebrow{font-size:.75rem;letter-spacing:.075em}.hero-description{font-size:1rem}.hero-visual{height:auto}.hero-home{height:460px}.hero-identity{margin-top:26px}.hero .button-group{align-items:flex-start;flex-direction:column;gap:11px}.section{padding-block:45px 60px}.section-heading{gap:40px}.section-heading>p{max-width:240px}.service-row{grid-template-columns:1fr 1fr;gap:13px 35px;padding-block:25px}.service-row h3{grid-column:1;grid-row:1 / span 2;font-size:1.8rem}.service-row p{grid-column:2;grid-row:1}.service-link-label{grid-column:2;grid-row:2;justify-content:flex-start}.process-layout,.agent-intro{gap:45px;grid-template-columns:.9fr 1.1fr}.process-section{padding-block:59px}.process-list li{padding-left:34px}.agent-intro{padding-block:59px}.agent-intro .lead{font-size:1.125rem}.cta-inner{gap:36px}.cta-inner h2{font-size:2.1rem}.cta-band .button{min-width:165px}.footer-top{grid-template-columns:1fr 1fr;gap:29px}.footer-contact{grid-column:1/-1}.intro-grid{gap:43px}.intro-grid h1{font-size:3.6rem}.intro-grid .lead{font-size:1.125rem}.page-intro{padding-top:50px}.detail-intro-grid{grid-template-columns:1.4fr .8fr;gap:32px}.detail-intro h1{font-size:3.6rem}.detail-intro .lead{font-size:1rem}.detail-aside{padding:22px;min-height:0}.detail-aside h2{font-size:1.7rem}.aside-phone{font-size:1.0625rem}.detail-steps{gap:27px}.detail-step h3{font-size:1.5rem}.faq-grid{gap:40px;grid-template-columns:.9fr 1.2fr}.faq-grid h2{font-size:2.3rem}.about-page{gap:35px;grid-template-columns:1.3fr .85fr;padding-block:50px 61px}.about-page-copy .lead{font-size:1.0625rem}.about-portrait{padding-top:45px}.agent-role{font-size:.875rem}.values-layout{gap:40px;grid-template-columns:.85fr 1.2fr}.brokerage-section h2{font-size:2.2rem}.contact-layout{gap:35px;grid-template-columns:1.2fr .85fr}.contact-agent{padding:24px}.contact-agent h2{font-size:1.9rem}.contact-email{font-size:1rem}.contact-phone{font-size:2.6rem}.contact-intro{padding-top:49px}}
@media(max-width:600px){.container{width:calc(100% - 40px)}.broker-bar{font-size:.75rem}.header-inner{min-height:80px;padding-block:15px}.wordmark>span{font-size:1.7rem}.wordmark small{font-size:.75rem;margin-top:7px}.hero{grid-template-columns:1fr;padding-block:35px 43px;gap:29px}.hero-copy{padding:0}.hero .eyebrow{font-size:.75rem;letter-spacing:.08em;margin-bottom:21px}.hero h1{font-size:clamp(2.9rem,10.8vw,4.2rem);line-height:1.1;margin-bottom:22px}.hero-description{font-size:1.0625rem;margin-bottom:24px}.hero .button-group{flex-direction:row;align-items:center;gap:14px 21px}.hero .button{font-size:.9375rem;padding:14px 21px}.hero-identity{margin-top:24px;font-size:.875rem}.hero-identity>span{font-size:.875rem}.hero-visual{height:auto;margin:0}.hero-home{height:315px;border-radius:6px}.section{padding-block:40px 50px}.section-heading{display:block;margin-bottom:27px}.section-heading h2{font-size:2.3rem;line-height:1.16}.section-heading>p{max-width:100%;margin-top:17px;font-size:1rem}.service-row{grid-template-columns:1fr;gap:11px;padding-block:25px}.service-row h3,.service-row p,.service-link-label{grid-column:1;grid-row:auto}.service-row h3{font-size:1.85rem}.service-row p{max-width:100%;font-size:1rem}.service-link-label{font-size:.875rem;margin-top:2px}.process-section{padding-block:48px}.process-layout{grid-template-columns:1fr;gap:25px}.process-layout>div>p:not(.eyebrow){max-width:100%;margin-bottom:0}.process-layout h2{font-size:2.5rem}.process-list li:first-child{padding-top:21px;border-top:1px solid #d8d3c8}.process-list li:first-child:before{top:24px}.process-list li{padding-left:35px;padding-bottom:22px}.process-list li:last-child{padding-bottom:0}.agent-intro{grid-template-columns:1fr;gap:26px;padding-block:47px 53px}.agent-intro h2{font-size:2.5rem}.agent-intro .lead{font-size:1.1875rem}.agent-intro-contact{padding-top:3px}.cta-band{padding-block:36px}.cta-inner{display:block}.cta-inner h2{font-size:2.05rem}.cta-inner>div>p:not(.eyebrow){font-size:1rem}.cta-actions{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;gap:16px 24px;margin-top:25px}.cta-band .button{min-width:170px}.site-footer{padding-top:42px}.footer-top{grid-template-columns:1fr;gap:25px;padding-bottom:29px}.footer-contact{grid-column:auto}.footer-bottom{grid-template-columns:1fr;gap:20px;font-size:.75rem}.footer-bottom>a{grid-column:auto}.footer-end{flex-direction:column;gap:8px;font-size:.75rem}.page-intro{padding-block:41px 34px}.intro-grid{grid-template-columns:1fr;gap:23px}.intro-grid h1{font-size:3.4rem}.intro-grid>div{max-width:100%}.services-hub{padding-bottom:46px}.detail-intro{padding-block:19px 36px}.back-link{margin-bottom:23px}.detail-intro-grid{grid-template-columns:1fr;gap:33px}.detail-intro h1{font-size:3rem;line-height:1.1}.detail-intro .lead{font-size:1.0625rem}.detail-aside{padding:24px;display:block}.detail-aside h2{font-size:1.85rem;margin-bottom:13px}.aside-phone{font-size:1.25rem;margin-bottom:15px}.detail-section{padding-block:12px 46px}.detail-section h2{font-size:2.25rem}.detail-steps{grid-template-columns:1fr;gap:27px}.detail-step{padding-top:18px}.step-number{margin-bottom:14px}.detail-step h3{font-size:1.65rem}.faq-section{padding-block:44px}.faq-grid{grid-template-columns:1fr;gap:23px}.faq-grid h2{font-size:2.25rem}.faq-grid>div>p:not(.eyebrow){max-width:100%}.faq-list summary{padding-block:20px}.related-section{padding-block:36px}.related-links{display:grid;grid-template-columns:1fr;gap:15px}.related-links a{justify-content:space-between;font-size:1rem;min-height:48px}.about-page{display:flex;flex-direction:column;gap:32px;padding-block:39px 46px}.about-page h1{font-size:clamp(2.7rem,9.8vw,3.6rem)}.about-page-copy .lead{font-size:1.125rem}.about-page-copy{max-width:100%}.agent-role{font-size:1rem;margin-block:22px}.about-portrait{padding-top:0;max-width:300px;align-self:center;width:100%}.about-portrait>img{aspect-ratio:auto;object-fit:contain}.values-section{padding-block:44px}.values-layout{grid-template-columns:1fr;gap:19px}.values-layout h2{font-size:2.3rem}.values-list article:first-child{padding-top:21px;border-top:1px solid #d8d3c8}.brokerage-section{display:block;padding-block:42px}.brokerage-section h2{font-size:2.1rem}.brokerage-section .text-link{margin-top:20px}.contact-intro{padding-block:40px 27px}.contact-intro h1{font-size:clamp(2.7rem,9.6vw,3.6rem)}.contact-intro .lead{font-size:1.0625rem}.contact-layout{grid-template-columns:1fr;gap:28px;padding-bottom:47px}.contact-method{padding-block:20px 26px}.contact-phone{font-size:clamp(2.3rem,9.8vw,3.2rem)}.contact-email{font-size:1rem}.topic-link{padding:10px 14px;gap:15px}.contact-agent{display:block;padding:27px}.contact-agent h2{font-size:2.25rem}.contact-agent p:not(.eyebrow){font-size:1rem}}
@media(max-width:360px){.container{width:calc(100% - 32px)}.hero h1{font-size:2.85rem}.hero-home{height:270px}.hero .button-group{align-items:flex-start;flex-direction:column;gap:11px}.about-page h1{font-size:2.65rem}.contact-phone{font-size:2.3rem}.detail-intro h1{font-size:2.7rem}}
@media print{.hero-home{height:350px}.process-list li,.values-list article{break-inside:avoid}}
.agent-intro{grid-template-columns:160px minmax(0,.8fr) minmax(0,1.2fr);gap:44px;align-items:center}
.agent-intro-portrait{width:160px;max-width:100%;height:auto;border-radius:7px}
.agent-intro-heading,.agent-intro-copy{min-width:0}
@media(max-width:1120px){.agent-intro{grid-template-columns:140px minmax(0,.8fr) minmax(0,1.2fr);gap:30px}.agent-intro-portrait{width:140px}.agent-intro .agent-intro-heading h2{font-size:2.25rem}}
@media(max-width:860px){.agent-intro{grid-template-columns:140px minmax(0,1fr);gap:26px 28px}.agent-intro-copy{grid-column:1/-1}.agent-intro .agent-intro-heading h2{font-size:2.5rem}.agent-intro-heading .eyebrow{margin-bottom:15px}}
@media(max-width:600px){.agent-intro{grid-template-columns:112px minmax(0,1fr);gap:24px 22px}.agent-intro-portrait{width:112px}.agent-intro .agent-intro-heading h2{font-size:clamp(1.75rem,6vw,2.2rem);line-height:1.2;margin-bottom:9px}.agent-intro-heading .eyebrow{font-size:.75rem;letter-spacing:.06em;margin-bottom:10px}.agent-intro-heading .text-link{font-size:.875rem;min-height:44px}}
@media(max-width:360px){.agent-intro{grid-template-columns:96px minmax(0,1fr);column-gap:18px}.agent-intro-portrait{width:96px}}

/* The agent's name leads; the short domain is contact information. */
.wordmark{min-width:0}
.wordmark>.wordmark-name{font-size:1.65rem;line-height:1.03;letter-spacing:-.025em;overflow-wrap:anywhere}
.wordmark small{font-size:.875rem;line-height:1.4;letter-spacing:0;font-weight:400;margin:8px 0 0}
.site-header .header-inner{min-height:110px;padding-block:14px}
.site-header .wordmark{flex:0 1 270px}
.broker-bar{font-size:.875rem;letter-spacing:0}
.footer-identity strong{font-size:1.0625rem}
@media(max-width:1120px){.site-header .header-inner{gap:22px}.site-header .wordmark{flex-basis:235px}}
@media(max-width:860px){.site-header .wordmark{flex:1}.site-header .menu-toggle{flex-shrink:0}}
@media(max-width:600px){.site-header .header-inner{min-height:104px;gap:16px}.site-header .wordmark>.wordmark-name{font-size:1.45rem}.broker-bar .container{gap:4px}.broker-bar a{overflow-wrap:anywhere}}

/* Photographs connect each mortgage service to the plans behind it. */
.service-row.service-row-visual{grid-template-columns:210px minmax(0,1fr) 112px;gap:32px;align-items:center;padding-block:28px}
.service-row-visual .service-photo{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:6px;background:var(--paper-deep)}
.service-row-visual .service-photo img{width:100%;height:100%;object-fit:cover}
.service-row-visual .service-copy{display:flex;flex-direction:column;gap:12px;min-width:0}
.service-row-visual .service-copy h3,.service-row-visual .service-copy p{margin:0;max-width:620px}
.service-row-visual .service-link-label{grid-column:auto;grid-row:auto}
.detail-service-visual{margin-top:42px;overflow:hidden;border-radius:8px;background:var(--paper-deep)}
.detail-service-visual img{width:100%;height:clamp(290px,30vw,390px);object-fit:cover;object-position:center 55%}
.detail-service-visual-purchases img{object-position:center 58%}
@media(max-width:900px){
  .service-row.service-row-visual{grid-template-columns:160px minmax(0,1fr);gap:13px 26px}
  .service-row-visual .service-photo{grid-column:1;grid-row:1/span 2}
  .service-row-visual .service-copy{grid-column:2;grid-row:1;gap:9px}
  .service-row-visual .service-link-label{grid-column:2;grid-row:2;justify-content:flex-start}
  .service-row-visual .service-copy h3{font-size:1.8rem}
  .detail-service-visual img{height:330px}
}
@media(max-width:600px){
  .service-row.service-row-visual{grid-template-columns:1fr;gap:18px;padding-block:25px}
  .service-row-visual .service-photo{grid-column:1;grid-row:auto;aspect-ratio:16/10}
  .service-row-visual .service-copy,.service-row-visual .service-link-label{grid-column:1;grid-row:auto}
  .service-row-visual .service-copy h3{font-size:1.85rem}
  .service-row-visual .service-link-label{margin-top:0}
  .detail-service-visual{margin-top:30px;border-radius:6px}
  .detail-service-visual img{height:auto;aspect-ratio:4/3}
}
@media(prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine){
  .service-photo img{transition:transform 350ms ease}
  .service-row-visual:hover .service-photo img{transform:scale(1.035)}
}

/* Business-card palette: navy, ivory and champagne. */
:root { --navy:#08283d; --champagne:#bc9857; --ivory:#f5f1e8; }
.button, .main-nav .nav-call, .cta-band .button {
  background:var(--champagne); color:var(--navy); border-color:var(--champagne);
}
.button:hover, .main-nav .nav-call:hover, .cta-band .button:hover {
  background:#d7bd87; color:var(--navy); border-color:#d7bd87;
}
.button-secondary { background:transparent; color:var(--navy); border-color:var(--navy); }
.button-secondary:hover { background:var(--paper-deep); }
.main-nav>a:not(.nav-call):after { background:var(--champagne); }
.cta-band { background:var(--navy); border-top:1px solid var(--champagne); }
.site-footer { background:var(--navy); color:var(--ivory); border-top:1px solid var(--champagne); }
.site-footer .wordmark, .site-footer .footer-bottom strong, .site-footer .footer-bottom>a { color:var(--ivory); }
.site-footer .footer-top>div:first-child>p, .site-footer .footer-contact>span,
.site-footer .footer-identity>span, .site-footer .footer-bottom, .site-footer .footer-end { color:#d5dce0; }
.site-footer .footer-bottom, .site-footer .footer-end { border-color:#416074; }
.site-footer a:hover { color:#d7bd87; }
::selection { background:var(--champagne); color:var(--navy); }

/* Portrait-led introduction in the business card's navy and champagne palette. */
.portrait-hero{position:relative;isolation:isolate;background:var(--navy);color:var(--ivory);border-bottom:1px solid var(--champagne)}
.hero-house-backdrop{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-1}
.hero-house-backdrop>img{width:100%;height:100%;object-fit:cover;object-position:64% center;display:block}
.hero-house-backdrop::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,28,44,.96) 0%,rgba(5,28,44,.88) 34%,rgba(5,28,44,.55) 62%,rgba(5,28,44,.32) 100%),linear-gradient(0deg,rgba(5,28,44,.97) 0%,rgba(5,28,44,.72) 19%,transparent 52%)}
.portrait-hero .hero-with-portrait{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:64px;padding-block:48px 42px;align-items:center}
.hero-with-portrait .hero-copy{padding-block:16px}
.hero-with-portrait .eyebrow{display:flex;align-items:center;gap:15px;color:#d7bd87;font-size:.8125rem;letter-spacing:.12em;margin-bottom:27px}
.hero-with-portrait .eyebrow::before{content:"";display:block;width:34px;height:1px;background:var(--champagne);flex-shrink:0}
.hero-with-portrait h1{font-size:clamp(3rem,4.7vw,4.3rem);line-height:1.09;letter-spacing:-.04em;color:var(--ivory);margin-bottom:26px}
.hero-with-portrait h1 em{color:#d7bd87;font-style:italic;letter-spacing:-.045em}
.hero-with-portrait .hero-description{color:#d5dce0;font-size:1.0625rem;line-height:1.8;max-width:475px;margin-bottom:29px}
.hero-with-portrait .button-group{gap:12px 25px}
.hero-with-portrait .button{min-height:55px;padding:15px 22px;font-size:.9375rem;font-weight:500;border-radius:3px;box-shadow:0 4px 20px #00000012}
.hero-with-portrait .text-link{color:var(--ivory);border-color:#73808a;font-size:.875rem}
.hero-with-portrait .text-link:hover{border-color:#d7bd87}
.hero-direct{display:flex;align-items:center;flex-wrap:wrap;gap:8px 15px;padding-top:23px;margin:0;font-size:.875rem}
.hero-direct>span{color:#c2cdd4}
.hero-direct>a{color:var(--ivory);letter-spacing:.025em;min-height:44px;display:inline-flex;align-items:center}
.hero-direct>a:hover{text-decoration:underline;text-underline-offset:5px;text-decoration-color:#d7bd87}
.hero-with-portrait .hero-agent-visual{width:100%;max-width:440px;justify-self:end;height:auto;align-self:center;position:relative;padding:0;margin:0}
.hero-portrait-frame{position:relative;border:1px solid #bc985770;padding:9px;background:#051c2c;box-shadow:0 18px 50px #00000026}
.hero-portrait-frame::after{content:"";position:absolute;width:65px;height:3px;background:#d7bd87;bottom:-2px;left:22px}
.hero-agent-photo{width:100%;height:auto;aspect-ratio:1122/1402;object-fit:contain;object-position:center;display:block;border-radius:0}
.hero-with-portrait .hero-agent-caption{padding:22px 0 0;color:var(--ivory);font-size:.875rem;line-height:1.6}
.hero-agent-caption>strong{display:block;font-family:var(--serif);font-weight:400;line-height:1.3;font-size:1.6rem;letter-spacing:-.02em;margin-bottom:4px}
.hero-agent-caption>span{display:block;color:#d5dce0}
.hero-agent-caption .hero-brokerage{font-size:.75rem;line-height:1.8;margin-top:9px;color:#b9c8d2}
.hero-brokerage>span{color:#d7bd87;padding-inline:4px}
.hero-services{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #ffffff24;padding-block:5px}
.hero-services>a{display:flex;align-items:center;gap:14px;min-height:79px;padding:14px 18px;font-size:.875rem;line-height:1.5;color:#e5e9ec;transition:background-color .2s,color .2s}
.hero-services>a:first-child{padding-left:0}
.hero-services>a+a{border-left:1px solid #ffffff14}
.hero-services>a>span{color:#d7bd87;font-size:.75rem;letter-spacing:.06em}
.hero-services>a:hover{color:#d7bd87;background:#ffffff05}
.portrait-hero a:focus-visible{outline-color:#d7bd87}
.agent-intro.agent-intro-text-only{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:90px}
.agent-intro-text-only .agent-intro-copy{grid-column:auto}
@media(min-width:1500px){.portrait-hero .hero-with-portrait{gap:100px;padding-block:58px 48px}}
@media(max-width:1120px){
  .portrait-hero .hero-with-portrait{grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);gap:36px;padding-block:38px}
  .hero-with-portrait h1{font-size:clamp(2.7rem,4.9vw,3.5rem)}
  .hero-with-portrait .eyebrow{font-size:.75rem;letter-spacing:.07em;gap:10px}
  .hero-with-portrait .eyebrow::before{width:22px}
  .hero-with-portrait .button-group{align-items:flex-start;flex-direction:column;gap:9px}
  .hero-agent-caption>strong{font-size:1.4rem}
  .hero-services>a{padding-inline:14px;gap:9px;font-size:.8125rem}
  .agent-intro.agent-intro-text-only{gap:55px}
}
@media(max-width:760px){
  .hero-house-backdrop{bottom:auto;height:min(100%,780px)}
  .hero-house-backdrop>img{object-position:66% top}
  .hero-house-backdrop::after{background:linear-gradient(90deg,rgba(5,28,44,.9),rgba(5,28,44,.65)),linear-gradient(0deg,var(--navy) 0%,rgba(5,28,44,.82) 15%,transparent 65%)}
  .portrait-hero .hero-with-portrait{grid-template-columns:1fr;gap:35px;padding-block:34px 30px}
  .hero-with-portrait .hero-copy{padding:0}
  .hero-with-portrait .eyebrow{margin-bottom:23px}
  .hero-with-portrait h1{font-size:clamp(2.55rem,7.8vw,3.8rem);max-width:620px;margin-bottom:23px}
  .hero-with-portrait .hero-description{max-width:520px;margin-bottom:22px;font-size:1rem}
  .hero-with-portrait .button-group{flex-direction:row;align-items:center;gap:12px 20px}
  .hero-direct{padding-top:12px}
  .hero-with-portrait .hero-agent-visual{max-width:440px;justify-self:center}
  .hero-with-portrait .hero-agent-caption{padding-top:18px}
  .hero-agent-caption>strong{font-size:1.65rem}
  .hero-services{grid-template-columns:repeat(2,minmax(0,1fr));padding-block:0}
  .hero-services>a{min-height:68px;font-size:.8125rem;padding:14px 12px}
  .hero-services>a:nth-child(odd){padding-left:0;border-left:0}
  .hero-services>a:nth-child(n+3){border-top:1px solid #ffffff14}
  .agent-intro.agent-intro-text-only{grid-template-columns:1fr;gap:24px}
  .agent-intro-text-only .agent-intro-heading h2{font-size:2.5rem}
}
@media(max-width:380px){
  .hero-with-portrait h1{font-size:clamp(2.2rem,10vw,2.7rem)}
  .hero-with-portrait .eyebrow{font-size:.75rem;letter-spacing:.04em}
  .hero-with-portrait .eyebrow::before{width:16px}
  .hero-with-portrait .button-group{flex-direction:column;align-items:flex-start}
  .hero-agent-caption>strong{font-size:1.45rem}
  .hero-services>a{gap:8px;font-size:.8125rem}
}
@media print{
  .hero-house-backdrop{display:none}
  .portrait-hero{background:white;color:var(--ink)}
  .hero-with-portrait h1,.hero-with-portrait h1 em,.hero-with-portrait .hero-description,.hero-with-portrait .eyebrow,.hero-direct>a,.hero-with-portrait .text-link,.hero-with-portrait .hero-agent-caption,.hero-agent-caption>span,.hero-agent-caption .hero-brokerage,.hero-services>a{color:var(--ink)}
  .hero-with-portrait .hero-agent-visual{max-width:250px}
}

.hero-with-portrait .hero-fee-note{font-size:.875rem;line-height:1.65;color:#c8d3d9;max-width:470px;margin:14px 0 0}
.hero-fee-note a{text-decoration:underline;text-underline-offset:4px;color:#f5f1e8}
.hero-fee-note a:hover{color:#d7bd87}
#fees-and-costs{scroll-margin-top:130px}
#fees-and-costs:target{border-left:2px solid #bc9857;padding-left:16px}
