:root{color-scheme:dark;--bg:#171323;--surface:#211b31;--text:#f7f2ff;--muted:#bdb1cc;--accent:#d2b4ff;--line:#ffffff20;--width:1240px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--text);font-family:"Yu Gothic",Meiryo,system-ui,sans-serif;font-size:16px;line-height:1.9}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;height:auto}p{color:var(--muted);margin:0 0 1.3rem}h1,h2,h3{font-weight:700;line-height:1.5;margin:0;letter-spacing:.02em}h1{font-size:clamp(2.5rem,4.5vw,4.3rem)}h2{font-size:clamp(1.75rem,3vw,2.7rem)}h3{font-size:1.2rem}.wrap{width:min(var(--width),calc(100% - 96px));margin-inline:auto}.section{padding-block:100px}.eyebrow{color:var(--accent);font-size:.875rem;font-weight:700;letter-spacing:.16em;margin-bottom:22px;line-height:1.7}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.skip{position:absolute;top:-100px;left:20px;background:var(--accent);color:var(--bg);padding:12px;z-index:100}.skip:focus{top:10px}:focus-visible{outline:3px solid var(--accent);outline-offset:5px}header{position:sticky;top:0;background:#171323f2;backdrop-filter:blur(15px);z-index:20;border-bottom:1px solid var(--line)}.nav-wrap{width:min(1440px,calc(100% - 80px));margin:auto;min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;gap:15px;align-items:center;font-family:Georgia,serif;font-size:1.5rem;line-height:1.2;white-space:nowrap}.brand small{display:block;font-family:system-ui,sans-serif;font-size:.65rem;letter-spacing:.17em;margin-top:9px;color:var(--muted)}.brand-mark{font-style:italic;font-size:3rem;color:var(--accent);position:relative;width:35px}.brand-mark span{position:absolute;font-size:1.1rem;top:0;right:0}nav{display:flex;gap:30px;font-size:.875rem}nav a{padding:12px 0;color:var(--muted)}nav a:hover,nav a[aria-current]{color:var(--accent)}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1fr 1.02fr;gap:60px;align-items:center;min-height:670px;padding-block:65px}.hero h1{letter-spacing:.045em;line-height:1.65;white-space:nowrap}.hero h1 span{color:var(--accent)}.hero .eyebrow{font-size:.75rem}.lead{font-size:1rem;line-height:2.1;margin:25px 0 30px}.actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;padding:14px 23px;border:1px solid #796389;border-radius:4px;line-height:1.6;font-size:.875rem;min-height:50px;transition:background .2s,transform .2s}.button.primary{background:var(--accent);color:#231531;border-color:var(--accent);font-weight:700}.button:hover{transform:translateY(-2px);background:#3a2a4e}.button.primary:hover{background:#e3d0ff}.hero-note{font-size:.75rem;letter-spacing:.06em;margin-top:30px;color:#9a89ae}.hero-art{position:relative;padding:20px 0 0 20px}.hero-art:before{content:"";position:absolute;inset:0 20px 20px 0;border:1px solid #d2b4ff55;border-radius:4px;z-index:-1}.hero-art img{aspect-ratio:1/1;object-fit:cover;object-position:center;border-radius:4px;box-shadow:0 30px 60px #09051077}.art-caption{position:absolute;bottom:0;left:20px;right:0;padding:65px 28px 25px;background:linear-gradient(transparent,#181020ed);line-height:1.5;border-radius:0 0 4px 4px}.art-caption>span{display:block;font-size:.75rem;letter-spacing:.18em;color:#e5d7ff}.art-caption strong{display:block;font-family:Georgia,serif;font-size:2.25rem;font-weight:400}.art-caption small{font-size:.875rem;color:#e4d9f4}.platform-strip{padding:22px 0;border-block:1px solid var(--line);display:flex;gap:42px;align-items:center}.platform-strip span:first-child{margin-right:auto;font-size:.875rem;color:var(--muted)}.platform-strip span:not(:first-child){font-family:Georgia,serif;font-size:1.4rem;color:#d9cde8}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.section-heading .eyebrow{margin-bottom:12px}.text-link{font-size:.875rem;display:inline-block;border-bottom:1px solid #ac8cca;padding-bottom:5px;color:var(--accent)}.text-link:hover{color:#fff}.game-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 26px}.game-card{background:var(--surface);border:1px solid var(--line);border-radius:6px;overflow:hidden}.game-card[hidden]{display:none}.card-picture{display:block;position:relative;overflow:hidden;background:#30253f}.card-picture img{aspect-ratio:16/10;object-fit:cover;transition:transform .4s}.card-picture:hover img{transform:scale(1.04)}.card-index{position:absolute;bottom:14px;right:14px;background:#171323cd;padding:2px 10px;font-size:.75rem;border:1px solid #ffffff44}.card-info{padding:24px}.tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.tag{font-size:.75rem;line-height:1.5;padding:4px 9px;border:1px solid #ffffff35;border-radius:3px;color:#ddd2eb}.tag.free{border-color:#b8d9db55;color:#b8d9db}.card-info h3{font-size:1.16rem}.subtitle{font-size:.875rem;margin:5px 0}.genre{font-size:.875rem;margin:12px 0 21px}.world-feature{background:#252035;border-block:1px solid var(--line);padding:80px 0}.world-feature-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.world-image img{aspect-ratio:4/3;object-fit:cover;border-radius:5px}.world-feature h2{margin-bottom:22px}.world-feature p{font-size:1rem}.world-feature .button{margin-top:10px}.about{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.about-name{font-family:Georgia,serif;font-size:1.4rem;margin-top:30px;color:var(--text)}.about-name span{font-family:system-ui;font-size:.75rem;color:var(--muted);margin-left:10px}.about-body>h3{margin-bottom:20px}.creator{display:flex;gap:25px;align-items:center;padding-top:25px;border-top:1px solid var(--line);margin-top:35px}.creator img{width:80px;height:80px;border-radius:50%;object-fit:cover}.creator p{font-size:.875rem;margin-top:10px}.activities{padding-top:0}.activity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.activity-grid article{border-top:1px solid #7e689c;padding-top:25px}.activity-num{font-size:.75rem;color:var(--accent);letter-spacing:.13em}.activity-grid h3{margin:18px 0 14px}.activity-grid p{font-size:.875rem}.archive{font-size:.75rem!important;margin-top:16px}.stream-note{padding:45px 50px;border:1px solid var(--line);background:#211b30;border-radius:6px}.stream-note h2{font-size:1.8rem;margin-bottom:18px}.stream-note p{margin:0}.contact{padding-block:90px;display:flex;justify-content:space-between;gap:35px;align-items:center}.contact h2{font-size:2rem;margin-bottom:15px}.contact p{margin:0}footer{border-top:1px solid var(--line);padding-block:40px;display:grid;grid-template-columns:1fr 1fr;gap:24px;font-size:.875rem;color:var(--muted)}.footer-brand{font-family:Georgia,serif;font-size:1.6rem;color:var(--text)}.footer-brand span{display:block;font-family:system-ui;font-size:.75rem;color:var(--muted);margin-top:10px}footer>div:nth-child(2){display:flex;gap:24px;justify-content:end;align-items:center}footer>a{text-align:right}footer small{font-size:.75rem}.page-heading{padding:90px 0 50px}.page-heading h1{line-height:1.5;margin-bottom:25px}.collection{padding-bottom:100px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0 38px}.filters button{border:1px solid var(--line);border-radius:30px;background:transparent;color:var(--muted);padding:10px 22px;cursor:pointer;font-size:.875rem}.filters button[aria-pressed=true]{background:var(--accent);color:#231531}.filters span{margin-left:12px}.detail-heading{padding:60px 0 40px}.detail-heading>.text-link{margin-bottom:32px}.detail-heading h1{font-size:clamp(2rem,4vw,3.4rem);overflow-wrap:anywhere}.detail-heading p{margin:15px 0 0}.detail-subtitle{font-family:Georgia,serif;font-size:1.6rem}.detail-hero img{max-height:660px;object-fit:contain;background:#211b31;border-radius:5px}.detail-body{display:grid;grid-template-columns:1.5fr 1fr;gap:100px;padding-top:75px}.detail-body h2{font-size:2rem;margin-bottom:30px}.detail-body aside{background:var(--surface);padding:30px;align-self:start;border:1px solid var(--line);border-radius:5px}.detail-body aside .button{display:flex;margin-bottom:12px}.detail-body dl{margin:30px 0;font-size:.875rem}.detail-body dt{color:var(--muted)}.detail-body dd{margin:3px 0 18px}.small{font-size:.875rem}.screenshots{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:32px}.screenshots img{aspect-ratio:16/10;object-fit:contain;background:var(--surface);border-radius:5px}.world-heading{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding:80px 0}.world-heading h1{margin-bottom:25px}.world-heading img{aspect-ratio:1;object-fit:cover;border-radius:6px}.lore{display:grid;grid-template-columns:1fr 1fr;gap:75px;border-block:1px solid var(--line);padding:55px 0}.lore h2{font-size:1.7rem;margin-bottom:20px}.characters{display:flex;flex-direction:column;gap:60px}.character{display:grid;grid-template-columns:1fr 1.2fr;gap:55px;background:var(--surface);border:1px solid var(--line);border-radius:6px;overflow:hidden}.character:nth-child(even){grid-template-columns:1.2fr 1fr}.character:nth-child(even) .character-image{order:2}.character-image{position:relative;background:#29213b}.character-image img{height:100%;max-height:560px;object-fit:contain}.character-image>span{position:absolute;left:24px;bottom:20px;color:#fff;font-family:Georgia;font-size:3rem;text-shadow:0 2px 5px #000}.character-copy{padding:42px 40px 42px 0;align-self:center}.character:nth-child(even) .character-copy{padding:42px 0 42px 40px}.character-copy h3{font-size:2.3rem}.character-copy .eyebrow{margin-bottom:8px}.character-tag{color:var(--accent);font-size:.875rem;margin-top:12px}.character-copy p{font-size:.95rem}details{margin-top:20px}summary{cursor:pointer;color:var(--accent);font-size:.875rem;padding:10px 0}details p{margin-top:18px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.gallery img{aspect-ratio:3/4;object-fit:cover;border-radius:5px}.detail-body+.section+.stream-note{margin-bottom:90px}
@media(min-width:1500px){.hero{min-height:740px}}@media(max-width:1100px){.wrap{width:calc(100% - 56px)}.nav-wrap{width:calc(100% - 48px)}nav{gap:18px}.brand{font-size:1.25rem}.hero{gap:32px;min-height:600px}.hero h1{font-size:3.1rem}.hero .eyebrow{font-size:.65rem}.hero-art img{aspect-ratio:4/5}.world-feature-inner,.about{gap:45px}.detail-body{gap:40px}.character{gap:32px}.character-copy{padding-right:25px}}
@media(max-width:800px){.nav-wrap{min-height:80px}.menu-toggle{display:block;border:1px solid var(--line);background:none;color:var(--accent);padding:8px 12px;font-size:.875rem}nav{display:none;position:absolute;top:80px;left:0;right:0;padding:20px 28px;background:#211b31;border-bottom:1px solid var(--line)}nav.open{display:flex;flex-direction:column;gap:10px}nav a{font-size:1rem}.hero{grid-template-columns:1fr;gap:40px;padding:45px 0 55px}.hero h1{font-size:clamp(2rem,7vw,3.5rem)}.hero .eyebrow{font-size:.75rem}.hero-art{max-width:600px;justify-self:center;width:100%}.hero-art img{aspect-ratio:4/3;object-position:50% 40%}.hero-note{margin-top:20px}.platform-strip{gap:24px;flex-wrap:wrap}.platform-strip span:first-child{width:100%}.section{padding-block:65px}.section-heading{align-items:start;flex-direction:column;gap:20px}.game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.world-feature-inner,.about,.world-heading,.lore,.detail-body{grid-template-columns:1fr;gap:35px}.world-feature{padding-block:55px}.world-image{max-width:600px}.about-body{padding-top:5px}.activity-grid{grid-template-columns:1fr;gap:35px}.activities{padding-top:0}.stream-note{padding:30px}.contact{flex-direction:column;align-items:start;padding-block:60px}.contact h2{font-size:1.6rem}footer{grid-template-columns:1fr;gap:20px}footer>div:nth-child(2){justify-content:start;flex-wrap:wrap}footer>a{text-align:left}.page-heading{padding-top:55px}.detail-body{padding-top:40px}.detail-heading{padding-top:35px}.world-heading{padding-block:50px}.world-heading img{aspect-ratio:4/3}.lore{padding-block:40px}.character,.character:nth-child(even){grid-template-columns:1fr;gap:0}.character:nth-child(even) .character-image{order:0}.character-image img{height:380px;max-height:none;object-fit:contain}.character-copy,.character:nth-child(even) .character-copy{padding:28px}.characters{gap:30px}.gallery{gap:15px}}
@media(max-width:500px){.wrap{width:calc(100% - 36px)}.nav-wrap{width:calc(100% - 32px)}.brand{gap:8px;font-size:1.18rem}.brand small{font-size:.55rem}.brand-mark{font-size:2.4rem;width:30px}.hero .eyebrow{font-size:.7rem;letter-spacing:.1em}.lead br{display:none}.actions{gap:10px}.actions .button{width:100%}.game-grid{grid-template-columns:1fr}.card-picture img{aspect-ratio:16/10}.section-heading h2{font-size:1.7rem}.hero-art{padding-left:12px}.art-caption{left:12px}.art-caption strong{font-size:1.8rem}.platform-strip span:not(:first-child){font-size:1.2rem}.creator{align-items:start;gap:18px}.creator img{width:62px;height:62px}.stream-note{padding:25px}.stream-note h2{font-size:1.5rem}.screenshots{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}.gallery img{aspect-ratio:4/3;object-fit:contain;background:var(--surface)}.filters button{padding:9px 17px}.character-image img{height:330px}.detail-heading h1{font-size:2rem}.world-heading h1,.page-heading h1{font-size:2.3rem}.hero-note{font-size:.75rem}}
.hero-art img{aspect-ratio:4/3;object-fit:contain;background:#211b31;border-radius:4px 4px 0 0}.art-caption{position:static;display:block;padding:20px 25px;background:#292037;border:1px solid var(--line);border-top:0;border-radius:0 0 4px 4px}.art-caption strong{font-size:1.8rem}.hero-art:before{z-index:0;pointer-events:none}.hero-art img,.art-caption{position:relative}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
