.elementor-kit-1492{--e-global-color-primary:#1E3B32;--e-global-color-secondary:#72D27F;--e-global-color-text:#335549;--e-global-color-accent:#61CE70;--e-global-color-730e5d03:#33553E;--e-global-color-60c7333e:#F6F9FB;--e-global-color-e6bb50f:#FFF;--e-global-color-123ce0a:#FFFFFF00;--e-global-typography-primary-font-family:"Montserrat";--e-global-typography-primary-font-size:30px;--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:22px;--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Montserrat";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Montserrat";--e-global-typography-accent-font-size:15px;--e-global-typography-accent-font-weight:600;--e-global-typography-accent-letter-spacing:0.5px;--e-global-typography-110b96d-font-family:"Montserrat";--e-global-typography-110b96d-font-size:14px;--e-global-typography-110b96d-font-weight:400;--e-global-typography-7f873a6-font-family:"Montserrat";--e-global-typography-7f873a6-font-size:25px;--e-global-typography-7f873a6-font-weight:700;--e-global-typography-7f873a6-line-height:1.3em;--e-global-typography-2f60dc1-font-family:"Montserrat";--e-global-typography-2f60dc1-font-size:16px;--e-global-typography-2f60dc1-font-weight:600;background-color:var( --e-global-color-e6bb50f );font-family:"Montserrat", Sans-serif;}.elementor-kit-1492 button,.elementor-kit-1492 input[type="button"],.elementor-kit-1492 input[type="submit"],.elementor-kit-1492 .elementor-button{background-color:var( --e-global-color-secondary );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 );letter-spacing:var( --e-global-typography-accent-letter-spacing );color:var( --e-global-color-e6bb50f );border-radius:35px 35px 35px 35px;}.elementor-kit-1492 e-page-transition{background-color:#FFBC7D;}.elementor-kit-1492 a{color:var( --e-global-color-accent );}.elementor-kit-1492 input:not([type="button"]):not([type="submit"]),.elementor-kit-1492 textarea,.elementor-kit-1492 .elementor-field-textual{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 );border-style:solid;border-width:0px 0px 2px 0px;border-radius:0px 0px 0px 0px;}.elementor-kit-1492 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-1492 textarea:focus,.elementor-kit-1492 .elementor-field-textual:focus{border-style:solid;border-color:var( --e-global-color-secondary );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;--container-default-padding-top:80px;--container-default-padding-right:35px;--container-default-padding-bottom:80px;--container-default-padding-left:35px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-kit-1492{--e-global-typography-primary-font-size:26px;--e-global-typography-7f873a6-font-size:20px;}.elementor-kit-1492 button,.elementor-kit-1492 input[type="button"],.elementor-kit-1492 input[type="submit"],.elementor-kit-1492 .elementor-button{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-1492 input:not([type="button"]):not([type="submit"]),.elementor-kit-1492 textarea,.elementor-kit-1492 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );}.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-1492 button,.elementor-kit-1492 input[type="button"],.elementor-kit-1492 input[type="submit"],.elementor-kit-1492 .elementor-button{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-kit-1492 input:not([type="button"]):not([type="submit"]),.elementor-kit-1492 textarea,.elementor-kit-1492 .elementor-field-textual{font-size:var( --e-global-typography-text-font-size );}.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 strong {
    font-weight: 700;
}

/* buscador */
.buscador {--flex-grow: 0;
    transition: 1s!important;
}
.buscador.e-focus {--flex-grow: 1;}
.buscador output {
    opacity: 1;
}
/*.buscador:not(.e-focus) output {
    opacity: 0;
        transition:0s;
}
/* buscador */
.jet-listing-grid__slider-icon.slick-arrow {
    border-radius: 15px;
}
/* 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;
}

p a, .elementor-icon-list-item a {
  position: relative;
}


p a:hover::before,.elementor-icon-list-item a:hover::before {
  transform: scaleX(1);
}
/* a underline hover */

/* SVG */
.svg-shadow svg{ filter: drop-shadow(0px 4px 25px rgb(0 0 0 / 15%));}
.svg-full .elementor-icon svg {width:100%!important;height:100%!important;}
.svg-full .elementor-icon {width:100%!important;}
/* SVG */

/**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**/


