/* =============================================================================
   CRIGHTON RINALDI TEAM — Black & White Luxury Theme
   Cormorant Garamond + Inter
   ============================================================================= */

/* ── REVEAL ANIMATION FIX (main.js adds .revealed, home.css targets .is-revealed) ── */
[data-reveal].revealed {
  opacity: 1 !important;
  transform: translateY(0) translateX(0) !important;
}

/* =============================================================================
   THEME — CSS VARIABLE OVERRIDES (.crighton-page scope)
   ============================================================================= */

.crighton-page {
  /* Display font → Cormorant Garamond */
  --font-display: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;

  /* Replace champagne gold → pure white (on dark backgrounds) */
  --champagne-gold:       #FFFFFF;
  --champagne-gold-light: #F5F5F5;
  --champagne-gold-dark:  #C8C8C8;
  --champagne-gold-muted: rgba(255, 255, 255, 0.22);

  /* Replace warm neutral backgrounds → clean white/light-gray */
  --warm-white: #FFFFFF;
  --soft-sand:  #F5F5F5;

  /* Glass and border → white-tinted */
  --glass-gold:  rgba(255, 255, 255, 0.06);
  --border-gold: rgba(255, 255, 255, 0.18);

  /* Shadows */
  --shadow-gold:    0 8px 40px rgba(0, 0, 0, 0.35);
  --shadow-gold-sm: 0 4px 20px rgba(0, 0, 0, 0.22);

  --text-gold: #FFFFFF;
}

/* =============================================================================
   PROGRESS BAR
   ============================================================================= */

.progress-bar {
  position: fixed;
  top: 0; left: 0;
  height: 2px;
  width: 0%;
  background: #FFFFFF;
  z-index: calc(var(--z-nav) + 1);
  pointer-events: none;
  transition: width 0.1s linear;
}

/* =============================================================================
   CUSTOM CURSOR
   ============================================================================= */

.cursor { pointer-events: none; }

.cursor__ring {
  position: fixed;
  width: 34px; height: 34px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  transform: translate(-50%, -50%);
  z-index: var(--z-cursor);
  pointer-events: none;
  transition: width 0.25s, height 0.25s, border-color 0.25s;
}

.cursor__dot {
  position: fixed;
  width: 4px; height: 4px;
  background: #FFFFFF;
  border-radius: 50%;
  transform: translate(-50%, -50%);
  z-index: var(--z-cursor);
  pointer-events: none;
}

@media (hover: none) { .cursor { display: none; } }

/* =============================================================================
   NAVIGATION — Logo + overrides
   ============================================================================= */

.crighton-page .nav__logo-img:hover {
  opacity: 0.8;
}

/* Footer logo */
.footer__logo-img {
  display: block;
  height: 36px;
  width: auto;
  object-fit: contain;
  filter: brightness(0) invert(1);
  opacity: 0.75;
  margin-bottom: 1.5rem;
}

/* =============================================================================
   GLOBAL BUTTON OVERRIDES — More padding, border-radius
   ============================================================================= */

/* All buttons: add border-radius */
.crighton-page .btn {
  border-radius: 3px;
  letter-spacing: 0.16em;
  font-size: var(--text-12);
}

/* Primary: white bg, black text (on dark sections) */
.crighton-page .btn-primary {
  padding: 16px 48px;
  background: #FFFFFF;
  color: #0A0A0A;
  border-color: #FFFFFF;
}
.crighton-page .btn-primary::before {
  background: #F0F0F0;
}
.crighton-page .btn-primary:hover {
  box-shadow: 0 8px 32px rgba(255, 255, 255, 0.18);
}

/* Outline: white border on dark sections */
.crighton-page .btn-gold-outline {
  padding: 15px 46px;
  border-color: rgba(255, 255, 255, 0.38);
  color: #FFFFFF;
  border-radius: 3px;
}
.crighton-page .btn-gold-outline:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.7);
  box-shadow: none;
}

/* Ghost: white text on dark */
.crighton-page .btn-ghost {
  color: rgba(255, 255, 255, 0.65);
}
.crighton-page .btn-ghost:hover {
  color: #FFFFFF;
}

/* Button in NAV: outlined, small */
.crighton-page .btn-gold-outline.btn-sm {
  padding: 10px 22px;
  font-size: var(--text-11);
}

/* =============================================================================
   GLOBAL TAG OVERRIDES — More padding, border-radius
   ============================================================================= */

.crighton-page .tag-gold {
  padding: 7px 20px;
  border-radius: 3px;
  font-size: 0.62rem;
  letter-spacing: 0.22em;
  /* On dark bg: white border/text (via CSS variable override) */
}

/* Tags on WHITE background sections */
.crighton-page .mission-split .tag-gold,
.crighton-page .communities-editorial .tag-gold,
.crighton-page .testimonials .tag-gold {
  color: #0A0A0A;
  border-color: rgba(0, 0, 0, 0.2);
  background: transparent;
}

/* =============================================================================
   SECTION HEADER EYEBROW — Context-aware coloring
   ============================================================================= */

/* On dark sections: muted white */
.crighton-page .section-header__eyebrow {
  color: rgba(255, 255, 255, 0.45);
  font-size: 0.62rem;
  letter-spacing: 0.24em;
}
.crighton-page .section-header__eyebrow::before {
  background: rgba(255, 255, 255, 0.45);
  width: 28px;
}

/* On light sections: muted black */
.crighton-page .communities-editorial .section-header__eyebrow,
.crighton-page .testimonials .section-header__eyebrow,
.crighton-page .team-section .section-header__eyebrow {
  color: rgba(0, 0, 0, 0.4);
}
.crighton-page .communities-editorial .section-header__eyebrow::before,
.crighton-page .testimonials .section-header__eyebrow::before,
.crighton-page .team-section .section-header__eyebrow::before {
  background: rgba(0, 0, 0, 0.4);
}

/* Section heading on white bg: black */
.crighton-page .communities-editorial .section-header__heading,
.crighton-page .testimonials .section-header__heading,
.crighton-page .team-section .section-header__heading {
  color: #0A0A0A;
}
.crighton-page .communities-editorial .section-header__heading em,
.crighton-page .testimonials .section-header__heading em,
.crighton-page .team-section .section-header__heading em {
  color: #0A0A0A;
  font-style: italic;
}

/* Subheading on dark (listings): muted white */
.crighton-page .ylopo-section .section-header__subheading {
  color: rgba(255, 255, 255, 0.45);
}

/* Arrow links on dark sections: white */
.crighton-page .btn-arrow {
  color: rgba(255, 255, 255, 0.8);
  letter-spacing: 0.18em;
  font-size: var(--text-12);
}
.crighton-page .btn-arrow:hover {
  color: #FFFFFF;
}

/* Arrow links on light sections: black */
.crighton-page .mission-split .btn-arrow,
.crighton-page .communities-editorial .btn-arrow,
.crighton-page .testimonials .btn-arrow {
  color: #0A0A0A;
}
.crighton-page .mission-split .btn-arrow:hover,
.crighton-page .communities-editorial .btn-arrow:hover,
.crighton-page .testimonials .btn-arrow:hover {
  color: rgba(0, 0, 0, 0.65);
}

/* =============================================================================
   HERO — Video Background + Refined Overlays
   ============================================================================= */

/* Vimeo background video wrapper */
.hero__video-wrap {
  position: absolute;
  inset: 0;
  z-index: 1;
  overflow: hidden;
  opacity: 0;
  transition: opacity 1.8s cubic-bezier(0.4, 0, 0.2, 1);
}

.hero__video-wrap.loaded {
  opacity: 1;
}

.hero__video-iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  /* Fill container maintaining 16:9 */
  width: 100vw;
  height: 56.25vw;   /* 16/9 = 1.778 → inverse = 0.5625 */
  min-height: 100%;
  min-width: 177.78vh;
  transform: translate(-50%, -50%);
  border: none;
  pointer-events: none;
}

/* Stack order inside hero: image (0) → Vimeo (1) → overlays (2) → content (3) */
.crighton-page .hero__media-inner { z-index: 0; }

.crighton-page .hero__overlay,
.crighton-page .hero__overlay-gradient {
  z-index: 2;
}

.crighton-page .hero__content,
.crighton-page .hero__badge {
  position: relative;
  z-index: 3;
}

/* Slightly lighter overlay so video/image reads through */
.crighton-page .hero__overlay {
  background: linear-gradient(
    135deg,
    rgba(0, 0, 0, 0.62) 0%,
    rgba(0, 0, 0, 0.38) 55%,
    rgba(0, 0, 0, 0.52) 100%
  );
}

/* Hero headline — Cormorant at large sizes */
.crighton-page .hero__headline-line--italic {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 300;
  font-style: italic;
  letter-spacing: 0.01em;
}

.crighton-page .hero__headline-line--bold {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 700;
  background: none;
  -webkit-text-fill-color: #FFFFFF;
  letter-spacing: -0.02em;
}

/* Eyebrow dot: white */
.crighton-page .hero__eyebrow-dot {
  background: #FFFFFF;
}

/* Badge */
.crighton-page .hero__badge {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.25);
}
.crighton-page .hero__badge-dot {
  background: #FFFFFF;
}
.crighton-page .hero__badge-text {
  color: rgba(255, 255, 255, 0.8);
}

/* Search bar */
.crighton-page .hero__search {
  max-width: 820px;
  border-color: rgba(255, 255, 255, 0.16);
}

.hero__search-divider {
  width: 1px;
  background: rgba(255, 255, 255, 0.14);
  align-self: stretch;
  flex-shrink: 0;
}

.crighton-page .hero__search-btn {
  padding: 0 clamp(1.5rem, 3vw, 2.25rem);
  font-size: 0.68rem;
  letter-spacing: 0.18em;
  background: #FFFFFF;
  color: #0A0A0A;
}
.crighton-page .hero__search-btn:hover {
  background: #F0F0F0;
}

/* =============================================================================
   MISSION SPLIT — White background, editorial split
   ============================================================================= */

.mission-split {
  background: #FFFFFF;
  padding-top: clamp(5rem, 9vw, 9rem);
  padding-bottom: clamp(5rem, 9vw, 9rem);
}

.mission-split__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 clamp(1.5rem, 5vw, 5rem);
  display: grid;
  grid-template-columns: 55fr 45fr;
  gap: clamp(3rem, 6vw, 7rem);
  align-items: center;
}

/* Visual column */
.mission-split__visual {
  position: relative;
  padding-bottom: clamp(3rem, 6vw, 5rem);
}

.mission-split__img-frame {
  position: relative;
  border-radius: 2px;
  overflow: hidden;
  transform: rotate(-1.5deg);
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.05);
  transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.mission-split__visual:hover .mission-split__img-frame {
  transform: rotate(-0.5deg) translateY(-4px);
}

.mission-split__img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  display: block;
  transition: transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.mission-split__visual:hover .mission-split__img {
  transform: scale(1.03);
}

.mission-split__img-accent {
  position: absolute;
  bottom: 0;
  right: clamp(-0.5rem, -3vw, -2rem);
  width: clamp(130px, 24%, 200px);
  border-radius: 2px;
  overflow: hidden;
  border: 5px solid #FFFFFF;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.12);
  transform: rotate(1.8deg);
  transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.mission-split__visual:hover .mission-split__img-accent {
  transform: rotate(0.8deg) translateY(-4px);
}

.mission-split__img-accent-photo {
  width: 100%;
  aspect-ratio: 3 / 4;
  object-fit: cover;
  display: block;
}

/* Content column */
.mission-split__content {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.mission-split__content .tag-gold {
  margin-bottom: 1.5rem;
}

.mission-split__title {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(2rem, 3.2vw, 3.2rem);
  font-weight: 600;
  color: #0A0A0A;
  line-height: 1.15;
  letter-spacing: -0.01em;
  margin-bottom: 1.75rem;
}

.mission-split__title em {
  font-style: italic;
  font-weight: 400;
  color: #0A0A0A;
}

.mission-split__mission {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(1.05rem, 1.5vw, 1.25rem);
  font-style: italic;
  font-weight: 400;
  color: #0A0A0A;
  line-height: 1.65;
  border-left: 2px solid #0A0A0A;
  padding-left: 1.5rem;
  margin-bottom: 1.75rem;
  opacity: 0.75;
}

.mission-split__body {
  font-family: 'Inter', sans-serif;
  font-size: clamp(0.875rem, 1.15vw, 0.95rem);
  font-weight: 300;
  color: rgba(0, 0, 0, 0.6);
  line-height: 1.8;
  margin-bottom: 1.25rem;
}

/* Divider before CTA */
.mission-split__divider {
  width: 48px;
  height: 1px;
  background: rgba(0, 0, 0, 0.18);
  margin: 1.75rem 0;
}

/* =============================================================================
   YLOPO FEATURED LISTINGS — Dark background
   ============================================================================= */

.ylopo-section {
  background: #0A0A0A;
  padding-top: clamp(5rem, 8vw, 8rem);
  padding-bottom: clamp(5rem, 8vw, 8rem);
}

.ylopo-section .container {
  max-width: var(--container-wide);
}

.ylopo-section .section-header {
  margin-bottom: var(--space-12);
}

/* Widget wrapper */
.ylopo-wrapper {
  position: relative;
  min-height: 100px;
}

/* Fallback — shown by default, hidden by JS when widget loads */
.ylopo-fallback {
  text-align: center;
  padding: clamp(3rem, 5vw, 5rem) clamp(1.5rem, 3vw, 3rem);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 3px;
  background: rgba(255, 255, 255, 0.03);
}

.ylopo-fallback__icon {
  font-size: 2.5rem;
  margin-bottom: 1rem;
  opacity: 0.35;
}

.ylopo-fallback__title {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(1.2rem, 2vw, 1.5rem);
  font-weight: 400;
  color: rgba(255, 255, 255, 0.85);
  margin-bottom: 0.75rem;
  letter-spacing: 0.01em;
}

.ylopo-fallback__body {
  font-family: 'Inter', sans-serif;
  font-size: var(--text-14);
  color: rgba(255, 255, 255, 0.4);
  margin-bottom: 2rem;
  max-width: 480px;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.75;
}

/* Outline button in YLOPO fallback: white outline */
.ylopo-fallback .btn-gold-outline {
  padding: 14px 40px;
  border-color: rgba(255, 255, 255, 0.35);
  color: rgba(255, 255, 255, 0.85);
  border-radius: 3px;
  font-size: 0.68rem;
  letter-spacing: 0.2em;
}
.ylopo-fallback .btn-gold-outline:hover {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.6);
}

.ylopo-section__footer {
  text-align: center;
  margin-top: var(--space-12);
}

/* =============================================================================
   FEATURED COMMUNITIES — White background, editorial grid
   ============================================================================= */

.communities-editorial {
  background: #FFFFFF;
  padding-top: clamp(5rem, 8vw, 8rem);
  padding-bottom: clamp(5rem, 8vw, 8rem);
}

.communities-editorial .container {
  max-width: var(--container-max);
}

.communities-editorial .section-header {
  margin-bottom: clamp(2.5rem, 4vw, 4rem);
}

.communities-editorial-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.25rem;
}

/* Editorial community card */
.community-editorial-card {
  position: relative;
  border-radius: 2px;
  overflow: hidden;
  border: 1px solid rgba(0, 0, 0, 0.06);
  cursor: pointer;
  transition: transform 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94),
              box-shadow 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.community-editorial-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.14);
}

