/* =========================
   BASE
========================= */

body {
  margin: 0;
  background: #f6f6f6;
}

#ebaristo-app {
  max-width: 1200px;
  margin: auto;
  padding: 20px;
  font-family: 'Poppins', sans-serif;
}

/* TOPBAR */

.eb-topbar {
  position: sticky;
  top: 0;
  background: #ffffff;
  z-index: 10;
  padding: 20px;
  margin-bottom: 25px;
  border-radius: 18px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.06);
}


.eb-topbar h2{
font-size: 15px;
margin: 0px;
}



#eb-search {
  width: 100%;
  padding: 14px 18px;
  border-radius: 14px;
  border: 1px solid #e6e6e6;
  font-size: 16px;
  transition: all 0.25s ease;
  background: #fafafa;
  box-sizing: border-box;
}

#eb-search:focus {
  outline: none;
  border-color: #3c759c;
  background: #fff;
  box-shadow: 0 0 0 4px rgba(53,106,210,0.08);
}

.eb-filters {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 14px;
}

.eb-filters button {
  padding: 8px 16px;
  border-radius: 999px;
  border: none;
  background: #f2f2f2;
  color: #555;
  font-size: 13px;
  cursor: pointer;
}

.eb-active {
  background: #3C759C !important;
  color: #fff !important;
}

#eb-filter-select {
  display: block;
  width: 100%;
  padding: 10px;
  border-radius: 8px;
  margin-top: 10px;
  margin-bottom: 10px;
}

#eb-count {
  font-size: 13px;
  margin-top: 12px;
  margin-bottom: 0px;
  color: #888;
}

.eb-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.eb-card {
  background: #fff;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 5px 15px rgba(0,0,0,0.08);
  display: flex;
  flex-direction: column;
  position: relative;
  transition: all 0.25s ease;
}

.eb-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 10px 25px rgba(0,0,0,0.12);
}

.eb-card img {
  width: 100%;
  height: 160px;
  object-fit: cover;
}

.eb-content {
  padding: 15px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding-bottom: 60px;
}

.eb-content h3 {
  margin: 0 0 8px;
  font-size: 15px;
  font-weight: 600;
  color: #222;
}

.eb-item {
  font-size: 14px;
  color: #555;
  display: flex;
  align-items: flex-start;
  gap: 6px;
  line-height: 1.6;
}

.eb-icon svg {
  width: 14px;
  height: 14px;
  stroke: #c96a2c;
  fill: none;
  stroke-width: 2;
  margin-top: 2px;
}


.eb-item a,
.eb-item a:visited,
.eb-item a:hover,
.eb-item a:active {
  text-decoration: none;
  color: #c96a2c;
}

.eb-province {
  position: absolute;
  bottom: 16px;
  left: 12px;
  padding: 4px 10px;
  font-size: 11px;
  border-radius: 999px;
  font-weight: 500;
}

/* =========================
   BADGES PROVINCIAS ESPAÑA
========================= */

.eb-province[data-prov="Álava"],
.eb-province[data-prov="Alava"] {
  background: #e8f0ff;
  color: #356ad2;
}

.eb-province[data-prov="Albacete"] {
  background: #ffe8dc;
  color: #cc6a2f;
}

.eb-province[data-prov="Alicante"] {
  background: #dce8ff;
  color: #3b6edc;
}

.eb-province[data-prov="Almería"] {
  background: #e4f8ec;
  color: #2d9c63;
}

.eb-province[data-prov="Asturias"] {
  background: #efe7ff;
  color: #7b4fd6;
}

.eb-province[data-prov="Ávila"],
.eb-province[data-prov="Avila"] {
  background: #fff0d9;
  color: #c98b1d;
}

.eb-province[data-prov="Badajoz"] {
  background: #e4f3ff;
  color: #3379c9;
}

.eb-province[data-prov="Barcelona"] {
  background: #ffe5ec;
  color: #cf4f73;
}

.eb-province[data-prov="Burgos"] {
  background: #edf7e7;
  color: #4c9b39;
}

