.cities__wrapper {
  display: flex;
  flex-direction: row;
  gap: 10px;
}

.cities__wrapper button {
  flex: 1;
}

.field__error--red {
  color: #c0392b;
  font-size: 0.8rem;
  margin-top: 0.25rem;
}

.item-product__body {
  position: relative; 
  justify-content: flex-end;
}

/* Назва товару в карточці: збільшений розмір шрифту */
.item-product__title .ellipsis {
  font-size: 14px !important;
  font-weight: 400 !important;
}

/* Підсвічування обов'язкових полів при помилці валідації (як у відгуках) */
.input--error,
.textarea--error {
  border-color: #e74c3c !important;
  box-shadow: 0 0 0 1px #e74c3c;
}

.input--error:focus,
.textarea--error:focus {
  border-color: #e74c3c !important;
  box-shadow: 0 0 0 2px rgba(231, 76, 60, 0.2);
}

.select--error .select__title {
  border-color: #e74c3c !important;
  box-shadow: 0 0 0 1px #e74c3c;
}

/* Попередження про невалідний купон */
.aside-cart__promo-error,
.aside-cart__promo-error--red {
  color: #c0392b;
  font-size: 0.8rem;
  margin-top: 0.25rem;
  width: 100%;
}

/* Якщо картинка лише одна — не показувати стрілки вліво/вправо у слайдері товару */
.hero-product__slider:not(.is-overflow) .splide__arrow {
  display: none !important;
}

/* Блок бонусів завжди справа, навіть якщо блок знижки відсутній */
.hero-product__bonuses {
  margin-left: auto;
}

/* Блок actions (бонусы + обране) завжди в правому верхньому кутку картки товару */
.item-product__actions {
  margin-left: auto;
}

.cart-popup__item {
  margin-bottom: 5px;
}

/* Попап кошика: щоб кнопка видалення не "вилазила" за межі карточки */
@media (min-width: 48em) {
  .popup--cart .cart-popup__item.item-cart {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
  }

  .popup--cart .cart-popup__item.item-cart {
    display: flex;
    align-items: center;
    gap: 0.75rem;
  }

  .popup--cart .cart-popup__item.item-cart > * {
    min-width: 0; /* дозволяє стискати контент у flex */
  }

  .popup--cart .item-cart__body {
    flex: 1 1 auto;
    min-width: 0;
  }

  .popup--cart .item-cart__title {
    min-width: 0;
  }

  .popup--cart .item-cart__title > a {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-word;
  }

  .popup--cart .item-cart__image,
  .popup--cart .item-cart__counter {
    flex: 0 0 auto;
  }

  .popup--cart .item-cart__price {
    flex: 0 0 auto;
    white-space: nowrap;
  }

  .popup--cart .item-cart__remove {
    flex: 0 0 2.25rem;
    width: 2.25rem;
    height: 2.25rem;
    box-sizing: border-box;
  }
}

/* Бонусы в кошику — більший розмір, в один рядок (!important перебиває app.css) */
.item-cart__bonuses {
  font-size: 1.25rem !important;
  display: flex;
  align-items: center;
  gap: 0.25rem;
  white-space: nowrap;
}
.item-cart__bonuses span {
  display: inline !important;
  font-size: 1.2rem !important;
}

.cart-success.--active {
  opacity: 1;
  pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}

/* Банер на головній: для широкоформатних зображень прибрати пусте місце над і під фото */
.banners-home__image {
  aspect-ratio: unset !important;
  height: auto !important;
}
.banners-home__image img.ibg {
  width: 100%;
  height: auto;
  object-fit: unset;
  display: block;
}

/* Меню на головній — збільшений розмір тексту в кнопках */
.menu-home__items .menu-home__item {
  font-size: 1.65rem;
}

/* Категорії на головній — текст +25%, іконки +15% */
.categories-home__slider .categories-home__label,
.catalog__slider .categories-home__label {
  font-size: 1.2rem !important; /* 1.125 * 1.25 */
}
.categories-home__slider .categories-home__image,
.catalog__slider .categories-home__image {
  max-width: 10.421875rem !important; /* 9.0625 * 1.15 */
  max-height: 7.403125rem !important; /* 6.4375 * 1.15 */
}

