.elementor-5203 .elementor-element.elementor-element-2cfc9557{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:40px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5203 .elementor-element.elementor-element-7064b0b1{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-5203 .elementor-element.elementor-element-11366c91{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:13px;--margin-right:13px;--padding-top:0px;--padding-bottom:22px;--padding-left:0px;--padding-right:0px;}@media(max-width:1024px){.elementor-5203 .elementor-element.elementor-element-2cfc9557{--margin-top:-30px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-5203 .elementor-element.elementor-element-7064b0b1{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-5203 .elementor-element.elementor-element-11366c91{--margin-top:-55px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}@media(max-width:767px){.elementor-5203 .elementor-element.elementor-element-2cfc9557{--margin-top:-8px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}}/* Start custom CSS for shortcode, class: .elementor-element-7064b0b1 *//* 0. ENVOLTORIO GENERAL */
.elk-filter-wrapper {
    display: block;
    width: fit-content;
    margin-left: 0;
    padding-left: 5px;
    font-family: 'Barlow Semi Condensed', sans-serif;
}

/* TÍTULO */
.elk-filter-title {
    font-family: 'Barlow', sans-serif;
    font-size: 18px;
    font-weight: 500;
    text-transform: uppercase;
    color: #333;
    margin: 0 0 25px 0;
}

/* 1. CONTENEDOR DE BOTONES */
.elk-tags-container {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    font-family: 'Barlow Semi Condensed', sans-serif !important;
    justify-content: flex-start; /* siempre alineados a la izquierda */
    max-width: 900px;
}

/* 2. ESTILO BASE DE CADA BOTÓN */
.elk-tags-container .elk-tag-button {
    background: linear-gradient(to bottom,
       #53181F 0%,   /* parte superior 
        #53181F 50%,  /* desde la mitad */
        #53181F 100%  /* parte inferior sólida */
    );
    border: 1px solid #53181F;
    color: #fff !important;
    
    text-align: center;
    text-transform: uppercase;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 16px;
    border-radius: 60px;
    transition: all 0.1s ease-in-out;
    cursor: pointer;
    text-decoration: none !important;
    white-space: nowrap;
    height: 52px;
    width: auto;
    flex: 0 0 auto;
    font-family: 'Barlow Semi Condensed', sans-serif;
}

/* 5. ICONOS + y − */
.elk-tags-container .elk-tag-button i {
    font-size: 14px;
    margin-left: 8px;
    line-height: 1;
}

/* 6. BOTÓN CONTENEDOR */
.elk-button-cont a.button {
    background: linear-gradient(to bottom,
        #ef7923 0%,   /* parte superior sólida */
        #ef7923 50%,  /* hasta la mitad */
        #f3944f 50%,  /* desde la mitad */
        #f3944f 100%  /* parte inferior sólida */
    );
    color: #fff !important;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 4px;
    padding: 16px 16px;
    display: inline-block;
    text-align: center;
    transition: transform 0.15s ease;
}

.elk-button-cont a.button:hover,
.elk-tags-container .elk-tag-button:hover {
    transform: scale(1.02);
}


/* 5. ICONOS + y − */
.elk-tags-container .elk-tag-button i {
    font-size: 14px;
    margin-left: 8px;
    line-height: 1;
    
}

.elk-button-cont a.button{
    background: linear-gradient(
  to bottom,
  rgba(239,121,35,1) 0%,
  rgba(239,121,35,1) 50%,
  rgba(243,148,79,1) 50%,
  rgba(243,148,79,1) 100%
);

}


/* ----------------------------------------------------------------- */
/* ADAPTACIÓN TABLET: réplica de desktop con salto controlado */
/* ----------------------------------------------------------------- */
@media (max-width: 768px) {
    .elk-filter-wrapper {
        width: auto; /* evita limitar el ancho del contenedor en tablet */
    }

    .elk-tags-container {
        max-width: 100%;
        justify-content: flex-start; /* igual que PC */
        align-items: flex-start;
    }

    .elk-tags-container .elk-tag-button {
        font-size: 16px;
        height: 48px;
        padding: 10px 14px;
        width: auto; /* mantiene ancho natural */
    }

    /* Forzar salto de línea tras el 3er y 6to botón manteniendo anchos naturales */
    .elk-tags-container .elk-tag-button:nth-child(3)::after,
    .elk-tags-container .elk-tag-button:nth-child(6)::after {
        content: "";
        display: block;
        flex-basis: 100%;
        height: 0;
    }
}

/* ----------------------------------------------------------------- */
/* ADAPTACIÓN MÓVIL PEQUEÑO */
/* ----------------------------------------------------------------- */


/* Fuerza alineación izquierda dentro del widget que renderiza el shortcode */
:where(.elementor) .elementor-section :where(.elementor-container) 
  :where(.elementor-column) .elementor-widget-shortcode 
  :where(.elementor-widget-container) .elk-filter-wrapper {
  width: 100% !important;
  max-width: 900px !important;
  margin: 0 !important;
  text-align: left !important;
}

:where(.elementor) .elementor-section :where(.elementor-container) 
  :where(.elementor-column) .elementor-widget-shortcode 
  :where(.elementor-widget-container) .elk-tags-container {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-start !important;
  align-items: flex-start !important;
  width: 100% !important;
  max-width: 900px !important;
}

:where(.elementor) .elementor-section :where(.elementor-container) 
  :where(.elementor-column) .elementor-widget-shortcode 
  :where(.elementor-widget-container) .elk-tag-button {
  flex: 0 0 auto !important;
  width: auto !important;
  white-space: nowrap !important;
}

.elk-filters-section .container {
  padding-left: 0 !important;
  padding-right: 0 !important;
}


.wp-pagenavi  {  display: none !important; }

/* Override de padding vertical en botones de filtros */
.elk-tags-container .elk-tag-button {
  padding-top: 18px !important;  /* más espacio arriba */
  padding-bottom:18px !important; /* más espacio abajo */
  height: auto !important;        /* libera la altura fija de 52px */
}

/* Ajuste coherente en tablet/móvil */
@media (max-width: 768px) {
  .elk-tags-container .elk-tag-button {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
    height: auto !important;      /* libera la altura fija de 48px */
  }
}

@import url('https://fonts.googleapis.com/css?family=Barlow+Condensed:500,700');

/* 🔧 Fuerza la fuente condensada en todos los elementos clave */
.lodging-card h3,
.lodging-card p,
.lodging-card a.blue,
.lodging-card .tags_cont,
.lodging-card .button_cont a.button {
  font-family: "Barlow Condensed", sans-serif !important;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-453a64f1 *//* ================================================================
   ESTILOS PARA ALOJAMIENTOS (REUTILIZA DISEÑO DE RESTAURANTES)
   ================================================================ */

/* Contenedor de la lista */
.elk-posts-list-wrapper {
    display: flex;
    flex-direction: column;
    gap: 20px; 
    margin-top: 20px;
    font-family: "Oswald", "Roboto Condensed", sans-serif;
}

/* Tarjeta de alojamiento */
.lodging-card {
    padding: 28px 23px;
    width: 100%;
    display: flex;
    align-items: center;
    gap: 30px;
    background: #fff;
    border: 1px solid #e5e5e5;
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
    border-radius: 2px;
    box-sizing: border-box;
    position: relative;
}

/* Imagen */
.lodging-card .image.cover {
    width: 170px;
    height: 170px;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    border: 1px solid #eee;
    flex-shrink: 0;
}

/* Texto */
.lodging-card .text {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* Fila superior: teléfono + distancia */
.lodging-card .tags_cont {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    font-family: "Barlow Condensed", sans-serif !important;
    font-size: 16px !important;
    color: #888;
    font-weight: 700;
    text-transform: uppercase;
        align-items: center;
}

/* Icono teléfono */
.lodging-card .tags_cont span.phone::before {
    content: "\f095";
    font-family: "Font Awesome 5 Free";
    margin-right: 5px;
    color: #888;
}

/* Título */
.lodging-card h3 {
    margin: 0 0 5px 0;
    font-size: 28px;
    font-weight: 700;
    color: #333;
    text-transform: uppercase;
    letter-spacing: -0.5px;
    font-family: "Barlow Condensed", sans-serif !important;
}

/* Dirección */
.lodging-card p {
    margin: 0 0 8px 0;
    font-size: 19px;
    color: #666;
}

/* Enlace GET DIRECTIONS */
.lodging-card a.blue {
    color: #1c34e5 !important; 
    text-decoration: underline !important; 
    font-family: "Barlow Condensed", sans-serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
}

/* Botón Learn More */
.lodging-card .button_cont {
    flex-shrink: 0;
    width: 230px;
    margin-top: 0 !important; /* 🔥 elimina el espacio extra */
}

/* Botón */
.lodging-card .button_cont a.button {
    display: flex; 
    flex-direction: column;
    justify-content: center;
    width: 100%;
    height: 58px;
    background: linear-gradient(to bottom, #53181F 0%, #53181F 100%);
    color: #fff !important;
    border: 0;
    padding: 5px 25px;
    text-align: left;
    text-transform: uppercase;
    font-family: "Barlow Condensed", sans-serif !important;
    font-size: 17px !important;
    font-weight: 800;
    line-height: 1.1;
    position: relative;
    padding-right: 35px;
    border-radius: 60px;
    transition: transform 0.15s ease;
}

.lodging-card .button_cont a.button:after {
    content: "\203A"; 
    font-size: 26px; 
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: #fff;
    font-weight: 400;
    transition: transform 0.15s ease;
}

.lodging-card .button_cont a.button:hover {
    transform: translateY(2px);
    box-shadow: 0 2px 0 0 #693339;
}

/* --- Responsive tablet --- */
@media (max-width: 768px) {
  .lodging-card {
    padding: 20px;
    flex-direction: row;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
  }

  .lodging-card .image.cover {
    width: 140px;
    height: 140px;
  }

  .lodging-card .text {
    flex-grow: 1;
    min-width: 200px;
  }

  .lodging-card h3 {
    font-size: 22px !important;
  }

  .lodging-card p {
    font-size: 13px;
  }

  .lodging-card a.blue {
    font-size: 15px !important;
  }

  .lodging-card .tags_cont {
    font-size: 14px !important;
    gap: 8px;
    flex-wrap: wrap;
  }

  .lodging-card .button_cont {
    width: 100%;
    max-width: 230px;
    margin-top: 0 !important; /* 🔥 también en tablet */
  }

  .lodging-card .button_cont a.button {
    height: 48px;
    font-size: 16px !important;
    padding: 10px 15px;
    text-align: left;
  }

  .lodging-card .button_cont a.button:after {
    right: 10px;
    font-size: 22px;
  }
}


/* Neutraliza el margen global de .row dentro de las tarjetas de alojamiento */
.elk-posts-list-wrapper .lodging-card .row,
.lodging-card .row,
.lodging-card .tags_cont {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Mantén el ritmo vertical solo donde tú lo defines */
.lodging-card .text > * {
  margin-bottom: 8px; /* tu espaciado normal */
}

.lodging-card .text > *:last-child {
  margin-bottom: 0 !important; /* sin espacio extra antes del botón */
}

/* Por si el tema aplica márgenes adicionales con mayor especificidad */
section[class*=post] .lodging-card .row,
section[class*=post] .lodging-card .tags_cont {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Alinea el botón con el título en desktop */
.lodging-card {
  align-items: flex-start; /* ← cambia de center a top */
}


/* 🔧 Espaciado manual encima del botón */
.lodging-card .button_cont {
  margin-top: 32px !important; /* ajusta este valor según lo que necesites */
}

/* 🔧 Corrige el estilo de la fuente del titulo que no se dejaba ambiar*/
.lodging-card strong {
  font-family: "Barlow Condensed", sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: -0.5px;
  text-transform: uppercase;
}

/* 🔧 Corrige imágenes pequeñas en tarjetas de alojamiento */
.lodging-card .image.cover {
  width: 150px !important;
  height: 150px !important;
  background-size: cover !important;
  background-position: center center !important;
}/* End custom CSS */