.community-editorial-card__link {
  display: block;
  text-decoration: none;
  color: inherit;
}

.community-editorial-card__media {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
}

.community-editorial-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.community-editorial-card:hover .community-editorial-card__img {
  transform: scale(1.06);
}

.community-editorial-card__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0.08) 0%,
    rgba(0, 0, 0, 0.72) 100%
  );
  transition: background 0.45s ease;
}

.community-editorial-card:hover .community-editorial-card__overlay {
  background: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0.12) 0%,
    rgba(0, 0, 0, 0.82) 100%
  );
}

.community-editorial-card__body {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 2rem 2rem 1.75rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

.community-editorial-card__name {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(1.75rem, 2.8vw, 2.5rem);
  font-weight: 400;
  color: #FFFFFF;
  line-height: 1.05;
  margin: 0;
  letter-spacing: -0.01em;
}

.community-editorial-card__sub {
  font-family: 'Inter', sans-serif;
  font-size: 0.6rem;
  font-weight: 500;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.55);
  margin-top: 0.5rem;
}

.community-editorial-card__arrow {
  color: #FFFFFF;
  opacity: 0;
  transform: translateX(-10px) translateY(4px);
  transition: opacity 0.35s ease, transform 0.35s ease;
  flex-shrink: 0;
  margin-bottom: 0.5rem;
}

.community-editorial-card:hover .community-editorial-card__arrow {
  opacity: 1;
  transform: translateX(0) translateY(0);
}

.communities-editorial__footer {
  text-align: center;
  margin-top: clamp(2rem, 3vw, 3rem);
}

/* =============================================================================
   BUYER / SELLER PATHWAY PANELS — Dark, B&W
   ============================================================================= */

.pathway-panels {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: clamp(420px, 50vh, 580px);
}

.pathway-panel {
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  padding: clamp(3rem, 5.5vw, 5rem);
}

.pathway-panel__bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  transition: transform 0.75s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.pathway-panel:hover .pathway-panel__bg {
  transform: scale(1.05);
}

.pathway-panel--buyers .pathway-panel__bg {
  background-image:
    linear-gradient(to top, rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.5) 55%, rgba(0,0,0,0.3) 100%),
    url('https://images.unsplash.com/photo-1600047509807-ba8f99d2cdde?auto=format&fit=crop&w=1200&q=80');
}

.pathway-panel--sellers .pathway-panel__bg {
  background-image:
    linear-gradient(to top, rgba(0,0,0,0.92) 0%, rgba(0,0,0,0.5) 55%, rgba(0,0,0,0.3) 100%),
    url('https://images.unsplash.com/photo-1582268611958-ebfd161ef9cf?auto=format&fit=crop&w=1200&q=80');
}

/* Divider between panels */
.pathway-panel__border {
  position: absolute;
  top: 0; bottom: 0; right: 0;
  width: 1px;
  background: linear-gradient(
    to bottom,
    transparent 0%,
    rgba(255, 255, 255, 0.18) 30%,
    rgba(255, 255, 255, 0.18) 70%,
    transparent 100%
  );
}

.pathway-panel__content {
  position: relative;
  z-index: 1;
  max-width: 480px;
}

.pathway-panel__eyebrow {
  font-family: 'Inter', sans-serif;
  font-size: 0.62rem;
  font-weight: 500;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.5);
  margin-bottom: 1.25rem;
}

.pathway-panel__title {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(1.9rem, 3.2vw, 3rem);
  font-weight: 500;
  color: #FFFFFF;
  line-height: 1.1;
  letter-spacing: -0.01em;
  margin-bottom: 1.25rem;
}

.pathway-panel__body {
  font-family: 'Inter', sans-serif;
  font-size: clamp(0.85rem, 1.15vw, 0.92rem);
  font-weight: 300;
  color: rgba(255, 255, 255, 0.5);
  line-height: 1.8;
  margin-bottom: 2.25rem;
}

/* Pathway panel buttons: white outline */
.pathway-panel .btn-gold-outline {
  border-color: rgba(255, 255, 255, 0.3);
  color: rgba(255, 255, 255, 0.85);
}
.pathway-panel .btn-gold-outline:hover {
  background: rgba(255, 255, 255, 0.07);
  border-color: rgba(255, 255, 255, 0.65);
}

/* =============================================================================
   TESTIMONIALS — White background, large Cormorant quote text
   ============================================================================= */

/* Override dark navy from home.css */
.crighton-page .testimonials {
  background: #FFFFFF;
  padding-top: clamp(5rem, 8vw, 8rem);
  padding-bottom: clamp(5rem, 8vw, 8rem);
}

/* Quote mark: large, black */
.crighton-page .testimonial__quote-mark {
  color: #0A0A0A;
  opacity: 0.1;
  font-size: 6rem;
}

/* Quote text: black, Cormorant italic */
.crighton-page .testimonial__text {
  font-family: 'Cormorant Garamond', Georgia, serif;
  color: #0A0A0A;
  font-size: clamp(1.15rem, 2.2vw, 1.6rem);
  font-weight: 400;
}

/* Author initials */
.testimonial__author-initials {
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.04);
  border: 1.5px solid rgba(0, 0, 0, 0.18);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 1rem;
  font-weight: 500;
  color: #0A0A0A;
  letter-spacing: 0.04em;
  transition: border-color 0.3s ease, background 0.3s ease;
}

.testimonial--active .testimonial__author-initials {
  border-color: rgba(0, 0, 0, 0.4);
}

/* Author name/title: black */
.crighton-page .testimonial__author-name {
  color: #0A0A0A;
}

.crighton-page .testimonial__author-title {
  color: rgba(0, 0, 0, 0.4);
}

/* Navigation dots: black on white */
.crighton-page .testimonials__dot {
  background: rgba(0, 0, 0, 0.15);
}

.crighton-page .testimonials__dot--active {
  background: #0A0A0A;
}

.crighton-page .testimonials__dot:hover {
  background: rgba(0, 0, 0, 0.45);
}

/* Increase carousel height for longer quotes */
.crighton-page .testimonials__carousel {
  min-height: 320px;
}

/* View all link (on white bg) */
.testimonials__view-all {
  text-align: center;
  margin-top: 2.75rem;
}

/* =============================================================================
   TEAM SECTION — Light gray background, black text, clean agent cards
   ============================================================================= */

.team-section {
  background: #F5F5F5;
  padding-top: clamp(5rem, 8vw, 8rem);
  padding-bottom: clamp(5rem, 8vw, 8rem);
}

.agent-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1.25rem, 2.5vw, 2rem);
  margin-top: clamp(2.5rem, 4vw, 4rem);
}

.agent-card {
  background: #FFFFFF;
  border: 1px solid rgba(0, 0, 0, 0.06);
  border-radius: 2px;
  padding: clamp(2rem, 3.5vw, 2.75rem);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  transition: transform 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94),
              box-shadow 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94),
              border-color 0.3s ease;
}

.agent-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1);
  border-color: rgba(0, 0, 0, 0.14);
}

/* Initials circle: black border */
.agent-initials {
  width: 68px;
  height: 68px;
  border-radius: 50%;
  background: transparent;
  border: 1.5px solid rgba(0, 0, 0, 0.18);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 1.35rem;
  font-weight: 500;
  color: #0A0A0A;
  letter-spacing: 0.04em;
  margin-bottom: 1.75rem;
  flex-shrink: 0;
  transition: border-color 0.3s ease, background 0.3s ease;
}

.agent-card:hover .agent-initials {
  border-color: #0A0A0A;
  background: rgba(0, 0, 0, 0.03);
}

.agent-card__name {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(1.2rem, 1.8vw, 1.5rem);
  font-weight: 500;
  color: #0A0A0A;
  margin-bottom: 0.25rem;
  line-height: 1.15;
}

.agent-card__role {
  font-family: 'Inter', sans-serif;
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.4);
  margin-bottom: 1.5rem;
}

.agent-card__divider {
  width: 32px;
  height: 1px;
  background: rgba(0, 0, 0, 0.14);
  margin-bottom: 1.5rem;
}

.agent-card__contact {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
}

.agent-card__contact-item {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  font-family: 'Inter', sans-serif;
  font-size: var(--text-13);
  font-weight: 400;
  color: rgba(0, 0, 0, 0.55);
  transition: color 0.25s ease;
  text-decoration: none;
}

.agent-card__contact-item:hover {
  color: #0A0A0A;
}

.agent-card__contact-icon {
  width: 14px;
  height: 14px;
  color: rgba(0, 0, 0, 0.4);
  flex-shrink: 0;
  transition: color 0.25s ease;
}

.agent-card__contact-item:hover .agent-card__contact-icon {
  color: #0A0A0A;
}

.agent-card__license {
  font-family: 'Inter', sans-serif;
  font-size: 0.68rem;
  color: rgba(0, 0, 0, 0.3);
  margin-top: auto;
  padding-top: 1.5rem;
  letter-spacing: 0.04em;
}

.team-section__footer {
  text-align: center;
  margin-top: clamp(2.5rem, 4vw, 4rem);
}

/* Arrow link on team section (light bg) */
.team-section .btn-arrow {
  color: #0A0A0A;
}
.team-section .btn-arrow:hover {
  color: rgba(0, 0, 0, 0.55);
}

/* =============================================================================
   FINAL CTA — Work With Us
   ============================================================================= */

.work-cta {
  position: relative;
  overflow: hidden;
  min-height: clamp(500px, 58vh, 700px);
  display: flex;
  align-items: center;
}

.work-cta__bg-wrap {
  position: absolute;
  inset: 0;
}

.work-cta__bg-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 35%;
  display: block;
  transition: transform 0.75s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.work-cta:hover .work-cta__bg-img {
  transform: scale(1.03);
}

.work-cta__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    108deg,
    rgba(0, 0, 0, 0.96) 0%,
    rgba(0, 0, 0, 0.86) 40%,
    rgba(0, 0, 0, 0.72) 100%
  );
}

.work-cta__inner {
  position: relative;
  z-index: 2;
  max-width: 1280px;
  margin: 0 auto;
  padding: clamp(4rem, 8vw, 7rem) clamp(1.5rem, 6vw, 7rem);
  width: 100%;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 4rem;
}

.work-cta__content {
  max-width: 620px;
}

.work-cta__content .tag-gold {
  margin-bottom: 1.5rem;
}

.work-cta__title {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(2.75rem, 5.5vw, 5.5rem);
  font-weight: 600;
  color: #FFFFFF;
  line-height: 1.0;
  letter-spacing: -0.02em;
  margin-bottom: 1.5rem;
}

.work-cta__title em {
  font-style: italic;
  font-weight: 300;
  color: rgba(255, 255, 255, 0.7);
}

.work-cta__body {
  font-family: 'Inter', sans-serif;
  font-size: clamp(0.88rem, 1.3vw, 0.97rem);
  font-weight: 300;
  color: rgba(255, 255, 255, 0.5);
  line-height: 1.8;
  margin-bottom: 1.5rem;
  max-width: 500px;
}

.work-cta__contact {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 2.5rem;
  margin-bottom: 2.5rem;
}

.work-cta__contact-item {
  font-family: 'Inter', sans-serif;
  font-size: var(--text-13);
  font-weight: 400;
  color: rgba(255, 255, 255, 0.55);
  letter-spacing: 0.02em;
  display: flex;
  align-items: center;
  gap: 0.6rem;
  text-decoration: none;
  transition: color 0.25s ease;
}

.work-cta__contact-item:hover {
  color: #FFFFFF;
}

.work-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}

/* Decoration rings */
.work-cta__decoration {
  position: relative;
  width: 200px;
  height: 200px;
  flex-shrink: 0;
}

.work-cta__decoration-ring {
  position: absolute;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.12);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.work-cta__decoration-ring--1 {
  width: 170px; height: 170px;
  animation: ringPulse 3.5s ease-in-out infinite;
}

.work-cta__decoration-ring--2 {
  width: 110px; height: 110px;
  border-color: rgba(255, 255, 255, 0.2);
  animation: ringPulse 3.5s ease-in-out 0.9s infinite;
}

@keyframes ringPulse {
  0%, 100% { transform: translate(-50%,-50%) scale(1); opacity: 1; }
  50%       { transform: translate(-50%,-50%) scale(1.09); opacity: 0.5; }
}

/* =============================================================================
   RESPONSIVE — TABLET (≤1024px)
   ============================================================================= */

@media (max-width: 1024px) {
  .mission-split__inner {
    grid-template-columns: 1fr;
  }

  .mission-split__visual {
    max-width: 560px;
    margin: 0 auto;
    padding-bottom: 3rem;
  }

  .pathway-panels {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .pathway-panel {
    min-height: 380px;
  }

  .pathway-panel__border { display: none; }

  .agent-cards {
    grid-template-columns: repeat(2, 1fr);
  }

  .work-cta__inner {
    grid-template-columns: 1fr;
  }

  .work-cta__decoration { display: none; }
}

/* =============================================================================
   RESPONSIVE — MOBILE (≤768px)
   ============================================================================= */

@media (max-width: 768px) {
  .communities-editorial-grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }

  .community-editorial-card__media {
    aspect-ratio: 16 / 10;
  }

  .agent-cards {
    grid-template-columns: 1fr;
  }
}

/* =============================================================================
   RESPONSIVE — SMALL MOBILE (≤480px)
   ============================================================================= */

@media (max-width: 480px) {
  /* Collapse search bar on mobile */
  .crighton-page .hero__search {
    flex-direction: column;
  }

  .hero__search-divider { display: none; }

  .crighton-page .hero__search-field { width: 100%; }

  .crighton-page .hero__search-btn {
    width: 100%;
    justify-content: center;
    padding: 18px;
  }
}

/* =============================================================================
   PASS 2 — Hero centering, badge, scroll fix, stats, eyebrow, image grid,
            testimonials horizontal carousel, work-cta fixes, logo size
   ============================================================================= */

/* ── NAV: always visible — disable hide-on-scroll JS behaviour ── */
.crighton-page .nav {
  transform: translateY(0) !important;
}

/* ── NAV: keep full height even when scrolled (logo needs the space) ── */
.crighton-page .nav.scrolled {
  height: var(--nav-height) !important;
}

/* ── NAV LOGO: exactly 160px wide, auto height ── */
.crighton-page .nav__logo-img {
  width: 160px !important;
  height: auto !important;
  object-fit: contain;
  object-position: left center;
  filter: brightness(0) invert(1);
}

/* ── FOOTER LOGO: 160px wide, inverted white ── */
.footer__logo-img {
  display: block;
  width: 160px !important;
  height: auto !important;
  filter: brightness(0) invert(1);
  opacity: 0.92;
  margin-bottom: 1.5rem;
}

/* ── HERO: center content, push down from nav ── */
.crighton-page .hero__content {
  align-items: center;
  text-align: center;
  padding-left: clamp(1.5rem, 6vw, 6rem);
  padding-right: clamp(1.5rem, 6vw, 6rem);
  max-width: 100%;
  width: 100%;
  padding-top: clamp(160px, 20vh, 220px);
  /* Search bar is now OUTSIDE the hero, so bottom padding is just for visual balance */
  padding-bottom: clamp(80px, 12vh, 140px);
}

/* Search bar is now outside the hero — hide the old absolute-positioned wrap */
.crighton-page .hero__search-wrap {
  display: none !important;
}

