@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700&family=Inter:wght@300;400;500;600;700&family=Orbitron:wght@400;700;800&display=swap";*{box-sizing:border-box;margin:0;padding:0}:root{--bg:#07080f;--bg-mid:#0c0e1a;--bg-card:#0e1019;--bg-card-hover:#151828;--text:#ede8e3;--text-dim:#5c5f70;--text-soft:#a09da8;--border:#1a1528;--red:#e63946;--red-deep:#c1121f;--red-glow:#e6394626;--red-glow-strong:#e6394659;--blue:#4ea8de;--blue-bright:#60b5f0;--blue-glow:#4ea8de1f;--yellow:#f4c542;--yellow-glow:#f4c5421a;--purple:#8b5cf6;--purple-glow:#8b5cf61f;--green:#6ee7a0;--green-glow:#6ee7a01f;--amber:#e8b44a;--amber-glow:#e8b44a1a;--pink:#e8457a;--pink-glow:#e8457a1f;--gray-dot:#3a3d4a}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:Inter,Noto Sans JP,-apple-system,sans-serif;line-height:1.7;overflow-x:hidden}nav{z-index:100;backdrop-filter:blur(20px);border-bottom:1px solid var(--border);background:#07080fe6;justify-content:space-between;align-items:center;padding:1.25rem 2rem;display:flex;position:fixed;top:0;left:0;right:0}.logo{letter-spacing:.04em;color:var(--text);font-family:Orbitron,sans-serif;font-size:1.3rem;font-weight:800;text-decoration:none}.logo .accent{color:var(--red)}.logo .jp{color:var(--text-dim);letter-spacing:.15em;margin-left:.6rem;font-family:Noto Sans JP,sans-serif;font-size:.7rem;font-weight:300}.nav-links{align-items:center;gap:2rem;display:flex}.nav-links a{color:var(--text-dim);font-size:.85rem;font-weight:500;text-decoration:none;transition:color .2s}.nav-links a:hover,.nav-links a.active{color:var(--red)}.btn-primary{color:var(--red);text-transform:uppercase;letter-spacing:.08em;border:1px solid var(--red);cursor:pointer;background:0 0;border-radius:4px;align-items:center;gap:.5rem;padding:.65rem 1.6rem;font-family:Orbitron,sans-serif;font-size:.8rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-flex}.btn-primary:hover{background:var(--red);color:#fff;box-shadow:0 0 20px var(--red-glow), 0 0 40px var(--red-glow)}.btn-fill{background:var(--red);color:#fff;border-color:var(--red)}.btn-fill:hover{box-shadow:0 0 30px var(--red-glow-strong), 0 0 60px var(--red-glow-strong);background:#d42d3a}.btn-blue{border-color:var(--blue);color:var(--blue)}.btn-blue:hover{background:var(--blue);color:var(--bg);box-shadow:0 0 20px var(--blue-glow), 0 0 50px var(--blue-glow)}.btn-pink{border-color:var(--pink);color:var(--pink)}.btn-pink:hover{background:var(--pink);color:var(--bg);box-shadow:0 0 20px var(--pink-glow)}section{padding:8rem 2rem;position:relative}.container{max-width:1100px;margin:0 auto}.section-label{color:var(--red);letter-spacing:.3em;text-transform:uppercase;opacity:.6;margin-bottom:.5rem;font-family:Noto Sans JP,sans-serif;font-size:.8rem;font-weight:300}.section-title{margin-bottom:1rem;font-family:Orbitron,sans-serif;font-size:clamp(1.8rem,3.5vw,2.6rem);font-weight:700;line-height:1.2}.section-sub{color:var(--text-soft);max-width:600px;font-size:1.05rem;font-weight:300;line-height:1.8}.centered{text-align:center}.centered .section-sub{margin:0 auto}.accent-line{background:linear-gradient(90deg, var(--red), var(--blue));opacity:.7;width:60px;height:1px;margin:0 auto 2rem}.hero-content{z-index:2;position:relative}.hero-jp{color:var(--red);letter-spacing:.4em;opacity:.8;text-shadow:0 0 20px var(--red-glow);margin-bottom:1.5rem;font-family:Noto Sans JP,sans-serif;font-size:clamp(.85rem,1.2vw,1rem);font-weight:300}.hero-sub{color:var(--text-soft);max-width:580px;margin:0 auto;font-size:clamp(1rem,1.5vw,1.2rem);font-weight:300;line-height:1.8}.hero-buttons{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.trails-container{animation:6s ease-out forwards trails-fade}@keyframes trails-fade{0%,60%{opacity:1}to{opacity:0}}.light-trail{opacity:0;pointer-events:none;border-radius:2px;height:2px;animation:linear infinite streak;position:absolute}.light-trail.red,.light-trail.trail-red{background:linear-gradient(90deg, transparent, var(--red), var(--red), transparent);box-shadow:0 0 12px var(--red-glow-strong), 0 0 4px var(--red)}.light-trail.blue,.light-trail.trail-blue{background:linear-gradient(90deg, transparent, var(--blue), var(--blue-bright), transparent);box-shadow:0 0 10px var(--blue-glow), 0 0 4px var(--blue)}.light-trail.yellow{background:linear-gradient(90deg, transparent, var(--yellow), var(--yellow), transparent);box-shadow:0 0 8px var(--yellow-glow), 0 0 3px var(--yellow);height:1px}@keyframes streak{0%{opacity:0;transform:translate(-120%)scaleX(.3)}8%{opacity:.7}50%{opacity:.5;transform:translate(20%)scaleX(1)}90%{opacity:.2}to{opacity:0;transform:translate(120%)scaleX(.5)}}.energy-particle{opacity:0;pointer-events:none;border-radius:50%;width:3px;height:3px;animation:ease-in-out infinite float-up;position:absolute}@keyframes float-up{0%{opacity:0;transform:translateY(0)scale(.5)}15%{opacity:.6}50%{opacity:.3;transform:translateY(-40vh)scale(1)}to{opacity:0;transform:translateY(-80vh)scale(.3)}}.grid-overlay{background-image:linear-gradient(var(--border) 1px, transparent 1px), linear-gradient(90deg, var(--border) 1px, transparent 1px);opacity:.12;pointer-events:none;background-size:80px 80px;position:absolute;inset:0}.cta-section{text-align:center;padding:10rem 2rem;position:relative}.cta-logo{z-index:2;margin-bottom:1rem;font-family:Orbitron,sans-serif;font-size:clamp(2rem,4vw,3rem);font-weight:800;position:relative}.cta-tagline{color:var(--red);letter-spacing:.3em;opacity:.6;text-shadow:0 0 15px var(--red-glow);z-index:2;margin-bottom:2.5rem;font-family:Noto Sans JP,sans-serif;font-size:1rem;position:relative}.divider{background:linear-gradient(90deg, transparent, var(--border), var(--red-glow), var(--blue-glow), var(--border), transparent);width:100%;height:1px}footer{text-align:center;color:var(--text-dim);padding:3rem 2rem;font-size:.78rem;font-weight:300}footer .jp-footer{opacity:.3;letter-spacing:.2em;margin-top:.5rem;font-family:Noto Sans JP,sans-serif;font-size:.65rem}@media (width<=768px){nav{padding:1rem 1.2rem}.nav-links{gap:1rem}.nav-links a:not(.btn-primary){display:none}section{padding:5rem 1.2rem}.hero-buttons{flex-direction:column;align-items:center}}