*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#fafafa;--text:#141414;--text-muted:#6b6b6b;--accent:#2a2a2a;--glow:#0000000a;--font-display:"Cormorant Garamond", "Times New Roman", serif;--font-jp:"Noto Serif JP", "Hiragino Mincho ProN", serif}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-display);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow:hidden}.page{isolation:isolate;justify-content:center;align-items:center;min-height:100dvh;display:flex;position:relative}.glow{filter:blur(120px);pointer-events:none;border-radius:50%;animation:8s ease-in-out infinite alternate breathe;position:absolute}.glow--top{background:var(--glow);opacity:.8;width:60vw;height:40vh;top:-20%;left:50%;translate:-50%}.glow--bottom{background:#00000008;width:50vw;height:50vh;animation-delay:-4s;bottom:-30%;right:-10%}@keyframes breathe{0%{opacity:.5;transform:scale(.95)}to{opacity:.9;transform:scale(1.05)}}.noise{opacity:.025;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px;position:absolute;inset:0}.content{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:2.5rem;padding:2rem;animation:2s ease-out both fade-in;display:flex;position:relative}@keyframes fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.brand{flex-direction:column;align-items:center;gap:.6rem;font-weight:300;line-height:1;display:flex}.brand-en{font-family:var(--font-display);letter-spacing:.55em;text-indent:.55em;color:var(--text);margin-right:-.55em;font-size:clamp(3rem,10vw,5.5rem);font-weight:300}.brand-jp{font-family:var(--font-jp);letter-spacing:.35em;color:var(--text-muted);margin-right:-.35em;font-size:clamp(1.25rem,3.5vw,1.65rem);font-weight:400}.divider{background:linear-gradient(to bottom, transparent, var(--accent) 30%, var(--accent) 70%, transparent);opacity:.35;width:1px;height:3rem}.tagline{font-family:var(--font-display);letter-spacing:.45em;color:var(--text-muted);margin-right:-.45em;font-size:clamp(.8rem,2.2vw,.95rem);font-weight:500;animation:5s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.7}50%{opacity:1}}@media (width<=480px){.brand-en{letter-spacing:.35em;text-indent:.35em;margin-right:-.35em}.content{gap:2rem}}
