.case-study{max-width:1120px;padding-bottom:clamp(2rem,5vw,4rem)}
.case-study .case-hero{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:clamp(2rem,5vw,5rem);align-items:end;padding-block:clamp(2rem,5vw,4rem) 2.5rem}
.case-study .case-intro{min-width:0}
.case-study h1{font-size:clamp(2.35rem,4.6vw,4rem);line-height:1.07;max-width:20ch;margin-bottom:1.35rem;text-wrap:balance}
.case-study .lede{font-size:clamp(1.05rem,1.6vw,1.2rem);line-height:1.65;max-width:54ch}
.case-study .eyebrow{font-size:.71rem;line-height:1.6;letter-spacing:.11em;margin-bottom:1rem}
.case-study h2{font-size:clamp(1.45rem,2.5vw,1.85rem);line-height:1.2;letter-spacing:-.035em}
.case-study h3{font-size:1.2rem;line-height:1.3;letter-spacing:-.025em}
.case-study .case-facts{border-top:2px solid var(--ink);padding-top:1.1rem}
.case-study .case-facts h2{font-size:1rem;letter-spacing:-.015em;margin-bottom:.7rem}
.case-study .case-facts dl{margin:0}
.case-study .case-facts dl>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:.8rem;padding-block:.7rem;border-bottom:1px solid var(--line);font-size:.875rem;line-height:1.5}
.case-study .case-facts dt{color:var(--muted)}
.case-study .case-facts dd{margin:0;font-weight:650}
.case-study .case-outcome{display:grid;grid-template-columns:190px minmax(0,1fr);gap:1.5rem;align-items:baseline;padding:1.4rem 1.6rem;background:var(--panel);border-left:3px solid var(--ink)}
.case-study .case-outcome h2{font-size:.85rem;letter-spacing:0;margin:0}
.case-study .case-outcome p{font-size:1.075rem;color:var(--ink);line-height:1.55;margin:0}
.case-study .case-body{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:start;padding-block:clamp(2.5rem,5vw,4rem)}
.case-study .case-story>h2{margin-bottom:1.8rem}
.case-study .case-steps{list-style:none;counter-reset:case-step;margin:0;padding:0}
.case-study .case-steps>li{position:relative;counter-increment:case-step;padding:0 0 1.8rem 3rem}
.case-study .case-steps>li:last-child{padding-bottom:0}
.case-study .case-steps>li::before{content:counter(case-step,decimal-leading-zero);position:absolute;left:0;top:.1rem;font:650 .85rem/1.6 ui-monospace,monospace;color:var(--muted)}
.case-study .case-steps>li:not(:last-child)::after{content:"";position:absolute;left:.55rem;top:1.9rem;bottom:.7rem;width:1px;background:var(--line)}
.case-study .case-steps p{margin:0;line-height:1.75}
.case-study .case-takeaways{padding:1.6rem;background:var(--panel);border-radius:.4rem}
.case-study .case-takeaways h2{font-size:1.45rem;margin-bottom:1rem}
.case-study .case-takeaways p,.case-study .case-takeaways li{font-size:.95rem;line-height:1.7;color:var(--muted)}
.case-study .case-takeaways ul{padding-left:1.2rem;margin:1rem 0}
.case-study .case-takeaways li+li{margin-top:.75rem}
.case-study .case-takeaways>a{display:inline-flex;align-items:center;min-height:44px;font-weight:650;font-size:.925rem}
.case-study .case-contact{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2.5rem;align-items:center;padding:clamp(1.5rem,4vw,2.5rem);background:var(--dark);color:var(--paper);border-radius:.5rem}
.case-study .case-contact .eyebrow{color:var(--accent)}
.case-study .case-contact p:not(.eyebrow){color:var(--paper);max-width:54ch;margin:0;line-height:1.75}
.case-study .case-contact h2{margin-bottom:1rem}
.case-study .case-contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:.75rem}
.case-study .case-contact-actions .button{border-color:var(--accent)}
.case-study .case-contact-actions>a{display:inline-flex;align-items:center;min-height:44px}
.case-study .case-contact-actions>a:not(.button){font-size:.9rem;overflow-wrap:anywhere}
.case-study .case-related{padding-top:1.5rem;display:flex;gap:.5rem 1.5rem;flex-wrap:wrap}
.case-study .case-related a{display:inline-flex;align-items:center;min-height:44px;font-size:.9rem;font-weight:600;text-decoration:underline}
.case-study :is(a,h1,h2,h3,dd){overflow-wrap:break-word}
@media(max-width:800px){
  .case-study .case-hero{grid-template-columns:minmax(0,1fr);gap:2rem}
  .case-study .case-facts dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
  .case-study .case-facts dl>div{display:block;padding-bottom:.3rem;border-bottom:0}
  .case-study .case-facts dt{margin-bottom:.35rem}
  .case-study .case-body{grid-template-columns:minmax(0,1fr);gap:2rem}
  .case-study .case-contact{grid-template-columns:minmax(0,1fr);gap:1.5rem}
  .case-study .case-contact-actions{flex-direction:row;align-items:center;flex-wrap:wrap;gap:.75rem 1.25rem}
}
@media(max-width:480px){
  .case-study .case-hero{padding-top:2rem;padding-bottom:1.5rem}
  .case-study .case-facts dl{grid-template-columns:minmax(0,1fr);gap:0}
  .case-study .case-facts dl>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:1rem;padding:.5rem 0;border-bottom:1px solid var(--line)}
  .case-study .case-facts dt{margin-bottom:0}
  .case-study .case-outcome{grid-template-columns:minmax(0,1fr);gap:.65rem;padding:1.1rem 1.2rem}
  .case-study .case-steps>li{padding-left:2.5rem}
  .case-study .case-takeaways{padding:1.3rem}
  .case-study .case-related{gap:.35rem}
  .case-study .case-related a{width:100%}
}
