/* Левая колонка (десктоп): липкий фильтр */
@media (min-width:961px){
  .aqv-sidebar #aqv-filters{
    position:sticky;
    top:12px;
    align-self:start;
    border:1px solid #e7e7e7;
    border-radius:12px;
    padding:12px;
    background:#fff;
  }
}
/* ================================
   Filter lists (countries, regions)
   ================================ */
/* Базовый вид списка без маркеров и с выравниванием левее */
#aqv-filters ul {
  list-style: none;     /* убираем точки у списка */
  margin: 0;
  padding-left: 0;      /* убираем отступ слева у ul */
}

#aqv-filters li {
  margin: 0;                     /* убираем лишние зазоры */
  padding: 6px 0;                /* вертикальный отступ */
  padding-left: 0;               /* текст ближе к краю */
  border-bottom: 1px solid #eee; /* тонкая разделительная линия */
}

/* Базовый вид чекбоксов */
#aqv-filters input[type="checkbox"] {
  width: 20px;
  height: 20px;
  accent-color: #111; /* фирменный цвет */
  margin-right: 8px;
  cursor: pointer;
  vertical-align: middle;
}

/* Чтобы подписи стояли аккуратно рядом */
#aqv-filters label {
  display: flex;
  align-items: center;
  justify-content: space-between; /* распределяем текст и число */
  gap: 3px;
  font-size: 15px;
  line-height: 1.3;
}
/* Цифра количества (универсально для всех фильтров) */
#aqv-filters .aqv-count {
  margin-left: auto;      /* прижимаем цифру к правому краю */
  font-size: 13px;        /* немного меньше текста */
  color: #222;           /* более чёткий серый для верхнего уровня */
  font-weight: 500;
  line-height: 1.2;
}
/* Для подкатегорий (например регионы) — цвет мягче */
#aqv-filters ul.aqv-sublist .aqv-count {
  color: #888;           /* светлее оттенок */
  font-size: 12.5px;     /* чуть меньше, чтобы визуально отличалось */
}
/* Подсписок регионов — чуть правее основной страны */
#aqv-filters ul.aqv-sublist {
  padding-left: 22px;   /* визуальный отступ вправо */
  border-left: 2px solid #f0f0f0; /* лёгкий серый ориентир (по желанию) */
  margin-top: 4px;
}

/* Сами элементы регионов — немного плотнее */
#aqv-filters ul.aqv-sublist li {
  margin: 0;
  padding: 5px 0;
  border-bottom: 1px solid #f3f3f3;
}
/* У последнего элемента убираем линию, чтобы низ списка был чистым */
#aqv-filters li:last-child {
  border-bottom: none;
}
/* Если у пункта есть подсписок (например, подкатегории), убираем линию под ним */
#aqv-filters li:has(> ul.aqv-sublist) { border-bottom: 1px solid #e5e5e5; }
/* ================================
   Filter section headers (Country, ABV и т.п.)
   ================================ */
#aqv-filters .aqv-filter__toggle {
  display: block;
  width: 100%;
  text-align: left;
  background: none;
  border: none;
  padding: 6px 0 4px;
  margin: 6px 0 4px;
  font-size: 16px;
  font-weight: 700;
  color: #111;
  cursor: pointer;        /* кликабельно */
  position: relative;     /* стрелка справа */
  padding-right: 22px;    /* место под стрелку */
}

/* стрелочка справа (используем ::before, чтобы не трогать зелёную точку ::after) */
/* крупная стрелка справа (символ) */
#aqv-filters .aqv-filter__toggle::before {
  content: '▾';
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%) rotate(0deg);
  font-size: 28px;        /* БОЛЬШЕ */
  font-weight: 700;
  color: #666;
  line-height: 1;
  transition: transform .15s ease;
}

/* когда секция свёрнута — стрелка повернута вбок */
#aqv-filters .aqv-filter.aqv-collapsed > .aqv-filter__toggle::before {
  transform: translateY(-50%) rotate(-90deg);
}

/* скрываем панель у свёрнутой секции */
#aqv-filters .aqv-filter.aqv-collapsed > .aqv-filter__panel {
  display: none;
}

#aqv-filters .aqv-filter__toggle:focus {
  outline: none;
  box-shadow: none;
}

/* ================================
   Age toggle (Unaged / Barrel-aged / All)
   ================================ */

#aqv-filters .aqv-age-toggle {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin: 6px 0 10px;
}

#aqv-filters .aqv-age-toggle__label {
  font-weight: 700;
  color: #111;
  margin-right: 2px;
  font-size: 14px;
  line-height: 1;
}

