/* THE NEW HAUS — restrained navy / champagne identity layer (2026-11-13).
   Kept separate from the legacy stylesheet so this visual system is auditable. */
:root {
  --nh-navy: #10243A;
  --nh-navy-deep: #0B1B2B;
  --nh-gold: #D6B77A;
  --nh-gold-light: #E8D1A0;
  --nh-white: #F7F5F0;
  --nh-serif: "Playfair Display", Georgia, "Times New Roman", serif;
}

/* Shared header wordmark */
.top {
  position: relative;
  z-index: 30;
  min-height: 88px;
  padding: 13px clamp(20px, 5vw, 76px);
  background: var(--nh-navy) !important;
  border-bottom: 1px solid rgba(214, 183, 122, .48) !important;
}
.top .nh-brand,
.nh-footer-brand {
  display: inline-flex;
  align-items: center;
  flex: 0 1 auto;
  gap: 13px !important;
  min-width: 0;
  color: var(--nh-white);
  letter-spacing: normal;
  text-decoration: none;
}
.nh-brand-mark {
  display: grid;
  place-items: center;
  flex: 0 0 54px;
  width: 54px;
  height: 54px;
  border: 1px solid rgba(232, 209, 160, .72);
  border-radius: 12px;
  background: var(--nh-navy-deep);
  color: var(--nh-gold);
  font: 700 23px/1 "Georgia", serif;
  letter-spacing: -1.8px;
}
.nh-brand-copy { display: flex; flex-direction: column; min-width: 0; gap: 4px; }
.nh-brand-name {
  display: block;
  color: var(--nh-navy);
  font: 600 clamp(17px, 1.55vw, 21px)/1.05 var(--nh-serif);
  letter-spacing: .055em;
  white-space: nowrap;
}
.nh-brand-name strong { color: #A9874D; font-weight: 600; }
.nh-brand-tagline {
  display: block;
  color: #697684;
  font: 600 8px/1.3 var(--sans, "DM Sans", Arial, sans-serif);
  letter-spacing: .19em;
  white-space: nowrap;
}
.top .nh-brand-name { color: var(--nh-white) !important; }
.top .nh-brand-tagline { color: rgba(247, 245, 240, .72) !important; }
.top .nh-brand-mark { background: var(--nh-navy-deep); border-color: rgba(232, 209, 160, .78); }
.top nav.site-nav { align-items: center; gap: clamp(13px, 2vw, 27px); }
.top nav.site-nav a { color: #33465A; transition: color .2s ease; }
.top nav.site-nav a:hover { color: #A9874D; }
.top nav.site-nav .nav-cta {
  padding: 11px 17px;
  border: 1px solid var(--nh-navy);
  border-radius: 3px;
  background: var(--nh-navy);
  color: var(--nh-white);
}
.top nav.site-nav .nav-cta:hover { background: #1B3855; color: #fff; }

/* Homepage: architectural image on desktop, editorial navy text panel. */
main > section#home.newhaus-hero {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  width: 100%;
  min-height: clamp(570px, 47vw, 690px) !important;
  margin: 0 !important;
  padding: 76px clamp(26px, 9vw, 150px) !important;
  overflow: hidden;
  border-radius: 0 !important;
  background: var(--nh-navy-deep) !important;
  background-image: none !important;
  text-align: left;
}
.nh-hero-media {
  position: absolute;
  z-index: -2;
  inset: 0;
  background-image: url("../assets/new-haus-hero-v2.webp");
  background-size: cover;
  background-position: center 48%;
}
main > section#home.newhaus-hero::before {
  position: absolute;
  z-index: -1;
  inset: 0;
  content: "";
  background: linear-gradient(90deg,
    rgba(11, 27, 43, .98) 0%,
    rgba(11, 27, 43, .91) 31%,
    rgba(11, 27, 43, .69) 54%,
    rgba(11, 27, 43, .17) 100%);
}
main > section#home.newhaus-hero .hero-copy {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  width: min(100%, 690px) !important;
  max-width: 690px !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--nh-white);
  text-align: left !important;
}
main > section#home.newhaus-hero .hero-copy .eyebrow {
  color: var(--nh-gold-light) !important;
  font-size: 10px;
  letter-spacing: .23em;
  margin: 0 0 23px !important;
}
main > section#home.newhaus-hero .hero-copy h1 {
  max-width: 680px !important;
  margin: 0 0 22px !important;
  color: var(--nh-white) !important;
  font: 500 clamp(48px, 5.3vw, 76px)/1.08 var(--nh-serif) !important;
  letter-spacing: -.035em;
  text-align: left !important;
}
main > section#home.newhaus-hero .hero-copy h1 em {
  color: var(--nh-gold-light) !important;
  font-style: italic;
}
main > section#home.newhaus-hero .hero-text {
  max-width: 520px !important;
  margin: 0 0 30px !important;
  color: rgba(247, 245, 240, .86) !important;
  font-size: 15px;
  line-height: 1.8;
  text-align: left !important;
}
main > section#home.newhaus-hero .hero-actions {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: auto !important;
  margin: 0 !important;
  gap: 12px !important;
}
main > section#home.newhaus-hero .hero-actions .button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: auto !important;
  min-width: 190px;
  min-height: 49px;
  padding: 13px 20px;
  border: 1px solid var(--nh-gold) !important;
  border-radius: 2px;
  background: var(--nh-gold) !important;
  color: var(--nh-navy-deep) !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .025em;
  white-space: nowrap;
}
main > section#home.newhaus-hero .hero-actions .button:hover {
  background: var(--nh-gold-light) !important;
  border-color: var(--nh-gold-light) !important;
}
main > section#home.newhaus-hero .hero-actions .button.outline {
  border-color: rgba(247, 245, 240, .58) !important;
  background: rgba(11, 27, 43, .22) !important;
  color: var(--nh-white) !important;
}
main > section#home.newhaus-hero .hero-actions .button.outline:hover {
  border-color: var(--nh-gold-light) !important;
  color: var(--nh-gold-light) !important;
}
main > section#home.newhaus-hero .hero-trust { display: none !important; }
.newhaus-search-wrap { position: relative; z-index: 2; margin-top: 0 !important; }

