/* Одиночная страница места (шаблон 160 "Places: Single post", /places/{slug}/).
   Эталон — Site/v2/place.html. Виджеты — существующие Voxel/Elementor виджеты шаблона,
   ID зафиксированы через execute-php дамп дерева _elementor_data (см. voxel-elementor skill). */

/* --- Хлебные крошки (новый контейнер vgbc1) --- */

/* Левый/правый отступ контента повторяет 1:1 коробку шапки (padding 25/15px + boxed 1600, см. комментарий ниже).
   Фон вынесен в ::before и растянут на 100vw (full-bleed трюк) — иначе на ширинах >1650px по бокам
   от центрированного блока остаются непокрашенные полосы — сквозь них виден сырой незатемнённый
   градиент .vg-hero-bg во всю насыщенность — это и был «резкий переход», найденный через elementFromPoint. */
.vg-place-breadcrumb-row {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  max-width: 1650px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 16px 25px !important;
  background-color: transparent !important;
}
@media (max-width: 1024px) { .vg-place-breadcrumb-row { padding: 16px 15px !important; } }

.vg-place-breadcrumb-row::before {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 100vw;
  transform: translateX(-50%);
  background-color: rgba(255, 248, 223, .55);
  backdrop-filter: blur(10px);
  border-bottom: var(--vg-border-width) solid var(--vg-ink);
  z-index: -1;
}

.vg-breadcrumbs {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--vg-font-mono);
  font-size: 12px;
  font-weight: 600;
  line-height: 1 !important;
  text-transform: uppercase;
  letter-spacing: .1em;
  color: rgba(22, 32, 50, .6);
}
.vg-breadcrumbs__link { color: inherit; text-decoration: none; }
.vg-breadcrumbs__link:hover { color: var(--vg-primary); }
.vg-breadcrumbs__sep { color: rgba(22, 32, 50, .4); }
.vg-place-breadcrumb-row > .elementor-widget-heading {
  display: flex !important;
  align-items: center !important;
}
.vg-place-breadcrumb-row > .elementor-widget-heading .elementor-heading-title {
  font-family: var(--vg-font-mono) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  letter-spacing: .1em !important;
  color: var(--vg-ink) !important;
}

/* --- Sticky суб-навигация Места (класс .vg-place-navbar — переиспользуемый, вешается на любой ts-navbar Место/События) — точное соответствие place.html строки 105-112:
   <nav class="sticky top-20 z-40 border-b-2 border-[#162032] bg-[#FFF8DF]/90 backdrop-blur-xl">
     <div class="mx-auto flex max-w-[1600px] overflow-x-auto px-4 sm:px-6 lg:px-8">
       <a class="place-nav shrink-0 border-x border-[#162032] bg-[#162032] px-5 py-3 text-xs font-semibold uppercase tracking-[0.12em] text-white">Обзор</a>
       <a class="place-nav shrink-0 border-r border-[#162032] px-5 py-3 text-xs font-semibold uppercase tracking-[0.12em] hover:bg-white">...</a>
   Важно: border у place-nav — СПЛОШНОЙ #162032 (не rgba/.2), z-40 (не 500), bg/90 (не .55), blur-xl=24px (не 10px),
   вкладки выравниваются по левому краю (flex-start), НЕ по центру — центрируется только
   контейнер (mx-auto max-w-1600), как и везде на сайте. */

.vg-place-navbar {
  position: sticky !important;
  top: 80px !important;
  z-index: 40 !important;
  border-bottom: 2px solid var(--vg-ink) !important;
  background-color: rgba(255, 248, 223, .9) !important;
  backdrop-filter: blur(24px);
  min-height: 0 !important;
  height: auto !important;
}
/* Сжимаем бар под естественную высоту контента (~46px от padding:12px + текста) — без этого
   min-height виджета по умолчанию давал 71px, чем выше нужного по place.html, и текст сидел в окружённом кремовом
   поле, хотя и точно по центру. Теперь высота бара = высота контента напрямую — зазоров нет изначально. */
.vg-place-navbar > .elementor-widget {
  height: auto !important;
}
.vg-place-navbar .ts-nav-menu {
  height: auto !important;
}
.vg-place-navbar .ts-nav {
  height: auto !important;
}
.vg-place-navbar .menu-item {
  height: auto !important;
}
.vg-place-navbar .ts-item-link {
  height: auto !important;
  box-sizing: border-box !important;
}
.vg-place-navbar .ts-nav-menu {
  width: 100%;
  max-width: 1600px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  overflow-x: auto;
  padding-left: 16px !important;
  padding-right: 16px !important;
}
@media (min-width: 640px) {
  .vg-place-navbar .ts-nav-menu { padding-left: 24px !important; padding-right: 24px !important; }
}
@media (min-width: 1024px) {
  .vg-place-navbar .ts-nav-menu { padding-left: 0 !important; padding-right: 0 !important; }
  .vg-place-navbar > .elementor-widget:first-child .ts-nav-menu { padding-left: 32px !important; }
  .vg-place-navbar > .elementor-widget:last-child .ts-nav-menu { padding-right: 32px !important; }
}
.vg-place-navbar .ts-nav { gap: 0 !important; justify-content: flex-start !important; }
/* Важно: у <li class="menu-item"> Voxel через JS выставляет фиксированную ширину (равняет все пункты по
   самому длинному, «Как добраться»), шире чем <a class="ts-item-link"> внутри — похоже,
   с inline !important, потому попытка width:100% на самой ссылке не срабатывала. Переносим бордер/фон
   на сам LI (его ширину JS не трогает) и центрируем ссылку внутри через justify-content —
   иначе остаётся неокаймлённый кусок фона сбоку от ссылки, видный особенно на активном пункте. */
