:root{--bg: #0b0d0a;--ink: #ece6da;--ink-dim: #b9b2a3;--gold: #d9b87a;--rule: rgba(217, 184, 122, .35);--font-display: "Forum", "Ruslan Display", serif;--font-hero: "Ruslan Display", "Forum", serif;--font-body: "Lora", Georgia, serif}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased}body{overflow-x:hidden}#solid-bg,#site-backdrop,#env-canvas,#char-canvas{position:fixed;inset:0;width:100%;height:100%}#solid-bg{z-index:0;pointer-events:none}#site-backdrop{z-index:1;pointer-events:none;overflow:hidden}.site-backdrop-layer{position:absolute;inset:0;opacity:0;background-position:center;background-size:cover;transform:scale(1.04);filter:blur(6px);will-change:opacity,filter,transform}.site-backdrop-layer.is-active{opacity:1}#env-canvas{z-index:2;pointer-events:none;opacity:0;filter:blur(22px);background:transparent;will-change:opacity,filter,transform}#char-canvas{z-index:3;pointer-events:auto;cursor:grab;background:transparent;will-change:opacity,filter,transform}#char-canvas:active{cursor:grabbing}#article{position:relative;z-index:4;pointer-events:none}#nav{position:fixed;top:0;left:0;right:0;z-index:6;display:flex;align-items:center;justify-content:center;gap:clamp(14px,3vw,42px);padding:16px 22px;pointer-events:auto;font-family:var(--font-display);letter-spacing:.12em;text-transform:uppercase;font-size:13px;background:linear-gradient(to bottom,#080a08e0,#080a0880 55%,#080a0800)}#nav a{color:var(--ink-dim);text-decoration:none;transition:color .25s;position:relative;text-shadow:0 1px 5px rgba(0,0,0,.85),0 0 2px rgba(0,0,0,.6)}#nav a:hover,#nav a.active{color:var(--gold)}#nav a.active:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--gold);border-radius:2px;box-shadow:0 0 8px #d9b87a99}.section{position:relative;width:100%}.section.block{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:10vh 6vw}.section.character{height:320vh}.sticky{position:sticky;top:0;height:100vh;width:100%;overflow:hidden}.panel{max-width:760px;text-align:center;pointer-events:auto;will-change:opacity,transform}.kicker{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.32em;color:var(--gold);font-size:clamp(11px,1.4vw,14px);margin-bottom:22px}.panel h1{font-family:var(--font-hero);font-weight:400;font-size:clamp(44px,8vw,104px);line-height:1.02;margin:0 0 26px;text-shadow:0 4px 40px rgba(0,0,0,.6)}.panel h2{font-family:var(--font-display);font-weight:400;font-size:clamp(34px,5vw,62px);margin:0 0 24px;color:var(--gold)}.panel .subtitle{font-size:clamp(17px,2.2vw,24px);color:var(--ink-dim);line-height:1.5}.panel p{font-size:clamp(16px,1.5vw,20px);line-height:1.7;color:var(--ink-dim);margin:0 0 18px}.scroll-hint{margin-top:40px;display:flex;flex-direction:column;align-items:center;gap:12px;font-family:var(--font-display);letter-spacing:.2em;text-transform:uppercase;font-size:12px;color:var(--ink-dim);animation:bob 2.2s ease-in-out infinite}.scroll-hint:after{content:"";width:11px;height:11px;border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(45deg)}@keyframes bob{0%,to{transform:translateY(0);opacity:.7}50%{transform:translateY(8px);opacity:1}}.copy{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:min(560px,46vw);max-height:92vh;pointer-events:none;text-align:center;will-change:transform,opacity}.intro{will-change:opacity,transform}.intro .space-label{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.34em;color:var(--accent, var(--gold));font-size:clamp(12px,1.5vw,15px);margin-bottom:12px}.intro .title{font-family:var(--font-hero);font-weight:400;font-size:clamp(34px,4.6vw,60px);margin:0 0 16px;line-height:1.04;color:var(--ink);text-shadow:0 4px 40px rgba(0,0,0,.7),0 0 26px rgba(217,184,122,.18)}.intro .lead{color:var(--ink)}.intro .lead p{font-size:clamp(13.5px,1.15vw,16.5px);line-height:1.55;margin:0 0 .72em;text-shadow:0 2px 10px rgba(0,0,0,.7),0 1px 3px rgba(0,0,0,.6)}.intro .lead p:last-child{margin-bottom:0}.intro .hero-divider{margin:0 auto 14px;width:clamp(140px,16vw,196px)}.intro .char-ornament{margin:16px auto 4px;width:clamp(130px,14vw,188px)}.intro .char-ornament svg{width:100%;height:auto;display:block;opacity:.85}.intro .rotate-hint{margin-top:18px;font-family:var(--font-display);letter-spacing:.18em;text-transform:uppercase;font-size:11px;color:var(--ink-dim)}.caption{margin:20px 0 0;padding-top:16px;width:100%;will-change:opacity,transform}.caption:before{content:"";display:block;width:54px;height:1px;background:var(--rule);margin:0 auto 16px}.caption p{font-family:var(--font-body);font-style:italic;font-size:clamp(13.5px,1.3vw,16px);line-height:1.5;color:var(--ink-dim);margin:0}.hero-section{position:relative;overflow:hidden}.hero-art{position:absolute;inset:0;z-index:0;pointer-events:none}.hero-art-svg{width:100%;height:100%;display:block}.hero-panel{position:relative;z-index:2}.hero-art:after{content:"";position:absolute;inset:0;z-index:4;background:linear-gradient(to bottom,rgba(7,9,7,0) 50%,rgba(7,9,7,.85) 88%,var(--bg) 100%)}.hero-parallax{background:#000a13}.hero-bg-main{position:absolute;inset:0;background-size:auto 100%;background-position:center;background-repeat:no-repeat;z-index:1}.hero-fx{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:2}.hero-fireflies{position:absolute;inset:0;width:100%;height:100%;display:block;z-index:3;pointer-events:none}.section.hero-section{align-items:center}.hero-panel{max-width:min(940px,94vw)}.hero-panel:before{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(130%,1200px);height:150%;background:radial-gradient(ellipse at 50% 50%,#04090f99,#04090f61 40%,#04090f24 64%,#04090f00 82%);filter:blur(42px);z-index:-1;pointer-events:none}.hero-panel .intro .title{font-size:clamp(40px,6.4vw,88px);line-height:1}.hero-panel .intro .lead p{font-size:clamp(16px,1.8vw,22px);color:#f0e7d2}.hero-panel .scroll-hint{margin-top:30px;color:var(--gold);text-shadow:0 8px 14px rgba(0,0,0,.9),0 2px 4px rgba(0,0,0,.7)}.hero-panel .intro .space-label{text-shadow:0 8px 14px rgba(0,0,0,.95),0 3px 5px rgba(0,0,0,.8)}.hero-glow{transform-box:fill-box;transform-origin:center;animation:heroPulse 7s ease-in-out infinite}.hero-rays{transform-box:fill-box;transform-origin:center;animation:heroSpin 120s linear infinite}.hero-ring{transform-box:fill-box;transform-origin:center;animation:heroSpin 90s linear infinite reverse}.hero-moon{animation:heroMoonFloat 12s ease-in-out infinite;transform-box:fill-box;transform-origin:center}.hero-spark{opacity:0;animation-name:heroTwinkle;animation-iteration-count:infinite;animation-timing-function:ease-in-out}@keyframes heroTwinkle{0%,to{opacity:0}50%{opacity:.9}}.hero-ember{opacity:0;animation-name:heroRise;animation-iteration-count:infinite;animation-timing-function:ease-in}@keyframes heroRise{0%{opacity:0;transform:translateY(0)}18%{opacity:.85}to{opacity:0;transform:translateY(-180px)}}.hero-eyes{opacity:0;animation:heroBlink 6s ease-in-out infinite;filter:drop-shadow(0 0 6px rgba(190,255,130,1)) drop-shadow(0 0 14px rgba(150,230,110,.7))}@keyframes heroBlink{0%,40%{opacity:0}46%,64%{opacity:.92}68%{opacity:.1}72%,86%{opacity:.92}92%,to{opacity:0}}.hero-fog{transform-box:fill-box}.hero-fog-a{animation:heroDriftA 26s ease-in-out infinite}.hero-fog-b{animation:heroDriftB 32s ease-in-out infinite}.hero-fog-c{animation:heroDriftA 38s ease-in-out infinite}@keyframes heroDriftA{0%,to{transform:translate(-40px)}50%{transform:translate(60px)}}@keyframes heroDriftB{0%,to{transform:translate(50px)}50%{transform:translate(-50px)}}@keyframes heroSpin{to{transform:rotate(360deg)}}@keyframes heroPulse{0%,to{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}@keyframes heroMoonFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.hero-divider{margin:0 auto 22px;width:clamp(180px,26vw,260px)}.hero-divider svg{width:100%;height:auto;display:block;opacity:.85}@media (prefers-reduced-motion: reduce){.hero-glow,.hero-rays,.hero-ring,.hero-moon,.hero-spark,.hero-ember,.hero-eyes,.hero-fog{animation:none}.hero-spark{opacity:.6}}.about-section{position:relative;overflow:hidden}.about-bg{position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(to bottom,var(--bg) 0%,var(--bg) 9%,rgba(11,13,10,0) 36%),radial-gradient(ellipse at 50% 46%,#0b0d0a4d,#0b0d0a94 60%,#0b0d0ae6),url(/assets/background_info-J-KtkEbJ.png) center center / cover no-repeat,var(--bg);filter:blur(7px) saturate(.94) brightness(.92);transform:scale(1.04);-webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,1) 0%,rgba(0,0,0,1) 80%,rgba(0,0,0,0) 100%);mask-image:linear-gradient(to bottom,#000 0% 80%,#0000)}.about-panel{position:relative;z-index:2;max-width:min(640px,92vw);padding:clamp(28px,5vw,56px) clamp(20px,4vw,40px)}.about-panel:before{content:"";position:absolute;inset:clamp(-26px,-4vw,-64px);z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 50% 50%,#0609079e,#06090757 56%,#06090700);filter:blur(22px)}.about-frame{position:absolute;inset:0;pointer-events:none;z-index:1}.about-corner{position:absolute;width:clamp(46px,6vw,72px);height:clamp(46px,6vw,72px)}.about-corner svg{width:100%;height:100%;display:block;filter:drop-shadow(0 1px 3px rgba(0,0,0,.8))}.about-corner-tl{top:0;left:0}.about-corner-tr{top:0;right:0;transform:scaleX(-1)}.about-corner-br{bottom:0;right:0;transform:scale(-1)}.about-corner-bl{bottom:0;left:0;transform:scaleY(-1)}#loader{position:fixed;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;background:var(--bg);transition:opacity .6s ease;font-family:var(--font-display);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-dim);font-size:13px}#loader.hidden{opacity:0;pointer-events:none}#loader .bar{width:220px;height:3px;background:#ffffff1a;border-radius:2px;overflow:hidden}#loader .bar>div{height:100%;width:0%;background:linear-gradient(90deg,var(--gold),#f0dcae);transition:width .3s ease}@media (max-width: 760px){.section.character{height:280vh}#nav{gap:14px;font-size:11px;flex-wrap:wrap}.copy{top:auto;bottom:8vh;left:50%!important;right:auto!important;transform:translate(-50%);width:88vw;text-align:center}.caption:before{margin:0 auto 16px}}
