@font-face{font-family:FluxDisplay;src:url(https://cdn.jsdelivr.net/gh/projectnoonnu/noon-2410@1.0/NoonnuBasicGothicRegular.woff2);font-display:swap}:root{--bg:#08101e;--ink:#f4f6fb;--muted:#8e9ab0;--line:rgba(206,220,255,.18);--blue:#71a2ff;--cyan:#8ce8e0;--violet:#887cff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 Flux,sans-serif;letter-spacing:-.025em;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;z-index:-2;background:radial-gradient(circle at var(--mx,50%) var(--my,10%),rgba(76,110,255,.25),transparent 28%),radial-gradient(circle at 80% 70%,rgba(78,221,205,.11),transparent 25%),var(--bg)}body:after{content:"";position:fixed;inset:0;z-index:10;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence baseFrequency='.8' numOctaves='3'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}a{color:inherit;text-decoration:none}.wrap{width:min(1240px,calc(100% - 64px));margin:auto}.topbar{height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:4}.logo{font:600 24px FluxDisplay;letter-spacing:-.08em}.logo-mark{display:inline-grid;place-items:center;width:28px;height:28px;margin-right:9px;border:1px solid var(--line);border-radius:50%;color:var(--cyan);font:600 13px Flux}.nav{display:flex;gap:28px;color:var(--muted);font-size:13px}.nav a:hover{color:var(--ink)}.nav .lang{color:var(--cyan)}.hero{min-height:850px;display:grid;place-items:center;position:relative}.hero-inner{width:100%;display:grid;grid-template-columns:.92fr 1.08fr;gap:50px;align-items:center}.eyebrow{color:var(--cyan);font-size:11px;letter-spacing:.18em;text-transform:uppercase}.hero h1{font:400 clamp(60px,9vw,136px)/.86 FluxDisplay;letter-spacing:-.11em;margin:24px 0}.hero h1 em{font-style:normal;color:var(--blue)}.hero-copy p{color:var(--muted);font-size:18px;max-width:360px}.hero-link{display:inline-block;margin-top:22px;color:var(--cyan);font-weight:600}.hero-link:after{content:' ↗'}.orbital{aspect-ratio:1;max-width:610px;justify-self:end;position:relative;display:grid;place-items:center}.orbital:before,.orbital:after{content:"";position:absolute;border:1px solid var(--line);border-radius:50%;inset:12%;transform:rotate(-24deg) scaleX(.55);animation:spin 18s linear infinite}.orbital:after{inset:22%;transform:rotate(54deg) scaleX(.6);animation-duration:13s;animation-direction:reverse;border-color:rgba(140,232,224,.35)}.core{width:30%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#7ba9ff 18%,#3748bb 55%,#10152e 75%);box-shadow:0 0 70px #7088ff99,0 0 160px #4c6dff44;animation:breathe 4s ease-in-out infinite;z-index:2}.node{position:absolute;width:12px;height:12px;border-radius:50%;background:var(--cyan);box-shadow:0 0 22px var(--cyan);z-index:3}.n1{top:16%;left:22%}.n2{right:14%;top:37%;background:var(--blue)}.n3{left:18%;bottom:23%;background:var(--violet)}.n4{right:24%;bottom:13%}.signal{position:absolute;inset:0;z-index:1}.signal path{fill:none;stroke:rgba(140,232,224,.45);stroke-width:1;stroke-dasharray:5 10;animation:dash 5s linear infinite}.scene{min-height:760px;padding:120px 0;position:relative;overflow:hidden;border-top:1px solid var(--line)}.scene-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:90px;align-items:center}.scene h2,.final h2{font:400 clamp(48px,7vw,92px)/.9 FluxDisplay;letter-spacing:-.1em;margin:18px 0}.scene-copy p{color:var(--muted);font-size:19px;max-width:400px}.visual{min-height:390px;position:relative}.visual:before{content:"";position:absolute;inset:10% 8%;border:1px solid var(--line);transform:rotate(-5deg);border-radius:28px}.bok-visual .circle{position:absolute;width:210px;height:210px;border-radius:50%;left:25%;top:22%;background:linear-gradient(135deg,#8ce8e0,#3069d6);box-shadow:0 0 80px #49c5df66}.bok-visual .ring{position:absolute;width:310px;height:310px;border:1px solid #71a2ff99;border-radius:50%;left:15%;top:9%;animation:spin 12s linear infinite}.bok-visual .label{position:absolute;right:8%;bottom:13%;padding:14px 18px;border:1px solid var(--line);background:#101a30cc;backdrop-filter:blur(12px);border-radius:12px;color:var(--cyan)}.mini-visual{display:flex;align-items:center;justify-content:center;gap:10px}.flow-card{width:145px;height:170px;padding:18px;border:1px solid var(--line);background:#101a30;display:flex;flex-direction:column;justify-content:space-between;transform:rotate(var(--r));box-shadow:0 20px 50px #0005}.flow-card b{font-size:12px;color:var(--cyan)}.flow-card strong{font:400 28px FluxDisplay}.flow-card small{color:var(--muted)}.flow-line{width:60px;height:1px;background:linear-gradient(90deg,var(--blue),var(--cyan));position:relative}.flow-line:after{content:"";position:absolute;width:7px;height:7px;border-radius:50%;background:var(--cyan);top:-3px;animation:travel 2s linear infinite}.final{min-height:680px;display:grid;place-items:center;text-align:center;position:relative}.final:before{content:"";position:absolute;width:500px;height:500px;background:radial-gradient(circle,rgba(112,162,255,.3),transparent 65%);animation:breathe 5s ease-in-out infinite}.final h2,.final a{position:relative;z-index:1}.final a{display:inline-block;margin-top:30px;padding:15px 24px;border:1px solid var(--cyan);border-radius:99px;color:var(--cyan);transition:.3s}.final a:hover{background:var(--cyan);color:var(--bg)}.footer{padding:25px 0;border-top:1px solid var(--line);color:var(--muted);font-size:13px;display:flex;justify-content:space-between}.reveal{opacity:0;transform:translateY(25px);transition:opacity .8s,transform .8s}.visible{opacity:1;transform:none}@keyframes spin{to{transform:rotate(336deg) scaleX(.55)}}@keyframes breathe{50%{transform:scale(1.08);filter:brightness(1.2)}}@keyframes dash{to{stroke-dashoffset:-60}}@keyframes travel{to{left:100%}}@media(max-width:800px){.wrap{width:calc(100% - 40px)}.topbar{height:70px}.nav{gap:12px}.nav a:not(.lang){display:none}.hero{min-height:760px}.hero-inner,.scene-grid{grid-template-columns:1fr;gap:35px}.hero h1{font-size:clamp(58px,16vw,92px)}.orbital{width:100%;max-width:440px;justify-self:center}.scene{min-height:680px;padding:90px 0}.scene-grid{gap:30px}.scene h2{font-size:clamp(52px,13vw,78px)}.visual{min-height:320px}.flow-card{width:105px;height:140px;padding:12px}.flow-card strong{font-size:22px}.flow-line{width:20px}.final{min-height:560px}.final:before{width:330px;height:330px}.footer{display:block}.footer span{display:block;margin-top:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.orbital:before,.orbital:after,.core,.ring,.final:before,.signal path,.flow-line:after{animation:none}.reveal{opacity:1;transform:none;transition:none}}
/* Visual QA fixes */
.orbital{width:100%;justify-self:end}
@media(max-width:800px){.mini-visual{width:100%;gap:5px}.flow-card{width:calc((100% - 50px)/3);min-width:0}.flow-line{flex:0 0 12px;width:12px}.flow-card strong{font-size:clamp(18px,5vw,22px)}.flow-card small{font-size:11px}}
/* Browser visual QA: prevent hero overflow and Korean orphan lines */
.hero-inner{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}.hero-copy{min-width:0}.hero h1{max-width:100%;word-break:keep-all}.orbital{min-width:0}
@media(min-width:801px){.hero h1{font-size:clamp(58px,7.2vw,108px)}}
@media(max-width:800px){.hero h1{font-size:clamp(48px,13.2vw,68px);line-height:.9;letter-spacing:-.12em}.hero-copy p{font-size:17px}.hero{overflow:hidden}}
/* Final alignment correction */
.hero-inner{width:min(1240px,calc(100% - 64px));margin-left:auto;margin-right:auto}
@media(max-width:800px){.hero-inner{width:calc(100% - 40px);grid-template-columns:1fr}.orbital{width:100%;max-width:440px;justify-self:center}}