.vg-place-navbar .menu-item {
  display: flex !important;
  flex-shrink: 0;
  justify-content: center !important;
  align-items: stretch !important;
  border-right: 1px solid var(--vg-ink) !important;
  transition: background-color .15s ease;
}
.vg-place-navbar .menu-item:first-child {
  border-left: 1px solid var(--vg-ink) !important;
}
.vg-place-navbar .menu-item:not(.current-menu-item):hover {
  background-color: #FFFFFF !important;
}
.vg-place-navbar .menu-item.current-menu-item {
  background-color: var(--vg-ink) !important;
}
.vg-place-navbar .ts-item-link {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 20px !important;
  border: none !important;
  background: transparent !important;
  font-family: var(--vg-font-mono) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  color: var(--vg-ink) !important;
  text-decoration: none !important;
  transition: color .15s ease;
}
.vg-place-navbar .ts-item-icon { display: none !important; }
.vg-place-navbar .menu-item.current-menu-item .ts-item-link {
  color: #FFFFFF !important;
}
.vg-place-navbar .ts-item-link span {
  font-family: var(--vg-font-mono) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
}
.vg-place-navbar .menu-item.current-menu-item .ts-item-link span {
  color: #FFFFFF !important;
}
.vg-place-navbar .menu-item:not(.current-menu-item) .ts-item-link span {
  color: var(--vg-ink) !important;
}

/* --- Обзор: обложка, аватар, заголовок, подзаголовок, экшн-кнопки ---
   place.html строит это как ДВА раздельных div: картинка — mx-auto max-w-[1600px] px-4 sm:px-6 lg:px-8 pt-6
   (тот же 1600-контейнер, что у суб-нава/хлебных крошек), заголовок/кнопки — mx-auto max-w-[1120px] узкая
   колонка. В Elementor-дереве это ОДИН общий контейнер (b7b27bb → .e-con-inner), который у e-con-inner уже
   НАТИВНО имеет max-width:min(100%,1600px) (родной boxed_width Elementor) — раньше здесь стоял свой
   max-width:1120px, который перебивал этот нативный 1600 и сжимал картинку до ширины текстовой колонки.
   Убрали override — картинка теперь получает полные 1600, а узкую 1120-колонку возвращаем точечно на
   ddd3245/af52a1c (заголовок/кнопки) ниже. */
.elementor-element-b7b27bb {
  padding: 24px 16px 0 !important;
}
@media (min-width: 640px) {
  .elementor-element-b7b27bb { padding-left: 24px !important; padding-right: 24px !important; }
}
@media (min-width: 1024px) {
  .elementor-element-b7b27bb { padding-left: 32px !important; padding-right: 32px !important; }
}

/* Родительская секция (bf00469, e-con-inner) даёт от Elementor дефолтные 60px padding-top ДО картинки —
   в place.html после суб-нава сразу идёт pt-6 (24px, уже выставлен на b7b27bb выше) и больше ничего.
   Обнуляем только top — нижний 60px перед подвалом/следующей секцией не трогаем, не часть этой правки. */
