.elementor-kit-6{--e-global-color-primary:#1A5F8A;--e-global-color-secondary:#E8706A;--e-global-color-text:#3D3D3D;--e-global-color-accent:#E8706A;--e-global-color-b22509d:#F5B800;--e-global-color-946193d:#1E7EA1;--e-global-color-f228df1:#3AAA8C;--e-global-color-3317b1b:#F2F4F6;--e-global-color-bafb23b:#FFFFFF;--e-global-color-4234941:#25D366;--e-global-typography-c15e772-font-size:16px;color:var( --e-global-color-text );font-family:"Nunito Sans", Sans-serif;font-size:18px;font-weight:300;line-height:1.3em;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{font-family:"Open Sans", Sans-serif;}.elementor-kit-6 h1{font-family:"Nunito Sans", Sans-serif;font-size:53px;font-weight:700;}.elementor-kit-6 h2{font-family:"Nunito Sans", Sans-serif;font-size:35px;font-weight:700;}.elementor-kit-6 h3{font-family:"Nunito Sans", Sans-serif;font-size:21px;font-weight:700;}.elementor-kit-6 h4{font-family:"Montserrat", Sans-serif;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{font-size:15px;font-weight:500;border-radius:10px 10px 10px 10px;padding:20px 20px 20px 20px;}.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-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//*=================*/
/* Botón de llamada */
/*=================*/
.cta-llamada {
  background: linear-gradient(135deg, #E8706A 0%, #D85C56 100%);
  padding: 16px 45px;
  color: white !important;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  box-shadow: 0 4px 12px rgba(232, 112, 106, 0.3);
  transition: all 0.3s ease;
  border: 0;
  border-radius: 10px;
}

.cta-llamada:hover {
  background: linear-gradient(135deg, #F0827C 0%, #E8706A 100%);
  box-shadow: 0 6px 16px rgba(232, 112, 106, 0.4);
  transform: translateY(-1px);
}

.cta-llamada:active {
  transform: translateY(0);
}

/* Icono de teléfono */
.cta-icon-phone {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

/* Ondas de llamada */
.phone-wave {
  position: absolute;
  border: 2px solid rgba(255, 255, 255, 0.6);
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
}

/* Animación al hacer hover */
.cta-llamada:hover .phone-wave {
  animation: phoneRing 1.5s ease-out infinite;
}

.cta-llamada:hover .wave-1 {
  animation-delay: 0s;
}

.cta-llamada:hover .wave-2 {
  animation-delay: 0.3s;
}

.cta-llamada:hover .wave-3 {
  animation-delay: 0.6s;
}

@keyframes phoneRing {
  0% {
    width: 20px;
    height: 20px;
    opacity: 0.8;
  }
  50% {
    opacity: 0.4;
  }
  100% {
    width: 50px;
    height: 50px;
    opacity: 0;
  }
}

/* Contenedor de texto */
.cta-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

/* Texto pequeño superior */
.cta-top {
  font-size: 12px;
  font-weight: 400;
  opacity: 0.85;
  letter-spacing: 0.3px;
}

/* Número de teléfono */
.cta-main {
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 0.3px;
}

/* Responsivo */
@media (max-width: 768px) {
  .cta-llamada {
    padding: 14px 24px;
  }
  
  .cta-top {
    font-size: 11px;
  }
  
  .cta-main {
    font-size: 18px;
  }
}

/*=================*/
/* Botón de WhatsApp */
/*=================*/
.cta-whatsapp {
  background: linear-gradient(135deg, #25D366 0%, #128C7E 100%);
  padding: 16px 45px;
  color: white !important;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  box-shadow: 0 4px 12px rgba(37, 211, 102, 0.3);
  transition: all 0.3s ease;
  border: 0;
  border-radius:10px;

}

.cta-whatsapp:hover {
  background: linear-gradient(135deg, #2ee874 0%, #149e8d 100%);
  box-shadow: 0 6px 16px rgba(37, 211, 102, 0.4);
  transform: translateY(-1px);
}

.cta-whatsapp:active {
  transform: translateY(0);
}

/* Icono de WhatsApp */
.cta-icon-whatsapp {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

/* Ondas de WhatsApp */
.whatsapp-wave {
  position: absolute;
  border: 2px solid rgba(255, 255, 255, 0.6);
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
}

/* Animación al hacer hover */
.cta-whatsapp:hover .whatsapp-wave {
  animation: whatsappRing 1.5s ease-out infinite;
}

.cta-whatsapp:hover .wave-1 {
  animation-delay: 0s;
}

.cta-whatsapp:hover .wave-2 {
  animation-delay: 0.3s;
}

.cta-whatsapp:hover .wave-3 {
  animation-delay: 0.6s;
}

@keyframes whatsappRing {
  0% {
    width: 24px;
    height: 24px;
    opacity: 0.8;
  }
  50% {
    opacity: 0.4;
  }
  100% {
    width: 54px;
    height: 54px;
    opacity: 0;
  }
}

/* Contenedor de texto */
.cta-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

/* Texto pequeño superior */
.cta-top {
  font-size: 12px;
  font-weight: 400;
  opacity: 0.85;
  letter-spacing: 0.3px;
}

/* Texto principal */
.cta-main {
  font-size: 20px;
  font-weight: 600;
  letter-spacing: 0.3px;
}

/* Responsivo */
@media (max-width: 768px) {
  .cta-whatsapp {
    padding: 14px 24px;
  }
  
  .cta-top {
    font-size: 11px;
  }
  
  .cta-main {
    font-size: 18px;
  }
}

/*=================*/
/* Botón ¿Cómo llegar? */
/*=================*/
.cta-ruta {
  background: linear-gradient(135deg, #1A5F8A 0%, #155078 100%);
  padding: 16px 45px;
  color: white !important;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  box-shadow: 0 4px 12px rgba(26, 95, 138, 0.3);
  transition: all 0.3s ease;
  border: 0;
  border-radius: 10px;
  cursor: pointer;
  font-family: inherit;
}

.cta-ruta:hover {
  background: linear-gradient(135deg, #1E6FA0 0%, #1A5F8A 100%);
  box-shadow: 0 6px 16px rgba(26, 95, 138, 0.4);
  transform: translateY(-1px);
}

.cta-ruta:active {
  transform: translateY(0);
}

.cta-icon-ruta {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

.ruta-wave {
  position: absolute;
  border: 2px solid rgba(255, 255, 255, 0.6);
  border-radius: 50%;
  opacity: 0;
  pointer-events: none;
}

.cta-ruta:hover .ruta-wave {
  animation: rutaRing 1.5s ease-out infinite;
}

.cta-ruta:hover .wave-1 { animation-delay: 0s; }
.cta-ruta:hover .wave-2 { animation-delay: 0.3s; }
.cta-ruta:hover .wave-3 { animation-delay: 0.6s; }

@keyframes rutaRing {
  0%   { width: 20px; height: 20px; opacity: 0.8; }
  50%  { opacity: 0.4; }
  100% { width: 50px; height: 50px; opacity: 0; }
}

@media (max-width: 768px) {
  .cta-ruta {
    padding: 14px 24px;
  }
}

/*=================*/
/* Modal de ruta   */
/*=================*/
.rt2-backdrop {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  z-index: 9998;
  align-items: center;
  justify-content: center;
}

.rt2-backdrop.open {
  display: flex;
}

.rt2-modal {
  background: #fff;
  border-radius: 20px;
  padding: 32px 28px 28px;
  width: 320px;
  max-width: 90vw;
  position: relative;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.18);
  animation: rt2-in 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes rt2-in {
  from { opacity: 0; transform: scale(0.92) translateY(12px); }
  to   { opacity: 1; transform: scale(1) translateY(0); }
}

.rt2-close {
  position: absolute;
  top: 14px; right: 16px;
  width: 28px; height: 28px;
  border-radius: 50%;
  border: 1px solid #E8E8E8;
  background: #F2F4F6;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #999;
  transition: background 0.2s;
}

.rt2-close:hover {
  background: #E8E8E8;
}

.rt2-modal-title {
  font-size: 14px;
  font-weight: 600;
  color: #1A5F8A;
  margin: 0 0 4px;
  font-family: inherit;
}

.rt2-modal-sub {
  font-size: 12px;
  color: #999;
  margin: 0 0 24px;
  font-family: inherit;
}

.rt2-options {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.rt2-option {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 16px;
  border-radius: 12px;
  border: 1px solid #E8E8E8;
  background: #F2F4F6;
  cursor: pointer;
  text-decoration: none;
  transition: border-color 0.2s, transform 0.2s, box-shadow 0.2s;
}

.rt2-option:hover {
  border-color: #ccc;
  transform: translateX(3px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
}

.rt2-opt-icon {
  width: 40px; height: 40px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.rt2-opt-icon.gmaps { background: #E8F0FE; }
.rt2-opt-icon.waze  { background: #E8F7FF; }
.rt2-opt-icon.uber  { background: #F2F2F2; }

.rt2-opt-text { flex: 1; }

.rt2-opt-name {
  font-size: 14px;
  font-weight: 500;
  color: #3D3D3D;
  display: block;
  font-family: inherit;
}

.rt2-opt-desc {
  font-size: 11.5px;
  color: #999;
  font-family: inherit;
}

.rt2-opt-arrow {
  color: #ccc;
}

.ti-widget.ti-goog .ti-widget-container, .ti-widget.ti-goog .ti-widget-container * {
	font-family: "Nunito Sans" !important;
}/* End custom CSS */