/* Champagne accents and calm warm-white surfaces across public content. */
body { background: var(--nh-white); color: #273B4E; }
.section h2, .contact h2, .about h2 { color: var(--nh-navy); }
.eyebrow { color: #9A7946; }
.button, .enquiry-form button, .enquiry-form input[type=submit] {
  background: var(--nh-navy);
  border-color: var(--nh-navy);
}
.button:hover, .enquiry-form button:hover, .enquiry-form input[type=submit]:hover {
  background: #1B3855;
}
.property-card, .service-card, .market-card, .contact-form-wrap {
  border-color: rgba(16, 36, 58, .13);
}

/* Footer brand and background */
footer.newhaus-footer[data-footer-version="2026-10-27-newhaus-v4"] {
  background: var(--nh-navy-deep);
  color: rgba(247, 245, 240, .76);
}
footer.newhaus-footer .nh-footer-brand { color: var(--nh-white); gap: 13px !important; }
footer.newhaus-footer .nh-brand-name { color: var(--nh-white); }
footer.newhaus-footer .nh-brand-name strong { color: var(--nh-gold-light); }
footer.newhaus-footer .nh-brand-tagline { color: rgba(247, 245, 240, .64); }
footer.newhaus-footer .nh-brand-mark { background: #10243A; border-color: rgba(232, 209, 160, .62); }
footer.newhaus-footer .nh-footer-legal a,
footer.newhaus-footer .nh-footer-copyright,
footer.newhaus-footer .nh-footer-registration { color: rgba(247, 245, 240, .72) !important; }
footer.newhaus-footer .nh-footer-legal a:hover { color: var(--nh-gold-light) !important; }
footer.newhaus-footer .nh-footer-socials .nh-social { color: var(--nh-gold-light); border-color: rgba(232, 209, 160, .35); }

@media (max-width: 1080px) {
  .top { min-height: 78px; }
  .top nav.site-nav { gap: 12px; }
}
@media (max-width: 760px) {
  .top { min-height: 74px; padding: 10px 14px !important; gap: 8px !important; }
  .top .nh-brand { gap: 9px !important; max-width: calc(100% - 52px) !important; overflow: visible; }
  .nh-brand-mark { flex-basis: 43px; width: 43px; height: 43px; border-radius: 10px; font-size: 19px; }
  .nh-brand-name { font-size: clamp(15px, 4vw, 18px); letter-spacing: .035em; }
  .nh-brand-tagline { font-size: 7px; letter-spacing: .14em; }
  main > section#home.newhaus-hero {
    display: flex;
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    min-height: 0 !important;
    margin: 14px auto 0 !important;
    padding: 54px 23px 60px !important;
    border-radius: 12px;
    background: linear-gradient(135deg, #0B1B2B 0%, #10243A 64%, #19344D 100%) !important;
  }
  .nh-hero-media { display: none !important; background-image: none !important; }
  main > section#home.newhaus-hero::before {
    background: radial-gradient(ellipse at 82% 0%, rgba(67, 91, 112, .32), transparent 54%),
      linear-gradient(135deg, #0B1B2B 0%, #10243A 72%, #142D45 100%);
  }
  main > section#home.newhaus-hero .hero-copy {
    width: 100% !important;
    max-width: 100% !important;
    align-items: flex-start !important;
  }
  main > section#home.newhaus-hero .hero-copy .eyebrow,
  main > section#home.newhaus-hero .hero-copy h1,
  main > section#home.newhaus-hero .hero-text {
    width: 100% !important;
    max-width: 100% !important;
    text-align: left !important;
    overflow-wrap: anywhere;
  }
  main > section#home.newhaus-hero .hero-copy h1 {
    font-size: clamp(39px, 9.5vw, 54px) !important;
    line-height: 1.09 !important;
  }
  main > section#home.newhaus-hero .hero-text { font-size: 14px; line-height: 1.7; }
  main > section#home.newhaus-hero .hero-actions {
    width: 100% !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }
  main > section#home.newhaus-hero .hero-actions .button {
    box-sizing: border-box;
    width: 100% !important;
    min-width: 0;
    white-space: normal;
  }
  .newhaus-search-wrap {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
    margin: 18px auto 0 !important;
  }
  footer.newhaus-footer .nh-footer-bar { padding: 24px 18px !important; }
  footer.newhaus-footer .nh-brand-mark { flex-basis: 46px; width: 46px; height: 46px; }
}
@media (max-width: 380px) {
  .nh-brand-name { font-size: 14px; }
  .nh-brand-tagline { font-size: 6px; letter-spacing: .12em; }
  main > section#home.newhaus-hero { padding: 45px 18px 50px !important; }
}


