@import "https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@200;300;400;600;700&family=Space+Mono:wght@400;700&display=swap";html,body,#root{width:100%}::selection{color:#fff;background:#c9a96e4d}@font-face{font-family:Smiley Sans;src:url(https://cdn.jsdelivr.net/gh/atelier-anchor/smiley-sans@main/dist/SmileySans-Oblique.ttf.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}:root{--font-display:"Noto Serif SC", "STSong", serif;--font-mono:"Space Mono", "Courier New", monospace;--color-gold:#c9a96e;--color-gold-light:#e8d5a8;--color-dark:#0a0a0a}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--color-dark);width:100%;overflow-x:hidden}.app{cursor:default;width:100vw;position:relative}.section{width:100%;min-height:100vh;position:relative;overflow:hidden}.section-hero{height:100vh}.hero-bg{z-index:1;will-change:transform;position:absolute;inset:0}.hero-img{object-fit:cover;object-position:center;filter:brightness(.7)saturate(.9);will-change:transform;width:100%;height:100%;transition:filter 3s}.loaded .hero-img{filter:brightness(.85)saturate()}.overlay{opacity:0;background:linear-gradient(#00000080 0%,#00000026 40%,#0000001a 60%,#0009 100%);transition:opacity 2s .5s;position:absolute;inset:0}.loaded .overlay{opacity:1}.content{z-index:2;will-change:opacity;flex-direction:column;justify-content:flex-start;align-items:center;height:100%;padding-top:5vh;display:flex;position:relative}.brand{flex-direction:column;align-items:center;gap:2rem;display:flex}.tagline{color:#fff;letter-spacing:.3em;opacity:0;text-shadow:0 0 40px #ffffff4d,0 0 80px #ffffff26;will-change:transform, opacity;margin-top:6rem;padding-left:.3em;font-family:Smiley Sans,PingFang SC,Microsoft YaHei,sans-serif;font-size:clamp(1.2rem,3vw,2rem);animation:1.8s cubic-bezier(.16,1,.3,1) 1.8s forwards taglineReveal}@keyframes taglineReveal{0%{opacity:0;filter:blur(8px)}to{opacity:.9;filter:blur()}}.logo{object-fit:contain;opacity:0;filter:blur(15px);will-change:transform, opacity;width:auto;max-width:60vw;height:auto;max-height:50vh;animation:2s cubic-bezier(.34,1.56,.64,1) .6s forwards logoReveal}@keyframes logoReveal{0%{opacity:0;filter:blur(15px)}60%{opacity:1;filter:blur()}to{opacity:1;filter:blur()}}.parallax-logo{transition:transform .1s linear}.parallax-tagline{transition:transform .15s linear}.scroll-indicator{z-index:2;opacity:0;will-change:opacity;flex-direction:column;align-items:center;gap:1rem;animation:1.5s 3s forwards fadeIn;display:flex;position:absolute;bottom:3rem;left:50%;transform:translate(-50%)}@keyframes fadeIn{to{opacity:1}}.mouse{border:2px solid #fffc;border-radius:13px;justify-content:center;width:26px;height:42px;display:flex;position:relative}.mouse-wheel{background:#fff;border-radius:2px;width:4px;height:8px;animation:2s ease-in-out 3.5s infinite mouseScroll;position:absolute;top:8px}@keyframes mouseScroll{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(12px)}}.scroll-text{color:#fffc;letter-spacing:.3em;padding-left:.3em;font-family:Smiley Sans,PingFang SC,Microsoft YaHei,sans-serif;font-size:.85rem;animation:2.5s ease-in-out 3.5s infinite textPulse}@keyframes textPulse{0%,to{opacity:.5}50%{opacity:1}}.scroll-arrow{flex-direction:column;align-items:center;gap:4px;animation:2s ease-in-out 3.5s infinite arrowBounce;display:flex}.scroll-arrow span{border-bottom:2px solid #fffc;border-right:2px solid #fffc;width:12px;height:12px;display:block;transform:rotate(45deg)}.scroll-arrow span:first-child{opacity:.3}.scroll-arrow span:nth-child(2){opacity:.6}@keyframes arrowBounce{0%,to{opacity:.5;transform:translateY(0)}50%{opacity:1;transform:translateY(8px)}}.section-coming{background:#fff;justify-content:center;align-items:center;min-height:100vh;display:flex}.coming-content{text-align:center;will-change:transform, opacity}.coming-title{color:var(--color-dark);letter-spacing:.3em;padding-left:.3em;font-family:Smiley Sans,PingFang SC,Microsoft YaHei,sans-serif;font-size:clamp(3rem,10vw,8rem);font-weight:400;transition:transform .3s ease-out}.section-coming.visible .coming-title{transform:translateY(0)}.coming-line{background:var(--color-dark);width:120px;height:2px;margin:2rem auto 0;transition:transform 2s cubic-bezier(.16,1,.3,1) .3s;transform:scaleX(0)}.section-coming.visible .coming-line{transform:scaleX(1)}@media (width<=768px){.logo{max-width:80vw;max-height:40vh}.coming-title{letter-spacing:.15em;padding-left:.15em}}
