:root{--ink:#152849;--blue:#2538a5;--paper:#f6f4ef;--muted:#556176;--line:#d9dfe6;--gold:#a17b47}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08;letter-spacing:-.04em}h1{font-size:clamp(44px,5.6vw,78px);margin-bottom:26px}h2{font-size:clamp(36px,4vw,52px);margin-bottom:22px}h3{font-size:22px;line-height:1.25}p{font-size:17px}.wrap{max-width:1200px;margin:auto;padding:0 40px}.top{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:3}.nav{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:92px}.brand{width:170px;flex-shrink:0}.brand img{width:100%;height:72px;object-fit:contain}.navlinks{display:flex;align-items:center;gap:26px;font-size:14px}.navlinks a{text-decoration:none}.navlinks a:hover{text-decoration:underline;text-underline-offset:5px}.navcall{border:1px solid var(--ink);padding:10px 17px}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.18em;font-weight:bold;margin-bottom:24px;display:block;color:var(--blue)}.hero{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:center;padding-top:62px;padding-bottom:70px}.hero-copy{max-width:620px}.hero-copy p{max-width:520px;color:var(--muted);font-size:19px}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.button{display:inline-block;background:var(--blue);color:#fff;padding:15px 22px;text-decoration:none;font-size:14px;font-weight:bold;border:1px solid var(--blue);transition:background .15s}.button:hover{background:var(--ink)}.button.secondary{color:var(--ink);background:transparent;border-color:var(--line)}.button.secondary:hover{background:#e8edf5}.portrait{position:relative;padding:0 0 34px 24px}.portrait:before{content:'';position:absolute;inset:30px 24px 0 0;border:1px solid var(--gold);z-index:0}.portrait img{position:relative;width:100%;height:auto}.portrait-caption{position:absolute;bottom:15px;left:45px;right:14px;background:var(--ink);color:#fff;padding:18px 24px}.portrait-caption strong{font-family:Georgia,serif;font-size:23px;font-weight:400;display:block}.portrait-caption span{font-size:12px;letter-spacing:.07em}.strip{background:var(--ink);color:#fff}.strip-inner{display:flex;justify-content:space-between;gap:24px;padding-top:25px;padding-bottom:25px;font-size:14px}.strip-inner span{color:#c3cede}.strip-inner strong{font-weight:400}.section{padding:86px 0}.sectionhead{display:grid;grid-template-columns:1fr .7fr;gap:60px;margin-bottom:45px;align-items:end}.sectionhead p{color:var(--muted);margin-bottom:0}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service{padding:32px 30px 32px 0}.service+.service{border-left:1px solid var(--line);padding-left:30px}.number{font-family:Georgia,serif;font-size:33px;color:var(--gold);display:block;margin-bottom:30px}.service p{color:var(--muted);font-size:16px}.service a{font-size:14px;font-weight:bold;text-underline-offset:5px}.light{background:#fff}.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.about-side{border-top:2px solid var(--gold);padding-top:25px}.about-side blockquote{font-family:Georgia,serif;font-size:30px;line-height:1.35;letter-spacing:-.02em;margin:0 0 20px}.about-body p{color:var(--muted)}.city-buttons{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:28px}.city-buttons button{font:inherit;font-size:15px;padding:11px 20px;border:1px solid var(--line);background:transparent;cursor:pointer;color:var(--ink)}.city-buttons button[aria-pressed=true]{background:var(--ink);color:#fff}.city-info{background:#e9edf4;padding:35px;display:grid;grid-template-columns:.6fr 1fr;gap:35px}.city-info h3{font-family:Georgia,serif;font-size:34px;font-weight:400;margin:0}.city-info p{margin:0;color:var(--muted)}.region{font-size:14px;color:var(--muted);margin-top:22px}.community{display:grid;grid-template-columns:1fr 1fr;gap:70px}.roles{border-top:1px solid var(--line)}.role{padding:20px 0;border-bottom:1px solid var(--line)}.role strong{display:block;font-size:17px}.role span{display:block;font-size:14px;color:var(--muted)}.article-link{display:block;margin-top:30px;padding:22px;border:1px solid var(--line);text-decoration:none;background:var(--paper)}.article-link small{display:block;color:var(--gold);font-size:12px;margin-bottom:7px;letter-spacing:.1em;text-transform:uppercase}.article-link strong{font-family:Georgia,serif;font-size:23px;font-weight:400}.faq{display:grid;grid-template-columns:.65fr 1fr;gap:80px}details{padding:20px 0;border-bottom:1px solid var(--line)}details:first-child{border-top:1px solid var(--line)}summary{cursor:pointer;font-size:18px;font-weight:bold}details p{font-size:16px;color:var(--muted);padding-top:18px;margin-bottom:0}.contact{background:var(--ink);color:#fff;padding:70px 0}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:65px}.contact .eyebrow{color:#c3b18f}.contact h2{font-size:52px}.contact p{color:#c3cede}.contact-links{align-self:center}.contact-links a{display:block;font-size:25px;text-decoration:none;padding:12px 0;border-bottom:1px solid #53617b;overflow-wrap:anywhere}.contact-links small{color:#c3cede;display:block;margin-top:20px}footer{padding:30px 0;background:#fff;font-size:12px;color:var(--muted)}.footer-inner{display:flex;justify-content:space-between;gap:20px}.footer-inner a{margin-left:15px}.biohero{max-width:800px;padding:70px 0 25px}.biolayout{display:grid;grid-template-columns:1fr 340px;gap:75px;padding-bottom:80px}.biolayout p{color:var(--muted)}.biolayout h2{font-size:34px;letter-spacing:-.025em;margin-top:35px}.bioaside img{width:100%;height:auto}.bioaside{align-self:start}.bioaside .roles{margin-top:25px}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:8px;z-index:10;background:white;padding:10px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #aa8248;outline-offset:4px}@media(max-width:850px){.wrap{padding:0 24px}.navlinks{gap:15px}.navlinks .desktop{display:none}.hero{gap:30px;padding-top:40px}.hero h1{font-size:48px}.sectionhead,.about,.community,.faq{gap:35px}.section{padding:65px 0}.biolayout{gap:35px;grid-template-columns:1fr 260px}.contact-links a{font-size:20px}}@media(max-width:600px){.nav{min-height:75px}.brand{width:130px}.brand img{height:60px}.navlinks{font-size:12px}.navcall{padding:8px 12px}.hero{grid-template-columns:1fr;padding-bottom:45px}.hero h1{font-size:51px}.hero-copy p{font-size:18px}.portrait{max-width:360px;margin:auto}.strip-inner{flex-direction:column;gap:7px}.sectionhead,.about,.community,.faq,.contact-inner,.biolayout{grid-template-columns:1fr;gap:28px}.sectionhead{margin-bottom:28px}.services{grid-template-columns:1fr}.service,.service+.service{padding:28px 0;border-left:0}.service+.service{border-top:1px solid var(--line)}.number{margin-bottom:15px}.city-info{grid-template-columns:1fr;gap:14px;padding:25px}.contact h2{font-size:42px}.footer-inner{flex-direction:column}.footer-inner a{margin-left:0;margin-right:15px}.bioaside{max-width:340px}.biohero{padding-top:45px}.biohero h1{font-size:48px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.team-photo{width:100%;height:auto;border:1px solid var(--line)}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:28px}.team-card{border-top:2px solid var(--gold);padding-top:20px}.team-card .eyebrow{margin-bottom:12px}.team-card h3{font-family:Georgia,serif;font-weight:400;font-size:25px}.team-card a,.news-heading a{font-size:14px;text-underline-offset:5px}.news-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.news-card,.local-card{padding:26px;border:1px solid var(--line);background:var(--paper)}.news-card h3{font-family:Georgia,serif;font-weight:400;font-size:23px}.news-card time{font-size:12px;color:var(--muted)}.news-card a{text-decoration:none}.news-card a:hover{text-decoration:underline}.local-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:30px}.local-card p{color:var(--muted);font-size:16px}.search-form{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:30px;background:#e9edf4}.search-form label{display:flex;flex-direction:column;gap:8px;font-weight:bold;font-size:14px}.search-form input,.search-form select{font:inherit;color:var(--ink);padding:13px;background:#fff;border:1px solid #aab4c5;min-width:0}.search-form button{cursor:pointer;font:inherit;font-size:14px}.search-form .region{margin:0;align-self:center}@media(max-width:850px){.team-grid,.news-grid{grid-template-columns:1fr 1fr}}@media(max-width:600px){.local-grid,.search-form,.news-grid{grid-template-columns:1fr}.team-grid{gap:25px 15px}.team-card h3{font-size:21px}.news-heading{align-items:flex-start;flex-direction:column;gap:0}.search-form{padding:22px}}

.team-email span{display:block;font-size:12px;margin-top:8px;overflow-wrap:anywhere;color:var(--muted)}#weekly-updates{margin-bottom:45px}.update-text{white-space:pre-wrap;font-size:16px;color:var(--muted)}.editor-form{max-width:850px;margin:30px auto;background:white;padding:30px;border:1px solid var(--line)}.editor-form label{display:flex;flex-direction:column;font-size:15px;gap:7px;margin-bottom:20px;font-weight:bold}.editor-form input,.editor-form select,.editor-form textarea{font:inherit;padding:12px;border:1px solid #aab4c5;max-width:100%;color:var(--ink)}.editor-form textarea{min-height:220px}.editor-form button{font:inherit;cursor:pointer}.editor-list{margin:25px 0}.editor-post{padding:15px 0;border-bottom:1px solid var(--line)}.editor-post button{margin-left:15px}#editor-status{white-space:pre-wrap}.editor-note{font-size:14px;color:var(--muted)}

.team-card h3 a{text-decoration:none;font-size:inherit}.team-summary{font-size:14px;color:var(--muted)}.team-grid{grid-template-columns:repeat(2,1fr);gap:35px}.profile-link{display:block;margin:15px 0;font-size:15px;font-weight:bold;text-underline-offset:4px}.associate-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:65px;padding-bottom:70px}.associate-layout h2{font-size:32px;margin-top:35px}.associate-layout p{color:var(--muted)}.associate-layout aside{padding-top:40px}.county-areas{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-top:35px}.community-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:8px 18px;padding:0;margin:0;color:var(--muted);font-size:15px}.community-list li{padding-bottom:7px;border-bottom:1px solid var(--line)}@media(max-width:600px){.team-grid,.county-areas,.associate-layout{grid-template-columns:1fr}.community-list{font-size:14px}.associate-layout aside{padding-top:0}}