/* ==========================================================
   THE NEW HAUS — FINAL DESKTOP FULL-BLEED HERO WIDTH FIX
   This is deliberately in the last-loaded brand stylesheet
   to override the legacy .trg-hero inset-width declarations.
   Mobile inset/gradient treatment below 761px is preserved.
   ========================================================== */
@media (min-width: 761px) {
  html body main > section#home.trg-hero.newhaus-hero {
    box-sizing: border-box !important;
    display: flex !important;
    width: 100vw !important;
    max-width: none !important;
    min-width: 0 !important;
    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    margin-left: calc(50% - 50vw) !important;
    transform: none !important;
    border-radius: 0 !important;
  }
}


/* ==========================================================
   THE NEW HAUS — APPROVED FLOATING PROPERTY SEARCH PANEL
   Lift the search card over the hero while preserving the
   following section's vertical position.
   ========================================================== */
main > .newhaus-search-wrap {
    position: relative !important;
    z-index: 8 !important;
    margin: -40px auto 40px !important;
}
main > .newhaus-search-wrap .newhaus-search-panel {
    position: relative;
    z-index: 1;
    border: 1px solid rgba(16, 36, 58, .08);
    border-radius: 12px;
    box-shadow: 0 18px 42px rgba(11, 27, 43, .16),
                0 4px 12px rgba(11, 27, 43, .07);
}
@media (max-width: 760px) {
    main > .newhaus-search-wrap {
        margin-top: -26px !important;
        margin-bottom: 26px !important;
    }
    main > .newhaus-search-wrap .newhaus-search-panel {
        border-radius: 10px;
        box-shadow: 0 12px 28px rgba(11, 27, 43, .14),
                    0 3px 9px rgba(11, 27, 43, .06);
    }
}

