.elementor-3657 .elementor-element.elementor-element-a51f256{--display:flex;--min-height:60vh;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--overlay-opacity:0.6;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:120px;--padding-bottom:120px;--padding-left:120px;--padding-right:120px;}.elementor-3657 .elementor-element.elementor-element-a51f256:not(.elementor-motion-effects-element-type-background), .elementor-3657 .elementor-element.elementor-element-a51f256 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-3657 .elementor-element.elementor-element-a51f256::before, .elementor-3657 .elementor-element.elementor-element-a51f256 > .elementor-background-video-container::before, .elementor-3657 .elementor-element.elementor-element-a51f256 > .e-con-inner > .elementor-background-video-container::before, .elementor-3657 .elementor-element.elementor-element-a51f256 > .elementor-background-slideshow::before, .elementor-3657 .elementor-element.elementor-element-a51f256 > .e-con-inner > .elementor-background-slideshow::before, .elementor-3657 .elementor-element.elementor-element-a51f256 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';background-color:#000000;}.elementor-3657 .elementor-element.elementor-element-3f44383{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:5px 5px;--row-gap:5px;--column-gap:5px;}.elementor-3657 .elementor-element.elementor-element-1c300a3{text-align:center;}.elementor-3657 .elementor-element.elementor-element-1c300a3 .elementor-heading-title{font-family:"Proxima Nova", Sans-serif;font-size:3.5rem;font-weight:400;text-transform:uppercase;line-height:1.2em;color:#FFFFFF;}.elementor-3657 .elementor-element.elementor-element-28c8b97{text-align:center;font-family:"Proxima Nova", Sans-serif;font-size:15px;font-weight:400;color:#FFFFFF;}.elementor-3657 .elementor-element.elementor-element-fe03b7f{--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;}.elementor-3657 .elementor-element.elementor-element-8bc0680{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3657 .elementor-element.elementor-element-8bc0680.e-con{--e-con-transform-translateY:-100px;}@media(min-width:768px){.elementor-3657 .elementor-element.elementor-element-3f44383{--width:55%;}}@media(max-width:767px){.elementor-3657 .elementor-element.elementor-element-a51f256{--padding-top:100px;--padding-bottom:100px;--padding-left:20px;--padding-right:20px;}.elementor-3657 .elementor-element.elementor-element-3f44383{--width:100%;}.elementor-3657 .elementor-element.elementor-element-1c300a3 .elementor-heading-title{font-size:2.4rem;}.elementor-3657 .elementor-element.elementor-element-efc2363{padding:0px 0px 0px 0px;}}/* Start custom CSS for html, class: .elementor-element-39fd045 */@media (max-width: 767px) {

  /* contenedor visible */
  #filterTabs {
    width: 100%;
    max-width: 100%;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 8px;
    margin-bottom: 35px;
    max-height: 60px;
    scrollbar-width: thin;
    scrollbar-color: #b89535 #eeeeee !important;
  }

  /* wrapper interno que genera el script */
  #filterTabs > div,
  #filterTabs > ul,
  #filterTabs > .filter-tabs-inner,
  #filterTabs > .tabs-inner {
    display: inline-flex !important;
    flex-wrap: nowrap !important;
    width: max-content !important;
    min-width: max-content !important;
    white-space: nowrap !important;
    gap: 12px;
  }

  /* tabs individuales */
  #filterTabs a,
  #filterTabs button,
  #filterTabs [role="tab"],
  #filterTabs .tab,
  #filterTabs .filter-tab,
  #filterTabs .filter-chip {
    flex: 0 0 auto !important;
    white-space: nowrap !important;
  }

  /* scrollbar Chrome / Safari / Edge */
  #filterTabs::-webkit-scrollbar {
    height: 2px;
  }

  #filterTabs::-webkit-scrollbar-track {
    background: #eeeeee !important;
    border-radius: 0;
  }

  #filterTabs::-webkit-scrollbar-thumb {
    background: #b89535;
    border-radius: 0;
  }

  #filterTabs::-webkit-scrollbar-thumb:hover {
    background: #b8933f;
  }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-5efb3f9 *//* Contenedor de filtros/searchbar */
.hfse-explorer-filters,
.hfse-filters,
.homerunner-explorer-filters {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  box-sizing: border-box;
}

