/* Case experience: approved JCC Brand Book v1.12.5, sections 6, 14 and 19.
   Scoped specificity matches the existing six-ID page-family type rules;
   these rules affect case experience only. */
html body main .jcc-case-evidence:is(#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style, .jcc-case-evidence) {
  --jcc-case-section-space: 56px;
  --jcc-case-heading-size: 42px;
  --jcc-case-title-size: 22px;
  --jcc-case-body-size: 18px;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: var(--jcc-case-section-space) 32px !important;
  color: #202020;
  background: #f6f2ea !important;
  font-family: "Hanken Grotesk", Arial, system-ui, sans-serif;
  letter-spacing: 0 !important;
  text-align: left !important;
}
html body main .jcc-case-evidence:is(#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style, .jcc-case-evidence) .jcc-related-guidance__inner {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 960px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}
html body main .jcc-case-evidence .jcc-related-guidance__header {
  margin: 0 0 24px !important;
  padding: 0 !important;
  color: #202020 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
html body main .jcc-case-evidence:is(#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style, .jcc-case-evidence) h2 {
  max-width: 900px !important;
  margin: 0 !important;
  color: #202020 !important;
  -webkit-text-fill-color: #202020 !important;
  font-family: "Libre Caslon Display", "Libre Caslon Text", Georgia, serif !important;
  font-size: var(--jcc-case-heading-size) !important;
  font-weight: 400 !important;
  line-height: 1.12 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  text-wrap: balance;
}
.jcc-case-evidence__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.jcc-case-evidence__grid--single { grid-template-columns: minmax(0, 820px); }
.jcc-case-evidence__card {
  display: flex;
  min-width: 0;
  flex-direction: column;
  gap: 16px;
  padding: 26px;
  color: #202020;
  text-decoration: none;
  background: #fffdf8;
  border: 1px solid #c9c4ba;
  border-radius: 10px;
  transition: border-color .2s ease, box-shadow .2s ease;
}
.jcc-case-evidence__card:hover,
.jcc-case-evidence__card:focus-visible {
  border-color: #355b4a;
  box-shadow: 0 10px 24px rgba(32, 32, 32, .08);
}
.jcc-case-evidence__card:focus-visible,
.jcc-case-story__stage a:focus-visible {
  outline: 3px solid #355b4a;
  outline-offset: 4px;
}
html body main .jcc-case-evidence:is(#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style, .jcc-case-evidence) .jcc-case-evidence__citation {
  min-width: 0;
  color: #202020;
  font-family: "Libre Caslon Text", Georgia, serif !important;
  font-size: var(--jcc-case-title-size) !important;
  font-weight: 400 !important;
  line-height: 1.28 !important;
  letter-spacing: 0 !important;
}
html body main .jcc-case-evidence:is(#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style, .jcc-case-evidence) :is(.jcc-case-evidence__intro, .jcc-case-evidence__outcome) {
  min-width: 0;
  max-width: min(100%, 820px) !important;
  margin: 0;
  color: #454545;
  font-family: "Hanken Grotesk", Arial, system-ui, sans-serif !important;
  font-size: var(--jcc-case-body-size) !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
}
html body main .jcc-case-evidence .jcc-case-evidence__intro { margin: 0 0 28px !important; }
html body main .jcc-case-evidence:is(#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style, .jcc-case-evidence) :is(.jcc-case-evidence__label, .jcc-related-guidance__eyebrow) {
  color: #355b4a !important;
  font-family: "Hanken Grotesk", Arial, system-ui, sans-serif;
  font-size: 12px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase;
}
.jcc-case-evidence__source {
  margin-top: auto;
  color: #355b4a;
  font-family: "Hanken Grotesk", Arial, system-ui, sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0;
}
.jcc-case-evidence__reason { display: block; margin-top: 12px; }

/* Revitech is an ordered account of three judgments, using the governed
   editorial point treatment rather than display-sized decorative numerals. */
.jcc-case-story {
  display: grid;
  margin: 28px 0 0;
  padding: 0;
  border-top: 1px solid #bdb6a8;
  list-style: none;
}
html body main .jcc-case-evidence:is(#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style, .jcc-case-evidence) .jcc-case-story__stage {
  max-width: none !important;
  margin: 0;
  border-bottom: 1px solid #c9c4ba;
}
.jcc-case-story__stage a {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
  padding: 28px 0;
  color: inherit;
  text-decoration: none;
  background: transparent;
}
.jcc-case-story__stage a:hover { background: rgba(255, 255, 255, .4); }
.jcc-case-story__number {
  padding-top: 4px;
  color: #355b4a;
  font-family: "Hanken Grotesk", Arial, system-ui, sans-serif;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .08em;
}
.jcc-case-story__content {
  display: grid;
  min-width: 0;
  grid-template-columns: minmax(220px, .8fr) minmax(0, 1.2fr);
  gap: 12px 28px;
  align-items: start;
}
.jcc-case-story__content :is(.jcc-case-evidence__label, .jcc-case-evidence__source, .jcc-case-evidence__citation) { grid-column: 1; }
.jcc-case-story__content .jcc-case-evidence__outcome { grid-column: 2; grid-row: 1 / span 3; }
.jcc-case-story__content .jcc-case-evidence__source { margin-top: 4px; }
@media (max-width: 1041px) {
  html body main .jcc-case-evidence:is(#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style, .jcc-case-evidence) {
    --jcc-case-section-space: 48px;
    --jcc-case-heading-size: 36px;
  }
}
@media (max-width: 900px) {
  .jcc-case-evidence__grid { grid-template-columns: 1fr; }
  .jcc-case-story__content { grid-template-columns: 1fr; }
  .jcc-case-story__content .jcc-case-evidence__outcome { grid-column: 1; grid-row: auto; }
}
@media (max-width: 640px) {
  html body main .jcc-case-evidence:is(#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style, .jcc-case-evidence) {
    --jcc-case-section-space: 40px;
    --jcc-case-heading-size: 30px;
    --jcc-case-title-size: 20px;
    --jcc-case-body-size: 16px;
    padding-inline: 20px !important;
  }
  html body main .jcc-case-evidence:is(#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style#jcc-case-style, .jcc-case-evidence) .jcc-related-guidance__inner { max-width: 620px !important; }
  .jcc-case-evidence__card { padding: 22px; }
  .jcc-case-story__stage a { grid-template-columns: 28px minmax(0, 1fr); gap: 16px; padding: 24px 0; }
}

/* Distinguish consecutive light sections with one quiet, neutral divider.
   The Corporate Law section keeps its clear gap above the dark closing band. */
html body main .jcc-case-evidence + .jcc-related-guidance {
  border-top: 1px solid #d8d2c8 !important;
}

/* Keep hero copy on the same governed reading rail as case/body sections.
   This stylesheet is loaded only by the eleven reviewed case-experience pages. */
html body main:has(.jcc-case-evidence):not(:has([data-jcc-hero-route="/resulting-trust-singapore/"], [data-jcc-hero-route="/constructive-trust-singapore/"], [data-jcc-hero-route="/maintenance-singapore/"])) :is(#jcc-case-rail#jcc-case-rail#jcc-case-rail#jcc-case-rail#jcc-case-rail#jcc-case-rail#jcc-case-rail#jcc-case-rail, .jcc-architecture-hero) {
  padding-inline: 32px !important;
}
@media (max-width: 640px) {
  html body main:has(.jcc-case-evidence):not(:has([data-jcc-hero-route="/resulting-trust-singapore/"], [data-jcc-hero-route="/constructive-trust-singapore/"], [data-jcc-hero-route="/maintenance-singapore/"])) :is(#jcc-case-rail#jcc-case-rail#jcc-case-rail#jcc-case-rail#jcc-case-rail#jcc-case-rail#jcc-case-rail#jcc-case-rail, .jcc-architecture-hero) {
    padding-inline: 20px !important;
  }
}
/* Legacy commercial case-page closing invitations need the same mobile edge.
   The three family layouts already have governed inner gutters. */
@media (max-width: 640px) {
  html body:has(main .jcc-case-evidence):not(:has([data-jcc-hero-route="/resulting-trust-singapore/"], [data-jcc-hero-route="/constructive-trust-singapore/"], [data-jcc-hero-route="/maintenance-singapore/"])) :is(#jcc-case-rail#jcc-case-rail#jcc-case-rail#jcc-case-rail#jcc-case-rail#jcc-case-rail#jcc-case-rail#jcc-case-rail, .jcc-prefooter-contact__inner) {
    width: calc(100% - 40px) !important;
    max-width: 620px !important;
    margin-inline: auto !important;
  }
}

/* Full case-page audit: restore the fixed roles in Brand Book sections 6,
   18A and 19. This asset is present only on the eleven case-experience routes.
   Match the legacy specificity locks without changing other page families. */
html body:has(main .jcc-case-evidence) {
  --jcc-case-page-h1: 56px;
  --jcc-case-page-h2: 42px;
  --jcc-case-page-lead: 20px;
  --jcc-case-page-faq: 21px;
  --jcc-case-page-space: 56px;
  --jcc-case-page-transition: 32px;
}
/* Keep the prose measure inside the reading column, including inherited
   72ch rules whose actual rendered width exceeds the approved 820px role. */
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main) :is(p, ul, ol) {
  max-width: 820px !important;
  letter-spacing: 0 !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main .jcc-related-guidance__title) {
  font-family: "Libre Caslon Text", Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
}
html body:has(main .jcc-case-evidence) main :is(.jcc-case-evidence__card, .jcc-case-story__stage a, .jcc-related-guidance__card):focus-visible {
  outline: 3px solid #355b4a !important;
  outline-offset: 4px !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main .jcc-rw-answer, main .jcc-rw-white:not(.jcc-resulting-replacement), main .jcc-rw-soft, main .jcc-rw-dark, main section.jcc-programme-faq, main .jcc-related-guidance) {
  padding-block: var(--jcc-case-page-space) !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main [data-jcc-hub-section]:not([data-jcc-hub-section="hero"]):not([data-jcc-hub-section="urgent"])) > .jcc-rw-wrap {
  padding-block: 0 !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, .jcc-prefooter-contact__inner) {
  padding-block: var(--jcc-case-page-space) !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main .jcc-cband-followup__inner) {
  margin-bottom: 0 !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main .jcc-cband-followup) {
  padding-block: var(--jcc-case-page-space) var(--jcc-case-page-transition) !important;
}
html body:has(main .jcc-case-evidence) main .jcc-cband-followup__inner > :last-child {
  margin-bottom: 0 !important;
}
/* Give the required compact Concierge link room without shrinking the logo,
   consultation control, or moving the established mobile breakpoint. */
.jcc-case-skip {
  position: fixed;
  z-index: 10000;
  top: 8px;
  left: 20px;
  padding: 14px 20px;
  transform: translateY(-200%);
  background: #355b4a;
  color: #fff;
  font: 600 16px/1.4 "Hanken Grotesk", Arial, sans-serif;
}
.jcc-case-skip:focus {
  transform: none;
  outline: 3px solid #dda646;
  outline-offset: 3px;
}
html body:has(main .jcc-case-evidence) header [data-jcc-mobile-menu] :is(a, button, summary) {
  box-sizing: border-box !important;
  min-height: 48px !important;
  letter-spacing: 0 !important;
}
html body:has(main .jcc-case-evidence) header [data-jcc-mobile-menu] a {
  display: flex !important;
  align-items: center !important;
}
html body:has(main .jcc-case-evidence) header [data-jcc-mobile-menu] .jcc-mobile-articles-nav > div > a:not(:first-child) {
  font-weight: 500 !important;
}
html body:has(main .jcc-case-evidence) header :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, .jcc-case-mobile-consultation) {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: center !important;
  width: min(100%, 320px) !important;
  min-height: 61px !important;
  height: auto !important;
  padding: 14px 22px !important;
  gap: 11px !important;
  border: 1px solid #dda646 !important;
  border-radius: 8px !important;
  background: #dda646 !important;
  color: #202020 !important;
  -webkit-text-fill-color: #202020 !important;
  font: 700 12px/1.2 "Hanken Grotesk", Arial, sans-serif !important;
  letter-spacing: 0 !important;
  white-space: normal !important;
  margin-top: 20px !important;
  align-self: flex-start;
}
html body:has(main .jcc-case-evidence) header :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, .jcc-case-mobile-consultation) > span {
  font: inherit !important;
  letter-spacing: 0 !important;
}
html body:has(main .jcc-case-evidence) header:has(nav[id$="-desknav"]) > div:first-child {
  box-sizing: border-box !important;
  max-width: 1244px !important;
}
@media (min-width: 1042px) {
  html body:has(main .jcc-case-evidence) header :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, .jcc-practice-menu-grid) {
    box-sizing: border-box !important;
    width: min(calc(100% - 64px), 1180px) !important;
    max-width: 1180px !important;
    margin-inline: auto !important;
    padding: 14px 0 !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 24px !important;
  }
  html body:has(main .jcc-case-evidence) header .jcc-practice-dropdown {
    max-height: calc(100dvh - 88px) !important;
    overflow-y: auto !important;
  }
}
html body:has(main .jcc-case-evidence) header :is(a, button, summary):focus-visible {
  outline: 3px solid #dda646 !important;
  outline-offset: 3px !important;
}
html body:has(main .jcc-case-evidence) header:has(nav[id$="-desknav"]) nav[id$="-desknav"],
html body:has(main .jcc-case-evidence) header:has(nav[id$="-desknav"]) nav[id$="-desknav"] a {
  letter-spacing: 0 !important;
}
@media (prefers-reduced-motion: reduce) {
  html body:has(main .jcc-case-evidence) :is(.jcc-case-evidence__card, .jcc-case-story__stage a, .jcc-related-guidance__card, .jcc-case-skip) {
    transition: none !important;
    animation: none !important;
  }
}
html body:has(main .jcc-case-evidence) header:has(nav[id$="-desknav"]) nav[id$="-desknav"] > a,
html body:has(main .jcc-case-evidence) header:has(nav[id$="-desknav"]) nav[id$="-desknav"] .jcc-practice-trigger {
  min-height: 48px !important;
  display: inline-flex !important;
  align-items: center !important;
}
@media (min-width: 1042px) and (max-width: 1279px) {
  html body:has(main .jcc-case-evidence) header:has(nav[id$="-desknav"]) > div:first-child {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 320px !important;
    grid-template-rows: 76px 48px !important;
    height: 124px !important;
    gap: 0 24px !important;
  }
  html body:has(main .jcc-case-evidence) header:has(nav[id$="-desknav"]) nav[id$="-desknav"] {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    justify-content: space-between !important;
    gap: 16px !important;
    height: 48px !important;
    width: 100% !important;
  }
  html body:has(main .jcc-case-evidence) header:has(nav[id$="-desknav"]) a[id$="-headcta"] {
    grid-column: 2 !important;
    grid-row: 1 !important;
  }
  html body:has(main .jcc-case-evidence) header:has(nav[id$="-desknav"]) .jcc-practice-dropdown {
    top: 124px !important;
    max-height: calc(100dvh - 124px) !important;
  }
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main .jcc-architecture-hero__content) > h1 {
  width: 100% !important;
  max-width: 820px !important;
  font-family: "Libre Caslon Display", "Libre Caslon Text", Georgia, serif !important;
  font-size: var(--jcc-case-page-h1) !important;
  font-weight: 400 !important;
  line-height: 1.07 !important;
  letter-spacing: 0 !important;
  text-wrap: balance;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main, .jcc-prefooter-contact__inner) h2 {
  width: min(100%, 900px) !important;
  max-width: 900px !important;
  font-family: "Libre Caslon Display", "Libre Caslon Text", Georgia, serif !important;
  font-size: var(--jcc-case-page-h2) !important;
  font-weight: 400 !important;
  line-height: 1.12 !important;
  letter-spacing: 0 !important;
  text-wrap: balance;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main .jcc-architecture-hero__content) > :is(.readiness-answer, .jcc-hero-lead, .jcc-rw-hero-lead) {
  font-family: "Hanken Grotesk", Arial, system-ui, sans-serif !important;
  font-size: var(--jcc-case-page-lead) !important;
  line-height: 1.65 !important;
  letter-spacing: 0 !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main .jcc-architecture-hero__content) > :is(.jcc-hero-kicker, .jcc-rw-label) {
  font-family: "Hanken Grotesk", Arial, system-ui, sans-serif !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
  letter-spacing: 0 !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main details.jcc-programme-faq, main details.jcc-rw-faq, main .jcc-programme-faq-list > details) > summary {
  position: relative !important;
  display: block !important;
  box-sizing: border-box !important;
  min-height: 64px !important;
  padding: 18px 64px 18px 22px !important;
  list-style: none !important;
  color: #202020 !important;
  background: transparent !important;
  font-family: "Hanken Grotesk", Arial, system-ui, sans-serif !important;
  font-size: var(--jcc-case-page-faq) !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  letter-spacing: 0 !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main details.jcc-programme-faq, main details.jcc-rw-faq, main .jcc-programme-faq-list > details) > summary::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  right: 26px !important;
  width: 9px !important;
  height: 9px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-right: 2px solid #202020 !important;
  border-bottom: 2px solid #202020 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  transform: translateY(-70%) rotate(45deg) !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main details.jcc-programme-faq, main details.jcc-rw-faq, main .jcc-programme-faq-list > details)[open] > summary::after {
  transform: translateY(-20%) rotate(225deg) !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main details.jcc-programme-faq, main details.jcc-rw-faq, main .jcc-programme-faq-list > details) > summary::before {
  content: none !important;
}
html body:has(main .jcc-case-evidence) main details[data-jcc-case-faq] > summary::-webkit-details-marker { display: none; }
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main details) > summary:focus-visible {
  outline: 3px solid #202020 !important;
  outline-offset: 4px;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main details.jcc-programme-faq, main details.jcc-rw-faq, main .jcc-programme-faq-list > details) {
  box-sizing: border-box !important;
  width: min(100%, 900px) !important;
  max-width: 900px !important;
  padding: 0 !important;
  margin: 0 0 10px !important;
  border: 1px solid #cfc8bc !important;
  background: #fff !important;
  box-shadow: none !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main details.jcc-programme-faq, main details.jcc-rw-faq, main .jcc-programme-faq-list > details)[open] {
  background: #f6f2ea !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main details[data-jcc-case-faq]) > div {
  padding: 0 22px 24px !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main details[data-jcc-case-faq]) > div > p {
  padding: 0 !important;
  margin: 0 !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
}
html body:has(main .jcc-case-evidence) .jcc-home-footer-bottom :is(span, a) {
  letter-spacing: 0 !important;
}
/* Corporate Law retains its section surfaces and content; remove only the
   inherited 96px section rhythm that conflicts with the normal-interior role. */
