.elementor-3266 .elementor-element.elementor-element-b693ecf{--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-3266 .elementor-element.elementor-element-b693ecf:not(.elementor-motion-effects-element-type-background), .elementor-3266 .elementor-element.elementor-element-b693ecf > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#412818;}.elementor-3266 .elementor-element.elementor-element-afb703b{--spacer-size:102px;}.elementor-3266 .elementor-element.elementor-element-f8dc06a{--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:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3266 .elementor-element.elementor-element-f8dc06a:not(.elementor-motion-effects-element-type-background), .elementor-3266 .elementor-element.elementor-element-f8dc06a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://boladeoro.com.mx/wp-content/uploads/2025/11/Rectangle-1068.png");background-position:center center;background-repeat:repeat;background-size:cover;}.elementor-3266 .elementor-element.elementor-element-f8dc06a.e-con{--align-self:center;}.elementor-3266 .elementor-element.elementor-element-03c0155{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:50px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-3266 .elementor-element.elementor-element-2b181db{--display:flex;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-3266 .elementor-element.elementor-element-a59397d{text-align:start;}.elementor-3266 .elementor-element.elementor-element-a59397d img{width:50%;}.elementor-3266 .elementor-element.elementor-element-71c7c3a > .elementor-widget-container{margin:0px 0px 0px 0px;padding:26px 0px 30px 0px;}.elementor-3266 .elementor-element.elementor-element-b19d1ac{--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:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3266 .elementor-element.elementor-element-ff83086{width:100%;max-width:100%;}.elementor-3266 .elementor-element.elementor-element-ff83086 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-3266 .elementor-element.elementor-element-4ee7e1c{--display:flex;--min-height:601px;--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:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.9;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3266 .elementor-element.elementor-element-4ee7e1c::before, .elementor-3266 .elementor-element.elementor-element-4ee7e1c > .elementor-background-video-container::before, .elementor-3266 .elementor-element.elementor-element-4ee7e1c > .e-con-inner > .elementor-background-video-container::before, .elementor-3266 .elementor-element.elementor-element-4ee7e1c > .elementor-background-slideshow::before, .elementor-3266 .elementor-element.elementor-element-4ee7e1c > .e-con-inner > .elementor-background-slideshow::before, .elementor-3266 .elementor-element.elementor-element-4ee7e1c > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#E9DFD0;--background-overlay:'';}.elementor-3266 .elementor-element.elementor-element-599398c{--display:flex;}.elementor-3266 .elementor-element.elementor-element-e9e47cb{--display:flex;}.elementor-3266 .elementor-element.elementor-element-00241d2{width:100%;max-width:100%;text-align:center;}.elementor-3266 .elementor-element.elementor-element-00241d2 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-3266 .elementor-element.elementor-element-00241d2.elementor-element{--align-self:center;}.elementor-3266 .elementor-element.elementor-element-00241d2 img{width:30%;}.elementor-3266 .elementor-element.elementor-element-0e2a48f{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:50px 50px;--row-gap:50px;--column-gap:50px;}.elementor-3266 .elementor-element.elementor-element-6145b44{--display:grid;--e-con-grid-template-columns:repeat(2, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--gap:0px 50px;--row-gap:0px;--column-gap:50px;--grid-auto-flow:row;--justify-items:center;--align-items:center;}.elementor-3266 .elementor-element.elementor-element-ae969f9{width:100%;max-width:100%;text-align:end;}.elementor-3266 .elementor-element.elementor-element-ae969f9 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-3266 .elementor-element.elementor-element-ae969f9.elementor-element{--align-self:center;}.elementor-3266 .elementor-element.elementor-element-ae969f9 img{width:55%;}.elementor-3266 .elementor-element.elementor-element-e35fc40{width:100%;max-width:100%;text-align:start;}.elementor-3266 .elementor-element.elementor-element-e35fc40 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-3266 .elementor-element.elementor-element-e35fc40.elementor-element{--align-self:center;}.elementor-3266 .elementor-element.elementor-element-e35fc40 img{width:55%;}@media(max-width:1024px){.elementor-3266 .elementor-element.elementor-element-4ee7e1c{--min-height:474px;}.elementor-3266 .elementor-element.elementor-element-6145b44{--grid-auto-flow:row;}.elementor-3266 .elementor-element.elementor-element-e35fc40{text-align:start;}}@media(min-width:768px){.elementor-3266 .elementor-element.elementor-element-f8dc06a{--width:100%;}.elementor-3266 .elementor-element.elementor-element-03c0155{--content-width:92%;}.elementor-3266 .elementor-element.elementor-element-0e2a48f{--content-width:1009px;}}@media(max-width:767px){.elementor-3266 .elementor-element.elementor-element-a59397d img{width:86%;}.elementor-3266 .elementor-element.elementor-element-4ee7e1c{--min-height:363px;}.elementor-3266 .elementor-element.elementor-element-00241d2 img{width:61%;}.elementor-3266 .elementor-element.elementor-element-6145b44{--width:100%;--e-con-grid-template-columns:repeat(2, 1fr);--gap:0px 0px;--row-gap:0px;--column-gap:0px;--grid-auto-flow:row;}.elementor-3266 .elementor-element.elementor-element-ae969f9{text-align:center;}.elementor-3266 .elementor-element.elementor-element-ae969f9 img{width:89%;}.elementor-3266 .elementor-element.elementor-element-e35fc40{text-align:center;}.elementor-3266 .elementor-element.elementor-element-e35fc40 img{width:89%;}}/* Start custom CSS for shortcode, class: .elementor-element-71c7c3a *//* =========================================================
   CAFETERÍAS – FIX DEFINITIVO LISTADO VS MAPA
   Página ID: 3266
   ========================================================= */

/* El wrapper general ya es grid (no lo tocamos) */

/* Altura maestra del mapa */
body.page-id-3266 #map {
  height: 600px;
  max-height: 600px;
  border-radius: 32px;
  overflow: hidden;
}

