:root{color-scheme:dark;--cyan:#16e6ff;--purple:#b775ff;--white:#f3f7ff;--brain-brightness:1;--brain-x:0px;--brain-y:0px}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#010916;color:var(--white);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}html{overflow-x:hidden}body{overflow-x:hidden}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #7cffff;outline-offset:5px}svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon-library{position:absolute;width:0;height:0;overflow:hidden}.page{position:relative;width:100%;max-width:2400px;height:100svh;min-height:620px;margin:auto;isolation:isolate;overflow:hidden}.header,.ambient,.eyebrow,.hero-detail,.platform-note,.horizon,.orbit-base,.orb-number{display:none}.page>main{position:absolute;inset:0}.experience{position:absolute;inset:0;isolation:isolate}.scene-layer{position:absolute;inset:0;z-index:-3;background:#010916 url('scene-v2.webp') center center/cover no-repeat}.scene-layer:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,#00101c05 65%,#010d1bdd 91%,#010a15ee)}.brain-art{position:absolute;z-index:-1;left:50%;top:-2.5%;width:min(63vw,107svh);height:68%;transform:translateX(-50%);pointer-events:none;filter:drop-shadow(0 0 18px #0169ff40)}.brain-art img{height:100%;width:100%;object-fit:contain;filter:brightness(var(--brain-brightness)) saturate(1.15);transform:translate3d(var(--brain-x),var(--brain-y),0);animation:breathe 5s ease-in-out infinite;will-change:transform;transition:filter .5s}#neural-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none}.brain-fallback{display:none}.hero-copy{position:absolute;left:27%;right:27%;top:19.5%;text-align:center;z-index:3;pointer-events:none}.hero-copy:before{content:"";position:absolute;inset:-16% -9% -20%;z-index:-1;background:radial-gradient(ellipse,#00132df5 20%,#00132dcc 48%,transparent 72%);filter:blur(7px)}h1{position:relative;white-space:nowrap;font-size:clamp(64px,min(7.6vw,12svh),150px);font-weight:900;font-style:italic;letter-spacing:-.055em;line-height:1;margin:0;color:#f5f7ff;text-shadow:0 0 22px #2c73f43b}h1 span{color:#12e3ff;text-shadow:0 0 25px #00bdff88}.logo-swoosh{position:absolute;width:48%;height:90%;right:10%;top:-62%;color:#b985ff;stroke-width:7;filter:drop-shadow(0 0 7px #9852ff80);overflow:visible}.tagline{font-size:clamp(15px,min(2.1vw,3.5svh),33px);line-height:1.2;margin:13px -20% 0;white-space:nowrap;text-shadow:0 2px 10px #010413}.tagline strong{font-weight:700}.nodes{position:absolute;inset:0;z-index:5;pointer-events:none}.node{position:absolute;display:flex;gap:12px;align-items:center;padding:13px 18px;min-width:125px;min-height:58px;color:#eef7ff;font-size:clamp(13px,1.3vw,21px);font-weight:600;line-height:1.12;text-align:left;pointer-events:auto;border:1px solid #398fffb0;border-radius:14px;background:linear-gradient(130deg,#0e4775a6,#06132bea 70%);box-shadow:inset 0 0 13px #80c0ff30,0 0 16px #218bff35;transition:box-shadow .2s,translate .2s}.node svg{color:#07e5ff;width:clamp(25px,2.6vw,40px);height:clamp(25px,2.6vw,40px);filter:drop-shadow(0 0 5px #03ceff88)}.node:hover,.node:focus-visible,.node.selected{box-shadow:inset 0 0 20px #2bd7ff33,0 0 25px #0ad6ff70;translate:0 -3px}.node small{position:absolute;left:0;top:calc(100% + 8px);width:230px;max-width:65vw;padding:12px;border:1px solid #3792ba80;border-radius:10px;background:#04172cf5;box-shadow:0 8px 25px #0008;font-size:12px;line-height:1.5;font-weight:400;color:#c7e4f5;visibility:hidden;opacity:0;transition:opacity .2s;pointer-events:none}.node:hover small,.node:focus-visible small,.node.selected small{visibility:visible;opacity:1}.node-chat small,.node-auto small,.node-process small{left:auto;right:0}.node-crm{left:20%;top:5.5%;transform:rotate(7deg)}.node-erp{left:14.5%;top:17%;transform:rotate(5deg)}.node-data{left:17%;top:30.5%}.node-chat{right:14%;top:5.5%;transform:rotate(-6deg)}.node-auto{right:10%;top:17.5%;transform:rotate(-4deg);border-color:#a064ff99;box-shadow:inset 0 0 15px #9955ff33,0 0 17px #a358ff30}.node-process{right:13%;top:30.5%}.scoreboard{position:absolute;top:1.6%;right:1.6%;z-index:9;padding:9px 13px;border:1px solid #23668499;border-radius:15px;background:#011222bd;box-shadow:0 0 25px #0b91a012;text-align:right;font-size:clamp(13px,1.35vw,20px);font-weight:600;line-height:1.2}.scoreboard>div{white-space:nowrap}.scoreboard>div>span{margin-right:4px}.scoreboard strong{font-variant-numeric:tabular-nums;color:#fff}.scoreboard small{display:block;font-size:9px;font-weight:400;color:#9bb4cb;letter-spacing:.4px;margin-top:7px;white-space:nowrap}.score-divider{color:#17d7f2;margin:0 5px}#score-gain{position:absolute;right:14px;top:100%;font-size:20px;font-weight:700;color:#85fcff;opacity:0;pointer-events:none;text-shadow:0 0 16px #00e1ff}#score-gain.pop{animation:score-pop .85s ease-out}.obstacles{position:absolute;inset:0;z-index:4;pointer-events:none}.orb{--orb-size:clamp(110px,min(13.6vw,23svh),260px);position:absolute;left:11%;top:40%;width:var(--orb-size);height:var(--orb-size);padding:0;border:0;border-radius:50%;background:none;transform:translateX(-50%);animation:float 5s ease-in-out infinite;pointer-events:auto;transition:filter .25s;isolation:isolate}.orb:nth-child(2){left:25%;top:47%;animation-delay:-1.6s;--orb-size:clamp(105px,min(11.5vw,20svh),230px)}.orb:nth-child(3){left:39%;top:46%;animation-delay:-2.6s;--orb-size:clamp(110px,min(12vw,21svh),235px)}.orb:nth-child(4){left:74%;top:48%;animation-delay:-3.5s;--orb-size:clamp(105px,min(11.2vw,20svh),225px)}.orb:nth-child(5){left:89%;top:41.5%;animation-delay:-.7s;--orb-size:clamp(120px,min(14vw,24svh),270px)}.orb-inner{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;border-radius:50%;background:url('orb-v2.webp') center/contain no-repeat;filter:drop-shadow(0 0 12px #8945ed52);transition:transform .2s,opacity .25s,filter .25s;will-change:transform}.orb-inner:before{content:"";position:absolute;inset:27%;border-radius:50%;background:#030b2c70;filter:blur(12px);z-index:-1}.orb-inner:after{content:"";position:absolute;left:-4%;right:-4%;bottom:-12%;height:15%;border-radius:50%;background:radial-gradient(ellipse,#9e5cfd45,transparent 65%);filter:blur(6px)}.orb-inner svg{width:clamp(25px,2.6vw,38px);height:clamp(25px,2.6vw,38px);color:#c999ff;filter:drop-shadow(0 0 4px #d276ff66)}.orb-inner>span{font-weight:600;font-size:clamp(12px,min(1.5vw,2.7svh),23px);line-height:1.08;max-width:74%;overflow-wrap:normal;text-align:center;text-shadow:0 1px 8px #02031d,0 1px 3px #000}.orb:nth-child(2) .orb-inner{filter:hue-rotate(-10deg) drop-shadow(0 0 10px #7646cd55)}.orb:nth-child(4) .orb-inner{filter:hue-rotate(12deg) drop-shadow(0 0 10px #247dff55)}.orb:hover .orb-inner,.orb:focus-visible .orb-inner{transform:scale(1.08);filter:brightness(1.22) drop-shadow(0 0 20px #bc61ffb0)}.orb:hover{animation-play-state:paused}.orb.broken{pointer-events:none;animation-play-state:paused}.orb.broken .orb-inner{transform:scale(1.24);opacity:0;filter:brightness(3)}.orb.respawning .orb-inner{animation:materialize .5s ease-out}.orb.long-title .orb-inner>span{font-size:clamp(11px,min(1.24vw,2.15svh),19px)}.orb.long-title .orb-inner{gap:5px}.game-caption{position:absolute;top:70%;left:8%;right:8%;height:17%;z-index:5;text-align:center}.journey{margin:0;font-size:clamp(17px,min(1.9vw,3.3svh),30px);line-height:1.2;letter-spacing:.1px;text-shadow:0 2px 10px #000}h2{font-size:clamp(14px,min(1.65vw,2.8svh),25px);color:var(--cyan);font-weight:400;line-height:1.2;margin:13px 0 0;text-shadow:0 0 15px #012c42}.game-hint{font-size:10px;letter-spacing:.5px;color:#86a4be;margin:10px 0 0}.progress-row{display:flex;justify-content:center;align-items:center;gap:23px;margin-top:23px;font-size:10px;color:#9ccde3}.progress-label{display:none}.progress{display:flex;gap:45px;align-items:center}.progress i{display:block;width:23px;height:23px;border:2px solid #5a91bd;border-radius:50%;background:#052039;position:relative;font-style:normal;box-shadow:0 0 10px #188dfb20}.progress i:after{content:"";position:absolute;top:8px;left:21px;width:45px;height:3px;background:linear-gradient(90deg,#7ebeff,#4987ad);box-shadow:0 0 9px #007cff77}.progress i:last-child:after{display:none}.progress i.done{border-color:#72f8ff;background:#0b546e;box-shadow:0 0 15px #00e6ff8c}.progress i.done:before{content:"✓";position:absolute;left:2px;top:-2px;font-size:19px;color:#d9ffff;line-height:20px}.progress i.done:after{background:#22eaff;box-shadow:0 0 10px #00eaff}#progress-count{min-width:35px}.completion{position:absolute;top:-3px;left:0;right:0;animation:reveal .4s ease-out}.completion p{font-size:clamp(16px,2vw,29px);line-height:1.3;margin:0}.completion p br{display:none}.completion strong{color:var(--cyan);font-weight:400;margin-left:8px}.replay{display:inline-flex;align-items:center;gap:7px;border:1px solid #3dc8e56b;border-radius:20px;padding:6px 13px;color:#bcefff;background:#03233e;font-size:10px;margin-top:9px}.replay svg{width:12px;height:12px}.activated .journey,.activated h2{visibility:hidden}.activated .game-hint{visibility:hidden}.activated .brain-art{filter:drop-shadow(0 0 26px #07d6ff66)}.footer{position:absolute;left:16%;right:12%;bottom:4.5%;min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:25px;z-index:6}.footer>div{flex:1}.footer-label{font-size:clamp(17px,1.85vw,28px);font-weight:400;line-height:1.2;letter-spacing:.1px;text-shadow:0 2px 8px #000}.footer p{font-size:10px;color:#829db8;margin:8px 0 0;line-height:1.2}.contact{display:flex;align-items:center;gap:11px;white-space:nowrap;border:1px solid #6feaff;border-radius:35px;padding:13px 22px;font-size:clamp(13px,1.3vw,20px);font-weight:600;background:linear-gradient(110deg,#073858a8,#171c40aa);box-shadow:-5px 0 16px #04e4ff66,5px 0 16px #af55ff66,inset 0 0 12px #31b4ff2b;transition:box-shadow .25s}.contact:hover{box-shadow:0 0 28px #00eaff90}.contact svg{width:24px;height:24px;color:#90edff}.contact svg:last-child{margin-left:10px;color:#c08dff}.bottom-line{position:absolute;bottom:1%;left:3%;right:3%;display:flex;justify-content:space-between;align-items:center;font-size:7px;letter-spacing:1.3px;color:#6986a2;z-index:7}.bottom-line>span:nth-child(2){display:none}.bottom-line button{font-size:9px;color:#96afc5;padding:4px 8px;border:0;background:#00102160;border-radius:12px}.skip{position:fixed;top:-100px;left:10px;z-index:30;background:#092f46;padding:12px}.skip:focus-visible{top:10px}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.no-script{position:fixed;bottom:0;left:0;right:0;z-index:20;padding:10px;background:#071c31;text-align:center;font-size:12px}.motion-paused *{animation-play-state:paused!important}.canvas-unavailable .brain-art{display:block}@keyframes breathe{0%,100%{transform:translate3d(var(--brain-x),var(--brain-y),0) scale(1)}50%{transform:translate3d(var(--brain-x),var(--brain-y),0) scale(1.018)}}@keyframes float{0%,100%{translate:0 0}50%{translate:0 -9px}}@keyframes materialize{from{transform:scale(.35);opacity:0;filter:brightness(2.5)}to{transform:scale(1);opacity:1}}@keyframes score-pop{0%{opacity:0;translate:0 5px}20%{opacity:1}100%{opacity:0;translate:0 40px}}@keyframes reveal{from{opacity:0}to{opacity:1}}
@media(min-aspect-ratio:23/10){.page{min-height:540px}.brain-art{height:70%;width:95svh}.hero-copy{top:20%}h1{font-size:12svh}.node-crm{left:26%}.node-erp{left:23%}.node-data{left:25%}.node-chat{right:23%}.node-auto{right:20%}.node-process{right:23%}.orb:nth-child(1){left:20%}.orb:nth-child(2){left:33%}.orb:nth-child(3){left:44%}.orb:nth-child(4){left:68%}.orb:nth-child(5){left:81%}.footer{left:20%;right:20%}.game-caption{top:71%}.progress-row{margin-top:15px}}
@media(max-height:780px) and (min-width:901px){.node{padding:9px 14px;min-height:48px;font-size:16px}.node svg{width:30px;height:30px}.scoreboard{font-size:15px}.scoreboard small{font-size:8px}.tagline{margin-top:9px}.game-caption{top:70%}.game-hint{margin-top:6px;font-size:9px}h2{margin-top:9px}.progress-row{margin-top:13px}.footer{bottom:4.2%}.footer-label{font-size:21px}.footer p{font-size:9px}.contact{padding:10px 18px;font-size:15px}}
@media(max-width:1050px) and (min-width:701px){.node{padding:9px 12px;min-height:47px;min-width:100px;font-size:13px;gap:8px}.node svg{width:26px;height:26px}.node-crm{left:15%}.node-erp{left:8%}.node-data{left:11%}.node-chat{right:9%}.node-auto{right:5%}.node-process{right:8%}.brain-art{width:75vw;top:1%;height:64%}.hero-copy{left:22%;right:22%;top:21%}h1{font-size:8.6vw}.tagline{font-size:19px}.scoreboard small{font-size:7px}.footer{left:7%;right:7%}.footer-label{font-size:19px}.footer p{max-width:340px;font-size:9px}.contact{padding:11px 16px;font-size:13px}.orb-inner>span{font-size:14px}.journey{font-size:19px}h2{font-size:17px}.game-caption{left:4%;right:4%}.progress-row{margin-top:20px}.progress{gap:37px}.progress i:after{width:37px}}
@media(max-width:700px){.page{height:auto;min-height:1120px;overflow:hidden}.page>main{position:relative;height:940px}.experience{height:940px}.scene-layer{background-size:auto 940px;background-position:center top}.scene-layer:after{background:linear-gradient(180deg,transparent 52%,#010d1b80 65%,#010d1b 95%)}.scoreboard{top:12px;right:12px;padding:8px 11px;font-size:14px}.scoreboard small{font-size:7px;margin-top:4px}.brain-art{top:74px;width:114%;height:390px}.hero-copy{top:196px;left:9%;right:9%}h1{font-size:clamp(48px,13.5vw,85px);letter-spacing:-.06em}.tagline{font-size:clamp(13px,3.65vw,21px);margin-top:10px}.logo-swoosh{stroke-width:6;right:9%;top:-70%}.node{padding:8px 9px;gap:7px;min-height:43px;min-width:87px;font-size:11px;border-radius:10px}.node svg{width:23px;height:23px}.node-crm{left:8%;top:70px}.node-chat{right:4%;top:70px}.node-erp{left:3%;top:345px}.node-auto{right:3%;top:345px}.node-data{left:6%;top:402px}.node-process{right:6%;top:402px}.node small{font-size:11px;width:190px;padding:10px}.node-erp,.node-auto{transform:none}.obstacles{top:485px;bottom:auto;height:275px;left:0;right:0;display:grid;grid-template-columns:repeat(6,1fr);gap:28px 2px;padding:0 8px;justify-items:center;align-content:start}.orb,.orb:nth-child(n){position:relative;left:auto;top:auto;grid-column:span 2;--orb-size:clamp(97px,27vw,142px);transform:none;animation-duration:6s}.orb:nth-child(4){grid-column:2 / span 2}.orb:nth-child(5){grid-column:4 / span 2}.orb-inner>span{font-size:13px;max-width:75%}.orb.long-title .orb-inner>span{font-size:11px}.orb-inner svg{width:24px;height:24px}.orb-inner{gap:6px}.game-caption{top:798px;left:4%;right:4%;height:135px}.journey{font-size:17px;line-height:1.5}.journey span{display:block}h2{font-size:14px;margin-top:9px;line-height:1.4}.game-hint{font-size:9px;margin-top:8px}.progress-row{margin-top:19px;gap:13px}.progress{gap:29px}.progress i{width:18px;height:18px;border-width:1.5px}.progress i:after{left:16px;top:6px;width:29px;height:2px}.progress i.done:before{font-size:15px;left:1px;top:-2px}.completion{top:9px}.completion p{font-size:17px;line-height:1.45}.completion p br{display:block}.completion strong{margin-left:0}.replay{margin-top:8px;padding:5px 11px}.activated .progress-row{margin-top:19px}.footer{position:relative;inset:auto;margin:38px 7% 0;display:flex;flex-direction:column;text-align:center;gap:22px;min-height:120px}.footer-label{font-size:19px;line-height:1.35}.footer p{font-size:10px;line-height:1.5;margin-top:8px}.contact{padding:12px 22px;font-size:14px;gap:12px;min-width:270px;justify-content:center}.contact svg{width:20px;height:20px}.bottom-line{position:relative;inset:auto;margin:27px 5% 12px;font-size:7px}.bottom-line button{font-size:8px}.skip:focus-visible{top:8px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}[hidden]{display:none!important}

.score-reset{position:absolute;left:-35px;top:8px;width:27px;height:27px;border:1px solid #1b638178;border-radius:50%;background:#03182abb;color:#97cde3;font-size:21px;line-height:23px;padding:0;box-shadow:0 0 12px #00eaff12}.score-reset:hover{color:white;border-color:#47dfff}


/* A sphere condenses into a falling drop before its replacement appears. */
.orb.broken .orb-inner{transform:translateY(8px) scale(.12);opacity:0;filter:brightness(2);transition:transform .22s ease-in,opacity .24s ease-in}


.round-next{display:block;margin-top:9px;font-size:11px;letter-spacing:.4px;color:#a9e4f0}


.orb.broken:focus-visible{outline:none}


/* Official SNC artwork supplied by the user; preserve its shape and orange accent. */
h1{display:flex;align-items:center;justify-content:center;gap:.14em}
h1 .snc-logo{display:block;height:1em;width:auto;max-width:52%;object-fit:contain;mix-blend-mode:screen;flex-shrink:0}
.brand-logo{height:30px;width:auto;mix-blend-mode:screen}







.hero-copy{z-index:auto;mix-blend-mode:normal}.hero-copy h1{mix-blend-mode:normal}



/* Compact portrait layout: all five spheres stay inside the first screen. */
@media(max-width:700px){
 .page{--mobile-play-h:clamp(540px,calc(100svh - 72px),700px);--mobile-orb-size:clamp(90px,min(26vw,17svh),130px);--mobile-caption-top:calc(var(--mobile-play-h) * .515 + var(--mobile-orb-size) * 2 + 36px);height:auto;min-height:0}
 .page>main{height:calc(var(--mobile-caption-top) + 160px)}
 .experience{height:var(--mobile-play-h)}
 .scene-layer{background-size:auto var(--mobile-play-h);background-position:center top}
 .brain-art{top:0;height:53%;width:114%}
 .hero-copy{top:17%}
 .node-crm,.node-chat{top:12px}
 .node-erp,.node-auto{top:35%}
 .node-data,.node-process{top:42%}
 .obstacles{top:51.5%;height:46%;row-gap:18px;padding:0 8px}
 .orb,.orb:nth-child(n){--orb-size:var(--mobile-orb-size)}
 .game-caption{top:var(--mobile-caption-top);height:150px}
 .footer{margin-top:24px}
}

/* Keep the active node and its explanation above neighbouring node cards. */
.node{z-index:0}
.node:hover,.node:focus-visible,.node.selected{z-index:20}
.node small{z-index:1}

.presentation-controls{display:flex;align-items:center;gap:10px}
.presentation-controls button{font-size:9px}
#language-toggle{min-width:25px;letter-spacing:.8px}
.node-process>span{max-width:108px}
.orb.long-title .orb-inner>span{overflow-wrap:anywhere}
@media(max-width:700px){.presentation-controls{gap:8px}.presentation-controls button{font-size:8px}.node-process>span{max-width:78px}}
