.home-v3 main { overflow: hidden; }
.home-section { padding: clamp(82px, 8vw, 132px) 0; }
.home-section-head { margin: 0 auto 52px; max-width: 820px; text-align: center; }
.home-section-head p { color: var(--ser-muted); font-size: 1.16rem; margin: 0 auto; max-width: 720px; }
.home-section-head.left { margin-inline: 0; text-align: left; }
.home-section-head.left p { margin-inline: 0; }

.home-hero {
  background: var(--ser-charcoal);
  min-height: 620px;
  position: relative;
}
.home-hero-grid { display: grid; grid-template-columns: 47% 53%; min-height: 620px; }
.home-hero-copy {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 72px clamp(40px, 6vw, 105px) 88px max(24px, calc((100vw - var(--ser-max))/2));
}
.home-hero-copy .eyebrow { color: #ff9da1; }
.home-hero-copy h1 { color: #fff; font-size: clamp(3.2rem, 5.2vw, 5.9rem); margin-bottom: 27px; max-width: 720px; }
.home-hero-copy p { color: #e1e1e1; font-size: clamp(1.15rem, 1.55vw, 1.42rem); line-height: 1.55; margin-bottom: 38px; max-width: 650px; }
.home-hero-actions { display: flex; flex-wrap: wrap; gap: 14px; }
.home-hero-actions .btn.alt { border-color: #fff; color: #fff; }
.home-hero-actions .btn.alt:hover { background: #fff; color: var(--ser-charcoal); }
.home-hero-image { background: url('../images/hero-home-vibrant.png') center / cover no-repeat; min-height: 620px; position: relative; }
.home-hero-image::after { background: linear-gradient(90deg, rgba(35,35,35,.18), transparent 30%); content: ""; inset: 0; position: absolute; }

.home-search-shell { margin-top: -58px; position: relative; z-index: 10; }
.home-search-card { background: #fff; box-shadow: 0 18px 55px rgba(20,20,20,.16); padding: 33px 38px 29px; }
.home-search-top { align-items: end; display: flex; gap: 30px; justify-content: space-between; margin-bottom: 22px; }
.home-search-title h2 { font-size: 1.8rem; margin: 0 0 3px; }
.home-search-title p { color: var(--ser-muted); margin: 0; }
.home-search-links { align-items: center; display: flex; gap: 22px; }
.home-search-links a { color: var(--ser-charcoal); font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: .76rem; font-weight: 700; text-decoration: none; text-transform: uppercase; }
.home-search-links a:first-child { color: var(--ser-red); }
.home-search-grid { align-items: end; display: grid; gap: 13px; grid-template-columns: 1.55fr 1.15fr .9fr .9fr .72fr .72fr auto; }
.home-search-grid label { color: #505257; display: grid; font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: .7rem; font-weight: 600; gap: 7px; letter-spacing: .035em; text-transform: uppercase; }
.home-search-grid input, .home-search-grid select { font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: 1rem; min-height: 53px; text-transform: none; }
.home-search-grid button { min-height: 53px; white-space: nowrap; }
.home-search-foot { align-items: center; color: var(--ser-muted); display: flex; font-size: .84rem; justify-content: space-between; margin-top: 17px; }

.home-communities { background: #fff; }
.community-grid { display: grid; gap: 20px; grid-template-columns: repeat(3, 1fr); }
.community-card { min-height: 310px; overflow: hidden; position: relative; text-decoration: none; }
.community-card img { height: 100%; inset: 0; object-fit: cover; position: absolute; transition: transform .45s ease; width: 100%; }
.community-card::after { background: linear-gradient(0deg, rgba(13,13,13,.78), rgba(13,13,13,0) 60%); content: ""; inset: 0; position: absolute; }
.community-card:hover img { transform: scale(1.035); }
.community-copy { bottom: 0; color: #fff; left: 0; padding: 28px; position: absolute; right: 0; z-index: 2; }
.community-copy span { color: #efefef; font-size: .88rem; }
.community-copy h3 { color: #fff; font-size: 1.55rem; margin: 3px 0 0; }

.home-services { background: var(--ser-soft); }
.service-editorial-grid { display: grid; gap: 1px; grid-template-columns: repeat(2, 1fr); background: #d6d6d4; border: 1px solid #d6d6d4; }
.service-editorial-card { background: #fff; min-height: 315px; padding: clamp(35px, 4.2vw, 62px); position: relative; }
.service-number { color: var(--ser-red); font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: .78rem; font-weight: 700; letter-spacing: .13em; margin-bottom: 50px; }
.service-editorial-card h3 { font-size: clamp(1.65rem, 2.3vw, 2.35rem); margin-bottom: 16px; }
.service-editorial-card p { color: var(--ser-muted); max-width: 560px; }
.service-editorial-card a { bottom: 44px; color: var(--ser-charcoal); font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: .78rem; font-weight: 700; letter-spacing: .04em; position: absolute; text-decoration: none; text-transform: uppercase; }
.service-editorial-card a::after { color: var(--ser-red); content: "  →"; }
.service-editorial-card:hover { background: var(--ser-charcoal); }
.service-editorial-card:hover h3, .service-editorial-card:hover a { color: #fff; }
.service-editorial-card:hover p { color: #d6d6d6; }

.home-market { background: #fff; }
.market-shell { display: grid; gap: 30px; grid-template-columns: minmax(0, 1.55fr) minmax(320px, .75fr); }
.market-chart-card, .market-stat-card { border: 1px solid var(--ser-line); box-shadow: 0 8px 24px rgba(20,20,20,.06); }
.market-chart-head { align-items: center; border-bottom: 1px solid var(--ser-line); display: flex; gap: 25px; justify-content: space-between; padding: 22px 25px; }
.market-chart-head strong { font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: .92rem; }
.market-median { color: var(--ser-red); font-size: 1.15rem; margin-left: 10px; }
.market-chart { min-height: 260px; padding: 37px 31px 27px; }
.market-bars { align-items: end; display: grid; gap: 18px; grid-template-columns: repeat(5, 1fr); height: 185px; }
.market-bar-wrap { align-items: center; display: flex; flex-direction: column; height: 100%; justify-content: flex-end; }
.market-bar { background: #b9c8cc; border-top: 4px solid #698a92; min-height: 6px; position: relative; transition: height .6s ease; width: min(72%, 74px); }
.market-bar-value { color: var(--ser-charcoal); font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: .76rem; font-weight: 600; margin-bottom: 7px; }
.market-bar-label { color: var(--ser-muted); font-size: .82rem; margin-top: 11px; text-align: center; }
.market-note { color: var(--ser-muted); font-size: .82rem; margin-top: 18px; }
.market-stat-card { padding: 24px 28px 12px; }
.market-stat-card h3 { border-bottom: 1px solid var(--ser-line); font-size: 1.02rem; margin: 0 0 5px; padding-bottom: 18px; }
.market-stat { align-items: center; border-bottom: 1px solid var(--ser-line); display: flex; justify-content: space-between; padding: 17px 0; }
.market-stat:last-child { border-bottom: 0; }
.market-stat span { color: #505359; }
.market-stat strong { background: var(--ser-red); border-radius: 99px; color: #fff; font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: .8rem; min-width: 50px; padding: 4px 11px; text-align: center; }

.home-listings { background: var(--ser-soft); }
.home-listing-grid { display: grid; gap: 24px; grid-template-columns: repeat(4, 1fr); }
.home-listing-card { background: #fff; border: 1px solid #dfdfdf; overflow: hidden; transition: box-shadow .2s ease, transform .2s ease; }
.home-listing-card:hover { box-shadow: var(--ser-shadow); transform: translateY(-3px); }
.home-listing-card a { text-decoration: none; }
.home-listing-image { background: #ddd center / cover no-repeat; min-height: 235px; position: relative; }
.home-listing-badge { background: var(--ser-charcoal); color: #fff; font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: .67rem; font-weight: 700; left: 14px; letter-spacing: .04em; padding: 7px 10px; position: absolute; text-transform: uppercase; top: 14px; }
.home-listing-heart { align-items: center; background: #fff; border-radius: 50%; display: flex; font-size: 1.25rem; height: 38px; justify-content: center; position: absolute; right: 14px; top: 14px; width: 38px; }
.home-listing-copy { padding: 21px 22px 23px; }
.home-listing-mls { color: var(--ser-muted); font-size: .78rem; letter-spacing: .03em; }
.home-listing-price { color: var(--ser-charcoal); font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: 1.48rem; font-weight: 600; margin: 5px 0 7px; }
.home-listing-address { color: #4c4f54; line-height: 1.4; min-height: 52px; }
.home-listing-meta { border-top: 1px solid #e5e5e5; color: var(--ser-muted); display: flex; flex-wrap: wrap; font-size: .86rem; gap: 13px; margin-top: 17px; padding-top: 15px; }
.home-listings-action { margin-top: 40px; text-align: center; }

.home-about { background: #fff; }
.home-about-grid { align-items: center; display: grid; gap: clamp(55px, 8vw, 120px); grid-template-columns: minmax(360px, .82fr) minmax(0, 1.18fr); }
.home-about-photo { position: relative; }
.home-about-photo::before { background: var(--ser-red); content: ""; height: 72%; left: -22px; position: absolute; top: 14%; width: 22px; }
.home-about-photo img { height: 665px; object-fit: cover; object-position: center 32%; width: 100%; }
.home-about-copy h2 { margin-bottom: 27px; max-width: 760px; }
.home-about-copy .lead { color: var(--ser-charcoal); font-size: 1.28rem; font-weight: 600; }
.home-about-copy p { color: var(--ser-muted); max-width: 760px; }
.home-about-points { display: grid; gap: 0; grid-template-columns: repeat(3, 1fr); margin: 38px 0; }
.home-about-point { border-left: 1px solid var(--ser-line); padding: 0 20px; }
.home-about-point:first-child { border-left: 0; padding-left: 0; }
.home-about-point strong { display: block; font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: 1.05rem; margin-bottom: 4px; }
.home-about-point span { color: var(--ser-muted); font-size: .88rem; line-height: 1.4; }

.signature-fit-band { background: var(--ser-charcoal); color: #fff; padding: 82px 0; }
.signature-fit-grid { align-items: center; display: grid; gap: 75px; grid-template-columns: 1.25fr .75fr; }
.signature-fit-band .eyebrow { color: #ff9da1; }
.signature-fit-band h2 { color: #fff; margin-bottom: 17px; }
.signature-fit-band p { color: #d7d7d7; font-size: 1.14rem; max-width: 780px; }
.signature-fit-actions { display: grid; gap: 13px; }
.signature-fit-actions .btn { min-height: 56px; }
.signature-fit-actions .btn.alt { border-color: #fff; color: #fff; }

.home-paths { background: #fff; }
.path-grid { display: grid; gap: 28px; grid-template-columns: repeat(2, 1fr); }
.path-card { background: var(--ser-soft); display: grid; grid-template-columns: .95fr 1.05fr; min-height: 410px; }
.path-card img { height: 100%; object-fit: cover; width: 100%; }
.path-copy { align-items: flex-start; display: flex; flex-direction: column; justify-content: center; padding: clamp(32px, 4vw, 57px); }
.path-copy h3 { font-size: clamp(1.8rem, 2.8vw, 2.65rem); margin-bottom: 15px; }
.path-copy p { color: var(--ser-muted); }

.home-insights { background: var(--ser-soft); }
.insights-grid { display: grid; gap: 28px; grid-template-columns: 1.35fr .65fr; }
.featured-insight { background: #fff; display: grid; grid-template-columns: 1.05fr .95fr; }
.featured-insight img { height: 100%; object-fit: cover; }
.featured-insight-copy { padding: clamp(34px, 4.5vw, 62px); }
.featured-insight-copy h3 { font-size: clamp(1.7rem, 2.5vw, 2.4rem); }
.featured-insight-copy p { color: var(--ser-muted); }
.insight-list { background: #fff; padding: 10px 30px; }
.insight-item { border-bottom: 1px solid var(--ser-line); padding: 28px 0; }
.insight-item:last-child { border-bottom: 0; }
.insight-item span { color: var(--ser-red); font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: .72rem; font-weight: 700; text-transform: uppercase; }
.insight-item h3 { font-size: 1.15rem; margin: 7px 0; }
.insight-item a, .featured-insight a { color: var(--ser-charcoal); font-family: Inter, "Segoe UI", Arial, sans-serif; font-size: .75rem; font-weight: 700; text-decoration: none; text-transform: uppercase; }

@media (max-width: 1160px) {
  .home-search-grid { grid-template-columns: repeat(4, 1fr); }
  .home-search-grid label:first-child { grid-column: span 2; }
  .home-search-grid button { grid-column: span 2; }
  .home-listing-grid { grid-template-columns: repeat(2, 1fr); }
  .path-card { grid-template-columns: 1fr; }
  .path-card img { height: 310px; }
}

@media (max-width: 920px) {
  .home-hero-grid { grid-template-columns: 1fr; }
  .home-hero-copy { min-height: 535px; padding: 75px 32px 95px; }
  .home-hero-image { min-height: 450px; }
  .home-search-shell { margin-top: -38px; }
  .home-search-top { align-items: flex-start; flex-direction: column; }
  .community-grid { grid-template-columns: repeat(2, 1fr); }
  .market-shell, .home-about-grid, .signature-fit-grid, .insights-grid { grid-template-columns: 1fr; }
  .home-about-photo { max-width: 610px; }
  .home-about-photo img { height: 650px; }
  .signature-fit-actions { max-width: 420px; }
}

@media (max-width: 700px) {
  .home-section { padding: 74px 0; }
  .home-search-card { padding: 27px 22px; }
  .home-search-grid { grid-template-columns: 1fr 1fr; }
  .home-search-grid label:first-child, .home-search-grid button { grid-column: span 2; }
  .home-search-links { align-items: flex-start; flex-direction: column; gap: 7px; }
  .home-search-foot { align-items: flex-start; flex-direction: column; gap: 5px; }
  .community-grid, .service-editorial-grid, .home-listing-grid, .path-grid { grid-template-columns: 1fr; }
  .community-card { min-height: 285px; }
  .service-editorial-card { min-height: 340px; }
  .market-bars { gap: 8px; }
  .market-bar-label { font-size: .7rem; }
  .home-about-grid { gap: 55px; grid-template-columns: 1fr; }
  .home-about-photo img { height: 560px; }
  .home-about-points { grid-template-columns: 1fr; }
  .home-about-point { border-left: 0; border-top: 1px solid var(--ser-line); padding: 15px 0; }
  .home-about-point:first-child { border-top: 0; }
  .featured-insight { grid-template-columns: 1fr; }
  .featured-insight img { height: 300px; }
}

@media (max-width: 460px) {
  .home-hero-copy h1 { font-size: 3rem; }
  .home-search-grid { grid-template-columns: 1fr; }
  .home-search-grid label:first-child, .home-search-grid button { grid-column: auto; }
  .home-search-grid button { width: 100%; }
  .home-listing-grid { grid-template-columns: 1fr; }
  .path-card img { height: 250px; }
}

/* Override legacy colour locks from the preserved functional build. */
.home-v3 .home-hero-copy h1,
.home-v3 .signature-fit-band h2 { color: #fff !important; }
.home-v3 .home-hero-actions .btn.alt,
.home-v3 .signature-fit-actions .btn.alt { color: #fff !important; border-color: #fff !important; background: transparent !important; }
.home-v3 .home-hero-actions .btn.alt:hover,
.home-v3 .signature-fit-actions .btn.alt:hover { color: var(--ser-charcoal) !important; background: #fff !important; }
.home-v3 .btn.red { background: var(--ser-red) !important; border-color: var(--ser-red) !important; }
.home-v3 .btn { border-radius: 0 !important; }
.home-v3 .home-listing-price,
.home-v3 .home-listing-address,
.home-v3 .home-listing-meta { color: inherit !important; }
.home-v3 .community-copy h3,
.home-v3 .service-editorial-card:hover h3 { color: #fff !important; }

/* Homepage revision — August 6, 2026
   Approved direction: mock-up hero, Start Where You Are early, four service squares,
   market intelligence before search, no broker portrait on homepage, charcoal/black type. */
.home-v3 { color: var(--ser-charcoal); }
.home-v3 main { color: var(--ser-charcoal); }
.home-v3 main p { color: #55595e; }

/* Restore the original mock-up style hero: one full-width image with a soft light wash on the left. */
.home-v3 .home-hero {
  background:
    linear-gradient(90deg, rgba(255,255,255,.97) 0%, rgba(255,255,255,.90) 21%, rgba(255,255,255,.58) 39%, rgba(255,255,255,.10) 57%, rgba(255,255,255,0) 70%),
    url('../images/hero-home.png') center 54% / cover no-repeat;
  min-height: 620px;
}
.home-v3 .home-hero-grid {
  display: block;
  margin-inline: auto;
  min-height: 620px;
  width: min(var(--ser-max), calc(100% - 48px));
}
.home-v3 .home-hero-copy {
  justify-content: center;
  min-height: 620px;
  padding: 74px 0 94px;
  width: min(52%, 690px);
}
.home-v3 .home-hero-copy .eyebrow { color: var(--ser-red); }
.home-v3 .home-hero-copy h1 {
  color: var(--ser-charcoal) !important;
  font-size: clamp(3.15rem, 5.05vw, 5.55rem);
  max-width: 700px;
}
.home-v3 .home-hero-copy p {
  color: #3f4246;
  font-size: clamp(1.12rem, 1.45vw, 1.35rem);
  max-width: 610px;
}
.home-v3 .home-hero-image { display: none; }
.home-v3 .home-hero-actions .btn.alt {
  background: rgba(255,255,255,.68) !important;
  border-color: var(--ser-charcoal) !important;
  color: var(--ser-charcoal) !important;
}
.home-v3 .home-hero-actions .btn.alt:hover {
  background: var(--ser-charcoal) !important;
  color: #fff !important;
}

/* Start Where You Are now acts as the first substantial section after the hero. */
.home-v3 .home-paths { background: #fff; padding-top: 88px; }
.home-v3 .home-paths .home-section-head { margin-bottom: 42px; }
.home-v3 .path-card { border: 1px solid var(--ser-line); }

/* Return service presentation to four equal squares across, as in the approved mock-up. */
.home-v3 .home-services { background: var(--ser-soft); }
.home-v3 .service-editorial-grid {
  background: transparent;
  border: 0;
  gap: 18px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.home-v3 .service-editorial-card {
  border: 1px solid #d9d9d7;
  min-height: 355px;
  padding: 34px 30px 38px;
}
.home-v3 .service-number { margin-bottom: 30px; }
.home-v3 .service-editorial-card h3 { font-size: clamp(1.42rem, 1.7vw, 1.82rem); }
.home-v3 .service-editorial-card p { font-size: .98rem; }
.home-v3 .service-editorial-card a { bottom: 31px; }
.home-v3 .service-editorial-card:hover { background: #fff; box-shadow: var(--ser-shadow); }
.home-v3 .service-editorial-card:hover h3,
.home-v3 .service-editorial-card:hover a { color: var(--ser-charcoal) !important; }
.home-v3 .service-editorial-card:hover p { color: var(--ser-muted); }

/* Market intelligence is deliberately high on the page and includes the related insight content. */
.home-v3 .home-market { background: #fff; }
.home-v3 .market-insights-head {
  border-top: 1px solid var(--ser-line);
  margin-top: 66px;
  padding-top: 58px;
}
.home-v3 .market-insights-head h3 {
  font-size: clamp(1.8rem, 2.6vw, 2.65rem);
  margin-bottom: 12px;
}
.home-v3 .market-insights-head p { max-width: 760px; }
.home-v3 .market-insights-grid { margin-top: 30px; }
.home-v3 .market-insights-grid .featured-insight,
.home-v3 .market-insights-grid .insight-list { border: 1px solid var(--ser-line); }

/* Property Search is no longer visually attached to the hero. */
.home-v3 .home-search-shell {
  margin-top: 0;
  padding-bottom: clamp(88px, 8vw, 126px);
  padding-top: clamp(88px, 8vw, 126px);
  position: relative;
  z-index: 1;
}
.home-v3 .home-search-card { border: 1px solid var(--ser-line); box-shadow: 0 12px 38px rgba(20,20,20,.09); }

/* Keep Signature Fit bright and typography charcoal rather than introducing another dark/navy block. */
.home-v3 .signature-fit-band {
  background: #fff;
  border-bottom: 1px solid var(--ser-line);
  border-top: 1px solid var(--ser-line);
  color: var(--ser-charcoal);
}
.home-v3 .signature-fit-band .eyebrow { color: var(--ser-red); }
.home-v3 .signature-fit-band h2 { color: var(--ser-charcoal) !important; }
.home-v3 .signature-fit-band p { color: #55595e; }
.home-v3 .signature-fit-actions .btn.alt {
  background: #fff !important;
  border-color: var(--ser-charcoal) !important;
  color: var(--ser-charcoal) !important;
}
.home-v3 .signature-fit-actions .btn.alt:hover {
  background: var(--ser-charcoal) !important;
  color: #fff !important;
}

@media (max-width: 1160px) {
  .home-v3 .service-editorial-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 920px) {
  .home-v3 .home-hero {
    background:
      linear-gradient(90deg, rgba(255,255,255,.97) 0%, rgba(255,255,255,.87) 48%, rgba(255,255,255,.34) 76%, rgba(255,255,255,.10) 100%),
      url('../images/hero-home.png') 60% center / cover no-repeat;
  }
  .home-v3 .home-hero-grid { width: min(var(--ser-max), calc(100% - 48px)); }
  .home-v3 .home-hero-copy { min-height: 570px; padding: 64px 0 80px; width: 68%; }
}
@media (max-width: 700px) {
  .home-v3 .home-hero {
    background:
      linear-gradient(180deg, rgba(255,255,255,.96) 0%, rgba(255,255,255,.88) 48%, rgba(255,255,255,.20) 100%),
      url('../images/hero-home.png') 64% center / cover no-repeat;
    min-height: 650px;
  }
  .home-v3 .home-hero-grid { min-height: 650px; }
  .home-v3 .home-hero-copy { justify-content: flex-start; min-height: 650px; padding-top: 64px; width: 100%; }
  .home-v3 .home-hero-copy h1 { max-width: 520px; }
  .home-v3 .home-hero-copy p { max-width: 490px; }
  .home-v3 .service-editorial-grid { grid-template-columns: 1fr; }
  .home-v3 .service-editorial-card { min-height: 315px; }
}

/* Homepage refinement — clearer market guidance, communities, and capped new listings. */
.home-v3 .market-resource-grid {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 30px;
}
.home-v3 .market-resource-card {
  border: 1px solid var(--ser-line);
  min-height: 245px;
  padding: 30px 30px 34px;
}
.home-v3 .market-resource-card > span {
  color: var(--ser-red);
  display: block;
  font-family: Inter, "Segoe UI", Arial, sans-serif;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .06em;
  margin-bottom: 14px;
  text-transform: uppercase;
}
.home-v3 .market-resource-card h3 {
  font-size: clamp(1.25rem, 1.55vw, 1.55rem);
  margin-bottom: 12px;
}
.home-v3 .market-resource-card p {
  font-size: .98rem;
  margin-bottom: 24px;
}
.home-v3 .market-resource-card a {
  color: var(--ser-charcoal);
  font-family: Inter, "Segoe UI", Arial, sans-serif;
  font-size: .75rem;
  font-weight: 700;
  text-decoration: none;
  text-transform: uppercase;
}
.home-v3 .home-communities .community-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.home-v3 .home-listings-action button { cursor: pointer; }
.home-v3 .home-listing-card[hidden] { display: none !important; }

@media (max-width: 1160px) {
  .home-v3 .home-communities .community-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 920px) {
  .home-v3 .market-resource-grid { grid-template-columns: 1fr; }
  .home-v3 .market-resource-card { min-height: 0; }
}
@media (max-width: 700px) {
  .home-v3 .home-communities .community-grid { grid-template-columns: 1fr; }
}


/* v17 — homepage search, community directory and listing attribution */
.home-location-control{position:relative}
.home-autocomplete-wrap{position:relative}
.home-autocomplete-menu{background:#fff;border:1px solid #cfcfcd;box-shadow:0 12px 28px rgba(0,0,0,.12);left:0;max-height:320px;overflow:auto;position:absolute;right:0;top:100%;z-index:120}
.home-autocomplete-option{background:#fff;border:0;border-bottom:1px solid #ececea;cursor:pointer;display:block;padding:11px 13px;text-align:left;width:100%}
.home-autocomplete-option:last-child{border-bottom:0}.home-autocomplete-option:hover{background:#f6f6f4}
.home-autocomplete-option span{display:flex;gap:12px;justify-content:space-between;align-items:baseline}.home-autocomplete-option strong{font-size:.95rem;font-weight:400;font-family:inherit;color:#222}.home-autocomplete-option small{color:#777;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em}
.home-community-action{margin-top:34px;text-align:center}
.home-listing-brokerage{border-top:1px solid #ececec;color:#686b6e;font-size:.75rem;line-height:1.35;margin-top:12px;padding-top:11px}
.home-listings-action button:disabled{cursor:wait;opacity:.65}


/* v23 homepage section rhythm: alternate white and light grey. */
.home-v3 .home-paths { background:#fff; }
.home-v3 .home-services { background:var(--ser-soft); }
.home-v3 .home-market { background:#fff; }
.home-v3 .home-search-section { background:var(--ser-soft); }
.home-v3 .home-search-shell { margin-top:0; padding-top:clamp(82px,8vw,126px); padding-bottom:clamp(82px,8vw,126px); }
.home-v3 .signature-fit-band { background:#fff; }
.home-v3 .home-listings { background:var(--ser-soft); }


/* V30.1 homepage market filters */
.market-filter-bar {
  align-items: end;
  display: grid;
  gap: 18px;
  grid-template-columns: minmax(220px, 1fr) minmax(260px, 1fr);
  margin: 0 0 24px;
  max-width: 760px;
}
.market-filter-bar label { display: grid; gap: 7px; }
.market-filter-bar label span {
  color: var(--ser-muted);
  font-family: Inter, "Segoe UI", Arial, sans-serif;
  font-size: .76rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.market-filter-bar select {
  background: #fff;
  border: 1px solid var(--ser-line);
  border-radius: 4px;
  color: var(--ser-charcoal);
  font: inherit;
  min-height: 46px;
  padding: 10px 38px 10px 12px;
  width: 100%;
}
.market-selection {
  color: var(--ser-red);
  display: inline-block;
  font-size: .85rem;
  margin-left: 10px;
}
.market-stat-static { cursor: default; }
.market-stat-static strong { min-width: 82px; }
@media (max-width: 650px) {
  .market-filter-bar { grid-template-columns: 1fr; }
  .market-selection { display: block; margin: 5px 0 0; }
}


/* V31.4 launch polish — clearer section rhythm, tighter spacing and centered insights. */
.home-v3 .home-section { padding: clamp(64px, 6vw, 94px) 0; }
.home-v3 .home-paths { background:#fff; padding-top:68px; }
.home-v3 .home-services { background:#efefed; }
.home-v3 .home-market { background:#fff; }
.home-v3 .home-search-section { background:#efefed; }
.home-v3 .home-search-shell { padding-top:clamp(64px,6vw,94px); padding-bottom:clamp(64px,6vw,94px); }
.home-v3 .signature-fit-band { background:#fff; padding:64px 0; }
.home-v3 .home-listings { background:#efefed; }
.home-v3 .home-section-head { margin-bottom:40px; }
.home-v3 .market-insights-head {
  margin:46px auto 0;
  max-width:850px;
  padding-top:40px;
  text-align:center;
}
.home-v3 .market-insights-head p { margin-left:auto; margin-right:auto; }
.home-v3 .market-resource-grid { margin-top:26px; }

@media (max-width:700px) {
  .home-v3 .home-section { padding:56px 0; }
  .home-v3 .home-paths { padding-top:56px; }
  .home-v3 .home-search-shell { padding-top:56px; padding-bottom:56px; }
  .home-v3 .signature-fit-band { padding:56px 0; }
  .home-v3 .market-insights-head { margin-top:38px; padding-top:34px; }
}

/* V31.12 launch repair/polish */
.home-v3 .home-hero-copy h1{font-size:clamp(2.68rem,4.29vw,4.72rem)}
.home-v3 .home-paths{background:#fff!important}
.home-v3 .home-services{background:#c0c0c0!important}
.home-v3 .home-market{background:#fff!important}
.home-v3 .home-search-section{background:#c0c0c0!important}
.home-v3 .signature-fit-band{background:#fff!important}
.home-v3 .home-listings{background:#c0c0c0!important}
.home-v3 .market-chart{overflow-x:auto}
.home-v3 .market-bars{grid-template-columns:repeat(11,minmax(58px,1fr));min-width:760px;gap:10px}
.home-v3 .home-listing-filter{display:flex;align-items:center;justify-content:center;gap:10px;margin:20px auto 0;max-width:430px}
.home-v3 .home-listing-filter label{font:800 .72rem/1 Inter,"Segoe UI",Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#4e5358}
.home-v3 .home-listing-filter select{min-height:44px;min-width:230px;border:1px solid #c8ccd0;background:#fff;padding:0 38px 0 12px;font:600 .92rem Inter,"Segoe UI",Arial,sans-serif;color:#171717}
@media(max-width:700px){
  .home-v3 .home-hero-copy h1{font-size:2.55rem}
  .home-v3 .home-listing-filter{align-items:stretch;flex-direction:column;text-align:left}
  .home-v3 .home-listing-filter select{width:100%;min-width:0}
}

/* V33 — mobile market dashboard + listing attribution */
.home-listing-brokerage{
  display:flex;
  flex-direction:column;
  gap:2px;
  border-top:1px solid #ececec;
  color:#5f6368;
  font-size:.82rem;
  line-height:1.4;
  margin-top:12px;
  padding-top:11px;
}
.home-listing-brokerage span{font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:#7a7d81}
.home-listing-brokerage strong{font-weight:650;color:#3e4145}
.home-listing-brokerage em{font-style:normal;color:#6b6e72}

@media(max-width:700px){
  .home-v3 .market-shell{grid-template-columns:1fr;gap:18px}
  .home-v3 .market-chart-card,.home-v3 .market-stat-card{box-shadow:none}
  .home-v3 .market-chart-head{align-items:flex-start;flex-direction:column;gap:8px;padding:18px 18px 15px}
  .home-v3 .market-chart-head>div{display:flex;flex-direction:column;gap:5px}
  .home-v3 .market-chart-head [data-market-date]{font-size:.78rem;color:#686c70}
  .home-v3 .market-chart{min-height:0;padding:22px 18px 20px;overflow:visible}
  .home-v3 .market-bars{
    display:flex;
    flex-direction:column;
    gap:12px;
    height:auto;
    min-width:0;
  }
  .home-v3 .market-bar-wrap{
    display:grid;
    grid-template-columns:92px minmax(0,1fr) 34px;
    gap:10px;
    align-items:center;
    height:auto;
    justify-content:stretch;
  }
  .home-v3 .market-bar-label{
    grid-column:1;
    grid-row:1;
    margin:0;
    text-align:left;
    font-size:.78rem;
    line-height:1.2;
    color:#555b60;
  }
  .home-v3 .market-bar{
    grid-column:2;
    grid-row:1;
    width:var(--market-percent,5%)!important;
    min-width:6px;
    max-width:100%;
    height:10px!important;
    min-height:10px;
    border-top:0;
    border-left:4px solid #698a92;
  }
  .home-v3 .market-bar-value{
    grid-column:3;
    grid-row:1;
    margin:0;
    text-align:right;
    font-size:.78rem;
  }
  .home-v3 .market-note{font-size:.8rem;line-height:1.45;margin-top:18px}
  .home-v3 .market-stat-card{padding:20px 20px 8px}
  .home-v3 .market-stat-card h3{font-size:1rem}
  .home-v3 .market-stat{padding:15px 0}
}

/* V34 — mobile market values + Signature Fit context */
.home-signature-fit-callout{display:none}
@media(max-width:700px){
  .home-v3 .market-stat-card{
    padding:18px 18px 6px!important;
    overflow:visible!important;
  }
  .home-v3 .market-stat-card h3{
    font-size:1.08rem!important;
    line-height:1.35!important;
    margin-bottom:2px!important;
    padding-bottom:16px!important;
  }
  .home-v3 .market-stat{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center!important;
    gap:14px!important;
    width:100%!important;
    box-sizing:border-box!important;
    padding:16px 0!important;
    min-height:58px!important;
  }
  .home-v3 .market-stat span{
    min-width:0!important;
    font-size:1rem!important;
    line-height:1.35!important;
    color:#4f5358!important;
  }
  .home-v3 .market-stat strong{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    position:static!important;
    visibility:visible!important;
    opacity:1!important;
    flex:0 0 auto!important;
    min-width:58px!important;
    max-width:none!important;
    padding:7px 12px!important;
    margin:0!important;
    border-radius:999px!important;
    background:#cf1f2b!important;
    color:#fff!important;
    font-size:.94rem!important;
    line-height:1.1!important;
    white-space:nowrap!important;
  }
  .home-v3 .market-stat-static strong{min-width:92px!important}

  .home-search-top{align-items:stretch!important;flex-direction:column!important;gap:14px!important}
  .home-search-links{display:block!important}
  .home-signature-fit-link{display:none!important}
  .home-search-links a:not(.home-signature-fit-link){display:inline-block!important;font-size:.82rem!important}
  .home-signature-fit-callout{
    display:flex;
    flex-direction:column;
    gap:14px;
    margin:0 0 20px;
    padding:18px;
    border:1px solid #d9d9d9;
    border-left:4px solid var(--ser-red);
    background:#f7f7f7;
  }
  .home-signature-fit-callout strong{
    display:block;
    margin-bottom:6px;
    color:#171717;
    font:700 1rem/1.3 Inter,"Segoe UI",Arial,sans-serif;
  }
  .home-signature-fit-callout p{
    margin:0;
    color:#55595e;
    font-size:.96rem;
    line-height:1.55;
  }
  .home-signature-fit-callout>a{
    align-self:flex-start;
    padding:11px 14px;
    background:var(--ser-red);
    color:#fff;
    font:750 .82rem/1 Inter,"Segoe UI",Arial,sans-serif;
    letter-spacing:.03em;
    text-decoration:none;
    text-transform:uppercase;
  }
}

/* V43 listing-card condo identification */
.home-listing-condo-badge{background:#fff;color:#222;font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:.67rem;font-weight:800;left:14px;letter-spacing:.04em;padding:7px 10px;position:absolute;text-transform:uppercase;top:48px;box-shadow:0 1px 3px rgba(0,0,0,.12)}
