/**
 * Exclusive Discounts — Public Stylesheet
 * Coloca el título arriba y el excerpt pegado abajo de cada tarjeta
 */

/* Grid fijo de 4 columnas */
#exclusive-discounts-grid,
.exclusive-discounts-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin: 0;
  padding: 0;
}

/* Responsive */

}

}
@media (max-width: 480px) {
  .exclusive-discounts-grid {
    grid-template-columns: 1fr !important;
  }
}

/* Tarjeta */
.discount-card {
  position: relative;
  background-size: cover !important;
  background-position: center center !important;
  border-radius: 8px;
  overflow: hidden;
  min-height: 250px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  padding:20px;
}

/* Overlay semitransparente */
.discount-mask,
.exclusive-discounts-overlay {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: rgba(0,0,0,0.2);
  z-index: 1;
}

/* Enlace que cubre toda la tarjeta */
.discount-card > a.discount-card-link {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  display: block;
  z-index: 2;
  text-decoration: none;
  color: inherit;
}

/* Contenedor de filtros: flex en fila */
#ed-filters.discount-filters {
  display: flex;
  flex-wrap: wrap;     /* permite saltar línea sólo si no caben */
  align-items: center;
  gap: 10px 20px;
}

/* Select ocupa lo justo, no toda la fila */
#ed-filters #ed-filter-location {
  flex: 0 0 auto;
  width: auto;
  min-width: 200px;    /* ajusta según prefieras */
}

/* Checkbox labels en horizontal */
#ed-filters label {
  display: inline-flex;
  align-items: center;
  margin-right: 15px;
  white-space: nowrap;
}

#ed-filters{
	margin-bottom:20px;
}

/* Contenido: título arriba, excerpt abajo */
.discount-card > a.discount-card-link .discount-content {
  position: relative;
  z-index: 3;
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 20px;
}
.discount-title {
  margin: 0 0 10px;
  font-size: 18px;
  font-weight: 600;
}
/* Empuja el excerpt al fondo de la tarjeta */
.discount-excerpt {
  font-size: 14px;
  line-height: 1.4;
  margin: 0;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2; /* ≈10 palabras */
  overflow: hidden;
  text-overflow: ellipsis;
  margin-top: 20px;
  
}
a.discount-card-link {
    text-decoration: none;
}

/* Hover efecto elevación */
.discount-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}

/* Botón “Explorar” opcional */
.discount-explore-button-container {
  text-align: center;
  margin-top: 40px;
}
.discount-explore-button {
  display: inline-block;
  padding: 12px 24px;
  background-color: #003944;
  color: #fff;
  text-decoration: none;
  border-radius: 30px;
  font-size: 16px;
  font-weight: 500;
  transition: background-color 0.3s ease;
}
.discount-explore-button:hover {
  background-color: #002530;
}


.exclusive-discounts-grid .discount-content{
	display:none!important;
}
/* Otros estilos (loading, single, etc.) siguen igual… */


/* Layout wrapper */
.exclusive-discounts-container{
  display:flex;
  gap:20px;
}
#ed-filters{
  flex:0 0 250px;
}
.exclusive-discounts-grid{
  flex:1 1 auto;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:20px;
}

/* responsive */
@media (max-width:768px){
  .exclusive-discounts-container{
    flex-direction:column;
  }
  #ed-filters{
    order:-1;
    margin-bottom:20px;
    flex:1 1 auto;
  }
  .exclusive-discounts-grid{
    grid-template-columns:repeat(2,1fr);
  }
}


/* ----------  Layout  ----------- */
.exclusive-discounts-container{display:flex;gap:20px}
#ed-filters{flex:0 0 260px}
.exclusive-discounts-grid{flex:1 1 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}

/* móvil: filtros arriba + 2 col */
@media (max-width:768px){
  .exclusive-discounts-container{flex-direction:column}
  #ed-filters{order:-1;margin-bottom:20px;flex:auto}
  .exclusive-discounts-grid{grid-template-columns:repeat(2,1fr)}
}

/* ----------  Tarjeta  ----------- */
.discount-card{
  position:relative;
  background-size:cover!important;
  background-position:center!important;
  border-radius:8px;overflow:hidden;
  min-height:250px;
  transition:transform .3s ease,box-shadow .3s ease;
}

/* capa de color encima de la imagen */
.discount-mask{
  position:absolute;inset:0;
  opacity:.55;
}

/* contenido visible */
.discount-content{
  position:relative;
  z-index:2;
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:20px;
}

.discount-content h3{margin:0;font-size:18px;font-weight:600}
.discount-excerpt{font-size:14px;line-height:1.4;margin-top:6px}


/* -- Bricks builder container fix -- */
.brxe-shortcode .exclusive-discounts-container{
    position:relative;z-index:0;
    display:flex!important;
}

@media(max-width:991px){
    #exclusive-discounts-grid, .exclusive-discounts-grid{
        grid-template-columns: repeat(1,1fr);
    }
}
