/**
 * Compass Law brand palette
 * Main Navy #191F33 · Deep Navy #101929 · Gold #BA9D4E · Warm Light Grey #EDE9E8 · White #FFFFFF
 */

:root {
  --cl-navy: #191f33;
  --cl-navy-deep: #101929;
  --cl-gold: #ba9d4e;
  --cl-gold-hover: #a88c42;
  --cl-gold-soft: rgba(186, 157, 78, 0.14);
  --cl-warm: #ede9e8;
  --cl-warm-muted: rgba(237, 233, 232, 0.7);

  /* Legacy tokens → brand */
  --cl-bg: var(--cl-navy-deep);
  --cl-bg-soft: var(--cl-navy);
  --cl-white: #ffffff;
  --cl-primary: var(--cl-gold);
  --txt-body: var(--cl-warm-muted);
  --txt-sub: rgba(237, 233, 232, 0.55);
  --text-desc: rgba(237, 233, 232, 0.62);
  --txt-disable: rgba(237, 233, 232, 0.28);
  --bd-main: var(--cl-gold);
}

body {
  background-color: var(--cl-bg);
  color: var(--cl-white);
}

/* -------------------------------------------------------------------------- */
/* Homepage — warm-grey hero, deep-navy body, gold accents                    */
/* -------------------------------------------------------------------------- */