/* Мобільна версія (max-width: 47.99875em) */
@media (max-width: 47.99875em) {

  /* Відступи статусу/коду товару тільки на мобільній версії */
  .hero-product__header .hero-product__accent-label {
    margin-top: 60px;
  }
  .hero-product__header .hero-product__accent-label + .hero-product__header-label {
    margin-top: 60px;
  }
  .hero-product__header .hero-product__header-label.--status {
    margin-top: 20px;
  }
  .hero-product__header .hero-product__header-label.--status + .hero-product__header-label {
    margin-top: 20px;
  }

  .menu-home__items .menu-home__item {
    font-size: 1rem;
    padding-left: 5px;
    padding-right: 5px;
  }

  .categories-home__slider .splide__list,
  .catalog__slider .splide__list {
    align-items: stretch;
  }
  .categories-home__slider .splide__slide .categories-home__item,
  .catalog__slider .splide__slide .categories-home__item {
    display: flex;
    flex-direction: column;
    
    align-items: center;
    flex: 1;
    min-height: 0;
    width: 100%;
  }
  .categories-home__slider .splide__slide .categories-home__label,
  .catalog__slider .splide__slide .categories-home__label {
    flex-shrink: 0;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-align: center;
    line-height: 1.2;
  }
  .categories-home__slider .splide__slide .categories-home__image,
  .catalog__slider .splide__slide .categories-home__image {
    flex-shrink: 0;
  }
  .categories-home__slider .categories-home__label,
  .catalog__slider .categories-home__label {
    font-size: 1.09375rem !important; /* 0.875 * 1.25 */
    padding-left: 5px;
    padding-right: 5px;
  }
  .categories-home__slider .categories-home__image,
  .catalog__slider .categories-home__image {
    max-width: 10.421875rem !important;
    max-height: 7.403125rem !important;
  }

  .banners-home__image {
    aspect-ratio: unset !important;
    height: auto !important;
    min-height: 0;
  }
  .banners-home__image .mobile {
    display: block !important;
    width: 100%;
    height: auto;
    object-fit: unset;
    object-position: center;
  }
  .banners-home__image .pc {
    display: none !important;
  }

  /* recom-product: менші відступи між блоками по висоті */
  .recom-product__body {
    gap: 0.5rem !important;
  }
  .recom-product {
    row-gap: 0.5rem !important;
    /* display: flex !important; */
  }

  /* Product hero: у мобайлі ставимо кнопку покупки вище quick-actions */
  .hero-product__actions {
    flex-direction: column;
    align-items: stretch;
    --hero-product-button-up: 12px; /* змініть значення за потреби */
    --hero-product-button-height: 52px; /* мобільна висота кнопки для тесту */
  }
  .hero-product__actions > .hero-product__button {
    width: 100%;
    max-width: none;
    margin-top: calc(-1 * var(--hero-product-button-up));
    min-height: var(--hero-product-button-height) !important;
    height: var(--hero-product-button-height) !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
}

/* Дуже малий екран — категорії: текст +25%, іконки +15% */
@media (max-width: 37.49875em) {
  .categories-home__slider .categories-home__label,
  .catalog__slider .categories-home__label {
    font-size: 0.78125rem !important; /* 0.625 * 1.25 */
    padding-left: 5px;
    padding-right: 5px;
  }
  .categories-home__slider .categories-home__image,
  .catalog__slider .categories-home__image {
    width: 3.234375rem !important;   /* 2.8125 * 1.15 */
    height: 3.234375rem !important;
  }
}

/* Автокомпліт пошуку в шапці — стилі у фірмовій стилістиці сайту */
ul.search-autocomplete.dropdown-menu {
  background-color: #ffffff;
  border-radius: 8px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
  padding: 6px 0;
  margin-top: 6px;
  max-height: 22rem;
  overflow-y: auto;
  z-index: 2100;
}

/* Автокомпліт пошуку: завжди "приклеєний" до поля пошуку, а не десь посеред сторінки */
form#search.header__search {
  position: relative;
}

form#search.header__search > ul.search-autocomplete.dropdown-menu {
  position: absolute !important;
  top: calc(100% + 6px) !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  margin-top: 0 !important; /* top already has spacing */
  z-index: 9999 !important;
}

ul.search-autocomplete.dropdown-menu > li > a {
  display: flex;
  align-items: center;
  padding: 8px 16px;
  font-size: 0.875rem;
  line-height: 1.3;
  color: #222222;
  white-space: normal;
}

ul.search-autocomplete.dropdown-menu > li > a:hover,
ul.search-autocomplete.dropdown-menu > li > a:focus {
  background-color: #f5f7fb;
  color: #000000;
  text-decoration: none;
}

