.product-badge.product-badge_custom>.badge {
    background-color: #2aabee !important;
}

.r-footer-main__logo {
    width: 180px;
}







/* JustGrill: «Сообщить о поступлении» (карточка товара, плитки каталога) и один «Нет в наличии» вместо строк по складам */
.jg-notify { margin: 12px 0; }
.jg-notify__open, .jg-notify__send { width: 100%; }
.jg-notify__form { display: flex; flex-direction: column; gap: 10px; margin-top: 12px; padding: 16px 18px; border: 1px solid #e3e3e3; border-radius: 10px; background: #fafafa; }
.jg-notify__form[hidden], .jg-notify__open[hidden] { display: none !important; }
.jg-notify__text { margin: 0; font-size: 14px; line-height: 1.4; color: #555; }
.jg-notify__text_done { padding: 14px 16px; border: 1px solid #cfe8d0; border-radius: 10px; background: #f3faf3; color: #2e7d32; }
.jg-notify__input { width: 100%; box-sizing: border-box; }
.jg-notify .jg-notify__hp, .jg-modal .jg-notify__hp { position: absolute !important; left: -9999px !important; top: auto !important; width: 1px !important; height: 1px !important; min-height: 0 !important; padding: 0 !important; border: 0 !important; opacity: 0 !important; pointer-events: none; }
.jg-notify__consent { display: grid; grid-template-columns: 16px 1fr; gap: 8px; align-items: start; font-size: 12px; line-height: 1.4; color: #666; }
.jg-notify .jg-notify__consent input[type=checkbox], .jg-modal .jg-notify__consent input[type=checkbox] { position: static !important; opacity: 1 !important; appearance: checkbox; -webkit-appearance: checkbox; width: 16px !important; height: 16px !important; min-width: 16px; margin: 1px 0 0; }
.jg-notify__msg { font-size: 13px; min-height: 18px; color: #2e7d32; }
.jg-notify__msg_error { color: #d93a3a; }

/* строки по складам: если нигде нет — одна строка «Нет в наличии» без названий складов */
.jg-stock-collapsed .product-skus-stocks__sku-stock-name { display: none !important; }
.jg-stock-collapsed .product-skus-stocks__sku-stock:not(:first-child) { display: none !important; }

/* кнопка на плитке каталога */
.jg-notify__tile { display: block; width: 100%; margin-top: 8px; padding: 8px 10px; border: 1px solid #e8662c; border-radius: 8px; background: transparent; color: #e8662c; font: inherit; font-size: 13px; line-height: 1.2; cursor: pointer; }
.jg-notify__tile:hover { background: #fff3ec; }

/* окно формы (каталог) */
.jg-modal { position: fixed; inset: 0; z-index: 100000; display: flex; align-items: center; justify-content: center; padding: 16px; background: rgba(0, 0, 0, .45); }
.jg-modal__box { position: relative; width: 100%; max-width: 420px; max-height: 92vh; overflow: auto; padding: 22px 20px 20px; border-radius: 14px; background: #fff; box-shadow: 0 10px 40px rgba(0, 0, 0, .25); }
.jg-modal__title { margin: 0 28px 12px 0; font-weight: 600; font-size: 16px; line-height: 1.3; }
.jg-modal__close { position: absolute; right: 10px; top: 6px; width: 32px; height: 32px; border: 0; background: transparent; font-size: 26px; line-height: 1; cursor: pointer; color: #777; }
.jg-modal .jg-notify__form { margin-top: 0; padding: 0; border: 0; background: transparent; }
body.jg-modal-open { overflow: hidden; }
/* наличие одной строкой для покупателя (общий план M2, 11.11.2026): строки по складам скрыты, вместо них .jg-stock-line */
.product-skus-stocks__sku-stocks.jg-stock-summary { display: none !important; }
.jg-stock-line { display: flex; flex-direction: column; gap: 2px; }
.jg-stock-line__sub { padding-left: 25px; font-size: 13px; line-height: 1.35; color: #686868; }
/* выбор «Количество горелок» (плагин группировки товаров) — только в средней колонке, из блока покупки убран (владелец 11.11.2026) */
.product-cart-form__columns-additional .product-groups { display: none !important; }
/* телефон: цена под названием, цена в липкой кнопке, «Сообщить о поступлении» в липкой панели (общий план M3, 11.11.2026) */
.jg-title-price, .jg-btn-price, .jg-fixed-notify { display: none; }
@media (max-width: 767px) {
  .jg-title-price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 4px 12px; margin-top: 10px; }
  .jg-title-price b { font-size: 24px; font-weight: 700; color: #1b1b1b; }
  .jg-title-price span { font-size: 14px; color: #1e8e4f; }
  .jg-title-price_oos span { color: #686868; }
  .product-add-to-cart__controls_fixed .product-add-to-cart__btn-text { display: flex; flex-direction: column; align-items: flex-start; line-height: 1.15; }
  .product-add-to-cart__controls_fixed .jg-btn-price { display: block; font-size: 13px; font-weight: 600; opacity: .85; }
  .product-add-to-cart__controls_fixed.jg-fixed-oos > *:not(.jg-fixed-notify) { display: none !important; }
  .product-add-to-cart__controls_fixed.jg-fixed-oos .jg-fixed-notify { display: flex; align-items: center; justify-content: center; width: 100%; }
}
/* форма «Выставить счёт»: у способа доставки с одним вариантом не показываем пустой выпадающий список « (Бесплатно)» — цена и так стоит рядом */
.buy1click2-shipping .jq-selectbox.buy1click2-shipping__rates:has(.jq-selectbox__dropdown li:only-child) { display: none !important; }
/* доверие у кнопки «В корзину» (общий план M6) */
.jg-buy-trust { margin: 10px 0 0; font-size: 13px; line-height: 1.45; color: #686868; }
.jg-buy-trust a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.jg-buy-trust a:hover { color: #F25A22; }
/* M24: заголовки вкладок карточки и «Все отзывы» стали h2 (product.html, reviews.html) — вид прежний */
h2.jg-tab-h2 { font-family: inherit; }
h2.title_h2.jg-tab-h2 { margin: 0; }
h2.jg-tab-h2_inline { margin: 0; font: inherit; color: inherit; letter-spacing: inherit; }
.jg-sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
/* JustGrill: блок «Доставка» в карточке товара (плагин dp). Общий план M35 (владелец 11.11.2026): минималистично, но с видимой иерархией —
   в первой строке способ (тёмный, полужирный) и цена справа, под способом мелко серым срок или адрес; «Бесплатно» — зелёным; строки разделены линиями */
.dp-product__group-title { display: none !important; }
.dp-product__header { text-align: left !important; align-items: flex-start !important; margin-bottom: 2px; padding-left: 15px !important; padding-right: 15px !important; }
.dp-product__header::before { font-size: 18px; font-weight: 600; }
.dp-product__service-row {
  display: grid !important; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "title price" "date date";
  column-gap: 14px; row-gap: 2px; align-items: baseline; padding: 12px 0; border-top: 1px solid #ededed; line-height: 1.35;
}
.dp-product__service > .dp-product__service-row:first-of-type { border-top: 0; }
.dp-product__service-calculation, .dp-product__service-rates { display: contents !important; }
.dp-product__service-estimated, .dp-product__service-price { display: block !important; }
.dp-product__service-title { grid-area: title; font-size: 15px; font-weight: 600; color: #1b1b1b; }
.dp-product__service-title .jg-dp-sub { display: block; margin-top: 3px; font-size: 13px; font-weight: 400; color: #686868; }
.dp-product__service-estimated { grid-area: date; font-size: 13px; color: #686868; }
.dp-product__service-estimated:empty { display: none; }
.dp-product__service-estimated, .dp-product__service-estimated * { text-align: left !important; justify-content: flex-start !important; justify-self: start; }
.dp-product__service-price { grid-area: price; font-size: 15px; font-weight: 700; color: #1b1b1b; text-align: right; white-space: nowrap; }
.dp-product__service-estimated::before, .dp-product__service-price::before, .dp-product__service-rates::before, .dp-cost::before, .dp-cost_value::before { content: none !important; }
.dp-product .jg-free, .dp-product .jg-free * { color: #1a7f45 !important; }
.dp-product .jg-manager { display: block !important; grid-area: price; font-size: 13px; color: #686868; text-align: right; white-space: nowrap; }
.jg-dp-note { margin-top: 4px; padding-top: 10px; border-top: 1px solid #ededed; font-size: 12px; line-height: 1.5; color: #8a8a8a; }
.jg-dp-note a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.jg-dp-note a:hover { color: #F25A22; }

/* ===== JustGrill: окно «Ваш город?» (SEO-регионы) — один раз; в корзине блок города скрыт ===== */
html:not(.jg-city-ask) .shop-regions-confirm-window { display: none !important; }
.header-middle-bar__container_checkout .header-middle-bar__container-region { display: none !important; }
/* cookie-плашка: прозрачный отступ снизу (под нижнее меню) не перехватывает нажатия; на телефоне кнопка «Понятно» под текстом слева, справа место под кнопку чата */
.info-panel-container_cookie { pointer-events: none; }
.info-panel-container_cookie .info-panel { pointer-events: auto; }
@media (max-width: 767px) {
  .info-panel-container_cookie .cookie-panel__container { flex-direction: column !important; align-items: flex-start !important; gap: 10px; }
  .info-panel-container_cookie .cookie-panel__button-container { margin: 0 15px !important; }
  .info-panel-container_cookie .cookie-panel__close-button { min-height: 36px; padding: 0 20px !important; }
}
/* cookie-плашка: текст мельче и компактнее */
.info-panel-container_cookie .cookie-panel__content-container { font-size: 13px !important; line-height: 1.4 !important; }
.info-panel-container_cookie .info-panel { padding-top: 10px !important; padding-bottom: 10px !important; }
@media (max-width: 767px) {
  .info-panel-container_cookie .cookie-panel__content-container { font-size: 12px !important; }
  .info-panel-container_cookie .cookie-panel__container { gap: 8px; }
  .info-panel-container_cookie .cookie-panel__close-button { min-height: 32px; font-size: 13px !important; }
}
/* пока cookie-плашка открыта, кнопка чата Jivo поднимается над ней (высоту плашки ставит скрипт в --jg-cookie-h) */
html.jg-cookie-open jdiv[class*="_orientationRight"], html.jg-cookie-open jdiv[class*="_orientationLeft"] { transform: translateY(calc(-1 * var(--jg-cookie-h, 0px))) !important; transition: transform .2s ease; }
/* телефон: логотип в подвале (r-footer) без размеров давал сдвиг вёрстки на коротких страницах (CLS 0,22 на пустой корзине); место под него резервируется заранее */
.r-footer-main__logo .image-box img { display: block; width: 180px; max-width: 100%; height: auto; aspect-ratio: 180 / 57.45; object-fit: contain; }
/* телефон, карточка товара: кнопка чата не закрывает липкую панель «В корзину» — поднимается на её высоту (--jg-bar-h ставит скрипт, общий план M4, 11.11.2026) */
html.jg-bar-open:not(.jg-cookie-open) jdiv[class*="_orientationRight"], html.jg-bar-open:not(.jg-cookie-open) jdiv[class*="_orientationLeft"] { transform: translateY(calc(-1 * var(--jg-bar-h, 0px))) !important; transition: transform .2s ease; }
/* контраст текста (общий план M28, владелец 11.11.2026): оранжевый «на тон темнее», не кирпичный; остальные цвета — до нормы WCAG 4,5:1.
   html:root перебивает :root из настроек темы. Откат — удалить этот блок. */
html:root {
  --primary-color: #e8561c; --header-bottom-bar-bg-color: #e8561c; --add-to-cart-button-color: #e8561c;
  --primary-color-alpha-5: rgba(232, 86, 28, .5);
  --price-with-compare-color: #d61f1f; --badge-discount-color: #d61f1f;
}
.product-available_in-stock, .product-available_in-stock .product-available__icon-content { color: #1a7f45 !important; }
.value__label-text { color: #6f6f6f !important; }
[class*="compare-price"] .price, [class*="compare-price"] .ruble { color: #8a8a8a !important; }
/* телефон (общий план M30, 11.11.2026): лента подкатегорий/брендов не сдвигает страницу вбок (выступала на 5 px), главные кнопки — не ниже 44 px, подписи нижнего меню крупнее */
@media (max-width: 767px) {
  .content__subcategories-wrapper { overflow-x: clip; }
  .product-thumb__add-to-cart, .product-add-to-cart__button, .jg-fixed-notify { min-height: 44px; }
  .fixed-bar__item-name { font-size: 11px !important; }
}
/* ===== JustGrill: главная — слайдер «Выберите свой гриль» (10.11.2026, docs/2026-11-10-home-page.md) ===== */
.blocks__item_home .categories-thumbs__wrapper { display: flex !important; flex-wrap: nowrap !important; grid-template-columns: none !important; gap: 16px; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; scrollbar-width: none; padding-bottom: 4px; }
.blocks__item_home .categories-thumbs__wrapper::-webkit-scrollbar { display: none; }
.blocks__item_home .categories-thumbs__item { flex: 0 0 calc((100% - 64px) / 5) !important; width: auto !important; max-width: none !important; margin: 0 !important; scroll-snap-align: start; display: block !important; }
.blocks__item_home .categories-thumbs__footer { display: none !important; }
.jg-cat-head { display: flex !important; align-items: center; justify-content: space-between; gap: 12px; }
.jg-cat-arrows { display: flex; gap: 8px; flex: 0 0 auto; }
.jg-cat-arrows button { width: 40px; height: 40px; border-radius: 50%; border: 1px solid #e6e6e6; background: #fff; color: #1b1b1b; font-size: 22px; line-height: 1; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; padding: 0 0 2px; }
.jg-cat-arrows button:hover:not(:disabled) { border-color: #e8561c; color: #e8561c; }
.jg-cat-arrows button:disabled { opacity: .35; cursor: default; }
@media (max-width: 1023px) { .blocks__item_home .categories-thumbs__item { flex-basis: calc((100% - 32px) / 3) !important; } }
@media (max-width: 767px) {
  .blocks__item_home .categories-thumbs__wrapper { gap: 12px; }
  .blocks__item_home .categories-thumbs__item { flex-basis: 44% !important; }
  .jg-cat-arrows { display: none; }
}
/* главная — блок «О компании»: фото магазина баннером над текстом (11.11.2026) */
.home-about { flex-direction: column !important; align-items: stretch !important; gap: 24px; }
.home-about__img-block, .home-about__content { flex: none !important; width: 100% !important; max-width: 100% !important; height: auto !important; }
.home-about__img { display: block; width: 100% !important; height: auto !important; aspect-ratio: 5 / 2; object-fit: cover !important; border-radius: 16px; }
.home-about__content { max-width: 920px !important; }
@media (max-width: 767px) { .home-about { gap: 16px; } .home-about__img { border-radius: 12px; } }
/* главная — стрелки слайдера баннеров: белый круг с тенью, тёмная стрелка — видны на любом баннере (13.11.2026) */
.slider .slider__next-arrow, .slider .slider__prev-arrow { width: 40px; height: 40px; color: #1b1b1b; }
.slider .slider__next-arrow::after, .slider .slider__prev-arrow::after { opacity: 1 !important; background-color: #fff; box-shadow: 0 2px 10px rgba(0, 0, 0, .28); }
.slider .slider__next-arrow:hover, .slider .slider__prev-arrow:hover { color: #e8561c; }
.slider .slider__arrow-icon { width: 15px; height: 15px; }
.slider .slider__slider { overscroll-behavior-x: contain; }
.slider .slider__dots { background: rgba(27, 27, 27, .45); padding: 8px 12px; border-radius: 999px; width: auto !important; }
.slider .slider__dot { background-color: rgba(255, 255, 255, .55); }
@media (max-width: 767px) { .slider .slider__next-arrow, .slider .slider__prev-arrow { width: 36px; height: 36px; } }
/* главная — блок «О компании»: телефон ссылкой и кнопки мессенджеров (13.11.2026) */
.home-about__text a[href^="tel:"] { color: inherit; font-weight: 600; white-space: nowrap; text-decoration: underline; text-underline-offset: 3px; }
.home-about__text a[href^="tel:"]:hover { color: #e8561c; }
.jg-about-chat { display: flex; flex-wrap: wrap; gap: 10px 12px; margin-top: 16px; }
.jg-about-chat a { display: inline-flex; align-items: center; gap: 8px; padding: 8px 16px 8px 10px; border: 1px solid #e6e6e6; border-radius: 999px; color: #1b1b1b; font-size: 15px; font-weight: 500; text-decoration: none; background: #fff; }
.jg-about-chat a:hover { border-color: #e8561c; color: #e8561c; }
.jg-about-chat svg, .jg-about-chat img { width: 28px; height: 28px; flex: none; display: block; }
/* главная городов пилота M26 (msk, spb, nn, krd) — плашка «Доставка в {город}» в блоке «О компании» (13.11.2026) */
.home-about__text .jg-city-home { margin: 0 0 18px; padding: 14px 18px; border-radius: 12px; background: #fff4ee; border: 1px solid #f6d3c2; color: #1b1b1b; font-size: 16px; line-height: 1.55; }
.home-about__text .jg-city-home a { color: #c94a17; font-weight: 600; white-space: nowrap; }
/* ===== JustGrill: каталог — крошки на телефоне, серая плашка бонусов (10.11.2026, docs/2026-11-10-category-pages.md) ===== */
@media (max-width: 767px) {
  .content__breadcrumbs { overflow: hidden; }
  .content__breadcrumbs .breadcrumbs { flex-wrap: nowrap; min-width: 0; max-width: 100%; }
  .content__breadcrumbs .breadcrumbs__item_current { min-width: 0; overflow: hidden; flex: 0 1 auto; }
  .content__breadcrumbs .breadcrumbs__item_current-text { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
}
.bonus-block { background-color: #f2f2f2; color: #555; }
.bonus-block__icon { color: #888; }
.jg-free-delivery { display: flex; align-items: center; gap: 6px; margin-top: 6px; font-size: 13px; line-height: 1.2; color: #1a7f45; cursor: default; }
.jg-free-delivery svg { flex: 0 0 16px; }
@media (max-width: 767px) { .jg-free-delivery { font-size: 12px; } }
/* подарочная наклейка: тёмно-синий вместо голубого BodySite (контраст 4,63; M28, 11.11.2026) */
.product-badge.product-badge_custom>.badge.jg-gift-badge { background-color: #157bb5 !important; }

/* ===== JustGrill: карточка товара — компактная сопутка (13.11.2026) =====
   Блок «С этим товаром также покупают» (#crossselling): плитки уже и ниже, чтобы на экране помещалось больше,
   без бонусов, сравнения/избранного и точек галереи. Цена, название, наличие и «В корзину» остаются.
   Порядок блоков (сопутка выше «Похожих») — настройка темы shop_product_upselling_lists. */
#crossselling .products-thumbs_slider .products-thumbs__item { width: 196px; padding-left: 16px; }
#crossselling .products-thumbs_slider { margin-left: -16px; }
#crossselling .product-thumb__image-container { margin-bottom: 8px; }
#crossselling .product-thumb__image-box { height: 150px; }
#crossselling .product-thumb__gallery-d,
#crossselling .product-thumb__gallery-image { height: 150px; }
#crossselling .product-thumb__image { width: 100%; height: 150px; object-fit: contain; }
#crossselling .product-thumb__gallery-pagination,
#crossselling .product-thumb__gallery-field-pagination,
#crossselling .product-thumb__bonuses,
#crossselling .product-thumb__buttons-additional,
#crossselling .product-thumb__image-button,
#crossselling .product-thumb__rating { display: none !important; }
#crossselling .product-thumb__info { gap: 4px; }
#crossselling .product-thumb__prices .price-wrapper { font-size: 16px; }
#crossselling .product-thumb__name {
    font-size: 13px; line-height: 1.3; margin: 2px 0 0;
    display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.6em;
}
#crossselling .product-thumb__available { font-size: 12px; }
#crossselling .product-thumb__buttons-holder { margin-top: 8px; }
#crossselling .product-thumb__buttons-main { width: 100%; }
#crossselling .product-thumb__add-to-cart { width: 100%; height: 34px; min-height: 34px; padding: 0 10px; font-size: 13px; }
@media (max-width: 767px) {
    #crossselling .products-thumbs_slider { margin-left: -10px; }
    #crossselling .products-thumbs_slider .products-thumbs__item { width: 40vw; max-width: 170px; padding-left: 10px; }
    #crossselling .product-thumb__image-box,
    #crossselling .product-thumb__gallery-d,
    #crossselling .product-thumb__gallery-image,
    #crossselling .product-thumb__image { height: 120px; }
}

/* ===== JustGrill: оформление заказа (копия темы novashop_cart, на живой сайт не включено) ===== */
.order-page__container { display: grid !important; grid-template-columns: minmax(0, 7fr) minmax(0, 5fr); gap: 24px; align-items: start; }
.order-page__container > .order-page__form-container { order: 1; width: auto !important; max-width: none !important; flex: none !important; margin: 0 !important; padding: 0 !important; }
.order-page__container > .order-page__cart-container { order: 2; position: sticky; top: 16px; width: auto !important; max-width: none !important; flex: none !important; margin: 0 !important; padding: 0 !important; }
.order-page__cart-container .slider-block { display: none !important; }            /* «Рекомендуем» — не на странице оформления */
.order-page__cart-container .order-page__header, .order-page__form-container .order-page__header { margin-bottom: 14px; }

/* форма: один белый блок, шаги разделены линиями */
.order-page__form.block_secondary, .order-page__form .block__content { background: transparent !important; box-shadow: none !important; padding: 0 !important; border: 0 !important; }
.order-page__form-container .wa-form-content { background: #fff; border-radius: 16px; padding: 6px 28px 10px; }
.order-page__form-container .wa-step-section { padding: 24px 0 !important; margin: 0 !important; border: 0; }
.order-page__form-container .wa-step-section + .wa-step-section { border-top: 1px solid #ececec; }
.order-page__form-container .wa-form-content { counter-reset: jgstep; }
.order-page__form-container .wa-step-auth-section .wa-section-header,
.order-page__form-container .wa-step-region-section .wa-section-header,
.order-page__form-container .wa-step-payment-section .wa-section-header { counter-increment: jgstep; display: flex; align-items: center; gap: 12px; }
.order-page__form-container .wa-step-auth-section .wa-section-header::before,
.order-page__form-container .wa-step-region-section .wa-section-header::before,
.order-page__form-container .wa-step-payment-section .wa-section-header::before { content: counter(jgstep); display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #1b1b1b; color: #fff; font-size: 13px; font-weight: 600; flex: none; }

/* желаемое время доставки скрыто (решение владельца) */
.jg-hide { display: none !important; }

@media (max-width: 960px) {
  .order-page__container { grid-template-columns: 1fr; gap: 16px; }
  .order-page__container > .order-page__cart-container { order: -1; position: static; }
  .order-page__form-container .wa-form-content { padding: 4px 18px 8px; border-radius: 14px; }
}

/* итерация 2: фон страницы, поля, карточки доставки, карточка заказа */
body:has(.order-page) { background: #f5f5f5; }
.order-page__cart-container .order-page__block .block__content { background: #fff; border-radius: 16px; padding: 22px 24px; }
.order-page__cart-container .order-page__block { background: transparent !important; box-shadow: none !important; border: 0 !important; padding: 0 !important; }
.order-page__header .title { font-size: 28px; line-height: 1.2; font-weight: 600; letter-spacing: -.01em; }
#js-order-form input[type=text], #js-order-form input[type=tel], #js-order-form input[type=email], #js-order-form input[type=password], #js-order-form textarea, #js-order-form select {
  background: #f5f5f5 !important; border: 1.5px solid transparent !important; border-radius: 14px !important; min-height: 48px; padding: 0 16px; font-size: 15px; transition: border-color .18s cubic-bezier(.22,1,.36,1), background-color .18s cubic-bezier(.22,1,.36,1); box-shadow: none !important; }
#js-order-form textarea { min-height: 84px; padding: 12px 16px; }
#js-order-form input:hover, #js-order-form textarea:hover { background: #efefef !important; }
#js-order-form input:focus, #js-order-form textarea:focus, #js-order-form select:focus { background: #fff !important; border-color: #F25A22 !important; outline: none; }
#js-order-form .wa-type-wrapper { border: 1.5px solid #ececec !important; border-radius: 14px !important; background: #fff !important; box-shadow: none !important; transition: border-color .18s cubic-bezier(.22,1,.36,1), background-color .18s cubic-bezier(.22,1,.36,1); }
#js-order-form .wa-type-wrapper:hover { border-color: #d9d9d9 !important; }
#js-order-form .wa-type-wrapper.is-active { border-color: #F25A22 !important; background: #fffaf7 !important; }
#js-order-form .wa-type-wrapper .wa-price { font-weight: 600; }
#js-order-form .wa-step-confirm-section .wa-section-body { padding: 0; }

/* итерация 3: оплата, итог и кнопка, свёрнутая карточка заказа на телефоне */
#js-order-form .wa-methods-list { display: grid; gap: 10px; }
#js-order-form .wa-method-wrapper { margin: 0 !important; }
#js-order-form .wa-method-wrapper .wa-method { display: flex; align-items: flex-start; gap: 12px; padding: 14px 16px; border: 1.5px solid #ececec; border-radius: 14px; background: #fff; cursor: pointer; transition: border-color .18s cubic-bezier(.22,1,.36,1), background-color .18s cubic-bezier(.22,1,.36,1); }
#js-order-form .wa-method-wrapper:hover .wa-method { border-color: #d9d9d9; }
#js-order-form .wa-method-wrapper:has(input:checked) .wa-method { border-color: #F25A22; background: #fffaf7; }
#js-order-form .wa-method-body { flex: 1; min-width: 0; }
#js-order-form .wa-method .wa-image-wrapper img { max-height: 22px; width: auto; }
#js-order-form .wa-method-arrow { display: none; }
#js-order-form .wa-total-section { background: #f7f7f7; border-radius: 14px; padding: 16px 18px; }
#js-order-form .wa-total-section .wa-item { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 4px 0; }
#js-order-form .wa-total-section .wa-item .wa-name { color: #666; }
#js-order-form .wa-total-section .wa-item-total { margin-top: 6px; padding-top: 12px; border-top: 1px solid #e6e6e6; }
#js-order-form .wa-total-section .wa-item-total .wa-name { color: #1b1b1b; font-size: 16px; font-weight: 600; }
#js-order-form .wa-total-section .wa-item-total .wa-value { font-size: 22px; font-weight: 700; }
#js-order-form .wa-submit-button { width: 100%; height: 54px; border-radius: 16px; font-size: 19px; font-weight: 700; }
.jg-cart-bar { display: none; }
@media (max-width: 960px) {
  .jg-cart-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; padding: 16px 18px; border: 0; border-radius: 14px; background: #fff; color: #1b1b1b; font: inherit; font-size: 16px; font-weight: 600; text-align: left; cursor: pointer; }
  .jg-cart-bar b { margin-left: auto; font-weight: 700; white-space: nowrap; }
  .jg-cart-bar span { color: #bf4a12; font-size: 13px; font-weight: 500; white-space: nowrap; }
  .order-page__cart-container.jg-cart-closed > :not(.jg-cart-bar) { display: none !important; }
  .order-page__cart-container.jg-cart-open .jg-cart-bar { margin-bottom: 10px; }
  #js-order-form .wa-total-section { padding: 14px 16px; }
}

/* итерация 4: заголовок не обрезается, вход в аккаунт мельче */
.order-page__form-container .order-page__header, .order-page__cart-container .order-page__header { height: auto !important; min-height: 0 !important; overflow: visible !important; }
.order-page__form-container .order-page__header .title { margin: 0 !important; line-height: 1.2 !important; }
#js-order-form .wa-step-auth-section .wa-section-header { flex-wrap: wrap; row-gap: 4px; }
#js-order-form .wa-step-auth-section .wa-section-header a, #js-order-form .wa-step-auth-section .wa-section-header .wa-link { font-size: 13px; }
/* форма ядра сдвинута вверх на ~30px относительно своего блока: даём заголовку место */
.order-page__form-container .order-page__header { margin-bottom: 46px !important; }
#js-order-form .wa-details-rates-section .wa-cell-value-description { display: none !important; }   /* «выбрать удобное время» — время доставки скрыто */
@media (max-width: 640px) {
  #js-order-form .wa-methods-list { grid-template-columns: 1fr !important; }
  #js-order-form .wa-methods-list .wa-method-wrapper { width: 100% !important; max-width: none !important; flex: none !important; }
}

/* итерация 5: карточки типов доставки одного размера, цена и срок серым */
#js-order-form .wa-types-list { grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)) !important; gap: 12px !important; align-items: stretch; }
#js-order-form .wa-type-wrapper { width: auto !important; min-height: 112px; padding: 14px 16px !important; display: flex; flex-direction: column; }
#js-order-form .wa-type-wrapper .wa-name, #js-order-form .wa-type-wrapper .wa-name a { font-size: 15px; font-weight: 600; color: #1b1b1b; }
#js-order-form .wa-type-wrapper .wa-date, #js-order-form .wa-type-wrapper .wa-price { margin-top: 4px; font-size: 13px; font-weight: 400 !important; color: #666 !important; }
#js-order-form .wa-type-wrapper .wa-date { margin-top: auto; padding-top: 8px; }
/* предпросмотр способов оплаты до выбора доставки */
.order-page__form-container .jg-pay-preview .wa-section-header { counter-increment: jgstep; display: flex; align-items: center; gap: 12px; }
.order-page__form-container .jg-pay-preview .wa-section-header::before { content: counter(jgstep); display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #1b1b1b; color: #fff; font-size: 13px; font-weight: 600; flex: none; }
.jg-pay-list { display: flex; flex-wrap: wrap; gap: 8px; margin: 14px 0 10px; padding: 0; list-style: none; }
.jg-pay-list li { padding: 8px 14px; border: 1.5px solid #ececec; border-radius: 999px; font-size: 14px; color: #1b1b1b; background: #fff; }
.jg-pay-note { margin: 0; font-size: 13px; color: #666; }

/* итерация 6: по замечаниям владельца (Краснодар) */
/* один блок суммы: итоги остаются внизу формы, в карточке «Ваш заказ» — только товары и сертификат */
.order-page__cart-container .order-cart-info, .order-page__cart-container .row-value { display: none !important; }
/* после выбора ПВЗ: без часов работы и фото пункта */
#js-order-form .wa-schedule-wrapper, #js-order-form .wa-photos-section { display: none !important; }
/* оплата в формате макета: один столбец, компактные строки */
#js-order-form .wa-methods-list { grid-template-columns: 1fr !important; gap: 8px !important; }
#js-order-form .wa-methods-list .wa-method-wrapper { width: 100% !important; max-width: none !important; flex: none !important; }
#js-order-form .wa-method-wrapper .wa-method { align-items: center; padding: 12px 16px; }
#js-order-form .wa-method-body { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 10px; }
#js-order-form .wa-method-body .wa-image-wrapper { flex: none; display: flex; align-items: center; }
#js-order-form .wa-method-body .wa-image-wrapper img { max-height: 20px; max-width: 48px; }
#js-order-form .wa-method-body .wa-payment-name, #js-order-form .wa-method-body .wa-payment-name a { font-size: 15px; font-weight: 600; color: #1b1b1b; text-decoration: none; }
#js-order-form .wa-method-body .wa-description { flex-basis: 100%; margin: 0; font-size: 13px; line-height: 1.4; color: #666; }
#js-order-form .wa-method-body .wa-description a { color: inherit; }

/* итерация 7: один блок суммы как у BeGrill — справа «Товары / Доставка / Итого» и кнопка (ПК); на телефоне итог и кнопка внизу формы */
.order-page__cart-container .wa-cart-details .wa-column-price { display: none !important; }   /* итог корзины; цена товара остаётся */
.jg-summary { display: none; }
@media (min-width: 961px) {
  .jg-summary { display: block; margin-top: 16px; padding: 18px 20px; background: #fff; border-radius: 16px; }
  .jg-summary__row { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; padding: 4px 0; color: #666; font-size: 15px; }
  .jg-summary__row b { color: #1b1b1b; font-weight: 500; white-space: nowrap; }
  .jg-summary__row_total { margin-top: 8px; padding-top: 12px; border-top: 1px solid #ececec; color: #1b1b1b; font-size: 16px; font-weight: 600; }
  .jg-summary__row_total b { font-size: 24px; font-weight: 700; }
  .jg-summary__btn { display: block; width: 100%; height: 54px; margin-top: 14px; border: 0; border-radius: 16px; background: #f25a22; color: #fff; font: inherit; font-size: 17px; font-weight: 600; cursor: pointer; }
  .jg-summary__btn:hover { background: #e04c16; }
  .jg-summary__btn[disabled] { opacity: .5; cursor: default; }
  .jg-summary__note { margin: 10px 0 0; font-size: 12px; line-height: 1.4; color: #888; }
  #js-order-form .wa-step-confirm-section .wa-total-section,
  #js-order-form .wa-step-confirm-section .wa-actions-section { display: none !important; }
}
/* телефон: в карточке типа доставки срок и цена слева, без пустого места */
@media (max-width: 640px) {
  #js-order-form .wa-type-wrapper { min-height: 0; }
  #js-order-form .wa-type-wrapper .wa-date, #js-order-form .wa-type-wrapper .wa-price { align-self: flex-start !important; text-align: left !important; float: none !important; position: static !important; margin-left: 0 !important; width: auto !important; }
  #js-order-form .wa-type-wrapper .wa-date { margin-top: 6px; padding-top: 0; }
}

/* итерация 8: карточка «Ваш заказ» компактнее, сертификат спокойнее, итог не обрезается при прокрутке */
.order-page__cart-container .block__content { padding: 16px 18px !important; }
.order-page__cart-container .order-page__header { margin-bottom: 10px !important; }
.order-page__cart-container .order-page__header .title { font-size: 24px; }
.order-page__cart-container .wa-product { padding-bottom: 12px !important; }
.order-page__cart-container .wa-product + .wa-product { padding-top: 12px !important; border-top: 1px solid #f0f0f0; }
@media (min-width: 961px) {
  .order-page__cart-container .wa-column-image { width: 64px !important; flex: none !important; margin-right: 12px !important; }
  .order-page__cart-container .wa-image-section, .order-page__cart-container .wa-image-section a { width: 64px !important; height: 64px !important; }
  .order-page__cart-container .wa-image-section img { max-width: 64px !important; max-height: 64px !important; }
  .order-page__cart-container .wa-column-main { flex-wrap: wrap !important; align-items: center; row-gap: 8px; }
  .order-page__cart-container .wa-column-details { flex: 1 1 100% !important; width: 100% !important; }
  .order-page__cart-container .wa-details .wa-name { font-size: 14px; line-height: 1.35; }
  .order-page__cart-container .wa-column-quantity { margin: 0 !important; }
  .order-page__cart-container .wa-column-price { margin-left: auto !important; display: flex !important; align-items: center; gap: 10px; width: auto !important; }
  .order-page__cart-container .wa-column-price .wa-price-section { order: 2; }
  .order-page__cart-container .wa-column-price .wa-price-total { font-size: 16px; font-weight: 700; white-space: nowrap; }
  .order-page__cart-container .wa-column-price .wa-add-actions { margin: 0 !important; order: 1; }
}
.order-page__cart-container .wa-cart-details { margin-top: 4px !important; padding-top: 12px; border-top: 1px solid #f0f0f0; }
.order-page__cart-container .wa-coupon-section .giftcertificates-form { margin: 0 0 8px !important; }
.order-page__cart-container .giftcertificates-field { display: flex; gap: 8px; }
.order-page__cart-container .giftcertificates-code-input { height: 36px !important; padding: 6px 14px !important; background: #f5f5f5 !important; border: 0 !important; border-radius: 10px !important; font-size: 14px !important; }
.order-page__cart-container .giftcertificates-submit-button { height: 36px !important; margin: 0 !important; padding: 0 14px !important; background: transparent !important; color: #1b1b1b !important; border: 1px solid #dcdcdc !important; border-radius: 10px !important; font-size: 14px !important; font-weight: 500 !important; box-shadow: none !important; }
.order-page__cart-container .giftcertificates-submit-button:hover { border-color: #b5b5b5 !important; }
.order-page__cart-container .wa-order-bonus { font-size: 12px; line-height: 1.4; color: #888; }
.order-page__cart-container .wa-order-bonus strong { color: #555; font-weight: 600; }
@media (min-width: 961px) {
  .jg-summary { margin-top: 12px !important; padding: 12px 0 0 !important; border-top: 1px solid #f0f0f0; border-radius: 0 !important; }
}
.jg-summary__row_discount b { color: #d33 !important; }
.jg-summary__row[hidden] { display: none !important; }
/* подсказка: почта с ошибкой — способы доставки не считаются (11.11.2026) */
.jg-email-ship-hint { margin: 12px 0 0; padding: 10px 14px; border-radius: 10px; background: #fff4ef; color: #b23c0d; font-size: 14px; line-height: 1.4; }
/* строка доверия под итогом (общий план M6, 11.11.2026) */
.jg-trust { margin: 10px 0 0; font-size: 13px; line-height: 1.45; color: #686868; }
.jg-trust a { color: inherit; text-decoration: underline; }
@media (min-width: 961px) { .wa-step-confirm-section .jg-trust { display: none; } }   /* на ПК одна строка — справа под итогом (проверка 12.11) */

/* ===== доступность для всего сайта (общий план M29, 11.11.2026) ===== */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible,
[role="button"]:focus-visible, [role="radio"]:focus-visible, [role="tab"]:focus-visible, [tabindex]:focus-visible { outline: 2px solid #1b1b1b !important; outline-offset: 2px !important; }
/* поиск в шапке: вместо квадратной рамки внутри овала — оранжевая подсветка всего поля (владелец «да» 13.11.2026) */
.searchpro__field-input:focus-visible { outline: none !important; }
.searchpro__field-container:focus-within { border-color: #F25A22 !important; box-shadow: 0 0 0 1px #F25A22; }
.jg-skip { position: absolute; left: 8px; top: -60px; z-index: 10000; padding: 10px 14px; border-radius: 10px; background: #1b1b1b; color: #fff !important; font-weight: 600; text-decoration: none; }
.jg-skip:focus { top: 8px; }
/* скрытые выпадашки «соседних разделов» в хлебных крошках не получают фокус */
.breadcrumbs__brothers-dropdown { visibility: hidden; }
.breadcrumbs__item:hover .breadcrumbs__brothers-dropdown, .breadcrumbs__item:focus-within .breadcrumbs__brothers-dropdown { visibility: visible; }
/* ссылки внутри текста описания и статей — подчёркнуты, а не только цветом */
.product-description p a, .post-content p a, .blog-post p a, .content-text p a { text-decoration: underline; text-underline-offset: 3px; }

/* ===== подарок к грилю в корзине и оформлении (14.11.2026) ===== */
.jg-cart-gift { margin-top: 8px; display: flex; flex-direction: column; gap: 6px; }
.jg-cart-gift__row { display: flex; align-items: center; gap: 8px; padding: 6px 10px; border-radius: 10px; background: #eef7f1; font-size: 13px; line-height: 1.35; color: #1b1b1b; }
.jg-cart-gift__img { flex: 0 0 32px; width: 32px; height: 32px; object-fit: contain; border-radius: 6px; background: #fff; }
.jg-cart-gift__text { min-width: 0; }
.jg-cart-gift__label { font-weight: 600; color: #1a7f45; }
.jg-cart-gift__name { color: inherit; text-decoration: underline; text-decoration-color: rgba(0,0,0,.25); }
.jg-cart-gift__name:hover { color: #c2410c; }
.jg-cart-gift__sku { color: #666; white-space: nowrap; }
.jg-cart-gift__price { color: #1a7f45; white-space: nowrap; }

/* ===== галочка согласия на оформлении (14.11.2026) =====
   Замечание менеджера (Яндекс Браузер, Windows): галочка ставилась кликом не по рамке, а выше и левее — там, где тема прячет
   настоящий input размером 0×0. Кладём невидимый input ровно поверх нарисованной рамки: клик по рамке попадает прямо в него,
   не полагаясь на подпись. Рамка — у первой строки текста, а не посередине двух строк. Клик по тексту работает как раньше. */
.order-form-decorator .is-agreement-field .wa-checkbox-wrapper .checkbox { align-self: flex-start; margin-top: 1px; }
.order-form-decorator .is-agreement-field .wa-checkbox-wrapper .checkbox__control {
    left: 0; top: 0; width: 20px; height: 20px; margin: 0; z-index: 1; pointer-events: auto; cursor: pointer;
}
