/* Case Study Narrative Layer — V5.99 tokens, less systematic storytelling. */
.story-main{overflow:hidden}
.story-back{display:inline-flex;margin-top:var(--s-6);font-family:var(--font-mono);font-size:var(--fs-0);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;color:var(--ink-soft)}
.story-hero{padding:clamp(3.5rem,7vw,6.5rem) 0 var(--s-8)}
.story-hero__eyebrow,.story-kicker{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;font-family:var(--font-mono);font-size:var(--fs-0);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:var(--s-4)}
.story-hero__eyebrow strong,.story-kicker strong{font-weight:500;color:var(--redline)}
.story-hero h1{font-size:clamp(3rem,6.2vw,5.8rem);max-width:13.5ch;margin-bottom:var(--s-5)}
.story-hero__deck{max-width:63ch;font-size:clamp(1.05rem,1rem + .35vw,1.35rem);line-height:1.55;color:var(--ink-2);margin-bottom:var(--s-6)}
.story-hero__media,.story-media{margin:var(--s-6) 0 0;border:1px solid var(--rule-strong);border-radius:var(--radius-lg);overflow:hidden;background:#fff;box-shadow:var(--surface-shadow-soft)}
.story-hero__media img,.story-media img{width:100%;max-height:760px;object-fit:contain;background:#fff}
.story-media--tall img{max-height:900px}
.story-media figcaption,.story-hero__media figcaption{padding:.8rem 1rem;border-top:1px solid var(--rule);font-family:var(--font-mono);font-size:var(--fs-0);line-height:1.45;color:var(--ink-soft)}
.story-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:var(--s-6);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.story-fact{padding:var(--s-4) var(--s-4) var(--s-4) 0;border-right:1px dashed var(--rule-strong)}
.story-fact:not(:first-child){padding-left:var(--s-4)}
.story-fact:last-child{border-right:0}
.story-fact span{display:block;font-family:var(--font-mono);font-size:var(--fs-0);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:.35rem}.story-fact strong{display:block;font-size:1rem;line-height:1.4;font-weight:600}
.story-section{padding:clamp(4rem,8vw,7.5rem) 0;border-top:1px solid var(--rule)}
.story-section--paper{background:var(--paper-2)}
.story-section__copy{max-width:var(--content-prose);margin-left:auto;margin-right:auto}
.story-section__copy h2{font-size:clamp(2.2rem,4.2vw,4.2rem);max-width:14ch;margin-bottom:var(--s-5)}
.story-section__copy h3{font-size:clamp(1.55rem,2.4vw,2.25rem);max-width:20ch;margin-top:var(--s-6)}
.story-section__copy p{font-size:clamp(1rem,.96rem + .18vw,1.125rem);line-height:1.72;color:var(--ink-2);margin-bottom:1.2rem}
.story-section__copy p strong{color:var(--ink)}
.story-section__wide{max-width:var(--content-max);margin:var(--s-7) auto 0}
.story-lead{font-size:clamp(1.2rem,1.05rem + .5vw,1.55rem)!important;line-height:1.5!important;color:var(--ink)!important}
.story-insight{max-width:var(--content-prose);margin:var(--s-6) auto;padding:var(--s-5) 0 var(--s-5) var(--s-5);border-left:3px solid var(--redline)}
.story-insight p{margin:0;font-size:clamp(1.25rem,1.05rem + .7vw,1.7rem);line-height:1.45;color:var(--ink)}
.story-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:var(--s-6) auto 0;max-width:var(--content-prose);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}
.story-metric{padding:var(--s-4);border-right:1px dashed var(--rule-strong)}.story-metric:first-child{padding-left:0}.story-metric:last-child{border-right:0}.story-metric strong{display:block;font-size:clamp(1.55rem,2.5vw,2.4rem);font-weight:550;line-height:1.05}.story-metric span{display:block;margin-top:.45rem;font-family:var(--font-mono);font-size:var(--fs-0);line-height:1.45;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft)}
.story-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--s-5);margin-top:var(--s-6)}
.story-choice{padding-top:var(--s-4);border-top:1.5px solid var(--ink)}
.story-choice__num{font-family:var(--font-mono);font-size:var(--fs-0);letter-spacing:.1em;color:var(--redline);margin-bottom:var(--s-3)}
.story-choice h3{font-size:clamp(1.3rem,1.8vw,1.75rem);margin-bottom:var(--s-3)}
.story-choice p{font-size:var(--fs-2);line-height:1.6;color:var(--ink-2)}
.story-duo{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(2rem,5vw,5rem);align-items:center;margin-top:var(--s-7)}
.story-duo--reverse .story-duo__media{order:-1}
.story-duo__copy h3{font-size:clamp(1.8rem,3vw,3rem);max-width:15ch}.story-duo__copy p{font-size:1.05rem;line-height:1.7;color:var(--ink-2)}
.story-duo__media{border:1px solid var(--rule-strong);border-radius:var(--radius-lg);overflow:hidden;background:#fff;box-shadow:var(--surface-shadow-soft)}.story-duo__media img{width:100%;max-height:650px;object-fit:contain;background:#fff}.story-duo__media figcaption{padding:.75rem 1rem;border-top:1px solid var(--rule);font-family:var(--font-mono);font-size:var(--fs-0);color:var(--ink-soft)}
.story-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s-5);margin-top:var(--s-7)}
.story-gallery figure{margin:0;border:1px solid var(--rule-strong);border-radius:var(--radius-lg);overflow:hidden;background:#fff;box-shadow:var(--surface-shadow-soft)}.story-gallery img{width:100%;height:100%;max-height:680px;object-fit:contain;background:#fff}.story-gallery figcaption{padding:.75rem 1rem;border-top:1px solid var(--rule);font-family:var(--font-mono);font-size:var(--fs-0);color:var(--ink-soft)}
.story-quote{max-width:var(--content-prose);margin:var(--s-7) auto;padding:var(--s-6);border:1px solid var(--rule-strong);border-radius:var(--radius-md);background:var(--paper-3)}.story-quote p{font-size:clamp(1.3rem,2vw,1.8rem);line-height:1.45;color:var(--ink);margin:0}.story-quote cite{display:block;margin-top:var(--s-4);font-family:var(--font-mono);font-size:var(--fs-0);font-style:normal;color:var(--ink-soft);letter-spacing:.06em;text-transform:uppercase}
.story-outcome{max-width:var(--content-prose);margin:0 auto;padding:clamp(1.5rem,4vw,3rem);border:1.5px solid var(--ink);border-radius:var(--radius-lg);background:var(--paper-2);box-shadow:var(--surface-shadow-soft)}.story-outcome h2{font-size:clamp(2rem,3.8vw,3.6rem);max-width:14ch}.story-outcome p{font-size:1.05rem;line-height:1.7;color:var(--ink-2)}
.story-deep-cta{max-width:var(--content-prose);margin:0 auto;padding:var(--s-6);border:1.5px dashed var(--ink);border-radius:var(--radius-md);background:var(--paper-2)}.story-deep-cta h2{font-size:clamp(1.75rem,3vw,2.7rem);max-width:18ch}.story-deep-cta p{color:var(--ink-2);max-width:62ch}.story-deep-cta .cluster{display:flex;gap:var(--s-3);flex-wrap:wrap;margin-top:var(--s-4)}
.story-next{display:flex;justify-content:space-between;align-items:center;gap:var(--s-4);max-width:var(--content-prose);margin:0 auto}.story-next a{font-size:1rem;font-weight:600}
.story-status{display:inline-flex;align-items:center;gap:.45rem;font-family:var(--font-mono);font-size:var(--fs-0);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-soft);margin-top:var(--s-3)}.story-status::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--redline)}
@media(max-width:900px){.story-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.story-fact:nth-child(2){border-right:0}.story-fact:nth-child(n+3){border-top:1px dashed var(--rule-strong)}.story-choice-grid{grid-template-columns:1fr}.story-duo{grid-template-columns:1fr;gap:var(--s-5)}.story-duo--reverse .story-duo__media{order:0}}
@media(max-width:620px){.story-hero{padding-top:var(--s-7)}.story-hero h1{font-size:clamp(2.55rem,13vw,4rem)}.story-facts{grid-template-columns:1fr}.story-fact,.story-fact:not(:first-child){padding:var(--s-3) 0;border-right:0;border-top:1px dashed var(--rule-strong)}.story-fact:first-child{border-top:0}.story-metrics{grid-template-columns:1fr}.story-metric,.story-metric:first-child{padding:var(--s-4) 0;border-right:0;border-top:1px dashed var(--rule-strong)}.story-metric:first-child{border-top:0}.story-gallery{grid-template-columns:1fr}.story-section{padding:var(--s-8) 0}.story-insight{padding-left:var(--s-4)}.story-deep-cta{padding:var(--s-5)}.story-next{align-items:flex-start;flex-direction:column}}


/* v599-story-metric-word-hardening */
.story-metric strong {
  font-size: clamp(1.5rem, 1.85vw, 2rem);
  overflow-wrap: normal !important;
  word-break: normal !important;
  hyphens: none !important;
}
