@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap");
@import url("https://kunversion-frontend-custom.s3.amazonaws.com/components/main/modules/search-bar/minimal.ps.css");

:root {
  /* ── Fonts ── */
  --cp-heading-font: "Montserrat", sans-serif;
  --cp-text-font: "Montserrat", sans-serif;

  --color-logo: url("https://dtzulyujzhqiu.cloudfront.net/royallepagetrilandrealty1884/images/1789589158_CUVHt6TbqZde40MZDH3g6xZd3NEqwvqBV69b72IJ.png");
  --white-logo: url("https://dtzulyujzhqiu.cloudfront.net/royallepagetrilandrealty1884/images/1789589192_vNuxgFPWoHy13FD1qWbAA8iF4IJQ2l4AvFTPQ8vI.png");

  /* ── Brand ── */
  --cp-primary: #000;
  --cp-accent: #ea002a;
  --cp-on-primary: #ffffff;
  --cp-radius: 10px;
  --cp-gray: #b4b4b4;

  /* ── Emphasis ── */
  --cp-emphasis-color: var(--cp-accent);
  --cp-emphasis-style: italic;
  --cp-eyebrow-color: var(--cp-accent);

  /* ── Surfaces ── */
  --cp-rule-color: rgba(37, 99, 235, 0.22);
  --cp-card-radius: 0px;
  --cp-card-shadow: 0 8px 32px rgba(37, 99, 235, 0.12);

  /* ── Section background ── */
  --cp-bg-warm: #f8fafc;
  --cp-bg-tint: #f8fafc;
  --cp-bg-cool: #b4b4b4;
  --cp-bg-dark: #000;
  --cp-bg-charcoal: #1e293b;
  --cp-bg-navy: #0f172a;
  --cp-bg-ink: #000;

  /* ── Typography  ── */
  --cp-h2-size: clamp(2rem, 3.5vw, 3.2rem);
  --cp-h2-weight: 700;
  --cp-h2-tracking: -0.02em;
  --cp-h2-transform: none;
  --cp-h2-line-height: 1.15;
  --cp-h2-eyebrow-size: 0.68rem;
  --cp-h2-eyebrow-weight: 600;
  --cp-h2-eyebrow-tracking: 0.2em;
  --cp-h2-eyebrow-transform: uppercase;

  --cp-h3-size: clamp(1.1rem, 1.8vw, 1.4rem);
  --cp-h3-weight: 600;
  --cp-h3-tracking: -0.01em;
  --cp-h3-transform: none;

  --cp-h4-size: 0.72rem;
  --cp-h4-weight: 600;
  --cp-h4-tracking: 0.15em;
  --cp-h4-transform: uppercase;

  --cp-p-size: 1rem;
  --cp-p-weight: 400;
  --cp-p-line-height: 1.8;
  --cp-p-color: #444;

  /* Shared roles */
  --cp-name-weight: 600;
  --cp-name-tracking: 0.02em;
  --cp-meta-color: var(--cp-primary);
  --cp-meta-size: 0.72rem;
  --cp-meta-weight: 600;
  --cp-meta-tracking: 0.12em;
  --cp-meta-transform: uppercase;

  /* Animated Stats */
  --cp-stat-number-color: var(--cp-primary);
  --cp-stat-number-weight: 700;

  /* ── Header ── */
  --cp-header-bg: transparent;
  --cp-header-scroll-bg: #ffffff;
  --cp-header-link-color: #ffffff;
  --cp-header-scroll-link-color: #0f172a;
  --cp-header-burger-color: #ffffff;
  --cp-header-burger-scroll-color: #0f172a;
  --cp-header-container-width: 1440px;
  --cp-header-link-weight: 500;
  --cp-header-link-letter-spacing: 0.02em;
  --cp-header-link-transform: none;

  /* ── Logos ── */
  --home-primary-logo_max-width: 250px;
  --home-primary-logo-scroll_max-width: 250px;
  --home-primary-logo_filter: unset;
  --home-primary-logo-scroll_filter: none;
  --inner-primary-logo_max-width: 250px;

  /* ── Hero ── */
  --cp-hero-header-offset: 4rem;
  --cp-cover-margin-top: -170px;
  --cp-cover-height: 720px;
  --cp-cover-height-full: 750px;
  --cp-cover-overlay: rgba(2, 6, 23, 0.6);
  --cp-cover-overlay-dark: rgba(15, 23, 42, 0.62);
  --cp-cover-title-size: clamp(2rem, 4.5vw, 3rem);
  --cp-cover-title-size-compact: clamp(2.4rem, 4vw, 3rem);
  --cp-cover-title-weight: 700;
  --cp-cover-title-tracking: -0.02em;
  --cp-cover-title-line-height: 1.1;
  --cp-cover-title-transform: none;
  --cp-cover-title-color: #ffffff;
  --cp-cover-subtitle-size: 1.15rem;
  --cp-cover-subtitle-weight: 400;
  --cp-cover-subtitle-color: rgba(248, 250, 252, 0.9);
  --cp-cover-eyebrow-color: #93b4ff;
  --cp-cover-btn-radius: 10px;
  --cp-cover-anim: cp-hero-blur;
  --cp-cover-anim-duration: 0.8s;
  --cp-cover-bg-anim: cp-hero-kb;
  --cp-reveal-scale: 1.1;
  --cp-reveal-duration: 1.1s;
  --cp-reveal-stagger: 0.18s;
  --cp-reveal-easing: cubic-bezier(0.16, 1, 0.3, 1);
  --cp-reveal-distance: 44px;
  --cp-cover-ai-search-display: none;

  /* ── Search Bar ── */
  --cover-search-bar-bg-color: rgba(255, 255, 255, 0.97);
  --cover-search-bar-text-color: #0f172a;
  --cover-search-bar-placeholder-color: #94a3b8;
  --cover-search-button-bg-color: var(--cp-primary);
  --cover-search-button-icon-color: #ffffff;

  /* ── Buttons -─ */
  --cp-btn-radius: 10px;

  /* ── Testimonials ── */
  --cp-tc-quote-size: clamp(1.2rem, 1.7vw, 1.5rem);
  --cp-tc-star-color: var(--cp-primary);
  --cp-avatar-bg: var(--cp-primary);
  --cp-avatar-color: #ffffff;

  /* ── Featured Areas ── */
  --cp-fa-card-radius: 10px;
  --cp-fa-label-weight: 600;
  --cp-fa-label-tracking: 0.12em;
  --cp-fa-label-transform: uppercase;
  --cp-fa-scrim: linear-gradient(to top, rgba(15, 23, 42, 0.8) 0%, rgba(15, 23, 42, 0.15) 55%, transparent 82%);
  --cp-tile-label-weight: 600;
  --cp-tile-scrim: var(--cp-fa-scrim);

  /* ── Listings ── */
  --cp-listings-accent: var(--cp-primary);
  --cp-listings-radius: 10px;
  --cp-listings-badge-color: #ffffff;
  --cp-listings-scrim: var(--cp-fa-scrim);
  --cp-listings-card-meta-bg: #ffffff;
  --cp-listings-card-text-color: #475569;
  --cp-listings-card-price-color: var(--cp-primary);
  --cp-listings-card-shadow: var(--cp-card-shadow);

  /* ── Custom Footer ── */
  --cp-footer-bg: hsla(var(--colorSecondary-h, 0), var(--colorSecondary-s, 0%), calc(var(--colorSecondary-l, 25%) + 0%), 1);
  --cp-footer-color: rgba(248, 250, 252, 0.6);
  --cp-footer-heading: #ffffff;
  --cp-footer-link: rgba(248, 250, 252, 0.6);
  --cp-footer-link-hover: #ffffff;
  --cp-footer-border: rgba(148, 163, 184, 0.2);
  --cp-footer-logo-filter: brightness(0) invert(1);
}