/* ═══════════════════════════════════════════════════════════════
   QUICK SEARCH STRIP — Modern Twist
   Sits between hero and stats. Live indicator + animated input.
   ═══════════════════════════════════════════════════════════════ */

.hero-search-strip {
  position: relative;
  z-index: 10;
  width: 100%;
  /* Top accent line: gradient glow connecting to hero */
  background:
    linear-gradient(to bottom,
      rgba(255,255,255,0.09) 0px,
      rgba(255,255,255,0.09) 1px,
      transparent 1px
    ),
    #06090F;
}

.hero__qsearch {
  display: flex;
  align-items: stretch;
  width: 100%;
  height: 86px;
  overflow: hidden;
  position: relative;
}

/* ── Live market indicator (left column) ── */
.hero__qsearch-label {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 0.9rem;
  padding: 0 2rem 0 clamp(1.5rem, 4vw, 3.5rem);
  border-right: 1px solid rgba(255, 255, 255, 0.08);
  cursor: default;
  transition: border-color 0.3s ease;
}

.hero__qsearch:focus-within .hero__qsearch-label {
  border-color: rgba(255, 255, 255, 0.16);
}

/* Pulsing live dot */
.hero__qsearch-pulse-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #FFFFFF;
  flex-shrink: 0;
  animation: searchLivePulse 2.8s cubic-bezier(0.66, 0, 0, 1) infinite;
}

@keyframes searchLivePulse {
  0%   { box-shadow: 0 0 0 0   rgba(255, 255, 255, 0.5); }
  60%  { box-shadow: 0 0 0 9px rgba(255, 255, 255, 0); }
  100% { box-shadow: 0 0 0 0   rgba(255, 255, 255, 0); }
}

.hero__qsearch-market {
  display: flex;
  flex-direction: column;
  gap: 2px;
  line-height: 1;
}

.hero__qsearch-top {
  font-family: 'Inter', sans-serif;
  font-size: 0.48rem;
  font-weight: 700;
  letter-spacing: 0.35em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.3);
}

.hero__qsearch-bottom {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 1.15rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: rgba(255, 255, 255, 0.85);
  white-space: nowrap;
  line-height: 1.1;
}

/* ── Input area (center) ── */
.hero__qsearch-field {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0 clamp(1.5rem, 3.5vw, 3rem);
  position: relative;
  cursor: text;
  min-width: 0;
}

/* Animated focus underline */
.hero__qsearch-field::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: clamp(1.5rem, 3.5vw, 3rem);
  right: 0;
  height: 2px;
  background: linear-gradient(to right, #FFFFFF, rgba(255,255,255,0.2));
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.55s cubic-bezier(0.4, 0, 0.2, 1);
}

.hero__qsearch-field:focus-within::after {
  transform: scaleX(1);
}

/* Search icon */
.hero__qsearch-field svg {
  flex-shrink: 0;
  color: rgba(255, 255, 255, 0.2);
  transition: color 0.35s ease, transform 0.35s ease;
}

.hero__qsearch-field:focus-within svg {
  color: rgba(255, 255, 255, 0.7);
  transform: scale(1.1);
}

/* Input text */
.hero__qsearch-input {
  width: 100%;
  background: transparent;
  border: none;
  outline: none;
  font-family: 'Inter', sans-serif;
  font-size: clamp(0.82rem, 1.3vw, 1rem);
  font-weight: 300;
  letter-spacing: 0.02em;
  color: rgba(255, 255, 255, 0.9);
  caret-color: #FFFFFF;
}

/* Placeholder: uppercase with generous tracking */
.hero__qsearch-input::placeholder {
  font-family: 'Inter', sans-serif;
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.2);
}

/* ── Submit button — angled parallelogram ── */
.hero__qsearch-btn {
  flex-shrink: 0;
  min-width: clamp(130px, 15vw, 195px);
  align-self: stretch;
  background: #FFFFFF;
  color: #0A0A0A;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.65rem;
  font-family: 'Inter', sans-serif;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  /* Angled left edge — modern diagonal cut */
  clip-path: polygon(22px 0%, 100% 0%, 100% 100%, 0% 100%);
  transition: background 0.3s ease,
              gap 0.4s cubic-bezier(0.4, 0, 0.2, 1),
              clip-path 0.3s ease;
}

.hero__qsearch-btn:hover {
  background: #ECECEC;
  gap: 1.1rem;
}

/* Arrow icon inside button — slides right on hover */
.hero__qsearch-btn-arrow {
  flex-shrink: 0;
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.hero__qsearch-btn:hover .hero__qsearch-btn-arrow {
  transform: translateX(4px);
}

/* ── Mobile — simplify on small screens ── */
@media (max-width: 640px) {
  .hero__qsearch-label { display: none; }

  .hero__qsearch-btn {
    clip-path: none;
    min-width: 80px;
    gap: 0;
  }

  .hero__qsearch-btn span { display: none; }

  .hero__qsearch-btn .hero__qsearch-btn-arrow {
    width: 22px; height: 22px;
    transform: none;
  }

  .hero__qsearch-btn:hover .hero__qsearch-btn-arrow {
    transform: none;
  }

  .hero__qsearch-input::placeholder {
    font-size: 0.65rem;
    letter-spacing: 0.06em;
  }
}

/* Scroll indicator: hidden — avoids overlap */
.crighton-page .hero__scroll {
  display: none !important;
}

/* ── IMPROVED SECTION ENTRANCE ANIMATIONS ── */
.crighton-page .hero__eyebrow {
  justify-content: center;
}
.crighton-page .hero__subtitle {
  max-width: 580px;
  margin-left: auto;
  margin-right: auto;
}
.crighton-page .hero__ctas {
  justify-content: center;
  gap: 2.5rem;
  flex-wrap: nowrap;
}

/* Badge: override absolute position → inline below CTAs */
.crighton-page .hero__badge {
  position: static !important;
  transform: none !important;
  bottom: auto !important;
  right: auto !important;
  margin-top: 2.25rem;
  align-self: center;
}

/* Scroll indicator: reposition to left, well above search bar */
.crighton-page .hero__scroll {
  left: clamp(1.5rem, 3.5vw, 3rem);
  bottom: clamp(7rem, 12vh, 10rem);
  right: auto;
  transform: none;
  z-index: 3;
}

/* ── ANIMATED STATS SECTION ── */
.cr-stats {
  background: #FFFFFF;
  border-bottom: 1px solid rgba(0, 0, 0, 0.07);
  padding: clamp(3rem, 5.5vw, 5.5rem) clamp(1.5rem, 6vw, 6rem);
}

.cr-stats__inner {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  align-items: center;
  gap: 0;
}

.cr-stats__item {
  text-align: center;
  padding: 0 clamp(1rem, 2.5vw, 3rem);
  position: relative;
}

.cr-stats__item + .cr-stats__item::before {
  content: '';
  position: absolute;
  left: 0; top: 50%;
  transform: translateY(-50%);
  height: 52px;
  width: 1px;
  background: linear-gradient(to bottom, transparent, rgba(0,0,0,0.14) 30%, rgba(0,0,0,0.14) 70%, transparent);
}

.cr-stats__value {
  display: inline-flex;
  align-items: baseline;
  gap: 2px;
  margin-bottom: 0.6rem;
}

.cr-stats__number {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(2.75rem, 4.5vw, 4.25rem);
  font-weight: 600;
  color: #0A0A0A;
  line-height: 1;
  letter-spacing: -0.03em;
}

.cr-stats__suffix {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(1.6rem, 2.5vw, 2.5rem);
  font-weight: 300;
  color: rgba(0, 0, 0, 0.35);
  line-height: 1;
}

.cr-stats__label {
  font-family: 'Inter', sans-serif;
  font-size: 0.58rem;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.35);
  line-height: 1.4;
}

/* ── PLAIN EYEBROW (no box, uppercase bold) ── */
.cr-eyebrow {
  display: block;
  font-family: 'Inter', sans-serif;
  font-size: 0.58rem;
  font-weight: 800;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  color: #0A0A0A;
  margin-bottom: 1.5rem;
}

/* White variant (for dark sections) */
.cr-eyebrow--light {
  color: rgba(255, 255, 255, 0.45);
}

/* Work-CTA variant: extra bottom padding, white */
.cr-eyebrow--work {
  color: rgba(255, 255, 255, 0.45);
  padding-bottom: 2rem;
  margin-bottom: 0;
}

/* ── MISSION: label + headline + image grid ── */

/* Tighter headline */
.crighton-page .mission-split__title {
  line-height: 1.0;
  letter-spacing: -0.025em;
}

/* Image grid replaces rotated-frame approach */
.mission-img-grid {
  display: grid;
  grid-template-columns: 3fr 2fr;
  grid-template-rows: 1fr 1fr;
  gap: 10px;
  height: clamp(380px, 52vw, 540px);
}

.mission-img-grid__primary {
  grid-row: 1 / -1;
  border-radius: 2px;
  overflow: hidden;
  position: relative;
}

.mission-img-grid__secondary,
.mission-img-grid__tertiary {
  border-radius: 2px;
  overflow: hidden;
  position: relative;
}

.mission-img-grid__primary img,
.mission-img-grid__secondary img,
.mission-img-grid__tertiary img {
  width: 100%; height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.85s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.mission-img-grid__primary:hover img   { transform: scale(1.04); }
.mission-img-grid__secondary:hover img { transform: scale(1.06); }
.mission-img-grid__tertiary:hover img  { transform: scale(1.06); }

/* ── PATHWAY PANELS: darker overlay for text readability ── */

/* Override the previous definitions with stronger gradients */
.pathway-panel--buyers .pathway-panel__bg {
  background-image:
    linear-gradient(to top, rgba(0,0,0,0.97) 0%, rgba(0,0,0,0.78) 45%, rgba(0,0,0,0.52) 100%),
    url('https://images.unsplash.com/photo-1600047509807-ba8f99d2cdde?auto=format&fit=crop&w=1200&q=80') !important;
}

.pathway-panel--sellers .pathway-panel__bg {
  background-image:
    linear-gradient(to top, rgba(0,0,0,0.97) 0%, rgba(0,0,0,0.78) 45%, rgba(0,0,0,0.52) 100%),
    url('https://images.unsplash.com/photo-1582268611958-ebfd161ef9cf?auto=format&fit=crop&w=1200&q=80') !important;
}

/* ── TESTIMONIALS: horizontal prev/next carousel (white bg) ── */

/* Increase container width */
.crighton-page .testimonials .container {
  max-width: 980px;
}

/* Carousel wrapper: prev | track | next */
.cr-test-wrapper {
  display: grid;
  grid-template-columns: 60px 1fr 60px;
  align-items: center;
  gap: 1.25rem;
}

/* Prev / Next arrow buttons */
.cr-test-nav {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.18);
  background: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: rgba(0, 0, 0, 0.5);
  flex-shrink: 0;
  transition: border-color 0.25s ease, color 0.25s ease,
              background 0.25s ease, transform 0.25s ease;
}
.cr-test-nav:hover {
  border-color: #0A0A0A;
  color: #0A0A0A;
  background: rgba(0, 0, 0, 0.04);
  transform: scale(1.07);
}
.cr-test-nav:active { transform: scale(0.95); }

/* Slide track: fixed height, overflow hidden */
.cr-test-track {
  position: relative;
  overflow: hidden;
  min-height: 300px;
}

/* Individual slides: all absolutely stacked */
.cr-test-slide {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  opacity: 0;
  transform: translateX(70px);
  transition: opacity 0.55s cubic-bezier(0.4, 0, 0.2, 1),
              transform 0.55s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: none;
  padding: 0 1rem;
}

/* Active slide */
.cr-test-slide--active {
  opacity: 1;
  transform: translateX(0);
  pointer-events: auto;
  position: relative; /* takes up height */
}

/* Large opening quote glyph */
.cr-test-quote {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 5.5rem;
  line-height: 0.75;
  color: rgba(0, 0, 0, 0.07);
  margin-bottom: -0.75rem;
  user-select: none;
  align-self: flex-start;
}

/* Testimonial body text */
.cr-test-text {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(1.1rem, 2vw, 1.5rem);
  font-weight: 400;
  font-style: italic;
  color: #1a1a1a;
  line-height: 1.65;
  max-width: 700px;
  margin: 0 auto 2.25rem;
  letter-spacing: -0.005em;
}

/* Author row */
.cr-test-author {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  justify-content: center;
}

.cr-test-initials {
  width: 46px; height: 46px;
  border-radius: 50%;
  border: 1.5px solid rgba(0, 0, 0, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 1rem;
  font-weight: 500;
  color: #0A0A0A;
  flex-shrink: 0;
}

.cr-test-name {
  font-family: 'Inter', sans-serif;
  font-size: 0.8rem;
  font-weight: 600;
  color: #0A0A0A;
  letter-spacing: 0.03em;
  text-align: left;
}

.cr-test-role {
  font-family: 'Inter', sans-serif;
  font-size: 0.68rem;
  color: rgba(0, 0, 0, 0.38);
  letter-spacing: 0.04em;
  margin-top: 2px;
  text-align: left;
}

/* Footer: dots + view-all link */
.cr-test-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 2.5rem;
  padding: 0 calc(60px + 1.25rem);
}

.cr-test-dots {
  display: flex;
  align-items: center;
  gap: 8px;
}

.cr-test-dot {
  width: 6px; height: 6px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.16);
  border: none;
  cursor: pointer;
  padding: 0;
  transition: background 0.3s ease, width 0.3s ease, border-radius 0.3s ease;
}

.cr-test-dot--active {
  background: #0A0A0A;
  width: 24px;
  border-radius: 3px;
}

/* ── WORK CTA: title same-line, tighter ── */
.crighton-page .work-cta__title {
  line-height: 0.98;
  margin-bottom: 1.25rem;
  font-size: clamp(2.75rem, 5vw, 5.25rem);
}