.team-headshot{width:150px;height:auto;border-radius:12px;margin-bottom:20px}
.guide-article{max-width:800px;margin:auto;padding:65px 0}.guide-article h2{font-size:32px;margin-top:36px}.guide-article p{color:var(--muted)}
/* Keep the broker link visible without crowding the mobile header. */
@media(max-width:600px){.nav{flex-wrap:wrap;gap:4px;padding-top:6px;padding-bottom:10px}.navlinks{width:100%;justify-content:space-between;gap:8px}.brand img{height:44px}}
/* Preserve the landscape team image's natural proportions on every associate page. */
.associate-layout aside img{width:100%;height:auto;object-fit:contain}
/* Company-first homepage: full team photography, collective story and member service. */
.company-hero{display:block;padding-top:54px}
.explore-nav{display:flex;gap:24px;padding-top:10px;padding-bottom:10px;border-top:1px solid var(--line);font-size:13px;flex-wrap:wrap}.explore-nav a{text-decoration:none}.explore-nav a:hover{text-decoration:underline}.journey-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.journey-card{border:1px solid var(--line);padding:28px;border-radius:16px;background:#fff}.journey-card .number{font-size:20px;margin-bottom:20px}.journey-card p{color:var(--muted);font-size:16px}.value-layout{display:grid;grid-template-columns:1fr 1fr;gap:60px}.value-layout p{color:var(--muted)}.value-form{background:var(--paper);padding:26px;border-radius:16px}.value-form label{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;font-weight:700;font-size:14px}.value-form input,.value-form select,.value-form textarea{font:inherit;padding:12px;border:1px solid #aab4c5;width:100%;color:var(--ink);background:#fff}.value-form button{font:inherit;font-size:14px;cursor:pointer}.mobile-actions{display:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}@media(max-width:800px){.journey-grid,.value-layout{grid-template-columns:1fr}.value-layout{gap:25px}}@media(max-width:600px){.explore-nav{gap:8px 18px;font-size:12px}.navlinks{flex-wrap:wrap}.mobile-actions{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--ink);color:#fff;z-index:4;justify-content:space-around;padding:12px 8px calc(12px + env(safe-area-inset-bottom));font-size:13px}.mobile-actions a{text-decoration:none;padding:4px}body{padding-bottom:74px}html{scroll-padding-top:180px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
.company-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:56px;align-items:center}
.company-hero h1{font-size:clamp(38px,5.5vw,67px);line-height:1.08}
.company-photo{margin:38px 0 0}
.company-photo img{display:block;width:100%;height:auto;border-radius:18px}
.company-photo figcaption{padding:13px 0;color:var(--muted);font-size:14px}
.community-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.community-grid a{font-weight:700}
.broker-spotlight{margin-top:36px;display:grid;grid-template-columns:150px 1fr;gap:30px;align-items:center;padding:28px;border:1px solid var(--line);border-radius:18px;background:var(--cream)}
.broker-spotlight img{width:150px;height:190px;object-fit:cover;border-radius:12px}
.broker-spotlight h3{margin:10px 0;font-size:29px}
@media(max-width:800px){.company-intro{grid-template-columns:1fr;gap:15px}.company-hero{padding-top:34px}.community-grid{grid-template-columns:1fr}}
@media(max-width:500px){.broker-spotlight{grid-template-columns:1fr;padding:22px}.broker-spotlight img{width:110px;height:145px}.company-photo{margin-top:26px}.company-photo img{border-radius:10px}}