.eb-province[data-prov="Cáceres"],
.eb-province[data-prov="Caceres"] {
  background: #f4e6ff;
  color: #8b52d1;
}

.eb-province[data-prov="Cádiz"],
.eb-province[data-prov="Cadiz"] {
  background: #fff2d9;
  color: #c78d17;
}

.eb-province[data-prov="Cantabria"] {
  background: #e6f6ff;
  color: #2f89c9;
}

.eb-province[data-prov="Castellón"],
.eb-province[data-prov="Castellon"] {
  background: #e2f4e8;
  color: #2e9d57;
}

.eb-province[data-prov="Ciudad Real"] {
  background: #ffe7e1;
  color: #d45d42;
}

.eb-province[data-prov="Córdoba"],
.eb-province[data-prov="Cordoba"] {
  background: #e7efff;
  color: #456fcb;
}

.eb-province[data-prov="Cuenca"] {
  background: #f6eadf;
  color: #b77433;
}

.eb-province[data-prov="Girona"] {
  background: #e6fff5;
  color: #1d9b73;
}

.eb-province[data-prov="Granada"] {
  background: #f0e5ff;
  color: #8651d4;
}

.eb-province[data-prov="Guadalajara"] {
  background: #fff4dd;
  color: #c89118;
}


.eb-province[data-prov="Guipuzkoa"] {
  background: #e5f2ff;
  color: #3774c9;
}

.eb-province[data-prov="Huelva"] {
  background: #ffe8ef;
  color: #d14c7d;
}

.eb-province[data-prov="Huesca"] {
  background: #edf9e8;
  color: #4b9c3f;
}

.eb-province[data-prov="Illes Balears"] {
  background: #f4e8ff;
  color: #8b4fd6;
}

.eb-province[data-prov="Jaén"],
.eb-province[data-prov="Jaen"] {
  background: #fff1d9;
  color: #c68814;
}

.eb-province[data-prov="La Coruña"],
.eb-province[data-prov="A Coruña"] {
  background: #e7f6ff;
  color: #2d86c7;
}

.eb-province[data-prov="La Rioja"] {
  background: #ffe8dd;
  color: #cb6731;
}

.eb-province[data-prov="Las Palmas"] {
  background: #e8fff2;
  color: #23986c;
}

.eb-province[data-prov="León"],
.eb-province[data-prov="Leon"] {
  background: #f2e7ff;
  color: #824fd0;
}

.eb-province[data-prov="Lleida"] {
  background: #fff3dc;
  color: #c78c19;
}

.eb-province[data-prov="Lugo"] {
  background: #e5f1ff;
  color: #3a73ca;
}

.eb-province[data-prov="Madrid"] {
  background: #ffe5e5;
  color: #cf4d4d;
}

.eb-province[data-prov="Málaga"],
.eb-province[data-prov="Malaga"] {
  background: #e5fff4;
  color: #21986a;
}

.eb-province[data-prov="Murcia"] {
  background: #f3e8ff;
  color: #864fd3;
}

.eb-province[data-prov="Navarra"] {
  background: #fff2da;
  color: #c78b17;
}

.eb-province[data-prov="Ourense"] {
  background: #e8f6ff;
  color: #337fc7;
}

.eb-province[data-prov="Palencia"] {
  background: #ffe9de;
  color: #cb6b35;
}

.eb-province[data-prov="Pontevedra"] {
  background: #e7fff1;
  color: #25996b;
}

.eb-province[data-prov="Salamanca"] {
  background: #f0e6ff;
  color: #844fd0;
}

.eb-province[data-prov="Santa Cruz de Tenerife"] {
  background: #fff3dc;
  color: #c68d1a;
}

.eb-province[data-prov="Segovia"] {
  background: #e7f2ff;
  color: #3a74ca;
}

.eb-province[data-prov="Sevilla"] {
  background: #fde7d9;
  color: #c96a2c;
}

.eb-province[data-prov="Soria"] {
  background: #e5fff3;
  color: #21976a;
}

