.elementor-4048 .elementor-element.elementor-element-8a46453{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:flex-start;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-4048 .elementor-element.elementor-element-f9ded7f{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;}.elementor-4048 .elementor-element.elementor-element-c096ad0{--display:flex;--margin-top:150px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:25px;--padding-bottom:25px;--padding-left:25px;--padding-right:25px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-4048 .elementor-element.elementor-element-bbeb8c2{margin:000px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-4048 .elementor-element.elementor-element-bbeb8c2 .elementor-heading-title{font-family:"Arial", Sans-serif;font-size:41px;font-weight:600;color:#070707;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-4048 .elementor-element.elementor-element-bf7e157{width:var( --container-widget-width, 100% );max-width:100%;padding:0px 0px 080px 0px;--container-widget-width:100%;--container-widget-flex-grow:0;columns:1;font-family:"Arial", Sans-serif;font-size:13px;font-weight:400;}.elementor-4048 .elementor-element.elementor-element-bf7e157 p{margin-block-end:0px;}.elementor-4048 .elementor-element.elementor-element-0410b42{--display:flex;--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;}.elementor-4048 .elementor-element.elementor-element-dcb4302{--display:flex;--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;}.elementor-4048 .elementor-element.elementor-element-e084ca0{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0100px;}.elementor-4048 .elementor-element.elementor-element-57d9537c{--display:flex;--min-height:52vh;--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-4048 .elementor-element.elementor-element-57d9537c .container--bg .cont--bg--wrap img{object-position:center;}.elementor-4048 .elementor-element.elementor-element-2eb845f2{width:var( --container-widget-width, 35% );max-width:35%;margin:0100px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:35%;--container-widget-flex-grow:0;}.elementor-4048 .elementor-element.elementor-element-2eb845f2 .elementor-heading-title{font-family:"Arial", Sans-serif;font-size:26px;font-weight:600;letter-spacing:0.5px;color:#FFFFFF;}.elementor-4048 .elementor-element.elementor-element-3871a90{width:var( --container-widget-width, 30% );max-width:30%;--container-widget-width:30%;--container-widget-flex-grow:0;}.elementor-4048 .elementor-element.elementor-element-6855265{--display:flex;}@media(max-width:767px){.elementor-4048 .elementor-element.elementor-element-f9ded7f{--min-height:20vh;}.elementor-4048 .elementor-element.elementor-element-c096ad0{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-4048 .elementor-element.elementor-element-0410b42{--min-height:20vh;}.elementor-4048 .elementor-element.elementor-element-dcb4302{--min-height:20vh;}.elementor-4048 .elementor-element.elementor-element-e084ca0{--min-height:20vh;}}@media(min-width:768px){.elementor-4048 .elementor-element.elementor-element-f9ded7f{--width:100%;}.elementor-4048 .elementor-element.elementor-element-c096ad0{--width:100%;}.elementor-4048 .elementor-element.elementor-element-0410b42{--width:100%;}.elementor-4048 .elementor-element.elementor-element-dcb4302{--width:100%;}.elementor-4048 .elementor-element.elementor-element-e084ca0{--width:100%;}}/* Start custom CSS for html, class: .elementor-element-0a5af76 *//* =========================
   CONTENEDOR PRINCIPAL
   ========================= */
.elementor-4048 .elementor-element.elementor-element-0410b42{
  --display: flex;
  --flex-direction: row;
  --justify-content: flex-start;
  --align-items: stretch !important;
  --gap: 24px;
  --row-gap: 24px;
  --column-gap: 24px;
}

/* =========================
   COLUMNA IZQUIERDA: MAPA
   ========================= */
.elementor-4048 .elementor-element.elementor-element-dcb4302{
  flex: 0 0 65%;
  max-width: 65%;
  min-width: 0;
  align-self: stretch;
}

.elementor-4048 .elementor-element.elementor-element-cb26975,
.elementor-4048 .elementor-element.elementor-element-cb26975 .elementor-widget-container{
  width: 100% !important;
  max-width: 100%;
}

/* iframe mapa */
#mapa-tiendas{
  width: 100% !important;
  height: 650px;
  display: block;
  border: 0;
  border-radius: 18px;
  overflow: hidden;
}

/* =========================
   COLUMNA DERECHA: TARJETAS
   ========================= */
.elementor-4048 .elementor-element.elementor-element-e084ca0{
  flex: 0 0 35%;
  max-width: 35%;
  min-width: 0;
  align-self: stretch;
}

.elementor-4048 .elementor-element.elementor-element-0a5af76,
.elementor-4048 .elementor-element.elementor-element-0a5af76 .elementor-widget-container{
  width: 100% !important;
  max-width: 100%;
}

/* wrapper tarjetas */
.tiendas-wrapper{
  display: flex;
  flex-direction: column;
  gap: 25px;
  width: 100%;
}

/* tarjeta base */
.tienda{
  width: 100%;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: space-between;

  min-height: 160px;
  padding: 28px 30px;
  border-radius: 22px;

  background: #fff;
  border: 1px solid #eee;
  box-shadow: 0 5px 20px rgba(0,0,0,0.05);

  cursor: pointer;
  transition: all 0.3s ease;
}

/* hover */
.tienda:hover{
  background: #f7f7f7;
  transform: translateY(-2px);
}

/* activa */
.tienda.active{
  background: #000;
  color: #fff;
  box-shadow: 0 12px 30px rgba(0,0,0,0.22);
}

/* textos */
.tienda h4{
  font-size: 20px;
  line-height: 1.2;
  margin: 0 0 10px;
  font-weight: 600;
}

.tienda p{
  font-size: 14px;
  line-height: 1.45;
  margin: 0 0 18px;
  opacity: 0.8;
}

/* botón teléfono */
.telefono{
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 16px;
  border-radius: 999px;
  border: 1px solid #ccc;
  font-size: 13px;
  line-height: 1;
  transition: all 0.3s ease;
}

.tienda.active .telefono{
  border-color: #fff;
  color: #fff;
}

/* click */
.tienda:active{
  transform: scale(0.985);
}

/* =========================
   TABLET / MÓVIL
   ========================= */
@media (max-width: 1024px){
  .elementor-4048 .elementor-element.elementor-element-0410b42{
    --flex-direction: column;
  }

  .elementor-4048 .elementor-element.elementor-element-dcb4302,
  .elementor-4048 .elementor-element.elementor-element-e084ca0{
    flex: 0 0 100%;
    max-width: 100%;
  }

  #mapa-tiendas{
    height: 420px;
  }
}

/* texto visible en tarjetas NO activas */
.tienda:not(.active) h4{
  color: #111;
  font-weight: 700;
}

.tienda:not(.active) p{
  color: #555;
  font-weight: 500;
  opacity: 1;
}

.tienda:not(.active) .telefono{
  color: #222;
  border-color: #bdbdbd;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fd68b31 *//* =========================
   CONTENEDOR PRINCIPAL
   ========================= */
.elementor-4048 .elementor-element.elementor-element-0410b42{
  --display: flex;
  --flex-direction: row;
  --justify-content: flex-start;
  --align-items: stretch !important;
  --gap: 24px;
  --row-gap: 24px;
  --column-gap: 24px;
}

/* =========================
   COLUMNA IZQUIERDA: MAPA
   ========================= */
.elementor-4048 .elementor-element.elementor-element-dcb4302{
  flex: 0 0 65%;
  max-width: 65%;
  min-width: 0;
  align-self: stretch;
}

.elementor-4048 .elementor-element.elementor-element-cb26975,
.elementor-4048 .elementor-element.elementor-element-cb26975 .elementor-widget-container{
  width: 100% !important;
  max-width: 100%;
}

/* iframe mapa */
#mapa-tiendas{
  width: 100% !important;
  height: 650px;
  display: block;
  border: 0;
  border-radius: 18px;
  overflow: hidden;
}

/* =========================
   COLUMNA DERECHA: TARJETAS
   ========================= */
.elementor-4048 .elementor-element.elementor-element-e084ca0{
  flex: 0 0 35%;
  max-width: 35%;
  min-width: 0;
  align-self: stretch;
}

.elementor-4048 .elementor-element.elementor-element-0a5af76,
.elementor-4048 .elementor-element.elementor-element-0a5af76 .elementor-widget-container{
  width: 100% !important;
  max-width: 100%;
}

/* wrapper tarjetas */
.tiendas-wrapper{
  display: flex;
  flex-direction: column;
  gap: 25px;
  width: 100%;
}

/* tarjeta base */
.tienda{
  width: 100%;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  justify-content: space-between;

  min-height: 160px;
  padding: 28px 30px;
  border-radius: 22px;

  background: #fff;
  border: 1px solid #eee;
  box-shadow: 0 5px 20px rgba(0,0,0,0.05);

  cursor: pointer;
  transition: all 0.3s ease;
}

/* hover */
.tienda:hover{
  background: #f7f7f7;
  transform: translateY(-2px);
}

/* activa */
.tienda.active{
  background: #000;
  color: #fff;
  box-shadow: 0 12px 30px rgba(0,0,0,0.22);
}

/* textos */
.tienda h4{
  font-size: 20px;
  line-height: 1.2;
  margin: 0 0 10px;
  font-weight: 600;
}

.tienda p{
  font-size: 14px;
  line-height: 1.45;
  margin: 0 0 18px;
  opacity: 0.8;
}

/* botón teléfono */
.telefono{
  align-self: flex-start;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 16px;
  border-radius: 999px;
  border: 1px solid #ccc;
  font-size: 13px;
  line-height: 1;
  transition: all 0.3s ease;
}

.tienda.active .telefono{
  border-color: #fff;
  color: #fff;
}

/* click */
.tienda:active{
  transform: scale(0.985);
}

/* =========================
   TABLET / MÓVIL
   ========================= */
@media (max-width: 1024px){
  .elementor-4048 .elementor-element.elementor-element-0410b42{
    --flex-direction: column;
  }

  .elementor-4048 .elementor-element.elementor-element-dcb4302,
  .elementor-4048 .elementor-element.elementor-element-e084ca0{
    flex: 0 0 100%;
    max-width: 100%;
  }

  #mapa-tiendas{
    height: 420px;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-0410b42 *//* contenedor padre */
.elementor-4048 .elementor-element.elementor-element-0410b42{
  --justify-content: flex-start;
  --align-items: stretch;
}

/* columna izquierda: mapa */
.elementor-4048 .elementor-element.elementor-element-dcb4302{
  flex: 0 0 65%;
  max-width: 65%;
  min-width: 0;
}

/* columna derecha: tarjetas */
.elementor-4048 .elementor-element.elementor-element-e084ca0{
  flex: 0 0 35%;
  max-width: 35%;
  min-width: 0;
}

/* widget html y mapa */
.elementor-4048 .elementor-element.elementor-element-cb26975,
.elementor-4048 .elementor-element.elementor-element-cb26975 .elementor-widget-container{
  width: 100%;
}

#mapa-tiendas{
  width: 100% !important;
  height: 650px;
  display: block;
  border: 0;
  border-radius: 12px;
}

/* tarjetas */
.tiendas-wrapper{
  width: 100%;
}

.tienda{
  width: 100%;
  box-sizing: border-box;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-8a46453 */.page-id-4048 .elementor-element.elementor-element-14d8add {
    --mainColor: #111111 !important;
}

.elementor-4048 .elementor-element.elementor-element-8a46453 {
    --padding-top: 0px;
    --padding-right: 0px;
    --padding-bottom: 0px;
    --padding-left: 0px;
    --gap: 0px;
    --row-gap: 0px;
    --column-gap: 0px;
    padding: 0 !important;
    margin: 0 !important;
    align-items: stretch;
}

/* Los dos contenedores hijos: texto e imagen */
.elementor-4048 .elementor-element.elementor-element-8a46453 > .e-con {
    --padding-top: 0px;
    --padding-right: 0px;
    --padding-bottom: 0px;
    --padding-left: 0px;
    padding: 0 !important;
    margin: 0 !important;
}

/* Contenedor izquierdo: texto */
.elementor-4048 .elementor-element.elementor-element-8a46453 > .elementor-element-b9e435b {
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 60px 60px 60px 60px !important;
}

/* Quitar márgenes raros del título y texto */
.elementor-4048 .elementor-element.elementor-element-8a46453 .elementor-element-df8cd6f,
.elementor-4048 .elementor-element.elementor-element-8a46453 .elementor-element-7e7301d,
.elementor-4048 .elementor-element.elementor-element-8a46453 .elementor-element-df8cd6f .elementor-heading-title,
.elementor-4048 .elementor-element.elementor-element-8a46453 .elementor-element-7e7301d p {
    margin-top: 0 !important;
}

/* Contenedor derecho: imagen */
.elementor-4048 .elementor-element.elementor-element-8a46453 > .elementor-element-4084016 {
    display: flex;
    padding: 0 !important;
    margin: 0 !important;
    height: auto;
}

/* El widget de imagen debe ocupar todo el alto */
.elementor-4048 .elementor-element.elementor-element-8a46453 .elementor-element-90ff375,
.elementor-4048 .elementor-element.elementor-element-8a46453 .elementor-element-90ff375 .elementor-widget-container,
.elementor-4048 .elementor-element.elementor-element-8a46453 .elementor-element-90ff375 .single-image,
.elementor-4048 .elementor-element.elementor-element-8a46453 .elementor-element-90ff375 img {
    height: 100%;
}

/* Imagen bien ajustada */
.elementor-4048 .elementor-element.elementor-element-8a46453 .elementor-element-90ff375 img {
    width: 100%;
    display: block;
    object-fit: cover;
}/* End custom CSS */