@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Marcellus&display=swap');
:root{--bg:#100d20;--surface:#1b162f;--text:#f5f0ff;--muted:#b6afc6;--gold:#eec879;--purple:#9965f6;--line:#ffffff18}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--text);font:15px/1.7 Manrope,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{max-width:100%}a,button,summary{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--gold);outline-offset:5px}h1,h2,h3,p{margin:0}h2{font:42px/1.2 Marcellus,Georgia,serif;letter-spacing:-.5px}h3{line-height:1.35}p{color:var(--muted)}.wrap{width:min(1180px,calc(100% - 64px));margin-inline:auto}.skip{position:fixed;top:-80px;left:10px;background:var(--gold);color:#151020;padding:12px;z-index:20}.skip:focus{top:10px}.header{height:78px;position:absolute;top:0;z-index:10;display:flex;align-items:center;width:100%;padding:0 3.5%;border-bottom:1px solid var(--line);background:#120f23bb;backdrop-filter:blur(18px);gap:35px}.brand{width:110px;flex-shrink:0;display:flex;align-items:center}.brand img{object-fit:contain;height:70px}.header nav{display:flex;gap:25px;font-weight:700;font-size:13px;flex:1}.header nav a:hover,.login:hover{color:var(--gold)}.header-actions{display:flex;align-items:center;gap:16px;font-size:12px;font-weight:700}.test-tag{color:#9de6bf;white-space:nowrap}.test-tag i,.badge i{display:inline-block;width:7px;height:7px;background:#8de7b3;border-radius:50%;box-shadow:0 0 12px #8de7b344;margin-right:7px}.login{white-space:nowrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:16px 28px;border-radius:50px;font-size:15px;font-weight:800;line-height:1.3;transition:transform .2s,filter .2s;border:1px solid #ffffff30;box-shadow:inset 0 2px 1px #ffffff36}.button:hover{transform:translateY(-3px);filter:brightness(1.1)}.button.gold{background:linear-gradient(#ffe59b,#e7af48);color:#35220e;box-shadow:0 8px 32px #dca63e25,inset 0 2px 1px #fff6}.button.violet{background:linear-gradient(#a27aff,#6d35cb);color:white;box-shadow:0 8px 30px #7e42e12b,inset 0 2px 1px #fff5}.button.small{font-size:12px;padding:10px 18px}.menu-toggle{display:none}.hero{min-height:800px;position:relative;overflow:hidden;background:#0f0e20;display:grid;place-items:center;padding:115px 20px 80px}.hero-bg{position:absolute;inset:0;background:linear-gradient(0deg,var(--bg),transparent 35%),linear-gradient(90deg,#100e2090,transparent 25%,#100e2025 70%),url('/assets/hero-mir4.webp') center 42%/cover;opacity:.85}.hero-bg:after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,#100d2030 20%,#100d2055 75%)}.hero-warrior{position:absolute;width:540px;height:auto;max-width:none;left:-60px;top:185px;filter:brightness(.72);transform:rotate(-5deg);mask-image:linear-gradient(#000 65%,transparent 95%);pointer-events:none}.hero-content{z-index:1;text-align:center;max-width:760px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:2.7px;color:var(--gold)}.badge{border:1px solid #d6c69e40;border-radius:24px;padding:10px 18px;background:#151323b8;letter-spacing:1.6px}.hero-logo{width:335px;height:auto;display:block;margin:26px auto 5px;filter:drop-shadow(0 8px 20px #0008)}.kicker{font-size:9px;letter-spacing:3px;color:#e2d9ed;font-weight:800;margin-top:6px}h1{font:50px/1.12 Marcellus,Georgia,serif;letter-spacing:-1px;margin:17px 0}h1 em{font-style:normal;color:#f6d395}.hero-description{font-size:15px;color:#e1dbea;text-shadow:0 2px 15px #000}.hero-description strong{color:white}.actions{display:flex;justify-content:center;gap:15px;margin:27px 0 15px}.hero-note{font-size:11px;color:#c7bdd3}.scroll-cue{display:block;margin:22px auto 0;border:1px solid #fff3;border-radius:50%;width:35px;height:35px;line-height:28px;color:#d8cbe9;font-size:25px}.facts{position:relative;z-index:2;margin-top:-30px;display:grid;grid-template-columns:repeat(4,1fr);padding:26px 24px;background:linear-gradient(110deg,#261d3b,#1d1932);border:1px solid #ac8fca38;border-radius:16px;box-shadow:0 16px 45px #0002}.facts>div{text-align:center;border-right:1px solid #ffffff12}.facts>div:last-child{border:0}.facts span{display:block;font-size:9px;letter-spacing:1.8px;color:#b5a8c6;margin-bottom:7px}.facts strong{font-size:14px}.facts small{font-weight:400;color:var(--muted);padding-left:5px}.gold-text{color:var(--gold)}.section{padding-block:90px}.section-heading{text-align:center;margin-bottom:40px}.section-heading h2{margin:10px 0 14px}.section-heading>p:last-child{max-width:620px;margin:auto;font-size:14px}.world-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.world-card{position:relative;overflow:hidden;border-radius:18px;border:1px solid #ffffff1b;min-height:405px;background:#20192f}.world-art{position:absolute;inset:0;background:linear-gradient(90deg,#17131ef5 15%,#17131eb5 80%),url('/assets/mir4-world.jpg') center/cover;opacity:.9}.boost .world-art{background:linear-gradient(90deg,#20152bf5 10%,#20152ba8 85%),url('/assets/hero-mir4.webp') 80%/cover}.world-number{position:absolute;right:24px;top:12px;font:90px Marcellus,serif;color:#ffffff0d}.world-copy{position:relative;padding:38px;max-width:490px}.pill{display:inline-block;font-size:9px;font-weight:800;letter-spacing:1.7px;border:1px solid #e2bd7140;color:var(--gold);padding:5px 11px;border-radius:5px}.boost .pill{color:#c7a3ff;border-color:#a77bea66}.world-copy h3{font:31px Marcellus,serif;margin:20px 0 14px}.world-copy p{font-size:13px}.world-copy ul{list-style:none;padding:0;margin:22px 0;font-size:12px;color:#d2c9db;line-height:2.3}.world-copy li:before{content:'✧';color:var(--gold);margin-right:9px}.world-copy a,.steps a,.news-grid a,.text-link{font-size:12px;color:var(--gold);font-weight:800}.world-copy a span{margin-left:12px}.section-footnote{font-size:11px;text-align:center;margin-top:20px;color:#9b91ab}.classes-section{padding:75px 0 0;background:radial-gradient(ellipse at 65% 90%,#39235388,transparent 60%),#141023;border-block:1px solid var(--line);overflow:hidden}.class-tabs{display:flex;justify-content:center;gap:5px;flex-wrap:wrap}.class-tabs button{border:1px solid transparent;background:none;border-radius:7px;padding:10px 15px;color:#a99cbb;font-size:12px}.class-tabs button[aria-selected=true]{border-color:#c09b545e;color:var(--gold);background:#caa05712}.class-stage{min-height:475px;position:relative;display:flex;align-items:center;overflow:hidden}.class-copy{z-index:2;max-width:400px;margin:40px 0 40px 7%}.class-copy h3{font:65px Marcellus,serif;margin:10px 0 18px}.class-copy>p:not(.eyebrow){font-size:14px;line-height:1.9}.text-link{display:inline-block;margin-top:25px}.class-index{display:block;margin-top:48px;font-size:11px;letter-spacing:3px;color:#86728f}.class-stage>img{position:absolute;width:490px;height:510px;object-fit:contain;right:0;bottom:-10px;z-index:1;filter:drop-shadow(0 0 40px #a47ed626)}.class-circle{position:absolute;right:60px;top:65px;width:340px;height:340px;border:1px solid #c39a5730;border-radius:50%;box-shadow:0 0 0 22px #d8b16e04,0 0 0 23px #c39a5717}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.steps article{padding:26px 30px 25px;border-left:1px solid #bd985649;background:linear-gradient(90deg,#cda15106,transparent)}.step-number{font:36px Marcellus,serif;color:var(--gold);opacity:.8}.steps h3{font-size:18px;margin:15px 0 10px}.steps p{font-size:13px;min-height:86px}.steps a{display:block;margin-top:16px}.client-banner{display:flex;align-items:center;gap:26px;margin-top:45px;padding:32px;border:1px solid #a283ce33;border-radius:14px;background:linear-gradient(100deg,#211833,#191528)}.client-icon{height:68px;min-width:68px;border:1px solid #c9a55c66;border-radius:14px;display:grid;place-items:center;font:28px Marcellus,serif;color:var(--gold);background:#c9a55c0a}.client-banner h3{font-size:21px;margin:4px 0 7px}.client-banner p:not(.eyebrow){font-size:12px}.client-banner .pill{margin-left:auto;white-space:nowrap}.news-section{background:#171225;padding:75px 0}.align-left{text-align:left}.align-left>p:last-child{margin:0}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.news-grid article{padding:30px;background:#211a32;border:1px solid #ffffff0f;border-radius:12px;display:flex;flex-direction:column}.news-category{font-size:9px;letter-spacing:1.4px;color:#b99adc;font-weight:800}.news-category.pending{color:var(--gold)}.news-grid h3{font-size:21px;margin:18px 0 12px}.news-grid p{font-size:13px;margin-bottom:25px}.news-grid a{margin-top:auto}.portal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.portal-grid>a{display:flex;align-items:center;gap:18px;border:1px solid var(--line);border-radius:12px;padding:25px 23px;background:#1b152a;transition:border-color .2s,transform .2s}.portal-grid>a:hover{border-color:#c99a55;transform:translateY(-3px)}.portal-icon{color:var(--gold);font-size:32px}.portal-grid h3{font-size:15px}.portal-grid p{font-size:11px;margin-top:5px}.portal-grid>a>span:last-child{margin-left:auto;color:#b59bc8}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;padding:20px 0 90px}.faq h2{font-size:35px;margin-top:15px}.questions details{border-bottom:1px solid var(--line);padding:18px 0}.questions summary{list-style:none;font-size:14px;font-weight:700;cursor:pointer;padding-right:25px;position:relative}.questions summary:after{content:'+';position:absolute;right:2px;color:var(--gold);font-size:20px}.questions details[open] summary:after{content:'−'}.questions details p{font-size:13px;padding-top:13px}.closing{padding:75px 20px;text-align:center;background:linear-gradient(#100d2090,#100d20ed),url('/assets/hero-mir4.webp') center 70%/cover;border-block:1px solid var(--line)}.closing h2{font-size:44px;margin:16px 0 27px}footer{display:grid;grid-template-columns:1.7fr 1fr 1fr 1fr;padding-top:50px;gap:20px;font-size:12px}footer img{object-fit:contain;height:90px;object-position:left}footer h3{font-size:12px;color:#ece2f3;margin:20px 0 15px}footer a,footer span{display:block;color:var(--muted);font-size:11px;margin:8px 0}footer a:hover{color:var(--gold)}footer .legal{grid-column:1/-1;border-top:1px solid var(--line);padding:24px 0;margin-top:20px;font-size:10px;color:#8e829e}.desktop{display:block}@media(min-width:1600px){.hero-bg{background-position:center 35%}.hero-warrior{left:calc(50% - 900px);width:620px}.hero{min-height:880px}}@media(max-width:1050px){.header{gap:18px}.header nav{gap:15px}.test-tag{display:none}.hero-warrior{left:-220px;opacity:.6}.class-copy{margin-left:0;max-width:43%}.class-stage>img{width:48%}.client-banner .pill{display:none}.portal-grid>a{padding:18px 15px;gap:10px}}@media(max-width:780px){.wrap{width:calc(100% - 36px)}.header{height:68px;padding:0 18px;gap:12px}.brand{width:85px}.brand img{height:60px}.header-actions{margin-left:auto}.header-actions .small{display:none}.menu-toggle{display:flex;gap:10px;background:none;border:1px solid #fff2;border-radius:6px;font-size:12px;padding:6px 9px;order:3}.header nav{display:none;position:absolute;left:0;right:0;top:68px;padding:20px;background:#171124;border-bottom:1px solid var(--line)}.header nav.open{display:flex;flex-direction:column;gap:18px}.hero{min-height:760px;padding-top:115px}.hero-bg{background-position:67% center;opacity:.6}.hero-warrior{display:none}.hero-logo{width:280px;margin:30px auto 15px}h1{font-size:43px}.badge{font-size:8px;padding:9px 12px}.kicker{font-size:8px;letter-spacing:2px}.hero-description{font-size:13px;max-width:330px;margin:auto}.desktop{display:none}.actions{gap:10px;flex-wrap:wrap}.actions .button{padding:14px 20px;font-size:13px}.facts{grid-template-columns:repeat(2,1fr);gap:25px;padding:25px 10px}.facts>div:nth-child(2){border:0}.facts strong{font-size:12px}.facts span{font-size:8px}.section{padding-block:60px}h2{font-size:32px}.section-heading>p:last-child{font-size:13px}.world-grid,.steps,.news-grid,.portal-grid{grid-template-columns:1fr}.world-card{min-height:370px}.world-copy{padding:28px}.world-copy h3{font-size:28px}.class-stage{min-height:650px;align-items:flex-start}.class-copy{max-width:100%;margin:35px 10px 0}.class-copy h3{font-size:48px}.class-copy>p:not(.eyebrow){max-width:350px;font-size:13px}.class-index{margin-top:20px}.class-stage>img{width:85%;height:360px;bottom:-15px;right:-20px}.class-circle{width:260px;height:260px;top:auto;bottom:30px;right:15px}.class-tabs{gap:3px}.class-tabs button{padding:9px 11px;font-size:11px}.steps{gap:12px}.steps article{padding:20px 25px}.steps p{min-height:0}.client-banner{padding:24px 20px;gap:15px}.client-banner h3{font-size:17px}.client-icon{min-width:52px;height:52px;font-size:23px}.client-banner .eyebrow{font-size:8px;letter-spacing:1px}.news-section{padding:55px 0}.faq{grid-template-columns:1fr;gap:25px;padding:0 0 60px}.faq h2{font-size:30px}.closing h2{font-size:35px}footer{grid-template-columns:1fr 1fr}footer>div:first-child{grid-column:1/-1}footer>div:last-of-type{grid-column:1/-1}.hero-note{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Registration overlay: scoped styles preserve the account contract. */
body.registration-open{overflow:hidden}.registration-modal{padding:0;border:1px solid #ffffff26;border-radius:22px;background:#171226;color:#f5f0ff;width:min(1040px,calc(100% - 40px));max-width:1040px;max-height:90dvh;overflow:auto;box-shadow:0 35px 140px #000b}.registration-modal::backdrop{background:#080611cc;backdrop-filter:blur(9px)}.registration-modal:not([open]){display:none}.registration-layout{display:grid;grid-template-columns:36% 64%}.registration-close{position:absolute;right:16px;top:12px;z-index:2;border:1px solid #ffffff30;border-radius:50%;width:36px;height:36px;background:#171226;color:#efe5ff;font-size:26px;line-height:1;cursor:pointer}.registration-visual{padding:34px 28px;position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(180deg,#17122640,#171226e8),url('/assets/hero-mir4.webp') 65% center/cover;min-height:690px}.registration-visual:after{content:'';position:absolute;inset:32% -25% 0;z-index:-1;background:url('/assets/taoista.webp') center bottom/contain no-repeat;opacity:.65}.registration-visual img{display:block;max-width:100%;height:auto;margin:0 auto 30px}.registration-visual h2{font:400 38px/1.12 Georgia,serif;color:#f1d69e;letter-spacing:-.03em}.registration-visual>p:not(.eyebrow){font-size:13px;line-height:1.8;color:#ddd1ec}.registration-visual>span{position:absolute;bottom:28px;font-size:10px;letter-spacing:.25em;color:#d1b981}.registration-content{padding:42px 40px 30px;min-width:0}.registration-content>h2{font:400 36px/1.2 Georgia,serif;color:#f5dfb0;margin:8px 0 12px}.registration-intro{color:#bdb2cf;font-size:13px;line-height:1.7}.registration-content section{padding:20px 0;border-top:1px solid #ffffff1c;margin-top:18px}.registration-content section h2{font-size:13px;font-family:inherit;color:#eec879;margin:0 0 12px;letter-spacing:.05em}.registration-content #discord-state,.registration-content #result{font-size:12px;line-height:1.6;color:#c5bad6;overflow-wrap:anywhere}.registration-content form{display:grid;gap:14px}.registration-content label{display:block;font-size:12px;font-weight:500;color:#d5cce0}.registration-content input{display:block;width:100%;min-width:0;min-height:42px;margin-top:7px;padding:10px 12px;border:1px solid #ffffff29;border-radius:8px;background:#100d20;color:#f5f0ff;font:inherit}.registration-content small{display:block;font-size:10px;color:#a99dbb;margin-top:5px}.registration-content .columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.registration-content .button,.registration-content button{padding:11px 16px;border-radius:8px;border:1px solid #9868ce;background:linear-gradient(120deg,#a272de,#7951ad);color:white;font-family:inherit;font-size:12px;font-weight:600;cursor:pointer;text-decoration:none;display:inline-flex;justify-content:center}.registration-content #submit{background:linear-gradient(120deg,#f5d897,#d8ad5e);border-color:#edc77b;color:#241b18;min-height:46px;font-weight:700}.registration-content button:disabled{opacity:.45;cursor:not-allowed}.registration-content .secondary{background:#2f2242;color:#eee3ff}.registration-content .honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.registration-content [hidden]{display:none!important}.registration-content #result[data-error=true]{color:#ffb0b0}.registration-help{font-size:12px;color:#beb2ce;line-height:1.6}.registration-help a{color:#eec879}.registration-access{font-size:10px;line-height:1.7;color:#a89bbd}.registration-modal :focus-visible{outline:2px solid #eec879;outline-offset:3px}.registration-content #registration-title:focus{outline:none}
@media(max-width:700px){.registration-modal{width:calc(100% - 20px);max-height:94dvh;border-radius:16px}.registration-layout{display:block}.registration-visual{display:none}.registration-content{padding:40px 23px 24px}.registration-content>h2{font-size:32px}.registration-content .columns{grid-template-columns:1fr;gap:14px}.registration-content section{padding:16px 0;margin-top:14px}.registration-close{right:12px;top:10px}}.registration-modal{color-scheme:dark;scrollbar-color:#75558f #171226;scrollbar-width:thin}

body.player-login-open{overflow:hidden}.player-login-modal{color-scheme:dark;padding:0;border:1px solid #ffffff26;border-radius:20px;background:#100d20;color:#f5f0ff;width:min(650px,calc(100% - 24px));max-height:94dvh;overflow:auto;box-shadow:0 35px 140px #000b}.player-login-modal:not([open]){display:none}.player-login-modal::backdrop{background:#080611cc;backdrop-filter:blur(9px)}.player-modal-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:24px 28px 12px}.player-modal-heading h2{font:400 30px/1.2 Georgia,serif;color:#f5dfb0;margin:0}.player-modal-heading .eyebrow{font-size:9px}.player-modal-close{flex:none;width:36px;height:36px;border:1px solid #ffffff30;border-radius:50%;background:#20172f;color:#f5f0ff;font-size:26px;cursor:pointer}#player-login-frame{display:block;width:100%;height:min(600px,70dvh);border:0;background:#100d20}.player-modal-help{padding:0 28px 20px;font-size:11px;color:#bdb2cf}.player-modal-help a{color:#eec879}@media(max-width:520px){.player-modal-heading{padding:22px 20px 10px}.player-modal-heading h2{font-size:26px}.player-modal-help{padding:0 20px 18px}#player-login-frame{height:65dvh}}