/* Рейтинг: 5 зірок + кількість відгуків у дужках (впритул до останньої зірки, по центру по висоті) */
.rating__items {
  margin-top: 4px;
}
.rating-wrap {
  display: flex;
  align-items: center;
  gap: 0;
}
.item-product .rating-wrap .rating {
  flex-grow: 0 !important;
}

.rating__count {
  font-size: 0.75rem;
  margin-left: 0.25rem;
}

/* На ПК напис «грн.» у ціні картки товару — нежирний */
@media (min-width: 992px) {
  .item-product__price .price .small {
    font-weight: normal;
  }
}

@media (max-width: 600px) {
  .recom-product__body {
    gap: 0.5rem !important;
  }
  
  .categories-menu__content, .pc-menu__content {
    max-height: calc(100% - 150px);
  }

  .categories-home__label {
    /* word-break: auto-phrase !important; */
    -webkit-line-clamp: unset !important;
    /* all: revert; */
    word-break: normal !important;
    overflow-wrap: anywhere;
    hyphens: auto;
  }

  .item-news--why-us .item-news__body {
    word-break: auto-phrase !important;
  }

  h3.item-news__title {
    display: flex;
    align-items: center;
    align-content: center;
    min-height: 30px;
    text-align: center;
    justify-content: center;

    word-break: normal !important;
    overflow-wrap: anywhere;
    hyphens: auto;
  }

  .recom-product {
    row-gap: 0.5rem !important;
    display: flex !important;
  }

  .recom-product__price {
    white-space: nowrap;
  }

  .recom-product {
    display: flex !important;
  }
}

/* Мобільна версія: гарантуємо видимість назв категорій у меню */
@media (max-width: 47.99875em) {
  .categories-menu .header__catalog-menu li a {
    color: #1e1e1e !important;
    font-size: 0.9375rem;
    display: flex;
    align-items: center;
    gap: 0.625rem;
    white-space: normal;
  }
}

/* Мобільні попапи авторизації: запобігаємо автозуму інпутів на iOS/Android */
@media (max-width: 47.99875em) {
  .popup--auth .field__input,
  .popup--auth .pass__input,
  .popup--auth input[type="text"],
  .popup--auth input[type="tel"],
  .popup--auth input[type="password"] {
    font-size: 16px !important;
  }
}

/* pc-menu: ширина body як у меню, без бокового скролу */
.pc-menu__body {
  width: 100%;
  min-width: 0;
  overflow-x: hidden;
  box-sizing: border-box;
}
.pc-menu__content {
  overflow-x: hidden;
}
.pc-menu .header__catalog-menu {
  width: 100%;
  max-width: 100%;
  left: 0;
  right: 0;
  box-sizing: border-box;
}

/* Типографіка HTML-описів (товари, бренди, теги, категорії, статті/новини) */

/* Базовий контейнер з текстовим контентом */
.text {
  font-size: 1rem;
  line-height: 1.6;
  color: #1e1e1e;
}

/* Заголовки усередині .text і у верхньому рівні опису бренду (manufacturer) */
.text h1,
.text h2,
.text h3,
.text h4,
.text h5,
.text h6,
.catalog__main > h1,
.catalog__main > h2,
.catalog__main > h3,
.catalog__main > h4,
.catalog__main > h5,
.catalog__main > h6 {
  font-weight: 700;
  line-height: 1.25;
  margin: 1.5rem 0 0.75rem;
}

.text h1,
.catalog__main > h1 {
  font-size: 2rem;
}

.text h2,
.catalog__main > h2 {
  font-size: 1.5rem;
}

.text h3,
.catalog__main > h3 {
  font-size: 1.25rem;
}

.text h4,
.catalog__main > h4 {
  font-size: 1.125rem;
}

.text h5,
.catalog__main > h5 {
  font-size: 1rem;
}