.eb-province[data-prov="Tarragona"] {
  background: #f3e7ff;
  color: #874fd4;
}

.eb-province[data-prov="Teruel"] {
  background: #fff2d9;
  color: #c88a16;
}

.eb-province[data-prov="Toledo"] {
  background: #e8f4ff;
  color: #337bc9;
}

.eb-province[data-prov="Valencia"] {
  background: #fde7d9;
  color: #c96a2c;
}

.eb-province[data-prov="Valladolid"] {
  background: #ffe7e0;
  color: #d05d42;
}

.eb-province[data-prov="Vizcaya"] {
  background: #e5fff0;
  color: #259968;
}

.eb-province[data-prov="Zamora"] {
  background: #f2e8ff;
  color: #844fd2;
}

.eb-province[data-prov="Zaragoza"] {
  background: #fff1d8;
  color: #c88a14;
}

.eb-province[data-prov="Araba"] {
  background: #e7f4ff;
  color: #3579c9;
}

.eb-province[data-prov="Bizkaia"] {
   background: #fff2d9;
  color: #c88a16;
}

.eb-province[data-prov="Gipuzkoa"] {
  background: #ffe7e0;
  color: #d05d42;
}

@media(max-width: 900px) {
  .eb-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media(max-width: 600px) {

  .eb-grid {
    grid-template-columns: 1fr;
  }

  .eb-filters {
    display: none;
  }

  #eb-filter-select {
    display: block;
  }

}

/* ==================================
   TARJETA DESTACADA
================================== */

.eb-featured {
  border: 4px solid #3c759c;
  transform: translateY(-3px);
}

/* Etiqueta destacada */

.eb-featured::before {
  content: "RECOMENDADA";
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 5;

  background: #3c759c;
  color: #fff;

  font-size: 10px;
  font-weight: 700;
  letter-spacing: .5px;
  text-transform: uppercase;

  padding: 5px 10px;
  border-radius: 999px;
  border: 2px solid #ffffff;

  box-shadow: 0 4px 10px rgba(0,0,0,0.15);
}


/* =========================
   LIGHTBOX
========================= */

#eb-lightbox {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 9999;

  background: rgba(0,0,0,.85);

  justify-content: center;
  align-items: center;

  padding: 30px;
  box-sizing: border-box;
}

#eb-lightbox.active {
  display: flex;
}

#eb-lightbox-img {
  max-width: 90vw;
  max-height: 90vh;

  border-radius: 12px;
  box-shadow: 0 20px 60px rgba(0,0,0,.4);
}

#eb-lightbox-close {
  position: absolute;
  top: 20px;
  right: 30px;

  color: white;
  font-size: 42px;
  cursor: pointer;

  line-height: 1;
}




#ebaristo-app .eb-card img,
#ebaristo-app .eb-card img.elementor-animation-none {
    width: 100% !important;
    height: 160px !important;
    min-height: 160px !important;
    max-height: 160px !important;
    object-fit: cover !important;
    display: block;
}


#ebaristo-app .eb-card{
    overflow:hidden;
}


/* =========================
   cambios para que las tarjetas sean clicables en la busqueda
========================= */ 
.eb-card-link{
    text-decoration:none;
    color:inherit;
    display:block;
}

.eb-card-link:hover{
    text-decoration:none;
    color:inherit;
}

.eb-card-link .eb-card{
    transition:transform .2s ease, box-shadow .2s ease;
}

.eb-card-link:hover .eb-card{
    transform:translateY(-4px);
    box-shadow:0 10px 30px rgba(0,0,0,.12);
}



/* Dirección y teléfono */
.eb-item a{
    color: inherit;
    text-decoration: none;
}

.eb-item a:hover,
.eb-item a:visited,
.eb-item a:active{
    color: inherit;
    text-decoration: none;
}

/* Webs */
.eb-item a.eb-web-link,
.eb-item a.eb-web-link:hover,
.eb-item a.eb-web-link:visited,
.eb-item a.eb-web-link:active{
    color: rgb(201, 106, 44) !important;
    text-decoration: none !important;
}