/* A 16 px base with a shared scale for the public website. */
html{font-size:16px}
body{font-size:1rem;line-height:1.65}
.section-copy,.featured-description,.audience-card p,.blog-card p:not(.eyebrow),.home-journal .blog-card p:not(.eyebrow),.property-description,.service-grid .prose,.contact-information p,.contact-information>a:not(.button),.contact-map-placeholder p,.prose,.prose details p,.prose details ul{font-size:1rem;line-height:1.65}
.button,.featured-body .button,.audience-card .button,.filter-actions .button,.blog-card .text-link,.results-row,.results-row select,.site-header nav>a,.home-page .site-header nav>a,.sell-link,.hero-types a,.hero-search-fields input,.hero-search-fields select,.filter-fields input,.filter-fields select,.inquiry-form input:not([type=checkbox]),.inquiry-form textarea,.newsletter-fields input{font-size:1rem}
.hero-search-fields label,.filter-fields label,.inquiry-form label,.type-chips span,.filter-bottom .type-chips span,.audience-card ul,.featured-facts,.card-meta,.card-reference,.badge,.featured-label,.blog-card .eyebrow,.breadcrumbs,.article-date,.detail-facts span,.review-card p,.review-person,.newsletter-section .check,.site-footer .footer-summary,.site-footer .footer-top a,.footer-links>span,.site-footer .text-button{font-size:.857143rem}
.home-page .hero h1{font-size:3.142857rem}
.section-banner h1,.plain-banner h1,.property-detail>h1{font-size:2.571429rem}
.section-heading h2,.newsletter-section h2{font-size:2.142857rem}
.featured-body h2,.audience-card h2,.contact-map h2{font-size:1.857143rem}
.property-agent>h2,.contact-information h2,.service-grid h2,.review-heading h2{font-size:1.571429rem}
.home-search h2,.feature-groups h2,.prose h3{font-size:1.428571rem}
.card-body h3,.blog-card h3,.blog-archive .blog-card h3,.home-journal .blog-card h3,.prose summary{font-size:1.142857rem;line-height:1.4}
.card-bottom .card-price,.featured-price,.detail-facts strong{font-size:1.285714rem}
.section-banner p,.property-agent>p,.feature-groups ul,.agent-links a{font-size:1rem}
.review-card{flex-basis:240px}
.hero-search-fields{grid-template-columns:150px 1fr 180px 180px}
.home-page .hero{height:auto;min-height:680px}
@media(max-width:1100px){.hero-search-fields{grid-template-columns:110px 1fr 140px 140px}}
@media(max-width:800px){
  .home-page .hero h1{font-size:2.571429rem}
  .section-banner h1,.plain-banner h1,.property-detail>h1{font-size:2.142857rem}
  .section-heading h2,.newsletter-section h2{font-size:1.857143rem}
  .featured-body h2,.audience-card h2{font-size:1.714286rem}
  .hero-search-fields{grid-template-columns:1fr 1fr}
  .home-page .hero{min-height:660px}
}
@media(max-width:540px){
  .home-page .hero h1{font-size:2.285714rem}
  .section-banner h1,.plain-banner h1,.property-detail>h1{font-size:1.857143rem}
  .filter-fields input,.filter-fields select{font-size:1rem}
  .filter-actions .button{font-size:1rem}
  .type-chips span{padding:6px 10px}
  .home-page .hero{min-height:700px}
  .detail-facts strong{font-size:1.142857rem}
}
/* Almost full-screen hero, with the search panel anchored near its bottom. */
.home-page .hero{height:auto;min-height:max(650px,92svh);display:flex}
.home-page .hero-content{width:100%;max-width:1536px;margin-inline:auto;min-height:inherit;display:flex;flex-direction:column;justify-content:flex-end;padding:140px 48px 64px}
.home-page .hero-types{flex-shrink:0}
.home-page .hero h1{flex-shrink:0;margin:20px 0 28px}
.home-page .home-search{width:100%;flex-shrink:0}
@media(max-width:800px){.home-page .hero{min-height:max(700px,94svh)}.home-page .hero-content{padding:120px 25px 55px}}
@media(max-width:540px){.home-page .hero{min-height:max(760px,94svh)}.home-page .hero-content{padding:115px 22px 52px}.home-page .hero h1{margin:18px 0 24px}}
/* Slightly larger header logo, with compact-screen sizing. */
.site-header .brand{width:260px}
.site-header .brand img,.home-page .site-header .brand img{width:255px;max-height:none;height:auto}
@media(max-width:1100px){.site-header .brand{width:220px}.site-header .brand img,.home-page .site-header .brand img{width:215px}}
@media(max-width:540px){.site-header .brand{width:175px}.site-header .brand img,.home-page .site-header .brand img{width:175px}}
@media(min-width:801px) and (max-width:1000px){.site-header .sell-link{display:none}.site-header,.home-page .site-header{gap:12px}.site-header nav>a,.home-page .site-header nav>a{padding:11px 12px;font-size:14px}.site-header .brand{width:210px}.site-header .brand img,.home-page .site-header .brand img{width:205px}}

.property-detail .property-description{font-size:18px;line-height:1.75}.property-detail .property-description p,.property-detail .property-description li{font-size:inherit;line-height:inherit}@media(max-width:540px){.property-detail .property-description{font-size:17px;line-height:1.75}}
