.elementor-kit-19{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-color-9cf74c3:#3A07F8;--e-global-color-d9dfd76:#DEE6E9;--e-global-color-de2e749:#FFFFFF;--e-global-color-4c08c05:#000000;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;background-color:transparent;background-image:linear-gradient(150deg, #010313 24%, #01041F 49%);}.elementor-kit-19 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ==============================
   THEME TOKENS
   ============================== */
:root{
  /* Base theme */
  --bg-from:#0B1221; --bg-to:#0E1F4F;
  --text:#fff; --text-2:#E5E7EB;
  --glass:rgba(255,255,255,.06);
  --glass-hover:rgba(255,255,255,.10);
  --border:rgba(255,255,255,.12);
  --cta:#22C55E; --cta-h:#16A34A;
  --focus:rgba(34,211,238,.35);

  /* Filter Everything (FE) */
  --fe-text:#eaf2ff;
  --fe-subtle:#b8c7e6;
  --fe-stroke:rgba(255,255,255,.22);
  --fe-stroke-weak:rgba(255,255,255,.12);
  --fe-glass:rgba(255,255,255,.06);
  --fe-glass-strong:rgba(255,255,255,.09);
  --fe-accent:#8be4ff;
  --fe-danger:#ff8ab5;

  /* Compact spacing for cards */
  --card-radius:22px;
  --card-pad-x:18px;
  --card-pad-y:12px;    /* ↓ было 18px */
  --thumb-radius:16px;
  --v-gap:10px;         /* вертикальный гап в теле карточки */
  --footer-pt:.2rem;    /* ↓ было .5rem */
  --chip-fs:12px;
  --chip-py:.28rem;     /* ↓ было .34rem */
  --chip-px:.54rem;     /* ↓ было .58rem */
}

/* ==============================
   КАРТОЧКА ТОВАРА — стекло + неоновый ореол
   ============================== */
.loop-card.glass,
.loop-card.glass > .e-con-inner{
  background: linear-gradient(135deg,var(--glass), rgba(255,255,255,.02)) !important;
  border:1px solid var(--border);
  border-radius:var(--card-radius);
  color:var(--text);
  box-shadow:0 12px 30px rgba(0,0,0,.28);
  backdrop-filter:saturate(120%) blur(8px);
  -webkit-backdrop-filter:saturate(120%) blur(8px);
}

/* Растяжение и выравнивание по высоте (жёсткая вертикальная композиция) */
.e-loop__container .e-loop-item{ display:flex; }
.e-loop__container .e-loop-item > .elementor-element{
  display:flex; flex-direction:column; width:100%;
}
.loop-card.glass{
  position:relative; overflow:visible; transition:transform .18s ease; will-change:transform;
  height:100%;
}
.loop-card.glass > .e-con-inner{
  height:100%; display:flex; flex-direction:column;
  padding:var(--card-pad-y) var(--card-pad-x) calc(var(--card-pad-y) - 2px);
  overflow:hidden;
  transition:border-color .18s, box-shadow .18s, background .18s;
  will-change:box-shadow, background, border-color;
}

/* Сброс внутренних «рандомных» отступов Elementor внутри карточки */
.loop-card.glass .elementor-widget{ margin-bottom:0 !important; }

/* Эффект ауры (мягкий блюр) */
.loop-card.glass::before{
  content:""; position:absolute; inset:-14px; border-radius:calc(var(--card-radius) + 4px);
  pointer-events:none; opacity:0;
  background: radial-gradient(120% 120% at 50% 10%,
              rgba(139,228,255,.20) 0%, rgba(139,228,255,.08) 35%,
              rgba(139,228,255,.04) 55%, transparent 70%);
  filter: blur(14px);
  transition: opacity .18s ease, filter .18s ease;
  z-index:0;
}
/* Неоновый кант */
.loop-card.glass::after{
  content:""; position:absolute; inset:-1px; border-radius:var(--card-radius);
  pointer-events:none; opacity:0; z-index:1;
  box-shadow: 0 0 0 1px rgba(139,228,255,.35),
              0 0 0 8px rgba(139,228,255,.08);
  transition: opacity .18s ease;
}

.loop-card.glass:hover,
.loop-card.glass:focus-within{ transform: translateY(-2px); }
.loop-card.glass:hover > .e-con-inner,
.loop-card.glass:focus-within > .e-con-inner{
  background: linear-gradient(135deg,var(--glass-hover), rgba(255,255,255,.04));
  border-color: var(--fe-accent) !important;
  box-shadow:
    inset 0 0 0 1px rgba(139,228,255,.35),
    0 12px 26px rgba(139,228,255,.10),
    0 18px 40px rgba(0,0,0,.35);
}
.loop-card.glass:hover::before,
.loop-card.glass:focus-within::before{ opacity:1; filter: blur(16px); }
.loop-card.glass:hover::after,
.loop-card.glass:focus-within::after{ opacity:1; }

/* Изображение 1:1 (оставляем квадрат), с фолбэком */
.loop-thumb{ aspect-ratio:1/1; border-radius:var(--thumb-radius); overflow:hidden; position:relative; }
.loop-thumb img{ width:100%; height:100%; object-fit:cover; display:block; }
@supports not (aspect-ratio: 1/1){
  .loop-thumb{ height:0; padding-top:100%; }
  .loop-thumb img{ position:absolute; inset:0; }
}

/* Тело карточки — аккуратные равные отступы */
.loop-body{
  flex:1; display:flex; flex-direction:column; align-items:center; text-align:center; gap:var(--v-gap);
}
.loop-body > *{ margin:0 !important; } /* выравниваем вертикальные промежутки */
.loop-body .elementor-heading-title{
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
  overflow:hidden; min-height:2.6em; margin-top:.6rem;  /* ровная высота заголовка */
}

/* Размеры — компактнее */
.wc-attr-row{
  display:flex; flex-wrap:wrap; gap:.46rem; justify-content:center; align-items:center;
  margin:.45rem 0 0; /* короче сверху, без лишнего низа */
  text-align:center;
}
.wc-attr-label{ font-weight:700; color:var(--text); white-space:nowrap; }
.wc-attr-chips{ display:flex; flex-wrap:wrap; gap:.36rem; justify-content:center; }

:is(.chip,.chip-link){
  display:inline-flex; align-items:center; justify-content:center;
  min-width:2.1rem; padding:var(--chip-py) var(--chip-px);
  font:600 var(--chip-fs)/1.2 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
  color:var(--text); text-decoration:none;
  background: rgba(255,255,255,.07);
  border:1px solid var(--border);
  border-radius:9999px;
  transition: background .15s ease, border-color .15s ease, transform .1s ease;
}
:is(.chip,.chip-link):hover{
  background:rgba(255,255,255,.12); border-color:rgba(255,255,255,.22);
}
:is(.chip,.chip-link):focus-visible{
  outline:none; box-shadow:0 0 0 3px var(--focus); transform:translateY(-1px);
}

/* Низ карточки — прижат к дну, единый отступ */
.loop-footer{
  margin-top:auto; display:flex; align-items:center; justify-content:center;
  gap:12px; padding-top:var(--footer-pt);
}

/* ==============================
   КНОПКА В КАРТОЧКЕ — стеклянная пилюля
   ============================== */
.loop-card.glass a.elementor-button,
.loop-card.glass .elementor-button{
  background: linear-gradient(180deg, var(--fe-glass-strong), rgba(255,255,255,.04)) !important;
  color: var(--fe-text) !important;
  border: 1px solid var(--fe-stroke) !important;
  border-radius: 9999px !important;
  padding: .55rem .95rem !important;
  text-decoration: none !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 8px 18px rgba(0,0,0,.22) !important;
  transition: border-color .18s, box-shadow .18s, transform .12s, background .18s !important;
  line-height: 1.2 !important;
}
.loop-card.glass .elementor-button .elementor-button-text{ color:inherit; }
.loop-card.glass a.elementor-button:hover,
.loop-card.glass a.elementor-button:focus-visible,
.loop-card.glass .elementor-button:hover,
.loop-card.glass .elementor-button:focus-visible{
  border-color: var(--fe-accent) !important;
  box-shadow: inset 0 0 0 1px rgba(139,228,255,.35),
              0 12px 26px rgba(139,228,255,.12) !important;
  transform: translateY(-1px);
  outline: none;
}
.loop-card.glass a.elementor-button:active,
.loop-card.glass .elementor-button:active{
  transform: translateY(0);
  box-shadow: inset 0 0 0 1px rgba(139,228,255,.25),
              0 8px 18px rgba(139,228,255,.08) !important;
}

/* ==============================
   FILTER EVERYTHING — стеклянные «пилюли» (ховер с неоном и блюром)
   ============================== */
.wpc-filters-widget-content{ color:var(--fe-text); }
.wpc-filters-widget-content a{ color:var(--fe-text); text-decoration:none; }

.wpc-filters-section{
  margin:0 0 14px 0;
  padding:14px 14px 10px;
  border-radius:16px;
  background:var(--fe-glass);
  border:1px solid var(--fe-stroke-weak);
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
}
.wpc-filter-header{ margin:0 0 10px 0; font-size:13.5px; letter-spacing:.02em; color:var(--fe-subtle); }

/* пункты (checkbox/radio) */
.wpc-filters-section li[class*="wpc-term"]{ list-style:none; }
.wpc-filters-section li[class*="wpc-term"] > input{ position:absolute; opacity:0; pointer-events:none; }

.wpc-filters-section li[class*="wpc-term"] label{
  position:relative;
  display:inline-flex; align-items:center; gap:8px;
  padding:8px 12px; margin:6px 8px 0 0;
  border-radius:999px;
  background:linear-gradient(180deg,var(--fe-glass-strong),rgba(255,255,255,.04));
  border:1px solid var(--fe-stroke);
  color:var(--fe-text);
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.25), 0 10px 24px rgba(0,0,0,.25);
  cursor:pointer; user-select:none; text-decoration:none;
  transition:border-color .18s, box-shadow .18s, background .18s;
}
.wpc-filters-section li[class*="wpc-term"] label::after{
  content:""; position:absolute; inset:-2px; border-radius:inherit; pointer-events:none;
  opacity:0; transition:opacity .18s ease; box-shadow: 0 0 0 8px rgba(139,228,255,.09);
}
.wpc-filters-section li[class*="wpc-term"] label:hover,
.wpc-filters-section li[class*="wpc-term"] label:focus-visible{
  border-color:var(--fe-accent) !important;
  box-shadow:inset 0 0 0 1px rgba(139,228,255,.35), 0 12px 26px rgba(139,228,255,.10) !important;
  outline:none;
}
.wpc-filters-section li[class*="wpc-term"] label:hover::after,
.wpc-filters-section li[class*="wpc-term"] label:focus-visible::after{ opacity:1; }

/* активное состояние */
.wpc-filters-section li[class*="wpc-term"] > input:checked + label,
.wpc-filters-section li[class*="wpc-term"] label:has(> input:checked){
  border-color:var(--fe-accent) !important;
  box-shadow:inset 0 0 0 1px rgba(139,228,255,.35), 0 12px 26px rgba(139,228,255,.10) !important;
}
.wpc-filters-section .wpc-count{ opacity:.75; font-size:12px; }
.wpc-filters-section li[class*="wpc-term"].wpc-term-disabled label,
.wpc-filters-section li[class*="wpc-term"].wpc-term-empty label{ opacity:.5; cursor:not-allowed; }

/* Слайдер цены + поля */
.wpc-filters-section.wpc-filter-price .ui-slider{
  height:6px; border-radius:999px; background:rgba(255,255,255,.07); border:1px solid var(--fe-stroke);
}
.wpc-filters-section.wpc-filter-price .ui-slider-range{
  background:linear-gradient(90deg, var(--fe-accent), rgba(139,228,255,.45));
}
.wpc-filters-section.wpc-filter-price .ui-slider-handle{
  width:16px; height:16px; top:-6px; border-radius:50%;
  border:2px solid var(--fe-accent); background:#0b1a38; box-shadow:0 0 0 6px rgba(139,228,255,.12);
}
.wpc-filters-section input[type="number"],
.wpc-filters-section input[type="text"]{
  width:100%; color:var(--fe-text);
  background:rgba(255,255,255,.06);
  border:1px solid var(--fe-stroke);
  border-radius:12px; padding:10px 12px;
  backdrop-filter:blur(8px); -webkit-backdrop-filter:blur(8px);
}
.wpc-filters-section input[type="number"]::placeholder,
.wpc-filters-section input[type="text"]::placeholder{ color:var(--fe-subtle); }