.elementor-element-bf00469 > .e-con-inner {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Плашки-бейджи над обложкой (категория / статус работы / подтверждено) — place.html строки 119-132.
   b7b27bb становится position:relative, абсолютный ряд бейджей позиционируется относительно
   padding-бокса родителя (top:16/24px, left:16/24px — точно как left-4/top-4 sm:left-6/top-6),
   поэтому собственный padding контейнера учитывать не нужно. */

.elementor-element-b7b27bb { position: relative !important; }

.elementor-element-vgbadgesrow1 {
  /* top/left отсчитываются от border-box b7b27bb (проверено измерением), а не от padding-box — поэтому значения
     включают собственный padding контейнера (чтобы отступить именно от края картинки, как left-4/top-4 в place.html):
     top = padding-top(24, постоянный) + отступ (16 мобильно / 24 шире); left = padding-left(16/24/32) + отступ (16/24). */
  position: absolute !important;
  top: 40px !important;
  left: 32px !important;
  z-index: 2;
  width: auto !important;
}
@media (min-width: 640px) {
  .elementor-element-vgbadgesrow1 { top: 48px !important; left: 48px !important; }
}
@media (min-width: 1024px) {
  .elementor-element-vgbadgesrow1 { left: 56px !important; }
}

.elementor-element-vgbadgecat1,
.elementor-element-vgbadgestat1,
.elementor-element-vgbadgever1 {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  width: auto !important;
  border-radius: 12px;
  border: var(--vg-border-width) solid var(--vg-ink);
  padding: 8px 12px;
  font-family: var(--vg-font-mono);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .1em;
  text-decoration: none;
  white-space: nowrap;
  line-height: 1;
}
.elementor-element-vgbadgecat1 {
  background-color: var(--vg-red);
  color: #FFFFFF !important;
}
.elementor-element-vgbadgecat1::before {
  content: '';
  display: inline-block;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  background-color: currentColor;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='2' width='16' height='20' rx='1'/%3E%3Cline x1='9' y1='6' x2='9' y2='6.01'/%3E%3Cline x1='15' y1='6' x2='15' y2='6.01'/%3E%3Cline x1='9' y1='10' x2='9' y2='10.01'/%3E%3Cline x1='15' y1='10' x2='15' y2='10.01'/%3E%3Cline x1='9' y1='14' x2='9' y2='14.01'/%3E%3Cline x1='15' y1='14' x2='15' y2='14.01'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='2' width='16' height='20' rx='1'/%3E%3Cline x1='9' y1='6' x2='9' y2='6.01'/%3E%3Cline x1='15' y1='6' x2='15' y2='6.01'/%3E%3Cline x1='9' y1='10' x2='9' y2='10.01'/%3E%3Cline x1='15' y1='10' x2='15' y2='10.01'/%3E%3Cline x1='9' y1='14' x2='9' y2='14.01'/%3E%3Cline x1='15' y1='14' x2='15' y2='14.01'/%3E%3C/svg%3E");
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
}
.elementor-element-vgbadgestat1 {
  background-color: #FFF8DF;
  color: var(--vg-ink) !important;
}
.elementor-element-vgbadgestat1::before {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 8px;
  border-radius: 50%;
  background-color: var(--vg-green);
}
.elementor-element-vgbadgever1 {
  background-color: var(--vg-primary);
  color: #FFFFFF !important;
}
.elementor-element-vgbadgever1::before {
  content: '';
  display: inline-block;
  width: 16px;
  height: 16px;
  flex-shrink: 0;
  background-color: currentColor;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='M9 12l2 2 4-4'/%3E%3C/svg%3E");
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
}

.elementor-element-05ea2fe {
  border-radius: var(--vg-radius-card) !important;
  overflow: hidden !important;
  border: var(--vg-border-width) solid var(--vg-ink) !important;
}
.elementor-element-05ea2fe img {
  height: 320px !important;
  width: 100% !important;
  object-fit: cover !important;
}
@media (min-width: 640px) {
  .elementor-element-05ea2fe img { height: 480px !important; }
}

.elementor-element-c3de353 {
  width: 120px !important;
  max-width: 120px !important;
  align-self: flex-start !important;
}
.elementor-element-c3de353 img {
  border-radius: 50% !important;
  background-color: var(--vg-yellow) !important;
  box-shadow: 5px 5px 0 var(--vg-ink) !important;
}

.elementor-element-ddd3245 {
  max-width: 1120px !important;
  width: 100% !important;
  margin: 28px auto 0 !important;
  gap: 10px !important;
}
.elementor-element-9864e19 .elementor-heading-title {
  font-family: var(--vg-font-body) !important;
  font-size: 40px !important;
  font-weight: 500 !important;
  line-height: .95 !important;
  letter-spacing: -0.04em !important;
  color: var(--vg-ink) !important;
}
@media (min-width: 640px) {
  .elementor-element-9864e19 .elementor-heading-title { font-size: 64px !important; }
}

.elementor-element-af52a1c {
  max-width: 1120px !important;
  width: 100% !important;
  margin: 16px auto 0 !important;
  align-items: flex-start !important;
}
.elementor-element-a9d5faa .elementor-heading-title {
  max-width: 640px;
  font-family: var(--vg-font-body) !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  line-height: 1.6 !important;
  color: var(--vg-ink) !important;
}

/* --- Инфо-блоки левой колонки: О месте / Галерея / Категории / Ссылки --- */

.elementor-element-7fdbd45,
.elementor-element-51e505d,
.elementor-element-1081de9,
.elementor-element-a6fe40b {
  border: none !important;
  border-radius: 0 !important;
  border-bottom: var(--vg-border-width) solid var(--vg-ink) !important;
  background-color: transparent !important;
  box-shadow: none !important;
  padding: 32px 0 !important;
}
.elementor-element-a6fe40b { border-bottom: none !important; }

.elementor-element-5034f27 .elementor-heading-title,
.elementor-element-c397215 .elementor-heading-title,
.elementor-element-e210bb8 .elementor-heading-title,
.elementor-element-758c63c .elementor-heading-title {
  font-family: var(--vg-font-body) !important;
  font-size: 32px !important;
  font-weight: 500 !important;
  letter-spacing: -0.05em !important;
  color: var(--vg-ink) !important;
}

.elementor-element-9ab5d04 {
  margin-top: 16px !important;
  max-width: 720px;
}
.elementor-element-9ab5d04,
.elementor-element-9ab5d04 p {
  font-size: 16px !important;
  line-height: 1.8 !important;
  color: var(--vg-ink) !important;
}

.elementor-element-2642872,
.elementor-element-a10d3ce {
  margin-top: 20px !important;
}

/* --- Отзывы (ts-timeline) --- */

.elementor-element-0894257 { padding-top: 32px !important; }

/* --- Сайдбар: часы / рейтинг / как добраться / владельцу --- */

.elementor-element-0395f11 { padding-top: 24px !important; }

.elementor-element-bbff4c7 {
  border: var(--vg-border-width) solid var(--vg-ink) !important;
  border-radius: var(--vg-radius-card) !important;
  background-color: rgba(255, 255, 255, .8) !important;
  box-shadow: 5px 5px 0 var(--vg-ink) !important;
  padding: 20px !important;
}

.elementor-element-3c01fb0 {
  border: var(--vg-border-width) solid var(--vg-ink) !important;
  border-radius: var(--vg-radius-card) !important;
  background-color: var(--vg-yellow) !important;
  box-shadow: none !important;
  padding: 20px !important;
}
.elementor-element-3593a38 .elementor-heading-title {
  display: block !important;
  font-family: var(--vg-font-mono) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: .12em !important;
  color: var(--vg-ink) !important;
}

.elementor-element-58fdc7f {
  border: var(--vg-border-width) solid var(--vg-ink) !important;
  border-radius: var(--vg-radius-card) !important;
  background-color: rgba(255, 255, 255, .8) !important;
  box-shadow: none !important;
  overflow: hidden !important;
}
.elementor-element-vgmap1 .ts-map {
  height: 200px !important;
  border-bottom: var(--vg-border-width) solid var(--vg-ink) !important;
}
.elementor-element-601b10d .elementor-heading-title {
  font-family: var(--vg-font-body) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: var(--vg-ink) !important;
}

.elementor-element-vgown1 { padding: 0 !important; }
.vg-owner-card {
  border: var(--vg-border-width) solid var(--vg-ink);
  border-radius: var(--vg-radius-card);
  background-color: rgba(255, 248, 223, .7);
  padding: 20px;
}
.vg-owner-card__eyebrow {
  margin: 0 0 8px;
  font-family: var(--vg-font-mono);
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: rgba(22, 32, 50, .6);
}
.vg-owner-card__title {
  margin: 0;
  font-size: 20px;
  font-weight: 500;
  color: var(--vg-ink);
}
.vg-owner-card__text {
  margin: 12px 0 0;
  font-size: 14px;
  line-height: 1.6;
  color: var(--vg-ink);
}
.vg-owner-card__link {
  display: inline-block;
  margin-top: 16px;
  font-size: 14px;
  font-weight: 500;
  color: var(--vg-ink);
  text-decoration: underline;
  text-underline-offset: 4px;
}
.vg-owner-card__link:hover { color: var(--vg-primary); }

/* --- Двухколоночная сетка: центрирование под общий контейнер страницы --- */

.elementor-element-1551095 {
  max-width: 1400px !important;
  margin: 0 auto !important;
}

/* --- Нижний CTA (переиспользует .vgcta1__* из cta1.css, свой root — vgctarootplace1) --- */

.elementor-element-vgctarootplace1 {
  position: relative;
  overflow: hidden;
  background-color: var(--vg-yellow);
  border-top: var(--vg-border-width) solid var(--vg-ink);
  padding: 0 16px;
}
@media (min-width: 768px) { .elementor-element-vgctarootplace1 { padding: 0 24px; } }
@media (min-width: 1025px) { .elementor-element-vgctarootplace1 { padding: 0 30px; } }

/* Смягчаем сырой mesh-градиент (.vg-hero-bg, общий с главной/архивом) тем же полупрозрачным кремовым
   wash'ом, что и хлебные крошки (.vg-place-breadcrumb-row::before выше) — чтобы весь фон страницы был одинаково приглушён,
   а не только в отдельных вставках (хлебные крошки, «Похожие места»). Файл загружается только
   на is_singular('places'), поэтому правило не затронет главную/архив мест, хотя разметка .vg-hero-bg общая. */

.vg-hero-bg {
  position: fixed !important;
}
.vg-hero-bg::after {
  content: '';
  position: absolute;
  inset: 0;
  background-color: rgba(255, 248, 223, .55);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  pointer-events: none;
}

/* --- Форма поиска вкладки "События" (шаблон 743, виджет pev007) ---
   Клон поисковой формы главной (виджет 813e207, файл hero.css) — тот же grid-layout,
   те же иконки-маски solar, тот же nowrap-фикс и тёмная кнопка "Искать" —
   поля заменены под CPT events: evf1 = keywords ("Что ищете"), evf2 = terms ("Категория"),
   location-поля нет (у Событий нет гео-поиска). Файл загружается на этой вкладке
   через is_singular('places') — hero.css тут НЕ подключается, поэтому блок здесь. --- */

.elementor-element-pev006 { box-shadow: var(--vg-shadow); backdrop-filter: blur(12px); }

.elementor-element-pev007 { width: 100% !important; max-width: 100% !important; flex-grow: 1 !important; }

.elementor-element-pev007 .ts-filter-wrapper { flex-direction: column !important; flex-wrap: nowrap !important; align-items: stretch !important; }
@media (min-width: 1024px) {
  .elementor-element-pev007 .ts-filter-wrapper { flex-direction: row !important; }
}

.elementor-element-pev007 .elementor-repeater-item-evf1,
.elementor-element-pev007 .elementor-repeater-item-evf2,
.elementor-element-pev007 .ts-form-group.ts-form-submit { width: 100% !important; box-sizing: border-box !important; }
@media (min-width: 1024px) {
  .elementor-element-pev007 .elementor-repeater-item-evf1 { width: 40% !important; }
  .elementor-element-pev007 .elementor-repeater-item-evf2 { width: 35% !important; }
  .elementor-element-pev007 .ts-form-group.ts-form-submit { width: 25% !important; }
}

.elementor-element-pev007 .ts-filter-wrapper > .ts-form-group { padding: 0 !important; margin: 0 !important; }

.elementor-element-pev007 .ts-form-group:not(:last-child) { border-bottom: var(--vg-border-width) solid var(--vg-ink) !important; }
@media (min-width: 1024px) {
  .elementor-element-pev007 .ts-form-group:not(:last-child) { border-bottom: none !important; border-right: var(--vg-border-width) solid var(--vg-ink) !important; }
}

.elementor-element-pev007 .ts-input-icon,
.elementor-element-pev007 .ts-filter {
  min-height: 80px !important;
  height: auto !important;
  padding: 0 20px !important;
  gap: 16px !important;
  align-items: center !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  --ts-icon-size: 24px !important;
  display: grid !important;
  grid-template-columns: 24px 1fr auto;
  grid-template-rows: auto auto;
  align-content: center !important;
  column-gap: 16px !important;
  row-gap: 2px !important;
}

.elementor-element-pev007 .ts-input-icon > span:first-child,
.elementor-element-pev007 .ts-filter > span:first-child {
  grid-column: 1;
  grid-row: 1 / span 2;
  align-self: center;
  justify-self: center;
}

.elementor-element-pev007 .ts-input-icon::before,
.elementor-element-pev007 .ts-filter::before {
  grid-column: 2;
  grid-row: 1;
  align-self: end;
  font-family: var(--vg-font-mono);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: rgba(22,32,50,.55);
  white-space: nowrap;
  line-height: 14px !important;
}
.elementor-element-pev007 .elementor-repeater-item-evf1 .ts-input-icon::before { content: "Что ищете"; }
.elementor-element-pev007 .elementor-repeater-item-evf2 .ts-filter::before { content: "Категория"; }

.elementor-element-pev007 .inline-input,
.elementor-element-pev007 .ts-filter-text {
  grid-column: 2;
  grid-row: 2;
  align-self: start;
  font-size: 14px !important;
  font-family: var(--vg-font-body) !important;
  color: var(--vg-ink) !important;
  height: auto !important;
  line-height: 20px !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.elementor-element-pev007 .inline-input::placeholder { color: rgba(22,32,50,.45) !important; }
.elementor-element-pev007 .inline-input:focus { outline: none !important; border: none !important; box-shadow: none !important; }

.elementor-element-pev007 .ts-inline-filter .ts-input-icon > span:first-child {
  position: static !important;
  left: auto !important;
  top: auto !important;
}

.elementor-element-pev007 .ts-down-icon {
  grid-column: 3;
  grid-row: 1 / span 2;
  align-self: end !important;
  justify-self: end;
  border: none !important;
  transform: none !important;
  width: 18px !important;
  height: 18px !important;
  background-color: var(--vg-ink);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m19 9l-7 6l-7-6'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m19 9l-7 6l-7-6'/%3E%3C/svg%3E");
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}

/* поле "Что ищете" (keywords) — solar:magnifer-linear */
.elementor-element-pev007 .elementor-repeater-item-evf1 .ts-input-icon > span:first-child svg { display: none !important; }
.elementor-element-pev007 .elementor-repeater-item-evf1 .ts-input-icon > span:first-child {
  width: 24px !important;
  height: 24px !important;
  background-color: var(--vg-ink);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.5'%3E%3Ccircle cx='11.5' cy='11.5' r='9.5'/%3E%3Cpath stroke-linecap='round' d='M18.5 18.5L22 22'/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.5'%3E%3Ccircle cx='11.5' cy='11.5' r='9.5'/%3E%3Cpath stroke-linecap='round' d='M18.5 18.5L22 22'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}

/* поле "Категория" — solar:widget-4-linear (сетка 2х2), как на главной */
.elementor-element-pev007 .elementor-repeater-item-evf2 .ts-filter > span:first-child svg { display: none !important; }
.elementor-element-pev007 .elementor-repeater-item-evf2 .ts-filter > span:first-child {
  width: 24px !important;
  height: 24px !important;
  background-color: var(--vg-ink);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='1.5' d='M2.5 6.5c0-1.886 0-2.828.586-3.414S4.614 2.5 6.5 2.5s2.828 0 3.414.586s.586 1.528.586 3.414v11c0 1.886 0 2.828-.586 3.414S8.386 21.5 6.5 21.5s-2.828 0-3.414-.586S2.5 19.386 2.5 17.5zm11 9c0-1.886 0-2.828.586-3.414s1.528-.586 3.414-.586s2.828 0 3.414.586s.586 1.528.586 3.414v2c0 1.886 0 2.828-.586 3.414s-1.528.586-3.414.586s-2.828 0-3.414-.586s-.586-1.528-.586-3.414zm0-10c0-.932 0-1.398.152-1.765a2 2 0 0 1 1.083-1.083c.367-.152.833-.152 1.765-.152h2c.932 0 1.398 0 1.765.152a2 2 0 0 1 1.083 1.083c.152.367.152.833.152 1.765s0 1.398-.152 1.765a2 2 0 0 1-1.083 1.083c-.367.152-.833.152-1.765.152h-2c-.932 0-1.398 0-1.765-.152a2 2 0 0 1-1.083-1.083C13.5 6.898 13.5 6.432 13.5 5.5Z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='1.5' d='M2.5 6.5c0-1.886 0-2.828.586-3.414S4.614 2.5 6.5 2.5s2.828 0 3.414.586s.586 1.528.586 3.414v11c0 1.886 0 2.828-.586 3.414S8.386 21.5 6.5 21.5s-2.828 0-3.414-.586S2.5 19.386 2.5 17.5zm11 9c0-1.886 0-2.828.586-3.414s1.528-.586 3.414-.586s2.828 0 3.414.586s.586 1.528.586 3.414v2c0 1.886 0 2.828-.586 3.414s-1.528.586-3.414.586s-2.828 0-3.414-.586s-.586-1.528-.586-3.414zm0-10c0-.932 0-1.398.152-1.765a2 2 0 0 1 1.083-1.083c.367-.152.833-.152 1.765-.152h2c.932 0 1.398 0 1.765.152a2 2 0 0 1 1.083 1.083c.152.367.152.833.152 1.765s0 1.398-.152 1.765a2 2 0 0 1-1.083 1.083c-.367.152-.833.152-1.765.152h-2c-.932 0-1.398 0-1.765-.152a2 2 0 0 1-1.083-1.083C13.5 6.898 13.5 6.432 13.5 5.5Z'/%3E%3C/svg%3E");
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}

.elementor-element-pev007 .ts-search-btn {
  min-height: 80px !important;
  height: auto !important;
  width: 100% !important;
  padding: 0 20px !important;
  gap: 16px !important;
  align-items: center !important;
  justify-content: space-between !important;
  border-radius: 0 !important;
  background: var(--vg-ink) !important;
  color: #FFFFFF !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  --ts-icon-size: 24px !important;
  transition: background-color .18s ease;
}
.elementor-element-pev007 .ts-search-btn:hover { background: var(--vg-primary) !important; }
.elementor-element-pev007 .ts-search-btn svg { display: none !important; }
.elementor-element-pev007 .ts-search-btn::after {
  content: "";
  width: 23px;
  height: 23px;
  flex-shrink: 0;
  background-color: #FFFFFF;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M4 12h16m0 0l-6-6m6 6l-6 6'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M4 12h16m0 0l-6-6m6 6l-6 6'/%3E%3C/svg%3E");
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}

.elementor-element-pev007 .ts-field-popup-container {
  width: auto !important;
  max-width: 360px !important;
}
@media (max-width: 1024px) {
  .elementor-element-pev007 .ts-field-popup-container {
    width: auto !important;
    max-width: none !important;
  }
}
/* --- Заголовок вкладки "События" (шаблон 743) — eyebrow+H2 по паттерну /blog/ --- */
.elementor-element-befa20a .elementor-heading-title {
  margin: 0 0 12px !important;
  font-family: var(--vg-font-mono);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .16em;
  color: var(--vg-primary);
}
.elementor-element-35bde4e {
  font-family: var(--vg-font-body);
  font-size: 36px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: -0.055em;
  color: var(--vg-ink);
  margin: 0 !important;
}
.elementor-element-35bde4e em {
  font-family: var(--vg-font-serif);
  font-style: italic;
}
@media (min-width: 640px) {
  .elementor-element-35bde4e { font-size: 60px; }
}

/* --- Иконки в меню вкладки События (шаблон 743, pev003/navhallw743) --- */
.vg-place-navbar .elementor-element-pev003 .ts-item-icon,
.vg-place-navbar .elementor-element-navhallw743 .ts-item-icon {
  display: flex !important;
}
.elementor-element-pev003 .ts-item-icon svg,
.elementor-element-navhallw743 .ts-item-icon svg {
  width: 18px !important;
  height: 18px !important;
}

/* --- Иконки в меню .vg-place-navbar — сквозное правило для ВСЕХ шаблонов (160/743/746/744), перекрывает более раннее display:none --- */
.vg-place-navbar .ts-item-icon {
  display: flex !important;
}
.vg-place-navbar .ts-item-icon svg {
  width: 18px !important;
  height: 18px !important;
}
.vg-place-navbar .current-menu-item .ts-item-icon svg {
  color: #FFFFFF !important;
}

/* --- Форс-фикс заголовка событий — перебивает конфликтующее правило --- */
.elementor-element-35bde4e {
  font-family: var(--vg-font-body) !important;
  font-size: 36px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  letter-spacing: -0.055em !important;
  color: var(--vg-ink) !important;
}
@media (min-width: 640px) {
  .elementor-element-35bde4e { font-size: 60px !important; }
}
.elementor-element-35bde4e em {
  font-family: var(--vg-font-serif) !important;
  font-style: italic !important;
}

/* --- Стрелки геро-карусели событий (шаблон 743, heroFeed1) --- */
.elementor-element-heroFeed1 .post-feed-nav .ts-icon-btn {
  width: 48px !important;
  height: 48px !important;
  border: var(--vg-border-width) solid var(--vg-ink) !important;
  background: rgba(255, 248, 223, 0.9) !important;
  backdrop-filter: blur(12px) !important;
  --ts-icon-color: var(--vg-ink) !important;
  --ts-icon-size: 22px !important;
}
.elementor-element-heroFeed1 .post-feed-nav .ts-icon-btn:hover {
  width: 48px !important;
  height: 48px !important;
  background: var(--vg-yellow) !important;
}
.elementor-element-heroFeed1 .post-feed-nav li:first-child { margin-left: 16px !important; }
.elementor-element-heroFeed1 .post-feed-nav li:last-child { margin-right: 16px !important; }

/* --- Пункт «Залы» в навбаре мест — бирюзовая подсветка (категория term_id 30 «Спикер-площадки», --vg-turquoise) --- */
.vg-place-navbar :is(.elementor-element-navhallw160, .elementor-element-navhallw743, .elementor-element-navhallw744, .elementor-element-navhallw746, .elementor-element-zt9bc07d7) .menu-item {
  background-color: color-mix(in srgb, var(--vg-turquoise) 18%, white) !important;
}
.vg-place-navbar :is(.elementor-element-navhallw160, .elementor-element-navhallw743, .elementor-element-navhallw744, .elementor-element-navhallw746, .elementor-element-zt9bc07d7) .menu-item.current-menu-item {
  background-color: color-mix(in srgb, var(--vg-turquoise) 65%, black) !important;
}
.vg-place-navbar :is(.elementor-element-navhallw160, .elementor-element-navhallw743, .elementor-element-navhallw744, .elementor-element-navhallw746, .elementor-element-zt9bc07d7) .menu-item:not(.current-menu-item):hover {
  background-color: color-mix(in srgb, var(--vg-turquoise) 30%, white) !important;
}

/* --- Шапка вкладки (шаблоны 746/753, идентичный id верхнего фото) --- */
.elementor-element-85853af img {
  border: var(--vg-border-width) solid var(--vg-ink) !important;
  border-radius: var(--vg-radius-card) !important;
}

/* --- Заголовок «Блог места» (шаблон 746) — тот же паттерн, что и у заголовка событий (35bde4e) --- */
.elementor-element-c29301d {
  font-family: var(--vg-font-body) !important;
  font-size: 36px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  letter-spacing: -0.055em !important;
  color: var(--vg-ink) !important;
}
@media (min-width: 640px) {
  .elementor-element-c29301d { font-size: 60px !important; }
}
.elementor-element-c29301d em {
  font-family: var(--vg-font-serif) !important;
  font-style: italic !important;
}

/* --- Форма поиска вкладки "События" (шаблон 743, виджет blogFilterForm) ---
   Клон поисковой формы главной (виджет 813e207, файл hero.css) — тот же grid-layout,
   те же иконки-маски solar, тот же nowrap-фикс и тёмная кнопка "Искать" —
   поля заменены под CPT events: blogf1 = keywords ("Что ищете"), blogf2 = terms ("Категория"),
   location-поля нет (у Событий нет гео-поиска). Файл загружается на этой вкладке
   через is_singular('places') — hero.css тут НЕ подключается, поэтому блок здесь. --- */

.elementor-element-blogFilterWrap { box-shadow: var(--vg-shadow); backdrop-filter: blur(12px); }

.elementor-element-blogFilterForm { width: 100% !important; max-width: 100% !important; flex-grow: 1 !important; }

.elementor-element-blogFilterForm .ts-filter-wrapper { flex-direction: column !important; flex-wrap: nowrap !important; align-items: stretch !important; }
@media (min-width: 1024px) {
  .elementor-element-blogFilterForm .ts-filter-wrapper { flex-direction: row !important; }
}

.elementor-element-blogFilterForm .elementor-repeater-item-blogf1,
.elementor-element-blogFilterForm .elementor-repeater-item-blogf2,
.elementor-element-blogFilterForm .ts-form-group.ts-form-submit { width: 100% !important; box-sizing: border-box !important; }
@media (min-width: 1024px) {
  .elementor-element-blogFilterForm .elementor-repeater-item-blogf1 { width: 40% !important; }
  .elementor-element-blogFilterForm .elementor-repeater-item-blogf2 { width: 35% !important; }
  .elementor-element-blogFilterForm .ts-form-group.ts-form-submit { width: 25% !important; }
}

.elementor-element-blogFilterForm .ts-filter-wrapper > .ts-form-group { padding: 0 !important; margin: 0 !important; }

.elementor-element-blogFilterForm .ts-form-group:not(:last-child) { border-bottom: var(--vg-border-width) solid var(--vg-ink) !important; }
@media (min-width: 1024px) {
  .elementor-element-blogFilterForm .ts-form-group:not(:last-child) { border-bottom: none !important; border-right: var(--vg-border-width) solid var(--vg-ink) !important; }
}

.elementor-element-blogFilterForm .ts-input-icon,
.elementor-element-blogFilterForm .ts-filter {
  min-height: 80px !important;
  height: auto !important;
  padding: 0 20px !important;
  gap: 16px !important;
  align-items: center !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  --ts-icon-size: 24px !important;
  display: grid !important;
  grid-template-columns: 24px 1fr auto;
  grid-template-rows: auto auto;
  align-content: center !important;
  column-gap: 16px !important;
  row-gap: 2px !important;
}

.elementor-element-blogFilterForm .ts-input-icon > span:first-child,
.elementor-element-blogFilterForm .ts-filter > span:first-child {
  grid-column: 1;
  grid-row: 1 / span 2;
  align-self: center;
  justify-self: center;
}

.elementor-element-blogFilterForm .ts-input-icon::before,
.elementor-element-blogFilterForm .ts-filter::before {
  grid-column: 2;
  grid-row: 1;
  align-self: end;
  font-family: var(--vg-font-mono);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: rgba(22,32,50,.55);
  white-space: nowrap;
  line-height: 14px !important;
}
.elementor-element-blogFilterForm .elementor-repeater-item-blogf1 .ts-input-icon::before { content: "Что ищете"; }
.elementor-element-blogFilterForm .elementor-repeater-item-blogf2 .ts-filter::before { content: "Категория"; }

.elementor-element-blogFilterForm .inline-input,
.elementor-element-blogFilterForm .ts-filter-text {
  grid-column: 2;
  grid-row: 2;
  align-self: start;
  font-size: 14px !important;
  font-family: var(--vg-font-body) !important;
  color: var(--vg-ink) !important;
  height: auto !important;
  line-height: 20px !important;
  border: none !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}
.elementor-element-blogFilterForm .inline-input::placeholder { color: rgba(22,32,50,.45) !important; }
.elementor-element-blogFilterForm .inline-input:focus { outline: none !important; border: none !important; box-shadow: none !important; }

.elementor-element-blogFilterForm .ts-inline-filter .ts-input-icon > span:first-child {
  position: static !important;
  left: auto !important;
  top: auto !important;
}

.elementor-element-blogFilterForm .ts-down-icon {
  grid-column: 3;
  grid-row: 1 / span 2;
  align-self: end !important;
  justify-self: end;
  border: none !important;
  transform: none !important;
  width: 18px !important;
  height: 18px !important;
  background-color: var(--vg-ink);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m19 9l-7 6l-7-6'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m19 9l-7 6l-7-6'/%3E%3C/svg%3E");
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}

/* поле "Что ищете" (keywords) — solar:magnifer-linear */
.elementor-element-blogFilterForm .elementor-repeater-item-blogf1 .ts-input-icon > span:first-child svg { display: none !important; }
.elementor-element-blogFilterForm .elementor-repeater-item-blogf1 .ts-input-icon > span:first-child {
  width: 24px !important;
  height: 24px !important;
  background-color: var(--vg-ink);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.5'%3E%3Ccircle cx='11.5' cy='11.5' r='9.5'/%3E%3Cpath stroke-linecap='round' d='M18.5 18.5L22 22'/%3E%3C/g%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='%23000' stroke-width='1.5'%3E%3Ccircle cx='11.5' cy='11.5' r='9.5'/%3E%3Cpath stroke-linecap='round' d='M18.5 18.5L22 22'/%3E%3C/g%3E%3C/svg%3E");
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}

/* поле "Категория" — solar:widget-4-linear (сетка 2х2), как на главной */
.elementor-element-blogFilterForm .elementor-repeater-item-blogf2 .ts-filter > span:first-child svg { display: none !important; }
.elementor-element-blogFilterForm .elementor-repeater-item-blogf2 .ts-filter > span:first-child {
  width: 24px !important;
  height: 24px !important;
  background-color: var(--vg-ink);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='1.5' d='M2.5 6.5c0-1.886 0-2.828.586-3.414S4.614 2.5 6.5 2.5s2.828 0 3.414.586s.586 1.528.586 3.414v11c0 1.886 0 2.828-.586 3.414S8.386 21.5 6.5 21.5s-2.828 0-3.414-.586S2.5 19.386 2.5 17.5zm11 9c0-1.886 0-2.828.586-3.414s1.528-.586 3.414-.586s2.828 0 3.414.586s.586 1.528.586 3.414v2c0 1.886 0 2.828-.586 3.414s-1.528.586-3.414.586s-2.828 0-3.414-.586s-.586-1.528-.586-3.414zm0-10c0-.932 0-1.398.152-1.765a2 2 0 0 1 1.083-1.083c.367-.152.833-.152 1.765-.152h2c.932 0 1.398 0 1.765.152a2 2 0 0 1 1.083 1.083c.152.367.152.833.152 1.765s0 1.398-.152 1.765a2 2 0 0 1-1.083 1.083c-.367.152-.833.152-1.765.152h-2c-.932 0-1.398 0-1.765-.152a2 2 0 0 1-1.083-1.083C13.5 6.898 13.5 6.432 13.5 5.5Z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-width='1.5' d='M2.5 6.5c0-1.886 0-2.828.586-3.414S4.614 2.5 6.5 2.5s2.828 0 3.414.586s.586 1.528.586 3.414v11c0 1.886 0 2.828-.586 3.414S8.386 21.5 6.5 21.5s-2.828 0-3.414-.586S2.5 19.386 2.5 17.5zm11 9c0-1.886 0-2.828.586-3.414s1.528-.586 3.414-.586s2.828 0 3.414.586s.586 1.528.586 3.414v2c0 1.886 0 2.828-.586 3.414s-1.528.586-3.414.586s-2.828 0-3.414-.586s-.586-1.528-.586-3.414zm0-10c0-.932 0-1.398.152-1.765a2 2 0 0 1 1.083-1.083c.367-.152.833-.152 1.765-.152h2c.932 0 1.398 0 1.765.152a2 2 0 0 1 1.083 1.083c.152.367.152.833.152 1.765s0 1.398-.152 1.765a2 2 0 0 1-1.083 1.083c-.367.152-.833.152-1.765.152h-2c-.932 0-1.398 0-1.765-.152a2 2 0 0 1-1.083-1.083C13.5 6.898 13.5 6.432 13.5 5.5Z'/%3E%3C/svg%3E");
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}

.elementor-element-blogFilterForm .ts-search-btn {
  min-height: 80px !important;
  height: auto !important;
  width: 100% !important;
  padding: 0 20px !important;
  gap: 16px !important;
  align-items: center !important;
  justify-content: space-between !important;
  border-radius: 0 !important;
  background: var(--vg-ink) !important;
  color: #FFFFFF !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  --ts-icon-size: 24px !important;
  transition: background-color .18s ease;
}
.elementor-element-blogFilterForm .ts-search-btn:hover { background: var(--vg-primary) !important; }
.elementor-element-blogFilterForm .ts-search-btn svg { display: none !important; }
.elementor-element-blogFilterForm .ts-search-btn::after {
  content: "";
  width: 23px;
  height: 23px;
  flex-shrink: 0;
  background-color: #FFFFFF;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M4 12h16m0 0l-6-6m6 6l-6 6'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M4 12h16m0 0l-6-6m6 6l-6 6'/%3E%3C/svg%3E");
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
}

.elementor-element-blogFilterForm .ts-field-popup-container {
  width: auto !important;
  max-width: 360px !important;
}
@media (max-width: 1024px) {
  .elementor-element-blogFilterForm .ts-field-popup-container {
    width: auto !important;
    max-width: none !important;
  }
}


/* --- Заголовок вкладки "Залы" (шаблон 753, виджет zt2635562) — тот же паттерн, что и у c29301d/35bde4e --- */
.elementor-element-zt2635562 {
  font-family: var(--vg-font-body) !important;
  font-size: 36px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  letter-spacing: -0.055em !important;
  color: var(--vg-ink) !important;
  margin: 0 !important;
}
@media (min-width: 640px) {
  .elementor-element-zt2635562 { font-size: 60px !important; }
}
.elementor-element-zt2635562 em {
  font-family: var(--vg-font-serif) !important;
  font-style: italic !important;
}


/* --- Стрелки геро-карусели блога (шаблон 746, blogHeroFeed1) — тот же паттерн, что и у heroFeed1 (События) --- */
.elementor-element-blogHeroFeed1 .post-feed-nav .ts-icon-btn {
  width: 48px !important;
  height: 48px !important;
  border: var(--vg-border-width) solid var(--vg-ink) !important;
  background: rgba(255, 248, 223, 0.9) !important;
  backdrop-filter: blur(12px) !important;
  --ts-icon-color: var(--vg-ink) !important;
  --ts-icon-size: 22px !important;
}
.elementor-element-blogHeroFeed1 .post-feed-nav .ts-icon-btn:hover {
  width: 48px !important;
  height: 48px !important;
  background: var(--vg-yellow) !important;
}
.elementor-element-blogHeroFeed1 .post-feed-nav li:first-child { margin-left: 16px !important; }
.elementor-element-blogHeroFeed1 .post-feed-nav li:last-child { margin-right: 16px !important; }

/* Цветная пилюля категории на витрине последней публикации (шаблон 763) */
.vg-cat-pill {
  display: inline-flex;
  align-items: center;
  border-radius: var(--vg-radius-pill);
  padding: 6px 14px;
  font-family: var(--vg-font-mono);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #FFFFFF;
  text-decoration: none;
}

/* --- Категория + excerpt на витрине последней публикации (карточка 763) --- */
.elementor-element-vgbcatpill .elementor-heading-title {
  display: inline-block;
  padding: 6px 14px;
  border-radius: var(--vg-radius-pill);
  border: 1px solid rgba(255,255,255,.4);
  background-color: rgba(255,255,255,.15);
  backdrop-filter: blur(4px);
  font-family: var(--vg-font-mono);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: #FFFFFF;
}
.elementor-element-vgbexcerpt {
  margin: 0;
  max-width: 640px;
  font-size: 14px;
  line-height: 1.6;
  color: rgba(255,255,255,.7);
}
.elementor-element-vgbcta {
  align-self: flex-end;
}

/* --- Уточнение типографики витрины последней публикации (карточка 763) — по макету place-blog.html */
@media (min-width: 1024px) {
  .elementor-element-vgbtextcol {
    flex: 0 1 60% !important;
    max-width: 60% !important;
  }
}
.elementor-element-vgbexcerpt {
  font-size: 16px !important;
}
.elementor-element-vgbcatpill .elementor-heading-title {
  font-size: 13px !important;
}
.elementor-element-vgbcta {
  flex-shrink: 0 !important;
}
.elementor-element-vgbcta .elementor-button {
  white-space: nowrap !important;
}

/* --- Форс-фикс цвета пилюли категории на витрине (карточка 763) — перебивает более специфичное авто-правило Elementor (.elementor-763 .elementor-element.elementor-element-vgbcatpill), у которого цвет по умолчанию #162032 --- */
.elementor-element-vgbcatpill .elementor-heading-title {
  color: #FFFFFF !important;
  background-color: rgba(255,255,255,0.15) !important;
  border-color: rgba(255,255,255,0.4) !important;
}

/* --- Усиление контраста пилюли категории на витрине (карточка 763) — тёмный полупрозрачный фон вместо едва заметного белого (2026-08-24) --- */
.elementor-element-vgbcatpill .elementor-heading-title {
  background-color: rgba(22,32,50,0.55) !important;
  border-color: rgba(255,255,255,0.5) !important;
}