@keyframes pulse-cta{0%,to{transform:scale(1.05)}50%{transform:scale(1.1)}}@keyframes shineLogoMask{0%{mask-position:100%0}50%{mask-position:0 0}to{mask-position:-100%0}}@keyframes scrollLogos{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes floatLogo{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes slow-spin{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(360deg)}}@keyframes kenburns{0%{background-size:120%;background-position:center center}to{background-size:100%;background-position:top center}}@keyframes footerSweep{to{transform:rotate(360deg)}}@keyframes sparklePulse{50%{transform:translateY(-1px) scale(1.12);opacity:1}}:root{--color-black:#0a0a0a;--color-dark-gray:#1a1a1a;--color-gold:#D4AF37;--color-orange:#FFA500;--color-text:#cccccc;--color-white:#FFFFFF;--color-blue:#2D6CDF;--color-indigo:#5B3DF5;--color-teal:#00C2A8;--color-rose:#FF4D6D;--color-text-light:#e8eefc;--color-text-muted:#c9d6f5;--color-accent-primary:#85a3ff;--color-accent-secondary:#c49bff;--color-bg-dark:#0b1220;--color-bg-glass:rgba(11, 18, 32, 0.85);--gradient-gold-orange:linear-gradient(90deg, var(--color-gold), var(--color-orange));--gradient-blue-teal:linear-gradient(90deg, var(--color-blue), var(--color-teal));--gradient-indigo-rose:linear-gradient(90deg, var(--color-indigo), var(--color-rose));--font-heading:'Montserrat', sans-serif;--font-body:'Lato', sans-serif;--header-height:5rem;--border-radius:4px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}a,body{color:var(--color-text)}body{background-color:var(--color-black);font-family:var(--font-body);line-height:1.7;overflow-x:hidden}body.nav-open{overflow:hidden}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--color-white);font-weight:700;line-height:1.3}ul{list-style:none}a{text-decoration:none}img{max-width:100%;height:auto;display:block}a,body,button{cursor:none}.section{--accent-gradient:var(--gradient-gold-orange);--card-accent:var(--gradient-gold-orange);--tint-1:transparent;--tint-2:transparent}.theme-blue{--accent-gradient:var(--gradient-blue-teal);--card-accent:var(--gradient-blue-teal);--tint-1:rgba(45,108,223,0.18);--tint-2:rgba(0,194,168,0.14)}.theme-indigo{--accent-gradient:var(--gradient-indigo-rose);--card-accent:var(--gradient-indigo-rose);--tint-1:rgba(91,61,245,0.18);--tint-2:rgba(255,77,109,0.14)}.theme-gold{--accent-gradient:var(--gradient-gold-orange);--card-accent:var(--gradient-gold-orange);--tint-1:rgba(212,175,55,0.18);--tint-2:rgba(255,165,0,0.12)}.cursor-dot,.cursor-trail{position:fixed;top:0;left:0;pointer-events:none;border-radius:50%;z-index:9999;mix-blend-mode:exclusion}.cursor-dot{width:8px;height:8px;background-color:var(--color-gold)}.cursor-trail{width:24px;height:24px;border:1px solid var(--color-gold);transition:transform .2s ease-out,opacity .3s ease}body:hover>.cursor-trail{transform:scale(1);opacity:1}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.grid{display:grid;gap:2rem}.section{padding:6rem 0;position:relative}.section__title{font-size:2.8rem;margin-bottom:1rem;font-weight:900;color:var(--color-white);position:relative;padding-bottom:.5rem}.section__title::after{content:"";position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:80px;height:3px;background:var(--accent-gradient)}.section__title:not(.text-center)::after{left:0;transform:translateX(0)}.text-center{text-align:center}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.9rem 2.2rem;font-family:var(--font-heading);font-weight:700;text-transform:uppercase;border:2px solid transparent;border-radius:var(--border-radius);transition:all .3s ease;cursor:pointer;background-clip:padding-box}.btn i{transition:transform .3s ease}.btn:hover i{transform:translateX(5px)}.btn--primary{background:var(--gradient-gold-orange);color:var(--color-black);border:0}.btn--primary:hover{transform:translateY(-3px);box-shadow:0 10px 20px rgba(255,165,0,.25)}.btn--secondary{background-color:transparent;color:var(--color-white);border-color:var(--color-white)}.btn--secondary:hover{background-color:var(--color-white);color:var(--color-black);transform:translateY(-3px)}.btn--accent{background:var(--gradient-blue-teal);color:var(--color-white);border:0}.btn--accent:hover{transform:translateY(-3px);box-shadow:0 10px 20px rgba(45,108,223,.25)}.btn--cta-main{background:var(--gradient-gold-orange);color:var(--color-black);border:0;transform:scale(1.05);box-shadow:0 0 20px rgba(212,175,55,.5),0 0 30px rgba(255,165,0,.4);animation:pulse-cta 2.5s infinite}.btn--cta-main:hover{animation-play-state:paused;transform:scale(1.12) translateY(-3px);box-shadow:0 10px 35px rgba(212,175,55,.7)}.header{width:100%;position:fixed;top:0;left:0;z-index:1000;background-color:transparent;transition:background-color .4s ease,backdrop-filter .4s ease,height .4s ease;height:var(--header-height)}.header.scrolled{background-color:rgba(10,10,10,.7);backdrop-filter:blur(10px);height:calc(var(--header-height) - 1rem);border-bottom:1px solid rgba(255,255,255,.1)}.nav{height:100%;display:flex;justify-content:space-between;align-items:center}.nav__logo img{height:45px;width:auto;transition:height .4s ease;position:relative;z-index:2}.header.scrolled .nav__logo img{height:40px;mask-image:linear-gradient(to left,transparent,#000 10%,#000 90%,transparent);mask-size:200% 100%;mask-position:100%0;animation:shineLogoMask 2s ease-in-out forwards .5s}.nav__list{display:flex;gap:2rem}.nav__link{font-family:var(--font-heading);text-transform:uppercase;position:relative;transition:color .3s ease;color:var(--color-white)}.contact__info a:hover,.nav__link.active,.nav__link:hover{color:var(--color-gold)}.nav__link::after{content:"";position:absolute;bottom:-5px;left:0;width:100%;height:2px;background:var(--accent-gradient);transform:scaleX(0);transform-origin:right;transition:transform .4s cubic-bezier(.23,1,.32,1)}.nav__link:hover::after{transform:scaleX(1);transform-origin:left}.nav__toggle{color:var(--color-white);font-size:1.5rem;cursor:pointer;display:none}.header.header--pro{border-bottom:1px solid transparent;transition:background-color .4s ease,border-color .4s ease,backdrop-filter .4s ease;will-change:background-color,border-color}.header.header--pro.scrolled{background-color:var(--color-bg-glass);border-bottom-color:rgba(134,164,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 5px 20px rgba(0,0,0,.2)}.header.header--pro .nav__logo img{transition:transform .3s ease,filter .3s ease;filter:drop-shadow(0 4px 10px rgba(0,0,0,.3))}.header.header--pro .nav__logo:hover img{transform:scale(1.03)}.header.header--pro .nav__link{color:#e0e9ff;font-weight:500;text-shadow:0 1px 3px rgba(0,0,0,.3);padding:.5rem 0}.header.header--pro .nav__link::after{left:50%;transform:translateX(-50%);width:0;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--color-accent-primary),var(--color-accent-secondary));box-shadow:0 0 8px rgba(134,164,255,.8);transition:width .3s ease}.header.header--pro .nav__link.active,.header.header--pro .nav__link:hover{color:#fff;text-shadow:0 0 10px rgba(224,233,255,.5)}.footer__links a:hover::after,.header.header--pro .nav__link.active::after,.header.header--pro .nav__link:hover::after{width:100%}.header.header--pro .nav__toggle i{color:#e0e9ff;transition:color .3s ease,transform .3s ease}.header.header--pro .nav__toggle:hover i{color:#fff;transform:scale(1.1)}.hero{position:relative;height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden}.hero__overlay{position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(10,10,10,.55)0,rgba(10,10,10,.85) 60%),linear-gradient(135deg,rgba(45,108,223,.18),rgba(0,194,168,.12) 50%,rgba(255,77,109,.12))}.hero__spotlight{position:absolute;inset:0;background:radial-gradient(circle 500px at var(--mouse-x, 50%) var(--mouse-y, 50%),rgba(255,165,0,.1),transparent 80%);transition:background .1s ease;z-index:1}.hero__video-background,.service-card::before{position:absolute;inset:0;z-index:-1}.hero__video-background video{width:100%;height:100%;object-fit:cover}.hero__content{position:relative;z-index:2}.hero__logo{width:200px;margin:0 auto 1.5rem}.hero__logo--desktop-only{display:none}@media screen and (min-width:993px){.hero__logo--desktop-only{display:block}}.hero__title{font-size:3.8rem;font-weight:900;max-width:800px;margin:0 auto;color:var(--color-white);text-shadow:0 2px 10px rgba(0,0,0,.5)}.hero__divider{width:100px;height:3px;background:var(--accent-gradient);margin:1.5rem auto;border:0;border-radius:2px}.hero__slogan{font-size:1.5rem;margin-bottom:2.5rem;font-family:var(--font-heading);color:var(--color-gold)}.hero__buttons{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap}.stats{background-color:var(--color-black);border-top:1px solid rgba(255,255,255,.1);border-bottom:1px solid rgba(255,255,255,.1)}.stats__container{grid-template-columns:repeat(3,1fr);text-align:center}.stats__number{font-size:3.5rem;font-weight:900;color:var(--color-gold)}.stats__description{font-family:var(--font-heading);font-size:1.1rem;color:var(--color-text)}.about__container{grid-template-columns:1fr 1.2fr;align-items:center}.about__image-content .image-wrapper{position:relative;border-radius:var(--border-radius);overflow:hidden}.about__image-content .image-wrapper::after{content:"";position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;border:2px solid var(--color-gold);border-radius:var(--border-radius);z-index:-1;transition:all .4s ease}.about__image-content:hover .image-wrapper::after{transform:rotate(3deg)}.about__img{border-radius:var(--border-radius)}.about__subtitle{font-size:1.5rem;color:var(--color-gold);margin:2rem 0 1rem}.services{background-image:url(https://www.transparenttextures.com/patterns/dark-circles.png);background-color:var(--color-dark-gray);position:relative}.section__background-overlay{position:absolute;inset:0;background:radial-gradient(ellipse at top,rgba(26,26,26,.8) 0%,#0a0a0a 70%),radial-gradient(circle at 20% 10%,var(--tint-1),transparent 40%),radial-gradient(circle at 80% 90%,var(--tint-2),transparent 40%)}.services__container{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.service-card{background:var(--color-dark-gray);padding:2.5rem 2rem;text-align:center;border:1px solid transparent;border-radius:var(--border-radius);transition:transform .3s ease,box-shadow .3s ease,background-color .3s ease;position:relative;overflow:hidden;background-clip:padding-box}.service-card::before{content:"";margin:-1px;border-radius:inherit;background:rgba(255,255,255,.1);transition:background .3s ease}.service-card.is-active,.service-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px rgba(0,0,0,.5)}.service-card.is-active::before,.service-card:hover::before{background:var(--card-accent)}.service-card__icon-img{height:80px;width:auto;margin:0 auto 1.5rem;filter:invert(80%) brightness(.9);opacity:.8;transition:all .4s ease}.service-card.is-active .service-card__icon-img,.service-card:hover .service-card__icon-img{filter:drop-shadow(0 0 15px var(--color-orange));opacity:1;transform:scale(1.1)}.service-card--cta{background:linear-gradient(145deg,rgba(212,175,55,.15),rgba(255,165,0,.1));border-color:rgba(212,175,55,.3)}.service-card--cta .service-card__icon{font-size:2.5rem;color:var(--color-gold)}.service-card--cta:hover{border-color:var(--color-gold);box-shadow:0 0 40px rgba(212,175,55,.3)}.projects{background-color:var(--color-dark-gray)}.projects__container{display:grid;grid-template-columns:1fr 1.5fr;align-items:center;gap:3rem}.projects__gallery{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.project-card{position:relative;overflow:hidden;border-radius:var(--border-radius);display:block;box-shadow:0 10px 30px rgba(0,0,0,.5)}.project-card__img{width:100%;height:100%;object-fit:cover;aspect-ratio:4/3;transition:transform .5s cubic-bezier(.25,.46,.45,.94)}.project-card__overlay{position:absolute;bottom:0;left:0;width:100%;padding:1.5rem;background:linear-gradient(to top,rgba(0,0,0,.95) 20%,transparent 100%);display:flex;justify-content:space-between;align-items:flex-end;transition:all .4s ease}.project-card__title{color:var(--color-white);font-size:1.5rem;margin-bottom:.25rem;transition:transform .4s ease;transform:translateY(20px)}.project-card__subtitle{color:var(--color-text);font-size:.9rem;opacity:0;transition:opacity .4s ease .1s,transform .4s ease .1s;transform:translateY(20px)}.project-card__icon,.project-card__icon-gallery{display:flex;align-items:center;transition:all .4s ease}.project-card__icon{width:40px;height:40px;border-radius:50%;background:var(--card-accent);color:var(--color-black);justify-content:center;font-size:2rem;font-weight:300;flex-shrink:0}.project-card__icon-gallery{gap:.5rem;opacity:0;transform:scale(.5)}.project-card__icon-gallery .fa-camera{font-size:1.5rem;color:var(--color-gold)}.project-card.is-active .project-card__img,.project-card:hover .project-card__img{transform:scale(1.1)}.project-card.is-active .project-card__overlay,.project-card:hover .project-card__overlay{background:linear-gradient(to top,rgba(0,0,0,.95) 50%,transparent 100%)}.project-card.is-active .project-card__title,.project-card:hover .project-card__title{transform:translateY(0)}.project-card.is-active .project-card__subtitle,.project-card:hover .project-card__subtitle{transform:translateY(0);opacity:1}.project-card.is-active .project-card__icon-gallery,.project-card:hover .project-card__icon-gallery{opacity:1;transform:scale(1)}.project-card.is-active .project-card__icon,.project-card:hover .project-card__icon{transform:rotate(90deg)}.testimonials{background-color:var(--color-dark-gray);overflow:hidden}.testimonials .section__background-overlay{background:radial-gradient(ellipse at 50% -20%,rgba(26,26,26,.85),#0a0a0a 70%),radial-gradient(circle at 10% 30%,var(--tint-1),transparent 45%),radial-gradient(circle at 90% 80%,var(--tint-2),transparent 45%)}.testimonials__container{perspective:1000px;position:relative;padding-top:2rem}.testimonial-card-slider{position:relative;width:100%;height:400px;transform-style:preserve-3d}.testimonial-card{position:absolute;width:60%;left:20%;top:0;padding:2rem;background-color:rgba(10,10,10,.6);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:var(--border-radius);text-align:center;transition:transform .5s ease,opacity .5s ease,z-index 0s .25s;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.5)}.testimonial-card.active{transform:translateZ(0);opacity:1;z-index:3}.testimonial-card.prev{transform:translateX(-55%) translateZ(-200px) rotateY(35deg);opacity:.3;z-index:2}.testimonial-card.next{transform:translateX(55%) translateZ(-200px) rotateY(-35deg);opacity:.3;z-index:2}.testimonial__logo{height:80px;width:auto;margin:0 auto 1.5rem;border-radius:50%}.testimonial__text{font-size:1.1rem;font-style:italic;margin-bottom:1.5rem;line-height:1.8}.testimonial__author{color:var(--color-gold);font-weight:700}.testimonial__company{font-size:.9rem;opacity:.8;text-transform:uppercase}.slider__nav{display:flex;justify-content:center;gap:1rem;margin-top:1rem}.slider__btn{background:0 0;border:1px solid var(--color-gold);color:var(--color-gold);width:45px;height:45px;font-size:1rem;cursor:pointer;border-radius:50%;transition:background-color .3s,color .3s}.slider__btn:hover{background-color:var(--color-gold);color:var(--color-black)}.partners,.partners__container{overflow:hidden;position:relative}.partners{background-color:var(--color-black);padding:4rem 0}.partners__container{width:100%;padding:2rem 0}.partners__carousel-track{display:flex;width:fit-content;animation:scrollLogos 40s linear infinite;will-change:transform}.partner__logo:hover,.partners__carousel-track:hover{animation-play-state:paused}.partner__logo{height:70px;max-width:200px;margin:0 3rem;transition:transform .4s ease,filter .4s ease;cursor:pointer;flex-shrink:0;animation:floatLogo 5s ease-in-out infinite}.partner__logo:hover{filter:drop-shadow(0 0 15px rgba(255,255,255,.6));transform:scale(1.1) translateY(-5px)}.partner__logo:nth-child(2){animation-delay:-1s}.partner__logo:nth-child(3){animation-delay:-2s}.partner__logo:nth-child(4){animation-delay:-3s}.partner__logo:nth-child(5){animation-delay:-4s}.partner__logo:nth-child(6){animation-delay:-5s}.contact{background-color:var(--color-black);position:relative;overflow:hidden}.contact::before{content:"";position:absolute;top:50%;left:50%;width:150%;padding-top:150%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(212,175,55,.15)0,rgba(10,10,10,0) 60%);animation:slow-spin 20s linear infinite;z-index:0}.contact__container{grid-template-columns:1fr 1fr;align-items:center;background-color:rgba(10,10,10,.7);padding:3rem;border-radius:16px;border:1px solid rgba(212,175,55,.2);backdrop-filter:blur(5px);position:relative;z-index:1}.contact__info p{margin-bottom:1rem;font-size:1.1rem}.contact__info i{color:var(--color-gold);margin-right:1rem;width:20px}.contact__info a{transition:color .3s ease}.contact__form form{display:flex;flex-direction:column;gap:1.5rem}.contact__form input,.contact__form textarea{width:100%;padding:1rem;background-color:var(--color-dark-gray);border:1px solid #444;color:var(--color-white);font-family:var(--font-body);font-size:1rem;transition:border-color .3s ease,box-shadow .3s ease;border-radius:var(--border-radius)}.contact__form input:focus,.contact__form textarea:focus{outline:0;border-color:var(--color-gold);box-shadow:0 0 15px rgba(212,175,55,.2)}.contact__form textarea{height:150px;resize:vertical}.map-section{padding-top:0}.map-info-card,.map-wrapper{border-radius:var(--border-radius)}.map-wrapper{position:relative;overflow:hidden;height:450px;box-shadow:0 20px 40px rgba(0,0,0,.5)}.map-wrapper iframe{position:absolute;inset:0;width:100%;height:100%;filter:grayscale(100%) contrast(1.2);transition:filter .4s ease}.map-wrapper:hover iframe{filter:grayscale(0%)}.map-info-card{position:absolute;top:2rem;left:2rem;width:350px;background-color:rgba(10,10,10,.7);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);padding:2rem;color:var(--color-white);transition:all .4s ease}.map-info-card.hidden{opacity:0;transform:scale(.95);pointer-events:none}.map-wrapper:hover .map-info-card{background-color:rgba(10,10,10,.85)}.map-info-card i{color:var(--color-gold)}.map-info-card h4,.map-info-card i{font-size:1.5rem;margin-bottom:1rem}.map-info-card p{font-size:.9rem;line-height:1.6;margin-bottom:1.5rem}.page-banner{padding:10rem 0 6rem;text-align:center;position:relative;background-image:url(/assets/images/proyectos-realizados3.webp);background-size:120%;background-position:center center;overflow:hidden;animation:kenburns 30s ease-out infinite alternate}.page-banner .container{position:relative;z-index:2}.page-banner .hero__overlay{background:radial-gradient(ellipse at center,rgba(10,10,10,.65)0,rgba(10,10,10,.85) 100%),linear-gradient(135deg,rgba(45,108,223,.18),rgba(0,194,168,.12) 50%,rgba(255,77,109,.12))}.page-banner__title{font-size:3.5rem;color:var(--color-white);margin-bottom:1rem;text-shadow:0 2px 20px rgba(0,0,0,.9)}.page-banner__subtitle{font-size:1.2rem;color:var(--color-white);max-width:600px;margin:0 auto;text-shadow:0 1px 10px rgba(0,0,0,.9)}.project-grid-section{background-color:var(--color-dark-gray)}.project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:2rem}.page-banner-pro{position:relative;padding:8rem 0;text-align:center;color:#fff;background-size:cover;background-position:center;isolation:isolate}.page-banner-pro .hero__overlay{background:linear-gradient(180deg,rgba(7,12,22,.6)0,rgba(7,12,22,.8) 100%)}.page-banner-pro__title{font-size:clamp(2.5rem,6vw,4rem);font-weight:900;text-shadow:0 4px 15px rgba(0,0,0,.4);margin-bottom:.5rem}.page-banner-pro__subtitle{font-size:clamp(1.1rem,3vw,1.5rem);font-weight:400;color:#dbe6ff;text-shadow:0 2px 8px rgba(0,0,0,.3);max-width:600px;margin:0 auto}.core-values{padding:4rem 0}.core-values__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.value-card{background:linear-gradient(160deg,rgba(255,255,255,.05),rgba(255,255,255,.01));border:1px solid rgba(134,164,255,.2);border-radius:16px;padding:2rem;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.value-card:hover{transform:translateY(-8px);box-shadow:0 20px 40px rgba(0,0,0,.3)}.value-card__icon{font-size:2.5rem;color:var(--color-accent-primary);margin-bottom:1rem;display:inline-block;text-shadow:0 0 15px rgba(133,163,255,.6)}.value-card__title{font-size:1.5rem;font-weight:700;color:#fff;margin-bottom:.75rem}.value-card__text{color:var(--color-text-muted);line-height:1.6}.experience-stats{padding:4rem 0}.experience-stats__container{align-items:center;gap:3rem}.experience-stats__text-content p{color:var(--color-text-muted);line-height:1.7;margin-bottom:1rem}.experience-stats__stats-grid{display:grid;grid-template-columns:1fr;gap:2rem}.stat-item{text-align:center}.stat-item__number{display:block;font-size:clamp(3rem,8vw,4.5rem);font-weight:900;color:#fff;line-height:1;background:-webkit-linear-gradient(45deg,var(--color-accent-primary),var(--color-accent-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.stat-item__label{display:block;font-size:1.1rem;color:var(--color-text-muted);margin-top:.5rem}.contact-cta-pro{position:relative;padding:5rem 1rem;text-align:center;color:#fff}.contact-cta-pro .contact__overlay{opacity:.9}.contact-cta-pro__container{position:relative;z-index:1}.contact-cta-pro p{font-size:1.25rem;max-width:600px;margin:0 auto 1.5rem;color:#e0e9ff}.team-section-pro{padding:4rem 0}.team-grid-pro{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2.5rem}.team-card-pro{background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid rgba(134,164,255,.2);border-radius:16px;padding:2rem;text-align:center;position:relative;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease}.team-card-pro:hover{transform:translateY(-10px);box-shadow:0 25px 50px rgba(0,0,0,.4)}.team-card-pro__image-wrapper{width:130px;height:130px;border-radius:50%;margin:0 auto 1.5rem;padding:5px;background:linear-gradient(45deg,var(--color-accent-primary),var(--color-accent-secondary));transition:transform .3s ease}.gallery-pro__item.is-active img,.gallery-pro__item:hover img,.team-card-pro:hover .team-card-pro__image-wrapper{transform:scale(1.05)}.team-card-pro__image{width:100%;height:100%;border-radius:50%;object-fit:cover;border:3px solid var(--color-bg-dark)}.team-card-pro__name{font-size:1.6rem;font-weight:700;margin:0 0 .25rem;color:#fff}.team-card-pro__title{font-size:1rem;font-weight:400;margin:0 0 1rem;background:-webkit-linear-gradient(45deg,var(--color-accent-primary),var(--color-accent-secondary));-webkit-background-clip:text;-webkit-text-fill-color:transparent}.team-card-pro__description{font-size:.95rem;line-height:1.6;color:var(--color-text-muted);min-height:90px}.team-card-pro__contact{margin-top:1.5rem}.team-card-pro__contact a{color:var(--color-accent-primary);text-decoration:none;font-weight:700;transition:color .3s ease,text-shadow .3s ease}.team-card-pro__contact a:hover{color:#fff;text-shadow:0 0 8px rgba(133,163,255,.7)}.team-card-pro__contact a i{margin-right:.5rem}.project-meta-pro{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;background:linear-gradient(160deg,rgba(255,255,255,.05),rgba(255,255,255,.01));border:1px solid rgba(134,164,255,.2);border-radius:16px;padding:2rem;margin-bottom:3rem}.meta-item{display:flex;flex-direction:column}.meta-item__key{font-size:.9rem;font-weight:700;color:var(--color-accent-primary);text-transform:uppercase;margin-bottom:.25rem}.meta-item__value{font-size:1.1rem;color:var(--color-text-light)}.gallery-pro{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.gallery-pro__item{position:relative;overflow:hidden;border-radius:16px;aspect-ratio:16/10;box-shadow:0 10px 30px rgba(0,0,0,.4);transition:box-shadow .3s ease}.gallery-pro__item:hover{box-shadow:0 20px 40px rgba(0,0,0,.5)}.gallery-pro__item img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.gallery-pro__overlay{position:absolute;inset:0;background:rgba(11,18,32,.6);display:flex;align-items:center;justify-content:center;color:#fff;font-size:2.5rem;opacity:0;transition:opacity .4s ease}.gallery-pro__item.is-active .gallery-pro__overlay,.gallery-pro__item:hover .gallery-pro__overlay{opacity:1}.project-navigation{text-align:center;margin-top:3rem}.footer{background-color:#000;padding:2rem 0;border-top:1px solid rgba(255,255,255,.1)}.footer__container{display:flex;flex-direction:column;align-items:center;text-align:center;gap:1rem}.footer__logo img{height:50px;opacity:.8}.footer__copyright,.footer__designer{font-size:.9rem;opacity:.7}.footer-wave{position:relative;height:60px;margin-top:2rem;overflow:hidden}.footer-wave svg{display:block}.footer-wave path{fill:var(--color-bg-dark, #0b1220);opacity:.9}.footer.footer--pro{position:relative;color:#e8eefc;background:radial-gradient(120% 120%at 10% 10%,#0e1a33 0,#0b1220 45%,#0a0f1a 100%);padding:4rem 0 2rem;overflow:hidden;isolation:isolate}.footer.footer--pro::before{content:"";position:absolute;inset:-40% -40%auto -40%;height:200%;background:conic-gradient(from 180deg at 50% 50%,rgba(255,255,255,.06),rgba(255,255,255,0) 30% 70%,rgba(255,255,255,.06));animation:footerSweep 16s linear infinite;pointer-events:none;opacity:.35;filter:blur(30px);z-index:-1}.footer.footer--pro .footer__container{position:relative;z-index:1}.footer__grid{display:grid;grid-template-columns:1.2fr 1fr 1fr .9fr;gap:2rem 3rem;align-items:start}.footer__brand .footer__logo{width:190px;max-width:100%;filter:drop-shadow(0 6px 14px rgba(0,0,0,.35));transition:transform .3s ease,filter .3s ease}.footer__logo-link:hover .footer__logo{transform:translateY(-2px) scale(1.02);filter:drop-shadow(0 10px 18px rgba(0,0,0,.45))}.footer__tagline{margin:1rem 0 1.25rem;color:var(--color-text-muted);opacity:.9}.footer__cta.btn.btn--ghost{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.1rem;border:1px solid rgba(255,255,255,.2);border-radius:12px;color:#e8eefc;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 10px 24px rgba(0,0,0,.25);transition:all .2s ease}.footer__cta:hover{transform:translateY(-2px);border-color:rgba(134,164,255,.55);background:linear-gradient(180deg,rgba(134,164,255,.12),rgba(134,164,255,.04));box-shadow:inset 0 1px 0 rgba(134,164,255,.25),0 16px 28px rgba(32,64,160,.35)}.footer__title{font-weight:700;color:#fff;margin-bottom:.9rem;letter-spacing:.3px}.footer__contact,.footer__links{list-style:none;margin:0;padding:0}.footer__contact li,.footer__links li{margin:.55rem 0}.footer__links a{color:#cfe0ff;text-decoration:none;position:relative;transition:color .2s ease}.footer__links a::after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:2px;background:linear-gradient(90deg,#85a3ff,#c49bff,#85a3ff);border-radius:2px;transition:width .25s ease}.footer__contact a:hover,.footer__links a:hover{color:#fff}.footer__contact i{color:var(--color-accent-primary);margin-right:.5rem}.footer__contact a{color:#dbe6ff;text-decoration:none}.footer__social{display:flex;gap:.75rem}.social-btn{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;color:#e8eefc;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.15);box-shadow:0 8px 18px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.06);transition:all .2s ease}.social-btn:hover{transform:translateY(-2px) scale(1.04);background:linear-gradient(180deg,rgba(134,164,255,.15),rgba(134,164,255,.04));border-color:rgba(134,164,255,.45);box-shadow:0 12px 22px rgba(32,64,160,.35),inset 0 1px 0 rgba(134,164,255,.25)}.footer__divider{margin:2rem 0 1rem;border:0;height:1px;background:linear-gradient(90deg,rgba(255,255,255,0),rgba(134,164,255,.4),rgba(255,255,255,0))}.footer__bottom{display:flex;gap:1rem;align-items:center;justify-content:space-between;flex-wrap:wrap}.footer.footer--pro .footer__copy{margin:0;color:#b9c9ee}.footer.footer--pro .footer__designer{margin:0;color:#d7e3ff;display:flex;align-items:center;gap:.5rem}.designer-link{position:relative;display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .6rem;border-radius:999px;color:#fff;text-decoration:none;background:linear-gradient(90deg,#7aa2ff,#c49bff,#7aa2ff);background-size:200% 100%;box-shadow:0 8px 18px rgba(124,161,255,.25);transition:transform .2s ease,box-shadow .2s ease,background-position .6s ease;will-change:transform}.designer-link .fab{filter:drop-shadow(0 2px 4px rgba(0,0,0,.25))}.designer-link .sparkle{margin-left:.15rem;animation:sparklePulse 2.6s ease-in-out infinite;opacity:.9}.designer-link:hover{transform:translateY(-2px);background-position:100%0;box-shadow:0 14px 28px rgba(124,161,255,.35)}.whatsapp-flotante{position:fixed;bottom:2rem;right:2rem;width:60px;height:60px;border-radius:50%;z-index:100;box-shadow:0 5px 15px rgba(0,0,0,.3);transition:transform .3s ease}.whatsapp-flotante:hover{transform:scale(1.1)}.footer-wave svg,.whatsapp-flotante img{width:100%;height:100%}.animate-on-scroll{opacity:0;transform:translateY(20px);transition:opacity .6s ease-out,transform .6s ease-out}.animate-on-scroll.visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media screen and (max-width:992px){body{cursor:auto}.cursor-dot,.cursor-trail{display:none}.section__title{font-size:2.2rem}.hero__title{font-size:2.8rem}.about__container,.contact__container,.experience-stats__container,.projects__container{grid-template-columns:1fr}.projects__intro{text-align:center}.projects__container{gap:2rem}.projects__intro .section__title::after{left:50%;transform:translateX(-50%)}.nav__toggle{display:block;z-index:1001}.nav__menu{position:fixed;top:0;right:-100%;width:70%;height:100vh;background-color:rgba(10,10,10,.8);backdrop-filter:blur(15px);transition:right .4s ease-in-out;z-index:1000}.nav__menu.show-menu{right:0}.nav__list{flex-direction:column;justify-content:center;align-items:center;height:100%;gap:3rem}.nav__link{font-size:1.3rem;color:var(--color-white)}.partner__logo{margin:0 1.5rem}.testimonial-card{width:80%;left:10%}.testimonial-card.next,.testimonial-card.prev{display:none}.footer__grid{grid-template-columns:1fr 1fr}}@media screen and (max-width:768px){.projects__gallery,.stats__container{grid-template-columns:1fr}.contact__container{padding:2rem}.hero__title{font-size:2.2rem}.header.scrolled .nav__logo img{animation:none;mask-image:none}.testimonial-card-slider{height:420px}.project-grid{grid-template-columns:1fr}.map-info-card{width:auto;left:1rem;right:1rem;top:1rem;bottom:auto}}@media (max-width:767px){.header.header--pro .nav__menu{left:-100%;width:100%;padding:6rem 2rem 2rem;background:radial-gradient(circle at top left,#0e1a33,#0b1220);transition:left .4s cubic-bezier(.25,1,.5,1)}.header.header--pro .nav__menu.show-menu{left:0}.header.header--pro .nav__list{text-align:center}.header.header--pro .nav__link{font-size:1.5rem;font-weight:700;text-shadow:none}.header.header--pro .nav__link:hover::after{width:70%}.header.header--pro .nav__toggle{z-index:1001}}@media (max-width:576px){.footer__grid{grid-template-columns:1fr}.footer.footer--pro .footer__bottom{flex-direction:column;text-align:center}.footer__social{justify-content:center}}.faq{padding:4rem 0}.faq__intro{margin:0 auto 2.5rem;max-width:700px;color:var(--color-text-muted);font-size:1.1rem}.faq__container{max-width:900px;margin:0 auto}.faq-item{background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:1.5rem;margin-bottom:1rem;transition:all .3s ease}.faq-item:hover{background:rgba(255,255,255,.05);border-color:rgba(134,164,255,.3);transform:translateY(-2px);box-shadow:0 8px 16px rgba(0,0,0,.2)}.faq-item__question{color:var(--color-accent-primary);font-size:1.2rem;font-weight:700;margin:0 0 1rem;line-height:1.4}.faq-item__answer{color:#dbe6ff;line-height:1.7}.faq-item__answer p{margin:0}@media (max-width:768px){.faq{padding:3rem 0}.faq-item{padding:1.2rem}.faq-item__question{font-size:1.1rem}}