/* ── RESPONSIVE: stats, testimonials ── */
@media (max-width: 900px) {
  .cr-stats__inner {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
  .cr-stats__item + .cr-stats__item::before { display: none; }

  .cr-test-wrapper { grid-template-columns: 44px 1fr 44px; gap: 0.75rem; }
  .cr-test-nav { width: 44px; height: 44px; }
  .cr-test-footer { padding: 0; }
}

@media (max-width: 600px) {
  .mission-img-grid {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1.5fr 1fr;
    height: clamp(280px, 70vw, 380px);
  }
  .mission-img-grid__primary { grid-row: 1 / 2; grid-column: 1 / -1; }
  .mission-img-grid__secondary,
  .mission-img-grid__tertiary { grid-row: 2 / 3; }

  .cr-test-track { min-height: 360px; }
  .cr-test-wrapper { grid-template-columns: 36px 1fr 36px; gap: 0.5rem; }
  .cr-test-nav { width: 36px; height: 36px; }
}

/* =============================================================================
   PASS 3 — Testimonials dark-pop, work-cta lighter overlay
   ============================================================================= */

/* ── TESTIMONIALS: dramatic dark background so section pops ── */
.crighton-page .testimonials {
  background: #0f0f0f !important;
  padding-top: clamp(6rem, 10vw, 10rem) !important;
  padding-bottom: clamp(6rem, 10vw, 10rem) !important;
}

/* Section header on dark testimonials bg */
.crighton-page .testimonials .section-header__eyebrow {
  color: rgba(255, 255, 255, 0.38) !important;
}
.crighton-page .testimonials .section-header__eyebrow::before {
  background: rgba(255, 255, 255, 0.38) !important;
}
.crighton-page .testimonials .section-header__heading {
  color: #FFFFFF !important;
}
.crighton-page .testimonials .section-header__heading em {
  color: rgba(255, 255, 255, 0.55) !important;
  font-style: italic;
}

/* Prev/Next arrows: white-bordered on dark */
.crighton-page .testimonials .cr-test-nav {
  border-color: rgba(255, 255, 255, 0.2);
  color: rgba(255, 255, 255, 0.5);
}
.crighton-page .testimonials .cr-test-nav:hover {
  border-color: rgba(255, 255, 255, 0.75);
  color: #FFFFFF;
  background: rgba(255, 255, 255, 0.06);
}

/* Quote mark: ghost white */
.crighton-page .testimonials .cr-test-quote {
  color: rgba(255, 255, 255, 0.07);
}

/* Quote text: white */
.crighton-page .testimonials .cr-test-text {
  color: rgba(255, 255, 255, 0.88);
  font-size: clamp(1.2rem, 2.4vw, 1.65rem);
}

/* Author initials: white ring */
.crighton-page .testimonials .cr-test-initials {
  border-color: rgba(255, 255, 255, 0.22);
  color: rgba(255, 255, 255, 0.8);
}

/* Author name / role: white */
.crighton-page .testimonials .cr-test-name {
  color: #FFFFFF;
}
.crighton-page .testimonials .cr-test-role {
  color: rgba(255, 255, 255, 0.35);
}

/* Dots: white on dark */
.crighton-page .testimonials .cr-test-dot {
  background: rgba(255, 255, 255, 0.2);
}
.crighton-page .testimonials .cr-test-dot--active {
  background: #FFFFFF;
}
.crighton-page .testimonials .cr-test-dot:hover {
  background: rgba(255, 255, 255, 0.55);
}

/* Arrow link: white on dark */
.crighton-page .testimonials .btn-arrow {
  color: rgba(255, 255, 255, 0.55) !important;
}
.crighton-page .testimonials .btn-arrow:hover {
  color: rgba(255, 255, 255, 0.9) !important;
}

/* Decorative large quote mark behind section */
.crighton-page .testimonials .container {
  position: relative;
}
.crighton-page .testimonials .container::before {
  content: '\201C';
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(16rem, 28vw, 28rem);
  line-height: 1;
  color: rgba(255, 255, 255, 0.03);
  position: absolute;
  top: -2rem;
  left: 50%;
  transform: translateX(-50%);
  pointer-events: none;
  user-select: none;
  z-index: 0;
}
.crighton-page .testimonials .cr-test-wrapper,
.crighton-page .testimonials .cr-test-footer,
.crighton-page .testimonials .section-header {
  position: relative;
  z-index: 1;
}

/* ── WORK CTA: darker overlay (reverted — house slightly visible on right) ── */
.crighton-page .work-cta__overlay {
  background: linear-gradient(
    108deg,
    rgba(0, 0, 0, 0.95) 0%,
    rgba(0, 0, 0, 0.85) 38%,
    rgba(0, 0, 0, 0.68) 100%
  ) !important;
}

/* ── FOOTER social link: proper icon sizing ── */
.crighton-page .footer__social-link svg {
  display: block;
}

/* =============================================================================
   TEAM CAROUSEL — Splide-style avatar fan with prev/next navigation
   ============================================================================= */

.cr-team-carousel {
  background: #F5F5F5;
  padding: clamp(5rem, 8vw, 8rem) 0;
}

/* Centered section header */
.cr-team-carousel .section-header {
  text-align: center;
  max-width: 580px;
  margin: 0 auto clamp(3rem, 5vw, 5rem);
}

.cr-team-carousel .section-header__eyebrow {
  color: rgba(0, 0, 0, 0.35) !important;
  justify-content: center;
}

.cr-team-carousel .section-header__eyebrow::before {
  display: none !important;
}

.cr-team-carousel .section-header__heading {
  color: #0A0A0A !important;
  margin-bottom: 0;
}

.cr-team-carousel .section-header__heading em {
  color: #0A0A0A !important;
  font-style: italic;
}

/* ── Stage: visible window + overflow hidden ── */
.cr-team-stage {
  position: relative;
  height: clamp(200px, 28vw, 300px);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0.6rem;
}

/* Strip: all avatar items positioned here */
.cr-team-strip {
  position: relative;
  width: 100%;
  height: 100%;
}

/* ── Avatar item ── */
.cr-team-item {
  position: absolute;
  top: 50%;
  left: 50%;
  will-change: transform, opacity;
  transition: transform 0.58s cubic-bezier(0.4, 0, 0.2, 1),
              opacity 0.52s ease;
  cursor: pointer;
}

.cr-team-item:focus-visible {
  outline: none;
}

/* Avatar circle */
.cr-team-avatar {
  width: clamp(155px, 19vw, 220px);
  height: clamp(155px, 19vw, 220px);
  border-radius: 50%;
  overflow: hidden;
  background: #E0E0E0;
  border: 3px solid rgba(0, 0, 0, 0.06);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  transition: border-color 0.4s ease, box-shadow 0.4s ease;
  position: relative;
}

.cr-team-item.active .cr-team-avatar {
  /* Double-ring spotlight: white halo + outer dark ring */
  border-color: rgba(0, 0, 0, 0.20);
  box-shadow:
    0 18px 60px rgba(0, 0, 0, 0.25),
    0 0 0 5px rgba(255, 255, 255, 0.95),
    0 0 0 7px rgba(0, 0, 0, 0.14),
    0 0 32px 8px rgba(0, 0, 0, 0.10);
}

/* Name badge overlaid on bottom of active avatar */
.cr-team-item::after {
  content: attr(data-firstname);
  position: absolute;
  bottom: 14px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(0, 0, 0, 0.80);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  color: #FFFFFF;
  font-family: 'Inter', sans-serif;
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: none;
  padding: 5px 14px;
  border-radius: 2px;
  white-space: nowrap;
  opacity: 0;
  transition: opacity 0.45s ease;
  pointer-events: none;
  z-index: 10;
}

.cr-team-item.active::after {
  opacity: 1;
}

.cr-team-avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
  display: block;
  transition: filter 0.55s ease;
}

/* Non-active photos: grayscale */
.cr-team-item:not(.active) .cr-team-avatar img {
  filter: grayscale(100%);
}

/* ── Prev / Next nav arrows ── */
.cr-team-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: clamp(40px, 5vw, 54px);
  height: clamp(40px, 5vw, 54px);
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.18);
  background: #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: rgba(0, 0, 0, 0.5);
  z-index: 20;
  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
  transition: border-color 0.25s ease, color 0.25s ease,
              transform 0.25s ease, box-shadow 0.25s ease;
}

.cr-team-nav:hover {
  border-color: #0A0A0A;
  color: #0A0A0A;
  transform: translateY(-50%) scale(1.08);
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.14);
}

.cr-team-nav:active {
  transform: translateY(-50%) scale(0.95);
}

.cr-team-nav--prev { left: clamp(0.5rem, 2vw, 2.5rem); }
.cr-team-nav--next { right: clamp(0.5rem, 2vw, 2.5rem); }

/* ── Info panel ── */
.cr-team-info {
  text-align: center;
  padding: 0 clamp(1.5rem, 5vw, 5rem);
  min-height: 6rem;
  transition: opacity 0.3s ease;
}

/* Connector line from stage to info — shorter */
.cr-team-info::before {
  content: '';
  display: block;
  width: 1px;
  height: 0.75rem;
  background: rgba(0,0,0,0.12);
  margin: 0 auto 0.75rem;
}

.cr-team-info-name {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(2.25rem, 4vw, 3.75rem);
  font-weight: 500;
  color: #0A0A0A;
  letter-spacing: -0.02em;
  margin-bottom: 0.4rem;
  line-height: 1.0;
}

.cr-team-info-role {
  font-family: 'Inter', sans-serif;
  font-size: 0.58rem;
  font-weight: 800;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.38);
  margin-bottom: 1.5rem;
}

.cr-team-info-contact {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
}

.cr-team-info-link {
  font-family: 'Inter', sans-serif;
  font-size: 0.8rem;
  color: rgba(0, 0, 0, 0.48);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  transition: color 0.22s ease;
}

.cr-team-info-link:hover { color: #0A0A0A; }

/* ── Dots ── */
.cr-team-dots {
  display: flex;
  justify-content: center;
  gap: 7px;
  margin-top: 2.25rem;
}

.cr-team-dot {
  width: 6px; height: 6px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.18);
  border: none;
  cursor: pointer;
  padding: 0;
  transition: background 0.3s ease, width 0.3s ease, border-radius 0.3s ease;
}

.cr-team-dot.active {
  background: #0A0A0A;
  width: 22px;
  border-radius: 3px;
}

/* ── Footer ── */
.cr-team-footer {
  text-align: center;
  margin-top: 2.5rem;
}

.cr-team-carousel .btn-arrow { color: #0A0A0A !important; }
.cr-team-carousel .btn-arrow:hover { color: rgba(0, 0, 0, 0.5) !important; }

/* ── AGENT PHOTO (real headshot replaces initials circle) ── */
.agent-photo {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  overflow: hidden;
  margin-bottom: 1.75rem;
  flex-shrink: 0;
  border: 2px solid rgba(0, 0, 0, 0.08);
  transition: border-color 0.3s ease, transform 0.3s ease;
}

.agent-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
  display: block;
  transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.agent-card:hover .agent-photo {
  border-color: rgba(0, 0, 0, 0.22);
}

.agent-card:hover .agent-photo img {
  transform: scale(1.06);
}

/* ── SECTION ENTRANCE ANIMATIONS ── */

/* SECTION-LEVEL ANIMATION — transform only (NO opacity).
   Rationale: [data-reveal] children start at opacity:0 via main.css.
   If the parent section ALSO has opacity:0, children can't be seen even
   after main.js fires their .revealed class. Using only transform avoids
   this cascade conflict — sections slide in while children fade in cleanly. */

.section-reveal {
  transform: translateY(64px);
  transition: transform 1.05s cubic-bezier(0.16, 1, 0.3, 1);
}

.section-reveal.visible {
  transform: translateY(0);
}

/* Stagger delay variants */
.section-reveal--delay-1 { transition-delay: 0.1s; }
.section-reveal--delay-2 { transition-delay: 0.22s; }
.section-reveal--delay-3 { transition-delay: 0.34s; }
.section-reveal--delay-4 { transition-delay: 0.46s; }

/* Slide variants */
.section-reveal--left  { transform: translateX(-64px); }
.section-reveal--right { transform: translateX(64px); }
.section-reveal--left.visible,
.section-reveal--right.visible { transform: translateX(0); }

/* ELEMENT-LEVEL ANIMATION — [data-reveal] + main.js .revealed class.
   main.css already defines the base opacity:0 + transition.
   We just ensure .revealed restores them (bridging main.js → main.css). */
[data-reveal].revealed {
  opacity: 1 !important;
  transform: none !important;
  clip-path: inset(0 0% 0 0) !important;
}

/* =============================================================================
   PASS 4 — Manrope UI Font + Gold Accents + New Section Styles
   ============================================================================= */

/* ── MANROPE: body/UI font for new sections ── */
.cr-manrope {
  font-family: 'Manrope', -apple-system, sans-serif;
}

/* ── NAV: transparent state on hero, frosted on scroll ── */
.crighton-page .nav {
  background: transparent !important;
  border-bottom: 1px solid transparent;
  transition: background 0.5s ease, border-color 0.5s ease, backdrop-filter 0.5s ease !important;
}

.crighton-page .nav.scrolled {
  background: rgba(10, 10, 10, 0.92) !important;
  backdrop-filter: blur(24px) !important;
  -webkit-backdrop-filter: blur(24px) !important;
  border-bottom-color: rgba(0, 153, 204, 0.12) !important;
}

/* ── GOLD EYEBROW (new sections use real gold) ── */
.cr-eyebrow--gold {
  color: #0099CC !important;
  font-family: 'Manrope', sans-serif;
  font-size: 0.58rem;
  font-weight: 600;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  gap: 0.85rem;
  margin-bottom: 1.25rem;
}

.cr-eyebrow--gold::after {
  content: '';
  flex: 0 0 32px;
  height: 1px;
  background: rgba(0, 153, 204, 0.3);
}

/* ── GOLD SEARCH BUTTON (override white) ── */
.crighton-page .hero__qsearch-btn {
  background: #0099CC !important;
  color: #0A0A0A !important;
}
.crighton-page .hero__qsearch-btn:hover {
  background: #33BBDD !important;
}

/* ── STATS: dark background + gold numbers ── */
.cr-stats--dark {
  background: #0A0A0A !important;
  border-bottom: 1px solid rgba(0, 153, 204, 0.1) !important;
}

.cr-stats--dark .cr-stats__item + .cr-stats__item::before {
  background: linear-gradient(to bottom, transparent, rgba(0,153,204,0.15) 30%, rgba(0,153,204,0.15) 70%, transparent) !important;
}

.cr-stats--dark .cr-stats__number {
  color: #0099CC !important;
}

.cr-stats--dark .cr-stats__suffix {
  color: rgba(0, 153, 204, 0.5) !important;
}

.cr-stats--dark .cr-stats__label {
  color: rgba(248, 246, 242, 0.3) !important;
  font-family: 'Manrope', sans-serif;
}

/* ── CINEMATIC FEATURED LISTING SECTION ── */
.cinema-feature {
  position: relative;
  min-height: 88vh;
  display: flex;
  align-items: center;
  overflow: hidden;
}

.cinema-feature__bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  transform: scale(1.03);
  transition: transform 12s ease-out;
}

.cinema-feature__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    105deg,
    rgba(10,10,10,0.94) 0%,
    rgba(10,10,10,0.68) 52%,
    rgba(10,10,10,0.18) 100%
  );
}

.cinema-feature__content {
  position: relative;
  z-index: 2;
  padding: clamp(4rem, 7vw, 9rem) clamp(2rem, 7vw, 8rem);
  max-width: 660px;
}

.cinema-feature__address {
  font-family: 'Manrope', sans-serif;
  font-size: 0.65rem;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(248,246,242,0.35);
  margin-top: 0.6rem;
}

.cinema-feature__divider {
  width: 56px;
  height: 1px;
  background: rgba(0, 153, 204, 0.25);
  margin: 2rem 0;
}

.cinema-feature__meta {
  display: flex;
  gap: 2.5rem;
  flex-wrap: wrap;
  margin-bottom: 2.5rem;
}

.cinema-meta__value {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 1.5rem;
  font-weight: 600;
  color: #F8F6F2;
  line-height: 1;
}

.cinema-meta__label {
  font-family: 'Manrope', sans-serif;
  font-size: 0.55rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(248,246,242,0.3);
  margin-top: 0.25rem;
}

.cinema-feature__progress {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 2.5rem;
}

.cinema-progress-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: rgba(0,153,204,0.25);
  cursor: pointer;
  border: none;
  padding: 0;
  transition: all 0.3s ease;
}

.cinema-progress-dot.active {
  background: #0099CC;
  width: 20px;
  border-radius: 3px;
}

/* ── SELL / LIST YOUR HOME — Cinematic Section ── */
.sell-cinema {
  position: relative;
  min-height: 85vh;
  display: flex;
  align-items: center;
  overflow: hidden;
}

