/* Shared service-leadership module rhythm for the remaining five case studies.
   Project-specific content, evidence grids and interactive demos stay intact. */
.case-modal-detail.aligned-case:is(.loco-page,.zhiduoxing-page,.ok-case,.starry-case,.structured-thinking-page) {
  --case-panel:#14141b;
  --case-line:rgba(255,255,255,.13);
  --case-text:#f3f2f6;
  --case-muted:#a5a5b2;
}
.case-modal-detail.aligned-case :is(.case-hero,.visual-hero,.starry-case-hero,.zdx-case-hero) {
  padding:26px 0 62px;
  border-bottom:1px solid var(--case-line);
  background:transparent;
}
.case-modal-detail.aligned-case :is(.case-hero,.visual-hero-copy) h1 {
  max-width:900px;
  margin:24px 0 22px;
  color:var(--case-text);
  font:650 clamp(32px,4.6vw,56px)/1.18 var(--font-sans);
  letter-spacing:-.055em;
}
.case-modal-detail.aligned-case :is(.case-lead,.visual-hero-copy>p) {
  max-width:800px;
  margin:0;
  color:#b9b8c3;
  font:400 15px/1.95 var(--font-sans);
}
.case-modal-detail.aligned-case .case-meta { gap:18px 28px; margin-top:28px; }
.case-modal-detail.aligned-case .case-meta dt { font-size:11px; color:var(--case-muted); }
.case-modal-detail.aligned-case .case-meta dd { font-size:13px; line-height:1.7; color:var(--case-text); }
.case-modal-detail.aligned-case:is(.loco-page,.zhiduoxing-page,.ok-case,.starry-case,.structured-thinking-page) :is(.visual-case,.visual-section) {
  padding-top:clamp(112px,9vw,152px);
  padding-bottom:clamp(112px,9vw,152px);
  border-bottom:1px solid var(--case-line);
}
.case-modal-detail.aligned-case:is(.loco-page,.zhiduoxing-page,.ok-case,.starry-case,.structured-thinking-page) :is(.visual-heading,.visual-section-head,.zdx-section-head) {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:17px;
  align-items:start;
  margin-bottom:58px;
}
.case-modal-detail.aligned-case :is(.visual-heading,.visual-section-head,.zdx-section-head) .case-index {
  display:grid;
  align-content:start;
  gap:8px;
  margin:0;
  padding:0;
  color:var(--case-accent);
  font:500 19px/1 var(--font-mono);
  letter-spacing:.02em;
}
.case-modal-detail.aligned-case :is(.visual-heading,.visual-section-head,.zdx-section-head) .case-index span {
  margin:0;
  color:var(--case-muted);
  font:500 11px/1.4 var(--font-sans);
  letter-spacing:.06em;
  text-transform:none;
}
.case-modal-detail.aligned-case:is(.loco-page,.zhiduoxing-page,.ok-case,.starry-case,.structured-thinking-page) :is(.visual-heading,.visual-section-head,.zdx-section-head) h2 {
  max-width:820px;
  margin:0 0 19px;
  color:var(--case-text);
  font:600 clamp(34px,3.4vw,46px)/1.2 var(--font-sans);
  letter-spacing:-.035em;
}
.case-modal-detail.aligned-case:is(.loco-page,.zhiduoxing-page,.ok-case,.starry-case,.structured-thinking-page) :is(.visual-heading,.visual-section-head,.zdx-section-head) p {
  max-width:760px;
  margin:0;
  color:#b9b8c3;
  font-size:15px;
  line-height:1.95;
}
.case-modal-detail.aligned-case .visual-gallery { grid-template-columns:repeat(2,minmax(0,1fr)); gap:32px 28px; }
.case-modal-detail.aligned-case .visual-gallery--details { margin-top:32px; }
.case-modal-detail.aligned-case .visual-card a { display:block; aspect-ratio:auto; overflow:hidden; border:1px solid var(--case-line); border-radius:14px; background:var(--case-panel); }
.case-modal-detail.aligned-case .visual-card img { display:block; width:100%; height:auto; object-fit:contain; }
.case-modal-detail.aligned-case :is(.visual-card,.visual-figure) figcaption { gap:7px; padding:12px 2px 0; color:var(--case-muted); font-size:11px; line-height:1.7; }
.case-modal-detail.aligned-case .visual-card figcaption b { color:var(--case-text); font-size:13px; font-weight:550; }
.case-modal-detail.aligned-case .visual-divider { display:none; }
.case-modal-detail.aligned-case :is(.primary-outcomes,.zdx-proof-strip,.ok-quick-facts) { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; border:0; background:transparent; }
.case-modal-detail.aligned-case :is(.primary-outcomes,.zdx-proof-strip,.ok-quick-facts)>:is(article,div) { min-width:0; padding:28px 30px; border:1px solid var(--case-line); border-radius:16px; background:var(--case-panel); }
.case-modal-detail.aligned-case :is(.primary-outcomes,.zdx-proof-strip,.ok-quick-facts) strong { color:var(--case-accent); font-family:var(--font-mono); }
.case-modal-detail.aligned-case.zhiduoxing-page .zdx-proof-strip > div { min-height:92px; gap:8px; padding:18px 22px; }
/* Article prose keeps its own paragraph and figure spacing. */
.case-modal-detail.aligned-case.structured-thinking-page .thinking-figure { margin:48px 0 56px; }
@media(max-width:760px) {
  .case-modal-detail.aligned-case :is(.case-hero,.visual-hero,.starry-case-hero,.zdx-case-hero) { padding:26px 0 48px; }
  .case-modal-detail.aligned-case :is(.case-hero,.visual-hero-copy) h1 { font-size:32px; }
  .case-modal-detail.aligned-case:is(.loco-page,.zhiduoxing-page,.ok-case,.starry-case,.structured-thinking-page) :is(.visual-case,.visual-section) { padding-top:86px; padding-bottom:92px; }
  .case-modal-detail.aligned-case:is(.loco-page,.zhiduoxing-page,.ok-case,.starry-case,.structured-thinking-page) :is(.visual-heading,.visual-section-head,.zdx-section-head) { margin-bottom:39px; }
  .case-modal-detail.aligned-case:is(.loco-page,.zhiduoxing-page,.ok-case,.starry-case,.structured-thinking-page) :is(.visual-heading,.visual-section-head,.zdx-section-head) h2 { font-size:clamp(28px,8vw,36px); line-height:1.23; }
  .case-modal-detail.aligned-case:is(.loco-page,.zhiduoxing-page,.ok-case,.starry-case,.structured-thinking-page) :is(.visual-heading,.visual-section-head,.zdx-section-head) p { font-size:14px; line-height:1.9; }
  .case-modal-detail.aligned-case .visual-gallery { grid-template-columns:1fr; gap:26px; }
  .case-modal-detail.aligned-case :is(.primary-outcomes,.zdx-proof-strip,.ok-quick-facts) { grid-template-columns:1fr; gap:14px; }
  .case-modal-detail.aligned-case :is(.primary-outcomes,.zdx-proof-strip,.ok-quick-facts)>:is(article,div) { padding:24px; }
  .case-modal-detail.aligned-case.zhiduoxing-page .zdx-proof-strip > div { min-height:76px; }
  .case-modal-detail.aligned-case .visual-figure figcaption { flex-direction:column; gap:4px; }
  .case-modal-detail.aligned-case.structured-thinking-page .thinking-figure { margin:36px 0 44px; }
}

/* Reset legacy edge-column spacing now that OK facts are separate cards. */
.case-modal-detail.remaining-case.ok-case.aligned-case .ok-quick-facts>.ok-fact {
  padding:28px 30px;
  border:1px solid var(--case-line);
}
@media(max-width:760px) {
  .case-modal-detail.remaining-case.ok-case.aligned-case .ok-quick-facts>.ok-fact {
    padding:24px;
    border:1px solid var(--case-line);
  }
}

/* Keep the Zhiduoxing and Starry introductions open beneath their metadata. */
.case-modal-detail.aligned-case.zhiduoxing-page .zdx-case-hero,
.case-modal-detail.aligned-case.starry-case .starry-case-hero {
  border-bottom:0;
}
