/* Justin Chan Chambers homepage brand implementation ? 24 July 2026. */
body.jcc-page-home.jcc-grey-return {
  --jcc-brand-charcoal-deep: #202020;
  --jcc-brand-charcoal: #292a29;
  --jcc-brand-graphite: #3a3a37;
  --jcc-brand-mid-grey: #55534f;
  --jcc-brand-greige: #dedad2;
  --jcc-brand-stone: #d8d2c8;
  --jcc-brand-ivory: #f6f2ea;
  --jcc-brand-white: #fff;
  --jcc-brand-gold: #dda646;
  --jcc-brand-gold-muted: #b98b43;
  --jcc-brand-forest: #355b4a;
  --jcc-brand-forest-hover: #416b58;
  --jcc-brand-whatsapp: #25d366;
  --jcc-home-green: var(--jcc-brand-charcoal) !important;
  --jcc-home-green-deep: var(--jcc-brand-charcoal-deep) !important;
  --jcc-home-green-soft: var(--jcc-brand-graphite) !important;
  --jcc-home-gold: var(--jcc-brand-gold) !important;
  --jcc-home-gold-bright: var(--jcc-brand-gold) !important;
  --jcc-home-paper: var(--jcc-brand-ivory) !important;
  --jcc-home-paper-deep: var(--jcc-brand-greige) !important;
  --jcc-home-ink: var(--jcc-brand-charcoal-deep) !important;
  --jcc-home-body: var(--jcc-brand-mid-grey) !important;
  --jcc-home-rule: var(--jcc-brand-stone) !important;
  background: var(--jcc-brand-ivory) !important;
  color: var(--jcc-brand-charcoal-deep) !important;
  font-family: "Hanken Grotesk", Arial, system-ui, sans-serif;
}

body.jcc-page-home.jcc-grey-return ::selection {
  color: var(--jcc-brand-charcoal-deep);
  background: var(--jcc-brand-gold);
}

body.jcc-page-home.jcc-grey-return :focus-visible {
  outline: 2px solid var(--jcc-brand-gold) !important;
  outline-offset: 4px;
}

/* Header and primary navigation */
body.jcc-page-home.jcc-grey-return header,
body.jcc-page-home.jcc-grey-return header.jcc-header-scrolled,
body.jcc-page-home.jcc-grey-return.jcc-experience-ready header,
body.jcc-page-home.jcc-grey-return.jcc-experience-ready header.jcc-header-scrolled {
  background: rgba(32, 32, 32, .97) !important;
  border-bottom-color: rgba(221, 166, 70, .28) !important;
  box-shadow: 0 12px 34px rgba(0, 0, 0, .2) !important;
}

body.jcc-page-home.jcc-grey-return header > div:first-child > a:first-child img {
  filter: none !important;
}

body.jcc-page-home.jcc-grey-return header nav > a,
body.jcc-page-home.jcc-grey-return header nav > button,
body.jcc-page-home.jcc-grey-return header .jcc-practice-trigger {
  color: var(--jcc-brand-ivory) !important;
}

body.jcc-page-home.jcc-grey-return header nav > a[href="/"] {
  color: var(--jcc-brand-ivory) !important;
  -webkit-text-fill-color: var(--jcc-brand-ivory) !important;
  box-shadow: inset 0 -3px 0 var(--jcc-brand-gold) !important;
}

body.jcc-page-home.jcc-grey-return #jccHome-headcta,
body.jcc-page-home.jcc-grey-return .jcc-practice-dropdown a[href="/contact/"] {
  min-height: 48px !important;
  color: var(--jcc-brand-charcoal-deep) !important;
  -webkit-text-fill-color: var(--jcc-brand-charcoal-deep) !important;
  background: var(--jcc-brand-gold) !important;
  border-color: var(--jcc-brand-gold) !important;
  border-radius: 8px !important;
  box-shadow: none !important;
}

body.jcc-page-home.jcc-grey-return #jccHome-headcta:hover,
body.jcc-page-home.jcc-grey-return #jccHome-headcta:focus-visible,
body.jcc-page-home.jcc-grey-return .jcc-practice-dropdown a[href="/contact/"]:hover,
body.jcc-page-home.jcc-grey-return .jcc-practice-dropdown a[href="/contact/"]:focus-visible {
  background: var(--jcc-brand-gold-muted) !important;
  border-color: var(--jcc-brand-gold-muted) !important;
  transform: translateY(-2px);
}

body.jcc-page-home.jcc-grey-return #jccHome-burger {
  border-color: rgba(221, 166, 70, .58) !important;
}

