/* Shared animated diagrams: readable content remains visible without JavaScript. */
.editorial-page .hero--diagram{display:block;min-height:0}
.editorial-page .hero--diagram h1{max-width:1000px;font-size:clamp(40px,4.5vw,64px)}
.editorial-page .hero--diagram .dek{max-width:820px}
.hero--diagram>.visual-panel{width:100%;max-width:none;margin-top:42px}
.diagram-panel{container-type:inline-size;background-image:radial-gradient(ellipse at 50% 20%,#244e345e,transparent 62%),radial-gradient(#b4dbc914 1px,transparent 1px);background-color:#09170f;background-size:auto,20px 20px}
.diagram-panel .visual-overline,.technical-diagram .visual-overline{font-size:12px;letter-spacing:.09em;padding:28px 30px 0}
.diagram-stage{position:relative;margin:18px 30px 30px}
.diagram-canvas{height:auto;position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:160px auto auto auto;gap:14px 28px;list-style:none;padding:0;margin:0}
.diagram-node{display:grid;grid-template-rows:subgrid;grid-row:1/5;align-items:start;justify-items:center;gap:14px;text-align:center;min-width:0;transform:none}
.diagram-node .diagram-icon{position:relative;align-self:center;z-index:1;width:76px;height:76px;margin:0;border:1px solid #80ad8f;border-radius:24px;background:linear-gradient(145deg,#31533d,#10281a);box-shadow:inset 0 1px #c1eccb29,0 14px 32px #0007;color:#cef4da}
.diagram-node--1 .diagram-icon{width:102px;height:102px;border-radius:50%;background:radial-gradient(circle at 36% 25%,#447453,#112b1c 75%);outline:1px solid #84c99855;outline-offset:11px;box-shadow:0 0 65px #3ecf8e30,inset 0 1px #c1eccb40}
.diagram-node .diagram-icon svg{width:32px;height:32px}
.diagram-node strong{max-width:290px;font:500 clamp(20px,2.2cqi,26px)/1.22 'Space Grotesk',sans-serif;color:#eff6e7;letter-spacing:-.025em;text-wrap:balance}
.diagram-node p,.editorial-page .diagram-node p{margin:0;max-width:295px;font:500 15px/1.65 'Manrope',sans-serif;color:#c2ddcb;overflow-wrap:anywhere;text-wrap:pretty}
.home-trust .diagram-node p{margin:0;max-width:none}
.diagram-node>span.diagram-detail:last-child{display:block;max-width:280px;font:400 13px/1.6 'Manrope',sans-serif;color:#a3c2ad}
.diagram-lines{inset:0 0 auto;width:100%;height:160px;z-index:0;stroke:#658e72;stroke-width:1.2;overflow:visible;pointer-events:none}
.diagram-travel{stroke:#c5ffde;stroke-width:2.6;stroke-linecap:round;stroke-dasharray:14 100;stroke-dashoffset:16;animation:none;opacity:0;filter:drop-shadow(0 0 5px #62f8ab)}
.diagram-halo{position:absolute;left:50%;top:80px;transform:translate(-50%,-50%);width:180px;height:180px;border:1px solid #83bb9140;border-radius:50%;pointer-events:none}
.diagram-halo::before,.diagram-halo::after{content:"";position:absolute;inset:-22px;border:1px solid #83bb911f;border-radius:50%}
.diagram-halo::after{inset:12px;border-color:#a7f5bf55;opacity:0}
.diagram-panel figcaption{font-size:13px;line-height:1.7;padding:23px 30px 26px;border-top:1px solid #41644b73;color:#accab5}
.diagram-panel.is-running .diagram-travel{animation:diagram-beam 2.2s ease-in-out 2}
.diagram-panel.is-running .diagram-halo::after{animation:diagram-ripple 2.2s ease-out 2}
.diagram-panel.is-running .diagram-icon{animation:diagram-illuminate 2.2s ease-in-out 2}
.diagram-panel.is-running .diagram-node--1 .diagram-icon{animation-delay:.15s}
.diagram-panel.is-running .diagram-node--2 .diagram-icon{animation-delay:.3s}
@keyframes diagram-beam{0%{stroke-dashoffset:16;opacity:0}12%{opacity:1}85%{opacity:1}100%{stroke-dashoffset:-100;opacity:0}}
@keyframes diagram-ripple{0%{transform:scale(.72);opacity:0}20%{opacity:.75}100%{transform:scale(1.45);opacity:0}}
@keyframes diagram-illuminate{0%,100%{filter:brightness(1)}45%{filter:brightness(1.3)}}
@container(max-width:600px){.diagram-panel .diagram-canvas{column-gap:14px;grid-template-rows:150px auto auto auto}.diagram-node strong{font-size:18px}.diagram-node p{font-size:13px}.diagram-node .diagram-icon{width:58px;height:58px;border-radius:19px}.diagram-node--1 .diagram-icon{width:80px;height:80px;border-radius:50%;outline-offset:9px}.diagram-halo{width:148px;height:148px;top:75px}.diagram-lines{height:150px}.diagram-node>span.diagram-detail:last-child{font-size:12px}.diagram-stage{margin-inline:22px}}
@container(max-width:440px){.diagram-stage{margin:26px 22px}.diagram-canvas{display:flex;flex-direction:column;gap:28px}.diagram-lines,.diagram-halo{display:none}.diagram-node{position:relative;display:grid;grid-template-columns:54px minmax(0,1fr);grid-template-rows:auto auto auto;gap:10px 20px;text-align:left;justify-items:start;align-items:start;padding:6px 0}.diagram-node strong{font-size:21px;max-width:none}.diagram-node p,.editorial-page .diagram-node p{font-size:14px;grid-column:2;max-width:none}.diagram-node>span.diagram-detail:last-child{grid-column:2;max-width:none;font-size:12px}.diagram-node .diagram-icon{grid-column:1;grid-row:1/4;width:52px;height:52px;border-radius:18px;align-self:start;outline:none}.diagram-node--1 .diagram-icon{border-radius:50%}.diagram-node .diagram-icon img{width:28px;height:28px}.diagram-node .diagram-icon svg{width:26px;height:26px}.diagram-node:not(:last-child)::before,.diagram-node:not(:last-child)::after{content:"";position:absolute;left:26px;top:68px;bottom:-28px;width:1px;background:#72967d66}.diagram-node:not(:last-child)::after{width:2px;background:linear-gradient(transparent,#c1f6d2,transparent);transform-origin:top;opacity:0}.diagram-panel.is-running .diagram-node::after{animation:diagram-mobile-beam 2.2s ease-out 2}.diagram-panel figcaption{padding:20px 22px 24px}}
@keyframes diagram-mobile-beam{0%{transform:scaleY(0);opacity:0}45%{transform:scaleY(.7);opacity:1}100%{transform:scaleY(1);opacity:0}}
.memory-heading p{max-width:760px}
.memory-chapters{list-style:none;margin:0;padding:0}
.memory-chapter{min-height:36vh;padding:46px 0}
.memory-chapter h3{font-size:clamp(28px,2.9vw,41px)}
.memory-chapter p{font-size:17px;color:#d2e6d8;border-left:2px solid #72c697;padding:10px 0 10px 20px;background:linear-gradient(90deg,#1c39284d,transparent)}
.chapter-detail{grid-column:1/-1;font-size:14px;line-height:1.6;color:#a8c3b0}
.memory-track.is-enhanced .memory-chapter:not(.is-active){opacity:1;transform:none}
.memory-chapter.is-active .chapter-number{color:#caf2d6}
.technical-diagram{scroll-margin-top:100px;background:#09160e;border-color:#4f765b;box-shadow:0 30px 70px #0003}
.tech-local{margin:26px 28px 0;padding:26px;border:1px solid #527d5d;border-radius:18px;background:#102219}
.technical-diagram h2{font:500 18px/1.35 'Space Grotesk',sans-serif;letter-spacing:-.015em;max-width:none;margin:0 0 24px;color:#dfeede}
.tech-local h2 .line-icon{width:22px;height:22px;margin-right:8px;color:#b2d5b5}
.tech-system{display:grid;grid-template-columns:minmax(0,1fr) 76px minmax(0,1.4fr) 76px minmax(0,1fr);align-items:center;gap:10px}
.tech-node{display:flex;flex-direction:column;align-items:flex-start;min-width:0;padding:22px 18px;background:#1b3324;border:1px solid #53705a;border-radius:14px;min-height:232px}
.tech-node>.line-icon{width:28px;height:28px;color:#b9dfc1;margin-bottom:20px}
.technical-diagram h3{font:500 20px/1.25 'Space Grotesk',sans-serif;letter-spacing:-.02em;margin:0 0 12px;color:#f0f4e8;text-wrap:initial}
.tech-node p,.tech-external p{font:500 14px/1.6 'Manrope',sans-serif;color:#d0e0d4;margin:0 0 12px}
.tech-node>span,.tech-external>div>span{font-size:12px;line-height:1.6;color:#a5c2ae}
.tech-core{background:#e8edda;border-color:#e8edda;min-height:280px;padding:25px 22px}
.tech-core h3{font-size:32px;color:#16452a;margin:12px 0}
.tech-core p{color:#234b30}
.tech-core>.line-icon{color:#315a3a;margin-bottom:16px}
.tech-core>span,.tech-core .tech-machine{color:#3d6246;font-size:12px}
.tech-core .tech-machine{font-weight:600;text-transform:uppercase;letter-spacing:.045em}
.tech-flow{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;color:#c3e1c9}
.tech-flow svg{width:38px;height:30px}
.tech-flow span{font-size:11px;line-height:1.45;overflow-wrap:anywhere}
.tech-flow--read svg{transform:rotate(180deg)}
.tech-backup{position:relative;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;margin:30px auto 0;padding:16px 20px;border:1px solid #48654f;border-radius:12px;max-width:650px;background:#0b1a10;color:#c5ddcd}
.tech-backup::before{content:"";position:absolute;left:50%;bottom:100%;height:30px;border-left:1px dashed #7b9c82}
.tech-backup svg{width:22px;height:22px}.tech-backup strong{font-size:14px}.tech-backup>span{font-size:12px;line-height:1.6;text-align:center}
.tech-network{position:relative;display:flex;justify-content:center;gap:18px;align-items:center;max-width:630px;padding:22px 0;margin:0 auto}
.tech-network svg{color:#dcc889;width:34px;height:34px;transform:rotate(90deg)}
.tech-network strong{font-size:13px;color:#e1d09f}.tech-network p{margin:5px 0 0;font-size:12px;color:#b5c9ba;line-height:1.6}
.tech-external{position:relative;display:flex;gap:24px;align-items:center;margin:0 28px;padding:28px;border:1px dashed #baaa79;border-radius:18px;background:#292a194d}
.tech-external-badge{position:absolute;left:22px;top:-11px;padding:0 8px;background:#0a170f;font-size:11px;line-height:1.8;color:#e0cd95}
.tech-external>.line-icon{width:48px;height:48px;color:#d8ca9c}
.tech-external h2{margin-bottom:10px;font-size:21px}.tech-external p{margin-bottom:7px}
.tech-checklist{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;padding:24px 28px 18px}
.tech-checklist>span{color:#adc5b4;font-size:12px;margin-right:10px}
.tech-checklist a{display:inline-flex;gap:10px;align-items:center;border:1px solid #50725a;border-radius:8px;padding:9px 12px;min-height:44px;font-size:12px;color:#d2e9d6;text-decoration:none}
.tech-checklist a:hover{background:#264432}.tech-checklist a:focus-visible{outline:3px solid #e5d49a;outline-offset:3px}
.tech-checklist a svg{width:15px;height:15px}
.technical-diagram figcaption{font-size:12px;padding:0 28px 26px}
.editorial-detail[id]{scroll-margin-top:105px}

/* The architecture retains explicit directions and its technical links. */
.technical-diagram{background-image:radial-gradient(ellipse at 50% 25%,#2255394d,transparent 65%),radial-gradient(#b4dbc912 1px,transparent 1px);background-size:auto,20px 20px}
.tech-local{background:#102219b8}
.tech-node{background:linear-gradient(135deg,#294832c4,#12251bbf);border-color:#5a7f62;border-radius:22px}
.tech-core{position:relative;isolation:isolate;align-items:center;text-align:center;background:radial-gradient(ellipse at 50% 20%,#366344,#132b1d 80%);border:1px solid #99c6a1;box-shadow:0 0 55px #42d4891f,inset 0 1px #d5ffe140;padding-top:32px}
.tech-core h3{color:#edfae8}.tech-core p{color:#d1e6d6}.tech-core>span,.tech-core .tech-machine{color:#b6d4be}
.tech-core-orbit{position:relative;display:grid;place-items:center;width:72px;height:72px;flex-shrink:0;border:1px solid #acd8b7;border-radius:50%;background:radial-gradient(circle at 35% 20%,#547f5f,#173922);box-shadow:0 0 30px #66e39635;margin:0 0 25px}
.tech-core-orbit::before,.tech-core-orbit::after{content:"";position:absolute;inset:-9px;border:1px solid #9debb752;border-radius:50%;pointer-events:none}
.tech-core-orbit::after{inset:-18px;border-color:#9debb725}
.tech-core.is-running .tech-core-orbit::before{animation:diagram-ripple 2.2s ease-out 2}
.tech-core.is-running .tech-core-orbit img{animation:diagram-illuminate 2.2s ease-in-out 2}
.tech-flow .tech-beam{width:100%;height:38px;stroke:#789d83;stroke-width:1.5;stroke-linecap:round;overflow:visible}
.tech-beam .beam-packet{stroke:#d3ffe3;stroke-width:3;stroke-dasharray:18 100;stroke-dashoffset:20;opacity:0;filter:drop-shadow(0 0 4px #62f8ab)}
.tech-flow.is-running .beam-packet{animation:diagram-beam 2.2s ease-in-out 2}
@media(max-width:1050px){.tech-system{grid-template-columns:minmax(0,1fr) 58px minmax(0,1.35fr) 58px minmax(0,1fr);gap:8px}.tech-local{padding:20px;margin:22px 20px 0}.tech-node{padding:20px 14px}.technical-diagram h3{font-size:18px}.tech-core h3{font-size:30px}}
@media(max-width:760px){.hero--diagram>.visual-panel{margin-top:30px}.memory-chapters{display:block}.memory-chapter{display:grid;grid-template-columns:1fr auto;gap:14px;min-height:0;padding:28px 0;border-top:1px solid #42624b}.memory-chapter h3{font-size:26px}.memory-chapter p{font-size:15px}.chapter-detail{font-size:13px}.memory-art{padding-bottom:10px}.tech-system{grid-template-columns:1fr;gap:16px}.tech-node,.tech-core{width:100%;min-height:0;padding:24px}.tech-node h3{font-size:23px}.tech-core h3{font-size:34px}.tech-node p{font-size:15px}.tech-node>span{font-size:13px}.tech-flow{flex-direction:row;justify-content:center;gap:18px;min-height:48px}.tech-flow .tech-beam{transform:rotate(90deg);width:50px;height:28px;flex-shrink:0}.tech-flow--read .tech-beam{transform:rotate(-90deg)}.tech-flow span{font-size:12px}.tech-node>.line-icon{margin-bottom:15px}.tech-backup::before{display:none}.tech-backup{margin-top:22px}.tech-external{margin:0 20px;padding:30px 22px 22px}.tech-external-badge{position:static;padding:0;background:transparent;grid-column:1/-1}.tech-external{display:grid;grid-template-columns:36px 1fr;gap:16px}.tech-external>.line-icon{width:32px}.tech-network{margin:0 22px;padding:25px 5px;gap:16px}.tech-checklist{padding:24px 20px 20px;gap:10px}.tech-checklist>span{flex-basis:100%}.technical-diagram figcaption{padding:0 20px 24px}}
@media(max-width:400px){.editorial-page .editorial-section h2{overflow-wrap:anywhere;hyphens:auto}.tech-local{margin:20px 14px 0;padding:16px}.tech-external{margin:0 14px;padding:24px 18px}.technical-diagram .visual-overline,.diagram-panel .visual-overline{padding-inline:22px;font-size:11px}.diagram-stage{margin-inline:18px}}
@media(prefers-reduced-motion:reduce){.diagram-panel *, .diagram-panel *::before,.diagram-panel *::after,.technical-diagram *, .technical-diagram *::before,.technical-diagram *::after{animation:none!important}.diagram-travel,.beam-packet{opacity:0}.memory-chapter,.memory-chapter.is-active{transition:none;transform:none}}