/* Чипсы выбранных фильтров */
ul.wpc-filter-chips-list{
  display:flex !important; flex-wrap:wrap !important; gap:12px !important;
  justify-content:flex-end !important; margin:0 0 16px 0 !important; padding:0 !important; list-style:none !important;
}
ul.wpc-filter-chips-list > li.wpc-filter-chip > :is(a,span){
  display:inline-flex !important; align-items:center !important; gap:8px !important;
  padding:8px 12px !important; border-radius:999px !important; text-decoration:none !important;
  background:rgba(255,255,255,.06) !important; border:1px solid rgba(255,255,255,.22) !important; color:#eaf2ff !important;
  backdrop-filter: blur(10px) !important; -webkit-backdrop-filter: blur(10px) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 10px 24px rgba(0,0,0,.25) !important;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease !important;
}
ul.wpc-filter-chips-list > li.wpc-filter-chip > :is(a,span):hover{
  border-color:#8be4ff !important;
  box-shadow: inset 0 0 0 1px rgba(139,228,255,.35), 0 12px 26px rgba(139,228,255,.10) !important;
}
ul.wpc-filter-chips-list > li.wpc-chip-reset-all > :is(a,span){
  border-color: rgba(255,138,181,.6) !important; color:#ffd8e7 !important;
}
ul.wpc-filter-chips-list > li.wpc-chip-reset-all > :is(a,span):hover{
  border-color:#ff8ab5 !important;
  box-shadow: inset 0 0 0 1px rgba(255,138,181,.45), 0 12px 26px rgba(255,138,181,.12) !important;
}

/* ==============================
   Адаптив + доступность
   ============================== */
@media (max-width:1024px){
  .wpc-filters-section{ padding:12px; }
}
@media (prefers-reduced-motion: reduce){
  * { transition:none !important; animation:none !important; }
}

/* =========================================
   FiboSearch (dgwt-wcas) — стекло + неон
   Чистая версия: без левого кружка, лупа справа
   ========================================= */

/* Токены под поиск */
:root{
  --wcas-h: 56px;                 /* высота поля */
  --wcas-radius: 9999px;          /* скругление */
  --wcas-pad-x: 18px;             /* внутренний отступ слева */
  --wcas-btn: 38px;               /* диаметр кнопки-лупы */
  --wcas-gap: 10px;               /* зазор справа */
}

/* Базовая «пилюля» */
.dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp{
  position:relative;
  display:flex; align-items:center;
  min-height: var(--wcas-h);
  border-radius: var(--wcas-radius);
  background: linear-gradient(180deg, var(--fe-glass-strong), rgba(255,255,255,.04));
  border: 1px solid var(--fe-stroke);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 10px 24px rgba(0,0,0,.25);
  transition: border-color .18s, box-shadow .18s, background .18s;
  overflow: hidden; /* чтобы ничего не выпрыгивало за край */
}

/* Убираем экспериментальный «кружок» слева (если был) */
.dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp::before{ content:none !important; }

/* Мягкая аура при фокусе */
.dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp::after{
  content:""; position:absolute; inset:-2px; border-radius:inherit; pointer-events:none;
  opacity:0; transition:opacity .18s ease;
  box-shadow: 0 0 0 10px rgba(139,228,255,.08);
  z-index: 0;
}

/* Поле ввода — прозрачное */
.dgwt-wcas-search-input{
  position:relative; z-index:1;
  height: var(--wcas-h) !important;
  padding-left: var(--wcas-pad-x) !important;
  padding-right: calc(var(--wcas-btn) + var(--wcas-gap) + var(--wcas-pad-x)) !important;
  border: none !important; outline: none !important;
  background: transparent !important;
  color: var(--fe-text) !important;
  font-size: 16px;
}
.dgwt-wcas-search-input::placeholder{ color: var(--fe-subtle) !important; }

/* WebKit autofill */
.dgwt-wcas-search-input:-webkit-autofill{
  -webkit-text-fill-color: var(--fe-text);
  -webkit-box-shadow: 0 0 0px 1000px transparent inset;
  transition: background-color 9999s ease-in-out 0s;
}

/* Кнопка-лупа — всегда справа */
.dgwt-wcas-search-submit{
  position:absolute !important;
  right: var(--wcas-gap) !important;
  left: auto !important; /* на всякий */
  top: 50% !important; transform: translateY(-50%) !important;
  width: var(--wcas-btn) !important; height: var(--wcas-btn) !important;
  display:grid; place-items:center;
  border-radius: 9999px !important;
  background: rgba(255,255,255,.03) !important;
  border: 1px solid var(--fe-stroke) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 6px 14px rgba(0,0,0,.22) !important;
  transition: border-color .18s, box-shadow .18s, transform .12s !important;
  z-index:1;
}
.dgwt-wcas-search-submit .dgwt-wcas-ico-magnifier{ fill: currentColor; }
.dgwt-wcas-search-submit:hover,
.dgwt-wcas-search-submit:focus-visible{
  border-color: var(--fe-accent) !important;
  box-shadow: inset 0 0 0 1px rgba(139,228,255,.35), 0 10px 22px rgba(139,228,255,.12) !important;
  transform: translateY(-1px);
  outline:none;
}

/* Фокус всей формы — неоновый кант + аура */
.dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp:hover,
.dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp:focus-within{
  border-color: var(--fe-accent) !important;
  box-shadow:
    inset 0 0 0 1px rgba(139,228,255,.35),
    0 12px 26px rgba(139,228,255,.10);
  background: linear-gradient(180deg, var(--fe-glass-strong), rgba(255,255,255,.06));
}
.dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp:hover::after,
.dgwt-wcas-search-wrapp .dgwt-wcas-sf-wrapp:focus-within::after{ opacity:1; }

/* Прелоадер у правого края, не перекрывает кнопку */
.dgwt-wcas-preloader{ right: calc(var(--wcas-btn) + var(--wcas-gap) + 6px) !important; }
.dgwt-wcas-preloader:before{ border-top-color: var(--fe-accent) !important; }

/* Кнопка открытия мобильного оверлея — прячем на десктопе (она и рисовала «серый круг» сбоку) */
@media (min-width: 768px){
  .dgwt-wcas-enable-mobile-form{ display:none !important; }
}

/* ==============
   Выпадающий список результатов — стекло
   ============== */
