/* Shared movement: calm atmosphere, quick controls, generous reading space. */:root{--ease-out:cubic-bezier(.2,.75,.25,1)}.reading-progress{position:fixed;top:90px;left:0;right:0;height:2px;background:linear-gradient(90deg,#ad8750,#f2d79d);transform:scaleX(0);transform-origin:left;z-index:32;pointer-events:none;box-shadow:0 0 10px #d0a86460}.motion-surface{position:relative;isolation:isolate}.motion-surface:after{content:'';position:absolute;inset:0;pointer-events:none;z-index:2;background:radial-gradient(260px circle at var(--pointer-x,50%) var(--pointer-y,30%),#efcd8812,transparent 75%);border-radius:inherit;opacity:0;transition:opacity .4s}
@media(hover:hover) and (pointer:fine){.motion-surface:hover:after{opacity:1}.card:hover .card-image{filter:brightness(1.08) saturate(1.05)}.school-tile:hover .school-symbol{translate:0 -3px;color:var(--school)}.hero-art:hover{box-shadow:0 25px 65px #0007,0 0 60px #bda36620}.atlas-feature:hover img{filter:brightness(1.09)}.atlas-journey:hover .journey-arrow .line-icon,.atlas-story-link:hover>.line-icon:last-child{translate:5px 0}}.motion-surface,.related-row,.track-row,.search-result,.atlas-directory-items>a{transition:background .25s,border-color .3s,box-shadow .35s,transform .35s var(--ease-out)}.school-symbol,.line-icon,.card h3,.card-image,.atlas-feature img{transition:color .25s,translate .35s var(--ease-out),filter .45s}.button,.icon-button,.chip,.card-bookmark,.category-tabs a,.fieldbook-tabs a,.tour-progress a{transition:background .22s,border-color .22s,box-shadow .3s,translate .25s var(--ease-out),color .2s}.icon-button:hover,.chip:hover{box-shadow:inset 0 0 0 1px #d7b77b55}.button:active,.chip:active{translate:0 1px}.button.primary:hover{box-shadow:0 5px 26px #d6ae6630,inset 0 1px #fff0cb}.card-bookmark.saved{animation:bookmark-bloom .42s var(--ease-out)}.hero-art{animation:frame-light 9s ease-in-out infinite alternate}.hero-art:before,.hero-art:after{transition:width .6s var(--ease-out),height .6s var(--ease-out)}.hero-art:hover:before,.hero-art:hover:after{width:45px;height:45px}.hero h1 em{display:inline-block;padding:.03em .15em .16em .025em;margin:-.03em -.15em -.16em -.025em;background-size:200% 100%;animation:golden-ink 9s ease-in-out infinite alternate}.stat-strip a{position:relative;transition:background .3s}.stat-strip a:after{content:'';position:absolute;left:0;bottom:0;width:100%;height:2px;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#dabb7b,transparent);transition:transform .4s var(--ease-out)}.stat-strip a:hover:after{transform:scaleX(1)}.section-title a,.atlas-back,.breadcrumb a,.button.link{text-underline-offset:5px;text-decoration-color:transparent;transition:text-decoration-color .25s,color .25s}.section-title a:hover,.atlas-back:hover,.breadcrumb a:hover,.button.link:hover{text-decoration:underline;text-decoration-color:#bf9f66}input,select,textarea{transition:border-color .25s,box-shadow .25s,background .25s}input:focus,select:focus,textarea:focus{border-color:#d2b478;box-shadow:0 0 0 3px #c8a96715}:is(button,a,input,select,textarea,summary):focus-visible{outline:2px solid #eed19a;outline-offset:4px}dialog[open]{animation:dialog-in .32s var(--ease-out)}dialog[open]::backdrop{animation:veil-in .25s ease-out}.category-tabs a.active,.fieldbook-tabs a.active{box-shadow:0 5px 20px #c7a4680a}.choice-card.selected{transition:border-color .25s,box-shadow .35s;box-shadow:inset 0 3px #dfb768,0 0 24px #dcb66a18}.gate-step.current .gate-number{box-shadow:0 0 30px #d8b86c15;transition:box-shadow .4s,color .4s}.gate-line{background:linear-gradient(180deg,transparent,#d5b87e,transparent);background-size:100% 200%;width:1px;border:0;animation:gate-flow 8s linear infinite}.sound-wave{display:flex;align-items:center;gap:3px;position:absolute;right:0;top:9px;height:22px;opacity:0;transition:opacity .3s}.sound-wave i{width:2px;height:15px;background:#ddbd7c;transform:scaleY(.25);animation:sound-beat .85s ease-in-out infinite alternate;animation-play-state:paused}.sound-wave i:nth-child(2){animation-delay:-.55s}.sound-wave i:nth-child(3){animation-delay:-.2s}.sound-wave i:nth-child(4){animation-delay:-.7s}body[data-playing=true] .sound-wave{opacity:1}body[data-playing=true] .sound-wave i{animation-play-state:running}.atlas-map-caption button{transition:color .25s,background .25s;border-radius:50%}.atlas-map-caption button:hover{background:#dfc38a12}.atlas-experience .chart-pin{transition:background .25s,box-shadow .35s}.atlas-experience .chart-pin>b{transition:background .25s,border-color .25s}.chart-chamber.unfolded{animation:dialog-in .35s var(--ease-out)}
@keyframes bookmark-bloom{50%{scale:1.15;box-shadow:0 0 0 7px #e3c17d22}}
@keyframes nav-line{from{transform:scaleY(0)}to{transform:scaleY(1)}}
@keyframes panel-in{from{opacity:0;translate:-10px 0}to{opacity:1;translate:0 0}}
@keyframes dialog-in{from{opacity:0;translate:0 12px;scale:.985}to{opacity:1;translate:0 0;scale:1}}
@keyframes veil-in{from{opacity:0}to{opacity:1}}
@keyframes frame-light{from{box-shadow:0 20px 65px #0006,0 0 35px #c5a0630d}to{box-shadow:0 25px 70px #0007,0 0 65px #c5a06324}}
@keyframes golden-ink{to{background-position:100% 50%}}
@keyframes gate-flow{to{background-position:0 200%}}
@keyframes sound-beat{to{transform:scaleY(1)}}
@media(max-width:650px){.reading-progress{top:75px}}/* Explicitly stop pseudo-elements and Web Animations as well as CSS transitions. */html[data-motion=off] *,html[data-motion=off] *:before,html[data-motion=off] *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}body[data-motion-paused=true] *,body[data-motion-paused=true]:before,body[data-motion-paused=true]:after,body[data-motion-paused=true] *:before,body[data-motion-paused=true] *:after{animation-play-state:paused!important}
@media print{.ambient-scenery,.reading-progress,.sound-wave{display:none}*,*:before,*:after{animation:none!important;transition:none!important}}
