/* Daylight inner pages: no dark gradient overlays on photos (Ryan, 2026-10-10; homepage done in
   daylight-home-light.css). Text that sits on a photo gets its own warm-white backing plate instead,
   because the rendered-contrast QA gate (tools/qa/visual/lib/rendered-contrast.mjs) measures with
   text-shadow removed. Hero titles no longer use plates (Ryan, 2026-10-19): they sit where each
   photo is naturally dark (see the About hero rules below and luxury-refresh.css). */
/* Compatibility aliases for photo-led variants share the published palette. */
:root {
  --daylight-ink: var(--vr-color-text);
  --daylight-ink-soft: var(--vr-color-text);
  --daylight-ink-muted: var(--vr-color-muted);
  --daylight-ink-deep: var(--vr-color-accent);
  --daylight-ink-on-dark: var(--vr-color-on-inverse);
  --daylight-plate-bg: color-mix(in srgb, var(--vr-color-surface) 88%, transparent);
  --daylight-plate-bg-strong: color-mix(in srgb, var(--vr-color-surface) 90%, transparent);
  --daylight-plate-bar: color-mix(in srgb, var(--vr-color-surface) 92%, transparent);
}
.daylight-lux-hero__overlay,
.daylight-buy-hero__scrim,
.daylight-sell-hero__scrim,
.daylight-about-hero__scrim,
.daylight-lux-neighborhood__photo-overlay,
.single-localpages .hero-section.has-overlay::before,
.post-type-archive-localpages .hero-section.has-overlay::before { background: none; }

/* About hero (Ryan, 2026-10-19): no plate, no scrim, no type on the photo. The three About pages
   carry editor-chosen photos whose dark ground sits in different places (lawn at the bottom of the
   house photo; a broken rooftop strip mid-frame on the city photo, whose bottom is 1.1-1.9:1 for
   white), so no fixed position keeps white type legible. The photo runs full-bleed under the header
   and the title and lead sit on a clean band below it, like /buy/ and /sell/. The header is out of
   flow in both states, so turning fixed on scroll never moves the band. */
.daylight-about-hero { --about-photo-h: clamp(420px, 72svh, 780px); min-height: 0; background: var(--vr-color-surface); }

.daylight-about-hero__photo { inset: 0 0 auto; height: var(--about-photo-h); }
.daylight-about-hero__inner { flex: 0 0 auto; }
.daylight-about-hero__copy { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); column-gap: clamp(2rem, 5vw, 5rem); align-items: start; max-width: none; margin: var(--about-photo-h) 0 0; padding: clamp(2.5rem, 5vw, 4.5rem) max(1.5rem, calc((100% - 1180px) / 2)); text-align: left; color: var(--daylight-ink); }
.daylight-about-hero__title { max-width: 9em; color: var(--daylight-ink); font-size: clamp(3rem, 5.6vw, 5.5rem); font-weight: 400; letter-spacing: -.025em; line-height: .95; text-shadow: none; text-wrap: balance; }
.daylight-about-hero__lead { max-width: 38rem; margin: 0; color: var(--daylight-ink-soft); font-weight: 400; line-height: 1.7; letter-spacing: 0; opacity: 1; text-shadow: none; }
@media (max-width: 767px) {
  .daylight-about-hero { --about-photo-h: clamp(320px, 52svh, 460px); }
  .daylight-about-hero__copy { grid-template-columns: minmax(0, 1fr); row-gap: 1rem; padding: 2rem 1.25rem 2.5rem; }
  .daylight-about-hero__title { font-size: clamp(2.5rem, 12vw, 3.25rem); }
  .daylight-about-hero__lead { font-size: var(--vr-type-body, 1rem); line-height: 1.65; }
}

