.gpu-accelerated{transform:translateZ(0);will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden;perspective:1000px}.rts-btn{position:relative;overflow:hidden;transition:all .3s cubic-bezier(.4,0,.2,1);transform:translateZ(0);will-change:transform,box-shadow}.rts-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:rgba(255,255,255,.2);transform:translate(-50%,-50%);transition:width .6s ease,height .6s ease}.rts-btn:hover:before{width:300px;height:300px}.rts-btn:hover{transform:translateY(-2px) scale(1.02);box-shadow:0 10px 25px rgba(0,0,0,.15)}.rts-btn:active{transform:translateY(0) scale(.98);transition:all .1s ease}@keyframes ripple{0%{transform:translate(-50%,-50%) scale(0);opacity:1}to{transform:translate(-50%,-50%) scale(4);opacity:0}}.rts-btn-ripple{position:absolute;border-radius:50%;background:rgba(255,255,255,.6);pointer-events:none;animation:ripple .6s ease-out}.single-service-signle-wrapper{transition:all .4s cubic-bezier(.4,0,.2,1);transform:translateZ(0);will-change:transform,box-shadow}.single-service-signle-wrapper:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px rgba(0,0,0,.12)}.single-service-signle-wrapper .icons{transition:all .4s cubic-bezier(.4,0,.2,1)}.single-service-signle-wrapper:hover .icons{transform:scale(1.1) rotate(5deg)}.single-service-signle-wrapper .icons img{transition:filter .3s ease}.single-service-signle-wrapper:hover .icons img{filter:brightness(1.2) drop-shadow(0 4px 8px rgba(0,0,0,.1))}.arrow-right{position:relative;transition:all .3s ease;display:inline-flex;align-items:center;gap:8px}.arrow-right i{transition:transform .3s cubic-bezier(.4,0,.2,1)}.arrow-right:hover i{transform:translateX(5px)}.arrow-right:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:currentColor;transition:width .3s ease}.arrow-right:hover:after{width:100%}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.animate-on-scroll{opacity:0;animation-duration:.8s;animation-fill-mode:both;animation-timing-function:cubic-bezier(.4,0,.2,1)}.animate-on-scroll.animated{opacity:1}.fade-in-up{animation-name:fadeInUp}.fade-in-left{animation-name:fadeInLeft}.fade-in-right{animation-name:fadeInRight}.scale-in{animation-name:scaleIn}.animate-on-scroll:first-child{animation-delay:.1s}.animate-on-scroll:nth-child(2){animation-delay:.2s}.animate-on-scroll:nth-child(3){animation-delay:.3s}.animate-on-scroll:nth-child(4){animation-delay:.4s}.animate-on-scroll:nth-child(5){animation-delay:.5s}.single-input input,.single-input textarea{transition:all .3s cubic-bezier(.4,0,.2,1);position:relative}.single-input input:focus,.single-input textarea:focus{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.08)}.input-wrapper{position:relative}.floating-label{position:absolute;left:12px;top:50%;transform:translateY(-50%);transition:all .3s cubic-bezier(.4,0,.2,1);pointer-events:none;color:#999;font-size:14px}.input-wrapper input:focus~.floating-label,.input-wrapper input:not(:placeholder-shown)~.floating-label{top:-8px;font-size:12px;color:var(--primary-color,#007bff);background:white;padding:0 4px}.single-input input.valid,.single-input textarea.valid{border-color:#28a745;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%2328a745' viewBox='0 0 16 16'%3E%3Cpath d='M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px}.single-input input.invalid,.single-input textarea.invalid{border-color:#dc3545;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23dc3545' viewBox='0 0 16 16'%3E%3Cpath d='M8 15A7 7 0 1 1 8 1a7 7 0 0 1 0 14zm0 1A8 8 0 1 0 8 0a8 8 0 0 0 0 16z'/%3E%3Cpath d='M7.002 11a1 1 0 1 1 2 0 1 1 0 0 1-2 0zM7.1 4.995a.905.905 0 1 1 1.8 0l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px}@keyframes spin{to{transform:rotate(1turn)}}.loading-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:white;border-radius:50%;animation:spin .6s linear infinite}@keyframes skeleton-loading{0%{background-position:-200px 0}to{background-position:calc(200px + 100%) 0}}.skeleton{background:linear-gradient(90deg,#f0f0f0,#f8f8f8 40px,#f0f0f0 80px);background-size:200px 100%;animation:skeleton-loading 1.4s ease-in-out infinite}.skeleton-text{height:16px;margin-bottom:8px;border-radius:4px}.skeleton-title{height:24px;margin-bottom:12px;border-radius:4px;width:60%}.skeleton-card{height:200px;border-radius:8px}.parallax-wrapper{overflow:hidden;position:relative}.parallax-element{transition:transform .1s ease-out;will-change:transform}.swiper-slide{transition:all .4s cubic-bezier(.4,0,.2,1)}.swiper-slide-active{transform:scale(1);opacity:1}.swiper-slide-next,.swiper-slide-prev{transform:scale(.95);opacity:.7}.swiper-pagination-bullet{transition:all .3s cubic-bezier(.4,0,.2,1);opacity:.5}.swiper-pagination-bullet-active{opacity:1;transform:scale(1.3)}.scroll-progress{position:fixed;top:0;left:0;width:0;height:3px;background:linear-gradient(90deg,#007bff,#00d4ff);z-index:9999;transition:width .1s ease-out;box-shadow:0 2px 4px rgba(0,123,255,.3)}.image-hover-zoom{overflow:hidden;position:relative}.image-hover-zoom img{transition:transform .6s cubic-bezier(.4,0,.2,1);will-change:transform}.image-hover-zoom:hover img{transform:scale(1.1)}.image-overlay{position:relative;overflow:hidden}.image-overlay:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(0,123,255,.3),rgba(0,212,255,.3));opacity:0;transition:opacity .4s ease}.image-overlay:hover:after{opacity:1}.shape-area-start .shape{animation-duration:3s;animation-timing-function:ease-in-out;animation-iteration-count:infinite}@keyframes float{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-20px) rotate(5deg)}}@keyframes float-reverse{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(20px) rotate(-5deg)}}.shape-one{animation-name:float;animation-delay:0s}.shape-two{animation-name:float-reverse;animation-delay:.5s}.shape-three{animation-name:float;animation-delay:1s}.shape-four{animation-name:float-reverse;animation-delay:1.5s}.custom-cursor{width:20px;height:20px;border:2px solid #007bff;border-radius:50%;position:fixed;pointer-events:none;z-index:9999;transition:all .15s ease;transform:translate(-50%,-50%);mix-blend-mode:difference}.custom-cursor.hover{width:40px;height:40px;background:rgba(0,123,255,.2)}@keyframes slideInRight{0%{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes slideOutRight{0%{transform:translateX(0);opacity:1}to{transform:translateX(100%);opacity:0}}.toast-notification{position:fixed;top:20px;right:20px;padding:16px 24px;background:white;border-radius:8px;box-shadow:0 10px 30px rgba(0,0,0,.15);z-index:9999;animation:slideInRight .3s ease;max-width:400px}.toast-notification.hiding{animation:slideOutRight .3s ease}.toast-notification.success{border-left:4px solid #28a745}.toast-notification.error{border-left:4px solid #dc3545}.toast-notification.info{border-left:4px solid #007bff}@media (max-width:768px){.rts-btn:hover{transform:none}.single-service-signle-wrapper:hover{transform:translateY(-4px) scale(1.01)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}}.focus-visible:focus-visible{outline:3px solid rgba(0,123,255,.5);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media (prefers-contrast:high){.rts-btn,.single-service-signle-wrapper{border:2px solid}}