/* Hace que los campos puedan saltar a otra línea */
.hfse-explorer-filters form,
.hfse-filters form,
.homerunner-explorer-filters form {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

/* Cada campo ocupa espacio flexible sin desbordar */
.hfse-explorer-filters form > *,
.hfse-filters form > *,
.homerunner-explorer-filters form > * {
  flex: 1 1 220px;
  min-width: 0;
  max-width: 100%;
  box-sizing: border-box;
}

/* Inputs y selects no se salen del padre */
.hfse-explorer-filters input,
.hfse-explorer-filters select,
.hfse-filters input,
.hfse-filters select,
.homerunner-explorer-filters input,
.homerunner-explorer-filters select {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

/* MOBILE */
@media (max-width: 767px) {
  .hfse-form-primary-fields {
    display: grid !important;
    grid-template-columns: 1.4fr 1.5fr 0.88fr 45px;
    align-items: stretch;
    width: 100%;
    gap: 0;
  }

  .hfse-form-submit-field-container {
    display: none !important;
  }

  /* ===== CORREGIDO: simetría izquierda/derecha ===== */
  /* Antes tenía padding-left:10px sin padding-right, lo que dejaba sin */
  /* compensar el margin-right negativo del tema y desalineaba la barra. */
  .hfse-filters {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
  }
  /* ================================================= */

  .hfse-form-additional-filters-btn svg {
    margin: 0 5px !important;
    padding-right: 2px !important;
  }

  .hfse-form-zone-field-container,
  .hfse-form-date-field-container,
  .hfse-form-guests-field-container,
  .hfse-additional-filters-field-container {
    min-width: 0 !important;
    margin: 0 !important;
    padding: 2px 2px !important;
    min-height: 70px;
    box-sizing: border-box;
    display: flex !important;
    flex-direction: column;
    justify-content: center;
    border: 0 !important;
    box-shadow: none !important;
    position: relative;
  }

  .hfse-additional-filters-field-container .hfse-form-submit-field-label {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .hfse-additional-filters-field-container .field-label {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .hfse-additional-filters-field-container .hfse-form-additional-filters-btn {
    padding: 0 !important;
  }

  /* quitar bordes internos que generan "doble línea" */
  .hfse-form-primary-fields .field-control,
  .hfse-form-primary-fields .hk-input,
  .hfse-form-primary-fields input,
  .hfse-form-primary-fields button {
    border: 0 !important;
    box-shadow: none !important;
    outline: 0 !important;
  }

  .hfse-form-primary-fields .field-label {
    display: block !important;
    width: 100%;
    margin: 0 0 10px 0 !important; /* más espacio entre título y texto */
    padding: 0 !important;
    text-align: center !important;
    font-size: 11px;
    line-height: 1;
    letter-spacing: .14em;
    text-transform: uppercase;
    white-space: nowrap;
  }

  .hfse-form-primary-fields .field-control {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
  }

  /* ocultar iconos internos para centrar de verdad */
  .hfse-form-zone-field-control .hk-form-icon,
  .hfse-form-date-field-control .hk-form-icon,
  .hfse-form-guests-field-control .hk-form-icon {
    display: none !important;
  }

  .hfse-form-primary-fields .hk-input {
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    text-align: center !important;
    font-size: 15px;
    line-height: 1.15;
  }

  .hfse-form-primary-fields .hk-input::placeholder {
    text-align: center !important;
  }

  /* columna del icono */
  .hfse-additional-filters-field-container {
    width: 54px !important;
    min-width: 54px !important;
    max-width: 54px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .hfse-additional-filters-field-container .field-label {
    display: none !important;
  }

  .hfse-form-additional-filters-btn {
    width: 100% !important;
    height: 100% !important;
    min-height: 70px !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
  }

  .hfse-form-additional-filters-btn svg {
    display: block;
    margin: 0 auto;
  }
}

@media (max-width: 767px) {
  .hfse-form-primary-fields .hfse-additional-filters-field-container > label.field-label.hfse-form-submit-field-label {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    visibility: hidden !important;
  }

  .hfse-form-primary-fields .hfse-additional-filters-field-container {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
  }

  .hfse-form-primary-fields .hfse-form-additional-filters-btn {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 70px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

@media (max-width: 767px) {
  .hfse-form-primary-fields .field-label {
    margin-bottom: 12px !important; /* más separación real */
  }

  .hfse-form-primary-fields .field-control {
    margin-top: 12px !important; /* empuja un poco el contenido hacia abajo */
  }
  /* Corrige el espaciado asimétrico de las tarjetas de propiedades */
/* El tema aplica margin-left:-8px (gutter de grid) que no se compensa */
/* en layout de 1 columna y desplaza las tarjetas hacia la izquierda. */
.hfse-properties {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
}

@media (max-width: 767px) {
  .hfse-form-primary-fields > .hfse-form-zone-field-container,
  .hfse-form-primary-fields > .hfse-form-date-field-container,
  .hfse-form-primary-fields > .hfse-form-guests-field-container,
  .hfse-form-primary-fields > .hfse-additional-filters-field-container {
    padding: 2px !important;
  }
}/* End custom CSS */
/* Start custom CSS */.collection-hero-bg::before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: var(--dynamic-bg); /* Inject via inline style or custom field */
  background-size: cover;
  background-position: center;
  z-index: -1;
}/* End custom CSS */