.dgwt-wcas-suggestions-wrapp{
  margin-top: 10px !important;
  border-radius: 16px !important;
  background: linear-gradient(180deg, var(--fe-glass-strong), rgba(255,255,255,.04)) !important;
  border: 1px solid var(--fe-stroke-weak) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  box-shadow: 0 18px 40px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.15) !important;
  overflow:hidden;
}
.dgwt-wcas-suggestion{
  padding: 10px 14px !important;
  border-bottom: 1px solid rgba(255,255,255,.06);
  transition: background .18s ease, border-color .18s ease;
}
.dgwt-wcas-suggestion:last-child{ border-bottom:none; }
.dgwt-wcas-suggestion.dgwt-wcas-suggestion-selected,
.dgwt-wcas-suggestion:hover{
  background: rgba(255,255,255,.05) !important;
  border-color: rgba(139,228,255,.25) !important;
}
.dgwt-wcas-suggestion .dgwt-wcas-si{ border-radius: 12px !important; overflow:hidden !important; }
.dgwt-wcas-product-name{ color: var(--fe-text) !important; }
.dgwt-wcas-st, .dgwt-wcas-tax{ color: var(--fe-subtle) !important; }
.dgwt-wcas-suggestion .price{ color:#eaf7ff !important; font-weight:700; }

.dgwt-wcas-suggestions-footer{
  padding: 10px 12px !important;
  border-top:1px solid rgba(255,255,255,.08) !important;
  background: rgba(255,255,255,.03) !important;
}
.dgwt-wcas-suggestions-footer a{
  color: var(--fe-text) !important; text-decoration:none !important;
}
.dgwt-wcas-suggestions-footer a:hover{
  color: var(--fe-text) !important; border-bottom: 1px solid var(--fe-accent);
}

/* Мобильный оверлей — тот же тёмный стеклянный фон */
.dgwt-wcas-overlay-mobile{
  background: radial-gradient(120% 120% at 50% 0%, rgba(17,34,85,.75) 0%, rgba(10,16,30,.92) 60%) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
}

/* Меньше анимаций — уважаем настройку системы */
@media (prefers-reduced-motion: reduce){
  .dgwt-wcas-search-wrapp *{ transition:none !important; }
}




/* ======================================================
   SINGLE PRODUCT — стеклянные панели, табы, чипсы атрибутов
   (фикc: без серого овала вокруг размеров)
   ====================================================== */

:root{
  --sp-radius:22px;
  --sp-pad-x:18px;
  --sp-pad-y:14px;
  --sp-thumb-radius:16px;
}

/* 1) Стеклянная панель */
body.single-product .glass-panel{
  position:relative;
  border-radius:var(--sp-radius);
  background:linear-gradient(135deg,var(--glass), rgba(255,255,255,.02));
  border:1px solid var(--border);
  backdrop-filter:saturate(120%) blur(8px);
  -webkit-backdrop-filter:saturate(120%) blur(8px);
  box-shadow:0 12px 30px rgba(0,0,0,.28);
  padding:var(--sp-pad-y) var(--sp-pad-x);
  overflow:hidden;
}
body.single-product .glass-panel::before{
  content:""; position:absolute; inset:-14px; border-radius:calc(var(--sp-radius) + 4px);
  pointer-events:none; opacity:0;
  background: radial-gradient(120% 120% at 50% 10%,
              rgba(139,228,255,.20) 0%, rgba(139,228,255,.08) 35%,
              rgba(139,228,255,.04) 55%, transparent 70%);
  filter: blur(14px);
  transition: opacity .18s ease, filter .18s ease;
  z-index:0;
}
body.single-product .glass-panel::after{
  content:""; position:absolute; inset:-1px; border-radius:var(--sp-radius);
  pointer-events:none; opacity:0; z-index:1;
  box-shadow:0 0 0 1px rgba(139,228,255,.35), 0 0 0 8px rgba(139,228,255,.08);
  transition:opacity .18s ease;
}
body.single-product .glass-panel:hover,
body.single-product .glass-panel:focus-within{ transform:translateY(-2px); }
body.single-product .glass-panel:hover::before,
body.single-product .glass-panel:focus-within::before{ opacity:1; filter:blur(16px); }
body.single-product .glass-panel:hover::after,
body.single-product .glass-panel:focus-within::after{ opacity:1; }

/* 2) Основные блоки single product — стекло */
body.single-product :is(.product .woocommerce-product-gallery,
                        .product .summary.entry-summary,
                        .woocommerce-tabs){
  position:relative;
  border-radius:var(--sp-radius);
  background:linear-gradient(135deg,var(--glass), rgba(255,255,255,.02));
  border:1px solid var(--border);
  backdrop-filter:saturate(120%) blur(8px);
  -webkit-backdrop-filter:saturate(120%) blur(8px);
  box-shadow:0 12px 30px rgba(0,0,0,.28);
  padding:var(--sp-pad-y) var(--sp-pad-x);
  overflow:hidden;
}
body.single-product :is(.product .woocommerce-product-gallery,
                        .product .summary.entry-summary,
                        .woocommerce-tabs)::before,
body.single-product :is(.product .woocommerce-product-gallery,
                        .product .summary.entry-summary,
                        .woocommerce-tabs)::after{
  content:""; position:absolute; pointer-events:none; border-radius:var(--sp-radius);
}
body.single-product :is(.product .woocommerce-product-gallery,
                        .product .summary.entry-summary,
                        .woocommerce-tabs)::before{
  inset:-14px; opacity:0; z-index:0;
  background: radial-gradient(120% 120% at 50% 10%,
              rgba(139,228,255,.20) 0%, rgba(139,228,255,.08) 35%,
              rgba(139,228,255,.04) 55%, transparent 70%);
  filter: blur(14px); transition:opacity .18s, filter .18s;
}
body.single-product :is(.product .woocommerce-product-gallery,
                        .product .summary.entry-summary,
                        .woocommerce-tabs)::after{
  inset:-1px; opacity:0; z-index:1;
  box-shadow:0 0 0 1px rgba(139,228,255,.35), 0 0 0 8px rgba(139,228,255,.08);
  transition:opacity .18s;
}
body.single-product :is(.product .woocommerce-product-gallery,
                        .product .summary.entry-summary,
                        .woocommerce-tabs):hover::before,
body.single-product :is(.product .woocommerce-product-gallery,
                        .product .summary.entry-summary,
                        .woocommerce-tabs):focus-within::before{ opacity:1; filter:blur(16px); }
body.single-product :is(.product .woocommerce-product-gallery,
                        .product .summary.entry-summary,
                        .woocommerce-tabs):hover::after,
body.single-product :is(.product .woocommerce-product-gallery,
                        .product .summary.entry-summary,
                        .woocommerce-tabs):focus-within::after{ opacity:1; }

/* 3) Галерея */
body.single-product .woocommerce-product-gallery__image img{ border-radius:var(--sp-thumb-radius); }
body.single-product .flex-control-thumbs li img{
  border-radius:12px; transition:box-shadow .18s, transform .12s;
}
body.single-product .flex-control-thumbs li img:hover{
  box-shadow:0 0 0 1px rgba(139,228,255,.35), 0 10px 22px rgba(139,228,255,.10);
  transform:translateY(-1px);
}

/* 4) Заголовок, цена, мета */
body.single-product .product_title{ margin:.2rem 0 .4rem; color:var(--text); }
body.single-product .summary .price{
  color:#eaf7ff !important; font-weight:800; font-size:clamp(20px,2.2vw,28px);
}
body.single-product .product_meta{ color:var(--text-2); font-size:14px; opacity:.9; }
body.single-product .product_meta a{ color:var(--fe-text); text-decoration:none; }
body.single-product .product_meta a:hover{ color:#fff; }

/* 5) Кнопки — стеклянные пилюли */
body.single-product :is(.single_add_to_cart_button, a.button, button.button, .elementor-button){
  background: linear-gradient(180deg, var(--fe-glass-strong), rgba(255,255,255,.04)) !important;
  color: var(--fe-text) !important;
  border: 1px solid var(--fe-stroke) !important;
  border-radius: 9999px !important;
  padding: .6rem 1rem !important;
  text-decoration: none !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 8px 18px rgba(0,0,0,.22) !important;
  transition: border-color .18s, box-shadow .18s, transform .12s, background .18s !important;
  line-height:1.2 !important;
}
body.single-product :is(.single_add_to_cart_button, a.button, button.button, .elementor-button):hover,
body.single-product :is(.single_add_to_cart_button, a.button, button.button, .elementor-button):focus-visible{
  border-color: var(--fe-accent) !important;
  box-shadow: inset 0 0 0 1px rgba(139,228,255,.35), 0 12px 26px rgba(139,228,255,.12) !important;
  transform: translateY(-1px); outline:none;
}

/* 6) Табы (Детали/Отзывы) — стеклянные «пилюли», перекрываем Elementor */
body.single-product .woocommerce-tabs :is(ul.tabs, .wc-tabs){
  display:flex !important; gap:10px !important; margin:0 0 12px 0 !important; padding:0 !important;
  border:none !important; background:transparent !important; box-shadow:none !important;
}
body.single-product .woocommerce-tabs :is(ul.tabs, .wc-tabs)::before{ display:none !important; }
body.single-product .woocommerce-tabs :is(ul.tabs, .wc-tabs) li{
  margin:0 !important; padding:0 !important; background:transparent !important; border:none !important;
}
body.single-product .woocommerce-tabs :is(ul.tabs, .wc-tabs) li::before,
body.single-product .woocommerce-tabs :is(ul.tabs, .wc-tabs) li::after{ display:none !important; }

body.single-product .woocommerce-tabs :is(ul.tabs, .wc-tabs) li a{
  display:inline-flex !important; align-items:center !important; gap:8px !important;
  padding:8px 12px !important; border-radius:9999px !important; text-decoration:none !important;
  background:linear-gradient(180deg,var(--fe-glass-strong),rgba(255,255,255,.04)) !important;
  border:1px solid var(--fe-stroke) !important; color:var(--fe-text) !important;
  backdrop-filter:blur(10px) !important; -webkit-backdrop-filter:blur(10px) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.25), 0 10px 24px rgba(0,0,0,.25) !important;
  transition:border-color .18s, box-shadow .18s, background .18s !important;
}
body.single-product .woocommerce-tabs :is(ul.tabs, .wc-tabs) li.active a,
body.single-product .woocommerce-tabs :is(ul.tabs, .wc-tabs) li a:hover,
body.single-product .woocommerce-tabs :is(ul.tabs, .wc-tabs) li a:focus-visible{
  border-color:var(--fe-accent) !important;
  box-shadow:inset 0 0 0 1px rgba(139,228,255,.35), 0 12px 26px rgba(139,228,255,.10) !important;
  outline:none !important;
}
body.single-product .woocommerce-Tabs-panel{
  background:transparent !important; border:none !important; padding:0 !important; color:var(--fe-text);
}

/* 7) Таблица атрибутов — стекло */
body.single-product table.shop_attributes{
  width:100%; border-collapse:separate; border-spacing:0; overflow:hidden;
  border:1px solid var(--fe-stroke-weak); border-radius:12px;
  background:rgba(255,255,255,.04);
}
body.single-product table.shop_attributes th,
body.single-product table.shop_attributes td{
  padding:10px 12px; border-bottom:1px solid rgba(255,255,255,.06);
}
body.single-product table.shop_attributes th{
  width:28%; color:#dfe8ff; font-weight:700; background:rgba(255,255,255,.03);
}
body.single-product table.shop_attributes tr:last-child th,
body.single-product table.shop_attributes tr:last-child td{ border-bottom:none; }

/* 7.1) Чипсы атрибутов
   — скрываем фон контейнера <p>, оставляем только отдельные чипсы-ссылки */
body.single-product .woocommerce-product-attributes-item__value p{
  display:flex; flex-wrap:wrap; gap:.5rem; align-items:center;
  margin:0; font-size:0;                /* прячем запятые как текстовые узлы */
  background:none !important;           /* ← убираем серый овал */
  border:0 !important; padding:0 !important; border-radius:0 !important;
}
body.single-product .woocommerce-product-attributes-item__value p > a{
  font-size:14px;                        /* возвращаем размер для самих ссылок */
  display:inline-flex; align-items:center; justify-content:center;
  padding:.32rem .62rem; border-radius:9999px; text-decoration:none;
  color:var(--fe-text);
  background: rgba(255,255,255,.07);
  border:1px solid var(--border);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.18);
  transition: background .15s ease, border-color .15s ease, transform .1s ease, box-shadow .18s ease;
}
body.single-product .woocommerce-product-attributes-item__value p > a:hover,
body.single-product .woocommerce-product-attributes-item__value p > a:focus-visible{
  border-color: var(--fe-accent);
  box-shadow: inset 0 0 0 1px rgba(139,228,255,.35), 0 12px 26px rgba(139,228,255,.10);
  transform: translateY(-1px);
  outline:none;
}

/* (если где-то останется простой текст без ссылок — покажем его как есть) */

/* 8) Ровные промежутки и адаптив */
body.single-product .summary .elementor-widget{ margin-bottom:.6rem; }
@media (max-width: 1024px){
  body.single-product :is(.product .woocommerce-product-gallery,
                          .product .summary.entry-summary,
                          .woocommerce-tabs,
                          .glass-panel){
    padding:12px 14px;
  }
}
@media (prefers-reduced-motion: reduce){
  body.single-product *{ transition:none !important; animation:none !important; }
}



/* =======================================================
   MOBILE/TABLET PERFORMANCE OVERRIDES
   Отключаем тяжёлое свечение на карточках и фильтрах
   ======================================================= */
@media (max-width: 1024px), (hover: none) and (pointer: coarse){

  /* ---------- Карточки ---------- */
  .loop-card.glass,
  .loop-card.glass > .e-con-inner{
    /* статичное стекло без live-blur */
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: 0 8px 18px rgba(0,0,0,.22);   /* полегче тень */
  }

  /* убираем «ауру» и неоновый кант */
  .loop-card.glass::before,
  .loop-card.glass::after{
    content: none !important;
  }

  /* без подскока на мобилках */
  .loop-card.glass:hover,
  .loop-card.glass:focus-within{
    transform: none !important;
  }

  /* при тапе/фокусе — только аккуратная рамка */
  .loop-card.glass:active > .e-con-inner,
  .loop-card.glass:focus-within > .e-con-inner{
    background: linear-gradient(135deg,var(--glass), rgba(255,255,255,.02)) !important;
    border-color: var(--fe-accent) !important;
    box-shadow: none !important;
  }

  /* ---------- Фильтры (Filter Everything) ---------- */
  .wpc-filters-section{
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  /* сами «пилюли» — без ауры и тяжёлых теней */
  .wpc-filters-section li[class*="wpc-term"] label{
    box-shadow: inset 0 1px 0 rgba(255,255,255,.20),
                0 6px 14px rgba(0,0,0,.18) !important; /* облегчили */
  }
  .wpc-filters-section li[class*="wpc-term"] label::after{
    content:none !important; /* убираем неоновое облако */
  }
  /* hover на тачах не нужен: оставляем только border при тапе/checked */
  .wpc-filters-section li[class*="wpc-term"] label:hover{
    border-color: var(--fe-stroke) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.20),
                0 6px 14px rgba(0,0,0,.18) !important;
  }
  .wpc-filters-section li[class*="wpc-term"] > input:checked + label,
  .wpc-filters-section li[class*="wpc-term"] label:has(> input:checked){
    border-color: var(--fe-accent) !important;
    box-shadow: none !important;   /* только контур */
  }

  /* ---------- Чипсы выбранных фильтров (верхняя строка) ---------- */
  ul.wpc-filter-chips-list > li.wpc-filter-chip > :is(a,span){
    /* чуть легче тени */
    box-shadow: inset 0 1px 0 rgba(255,255,255,.20),
                0 6px 14px rgba(0,0,0,.18) !important;
  }
  ul.wpc-filter-chips-list > li.wpc-filter-chip > :is(a,span):hover{
    /* на тачах hover не важен; безопасный контур оставить можно */
    box-shadow: inset 0 0 0 1px rgba(139,228,255,.30),
                0 8px 18px rgba(139,228,255,.08) !important;
  }
}

/* Если у пользователя системная опция "меньше анимаций" —
   тоже используем облегчённую схему, даже на десктопе */
@media (prefers-reduced-motion: reduce){
  .loop-card.glass::before,
  .loop-card.glass::after{ content:none !important; }
  .loop-card.glass,
  .loop-card.glass > .e-con-inner{
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
  }
}


/* =======================================================
   MOBILE/TABLET COMPACT CARDS
   Делаем карточки короче: без equal-height и большого зазора
   ======================================================= */
@media (max-width: 1024px), (hover: none) and (pointer: coarse){

  /* 1) Отключаем принудительную растяжку по высоте */
  .e-loop__container .e-loop-item{ display:block !important; }
  .e-loop__container .e-loop-item > .elementor-element{ display:block !important; }
  .loop-card.glass{ height:auto !important; }
  .loop-card.glass > .e-con-inner{ height:auto !important; }

  /* 2) Футер (цена + кнопка) — больше не «прижат к дну» */
  .loop-footer{
    margin-top:.6rem !important;   /* вместо margin-top:auto; */
    padding-top:.25rem !important;
  }

  /* 3) Уменьшаем вертикальные зазоры внутри карточки */
  .loop-body{ gap:6px !important; }
  .wc-attr-row{ margin:.25rem 0 0 !important; }
  .wc-attr-chips{ gap:.28rem !important; }
  .chip,.chip-link{
    padding:.26rem .5rem !important;
    font-size:12px !important;
  }

  /* 4) Заголовок — без фиксированного min-height */
  .loop-body .elementor-heading-title{
    min-height:0 !important;
    margin-top:.4rem !important;
    /* если хочешь ещё компактнее — раскомментируй ↓
    -webkit-line-clamp:1 !important;  */
  }

  /* 5) (опционально) хочешь ещё короче — сделай фото 4:3
     раскомментируй строки ниже. По умолчанию оставляю квадрат.
  */
  /* .loop-thumb{ aspect-ratio:4/3 !important; } */
}


/* =======================================================
   MOBILE/TABLET — tighter card spacing (меньше зазоров)
   ======================================================= */