#header.home .logo.primary {
  content: var(--white-logo);
}
#header.scrolled.home .logo.primary,
#header:not(.home) .logo.primary {
  content: var(--color-logo);
}

body {
  background-color: #ffffff;
  color: #0f172a;
}
#home-bodycontent .cover {
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(15, 23, 42, 0.22);
  position: relative;
  z-index: 1;
}
#home-bodycontent .cover {
  min-height: 650px;
}
#header .nav-primary li:first-child + li {
  display: none;
}
#office-locations .cp-card--portrait {
  --cp-card-media-ratio: 4 / 4;
}
[data-cp-component="AnimatedStats"] .cp-stat-number {
  color: #fff !important;
}

@keyframes ps-title-in {
  from {
    opacity: 0;
    transform: translateY(34px) scale(0.97);
    filter: blur(14px);
  }
  to {
    opacity: 1;
    transform: none;
    filter: blur(0);
  }
}
@keyframes ps-hero-rise {
  from {
    opacity: 0;
    transform: translateY(22px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
#home-bodycontent .cover-title-inner h1 {
  animation: ps-title-in 1.4s cubic-bezier(0.16, 1, 0.3, 1) 0.2s both;
}
#home-bodycontent .cover-title-inner h1 ~ * {
  animation: ps-hero-rise 1s cubic-bezier(0.16, 1, 0.3, 1) 0.9s both;
}
#home-bodycontent #horizontal-search {
  animation: ps-hero-rise 1.1s cubic-bezier(0.16, 1, 0.3, 1) 1.15s both;
}
@media (prefers-reduced-motion: reduce) {
  #home-bodycontent .cover-title-inner h1,
  #home-bodycontent .cover-title-inner h1 ~ *,
  #home-bodycontent #horizontal-search {
    animation: none;
  }
}
