:root{--clr-bg:#0d0a10;--clr-bg-alt:#110e16;--clr-surface:#18141f;--clr-surface-2:#201a2a;--clr-border:#ffffff0f;--clr-text:#efe8f4;--clr-text-dim:#a89ab3;--clr-text-mute:#6a5c78;--clr-accent:#ff6b8a;--clr-accent-2:#ffa07a;--clr-glow:#ff6b8a4d;--clr-glow-warm:#ffa07a33;--ff-display:"Quicksand", sans-serif;--ff-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--max-width:1100px;--section-pad-y:clamp(3rem, 6vw, 6rem);--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--transition:.35s var(--ease-out-expo)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--ff-body);background:var(--clr-bg);color:var(--clr-text);line-height:1.7;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}.hero{justify-content:center;align-items:center;min-height:100dvh;display:flex;position:relative;overflow:hidden}.hero__bg{z-index:0;background-color:#0d0a10;background-image:url(/images/hero_bg.png);background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.hero__bg-overlay{background:linear-gradient(#0d0a1080 0%,#0d0a1066 30%,#0d0a1080 55%,#0d0a10bf 80%,#0d0a10 100%);position:absolute;inset:0}.hero__content{z-index:1;text-align:center;flex-direction:column;justify-content:flex-start;align-items:center;gap:1.5rem;min-height:100dvh;padding:6vh 2rem 2rem;display:flex;position:relative}.hero__logo-wrap{animation:heroFadeIn 1.2s var(--ease-out-expo) both;flex-direction:column;align-items:center;gap:1.2rem;display:flex}.hero__logo{width:clamp(340px,55vw,650px);height:auto;filter:drop-shadow(0 0 30px var(--clr-glow));transition:filter var(--transition)}.hero__logo:hover{filter:drop-shadow(0 0 50px var(--clr-glow)) drop-shadow(0 0 15px var(--clr-glow-warm))}.hero__tagline{font-family:var(--ff-display);color:#ffc8d6;letter-spacing:.04em;text-shadow:0 0 20px #ff6b8a66,0 2px 8px #0009;max-width:520px;font-size:clamp(.85rem,1.8vw,1.1rem);font-style:italic;font-weight:600;line-height:2}.hero__scroll-indicator{z-index:1;animation:heroFadeIn 1.2s .8s var(--ease-out-expo) both;flex-direction:column;align-items:center;gap:.5rem;display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.hero__scroll-indicator span{font-family:var(--ff-display);letter-spacing:.3em;color:var(--clr-text-mute);font-size:.65rem;font-weight:600}.hero__scroll-arrow{background:linear-gradient(180deg, var(--clr-text-mute), transparent);width:1px;height:28px;animation:2s ease-in-out infinite scrollPulse}.section{padding:var(--section-pad-y) 1.5rem}.section--alt{background:var(--clr-bg-alt)}.section__bar{text-align:center;margin-bottom:clamp(2rem,4vw,3.5rem)}.section__bar-img{width:100%;max-width:700px;height:auto;filter:drop-shadow(0 0 12px var(--clr-glow));margin:0 auto}.section__container{max-width:var(--max-width);margin:0 auto}.links__buttons{flex-direction:column;align-items:center;gap:1.5rem;margin-top:1rem;margin-bottom:4rem;display:flex}@media (width>=768px){.links__buttons{flex-flow:wrap;justify-content:center;gap:2rem}}.links__btn{transition:transform var(--transition), filter var(--transition);border-radius:12px;display:block;overflow:hidden}.links__btn:hover{filter:brightness(1.1)drop-shadow(0 8px 30px #ff6b8a66);transform:translateY(-6px)scale(1.05)}.links__btn:active{transform:translateY(-1px)scale(1.01)}.links__btn-img{width:auto;height:clamp(86px,13vw,130px)}.demo__video-wrap{border:1px solid var(--clr-border);border-radius:16px;margin-bottom:2.5rem;overflow:hidden;box-shadow:0 8px 40px #0006}.demo__video-ratio{height:0;padding-bottom:56.25%;position:relative}.demo__video-ratio iframe{width:100%;height:100%;position:absolute;inset:0}.demo__info{text-align:center}.demo__desc{color:var(--clr-text-dim);margin-bottom:1.5rem;font-size:clamp(.95rem,1.4vw,1.1rem);line-height:1.8}.demo__desc strong{color:var(--clr-accent)}.demo__features{flex-wrap:wrap;justify-content:center;gap:.75rem 1.5rem;margin-bottom:1.5rem;list-style:none;display:flex}.demo__features li{color:var(--clr-text-dim);background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:20px;padding:.4rem 1rem;font-size:.9rem}.demo__specs{color:var(--clr-text-mute);flex-wrap:wrap;justify-content:center;gap:.5rem 1.5rem;margin-bottom:2rem;font-size:.8rem;display:flex}.demo__specs strong{color:var(--clr-text-dim)}.demo__buttons{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.demo__btn{transition:transform var(--transition), filter var(--transition);border-radius:8px;display:block;overflow:hidden}.demo__btn img{width:auto;height:clamp(40px,5vw,52px)}.demo__btn:hover{filter:brightness(1.1);transform:translateY(-3px)scale(1.03)}.story__layout{grid-template-columns:1.1fr 1fr;align-items:center;gap:3rem;display:grid}.story__image-wrap{border:1px solid var(--clr-border);border-radius:16px;overflow:hidden;box-shadow:0 8px 40px #0000004d}.story__image{width:100%;transition:transform var(--transition)}.story__image-wrap:hover .story__image{transform:scale(1.03)}.story__text{flex-direction:column;gap:1rem;display:flex}.story__text p{color:var(--clr-text-dim);font-size:clamp(.9rem,1.3vw,1.05rem);line-height:1.9}.story__text strong{color:var(--clr-text)}.gameplay__hero-img{border:1px solid var(--clr-border);border-radius:16px;margin-bottom:3rem;overflow:hidden;box-shadow:0 8px 40px #0000004d}.gameplay__hero-img img{width:100%}.gameplay__grid{flex-direction:column;gap:2.5rem;margin-bottom:3rem;display:flex}.gameplay__card{background:var(--clr-surface);border:1px solid var(--clr-border);transition:border-color var(--transition), box-shadow var(--transition);border-radius:16px;grid-template-columns:1.2fr 1fr;align-items:center;gap:2rem;padding:1.5rem;display:grid}.gameplay__card:hover{border-color:#ff6b8a26;box-shadow:0 4px 24px #ff6b8a0f}.gameplay__card:nth-child(2n){grid-template-columns:1fr 1.2fr}.gameplay__card:nth-child(2n) .gameplay__card-media{order:2}.gameplay__card-media{border-radius:12px;overflow:hidden}.gameplay__card-media img{border-radius:12px;width:100%}.gameplay__card-text h3{font-family:var(--ff-display);background:linear-gradient(135deg, var(--clr-text) 30%, var(--clr-accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.75rem;font-size:clamp(1.1rem,2vw,1.4rem);font-weight:700}.gameplay__card-text p{color:var(--clr-text-dim);font-size:.95rem;line-height:1.7}.gameplay__weapons{grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:2.5rem;display:grid}.gameplay__weapon-pair{flex-direction:column;align-items:center;gap:1rem;display:flex}.gameplay__weapon-pose{max-width:200px;filter:drop-shadow(0 4px 16px var(--clr-glow))}.gameplay__weapon-action{border:1px solid var(--clr-border);border-radius:12px;width:100%}.gameplay__town{border:1px solid var(--clr-border);border-radius:16px;overflow:hidden}.gameplay__town img{width:100%}.chain__intro{text-align:center;max-width:700px;margin:0 auto 3rem}.chain__intro p{color:var(--clr-text-dim);margin-bottom:1rem;font-size:clamp(.9rem,1.3vw,1.05rem);line-height:1.8}.chain__intro strong{color:var(--clr-accent)}.chain__grid{flex-direction:column;align-items:center;gap:2.5rem;margin-bottom:4rem;display:flex}.chain__step{text-align:center;width:100%;max-width:600px}.chain__step img{border:1px solid var(--clr-border);width:100%;transition:border-color var(--transition);border-radius:12px;margin-bottom:.75rem}.chain__step:hover img{border-color:#ff6b8a33}.chain__label{font-family:var(--ff-display);color:var(--clr-text-dim);letter-spacing:.05em;font-size:.85rem;font-weight:600}.chain__results{text-align:center}.chain__results-title{font-family:var(--ff-display);color:var(--clr-text);margin-bottom:1.5rem;font-size:clamp(1rem,1.8vw,1.3rem);font-weight:700}.chain__results-grid{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.chain__results-grid img{border:1px solid var(--clr-border);border-radius:12px;width:100%}.worlds__intro{text-align:center;max-width:700px;margin:0 auto 3rem}.worlds__intro p{color:var(--clr-text-dim);font-size:clamp(.9rem,1.3vw,1.05rem);line-height:1.8}.worlds__intro strong{color:var(--clr-accent)}.worlds__gallery{grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:2.5rem;display:grid}.worlds__card{border:1px solid var(--clr-border);transition:border-color var(--transition), transform var(--transition);border-radius:12px;position:relative;overflow:hidden}.worlds__card:hover{border-color:#ff6b8a26;transform:translateY(-4px)}.worlds__card img{aspect-ratio:4/5;object-fit:cover;width:100%}.worlds__card--featured img{aspect-ratio:3/4}.worlds__card-label{font-family:var(--ff-display);color:#fff;text-align:center;background:linear-gradient(#0000,#000000bf);padding:1rem .75rem .75rem;font-size:.8rem;font-weight:600;position:absolute;bottom:0;left:0;right:0}.worlds__bosses{grid-template-columns:1fr 1fr;gap:1.5rem;margin-bottom:2.5rem;display:grid}.worlds__boss{border:1px solid var(--clr-border);border-radius:12px;position:relative;overflow:hidden}.worlds__boss img{width:100%}.worlds__boss .worlds__card-label{position:absolute}.worlds__concepts{grid-template-columns:1fr 1fr;gap:2rem;display:grid}.worlds__concept{border:1px solid var(--clr-border);background:var(--clr-surface);transition:border-color var(--transition);border-radius:16px;overflow:hidden}.worlds__concept:hover{border-color:#ff6b8a1f}.worlds__concept img{width:100%}.worlds__concept-text{padding:1.25rem 1.5rem}.worlds__concept-text h3{font-family:var(--ff-display);background:linear-gradient(135deg, var(--clr-text) 30%, var(--clr-accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem;font-size:1.1rem;font-weight:700}.worlds__concept-text p{color:var(--clr-text-dim);font-size:.9rem;line-height:1.6}.footer{padding:var(--section-pad-y) 1.5rem 2rem;text-align:center;border-top:1px solid var(--clr-border)}.footer__cta{flex-direction:column;align-items:center;gap:1.5rem;margin-bottom:2rem;display:flex}.footer__title{font-family:var(--ff-display);background:linear-gradient(135deg, var(--clr-text) 30%, var(--clr-accent));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;font-size:clamp(1.15rem,2.5vw,1.75rem);font-weight:700}.footer__btn-group{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.footer__btn{transition:transform var(--transition), filter var(--transition);border-radius:8px;display:block;overflow:hidden}.footer__btn img{width:auto;height:clamp(36px,4vw,48px)}.footer__btn:hover{filter:brightness(1.1);transform:translateY(-3px)scale(1.03)}.footer__copyright{color:var(--clr-text-mute);letter-spacing:.05em;font-size:.75rem}[data-reveal]{opacity:0;transition:opacity .7s var(--ease-out-expo), transform .7s var(--ease-out-expo);transform:translateY(36px)}[data-reveal].is-visible{opacity:1;transform:translateY(0)}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scrollPulse{0%,to{opacity:.3;transform:scaleY(1)}50%{opacity:.7;transform:scaleY(1.3)}}.particle{background:var(--clr-accent);pointer-events:none;opacity:0;z-index:0;width:2px;height:2px;box-shadow:0 0 6px var(--clr-accent);border-radius:50%;animation:linear infinite floatUp;position:fixed}@keyframes floatUp{0%{opacity:0;transform:translateY(100vh)}10%{opacity:.8}90%{opacity:.8}to{opacity:0;transform:translateY(-100px)}}.lightbox{z-index:9999;opacity:0;visibility:hidden;-webkit-backdrop-filter:blur(5px);background:#000000eb;justify-content:center;align-items:center;transition:opacity .35s,visibility .35s;display:flex;position:fixed;inset:0}.lightbox.is-open{opacity:1;visibility:visible}.lightbox__img{max-width:90%;max-height:90vh;transition:transform .4s var(--ease-out-expo);object-fit:contain;border-radius:8px;transform:scale(.95);box-shadow:0 0 40px #000c}.lightbox.is-open .lightbox__img{transform:scale(1)}.lightbox__close{color:#fff9;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--transition), transform var(--transition);font-size:3.5rem;font-weight:300;line-height:1;position:absolute;top:1.5rem;right:2.5rem}.lightbox__close:hover{color:var(--clr-accent);transform:scale(1.1)}@media (width<=768px){.story__layout,.gameplay__card,.gameplay__card:nth-child(2n){grid-template-columns:1fr}.gameplay__card:nth-child(2n) .gameplay__card-media{order:0}.gameplay__weapons,.chain__grid,.chain__results-grid,.worlds__gallery,.worlds__bosses,.worlds__concepts{grid-template-columns:1fr}.hero__buttons{flex-direction:column;align-items:center}}