@media (max-width: 1024px), (hover: none) and (pointer: coarse){

  /* Уменьшаем межстрочный зазор в Loop Grid */
  .e-loop__container{
    row-gap: 12px !important;
    gap: 12px !important;
    /* на всякий — для тем/виджетов, что используют CSS-переменные */
    --grid-row-gap: 12px !important;
    --grid-column-gap: 12px !important;
  }

  /* Снимаем лишние внешние отступы у айтема и самой карточки */
  .e-loop__container .e-loop-item{
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
  }
  .e-loop__container .e-loop-item:last-child{ margin-bottom: 0 !important; }

  .loop-card.glass{
    margin: 0 !important;            /* чтобы Elementor не добавил свой mb */
  }
  .loop-card.glass > .e-con-inner{
    /* немного компактнее внутри, чтобы визуально «схлопнуть» низ */
    padding-bottom: calc(var(--card-pad-y) - 4px) !important;
  }
}

/* Иконки в ряд (мобилка) */
.mobile-bar{ display:flex; gap:12px; padding:8px 12px; }
.mobile-bar .mb-icon .elementor-button,
.mobile-bar .elementor-button{
  padding:.45rem .6rem; border-radius:14px;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.12);
  backdrop-filter:saturate(120%) blur(6px); -webkit-backdrop-filter:saturate(120%) blur(6px);
}
.mobile-bar .elementor-button .elementor-button-icon{ font-size:22px; }

/* Off-canvas (оба) */
.oc-drawer{
  position:fixed; top:0; height:100vh; width:85vw; max-width:420px;
  z-index:10001; padding:18px; color:#fff; overflow:auto;
  background:linear-gradient(135deg,#0B1221,#0E1F4F);
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  backdrop-filter:saturate(120%) blur(6px);
  -webkit-backdrop-filter:saturate(120%) blur(6px);
  transform:translateX(0); transition:transform .35s ease;
}
.oc-right{ right:0; border-left:1px solid rgba(255,255,255,.12); border-right:none; transform:translateX(100%); }
.oc-left { left:0;  border-right:1px solid rgba(255,255,255,.12); border-left:none;  transform:translateX(-100%); }

/* Открытие по :target */
#fe-drawer:target{ transform:translateX(0); }
#nav-drawer:target{ transform:translateX(0); }

/* Крестик */
.oc-close{
  position:absolute; top:10px; right:10px; font-size:22px; line-height:1;
  padding:.2rem .6rem; border-radius:9999px; text-decoration:none; color:#fff;
  background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.18);
}

/* Липкий футер */
.oc-footer{
  position:sticky; bottom:0; padding:12px 0; margin-top:12px;
  display:flex; justify-content:space-between; gap:10px;
  border-top:1px solid rgba(255,255,255,.12);
}

/* Оверлей */
.site-overlay{
  position:fixed; inset:0; z-index:10000;
  background:rgba(0,0,0,.45);
  opacity:0; pointer-events:none; transition:opacity .3s ease;
}
.site-overlay__click{ position:absolute; inset:0; display:block; }
:is(#fe-drawer,#nav-drawer):target ~ .site-overlay{ opacity:1; pointer-events:auto; }

/* Прячем мобильный слой на Desktop */
@media (min-width:1025px){
  .mobile-bar,.oc-drawer,.site-overlay{ display:none !important; }
}


/* === Показать чипсы на мобильных, даже когда FE в режиме "Collapsed & expanded" === */
@media (max-width: 1024px){
  /* сам список чипсов */
  .wpc-custom-selected-terms,
  .fe-chips, .fe_chips,
  .wpc-filter-chips,
  [class*="wpc-filter-chips-"]{
    display: flex !important;
    flex-wrap: wrap;
    gap: 10px;
    margin: 10px 0 14px;
    opacity: 1 !important;
    visibility: visible !important;
  }

  /* отдельная пилюля */
  .wpc-filter-chip,
  .fe-chip, .fe_chip{
    display: inline-flex !important;
    align-items: center;
  }

  /* иногда плагин зачем-то скрывает текст или ставит overflow */
  .wpc-custom-selected-terms a{
    display: inline-flex;
    align-items: center;
    overflow: visible;
  }
}

/* — опционально: стилизация под тёмный фон — */
.wpc-custom-selected-terms .wpc-filter-chip a,
.fe-chips .fe-chip a,
.fe_chips .fe_chip a{
  padding: .35rem .7rem;
  border-radius: 9999px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.18);
  color: #fff;
  line-height: 1.1;
}
.wpc-custom-selected-terms .wpc-filter-chip a:hover{ filter: brightness(1.1); }




/* =======================================================
   ARCHIVE PAGE — mobile bar & FE "Фильтры" button
   ======================================================= */

/* 1) Иконки "Домой" и "Меню" в блоке .mobile-bar */
.mobile-bar .elementor-widget-button .elementor-button{
  /* стеклянная пилюля */
  background: linear-gradient(180deg, var(--fe-glass-strong), rgba(255,255,255,.04)) !important;
  color: var(--fe-text) !important;
  border: 1px solid var(--fe-stroke) !important;
  border-radius: 9999px !important;
  text-decoration: none !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 8px 18px rgba(0,0,0,.22) !important;
  transition: border-color .18s, box-shadow .18s, transform .12s, background .18s !important;

  /* базовые размеры: удобно и для иконок, и для текста */
  padding: .55rem .9rem !important;
  line-height: 1 !important;
}

/* Иконка — берём цвет кнопки */
.mobile-bar .elementor-widget-button .elementor-button .elementor-button-icon,
.mobile-bar .elementor-widget-button .elementor-button i,
.mobile-bar .elementor-widget-button .elementor-button svg{
  color: currentColor !important;
  fill: currentColor !important;
}

/* Если кнопку используем ТОЛЬКО с иконкой — делаем идеальный кружок */
@supports .elementor-kit-19(a:has(span)){
  .mobile-bar .elementor-widget-button .elementor-button:has(.elementor-button-icon):not(:has(.elementor-button-text:not(:empty))){
    width: 44px !important; height: 44px !important; padding:0 !important;
    display:inline-flex !important; align-items:center; justify-content:center;
  }
}

/* Ховер / фокус */
.mobile-bar .elementor-widget-button .elementor-button:hover,
.mobile-bar .elementor-widget-button .elementor-button:focus-visible{
  border-color: var(--fe-accent) !important;
  box-shadow: inset 0 0 0 1px rgba(139,228,255,.35), 0 12px 26px rgba(139,228,255,.12) !important;
  transform: translateY(-1px);
  outline:none !important;
}
.mobile-bar .elementor-widget-button .elementor-button:active{
  transform: translateY(0) !important;
  box-shadow: inset 0 0 0 1px rgba(139,228,255,.25), 0 8px 18px rgba(139,228,255,.08) !important;
}

/* 2) Filter Everything — кнопка "Фильтры" */
.wpc-open-close-filters-container .wpc-open-close-filters-button{
  display:inline-flex; align-items:center; gap:8px;
  padding:8px 12px;
  border-radius:9999px;
  text-decoration:none !important;
  color: var(--fe-text) !important;

  background: linear-gradient(180deg, var(--fe-glass-strong), rgba(255,255,255,.04)) !important;
  border: 1px solid var(--fe-stroke) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 8px 18px rgba(0,0,0,.22) !important;
  transition: border-color .18s, box-shadow .18s, transform .12s, background .18s !important;
}
.wpc-open-close-filters-container .wpc-open-close-filters-button .wpc-button-inner{
  display:inline-flex; align-items:center; gap:8px;
}
.wpc-open-close-filters-container .wpc-open-close-filters-button .wpc-icon-html-wrapper{
  display:inline-flex; line-height:0;
}
.wpc-open-close-filters-container .wpc-open-close-filters-button:hover,
.wpc-open-close-filters-container .wpc-open-close-filters-button:focus-visible{
  border-color: var(--fe-accent) !important;
  box-shadow: inset 0 0 0 1px rgba(139,228,255,.35), 0 12px 26px rgba(139,228,255,.10) !important;
  transform: translateY(-1px);
  outline:none !important;
}
.wpc-open-close-filters-container .wpc-open-close-filters-button:active{
  transform: translateY(0) !important;
}

/* Cчётчики рядом с текстом (если включены) */
.wpc-open-close-filters-container .wpc-open-close-filters-button .wpc-count{
  margin-left:4px; font-size:12px; opacity:.85;
}

/* 3) Лайт-оверрайды для мобилок: легче тени, без лишнего blur */
@media (max-width: 1024px), (hover:none) and (pointer:coarse){
  .mobile-bar .elementor-widget-button .elementor-button,
  .wpc-open-close-filters-container .wpc-open-close-filters-button{
    backdrop-filter:none !important;
    -webkit-backdrop-filter:none !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.20), 0 6px 14px rgba(0,0,0,.18) !important;
  }
  .mobile-bar .elementor-widget-button .elementor-button:hover,
  .mobile-bar .elementor-widget-button .elementor-button:focus-visible,
  .wpc-open-close-filters-container .wpc-open-close-filters-button:hover,
  .wpc-open-close-filters-container .wpc-open-close-filters-button:focus-visible{
    /* на тачах — только аккуратный контур */
    box-shadow: inset 0 0 0 1px rgba(139,228,255,.30), 0 8px 18px rgba(139,228,255,.08) !important;
    transform:none !important;
  }
}

/* =======================================================
   Filter Everything — кнопка открытия/закрытия фильтров
   ======================================================= */

/* сама кнопка (и на всякий — прямой селектор без контейнера) */
.wpc-filters-open-button-container .wpc-open-close-filters-button,
.wpc-open-close-filters-button{
  display:inline-flex; align-items:center; gap:8px;
  padding:8px 12px;
  border-radius:9999px;
  text-decoration:none !important;
  color: var(--fe-text) !important;

  background: linear-gradient(180deg, var(--fe-glass-strong), rgba(255,255,255,.04)) !important;
  border: 1px solid var(--fe-stroke) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 8px 18px rgba(0,0,0,.22) !important;
  transition: border-color .18s, box-shadow .18s, transform .12s, background .18s !important;
}

/* внутренности кнопки */
.wpc-open-close-filters-button .wpc-button-inner{
  display:inline-flex; align-items:center; gap:8px;
}
.wpc-open-close-filters-button .wpc-filters-button-text{ color:inherit; }

/* иконка плагина (svg/«полоски») — берёт текущий цвет */
.wpc-open-close-filters-button .wpc-icon-html-wrapper{ display:inline-flex; line-height:0; }
.wpc-open-close-filters-button .wpc-icon-html-wrapper svg{ width:16px; height:16px; fill:currentColor !important; }
.wpc-open-close-filters-button [class*="wpc-icon-line"]{
  display:inline-block; width:12px; height:2px; border-radius:2px;
  background: currentColor; opacity:.9;
}

/* Hover / focus */
.wpc-open-close-filters-button:hover,
.wpc-open-close-filters-button:focus-visible{
  border-color: var(--fe-accent) !important;
  box-shadow: inset 0 0 0 1px rgba(139,228,255,.35), 0 12px 26px rgba(139,228,255,.10) !important;
  transform: translateY(-1px);
  outline:none !important;
}
/* Активно открыта (класс может исчезать/меняться, поэтому просто подстрахуем обе) */
.wpc-open-close-filters-button.wpc-opened,
.wpc-open-close-filters-button.wpc-open {
  border-color: var(--fe-accent) !important;
}

/* Счётчик рядом с текстом */
.wpc-open-close-filters-button .wpc-count{
  margin-left:6px; font-size:12px; opacity:.85;
}

/* Лёгкая версия на мобайле/планшете (быстрая) */
@media (max-width:1024px), (hover:none) and (pointer:coarse){
  .wpc-open-close-filters-button{
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.20),
                0 6px 14px rgba(0,0,0,.18) !important;
  }
  .wpc-open-close-filters-button:hover,
  .wpc-open-close-filters-button:focus-visible{
    box-shadow: inset 0 0 0 1px rgba(139,228,255,.30),
                0 8px 18px rgba(139,228,255,.08) !important;
    transform:none !important;
  }
}


/* Filter Everything — кнопка без иконки */
.wpc-open-close-filters-button .wpc-icon-html-wrapper,
.wpc-open-close-filters-button [class*="wpc-icon-line"]{
  display:none !important;           /* прячем пиктограмму полностью */
}

.wpc-open-close-filters-button .wpc-button-inner{
  gap:0 !important;                  /* без зазора под отсутствующую иконку */
}
.wpc-open-close-filters-button{
  padding:10px 16px !important;      /* чуть комфортнее без иконки */
  min-height:40px;                   /* стабильная высота */
}
.wpc-open-close-filters-button .wpc-filters-button-text{
  display:inline-block; line-height:1.2; /* аккуратный текст */
}