/* THE NEW HAUS — HERO COPY LEFT ALIGNMENT (v5) */
@media (min-width: 761px) {
  html body main > section#home.trg-hero.newhaus-hero {
    padding-left: clamp(30px, 5vw, 88px) !important;
    padding-right: clamp(30px, 5vw, 88px) !important;
  }
  html body main > section#home.trg-hero.newhaus-hero .hero-copy {
    position: relative !important;
    width: min(58vw, 760px) !important;
    max-width: 760px !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    align-items: flex-start !important;
    justify-content: center !important;
    text-align: left !important;
  }
  html body main > section#home.trg-hero.newhaus-hero .hero-copy .eyebrow,
  html body main > section#home.trg-hero.newhaus-hero .hero-copy h1,
  html body main > section#home.trg-hero.newhaus-hero .hero-copy .hero-text {
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}


/* ==========================================================
   THE NEW HAUS — V6 EDITORIAL HERO ALIGNMENT + GOLD RULE
   Desktop copy is anchored close to the left viewport edge.
   Header divider becomes a confident full-width gold band.
   The approved floating search overlap and mobile hero stay.
   ========================================================== */
.top {
  border-bottom: 0 !important;
}
.top::after {
  content: "";
  position: absolute;
  z-index: 2;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  width: 100%;
  height: 4px;
  background: #D6B77A;
  pointer-events: none;
}
@media (min-width: 761px) {
  html body main > section#home.trg-hero.newhaus-hero {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    padding-left: clamp(30px, 4.1vw, 64px) !important;
    padding-right: clamp(30px, 5vw, 76px) !important;
  }
  html body main > section#home.trg-hero.newhaus-hero > .hero-copy {
    flex: 0 1 760px !important;
    align-self: center !important;
    width: min(58vw, 760px) !important;
    max-width: 760px !important;
    margin: 0 !important;
    transform: none !important;
    text-align: left !important;
  }
  html body main > section#home.trg-hero.newhaus-hero > .hero-copy > * {
    text-align: left !important;
  }
}
@media (max-width: 760px) {
  .top::after { height: 6px; }
}


/* ==========================================================
   THE NEW HAUS — V7 MOBILE-FIRST HERO + WHATSAPP HEADER
   Mobile only: desktop layout and photographic hero untouched.
   No mobile hero image request; gradient-only rendering.
   ========================================================== */
