:root{color-scheme:dark;--bg: #04030a;--panel: rgba(10, 14, 26, .72);--panel-strong: rgba(18, 24, 42, .9);--line: rgba(255, 255, 255, .12);--text: #f3f3ef;--muted: #b3bcc8;--acid: #7bff4f;--cyan: #4ce3ff;--rose: #ff6db2;--shadow: 0 24px 80px rgba(0, 0, 0, .45)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;min-height:100vh;font-family:Space Grotesk,sans-serif;color:var(--text);background:radial-gradient(circle at top left,rgba(123,255,79,.14),transparent 28%),radial-gradient(circle at 80% 20%,rgba(76,227,255,.16),transparent 22%),radial-gradient(circle at bottom right,rgba(255,109,178,.14),transparent 26%),linear-gradient(135deg,#020204,#080913 55%,#020204);overflow-x:hidden}a,button{-webkit-tap-highlight-color:transparent}button{font:inherit}#root{position:relative;min-height:100vh}.ambient{position:fixed;inset:auto;width:30rem;height:30rem;border-radius:999px;filter:blur(60px);opacity:.42;pointer-events:none;animation:drift 14s ease-in-out infinite alternate}.ambient-a{top:-8rem;left:-8rem;background:#4ce3ff38}.ambient-b{right:-10rem;bottom:8rem;background:#ff6db22e;animation-duration:18s}.noise{position:fixed;inset:0;pointer-events:none;opacity:.08;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:3px 3px,3px 3px;mix-blend-mode:soft-light}.page-shell{position:relative;z-index:1;width:min(1200px,calc(100% - 32px));margin:0 auto;padding:24px 0 72px}.hero-panel,.manifesto-panel{position:relative;overflow:hidden;padding:28px;border:1px solid var(--line);border-radius:28px;background:linear-gradient(180deg,#ffffff0f,#ffffff05);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.hero-panel:before,.manifesto-panel:before{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(123,255,79,.08),transparent 25%),linear-gradient(300deg,rgba(76,227,255,.08),transparent 30%);pointer-events:none}.eyebrow-row,.section-heading{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap}.eyebrow,.section-heading p,.contact-header p{margin:0;font-size:.85rem;letter-spacing:.22em;text-transform:uppercase;color:var(--acid)}.hero-copy{padding:72px 0 48px}.hero-kicker,.hero-description,.showcase-card p,.contact-copy{color:var(--muted)}.hero-kicker{margin:0 0 16px;font-size:.95rem}.hero-copy h1{margin:0;font-family:Orbitron,sans-serif;font-size:clamp(4rem,12vw,9rem);line-height:.94;text-transform:uppercase;letter-spacing:.06em;text-shadow:0 0 24px rgba(76,227,255,.28),0 0 48px rgba(123,255,79,.14)}.hero-description{width:min(44rem,100%);margin:20px 0 0;font-size:1.05rem;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.primary-button,.close-button{border:0;cursor:pointer}.primary-button{padding:14px 22px;border-radius:999px;background:linear-gradient(90deg,var(--acid),#d9ff7a);color:#041106;font-weight:700;transition:transform .18s ease,box-shadow .18s ease;box-shadow:0 10px 30px #7bff4f47}.primary-button:hover,.primary-button:focus-visible{transform:translateY(-2px);box-shadow:0 14px 40px #7bff4f57}.slogan-link{color:var(--text);font-family:Noto Sans JP,sans-serif;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.45);padding-bottom:4px}.fact-grid,.showcase-grid,.manifesto-grid,.contact-grid{display:grid;gap:16px}.fact-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:34px}.fact-card,.showcase-card,.manifesto-card,.contact-modal{background:var(--panel);border:1px solid var(--line);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.fact-card{padding:18px;border-radius:18px}.fact-card span,.contact-grid span{display:block;margin-bottom:8px;color:var(--muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.08em}.fact-card strong,.contact-grid strong{font-size:1rem;word-break:break-word}.rail-section{padding:28px 0}.section-heading h2,.contact-modal h2{margin:8px 0 0;font-size:clamp(1.8rem,4vw,3rem)}.showcase-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:22px}.showcase-card{padding:16px;border-radius:22px}.showcase-art{position:relative;display:grid;place-items:center;min-height:280px;margin-bottom:18px;border-radius:18px;overflow:hidden;background:linear-gradient(140deg,#7bff4f2e,#4ce3ff24),radial-gradient(circle at center,rgba(255,255,255,.08),transparent 55%),linear-gradient(180deg,#ffffff14,#0000003d);border:1px solid rgba(255,255,255,.16)}.showcase-art span{position:relative;z-index:1;font-family:Orbitron,sans-serif;font-size:3rem;opacity:.9}.scan-line{position:absolute;inset:-20% 0 auto;height:36%;background:linear-gradient(180deg,transparent,rgba(255,255,255,.18),transparent);animation:sweep 4.4s linear infinite}.showcase-card h3{margin:0 0 10px;font-size:1.2rem}.manifesto-panel{margin-top:12px}.manifesto-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:22px}.manifesto-card{padding:24px;border-radius:22px;line-height:1.8}.footer{position:relative;z-index:1;display:flex;justify-content:center;padding:0 16px 28px;color:var(--muted);text-align:center}.contact-backdrop{position:fixed;inset:0;z-index:20;display:grid;place-items:center;padding:20px;background:#000000a8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.contact-modal{width:min(760px,100%);padding:24px;border-radius:28px;box-shadow:var(--shadow)}.contact-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.close-button{width:40px;height:40px;border-radius:999px;background:#ffffff14;color:var(--text);font-size:1.4rem}.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px}.contact-grid>div{padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--panel-strong)}@keyframes drift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(24px,-30px,0) scale(1.08)}}@keyframes sweep{0%{transform:translateY(-120%)}to{transform:translateY(360%)}}@media(max-width:900px){.fact-grid,.showcase-grid,.manifesto-grid,.contact-grid{grid-template-columns:1fr}.hero-copy{padding-top:44px}.hero-copy h1{font-size:clamp(3.2rem,18vw,6rem)}}@media(max-width:640px){.page-shell{width:min(100% - 20px,1200px);padding-top:12px}.hero-panel,.manifesto-panel,.contact-modal{padding:18px;border-radius:22px}.showcase-art{min-height:220px}.hero-description{font-size:.98rem}}