#aqv-filters .aqv-age-toggle__btn {
  /* базовый стиль — как у твоих чёрных кнопок, но меньше */
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 32px;                /* меньше, чем 44px у больших */
  padding: 0 10px;             /* компактнее */
  border-radius: 10px;         /* как у кнопок в фильтре/ресете (чуть меньше 12px) */
  background: #111;            /* чёрная, как в дизайне */
  color: #fff;                 /* белый текст */
  font-size: 14px;             /* поменьше шрифт */
  font-weight: 700;
  line-height: 1;
  border: none;
  cursor: pointer;
  transition: background .2s ease, transform .2s ease, opacity .2s ease;
  text-decoration: none;
  user-select: none;
}

#aqv-filters .aqv-age-toggle__btn:hover {
  background: #333;            /* hover-эффект как у остальных */
}

/* Активная (выбранная) — «посветлевший чёрный» */
#aqv-filters .aqv-age-toggle__btn.is-active,
#aqv-filters .aqv-age-toggle__btn[aria-pressed="true"] {
  background: #27ae60;           /* зеленый, как ползунок */
}

/* Кнопка 'All' можно чуть приглушить, пока не активна */
#aqv-filters .aqv-age-toggle__btn.aqv-age-toggle__clear:not(.is-active) {
  opacity: .9;
}

/* Никаких скачков верстки при кликах по лейблам/спискам рядом */
#aqv-filters .aqv-age-toggle__btn:focus {
  outline: none;
}

/* На мобиле оставим ту же компактность; при необходимости можно растянуть */
@media (max-width:960px){
  #aqv-filters .aqv-age-toggle {
    gap: 6px;
  }
  #aqv-filters .aqv-age-toggle__btn {
    height: 34px;              /* чуть выше для тача */
    padding: 0 12px;
    border-radius: 12px;       /* визуально согласовано с моб.кнопками */
  }
}

/* Counters on the right of the age toggle */
#aqv-filters .aqv-age-stats {
  margin-left: auto;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  /* визуально подгоняем под .aqv-count */
  font-size: 13px;
  font-weight: 500;
  line-height: 1.2;
  color: #888;
}

#aqv-filters .aqv-age-stat.is-active {
  color: #111;                  /* активная цифра — чёрная */
}

#aqv-filters .aqv-age-sep {
  color: #bbb;                  /* разделитель */
}

@media (max-width:960px){
  #aqv-filters .aqv-age-stats {
    gap: 6px;
    font-size: 14px;
  }
}

/* ================================ 
   ABV double range (левый/правый ползунок) — безопасный вариант 
   ================================ */

.aqv-abv-range {
  position: relative;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0;
}

/* Подсказка браузеру: верхний (правый) должен ловить клики при наложении */
.aqv-abv-range input[name*="_max"] {
  z-index: 3;
}

/* Чтобы не перекрывались визуально, можно добавить тонкий просвет */
.aqv-abv-range input[name*="_min"]::-webkit-slider-thumb {
  position: relative;
  z-index: 2;
}

.aqv-abv-range input[name*="_max"]::-webkit-slider-thumb {
  position: relative;
  z-index: 4;
}
/* ======================================
   Active filter indicator (универсальный)
   ====================================== */
.aqv-filter.is-active .aqv-filter__toggle::after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  margin-left: 6px;
  border-radius: 50%;
  background-color: #2ecc71; /* зелёная точка */
  vertical-align: middle;
}
/* ================================
   Mobile filter sheet (overlay)
   ================================ */
@media (max-width:960px){
  /* aside остаётся, но сам фильтр пока скрыт */
  .aqv-sidebar{ display:block; margin:0; padding:0; }
  #aqv-filters{ display:none !important; }

  /* защищаемся от горизонтального скролла/«протекания» */
  html, body{ max-width:100%; overflow-x:hidden; }
  html.aqvaf-modal-open, body.aqvaf-modal-open{ overflow:hidden; }

  /* полупрозрачный фон позади панели */
  .aqv-backdrop{
    position:fixed; inset:0; background:rgba(0,0,0,.45);
    z-index:9998; display:none;
  }
  .aqv-backdrop.is-open{ display:block; }

  /* сама шторка */
  #aqv-filters.is-open{
    display:block !important;
    position:fixed;
    left:0; right:0; bottom:0;
    top:10%;                     /* «просвет» сверху */
    width:100vw;
    max-width:100vw;
    background:#fff; z-index:10000;
    padding:0 12px 96px;      /* место под большую кнопку */
    overflow:auto;
    overflow-x:hidden;
    border-radius:14px 14px 0 0;
    box-sizing:border-box;
    overscroll-behavior:contain; /* не прокручивать фон */
    touch-action:pan-y;          /* блокируем горизонтальные жесты */
  }

