/* Decorative presentation effects respect reduced motion and touch devices. */
.site-header{transition:background .3s,box-shadow .3s;border-bottom-color:#a9a0dd20}
.site-header.scrolled{background:#100f29f2;box-shadow:0 8px 35px #06051866}
.reading-progress{position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:linear-gradient(90deg,#a284ff,#4be2ff 60%,#ffe069);transform:scaleX(0);transform-origin:left;pointer-events:none;box-shadow:0 0 12px #6bddff55}
.nav-wrap nav a{position:relative;padding-block:9px}
.nav-wrap nav a:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;border-radius:2px;background:var(--gold);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.nav-wrap nav a:hover:after,.nav-wrap nav a.active:after{transform:scaleX(1)}
.hero-art{transform:translate3d(0,var(--scene-y,0px),0)}
.hero-copy .live{display:inline-flex;padding:9px 13px;border:1px solid #92ecb83b;background:#15263d88;border-radius:9px;font-size:10px;letter-spacing:2.2px;backdrop-filter:blur(8px)}
.hero-shade{background:linear-gradient(90deg,#0b0d2bbc 0%,#0d103453 43%,transparent 70%),linear-gradient(0deg,var(--ink) 0%,#11102700 28%,transparent 90%)}
.hero h1 .gold-text{color:#ffdc56;text-shadow:0 4px #65401c,0 8px #111027,0 12px 28px #04071480}
html.motion-ready .hero-copy>.eyebrow,html.motion-ready .hero-copy h1,html.motion-ready .hero-description,html.motion-ready .hero .button-row,html.motion-ready .hero-note{animation:heroEnter .8s cubic-bezier(.18,.7,.3,1) both}
html.motion-ready .hero-copy h1{animation-delay:.08s}html.motion-ready .hero-description{animation-delay:.17s}html.motion-ready .hero .button-row{animation-delay:.26s}html.motion-ready .hero-note{animation-delay:.34s}
@keyframes heroEnter{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}
html.motion-ready .reveal{transition:opacity .7s cubic-bezier(.2,.6,.3,1),transform .7s cubic-bezier(.2,.6,.3,1);transition-delay:var(--reveal-delay,0ms)}
.hero-scroll span:last-child{animation:scrollHint 2.5s ease-in-out infinite}@keyframes scrollHint{50%{transform:translateY(6px)}}
.world-facts{background:linear-gradient(135deg,#302949f0,#1a1932f5);border-color:#8275a357;box-shadow:inset 0 1px #d3c8ff2b,0 18px 55px #0304197a}
.intro-path{gap:30px}.intro-path:before{display:none}
.intro-path article{padding:35px 26px 30px;border:1px solid #a08ac135;border-radius:27px;background:radial-gradient(ellipse at top,#65508126,transparent 80%),linear-gradient(150deg,#201d36,#17172e);box-shadow:inset 0 1px #e0c9ff0d;transition:border-color .3s,box-shadow .3s}
.intro-path article:hover{border-color:#baa4e184;box-shadow:inset 0 1px #e0c9ff22,0 18px 35px #06041b33}
.intro-path article:hover .step-icon{box-shadow:inset 0 3px #c6b2ff44,0 6px #090c23,0 0 25px #8c6cff33}
.feature-art>img,.level-map,.chest-stage,.community-banner{transition:border-color .4s,box-shadow .4s}
.feature-art:hover>img,.level-map:hover,.chest-stage:hover,.community-banner:hover{border-color:#ad90dd;box-shadow:0 10px #080a21,0 0 40px #895de926}
.floating-reward{backdrop-filter:blur(12px);border-color:#f5d5828a;background:linear-gradient(145deg,#564541e8,#272038ee)}
.explorer-panel{background:radial-gradient(ellipse at top right,#7144b02b,transparent 65%),linear-gradient(145deg,#302349,#1c1936);border-color:#ae86e273;box-shadow:inset 0 1px #d7beff25,0 8px #090b21,0 18px 55px #0002}
.milestone-presets button{transition:background .2s,border-color .2s,color .2s}
.chest-tabs button{transition:border-color .25s,transform .25s,box-shadow .25s}
.chest-tabs button.active{border-color:var(--gem-color,#efa85e);background:linear-gradient(#44394c,#272139);box-shadow:0 5px #090b22,0 0 25px color-mix(in srgb,var(--gem-color,#efa85e) 18%,transparent)}
.chest-detail{--tier-color:#efa85e;border-color:color-mix(in srgb,var(--tier-color) 44%,#393058);background:radial-gradient(ellipse at bottom right,color-mix(in srgb,var(--tier-color) 9%,transparent),transparent 75%),linear-gradient(135deg,#2a2240,#211e39);transition:border-color .25s;box-shadow:inset 0 1px #f0dfff0e,0 12px 30px #03041935}
.chest-detail .eyebrow,.chest-requirement strong{color:var(--tier-color)}
.market-steps>div>span{border-color:#5e9acb80;background:linear-gradient(145deg,#284664,#25203f);color:#8cebff}
.token-emblem{isolation:isolate}.emblem-halo{position:absolute;inset:8% 8%;border-radius:50%;background:radial-gradient(#ffcb4917,#9b5be413 40%,transparent 72%);z-index:-1;animation:haloBreathe 6s ease-in-out infinite;pointer-events:none}
@keyframes haloBreathe{50%{transform:scale(1.08);opacity:.45}}
.roadmap-node{box-shadow:0 0 0 6px var(--ink),0 0 22px #d8c8ff18}.roadmap-node.next{box-shadow:0 0 0 6px var(--ink),0 0 25px #ffdf582f}
.dex-teaser{border-color:#9c79d260;background:radial-gradient(ellipse at right,#5b36932b,transparent 75%),#1e1936;box-shadow:inset 0 1px #d7c5ff17,0 12px 35px #05051b44}
.faq-list details{transition:background .25s,border-color .25s;padding:23px 20px;border-radius:12px}.faq-list details:first-child{padding-top:23px}.faq-list details[open]{background:#9381ca09;border-color:#a68ac765}
.faq-list details[open] p{animation:answerEnter .3s ease-out}@keyframes answerEnter{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}
dialog[open]{animation:guideEnter .25s ease-out}@keyframes guideEnter{from{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
.back-to-top{position:fixed;right:26px;bottom:26px;z-index:35;width:46px;height:46px;display:grid;place-items:center;border:1px solid #a28bbf88;border-radius:15px;background:#28213eea;backdrop-filter:blur(10px);box-shadow:0 6px 25px #0005;color:#d1b9ff;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .2s,transform .2s,visibility .2s}
.back-to-top svg{width:20px;height:20px;transform:rotate(-90deg)}.back-to-top.shown{opacity:1;visibility:visible;transform:none}.back-to-top:hover{border-color:#ffdc66;color:var(--gold)}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.game-button>svg:last-child{transition:transform .25s}.game-button:hover>svg:last-child{transform:translateX(3px)}.text-link>svg{transition:transform .25s}.text-link:hover>svg{transform:translateX(4px)}}
@media(max-width:960px){.intro-path{gap:18px}.intro-path article{padding:27px 16px}.nav-wrap nav a:after{left:12px;right:12px}.hero-copy .live{font-size:9px}.faq-list details{padding-inline:14px}}
@media(max-width:700px){.hero-art{transform:none}.hero-shade{background:linear-gradient(180deg,#101027 0%,#101027 39%,#101027ab 49%,#10102705 66%,#10102700 78%,#101027 100%)}.hero-copy .live{font-size:8px;letter-spacing:1.6px;padding:8px 10px}.hero-inner{padding-top:45px}.hero-copy .eyebrow{margin-bottom:22px}.hero-description{max-width:335px}.hero .button-row{margin-top:25px}.intro-path{gap:16px;margin-top:32px}.intro-path article{padding:23px 20px;column-gap:19px;border-radius:22px}.intro-path p{font-size:12px}.intro-path h3{font-size:17px}.step-icon{width:62px;height:62px}.faq-list details{padding-inline:12px}.back-to-top{right:16px;bottom:16px;width:39px;height:39px;border-radius:12px}.toast{bottom:68px}.chest-detail{box-shadow:inset 0 1px #f0dfff0e,0 8px 24px #03041935}}
@media(max-width:370px){.intro-path article{padding:20px 14px;grid-template-columns:62px 1fr;column-gap:16px}.hero-copy .live{font-size:7px;letter-spacing:1.5px}.hero-inner{padding-top:43px}}
/* Keep the mine behind the mobile introduction instead of below a blank panel. */
@media(max-width:700px){
 .hero{min-height:800px}
 .hero-inner{min-height:723px;padding-top:28px}
 .hero-art{inset:0;height:100%;width:100%;transform:none}
 .hero-art img{object-position:77% 50%}
 .hero-shade{background:linear-gradient(180deg,#0c10265c 0%,#101027bf 14%,#101027e0 32%,#1010279e 48%,#10102714 68%,#101027 100%)}
}
@media(max-width:370px){.hero{min-height:850px}.hero-inner{min-height:773px;padding-top:24px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.hero-art{transform:none!important}html.motion-ready .reveal{opacity:1;transform:none}.feature-art.reveal.visible,.market-art.reveal.visible{transform:none}}