/* Базово: без свечения, плавный переход */
.logo-glow img{
  display:block;
  transition: filter .25s ease;
  will-change: filter;
}

/* Свечение по альфа-контурy PNG/SVG — drop-shadow повторяется слоями */
@media (hover:hover){
  .logo-glow:hover img{
    filter:
      drop-shadow(0 0 10px rgba(139,228,255,.45))
      drop-shadow(0 0 22px rgba(139,228,255,.22))
      drop-shadow(0 0 40px rgba(139,228,255,.12));
  }
}

/* уважение системной настройки "меньше анимаций" */
@media (prefers-reduced-motion:reduce){
  .logo-glow img{ transition:none !important; }
}

/* Фолбэк, если класс добавить неудобно:
   попробуем поймать типичные селекторы логотипа в теме/Elementor */
@media (hover:hover){
  :is(.elementor-widget-theme-site-logo,
      .site-branding,
      .elementor-widget-image) :is(img.custom-logo, .custom-logo){
    transition: filter .25s ease;
  }
  :is(.elementor-widget-theme-site-logo,
      .site-branding,
      .elementor-widget-image):hover :is(img.custom-logo, .custom-logo){
    filter:
      drop-shadow(0 0 10px rgba(139,228,255,.45))
      drop-shadow(0 0 22px rgba(139,228,255,.22))
      drop-shadow(0 0 40px rgba(139,228,255,.12));
  }
}


/* =======================================================
   NAV MENU (Elementor) — стеклянный неоновый underline + бургер
   ======================================================= */

/* Базовый цвет ссылок */
.elementor-nav-menu--main .elementor-item{
  position:relative;
  color:var(--fe-text) !important;
  text-decoration:none !important;
  padding:.45rem .75rem;            /* аккуратные поля вокруг текста */
  transition:color .18s ease;
}

/* Неоновая подчеркивающая линия по центру (hover/active) */
.elementor-nav-menu--main .elementor-item::after{
  content:"";
  position:absolute; left:50%; bottom:-6px; transform:translateX(-50%) scaleX(0);
  width:72%; height:2px; border-radius:2px;
  background: linear-gradient(90deg, transparent 0%,
    var(--fe-accent) 35%, var(--fe-accent) 65%, transparent 100%);
  box-shadow: 0 0 6px rgba(139,228,255,.45), 0 0 12px rgba(139,228,255,.18);
  transition: transform .2s ease;
  pointer-events:none;
}

/* hover / focus — проявляем линию */
.elementor-nav-menu--main .elementor-item:hover,
.elementor-nav-menu--main .elementor-item:focus-visible{
  color:#fff !important;
  outline:none;
}
.elementor-nav-menu--main .elementor-item:hover::after,
.elementor-nav-menu--main .elementor-item:focus-visible::after{
  transform:translateX(-50%) scaleX(1);
}

/* Текущая страница — линия всегда видна */
.elementor-nav-menu--main .elementor-item.elementor-item-active::after,
.elementor-nav-menu--main .current-menu-item > .elementor-item::after,
.elementor-nav-menu--main .current_page_item > .elementor-item::after,
.elementor-nav-menu--main .current-menu-ancestor > .elementor-item::after{
  transform:translateX(-50%) scaleX(1);
}

/* Отключаем встроенную «underline pointer» Elementor, чтобы не дублировалась */
.elementor-nav-menu--main.e--pointer-underline .elementor-item:after{
  content:none !important;
}

/* =============== Бургер-тоггл (кнопка меню) — стеклянная «пилюля» =============== */
.elementor-menu-toggle{
  display:inline-flex; align-items:center; justify-content:center;
  width:44px; height:44px; border-radius:9999px;
  color:var(--fe-text);
  background: linear-gradient(180deg, var(--fe-glass-strong), rgba(255,255,255,.04));
  border:1px solid var(--fe-stroke);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 8px 18px rgba(0,0,0,.22);
  transition: border-color .18s, box-shadow .18s, transform .12s;
  cursor:pointer;
}
.elementor-menu-toggle:hover,
.elementor-menu-toggle:focus-visible{
  border-color:var(--fe-accent);
  box-shadow: inset 0 0 0 1px rgba(139,228,255,.35), 0 12px 26px rgba(139,228,255,.10);
  transform: translateY(-1px);
  outline:none;
}

/* =============== Дропдаун (мобильное меню) =============== */
.elementor-nav-menu--dropdown{
  border-radius:14px;
  background: linear-gradient(180deg, var(--fe-glass-strong), rgba(255,255,255,.04));
  border:1px solid var(--fe-stroke-weak);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 18px 40px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.15);
  overflow:hidden;
  padding:.35rem .25rem;
}
.elementor-nav-menu--dropdown .elementor-item{
  display:block; padding:.6rem .8rem; border-radius:10px;
}
.elementor-nav-menu--dropdown .elementor-item:hover,
.elementor-nav-menu--dropdown .elementor-item:focus-visible{
  background: rgba(255,255,255,.06);
  outline:none;
}

/* =============== Мобильные оптимизации (без тяжёлых blur) =============== */
@media (max-width:1024px), (hover:none) and (pointer:coarse){
  .elementor-nav-menu--main .elementor-item::after{
    /* без сильного свечения — только линия */
    box-shadow:none;
  }
  .elementor-nav-menu--dropdown{
    backdrop-filter:none; -webkit-backdrop-filter:none;
    box-shadow: 0 10px 22px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.12);
  }
  .elementor-menu-toggle{
    backdrop-filter:none; -webkit-backdrop-filter:none;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.20), 0 6px 14px rgba(0,0,0,.18);
    transform:none;
  }
}


/* =======================================================
   NAV MENU — стеклянные «пилюли» и неоновый hover
   Для виджета Elementor Nav Menu (горизонталь + дропдаун)
   ======================================================= */

/* горизонтальное меню: делаем пробелы между пунктами */
.elementor-nav-menu--main .elementor-nav-menu{
  display:flex; gap:10px;
}

/* базовый вид пункта */
.elementor-nav-menu--main .elementor-item{
  position:relative;
  display:inline-flex; align-items:center; justify-content:center;
  padding:8px 14px;
  border-radius:9999px;
  color:var(--fe-text) !important;
  text-decoration:none !important;

  background:linear-gradient(180deg,var(--fe-glass-strong),rgba(255,255,255,.04));
  border:1px solid var(--fe-stroke);
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 8px 18px rgba(0,0,0,.22);
  transition:border-color .18s, box-shadow .18s, transform .12s, background .18s, color .18s;
}

/* убираем стандартный "pointer underline" у Elementor */
.elementor-nav-menu--main.e--pointer-underline .elementor-item:after,
.elementor-nav-menu--main .elementor-item:after{ content:none !important; }

/* hover / focus / active — неоновый контур */
.elementor-nav-menu--main .elementor-item:hover,
.elementor-nav-menu--main .elementor-item:focus-visible,
.elementor-nav-menu--main .elementor-item.elementor-item-active,
.elementor-nav-menu--main .current-menu-item > .elementor-item,
.elementor-nav-menu--main .current_page_item > .elementor-item,
.elementor-nav-menu--main .current-menu-ancestor > .elementor-item{
  border-color:var(--fe-accent) !important;
  box-shadow: inset 0 0 0 1px rgba(139,228,255,.35), 0 12px 26px rgba(139,228,255,.10);
  color:#fff !important;
  transform:translateY(-1px);
  outline:none;
}

/* =========================
   Дропдаун/мобильное меню
   ========================= */
.elementor-nav-menu--dropdown{
  border-radius:14px;
  background:linear-gradient(180deg,var(--fe-glass-strong),rgba(255,255,255,.04));
  border:1px solid var(--fe-stroke-weak);
  backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px);
  box-shadow:0 18px 40px rgba(0,0,0,.35), inset 0 1px 0 rgba(255,255,255,.15);
  padding:.35rem .25rem;
  overflow:hidden;
}
.elementor-nav-menu--dropdown .elementor-item{
  display:block;
  margin:6px 8px;
  padding:10px 12px;
  border-radius:12px;
  background:rgba(255,255,255,.05);
  border:1px solid var(--fe-stroke);
  color:var(--fe-text) !important;
  transition:border-color .18s, background .18s, transform .12s, box-shadow .18s;
}
.elementor-nav-menu--dropdown .elementor-item:hover,
.elementor-nav-menu--dropdown .elementor-item:focus-visible,
.elementor-nav-menu--dropdown .current-menu-item > .elementor-item{
  border-color:var(--fe-accent);
  background:rgba(255,255,255,.08);
  box-shadow: inset 0 0 0 1px rgba(139,228,255,.35), 0 10px 22px rgba(139,228,255,.10);
  transform:translateY(-1px);
  outline:none;
}

/* =========================
   Лёгкие мобильные оверрайды
   (без тяжёлого blur, быстрее прокрутка)
   ========================= */
@media (max-width:1024px), (hover:none) and (pointer:coarse){
  .elementor-nav-menu--main .elementor-item{
    backdrop-filter:none; -webkit-backdrop-filter:none;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.20), 0 6px 14px rgba(0,0,0,.18);
    transform:none;
  }
  .elementor-nav-menu--dropdown{
    backdrop-filter:none; -webkit-backdrop-filter:none;
    box-shadow:0 10px 22px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.12);
  }
  .elementor-nav-menu--dropdown .elementor-item{
    box-shadow:none; transform:none;
  }
}


/* SINGLE PRODUCT — сетка для размеров (только для атрибута pa_size) */
body.single-product
.woocommerce-product-attributes-item--attribute_pa_size
.woocommerce-product-attributes-item__value p{
  /* уже есть: display:flex + font-size:0 из прежних стилей */
}

/* смартфоны: 2 колонки одинаковой ширины */
@media (max-width: 480px){
  body.single-product
  .woocommerce-product-attributes-item--attribute_pa_size
  .woocommerce-product-attributes-item__value p{
    display:grid !important;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 8px !important;
    font-size:0;              /* подавляем запятые-текстовые узлы */
  }
  body.single-product
  .woocommerce-product-attributes-item--attribute_pa_size
  .woocommerce-product-attributes-item__value p > a{
    display:block; width:100%; text-align:center;
    font-size:14px !important;  /* возвращаем размер текста чипсам */
    padding:.34rem .56rem !important;
  }
}

/* большие телефоны/планшеты: 3 колонки */
@media (min-width: 481px) and (max-width: 1024px){
  body.single-product
  .woocommerce-product-attributes-item--attribute_pa_size
  .woocommerce-product-attributes-item__value p{
    display:grid !important;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: 10px !important;
    font-size:0;
  }
  body.single-product
  .woocommerce-product-attributes-item--attribute_pa_size
  .woocommerce-product-attributes-item__value p > a{
    display:block; width:100%; text-align:center;
    font-size:14px !important;
    padding:.36rem .6rem !important;
  }
}
/* на десктопе остаётся твой текущий wrap */


/* =======================================================
   FIX: десктопное меню всегда горизонтально
   ======================================================= */
@media (min-width: 1025px){
  /* сам контейнер и UL — в ряд */
  .elementor-nav-menu--main.elementor-nav-menu__container,
  .elementor-nav-menu--main .elementor-nav-menu{
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 12px !important;
  }

  /* элементы списка не тянут на 100% ширины */
  .elementor-nav-menu--main .elementor-nav-menu > li{
    display: inline-flex !important;
    width: auto !important;
    margin: 0 !important;
  }
  .elementor-nav-menu--main .elementor-item{
    display: inline-flex !important;
    width: auto !important;
  }

  /* на десктопе точно скрываем дропдаун-версию (на всякий случай) */
  .elementor-nav-menu--dropdown{
    display: none !important;
  }
}

/* =======================================================
   Filter Everything — единый шрифт (Roboto) + адаптивные размеры
   и корректная раскладка «пилюль» на узких экранах
   ======================================================= */

