/* Full-viewport artwork remains present for the full height of each chapter. */
body{isolation:isolate}
.chapter-atmosphere{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;contain:strict;background:radial-gradient(ellipse at 82% 35%,#61754730,transparent 60%),linear-gradient(140deg,#203e2a,#173D32 60%,#203629)}
.chapter-atmosphere[hidden]{display:none}
.chapter-atmosphere>svg{position:absolute;right:-11vw;top:6vh;width:min(1050px,88vw);height:min(1050px,100vh);opacity:.48;overflow:visible}
.chapter-atmosphere::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#173D32ed 0%,#173D32b8 35%,#173D3220 70%,#173D3200)}
html[data-ambient-chapter] [data-page]::before{animation:none;inset:0;height:auto;background-repeat:repeat-y;background-size:1440px 900px;opacity:.12}
html[data-ambient-chapter] .page-heading,html[data-ambient-chapter] .rune-hero>div{position:relative}
.chapter-motion-toolbar{display:flex;justify-content:flex-end;max-width:1184px;margin:24px auto 0;padding-inline:24px;position:relative;z-index:1}
.chapter-motion-button{font:500 13px/1.4 var(--font-body);min-height:44px;padding:8px 16px;color:#F5F0E6;background:#203b2a;border:1px solid #8f9b79;border-radius:24px;max-width:100%;text-align:center}
.chapter-motion-button:hover{background:#173D32}.chapter-motion-button:focus-visible{outline:3px solid #D8B777;outline-offset:4px}.chapter-motion-button:disabled{opacity:1;color:#BDCFC4;background:#203b2a;border-color:#648477;cursor:default}
.ambient-float{animation:ambient-float 12s ease-in-out infinite alternate;transform-origin:center;transform-box:fill-box}
.ambient-sway{animation:ambient-sway 18s ease-in-out infinite alternate;transform-origin:center;transform-box:fill-box}
.ambient-number-first{animation:ambient-numbers-a 14s ease-in-out infinite}.ambient-number-second{opacity:0;animation:ambient-numbers-b 14s ease-in-out infinite}
.ambient-orbit{animation:ambient-orbit 150s linear infinite;transform-origin:500px 500px}
.ambient-card-float{animation:ambient-cards 14s ease-in-out infinite alternate;transform-origin:500px 650px}
.ambient-stones{animation:ambient-stones 14s ease-in-out infinite alternate;transform-origin:500px 500px}
.motion-paused .chapter-atmosphere *,body:has(dialog[open]) .chapter-atmosphere *,.motion-background-hidden *,.motion-background-hidden *::before,.motion-background-hidden *::after{animation-play-state:paused!important}
@keyframes ambient-float{from{transform:translateY(0)}to{transform:translateY(-24px)}}
@keyframes ambient-sway{from{transform:rotate(-2deg)}to{transform:rotate(2deg)}}
@keyframes ambient-numbers-a{0%,42%,100%{opacity:1}48%,92%{opacity:0}}
@keyframes ambient-numbers-b{0%,42%,100%{opacity:0}48%,92%{opacity:1}}
@keyframes ambient-orbit{to{transform:rotate(360deg)}}
@keyframes ambient-cards{from{transform:translateY(0) rotate(-3deg)}to{transform:translateY(-16px) rotate(3deg)}}
@keyframes ambient-stones{from{transform:rotate(-3deg) translateY(0)}to{transform:rotate(3deg) translateY(-10px)}}
@media(max-width:800px){.chapter-atmosphere>svg{width:660px;height:660px;max-width:none;right:-270px;top:22vh;opacity:.34}.chapter-atmosphere::after{background:linear-gradient(90deg,#173D32df,#173D3280 70%,#173D3230)}.ambient-sway{animation:none}.ambient-orbit{animation-duration:180s}}
@media(max-width:800px){.chapter-atmosphere[data-topic=calculator]>svg{width:580px;height:580px;right:-175px;top:10vh}}
@media(prefers-reduced-motion:reduce){.chapter-atmosphere *{animation:none!important}.chapter-atmosphere :is(.ambient-float,.ambient-sway,.ambient-orbit,.ambient-card-float,.ambient-stones){transform:none!important}.ambient-number-first{opacity:1!important}.ambient-number-second{opacity:0!important}}

/* The third video reference: a moving foreground subject, quiet readable copy. */
.chapter-atmosphere{background:radial-gradient(ellipse at 80% 36%,#5e684240,transparent 62%),linear-gradient(135deg,#182e22,#173D32 70%,#182a21)}
.chapter-atmosphere>svg{opacity:.72;right:-8vw;top:2vh}
.chapter-atmosphere::after{background:linear-gradient(90deg,#1d3828ed 0%,#203e2acd 30%,#173D3266 52%,#173D3200 82%)}
.chapter-atmosphere[data-topic=angels]{background:radial-gradient(ellipse at 80% 35%,#ada16d30,transparent 55%),linear-gradient(130deg,#1c3426,#173D32 60%,#384c30)}
.chapter-atmosphere[data-topic=tarot]{background:radial-gradient(ellipse at 80% 38%,#bc7a3530,transparent 55%),linear-gradient(135deg,#1c3225,#173D32 65%,#33332b)}
.chapter-atmosphere[data-topic=runes]{background:radial-gradient(ellipse at 80% 38%,#759a5c40,transparent 60%),linear-gradient(135deg,#182e22,#173D32 65%,#24362b)}
.ambient-angel-flight{animation:angel-flight 13s ease-in-out infinite alternate;transform-origin:500px 450px}
.angel-wing-left,.angel-wing-right{animation:angel-wing-breath 6s ease-in-out infinite alternate;transform-origin:470px 465px}
.ambient-card-reveal{opacity:0;animation:card-reveal 18s ease-in-out infinite}
.ambient-card-float{animation:tarot-flight 18s ease-in-out infinite alternate;transform-origin:500px 580px}
.ambient-stones{animation:rune-flight 15s ease-in-out infinite alternate;transform-origin:500px 500px}
@keyframes angel-flight{from{transform:translate(-10px,18px) rotate(-3deg)}to{transform:translate(20px,-30px) rotate(3deg)}}
@keyframes angel-wing-breath{from{transform:rotate(-5deg) scaleX(.94)}to{transform:rotate(7deg) scaleX(1.03)}}
@keyframes card-reveal{0%,35%,100%{opacity:0}48%,83%{opacity:1}}
@keyframes tarot-flight{from{transform:translate(-5px,20px) rotate(-6deg)}to{transform:translate(18px,-20px) rotate(7deg)}}
@keyframes rune-flight{from{transform:translate(0,12px) rotate(-7deg)}to{transform:translate(12px,-24px) rotate(7deg)}}
@media(max-width:800px){.chapter-atmosphere>svg{width:700px;height:700px;right:-300px;top:10vh;opacity:.43}.chapter-atmosphere::after{background:linear-gradient(90deg,#203e2aeb,#173D32a0 65%,#173D3240)}.chapter-atmosphere[data-topic=angels]>svg{right:-290px;top:7vh}.chapter-atmosphere[data-topic=tarot]>svg{right:-300px;top:7vh}.ambient-angel-flight{animation-duration:18s}}
@media(prefers-reduced-motion:reduce){.ambient-angel-flight,.angel-wing-left,.angel-wing-right{transform:none!important}.ambient-card-reveal{opacity:0!important}}