.top .nh-mobile-whatsapp {
  display: none;
}
@media (max-width: 760px) {
  .top {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    min-height: 74px !important;
    padding: 10px 14px !important;
    gap: 10px !important;
    background: var(--nh-navy) !important;
  }
  .top .nh-brand {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin-right: auto !important;
  }
  .top .nh-mobile-whatsapp {
    display: inline-flex !important;
    flex: 0 0 34px !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--nh-gold-light) !important;
    text-decoration: none !important;
    -webkit-tap-highlight-color: transparent;
  }
  .top .nh-mobile-whatsapp svg {
    display: block;
    width: 29px;
    height: 29px;
  }
  .top .menu-toggle {
    display: flex !important;
    flex: 0 0 42px !important;
    align-items: center !important;
    justify-content: center !important;
    width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    border: 1px solid rgba(232, 209, 160, .55) !important;
    border-radius: 7px !important;
    background: transparent !important;
    color: var(--nh-white) !important;
  }
  .top .menu-toggle span {
    background: var(--nh-white) !important;
  }

  /* Slim champagne divider; hero begins immediately beneath it. */
  .top::after { height: 4px !important; }

  /* Edge-to-edge navy gradient hero; no image and no white inset. */
  html body main > section#home.trg-hero.newhaus-hero {
    box-sizing: border-box !important;
    display: flex !important;
    width: 100vw !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 0 0 calc(50% - 50vw) !important;
    padding: 46px 22px 54px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: linear-gradient(135deg, #0B1B2B 0%, #10243A 62%, #15334D 100%) !important;
    overflow: hidden !important;
  }
  html body main > section#home.trg-hero.newhaus-hero .nh-hero-media {
    display: none !important;
    background-image: none !important;
  }
  html body main > section#home.trg-hero.newhaus-hero::before {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: -1 !important;
    background:
      radial-gradient(ellipse at 92% 8%, rgba(67, 91, 112, .28), transparent 48%),
      linear-gradient(135deg, #0B1B2B 0%, #10243A 72%, #142D45 100%) !important;
    pointer-events: none !important;
  }
  html body main > section#home.trg-hero.newhaus-hero > .hero-copy {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
  }
  html body main > section#home.trg-hero.newhaus-hero .hero-copy .eyebrow {
    margin: 0 0 18px !important;
    color: var(--nh-gold-light) !important;
    font-size: 9px !important;
    letter-spacing: .18em !important;
    line-height: 1.5 !important;
  }
  html body main > section#home.trg-hero.newhaus-hero .hero-copy h1 {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 18px !important;
    color: var(--nh-white) !important;
    font-size: clamp(37px, 9.4vw, 48px) !important;
    line-height: 1.08 !important;
    letter-spacing: -.035em !important;
    text-align: left !important;
    overflow-wrap: normal !important;
  }
  html body main > section#home.trg-hero.newhaus-hero .hero-copy h1 em {
    color: var(--nh-gold-light) !important;
  }
  html body main > section#home.trg-hero.newhaus-hero .hero-text {
    width: 100% !important;
    max-width: 510px !important;
    margin: 0 0 23px !important;
    color: rgba(247, 245, 240, .88) !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
    text-align: left !important;
  }
  html body main > section#home.trg-hero.newhaus-hero .hero-actions {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 10px !important;
    margin: 0 !important;
  }
  html body main > section#home.trg-hero.newhaus-hero .hero-actions .button {
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 48px !important;
    margin: 0 !important;
    border-radius: 8px !important;
    font-size: 12px !important;
    white-space: normal !important;
  }
  html body main > section#home.trg-hero.newhaus-hero .hero-actions .button.outline {
    border: 1px solid var(--nh-gold-light) !important;
    background: rgba(11, 27, 43, .35) !important;
    color: var(--nh-white) !important;
  }

  /* Full-width wrapper, floating white search card with a navy boundary. */
  html body main > .newhaus-search-wrap {
    box-sizing: border-box !important;
    position: relative !important;
    z-index: 8 !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: -26px 0 26px !important;
    padding: 0 12px !important;
  }
  html body main > .newhaus-search-wrap .newhaus-search-panel {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    padding: 17px 15px 18px !important;
    border: 2px solid var(--nh-navy) !important;
    border-radius: 17px !important;
    background: #fff !important;
    box-shadow: 0 15px 32px rgba(11, 27, 43, .17),
                0 3px 10px rgba(11, 27, 43, .07) !important;
  }
}
@media (max-width: 380px) {
  .top { gap: 7px !important; padding-left: 11px !important; padding-right: 11px !important; }
  .nh-brand-mark { flex-basis: 40px; width: 40px; height: 40px; }
  .nh-brand-name { font-size: 14px !important; }
  .nh-brand-tagline { font-size: 6px !important; }
  html body main > section#home.trg-hero.newhaus-hero { padding: 40px 18px 49px !important; }
}


/* V8 mobile header refinements: monogram divider + optically centered WhatsApp handset. */
@media (max-width: 760px) {
  .top .nh-brand {
    gap: 0 !important;
  }
  .top .nh-brand-copy {
    position: relative !important;
    box-sizing: border-box !important;
    min-height: 48px !important;
    justify-content: center !important;
    margin-left: 11px !important;
    padding-left: 13px !important;
  }
  .top .nh-brand-copy::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    width: 1px !important;
    height: 46px !important;
    transform: translateY(-50%) !important;
    background: linear-gradient(
      to bottom,
      rgba(214, 183, 122, .35),
      #D6B77A 18%,
      #D6B77A 82%,
      rgba(214, 183, 122, .35)
    ) !important;
  }
  .top .nh-mobile-whatsapp {
    flex-basis: 36px !important;
    width: 36px !important;
    height: 42px !important;
    transform: none !important;
    align-self: center !important;
  }
  .top .nh-mobile-whatsapp svg {
    display: block !important;
    width: 29px !important;
    height: 29px !important;
    overflow: visible !important;
    transform: none !important;
  }
  .top .nh-mobile-whatsapp svg path {
    vector-effect: non-scaling-stroke;
  }
}
@media (max-width: 380px) {
  .top .nh-brand-copy {
    margin-left: 8px !important;
    padding-left: 10px !important;
  }
  .top .nh-brand-copy::before { height: 43px !important; }
  .top .nh-brand-name { font-size: 13px !important; }
  .top .nh-brand-tagline { font-size: 5.7px !important; letter-spacing: .11em !important; }
}