/* 1) Шрифт Roboto в фильтрах (с fallback'ами) */
.wpc-filters-widget-content,
.wpc-filters-widget-content *{
  font-family: "Roboto", system-ui, -apple-system, "Segoe UI", Arial, "Noto Sans", sans-serif !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Заголовки секций */
.wpc-filter-header{
  font-weight: 600;
  font-size: clamp(12px, 0.95vw, 14px) !important;
  letter-spacing: .02em;
}

/* 2) Пилюли-лейблы: делаем grid 1fr auto, чтобы текст переносился,
      а .wpc-count всегда прилипал справа и не ломал форму */
.wpc-filters-section li[class*="wpc-term"] label{
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  box-sizing: border-box !important;

  /* типографика — адаптивная */
  font-size: clamp(12px, 0.9vw, 14px) !important;
  line-height: 1.25 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;   /* длинные слова не вылезают */
  hyphens: auto !important;
}

/* счётчик всегда во 2-м столбце справа */
.wpc-filters-section .wpc-count{
  grid-column: 2 / 3 !important;
  justify-self: end !important;
  font-weight: 600 !important;
  font-size: clamp(11px, 0.8vw, 12.5px) !important;
  opacity:.9;
}

/* 3) Чекбоксы/радио не смещают сетку и остаются кликабельными */
.wpc-filters-section li[class*="wpc-term"] > input{
  position: absolute !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* 4) Небольшие подстройки на узких десктопах и планшетах */
@media (max-width: 1280px){
  .wpc-filters-section{ padding: 12px !important; }
  .wpc-filters-section li[class*="wpc-term"] label{
    padding: 8px 12px !important;
    gap: 8px !important;
  }
}

/* 5) Дополнительно: убираем горизонтальный скролл внутри блока фильтров */
.wpc-filters-widget-content{
  overflow-x: clip !important;
}

/* =======================================================
   Filter Everything — фикс аккуратных пилюль
   • единый шрифт Roboto
   • адаптивный размер через clamp()
   • никаких странных переносов/дефисов
   • счётчик всегда справа, текст красиво переносится
   ======================================================= */

/* Шрифт и сглаживание */
.wpc-filters-widget-content,
.wpc-filters-widget-content *{
  font-family:"Roboto", system-ui, -apple-system, "Segoe UI", Arial, "Noto Sans", sans-serif !important;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* Заголовки секций */
.wpc-filter-header{
  font-weight:600;
  font-size:clamp(13px, 0.95vw, 15px) !important;
  letter-spacing:.02em;
}

/* Сбрасываем любые странные списочные стили */
.wpc-filters-section li[class*="wpc-term"]{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}

/* Полностью прячем нативные checkbox/radio,
   чтобы слева не торчали точки/квадраты */
.wpc-filters-section li[class*="wpc-term"] > input{
  position:absolute !important;
  left:-9999px !important;
  opacity:0 !important;
  pointer-events:none !important;
}

/* Пилюля-лейбл — безопасная flex-раскладка */
.wpc-filters-section li[class*="wpc-term"] label{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;

  width:100% !important;
  box-sizing:border-box !important;
  padding:10px 14px !important;
  margin:6px 8px 0 0 !important;

  border-radius:9999px !important;
  background:linear-gradient(180deg,var(--fe-glass-strong),rgba(255,255,255,.04)) !important;
  border:1px solid var(--fe-stroke) !important;
  color:var(--fe-text) !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.25), 0 10px 24px rgba(0,0,0,.25) !important;

  /* типографика — адаптивная и аккуратная */
  font-size:clamp(13px, 0.9vw, 15px) !important;
  line-height:1.25 !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;  /* переносим по границе слов/знаков */
  hyphens:none !important;            /* отключаем авто-дефисы */
}

/* Текст тянется, счётчик уезжает вправо */
.wpc-filters-section .wpc-count{
  margin-left:auto !important;
  font-weight:600 !important;
  font-size:clamp(12px, 0.85vw, 13px) !important;
  opacity:.9;
}

/* Hover / focus — без тяжёлого свечения на десктопе тоже аккуратно */
.wpc-filters-section li[class*="wpc-term"] label:hover,
.wpc-filters-section li[class*="wpc-term"] label:focus-visible{
  border-color:var(--fe-accent) !important;
  box-shadow:inset 0 0 0 1px rgba(139,228,255,.35), 0 12px 26px rgba(139,228,255,.10) !important;
  outline:none !important;
}

/* Активные (выбранные) — контур как у темы */
.wpc-filters-section li[class*="wpc-term"] > input:checked + label,
.wpc-filters-section li[class*="wpc-term"] label:has(> input:checked){
  border-color:var(--fe-accent) !important;
  box-shadow:inset 0 0 0 1px rgba(139,228,255,.35), 0 12px 26px rgba(139,228,255,.10) !important;
}

/* Узкие десктопы — чуть компактнее отступы, чтобы всё дышало */
@media (max-width: 1280px){
  .wpc-filters-section{ padding:12px !important; }
  .wpc-filters-section li[class*="wpc-term"] label{
    padding:9px 12px !important;
    gap:8px !important;
  }
}

/* На мобильных уже включена облегчённая схема в твоих оверрайдах */


/* =======================================================
   MOBILE — увеличенные отступы и читаемость в фильтрах
   ======================================================= */
@media (max-width: 480px){
  /* секции фильтров — чуть просторнее */
  .wpc-filters-section{
    padding:16px 16px 12px !important;
    margin-bottom:16px !important;
    border-radius:16px !important;
  }

  /* заголовок секции */
  .wpc-filter-header{
    font-size:15px !important;
    margin-bottom:10px !important;
  }

  /* «пилюли» — больше внутр. отступы и зазор между текстом и счётчиком */
  .wpc-filters-section li[class*="wpc-term"] label{
    padding:12px 16px !important;   /* было меньше */
    gap:12px !important;
    font-size:15px !important;
    margin-top:10px !important;     /* вертикальный интервал между строками */
  }

  /* счётчик — тоже крупнее */
  .wpc-filters-section .wpc-count{
    font-size:14px !important;
  }

  /* поля и слайдер цены — комфортнее пальцем */
  .wpc-filters-section input[type="number"],
  .wpc-filters-section input[type="text"]{
    padding:12px 14px !important;
    font-size:15px !important;
  }
  .wpc-filters-section.wpc-filter-price .ui-slider{ height:8px !important; }
  .wpc-filters-section.wpc-filter-price .ui-slider-handle{ width:18px !important; height:18px !important; top:-7px !important; }
}

/* чуть просторнее и на планшетах */
@media (min-width: 481px) and (max-width: 1024px){
  .wpc-filters-section{ padding:14px 14px 12px !important; }
  .wpc-filters-section li[class*="wpc-term"] label{
    padding:11px 14px !important; gap:10px !important; font-size:14.5px !important;
  }
  .wpc-filters-section .wpc-count{ font-size:13.5px !important; }
}


/* =======================================================
   FIX: Cards spacing (mobile) + equal height (desktop)
   ======================================================= */

/* ---------- MOBILE & TABLET: меньше расстояние между карточками ---------- */
@media (max-width: 1024px), (hover:none) and (pointer:coarse){
  /* схлопываем все возможные источники вертикального зазора */
  .e-loop__container{
    gap: 10px !important;
    row-gap: 10px !important;
    --grid-row-gap: 10px !important;
    --grid-column-gap: 10px !important;
  }
  .e-loop__container .e-loop-item{ margin: 0 !important; padding: 0 !important; }
  .e-loop__container .e-loop-item > .elementor-element{ margin: 0 !important; }
  .loop-card.glass{ margin: 0 !important; }
  /* слегка ужмём внутренний низ */
  .loop-card.glass > .e-con-inner{
    padding-bottom: calc(var(--card-pad-y) - 6px) !important;
  }
  /* футер не прижимаем к низу, чтобы карточка была короче */
  .loop-footer{
    margin-top: .6rem !important;
    padding-top: .25rem !important;
  }
}

/* ---------- DESKTOP: одинаковая высота карточек в строке ---------- */
@media (min-width: 1025px){
  /* каждый айтем строчки — flex-контейнер, чтобы внутренности растягивались */
  .e-loop__container .e-loop-item{ display: flex !important; }
  .e-loop__container .e-loop-item > .elementor-element{
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    margin: 0 !important;        /* убираем случайные mb у Elementor */
  }

  /* карточка растягивается на всю высоту ячейки */
  .loop-card.glass{ height: 100% !important; }
  .loop-card.glass > .e-con-inner{
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
  }

  /* контент тянется, футер прижат к низу — одинаковая высота */
  .loop-body{ flex: 1 1 auto !important; }
  .loop-footer{
    margin-top: auto !important;
    padding-top: var(--footer-pt) !important;
  }
}


/* =======================================================
   MOBILE FIX — минимальные расстояния между карточками
   Схлопываем все источники отступов в Loop Grid
   ======================================================= */
@media (max-width: 1024px), (hover:none) and (pointer:coarse){
  /* сам контейнер лупа: минимальный gap */
  .e-loop__container{
    gap: 8px !important;
    row-gap: 8px !important;
    column-gap: 8px !important;

    /* Elementor-переменные (на всякий случай — он часто их использует) */
    --e-con-grid-row-gap: 8px !important;
    --e-con-grid-column-gap: 8px !important;
    --grid-row-gap: 8px !important;
    --grid-column-gap: 8px !important;
  }

  /* убираем внешние margin/padding у айтема и его первого потомка */
  .e-loop__container .e-loop-item,
  .e-loop__container .e-loop-item > .elementor-element{
    margin: 0 !important;
    padding: 0 !important;
  }
  /* на всякий — обнулим возможные нижние отступы виджетов внутри */
  .e-loop__container .e-loop-item .elementor-element{
    margin-bottom: 0 !important;
  }

  /* сама карточка без внешних полей */
  .loop-card.glass{ margin: 0 !important; }
  /* чуть компактнее низ внутри карточки */
  .loop-card.glass > .e-con-inner{
    padding-bottom: calc(var(--card-pad-y) - 8px) !important;
  }

  /* футер карточки — без авто-прижатия и без лишнего «воздуха» */
  .loop-footer{
    margin-top: .5rem !important;
    padding-top: .25rem !important;
  }

  /* последний элемент в списке — без дополнительного низа */
  .e-loop__container .e-loop-item:last-child{
    margin-bottom: 0 !important;
  }
}

/* =======================================================
   MOBILE HARD FIX — схлопываем ВСЕ системные отступы Elementor
   между луп-айтемами. Работает для Loop Grid/Carousel.
   ======================================================= */
@media (max-width: 1024px), (hover:none) and (pointer:coarse){

  /* 1) Контейнер лупа — явный маленький gap */
  .e-loop__container{
    gap: 8px !important;
    row-gap: 8px !important;
    column-gap: 8px !important;

    /* Elementor variables (на всякий случай) */
    --e-con-grid-row-gap: 8px !important;
    --e-con-grid-column-gap: 8px !important;
    --grid-row-gap: 8px !important;
    --grid-column-gap: 8px !important;
  }

  /* 2) Обнуляем все «системные» отступы у контейнеров айтема */
  .e-loop__container .e-loop-item,
  .e-loop__container .e-loop-item > .elementor-element,
  .e-loop__container .e-loop-item > .elementor-element > .e-con-inner{
    /* переменная Elementor для отступа между виджетами */
    --container-widget-spacing: 0px !important;

    /* margin/padding сверху/снизу, в т.ч. логические */
    margin: 0 !important;
    padding: 0 !important;
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
    padding-block-start: 0 !important;
    padding-block-end: 0 !important;

    /* дополнительные кастомные переменные, которые иногда ставит Elementor */
    --e-con-margin-block-start: 0px !important;
    --e-con-margin-block-end: 0px !important;
    --e-con-margin-inline-start: 0px !important;
    --e-con-margin-inline-end: 0px !important;
  }

  /* 3) Любые виджеты внутри айтема не добавляют свой нижний margin */
  .e-loop__container .e-loop-item .elementor-element{
    margin-bottom: 0 !important;
    margin-block-end: 0 !important;
  }

  /* 4) Сама карточка — без внешних полей; низ внутри чуть компактнее */
  .loop-card.glass{ margin: 0 !important; }
  .loop-card.glass > .e-con-inner{
    padding-bottom: calc(var(--card-pad-y) - 8px) !important;
  }

  /* 5) Футер карточки — минимальный воздух */
  .loop-footer{
    margin-top: .4rem !important;
    padding-top: .2rem !important;
  }
}

/* =======================================================
   MOBILE ULTRA-FIX — убираем системные отступы внутри LOOP ITEM
   (каждый айтем — это .elementor … e-loop-item)
   ======================================================= */
@media (max-width:1024px), (hover:none) and (pointer:coarse){

  /* 1) сам контейнер сетки — маленький gap */
  .e-loop__container{
    gap:8px !important;
    row-gap:8px !important;
    column-gap:8px !important;
    --e-con-grid-row-gap:8px !important;
    --e-con-grid-column-gap:8px !important;
  }

  /* 2) корневой .elementor внутри айтема: обнуляем переменные и отступы */
  .e-loop__container .e-loop-item.elementor{
    --container-widget-spacing: 0px !important; /* это главный источник "дыры" */
    --spacer-size: 0px !important;
    margin:0 !important; padding:0 !important;
  }

  /* 3) убираем margin/padding у первых вложенных секций/контейнеров */
  .e-loop__container .e-loop-item.elementor > .e-con,
  .e-loop__container .e-loop-item.elementor > .elementor-section{
    margin:0 !important; padding:0 !important;
  }
  .e-loop__container .e-loop-item.elementor > .e-con > .e-con-inner{
    padding:0 !important;
  }

  /* 4) виджеты внутри айтема не добавляют нижние отступы */
  .e-loop__container .e-loop-item.elementor .elementor-widget:not(:last-child){
    margin-bottom:0 !important;
  }
  .e-loop__container .e-loop-item.elementor .elementor-element{
    margin:0 !important;
  }

  /* 5) сама карточка — без внешних полей; низ внутри чуть компактнее */
  .loop-card.glass{ margin:0 !important; }
  .loop-card.glass > .e-con-inner{
    padding-bottom: calc(var(--card-pad-y) - 8px) !important;
  }
  .loop-footer{
    margin-top:.4rem !important;
    padding-top:.2rem !important;
  }
}


/* =======================================================
   MOBILE ULTRA-FIX for Elementor Loop Grid spacing
   — схлопываем все источники row-gap/column-gap и системные переменные
   ======================================================= */
@media (max-width:1024px), (hover:none) and (pointer:coarse){
  /* 0) На самом виджете выставим маленькие значения переменных */
  .elementor .elementor-widget-loop-grid{
    --grid-row-gap: 8px !important;
    --grid-column-gap: 8px !important;
    --e-con-grid-row-gap: 8px !important;
    --e-con-grid-column-gap: 8px !important;
  }

  /* 1) Контейнер сетки — принудительно маленький gap */
  .elementor .elementor-widget-loop-grid .e-loop__container,
  .elementor .elementor-widget-loop-grid .elementor-grid,
  .elementor .elementor-loop-container{
    gap: 8px !important;
    row-gap: 8px !important;              /* modern */
    column-gap: 8px !important;
    grid-row-gap: 8px !important;         /* legacy aliases */
    grid-column-gap: 8px !important;
  }

  /* 2) На всякий — если Elementor задаёт inline-style на e-loop__container */
  .elementor .elementor-widget-loop-grid .e-loop__container[style]{
    gap: 8px !important;
    row-gap: 8px !important;
    column-gap: 8px !important;
  }

  /* 3) Сам loop-item и его корневой .elementor внутри — без внешних полей */
  .elementor .e-loop__container .e-loop-item{
    margin: 0 !important;
    padding: 0 !important;
  }
  .elementor .e-loop__container .e-loop-item.elementor{
    --container-widget-spacing: 0px !important;   /* убирает «системный» отступ */
    margin: 0 !important;
    padding: 0 !important;
  }

  /* 4) Вложенные контейнеры/секции внутри item — тоже без внешних полей */
  .elementor .e-loop__container .e-loop-item.elementor > .e-con,
  .elementor .e-loop__container .e-loop-item.elementor > .elementor-section{
    margin: 0 !important;
    padding: 0 !important;
  }
  .elementor .e-loop__container .e-loop-item.elementor > .e-con > .e-con-inner{
    padding: 0 !important;
  }

  /* 5) Любые виджеты внутри item не добавляют нижний margin */
  .elementor .e-loop__container .e-loop-item.elementor .elementor-widget:not(:last-child){
    margin-bottom: 0 !important;
  }

  /* 6) Сама карточка — компактнее низ, чтобы визуально «схлопнуть» место */
  .loop-card.glass{ margin: 0 !important; }
  .loop-card.glass > .e-con-inner{
    padding-bottom: calc(var(--card-pad-y) - 8px) !important;
  }
  .loop-footer{
    margin-top: .4rem !important;
    padding-top: .2rem !important;
  }
}


/* =======================================================
   MOBILE spacing fix — Loop Grid + loop item (template .elementor-454)
   ======================================================= */
@media (max-width:1024px), (hover:none) and (pointer:coarse){

  /* 1) Контейнер сетки виджета: маленький row-gap */
  .elementor .elementor-loop-container.elementor-grid{
    gap:8px !important;
    row-gap:8px !important;
    column-gap:8px !important;
    grid-row-gap:8px !important;
    grid-column-gap:8px !important;
  }

  /* 2) Корневой .elementor каждого айтема (сам loop-item) — без системных отступов */
  .elementor .e-loop__container .e-loop-item.elementor{
    --container-widget-spacing:0px !important;
    margin:0 !important;
    padding:0 !important;
  }

  /* 3) Внутренний контейнер твоего шаблона (.elementor-454 … f4a9fbb):
        полностью убираем внутренние паддинги/гапы,
        чтобы не возникал «внутренний» просвет снизу */
  .elementor-454 .elementor-element.elementor-element-f4a9fbb{
    /* переменные Elementor, которыми задаются отступы */
    --gap: 8px 8px !important;
    --row-gap: 8px !important;
    --column-gap: 8px !important;
    --padding-top: 0px !important;
    --padding-bottom: 0px !important;
    --margin-top: 0px !important;
    --margin-bottom: 0px !important;

    /* на всякий — сам padding/margin свойством */
    padding:0 !important;
    margin:0 !important;
  }

  /* 4) Любые внутренние контейнеры/виджеты в айтеме — без нижнего margin */
  .elementor-454 .elementor-element > .elementor-widget-container{
    margin:0 !important;
  }
  .elementor-454 .elementor-element{
    margin-bottom:0 !important;
  }

  /* 5) Сама карточка — компактнее низ */
  .loop-card.glass{ margin:0 !important; }
  .loop-card.glass > .e-con-inner{
    padding-bottom: calc(var(--card-pad-y) - 8px) !important;
  }
  .loop-footer{
    margin-top:.4rem !important;
    padding-top:.2rem !important;
  }
}




/* FIX: большие отступы между карточками на мобильных */
@media (max-width:1024px){
  /* A) убираем нижний margin у айтемов, оставленный старым блоком */
  .e-loop__container .e-loop-item{ margin:0 !important; padding:0 !important; }

  /* B) ставим единый небольшой gap (можешь изменить 8px на свой вкус) */
  .e-loop__container,
  .elementor .elementor-widget-loop-grid .e-loop__container,
  .elementor .elementor-loop-container{
    gap:8px !important;
    row-gap:8px !important;
    column-gap:8px !important;
    grid-row-gap:8px !important;
    grid-column-gap:8px !important;
  }
  /* на случай inline-стиля от Elementor */
  .elementor .elementor-widget-loop-grid .e-loop__container[style]{
    gap:8px !important; row-gap:8px !important; column-gap:8px !important;
  }

  /* C) убираем внутренний «системный» spacing внутри айтема */
  .e-loop__container .e-loop-item{ --container-widget-spacing:0px !important; }
  .e-loop__container .e-loop-item > .elementor-element,
  .e-loop__container .e-loop-item .elementor-element{
    margin:0 !important;
  }

  /* D) карточка без внешнего margin; слегка поджимаем низ внутри */
  .loop-card.glass{ margin:0 !important; }
  .loop-card.glass > .e-con-inner{
    padding-bottom:calc(var(--card-pad-y) - 8px) !important;
  }
}

/* Mobile menu toggle icon = #EAF2FF */
.elementor-menu-toggle .e-font-icon-svg,
.elementor-menu-toggle .e-font-icon-svg svg,
.elementor-menu-toggle .e-font-icon-svg path,
.elementor-menu-toggle svg,
.elementor-menu-toggle path{
  fill:#eaf2ff !important;
  stroke:#eaf2ff !important;   /* на случай линейных иконок */
  color:#eaf2ff !important;    /* запасной вариант для некоторых сетов */
}

/* Если используется икон-шрифт (eicon/FA) */
.elementor-menu-toggle .eicon,
.elementor-menu-toggle [class*="fa-"]{
  color:#eaf2ff !important;
  --fa-primary-color:#eaf2ff;
  --fa-secondary-color:#eaf2ff;
}

/* Сохраняем цвет при hover/focus/active/expanded */
.elementor-menu-toggle:hover .e-font-icon-svg,
.elementor-menu-toggle:focus-visible .e-font-icon-svg,
.elementor-menu-toggle:active .e-font-icon-svg,
.elementor-menu-toggle[aria-expanded="true"] .e-font-icon-svg{
  fill:#eaf2ff !important;
  stroke:#eaf2ff !important;
}

/* ===== MOBILE FIX: "Размеры" в 2 строки, ничего не обрезается ===== */
@media (max-width: 480px){

  /* строка с заголовком и чипсами: лейбл сверху, чипсы ниже */
  .wc-attr-row{
    display:flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap:.35rem !important;
    margin-top:.45rem !important;
    min-width:0 !important;
  }

  .wc-attr-label{
    margin:0 !important;
    width:100%;
    font-size: clamp(12px, 3.6vw, 14px);
    line-height:1.2;
  }

  /* чипсы — обычный перенос на 2 строки, без скролла */
  .wc-attr-chips{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:.32rem .36rem !important;
    width:100% !important;
    white-space: normal !important;
    overflow: visible !important;
    max-height: none !important;     /* отменяем старые лимиты */
    padding-bottom:0 !important;
    mask-image:none !important;      /* на случай прошлых масок */
  }

  .wc-attr-chips .chip,
  .wc-attr-chips .chip-link{
    flex:0 0 auto !important;
    font-size: clamp(11px, 3.2vw, 13px) !important;
    padding:.26rem .50rem !important;
    border-radius:9999px !important;
  }
}


/* ============================
   MOBILE: размеры = обычный текст, 4 в ряд
   ============================ */
@media (max-width: 480px){

  /* сам блок размеров */
  .loop-card .wc-attr-row{
    display:flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap:.38rem !important;
    margin-top:.5rem !important;
  }

  /* заголовок "Размеры" */
  .loop-card .wc-attr-label{
    margin:0 !important;
    color:#eaf2ff !important;
    font-weight:700 !important;
    font-size:clamp(12px,3.6vw,14px) !important;
    line-height:1.2 !important;
  }

  /* контейнер со значениями */
  .loop-card .wc-attr-chips{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:8px 8px !important;           /* вертикальный x горизонтальный зазор */
    width:100% !important;
    white-space:normal !important;
    overflow:visible !important;
    mask-image:none !important;       /* на случай старых масок */
  }

  /* каждое значение — как текстовый «тайл», 4 в ряд */
  .loop-card .wc-attr-chips .chip,
  .loop-card .wc-attr-chips .chip-link{
    flex:0 0 calc(25% - 8px) !important; /* 4 элемента на строку */
    min-width:0 !important;

    /* убираем «капсулу» */
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
    border-radius:0 !important;
    padding:0 !important;

    /* типографика */
    color:rgba(234,242,255,.92) !important;
    font-weight:500 !important;
    font-size:clamp(11px,3.2vw,13px) !important;
    line-height:1.3 !important;
    text-align:left !important;
    text-decoration:none !important;
  }

  /* лёгкая запятая-разделитель для читабельности (опционально) */
  .loop-card .wc-attr-chips .chip-link:not(:nth-child(4n))::after,
  .loop-card .wc-attr-chips .chip:not(:nth-child(4n))::after{
    content:"";
  }

  /* отключаем любые ховеры на мобилках */
  .loop-card .wc-attr-chips .chip:hover,
  .loop-card .wc-attr-chips .chip-link:hover{
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
    transform:none !important;
  }
}

/* =======================================================
   MOBILE — читаемые размеры в строку (автоперенос по рядам)
   ======================================================= */
@media (max-width: 480px){

  /* контейнер блока размеров */
  .loop-card .wc-attr-row{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: .5rem !important;
    margin-top: .6rem !important;
    text-align: center !important;
  }

  /* заголовок "Размеры" */
  .loop-card .wc-attr-label{
    margin: 0 !important;
    color: #eaf2ff !important;
    font-weight: 700 !important;
    font-size: clamp(12px, 3.6vw, 14px) !important;
    line-height: 1.2 !important;
  }

  /* лента значений — свободный поток, перенос построчно */
  .loop-card .wc-attr-chips{
    display: flex !important;
    flex-wrap: wrap !important;          /* перенос строками */
    justify-content: center !important;
    gap: .38rem .5rem !important;         /* v / h зазор */
    width: 100% !important;
  }

  /* каждый размер — одна строка, без разрывов внутри */
  .loop-card .wc-attr-chips .chip,
  .loop-card .wc-attr-chips .chip-link{
    flex: 0 0 auto !important;            /* больше НИКАКОЙ фиксированной ширины */
    max-width: 100% !important;
    white-space: nowrap !important;       /* не ломаем "26 см" на 3 строки */
    word-break: normal !important;
    hyphens: none !important;

    /* аккуратная «пилюля» под тему */
    padding: .32rem .56rem !important;
    font-size: clamp(11px, 3.2vw, 13px) !important;
    line-height: 1.15 !important;
    color: #eaf2ff !important;
    background: rgba(255,255,255,.06) !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    border-radius: 9999px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.20) !important;
  }

  /* ховеры/эффекты убираем на тач-устройствах */
  .loop-card .wc-attr-chips .chip:hover,
  .loop-card .wc-attr-chips .chip-link:hover{
    transform: none !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.20) !important;
  }
}

