.showcase,.native-scene,.diagram,.tier-gallery,.media-pair{margin-block:var(--case-space)}
.media-stage,.showcase.portrait .media-stage,.showcase.compact .media-stage,.evidence-split .media-stage,.evidence-split .portrait .media-stage{height:560px;padding:40px;display:flex;align-items:center;justify-content:center;border-radius:16px;background:#eee2cf}
.zoom-target,.portrait .zoom-target{display:flex;align-items:center;justify-content:center;width:100%;height:100%;max-width:100%;border-radius:8px}
.zoom-target img,.portrait .zoom-target img,.compact .zoom-target img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain}
.media-caption{font-size:0.75rem;line-height:1.65;max-width:none;margin:16px 0 0;color:var(--secondary)}
.scene-original{margin-top:12px;font-size:0.75rem;padding:8px 0}
.scene-surface,.rewards-dashboard .scene-surface{height:640px;border-radius:16px}
.media-pair,.media-pair:has(.demo){grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}
.media-pair:has(.native-scene){grid-template-columns:minmax(0,1fr);gap:48px}
.media-pair .media-stage,.media-pair .portrait .media-stage{height:440px;padding:24px}
.media-pair .demo-frame{padding:12px;border-radius:16px}
.media-pair .demo video{max-height:none;aspect-ratio:16/10;border-radius:8px}
.media-pair .showcase,.media-pair .native-scene{margin:0}
.media-pair>.media-caption{margin-top:-24px}