#aqv-filters .aqv-modalbar{
  position: sticky;
  top: 0;
  padding: 12px 16px;                 /* комфортный внутренний отступ */
  background: #efefef;                /* слегка серее */
  border-bottom: 1px solid #e5e5e8;
  display: flex;
  align-items: center;
  justify-content: space-between;
  z-index: 1002;                      /* выше ползунков */
  border-radius: 14px;
  box-shadow: 0 2px 8px rgba(0,0,0,.04);
}

/* небольшой «воздух» под шапкой */
#aqv-filters .aqv-modalbar + *{
  margin-top: 10px;
}
  #aqv-filters .aqv-modalbar h3{
    margin:0; font-size:18px; font-weight:700;
  }
  .aqv-close-filters{
    border:1px solid #ddd; background:#fff;
    border-radius:10px; padding:8px 12px; font-size:18px; line-height:1;
  }

  /* Прячем старые Apply/Reset в форме */
  #aqv-filters .aqv-actions{ display:none !important; }

  /* Большая кнопка «Show results» внизу шторки */
.aqv-cta-wrap{
position: fixed;     /* всегда у нижней кромки экрана */
left: 0;
right: 0;
bottom: 0;
z-index: 1000;
margin: 0;           /* при fixed отрицательный margin не нужен */
padding: 12px;
background: #fff;
border-top: 1px solid #eee;
}
.aqv-cta{
  display: block;
  width: 100%;
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  padding: 18px;
  border-radius: 16px;          /* форма как у Load more */
  border: none;
  background: #111;             /* цвет как у Load more */
  color: #fff;
  cursor: pointer;
  transition: background .25s ease, transform .25s ease;
}
    .aqv-cta:hover:not([disabled]){
  background: #333;
  transform: translateY(-2px);
}

.aqv-cta[disabled]{
  opacity: .6;
  cursor: default;
  transform: none;
}

/* Чтобы свайпы по слайдеру ABV не двигали страницу */
.aqv-abv-range {
  touch-action: pan-y; /* разрешаем вертикальные свайпы, но не блокируем касания по ползункам */
}

/* Кнопка «Filter» — стиль как у Load more / Show results */
.aqv-open-filters{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 44px;
  padding: 0 16px;
  border-radius: 12px;
  background: #111;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  border: none;
  cursor: pointer;
  white-space: nowrap;
  transition: background .25s ease, transform .25s ease;
  box-sizing: border-box;
}

.aqv-open-filters:hover:not([disabled]){
  background: #333;
  transform: translateY(-2px);
}

.aqv-open-filters[disabled]{
  opacity: .6;
  cursor: default;
  transform: none;
}

/* Кнопка «Filter» показывается только на мобиле (как и было) */
@media (min-width:961px){
  .aqv-open-filters{ display:none; }
}

    /* Кнопка Reset — стиль как у Filter */
.aqv-reset-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 44px;
  padding: 0 16px;
  border-radius: 12px;
  background: #111;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  line-height: 1;
  border: none;
  cursor: pointer;
  white-space: nowrap;
  text-decoration: none;
  transition: background .25s ease, transform .25s ease;
  box-sizing: border-box;
}

.aqv-reset-btn:hover {
  background: #333;
  transform: translateY(-2px);
}

/* Универсальная защита от «вылезающих» элементов */
img, svg, canvas, video{ max-width:100%; height:auto; }
h1, h2, h3, h4, h5, h6{ overflow-wrap:anywhere; word-break:break-word; }

    /* Контейнер для кнопки Filter/Reset под заголовком */
.aqv-buttons-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding-left: 10px; /* такой же отступ, как у .aq-grid */
  margin-bottom: 20px; /* немного пространства перед карточками */
}
    /* === Modal Reset (внутри шторки) скрыт по умолчанию === */
#aqv-filters .aqv-modalbar .aqv-reset--modal{
  display: none;
  margin-right: auto; /* кнопка «уезжает» влево, крестик — справа */
}
    /* === Верхняя панель шторки: выравнивание и кнопки справа === */
#aqv-filters .aqv-modalbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.6em 1em;
  border-bottom: 1px solid #ddd;
}

#aqv-filters .aqv-modalbar h3 {
  font-size: 1.1em;
  margin: 0;
}

#aqv-filters .aqv-modalbar-actions {
  display: flex;
  gap: 0.5em;
  align-items: center;
}

/* Квадратный «крестик» в стиле чёрных кнопок (Filter/Reset) */
#aqv-filters .aqv-close-filters {
  background: #111;
  color: #fff;
  border: none;
  border-radius: 12px;     /* скругление как у других кнопок */
  width: 44px;
  height: 44px;            /* квадрат 44×44, можно поменять при желании */
  font-size: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  cursor: pointer;
  transition: background .25s ease, transform .25s ease;
}

#aqv-filters .aqv-close-filters:hover {
  background: #333;
  transform: translateY(-2px);
}
    #aqv-filters ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

