/* Daylight — Pure Daylight shell, selected 2026-10-14.
   Semantic colors resolve from the published site design contract on every route;
   this component layer owns composition, not a second brand palette.
   Scoped to the shared header/footer and the front-page hero; listing components
   and their parent-theme markup keep their existing styling. */

/* ONE source for the site chrome (Ryan 2026-10-29). This file loads on every Daylight page type (each
   surface bundle and the unbundled stack) and is the only theme stylesheet that may style the header,
   nav, wordmark, menu drawer or page-wide rendering (scrollbar, font smoothing). The nav once moved and
   looked heavier on inner pages because home-only CSS set those. Guarded by
   tests/DaylightHeaderSingleSourceTest.cjs and the header check in tools/qa/visual/layout-smoke.mjs. */
body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
/* The header sets its own base type so no page's body rules (line-height, font stack) reach it. */
.daylight-header { font-family: var(--vr-font-body, Montserrat, sans-serif); font-size: 1rem; font-weight: 400; line-height: 1.5; letter-spacing: normal; }

/* Home photo hero: desktop nav links sat directly on the photo (CONTACT measured 3.43:1), so they get a
   warm-white plate while the header is not the fixed bar. Nav links are display:none below 1024px. */
@media (min-width: 1024px) {
  .home .daylight-hero .daylight-header:not(.is-fixed) .daylight-nav__link { padding: .4rem .8rem; background: rgba(250,248,244,.9); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); border-radius: 999px; }
}

/* Headers floating over a hero photo (Luxury, About): a solid light bar, not a dark gradient. The About
   bar stays opaque: its photo's dark tree left BUY/SELL at 1.0-1.5:1 through a see-through header. */
