/* ============================================================================
   OMNIKOM - page: /case-studies (honest-pending proof page)
   REGENERATED (cycle 6): the page consumes the shared component layer
   (components.css: c-hero/c-hero__*, c-center + c-head__*, c-foot, c-rows,
   c-center-row, c-cta/c-cta__*, c-btn-row). Section rhythm, head/hero/CTA
   centering, the numbered content-model rows and the closing band are all
   component-owned and are NOT re-declared here.

   What survives below: the per-page deltas, and this page's signature
   structures that no component owns - - .cs-metrics__*  label + definition rows (c-rows is numbered, c-dots is
                       bulleted; neither is a fixed-label/flowing-copy row)
     - .cs-panel*      the sample delivery record (the only panel on the site)
   Cycle 10: the honesty-stance band merged into the hero (.cs-hero__kicker /
   .cs-hero__rule replace .cs-stance__rule) and the reserved call-receipt band
   was killed, so .cs-receipts__badge is gone with it.
   Cycle 12: the coverage band was cut as navigation, so .cs-coverage__list and
   its pill styling went with it.
   Tokens only; centering of the kept blocks comes from the component layer
   (.c-center-row) or margin-inline:auto, so reading content stays left.
   ========================================================================== */

.p-case-studies{ overflow-x:clip; }

/* ================= 1 - HERO (delta) ================= */
/* the curtain headline gets a wide measure so it sets in two lines at desktop
   rather than stranding 'vertical matures.' on a third */
.p-case-studies .c-hero__title{ max-width:min(1100px,100%); }
/* the secondary hero action is a link, not a pill: hold it at note size beside .btn--lg */
.cs-hero__seelink{ font-size:var(--t-note); }
/* the honesty stance now lives in the hero: a mono kicker under the deck, then the
   compliance rule as a ruled footnote pulled tight against it */
.cs-hero__kicker{
  margin-top:var(--s-4); font-size:var(--t-note); letter-spacing:.04em; color:var(--lime);
}
.cs-hero__rule{
  margin-top:var(--s-5); padding-top:var(--s-4);
  border-top:1px solid rgba(245,245,245,.2);
}

/* ================= 2 - THE CONTENT MODEL (delta) ================= */
/* row 05 is the payoff line: give it a breath so the list closes on it */
.cs-anatomy__last{ margin-top:var(--s-5); }

/* ================= 3 - THE METRIC LABELS (kept: page-signature) ================= */
.cs-metrics__rows{
  list-style:none; margin:clamp(36px,5vw,56px) auto 0; padding:0;
  display:grid; grid-template-columns:1fr; gap:0;
  max-width:min(60rem,100%); text-align:left;
  border-top:1px solid rgba(245,245,245,.2);
}
.cs-metrics__row{
  display:flex; flex-direction:column; gap:6px; padding:18px 0;
  border-bottom:1px solid rgba(245,245,245,.16);
}
.cs-metrics__label{
  font-size:var(--t-eyebrow); letter-spacing:.06em; text-transform:uppercase; color:var(--lime);
}
.cs-metrics__row p{ font-size:var(--t-note); line-height:1.5; max-width:54ch; }

@media (min-width:768px){
  .cs-metrics__row{ flex-direction:row; align-items:baseline; gap:36px; }
  .cs-metrics__label{ flex:0 0 220px; }
}

/* at desktop the glossary halves its height and reads two-up, so it can never be
   mistaken for a second numbered list under the content model */
@media (min-width:1200px){
  .cs-metrics__rows{
    grid-template-columns:1fr 1fr; column-gap:clamp(40px,4vw,64px);
    max-width:min(74rem,100%);
  }
  .cs-metrics__row{ flex-direction:column; gap:6px; }
  .cs-metrics__label{ flex:none; }
  .cs-metrics__row p{ max-width:44ch; }
}

/* ================= 4 - THE PROOF STANDARD panel (kept: page-signature) ================= */
.cs-panel{
  margin:clamp(32px,4.5vw,48px) auto 0;
  background:var(--ink-20); border:1px solid var(--ink-40); border-radius:var(--r-card);
  padding:clamp(24px,3.5vw,36px) clamp(24px,4vw,40px);
  max-width:720px; text-align:left;
}
.cs-panel__tag{
  font-size:var(--t-label); letter-spacing:.06em; color:var(--paper-muted); margin-bottom:20px;
  padding-bottom:var(--s-4); border-bottom:1px solid var(--ink-40);
}
.cs-panel__rows{ margin:0; display:flex; flex-direction:column; gap:14px; }
.cs-panel__row{
  display:flex; flex-direction:column; gap:4px; padding-bottom:14px;
  border-bottom:1px solid var(--ink-40);
}
.cs-panel__row:last-child{ border-bottom:0; padding-bottom:0; }
.cs-panel__row dt{
  font-size:var(--t-label); letter-spacing:.06em; text-transform:uppercase; color:var(--lime);
}
.cs-panel__row dd{ margin:0; font-size:var(--t-body); line-height:1.5; color:var(--paper-full); }

@media (min-width:640px){
  .cs-panel__row{ flex-direction:row; gap:var(--s-5); align-items:baseline; }
  .cs-panel__row dt{ flex:0 0 130px; }
  .cs-panel__row dd{ flex:1; }
}

/* ================= responsive: mobile tightening ================= */
@media (max-width:639px){
  .p-case-studies .c-hero__title{ max-width:none; }
  .cs-panel{ padding:22px; }
}