.text h6,
.catalog__main > h6 {
  font-size: 0.875rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

/* Абзаци, списки, блок-цитати та інші блокові елементи */
.text p,
.text ul,
.text ol,
.text dl,
.text blockquote,
.text pre,
.text table,
.catalog__main > p,
.catalog__main > ul,
.catalog__main > ol,
.catalog__main > dl,
.catalog__main > blockquote,
.catalog__main > pre,
.catalog__main > table {
  margin: 0 0 1rem;
}

.text p:last-child,
.text ul:last-child,
.text ol:last-child,
.text dl:last-child,
.text blockquote:last-child,
.text pre:last-child,
.text table:last-child,
.catalog__main > p:last-child,
.catalog__main > ul:last-child,
.catalog__main > ol:last-child,
.catalog__main > dl:last-child,
.catalog__main > blockquote:last-child,
.catalog__main > pre:last-child,
.catalog__main > table:last-child {
  margin-bottom: 0;
}

/* Списки */
.text ul,
.text ol,
.catalog__main > ul,
.catalog__main > ol {
  padding-left: 1.5rem;
}

.text ul {
  list-style-type: disc !important;
}

/* Деякі reset-стилі можуть прибирати маркери через display/list-style у li */
.text ul > li {
  display: list-item !important;
  list-style: disc !important;
  list-style-position: outside !important;
}

.text ul > li::marker {
  color: #2d9b4a !important;
}

/* Опис/доставка товару: підсилюємо проти app.min.css */
.info-product__decs.text ul {
  list-style: disc !important;
  padding-left: 1.5rem !important;
}

.info-product__decs.text ul > li {
  display: list-item !important;
  list-style: disc !important;
  list-style-position: outside !important;
}

.info-product__decs.text ul > li::marker {
  color: #2d9b4a !important;
}

ul li::marker {
  color: #2d9b4a !important;
}

/* Блог-статті: підсилюємо списки проти можливих reset-стилів */
.article__text.text ul {
  list-style: disc !important;
  padding-left: 1.5rem !important;
}

.article__text.text ul > li {
  display: list-item !important;
  list-style: disc !important;
  list-style-position: outside !important;
}

.article__text.text ul > li::marker {
  color: #2d9b4a !important;
}

.text ol {
  list-style-type: decimal;
}

.text ul ul,
.text ul ol,
.text ol ul,
.text ol ol {
  margin-top: 0.25rem;
  margin-bottom: 0.25rem;
}

/* Описові списки */
.text dl,
.catalog__main > dl {
  padding-left: 0;
}

.text dt,
.catalog__main > dl > dt {
  font-weight: 700;
  margin-top: 0.5rem;
}

.text dd,
.catalog__main > dl > dd {
  margin-left: 0;
  margin-bottom: 0.5rem;
}

/* Блок-цитати */
.text blockquote,
.catalog__main > blockquote {
  border-left: 3px solid #e0d9cf;
  padding-left: 1rem;
  color: #555;
  font-style: italic;
}

/* Код */
.text code,
.catalog__main > code {
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
  font-size: 0.875em;
  background-color: #f5f5f5;
  padding: 0.1em 0.3em;
  border-radius: 3px;
}

.text pre,
.catalog__main > pre {
  font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
  font-size: 0.875em;
  background-color: #f5f5f5;
  padding: 0.75rem 1rem;
  border-radius: 4px;
  overflow-x: auto;
}

.text pre code,
.catalog__main > pre > code {
  padding: 0;
  background: transparent;
}

/* Таблиці */
.text table,
.catalog__main > table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

.text th,
.text td,
.catalog__main > table th,
.catalog__main > table td {
  padding: 0.5rem 0.75rem;
  border: 1px solid #e0d9cf;
  text-align: left;
  vertical-align: top;
}

.text thead th,
.catalog__main > table thead th {
  background-color: #f7f4f0;
  font-weight: 700;
}

.text tbody tr:nth-child(even),
.catalog__main > table tbody tr:nth-child(even) {
  background-color: #faf8f5;
}

/* Над- та підрядкові індекси */
.text sub,
.text sup,
.catalog__main > sub,
.catalog__main > sup {
  font-size: 0.75em;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

.text sup,
.catalog__main > sup {
  top: -0.4em;
}

.text sub,
.catalog__main > sub {
  bottom: -0.2em;
}

/* abbr, cite, q */
.text abbr[title],
.catalog__main > abbr[title] {
  border-bottom: 1px dotted currentColor;
  cursor: help;
}

.text cite,
.text q,
.catalog__main > cite,
.catalog__main > q {
  font-style: italic;
}

/* Посилання усередині тексту — базові стилі вже є в app.css (.text a), тут тільки hover */
.text a:hover {
  text-decoration-color: currentColor;
}

/* У rich-text інколи лінк роблять flex-контейнером, через що float на img ігнорується (img стає flex-item).
   Для статей блогу примусово повертаємо звичайну (inline) поведінку посилань. */
.article__text.text a {
  display: inline !important;
}

/* Обтікання картинок */
.text img.left {
  float: left;
  margin: 0 15px 15px 0;
  max-width: 50%;
}

.text img.right {
  float: right;
  margin: 0 0 15px 15px;
  max-width: 50%;
}

/* Summernote: класи обтікання (note-float-*) */
.text img.note-float-left {
  float: left;
  margin: 0 15px 15px 0;
  max-width: 50%;
}

.text img.note-float-right {
  float: right;
  margin: 0 0 15px 15px;
  max-width: 50%;
}

.text img.note-float-none {
  float: none;
  margin: 0 0 1rem 0;
  max-width: 100%;
  display: block;
}

/* Legacy HTML align="" атрибут */
.text img[align="left"] {
  float: left;
  margin: 0 15px 15px 0;
  max-width: 50%;
}

.text img[align="right"] {
  float: right;
  margin: 0 0 15px 15px;
  max-width: 50%;
}

/* Для опису бренду, якщо адміністратор поставить класи прямо на img */
.catalog__main > img.left {
  float: left;
  margin: 0 15px 15px 0;
  max-width: 50%;
}

.catalog__main > img.right {
  float: right;
  margin: 0 0 15px 15px;
  max-width: 50%;
}

/* Очищення обтікання в кінці текстового блоку */
.text::after,
.catalog__main::after {
  content: "";
  display: table;
  clear: both;
}

.--city-open .submenu-navbar__body {
  display: none !important;
}

.submenu-navbar__city {
  padding-top: 0.3125rem;
  display: none !important;
}
.--city-open .submenu-navbar__city {
  display: block !important;
}

/* Активний (поточний) варіант у властивостях товару (обʼєм/колір тощо) */
.props-product__item.--active {
  background-color: #cfd56b;
  border-color: #cfd56b;
  color: #1b1b1b;
  pointer-events: none;
}

.props-product__item.--active:focus,
.props-product__item.--active:focus-visible {
  outline: 2px solid rgba(207, 213, 107, 0.55);
  outline-offset: 2px;
}

/* Сторінка статті блогу (перенесено з article.twig): помилки полів коментарів; .input--error / .textarea--error вже вище в файлі */
.field__error {
  color: #e74c3c;
  font-size: 12px;
  margin-top: 5px;
  display: block;
}

.item-feedback__reply-form {
  margin-top: 1rem;
  padding: 1rem;
  background-color: #f9f9f9;
  border-radius: 0.5rem;
  border: 1px solid #e0e0e0;
}

.form-reply__actions {
  display: flex;
  gap: 0.5rem;
  margin-top: 1rem;
}

.form-reply__actions .button--cancel {
  background-color: transparent;
  border-color: #ccc;
  color: #666;
}

.form-reply__actions .button--cancel:hover {
  background-color: #f5f5f5;
}

.item-feedback__answers {
  margin-top: 1rem;
  padding-left: 2rem;
  border-left: 2px solid #e0e0e0;
}

.item-feedback__answers .feedback-pr__item {
  margin-bottom: 0.5rem;
}

.item-feedback__answers .feedback-pr__item:last-child {
  margin-bottom: 0;
}

.article-category-link {
  color: #6c6f38;
  text-decoration: underline;
  text-decoration-color: transparent;
  transition: text-decoration-color 0.3s, color 0.3s;
}

.article-category-link:hover {
  color: #90944b;
  text-decoration-color: #90944b;
}

.news-home .item-news__text {
  font-size: 0.875rem;
  color: #777;
  line-height: 1.3;
}

.news-home .item-news__title {
  font-size: 1.125rem;
  font-weight: 700;
  line-height: 1.24;
}

.has-oc-admin-toolbar{padding-top:40px}
#oc-admin-toolbar{position:fixed;top:0;left:0;right:0;height:38px;z-index:100001;background:#23282d;color:#f0f0f1;font:14px/38px system-ui,-apple-system,sans-serif;padding:0 14px;display:flex;align-items:center;gap:12px;box-shadow:0 1px 3px rgba(0,0,0,.35)}
#oc-admin-toolbar .oc-admin-toolbar__label{opacity:.85;font-size:13px}
#oc-admin-toolbar .oc-admin-toolbar__name{font-weight:600;opacity:.95;max-width:40vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#oc-admin-toolbar a{color:#04b01e;text-decoration:none;font-weight:600}
#oc-admin-toolbar a:hover{color:#e90b12;text-decoration:underline}