/* Columna izquierda: NO debe crecer */
body.page-id-3266 #cafeterias-wrapper > div:first-child {
  max-height: 600px;
  overflow: hidden;
}

/* LISTADO: aquí está el fix real */
body.page-id-3266 #cafeterias-list {
  max-height: 520px; /* deja espacio para buscador + select */
  overflow-y: auto;
  padding-right: 8px;
  box-sizing: border-box;
}

/* Scroll discreto */
body.page-id-3266 #cafeterias-list::-webkit-scrollbar {
  width: 6px;
}

body.page-id-3266 #cafeterias-list::-webkit-scrollbar-thumb {
  background: rgba(176, 139, 90, 0.5);
  border-radius: 4px;
}

body.page-id-3266 #cafeterias-list > div.is-active {
  background: rgba(176, 139, 90, 0.25);
  box-shadow: inset 4px 0 0 #b08b5a;
  border-radius: 2px;
}

body.page-id-3266 #cafeterias-wrapper {
  gap: 32px;
}

body.page-id-3266 #cafeterias-list > div {
  padding: 1px 16px;
  margin-bottom: 10px;
}

@media (max-width: 768px) {
  body.page-id-3266 #cafeterias-wrapper {
    display: block;
  }

  body.page-id-3266 #cafeterias-list {
    max-height: none;
    overflow: visible;
  }

  body.page-id-3266 #map {
    height: 400px;
    margin-top: 24px;
  }
}

body.page-id-3266 .cafeterias-categorias {
  margin-top: 24px;
}

body.page-id-3266 .cafeterias-categorias h4 {
  font-size: 13px;
  text-transform: uppercase;
  margin-bottom: 12px;
}

body.page-id-3266 .cafeterias-categorias label {
  display: block;
  margin-bottom: 8px;
  font-size: 14px;
  cursor: pointer;
}

.cafeterias-section {
  margin-bottom: 16px;
}

.cafeterias-toggle {
  width: 100%;
  background: #e8dccb;
  border: none;
  padding: 10px 14px;
  font-weight: 600;
  text-align: left;
  cursor: pointer;
  border-radius: 8px;
}

.cafeterias-content {
  margin-top: 8px;
  padding-left: 4px;
}

.cafeterias-content label {
  display: block;
  font-size: 14px;
  margin-bottom: 6px;
}

.cafeteria-item {
  padding: 8px 0;
  border-bottom: 1px solid #eee;
  cursor: pointer;
}

.cafeteria-item:hover {
  background: #faf6f0;
}

/* Select de estados – mejora visual */
#cafeterias-state {
  width: 100%;
  padding: 12px 14px;
  font-size: 14px;
  line-height: 1.4;
  border-radius: 999px;
  border: none;
  background-color: #e8dccb;
  color: #333;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
}

/* Flecha personalizada */
#cafeterias-state {
  background-image: url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23666' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  background-size: 10px 6px;
  padding-right: 40px;
}

/* Hover / focus */
#cafeterias-state:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(150, 120, 80, 0.25);
}

#cafeterias-wrapper #cafeterias-map {
  height: 700px !important;
  min-height: 700px !important;
}

#cafeterias-wrapper #cafeterias-list {
  max-height: 520px;
  overflow-y: auto;
  padding-right: 10px;
}

#cafeterias-wrapper > div:first-child {
  min-height: 700px;
}

#cafeterias-list .cafeteria-item {
  padding: 8px 10px;
  margin-bottom: 6px;
  line-height: 1.3;
}

/* ================================
   MOBILE UX – MAPA ABAJO
   ================================ */
@media (max-width: 768px) {

  #cafeterias-wrapper {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px;
  }

  /* PANEL IZQUIERDO (FILTROS + LISTADO) ARRIBA */
  #cafeterias-wrapper > div:first-child {
    order: 1;
  }

  /* MAPA ABAJO */
  #cafeterias-map {
    order: 2;
    height: 360px !important;
    min-height: 360px !important;
    margin-top: 16px;
  }

  /* LISTADO FLUIDO EN MÓVIL */
  #cafeterias-list {
    max-height: none !important;
    overflow: visible !important;
  }

  /* CONTROLES MÁS CÓMODOS PARA TOUCH */
  #cafeterias-search,
  #cafeterias-state,
  .cafeterias-toggle {
    font-size: 16px;
    padding: 14px 16px;
  }
}/* End custom CSS */