.elementor-2617 .elementor-element.elementor-element-d370532{--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:24px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-2617 .elementor-element.elementor-element-ce374ba .woocommerce-breadcrumb{color:var( --e-global-color-4e68f59 );}.elementor-2617 .elementor-element.elementor-element-ce374ba .woocommerce-breadcrumb > a{color:var( --e-global-color-text );}.elementor-2617 .elementor-element.elementor-element-317aac8{--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-widget-theme-post-title .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );font-style:var( --e-global-typography-primary-font-style );color:var( --e-global-color-primary );}.elementor-2617 .elementor-element.elementor-element-c3e1d9c .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );font-style:var( --e-global-typography-primary-font-style );color:var( --e-global-color-text );}.elementor-2617 .elementor-element.elementor-element-5982760{--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-2617 .elementor-element.elementor-element-92eab6e{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:20px 20px 20px 20px;--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-2617 .elementor-element.elementor-element-92eab6e:not(.elementor-motion-effects-element-type-background), .elementor-2617 .elementor-element.elementor-element-92eab6e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-2617 .elementor-element.elementor-element-8482272{--display:flex;}.elementor-2617 .elementor-element.elementor-element-99652d4{border-radius:10px 10px 10px 10px;}.elementor-2617 .elementor-element.elementor-element-4dc8032{--display:flex;}.elementor-2617 .elementor-element.elementor-element-1586423{border-radius:10px 10px 10px 10px;}.elementor-2617 .elementor-element.elementor-element-fd1e105{--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-2617 .elementor-element.elementor-element-6d3c6f6{--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;--border-radius:20px 20px 20px 20px;--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-2617 .elementor-element.elementor-element-b722b1b{--display:flex;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-2617 .elementor-element.elementor-element-2f2dc57{border-radius:10px 10px 10px 10px;}@media(min-width:768px){.elementor-2617 .elementor-element.elementor-element-d370532{--content-width:1600px;}.elementor-2617 .elementor-element.elementor-element-317aac8{--content-width:1600px;}.elementor-2617 .elementor-element.elementor-element-5982760{--content-width:1600px;}.elementor-2617 .elementor-element.elementor-element-8482272{--width:400px;}.elementor-2617 .elementor-element.elementor-element-fd1e105{--content-width:1600px;}}@media(max-width:1024px){.elementor-widget-theme-post-title .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-2617 .elementor-element.elementor-element-c3e1d9c .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}@media(max-width:767px){.elementor-widget-theme-post-title .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-2617 .elementor-element.elementor-element-c3e1d9c .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}/* Start custom CSS for shortcode, class: .elementor-element-99652d4 *//* ==== BODO: фильтр городов ==== */
:root{
  --bodo-filter-bg:#f3f4f6;
  --bodo-filter-text:#2c2c2c;
  --bodo-filter-muted:#7a7a7a;
  --bodo-filter-active:#1F5F85; /* золотистый как в макете */
  --bodo-filter-radius:8px;
}

/* оболочка блока фильтра (div.bodo-locations[data-bodo-role="filter"]) */
.bodo-locations[data-bodo-role="filter"]{
  background:#F5F5F5;
  border-radius:var(--bodo-filter-radius);
  padding:14px 12px;
  max-height:500px;              /* как на твоём примере — высокий блок */
  overflow:auto;                 /* вертикальный скролл на десктопе */
}

/* кастомный скроллбар (WebKit) */
.bodo-locations[data-bodo-role="filter"]::-webkit-scrollbar{ width:4px; height:12px; }
.bodo-locations[data-bodo-role="filter"]::-webkit-scrollbar-track{ background:rgba(0,0,0,0.06); border-radius:10px; }
.bodo-locations[data-bodo-role="filter"]::-webkit-scrollbar-thumb{ background:#3A302C; border-radius:10px; }

/* список кнопок */
.bodo-filter{ display:flex; flex-direction:column; gap:6px; }

/* кнопка города */
.bf-btn{
  all:unset;
  display:block;
  cursor:pointer;
  line-height:1.2;
  color:var(--bodo-filter-text);
  font-weight:600;
  font-size:18px;          /* крупные как в макете */
  transition:color .15s ease, transform .15s ease;
  padding:6px 12px;
  border-radius:6px;
}
.bf-btn:hover{ color:#111; transform:translateX(1px); }

/* активный город — золотистый */
.bf-btn.is-active{ color:var(--bodo-filter-active); }

/* немного «вторичных» (дальше по списку) если нужно сделать визуальную иерархию */
.bf-btn:nth-child(n+5){ font-weight:500; font-size:16px; color:var(--bodo-filter-muted); }
.bf-btn:nth-child(n+5).is-active{ color:var(--bodo-filter-active); font-weight:500; }

/* ====== МОБИЛЬНЫЙ ВИД: горизонтальный скролл, без градиентов по бокам ====== */
@media (max-width: 767px){
  .bodo-locations[data-bodo-role="filter"]{
    max-height:none;
    padding:12px 10px;
    overflow:auto;                 /* включаем именно горизонтальный */
    white-space:nowrap;
  }
  .bodo-filter{
    flex-direction:row;
    gap:6px;
  }
  .bf-btn{
    display:inline-block;
    white-space:nowrap;
    font-size:16px;
    font-weight:600;
    color:var(--bodo-filter-text);
    padding:10px 14px;
    border-radius:8px;           /* «пилюли» */
    background:#fff;               /* чистый фон, без боковых градиентов */
    border:1px solid rgba(0,0,0,0.06);
  }
  .bf-btn.is-active{
    color:#111;
    border-color:var(--bodo-filter-active);
    box-shadow:0 0 0 2px color-mix(in srgb, var(--bodo-filter-active) 35%, transparent);
  }

  /* горизонтальный скроллбар (по желанию можно скрыть): */
  .bodo-locations[data-bodo-role="filter"]::-webkit-scrollbar{ height:6px; }
  .bodo-locations[data-bodo-role="filter"]::-webkit-scrollbar-track{ background:transparent; }
  .bodo-locations[data-bodo-role="filter"]::-webkit-scrollbar-thumb{ background:#3A302C; border-radius:8px; }
}

/* BODO Locations — перекраска кнопок фильтра */
.bodo-filter .bf-btn:hover,
.bodo-filter .bf-btn:focus,
.bodo-filter .bf-btn.is-active {
  background: #fff !important;   /* белый фон */
  color: #0F2530 !important;      /* тёмный текст (можешь поменять) */
  border-color: #0F2530 !important;
  box-shadow: none !important;    /* на всякий случай уберём тени/эффекты */
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-1586423 *//* === BODO: стиль карточки в балуне карты === */
.bodo-locations[data-bodo-role="map"] .ymaps-2-1-79-balloon__content {
  padding: 18px 18px 22px !important;
}

.bodo-locations[data-bodo-role="map"] .bodo-balloon {
  max-width: 820px;
  line-height: 1.45;
  color: #1E1F22;
  font-size: 16px;
}

/* Заголовок */
.bodo-locations[data-bodo-role="map"] .bodo-balloon .bm-title{
  margin: 0 0 12px 0;
  font-size: 24px;
  font-weight: 800;
  letter-spacing: .2px;
}

/* Обёртка содержимого */
.bodo-locations[data-bodo-role="map"] .bodo-balloon .bm-body{
  display: block;
}

/* Картинка */
.bodo-locations[data-bodo-role="map"] .bodo-balloon .bm-cover{
  display: block;
  width: 100%;
  height: auto;
  border-radius: 18px;
  margin: 0 0 14px 0;
}

/* Адрес */
.bodo-locations[data-bodo-role="map"] .bodo-balloon .bm-addr{
  margin: 0 0 8px 0;
  font-size: 18px;
  font-weight: 600;
}

/* Описание: телефоны/часы и любой HTML из ACF */
.bodo-locations[data-bodo-role="map"] .bodo-balloon .bm-desc{
  font-size: 16px;
  opacity: .9;
}
.bodo-locations[data-bodo-role="map"] .bodo-balloon .bm-desc a{
  text-decoration: none;
  border-bottom: 1px dashed rgba(0,0,0,.25);
  color: #0A7C83;            /* фирменный тёмно-бирюзовый */
}
.bodo-locations[data-bodo-role="map"] .bodo-balloon .bm-desc a:hover{
  border-bottom-color: transparent;
}

/* Скругление тела балуна и тени — аккуратнее */
.bodo-locations[data-bodo-role="map"] .ymaps-2-1-79-balloon__layout,
.bodo-locations[data-bodo-role="map"] .ymaps-2-1-79-balloon{
  border-radius: 16px !important;
  overflow: hidden;
}
.bodo-locations[data-bodo-role="map"] .ymaps-2-1-79-balloon__layout{
  box-shadow: 0 12px 40px rgba(0,0,0,.18);
}

/* Крестик побольше/контрастнее */
.bodo-locations[data-bodo-role="map"] .ymaps-2-1-79-balloon__close{
  right: 12px !important;
  top: 12px !important;
  opacity: .7;
}
.bodo-locations[data-bodo-role="map"] .ymaps-2-1-79-balloon__close:hover{ opacity: 1; }/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-2f2dc57 *//* ===== BODO: список магазинов (карточки) ===== */

/* Сетка: 3 карточки в ряд на десктопе, 1 карточка на планшете/мобиле */
.bodo-locations .bodo-shops{
  display:grid;
  grid-template-columns: 1fr;     /* по умолчанию 1 в ряд */
  gap:8px;
}

/* ≥1200px — три колонки */
@media (min-width:1200px){
  .bodo-locations .bodo-shops{
    grid-template-columns: repeat(2, 1fr);
    gap:8px;
  }
}

/* Карточка */
.bodo-locations .shop-card{
  display:flex;
  flex-direction:row;             /* слева картинка, справа текст */
  align-items:stretch;
  background:#fff;
  border:1px solid rgba(0,0,0,.06);
  border-radius:16px;
  overflow:hidden;
  box-shadow:0 2px 12px rgba(0,0,0,.06);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

/* Ховер для мыши */


/* Левая колонка — изображение */
.bodo-locations .shop-cover{
  display:block;
  width:44%;                      /* ширина медиа слева */
  min-width:220px;
  max-width:100%;
  height:260px;                   /* фиксированная высота для аккуратной сетки */
  object-fit:cover;
  background:#f3f3f3;
}

/* Правая колонка — контент */
.bodo-locations .shop-body{
  display:flex;
  flex-direction:column;
  justify-content: center;
  gap:8px;
  padding:18px 20px;
  width:56%;
}

/* Заголовок */
.bodo-locations .shop-title{
  margin:0 0 6px 0;
  font-size:18px;
  line-height:1.25;
  font-weight:600;
  color:#222;
}

/* Адрес */
.bodo-locations .shop-address{
  font-size:15px;
  line-height:1.5;
  color:#444;
}

/* Описание (телефон/режим работы и т.п.) */
.bodo-locations .shop-desc{
  margin-top:6px;
  font-size:14px;
  line-height:1.55;
  color:#555;
}
.bodo-locations .shop-desc p{ margin:.35em 0; }

/* Плашка “нет точек” */
.bodo-locations .shop-empty{
  padding:22px;
  background:#fafafa;
  border:1px dashed #e0e0e0;
  border-radius:12px;
  text-align:center;
  color:#666;
}

/* ——— Адаптив ——— */

/* планшет/мобайл: по одной карточке, картинка сверху, текст снизу */
@media (max-width:767px){
  .bodo-locations .shop-card{
    flex-direction:column;
  }
  .bodo-locations .shop-cover{
    width:100%;
    min-width:0;
    height:220px;
  }
  .bodo-locations .shop-body{
    width:100%;
    padding:16px;
  }
}

/* мелкие экраны — чуть компактнее */
@media (max-width:480px){
  .bodo-locations .shop-cover{ height:200px; }
  .bodo-locations .shop-title{ font-size:18px; }
  .bodo-locations .shop-address{ font-size:14px; }
  .bodo-locations .shop-desc{ font-size:13px; }
}/* End custom CSS */