.system-chapter{padding:100px 0 65px;position:relative}
#d2c{background:#eeede9;color:#171717}#apps{background:#151515;color:#f6f5f1;--grey:#b3b3b3;--line:#444;--ink:#f6f5f1;--soft:#bcbcbc;--red:#ed3933}
.system-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:9%;align-items:end;margin-bottom:55px}
.system-intro h2{font-size:clamp(45px,5.7vw,82px);line-height:1.06;max-width:16ch;margin:20px 0 0}.system-intro .lede{font-size:18px;line-height:1.7;margin:0 0 6px;max-width:43ch;color:#666}#apps .lede{color:#aaa}
.system-eyebrow,.process-label{font-size:10px;letter-spacing:.14em;font-weight:600}.process-label{display:flex;justify-content:space-between;gap:20px;margin-bottom:28px}.scroll-direction{font-weight:400;color:#777}
.d2c-pinned{display:grid;grid-template-columns:34% 1fr;gap:6%;align-items:center;padding-top:35px;padding-bottom:35px}
.retention-evidence{min-width:0}.system-chapter .chart{margin-top:22px}.system-chapter .chart .cap{display:block}.system-chapter .chart .cap>b{display:block;margin-bottom:12px;font-size:15px}.system-chapter .chart svg{display:block;width:100%;height:auto;margin-top:25px}.system-chapter .key{font-size:11px;margin-left:0;margin-right:16px}.system-chapter .chart-note{font-size:10px;color:#888}
.process-window{overflow:hidden;min-width:0}.system-process{list-style:none;margin:0;padding:0}.d2c-process{display:flex;gap:25px;overflow:auto;scroll-snap-type:x mandatory;padding-bottom:15px}.d2c-process>li{flex:0 0 80%;min-width:0;padding:28px;background:#fff;border:1px solid #d5d3ce;border-radius:5px;min-height:320px;scroll-snap-align:start;position:relative}.system-process .num{font-family:var(--display);font-size:65px;line-height:1;color:#c1bfba;display:block}.system-process h3{font-family:var(--display);font-size:38px;font-weight:400;text-transform:uppercase;margin:30px 0 14px}.system-process p{font-size:17px;line-height:1.65;margin:0;max-width:33ch}.system-process li.active .num{color:var(--red)}
.d2c-process>li:before{content:'';position:absolute;left:0;right:0;top:0;height:3px;background:var(--red);transform:scaleX(var(--step-fill,0));transform-origin:left}
.d2c-enhanced .d2c-pinned{position:sticky;top:88px;min-height:calc(100svh - 88px)}.d2c-enhanced .d2c-process{overflow:visible;scroll-snap-type:none;will-change:transform}.journey-meter{height:2px;background:#cfcdc7;margin-top:30px}.journey-meter i{display:block;height:100%;background:#c92c27;transform:scaleX(var(--journey,0));transform-origin:left}.journey-position{font:12px monospace;display:block;margin-top:15px;color:#777}
.system-outcomes{margin-top:50px;padding-top:28px;border-top:1px solid #8885}.system-outcomes .outputs{margin:0}.system-outcomes .label{margin-right:20px}.system-outcomes .chip{display:inline-block;margin:4px;border-color:#aaa5}.system-outcomes .ch{margin-top:16px!important;color:inherit!important}.system-outcomes .ch b{color:inherit!important}
.app-system-body{display:grid;grid-template-columns:46% 1fr;gap:10%;align-items:start}.app-evidence{position:sticky;top:125px;padding:30px 0}.app-evidence .chart{border-color:#444}.app-stage-label{display:flex;justify-content:space-between;letter-spacing:.13em;font-size:10px;border-top:1px solid #444;padding-top:20px;color:#aaa}.app-process-column{padding-top:30px}.app-process{position:relative;border-left:1px solid #555}.app-process:before{content:'';position:absolute;top:0;left:-1px;width:2px;height:100%;background:var(--red);transform:scaleY(var(--app-progress,0));transform-origin:top}.app-process>li{position:relative;padding:28px 0 35px 35px;min-height:220px;border-top:1px solid #444}.app-process>li:before{content:'';position:absolute;left:-5px;top:35px;width:9px;height:9px;border-radius:50%;background:#444}.app-process>li.active:before{background:var(--red)}.app-process .num{font:12px monospace;color:#777}.app-process h3{margin-top:14px;font-size:40px}.app-process p{color:#aaa}.app-process li.active h3{color:#fff}.app-process li:not(.active) h3{color:#aaa}
body.system-chapter-in-view>.wa{visibility:hidden;pointer-events:none}
@media(max-width:900px),(max-height:650px){.system-intro{display:block}.system-intro .lede{margin-top:25px}.system-intro h2{font-size:clamp(40px,8vw,65px)}.d2c-pinned,.app-system-body{display:block}.retention-evidence,.app-evidence{position:static;max-width:550px;margin-bottom:45px}.system-chapter{padding-top:75px}.system-intro{margin-bottom:25px}.d2c-process{display:block;overflow:visible;padding-left:22px;border-left:1px solid #bbb}.d2c-process>li{min-height:0;margin-bottom:22px;padding:25px}.d2c-process .num{font-size:38px}.d2c-process h3{margin-top:20px;font-size:32px}.system-process p{font-size:16px}.scroll-direction{display:none}.process-label{margin-bottom:20px}.app-process>li{min-height:0;padding:25px 0 30px 25px}.app-evidence{padding-bottom:0}.system-outcomes{margin-top:25px}.system-outcomes .label{display:block}.system-chapter .chart svg{min-height:0}.system-chapter .chart-note{font-size:11px}}
@media(prefers-reduced-motion:reduce){.d2c-pinned,.app-evidence{position:static!important}.d2c-process{transform:none!important;display:block;overflow:visible}.d2c-process>li{min-height:0;margin-bottom:20px}.journey-meter i,.app-process:before{transform:scale(1)!important}}

#apps .chart{background:transparent;padding:0;border:0}#apps .lifecycle-lift>g:last-child{stroke:#080808}

/* Matched system layouts: pinned outcome beside an open process timeline. */
#d2c{background:#f5f4f0}
#d2c .d2c-pinned{grid-template-columns:46% 1fr;gap:10%;align-items:start;padding-top:0;padding-bottom:0}
#d2c .retention-evidence{position:sticky;top:125px;padding:30px 0}
#d2c .chart{background:transparent;border:0;padding:0}
#d2c .process-window{overflow:visible;padding-top:30px}
#d2c .scroll-direction{display:none}
#d2c .d2c-process{display:block;overflow:visible;padding:0;border-left:1px solid #bbb;position:relative;transform:none!important}
#d2c .d2c-process:before{content:'';position:absolute;top:0;left:-1px;width:2px;height:100%;background:var(--red);transform:scaleY(var(--journey,0));transform-origin:top}
#d2c .d2c-process>li{position:relative;top:auto;background:transparent;border:0;border-top:1px solid #ccc;border-radius:0;min-height:220px;padding:28px 0 35px 35px;margin:0;box-shadow:none}
#d2c .d2c-process>li:before{content:'';position:absolute;left:-5px;right:auto;top:35px;width:9px;height:9px;border-radius:50%;background:#bbb;transform:none}
#d2c .d2c-process>li.active:before{background:var(--red)}
#d2c .d2c-process .num{font:12px monospace;color:#777}
#d2c .d2c-process h3{font-size:40px;margin:14px 0;color:#777}
#d2c .d2c-process .active h3{color:#171717}
#d2c .d2c-process .active .num{color:var(--red)}
#d2c .d2c-process p{font-size:17px;line-height:1.65;color:#666;max-width:33ch}
@media(max-width:900px),(max-height:650px){#d2c .d2c-pinned{display:block}#d2c .retention-evidence{position:static;padding-bottom:0}#d2c .d2c-process>li{min-height:0;padding:25px 0 30px 25px}#d2c .d2c-process p{font-size:16px}}
@media(prefers-reduced-motion:reduce){#d2c .retention-evidence{position:static}#d2c .d2c-process:before{transform:scaleY(1)}}