.sell-cinema__bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
}

.sell-cinema__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(
    90deg,
    rgba(10,10,10,0.94) 0%,
    rgba(10,10,10,0.62) 55%,
    rgba(10,10,10,0.08) 100%
  );
}

.sell-cinema__content {
  position: relative;
  z-index: 2;
  padding: clamp(4rem, 7vw, 9rem) clamp(2rem, 7vw, 8rem);
  max-width: 640px;
}

.sell-cinema__body {
  font-family: 'Manrope', sans-serif;
  font-size: clamp(0.85rem, 1.15vw, 0.95rem);
  font-weight: 300;
  line-height: 1.85;
  color: rgba(248,246,242,0.52);
  max-width: 460px;
  margin-top: 1.5rem;
}

.sell-cinema__stats {
  display: flex;
  gap: 2.5rem;
  margin-top: 3rem;
  padding-top: 2.5rem;
  border-top: 1px solid rgba(0,153,204,0.16);
  flex-wrap: wrap;
}

.sell-stat__number {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(1.8rem, 2.8vw, 2.5rem);
  font-weight: 600;
  color: #0099CC;
  line-height: 1;
}

.sell-stat__label {
  font-family: 'Manrope', sans-serif;
  font-size: 0.55rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(248,246,242,0.3);
  margin-top: 0.25rem;
}

.sell-cinema__actions {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
  margin-top: 2.5rem;
}

/* Sell section: gold primary CTA */
.sell-cinema .btn-primary {
  background: #0099CC !important;
  color: #0A0A0A !important;
  border-color: #0099CC !important;
  font-family: 'Manrope', sans-serif !important;
}
.sell-cinema .btn-primary:hover {
  background: #33BBDD !important;
}
.sell-cinema .btn-gold-outline {
  border-color: rgba(0,153,204,0.45) !important;
  color: rgba(248,246,242,0.8) !important;
}
.sell-cinema .btn-gold-outline:hover {
  border-color: #0099CC !important;
  color: #0099CC !important;
  background: transparent !important;
}

/* ── AREA MAP SECTION ── */
.map-section {
  background: #080808;
  display: grid;
  grid-template-columns: 1fr 320px;
  min-height: 600px;
}

@media (max-width: 900px) {
  .map-section { grid-template-columns: 1fr; }
  .map-section__sidebar { order: -1; border-left: none; border-bottom: 1px solid rgba(0,153,204,0.1); max-height: 280px; overflow-y: auto; }
}

.map-section__map {
  position: relative;
  overflow: hidden;
}

.map-section__map-header {
  position: absolute;
  top: 0; left: 0; right: 0;
  z-index: 10;
  padding: clamp(2rem, 4vw, 3.5rem) clamp(2rem, 4vw, 3.5rem) 2rem;
  background: linear-gradient(180deg, rgba(8,8,8,0.92) 0%, transparent 100%);
}

.map-section__map-inner {
  width: 100%;
  height: 100%;
  min-height: 600px;
}

.map-section__sidebar {
  background: #0E0E0E;
  border-left: 1px solid rgba(0,153,204,0.1);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.map-section__sidebar-top {
  padding: clamp(2rem, 3vw, 2.5rem) clamp(1.5rem, 2.5vw, 2rem);
  border-bottom: 1px solid rgba(255,255,255,0.04);
  flex-shrink: 0;
}

.map-section__sidebar-title {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(1.4rem, 2vw, 1.8rem);
  font-weight: 400;
  color: #F8F6F2;
  line-height: 1.15;
  margin-bottom: 0.5rem;
}

.map-section__sidebar-title em {
  font-style: italic;
  color: #33BBDD;
}

.map-section__sidebar-sub {
  font-family: 'Manrope', sans-serif;
  font-size: 0.75rem;
  font-weight: 300;
  color: rgba(248,246,242,0.35);
  line-height: 1.65;
}

.map-section__community-list {
  flex: 1;
  overflow-y: auto;
  padding: 4px 0;
}

.map-section__community-list::-webkit-scrollbar {
  width: 3px;
}
.map-section__community-list::-webkit-scrollbar-track { background: transparent; }
.map-section__community-list::-webkit-scrollbar-thumb { background: rgba(0,153,204,0.2); border-radius: 2px; }

.map-community-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px clamp(1.5rem, 2.5vw, 2rem);
  border-bottom: 1px solid rgba(255,255,255,0.025);
  cursor: pointer;
  transition: background 0.15s ease;
  text-decoration: none;
}

.map-community-item:hover {
  background: rgba(0,153,204,0.05);
}

.map-community-item.active {
  background: rgba(0,153,204,0.08);
  border-left: 2px solid #0099CC;
  padding-left: calc(clamp(1.5rem, 2.5vw, 2rem) - 2px);
}

.map-community-item__name {
  font-family: 'Manrope', sans-serif;
  font-size: 0.78rem;
  font-weight: 500;
  color: rgba(248,246,242,0.65);
}

.map-community-item.active .map-community-item__name {
  color: #0099CC;
}

.map-community-item__arrow {
  font-family: 'Manrope', sans-serif;
  font-size: 0.65rem;
  color: rgba(0,153,204,0.3);
  transition: color 0.15s, transform 0.15s;
}

.map-community-item:hover .map-community-item__arrow,
.map-community-item.active .map-community-item__arrow {
  color: #0099CC;
  transform: translateX(2px);
}

.map-section__sidebar-cta {
  padding: clamp(1rem, 2vw, 1.5rem) clamp(1.5rem, 2.5vw, 2rem);
  border-top: 1px solid rgba(0,153,204,0.1);
  flex-shrink: 0;
}

.map-section__sidebar-cta .btn-primary {
  width: 100%;
  justify-content: center;
  background: #0099CC !important;
  color: #0A0A0A !important;
  font-family: 'Manrope', sans-serif !important;
  font-size: 0.62rem !important;
}

/* ── COMMUNITIES MOSAIC (3-up with tall center) ── */
.communities-mosaic {
  background: #0A0A0A;
  padding: clamp(4rem, 7vw, 8rem) 0;
}

.communities-mosaic .container {
  max-width: 1400px;
}

.communities-mosaic__header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  margin-bottom: clamp(2.5rem, 4vw, 4rem);
  padding: 0 clamp(1.5rem, 5vw, 4rem);
}

.communities-mosaic__grid {
  display: grid;
  grid-template-columns: 1fr 1.2fr 1fr;
  grid-template-rows: auto;
  gap: 3px;
}

.mosaic-card {
  position: relative;
  overflow: hidden;
  cursor: pointer;
  display: block;
  text-decoration: none;
}

.mosaic-card--tall { grid-row: span 2; }
.mosaic-card--tall .mosaic-card__media { aspect-ratio: auto; height: 100%; }

.mosaic-card__media {
  position: relative;
  aspect-ratio: 4 / 3;
  overflow: hidden;
}

.mosaic-card__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.75s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.mosaic-card:hover .mosaic-card__img { transform: scale(1.06); }

.mosaic-card__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 35%, rgba(10,10,10,0.88) 100%);
  transition: background 0.4s ease;
}

.mosaic-card:hover .mosaic-card__overlay {
  background: linear-gradient(180deg, rgba(10,10,10,0.1) 0%, rgba(10,10,10,0.92) 100%);
}

.mosaic-card__label {
  position: absolute;
  bottom: 0; left: 0; right: 0;
  padding: clamp(1.25rem, 2.5vw, 2rem);
}

.mosaic-card__name {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: clamp(1.4rem, 2.5vw, 2.25rem);
  font-weight: 400;
  color: #F8F6F2;
  line-height: 1.05;
  margin-bottom: 0.35rem;
}

.mosaic-card--tall .mosaic-card__name {
  font-size: clamp(1.8rem, 3.2vw, 2.8rem);
}

.mosaic-card__sub {
  font-family: 'Manrope', sans-serif;
  font-size: 0.58rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(248,246,242,0.38);
}

/* COMMUNITIES: gold arrow on hover */
.mosaic-card__arrow {
  display: inline-block;
  margin-top: 0.75rem;
  font-family: 'Manrope', sans-serif;
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: #0099CC;
  opacity: 0;
  transform: translateX(-8px);
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.mosaic-card:hover .mosaic-card__arrow {
  opacity: 1;
  transform: translateX(0);
}

.communities-mosaic__footer {
  text-align: center;
  margin-top: clamp(2rem, 3.5vw, 3rem);
}

/* ── MISSION SPLIT: 2-col with single image ── */
.mission-split--single {
  background: #111111;
  padding-top: clamp(5rem, 8vw, 8rem);
  padding-bottom: clamp(5rem, 8vw, 8rem);
}

.mission-split--single .mission-split__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 clamp(1.5rem, 5vw, 5rem);
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(3rem, 6vw, 7rem);
  align-items: center;
}

@media (max-width: 900px) {
  .mission-split--single .mission-split__inner {
    grid-template-columns: 1fr;
  }
}

.mission-single-img {
  position: relative;
  overflow: hidden;
  border-radius: 2px;
}

.mission-single-img img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
  display: block;
  transition: transform 0.85s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.mission-single-img:hover img { transform: scale(1.04); }

.mission-single-img__caption {
  position: absolute;
  bottom: 1.5rem;
  left: 1.5rem;
  font-family: 'Manrope', sans-serif;
  font-size: 0.58rem;
  font-weight: 500;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(248,246,242,0.45);
  background: rgba(10,10,10,0.6);
  padding: 5px 12px;
}

.mission-single-content .mission-split__title {
  color: #F8F6F2;
  font-size: clamp(2rem, 3.5vw, 3.2rem);
}

.mission-single-content .mission-split__title em {
  color: #33BBDD;
  font-style: italic;
}

.mission-single-content .mission-split__mission {
  color: rgba(248,246,242,0.45);
  border-left-color: rgba(0,153,204,0.25);
}

.mission-single-content .mission-split__body {
  color: rgba(248,246,242,0.5);
  font-family: 'Manrope', sans-serif;
}

.mission-single-content .mission-split__divider {
  background: rgba(0,153,204,0.2);
}

.mission-single-content .btn-arrow {
  color: #0099CC !important;
}

/* ── FOOTER COLUMNS: gold headings ── */
.footer--dark-gold .footer__column-title {
  font-family: 'Manrope', sans-serif;
  font-size: 0.55rem;
  font-weight: 700;
  letter-spacing: 0.28em;
  text-transform: uppercase;
  color: #0099CC;
  margin-bottom: 1.25rem;
}

/* ── BTN GOLD FILL (for new sections) ── */
.btn-gold-fill {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  background: #0099CC;
  color: #0A0A0A;
  font-family: 'Manrope', sans-serif;
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  padding: 0.88rem 2rem;
  border: none;
  cursor: pointer;
  text-decoration: none;
  transition: background 0.25s ease;
}

