.elementor-kit-2100{--e-global-color-primary:#3A3A3A;--e-global-color-secondary:#AC2929;--e-global-color-text:#555555;--e-global-color-accent:#DA262B;--e-global-color-12ea1d2:#FBFCFC;--e-global-color-f07d892:#FFFFFF;--e-global-color-a2f7e88:#FFFFFF00;--e-global-color-f6c7191:#E35C6B;--e-global-color-7b32342:#EA8898;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-size:32px;--e-global-typography-primary-font-weight:700;--e-global-typography-primary-line-height:1.3em;--e-global-typography-secondary-font-family:"Montserrat";--e-global-typography-secondary-font-size:21px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:1.3em;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.3em;--e-global-typography-text-letter-spacing:0.3px;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-size:16px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-letter-spacing:1px;--e-global-typography-2010954-font-family:"Poppins";--e-global-typography-2010954-font-size:26px;--e-global-typography-2010954-font-weight:700;--e-global-typography-2010954-line-height:1.3em;background-color:#F2F2F2;color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-2100 button,.elementor-kit-2100 input[type="button"],.elementor-kit-2100 input[type="submit"],.elementor-kit-2100 .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );color:var( --e-global-color-f07d892 );box-shadow:0px 0px 25px 0px rgba(0, 0, 0, 0.15);}.elementor-kit-2100 button:hover,.elementor-kit-2100 button:focus,.elementor-kit-2100 input[type="button"]:hover,.elementor-kit-2100 input[type="button"]:focus,.elementor-kit-2100 input[type="submit"]:hover,.elementor-kit-2100 input[type="submit"]:focus,.elementor-kit-2100 .elementor-button:hover,.elementor-kit-2100 .elementor-button:focus{background-color:var( --e-global-color-secondary );color:var( --e-global-color-f07d892 );border-radius:0px 0px 0px 0px;}.elementor-kit-2100 e-page-transition{background-color:#FFBC7D;}.elementor-kit-2100 a{color:var( --e-global-color-secondary );}.elementor-kit-2100 a:hover{color:var( --e-global-color-secondary );}.elementor-kit-2100 label{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-2100 input:not([type="button"]):not([type="submit"]),.elementor-kit-2100 textarea,.elementor-kit-2100 .elementor-field-textual{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );color:var( --e-global-color-primary );accent-color:var( --e-global-color-primary );border-style:solid;border-width:0px 0px 1px 0px;border-radius:0px 0px 0px 0px;}.elementor-kit-2100 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-2100 textarea:focus,.elementor-kit-2100 .elementor-field-textual:focus{color:var( --e-global-color-primary );box-shadow:0px 0px 0px 0px rgba(0,0,0,0.5);border-style:solid;border-width:0px 0px 1px 0px;border-color:var( --e-global-color-accent );border-radius:0px 0px 0px 0px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;--container-default-padding-top:80px;--container-default-padding-right:35px;--container-default-padding-bottom:80px;--container-default-padding-left:35px;}.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);}@media(max-width:1024px){.elementor-kit-2100{--e-global-typography-primary-font-size:36px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-2100 button,.elementor-kit-2100 input[type="button"],.elementor-kit-2100 input[type="submit"],.elementor-kit-2100 .elementor-button{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-2100 label{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-2100 input:not([type="button"]):not([type="submit"]),.elementor-kit-2100 textarea,.elementor-kit-2100 .elementor-field-textual{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:60px;--container-default-padding-right:30px;--container-default-padding-bottom:60px;--container-default-padding-left:30px;}}@media(max-width:767px){.elementor-kit-2100{--e-global-typography-primary-font-size:30px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-kit-2100 button,.elementor-kit-2100 input[type="button"],.elementor-kit-2100 input[type="submit"],.elementor-kit-2100 .elementor-button{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-2100 label{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-2100 input:not([type="button"]):not([type="submit"]),.elementor-kit-2100 textarea,.elementor-kit-2100 .elementor-field-textual{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:40px;--container-default-padding-right:20px;--container-default-padding-bottom:40px;--container-default-padding-left:20px;}}/* Start custom CSS */p:last-of-type {
  margin-block-end: 0;
}

p strong {
    font-weight: 600;
}





.chat-underline{
  position: relative;
  display: inline-block;
  padding-bottom: 6px;

}