/* ================================
   MOBILE GRID FIX (2 колонки, без дыр)
   ================================ */
@media (max-width: 640px){

  /* 1) Сетка: 2 колонки, контролируем отступы между рядами */
  .elementor-loop-container { 
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 12px !important;
    row-gap: 14px !important;
  }

  /* 2) Глушим "Equal height" от Elementor (он ставит inline height) */
  .elementor-loop-container .e-loop-item{
    height: auto !important;       /* ← это убирает огромные пустоты */
    margin: 0 !important;
  }
  /* Внутренний контейнер тянем на всю высоту карточки */
  .elementor-loop-container .e-loop-item > .elementor-element{
    height: 100% !important;
  }

  /* 3) Сама карточка — компактнее */
  .loop-card.glass{ height: auto !important; }
  .loop-card.glass > .e-con-inner{
    padding: 12px 12px 10px !important;
  }
  .loop-body{ gap: 8px !important; }
  .loop-thumb{ border-radius: 12px !important; }

  /* Заголовок — читаемый и без «ломки» на много строк */
  .loop-body .elementor-heading-title{
    font-size: clamp(14px, 3.4vw, 18px) !important;
    line-height: 1.15 !important;
    min-height: 2.3em;              /* чтобы высоты карточек в ряду были ближе */
  }

  /* 4) Размеры — горизонтальные, с переносами и компактными чипами */
  .wc-attr-row{
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: .35rem !important;
    margin: .4rem 0 .2rem !important;
    text-align: center !important;
  }
  .wc-attr-label{
    font-weight: 700 !important;
    font-size: 11px !important;
    letter-spacing: .02em;
    margin: 0 !important;
  }
  .wc-attr-chips{
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: .32rem .32rem !important;
    max-width: 100% !important;
  }
  .wc-attr-chips .chip,
  .wc-attr-chips .chip-link{
    display: inline-flex !important;
    align-items: center !important;
    white-space: nowrap !important;
    padding: .22rem .48rem !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    border-radius: 9999px !important;
    background: rgba(255,255,255,.05) !important;
    border: 1px solid rgba(255,255,255,.18) !important;
  }

  /* Низ карточки — ближе к кнопке/цене */
  .loop-footer{ margin-top: auto !important; padding-top: .3rem !important; }
}


