/* Value propositions and editorial diagrams. Uses the shared case grid and theme tokens. */
body.case-page .case-adlib{
  --adlib-gap:28px;
  display:block;width:100%;min-width:0;padding-block:32px 0;
  border-top:1px solid var(--cx-filet);color:var(--text-primary);
}
body.case-page .case-adlib__eyebrow{
  margin:0 0 12px;font-size:11px;line-height:1.5;letter-spacing:.1em;
  font-weight:600;color:var(--hl);
}
body.case-page .case-adlib__title{
  max-width:34ch;margin:0 0 28px;font-family:var(--display);font-size:clamp(26px,2.5vw,34px);
  font-weight:600;line-height:1.2;letter-spacing:-.025em;text-wrap:balance;
}
body.case-page .case-adlib__sentence{
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  column-gap:var(--case-column-gap);row-gap:var(--adlib-gap);margin:0;
}
body.case-page .case-adlib__part{min-width:0;padding:16px 0 0;border-top:1px solid var(--cx-filet);}
body.case-page .case-adlib__part dt{
  margin:0 0 10px;font-size:11px;line-height:1.5;letter-spacing:.06em;
  color:var(--text-secondary);font-weight:500;
}
body.case-page .case-adlib__part dd{
  margin:0;max-width:44ch;font-family:var(--display);font-size:clamp(20px,1.8vw,25px);
  line-height:1.5;font-weight:400;color:var(--text-secondary);letter-spacing:-.015em;
}
body.case-page .case-adlib__part strong{color:var(--text-primary);font-weight:550;}
body.case-page .case-adlib__source{margin:24px 0 0;font-size:12px;line-height:1.6;color:var(--text-secondary);}
/* These diagrams are explicitly labelled editorial syntheses, not source artefacts. */
body.case-page :is(.case-research-map,.case-handover-map){padding-top:8px;}
body.case-page .case-research-map__network{
  --map-link:color-mix(in srgb,var(--text-secondary) 26%,transparent);
  display:grid;grid-template-columns:minmax(0,1fr) minmax(128px,1.08fr) minmax(0,1fr);
  align-items:center;column-gap:32px;min-height:260px;
}
body.case-page .case-research-map__roles{position:relative;display:grid;gap:12px;list-style:none;padding:0;margin:0;}
body.case-page .case-research-map__roles::before{
  content:"";position:absolute;top:24px;bottom:24px;width:1px;background:var(--map-link);
}
body.case-page .case-research-map__roles--left::before{right:-16px;}
body.case-page .case-research-map__roles--right::before{left:-16px;}
body.case-page .case-research-map__roles li{
  position:relative;display:flex;align-items:center;min-height:48px;padding:8px 0;
  color:var(--text-primary);font-size:13px;line-height:1.5;overflow-wrap:normal;
}
body.case-page .case-research-map__roles--left li::after,
body.case-page .case-research-map__roles--right li::before{
  content:"";position:absolute;top:50%;width:16px;height:1px;background:var(--map-link);
}
body.case-page .case-research-map__roles--left li::after{left:100%;}
body.case-page .case-research-map__roles--right li::before{right:100%;}
body.case-page .case-research-map__document{
  position:relative;display:grid;justify-items:center;align-content:center;gap:14px;
  min-height:218px;padding:24px 14px;text-align:center;
  background:color-mix(in srgb,var(--bg-2) 55%,var(--bg));border-radius:14px;
  box-shadow:0 2px 5px #02081908,0 14px 30px #0208190d;
}
body.case-page .case-research-map__document::before,
body.case-page .case-research-map__document::after{
  content:"";position:absolute;top:50%;width:16px;height:1px;background:var(--map-link);
}
body.case-page .case-research-map__document::before{right:100%;}
body.case-page .case-research-map__document::after{left:100%;}
body.case-page .case-research-map__document p{margin:0;font-size:16px;line-height:1.4;font-weight:600;color:var(--text-primary);text-wrap:balance;}
body.case-page .case-research-map__document p.case-research-map__journey{max-width:19ch;font-size:12px;font-weight:400;line-height:1.5;color:var(--text-secondary);}
body.case-page .case-research-map__icon{width:48px;height:55px;stroke:var(--hl);stroke-width:1.35;stroke-linejoin:round;stroke-linecap:round;}
body.case-page .case-research-map__icon path:first-child{fill:color-mix(in srgb,var(--hl) 5%,var(--bg));}
body.case-page .case-research-map__moments{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;
  list-style:none;padding:24px 0 0;margin:24px 0 0;border-top:1px solid var(--cx-filet);
}
body.case-page .case-research-map__moments li{display:flex;align-items:flex-start;gap:10px;min-width:0;}
body.case-page .case-research-map__moments span{
  display:grid;place-items:center;flex:0 0 26px;width:26px;height:26px;border-radius:50%;
  background:color-mix(in srgb,var(--hl) 9%,var(--bg));font-size:10px;line-height:1;color:var(--hl);
}
body.case-page .case-research-map__moments p{margin:2px 0 0;font-size:13px;line-height:1.55;color:var(--text-primary);text-wrap:balance;}
body.case-page .case-handover-map__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;}
body.case-page .case-handover-map__item{min-width:0;padding:20px 0 0;border-top:1px solid var(--cx-filet);}
body.case-page .case-handover-map__item svg{display:block;width:38px;height:40px;margin-bottom:16px;stroke:var(--hl);stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;}
body.case-page .case-handover-map__item h4{margin:0 0 8px;max-width:24ch;font-family:var(--display);font-weight:600;font-size:19px;line-height:1.35;letter-spacing:-.01em;color:var(--text-primary);}
body.case-page .case-handover-map__item p{margin:0;max-width:29ch;font-size:14px;line-height:1.65;color:var(--text-secondary);}
@media(max-width:600px){
  body.case-page .case-adlib{--adlib-gap:22px;padding-top:24px;}
  body.case-page .case-adlib__title{font-size:27px;margin-bottom:24px;}
  body.case-page .case-adlib__sentence{grid-template-columns:minmax(0,1fr);}
  body.case-page .case-adlib__part dd{font-size:21px;line-height:1.5;}
  body.case-page .case-research-map__network{column-gap:16px;grid-template-columns:minmax(0,1fr) minmax(112px,1.1fr) minmax(0,1fr);min-height:240px;}
  body.case-page .case-research-map__roles{gap:12px;}
  body.case-page .case-research-map__roles li{font-size:12px;}
  body.case-page .case-research-map__roles--left li::after,
  body.case-page .case-research-map__roles--right li::before{width:8px;}
  body.case-page .case-research-map__roles--left::before{right:-8px;}
  body.case-page .case-research-map__roles--right::before{left:-8px;}
  body.case-page .case-research-map__document::before,body.case-page .case-research-map__document::after{width:8px;}
  body.case-page .case-research-map__document{min-height:216px;padding:20px 10px;}
  body.case-page .case-research-map__document p{font-size:14px;}
  body.case-page .case-research-map__moments{gap:16px;}
  body.case-page .case-research-map__moments li{flex-direction:column;gap:8px;}
  body.case-page .case-research-map__moments p{font-size:13px;}
  body.case-page .case-handover-map__grid{gap:24px 20px;}
  body.case-page .case-handover-map__item h4{font-size:18px;}
  body.case-page .case-handover-map__item p{font-size:13px;}
}

