/* HandHome design system — release 1.6.3 */
:root {
  --hh-chalk: #f3f0e8;
  --hh-paper: #fbfaf6;
  --hh-teal: #123f3b;
  --hh-teal-deep: #0b2f2d;
  --hh-sage: #81958a;
  --hh-sage-soft: #dbe2dc;
  --hh-clay: #cac3af;
  --hh-clay-dark: #655f51;
  --hh-graphite: #242826;
  --hh-ink-soft: #5f6763;
  --hh-line: rgba(18, 63, 59, 0.16);
  --hh-serif: "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;
  --hh-sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --hh-shell: min(1240px, calc(100vw - 48px));
  --hh-radius: 2px;
  --hh-shadow: 0 24px 70px rgba(10, 35, 32, 0.12);
}

html { scroll-behavior: smooth; }

body.handhome-site {
  margin: 0;
  color: var(--hh-graphite);
  background: var(--hh-paper);
  font-family: var(--hh-sans);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

body.handhome-site * { box-sizing: border-box; }
body.handhome-site img { max-width: 100%; height: auto; }
body.handhome-site a { color: inherit; }
body.handhome-site h1,
body.handhome-site h2,
body.handhome-site h3,
body.handhome-site p { margin-top: 0; }

.hh-shell { width: var(--hh-shell); margin-inline: auto; }
.hh-main { overflow: hidden; }
.hh-section { padding: 112px 0; }

.hh-skip-link {
  position: fixed;
  z-index: 99999;
  left: 16px;
  top: 16px;
  padding: 10px 16px;
  color: #fff;
  background: var(--hh-teal-deep);
  transform: translateY(-150%);
}
.hh-skip-link:focus { transform: translateY(0); }

.hh-eyebrow {
  margin-bottom: 18px;
  color: var(--hh-clay);
  font-size: 0.73rem;
  font-weight: 700;
  letter-spacing: 0.17em;
  line-height: 1.2;
  text-transform: uppercase;
}

.hh-section-heading {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(260px, 0.65fr);
  gap: 96px;
  align-items: end;
  margin-bottom: 60px;
}

.hh-section-heading h2,
.hh-services__intro h2,
.hh-owner h2,
.hh-investment h2 {
  margin: 0;
  max-width: 790px;
  color: var(--hh-teal-deep);
  font-family: var(--hh-serif);
  font-size: clamp(2.35rem, 4.4vw, 4.6rem);
  font-weight: 400;
  letter-spacing: -0.045em;
  line-height: 0.99;
}

.hh-section-heading > p {
  margin: 0 0 4px;
  color: var(--hh-ink-soft);
  font-size: 1.04rem;
  line-height: 1.75;
}

/* Header */
.hh-site-header {
  position: fixed;
  z-index: 1000;
  top: 0;
  right: 0;
  left: 0;
  height: 88px;
  border-bottom: 1px solid rgba(255,255,255,.22);
  color: #fff;
  transition: background .25s ease, box-shadow .25s ease, height .25s ease, color .25s ease;
}

body:not(.handhome-home) .hh-site-header,
.hh-site-header.is-scrolled {
  height: 76px;
  color: var(--hh-teal-deep);
  background: rgba(251, 250, 246, .96);
  border-bottom-color: var(--hh-line);
  box-shadow: 0 8px 32px rgba(10, 35, 32, .08);
  backdrop-filter: blur(12px);
}

.hh-header-shell {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0,1fr) auto minmax(0,1fr);
  width: min(1440px, calc(100vw - 48px));
  height: 100%;
  margin-inline: auto;
  align-items: center;
}

.hh-header-navigation { display: contents; }
.hh-primary-nav--left { grid-column: 1; grid-row: 1; justify-self: start; align-self: center; }
.hh-primary-nav--right { grid-column: 3; grid-row: 1; justify-self: end; align-self: center; }
.hh-brand--header {
  position: absolute;
  z-index: 2;
  top: 50%;
  left: 50%;
  grid-column: auto;
  grid-row: auto;
  justify-self: auto;
  align-self: auto;
  transform: translate(-50%, -50%);
}

.hh-brand {
  display: inline-flex;
  flex: 0 0 auto;
  gap: 11px;
  align-items: center;
  color: inherit;
  text-decoration: none !important;
}

