.case-detail { min-height: 100vh; }
.case-detail__hero { position: relative; overflow: hidden; padding: 10rem 1.25rem 5.5rem; isolation: isolate; }
.case-detail__hero::before { position: absolute; z-index: -1; top: 2rem; right: -12rem; width: 44rem; height: 44rem; border: 1px solid rgba(129,140,248,.13); border-radius: 50%; background: radial-gradient(circle,rgba(99,102,241,.13),transparent 64%); content:""; }
.case-detail__eyebrow { display:inline-flex; align-items:center; gap:.7rem; color:var(--accent); font-size:.7rem; font-weight:800; letter-spacing:.2em; text-transform:uppercase; }
.case-detail__eyebrow::before { width:1.7rem; height:1px; background:currentColor; content:""; }
.case-detail__hero h1 { max-width:14ch; margin-top:1.3rem; font-size:clamp(2.6rem,7vw,6rem); font-weight:800; letter-spacing:-.065em; line-height:.94; text-wrap:balance; }
.case-detail__lead { max-width:45rem; margin-top:1.8rem; color:var(--text-muted); font-size:clamp(1rem,2vw,1.25rem); font-weight:300; line-height:1.75; }
.case-detail__meta { display:flex; flex-wrap:wrap; gap:.6rem; margin-top:2rem; }
.case-detail .case-chip { display:inline-flex; align-items:center; border:1px solid rgba(250,250,250,.17); border-radius:999px; background:rgba(250,250,250,.055); padding:.48rem .78rem; color:rgba(250,250,250,.8); font-size:.62rem; font-weight:750; letter-spacing:.1em; line-height:1.35; text-transform:uppercase; }
.case-detail__cover { position:relative; overflow:hidden; margin-top:3.5rem; border:1px solid var(--border-color); border-radius:clamp(1.35rem,3vw,2.6rem); background:#090b13; box-shadow:0 40px 100px rgba(0,0,0,.25); }
.case-detail__cover img { display:block; width:100%; height:auto; }
.case-detail__cover::after { position:absolute; inset:0; border:1px solid rgba(255,255,255,.08); border-radius:inherit; content:""; pointer-events:none; }
.case-detail__facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; margin-top:1.2rem; }
.case-detail__fact { min-height:8.5rem; border:1px solid var(--border-color); border-radius:1.3rem; background:var(--surface); padding:1.3rem; }
.case-detail__fact span { display:block; margin-bottom:1.2rem; color:var(--text-muted); font-size:.62rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.case-detail__fact strong { display:block; max-width:15ch; font-size:clamp(1.1rem,2vw,1.45rem); letter-spacing:-.035em; line-height:1.15; }
.case-detail__section { padding:5rem 1.25rem; border-top:1px solid var(--border-color); }
.case-detail__grid { display:grid; gap:2.5rem; }
.case-detail__number { color:var(--accent); font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.72rem; letter-spacing:.16em; }
.case-detail__section h2 { max-width:14ch; margin-top:1rem; font-size:clamp(2rem,5vw,4rem); font-weight:800; letter-spacing:-.055em; line-height:1; text-wrap:balance; }
.case-detail__copy { max-width:44rem; color:var(--text-muted); font-size:clamp(.95rem,1.6vw,1.08rem); font-weight:300; line-height:1.8; }
.case-detail__copy p + p { margin-top:1rem; }
.case-detail__list { display:grid; gap:.7rem; margin-top:1.5rem; }
.case-detail__list li { position:relative; border:1px solid var(--border-color); border-radius:1rem; background:rgba(255,255,255,.025); padding:1rem 1rem 1rem 2.6rem; color:var(--text-main); font-size:.9rem; line-height:1.5; }
.case-detail__list li::before { position:absolute; top:1.2rem; left:1rem; width:.55rem; height:.55rem; border-radius:50%; background:var(--accent); box-shadow:0 0 14px rgba(129,140,248,.55); content:""; }
.case-detail__modules { display:grid; gap:1rem; margin-top:2rem; }
.case-detail__module { border:1px solid var(--border-color); border-radius:1.5rem; background:linear-gradient(145deg,var(--surface),rgba(255,255,255,.02)); padding:1.5rem; }
.case-detail__module small { color:var(--accent); font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.68rem; }
.case-detail__module h3 { margin:.9rem 0 .55rem; font-size:1.2rem; font-weight:800; letter-spacing:-.025em; }
.case-detail__module p { color:var(--text-muted); font-size:.9rem; line-height:1.65; }
.case-detail__note { border:1px solid rgba(129,140,248,.24); border-radius:1.5rem; background:rgba(99,102,241,.07); padding:1.5rem; color:var(--text-muted); font-size:.9rem; line-height:1.75; }
.case-detail__cover--goodsoup { background:#f2f3f5; }
.case-detail__cover--goodsoup img { aspect-ratio:3/2; object-fit:cover; object-position:center; }
.case-detail__cover--product-light { background:#f4f5f7; }
.case-detail__cover--product-dark { background:#08090c; }
.case-detail__cover--product-light img,
.case-detail__cover--product-dark img { aspect-ratio:1.87/1; object-fit:cover; object-position:center; }
.case-detail__outcomes { display:grid; gap:1rem; }
.case-detail__outcomes article { border:1px solid var(--border-color); border-radius:1.35rem; background:linear-gradient(145deg,var(--surface),rgba(255,255,255,.02)); padding:1.4rem; }
.case-detail__outcomes strong { color:var(--accent); font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.68rem; letter-spacing:.12em; }
.case-detail__outcomes h3 { margin:.8rem 0 .45rem; color:var(--text-main); font-size:1.08rem; font-weight:800; letter-spacing:-.025em; }
.case-detail__outcomes p { color:var(--text-muted); font-size:.9rem; line-height:1.65; }
@media (min-width:768px){.case-detail__facts{grid-template-columns:repeat(4,minmax(0,1fr))}.case-detail__grid{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start}.case-detail__modules{grid-template-columns:repeat(2,minmax(0,1fr))}.case-detail__section{padding-block:7rem}}
@media (max-width:640px){.case-detail__hero{padding-top:8.5rem}.case-detail__cover{margin-top:2.5rem}.case-detail__facts{grid-template-columns:1fr}.case-detail__fact{min-height:auto}.case-detail__section{padding-block:4.25rem}}