/* Documented validation syntheses. No product or research image treatment. */
body.case-page .case-validation-map{padding-top:8px;}
body.case-page .case-validation-map__title{
  margin:0 0 8px;font-family:var(--display);font-size:23px;line-height:1.3;
  font-weight:550;letter-spacing:-.015em;color:var(--text-primary);
}
body.case-page .case-validation-map__context{margin:0;font-size:14px;line-height:1.6;color:var(--text-secondary);}
body.case-page .case-validation-map__steps{
  display:grid;gap:0;list-style:none;padding:0;margin:28px 0 0;
}
body.case-page .case-validation-map__steps li{
  position:relative;display:grid;grid-template-columns:18px minmax(0,1fr);
  gap:18px;min-width:0;padding:0 0 28px;
}
body.case-page .case-validation-map__steps li:not(:last-child)::after{
  content:"";position:absolute;left:5px;top:18px;bottom:8px;width:1px;background:var(--cx-filet);
}
body.case-page .case-validation-map__point{
  display:block;width:11px;height:11px;margin-top:7px;border-radius:50%;
  border:1px solid var(--hl);background:color-mix(in srgb,var(--hl) 12%,var(--bg));
}
body.case-page .case-validation-map__steps h5{
  margin:0 0 8px;font-family:var(--display);font-weight:550;
  font-size:19px;line-height:1.4;letter-spacing:-.01em;color:var(--text-primary);
}
body.case-page .case-validation-map__steps p{margin:0;max-width:45ch;font-size:15px;line-height:1.65;color:var(--text-secondary);}
body.case-page .case-validation-map__steps li:last-child{padding-bottom:0;}
@media(max-width:600px){
  body.case-page .case-validation-map__title{font-size:22px;}
  body.case-page .case-validation-map__steps{margin-top:24px;}
  body.case-page .case-validation-map__steps li{gap:14px;padding-bottom:24px;}
  body.case-page .case-validation-map__steps h5{font-size:18px;}
  body.case-page .case-validation-map__steps p{font-size:14px;}
}
