/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@font-face{font-family:Inter;src:url(/assets/fonts/inter.ttf);font-weight:400;font-display:swap}@font-face{font-family:Inter;src:url(/assets/fonts/inter-bold.ttf);font-weight:700 900;font-display:swap}@font-face{font-family:Cinzel;src:url(/assets/fonts/cinzel.ttf);font-weight:700;font-display:swap}@font-face{font-family:DM Serif Display;src:url(/assets/fonts/dm-serif.ttf);font-display:swap}:root{color-scheme:dark only;--night:#120a12;--velvet:#241019;--velvet-2:#321622;--wine:#641a2b;--wine-deep:#3f0f1c;--wine-light:#8a2a3f;--gold:#c9a55c;--gold-soft:#e6cd94;--gold-dim:#8a6f3c;--cream:#f3e7d1;--paper:#f7edd9;--paper-2:#efe0c4;--ink:#2b1a22;--ink-soft:#5a4148;--muted:#bfae9f;--muted-paper:#6d5652;--border:#5a3a3a;--border-paper:#c8ad84;--vampire-red:#c60321;--vampire-glow:drop-shadow(0 0 22px #f35a) drop-shadow(0 6px 10px #000);--cjk-serif:"Nanum Myeongjo","AppleMyungjo","Hiragino Mincho ProN","Yu Mincho","Songti SC","Songti TC","Noto Serif KR","Noto Serif JP","Noto Serif SC","Noto Serif TC";--cjk-sans:"Apple SD Gothic Neo","Hiragino Sans","Yu Gothic","PingFang SC","PingFang TC","Noto Sans KR","Noto Sans JP","Noto Sans SC","Noto Sans TC";--font-body:Inter,var(--cjk-sans),Arial,sans-serif;--font-display:"DM Serif Display",Georgia,var(--cjk-serif),var(--cjk-sans),serif;--font-caps:Cinzel,Georgia,var(--cjk-serif),var(--cjk-sans),serif;--ease:cubic-bezier(.2,.7,.2,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--night);color:var(--cream);font-family:var(--font-body);word-break:keep-all;overflow-wrap:anywhere;margin:0;font-size:16px;line-height:1.55}:where(html[lang=ja],html[lang^=zh]) body{word-break:normal;line-break:strict}:where(html[lang=ja],html[lang^=zh]) p{text-wrap:pretty}a,button,input,select{-webkit-tap-highlight-color:transparent}button,select{font:inherit}a,button{touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{cursor:wait}h1[tabindex="-1"]:focus,h2[tabindex="-1"]:focus{outline:none}a,button,select{outline-offset:4px}a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid var(--gold-soft)}figure,h1,h2,h3,ol,p,ul{margin:0}img{max-width:100%;display:block}button{min-height:44px}a{color:inherit}h1,h2,h3{text-wrap:balance;line-height:1.12;font-family:var(--font-display);font-weight:400}.eyebrow{font:700 11px/1.4 var(--font-caps);letter-spacing:.16em;color:var(--gold)}.brand-logo{object-fit:contain;width:70px;height:38px}.button{background:linear-gradient(180deg,#7a2238,var(--wine) 55%,#521323);color:#fff1d8;border:1px solid var(--gold);letter-spacing:.02em;min-height:56px;transition:filter .18s,transform .12s var(--ease);border-radius:10px;justify-content:center;align-items:center;gap:10px;padding:14px 26px;font-size:16px;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:inset 0 0 0 3px #641a2b,inset 0 0 0 4px #c9a55c66,inset 0 1px #ffffff1f,0 10px 30px #0005}.button:hover{filter:brightness(1.1)}.button:active{transform:translateY(2px)}.button:disabled{opacity:.55}.button.secondary{color:var(--gold-soft);box-shadow:none;background:0 0}.button.secondary:hover{background:#ffffff0d}.button.paper{background:var(--paper);color:var(--wine);box-shadow:inset 0 0 0 3px var(--paper),inset 0 0 0 4px var(--border-paper)}.text-button{color:var(--gold-soft);text-underline-offset:5px;background:0 0;border:0;padding:8px 12px;font-size:15px;text-decoration:underline}.notice{border-inline-start:3px solid var(--gold);color:var(--cream);background:#3a1c26;margin:16px 0;padding:12px 16px;font-size:14px}.modal{color:var(--ink);border:1px solid var(--border-paper);background:var(--paper);width:min(440px,100% - 32px);max-height:88dvh;box-shadow:0 0 0 6px var(--wine),0 0 0 7px var(--gold),0 30px 90px #000a;padding:40px 24px 26px;position:relative;overflow:auto}.modal::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0408d9}.modal h2{color:var(--wine);margin-bottom:14px;font-size:30px}.modal p{color:var(--ink-soft);margin:10px 0}.modal .button{width:100%}.close-button,.modal .text-button{color:var(--wine)}.close-button{width:44px;background:0 0;border:0;font-size:30px;line-height:1;position:absolute;top:4px;right:6px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{transition:none!important;animation:none!important}}:root{color-scheme:light only}body{background:var(--paper);color:var(--ink);flex-direction:column;min-height:100dvh;display:flex}main{flex:1 0 auto;overflow-x:clip}p{color:var(--ink-soft)}h1,h2,h3{color:var(--wine)}.reveal-ready [data-reveal]{opacity:0;transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:calc(var(--d,0)*.12s);transform:translateY(18px)}.reveal-ready [data-reveal].in{opacity:1;transform:none}.site-header{background:var(--night);height:78px;color:var(--cream);border-bottom:1px solid #3a2130;justify-content:space-between;gap:20px;padding:0 max(24px,50vw - 600px);box-shadow:0 1px #ffffff08}.brand,.site-header{align-items:center;display:flex}.brand{gap:16px;min-width:0;text-decoration:none}.brand .brand-logo{flex:none;width:68px;height:38px}.brand>span{font:700 15px var(--font-caps);letter-spacing:.16em;color:var(--gold-soft);white-space:nowrap;border-inline-start:1px solid #4a2c38;padding-inline-start:16px;line-height:1}.language{align-items:center;display:flex}.language select{color-scheme:dark;color:var(--cream);border:1px solid var(--gold-dim);appearance:none;cursor:pointer;background:#1d0f18 url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'><path d='M1 1l6 6 6-6' fill='none' stroke='%23c9a55c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>") calc(100% - 18px) no-repeat;border-radius:999px;min-width:180px;min-height:46px;padding:0 44px 0 22px;font-size:15px;font-weight:600;transition:border-color .2s,background-color .2s}.language select:hover{border-color:var(--gold);background-color:#2a1522}.language select:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.hero{isolation:isolate;background:var(--night);min-height:calc(100dvh - 78px);color:var(--cream);--sy:0;flex-direction:column;justify-content:center;padding:64px max(32px,50vw - 600px) 90px;display:flex;position:relative;overflow:hidden}.hero-layers{z-index:-1;pointer-events:none}.hero-layers,.layer{position:absolute;inset:0}.layer{will-change:transform}.layer,.layer.sky img{width:100%;height:100%}.layer.sky img{object-fit:cover;object-position:center 40%;transform:translateY(calc(var(--sy)*.12px)) scale(1.06)}.layer.mist{height:40%;transform:translateY(calc(var(--sy)*.22px));background:radial-gradient(60% 55% at 30% 100%,#f3e7d122 0,#0000 70%),linear-gradient(#0000,#120a12b3 60%,#120a12);top:auto}.layer.bats{object-fit:contain;object-position:100% 0;opacity:.6;width:34%;height:22%;transform:translate(calc(var(--sy)*-.06px),calc(var(--sy)*.38px));top:4%;left:auto;right:6%}.layer.vignette{background:linear-gradient(90deg,#120a12e6,#120a12a6 34%,#120a1233 60%,#120a1200),radial-gradient(80% 60% at 50% 42%,#120a1200 0,#120a1240 70%,#120a1299 100%)}.hero-grid{grid-template-columns:minmax(0,500px) minmax(0,1fr);align-items:center;gap:40px 48px;width:100%;display:grid}.hero-copy{text-align:start;max-width:560px;position:relative}.campaign-wordmark{color:var(--cream);filter:drop-shadow(0 8px 30px #000);--wm-ink:116px;flex-direction:column;align-items:flex-start;gap:2px;display:flex}.campaign-wordmark>span{font:500 clamp(22px,2.4vw,30px)/1.1 var(--font-body);letter-spacing:.14em;color:var(--cream)}.campaign-wordmark>img{filter:brightness(1.5)saturate(1.25)drop-shadow(0 0 22px #f35a)drop-shadow(0 6px 10px #000);width:min(100%,420px);height:auto}.campaign-wordmark>strong{white-space:nowrap;min-width:0;max-width:100%;font:400 var(--wm-ink)/1.06 var(--font-display);color:var(--vampire-red);letter-spacing:.005em;filter:var(--vampire-glow);display:block}.hero h2{font:700 clamp(21px,2.1vw,28px)/1.35 var(--font-caps);color:var(--gold-soft);text-shadow:0 2px 18px #000;margin:22px 0 14px}.hero-copy>p{color:#e6d8c6;text-shadow:0 1px 12px #000;text-wrap:pretty;max-width:520px;margin:0;font-size:17px;line-height:1.65}.primary-cta{min-width:250px;margin-top:28px}.portrait-fan{grid-template-columns:repeat(3,150px);justify-self:center;gap:18px 16px;margin:0;padding:0;list-style:none;display:grid}.portrait-fan li{min-width:0;transform:rotate(calc((var(--i) - 2.5)*1.6deg)) translateY(calc(var(--sy)*(.03 + var(--i)*.008)*-1px));transition:transform .35s var(--ease);background:linear-gradient(160deg,#c9a55c,#6f5424);padding:6px;box-shadow:0 22px 50px #000d,inset 0 0 0 1px #ffe9b366}.portrait-fan img{aspect-ratio:4/5;object-fit:cover;object-position:center 22%;border:1px solid #3a2130;width:100%;display:block}@media (hover:hover){.portrait-fan li:hover{z-index:2;transform:rotate(0)translateY(-10px)scale(1.05)}}.scroll-hint{color:var(--gold);text-align:center;opacity:.8;min-width:44px;min-height:44px;font-size:30px;text-decoration:none;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}.cta-dock{z-index:20;padding:12px max(16px,env(safe-area-inset-left)) max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--gold-dim);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .4s var(--ease);color:var(--cream);background:#120a12f0;justify-content:center;align-items:center;gap:22px;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(110%)}.cta-dock.show{transform:none}.cta-dock>span{font:700 15px var(--font-caps);color:var(--gold-soft)}.cta-dock .button{min-height:48px;padding:10px 22px;font-size:15px}.tour{isolation:isolate;background:var(--night);color:var(--cream);--ride:0;grid-template-columns:minmax(0,600px) 1fr;align-items:center;gap:40px 60px;min-height:720px;padding:100px max(32px,50vw - 590px);display:grid;position:relative;overflow:hidden}.tour-art{object-fit:cover;object-position:78% 50%;z-index:-2;width:100%;height:100%}.tour-art,.tour:before{position:absolute;inset:0}.tour:before{content:"";z-index:-1;background:linear-gradient(90deg,#120a12f5,#120a12d0 40%,#120a1240 62%,#120a1200 78%),linear-gradient(#120a12,#0000 14% 84%,#120a12)}.tour-copy h2{color:var(--cream);text-wrap:balance;margin:0 0 18px;font-size:clamp(32px,3.2vw,46px);line-height:1.12}.tour-copy p{color:#e6d8c6;text-wrap:pretty;max-width:560px;font-size:17px;line-height:1.75}.control-plate{background:linear-gradient(170deg,#c9a55c,#9c7a3a 30%,#7a5a24 60%,#a8873f);border:2px solid #e9cf8e;border-radius:12px;justify-self:center;width:250px;padding:24px 18px 20px;position:relative;transform:perspective(900px)rotateY(-9deg)rotateX(1deg);box-shadow:inset 0 0 0 4px #5a4218,inset 0 2px #fff3c9aa,0 30px 60px #000c,0 0 0 1px #3a2a10}.screw{background:radial-gradient(circle at 35% 30%,#fff6dc,#8a6a2c 65%,#4d3816);border-radius:50%;width:12px;height:12px;position:absolute;box-shadow:0 1px 2px #0009}.screw:after{content:"";background:#3a2a10;width:2px;height:8px;position:absolute;top:2px;left:5px;transform:rotate(30deg)}.screw.tl{top:8px;left:8px}.screw.tr{top:8px;right:8px}.screw.bl{bottom:8px;left:8px}.screw.br{bottom:8px;right:8px}.plate-dial{background:radial-gradient(circle at 50% 100%,#fff8e6 0,#f0e2c2 55%,#d9c49a 100%);border:solid #5a4218;border-width:3px 3px 4px;border-radius:150px 150px 0 0;width:150px;height:78px;margin:0 auto 16px;position:relative;overflow:hidden;box-shadow:inset 0 4px 10px #0006}.plate-dial:before{content:"";border:1px dashed #8a6f3c;border-bottom:0;border-radius:150px 150px 0 0;position:absolute;inset:8px 8px 0}.needle{transform-origin:50% 100%;width:3px;height:66px;transform:rotate(calc(-72deg + var(--ride)*144deg));transition:transform .25s;bottom:-2px;left:50%;box-shadow:0 0 6px #000a}.needle,.needle:after{background:#641a2b;position:absolute}.needle:after{content:"";border:2px solid #e9cf8e;border-radius:50%;width:15px;height:15px;bottom:-6px;left:-6px}.plate-buttons{gap:10px;margin:0;padding:0;list-style:none;display:grid}.plate-buttons li{--lit:clamp(0,calc((var(--ride)*6.6 - var(--n))),1);align-items:center;gap:12px;display:flex}.plate-key{width:40px;height:40px;box-shadow:inset 0 -2px 4px #4d3816,0 1px 0 #ffe9b3,0 3px 6px #0008,0 0 calc(var(--lit)*20px) rgba(255,217,138,var(--lit));font:700 15px var(--font-caps);color:#3a2a10;background:radial-gradient(circle at 35% 30%,#fff5d6,#b89152 60%,#6f5424);border-radius:50%;flex:none;place-items:center;transition:box-shadow .3s;display:grid}.plate-buttons b{font:700 12px/1.2 var(--font-caps);letter-spacing:.1em;text-transform:uppercase;color:#2b1a08;opacity:calc(.5 + var(--lit)*.5);text-shadow:0 1px #ffe9b366}.preview-section{max-width:1140px;margin:auto;padding:96px 40px 88px}.section-heading{text-align:center;max-width:760px;margin:0 auto 52px}.section-heading h2{text-wrap:balance;margin-bottom:12px;font-size:clamp(32px,3.4vw,46px)}.section-heading p{font-size:17px}.reveal-layout{grid-template-columns:.95fr 1.05fr;align-items:center;gap:70px;display:grid}.card-stage{justify-self:center;width:min(100%,500px);position:relative;transform:rotate(-2deg)}.mystery-export{width:100%;display:block;box-shadow:0 30px 60px #4e182133}.wax-seal{object-fit:contain;inset-inline-end:22.7%;width:17.6%;height:auto;position:absolute;top:71.5%;transform:rotate(10deg)}.unlock-list{gap:18px;margin:0;padding:0;list-style:none;display:grid}.unlock-list li{align-items:flex-start;gap:16px;display:flex}.numeral{width:40px;font:700 22px/1 var(--font-caps);color:var(--gold-dim);flex:none;padding-top:4px}.unlock-list b{font:25px/1.15 var(--font-display);color:var(--wine);display:block}.unlock-list small{color:var(--ink-soft);margin-top:3px;font-size:14.5px;line-height:1.4;display:block}.guidance{background:var(--paper-2);grid-template-columns:1.2fr 1fr;align-items:center;gap:80px;padding:72px max(32px,50vw - 570px);display:grid;box-shadow:inset 0 14px 24px -18px #4e182126}.guidance h2{margin-bottom:30px;font-size:clamp(32px,3.4vw,44px)}.guidance ol{gap:26px;margin:0;padding:0;list-style:none;display:grid}.guidance li{align-items:flex-start;gap:20px;display:flex}.step-number{background:var(--wine);width:44px;height:44px;color:var(--paper);border:2px solid var(--gold);font:700 14px var(--font-caps);border-radius:50%;flex:none;place-items:center;display:grid;box-shadow:0 8px 20px #4e182130}.guidance h3{font:700 17px/1.4 var(--font-body);color:var(--ink);margin:6px 0}.guidance p{font-size:15.5px;line-height:1.6}.community-preview{text-align:start;border:1px solid var(--border-paper);box-shadow:0 0 0 6px var(--paper-2),0 0 0 7px var(--border-paper),0 24px 50px #4e182118;background:#fffaf0;transform:rotate(1.5deg)}.community-preview>div{border-bottom:1px solid var(--border-paper);color:var(--ink);align-items:center;gap:12px;padding:16px 22px;font-size:16px;font-weight:700;display:flex}.community-preview>div img{object-fit:cover;border:1px solid var(--border-paper);border-radius:50%;width:44px;height:44px}.community-preview a{color:var(--wine);font:700 15px/1.35 var(--font-body);align-items:center;gap:12px;padding:20px 22px;text-decoration:none;display:flex}.community-preview a>span{min-width:0}.community-preview a>b{margin-inline-start:auto;font-size:22px;line-height:1}.community-pin{flex:none;width:22px;height:22px}.site-footer{background:var(--night);color:var(--cream);border-top:1px solid #3a2130;flex:none}.footer-inner{justify-content:flex-start;align-items:center;gap:18px;padding:22px max(24px,50vw - 600px);display:flex}.footer-inner .brand-logo{width:68px;height:38px}.footer-inner h2{font:700 14px var(--font-body);color:var(--cream);letter-spacing:.05em;margin-bottom:4px}.footer-inner p{color:var(--muted);letter-spacing:.04em;font-size:12px}.modal{text-align:center}.qr-image{width:280px;margin:24px auto 4px}@media (max-width:960px){.hero-grid{grid-template-columns:1fr;gap:28px}.hero-copy{text-align:center;max-width:640px;margin:auto}.campaign-wordmark{align-items:center}.hero-copy>p{margin:auto}.portrait-fan{grid-template-columns:repeat(3,140px)}}@media (max-width:760px){.site-header{gap:10px;height:68px;padding:0 14px}.brand{gap:10px}.brand .brand-logo{width:52px;height:30px}.brand>span{letter-spacing:.06em;padding-inline-start:10px;font-size:11px}.language select{background-position:calc(100% - 12px);width:112px;min-width:0;min-height:40px;padding:0 30px 0 12px;font-size:13px}.hero{justify-content:flex-start;min-height:0;padding:36px 20px 70px}.layer.sky img{object-position:center 30%}.layer.bats{width:60%;height:14%;top:2%;right:0}.layer.vignette{background:linear-gradient(#120a12b3,#120a1266 30%,#120a1200 55%,#120a12)}.campaign-wordmark>span{font-size:22px}.campaign-wordmark>img{width:270px}.campaign-wordmark{--wm-ink:75px}.hero h2{margin:14px auto 10px;font-size:19px}.hero-copy>p{font-size:15px}.portrait-fan{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;max-width:380px;margin:18px auto 0;padding:0 6px}.portrait-fan li{transform:rotate(calc((var(--i) - 2.5)*1.4deg))}.primary-cta{width:100%;max-width:320px;margin-top:22px}.scroll-hint{display:none}.cta-dock{gap:12px;padding-inline:16px}.cta-dock>span{display:none}.cta-dock .button{width:min(100%,280px)}.tour{grid-template-columns:1fr;gap:34px;min-height:0;padding:64px 20px}.tour-art{object-position:74% 50%}.tour:before{background:linear-gradient(#120a1280,#120a12d9 45%,#120a12f5)}.tour-copy h2{font-size:31px}.tour-copy p{font-size:16px}.control-plate{width:min(100%,300px);transform:none}.preview-section{padding:60px 20px 48px}.section-heading{margin-bottom:34px}.section-heading h2{font-size:31px}.section-heading p{font-size:15.5px}.reveal-layout{grid-template-columns:1fr;gap:36px}.card-stage{width:min(100%,340px);transform:none}.numeral{width:30px;font-size:19px}.unlock-list{gap:16px}.unlock-list b{font-size:21px}.unlock-list small{font-size:13.5px}.community-preview a{gap:8px;padding:16px 14px;font-size:12.5px}.community-preview a>b{font-size:18px}.community-pin{width:18px;height:18px}.guidance{grid-template-columns:minmax(0,1fr);gap:40px;padding:52px 20px 56px}.community-preview,.guidance>div,.guide-art{min-width:0}.guidance h2{font-size:31px}.community-preview{transform:none}.footer-inner{gap:12px;padding:18px 14px}.footer-inner .brand-logo{width:52px;height:30px}.footer-inner h2{font-size:12.5px}.footer-inner p{letter-spacing:.02em;font-size:10.5px}}@media (max-width:380px){.brand .brand-logo{flex:none}.brand>span{letter-spacing:.04em;font-size:11px}.language select{width:102px;padding:0 28px 0 10px;font-size:12.5px}}@media (prefers-reduced-motion:reduce){.portrait-fan li{transform:rotate(calc((var(--i,2.5) - 2.5)*1.6deg))!important}.layer{transform:none!important}[data-reveal]{opacity:1;transform:none}}