.case-hero { padding:82px 0 62px; max-width:880px; }.case-hero h1 { max-width:880px; }.lede { max-width:760px; color:var(--muted); font-size:clamp(1.15rem,2vw,1.45rem); line-height:1.45; }.role-strip { display:flex; flex-wrap:wrap; gap:8px; margin-top:28px; }.role-strip span { padding:8px 11px; border:1px solid var(--line); border-radius:999px; background:var(--surface); color:var(--muted); font-size:.82rem; font-weight:700; }
.stage-title, .stage-summary { display:block; }
.view-switch { display:flex; justify-content:space-between; gap:28px; align-items:end; padding:32px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }.view-switch h2 { max-width:480px; font-size:clamp(1.55rem,3vw,2.2rem); }.switch-buttons { display:flex; gap:8px; flex-wrap:wrap; }.view-button { padding:10px 14px; border:1px solid var(--line); border-radius:999px; background:transparent; color:var(--muted); cursor:pointer; font-weight:750; }.view-button.active,.view-button:hover { border-color:var(--teal); background:var(--teal); color:#fff; }
.story-grid { display:grid; grid-template-columns:1.35fr .85fr; gap:46px; padding:86px 0; }.story-grid h2,.workflow-section h2,.quality-section h2,.impact-section h2,.role-section h2,.closing h2 { font-size:clamp(2rem,4vw,3.4rem); }.story-grid article p:not(.eyebrow) { max-width:650px; color:var(--muted); font-size:1.07rem; }.principle-card { align-self:start; padding:25px; border-radius:var(--radius); background:var(--ink); color:#fff; }.principle-card .eyebrow { color:#75d7d1; }.principle-card .quote { margin:24px 0; font-size:1.42rem; font-weight:700; line-height:1.2; letter-spacing:-.03em; }.principle-card p:last-child { color:#c8d9d8; }
.workflow-section { padding:80px 0; border-top:1px solid var(--line); }.section-heading { max-width:760px; }.section-heading > p:last-child { color:var(--muted); }.pipeline { display:grid; gap:10px; margin-top:34px; }.stage { border:1px solid var(--line); border-radius:15px; overflow:hidden; background:var(--surface); }.stage-button { width:100%; display:grid; grid-template-columns:46px 1fr auto; gap:14px; align-items:center; padding:18px 20px; border:0; background:none; color:var(--ink); cursor:pointer; text-align:left; }.stage-button:hover { background:#fbfcfc; }.stage-index { color:var(--teal); font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size:.8rem; font-weight:800; }.stage-title { font-size:1.06rem; font-weight:800; }.stage-summary { margin-top:2px; color:var(--muted); font-size:.92rem; }.stage-symbol { color:var(--teal); font-size:1.4rem; transition:transform .2s ease; }.stage.open .stage-symbol { transform:rotate(45deg); }.stage-panel { display:none; padding:0 20px 20px 80px; color:var(--muted); }.stage.open .stage-panel { display:block; }.stage-panel p { max-width:760px; margin-bottom:0; }.stage-panel strong { color:var(--ink); }
.quality-section { padding:82px 0; }.quality-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:30px; }.quality-grid article { min-height:210px; padding:23px; border:1px solid var(--line); border-radius:var(--radius); background:var(--surface); }.quality-grid h3 { margin-bottom:14px; }.quality-grid p { color:var(--muted); }.impact-section { display:grid; grid-template-columns:1fr 1fr; gap:64px; padding:84px 0; border-top:1px solid var(--line); }.impact-copy p:not(.eyebrow) { color:var(--muted); font-size:1.1rem; }.impact-list { display:grid; gap:0; }.impact-list div { display:grid; grid-template-columns:145px 1fr; gap:14px; padding:18px 0; border-bottom:1px solid var(--line); }.impact-list strong { color:var(--teal); }.impact-list span { color:var(--muted); }
.role-section { display:grid; grid-template-columns:.85fr 1.15fr; gap:70px; padding:84px 0; border-top:1px solid var(--line); }.role-list p { padding-bottom:18px; margin-bottom:18px; border-bottom:1px solid var(--line); color:var(--muted); }.role-list strong { color:var(--ink); }.closing { padding:96px 0 58px; text-align:center; }.closing h2,.closing p { max-width:760px; margin-left:auto; margin-right:auto; }.closing p:not(.eyebrow) { color:var(--muted); font-size:1.15rem; }.confidentiality { max-width:760px; margin:0 auto 60px; color:var(--muted); font-size:.8rem; text-align:center; }
@media (max-width:760px) { .case-hero { padding:58px 0 46px; }.view-switch,.story-grid,.impact-section,.role-section { grid-template-columns:1fr; display:grid; }.view-switch { align-items:start; }.story-grid,.impact-section,.role-section { gap:28px; padding:58px 0; }.stage-button { grid-template-columns:35px 1fr auto; padding:16px; }.stage-panel { padding:0 16px 18px; }.quality-grid { grid-template-columns:1fr; }.quality-grid article { min-height:0; }.impact-list div { grid-template-columns:1fr; gap:5px; }.closing { padding-top:70px; } }
