.grain:after{content:"";position:absolute;top:-100%;left:-100%;width:300%;height:300%;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 600 600' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");animation:grain 1s steps(10) infinite;opacity:.07;pointer-events:none}@keyframes grain{0%,to{transform:translate(0)}10%{transform:translate(-5%,-10%)}20%{transform:translate(-15%,5%)}30%{transform:translate(7%,-25%)}40%{transform:translate(-5%,25%)}50%{transform:translate(-15%,10%)}60%{transform:translate(15%)}70%{transform:translateY(15%)}80%{transform:translate(3%,35%)}90%{transform:translate(-10%,10%)}}.marquee-container{overflow:hidden;position:relative;width:100vw;margin-left:calc(-50vw + 50%);padding-top:2rem;padding-bottom:0;margin-bottom:0;mask-image:linear-gradient(to right,transparent,black 2%,black 98%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 2%,black 98%,transparent)}.marquee-container .marquee{display:inline-flex;align-items:center;gap:4rem;will-change:transform;white-space:nowrap;animation:marquee 40s linear infinite;margin:0;padding:0}.client-logo{flex-shrink:0;display:flex;align-items:center;justify-content:center;height:80px;padding:0 2rem;min-width:120px}.client-logo a{display:flex;align-items:center;justify-content:center;height:100%;width:100%}.client-logo img{max-height:80px;max-width:200px;width:auto;height:auto;-o-object-fit:contain;object-fit:contain;filter:grayscale(100%);opacity:.6;transition:all .3s ease-in-out}.client-logo:hover img{filter:grayscale(0%);opacity:1;transform:scale(1.05)}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.stat-item{opacity:1;transform:translateY(0)}html{scroll-behavior:smooth}#portfolio-container{width:100%;overflow-x:auto;overflow-y:hidden;position:relative;padding-bottom:6rem;scroll-behavior:smooth;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}#portfolio-container::-webkit-scrollbar{display:none}#portfolio-container .tns-outer,#portfolio-container{position:relative}#scrolling-wrapper{display:flex;will-change:transform}.portfolio-panel{flex-shrink:0;scroll-snap-align:center;scroll-snap-stop:always}#portfolio-container .tns-controls,.tns-controls{display:flex;justify-content:space-between;align-items:center;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);pointer-events:none;z-index:20;padding:0;gap:0;width:100%;margin:0}.tns-controls button{background:#ffffff14;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1.5px solid rgba(255,255,255,.15);color:#fff;width:56px;height:56px;border-radius:50%;font-size:20px;font-weight:300;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;position:relative;box-shadow:0 4px 20px #00000026;pointer-events:all;flex-shrink:0;margin:0 1.5rem}.tns-controls button[data-controls=prev]{margin-right:auto;margin-left:1.5rem}.tns-controls button[data-controls=next]{margin-left:auto;margin-right:1.5rem}.tns-controls button:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:linear-gradient(135deg,#ffffff1a,#ffffff0d);opacity:0;transition:opacity .4s ease}.tns-controls button:hover{background:#ffffff26;border-color:#ffffff4d;transform:translateY(-2px) scale(1.05);box-shadow:0 8px 30px #00000040}.tns-controls button:hover:before{opacity:1}.tns-controls button:active{transform:translateY(0) scale(.98);transition:all .1s ease}.tns-controls button:disabled{opacity:.3;cursor:not-allowed;transform:none}.tns-nav{display:flex;justify-content:center;align-items:center;gap:.75rem;margin-top:2rem;padding:1rem;position:relative}.tns-nav:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.05),transparent);pointer-events:none}.tns-nav button{width:10px;height:10px;border-radius:50%;border:2px solid rgba(255,255,255,.4);background:transparent;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);padding:0;position:relative;overflow:hidden}.tns-nav button:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#fff;transform:scale(0);transition:transform .4s cubic-bezier(.4,0,.2,1)}.tns-nav button:hover{border-color:#ffffffb3;transform:scale(1.3)}.tns-nav button.tns-nav-active{border-color:#fff;background:#fff;transform:scale(1.4);box-shadow:0 0 12px #ffffff80}.tns-nav button.tns-nav-active:after{transform:scale(1)}.portfolio-panel .group:hover .absolute.inset-0.bg-gradient-to-t{background:linear-gradient(to top,rgba(0,0,0,.9) 0%,rgba(0,0,0,.7) 50%,transparent 100%);transition:background .5s ease}.tns-item{transition:opacity .6s cubic-bezier(.4,0,.2,1)}.portfolio-panel .group{transition:transform .3s cubic-bezier(.4,0,.2,1)}.portfolio-panel .group:hover{transform:translateY(-4px)}.portfolio-panel .group:hover .shadow-2xl{box-shadow:0 25px 50px -12px #00000080}.tns-controls button:focus-visible,.tns-nav button:focus-visible{outline:2px solid rgba(255,255,255,.8);outline-offset:2px}.portfolio-panel img{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff1a,#ffffff0d 75%);background-size:200% 100%;animation:shimmer 2s infinite}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.portfolio-panel img[loading=lazy]:not([src=""]){animation:none}@media (max-width: 768px){.tns-controls button{width:48px;height:48px;font-size:18px;margin:0 1rem}.tns-controls button[data-controls=prev]{margin-left:1rem}.tns-controls button[data-controls=next]{margin-right:1rem}.tns-nav{gap:.5rem}.tns-nav button{width:8px;height:8px}#portfolio-container{padding-bottom:4rem}}