html body:has(main .jcc-case-evidence):has([data-jcc-hero-route="/corporate-law-singapore/"]) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main [data-jcc-hub-section]):not([data-jcc-hub-section="hero"]):not([data-jcc-hub-section="visual-followup"]) {
  padding-block: var(--jcc-case-page-space) !important;
}
@media (max-width: 1041px) {
  html body:has(main .jcc-case-evidence) {
    --jcc-case-page-h2: 36px;
    --jcc-case-page-space: 48px;
    --jcc-case-page-transition: 28px;
  }
}
@media (max-width: 640px) {
  html body:has(main .jcc-case-evidence) {
    --jcc-case-page-h1: 38px;
    --jcc-case-page-h2: 30px;
    --jcc-case-page-lead: 18px;
    --jcc-case-page-faq: 19px;
    --jcc-case-page-space: 40px;
    --jcc-case-page-transition: 24px;
  }
  html body:has(main .jcc-case-evidence) header:has(nav[id$="-desknav"]) > div:first-child,
  html body:has(main .jcc-case-evidence) header [data-jcc-mobile-menu] {
    padding-inline: 20px !important;
  }
  html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main .jcc-related-guidance__title) {
    font-size: 19px !important;
  }
  html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, .jcc-prefooter-contact__inner) {
    width: calc(100% - 40px) !important;
    max-width: 620px !important;
    margin-inline: auto !important;
  }
  html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main) h3 {
    font-size: 20px !important;
    letter-spacing: 0 !important;
  }
  html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main) :is(p, li):not(.jcc-rw-label, .jcc-hero-kicker, .readiness-kicker, .jcc-related-guidance__eyebrow, .jcc-rw-hero-lead, .jcc-hero-lead, .readiness-answer) {
    font-size: 16px !important;
    line-height: 1.65 !important;
  }
  /* Retain table semantics while presenting each route as a readable row card. */
  html body:has(main .jcc-case-evidence) main .jcc-case-route-table,
  html body:has(main .jcc-case-evidence) main .jcc-case-route-table tbody {
    display: block !important;
    width: 100% !important;
    overflow: visible !important;
  }
  html body:has(main .jcc-case-evidence) main .jcc-case-route-table thead {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
  }
  html body:has(main .jcc-case-evidence) main .jcc-case-route-table tbody tr {
    display: block !important;
    margin: 0 0 20px;
    padding: 20px;
    border: 1px solid #cfc8bc;
    border-radius: 8px;
    background: #fff;
  }
  html body:has(main .jcc-case-evidence) main .jcc-case-route-table td {
    display: block !important;
    padding: 0 !important;
    border: 0 !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
    overflow-wrap: anywhere;
  }
  html body:has(main .jcc-case-evidence) main .jcc-case-route-table td + td { margin-top: 16px; }
  html body:has(main .jcc-case-evidence) main .jcc-case-route-table td::before {
    content: attr(data-label);
    display: block;
    margin-bottom: 4px;
    font-weight: 700;
    color: #202020;
  }
}
html body:has(main .jcc-case-evidence) header :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, .jcc-practice-menu-shell) {
  width: 100% !important;
  max-width: 1244px !important;
  margin-inline: auto !important;
  padding-inline: 32px !important;
  box-sizing: border-box !important;
}
html body:has(main .jcc-case-evidence) header .jcc-practice-menu-shell > :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, .jcc-practice-menu-grid) {
  width: 100% !important;
}
/* Brand-book compact onward cards, including the older Corporate Law template. */
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main [data-jcc-related-guidance]) {
  padding-inline: 0 !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main .jcc-related-guidance__grid) {
  gap: 20px !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main .jcc-related-guidance__card) {
  min-height: 128px !important;
  padding: 24px 46px !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  border-radius: 8px !important;
  background: #fffdf8 !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main .jcc-related-guidance__arrow) {
  top: 50% !important;
  right: 16px !important;
  width: 20px !important;
  height: 20px !important;
  margin-top: -10px !important;
  border: 0 !important;
  background: transparent !important;
  color: #355b4a !important;
}
html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main .jcc-urgent-call, main .jcc-urgent-whatsapp) {
  min-height: 48px !important;
  border-radius: 8px !important;
  letter-spacing: 0 !important;
}
@media (max-width: 640px) {
  html body:has(main .jcc-case-evidence) :is(#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page#jcc-case-page, main .jcc-related-guidance__card) {
    min-height: 118px !important;
    padding: 20px 46px !important;
  }
}

/* Match the canonical homepage charcoal shell on these eleven case routes. */
html body:has(main .jcc-case-evidence) > div > header:has(nav[id$="-desknav"]) {
  background: rgba(32, 32, 32, 0.97) !important;
}

/* Respect reduced motion for both desktop-menu chevrons while preserving their open state. */
@media (prefers-reduced-motion: reduce) {
  html body:has(main .jcc-case-evidence) header .jcc-practice-trigger span {
    transition: none !important;
    animation: none !important;
  }
}

/* Restore the existing urgent module to the neutral brand surface on case routes. */
html body:has(main .jcc-case-evidence) main .jcc-urgent-module {
  background: #1d1d1d !important;
  border-bottom-color: #333333 !important;
}

/* Keep the firm copyright primary and readable without changing the approved credit. */
html body:has(main .jcc-case-evidence) footer .jcc-home-footer-bottom > span:last-child {
  color: #b0b0b0 !important;
  -webkit-text-fill-color: #b0b0b0 !important;
}