/* Freeman: a continuous left-aligned reading column; typography follows semantic rank. */
.case-page{--case-space:48px;--case-body:1rem;--case-heading:"Space Grotesk",Inter,sans-serif;--case-label:ui-monospace,SFMono-Regular,Consolas,monospace;--reading:800px}
.case-content{text-align:left}
.case-chapter,.native-scene{scroll-margin-top:88px}
.case-chapter+.case-chapter{margin-top:80px;padding-top:48px}
.case-chapter>.section-title,.chapter-heading h2{font-family:var(--case-heading);font-size:2.5rem;line-height:1.2;font-weight:500;letter-spacing:-.035em;max-width:900px;text-wrap:pretty;margin:0}
.case-chapter>.section-title{margin-bottom:24px}
.chapter-heading{display:block;padding:0;margin:0 0 32px;overflow:visible;border:0}
.chapter-number{display:none}
.chapter-tags{font-family:var(--case-label);font-size:0.75rem;line-height:1.6;letter-spacing:.01em;gap:12px;margin-bottom:16px;color:var(--accent)}
.chapter-tags>span+span:before{margin-right:12px}
.case-block,.case-chapter>.case-block:first-of-type{display:block;width:100%;max-width:var(--reading);margin:var(--case-space) 0}
.case-chapter>.section-title+.case-block{margin-top:0}
.block-title,.two-columns .block-title,.evidence-split .block-title,.opportunity h3,.challenge>h3{font-family:var(--case-heading);font-size:1.5rem;line-height:1.35;font-weight:500;letter-spacing:-.025em;color:var(--ink);max-width:var(--reading);margin:0 0 16px;text-wrap:pretty}
.prose,.two-columns .prose,.evidence-split .prose,.callout .prose,.comparison .prose,.impact-grid .prose,.challenge-grid .prose,.opportunity .prose,.reflection-lead .prose{font-family:Inter,sans-serif;font-size:var(--case-body);line-height:1.8;color:#bdb5ab;max-width:var(--reading);letter-spacing:0;font-weight:400}
.opportunity .prose p,.reflection-lead .prose p{font-size:inherit;line-height:inherit;color:inherit;letter-spacing:inherit}
.prose strong{font-weight:550;color:#f2e9df}
.prose p+p,.prose .copy+.copy{margin-top:16px}
.prose ul,.prose ol{padding-left:20px}.prose li{margin-top:12px;padding-left:4px}
.two-columns{display:block;margin:var(--case-space) 0;max-width:var(--reading)}
.two-columns .case-block{margin:0 0 32px;padding:0;border:0}
.two-columns>div:last-child .case-block{margin-bottom:0}
.evidence-split,.evidence-split.reverse,.evidence-split:has(.native-scene),.evidence-split.reverse:has(.native-scene){display:flex;flex-direction:column;gap:28px;max-width:none;margin:var(--case-space) 0;align-items:stretch}
.evidence-split .evidence-text,.evidence-split:has(.native-scene) .evidence-text{display:block;max-width:var(--reading);width:100%;margin:0;order:0}
.evidence-split .showcase,.evidence-split.reverse .showcase,.evidence-split .native-scene{order:1;margin:0}
.opportunity{display:block;max-width:var(--reading);margin:var(--case-space) 0;padding:0;border:0;border-radius:0}
.callout,.note{max-width:var(--reading);margin:28px 0;padding:0 0 0 20px;border:0;border-left:2px solid var(--accent);border-radius:0;background:none}
.note .prose{font-size:0.875rem;line-height:1.75}
.diagram{padding:32px;border-radius:16px;background:#1c1915}
.strategy{gap:32px}.strategy-column+.strategy-column{padding-left:32px}
.strategy h3,.comparison h4,.reward-system>h3{font-family:var(--case-heading);font-size:1.25rem;font-weight:500;line-height:1.4;letter-spacing:-.02em;margin-bottom:20px}
.strategy li{font-size:0.875rem;line-height:1.75;margin-top:14px}
.comparison{gap:32px}.comparison>div+div{padding-left:32px}.comparison .prose{font-size:1rem}
.impact-grid{gap:32px;margin:24px 0 0}.impact-lead{font-family:var(--case-heading);font-size:1.5rem;line-height:1.4}.impact-grid .prose{font-size:1rem}
.metrics-section{margin:var(--case-space) 0;padding:32px 0}
.result-label{font-family:var(--case-label);font-size:0.75rem;line-height:1.6;letter-spacing:.02em;margin-bottom:24px}
.case-metrics{gap:48px}.metric-label{font-size:0.875rem;margin-bottom:16px}.metric-value{font-family:var(--case-heading);font-size:var(--type-step-56-88);line-height:1.05}.metric-change{font-size:0.875rem;margin-top:16px}
.challenge{display:block;max-width:var(--reading);margin:var(--case-space) 0;padding-top:28px}
.challenge-grid{display:block}.challenge-grid>div+div{margin-top:24px}.challenge-grid h4{font-family:var(--case-heading);font-size:1.25rem;line-height:1.4;margin-bottom:12px;color:var(--ink)}
.reflection-lead,.reflection .case-block{max-width:var(--reading);margin:24px 0 0}
.reflection .case-block{margin-top:32px}
.media-caption,.scene-original{font-family:var(--case-label);font-size:0.75rem;line-height:1.7;letter-spacing:0}
.tier-card{min-height:440px}.tier-card h4{font-family:var(--case-heading);font-size:1.75rem}.tier-card>p,.tier-card li{font-size:0.875rem}
@media(min-width:801px){.selection-scene{height:960px}.selection-scene .scene-surface{height:640px;top:176px}.selection-scene .scene-original{bottom:0}}
@media(max-width:1100px){.media-stage,.showcase.portrait .media-stage,.showcase.compact .media-stage,.evidence-split .media-stage,.evidence-split .portrait .media-stage{height:480px;padding:32px}.media-pair .media-stage,.media-pair .portrait .media-stage{height:360px;padding:20px}}
@media(max-width:800px){.case-page{--case-space:40px}.case-chapter>.section-title,.chapter-heading h2{font-size:2.25rem}.media-pair,.media-pair:has(.demo){grid-template-columns:minmax(0,1fr);gap:28px}.media-pair .media-stage,.media-pair .portrait .media-stage{height:480px}.scene-surface{height:600px}.strategy{gap:24px}.strategy-column+.strategy-column{padding-left:24px}}
@media(max-width:600px){.case-page{--case-space:36px;--case-body:1rem}.case-chapter+.case-chapter{margin-top:56px;padding-top:36px}.case-chapter>.section-title,.chapter-heading h2{font-size:1.75rem;line-height:1.25}.chapter-heading{margin-bottom:24px}.chapter-tags{font-size:0.75rem;gap:8px;margin-bottom:12px}.chapter-tags>span+span:before{margin-right:8px}.block-title,.two-columns .block-title,.evidence-split .block-title,.opportunity h3,.challenge>h3{font-size:1.5rem;margin-bottom:14px}.two-columns .case-block{margin-bottom:28px}.media-stage,.showcase.portrait .media-stage,.showcase.compact .media-stage,.evidence-split .media-stage,.evidence-split .portrait .media-stage,.media-pair .media-stage,.media-pair .portrait .media-stage{height:360px;padding:16px;border-radius:12px}.diagram{padding:24px;border-radius:12px}.strategy{display:block}.strategy-column+.strategy-column{padding:24px 0 0;margin-top:24px;border-left:0;border-top:1px solid var(--line)}.strategy h3{margin-bottom:16px}.strategy li{font-size:0.875rem}.comparison{display:block}.comparison>div+div{padding:24px 0 0;margin-top:24px;border-left:0;border-top:1px solid var(--line)}.impact-grid{grid-template-columns:minmax(0,1fr);gap:24px}.metrics-section{padding:28px 0}.case-metrics{display:grid;grid-template-columns:minmax(0,1fr);gap:28px}.metric-value{font-size:3.75rem}.result-label{margin-bottom:24px}.media-pair:has(.native-scene){gap:28px}.selection-scene .scene-surface{height:770px}.bundle-scene .scene-surface{height:600px}.shipping-scene .scene-surface{height:760px}.wallet-scene .scene-surface{height:620px}.rewards-dashboard .scene-surface{height:560px}.scene-surface{border-radius:12px}.flowchart{padding:20px 16px}.tier-card{min-height:420px;padding:28px}.tier-card h4{font-size:1.75rem}.tier-card>p,.tier-card li{font-size:0.875rem}}
.opportunity{scroll-margin-top:208px}