/* ==========================================================
   V9 HEADER REPAIR — desktop + mobile brand separator
   and a clean, centred WhatsApp handset.
   ========================================================== */

/* Divider belongs to the shared wordmark, not a mobile-only rule. */
.top .nh-brand {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0 !important;
}
.top .nh-brand-copy {
  position: relative !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
  margin-left: 15px !important;
  padding-left: 16px !important;
}
.top .nh-brand-copy::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: 50% !important;
  display: block !important;
  width: 1px !important;
  height: 52px !important;
  transform: translateY(-50%) !important;
  background: linear-gradient(
    to bottom,
    rgba(214, 183, 122, .18),
    #D6B77A 16%,
    #D6B77A 84%,
    rgba(214, 183, 122, .18)
  ) !important;
  opacity: 1 !important;
  pointer-events: none !important;
}

/* Remove the old mobile-only offsets that were creating inconsistent spacing. */
@media (max-width: 760px) {
  .top .nh-brand {
    gap: 0 !important;
  }
  .top .nh-brand-copy {
    margin-left: 10px !important;
    padding-left: 12px !important;
    min-height: 48px !important;
  }
  .top .nh-brand-copy::before {
    height: 44px !important;
  }

  /* WhatsApp mark: stable square viewBox, centred as one visual unit. */
  .top a.nh-mobile-whatsapp {
    display: inline-flex !important;
    flex: 0 0 38px !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
    vertical-align: middle !important;
    transform: none !important;
    color: #E8D1A0 !important;
    overflow: visible !important;
  }
  .top a.nh-mobile-whatsapp .nh-whatsapp-mark {
    display: block !important;
    flex: 0 0 30px !important;
    width: 30px !important;
    height: 30px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    transform: none !important;
  }
  .top a.nh-mobile-whatsapp .nh-whatsapp-mark path {
    vector-effect: non-scaling-stroke;
  }
}
@media (max-width: 380px) {
  .top .nh-brand-copy {
    margin-left: 8px !important;
    padding-left: 10px !important;
  }
  .top .nh-brand-copy::before {
    height: 42px !important;
  }
}

/* V10 — Champagne divider in footer brand */
footer.newhaus-footer .nh-footer-brand {
    gap: 0 !important;
}

footer.newhaus-footer .nh-footer-brand .nh-brand-copy {
    position: relative !important;
    box-sizing: border-box !important;
    margin-left: 15px !important;
    padding-left: 16px !important;
    min-height: 52px !important;
    justify-content: center !important;
}

footer.newhaus-footer .nh-footer-brand .nh-brand-copy::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    width: 1px !important;
    height: 52px !important;
    transform: translateY(-50%) !important;
    background: #D6B77A !important;
    opacity: .9 !important;
    pointer-events: none !important;
}

@media (max-width: 760px) {
    footer.newhaus-footer .nh-footer-brand .nh-brand-copy {
        margin-left: 10px !important;
        padding-left: 12px !important;
        min-height: 48px !important;
    }

    footer.newhaus-footer .nh-footer-brand .nh-brand-copy::before {
        height: 44px !important;
    }
}

/* V10 FINAL — Footer NH gold divider */
.nh-footer-brand > .nh-brand-copy {
    position: relative !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    margin-left: 16px !important;
    padding-left: 17px !important;
    overflow: visible !important;
}

.nh-footer-brand > .nh-brand-copy::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    width: 1px !important;
    height: 52px !important;
    transform: translateY(-50%) !important;
    background: #D6B77A !important;
    opacity: 1 !important;
    visibility: visible !important;
    z-index: 5 !important;
}

@media (max-width: 760px) {
    .nh-footer-brand > .nh-brand-copy {
        margin-left: 10px !important;
        padding-left: 12px !important;
    }

    .nh-footer-brand > .nh-brand-copy::before {
        height: 44px !important;
    }
}


