/* A common reading rhythm, with a different visual explanation for each question. */
:root{--craft-ease:cubic-bezier(.16,1,.3,1);--craft-hold:#8c561c;--craft-hold-wash:#fff4df}
.work-heading h2,.story-intro h3,.practice h2,.engagement h2,.name-story h2,footer h2{text-wrap:balance}
.story-intro>p,.principal-story p{text-wrap:pretty}
.story{scroll-margin-top:72px}
.story-layout{gap:5%;grid-template-columns:.72fr 1.28fr}
.story-intro{grid-template-columns:.72fr 1.28fr;gap:5%;align-items:start}
.story-intro h3{font-size:clamp(28px,3vw,43px);max-width:18ch}
.story-intro>p{max-width:43ch;font-size:18px}
.chapter p{max-width:36ch}
.working-display{box-shadow:0 1px 0 #fff inset,0 0 0 1px #c9d7ed,0 20px 40px -28px #173b7460;overflow:visible}
.display-bar{align-items:center;gap:16px;padding:18px 20px}
.display-bar strong{font-size:16px;line-height:1.35;text-wrap:balance}
.display-bar>span{font-size:12px;color:var(--muted)}
.source-rail{padding:16px 20px 0;gap:14px}
.source-rail span{font-size:14px;font-weight:500}
.source-rail small{font-size:12px;line-height:1.4;margin-top:4px}
.source-connections{height:27px}
.tool-window{margin:0 12px;isolation:isolate;overflow:visible}
.tool-window:after{content:'';pointer-events:none;position:absolute;inset:0;border:1px solid #adc2e53d;border-radius:5px}
.tool{padding:0!important;clip-path:none!important;border-radius:5px;overflow:hidden;min-height:0!important;transform:none!important}
.lesson-scene{padding:22px 22px 18px;position:relative;min-height:435px}
.lesson-scene h4{font-size:23px;line-height:1.2;margin-bottom:20px;max-width:25ch;text-wrap:pretty}
.tool-button{margin:18px 0 0;min-height:48px;width:100%;display:flex;justify-content:space-between;align-items:center;text-align:left;gap:12px;padding:12px 15px;border-radius:4px;font-size:15px;line-height:1.4;transition:background .2s,box-shadow .2s,transform .2s}
.tool-button:hover{box-shadow:0 5px 14px -7px #14274a80;transform:translateY(-1px)}
.tool-button:active{transform:translateY(1px);box-shadow:none}
.tool-button>span{transition:transform .3s var(--craft-ease)}
.tool-button:hover>span{transform:translate(2px,-2px)}
.lesson-scene .lesson-insight{font-size:16px;line-height:1.5;margin:15px 0 0;min-height:3em;text-wrap:pretty}
.lesson-scene .lesson-basis{font-size:12px;line-height:1.45;margin:14px 0 0;opacity:.8;max-width:65ch}
.human-decision{margin-top:0;padding:19px 20px;align-items:flex-start}
.human-decision strong{font-size:17px;margin-bottom:6px}
.human-decision p{font-size:15px;max-width:48ch}
.human-decision .decision-star{flex:0 0 24px;margin-top:1px}
.human-decision .decision-signal{display:none}
.lesson-heading{display:flex;align-items:start;justify-content:space-between;gap:15px;margin-bottom:20px}
.lesson-period{text-align:right;font-size:12px;color:#c2d6f4;line-height:1.5;padding-top:3px}
.tool-eyebrow{font-size:14px;letter-spacing:0;color:inherit;opacity:.9;margin-bottom:8px;display:block}
.money-scene{background:radial-gradient(ellipse at 0 0,#28599580,transparent 65%),#102c59;color:#f4f8ff}
.finance-total{font-size:clamp(34px,3.6vw,49px);margin:0;line-height:1.1;font-variant-numeric:tabular-nums;letter-spacing:-.04em}
.finance-bars{gap:14px}
.finance-row{display:block!important;font-size:14px;margin:0}
.finance-row-label{display:flex;justify-content:space-between;gap:12px;margin-bottom:7px;align-items:baseline}
.finance-row-label strong{font-variant-numeric:tabular-nums;font-size:15px;font-weight:500}
.finance-track{position:relative;height:20px;background:transparent;overflow:visible;border-radius:2px}
.finance-track .revenue-ghost{position:absolute;inset:0 auto 0 0;width:var(--revenue);border:1px solid #8fb1e240;border-radius:2px;background:#88b7ff14}
.finance-track i,.finance-row:last-child .finance-track i{position:absolute;inset:0 auto 0 0;width:var(--revenue);background:linear-gradient(100deg,#436dea,#a0ccff);border-radius:2px;transition:none;box-shadow:inset 0 1px #c6e0ff55}
.is-revealed .finance-track i,.is-revealed .finance-row:last-child .finance-track i{width:var(--retained)}
.margin-label{font-size:11px;display:block;color:#c0d3f3;margin-top:4px;line-height:1.4}
.cost-bridge{display:flex;gap:10px;margin-top:16px;padding-top:12px;border-top:1px solid #8ab3ec35;color:#bbd0ef;font-size:12px;line-height:1.4}
.cost-bridge>span{flex:1}
.cost-bridge b{font-weight:400;color:#edf4ff;display:block;font-size:14px;font-variant-numeric:tabular-nums}
.money-scene .tool-button{background:#3358cb;border-color:#819edf66;color:white}
.money-scene .tool-button:hover{background:#426bdd}
.money-pair{display:flex;align-items:center;justify-content:space-between;padding-bottom:19px;border-bottom:1px solid var(--line);gap:12px}
.money-pair>div{display:grid;gap:3px}
.money-pair span{font-size:13px;color:var(--muted)}
.money-pair strong{font-size:clamp(25px,2.8vw,36px);letter-spacing:-.04em;font-weight:400;font-variant-numeric:tabular-nums}
.pair-divider{color:#6782ad!important;font-size:26px!important}
.reconciliation-scene{background:#fff;color:var(--text)}
.trace-columns{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);padding:16px 0 8px}
.trace-columns span:last-child{width:44%}
.payout-row{display:grid;grid-template-columns:1fr 50px 1fr;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid #e3eaf5}
.payout-row>div{display:grid;gap:2px}
.payout-row small{font-size:11px;line-height:1.4;color:var(--muted)}
.payout-row strong{font-size:18px;font-weight:500;line-height:1.4;font-variant-numeric:tabular-nums}
.payout-row b{font-size:14px;font-weight:500;line-height:1.4}
.payout-wire{height:1px;background:#becde3;position:relative;overflow:visible}
.payout-wire:after{content:'';position:absolute;right:0;top:-3px;width:5px;height:5px;border:1px solid #7293c9;transform:rotate(45deg);background:white}
.payout-wire i{position:absolute;left:0;top:-2px;width:5px;height:5px;border-radius:50%;background:#3867d7;opacity:0}
.is-revealed .payout-wire i{opacity:1;animation:trace-payout 1.2s var(--craft-ease) both;animation-delay:calc(var(--i)*.15s)}
.is-matched b:before{content:'✓';font-size:12px;color:#305f92;margin-right:6px}
.is-open{color:var(--craft-hold);background:linear-gradient(90deg,transparent,#fff4df);padding-right:8px}
.is-open small{color:#866436}
.is-open .payout-wire{background:repeating-linear-gradient(90deg,#c29960 0 3px,transparent 3px 6px)}
.is-open .payout-wire i{background:#b07a37;animation-name:trace-pending}
@keyframes trace-payout{from{left:0}to{left:100%}}
@keyframes trace-pending{from{left:0}to{left:48%}}
.launch-scene{background:#f7faff;color:var(--text)}
.launch-scene .launch-preview{grid-template-columns:.7fr 1.3fr;align-items:center;gap:16px;min-height:230px}
.launch-scene .product-figure{position:relative}
.launch-scene .bag{width:100%;height:auto;max-height:210px;filter:drop-shadow(0 14px 12px #355c7d15)}
.launch-scene .photo-caption{font-size:12px;color:var(--muted);margin-top:0;display:block;text-align:center}
.product-satellite{position:absolute;left:62%;top:20%;display:grid;place-items:center;width:26px;height:26px;background:#edf5ff;border:1px solid #cad9f2;border-radius:50%;color:#3867d7;transform:rotate(-15deg);transition:transform .8s var(--craft-ease),background .4s}
.is-revealed .product-satellite{transform:translate(12px,-14px) rotate(0);background:#d7e9ff}
.launch-scene .launch-readiness>strong{font-size:19px;line-height:1.3;max-width:21ch;display:block;margin-bottom:13px}
.launch-scene .launch-checks{gap:10px;border:0;margin:0;padding:0}
.launch-checks>span{display:flex;align-items:start;gap:8px;padding:0;opacity:1!important}
.launch-checks>span>span{display:block}
.launch-checks>span i{font-style:normal;color:#5379b5;line-height:1.3;font-size:16px;flex:0 0 16px}
.launch-checks b{font-weight:500;font-size:13px;line-height:1.4;display:block}
.launch-checks small{display:block;font-size:11px;line-height:1.4;color:var(--muted);margin-top:2px}
.launch-gates{display:flex;align-items:center;justify-content:space-between;gap:6px;margin:16px 0 0;padding:14px 0;border-block:1px solid var(--line)}
.launch-gates>b{font-size:14px;color:#8aa3c7;font-weight:400}
.gate{display:grid;gap:5px;font-size:11px;color:var(--muted);position:relative}
.gate i{font-size:12px;font-style:normal;color:#829ac0}
.gate.complete i{color:#355bd5}
.gate.current{color:#7c511c}
.gate.current i{color:#7c511c}
.gate.current:before{content:'';position:absolute;top:6px;left:20px;width:5px;height:5px;border-radius:50%;background:#ca9f56;box-shadow:0 0 0 4px #ca9f561c}
.planning-scene{background:#eef5ff;color:var(--text)}
.planning-scene .receipt-heading{margin-bottom:8px;gap:12px;align-items:start;display:flex;justify-content:space-between}
.receipt-heading span{font-size:13px;line-height:1.45;color:var(--muted);max-width:17ch}
.receipt-heading strong{font-size:21px;line-height:1.25;text-align:right;letter-spacing:-.03em;font-weight:500}
.planning-scene .supply-chart{width:100%;height:auto;max-height:230px;margin:0;overflow:visible}
.supply-chart .chart-label{fill:#526887;font-size:11px}
.supply-original{fill:none;stroke:#9aaeca;stroke-dasharray:3 5;stroke-width:1}
.supply-line{fill:none;stroke:#237a94;stroke-width:2.5;stroke-linejoin:round}
.demand-line{fill:none;stroke:#486eed;stroke-width:2.5;stroke-linejoin:round}
.receipt-marker{transform:translateX(var(--marker-x))}
.receipt-marker path{stroke:#6a8da8;stroke-dasharray:2 4;stroke-width:1}
.receipt-marker circle{fill:#e3faff;stroke:#237a94;stroke-width:2}
.receipt-marker text{font-size:11px;fill:#376582}
.supply-gap path{stroke:#96611e;stroke-width:2}.supply-gap circle{fill:#96611e}.supply-gap text{fill:#82551b;font-size:11px}
.chart-legend{font-size:12px;gap:20px;margin:0 0 13px;color:#405a81}
.planning-scene .chart-legend>span:first-child:before{background:#486eed}
.planning-scene .chart-legend>span:last-child:before{background:#237a94}
.cash-consequence{display:flex;align-items:baseline;justify-content:space-between;gap:10px;border-block:1px solid #c5d7ee;padding:13px 0;font-size:12px;color:var(--muted)}
.cash-consequence strong{font-size:21px;color:var(--text);letter-spacing:-.025em;font-weight:500;font-variant-numeric:tabular-nums}
.is-revealed .cash-consequence>span:last-child{color:#82551b}
.team-scene{background:linear-gradient(145deg,#edf4ff,white 75%);color:var(--text)}
.team-scene .capacity-map{display:grid;gap:0;margin:0}
.team-scene .capacity-map>div{display:grid!important;grid-template-columns:8px 1fr 1.5fr;gap:6px 12px;align-items:baseline;padding:16px 0;min-height:83px;background:transparent!important;border:0;border-bottom:1px solid #cfdaec;border-radius:0}
.capacity-map>div:last-child{border-bottom:0}
.team-scene .capacity-map strong{font-size:14px;line-height:1.4}
.team-scene .capacity-map p{font-size:14px;line-height:1.4;margin:0;color:#294b7f}
.team-scene .capacity-map small{grid-column:3;font-size:12px;line-height:1.4;color:var(--muted)}
.capacity-dot{width:6px;height:6px;border-radius:50%;background:#9db6dc;transition:box-shadow .7s,background .7s}
.is-assigned .capacity-dot{background:#406fda;box-shadow:0 0 0 4px #9dbce333}
.engagement-list article{transition:border-color .25s}
.engagement-list article:hover{border-color:#648fd4}
.distribution-number>small{display:block;font-size:12px;letter-spacing:0;line-height:1.5;margin-top:8px;color:#5574a5;text-align:right}
.name-story .distribution{padding-bottom:14px}
.contact-form textarea:focus-visible{outline:2px solid #a9ccff;outline-offset:4px}
.contact-form [aria-invalid=true]{border-color:#eebc91}
@media(min-width:1000px){.chapter{padding-right:8px}.story-close{grid-template-columns:.72fr 1.28fr;gap:5%}.story-close>div{justify-content:flex-end}}
@media(max-width:850px){.story-layout{grid-template-columns:1fr}.story-intro{grid-template-columns:1fr;gap:16px}.story-intro h3{max-width:24ch}.story-intro p{max-width:48ch}.lesson-scene{min-height:0}.source-rail span{font-size:14px}.source-rail small{font-size:12px}.story{scroll-margin-top:60px}}
@media(max-width:540px){
 .display-bar{padding:16px;gap:15px}.display-bar strong{font-size:16px}.display-bar>span{font-size:11px;max-width:70px}
 .source-rail{padding:16px 15px 0;gap:10px}.source-rail span{font-size:13px}.source-rail small{font-size:12px}
 .tool-window{margin-inline:8px}.lesson-scene{padding:19px 15px 17px}.lesson-scene h4{font-size:23px;margin-bottom:18px}
 .lesson-heading{margin-bottom:18px}.finance-total{font-size:36px}.lesson-period{font-size:11px}.tool-eyebrow{font-size:13px}
 .finance-row-label{font-size:14px}.finance-row-label strong{font-size:15px}.finance-track{height:19px}.finance-bars{gap:14px}
 .cost-bridge{gap:8px;font-size:11px}.cost-bridge b{font-size:13px;margin-top:3px}
 .lesson-scene .lesson-insight{font-size:16px;min-height:0}.lesson-scene .lesson-basis{font-size:12px;line-height:1.5}
 .tool-button{min-height:48px;font-size:15px}.human-decision{padding:18px 16px}.human-decision strong{font-size:17px}.human-decision p{font-size:15px}
 .team-scene .capacity-map>div{grid-template-columns:7px 1fr;gap:6px 10px;padding:14px 0;min-height:95px}
 .team-scene .capacity-map strong{font-size:15px}.team-scene .capacity-map p,.team-scene .capacity-map small{grid-column:2}.team-scene .capacity-map p{font-size:15px}.team-scene .capacity-map small{font-size:12px}
 .money-pair strong{font-size:28px}.money-pair>div>span{font-size:12px}.money-pair{gap:6px}.payout-row{grid-template-columns:1fr 25px 1.2fr;gap:8px}.payout-row b{font-size:14px}
 .launch-scene .launch-preview{grid-template-columns:.6fr 1.4fr;gap:12px}.launch-scene .bag{min-width:0;max-height:180px}.launch-scene .launch-readiness>strong{font-size:18px}.launch-checks b{font-size:13px}.launch-checks small{font-size:12px}
 .launch-gates{gap:5px}.gate{font-size:11px}.cash-consequence{gap:6px;font-size:12px}.cash-consequence strong{font-size:21px}
 .supply-chart .chart-label,.receipt-marker text,.supply-gap text{font-size:17px}
 .distribution-number>small{font-size:11px;max-width:180px}
 .story-intro{margin-bottom:23px}.story-intro>p{font-size:18px;line-height:1.55}
}
@media(prefers-reduced-motion:reduce){.payout-wire i{animation:none!important}.is-matched .payout-wire i{left:100%}.is-open .payout-wire i{left:48%}.tool-button,.product-satellite{transition:none!important}}
.motion-paused .payout-wire i,.motion-paused .practice-transmission .transmission-beam{animation:none!important}
.motion-paused .is-matched .payout-wire i{left:100%}.motion-paused .is-open .payout-wire i{left:48%}