.daylight-about-hero .daylight-header:not(.is-fixed) { position: absolute; inset: 0 0 auto; }
.daylight-lux-page .daylight-header:not(.is-fixed) { background: var(--daylight-plate-bar); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.daylight-about-hero .daylight-header:not(.is-fixed) { background: var(--vr-color-surface); backdrop-filter: none; -webkit-backdrop-filter: none; }
:is(.daylight-lux-page, .daylight-about-hero) .daylight-header:not(.is-fixed) :is(.daylight-wordmark, .daylight-wordmark__brand, .daylight-wordmark__sub, .daylight-nav__link, .daylight-menu-toggle) { color: var(--daylight-ink); }

/* Wordmark fit: the brand stays on one line down to 320px; on phones brand and sub-line stack, one line each. */
.daylight-wordmark__brand {
  font-size: clamp(1.05rem, 6vw, 1.5rem);
  letter-spacing: clamp(0.08em, 0.9vw + 0.02em, 0.3em);
}
@media (max-width: 767.98px) {
  .daylight-wordmark { white-space: nowrap; min-width: 0; }
.daylight-wordmark__brand, .daylight-wordmark__sub { display: block; }
.daylight-wordmark__sub { margin-top: 0.35rem; }
}
@media (min-width: 768px) {
  .daylight-wordmark__brand { font-size: 1.875rem; letter-spacing: 0.3em; }
}

/* Interior pages wrap the header in .daylight-interior-navigation (partials/interior-header.twig); inside a
   legacy page-builder hero it is pinned to the hero's top edge instead of the hero's centered flow. */
.daylight-interior-navigation .daylight-header {
  position: relative !important;
  inset: auto;
  background: #fff;
  transform: none !important;
  opacity: 1 !important;
  pointer-events: auto !important;
  box-shadow: none;
}
.daylight-interior-navigation .daylight-wordmark,
.daylight-interior-navigation .daylight-nav__link,
.daylight-interior-navigation .daylight-menu-toggle { color: #202020; }
.daylight-interior-navigation .daylight-menu-toggle,
.daylight-interior-navigation .daylight-menu__close { min-width: 44px; min-height: 44px; }
.daylight-interior-navigation .daylight-menu { height: 100dvh; max-width: 100vw; overflow-y: auto; }
.daylight-interior-navigation :is(a, button):focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.hero-section:not(.daylight-community-hero) > .daylight-interior-navigation {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 30;
}

/* Careers: the header bar sits on the surface colour. */
.daylight-careers-page .daylight-interior-navigation .daylight-header:not(.is-fixed) {
  position: relative;
  background: var(--vr-color-surface, #f1f3f2);
  box-shadow: 0 1px 0 rgba(35, 31, 28, .08);
}
.daylight-careers-page .daylight-interior-navigation .daylight-header:not(.is-fixed) :is(.daylight-wordmark, .daylight-wordmark__brand, .daylight-wordmark__sub, .daylight-nav__link, .daylight-menu-toggle) {
  color: var(--vr-color-text, #231f1c);
}

.daylight-header--daylight {
  position: relative;
  inset: auto;
  z-index: 40;
  padding: 0;
  border-bottom: 1px solid #d9dedb;
  background: #fff;
  color: var(--vr-color-nav-text, #232b2b);
  box-shadow: none;
}
.daylight-header--daylight.is-fixed { width: 100%; }
.daylight-header--daylight .daylight-header__inner {
  display: grid;
  width: min(100%, 1500px);
  min-height: 72px;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  gap: clamp(1rem, 2.2vw, 2.5rem);
  margin-inline: auto;
  padding: .75rem clamp(1.25rem, 4vw, 3.75rem);
}
.daylight-header--daylight .daylight-wordmark {
  grid-column: 2;
  grid-row: 1;
  display: grid;
  justify-self: center;
  position: relative;
  inset: auto;
  transform: none;
  gap: .28rem;
  min-width: 0;
  color: var(--vr-color-nav-text, #232b2b);
  text-decoration: none;
  white-space: nowrap;
}
.daylight-header--daylight .daylight-wordmark__brand {
  color: inherit;
  font-family: var(--vr-font-body, Montserrat, sans-serif);
  font-size: .84rem;
  font-weight: 500;
  letter-spacing: .25em;
  line-height: 1.2;
  text-transform: uppercase;
}
.daylight-header--daylight .daylight-wordmark__sub {
  color: inherit;
  font-family: var(--vr-font-body, Montserrat, sans-serif);
  font-size: .55rem;
  font-weight: 500;
  letter-spacing: .52em;
  line-height: 1.2;
  text-transform: uppercase;
}
.daylight-header--daylight .daylight-nav {
  display: flex;
  align-items: center;
  gap: clamp(.8rem, 1.55vw, 1.5rem);
  min-width: 0;
}
.daylight-header--daylight .daylight-nav[aria-label="Primary"] {
  grid-column: 1;
  grid-row: 1;
  justify-content: flex-start;
}
.daylight-header--daylight .daylight-nav[aria-label="Account"] {
  grid-column: 3;
  grid-row: 1;
  justify-content: flex-end;
  gap: clamp(.8rem, 1.35vw, 1.25rem);
}
.daylight-header--daylight .daylight-nav__link {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--vr-color-nav-text, #232b2b);
  font-family: var(--vr-font-body, Montserrat, sans-serif);
  font-size: .875rem;
  font-weight: 300;
  letter-spacing: .1em;
  line-height: 1.3;
  text-decoration: none;
  text-transform: none;
  white-space: nowrap;
  transition: color 160ms ease;
}
.daylight-header--daylight .daylight-nav__link:hover,
.daylight-header--daylight .daylight-nav__link:focus-visible { color: #245b57; }
.daylight-header--daylight .daylight-menu-toggle {
  grid-column: 3;
  grid-row: 1;
  justify-self: end;
  width: 44px;
  height: 44px;
  color: var(--vr-color-nav-text, #232b2b);
}
.daylight-header--daylight :is(a, button):focus-visible,
.daylight-menu--daylight :is(a, button):focus-visible {
  outline: 2px solid #245b57;
  outline-offset: 4px;
}

/* Keep the existing drawer controller and focus behavior, with the same light shell. */
.daylight-menu--daylight {
  background: var(--vr-color-surface);
  color: var(--vr-color-text);
}
/* Every registered destination must remain reachable in the fixed drawer. */
.daylight-menu--daylight {
  max-width: 100vw;
  height: 100vh;
  height: 100dvh;
  overflow-y: auto;
  overscroll-behavior: contain;
}
.daylight-menu--daylight[hidden] { display: none; }
.daylight-menu--daylight .daylight-menu__close { color: var(--vr-color-text); }
.daylight-menu--daylight .daylight-menu__link {
  display: flex;
  align-items: center;
  min-height: 44px;
  overflow-wrap: anywhere;
  border-radius: 0;
  color: var(--vr-color-text);
  text-decoration: none;
}
.daylight-menu--daylight .list-unstyled { padding-inline-start: 1rem; }
.daylight-menu--daylight .daylight-menu__link:hover,
.daylight-menu--daylight .daylight-menu__link:focus-visible { color: var(--vr-color-accent); }
.daylight-menu--daylight .daylight-menu__divider { border-top: 1px solid var(--vr-color-rule); }

.daylight-daylight-footer .daylight-footer {
  padding: clamp(3.5rem, 7vw, 6rem) clamp(1.25rem, 4vw, 3.75rem) 1.5rem;
  border-top: 1px solid var(--vr-color-rule);
  background: var(--vr-color-surface, #f7f5ef);
  color: var(--vr-color-text, #232b2b);
}
.daylight-daylight-footer .daylight-footer__inner { width: min(100%, 1500px); max-width: 1500px; }
.daylight-daylight-footer .daylight-footer__cols {
  display: grid;
  grid-template-columns: minmax(12rem, 1.3fr) repeat(var(--daylight-footer-columns, 4), minmax(0, 1fr));
  gap: clamp(1.5rem, 3vw, 3rem);
  margin-bottom: clamp(2.5rem, 5vw, 4.5rem);
}
.daylight-daylight-footer .daylight-footer__cols > div { min-width: 0; }

.daylight-daylight-footer .daylight-footer__brand {
  font-style: normal;
  color: var(--vr-color-text, #232b2b);
  font-family: var(--vr-font-body, Montserrat, sans-serif);
  font-size: .84rem;
  font-weight: 500;
  letter-spacing: .25em;
  line-height: 1.2;
  text-transform: uppercase;
}
.daylight-daylight-footer .daylight-footer__brand-sub {
  margin-top: .35rem;
  color: var(--vr-color-text, #232b2b);
  font-family: var(--vr-font-body, Montserrat, sans-serif);
  font-size: .55rem;
  font-weight: 500;
  letter-spacing: .52em;
  line-height: 1.2;
  text-transform: uppercase;
}
.daylight-daylight-footer .daylight-footer__col-title {
  margin: 0 0 .85rem;
  color: var(--vr-color-text, #232b2b);
  font-family: var(--vr-font-body, Montserrat, sans-serif);
  font-size: .875rem;
  font-weight: 500;
  letter-spacing: .1em;
  line-height: 1.4;
  text-transform: uppercase;
}
.daylight-daylight-footer .daylight-footer__list {
  display: grid;
  gap: .5rem;
  margin: 0;
  padding: 0;
  list-style: none;
}
.daylight-daylight-footer .daylight-footer__list a,
.daylight-daylight-footer .daylight-footer__bottom {
  color: var(--vr-color-muted, #52525b);
  opacity: 1;
  font-family: var(--vr-font-body, Montserrat, sans-serif);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.65;
}
.daylight-daylight-footer .daylight-footer__list a {
  font-weight: 500;
  text-decoration: none;
  text-underline-offset: 3px;
}
.daylight-daylight-footer .daylight-footer__list a:hover { color: var(--vr-color-text, #232b2b); text-decoration: underline; }
.daylight-daylight-footer .daylight-footer__social { display: flex; gap: .9rem; margin-top: 1.25rem; }
/* Shared Daylight footer social states use the same deep-green action palette. */
.daylight-daylight-footer .daylight-footer__social a {
  display: inline-flex; width: 44px; min-height: 44px; align-items: center; justify-content: center;
  border: 1px solid var(--vr-color-rule); background: var(--vr-color-surface, #f7f5ef);
  color: var(--vr-color-accent, #245b57); border-radius: var(--vr-radius-control, 0);
}
.daylight-daylight-footer .daylight-footer__social a:hover,
.daylight-daylight-footer .daylight-footer__social a:active { background: var(--vr-color-accent, #245b57); color: var(--vr-color-on-accent, #fff); }
.daylight-daylight-footer .daylight-footer__social a:focus-visible { background: var(--vr-color-accent, #245b57); color: var(--vr-color-on-accent, #fff); outline: 2px solid var(--vr-color-accent, #245b57); outline-offset: 4px; }
.daylight-daylight-footer .daylight-footer__social svg { width: 18px; height: 18px; fill: currentColor; }
.daylight-daylight-footer .daylight-footer__bottom {
  padding-top: 1rem;
  text-align: left;
  font-size: var(--vr-type-small, .875rem);
  border-top: 1px solid var(--vr-color-muted, #52525b);
}
/* Keep the short copyright/link row aligned with the MLS/EOH disclosures.
   Both legal roles remain below one divider, on the same gutter and surface. */
.wp-child-theme-daylight footer.vri-disclaimer {
  box-sizing: border-box;
  width: 100%;
  margin: 0 !important;
  max-width: none !important;
  padding: 0 clamp(1.25rem, 4vw, 3.75rem) 1.5rem !important;
  background: var(--vr-color-surface, #f7f5ef);
  color: var(--vr-color-muted, #52525b);
  font-family: var(--vr-font-body, Montserrat, sans-serif);
  font-size: var(--vr-type-small, .875rem) !important;
  line-height: var(--vr-line-body, 1.65) !important;
  opacity: 1 !important;
  text-align: left;
}
.wp-child-theme-daylight footer.vri-disclaimer p {
  max-width: 1500px;
  margin: .75rem auto 0;
}
.wp-child-theme-daylight footer.vri-disclaimer p:first-child { margin-top: 0; }
.wp-child-theme-daylight footer.vri-disclaimer a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.wp-child-theme-daylight footer.vri-disclaimer a:focus-visible { outline: 2px solid var(--vr-color-accent, #245b57); outline-offset: 3px; }

.daylight-daylight-footer .daylight-footer__bottom a {
  color: var(--vr-color-text, #232b2b);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.daylight-daylight-footer a:focus-visible,
.daylight-daylight-footer button:focus-visible {
  outline: 2px solid var(--vr-color-accent, #245b57);
  outline-offset: 3px;
}

:is(.home, .daylight-daylight-page) .daylight-hero--daylight {
  position: relative;
  display: block;
  height: auto;
  min-height: 0;
  overflow: visible;
  scroll-snap-align: none;
  background: var(--vr-color-surface);
  color: var(--vr-color-text);
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-header--daylight:not(.is-fixed) { position: relative; }
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__scrim { display: none; }
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-header--daylight:not(.is-fixed) .daylight-nav__link {
  padding: 0;
  border-radius: 0;
  background: transparent;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__layout {
  display: grid;
  width: 100%;
  grid-template-columns: minmax(20rem, .82fr) minmax(0, 1.38fr);
  grid-template-rows: auto auto;
  min-height: calc(100svh - 72px);
  align-items: center;
  column-gap: 0;
  row-gap: clamp(1.5rem, 3vw, 2.75rem);
  margin-inline: auto;
  padding: 0;
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__copy {
  grid-column: 1;
  grid-row: 1;
  align-self: end;
  max-width: 37rem;
  margin-top: 0;
  padding: 0;
  opacity: 1;
  transform: none;
  animation: none;
  color: var(--vr-color-text);
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__title {
  width: auto;
  max-width: 13ch;
  margin: 0;
  padding: 0;
  background: transparent;
  color: var(--vr-color-text);
  font-family: var(--vr-font-display, "Cormorant Garamond", Georgia, serif);
  font-size: clamp(2.6rem, 4.6vw, 4.35rem);
  font-weight: 400;
  letter-spacing: -.025em;
  line-height: .99;
  text-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__title-nowrap { white-space: nowrap; }
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__photo {
  position: relative;
  inset: auto;
  grid-column: 2;
  grid-row: 1 / span 2;
  width: 100%;
  min-width: 0;
  aspect-ratio: 1.55;
  max-height: 72svh;
  overflow: hidden;
  background: var(--vr-color-surface-subtle);
  transform: none;
  animation: none;
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__photo-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  transform: none;
  animation: none;
}
/* Keep real photographic detail at rest; no blur or perpetual zoom. */
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__image {
  display: block;
  width: 100%;
  max-width: none;
  height: 100%;
  object-fit: cover;
}
@media (hover: hover) and (pointer: fine) and (prefers-reduced-motion: no-preference) {
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__photo-bg {
    inset: -12px;
    width: calc(100% + 24px);
    height: calc(100% + 24px);
  }
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__search {
  position: relative;
  inset: auto;
  top: auto;
  left: auto;
  transform: none;
  grid-column: 1;
  grid-row: 2;
  align-self: start;
  width: 100%;
  max-width: 34rem;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: var(--vr-color-text);
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__search:not(:has([data-vr-idx-display="search"])) :is(input, select) {
  min-height: 48px;
  border: 1px solid var(--vr-color-control-border);
  border-radius: 0;
  background: var(--vr-color-surface);
  color: var(--vr-color-text);
  box-shadow: none;
  font-family: var(--vr-font-body, Montserrat, sans-serif);
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__search:not(:has([data-vr-idx-display="search"])) :is(input, select)::placeholder { color: var(--vr-color-muted); opacity: 1; }
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__search:not(:has([data-vr-idx-display="search"])) :is(input, select):focus-visible {
  outline: 2px solid var(--vr-color-accent);
  outline-offset: 2px;
  border-color: var(--vr-color-accent);
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__search:not(:has([data-vr-idx-display="search"])) :is(button[type="submit"], input[type="submit"], .daylight-hero__search-btn) {
  min-height: 48px;
  border: 1px solid var(--vr-color-accent);
  border-radius: 0;
  background: var(--vr-color-accent);
  color: var(--vr-color-on-accent);
  box-shadow: none;
  font-family: var(--vr-font-body, Montserrat, sans-serif);
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__search:not(:has([data-vr-idx-display="search"])) :is(button[type="submit"], input[type="submit"], .daylight-hero__search-btn):hover {
  border-color: var(--vr-color-inverse);
  background: var(--vr-color-inverse);
  color: var(--vr-color-on-inverse);
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__lead {
  max-width: 39rem;
  margin: 1rem 0 0;
  color: var(--vr-color-muted);
  font-family: var(--vr-font-body, Montserrat, sans-serif);
  font-size: .82rem;
  font-weight: 400;
  line-height: 1.65;
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__search .daylight-hero__search-suggestions {
  position: static;
  inset: auto;
  transform: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .45rem 1rem;
  margin: 1rem 0 0;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  opacity: 1;
  visibility: visible;
  transition: none;
  color: var(--vr-color-muted);
  font-family: var(--vr-font-body, Montserrat, sans-serif);
  font-size: .69rem;
  line-height: 1.5;
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__search-suggestions-label {
  color: var(--vr-color-muted);
  font-size: .61rem;
  font-weight: 500;
  letter-spacing: .1em;
  text-transform: uppercase;
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__search-suggestions a {
  color: var(--vr-color-accent);
  text-decoration: underline;
  text-decoration-color: var(--vr-color-rule);
  text-underline-offset: 3px;
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__search-suggestions a:hover { text-decoration-color: var(--vr-color-accent); }

@media (max-width: 1100px) {
  .daylight-header--daylight .daylight-header__inner {
    min-height: 68px;
    grid-template-columns: minmax(0, 1fr) auto;
  }
  .daylight-header--daylight .daylight-nav { display: none; }
  .daylight-header--daylight .daylight-menu-toggle { grid-column: 2; }
  .daylight-header--daylight .daylight-menu-toggle { display: inline-flex; }
  .daylight-menu--daylight:not([hidden]) { display: block; }
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__layout {
    grid-template-columns: minmax(18rem, .9fr) minmax(0, 1.1fr);
    column-gap: clamp(1.5rem, 3vw, 2.75rem);
  }
}

@media (min-width: 1101px) {
  .daylight-header--daylight .daylight-menu-toggle { display: none; }
}

/* The homepage stage wrapper sets a full-viewport height for the old hero.
   This daylight hero is content-led, including when wrapped by Scrollcraft. */
.home .daylight-sc-hero-stage .daylight-hero--daylight {
  height: auto;
  min-height: 0;
  overflow: visible;
  scroll-snap-align: none;
}

@media (max-width: 380px) {
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__title { max-width: 100%; }
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__title-nowrap { white-space: normal; }
}

@media (min-width: 768px) and (max-width: 1000px) {
  .daylight-daylight-footer .daylight-footer__cols {
    grid-template-columns: minmax(0, 1fr) repeat(2, minmax(0, 1fr));
  }
  .daylight-daylight-footer .daylight-footer__cols > div:first-child { grid-column: 1 / -1; }
}

@media (max-width: 767px) {
  .daylight-daylight-footer .daylight-footer { padding: 3rem 1.25rem 1.25rem; }
  .daylight-daylight-footer .daylight-footer__cols {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 1.5rem 1rem;
  }
  .daylight-daylight-footer .daylight-footer__cols > div:first-child { grid-column: 1 / -1; }
  .daylight-daylight-footer .daylight-footer__bottom { font-size: .875rem; }
  /* Give every footer destination a comfortable touch target and let legal links
     wrap as separate controls instead of overlapping inside a long text line. */
  .daylight-daylight-footer .daylight-footer__list a {
    display: flex;
    align-items: center;
    min-height: 44px;
  }
  .daylight-daylight-footer .daylight-footer__bottom {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0 .5rem;
  }
  .daylight-daylight-footer .daylight-footer__bottom a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
  }
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__layout {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    gap: 0;
    padding: 2rem 0 2.5rem;
  }
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__copy {
    grid-column: 1;
    grid-row: 1;
    padding: 0 1.25rem 1.5rem;
  }
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__title {
    max-width: 13ch;
    font-size: clamp(2.65rem, 9.5vw, 4rem);
    line-height: .98;
  }
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__photo {
    grid-column: 1;
    grid-row: 2;
    width: 100%;
    max-height: none;
    aspect-ratio: 1.25;
  }
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__search {
    grid-column: 1;
    grid-row: 3;
    max-width: none;
    padding: 1.5rem 1.25rem 0;
  }
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__lead { margin-top: 1rem; }
}

@media (max-width: 380px) {
  .daylight-daylight-footer .daylight-footer__brand { font-size: .76rem; letter-spacing: .2em; }
  .daylight-daylight-footer .daylight-footer__brand-sub { font-size: .5rem; letter-spacing: .45em; }
}

@media (max-width: 380px) {
  .daylight-header--daylight .daylight-header__inner { padding-inline: 1rem; }
  .daylight-header--daylight .daylight-wordmark__brand { font-size: .76rem; letter-spacing: .2em; }
  .daylight-header--daylight .daylight-wordmark__sub { font-size: .5rem; letter-spacing: .45em; }
}

@media (prefers-reduced-motion: reduce) {
  .daylight-header--daylight *,
  .daylight-menu--daylight *,
  .daylight-daylight-footer *,
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight * { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* The optional authored contact line closes the copy column on the same gutter as the search. */
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__contact { grid-column: 1; padding: 1rem 1.25rem 0; }
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__contact a { white-space: nowrap; }

/* The approved split hero meets the image edge-to-edge beneath navigation.
   Keep actual authored copy and the native enrolled search independently sized. */
@media (min-width: 768px) {
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__copy { padding: clamp(2rem, 4vw, 4rem) clamp(1.25rem, 3.6vw, 3.5rem) 0; }
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__search { padding: 0 clamp(1.25rem, 3.6vw, 3.5rem) clamp(2rem, 4vw, 4rem); max-width: none; }
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__photo { align-self: stretch; height: 100%; min-height: 32rem; max-height: none; aspect-ratio: auto; grid-row: 1 / span 3; }
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__search:has(~ .daylight-hero__contact) { padding-bottom: 1.25rem; }
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__contact { grid-row: 3; padding: 0 clamp(1.25rem, 3.6vw, 3.5rem) clamp(2rem, 4vw, 4rem); }
}
@media (max-width: 1100px) {
  .daylight-header--daylight .daylight-wordmark { grid-column: 1; justify-self: start; }
}

/* Homepage composition owns its form chrome; the registered renderer retains
   its real inputs, autocomplete, transport and Explore destinations. */
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .vr-idx-embed[data-vr-idx-display="search"] .vri-search {
  padding: 0; border: 0; border-radius: 0; background: transparent;
  box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; overflow: visible;
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .vr-idx-embed[data-vr-idx-display="search"] .vri-search .vri-sform {
  display: flex; align-items: stretch; gap: 0; width: 100%; border-radius: 0;
  border: 1px solid var(--vr-color-control-border, #52525b); background: var(--vr-color-surface); box-shadow: none;
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .vr-idx-embed[data-vr-idx-display="search"] .vri-search .vri-sform:focus-within {
  outline: 2px solid var(--vr-color-accent, #245b57); outline-offset: 2px;
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .vr-idx-embed[data-vr-idx-display="search"] .vri-search:focus-within > .vri-sug {
  position: static; inset: auto; transform: none; width: 100%; margin: 4px 0 16px;
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .vr-idx-embed[data-vr-idx-display="search"] .vri-search .vri-sform > input[type="search"] {
  -webkit-appearance: none; appearance: none;
  flex: 1 1 0; min-width: 0; min-height: 48px; padding: 0 1rem; border: 0; border-radius: 0;
  background: transparent; color: var(--vr-color-text, #18181b); font: inherit;
}
/* Buy/Rent select: one drawn control in every engine (Chrome otherwise paints its native
   arrow and an inner box). Gray segment flush inside the form border, custom chevron,
   same 48px height as the input; the only ring is :focus-visible. */
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .vr-idx-embed[data-vr-idx-display="search"] .vri-search .vri-sform > select.vri-transaction {
  -webkit-appearance: none; -moz-appearance: none; appearance: none;
  flex: 0 0 auto; align-self: stretch; min-height: 48px; height: auto; margin: 0;
  padding: 0 2.25rem 0 1rem; border: 0; border-right: 1px solid var(--vr-color-control-border, #52525b); border-radius: 0;
  background: #f1f3f2 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%2318181b' stroke-width='1.5'/%3E%3C/svg%3E") no-repeat right .9rem center / 12px 8px;
  color: var(--vr-color-text, #18181b); font: inherit; font-size: 1rem; line-height: 1.2;
  box-shadow: none; outline: none; cursor: pointer;
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .vr-idx-embed[data-vr-idx-display="search"] .vri-search .vri-sform > select.vri-transaction:focus-visible {
  outline: 2px solid var(--vr-color-accent, #245b57); outline-offset: -2px;
}
@media (max-width: 767px) {
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .vr-idx-embed[data-vr-idx-display="search"] .vri-search .vri-sform > select.vri-transaction {
    padding: 0 1.5rem 0 .625rem; background-position: right .5rem center;
  }
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .vr-idx-embed[data-vr-idx-display="search"] .vri-search .vri-sform > input[type="search"] {
    padding: 0 .25rem 0 .75rem;
  }
}
@media (forced-colors: active) {
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .vr-idx-embed[data-vr-idx-display="search"] .vri-search .vri-sform > select.vri-transaction {
    -webkit-appearance: auto; -moz-appearance: auto; appearance: auto; background-image: none;
  }
}
@media (max-width: 767px) {
  /* Keep the full location hint visible on phones without shrinking entered text or controls. */
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .vr-idx-embed[data-vr-idx-display="search"] .vri-search .vri-sform > input[type="search"]::placeholder {
    font-size: 13px;
  }
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .vr-idx-embed[data-vr-idx-display="search"] .vri-search .vri-sform > button[type="submit"] {
  position: static; inset: auto; transform: none; flex: 0 0 48px; min-height: 48px;
  margin: 0; border: 0; border-radius: 0; background: var(--vr-color-accent, #245b57); color: var(--vr-color-on-accent);
}
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .vr-idx-embed[data-vr-idx-display="search"] .vri-search .vri-quickfilters {
  position: static; inset: auto; transform: none; width: auto; height: auto;
  display: flex; flex-wrap: wrap; gap: .5rem 1rem; margin: .75rem 0 0; padding: 0;
  border: 0; border-radius: 0; background: transparent; box-shadow: none;
}

@media (max-width: 767px) { :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__layout { min-height: calc(100svh - 68px); } }

/* Confirmation actions sit on the existing dark interior hero. */
.daylight-form-confirmation .daylight-confirmation-actions {
  display: flex; flex-wrap: wrap; justify-content: center;
  gap: var(--vr-space-4, 1rem); margin-top: var(--vr-space-8, 2rem);
}
/* Imported tenant link rules can be important; inverse confirmation actions
   must retain their own accessible foreground in every interaction state. */
.daylight-form-confirmation [data-daylight-confirmation] .vr-button {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 44px; padding: .75rem 1.5rem;
  border: 1px solid currentColor;
  color: var(--vr-color-on-inverse, #fff) !important;
  text-decoration: underline;
  text-underline-offset: .2em;
}
.daylight-form-confirmation [data-daylight-confirmation] .vr-button:hover {
  color: var(--vr-color-on-inverse, #fff) !important;
  text-decoration-thickness: 2px;
}
.daylight-form-confirmation [data-daylight-confirmation] .vr-button:focus-visible {
  color: var(--vr-color-on-inverse, #fff) !important;
  outline: 2px solid var(--vr-color-on-inverse, #fff);
  outline-offset: 3px;
}

/* Long authored calculator labels must fit their phone column. */
a.sale-proceeds-calculator__contact { max-width: 100%; white-space: normal; }


/* Reserve the search slot before its streamed widget/CSS arrives. An expanding
   auto grid row otherwise moves the already-painted headline. Longer content can grow. */
:is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__search--widget {
  min-block-size: 14rem;
}


/* Shared phone reading grid: content uses the width available, not desktop line caps. */
@media (max-width: 767px) {
  .daylight-header--daylight .daylight-header__inner {
    grid-template-columns: 44px minmax(0, 1fr) 44px;
    gap: 0; padding-inline: 20px;
  }
  .daylight-header--daylight .daylight-wordmark { grid-column: 2; justify-self: center; text-align: center; }
  .daylight-header--daylight .daylight-menu-toggle { grid-column: 3; }
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__layout { min-height: 0; padding-block: 32px; }
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__title {
    width: 100%; max-width: none; font-size: clamp(38px, 10vw, 46px); line-height: 1.08;
  }
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__title-nowrap { white-space: normal; }
  :is(.home, .daylight-daylight-page) .daylight-hero--daylight .daylight-hero__lead {
    max-width: none; margin-inline: 0; font-size: 16px; line-height: 1.6; letter-spacing: 0;
    text-align: justify; text-align-last: left; text-wrap: wrap;
  }
  .daylight-daylight-footer .daylight-footer__cols { grid-template-columns: minmax(0, 1fr); gap: 24px; margin-bottom: 24px; }
  .daylight-daylight-footer .daylight-footer__cols > div:first-child { justify-self: center; text-align: center; }
  .daylight-daylight-footer .daylight-footer__social { justify-content: center; }
  .daylight-daylight-footer .daylight-footer__col-title { margin-bottom: 8px; font-size: 14px; font-weight: 600; }
  .daylight-daylight-footer .daylight-footer__list { gap: 0; }
  .daylight-daylight-footer .daylight-footer__list li { margin: 0; }
  .daylight-daylight-footer .daylight-footer__list a { font-size: 16px; line-height: 1.5; }
  .daylight-daylight-footer .daylight-footer__bottom { display: block; font-size: 14px; line-height: 1.65; }
  .daylight-daylight-footer .daylight-footer__bottom p { margin: 0 0 16px; }
}

/* Parent navigation keeps its authored groups; office details get a readable full row. */
@media (min-width: 390px) and (max-width: 767px) {
  .daylight-daylight-footer .daylight-footer__cols { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .daylight-daylight-footer .daylight-footer__cols > div:first-child,
  .daylight-daylight-footer .daylight-footer__col--office { grid-column: 1 / -1; }
}

/* Page templates that load after this file. */
/* Luxury Division page: transparent header over the full-bleed hero, white bar once fixed. */
.daylight-lux-page .daylight-header.is-fixed .daylight-wordmark,
.daylight-lux-page .daylight-header.is-fixed .daylight-nav__link,
.daylight-lux-page .daylight-header.is-fixed .daylight-menu-toggle { color: #18181b; }
.daylight-lux-page .daylight-header.is-fixed { background: #fff; box-shadow: 0 5px 24px rgba(20,20,20,.08); }
.daylight-lux-page .daylight-header.is-fixed .daylight-wordmark__brand,
.daylight-lux-page .daylight-header.is-fixed .daylight-wordmark__sub { color: #18181b; }
.daylight-lux-page > .daylight-header.daylight-header--daylight:not(.is-fixed) {
  position: absolute;
  inset: 0 0 auto;
  background: transparent;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  box-shadow: none;
  border-bottom-color: rgba(255,255,255,.22);
}
.daylight-lux-page > .daylight-header.daylight-header--daylight:not(.is-fixed) :is(.daylight-wordmark, .daylight-wordmark__brand, .daylight-wordmark__sub, .daylight-nav__link, .daylight-menu-toggle) { color: #fff; }

/* Commercial 2 page: transparent header over the hero, paper bar once fixed. */
.commercial-2 > .daylight-header.daylight-header--daylight:not(.is-fixed) { position:absolute; inset:0 0 auto; background:transparent; box-shadow:none; border-color:rgba(255,255,255,.25); }
.commercial-2 > .daylight-header.daylight-header--daylight:not(.is-fixed) :is(.daylight-wordmark,.daylight-wordmark__brand,.daylight-wordmark__sub,.daylight-nav__link,.daylight-menu-toggle) { color:#fff; }
.commercial-2 .daylight-header.is-fixed { background:#f4f1ea; box-shadow:none; }
.commercial-2 .daylight-header.is-fixed :is(.daylight-wordmark,.daylight-wordmark__brand,.daylight-wordmark__sub,.daylight-nav__link,.daylight-menu-toggle) { color:var(--c2-ink); }