#aqv-filters li:last-child {
  border-bottom: none;
}
    .aqv-option {
  display: flex;
  align-items: center;
  gap: 8px;
  justify-content: flex-start;
}

.aqv-option input[type="checkbox"] {
  width: 20px;
  height: 20px;
  margin-right: 6px;
  accent-color: #111;
}

.aqv-option .aqv-title {
  flex: 1 1 auto;
  text-align: left;
}

.aqv-option .aqv-count {
  margin-left: auto;
  font-size: 13px;
  color: #777;
}
    ul.aqv-sublist {
  padding-left: 22px;
  border-left: 2px solid #f0f0f0;
  margin-top: 4px;
}
ul.aqv-sublist li {
  padding: 4px 0;
  border-bottom: 1px solid #f3f3f3;
}
ul.aqv-sublist li:last-child {
  border-bottom: none;
}
    
    /* Сворачиваем ТОЛЬКО подсписок бочек у Barrel-Aged */
#aqv-filters #aq-aged-sublist[data-collapsed="true"]{ display: none; }
#aqv-filters #aq-aged-sublist[data-collapsed="true"] + .aqv-more{ display: none; }
    
    /* Управление подсписком бочек */
.aqv-sublist[data-collapsed="true"] {
  display: none;
}
.aqv-sublist[data-collapsed="false"] {
  display: block;
}
    
   /* контейнер, в котором лежат четыре блока */
.aq-columns {
  display: flex;
  gap: 12px;
}
    .aq-columns > * {
  flex: 1 1 0;      /* все колонки равные по-умолчанию */
  min-width: 0;     /* чтобы ужимались, а не выталкивали */
}

/* сделать 4-ю шире */
.aq-columns > *:nth-child(4) {
  flex: 2 1 0;      /* станет примерно в 2 раза шире других */
}
 
   .aq-row-inline.grid-row {
  display:grid;
  grid-auto-flow:column;           /* строго слева направо, всегда в одну строку */
  grid-auto-columns:max-content;   /* ширина по содержимому (или задай фикс.) */
  column-gap:12px;
  align-items:start;
  overflow-x:auto;                 /* если не влазит — горизонтальный скролл */
}
    /* ===== Press-to-zoom (desktop only) ===== */
@media (min-width:1201px){
  .aq-lightbox img {
    /* чтобы трансформации были плавными и без смазни */
    will-change: transform, transform-origin;
    cursor: zoom-in;
    user-select: none;
  }
  .aq-lightbox.is-zooming img {
    cursor: move; /* пока зажата кнопка — перетаскиваем взгляд */
    transition: transform 0s; /* моментально обновлять трансформацию */
  }
}
/* по умолчанию скрываем элементы, помеченные data-extra="1",
   если список в состоянии data-collapsed="true" */
#aqv-filters ul[data-collapsed="true"] li[data-extra="1"] {
  display: none;
}

/* когда список раскрыт — показываем все элементы */
#aqv-filters ul[data-collapsed="false"] li[data-extra="1"] {
  display: list-item;
}
/* Для списков РЕГИОНОВ: по умолчанию лишние регионы скрыты,
   показываем только при разворачивании .is-expanded */
#aqv-filters ul.aqv-sublist li[data-extra="1"] {
  display: none;
}
#aqv-filters ul.aqv-sublist.is-expanded li[data-extra="1"] {
  display: list-item;
}
/* ================================
   "Show more / Show less" кнопка
   ================================ */

/* Сбросить любой дефолтный вид кнопки от темы/браузера */
#aqv-filters .aqv-filter button.aqv-more,
#aqv-filters .aqv-filter .aqv-more {
  appearance: none !important;
  -webkit-appearance: none !important;
  border: none !important;
  background: transparent !important;

  /* центрируем по ширине родителя */
  display: flex !important;
  align-items: center;
  justify-content: center;

  margin: 8px auto 4px !important;
  padding: 4px 10px !important;
  width: auto;

  font-size: 13px;
  line-height: 1.3;
  font-weight: 500;
  color: #036635;
  cursor: pointer;
  border-radius: 999px;     /* «пилюля» */
  text-decoration: none;

  transition:
    background-color .15s ease,
    color .15s ease,
    transform .15s ease;
}

/* стрелка перед текстом (по умолчанию вниз) */
#aqv-filters .aqv-filter .aqv-more::before {
  content: '▾';
  font-size: 28px;
  line-height: 1;
  margin-right: 6px;
  transform: translateY(1px);
}

/* hover — мягкий фон, как у Systembolaget */
#aqv-filters .aqv-filter .aqv-more:hover {
  background-color: #f2f2f2;
}

/* когда список раскрыт — стрелка вверх */
#aqv-filters .aqv-filter .aqv-more.is-expanded::before {
  transform: translateY(1px) rotate(-180deg);
}
