: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);--scrollbar-track:#F3F6F8;--scrollbar-thumb:#6B879B;--scrollbar-hover:#0072B5;--scrollbar-active:#005A8D}html{scroll-behavior:smooth;touch-action:manipulation}body{font-family:Poppins,sans-serif;overflow-x:hidden;touch-action:manipulation}.skip-link{position:fixed;top:-100px;left:1rem;z-index:10003;padding:1rem;color:#fff;background:#005a8d}.skip-link:focus{top:1rem}[data-image-trigger]:focus-visible{outline:#005A8D solid 3px;outline-offset:-3px}.projects-scroll-track:focus-within{animation-play-state:paused}button[disabled]{opacity:.65;cursor:wait}#lightboxStatus{position:absolute;bottom:4rem}#nextImage,#prevImage{min-width:44px;min-height:44px}#navbar{will-change:transform,opacity;transform:translate3d(0,0,0);backface-visibility:hidden;transition:transform .55s cubic-bezier(.22, 1, .36, 1),opacity .3s}#navbar.nav-visible{transform:translate3d(0,0,0);opacity:1;pointer-events:auto}#navbar.nav-hidden{transform:translate3d(0,-115%,0);opacity:0;pointer-events:none}@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}.animate-scroll{animation:35s linear infinite scroll}.projects-scroll-track{animation-duration:10s}.hero-section{isolation:isolate;min-height:clamp(34rem,72vh,48rem);background:#005a8d}.hero-media,.hero-media img,.hero-shade{pointer-events:none}.hero-media{z-index:-3}.hero-media img{width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade{z-index:-2;background:linear-gradient(90deg,rgba(0,22,43,.94) 0,rgba(0,43,73,.78) 42%,rgba(0,90,141,.2) 100%),linear-gradient(180deg,rgba(0,20,40,.18),rgba(0,20,40,.52))}.hero-grid{background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,black,transparent 85%);opacity:.45}.hero-orb{width:18rem;height:18rem;border:1px solid rgba(255,255,255,.18);border-radius:9999px;box-shadow:0 0 0 2rem rgba(255,255,255,.04),0 0 0 5rem rgba(255,255,255,.025)}.projects-hero{isolation:isolate;background:url("/static/img/projects-hero.1ed87bb9dcea.webp") center/cover no-repeat #005a8d}.projects-hero-backdrop,.projects-hero-shade{pointer-events:none}.projects-hero-backdrop{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.5rem;opacity:.88;transform:scale(1.04)}.projects-hero-image{width:100%;height:100%;min-height:22rem;object-fit:cover;filter:saturate(.9) contrast(1.05)}.projects-hero-fallback,.projects-hero-image-single{grid-column:1/-1}.projects-hero-shade{background:linear-gradient(90deg,rgba(0,25,48,.9),rgba(0,54,88,.68) 54%,rgba(0,90,141,.66)),linear-gradient(180deg,rgba(0,35,63,.22),rgba(0,24,42,.72))}.hero-eyebrow{letter-spacing:.2em;color:rgba(255,255,255,.76)}.section-kicker{letter-spacing:.18em;color:#0072b5;font-size:.75rem;font-weight:700;text-transform:uppercase}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:rgba(51,159,217,.75) solid 3px;outline-offset:3px}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);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 select,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 #mobile-menu,body.dark-mode #navbar{background-color:rgba(17,24,39,.95)!important}body.force-mobile-nav #desktop-nav-links{display:none!important}body.force-mobile-nav #mobile-nav-toggle{display:block!important}body.force-mobile-nav #mobile-menu.hidden{display:none!important}body.force-mobile-nav #mobile-menu:not(.hidden){display:block!important}#projectDetailBreadcrumb{background:0 0!important;box-shadow:none!important}nav a{transition:color .3s,transform .2s!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,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{animation:.72s cubic-bezier(.22,1,.36,1) both cardReveal}@keyframes cardReveal{from{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.contact-form-wrapper,.contact-info-wrapper>*,.project-card,.service-card{animation:.72s cubic-bezier(.22,1,.36,1) both cardReveal}#servicesCardsGrid .service-slide:nth-child(2){animation-delay:80ms}#servicesCardsGrid .service-slide:nth-child(3){animation-delay:160ms}#servicesCardsGrid .service-slide:nth-child(4){animation-delay:240ms}.projects-scroll-track .project-card:nth-child(2){animation-delay:.1s}.projects-scroll-track .project-card:nth-child(3){animation-delay:180ms}.projects-scroll-track .project-card:nth-child(4){animation-delay:260ms}.services-carousel-frame{max-width:72rem;margin-inline:auto;padding-inline:3.5rem}.services-carousel-frame .services-arrow-btn{width:2.5rem;height:3rem;display:inline-flex;align-items:center;justify-content:center}@keyframes bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-bounce-slow{animation:3s infinite bounce}@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:3s infinite pulse-blue}.hover-blue-shadow{transition:.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:.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{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:.5s ease-in-out fadeIn}@keyframes fadeIn{from{opacity:0}to{opacity:1}}#lightboxImage{animation:.5s ease-in-out zoomIn}@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:.5s ease-in-out}.services-arrow-btn{background:0 0!important;border:0;color:#fff!important;font-size:2rem;line-height:1;padding:.25rem .5rem;text-shadow:0 2px 10px rgba(0,0,0,.85);transition:transform .25s,opacity .25s}.services-arrow-btn:hover{transform:scale(1.15)}.services-arrow-btn:disabled{opacity:.35;cursor:default;transform:none}.service-slide-enter-next{animation:.45s cubic-bezier(.22,1,.36,1) both serviceSlideInNext,4.8s ease-in-out infinite serviceCardPulse}.service-slide-enter-prev{animation:.45s cubic-bezier(.22,1,.36,1) both serviceSlideInPrev,4.8s ease-in-out infinite serviceCardPulse}@keyframes serviceSlideInNext{from{opacity:0;transform:translateX(28px) scale(.98)}to{opacity:1;transform:translateX(0) scale(1)}}@keyframes serviceSlideInPrev{from{opacity:0;transform:translateX(-28px) scale(.98)}to{opacity:1;transform:translateX(0) scale(1)}}@keyframes serviceCardPulse{0%,100%{box-shadow:0 10px 24px rgba(0,114,181,.1)}50%{box-shadow:0 16px 34px rgba(0,114,181,.24)}}.service-card{animation:4.8s ease-in-out infinite serviceCardPulse}.service-card.service-slide-enter-next{animation:.45s cubic-bezier(.22,1,.36,1) both serviceSlideInNext,4.8s ease-in-out infinite serviceCardPulse}.service-card.service-slide-enter-prev{animation:.45s cubic-bezier(.22,1,.36,1) both serviceSlideInPrev,4.8s ease-in-out infinite serviceCardPulse}.project-card:hover,.service-card:hover{transform:translateY(-10px);box-shadow:0 15px 40px rgba(0,114,181,.2)}.icon-bounce.icon-bounce-active{animation:1s cubic-bezier(.22,1,.36,1) both bounce}.service-card:focus-visible{outline:rgba(51,159,217,.7) solid 3px;outline-offset:4px}.gradient-blue{background:linear-gradient(135deg,#0072b5 0,#005a8d 100%)}.gradient-silver{background:linear-gradient(135deg,#e8e8e8 0,silver 100%)}.project-image{transition:.6s ease-in-out}.project-image:hover{transform:scale(1.05)}input:focus,select:focus,textarea:focus{border-color:#0072b5!important;box-shadow:0 0 0 3px rgba(0,114,181,.1)!important;outline:0}:root:has(body.dark-mode){--scrollbar-track:#202830;--scrollbar-thumb:#8BA7BC;--scrollbar-hover:#339FD9;--scrollbar-active:#74C6ED}@media (forced-colors:none){::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:999px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);background-clip:padding-box;border:2px solid transparent;border-radius:999px;min-height:40px}::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-hover)}::-webkit-scrollbar-thumb:active{background-color:var(--scrollbar-active)}::-webkit-scrollbar-corner{background:var(--scrollbar-track)}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}}}.spinner{border:3px solid #f3f3f3;border-top:3px solid #0072b5;border-radius:50%;width:40px;height:40px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}}@media (max-width:768px){.hover-blue-shadow:hover{transform:none}.services-arrow-btn{font-size:1.7rem;padding:.2rem .35rem}.services-carousel-frame{padding-inline:2.25rem}.projects-hero-backdrop{grid-template-columns:repeat(2,minmax(0,1fr))}.projects-hero-image{min-height:24rem}.project-card:hover,.service-card:hover{transform:translateY(-5px)}.service-slide{min-height:250px}.whatsapp-quote-bubble{right:12px;left:auto;bottom:92px;width:170px;max-width:170px;padding:12px 34px 12px 12px}.whatsapp-quote-text{font-size:12px;line-height:1.35}}@media (min-width:768px) and (max-width:1023px){.projects-scroll-track{animation-duration:22s}}.animate-scroll:hover{animation-play-state:paused}#contact .contact-form-wrapper{order:1}#contact .contact-info-wrapper{order:2}@media (min-width:1024px){.projects-scroll-track{animation-duration:42s}#contact .contact-info-wrapper{order:1}#contact .contact-form-wrapper{order:2}}input[type=email],input[type=password],input[type=tel],input[type=text],select,textarea{color:#1f2937!important;background-color:#fff!important}select option{color:#1f2937;background-color:#fff}body.dark-mode select option{color:#e5e7eb;background-color:#1f2937}input::placeholder,textarea::placeholder{color:#9ca3af!important}.social-icon{transition:.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:1;transition:transform .35s cubic-bezier(.22, 1, .36, 1),box-shadow .35s}.whatsapp-float i{display:block;width:30px;height:30px;line-height:30px;text-align:center}.whatsapp-float:hover{transform:translateY(-4px) scale(1.05);box-shadow:0 12px 28px rgba(37,211,102,.48),0 0 0 6px rgba(37,211,102,.12)}.whatsapp-float.whatsapp-hover-animation i{animation:.65s cubic-bezier(.22,1,.36,1) both whatsappIconHover}@keyframes whatsappIconHover{0%{transform:scale(1)}55%{transform:scale(1.16) rotate(-4deg)}100%{transform:scale(1) rotate(0)}}.whatsapp-quote-bubble{position:fixed;right:90px;bottom:26px;max-width:220px;background:#fff;color:#1f2937;border-radius:12px;box-shadow:0 8px 22px rgba(0,0,0,.18);padding:10px 36px 10px 12px;z-index:1010;opacity:0;transform:translateY(10px);transition:opacity .25s,transform .25s}.whatsapp-quote-bubble.show{opacity:1;transform:translateY(0)}.whatsapp-quote-bubble.entering{animation:.45s cubic-bezier(.22,1,.36,1) both quoteBubbleIn}.whatsapp-quote-bubble.exiting{animation:.35s both quoteBubbleOut}.whatsapp-quote-text{font-size:13px;font-weight:600;line-height:1.2}@keyframes quoteBubbleIn{0%{opacity:0;transform:translateY(16px) scale(.95)}100%{opacity:1;transform:translateY(0) scale(1)}}@keyframes quoteBubbleOut{0%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(10px) scale(.96)}}.whatsapp-quote-close{position:absolute;top:6px;right:6px;width:22px;height:22px;border-radius:999px;border:none;display:flex;align-items:center;justify-content:center;background:#e5e7eb;color:#374151;cursor:pointer}body.dark-mode .whatsapp-quote-bubble{background:#1f2937;color:#e5e7eb}body.dark-mode .whatsapp-quote-close{background:#374151;color:#e5e7eb}body.dark-mode main{background:var(--bg-primary)}body.dark-mode .hero-section,body.dark-mode .projects-hero{background-color:#063b59!important}body.dark-mode .hero-section .text-dark-gray,body.dark-mode .projects-hero .text-dark-gray{color:#d1d5db!important}body.dark-mode .contact-form-wrapper,body.dark-mode .contact-info-wrapper>*,body.dark-mode .project-card,body.dark-mode .service-card{background:var(--bg-card)!important;color:var(--text-primary);border-color:var(--border-color)!important}body.dark-mode .contact-form-wrapper p,body.dark-mode .contact-info-wrapper p,body.dark-mode .project-card p,body.dark-mode .service-card p{color:var(--text-secondary)!important}body.dark-mode .contact-form-wrapper input,body.dark-mode .contact-form-wrapper select,body.dark-mode .contact-form-wrapper textarea{background:#111827!important;color:#f9fafb!important;border-color:#4b5563!important}body.dark-mode .contact-form-wrapper input:focus,body.dark-mode .contact-form-wrapper select:focus,body.dark-mode .contact-form-wrapper textarea:focus{border-color:#339fd9!important;box-shadow:0 0 0 3px rgba(51,159,217,.2)!important}@keyframes pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.15)}}.navbar-enter{animation:1s ease-out forwards navbarSlideDown}@keyframes navbarSlideDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-overlay{animation:.5s ease-out fadeIn}.modal-content{animation:.6s ease-out modalSlideUp}@keyframes modalSlideUp{from{transform:translateY(50px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.mobile-menu-enter{animation:.6s ease-out slideDown}.mobile-menu-exit{animation:.35s ease-in forwards slideUp}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.fade-in{animation:1s ease-in-out fadeIn}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,::after,::before{animation-duration:0s!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:0s!important}.animate-scroll{animation:none}}