.review-jumps{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}.review-jumps a{border:1px solid #b6c5bc;border-radius:24px;padding:10px 16px;color:var(--ink,#18372b)}.review-list{display:grid;gap:28px}.review-card{display:grid;grid-template-columns:180px 1fr;gap:32px;padding:32px;border:1px solid #dce5de;border-radius:18px;background:#fff}.review-card img{width:180px;height:230px;object-fit:cover;object-position:top;border-radius:12px}.review-card h2{font-size:32px;margin:12px 0}.review-card blockquote{margin:20px 0;padding:0 0 0 20px;border-left:3px solid #baa16a}.review-card cite{font-size:13px;font-style:normal}.review-card .button{margin-top:16px}@media(max-width:600px){.review-card{grid-template-columns:1fr;padding:22px;gap:16px}.review-card img{width:120px;height:154px}.review-card h2{font-size:27px}.review-jumps{gap:8px}.review-jumps a{font-size:14px}}

.blog-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:28px;padding-bottom:40px}.blog-grid h2{font-size:30px}.blog-article{max-width:850px}.blog-article h1{font-size:clamp(38px,5vw,62px)}.blog-article h2{font-size:30px;margin-top:36px}.blog-sources{border-top:1px solid var(--line);margin-top:32px;padding-top:24px}.blog-tags{display:flex;flex-wrap:wrap;gap:8px}.blog-tag{font-size:13px;background:#e6e9ef;padding:5px 10px;border-radius:4px}.form-consent{display:block!important;font-size:14px!important;grid-column:1/-1}.form-consent input{width:auto!important;display:inline-block;margin-right:6px}.form-status{grid-column:1/-1}.honeypot{position:absolute!important;left:-10000px;width:1px;height:1px;overflow:hidden}.inquiry-details{white-space:pre-wrap}.editor-form select,.editor-form textarea{width:100%;font:inherit;padding:10px;margin-bottom:18px}

.property-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.property-card{background:#fff;border:1px solid var(--line);overflow:hidden}.property-card>a{display:block;text-decoration:none;padding:0 0 24px}.property-card img{width:100%;aspect-ratio:3/2;object-fit:cover;margin-bottom:22px}.property-card h2,.property-card h3,.property-card p,.property-card strong,.property-card span{margin-left:24px;margin-right:24px}.property-card h2{font-size:32px}.property-card strong{font-size:24px}.property-card .profile-link{display:block}.listing-article{padding:50px 0 80px}.listing-article h1{font-size:clamp(40px,6vw,72px)}.listing-location{font-size:22px}.listing-summary{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin:25px 0}.listing-summary strong{font-size:32px}.listing-summary p{margin:0}.listing-cover{margin:0 0 35px}.listing-cover img{width:100%;height:auto}.listing-cover figcaption,.property-gallery figcaption{font-size:13px;color:var(--muted);padding-top:8px}.property-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.property-gallery figure{margin:0}.property-gallery img{width:100%;height:auto}.page-inquiry{background:#e9edf4;padding:30px;margin:40px 0;border-radius:4px}.page-inquiry h2{font-size:34px}.page-inquiry textarea{width:100%;font:inherit;padding:12px;border:1px solid var(--line);background:white}.local-faq summary{cursor:pointer;padding:15px 0;font-weight:bold}.local-faq details{border-bottom:1px solid var(--line)}@media(max-width:700px){.property-grid{grid-template-columns:1fr}.page-inquiry{padding:20px}.listing-summary{align-items:flex-start;flex-direction:column}.listing-summary .button{width:100%}.explore-nav{overflow-x:auto;white-space:nowrap}}

/* Contact actions remain reachable on phone and tablet pages. */
.value-options{margin:0 0 18px;padding:0;border:1px solid var(--line);border-radius:8px;background:#fff}
.value-options summary{font-family:Arial,Helvetica,sans-serif;font-size:14px;padding:14px;min-height:48px}
.value-options label{margin:0 14px 16px}.value-options label:first-of-type{margin-top:14px}
.value-form>button{width:100%;min-height:48px;margin-top:12px}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.mobile-actions{display:flex;justify-content:center;gap:16px;background:var(--ink);color:#fff;padding:16px}
.mobile-actions a{display:flex;align-items:center;justify-content:center;text-align:center;text-decoration:none;min-height:44px;padding:8px 18px;border:1px solid #53617b;border-radius:6px;font-size:14px;line-height:1.3}
.mobile-actions a:nth-child(2){background:var(--blue);border-color:var(--blue)}
@media(max-width:850px){.nav{flex-wrap:wrap;gap:6px;padding-top:8px;padding-bottom:8px}.navlinks{flex:1 1 100%;justify-content:flex-start;gap:8px 16px;flex-wrap:wrap}.navlinks a{display:inline-flex;align-items:center;min-height:36px}.mobile-actions{position:fixed;bottom:0;left:0;right:0;z-index:4;gap:6px;padding:8px 8px calc(8px + env(safe-area-inset-bottom))}.mobile-actions a{flex:1;min-width:0;font-size:12px;padding:8px 4px;min-height:48px}body:has(.mobile-actions){padding-bottom:calc(84px + env(safe-area-inset-bottom))}html{scroll-padding-top:210px;scroll-padding-bottom:100px}input,select,textarea{scroll-margin-top:210px}}
