/* Origin and Energy share one layout rhythm; all movement stays outside the art. */
#origin,#energy{--chapter-gap:clamp(36px,6vw,96px);--chapter-pad:clamp(25px,6.5vw,104px);position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--chapter-gap);align-items:center;padding:clamp(85px,8vw,128px) var(--chapter-pad);min-height:0;isolation:isolate}
#origin{background:radial-gradient(ellipse at 78% 48%,#133a2455,transparent 65%),#050e09}
#energy{background:radial-gradient(ellipse at 22% 48%,#164b3050,transparent 65%),#07150e}
#origin .origin-copy,#energy .scene-info{align-self:center;max-width:100%;min-width:0;position:relative;inset:auto;margin:0;padding:0;transform:none!important;translate:none!important;opacity:1!important;animation:none!important}
#origin .origin-copy>.kicker,#energy .scene-info>.kicker{margin-bottom:27px;letter-spacing:.19em}
#origin h2,#energy h2{font-size:clamp(60px,6.1vw,98px);line-height:.99;letter-spacing:-.025em;white-space:normal;margin:0 0 29px}
.chapter-line{display:block}.chapter-line em{font-style:normal}
#origin .origin-copy>p,#energy .scene-info>p{font:400 clamp(13px,1.08vw,16px)/1.9 'DM Sans',sans-serif;font-style:normal;color:#bdcdbf;max-width:43ch;margin:0;animation:none}
#energy .scene-link{margin-top:29px;padding:13px 0;font-size:9px;letter-spacing:.16em;min-height:44px;animation:none;transition:gap .3s,color .3s}
#energy .scene-link:hover{gap:29px;color:#fff0b8}
#origin .origin-visual,#energy .scene-photo{position:relative;inset:auto;width:100%;height:auto;aspect-ratio:auto;max-width:100%;margin:0;overflow:visible;align-self:center;isolation:isolate;border:0;box-shadow:none;opacity:1!important;translate:none!important;transform:none!important}
.chapter-art-frame{position:relative;border:1px solid #bfaa6855;background:#06130d;padding:9px;isolation:isolate;box-shadow:0 28px 70px #0005}
.chapter-art-frame img{position:static!important;display:block;width:100%;height:auto!important;aspect-ratio:1;object-fit:contain!important;object-position:center!important;max-height:none!important;transform:none!important;filter:none!important;opacity:1!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.chapter-art-frame:before{content:'';position:absolute;inset:-28px;z-index:-1;background:radial-gradient(ellipse,#3b8c4740,transparent 70%);pointer-events:none}
.frame-trace{position:absolute;inset:-1px;width:calc(100% + 2px);height:calc(100% + 2px);overflow:visible;pointer-events:none;z-index:2}
.frame-trace rect{fill:none;stroke:#e5c57e;stroke-width:1;vector-effect:non-scaling-stroke;stroke-dasharray:100;stroke-dashoffset:100}
#origin .visual-tag,.energy-art-label{position:relative;inset:auto;margin-top:18px;display:flex;justify-content:space-between;gap:15px;color:#a7b79f;font:500 7px/1.7 'DM Sans',sans-serif;letter-spacing:.16em;border:0;padding:0;background:none}
#origin .visual-tag span,.energy-art-label span{color:#dfc580}
#energy .chapter-number{display:none}
.frame-energy{position:absolute;inset:-16px;overflow:hidden;pointer-events:none;z-index:-1}
.frame-energy:before{content:'';position:absolute;width:80px;height:160%;left:-100px;top:-25%;background:linear-gradient(90deg,transparent,#6effa744,transparent);rotate:20deg;filter:blur(12px)}
.frame-energy i{position:absolute;width:3px;height:3px;border-radius:50%;background:#a3dbaa;left:calc(var(--n)*15%);bottom:8px;opacity:.6}
#origin.chapter-entered .frame-trace rect,#energy.chapter-entered .frame-trace rect{animation:frame-draw 1.8s .15s cubic-bezier(.25,.8,.3,1) forwards}
.chapter-directed .chapter-line{clip-path:inset(0);opacity:1}
.chapter-directed:not(.chapter-entered) .chapter-line{clip-path:inset(0 0 100% 0);translate:0 18px}
.chapter-directed.chapter-entered .chapter-line{animation:chapter-line-in 1s cubic-bezier(.16,1,.3,1) calc(var(--line,0)*.16s) both}
#origin.chapter-entered .origin-copy>p,#energy.chapter-entered .scene-info>p{animation:chapter-paragraph .9s .5s both}
#energy.chapter-entered .scene-link{animation:chapter-paragraph .9s .65s both}
#energy.chapter-entered .frame-energy:before{animation:energy-sweep 8s 1s ease-in-out infinite}
#energy.chapter-entered .frame-energy i{animation:edge-particle 5s calc(var(--n)*-.7s) ease-in-out infinite}
#energy:not(.chapter-visible) .frame-energy *,#energy:not(.chapter-visible) .frame-energy:before{animation-play-state:paused}
@keyframes frame-draw{to{stroke-dashoffset:0}}
@keyframes chapter-line-in{from{clip-path:inset(0 0 100% 0);translate:0 18px}to{clip-path:inset(0);translate:0 0}}
@keyframes chapter-paragraph{from{opacity:.2;translate:0 12px}to{opacity:1;translate:0 0}}
@keyframes energy-sweep{0%,15%{left:-100px;opacity:0}25%{opacity:1}65%{left:110%;opacity:0}100%{left:110%;opacity:0}}
@keyframes edge-particle{0%,100%{translate:0 0;opacity:.1}50%{translate:0 -80px;opacity:.65}}
/* A newspaper feature, a portrait and two supporting records. */
#archive{padding:clamp(65px,7vw,105px) clamp(25px,6.5vw,104px);background:radial-gradient(ellipse at 15% 20%,#fff9df70,transparent 65%),repeating-linear-gradient(0deg,#67542d05 0 1px,transparent 1px 4px),#ded2b8}
#archive .archive-heading{margin-bottom:46px;padding-bottom:28px;border-bottom:3px double #77654565}
#archive .archive-heading h2{font-size:clamp(36px,4.5vw,70px);margin:18px 0 12px;letter-spacing:-.045em}
#archive .archive-heading p{font-size:16px;line-height:1.7}
#archive .archive-spread{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(0,1fr) minmax(0,.86fr);grid-template-rows:auto auto;gap:24px;align-items:stretch}
#archive .archive-sheet{--paper-angle:-.35deg;transform:none;margin:0;rotate:var(--paper-angle);box-shadow:0 12px 24px #50402424;min-width:0;border:1px solid #9b865c60;animation:none;transition:box-shadow .4s}
#archive .archive-sheet:hover{translate:none;box-shadow:0 16px 32px #50402430}
#archive .archive-history{grid-column:1;grid-row:1/3;align-self:stretch;background:linear-gradient(130deg,#f5ead0,#e9dbba)}
#archive .archive-history .origin-quote{height:100%;padding:33px 30px;display:flex;flex-direction:column;justify-content:space-between;gap:18px;background:none;animation:none;translate:none;opacity:1;rotate:none}
#archive .archive-history .origin-quote:before{inset:10px;border-color:#a1906e55}
#archive .historical-label{font-size:7px;line-height:1.8;margin:0;letter-spacing:.13em}
#archive .archive-history .newspaper-masthead{font-size:clamp(38px,4vw,62px);margin:0;padding-bottom:15px;line-height:1.1;white-space:nowrap}
#archive .archive-history .origin-quote>span{font-size:8px;line-height:1.7}
#archive .archive-history blockquote{font-size:clamp(24px,2.3vw,36px);line-height:1.35;margin:0;padding-bottom:26px;border-bottom:1px solid #95805b70;letter-spacing:-.025em}
#archive .archive-history .origin-quote>small:last-child{font-size:7px;line-height:1.8;letter-spacing:.13em}
#archive .archive-photo{--paper-angle:.35deg;grid-column:2;grid-row:1/3;align-self:start;padding:11px 11px 17px;background:#263024}
#archive .archive-photo img{width:100%;height:auto;object-fit:contain;filter:none!important;opacity:1!important}
#archive .archive-photo figcaption{font-size:11px;padding-top:15px;line-height:1.6}
#archive .archive-record{--paper-angle:-.3deg;grid-column:3;grid-row:1;padding:25px 22px;background:linear-gradient(120deg,#f0e5ca,#e5d7b8)}
#archive .archive-record>strong{font-size:clamp(35px,3.2vw,48px);margin:19px 0 8px}
#archive .archive-record dl{margin:19px 0 14px}#archive .archive-record dl>div{padding:10px 0}#archive .archive-record dd{font-size:21px}#archive .archive-record dt{font-size:11px}#archive .archive-record>p{font-size:12px;line-height:1.6}
#archive .archive-manifesto{--paper-angle:.4deg;grid-column:3;grid-row:2;padding:22px;background:linear-gradient(135deg,#f3e8ce,#e9dbba)}
#archive .archive-manifesto>img{width:45px;height:45px;margin:0 auto 17px}
#archive .archive-manifesto h3{font-size:clamp(26px,2.4vw,37px);line-height:1.04;margin:0}
#archive .archive-manifesto>p{margin-top:16px;font-size:6px}
#archive .archive-sheet.story-arrived{animation:paper-settle 1.1s cubic-bezier(.16,1,.3,1) var(--reveal-delay,0s) both}
@keyframes paper-settle{from{translate:0 32px;rotate:calc(var(--paper-angle) - .7deg)}to{translate:0 0;rotate:var(--paper-angle)}}
@media(max-width:1050px){#archive .archive-spread{grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:28px}#archive .archive-history{grid-row:1;grid-column:1}#archive .archive-photo{grid-row:1;grid-column:2}#archive .archive-record{grid-row:2;grid-column:1}#archive .archive-manifesto{grid-row:2;grid-column:2}#archive .archive-history blockquote{font-size:clamp(25px,3.1vw,34px)}#archive .archive-manifesto h3{font-size:42px}#archive .archive-record>strong{font-size:48px}}
@media(max-width:850px){#origin,#energy{grid-template-columns:1fr;gap:35px;padding:75px 25px;max-width:100%}#origin .origin-copy,#energy .scene-info,#origin .origin-visual,#energy .scene-photo{max-width:620px;width:100%;margin-inline:auto}#origin .origin-copy{order:1}#origin .origin-visual{order:2}#origin h2,#energy h2{font-size:clamp(60px,10vw,82px);margin-bottom:23px}#origin .origin-copy>p,#energy .scene-info>p{max-width:48ch;font-size:14px}#origin .kicker,#energy .kicker{font-size:8px}#origin .visual-tag,.energy-art-label{font-size:7px}.chapter-art-frame{padding:7px}#energy .scene-link{margin-top:20px}}
@media(max-width:600px){#origin,#energy{padding:65px 23px;gap:31px}#origin h2,#energy h2{font-size:clamp(49px,12.4vw,70px);line-height:1.01}#origin .origin-copy>.kicker,#energy .scene-info>.kicker{margin-bottom:22px}#archive{padding:65px 24px 75px}#archive .archive-heading{margin-bottom:35px}#archive .archive-heading h2{font-size:36px}#archive .archive-heading p{font-size:14px}#archive .archive-spread{grid-template-columns:1fr;gap:30px;max-width:390px}#archive .archive-sheet{grid-column:1;grid-row:auto}#archive .archive-history .origin-quote{padding:30px 26px;gap:18px}#archive .archive-history .newspaper-masthead{font-size:46px}#archive .archive-history blockquote{font-size:29px;padding-block:8px 22px}#archive .archive-photo{width:86%;margin:auto}#archive .archive-record{padding:30px 26px}#archive .archive-manifesto{padding:30px}#archive .archive-manifesto h3{font-size:45px}#archive .archive-record>strong{font-size:50px}}
html[data-hero-animation=off] .chapter-directed .chapter-line{clip-path:none!important;translate:none!important}html[data-hero-animation=off] .chapter-directed *,html[data-hero-animation=off] #archive .archive-sheet{animation:none!important;transition:none!important}html[data-hero-animation=off] .frame-trace rect{stroke-dashoffset:0}
@media(prefers-reduced-motion:reduce){.chapter-directed .chapter-line{clip-path:none!important;translate:none!important}.chapter-directed *,#archive .archive-sheet{animation:none!important;transition:none!important}.frame-trace rect{stroke-dashoffset:0}}
