<<<<<<< HEAD
*{margin:0;padding:0;box-sizing:border-box}:root{--azul-primario:#2196F3;--azul-secundario:#64B5F6;--azul-oscuro:#1976D2;--azul-profundo:#0a192f;--blanco:#E0E0E0;--gris-claro:#1e1e1e;--gris-medio:#2c2c2c;--gris-oscuro:#607D8B;--texto-oscuro:#cfd8dc;--texto-medio:#b0bec5;--texto-claro:#90a4ae;--acento:#FF9800;--acento-hover:#FB8C00;--acento-oscuro:#F57C00;--transicion:all 0.4s cubic-bezier(.175,.885,.32,1.275);--sombra-suave:0 5px 20px rgba(0,0,0,.4);--sombra-media:0 10px 30px rgba(0,0,0,.5);--sombra-fuerte:0 15px 40px rgba(0,0,0,.7)}body{font-family:Roboto,sans-serif;line-height:1.6;color:var(--texto-oscuro);background:var(--gris-claro);min-height:100vh;overflow-x:hidden;position:relative;z-index:1}.section-title{text-align:center;margin-bottom:5rem;color:var(--azul-secundario);position:relative;font-size:2.5rem;font-weight:700;text-transform:uppercase;letter-spacing:1px}.section-title::after{display:none!important;background:0 0!important;content:none!important}section:hover .section-title::after{width:120px}.container{max-width:1200px;margin:0 auto;padding:0 2rem}header{background:rgba(8,12,14,.85);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid rgba(255,255,255,.1);position:fixed;width:100%;z-index:1000;transition:var(--transicion);animation:.8s ease-out slideDown;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}header *,nav *{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}header.scrolled{background:rgba(8,12,14,.95);backdrop-filter:blur(25px) saturate(200%);-webkit-backdrop-filter:blur(25px) saturate(200%);border-bottom:1px solid rgba(33,150,243,.2);transform:translateY(0)}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}100%{transform:translateY(0);opacity:1}}nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;max-width:1200px;margin:0 auto;padding:.5rem 2rem}.logo{justify-self:start;display:flex;align-items:center;font-size:1.5rem;font-weight:700;color:var(--azul-secundario);text-decoration:none;transition:.3s;position:relative;padding:0;outline:0}.logo:focus,.logo:hover{outline:0}.logo svg{height:32px;margin-right:10px;transition:.3s}.nav-links{justify-self:center;display:flex;gap:2rem;list-style:none;margin:0;padding:0}.nav-links a{color:#fff;font-weight:600;text-shadow:0 1px 1px rgba(0,0,0,.3);font-size:1rem;text-decoration:none;transition:.3s cubic-bezier(.25,.8,.25,1);position:relative;padding:.8rem 1.2rem;background:0 0!important;border:none!important;outline:0!important}.nav-links a::after{content:'';display:block;position:absolute;left:0;right:0;bottom:8px;height:3px;background:0 0!important;border-radius:2px;transition:background .3s;width:0;margin:0 auto;z-index:1}.nav-links a.active{border-color:var(--azul-primario);transition:color .3s,background .3s}.nav-links a.active,.nav-links a:hover{color:var(--azul-secundario)}.nav-links a.active::after{content:'';background:var(--azul-secundario)}.overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(8,12,14,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:999;opacity:0;visibility:hidden;transition:.5s cubic-bezier(.175,.885,.32,1.275)}.overlay.active{opacity:1;visibility:visible}.hero,.hero-bg{background:0 0!important;box-shadow:none!important}.hero-bg::after,.hero-bg::before{display:none!important;background:0 0!important;content:none!important}.hero{position:relative;height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;background:var(--gris-claro)}.hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 80%,rgba(33,150,243,.15) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,152,0,.1) 0,transparent 50%),radial-gradient(circle at 40% 40%,rgba(100,181,246,.1) 0,transparent 50%),url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000"><defs><radialGradient id="a" cx="50%" cy="50%"><stop offset="0%" stop-color="%23ffffff" stop-opacity="0.1"/><stop offset="100%" stop-color="%23ffffff" stop-opacity="0"/></radialGradient></defs><circle cx="200" cy="200" r="2" fill="url(%23a)"/><circle cx="800" cy="300" r="1.5" fill="url(%23a)"/><circle cx="400" cy="700" r="1" fill="url(%23a)"/><circle cx="900" cy="800" r="2.5" fill="url(%23a)"/></svg>');animation:20s ease-in-out infinite float,8s ease-in-out infinite gradientShift}.particles-bg{background:0 0!important;animation:none!important;display:none!important}#particles-js{position:fixed;top:0;left:0;width:100vw;height:100%;min-height:100vh;z-index:0;pointer-events:none;border:none!important;background:0 0!important}.hero::before{content:none!important;background:0 0!important;animation:none!important}@keyframes backgroundFloat{0%,100%{transform:translateY(0) scale(1);opacity:.3}50%{transform:translateY(-20px) scale(1.1);opacity:.5}}.hero-content{position:relative;z-index:2;max-width:900px;padding:0 2rem;animation:1.5s ease-out fadeInUp;width:100%;text-align:center;margin-top:2rem}.hero-content h1{margin-bottom:2rem;line-height:1.2;min-height:4.2rem;display:flex;align-items:center;justify-content:center}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-20px)}}.hero h1{font-size:3rem;font-weight:700;color:var(--azul-secundario);text-shadow:0 0 20px rgba(33,150,243,.3),0 0 40px rgba(33,150,243,.2),0 0 60px rgba(33,150,243,.1);margin-bottom:2rem;line-height:1.4;text-align:center;background:linear-gradient(45deg,var(--azul-secundario),var(--acento),var(--azul-primario));background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:3s ease-in-out infinite gradientShift;white-space:normal;word-wrap:break-word;min-height:5rem;padding:0 1rem;overflow-wrap:break-word;hyphens:auto}.hero p{font-size:1.2rem;color:var(--texto-medio);margin-bottom:3rem;max-width:800px;margin-left:auto;margin-right:auto;line-height:1.6;text-align:center;padding:0 1rem;overflow-wrap:break-word;hyphens:auto}@keyframes gradientShift{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}@media (max-width:768px){.hero h1{font-size:2.2rem;min-height:4rem;line-height:1.4}.hero p{font-size:1.1rem}.hero-content{max-width:100%;padding:0 1rem;margin-top:1rem}.service-grid{grid-template-columns:1fr}.service-card{grid-column:auto!important;max-width:100%!important}}@media (max-width:576px){.hero h1{font-size:1.8rem;min-height:3rem;line-height:1.3}.hero p{font-size:1.1rem}.hero-content{padding:0 .5rem}}@media (max-width:600px){.hero h1{hyphens:none!important;word-break:normal!important;overflow-wrap:break-word!important;white-space:normal!important}}.cta-button{display:inline-block;background:linear-gradient(45deg,var(--azul-primario),var(--azul-secundario));color:#fff;padding:1rem 2.5rem;text-decoration:none;border-radius:50px;font-weight:600;font-size:1.1rem;transition:.4s;position:relative;overflow:hidden;box-shadow:0 10px 30px rgba(33,150,243,.3);border:2px solid transparent}.cta-button::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:.6s}.cta-button:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 20px 40px rgba(33,150,243,.4);border-color:var(--acento)}.cta-button:hover::before{left:100%}.services{padding:8rem 2rem;background:var(--gris-claro);position:relative}.checkbox-label{display:flex;align-items:center;user-select:none}.checkmark{transform:translateY(-50%);display:flex;align-items:center;justify-content:center;box-sizing:border-box}.checkmark:after{content:""}.service-card:nth-of-type(4){grid-column:2}.service-card:nth-of-type(5){grid-column:3}@media (max-width:768px){.service-grid{grid-template-columns:1fr}.service-card{padding:2rem 1rem}}.service-card::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(33,150,243,.2),transparent);transition:.8s cubic-bezier(.25, .8, .25, 1);z-index:1}.service-card:hover{transform:translateY(-20px) scale(1.05);background:rgba(255,255,255,.08);border:1px solid rgba(33,150,243,.3);box-shadow:0 25px 50px rgba(33,150,243,.3),0 0 0 1px rgba(33,150,243,.2),0 0 30px rgba(33,150,243,.1),inset 0 1px 0 rgba(255,255,255,.3);transition:.5s cubic-bezier(.25, .8, .25, 1)}.service-card:hover::before{left:100%}.service-icon{font-size:3.5rem;color:var(--azul-primario);margin-bottom:1.5rem;transition:.4s cubic-bezier(.25, .8, .25, 1);position:relative;z-index:2;animation:3s ease-in-out infinite iconFloat}.service-card:hover .service-icon{transform:scale(1.2) rotate(12deg);color:var(--acento);transition:.4s cubic-bezier(.25, .8, .25, 1);animation:.6s ease-in-out iconPulse}@keyframes iconFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes iconPulse{0%{transform:scale(1) rotate(0)}50%{transform:scale(1.3) rotate(6deg)}100%{transform:scale(1.2) rotate(12deg)}}.service-card h3{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.5);font-weight:700;margin-bottom:1rem;font-size:1.4rem;transition:var(--transicion);overflow-wrap:anywhere!important;word-break:break-word!important;hyphens:none!important;line-height:1.3;text-align:center;padding:0 .5rem;white-space:normal!important;max-width:100%!important}.service-card:hover h3{color:var(--acento)!important}.service-card p{transition:var(--transicion);color:#fff!important;text-shadow:0 1px 1px rgba(0,0,0,.3);font-weight:500}.service-content{color:#fff!important;line-height:1.6;margin-bottom:1rem;transition:var(--transicion);text-shadow:0 1px 1px rgba(0,0,0,.3);font-weight:500}.service-features{width:100%;margin:1rem 0 0;padding:0;list-style:none;display:block;position:static;opacity:1;max-height:none;overflow:visible;transition:.3s}.service-card:hover .service-features{display:block!important;opacity:1!important;max-height:500px!important;overflow:visible!important;visibility:visible!important;transition:.3s!important}.service-features li{padding:.7rem 0 .7rem 1.8rem;color:#fff!important;font-size:1.1rem;position:relative;transition:var(--transicion);font-weight:500}.service-features li::before{content:'✓';position:absolute;left:0;color:var(--acento);font-weight:700;font-size:1.2rem}.service-card:hover .service-features li{animation:.4s cubic-bezier(.25,.8,.25,1) slideInLeft;animation-fill-mode:both}.service-card:hover .service-features li:first-child{animation-delay:.1s}.service-card:hover .service-features li:nth-child(2){animation-delay:.2s}.service-card:hover .service-features li:nth-child(3){animation-delay:.3s}.service-card:hover .service-features li:nth-child(4){animation-delay:.4s}.service-card:hover .service-features li:nth-child(5){animation-delay:.5s}@keyframes slideInLeft{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.service-description{display:none;margin-top:1rem;font-size:1.05rem;color:var(--texto-medio);transition:opacity .3s;opacity:0;width:100%;text-align:center;position:static}.service-card.mobile-expanded .service-description,.service-card:hover .service-description{display:block;opacity:1}.service-content.service-description-hover{display:none;margin-top:1rem;font-size:1.05rem;color:var(--texto-medio);transition:opacity .3s;opacity:0;width:100%;text-align:center;position:static}.service-card:hover .service-content.service-description-hover{display:block;opacity:1}.portfolio{padding:8rem 2rem;background:var(--gris-claro);color:var(--blanco);position:relative;overflow:hidden}.portfolio::after,.portfolio::before{content:none}.portfolio-content{max-width:1200px;margin:0 auto;position:relative;z-index:2}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;margin-top:4rem}.portfolio-item{background:rgba(255,255,255,.1);border-radius:12px;overflow:hidden;box-shadow:0 15px 25px rgba(0,0,0,.2);transition:var(--transicion);position:relative;opacity:0;transform:translateY(30px);animation:.5s forwards fadeInStagger}.portfolio-item:first-child{animation-delay:.1s}.portfolio-item:nth-child(2){animation-delay:.2s}.portfolio-item:nth-child(3){animation-delay:.3s}.portfolio-item:nth-child(4){animation-delay:.4s}.portfolio-item:nth-child(5){animation-delay:.5s}.portfolio-item:nth-child(6){animation-delay:.6s}.portfolio-item:hover{transform:translateY(-10px) scale(1.03);box-shadow:0 20px 35px rgba(0,0,0,.3);background:rgba(255,255,255,.15)}.portfolio-item img{width:100%;height:200px;object-fit:cover;transition:var(--transicion)}.portfolio-item:hover img{transform:scale(1.05);filter:brightness(1.1)}.portfolio-item p{padding:1.5rem;text-align:center;font-weight:500;transition:var(--transicion)}.portfolio-item:hover p{color:var(--acento)}.contact{padding:8rem 2rem;background:var(--gris-claro);position:relative;text-align:center}.contact-form{max-width:700px;margin:0 auto;background:rgba(255,255,255,.05);padding:3rem;border-radius:25px;box-shadow:0 8px 32px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.2),0 0 0 1px rgba(255,255,255,.05);transition:var(--transicion);transform:translateY(30px);opacity:0;animation:1s .3s forwards fadeInUp;text-align:center}.contact-form:hover{background:rgba(255,255,255,.08);border:1px solid rgba(33,150,243,.3);box-shadow:0 25px 50px rgba(33,150,243,.2),0 0 0 1px rgba(33,150,243,.2),inset 0 1px 0 rgba(255,255,255,.3);transform:translateY(-5px)}.contact-form h3{text-align:center;margin-bottom:2rem;color:var(--azul-oscuro);font-size:1.8rem;position:relative;padding-bottom:15px}.contact-form h3::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:60px;height:2px;background:var(--acento)}.form-row{display:flex;gap:1.5rem;margin-bottom:1.5rem}.form-group{margin-bottom:1.5rem;flex:1}.form-control{width:100%;padding:1rem 1.5rem;border:2px solid rgba(255,255,255,.1);border-radius:15px;font-size:1rem;color:#fff;font-weight:500;background:rgba(255,255,255,.1);transition:.3s cubic-bezier(.25, .8, .25, 1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 15px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.1)}.form-control:focus{outline:0;border-color:var(--azul-primario);background:rgba(255,255,255,.15);box-shadow:0 8px 25px rgba(33,150,243,.3),0 0 0 3px rgba(33,150,243,.2),inset 0 1px 0 rgba(255,255,255,.3);transform:translateY(-2px)}.form-control:valid{border-color:#4caf50;background:rgba(76,175,80,.05)}.form-control:invalid:not(:placeholder-shown){border-color:#f44336;background:rgba(244,67,54,.05)}.form-control:-webkit-autofill,.form-control:-webkit-autofill:focus,.form-control:-webkit-autofill:hover{-webkit-box-shadow:0 0 0 1000px rgba(255,255,255,.1) inset;-webkit-text-fill-color:var(--texto-oscuro);transition:background-color 5000s ease-in-out}.error-message{color:var(--error-color,#f44336);font-size:.9rem;margin-top:.8rem;opacity:0;transform:translateY(-10px);transition:.3s cubic-bezier(.25,.8,.25,1);display:flex;align-items:flex-start;gap:.5rem;font-weight:600;text-shadow:0 1px 1px rgba(0,0,0,.3);line-height:1.4;padding:.8rem 1rem;background:rgba(244,67,54,.1);border:1px solid rgba(244,67,54,.3);border-radius:10px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 15px rgba(244,67,54,.2)}.error-message::before{content:'⚠️';font-size:1.1rem;flex-shrink:0;margin-top:1px}.error-message.show{opacity:1;transform:translateY(0)}.form-control.error{border-color:#f44336}@keyframes shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.submit-btn{background:linear-gradient(45deg,var(--azul-primario),var(--azul-secundario));color:#fff;padding:1rem 2.5rem;border:none;border-radius:25px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:.3s cubic-bezier(.25, .8, .25, 1);position:relative;overflow:hidden;box-shadow:0 8px 25px rgba(33,150,243,.3),0 0 0 1px rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);text-shadow:0 1px 2px rgba(0,0,0,.5)}.submit-btn:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 15px 35px rgba(33,150,243,.4),0 0 0 1px rgba(255,255,255,.2);background:linear-gradient(45deg,var(--azul-secundario),var(--acento))}.submit-btn:active{transform:translateY(-1px) scale(1.02)}.contact-description{text-align:center;color:var(--gris-oscuro);margin-bottom:2rem;font-size:1.1rem}.form-label{display:block;margin-bottom:.5rem;color:#fff;font-weight:600;font-size:.95rem;text-shadow:0 1px 1px rgba(0,0,0,.3)}.checkbox-label{display:flex;align-items:flex-start;color:var(--gris-oscuro)}.checkmark{background-color:var(--gris-medio);border:2px solid var(--gris-oscuro);flex-shrink:0}.checkbox-label:hover input~.checkmark{background-color:var(--gris-oscuro)}.checkbox-label input:checked~.checkmark{background-color:var(--azul-primario);border-color:var(--azul-primario)}.checkmark:after{content:"";transform:rotate(45deg)}.privacy-link{color:var(--azul-primario);text-decoration:none;font-weight:500}.privacy-link:hover{text-decoration:underline}.submit-btn:disabled,.submit-btn:disabled:hover{background:var(--gris-medio)}.btn-loading{display:flex;align-items:center}.form-success{text-align:center;padding:3rem 2rem;background:linear-gradient(135deg,rgba(76,175,80,.15) 0,rgba(76,175,80,.05) 100%);border:2px solid rgba(76,175,80,.3);border-radius:20px;color:var(--success-color,#4caf50);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);box-shadow:0 15px 35px rgba(76,175,80,.2),inset 0 1px 0 rgba(255,255,255,.1);animation:.6s cubic-bezier(.175,.885,.32,1.275) successSlideIn;position:relative;overflow:hidden}.form-success::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(76,175,80,.1),transparent);animation:2s ease-in-out successShimmer}@keyframes successSlideIn{0%{opacity:0;transform:translateY(30px) scale(.9)}100%{opacity:1;transform:translateY(0) scale(1)}}@keyframes successShimmer{0%{left:-100%}100%{left:100%}}.form-success i{font-size:4rem;color:var(--success-color,#4caf50);margin-bottom:1.5rem;animation:2s ease-in-out infinite successPulse;text-shadow:0 0 20px rgba(76,175,80,.5)}@keyframes successPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.form-success h4{margin:1rem 0;color:#fff;font-size:1.8rem;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3)}.form-success p{margin:0;font-size:1.2rem;color:var(--texto-medio,#b0bec5);font-weight:500;line-height:1.6}@media (max-width:768px){.contact-description{font-size:1rem}.form-label{font-size:.9rem}.checkbox-label{font-size:.85rem}.form-success{padding:2rem 1.5rem}.form-success i{font-size:3rem}.form-success h4{font-size:1.5rem}.form-success p{font-size:1.1rem}.quote{font-size:.9rem;margin-top:.8rem;padding:0 1rem}}footer{backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-top:1px solid rgba(255,255,255,.1);color:#fff;padding:3rem 2rem;text-align:center;position:relative;text-shadow:0 1px 1px rgba(0,0,0,.3)}.footer-content{max-width:1200px;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.footer-logo{margin-bottom:1rem}.footer-logo img{transition:.3s}.footer-logo img:hover{transform:scale(1.05);filter:brightness(1.1)}.footer-contact{background:rgba(255,255,255,.05);padding:1.5rem;border-radius:15px;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px);max-width:400px;width:100%}.footer-contact .contact-item{font-weight:500}.footer-links{display:flex;justify-content:center;gap:2rem;margin:2rem 0;list-style:none;padding:0}.footer-links a{color:var(--blanco);transition:.3s;text-decoration:none;position:relative;padding:5px 0;text-shadow:0 1px 1px rgba(0,0,0,.3)}.footer-links a::after{content:'';position:absolute;width:0;height:2px;bottom:0;left:0;background-color:var(--acento);transition:width .3s}.footer-links a:hover{color:var(--acento);text-shadow:0 1px 2px rgba(0,0,0,.5)}.footer-links a:hover::after{width:100%}.social-icons{display:flex;justify-content:center;gap:1.5rem;margin:2rem 0}.social-icon{color:var(--blanco);font-size:1.5rem;transition:.3s;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center}.social-icon:hover{color:var(--acento);transform:translateY(-5px) rotate(360deg);background:rgba(255,255,255,.2)}.copyright{text-align:center;color:#b0bec5;font-size:.9rem;margin-top:1.5rem;opacity:.8;border-top:1px solid rgba(255,255,255,.1);padding-top:1.5rem;width:100%}.quote{text-align:center;font-style:italic;color:#90a4ae;font-size:.95rem;margin-top:1rem;opacity:.8;max-width:600px;margin-left:auto;margin-right:auto;line-height:1.5;font-weight:400}.scroll-top{position:fixed;bottom:2rem;right:2rem;background:var(--azul-primario);color:#fff;width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;visibility:hidden;transition:.4s;z-index:999;box-shadow:0 5px 15px rgba(0,0,0,.1)}.scroll-top.visible{opacity:1;visibility:visible}.scroll-top:hover{background:var(--azul-oscuro);transform:translateY(-5px);box-shadow:0 8px 25px rgba(0,0,0,.2)}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInStagger{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes typing{from{width:0}to{width:100%}}@keyframes blink-caret{from,to{border-color:transparent}50%{border-color:var(--acento)}}@media (max-width:992px){.hero h1{font-size:2.8rem}.form-row{flex-direction:column;gap:0}.section-title{font-size:2.2rem}}@media (max-width:768px){.scroll-top{display:none!important}.hero h1{font-size:2.4rem}.nav-links{position:fixed;top:0;right:-100%;width:100%;height:100vh;background:rgba(0,0,0,.95);backdrop-filter:blur(10px);display:flex;flex-direction:column;justify-content:center;align-items:center;transition:right .3s;z-index:1000}.nav-links a{font-size:1.5rem;margin:1rem 0}.logo{font-size:1.4rem}.logo svg{width:20px;height:20px}}html{scroll-behavior:smooth!important;scroll-padding-top:80px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--gris-claro)}::-webkit-scrollbar-thumb{background:linear-gradient(45deg,var(--azul-primario),var(--azul-secundario));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(45deg,var(--azul-secundario),var(--acento))}.scroll-progress{position:fixed;top:0;left:0;width:0%;height:3px;background:linear-gradient(90deg,var(--azul-primario),var(--acento));z-index:9999;transition:width .1s}.loading{position:relative}.loading::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:1.5s infinite loading}@keyframes loading{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}.nav-links a.active{position:relative!important;color:#64b5f6!important;background:rgba(33,150,243,.15);border-color:var(--azul-primario)}.nav-links a.active::after{content:'';display:block;position:absolute;left:10%;right:10%;bottom:8px;height:3px;background:linear-gradient(90deg,#2196f3 0,#64b5f6 100%)!important;border-radius:2px;transition:width .4s cubic-bezier(.4,0,.2,1),background .3s;width:80%;margin:0 auto;z-index:1}.logo,.nav-links li{animation:.6s ease-out forwards fadeInDown}.nav-links li:first-child{animation-delay:.1s}.nav-links li:nth-child(2){animation-delay:.2s}.nav-links li:nth-child(3){animation-delay:.3s}@keyframes fadeInDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.service-card.loading{position:relative;overflow:hidden}.service-card.loading::after{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:1.5s infinite loadingShimmer}@keyframes loadingShimmer{0%{left:-100%}100%{left:100%}}.service-card.loading .service-icon{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:1.5s infinite skeletonLoading;border-radius:50%;width:80px;height:80px;margin:0 auto 1.5rem}.service-card.loading h3{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:1.5s infinite skeletonLoading;height:24px;border-radius:4px;margin-bottom:1rem}.service-card.loading p{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:1.5s infinite skeletonLoading;height:16px;border-radius:4px;margin-bottom:.5rem}.service-card.loading p:nth-child(2){width:80%}.service-card.loading p:nth-child(3){width:60%}@keyframes skeletonLoading{0%{background-position:-200% 0}100%{background-position:200% 0}}:focus{outline:3px solid var(--acento);outline-offset:2px;border-radius:4px}.lang-dropdown-menu:focus,.lang-option:focus,.lang-trigger:focus,.language-selector :focus{outline:0!important;box-shadow:none!important}.skip-link{position:absolute;top:-40px;left:6px;background:var(--azul-primario);color:#fff;padding:8px;text-decoration:none;border-radius:4px;z-index:10000;font-weight:600}.skip-link:focus{top:6px}.contact,.container,.hero,.portfolio,.services,footer,section{background:0 0!important;box-shadow:none!important}.logo-img{display:inline-block;height:100px!important;width:100px!important;object-fit:contain;margin-right:10px;vertical-align:middle;outline:0}.logo-img-footer,footer .logo-img{height:72px;width:72px;margin-bottom:-8px;display:block;margin-left:auto;margin-right:auto}@media (hover:hover) and (pointer:fine){.service-card .service-features{display:block!important;opacity:1!important;max-height:none!important;overflow:visible!important;visibility:visible!important}.service-card:hover .service-content.service-description-hover{display:block!important;opacity:1!important;visibility:visible!important}}@media (hover:none) and (pointer:coarse){.service-card:hover{transform:none!important;box-shadow:var(--sombra-suave)!important}.service-card:hover::before{opacity:0!important}.service-card:hover .service-icon{transform:none!important;animation:none!important}.service-card:hover h3{transform:none!important}.service-card:hover .service-features{display:none!important;opacity:0!important;transform:translateY(0)!important}.service-card:hover .service-content.service-description-hover{opacity:1!important;transform:translateY(0)!important}.nav-links a:hover{transform:none!important;color:#fff!important}.nav-links a:hover::after{width:0!important}}.service-card.mobile-expanded{transform:translateY(-10px) scale(1.02)!important;box-shadow:var(--sombra-media)!important}.service-card.mobile-expanded::before{opacity:.1!important}.service-card.mobile-expanded .service-icon{transform:scale(1.1)!important;animation:2s infinite iconPulse!important}.service-card.mobile-expanded h3{transform:translateY(-5px)!important;color:var(--azul-secundario)!important}.service-card.mobile-expanded .service-features{opacity:1!important;transform:translateY(0)!important;max-height:500px!important;overflow:visible!important;display:block!important;visibility:visible!important}@media (hover:none) and (pointer:coarse){.service-card:not(.mobile-expanded) .service-content.service-description-hover,.service-card:not(.mobile-expanded) .service-features{display:none!important;opacity:0!important;visibility:hidden!important;max-height:0!important;overflow:hidden!important}.service-card.mobile-expanded .service-features{opacity:1!important;transform:translateY(0)!important;max-height:none!important;overflow:visible!important;display:block!important;visibility:visible!important;position:static!important;margin-top:1rem!important;padding:1rem!important;background:rgba(255,255,255,.1)!important;border-radius:8px!important;backdrop-filter:blur(10px)!important}.service-card.mobile-expanded .service-features li{opacity:1!important;transform:translateX(0)!important;animation:.5s forwards slideInLeft!important;margin-bottom:.5rem!important}}.service-card.mobile-expanded .service-content.service-description-hover{opacity:1!important;transform:translateY(0)!important;max-height:none!important;overflow:visible!important;display:block!important;visibility:visible!important;margin-top:1rem!important;padding:1rem!important;background:rgba(255,255,255,.05)!important;border-radius:8px!important;backdrop-filter:blur(10px)!important}.service-card::after{content:'👆 Toca para expandir';position:absolute;bottom:-40px;left:50%;transform:translateX(-50%);font-size:.8rem;color:var(--texto-medio);opacity:0;transition:opacity .3s;pointer-events:none;white-space:nowrap;z-index:10}@media (hover:none) and (pointer:coarse){.service-card::after{opacity:1}.service-card.mobile-expanded::after{content:'👆 Toca para colapsar'}.service-card h3{font-size:1.1rem!important;line-height:1.3!important;overflow-wrap:anywhere!important;word-break:break-all!important;hyphens:none!important;padding:0!important;width:100%!important;white-space:normal!important;max-width:100%!important;min-height:2.6em!important}.service-card{max-width:100%!important;padding:2rem 1rem!important;margin:0 .5rem!important}.service-card.mobile-description,.service-card.mobile-expanded{margin-bottom:4rem!important;padding-bottom:3rem!important;z-index:10!important}.service-card .service-content.service-description-hover,.service-card .service-features{margin-top:1rem!important;padding-top:1rem!important}}.language-selector{justify-self:end;position:relative;display:inline-block;font-family:sans-serif}.lang-dropdown{position:relative}.lang-trigger{display:flex;align-items:center;gap:.5rem;background:#1e1e1e;border:1px solid rgba(255,255,255,.3);color:#fff;padding:.6rem 1rem;border-radius:25px;cursor:pointer;transition:.3s cubic-bezier(.25,.8,.25,1);font-size:.9rem;font-weight:600;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);min-width:80px;justify-content:center}.lang-trigger:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.5);transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.2)}.lang-trigger.open{background:rgba(33,150,243,.2);border-color:var(--azul-primario);box-shadow:0 8px 25px rgba(33,150,243,.3)}.lang-code{font-weight:700;letter-spacing:.5px}.lang-arrow{font-size:.8rem;transition:transform .3s cubic-bezier(.25,.8,.25,1);margin-left:.3rem}.lang-trigger.open .lang-arrow{transform:rotate(180deg)}.lang-dropdown-menu{position:absolute;top:calc(100% + .5rem);right:0;background:rgba(30,30,30,.95);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.1);border-radius:15px;box-shadow:0 15px 40px rgba(0,0,0,.4);min-width:160px;opacity:0;visibility:hidden;transform:translateY(-10px) scale(.95);transition:.3s cubic-bezier(.25,.8,.25,1);z-index:1000;overflow:hidden;list-style:none;padding:.5rem 0}.lang-dropdown.open .lang-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.lang-dropdown-menu.open{opacity:1;visibility:visible;transform:translateY(0)}.lang-option{display:flex;align-items:center;gap:.8rem;width:100%;padding:.8rem 1.2rem;background:0 0;border:none;color:#fff;cursor:pointer;transition:.2s;font-size:.9rem;font-weight:500;position:relative;text-align:left;text-decoration:none;text-transform:capitalize}.lang-option:first-child{border-radius:15px 15px 0 0}.lang-option:last-child{border-radius:0 0 15px 15px}.lang-option:hover{background:rgba(255,255,255,.1);transform:translateX(5px)}.lang-option.active{background:0 0;color:#fff}.lang-option .lang-name{flex:1;font-weight:600}.lang-check{color:var(--azul-primario);font-size:.8rem;margin-left:auto;opacity:0;transform:scale(0);transition:.2s}.lang-option.active .lang-check{opacity:1;transform:scale(1)}.lang-dropdown-menu.open .lang-option{animation:.3s forwards slideInRight;opacity:0;transform:translateX(-20px)}.lang-dropdown-menu.open .lang-option:first-child{animation-delay:.1s}.lang-dropdown-menu.open .lang-option:nth-child(2){animation-delay:.2s}.lang-dropdown-menu.open .lang-option:nth-child(3){animation-delay:.3s}.lang-dropdown-menu.open .lang-option:nth-child(4){animation-delay:.4s}@keyframes slideInRight{to{opacity:1;transform:translateX(0)}}.service-grid .service-card:nth-of-type(4){grid-column:1;justify-self:end}.service-grid .service-card:nth-of-type(5){grid-column:2;justify-self:start}@media (max-width:768px){.language-selector{margin-left:1rem}.lang-trigger{padding:.5rem .8rem;font-size:.8rem;min-width:70px}.lang-dropdown-menu{min-width:140px;right:-.5rem}.lang-option{padding:.7rem 1rem;font-size:.85rem}.service-grid .service-card:nth-of-type(4),.service-grid .service-card:nth-of-type(5){grid-column:auto!important;max-width:100%!important;justify-self:unset!important}}.service-row{grid-column:1/span 3;display:flex;justify-content:center;gap:2.5rem}.service-row .service-card{max-width:350px}@media (max-width:768px){.service-row{flex-direction:column;gap:2.5rem;grid-column:auto}.service-row .service-card{max-width:100%!important}}@media (hover:none) and (pointer:coarse){.service-card .service-content,.service-card .service-features{display:none!important;opacity:0!important;max-height:0!important;visibility:hidden!important;overflow:hidden!important;transition:.3s}.service-card.mobile-expanded .service-content,.service-card.mobile-expanded .service-features{display:block!important;opacity:1!important;max-height:1000px!important;visibility:visible!important;overflow:visible!important;transition:.3s}}.service-content i,.service-header i,.service-icon i{font-size:2.2em!important;margin-bottom:.5em;color:#64b5f6}.contact-info{background:rgba(255,255,255,.05);padding:25px;border-radius:15px;margin-top:30px;text-align:center;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px rgba(0,0,0,.1)}.contact-info h4{color:#64b5f6;margin-bottom:20px;font-size:1.2rem;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.3)}.contact-item{display:flex;align-items:center;justify-content:center;margin:10px 0;color:#fff;font-size:1.1rem}.contact-item i{margin-right:10px;color:#64b5f6;font-size:1.2em}.footer-contact{margin:20px 0;text-align:center}.footer-contact .contact-item{margin:8px 0;color:#fff;font-size:.9em}.footer-contact .contact-item i{margin-right:12px;font-size:1.1em;color:#64b5f6}@media (max-width:768px){.footer-contact{padding:1rem;margin:1rem 0}}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem;max-width:1200px;margin:0 auto;padding:0 1rem;justify-items:center}.service-card{cursor:pointer;max-width:350px;background:rgba(255,255,255,.05);border-radius:20px;padding:2.5rem;text-align:center;transition:.4s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden;box-shadow:0 5px 20px rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.service-grid .service-card:nth-of-type(4){grid-column:1/-1;grid-row:2;justify-self:center;max-width:350px;margin-top:4rem;transform:translateX(-200px)}.service-grid .service-card:nth-of-type(5){grid-column:1/-1;grid-row:2;justify-self:center;max-width:350px;margin-top:4rem;transform:translateX(200px)}@media (max-width:768px){.service-grid{grid-template-columns:1fr;gap:2rem}.service-card{padding:2rem 1rem;max-width:100%;margin:0!important}.service-grid .service-card:first-of-type,.service-grid .service-card:nth-of-type(2),.service-grid .service-card:nth-of-type(3),.service-grid .service-card:nth-of-type(4),.service-grid .service-card:nth-of-type(5){grid-column:auto!important;grid-row:auto!important;justify-self:unset!important;transform:none!important;margin-top:0!important}}.form-control.valid{border-color:var(--success-color,#4caf50);background:rgba(76,175,80,.05);box-shadow:0 4px 15px rgba(76,175,80,.2),inset 0 1px 0 rgba(255,255,255,.1)}.form-control.error{border-color:var(--error-color,#f44336);background:rgba(244,67,54,.05);animation:.5s ease-in-out shake;box-shadow:0 4px 15px rgba(244,67,54,.2),inset 0 1px 0 rgba(255,255,255,.1)}.submit-btn:disabled{background:var(--gris-medio,#2c2c2c);cursor:not-allowed;transform:none;opacity:.6}.submit-btn:disabled:hover{background:var(--gris-medio,#2c2c2c);transform:none;box-shadow:none}.btn-loading{display:flex;align-items:center;justify-content:center;gap:.5rem}.form-group{position:relative}.form-control:focus+.error-message.show{transform:translateY(0) scale(.95);opacity:.8}.checkbox-label.error .checkmark{border-color:var(--error-color,#f44336);background:rgba(244,67,54,.1);animation:.5s ease-in-out shake}.checkbox-label.error span:last-child{color:var(--error-color,#f44336)}@media (max-width:576px){.contact,.portfolio,.services{padding:4rem 1rem}.section-title{font-size:1.6rem;margin-bottom:2.5rem}.service-card h3{font-size:1.1rem}.service-features li{font-size:.95rem}.form-control{padding:.8rem 1rem;font-size:.95rem}.form-label{font-size:.85rem}.submit-btn{font-size:1rem;padding:.8rem 1.5rem}.hero h1{font-size:1.6rem;min-height:auto;line-height:1.2}.hero p{font-size:.95rem;margin-bottom:2rem}.service-card{padding:1.5rem 1rem}.portfolio-item p{font-size:.95rem;padding:1rem}.contact-card{padding:1.5rem}.contact-card h3{font-size:1.2rem}.contact-card p,.contact-info{font-size:.9rem}.contact-item{font-size:.85rem;gap:.5rem;flex-wrap:wrap;word-break:break-word}.contact-item i{font-size:1rem}.checkbox-group{display:flex;flex-direction:column;align-items:flex-start;text-align:left;width:100%}.checkbox-group label{font-size:.85rem;display:flex;align-items:flex-start;justify-content:flex-start;text-align:left;width:100%}.checkbox-group input[type=checkbox]{width:14px;height:14px;margin-top:2px;margin-right:6px}.checkbox-label{text-align:left}}.form-success{margin-top:5%}@media (max-width:768px){.form-success{padding:2rem 1.5rem}.form-success i{font-size:3rem}.form-success h4{font-size:1.5rem}.form-success p{font-size:1.1rem}.error-message{font-size:.85rem;padding:.6rem .8rem}.error-message::before{font-size:1rem}}.checkbox-label{display:flex;align-items:flex-start;position:relative;padding-left:0!important;cursor:pointer;font-size:1rem;color:#90a4ae;user-select:none;margin-bottom:1.2em;min-height:28px;gap:.75rem;text-align:left;line-height:1.4}.checkbox-label input[type=checkbox]{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.checkmark{position:relative;left:auto;top:auto;transform:none;height:22px;width:22px;background-color:#2c2c2c;border:2px solid #607d8b;border-radius:4px;transition:background .2s,border .2s;display:flex;align-items:center;justify-content:center;box-sizing:border-box;flex-shrink:0;margin-top:2px}.checkbox-label input:checked~.checkmark{background-color:#2196f3;border-color:#2196f3}.checkmark:after{content:"";display:none;width:7px;height:13px;border:solid #fff;border-width:0 3px 3px 0;border-radius:1px;position:absolute;left:50%;top:50%;transform:translate(-50%,-55%) rotate(45deg)}.checkbox-label input:checked~.checkmark:after{display:block}.whatsapp-btn{border-radius:50%;transition:.3s;text-decoration:none;margin:0 8px;outline:0}.whatsapp-btn:active,.whatsapp-btn:focus,.whatsapp-btn:hover,.whatsapp-btn:visited{transform:scale(1.1);text-decoration:none;outline:0}.whatsapp-btn i{font-size:20px}
=======
*{margin:0;padding:0;box-sizing:border-box}:root{--azul-primario:#2196F3;--azul-secundario:#64B5F6;--azul-oscuro:#1976D2;--azul-profundo:#0a192f;--blanco:#E0E0E0;--gris-claro:#1e1e1e;--gris-medio:#2c2c2c;--gris-oscuro:#607D8B;--texto-oscuro:#cfd8dc;--texto-medio:#b0bec5;--texto-claro:#90a4ae;--acento:#FF9800;--acento-hover:#FB8C00;--acento-oscuro:#F57C00;--transicion:all 0.4s cubic-bezier(.175,.885,.32,1.275);--sombra-suave:0 5px 20px rgba(0,0,0,.4);--sombra-media:0 10px 30px rgba(0,0,0,.5);--sombra-fuerte:0 15px 40px rgba(0,0,0,.7)}body{font-family:Roboto,sans-serif;line-height:1.6;color:var(--texto-oscuro);background:var(--gris-claro);min-height:100vh;overflow-x:hidden;position:relative;z-index:1}.section-title{text-align:center;margin-bottom:5rem;color:var(--azul-secundario);position:relative;font-size:2.5rem;font-weight:700;text-transform:uppercase;letter-spacing:1px}.section-title::after{display:none!important;background:0 0!important;content:none!important}section:hover .section-title::after{width:120px}.container{max-width:1200px;margin:0 auto;padding:0 2rem}header{background:rgba(8,12,14,.85);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-bottom:1px solid rgba(255,255,255,.1);position:fixed;width:100%;z-index:1000;transition:var(--transicion);animation:.8s ease-out slideDown;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}header *,nav *{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}header.scrolled{background:rgba(8,12,14,.95);backdrop-filter:blur(25px) saturate(200%);-webkit-backdrop-filter:blur(25px) saturate(200%);border-bottom:1px solid rgba(33,150,243,.2);transform:translateY(0)}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}100%{transform:translateY(0);opacity:1}}nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;max-width:1200px;margin:0 auto;padding:.5rem 2rem}.logo{justify-self:start;display:flex;align-items:center;font-size:1.5rem;font-weight:700;color:var(--azul-secundario);text-decoration:none;transition:.3s;position:relative;padding:0;outline:0}.logo:focus,.logo:hover{outline:0}.logo svg{height:32px;margin-right:10px;transition:.3s}.nav-links{justify-self:center;display:flex;gap:2rem;list-style:none;margin:0;padding:0}.nav-links a{color:#fff;font-weight:600;text-shadow:0 1px 1px rgba(0,0,0,.3);font-size:1rem;text-decoration:none;transition:.3s cubic-bezier(.25,.8,.25,1);position:relative;padding:.8rem 1.2rem;background:0 0!important;border:none!important;outline:0!important}.nav-links a::after{content:'';display:block;position:absolute;left:0;right:0;bottom:8px;height:3px;background:0 0!important;border-radius:2px;transition:background .3s;width:0;margin:0 auto;z-index:1}.nav-links a.active{border-color:var(--azul-primario);transition:color .3s,background .3s}.nav-links a.active,.nav-links a:hover{color:var(--azul-secundario)}.nav-links a.active::after{content:'';background:var(--azul-secundario)}.overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(8,12,14,.95);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);z-index:999;opacity:0;visibility:hidden;transition:.5s cubic-bezier(.175,.885,.32,1.275)}.overlay.active{opacity:1;visibility:visible}.hero,.hero-bg{background:0 0!important;box-shadow:none!important}.hero-bg::after,.hero-bg::before{display:none!important;background:0 0!important;content:none!important}.hero{position:relative;height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center;background:var(--gris-claro)}.hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 80%,rgba(33,150,243,.15) 0,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,152,0,.1) 0,transparent 50%),radial-gradient(circle at 40% 40%,rgba(100,181,246,.1) 0,transparent 50%),url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1000 1000"><defs><radialGradient id="a" cx="50%" cy="50%"><stop offset="0%" stop-color="%23ffffff" stop-opacity="0.1"/><stop offset="100%" stop-color="%23ffffff" stop-opacity="0"/></radialGradient></defs><circle cx="200" cy="200" r="2" fill="url(%23a)"/><circle cx="800" cy="300" r="1.5" fill="url(%23a)"/><circle cx="400" cy="700" r="1" fill="url(%23a)"/><circle cx="900" cy="800" r="2.5" fill="url(%23a)"/></svg>');animation:20s ease-in-out infinite float,8s ease-in-out infinite gradientShift}.particles-bg{background:0 0!important;animation:none!important;display:none!important}#particles-js{position:fixed;top:0;left:0;width:100vw;height:100%;min-height:100vh;z-index:0;pointer-events:none;border:none!important;background:0 0!important}.hero::before{content:none!important;background:0 0!important;animation:none!important}@keyframes backgroundFloat{0%,100%{transform:translateY(0) scale(1);opacity:.3}50%{transform:translateY(-20px) scale(1.1);opacity:.5}}.hero-content{position:relative;z-index:2;max-width:900px;padding:0 2rem;animation:1.5s ease-out fadeInUp;width:100%;text-align:center;margin-top:2rem}.hero-content h1{margin-bottom:2rem;line-height:1.2;min-height:4.2rem;display:flex;align-items:center;justify-content:center}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-20px)}}.hero h1{font-size:3rem;font-weight:700;color:var(--azul-secundario);text-shadow:0 0 20px rgba(33,150,243,.3),0 0 40px rgba(33,150,243,.2),0 0 60px rgba(33,150,243,.1);margin-bottom:2rem;line-height:1.4;text-align:center;background:linear-gradient(45deg,var(--azul-secundario),var(--acento),var(--azul-primario));background-size:200% 200%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:3s ease-in-out infinite gradientShift;white-space:normal;word-wrap:break-word;min-height:5rem;padding:0 1rem;overflow-wrap:break-word;hyphens:auto}.hero p{font-size:1.2rem;color:var(--texto-medio);margin-bottom:3rem;max-width:800px;margin-left:auto;margin-right:auto;line-height:1.6;text-align:center;padding:0 1rem;overflow-wrap:break-word;hyphens:auto}@keyframes gradientShift{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}@media (max-width:768px){.hero h1{font-size:2.2rem;min-height:4rem;line-height:1.4}.hero p{font-size:1.1rem}.hero-content{max-width:100%;padding:0 1rem;margin-top:1rem}.service-grid{grid-template-columns:1fr}.service-card{grid-column:auto!important;max-width:100%!important}}@media (max-width:576px){.hero h1{font-size:1.8rem;min-height:3rem;line-height:1.3}.hero p{font-size:1.1rem}.hero-content{padding:0 .5rem}}@media (max-width:600px){.hero h1{hyphens:none!important;word-break:normal!important;overflow-wrap:break-word!important;white-space:normal!important}}.cta-button{display:inline-block;background:linear-gradient(45deg,var(--azul-primario),var(--azul-secundario));color:#fff;padding:1rem 2.5rem;text-decoration:none;border-radius:50px;font-weight:600;font-size:1.1rem;transition:.4s;position:relative;overflow:hidden;box-shadow:0 10px 30px rgba(33,150,243,.3);border:2px solid transparent}.cta-button::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:.6s}.cta-button:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 20px 40px rgba(33,150,243,.4);border-color:var(--acento)}.cta-button:hover::before{left:100%}.services{padding:8rem 2rem;background:var(--gris-claro);position:relative}.checkbox-label{display:flex;align-items:center;user-select:none}.checkmark{transform:translateY(-50%);display:flex;align-items:center;justify-content:center;box-sizing:border-box}.checkmark:after{content:""}.service-card:nth-of-type(4){grid-column:2}.service-card:nth-of-type(5){grid-column:3}@media (max-width:768px){.service-grid{grid-template-columns:1fr}.service-card{padding:2rem 1rem}}.service-card::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(33,150,243,.2),transparent);transition:.8s cubic-bezier(.25, .8, .25, 1);z-index:1}.service-card:hover{transform:translateY(-20px) scale(1.05);background:rgba(255,255,255,.08);border:1px solid rgba(33,150,243,.3);box-shadow:0 25px 50px rgba(33,150,243,.3),0 0 0 1px rgba(33,150,243,.2),0 0 30px rgba(33,150,243,.1),inset 0 1px 0 rgba(255,255,255,.3);transition:.5s cubic-bezier(.25, .8, .25, 1)}.service-card:hover::before{left:100%}.service-icon{font-size:3.5rem;color:var(--azul-primario);margin-bottom:1.5rem;transition:.4s cubic-bezier(.25, .8, .25, 1);position:relative;z-index:2;animation:3s ease-in-out infinite iconFloat}.service-card:hover .service-icon{transform:scale(1.2) rotate(12deg);color:var(--acento);transition:.4s cubic-bezier(.25, .8, .25, 1);animation:.6s ease-in-out iconPulse}@keyframes iconFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes iconPulse{0%{transform:scale(1) rotate(0)}50%{transform:scale(1.3) rotate(6deg)}100%{transform:scale(1.2) rotate(12deg)}}.service-card h3{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.5);font-weight:700;margin-bottom:1rem;font-size:1.4rem;transition:var(--transicion);overflow-wrap:anywhere!important;word-break:break-word!important;hyphens:none!important;line-height:1.3;text-align:center;padding:0 .5rem;white-space:normal!important;max-width:100%!important}.service-card:hover h3{color:var(--acento)!important}.service-card p{transition:var(--transicion);color:#fff!important;text-shadow:0 1px 1px rgba(0,0,0,.3);font-weight:500}.service-content{color:#fff!important;line-height:1.6;margin-bottom:1rem;transition:var(--transicion);text-shadow:0 1px 1px rgba(0,0,0,.3);font-weight:500}.service-features{width:100%;margin:1rem 0 0;padding:0;list-style:none;display:block;position:static;opacity:1;max-height:none;overflow:visible;transition:.3s}.service-card:hover .service-features{display:block!important;opacity:1!important;max-height:500px!important;overflow:visible!important;visibility:visible!important;transition:.3s!important}.service-features li{padding:.7rem 0 .7rem 1.8rem;color:#fff!important;font-size:1.1rem;position:relative;transition:var(--transicion);font-weight:500}.service-features li::before{content:'✓';position:absolute;left:0;color:var(--acento);font-weight:700;font-size:1.2rem}.service-card:hover .service-features li{animation:.4s cubic-bezier(.25,.8,.25,1) slideInLeft;animation-fill-mode:both}.service-card:hover .service-features li:first-child{animation-delay:.1s}.service-card:hover .service-features li:nth-child(2){animation-delay:.2s}.service-card:hover .service-features li:nth-child(3){animation-delay:.3s}.service-card:hover .service-features li:nth-child(4){animation-delay:.4s}.service-card:hover .service-features li:nth-child(5){animation-delay:.5s}@keyframes slideInLeft{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}.service-description{display:none;margin-top:1rem;font-size:1.05rem;color:var(--texto-medio);transition:opacity .3s;opacity:0;width:100%;text-align:center;position:static}.service-card.mobile-expanded .service-description,.service-card:hover .service-description{display:block;opacity:1}.service-content.service-description-hover{display:none;margin-top:1rem;font-size:1.05rem;color:var(--texto-medio);transition:opacity .3s;opacity:0;width:100%;text-align:center;position:static}.service-card:hover .service-content.service-description-hover{display:block;opacity:1}.portfolio{padding:8rem 2rem;background:var(--gris-claro);color:var(--blanco);position:relative;overflow:hidden}.portfolio::after,.portfolio::before{content:none}.portfolio-content{max-width:1200px;margin:0 auto;position:relative;z-index:2}.portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;margin-top:4rem}.portfolio-item{background:rgba(255,255,255,.1);border-radius:12px;overflow:hidden;box-shadow:0 15px 25px rgba(0,0,0,.2);transition:var(--transicion);position:relative;opacity:0;transform:translateY(30px);animation:.5s forwards fadeInStagger}.portfolio-item:first-child{animation-delay:.1s}.portfolio-item:nth-child(2){animation-delay:.2s}.portfolio-item:nth-child(3){animation-delay:.3s}.portfolio-item:nth-child(4){animation-delay:.4s}.portfolio-item:nth-child(5){animation-delay:.5s}.portfolio-item:nth-child(6){animation-delay:.6s}.portfolio-item:hover{transform:translateY(-10px) scale(1.03);box-shadow:0 20px 35px rgba(0,0,0,.3);background:rgba(255,255,255,.15)}.portfolio-item img{width:100%;height:200px;object-fit:cover;transition:var(--transicion)}.portfolio-item:hover img{transform:scale(1.05);filter:brightness(1.1)}.portfolio-item p{padding:1.5rem;text-align:center;font-weight:500;transition:var(--transicion)}.portfolio-item:hover p{color:var(--acento)}.contact{padding:8rem 2rem;background:var(--gris-claro);position:relative;text-align:center}.contact-form{max-width:700px;margin:0 auto;background:rgba(255,255,255,.05);padding:3rem;border-radius:25px;box-shadow:0 8px 32px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.2),0 0 0 1px rgba(255,255,255,.05);transition:var(--transicion);transform:translateY(30px);opacity:0;animation:1s .3s forwards fadeInUp;text-align:center}.contact-form:hover{background:rgba(255,255,255,.08);border:1px solid rgba(33,150,243,.3);box-shadow:0 25px 50px rgba(33,150,243,.2),0 0 0 1px rgba(33,150,243,.2),inset 0 1px 0 rgba(255,255,255,.3);transform:translateY(-5px)}.contact-form h3{text-align:center;margin-bottom:2rem;color:var(--azul-oscuro);font-size:1.8rem;position:relative;padding-bottom:15px}.contact-form h3::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:60px;height:2px;background:var(--acento)}.form-row{display:flex;gap:1.5rem;margin-bottom:1.5rem}.form-group{margin-bottom:1.5rem;flex:1}.form-control{width:100%;padding:1rem 1.5rem;border:2px solid rgba(255,255,255,.1);border-radius:15px;font-size:1rem;color:#fff;font-weight:500;background:rgba(255,255,255,.1);transition:.3s cubic-bezier(.25, .8, .25, 1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 15px rgba(0,0,0,.1),inset 0 1px 0 rgba(255,255,255,.1)}.form-control:focus{outline:0;border-color:var(--azul-primario);background:rgba(255,255,255,.15);box-shadow:0 8px 25px rgba(33,150,243,.3),0 0 0 3px rgba(33,150,243,.2),inset 0 1px 0 rgba(255,255,255,.3);transform:translateY(-2px)}.form-control:valid{border-color:#4caf50;background:rgba(76,175,80,.05)}.form-control:invalid:not(:placeholder-shown){border-color:#f44336;background:rgba(244,67,54,.05)}.form-control:-webkit-autofill,.form-control:-webkit-autofill:focus,.form-control:-webkit-autofill:hover{-webkit-box-shadow:0 0 0 1000px rgba(255,255,255,.1) inset;-webkit-text-fill-color:var(--texto-oscuro);transition:background-color 5000s ease-in-out}.error-message{color:var(--error-color,#f44336);font-size:.9rem;margin-top:.8rem;opacity:0;transform:translateY(-10px);transition:.3s cubic-bezier(.25,.8,.25,1);display:flex;align-items:flex-start;gap:.5rem;font-weight:600;text-shadow:0 1px 1px rgba(0,0,0,.3);line-height:1.4;padding:.8rem 1rem;background:rgba(244,67,54,.1);border:1px solid rgba(244,67,54,.3);border-radius:10px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 4px 15px rgba(244,67,54,.2)}.error-message::before{content:'⚠️';font-size:1.1rem;flex-shrink:0;margin-top:1px}.error-message.show{opacity:1;transform:translateY(0)}.form-control.error{border-color:#f44336}@keyframes shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}.submit-btn{background:linear-gradient(45deg,var(--azul-primario),var(--azul-secundario));color:#fff;padding:1rem 2.5rem;border:none;border-radius:25px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:.3s cubic-bezier(.25, .8, .25, 1);position:relative;overflow:hidden;box-shadow:0 8px 25px rgba(33,150,243,.3),0 0 0 1px rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);text-shadow:0 1px 2px rgba(0,0,0,.5)}.submit-btn:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 15px 35px rgba(33,150,243,.4),0 0 0 1px rgba(255,255,255,.2);background:linear-gradient(45deg,var(--azul-secundario),var(--acento))}.submit-btn:active{transform:translateY(-1px) scale(1.02)}.contact-description{text-align:center;color:var(--gris-oscuro);margin-bottom:2rem;font-size:1.1rem}.form-label{display:block;margin-bottom:.5rem;color:#fff;font-weight:600;font-size:.95rem;text-shadow:0 1px 1px rgba(0,0,0,.3)}.checkbox-label{display:flex;align-items:flex-start;color:var(--gris-oscuro)}.checkmark{background-color:var(--gris-medio);border:2px solid var(--gris-oscuro);flex-shrink:0}.checkbox-label:hover input~.checkmark{background-color:var(--gris-oscuro)}.checkbox-label input:checked~.checkmark{background-color:var(--azul-primario);border-color:var(--azul-primario)}.checkmark:after{content:"";transform:rotate(45deg)}.privacy-link{color:var(--azul-primario);text-decoration:none;font-weight:500}.privacy-link:hover{text-decoration:underline}.submit-btn:disabled,.submit-btn:disabled:hover{background:var(--gris-medio)}.btn-loading{display:flex;align-items:center}.form-success{text-align:center;padding:3rem 2rem;background:linear-gradient(135deg,rgba(76,175,80,.15) 0,rgba(76,175,80,.05) 100%);border:2px solid rgba(76,175,80,.3);border-radius:20px;color:var(--success-color,#4caf50);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);box-shadow:0 15px 35px rgba(76,175,80,.2),inset 0 1px 0 rgba(255,255,255,.1);animation:.6s cubic-bezier(.175,.885,.32,1.275) successSlideIn;position:relative;overflow:hidden}.form-success::before{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(76,175,80,.1),transparent);animation:2s ease-in-out successShimmer}@keyframes successSlideIn{0%{opacity:0;transform:translateY(30px) scale(.9)}100%{opacity:1;transform:translateY(0) scale(1)}}@keyframes successShimmer{0%{left:-100%}100%{left:100%}}.form-success i{font-size:4rem;color:var(--success-color,#4caf50);margin-bottom:1.5rem;animation:2s ease-in-out infinite successPulse;text-shadow:0 0 20px rgba(76,175,80,.5)}@keyframes successPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.form-success h4{margin:1rem 0;color:#fff;font-size:1.8rem;font-weight:700;text-shadow:0 2px 4px rgba(0,0,0,.3)}.form-success p{margin:0;font-size:1.2rem;color:var(--texto-medio,#b0bec5);font-weight:500;line-height:1.6}@media (max-width:768px){.contact-description{font-size:1rem}.form-label{font-size:.9rem}.checkbox-label{font-size:.85rem}.form-success{padding:2rem 1.5rem}.form-success i{font-size:3rem}.form-success h4{font-size:1.5rem}.form-success p{font-size:1.1rem}.quote{font-size:.9rem;margin-top:.8rem;padding:0 1rem}}footer{backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-top:1px solid rgba(255,255,255,.1);color:#fff;padding:3rem 2rem;text-align:center;position:relative;text-shadow:0 1px 1px rgba(0,0,0,.3)}.footer-content{max-width:1200px;margin:0 auto;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1.5rem}.footer-logo{margin-bottom:1rem}.footer-logo img{transition:.3s}.footer-logo img:hover{transform:scale(1.05);filter:brightness(1.1)}.footer-contact{background:rgba(255,255,255,.05);padding:1.5rem;border-radius:15px;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px);max-width:400px;width:100%}.footer-contact .contact-item{font-weight:500}.footer-links{display:flex;justify-content:center;gap:2rem;margin:2rem 0;list-style:none;padding:0}.footer-links a{color:var(--blanco);transition:.3s;text-decoration:none;position:relative;padding:5px 0;text-shadow:0 1px 1px rgba(0,0,0,.3)}.footer-links a::after{content:'';position:absolute;width:0;height:2px;bottom:0;left:0;background-color:var(--acento);transition:width .3s}.footer-links a:hover{color:var(--acento);text-shadow:0 1px 2px rgba(0,0,0,.5)}.footer-links a:hover::after{width:100%}.social-icons{display:flex;justify-content:center;gap:1.5rem;margin:2rem 0}.social-icon{color:var(--blanco);font-size:1.5rem;transition:.3s;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center}.social-icon:hover{color:var(--acento);transform:translateY(-5px) rotate(360deg);background:rgba(255,255,255,.2)}.copyright{text-align:center;color:#b0bec5;font-size:.9rem;margin-top:1.5rem;opacity:.8;border-top:1px solid rgba(255,255,255,.1);padding-top:1.5rem;width:100%}.quote{text-align:center;font-style:italic;color:#90a4ae;font-size:.95rem;margin-top:1rem;opacity:.8;max-width:600px;margin-left:auto;margin-right:auto;line-height:1.5;font-weight:400}.scroll-top{position:fixed;bottom:2rem;right:2rem;background:var(--azul-primario);color:#fff;width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;visibility:hidden;transition:.4s;z-index:999;box-shadow:0 5px 15px rgba(0,0,0,.1)}.scroll-top.visible{opacity:1;visibility:visible}.scroll-top:hover{background:var(--azul-oscuro);transform:translateY(-5px);box-shadow:0 8px 25px rgba(0,0,0,.2)}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInStagger{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes typing{from{width:0}to{width:100%}}@keyframes blink-caret{from,to{border-color:transparent}50%{border-color:var(--acento)}}@media (max-width:992px){.hero h1{font-size:2.8rem}.form-row{flex-direction:column;gap:0}.section-title{font-size:2.2rem}}@media (max-width:768px){.scroll-top{display:none!important}.hero h1{font-size:2.4rem}.nav-links{position:fixed;top:0;right:-100%;width:100%;height:100vh;background:rgba(0,0,0,.95);backdrop-filter:blur(10px);display:flex;flex-direction:column;justify-content:center;align-items:center;transition:right .3s;z-index:1000}.nav-links a{font-size:1.5rem;margin:1rem 0}.logo{font-size:1.4rem}.logo svg{width:20px;height:20px}}html{scroll-behavior:smooth!important;scroll-padding-top:80px}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--gris-claro)}::-webkit-scrollbar-thumb{background:linear-gradient(45deg,var(--azul-primario),var(--azul-secundario));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(45deg,var(--azul-secundario),var(--acento))}.scroll-progress{position:fixed;top:0;left:0;width:0%;height:3px;background:linear-gradient(90deg,var(--azul-primario),var(--acento));z-index:9999;transition:width .1s}.loading{position:relative}.loading::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:1.5s infinite loading}@keyframes loading{0%{transform:translateX(-100%)}100%{transform:translateX(100%)}}.nav-links a.active{position:relative!important;color:#64b5f6!important;background:rgba(33,150,243,.15);border-color:var(--azul-primario)}.nav-links a.active::after{content:'';display:block;position:absolute;left:10%;right:10%;bottom:8px;height:3px;background:linear-gradient(90deg,#2196f3 0,#64b5f6 100%)!important;border-radius:2px;transition:width .4s cubic-bezier(.4,0,.2,1),background .3s;width:80%;margin:0 auto;z-index:1}.logo,.nav-links li{animation:.6s ease-out forwards fadeInDown}.nav-links li:first-child{animation-delay:.1s}.nav-links li:nth-child(2){animation-delay:.2s}.nav-links li:nth-child(3){animation-delay:.3s}@keyframes fadeInDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.service-card.loading{position:relative;overflow:hidden}.service-card.loading::after{content:'';position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:1.5s infinite loadingShimmer}@keyframes loadingShimmer{0%{left:-100%}100%{left:100%}}.service-card.loading .service-icon{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:1.5s infinite skeletonLoading;border-radius:50%;width:80px;height:80px;margin:0 auto 1.5rem}.service-card.loading h3{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:1.5s infinite skeletonLoading;height:24px;border-radius:4px;margin-bottom:1rem}.service-card.loading p{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%;animation:1.5s infinite skeletonLoading;height:16px;border-radius:4px;margin-bottom:.5rem}.service-card.loading p:nth-child(2){width:80%}.service-card.loading p:nth-child(3){width:60%}@keyframes skeletonLoading{0%{background-position:-200% 0}100%{background-position:200% 0}}:focus{outline:3px solid var(--acento);outline-offset:2px;border-radius:4px}.lang-dropdown-menu:focus,.lang-option:focus,.lang-trigger:focus,.language-selector :focus{outline:0!important;box-shadow:none!important}.skip-link{position:absolute;top:-40px;left:6px;background:var(--azul-primario);color:#fff;padding:8px;text-decoration:none;border-radius:4px;z-index:10000;font-weight:600}.skip-link:focus{top:6px}.contact,.container,.hero,.portfolio,.services,footer,section{background:0 0!important;box-shadow:none!important}.logo-img{display:inline-block;height:100px!important;width:100px!important;object-fit:contain;margin-right:10px;vertical-align:middle;outline:0}.logo-img-footer,footer .logo-img{height:72px;width:72px;margin-bottom:-8px;display:block;margin-left:auto;margin-right:auto}@media (hover:hover) and (pointer:fine){.service-card .service-features{display:block!important;opacity:1!important;max-height:none!important;overflow:visible!important;visibility:visible!important}.service-card:hover .service-content.service-description-hover{display:block!important;opacity:1!important;visibility:visible!important}}@media (hover:none) and (pointer:coarse){.service-card:hover{transform:none!important;box-shadow:var(--sombra-suave)!important}.service-card:hover::before{opacity:0!important}.service-card:hover .service-icon{transform:none!important;animation:none!important}.service-card:hover h3{transform:none!important}.service-card:hover .service-features{display:none!important;opacity:0!important;transform:translateY(0)!important}.service-card:hover .service-content.service-description-hover{opacity:1!important;transform:translateY(0)!important}.nav-links a:hover{transform:none!important;color:#fff!important}.nav-links a:hover::after{width:0!important}}.service-card.mobile-expanded{transform:translateY(-10px) scale(1.02)!important;box-shadow:var(--sombra-media)!important}.service-card.mobile-expanded::before{opacity:.1!important}.service-card.mobile-expanded .service-icon{transform:scale(1.1)!important;animation:2s infinite iconPulse!important}.service-card.mobile-expanded h3{transform:translateY(-5px)!important;color:var(--azul-secundario)!important}.service-card.mobile-expanded .service-features{opacity:1!important;transform:translateY(0)!important;max-height:500px!important;overflow:visible!important;display:block!important;visibility:visible!important}@media (hover:none) and (pointer:coarse){.service-card:not(.mobile-expanded) .service-content.service-description-hover,.service-card:not(.mobile-expanded) .service-features{display:none!important;opacity:0!important;visibility:hidden!important;max-height:0!important;overflow:hidden!important}.service-card.mobile-expanded .service-features{opacity:1!important;transform:translateY(0)!important;max-height:none!important;overflow:visible!important;display:block!important;visibility:visible!important;position:static!important;margin-top:1rem!important;padding:1rem!important;background:rgba(255,255,255,.1)!important;border-radius:8px!important;backdrop-filter:blur(10px)!important}.service-card.mobile-expanded .service-features li{opacity:1!important;transform:translateX(0)!important;animation:.5s forwards slideInLeft!important;margin-bottom:.5rem!important}}.service-card.mobile-expanded .service-content.service-description-hover{opacity:1!important;transform:translateY(0)!important;max-height:none!important;overflow:visible!important;display:block!important;visibility:visible!important;margin-top:1rem!important;padding:1rem!important;background:rgba(255,255,255,.05)!important;border-radius:8px!important;backdrop-filter:blur(10px)!important}.service-card::after{content:'👆 Toca para expandir';position:absolute;bottom:-40px;left:50%;transform:translateX(-50%);font-size:.8rem;color:var(--texto-medio);opacity:0;transition:opacity .3s;pointer-events:none;white-space:nowrap;z-index:10}@media (hover:none) and (pointer:coarse){.service-card::after{opacity:1}.service-card.mobile-expanded::after{content:'👆 Toca para colapsar'}.service-card h3{font-size:1.1rem!important;line-height:1.3!important;overflow-wrap:anywhere!important;word-break:break-all!important;hyphens:none!important;padding:0!important;width:100%!important;white-space:normal!important;max-width:100%!important;min-height:2.6em!important}.service-card{max-width:100%!important;padding:2rem 1rem!important;margin:0 .5rem!important}.service-card.mobile-description,.service-card.mobile-expanded{margin-bottom:4rem!important;padding-bottom:3rem!important;z-index:10!important}.service-card .service-content.service-description-hover,.service-card .service-features{margin-top:1rem!important;padding-top:1rem!important}}.language-selector{justify-self:end;position:relative;display:inline-block;font-family:sans-serif}.lang-dropdown{position:relative}.lang-trigger{display:flex;align-items:center;gap:.5rem;background:#1e1e1e;border:1px solid rgba(255,255,255,.3);color:#fff;padding:.6rem 1rem;border-radius:25px;cursor:pointer;transition:.3s cubic-bezier(.25,.8,.25,1);font-size:.9rem;font-weight:600;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);min-width:80px;justify-content:center}.lang-trigger:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.5);transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.2)}.lang-trigger.open{background:rgba(33,150,243,.2);border-color:var(--azul-primario);box-shadow:0 8px 25px rgba(33,150,243,.3)}.lang-code{font-weight:700;letter-spacing:.5px}.lang-arrow{font-size:.8rem;transition:transform .3s cubic-bezier(.25,.8,.25,1);margin-left:.3rem}.lang-trigger.open .lang-arrow{transform:rotate(180deg)}.lang-dropdown-menu{position:absolute;top:calc(100% + .5rem);right:0;background:rgba(30,30,30,.95);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border:1px solid rgba(255,255,255,.1);border-radius:15px;box-shadow:0 15px 40px rgba(0,0,0,.4);min-width:160px;opacity:0;visibility:hidden;transform:translateY(-10px) scale(.95);transition:.3s cubic-bezier(.25,.8,.25,1);z-index:1000;overflow:hidden;list-style:none;padding:.5rem 0}.lang-dropdown.open .lang-dropdown-menu{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.lang-dropdown-menu.open{opacity:1;visibility:visible;transform:translateY(0)}.lang-option{display:flex;align-items:center;gap:.8rem;width:100%;padding:.8rem 1.2rem;background:0 0;border:none;color:#fff;cursor:pointer;transition:.2s;font-size:.9rem;font-weight:500;position:relative;text-align:left;text-decoration:none;text-transform:capitalize}.lang-option:first-child{border-radius:15px 15px 0 0}.lang-option:last-child{border-radius:0 0 15px 15px}.lang-option:hover{background:rgba(255,255,255,.1);transform:translateX(5px)}.lang-option.active{background:0 0;color:#fff}.lang-option .lang-name{flex:1;font-weight:600}.lang-check{color:var(--azul-primario);font-size:.8rem;margin-left:auto;opacity:0;transform:scale(0);transition:.2s}.lang-option.active .lang-check{opacity:1;transform:scale(1)}.lang-dropdown-menu.open .lang-option{animation:.3s forwards slideInRight;opacity:0;transform:translateX(-20px)}.lang-dropdown-menu.open .lang-option:first-child{animation-delay:.1s}.lang-dropdown-menu.open .lang-option:nth-child(2){animation-delay:.2s}.lang-dropdown-menu.open .lang-option:nth-child(3){animation-delay:.3s}.lang-dropdown-menu.open .lang-option:nth-child(4){animation-delay:.4s}@keyframes slideInRight{to{opacity:1;transform:translateX(0)}}.service-grid .service-card:nth-of-type(4){grid-column:1;justify-self:end}.service-grid .service-card:nth-of-type(5){grid-column:2;justify-self:start}@media (max-width:768px){.language-selector{margin-left:1rem}.lang-trigger{padding:.5rem .8rem;font-size:.8rem;min-width:70px}.lang-dropdown-menu{min-width:140px;right:-.5rem}.lang-option{padding:.7rem 1rem;font-size:.85rem}.service-grid .service-card:nth-of-type(4),.service-grid .service-card:nth-of-type(5){grid-column:auto!important;max-width:100%!important;justify-self:unset!important}}.service-row{grid-column:1/span 3;display:flex;justify-content:center;gap:2.5rem}.service-row .service-card{max-width:350px}@media (max-width:768px){.service-row{flex-direction:column;gap:2.5rem;grid-column:auto}.service-row .service-card{max-width:100%!important}}@media (hover:none) and (pointer:coarse){.service-card .service-content,.service-card .service-features{display:none!important;opacity:0!important;max-height:0!important;visibility:hidden!important;overflow:hidden!important;transition:.3s}.service-card.mobile-expanded .service-content,.service-card.mobile-expanded .service-features{display:block!important;opacity:1!important;max-height:1000px!important;visibility:visible!important;overflow:visible!important;transition:.3s}}.service-content i,.service-header i,.service-icon i{font-size:2.2em!important;margin-bottom:.5em;color:#64b5f6}.contact-info{background:rgba(255,255,255,.05);padding:25px;border-radius:15px;margin-top:30px;text-align:center;backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 32px rgba(0,0,0,.1)}.contact-info h4{color:#64b5f6;margin-bottom:20px;font-size:1.2rem;font-weight:600;text-shadow:0 1px 2px rgba(0,0,0,.3)}.contact-item{display:flex;align-items:center;justify-content:center;margin:10px 0;color:#fff;font-size:1.1rem}.contact-item i{margin-right:10px;color:#64b5f6;font-size:1.2em}.footer-contact{margin:20px 0;text-align:center}.footer-contact .contact-item{margin:8px 0;color:#fff;font-size:.9em}.footer-contact .contact-item i{margin-right:12px;font-size:1.1em;color:#64b5f6}@media (max-width:768px){.footer-contact{padding:1rem;margin:1rem 0}}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2.5rem;max-width:1200px;margin:0 auto;padding:0 1rem;justify-items:center}.service-card{cursor:pointer;max-width:350px;background:rgba(255,255,255,.05);border-radius:20px;padding:2.5rem;text-align:center;transition:.4s cubic-bezier(.175,.885,.32,1.275);position:relative;overflow:hidden;box-shadow:0 5px 20px rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.service-grid .service-card:nth-of-type(4){grid-column:1/-1;grid-row:2;justify-self:center;max-width:350px;margin-top:4rem;transform:translateX(-200px)}.service-grid .service-card:nth-of-type(5){grid-column:1/-1;grid-row:2;justify-self:center;max-width:350px;margin-top:4rem;transform:translateX(200px)}@media (max-width:768px){.service-grid{grid-template-columns:1fr;gap:2rem}.service-card{padding:2rem 1rem;max-width:100%;margin:0!important}.service-grid .service-card:first-of-type,.service-grid .service-card:nth-of-type(2),.service-grid .service-card:nth-of-type(3),.service-grid .service-card:nth-of-type(4),.service-grid .service-card:nth-of-type(5){grid-column:auto!important;grid-row:auto!important;justify-self:unset!important;transform:none!important;margin-top:0!important}}.form-control.valid{border-color:var(--success-color,#4caf50);background:rgba(76,175,80,.05);box-shadow:0 4px 15px rgba(76,175,80,.2),inset 0 1px 0 rgba(255,255,255,.1)}.form-control.error{border-color:var(--error-color,#f44336);background:rgba(244,67,54,.05);animation:.5s ease-in-out shake;box-shadow:0 4px 15px rgba(244,67,54,.2),inset 0 1px 0 rgba(255,255,255,.1)}.submit-btn:disabled{background:var(--gris-medio,#2c2c2c);cursor:not-allowed;transform:none;opacity:.6}.submit-btn:disabled:hover{background:var(--gris-medio,#2c2c2c);transform:none;box-shadow:none}.btn-loading{display:flex;align-items:center;justify-content:center;gap:.5rem}.form-group{position:relative}.form-control:focus+.error-message.show{transform:translateY(0) scale(.95);opacity:.8}.checkbox-label.error .checkmark{border-color:var(--error-color,#f44336);background:rgba(244,67,54,.1);animation:.5s ease-in-out shake}.checkbox-label.error span:last-child{color:var(--error-color,#f44336)}@media (max-width:576px){.contact,.portfolio,.services{padding:4rem 1rem}.section-title{font-size:1.6rem;margin-bottom:2.5rem}.service-card h3{font-size:1.1rem}.service-features li{font-size:.95rem}.form-control{padding:.8rem 1rem;font-size:.95rem}.form-label{font-size:.85rem}.submit-btn{font-size:1rem;padding:.8rem 1.5rem}.hero h1{font-size:1.6rem;min-height:auto;line-height:1.2}.hero p{font-size:.95rem;margin-bottom:2rem}.service-card{padding:1.5rem 1rem}.portfolio-item p{font-size:.95rem;padding:1rem}.contact-card{padding:1.5rem}.contact-card h3{font-size:1.2rem}.contact-card p,.contact-info{font-size:.9rem}.contact-item{font-size:.85rem;gap:.5rem;flex-wrap:wrap;word-break:break-word}.contact-item i{font-size:1rem}.checkbox-group{display:flex;flex-direction:column;align-items:flex-start;text-align:left;width:100%}.checkbox-group label{font-size:.85rem;display:flex;align-items:flex-start;justify-content:flex-start;text-align:left;width:100%}.checkbox-group input[type=checkbox]{width:14px;height:14px;margin-top:2px;margin-right:6px}.checkbox-label{text-align:left}}.form-success{margin-top:5%}@media (max-width:768px){.form-success{padding:2rem 1.5rem}.form-success i{font-size:3rem}.form-success h4{font-size:1.5rem}.form-success p{font-size:1.1rem}.error-message{font-size:.85rem;padding:.6rem .8rem}.error-message::before{font-size:1rem}}.checkbox-label{display:flex;align-items:flex-start;position:relative;padding-left:0!important;cursor:pointer;font-size:1rem;color:#90a4ae;user-select:none;margin-bottom:1.2em;min-height:28px;gap:.75rem;text-align:left;line-height:1.4}.checkbox-label input[type=checkbox]{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.checkmark{position:relative;left:auto;top:auto;transform:none;height:22px;width:22px;background-color:#2c2c2c;border:2px solid #607d8b;border-radius:4px;transition:background .2s,border .2s;display:flex;align-items:center;justify-content:center;box-sizing:border-box;flex-shrink:0;margin-top:2px}.checkbox-label input:checked~.checkmark{background-color:#2196f3;border-color:#2196f3}.checkmark:after{content:"";display:none;width:7px;height:13px;border:solid #fff;border-width:0 3px 3px 0;border-radius:1px;position:absolute;left:50%;top:50%;transform:translate(-50%,-55%) rotate(45deg)}.checkbox-label input:checked~.checkmark:after{display:block}.whatsapp-float{position:fixed;bottom:7rem;right:2rem;background:#25d366;color:#fff;width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.4s;z-index:999;box-shadow:0 5px 15px rgba(0,0,0,.1);text-decoration:none;outline:0;-webkit-tap-highlight-color:transparent;user-select:none}.whatsapp-float:hover{background:#128c7e;transform:translateY(-5px) scale(1.1);box-shadow:0 8px 25px rgba(0,0,0,.2)}.whatsapp-float:focus{outline:0}.whatsapp-float i{font-size:1.5rem}@media (max-width:768px){.whatsapp-float{width:40px;height:40px;bottom:1rem;right:auto;left:1rem}.whatsapp-float i{font-size:1.1rem}}
>>>>>>> develop
