/*
Theme Name: Spencer Mengual Real Estate
Version: 1.1.0
*/

/* Soft blue design layer. Colours are centralized for easy changes. */
:root {
  --ink: #202428;
  --muted: #657684;
  --line: #d6e0e7;
  --soft: #edf4f8;
  --panel: rgba(255, 255, 255, 0.96);
  --white: #ffffff;
  --sand: #e6f0f5;
  --stone: #a9bac6;
  --accent: #B58A45;
  --accent-dark: #8B642D;
  --gold: #B58A45;
  --gold-light: #d9eaf4;
  --evergreen: #B58A45;
  --evergreen-dark: #8B642D;
/* SMRE NAVY + BRONZE RESTORE */
:root{
 --spencer-navy:#202428!important;
 --spencer-navy-deep:#202428!important;
 --spencer-accent:#b8832d!important;
 --spencer-accent-bright:#d59b38!important;
 --spencer-charcoal:#202428!important;
 --spencer-charcoal-deep:#202428!important;
 --spencer-copper:#b8832d!important;
 --spencer-copper-dark:#8f641f!important;
 --spencer-warm-white:#faf9f6!important;
 --spencer-stone:#eef3f7!important;
 --spencer-body:#52677a!important;
}
body{background:#faf9f6!important;color:#52677a!important}
h1,h2,h3,h4,h5,h6{color:#202428!important}
.site-footer,footer{background:#202428!important;color:#fff!important}
.primary-button,.header-cta,.book-consultation,.hero-banner .primary-button,a.primary-button,button.primary-button{background:#b8832d!important;border-color:#b8832d!important;color:#fff!important}
.primary-button:hover,.header-cta:hover,.book-consultation:hover,a.primary-button:hover,button.primary-button:hover{background:#8f641f!important;border-color:#8f641f!important;color:#fff!important}
.secondary-button,a.secondary-button{background:#fff!important;color:#202428!important;border-color:rgba(23,50,77,.24)!important}
.secondary-button:hover,a.secondary-button:hover{background:#fff!important;color:#8f641f!important;border-color:#b8832d!important}
.popular-card,.neighbourhood-card,.service-card,.info-card{background:#fff!important;border-color:rgba(23,50,77,.14)!important;box-shadow:0 8px 22px rgba(23,50,77,.07)!important}
.popular-card:hover,.neighbourhood-card:hover,.service-card:hover,.info-card:hover{background:#fff!important;border-color:#b8832d!important;box-shadow:0 14px 28px rgba(23,50,77,.12)!important}
.popular-card:hover h3,.popular-card:hover p,.neighbourhood-card:hover h3,.neighbourhood-card:hover p,.service-card:hover h3,.service-card:hover p,.info-card:hover h3,.info-card:hover p{color:#202428!important}
.section-heading h2,.mobile-home-intro h2,.home-island-callout h2,.home-connect-heading h2,.parallax-copy h2{background:transparent!important;color:#202428!important;border-left:5px solid #b8832d!important;box-shadow:none!important;padding:.1em 0 .1em .55em!important}

/* SMRE FINAL CHARCOAL + COPPER PALETTE */
:root{
  --spencer-navy:#263238 !important;
  --spencer-navy-deep:#1e272c !important;
  --spencer-accent:#B58A45 !important;
  --spencer-accent-bright:#B58A45 !important;
  --spencer-charcoal:#263238 !important;
  --spencer-charcoal-deep:#1e272c !important;
  --spencer-copper:#B58A45 !important;
  --spencer-copper-dark:#8B642D !important;
  --spencer-warm-white:#faf9f6 !important;
  --spencer-stone:#eef0ef !important;
  --spencer-body:#46525a !important;
}
body{background:#faf9f6!important;color:#46525a!important}
h1,h2,h3,h4,h5,h6{color:#263238!important}
.site-footer,footer{background:#263238!important;color:#fff!important}
.primary-button,.header-cta,.book-consultation,.hero-banner .primary-button,a.primary-button,button.primary-button{
 background:#B58A45!important;border-color:#B58A45!important;color:#fff!important}
.primary-button:hover,.header-cta:hover,.book-consultation:hover,a.primary-button:hover,button.primary-button:hover{
 background:#8B642D!important;border-color:#8B642D!important;color:#fff!important}
.secondary-button,a.secondary-button{background:#fff!important;color:#263238!important;border-color:rgba(38,50,56,.24)!important}
.secondary-button:hover,a.secondary-button:hover{background:#fff!important;color:#8B642D!important;border-color:#B58A45!important}
.popular-card,.neighbourhood-card,.service-card,.info-card{background:#fff!important;border-color:rgba(38,50,56,.14)!important;box-shadow:0 8px 22px rgba(38,50,56,.07)!important}
.popular-card:hover,.neighbourhood-card:hover,.service-card:hover,.info-card:hover{background:#fff!important;border-color:#B58A45!important;box-shadow:0 14px 28px rgba(38,50,56,.12)!important}
.popular-card:hover h3,.popular-card:hover p,.neighbourhood-card:hover h3,.neighbourhood-card:hover p,.service-card:hover h3,.service-card:hover p,.info-card:hover h3,.info-card:hover p{color:#263238!important}
.section-heading h2,.mobile-home-intro h2,.home-island-callout h2,.home-connect-heading h2,.parallax-copy h2{background:transparent!important;color:#263238!important;border-left:5px solid #B58A45!important;box-shadow:none!important;padding:.1em 0 .1em .55em!important}
@media(max-width:700px){
 .hero-search{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;width:calc(100% - 32px)!important;margin:18px auto 0!important;padding:22px!important;background:#fff!important;border:1px solid rgba(38,50,56,.16)!important;border-radius:16px!important;box-shadow:0 14px 30px rgba(38,50,56,.12)!important}
 .hero-search input,.hero-search select{width:100%!important;min-height:52px!important;padding:0 15px!important;background:#faf9f6!important;border:1px solid rgba(38,50,56,.25)!important;border-radius:10px!important;color:#263238!important;font-size:16px!important}
 .hero-search button,.hero-search .primary-button{width:100%!important;min-height:52px!important;margin:0!important;border-radius:10px!important;background:#B58A45!important;border-color:#B58A45!important;color:#fff!important;font-weight:800!important}
 .hero-search .search-filters,.hero-search .filter-row{display:none!important}
}

  --evergreen-soft: #e8f0ea;
  --shadow: 0 14px 38px rgba(42, 75, 96, 0.09);
  --radius: 12px;
}


/* Property search: keep desktop filters readable below the sticky header. */
@media (min-width: 901px) {
  .search-shell {
    grid-template-columns: minmax(330px, 360px) minmax(0, 1fr);
    gap: 24px;
  }

  .filters {
    top: 118px;
  }
}


.filters .check {
  display: flex;
  align-items: center;
  gap: 10px;
  color: var(--ink);
  font-size: 0.98rem;
  line-height: 1.35;
  white-space: normal;
}


.filters .check input[type="checkbox"] {
  width: 20px;
  min-width: 20px;
  max-width: 20px;
  min-height: 20px;
  height: 20px;
  flex: 0 0 20px;
  margin: 0;
  padding: 0;
}


body {
  background: #f7fafc;
  color: var(--ink);
  font-size: 17px;
}


h1, h2, h3 {
  letter-spacing: -0.025em;
}


.site-header,
.site-header[data-elevated="true"] {
  min-height: 92px;
  padding: 0 clamp(20px, 3vw, 44px);
  border-color: rgba(49, 94, 120, 0.1);
  background: rgba(255, 255, 255, 0.95);
  box-shadow: 0 8px 28px rgba(42, 75, 96, 0.06);
  backdrop-filter: blur(18px);
}


.brand-complete {
  width: min(390px, 30vw);
  max-height: 72px;
}


.main-nav {
  gap: clamp(11px, 1.35vw, 21px);
  font-size: 0.93rem;
}


.header-contact,
.primary-button,
.main-nav .mobile-consultation {
  border-color: var(--evergreen-dark);
  background: var(--evergreen-dark);
}


.header-contact {
  min-height: 44px;
  padding: 0 19px;
  box-shadow: none;
}


.header-contact:hover,
.primary-button:hover {
  border-color: var(--evergreen);
  color: #fff;
  background: var(--evergreen);
}


.nav-menu {
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.99);
}


.hero {
  padding-top: 108px;
  padding-bottom: 64px;
  background: linear-gradient(180deg, #f4f9fc 0%, #ffffff 100%);
}


.hero::before { display: none; }


.hero-banner {
  width: min(1320px, calc(100% - 48px));
  border-radius: 22px;
}


.hero-banner::after {
  background: linear-gradient(90deg, rgba(247,250,252,.97), rgba(247,250,252,.68) 35%, rgba(247,250,252,.08) 70%);
}


.hero-banner img {
  height: clamp(390px, 42vw, 590px);
}


.hero-banner-copy {
  bottom: clamp(120px, 12vw, 170px);
  width: min(560px, calc(100% - 56px));
}


.hero-banner-copy h1 {
  font-size: clamp(2.65rem, 4.5vw, 4.8rem);
  line-height: 0.98;
}


.hero-banner-copy span {
  max-width: 500px;
  font-size: clamp(1.05rem, 1.4vw, 1.25rem);
}


.hero-content {
  width: min(1050px, calc(100% - 40px));
  margin-top: -72px;
}


.hero-search {
  border: 1px solid rgba(38, 51, 47, 0.1);
  border-radius: 16px;
  padding: 16px;
  box-shadow: 0 20px 50px rgba(38, 51, 47, 0.13);
}


.hero-search input,
.hero-search select {
  background: #f5f3ee;
}


section:not(.hero) {
  padding-top: clamp(44px, 5vw, 68px);
  padding-bottom: clamp(44px, 5vw, 68px);
}


section.home-links,
section.home-neighbourhoods,
section.home-island-search,
section.home-connect-section {
  padding-top: clamp(38px, 4.5vw, 60px);
  padding-bottom: clamp(38px, 4.5vw, 60px);
}


.section-heading {
  margin-bottom: 30px;
}


.section-heading h2,
.home-island-callout h2 {
  max-width: 850px;
  font-size: clamp(2.1rem, 4vw, 4rem);
  line-height: 1.04;
}


.popular-section,
.neighbourhood-section,
.guide-band,
.form-section {
  background: var(--soft);
}


.popular-card,
.home-neighbourhood-grid .compact-neighbourhood-card,
.home-island-callout,
.home-lead-form,
.home-contact-feature {
  border-color: rgba(49, 94, 120, 0.13);
  border-radius: var(--radius);
  background: var(--white);
  box-shadow: 0 10px 26px rgba(42, 75, 96, 0.06);
}


.popular-grid,
.guide-grid,
.testimonial-grid {
  gap: 10px;
}


.popular-card {
  display: flex;
  min-height: 215px;
  flex-direction: column;
  padding: 24px;
  text-align: left;
}


.popular-card button { margin-top: auto; }


.home-neighbourhood-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 9px;
}


.home-neighbourhood-grid .compact-neighbourhood-card {
  min-height: 68px;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}


.home-neighbourhood-grid .compact-neighbourhood-card:hover {
  border-color: var(--evergreen);
  box-shadow: 0 14px 30px rgba(38, 51, 47, 0.1);
}


.home-island-callout {
  padding: clamp(34px, 5vw, 64px);
  background: linear-gradient(135deg, #ffffff, #e7f1f6);
}


.interior-parallax {
  min-height: 560px;
  background-attachment: fixed;
}


.parallax-copy h2 {
  font-size: clamp(2.7rem, 5vw, 5rem);
}


section.home-connect-section {
  background: #f7fafc;
}


.home-connect-heading h2 {
  font-size: clamp(2.7rem, 5vw, 5.4rem);
}


.home-lead-form {
  padding: clamp(24px, 4vw, 42px);
}


.home-contact-feature {
  overflow: hidden;
}


.site-footer {
  width: 100%;
  padding: 30px max(28px, calc((100% - 1180px) / 2));
  background: var(--evergreen-dark);
  color: rgba(255,255,255,.8);
}


.chat-toggle {
  background: var(--accent-dark);
}


@media (max-width: 1180px) {
  .brand-complete { width: min(360px, 55vw); }
  .main-nav { top: 82px; }
}


@media (max-width: 760px) {
  body { font-size: 16px; }

  .site-header,
  .site-header[data-elevated="true"] {
    min-height: 76px;
    padding: 0 16px;
  }

  .brand-complete {
    width: min(235px, 64vw);
    max-height: 56px;
  }

  .hero {
    padding-top: 88px;
    padding-bottom: 42px;
  }

  .hero-banner {
    width: calc(100% - 24px);
    border-radius: 16px;
  }

  .hero-banner img {
    height: 470px;
    object-position: 66% center;
  }

  .hero-banner::after {
    background: linear-gradient(180deg, rgba(255,255,255,.18), rgba(247,250,252,.92) 70%, #ffffff 100%);
  }

  .hero-banner-copy {
    left: 22px;
    bottom: 118px;
    width: calc(100% - 44px);
  }

  .hero-banner-copy h1 {
    max-width: 330px;
    font-size: clamp(2.4rem, 12vw, 3.35rem);
  }

  .hero-content {
    width: calc(100% - 32px);
    margin-top: -92px;
  }

  .hero-search { padding: 14px; }

  section:not(.hero),
  section.home-links,
  section.home-neighbourhoods,
  section.home-island-search,
  section.home-connect-section {
    padding: 40px 18px;
  }

  .popular-grid,
  .home-neighbourhood-grid {
    grid-template-columns: 1fr;
  }

  .popular-card { min-height: 190px; }

  .home-island-callout {
    gap: 26px;
    padding: 28px 22px;
  }

  .home-island-callout .cta-actions {
    min-width: 0;
  }

  .interior-parallax {
    min-height: 480px;
    background-attachment: scroll;
  }

  .home-connect-heading { text-align: left; }
  .home-lead-form { padding: 22px 18px; }

  .home-contact-portrait {
    aspect-ratio: 4 / 5;
  }
}


/* Compact neighbourhood cards for the mobile-first homepage. */
@media (max-width: 760px) {
  .home-neighbourhood-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }

  .home-neighbourhood-grid .compact-neighbourhood-card {
    min-height: 84px;
    aspect-ratio: 16 / 10;
    padding: 0;
    border-radius: 10px;
  }

  .home-neighbourhood-grid .compact-neighbourhood-card span {
    padding: 6px 8px;
    font-size: 0.78rem;
    line-height: 1.12;
  }
}


@media (min-width: 761px) and (max-width: 900px) {
  .home-neighbourhood-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
  }

  .home-neighbourhood-grid .compact-neighbourhood-card {
    min-height: 96px;
    aspect-ratio: 4 / 3;
  }
}


.mobile-search-filters {
  display: none;
}


.mobile-search-label {
  display: none;
}


/* Make the mobile property search unmistakably the primary starting action. */
@media (max-width: 760px) {
  .hero-search {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 9px;
    padding: 14px;
    border-radius: 16px;
  }

  .mobile-search-kicker {
    margin: 0 2px 2px;
    font-size: 1.12rem;
    font-weight: 850;
  }

  .hero-search .hero-location input {
    min-height: 56px;
    padding: 0 15px;
    border-width: 2px;
    border-color: rgba(41, 67, 84, 0.24);
    font-size: 16px;
  }

  .hero-search button[type="submit"] {
    width: 100%;
    min-height: 54px;
    font-size: 1rem;
  }

  .hero-search .desktop-search-label {
    display: none;
  }

  .hero-search .mobile-search-label {
    display: inline;
  }

  .mobile-search-filters {
    display: flex;
    min-height: 38px;
    align-items: center;
    justify-content: center;
    color: var(--evergreen-dark);
    font-size: 0.88rem;
    font-weight: 750;
    text-align: center;
    text-decoration: underline;
    text-underline-offset: 3px;
  }
}



/* Market report action buttons: strongly visible on the dark green panel. */
.market-report-page .market-report-actions .primary-button {
  background: #e7c66d !important;
  color: #202428 !important;
  border: 2px solid #e7c66d !important;
  box-shadow: 0 10px 24px rgba(17, 42, 32, 0.24);
}

.market-report-page .market-report-actions .primary-button:hover,
.market-report-page .market-report-actions .primary-button:focus-visible {
  background: #f3d989 !important;
  color: #202428 !important;
  border-color: #f3d989 !important;
  transform: translateY(-1px);
}

.market-report-page .market-report-actions .secondary-button {
  background: #ffffff !important;
  color: #202428 !important;
  border: 2px solid #ffffff !important;
  box-shadow: 0 8px 20px rgba(17, 42, 32, 0.18);
}

.market-report-page .market-report-actions .secondary-button:hover,
.market-report-page .market-report-actions .secondary-button:focus-visible {
  background: #f4f8fa !important;

x7d
/* SMRE AIRY SIGNATURE PALETTE + MOBILE SEARCH REFINEMENT — 2026-09-15 */
:root{--spencer-navy:#202428!important;--spencer-navy-deep:#202428!important;--spencer-charcoal:#202428!important;--spencer-charcoal-deep:#202428!important;--spencer-accent:#b58a45!important;--spencer-accent-bright:#b58a45!important;--spencer-copper:#b58a45!important;--spencer-copper-dark:#8b642d!important;--spencer-warm-white:#fcfbf8!important;--spencer-stone:#f1eee8!important;--spencer-body:#5d6268!important}
body{background:#fcfbf8!important;color:#5d6268!important}.site-header,.site-header-inner,.site-nav,.header-shell{background:#fcfbf8!important}h1,h2,h3,h4,h5,h6,.section-heading h2{color:#202428!important}a{color:#202428}a:hover{color:#8b642d}.hero,.hero-banner,.hero-banner-copy,.page-hero,.content-hero{background:#fcfbf8!important;color:#202428!important}.section,.section-alt,.light-section,.market-section,.stats-section{background:#fcfbf8!important}.section:nth-of-type(even),.soft-background,.stone-section{background:#f1eee8!important}
.primary-button,.header-cta,.book-consultation,.hero-banner .primary-button,a.primary-button,button.primary-button,.button-primary,.button--primary{background:#b58a45!important;border-color:#b58a45!important;color:#fff!important;box-shadow:none!important}.primary-button:hover,.header-cta:hover,.book-consultation:hover,.hero-banner .primary-button:hover,a.primary-button:hover,button.primary-button:hover,.button-primary:hover,.button--primary:hover{background:#8b642d!important;border-color:#8b642d!important;color:#fff!important;transform:translateY(-1px)}
.secondary-button,a.secondary-button,.button-secondary,.button--secondary{background:#fff!important;color:#202428!important;border-color:rgba(32,36,40,.20)!important}.secondary-button:hover,a.secondary-button:hover,.button-secondary:hover,.button--secondary:hover{background:#fff!important;color:#8b642d!important;border-color:#b58a45!important}
.popular-card,.neighbourhood-card,.service-card,.info-card,.listing-card,.card,.feature-card{background:#fff!important;border:1px solid rgba(32,36,40,.13)!important;box-shadow:0 6px 18px rgba(32,36,40,.05)!important}.popular-card:hover,.neighbourhood-card:hover,.service-card:hover,.info-card:hover,.listing-card:hover,.card:hover,.feature-card:hover{background:#fff!important;border-color:#b58a45!important;box-shadow:0 12px 25px rgba(32,36,40,.09)!important}.popular-card:hover h3,.popular-card:hover p,.neighbourhood-card:hover h3,.neighbourhood-card:hover p,.service-card:hover h3,.service-card:hover p,.info-card:hover h3,.info-card:hover p{color:#202428!important}
.section-heading h2,.mobile-home-intro h2,.home-island-callout h2,.home-connect-heading h2,.parallax-copy h2{background:transparent!important;color:#202428!important;border-left:3px solid #b58a45!important;box-shadow:none!important;padding:.1em 0 .1em .55em!important}.site-footer,footer{background:#202428!important;color:#fcfbf8!important}.site-footer a,footer a{color:#fcfbf8!important}.site-footer a:hover,footer a:hover{color:#d2ad70!important}.site-footer::before,footer::before{background:#b58a45!important}.market-report,.market-report-card,.market-hero,.market-data-card{background:#f1eee8!important}.market-report .primary-button,.market-hero .primary-button{background:#b58a45!important}
@media (max-width:767px){body{background:#fcfbf8!important}.hero-search{display:grid!important;grid-template-columns:1fr 1fr!important;gap:10px!important;padding:18px!important;background:#f1eee8!important;border:1px solid rgba(32,36,40,.12)!important;border-radius:16px!important;box-shadow:0 10px 26px rgba(32,36,40,.08)!important}.hero-search .mobile-search-kicker{grid-column:1/-1!important;display:block!important;margin:0 0 2px!important;color:#202428!important;font-size:12px!important;font-weight:700!important;letter-spacing:.11em!important;text-transform:uppercase!important}.hero-search .hero-location{grid-column:1/-1!important}.hero-search label{display:grid!important;gap:6px!important;margin:0!important;color:#202428!important;font-size:12px!important;font-weight:700!important}.hero-search input,.hero-search select{width:100%!important;min-height:48px!important;padding:0 12px!important;background:#fff!important;color:#202428!important;border:1px solid rgba(32,36,40,.18)!important;border-radius:9px!important;font-size:14px!important}.hero-search input::placeholder{color:#777c81!important;opacity:1!important}.hero-search .primary-button{grid-column:1/-1!important;min-height:52px!important;width:100%!important;margin-top:4px!important;border-radius:9px!important;font-size:16px!important}.hero-search .mobile-search-filters{grid-column:1/-1!important;display:block!important;text-align:center!important;margin:2px 0 0!important;color:#5d6268!important;font-size:13px!important;text-decoration:underline!important;text-underline-offset:3px!important}.hero-search .mobile-search-filters:hover{color:#8b642d!important}.hero-search .desktop-search-label{display:none!important}.hero-search .mobile-search-label{display:inline!important}.hero-content{padding-bottom:26px!important}.mobile-home-intro,.mobile-service-section,.mobile-testimonial-section{background:#fcfbf8!important}}@media (min-width:768px){.hero-search .mobile-search-kicker,.hero-search .mobile-search-filters,.hero-search .mobile-search-label{display:none!important}}

  color: #202428 !important;
  border-color: #e7c66d !important;
  transform: translateY(-1px);
}

html body:has(.smre-blog-page-airy) .site-header .brand { transform: none !important; }

html body:has(.smre-blog-page-airy) .site-header .brand img { max-width: 300px !important; }

html body:has(.smre-blog-page-airy) .site-header .main-nav a,
html body:has(.smre-blog-page-airy) .site-header .main-nav button { color: #202428 !important; text-shadow: none !important; }

html body:has(.smre-blog-page-airy) .site-header .header-contact { background: #a97832 !important; border-color: #a97832 !important; color: #fff !important; }

html body .smre-blog-page-airy { padding-top: 118px !important; }

html body .smre-blog-cover { max-width: 1240px !important; padding: 28px 24px 30px !important; grid-template-columns: minmax(0, .82fr) minmax(420px, 1fr) !important; gap: 36px !important; align-items: center !important; }

html body .smre-blog-cover-copy { min-height: 0 !important; padding: 24px 0 24px !important; border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; }

html body .smre-blog-cover-copy h1 { max-width: 640px !important; font-size: clamp(3.1rem, 6.4vw, 6.15rem) !important; line-height: .9 !important; }

html body .smre-blog-cover-copy p:not(.eyebrow) { max-width: 580px !important; font-size: 1.12rem !important; }

html body .smre-blog-cover-photo { min-height: 430px !important; border-radius: 8px !important; box-shadow: 0 18px 42px rgba(32, 36, 40, .10) !important; }

html body .smre-blog-topics { max-width: 1240px !important; margin-bottom: 18px !important; }

html body .smre-blog-list { max-width: 1240px !important; gap: 18px !important; }

html body .smre-blog-list-item { grid-template-columns: 310px minmax(0, 1fr) !important; gap: 28px !important; padding: 18px !important; border-radius: 8px !important; box-shadow: 0 8px 22px rgba(32, 36, 40, .045) !important; }

html body .smre-blog-list-copy h2 { max-width: 820px !important; font-size: clamp(1.55rem, 2.25vw, 2.25rem) !important; letter-spacing: -.04em !important; }

@media (max-width: 980px) {
  html body:has(.smre-blog-page-airy) .site-header { min-height: 76px !important; }
  html body:has(.smre-blog-page-airy) .site-header .brand img { max-width: 255px !important; }
  html body .smre-blog-page-airy { padding-top: 94px !important; }
  html body .smre-blog-cover { grid-template-columns: 1fr !important; gap: 18px !important; padding-top: 12px !important; }
  html body .smre-blog-cover-photo { min-height: 0 !important; }
}

@media (max-width: 640px) {
  html body .smre-blog-page-airy { padding-top: 86px !important; }
  html body .smre-blog-cover-copy h1 { font-size: clamp(2.65rem, 14vw, 4.15rem) !important; }
  html body .smre-blog-topics { gap: 7px !important; }
  html body .smre-blog-topics span { min-height: 32px !important; padding: 6px 10px !important; font-size: .84rem !important; }
}


@media (max-width: 640px) {
  html body .smre-blog-page-airy {
    padding-top: 86px !important;
  }

  html body .smre-blog-cover-copy h1 {
    font-size: clamp(2.65rem, 14vw, 4.15rem) !important;
  }

  html body .smre-blog-topics {
    gap: 7px !important;
  }

  html body .smre-blog-topics span {
    min-height: 32px !important;
    padding: 6px 10px !important;
    font-size: .84rem !important;
  }

  html body .smre-longform .smre-article-hero {
    padding: 92px 18px 26px !important;
  }

  html body .smre-article-featured img {
    height: 62vw !important;
  }

  html body .smre-longform .smre-article-body {
    font-size: 1rem !important;
    line-height: 1.66 !important;
  }

  html body .smre-toc,
  html body .smre-visual-note,
  html body .smre-article-table,
  html body .smre-article-cta {
    padding: 18px !important;
  }

  html body .smre-article-table th,
  html body .smre-article-table td {
    display: block !important;
    width: 100% !important;
    padding: 10px 0 !important;
  }

  html body .smre-article-table th {
    border-bottom: 0 !important;
  }

  html body .smre-visual-note ul {
    grid-template-columns: 1fr !important;
  }
}


@media (max-width: 640px) {
  html body .smre-blog-page-airy {
    padding-top: 86px !important;
  }

  html body .smre-blog-cover-copy h1 {
    font-size: clamp(2.65rem, 14vw, 4.15rem) !important;
  }

  html body .smre-blog-topics {
    gap: 7px !important;
  }

  html body .smre-blog-topics span {
    min-height: 32px !important;
    padding: 6px 10px !important;
    font-size: .84rem !important;
  }

  html body .smre-longform .smre-article-hero {
    padding: 92px 18px 26px !important;
  }

  html body .smre-article-featured img {
    height: 62vw !important;
  }

  html body .smre-longform .smre-article-body {
    font-size: 1rem !important;
    line-height: 1.66 !important;
  }

  html body .smre-toc,
  html body .smre-visual-note,
  html body .smre-article-table,
  html body .smre-article-cta {
    padding: 18px !important;
  }

  html body .smre-article-table th,
  html body .smre-article-table td {
    display: block !important;
    width: 100% !important;
    padding: 10px 0 !important;
  }

  html body .smre-article-table th {
    border-bottom: 0 !important;
  }

  html body .smre-visual-note ul {
    grid-template-columns: 1fr !important;
  }

  html body .smre-longform .smre-article-body > section {
    margin-bottom: 22px !important;
  }

  html body .smre-longform .smre-article-body > .smre-faq,
  html body .smre-longform .smre-article-body > .smre-article-cta {
    padding: 18px !important;
  }
}

/* END V4.6.4 BLOG BENCHMARK */

/* END SPENCER AIRY DESIGN FIX V4.6.7 */

/* Article 1 scoped public-render corrections */

/* Article 1 scoped public-render corrections */
html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-doc-flow-wide{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;}

html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-doc-flow-wide span,html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-doc-flow-wide strong{display:flex!important;align-items:center!important;justify-content:center!important;padding:14px!important;background:#f3f0ea!important;border:1px solid #e4d2b4!important;border-radius:8px!important;text-align:center!important;min-height:72px!important;box-sizing:border-box!important;}

html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-doc-flow-wide strong{grid-column:1/-1!important;color:#8b642d!important;}

html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) table{min-width:780px!important;}

html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .site-footer>p:nth-child(2){display:none!important;}

@media(max-width:600px){html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-doc-flow-wide{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}


/* V4.6.13: phone-first homepage. Keep the real logo mark, search form, and
   neighbourhood links while giving each one an intentional small-screen fit. */
@media (max-width: 767px) {
  html, html body { max-width: 100%; overflow-x: clip !important; }
  html body header.site-header,
  html body header.site-header.smre-header-compact,
  html body:has(.smre-blog-page-airy) header.site-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 100 !important;
    min-height: 72px !important;
    height: 72px !important;
    background: #1a1a1a !important;
    border-bottom: 1px solid rgba(255,255,255,.12) !important;
    box-shadow: none !important;
  }
  html body header.site-header .brand,
  html body header.site-header.smre-header-compact .brand {
    position: absolute !important;
    top: 7px !important;
    left: 50% !important;
    width: 58px !important;
    max-width: 58px !important;
    height: 58px !important;
    margin: 0 !important;
    overflow: hidden !important;
    transform: translateX(-50%) !important;
    z-index: 2 !important;
  }
  html body header.site-header .brand img,
  html body header.site-header.smre-header-compact .brand img {
    display: block !important;
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    height: 58px !important;
    object-fit: cover !important;
    object-position: left center !important;
    filter: brightness(0) invert(1) !important;
  }
  html body header.site-header .menu-button {
    position: absolute !important;
    right: 18px !important;
    top: 16px !important;
    width: 42px !important;
    height: 40px !important;
    z-index: 3 !important;
  }
  html body header.site-header .menu-button span,
  html body header.site-header.smre-header-compact .menu-button span {
    background: #f8f6f2 !important;
  }
  html body header.site-header .header-contact { display: none !important; }
  html body header.site-header nav.main-nav {
    background: #f8f6f2 !important;
    color: #1a1a1a !important;
  }
  html body header.site-header nav.main-nav a,
  html body header.site-header:not(.smre-header-compact) nav.main-nav > a,
  html body header.site-header nav.main-nav button,
  html body header.site-header:not(.smre-header-compact) nav.main-nav > .nav-dropdown > button {
    color: #1a1a1a !important;
    text-shadow: none !important;
  }
  html body header.site-header nav.main-nav .nav-menu { background: #f1ece4 !important; }

  html body main:has(> .home-neighbourhoods) { display: flex !important; flex-direction: column !important; }
  html body main:has(> .home-neighbourhoods) > .hero { order: 1 !important; }
  html body main:has(> .home-neighbourhoods) > .home-neighbourhoods { order: 2 !important; }
  html body main:has(> .home-neighbourhoods) > .home-links { order: 3 !important; }
  html body main:has(> .home-neighbourhoods) > section:not(.hero):not(.home-neighbourhoods):not(.home-links) { order: 4 !important; }
  html body main > section.hero {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
  }
  html body main > section.hero .hero-banner {
    position: relative !important;
    width: 100% !important;
    height: clamp(385px, 102vw, 500px) !important;
    min-height: 385px !important;
    margin: 0 !important;
    border-radius: 0 !important;
  }
  html body main > section.hero .hero-banner > img {
    object-fit: cover !important;
    object-position: 45% center !important;
  }
  html body main > section.hero .hero-banner::after {
    background: linear-gradient(90deg, rgba(13,13,13,.62), rgba(13,13,13,.23) 75%),
                linear-gradient(0deg, rgba(13,13,13,.35), transparent 45%) !important;
  }
  html body main > section.hero .hero-banner-copy {
    top: 33px !important;
    left: 24px !important;
    right: 20px !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    transform: none !important;
  }
  html body main > section.hero .hero-banner-copy h1 {
    max-width: 510px !important;
    margin: 0 0 12px !important;
    font-size: clamp(2.2rem, 9.15vw, 3.6rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -.045em !important;
  }
  html body main > section.hero .hero-banner-copy span {
    display: block !important;
    max-width: 335px !important;
    font-size: clamp(.91rem, 3.7vw, 1.05rem) !important;
    line-height: 1.43 !important;
  }
  html body main > section.hero .hero-content {
    position: absolute !important;
    z-index: 4 !important;
    left: 17px !important;
    right: 17px !important;
    bottom: 20px !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  html body main > section.hero form.hero-search {
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 5px !important;
    background: #f8f6f2 !important;
    border: 1px solid rgba(255,255,255,.65) !important;
    border-radius: 11px !important;
    box-shadow: 0 12px 25px rgba(0,0,0,.2) !important;
  }
  html body main > section.hero form.hero-search .mobile-search-kicker,
  html body main > section.hero form.hero-search label:not(.hero-location),
  html body main > section.hero form.hero-search .mobile-search-filters { display: none !important; }
  html body main > section.hero form.hero-search label.hero-location {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
    margin: 0 !important;
    font-size: 0 !important;
  }
  html body main > section.hero form.hero-search label.hero-location::before {
    content: '' !important;
    position: absolute !important;
    left: 13px !important;
    top: 15px !important;
    width: 11px !important;
    height: 11px !important;
    border: 2px solid #a97832 !important;
    border-radius: 70% 70% 70% 0 !important;
    transform: rotate(-45deg) !important;
    pointer-events: none !important;
  }
  html body main > section.hero form.hero-search input[name="query"] {
    display: block !important;
    width: 100% !important;
    height: 46px !important;
    min-height: 46px !important;
    padding: 0 7px 0 37px !important;
    border: 0 !important;
    border-radius: 7px !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #292722 !important;
    font-size: 13px !important;
  }
  html body main > section.hero form.hero-search button.primary-button {
    flex: 0 0 46px !important;
    width: 46px !important;
    min-width: 46px !important;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 8px !important;
    font-size: 0 !important;
  }
  html body main > section.home-neighbourhoods {
    width: 100% !important;
    padding: 26px 18px 32px !important;
    background: #f8f6f2 !important;
  }
  html body main > section.home-neighbourhoods .section-heading {
    margin: 0 0 16px !important;
    padding: 0 !important;
  }
  html body main > section.home-neighbourhoods .section-heading .eyebrow { display: none !important; }
  html body main > section.home-neighbourhoods .section-heading h2 {
    margin: 0 0 10px !important;
    font-size: clamp(1.75rem, 7.4vw, 2.45rem) !important;
    line-height: 1.12 !important;
  }
  html body main > section.home-neighbourhoods .section-heading h2::after { margin-top: 10px !important; }
  html body main > section.home-neighbourhoods .section-heading p:not(.eyebrow) {
    margin: 0 !important;
    max-width: 35ch !important;
    font-size: .91rem !important;
    line-height: 1.45 !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 12px !important;
    margin: 0 !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card {
    display: grid !important;
    grid-template-columns: minmax(112px,42%) minmax(0,1fr) !important;
    height: 132px !important;
    min-height: 132px !important;
    padding: 0 !important;
    opacity: 1 !important;
    border-radius: 11px !important;
    background: #fdfbf8 !important;
    overflow: hidden !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card > img {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    object-fit: cover !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card > span:not(.smre-card-code) {
    position: static !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 5px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 10px 13px !important;
    background: transparent !important;
    color: #1a1a1a !important;
    transform: none !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card strong {
    color: #1a1a1a !important;
    font-size: clamp(1.12rem, 4.8vw, 1.45rem) !important;
    line-height: 1.08 !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card small {
    color: #514c46 !important;
    font-size: clamp(.72rem, 2.85vw, .82rem) !important;
    line-height: 1.3 !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card em {
    color: #8b642d !important;
    font-size: clamp(.68rem, 2.7vw, .8rem) !important;
    line-height: 1.25 !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card .smre-card-code {
    top: 8px !important;
    left: auto !important;
    right: 8px !important;
    padding: 4px 7px !important;
    border-radius: 7px !important;
    background: rgba(155,111,49,.9) !important;
    color: #fff !important;
    font-size: .62rem !important;
    letter-spacing: .06em !important;
    text-shadow: none !important;
  }
  html body main > section.home-links { padding-top: 30px !important; }
}

html.smre-intro-pending body header.site-header .brand { opacity: 0 !important; }

.smre-logo-intro {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 99999;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  pointer-events: none;
  background: #f8f6f2;
  opacity: 1;
  transition: opacity .4s ease;
}

html.smre-intro-pending .smre-logo-intro,
html.smre-intro-finished .smre-logo-intro { display: flex; }

html.smre-intro-finished .smre-logo-intro { opacity: 0; }

.smre-logo-intro .smre-intro-fallback {
  display: block;
  width: min(420px,82vw);
  max-width: 82vw;
  height: auto;
  transition: opacity .18s ease;
}

.smre-logo-intro video {
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(960px,100vw);
  height: auto;
  max-width: none;
  transform: translate(-50%,-50%);
  opacity: 0;
  transition: opacity .18s ease;
}

.smre-logo-intro.smre-intro-playing video { opacity: 1; }

.smre-logo-intro.smre-intro-playing .smre-intro-fallback { opacity: 0; }

@media (max-width: 900px) {
  html body header.site-header .brand,
  html body header.site-header.smre-header-compact .brand {
    width: min(230px,calc(100vw - 102px)) !important;
    max-width: min(230px,calc(100vw - 102px)) !important;
  }
}

@media (max-width: 767px) {
  html body header.site-header:not(.smre-header-compact),
  html body header.site-header.smre-header-compact,
  html body:has(.smre-blog-page-airy) header.site-header {
    min-height: 66px !important;
    height: 66px !important;
    background: rgba(248,246,242,.98) !important;
    border-bottom-color: rgba(73,65,53,.1) !important;
    box-shadow: none !important;
  }
  html body header.site-header.smre-header-compact {
    min-height: 61px !important;
    height: 61px !important;
  }
  html body header.site-header .brand,
  html body header.site-header.smre-header-compact .brand {
    top: 9px !important;
    left: 15px !important;
    width: min(218px,calc(100vw - 100px)) !important;
    max-width: min(218px,calc(100vw - 100px)) !important;
    height: 49px !important;
    transform: none !important;
  }
  html body header.site-header.smre-header-compact .brand { top: 7px !important; }
  html body header.site-header .brand img.brand-complete,
  html body header.site-header.smre-header-compact .brand img.brand-complete {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 49px !important;
    object-fit: contain !important;
    filter: none !important;
  }
  html body header.site-header .menu-button,
  html body header.site-header.smre-header-compact .menu-button {
    top: 12px !important;
    right: 14px !important;
    width: 42px !important;
    height: 42px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }
  html body header.site-header .menu-button span,
  html body header.site-header.smre-header-compact .menu-button span {
    background: #252420 !important;
  }
  html body header.site-header nav.main-nav { background: #f8f6f2 !important; }
  html body header.site-header nav.main-nav a,
  html body header.site-header nav.main-nav button { color: #252420 !important; }
  .smre-logo-intro video { width: 190vw; }
  .smre-logo-intro .smre-intro-fallback { width: min(315px,82vw); }
}

@media (prefers-reduced-motion: reduce) {
  .smre-logo-intro { display: none !important; }
  html body header.site-header, html body header.site-header .brand { transition: none !important; }
}


/* V4.6.24: approved mobile copy typography. Logo artwork is untouched. */
@media (max-width:767px) {
 html body main :is(h1,h2,h3,h4,h5,h6,p,a,li,dt,dd,label,input,select,textarea,button,summary,figcaption,th,td,blockquote,span,div),
 html body header.site-header nav.main-nav :is(a,button,span),
 html body header.site-header > a:not(.brand),
 html body footer :is(p,a,span,div),
 html body .chat-widget :is(h2,p,a,button,span),
 html body dialog :is(h2,h3,p,a,label,input,select,textarea,button,span,div) {
  font-family:'Avenir Next',Avenir,'Helvetica Neue',Arial,sans-serif!important;
 }
 html body main :is(h1,h2,h3,h4,h5,h6),
 html body main .hero .hero-banner-copy h1,
 html body .chat-widget h2,
 html body dialog :is(h2,h3) {font-weight:500!important;letter-spacing:-.025em!important;}
 html body main :is(p,li,dt,dd,label,input,select,textarea,figcaption,td),
 html body footer p {font-weight:400!important;}
}


body [style*="#B58A45" i],
body [style*="#B58A45" i] {
  border-color: #b58a45 !important;
}


body [style*="background:#B58A45" i],
body [style*="background: #B58A45" i],
body [style*="background-color:#B58A45" i],
body [style*="background-color: #B58A45" i] {
  background: #b58a45 !important;
  background-color: #b58a45 !important;
}


html body .smre-article-table th {
  width: 28% !important;
  color: #202428 !important;
}


html body .smre-faq summary {
  cursor: pointer !important;
  font-weight: 800 !important;
  color: #202428 !important;
}


html body .smre-article-cta {
  background: #202428 !important;
  color: #fff !important;
}


html body .smre-longform .smre-article-body > .smre-article-cta {
  background: #202428 !important;
}


/* END SPENCER AIRY DESIGN FIX V4.6.25 */

/* SPENCER AIRY DESIGN FIX V4.6.26 */
/* Spencer Mengual approved light-and-airy palette */
:root {
  --spencer-navy: #202428 !important;
  --spencer-navy-deep: #202428 !important;
  --spencer-charcoal: #202428 !important;
  --spencer-charcoal-deep: #202428 !important;
  --spencer-accent: #b58a45 !important;
  --spencer-accent-bright: #b58a45 !important;
  --spencer-copper: #b58a45 !important;
  --spencer-copper-dark: #8b642d !important;
  --spencer-warm-white: #fcfbf8 !important;
  --spencer-stone: #f1eee8 !important;
  --spencer-body: #5d6268 !important;
}


/* Keep one "Continue Your Vancouver Home Search" panel per guide. Some legacy
   templates include this same CTA twice; the second follows the first. */
html body .seo-related-links ~ .seo-related-links {
  display: none !important;
}


/* Vancouver neighbourhood guides use the same warm, light CTA treatment as
   the Island community cards.  The general Vancouver search already includes
   condos, so keep a single search destination alongside the market report. */
html body .guide-cta-section.seo-related-links {
  background: #f3f0ea !important;
  color: #202428 !important;
  border-color: rgba(112, 88, 47, .18) !important;
  box-shadow: 0 12px 28px rgba(47, 39, 28, .09) !important;
}


html body .guide-cta-section.seo-related-links .eyebrow {
  color: #a97832 !important;
}


html body .guide-cta-section.seo-related-links > p:not(.eyebrow) {
  color: #4c4b46 !important;
  opacity: 1 !important;
}


html body .guide-cta-section.seo-related-links .cta-actions a[href*="/vancouver-condos-for-sale/"] {
  display: none !important;
}


html body a[hidden] {
  display: none !important;
}


html body .guide-cta-section.seo-related-links .secondary-button {
  background: #fff !important;
  border-color: rgba(32, 36, 40, .26) !important;
  color: #202428 !important;
}


html body .guide-cta-section.seo-related-links .secondary-button:hover,
html body .guide-cta-section.seo-related-links .secondary-button:focus-visible {
  background: #a97832 !important;
  border-color: #a97832 !important;
  color: #fff !important;
}


/* Let the hero photograph breathe: no solid box behind the main message. */
html body .hero-banner-copy,
html body .hero .hero-banner-copy,
html body .hero-copy,
html body .hero-message {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}


html body .hero-banner-copy h1,
html body .hero-banner-copy span {
  text-shadow:
    0 1px 2px rgba(255, 255, 255, .98),
    0 0 18px rgba(255, 255, 255, .92),
    0 0 34px rgba(255, 255, 255, .76) !important;
}


/* Original mobile accent remnants from the base theme. */
html body .section-heading::before,
html body .section-heading h2::before,
html body .mobile-home-intro::before,
html body .home-connect-heading::before,
html body .eyebrow::before,
html body .accent-line {
  background: #b58a45 !important;
  border-color: #b58a45 !important;
}


html body {
  background: #fcfbf8 !important;
  color: #5d6268 !important;
}


body .site-header,
body .site-header-inner,
body .site-nav,
body .header-shell,
body .hero,
body .hero-banner,
body .hero-banner-copy,
body .page-hero,
body .content-hero,
body .section,
body .section-alt,
body .light-section,
body .market-section,
body .stats-section {
  background-color: #fcfbf8 !important;
}


body h1,
body h2,
body h3,
body h4,
body h5,
body h6 {
  color: #202428 !important;
}


/*
 * Contrast safety for copy placed directly over photographs.
 * Keep the general site typography charcoal, but explicitly return every
 * text element inside an image-overlay section to white.  These selectors
 * cover the custom theme's parallax blocks plus its reusable overlay names.
 */
html body .parallax-copy,
html body .parallax-copy h1,
html body .parallax-copy h2,
html body .parallax-copy h3,
html body .parallax-copy h4,
html body .parallax-copy h5,
html body .parallax-copy h6,
html body .parallax-copy p,
html body .parallax-copy .eyebrow,
html body .photo-overlay,
html body .photo-overlay h1,
html body .photo-overlay h2,
html body .photo-overlay h3,
html body .photo-overlay p,
html body .image-overlay,
html body .image-overlay h1,
html body .image-overlay h2,
html body .image-overlay h3,
html body .image-overlay p,
html body .hero-overlay,
html body .hero-overlay h1,
html body .hero-overlay h2,
html body .hero-overlay h3,
html body .hero-overlay p,
html body .dark-overlay,
html body .dark-overlay h1,
html body .dark-overlay h2,
html body .dark-overlay h3,
html body .dark-overlay p,
html body [class*="parallax"] .section-heading,
html body [class*="parallax"] .section-heading h1,
html body [class*="parallax"] .section-heading h2,
html body [class*="parallax"] .section-heading h3,
html body [class*="parallax"] .section-heading p {
  color: #fff !important;
  text-shadow: 0 2px 12px rgba(0, 0, 0, .65) !important;
}


html body .parallax-copy h1,
html body .parallax-copy h2,
html body .parallax-copy h3,
html body .photo-overlay h1,
html body .photo-overlay h2,
html body .image-overlay h1,
html body .image-overlay h2,
html body .hero-overlay h1,
html body .hero-overlay h2,
html body .dark-overlay h1,
html body .dark-overlay h2,
html body [class*="parallax"] .section-heading h1,
html body [class*="parallax"] .section-heading h2 {
  background: transparent !important;
  border-color: #d2ad70 !important;
}


body a:hover { color: #8b642d; }


html body .primary-button,
html body .header-cta,
html body .book-consultation,
html body a.primary-button,
html body button.primary-button,
html body .button-primary,
html body .button--primary,
html body .hero-search button.primary-button {
  background: #b58a45 !important;
  border-color: #b58a45 !important;
  color: #fff !important;
  box-shadow: none !important;
}


html body .primary-button:hover,
html body .header-cta:hover,
html body .book-consultation:hover,
html body a.primary-button:hover,
html body button.primary-button:hover,
html body .button-primary:hover,
html body .button--primary:hover,
html body .hero-search button.primary-button:hover {
  background: #8b642d !important;
  border-color: #8b642d !important;
  color: #fff !important;
  transform: translateY(-1px);
}


html body .secondary-button,
html body a.secondary-button,
html body .button-secondary,
html body .button--secondary {
  background: #fff !important;
  color: #202428 !important;
  border-color: rgba(32, 36, 40, .20) !important;
}


html body .secondary-button:hover,
html body a.secondary-button:hover,
html body .button-secondary:hover,
html body .button--secondary:hover {
  background: #fff !important;
  color: #8b642d !important;
  border-color: #b58a45 !important;
}


body .popular-card,
body .neighbourhood-card,
body .service-card,
body .info-card,
body .listing-card,
body .card,
body .feature-card {
  background: #fff !important;
  border: 1px solid rgba(32, 36, 40, .13) !important;
  box-shadow: 0 6px 18px rgba(32, 36, 40, .05) !important;
}


body .popular-card:hover,
body .neighbourhood-card:hover,
body .service-card:hover,
body .info-card:hover,
body .listing-card:hover,
body .card:hover,
body .feature-card:hover {
  background: #fff !important;
  border-color: #b58a45 !important;
  box-shadow: 0 12px 25px rgba(32, 36, 40, .09) !important;
}


body .section-heading h2,
body .mobile-home-intro h2,
body .home-island-callout h2,
body .home-connect-heading h2,
body .parallax-copy h2 {
  background: transparent !important;
  color: #202428 !important;
  border-left: 3px solid #b58a45 !important;
  box-shadow: none !important;
  padding: .1em 0 .1em .55em !important;
}


body .site-footer,
body footer {
  background: #202428 !important;
  color: #fcfbf8 !important;
}


body .site-footer a,
body footer a { color: #fcfbf8 !important; }

body .site-footer a:hover,
body footer a:hover { color: #d2ad70 !important; }


body .market-report,
body .market-report-card,
body .market-hero,
body .market-data-card {
  background: #f1eee8 !important;
}


@media (max-width: 767px) {
  html body .hero-search {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 10px !important;
    width: calc(100% - 28px) !important;
    max-width: none !important;
    margin: 0 14px !important;
    padding: 18px !important;
    background: #f1eee8 !important;
    border: 1px solid rgba(32, 36, 40, .12) !important;
    border-radius: 16px !important;
    box-shadow: 0 10px 26px rgba(32, 36, 40, .08) !important;
  }

  html body .hero-search .mobile-search-kicker {
    grid-column: 1 / -1 !important;
    display: block !important;
    margin: 0 0 2px !important;
    color: #202428 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: .11em !important;
    text-transform: uppercase !important;
  }

  html body .hero-search .hero-location { grid-column: 1 / -1 !important; }

  html body .hero-search label {
    display: grid !important;
    min-width: 0 !important;
    gap: 6px !important;
    margin: 0 !important;
    color: #202428 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
  }

  html body .hero-search input,
  html body .hero-search select {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 48px !important;
    padding: 0 12px !important;
    background: #fff !important;
    color: #202428 !important;
    border: 1px solid rgba(32, 36, 40, .18) !important;
    border-radius: 9px !important;
    font-size: 14px !important;
  }

  html body .hero-search input::placeholder {
    color: #777c81 !important;
    opacity: 1 !important;
  }

  html body .hero-search button.primary-button {
    grid-column: 1 / -1 !important;
    min-height: 52px !important;
    width: 100% !important;
    margin-top: 4px !important;
    border-radius: 9px !important;
    font-size: 16px !important;
  }

  html body .hero-search .mobile-search-filters {
    grid-column: 1 / -1 !important;
    display: block !important;
    text-align: center !important;
    margin: 2px 0 0 !important;
    color: #5d6268 !important;
    font-size: 13px !important;
    text-decoration: underline !important;
    text-underline-offset: 3px !important;
  }

  html body .hero-search .desktop-search-label { display: none !important; }
  html body .hero-search .mobile-search-label { display: inline !important; }
}


@media (min-width: 768px) {
  body .hero-search .mobile-search-kicker,
  body .hero-search .mobile-search-filters,
  body .hero-search .mobile-search-label { display: none !important; }
}


/* Site-wide palette continuity: remove legacy red, green, and blue accents. */
:root {
  --accent: #b58a45 !important;
  --accent-dark: #8b642d !important;
  --gold: #b58a45 !important;
  --gold-light: #e4d2b4 !important;
  --evergreen: #b58a45 !important;
  --evergreen-dark: #8b642d !important;
  --evergreen-soft: #f1eee8 !important;
}


html body .hero-search > button[type="submit"],
html body form.hero-search[data-search-form] > button.primary-button,
html body .search-submit,
html body .search-button,
html body button[type="submit"].primary-button {
  background: #b58a45 !important;
  background-color: #b58a45 !important;
  border-color: #b58a45 !important;
  color: #fff !important;
}


html body .hero-search > button[type="submit"]:hover,
html body form.hero-search[data-search-form] > button.primary-button:hover,
html body .search-submit:hover,
html body .search-button:hover,
html body button[type="submit"].primary-button:hover {
  background: #8b642d !important;
  background-color: #8b642d !important;
  border-color: #8b642d !important;
}


body .tracking-consent a,
body .mobile-home-intro a,
body .mobile-testimonial-section > a,
body .market-hub-link a,
body .team-role,
body .ftb-property-card h4 {
  color: #8b642d !important;
}


body .tracking-consent-actions button {
  border-color: #b58a45 !important;
  color: #8b642d !important;
  background: #fff !important;
}


html body .tracking-consent[hidden],
html body [data-tracking-consent][aria-hidden="true"] {
  display: none !important;
}


body .tracking-consent-actions button:last-child,
body .mobile-quick-actions a:first-child,
body .fb-step-grid article > span,
body .ftb-roadmap article::before {
  background: #b58a45 !important;
  border-color: #b58a45 !important;
  color: #fff !important;
}


body .mobile-quick-actions a:last-child,
body .fb-compare-grid article,
body .fb-warning {
  border-color: #b58a45 !important;
}


body .fb-warning,
body .team-tags span,
body .mobile-service-section {
  background: #f1eee8 !important;
}


body .team-tags span {
  color: #8b642d !important;
}


body .mobile-service-grid a {
  background: linear-gradient(145deg, #202428, #3b3f43) !important;
  color: #fff !important;
}


body [style*="#B4533D" i],
body [style*="#b4533d" i] {
  border-color: #b58a45 !important;
}


body [style*="background:#B4533D" i],
body [style*="background: #B4533D" i],
body [style*="background-color:#B4533D" i],
body [style*="background-color: #B4533D" i] {
  background: #b58a45 !important;
  background-color: #b58a45 !important;
}


/* Keep true validation and required-field errors red for accessibility. */
body .required-mark,
body .field-error,
body .form-error,
body [aria-invalid="true"] + .error-message {
  color: #b42318 !important;
}


/* Final cascade guard for the site's full-width photographic parallax heroes. */
html body section.interior-parallax .parallax-copy,
html body section.interior-parallax .parallax-copy h1,
html body section.interior-parallax .parallax-copy h2,
html body section.interior-parallax .parallax-copy h3,
html body section.interior-parallax .parallax-copy h4,
html body section.interior-parallax .parallax-copy h5,
html body section.interior-parallax .parallax-copy h6,
html body section.interior-parallax .parallax-copy p,
html body section.interior-parallax .parallax-copy .eyebrow {
  color: #fff !important;
  text-shadow: 0 2px 12px rgba(0, 0, 0, .72) !important;
}


html body section.interior-parallax .parallax-copy h1,
html body section.interior-parallax .parallax-copy h2,
html body section.interior-parallax .parallax-copy h3 {
  background: transparent !important;
  border-color: #d2ad70 !important;
}


/* Remove the last legacy green panel from the first-time buyer guide. */
html body.ftb-page .ftb-final {
  background: #f1eee8 !important;
  color: #202428 !important;
  border: 1px solid rgba(32, 36, 40, .14) !important;
  box-shadow: 0 12px 28px rgba(32, 36, 40, .08) !important;
}


html body.ftb-page .ftb-final h2,
html body.ftb-page .ftb-final p:not(.eyebrow) {
  color: #202428 !important;
  text-shadow: none !important;
}


html body.ftb-page .ftb-final .eyebrow {
  color: #8b642d !important;
}


html body.ftb-page .ftb-final .secondary-button {
  background: #fff !important;
  color: #202428 !important;
  border-color: rgba(32, 36, 40, .24) !important;
}


/* Light, readable GVR data panel on every Vancouver neighbourhood guide. */
html body .neighbourhood-market-data {
  background: #f1eee8 !important;
  color: #202428 !important;
  border-top: 1px solid rgba(32, 36, 40, .12) !important;
}


html body .neighbourhood-market-data h2 {
  color: #202428 !important;
  text-shadow: none !important;
}


html body .neighbourhood-market-data .eyebrow {
  color: #8b642d !important;
}


html body .neighbourhood-market-data__intro,
html body .neighbourhood-market-data__note {
  color: #5d6268 !important;
}


html body .neighbourhood-market-data__note a {
  color: #8b642d !important;
  text-decoration-color: #b58a45 !important;
}


/* Centre the broader-market note as the visual footer of the Listings card. */
html body .guide-cta-section.neighbourhood-listings-cta + .market-hub-link {
  box-sizing: border-box !important;
  display: block !important;
  width: min(1120px, calc(100% - 40px)) !important;
  max-width: 1120px !important;
  margin: -1px auto 52px !important;
  padding: 22px 32px 28px !important;
  text-align: center !important;
  background: #fff !important;
  color: #5d6268 !important;
  border: 1px solid rgba(32, 36, 40, .14) !important;
  border-top: 0 !important;
  border-radius: 0 0 16px 16px !important;
  line-height: 1.55 !important;
}


html body .guide-cta-section.neighbourhood-listings-cta + .market-hub-link a {
  color: #8b642d !important;
  font-weight: 750 !important;
  text-decoration-color: #b58a45 !important;
  text-underline-offset: 3px !important;
}


/* Keep the Vancouver Island lifestyle heading readable over its dark photo. */
html body .island-overview-banner .island-overview-banner-copy h2,
html body .island-overview-banner .island-overview-banner-copy p,
html body .island-overview-banner .island-overview-banner-copy .eyebrow {
  color: #ffffff !important;
  text-shadow: 0 2px 18px rgba(0, 0, 0, .48) !important;
}


@media (max-width: 600px) {
  html body .guide-cta-section.neighbourhood-listings-cta + .market-hub-link {
    width: calc(100% - 28px) !important;
    margin-bottom: 28px !important;
    padding: 18px 22px 24px !important;
  }
}

/* Separate Vancouver Island card photography (v1.9). Attribute selectors
   keep the correct image attached to its community even if cards are reordered. */
:is(.island-index, #island-communities) .island-community-card[href*="vancouver-island-victoria"] {
  background-image: url("/wp-content/themes/spencer-real-estate-theme/assets/hosted-photos/hosted-da68e7a76950fc5e30.jpg") !important;
}


:is(.island-index, #island-communities) .island-community-card[href*="vancouver-island-duncan"] {
  background-image: url("/wp-content/themes/spencer-real-estate-theme/assets/hosted-photos/hosted-cbd75d294ec96a065b.jpg") !important;
}


:is(.island-index, #island-communities) .island-community-card[href*="vancouver-island-cowichan-valley"] {
  background-image: url("/wp-content/themes/spencer-real-estate-theme/assets/hosted-photos/hosted-5d6972ecac1d16869b.jpg") !important;
}


:is(.island-index, #island-communities) .island-community-card[href*="vancouver-island-ladysmith"] {
  background-image: url("/wp-content/themes/spencer-real-estate-theme/assets/hosted-photos/ladysmith-colourful-downtown.jpg") !important;
}


:is(.island-index, #island-communities) .island-community-card[href*="vancouver-island-nanaimo"] {
  background-image: url("/wp-content/themes/spencer-real-estate-theme/assets/hosted-photos/hosted-f33329058c9c687584.jpg") !important;
}


:is(.island-index, #island-communities) .island-community-card[href*="vancouver-island-nanoose-bay"] {
  background-image: url("/wp-content/themes/spencer-real-estate-theme/assets/hosted-photos/hosted-eee92fbb4c88e19116.jpg") !important;
}


:is(.island-index, #island-communities) .island-community-card[href*="vancouver-island-parksville"] {
  background-image: url("/wp-content/themes/spencer-real-estate-theme/assets/hosted-photos/parksville-boardwalk.jpg") !important;
}


:is(.island-index, #island-communities) .island-community-card[href*="vancouver-island-qualicum-beach"] {
  background-image: url("/wp-content/themes/spencer-real-estate-theme/assets/hosted-photos/qualicum-downtown.jpg") !important;
}


:is(.island-index, #island-communities) .island-community-card[href*="vancouver-island-fairwinds"] {
  background-image: url("/wp-content/themes/spencer-real-estate-theme/assets/hosted-photos/fairwinds-golf.jpg") !important;
}


:is(.island-index, #island-communities) .island-community-card[href*="vancouver-island-courtenay"] {
  background-image: url("/wp-content/themes/spencer-real-estate-theme/assets/hosted-photos/hosted-69ae172e4b7bbf9644.jpg") !important;
}


:is(.island-index, #island-communities) .island-community-card[href*="vancouver-island-comox"] {
  background-image: url("/wp-content/themes/spencer-real-estate-theme/assets/hosted-photos/hosted-a8ed32da8a334497ae.jpg") !important;
}


:is(.island-index, #island-communities) .island-community-card[href*="vancouver-island-campbell-river"] {
  background-image: url("/wp-content/themes/spencer-real-estate-theme/assets/hosted-photos/hosted-9d3f96f4378accdd90.webp") !important;
}


:is(.island-index, #island-communities) .island-community-card[href*="vancouver-island-port-alberni"] {
  background-image: url("/wp-content/themes/spencer-real-estate-theme/assets/hosted-photos/port-alberni-aerial.jpg") !important;
}


:is(.island-index, #island-communities) .island-community-card[href*="vancouver-island-tofino"] {
  background-image: url("/wp-content/themes/spencer-real-estate-theme/assets/hosted-photos/hosted-596953e08a02317254.jpg") !important;
}


:is(.island-index, #island-communities) .island-community-card[href*="vancouver-island-ucluelet"] {
  background-image: url("/wp-content/themes/spencer-real-estate-theme/assets/hosted-photos/hosted-644937c5b4b57e068d.jpg") !important;
}


/* Professional button system: restrained bronze, tailored corners, quiet hover. */
html body .primary-button,
html body a.primary-button,
html body button.primary-button,
html body .button-primary,
html body .button--primary,
html body .header-contact,
html body .header-cta,
html body .book-consultation,
html body .mobile-consultation,
html body .chat-toggle,
html body .hero-search button[type="submit"] {
  min-height: 46px !important;
  padding: 12px 22px !important;
  border: 1px solid #96713b !important;
  border-radius: 8px !important;
  background: #96713b !important;
  color: #ffffff !important;
  box-shadow: 0 4px 12px rgba(32, 36, 40, .10) !important;
  font-weight: 700 !important;
  letter-spacing: .012em !important;
  line-height: 1.15 !important;
  transition: background-color .2s ease, border-color .2s ease,
    color .2s ease, box-shadow .2s ease, transform .2s ease !important;
}


html body .primary-button:hover,
html body a.primary-button:hover,
html body button.primary-button:hover,
html body .button-primary:hover,
html body .button--primary:hover,
html body .header-contact:hover,
html body .header-cta:hover,
html body .book-consultation:hover,
html body .mobile-consultation:hover,
html body .chat-toggle:hover,
html body .hero-search button[type="submit"]:hover {
  border-color: #202428 !important;
  background: #202428 !important;
  color: #ffffff !important;
  box-shadow: 0 7px 18px rgba(32, 36, 40, .16) !important;
  transform: translateY(-1px) !important;
}


html body .secondary-button,
html body a.secondary-button,
html body .button-secondary,
html body .button--secondary,
html body .tracking-consent-actions button:not(:last-child) {
  min-height: 46px !important;
  padding: 11px 21px !important;
  border: 1px solid rgba(32, 36, 40, .28) !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  color: #202428 !important;
  box-shadow: none !important;
  font-weight: 700 !important;
  letter-spacing: .012em !important;
}


html body .secondary-button:hover,
html body a.secondary-button:hover,
html body .button-secondary:hover,
html body .button--secondary:hover,
html body .tracking-consent-actions button:not(:last-child):hover {
  border-color: #96713b !important;
  background: #f6f2eb !important;
  color: #202428 !important;
}


@media (max-width: 700px) {
  html body .hero-search button[type="submit"],
  html body .primary-button,
  html body a.primary-button {
    border-radius: 8px !important;
  }
}


/* Contrast guard for the reusable dark conversion cards. */
html body .team-final,
html body .market-report-conversion,
html body .ftb-final,
html body .team-listings-cta {
  color: #ffffff !important;
}


html body .team-final :is(h1, h2, h3, h4, h5, h6, p, li, strong),
html body .market-report-conversion :is(h1, h2, h3, h4, h5, h6, p, li, strong),
html body .ftb-final :is(h1, h2, h3, h4, h5, h6, p, li, strong),
html body .team-listings-cta :is(h1, h2, h3, h4, h5, h6, p, li, strong) {
  color: #ffffff !important;
}


html body .team-final .eyebrow,
html body .market-report-conversion .eyebrow,
html body .ftb-final .eyebrow,
html body .team-listings-cta .eyebrow {
  color: #d2ad70 !important;
}


/* The Island guidance CTA is light, so its copy must remain charcoal. */
html body .island-final-cta,
html body .island-final-cta :is(h1, h2, h3, h4, h5, h6, p, li, strong),
html body .island-final-cta p:not(.eyebrow) {
  color: #202428 !important;
}


/* Standardize large end-of-page CTA panels to the approved warm-beige card. */
html body .team-final,
html body .market-report-conversion,
html body .ftb-final,
html body .island-final-cta,
html body .team-listings-cta,
html body .seller-cta-section,
html body .neighbourhood-listings-cta,
html body .guide-cta-section.neighbourhood-listings-cta {
  border: 1px solid #d8d1c5 !important;
  background: #f1eee8 !important;
  background-color: #f1eee8 !important;
  color: #202428 !important;
  box-shadow: 0 14px 34px rgba(32, 36, 40, .07) !important;
}


html body .team-final :is(h1, h2, h3, h4, h5, h6, p, li, strong),
html body .market-report-conversion :is(h1, h2, h3, h4, h5, h6, p, li, strong),
html body .ftb-final :is(h1, h2, h3, h4, h5, h6, p, li, strong),
html body .island-final-cta :is(h1, h2, h3, h4, h5, h6, p, li, strong),
html body .team-listings-cta :is(h1, h2, h3, h4, h5, h6, p, li, strong),
html body .seller-cta-section :is(h1, h2, h3, h4, h5, h6, p, li, strong),
html body .neighbourhood-listings-cta :is(h1, h2, h3, h4, h5, h6, p, li, strong),
html body .guide-cta-section.neighbourhood-listings-cta :is(h1, h2, h3, h4, h5, h6, p, li, strong) {
  color: #202428 !important;
  text-shadow: none !important;
}


html body .team-final .eyebrow,
html body .market-report-conversion .eyebrow,
html body .ftb-final .eyebrow,
html body .island-final-cta .eyebrow,
html body .team-listings-cta .eyebrow,
html body .seller-cta-section .eyebrow,
html body .neighbourhood-listings-cta .eyebrow,
html body .guide-cta-section.neighbourhood-listings-cta .eyebrow {
  color: #8b642d !important;
}


html body .neighbourhood-listings-cta .secondary-button,
html body .guide-cta-section.neighbourhood-listings-cta .secondary-button {
  border-color: rgba(32, 36, 40, .28) !important;
  background: #ffffff !important;
  color: #202428 !important;
}


.photo-credit {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto 20px;
  color: #667078;
  font-size: 0.75rem;
  line-height: 1.5;
  text-align: center;
}


/* Desktop neighbourhood pages: keep sections close enough to feel connected. */
@media (min-width: 761px) {
  html body .neighbourhood-photo-section {
    padding-bottom: 34px !important;
  }

  html body .neighbourhood-photo-section + .neighbourhood-market-data,
  html body .neighbourhood-market-data {
    margin-top: 28px !important;
  }

  html body .neighbourhood-photo-grid {
    gap: 18px !important;
  }

  html body .neighbourhood-story-section,
  html body .neighbourhood-detail-section,
  html body .neighbourhood-photo-section,
  html body .neighbourhood-fit-section,
  html body .neighbourhood-resource-section {
    padding-top: 44px !important;
    padding-bottom: 44px !important;
  }

  html body .neighbourhood-story-grid,
  html body .neighbourhood-detail-grid {
    gap: 18px !important;
  }
}


/* Island community guides: prevent adjacent sections from doubling the
   generous site-wide section padding into large empty vertical gaps. */
html body:has(.neighbourhood-hero a[href*="vancouver-island"]) .neighbourhood-hero {
  padding-bottom: 34px !important;
}


html body:has(.neighbourhood-hero a[href*="vancouver-island"]) :is(
  .neighbourhood-story-section,
  .neighbourhood-detail-section,
  .neighbourhood-photo-section,
  .neighbourhood-fit-section,
  .neighbourhood-resource-section
) {
  padding-top: 32px !important;
  padding-bottom: 32px !important;
}


html body:has(.neighbourhood-hero a[href*="vancouver-island"]) :is(
  .neighbourhood-detail-grid,
  .neighbourhood-story-grid
) {
  gap: 16px !important;
}


html body:has(.neighbourhood-hero a[href*="vancouver-island"]) .neighbourhood-detail-grid article {
  padding: 24px !important;
}


@media (max-width: 760px) {
  html body:has(.neighbourhood-hero a[href*="vancouver-island"]) .neighbourhood-hero {
    padding-bottom: 26px !important;
  }

  html body:has(.neighbourhood-hero a[href*="vancouver-island"]) :is(
    .neighbourhood-story-section,
    .neighbourhood-detail-section,
    .neighbourhood-photo-section,
    .neighbourhood-fit-section,
    .neighbourhood-resource-section
  ) {
    padding-top: 24px !important;
    padding-bottom: 24px !important;
  }

  html body:has(.neighbourhood-hero a[href*="vancouver-island"]) .neighbourhood-detail-grid article {
    padding: 22px !important;
  }
}

/* Greater Vancouver search cards added to the neighbourhood guide hub. */
.regional-guide-section {
  width: min(1180px, calc(100% - 40px));
  margin: 54px auto 18px;
}


.regional-guide-heading {
  max-width: 760px;
  margin-bottom: 24px;
}


.regional-guide-heading h2 {
  margin: 8px 0 10px;
}


.regional-guide-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}


.regional-guide-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 190px;
  padding: 25px;
  overflow: hidden;
  color: #fff !important;
  text-decoration: none !important;
  background: #202428 !important;
  border: 1px solid rgba(32, 36, 40, .14) !important;
  border-top: 3px solid #b58a45 !important;
  border-radius: 10px;
  box-shadow: 0 8px 22px rgba(32, 36, 40, .06);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}


.regional-guide-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: linear-gradient(180deg, rgba(20, 23, 25, .08) 5%, rgba(20, 23, 25, .82) 100%);
}


.regional-guide-card > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}


.regional-guide-card:hover {
  color: #fff !important;
  border-color: #b58a45 !important;
  transform: translateY(-3px);
  box-shadow: 0 14px 28px rgba(32, 36, 40, .11);
}


.regional-guide-code {
  position: absolute;
  top: 12px;
  right: 17px;
  z-index: 2;
  color: rgba(255, 255, 255, .34);
  font-size: clamp(2.8rem, 5vw, 4.5rem);
  font-weight: 800;
  letter-spacing: -.07em;
  line-height: 1;
}


.regional-guide-copy {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  max-width: 86%;
  gap: 10px;
}


.regional-guide-copy strong {
  color: #fff;
  font-size: 1.35rem;
  line-height: 1.15;
}


.regional-guide-copy small {
  color: rgba(255, 255, 255, .88);
  font-size: .98rem;
  line-height: 1.5;
}


.regional-guide-action {
  position: relative;
  z-index: 2;
  margin-top: auto;
  padding-top: 18px;
  color: #f0d39f;
  font-size: .78rem;
  font-weight: 750;
  letter-spacing: .08em;
  text-transform: uppercase;
}


@media (max-width: 900px) {
  .regional-guide-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}


@media (max-width: 620px) {
  .regional-guide-section {
    width: min(100% - 28px, 1180px);
    margin-top: 38px;
  }
  .regional-guide-grid { grid-template-columns: 1fr; gap: 12px; }
  .regional-guide-card { min-height: 164px; padding: 21px; }
}


/* Pre-launch mobile polish: neighbourhood badges and tighter phone rhythm. */
html body .neighbourhood-photo-card,
html body .compact-neighbourhood-card,
html body .island-community-card {
  position: relative !important;
  overflow: hidden !important;
}


html body .smre-card-code {
  position: absolute !important;
  top: 10px !important;
  right: 16px !important;
  bottom: auto !important;
  left: auto !important;
  z-index: 3 !important;
  pointer-events: none !important;
  color: rgba(255, 255, 255, .34) !important;
  font-size: clamp(2.4rem, 5.5vw, 4.6rem) !important;
  font-weight: 800 !important;
  letter-spacing: -.07em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  transform: none !important;
  text-align: right !important;
}


html body .neighbourhood-photo-card > .smre-card-code,
html body .compact-neighbourhood-card > .smre-card-code,
html body .island-community-card > .smre-card-code {
  inset: 10px 16px auto auto !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}


html body .compact-neighbourhood-card .smre-card-code {
  color: rgba(181, 138, 69, .18) !important;
  font-size: clamp(2.1rem, 4.5vw, 3.4rem) !important;
}


html body .island-community-card .smre-card-code {
  color: rgba(255, 255, 255, .38) !important;
}


html body .seller-cta-section .cta-actions,
html body .guide-cta-section .cta-actions,
html body .neighbourhood-listings-cta .cta-actions {
  align-items: stretch !important;
}


@media (max-width: 760px) {
  html body :is(
    .service-grid,
    .feature-grid,
    .process-grid,
    .seller-process-grid,
    .seller-feature-grid,
    .marketing-focus-grid,
    .marketing-grid,
    .home-contact-grid,
    .neighbourhood-detail-grid,
    .neighbourhood-story-grid
  ) {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  html body :is(
    .service-card,
    .feature-card,
    .info-card,
    .seller-card,
    .marketing-card,
    .home-contact-card,
    .neighbourhood-detail-grid article,
    .neighbourhood-story-grid article
  ) {
    min-width: 0 !important;
    padding: 22px !important;
  }

  html body :is(
    .service-card,
    .feature-card,
    .info-card,
    .seller-card,
    .marketing-card,
    .home-contact-card,
    .neighbourhood-detail-grid article,
    .neighbourhood-story-grid article
  ) :is(h2, h3, p, li, small) {
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }

  html body :is(
    .popular-section,
    .neighbourhood-section,
    .home-island-search,
    .home-connect-section,
    .seller-section,
    .service-section,
    .feature-section,
    .marketing-section,
    .guide-section,
    .content-section
  ) {
    padding-top: 34px !important;
    padding-bottom: 34px !important;
  }

  html body .seller-cta-section,
  html body .guide-cta-section,
  html body .neighbourhood-listings-cta,
  html body .guide-cta-section.seo-related-links {
    width: calc(100% - 28px) !important;
    margin-top: 28px !important;
    margin-bottom: 28px !important;
    padding: 28px 22px !important;
    border-radius: 14px !important;
  }

  html body .seller-cta-section h2,
  html body .guide-cta-section h2,
  html body .neighbourhood-listings-cta h2 {
    font-size: clamp(2rem, 9vw, 2.8rem) !important;
    line-height: 1.06 !important;
  }

  html body .seller-cta-section .cta-actions,
  html body .guide-cta-section .cta-actions,
  html body .neighbourhood-listings-cta .cta-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  html body .seller-cta-section .cta-actions a,
  html body .guide-cta-section .cta-actions a,
  html body .neighbourhood-listings-cta .cta-actions a {
    width: 100% !important;
    min-height: 48px !important;
    padding: 12px 16px !important;
    white-space: normal !important;
  }

  html body .smre-card-code {
    top: 12px !important;
    right: 16px !important;
    bottom: auto !important;
    left: auto !important;
    inset: 12px 16px auto auto !important;
    font-size: clamp(3.4rem, 15vw, 5rem) !important;
  }
}


/* Editorial hero treatment for Greater Vancouver community pages. */
.regional-community-hero-photo {
  position: relative;
  min-height: 360px;
  margin: 0;
  overflow: hidden;
  color: #fff;
  background: #d8d2c9;
  border-radius: 14px;
  box-shadow: 0 16px 34px rgba(32, 36, 40, .14);
}


.regional-community-hero-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(20, 23, 25, .04) 20%, rgba(20, 23, 25, .78) 100%);
}


.regional-community-hero-photo > img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}


.regional-community-hero-photo > span {
  position: absolute;
  top: 15px;
  right: 28px;
  z-index: 2;
  color: rgba(255, 255, 255, .56);
  font-size: clamp(5.5rem, 12vw, 9rem);
  font-weight: 800;
  letter-spacing: -.08em;
  line-height: 1;
}


.regional-community-hero-photo figcaption {
  position: absolute;
  inset: auto 0 0;
  z-index: 2;
  display: flex;
  padding: 34px;
  flex-direction: column;
}


.regional-community-hero-photo strong,
.regional-community-hero-photo small,
.regional-community-hero-photo a {
  position: relative;
  z-index: 1;
}


.regional-community-hero-photo strong { color: #fff; font-size: clamp(1.8rem, 4vw, 3rem); line-height: 1.05; }

.regional-community-hero-photo small { margin-top: 10px; color: #f4f0e8; font-size: 1rem; line-height: 1.45; }

.regional-community-hero-photo a { align-self: flex-start; margin-top: 10px; color: rgba(255, 255, 255, .72); font-size: .7rem; text-decoration: none; }


.neighbourhood-market-data {
  width: min(1180px, calc(100% - 40px));
  margin: 0 auto;
  padding: 34px 0;
  background: #fff !important;
  color: #202428 !important;
}


.neighbourhood-market-data__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 440px);
  gap: 34px;
  align-items: center;
  padding: 34px;
  background: #f3f0ea !important;
  border: 1px solid rgba(32, 36, 40, .12);
  border-radius: 14px;
}


.neighbourhood-market-data h2,
.neighbourhood-market-data p { color: #202428 !important; }

.neighbourhood-market-data .eyebrow { color: #8b642d !important; }


.neighbourhood-market-data__inner h2 { margin: 8px 0 12px; }

.neighbourhood-market-data__visual { padding: 12px; background: #fff; border-radius: 10px; box-shadow: 0 8px 20px rgba(32, 36, 40, .08); }

.neighbourhood-market-data__visual img { display: block; width: 100%; height: auto; border-radius: 6px; }


@media (max-width: 760px) {
  .regional-community-hero-photo { min-height: 250px; }
  .regional-community-hero-photo figcaption { padding: 24px; }
  .neighbourhood-market-data { width: min(100% - 28px, 1180px); padding: 24px 0; }
  .neighbourhood-market-data__inner { grid-template-columns: 1fr; gap: 22px; padding: 24px; }
}


/* Regional guide pages receive one light, editorial search panel. The older
   script-generated duplicate is hidden, and no charcoal block remains. */
body:has(.regional-community-hero) .seo-related-links:not(.regional-explore-cta) {
  display: none !important;
}


body:has(.regional-community-hero) .regional-explore-cta {
  background: #f3f0ea !important;
  color: #202428 !important;
  border-color: rgba(32, 36, 40, .14) !important;
  box-shadow: 0 12px 28px rgba(32, 36, 40, .08) !important;
}


body:has(.regional-community-hero) .regional-explore-cta .eyebrow {
  color: #8b642d !important;
}


body:has(.regional-community-hero) .regional-explore-cta .primary-button {
  background: #b58a45 !important;
  border-color: #b58a45 !important;
  color: #fff !important;
}


body:has(.regional-community-hero) .regional-explore-cta .secondary-button {
  background: #fff !important;
  border-color: rgba(32, 36, 40, .2) !important;
  color: #202428 !important;
}


/* Compact section rhythm for the nine Greater Vancouver community guides. */
html body:has(.regional-community-hero) .regional-community-hero {
  padding-bottom: 28px !important;
}


html body:has(.regional-community-hero) :is(
  .neighbourhood-story-section,
  .neighbourhood-detail-section,
  .neighbourhood-fit-section,
  .neighbourhood-resource-section
) {
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}


html body:has(.regional-community-hero) :is(
  .neighbourhood-story-grid,
  .neighbourhood-detail-grid
) {
  gap: 16px !important;
}


html body:has(.regional-community-hero) .neighbourhood-detail-grid article {
  padding: 24px !important;
}


html body:has(.regional-community-hero) .neighbourhood-market-data {
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}


html body:has(.regional-community-hero) .neighbourhood-listings-cta,
html body:has(.regional-community-hero) .regional-explore-cta {
  margin-top: 28px !important;
}


@media (max-width: 760px) {
  html body:has(.regional-community-hero) .regional-community-hero {
    padding-bottom: 20px !important;
  }

  html body:has(.regional-community-hero) :is(
    .neighbourhood-story-section,
    .neighbourhood-detail-section,
    .neighbourhood-fit-section,
    .neighbourhood-resource-section
  ) {
    padding-top: 18px !important;
    padding-bottom: 18px !important;
  }

  html body:has(.regional-community-hero) .neighbourhood-detail-grid article {
    padding: 21px !important;
  }

  html body:has(.regional-community-hero) .neighbourhood-market-data {
    padding-top: 18px !important;
    padding-bottom: 18px !important;
  }
}



/* Blog and building guide expansion */
.smre-blog-hero,.smre-article-hero{max-width:1120px;margin:0 auto;padding:96px 24px 42px}
.smre-blog-hero h1,.smre-article-hero h1{font-size:clamp(2.35rem,6vw,5rem);line-height:.98;letter-spacing:-.05em;margin:0;color:#202428}
.smre-blog-hero p,.smre-article-hero>p:not(.eyebrow){max-width:760px;font-size:1.1rem;line-height:1.65;color:#555;margin:22px 0 0}
.smre-blog-cats{max-width:1120px;margin:0 auto 24px;padding:0 24px;display:flex;gap:10px;flex-wrap:wrap}
.smre-blog-cats span{border:1px solid rgba(32,36,40,.14);background:#f3f0ea;border-radius:999px;padding:8px 12px;font-weight:750;color:#202428}
.smre-blog-grid{max-width:1120px;margin:0 auto 72px;padding:0 24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.smre-blog-card{display:flex;flex-direction:column;gap:12px;text-decoration:none;background:#fff;border:1px solid rgba(32,36,40,.12);border-radius:10px;padding:24px;box-shadow:0 10px 24px rgba(32,36,40,.07);color:#202428}
.smre-blog-card span,.smre-article-meta{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;font-weight:800;color:#a97832}
.smre-blog-card strong{font-size:1.25rem;line-height:1.2;color:#202428}
.smre-blog-card p{margin:0;color:#5d6268;line-height:1.55}
.smre-article-layout{max-width:1120px;margin:0 auto 80px;padding:0 24px;display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:48px;align-items:start}
.smre-article-body{background:#fff;border:1px solid rgba(32,36,40,.1);border-radius:10px;padding:42px;box-shadow:0 10px 24px rgba(32,36,40,.06)}
.smre-article-body h2{margin:34px 0 10px;font-size:1.65rem;line-height:1.18;color:#202428}
.smre-article-body section:first-child h2{margin-top:0}
.smre-article-body p{font-size:1.05rem;line-height:1.75;color:#3f464b}
.smre-related-box{position:sticky;top:110px;background:#f3f0ea;border:1px solid rgba(32,36,40,.12);border-radius:10px;padding:22px}
.smre-related-box a{display:block;text-decoration:none;color:#202428;border-top:1px solid rgba(32,36,40,.12);padding:14px 0}
.smre-related-box a:first-of-type{border-top:0}
.smre-related-box strong{display:block;line-height:1.25}
.smre-related-box span{font-size:.82rem;color:#6b6255}
.smre-buildings-section{box-sizing:border-box;max-width:1120px;margin:56px auto 0;padding:0 24px}
.smre-buildings-card{background:#fff;border:1px solid rgba(32,36,40,.12);border-radius:14px;padding:34px;box-shadow:0 12px 28px rgba(32,36,40,.07)}
.smre-buildings-card h2{margin:0;font-size:clamp(1.9rem,4vw,3rem);line-height:1.05;color:#202428}
.smre-buildings-card>p{max-width:760px;color:#5d6268;line-height:1.6}
.smre-building-item{border-top:1px solid rgba(32,36,40,.12)}
.smre-building-item summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:18px;padding:18px 0;font-weight:850;color:#202428}
.smre-building-item summary::-webkit-details-marker{display:none}
.smre-building-item summary span{color:#a97832;font-size:.9rem;font-weight:800}
.smre-building-body{padding:0 0 18px;color:#4b5258;line-height:1.6}
.smre-building-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0}
.smre-building-meta span{background:#f3f0ea;border-radius:8px;padding:10px;font-size:.9rem}
.main-nav>a[href$="/blog/"]{font-weight:700}
@media(max-width:860px){.smre-blog-grid{grid-template-columns:1fr}.smre-article-layout{grid-template-columns:1fr}.smre-related-box{position:static}.smre-article-body{padding:28px}.smre-building-meta{grid-template-columns:1fr}.smre-buildings-card{padding:26px}}


/* Blog redesign: compact editorial landing page with no dead vertical space. */
html body .main-nav > a[href$="/blog/"] {
  font-weight: inherit !important;
}


html body .smre-blog-page {
  background: #f8f7f4 !important;
}


html body .smre-blog-hero-redesign {
  box-sizing: border-box !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 54px 24px 22px !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(330px, 440px) !important;
  gap: 28px !important;
  align-items: stretch !important;
}


html body .smre-blog-hero-copy {
  padding: 38px !important;
  border-radius: 14px !important;
  background: #202428 !important;
  color: #fff !important;
  min-height: 300px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}


html body .smre-blog-hero-copy .eyebrow {
  color: #d9b777 !important;
}


html body .smre-blog-hero-copy h1 {
  max-width: 760px !important;
  margin: 0 !important;
  color: #fff !important;
  font-size: clamp(2.45rem, 5.6vw, 4.7rem) !important;
  line-height: .94 !important;
  letter-spacing: -.055em !important;
}


html body .smre-blog-hero-copy p {
  max-width: 680px !important;
  margin: 18px 0 0 !important;
  color: rgba(255, 255, 255, .82) !important;
  font-size: 1.08rem !important;
  line-height: 1.58 !important;
}


html body .smre-blog-feature {
  box-sizing: border-box !important;
  padding: 30px !important;
  border-radius: 14px !important;
  background: #efe8dc !important;
  border: 1px solid rgba(32, 36, 40, .12) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 12px !important;
}


html body .smre-blog-feature span,
html body .smre-blog-card span {
  color: #a97832 !important;
  font-size: .76rem !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  font-weight: 850 !important;
}


html body .smre-blog-feature h2 {
  margin: 0 !important;
  color: #202428 !important;
  font-size: 1.75rem !important;
  line-height: 1.08 !important;
  letter-spacing: -.035em !important;
}


html body .smre-blog-feature p {
  margin: 0 !important;
  color: #4f555a !important;
  line-height: 1.58 !important;
}


html body .smre-blog-feature .primary-button {
  margin-top: 8px !important;
  width: fit-content !important;
}


html body .smre-blog-cats-redesign {
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 10px 24px 18px !important;
  gap: 8px !important;
}


html body .smre-blog-cats-redesign a,
html body .smre-blog-cats-redesign span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 38px !important;
  padding: 8px 13px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(32, 36, 40, .14) !important;
  background: #fff !important;
  color: #202428 !important;
  text-decoration: none !important;
  font-weight: 760 !important;
  box-shadow: 0 6px 14px rgba(32, 36, 40, .04) !important;
}


html body .smre-blog-grid-redesign {
  max-width: 1180px !important;
  margin: 0 auto 62px !important;
  padding: 0 24px !important;
  gap: 14px !important;
}


html body .smre-blog-grid-redesign .smre-blog-card {
  min-height: 220px !important;
  padding: 24px !important;
  border-radius: 12px !important;
  background: #fff !important;
  border: 1px solid rgba(32, 36, 40, .1) !important;
  box-shadow: 0 8px 18px rgba(32, 36, 40, .055) !important;
}


html body .smre-blog-grid-redesign .smre-blog-card strong {
  font-size: 1.22rem !important;
  line-height: 1.16 !important;
  letter-spacing: -.025em !important;
}


html body .smre-blog-grid-redesign .smre-blog-card p {
  font-size: .96rem !important;
  line-height: 1.5 !important;
}


html body .smre-blog-grid-redesign .smre-blog-card:hover,
html body .smre-blog-grid-redesign .smre-blog-card:focus-visible {
  transform: translateY(-2px) !important;
  border-color: rgba(169, 120, 50, .45) !important;
  box-shadow: 0 14px 26px rgba(32, 36, 40, .09) !important;
}


@media (max-width: 900px) {
  html body .smre-blog-hero-redesign {
    grid-template-columns: 1fr !important;
    padding-top: 34px !important;
  }

  html body .smre-blog-hero-copy {
    min-height: 0 !important;
    padding: 30px !important;
  }
}


@media (max-width: 640px) {
  html body .smre-blog-hero-redesign {
    padding: 26px 18px 16px !important;
    gap: 14px !important;
  }

  html body .smre-blog-hero-copy,
  html body .smre-blog-feature {
    padding: 24px !important;
  }

  html body .smre-blog-cats-redesign,
  html body .smre-blog-grid-redesign {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}


/* Blog archive v2: light, photo-led and easy to scan. */
html body .site-header,
html body .site-header .brand,
html body .site-header .brand img,
html body .site-header .main-nav a,
html body .site-header .main-nav button,
html body .site-header .header-contact {
  transition: background .42s ease, border-color .42s ease, color .42s ease, padding .42s ease, min-height .42s ease, height .42s ease, transform .5s cubic-bezier(.2, .8, .2, 1), box-shadow .42s ease, backdrop-filter .42s ease !important;
}


html body .site-header {
  min-height: 112px !important;
  background: transparent !important;
  border-bottom-color: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}


html body .site-header .brand img {
  max-width: 330px !important;
  transform: none !important;
  backface-visibility: hidden !important;
}


html body .site-header .brand {
  display: inline-flex !important;
  align-items: center !important;
  padding: 0 !important;
  border: 1px solid transparent !important;
  border-radius: 6px !important;
  background: transparent !important;
  transform-origin: left center !important;
  transform: translateZ(0) scale(1) !important;
  will-change: transform !important;
  backface-visibility: hidden !important;
}


html body .site-header.smre-header-compact {
  min-height: 74px !important;
  background: rgba(255, 255, 255, .98) !important;
  border-bottom-color: rgba(32, 36, 40, .10) !important;
  box-shadow: 0 12px 30px rgba(32, 36, 40, .12) !important;
  backdrop-filter: blur(12px) !important;
}


html body .site-header.smre-header-compact .brand {
  padding: 0 !important;
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
  transform: translateZ(0) scale(.72) !important;
}


html body .site-header.smre-header-compact .brand img {
  max-width: 330px !important;
  transform: none !important;
}


html body .site-header.smre-header-compact .main-nav a,
html body .site-header.smre-header-compact .main-nav button {
  color: #202428 !important;
}


html body .site-header.smre-header-compact .main-nav a:hover,
html body .site-header.smre-header-compact .main-nav a:focus-visible,
html body .site-header.smre-header-compact .main-nav button:hover,
html body .site-header.smre-header-compact .main-nav button:focus-visible {
  color: #d9b777 !important;
}


html body .site-header.smre-header-compact .nav-menu {
  background: #fff !important;
}


html body .site-header.smre-header-compact .nav-menu a {
  color: #202428 !important;
}


html body .site-header.smre-header-compact .header-contact {
  background: #a97832 !important;
  border-color: #a97832 !important;
  color: #fff !important;
}


html body .site-header:not(.smre-header-compact) .main-nav a,
html body .site-header:not(.smre-header-compact) .main-nav button {
  color: #202428 !important;
  text-shadow: 0 1px 12px rgba(255, 255, 255, .45) !important;
}


html body .site-header:not(.smre-header-compact) .header-contact {
  background: rgba(169, 120, 50, .92) !important;
  border-color: rgba(169, 120, 50, .92) !important;
  color: #fff !important;
  box-shadow: 0 10px 24px rgba(32, 36, 40, .14) !important;
}


@media (max-width: 900px) {
  html body .site-header {
    min-height: 86px !important;
  }

  html body .site-header .brand img {
    max-width: 260px !important;
  }

  html body .site-header.smre-header-compact {
    min-height: 68px !important;
  }

  html body .site-header.smre-header-compact .brand {
    transform: translateZ(0) scale(.76) !important;
  }

  html body .site-header.smre-header-compact .brand img {
    max-width: 260px !important;
  }
}


html body .smre-blog-page-airy {
  background: #f8f7f4 !important;
  padding-bottom: 70px !important;
}


html body .smre-blog-cover {
  box-sizing: border-box !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 46px 24px 28px !important;
  display: grid !important;
  grid-template-columns: minmax(0, .95fr) minmax(360px, .75fr) !important;
  gap: 30px !important;
  align-items: stretch !important;
}


html body .smre-blog-cover-copy {
  min-height: 330px !important;
  padding: 42px !important;
  border-radius: 10px !important;
  background: #fff !important;
  border: 1px solid rgba(32, 36, 40, .1) !important;
  box-shadow: 0 12px 26px rgba(32, 36, 40, .055) !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}


html body .smre-blog-cover-copy .eyebrow {
  color: #a97832 !important;
}


html body .smre-blog-cover-copy h1 {
  max-width: 720px !important;
  margin: 0 !important;
  color: #202428 !important;
  font-size: clamp(2.7rem, 6vw, 5.3rem) !important;
  line-height: .94 !important;
  letter-spacing: -.055em !important;
}


html body .smre-blog-cover-copy p:not(.eyebrow) {
  max-width: 680px !important;
  margin: 20px 0 0 !important;
  color: #596067 !important;
  font-size: 1.08rem !important;
  line-height: 1.58 !important;
}


html body .smre-blog-cover-photo {
  margin: 0 !important;
  min-height: 330px !important;
  overflow: hidden !important;
  border-radius: 10px !important;
  border: 1px solid rgba(32, 36, 40, .1) !important;
  box-shadow: 0 12px 26px rgba(32, 36, 40, .055) !important;
  background: #efe8dc !important;
}


html body .smre-blog-cover-photo img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}


html body .smre-blog-topics {
  max-width: 1180px !important;
  margin: 0 auto 12px !important;
  padding: 0 24px !important;
  display: flex !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
}


html body .smre-blog-topics span {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 34px !important;
  padding: 7px 12px !important;
  border-radius: 999px !important;
  background: #fff !important;
  border: 1px solid rgba(32, 36, 40, .1) !important;
  color: #202428 !important;
  font-size: .9rem !important;
  font-weight: 760 !important;
}


html body .smre-blog-list {
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  display: grid !important;
  gap: 16px !important;
}


html body .smre-blog-list-item {
  display: grid !important;
  grid-template-columns: 285px minmax(0, 1fr) !important;
  gap: 26px !important;
  align-items: stretch !important;
  padding: 18px !important;
  border-radius: 10px !important;
  background: #fff !important;
  border: 1px solid rgba(32, 36, 40, .1) !important;
  box-shadow: 0 8px 20px rgba(32, 36, 40, .05) !important;
}


html body .smre-blog-list-image {
  display: block !important;
  min-height: 190px !important;
  overflow: hidden !important;
  border-radius: 8px !important;
  background: #efe8dc !important;
}


html body .smre-blog-list-image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 190px !important;
  object-fit: cover !important;
  transition: transform .28s ease !important;
}


html body .smre-blog-list-item:hover .smre-blog-list-image img {
  transform: scale(1.035) !important;
}


html body .smre-blog-list-copy {
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: 6px 6px 6px 0 !important;
}


html body .smre-blog-list-meta {
  margin: 0 0 9px !important;
  color: #a97832 !important;
  font-size: .78rem !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  font-weight: 850 !important;
}


html body .smre-blog-list-copy h2 {
  margin: 0 !important;
  max-width: 760px !important;
  font-size: clamp(1.45rem, 2.4vw, 2.15rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -.035em !important;
}


html body .smre-blog-list-copy h2 a {
  color: #202428 !important;
  text-decoration: none !important;
}


html body .smre-blog-list-copy > p:not(.smre-blog-list-meta) {
  max-width: 760px !important;
  margin: 12px 0 0 !important;
  color: #596067 !important;
  line-height: 1.58 !important;
}


html body .smre-blog-read {
  width: fit-content !important;
  margin-top: 16px !important;
  color: #202428 !important;
  font-weight: 800 !important;
  text-decoration-color: #a97832 !important;
  text-underline-offset: 4px !important;
}


@media (max-width: 900px) {
  html body .smre-blog-cover,
  html body .smre-blog-list-item {
    grid-template-columns: 1fr !important;
  }

  html body .smre-blog-cover {
    padding-top: 28px !important;
  }

  html body .smre-blog-cover-copy,
  html body .smre-blog-cover-photo {
    min-height: 0 !important;
  }

  html body .smre-blog-cover-photo img {
    aspect-ratio: 16 / 9 !important;
  }
}


/* V4.5.8: true transparent hero header. */
html body.home .hero,
html body .hero:first-child {
  padding-top: 0 !important;
}


html body.home .hero .hero-banner,
html body .hero:first-child .hero-banner {
  margin-top: 0 !important;
  width: 100% !important;
  max-width: none !important;
  left: 0 !important;
  right: 0 !important;
}


html body.home .hero .hero-banner > img,
html body .hero:first-child .hero-banner > img {
  width: 100% !important;
}


@media (max-width: 640px) {
  html body .smre-blog-cover,
  html body .smre-blog-topics,
  html body .smre-blog-list {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  html body .smre-blog-cover-copy {
    padding: 26px !important;
  }

  html body .smre-blog-list-item {
    padding: 14px !important;
    gap: 16px !important;
  }
}


/* V4.5.9: blog page header and Michael-style archive polish. */
html body:has(.smre-blog-page-airy) .site-header {
  min-height: 92px !important;
  background: rgba(255, 255, 255, .98) !important;
  border-bottom: 1px solid rgba(32, 36, 40, .08) !important;
  box-shadow: 0 10px 28px rgba(32, 36, 40, .08) !important;
  backdrop-filter: blur(12px) !important;
}


html body:has(.smre-blog-page-airy) .site-header .brand {
  transform: none !important;
}


html body:has(.smre-blog-page-airy) .site-header .brand img {
  max-width: 300px !important;
}


html body:has(.smre-blog-page-airy) .site-header .main-nav a,
html body:has(.smre-blog-page-airy) .site-header .main-nav button {
  color: #202428 !important;
  text-shadow: none !important;
}


html body:has(.smre-blog-page-airy) .site-header .header-contact {
  background: #a97832 !important;
  border-color: #a97832 !important;
  color: #fff !important;
}


html body .smre-blog-page-airy {
  padding-top: 118px !important;
}


html body .smre-blog-cover {
  max-width: 1240px !important;
  padding: 28px 24px 30px !important;
  grid-template-columns: minmax(0, .82fr) minmax(420px, 1fr) !important;
  gap: 36px !important;
  align-items: center !important;
}


html body .smre-blog-cover-copy {
  min-height: 0 !important;
  padding: 24px 0 24px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}


html body .smre-blog-cover-copy h1 {
  max-width: 640px !important;
  font-size: clamp(3.1rem, 6.4vw, 6.15rem) !important;
  line-height: .9 !important;
}


html body .smre-blog-cover-copy p:not(.eyebrow) {
  max-width: 580px !important;
  font-size: 1.12rem !important;
}


html body .smre-blog-cover-photo {
  min-height: 430px !important;
  border-radius: 8px !important;
  box-shadow: 0 18px 42px rgba(32, 36, 40, .10) !important;
}


html body .smre-blog-topics {
  max-width: 1240px !important;
  margin-bottom: 18px !important;
}


html body .smre-blog-list {
  max-width: 1240px !important;
  gap: 18px !important;
}


html body .smre-blog-list-item {
  grid-template-columns: 310px minmax(0, 1fr) !important;
  gap: 28px !important;
  padding: 18px !important;
  border-radius: 8px !important;
  box-shadow: 0 8px 22px rgba(32, 36, 40, .045) !important;
}


html body .smre-blog-list-copy h2 {
  max-width: 820px !important;
  font-size: clamp(1.55rem, 2.25vw, 2.25rem) !important;
  letter-spacing: -.04em !important;
}


/* V4.6.0: long-form blog article polish. */
html body .smre-blog-article.smre-longform {
  background: #fbfaf7 !important;
}


html body .smre-longform .smre-article-hero {
  max-width: 1120px !important;
  padding: 138px 24px 34px !important;
}


html body .smre-longform .smre-article-hero h1 {
  max-width: 920px !important;
  font-size: clamp(2.6rem, 5.4vw, 5.2rem) !important;
  line-height: .94 !important;
  letter-spacing: -.045em !important;
  text-wrap: balance !important;
}


html body .smre-longform .smre-article-hero > p:not(.eyebrow),
html body .smre-longform .smre-article-meta {
  max-width: 760px !important;
}


html body .smre-article-featured {
  margin: 32px 0 0 !important;
  overflow: hidden !important;
  border-radius: 10px !important;
  background: #eee8dc !important;
  box-shadow: 0 18px 42px rgba(32, 36, 40, .10) !important;
}


html body .smre-article-featured img {
  display: block !important;
  width: 100% !important;
  height: min(52vw, 520px) !important;
  object-fit: cover !important;
}


html body .smre-longform .smre-article-layout {
  max-width: 1120px !important;
  align-items: start !important;
}


html body .smre-longform .smre-article-body {
  font-size: 1.05rem !important;
  line-height: 1.72 !important;
}


html body .smre-longform .smre-article-body section {
  margin: 0 0 34px !important;
}


html body .smre-longform .smre-article-body h2 {
  margin: 0 0 14px !important;
  font-size: clamp(1.55rem, 2.4vw, 2.15rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -.035em !important;
  text-wrap: balance !important;
}


html body .smre-longform .smre-article-body h3 {
  margin: 0 0 12px !important;
  font-size: 1.12rem !important;
}


html body .smre-longform .smre-article-body p,
html body .smre-longform .smre-article-body li {
  color: #34383a !important;
}


html body .smre-toc,
html body .smre-visual-note,
html body .smre-article-table,
html body .smre-article-cta {
  margin: 0 0 34px !important;
  padding: 24px !important;
  border: 1px solid rgba(32, 36, 40, .10) !important;
  border-radius: 8px !important;
  background: #f3eee4 !important;
}


html body .smre-toc h2 {
  font-size: 1.15rem !important;
}


html body .smre-toc ol {
  margin: 12px 0 0 !important;
  padding-left: 20px !important;
}


html body .smre-article-table {
  overflow-x: auto !important;
}


html body .smre-article-table table {
  width: 100% !important;
  border-collapse: collapse !important;
}


html body .smre-article-table th,
html body .smre-article-table td {
  padding: 14px 12px !important;
  border-bottom: 1px solid rgba(32, 36, 40, .10) !important;
  vertical-align: top !important;
  text-align: left !important;
}


html body .smre-article-table th {
  width: 28% !important;
  color: #17324d !important;
}


html body .smre-visual-note ul {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px 18px !important;
  margin-bottom: 0 !important;
}


html body .smre-faq details {
  margin: 0 0 10px !important;
  padding: 16px 18px !important;
  border: 1px solid rgba(32, 36, 40, .10) !important;
  border-radius: 8px !important;
  background: #fff !important;
}


html body .smre-faq summary {
  cursor: pointer !important;
  font-weight: 800 !important;
  color: #17324d !important;
}


html body .smre-article-cta {
  background: #17324d !important;
  color: #fff !important;
}


html body .smre-article-cta p,
html body .smre-article-cta h2 {
  color: #fff !important;
}


html body .smre-longform .smre-related-box {
  position: sticky !important;
  top: 112px !important;
}


/* V4.6.1: tighten long-form article spacing after the content expansion. */
html body .smre-longform .smre-article-body > section {
  padding: 0 !important;
  margin: 0 0 26px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}


html body .smre-longform .smre-article-body > section > h2 {
  margin-bottom: 12px !important;
}


html body .smre-longform .smre-article-body > section > p {
  margin: 0 0 14px !important;
}


html body .smre-longform .smre-article-body > section > p:last-child,
html body .smre-longform .smre-article-body > section > ul:last-child,
html body .smre-longform .smre-article-body > section > ol:last-child {
  margin-bottom: 0 !important;
}


html body .smre-longform .smre-article-body > .smre-faq,
html body .smre-longform .smre-article-body > .smre-article-cta {
  padding: 24px !important;
  border: 1px solid rgba(32, 36, 40, .10) !important;
  border-radius: 8px !important;
  box-shadow: none !important;
}


html body .smre-longform .smre-article-body > .smre-article-cta {
  background: #17324d !important;
}


html body .smre-longform .smre-article-body > .smre-article-cta p,
html body .smre-longform .smre-article-body > .smre-article-cta h2,
html body .smre-longform .smre-article-body > .smre-article-cta a:not(.primary-button) {
  color: #fff !important;
}


html body .smre-longform .smre-article-body > .smre-article-cta p {
  opacity: .94 !important;
}


/* V4.6.2: editorial benchmark visuals for the depreciation report guide. */
html body .smre-master-guide .smre-component-visual,
html body .smre-master-guide .smre-timing-visual,
html body .smre-master-guide .smre-condo-compare,
html body .smre-master-guide .smre-doc-flow,
html body .smre-master-guide .smre-checklist {
  margin: 24px 0 !important;
}


html body .smre-master-guide .smre-component-visual {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 12px !important;
  padding: 22px !important;
  border: 1px solid rgba(32, 36, 40, .10) !important;
  border-radius: 10px !important;
  background: linear-gradient(135deg, #f7f3ec, #fff) !important;
}


html body .smre-master-guide .smre-component-visual div {
  min-height: 92px !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
  padding: 14px 10px !important;
  border: 1px solid rgba(32, 36, 40, .12) !important;
  border-radius: 8px !important;
  background: #fff !important;
  position: relative !important;
  overflow: hidden !important;
}


html body .smre-master-guide .smre-component-visual div::before {
  content: "" !important;
  position: absolute !important;
  inset: 12px 18px 42px !important;
  border: 2px solid rgba(181, 138, 69, .45) !important;
  border-bottom-width: 6px !important;
  border-radius: 7px 7px 3px 3px !important;
}


html body .smre-master-guide .smre-component-visual span {
  position: relative !important;
  z-index: 1 !important;
  font-size: .82rem !important;
  font-weight: 850 !important;
  text-align: center !important;
  color: #202428 !important;
}


html body .smre-master-guide .smre-timing-visual,
html body .smre-master-guide .smre-condo-compare {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
}


html body .smre-master-guide .smre-timing-visual article,
html body .smre-master-guide .smre-condo-compare article {
  border: 1px solid rgba(32, 36, 40, .12) !important;
  border-radius: 10px !important;
  padding: 22px !important;
  background: #f7f3ec !important;
}


html body .smre-master-guide .smre-timing-visual article:nth-child(2) {
  background: #202428 !important;
}


html body .smre-master-guide .smre-timing-visual article:nth-child(2) h3,
html body .smre-master-guide .smre-timing-visual article:nth-child(2) p {
  color: #fff !important;
}


html body .smre-master-guide .smre-timing-visual h3,
html body .smre-master-guide .smre-condo-compare h3 {
  margin: 6px 0 10px !important;
  font-size: 1.55rem !important;
}


html body .smre-master-guide .smre-condo-compare ul,
html body .smre-master-guide .smre-checklist ul {
  padding-left: 0 !important;
  list-style: none !important;
}


html body .smre-master-guide .smre-condo-compare li,
html body .smre-master-guide .smre-checklist li {
  position: relative !important;
  padding-left: 28px !important;
  margin: 10px 0 !important;
}


html body .smre-master-guide .smre-condo-compare li::before,
html body .smre-master-guide .smre-checklist li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: .55em !important;
  width: 12px !important;
  height: 12px !important;
  border: 2px solid #B58A45 !important;
  border-radius: 3px !important;
}


html body .smre-master-guide .smre-doc-flow {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 10px !important;
  padding: 18px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(32, 36, 40, .10) !important;
  background: #fff !important;
}


html body .smre-master-guide .smre-doc-flow span,
html body .smre-master-guide .smre-doc-flow strong {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 74px !important;
  padding: 12px !important;
  border-radius: 8px !important;
  text-align: center !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
}


html body .smre-master-guide .smre-doc-flow span {
  background: #f7f3ec !important;
  color: #202428 !important;
}


html body .smre-master-guide .smre-doc-flow strong {
  grid-column: 1 / -1 !important;
  min-height: 56px !important;
  background: #202428 !important;
  color: #fff !important;
}


html body .smre-master-guide .smre-checklist {
  padding: 26px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(181, 138, 69, .28) !important;
  background: #f7f3ec !important;
}


html body .smre-master-guide .smre-checklist h3 {
  margin-top: 0 !important;
}


html body .smre-master-guide .smre-checklist ul {
  column-count: 2 !important;
  column-gap: 28px !important;
}


@media (max-width: 980px) {
  html body:has(.smre-blog-page-airy) .site-header {
    min-height: 76px !important;
  }

  html body:has(.smre-blog-page-airy) .site-header .brand img {
    max-width: 255px !important;
  }

  html body .smre-blog-page-airy {
    padding-top: 94px !important;
  }

  html body .smre-blog-cover {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
    padding-top: 12px !important;
  }

  html body .smre-blog-cover-photo {
    min-height: 0 !important;
  }

  html body .smre-longform .smre-article-hero {
    padding-top: 104px !important;
  }

  html body .smre-longform .smre-related-box {
    position: static !important;
  }
}


@media (max-width: 640px) {
  html body .smre-blog-page-airy {
    padding-top: 86px !important;
  }

  html body .smre-blog-cover-copy h1 {
    font-size: clamp(2.65rem, 14vw, 4.15rem) !important;
  }

  html body .smre-blog-topics {
    gap: 7px !important;
  }

  html body .smre-blog-topics span {
    min-height: 32px !important;
    padding: 6px 10px !important;
    font-size: .84rem !important;
  }

  html body .smre-longform .smre-article-hero {
    padding: 92px 18px 26px !important;
  }

  html body .smre-article-featured img {
    height: 62vw !important;
  }

  html body .smre-longform .smre-article-body {
    font-size: 1rem !important;
    line-height: 1.66 !important;
  }

  html body .smre-toc,
  html body .smre-visual-note,
  html body .smre-article-table,
  html body .smre-article-cta {
    padding: 18px !important;
  }

  html body .smre-article-table th,
  html body .smre-article-table td {
    display: block !important;
    width: 100% !important;
    padding: 10px 0 !important;
  }

  html body .smre-article-table th {
    border-bottom: 0 !important;
  }

  html body .smre-visual-note ul {
    grid-template-columns: 1fr !important;
  }

  html body .smre-longform .smre-article-body > section {
    margin-bottom: 22px !important;
  }

  html body .smre-longform .smre-article-body > .smre-faq,
  html body .smre-longform .smre-article-body > .smre-article-cta {
    padding: 18px !important;
  }

  html body .smre-master-guide .smre-component-visual {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    padding: 14px !important;
  }

  html body .smre-master-guide .smre-timing-visual,
  html body .smre-master-guide .smre-condo-compare,
  html body .smre-master-guide .smre-doc-flow {
    grid-template-columns: 1fr !important;
  }

  html body .smre-master-guide .smre-doc-flow strong {
    grid-column: auto !important;
  }

  html body .smre-master-guide .smre-checklist {
    padding: 18px !important;
  }

  html body .smre-master-guide .smre-checklist ul {
    column-count: 1 !important;
  }
}



/* V4.6.4 BLOG BENCHMARK: repaired icon cards and subject-specific blog visuals. */
html body .smre-master-guide .smre-component-visual div{align-items:center !important;justify-content:center !important;flex-direction:column !important;gap:10px !important;min-height:118px !important;padding:16px 12px !important;overflow:visible !important;}

html body .smre-master-guide .smre-component-visual div::before{content:"" !important;position:static !important;display:block !important;width:42px !important;height:42px !important;border:0 !important;border-radius:0 !important;background-color:#B58A45 !important;background-repeat:no-repeat !important;background-position:center !important;background-size:42px 42px !important;opacity:.95 !important;}

html body .smre-master-guide .smre-component-visual div[data-component="roof"]::before{mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="black" d="M8 31 32 12l24 19v5h-6v17H14V36H8v-5Zm14 22h8V39h4v14h8V32L32 24 22 32v21Z"/></svg>') center/contain no-repeat;-webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="black" d="M8 31 32 12l24 19v5h-6v17H14V36H8v-5Zm14 22h8V39h4v14h8V32L32 24 22 32v21Z"/></svg>') center/contain no-repeat;}

html body .smre-master-guide .smre-component-visual div[data-component="envelope"]::before{mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="black" d="M12 10h40v44H12V10Zm6 6v14h11V16H18Zm17 0v14h11V16H35ZM18 36v12h11V36H18Zm17 0v12h11V36H35Z"/></svg>') center/contain no-repeat;-webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="black" d="M12 10h40v44H12V10Zm6 6v14h11V16H18Zm17 0v14h11V16H35ZM18 36v12h11V36H18Zm17 0v12h11V36H35Z"/></svg>') center/contain no-repeat;}

html body .smre-master-guide .smre-component-visual div[data-component="balcony"]::before{mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="black" d="M14 12h36v22H14V12Zm6 6v10h24V18H20Zm-5 22h34v6H15v-6Zm3 8h6v8h-6v-8Zm11 0h6v8h-6v-8Zm11 0h6v8h-6v-8Z"/></svg>') center/contain no-repeat;-webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="black" d="M14 12h36v22H14V12Zm6 6v10h24V18H20Zm-5 22h34v6H15v-6Zm3 8h6v8h-6v-8Zm11 0h6v8h-6v-8Zm11 0h6v8h-6v-8Z"/></svg>') center/contain no-repeat;}

html body .smre-master-guide .smre-component-visual div[data-component="elevator"]::before{mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="black" d="M16 8h32v48H16V8Zm6 6v36h8V14h-8Zm12 0v36h8V14h-8ZM28 6l4-4 4 4h-8Zm0 52h8l-4 4-4-4Z"/></svg>') center/contain no-repeat;-webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="black" d="M16 8h32v48H16V8Zm6 6v36h8V14h-8Zm12 0v36h8V14h-8ZM28 6l4-4 4 4h-8Zm0 52h8l-4 4-4-4Z"/></svg>') center/contain no-repeat;}

html body .smre-master-guide .smre-component-visual div[data-component="mechanical"]::before{mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="black" d="M28 6h8l2 8 7 3 7-4 5 7-6 6 1 8 8 4-3 8-9-1-6 5-1 9h-8l-2-9-7-3-7 4-5-7 6-6-1-8-8-4 3-8 9 1 6-5 1-9Zm4 18a8 8 0 1 0 0 16 8 8 0 0 0 0-16Z"/></svg>') center/contain no-repeat;-webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="black" d="M28 6h8l2 8 7 3 7-4 5 7-6 6 1 8 8 4-3 8-9-1-6 5-1 9h-8l-2-9-7-3-7 4-5-7 6-6-1-8-8-4 3-8 9 1 6-5 1-9Zm4 18a8 8 0 1 0 0 16 8 8 0 0 0 0-16Z"/></svg>') center/contain no-repeat;}

html body .smre-master-guide .smre-component-visual div[data-component="plumbing"]::before{mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="black" d="M12 18h28a12 12 0 0 1 0 24H30v10h-8V34h18a4 4 0 0 0 0-8H12v-8Zm8-8h8v16h-8V10Zm26 34c6 7 8 11 8 15a8 8 0 0 1-16 0c0-4 2-8 8-15Z"/></svg>') center/contain no-repeat;-webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="black" d="M12 18h28a12 12 0 0 1 0 24H30v10h-8V34h18a4 4 0 0 0 0-8H12v-8Zm8-8h8v16h-8V10Zm26 34c6 7 8 11 8 15a8 8 0 0 1-16 0c0-4 2-8 8-15Z"/></svg>') center/contain no-repeat;}

html body .smre-master-guide .smre-component-visual div[data-component="parkade"]::before{mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="black" d="M12 12h40v40H12V12Zm11 8v24h7v-8h6c6 0 10-3 10-8s-4-8-10-8H23Zm7 6h6c2 0 3 1 3 2s-1 2-3 2h-6v-4Z"/></svg>') center/contain no-repeat;-webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="black" d="M12 12h40v40H12V12Zm11 8v24h7v-8h6c6 0 10-3 10-8s-4-8-10-8H23Zm7 6h6c2 0 3 1 3 2s-1 2-3 2h-6v-4Z"/></svg>') center/contain no-repeat;}

html body .smre-master-guide .smre-component-visual div[data-component="common"]::before{mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="black" d="M10 54V18l16-8 16 8v8h12v28H10Zm8-6h8V18l-8 4v26Zm14 0h8V22l-8-4v30Zm14 0h4V32h-4v16Z"/></svg>') center/contain no-repeat;-webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64"><path fill="black" d="M10 54V18l16-8 16 8v8h12v28H10Zm8-6h8V18l-8 4v26Zm14 0h8V22l-8-4v30Zm14 0h4V32h-4v16Z"/></svg>') center/contain no-repeat;}

html body .smre-teaching-block,html body .smre-design-lab,html body .smre-source-box{margin:0 0 34px !important;padding:24px !important;border:1px solid rgba(32,36,40,.10) !important;border-radius:8px !important;background:#f7f3ec !important;}

html body .smre-process-strip{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:12px !important;margin:18px 0 !important;}

html body .smre-process-strip span,html body .smre-visual-grid article,html body .smre-compare-cards article{background:#fff !important;border:1px solid rgba(32,36,40,.10) !important;border-radius:8px !important;padding:16px !important;box-shadow:0 8px 18px rgba(32,36,40,.05) !important;}

html body .smre-process-strip strong,html body .smre-visual-grid strong{display:block !important;color:#202428 !important;margin-bottom:6px !important;}

html body .smre-process-strip small{display:block !important;color:#4f565b !important;line-height:1.45 !important;}

html body .smre-compare-cards{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:16px !important;margin:18px 0 !important;}

html body .smre-visual-grid{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:14px !important;margin:18px 0 !important;}

html body .smre-before-better{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:16px !important;margin:20px 0 !important;}

html body .smre-before-better article{padding:18px !important;border-radius:8px !important;border:1px solid rgba(32,36,40,.12) !important;background:#fff !important;}

html body .smre-before-better article:first-child{background:#f1eee8 !important;}

html body .smre-before-better article:nth-child(2){border-color:rgba(181,138,69,.35) !important;box-shadow:inset 4px 0 0 #B58A45 !important;}

html body .smre-room-diagram{position:relative !important;min-height:360px !important;border:1px solid rgba(32,36,40,.12) !important;border-radius:10px !important;background:linear-gradient(135deg,#fff,#f3eee4) !important;margin:20px 0 !important;overflow:hidden !important;}

html body .smre-room-diagram span{position:absolute !important;border:1px solid rgba(32,36,40,.16) !important;border-radius:8px !important;background:#fff !important;color:#202428 !important;font-weight:800 !important;text-align:center !important;padding:10px !important;box-sizing:border-box !important;}

html body .smre-room-diagram .sofa{left:8%;top:16%;width:46%;height:64px !important;}
.smre-room-diagram .coffee{left:22%;top:42%;width:30%;}
.smre-room-diagram .chair{right:10%;top:20%;width:20%;height:76px !important;}
.smre-room-diagram .rug{left:13%;top:35%;width:50%;height:150px !important;background:rgba(181,138,69,.12) !important;}
.smre-room-diagram .tv{left:16%;bottom:9%;width:42%;}
.smre-room-diagram .path{right:7%;bottom:12%;width:28%;height:190px !important;background:rgba(32,36,40,.06) !important;display:flex !important;align-items:center !important;}

html body .smre-palette{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:12px !important;margin:18px 0 !important;}

html body .smre-palette span{display:block !important;min-height:130px !important;border-radius:9px !important;padding:14px !important;background:var(--swatch) !important;border:1px solid rgba(32,36,40,.14) !important;color:#fff !important;box-shadow:inset 0 -62px 0 rgba(0,0,0,.25) !important;}

html body .smre-palette span:nth-child(2){color:#202428 !important;box-shadow:inset 0 -62px 0 rgba(255,255,255,.45) !important;}

html body .smre-palette strong,html body .smre-palette small{display:block !important;}

html body .smre-wall-diagram,html body .smre-doc-flow-wide{display:grid !important;grid-template-columns:repeat(5,minmax(0,1fr)) !important;gap:10px !important;margin:20px 0 !important;}

html body .smre-wall-diagram span,html body .smre-wall-diagram strong{padding:16px 10px !important;border-radius:8px !important;background:#fff !important;border:1px solid rgba(32,36,40,.12) !important;text-align:center !important;font-weight:800 !important;}

html body .smre-wall-diagram strong{background:#202428 !important;color:#fff !important;}

html body .smre-decision-matrix{display:grid !important;grid-template-columns:repeat(4,minmax(0,1fr)) !important;gap:10px !important;margin:18px 0 !important;}

html body .smre-decision-matrix span{background:#fff !important;border-left:4px solid #B58A45 !important;border-radius:8px !important;padding:14px !important;font-weight:800 !important;}

@media(max-width:860px){html body .smre-process-strip,html body .smre-palette,html body .smre-decision-matrix{grid-template-columns:1fr 1fr !important;}html body .smre-compare-cards,html body .smre-before-better,html body .smre-visual-grid{grid-template-columns:1fr !important;}html body .smre-room-diagram{min-height:420px !important;}html body .smre-master-guide .smre-component-visual{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}html body .smre-wall-diagram,html body .smre-doc-flow-wide{grid-template-columns:1fr !important;}}

@media(max-width:520px){html body .smre-process-strip,html body .smre-palette,html body .smre-decision-matrix,html body .smre-master-guide .smre-component-visual{grid-template-columns:1fr !important;}html body .smre-room-diagram{min-height:470px !important;}html body .smre-room-diagram .sofa,html body .smre-room-diagram .coffee,html body .smre-room-diagram .chair,html body .smre-room-diagram .rug,html body .smre-room-diagram .tv,html body .smre-room-diagram .path{position:static !important;width:auto !important;height:auto !important;margin:10px !important;display:block !important;}}


html body .smre-master-guide .smre-component-visual div[data-component]::before{background-color:transparent !important;background-repeat:no-repeat !important;background-position:center !important;background-size:42px 42px !important;mask:none !important;-webkit-mask:none !important;}

html body .smre-master-guide .smre-component-visual div[data-component="roof"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath fill='%23B58A45' d='M8 31 32 12l24 19v5h-6v17H14V36H8v-5Zm14 22h8V39h4v14h8V32L32 24 22 32v21Z'/%3E%3C/svg%3E") !important;}

html body .smre-master-guide .smre-component-visual div[data-component="envelope"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath fill='%23B58A45' d='M12 10h40v44H12V10Zm6 6v14h11V16H18Zm17 0v14h11V16H35ZM18 36v12h11V36H18Zm17 0v12h11V36H35Z'/%3E%3C/svg%3E") !important;}

html body .smre-master-guide .smre-component-visual div[data-component="balcony"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath fill='%23B58A45' d='M14 12h36v22H14V12Zm6 6v10h24V18H20Zm-5 22h34v6H15v-6Zm3 8h6v8h-6v-8Zm11 0h6v8h-6v-8Zm11 0h6v8h-6v-8Z'/%3E%3C/svg%3E") !important;}

html body .smre-master-guide .smre-component-visual div[data-component="elevator"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath fill='%23B58A45' d='M16 8h32v48H16V8Zm6 6v36h8V14h-8Zm12 0v36h8V14h-8ZM28 6l4-4 4 4h-8Zm0 52h8l-4 4-4-4Z'/%3E%3C/svg%3E") !important;}

html body .smre-master-guide .smre-component-visual div[data-component="mechanical"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath fill='%23B58A45' d='M28 6h8l2 8 7 3 7-4 5 7-6 6 1 8 8 4-3 8-9-1-6 5-1 9h-8l-2-9-7-3-7 4-5-7 6-6-1-8-8-4 3-8 9 1 6-5 1-9Zm4 18a8 8 0 1 0 0 16 8 8 0 0 0 0-16Z'/%3E%3C/svg%3E") !important;}

html body .smre-master-guide .smre-component-visual div[data-component="plumbing"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath fill='%23B58A45' d='M12 18h28a12 12 0 0 1 0 24H30v10h-8V34h18a4 4 0 0 0 0-8H12v-8Zm8-8h8v16h-8V10Zm26 34c6 7 8 11 8 15a8 8 0 0 1-16 0c0-4 2-8 8-15Z'/%3E%3C/svg%3E") !important;}

html body .smre-master-guide .smre-component-visual div[data-component="parkade"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath fill='%23B58A45' d='M12 12h40v40H12V12Zm11 8v24h7v-8h6c6 0 10-3 10-8s-4-8-10-8H23Zm7 6h6c2 0 3 1 3 2s-1 2-3 2h-6v-4Z'/%3E%3C/svg%3E") !important;}

html body .smre-master-guide .smre-component-visual div[data-component="common"]::before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath fill='%23B58A45' d='M10 54V18l16-8 16 8v8h12v28H10Zm8-6h8V18l-8 4v26Zm14 0h8V22l-8-4v30Zm14 0h4V32h-4v16Z'/%3E%3C/svg%3E") !important;}


/* V4.6.6 BLOG DEEP REBUILD: richer article-specific teaching layouts. */
html body .smre-deep-guide,
html body .smre-teaching-block,
html body .smre-design-lab{margin:34px 0 !important;}

html body .smre-article-body .smre-process-strip span,
html body .smre-article-body .smre-doc-flow-wide span,
html body .smre-article-body .smre-doc-flow-wide strong{
  min-height:72px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}

html body .smre-article-body .smre-wall-diagram div,
html body .smre-article-body .smre-before-better article,
html body .smre-article-body .smre-visual-grid article,
html body .smre-article-body .smre-compare-cards article{
  box-shadow:0 16px 34px rgba(37,47,50,.08) !important;
}

html body .smre-article-body .smre-palette span{
  min-height:118px !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:center !important;
  padding:14px !important;
  color:#243033 !important;
  font-weight:800 !important;
  text-shadow:0 1px 0 rgba(255,255,255,.45) !important;
}

html body .smre-article-body .smre-room-diagram span{
  box-sizing:border-box !important;
  line-height:1.25 !important;
}

html body .smre-article-body .smre-article-table{
  max-width:100% !important;
  overflow-x:auto !important;
  -webkit-overflow-scrolling:touch !important;
}

html body .smre-article-body .smre-checklist h2 + ul{
  margin-top:8px !important;
}

@media(max-width:720px){
  html body .smre-article-body .smre-doc-flow-wide,
  html body .smre-article-body .smre-process-strip,
  html body .smre-article-body .smre-palette{
    grid-template-columns:1fr !important;
  }
  html body .smre-article-body .smre-before-better,
  html body .smre-article-body .smre-compare-cards,
  html body .smre-article-body .smre-visual-grid,
  html body .smre-article-body .smre-wall-diagram{
    grid-template-columns:1fr !important;
  }
  html body .smre-article-body .smre-room-diagram{
    min-height:auto !important;
    display:grid !important;
    gap:10px !important;
    background:#F5F1EA !important;
  }
}

/* END V4.6.4 BLOG BENCHMARK */
/* Article 1 public-render corrections, scoped to Strata Documents. */
html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-doc-flow-wide {
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:10px !important;
}

html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-doc-flow-wide span,
html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-doc-flow-wide strong {
  display:flex !important; align-items:center !important; justify-content:center !important;
  padding:14px !important; background:#f3f0ea !important; border:1px solid #e4d2b4 !important;
  border-radius:8px !important; text-align:center !important; min-height:72px !important; box-sizing:border-box !important;
}

html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-doc-flow-wide strong {grid-column:1/-1 !important; color:#8b642d !important;}

html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) table {min-width:780px !important;}

html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .site-footer > p:nth-child(2) {display:none !important;}

@media(max-width:600px){
html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-doc-flow-wide {grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
}


/* V4.6.8: blog cover-image fallback and no-side-scroll document table. */
html body .smre-scope-note {
  margin: 24px 0 !important;
  padding: 18px 20px !important;
  border-left: 4px solid #b58a45 !important;
  border-radius: 0 10px 10px 0 !important;
  background: #f3f0ea !important;
  color: #394146 !important;
}

html body .smre-scope-note h3 { margin: 0 0 7px !important; color: #202428 !important; }

html body .smre-scope-note p { margin: 0 !important; line-height: 1.62 !important; }


/* The strata-document matrix needs the full readable content column on a
   computer, not a narrow column beside an otherwise empty sidebar. */
html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-layout {
  grid-template-columns: minmax(0,1fr) !important;
}

html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-related-box {
  position: static !important;
  max-width: none !important;
}

html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) table {
  min-width: 0 !important;
  width: 100% !important;
  table-layout: fixed !important;
}

html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) th,
html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) td {
  overflow-wrap: anywhere !important;
  vertical-align: top !important;
}

@media (max-width: 680px) {
  html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) {
    overflow: visible !important;
    padding: 0 !important;
    background: transparent !important;
  }
  html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) table,
  html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) tbody,
  html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) tr,
  html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) th,
  html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) td {
    display: block !important;
    width: auto !important;
  }
  html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) thead { display: none !important; }
  html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) tr {
    margin: 0 0 14px !important;
    padding: 15px !important;
    border: 1px solid #ded4c2 !important;
    border-radius: 10px !important;
    background: #fff !important;
  }
  html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) th {
    padding: 0 0 9px !important;
    color: #202428 !important;
    font-size: 1.05rem !important;
  }
  html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) td {
    padding: 0 0 12px !important;
    border: 0 !important;
  }
  html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) td:last-child { padding-bottom: 0 !important; }
  html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) td::before {
    display: block !important;
    margin-bottom: 4px !important;
    color: #8b642d !important;
    font-size: .76rem !important;
    font-weight: 800 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
  }
  html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) td:nth-child(2)::before { content: 'What to look for'; }
  html:has(link[rel="canonical"][href*="/how-to-read-strata-documents-bc/"]) body .smre-article-table:has(th:nth-child(3)) td:nth-child(3)::before { content: 'How to connect it'; }
}

/* V4.6.9: West Coast editorial finish. Kept in the existing design layer so
   templates, lead forms, navigation, and search routing remain intact. */
:root {
  --spencer-warm-white: #f8f6f2 !important;
  --spencer-stone: #eeeae2 !important;
  --spencer-body: #55534e !important;
  --spencer-charcoal: #1a1a1a !important;
  --spencer-charcoal-deep: #1a1a1a !important;
}

html body { background: #f8f6f2 !important; color: #55534e !important; }

html body h1, html body h2, html body h3,
html body .section-heading h2, html body .mobile-home-intro h2,
html body .home-island-callout h2, html body .home-connect-heading h2 {
  font-family: Georgia, 'Times New Roman', serif !important;
  color: #1a1a1a !important;
  font-weight: 400 !important;
  letter-spacing: -.035em !important;
  line-height: 1.13 !important;
}

html body .parallax-copy h2 {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-weight: 400 !important;
  letter-spacing: -.035em !important;
  color: #fff !important;
}

html body .eyebrow { letter-spacing: .18em !important; }

html body .site-header:not(.smre-header-compact) {
  background: #1a1a1a !important;
  border-bottom-color: rgba(255,255,255,.12) !important;
}

html body .site-header:not(.smre-header-compact) .brand img {
  filter: brightness(0) invert(1) !important;
}

html body .site-header:not(.smre-header-compact) .main-nav a,
html body .site-header:not(.smre-header-compact) .main-nav button {
  color: #f8f6f2 !important;
  text-shadow: none !important;
}

html body .site-header:not(.smre-header-compact) .main-nav a:hover,
html body .site-header:not(.smre-header-compact) .main-nav button:hover { color: #d2ad70 !important; }

html body .site-header:not(.smre-header-compact) .nav-menu {
  background: #f8f6f2 !important;
}

html body .site-header:not(.smre-header-compact) .nav-menu a { color: #1a1a1a !important; }

html body .site-header.smre-header-compact { background: rgba(248,246,242,.97) !important; }

html body .site-header.smre-header-compact .brand img { filter: none !important; }

html body .primary-button, html body a.primary-button, html body button.primary-button,
html body .header-contact {
  border-radius: 9px !important;
  transition: background-color .25s ease, box-shadow .25s ease, transform .25s ease !important;
}

html body .primary-button:hover, html body a.primary-button:hover,
html body button.primary-button:hover { box-shadow: 0 9px 20px rgba(99,69,30,.18) !important; }

html body .popular-card, html body .service-card, html body .info-card,
html body .listing-card, html body .feature-card { border-radius: 13px !important; }

html body .site-footer, html body footer { background: #202428 !important; }

html body .home-links, html body .home-neighbourhoods,
html body .home-island-search, html body .home-connect-section {
  padding-top: clamp(42px, 5vw, 68px) !important;
  padding-bottom: clamp(42px, 5vw, 68px) !important;
}

html body .mobile-testimonial-section blockquote,
html body .testimonial-card blockquote {
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(1.15rem, 2vw, 1.65rem) !important;
  line-height: 1.5 !important;
}

html body .chat-toggle {
  border-radius: 10px !important;
  box-shadow: 0 7px 18px rgba(20,18,15,.16) !important;
}


/* The homepage image already belongs to this site. An overlay makes its
   photograph readable without a boxed headline or heavy visual treatment. */
html body .hero .hero-banner {
  position: relative !important;
  overflow: hidden !important;
  background: #302c28 !important;
}

html body .hero .hero-banner::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background: linear-gradient(90deg, rgba(14,14,14,.66) 0%, rgba(14,14,14,.30) 55%, rgba(14,14,14,.15) 100%) !important;
}

html body .hero .hero-banner > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center 54% !important;
}

html body .hero .hero-banner-copy { z-index: 2 !important; }

html body .hero .hero-banner-copy h1 {
  max-width: 800px !important;
  color: #fff !important;
  font-family: Georgia, 'Times New Roman', serif !important;
  font-size: clamp(3rem, 5vw, 5.6rem) !important;
  font-weight: 400 !important;
  line-height: 1.06 !important;
  letter-spacing: -.045em !important;
  text-shadow: 0 2px 22px rgba(0,0,0,.32) !important;
}

html body .hero .hero-banner-copy span {
  color: #f5f0e9 !important;
  font-weight: 400 !important;
  text-shadow: 0 2px 12px rgba(0,0,0,.5) !important;
}

html body .hero .hero-search {
  background: rgba(248,246,242,.98) !important;
  border-radius: 13px !important;
  box-shadow: 0 14px 38px rgba(20,18,15,.18) !important;
}

html body .hero .hero-search input, html body .hero .hero-search select {
  background: #f8f6f2 !important;
  border-radius: 8px !important;
}


/* Real local photographs replace the flat initials-only homepage cards. */
html body .home-neighbourhoods { background: #f8f6f2 !important; }

html body .home-neighbourhoods .section-heading h2 {
  border-left: 0 !important;
  padding: 0 !important;
}

html body .home-neighbourhoods .section-heading h2::after {
  content: '' !important;
  display: block !important;
  width: 48px !important;
  height: 2px !important;
  margin: 13px 0 0 !important;
  background: #b58a45 !important;
}

html body .home-neighbourhood-grid { gap: 18px !important; }

html body .home-neighbourhood-grid .compact-neighbourhood-card {
  display: flex !important;
  flex-direction: column !important;
  padding: 0 !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: hidden !important;
  color: #1a1a1a !important;
  background: #fdfbf8 !important;
  border: 1px solid rgba(70,60,45,.13) !important;
  border-radius: 13px !important;
  box-shadow: 0 7px 20px rgba(42,35,25,.07) !important;
  text-decoration: none !important;
  transition: transform .25s ease, box-shadow .25s ease !important;
}

html body .home-neighbourhood-grid .compact-neighbourhood-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 13px 27px rgba(42,35,25,.12) !important;
}

html body .home-neighbourhood-grid .compact-neighbourhood-card img {
  width: 100% !important;
  height: 175px !important;
  display: block !important;
  object-fit: cover !important;
  filter: saturate(.83) contrast(.97) !important;
}

html body .home-neighbourhood-grid .compact-neighbourhood-card > span:not(.smre-card-code) {
  display: grid !important;
  align-content: center !important;
  gap: 7px !important;
  width: 100% !important;
  padding: 18px 20px 20px !important;
  color: #1a1a1a !important;
  background: transparent !important;
  position: static !important;
  transform: none !important;
}

html body .home-neighbourhood-grid .compact-neighbourhood-card strong {
  font: 400 clamp(1.35rem, 2vw, 1.65rem)/1.12 Georgia, 'Times New Roman', serif !important;
}

html body .home-neighbourhood-grid .compact-neighbourhood-card small {
  color: #5c5852 !important;
  font-size: .91rem !important;
  line-height: 1.42 !important;
}

html body .home-neighbourhood-grid .compact-neighbourhood-card em {
  color: #90692f !important;
  font-size: .83rem !important;
  font-style: normal !important;
  font-weight: 600 !important;
}

html body .home-neighbourhood-grid .compact-neighbourhood-card .smre-card-code {
  color: rgba(255,255,255,.85) !important;
  text-shadow: 0 1px 7px rgba(0,0,0,.7) !important;
  font-size: 1rem !important;
  letter-spacing: .1em !important;
}

html body .home-neighbourhood-all { color: #8b642d !important; }

@media (min-width: 768px) {
  html body .home-neighbourhood-grid .compact-neighbourhood-card { height: 270px !important; }
  html body .home-neighbourhood-grid .compact-neighbourhood-card img { height: 100% !important; }
  html body .home-neighbourhood-grid .compact-neighbourhood-card > span:not(.smre-card-code) {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    min-height: 125px !important;
    padding: 38px 20px 18px !important;
    background: linear-gradient(0deg, rgba(19,20,20,.9), rgba(19,20,20,.63) 65%, transparent) !important;
    color: #fff !important;
  }
  html body .home-neighbourhood-grid .compact-neighbourhood-card strong,
  html body .home-neighbourhood-grid .compact-neighbourhood-card small { color: #fff !important; }
  html body .home-neighbourhood-grid .compact-neighbourhood-card em { color: #e4c48f !important; }
}


@media (max-width: 767px) {
  html body .site-header:not(.smre-header-compact) { min-height: 72px !important; }
  html body .site-header .brand { max-width: calc(100% - 92px) !important; }
  html body .site-header .brand img { max-width: min(245px, 64vw) !important; }
  html body .site-header:not(.smre-header-compact) .menu-button span { background: #f8f6f2 !important; }
  html body main:has(> .home-neighbourhoods) { display: flex !important; flex-direction: column !important; }
  html body main:has(> .home-neighbourhoods) > section { order: 4 !important; }
  html body main:has(> .home-neighbourhoods) > .hero { order: 1 !important; }
  html body main:has(> .home-neighbourhoods) > .home-neighbourhoods { order: 2 !important; }
  html body main:has(> .home-neighbourhoods) > .home-links { order: 3 !important; }
  html body .hero { position: relative !important; background: #1a1a1a !important; }
  html body .hero .hero-banner { height: min(520px, 68svh) !important; min-height: 465px !important; }
  html body .hero .hero-banner > img { object-position: 42% center !important; }
  html body .hero .hero-banner::after {
    background: linear-gradient(180deg, rgba(10,10,10,.26), rgba(10,10,10,.55) 48%, rgba(10,10,10,.32)) !important;
  }
  html body .hero .hero-banner-copy {
    position: absolute !important;
    top: 100px !important;
    left: 22px !important;
    right: 22px !important;
    width: auto !important;
    max-width: none !important;
    padding: 0 !important;
    text-align: left !important;
  }
  html body .hero .hero-banner-copy h1 {
    font-size: clamp(2.05rem, 8.7vw, 3.5rem) !important;
    line-height: 1.04 !important;
  }
  html body .hero .hero-banner-copy span { display: block !important; font-size: 1rem !important; line-height: 1.42 !important; }
  html body .hero .hero-content {
    position: absolute !important;
    z-index: 3 !important;
    left: 18px !important;
    right: 18px !important;
    bottom: 22px !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  html body .hero .hero-search {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 6px !important;
    gap: 4px !important;
    border: 1px solid rgba(255,255,255,.8) !important;
    border-radius: 12px !important;
  }
  html body .hero .hero-search .mobile-search-kicker,
  html body .hero .hero-search label:not(.hero-location),
  html body .hero .hero-search .mobile-search-filters { display: none !important; }
  html body .hero .hero-search .hero-location {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    font-size: 0 !important;
  }
  html body .hero .hero-search .hero-location input {
    min-width: 0 !important;
    width: 100% !important;
    min-height: 45px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    font-size: 13px !important;
  }
  html body .hero .hero-search button.primary-button {
    flex: 0 0 46px !important;
    width: 46px !important;
    min-width: 46px !important;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 9px !important;
    font-size: 0 !important;
  }
  html body .hero .hero-search button.primary-button::before {
    content: '' !important;
    display: block !important;
    width: 18px !important;
    height: 18px !important;
    margin: auto !important;
    border: 2px solid currentColor !important;
    border-radius: 50% !important;
    transform: translate(-2px,-2px) !important;
  }
  html body .hero .hero-search button.primary-button::after {
    content: '' !important;
    display: block !important;
    width: 9px !important;
    border-top: 2px solid currentColor !important;
    transform: translate(8px,-2px) rotate(45deg) !important;
  }
  html body .home-neighbourhoods { padding: 28px 18px 32px !important; }
  html body .home-neighbourhoods .section-heading { margin-bottom: 15px !important; }
  html body .home-neighbourhoods .section-heading h2 { font-size: clamp(1.8rem, 7vw, 2.5rem) !important; }
  html body .home-neighbourhood-grid { grid-template-columns: 1fr !important; gap: 12px !important; }
  html body .home-neighbourhood-grid .compact-neighbourhood-card {
    display: grid !important;
    grid-template-columns: minmax(118px, 42%) minmax(0, 1fr) !important;
    height: 133px !important;
  }
  html body .home-neighbourhood-grid .compact-neighbourhood-card img { width: 100% !important; height: 100% !important; }
  html body .home-neighbourhood-grid .compact-neighbourhood-card > span:not(.smre-card-code) {
    padding: 11px 14px !important;
    gap: 4px !important;
  }
  html body .home-neighbourhood-grid .compact-neighbourhood-card strong { font-size: clamp(1.15rem, 5vw, 1.45rem) !important; }
  html body .home-neighbourhood-grid .compact-neighbourhood-card small { font-size: .77rem !important; }
  html body .home-neighbourhood-grid .compact-neighbourhood-card em { font-size: .72rem !important; }
  html body .home-links { padding-top: 28px !important; }
  html body .chat-widget, html body [class*="chat-launcher"] { box-shadow: 0 7px 20px rgba(0,0,0,.15) !important; }
}

@media (max-width: 380px) {
  html body .home-neighbourhood-grid .compact-neighbourhood-card { grid-template-columns: 38% minmax(0,1fr) !important; }
  html body .home-neighbourhood-grid .compact-neighbourhood-card small { font-size: .72rem !important; }
}

@media (prefers-reduced-motion: reduce) {
  html body .primary-button, html body .home-neighbourhood-grid .compact-neighbourhood-card { transition: none !important; }
}


/* V4.6.11: keep the primary navigation legible over the charcoal header and
   show neighbourhood imagery even when the theme's reveal observer misses it. */
html body header.site-header:not(.smre-header-compact) nav.main-nav > a,
html body header.site-header:not(.smre-header-compact) nav.main-nav > .nav-dropdown > button {
  color: #f8f6f2 !important;
  text-shadow: none !important;
}

html body header.site-header:not(.smre-header-compact) nav.main-nav > a:hover,
html body header.site-header:not(.smre-header-compact) nav.main-nav > .nav-dropdown > button:hover {
  color: #d2ad70 !important;
}

html body header.site-header:not(.smre-header-compact) nav.main-nav .nav-menu a {
  color: #1a1a1a !important;
}

html body main .home-neighbourhood-grid a.compact-neighbourhood-card.reveal-item {
  opacity: 1 !important;
  visibility: visible !important;
}


/* Warm neutral canvas through the homepage service and discovery sections. */
html body main > section.home-links,
html body main > section.home-neighbourhoods,
html body main > section.home-island-search {
  background-color: #f8f6f2 !important;
}


/* V4.6.13: phone-first homepage. Keep the real logo mark, search form, and
   neighbourhood links while giving each one an intentional small-screen fit. */
@media (max-width: 767px) {
  html, html body { max-width: 100%; overflow-x: clip !important; }
  html body header.site-header,
  html body header.site-header.smre-header-compact,
  html body:has(.smre-blog-page-airy) header.site-header {
    position: sticky !important;
    top: 0 !important;
    z-index: 100 !important;
    min-height: 72px !important;
    height: 72px !important;
    background: #1a1a1a !important;
    border-bottom: 1px solid rgba(255,255,255,.12) !important;
    box-shadow: none !important;
  }
  html body header.site-header .brand,
  html body header.site-header.smre-header-compact .brand {
    position: absolute !important;
    top: 7px !important;
    left: 50% !important;
    width: 58px !important;
    max-width: 58px !important;
    height: 58px !important;
    margin: 0 !important;
    overflow: hidden !important;
    transform: translateX(-50%) !important;
    z-index: 2 !important;
  }
  html body header.site-header .brand img,
  html body header.site-header.smre-header-compact .brand img {
    display: block !important;
    width: 58px !important;
    min-width: 58px !important;
    max-width: 58px !important;
    height: 58px !important;
    object-fit: cover !important;
    object-position: left center !important;
    filter: brightness(0) invert(1) !important;
  }
  html body header.site-header .menu-button {
    position: absolute !important;
    right: 18px !important;
    top: 16px !important;
    width: 42px !important;
    height: 40px !important;
    z-index: 3 !important;
  }
  html body header.site-header .menu-button span,
  html body header.site-header.smre-header-compact .menu-button span {
    background: #f8f6f2 !important;
  }
  html body header.site-header .header-contact { display: none !important; }
  html body header.site-header nav.main-nav {
    background: #f8f6f2 !important;
    color: #1a1a1a !important;
  }
  html body header.site-header nav.main-nav a,
  html body header.site-header:not(.smre-header-compact) nav.main-nav > a,
  html body header.site-header nav.main-nav button,
  html body header.site-header:not(.smre-header-compact) nav.main-nav > .nav-dropdown > button {
    color: #1a1a1a !important;
    text-shadow: none !important;
  }
  html body header.site-header nav.main-nav .nav-menu { background: #f1ece4 !important; }

  html body main:has(> .home-neighbourhoods) { display: flex !important; flex-direction: column !important; }
  html body main:has(> .home-neighbourhoods) > .hero { order: 1 !important; }
  html body main:has(> .home-neighbourhoods) > .home-neighbourhoods { order: 2 !important; }
  html body main:has(> .home-neighbourhoods) > .home-links { order: 3 !important; }
  html body main:has(> .home-neighbourhoods) > section:not(.hero):not(.home-neighbourhoods):not(.home-links) { order: 4 !important; }
  html body main > section.hero {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    border-radius: 0 !important;
    overflow: hidden !important;
  }
  html body main > section.hero .hero-banner {
    position: relative !important;
    width: 100% !important;
    height: clamp(385px, 102vw, 500px) !important;
    min-height: 385px !important;
    margin: 0 !important;
    border-radius: 0 !important;
    opacity: 1 !important;
    transform: none !important;
  }
  html body main > section.hero .hero-banner > img {
    object-fit: cover !important;
    object-position: 45% center !important;
  }
  html body main > section.hero .hero-banner::after {
    background: linear-gradient(90deg, rgba(13,13,13,.62), rgba(13,13,13,.23) 75%),
                linear-gradient(0deg, rgba(13,13,13,.35), transparent 45%) !important;
  }
  html body main > section.hero .hero-banner-copy {
    top: 33px !important;
    left: 24px !important;
    right: 20px !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    transform: none !important;
  }
  html body main > section.hero .hero-banner-copy h1 {
    max-width: 510px !important;
    margin: 0 0 12px !important;
    font-size: clamp(2.2rem, 9.15vw, 3.6rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -.045em !important;
  }
  html body main > section.hero .hero-banner-copy span {
    display: block !important;
    max-width: 335px !important;
    font-size: clamp(.91rem, 3.7vw, 1.05rem) !important;
    line-height: 1.43 !important;
  }
  html body main > section.hero .hero-content {
    position: absolute !important;
    z-index: 4 !important;
    left: 17px !important;
    right: 17px !important;
    bottom: 20px !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  html body main > section.hero form.hero-search {
    display: flex !important;
    align-items: center !important;
    gap: 5px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 5px !important;
    background: #f8f6f2 !important;
    border: 1px solid rgba(255,255,255,.65) !important;
    border-radius: 11px !important;
    box-shadow: 0 12px 25px rgba(0,0,0,.2) !important;
  }
  html body main > section.hero form.hero-search .mobile-search-kicker,
  html body main > section.hero form.hero-search label:not(.hero-location),
  html body main > section.hero form.hero-search .mobile-search-filters { display: none !important; }
  html body main > section.hero form.hero-search label.hero-location {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    flex: 1 1 0 !important;
    min-width: 0 !important;
    margin: 0 !important;
    font-size: 0 !important;
  }
  html body main > section.hero form.hero-search label.hero-location::before {
    content: '' !important;
    position: absolute !important;
    left: 13px !important;
    top: 15px !important;
    width: 11px !important;
    height: 11px !important;
    border: 2px solid #a97832 !important;
    border-radius: 70% 70% 70% 0 !important;
    transform: rotate(-45deg) !important;
    pointer-events: none !important;
  }
  html body main > section.hero form.hero-search input[name="query"] {
    display: block !important;
    width: 100% !important;
    height: 46px !important;
    min-height: 46px !important;
    padding: 0 7px 0 37px !important;
    border: 0 !important;
    border-radius: 7px !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #292722 !important;
    font-size: 13px !important;
  }
  html body main > section.hero form.hero-search button.primary-button {
    flex: 0 0 46px !important;
    width: 46px !important;
    min-width: 46px !important;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 8px !important;
    font-size: 0 !important;
  }
  html body main > section.home-neighbourhoods {
    width: 100% !important;
    padding: 26px 18px 32px !important;
    background: #f8f6f2 !important;
    opacity: 1 !important;
  }
  html body main > section.home-neighbourhoods .section-heading {
    margin: 0 0 16px !important;
    padding: 0 !important;
  }
  html body main > section.home-neighbourhoods .section-heading .eyebrow { display: none !important; }
  html body main > section.home-neighbourhoods .section-heading h2 {
    margin: 0 0 10px !important;
    font-size: clamp(1.75rem, 7.4vw, 2.45rem) !important;
    line-height: 1.12 !important;
  }
  html body main > section.home-neighbourhoods .section-heading h2::after { margin-top: 10px !important; }
  html body main > section.home-neighbourhoods .section-heading p:not(.eyebrow) {
    margin: 0 !important;
    max-width: 35ch !important;
    font-size: .91rem !important;
    line-height: 1.45 !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 12px !important;
    margin: 0 !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card {
    display: grid !important;
    grid-template-columns: minmax(112px,42%) minmax(0,1fr) !important;
    height: 132px !important;
    min-height: 132px !important;
    padding: 0 !important;
    opacity: 1 !important;
    border-radius: 11px !important;
    background: #fdfbf8 !important;
    overflow: hidden !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card > img {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    object-fit: cover !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card > span:not(.smre-card-code) {
    position: static !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    gap: 5px !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 10px 13px !important;
    background: transparent !important;
    color: #1a1a1a !important;
    transform: none !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card strong {
    color: #1a1a1a !important;
    font-size: clamp(1.12rem, 4.8vw, 1.45rem) !important;
    line-height: 1.08 !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card small {
    color: #514c46 !important;
    font-size: clamp(.72rem, 2.85vw, .82rem) !important;
    line-height: 1.3 !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card em {
    color: #8b642d !important;
    font-size: clamp(.68rem, 2.7vw, .8rem) !important;
    line-height: 1.25 !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card .smre-card-code {
    top: 8px !important;
    left: auto !important;
    right: 8px !important;
    padding: 4px 7px !important;
    border-radius: 7px !important;
    background: rgba(155,111,49,.9) !important;
    color: #fff !important;
    font-size: .62rem !important;
    letter-spacing: .06em !important;
    text-shadow: none !important;
  }
  html body main > section.home-links { padding-top: 30px !important; }
}

@media (max-width: 359px) {
  html body main > section.hero .hero-banner-copy h1 { font-size: 2rem !important; }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card {
    grid-template-columns: minmax(100px,39%) minmax(0,1fr) !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card > span:not(.smre-card-code) { padding: 8px 10px !important; }
}


/* V4.6.15: corrections from real iPhone captures. The full wordmark stays
   visible, the hero remains first, and each card uses the available width. */
html body .hero-search .smre-search-icon { display: none !important; }

@media (max-width: 767px) {
  html body header.site-header .brand,
  html body header.site-header.smre-header-compact .brand {
    top: 11px !important;
    left: 16px !important;
    width: min(235px, calc(100% - 96px)) !important;
    max-width: min(235px, calc(100% - 96px)) !important;
    height: 55px !important;
    overflow: visible !important;
    transform: none !important;
  }
  html body header.site-header .brand img,
  html body header.site-header.smre-header-compact .brand img {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 55px !important;
    object-fit: contain !important;
    object-position: left center !important;
    filter: brightness(0) invert(1) !important;
  }
  html body header.site-header .menu-button,
  html body header.site-header.smre-header-compact .menu-button {
    background: transparent !important;
    border: 0 !important;
    border-radius: 4px !important;
    box-shadow: none !important;
  }
  html body header.site-header .menu-button span,
  html body header.site-header.smre-header-compact .menu-button span {
    background: #f8f6f2 !important;
    height: 2px !important;
  }
  html body main:has(> .home-neighbourhoods) > * { order: 4 !important; }
  html body main:has(> .home-neighbourhoods) > .hero { order: 1 !important; }
  html body main:has(> .home-neighbourhoods) > .home-neighbourhoods { order: 2 !important; }
  html body main:has(> .home-neighbourhoods) > .home-links { order: 3 !important; }
  html body main > section.hero form.hero-search button.primary-button::before,
  html body main > section.hero form.hero-search button.primary-button::after {
    content: none !important;
    display: none !important;
  }
  html body main > section.hero form.hero-search button.primary-button {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
  }
  html body main > section.hero form.hero-search button.primary-button .smre-search-icon {
    display: block !important;
    width: 21px !important;
    height: 21px !important;
    color: #fff !important;
    flex: 0 0 21px !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    justify-items: stretch !important;
    grid-template-columns: minmax(0,1fr) !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card {
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    grid-template-columns: minmax(0,39%) minmax(0,61%) !important;
    height: 126px !important;
    min-height: 126px !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card > span:not(.smre-card-code) {
    width: 100% !important;
    max-width: none !important;
    padding: 12px 13px !important;
    overflow: hidden !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card strong {
    font-size: clamp(1.13rem, 4.65vw, 1.35rem) !important;
    line-height: 1.1 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card small {
    font-size: .77rem !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }
  html body main > section.home-neighbourhoods .home-neighbourhood-grid a.compact-neighbourhood-card em {
    font-size: .73rem !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    hyphens: none !important;
  }
  html body .chat-widget { right: 13px !important; bottom: 18px !important; }
  html body .chat-widget .chat-toggle {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 48px !important;
    min-width: 48px !important;
    height: 48px !important;
    min-height: 48px !important;
    padding: 0 !important;
    border-radius: 50% !important;
    box-shadow: 0 7px 18px rgba(0,0,0,.16) !important;
  }
  html body .chat-widget .chat-toggle span { display: none !important; }
  html body .chat-widget .chat-toggle svg { width: 22px !important; height: 22px !important; }
}


/* V4.6.16: quiet header and the user's short, supplied logo introduction.
   Existing menus, destinations and page content remain in place. */
/* Hidden horizontal overflow on the theme body creates a scroll container and
   prevents the sticky header from sticking. Clip without creating one. */
html, html body { overflow-x: clip !important; overflow-y: visible !important; }

html body header.site-header:not(.smre-header-compact),
html body header.site-header.smre-header-compact,
html body:has(.smre-blog-page-airy) header.site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 100 !important;
  min-height: 72px !important;
  height: 72px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  background: rgba(248,246,242,.97) !important;
  border-bottom: 1px solid rgba(73,65,53,.1) !important;
  box-shadow: none !important;
  backdrop-filter: blur(10px) !important;
  transition: height .26s ease, min-height .26s ease, background-color .26s ease !important;
}

html body header.site-header.smre-header-compact {
  min-height: 64px !important;
  height: 64px !important;
  box-shadow: 0 4px 15px rgba(31,29,25,.05) !important;
}

html body header.site-header .brand,
html body header.site-header.smre-header-compact .brand {
  display: flex !important;
  align-items: center !important;
  width: clamp(208px,18vw,255px) !important;
  max-width: clamp(208px,18vw,255px) !important;
  height: auto !important;
  overflow: visible !important;
  transform: none !important;
  transition: width .26s ease, opacity .28s ease !important;
}

html body header.site-header.smre-header-compact .brand {
  width: clamp(195px,16vw,230px) !important;
  max-width: clamp(195px,16vw,230px) !important;
}

html body header.site-header .brand img.brand-complete,
html body header.site-header.smre-header-compact .brand img.brand-complete,
html body:has(.smre-blog-page-airy) header.site-header .brand img.brand-complete {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: 61px !important;
  object-fit: contain !important;
  object-position: left center !important;
  filter: none !important;
  transform: none !important;
}

html body header.site-header:not(.smre-header-compact) nav.main-nav > a,
html body header.site-header:not(.smre-header-compact) nav.main-nav > .nav-dropdown > button,
html body header.site-header.smre-header-compact nav.main-nav > a,
html body header.site-header.smre-header-compact nav.main-nav > .nav-dropdown > button {
  color: #252420 !important;
  text-shadow: none !important;
}

html body header.site-header nav.main-nav .nav-menu {
  background: #f8f6f2 !important;
  box-shadow: 0 12px 24px rgba(31,29,25,.1) !important;
}

html body header.site-header nav.main-nav .nav-menu a { color: #252420 !important; }

html body header.site-header .header-contact {
  padding: 11px 17px !important;
  font-size: .86rem !important;
  box-shadow: none !important;
}

@media (min-width: 768px) {
  html body header.site-header .brand { position: relative !important; }
}

html body header.site-header .brand .smre-brand-motion {
  display: none;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #f8f6f2;
  pointer-events: none;
}

html body header.site-header .brand.smre-brand-playing .smre-brand-motion { display: block; }

/* Keep the desktop navigation visible at the top and at every scroll position. */
@media (min-width: 1200px) {
  html body header.site-header nav.main-nav {
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }
}

@media (max-width: 900px) {
  html body header.site-header .brand,
  html body header.site-header.smre-header-compact .brand {
    position: absolute !important;
    width: min(230px,calc(100vw - 102px)) !important;
    max-width: min(230px,calc(100vw - 102px)) !important;
  }
}

@media (max-width: 767px) {
  html body header.site-header:not(.smre-header-compact),
  html body header.site-header.smre-header-compact,
  html body:has(.smre-blog-page-airy) header.site-header {
    min-height: 66px !important;
    height: 66px !important;
    background: rgba(248,246,242,.98) !important;
    border-bottom-color: rgba(73,65,53,.1) !important;
    box-shadow: none !important;
  }
  html body header.site-header.smre-header-compact {
    min-height: 61px !important;
    height: 61px !important;
  }
  html body header.site-header .brand,
  html body header.site-header.smre-header-compact .brand {
    top: 9px !important;
    left: 15px !important;
    width: min(218px,calc(100vw - 100px)) !important;
    max-width: min(218px,calc(100vw - 100px)) !important;
    height: 49px !important;
    transform: none !important;
  }
  html body header.site-header.smre-header-compact .brand { top: 7px !important; }
  html body header.site-header .brand img.brand-complete,
  html body header.site-header.smre-header-compact .brand img.brand-complete {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 49px !important;
    object-fit: contain !important;
    filter: none !important;
  }
  html body header.site-header .menu-button,
  html body header.site-header.smre-header-compact .menu-button {
    top: 12px !important;
    right: 14px !important;
    width: 42px !important;
    height: 42px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }
  html body header.site-header .menu-button span,
  html body header.site-header.smre-header-compact .menu-button span {
    background: #252420 !important;
  }
  html body header.site-header nav.main-nav { background: #f8f6f2 !important; }
  html body header.site-header nav.main-nav a,
  html body header.site-header nav.main-nav button { color: #252420 !important; }
}

@media (prefers-reduced-motion: reduce) {
  .smre-brand-motion { display: none !important; }
  html body header.site-header, html body header.site-header .brand { transition: none !important; }
}


/* V4.6.19: consistent section rhythm and persistent small-screen navigation. */
html body main { --smre-section-space: 30px; }

html body main > section:not(.hero):not(.interior-parallax),
html body main > section.neighbourhood-hero,
html body main > section.guide-band {
  padding-top: var(--smre-section-space) !important;
  padding-bottom: var(--smre-section-space) !important;
}

html body main > section.guide-cta-section,
html body main > section.smre-buildings-section,
html body main > section.neighbourhood-market-data {
  margin-top: 22px !important;
  margin-bottom: 0 !important;
}

html body main > section.ftb-final,
html body main > section.team-final { margin-top: 24px !important; margin-bottom: 30px !important; }

html body main .neighbourhood-story-grid,
html body main .neighbourhood-detail-grid,
html body main .neighbourhood-photo-grid,
html body main .neighbourhood-resource-grid,
html body main .home-neighbourhood-grid,
html body main .guide-feature-grid,
html body main .photo-detail-grid { gap: 18px !important; align-items: stretch; }

@media (max-width: 1180px) {
  html body header.site-header .menu-button,
  html body header.site-header.smre-header-compact .menu-button,
  html body header.site-header:not(.smre-header-compact) .menu-button {
    display: inline-flex !important; position: absolute !important;
    top: 10px !important; right: 14px !important;
    width: 44px !important; min-width: 44px !important; height: 44px !important;
    align-items: center !important; justify-content: center !important;
    opacity: 1 !important; visibility: visible !important; transform: none !important;
    pointer-events: auto !important; z-index: 10003 !important;
    background: #f8f6f2 !important; color: #252420 !important;
  }
  html body header.site-header .menu-button span,
  html body header.site-header.smre-header-compact .menu-button span,
  html body header.site-header:not(.smre-header-compact) .menu-button span {
    display: block !important; position: absolute !important;
    left: 50% !important; top: 50% !important;
    width: 22px !important; height: 2px !important; margin: 0 !important;
    opacity: 1 !important; visibility: visible !important; background: #252420 !important;
  }
  html body header.site-header .menu-button span:first-child { transform: translate(-50%,-5px) !important; }
  html body header.site-header .menu-button span:last-child { transform: translate(-50%,3px) !important; }
  html body header.site-header .menu-button[aria-expanded="true"] span:first-child { transform: translate(-50%,-1px) rotate(45deg) !important; }
  html body header.site-header .menu-button[aria-expanded="true"] span:last-child { transform: translate(-50%,-1px) rotate(-45deg) !important; }
}

@media (min-width:768px) and (max-width:900px) {
  html body header.site-header .brand,
  html body header.site-header.smre-header-compact .brand { top: 8px !important; left: 20px !important; height: 48px !important; }
}

@media (max-width: 1024px) { html body main { --smre-section-space: 24px; } }

@media (max-width: 767px) {
  html body main { --smre-section-space: 20px; }
  html body main > section.guide-cta-section,
  html body main > section.smre-buildings-section,
  html body main > section.neighbourhood-market-data { margin-top: 16px !important; }
  html body main .neighbourhood-story-grid,
  html body main .neighbourhood-detail-grid,
  html body main .neighbourhood-photo-grid,
  html body main .neighbourhood-resource-grid,
  html body main .home-neighbourhood-grid,
  html body main .guide-feature-grid,
  html body main .photo-detail-grid { gap: 14px !important; }
}

html body main > section.guide-cta-section.neighbourhood-listings-cta,
html body main > section.guide-cta-section.seo-related-links,
html body main > section.neighbourhood-photo-section + section.neighbourhood-market-data {
 margin-top:22px!important; margin-bottom:0!important;
}

html body main > section.guide-cta-section.neighbourhood-listings-cta + .market-hub-link { margin-bottom:22px!important; }

@media(max-width:767px){
 html body main > section.guide-cta-section.neighbourhood-listings-cta,
 html body main > section.guide-cta-section.seo-related-links,
 html body main > section.neighbourhood-photo-section + section.neighbourhood-market-data {margin-top:16px!important;}
}


/* V4.6.21: blog archive mobile cards and its standalone navigation. */
@media(max-width:900px){
 html body main.smre-blog-page-airy .smre-blog-list-item {
  display:flex!important;flex-direction:column!important;grid-template-columns:minmax(0,1fr)!important;
  width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;gap:16px!important;padding:14px!important;
 }
 html body main.smre-blog-page-airy .smre-blog-list-image {
  width:100%!important;min-width:0!important;height:auto!important;min-height:0!important;aspect-ratio:16/10!important;flex:none!important;
 }
 html body main.smre-blog-page-airy .smre-blog-list-image img {
  width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;object-fit:cover!important;
 }
 html body main.smre-blog-page-airy .smre-blog-list-copy {width:100%!important;min-width:0!important;padding:0!important;}
 html body main.smre-blog-page-airy .smre-blog-list-copy h2 {font-size:clamp(24px,6vw,32px)!important;line-height:1.2!important;word-break:normal!important;overflow-wrap:normal!important;}
 html body main.smre-blog-page-airy .smre-blog-list-meta {font-size:11px!important;letter-spacing:.1em!important;word-break:normal!important;}
 html body main.smre-blog-page-airy .smre-blog-list {width:100%!important;box-sizing:border-box!important;padding:0 16px!important;gap:18px!important;}
}

@media(max-width:1180px){
 html body:has(.smre-blog-page-airy) header.site-header nav.main-nav {display:none!important;}
 html body:has(.smre-blog-page-airy) header.site-header nav.main-nav.smre-blog-menu-open {
  display:flex!important;position:absolute!important;top:100%!important;left:0!important;right:0!important;
  width:100%!important;max-width:none!important;box-sizing:border-box!important;flex-direction:column!important;
  align-items:stretch!important;gap:4px!important;padding:16px 22px!important;background:#f8f6f2!important;
  max-height:calc(100dvh - 72px)!important;overflow-y:auto!important;opacity:1!important;visibility:visible!important;transform:none!important;z-index:10002!important;
 }
 html body:has(.smre-blog-page-airy) nav.main-nav.smre-blog-menu-open .nav-menu {position:static!important;display:none!important;box-shadow:none!important;}
 html body:has(.smre-blog-page-airy) nav.main-nav.smre-blog-menu-open .nav-dropdown:has(>button[aria-expanded="true"]) .nav-menu {display:block!important;opacity:1!important;visibility:visible!important;transform:none!important;}
 html body:has(.smre-blog-page-airy) nav.main-nav.smre-blog-menu-open a,
 html body:has(.smre-blog-page-airy) nav.main-nav.smre-blog-menu-open button {padding:12px 8px!important;min-height:44px!important;}
}


/* V4.6.23: mobile search first, with no desktop layout changes. */
.smre-mobile-search-links,.smre-mobile-search-nav{display:none;}

@media(max-width:767px){
 html body header.site-header:not(.smre-header-compact),
 html body header.site-header.smre-header-compact,
 html body:has(.smre-blog-page-airy) header.site-header{height:52px!important;min-height:52px!important;}
 html body header.site-header .brand,
 html body header.site-header.smre-header-compact .brand{top:4px!important;left:14px!important;width:min(200px,calc(100vw - 94px))!important;max-width:min(200px,calc(100vw - 94px))!important;height:44px!important;}
 html body header.site-header .brand img.brand-complete,
 html body header.site-header.smre-header-compact .brand img.brand-complete{max-height:44px!important;object-fit:contain!important;}
 html body header.site-header .menu-button,
 html body header.site-header:not(.smre-header-compact) .menu-button,
 html body header.site-header.smre-header-compact .menu-button{top:4px!important;width:44px!important;height:44px!important;}
 html body main .hero .hero-banner{height:330px!important;min-height:330px!important;}
 html body main .hero .hero-banner-copy{top:25px!important;left:20px!important;right:20px!important;}
 html body main .hero .hero-banner-copy h1{font-size:clamp(30px,8vw,36px)!important;line-height:1.08!important;max-width:390px!important;}
 html body main .hero .hero-banner-copy>span{font-size:14px!important;line-height:1.5!important;max-width:290px!important;margin-top:12px!important;}
 html body main .hero .hero-content{left:14px!important;right:14px!important;bottom:10px!important;}
 html body main .hero .hero-search{width:100%!important;box-sizing:border-box!important;min-height:56px!important;gap:4px!important;padding:5px!important;}
 html body main .hero .hero-search .hero-location{min-width:0!important;}
 html body main .hero .hero-search input[name="query"]{font-size:16px!important;height:46px!important;padding-left:12px!important;min-width:0!important;width:100%!important;box-sizing:border-box!important;}
 html body main .hero .hero-search .hero-location:before{display:none!important;}
 html body main .hero .hero-search button[type="submit"]{width:46px!important;min-width:46px!important;height:46px!important;}
 html body .smre-mobile-search-links{display:flex;justify-content:space-between;gap:14px;padding:2px 4px 0;}
 html body .smre-mobile-search-links a{display:inline-flex;align-items:center;min-height:44px;color:#fff!important;font-size:14px;text-decoration:underline;text-underline-offset:4px;text-shadow:0 1px 4px #000;}
 html body .smre-mobile-search-nav{display:grid;grid-template-columns:1fr 1fr;gap:4px;border-bottom:1px solid #d8cbb7;padding-bottom:10px;margin-bottom:8px;}
 html body .smre-mobile-search-nav a{display:flex;align-items:center;min-height:44px;font-size:14px;}
 html body main .home-neighbourhoods .section-heading h2{font-size:26px!important;line-height:1.2!important;}
 html body .chat-widget.smre-chat-deferred{visibility:hidden!important;pointer-events:none!important;}
 html body .chat-widget .chat-toggle{width:46px!important;height:46px!important;min-width:46px!important;padding:12px!important;border-radius:50%!important;}
 html body .chat-widget .chat-toggle>span{display:none!important;}
 html body .chat-widget{right:12px!important;bottom:calc(12px + env(safe-area-inset-bottom))!important;}
 html body:has(.search-section) .chat-widget{position:relative!important;right:auto!important;bottom:auto!important;display:flex!important;justify-content:flex-end;margin:12px 16px!important;}
 html body:has(.search-section) .chat-panel{bottom:60px!important;right:0!important;max-width:calc(100vw - 32px)!important;}
 html body main .search-shell{display:flex!important;flex-direction:column!important;gap:20px!important;min-width:0!important;}
 html body main .search-shell .filters,html body main .search-shell .results-panel{width:100%!important;min-width:0!important;box-sizing:border-box!important;}
 html body main .search-shell .filter-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;}
 html body main .search-shell input,html body main .search-shell select{min-height:44px!important;font-size:16px!important;max-width:100%!important;box-sizing:border-box!important;}
 html body main .search-shell .listing-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:18px!important;}
 html body main .search-shell .listing-card{min-width:0!important;overflow:hidden!important;}
 html body main .search-shell .listing-image{aspect-ratio:4/3;height:auto!important;}
 html body main .search-shell .listing-image img{width:100%!important;height:100%!important;object-fit:cover!important;}
 html body main .search-shell .price{font-size:24px!important;line-height:1.25!important;}
 html body main .search-shell .address{font-size:16px!important;line-height:1.45!important;}
 html body main .search-shell .meta,html body main .search-shell .card-actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important;}
 html body main .search-shell .card-actions button{min-height:44px!important;}
 html body main .search-shell .results-bar{flex-wrap:wrap!important;gap:12px!important;}
 html body dialog[open]{box-sizing:border-box!important;max-width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important;overflow-y:auto!important;}
}


/* END SPENCER AIRY DESIGN FIX V4.6.26 */

/* Final audit: sticky header already occupies layout space. */
@media(max-width:900px){html body main.smre-blog-page-airy{padding-top:20px!important;}html body .smre-blog-cover-copy{padding-top:12px!important;padding-bottom:12px!important;}}

/* Final audit: keep narrow navigation free of sideways scrolling. */
@media(max-width:900px){html body .main-nav{overflow-x:hidden!important;overscroll-behavior:contain;scroll-padding-block:12px;}html body .main-nav a,html body .main-nav button{box-sizing:border-box;max-width:100%;scroll-margin-block:12px;}html body .main-nav .nav-dropdown{min-width:0;}}

/* Final audit: long phone menus must start at the top and scroll fully. */
@media(max-width:900px){html body .main-nav{justify-content:flex-start!important;}html body .main-nav>*{flex-shrink:0!important;}}

/* Final audit: readable property shortcuts on the light mobile menu. */
@media(max-width:900px){html body .main-nav .smre-mobile-search-nav{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;}html body header.site-header nav.main-nav .smre-mobile-search-nav a{color:#252420!important;background:#eee9df!important;border:1px solid #d4c8b2!important;min-height:44px!important;padding:8px!important;font-size:12px!important;line-height:1.3!important;align-items:center!important;justify-content:center!important;text-align:center!important;white-space:normal!important;}}
