.hl-marker{white-space:nowrap;isolation:isolate;display:inline-block;position:relative}.hl-marker:after{content:"";background:var(--blue-lt);z-index:-1;border-radius:4px;width:104%;height:40%;position:absolute;bottom:8%;left:-2%;transform:rotate(-1deg)}#inicio{background:var(--navy);align-items:center;min-height:100vh;padding-top:68px;display:flex;position:relative;overflow:hidden}.hero-bg{z-index:0;position:absolute;inset:0}.hero-bg img{object-fit:cover;object-position:center;opacity:.45;width:100%;height:100%}.hero-bg:after{content:"";background:linear-gradient(105deg,#00152de6 35%,#00152da6 65%,#1c70bc26 100%);position:absolute;inset:0}.hero-grid{z-index:1;grid-template-columns:1fr 480px;align-items:center;gap:clamp(40px,6vw,80px);width:100%;max-width:1280px;margin:0 auto;padding:clamp(24px,4vw,56px) clamp(20px,5vw,48px);display:grid;position:relative}.hero-content{max-width:620px}.hero-badge{background:#1c70bc2e;border:1px solid #1c70bc66;border-radius:100px;align-items:center;gap:8px;margin-bottom:28px;padding:6px 14px 6px 10px;display:inline-flex}.hero-badge-dot{background:var(--blue-lt);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse-dot}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.hero-badge span{color:var(--blue-lt);text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;font-weight:700}.hero-content h1{color:var(--white);margin-bottom:20px;font-size:clamp(1.85rem,5vw,3.4rem);line-height:1.1}.hero-content h1 em{color:var(--blue-lt);font-style:normal}.hero-subtitle{color:#ffffffb8;max-width:520px;margin-bottom:36px;font-size:clamp(1rem,1.6vw,1.12rem)}.hero-pillars{flex-wrap:wrap;gap:10px;margin-bottom:36px;display:flex}.pillar-tag{color:#ffffffd9;text-transform:uppercase;letter-spacing:.06em;background:#ffffff12;border:1px solid #ffffff1f;border-radius:6px;align-items:center;gap:6px;padding:7px 14px;font-size:.75rem;font-weight:600;display:flex}.pillar-tag svg{width:15px;height:15px;fill:var(--blue-lt);flex-shrink:0}.hero-form-card{background:var(--white);border-radius:var(--radius-lg);padding:clamp(28px,4vw,44px);box-shadow:0 24px 64px #00000059}.hero-mobile-cta,.hero-modal-close{display:none}@media (width<=1024px){.hero-grid{grid-template-columns:1fr}.hero-mobile-cta{display:block}.hero-form-card{display:none}.hero-form-card.modal-open{z-index:2000;background:var(--lavanda);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;border-radius:0;max-width:100%;height:100dvh;margin:0;padding:64px 24px 32px;display:block;position:fixed;inset:0;overflow-y:auto;transform:none!important}.hero-form-card.modal-open .hero-modal-close{width:40px;height:40px;color:var(--navy);cursor:pointer;background:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:2rem;display:flex;position:absolute;top:16px;right:16px;box-shadow:0 4px 12px #0000001a}.hero-content{max-width:100%}}@media (width<=480px){.hero-pillars{flex-direction:column}}#servicios{background:var(--white)}.servicios-grid{grid-template-columns:repeat(3,1fr);justify-content:center;gap:clamp(16px,2.5vw,28px);margin-bottom:40px;display:grid}@media (width<=1024px){.servicios-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.servicios-grid{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;justify-content:flex-start;gap:16px;margin:0 -20px 24px;padding:10px 20px 32px;display:flex;overflow-x:auto}.servicios-grid::-webkit-scrollbar{display:none}.servicio-card{scroll-snap-align:center;flex-shrink:0;width:85vw;min-width:85vw;max-width:85vw}.servicio-card.reveal{opacity:1!important;transition:none!important;transform:none!important}}.servicio-card{background:var(--lavanda);border-radius:var(--radius-md);border:1.5px solid var(--lavanda-dk);transition:transform var(--transition), box-shadow var(--transition), border-color var(--transition);flex-direction:column;display:flex;position:relative;overflow:hidden}.servicio-card:after{content:"";background:var(--blue-lt);transform-origin:50%;z-index:10;width:100%;height:5px;transition:transform .4s;position:absolute;bottom:0;left:0;transform:scaleX(0)}.servicio-card:hover{border-color:#1c70bc66;transform:translateY(-8px);box-shadow:0 16px 32px #1c70bc26}.servicio-card:hover:after{transform:scaleX(1)}.servicio-card-img{aspect-ratio:16/9;width:100%;overflow:hidden}.servicio-card-img img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.servicio-card:hover .servicio-card-img img{transform:scale(1.04)}.servicio-card-body{flex-direction:column;flex:1;padding:clamp(16px,2vw,22px);display:flex}.servicio-icon{background:var(--blue);border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:16px;display:flex}.servicio-icon svg{fill:#fff;width:22px;height:22px}.servicio-card h3{color:var(--navy);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px;font-size:1.05rem}.servicio-card p{flex:1;margin-bottom:16px;font-size:.88rem;line-height:1.5}.servicio-card-link{color:var(--blue);transition:gap var(--transition);align-items:center;gap:4px;font-size:.85rem;font-weight:600;display:inline-flex}.servicio-card-link:hover{gap:8px}.servicios-secundarios{background:var(--navy);border-radius:var(--radius-md);flex-wrap:wrap;gap:clamp(12px,2vw,20px);padding:clamp(20px,3vw,28px) clamp(20px,4vw,40px);display:flex}.servicio-sec-item{flex:1;align-items:center;gap:10px;min-width:200px;display:flex}.servicio-sec-dot{background:var(--blue-lt);border-radius:50%;flex-shrink:0;width:8px;height:8px}.servicio-sec-item p{color:#fffc;font-size:.9rem;font-weight:500}.servicio-sec-item strong{color:var(--white);font-weight:600}@media (width<=480px){.servicios-secundarios{flex-direction:column}}#equipo-clientes{background:var(--white)}.equipo-clientes-layout{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(40px,7vw,80px);margin-bottom:clamp(48px,7vw,80px);display:grid}.herava-img{border-radius:var(--radius-md);aspect-ratio:16/9;margin-bottom:24px;overflow:hidden}.herava-img img{object-fit:cover;width:100%;height:100%}.herava-block h3{color:var(--navy);text-transform:uppercase;letter-spacing:.04em;margin-bottom:10px;font-size:1.25rem}.herava-block p{margin-bottom:16px;font-size:.95rem}.herava-features{flex-direction:column;gap:10px;display:flex}.herava-feature{color:var(--gray-700);align-items:center;gap:10px;font-size:.88rem;font-weight:500;display:flex}.herava-feature svg{width:16px;height:16px;fill:var(--blue);flex-shrink:0}.clientes-marquee-wrapper{margin-bottom:clamp(48px,6vw,64px)}.clientes-nota-top{text-align:center;color:var(--gray-400);margin-bottom:24px;font-size:.95rem}.marquee-container{white-space:nowrap;align-items:center;width:100%;display:flex;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.marquee-content{gap:20px;padding:10px 0;animation:30s linear infinite scroll-marquee;display:inline-flex}.marquee-content:hover{animation-play-state:paused}@keyframes scroll-marquee{0%{transform:translate(0)}to{transform:translate(calc(-50% - 10px))}}.cliente-logo-card{background:var(--gray-50);border:1.5px solid var(--gray-200);border-radius:var(--radius-sm);transition:border-color var(--transition), background var(--transition);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:180px;min-height:80px;padding:16px 24px;display:flex}.cliente-logo-card:hover{border-color:var(--blue);background:var(--lavanda)}.cliente-logo-card strong{font-family:var(--font-heading);color:var(--navy);letter-spacing:.02em;font-size:1rem}.cliente-logo-card span{text-transform:uppercase;letter-spacing:.07em;color:var(--gray-400);font-size:.72rem;font-weight:500}.galeria-section h3{color:var(--navy);text-transform:uppercase;letter-spacing:.04em;margin-bottom:20px;font-size:1.25rem}.galeria-grid{grid-template-columns:repeat(4,1fr);grid-auto-rows:200px;gap:12px;display:grid}.galeria-item{border-radius:var(--radius-sm);background:var(--lavanda-dk);overflow:hidden}.galeria-item:first-child,.galeria-item:nth-child(4){grid-column:span 2}.galeria-item img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.galeria-item:hover img{transform:scale(1.05)}@media (width<=1024px){.equipo-clientes-layout{grid-template-columns:1fr}}@media (width<=768px){.galeria-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px}.galeria-item:first-child,.galeria-item:nth-child(4){grid-column:span 1}.clientes-logos{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.galeria-grid{grid-template-columns:1fr;grid-auto-rows:200px}.clientes-logos{grid-template-columns:1fr}}#contacto{background:var(--lavanda)}.contacto-layout{grid-template-columns:1fr 400px;align-items:start;gap:clamp(40px,7vw,80px);display:grid}.contacto-info .label{margin-bottom:12px;display:block}.contacto-info h2{color:var(--navy);margin-bottom:14px}.contacto-info>p{margin-bottom:32px;font-size:1rem}.contacto-opciones{flex-direction:column;gap:14px;margin-bottom:32px;display:flex}.contacto-opcion{background:var(--white);border:1.5px solid var(--lavanda-dk);border-radius:var(--radius-md);transition:border-color var(--transition), box-shadow var(--transition);align-items:center;gap:14px;padding:16px 20px;text-decoration:none;display:flex}.contacto-opcion:hover{border-color:var(--blue);box-shadow:var(--shadow-card)}.contacto-opcion-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.contacto-opcion-icon.phone-icon{background:#00152d14}.contacto-opcion-icon.wa-icon{background:#25d3661f}.contacto-opcion-icon svg{width:22px;height:22px}.contacto-opcion-icon.phone-icon svg{fill:var(--navy)}.contacto-opcion-icon.wa-icon svg{fill:#25d366}.contacto-opcion-text strong{color:var(--navy);margin-bottom:2px;font-size:.95rem;display:block}.contacto-opcion-text span{color:var(--gray-400);font-size:.82rem}.contacto-form-card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);border:1.5px solid var(--lavanda-dk);padding:clamp(28px,4vw,40px)}.contacto-form-card .form-card-header{margin-bottom:20px}@media (width<=1024px){.contacto-layout{grid-template-columns:1fr}.contacto-form-card{max-width:520px}}