.chat-underline::before{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:60%;
  left: 20%;
  height:4px;
background: linear-gradient(90deg,rgba(172, 41, 41, 1) 0%, rgba(218, 38, 43, 1) 50%, rgba(227, 92, 107, 1) 100%);
  border-radius:999px;
    transform: scaleX(0);
  transform-origin:left;
  animation: growUnderline 0.8s ease forwards;
}

@keyframes growUnderline{
  to{
    transform: scaleX(1);
  }
}




/* */
.carrusel-home h2, .loop h2, .loop h3, .loop h4  {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.carrusel-home p, .carrusel-home .elementor-widget-theme-post-excerpt, .loop .elementor-widget-theme-post-excerpt {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.loop .elementor-widget-icon-box{align-items: flex-end;display: flex;}

/* a underline hover */
p a::before, .elementor-icon-list-item a::before {
  content: "";
  position: absolute;
  display: block;
  width: 100%;
  height: 2px;
  bottom: -2px;
  left: 0;
  background-color:var(--e-global-color-accent);
  transform: scaleX(0);
  transform-origin: top left;
  transition: transform 0.7s ease;
}


/* a underline hover */


/**form replace fonticon**/
.elementor-message:before, .elementor-message.elementor-message-danger:before {
    content: "";
    font-family: unset;
}

.elementor-form-spinner {
    content: "";
    font-family: unset;
  width: 25px;
  height: 25px;
  padding: 4px;
  aspect-ratio: 1;
  border-radius: 50%;
  background: #ffffff;
  --_m: 
    conic-gradient(#0000 10%,#000),
    linear-gradient(#000 0 0) content-box;
  -webkit-mask: var(--_m);
          mask: var(--_m);
  -webkit-mask-composite: source-out;
          mask-composite: subtract;
  animation: l3 1s infinite linear;
}
@keyframes l3 {to{transform: rotate(1turn);}}
/**form replace fonticon**/







/******* ENTRANCES *********/

html, body {
    overflow-x: hidden;
}

:root {
	--quart-out: 0.165,0.84,0.44,1;
	--quart-in-out: 0.77,0,0.175,1;
	--prueba:.19,1,.22,1;}

/******* TRANSITIONS DURATIONS *********/
.animated {
    -webkit-animation-duration: 2s;
    animation-duration: 2s;
}
.animated.animated-slow {
    -webkit-animation-duration: 3s;
    animation-duration: 3s;
} 
.animated.animated-fast {
    animation-duration: 1s;
}
/******* MASKS *********/

.bounceInDown {
	animation-name: bounceInDown-new !important;
	animation-timing-function: cubic-bezier(var(--quart-in-out));
	animation-fill-mode: both;
}
@keyframes bounceInDown-new {
    from {
        clip-path: inset(0 0 100% 0);
        opacity: 1;
    }
    to {
        clip-path: inset(0 0 0 0);
        opacity: 1;
    }
}

.bounceInUp {
	animation-name: bounceInUp-new !important;
	animation-timing-function: cubic-bezier(var(--quart-in-out));
	animation-fill-mode: both;
}
@keyframes bounceInUp-new {
    from {
        clip-path: inset(100% 0 0 0);
        opacity: 1;
    }
    to {
        clip-path: inset(0 0 0 0);
        opacity: 1;
    }
}

.bounceInRight {
	animation-name: bounceInRight-new !important;
	animation-timing-function: cubic-bezier(var(--quart-in-out));
	animation-fill-mode: both;
}
@keyframes bounceInRight-new {
    from {
        clip-path: inset(0 0 0 100%);
        opacity: 1;
    }
    to {
        clip-path: inset(0 0 0 0);
        opacity: 1;
    }
}

.bounceInLeft {
	animation-name: bounceInLeft-new !important;
	animation-timing-function: cubic-bezier(var(--quart-in-out));
	animation-fill-mode: both;
}
@keyframes bounceInLeft-new {
    from {
        clip-path: inset(-20% 100% -20% -20%);
        opacity: 1;
    }
    to {
        clip-path: inset(-20% -20% -20% -20%);
        opacity: 1;
    }
}

/******* SCALES *********/
.zoomInUp {
    animation-name: zoomInUp-new !important;
    animation-timing-function: cubic-bezier(var(--quart-in-out));
    animation-fill-mode: both;
}
@keyframes zoomInUp-new {
    0% {
        transform: scale(0.9, 0.9);
        	opacity: 0;
    }
    100% {
        transform: none;
        opacity: 1;
    }
}
.zoomInDown {
    animation-name: zoomInDown-new !important;
    animation-timing-function: cubic-bezier(var(--quart-in-out));
    animation-fill-mode: both;
}
@keyframes zoomInDown-new {
    0% {
        transform: scale(1.3, 1.3);
        	opacity: 0;
    }
    100% {
        transform: none;
        opacity: 1;
    }
}
/******* FADES *********/

@keyframes fadeIn {
    from {
        opacity: 0;
        filter: blur(3px);
    }
    to {
        opacity: 1;
        filter: blur(0);
    }
}
.fadeIn {
    animation-name: fadeIn;
}

@keyframes fadeUp {
    0% {
         opacity: 0;
        transform: translate3d(0, 75px, 0);
        filter: blur(3px);
    }
    100% {
        opacity: 1;
        transform: translateX(0);
        filter: blur(0);
    }
}
.fadeInUp {
    animation-name: fadeUp !important;
    animation-timing-function: cubic-bezier(var(--quart-in-out));
    animation-fill-mode: both;
}	
@keyframes fadeLeft {
    0% {
        transform: translate3d(-75px, 0, 0);
        opacity: 0;
        filter: blur(3px);
    }
    100% {
	transform: translateX(0); 	
	opacity: 1;  
	filter: blur(0);
    }
}
.fadeInLeft {
    animation-name: fadeLeft !important;
    animation-timing-function: cubic-bezier(var(--quart-in-out));
    animation-fill-mode: both;
}
@keyframes fadeRight {
    0% {
        transform: translate3d(75px, 0, 0);
        opacity: 0;
        filter: blur(3px);
    }
    100% {
        transform: translateX(0);
        opacity: 1;
        filter: blur(0);
    }
}
.fadeInRight {
    animation-name: fadeRight !important;
    animation-timing-function: cubic-bezier(var(--quart-in-out));
    animation-fill-mode: both;
}
@keyframes fadeDown {
    0% {
        transform: translate3d(0, -75px, 0);
        opacity: 0;
        filter: blur(3px);
    }
    100% {
        transform: translateY(0);
        opacity: 1;
        filter: blur(0);
    }
}
.fadeInDown {
    animation-name: fadeDown !important;
    animation-timing-function: cubic-bezier(var(--quart-in-out));
    animation-fill-mode: both;
}
/******* ENTRANCES *********/


/****************
   SLIDE ANIMS
*****************/

.slideInDown {
     animation-name: unset!important;
}
.animated.slideInDown {
    overflow: hidden;
    opacity: 1;
}
.slideInDown > .elementor-widget-container {
    animation-name: slideInDown-new!important;
    animation-duration: inherit;
    animation-timing-function: cubic-bezier(var(--quart-in-out));
    animation-fill-mode: both;
    animation-delay: inherit;
    
}
@keyframes slideInDown-new {
    from {
        transform: translateY(-100%);
    }
   to {
        opacity: 1;
        transform: none;
    }
}
.slideInLeft {
     animation-name: unset!important;
}
.animated.slideInLeft {
    overflow: hidden;
    opacity: 1;
}
.slideInLeft > .elementor-widget-container {
    animation-name: slideInLeft-new!important;
    animation-duration: inherit;
    animation-timing-function: cubic-bezier(var(--quart-in-out));
    animation-fill-mode: both;
    animation-delay: inherit;
    
}
@keyframes slideInLeft-new {
    from {
        transform: translateX(-100%);
    }
   to {
        opacity: 1;
        transform: none;
    }
}
.slideInRight {
     animation-name: unset!important;
}
.animated.slideInRight {
    overflow: hidden;
    opacity: 1;
}
.slideInRight > .elementor-widget-container {
    animation-name: slideInRight-new!important;
    animation-duration: inherit;
    animation-timing-function: cubic-bezier(var(--quart-in-out));
    animation-fill-mode: both;
    animation-delay: inherit;
    
}
@keyframes slideInRight-new {
    from {
        transform: translateX(100%);
    }
   to {
        opacity: 1;
        transform: none;
    }
}
.slideInUp {
     animation-name: unset!important;
}
.animated.slideInUp {
    overflow: hidden;
    opacity: 1;
}
.slideInUp > .elementor-widget-container {
    animation-name: slideInUp-new!important;
    animation-duration: inherit;
    animation-timing-function: cubic-bezier(var(--quart-in-out));
    animation-fill-mode: both;
    animation-delay: inherit;
    
}
@keyframes slideInUp-new {
    from {
        transform: translateY(100%);
    }
   to {
        opacity: 1;
        transform: none;
    }
}/* End custom CSS */