/* Hero */
body.jcc-page-home.jcc-grey-return .jcc-home-redesign-hero.jcc-home-hero--about-layout {
  background-color: var(--jcc-brand-charcoal) !important;
  background-image:
    linear-gradient(90deg, rgba(24, 24, 23, .80) 0%, rgba(24, 24, 23, .58) 45%, rgba(24, 24, 23, .14) 76%, rgba(24, 24, 23, .04) 100%),
    var(--jcc-hero-current) !important;
  border-bottom-color: rgba(221, 166, 70, .32) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-home-redesign-hero::before {
  background:
    radial-gradient(circle at 78% 22%, rgba(221, 166, 70, .10), transparent 28%),
    radial-gradient(circle at 66% 82%, rgba(53, 91, 74, .11), transparent 34%),
    linear-gradient(115deg, transparent 0 64%, rgba(255, 255, 255, .035) 64% 65%, transparent 65% 100%) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-home-hero-copy > p:first-child {
  margin: 0 0 18px !important;
  color: var(--jcc-brand-gold) !important;
  -webkit-text-fill-color: var(--jcc-brand-gold) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: .22em !important;
  text-transform: uppercase;
}

body.jcc-page-home.jcc-grey-return .jcc-home-redesign-hero h1 {
  max-width: 10ch !important;
  color: var(--jcc-brand-ivory) !important;
  -webkit-text-fill-color: var(--jcc-brand-ivory) !important;
  font-family: "Libre Caslon Display", "Libre Caslon Text", Georgia, serif !important;
  font-size: clamp(58px, 6vw, 82px) !important;
  font-weight: 400 !important;
  line-height: .99 !important;
  letter-spacing: -.04em !important;
}

body.jcc-page-home.jcc-grey-return .jcc-home-hero-copy > p:nth-of-type(2) {
  max-width: 52ch !important;
  margin-top: 24px !important;
  color: #eee9df !important;
  -webkit-text-fill-color: #eee9df !important;
  font-size: 18px !important;
  line-height: 1.62 !important;
}

body.jcc-page-home.jcc-grey-return .jcc-home-actions {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px !important;
  margin-top: 30px !important;
}

html body.jcc-page-home.jcc-grey-return main .jcc-home-actions > a.jcc-architecture-hero__primary-cta[data-jcc-hero-primary-cta="true"] {
  min-height: 52px !important;
  margin: 0 !important;
  padding: 16px 28px !important;
  color: var(--jcc-brand-charcoal-deep) !important;
  -webkit-text-fill-color: var(--jcc-brand-charcoal-deep) !important;
  background: var(--jcc-brand-gold) !important;
  border-color: var(--jcc-brand-gold) !important;
  border-radius: 8px !important;
}

html body.jcc-page-home.jcc-grey-return main .jcc-home-actions > a.jcc-architecture-hero__primary-cta:hover,
html body.jcc-page-home.jcc-grey-return main .jcc-home-actions > a.jcc-architecture-hero__primary-cta:focus-visible {
  background: var(--jcc-brand-gold-muted) !important;
  border-color: var(--jcc-brand-gold-muted) !important;
  transform: translateY(-2px);
}

body.jcc-page-home.jcc-grey-return .jcc-home-actions > a:last-child {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 2px .35em;
  min-height: 52px;
  max-width: 310px;
  padding: 13px 20px !important;
  color: var(--jcc-brand-ivory) !important;
  -webkit-text-fill-color: var(--jcc-brand-ivory) !important;
  background: var(--jcc-brand-forest) !important;
  border: 1px solid rgba(221, 166, 70, .72) !important;
  border-radius: 8px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.25;
  letter-spacing: .07em;
  text-decoration: none;
  text-transform: uppercase;
}

body.jcc-page-home.jcc-grey-return .jcc-home-concierge-cta > span {
  white-space: nowrap;
}

body.jcc-page-home.jcc-grey-return .jcc-home-actions > a:last-child:hover,
body.jcc-page-home.jcc-grey-return .jcc-home-actions > a:last-child:focus-visible {
  background: var(--jcc-brand-forest-hover) !important;
  transform: translateY(-2px);
}

body.jcc-page-home.jcc-grey-return .jcc-home-hero-attribution {
  border-top-color: rgba(221, 166, 70, .38) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-home-hero-attribution > a {
  color: var(--jcc-brand-gold) !important;
  -webkit-text-fill-color: var(--jcc-brand-gold) !important;
}

@media (min-width: 721px) {
  body.jcc-page-home.jcc-grey-return .jcc-home-redesign-hero.jcc-home-hero--about-layout .jcc-home-hero-visual figcaption {
    right: 0 !important;
  }
}

/* Situation cards */
body.jcc-page-home.jcc-grey-return #start-here {
  background: var(--jcc-brand-ivory) !important;
  border-bottom: 1px solid var(--jcc-brand-stone) !important;
}

body.jcc-page-home.jcc-grey-return #start-here::before {
  content: "" !important;
}

body.jcc-page-home.jcc-grey-return #start-here .jcc-master-kicker,
body.jcc-page-home.jcc-grey-return #start-here .jcc-matter-finder-intro > a {
  color: var(--jcc-brand-forest) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-matter-grid {
  gap: 18px !important;
  border: 0 !important;
}

body.jcc-page-home.jcc-grey-return main .jcc-matter-finder .jcc-matter-card {
  min-height: 220px;
  padding: 26px 28px !important;
  overflow: hidden;
  background: var(--jcc-brand-white) !important;
  border: 1px solid var(--jcc-brand-stone) !important;
  border-top: 4px solid var(--jcc-card-accent, var(--jcc-brand-gold)) !important;
  border-radius: 10px !important;
  box-shadow: 0 12px 34px rgba(32, 32, 32, .06) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-matter-card:nth-child(even) {
  --jcc-card-accent: var(--jcc-brand-forest);
}

body.jcc-page-home.jcc-grey-return .jcc-matter-card .jcc-matter-number {
  color: var(--jcc-card-accent, var(--jcc-brand-gold-muted)) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-matter-card strong {
  color: var(--jcc-brand-charcoal-deep) !important;
  font-family: "Libre Caslon Text", Georgia, serif;
  font-size: 22px;
  line-height: 1.25;
}

body.jcc-page-home.jcc-grey-return main .jcc-matter-finder .jcc-matter-card:hover,
body.jcc-page-home.jcc-grey-return main .jcc-matter-finder .jcc-matter-card:focus-visible {
  color: var(--jcc-card-selected-foreground) !important;
  background: var(--jcc-card-selected-background) !important;
  border-color: var(--jcc-card-accent, var(--jcc-brand-gold)) !important;
  box-shadow: 0 18px 42px rgba(32, 32, 32, .12) !important;
  transform: translateY(-4px);
}

body.jcc-page-home.jcc-grey-return main .jcc-matter-finder .jcc-matter-card:hover > *,
body.jcc-page-home.jcc-grey-return main .jcc-matter-finder .jcc-matter-card:focus-visible > * {
  color: var(--jcc-card-selected-foreground) !important;
  -webkit-text-fill-color: var(--jcc-card-selected-foreground) !important;
}

/* Introductory statement */
body.jcc-page-home.jcc-grey-return section[data-screen-label="Homepage introduction"] {
  background: var(--jcc-brand-greige) !important;
  border-bottom-color: #c8c2b8 !important;
}

body.jcc-page-home.jcc-grey-return section[data-screen-label="Homepage introduction"] h2 {
  color: var(--jcc-brand-charcoal-deep) !important;
}

/* AI Legal Concierge band */
body.jcc-page-home.jcc-grey-return .jcc-concierge-home-band {
  position: relative;
  isolation: isolate;
  display: block !important;
  padding: clamp(68px, 8vw, 104px) 32px;
  overflow: hidden;
  color: var(--jcc-brand-ivory);
  background:
    radial-gradient(circle at 88% 12%, rgba(221, 166, 70, .10), transparent 31%),
    radial-gradient(circle at 8% 92%, rgba(53, 91, 74, .20), transparent 33%),
    var(--jcc-brand-charcoal) !important;
  border-bottom: 1px solid rgba(221, 166, 70, .28) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-concierge-home-copy .jcc-concierge-kicker {
  margin-bottom: 18px;
  color: var(--jcc-brand-gold) !important;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
}

body.jcc-page-home.jcc-grey-return .jcc-concierge-home-copy h2 {
  color: var(--jcc-brand-ivory) !important;
  font-size: clamp(38px, 4.5vw, 56px);
  line-height: 1.05;
}

body.jcc-page-home.jcc-grey-return .jcc-concierge-home-copy > p:last-of-type {
  color: #e2ded6 !important;
  font-size: 17px;
  line-height: 1.68;
}

body.jcc-page-home.jcc-grey-return .jcc-concierge-home-copy > a {
  min-height: 52px;
  max-width: 390px;
  padding: 14px 22px;
  color: var(--jcc-brand-ivory) !important;
  -webkit-text-fill-color: var(--jcc-brand-ivory) !important;
  background: var(--jcc-brand-forest) !important;
  border: 1px solid rgba(221, 166, 70, .78) !important;
  border-radius: 8px;
  font-size: 12px;
  line-height: 1.3;
}

body.jcc-page-home.jcc-grey-return .jcc-concierge-home-copy > a:hover,
body.jcc-page-home.jcc-grey-return .jcc-concierge-home-copy > a:focus-visible {
  background: var(--jcc-brand-forest-hover) !important;
  transform: translateY(-2px);
}

body.jcc-page-home.jcc-grey-return .jcc-concierge-home-benefits {
  gap: 16px;
  border: 0;
}

body.jcc-page-home.jcc-grey-return .jcc-concierge-home-benefit {
  position: relative;
  min-height: 210px;
  padding: 28px;
  overflow: hidden;
  background: rgba(58, 58, 55, .9);
  border: 1px solid rgba(216, 210, 200, .27);
  border-top: 4px solid var(--jcc-card-accent, var(--jcc-brand-gold));
  border-radius: 10px;
  transition: transform .3s ease, border-color .3s ease, background .3s ease;
}

body.jcc-page-home.jcc-grey-return .jcc-concierge-home-benefit:nth-child(even) {
  --jcc-card-accent: var(--jcc-brand-forest-hover);
}

body.jcc-page-home.jcc-grey-return .jcc-concierge-home-benefit::before {
  content: counter(jcc-concierge-card, decimal-leading-zero);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  margin-bottom: 24px;
  color: var(--jcc-brand-charcoal-deep);
  background: var(--jcc-card-accent, var(--jcc-brand-gold));
  border-radius: 50%;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: .08em;
}

body.jcc-page-home.jcc-grey-return .jcc-concierge-home-benefits {
  counter-reset: jcc-concierge-card;
}

body.jcc-page-home.jcc-grey-return .jcc-concierge-home-benefit {
  counter-increment: jcc-concierge-card;
}

body.jcc-page-home.jcc-grey-return .jcc-concierge-home-benefit strong {
  color: var(--jcc-brand-ivory) !important;
  font-family: "Libre Caslon Text", Georgia, serif;
  font-size: 21px;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0;
  text-transform: none;
}

body.jcc-page-home.jcc-grey-return .jcc-concierge-home-benefit p {
  color: #d7d3cb !important;
  font-size: 15px;
  line-height: 1.62;
}

body.jcc-page-home.jcc-grey-return .jcc-concierge-home-benefit:hover {
  background: #41413d;
  border-color: var(--jcc-card-accent, var(--jcc-brand-gold));
  transform: translateY(-4px);
}

/*
 * JCC_HOMEPAGE_CONCIERGE_BENEFIT_STABLE_SURFACE_CONTRACT_20260726
 * The AI Legal Concierge benefit cards are dark editorial cards, not selected
 * controls. Keep the panel surface dark in hover, focus, active and accidental
 * selected states; the accent belongs to the top border and number badge only.
 */
body.jcc-page-home.jcc-grey-return .jcc-concierge-home-benefit:is(:hover, :focus, :focus-visible, :active, .is-selected),
body.jcc-page-home.jcc-grey-return :is(#jcc-card-contract-force#jcc-card-contract-force#jcc-card-contract-force, .jcc-concierge-home-benefit):is(:hover, :focus, :focus-visible, :active, .is-selected) {
  color: var(--jcc-brand-ivory) !important;
  -webkit-text-fill-color: var(--jcc-brand-ivory) !important;
  background: #41413d !important;
  border-color: rgba(216, 210, 200, .27) !important;
  border-top-color: var(--jcc-card-accent, var(--jcc-brand-gold)) !important;
  box-shadow: var(--jcc-brand-shadow-card-active) !important;
  transform: translateY(-3px);
}

body.jcc-page-home.jcc-grey-return .jcc-concierge-home-benefit:is(:hover, :focus, :focus-visible, :active, .is-selected) > *,
body.jcc-page-home.jcc-grey-return :is(#jcc-card-contract-force#jcc-card-contract-force#jcc-card-contract-force, .jcc-concierge-home-benefit):is(:hover, :focus, :focus-visible, :active, .is-selected) > * {
  color: inherit !important;
  -webkit-text-fill-color: currentColor !important;
}

body.jcc-page-home.jcc-grey-return .jcc-concierge-home-benefit:is(:hover, :focus, :focus-visible, :active, .is-selected) p,
body.jcc-page-home.jcc-grey-return :is(#jcc-card-contract-force#jcc-card-contract-force#jcc-card-contract-force, .jcc-concierge-home-benefit):is(:hover, :focus, :focus-visible, :active, .is-selected) p {
  color: #d7d3cb !important;
  -webkit-text-fill-color: #d7d3cb !important;
}

body.jcc-page-home.jcc-grey-return .jcc-concierge-home-benefit:is(:hover, :focus, :focus-visible, :active, .is-selected)::before,
body.jcc-page-home.jcc-grey-return :is(#jcc-card-contract-force#jcc-card-contract-force#jcc-card-contract-force, .jcc-concierge-home-benefit):is(:hover, :focus, :focus-visible, :active, .is-selected)::before {
  color: var(--jcc-brand-charcoal-deep) !important;
  -webkit-text-fill-color: var(--jcc-brand-charcoal-deep) !important;
  background: var(--jcc-card-accent, var(--jcc-brand-gold)) !important;
}
/* Featured media and practice-area cards */
body.jcc-page-home.jcc-grey-return .jcc-featured-media {
  background: var(--jcc-brand-ivory) !important;
  border-bottom-color: var(--jcc-brand-stone) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-practice-editorial {
  background: var(--jcc-brand-greige) !important;
  border-bottom: 1px solid #c8c2b8 !important;
}

body.jcc-page-home.jcc-grey-return .jcc-practice-intro > p:first-child {
  color: var(--jcc-brand-forest) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-practice-intro > a {
  color: var(--jcc-brand-forest) !important;
  font-weight: 700;
}

body.jcc-page-home.jcc-grey-return .jcc-practice-intro figure {
  border-color: #c8c2b8 !important;
  border-radius: 10px;
}

body.jcc-page-home.jcc-grey-return .jcc-practice-intro figure img {
  filter: grayscale(.55) saturate(.7) sepia(.08);
}

body.jcc-page-home.jcc-grey-return .jcc-practice-grid {
  gap: 16px;
  border: 0 !important;
}

body.jcc-page-home.jcc-grey-return .jcc-practice-editorial .jcc-practice-grid > a {
  min-height: 214px;
  padding: 26px;
  color: var(--jcc-brand-charcoal-deep) !important;
  background: rgba(255, 255, 255, .76) !important;
  border: 1px solid #c8c2b8 !important;
  border-top: 4px solid var(--jcc-card-accent, var(--jcc-brand-gold)) !important;
  border-radius: 10px;
  box-shadow: 0 10px 26px rgba(32, 32, 32, .045);
}

body.jcc-page-home.jcc-grey-return .jcc-practice-grid > a:nth-child(even) {
  --jcc-card-accent: var(--jcc-brand-forest);
}

body.jcc-page-home.jcc-grey-return .jcc-practice-editorial .jcc-practice-grid > a > span,
body.jcc-page-home.jcc-grey-return .jcc-practice-editorial .jcc-practice-grid > a > i {
  color: var(--jcc-card-accent, var(--jcc-brand-gold-muted)) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-practice-editorial .jcc-practice-grid > a > strong {
  font-family: "Libre Caslon Text", Georgia, serif;
  font-size: 21px;
  line-height: 1.25;
}

body.jcc-page-home.jcc-grey-return main .jcc-practice-editorial .jcc-practice-grid > a:hover,
body.jcc-page-home.jcc-grey-return main .jcc-practice-editorial .jcc-practice-grid > a:focus-visible {
  color: var(--jcc-card-selected-foreground) !important;
  background: var(--jcc-card-selected-background) !important;
  border-color: var(--jcc-card-accent) !important;
  box-shadow: 0 18px 38px rgba(32, 32, 32, .14) !important;
  transform: translateY(-4px);
}

body.jcc-page-home.jcc-grey-return main .jcc-practice-editorial .jcc-practice-grid > a:hover > *,
body.jcc-page-home.jcc-grey-return main .jcc-practice-editorial .jcc-practice-grid > a:focus-visible > * {
  color: var(--jcc-card-selected-foreground) !important;
  -webkit-text-fill-color: var(--jcc-card-selected-foreground) !important;
}

/* Editorial cards and supporting imagery */
body.jcc-page-home.jcc-grey-return .jcc-home-insights,
body.jcc-page-home.jcc-grey-return .jcc-meet-justin {
  background: var(--jcc-brand-ivory) !important;
  border-bottom-color: var(--jcc-brand-stone) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-insight-card {
  overflow: hidden;
  background: var(--jcc-brand-white) !important;
  border: 1px solid var(--jcc-brand-stone) !important;
  border-top: 4px solid var(--jcc-brand-gold) !important;
  border-radius: 10px;
  box-shadow: 0 12px 30px rgba(32, 32, 32, .06);
}

body.jcc-page-home.jcc-grey-return .jcc-insight-card:nth-child(even) {
  border-top-color: var(--jcc-brand-forest) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-insight-card figure img,
body.jcc-page-home.jcc-grey-return .jcc-singapore-image img,
body.jcc-page-home.jcc-grey-return .jcc-justin-portrait img {
  filter: grayscale(.55) saturate(.7) sepia(.07);
}

body.jcc-page-home.jcc-grey-return .jcc-insight-card > div > span,
body.jcc-page-home.jcc-grey-return .jcc-insight-card i {
  color: var(--jcc-brand-forest) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-insight-card:hover,
body.jcc-page-home.jcc-grey-return .jcc-insight-card:focus-visible {
  border-color: var(--jcc-brand-gold) !important;
  box-shadow: 0 18px 42px rgba(32, 32, 32, .12);
  transform: translateY(-4px);
}

body.jcc-page-home.jcc-grey-return .jcc-home-insights > div > div:first-child > a,
body.jcc-page-home.jcc-grey-return .jcc-meet-justin .jcc-about-grid > div:last-child > a,
body.jcc-page-home.jcc-grey-return #media-features > div > a {
  color: var(--jcc-brand-ivory) !important;
  -webkit-text-fill-color: var(--jcc-brand-ivory) !important;
  background: var(--jcc-brand-forest) !important;
  border-color: var(--jcc-brand-forest) !important;
  border-radius: 8px !important;
}

body.jcc-page-home.jcc-grey-return .jcc-home-insights > div > div:first-child > a:hover,
body.jcc-page-home.jcc-grey-return .jcc-meet-justin .jcc-about-grid > div:last-child > a:hover,
body.jcc-page-home.jcc-grey-return #media-features > div > a:hover {
  background: var(--jcc-brand-forest-hover) !important;
  border-color: var(--jcc-brand-forest-hover) !important;
}

/* Dark counsel section and consultation close */
body.jcc-page-home.jcc-grey-return .jcc-singapore-context,
body.jcc-page-home.jcc-grey-return main section[data-screen-label="Closing CTA"] {
  background: var(--jcc-brand-charcoal) !important;
  border-bottom-color: rgba(221, 166, 70, .24) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-singapore-context .jcc-split > div:last-child > p:first-child {
  color: var(--jcc-brand-gold) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-singapore-context .jcc-split > div:last-child > a,
body.jcc-page-home.jcc-grey-return section[data-screen-label="Closing CTA"] .jcc-closing-cta > a {
  color: var(--jcc-brand-charcoal-deep) !important;
  -webkit-text-fill-color: var(--jcc-brand-charcoal-deep) !important;
  background: var(--jcc-brand-gold) !important;
  border-color: var(--jcc-brand-gold) !important;
  border-radius: 8px !important;
}

/* Review cards */
body.jcc-page-home.jcc-grey-return .jcc-home-reviews {
  background: var(--jcc-brand-white) !important;
  border-bottom-color: var(--jcc-brand-stone) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-review-kicker {
  color: var(--jcc-brand-forest) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-home-reviews .jcc-testimonials {
  background: transparent !important;
  border: 0 !important;
}

body.jcc-page-home.jcc-grey-return .jcc-home-reviews .jcc-testimonials figure,
body.jcc-page-home.jcc-grey-return .jcc-home-reviews .jcc-testimonials .jcc-review-featured {
  color: var(--jcc-brand-charcoal-deep) !important;
  background: var(--jcc-brand-ivory) !important;
  border: 1px solid var(--jcc-brand-stone) !important;
  border-top: 4px solid var(--jcc-brand-gold) !important;
  border-radius: 10px !important;
  box-shadow: 0 10px 28px rgba(32, 32, 32, .055);
}

body.jcc-page-home.jcc-grey-return .jcc-home-reviews .jcc-testimonials figure:nth-child(even) {
  border-top-color: var(--jcc-brand-forest) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-home-reviews .jcc-testimonials blockquote,
body.jcc-page-home.jcc-grey-return .jcc-home-reviews .jcc-testimonials .jcc-review-featured blockquote {
  color: var(--jcc-brand-charcoal-deep) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-home-reviews .jcc-testimonials figure > span,
body.jcc-page-home.jcc-grey-return .jcc-home-reviews .jcc-testimonials figcaption,
body.jcc-page-home.jcc-grey-return .jcc-home-reviews .jcc-testimonials figcaption small {
  color: var(--jcc-brand-forest) !important;
}

/* Footer */
body.jcc-page-home.jcc-grey-return footer {
  background: var(--jcc-brand-charcoal-deep) !important;
  border-top: 1px solid rgba(221, 166, 70, .25);
}

body.jcc-page-home.jcc-grey-return footer h2 {
  color: var(--jcc-brand-gold) !important;
}

/* Floating Justin Chan Chambers AI Legal Concierge */
body.jcc-page-home .jcc-chatbot__button {
  min-height: 52px;
  padding: 0 20px;
  color: var(--jcc-brand-ivory);
  background: var(--jcc-brand-forest);
  border: 1px solid rgba(221, 166, 70, .72);
  box-shadow: 0 14px 34px rgba(32, 32, 32, .26);
}

body.jcc-page-home .jcc-chatbot__button:hover,
body.jcc-page-home .jcc-chatbot__button:focus-visible {
  background: var(--jcc-brand-forest-hover);
}

body.jcc-page-home .jcc-chatbot__header {
  border-top: 4px solid var(--jcc-brand-forest);
}

body.jcc-page-home .jcc-chatbot__lead-open,
body.jcc-page-home .jcc-chatbot__lead-submit,
body.jcc-page-home .jcc-chatbot__submit {
  color: var(--jcc-brand-ivory);
  background: var(--jcc-brand-forest);
  border-color: var(--jcc-brand-forest);
}

body.jcc-page-home .jcc-chatbot__cta {
  color: var(--jcc-brand-charcoal-deep);
  background: var(--jcc-brand-gold);
  border-color: var(--jcc-brand-gold);
}

/* Quiet WhatsApp utility control */
body.jcc-page-home .jcc-home-whatsapp-float {
  position: fixed;
  right: 22px;
  bottom: 86px;
  z-index: 9998;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: var(--jcc-brand-charcoal-deep);
  text-decoration: none;
  transition: transform .25s ease, opacity .25s ease;
}

body.jcc-page-home .jcc-home-whatsapp-float .whatsapp-label {
  position: absolute;
  right: calc(100% + 10px);
  bottom: 0;
  display: grid;
  width: max-content;
  gap: 1px;
  padding: 9px 12px;
  color: var(--jcc-brand-charcoal-deep);
  background: var(--jcc-brand-ivory);
  border: 1px solid var(--jcc-brand-stone);
  border-radius: 8px;
  box-shadow: 0 10px 26px rgba(32, 32, 32, .16);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateX(8px);
  transition: opacity .2s ease, visibility .2s ease, transform .2s ease;
}

body.jcc-page-home .jcc-home-whatsapp-float .whatsapp-label small {
  font-size: 11px;
  line-height: 1.2;
}

body.jcc-page-home .jcc-home-whatsapp-float .whatsapp-label strong {
  font-size: 13px;
  line-height: 1.2;
}

body.jcc-page-home .jcc-home-whatsapp-float .whatsapp-dot {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  color: var(--jcc-brand-white) !important;
  background: #454542 !important;
  border: 1px solid rgba(255, 255, 255, .24);
  border-radius: 50%;
  box-shadow: 0 12px 30px rgba(32, 32, 32, .24);
  transition: background .25s ease, transform .25s ease;
}

body.jcc-page-home .jcc-home-whatsapp-float .whatsapp-dot svg {
  width: 27px;
  height: 27px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.7;
}

body.jcc-page-home .jcc-home-whatsapp-float:hover,
body.jcc-page-home .jcc-home-whatsapp-float:focus-visible {
  transform: translateY(-3px);
}

body.jcc-page-home .jcc-home-whatsapp-float:hover .whatsapp-dot,
body.jcc-page-home .jcc-home-whatsapp-float:focus-visible .whatsapp-dot {
  background: var(--jcc-brand-whatsapp) !important;
}

body.jcc-page-home .jcc-home-whatsapp-float:hover .whatsapp-label,
body.jcc-page-home .jcc-home-whatsapp-float:focus-visible .whatsapp-label {
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

body.jcc-page-home:has(.jcc-chatbot.is-open) .jcc-home-whatsapp-float {
  opacity: 0;
  pointer-events: none;
}

@media (max-width: 1040px) {
  body.jcc-page-home.jcc-grey-return header > div:first-child > a:first-child img {
    filter: none !important;
  }

  body.jcc-page-home.jcc-grey-return header .jcc-mobile-menu {
    color: var(--jcc-brand-ivory) !important;
    background: var(--jcc-brand-charcoal-deep) !important;
    border-color: rgba(221, 166, 70, .28) !important;
    box-shadow: 0 18px 34px rgba(0, 0, 0, .28) !important;
  }

  body.jcc-page-home.jcc-grey-return header .jcc-mobile-menu nav > a,
  body.jcc-page-home.jcc-grey-return header .jcc-mobile-menu nav > button,
  body.jcc-page-home.jcc-grey-return header .jcc-mobile-menu nav > details > summary {
    color: var(--jcc-brand-ivory) !important;
    -webkit-text-fill-color: var(--jcc-brand-ivory) !important;
    border-color: rgba(246, 242, 234, .18) !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
  }

  body.jcc-page-home.jcc-grey-return header .jcc-mobile-menu [data-jcc-mobile-practice-panel] a,
  body.jcc-page-home.jcc-grey-return header .jcc-mobile-menu .jcc-mobile-articles-nav > div > a {
    color: #eee9df !important;
    -webkit-text-fill-color: #eee9df !important;
    font-size: 15px !important;
    font-weight: 500 !important;
  }

  body.jcc-page-home.jcc-grey-return header .jcc-mobile-menu [data-jcc-mobile-practice-panel] > a:first-child,
  body.jcc-page-home.jcc-grey-return header .jcc-mobile-menu .jcc-mobile-articles-nav > div > a:first-child {
    color: var(--jcc-brand-ivory) !important;
    -webkit-text-fill-color: var(--jcc-brand-ivory) !important;
    font-weight: 700 !important;
  }

  body.jcc-page-home.jcc-grey-return header .jcc-mobile-menu [data-jcc-mobile-practice-panel] p,
  body.jcc-page-home.jcc-grey-return header .jcc-mobile-menu .jcc-mobile-articles-nav > div > p {
    color: var(--jcc-brand-gold) !important;
    -webkit-text-fill-color: var(--jcc-brand-gold) !important;
  }

  body.jcc-page-home.jcc-grey-return header .jcc-mobile-menu nav > a[href="/"] {
    color: var(--jcc-brand-ivory) !important;
    -webkit-text-fill-color: var(--jcc-brand-ivory) !important;
    box-shadow: inset 3px 0 0 var(--jcc-brand-gold) !important;
  }

  body.jcc-page-home.jcc-grey-return header .jcc-mobile-menu nav > button span {
    color: var(--jcc-brand-gold) !important;
    -webkit-text-fill-color: var(--jcc-brand-gold) !important;
  }
}

@media (max-width: 900px) {
  body.jcc-page-home.jcc-grey-return .jcc-concierge-home-grid {
    gap: 48px;
  }
}

@media (max-width: 720px) {
  body.jcc-page-home.jcc-grey-return .jcc-practice-editorial {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.jcc-page-home.jcc-grey-return .jcc-practice-layout {
    width: calc(100% - 48px) !important;
  }

  body.jcc-page-home.jcc-grey-return .jcc-home-redesign-hero.jcc-home-hero--about-layout {
    background-image:
      linear-gradient(180deg, rgba(24, 24, 23, .74) 0%, rgba(24, 24, 23, .54) 54%, rgba(24, 24, 23, .68) 100%),
      var(--jcc-hero-current) !important;
  }

  body.jcc-page-home.jcc-grey-return .jcc-home-redesign-hero h1 {
    font-size: clamp(40px, 13vw, 48px) !important;
    line-height: 1.02 !important;
  }

  body.jcc-page-home.jcc-grey-return .jcc-home-actions {
    align-items: stretch;
  }

  body.jcc-page-home.jcc-grey-return .jcc-home-actions > a {
    justify-content: center;
    width: 100%;
    max-width: none !important;
  }

  body.jcc-page-home.jcc-grey-return .jcc-home-concierge-cta {
    flex-direction: column;
  }

  body.jcc-page-home.jcc-grey-return .jcc-concierge-home-band {
    padding: 68px 24px;
  }

  body.jcc-page-home.jcc-grey-return .jcc-concierge-home-benefits {
    gap: 14px;
  }

  body.jcc-page-home.jcc-grey-return .jcc-concierge-home-benefit {
    min-height: 0;
    padding: 24px;
  }
}

@media (max-width: 560px) {
  body.jcc-page-home .jcc-home-whatsapp-float {
    right: calc(18px + env(safe-area-inset-right, 0px));
    bottom: calc(80px + env(safe-area-inset-bottom, 0px));
  }

  body.jcc-page-home .jcc-home-whatsapp-float .whatsapp-label {
    display: none;
  }

  body.jcc-page-home .jcc-home-whatsapp-float .whatsapp-dot {
    width: 52px;
    height: 52px;
  }
}

@media (prefers-reduced-motion: reduce) {
  body.jcc-page-home .jcc-concierge-home-benefit,
  body.jcc-page-home .jcc-matter-card,
  body.jcc-page-home .jcc-practice-grid > a,
  body.jcc-page-home .jcc-insight-card,
  body.jcc-page-home .jcc-home-whatsapp-float,
  body.jcc-page-home .jcc-chatbot__button {
    transition: none !important;
    transform: none !important;
  }
}

/* Homepage full-width band and compact section rhythm contract - 2026-07-25. */
body.jcc-page-home.jcc-grey-return {
  --jcc-home-section-space: clamp(48px, 5vw, 72px);
  --jcc-home-section-space-compact: clamp(44px, 4.5vw, 60px);
  --jcc-home-section-space-closing: clamp(60px, 6vw, 80px);
}

/*
 * Background colour and rule bands span the viewport. The content-width cap
 * belongs to each inner wrapper, not to the section itself.
 */
body.jcc-page-home.jcc-grey-return main > .jcc-section {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
  padding-inline: 0 !important;
}

body.jcc-page-home.jcc-grey-return main > .jcc-section > :first-child {
  margin-inline: auto !important;
}

body.jcc-page-home.jcc-grey-return main > section[data-screen-label="Homepage introduction"] > :first-child {
  padding-top: var(--jcc-home-section-space-compact) !important;
  padding-bottom: var(--jcc-home-section-space-compact) !important;
}

body.jcc-page-home.jcc-grey-return main > .jcc-matter-finder > .jcc-matter-finder-inner,
body.jcc-page-home.jcc-grey-return main > .jcc-practice-editorial > .jcc-practice-layout,
body.jcc-page-home.jcc-grey-return main > .jcc-home-insights > :first-child,
body.jcc-page-home.jcc-grey-return main > .jcc-singapore-context > .jcc-split,
body.jcc-page-home.jcc-grey-return main > .jcc-meet-justin > .jcc-about-grid,
body.jcc-page-home.jcc-grey-return main > .jcc-home-reviews > :first-child {
  padding-top: var(--jcc-home-section-space) !important;
  padding-bottom: var(--jcc-home-section-space) !important;
}

body.jcc-page-home.jcc-grey-return main > .jcc-concierge-home-band {
  padding-top: var(--jcc-home-section-space-closing) !important;
  padding-bottom: var(--jcc-home-section-space-closing) !important;
}

body.jcc-page-home.jcc-grey-return main > .jcc-featured-media > :first-child,
body.jcc-page-home.jcc-grey-return main > #media-features > :first-child {
  padding-top: var(--jcc-home-section-space-compact) !important;
  padding-bottom: var(--jcc-home-section-space-compact) !important;
}

body.jcc-page-home.jcc-grey-return main > .jcc-closing-contrast > .jcc-closing-cta {
  padding-top: var(--jcc-home-section-space-closing) !important;
  padding-bottom: var(--jcc-home-section-space-closing) !important;
}

@media (max-width: 720px) {
  body.jcc-page-home.jcc-grey-return main > .jcc-concierge-home-band {
    padding-inline: 24px !important;
  }
}


/* JCC_HOMEPAGE_CARD_VISIBILITY_AND_GREEN_CONTRAST_20260725 */
body.jcc-page-home.jcc-grey-return .jcc-concierge-home-copy .jcc-concierge-kicker {
  color: var(--jcc-brand-forest-on-dark) !important;
  -webkit-text-fill-color: var(--jcc-brand-forest-on-dark) !important;
}

body.jcc-page-home.jcc-grey-return main .jcc-matter-finder .jcc-matter-card:nth-child(odd) {
  --jcc-card-accent: var(--jcc-brand-gold);
  --jcc-card-selected-background: var(--jcc-brand-gold);
  --jcc-card-selected-foreground: var(--jcc-brand-charcoal-deep);
}

body.jcc-page-home.jcc-grey-return main .jcc-matter-finder .jcc-matter-card:nth-child(even) {
  --jcc-card-accent: var(--jcc-brand-forest);
  --jcc-card-selected-background: var(--jcc-brand-forest);
  --jcc-card-selected-foreground: var(--jcc-brand-ivory);
}

body.jcc-page-home.jcc-grey-return main .jcc-matter-finder .jcc-matter-card:is(:hover, :focus-visible) {
  color: var(--jcc-card-selected-foreground) !important;
  -webkit-text-fill-color: var(--jcc-card-selected-foreground) !important;
  background: var(--jcc-card-selected-background) !important;
  border-color: var(--jcc-card-accent) !important;
  box-shadow: var(--jcc-brand-shadow-card-active) !important;
}

body.jcc-page-home.jcc-grey-return main .jcc-matter-finder .jcc-matter-card:is(:hover, :focus-visible) > * {
  color: var(--jcc-card-selected-foreground) !important;
  -webkit-text-fill-color: var(--jcc-card-selected-foreground) !important;
}

/*
 * JCC_HOMEPAGE_MOBILE_HERO_GUTTER_CONTRACT_20260725
 * Keep mobile hero copy and actions on the shared 24px content edge.
 * The force selector intentionally outranks the general full-bleed hero wrapper.
 */
html body.jcc-page-home.jcc-grey-return main
    .jcc-home-redesign-hero.jcc-home-hero--about-layout
    > :is(
      #jcc-home-mobile-gutter-force#jcc-home-mobile-gutter-force#jcc-home-mobile-gutter-force#jcc-home-mobile-gutter-force,
      .jcc-hero-grid
    ) {
  width: min(calc(100% - 64px), 1180px) !important;
  max-width: 1180px !important;
  margin-inline: auto !important;
}

@media (max-width: 720px) {
  html body.jcc-page-home.jcc-grey-return main
    .jcc-home-redesign-hero.jcc-home-hero--about-layout
    > :is(
      #jcc-home-mobile-gutter-force#jcc-home-mobile-gutter-force#jcc-home-mobile-gutter-force#jcc-home-mobile-gutter-force,
      .jcc-hero-grid
    ) {
    width: min(calc(100% - 48px), 620px) !important;
    max-width: 620px !important;
  }
}

/*
 * JCC_HOMEPAGE_SHARED_TONE_CARD_INTERACTION_CONTRACT_20260728
 * JCC_HOMEPAGE_MATTER_CARD_DIRECT_SURFACE_CONTRACT_20260729
 * JCC_HOMEPAGE_MATTER_CARD_FILL_STATE_CONTRACT_20260727_V2
 * JCC_HOMEPAGE_MATTER_CARD_TOUCH_VISIBILITY_CONTRACT_20260728
 * The upper matter grid and lower practice grid use this one interaction
 * contract. Gold and green ownership is explicit in markup. Foreground and
 * background switch atomically. Upper cards do not use the legacy animated
 * full-card pseudo-element; like the lower practice cards, they fill their
 * actual card surface directly so touch compositing cannot obscure content.
 */
body.jcc-page-home.jcc-grey-return main a[data-jcc-home-tone-card][data-jcc-card-tone] {
  transition: transform .2s ease, box-shadow .2s ease !important;
}

html body.jcc-page-home.jcc-grey-return main .jcc-matter-finder
  a.jcc-matter-card[data-jcc-home-tone-card][data-jcc-card-tone]::before {
  content: none !important;
  display: none !important;
  transform: none !important;
  transition: none !important;
}

html body.jcc-page-home.jcc-grey-return main .jcc-matter-finder
  a.jcc-matter-card[data-jcc-home-tone-card][data-jcc-card-tone] {
  color: var(--jcc-current-ink) !important;
  -webkit-text-fill-color: var(--jcc-current-ink) !important;
  background: var(--jcc-brand-white) !important;
  background-color: var(--jcc-brand-white) !important;
  background-image: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

html body.jcc-page-home.jcc-grey-return main .jcc-matter-finder
  a.jcc-matter-card[data-jcc-home-tone-card][data-jcc-card-tone] :is(.jcc-matter-number, i) {
  color: var(--jcc-brand-charcoal) !important;
  -webkit-text-fill-color: var(--jcc-brand-charcoal) !important;
}

html body.jcc-page-home.jcc-grey-return main .jcc-matter-finder
  a.jcc-matter-card[data-jcc-home-tone-card][data-jcc-card-tone] strong {
  color: var(--jcc-brand-charcoal-deep) !important;
  -webkit-text-fill-color: var(--jcc-brand-charcoal-deep) !important;
}

html body.jcc-page-home.jcc-grey-return main .jcc-matter-finder
  a.jcc-matter-card[data-jcc-home-tone-card][data-jcc-card-tone] > span:nth-of-type(2) {
  color: var(--jcc-brand-mid-grey) !important;
  -webkit-text-fill-color: var(--jcc-brand-mid-grey) !important;
}

body.jcc-page-home.jcc-grey-return main [data-jcc-home-tone-card][data-jcc-card-tone="gold"] {
  --jcc-card-accent: var(--jcc-brand-gold);
  --jcc-card-selected-background: var(--jcc-brand-gold);
  --jcc-card-selected-foreground: var(--jcc-brand-charcoal-deep);
}

body.jcc-page-home.jcc-grey-return main [data-jcc-home-tone-card][data-jcc-card-tone="green"] {
  --jcc-card-accent: var(--jcc-brand-forest);
  --jcc-card-selected-background: var(--jcc-brand-forest);
  --jcc-card-selected-foreground: var(--jcc-brand-ivory);
}

html body.jcc-page-home.jcc-grey-return main :is(
  #jcc-home-tone-card-force#jcc-home-tone-card-force#jcc-home-tone-card-force#jcc-home-tone-card-force#jcc-home-tone-card-force#jcc-home-tone-card-force,
  a[data-jcc-home-tone-card][data-jcc-card-tone]
):is(
  :hover,
  :focus,
  :focus-visible,
  :active,
  .is-selected,
  [aria-selected="true"],
  [aria-pressed="true"]
) {
  color: var(--jcc-card-selected-foreground) !important;
  -webkit-text-fill-color: var(--jcc-card-selected-foreground) !important;
  background: var(--jcc-card-selected-background) !important;
  background-color: var(--jcc-card-selected-background) !important;
  background-image: none !important;
  border-color: var(--jcc-card-accent) !important;
  box-shadow: var(--jcc-brand-shadow-card-active) !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(-4px) !important;
}

html body.jcc-page-home.jcc-grey-return main :is(
  #jcc-home-tone-card-force#jcc-home-tone-card-force#jcc-home-tone-card-force#jcc-home-tone-card-force#jcc-home-tone-card-force#jcc-home-tone-card-force,
  a[data-jcc-home-tone-card][data-jcc-card-tone]
):is(
  :hover,
  :focus,
  :focus-visible,
  :active,
  .is-selected,
  [aria-selected="true"],
  [aria-pressed="true"]
) > * {
  color: var(--jcc-card-selected-foreground) !important;
  -webkit-text-fill-color: var(--jcc-card-selected-foreground) !important;
  opacity: 1 !important;
  visibility: visible !important;
}

html body.jcc-page-home.jcc-grey-return main
  a[data-jcc-home-tone-card][data-jcc-card-tone]:focus-visible {
  outline: 3px solid var(--jcc-card-accent);
  outline-offset: 3px;
}
/*
 * JCC_HOMEPAGE_PROFILE_AWARD_CONCIERGE_ALIGNMENT_CONTRACT_20260725
 * Keep the profile strip clear of its lower edge, move the desktop award mark
 * slightly inward, and never break the governed AI Legal Concierge name.
 */
body.jcc-page-home.jcc-grey-return .jcc-home-hero-attribution {
  padding-bottom: 18px;
}

body.jcc-page-home.jcc-grey-return .jcc-ai-legal-concierge-name {
  display: inline-block;
  white-space: nowrap;
}

body.jcc-page-home.jcc-grey-return
  .jcc-concierge-home-copy > a .jcc-concierge-action-label {
  min-width: 0;
}

@media (min-width: 721px) {
  body.jcc-page-home.jcc-grey-return
    .jcc-home-redesign-hero.jcc-home-hero--about-layout
    .jcc-home-hero-visual figcaption img {
    transform: translateX(8px);
  }
}


/*
 * JCC_HOMEPAGE_COMPACT_TESTIMONIAL_CAROUSEL_20260726
 * Keep all six supplied reviews intact while replacing the tall two-row grid
 * with one compact, keyboard-accessible editorial carousel.
 */
body.jcc-page-home.jcc-grey-return .jcc-review-toolbar {
  display: flex !important;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin: 0 0 20px;
}

body.jcc-page-home.jcc-grey-return .jcc-review-scroll-copy {
  display: grid;
  gap: 4px;
  max-width: 460px;
}

body.jcc-page-home.jcc-grey-return .jcc-review-scroll-copy strong {
  color: var(--jcc-brand-charcoal-deep);
  font-size: 12px;
  letter-spacing: .12em;
  text-transform: uppercase;
}

body.jcc-page-home.jcc-grey-return .jcc-review-scroll-copy span {
  color: var(--jcc-brand-graphite);
  font-size: 13px;
  line-height: 1.45;
}

body.jcc-page-home.jcc-grey-return .jcc-review-navigation {
  display: flex;
  align-items: center;
  gap: 10px;
}

body.jcc-page-home.jcc-grey-return .jcc-review-navigation button {
  display: grid;
  width: 42px;
  height: 42px;
  padding: 0;
  place-items: center;
  color: var(--jcc-brand-ivory);
  background: var(--jcc-brand-forest);
  border: 1px solid var(--jcc-brand-forest);
  border-radius: 50%;
  font-size: 18px;
  cursor: pointer;
}

body.jcc-page-home.jcc-grey-return .jcc-review-navigation button:hover,
body.jcc-page-home.jcc-grey-return .jcc-review-navigation button:focus-visible {
  background: var(--jcc-brand-forest-hover);
}

body.jcc-page-home.jcc-grey-return .jcc-review-navigation button:disabled {
  color: #77736c;
  background: var(--jcc-brand-greige);
  border-color: var(--jcc-brand-stone);
  cursor: default;
}

body.jcc-page-home.jcc-grey-return
  .jcc-review-navigation [data-jcc-review-status] {
  min-width: 88px;
  color: var(--jcc-brand-graphite);
  font-size: 12px;
  font-weight: 700;
  text-align: center;
}

body.jcc-page-home.jcc-grey-return .jcc-home-reviews .jcc-testimonials {
  display: grid !important;
  grid-template-columns: none !important;
  grid-template-rows: 1fr !important;
  grid-auto-flow: column;
  grid-auto-columns: calc((100% - 32px) / 3);
  align-items: stretch;
  gap: 16px !important;
  padding: 0 0 12px !important;
  overflow-x: auto !important;
  overscroll-behavior-x: contain;
  background: transparent !important;
  border: 0 !important;
  scroll-snap-type: x mandatory;
  scrollbar-color: var(--jcc-brand-gold) var(--jcc-brand-greige);
  scrollbar-width: thin;
}

body.jcc-page-home.jcc-grey-return .jcc-home-reviews
  .jcc-testimonials figure,
body.jcc-page-home.jcc-grey-return .jcc-home-reviews
  .jcc-testimonials .jcc-review-featured {
  min-height: 0 !important;
  padding: 28px 30px 30px !important;
  overflow: hidden;
  background: var(--jcc-brand-ivory) !important;
  border: 1px solid var(--jcc-brand-stone) !important;
  border-top: 4px solid var(--jcc-brand-gold) !important;
  border-radius: 10px !important;
  box-shadow: var(--jcc-brand-shadow-card) !important;
  scroll-snap-align: start;
}

body.jcc-page-home.jcc-grey-return .jcc-home-reviews
  .jcc-testimonials figure:nth-child(even) {
  border-top-color: var(--jcc-brand-forest) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-home-reviews
  .jcc-testimonials figure + figure {
  border-left: 1px solid var(--jcc-brand-stone) !important;
}

body.jcc-page-home.jcc-grey-return .jcc-home-reviews
  .jcc-testimonials figure::before {
  height: 24px !important;
  margin-bottom: 8px !important;
  font-size: 44px !important;
  line-height: .8 !important;
}

body.jcc-page-home.jcc-grey-return .jcc-home-reviews
  .jcc-testimonials figure > span {
  margin-bottom: 12px !important;
  font-size: 10px !important;
  line-height: 1.35;
}

body.jcc-page-home.jcc-grey-return .jcc-home-reviews
  .jcc-testimonials blockquote,
body.jcc-page-home.jcc-grey-return .jcc-home-reviews
  .jcc-testimonials .jcc-review-featured blockquote {
  margin: 0 0 18px !important;
  color: var(--jcc-brand-charcoal-deep) !important;
  font-size: 17.5px !important;
  line-height: 1.48 !important;
}

body.jcc-page-home.jcc-grey-return .jcc-home-reviews
  .jcc-testimonials figcaption {
  color: var(--jcc-brand-forest) !important;
  font-size: 15.5px !important;
  line-height: 1.35;
}

body.jcc-page-home.jcc-grey-return .jcc-home-reviews
  .jcc-testimonials .jcc-review-source {
  margin-top: 14px;
  font-size: 11.5px;
  line-height: 1.45;
}

@media (min-width: 721px) and (max-width: 1100px) {
  body.jcc-page-home.jcc-grey-return .jcc-home-reviews .jcc-testimonials {
    grid-auto-columns: calc((100% - 16px) / 2);
  }
}

@media (max-width: 720px) {
  body.jcc-page-home.jcc-grey-return .jcc-review-toolbar {
    align-items: flex-end;
    margin-bottom: 16px;
  }

  body.jcc-page-home.jcc-grey-return
    .jcc-review-navigation [data-jcc-review-status] {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto;
    white-space: nowrap;
  }

  body.jcc-page-home.jcc-grey-return .jcc-home-reviews .jcc-testimonials {
    grid-auto-columns: min(300px, 88vw) !important;
    gap: 12px !important;
    padding-right: 30px !important;
  }

  body.jcc-page-home.jcc-grey-return .jcc-home-reviews
    .jcc-testimonials figure,
  body.jcc-page-home.jcc-grey-return .jcc-home-reviews
    .jcc-testimonials .jcc-review-featured {
    padding: 22px 22px 24px !important;
  }

  body.jcc-page-home.jcc-grey-return .jcc-home-reviews
    .jcc-testimonials blockquote,
  body.jcc-page-home.jcc-grey-return .jcc-home-reviews
    .jcc-testimonials .jcc-review-featured blockquote {
    font-size: 17px !important;
    line-height: 1.45 !important;
  }
}

@media (max-width: 520px) {
  body.jcc-page-home.jcc-grey-return .jcc-review-toolbar {
    align-items: stretch;
    flex-direction: column;
  }

  body.jcc-page-home.jcc-grey-return .jcc-review-navigation {
    justify-content: space-between;
  }
}
