.elementor-kit-6{--e-global-color-primary:#E6365D;--e-global-color-secondary:#191524;--e-global-color-text:#FFFFFF;--e-global-color-accent:#86318E;--e-global-typography-primary-font-family:"Work Sans";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Work Sans";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Work Sans";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Work Sans";--e-global-typography-accent-font-weight:500;background-color:#14111E;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 h1{font-size:82px;}.elementor-kit-6 h2{font-size:64px;}.elementor-kit-6 h3{font-size:40px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-6 h1{font-size:54px;}.elementor-kit-6 h2{font-size:48px;}.elementor-kit-6 h3{font-size:32px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6 h1{font-size:34px;}.elementor-kit-6 h2{font-size:36px;}.elementor-kit-6 h3{font-size:28px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS */html {
  scroll-behavior: auto !important;
}
.text-orange,.text-pink{
    color: #E6365D;
}
.btn-icon-org .elementor-button-icon{
    fill: #F26D7E;
}
.text-decoration{
    position: relative;
}
span.text-decoration:after {
    content: "";
    position: absolute;
    right: -5px;
    bottom: 0px;
    width: 130px;
    height: 19px;
    background-color: rgba(134, 49, 142, 0.5);
    z-index: -1;
}
.box-blur{
    box-shadow:
    0 0 50px rgba(255, 0, 100, 0.20),
    0 0 80px rgba(255, 0, 100, 0.2);
}
.ctn-blur:after{
    content: "";
  position: absolute;
  inset: 0px;
  background: radial-gradient(
    circle at center,
   rgba(135, 50, 144, 0.65) 0%,
    rgba(135, 50, 144, 0.4) 30%,
    rgba(135, 50, 144, 0.2) 50%,
    transparent 70%
  );
  filter: blur(60px);
  z-index: -1;
}

.ctn-blur-bl::after {
  content: "";
  position: absolute;
  inset: 60px;
  background: radial-gradient(
    circle at center,
    rgba(85, 101, 237, 0.75) 0%,
    rgba(85, 101, 237, 0.6) 30%,
    rgba(85, 101, 237, 0.45) 45%,
    rgba(85, 101, 237, 0.25) 60%,
    rgba(85, 101, 237, 0.1) 72%,
    transparent 85%
  );
  filter: blur(120px);
  z-index: -1;
}
.elementor-widget-icon-box .elementor-icon-box-title{
    margin: 10px 0;
}
.text-title-h4{
    font-size: 32px;
    line-height: 36px;
}
@media screen and (min-width: 768px) {
    .ctn-zoom {
        transition: transform 0.3s ease;
        -webkit-transition: -webkit-transform 0.3s ease;
        -ms-transition: -ms-transform 0.3s ease;
    }
    .ctn-zoom:hover {
        transform: scale(1.07);
        -webkit-transform: scale(1.07);
        -ms-transform: scale(1.07);
    }
}