body:has(.sc-home-hero.mod-law-banner) {
  background-color: var(--cl-navy-deep);
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-intro {
  background:
    radial-gradient(ellipse 55% 42% at 100% 0%, var(--cl-gold-soft), transparent 58%),
    var(--cl-widget-bg, var(--cl-navy-deep));
  color: var(--cl-widget-text, var(--cl-white));
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-intro.mod-firm-split {
  background: #101929 !important;
  color: #fff;
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-discor {
  background-color: var(--cl-widget-bg, #ede9e8);
  color: var(--cl-widget-text, #101929);
}

/* CTA block inside home-discor-body-wrap — navy panel + gold CTAs */
body:has(.sc-home-hero.mod-law-banner) .home-discor-body-wrap--cta {
  background-color: #101929 !important;
  color: #f4efe6;
}

body:has(.sc-home-hero.mod-law-banner) .home-discor-body-wrap--cta .home-discor-cta,
body:has(.sc-home-hero.mod-law-banner) .home-discor-body-wrap--cta .home-discor-cta-content {
  background: #101929 !important;
}

body:has(.sc-home-hero.mod-law-banner) .home-discor-body-wrap--cta .home-discor-cta-title {
  color: #f4efe6 !important;
  -webkit-text-fill-color: #f4efe6 !important;
}

body:has(.sc-home-hero.mod-law-banner) .home-discor-body-wrap--cta .home-discor-cta-text {
  color: rgba(244, 239, 230, 0.78) !important;
  -webkit-text-fill-color: rgba(244, 239, 230, 0.78) !important;
}

body:has(.sc-home-hero.mod-law-banner) .home-discor-body-wrap--cta .home-discor-cta-btn--primary {
  background: #ba9d4e !important;
  border-color: #ba9d4e !important;
  color: #101929 !important;
  -webkit-text-fill-color: #101929 !important;
}

body:has(.sc-home-hero.mod-law-banner) .home-discor-body-wrap--cta .home-discor-cta-btn--outline {
  background: transparent !important;
  border-color: #ba9d4e !important;
  color: #ba9d4e !important;
  -webkit-text-fill-color: #ba9d4e !important;
}

body:has(.sc-home-hero.mod-law-banner) .home-discor-body-wrap--cta .home-discor-cta-btn--primary:hover {
  background: transparent !important;
  border-color: #ba9d4e !important;
  color: #ba9d4e !important;
  -webkit-text-fill-color: #ba9d4e !important;
}

body:has(.sc-home-hero.mod-law-banner) .home-discor-body-wrap--cta .home-discor-cta-btn--outline:hover {
  background: #ba9d4e !important;
  color: #101929 !important;
  -webkit-text-fill-color: #101929 !important;
}

body:has(.sc-home-hero.mod-law-banner) .home-discor-body-wrap--cta .home-discor-cta-rule {
  background: #ba9d4e !important;
}

/*
 * Discover on warm grey — all text #101929; keep parallax strip matching the section.
 */
body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-bg-white {
  background-color: var(--cl-widget-bg, #ede9e8);
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-discor,
body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-title,
body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-item-label,
body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-item-value,
body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-secur,
body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-distill,
body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-data-txt,
body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-item-body,
body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-item-toggle,
body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .homd-discor-invest,
body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .txt,
body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .heading {
  color: var(--cl-widget-heading, var(--cl-widget-text, #101929)) !important;
  -webkit-text-fill-color: var(--cl-widget-heading, var(--cl-widget-text, #101929)) !important;
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .discor-guided-spine-label {
  color: #ba9d4e !important;
  -webkit-text-fill-color: #ba9d4e !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-item-inner {
  align-items: center;
  gap: 3.2rem;
  padding-top: 2.8rem;
  padding-bottom: 3rem;
  min-height: 0;
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-item-label {
  max-width: 56rem;
  line-height: 1.18 !important;
  font-size: clamp(2.8rem, 3.2vw, 4.4rem) !important;
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-item-value {
  line-height: 1;
  white-space: nowrap;
  align-items: flex-end;
  justify-content: center;
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-item-num {
  font-size: clamp(5.6rem, 6.4vw, 8.8rem) !important;
  line-height: 0.9 !important;
  letter-spacing: -0.03em;
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-item-unit {
  font-size: 1.5rem !important;
  line-height: 1.2 !important;
  letter-spacing: 0.18em;
  margin-top: 0.4rem;
  font-weight: 400;
}

/* Tablet: smaller Discover title → larger stats */
@media screen and (max-width: 991px) and (min-width: 768px) {
  body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .heading.h-size160.home-discor-title,
  body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-title {
    font-size: clamp(5.2rem, 6.8vw, 6.8rem) !important;
    line-height: 1.1em !important;
    margin-bottom: 2.8rem !important;
    max-width: 92%;
    margin-left: auto;
    margin-right: auto;
  }

  body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-item-label {
    font-size: clamp(3.2rem, 3.6vw, 4.6rem) !important;
    line-height: 1.15 !important;
  }

  body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-item-num,
  body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .heading.h-size160.home-discor-item-value {
    font-size: clamp(7.6rem, 9vw, 9.6rem) !important;
    line-height: 0.9 !important;
  }

  body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-item-inner {
    padding-top: 3rem;
    padding-bottom: 3.2rem;
    gap: 2.4rem;
  }

  body:has(.sc-home-hero.mod-law-banner) .sc-home-discor .home-discor-item-unit {
    font-size: 1.6rem !important;
  }
}

/* Divider lines — gold across the site */
.line-hor,
.line-ver,
.line-hor.home-discor-line,
.line-ver.home-discor-line,
.line-hor.home-intro-line,
.line-ver.home-intro-line,
.line-hor.nav-line-inner,
.line-hor.home-footer-line-inner,
.line-ver.home-footer-line-inner,
.input-line-wrap,
.input-line-inner,
.ft-brand-divider {
  background-color: var(--cl-gold) !important;
}

body:has(.sc-home-hero.mod-law-banner) .sc-whis-process,
body:has(.sc-home-hero.mod-law-banner) .sc-post-type-process {
  background-color: var(--cl-widget-bg, #ffffff);
  color: var(--cl-widget-text, #101929);
}

body:has(.sc-home-hero.mod-law-banner) .sc-post-type-list.is-blog-carousel,
body:has(.sc-home-hero.mod-law-banner) .home-pre-invest-wrap.mod-process-map,
body:has(.sc-home-hero.mod-law-banner) .sc-home-footer.mod-site-ft {
  background-color: var(--cl-widget-bg, var(--cl-navy-deep));
}

body:has(.sc-home-hero.mod-law-banner) .sc-home-reviews,
.sc-home-reviews,
.e-con:has(> .elementor-element > .elementor-widget-compass-home-reviews),
.e-con:has(.sc-home-reviews) {
  background-color: #ede9e8 !important;
}

body:has(.sc-home-hero.mod-law-banner) .txt-label,
body:has(.sc-home-hero.mod-law-banner) .dist-main-label,
body:has(.sc-home-hero.mod-law-banner) .home-footer-label,
body:has(.sc-home-hero.mod-law-banner) .home-reviews-label {
  color: var(--cl-widget-label, var(--cl-gold)) !important;
}

/* Gold fill on outline hover buttons — navy ink on gold */
body:has(.sc-home-hero.mod-law-banner) .btn-hover-v2 .btn-dot,
body:has(.sc-home-hero.mod-law-banner) [data-cl-dot="--cl-primary"] .btn-dot {
  background-color: var(--cl-gold);
}
