/* The final chapter only. Approved sections and navigation remain untouched. */
.final-chapter { background:var(--bg); }
.final-chapter .final-index { margin:0 0 32px; font:.6875rem var(--font-technical); letter-spacing:.08em; color:var(--muted); }
.final-chapter .final-index > span { color:var(--accent); margin-right:12px; }
.final-chapter .environment-scene { background:linear-gradient(#0d1013 0,var(--bg) 240px); }
.final-chapter .environment-bridge { display:flex; align-items:center; gap:32px; height:180px; color:var(--muted); font:.5625rem var(--font-technical); letter-spacing:.06em; }
.final-chapter .environment-bridge svg { flex:1; min-width:0; height:90px; overflow:visible; }
.final-chapter .environment-bridge path { stroke:var(--border); stroke-width:1; fill:none; vector-effect:non-scaling-stroke; }
.final-chapter .environment-bridge .bridge-spine { stroke:#456179; }
.final-chapter .environment-composition { display:grid; grid-template-columns:minmax(0,1fr) minmax(220px,28%); gap:48px 80px; padding-top:70px; padding-bottom:140px; }
.final-chapter .environment-composition h2 { font-size:clamp(3rem,8.6vw,11rem); line-height:.94; letter-spacing:-.065em; font-weight:700; }
.final-chapter .environment-composition h2 span { color:var(--accent); }
.final-chapter .environment-copy { margin-top:44px; font-size:clamp(1rem,1.2vw,1.375rem); line-height:1.65; color:var(--muted); }
.final-chapter .environment-vector { width:100%; max-width:400px; justify-self:end; align-self:center; }
.final-chapter .environment-vector svg { width:100%; height:auto; display:block; }
.final-chapter .environment-grid { fill:none; stroke:var(--border); stroke-width:.6; }
.final-chapter .environment-art { fill:#18242e; }
.final-chapter .environment-edges { fill:none; stroke:#506577; stroke-width:1; }
.final-chapter .environment-bound { fill:none; stroke:#7e98b0; stroke-width:.8; stroke-dasharray:3 5; }
.final-chapter .environment-handle { fill:none; stroke:#456179; stroke-width:.8; }
.final-chapter .environment-anchors { fill:var(--accent); }
.final-chapter .environment-vector figcaption { margin-top:18px; color:var(--muted); font:.5625rem var(--font-technical); letter-spacing:.08em; text-align:center; }
.final-chapter .environment-facts { grid-column:1/-1; display:flex; justify-content:space-between; gap:24px; margin:40px 0 0; padding-top:30px; border-top:1px solid var(--border); max-width:1400px; }
.final-chapter .environment-facts dt { font:.5625rem var(--font-technical); letter-spacing:.08em; color:var(--muted); margin-bottom:14px; }
.final-chapter .environment-facts dd { margin:0; font-size:.875rem; font-weight:500; }
.final-chapter .journey-scene { padding-block:100px 40px; }
.final-chapter .journey-header { max-width:1400px; margin:auto; }
.final-chapter .journey-header h2 { font-size:clamp(1.8rem,2.7vw,3.2rem); line-height:1.08; font-weight:500; letter-spacing:-.035em; }
.final-chapter .journey-header > p:last-child { color:var(--muted); font-size:.875rem; margin-top:20px; }
.final-chapter .journey-sequence { max-width:1400px; position:relative; margin:80px auto 0; }
.final-chapter .journey-path { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; fill:none; }
.final-chapter .journey-path-base { stroke:var(--border); stroke-width:1; vector-effect:non-scaling-stroke; }
.final-chapter .journey-path-progress { stroke:#49657d; stroke-width:1; vector-effect:non-scaling-stroke; }
.final-chapter .journey-path-narrow { display:none; }
.final-chapter .journey-stages { list-style:none; padding:0; margin:0; }
.final-chapter .journey-stage { min-height:260px; display:grid; grid-template-columns:minmax(0,1fr) 180px; align-items:center; gap:40px; width:74%; padding:32px 32px 44px 80px; position:relative; }
.final-chapter .journey-stage:nth-child(even) { margin-left:auto; }
.final-chapter .journey-stage h3 { font-size:clamp(3.25rem,5.6vw,6.8rem); font-weight:500; letter-spacing:-.055em; line-height:1; margin:0 0 18px; }
.final-chapter .journey-stage p { color:var(--muted); font-size:.875rem; line-height:1.65; }
.final-chapter .journey-number { display:block; margin-bottom:16px; color:var(--accent); font:.625rem var(--font-technical); letter-spacing:.08em; }
.final-chapter .journey-art { width:100%; aspect-ratio:1; }
.final-chapter .journey-art svg { display:block; width:100%; height:100%; overflow:visible; }
.final-chapter .journey-object { fill:#29445b; }
.final-chapter .journey-selection { fill:none; stroke:#82b6ff; stroke-width:1; }
.final-chapter .journey-geometry { fill:none; stroke:#68839b; stroke-width:.8; }
.final-chapter .journey-parameter { fill:none; stroke:#82b6ff; stroke-width:1; }
.final-chapter .journey-marker { fill:var(--accent); stroke:none; }
.final-chapter [data-stage=done] .journey-object { fill:var(--accent); }
.final-chapter [data-stage=done] .journey-geometry { opacity:.12; }
.final-chapter.phase6-ready .journey-path-progress { stroke-dasharray:1; stroke-dashoffset:calc(1 - var(--flow-progress,0)); }
.final-chapter.phase6-ready .journey-stage h3 { opacity:calc(.42 + var(--stage-progress,0) * .58); }
.final-chapter.phase6-ready .journey-selection { opacity:calc(.2 + var(--stage-progress,0) * .8); }
.final-chapter.phase6-ready [data-stage=construct] .journey-geometry { stroke-dasharray:1; stroke-dashoffset:calc(1 - var(--stage-progress,0)); }
.final-chapter.phase6-ready .journey-marker { transform:translateX(calc(var(--stage-progress,0) * 24px)); }
.final-chapter.phase6-ready [data-stage=control] .journey-geometry { opacity:calc(.25 + var(--stage-progress,0) * .75); }
.final-chapter.phase6-ready [data-stage=done] .journey-geometry { opacity:calc(.65 - var(--stage-progress,0) * .6); }
.final-chapter .resolution-scene { text-align:center; padding-bottom:130px; overflow:clip; }
.final-chapter .resolution-bridge { height:180px; display:flex; align-items:center; gap:40px; color:var(--muted); font:.5625rem var(--font-technical); letter-spacing:.08em; }
.final-chapter .resolution-bridge i { flex:1; height:1px; background:linear-gradient(to right,#456179,transparent); }
.final-chapter .resolution-art { width:min(400px,36vw); aspect-ratio:1; margin:0 auto 64px; }
.final-chapter .resolution-svg { display:block; width:100%; height:100%; overflow:visible; }
.final-chapter .resolution-svg [data-resolution-layer] { opacity:0; }
.final-chapter .resolution-clean { opacity:1; }
.final-chapter .resolution-identity { padding-top:0; }
.final-chapter .resolution-identity .final-index { margin-bottom:24px; }
.final-chapter .resolution-identity h2 { font-size:clamp(3.2rem,9vw,11rem); line-height:1; font-weight:700; letter-spacing:-.055em; }
.final-chapter .final-statement { margin-top:28px; font-size:clamp(1.125rem,2.3vw,2.5rem); font-weight:400; letter-spacing:.025em; }
.final-chapter .final-statement > span { color:var(--accent); }
.final-chapter.phase6-ready .resolution-svg [data-resolution-layer=guides] { opacity:var(--guides-opacity,1); }
.final-chapter.phase6-ready .resolution-svg [data-resolution-layer=anchors] { opacity:var(--anchors-opacity,1); }
.final-chapter.phase6-ready .resolution-svg [data-resolution-layer=circles] { opacity:var(--circles-opacity,1); }
.final-chapter.phase6-ready .resolution-clean { opacity:var(--mark-opacity,.25); }
.final-chapter.phase6-ready .resolution-identity { opacity:var(--brand-opacity,1); transform:translateY(calc((1 - var(--brand-opacity,1)) * 12px)); }
.final-chapter .launch-scene { display:grid; grid-template-columns:1fr minmax(320px,.65fr); gap:80px; align-items:center; padding-block:130px 140px; border-top:1px solid var(--border); }
.final-chapter .launch-scene h2 { font-size:clamp(3rem,6vw,7.5rem); font-weight:500; letter-spacing:-.055em; line-height:.98; }
.final-chapter .launch-copy { margin-top:28px; color:var(--muted); font-size:.875rem; line-height:1.7; }
.final-chapter .launch-destination { max-width:520px; }
.final-chapter .marketplace-upcoming { padding-block:30px; border-top:1px solid var(--border); border-bottom:1px solid var(--border); display:flex; align-items:center; gap:24px; }
.final-chapter .marketplace-marker { width:7px; height:7px; border:1px solid var(--accent); flex-shrink:0; }
.final-chapter .marketplace-upcoming strong { display:block; font-size:clamp(1.1rem,1.6vw,1.625rem); font-weight:500; letter-spacing:-.02em; }
.final-chapter .marketplace-upcoming div > span { display:block; color:var(--accent-light); font:.625rem var(--font-technical); letter-spacing:.1em; margin-top:14px; }
.final-chapter .marketplace-note { margin-top:24px; color:var(--muted); font-size:.75rem; line-height:1.8; }
.final-chapter .marketplace-action { display:flex; align-items:center; justify-content:space-between; gap:32px; padding-block:24px; border-bottom:1px solid var(--accent); font-size:1rem; min-height:60px; }
.final-chapter .marketplace-action > span { color:var(--accent); }
.final-chapter .marketplace-price { margin-top:24px; font-size:1.125rem; }
.final-footer { padding-block:56px 32px; border-top:1px solid var(--border); }
.final-footer .footer-identity { display:flex; align-items:baseline; gap:32px; }
.final-footer .footer-identity a { font-size:1.5rem; font-weight:700; letter-spacing:-.035em; }
.final-footer .footer-identity p { color:var(--muted); font-size:.75rem; }
.final-footer nav { display:flex; flex-wrap:wrap; gap:8px 36px; margin-block:32px 56px; }
.final-footer nav a { display:inline-flex; align-items:center; min-height:44px; font-size:.8125rem; color:var(--muted); }
.final-footer nav a:hover { color:var(--fg); }
.final-footer .footer-meta { display:flex; flex-wrap:wrap; justify-content:space-between; gap:24px; font:.5625rem var(--font-technical); color:var(--muted); letter-spacing:.05em; line-height:1.7; }
.final-footer .footer-meta span { margin-inline:20px; }
@media(min-width:2100px) { .final-chapter .environment-composition,.final-chapter .launch-scene { padding-inline:8vw; } }
@media(max-width:1100px) {
 .final-chapter .environment-composition { grid-template-columns:minmax(0,1fr) 220px; gap:32px; }
 .final-chapter .environment-composition h2 { font-size:8vw; }
 .final-chapter .journey-stage { grid-template-columns:minmax(0,1fr) 150px; width:85%; padding-left:60px; gap:24px; }
 .final-chapter .journey-stage h3 { font-size:5.7vw; }
}
@media(max-width:820px) {
 .final-chapter .environment-bridge { gap:16px; height:120px; }
 .final-chapter .environment-bridge > span:last-child { display:none; }
 .final-chapter .environment-composition { grid-template-columns:1fr; padding-block:48px 80px; }
 .final-chapter .environment-composition h2 { font-size:11vw; }
 .final-chapter .environment-vector { width:min(260px,52%); justify-self:end; margin-top:-30px; }
 .final-chapter .environment-facts { display:grid; grid-template-columns:1fr 1fr; gap:32px; margin-top:16px; }
 .final-chapter .journey-scene { padding-top:64px; }
 .final-chapter .journey-sequence { margin-top:48px; }
 .final-chapter .journey-path-wide { display:none; }
 .final-chapter .journey-path-narrow { display:block; width:20px; }
 .final-chapter .journey-stage { width:100%; min-height:240px; padding:28px 16px 36px 40px; grid-template-columns:minmax(0,1fr) 150px; gap:24px; }
 .final-chapter .journey-stage h3 { font-size:clamp(2.6rem,7.2vw,4.5rem); }
 .final-chapter .resolution-bridge { height:130px; gap:24px; }
 .final-chapter .resolution-art { width:min(340px,62vw); margin-bottom:48px; }
 .final-chapter .resolution-scene { padding-bottom:100px; }
 .final-chapter .launch-scene { grid-template-columns:1fr; padding-block:80px; gap:48px; }
 .final-chapter .launch-scene h2 { font-size:clamp(3rem,8vw,5rem); }
 .final-chapter .launch-destination { width:100%; max-width:520px; }
}
@media(max-width:600px) {
 .final-chapter .environment-bridge { height:100px; }
 .final-chapter .final-index { font-size:.5625rem; margin-bottom:24px; }
 .final-chapter .environment-composition { padding-top:32px; gap:36px; }
 .final-chapter .environment-composition h2 { font-size:11.1vw; }
 .final-chapter .environment-copy { margin-top:28px; font-size:1rem; }
 .final-chapter .environment-vector { width:56%; max-width:230px; margin-top:0; }
 .final-chapter .environment-facts { gap:28px 16px; margin-top:0; }
 .final-chapter .environment-facts dd { font-size:.8125rem; }
 .final-chapter .journey-header h2 { font-size:1.6rem; }
 .final-chapter .journey-header > p:last-child { font-size:.8125rem; }
 .final-chapter .journey-stage { min-height:300px; grid-template-columns:1fr; padding:24px 0 30px 32px; gap:16px; }
 .final-chapter .journey-stage h3 { font-size:clamp(2.75rem,11.8vw,4rem); }
 .final-chapter .journey-stage p { font-size:.8125rem; }
 .final-chapter .journey-art { width:140px; justify-self:end; }
 .final-chapter .journey-number { font-size:.5625rem; margin-bottom:12px; }
 .final-chapter .resolution-bridge { height:100px; gap:16px; font-size:.5rem; }
 .final-chapter .resolution-art { width:76%; max-width:300px; margin-bottom:40px; }
 .final-chapter .resolution-identity h2 { font-size:12.4vw; }
 .final-chapter .final-statement { margin-top:24px; font-size:1.125rem; letter-spacing:.015em; }
 .final-chapter .resolution-scene { padding-bottom:80px; }
 .final-chapter .launch-scene h2 { font-size:16vw; }
 .final-chapter .launch-copy { font-size:.8125rem; max-width:270px; }
 .final-chapter .marketplace-upcoming { padding-block:24px; gap:20px; }
 .final-chapter .marketplace-upcoming strong { font-size:1.125rem; }
 .final-footer { padding-top:40px; }
 .final-footer .footer-identity { display:block; }
 .final-footer .footer-identity p { margin-top:12px; }
 .final-footer nav { gap:8px 24px; margin-block:24px 32px; }
 .final-footer .footer-meta { flex-direction:column; gap:12px; font-size:.5rem; }
 .final-footer .footer-meta span { margin-inline:12px; }
}
@media(prefers-reduced-motion:reduce) {
 .final-chapter.phase6-ready .journey-path-progress { stroke-dashoffset:0; }
 .final-chapter.phase6-ready .journey-stage h3,.final-chapter.phase6-ready .journey-selection,.final-chapter.phase6-ready .resolution-clean,.final-chapter.phase6-ready .resolution-identity { opacity:1; transform:none; }
 .final-chapter.phase6-ready [data-stage=construct] .journey-geometry { stroke-dashoffset:0; }
 .final-chapter.phase6-ready .resolution-svg [data-resolution-layer] { opacity:0; }
}