/* Linked agent and team photos use a two-tone edge cue instead of the expanding gradient. */
.agent-card::before,
.team-card::before { height: 0; background: none; opacity: 0; }
.agent-card .card-caption,
.team-card .card-content { background: rgba(0,0,0,.78); }
.agent-card .card-image > a { display: block; }
.agent-card .card-image > a:hover,
.agent-card .card-image > a:focus-visible,
.team-card:hover .card-image,
.team-card:focus-visible .card-image {
  outline: 2px solid #fff;
  outline-offset: -5px;
  box-shadow: inset 0 0 0 4px rgba(0,0,0,.8);
}
.team-card:focus-visible { outline: 2px solid #18181b; outline-offset: 3px; }

/* Localpage hero: title on its own plate over the (now ungraded) photo. */
:is(.single-localpages, .post-type-archive-localpages) .hero-section.has-overlay .hero-heading { display: inline-block; max-width: 100%; color: var(--daylight-ink) !important; padding: .5rem 1.25rem .65rem; background: var(--daylight-plate-bg); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); text-shadow: none; }
@media (max-width: 767px) {
  .daylight-buy-hero__inner, .daylight-sell-hero__inner { padding-bottom: 1rem; padding-left: .75rem; padding-right: .75rem; }
  .daylight-buy-hero__title, .daylight-sell-hero__title { font-size: clamp(1.5rem, 7vw, 1.9rem); line-height: 1.12; }
}

.page-template-about-us .daylight-editorial__cta { font-size: var(--vr-type-small); letter-spacing: .12em; }

/* Luxury neighborhood tiles: label sits on the (ungraded) photo, so it gets a plate. */
.daylight-lux-neighborhood__photo-label { width: fit-content; max-width: calc(100% - 1rem); margin: 0 0 .6rem .6rem; padding: .4rem .7rem; background: var(--daylight-plate-bg-strong); }
.daylight-lux-neighborhood__name { color: var(--daylight-ink); margin: 0; text-shadow: none; }

/* VIR-1269: shared region/neighborhood presentation, using homepage typography. */
.daylight-community { color: var(--vr-color-text); overflow-wrap: anywhere; }
.daylight-community .daylight-community-hero { position: relative; padding: 0; background-color: var(--vr-color-surface); }
.daylight-community-hero__copy { display: grid; align-content: end; min-height: clamp(20rem, 48vw, 38rem); padding-block: 3rem; }
.daylight-community .daylight-community-hero .hero-heading { display: inline-block; max-width: 100%; padding: .6rem 1.5rem; color: var(--vr-color-text); background: var(--daylight-plate-bg-strong); font-family: var(--vr-font-display); font-weight: 300; font-size: clamp(2.75rem, 6vw, 5.5rem); line-height: 1.1; text-shadow: none; }
.daylight-community .region-overview-section { margin: 3rem 0; }
.daylight-community .region-overview-section::before { content: none; }
.daylight-community .region-location-section { margin-block: clamp(2rem, 5vw, 4rem); }
.daylight-community .location-card { box-shadow: none; }
.daylight-community .location-map { overflow: hidden; border: 1px solid var(--vr-color-rule); }
.daylight-community .location-map .embed-responsive { min-height: 18rem; }
.daylight-community .region-meta-section { padding-block: 2rem !important; text-align: left !important; }
.daylight-community .region-meta-section .tab-content { max-width: 60rem; line-height: 1.8; }
.daylight-community .daylight-tabs { display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; padding: 0; }
.daylight-community .daylight-tabs li { margin: 0; }
.daylight-community .daylight-tabs a { display: inline-flex; align-items: center; min-height: 44px; padding: .5rem .25rem; color: var(--vr-color-text); border-bottom: 2px solid transparent; text-decoration: none; }
.daylight-community .daylight-tabs a:is(.active, :hover) { border-bottom-color: currentColor; }
.daylight-community :is(a, button):focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.daylight-community .table-responsive-md { overflow-x: auto; }
/* Empty edge placeholders must not reserve a blank screen; retain the widget for hydration. */
.daylight-community .office-listings .vr-idx-embed:empty { min-height: 0; }
.daylight-community-listings-fallback { display: none; margin: 0; }
.daylight-community .office-listings:has(.vr-idx-embed:empty) .daylight-community-listings-fallback { display: block; }
@media (max-width: 767px) {
  .daylight-community-hero__copy { min-height: 20rem; padding-block: 2rem; }
  .daylight-community .region-location-section { margin-block: 2rem; }
  .daylight-community .location-map .embed-responsive { min-height: 16rem; }
}

.daylight-community .region-meta-section .tab-content p { text-align: left !important; }
