:root{--bg-primary:#FFFFFF;--bg-secondary:#F9FAFB;--bg-card:#FFFFFF;--text-primary:#1F2937;--text-secondary:#4B5563;--text-muted:#6B7280;--border-color:#E5E7EB;--shadow-color:rgba(0, 0, 0, 0.1)}body.dark-mode{--bg-primary:#1a1a1a;--bg-secondary:#2d2d2d;--bg-card:#252525;--text-primary:#FFFFFF;--text-secondary:#E5E7EB;--text-muted:#9CA3AF;--border-color:#374151;--shadow-color:rgba(0, 0, 0, 0.3)}body.dark-mode{background-color:var(--bg-primary)!important;color:var(--text-primary)!important}body.dark-mode .bg-white{background-color:var(--bg-card)!important}body.dark-mode .text-carbon,body.dark-mode .text-dark-gray,body.dark-mode .text-gray-800{color:var(--text-primary)!important}body.dark-mode .text-dark-gray-2,body.dark-mode .text-medium-gray{color:var(--text-secondary)!important}body.dark-mode .border-gray-200,body.dark-mode .border-gray-300{border-color:var(--border-color)!important}body.dark-mode .shadow-lg,body.dark-mode .shadow-md{box-shadow:0 10px 15px -3px var(--shadow-color),0 4px 6px -2px var(--shadow-color)!important}body.dark-mode .project-card,body.dark-mode .service-card{background-color:var(--bg-card)!important;border:1px solid var(--border-color)}body.dark-mode .modal-content{background-color:var(--bg-card)!important}body.dark-mode input[type=email],body.dark-mode input[type=tel],body.dark-mode input[type=text],body.dark-mode textarea{background-color:var(--bg-secondary)!important;color:var(--text-primary)!important;border-color:var(--border-color)!important}body.dark-mode input::placeholder,body.dark-mode textarea::placeholder{color:var(--text-muted)!important}body.dark-mode .bg-gray-50{background-color:var(--bg-secondary)!important}body.dark-mode label{color:var(--text-primary)!important}body.dark-mode nav{background-color:rgba(17,24,39,.95)!important}nav a{transition:color .3s ease,transform .2s ease!important}nav a:hover{transform:translateY(-2px)}body.dark-mode section.gradient-blue{background:linear-gradient(135deg,#0072b5 0,#005a8d 100%)!important}body.dark-mode footer.gradient-blue{background:linear-gradient(135deg,#004080 0,#036 100%)!important}body.dark-mode section{background-color:var(--bg-primary)!important}body.dark-mode .bg-gray-100,body.dark-mode .bg-gray-50{background-color:var(--bg-secondary)!important}body.dark-mode .bg-gray-200{background-color:var(--bg-card)!important}body.dark-mode .gradient-silver{background:linear-gradient(135deg,#2d2d2d 0,#1a1a1a 100%)!important}body.dark-mode h1,body.dark-mode h2,body.dark-mode h3,body.dark-mode h4,body.dark-mode h5,body.dark-mode h6{color:var(--text-primary)!important}body.dark-mode li,body.dark-mode p,body.dark-mode span{color:var(--text-secondary)!important}body.dark-mode .bg-carbon,body.dark-mode .bg-dark-black,body.dark-mode .bg-gray-700,body.dark-mode .bg-gray-800,body.dark-mode .bg-gray-900{background-color:var(--bg-card)!important;border:1px solid var(--border-color)}body.dark-mode .project-card .text-lg{color:var(--text-secondary)!important}body.dark-mode a:not(.btn):not(.text-belcons-blue){color:var(--text-secondary)!important}body.dark-mode a:not(.btn):not(.text-belcons-blue):hover{color:var(--text-primary)!important}body.dark-mode button{color:inherit}body.dark-mode .text-belcons-blue{color:#0072b5!important}body.dark-mode .text-belcons-light-blue{color:#339fd9!important}body.dark-mode .absolute .text-white{color:#fff!important}body.dark-mode .fa-image{color:var(--text-muted)!important}.animate-on-scroll{opacity:0;transform:translateY(30px);transition:opacity 1s ease-out,transform 1s ease-out}.animate-on-scroll.animate-in{opacity:1;transform:translateY(0)}@keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-bounce-slow{animation:bounce 3s infinite}@keyframes pulse-blue{0%,100%{box-shadow:0 0 0 0 rgba(0,114,181,.7)}50%{box-shadow:0 0 0 10px rgba(0,114,181,0)}}.animate-pulse-blue{animation:pulse-blue 3s infinite}.hover-blue-shadow{transition:all .5s ease-in-out}.hover-blue-shadow:hover{transform:translateY(-5px) scale(1.02);box-shadow:0 10px 30px rgba(0,114,181,.3)}.btn-primary{transition:all .5s ease-in-out;position:relative;overflow:hidden}.btn-primary::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 .8s,height .8s}.btn-primary:hover::before{width:300px;height:300px}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,114,181,.4)}#lightbox{backdrop-filter:blur(10px);animation:fadeIn .5s ease-in-out}@keyframes fadeIn{from{opacity:0}to{opacity:1}}#lightboxImage{animation:zoomIn .5s ease-in-out}@keyframes zoomIn{from{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}#closeLightbox{background:rgba(0,114,181,.8);border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center}#closeLightbox:hover{background:#0072b5;transform:rotate(90deg)}.project-card,.service-card{transition:all .5s ease-in-out}.project-card:hover,.service-card:hover{transform:translateY(-10px);box-shadow:0 15px 40px rgba(0,114,181,.2)}.icon-bounce:hover{animation:bounce 1s}.gradient-blue{background:linear-gradient(135deg,#0072b5 0,#005a8d 100%)}.gradient-silver{background:linear-gradient(135deg,#e8e8e8 0,silver 100%)}.project-image{transition:all .6s ease-in-out}.project-image:hover{transform:scale(1.05)}input:focus,textarea:focus{border-color:#0072b5!important;box-shadow:0 0 0 3px rgba(0,114,181,.1)!important;outline:0}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:#999}::-webkit-scrollbar-thumb{background:#0072b5;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#005a8d}.spinner{border:3px solid #f3f3f3;border-top:3px solid #0072b5;border-radius:50%;width:40px;height:40px;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@media (max-width:768px){.hover-blue-shadow:hover{transform:none}.project-card:hover,.service-card:hover{transform:translateY(-5px)}}input[type=email],input[type=password],input[type=tel],input[type=text],textarea{color:#1f2937!important;background-color:#fff!important}input::placeholder,textarea::placeholder{color:#9ca3af!important}.social-icon{transition:all .4s ease-in-out}.social-icon:hover{transform:translateY(-3px) scale(1.1);color:#0072b5!important}.whatsapp-float{position:fixed;bottom:20px;right:20px;background:#25d366;color:#fff;width:60px;height:60px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:30px;box-shadow:0 4px 12px rgba(37,211,102,.4);z-index:1000;opacity:0}.whatsapp-float i{display:block;width:30px;height:30px;line-height:30px;text-align:center}.whatsapp-float.animate-entrance{animation:fadeIn 1.5s ease-out forwards}.whatsapp-float:hover{transform:scale(1.1);box-shadow:0 6px 20px rgba(37,211,102,.6);transition:all .4s ease-in-out}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.15)}}.navbar-enter{animation:navbarSlideDown 1s ease-out forwards}@keyframes navbarSlideDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-overlay{animation:fadeIn .5s ease-out}.modal-content{animation:modalSlideUp .6s ease-out}@keyframes modalSlideUp{from{transform:translateY(50px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.mobile-menu-enter{animation:slideDown .6s ease-out}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn 1s ease-in-out}