body.itemid-101 .container-header{background:#111b39!important;padding:12px clamp(20px,6vw,84px)!important}body.itemid-101 .container-header .navbar-brand img{max-height:64px!important;max-width:min(300px,45vw)!important;object-fit:contain}body.itemid-101 .container-banner{padding:0!important;margin:0!important;background:#07101f!important;background-image:none!important}body.itemid-101 .container-banner .moduletable{margin:0!important;padding:0!important;background:none!important}body.itemid-101 .container-component,body.itemid-101 .container-sidebar-right{display:none!important}.ns-home{font-family:inherit;color:#f7f9ff;background:#081225;overflow:hidden}.ns-hero{position:relative;isolation:isolate;min-height:620px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2rem;padding:clamp(3rem,7vw,5rem) max(7vw,24px);overflow:hidden;background:radial-gradient(ellipse at 78% 45%,rgba(40,92,186,.24),transparent 36%),linear-gradient(125deg,#07101f,#101c3e 52%,#07101f)}.ns-hero:before,.ns-hero:after{display:none!important;content:none!important}.ns-copy,.ns-clientlinks{position:relative;z-index:2}.ns-copy{max-width:820px}.ns-kicker,.ns-section-kicker{color:#16e6a1;text-transform:uppercase;letter-spacing:.18em;font-size:.8rem;font-weight:700;margin:0 0 1rem}.ns-hero h1{max-width:850px;font-size:clamp(3rem,7vw,6.2rem);line-height:.98;letter-spacing:-.055em;color:#fff;margin:0 0 1.2rem;font-weight:800}.ns-lead{max-width:760px;color:#d5deed;font-size:clamp(1.1rem,2.1vw,1.45rem);line-height:1.55;margin:0 0 1.5rem}.ns-cta{display:inline-flex;gap:.7rem;padding:.9rem 1.2rem;border:1px solid #19e6a2;border-radius:6px;background:#091a30;color:#fff!important;text-decoration:none!important;font-weight:700}.ns-clientlinks{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem}.ns-clientlinks a{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:.85rem 1rem;border:1px solid #ffffff38;border-radius:6px;background:#07101fcc;color:#f7f9ff!important;text-decoration:none!important;font-weight:700}.ns-clientlinks a.ns-phone{gap:.65rem;background:linear-gradient(135deg,#19e6a2,#06b985)!important;color:#071426!important;border-color:#19e6a2!important;box-shadow:0 10px 28px #19e6a255;animation:ns-phone-float 2.8s ease-in-out infinite}.ns-phone-icon{font-size:1.3rem}.ns-clientlinks a.ns-phone small{display:block;color:#062018!important;font-size:.68rem;text-transform:uppercase}.ns-clientlinks a.ns-phone strong{display:block;color:#071426!important;letter-spacing:.06em}@keyframes ns-phone-float{50%{transform:translateY(-4px)}}
.ns-floats{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none}.ns-floats span{position:absolute;display:block;width:22px;height:22px;font-size:0;color:transparent;border:1px solid #19e6a277;background:#19e6a211;opacity:0;animation:ns-square-flight 6.5s ease-in-out infinite}.ns-floats span:nth-child(4n+1){top:18%;left:12%}.ns-floats span:nth-child(4n+2){top:63%;left:32%;width:17px;height:17px;border-color:#63a4ff88;background:#63a4ff22;animation-duration:7.2s}.ns-floats span:nth-child(4n+3){top:24%;left:59%;width:30px;height:30px;animation-duration:8s}.ns-floats span:nth-child(4n){top:72%;left:82%;width:18px;height:18px;border-color:#63a4ff88;background:#63a4ff22;animation-duration:7.8s}@keyframes ns-square-flight{0%,100%{opacity:0;transform:translate(0,14px) rotate(0)}20%{opacity:.55}45%{opacity:.85;transform:translate(24px,-22px) rotate(30deg)}70%{opacity:.3;transform:translate(-12px,-34px) rotate(58deg)}85%{opacity:0;transform:translate(-20px,-8px) rotate(72deg)}}
.ns-services,.ns-work,.ns-remote{position:relative;margin:0 16px;padding:clamp(2rem,5vw,4rem);background:#0d1830;color:#e7edf8}.ns-services h2,.ns-work h2,.ns-remote h2{color:#fff;font-size:clamp(2rem,4vw,3.2rem);line-height:1.1;margin:.2rem 0 1rem}.ns-introtext,.ns-work p,.ns-remote p{color:#b8c7dc;max-width:780px;font-size:1.08rem;line-height:1.65}.ns-grid{position:relative;min-height:260px;margin-top:1.5rem;overflow:hidden}.ns-card{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;max-width:820px;min-height:220px;padding:clamp(1.4rem,4vw,2.6rem);border:1px solid #6791ca40;border-radius:12px;background:linear-gradient(135deg,#132646f5,#09162bf5);opacity:0;transform:translateX(-22px);animation:ns-service-cycle 24s ease-in-out infinite}.ns-card h3{color:#fff;font-size:clamp(1.5rem,3vw,2.3rem);margin:0 0 .65rem}.ns-card p{color:#bfcee2;font-size:1.05rem;line-height:1.6;margin:0}.ns-card:nth-child(2){animation-delay:6s}.ns-card:nth-child(3){animation-delay:12s}.ns-card:nth-child(4){animation-delay:18s}@keyframes ns-service-cycle{0%,25%,100%{opacity:0;transform:translateX(-22px)}4%,21%{opacity:1;transform:translateX(0)}}.ns-work,.ns-remote{background:#081225}.ns-work-inner,.ns-remote-inner{max-width:1100px;margin:auto}.ns-footerline{height:2rem;background:#081225}body.itemid-101 .ns-home-float{display:none!important}body:not(.itemid-101) .ns-home-float{position:fixed;right:24px;bottom:24px;z-index:99999;display:flex;align-items:center;gap:.6rem;padding:.85rem 1.1rem;border:1px solid #19e6a2;border-radius:999px;background:linear-gradient(135deg,#19e6a2,#06b985);color:#071426!important;text-decoration:none!important;font-weight:700;box-shadow:0 10px 30px #19e6a255;animation:ns-home-float 3s ease-in-out infinite}body:not(.itemid-101) .ns-home-float span{font-size:1.25rem}@keyframes ns-home-float{50%{transform:translateY(-5px)}}@media(max-width:760px){.ns-hero{min-height:0;padding:3.5rem 24px;gap:1.5rem}.ns-hero h1{font-size:clamp(2.8rem,12vw,4rem)}.ns-grid{min-height:270px}.ns-card{min-height:230px}.ns-services,.ns-work,.ns-remote{margin:0 10px;padding:2rem 1.3rem}}@media(max-width:600px){body:not(.itemid-101) .ns-home-float{right:14px;bottom:14px}}@media(prefers-reduced-motion:reduce){.ns-floats span,.ns-clientlinks a.ns-phone,body:not(.itemid-101) .ns-home-float{animation:none}.ns-floats span{opacity:.2}.ns-grid{display:grid;grid-template-columns:1fr;gap:1rem;min-height:0}.ns-card{position:relative;inset:auto;min-height:0;opacity:1;transform:none;animation:none}}
body.itemid-101 #mod-custom118{background:none!important;background-image:none!important;box-shadow:none!important}body.itemid-101 .container-banner .overlay{text-align:left!important}.ns-home,.ns-hero,.ns-hero h1{text-align:left!important}.ns-floats span:nth-child(1){top:18%;left:12%;width:27px;height:27px;animation-delay:-1s}.ns-floats span:nth-child(2){top:63%;left:22%;width:17px;height:17px;animation-delay:-4s}.ns-floats span:nth-child(3){top:14%;left:38%;width:16px;height:16px;animation-delay:-3.5s}.ns-floats span:nth-child(4){top:75%;left:43%;width:33px;height:33px;animation-delay:-6s}.ns-floats span:nth-child(5){top:38%;left:57%;width:21px;height:21px;animation-delay:-5s}.ns-floats span:nth-child(6){top:21%;left:73%;width:37px;height:37px;animation-delay:-2s}.ns-floats span:nth-child(7){top:69%;left:79%;width:18px;height:18px;animation-delay:-.5s}.ns-floats span:nth-child(8){top:49%;left:91%;width:29px;height:29px;animation-delay:-4.5s}.ns-floats span:nth-child(9){top:84%;left:11%;width:15px;height:15px;animation-delay:-5.5s}.ns-floats span:nth-child(10){top:30%;left:28%;width:31px;height:31px;animation-delay:-2.8s}.ns-floats span:nth-child(11){top:54%;left:49%;width:14px;height:14px;animation-delay:-1.8s}.ns-floats span:nth-child(12){top:83%;left:67%;width:25px;height:25px;animation-delay:-3.2s}.ns-floats span:nth-child(13){top:9%;left:87%;width:17px;height:17px;animation-delay:-6.1s}.ns-floats span:nth-child(14){top:91%;left:33%;width:20px;height:20px;animation-delay:-.8s}.ns-floats span:nth-child(15){top:46%;left:6%;width:24px;height:24px;animation-delay:-4.8s}.ns-floats span:nth-child(16){top:8%;left:61%;width:15px;height:15px;animation-delay:-2.2s}body.itemid-101 #mod-custom118{background:none!important;background-image:none!important;box-shadow:none!important}body.itemid-101 .container-banner .overlay{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;text-align:left!important}.ns-home{width:100%!important;max-width:none!important}.ns-hero,.ns-hero h1{text-align:left!important}
.ns-floats{font-size:0!important;color:transparent!important}.ns-floats:before,.ns-floats:after{content:"";position:absolute;display:block;width:24px;height:24px;border:1px solid #19e6a277;background:#19e6a211;will-change:transform,opacity}.ns-floats:before{top:18%;left:12%;box-shadow:140px 110px 0 -4px #19e6a255,290px -30px 0 -7px #63a4ff66,470px 180px 0 -3px #63a4ff55,650px 45px 0 -6px #19e6a255,820px 210px 0 -4px #63a4ff55,1010px 40px 0 -8px #19e6a266,370px 320px 0 -5px #19e6a255;animation:ns-float-one 6.5s ease-in-out infinite}.ns-floats:after{top:48%;right:14%;width:36px;height:36px;border-color:#63a4ff88;background:#63a4ff11;box-shadow:-160px 90px 0 -7px #19e6a255,-340px -130px 0 -4px #63a4ff55,-510px 120px 0 -8px #19e6a266,-700px -80px 0 -5px #19e6a255,-880px 180px 0 -7px #63a4ff55,-1000px -160px 0 -9px #19e6a266;animation:ns-float-two 8.5s ease-in-out infinite}@keyframes ns-float-one{0%,100%{opacity:0;transform:translate(0,15px) rotate(0)}20%{opacity:.65}48%{opacity:.95;transform:translate(24px,-24px) rotate(28deg)}72%{opacity:.3;transform:translate(-12px,-38px) rotate(55deg)}88%{opacity:0}}@keyframes ns-float-two{0%,100%{opacity:.08;transform:translate(0,0) rotate(0)}24%{opacity:.8}52%{opacity:.95;transform:translate(-22px,20px) rotate(-25deg)}78%{opacity:.25;transform:translate(16px,-30px) rotate(-50deg)}}@media(prefers-reduced-motion:reduce){.ns-floats:before,.ns-floats:after{animation:none;opacity:.25}}
body.itemid-101 .container-header .mod-finder{display:none!important}
/* Neonowy tunel 3D inspirowany przesłanym kadrem */
.ns-floats{display:none!important}
.ns-hero:before{display:block!important;content:""!important;position:absolute;left:-18%;right:-18%;bottom:-42%;height:118%;z-index:0;pointer-events:none;transform-origin:center bottom;transform:perspective(680px) rotateX(62deg) scale(1.16);opacity:.5;mask-image:linear-gradient(to top,transparent 0%,#000 24%,#000 78%,transparent 100%);background-image:repeating-linear-gradient(90deg,transparent 0 58px,rgba(139,211,255,.34) 59px 60px),repeating-linear-gradient(0deg,transparent 0 44px,rgba(139,211,255,.28) 45px 46px),linear-gradient(90deg,transparent 14%,rgba(0,116,255,.95) 14.2% 14.5%,transparent 14.8%),linear-gradient(90deg,transparent 43%,rgba(255,35,112,.9) 43.2% 47%,transparent 47.5%),linear-gradient(90deg,transparent 76%,rgba(0,121,255,.85) 76.2% 76.5%,transparent 76.8%);background-size:auto,auto,100% 100%,100% 100%,100% 100%;animation:ns-tunnel-floor 7.5s linear infinite}
.ns-hero:after{display:block!important;content:""!important;position:absolute;inset:-8% -4% 0;z-index:0;pointer-events:none;clip-path:polygon(12% 0,88% 0,100% 100%,0 100%);opacity:.28;mix-blend-mode:screen;mask-image:linear-gradient(to bottom,transparent,#000 18%,#000 80%,transparent);background-image:repeating-linear-gradient(90deg,transparent 0 86px,rgba(161,219,255,.24) 87px 88px),repeating-linear-gradient(0deg,transparent 0 63px,rgba(161,219,255,.20) 64px 65px),linear-gradient(90deg,transparent 18%,rgba(0,117,255,.95) 18.2% 18.7%,transparent 19%),linear-gradient(90deg,transparent 41%,rgba(255,35,112,.95) 41.2% 45%,transparent 45.5%),linear-gradient(90deg,transparent 72%,rgba(0,117,255,.9) 72.2% 72.7%,transparent 73%),radial-gradient(ellipse at 50% 42%,rgba(0,94,255,.17),transparent 62%);animation:ns-tunnel-walls 11s ease-in-out infinite alternate}
@keyframes ns-tunnel-floor{0%{background-position:0 0,0 0,0 0,0 0,0 0;filter:brightness(.8)}100%{background-position:0 0,0 96px,0 0,0 0,0 0;filter:brightness(1.2)}}
@keyframes ns-tunnel-walls{0%{opacity:.18;transform:perspective(850px) rotateX(5deg) scale(1.04);background-position:0 0,0 0,0 35%,0 58%,0 72%,center}100%{opacity:.4;transform:perspective(850px) rotateX(-3deg) scale(1.1);background-position:0 0,0 0,0 38%,0 55%,0 69%,center}}
@media(max-width:760px){.ns-hero:before{opacity:.34;left:-38%;right:-38%}.ns-hero:after{opacity:.20}}
@media(prefers-reduced-motion:reduce){.ns-hero:before,.ns-hero:after{animation:none}}

/* Sześciany 3D widoczne we wszystkich widokach Joomla */
.ns-hero:before,.ns-hero:after{display:none!important;content:none!important}.ns-floats{display:none!important}
.ns-global-cubes{position:fixed;inset:0;z-index:10;overflow:hidden;pointer-events:none;opacity:.34}
.ns-global-cubes .ns-cube{position:absolute;display:block;width:34px;height:34px;font-size:0;color:transparent;border:1px solid rgba(101,199,255,.62);background:linear-gradient(135deg,rgba(0,126,255,.22),rgba(0,67,167,.08));box-shadow:inset -8px -8px 16px rgba(0,67,167,.24),0 0 18px rgba(0,111,255,.15);transform-style:preserve-3d;animation:ns-cube-drift 10s ease-in-out infinite}
.ns-global-cubes .ns-cube:before{content:"";position:absolute;left:5px;right:-7px;top:-10px;height:10px;border:1px solid rgba(126,215,255,.48);background:linear-gradient(100deg,rgba(1,145,255,.28),rgba(2,78,170,.12));transform:skewX(-38deg);transform-origin:bottom}
.ns-global-cubes .ns-cube:after{content:"";position:absolute;top:-6px;right:-12px;bottom:5px;width:12px;border:1px solid rgba(95,181,255,.4);background:linear-gradient(180deg,rgba(0,102,230,.26),rgba(0,40,110,.3));transform:skewY(-42deg);transform-origin:left}
.ns-global-cubes .ns-cube:nth-child(1){top:14%;left:12%;width:38px;height:38px;animation-delay:-1s}.ns-global-cubes .ns-cube:nth-child(2){top:44%;left:79%;width:28px;height:28px;animation-delay:-5s}.ns-global-cubes .ns-cube:nth-child(3){top:76%;left:21%;width:44px;height:44px;animation-delay:-3s}.ns-global-cubes .ns-cube:nth-child(4){top:27%;left:54%;width:23px;height:23px;animation-delay:-7s}.ns-global-cubes .ns-cube:nth-child(5){top:68%;left:59%;width:34px;height:34px;animation-delay:-2s}.ns-global-cubes .ns-cube:nth-child(6){top:11%;left:88%;width:26px;height:26px;animation-delay:-8s}.ns-global-cubes .ns-cube:nth-child(7){top:84%;left:87%;width:38px;height:38px;animation-delay:-4s}.ns-global-cubes .ns-cube:nth-child(8){top:52%;left:8%;width:24px;height:24px;animation-delay:-6s}.ns-global-cubes .ns-cube:nth-child(9){top:35%;left:32%;width:32px;height:32px;animation-delay:-2.5s}.ns-global-cubes .ns-cube:nth-child(10){top:19%;left:68%;width:42px;height:42px;animation-delay:-5.5s}.ns-global-cubes .ns-cube:nth-child(11){top:61%;left:39%;width:22px;height:22px;animation-delay:-9s}.ns-global-cubes .ns-cube:nth-child(12){top:89%;left:48%;width:30px;height:30px;animation-delay:-.5s}
.ns-global-cubes .ns-cube:nth-child(3n){border-color:rgba(25,230,162,.55);background:linear-gradient(135deg,rgba(25,230,162,.2),rgba(0,90,120,.08));box-shadow:inset -8px -8px 16px rgba(0,130,110,.22),0 0 16px rgba(25,230,162,.12)}
@keyframes ns-cube-drift{0%,100%{opacity:0;transform:translate3d(0,18px,0) rotateX(-18deg) rotateY(22deg) rotateZ(-4deg)}16%{opacity:.55}48%{opacity:.95;transform:translate3d(20px,-24px,12px) rotateX(155deg) rotateY(205deg) rotateZ(34deg)}76%{opacity:.34;transform:translate3d(-12px,-40px,0) rotateX(265deg) rotateY(320deg) rotateZ(62deg)}}
.ns-rotator{position:relative;display:block;width:min(620px,100%);height:1.8em;margin:0 0 1.25rem;overflow:hidden;color:#9fe2ff;font-size:clamp(1.25rem,2.6vw,1.8rem);font-weight:700;letter-spacing:.02em;text-align:left}.ns-rotator span{position:absolute;inset:0;opacity:0;transform:translateY(110%);animation:ns-hero-word 16s ease-in-out infinite}.ns-rotator span:nth-child(2){animation-delay:4s}.ns-rotator span:nth-child(3){animation-delay:8s}.ns-rotator span:nth-child(4){animation-delay:12s}@keyframes ns-hero-word{0%,100%{opacity:0;transform:translateY(110%)}6%,21%{opacity:1;transform:translateY(0)}27%{opacity:0;transform:translateY(-110%)}}
@media(max-width:760px){.ns-global-cubes{opacity:.2}.ns-global-cubes .ns-cube{transform:scale(.8)}}@media(prefers-reduced-motion:reduce){.ns-global-cubes .ns-cube,.ns-rotator span{animation:none}.ns-global-cubes{opacity:.12}.ns-rotator span{position:static;display:block;opacity:1;transform:none}.ns-rotator span:not(:first-child){display:none}}

/* Dopracowana, dynamiczna animacja 3D na stronach Joomla */
.ns-hero{padding-left:clamp(64px,15vw,220px)!important}
@media(max-width:760px){.ns-hero{padding-left:24px!important}}
.ns-global-cubes{opacity:.5!important}
.ns-global-cubes .ns-cube{border-color:rgba(160,232,255,.92)!important;background:linear-gradient(135deg,rgba(0,156,255,.42),rgba(0,67,167,.2))!important;box-shadow:inset -11px -11px 21px rgba(0,67,167,.34),0 0 28px rgba(0,111,255,.34)!important;animation-name:ns-cube-chaos!important;animation-duration:7s!important;animation-timing-function:cubic-bezier(.37,0,.63,1)!important;animation-iteration-count:infinite!important;animation-fill-mode:both!important}
.ns-global-cubes .ns-cube:before{left:7px!important;right:-12px!important;top:-14px!important;height:14px!important;border-color:rgba(175,235,255,.82)!important;background:linear-gradient(100deg,rgba(1,145,255,.44),rgba(2,78,170,.2))!important}
.ns-global-cubes .ns-cube:after{top:-8px!important;right:-20px!important;bottom:7px!important;width:20px!important;border-color:rgba(150,220,255,.76)!important;background:linear-gradient(180deg,rgba(0,102,230,.42),rgba(0,40,110,.46))!important}
.ns-global-cubes .ns-cube:nth-child(2n){animation-duration:4.9s!important}.ns-global-cubes .ns-cube:nth-child(3n){animation-duration:8.2s!important}.ns-global-cubes .ns-cube:nth-child(5n){animation-duration:6.1s!important}
.ns-global-cubes .ns-cube:nth-child(13){top:4%;left:4%;width:58px;height:58px;animation-delay:-3.2s}.ns-global-cubes .ns-cube:nth-child(14){top:91%;left:28%;width:32px;height:32px;animation-delay:-4.8s}.ns-global-cubes .ns-cube:nth-child(15){top:4%;left:52%;width:44px;height:44px;animation-delay:-1.2s}.ns-global-cubes .ns-cube:nth-child(16){top:72%;left:38%;width:30px;height:30px;animation-delay:-2.8s}.ns-global-cubes .ns-cube:nth-child(17){top:42%;left:7%;width:52px;height:52px;animation-delay:-5.4s}.ns-global-cubes .ns-cube:nth-child(18){top:23%;left:91%;width:38px;height:38px;animation-delay:-3.8s}.ns-global-cubes .ns-cube:nth-child(19){top:97%;left:68%;width:60px;height:60px;animation-delay:-.8s}.ns-global-cubes .ns-cube:nth-child(20){top:63%;left:89%;width:28px;height:28px;animation-delay:-4.1s}.ns-global-cubes .ns-cube:nth-child(21){top:30%;left:68%;width:42px;height:42px;animation-delay:-2.1s}.ns-global-cubes .ns-cube:nth-child(22){top:85%;left:11%;width:36px;height:36px;animation-delay:-5.8s}.ns-global-cubes .ns-cube:nth-child(23){top:7%;left:88%;width:48px;height:48px;animation-delay:-1.5s}.ns-global-cubes .ns-cube:nth-child(24){top:51%;left:94%;width:34px;height:34px;animation-delay:-3.5s}
.ns-global-cubes .ns-cube:nth-child(3n){border-color:rgba(60,255,196,.84)!important;background:linear-gradient(135deg,rgba(25,230,162,.34),rgba(0,90,120,.15))!important;box-shadow:inset -9px -9px 18px rgba(0,130,110,.3),0 0 22px rgba(25,230,162,.22)!important}
@keyframes ns-cube-chaos{0%{opacity:0;transform:translate3d(0,34px,-14px) rotateX(-42deg) rotateY(-28deg) rotateZ(-24deg)}14%{opacity:.85;transform:translate3d(18px,-22px,4px) rotateX(62deg) rotateY(104deg) rotateZ(64deg)}49%{opacity:1;transform:translate3d(-42px,-76px,22px) rotateX(190deg) rotateY(238deg) rotateZ(174deg)}79%{opacity:.44;transform:translate3d(56px,32px,-4px) rotateX(318deg) rotateY(346deg) rotateZ(302deg)}100%{opacity:0;transform:translate3d(0,34px,-14px) rotateX(318deg) rotateY(332deg) rotateZ(336deg)}}
@media(prefers-reduced-motion:reduce){.ns-global-cubes{opacity:.15!important}.ns-global-cubes .ns-cube{animation:none!important}}

@media (min-width:600px) and (max-width:760px){.ns-hero{padding-left:clamp(48px,9vw,68px)!important}}

.ns-copy{width:min(100%,820px)}.ns-rotator{width:min(720px,100%)!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important;font-size:clamp(1.5rem,3.8vw,2.3rem)!important}

.ns-hero h1{width:100%;text-align:center;transform:translateX(clamp(0px,6vw,85px))}.ns-rotator{transform:translateX(clamp(0px,6vw,85px))}

/* Wyśrodkowanie głównej zawartości strony */
.ns-hero{align-items:center!important;padding-left:max(7vw,24px)!important;padding-right:max(7vw,24px)!important}
.ns-copy{width:min(100%,820px)!important;text-align:center!important;margin-left:auto!important;margin-right:auto!important}
.ns-hero h1{width:100%!important;text-align:center!important;transform:none!important;margin-left:auto!important;margin-right:auto!important}
.ns-rotator{width:min(720px,100%)!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important;transform:none!important;font-size:clamp(1.5rem,3.8vw,2.3rem)!important}
.ns-lead{margin-left:auto!important;margin-right:auto!important}.ns-cta{display:flex!important;width:max-content;margin-left:auto!important;margin-right:auto!important}
.ns-clientlinks{width:min(100%,950px)!important;justify-content:center!important;align-self:center!important;margin-left:auto!important;margin-right:auto!important}
.ns-services,.ns-work-inner,.ns-remote-inner{text-align:center!important;margin-left:auto!important;margin-right:auto!important}.ns-services h2,.ns-services .ns-introtext,.ns-card,.ns-card h3,.ns-card p{text-align:center!important}.ns-grid{width:min(100%,1100px)!important;margin-left:auto!important;margin-right:auto!important}

body.itemid-101 .container-header .grid-child:not(.container-nav){display:flex!important;justify-content:center!important}body.itemid-101 .container-header .navbar-brand{margin-left:auto!important;margin-right:auto!important}

.ns-rotator{display:flex!important;align-items:center!important;justify-content:center!important}.ns-rotator .ns-word{left:0!important;right:0!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important}

.ns-hero h1{margin-bottom:2.8rem!important}.ns-rotator{font-size:clamp(1.25rem,2.6vw,1.8rem)!important;margin-bottom:2.5rem!important}

.ns-rotator{font-size:clamp(2.4rem,7.6vw,4.2rem)!important}

@keyframes ns-hero-word{0%{opacity:1;transform:translateX(18%)}3%{opacity:1;transform:translateX(0)}21.5%{opacity:1;transform:translateX(0)}24.9%{opacity:0;transform:translateX(-18%)}25%{opacity:0;transform:translateX(18%)}100%{opacity:0;transform:translateX(18%)}}

.ns-rotator{height:2.5em!important;min-height:2.5em!important}.ns-rotator .ns-word{animation-duration:20s!important;flex-direction:column!important}.ns-rotator .ns-word:nth-child(1){animation-delay:0s!important}.ns-rotator .ns-word:nth-child(2){animation-delay:4s!important}.ns-rotator .ns-word:nth-child(3){animation-delay:8s!important}.ns-rotator .ns-word:nth-child(4){animation-delay:12s!important}.ns-rotator .ns-word:nth-child(5){animation-delay:16s!important;font-size:.82em!important}.ns-rotator .ns-word-detail{display:block!important;font-size:.42em;line-height:1.3;font-weight:600;letter-spacing:0;white-space:normal;margin-top:.18em}.ns-rotator .ns-word:nth-child(5) .ns-word-detail{font-size:.42em}
@keyframes ns-hero-word{0%{opacity:1;transform:translateX(18%)}3%{opacity:1;transform:translateX(0)}16.5%{opacity:1;transform:translateX(0)}19.9%{opacity:0;transform:translateX(-18%)}20%{opacity:0;transform:translateX(18%)}100%{opacity:0;transform:translateX(18%)}}

.ns-hero h1{margin-bottom:1.2rem!important}.ns-rotator{box-sizing:border-box!important;height:clamp(112px,17vw,148px)!important;min-height:112px!important;padding:.7rem 1rem!important;border:1px solid rgba(151,222,255,.62)!important;border-radius:16px!important;background:linear-gradient(135deg,rgba(7,22,46,.88),rgba(11,39,73,.7))!important;box-shadow:0 14px 38px rgba(0,0,0,.22),inset 0 0 25px rgba(66,150,218,.15)!important}


/* n@t serwis: naglowek i dolna karuzela */
body .container-header .navbar-brand .brand-logo{display:flex!important;align-items:center!important;justify-content:center!important;gap:10px!important;overflow:visible!important;text-decoration:none!important}
body .container-header .navbar-brand .brand-logo img{width:42px!important;height:48px!important;max-width:42px!important;max-height:48px!important;object-fit:cover!important;object-position:left center!important}
body .container-header .navbar-brand .brand-logo:after{content:"n@t serwis";display:block;color:#fff;font-family:inherit;font-size:clamp(1.8rem,3vw,2.25rem);font-weight:800;letter-spacing:-.035em;white-space:nowrap}
.ns-rotator .ns-word{animation-duration:16s!important}
.ns-rotator .ns-word:nth-child(1){animation-delay:0s!important}
.ns-rotator .ns-word:nth-child(2){animation-delay:4s!important}
.ns-rotator .ns-word:nth-child(3){animation-delay:8s!important}
.ns-rotator .ns-word:nth-child(4){animation-delay:12s!important}
.ns-rotator .ns-word:nth-child(n+5){display:none!important}
@keyframes ns-hero-word{0%{opacity:1;transform:translateX(18%)}3%{opacity:1;transform:translateX(0)}21.5%{opacity:1;transform:translateX(0)}24.9%{opacity:0;transform:translateX(-18%)}25%{opacity:0;transform:translateX(18%)}100%{opacity:0;transform:translateX(18%)}}
.ns-card{animation-duration:30s!important}
.ns-card:nth-child(2){animation-delay:6s!important}
.ns-card:nth-child(3){animation-delay:12s!important}
.ns-card:nth-child(4){animation-delay:18s!important}
.ns-card:nth-child(5){animation-delay:24s!important}
@keyframes ns-service-cycle{0%{opacity:0;transform:translateX(-22px)}3%{opacity:1;transform:translateX(0)}16.5%{opacity:1;transform:translateX(0)}19.9%{opacity:0;transform:translateX(-22px)}20%{opacity:0;transform:translateX(22px)}100%{opacity:0;transform:translateX(22px)}}
.ns-work,.ns-remote{display:none!important}


/* Formularz kontaktowy n@t serwis */
body.itemid-131,body.itemid-131 .site-grid,body.itemid-131 .container-component{background:#081225!important;color:#f7f9ff!important}
body.itemid-131 .site-grid{grid-template-columns:minmax(0,1fr)!important;gap:0!important}
body.itemid-131 .container-sidebar-right{display:none!important}
body.itemid-131 .container-header .navbar-brand{margin-left:auto!important;margin-right:auto!important;justify-content:center!important}
body.itemid-131 .container-header .mod-finder{display:none!important}
body.itemid-131 .container-component{grid-column:1/-1!important;width:min(100%,1050px)!important;margin:0 auto!important;padding:clamp(20px,5vw,56px)!important}
body.itemid-131 main,body.itemid-131 .com-contact.contact{color:#f7f9ff!important}
body.itemid-131 .com-contact.contact{max-width:960px!important;margin:0 auto!important;padding:clamp(22px,4vw,42px)!important;border:1px solid rgba(151,222,255,.32)!important;border-radius:16px!important;background:linear-gradient(135deg,#132646f5,#09162bf5)!important;box-shadow:0 18px 44px rgba(0,0,0,.24)!important}
body.itemid-131 .com-contact.contact h1,body.itemid-131 .com-contact.contact h2,body.itemid-131 .com-contact.contact h3{color:#fff!important}
body.itemid-131 .com-contact.contact label,body.itemid-131 .com-contact.contact .control-label{color:#d5deed!important}
body.itemid-131 .com-contact.contact .form-control{background:#fff!important;color:#0b172b!important;border:1px solid #7b91b1!important;border-radius:6px!important}
body.itemid-131 .com-contact.contact .btn-primary{background:#19e6a2!important;border-color:#19e6a2!important;color:#071426!important;font-weight:700!important}


/* Spójne turkusowe ramki i akcenty n@t serwis */
.ns-home .ns-rotator,
.ns-home .ns-cta,
.ns-home .ns-clientlinks a,
.ns-home .ns-card,
body:not(.itemid-101) .ns-home-float,
body.itemid-131 .com-contact.contact,
body.itemid-131 .com-contact .form-control,
body.itemid-131 .com-contact .btn-primary,
body:not(.administrator) .sidebar-right.card {
  border-color: rgba(25,230,162,.58) !important;
}
.ns-home .ns-rotator {
  background: linear-gradient(135deg,rgba(8,34,46,.92),rgba(11,39,73,.76)) !important;
  box-shadow: 0 14px 38px rgba(0,0,0,.22), inset 0 0 25px rgba(25,230,162,.09) !important;
}
.ns-home .ns-card {
  background: linear-gradient(135deg,rgba(16,40,49,.97),rgba(9,22,43,.96)) !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.22), 0 0 24px rgba(25,230,162,.10), inset 0 0 24px rgba(25,230,162,.045) !important;
}
.ns-home .ns-services,
.ns-home .ns-work,
.ns-home .ns-remote {
  border: 1px solid rgba(25,230,162,.24) !important;
  border-radius: 18px !important;
  box-shadow: inset 0 0 28px rgba(25,230,162,.045) !important;
}
.ns-home .ns-clientlinks a:not(.ns-phone) {
  background: rgba(7,25,36,.86) !important;
  box-shadow: inset 0 0 18px rgba(25,230,162,.045) !important;
  transition: border-color .2s ease, box-shadow .2s ease, background .2s ease !important;
}
.ns-home .ns-clientlinks a:not(.ns-phone):hover,
.ns-home .ns-cta:hover,
.ns-home .ns-card:hover {
  border-color: #19e6a2 !important;
  box-shadow: 0 0 22px rgba(25,230,162,.20) !important;
}
.ns-global-cubes .ns-cube,
.ns-global-cubes .ns-cube::before,
.ns-global-cubes .ns-cube::after {
  border-color: rgba(25,230,162,.76) !important;
}
.ns-global-cubes .ns-cube::before {
  background: linear-gradient(100deg,rgba(25,230,162,.30),rgba(25,230,162,.09)) !important;
}
.ns-global-cubes .ns-cube::after {
  background: linear-gradient(rgba(25,230,162,.23),rgba(0,90,90,.26)) !important;
}
body.itemid-131 .com-contact.contact {
  box-shadow: 0 18px 44px rgba(0,0,0,.24), 0 0 24px rgba(25,230,162,.10) !important;
}
body.itemid-131 .com-contact .form-control:focus {
  border-color: #19e6a2 !important;
  box-shadow: 0 0 0 .2rem rgba(25,230,162,.18) !important;
}
body:not(.administrator) .sidebar-right.card {
  border-radius: 14px !important;
  box-shadow: 0 0 20px rgba(25,230,162,.08) !important;
}

/* PCB animation replaces the visible cubes; the original cube effect remains for rollback. */
.ns-global-cubes { display: none !important; }
.ns-floats { display: block !important; position: fixed !important; inset: 0 !important; z-index: 10 !important; overflow: hidden !important; pointer-events: none !important; }
.ns-floats::before, .ns-floats::after { display: none !important; content: none !important; }
.ns-pcb-overlay { position: absolute; inset: 0; display: block; width: 100%; height: 100%; opacity: .56; overflow: visible; }
.ns-pcb-trace { fill: none; stroke: rgba(25,230,162,.62); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 1600; stroke-dashoffset: 1600; filter: drop-shadow(0 0 5px rgba(25,230,162,.42)); animation: ns-pcb-draw 14s cubic-bezier(.65,0,.35,1) infinite; }
.ns-pcb-trace-b, .ns-pcb-trace-e { stroke: rgba(99,164,255,.56); filter: drop-shadow(0 0 5px rgba(99,164,255,.38)); }
.ns-pcb-trace-b { animation-delay: 2.4s; }
.ns-pcb-trace-c { animation-delay: 4.8s; }
.ns-pcb-trace-d { animation-delay: 1.2s; }
.ns-pcb-trace-e { animation-delay: 6s; }
.ns-pcb-pad { fill: #081225; stroke: rgba(25,230,162,.8); stroke-width: 2.5; opacity: 0; filter: drop-shadow(0 0 5px rgba(25,230,162,.42)); animation: ns-pcb-node 14s ease-in-out infinite; }
.ns-pcb-pad-b, .ns-pcb-pad-d { stroke: rgba(99,164,255,.78); }
.ns-pcb-pad-b { animation-delay: 2.4s; }
.ns-pcb-pad-c { animation-delay: 4.8s; }
.ns-pcb-pad-d { animation-delay: 1.2s; }
@keyframes ns-pcb-draw { 0% { stroke-dashoffset: 1600; opacity: 0; } 12% { opacity: .46; } 70% { stroke-dashoffset: 0; opacity: .46; } 86% { opacity: .16; } 100% { stroke-dashoffset: -1600; opacity: 0; } }
@keyframes ns-pcb-node { 0%, 58%, 100% { opacity: 0; } 70%, 86% { opacity: .72; } }
@media (max-width: 600px) { .ns-pcb-trace { stroke-width: 2.5; } }
@media (prefers-reduced-motion: reduce) { .ns-pcb-trace, .ns-pcb-pad { animation: none !important; stroke-dashoffset: 0 !important; opacity: .24 !important; } }


/* Reversible PCB-style trace override. Original cube styles above are kept for rollback. */
.ns-global-cubes { display:block!important; opacity:.42!important; }
.ns-global-cubes .ns-cube { position:absolute!important; display:block!important; width:180px!important; height:86px!important; color:rgba(25,230,162,.8)!important; font-size:0!important; border:0!important; border-radius:0!important; background:linear-gradient(currentColor,currentColor) 0 0/100% 2px no-repeat,linear-gradient(currentColor,currentColor) 73% 0/2px 72% no-repeat,linear-gradient(currentColor,currentColor) 73% 72%/32% 2px no-repeat!important; box-shadow:none!important; transform:none!important; animation:ns-pcb-wipe 11s ease-in-out infinite!important; clip-path:inset(0 100% 0 0); filter:drop-shadow(0 0 5px rgba(25,230,162,.32)); }
.ns-global-cubes .ns-cube::before { content:""; left:36%!important; right:auto!important; top:0!important; width:2px!important; height:44%!important; border:0!important; background:currentColor!important; transform:none!important; }
.ns-global-cubes .ns-cube::after { top:auto!important; left:calc(73% - 4px)!important; right:auto!important; bottom:calc(28% - 4px)!important; width:10px!important; height:10px!important; border:1px solid currentColor!important; border-radius:50%!important; background:#081225!important; transform:none!important; }
.ns-global-cubes .ns-cube:nth-child(4n+2),.ns-global-cubes .ns-cube:nth-child(4n) { color:rgba(99,164,255,.72)!important; }
.ns-global-cubes .ns-cube:nth-child(4n+1){animation-delay:0s!important;}
.ns-global-cubes .ns-cube:nth-child(4n+2){animation-delay:2.5s!important;}
.ns-global-cubes .ns-cube:nth-child(4n+3){animation-delay:5s!important;}
.ns-global-cubes .ns-cube:nth-child(4n){animation-delay:7.5s!important;}
@keyframes ns-pcb-wipe { 0%{clip-path:inset(0 100% 0 0);opacity:0;} 12%{opacity:.65;} 72%{clip-path:inset(0 0 0 0);opacity:.65;} 90%{opacity:.15;} 100%{clip-path:inset(0 0 0 0);opacity:0;} }
@media (prefers-reduced-motion:reduce) { .ns-global-cubes .ns-cube { animation:none!important;clip-path:none;opacity:.2!important; } }
/* Clean line only finish for the reversible PCB overlay */
.ns-global-cubes{opacity:.62!important}
.ns-global-cubes .ns-cube,.ns-global-cubes .ns-cube:nth-child(3n){background-image:linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor),linear-gradient(currentColor,currentColor)!important;background-color:transparent!important;box-shadow:none!important}
.ns-global-cubes .ns-cube::before{content:""!important;display:block!important;position:absolute!important;left:36%!important;right:auto!important;top:0!important;width:2px!important;height:44%!important;border:0!important;background:currentColor!important;transform:none!important}
.ns-global-cubes .ns-cube::after{content:""!important;display:block!important;position:absolute!important;top:auto!important;left:calc(73% - 4px)!important;right:auto!important;bottom:calc(28% - 4px)!important;width:10px!important;height:10px!important;border:1px solid currentColor!important;border-radius:50%!important;background:#081225!important;transform:none!important}
/* Ensure trace gradients stay line-sized, including every third original cube */
.ns-global-cubes .ns-cube,.ns-global-cubes .ns-cube:nth-child(3n){background-size:100% 2px,2px 72%,32% 2px!important;background-position:0 0,73% 0,73% 72%!important;background-repeat:no-repeat!important}
