/* Explanatory content continues the existing light editorial system. */
.content-extension{font-family:Inter,Arial,sans-serif;color:var(--page-ink,#171923);isolation:isolate}
.content-extension *{box-sizing:border-box}
.ex-section{padding:88px 0;border-top:1px solid var(--page-line,#dce1e8);overflow:hidden}
.ex-section:nth-child(even){background:var(--page-soft,#f5f7fa)}
.ex-inner{width:min(1264px,calc(100% - 80px));margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.ex-copy,.ex-figure{min-width:0}
.ex-index{display:block;font:800 15px/1.2 Inter,Arial,sans-serif;letter-spacing:.15em;color:var(--page-purple,#6420ce);margin-bottom:22px}
.content-extension .ex-copy h2{font-family:Radial,Inter,Arial,sans-serif;font-size:clamp(30px,3vw,44px);font-weight:800;line-height:1.12;letter-spacing:-.035em;text-transform:none;color:var(--page-ink,#171923);margin:0 0 26px;overflow-wrap:break-word}
.content-extension .ex-prose p{font:400 16px/1.75 Inter,Arial,sans-serif;color:var(--page-copy,#4c5363);margin:0}
.content-extension .ex-prose p+p{margin-top:16px}
.ex-figure{margin:0}
.ex-scene{padding:30px;background:#fff;border:1px solid #dcdce8;border-radius:22px;box-shadow:0 15px 45px #2b1f4d08;overflow:hidden}
.ex-scene__title{font:700 17px/1.4 Inter,Arial,sans-serif;color:#38354b;margin-bottom:24px;overflow-wrap:break-word}
.ex-figure figcaption{font:400 14px/1.6 Inter,Arial,sans-serif;color:#626a78;margin-top:16px;padding-inline:3px}
.ex-diagram{list-style:none!important;margin:0!important;padding:0!important;position:relative;display:grid;gap:14px}
.ex-node{list-style:none;margin:0;padding:17px;position:relative;display:flex;gap:14px;align-items:flex-start;min-width:0;border-radius:12px;background:#f7f6fb;border:1px solid #e7e2f2}
.ex-node__index{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;font-size:12px;font-weight:700;background:#e9ddff;color:#5720a9;line-height:1}
.ex-node__words{min-width:0;position:relative;z-index:1}
.ex-node strong{display:block;font:700 16px/1.4 Inter,Arial,sans-serif;color:#242334;overflow-wrap:break-word}
.ex-node__words>span{display:block;margin-top:5px;font:400 14px/1.5 Inter,Arial,sans-serif;color:#596173;overflow-wrap:break-word}
.ex-node:nth-child(even){background:#f1faf7;border-color:#d8eae4}
.ex-node:nth-child(even) .ex-node__index{background:#d9f2e9;color:#006e68}
.ex-section--reverse .ex-copy{order:2}.ex-section--reverse .ex-figure{order:1}
.ex-section--wide .ex-inner{grid-template-columns:1fr;gap:34px}
.ex-section--wide .ex-copy{display:grid;grid-template-columns:.95fr 1.05fr;grid-template-rows:min-content 1fr;gap:0 70px;align-items:start}
.ex-section--wide .ex-index{grid-column:1}.ex-section--wide .ex-copy h2{grid-column:1;margin-bottom:0}
.ex-section--wide .ex-prose{grid-column:2;grid-row:1/3}
.ex-section--wide .ex-scene{padding:34px 40px}
.ex-section--wide .ex-diagram{grid-template-columns:repeat(4,minmax(0,1fr))}
.ex-section--wide .ex-node{display:block;padding:20px}.ex-section--wide .ex-node__index{width:28px;margin-bottom:18px}
.ex-section--editorial .ex-inner{grid-template-columns:1fr 1.15fr;align-items:start;gap:56px}
.ex-section--editorial .ex-copy{padding-top:10px;border-top:3px solid #6420ce}
.ex-section--editorial .ex-index{margin-top:24px}
.ex-section--editorial .ex-scene{background:linear-gradient(145deg,#f4f0fd,#f0faf7);border-radius:4px 32px 4px 4px;box-shadow:none}

/* Eight diagram structures describe processes, decisions and audio timelines. */
.ex-scene--flow .ex-diagram{gap:24px}
.ex-scene--flow .ex-node:not(:last-child):after{content:'';position:absolute;bottom:-21px;left:30px;height:16px;border-left:2px solid #bda4e4}
.ex-scene--flow .ex-node:not(:last-child):before{content:'';position:absolute;bottom:-22px;left:27px;width:7px;height:7px;border-right:2px solid #bda4e4;border-bottom:2px solid #bda4e4;transform:rotate(45deg)}
.ex-scene--compare .ex-diagram{grid-template-columns:1fr 1fr;gap:12px}
.ex-scene--compare .ex-node{display:block;border-radius:0;border:0;border-top:3px solid #a48acb;background:#f6f1fd}
.ex-scene--compare .ex-node:nth-child(even){border-color:#4ca28b;background:#eaf7f2}
.ex-scene--compare .ex-node__index{margin-bottom:16px}
.ex-scene--timeline .ex-diagram{padding-left:21px!important;gap:18px}
.ex-scene--timeline .ex-diagram:before{content:'';position:absolute;left:5px;top:15px;bottom:15px;width:2px;background:linear-gradient(#8c4adc,#2b8a74)}
.ex-scene--timeline .ex-node{border:0;border-radius:0 12px 12px 0;border-left:3px solid #9762d1}
.ex-scene--timeline .ex-node:before{content:'';position:absolute;left:-27px;top:27px;width:12px;height:12px;border-radius:50%;background:#fff;border:3px solid #8c4adc}
.ex-scene--matrix .ex-diagram{grid-template-columns:1fr 1fr;gap:2px;background:#dcdce8;border:1px solid #dcdce8}
.ex-scene--matrix .ex-node{display:block;min-height:138px;border:0;border-radius:0;background:#fff;padding:20px}
.ex-scene--matrix .ex-node__index{width:28px;margin-bottom:18px}
.ex-scene--matrix .ex-node:nth-child(2),.ex-scene--matrix .ex-node:nth-child(3){background:#f4f7fa}
.ex-scene--layers .ex-node{padding-bottom:55px;border-left:4px solid #9866d5;background:#fbfaff;overflow:hidden}
.ex-scene--layers .ex-node:nth-child(even){border-left-color:#409a83;background:#f5fbf9}
.ex-wave{position:absolute;width:calc(100% - 28px);height:42px;bottom:4px;left:14px;fill:none;stroke:#8b52cc;stroke-width:1.8}
.ex-wave__axis{stroke:#d6d5df;stroke-width:1}.ex-node:nth-child(even) .ex-wave{stroke:#2b8a74}
.ex-scene--branches .ex-scene__title{background:#6420ce;color:#fff;padding:17px;border-radius:10px;text-align:center;margin-bottom:32px;position:relative}
.ex-scene--branches .ex-scene__title:after{content:'';position:absolute;width:2px;height:20px;background:#bba7d9;left:50%;top:100%}
.ex-scene--branches .ex-diagram{grid-template-columns:1fr 1fr;gap:24px 16px}
.ex-scene--branches .ex-diagram:before{content:'';position:absolute;left:24%;right:24%;top:-14px;border-top:2px solid #bba7d9;height:14px;border-inline:2px solid #bba7d9}
.ex-scene--branches .ex-node{display:block;padding:18px;border-radius:9px}.ex-scene--branches .ex-node__index{display:none}
.ex-scene--transcript{background:repeating-linear-gradient(0deg,#fff,#fff 27px,#f6f6fa 28px)}
.ex-scene--transcript .ex-node{border:0;border-radius:0;background:#fff9;padding:14px 0;border-bottom:1px solid #dfe1e9}
.ex-scene--transcript .ex-node__index{background:none!important;color:#76728a;flex-basis:24px}
.ex-scene--transcript .ex-node strong{display:inline;padding:2px 4px;background:#ece2fd;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.ex-scene--transcript .ex-node:nth-child(even) strong{background:#dcf4eb}
.ex-scene--checklist .ex-node{background:transparent;border:0;border-radius:0;border-bottom:1px solid #e2e5eb;padding:15px 0}
.ex-tick{width:21px;height:21px;flex:0 0 21px;border:2px solid #8657be;border-radius:5px;margin-top:2px}
.ex-section--wide .ex-scene--flow .ex-node:after,.ex-section--wide .ex-scene--flow .ex-node:before{display:none}
.ex-section--wide .ex-scene--flow .ex-diagram{gap:20px}
.ex-section--wide .ex-scene--flow .ex-node{border-top:3px solid #9866d5}
.ex-section--wide .ex-scene--timeline .ex-diagram{padding-left:0!important;padding-top:22px!important}
.ex-section--wide .ex-scene--timeline .ex-diagram:before{left:0;right:0;top:5px;bottom:auto;width:auto;height:2px}
.ex-section--wide .ex-scene--timeline .ex-node:before{left:22px;top:-26px}
.ex-section--wide .ex-scene--branches .ex-diagram:before{left:12%;right:12%;border-inline:0}

/* Motion only starts once, on entry. Content remains readable without JS. */
@media(prefers-reduced-motion:no-preference){
 .ex-section.is-visible[data-reveal=mask] .ex-scene{animation:ex-mask .8s cubic-bezier(.22,.7,.25,1) both}
 .ex-section.is-visible[data-reveal=side] .ex-figure{animation:ex-side .7s cubic-bezier(.22,.7,.25,1) both}
 .ex-section.is-visible[data-reveal=trace] .ex-node{animation:ex-node .55s ease-out both;animation-delay:calc(var(--step)*85ms)}
 .ex-section.is-visible[data-reveal=settle] .ex-scene{animation:ex-settle .75s cubic-bezier(.2,.65,.3,1) both}
 .ex-section.is-visible .ex-wave polyline{animation:ex-trace 1.2s ease-out both;animation-delay:calc(var(--step)*80ms)}
 @media(hover:hover){.ex-scene{transition:border-color .25s,box-shadow .25s}.ex-figure:hover .ex-scene{border-color:#b7a0d7;box-shadow:0 14px 36px #4f357b10}}
}
@keyframes ex-mask{from{clip-path:inset(0 100% 0 0 round 22px)}to{clip-path:inset(0 0 0 0 round 22px)}}
@keyframes ex-side{from{opacity:.25;transform:translateX(25px)}to{opacity:1;transform:none}}
@keyframes ex-node{from{opacity:.2;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes ex-settle{from{opacity:.4;transform:scale(.975)}to{opacity:1;transform:none}}
@keyframes ex-trace{from{stroke-dasharray:1;stroke-dashoffset:1}to{stroke-dasharray:1;stroke-dashoffset:0}}
@media(max-width:1100px){.ex-inner{width:calc(100% - 64px);gap:36px}.ex-scene{padding:24px}.ex-section--wide .ex-copy{gap:0 40px}.ex-section--editorial .ex-inner{gap:36px}}
@media(max-width:850px){
 .ex-section{padding:64px 0}.ex-inner,.ex-section--editorial .ex-inner{grid-template-columns:1fr;gap:32px}
 .ex-copy{max-width:720px}.ex-section--reverse .ex-copy,.ex-section--reverse .ex-figure{order:initial}
 .ex-section--wide .ex-copy{display:block}.ex-section--wide .ex-copy h2{margin-bottom:24px}
 .ex-section--wide .ex-diagram{grid-template-columns:1fr 1fr}.ex-section--wide .ex-scene{padding:28px}
 .ex-section--wide .ex-scene--timeline .ex-diagram{grid-template-columns:1fr;padding-left:21px!important;padding-top:0!important}
 .ex-section--wide .ex-scene--timeline .ex-diagram:before{left:5px;right:auto;top:15px;bottom:15px;width:2px;height:auto}
 .ex-section--wide .ex-scene--timeline .ex-node:before{left:-27px;top:27px}
}
@media(max-width:540px){
 .ex-section{padding:52px 0}.ex-inner{width:calc(100% - 44px)}.ex-index{margin-bottom:17px}
 .content-extension .ex-copy h2{font-size:30px;margin-bottom:22px}.ex-scene,.ex-section--wide .ex-scene{padding:20px 17px;border-radius:15px}
 .ex-scene__title{font-size:16px;margin-bottom:20px}.ex-node{padding:14px 12px;gap:10px}
 .ex-node__index{flex-basis:24px;width:24px;height:24px;font-size:12px}.ex-node strong{font-size:16px}
 .ex-node__words>span{font-size:14px}.ex-section--wide .ex-diagram{grid-template-columns:1fr}
 .ex-section--wide .ex-node{display:flex;padding:16px}.ex-section--wide .ex-node__index{margin:0}
 .ex-scene--compare .ex-diagram,.ex-scene--matrix .ex-diagram,.ex-scene--branches .ex-diagram{grid-template-columns:1fr}
 .ex-scene--compare .ex-node{border-top-width:2px;padding:16px;display:flex}.ex-scene--compare .ex-node__index{margin:0}
 .ex-scene--matrix .ex-node{min-height:0;display:flex;padding:16px}.ex-scene--matrix .ex-node__index{margin:0}
 .ex-scene--branches .ex-diagram:before{left:50%;right:auto;top:-18px;width:2px;height:18px;border:0;background:#bba7d9}
 .ex-scene--branches .ex-node{padding:16px}.ex-scene--branches .ex-diagram{gap:12px}
 .ex-scene--layers .ex-node{padding-bottom:55px}.ex-section--editorial .ex-copy{padding-top:0}
 .ex-section--editorial .ex-scene{border-radius:3px 24px 3px 3px}.ex-figure figcaption{font-size:14px;margin-top:13px}
}
@media(max-width:360px){.ex-inner{width:calc(100% - 36px)}.content-extension .ex-copy h2{font-size:27px}.ex-scene,.ex-section--wide .ex-scene{padding:18px 13px}.ex-node{gap:8px}}
@media(prefers-reduced-motion:reduce){.content-extension *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
