@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.7)}}:root{--bg:#0a0e27;--bg-deep:#060924;--bg-soft:#131840;--silver:#c0c9e0;--silver-dim:#c0c9e08c;--gold:#d4af37;--gold-soft:#d4af378c;--gold-faint:#d4af372e;--text:#f5f5f0;--text-dim:#f5f5f0b8;--text-faint:#f5f5f06b;--serif-jp:"Noto Serif JP", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN", serif;--serif-en:"Cormorant Garamond", "Noto Serif JP", serif;--sans-jp:"Noto Sans JP", -apple-system, BlinkMacSystemFont, sans-serif;--max:1140px;--gutter:clamp(24px, 6vw, 80px)}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:var(--sans-jp);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-weight:300;line-height:1.9;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}::selection{background:var(--gold-faint);color:var(--text)}.stars{pointer-events:none;z-index:0;opacity:.7;background-color:#0000;background-image:radial-gradient(1px 1px at 12% 18%,#f5f5f08c,#0000 60%),radial-gradient(1px 1px at 78% 22%,#f5f5f073,#0000 60%),radial-gradient(1px 1px at 34% 64%,#f5f5f059,#0000 60%),radial-gradient(1.2px 1.2px at 88% 78%,#f5f5f08c,#0000 60%),radial-gradient(1px 1px at 58% 34%,#f5f5f04d,#0000 60%),radial-gradient(1px 1px at 6% 82%,#f5f5f059,#0000 60%),radial-gradient(1px 1px at 92% 48%,#f5f5f04d,#0000 60%);background-position:0 0,0 0,0 0,0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat,repeat,repeat,repeat;background-size:100% 100%;background-attachment:scroll,scroll,scroll,scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box,border-box,border-box,border-box;position:fixed;inset:0}.stars:after{content:"";background:radial-gradient(1px 1px at 22% 88%,#f5f5f066,#0000 60%),radial-gradient(1px 1px at 48% 12%,#f5f5f066,#0000 60%),radial-gradient(1px 1px at 70% 92%,#f5f5f066,#0000 60%);animation:6s ease-in-out infinite twinkle;position:absolute;inset:0}@keyframes twinkle{0%,to{opacity:.6}50%{opacity:1}}nav.top{z-index:50;padding:22px var(--gutter);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:linear-gradient(#0a0e27d9,#0a0e2700);justify-content:space-between;align-items:center;transition:background .4s;display:flex;position:fixed;top:0;left:0;right:0}nav.top .brand{font-family:var(--serif-en);letter-spacing:.18em;color:var(--text);align-items:center;gap:12px;font-size:22px;display:flex}nav.top .brand img{object-fit:contain;width:26px;height:26px}nav.top .links{letter-spacing:.18em;color:var(--text-dim);align-items:center;gap:28px;font-size:12px;display:flex}nav.top .links a:hover{color:var(--text)}nav.top .mini-cta{border:1px solid var(--gold-soft);color:var(--text);letter-spacing:.18em;border-radius:999px;padding:8px 18px;font-size:12px;transition:all .4s}nav.top .mini-cta:hover{background:var(--gold-faint);border-color:var(--gold);box-shadow:0 0 24px #d4af3740}@media (max-width:720px){nav.top .links a:not(.mini-cta){display:none}}.moon-rail{z-index:40;pointer-events:none;flex-direction:column;align-items:center;gap:14px;display:flex;position:fixed;top:50%;right:28px;transform:translateY(-50%)}.moon-rail .ph{border:1px solid var(--silver-dim);border-radius:50%;width:14px;height:14px;transition:all .6s;position:relative;overflow:hidden}.moon-rail .ph:before{content:"";background:var(--silver);transition:transform .6s;position:absolute;inset:0;transform:translate(-100%)}.moon-rail .ph.on:before{transform:translate(0)}.moon-rail .ph.on{border-color:var(--silver);box-shadow:0 0 12px #c0c9e066}.moon-rail .label{writing-mode:vertical-rl;font-family:var(--serif-en);letter-spacing:.4em;color:var(--text-faint);margin-top:6px;font-size:10px}@media (max-width:900px){.moon-rail{display:none}}section{z-index:1;position:relative}.wrap{max-width:var(--max);padding:0 var(--gutter);margin:0 auto}.eyebrow{font-family:var(--serif-en);color:var(--gold);letter-spacing:.32em;text-transform:lowercase;align-items:center;gap:14px;margin:0 0 28px;font-size:14px;font-style:italic;font-weight:300;display:flex}.eyebrow:before{content:"";background:linear-gradient(to right, transparent, var(--gold-soft));width:36px;height:1px}.eyebrow.center{justify-content:center}.eyebrow.center:after{content:"";background:linear-gradient(to left, transparent, var(--gold-soft));width:36px;height:1px}h2.section-title{font-family:var(--serif-jp);letter-spacing:.04em;color:var(--text);margin:0 0 56px;font-size:clamp(28px,4.2vw,48px);font-weight:400;line-height:1.55}.body-jp{font-family:var(--serif-jp);letter-spacing:.08em;color:var(--text-dim);font-size:clamp(16px,1.4vw,19px);font-weight:300;line-height:2.4}.body-jp p{margin:0 0 1.5em}.reveal{opacity:0;transition:opacity 1.4s ease-out,transform 1.4s ease-out;transform:translateY(28px)}.reveal.in{opacity:1;transform:translateY(0)}.cta{border:1px solid var(--gold-soft);color:var(--text);font-family:var(--sans-jp);letter-spacing:.18em;cursor:pointer;background:0 0;align-items:center;gap:14px;padding:18px 38px;font-size:15px;font-weight:400;transition:all .6s cubic-bezier(.2,.8,.2,1);display:inline-flex;position:relative;overflow:hidden}.cta:before{content:"";background:radial-gradient(ellipse at center, var(--gold-faint), transparent 70%);opacity:0;transition:opacity .6s;position:absolute;inset:0}.cta:hover{border-color:var(--gold);box-shadow:0 0 36px #d4af3740}.cta:hover:before{opacity:1}.cta .moon{font-size:13px}.cta.ghost{border-color:#c0c9e04d;padding:14px 28px;font-size:13px}.cta.ghost:hover{border-color:var(--silver);box-shadow:0 0 24px #c0c9e01f}.hero{text-align:center;min-height:100vh;padding:140px var(--gutter) 80px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.hero .bg{z-index:0;background-image:url(/assets/hero-mobile.png);background-position:50% 30%;background-size:cover;position:absolute;inset:0}@media (min-width:768px){.hero .bg{background-image:url(/assets/hero.png)}}.hero .bg:after{content:"";background:radial-gradient(ellipse at center 35%, transparent 0%, #0a0e2759 50%, #0a0e27f2 90%), linear-gradient(to bottom, #0a0e2780 0%, transparent 30%, transparent 60%, var(--bg) 100%);position:absolute;inset:0}.hero .inner{z-index:2;max-width:880px;position:relative}.hero .wordmark{font-family:var(--serif-en);letter-spacing:.5em;color:var(--silver);opacity:.9;margin-bottom:64px;font-size:18px;font-style:italic;font-weight:300}.hero h1{font-family:var(--serif-jp);letter-spacing:.06em;color:var(--text);text-shadow:0 0 40px #0a0e2799;margin:0 0 40px;font-size:clamp(34px,5.4vw,64px);font-weight:300;line-height:1.65}.hero .sub{font-family:var(--serif-jp);letter-spacing:.12em;color:var(--text-dim);margin:0 0 56px;font-size:clamp(15px,1.5vw,19px);font-weight:300;line-height:2.2}.hero .note{letter-spacing:.22em;color:var(--text-faint);margin:28px 0 0;font-size:12px}.hero .scroll-cue{z-index:2;font-family:var(--serif-en);letter-spacing:.4em;color:var(--text-faint);flex-direction:column;align-items:center;gap:14px;font-size:10px;display:flex;position:absolute;bottom:36px;left:50%;transform:translate(-50%)}.hero .scroll-cue:after{content:"";background:linear-gradient(to bottom, var(--silver-dim), transparent);transform-origin:top;width:1px;height:56px;animation:2.6s ease-in-out infinite drop}@keyframes drop{0%,to{opacity:.4;transform:scaleY(.5)}50%{opacity:1;transform:scaleY(1)}}.problem{padding:200px var(--gutter) 200px;text-align:center}.problem .phases{justify-content:center;gap:38px;margin:70px 0;display:flex}.problem .phases svg{opacity:.65;width:38px;height:38px;transition:opacity 1s}.problem .phases svg:first-child{opacity:.95}.problem .phases svg:nth-child(2){opacity:.75}.problem .phases svg:nth-child(3){opacity:.55}.problem .phases svg:nth-child(4){opacity:.35}.problem .phases svg:nth-child(5){opacity:.18}.problem .body-jp{text-align:center;max-width:580px;margin:0 auto;font-size:clamp(15px,1.3vw,18px)}.world{padding:80px 0 200px;position:relative}.world .stage{margin:0 calc(-1 * var(--gutter));align-items:center;min-height:88vh;display:flex;position:relative;overflow:hidden}.world .stage .bg{z-index:0;background-image:url(/assets/library-mobile.png);background-position:50%;background-size:cover;position:absolute;inset:0}@media (min-width:768px){.world .stage .bg{background-image:url(/assets/library.png)}}.world .stage .bg:after{content:"";background:radial-gradient(ellipse at 50% 50%, #0a0e2740 0%, #0a0e27b3 70%), linear-gradient(to bottom, var(--bg) 0%, transparent 18%, transparent 82%, var(--bg) 100%), linear-gradient(to right, var(--bg) 0%, transparent 22%, transparent 78%, var(--bg) 100%);position:absolute;inset:0}.world .content{z-index:2;max-width:720px;padding:120px var(--gutter);text-align:center;margin:0 auto;position:relative}.world h2{font-family:var(--serif-jp);letter-spacing:.05em;color:var(--text);margin:0 0 80px;font-size:clamp(30px,4.6vw,54px);font-weight:300;line-height:1.6}.world .body-jp{letter-spacing:.1em;font-size:clamp(15px,1.35vw,18px);line-height:2.6}.world .signature{font-family:var(--serif-en);letter-spacing:.3em;color:var(--gold);margin-top:56px;font-size:14px;font-style:italic;display:block}.steps{padding:80px var(--gutter) 200px;text-align:center}.steps h2{text-align:center}.step-grid{text-align:left;grid-template-columns:repeat(3,1fr);gap:28px;margin:72px 0 56px;display:grid}@media (max-width:820px){.step-grid{grid-template-columns:1fr;gap:18px}}.step{background:linear-gradient(#c0c9e00a,#c0c9e003);border:1px solid #c0c9e024;padding:38px 32px 36px;transition:border-color .6s,background .6s;position:relative}.step:hover{border-color:var(--gold-soft)}.step .num{font-family:var(--serif-en);letter-spacing:.32em;color:var(--gold);margin-bottom:18px;font-size:14px;font-style:italic}.step h3{font-family:var(--serif-jp);letter-spacing:.05em;color:var(--text);margin:0 0 22px;font-size:19px;font-weight:400;line-height:1.7}.step .opts{font-family:var(--serif-jp);letter-spacing:.06em;color:var(--text-dim);flex-wrap:wrap;gap:6px 10px;font-size:13px;display:flex}.step .opts span{white-space:nowrap}.step .opts .sep{color:var(--text-faint)}.step p.note{font-family:var(--serif-jp);letter-spacing:.06em;color:var(--text-dim);margin:0;font-size:13px;line-height:2}.steps .sample{margin-top:8px}.why{padding:0 var(--gutter) 200px;max-width:var(--max);grid-template-columns:1fr 1fr;align-items:center;gap:100px;margin:0 auto;display:grid}@media (max-width:880px){.why{grid-template-columns:1fr;gap:56px}}.why .text h2{margin-bottom:40px}.why .text .compare{border-top:1px solid #c0c9e01f;margin-top:56px;padding-top:40px}.why .text .compare p{font-family:var(--serif-jp);letter-spacing:.08em;color:var(--text);margin:0 0 .8em;font-size:clamp(16px,1.4vw,19px);font-weight:400;line-height:2.2}.why .art{aspect-ratio:1;justify-self:center;max-width:460px;position:relative;overflow:hidden}.why .art:after{content:"";background:radial-gradient(ellipse at center, transparent 40%, var(--bg) 100%);pointer-events:none;position:absolute;inset:0}.why .art img{object-fit:cover;width:100%;height:100%}.beta{padding:0 var(--gutter) 200px;text-align:center}.beta .panel{background:radial-gradient(at 50% 0,#d4af370f,#0000 70%),linear-gradient(#c0c9e008,#c0c9e001);border:1px solid #d4af372e;max-width:720px;margin:0 auto;padding:100px 56px;position:relative}.beta .panel:before,.beta .panel:after{content:"";border:1px solid var(--gold-soft);width:28px;height:28px;position:absolute}.beta .panel:before{border-bottom:none;border-right:none;top:-1px;left:-1px}.beta .panel:after{border-top:none;border-left:none;bottom:-1px;right:-1px}@media (max-width:640px){.beta .panel{padding:64px 28px}}.beta h2{text-align:center;margin-bottom:40px}.beta .body-jp{text-align:center;max-width:520px;margin:0 auto 56px}.beta .reassure{font-family:var(--serif-jp);letter-spacing:.08em;color:var(--text-dim);flex-direction:column;align-items:center;gap:14px;margin:0 0 56px;padding:0;font-size:13px;list-style:none;display:flex}.beta .reassure li{align-items:center;gap:12px;display:flex}.beta .reassure li:before{content:"";background:var(--gold);width:5px;height:5px;box-shadow:0 0 8px var(--gold-soft);border-radius:50%}.creator{padding:0 var(--gutter) 200px;max-width:var(--max);grid-template-columns:280px 1fr;align-items:start;gap:80px;margin:0 auto;display:grid}@media (max-width:800px){.creator{grid-template-columns:1fr;gap:48px}}.creator .portrait{aspect-ratio:3/4;background:linear-gradient(#c0c9e00d,#0a0e2799),radial-gradient(at 50% 30%,#d4af3714,#0000 60%);border:1px solid #c0c9e024;justify-content:center;align-items:center;display:flex;position:relative}.creator .portrait .silhouette{font-family:var(--serif-en);letter-spacing:.3em;color:var(--text-faint);writing-mode:vertical-rl;font-size:12px;font-style:italic;position:absolute;top:16px;right:12px}.creator .portrait img{opacity:.6;filter:drop-shadow(0 0 24px #d4af3733);width:60%}.creator .text h2{margin-bottom:36px}.creator .text .body-jp{max-width:580px}.creator .text .actions{flex-wrap:wrap;gap:18px;margin-top:16px;display:flex}footer{padding:140px var(--gutter) 60px;background:radial-gradient(ellipse at 50% 0%, #d4af370d, transparent 60%), linear-gradient(180deg, var(--bg) 0%, var(--bg-deep) 100%);text-align:center;border-top:1px solid #c0c9e014;position:relative}footer .final{max-width:580px;margin:0 auto 100px}footer .final h2{font-family:var(--serif-jp);letter-spacing:.06em;margin:0 0 56px;font-size:clamp(24px,3.2vw,36px);font-weight:300;line-height:1.7}footer form.signup{border:1px solid var(--gold-soft);gap:0;max-width:520px;margin:0 auto;transition:border-color .4s,box-shadow .4s;display:flex}footer form.signup:focus-within{border-color:var(--gold);box-shadow:0 0 36px #d4af3733}footer form.signup input{color:var(--text);font-family:var(--sans-jp);letter-spacing:.08em;background:0 0;border:none;outline:none;flex:1;min-width:0;padding:18px 22px;font-size:14px}footer form.signup input::placeholder{color:var(--text-faint);letter-spacing:.14em}footer form.signup button{border:none;border-left:1px solid var(--gold-soft);color:var(--text);font-family:var(--sans-jp);letter-spacing:.18em;cursor:pointer;white-space:nowrap;background:0 0;padding:0 28px;font-size:13px;transition:background .4s}footer form.signup button:hover{background:var(--gold-faint)}@media (max-width:560px){footer form.signup{flex-direction:column}footer form.signup button{border-left:none;border-top:1px solid var(--gold-soft);padding:16px}}footer .signup-success{font-family:var(--serif-en);letter-spacing:.2em;color:var(--gold);opacity:0;margin-top:18px;font-size:14px;font-style:italic;transition:opacity .6s}footer .signup-success.in{opacity:1}footer .bottom{letter-spacing:.22em;color:var(--text-faint);border-top:1px solid #c0c9e014;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:32px;padding-top:60px;font-size:11px;display:flex}footer .bottom .brand{font-family:var(--serif-en);letter-spacing:.32em;color:var(--silver-dim);text-transform:none;font-size:16px;font-style:italic}footer .bottom ul{flex-wrap:wrap;gap:28px;margin:0;padding:0;list-style:none;display:flex}footer .bottom a:hover{color:var(--text)}.lullune{font-family:var(--serif-en);letter-spacing:.12em;font-style:italic}
