.mw{--ink:#1f1812;--cream:#fff8ee;--gold:#e8b86d;--gold-bright:#ffe6b0;--teal:#6eb8b2;--display:"Fredoka", "Nunito", system-ui, sans-serif;--body:"Nunito", system-ui, sans-serif;--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--p:0;min-height:100vh;color:var(--cream);font-family:var(--body);-webkit-font-smoothing:antialiased;letter-spacing:0;background:#0a0806;position:relative;overflow-x:clip}.mw h1,.mw h2,.mw h3{letter-spacing:0;font-weight:700}.mw.is-locked{height:100vh;overflow:hidden}.mw a{color:inherit;text-decoration:none}.mw button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}.mw button:focus-visible,.mw a:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.mw .intro{z-index:60;background:#050403;place-items:center;transition:opacity .7s,visibility .7s;display:grid;position:fixed;inset:0}.mw .intro.is-done{opacity:0;visibility:hidden;pointer-events:none}.mw .intro-mark{font-family:var(--display);letter-spacing:.08em;color:var(--gold-bright);text-shadow:0 0 50px #e8b86db3,0 0 140px #6eb8b259;font-size:clamp(3.8rem,16vw,7.5rem);font-weight:700;animation:.85s cubic-bezier(.22,1,.36,1) both mw-intro-pop}.mw .intro-ring{aspect-ratio:1;border:1px solid #e8b86d66;border-radius:50%;width:min(340px,72vw);animation:1s both mw-intro-ring;position:absolute}@keyframes mw-intro-pop{0%{opacity:0;filter:blur(10px);transform:scale(.84)}to{opacity:1;filter:none;transform:scale(1)}}@keyframes mw-intro-ring{0%{opacity:0;transform:scale(.55)}40%{opacity:1}to{opacity:0;transform:scale(1.85)}}.mw .threshold{z-index:50;padding:calc(24px + var(--safe-t)) 24px calc(28px + var(--safe-b));opacity:0;pointer-events:none;background:radial-gradient(70% 55% at 50% 42%,#3a2a1c 0%,#100c09 58%,#050403 100%);flex-direction:column;justify-content:center;align-items:center;gap:clamp(1.1rem,3.5vh,2rem);transition:opacity .55s,visibility .55s;display:flex;position:fixed;inset:0;overflow:hidden}.mw .threshold.is-show{opacity:1;pointer-events:auto}.mw .threshold.is-open{opacity:0;visibility:hidden;pointer-events:none;transition:opacity 1.1s,visibility 1.1s}.mw .door-aura{pointer-events:none;z-index:0;background:radial-gradient(circle,#e8b86d47 0%,#6eb8b214 42%,#0000 68%);border-radius:50%;width:min(520px,88vw);height:min(520px,88vw);animation:4.5s ease-in-out infinite mw-aura;position:absolute}@keyframes mw-aura{0%,to{opacity:.65;transform:scale(.92)}50%{opacity:1;transform:scale(1.08)}}.mw .door-sparkles{pointer-events:none;z-index:1;position:absolute;inset:0;overflow:hidden}.mw .door-spark{opacity:0;width:4px;height:4px;animation:mw-spark var(--sd,3.2s) ease-in-out infinite;animation-delay:var(--sdelay,0s);background:#ffe6b0;border-radius:50%;position:absolute;box-shadow:0 0 10px #ffe6b0e6}@keyframes mw-spark{0%,to{opacity:0;transform:scale(.4)translateY(8px)}40%{opacity:1;transform:scale(1.2)translateY(-6px)}70%{opacity:.35;transform:scale(.8)translateY(-18px)}}.mw .door-wrap{z-index:2;place-items:center;animation:5s ease-in-out infinite mw-door-float;display:grid;position:relative}@keyframes mw-door-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.mw .door-ring{pointer-events:none;border:1px solid #ffe6b073;border-radius:160px 160px 24px 24px;width:calc(100% + 28px);height:calc(100% + 28px);animation:2.8s ease-in-out infinite mw-ring-pulse;position:absolute;box-shadow:0 0 28px #e8b86d40}@keyframes mw-ring-pulse{0%,to{opacity:.35;transform:scale(.98)}50%{opacity:.9;transform:scale(1.03)}}.mw .door-frame{background:linear-gradient(#5a4330,#2a1c12);border-radius:140px 140px 18px 18px;width:min(220px,48vw);height:min(320px,42vh);position:relative;overflow:hidden;box-shadow:0 0 0 5px #e8b86d59,0 0 60px #e8b86d47,inset 0 0 40px #00000073}.mw .door-leaf{transform-origin:100%;background:radial-gradient(circle at 50% 28%,#ffe6b066,#0000 42%),linear-gradient(#c4843a,#6b4424 55%,#3d2816);border-radius:130px 130px 12px 12px;transition:transform 1.15s cubic-bezier(.65,0,.35,1);position:absolute;inset:10px}.mw .door-leaf:before{content:"";pointer-events:none;background:linear-gradient(115deg,#0000 0%,#fff8ee2e 42%,#0000 58%);border-radius:999px;animation:3.4s ease-in-out infinite mw-shimmer;position:absolute;inset:12% 18%}@keyframes mw-shimmer{0%,to{opacity:.15;transform:translate(-12%)}50%{opacity:.55;transform:translate(12%)}}.mw .threshold.is-opening .door-leaf{transform:perspective(800px)rotateY(-78deg)}.mw .door-knob{background:var(--gold-bright);border-radius:50%;width:16px;height:16px;animation:2.2s ease-in-out infinite mw-knob;position:absolute;top:48%;left:18%;box-shadow:0 0 16px #e8b86dcc}@keyframes mw-knob{0%,to{box-shadow:0 0 10px #e8b86d8c}50%{box-shadow:0 0 22px #ffe6b0}}.mw .threshold-copy{z-index:2;text-align:center;width:min(420px,90vw);animation:.9s cubic-bezier(.22,1,.36,1) .15s both mw-copy-in;position:relative}@keyframes mw-copy-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.mw .threshold-brand{font-family:var(--display);letter-spacing:.04em;color:var(--gold-bright);text-shadow:0 0 40px #e8b86d8c;margin-bottom:.45rem;font-size:clamp(2.2rem,8vw,3.2rem);font-weight:700}.mw .threshold-line{color:#fff8eed1;margin-bottom:1.35rem;font-size:clamp(.95rem,2.4vw,1.08rem);font-weight:700;line-height:1.45}.mw .threshold-btn{font-family:var(--display);color:var(--ink);background:linear-gradient(135deg, #fff8ee, var(--gold));border-radius:999px;padding:.95rem 1.85rem;font-size:1.1rem;font-weight:700;transition:transform .2s;animation:2.6s ease-in-out infinite mw-cta-glow;box-shadow:0 14px 40px #e8b86d66}@keyframes mw-cta-glow{0%,to{box-shadow:0 14px 36px #e8b86d59}50%{box-shadow:0 16px 48px #ffe6b08c}}.mw .threshold-btn:hover{transform:translateY(-2px)scale(1.03)}@media (height<=700px){.mw .door-frame{width:min(180px,40vw);height:min(250px,34vh)}.mw .threshold{gap:.9rem}}.mw .journey{pointer-events:none;height:560vh;position:relative}.mw .stage{z-index:1;opacity:0;background:#0a0806;transition:opacity .8s;position:fixed;inset:0;overflow:hidden}.mw .stage.is-live{opacity:1}.mw .places{width:400%;transform:translate3d(calc(var(--p) * -75%), 0, 0);will-change:transform;direction:ltr;display:flex;position:absolute;inset:-10% auto -10% 0}.mw .place{flex:0 0 25%;height:100%;position:relative}.mw .place:after{content:"";z-index:1;pointer-events:none;background:radial-gradient(75% 70% at 50% 45%,#0000 28%,#0806048c 100%),linear-gradient(#08060459,#0000 20% 70%,#080604a6);position:absolute;inset:0}.mw .place-art{z-index:0;background-position:50% 38%;background-size:cover;position:absolute;inset:0;transform:scale(1.02)}.mw .place-door{background:radial-gradient(at 50% 42%,#2c2118 0%,#0a0806 70%)}.mw .dust{z-index:3;pointer-events:none;position:absolute;inset:0}.mw .mote{opacity:0;width:3px;height:3px;animation:mw-mote var(--dur,13s) linear infinite;animation-delay:var(--delay,0s);background:#ffe6b0e6;border-radius:50%;position:absolute;box-shadow:0 0 12px #e8b86da6}@keyframes mw-mote{0%{opacity:0;transform:translateY(20vh)scale(.5)}15%{opacity:.85}to{opacity:0;transform:translateY(-30vh) translateX(var(--dx,40px)) scale(1.2)}}.mw .hero{z-index:6;left:50%;bottom:max(1.5%, var(--safe-b));opacity:0;pointer-events:none;filter:drop-shadow(0 22px 40px #00000080);flex-direction:column;align-items:center;gap:.4rem;width:min(400px,62vw);transition:opacity .75s cubic-bezier(.22,1,.36,1),transform .75s cubic-bezier(.22,1,.36,1);display:flex;position:absolute;transform:translate(-50%,36px)}.mw .hero.is-in{opacity:1;transform:translate(-50%)}.mw .maya{z-index:6;width:100%;position:relative}.mw .maya img{width:100%;height:auto;animation:1.7s ease-in-out infinite mw-walk;display:block}.mw .maya.is-idle img{animation:5s ease-in-out infinite mw-breathe}.mw .maya.is-cheer img{animation:.9s cubic-bezier(.3,1.4,.5,1) infinite mw-hop}@keyframes mw-walk{0%,to{transform:translateY(0)}50%{transform:translateY(-11px)}}@keyframes mw-breathe{0%,to{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes mw-hop{0%,to{transform:translateY(0)}40%{transform:translateY(-18px)}}.mw .speech{z-index:7;max-width:min(260px,85%);color:var(--ink);font-family:var(--display);letter-spacing:0;text-align:center;opacity:0;background:#fff8eef7;border-radius:1.25rem;padding:.8rem 1.05rem;font-size:clamp(.95rem,2.4vw,1.12rem);font-weight:700;line-height:1.3;transition:opacity .45s,transform .45s;position:relative;transform:translateY(8px)scale(.97);box-shadow:0 14px 32px #00000052}.mw .speech.is-in{opacity:1;transform:none}.mw .speech:after{content:"";border:8px solid #0000;border-top-color:#fff8eef7;position:absolute;top:100%;left:50%;transform:translate(-50%)}.mw .chapter{z-index:8;left:50%;top:max(8%, calc(10px + var(--safe-t) + 40px));text-align:center;opacity:0;pointer-events:none;text-shadow:0 4px 28px #000000b3;width:min(440px,88vw);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1);position:absolute;transform:translate(-50%,20px)}.mw .chapter.is-in{opacity:1;pointer-events:auto;transform:translate(-50%)}.mw .chapter .num{font-family:var(--display);letter-spacing:.08em;color:var(--gold-bright);margin-bottom:.4rem;font-size:.78rem;font-weight:600;display:inline-block}.mw .chapter h1,.mw .chapter h2{font-family:var(--display);letter-spacing:0;margin-bottom:.5rem;font-size:clamp(1.7rem,5.4vw,2.75rem);font-weight:700;line-height:1.18}.mw .chapter p{letter-spacing:0;color:#fff8eef0;max-width:30ch;margin-inline:auto;font-size:clamp(.98rem,2.3vw,1.14rem);font-weight:700;line-height:1.45}.mw .cta{font-family:var(--display);color:var(--ink);background:linear-gradient(135deg, #fff8ee, var(--gold-bright) 50%, var(--gold));border-radius:999px;margin-top:1rem;padding:.9rem 1.65rem;font-size:1.08rem;font-weight:700;transition:transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 16px 44px #e8b86d7a}.mw .cta:hover{transform:translateY(-3px)scale(1.03);box-shadow:0 20px 52px #e8b86d99}.mw .hud{z-index:30;top:calc(12px + var(--safe-t));opacity:0;pointer-events:none;justify-content:space-between;align-items:center;transition:opacity .45s;display:flex;position:fixed;inset-inline:16px}.mw .hud.is-on{opacity:1;pointer-events:auto}.mw .hud-brand{font-family:var(--display);color:var(--gold-bright);text-shadow:0 2px 16px #0009;font-size:1.2rem;font-weight:700}.mw .hud-cta{color:var(--ink);background:linear-gradient(135deg, #fff8ee, var(--gold));border-radius:999px;padding:.55rem 1.05rem;font-size:.88rem;font-weight:800;box-shadow:0 8px 22px #0000004d}.mw .progress{z-index:31;background:linear-gradient(90deg, var(--teal), var(--gold-bright));transform-origin:100%;height:3px;transform:scaleX(calc(1 - var(--p)));pointer-events:none;opacity:0;top:0;transition:opacity .4s;position:fixed;inset-inline:0}.mw .progress.is-on{opacity:1}.mw .path-dots{z-index:29;bottom:calc(20px + var(--safe-b));opacity:0;pointer-events:none;gap:9px;transition:opacity .4s;display:flex;position:fixed;left:50%;transform:translate(-50%)}.mw .path-dots.is-on{opacity:1}.mw .path-dots span{background:#fff8ee47;border-radius:50%;width:8px;height:8px;transition:background .3s,transform .3s}.mw .path-dots span.is-on{background:var(--gold-bright);transform:scale(1.3);box-shadow:0 0 12px #e8b86d99}.mw .legal-bar{z-index:30;bottom:calc(10px + var(--safe-b));letter-spacing:.04em;color:#fff8eec7;text-shadow:0 2px 12px #000000a6;opacity:0;pointer-events:none;justify-content:center;gap:1.15rem;font-size:.78rem;font-weight:800;transition:opacity .45s;display:flex;position:fixed;inset-inline:16px}.mw .legal-bar.is-on{opacity:1;pointer-events:auto}.mw .legal-bar a{text-underline-offset:3px;text-decoration:underline}.mw .hint{z-index:28;bottom:calc(42px + var(--safe-b));letter-spacing:.08em;color:#fff8ee8c;text-shadow:0 2px 12px #0009;opacity:0;font-size:.72rem;font-weight:800;transition:opacity .4s;position:fixed;left:50%;transform:translate(-50%)}.mw .hint.is-on{opacity:1}.mw .finale-glow{z-index:2;opacity:0;pointer-events:none;background:radial-gradient(circle,#e8b86d73,#0000 68%);border-radius:50%;width:min(420px,80vw);height:min(420px,80vw);transition:opacity .6s;position:absolute;top:42%;left:50%;transform:translate(-50%,-50%)}.mw .finale-glow.is-on{opacity:1;animation:3.5s ease-in-out infinite mw-pulse-glow}@keyframes mw-pulse-glow{0%,to{opacity:.7;transform:translate(-50%,-50%)scale(1)}50%{opacity:1;transform:translate(-50%,-50%)scale(1.12)}}@media (height<=740px){.mw .hero{width:min(320px,54vw)}.mw .chapter h1,.mw .chapter h2{font-size:clamp(1.45rem,4.8vw,2.1rem)}}@media (prefers-reduced-motion:reduce){.mw .places{transform:none!important}.mw .maya img,.mw .finale-glow,.mw .door-aura,.mw .door-wrap,.mw .door-ring,.mw .door-leaf:before,.mw .door-knob,.mw .door-spark,.mw .threshold-btn,.mw .threshold-copy{animation:none!important}.mw .intro{display:none}}