.hh-brand img { display: block; filter: none !important; }
.hh-brand__logo-mobile { display: none; }
.hh-brand--header .hh-brand__logo { width: 244px; height: auto; object-fit: contain; }
.hh-brand--header { gap: 0; color: #fff; }
body:not(.handhome-home) .hh-brand--header,
.hh-site-header.is-scrolled .hh-brand--header { color: var(--hh-teal-deep); }

.hh-brand__text { display: grid; min-width: 116px; gap: 0; line-height: 1; }
.hh-brand__text strong {
  font-family: var(--hh-serif);
  font-size: 1.66rem;
  font-weight: 500;
  letter-spacing: -.045em;
}
.hh-brand__text small {
  margin-top: 5px;
  font-size: .58rem;
  font-weight: 600;
  letter-spacing: .3em;
  text-transform: uppercase;
}

.hh-primary-nav { display: flex; gap: 20px; align-items: center; }
.hh-menu,
.hh-primary-nav .menu {
  display: flex;
  gap: 30px;
  align-items: center;
  margin: 0;
  padding: 0;
  list-style: none;
}
.hh-menu li,
.hh-primary-nav .menu li { margin: 0; padding: 0; }
.hh-menu a,
.hh-primary-nav .menu a {
  position: relative;
  display: block;
  padding: 10px 0;
  color: inherit;
  font-size: .79rem;
  font-weight: 600;
  letter-spacing: .02em;
  text-decoration: none;
}
.hh-menu a::after,
.hh-primary-nav .menu a::after {
  position: absolute;
  right: 0;
  bottom: 5px;
  left: 0;
  height: 1px;
  background: currentColor;
  content: "";
  transform: scaleX(0);
  transform-origin: right;
  transition: transform .2s ease;
}
.hh-menu a:hover::after,
.hh-menu a:focus-visible::after,
.hh-primary-nav .menu a:hover::after { transform: scaleX(1); transform-origin: left; }

.hh-nav-cta-menu { margin: 0; padding: 0; list-style: none; }
.hh-nav-cta-menu li { margin: 0; padding: 0; }
.hh-nav-cta-menu a {
  display: inline-flex;
  min-height: 44px;
  padding: 0 20px;
  align-items: center;
  justify-content: center;
  border: 1px solid currentColor;
  border-radius: 999px;
  color: inherit;
  font-size: .78rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-decoration: none !important;
  transition: color .2s ease, background .2s ease;
}
.hh-nav-cta-menu a:hover { color: var(--hh-teal-deep); background: var(--hh-clay); border-color: var(--hh-clay); }
.hh-menu .hh-menu-listing > a,
.hh-menu--right > .hh-menu-listing > a { padding: 11px 17px; border: 1px solid currentColor; border-radius: 999px; }
.hh-menu .hh-menu-listing > a::after,
.hh-menu--right > .hh-menu-listing > a::after { display: none; }
.hh-menu .hh-menu-listing > a:hover,
.hh-menu--right > .hh-menu-listing > a:hover { color: var(--hh-teal-deep); background: var(--hh-clay); border-color: var(--hh-clay); }

.hh-language-switcher {
  display: flex;
  gap: 6px;
  margin: 0;
  padding: 0;
  align-items: center;
  list-style: none;
}
.hh-language-switcher li,
.hh-language-switcher li::before {
  margin: 0;
  padding: 0;
  list-style: none;
  content: none;
}
.hh-language-switcher li { list-style: none !important; }
.hh-language-switcher li::marker { content: ""; }
body.handhome-site ul.hh-language-switcher {
  margin: 0 !important;
  padding-inline-start: 0 !important;
  list-style: none !important;
}
body.handhome-site ul.hh-language-switcher > li {
  display: block;
  list-style: none !important;
}
body.handhome-site ul.hh-language-switcher > li::marker { color: transparent; font-size: 0; }
.hh-language-switcher a {
  display: grid;
  width: 32px;
  height: 32px;
  place-items: center;
  border: 1px solid transparent;
  border-radius: 50%;
  color: inherit;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .04em;
  text-decoration: none !important;
}
.hh-language-switcher a:hover,
.hh-language-switcher a:focus-visible { border-color: currentColor; }
.hh-language-switcher a[aria-current="page"] { color: var(--hh-teal-deep); background: var(--hh-clay); }

.hh-menu-toggle {
  display: none;
  width: 44px;
  height: 44px;
  padding: 10px;
  border: 0;
  color: inherit;
  background: transparent;
}
.hh-menu-toggle > span:not(.screen-reader-text) { display: block; width: 22px; height: 1.5px; margin: 5px auto; background: currentColor; transition: .2s ease; }

/* Hero */
.hh-hero {
  position: relative;
  display: flex;
  min-height: 790px;
  align-items: center;
  color: #fff;
  background: var(--hh-teal-deep);
}
.hh-hero__image,
.hh-hero__veil { position: absolute; inset: 0; }
.hh-hero__image {
  background: url("../images/handhome-hero.webp") center center / cover no-repeat;
  transform: scale(1.005);
}
.hh-hero__veil {
  background:
    linear-gradient(90deg, rgba(7, 35, 33, .86) 0%, rgba(7, 35, 33, .66) 32%, rgba(7, 35, 33, .13) 67%, rgba(7, 35, 33, .05) 100%),
    linear-gradient(0deg, rgba(7, 35, 33, .32), transparent 45%);
}
.hh-hero__content { position: relative; z-index: 1; padding-top: 126px; }
.hh-hero .hh-eyebrow { color: var(--hh-clay); }
.hh-hero h1 {
  max-width: 780px;
  margin: 0 0 26px;
  font-family: var(--hh-serif);
  font-size: clamp(3.35rem, 6.25vw, 6.75rem);
  font-weight: 400;
  letter-spacing: -.055em;
  line-height: .93;
  text-wrap: balance;
}
.hh-hero__intro { max-width: 610px; margin-bottom: 38px; color: rgba(255,255,255,.84); font-size: 1.08rem; line-height: 1.75; }

.hh-search {
  display: grid;
  grid-template-columns: .9fr 1.2fr 1fr auto;
  max-width: 990px;
  padding: 10px;
  color: var(--hh-graphite);
  background: rgba(251,250,246,.98);
  border-radius: var(--hh-radius);
  box-shadow: var(--hh-shadow);
}
.hh-search__field { position: relative; display: flex; min-height: 66px; padding: 9px 22px; flex-direction: column; justify-content: center; border-right: 1px solid var(--hh-line); }
.hh-search__field label { margin: 0 0 3px; color: var(--hh-teal); font-size: .66rem; font-weight: 700; letter-spacing: .09em; line-height: 1.2; text-transform: uppercase; }
.hh-search__field input,
.hh-search__field select {
  width: 100%;
  height: 28px;
  margin: 0;
  padding: 0 24px 0 0;
  border: 0;
  border-radius: 0;
  outline: 0;
  color: var(--hh-graphite);
  background-color: transparent;
  box-shadow: none;
  font-family: var(--hh-sans);
  font-size: .88rem;
}
.hh-search__field input::placeholder { color: #858b87; opacity: 1; }
.hh-search__submit {
  display: inline-flex;
  min-width: 158px;
  gap: 10px;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 1px;
  color: #fff;
  background: var(--hh-clay);
  font-size: .82rem;
  font-weight: 700;
  transition: background .2s ease, transform .2s ease;
}
.hh-search__submit:hover { background: var(--hh-clay-dark); transform: translateY(-1px); }
.hh-search__submit svg { width: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; }

.hh-hero__proof { display: flex; gap: 0; margin-top: 34px; color: rgba(255,255,255,.78); font-size: .76rem; font-weight: 600; letter-spacing: .035em; }
.hh-hero__proof span { display: flex; align-items: center; }
.hh-hero__proof span:not(:last-child)::after { width: 3px; height: 3px; margin: 0 17px; border-radius: 50%; background: var(--hh-clay); content: ""; }

/* Pathways */
.hh-pathways { background: var(--hh-paper); }
.hh-path-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--hh-line); border-left: 1px solid var(--hh-line); }
.hh-path-card {
  position: relative;
  min-height: 330px;
  padding: 34px 34px 38px;
  border-right: 1px solid var(--hh-line);
  border-bottom: 1px solid var(--hh-line);
  color: var(--hh-teal-deep);
  background: transparent;
  text-decoration: none !important;
  transition: color .25s ease, background .25s ease, transform .25s ease;
}
.hh-path-card:hover { z-index: 1; color: #fff; background: var(--hh-teal); transform: translateY(-6px); }
.hh-path-card--accent { background: var(--hh-chalk); }
.hh-path-card__index { color: var(--hh-clay-dark); font-size: .72rem; font-weight: 700; letter-spacing: .12em; }
.hh-path-card h3 { margin: 96px 0 12px; font-family: var(--hh-serif); font-size: 2.4rem; font-weight: 400; letter-spacing: -.04em; }
.hh-path-card p { max-width: 290px; margin: 0; color: var(--hh-ink-soft); font-size: .92rem; line-height: 1.7; }
.hh-path-card:hover p { color: rgba(255,255,255,.76); }
.hh-arrow { position: absolute; right: 30px; top: 28px; font-size: 1.5rem; font-weight: 300; }

/* Properties */
.hh-properties { background: var(--hh-chalk); }
.hh-section-heading--compact { align-items: end; margin-bottom: 44px; }
.hh-section-heading--compact h2 { font-size: clamp(2.3rem, 3.8vw, 3.9rem); }
.hh-text-link { display: inline-flex; gap: 8px; align-items: center; color: var(--hh-chalk); font-size: .8rem; font-weight: 700; letter-spacing: .05em; text-decoration: none !important; }
.hh-text-link--dark { justify-self: end; color: var(--hh-teal); }
.hh-text-link span { color: var(--hh-clay-dark); font-size: 1.1rem; }
.hh-property-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.hh-property-carousel { position: relative; }
.hh-property-carousel__track {
  display: flex;
  gap: 24px;
  padding: 6px 2px 28px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scroll-behavior: smooth;
  scroll-snap-type: inline mandatory;
  scrollbar-width: none;
  cursor: grab;
}
.hh-property-carousel__track::-webkit-scrollbar { display: none; }
.hh-property-carousel__track:focus-visible { outline: 2px solid var(--hh-clay-dark); outline-offset: 7px; }
.hh-property-carousel.is-dragging .hh-property-carousel__track { cursor: grabbing; scroll-snap-type: none; user-select: none; }
.hh-property-carousel .hh-property-card { flex: 0 0 calc((100% - 48px) / 3); min-width: 0; scroll-snap-align: start; }
.hh-property-carousel .hh-property-card h3 { font-size: 1.42rem; }
.hh-property-carousel__controls { display: flex; gap: 8px; justify-content: flex-end; }
.hh-property-carousel__controls button {
  display: grid;
  width: 44px;
  height: 44px;
  padding: 0;
  place-items: center;
  border: 1px solid var(--hh-line);
  border-radius: 50%;
  color: var(--hh-teal-deep);
  background: var(--hh-paper);
  font-size: 1.15rem;
  cursor: pointer;
  transition: color .2s ease, background .2s ease, border-color .2s ease;
}
.hh-property-carousel__controls button:hover,
.hh-property-carousel__controls button:focus-visible { color: var(--hh-teal-deep); background: var(--hh-clay); border-color: var(--hh-clay); }
.hh-drag-cursor {
  position: fixed;
  z-index: 1100;
  display: grid;
  width: 76px;
  height: 76px;
  visibility: hidden;
  place-items: center;
  border-radius: 50%;
  color: #fff;
  background: var(--hh-teal-deep);
  box-shadow: 0 14px 38px rgba(6,45,42,.2);
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%,-50%) scale(.82);
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.hh-drag-cursor span { font-size: .63rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
@media (hover:hover) and (pointer:fine) {
  .hh-property-carousel:hover .hh-drag-cursor { visibility: visible; opacity: 1; transform: translate(-50%,-50%) scale(1); }
  .hh-property-carousel:hover .hh-property-carousel__controls,
  .hh-property-carousel:hover a { cursor: none; }
}
.hh-property-card { overflow: hidden; background: var(--hh-paper); border: 1px solid var(--hh-line); transition: box-shadow .25s ease, transform .25s ease; }
.hh-property-card:hover { box-shadow: var(--hh-shadow); transform: translateY(-5px); }
.hh-property-card__media { position: relative; display: block; aspect-ratio: 4 / 3; overflow: hidden; }
.hh-property-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.hh-property-card:hover img { transform: scale(1.035); }
.hh-property-card__placeholder { display: block; width: 100%; height: 100%; background: linear-gradient(145deg, var(--hh-sage-soft), #b8c4ba); }
.hh-chip { position: absolute; left: 16px; top: 16px; padding: 7px 10px; color: #fff; background: var(--hh-teal); font-size: .63rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.hh-property-card__body { padding: 22px; }
.hh-property-card__location { margin-bottom: 7px; color: var(--hh-clay-dark); font-size: .7rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.hh-property-card h3 { margin: 0 0 22px; font-family: var(--hh-serif); font-size: 1.65rem; font-weight: 400; line-height: 1.15; }
.hh-property-card h3 a { text-decoration: none; }
.hh-property-card__meta { display: flex; gap: 14px; align-items: center; padding-top: 16px; border-top: 1px solid var(--hh-line); color: var(--hh-ink-soft); font-size: .76rem; }
.hh-property-card__meta strong { margin-left: auto; color: var(--hh-teal); font-size: .9rem; }

.hh-feed-preview {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  min-height: 410px;
  background: var(--hh-paper);
  border: 1px solid var(--hh-line);
}
.hh-feed-preview__visual {
  position: relative;
  overflow: hidden;
  min-height: 410px;
  background: linear-gradient(140deg, var(--hh-teal-deep), var(--hh-sage));
}
.hh-feed-preview__visual::before { position: absolute; inset: 0; opacity: .42; background: url("../images/handhome-hero.webp") center / cover; content: ""; mix-blend-mode: luminosity; }
.hh-feed-preview__visual span { position: absolute; z-index: 1; border: 1px solid rgba(255,255,255,.35); }
.hh-feed-preview__visual span:nth-child(1) { width: 48%; height: 58%; left: 9%; top: 12%; }
.hh-feed-preview__visual span:nth-child(2) { width: 38%; height: 46%; right: 7%; bottom: 9%; }
.hh-feed-preview__visual span:nth-child(3) { width: 110px; height: 110px; left: 42%; top: 38%; border-radius: 50%; background: rgba(202,195,175,.9); border: 0; }
.hh-feed-preview > div:last-child { display: flex; padding: 60px; flex-direction: column; justify-content: center; }
.hh-feed-preview h3 { margin-bottom: 20px; color: var(--hh-teal-deep); font-family: var(--hh-serif); font-size: clamp(2rem, 3vw, 3.1rem); font-weight: 400; letter-spacing: -.04em; line-height: 1.05; }
.hh-feed-preview > div:last-child > p:last-child { margin: 0; color: var(--hh-ink-soft); line-height: 1.75; }

/* Investment */
.hh-investment { padding: 116px 0; color: #fff; background: var(--hh-teal-deep); }
.hh-investment__grid { display: grid; grid-template-columns: 120px 1.15fr .85fr; gap: 62px; align-items: start; }
.hh-investment__number { width: 98px; height: 98px; border: 1px solid rgba(255,255,255,.26); border-radius: 50%; color: var(--hh-clay); font-family: var(--hh-serif); font-size: 3.9rem; line-height: 96px; text-align: center; }
.hh-investment h2 { color: #fff; font-size: clamp(2.7rem, 4.6vw, 4.8rem); }
.hh-investment__grid > div:last-child { padding-top: 41px; }
.hh-investment__grid > div:last-child p { margin-bottom: 32px; color: rgba(255,255,255,.72); font-size: 1rem; line-height: 1.85; }
.hh-button { display: inline-flex; min-height: 52px; padding: 0 24px; align-items: center; justify-content: center; border: 1px solid transparent; border-radius: 999px; font-size: .78rem; font-weight: 700; letter-spacing: .055em; text-decoration: none !important; transition: .2s ease; }
.hh-button--light { border-color: rgba(255,255,255,.55); color: #fff; }
.hh-button--light:hover { color: var(--hh-teal-deep); background: var(--hh-chalk); border-color: var(--hh-chalk); }
.hh-button--primary { color: #fff; background: var(--hh-clay-dark); }
.hh-button--primary:hover { color: var(--hh-teal-deep); background: var(--hh-clay); transform: translateY(-1px); }

/* Services and owner */
.hh-services { background: var(--hh-paper); }
.hh-services__grid { display: grid; grid-template-columns: .88fr 1.12fr; gap: 120px; }
.hh-services__intro { position: sticky; top: 120px; align-self: start; }
.hh-services__intro h2 { font-size: clamp(2.5rem, 4vw, 4.1rem); }
.hh-services__directory { display: grid; gap: 30px; }
.hh-service-list { border-top: 1px solid var(--hh-line); }
.hh-service-list article, .hh-service-list > a { display: grid; grid-template-columns: 48px 1fr; gap: 24px; padding: 34px 0; border-bottom: 1px solid var(--hh-line); text-decoration: none; }
.hh-service-list article > span, .hh-service-list > a > span { padding-top: 4px; color: var(--hh-clay); font-size: .72rem; font-weight: 700; letter-spacing: .12em; }
.hh-service-list > a { transition: padding .2s ease; }
.hh-service-list > a:hover { padding-left: 12px; }
.hh-service-list h3 { margin-bottom: 7px; color: var(--hh-teal-deep); font-family: var(--hh-serif); font-size: 1.85rem; font-weight: 400; letter-spacing: -.03em; }
.hh-service-list p { margin: 0; color: var(--hh-ink-soft); }
.hh-service-directory-link { display: inline-flex; width: fit-content; min-height: 48px; padding: 0 20px; gap: 26px; align-items: center; justify-self: end; border: 1px solid var(--hh-teal); border-radius: 999px; color: var(--hh-teal-deep); font-size: .75rem; font-weight: 750; letter-spacing: .045em; text-decoration: none; transition: .2s ease; }
.hh-service-directory-link b { color: var(--hh-clay); font-size: 1rem; font-weight: 400; }
.hh-service-directory-link:hover { color: #fff; background: var(--hh-teal); }
.hh-service-directory-link:hover b { color: #fff; }

.hh-owner { padding: 96px 0; background: var(--hh-sage-soft); }
.hh-owner__grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 100px; align-items: end; }
.hh-owner h2 { font-size: clamp(2.5rem, 4.6vw, 4.6rem); }
.hh-owner__grid > div:last-child p { margin-bottom: 28px; color: var(--hh-ink-soft); font-size: 1.02rem; line-height: 1.75; }
.hh-owner .hh-eyebrow { color: #655f51; }
.hh-owner .hh-button--primary,
.hh-owner a.hh-button--primary {
  border-color: var(--hh-teal-deep) !important;
  color: #fff !important;
  background: var(--hh-teal-deep) !important;
}
.hh-owner .hh-button--primary:hover,
.hh-owner a.hh-button--primary:hover {
  border-color: var(--hh-clay-dark) !important;
  color: #fff !important;
  background: var(--hh-clay-dark) !important;
}

/* Native Houzez property archive: inherit the HandHome catalogue system. */
body.handhome-site.post-type-archive-property .page-title-wrap,
body.handhome-site.tax-property_status .page-title-wrap,
body.handhome-site.tax-property_type .page-title-wrap,
body.handhome-site.tax-property_city .page-title-wrap,
body.handhome-site.tax-property_area .page-title-wrap {
  color: var(--hh-teal-deep);
  background: var(--hh-paper);
}
body.handhome-site.post-type-archive-property :where(.listing-tools-wrap, .sort-by, .sort-by-title, .bootstrap-select > .dropdown-toggle),
body.handhome-site[class*="tax-property_"] :where(.listing-tools-wrap, .sort-by, .sort-by-title, .bootstrap-select > .dropdown-toggle) {
  color: var(--hh-teal-deep) !important;
}
body.handhome-site.post-type-archive-property .bootstrap-select > .dropdown-toggle,
body.handhome-site[class*="tax-property_"] .bootstrap-select > .dropdown-toggle {
  border-color: transparent !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.handhome-site.post-type-archive-property .bootstrap-select > .dropdown-toggle::after,
body.handhome-site[class*="tax-property_"] .bootstrap-select > .dropdown-toggle::after {
  color: var(--hh-clay-dark) !important;
}
body.handhome-site.post-type-archive-property :where(.listing-switch-view .switch-btn, .listing-switch-view a, .listing-tools-wrap .houzez-icon),
body.handhome-site[class*="tax-property_"] :where(.listing-switch-view .switch-btn, .listing-switch-view a, .listing-tools-wrap .houzez-icon) {
  color: var(--hh-sage) !important;
}
body.handhome-site.post-type-archive-property :where(.listing-switch-view .switch-btn.active, .listing-switch-view .switch-btn:hover, .listing-switch-view a.active, .listing-switch-view a:hover),
body.handhome-site[class*="tax-property_"] :where(.listing-switch-view .switch-btn.active, .listing-switch-view .switch-btn:hover, .listing-switch-view a.active, .listing-switch-view a:hover) {
  color: var(--hh-clay-dark) !important;
}
body.handhome-site.post-type-archive-property .item-wrap,
body.handhome-site[class*="tax-property_"] .item-wrap {
  overflow: hidden;
  border: 1px solid var(--hh-line) !important;
  border-radius: 0 !important;
  background: var(--hh-paper) !important;
  box-shadow: none !important;
}
body.handhome-site.post-type-archive-property .item-title a,
body.handhome-site[class*="tax-property_"] .item-title a {
  color: var(--hh-teal-deep) !important;
}
body.handhome-site.post-type-archive-property .item-title a:hover,
body.handhome-site[class*="tax-property_"] .item-title a:hover {
  color: var(--hh-clay-dark) !important;
}
body.handhome-site.post-type-archive-property .property-labels-wrap .label-status,
body.handhome-site.post-type-archive-property .labels-wrap .label-status,
body.handhome-site[class*="tax-property_"] .property-labels-wrap .label-status,
body.handhome-site[class*="tax-property_"] .labels-wrap .label-status {
  border: 1px solid #655f51 !important;
  color: #fff !important;
  background: #655f51 !important;
  text-shadow: none !important;
}
body.handhome-site.post-type-archive-property .item-wrap a.btn.btn-primary.btn-item,
body.handhome-site[class*="tax-property_"] .item-wrap a.btn.btn-primary.btn-item {
  border: 1px solid var(--hh-teal-deep) !important;
  border-radius: 0 !important;
  color: #fff !important;
  background: var(--hh-teal-deep) !important;
  box-shadow: none !important;
}
body.handhome-site.post-type-archive-property .item-wrap a.btn.btn-primary.btn-item:hover,
body.handhome-site[class*="tax-property_"] .item-wrap a.btn.btn-primary.btn-item:hover {
  border-color: var(--hh-clay-dark) !important;
  color: #fff !important;
  background: var(--hh-clay-dark) !important;
}
body.handhome-site.post-type-archive-property .item-tools .item-tool > span,
body.handhome-site[class*="tax-property_"] .item-tools .item-tool > span {
  border-color: rgba(255,255,255,.72) !important;
  color: #fff !important;
  background: rgba(8,41,39,.82) !important;
}
body.handhome-site.post-type-archive-property .item-price-wrap,
body.handhome-site[class*="tax-property_"] .item-price-wrap {
  color: #fff !important;
  text-shadow: 0 1px 7px rgba(0,0,0,.72);
}
body.handhome-site.post-type-archive-property .bootstrap-select .dropdown-item.active,
body.handhome-site.post-type-archive-property .bootstrap-select .dropdown-item:active,
body.handhome-site[class*="tax-property_"] .bootstrap-select .dropdown-item.active,
body.handhome-site[class*="tax-property_"] .bootstrap-select .dropdown-item:active {
  color: #fff !important;
  background: var(--hh-teal-deep) !important;
}

/* HandHome editorial property archive and cards. */
.hh-properties-archive { overflow: hidden; background: var(--hh-paper); }
.hh-properties-hero {
  position: relative;
  padding: clamp(108px, 13vw, 184px) 0 clamp(86px, 10vw, 142px);
  color: #fff;
  background:
    radial-gradient(circle at 86% 22%, rgba(202,195,175,.16), transparent 30%),
    var(--hh-teal-deep);
}
.hh-properties-hero::after {
  position: absolute;
  right: -7vw;
  bottom: -34%;
  width: min(42vw, 630px);
  aspect-ratio: 1;
  border: 1px solid rgba(202,195,175,.2);
  border-radius: 50%;
  content: "";
}
.hh-properties-hero__grid {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0,1.35fr) minmax(280px,.65fr);
  gap: clamp(54px, 9vw, 140px);
  align-items: end;
}
.hh-properties-hero .hh-eyebrow { color: var(--hh-clay); }
.hh-properties-hero h1 {
  max-width: 850px;
  margin: 0;
  color: #fff;
  font-family: var(--hh-serif);
  font-size: clamp(4rem, 7.6vw, 7.4rem);
  font-weight: 400;
  letter-spacing: -.055em;
  line-height: .91;
}
.hh-properties-hero__aside { padding-bottom: 10px; }
.hh-properties-hero__aside p { margin-bottom: 28px; color: rgba(255,255,255,.7); font-size: 1rem; line-height: 1.8; }
.hh-properties-hero .hh-text-link { color: #fff; }
.hh-properties-catalogue { padding: clamp(78px, 9vw, 126px) 0 118px; background: var(--hh-paper); }
.hh-properties-catalogue > .hh-shell { width: var(--hh-shell); }
.hh-properties-catalogue__heading {
  display: flex;
  margin-bottom: 42px;
  align-items: end;
  justify-content: space-between;
  border-bottom: 1px solid var(--hh-line);
}
.hh-properties-catalogue__heading h2 {
  margin: 0 0 34px;
  color: var(--hh-teal-deep);
  font-family: var(--hh-serif);
  font-size: clamp(3rem, 5vw, 5.15rem);
  font-weight: 400;
  letter-spacing: -.045em;
  line-height: .96;
}
.hh-properties-catalogue__heading > p { margin-bottom: 38px; color: var(--hh-clay-dark); font-weight: 700; }
.hh-properties-description { max-width: 780px; margin: -12px 0 42px; color: var(--hh-ink-soft); }
.hh-properties-toolbar {
  display: flex;
  min-height: 68px;
  margin-bottom: 28px;
  padding: 0 22px;
  align-items: center;
  justify-content: space-between;
  border: 1px solid var(--hh-line);
  background: var(--hh-chalk);
}
.hh-properties-toolbar__prompt { color: var(--hh-ink-soft); font-size: .84rem; }
.hh-properties-toolbar .sort-by { margin-left: auto; }
.hh-properties-toolbar .sort-by > .d-flex { gap: 10px; }
.hh-properties-toolbar :where(.sort-by-title, .dropdown-toggle, .filter-option) { color: var(--hh-teal-deep) !important; }
.hh-properties-toolbar .bootstrap-select > .dropdown-toggle { border: 0 !important; background: transparent !important; box-shadow: none !important; }
.hh-premium-listings { display: grid !important; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 30px; }
.hh-premium-listings .hh-listing-card { width: auto !important; margin: 0 !important; padding: 0 !important; }
.hh-listing-card__inner {
  height: 100%;
  overflow: hidden;
  border: 1px solid var(--hh-line) !important;
  background: var(--hh-paper) !important;
  box-shadow: none !important;
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
.hh-listing-card__inner:hover { border-color: rgba(18,63,59,.36) !important; box-shadow: 0 28px 64px rgba(10,35,32,.1) !important; transform: translateY(-5px); }
.hh-listing-card__media { position: relative; overflow: hidden; aspect-ratio: 16 / 10.5; background: var(--hh-sage-soft); }
.hh-listing-card__media .listing-image-wrap,
.hh-listing-card__media .listing-thumb,
.hh-listing-card__media .listing-featured-thumb { display: block; width: 100%; height: 100%; }
.hh-listing-card__media img { width: 100%; height: 100% !important; object-fit: cover; transition: transform .55s ease; }
.hh-listing-card__inner:hover .hh-listing-card__media img { transform: scale(1.035); }
.hh-listing-card__media::after { position: absolute; inset: auto 0 0; height: 43%; background: linear-gradient(transparent,rgba(5,28,27,.55)); pointer-events: none; content: ""; }
.hh-listing-card__labels { position: absolute; z-index: 4; top: 20px; left: 20px; margin: 0 !important; }
.hh-listing-card__labels .label { padding: 7px 10px !important; color: #fff !important; background: #655f51 !important; font-size: .61rem; font-weight: 800; letter-spacing: .07em; }
.hh-listing-card__price { position: absolute !important; z-index: 4; right: 22px; bottom: 18px; margin: 0 !important; color: #fff !important; text-shadow: 0 2px 12px rgba(0,0,0,.75); }
.hh-listing-card__price .item-price { font-family: var(--hh-serif); font-size: 1.72rem; font-weight: 500; }
.hh-listing-card__media .item-tools { z-index: 5; right: 18px; bottom: 62px; }
.hh-listing-card__media .item-tool > span { border: 1px solid rgba(255,255,255,.72) !important; color: #fff !important; background: rgba(8,41,39,.78) !important; }
.hh-listing-card__body { position: relative; display: flex; min-height: 275px; padding: 30px 30px 26px !important; flex-direction: column; }
.hh-listing-card__index { margin-bottom: 15px; color: var(--hh-clay-dark); font-size: .65rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.hh-listing-card__body .item-title { margin: 0 0 14px !important; overflow: visible; white-space: normal; text-overflow: unset; }
.hh-listing-card__body .item-title a { color: var(--hh-teal-deep) !important; font-family: var(--hh-serif); font-size: clamp(1.65rem,2.2vw,2.15rem); font-weight: 400; letter-spacing: -.035em; line-height: 1.06; }
.hh-listing-card__body .item-title a:hover { color: var(--hh-clay-dark) !important; }
.hh-listing-card__body .item-address { color: var(--hh-ink-soft); font-size: .83rem; }
.hh-listing-card__body .item-amenities { margin: 12px 0 22px !important; padding-top: 18px; border-top: 1px solid var(--hh-line); color: var(--hh-graphite); font-size: .79rem; }
.hh-listing-card__body .item-amenities i { color: var(--hh-clay-dark); }
.hh-listing-card__footer { display: flex; margin-top: auto; padding-top: 20px; align-items: center; justify-content: space-between; border-top: 1px solid var(--hh-line); }
.hh-listing-card__footer .btn-item { position: absolute; inset: 0; width: 100%; height: 100%; border: 0 !important; opacity: 0; }
.hh-listing-card__footer > span { color: var(--hh-teal-deep); font-size: .71rem; font-weight: 800; letter-spacing: .055em; }
.hh-properties-catalogue .pagination-wrap { margin-top: 62px; }

@media (max-width: 991px) {
  .hh-properties-hero__grid { grid-template-columns: 1fr; gap: 38px; }
  .hh-properties-hero__aside { max-width: 620px; }
  .hh-premium-listings { grid-template-columns: 1fr 1fr; gap: 20px; }
  .hh-listing-card__body { padding: 26px 24px 24px !important; }
}
@media (max-width: 767px) {
  .hh-properties-hero { padding: 92px 0 78px; }
  .hh-properties-hero h1 { font-size: clamp(3.55rem,15vw,5rem); }
  .hh-properties-catalogue { padding: 72px 0 84px; }
  .hh-properties-catalogue__heading { display: block; }
  .hh-properties-catalogue__heading h2 { margin-bottom: 20px; }
  .hh-properties-catalogue__heading > p { margin-bottom: 26px; }
  .hh-properties-toolbar { min-height: 0; padding: 18px; gap: 12px; align-items: stretch; flex-direction: column; }
  .hh-properties-toolbar .sort-by { width: 100%; margin: 0; }
  .hh-properties-toolbar .sort-by > .d-flex { justify-content: space-between; }
  .hh-premium-listings { grid-template-columns: 1fr; gap: 22px; }
  .hh-listing-card__media { aspect-ratio: 4 / 3; }
  .hh-listing-card__body { min-height: 0; }
  .hh-listing-card__body .item-title a { font-size: 1.9rem; }
}

/* Native Houzez search, accounts, favourites and saved searches */
.hh-account-nav { position: relative; display: flex; flex: 0 0 auto; align-items: center; }
.hh-account-control {
  display: inline-flex;
  width: 38px;
  height: 38px;
  padding: 0;
  gap: 9px;
  align-items: center;
  justify-content: center;
  border: 1px solid currentColor;
  border-radius: 50%;
  color: inherit;
  background: transparent;
  text-decoration: none !important;
  transition: color .2s ease, background .2s ease, border-color .2s ease;
}
.hh-account-control::after { display: none; }
.hh-account-control svg { width: 19px; fill: none; stroke: currentColor; stroke-width: 1.55; }
.hh-account-control > span { display: none; }
.hh-account-control:hover,
.hh-account-control:focus-visible { color: var(--hh-teal-deep); background: var(--hh-clay); border-color: var(--hh-clay); outline: 0; }
.hh-account-dropdown {
  right: 0 !important;
  left: auto !important;
  min-width: 248px;
  margin-top: 12px !important;
  padding: 9px;
  border: 1px solid var(--hh-line);
  border-radius: 2px;
  background: var(--hh-paper);
  box-shadow: var(--hh-shadow);
}
.hh-account-dropdown .dropdown-item { padding: 10px 12px; color: var(--hh-teal-deep); font-size: .78rem; font-weight: 650; }
.hh-account-dropdown .dropdown-item:hover,
.hh-account-dropdown .dropdown-item:focus { color: #fff; background: var(--hh-teal); }

.hh-search__field--keyword { z-index: 20; }
.hh-search .auto-complete {
  position: absolute;
  z-index: 40;
  top: calc(100% + 10px);
  right: -1px;
  left: -1px;
  display: none;
  overflow: hidden;
  border: 1px solid var(--hh-line);
  color: var(--hh-graphite);
  background: var(--hh-paper);
  box-shadow: 0 22px 52px rgba(10,35,32,.2);
}
.hh-search .auto-complete .list-group {
  max-height: min(330px, 42vh);
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  overflow-y: auto;
  border-radius: 0;
  list-style: none;
}
.hh-search .auto-complete .list-group-item {
  flex: 0 0 auto;
  min-height: 90px;
  margin: 0;
  padding: 13px 15px !important;
  border: 0;
  border-bottom: 1px solid var(--hh-line);
  color: var(--hh-teal-deep);
  background: transparent;
  cursor: pointer;
  font-size: .8rem;
  line-height: 1.35;
}
.hh-search .auto-complete .list-group-item > .d-flex {
  gap: 14px;
  align-items: center !important;
}
.hh-search .auto-complete .list-group-item:last-child { border-bottom: 0; }
.hh-search .auto-complete .list-group-item:hover,
.hh-search .auto-complete .list-group-item:focus-within { background: rgba(202,195,175,.24); }
.hh-search .auto-complete a { color: var(--hh-teal-deep) !important; text-decoration: none !important; }
.hh-search .auto-complete .auto-complete-footer { gap: 12px; padding: 12px 15px; border-top: 1px solid var(--hh-line); background: var(--hh-chalk); font-size: .7rem; }
.hh-search .auto-complete .auto-complete-image-wrap { flex: 0 0 62px; margin: 0 !important; }
.hh-search .auto-complete .auto-complete-image-wrap img { width: 62px; height: 62px; border-radius: 0 !important; object-fit: cover; }
.hh-search .auto-complete .auto-complete-content-wrap { flex: 1 1 0; min-width: 0; margin-left: 0 !important; }
.hh-search .auto-complete .auto-complete-title { margin: 0 !important; font-size: .83rem; font-weight: 750; line-height: 1.35; }
.hh-search .auto-complete .item-price-wrap { display: block !important; margin: 6px 0 0 !important; }
.hh-search .auto-complete .item-price { margin: 0 !important; color: var(--hh-clay-dark); font-size: .76rem !important; font-weight: 800; line-height: 1.25 !important; }
.hh-search .auto-complete .auto-complete-content-wrap > div:last-child { margin: 5px 0 0 !important; }
.hh-search .auto-complete .item-amenities { margin: 0 !important; color: var(--hh-ink-soft); font-size: .62rem; font-weight: 750; letter-spacing: .06em; line-height: 1.25; text-transform: uppercase; }
.hh-search .auto-complete .list-group::-webkit-scrollbar-thumb { background: var(--hh-clay-dark); outline-color: var(--hh-clay-dark); }

.hh-property-card { position: relative; }
.hh-property-card__favorite {
  position: absolute;
  z-index: 4;
  top: 15px;
  right: 15px;
  display: grid;
  width: 40px;
  height: 40px;
  padding: 0;
  place-items: center;
  border: 1px solid rgba(255,255,255,.52);
  border-radius: 50%;
  color: #fff;
  background: rgba(11,47,45,.74);
  box-shadow: 0 8px 24px rgba(10,35,32,.2);
  cursor: pointer;
  transition: color .2s ease, background .2s ease, transform .2s ease;
}
.hh-property-card__favorite:hover,
.hh-property-card__favorite:focus-visible { color: var(--hh-teal-deep); background: var(--hh-clay); outline: 0; transform: translateY(-1px); }
.hh-property-card__favorite i { margin: 0; font-size: 18px; }
.hh-property-card__favorite i.text-danger { color: #fff !important; }
.hh-property-card__favorite.remove_fav { color: var(--hh-teal-deep); background: var(--hh-clay); border-color: var(--hh-clay); }

body.handhome-site .login-register-form .modal-dialog { max-width: 470px; }
body.handhome-site .login-register-form .modal-content,
body.handhome-site #reset-password-form .modal-content {
  overflow: hidden;
  border: 1px solid var(--hh-line);
  border-radius: 3px;
  background: var(--hh-paper);
  box-shadow: 0 34px 90px rgba(7,35,33,.28);
}
body.handhome-site .login-register-form .modal-header,
body.handhome-site #reset-password-form .modal-header { padding: 22px 26px 0; border: 0; }
body.handhome-site .login-register-form .modal-body,
body.handhome-site #reset-password-form .modal-body { padding: 26px; }
body.handhome-site .login-register-form .nav-tabs { border-color: var(--hh-line); }
body.handhome-site .login-register-form .nav-link {
  padding: 10px 4px 12px;
  margin-right: 24px;
  border: 0;
  border-bottom: 2px solid transparent;
  color: var(--hh-ink-soft);
  background: transparent;
  font-size: .73rem;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}
body.handhome-site .login-register-form .nav-link.active { color: var(--hh-teal-deep); border-bottom-color: var(--hh-clay-dark); }
body.handhome-site .login-register-form .form-control,
body.handhome-site #reset-password-form .form-control {
  min-height: 52px;
  border: 1px solid var(--hh-line);
  border-radius: 2px;
  color: var(--hh-graphite);
  background: #fff;
  box-shadow: none;
}
body.handhome-site .login-register-form .form-control:focus,
body.handhome-site #reset-password-form .form-control:focus { border-color: var(--hh-teal); box-shadow: 0 0 0 3px rgba(18,63,59,.1); }
body.handhome-site .login-register-form .form-tools { margin: 18px 0; color: var(--hh-ink-soft); font-size: .77rem; }
body.handhome-site .login-register-form .form-tools a { color: var(--hh-teal-deep); font-weight: 700; }
body.handhome-site .login-register-form .btn-primary,
body.handhome-site #reset-password-form .btn-primary { min-height: 50px; border-color: var(--hh-teal-deep); border-radius: 2px; color: #fff; background: var(--hh-teal-deep); font-weight: 750; }
body.handhome-site .login-register-form .btn-primary:hover,
body.handhome-site #reset-password-form .btn-primary:hover { border-color: var(--hh-clay-dark); background: var(--hh-clay-dark); }

body.handhome-site.houzez-dashboard-body { color: var(--hh-graphite); background: var(--hh-chalk); font-family: var(--hh-sans); }
body.handhome-site.houzez-dashboard-body .dashboard-sidebar { color: var(--hh-teal-deep); background: var(--hh-paper); border-right: 1px solid var(--hh-line); }
body.handhome-site.houzez-dashboard-body .sidebar-logo { border-bottom: 1px solid var(--hh-line); }
body.handhome-site.houzez-dashboard-body .sidebar-logo img { width: 218px; max-height: 62px; object-fit: contain; }
body.handhome-site.houzez-dashboard-body .sidebar-nav .nav-box h5 { color: var(--hh-clay-dark); font-size: .66rem; letter-spacing: .14em; text-transform: uppercase; }
body.handhome-site.houzez-dashboard-body .sidebar-nav a { color: var(--hh-teal-deep); }
body.handhome-site.houzez-dashboard-body .sidebar-nav a:hover,
body.handhome-site.houzez-dashboard-body .sidebar-nav a.active { color: #fff; background: var(--hh-teal); }
body.handhome-site.houzez-dashboard-body .dashboard-right > .header { border-bottom: 1px solid var(--hh-line); background: rgba(251,250,246,.97); box-shadow: 0 8px 30px rgba(10,35,32,.07); }
body.handhome-site.houzez-dashboard-body .dashboard-content { background: var(--hh-chalk); }
body.handhome-site.houzez-dashboard-body .dashboard-content .heading h2 { color: var(--hh-teal-deep); font-family: var(--hh-serif); font-size: clamp(2.25rem,4vw,3.5rem); font-weight: 400; letter-spacing: -.04em; }
body.handhome-site.houzez-dashboard-body .houzez-data-content,
body.handhome-site.houzez-dashboard-body .stats-box,
body.handhome-site.houzez-dashboard-body .dashboard-content .form-step {
  border: 1px solid var(--hh-line);
  border-radius: 2px;
  background: var(--hh-paper);
  box-shadow: 0 18px 48px rgba(10,35,32,.07);
}
body.handhome-site.houzez-dashboard-body .table { color: var(--hh-graphite); }
body.handhome-site.houzez-dashboard-body .table > :not(caption) > * > * { padding: 16px; border-bottom-color: var(--hh-line); }
body.handhome-site.houzez-dashboard-body .table thead th { color: var(--hh-teal-deep); background: rgba(202,195,175,.2); font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; }
body.handhome-site.houzez-dashboard-body .btn-primary { border-color: var(--hh-teal-deep); color: #fff; background: var(--hh-teal-deep); }
body.handhome-site.houzez-dashboard-body .btn-primary:hover { border-color: var(--hh-clay-dark); background: var(--hh-clay-dark); }
body.handhome-site.houzez-dashboard-body a:not(.btn):hover { color: var(--hh-clay-dark); }

@media (max-width: 1100px) and (min-width: 992px) {
  .hh-primary-nav--right { gap: 8px; }
  .hh-account-control { width: 34px; height: 34px; }
}

@media (max-width: 991px) {
  .hh-account-nav { width: 100%; margin-top: 20px; padding-top: 18px; border-top: 1px solid var(--hh-line); }
  .hh-account-control { width: 100%; height: 50px; padding: 0 18px; justify-content: flex-start; border-radius: 2px; color: #fff !important; background: var(--hh-teal-deep); }
  .hh-account-control > span { display: inline; font-family: var(--hh-sans); font-size: .73rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
  .hh-account-dropdown { position: static !important; width: 100%; margin-top: 8px !important; transform: none !important; box-shadow: none; }
}

@media (max-width: 767px) {
  .hh-search .auto-complete { top: calc(100% + 8px); max-height: 300px; }
  body.handhome-site .login-register-form .modal-dialog { margin: 14px; }
  body.handhome-site .login-register-form .modal-header,
  body.handhome-site .login-register-form .modal-body,
  body.handhome-site #reset-password-form .modal-header,
  body.handhome-site #reset-password-form .modal-body { padding-right: 20px; padding-left: 20px; }
  body.handhome-site.houzez-dashboard-body .dashboard-content { padding: 28px 18px 42px; }
  body.handhome-site.houzez-dashboard-body .dashboard-content .heading h2 { font-size: 2.35rem; }
}

/* Footer */
.hh-site-footer { padding: 76px 0 26px; color: rgba(255,255,255,.78); background: #082927; }
.hh-footer-grid { display: grid; grid-template-columns: 1.3fr .7fr 1fr; gap: 90px; padding-bottom: 64px; }
.hh-brand--footer { color: var(--hh-chalk); }
.hh-brand--footer img { width: 290px; height: auto; filter: none !important; }
.hh-footer-brand > p { max-width: 350px; margin: 25px 0 0; color: rgba(255,255,255,.58); }
.hh-footer-label { margin-bottom: 20px; color: var(--hh-clay); font-size: .68rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; }
.hh-footer-menu,
.hh-site-footer .hh-menu { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.hh-footer-menu a,
.hh-site-footer .hh-menu a { padding: 0; color: rgba(255,255,255,.74); font-size: .86rem; text-decoration: none; }
.hh-footer-menu a:hover,
.hh-site-footer .hh-menu a:hover { color: #fff; }
.hh-site-footer .hh-menu a::after { display: none; }
.hh-footer-contact { display: grid; max-width: 340px; margin-bottom: 14px; gap: 8px; color: rgba(255,255,255,.55); font-size: .86rem; font-style: normal; }
.hh-footer-contact a { color: rgba(255,255,255,.82); text-decoration: none; }
.hh-footer-contact a:hover { color: #fff; }
.hh-footer-bottom { display: flex; padding-top: 24px; justify-content: space-between; border-top: 1px solid rgba(255,255,255,.13); }
.hh-footer-bottom p { margin: 0; color: rgba(255,255,255,.42); font-size: .7rem; }
.hh-footer-bottom a { color: inherit; text-decoration: none; }

/* Parent-theme interiors */
body.handhome-site:not(.handhome-home) { padding-top: 76px; }
body.handhome-site:not(.handhome-home) .page-title-wrap,
body.handhome-site:not(.handhome-home) .listing-wrap { font-family: var(--hh-sans); }
body.handhome-site:not(.handhome-home) .page-title h1,
body.handhome-site:not(.handhome-home) .property-title-wrap h1 { color: var(--hh-teal-deep); font-family: var(--hh-serif); font-weight: 400; letter-spacing: -.035em; }

@media (max-width: 1100px) {
  .hh-primary-nav { gap: 12px; }
  .hh-menu, .hh-primary-nav .menu { gap: 14px; }
  .hh-brand--header .hh-brand__logo { width: 196px; }
  .hh-primary-nav .menu a, .hh-primary-nav .hh-menu a { font-size: .72rem; }
  .hh-section-heading { gap: 54px; }
  .hh-investment__grid { grid-template-columns: 90px 1fr 1fr; gap: 38px; }
  .hh-services__grid { gap: 70px; }
}

@media (max-width: 991px) {
  :root { --hh-shell: min(100% - 36px, 760px); }
  .hh-section { padding: 84px 0; }
  .hh-site-header, body:not(.handhome-home) .hh-site-header, .hh-site-header.is-scrolled { height: 72px; }
  .hh-header-shell { display: flex; width: calc(100vw - 36px); justify-content: space-between; }
  .hh-brand--header { position: static; order: 1; transform: none; }
  .hh-brand--header .hh-brand__logo { display: none !important; }
  .hh-brand--header .hh-brand__logo-mobile {
    display: block;
    width: 196px;
    aspect-ratio: 827 / 186;
    background: url("../images/handhome-logo-client-3d-bronze-mobile.png?mobile=156") left center / contain no-repeat;
    forced-color-adjust: none;
  }
  .hh-menu-toggle { display: block; }
  .hh-menu-toggle { order: 3; }
  .hh-header-navigation {
    position: fixed;
    z-index: -1;
    inset: 72px 0 auto;
    display: flex;
    max-height: calc(100vh - 72px);
    padding: 34px 24px 42px;
    flex-direction: column;
    align-items: stretch;
    overflow-y: auto;
    color: var(--hh-teal-deep);
    background: var(--hh-paper);
    box-shadow: 0 30px 60px rgba(10,35,32,.16);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-12px);
    transition: .22s ease;
  }
  .hh-header-navigation.is-open { z-index: 1001; opacity: 1; pointer-events: auto; transform: translateY(0); }
  .hh-primary-nav { display: block; width: 100%; }
  .hh-primary-nav--right { margin-top: 0; }
  .hh-primary-nav .hh-menu, .hh-primary-nav .menu { display: grid; gap: 0; }
  .hh-primary-nav .hh-menu a, .hh-primary-nav .menu a { padding: 14px 2px; border-bottom: 1px solid var(--hh-line); font-family: var(--hh-serif); font-size: 1.45rem; font-weight: 400; }
  .hh-primary-nav .hh-menu a::after, .hh-primary-nav .menu a::after { display: none; }
  .hh-language-switcher { margin-top: 16px; }
  .hh-nav-open { overflow: hidden; }
  .hh-menu-toggle[aria-expanded="true"] > span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
  .hh-menu-toggle[aria-expanded="true"] > span:nth-child(2) { opacity: 0; }
  .hh-menu-toggle[aria-expanded="true"] > span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

  .hh-hero { min-height: 820px; align-items: flex-end; }
  .hh-hero__content { padding-top: 140px; padding-bottom: 60px; }
  .hh-hero__image { background-position: 62% center; }
  .hh-hero__veil { background: linear-gradient(90deg, rgba(7,35,33,.84), rgba(7,35,33,.38)), linear-gradient(0deg, rgba(7,35,33,.62), transparent 55%); }
  .hh-hero h1 { max-width: 640px; }
  .hh-search { grid-template-columns: 1fr 1fr; max-width: 680px; }
  .hh-search__field:nth-child(2) { border-right: 0; }
  .hh-search__field:nth-child(-n+2) { border-bottom: 1px solid var(--hh-line); }
  .hh-search__submit { min-height: 66px; }

  .hh-section-heading { grid-template-columns: 1fr; gap: 24px; }
  .hh-section-heading > p { max-width: 580px; }
  .hh-path-grid { grid-template-columns: 1fr; }
  .hh-path-card { min-height: 240px; }
  .hh-path-card h3 { margin-top: 62px; }
  .hh-property-grid { grid-template-columns: 1fr 1fr; }
  .hh-property-card:last-child { display: none; }
  .hh-feed-preview { grid-template-columns: 1fr; }
  .hh-feed-preview__visual { min-height: 340px; }
  .hh-investment__grid { grid-template-columns: 74px 1fr; }
  .hh-investment__grid > div:last-child { grid-column: 2; padding-top: 0; }
  .hh-investment__number { width: 66px; height: 66px; font-size: 2.6rem; line-height: 64px; }
  .hh-services__grid { grid-template-columns: 1fr; gap: 54px; }
  .hh-services__intro { position: static; }
  .hh-owner__grid { grid-template-columns: 1fr; gap: 34px; }
  .hh-footer-grid { grid-template-columns: 1fr 1fr; }
  .hh-footer-brand { grid-column: 1 / -1; }
}

@media (max-width: 640px) {
  :root { --hh-shell: calc(100vw - 28px); }
  .hh-section { padding: 68px 0; }
  .hh-header-shell { width: calc(100vw - 28px); }
  .hh-brand--header .hh-brand__logo-mobile { width: 210px; }
  .hh-brand__text strong { font-size: 1.42rem; }
  .hh-brand__text small { font-size: .51rem; }
  .hh-hero { min-height: 800px; }
  .hh-hero__content { padding-bottom: 34px; }
  .hh-hero h1 { font-size: clamp(3.25rem, 15vw, 4.5rem); }
  .hh-hero__intro { font-size: .97rem; }
  .hh-search { grid-template-columns: 1fr; padding: 8px; }
  .hh-search__field { min-height: 58px; border-right: 0; border-bottom: 1px solid var(--hh-line); }
  .hh-search__field:nth-child(3) { border-bottom: 1px solid var(--hh-line); }
  .hh-search__submit { min-height: 54px; }
  .hh-hero__proof { display: grid; gap: 7px; margin-top: 20px; }
  .hh-hero__proof span::after { display: none; }
  .hh-section-heading h2, .hh-services__intro h2, .hh-owner h2, .hh-investment h2 { font-size: clamp(2.45rem, 12vw, 3.45rem); }
  .hh-section-heading { margin-bottom: 38px; }
  .hh-path-card { min-height: 218px; padding: 28px; }
  .hh-path-card h3 { margin-top: 50px; font-size: 2.15rem; }
  .hh-section-heading--compact { display: block; }
  .hh-text-link--dark { margin-top: 22px; }
  .hh-property-grid { grid-template-columns: 1fr; }
  .hh-property-card:last-child { display: block; }
  .hh-feed-preview__visual { min-height: 260px; }
  .hh-feed-preview > div:last-child { padding: 34px 26px 40px; }
  .hh-investment { padding: 74px 0; }
  .hh-investment__grid { grid-template-columns: 1fr; gap: 24px; }
  .hh-investment__number { display: none; }
  .hh-investment__grid > div:last-child { grid-column: 1; }
  .hh-service-list article, .hh-service-list > a { grid-template-columns: 34px 1fr; gap: 14px; }
  .hh-service-list h3 { font-size: 1.55rem; }
  .hh-owner { padding: 70px 0; }
  .hh-footer-grid { grid-template-columns: 1fr; gap: 44px; }
  .hh-footer-brand { grid-column: auto; }
  .hh-footer-bottom { gap: 14px; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}

/* Property catalogue */
.hh-page-hero {
  padding: 172px 0 76px;
  color: #fff;
  background: var(--hh-teal-deep);
}
.hh-page-hero h1 { max-width: 850px; margin-bottom: 24px; font-family: var(--hh-serif); font-size: clamp(3rem, 6vw, 6rem); font-weight: 400; letter-spacing: -.055em; line-height: .96; }
.hh-page-hero > .hh-shell > p:last-child { max-width: 620px; margin: 0; color: rgba(255,255,255,.72); font-size: 1.06rem; }
.hh-catalogue__content { padding: 0 0 112px; }
.hh-filter { position: relative; z-index: 3; margin: -30px 0 68px; padding: 10px; background: var(--hh-paper); box-shadow: var(--hh-shadow); }
.hh-filter__primary { display: grid; grid-template-columns: 1.1fr 1.15fr 1fr 1fr auto; gap: 1px; }
.hh-filter label { display: grid; min-width: 0; padding: 9px 16px; border-right: 1px solid var(--hh-line); }
.hh-filter label span { color: var(--hh-ink-soft); font-size: .65rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.hh-filter input, .hh-filter select { width: 100%; min-height: 34px; padding: 0; border: 0; outline: 0; color: var(--hh-graphite); background: transparent; font: 500 .88rem var(--hh-sans); }
.hh-filter button { min-width: 124px; padding: 0 22px; border: 0; color: #fff; background: var(--hh-clay-dark); font-size: .76rem; font-weight: 700; letter-spacing: .04em; }
.hh-filter button:hover { color: var(--hh-teal-deep); background: var(--hh-clay); }
.hh-filter__advanced { border-top: 1px solid var(--hh-line); }
.hh-filter__advanced summary { display: flex; min-height: 48px; padding: 0 14px; align-items: center; justify-content: space-between; color: var(--hh-teal); cursor: pointer; font-size: .72rem; font-weight: 700; letter-spacing: .07em; list-style: none; text-transform: uppercase; }
.hh-filter__advanced summary::-webkit-details-marker { display: none; }
.hh-filter__advanced summary b { font-size: 1.25rem; font-weight: 400; transition: transform .2s ease; }
.hh-filter__advanced[open] summary b { transform: rotate(45deg); }
.hh-filter__advanced-grid { display: grid; grid-template-columns: repeat(5, minmax(0,1fr)); border-top: 1px solid var(--hh-line); }
.hh-filter__advanced-grid label { border-bottom: 1px solid var(--hh-line); }
.hh-filter__features { padding: 20px 16px; border: 0; border-bottom: 1px solid var(--hh-line); }
.hh-filter__features legend { padding-top: 18px; color: var(--hh-ink-soft); font-size: .66rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.hh-filter__features > div { display: flex; gap: 8px 22px; flex-wrap: wrap; }
.hh-filter__features label { display: flex; gap: 7px; padding: 4px 0; align-items: center; border: 0; cursor: pointer; }
.hh-filter__features input { width: auto; min-height: 0; accent-color: var(--hh-clay); }
.hh-filter__features label span { color: var(--hh-graphite); font-size: .77rem; letter-spacing: 0; text-transform: none; }
.hh-filter__advanced-actions { display: flex; gap: 8px; padding: 12px 14px 4px; justify-content: flex-end; }
.hh-filter__advanced-actions button { min-height: 42px; }
.hh-filter__advanced-actions button:first-child { color: var(--hh-teal); background: transparent; border: 1px solid var(--hh-line); }
.hh-catalogue.is-loading .hh-results-stage { opacity: .45; pointer-events: none; }
.hh-catalogue.is-loading .hh-results-bar::after { width: 16px; height: 16px; border: 2px solid var(--hh-line); border-top-color: var(--hh-clay); border-radius: 50%; content: ""; animation: hh-spin .7s linear infinite; }
@keyframes hh-spin { to { transform: rotate(360deg); } }
.hh-results-bar { display: flex; gap: 24px; align-items: center; justify-content: space-between; margin-bottom: 28px; padding-bottom: 20px; border-bottom: 1px solid var(--hh-line); }
.hh-results-bar p { margin: 0; color: var(--hh-ink-soft); }
.hh-results-bar p strong { color: var(--hh-teal-deep); }
.hh-results-actions { display: flex; gap: 16px; align-items: center; }
.hh-results-actions select { min-height: 40px; padding: 0 34px 0 12px; border: 1px solid var(--hh-line); color: var(--hh-graphite); background: var(--hh-paper); font-size: .8rem; }
.hh-view-switch { display: flex; padding: 3px; border: 1px solid var(--hh-line); }
.hh-view-switch button { min-height: 32px; padding: 0 14px; border: 0; color: var(--hh-ink-soft); background: transparent; font-size: .73rem; font-weight: 700; }
.hh-view-switch button.is-active { color: #fff; background: var(--hh-teal); }
.hh-view-switch button:disabled { opacity: .4; }
.hh-property-grid--catalogue { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.hh-results-map { width: 100%; height: min(680px, 65vh); min-height: 460px; background: var(--hh-sage-soft); }
.hh-results-map[hidden] { display: none; }
.hh-map-popup { min-width: 150px; font-family: var(--hh-sans); }
.hh-map-popup strong, .hh-map-popup span { display: block; }
.hh-map-popup strong { margin-bottom: 4px; color: var(--hh-teal-deep); font-family: var(--hh-serif); font-size: 1rem; }
.hh-map-popup span { color: var(--hh-clay); font-size: .78rem; font-weight: 700; }
.hh-map-popup a { text-decoration: none; }
.hh-empty { grid-column: 1 / -1; padding: 80px 30px; text-align: center; background: var(--hh-chalk); }
.hh-empty h2 { color: var(--hh-teal-deep); font: 400 clamp(2rem, 4vw, 3.4rem)/1 var(--hh-serif); }
.hh-empty a, .hh-empty button { min-width: 0; padding: 0; border: 0; color: var(--hh-clay); background: transparent; font-weight: 700; }
.hh-pagination { display: flex; gap: 6px; justify-content: center; margin-top: 56px; }
.hh-pagination .page-numbers { display: grid; width: 42px; height: 42px; place-items: center; border: 1px solid var(--hh-line); text-decoration: none; }
.hh-pagination .current { color: #fff; background: var(--hh-teal); }

/* Single property */
.hh-property-head { padding: 146px 0 52px; background: var(--hh-chalk); }
.hh-breadcrumb { display: flex; gap: 9px; margin-bottom: 38px; color: var(--hh-ink-soft); font-size: .73rem; }
.hh-breadcrumb a { text-decoration: none; }
.hh-property-head__grid { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 60px; align-items: end; }
.hh-property-head h1 { max-width: 900px; margin-bottom: 18px; color: var(--hh-teal-deep); font: 400 clamp(3rem, 5.5vw, 5.5rem)/.98 var(--hh-serif); letter-spacing: -.05em; }
.hh-property-address { margin: 0; color: var(--hh-ink-soft); }
.hh-property-head__price { display: grid; justify-items: end; gap: 8px; padding-bottom: 8px; }
.hh-property-head__price strong { color: var(--hh-clay); font: 500 clamp(1.8rem, 3vw, 2.7rem)/1 var(--hh-serif); }
.hh-property-head__price span { color: var(--hh-ink-soft); font-size: .72rem; }
.hh-gallery { display: grid; height: min(670px, 62vw); max-height: 670px; min-height: 440px; grid-template-columns: 2fr 1fr; grid-template-rows: 1fr 1fr; gap: 8px; margin-top: 32px; }
.hh-gallery__item { margin: 0; overflow: hidden; background: var(--hh-sage-soft); }
.hh-gallery__item--1 { grid-row: 1 / -1; }
.hh-gallery__button { display: block; width: 100%; height: 100%; padding: 0; overflow: hidden; border: 0; cursor: zoom-in; background: transparent; }
body.handhome-site .hh-gallery__item img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.hh-gallery__button:hover img { transform: scale(1.018); }
.hh-gallery--single { display: block; }
.hh-gallery--single .hh-gallery__item { width: 100%; height: 100%; }
.hh-gallery__placeholder { width: 100%; height: 100%; grid-column: 1/-1; background: linear-gradient(135deg, var(--hh-sage-soft), var(--hh-chalk)); }
.hh-lightbox { width: 100vw; max-width: none; height: 100vh; max-height: none; padding: 36px 70px; border: 0; color: #fff; background: rgba(5,20,19,.96); }
.hh-lightbox::backdrop { background: rgba(5,20,19,.88); }
.hh-lightbox[open] { display: grid; grid-template-columns: 54px minmax(0,1fr) 54px; gap: 20px; align-items: center; }
.hh-lightbox figure { display: grid; height: calc(100vh - 72px); margin: 0; grid-template-rows: minmax(0,1fr) auto; gap: 12px; place-items: center; }
.hh-lightbox img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; }
.hh-lightbox figcaption { color: rgba(255,255,255,.7); font-size: .76rem; letter-spacing: .1em; }
.hh-lightbox__close, .hh-lightbox__nav { border: 1px solid rgba(255,255,255,.35); border-radius: 50%; color: #fff; background: rgba(255,255,255,.06); }
.hh-lightbox__close { position: fixed; z-index: 2; top: 24px; right: 24px; width: 48px; height: 48px; font-size: 1.8rem; line-height: 1; }
.hh-lightbox__nav { width: 52px; height: 52px; font-size: 1.25rem; }
.hh-lightbox__close:hover, .hh-lightbox__nav:hover { background: var(--hh-clay); border-color: var(--hh-clay); }
.hh-property-layout { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(320px, .75fr); gap: clamp(54px, 7vw, 110px); padding-top: 90px; padding-bottom: 110px; }
.hh-facts { display: grid; grid-template-columns: repeat(4, 1fr); margin-bottom: 84px; border-top: 1px solid var(--hh-line); border-bottom: 1px solid var(--hh-line); }
.hh-facts div { display: grid; gap: 6px; padding: 26px 18px; border-right: 1px solid var(--hh-line); }
.hh-facts div:first-child { padding-left: 0; }
.hh-facts div:last-child { border-right: 0; }
.hh-facts span { color: var(--hh-ink-soft); font-size: .65rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.hh-facts strong { color: var(--hh-teal-deep); font: 500 1.22rem var(--hh-serif); }
.hh-property-section { padding: 0 0 76px; margin-bottom: 76px; border-bottom: 1px solid var(--hh-line); }
.hh-property-section:last-child { margin-bottom: 0; border-bottom: 0; }
.hh-property-section h2 { margin-bottom: 30px; color: var(--hh-teal-deep); font: 400 clamp(2.3rem, 4vw, 3.8rem)/1 var(--hh-serif); letter-spacing: -.04em; }
.hh-prose { color: var(--hh-ink-soft); font-size: 1.03rem; line-height: 1.85; }
.hh-prose p:last-child { margin-bottom: 0; }
.hh-feature-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0; margin: 0; padding: 0; border-top: 1px solid var(--hh-line); list-style: none; }
.hh-feature-list li { position: relative; padding: 17px 16px 17px 28px; border-bottom: 1px solid var(--hh-line); }
.hh-feature-list li::before { position: absolute; left: 2px; color: var(--hh-clay); content: "✓"; }
.hh-map-address { margin-top: -18px; color: var(--hh-ink-soft); }
.hh-single-map { width: 100%; height: 430px; margin-top: 28px; background: var(--hh-sage-soft); }
.hh-enquiry { min-width: 0; }
.hh-enquiry__box { position: sticky; top: 108px; padding: 38px; border-top: 4px solid var(--hh-clay); background: var(--hh-chalk); box-shadow: 0 22px 60px rgba(10,35,32,.09); }
.hh-enquiry h2 { margin-bottom: 24px; color: var(--hh-teal-deep); font: 400 2.1rem/1.06 var(--hh-serif); letter-spacing: -.035em; }
.hh-enquiry .property-form-wrap, .hh-enquiry .property-form { padding: 0; background: transparent; box-shadow: none; }
.hh-enquiry .agent-details, .hh-enquiry .agent-image { display: none !important; }
.hh-enquiry .form-control { width: 100%; min-height: 50px; padding: 12px 14px; border: 1px solid var(--hh-line); border-radius: 0; color: var(--hh-graphite); background: var(--hh-paper); }
.hh-enquiry textarea.form-control { min-height: 120px; }
.hh-enquiry .btn { min-height: 50px; border: 0; border-radius: 0; color: #fff; background: var(--hh-clay-dark); font-weight: 700; }
.hh-enquiry .btn:hover { color: var(--hh-teal-deep); background: var(--hh-clay); }
.hh-enquiry__note { margin: 16px 0 0; color: var(--hh-ink-soft); font-size: .72rem; }
.hh-related { background: var(--hh-chalk); }

@media (max-width: 1100px) {
  .hh-filter__primary { grid-template-columns: repeat(2, 1fr); }
  .hh-filter__submit { min-height: 58px; grid-column: 1 / -1; }
  .hh-filter__advanced-grid { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .hh-property-grid--catalogue { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hh-property-layout { grid-template-columns: minmax(0, 1.4fr) minmax(290px, .8fr); gap: 48px; }
  .hh-facts { grid-template-columns: repeat(2, 1fr); }
  .hh-facts div:nth-child(2) { border-right: 0; }
  .hh-facts div:nth-child(-n+2) { border-bottom: 1px solid var(--hh-line); }
}

@media (max-width: 800px) {
  .hh-page-hero { padding: 136px 0 68px; }
  .hh-filter { margin-bottom: 48px; }
  .hh-filter__advanced-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .hh-results-bar { align-items: flex-start; }
  .hh-results-actions { align-items: stretch; flex-direction: column; }
  .hh-property-head__grid { grid-template-columns: 1fr; gap: 28px; }
  .hh-property-head__price { justify-items: start; }
  .hh-gallery { width: 100%; height: 66vw; min-height: 360px; margin-top: 20px; }
  .hh-property-layout { grid-template-columns: 1fr; padding-top: 64px; }
  .hh-enquiry__box { position: static; }
}

@media (max-width: 640px) {
  .hh-page-hero h1 { font-size: 3.6rem; }
  .hh-filter { padding: 7px; }
  .hh-filter__primary, .hh-filter__advanced-grid { grid-template-columns: 1fr; }
  .hh-filter label { border-right: 0; border-bottom: 1px solid var(--hh-line); }
  .hh-filter button { min-height: 52px; }
  .hh-results-bar { gap: 16px; flex-direction: column; }
  .hh-results-actions { width: 100%; }
  .hh-results-actions select { width: 100%; }
  .hh-view-switch button { flex: 1; }
  .hh-property-grid--catalogue { grid-template-columns: 1fr; }
  .hh-results-map { min-height: 420px; }
  .hh-property-head { padding: 122px 0 38px; }
  .hh-breadcrumb { margin-bottom: 26px; }
  .hh-property-head h1 { font-size: 3.15rem; }
  .hh-gallery { height: 76vw; min-height: 300px; grid-template-columns: 1fr; grid-template-rows: 1fr; }
  .hh-gallery__item:not(:first-child) { display: none; }
  .hh-lightbox { padding: 70px 12px 22px; }
  .hh-lightbox[open] { grid-template-columns: minmax(0,1fr); gap: 0; }
  .hh-lightbox figure { height: calc(100vh - 92px); }
  .hh-lightbox__nav { position: fixed; z-index: 2; top: 50%; width: 40px; height: 40px; transform: translateY(-50%); background: rgba(5,20,19,.72); }
  .hh-lightbox__nav--prev { left: 8px; }
  .hh-lightbox__nav--next { right: 8px; }
  .hh-facts { grid-template-columns: 1fr 1fr; margin-bottom: 62px; }
  .hh-facts div { padding: 18px 12px; }
  .hh-property-section { padding-bottom: 56px; margin-bottom: 56px; }
  .hh-feature-list { grid-template-columns: 1fr; }
  .hh-single-map { height: 340px; }
  .hh-enquiry__box { padding: 30px 24px; }
}

/* Interior pages */
.hh-inner-hero { padding: 178px 0 92px; background: var(--hh-chalk); }
.hh-inner-hero h1 { max-width: 1040px; margin-bottom: 28px; color: var(--hh-teal-deep); font: 400 clamp(3.6rem, 7vw, 7.2rem)/.94 var(--hh-serif); letter-spacing: -.058em; }
.hh-inner-hero > .hh-shell > p:last-child { max-width: 720px; margin-bottom: 0; color: var(--hh-ink-soft); font-size: 1.08rem; line-height: 1.8; }
.hh-inner-hero .hh-button { margin-top: 30px; }
.hh-inner-hero--dark { color: #fff; background: var(--hh-teal-deep); }
.hh-inner-hero--dark h1 { color: #fff; }
.hh-inner-hero--dark > .hh-shell > p:last-of-type { color: rgba(255,255,255,.7); }

.hh-editorial-split__grid { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(320px,.75fr); gap: clamp(60px,10vw,150px); }
.hh-editorial-split h2 { max-width: 720px; margin: 0; color: var(--hh-teal-deep); font: 400 clamp(2.7rem,5vw,5.2rem)/.98 var(--hh-serif); letter-spacing: -.05em; }
.hh-editorial-split__grid > div:last-child { align-self: end; color: var(--hh-ink-soft); font-size: 1.04rem; line-height: 1.85; }
.hh-editorial-split__grid > div:last-child p { margin-bottom: 24px; }
.hh-wide-image { width: min(1440px, calc(100vw - 48px)); height: min(700px,62vw); min-height: 430px; margin: 0 auto; overflow: hidden; background: var(--hh-sage-soft); }
body.handhome-site .hh-wide-image img { width: 100%; height: 100%; object-fit: cover; }

.hh-process { background: var(--hh-paper); }
.hh-process-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); margin: 0; padding: 0; border-top: 1px solid var(--hh-line); list-style: none; }
.hh-process-grid li { position: relative; min-height: 280px; padding: 30px 26px; overflow: hidden; border-right: 1px solid var(--hh-line); border-bottom: 1px solid var(--hh-line); transition: color .25s ease, background-color .25s ease, transform .25s ease, box-shadow .25s ease; }
.hh-process-grid li:last-child { border-right: 0; }
.hh-process-grid span, .hh-pillar-grid article > span { color: var(--hh-clay); font-size: .68rem; font-weight: 700; letter-spacing: .13em; }
.hh-process-grid h3, .hh-pillar-grid h3 { margin: 68px 0 14px; color: var(--hh-teal-deep); font: 400 1.75rem/1.08 var(--hh-serif); letter-spacing: -.035em; }
.hh-process-grid p, .hh-pillar-grid p { margin: 0; color: var(--hh-ink-soft); font-size: .9rem; line-height: 1.75; }
.hh-process-grid li:hover,
.hh-process-grid li:focus-within { z-index: 1; color: #fff; background: var(--hh-teal); box-shadow: 0 22px 44px rgba(6,45,42,.16); transform: translateY(-6px); }
.hh-process-grid li:hover h3,
.hh-process-grid li:hover p,
.hh-process-grid li:focus-within h3,
.hh-process-grid li:focus-within p { color: #fff; }
.hh-process-grid li:hover span,
.hh-process-grid li:focus-within span { color: var(--hh-clay); }

.hh-related-services { background: var(--hh-chalk); }
.hh-service-card-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid var(--hh-line); border-left: 1px solid var(--hh-line); }
.hh-service-card { position: relative; display: flex; min-height: 340px; padding: 34px; flex-direction: column; border-right: 1px solid var(--hh-line); border-bottom: 1px solid var(--hh-line); text-decoration: none !important; transition: color .22s ease, background .22s ease; }
.hh-service-card > span { color: var(--hh-clay); font-size: .7rem; font-weight: 700; letter-spacing: .13em; }
.hh-service-card h2, .hh-service-card h3 { margin: auto 0 16px; color: var(--hh-teal-deep); font: 400 clamp(2rem,3vw,3rem)/1 var(--hh-serif); letter-spacing: -.045em; }
.hh-service-card p { max-width: 340px; margin: 0; color: var(--hh-ink-soft); font-size: .9rem; }
.hh-service-card b { position: absolute; top: 30px; right: 30px; color: var(--hh-clay); font-size: 1.25rem; font-weight: 400; }
.hh-service-card:hover { color: #fff; background: var(--hh-teal); }
.hh-service-card:hover h2, .hh-service-card:hover h3, .hh-service-card:hover p { color: #fff; }
.hh-service-card-grid--large .hh-service-card { min-height: 410px; }

.hh-page-cta { padding: 110px 0; color: #fff; background: var(--hh-teal-deep); text-align: center; }
.hh-page-cta .hh-eyebrow { color: var(--hh-clay); }
.hh-page-cta h2 { max-width: 880px; margin: 0 auto 34px; font: 400 clamp(3rem,6vw,6rem)/.96 var(--hh-serif); letter-spacing: -.055em; }

.hh-investment-pillars { background: var(--hh-paper); }
.hh-pillar-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid var(--hh-line); border-left: 1px solid var(--hh-line); }
.hh-pillar-grid article { min-height: 330px; padding: 34px; border-right: 1px solid var(--hh-line); border-bottom: 1px solid var(--hh-line); }
.hh-pillar-grid h3 { margin-top: 100px; font-size: 2.4rem; }

.hh-contact-page { background: var(--hh-paper); }
.hh-contact-page__grid { display: grid; grid-template-columns: minmax(0,.8fr) minmax(420px,1fr); gap: clamp(60px,9vw,140px); }
.hh-contact-copy h2 { max-width: 590px; color: var(--hh-teal-deep); font: 400 clamp(2.7rem,4.6vw,4.6rem)/.98 var(--hh-serif); letter-spacing: -.05em; }
.hh-contact-copy > p { max-width: 560px; color: var(--hh-ink-soft); }
.hh-contact-notes { margin-top: 54px; border-top: 1px solid var(--hh-line); }
.hh-contact-notes div { display: grid; grid-template-columns: 42px 1fr; gap: 14px; padding: 18px 0; border-bottom: 1px solid var(--hh-line); }
.hh-contact-notes span { color: var(--hh-clay); font-size: .68rem; font-weight: 700; }
.hh-contact-notes p { margin: 0; font-weight: 600; }
.hh-contact-direct { display: grid; margin-top: 34px; gap: 14px; font-style: normal; }
.hh-contact-direct p { display: grid; margin: 0; gap: 3px; }
.hh-contact-direct strong { color: var(--hh-clay); font-size: .67rem; letter-spacing: .1em; text-transform: uppercase; }
.hh-contact-direct span, .hh-contact-direct a { color: var(--hh-teal-deep); text-decoration: none; }
.hh-contact-direct a:hover { color: var(--hh-clay-dark); }
.hh-contact-form-wrap { padding: 44px; border-top: 4px solid var(--hh-clay); background: var(--hh-chalk); box-shadow: var(--hh-shadow); }
.hh-contact-form { display: grid; gap: 22px; }
.hh-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.hh-contact-form label:not(.hh-consent) { display: grid; gap: 8px; }
.hh-contact-form label > span:first-child { color: var(--hh-teal-deep); font-size: .7rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.hh-contact-form input:not([type="checkbox"]), .hh-contact-form select, .hh-contact-form textarea { width: 100%; min-height: 52px; padding: 12px 14px; border: 1px solid var(--hh-line); border-radius: 0; outline: 0; color: var(--hh-graphite); background: var(--hh-paper); font: 400 .92rem var(--hh-sans); }
.hh-contact-form textarea { min-height: 150px; resize: vertical; }
.hh-contact-form input:focus, .hh-contact-form select:focus, .hh-contact-form textarea:focus { border-color: var(--hh-teal); box-shadow: 0 0 0 2px rgba(18,63,59,.1); }
.hh-consent { display: grid; grid-template-columns: 20px 1fr; gap: 10px; align-items: start; color: var(--hh-ink-soft); font-size: .76rem; line-height: 1.5; }
.hh-consent input { margin-top: 3px; accent-color: var(--hh-teal); }
.hh-contact-form .hh-button { justify-self: start; border: 0; cursor: pointer; }
.hh-contact-form .hh-button:disabled { cursor: wait; opacity: .65; }
.hh-form-status { min-height: 24px; color: var(--hh-ink-soft); font-size: .82rem; }
.hh-form-status.is-success { color: var(--hh-teal); }
.hh-form-status.is-error { color: var(--hh-clay-dark); }

/* Desktop dropdown navigation */
.hh-submenu-toggle { display: none; }

@media (min-width: 992px) {
  .hh-primary-nav .menu-item-has-children { position: relative; }
  .hh-primary-nav .sub-menu { position: absolute; top: 100%; left: -24px; display: grid; width: 250px; margin: 0; padding: 15px 24px; visibility: hidden; opacity: 0; border-top: 2px solid var(--hh-clay); color: var(--hh-teal-deep); background: var(--hh-paper); box-shadow: var(--hh-shadow); list-style: none; transform: translateY(8px); transition: .18s ease; }
  .hh-primary-nav .menu-item-has-children:hover > .sub-menu, .hh-primary-nav .menu-item-has-children:focus-within > .sub-menu { visibility: visible; opacity: 1; transform: translateY(0); }
  .hh-primary-nav .sub-menu a { padding: 10px 0; border-bottom: 1px solid var(--hh-line); font-size: .78rem; }
  .hh-primary-nav .sub-menu li:last-child a { border-bottom: 0; }
  .hh-primary-nav .hh-services-menu > .sub-menu {
    left: 50%;
    width: min(680px, calc(100vw - 48px));
    grid-template-columns: repeat(2,minmax(0,1fr));
    column-gap: 32px;
    transform: translate(-50%,8px);
  }
  .hh-primary-nav .hh-services-menu:hover > .sub-menu,
  .hh-primary-nav .hh-services-menu:focus-within > .sub-menu { transform: translate(-50%,0); }
}

@media (max-width: 991px) {
  .hh-primary-nav .menu-item-has-children { position: relative; }
  .hh-primary-nav .menu-item-has-children > a { display: flex; padding-right: 54px; }
  .hh-submenu-toggle {
    position: absolute;
    z-index: 2;
    top: 7px;
    right: 0;
    display: grid;
    width: 42px;
    height: 42px;
    padding: 0;
    place-items: center;
    border: 1px solid transparent;
    border-radius: 50%;
    color: var(--hh-teal-deep);
    background: transparent;
    cursor: pointer;
  }
  .hh-submenu-toggle:hover,
  .hh-submenu-toggle:focus-visible { border-color: var(--hh-line); background: rgba(202,195,175,.22); outline: 0; }
  .hh-submenu-toggle > span {
    width: 9px;
    height: 9px;
    border-right: 1.5px solid currentColor;
    border-bottom: 1.5px solid currentColor;
    transform: translateY(-2px) rotate(45deg);
    transition: transform .2s ease;
  }
  .hh-submenu-toggle[aria-expanded="true"] > span { transform: translateY(2px) rotate(225deg); }
  .hh-primary-nav .sub-menu { display: grid; gap: 0; margin: 0 0 8px; padding: 4px 0 12px 18px; border-left: 1px solid var(--hh-line); list-style: none; }
  .hh-header-navigation.is-accordion-ready .menu-item-has-children > .sub-menu { display: none; }
  .hh-header-navigation.is-accordion-ready .menu-item-has-children.is-submenu-open > .sub-menu { display: grid; }
  .hh-primary-nav .sub-menu a { padding: 9px 2px; font-family: var(--hh-sans); font-size: .85rem; }
  .hh-editorial-split__grid { grid-template-columns: 1fr; gap: 38px; }
  .hh-process-grid { grid-template-columns: 1fr 1fr; }
  .hh-process-grid li:nth-child(2) { border-right: 0; }
  .hh-service-card { min-height: 310px; padding: 28px; }
  .hh-contact-page__grid { grid-template-columns: 1fr; }
  .hh-property-carousel .hh-property-card { flex-basis: calc((100% - 20px) / 2); }
}

@media (max-width: 640px) {
  .hh-inner-hero { padding: 130px 0 66px; }
  .hh-inner-hero h1 { font-size: clamp(3.25rem,15vw,4.5rem); }
  .hh-inner-hero > .hh-shell > p:last-child { font-size: .96rem; }
  .hh-wide-image { width: calc(100vw - 28px); height: 76vw; min-height: 300px; }
  .hh-process-grid, .hh-service-card-grid, .hh-pillar-grid { grid-template-columns: 1fr; }
  .hh-process-grid li { min-height: 230px; border-right: 0; }
  .hh-process-grid h3 { margin-top: 46px; }
  .hh-service-card, .hh-service-card-grid--large .hh-service-card { min-height: 310px; }
  .hh-pillar-grid article { min-height: 270px; }
  .hh-pillar-grid h3 { margin-top: 60px; }
  .hh-page-cta { padding: 78px 0; }
  .hh-page-cta h2 { font-size: 3.35rem; }
  .hh-contact-page__grid { gap: 48px; }
  .hh-contact-form-wrap { padding: 30px 22px; }
  .hh-form-row { grid-template-columns: 1fr; }
  .hh-property-carousel__track { gap: 14px; padding-bottom: 22px; }
  .hh-property-carousel .hh-property-card { flex-basis: min(84vw, 330px); }
  .hh-drag-cursor { display: none; }
}

/* Navigation cache bridge */
.hh-nav-cta-menu { margin: 0; padding: 0; list-style: none; }
.hh-nav-cta-menu li { margin: 0; padding: 0; }
.hh-nav-cta-menu a { display: inline-flex; min-height: 44px; padding: 0 20px; align-items: center; justify-content: center; border: 1px solid currentColor; border-radius: 999px; color: inherit; font-size: .78rem; font-weight: 700; letter-spacing: .05em; text-decoration: none !important; transition: color .2s ease, background .2s ease; }
.hh-nav-cta-menu a:hover { color: #fff; background: var(--hh-clay); border-color: var(--hh-clay); }

@media (min-width: 992px) {
  .hh-primary-nav .menu-item-has-children { position: relative; }
  .hh-primary-nav .sub-menu { position: absolute; top: 100%; left: -24px; display: grid; width: 250px; margin: 0; padding: 15px 24px; visibility: hidden; opacity: 0; border-top: 2px solid var(--hh-clay); color: var(--hh-teal-deep); background: var(--hh-paper); box-shadow: var(--hh-shadow); list-style: none; transform: translateY(8px); transition: .18s ease; }
  .hh-primary-nav .menu-item-has-children:hover > .sub-menu, .hh-primary-nav .menu-item-has-children:focus-within > .sub-menu { visibility: visible; opacity: 1; transform: translateY(0); }
  .hh-primary-nav .sub-menu a { padding: 10px 0; border-bottom: 1px solid var(--hh-line); font-size: .78rem; }
  .hh-primary-nav .sub-menu li:last-child a { border-bottom: 0; }
}

@media (max-width: 991px) {
  .hh-nav-cta-menu { margin-top: 8px; }
}

/* Native Houzez engine, HandHome visual language */
body.handhome-site ul.hh-language-switcher {
  display: flex !important;
  gap: 6px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
body.handhome-site ul.hh-language-switcher > li {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
body.handhome-site ul.hh-language-switcher > li::marker {
  color: transparent !important;
  content: "" !important;
  font-size: 0 !important;
}
body.handhome-site.page-template-template-search,
body.handhome-site.single-property {
  padding-top: 76px;
  color: var(--hh-graphite);
  background: var(--hh-paper);
}

.hh-search-hero {
  display: flex;
  min-height: min(520px, 62vh);
  padding: 82px 0 76px;
  align-items: center;
  background:
    radial-gradient(circle at 86% 16%, rgba(129,149,138,.2), transparent 31%),
    linear-gradient(118deg, rgba(255,255,255,.035), transparent 52%),
    var(--hh-teal-deep);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.hh-search-hero__inner { width: var(--hh-shell); }
.hh-search-hero .hh-eyebrow { margin-bottom: 24px; color: var(--hh-clay); }
.hh-search-hero h1 {
  max-width: 1120px;
  margin: 0;
  color: #fff;
  font: 400 clamp(4rem, 7vw, 7.15rem)/1.02 var(--hh-serif);
  letter-spacing: -.052em;
  text-wrap: balance;
}
.hh-search-hero p.hh-search-hero__description {
  max-width: 720px;
  margin: 52px 0 0;
  color: rgba(255,255,255,.7);
  font-size: 1.02rem;
  line-height: 1.8;
}

/* Search: preserve Houzez AJAX/half-map markup, replace its demo skin. */
body.handhome-site.page-template-template-search .half-map-wrap {
  /* Keep Houzez's viewport-sized map/results UI, but let the footer follow it. */
  position: relative !important;
  background: var(--hh-paper);
}
body.handhome-site.page-template-template-search .half-map-left-wrap {
  width: 39%;
  border-right: 1px solid var(--hh-line);
  background: var(--hh-sage-soft);
}
body.handhome-site.page-template-template-search .half-map-right-wrap {
  width: 61%;
  background: var(--hh-paper);
}
@media (min-width: 992px) {
  body.handhome-site.page-template-template-search .half-map-wrap {
    height: auto !important;
    min-height: calc(100vh - 76px);
    align-items: flex-start !important;
    overflow: visible !important;
  }
  body.handhome-site.page-template-template-search .half-map-left-wrap {
    position: sticky !important;
    top: 76px;
    height: calc(100vh - 76px) !important;
    align-self: flex-start;
    overflow: hidden !important;
  }
  body.handhome-site.page-template-template-search .half-map-left-wrap .map-wrap {
    height: 100% !important;
  }
  body.handhome-site.page-template-template-search .half-map-right-wrap {
    height: auto !important;
    min-height: calc(100vh - 76px);
    overflow: visible !important;
  }
}
body.handhome-site .advanced-search-half-map {
  padding: 28px 26px 24px;
  border: 0;
  border-bottom: 1px solid var(--hh-line);
  color: var(--hh-graphite);
  background: var(--hh-chalk) !important;
  box-shadow: none;
}
body.handhome-site .advanced-search-half-map::before {
  display: block;
  margin-bottom: 16px;
  color: var(--hh-clay);
  content: "HANDHOME PROPERTY SEARCH";
  font-size: .66rem;
  font-weight: 800;
  letter-spacing: .16em;
}
body.handhome-site .advanced-search-half-map .row.g-2 {
  --bs-gutter-x: 8px;
  --bs-gutter-y: 8px;
}
@media (min-width: 992px) {
  body.handhome-site .advanced-search-half-map .row-cols-lg-4 > * { width: 33.333333%; }
}
body.handhome-site .advanced-search-half-map .form-control,
body.handhome-site .advanced-search-half-map .bootstrap-select > .dropdown-toggle {
  min-height: 48px;
  padding: 0 14px;
  border: 1px solid var(--hh-line) !important;
  border-radius: 0 !important;
  outline: 0;
  color: var(--hh-graphite);
  background: var(--hh-paper) !important;
  box-shadow: none !important;
  font: 500 .8rem var(--hh-sans);
}
body.handhome-site .advanced-search-half-map .search-icon::before { color: var(--hh-sage); }
body.handhome-site .advanced-search-half-map .search-icon { position: relative; }
body.handhome-site .advanced-search-half-map .search-icon::before {
  left: 16px !important;
  top: 50% !important;
  z-index: 2;
  width: 16px;
  color: var(--hh-sage) !important;
  line-height: 1;
  transform: translateY(-50%);
  pointer-events: none;
}
body.handhome-site .advanced-search-half-map .search-icon .houzez-keyword-autocomplete {
  padding-left: 44px !important;
}
body.handhome-site .advanced-search-half-map .form-control:focus,
body.handhome-site .advanced-search-half-map .bootstrap-select.show > .dropdown-toggle {
  border-color: var(--hh-teal) !important;
  box-shadow: 0 0 0 2px rgba(18,63,59,.08) !important;
}
body.handhome-site .advanced-search-half-map .features-list-wrap {
  padding-top: 14px !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid var(--hh-line);
}
body.handhome-site .advanced-search-half-map .features-list-wrap .title {
  color: var(--hh-teal-deep);
  font-size: .7rem;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}
body.handhome-site .advanced-search-half-map .half-map-buttons-wrap {
  gap: 8px;
  padding-top: 16px;
  align-items: stretch;
}
body.handhome-site .advanced-search-half-map .half-map-buttons-wrap > * { flex: 1 1 0; }
body.handhome-site .advanced-search-half-map .btn {
  min-height: 46px;
  margin: 0 !important;
  border-radius: 0 !important;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .035em;
}
body.handhome-site .advanced-search-half-map .half-map-search-js-btn {
  border-color: var(--hh-clay) !important;
  color: #fff !important;
  background: var(--hh-clay) !important;
}
body.handhome-site .advanced-search-half-map .half-map-search-js-btn:hover {
  border-color: var(--hh-clay-dark) !important;
  background: var(--hh-clay-dark) !important;
}
body.handhome-site .advanced-search-half-map .save_search_click {
  border: 1px solid var(--hh-teal) !important;
  color: var(--hh-teal) !important;
  background: transparent !important;
}
body.handhome-site .advanced-search-half-map .reset-search-btn {
  border: 1px solid var(--hh-line) !important;
  color: var(--hh-ink-soft) !important;
  background: transparent !important;
}
body.handhome-site.page-template-template-search .page-title-wrap {
  padding: 20px 26px !important;
  border-bottom: 1px solid var(--hh-line);
  color: var(--hh-teal-deep);
  background: var(--hh-paper);
}
body.handhome-site.page-template-template-search .page-title-wrap h1,
body.handhome-site.page-template-template-search .page-title-wrap .result-count {
  font-family: var(--hh-serif);
  font-weight: 400;
}
body.handhome-site.page-template-template-search #houzez_ajax_container { padding: 26px; }
body.handhome-site.page-template-template-search .listing-view { --bs-gutter-x: 0; --bs-gutter-y: 16px; }
body.handhome-site.page-template-template-search .item-listing-wrap { margin-bottom: 0; }
body.handhome-site.page-template-template-search .item-wrap {
  overflow: hidden;
  border: 1px solid var(--hh-line) !important;
  border-radius: 0 !important;
  background: var(--hh-paper) !important;
  box-shadow: none !important;
  transition: border-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
body.handhome-site.page-template-template-search .item-wrap:hover {
  border-color: rgba(18,63,59,.35) !important;
  box-shadow: 0 20px 46px rgba(10,35,32,.09) !important;
  transform: translateY(-2px);
}
body.handhome-site.page-template-template-search .item-header { min-width: 42%; }
body.handhome-site.page-template-template-search .item-header img { transition: transform .45s ease; }
body.handhome-site.page-template-template-search .item-wrap:hover .item-header img { transform: scale(1.025); }
body.handhome-site.page-template-template-search .item-body { padding: 22px 24px; }
body.handhome-site.page-template-template-search .item-title {
  margin-bottom: 12px;
  font: 400 1.36rem/1.16 var(--hh-serif);
  letter-spacing: -.025em;
}
body.handhome-site.page-template-template-search .item-title a,
body.handhome-site.page-template-template-search .item-title a:visited {
  color: var(--hh-teal-deep) !important;
  transition: color .18s ease;
}
body.handhome-site.page-template-template-search .item-title a:hover,
body.handhome-site.page-template-template-search .item-title a:focus {
  color: var(--hh-clay) !important;
}
body.handhome-site.page-template-template-search .item-price-wrap { color: var(--hh-clay); }
body.handhome-site.page-template-template-search .item-price-wrap .item-price {
  font-family: var(--hh-serif);
  font-size: 1.24rem;
  font-weight: 500;
}
body.handhome-site.page-template-template-search .item-address,
body.handhome-site.page-template-template-search .item-amenities { color: var(--hh-ink-soft); }
body.handhome-site.page-template-template-search .item-footer {
  border-top: 1px solid var(--hh-line);
  background: transparent;
}
body.handhome-site .property-labels-wrap .label-status,
body.handhome-site .label-featured,
body.handhome-site.page-template-template-search .label-status {
  padding: 5px 10px;
  border-radius: 0;
  color: #fff;
  background: var(--hh-clay) !important;
  font-size: .62rem;
  font-weight: 800;
  letter-spacing: .055em;
}
body.handhome-site .listing-map-wrap .leaflet-control-zoom a,
body.handhome-site .leaflet-control-zoom a {
  border: 0;
  color: var(--hh-teal-deep);
  background: var(--hh-paper);
}

/* Single property: editorial composition on the native Houzez modules. */
body.handhome-site.single-property .content-wrap.property-wrap { background: var(--hh-paper); }
body.handhome-site.single-property .property-header-wrap {
  min-height: 240px;
  padding: 56px 0 44px;
  align-items: flex-end !important;
}
body.handhome-site.single-property .breadcrumb {
  margin-top: 28px;
  margin-bottom: 0;
  color: var(--hh-ink-soft);
  font-size: .7rem;
}
body.handhome-site.single-property .property-title-wrap { max-width: 820px; }
body.handhome-site.single-property .property-title-wrap h1 {
  margin: 0;
  color: var(--hh-teal-deep);
  font: 400 clamp(3rem, 5.1vw, 5.35rem)/.98 var(--hh-serif);
  letter-spacing: -.052em;
}
body.handhome-site.single-property .property-title-wrap .property-address {
  margin-top: 10px;
  color: var(--hh-ink-soft);
  font-size: .9rem;
}
body.handhome-site.single-property .property-price-wrap .item-price {
  color: var(--hh-clay);
  font: 500 clamp(2rem, 3.2vw, 3rem)/1 var(--hh-serif);
}
body.handhome-site.single-property .property-tools a {
  border-color: var(--hh-line);
  border-radius: 50%;
  color: var(--hh-teal-deep);
  background: transparent;
}
body.handhome-site.single-property .property-tools a:hover {
  border-color: var(--hh-clay);
  color: var(--hh-clay);
}
body.handhome-site.single-property .property-banner { margin-bottom: 62px; }
body.handhome-site.single-property .property-banner .tab-pane,
body.handhome-site.single-property .property-banner .property-featured-image {
  min-height: 560px;
  max-height: 720px;
  object-fit: cover;
}
body.handhome-site.single-property .property-banner .nav-pills .nav-link {
  border-radius: 0;
  color: var(--hh-paper);
  background: rgba(11,47,45,.9);
}
body.handhome-site.single-property .property-banner .nav-pills .nav-link.active { background: var(--hh-clay); }
body.handhome-site.single-property .property-navigation-wrap {
  border-color: var(--hh-line);
  background: rgba(251,250,246,.96);
  box-shadow: 0 10px 30px rgba(10,35,32,.06);
}
body.handhome-site.single-property .property-navigation-wrap a {
  color: var(--hh-teal-deep);
  font-size: .7rem;
  font-weight: 750;
  letter-spacing: .035em;
}
body.handhome-site.single-property .property-view > .property-section-wrap {
  margin: 0;
  padding: 68px 0;
  border: 0;
  border-bottom: 1px solid var(--hh-line);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.handhome-site.single-property .property-section-wrap > .block-wrap,
body.handhome-site.single-property .property-section-wrap .block-wrap {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.handhome-site.single-property .property-section-wrap h2,
body.handhome-site.single-property .similar-property-wrap h2 {
  margin-bottom: 34px;
  color: var(--hh-teal-deep);
  font: 400 clamp(2.45rem, 4.1vw, 4.15rem)/1 var(--hh-serif);
  letter-spacing: -.045em;
}
body.handhome-site.single-property .property-description-wrap .block-content-wrap {
  max-width: 900px;
  color: var(--hh-ink-soft);
  font-size: 1.03rem;
  line-height: 1.86;
}
body.handhome-site.single-property .property-overview-data {
  border-top: 1px solid var(--hh-line);
  border-bottom: 1px solid var(--hh-line);
}
body.handhome-site.single-property .property-overview-data .flex-fill {
  padding: 25px 20px;
  border-right: 1px solid var(--hh-line);
  border-radius: 0;
  background: transparent;
}
body.handhome-site.single-property .property-overview-data .flex-fill:last-child { border-right: 0; }
body.handhome-site.single-property .property-overview-data strong,
body.handhome-site.single-property .property-overview-data .property-overview-item strong {
  color: var(--hh-teal-deep);
  font-family: var(--hh-serif);
  font-size: 1.15rem;
  font-weight: 500;
}
body.handhome-site.single-property .property-detail-wrap .detail-wrap,
body.handhome-site.single-property .property-address-wrap .detail-wrap {
  border-color: var(--hh-line);
}
body.handhome-site.single-property .property-features-wrap .list-3-cols li,
body.handhome-site.single-property .property-features-wrap .list-2-cols li {
  padding-block: 14px;
  border-bottom: 1px solid var(--hh-line);
}
body.handhome-site.single-property .property-features-wrap i { color: var(--hh-clay); }
body.handhome-site.single-property .property-contact-agent-wrap {
  margin: 72px 0 96px;
  padding: 48px;
  border: 0;
  border-top: 4px solid var(--hh-clay);
  border-radius: 0;
  background: var(--hh-chalk);
  box-shadow: 0 24px 64px rgba(10,35,32,.09);
}
body.handhome-site.single-property .property-contact-agent-wrap .form-control {
  min-height: 52px;
  border: 1px solid var(--hh-line);
  border-radius: 0;
  color: var(--hh-graphite);
  background: var(--hh-paper);
  box-shadow: none;
}
body.handhome-site.single-property .property-contact-agent-wrap textarea.form-control { min-height: 130px; }
body.handhome-site.single-property .property-contact-agent-wrap .btn-primary {
  min-height: 52px;
  border: 0;
  border-radius: 0;
  color: #fff;
  background: var(--hh-clay);
  font-weight: 800;
}
body.handhome-site.single-property .property-contact-agent-wrap .btn-primary:hover { background: var(--hh-clay-dark); }
body.handhome-site.single-property .similar-property-wrap { padding: 90px 0; background: var(--hh-chalk); }

@media (max-width: 1199px) {
  body.handhome-site .advanced-search-half-map { padding: 22px 20px; }
  body.handhome-site.page-template-template-search #houzez_ajax_container { padding: 20px; }
  body.handhome-site.single-property .property-header-wrap { min-height: 210px; }
}

@media (max-width: 991px) {
  body.handhome-site.page-template-template-search,
  body.handhome-site.single-property { padding-top: 72px; }
  body.handhome-site .half-map-wrap { min-height: calc(100vh - 72px); }
  body.handhome-site.page-template-template-search .half-map-left-wrap,
  body.handhome-site.page-template-template-search .half-map-right-wrap { width: 100%; }
  body.handhome-site .advanced-search-half-map::before { display: none; }
  .hh-search-hero { min-height: 500px; padding: 78px 0 70px; }
  .hh-search-hero h1 { font-size: clamp(3.6rem, 10vw, 5.8rem); }
  body.handhome-site.single-property .property-header-wrap { min-height: 0; padding: 36px 0 30px; }
  body.handhome-site.single-property .property-title-wrap h1 { font-size: clamp(2.55rem, 8vw, 4rem); }
  body.handhome-site.single-property .property-banner { margin-bottom: 38px; }
  body.handhome-site.single-property .property-banner .tab-pane,
  body.handhome-site.single-property .property-banner .property-featured-image { min-height: 430px; }
}

@media (max-width: 767px) {
  .hh-search-hero { min-height: 430px; padding: 62px 0 58px; }
  .hh-search-hero h1 { font-size: clamp(3.1rem, 14vw, 4.25rem); }
  .hh-search-hero p.hh-search-hero__description { margin-top: 38px; font-size: .92rem; line-height: 1.7; }
  body.handhome-site.page-template-template-search #houzez_ajax_container { padding: 16px; }
  body.handhome-site.page-template-template-search .page-title-wrap { padding: 16px !important; }
  body.handhome-site.page-template-template-search .page-title-wrap > .d-flex {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr);
    gap: 10px;
  }
  body.handhome-site.page-template-template-search .page-title-wrap .sort-by,
  body.handhome-site.page-template-template-search .page-title-wrap .sort-by > .d-flex { width: 100%; }
  body.handhome-site.page-template-template-search .page-title-wrap .sort-by > .d-flex { gap: 8px; }
  body.handhome-site.page-template-template-search .page-title-wrap .bootstrap-select {
    width: auto !important;
    min-width: 0;
    flex: 1 1 auto;
  }
  body.handhome-site.page-template-template-search .item-header { min-width: 0; }
  body.handhome-site.page-template-template-search .item-body { padding: 20px; }
  body.handhome-site.single-property .property-title-wrap h1 { font-size: 2.65rem; }
  body.handhome-site.single-property .property-banner .tab-pane,
  body.handhome-site.single-property .property-banner .property-featured-image { min-height: 330px; }
  body.handhome-site.single-property .property-view > .property-section-wrap { padding: 52px 0; }
  body.handhome-site.single-property .property-section-wrap h2 { margin-bottom: 26px; font-size: 2.65rem; }
  body.handhome-site.single-property .property-overview-data { display: grid !important; grid-template-columns: 1fr 1fr; }
  body.handhome-site.single-property .property-overview-data .flex-fill { border-right: 1px solid var(--hh-line); border-bottom: 1px solid var(--hh-line); }
  body.handhome-site.single-property .property-address-wrap .block-title-wrap {
    gap: 12px;
    flex-wrap: wrap;
  }
  body.handhome-site.single-property .property-address-wrap .hz-btn-map {
    width: auto !important;
    max-width: 100%;
    white-space: normal;
  }
  body.handhome-site.single-property .property-contact-agent-wrap { margin: 54px 0 72px; padding: 32px 22px; }
}

/* Premium polish v2: remove the remaining Houzez demo colour states. */
body.handhome-site :where(a, button, input, select, textarea):focus-visible {
  outline: 2px solid var(--hh-clay);
  outline-offset: 3px;
}

body.handhome-site.page-template-template-search .page-title-wrap .switch-btn {
  color: var(--hh-sage) !important;
  background: transparent !important;
  transition: color .18s ease, transform .18s ease;
}
body.handhome-site.page-template-template-search .page-title-wrap .switch-btn:hover {
  color: var(--hh-teal-deep) !important;
  transform: translateY(-1px);
}
body.handhome-site.page-template-template-search .page-title-wrap .switch-btn.active {
  color: var(--hh-clay) !important;
}
body.handhome-site.page-template-template-search .page-title-wrap .sort-by,
body.handhome-site.page-template-template-search .page-title-wrap .sort-by .dropdown-toggle,
body.handhome-site.page-template-template-search .page-title-wrap .sort-by .houzez-icon {
  color: var(--hh-teal-deep) !important;
}
body.handhome-site.page-template-template-search .page-title-wrap .sort-by .dropdown-toggle {
  border-color: transparent !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.handhome-site.page-template-template-search .bootstrap-select .dropdown-item.active,
body.handhome-site.page-template-template-search .bootstrap-select .dropdown-item:active {
  color: #fff !important;
  background: var(--hh-teal) !important;
}
body.handhome-site.page-template-template-search .bootstrap-select .dropdown-item:hover,
body.handhome-site.page-template-template-search .auto-complete .list-group-item:hover {
  color: var(--hh-teal-deep) !important;
  background: var(--hh-sage-soft) !important;
}
body.handhome-site .advanced-search-half-map .bootstrap-select .dropdown-menu {
  min-width: 100% !important;
  margin-top: 6px !important;
  padding: 8px !important;
  overflow: hidden;
  border: 1px solid var(--hh-line) !important;
  border-radius: 0 !important;
  color: var(--hh-graphite);
  background: var(--hh-paper) !important;
  box-shadow: 0 18px 42px rgba(10,35,32,.13) !important;
}
body.handhome-site .advanced-search-half-map .bootstrap-select .dropdown-menu.inner {
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}
body.handhome-site .advanced-search-half-map .bootstrap-select .bs-searchbox {
  padding: 0 0 8px !important;
}
body.handhome-site .advanced-search-half-map .bootstrap-select .bs-searchbox .form-control {
  min-height: 42px;
  padding: 8px 11px !important;
  border-color: var(--hh-line) !important;
  background: var(--hh-chalk) !important;
}
body.handhome-site .advanced-search-half-map .bootstrap-select .dropdown-item {
  padding: 9px 11px !important;
  border-radius: 0 !important;
  color: var(--hh-graphite) !important;
  background: transparent !important;
  font-size: .8rem;
  line-height: 1.35;
}
body.handhome-site .advanced-search-half-map .bootstrap-select .dropdown-item:hover,
body.handhome-site .advanced-search-half-map .bootstrap-select .dropdown-item:focus {
  color: var(--hh-teal-deep) !important;
  background: var(--hh-sage-soft) !important;
}
body.handhome-site .advanced-search-half-map .bootstrap-select .dropdown-item.active,
body.handhome-site .advanced-search-half-map .bootstrap-select .dropdown-item:active,
body.handhome-site .advanced-search-half-map .bootstrap-select .selected .dropdown-item {
  color: #fff !important;
  background: var(--hh-teal) !important;
}
body.handhome-site .advanced-search-half-map .bootstrap-select .no-results {
  margin: 0;
  padding: 10px 11px;
  color: var(--hh-ink-soft);
  background: var(--hh-chalk);
  font-size: .78rem;
}
body.handhome-site.page-template-template-search .item-wrap :where(.btn-primary, .btn-secondary, .btn-success, .btn-item) {
  border: 1px solid var(--hh-clay) !important;
  border-radius: 0 !important;
  color: var(--hh-clay) !important;
  background: transparent !important;
  box-shadow: none !important;
}
body.handhome-site.page-template-template-search .item-wrap :where(.btn-primary, .btn-secondary, .btn-success, .btn-item):hover {
  color: #fff !important;
  background: var(--hh-clay) !important;
}
body.handhome-site.page-template-template-search .pagination-wrap .page-link,
body.handhome-site.page-template-template-search .houzez_ajax_pagination a {
  border-color: var(--hh-line) !important;
  color: var(--hh-teal-deep) !important;
  background: var(--hh-paper) !important;
}
body.handhome-site.page-template-template-search .pagination-wrap .active .page-link,
body.handhome-site.page-template-template-search .houzez_ajax_pagination .active a {
  border-color: var(--hh-teal) !important;
  color: #fff !important;
  background: var(--hh-teal) !important;
}

body.handhome-site.single-property .property-banner .nav-pills .nav-link {
  border: 1px solid rgba(251,250,246,.32) !important;
  color: var(--hh-paper) !important;
  background: rgba(11,47,45,.92) !important;
  box-shadow: none !important;
}
body.handhome-site.single-property .property-banner .nav-pills .nav-link:hover {
  background: var(--hh-teal) !important;
}
body.handhome-site.single-property .property-banner .nav-pills .nav-link.active {
  border-color: var(--hh-clay) !important;
  color: #fff !important;
  background: var(--hh-clay) !important;
}
body.handhome-site.single-property .property-address-wrap .hz-btn-map {
  padding: 11px 18px !important;
  border: 1px solid var(--hh-teal) !important;
  border-radius: 0 !important;
  color: var(--hh-teal-deep) !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: .76rem;
  font-weight: 750;
  letter-spacing: .025em;
}
body.handhome-site.single-property .property-address-wrap .hz-btn-map:hover {
  color: #fff !important;
  background: var(--hh-teal) !important;
}
body.handhome-site.single-property .property-detail-wrap .detail-wrap {
  padding: 26px 30px;
  border: 1px solid var(--hh-line) !important;
  border-top: 3px solid var(--hh-clay) !important;
  border-radius: 0 !important;
  background: var(--hh-chalk) !important;
  box-shadow: none !important;
}
body.handhome-site.single-property .property-detail-wrap .list-lined-item {
  min-height: 48px;
  border-color: var(--hh-line) !important;
  color: var(--hh-graphite);
}
body.handhome-site.single-property .property-detail-wrap .list-lined-item strong {
  color: var(--hh-teal-deep);
  font-weight: 750;
}
body.handhome-site.single-property .property-detail-wrap .small-text,
body.handhome-site.single-property .property-section-wrap .text-secondary {
  color: var(--hh-ink-soft) !important;
}
body.handhome-site.single-property .property-contact-agent-wrap :where(.btn-primary, .btn-secondary, .btn-success, button[type="submit"]) {
  min-height: 52px;
  border: 1px solid var(--hh-clay) !important;
  border-radius: 0 !important;
  color: #fff !important;
  background: var(--hh-clay) !important;
  box-shadow: none !important;
  font-weight: 800;
  letter-spacing: .02em;
}
body.handhome-site.single-property .property-contact-agent-wrap :where(.btn-primary, .btn-secondary, .btn-success, button[type="submit"]):hover {
  border-color: var(--hh-clay-dark) !important;
  background: var(--hh-clay-dark) !important;
}
body.handhome-site.single-property .mobile-property-contact .btn-secondary,
body.handhome-site.single-property .property-form-wrap .btn-secondary {
  border-color: var(--hh-clay) !important;
  color: #fff !important;
  background: var(--hh-clay) !important;
  box-shadow: none !important;
}
body.handhome-site.single-property .mobile-property-contact .btn-secondary:hover,
body.handhome-site.single-property .property-form-wrap .btn-secondary:hover {
  border-color: var(--hh-clay-dark) !important;
  background: var(--hh-clay-dark) !important;
}
body.handhome-site.single-property :where(.form-check-input, input[type="checkbox"], input[type="radio"]) {
  accent-color: var(--hh-teal);
}
body.handhome-site.single-property .form-check-input:checked {
  border-color: var(--hh-teal) !important;
  background-color: var(--hh-teal) !important;
}

/* Native Houzez property-module compatibility layer.
 * Keep every optional parent-theme module operational and brand-consistent
 * when it is enabled in the Houzez Property Detail Layout Manager. */
body.handhome-site.single-property .listing-tabs .nav-tabs {
  gap: 1px;
  border: 1px solid var(--hh-line);
  background: var(--hh-line);
}
body.handhome-site.single-property .listing-tabs .nav-link {
  min-height: 52px;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--hh-teal-deep) !important;
  background: var(--hh-paper) !important;
  font-size: .76rem;
  font-weight: 750;
  letter-spacing: .025em;
}
body.handhome-site.single-property .listing-tabs .nav-link:hover {
  color: var(--hh-clay) !important;
  background: var(--hh-chalk) !important;
}
body.handhome-site.single-property .listing-tabs .nav-link.active {
  color: #fff !important;
  background: var(--hh-teal) !important;
}
body.handhome-site.single-property .vertical-listing-tabs .nav-tabs {
  width: 62px;
}
body.handhome-site.single-property .property-section-wrap :where(.form-control, .bootstrap-select > .dropdown-toggle) {
  min-height: 50px;
  border: 1px solid var(--hh-line) !important;
  border-radius: 0 !important;
  color: var(--hh-graphite) !important;
  background: var(--hh-paper) !important;
  box-shadow: none !important;
}
body.handhome-site.single-property .property-section-wrap :where(.form-control, .bootstrap-select > .dropdown-toggle):focus {
  border-color: var(--hh-teal) !important;
  box-shadow: 0 0 0 2px rgba(18,63,59,.1) !important;
}
body.handhome-site.single-property .property-section-wrap :where(.btn-primary, .btn-secondary, .btn-success, .houzez-ele-button) {
  border: 1px solid var(--hh-clay) !important;
  border-radius: 0 !important;
  color: #fff !important;
  background: var(--hh-clay) !important;
  box-shadow: none !important;
  font-weight: 800;
}
body.handhome-site.single-property .property-section-wrap :where(.btn-primary, .btn-secondary, .btn-success, .houzez-ele-button):hover {
  border-color: var(--hh-clay-dark) !important;
  background: var(--hh-clay-dark) !important;
}
body.handhome-site.single-property .property-floor-plans-wrap .floor-plan-wrap {
  border-top: 1px solid var(--hh-line);
  border-bottom: 1px solid var(--hh-line);
  background: transparent;
}
body.handhome-site.single-property .property-floor-plans-wrap .accordion-header {
  color: var(--hh-teal-deep);
  background: var(--hh-paper);
}
body.handhome-site.single-property .property-floor-plans-wrap .accordion-title {
  font-family: var(--hh-serif);
  font-size: 1.3rem;
}
body.handhome-site.single-property .property-floor-plans-wrap .accordion-title::before {
  color: var(--hh-clay) !important;
}
body.handhome-site.single-property .property-floor-plans-wrap .floor-information {
  color: var(--hh-ink-soft);
  font-size: .78rem;
}
body.handhome-site.single-property .property-floor-plans-wrap .accordion-body img,
body.handhome-site.single-property .block-video-wrap iframe,
body.handhome-site.single-property .block-virtual-video-wrap iframe {
  display: block;
  width: 100%;
  max-width: 100%;
  border: 0;
}
body.handhome-site.single-property .property-mortgage-calculator-wrap .mortgage-calculator-chart {
  position: relative;
  flex: 0 0 min(280px, 34vw);
}
body.handhome-site.single-property .property-mortgage-calculator-wrap .mortgage-calculator-monthly-payment {
  color: var(--hh-teal-deep);
  font: 500 2rem/1 var(--hh-serif);
}
body.handhome-site.single-property .property-mortgage-calculator-wrap .list-lined-item,
body.handhome-site.single-property .property-mortgage-calculator-wrap .input-group-text {
  border-color: var(--hh-line) !important;
}
body.handhome-site.single-property .property-mortgage-calculator-wrap .houzez-icon {
  color: var(--hh-clay);
}
body.handhome-site.single-property .property-schedule-tour-wrap .property-schedule-tour-day-form-slide-wrap,
body.handhome-site.single-property .property-schedule-tour-wrap .property-schedule-tour-type-form {
  gap: 8px;
}
body.handhome-site.single-property .property-schedule-tour-wrap .control__indicator,
body.handhome-site.single-property .property-schedule-tour-wrap .control__indicator_day {
  border: 1px solid var(--hh-line) !important;
  border-radius: 0 !important;
  color: var(--hh-teal-deep);
  background: var(--hh-paper) !important;
}
body.handhome-site.single-property .property-schedule-tour-wrap input:checked + .control__indicator,
body.handhome-site.single-property .property-schedule-tour-wrap input:checked + .control__indicator_day {
  border-color: var(--hh-teal) !important;
  color: #fff !important;
  background: var(--hh-teal) !important;
}
body.handhome-site.single-property .property-schedule-tour-wrap-v2 .property-schedule-tour-image {
  min-height: 420px;
  object-fit: cover;
}
body.handhome-site.single-property .property-gallery-grid-wrap {
  overflow: hidden;
  border: 1px solid var(--hh-paper);
  background: var(--hh-paper);
}
body.handhome-site.single-property .property-gallery-grid .gallery-grid-item {
  position: relative;
  display: block;
  overflow: hidden;
  border: 1px solid var(--hh-paper);
  background: var(--hh-sage-soft);
}
body.handhome-site.single-property .property-gallery-grid .gallery-grid-item img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  transition: transform .4s ease;
}
body.handhome-site.single-property .property-gallery-grid .gallery-grid-item:hover img { transform: scale(1.025); }
body.handhome-site.single-property .property-energy-class-wrap .energy-diagnostic-card,
body.handhome-site.single-property .property-availability-calendar-wrap .calendar-wrap {
  border-color: var(--hh-line) !important;
  border-radius: 0 !important;
  background: var(--hh-chalk) !important;
  box-shadow: none !important;
}
body.handhome-site.single-property .property-energy-class-wrap .class-energy-list li,
body.handhome-site.single-property .property-nearby-wrap .list-lined-item,
body.handhome-site.single-property .property-walkscore-wrap .list-lined-item {
  border-color: var(--hh-line) !important;
}
body.handhome-site.single-property .property-energy-class-wrap .indicator-energy {
  min-width: max-content;
  padding: 6px 9px;
  border: 2px solid #111;
  color: #111;
  background: var(--hh-paper);
  font-size: 12px;
  line-height: 1.2;
  box-shadow: none;
}
body.handhome-site.single-property .property-energy-class-wrap .indicator-energy::before {
  border-color: #111 transparent transparent !important;
}
body.handhome-site.single-property .property-detail-wrap .block-title-wrap .small-text,
body.handhome-site.single-property .property-additional-details-wrap,
body.handhome-site.single-property #property-additional-details-wrap {
  display: none !important;
}
body.handhome-site.single-property #pills-map .map-wrap { position: relative; }
body.handhome-site.single-property #pills-map .map-wrap::after {
  content: "";
  position: absolute;
  z-index: 650;
  top: 50%;
  left: 50%;
  width: clamp(110px, 15vw, 180px);
  aspect-ratio: 1;
  transform: translate(-50%, -50%);
  border: 2px solid var(--hh-clay-dark);
  border-radius: 50%;
  background: rgba(202, 195, 175, .34);
  box-shadow: 0 0 0 9px rgba(202, 195, 175, .13);
  pointer-events: none;
}
body.handhome-site.single-property #pills-map .leaflet-marker-icon,
body.handhome-site.single-property #pills-map .leaflet-marker-shadow { display: none !important; }
body.handhome-site.single-property .property-sub-listings-table-wrap .sub-listings-table {
  border: 1px solid var(--hh-line);
  background: var(--hh-paper);
}
body.handhome-site.single-property .property-sub-listings-table-wrap .sub-listings-table :where(th, td) {
  padding: 16px;
  border-color: var(--hh-line);
}
body.handhome-site.single-property .property-sub-listings-table-wrap .sub-listings-table th {
  color: var(--hh-teal-deep);
  background: var(--hh-chalk);
}
body.handhome-site.single-property .property-review-wrap a,
body.handhome-site.single-property .property-nearby-wrap a,
body.handhome-site.single-property .property-walkscore-wrap a {
  color: var(--hh-teal-deep);
}
body.handhome-site.single-property .property-review-wrap a:hover,
body.handhome-site.single-property .property-nearby-wrap a:hover,
body.handhome-site.single-property .property-walkscore-wrap a:hover {
  color: var(--hh-clay);
}
body.handhome-site.single-property .property-review-wrap .review-title-wrap > .d-flex {
  flex-wrap: wrap;
  gap: 12px !important;
}
body.handhome-site.single-property .property-review-wrap .sort-by .dropdown-toggle {
  border-color: var(--hh-line) !important;
  border-radius: 0 !important;
  color: var(--hh-teal-deep) !important;
  background: var(--hh-paper) !important;
}

@media (max-width: 767px) {
  body.handhome-site.page-template-template-search .mobile-search-nav .form-control {
    min-height: 48px;
    border: 1px solid var(--hh-line) !important;
    border-radius: 0 !important;
    color: var(--hh-teal-deep);
    background: var(--hh-paper) !important;
    box-shadow: none !important;
  }
  body.handhome-site.page-template-template-search #houzez-btn-listing-view,
  body.handhome-site.page-template-template-search #houzez-btn-map-view {
    border-color: var(--hh-line) !important;
    color: var(--hh-teal-deep) !important;
    background: var(--hh-paper) !important;
    box-shadow: none !important;
  }
  body.handhome-site.page-template-template-search #houzez-btn-listing-view:hover,
  body.handhome-site.page-template-template-search #houzez-btn-map-view:hover {
    color: var(--hh-clay) !important;
  }
  body.handhome-site.single-property .property-detail-wrap .detail-wrap { padding: 20px 18px; }
  body.handhome-site.single-property .property-detail-wrap .list-lined-item { gap: 14px; }
  body.handhome-site.single-property .listing-tabs.horizontal-listing-tabs .nav-tabs {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  body.handhome-site.single-property .property-floor-plans-wrap .accordion-header > .d-flex {
    align-items: flex-start !important;
    flex-direction: column;
    gap: 10px;
  }
  body.handhome-site.single-property .property-floor-plans-wrap .floor-information {
    flex-wrap: wrap;
  }
  body.handhome-site.single-property .property-mortgage-calculator-wrap .mortgage-calculator-chart {
    flex: 0 0 auto;
    width: 100%;
  }
  body.handhome-site.single-property .property-schedule-tour-wrap-v2 .property-schedule-tour-image { min-height: 280px; }
  body.handhome-site.single-property .property-sub-listings-table-wrap .responsive-table { min-width: 680px; }
  body.handhome-site.single-property .property-sub-listings-table-wrap .block-content-wrap { overflow-x: auto; }
  body.handhome-site.single-property .property-review-wrap .review-title-wrap > .d-flex {
    display: grid !important;
    width: 100%;
    grid-template-columns: 1fr;
  }
  body.handhome-site.single-property .property-review-wrap .sort-by,
  body.handhome-site.single-property .property-review-wrap .sort-by .bootstrap-select {
    width: 100% !important;
  }
}

/* Property profile 1.6: native Houzez engine, HandHome editorial presentation. */
body.handhome-site.single-property {
  --hh-property-shell: min(1320px, calc(100vw - 48px));
  padding-bottom: 0;
}
body.handhome-site.single-property .content-wrap.property-wrap {
  overflow: clip;
  color: var(--hh-graphite);
  background: var(--hh-paper);
}
body.handhome-site.single-property .property-top-wrap > .container,
body.handhome-site.single-property .property-wrap > .container,
body.handhome-site.single-property .page-title-wrap > .container {
  width: var(--hh-property-shell);
  max-width: none;
}
body.handhome-site.single-property .page-title-wrap {
  padding: 50px 0 34px;
  border: 0;
  background: var(--hh-chalk);
}
body.handhome-site.single-property .breadcrumb {
  margin-bottom: 30px;
  color: var(--hh-ink-soft);
  font-size: .72rem;
}
body.handhome-site.single-property .breadcrumb a:hover { color: var(--hh-clay-dark); }
body.handhome-site.single-property .property-header-wrap {
  min-height: 0;
  margin-top: 0 !important;
  padding: 0;
  gap: 40px;
}
body.handhome-site.single-property .property-title-wrap h1 {
  max-width: 900px;
  font: 400 clamp(3.1rem, 5vw, 5.6rem)/.96 var(--hh-serif);
  letter-spacing: -.052em;
}
body.handhome-site.single-property .property-price-wrap .price {
  color: var(--hh-clay-dark);
  font: 500 clamp(2rem, 3vw, 3rem)/1 var(--hh-serif);
}
body.handhome-site.single-property .property-labels-wrap .label-status {
  padding: 7px 12px;
  border: 0;
  border-radius: 0;
  color: #fff !important;
  background: var(--hh-clay-dark) !important;
  font-size: .66rem;
  font-weight: 800;
  letter-spacing: .095em;
  text-transform: uppercase;
}
body.handhome-site.single-property .property-top-wrap {
  padding: 34px 0 0;
  background: var(--hh-paper);
}
body.handhome-site.single-property .property-banner {
  overflow: hidden;
  margin: 0 0 50px;
  border: 1px solid var(--hh-line);
  background: var(--hh-sage-soft);
}
body.handhome-site.single-property .property-detail-v1 .property-banner .tab-pane,
body.handhome-site.single-property .property-banner .tab-pane {
  min-height: 0 !important;
  max-height: none;
  aspect-ratio: 16 / 9;
  background: var(--hh-sage-soft);
}
body.handhome-site.single-property .property-banner .property-featured-image {
  width: 100%;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none;
  object-fit: cover;
  object-position: center;
}
body.handhome-site.single-property .property-image-count {
  right: 20px;
  bottom: 20px;
  padding: 9px 13px;
  border: 1px solid rgba(255,255,255,.32);
  border-radius: 0;
  color: #fff;
  background: rgba(11,47,45,.88);
  backdrop-filter: blur(7px);
}
body.handhome-site.single-property .property-view {
  overflow: visible;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.handhome-site.single-property .property-view > .property-section-wrap {
  padding: 68px 0;
  border-top: 1px solid var(--hh-line);
}
body.handhome-site.single-property .property-section-wrap > .block-wrap,
body.handhome-site.single-property .property-section-wrap .block-wrap {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.handhome-site.single-property .property-section-wrap h2,
body.handhome-site.single-property .similar-property-wrap h2 {
  margin-bottom: 38px;
  color: var(--hh-teal-deep);
  font: 400 clamp(2.6rem, 4.4vw, 4.5rem)/.98 var(--hh-serif);
  letter-spacing: -.045em;
}
body.handhome-site.single-property .property-description-content {
  max-width: 850px;
  color: var(--hh-ink-soft);
  font-size: 1.02rem;
  line-height: 1.85;
}
body.handhome-site.single-property .property-section-wrap :where(.btn-primary, .btn-secondary, .btn-success, .houzez-ele-button, button[type="submit"]) {
  border-color: var(--hh-teal) !important;
  color: #fff !important;
  background: var(--hh-teal) !important;
}
body.handhome-site.single-property .property-section-wrap :where(.btn-primary, .btn-secondary, .btn-success, .houzez-ele-button, button[type="submit"]):hover {
  border-color: var(--hh-clay-dark) !important;
  background: var(--hh-clay-dark) !important;
}
body.handhome-site.single-property :where(#property-overview-wrap,#property-description-wrap,#property-address-wrap,#property-detail-wrap,#property-contact-agent-wrap) {
  scroll-margin-top: 100px;
}

@media (max-width: 767px) {
  body.handhome-site.single-property {
    --hh-property-shell: calc(100vw - 36px);
    padding-bottom: 78px;
  }
  body.handhome-site.single-property .property-navigation-wrap { display: none !important; }
  body.handhome-site.single-property .property-top-wrap {
    padding: 0;
    background: var(--hh-paper);
  }
  body.handhome-site.single-property .property-top-wrap > .container {
    width: 100%;
    padding: 0;
  }
  body.handhome-site.single-property .property-banner {
    margin: 0;
    border: 0;
    border-bottom: 1px solid var(--hh-line);
  }
  body.handhome-site.single-property .property-detail-v1 .property-banner .tab-pane,
  body.handhome-site.single-property .property-banner .tab-pane {
    min-height: 0 !important;
    aspect-ratio: 16 / 10;
  }
  body.handhome-site.single-property .property-banner .property-featured-image {
    min-height: 0 !important;
    object-position: center;
  }
  body.handhome-site.single-property .property-image-count {
    right: 14px;
    bottom: 14px;
  }
  body.handhome-site.single-property .property-wrap > .container {
    width: 100%;
    padding: 0;
  }
  body.handhome-site.single-property .property-wrap > .container > .row { margin: 0; }
  body.handhome-site.single-property .bt-full-width-content-wrap { padding: 0; }
  body.handhome-site.single-property .mobile-top-wrap {
    display: grid;
    background: var(--hh-paper);
  }
  body.handhome-site.single-property .mobile-property-tools.block-wrap {
    margin: 0;
    padding: 16px 18px;
    border: 0;
    border-bottom: 1px solid var(--hh-line);
    background: var(--hh-chalk);
    box-shadow: none;
  }
  body.handhome-site.single-property .mobile-property-tools .nav-pills > .nav-item > .nav-link,
  body.handhome-site.single-property .mobile-property-tools .item-tool > span {
    display: grid;
    width: 46px;
    height: 46px;
    padding: 0;
    place-items: center;
    border: 1px solid var(--hh-line) !important;
    border-radius: 0 !important;
    color: var(--hh-teal-deep) !important;
    background: var(--hh-paper) !important;
    line-height: 1;
    box-shadow: none !important;
  }
  body.handhome-site.single-property .mobile-property-tools .nav-pills > .nav-item > .nav-link.active {
    border-color: var(--hh-teal) !important;
    color: #fff !important;
    background: var(--hh-teal) !important;
  }
  body.handhome-site.single-property .mobile-property-title.block-wrap {
    margin: 0;
    padding: 30px 18px 36px;
    border: 0;
    border-bottom: 1px solid var(--hh-line);
    background: var(--hh-paper);
    box-shadow: none;
  }
  body.handhome-site.single-property .mobile-property-title .page-title-mobile {
    color: var(--hh-teal-deep);
    font: 400 clamp(2.3rem, 10.5vw, 3.35rem)/1.01 var(--hh-serif);
    letter-spacing: -.045em;
  }
  body.handhome-site.single-property .mobile-property-title .item-price-wrap {
    position: static;
    margin: 22px 0 0;
    padding: 0;
    list-style: none;
  }
  body.handhome-site.single-property .mobile-property-title .item-price-wrap .price {
    color: var(--hh-clay-dark);
    font: 500 1.8rem/1 var(--hh-serif);
  }
  body.handhome-site.single-property .property-view > .property-section-wrap {
    width: calc(100% - 36px);
    margin-inline: auto;
    padding: 48px 0;
  }
  body.handhome-site.single-property .property-section-wrap h2 {
    margin-bottom: 26px;
    font-size: clamp(2.45rem, 12vw, 3.4rem);
  }
  body.handhome-site.single-property .property-overview-wrap .block-title-wrap {
    align-items: flex-start !important;
    flex-direction: column;
    gap: 7px;
  }
  body.handhome-site.single-property .property-overview-data .row {
    --bs-gutter-x: 0;
    --bs-gutter-y: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-top: 1px solid var(--hh-line);
    border-left: 1px solid var(--hh-line);
  }
  body.handhome-site.single-property .property-overview-data .col {
    width: auto;
    padding: 18px 14px;
    border-right: 1px solid var(--hh-line);
    border-bottom: 1px solid var(--hh-line);
  }
  body.handhome-site.single-property .property-overview-data .property-overview-item strong {
    color: var(--hh-teal-deep);
    font-size: 1rem;
  }
  body.handhome-site.single-property .property-overview-data .hz-meta-label {
    margin-top: 4px;
    color: var(--hh-ink-soft);
    font-size: .68rem;
    letter-spacing: .06em;
    text-transform: uppercase;
  }
  body.handhome-site.single-property .property-contact-agent-wrap {
    width: 100%;
    margin: 0;
    padding: 48px 18px 62px;
    border-top: 0;
    background: var(--hh-chalk);
  }
  body.handhome-site.single-property .property-contact-agent-wrap .block-wrap {
    max-width: 100%;
  }
  body.handhome-site.single-property .hh-mobile-property-actions {
    z-index: 990;
    padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
    border-top: 1px solid var(--hh-line);
    background: rgba(251,250,246,.96);
    box-shadow: 0 -12px 32px rgba(10,35,32,.1);
    backdrop-filter: blur(10px);
    transition: opacity .2s ease, transform .2s ease;
  }
  body.handhome-site.single-property .hh-mobile-property-actions.is-hidden {
    opacity: 0;
    pointer-events: none;
    transform: translateY(110%);
  }
  .hh-mobile-property-actions__inner {
    display: grid;
    max-width: 560px;
    margin-inline: auto;
    grid-template-columns: minmax(0,1fr) 52px;
    gap: 8px;
  }
  .hh-mobile-property-actions__primary,
  .hh-mobile-property-actions__phone {
    display: flex;
    min-height: 52px;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
  }
  .hh-mobile-property-actions__primary {
    gap: 12px;
    color: #fff !important;
    background: var(--hh-teal);
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
  }
  .hh-mobile-property-actions__phone {
    border: 1px solid var(--hh-teal);
    color: var(--hh-teal-deep) !important;
    background: var(--hh-paper);
    font-size: 1.15rem;
  }
}

/* Mobile navigation — second editorial polish pass. */
@media (max-width: 991px) {
  .hh-header-navigation {
    inset: 72px 0 0;
    height: auto;
    max-height: none;
    padding: 24px max(22px, env(safe-area-inset-right)) calc(30px + env(safe-area-inset-bottom)) max(22px, env(safe-area-inset-left));
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    background: linear-gradient(180deg, var(--hh-paper) 0%, #f6f3eb 100%);
    box-shadow: 0 28px 64px rgba(10,35,32,.18);
  }
  .hh-primary-nav--right {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid rgba(18,63,59,.14);
  }
  .hh-primary-nav--left > .hh-menu > li:last-child > a { border-bottom-color: transparent; }
  .hh-primary-nav > .hh-menu > li > a {
    display: flex;
    min-height: 58px;
    padding: 15px 4px;
    align-items: center;
    border-bottom-color: rgba(18,63,59,.16);
    font-size: clamp(1.34rem,5.8vw,1.56rem);
    line-height: 1.06;
    letter-spacing: -.022em;
  }
  .hh-primary-nav > .hh-menu > .current-menu-item > a,
  .hh-primary-nav > .hh-menu > .current-menu-ancestor > a { color: var(--hh-clay-dark); }
  .hh-primary-nav .menu-item-has-children > a { padding-right: 58px; }
  .hh-submenu-toggle {
    top: 10px;
    right: 2px;
    width: 38px;
    height: 38px;
    border-color: rgba(18,63,59,.16);
    background: rgba(255,255,255,.45);
    box-shadow: 0 5px 14px rgba(10,35,32,.04);
  }
  .hh-submenu-toggle:hover,
  .hh-submenu-toggle:focus-visible { border-color: var(--hh-clay); background: rgba(202,195,175,.24); }
  .hh-submenu-toggle[aria-expanded="true"] {
    border-color: var(--hh-teal);
    color: #fff;
    background: var(--hh-teal);
    box-shadow: 0 8px 18px rgba(10,54,50,.16);
  }
  .hh-primary-nav .menu-item-has-children.is-submenu-open > a {
    color: var(--hh-teal);
    border-bottom-color: transparent;
  }
  .hh-primary-nav .sub-menu {
    margin: 0 0 14px;
    padding: 7px 16px 9px;
    border-left: 2px solid var(--hh-clay);
    background: rgba(202,195,175,.13);
  }
  .hh-primary-nav .sub-menu a {
    min-height: 0;
    padding: 10px 0;
    border-bottom: 1px solid rgba(18,63,59,.12);
    font-size: .82rem;
    font-weight: 560;
    line-height: 1.28;
    letter-spacing: .005em;
  }
  .hh-primary-nav .sub-menu li:last-child > a { border-bottom: 0; }
  .hh-primary-nav .sub-menu .current-menu-item > a { color: var(--hh-clay-dark); font-weight: 750; }
  .hh-primary-nav > .hh-menu > .hh-menu-listing { padding: 18px 0 4px; }
  .hh-primary-nav > .hh-menu > .hh-menu-listing > a {
    min-height: 52px;
    margin: 0;
    padding: 0 22px;
    justify-content: center;
    border: 1px solid var(--hh-teal) !important;
    border-radius: 999px;
    color: #fff !important;
    background: var(--hh-teal);
    font-family: var(--hh-sans);
    font-size: .72rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .11em;
    text-transform: uppercase;
  }
  .hh-primary-nav > .hh-menu > .hh-menu-listing > a:hover,
  .hh-primary-nav > .hh-menu > .hh-menu-listing > a:focus-visible {
    border-color: var(--hh-clay-dark) !important;
    color: #fff !important;
    background: var(--hh-clay-dark);
  }
  body.handhome-site .hh-header-navigation ul.hh-language-switcher {
    display: flex !important;
    gap: 8px !important;
    margin: 18px 0 0 !important;
    padding: 18px 0 0 !important;
    justify-content: flex-start;
    border-top: 1px solid rgba(18,63,59,.14);
  }
  .hh-header-navigation .hh-language-switcher a {
    width: 38px;
    height: 38px;
    border-color: rgba(18,63,59,.18);
    background: rgba(255,255,255,.5);
    font-size: .66rem;
  }
  .hh-header-navigation .hh-language-switcher a[aria-current="page"] {
    border-color: var(--hh-clay);
    color: var(--hh-teal-deep);
    background: var(--hh-clay);
  }
}

@media (max-width: 420px) {
  .hh-header-navigation { padding-inline: 20px; }
  .hh-primary-nav > .hh-menu > li > a { font-size: 1.34rem; }
  .hh-primary-nav .sub-menu { padding-inline: 14px; }
  .hh-primary-nav .sub-menu a { font-size: .8rem; }
}

/* Client final review — September 2026. */

/* Preserve the approved 3D emblem; recolour only the wordmark for each header state. */
.hh-brand--header { isolation: isolate; }
.hh-brand--footer { position: relative; isolation: isolate; }
.hh-brand--header .hh-brand__logo,
.hh-brand--footer img {
  filter: brightness(0) invert(1) !important;
}
.hh-brand--header::after,
.hh-brand--footer::after {
  position: absolute;
  z-index: 1;
  inset: 0;
  background: var(--hh-logo-url) left center / 100% 100% no-repeat;
  clip-path: inset(0 71.5% 0 0);
  content: "";
  pointer-events: none;
}
body:not(.handhome-home) .hh-brand--header .hh-brand__logo,
.hh-site-header.is-scrolled .hh-brand--header .hh-brand__logo {
  filter: brightness(0) saturate(100%) invert(14%) sepia(7%) saturate(340%) hue-rotate(104deg) brightness(95%) contrast(92%) !important;
}

/* A clear, robust carousel gesture without interfering with vertical touch scrolling. */
.hh-property-carousel__track {
  touch-action: pan-y pinch-zoom;
  scroll-padding-inline: 2px;
}
.hh-property-carousel__controls button:disabled {
  border-color: rgba(18,63,59,.09);
  color: rgba(18,63,59,.28);
  background: transparent;
  cursor: default;
}
@media (hover:hover) and (pointer:fine) {
  .hh-property-carousel .hh-drag-cursor { visibility: hidden; opacity: 0; }
  .hh-property-carousel__track:hover ~ .hh-drag-cursor {
    visibility: visible;
    opacity: 1;
    transform: translate(-50%,-50%) scale(1);
  }
  .hh-property-carousel:hover .hh-property-carousel__controls,
  .hh-property-carousel:hover a { cursor: auto; }
  .hh-property-carousel__track:hover,
  .hh-property-carousel__track:hover a { cursor: grab; }
  .hh-property-carousel.is-dragging .hh-property-carousel__track,
  .hh-property-carousel.is-dragging .hh-property-carousel__track a { cursor: grabbing; }
}

/* Interactive evaluation and working-principle cards, including keyboard focus. */
.hh-pillar-grid article {
  position: relative;
  outline: 0;
  cursor: default;
  transition: color .25s ease, background .25s ease, transform .25s ease, box-shadow .25s ease;
}
.hh-pillar-grid article:hover,
.hh-pillar-grid article:focus-visible {
  z-index: 1;
  color: #fff;
  background: var(--hh-teal);
  box-shadow: 0 22px 46px rgba(10,35,32,.14);
  transform: translateY(-6px);
}
.hh-pillar-grid article:hover > span,
.hh-pillar-grid article:focus-visible > span { color: var(--hh-clay); }
.hh-pillar-grid article:hover h3,
.hh-pillar-grid article:focus-visible h3 { color: #fff; }
.hh-pillar-grid article:hover p,
.hh-pillar-grid article:focus-visible p { color: rgba(255,255,255,.76); }

/* Compact single-property typography and related cards. */
body.handhome-site.single-property .property-title-wrap h1 {
  max-width: 880px;
  font-size: clamp(2.35rem, 4vw, 4.25rem);
  line-height: 1;
}
body.handhome-site.single-property .similar-property-wrap {
  padding: 68px 0;
}
body.handhome-site.single-property .similar-property-wrap > .container {
  width: min(1180px, calc(100vw - 48px));
  max-width: none;
}
body.handhome-site.single-property .similar-property-wrap .listing-view.grid-view {
  display: grid !important;
  margin: 0 !important;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 18px;
}
body.handhome-site.single-property .similar-property-wrap .listing-view.grid-view > .item-listing-wrap {
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.handhome-site.single-property .similar-property-wrap h2 {
  margin-bottom: 30px;
  font-size: clamp(2.15rem, 3.25vw, 3.2rem);
  line-height: 1.02;
}
body.handhome-site.single-property .similar-property-wrap .item-wrap {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  border: 1px solid var(--hh-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
body.handhome-site.single-property .similar-property-wrap .item-header {
  min-height: 0 !important;
  aspect-ratio: 4 / 3;
}
body.handhome-site.single-property .similar-property-wrap .item-header img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
body.handhome-site.single-property .similar-property-wrap .item-body {
  min-height: 0 !important;
  padding: 20px !important;
}
body.handhome-site.single-property .similar-property-wrap .item-title {
  margin-bottom: 10px !important;
  white-space: normal;
}
body.handhome-site.single-property .similar-property-wrap .item-title a {
  color: var(--hh-teal-deep) !important;
  font: 400 1.28rem/1.12 var(--hh-serif) !important;
  letter-spacing: -.025em;
}
body.handhome-site.single-property .similar-property-wrap .item-title a:hover {
  color: var(--hh-clay-dark) !important;
}

/* Native Houzez energy data, simplified to a box row with a dynamic active pointer. */
body.handhome-site.single-property .property-energy-class-wrap .class-energy {
  display: grid !important;
  margin: 36px 0 0;
  padding: 0;
  grid-template-columns: repeat(9, minmax(0,1fr));
  gap: 4px;
  overflow: visible;
}
body.handhome-site.single-property .property-energy-class-wrap .class-energy-indicator {
  position: relative;
  display: block;
  min-width: 0;
  padding: 0 !important;
  overflow: visible;
}
body.handhome-site.single-property .property-energy-class-wrap .class-energy-indicator > span {
  display: flex;
  height: 38px;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(18,63,59,.18);
  color: var(--hh-teal-deep);
  background: var(--hh-sage-soft);
  font-size: .76rem;
  font-weight: 800;
}
body.handhome-site.single-property .property-energy-class-wrap .class-energy-indicator:nth-child(4) > span,
body.handhome-site.single-property .property-energy-class-wrap .class-energy-indicator:nth-child(5) > span { background: var(--hh-clay); }
body.handhome-site.single-property .property-energy-class-wrap .class-energy-indicator:nth-child(6) > span,
body.handhome-site.single-property .property-energy-class-wrap .class-energy-indicator:nth-child(7) > span { color: #fff; background: #8a806a; }
body.handhome-site.single-property .property-energy-class-wrap .class-energy-indicator:nth-child(8) > span,
body.handhome-site.single-property .property-energy-class-wrap .class-energy-indicator:nth-child(9) > span { color: #fff; background: var(--hh-clay-dark); }
body.handhome-site.single-property .property-energy-class-wrap .indicator-energy {
  position: absolute;
  z-index: 2;
  top: -13px;
  left: 50%;
  width: 0;
  min-width: 0;
  height: 0;
  padding: 0;
  border: 0 !important;
  border-right: 7px solid transparent !important;
  border-left: 7px solid transparent !important;
  border-top: 9px solid var(--hh-graphite) !important;
  color: transparent;
  background: transparent;
  font-size: 0;
  line-height: 0;
  box-shadow: none;
  transform: translateX(-50%);
}
body.handhome-site.single-property .property-energy-class-wrap .indicator-energy::before,
body.handhome-site.single-property .property-energy-class-wrap .indicator-energy::after { display: none !important; }

@media (max-width: 991px) {
  .hh-brand--header {
    position: relative;
    top: auto;
    left: auto;
    transform: none;
  }
  .hh-brand--header .hh-brand__logo {
    display: block !important;
    width: 210px;
    height: auto;
    object-fit: contain;
  }
  .hh-brand--header .hh-brand__logo-mobile { display: none !important; }
  body.handhome-site.single-property .similar-property-wrap .listing-view.grid-view {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}

@media (max-width: 767px) {
  body.handhome-site.single-property .mobile-property-title .page-title-mobile {
    font-size: clamp(2rem, 8.5vw, 2.75rem);
    line-height: 1.04;
  }
  body.handhome-site.single-property .similar-property-wrap {
    padding: 52px 0;
  }
  body.handhome-site.single-property .similar-property-wrap > .container {
    width: calc(100vw - 36px);
  }
  body.handhome-site.single-property .similar-property-wrap h2 {
    font-size: clamp(2rem, 9vw, 2.65rem);
  }
  body.handhome-site.single-property .similar-property-wrap .listing-view.grid-view {
    grid-template-columns: 1fr;
  }
  body.handhome-site.single-property .property-energy-class-wrap .class-energy {
    grid-template-columns: repeat(9, minmax(0,1fr));
    gap: 2px;
    overflow: visible;
  }
  .hh-pillar-grid article:hover,
  .hh-pillar-grid article:focus-visible { transform: none; }
}

/* Dashboard templates own their viewport and must not inherit the fixed public-header offset. */
body.handhome-site.houzez-dashboard-body:not(.handhome-home) { padding-top: 0; }

/* Header rebalance and branded Houzez account modal. */
@media (min-width: 992px) and (max-width: 1279px) {
  .hh-header-shell { width: calc(100vw - 32px); }
  .hh-primary-nav { gap: 8px; }
  .hh-menu,
  .hh-primary-nav .menu { gap: 16px; }
  .hh-primary-nav .menu a,
  .hh-primary-nav .hh-menu a { font-size: .7rem; }
  .hh-brand--header .hh-brand__logo { width: 214px; }
  .hh-menu .hh-menu-listing > a,
  .hh-menu--right > .hh-menu-listing > a { padding-inline: 13px; }
  .hh-language-switcher { gap: 2px; }
  .hh-language-switcher a,
  .hh-account-control { width: 34px; height: 34px; }
}

body.handhome-site .login-register-form .modal-dialog { max-width: 470px; }
body.handhome-site .login-register-form .modal-content,
body.handhome-site #reset-password-form .modal-content {
  border: 1px solid rgba(18,63,59,.2);
  border-radius: 2px;
  background: var(--hh-paper);
  box-shadow: 0 34px 90px rgba(7,35,33,.34);
}
body.handhome-site .login-register-form .modal-header,
body.handhome-site #reset-password-form .modal-header {
  display: flex;
  min-height: 78px;
  padding: 0 0 0 18px;
  align-items: stretch;
  border: 0;
  border-radius: 1px 1px 0 0;
  color: #fff;
  background: var(--hh-teal-deep) !important;
}
body.handhome-site .login-register-form .login-register-tabs {
  display: flex;
  flex: 1 1 auto;
  align-items: stretch;
}
body.handhome-site .login-register-form .modal-header .nav-tabs {
  display: flex;
  height: 100%;
  margin: 0;
  align-items: stretch;
  border: 0;
}
body.handhome-site .login-register-form .modal-header .nav-item { display: flex; }
body.handhome-site .login-register-form .modal-header .nav-link {
  height: 78px;
  margin: 0 !important;
  padding: 0 24px;
  border: 0 !important;
  border-bottom: 3px solid transparent !important;
  border-radius: 0;
  color: rgba(255,255,255,.66) !important;
  background: transparent !important;
  font-family: var(--hh-sans);
  font-size: .69rem;
  font-weight: 800;
  letter-spacing: .14em;
  text-transform: uppercase;
}
body.handhome-site .login-register-form .modal-header .nav-link:hover,
body.handhome-site .login-register-form .modal-header .nav-link:focus-visible {
  color: #fff !important;
  background: rgba(255,255,255,.045) !important;
  outline: 0;
}
body.handhome-site .login-register-form .modal-header .nav-link.active {
  border-bottom-color: var(--hh-clay) !important;
  color: #fff !important;
  background: transparent !important;
}
body.handhome-site .login-register-form .modal-header .close,
body.handhome-site #reset-password-form .modal-header .close {
  display: grid;
  flex: 0 0 70px;
  width: 70px;
  height: 78px;
  margin: 0 !important;
  padding: 0 !important;
  place-items: center;
  border: 0 !important;
  border-left: 1px solid rgba(255,255,255,.14) !important;
  border-radius: 0;
  color: #fff !important;
  background: transparent !important;
  font: 300 1.55rem/1 var(--hh-sans);
  opacity: 1;
}
body.handhome-site .login-register-form .modal-header .close:hover,
body.handhome-site .login-register-form .modal-header .close:focus-visible,
body.handhome-site #reset-password-form .modal-header .close:hover,
body.handhome-site #reset-password-form .modal-header .close:focus-visible {
  color: var(--hh-teal-deep) !important;
  background: var(--hh-clay) !important;
  outline: 0;
}
body.handhome-site .login-register-form .modal-body,
body.handhome-site #reset-password-form .modal-body { padding: 30px 28px 28px; }
body.handhome-site .login-register-form .form-group,
body.handhome-site #reset-password-form .form-group { margin: 0 0 12px; }
body.handhome-site .login-register-form .form-control,
body.handhome-site #reset-password-form .form-control {
  min-height: 54px;
  border: 1px solid rgba(18,63,59,.2);
  border-radius: 0;
  color: var(--hh-graphite);
  background: #fff;
  box-shadow: none;
  font-family: var(--hh-sans);
}
body.handhome-site .login-register-form .form-control::placeholder,
body.handhome-site #reset-password-form .form-control::placeholder { color: rgba(36,40,38,.46); }
body.handhome-site .login-register-form .form-control:focus,
body.handhome-site #reset-password-form .form-control:focus {
  border-color: var(--hh-clay-dark);
  box-shadow: 0 0 0 3px rgba(202,195,175,.3);
}
body.handhome-site .login-register-form .form-group-field::before,
body.handhome-site #reset-password-form .form-group-field::before { color: var(--hh-clay-dark); }
body.handhome-site .login-register-form .form-tools {
  margin: 18px 0;
  color: var(--hh-ink-soft);
  font-size: .75rem;
}
body.handhome-site .login-register-form .form-tools .d-flex { gap: 16px; align-items: center; }
body.handhome-site .login-register-form .form-tools a,
body.handhome-site .login-register-form .modal-body a,
body.handhome-site #reset-password-form .modal-body a {
  color: var(--hh-teal-deep) !important;
  font-weight: 750;
  text-decoration-color: rgba(101,95,81,.48);
  text-underline-offset: 3px;
}
body.handhome-site .login-register-form input[type="checkbox"] { accent-color: var(--hh-teal); }
body.handhome-site .login-register-form .control__indicator {
  border: 1px solid rgba(18,63,59,.28);
  background: #fff;
}
body.handhome-site .login-register-form .control input:checked ~ .control__indicator {
  border-color: var(--hh-teal);
  background: var(--hh-teal);
}
body.handhome-site .login-register-form .btn-primary,
body.handhome-site #reset-password-form .btn-primary {
  min-height: 52px;
  border: 1px solid var(--hh-teal-deep) !important;
  border-radius: 0;
  color: #fff !important;
  background: var(--hh-teal-deep) !important;
  font-family: var(--hh-sans);
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .055em;
}
body.handhome-site .login-register-form .btn-primary:hover,
body.handhome-site .login-register-form .btn-primary:focus-visible,
body.handhome-site #reset-password-form .btn-primary:hover,
body.handhome-site #reset-password-form .btn-primary:focus-visible {
  border-color: var(--hh-clay-dark) !important;
  color: #fff !important;
  background: var(--hh-clay-dark) !important;
  outline: 0;
}

@media (max-width: 767px) {
  body.handhome-site .login-register-form .modal-content,
  body.handhome-site #reset-password-form .modal-content {
    max-height: calc(100dvh - 28px);
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  body.handhome-site .login-register-form .modal-header,
  body.handhome-site #reset-password-form .modal-header { position: sticky; z-index: 2; top: 0; }
  body.handhome-site .login-register-form .modal-header,
  body.handhome-site #reset-password-form .modal-header { min-height: 70px; padding-left: 10px; }
  body.handhome-site .login-register-form .modal-header .nav-link { height: 70px; padding-inline: 16px; }
  body.handhome-site .login-register-form .modal-header .close,
  body.handhome-site #reset-password-form .modal-header .close { flex-basis: 58px; width: 58px; height: 70px; }
  body.handhome-site .login-register-form .modal-body,
  body.handhome-site #reset-password-form .modal-body { padding: 24px 20px 22px; }
}

/* HandHome Journal and final footer refinement. */
.hh-journal-hero {
  padding: 104px 0 92px;
  color: #fff;
  background:
    radial-gradient(circle at 87% 18%, rgba(202,195,175,.13), transparent 30%),
    linear-gradient(135deg, #082927 0%, var(--hh-teal-deep) 100%);
}
.hh-journal-hero__grid { display: grid; grid-template-columns: minmax(0,1.18fr) minmax(280px,.62fr); gap: clamp(48px,8vw,130px); align-items: end; }
.hh-journal-hero .hh-eyebrow { margin-bottom: 24px; color: var(--hh-clay); }
.hh-journal-hero h1 { max-width: 840px; margin: 0; color: #fff; font: 400 clamp(4.4rem,8vw,8.1rem)/.88 var(--hh-serif); letter-spacing: -.065em; }
.hh-journal-hero__grid > p,
.hh-journal-hero__description { max-width: 510px; margin: 0 0 8px; color: rgba(255,255,255,.67); font-size: 1rem; line-height: 1.8; }
.hh-journal-hero__description p { margin: 0; color: inherit; }
.hh-journal-hero--compact { padding-top: 88px; padding-bottom: 72px; }
.hh-journal-hero--compact h1 { font-size: clamp(3.6rem,6vw,6.5rem); }
.hh-journal-index { background: var(--hh-chalk); }
.hh-journal-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: clamp(24px,3vw,42px); }
.hh-journal-card { display: flex; min-width: 0; flex-direction: column; background: var(--hh-paper); border: 1px solid var(--hh-line); transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease; }
.hh-journal-card:hover { border-color: rgba(18,63,59,.3); box-shadow: 0 28px 62px rgba(8,41,39,.09); transform: translateY(-4px); }
.hh-journal-card__media { position: relative; display: block; overflow: hidden; aspect-ratio: 4 / 3; background: var(--hh-sage-soft); }
.hh-journal-card__media img { width: 100%; height: 100% !important; object-fit: cover; transition: transform .5s ease; }
.hh-journal-card:hover .hh-journal-card__media img { transform: scale(1.035); }
.hh-journal-card__placeholder { display: grid; width: 100%; height: 100%; place-items: center; background: linear-gradient(140deg, rgba(202,195,175,.55), rgba(129,149,138,.28)); }
.hh-journal-card__placeholder::before { position: absolute; inset: 22px; border: 1px solid rgba(18,63,59,.18); content: ""; }
.hh-journal-card__placeholder span { color: rgba(18,63,59,.32); font: 400 3rem/1 var(--hh-serif); letter-spacing: -.04em; }
.hh-journal-card__body { display: flex; min-height: 330px; padding: 30px; flex-direction: column; }
.hh-journal-card__meta,
.hh-article-meta { display: flex; gap: 15px; align-items: center; flex-wrap: wrap; color: var(--hh-ink-soft); font-size: .67rem; font-weight: 700; letter-spacing: .065em; text-transform: uppercase; }
.hh-journal-card__meta > * + *::before,
.hh-article-meta > * + *::before { margin-right: 15px; color: var(--hh-clay-dark); content: "·"; }
.hh-journal-card__meta a,
.hh-article-meta a { color: var(--hh-clay-dark); text-decoration: none; }
.hh-journal-card h2 { margin: 22px 0 14px; font: 400 clamp(2rem,2.5vw,2.65rem)/1 var(--hh-serif); letter-spacing: -.045em; }
.hh-journal-card h2 a { color: var(--hh-teal-deep); text-decoration: none; }
.hh-journal-card__body > p { margin: 0 0 28px; color: var(--hh-ink-soft); font-size: .88rem; line-height: 1.7; }
.hh-journal-card__link { display: flex; margin-top: auto; padding-top: 20px; align-items: center; justify-content: space-between; border-top: 1px solid var(--hh-line); color: var(--hh-teal-deep); font-size: .7rem; font-weight: 800; letter-spacing: .055em; text-decoration: none; text-transform: uppercase; }
.hh-journal-card__link span { color: var(--hh-clay-dark); font-size: 1rem; transition: transform .2s ease; }
.hh-journal-card__link:hover span { transform: translate(2px,-2px); }
.hh-journal-empty { max-width: 850px; padding: clamp(44px,7vw,86px); border: 1px solid var(--hh-line); background: var(--hh-paper); }
.hh-journal-empty h2 { max-width: 650px; margin: 18px 0 20px; color: var(--hh-teal-deep); font: 400 clamp(3rem,5vw,5.5rem)/.96 var(--hh-serif); letter-spacing: -.055em; }
.hh-journal-empty > p:not(.hh-eyebrow) { max-width: 520px; margin-bottom: 32px; color: var(--hh-ink-soft); }
.hh-journal .navigation.pagination { margin-top: 58px; }
.hh-journal .nav-links { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.hh-journal .page-numbers { display: grid; min-width: 44px; height: 44px; padding: 0 12px; place-items: center; border: 1px solid var(--hh-line); color: var(--hh-teal-deep); background: var(--hh-paper); text-decoration: none; }
.hh-journal .page-numbers.current,
.hh-journal a.page-numbers:hover { border-color: var(--hh-teal-deep); color: #fff; background: var(--hh-teal-deep); }

.hh-article-hero { padding: 98px 0 76px; background: var(--hh-chalk); }
.hh-article-hero__inner { max-width: 1060px; }
.hh-article-meta { margin-bottom: 30px; }
.hh-article-hero h1 { max-width: 1050px; margin: 0; color: var(--hh-teal-deep); font: 400 clamp(4rem,7.5vw,7.2rem)/.91 var(--hh-serif); letter-spacing: -.06em; }
.hh-article-deck { max-width: 760px; margin: 34px 0 0; color: var(--hh-ink-soft); font-size: clamp(1.05rem,1.6vw,1.32rem); line-height: 1.65; }
.hh-article-featured { padding-bottom: 70px; }
.hh-article-featured img { display: block; width: 100%; max-height: 760px; object-fit: cover; }
.hh-article-layout { display: grid; grid-template-columns: minmax(0,760px); padding-bottom: 90px; justify-content: center; }
.hh-article-content { color: var(--hh-graphite); font-size: 1.05rem; line-height: 1.85; }
.hh-article-content > *:first-child { margin-top: 0; }
.hh-article-content h2,
.hh-article-content h3 { margin: 2.2em 0 .7em; color: var(--hh-teal-deep); font-family: var(--hh-serif); font-weight: 400; letter-spacing: -.035em; line-height: 1.05; }
.hh-article-content h2 { font-size: clamp(2.5rem,4vw,4rem); }
.hh-article-content h3 { font-size: clamp(2rem,3vw,3rem); }
.hh-article-content a { color: var(--hh-clay-dark); text-decoration-thickness: 1px; text-underline-offset: 4px; }
.hh-article-content blockquote { margin: 2.2em 0; padding: 8px 0 8px 30px; border-left: 2px solid var(--hh-clay-dark); color: var(--hh-teal-deep); font: 400 clamp(1.8rem,3vw,2.6rem)/1.25 var(--hh-serif); }
.hh-article-content img { max-width: 100%; height: auto; }
.hh-article-tags { display: flex; margin-top: 50px; padding-top: 24px; gap: 9px; flex-wrap: wrap; border-top: 1px solid var(--hh-line); }
.hh-article-tags a { padding: 7px 11px; border: 1px solid var(--hh-line); color: var(--hh-teal-deep); font-size: .68rem; font-weight: 700; text-decoration: none; text-transform: uppercase; }
.hh-article-navigation { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); padding-top: 34px; padding-bottom: 88px; gap: 24px; border-top: 1px solid var(--hh-line); }
.hh-article-navigation > div:last-child { text-align: right; }
.hh-article-navigation a { display: grid; gap: 7px; color: var(--hh-teal-deep); font: 400 1.6rem/1.05 var(--hh-serif); text-decoration: none; }
.hh-article-navigation a span { color: var(--hh-ink-soft); font: 700 .64rem/1.2 var(--hh-sans); letter-spacing: .08em; text-transform: uppercase; }

.hh-site-footer {
  position: relative;
  overflow: hidden;
  padding: 88px 0 28px;
  background:
    radial-gradient(circle at 12% 10%, rgba(202,195,175,.08), transparent 29%),
    linear-gradient(145deg, #062523 0%, #082e2b 100%);
}
.hh-site-footer::before { position: absolute; top: 0; left: 0; width: min(280px,28vw); height: 3px; background: var(--hh-clay-dark); content: ""; }
.hh-footer-grid { gap: clamp(54px,8vw,120px); padding-bottom: 72px; }
.hh-footer-brand > p { font-size: .95rem; line-height: 1.7; }
.hh-footer-label { margin-bottom: 24px; }
.hh-footer-menu,
.hh-site-footer .hh-menu { gap: 12px; }
.hh-footer-menu li,
.hh-site-footer .hh-menu li { width: fit-content; }
.hh-footer-menu a,
.hh-site-footer .hh-menu a { position: relative; display: inline-block; transition: color .2s ease, transform .2s ease; }
.hh-footer-menu a::before,
.hh-site-footer .hh-menu a::before { position: absolute; top: 50%; left: -13px; width: 5px; height: 1px; background: var(--hh-clay); opacity: 0; content: ""; transform: translateX(-4px); transition: opacity .2s ease, transform .2s ease; }
.hh-footer-menu a:hover,
.hh-site-footer .hh-menu a:hover { color: #fff; transform: translateX(9px); }
.hh-footer-menu a:hover::before,
.hh-site-footer .hh-menu a:hover::before { opacity: 1; transform: translateX(0); }
.hh-footer-contact { gap: 11px; line-height: 1.6; }
.hh-footer-bottom { align-items: flex-start; }
.hh-footer-credits { display: grid; gap: 7px; }
.hh-footer-signature { width: fit-content; color: rgba(255,255,255,.34) !important; font-size: .58rem; font-weight: 650; letter-spacing: .075em; text-decoration: none; text-transform: uppercase; transition: color .2s ease; }
.hh-footer-signature span { color: rgba(202,195,175,.68); }
.hh-footer-signature:hover { color: rgba(255,255,255,.72) !important; }
.hh-footer-legal { display: flex; max-width: 520px; gap: 7px; justify-content: flex-end; flex-wrap: wrap; text-align: right; }
.hh-footer-legal a:hover { color: rgba(255,255,255,.78); }

@media (max-width: 991px) {
  .hh-journal-hero__grid { grid-template-columns: 1fr; gap: 34px; }
  .hh-journal-hero__grid > p,
  .hh-journal-hero__description { margin: 0; }
  .hh-journal-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 640px) {
  .hh-journal-hero { padding: 74px 0 66px; }
  .hh-journal-hero h1 { font-size: clamp(3.7rem,17vw,5rem); }
  .hh-journal-hero__grid { gap: 28px; }
  .hh-journal-hero__grid > p,
  .hh-journal-hero__description { font-size: .94rem; }
  .hh-journal-grid { grid-template-columns: 1fr; }
  .hh-journal-card__body { min-height: 0; padding: 26px 24px; }
  .hh-journal-empty { padding: 36px 26px; }
  .hh-journal-empty h2 { font-size: 3.15rem; }
  .hh-article-hero { padding: 72px 0 56px; }
  .hh-article-hero h1 { font-size: clamp(3.25rem,15vw,4.6rem); }
  .hh-article-featured { padding-bottom: 48px; }
  .hh-article-layout { padding-bottom: 64px; }
  .hh-article-content { font-size: 1rem; }
  .hh-article-navigation { grid-template-columns: 1fr; padding-bottom: 70px; }
  .hh-article-navigation > div:last-child { text-align: left; }
  .hh-site-footer { padding-top: 74px; }
  .hh-footer-grid { padding-bottom: 56px; }
  .hh-footer-bottom { gap: 24px; }
  .hh-footer-legal { justify-content: flex-start; text-align: left; }
}

/* Native Houzez agency profile, aligned with the HandHome design system. */
.single-houzez_agency .content-wrap.agent-detail-page-v1 {
  padding: clamp(52px,7vw,96px) 0;
  background: var(--hh-ivory);
}
.single-houzez_agency .agent-profile-wrap,
.single-houzez_agency .agent-bio-wrap,
.single-houzez_agency .agent-nav-wrap {
  border: 1px solid var(--hh-line);
  border-radius: 0;
  box-shadow: none;
}
.single-houzez_agency .agent-profile-wrap {
  margin-bottom: 28px;
  padding: clamp(28px,4vw,52px);
  background: #fff;
}
.single-houzez_agency .agent-image {
  display: grid;
  min-height: 220px;
  place-items: center;
  background: #f1ede3;
}
.single-houzez_agency .agent-image img {
  width: min(76%,260px);
  height: auto;
  max-height: 260px;
  object-fit: contain;
}
.single-houzez_agency .agent-profile-header h1,
.single-houzez_agency .agent-bio-wrap h2 {
  color: var(--hh-teal-deep);
  font-family: var(--hh-serif);
  font-weight: 400;
  letter-spacing: -.035em;
}
.single-houzez_agency .agent-profile-header h1 {
  font-size: clamp(3rem,5vw,5rem);
  line-height: .95;
}
.single-houzez_agency .agent-profile-top-wrap {
  border-bottom-color: var(--hh-line) !important;
}
.single-houzez_agency .agent-profile-content li {
  display: grid;
  grid-template-columns: minmax(150px,.42fr) 1fr;
  padding: 10px 0;
  border-bottom: 1px solid var(--hh-line);
  color: var(--hh-ink-soft);
}
.single-houzez_agency .agent-profile-content strong {
  color: var(--hh-teal-deep);
  font-size: .72rem;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.single-houzez_agency .agent-profile-buttons .btn {
  min-width: 170px;
  padding: 13px 22px;
  border-radius: 0;
  font-size: .72rem;
  font-weight: 750;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.single-houzez_agency .agent-profile-buttons .btn-secondary {
  border-color: var(--hh-clay-dark);
  background: var(--hh-clay-dark);
  color: #fff;
}
.single-houzez_agency .agent-profile-buttons .btn-call {
  border-color: var(--hh-teal-deep);
  background: transparent;
  color: var(--hh-teal-deep);
}
.single-houzez_agency .agent-bio-wrap {
  margin-bottom: 28px;
  padding: clamp(28px,4vw,48px);
  background: #fff;
  color: var(--hh-ink-soft);
  font-size: 1rem;
  line-height: 1.78;
}
.single-houzez_agency .agent-bio-wrap h2 {
  font-size: clamp(2.4rem,4vw,4rem);
}
.single-houzez_agency .agent-nav-wrap {
  padding: 6px;
  background: #fff;
}
.single-houzez_agency .agent-nav-wrap .nav-link {
  border-radius: 0;
  color: var(--hh-teal-deep);
  font-size: .72rem;
  font-weight: 750;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.single-houzez_agency .agent-nav-wrap .nav-link.active {
  background: var(--hh-teal-deep);
  color: #fff;
}

@media (max-width: 767px) {
  .single-houzez_agency .content-wrap.agent-detail-page-v1 { padding: 34px 0 64px; }
  .single-houzez_agency .agent-profile-wrap { padding: 20px; }
  .single-houzez_agency .agent-image { min-height: 180px; margin-bottom: 24px; }
  .single-houzez_agency .agent-profile-header h1 { font-size: 3.35rem; }
  .single-houzez_agency .agent-profile-content li { grid-template-columns: 1fr; gap: 4px; }
  .single-houzez_agency .agent-profile-buttons { flex-direction: column; }
  .single-houzez_agency .agent-profile-buttons .btn { width: 100%; }
}