.btn-gold-fill:hover { background: #33BBDD; color: #0A0A0A; }

.btn-outline-gold {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  border: 1px solid rgba(0,153,204,0.4);
  color: rgba(248,246,242,0.8);
  font-family: 'Manrope', sans-serif;
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  padding: 0.88rem 2rem;
  background: transparent;
  cursor: pointer;
  text-decoration: none;
  transition: all 0.25s ease;
}

.btn-outline-gold:hover {
  border-color: #0099CC;
  color: #0099CC;
}

/* ── REDUCED MOTION ── */
@media (prefers-reduced-motion: reduce) {
  .cinema-feature__bg,
  .cinema-feature,
  .sell-cinema,
  .mosaic-card__img,
  .section-reveal,
  [data-reveal],
  .cr-test-slide {
    transition: none !important;
    animation: none !important;
  }
}

/* =============================================================================
   PASS 5 — Major Visual Refactor
   Fonts: Gambetta (TT Ramillas proxy) + Poppins | Brand teal + B&W themes
   ============================================================================= */

/* ── FONT IMPORTS ── */
/* Gambetta (Fontshare) — closest free match to TT Ramillas. Replace with
   @font-face TT Ramillas when licensed font files are available. */
@import url('https://api.fontshare.com/v2/css?f[]=gambetta@400,500,600,700&display=swap');
/* Note: add this to <head> instead if @import causes CORS issues */

/* Override display font to Gambetta/TT Ramillas */
.crighton-page {
  --font-display: 'Gambetta', 'Cormorant Garamond', Georgia, serif;
  /* Body: Poppins — add to <head> Google Fonts, or override here */
  --font-body-cr: 'Poppins', 'Manrope', sans-serif;
}

/* Apply Poppins to body text across the page */
.crighton-page p,
.crighton-page .mission-split__body,
.crighton-page .sell-cinema__body,
.crighton-page .pathway-panel__body,
.crighton-page .work-cta__body,
.crighton-page .map-section__sidebar-sub,
.crighton-page .footer__description {
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-weight: 300;
}

/* ── COLOR THEMES ── */

/* B&W Theme (default — activate with body class .theme-bw or remove .theme-brand) */
.theme-bw {
  --cr-accent:       #FFFFFF;
  --cr-accent-dark:  #CCCCCC;
  --cr-accent-muted: rgba(255,255,255,0.12);
  --cr-accent-fill:  rgba(255,255,255,0.08);
  --cr-border:       rgba(255,255,255,0.15);
}

/* Brand Teal Theme (activate with body class .theme-brand) */
/* Teal derived from the cyan frame of the Crighton-Rinaldi neon logo */
.theme-brand {
  --cr-accent:       #00B4CC;
  --cr-accent-dark:  #0095AA;
  --cr-accent-muted: rgba(0,180,204,0.15);
  --cr-accent-fill:  rgba(0,180,204,0.08);
  --cr-border:       rgba(0,180,204,0.25);
}

/* Apply accent to hero search btn */
.theme-brand .hero__qsearch-btn,
.theme-brand .btn-primary {
  background: var(--cr-accent) !important;
  color: #0A0A0A !important;
}
.theme-brand .hero__qsearch-btn:hover,
.theme-brand .btn-primary:hover {
  background: var(--cr-accent-dark) !important;
}
.theme-brand .btn-gold-outline,
.theme-brand .btn-outline-gold {
  border-color: rgba(0,180,204,0.45) !important;
  color: var(--cr-accent) !important;
}
.theme-brand .cr-eyebrow--gold { color: var(--cr-accent) !important; }
.theme-brand .cr-stats--dark .cr-stats__number { color: var(--cr-accent) !important; }
.theme-brand .sell-stat__number { color: var(--cr-accent) !important; }
.theme-brand .map-community-item.active .map-community-item__name { color: var(--cr-accent) !important; }
.theme-brand .map-community-item.active { border-left-color: var(--cr-accent) !important; }
.theme-brand .mosaic-card__arrow { color: var(--cr-accent) !important; }
.theme-brand .testimonials-v2__card { border-top-color: var(--cr-accent) !important; }
.theme-brand .cr-progress-step.active { background: var(--cr-accent) !important; }
.theme-brand .hero__qsearch-pulse-dot { background: var(--cr-accent) !important; }

/* ── NAV — CENTER LOGO, SPLIT LINKS ── */
.crighton-page .nav__inner {
  display: grid !important;
  grid-template-columns: 1fr auto 1fr !important;
  align-items: center !important;
  gap: 0 !important;
}

.crighton-page .nav__links-left,
.crighton-page .nav__links-right {
  display: flex;
  align-items: center;
  gap: clamp(1.25rem, 2.2vw, 2rem);
}

.crighton-page .nav__links-left { justify-content: flex-start; }
.crighton-page .nav__links-right { justify-content: flex-end; }

/* Remove old single nav__links when split is active */
.crighton-page .nav__inner .nav__links { display: flex; }
.crighton-page .nav__inner .nav__actions { display: flex; }

/* Center logo in split nav */
.crighton-page .nav__inner .nav__logo {
  justify-self: center;
}

/* Phone in right nav */
.nav__phone-link {
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  color: #0099CC;
  text-decoration: none;
  white-space: nowrap;
  border: 1px solid rgba(0,153,204,0.4);
  padding: 0.45rem 1rem;
  transition: all 0.25s;
}
.nav__phone-link:hover {
  background: #0099CC;
  color: #0A0A0A;
}

/* Mobile: hide split nav on small screens, show hamburger */
@media (max-width: 900px) {
  .crighton-page .nav__inner {
    grid-template-columns: auto 1fr auto !important;
  }
  .crighton-page .nav__links-left,
  .crighton-page .nav__links-right { display: none; }
  .crighton-page .nav__mobile-toggle { display: flex !important; }
}

/* ── HERO — OAKBERRY-STYLE SEARCH PANEL ── */

/* Replace existing hero-search-strip with Oakberry panel */
.hero-search-oak {
  background: #FFFFFF;
  position: relative;
  z-index: 20;
}

.hero-search-oak__tabs {
  display: flex;
  padding: 0 clamp(1.5rem, 5vw, 4rem);
  border-bottom: 1px solid rgba(0,0,0,0.08);
}

.hero-search-oak__tab {
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: rgba(0,0,0,0.4);
  padding: 0.85rem 1.5rem;
  background: transparent;
  border: none;
  cursor: pointer;
  position: relative;
  transition: color 0.2s;
}

.hero-search-oak__tab.active {
  color: #0A0A0A;
  background: #0099CC;
  color: #0A0A0A;
}

.hero-search-oak__tab:not(.active):hover { color: #0A0A0A; }

.hero-search-oak__form {
  display: flex;
  align-items: stretch;
  padding: 0 clamp(1.5rem, 5vw, 4rem);
  height: 72px;
  gap: 0;
  border-top: none;
}

.hero-search-oak__field {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 0 1.25rem;
  border-right: 1px solid rgba(0,0,0,0.08);
  min-width: 0;
}

.hero-search-oak__field:first-child { padding-left: 0; }

.hero-search-oak__label {
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.5rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(0,0,0,0.4);
  margin-bottom: 2px;
}

.hero-search-oak__input,
.hero-search-oak__select {
  background: transparent;
  border: none;
  outline: none;
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.82rem;
  font-weight: 400;
  color: #0A0A0A;
  width: 100%;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
}

.hero-search-oak__input::placeholder { color: rgba(0,0,0,0.35); }

.hero-search-oak__submit {
  flex: 0 0 auto;
  background: #0099CC;
  color: #0A0A0A;
  border: none;
  cursor: pointer;
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  padding: 0 2.5rem;
  align-self: stretch;
  transition: background 0.25s;
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.hero-search-oak__submit:hover { background: #33BBDD; }

@media (max-width: 768px) {
  .hero-search-oak__form {
    flex-wrap: wrap;
    height: auto;
    padding: 1rem clamp(1.5rem, 5vw, 4rem);
    gap: 0.75rem;
  }
  .hero-search-oak__field {
    flex: 1 1 calc(50% - 0.4rem);
    border-right: none;
    border: 1px solid rgba(0,0,0,0.1);
    padding: 0.65rem 1rem;
    border-radius: 2px;
  }
  .hero-search-oak__submit {
    flex: 0 0 100%;
    height: 48px;
    justify-content: center;
  }
}

/* Hide old search strip when oak panel is present */
.crighton-page .hero-search-strip.hidden { display: none; }

/* ── LOGO MARQUEE ── */
.logo-marquee {
  background: #111111;
  border-top: 1px solid rgba(255,255,255,0.04);
  border-bottom: 1px solid rgba(255,255,255,0.04);
  padding: 1.25rem 0;
  overflow: hidden;
  position: relative;
}

.logo-marquee__label {
  position: absolute;
  left: clamp(1.5rem,4vw,3.5rem);
  top: 50%;
  transform: translateY(-50%);
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.5rem;
  font-weight: 700;
  letter-spacing: 0.25em;
  text-transform: uppercase;
  color: rgba(248,246,242,0.25);
  white-space: nowrap;
  z-index: 2;
  background: #111;
  padding-right: 1.5rem;
}

.logo-marquee__track {
  display: flex;
  align-items: center;
  gap: clamp(3rem, 5vw, 5rem);
  animation: marqueeScroll 28s linear infinite;
  width: max-content;
  padding-left: clamp(180px, 20vw, 260px);
}

.logo-marquee__track:hover { animation-play-state: paused; }

@keyframes marqueeScroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

.logo-marquee__item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  opacity: 0.35;
  transition: opacity 0.3s;
  white-space: nowrap;
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  color: #F8F6F2;
  text-transform: uppercase;
  flex-shrink: 0;
}

.logo-marquee__item:hover { opacity: 0.75; }

.logo-marquee__dot {
  width: 4px; height: 4px;
  border-radius: 50%;
  background: rgba(248,246,242,0.2);
  flex-shrink: 0;
}

/* Fade masks on edges */
.logo-marquee::before,
.logo-marquee::after {
  content: '';
  position: absolute;
  top: 0; bottom: 0;
  width: 180px;
  z-index: 1;
  pointer-events: none;
}
.logo-marquee::before { left: 0; background: linear-gradient(90deg, #111111 0%, transparent 100%); }
.logo-marquee::after  { right: 0; background: linear-gradient(270deg, #111111 0%, transparent 100%); }

/* ── PROPERTIES — HORIZONTAL SCROLL ── */
.cr-listing-scroll-wrap {
  overflow-x: auto;
  overflow-y: visible;
  scrollbar-width: none;
  -ms-overflow-style: none;
  cursor: grab;
  padding-bottom: 0.5rem;
}
.cr-listing-scroll-wrap::-webkit-scrollbar { display: none; }
.cr-listing-scroll-wrap:active { cursor: grabbing; }

.cr-listing-scroll-track {
  display: flex;
  gap: clamp(1rem, 1.5vw, 1.25rem);
  padding: 0 clamp(1.5rem, 5vw, 4rem);
  width: max-content;
}

/* Card sizing in scroll */
.cr-listing-scroll-track .cr-listing-card {
  flex: 0 0 clamp(260px, 22vw, 320px);
  position: relative;
  overflow: hidden;
}

/* Hover overlay — slides up from bottom */
.cr-listing-card__hover-panel {
  position: absolute;
  inset: 0;
  background: rgba(10,10,10,0.92);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 1.25rem;
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.35s ease, transform 0.35s ease;
  pointer-events: none;
}
.cr-listing-card:hover .cr-listing-card__hover-panel {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
.cr-listing-hover-price {
  font-family: 'Gambetta', 'Cormorant Garamond', serif;
  font-size: 1.35rem;
  font-weight: 600;
  color: #F8F6F2;
  margin-bottom: 0.25rem;
}
.cr-listing-hover-addr {
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.75rem;
  font-weight: 500;
  color: rgba(248,246,242,0.8);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.cr-listing-hover-city {
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.68rem;
  color: rgba(248,246,242,0.45);
  margin-bottom: 0.65rem;
}
.cr-listing-hover-details {
  display: flex;
  gap: 1rem;
  padding-top: 0.65rem;
  border-top: 1px solid rgba(255,255,255,0.1);
  margin-bottom: 0.65rem;
}
.cr-listing-hover-stat {
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.68rem;
  font-weight: 600;
  color: #0099CC;
}
.cr-listing-hover-stat span {
  display: block;
  font-weight: 300;
  color: rgba(248,246,242,0.4);
  font-size: 0.6rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.cr-listing-hover-desc {
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.7rem;
  font-weight: 300;
  color: rgba(248,246,242,0.5);
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 0.75rem;
}
.cr-listing-hover-cta {
  display: inline-block;
  background: #0099CC;
  color: #0A0A0A;
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.58rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  padding: 0.55rem 1rem;
  text-decoration: none;
  transition: background 0.2s;
}
.cr-listing-hover-cta:hover { background: #33BBDD; }

/* Card body: clean address layout */
.cr-listing-card .cr-listing-card__address {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-weight: 500;
}
.cr-listing-card .cr-listing-card__city {
  font-size: 0.72rem;
  color: rgba(0,0,0,0.4);
}
.cr-listing-card .cr-listing-card__details {
  font-weight: 600;
  font-size: 0.75rem;
  color: rgba(0,0,0,0.7);
}
.cr-listing-card .cr-listing-card__details-sep { color: rgba(0,0,0,0.2); }

/* ── MAP SECTION — GRADIENT FADES + Z-INDEX ── */
.map-section__map {
  position: relative;
}

/* Gradient fades on left and right edges of the map */
.map-section__map::before,
.map-section__map::after {
  content: '';
  position: absolute;
  top: 0; bottom: 0;
  width: 100px;
  z-index: 5;
  pointer-events: none;
}
.map-section__map::before {
  left: 0;
  background: linear-gradient(90deg, #080808 0%, transparent 100%);
}
.map-section__map::after {
  right: 0;
  background: linear-gradient(270deg, #080808 0%, transparent 100%);
}

/* Bring Mapbox navigation controls above gradient */
.map-section .mapboxgl-ctrl-top-right {
  z-index: 20 !important;
  right: 110px !important; /* avoid gradient overlap */
}
.map-section .mapboxgl-ctrl-group {
  background: rgba(10,10,10,0.85) !important;
  border: 1px solid rgba(0,153,204,0.25) !important;
}
.map-section .mapboxgl-ctrl-group button {
  background: transparent !important;
  color: rgba(248,246,242,0.7) !important;
}
.map-section .mapboxgl-ctrl-group button:hover {
  background: rgba(0,153,204,0.1) !important;
  color: #0099CC !important;
}

/* ── COMMUNITIES MOSAIC — 5-CARD LAYOUT ── */
/* Override 3-col to accommodate 5th card */
.communities-mosaic__grid {
  grid-template-columns: 1fr 1.2fr 1fr;
  grid-template-rows: auto auto;
}

/* ── SECTION HEIGHTS — Tighter proportions ── */
.crighton-page .mission-split--single { padding-top: clamp(3rem,5vw,5rem) !important; padding-bottom: clamp(3rem,5vw,5rem) !important; }
.crighton-page .ylopo-section { padding-top: clamp(3rem,5vw,5rem) !important; padding-bottom: clamp(3rem,5vw,5rem) !important; }
.crighton-page .communities-mosaic { padding-top: clamp(3rem,5vw,5rem) !important; padding-bottom: clamp(3rem,5vw,5rem) !important; }
.crighton-page .testimonials-v2 { padding-top: clamp(3rem,5vw,5rem) !important; padding-bottom: clamp(3rem,5vw,5rem) !important; }
.crighton-page .cr-team-carousel { padding: clamp(3rem,5vw,5rem) 0 !important; }
.crighton-page .work-cta { min-height: clamp(480px,55vh,620px) !important; }
.cinema-feature { min-height: 75vh !important; }
.sell-cinema { min-height: 70vh !important; }
.map-section { min-height: 560px !important; }
.map-section__map-inner { min-height: 560px !important; }

/* ── TESTIMONIALS V2 — "What Customers Are Saying" Layout ── */
.testimonials-v2 {
  background: #0f0f0f;
  padding: clamp(3.5rem,6vw,6rem) 0;
  overflow: hidden;
}

.testimonials-v2__inner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 clamp(1.5rem,5vw,4rem);
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: clamp(2rem,4vw,4rem);
  align-items: center;
}

.testimonials-v2__left {
  flex-shrink: 0;
}

.testimonials-v2__big-quote {
  font-family: 'Gambetta', 'Cormorant Garamond', serif;
  font-size: 6rem;
  line-height: 0.75;
  color: rgba(0,153,204,0.25);
  margin-bottom: 1rem;
  user-select: none;
}

.testimonials-v2__heading {
  font-family: 'Gambetta', 'Cormorant Garamond', serif;
  font-size: clamp(1.6rem,2.8vw,2.5rem);
  font-weight: 500;
  color: #F8F6F2;
  line-height: 1.2;
  margin-bottom: 2rem;
}
.testimonials-v2__heading em {
  font-style: italic;
  color: #33BBDD;
}

.testimonials-v2__nav {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.testimonials-v2__nav-btn {
  width: 44px; height: 44px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,0.18);
  background: transparent;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer;
  color: rgba(248,246,242,0.55);
  transition: all 0.25s;
  font-size: 1rem;
}
.testimonials-v2__nav-btn:hover {
  border-color: #0099CC;
  color: #0099CC;
}

.testimonials-v2__nav-line {
  width: 32px; height: 1px;
  background: rgba(255,255,255,0.18);
}

/* Cards track */
.testimonials-v2__cards-wrap {
  overflow: hidden;
  position: relative;
}

.testimonials-v2__cards-track {
  display: flex;
  gap: 1.25rem;
  transition: transform 0.55s cubic-bezier(0.4,0,0.2,1);
}

.testimonials-v2__card {
  flex: 0 0 clamp(260px, 30vw, 320px);
  background: #1a1a1a;
  border: 1px solid rgba(255,255,255,0.05);
  border-top: 2px solid #0099CC;
  padding: 1.75rem;
}

.testimonials-v2__stars {
  color: #F4C430;
  font-size: 0.85rem;
  letter-spacing: 2px;
  margin-bottom: 1rem;
}

.testimonials-v2__quote {
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.82rem;
  font-weight: 300;
  line-height: 1.75;
  color: rgba(248,246,242,0.65);
  margin-bottom: 1.5rem;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.testimonials-v2__author {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.testimonials-v2__avatar {
  width: 38px; height: 38px;
  border-radius: 50%;
  background: rgba(0,153,204,0.15);
  border: 1px solid rgba(0,153,204,0.25);
  display: flex; align-items: center; justify-content: center;
  font-family: 'Gambetta', serif;
  font-size: 0.85rem;
  font-weight: 600;
  color: #0099CC;
  flex-shrink: 0;
}

.testimonials-v2__name {
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.78rem;
  font-weight: 600;
  color: #F8F6F2;
}
.testimonials-v2__date {
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.62rem;
  color: rgba(248,246,242,0.3);
  margin-top: 1px;
}

@media (max-width: 800px) {
  .testimonials-v2__inner {
    grid-template-columns: 1fr;
  }
  .testimonials-v2__left {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
  }
  .testimonials-v2__big-quote { display: none; }
}

/* ── TEAM — Remove badge, active gradient background ── */

/* Remove the black name badge overlay */
.cr-team-item::after { display: none !important; }

/* Active item: radial gradient glow behind avatar */
.cr-team-item.active .cr-team-avatar {
  position: relative;
}
.cr-team-item.active .cr-team-avatar::before {
  content: '';
  position: absolute;
  inset: -24px;
  border-radius: 50%;
  background: radial-gradient(circle at center, rgba(0,153,204,0.18) 0%, transparent 70%);
  z-index: -1;
  pointer-events: none;
}

/* Active: stage background gradient behind active avatar (via JS class) */
.cr-team-stage.has-active-gradient::before {
  content: '';
  position: absolute;
  width: 320px; height: 320px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0,153,204,0.12) 0%, transparent 65%);
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  z-index: 0;
  transition: transform 0.58s cubic-bezier(0.4,0,0.2,1);
}

/* Name below avatar (was a badge, now clean text below) */
.cr-team-info-name {
  font-family: 'Gambetta', 'Cormorant Garamond', serif !important;
}

/* ── WORK CTA — 2-COL WITH CONTACT FORM ── */
.work-cta__inner {
  grid-template-columns: 1fr 1fr !important;
  gap: clamp(3rem, 6vw, 6rem) !important;
  align-items: center !important;
}

/* Contact form */
.work-cta__form {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  padding: clamp(1.75rem, 3vw, 2.5rem);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.work-cta__form-title {
  font-family: 'Gambetta', 'Cormorant Garamond', serif;
  font-size: 1.25rem;
  font-weight: 500;
  color: #F8F6F2;
  margin-bottom: 1.5rem;
  letter-spacing: -0.01em;
}

.form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
}

.form-field {
  display: flex;
  flex-direction: column;
  margin-bottom: 0.75rem;
}

.form-field label {
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.5rem;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.35);
  margin-bottom: 0.4rem;
}

.form-field input,
.form-field textarea,
.form-field select {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1);
  color: #F8F6F2;
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.82rem;
  font-weight: 300;
  padding: 0.65rem 0.85rem;
  outline: none;
  transition: border-color 0.25s;
  border-radius: 0;
  width: 100%;
}
.form-field input:focus,
.form-field textarea:focus {
  border-color: rgba(0,153,204,0.55);
}
.form-field input::placeholder,
.form-field textarea::placeholder {
  color: rgba(255,255,255,0.22);
}
.form-field textarea {
  resize: vertical;
  min-height: 90px;
}

.form-submit {
  width: 100%;
  background: #0099CC;
  color: #0A0A0A;
  border: none;
  cursor: pointer;
  font-family: 'Poppins', 'Manrope', sans-serif;
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  padding: 0.9rem;
  margin-top: 0.25rem;
  transition: background 0.25s;
}
.form-submit:hover { background: #33BBDD; }

@media (max-width: 900px) {
  .work-cta__inner { grid-template-columns: 1fr !important; }
  .form-row { grid-template-columns: 1fr; }
}

/* ── HERO HEIGHT ── */
.crighton-page .hero {
  min-height: calc(100vh - 160px) !important;
}

/* =============================================================================
   PASS 6 — Nav Fix, Brand Colors, Auto-Testimonial, Communities Polish
   ============================================================================= */

/* ── BRAND COLOR UPDATE: Blue-Teal from logo frame (#0099CC) ── */
.theme-brand {
  --cr-accent:       #0099CC !important;
  --cr-accent-dark:  #007AA3 !important;
  --cr-accent-muted: rgba(0,153,204,0.15) !important;
  --cr-accent-fill:  rgba(0,153,204,0.08) !important;
  --cr-border:       rgba(0,153,204,0.25) !important;
}

/* Cascade brand teal to all accent usages */
.theme-brand .cr-eyebrow--gold { color: #0099CC !important; }
.theme-brand .cr-stats--dark .cr-stats__number { color: #0099CC !important; }
.theme-brand .sell-stat__number { color: #0099CC !important; }
.theme-brand .sell-cinema .btn-primary,
.theme-brand .hero__qsearch-btn,
.theme-brand .btn-primary,
.theme-brand .form-submit,
.theme-brand .hero-search-oak__submit { background: #0099CC !important; color: #fff !important; }
.theme-brand .mosaic-card__arrow { color: #0099CC !important; }
.theme-brand .testimonials-v2__card { border-top-color: #0099CC !important; }

/* ── NAV: COMPACT LOGO-LEFT FLEX LAYOUT ── */
html body.crighton-page .nav { padding: 0; }
html body.crighton-page .nav__inner {
  display: flex !important;
  grid-template-columns: unset !important;
  align-items: center !important;
  gap: 0 !important;
  padding: 0 clamp(1.5rem, 4vw, 3rem) !important;
  height: 60px !important;
}
html body.crighton-page .nav__links { display: flex !important; align-items: center; gap: clamp(1rem,2vw,1.75rem); margin-left: auto; }
html body.crighton-page .nav__actions { display: flex !important; align-items: center; gap: 1rem; margin-left: 1.5rem; }
html body.crighton-page .nav__links-left,
html body.crighton-page .nav__links-right {
  display: flex !important;
  align-items: center;
  gap: clamp(1.25rem, 2vw, 1.75rem);
}
html body.crighton-page .nav__links-left { justify-content: flex-start; }
html body.crighton-page .nav__links-right { justify-content: flex-end; }
html body.crighton-page .nav__logo { justify-self: center; }

/* Phone link: same font-size as nav__link */
.nav__phone-link {
  font-family: 'Poppins', 'Manrope', sans-serif !important;
  font-size: 0.63rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: rgba(248,246,242,0.62) !important;
  text-decoration: none;
  border: none !important;
  padding: 0 !important;
  background: transparent !important;
  transition: color 0.2s;
}
.nav__phone-link:hover { color: #0099CC !important; background: transparent !important; }
.nav.scrolled .nav__phone-link { color: rgba(248,246,242,0.55) !important; }
.nav.scrolled .nav__phone-link:hover { color: #0099CC !important; }

/* Logo size */
html body.crighton-page .nav__logo-img {
  height: 100px !important;
  width: auto !important;
  max-width: none !important;
}

/* Mobile: show hamburger only */
@media (max-width: 900px) {
  html body.crighton-page .nav__inner {
    grid-template-columns: auto 1fr auto !important;
    height: 56px !important;
  }
  html body.crighton-page .nav__links-left,
  html body.crighton-page .nav__links-right { display: none !important; }
  html body.crighton-page .nav__menu-toggle { display: flex !important; }
  html body.crighton-page .nav__phone-link { display: none !important; }
}

/* ── SEARCH TABS: refined style ── */
.hero-search-oak__tabs {
  padding: 0 clamp(1.5rem,5vw,4rem) !important;
  background: #f7f7f7;
  border-bottom: 1px solid rgba(0,0,0,0.07) !important;
  gap: 0 !important;
}
.hero-search-oak__tab {
  padding: 0.8rem 1.75rem !important;
  border-radius: 0 !important;
  font-size: 0.72rem !important;
  border-bottom: 2px solid transparent !important;
  transition: all 0.2s !important;
}
.hero-search-oak__tab:not(.active) { background: transparent; color: rgba(0,0,0,0.4); }
.hero-search-oak__tab:not(.active):hover { color: #0A0A0A; border-bottom-color: rgba(0,0,0,0.15) !important; }
.hero-search-oak__tab.active {
  background: transparent !important;
  color: #0A0A0A !important;
  border-bottom: 2px solid #0099CC !important;
}
.hero-search-oak__form { height: 76px !important; }
.hero-search-oak__field { padding: 0 1.5rem !important; }
.hero-search-oak__field:first-child { padding-left: clamp(1.5rem,5vw,4rem) !important; }
.hero-search-oak__submit {
  min-width: 140px !important;
  font-size: 0.7rem !important;
  letter-spacing: 0.2em !important;
}

/* ── MARQUEE: Bigger section, cleaner logo items ── */
.logo-marquee {
  padding: 2rem 0 !important;
}
.logo-marquee__item {
  font-family: 'Poppins', 'Manrope', sans-serif !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  opacity: 0.4 !important;
  display: flex;
  align-items: center;
  gap: 0.6rem;
}
.logo-marquee__item img {
  height: 22px;
  width: auto;
  object-fit: contain;
  filter: brightness(0) invert(1);
  opacity: 0.6;
}
.logo-marquee__item:hover { opacity: 0.85 !important; }

/* ── COMMUNITIES MOSAIC: Center heading, clean modern design ── */
.communities-mosaic__header {
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 1rem !important;
  margin-bottom: clamp(2rem,3.5vw,3.5rem) !important;
}
.communities-mosaic__header .section-header__heading,
.communities-mosaic__header .sec-h2 {
  text-align: center;
}
.communities-mosaic__footer { margin-top: clamp(1.5rem,2.5vw,2.5rem) !important; }

/* Mosaic cards: reduced gap, subtle border */
.communities-mosaic__grid { gap: 4px !important; }
.mosaic-card__label { padding: clamp(1rem,2vw,1.5rem) !important; }
.mosaic-card__name { font-size: clamp(1.1rem,2vw,1.8rem) !important; }
.mosaic-card--tall .mosaic-card__name { font-size: clamp(1.5rem,2.8vw,2.5rem) !important; }

/* ── TESTIMONIALS AUTO-SCROLL ── */
/* Override V2 carousel with continuous auto-scroll marquee */
.testimonials-v2 { overflow: hidden !important; }
.testimonials-v2__cards-wrap { overflow: visible !important; }

.testimonials-v2__cards-track {
  display: flex !important;
  gap: 1.25rem !important;
  transition: none !important;
  animation: testAutoScroll 35s linear infinite !important;
  width: max-content !important;
}
.testimonials-v2__cards-track:hover { animation-play-state: paused !important; }

@keyframes testAutoScroll {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}

/* Card styles for auto-scroll */
.testimonials-v2__card {
  flex: 0 0 300px !important;
  min-width: 0 !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.35) !important;
}
.testimonials-v2__quote {
  -webkit-line-clamp: 5 !important;
  font-size: 0.8rem !important;
}

/* ── HERO: More top spacing for content ── */
.crighton-page .hero__content {
  padding-top: clamp(180px, 24vh, 260px) !important;
  padding-bottom: clamp(100px, 14vh, 160px) !important;
}

/* ── LISTINGS GRID: Tighter address / clean ── */
.cr-listing-card__price { margin-bottom: 0.3rem !important; }
.cr-listing-card__address {
  font-size: 0.8rem !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  margin-bottom: 0.1rem !important;
}
.cr-listing-card__city {
  font-size: 0.72rem !important;
  margin-bottom: 0.7rem !important;
}
.cr-listing-card__details {
  font-weight: 600 !important;
  font-size: 0.75rem !important;
  color: rgba(0,0,0,0.7) !important;
}
.cr-listing-card__body { padding: 1rem 1.25rem 1.25rem !important; }

/* Sell cinema body optimized */
.sell-cinema__body { max-width: 500px !important; }

/* =============================================================================
   PASS 7 — Full Overhaul: Nav, Themes, Grid Carousel, Testimonials, Map
   ============================================================================= */

/* ── CSS CUSTOM PROPERTY SYSTEM ── */
:root {
  /* Brand blue (from logo cyan frame) */
  --accent:       #0099CC;
  --accent-dark:  #007AA3;
  --accent-light: #33BBDD;
  --accent-rgb:   0, 153, 204;
  --accent-muted: rgba(0,153,204,0.14);
  --accent-border:rgba(0,153,204,0.28);
}

/* B&W Theme — charcoal/white palette, no blue accent */
.theme-bw {
  --accent:       #1a1a1a;
  --accent-dark:  #000000;
  --accent-light: #444444;
  --accent-rgb:   26,26,26;
  --accent-muted: rgba(26,26,26,0.08);
  --accent-border:rgba(26,26,26,0.2);
}

.theme-bw .btn-primary,
.theme-bw .hero-search-oak__submit,
.theme-bw .form-submit,
.theme-bw .btn-gold-fill {
  background: #1a1a1a !important;
  color: #F8F6F2 !important;
}
.theme-bw .btn-primary:hover,
.theme-bw .hero-search-oak__submit:hover { background: #333 !important; }
.theme-bw .cr-stats--dark .cr-stats__number { color: #F8F6F2 !important; }
.theme-bw .testimonials-v2__stars { color: #888 !important; }
.theme-bw .sell-stat__number { color: #F8F6F2 !important; }
.theme-bw .cr-eyebrow--gold { color: rgba(248,246,242,0.5) !important; }
.theme-bw .mosaic-card__arrow { color: rgba(248,246,242,0.7) !important; }

/* ── NAV: COMPACT LOGO-LEFT (back to original design, more compact) ── */
/* Remove the split-grid layout completely */
html body.crighton-page .nav { padding: 0; height: 60px !important; }
html body.crighton-page .nav.scrolled { height: 60px !important; }

/* Force back to flex (original nav style) */
html body.crighton-page .nav__inner {
  display: flex !important;
  grid-template-columns: unset !important;
  align-items: center !important;
  padding: 0 clamp(1.5rem, 4vw, 3.5rem) !important;
  height: 60px !important;
  gap: 0 !important;
}

/* Hide split nav elements, show original links */
html body.crighton-page .nav__links-left,
html body.crighton-page .nav__links-right { display: none !important; }
html body.crighton-page .nav__links { display: flex !important; align-items: center; gap: clamp(1rem, 2vw, 1.75rem); margin-left: auto; }
html body.crighton-page .nav__actions { display: flex !important; align-items: center; gap: 1rem; margin-left: 1.5rem; }
html body.crighton-page .nav__logo { flex-shrink: 0; margin-right: 0; }
html body.crighton-page .nav__logo-img { height: 100px !important; width: auto !important; max-width: none !important; }
html body.crighton-page .nav__link { font-size: .88rem !important; letter-spacing: .1em !important; font-weight: 500 !important; }
html body.blog-post-page .nav__link { font-size: .88rem !important; letter-spacing: .1em !important; }
html body.crighton-page .btn-gold-outline.btn-sm { font-size: 0.62rem !important; padding: 8px 18px !important; letter-spacing: 0.1em !important; }

/* ── HERO: More top spacing, centered content ── */
.crighton-page .hero__content {
  padding-top: clamp(160px, 22vh, 240px) !important;
  padding-bottom: clamp(80px, 12vh, 140px) !important;
}

/* ── SEARCH PANEL: Overlapping hero bottom ── */
.hero-search-oak {
  margin-top: -1px;
  box-shadow: 0 8px 40px rgba(0,0,0,0.25);
  position: relative;
  z-index: 20;
  border-top: 3px solid #0099CC;
}
.hero-search-oak__tab.active {
  background: #0099CC !important;
  color: #fff !important;
  border-bottom: none !important;
}
.theme-bw .hero-search-oak__tab.active {
  background: #1a1a1a !important;
  color: #F8F6F2 !important;
}
.hero-search-oak__submit {
  background: #0099CC !important;
  color: #fff !important;
  min-width: 130px !important;
  font-size: 0.68rem !important;
}
.hero-search-oak__submit:hover { background: #007AA3 !important; }

/* ── TRUSTED BY MARQUEE: Taller, more visible ── */
.logo-marquee { padding: 2.5rem 0 !important; }
.logo-marquee__label { font-size: 0.52rem !important; }
.logo-marquee__item { opacity: 0.55 !important; font-size: 0.75rem !important; letter-spacing: 0.08em !important; }
.logo-marquee__item img { height: 28px !important; filter: brightness(0) invert(1); opacity: 0.7; }
.logo-marquee__item:hover { opacity: 0.9 !important; }

/* ── GRID CAROUSEL FOR LISTINGS ── */
.cr-listings-carousel {
  position: relative;
}
.cr-listings-carousel__viewport {
  overflow: hidden;
}
.cr-listings-carousel__track {
  display: flex;
  transition: transform 0.5s cubic-bezier(0.4,0,0.2,1);
}
.cr-listings-carousel__slide {
  flex: 0 0 100%;
  min-width: 0;
}
.cr-listings-carousel__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(1rem, 2vw, 1.5rem);
}
@media (max-width: 900px) { .cr-listings-carousel__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .cr-listings-carousel__grid { grid-template-columns: 1fr; } }

/* Carousel nav arrows */
.cr-carousel-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 44px; height: 44px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,0.15);
  background: rgba(10,10,10,0.8);
  color: #F8F6F2;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer;
  z-index: 5;
  transition: all 0.25s;
  font-size: 1.1rem;
}
.cr-carousel-btn:hover { background: #0099CC; border-color: #0099CC; }
.cr-carousel-btn--prev { left: -22px; }
.cr-carousel-btn--next { right: -22px; }
@media (max-width: 700px) {
  .cr-carousel-btn--prev { left: 0; }
  .cr-carousel-btn--next { right: 0; }
}

/* Carousel dots */
.cr-carousel-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin-top: 2rem;
}
.cr-carousel-dot {
  width: 7px; height: 7px;
  border-radius: 50%;
  background: rgba(255,255,255,0.18);
  border: none; cursor: pointer; padding: 0;
  transition: all 0.3s;
}
.cr-carousel-dot.active {
  background: #0099CC;
  width: 22px;
  border-radius: 3px;
}

/* Listing card metadata: single-line price/details */
.cr-listing-meta-line {
  font-family: 'Poppins','Manrope',sans-serif;
  font-size: 0.72rem;
  font-weight: 600;
  color: rgba(0,0,0,0.6);
  margin-bottom: 0.5rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.cr-listing-card__address {
  font-size: 0.82rem !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  margin-bottom: 0.1rem !important;
}
.cr-listing-card__city {
  font-size: 0.72rem !important;
  color: rgba(0,0,0,0.4) !important;
  margin-bottom: 0.5rem !important;
}

/* ── EXPLORE NEVADA (MAP SECTION): Expanded gradient overlays ── */
/* Extend gradient well beyond the map on both sides */
.map-section__map::before,
.map-section__map::after {
  width: 160px !important;
}
.map-section__map::before {
  background: linear-gradient(90deg, #080808 0%, rgba(8,8,8,0.7) 70%, transparent 100%) !important;
}
.map-section__map::after {
  background: linear-gradient(270deg, #080808 0%, rgba(8,8,8,0.7) 70%, transparent 100%) !important;
}
/* Center the map section header */
.map-section__map-header {
  text-align: center !important;
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}
/* Map header explore button */
.map-section__explore-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: 'Poppins','Manrope',sans-serif;
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #0099CC;
  margin-top: 0.75rem;
  text-decoration: none;
  transition: gap 0.2s;
}
.map-section__explore-btn:hover { gap: 0.85rem; }

/* ── TESTIMONIALS V2: Fix overlap, clean layout ── */
/* Full-width two-row layout: heading row then cards row */
.testimonials-v2 {
  display: block !important;
  overflow: hidden;
}
.testimonials-v2__inner {
  display: block !important;
  padding: 0 !important;
}
/* TOP ROW: heading section */
.testimonials-v2__left {
  padding: clamp(2.5rem,5vw,4rem) clamp(1.5rem,6vw,5rem) clamp(1.5rem,3vw,2.5rem) !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 2rem !important;
}
/* BOTTOM ROW: auto-scrolling cards */
.testimonials-v2__cards-wrap {
  overflow: hidden !important;
  width: 100% !important;
  padding: 0 0 clamp(2.5rem,5vw,4rem) 0 !important;
}
.testimonials-v2__cards-track {
  display: flex !important;
  gap: 1.25rem !important;
  width: max-content !important;
  padding: 0.5rem clamp(1.5rem,6vw,5rem) 0.5rem !important;
}
/* Cards are readable, not too small */
.testimonials-v2__card {
  flex: 0 0 300px !important;
  min-width: 0 !important;
  background: #1a1a1a !important;
  border-top: 2px solid #0099CC !important;
  padding: 1.5rem !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.4) !important;
}
.testimonials-v2__quote {
  -webkit-line-clamp: 4 !important;
  font-size: 0.82rem !important;
  line-height: 1.7 !important;
}
/* Keep heading big and editorial */
.testimonials-v2__heading {
  font-size: clamp(1.8rem,3vw,2.8rem) !important;
  line-height: 1.15 !important;
  margin-bottom: 0 !important;
}
.testimonials-v2__big-quote {
  font-size: 5rem !important;
  line-height: 0.8 !important;
  margin-bottom: 0.5rem !important;
}

/* ── MISSION SECTION: Contain image properly ── */
.mission-single-img img {
  object-fit: contain !important;
  object-position: center !important;
  background: rgba(10,10,10,0.5);
  aspect-ratio: 16/10 !important;
}

/* ── COMMUNITY PAGE: Update gold references ── */
.community-hero__stat-value { color: #0099CC !important; }

/* ── REDUCED MOTION ── */
@media (prefers-reduced-motion: reduce) {
  .testimonials-v2__cards-track { animation: none !important; }
  .logo-marquee__track { animation: none !important; }
  .cr-listings-carousel__track { transition: none !important; }
}

/* =============================================================================
   PASS 8 — Inter Headline Font + Remove All Italics
   All headings: Inter. Differentiate text with font-weight, not italic.
   ============================================================================= */

/* ── FONT VARIABLE OVERRIDE ── */
.crighton-page {
  --font-display: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  --font-body:    'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
}

/* ── APPLY INTER TO ALL HEADINGS ── */
.crighton-page h1,
.crighton-page h2,
.crighton-page h3,
.crighton-page h4,
.crighton-page h5,
.crighton-page h6,
.crighton-page .hero__headline,
.crighton-page .hero__headline-line--italic,
.crighton-page .hero__headline-line--bold,
.crighton-page .work-cta__title,
.crighton-page .mission-split__title,
.crighton-page .section-header__heading,
.crighton-page .testimonials-v2__heading,
.crighton-page .cr-test-text,
.crighton-page .cr-team-info-name,
.crighton-page .cinema-feature__content h2,
.crighton-page .sell-cinema h2,
.crighton-page .communities-mosaic__header h2,
.crighton-page .map-section__map-header > div,
.crighton-page .map-section__sidebar-title,
.crighton-page .ylopo-fallback__title,
.crighton-page .hero__qsearch-bottom,
.crighton-page .work-cta__form-title {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-style: normal !important;
}

/* ── STRIP ALL ITALIC GLOBALLY ── */
.crighton-page em,
.crighton-page i,
.crighton-page .hero__headline-line--italic,
.crighton-page .mission-split__title em,
.crighton-page .mission-split__mission,
.crighton-page .work-cta__title em,
.crighton-page .section-header__heading em,
.crighton-page .testimonials-v2__heading em,
.crighton-page .cr-test-text,
.crighton-page .cr-listing-card__price,
.crighton-page .map-section__map-header em,
.crighton-page .map-section__sidebar-title em,
.crighton-page .cinema-feature__content h2 em,
.crighton-page .cinema-feature__content h2 span,
.crighton-page .sell-cinema h2 em,
.crighton-page .sell-cinema h2 span {
  font-style: normal !important;
}

/* ── WEIGHT DIFFERENTIATION (replaces italic variation) ── */

/* Hero headline: main word = 800 (ExtraBold), label line = 300 (Light) */
.crighton-page .hero__headline-line--bold  { font-weight: 800 !important; letter-spacing: -0.04em !important; }
.crighton-page .hero__headline-line--italic { font-weight: 300 !important; letter-spacing: -0.01em !important; color: rgba(248,246,242,0.75) !important; }

/* Section headings: strong word bold, accent word semibold lighter */
.crighton-page .section-header__heading,
.crighton-page .mission-split__title,
.crighton-page .work-cta__title,
.crighton-page .testimonials-v2__heading { font-weight: 700 !important; }

.crighton-page .section-header__heading em,
.crighton-page .mission-split__title em,
.crighton-page .work-cta__title em,
.crighton-page .testimonials-v2__heading em { font-weight: 400 !important; color: rgba(248,246,242,0.6) !important; }

/* Testimonial quote text */
.crighton-page .cr-test-text { font-weight: 400 !important; font-size: clamp(1rem, 1.8vw, 1.3rem) !important; }

/* Mission pull-quote */
.crighton-page .mission-split__mission { font-style: normal !important; font-weight: 300 !important; font-size: clamp(1rem, 1.5vw, 1.2rem) !important; }

/* Map / community section headings */
.crighton-page .map-section__map-header > div { font-weight: 700 !important; font-style: normal !important; }
.crighton-page .map-section__map-header em { font-weight: 400 !important; font-style: normal !important; }
.crighton-page .map-section__sidebar-title { font-style: normal !important; font-weight: 700 !important; }
.crighton-page .map-section__sidebar-title em { font-weight: 300 !important; font-style: normal !important; }

/* Cinema/sell headings */
.crighton-page .cinema-feature__content h2 span,
.crighton-page .sell-cinema h2 span { font-style: normal !important; }

/* Team name */
.crighton-page .cr-team-info-name { font-weight: 700 !important; letter-spacing: -0.03em !important; }

/* Eyebrow labels stay Inter, thin */
.crighton-page .cr-eyebrow--gold,
.crighton-page .cr-eyebrow,
.crighton-page .section-header__eyebrow {
  font-family: 'Inter', sans-serif !important;
  font-style: normal !important;
  font-weight: 600 !important;
}

/* Also remove italic from community page */
.community-page em,
.community-page i,
.community-page .community-hero__h1 em,
.community-page h1 em,
.community-page h2 em {
  font-style: normal !important;
  font-weight: 400 !important;
}

/* =============================================================================
   PASS 9 — Unified Headline Size + Weight-Only Hierarchy
   One size for all section headings. Font-weight differentiates, not size.
   ============================================================================= */

/* ── SINGLE CONSISTENT HEADLINE SIZE ── */
/* All h1/h2 across every section share this one size scale */
.crighton-page h1,
.crighton-page h2,
.crighton-page .hero__headline,
.crighton-page .work-cta__title,
.crighton-page .mission-split__title,
.crighton-page .section-header__heading,
.crighton-page .testimonials-v2__heading,
.crighton-page .cinema-feature__content h2,
.crighton-page .sell-cinema h2,
.crighton-page .communities-mosaic__header h2,
.crighton-page .map-section__map-header > div,
.crighton-page .ylopo-section .section-header__heading,
.crighton-page .cr-team-carousel .section-header__heading,
.crighton-page .pathway-panel__title,
.crighton-page .work-cta__title {
  font-size: clamp(1.6rem, 2.4vw, 2.4rem) !important;
  line-height: 1.2 !important;
  letter-spacing: -0.02em !important;
  font-family: 'Inter', sans-serif !important;
  font-style: normal !important;
}

/* Hero headline: slightly larger since it is the page's one focal point */
.crighton-page .hero__headline {
  font-size: clamp(2rem, 3.5vw, 3.5rem) !important;
  line-height: 1.1 !important;
}

/* Weight differentiation within headings */
.crighton-page .hero__headline-line--bold  { font-weight: 800 !important; }
.crighton-page .hero__headline-line--italic { font-weight: 300 !important; color: rgba(248,246,242,0.65) !important; }

/* Section heading primary words: bold */
.crighton-page h2,
.crighton-page .section-header__heading,
.crighton-page .mission-split__title,
.crighton-page .work-cta__title,
.crighton-page .testimonials-v2__heading { font-weight: 700 !important; }

/* Secondary/accent words within headings: regular weight */
.crighton-page h2 em,
.crighton-page .section-header__heading em,
.crighton-page .mission-split__title em,
.crighton-page .work-cta__title em,
.crighton-page .testimonials-v2__heading em {
  font-weight: 400 !important;
  font-style: normal !important;
  color: rgba(248,246,242,0.55) !important;
}

/* Dark-bg sections: em gets lighter shade */
.crighton-page .communities-mosaic .section-header__heading em,
.crighton-page .map-section__map-header > div em,
.crighton-page .ylopo-section .section-header__heading em {
  color: rgba(248,246,242,0.5) !important;
}

/* Light-bg sections: em gets muted dark */
.crighton-page .team-section .section-header__heading em,
.crighton-page .mission-split--single .mission-split__title em {
  color: rgba(10,10,10,0.45) !important;
}

/* Sub-headings stay smaller — eyebrows, card titles, sidebar titles */
.crighton-page .cr-eyebrow--gold,
.crighton-page .cr-eyebrow,
.crighton-page .section-header__eyebrow {
  font-size: 0.6rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.28em !important;
}

/* Testimonial section heading matches the unified size */
.crighton-page .testimonials-v2__heading {
  font-size: clamp(1.6rem, 2.4vw, 2.4rem) !important;
}

/* =============================================================================
   PASS 10 — Restore white mission layout + pathway panels
   ============================================================================= */

/* Mission: single large image (override 3-col grid to 1-col) */
.crighton-page .mission-img-grid {
  grid-template-columns: 1fr !important;
  grid-template-rows: 1fr !important;
  height: clamp(380px, 50vw, 560px) !important;
}
.crighton-page .mission-img-grid__secondary,
.crighton-page .mission-img-grid__tertiary { display: none !important; }
.crighton-page .mission-img-grid__primary { grid-row: 1 !important; border-radius: 2px; }
.crighton-page .mission-img-grid__primary img { border-radius: 2px; }
.crighton-page .mission-split__visual { transform: none !important; padding-bottom: 0 !important; }
.crighton-page .mission-split__img-frame { transform: none !important; }
.crighton-page .mission-split__img-accent { display: none !important; }

/* Mission: white background, black text */
.crighton-page .mission-split { background: #FFFFFF !important; }
.crighton-page .mission-split__title { color: #0A0A0A !important; font-weight: 700 !important; }
.crighton-page .mission-split__title em { color: #0A0A0A !important; font-style: normal !important; font-weight: 400 !important; }
.crighton-page .mission-split__body { color: rgba(10,10,10,0.6) !important; }
.crighton-page .mission-split .btn-arrow { color: #0A0A0A !important; }
.crighton-page .mission-split .btn-arrow:hover { color: rgba(0,153,204,1) !important; }
.crighton-page .mission-split .cr-eyebrow { color: #0099CC !important; }
.crighton-page .mission-split .tag-gold { color: #0099CC !important; border-color: rgba(0,153,204,0.3) !important; }

/* Pathway panels: override font to Inter, no italic */
.crighton-page .pathway-panel__title {
  font-family: 'Inter', sans-serif !important;
  font-style: normal !important;
  font-weight: 700 !important;
  font-size: clamp(1.6rem, 2.4vw, 2.4rem) !important;
  line-height: 1.2 !important;
  letter-spacing: -0.02em !important;
}
.crighton-page .pathway-panel__eyebrow {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.6rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  color: rgba(248,246,242,0.5) !important;
  margin-bottom: 1rem !important;
}
.crighton-page .pathway-panel__body {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.88rem !important;
  line-height: 1.75 !important;
  font-weight: 300 !important;
}

/* Map section heading: Inter, no italic */
.crighton-page .map-section__map-header > div {
  font-family: 'Inter', sans-serif !important;
  font-style: normal !important;
}
.crighton-page .map-section__map-header em {
  font-style: normal !important;
  color: #0099CC !important;
  font-weight: 400 !important;
}