/* ===========================
   Карточки каталога — чипсы размеров: 2 в ряд (mobile)
   =========================== */
@media (max-width: 640px){

  /* контейнер с размерами внутри карточки */
  .loop-card.glass .wc-attr-chips{
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important; /* 2 колонки */
    gap: 6px 8px !important;     /* вертикальный/горизонтальный промежуток */
    width: 100%;
  }

  /* сами "пилюли" делаем меньше и без минимальной ширины */
  .loop-card.glass .wc-attr-chips :is(.chip, .chip-link){
    font-size: clamp(10px, 2.7vw, 12px) !important;
    line-height: 1.15 !important;
    padding: .28rem .48rem !important;
    min-width: 0 !important;
    justify-content: center !important;
    white-space: nowrap;              /* чтобы текст не рвал строки */
  }

  /* чуть компактнее подпись "Размеры" */
  .loop-card.glass .wc-attr-label{
    margin-bottom: .25rem !important;
  }
}

/* ================================
   Карточка товара — компактная версия (mobile)
   ================================ */
@media (max-width: 640px){

  /* ужимаем внутренние отступы и базовые “токены” */
  .loop-card.glass{
    --card-pad-y: 10px;    /* было больше */
    --v-gap: 6px;          /* вертикальный зазор между блоками в теле */
    --footer-pt: .1rem;    /* отступ перед блоком с ценой/кнопкой */
  }
  .loop-card.glass > .e-con-inner{
    padding: var(--card-pad-y) 14px calc(var(--card-pad-y) - 2px) !important;
  }

  /* тело карточки: меньше расстояния между элементами */
  .loop-card.glass .loop-body{ gap: var(--v-gap) !important; }

  /* заголовок – компактные отступы */
  .loop-card.glass .elementor-heading-title{
    margin: .3rem 0 .2rem !important;
    line-height: 1.1 !important;
  }

  /* блок "Размеры" – ещё плотнее */
  .loop-card.glass .wc-attr-label{
    margin-bottom: .2rem !important;
    font-size: 12px !important;
  }
  .loop-card.glass .wc-attr-row{ margin-top: .25rem !important; }
  .loop-card.glass .wc-attr-chips{
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0,1fr)) !important; /* 2 в ряд */
    gap: 4px 6px !important;  /* вертикаль / горизонталь */
    width: 100%;
  }
  .loop-card.glass .wc-attr-chips :is(.chip, .chip-link){
    font-size: clamp(10px, 2.6vw, 11.5px) !important;
    line-height: 1.15 !important;
    padding: .26rem .46rem !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    justify-content: center !important;
  }

  /* низ карточки (цена/кнопка) – убираем «воздух» */
  .loop-card.glass .loop-footer{
    padding-top: var(--footer-pt) !important;
    gap: 8px !important;
  }

  /* страховка от случайных внутренних маргинов виджетов */
  .loop-card.glass .elementor-widget:not(:last-child){
    margin-bottom: 0 !important;
  }
}

/* ==========================================
   LOOP CARD — сверхкомпактные отступы (mobile)
   ========================================== */
@media (max-width: 640px){

  /* меньше «воздуха» в карточке */
  .loop-card.glass{
    --card-pad-y: 10px;
    --v-gap: 6px;
    --footer-pt: 0rem;                 /* почти нет зазора перед ценой */
  }
  .loop-card.glass > .e-con-inner{
    padding: var(--card-pad-y) 14px calc(var(--card-pad-y) - 2px) !important;
  }

  /* 1) Фото → Заголовок: минимальный зазор */
  .loop-card.glass .elementor-widget-image,
  .loop-card.glass .elementor-image,
  .loop-card.glass .loop-thumb{
    margin: 0 0 6px !important;        /* ↓ было больше */
  }

  /* 2) Заголовок — компактный */
  .loop-card.glass .elementor-heading-title{
    margin: 4px 0 2px !important;
    line-height: 1.1 !important;
  }

  /* 3) Блок «Размеры» — плотнее + 2 в ряд (как раньше) */
  .loop-card.glass .wc-attr-row{ margin: 4px 0 2px !important; }
  .loop-card.glass .wc-attr-label{ margin: 2px 0 3px !important; font-size: 12px !important; }
  .loop-card.glass .wc-attr-chips{
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    gap: 4px 6px !important;            /* вертикаль / горизонталь */
    margin-bottom: 2px !important;      /* меньше перед ценой */
    width: 100%;
  }
  .loop-card.glass .wc-attr-chips :is(.chip, .chip-link){
    padding: .24rem .44rem !important;
    font-size: clamp(10px, 2.5vw, 11px) !important;
    line-height: 1.15 !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    justify-content: center !important;
  }

  /* 4) Цена + кнопка — без лишних внешних маргинов */
  .loop-card.glass .loop-footer{
    padding-top: 2px !important;
    gap: 8px !important;
  }
  .loop-card.glass .loop-footer > *{ margin: 0 !important; }

  /* страховка от «случайных» маргинов между элементами в теле */
  .loop-card.glass .loop-body > .elementor-element{ margin: 2px 0 !important; }
}

/* === Single Product: чипсы атрибутов (работает для ссылок и для текста) === */
body.single-product .attr-chips{
  display:flex;
  flex-wrap:wrap;
  gap:.38rem .42rem;
  align-items:center;
}

body.single-product .attr-chips .chip,
body.single-product .attr-chips .chip-link{
  display:inline-flex; align-items:center; justify-content:center;
  padding:.34rem .58rem;
  font:600 clamp(11px,2.6vw,13px)/1.2 system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
  color:var(--fe-text, #eaf2ff);
  background:linear-gradient(180deg, var(--fe-glass-strong, rgba(255,255,255,.09)), rgba(255,255,255,.04));
  border:1px solid var(--fe-stroke, rgba(255,255,255,.22));
  border-radius:9999px;
  text-decoration:none;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.25), 0 8px 18px rgba(0,0,0,.22);
  transition: border-color .18s, box-shadow .18s, transform .12s, background .18s;
  white-space:nowrap;
}
body.single-product .attr-chips .chip-link:hover,
body.single-product .attr-chips .chip-link:focus-visible{
  border-color:var(--fe-accent, #8be4ff);
  box-shadow: inset 0 0 0 1px rgba(139,228,255,.35), 0 12px 26px rgba(139,228,255,.10);
  transform:translateY(-1px);
  outline:none;
}

/* Чуть компактнее в очень узких экранах */
@media (max-width:420px){
  body.single-product .attr-chips{ gap:.3rem .34rem; }
  body.single-product .attr-chips .chip,
  body.single-product .attr-chips .chip-link{ padding:.28rem .5rem; }
}

/* ============================================
   LOOP FOOTER — адаптивная цена и кнопка (clamp)
   ============================================ */
.loop-card.glass .loop-footer{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap: clamp(6px, 1.2vw, 14px) !important;
  flex-wrap: nowrap !important;     /* держим в одну линию */
}

/* Цена — всегда в одну строку, адаптивный размер */
.loop-card.glass .loop-footer .price,
.loop-card.glass .loop-footer .woocommerce-Price-amount,
.loop-card.glass .loop-footer .amount{
  font-size: clamp(14px, 1.35vw, 18px) !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
  font-weight: 800 !important;
}
.loop-card.glass .loop-footer .woocommerce-Price-currencySymbol{
  font-size: .95em;  /* символ ₽ чуть компактнее */
}

/* Кнопка — компактнее на узких, без переноса текста */
.loop-card.glass .loop-footer .elementor-button,
.loop-card.glass .loop-footer a.button{
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  white-space: nowrap !important;      /* не переносим "Подробнее" */
  font-size: clamp(12px, 1.15vw, 14px) !important;
  line-height: 1.1 !important;
  padding: clamp(6px, 0.9vw, 10px) clamp(10px, 1.5vw, 16px) !important;
}

/* Доп. ужатие на ноутбуках (где это чаще всего и ломалось) */
@media (max-width: 1360px){
  .loop-card.glass .loop-footer{ gap: 8px !important; }
  .loop-card.glass .loop-footer .price,
  .loop-card.glass .loop-footer .woocommerce-Price-amount{ 
    font-size: clamp(13px, 1.5vw, 17px) !important;
  }
  .loop-card.glass .loop-footer .elementor-button,
  .loop-card.glass .loop-footer a.button{
    font-size: clamp(11.5px, 1.2vw, 13.5px) !important;
    padding: .42rem .7rem !important;
  }
}

/* Страховка: если всё-таки не помещается — разрешаем перенос КНОПКЕ на новую строку,
   но только на очень узких «ноутбучных» ширинах карточки */
@media (max-width: 1100px){
  .loop-card.glass .loop-footer{
    flex-wrap: wrap !important;    /* кнопка упадёт ниже, цена останется слева */
  }
  .loop-card.glass .loop-footer > *{ margin: 0 !important; }
  .loop-card.glass .loop-footer .elementor-button,
  .loop-card.glass .loop-footer a.button{
    margin-left: auto !important;  /* если перенеслось, выравниваем кнопку вправо */
  }
}/* End custom CSS */