/* Skeleton
:root .jet-filters-loading>*:not(.jsf_provider-preloader) {
    opacity: 0 !important
}
.jet-listing-grid__loader {
   height:0;
}
.jet-listing-grid-loading .jet-listing-grid__loader {
   height:inherit;
}
.jet-listing-grid-loading .jet-listing-grid__loader-spinner{
   visibility: visible;
}
.jet-listing-grid__loader-spinner {
      visibility: hidden;
       opacity: 0;}
.jet-listing-grid__loader-spinner, .skeleton .jet-filters-loading, .skeleton-slider .jet-filters-loading  {
    width: 100%!important;
    height: 0;
	--height: 475px;
	--height-mobile:363px;
	margin-bottom: 0px;
  border:none!important;
  border-radius: 0!important;
  -webkit-animation: unset!important;
   animation:unset!important;
        justify-content: center;
    flex-direction: row;
    display: flex;
    transition: opacity 1s cubic-bezier(.25,1,.5,1) .3s
}

.jet-listing-grid-loading .jet-listing-grid__loader-spinner, .skeleton .jet-filters-loading, .skeleton-slider .jet-filters-loading{
    content: "";
     background-image: url('data:image/svg+xml,<%3Fxml version="1.0" encoding="utf-8"%3F><svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" preserveAspectRatio="none" viewBox="0 0 306 460" style="enable-background:new 0 0 306 460;-webkit-animation: skeleton-loading 1s linear infinite alternate!important; animation:skeleton-loading 1s linear infinite alternate!important;" xml:space="preserve"><style>@keyframes skeleton-loading {0% {fill: %23a3b8c2;}100% {fill: %23f0f3f5;}}</style><path d="M296.7,22.9v285.4H9.3V22.9C9.3,15.2,15.4,9,22.9,9h260.3C290.6,9,296.7,15.2,296.7,22.9z M204.7,326.4h-102v13.5h102.1 L204.7,326.4L204.7,326.4z M9.3,414.3l0.1,24.3c0.5,6.9,6.2,12.4,13.1,12.4h261.2c6.9,0,12.5-5.5,13.1-12.4l0.1-24.3H9.3z M34.6,351 v13.1v0.4v23.1h238.2v-23.1v-0.4V351H34.6z"/></svg>');
     opacity: 1;
}

.skeleton .jet-listing-grid-loading .jet-listing-grid__loader-spinner, .skeleton .jet-filters-loading{
     background-size: 25% 33.33%;
     height: calc(var(--height) * 3)
}

.skeleton-slider .jet-listing-grid-loading .jet-listing-grid__loader-spinner, .skeleton-slider .jet-filters-loading{
    background-size: 25% 100%;
    height: calc(var(--height) * 1)
}

@media (max-width: 1024px){
.skeleton .jet-listing-grid-loading .jet-listing-grid__loader-spinner, .skeleton .jet-filters-loading{
     background-size: 33.33% 25%;
     height: calc(var(--height) * 3)
}

.skeleton-slider .jet-listing-grid-loading .jet-listing-grid__loader-spinner, .skeleton-slider .jet-filters-loading{
     background-size: 33.33% 100%;
     height: calc(var(--height) * 1)
}
}

@media (max-width: 767px){
.skeleton .jet-listing-grid-loading .jet-listing-grid__loader-spinner, .skeleton .jet-filters-loading{
     background-size: 50% 16.67%;
     height: calc(var(--height-mobile) * 6)
}
.skeleton-slider .jet-listing-grid-loading .jet-listing-grid__loader-spinner, .skeleton-slider .jet-filters-loading{
     background-size: 50% 100%;
     height: calc(var(--height-mobile) * 1)
}
}

/* Skeleton*/

/**Efecto de botones**/
span.elementor-cta__button::before {
    display: none;
}
.elementor-button, .e-form__buttons .elementor-button{
  position: relative;
 overflow: hidden;
 margin-block-end: -7px;
}
.elementor-button:before, .e-form__buttons .elementor-button:before {
  position: absolute;
  left: 50%;
  top: 50%;
    transform: translate(-50%,-50%) scale(0,0);
  content: "";
  background-color: transparent;
   background-image: linear-gradient(90deg, var(    --e-global-color-primary) 0%, var(    --e-global-color-primary) 100%);
  border-radius: 50%;
  --width: 105%;
    width: var(--width);
    height: calc(100%* var(--width));
    aspect-ratio: 1 / 1;
  transition: all .5s;
}
.elementor-button:hover:before {
    transform: translate(-50%,-50%) scale(1,1);
}
.e-form__buttons .elementor-button:hover:before {
    transform: translate(-50%,-50%) scale(1,1);
}

span.elementor-button-text, span.elementor-button-icon, .e-form__buttons span{z-index: 10;}
.btn-2 .elementor-button:before {   background-image: linear-gradient(90deg, var(--e-global-color-accent) 0%, var(--e-global-color-57bdc37d) 100%);}

/* Custom scroll bar */
::-webkit-scrollbar {
    width: 10px;
        background-color: var(--e-global-color-primary);
}
::-webkit-scrollbar-track {
    border-radius: 50px;
}

::-webkit-scrollbar-thumb {
    background-color: transparent;
    background-image: linear-gradient(180deg, var(--e-global-color-secondary) 0%, var(--e-global-color-accent) 60%);
    border-radius: 50px;
}
/* Custom scroll bar */

/* Seleccion color */
::-moz-selection { 
  color: #fff;
  background: var( --e-global-color-accent );
}

::selection {
  color: #fff;
  background: var( --e-global-color-accent );
}
/* Seleccion color */


.elementor-motion-effects-element {
    transition-property: all!important;
    transition-duration: 2.1s!important;
    transition-timing-function: cubic-bezier(.165,.84,.44,1)!important;
}
/**Efecto de movimiento**/

/******* 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;
    }
}




/*************************************************
LEFT / RIGHT BLOCK REVEAL ANIMATION FOR WIDGETS
REPLACEMENT WITH FLASH ANIMATION
/*************************************************/

.flash {
    animation: none !important;
}
.flash .elementor-widget-container {
    opacity: 0;
    animation: show-element 0.3s linear forwards;
    animation-delay: 1.4s;
}
.flash:after, .flash:before{
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    transform: scalex(0);
}

.flash:after {
    background:  var( --e-global-color-primary );
    animation: reveal-blockX 2.8s cubic-bezier(0.19, 1, 0.22, 1) forwards;
    animation-delay: 0.1s;
}
.flash:before {
    background: var( --e-global-color-accent );
    animation: reveal-blockX 2s cubic-bezier(0.19, 1, 0.22, 1) forwards;
    animation-delay: 0.4s;
    z-index: 2;
}
@keyframes reveal-blockX {
    0% {
        transform: scaleX(0);
              transform-origin: 0% 0%; 
    }
    50% {
        transform: scaleX(1);
         transform-origin: 0% 0%; 
    }
 51% {
              transform-origin: 100% 100%; 
    }
 100% {
        transform: scaleX(0);
        transform-origin: 100% 100%; 
    }
   
}
@keyframes show-element {
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}/* End custom CSS */