/**/
.btn-rd a:before {
    content: '';
background: linear-gradient(45deg, #dd5747, #d64561, #983260, #7d388c, #433287, #7d388c, #983260, #d64561, #dd5747);
    position: absolute;
    top: -4px;
    left:-4px;
    background-size: 400%;
    z-index: -1;
    filter: blur(5px);
    width: calc(100% + 8px);
    height: calc(100% + 8px);
    animation: glowing 20s linear infinite;
    opacity: 0;
    transition: opacity .3s ease-in-out;
    border-radius: 20px;
}

.btn-rd a:active {
    color: #000
}

.btn-rd a:active:after {
    background: transparent;
}

.btn-rd a:hover:before {
    opacity: 1;
}

.btn-rd a:after {
    z-index: -1;
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: #111;
    left: 0;
    top: 0px;
    border-radius: 20px;
}

@keyframes glowing {
    0% { background-position: 0 0; }
    50% { background-position: 400% 0; }
    100% { background-position: 0 0; }
}

.btn-wh a:before {
    content: '';
background-image: linear-gradient(45deg,
  rgba(255,255,255,0.85), rgba(255,255,255,0.6), rgba(255,255,255,0.85),
  rgba(255,255,255,0.5), rgba(255,255,255,0.85), rgba(255,255,255,0.6),
  rgba(255,255,255,0.85), rgba(255,255,255,0.5), rgba(255,255,255,0.85)
);
    position: absolute;
    top: -2px;
    left:0px;
    background-size: 400%;
    z-index: -1;
    filter: blur(5px);
    width: calc(100% + 4px);
    height: calc(100% + 4px);
    animation: glowing 20s linear infinite;
    opacity: 0;
    transition: opacity .3s ease-in-out;
    border-radius: 20px;
}

.btn-wh a:active {
    color: #000
}

.btn-wh a:active:after {
    background: transparent;
}

.btn-wh a:hover:before {
    opacity: 1;
}

.btn-wh a:after {
    z-index: -1;
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: #111;
    left: 0;
    top: -1px;
    border-radius: 20px;
}

.ctn-process::after {
  transform: scaleY(var(--line-progress, 0));
  transform-origin: top;
}

/* Home */
.text-orange{
    color: #E6365D;
}
.btn-icon-org .elementor-button-icon{
    fill: #F26D7E;
}
.text-decoration{
    position: relative;
}
span.text-decoration:after {
    content: "";
    position: absolute;
    right: -5px;
    bottom: 0px;
    width: 130px;
    height: 19px;
    background-color: rgba(134, 49, 142, 0.5);
    z-index: -1;
}
.box-blur{
    box-shadow:
    0 0 50px rgba(255, 0, 100, 0.20),
    0 0 80px rgba(255, 0, 100, 0.2);
}
.ctn-blur:after{
    content: "";
  position: absolute;
  inset: 0px;
  background: radial-gradient(
    circle at center,
   rgba(135, 50, 144, 0.65) 0%,
    rgba(135, 50, 144, 0.4) 30%,
    rgba(135, 50, 144, 0.2) 50%,
    transparent 70%
  );
  filter: blur(60px);
  z-index: -1;
}
.ctn-process {
  position: relative;
}

@media (max-width: 1024px) {
  .ctn-process::before {
    left: -108px;
    width: 102px;
    height: 80px;
  }
}
@media (max-width: 767px) {
  .ctn-process::before {
    display: none;
  }
}
.connector-svg {
    position: absolute;
    left: -172px;
    width: 85px;
    height: 125px;
    overflow: visible;
    pointer-events: none;
    top: -35px;
}
.connector-line {
  stroke-dasharray: 122;
  stroke-dashoffset: 122;
}
.connector-dot {
  clip-path: inset(0 100% 0 0);
}

/* Renombrado: .paso-card -> .step-card */
.step-card {
  transition: none;
}

.card-service {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.card-service:hover {
  transform: translateY(-8px);
}
.card-service.card-clr-pk:hover {
  box-shadow: 0 7px 30px rgba(230, 54, 93, 0.2);
}
.card-service.card-clr-bl:hover {
    box-shadow: 0 4px 25px #5565ED;
}
.btn-icon-org .elementor-button-icon,
.btn-icon-org .elementor-align-icon-right {
  transition: transform 0.3s ease;
}
.card-service:hover .btn-icon-org .elementor-button-icon,
.card-service:hover .btn-icon-org .elementor-align-icon-right {
  transform: translateX(6px);
}
.card-service-stack:nth-child(3) {
  border: 1px solid rgba(230, 54, 93, 0.25);
}

/* Renombrado: Hero Section Elements */
.hero-title {
  opacity: 0;
}
.hero-title .word {
  display: inline-block;
  will-change: transform, opacity;
}
.hero-description,
.hero-buttons {
  opacity: 0;
  transform: translateY(20px);
}

/* Renombrado: CTA Section Elements */
.final-cta-box {
  position: relative;
}

.final-cta-box::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 450px;
  height: 450px;
  margin: -225px 0 0 -225px;
  background: radial-gradient(
    circle,
    rgba(230, 54, 93, 0.5) 0%,
    rgba(230, 54, 93, 0.25) 30%,
    rgba(230, 54, 93, 0.1) 60%,
    transparent 80%
  );
  filter: blur(90px);
  transform: translate3d(0, 0, 0);
  animation: float 10s ease-in-out infinite alternate;
  will-change: transform;
  z-index: -1;
  pointer-events: none;
}

@keyframes float {
  from {
    transform: translate3d(-40px, -20px, 0);
  }
  to {
    transform: translate3d(40px, 20px, 0);
  }
}

/**/
.grid-card {
  position: relative;
  background-color: #12111a;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.02);
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  will-change: transform, border-color, box-shadow;
}

.grid-card:hover {
  transform: translateY(-3px) scale(1.01);
  border-color: #e6365d4f;
  box-shadow: 
    0 10px 30px -10px rgba(168, 85, 247, 0.05),
    inset 0 0 15px rgba(168, 85, 247, 0.10);
}
.reveal-item {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  overflow: hidden;
}
.reveal-item:hover .badge-icon {
  filter: drop-shadow(0 0 10px rgba(230, 54, 93, 0.6));
}
.reveal-item img {
  transition: transform 0.4s ease;
}
.reveal-item:hover img {
  transform: scale(1.05);
}
/* Buttons */
.btn-fill-outline .elementor-button {
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.btn-fill-outline .elementor-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(
    120deg,
    transparent 0%,
    rgba(255, 255, 255, 0.3) 50%,
    transparent 100%
  );
  transform: skewX(-20deg);
  transition: left 0.8s ease;
  z-index: -1;
}
.btn-fill-outline .elementor-button:hover::before {
  left: 125%;
}
.btn-fill-dark .elementor-button {
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.btn-fill-dark .elementor-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.12);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.4s ease;
  z-index: -1;
}
.btn-fill-dark .elementor-button:hover::before {
  transform: scaleX(1);
}
.btn-fill-solid .elementor-button {
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.btn-fill-solid .elementor-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: -75%;
  width: 50%;
  height: 100%;
  background: linear-gradient(
    120deg,
    transparent 0%,
    rgba(255, 255, 255, 0.35) 50%,
    transparent 100%
  );
  transform: skewX(-20deg);
  transition: left 0.6s ease;
  z-index: -1;
}
.btn-fill-solid .elementor-button:hover::before {
  left: 125%;
}
/**/
.hero-title-wave {
  opacity: 0;
}
.hero-title-wave .wave-word-wrap {
  display: inline-block;
  overflow: hidden;
  vertical-align: top;
  padding-bottom: 0.15em;
  margin-bottom: -0.15em;
}
.hero-title-wave .wave-word {
  display: inline-block;
}/* End custom CSS */