/* Shared visual system: comfortable reading, room to reflow, finite motion. */
:root{--copy:20px;--card-copy:18px;--ui:16px;--small:14px;--blue:#0061ce;--muted:#445b70;--ease:cubic-bezier(.2,.75,.25,1)}
body.readable{font-size:var(--copy);line-height:1.65}
.readable .split p:not(.eyebrow):not(.small-note){font-size:var(--copy);line-height:1.65}
.readable :is(h1,h2,h3){text-wrap:balance;overflow-wrap:break-word}
.readable :is(.wrap,.split>*,.cards>*,.mls-hero-grid>*,.mls-city-content>*,.mls-faq-section>*){min-width:0}
.readable .wrap{max-width:1440px}
.readable .section{padding-block:96px}
.readable :is(.hero-content>p:not(.eyebrow),.page-hero .lead,.team-copy p:not(.eyebrow),.article-body p,.article-body ul,.legacy-overview p,.legacy-overview ul,.mls-city-article p,.mls-anywhere>div>p:not(.eyebrow),.mls-location>div>p:not(.eyebrow),.mls-city-next p:not(.eyebrow),.flex-copy>p,.search-showcase p:not(.eyebrow),.closing p:not(.eyebrow),.review-inventory>p,.review-inventory>ul,.call-details){font-size:var(--copy);line-height:1.65}
.readable :is(.card p,.city-grid .card p,.mls-feature p,.mls-steps p,.mls-ai-note p,.mls-benefit-grid p,.mls-faq p,.mls-faq-intro>p:last-child,.mls-checklist>ul>li,.mls-start-panel li,.mls-start-panel>p:last-child,.section-heading>p,.city-search-callout p:not(.eyebrow)){font-size:var(--card-copy);line-height:1.65}
.readable :is(.eyebrow,.hero .eyebrow,.page-hero .eyebrow,.mls-hero .eyebrow,.search-showcase .eyebrow,.mls-start-panel .eyebrow,.mls-checklist>.eyebrow,.mls-ai-note .eyebrow,.mls-benefit-grid .eyebrow,.article-aside .eyebrow,.map-toolbar>.eyebrow){font-size:var(--small);line-height:1.6;letter-spacing:1.5px}
.readable :is(.mls-scope,.mls-hero .mls-scope,.mls-city-hero .mls-scope,.mls-closing .mls-scope,.mls-benefits .mls-example-note,.calendar-card .small-note,.preview-note,.map-bottom .preview-note,.zip-reading .preview-note,.team-photo figcaption,.team-photo figcaption span,.flex-example figcaption,.footer-bottom,.breadcrumbs,.mls-city-hero .breadcrumbs,.article-number,.card-index,.mls-step-number,.mls-start-panel li span,.mls-property-links>span){font-size:var(--small);line-height:1.6}
.readable :is(.button,.button.small,.mls-closing .button,.mls-benefits .button,.city-search-callout .button){font-size:var(--ui);line-height:1.4;min-height:56px;gap:20px;padding:17px 22px;max-width:100%;border-radius:6px;white-space:normal}
.readable .button span[aria-hidden]{flex:none}
.readable .site-header nav{font-size:var(--ui);gap:24px}
.readable :is(.dropdown a,.menu-toggle,.site-header nav>a:not(.button),.nav-group>summary,.article-aside nav a,.aside-next,.text-link,.hero .text-link,.mls-hero .actions .text-link,.mls-city-hero .actions .text-link,.flex-copy .actions .text-link,.mls-checklist>.text-link,.mls-property-links .text-link,.mls-benefits .text-link,.map-bottom .text-link,.mls-jump a,.mls-resource-links a,.mls-local-resources a,.mls-topic-links>a,.footer-main nav,.footer-contact,.footer-contact strong){font-size:var(--ui);line-height:1.5}
.readable :is(.text-link,.mls-jump a,.aside-next,.footer-main nav a,.footer-contact a,.breadcrumbs a,.sources summary,.sources a,.mls-topic-links>a){min-height:44px;display:inline-flex;align-items:center}
.readable .article-aside nav a,.readable .dropdown a{min-height:48px;display:flex;align-items:center}
.readable .mls-resource-links a{min-height:52px;align-items:center}
.readable .footer-contact a{overflow-wrap:anywhere}
.readable .brand{width:210px;min-height:44px;display:flex;align-items:center}
.readable .header-inner{gap:26px;min-height:104px}
.readable .review-bar{font-size:14px;letter-spacing:.5px;min-height:44px;padding-block:0}
.readable .review-bar a{min-height:44px;display:flex;align-items:center;font-size:14px}
.readable .review-bar b{margin-left:5px}
.readable .dropdown{min-width:300px;border-radius:0 0 9px 9px}
.readable .area-dropdown{min-width:500px}
.readable .hero{min-height:800px}
.readable .hero-content{padding-top:72px;padding-bottom:60px}
.readable .hero-content>p:not(.eyebrow){max-width:590px}
.readable .hero-location{font-size:14px;letter-spacing:1px;right:0;bottom:64px}
.readable .hero-location strong{font-size:16px}
.readable .hero-side{font-size:14px}
.readable .hero:before{background:linear-gradient(90deg,#041427f2 0%,#041427cf 35%,#04142733 80%),linear-gradient(0deg,#00163066,transparent 45%)}
.readable .pulse-dot{animation:none;width:9px;height:9px;flex:none}
.readable .route-strip a{font-size:22px;padding:28px 30px;min-width:0}
.readable .route-strip span{font-size:14px;letter-spacing:1px;padding-right:16px}
.readable .route-strip b{right:18px}
.readable .cards,.readable .city-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.readable .card,.readable .city-grid .card{padding:32px;min-height:260px;border-radius:9px}
.readable .card h3,.readable .city-grid .card h3{font-size:30px;line-height:1.15;letter-spacing:-.8px}
.readable .card-index{margin-bottom:30px}
.readable .card p{max-width:45ch}
.readable .zip-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.readable .zip-grid .card{min-height:170px;padding:25px}
.readable .zip-grid .card h3{font-size:27px}
.readable .section-heading{gap:60px;align-items:end}
.readable .section-heading>p{max-width:390px}
.readable .split{gap:72px}
.readable .team-photo{isolation:isolate}
.readable .team-photo img{max-height:none;border-radius:10px;object-fit:contain}
.readable .team-photo figcaption{gap:16px;flex-wrap:wrap}
.readable .hand-note{font-size:24px}
.readable .page-hero .lead{max-width:50ch}
.readable .breadcrumbs{align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:32px}
.readable .article-layout{grid-template-columns:280px minmax(0,1fr);gap:76px}
.readable .article-body{max-width:780px}
.readable .article-body h2,.readable .mls-city-article h2{font-size:40px;line-height:1.16}
.readable .article-aside{position:static}
.readable .sources,.readable .sources ul{font-size:16px}
.readable .sources li{margin-bottom:10px}
.readable .sources a{padding-block:8px}
.readable .mls-hero-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:60px;align-items:start}
.readable .mls-hero h1{font-size:clamp(54px,5.35vw,82px)}
.readable .mls-hero .lead{max-width:50ch}
.readable .mls-start-panel{padding:30px;border-radius:12px;box-shadow:0 20px 60px #0003}
.readable .mls-start-panel h2{font-size:34px;margin:20px 0}
.readable .mls-start-panel li{gap:14px;padding:14px 0}
.readable .mls-start-panel>p:last-child{margin-top:20px}
.readable .mls-jump .wrap{gap:14px 28px;padding-block:14px}
.readable .mls-features{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.readable .mls-feature{padding:34px;border-radius:10px;position:relative;overflow:hidden}
.readable .mls-feature h3{font-size:30px;line-height:1.15;max-width:22ch}
.readable .mls-feature-number{width:48px;height:48px;font-size:16px;border-radius:10px}
.readable .mls-steps{gap:40px}
.readable .mls-steps h3{font-size:30px;max-width:none}
.readable .mls-steps p{max-width:38ch}
.readable .mls-anywhere,.readable .mls-location,.readable .mls-city-next{gap:65px}
.readable .mls-ai-note{padding:36px;border-radius:10px}
.readable .mls-faq-section{grid-template-columns:.75fr 1.25fr;gap:70px}
.readable .mls-faq summary{font-size:20px;line-height:1.5;min-height:64px;padding:24px 8px}
.readable .mls-faq p{padding:0 38px 28px 8px}
.readable .mls-faq[open]{background:#f2f8ff}
.readable .mls-city-content{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:60px}
.readable .mls-checklist{padding:32px;position:static;border-radius:10px}
.readable .mls-checklist h2{font-size:34px}
.readable .mls-checklist>ul>li:before{font-size:18px}
.readable .mls-local-resources h3{font-size:22px}
.readable .mls-benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 50px}
.readable .mls-benefit-grid h3{font-size:30px}
.readable .mls-topic-links{padding:32px;border-radius:10px}
.readable .mls-topic-links h3{font-size:26px}
.readable .mls-topic-links>a{display:flex;min-height:52px}
.readable .mls-closing>.wrap>div:last-child{max-width:440px}
.readable .mls-closing .mls-scope{margin-top:18px}
.readable .city-search-callout .button{flex-shrink:1}
.readable .flex-intro{grid-template-columns:1fr 1fr;gap:60px}
.readable .flex-example{border-radius:12px}
.readable .flex-example-bar{font-size:14px;padding:16px 24px;gap:20px;flex-wrap:wrap;letter-spacing:1px}
.readable .flex-enlarge{font-size:16px;min-height:44px}
.readable .flex-example figcaption{padding:20px 24px}
.readable .flex-highlights{font-size:18px;gap:30px}
.readable .flex-highlights span{font-size:14px}
.readable .search-showcase .flex-schedule{font-size:18px;line-height:1.65}
.readable .map-toolbar>.eyebrow{font-size:14px}
.readable .map-bottom a.preview-note{display:inline-flex;align-items:center;min-height:44px}
.readable .zip-controls button{font-size:16px;min-height:48px}
.readable .concept-map #hotspot-49 .hotspot-content{font-size:var(--copy);line-height:1.65}
.readable .concept-map #hotspot-49 .hotspot-content p:has(strong){font-size:18px}
.readable .concept-map #hotspot-49 .hotspot-content h3{font-size:28px}
.readable .concept-map #hotspot-49 .hotspot-content a{font-size:16px;min-height:48px;align-items:center}
.readable .concept-map #hotspot-49 .hotspot-content a span{font-size:16px!important}
.readable .concept-map #hotspot-49 .hotspots-interaction{gap:45px}
.readable .calendar-card{border-radius:12px;padding:40px}
.readable .calendar-icon>span{font-size:14px}
.readable .calendar-card .button{margin-top:24px}
.readable .footer-main p{font-size:16px;color:#b9cbdd}
.readable .footer-main nav{gap:2px}
.readable .footer-contact{gap:4px}
.readable .footer-bottom{color:#bed0df}
.readable .footer-bottom a{display:inline-flex;align-items:center;min-height:44px}
.readable .status-cards span{font-size:16px}
.readable table{font-size:16px}
.readable td a{display:inline-block;min-height:44px;padding-block:7px}

/* Photography remains separate from the untouched Flexmls screenshot. */
.photo-explore{background:#f0f6fc}
.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.photo-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:transform .3s var(--ease),box-shadow .3s,border-color .3s}
.photo-frame{overflow:hidden;border-radius:inherit}
.photo-frame img{width:100%;height:auto;transition:transform .65s var(--ease)}
.photo-card .photo-frame{border-radius:0;aspect-ratio:4/3}
.photo-card .photo-frame img{width:100%;height:100%;object-fit:cover}
.photo-card-copy{padding:28px;display:flex;flex-direction:column;flex:1}
.photo-card h3{font-size:30px;line-height:1.15;margin:16px 0 24px}
.photo-card-link{display:flex;justify-content:space-between;gap:18px;align-items:center;font-size:16px;font-weight:600;margin-top:auto;min-height:44px;color:var(--blue)}
.photo-card-link span{font-size:26px;transition:transform .25s}
.editorial-photo{border-radius:10px;max-width:618px}
.editorial-photo figcaption{font-size:16px;font-weight:600;padding-top:15px;line-height:1.5}
.editorial-photo figcaption span{display:block;font-size:14px;color:var(--muted);font-weight:400;margin-top:5px}
.aside-team{margin-top:38px}
.mls-city-next .editorial-photo{margin-bottom:32px;max-width:420px}
.search-life-photo{margin:-30px -30px 28px;border-radius:12px 12px 0 0;overflow:hidden}
.search-life-photo img{width:100%;height:auto;aspect-ratio:650/360;object-fit:cover;object-position:center 63%}
.search-life-photo figcaption{font-size:14px;line-height:1.5;padding:12px 20px;background:#0c2a46;color:#dcecff}
.consultation-hero .wrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:80px;align-items:center}
.consultation-portrait{max-width:360px;justify-self:end;border-radius:12px;position:relative}
.consultation-portrait img{width:100%;max-height:450px;object-fit:cover;object-position:center 20%;border-radius:12px}
.consultation-portrait figcaption{font-size:16px;padding:15px 0 0;color:#cce3f6}
.consultation-portrait:before{content:'';position:absolute;inset:18px -18px -18px 18px;border:1px solid #20baff7a;border-radius:12px;z-index:-1}

/* Focus and touch feedback carry the same visual language as pointer effects. */
.readable :is(.card,.mls-feature,.photo-card){transition:transform .28s var(--ease),border-color .28s,box-shadow .28s}
.readable :is(.card:focus-visible,.photo-card:focus-visible,.mls-feature:focus-within){border-color:var(--blue);box-shadow:0 16px 40px #0061ce24;transform:translateY(-6px)}
.readable .card:focus-visible:after{transform:scaleX(1)}
.readable :is(.button,.text-link,.photo-card,.card):active{transform:translateY(1px);box-shadow:0 3px 12px #0061ce30}
.readable :is(.button:focus-visible,.zip-controls button:focus-visible){box-shadow:0 0 0 7px #20baff33}
.readable :is(.text-link,.mls-jump a,.aside-next){text-decoration:underline;text-decoration-color:transparent;text-underline-offset:7px;transition:color .2s,text-decoration-color .2s;gap:20px}
.readable :is(.text-link,.mls-jump a,.aside-next):is(:hover,:focus-visible){text-decoration-color:currentColor}
.readable .mls-jump a:focus-visible,.readable .mls-resource-links a:focus-visible{background:#e0efff}
.readable .mls-faq summary:hover{color:var(--blue)}
.readable .reveal-in{animation:none}
.readable .motion-enter{animation:bemo-enter .65s var(--ease) var(--enter-delay,0ms) both}
@keyframes bemo-enter{from{opacity:.45;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover) and (pointer:fine){
 .readable :is(.card,.mls-feature,.photo-card):hover{transform:translateY(-7px);border-color:var(--blue);box-shadow:0 18px 44px #0061ce22}
 .readable .photo-card:hover img,.readable .editorial-photo:hover img,.readable .search-life-photo:hover img{transform:scale(1.035)}
 .readable .photo-card:hover .photo-card-link span{transform:translate(4px,-4px)}
 .readable .button:hover{transform:translateY(-3px);box-shadow:0 10px 30px #0069d94d}
}
@media(max-width:1300px){
 .readable .header-inner{min-height:90px}.readable .menu-toggle{display:flex;align-items:center;gap:14px;min-height:48px;padding:10px 16px;background:transparent;color:white;border:1px solid #65859e;border-radius:6px}
 .readable .site-header nav{display:none;position:absolute;top:100%;left:20px;right:20px;background:var(--ink);border:1px solid #33516e;padding:22px;max-height:calc(100dvh - 145px);overflow:auto;box-shadow:0 15px 35px #001b3455;border-radius:0 0 10px 10px}
 .readable .site-header nav[data-open]{display:flex;flex-direction:column;align-items:stretch;gap:0}
 .readable .site-header nav>a:not(.button),.readable .nav-group>summary{padding:15px 8px;font-size:18px;min-height:52px}
 .readable .site-header nav>.button{margin-top:18px;align-self:flex-start}
 .readable .dropdown{position:static;min-width:0;box-shadow:none;background:#102e49;color:white;padding:8px;border-top:1px solid #33516e}
 .readable .dropdown-top{color:var(--electric)}.readable .dropdown a{font-size:16px}.readable .dropdown a:hover{background:#1a4163;color:white}
 .readable .mls-hero-grid{gap:40px}.readable .split{gap:45px}.readable .article-layout{gap:45px;grid-template-columns:240px minmax(0,1fr)}
 .readable .hero-location{position:static;margin-top:35px}.readable .hero-content{padding-bottom:45px}
 .readable .map-toolbar{flex-direction:column;align-items:stretch;gap:18px}
}
@media(max-width:1000px){
 .readable .cards,.readable .city-grid,.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .readable .mls-hero-grid,.readable .mls-city-content,.readable .mls-faq-section,.readable .mls-anywhere,.readable .mls-location,.readable .mls-city-next{grid-template-columns:1fr;gap:40px}
 .readable .mls-start-panel{max-width:650px}.readable .mls-start-panel ul{display:block}.readable .search-life-photo img{aspect-ratio:650/300}
 .readable .mls-steps{grid-template-columns:1fr;gap:32px}.readable .mls-steps p{max-width:65ch}.readable .mls-steps h3{max-width:none}
 .readable .mls-checklist>ul{display:block}.readable .mls-checklist{order:0}
 .readable .flex-intro{grid-template-columns:1fr;gap:30px}.readable .flex-copy{max-width:70ch}
 .readable .flex-highlights{grid-template-columns:1fr;gap:20px}
 .readable .mls-city-next .editorial-photo{max-width:420px}.readable .mls-topic-links{max-width:650px}
 .readable .consultation-hero .wrap{gap:45px;grid-template-columns:1.2fr .8fr}
 .readable .concept-map #hotspot-49 .hotspots-interaction{flex-direction:column-reverse;gap:25px}
 .readable .concept-map #hotspot-49 .hotspots-image-container{width:100%;max-width:460px;flex:auto;margin-inline:auto}
 .readable .concept-map #hotspot-49 .hotspots-placeholder{width:100%;max-width:100%;padding:24px 0 0;flex:auto;border-top:1px solid var(--line)}
 .readable .article-layout{display:flex;flex-direction:column;gap:45px}.readable .article-aside{width:100%}.readable .aside-team{max-width:260px}
 .readable .article-aside nav{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.readable .aside-team{display:none}
}
@media(max-width:768px){
 :root{--copy:18px}.readable .section{padding-block:68px}.readable .split{grid-template-columns:1fr;gap:38px}
 .readable .route-strip>.wrap{grid-template-columns:1fr}.readable .route-strip a{padding:24px 4px;border-left:0;border-bottom:1px solid #ffffff40}.readable .route-strip a:last-child{border-right:0;border-bottom:0}
 .readable .photo-grid{grid-template-columns:1fr}.readable .photo-card{display:grid;grid-template-columns:1fr 1fr}.readable .photo-card .photo-frame{aspect-ratio:auto;min-height:260px}
 .readable .consultation-hero .wrap{grid-template-columns:1fr;gap:35px}.readable .consultation-portrait{max-width:320px;justify-self:start}
 .readable .footer-main{flex-wrap:wrap}.readable .footer-main>div:first-child{width:100%}.readable .footer-bottom{flex-direction:column}
 .readable .closing .wrap{display:block}.readable .closing .button{margin-top:28px}.readable .closing p:not(.eyebrow){max-width:48ch}
 .readable .page-hero h1{font-size:clamp(44px,8vw,64px)}.readable .hero h1{font-size:clamp(50px,9vw,78px)}
 .readable .mls-hero h1{font-size:clamp(42px,8vw,64px)}.readable .mls-city-hero h1{font-size:clamp(42px,8vw,64px)}
 .readable .zip-controls{grid-template-columns:repeat(4,1fr)}.readable .zip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
 .readable .wrap{width:calc(100% - 40px)}.readable .review-bar{padding:6px 20px;align-items:flex-start;gap:10px;flex-wrap:wrap}.readable .review-bar>span{padding-top:10px}.readable .review-bar a{font-size:14px}
 .readable .header-inner{min-height:88px;gap:12px}.readable .brand{width:170px}.readable .menu-toggle{padding:10px 12px;gap:8px;font-size:16px}
 .readable .hero{min-height:0}.readable .hero-content{padding-top:44px;padding-bottom:42px}.readable .hero h1{font-size:clamp(44px,11vw,68px);line-height:1.05;margin-block:24px}
 .readable .hero .eyebrow{letter-spacing:1px}.readable .hero-location{font-size:14px;margin-top:30px}.readable .hero-location strong{font-size:16px}
 .readable .hero:before{background:linear-gradient(90deg,#041427ee,#041427b8)}
 .readable .hero-side{display:none}.readable .hero .actions{gap:20px;align-items:flex-start}.readable .hero .button{max-width:100%}
 .readable .cards,.readable .city-grid,.readable .mls-city-grid,.readable .mls-features,.readable .mls-related,.readable .mls-benefit-grid{grid-template-columns:1fr;gap:22px}
 .readable .card,.readable .city-grid .card,.readable .mls-feature{padding:28px;min-height:0}.readable .card h3,.readable .city-grid .card h3,.readable .mls-feature h3{font-size:28px}
 .readable .section-heading h2{font-size:38px;line-height:1.1}.readable .section-heading>p{font-size:18px}
 .readable .page-hero .lead{margin-top:24px}.readable .mls-hero h1,.readable .mls-city-hero h1{font-size:42px;line-height:1.08;letter-spacing:-1.6px}
 .readable .mls-start-panel{padding:24px}.readable .mls-start-panel h2{font-size:32px}.readable .search-life-photo{margin:-24px -24px 26px}.readable .search-life-photo img{aspect-ratio:650/420}
 .readable .mls-checklist{padding:26px}.readable .mls-checklist h2{font-size:30px}.readable .mls-city-article h2,.readable .article-body h2{font-size:33px;line-height:1.15}
 .readable .mls-steps li{padding-left:40px}.readable .mls-step-number{font-size:14px}.readable .mls-steps h3{font-size:28px}
 .readable .mls-jump .wrap{gap:10px 22px}.readable .mls-faq summary{font-size:18px;gap:16px}.readable .mls-faq p{padding-right:12px}
 .readable .mls-ai-note,.readable .mls-topic-links{padding:28px}.readable .mls-property-links>span{font-size:14px;width:100%}
 .readable .button,.readable .mls-benefits .button,.readable .mls-closing .button,.readable .city-search-callout .button{padding:16px 18px;gap:16px;font-size:16px}
 .readable .flex-example-bar{padding:14px 18px;gap:8px 16px}.readable .flex-example figcaption{padding:18px}.readable .flex-highlights{font-size:18px}
 .readable .article-aside nav{grid-template-columns:1fr}.readable .photo-card{display:flex}.readable .photo-card .photo-frame{aspect-ratio:4/3;min-height:0}.photo-card-copy{padding:26px}
 .readable .photo-card h3{font-size:28px}.readable .photo-card-link{font-size:16px}.readable .calendar-card{padding:30px 24px}
 .readable .zip-grid{grid-template-columns:1fr}.readable .zip-grid .card{min-height:0;padding:25px}.readable .status-cards{grid-template-columns:1fr 1fr}
 .readable .status-cards>div{padding:20px}.readable .status-cards b{font-size:30px}.readable .status-cards span{font-size:14px}
 .readable .footer-contact{font-size:16px}.readable .footer-contact strong{font-size:16px}.readable .footer-bottom{font-size:14px}
 .readable .consultation-portrait{max-width:280px}
}
@media(max-width:370px){
 .readable .brand{width:148px}.readable .header-inner{gap:8px}.readable .menu-toggle{padding:10px;font-size:16px}.readable .menu-toggle span{display:none}
 .readable .hero h1{font-size:43px}.readable .page-hero h1{font-size:42px}.readable .mls-hero h1,.readable .mls-city-hero h1{font-size:38px}
 .readable .button{gap:10px;padding-inline:15px}.readable .section-heading h2{font-size:34px}.readable .mls-start-panel h2{font-size:29px}
 .readable .status-cards{grid-template-columns:1fr}.readable .zip-controls{gap:6px}.readable .zip-controls button{font-size:16px}
 .readable .area-dropdown{grid-template-columns:1fr}.readable .review-bar>span{padding-top:0}.readable .review-bar{gap:0}
}
@media(prefers-reduced-motion:reduce){
 .readable *,.readable *:before,.readable *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 .readable :is(.motion-enter,.hero-image,.card,.button,.photo-card,.photo-frame img,.search-life-photo img,.mls-feature):is(:hover,:focus-visible,:active){transform:none!important}
 .readable .motion-enter{opacity:1!important;transform:none!important}
}

.readable .breadcrumbs a{min-width:44px}
.readable .team-cutout-frame{background:radial-gradient(ellipse at 15% 5%,#157cbe,#082740 75%);border:1px solid #387baf;border-radius:12px;overflow:hidden}
.readable .team-cutout img{width:100%;height:auto;object-fit:contain;border-radius:0}
.readable .team-cutout:before{display:none}

/* Individual Realtor biographies. Full portraits retain faces and natural proportions. */
.readable .profile-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(240px,.65fr);gap:64px;align-items:center}
.readable .profile-portrait{margin:0;max-width:390px;justify-self:end;background:linear-gradient(145deg,#09284b,#087bcd);border-radius:28px;overflow:hidden}
.readable .profile-portrait img{display:block;width:100%;height:auto;max-height:590px;object-fit:contain}
.readable .profile-portrait figcaption{padding:18px 20px;font-size:16px;color:#fff}
.readable .profile-contact{display:grid;gap:8px;margin-top:28px;padding-top:24px;border-top:1px solid #d1dae4;overflow-wrap:anywhere}
.readable .profile-contact a{display:flex;align-items:center;min-height:44px;font-size:16px}
@media(max-width:768px){.readable .profile-grid{grid-template-columns:1fr;gap:32px}.readable .profile-portrait{max-width:320px;justify-self:center}.readable .profile-portrait img{max-height:460px}.readable .profile-contact{margin-bottom:24px}}

/* Keep the homepage headline in two complete phrases on phone screens. */
@media(max-width:640px){
 .readable .hero-content{padding-top:28px;padding-bottom:32px}
 .readable .hero h1{font-size:clamp(27px,8.4vw,48px);line-height:1.12;letter-spacing:-.045em;margin-block:18px}
 .readable .hero h1 .hero-desktop-break{display:none}
 .readable .hero .eyebrow{font-size:clamp(11px,2.9vw,13px);line-height:1.5;letter-spacing:.45px;gap:8px;text-wrap:balance}
 .readable .hero .pulse-dot{width:6px;height:6px;flex:none}
 .readable .hero .actions{margin-top:22px}
 .readable .hero-location{margin-top:24px}
}
