/* ==========================================================================
   Башпчелпром — премиум-редизайн (слой поверх базовой темы).
   Концепция «Свет проходит насквозь»: тёплый янтарь + кремовая бумага +
   характерный серив для заголовков (наследие/семья) и чистый гротеск для
   данных. Файл переопределяет дизайн-токены и полирует ключевые блоки.
   Безопасно отключается удалением enqueue в functions.php.
   ========================================================================== */

/* 1. Дизайн-токены: тёплый янтарь вместо неонового оранжевого,
   кремовые фоны вместо холодного серого, мягкие радиусы. */
:root {
  --bp-orange:      #d99514; /* глубокий мёд */
  --bp-orange-dark: #b3760a;
  --bp-orange-soft: #fbf1da; /* кремовая бумага */
  --bp-amber-deep:  #a9650c;
  --bp-dark:        #1d1711; /* тёплый почти-чёрный */
  --bp-ink:         #2a2018;
  --bp-muted:       #7a6f60;
  --bp-line:        #ece2cf;
  --bp-soft:        #faf4e9; /* тёплый светлый фон секций */
  --bp-cream:       #fdf9f0;
  --bp-green:       #6f8f3c; /* липовый акцент */
  --bp-radius:      12px;
  --bp-radius-lg:   20px;
  --bp-shadow:      0 18px 44px rgba(58, 38, 8, .12);
  --bp-shadow-soft: 0 10px 26px rgba(58, 38, 8, .08);
  --bp-serif:       "Playfair Display", "TT Norms", Georgia, serif;
}

/* 2. Типографика: серив для заголовков = наследие и премиальность. */
body { background: var(--bp-cream); color: var(--bp-ink); }

h1, h2, .bp-title, .bp-herofg__title,
.bp-eco-figma h2, .bp-family__copy h2, .bp-documents__copy h2,
.bp-section__head h2, .bp-discount__copy h2 {
  font-family: var(--bp-serif);
  letter-spacing: -.01em;
  line-height: 1.12;
}
.bp-title strong, .bp-herofg__title strong { color: var(--bp-amber-deep); font-weight: 700; }

.bp-kicker {
  display: inline-block;
  font-family: "TT Norms", Arial, sans-serif;
  font-size: 12px;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--bp-amber-deep);
  background: var(--bp-orange-soft);
  border-radius: 999px;
  padding: 6px 14px;
  margin-bottom: 14px;
}
.bp-lead { color: var(--bp-muted); font-size: 18px; line-height: 1.55; max-width: 760px; }

/* 3. Кнопки: насыщенный янтарь с мягким свечением. */
.bp-button {
  background: linear-gradient(135deg, var(--bp-orange) 0%, var(--bp-amber-deep) 100%);
  border: none;
  border-radius: 999px;
  box-shadow: 0 8px 20px rgba(168, 101, 12, .28);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.bp-button:hover { transform: translateY(-2px); box-shadow: 0 12px 26px rgba(168, 101, 12, .36); filter: brightness(1.04); }
.bp-button--light {
  background: #fff;
  color: var(--bp-amber-deep);
  border: 1.5px solid var(--bp-line);
  box-shadow: none;
}
.bp-button--light:hover { border-color: var(--bp-orange); color: var(--bp-amber-deep); transform: translateY(-2px); }

/* 4. Hero: тёплая подложка и крупный серив. */
.bp-herofg {
  background:
    linear-gradient(90deg, rgba(24, 18, 10, .78) 0%, rgba(24, 18, 10, .55) 38%, rgba(24, 18, 10, .16) 68%, rgba(24, 18, 10, .05) 100%),
    linear-gradient(180deg, rgba(24, 18, 10, .08) 0%, rgba(24, 18, 10, .5) 100%),
    url("../images/hero-main.webp") center 42% / cover no-repeat;
}
.bp-herofg__copy {
  max-width: min(650px, 58vw);
}
.bp-herofg__copy .bp-herofg__title {
  max-width: none;
  color: var(--bp-cream);
  font-size: clamp(30px, 2.5vw, 42px);
  line-height: 1.08;
}
.bp-herofg__copy .bp-herofg__title strong,
.bp-herofg__subtitle strong { color: var(--bp-orange); }
.bp-herofg__subtitle {
  color: rgba(253, 249, 240, .9);
  font-size: clamp(17px, 1.25vw, 21px);
  line-height: 1.42;
}

@media (max-width: 900px) {
  .bp-herofg {
    overflow-x: hidden;
    background-position: 58% 28%;
  }
  .bp-herofg__inner,
  .bp-herofg__copy {
    width: 100%;
    max-width: none;
    min-width: 0;
  }
  .bp-herofg__copy .bp-herofg__title {
    max-width: 100%;
    font-size: clamp(27px, 7vw, 34px);
    overflow-wrap: break-word;
  }
  .bp-herofg__subtitle {
    max-width: 100%;
    color: rgba(253, 249, 240, .92);
    overflow-wrap: break-word;
  }
  .bp-herofg__cards {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }
  .bp-herofg-card {
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
  }
  .bp-herofg-card p {
    min-width: 0;
    overflow-wrap: break-word;
  }
}
.bp-herofg-card {
  background: rgba(255, 252, 245, .07);
  border: 1px solid rgba(217, 149, 20, .28);
  border-radius: var(--bp-radius);
  backdrop-filter: blur(4px);
  transition: transform .2s ease, border-color .2s ease;
}
.bp-herofg-card:hover { transform: translateY(-3px); border-color: var(--bp-orange); }
.bp-herofg-card p { color: rgba(253, 249, 240, .9); }
.bp-herofg-card strong { color: var(--bp-orange); }

/* 5. Секции и заголовки: воздух и тёплые разделители. */
.bp-section--soft { background: var(--bp-soft); }
.bp-section__head h2 { font-size: clamp(24px, 2.6vw, 38px); }

/* 6. Блоки доверия (кооператив): «лицо + система». */
.bp-home-trust {
  padding-top: clamp(44px, 4.4vw, 68px);
  padding-bottom: clamp(44px, 4.4vw, 68px);
}

.bp-home-trust__grid { gap: 22px; }

.bp-home-trust__card {
  position: relative;
  overflow: hidden;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 24px;
  min-height: 190px;
  padding: 34px;
}

.bp-home-trust__card,
.bp-home-trust .bp-info {
  background:
    radial-gradient(120px 90px at 18% 8%, rgba(255, 177, 58, .16), rgba(255, 177, 58, 0) 74%),
    #fffaf0;
  border: 1px solid rgba(222, 169, 88, .34);
  border-radius: 20px;
  box-shadow: 0 22px 48px rgba(62, 43, 20, .08);
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease;
}

.bp-home-trust__card::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(255, 159, 26, .18), rgba(255, 159, 26, 0) 34%);
  opacity: 0;
  transition: opacity .22s ease;
}

.bp-home-trust__card:hover,
.bp-home-trust__card:focus-within {
  border-color: rgba(255, 159, 26, .68);
  background:
    radial-gradient(140px 110px at 18% 8%, rgba(255, 177, 58, .24), rgba(255, 177, 58, 0) 76%),
    #fffdf6;
  box-shadow: 0 28px 62px rgba(79, 52, 18, .14);
  transform: translateY(-6px);
}

.bp-home-trust__card:hover::after,
.bp-home-trust__card:focus-within::after {
  opacity: 1;
}

.bp-home-trust__card strong {
  display: block;
  margin-bottom: 9px;
  color: #3f382f;
  font-size: 20px;
  font-weight: 950;
  line-height: 1.18;
}

.bp-home-trust .bp-info i,
.bp-home-trust__card i {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 72px;
  height: 72px;
  border: 1px solid rgba(255, 159, 26, .26);
  border-radius: 20px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .72), rgba(255, 244, 221, .96)),
    var(--bp-orange-soft);
  box-shadow: 0 12px 28px rgba(255, 159, 26, .16), inset 0 0 0 8px rgba(255, 159, 26, .08);
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.bp-home-trust__card i::after {
  content: "";
  position: absolute;
  right: 13px;
  bottom: 13px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #ff9f1a;
  box-shadow: 0 0 0 5px rgba(255, 159, 26, .14);
}

.bp-home-trust__card i img {
  width: 34px;
  height: 34px;
  object-fit: contain;
  transition: transform .22s ease;
}

.bp-home-trust__card:hover i,
.bp-home-trust__card:focus-within i {
  border-color: rgba(255, 159, 26, .62);
  box-shadow: 0 18px 36px rgba(255, 159, 26, .24), inset 0 0 0 8px rgba(255, 159, 26, .12);
  transform: translateY(-3px) scale(1.04);
}

.bp-home-trust__card:hover i img,
.bp-home-trust__card:focus-within i img {
  transform: scale(1.08);
}

.bp-home-trust__card p {
  position: relative;
  z-index: 1;
  margin: 0;
  color: #5f564c;
  font-size: 18px;
  font-weight: 650;
  line-height: 1.42;
}

@media (max-width: 560px) {
  .bp-home-trust__card {
    grid-template-columns: 54px minmax(0, 1fr);
    gap: 16px;
    min-height: 0;
    padding: 22px;
  }

  .bp-home-trust__card i {
    width: 54px;
    height: 54px;
    border-radius: 12px;
  }

  .bp-home-trust__card i img {
    width: 27px;
    height: 27px;
  }

  .bp-home-trust__card strong {
    font-size: 18px;
  }

  .bp-home-trust__card p {
    font-size: 15px;
  }
}

/* 7. Прослеживаемость: паспорт партии как «документ + печать». */
.bp-doc-proof {
  display: flex; align-items: center; gap: 28px; flex-wrap: wrap;
  justify-content: space-between;
  background: radial-gradient(120% 120% at 100% 0%, #2a1f14 0%, var(--bp-dark) 70%);
  color: var(--bp-cream);
  border-radius: var(--bp-radius-lg);
  padding: 36px 40px;
}
.bp-doc-proof h2 { color: var(--bp-cream); }
.bp-doc-proof .bp-lead { color: rgba(253, 249, 240, .82); }
.bp-doc-proof .bp-kicker { background: rgba(217,149,20,.18); color: var(--bp-orange); }
.bp-doc-proof__stamp {
  flex: 0 0 auto;
  width: 116px; height: 116px;
  display: grid; place-items: center;
  font: 700 26px/1 "TT Norms", sans-serif; letter-spacing: .1em;
  color: var(--bp-orange);
  border: 2px dashed rgba(217,149,20,.6);
  border-radius: 50%;
  transform: rotate(-8deg);
}
.bp-doc-proof__stamp--number {
  font-size: 28px;
  letter-spacing: 0;
}
.bp-business-checklist {
  display: flex; flex-wrap: wrap; gap: 10px; margin-top: 22px;
}
.bp-business-checklist span {
  font-family: "TT Norms", monospace, sans-serif;
  font-size: 13px;
  color: var(--bp-amber-deep);
  background: var(--bp-orange-soft);
  border: 1px solid var(--bp-line);
  border-radius: 999px;
  padding: 8px 16px;
}

/* 8. «Как мы отбираем мёд» — нумерованные шаги стандарта. */
.bp-business-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; margin-top: 28px;
}
.bp-business-grid article {
  position: relative;
  background: var(--bp-cream);
  border: 1px solid var(--bp-line);
  border-radius: var(--bp-radius);
  padding: 28px 22px 22px;
  box-shadow: var(--bp-shadow-soft);
  transition: transform .2s ease, box-shadow .2s ease;
}
.bp-business-grid article:hover { transform: translateY(-3px); box-shadow: var(--bp-shadow); }
.bp-business-grid article span {
  display: inline-block;
  font: 700 22px/1 var(--bp-serif);
  color: #fff;
  background: linear-gradient(135deg, var(--bp-orange), var(--bp-amber-deep));
  width: 46px; height: 46px;
  border-radius: 50%;
  text-align: center; line-height: 46px;
  margin-bottom: 14px;
}
.bp-business-grid h3 { font-size: 18px; margin: 0 0 8px; }
.bp-business-grid p { color: var(--bp-muted); font-size: 15px; line-height: 1.5; margin: 0; }
@media (max-width: 900px) { .bp-business-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .bp-business-grid { grid-template-columns: 1fr; } }

/* 9. Карточки товара: тёплая рамка, мягкий подъём, янтарная цена. */
.woocommerce ul.products li.product,
.bp-home-products .product,
ul.products li.product {
  background: #fff;
  border: 1px solid var(--bp-line);
  border-radius: var(--bp-radius);
  box-shadow: var(--bp-shadow-soft);
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
  overflow: hidden;
}
.woocommerce ul.products li.product:hover,
ul.products li.product:hover {
  transform: translateY(-4px);
  box-shadow: var(--bp-shadow);
  border-color: rgba(217,149,20,.5);
}
.woocommerce ul.products li.product .price,
ul.products li.product .price,
.price { color: var(--bp-amber-deep) !important; font-weight: 700; }

/* 10. Каталог категорий: тёмная подложка под фото для читаемости. */
.bp-category-card { border-radius: var(--bp-radius); overflow: hidden; box-shadow: var(--bp-shadow-soft); }
.bp-category-card strong { font-family: var(--bp-serif); }

/* 11. Эко-блок: тёплая карточка происхождения. */
.bp-eco-figma { background: var(--bp-soft); }
.bp-eco-figma h2 span { color: var(--bp-amber-deep); }
.bp-eco-figma__benefits li::marker { color: var(--bp-orange); }

/* 12. Документы: «выставка доказательств». */
.bp-documents--figma .bp-documents__copy strong { color: var(--bp-amber-deep); }
.bp-documents__card-link {
  border-radius: var(--bp-radius);
  border: 1px solid var(--bp-line);
  transition: transform .2s ease, box-shadow .2s ease;
}
.bp-documents__card-link:hover { transform: translateY(-3px); box-shadow: var(--bp-shadow); }

/* 13. Семья + союз: тёплый разворот «семейного альбома». */
.bp-family { background: var(--bp-cream); }
.bp-family__copy h2 span { color: var(--bp-amber-deep); font-family: var(--bp-serif); font-style: italic; }
.bp-family__person strong { color: var(--bp-ink); }

/* 14. Скидка: акцентная янтарная плашка. */
.bp-discount--figma {
  background: linear-gradient(120deg, var(--bp-orange) 0%, var(--bp-amber-deep) 100%);
  border-radius: var(--bp-radius-lg);
  box-shadow: var(--bp-shadow);
}
.bp-discount__percent { font-family: var(--bp-serif); }
.bp-discount__button { background: #fff; color: var(--bp-amber-deep); border-radius: 999px; font-weight: 600; }
.bp-discount__button:hover { transform: translateY(-2px); }

/* 15. Блог: журнальные карточки. */
.bp-blog-card { border-radius: var(--bp-radius); overflow: hidden; box-shadow: var(--bp-shadow-soft); transition: transform .2s ease, box-shadow .2s ease; }
.bp-blog-card:hover { transform: translateY(-4px); box-shadow: var(--bp-shadow); }
.bp-blog-card h3 { font-family: var(--bp-serif); }
.bp-blog-card__date { color: var(--bp-amber-deep); }

/* 16. Подвал: тёплый тёмный. */
footer, .bp-footer { background: var(--bp-dark); }

/* 17. Сервисная плашка/навигация: тёплые ховеры. */
.bp-nav a:hover, .bp-servicebar__menu a:hover { color: var(--bp-amber-deep); }

/* 18. Внутренние WooCommerce-страницы должны повторять Figma-магазин, а не журнальный слой главной. */
body.post-type-archive-product,
body.tax-product_cat,
body.single-product,
body.woocommerce-cart,
body.woocommerce-checkout,
body.woocommerce-account {
  --bp-orange: #ff9f1a;
  --bp-orange-dark: #e68100;
  --bp-orange-soft: #fff4df;
  --bp-amber-deep: #e68100;
  --bp-line: #ececec;
  --bp-soft: #f7f7f7;
  --bp-cream: #f6f6f6;
  --bp-radius: 6px;
  --bp-shadow: 0 12px 30px rgba(0,0,0,.08);
  --bp-shadow-soft: 0 12px 32px rgba(0,0,0,.035);
  background: #fff;
}

body.post-type-archive-product h1,
body.post-type-archive-product h2,
body.post-type-archive-product .bp-title,
body.tax-product_cat h1,
body.tax-product_cat h2,
body.tax-product_cat .bp-title,
body.single-product h1,
body.single-product h2,
body.single-product .bp-title,
body.woocommerce-cart h1,
body.woocommerce-cart h2,
body.woocommerce-cart .bp-title,
body.woocommerce-checkout h1,
body.woocommerce-checkout h2,
body.woocommerce-checkout .bp-title,
body.woocommerce-account h1,
body.woocommerce-account h2,
body.woocommerce-account .bp-title {
  font-family: "TT Norms", Inter, "Segoe UI", Arial, Helvetica, sans-serif !important;
  letter-spacing: 0;
}

body.post-type-archive-product .bp-button,
body.tax-product_cat .bp-button,
body.single-product .bp-button,
body.woocommerce-cart .bp-button,
body.woocommerce-checkout .bp-button,
body.woocommerce-account .bp-button,
body.post-type-archive-product .woocommerce button.button,
body.tax-product_cat .woocommerce button.button,
body.single-product .woocommerce button.button,
body.woocommerce-cart .woocommerce button.button,
body.woocommerce-checkout .woocommerce button.button,
body.woocommerce-account .woocommerce button.button,
body.post-type-archive-product .woocommerce a.button,
body.tax-product_cat .woocommerce a.button,
body.single-product .woocommerce a.button,
body.woocommerce-cart .woocommerce a.button,
body.woocommerce-checkout .woocommerce a.button,
body.woocommerce-account .woocommerce a.button {
  border-radius: 5px;
  background: #ff9f1a;
  color: #4c2626;
  box-shadow: none;
}

body.post-type-archive-product .bp-product-card__price,
body.tax-product_cat .bp-product-card__price,
body.single-product .bp-product-card__price,
body.post-type-archive-product .woocommerce ul.products li.product .price,
body.tax-product_cat .woocommerce ul.products li.product .price,
body.single-product .woocommerce ul.products li.product .price {
  color: #565656 !important;
}

/* 19. Точечная правка каталога: шире карточки и аккуратнее меню/фильтры. */
.bp-nav .bp-catalog-dropdown {
  width: 320px;
}

.bp-nav .bp-catalog-dropdown__inner {
  gap: 4px;
  padding: 8px;
  border-radius: 0 0 12px 12px;
}

.bp-nav .bp-catalog-dropdown a,
.bp-nav .bp-catalog-dropdown a:nth-child(n),
.bp-nav .bp-catalog-dropdown a:last-child {
  flex: 0 0 auto !important;
  width: 100%;
  min-height: 42px;
  box-sizing: border-box;
  padding: 10px 14px !important;
  border: 0;
  border-radius: 8px;
  color: #5f564a;
  font-size: 15px;
  font-weight: 650;
  line-height: 1.25;
}

.bp-nav .bp-catalog-dropdown__all {
  justify-content: center !important;
  background: #ff9f1a;
  color: #4c2626 !important;
  font-weight: 900 !important;
}

.bp-nav .bp-catalog-dropdown a:hover,
.bp-nav .bp-catalog-dropdown a:focus-visible {
  background: #fff4df;
  color: #4c2626;
}

.bp-nav .bp-catalog-dropdown__all:hover,
.bp-nav .bp-catalog-dropdown__all:focus-visible {
  background: #e68100;
  color: #fff !important;
}

body.post-type-archive-product .bp-shop-layout,
body.tax-product_cat .bp-shop-layout {
  grid-template-columns: 220px minmax(0, 1fr);
  gap: 40px;
}

body.post-type-archive-product .bp-shop-sidebar,
body.tax-product_cat .bp-shop-sidebar {
  box-sizing: border-box;
  padding: 22px 20px;
  border: 1px solid #eadfce;
  border-radius: 14px;
  background: #fff;
}

body.post-type-archive-product .bp-filter-group,
body.tax-product_cat .bp-filter-group {
  border-bottom-color: #eadfce;
}

body.post-type-archive-product .bp-filter-group label,
body.tax-product_cat .bp-filter-group label {
  margin: 6px 0;
}

body.post-type-archive-product .bp-filter-group label a,
body.tax-product_cat .bp-filter-group label a {
  min-height: 34px;
  box-sizing: border-box;
  padding: 7px 8px;
  border-radius: 8px;
  color: #756a5c;
  text-decoration: none;
}

body.post-type-archive-product .bp-filter-group label a:hover,
body.tax-product_cat .bp-filter-group label a:hover,
body.post-type-archive-product .bp-filter-group label.is-active a,
body.tax-product_cat .bp-filter-group label.is-active a {
  background: #fff4df;
  color: #4c2626;
}

body.post-type-archive-product .bp-filter-actions .bp-button,
body.tax-product_cat .bp-filter-actions .bp-button {
  width: 100%;
  min-height: 44px;
  box-sizing: border-box;
  border-radius: 10px;
  padding: 11px 12px;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.2;
  text-align: center;
}

body.post-type-archive-product .bp-filter-actions .bp-button--light,
body.tax-product_cat .bp-filter-actions .bp-button--light {
  border: 1px solid #eadfce;
  background: #fff;
}

body.post-type-archive-product .bp-shop-main .woocommerce ul.products,
body.tax-product_cat .bp-shop-main .woocommerce ul.products {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px;
}

body.post-type-archive-product .woocommerce ul.products li.product.bp-product-card,
body.tax-product_cat .woocommerce ul.products li.product.bp-product-card {
  min-width: 0;
}

body.post-type-archive-product .bp-product-card__buyrow,
body.tax-product_cat .bp-product-card__buyrow {
  grid-template-columns: 80px minmax(0, 1fr);
  gap: 8px;
}

body.post-type-archive-product .bp-product-card__button,
body.tax-product_cat .bp-product-card__button,
body.post-type-archive-product .bp-product-card__quick,
body.tax-product_cat .bp-product-card__quick {
  min-width: 0;
  min-height: 50px;
  box-sizing: border-box;
  border-radius: 10px;
  font-size: 14px;
  line-height: 1.15;
}

body.post-type-archive-product .bp-product-card__button,
body.tax-product_cat .bp-product-card__button {
  gap: 5px;
  padding: 0 6px;
  white-space: nowrap;
}

body.post-type-archive-product .bp-product-card__button img,
body.tax-product_cat .bp-product-card__button img {
  width: 18px !important;
  height: 18px !important;
}

@media (max-width: 1180px) {
  body.post-type-archive-product .bp-shop-layout,
  body.tax-product_cat .bp-shop-layout {
    grid-template-columns: 190px minmax(0, 1fr);
    gap: 26px;
  }

  body.post-type-archive-product .bp-shop-main .woocommerce ul.products,
  body.tax-product_cat .bp-shop-main .woocommerce ul.products {
    grid-template-columns: repeat(2, minmax(260px, 1fr));
    gap: 24px;
  }
}

@media (max-width: 760px) {
  body.post-type-archive-product .bp-shop-layout,
  body.tax-product_cat .bp-shop-layout,
  body.post-type-archive-product .bp-shop-main .woocommerce ul.products,
  body.tax-product_cat .bp-shop-main .woocommerce ul.products {
    grid-template-columns: 1fr;
  }

  body.post-type-archive-product .bp-shop-sidebar,
  body.tax-product_cat .bp-shop-sidebar {
    padding: 0;
    border: 0;
    background: transparent;
  }
}

/* 20. Первый экран главной: новое горизонтальное фото и аккуратные УТП. */
.bp-herofg {
  min-height: max(720px, calc(100svh - 153px));
  background: #17140d;
}

.bp-herofg::before {
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(7, 6, 4, .99) 0%, rgba(8, 7, 4, .98) 28%, rgba(9, 8, 5, .77) 43%, rgba(10, 9, 6, .29) 58%, rgba(10, 9, 6, 0) 71%, rgba(10, 9, 6, 0) 100%);
}

.bp-herofg::after {
  z-index: 1;
  background:
    radial-gradient(34% 46% at 18% 24%, rgba(255, 174, 36, .14), rgba(255, 174, 36, 0) 70%),
    linear-gradient(90deg, rgba(7, 6, 4, .41) 0%, rgba(7, 6, 4, .23) 42%, rgba(7, 6, 4, 0) 64%, rgba(7, 6, 4, 0) 100%);
}

.bp-herofg__photo {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  max-width: none;
  height: 100%;
  margin: 0;
  object-fit: cover;
  object-position: center 40%;
}

.bp-herofg__inner {
  width: min(1540px, calc(100% - 96px));
  max-width: 1540px;
  min-height: max(720px, calc(100svh - 153px));
}

.bp-herofg__copy {
  top: clamp(82px, 13vh, 132px);
  max-width: 820px;
}

.bp-herofg__copy .bp-herofg__title {
  position: relative;
  max-width: 820px;
  margin: 0;
  padding-bottom: clamp(24px, 2.2vw, 34px);
  color: #fff8ed;
  font-size: clamp(44px, 3.8vw, 66px);
  line-height: 1.02;
  text-wrap: balance;
  text-shadow: 0 2px 18px rgba(0, 0, 0, .42);
}

.bp-herofg__copy .bp-herofg__title::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 11px;
  height: 11px;
  border-radius: 50%;
  background: #ffb22b;
  box-shadow: 0 0 0 8px rgba(255, 178, 43, .12), 0 0 24px rgba(255, 178, 43, .46);
}

.bp-herofg__copy .bp-herofg__title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: min(340px, 52%);
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, #ffb22b 0%, rgba(255, 178, 43, .68) 48%, rgba(255, 178, 43, 0) 100%);
  box-shadow: 0 0 20px rgba(255, 178, 43, .28);
}

.bp-herofg__copy .bp-herofg__title strong {
  color: #ffb22b;
  font-weight: 900;
}

.bp-herofg__subtitle strong {
  color: #ffb22b;
  font-weight: 900;
}

.bp-herofg__subtitle {
  position: relative;
  max-width: 790px;
  margin-top: clamp(34px, 3.4vw, 52px);
  border-left: 4px solid rgba(255, 178, 43, .9);
  border-radius: 0 18px 18px 0;
  background:
    linear-gradient(90deg, rgba(11, 9, 5, .54) 0%, rgba(11, 9, 5, .32) 64%, rgba(11, 9, 5, 0) 100%);
  padding: 16px 24px 17px 25px;
  color: rgba(255, 255, 255, .94);
  font-size: clamp(24px, 1.85vw, 31px);
  line-height: 1.32;
  backdrop-filter: blur(2px);
  box-shadow: 0 18px 42px rgba(0, 0, 0, .16);
  text-shadow: 0 2px 14px rgba(0, 0, 0, .36);
}

.bp-herofg__cta {
  display: flex;
  align-items: center;
  gap: 18px;
  max-width: 790px;
  margin-top: 24px;
}

.bp-herofg__button {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 58px;
  border: 0;
  border-radius: 999px;
  background:
    radial-gradient(70% 120% at 28% 10%, rgba(255, 255, 255, .34), rgba(255, 255, 255, 0) 60%),
    linear-gradient(135deg, #ffbf45 0%, #ff9f1a 58%, #e58908 100%);
  color: #2b1603;
  padding: 0 30px;
  font-family: "TT Norms", Arial, sans-serif;
  font-size: 17px;
  font-weight: 950;
  line-height: 1.1;
  cursor: pointer;
  box-shadow: 0 18px 42px rgba(255, 159, 26, .28), inset 0 -2px 0 rgba(90, 42, 0, .18);
  transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

.bp-herofg__button::after {
  content: "";
  position: absolute;
  inset: -7px;
  border: 1px solid rgba(255, 178, 43, .25);
  border-radius: inherit;
  opacity: .7;
  pointer-events: none;
}

.bp-herofg__button:hover,
.bp-herofg__button:focus-visible {
  outline: none;
  filter: saturate(1.08);
  transform: translateY(-2px);
  box-shadow: 0 24px 54px rgba(255, 159, 26, .36), inset 0 -2px 0 rgba(90, 42, 0, .2);
}

.bp-herofg__cta p {
  max-width: 330px;
  margin: 0;
  color: rgba(255, 255, 255, .82);
  font-size: 14px;
  font-weight: 750;
  line-height: 1.35;
  text-shadow: 0 2px 12px rgba(0, 0, 0, .34);
}

.bp-herofg__bullets {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  max-width: 540px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}

.bp-herofg__bullets li {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 56px;
  padding: 10px 14px 10px 12px;
  border: 1px solid rgba(255, 178, 43, .34);
  border-radius: 16px;
  background: rgba(24, 18, 10, .48);
  color: rgba(255, 255, 255, .92);
  box-shadow: 0 10px 24px rgba(0, 0, 0, .16);
  backdrop-filter: blur(7px);
  font-size: 15px;
  font-weight: 850;
  line-height: 1.22;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}

.bp-herofg__bullets li:first-child {
  grid-column: auto;
  max-width: none;
}

.bp-herofg__bullets li:hover {
  border-color: rgba(255, 178, 43, .72);
  background: rgba(255, 159, 26, .16);
  box-shadow: 0 16px 34px rgba(0, 0, 0, .22);
  transform: translateY(-2px);
}

.bp-herofg__bullets li::before {
  content: "";
  width: 34px;
  height: 34px;
  flex: 0 0 34px;
  border: 1px solid rgba(255, 178, 43, .52);
  border-radius: 12px;
  background-color: rgba(24, 18, 10, .72);
  background-image: url("../images/figma-contact/icon-pin.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 18px 18px;
  box-shadow: 0 0 0 5px rgba(255, 178, 43, .13);
  transition: transform .18s ease, box-shadow .18s ease;
}

.bp-herofg__bullets li:nth-child(2)::before {
  background-image: url("../images/figma-header/header-honey.svg");
}

.bp-herofg__bullets li:nth-child(3)::before {
  background-image: url("../images/figma-delivery/icon-time.svg");
}

.bp-herofg__bullets li:hover::before {
  box-shadow: 0 0 0 7px rgba(255, 178, 43, .18);
  transform: scale(1.04);
}

.bp-herofg__person-badge {
  left: auto;
  right: clamp(150px, 17vw, 320px);
  bottom: 26px;
  display: grid;
  max-width: 360px;
  gap: 0;
  padding: 12px 16px;
  border-radius: 12px;
  background: rgba(24, 18, 10, .62);
  font-size: 14px;
  font-weight: 750;
  line-height: 1.22;
}

.bp-herofg__person-badge strong {
  display: block;
  color: #fff;
  font-size: 17px;
  font-weight: 900;
  line-height: 1.12;
}

.bp-herofg__person-badge span {
  display: block;
  margin-top: 4px;
  color: rgba(255, 255, 255, .88);
  font-size: 13px;
  font-weight: 750;
  line-height: 1.24;
}

.bp-herofg__person-icon {
  display: none;
}

@media (max-width: 1100px) {
  .bp-herofg__inner {
    width: min(100% - 48px, 1040px);
  }

  .bp-herofg__copy {
    max-width: 62%;
  }

  .bp-herofg__copy .bp-herofg__title {
    font-size: clamp(34px, 4.2vw, 48px);
  }

  .bp-herofg__subtitle {
    font-size: clamp(20px, 2.25vw, 25px);
  }

  .bp-herofg__person-badge {
    right: clamp(24px, 8vw, 90px);
    max-width: 340px;
  }
}

@media (max-width: 900px) {
  .bp-herofg {
    min-height: 720px;
    background: #17140d;
  }

  .bp-herofg__photo {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    max-width: none;
    height: 100%;
    margin: 0;
    object-fit: cover;
    object-position: 61% 40%;
  }

  .bp-herofg::before {
    background:
      linear-gradient(180deg, rgba(13, 11, 7, .80) 0%, rgba(13, 11, 7, .58) 48%, rgba(13, 11, 7, .76) 100%),
      linear-gradient(90deg, rgba(13, 11, 7, .58), rgba(13, 11, 7, .18));
  }

  .bp-herofg::after {
    background: linear-gradient(180deg, rgba(13, 11, 7, 0) 55%, rgba(13, 11, 7, .62) 100%);
  }

  .bp-herofg__inner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    max-width: none;
    min-height: 720px;
    padding: 56px 20px 24px;
  }

  .bp-herofg__copy {
    position: relative;
    top: auto;
    left: auto;
    width: 100%;
    max-width: none;
  }

  .bp-herofg__copy .bp-herofg__title {
    max-width: 100%;
    color: #fff;
    padding-bottom: 22px;
    font-size: clamp(30px, 8vw, 38px);
    text-shadow: 0 2px 16px rgba(0, 0, 0, .42);
  }

  .bp-herofg__copy .bp-herofg__title::after {
    width: min(230px, 64%);
  }

  .bp-herofg__subtitle {
    max-width: 100%;
    margin-top: 30px;
    border-left-width: 3px;
    border-radius: 0 14px 14px 0;
    padding: 13px 16px 14px 17px;
    font-size: 19px;
    color: rgba(255, 255, 255, .93);
    text-shadow: 0 2px 14px rgba(0, 0, 0, .38);
  }

  .bp-herofg__subtitle strong {
    color: #ffb22b;
  }

  .bp-herofg__bullets {
    grid-template-columns: 1fr;
    gap: 8px;
    margin-top: 16px;
  }

  .bp-herofg__bullets li {
    min-height: 50px;
    padding: 9px 11px;
    font-size: 13px;
  }

  .bp-herofg__bullets li:first-child {
    grid-column: auto;
    max-width: none;
  }

  .bp-herofg__person-badge {
    position: relative;
    left: auto;
    right: auto;
    bottom: auto;
    max-width: 100%;
    margin-top: 28px;
    align-self: flex-start;
    font-size: 13px;
  }

  .bp-herofg__person-badge strong {
    font-size: 16px;
  }

  .bp-herofg__person-badge span {
    font-size: 12px;
  }
}

@media (max-width: 520px) {
  .bp-herofg {
    min-height: 760px;
  }

  .bp-herofg__inner {
    min-height: 760px;
    padding-top: 42px;
  }

  .bp-herofg__photo {
    object-position: 67% 40%;
  }
}

/* 21. Шапка: новый логотип, кликабельный телефон и соцсети в верхней полосе. */
.bp-servicebar__menu {
  gap: 26px;
}

.bp-servicebar__right {
  gap: 14px;
  text-transform: none;
}

.bp-servicebar__socials {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding-right: 10px;
  border-right: 1px solid rgba(86, 86, 86, .18);
}

.bp-servicebar__right .bp-servicebar__socials a {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: #2f3747;
  color: #fff;
  transition: background .18s ease, transform .18s ease;
}

.bp-servicebar__right .bp-servicebar__socials a:hover,
.bp-servicebar__right .bp-servicebar__socials a:focus-visible {
  background: #ff9f1a;
  color: #251400;
  transform: translateY(-1px);
}

.bp-servicebar__socials svg {
  width: 16px;
  height: 16px;
  fill: currentColor;
  stroke: none;
}

.bp-header .bp-logo--mark {
  min-width: 292px;
  gap: 14px;
}

.bp-header .bp-logo--mark .bp-logo__img {
  width: 70px;
  height: 70px;
  flex: 0 0 70px;
  object-fit: contain;
}

.bp-logo .bp-logo__work {
  display: grid;
  gap: 3px;
  min-width: 0;
  padding-left: 0;
  line-height: 1.08;
}

.bp-logo .bp-logo__work span {
  color: #6f6f6f;
  max-width: 205px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .02em;
  line-height: 1.16;
  text-transform: none;
}

.bp-logo .bp-logo__work strong {
  color: #565656;
  font-size: 15px;
  font-weight: 900;
  letter-spacing: .01em;
}

.bp-phone {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 190px;
  color: #565656;
}

.bp-phone .bp-phone__number {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  color: #565656;
  font-size: 17px;
  font-weight: 900;
  line-height: 1.15;
  text-decoration: none;
  text-transform: none;
  white-space: nowrap;
}

.bp-phone .bp-phone__number:hover,
.bp-phone .bp-phone__number:focus-visible {
  color: #e68100;
}

@media (max-width: 1180px) {
  .bp-servicebar__menu {
    gap: 16px;
  }

  .bp-header .bp-logo--mark {
    min-width: 250px;
  }

  .bp-header .bp-logo--mark .bp-logo__img {
    width: 62px;
    height: 62px;
    flex-basis: 62px;
  }

  .bp-logo .bp-logo__work span,
  .bp-logo .bp-logo__work strong {
    font-size: 13px;
  }
}

/* 22. Карта пунктов выдачи: спокойная карточка и понятный hover. */
.bp-contact-map--figma {
  grid-template-columns: minmax(0, 1fr) minmax(360px, 430px);
  gap: 24px;
  height: auto;
  align-items: stretch;
}

.bp-contact-map--figma .bp-contact-map__canvas {
  width: 100%;
  height: 620px;
  border: 1px solid #e9e2d7;
  border-radius: 18px;
  background: #eef2e8;
  box-shadow: 0 18px 42px rgba(46, 36, 21, .08);
}

.bp-contact-map--figma .bp-contact-map__canvas iframe,
.bp-contact-map--figma .bp-contact-map__canvas img {
  border-radius: 18px;
}

.bp-contact-map--figma .bp-contact-map__card {
  display: flex;
  flex-direction: column;
  width: auto;
  height: auto;
  min-height: 620px;
  padding: 30px;
  overflow: hidden;
  border: 1px solid #eadfce;
  border-radius: 18px;
  background: #fffdfa;
  box-shadow: 0 18px 42px rgba(46, 36, 21, .08);
}

.bp-contact-map--figma .bp-contact-map__card::before {
  content: none;
}

.bp-contact-map--figma .bp-contact-map__card h2 {
  position: relative;
  left: auto;
  top: auto;
  width: auto;
  margin: 0 0 24px;
  padding: 40px 0 0;
  color: #3f382f;
  font-size: clamp(25px, 2vw, 34px);
  font-weight: 500;
  line-height: 1.18;
}

.bp-contact-map--figma .bp-contact-map__card h2::before {
  left: 0;
  top: 0;
  width: 24px;
  height: 24px;
}

.bp-contact-map--figma .bp-contact-map__card h2 strong {
  color: #3f382f;
  font-weight: 850;
}

.bp-contact-map__place {
  position: relative;
  left: auto;
  top: auto !important;
  display: block;
  width: 100%;
  height: auto;
  min-height: 86px;
  margin: 0 0 10px;
  border: 1px solid transparent;
  border-radius: 14px;
  background: #f7f5f1;
  padding: 16px 18px 16px 50px;
  color: #4b4237;
  transition: background .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.bp-contact-map__place::before {
  content: "";
  position: absolute;
  left: 18px;
  top: 21px;
  width: 16px;
  height: 16px;
  border: 2px solid #ff9f1a;
  border-radius: 50%;
  background: #fff;
  box-shadow: inset 0 0 0 4px #fff;
  transition: background .18s ease, box-shadow .18s ease;
}

.bp-contact-map__place.is-active,
.bp-contact-map__place:hover,
.bp-contact-map__place:focus-visible {
  border-color: rgba(255, 159, 26, .42);
  background: #fff4df;
  box-shadow: 0 12px 26px rgba(103, 69, 20, .12);
  transform: translateY(-1px);
}

.bp-contact-map__place.is-active::before,
.bp-contact-map__place:hover::before,
.bp-contact-map__place:focus-visible::before {
  background: #ff9f1a;
  box-shadow: inset 0 0 0 4px #fff4df;
}

.bp-contact-map__place strong {
  color: #3f382f;
  font-size: 19px;
  font-weight: 750;
  line-height: 1.25;
}

.bp-contact-map__place span {
  margin-top: 6px;
  color: #6b6258;
  font-size: 15px;
  line-height: 1.35;
}

.bp-contact-map__gift {
  position: relative;
  left: auto;
  top: auto;
  width: 100%;
  height: auto;
  min-height: 0;
  margin: auto 0 0;
  border: 1px solid rgba(255, 159, 26, .28);
  border-radius: 16px;
  background: #fff4df;
  color: #4c3215;
  padding: 52px 24px 22px;
  font-size: 16px;
  line-height: 1.45;
}

.bp-contact-map__gift::before {
  left: 24px;
  top: 22px;
}

.bp-contact-map__gift strong {
  display: block;
  margin: 0 0 4px;
  color: #3f382f;
}

@media (max-width: 980px) {
  .bp-contact-map--figma {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .bp-contact-map--figma .bp-contact-map__canvas {
    height: 430px;
  }

  .bp-contact-map--figma .bp-contact-map__card {
    min-height: 0;
    padding: 24px;
  }
}

@media (max-width: 560px) {
  .bp-contact-map--figma .bp-contact-map__canvas {
    height: 360px;
  }

  .bp-contact-map--figma .bp-contact-map__card {
    padding: 18px;
  }

  .bp-contact-map__place {
    padding: 15px 15px 15px 44px;
  }

  .bp-contact-map__place::before {
    left: 16px;
  }
}

/* 23. Футер: без адресного ряда, аккуратная ссылка в каталог. */
.bp-footer__grid {
  grid-template-columns: minmax(300px, 1fr) repeat(4, minmax(130px, .55fr));
  gap: 24px;
  min-height: 0;
}

.bp-footer-logo {
  grid-template-columns: 72px minmax(0, 1fr);
  width: 100%;
  max-width: 282px;
  text-decoration: none !important;
}

.bp-footer-logo img {
  width: 72px;
  height: 72px;
  object-fit: contain;
}

.bp-footer-logo span {
  min-width: 0;
}

.bp-footer__cta {
  display: none;
}

.bp-footer__catalog-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  width: 100%;
  max-width: 184px;
  margin: 0 0 14px;
  border: 1px solid rgba(255, 159, 26, .42);
  border-radius: 10px;
  background: rgba(255, 159, 26, .10);
  color: #ffb13a !important;
  padding: 0 18px;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  transition: background .18s ease, border-color .18s ease, color .18s ease;
}

.bp-footer__catalog-link:hover,
.bp-footer__catalog-link:focus-visible {
  border-color: #ff9f1a;
  background: #ff9f1a;
  color: #251400 !important;
}

.bp-footer__bottom {
  border-top: 1px solid rgba(255, 255, 255, .08);
  gap: 26px;
  margin-top: 22px;
  padding: 17px 0 20px;
  min-height: 0;
}

.bp-footer__brand {
  padding-right: 28px;
  min-height: 0;
  overflow: hidden;
}

.bp-footer-logo {
  gap: 14px;
  align-items: center;
  width: 100%;
}

.bp-footer-logo span {
  display: grid;
  gap: 3px;
  color: #fff;
  font-size: 0;
  font-weight: 900;
  letter-spacing: 0;
  line-height: 1.08;
}

.bp-footer-logo span small {
  color: #ffae24;
  font-size: 14px;
  font-weight: 850;
  letter-spacing: .08em;
}

.bp-footer-logo span strong {
  display: block;
  max-width: 100%;
  overflow: hidden;
  color: #fff;
  font-family: "TT Norms", Arial, sans-serif;
  font-size: 20px;
  font-weight: 950;
  letter-spacing: 0;
  line-height: 1.08;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.bp-footer__desc {
  max-width: 260px;
  margin: 18px 0 16px !important;
  color: rgba(255, 255, 255, .74) !important;
  font-size: 15px !important;
  font-weight: 650 !important;
  line-height: 1.35 !important;
}

.bp-footer__schedule,
.bp-footer__phones {
  display: none;
}

.bp-footer__contacts {
  display: grid;
  gap: 9px;
  margin: 0 0 16px;
}

.bp-footer__contacts a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: max-content;
  max-width: 100%;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
}

.bp-footer__contacts a:hover,
.bp-footer__contacts a:focus-visible {
  color: #ffae24 !important;
}

.bp-footer__contacts svg {
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  fill: #ffae24;
}

.bp-footer__social-mark {
  display: inline-grid;
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
  place-items: center;
  border-radius: 5px;
  background: #ffae24;
  color: #251400;
  font-size: 9px;
  font-weight: 950;
  line-height: 1;
}

.bp-footer__socials {
  display: none;
}

.bp-footer__socials a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 32px;
  border: 1px solid rgba(255, 174, 36, .34);
  border-radius: 999px;
  background: rgba(255, 174, 36, .08);
  color: #ffae24 !important;
  padding: 0 12px;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: .04em;
  text-decoration: none !important;
}

.bp-footer__socials a:hover,
.bp-footer__socials a:focus-visible {
  background: #ffae24;
  color: #251400 !important;
}

.bp-footer__email {
  color: rgba(255, 255, 255, .78) !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
}

.bp-footer__email strong {
  color: #fff;
  font-size: 15px;
  font-weight: 850;
}

.bp-footer__email a {
  color: rgba(255, 255, 255, .9) !important;
  font-size: 18px !important;
  text-decoration: none !important;
}

.bp-footer__email a:hover,
.bp-footer__email a:focus-visible {
  color: #ffae24 !important;
}

@media (max-width: 760px) {
  .bp-footer__grid {
    grid-template-columns: 1fr;
  }

  .bp-footer__cta {
    justify-content: flex-start;
  }

  .bp-footer__catalog-link {
    max-width: none;
  }

  .bp-footer__bottom {
    gap: 16px;
  }
}

/* Final live fixes for account/order screens loaded after the base theme CSS. */
.bp-thankyou__head > strong,
.bp-thankyou__head > strong *,
.bp-thankyou-item__price,
.bp-thankyou-item__price strong,
.bp-thankyou-item__price strong *,
.bp-order-product__price strong,
.bp-order-product__price strong *,
.bp-history-item b,
.bp-history-item b *,
.bp-account-order-row b,
.bp-account-order-row b *,
.bp-history-order__head b,
.bp-history-order__head b * {
  white-space: nowrap !important;
}

.bp-thankyou-item {
  grid-template-columns: 128px minmax(0, 1fr) 250px !important;
}

.bp-thankyou-item__price {
  min-width: 250px !important;
}

.bp-product-card__packs button,
.bp-home-products .bp-product-card__packs button {
  padding-inline: 2px !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
}

.bp-thankyou-item__price > span {
  display: block;
}

.bp-thankyou-item__price strong span,
.bp-thankyou-item__price strong bdi {
  display: inline !important;
}

.bp-thankyou-map img {
  display: block !important;
  width: 100% !important;
  height: 330px !important;
  object-fit: cover !important;
  opacity: 1 !important;
}

.bp-account-edit-card input.input-text,
.bp-address-form input.input-text,
.bp-address-form select,
.bp-notice-email input {
  padding-left: 62px !important;
  font-size: 14px !important;
}

.bp-account-edit-form {
  grid-template-columns: minmax(390px, .9fr) minmax(0, 1.25fr) !important;
}

.bp-account-edit-card .bp-account-address-grid input.input-text,
.bp-account-edit-card .bp-account-address-grid select {
  padding-left: 16px !important;
}

.bp-account-edit-card .bp-account-address-grid #billing_phone,
.bp-account-edit-card .bp-account-address-grid #account_email {
  padding-left: 62px !important;
}

.bp-field-icon {
  pointer-events: none;
}

.bp-notice-email label span {
  pointer-events: none;
}

@media (max-width: 1120px) {
  .bp-account-edit-form {
    grid-template-columns: 1fr !important;
  }
}

.bp-contact-page-intro .bp-contacts-layout {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  align-items: stretch;
}

.bp-contact-page-map {
  margin-top: 0 !important;
}

@media (max-width: 860px) {
  .bp-contact-page-intro .bp-contacts-layout {
    grid-template-columns: 1fr !important;
  }
}

.bp-review-page-slider {
  position: relative;
  margin-bottom: 42px;
}

body:not(.home) .bp-page-hero h1,
body:not(.home) .bp-page-hero h2,
body:not(.home) .bp-business-hero h1,
body:not(.home) .bp-partner-hero h1,
body:not(.home) .bp-title,
body:not(.home) .bp-commerce-title {
  font-family: inherit !important;
  letter-spacing: 0 !important;
}

.bp-review-page-slider__viewport {
  overflow: hidden;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 18px 44px rgba(0,0,0,.055);
}

.bp-review-page-slider__track {
  display: flex;
  align-items: stretch;
  transition: transform .35s ease;
  will-change: transform;
}

.bp-review-page-slider__item {
  display: grid;
  flex: 0 0 100%;
  min-width: 100%;
  min-height: 560px;
  margin: 0;
  place-items: center;
  padding: 34px;
}

.bp-review-page-slider__item img {
  display: block;
  max-width: 100%;
  max-height: 520px;
  border-radius: 6px;
  object-fit: contain;
}

.bp-review-page-slider__arrow {
  position: absolute;
  top: 50%;
  z-index: 3;
  display: grid;
  width: 58px;
  height: 58px;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: #faa02c;
  color: #4c2626;
  font-size: 42px;
  line-height: 1;
  cursor: pointer;
  transform: translateY(-50%);
}

.bp-review-page-slider__arrow--prev {
  left: -29px;
}

.bp-review-page-slider__arrow--next {
  right: -29px;
}

.bp-review-page-slider__dots {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 7px;
  margin-top: 18px;
}

.bp-review-page-slider__dots button {
  width: 8px;
  height: 8px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #dedede;
  cursor: pointer;
}

.bp-review-page-slider__dots button.is-active {
  width: 26px;
  border-radius: 999px;
  background: #faa02c;
}

.bp-review-page-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.bp-review-page-grid a {
  display: grid;
  overflow: hidden;
  min-height: 260px;
  place-items: center;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 14px 34px rgba(0,0,0,.045);
}

.bp-review-page-grid img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

@media (max-width: 920px) {
  .bp-review-page-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  .bp-review-page-slider__item {
    min-height: 420px;
    padding: 20px;
  }

  .bp-review-page-slider__arrow {
    width: 44px;
    height: 44px;
    font-size: 32px;
  }

  .bp-review-page-slider__arrow--prev {
    left: 8px;
  }

  .bp-review-page-slider__arrow--next {
    right: 8px;
  }

  .bp-review-page-grid {
    grid-template-columns: 1fr;
  }
}

/* 24. Видеоотзывы: убираем абсолютную сетку, из-за которой текст накладывался. */
.bp-home-video {
  height: auto;
  min-height: 0;
  margin-top: 72px;
  padding: 74px 0 76px;
  background: #fff;
}

.bp-video--figma {
  position: relative;
  display: grid;
  height: auto;
  min-height: 0;
  gap: 28px;
}

.bp-video--figma .bp-video__copy {
  display: grid;
  justify-items: center;
  gap: 14px;
  max-width: 860px;
  margin: 0 auto;
  text-align: center;
}

.bp-video--figma .bp-video__copy h2,
.bp-video--figma .bp-video__copy p {
  position: static;
  left: auto;
  top: auto;
  width: auto;
  transform: none;
}

.bp-video--figma .bp-video__copy h2 {
  max-width: 820px;
  margin: 0;
  color: #4a4640;
  font-size: clamp(32px, 3.2vw, 46px);
  line-height: 1.14;
  font-weight: 500;
}

.bp-video--figma .bp-video__copy h2 strong {
  color: #4a4640;
  font-weight: 850;
}

.bp-video--figma .bp-video__copy p {
  max-width: 760px;
  margin: 0;
  color: #66615a;
  font-size: clamp(17px, 1.35vw, 21px);
  line-height: 1.45;
  white-space: normal;
}

.bp-video__wrap {
  position: relative;
  left: auto;
  top: auto;
  width: 100%;
  height: clamp(320px, 30vw, 390px);
  margin-top: 8px;
}

.bp-video__arrow {
  top: 50%;
  display: grid;
  place-items: center;
  line-height: 1;
  transform: translateY(-50%);
}

.bp-video__arrow:hover,
.bp-video__arrow:focus-visible {
  transform: translateY(-50%) translateY(-1px);
}

.bp-video__arrow--left {
  left: -86px;
}

.bp-video__arrow--right {
  right: -86px;
}

.bp-video__dots {
  position: relative;
  left: auto;
  top: auto;
  width: 100%;
  margin-top: 18px;
  transform: none;
}

.bp-video--figma > .bp-button {
  position: relative;
  left: auto;
  top: auto;
  justify-self: center;
  transform: none;
  margin-top: 22px;
}

@media (max-width: 1180px) {
  .bp-video__arrow--left {
    left: 12px;
  }

  .bp-video__arrow--right {
    right: 12px;
  }
}

@media (max-width: 760px) {
  .bp-home-video {
    margin-top: 48px;
    padding: 52px 0 58px;
  }

  .bp-video--figma {
    gap: 22px;
  }

  .bp-video__wrap {
    height: 360px;
  }

  .bp-video--figma > .bp-button {
    width: 100%;
    max-width: 397px;
  }
}

/* 25. Доставка и самовывоз: один экран с картой вместо старых вкладок. */
.bp-home-fulfillment {
  height: auto;
  min-height: 0;
  margin-top: 86px;
  padding: 82px 0 92px;
  overflow: hidden;
  background:
    linear-gradient(180deg, rgba(255,255,255,.72), rgba(255,255,255,0) 220px),
    #f8f1e6;
}

.bp-fulfillment-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(340px, 520px);
  align-items: end;
  gap: 32px;
  margin-bottom: 24px;
}

.bp-fulfillment-kicker {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  margin-bottom: 16px;
  border: 1px solid rgba(229, 151, 23, .28);
  border-radius: 999px;
  background: #fff7e8;
  padding: 7px 14px;
  color: #b16a05;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .08em;
  line-height: 1;
  text-transform: uppercase;
}

.bp-fulfillment-head h2 {
  max-width: 760px;
  margin: 0;
  color: #3f382f;
  font-size: clamp(34px, 4vw, 56px);
  font-weight: 500;
  line-height: 1.06;
}

.bp-fulfillment-head p {
  margin: 0;
  color: #695f54;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.55;
}

.bp-fulfillment-modes {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 22px;
}

.bp-fulfillment-mode {
  position: relative;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 13px;
  min-height: 116px;
  border: 1px solid rgba(222, 169, 88, .42);
  border-radius: 18px;
  background: rgba(255,255,255,.72);
  padding: 18px;
  box-shadow: 0 16px 36px rgba(62, 43, 20, .06);
}

.bp-fulfillment-mode span {
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border-radius: 14px;
  background: #ff9f1a;
  color: #4c2626;
  font-size: 14px;
  font-weight: 950;
  line-height: 1;
}

.bp-fulfillment-mode strong {
  display: block;
  margin: 0 0 6px;
  color: #3f382f;
  font-size: 18px;
  font-weight: 850;
  line-height: 1.22;
}

.bp-fulfillment-mode p {
  margin: 0;
  color: #6f665d;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.4;
}

.bp-home-fulfillment .bp-contact-map--figma {
  display: grid;
  grid-template-columns: minmax(0, 1.32fr) minmax(420px, .74fr);
  gap: 22px;
  height: auto;
  align-items: stretch;
}

.bp-home-fulfillment .bp-contact-map--figma .bp-contact-map__canvas {
  position: relative;
  width: 100%;
  height: 560px;
  overflow: hidden;
  border: 1px solid rgba(221, 167, 84, .38);
  border-radius: 26px;
  background: #edf1e8;
  box-shadow: 0 24px 62px rgba(56, 38, 15, .12);
}

.bp-home-fulfillment .bp-contact-map--figma .bp-contact-map__canvas iframe,
.bp-home-fulfillment .bp-contact-map--figma .bp-contact-map__canvas img {
  border-radius: 26px;
}

.bp-contact-map__caption {
  position: absolute;
  left: 22px;
  bottom: 22px;
  z-index: 3;
  max-width: min(420px, calc(100% - 44px));
  border: 1px solid rgba(255,255,255,.55);
  border-radius: 999px;
  background: rgba(35, 28, 19, .78);
  padding: 11px 16px;
  color: #fff7e8;
  font-size: 14px;
  font-weight: 850;
  line-height: 1.25;
  pointer-events: none;
  backdrop-filter: blur(12px);
}

.bp-home-fulfillment .bp-contact-map--figma .bp-contact-map__card {
  display: flex;
  flex-direction: column;
  width: auto;
  height: 560px;
  min-height: 560px;
  overflow: hidden;
  border: 1px solid rgba(255, 201, 124, .2);
  border-radius: 26px;
  background:
    linear-gradient(145deg, rgba(255, 159, 26, .16), rgba(255,255,255,0) 34%),
    #221a13;
  padding: 18px 22px;
  color: #fff8ed;
  box-shadow: 0 24px 62px rgba(56, 38, 15, .16);
}

.bp-home-fulfillment .bp-contact-map--figma .bp-contact-map__card::before {
  content: none;
}

.bp-contact-map__eyebrow {
  display: inline-flex;
  align-self: flex-start;
  margin-bottom: 8px;
  border-radius: 999px;
  background: rgba(255, 159, 26, .18);
  padding: 6px 10px;
  color: #ffbc62;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .08em;
  line-height: 1;
  text-transform: uppercase;
}

.bp-home-fulfillment .bp-contact-map--figma .bp-contact-map__card h2 {
  position: relative;
  left: auto;
  top: auto;
  width: auto;
  margin: 0 0 12px;
  padding: 0;
  color: #fff8ed;
  font-size: clamp(24px, 1.55vw, 28px);
  font-weight: 500;
  line-height: 1.05;
}

.bp-home-fulfillment .bp-contact-map--figma .bp-contact-map__card h2::before {
  content: none;
}

.bp-home-fulfillment .bp-contact-map--figma .bp-contact-map__card h2 strong {
  color: #ffbc62;
  font-weight: 850;
}

.bp-contact-map__places {
  display: grid;
  gap: 7px;
}

.bp-home-fulfillment .bp-contact-map__place {
  position: relative;
  left: auto;
  top: auto !important;
  display: block;
  width: 100%;
  height: auto;
  min-height: 0;
  margin: 0;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 15px;
  background: rgba(255,255,255,.065);
  padding: 10px 13px 10px 48px;
  color: #fff8ed;
  text-align: left;
  transition: background .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.bp-home-fulfillment .bp-contact-map__place::before {
  content: "";
  position: absolute;
  left: 16px;
  top: 16px;
  width: 17px;
  height: 17px;
  border: 2px solid #ffbc62;
  border-radius: 50% 50% 50% 0;
  background: #221a13;
  box-shadow: inset 0 0 0 4px #221a13;
  transform: rotate(-45deg);
  transition: background .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.bp-home-fulfillment .bp-contact-map__place em {
  display: inline-flex;
  margin-bottom: 5px;
  border-radius: 999px;
  background: rgba(255, 159, 26, .14);
  padding: 4px 8px 3px;
  color: #ffbc62;
  font-size: 10px;
  font-style: normal;
  font-weight: 950;
  letter-spacing: .06em;
  line-height: 1;
  text-transform: uppercase;
}

.bp-home-fulfillment .bp-contact-map__place strong {
  display: block;
  color: #fff8ed;
  font-size: 15px;
  font-weight: 850;
  line-height: 1.16;
}

.bp-home-fulfillment .bp-contact-map__place span {
  display: block;
  margin-top: 3px;
  color: rgba(255,248,237,.74);
  font-size: 11px;
  font-weight: 650;
  line-height: 1.22;
}

.bp-home-fulfillment .bp-contact-map__place.is-active,
.bp-home-fulfillment .bp-contact-map__place:hover,
.bp-home-fulfillment .bp-contact-map__place:focus-visible {
  border-color: rgba(255, 188, 98, .58);
  background: rgba(255, 159, 26, .14);
  box-shadow: 0 15px 34px rgba(0,0,0,.22);
  transform: translateY(-1px);
}

.bp-home-fulfillment .bp-contact-map__place.is-active::before,
.bp-home-fulfillment .bp-contact-map__place:hover::before,
.bp-home-fulfillment .bp-contact-map__place:focus-visible::before {
  border-color: #ff9f1a;
  background: #ff9f1a;
  box-shadow: inset 0 0 0 4px #221a13;
}

.bp-contact-map__delivery {
  margin-top: 7px;
  border: 1px solid rgba(255, 188, 98, .38);
  border-radius: 15px;
  background: #fff4df;
  padding: 10px 13px;
  color: #3f382f;
}

.bp-contact-map__delivery span {
  display: inline-flex;
  margin-bottom: 5px;
  border-radius: 999px;
  background: #ff9f1a;
  padding: 5px 9px;
  color: #4c2626;
  font-size: 10px;
  font-weight: 950;
  line-height: 1;
}

.bp-contact-map__delivery strong {
  display: block;
  margin: 0;
  color: #3f382f;
  font-size: 14px;
  font-weight: 900;
  line-height: 1.15;
}

.bp-contact-map__delivery p {
  display: none;
}

.bp-home-fulfillment .bp-contact-map__gift {
  display: none;
}

.bp-home-fulfillment .bp-contact-map__gift::before {
  left: 18px;
  top: 15px;
  width: 17px;
  height: 17px;
}

.bp-home-fulfillment .bp-contact-map__gift strong {
  display: inline;
  margin: 0;
  color: #fff8ed;
}

@media (max-width: 1040px) {
  .bp-fulfillment-head,
  .bp-home-fulfillment .bp-contact-map--figma {
    grid-template-columns: 1fr;
  }

  .bp-fulfillment-head {
    gap: 16px;
  }

  .bp-fulfillment-modes {
    grid-template-columns: 1fr;
  }

  .bp-home-fulfillment .bp-contact-map--figma .bp-contact-map__canvas {
    height: 430px;
  }

  .bp-home-fulfillment .bp-contact-map--figma .bp-contact-map__card {
    height: auto;
    min-height: 0;
  }
}

@media (max-width: 620px) {
  .bp-home-fulfillment {
    margin-top: 52px;
    padding: 56px 0 64px;
  }

  .bp-fulfillment-head h2 {
    font-size: 32px;
  }

  .bp-fulfillment-head p {
    font-size: 16px;
  }

  .bp-fulfillment-mode {
    grid-template-columns: 40px minmax(0, 1fr);
    padding: 16px;
  }

  .bp-home-fulfillment .bp-contact-map--figma .bp-contact-map__canvas {
    height: 340px;
    border-radius: 20px;
  }

  .bp-home-fulfillment .bp-contact-map--figma .bp-contact-map__canvas iframe,
  .bp-home-fulfillment .bp-contact-map--figma .bp-contact-map__canvas img {
    border-radius: 20px;
  }

  .bp-contact-map__caption {
    left: 14px;
    right: 14px;
    bottom: 14px;
    max-width: none;
    border-radius: 14px;
    font-size: 13px;
  }

  .bp-home-fulfillment .bp-contact-map--figma .bp-contact-map__card {
    border-radius: 20px;
    padding: 20px;
  }

  .bp-home-fulfillment .bp-contact-map__place {
    padding: 15px 15px 15px 50px;
  }

  .bp-home-fulfillment .bp-contact-map__place::before {
    left: 16px;
  }
}

/* 26. Семья Дубровских как лицо кооператива, а не весь ассортимент. */
.bp-family--figma {
  height: auto;
  min-height: 0;
  padding: 92px 0 98px;
  overflow: hidden;
  background:
    radial-gradient(42% 42% at 23% 20%, rgba(255, 178, 43, .18), rgba(255, 178, 43, 0) 72%),
    linear-gradient(180deg, #fffaf0 0%, #fff6e6 100%);
}

.bp-family--figma .bp-container {
  width: min(1170px, calc(100% - 32px));
  max-width: 1170px;
  margin: 0 auto;
}

.bp-family__inner {
  position: relative;
  display: grid;
  grid-template-columns: minmax(360px, .9fr) minmax(0, 1fr);
  align-items: center;
  gap: 62px;
  height: auto;
}

.bp-family__photo {
  position: relative;
  left: auto;
  top: auto;
  z-index: 1;
  display: flex;
  width: 100%;
  height: auto;
  min-height: 620px;
  align-items: flex-end;
  justify-content: center;
  overflow: hidden;
  border: 1px solid rgba(219, 162, 77, .24);
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.72), rgba(255,255,255,.94)),
    radial-gradient(55% 55% at 46% 36%, rgba(255, 178, 43, .2), rgba(255, 178, 43, 0) 72%);
  box-shadow: 0 24px 60px rgba(73, 49, 19, .1);
}

.bp-family__photo::before {
  content: "Флагманская семейная пасека";
  position: absolute;
  left: 24px;
  top: 24px;
  z-index: 3;
  border: 1px solid rgba(255, 159, 26, .34);
  border-radius: 999px;
  background: rgba(255, 247, 232, .9);
  padding: 9px 13px;
  color: #9d5f0c;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .06em;
  line-height: 1;
  text-transform: uppercase;
}

.bp-family__photo img {
  position: relative;
  left: auto;
  top: auto;
  display: block;
  width: min(720px, 128%);
  max-width: none;
  height: auto;
  margin: 0 0 -4px;
  object-fit: contain;
}

.bp-family__person {
  position: absolute;
  z-index: 4;
  display: grid;
  width: min(320px, calc(100% - 48px));
  height: auto;
  margin: 0;
}

.bp-family__person strong {
  position: relative;
  left: auto;
  top: auto;
  display: grid;
  width: 100%;
  height: auto;
  min-height: 54px;
  place-items: center;
  border-radius: 14px 14px 10px 10px;
  background: linear-gradient(180deg, #fcbc40 0%, #faa02c 56%, #f88a1c 100%);
  padding: 13px 18px;
  color: #4c2626;
  font-family: "TT Norms", Inter, "Segoe UI", Arial, sans-serif;
  font-size: 18px;
  font-weight: 900;
  line-height: 1.1;
  text-align: center;
  white-space: normal;
}

.bp-family__person figcaption {
  position: relative;
  left: auto;
  top: auto;
  display: grid;
  width: calc(100% - 26px);
  height: auto;
  min-height: 54px;
  place-items: center;
  margin: -4px auto 0;
  border-radius: 0 0 14px 14px;
  background: rgba(255,255,255,.96);
  padding: 16px 18px 12px;
  color: #5f5850;
  font-size: 14px;
  font-weight: 750;
  line-height: 1.25;
  text-align: center;
  white-space: normal;
  box-shadow: 0 14px 34px rgba(54, 36, 12, .12);
}

.bp-family__person--first {
  left: 28px;
  top: auto;
  bottom: 122px;
}

.bp-family__person--second {
  right: 28px;
  left: auto;
  top: auto;
  bottom: 28px;
}

.bp-family__copy {
  position: relative;
  left: auto;
  top: auto;
  z-index: 2;
  width: auto;
  padding: 0;
}

.bp-family__kicker {
  display: inline-flex;
  margin-bottom: 16px;
  border: 1px solid rgba(255, 159, 26, .28);
  border-radius: 999px;
  background: #fff4df;
  padding: 8px 13px;
  color: #9d5f0c;
  font-size: 12px;
  font-weight: 950;
  letter-spacing: .08em;
  line-height: 1;
  text-transform: uppercase;
}

.bp-family__copy h2 {
  width: auto;
  max-width: 640px;
  margin: 0 0 22px;
  color: #3f382f;
  font-size: clamp(34px, 3.45vw, 52px);
  font-weight: 650;
  line-height: 1.08;
}

.bp-family__copy h2 span {
  color: inherit;
  font-family: inherit;
  font-style: normal;
}

.bp-family__copy p {
  width: auto;
  max-width: 660px;
  margin: 0 0 16px;
  color: #5f5850;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.48;
}

.bp-family__facts {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin-top: 28px;
}

.bp-family__facts article {
  border: 1px solid rgba(219, 162, 77, .28);
  border-radius: 18px;
  background: rgba(255,255,255,.74);
  padding: 16px;
  box-shadow: 0 14px 32px rgba(73, 49, 19, .07);
}

.bp-family__facts span {
  display: inline-grid;
  width: 38px;
  height: 38px;
  place-items: center;
  margin-bottom: 13px;
  border-radius: 12px;
  background: #ff9f1a;
  color: #4c2626;
  font-size: 13px;
  font-weight: 950;
  line-height: 1;
}

.bp-family__facts strong {
  display: block;
  margin-bottom: 7px;
  color: #3f382f;
  font-size: 17px;
  font-weight: 900;
  line-height: 1.2;
}

.bp-family__facts p {
  margin: 0;
  color: #6b6258;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.4;
}

@media (max-width: 1080px) {
  .bp-family__inner {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .bp-family__photo {
    min-height: 560px;
  }

  .bp-family__photo img {
    width: min(680px, 110%);
  }
}

@media (max-width: 720px) {
  .bp-family--figma {
    padding: 56px 0 64px;
  }

  .bp-family__photo {
    min-height: 510px;
    border-radius: 22px;
  }

  .bp-family__photo::before {
    left: 16px;
    top: 16px;
    max-width: calc(100% - 32px);
    white-space: normal;
    line-height: 1.2;
  }

  .bp-family__photo img {
    width: 118%;
  }

  .bp-family__person {
    width: calc(100% - 32px);
  }

  .bp-family__person--first {
    left: 16px;
    bottom: 120px;
  }

  .bp-family__person--second {
    right: 16px;
    bottom: 18px;
  }

  .bp-family__copy h2 {
    font-size: 31px;
  }

  .bp-family__copy p {
    font-size: 16px;
  }

  .bp-family__facts {
    grid-template-columns: 1fr;
  }
}

/* Hero quick order modal. */
.bp-modal__dialog {
  width: min(560px, calc(100vw - 32px));
  max-height: calc(100vh - 32px);
  overflow: auto;
  border: 1px solid rgba(255, 178, 43, .24);
  border-radius: 20px;
  background:
    radial-gradient(260px 180px at 18% 0%, rgba(255, 178, 43, .18), rgba(255, 178, 43, 0) 72%),
    #fffaf0;
  padding: 30px;
}

.bp-modal__kicker {
  display: inline-flex;
  margin-bottom: 10px;
  border-radius: 999px;
  background: rgba(255, 159, 26, .14);
  color: #b36a04;
  padding: 7px 11px;
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .08em;
  line-height: 1;
  text-transform: uppercase;
}

.bp-modal__dialog h2 {
  margin: 0 44px 10px 0;
  color: #2f261d;
  font-size: 31px;
  font-weight: 900;
  line-height: 1.12;
}

.bp-modal__dialog > p {
  margin: 0;
  color: #665a4e;
  font-size: 15px;
  font-weight: 650;
  line-height: 1.45;
}

.bp-modal__form {
  gap: 13px;
  margin-top: 20px;
}

.bp-modal__form label {
  color: #342b22;
  font-size: 13px;
  font-weight: 900;
}

.bp-modal__form input,
.bp-modal__form textarea {
  min-height: 46px;
  border-radius: 12px;
  background: #fff;
  font-size: 15px;
}

.bp-modal-channels {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 9px;
  margin: 2px 0 4px;
  border: 0;
  padding: 0;
}

.bp-modal-channels legend {
  grid-column: 1 / -1;
  margin-bottom: 1px;
  color: #342b22;
  font-size: 13px;
  font-weight: 900;
}

.bp-modal-channel {
  position: relative;
  display: block !important;
  margin: 0;
  cursor: pointer;
}

.bp-modal-channel input {
  position: absolute;
  left: 0;
  top: 0;
  width: 1px !important;
  height: 1px !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0;
  pointer-events: none;
}

.bp-modal-channel__body {
  display: flex;
  align-items: center;
  gap: 9px;
  min-height: 48px;
  border: 1px solid rgba(222, 169, 88, .48);
  border-radius: 14px;
  background: rgba(255, 255, 255, .74);
  color: #3f382f !important;
  padding: 9px 11px;
  font-size: 13px !important;
  font-weight: 850 !important;
  line-height: 1.18 !important;
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease;
}

.bp-modal-channel__body span {
  display: inline-grid;
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  place-items: center;
  border-radius: 10px;
  background: rgba(255, 159, 26, .16);
  color: #a55e00 !important;
  font-size: 10px !important;
  font-weight: 950 !important;
  letter-spacing: .02em;
}

.bp-modal-channel:hover .bp-modal-channel__body,
.bp-modal-channel input:focus-visible + .bp-modal-channel__body {
  border-color: rgba(255, 159, 26, .74);
  background: #fff;
  box-shadow: 0 12px 28px rgba(83, 52, 12, .09);
  transform: translateY(-1px);
}

.bp-modal-channel input:checked + .bp-modal-channel__body {
  border-color: #ff9f1a;
  background: #fff6e5;
  box-shadow: 0 0 0 3px rgba(255, 159, 26, .16);
}

.bp-modal-channel input:checked + .bp-modal-channel__body span {
  background: #ff9f1a;
  color: #2b1603 !important;
}

.bp-modal__form .bp-button {
  min-height: 52px;
  border-radius: 14px;
  font-size: 16px;
}

@media (max-width: 900px) {
  .bp-herofg__cta {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;
    margin-top: 20px;
  }

  .bp-herofg__button {
    min-height: 54px;
    padding: 0 24px;
    font-size: 16px;
  }

  .bp-herofg__cta p {
    max-width: 100%;
  }
}

@media (max-width: 520px) {
  .bp-modal__dialog {
    padding: 24px 18px;
  }

  .bp-modal__dialog h2 {
    font-size: 26px;
  }

  .bp-modal-channels {
    grid-template-columns: 1fr;
  }
}

/* ==========================================================================
   Главная 2026: новая логика «доверие → выбор → покупка».
   Hero (две кнопки), Подобрать мёд, Гарантии, Подарки/Опт, FAQ.
   ========================================================================== */

/* Hero: каталог + подбор как две кнопки, быстрый заказ — текстом ниже. */
.bp-herofg__cta {
  flex-wrap: wrap;
  gap: 14px;
}
.bp-herofg__button {
  text-decoration: none;
}
.bp-herofg__button--ghost {
  background: rgba(255, 252, 245, .08);
  color: var(--bp-cream);
  box-shadow: inset 0 0 0 1.5px rgba(255, 218, 150, .6);
  backdrop-filter: blur(4px);
}
.bp-herofg__button--ghost::after { display: none; }
.bp-herofg__button--ghost:hover,
.bp-herofg__button--ghost:focus-visible {
  background: rgba(255, 252, 245, .16);
  box-shadow: inset 0 0 0 1.5px var(--bp-orange);
  filter: none;
}
.bp-herofg__note {
  max-width: 540px;
  margin: 16px 0 0;
  color: rgba(255, 255, 255, .82);
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
}
.bp-herofg__quick {
  padding: 0;
  border: 0;
  background: none;
  color: var(--bp-orange);
  font: inherit;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.bp-herofg__quick:hover { color: #ffce6e; }

/* Кооператив: карта пасек как обычный адаптивный блок внутри копи-колонки. */
.bp-coop-showcase__map {
  display: block;
  width: 100%;
  margin-top: 26px;
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.bp-coop-showcase__map img {
  display: block;
  width: 100%;
  height: 220px;
  object-fit: cover;
  border: 6px solid #fff;
  border-radius: var(--bp-radius-lg);
  box-shadow: var(--bp-shadow-soft);
  transition: transform .2s ease, box-shadow .2s ease;
}
.bp-coop-showcase__map strong {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  color: var(--bp-amber-deep);
  font-size: 15px;
  font-weight: 800;
}
.bp-coop-showcase__map strong::before {
  content: "";
  width: 18px;
  height: 18px;
  background: url("../images/figma-eco/eco-map-marker.svg") center / contain no-repeat;
}
.bp-coop-showcase__map:hover img,
.bp-coop-showcase__map:focus-visible img {
  transform: translateY(-3px);
  box-shadow: var(--bp-shadow);
}

/* Подобрать мёд: интент-карточки, ведущие в нужные категории. */
.bp-guide__lead {
  margin: 4px 0 26px;
  color: var(--bp-muted);
  font-size: 18px;
  line-height: 1.5;
  max-width: 720px;
}
.bp-guide__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.bp-guide__card {
  display: flex;
  flex-direction: column;
  min-height: 168px;
  padding: 24px;
  background: var(--bp-cream);
  border: 1px solid var(--bp-line);
  border-radius: var(--bp-radius-lg);
  box-shadow: var(--bp-shadow-soft);
  text-decoration: none;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.bp-guide__card:hover {
  transform: translateY(-3px);
  border-color: var(--bp-orange);
  box-shadow: var(--bp-shadow);
}
.bp-guide__card strong {
  color: var(--bp-ink);
  font-family: var(--bp-serif);
  font-size: 21px;
  line-height: 1.2;
}
.bp-guide__card span {
  margin-top: 8px;
  color: var(--bp-muted);
  font-size: 15px;
  line-height: 1.45;
}
.bp-guide__card em {
  margin-top: auto;
  padding-top: 16px;
  color: var(--bp-amber-deep);
  font-style: normal;
  font-weight: 800;
  font-size: 15px;
}
.bp-guide__card em::after { content: " →"; }

/* Гарантии и оплата: нумерованные карточки. */
.bp-guarantee__grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 18px;
}
.bp-guarantee__card {
  padding: 24px 22px;
  background: var(--bp-cream);
  border: 1px solid var(--bp-line);
  border-radius: var(--bp-radius);
  box-shadow: var(--bp-shadow-soft);
}
.bp-guarantee__card span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  margin-bottom: 14px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--bp-orange), var(--bp-amber-deep));
  color: #fff;
  font: 800 14px/1 var(--bp-serif);
}
.bp-guarantee__card strong {
  display: block;
  margin-bottom: 8px;
  font-size: 17px;
  line-height: 1.25;
}
.bp-guarantee__card p {
  margin: 0;
  color: var(--bp-muted);
  font-size: 14px;
  line-height: 1.5;
}
.bp-guarantee__card a {
  color: var(--bp-amber-deep);
  font-weight: 700;
  text-decoration: underline;
  text-underline-offset: 2px;
}

/* Подарки и опт: два баннера. */
.bp-promo__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}
.bp-promo__card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  padding: 34px;
  border-radius: var(--bp-radius-lg);
  box-shadow: var(--bp-shadow-soft);
}
.bp-promo__card h3 {
  margin: 0;
  font-family: var(--bp-serif);
  font-size: clamp(22px, 2vw, 28px);
  line-height: 1.15;
}
.bp-promo__card p {
  margin: 0;
  font-size: 16px;
  line-height: 1.5;
  color: var(--bp-muted);
}
.bp-promo__card .bp-button { margin-top: 8px; }
.bp-promo__card--gift {
  background: linear-gradient(135deg, #2a1f14 0%, var(--bp-dark) 72%);
  color: var(--bp-cream);
}
.bp-promo__card--gift h3 { color: var(--bp-cream); }
.bp-promo__card--gift p { color: rgba(253, 249, 240, .82); }
.bp-promo__card--gift .bp-kicker {
  background: rgba(217, 149, 20, .18);
  color: var(--bp-orange);
}
.bp-promo__card--wholesale {
  background: var(--bp-cream);
  border: 1px solid var(--bp-line);
}

/* FAQ: аккуратный аккордеон на нативном <details>. */
.bp-faq__list {
  display: grid;
  gap: 12px;
  max-width: 880px;
}
.bp-faq__item {
  background: var(--bp-cream);
  border: 1px solid var(--bp-line);
  border-radius: var(--bp-radius);
  box-shadow: var(--bp-shadow-soft);
  overflow: hidden;
}
.bp-faq__item summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 24px;
  font-size: 17px;
  font-weight: 700;
  color: var(--bp-ink);
  cursor: pointer;
  list-style: none;
}
.bp-faq__item summary::-webkit-details-marker { display: none; }
.bp-faq__item summary::after {
  content: "+";
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: var(--bp-orange-soft);
  color: var(--bp-amber-deep);
  font-size: 20px;
  font-weight: 700;
  transition: transform .2s ease;
}
.bp-faq__item[open] summary::after { transform: rotate(45deg); }
.bp-faq__answer {
  padding: 0 24px 22px;
}
.bp-faq__answer p {
  margin: 0;
  color: var(--bp-muted);
  font-size: 16px;
  line-height: 1.6;
}

@media (max-width: 1040px) {
  .bp-guide__grid { grid-template-columns: repeat(2, 1fr); }
  .bp-guarantee__grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 760px) {
  .bp-guide__grid { grid-template-columns: 1fr; }
  .bp-guarantee__grid { grid-template-columns: 1fr; }
  .bp-promo__grid { grid-template-columns: 1fr; }
  .bp-promo__card { padding: 26px; }
  .bp-coop-showcase__map img { height: 180px; }
}

/* Home documents: readable proof block without overlapping hover layers. */
.bp-documents--figma {
  height: auto !important;
  min-height: 0 !important;
  padding: clamp(64px, 6vw, 96px) 0 clamp(70px, 6vw, 104px) !important;
  overflow: hidden;
  background:
    radial-gradient(760px 360px at 84% 24%, rgba(255, 178, 43, .11), rgba(255, 178, 43, 0) 66%),
    linear-gradient(180deg, #fbf6eb 0%, #f7efe1 100%) !important;
}

.bp-documents--figma::before {
  left: auto !important;
  right: -280px !important;
  top: -260px !important;
  width: 980px !important;
  height: 760px !important;
  opacity: .045 !important;
}

.bp-documents__head {
  position: relative;
  z-index: 2;
  max-width: 980px;
  margin: 0 auto clamp(34px, 4vw, 54px);
  text-align: center;
}

.bp-documents__head .bp-kicker {
  margin: 0 auto 16px;
}

.bp-documents__head h2 {
  max-width: 900px;
  margin: 0 auto;
  color: #40372d;
  font-family: var(--bp-serif);
  font-size: clamp(38px, 4vw, 64px);
  font-weight: 700;
  line-height: 1.06;
  text-wrap: balance;
}

.bp-documents__head h2 strong {
  color: #a86613;
}

.bp-documents__head p {
  max-width: 760px;
  margin: 18px auto 0;
  color: #5f574f;
  font-size: clamp(18px, 1.45vw, 23px);
  font-weight: 650;
  line-height: 1.45;
}

.bp-documents--figma .bp-documents__inner {
  position: relative !important;
  z-index: 2;
  display: grid !important;
  grid-template-columns: minmax(280px, .75fr) minmax(0, 1.25fr);
  gap: clamp(28px, 4vw, 58px);
  align-items: center;
  height: auto !important;
}

.bp-documents--figma .bp-documents__copy {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  width: auto !important;
  border: 1px solid rgba(168, 102, 19, .14);
  border-radius: 22px;
  background: rgba(255, 252, 246, .72);
  padding: clamp(24px, 2.5vw, 34px);
  box-shadow: 0 22px 54px rgba(83, 52, 12, .08);
}

.bp-documents--figma .bp-documents__copy h3,
.bp-documents__examples h3 {
  margin: 0;
  color: #40372d;
  font-family: var(--bp-serif);
  font-size: clamp(26px, 2.15vw, 36px);
  font-weight: 700;
  line-height: 1.12;
}

.bp-documents--figma .bp-documents__copy p {
  width: auto !important;
  margin: 16px 0 0;
  color: #5f574f;
  font-size: clamp(17px, 1.35vw, 21px);
  font-weight: 650;
  line-height: 1.45;
}

.bp-documents__academy {
  width: auto !important;
  max-width: 470px;
  margin-top: 26px;
}

.bp-documents__examples {
  min-width: 0;
}

.bp-documents__examples h3 {
  margin-bottom: 20px;
}

.bp-documents--figma .bp-documents__cards {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(18px, 2vw, 28px);
  width: auto !important;
  height: auto !important;
}

.bp-documents--figma .bp-documents__cards article {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  width: auto !important;
  height: auto !important;
  min-width: 0;
}

.bp-documents--figma .bp-documents__card-link {
  position: relative !important;
  display: flex !important;
  flex-direction: column;
  align-items: center;
  width: 100% !important;
  height: auto !important;
  min-height: 500px;
  overflow: hidden;
  border: 1px solid rgba(168, 102, 19, .16);
  border-radius: 22px !important;
  background: rgba(255, 252, 246, .86) !important;
  padding: 24px 20px 26px !important;
  box-shadow: 0 22px 58px rgba(83, 52, 12, .08);
  isolation: isolate;
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease, background .2s ease !important;
}

.bp-documents--figma .bp-documents__card-link::before {
  display: none !important;
}

.bp-documents--figma .bp-documents__card-link:hover,
.bp-documents--figma .bp-documents__card-link:focus-visible {
  outline: none;
  border-color: rgba(255, 159, 26, .62);
  background: #fffdf8 !important;
  box-shadow: 0 30px 70px rgba(83, 52, 12, .13);
  transform: translateY(-4px);
}

.bp-documents--figma .bp-documents__cards img {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  width: min(100%, 310px) !important;
  height: 350px !important;
  object-fit: contain !important;
  object-position: center top !important;
  margin: 0 auto !important;
}

.bp-documents--figma .bp-documents__open {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  z-index: 2;
  width: min(100%, 270px) !important;
  height: auto !important;
  min-height: 54px !important;
  margin: -18px auto 18px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #ffb948 0%, #f49a22 100%) !important;
  color: #321c09 !important;
  padding: 12px 22px !important;
  font-size: 16px !important;
  font-weight: 950 !important;
  line-height: 1.15 !important;
  box-shadow: 0 14px 30px rgba(244, 154, 34, .24);
}

.bp-documents--figma .bp-documents__card-link:hover .bp-documents__open,
.bp-documents--figma .bp-documents__card-link:focus-visible .bp-documents__open {
  background: linear-gradient(135deg, #ffc862 0%, #f49a22 100%) !important;
}

.bp-documents--figma .bp-documents__cards p {
  position: relative !important;
  left: auto !important;
  top: auto !important;
  width: auto !important;
  margin: 0 !important;
  color: #4f463d !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  line-height: 1.28 !important;
  transform: none !important;
}

.bp-documents__all {
  display: flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  min-height: 54px;
  margin: 28px auto 0;
  border: 1px solid rgba(168, 102, 19, .24);
  border-radius: 999px;
  background: #2d2014;
  color: #fff8ed;
  padding: 0 28px;
  font-size: 16px;
  font-weight: 950;
  text-decoration: none;
  box-shadow: 0 18px 38px rgba(45, 32, 20, .16);
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}

.bp-documents__all:hover,
.bp-documents__all:focus-visible {
  outline: none;
  background: #3a2817;
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 24px 50px rgba(45, 32, 20, .2);
}

@media (max-width: 1080px) {
  .bp-documents--figma .bp-documents__inner {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .bp-documents--figma .bp-documents__cards {
    grid-template-columns: 1fr;
  }

  .bp-documents--figma .bp-documents__card-link {
    min-height: 0;
  }

  .bp-documents--figma .bp-documents__cards img {
    height: 320px !important;
  }
}

/* ==========================================================================
   Квиз «Подобрать мёд»: 4 вопроса с ветвлением → персональная подборка.
   ========================================================================== */
.bp-quiz {
  margin-top: 8px;
  padding: 30px;
  background: var(--bp-cream);
  border: 1px solid var(--bp-line);
  border-radius: var(--bp-radius-lg);
  box-shadow: var(--bp-shadow-soft);
}
.bp-quiz__progress {
  height: 8px;
  margin-bottom: 26px;
  border-radius: 999px;
  background: var(--bp-orange-soft);
  overflow: hidden;
}
.bp-quiz__bar {
  display: block;
  width: 0;
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--bp-orange), var(--bp-amber-deep));
  transition: width .35s ease;
}
.bp-quiz__step {
  display: inline-block;
  margin-bottom: 10px;
  color: var(--bp-amber-deep);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.bp-quiz__title {
  margin: 0 0 22px;
  font-family: var(--bp-serif);
  font-size: clamp(22px, 2.4vw, 32px);
  line-height: 1.15;
  color: var(--bp-ink);
}
.bp-quiz__options {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 14px;
}
.bp-quiz__option {
  padding: 20px 22px;
  text-align: left;
  background: #fff;
  border: 1.5px solid var(--bp-line);
  border-radius: var(--bp-radius);
  font-size: 17px;
  font-weight: 700;
  color: var(--bp-ink);
  cursor: pointer;
  transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}
.bp-quiz__option:hover,
.bp-quiz__option:focus-visible {
  outline: none;
  transform: translateY(-2px);
  border-color: var(--bp-orange);
  box-shadow: var(--bp-shadow-soft);
}

/* Результат подбора */
.bp-quiz-result__head h3 {
  margin: 0 0 6px;
  font-family: var(--bp-serif);
  font-size: clamp(22px, 2.4vw, 30px);
  color: var(--bp-ink);
}
.bp-quiz-result__head p { margin: 0 0 18px; color: var(--bp-muted); font-size: 16px; }
.bp-quiz-result__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-bottom: 26px;
}
.bp-quiz__restart {
  padding: 0;
  border: 0;
  background: none;
  color: var(--bp-amber-deep);
  font: inherit;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.bp-quiz-result__empty { color: var(--bp-muted); font-size: 16px; }
.bp-quiz-result__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}
.bp-quiz-card {
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid var(--bp-line);
  border-radius: var(--bp-radius);
  box-shadow: var(--bp-shadow-soft);
  overflow: hidden;
  transition: transform .2s ease, box-shadow .2s ease;
}
.bp-quiz-card:hover { transform: translateY(-3px); box-shadow: var(--bp-shadow); }
.bp-quiz-card__media {
  display: block;
  aspect-ratio: 1 / 1;
  background: var(--bp-orange-soft);
}
.bp-quiz-card__media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bp-quiz-card__body { display: flex; flex-direction: column; gap: 8px; padding: 16px; flex: 1; }
.bp-quiz-card__name {
  color: var(--bp-ink);
  font-weight: 800;
  font-size: 15px;
  line-height: 1.3;
  text-decoration: none;
}
.bp-quiz-card__name:hover { color: var(--bp-amber-deep); }
.bp-quiz-card__price { color: var(--bp-amber-deep); font-weight: 800; font-size: 16px; }
.bp-quiz-card__price del { color: var(--bp-muted); font-weight: 500; margin-right: 6px; }
.bp-quiz-card__actions { display: flex; align-items: center; gap: 10px; margin-top: auto; padding-top: 6px; }
.bp-quiz-card__add { min-height: 40px; padding: 0 16px; font-size: 14px; }
.bp-quiz-card__add.is-added { background: var(--bp-green); filter: none; }
.bp-quiz-card__open {
  color: var(--bp-amber-deep);
  font-weight: 700;
  font-size: 14px;
  text-decoration: underline;
  text-underline-offset: 2px;
  white-space: nowrap;
}

@media (max-width: 760px) {
  .bp-quiz { padding: 20px; }
  .bp-quiz__options { grid-template-columns: 1fr; }
  .bp-quiz-result__grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 480px) {
  .bp-quiz-result__grid { grid-template-columns: 1fr; }
}

/* ==========================================================================
   Главная v3: бортевой флагман, ориентир доставки, плитка пчеловодам,
   промокод-блок квиза, кнопка «Все пасеки».
   ========================================================================== */

/* Флагман: бортевой мёд. Тёмный премиальный блок. */
.bp-bort {
  background: radial-gradient(120% 120% at 100% 0%, #2a1f14 0%, var(--bp-dark) 70%);
}
.bp-bort__inner {
  display: grid;
  grid-template-columns: 1.25fr .75fr;
  gap: 44px;
  align-items: center;
}
.bp-bort__kicker { background: rgba(217, 149, 20, .18); color: var(--bp-orange); }
.bp-bort__copy h2 {
  margin: 14px 0 14px;
  font-family: var(--bp-serif);
  font-size: clamp(26px, 2.8vw, 40px);
  line-height: 1.12;
  color: var(--bp-cream);
}
.bp-bort__copy h2 span { color: var(--bp-orange); font-style: italic; }
.bp-bort__copy > p { margin: 0 0 18px; color: rgba(253, 249, 240, .85); font-size: 17px; line-height: 1.55; max-width: 640px; }
.bp-bort__points { margin: 0 0 24px; padding: 0 0 0 20px; color: rgba(253, 249, 240, .9); font-size: 16px; line-height: 1.7; }
.bp-bort__points li::marker { color: var(--bp-orange); }
.bp-bort__actions { display: flex; flex-wrap: wrap; gap: 12px; }
.bp-bort .bp-button--light { border-color: rgba(255, 218, 150, .45); color: var(--bp-orange); background: transparent; }
.bp-bort .bp-button--light:hover { border-color: var(--bp-orange); color: #ffce6e; }
.bp-bort__media {
  position: relative;
  display: block;
  border-radius: var(--bp-radius-lg);
  overflow: hidden;
  box-shadow: 0 28px 60px rgba(0, 0, 0, .4);
}
.bp-bort__media img { display: block; width: 100%; height: 380px; object-fit: cover; }
.bp-bort__tag {
  position: absolute;
  left: 16px;
  top: 16px;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(29, 23, 17, .82);
  color: var(--bp-orange);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .03em;
  text-transform: uppercase;
}

/* Ориентир доставки под товарами. */
.bp-delivery-hint {
  margin: -8px 0 0;
  padding: 14px 18px;
  background: var(--bp-orange-soft);
  border: 1px solid var(--bp-line);
  border-radius: var(--bp-radius);
  color: var(--bp-ink);
  font-size: 15px;
  line-height: 1.5;
}
.bp-delivery-hint a { color: var(--bp-amber-deep); font-weight: 700; }

/* Кнопка «Все пасеки и пчеловоды». */
.bp-coop-showcase__all { margin-top: 18px; align-self: flex-start; }

/* Промо-сетка теперь 3 плитки. */
.bp-promo__grid { grid-template-columns: repeat(3, 1fr); }
.bp-promo__card--beekeepers { background: var(--bp-cream); border: 1px solid var(--bp-line); }

/* Промокод-блок в результате квиза. */
.bp-quiz-promo {
  margin-top: 26px;
  padding: 24px;
  background: radial-gradient(120% 120% at 100% 0%, #2a1f14 0%, var(--bp-dark) 75%);
  border-radius: var(--bp-radius-lg);
  color: var(--bp-cream);
}
.bp-quiz-promo strong { display: block; font-family: var(--bp-serif); font-size: 22px; margin-bottom: 6px; }
.bp-quiz-promo p { margin: 0 0 16px; color: rgba(253, 249, 240, .82); font-size: 15px; line-height: 1.5; }
.bp-quiz-promo__btns { display: flex; flex-wrap: wrap; gap: 12px; }
.bp-quiz-promo .bp-button--light { border-color: rgba(255, 218, 150, .45); color: var(--bp-orange); background: transparent; }
.bp-quiz-promo .bp-button--light:hover { border-color: var(--bp-orange); color: #ffce6e; }

@media (max-width: 1040px) {
  .bp-promo__grid { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
  .bp-bort__inner { grid-template-columns: 1fr; gap: 24px; }
  .bp-bort__media img { height: 260px; }
}

/* ==========================================================================
   Каталог: карточки категорий — фото-обложки в стиле главной
   (вместо белых плиток с обрезанными картинками и оранжевым кольцом).
   ========================================================================== */
.post-type-archive-product .bp-catalog-cats,
.tax-product_cat .bp-catalog-cats {
  background: var(--bp-soft);
  padding: 0 0 48px;
}
.post-type-archive-product .bp-catalog-cats__grid,
.tax-product_cat .bp-catalog-cats__grid {
  max-width: none;
  gap: 20px;
}
.post-type-archive-product .bp-catalog-cat,
.tax-product_cat .bp-catalog-cat {
  display: block;
  position: relative;
  min-height: 168px;
  padding: 0;
  border-radius: var(--bp-radius);
  overflow: hidden;
  background: var(--bp-orange-soft);
  box-shadow: var(--bp-shadow-soft);
  transition: transform .2s ease, box-shadow .2s ease;
}
.post-type-archive-product .bp-catalog-cat:hover,
.tax-product_cat .bp-catalog-cat:hover {
  transform: translateY(-3px);
  box-shadow: var(--bp-shadow);
}
.post-type-archive-product .bp-catalog-cat::after,
.tax-product_cat .bp-catalog-cat::after {
  content: none;
}
.post-type-archive-product .bp-catalog-cat::before,
.tax-product_cat .bp-catalog-cat::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(180deg, rgba(29, 23, 17, 0) 35%, rgba(29, 23, 17, .74) 100%);
}
.post-type-archive-product .bp-catalog-cat img,
.tax-product_cat .bp-catalog-cat img {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .3s ease;
}
.post-type-archive-product .bp-catalog-cat:hover img,
.tax-product_cat .bp-catalog-cat:hover img {
  transform: scale(1.05);
}
.post-type-archive-product .bp-catalog-cat span,
.tax-product_cat .bp-catalog-cat span {
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 14px;
  z-index: 2;
  max-width: none;
  color: #fff;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.25;
  text-shadow: 0 1px 8px rgba(29, 23, 17, .5);
}

@media (max-width: 900px) {
  .post-type-archive-product .bp-catalog-cats__grid,
  .tax-product_cat .bp-catalog-cats__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .post-type-archive-product .bp-catalog-cat,
  .tax-product_cat .bp-catalog-cat {
    min-height: 130px;
  }
}

/* ==========================================================================
   Косметика v4: читабельность и дисциплина акцентов.
   1) Темнее серый текст. 2) Две кнопки на весь сайт. 3) Янтарь — только
   для действий. 4) Тёплая подложка фото. 5) Тёмный — только бортевой.
   6) Микротекст у кнопки покупки.
   ========================================================================== */

/* 1. Серый текст темнее: контраст для ЦА 35-55+, чтение с телефона. */
:root {
  --bp-muted: #5d5347;
}

/* 2. Единая основная кнопка: капсула с тёплым янтарным градиентом (как в hero). */
.bp-button {
  background:
    radial-gradient(70% 120% at 28% 10%, rgba(255, 255, 255, .34), rgba(255, 255, 255, 0) 60%),
    linear-gradient(135deg, #ffbf45 0%, #ff9f1a 58%, #e58908 100%);
  color: #2b1603;
  box-shadow: 0 10px 26px rgba(255, 159, 26, .26), inset 0 -2px 0 rgba(90, 42, 0, .16);
}
.bp-button:hover {
  filter: saturate(1.06);
  box-shadow: 0 14px 32px rgba(255, 159, 26, .34), inset 0 -2px 0 rgba(90, 42, 0, .18);
}
.bp-product-card__button,
.bp-home-products .bp-product-card__button {
  border-radius: 999px;
  background:
    radial-gradient(70% 120% at 28% 10%, rgba(255, 255, 255, .34), rgba(255, 255, 255, 0) 60%),
    linear-gradient(135deg, #ffbf45 0%, #ff9f1a 58%, #e58908 100%);
  color: #2b1603;
  box-shadow: 0 6px 16px rgba(255, 159, 26, .24), inset 0 -2px 0 rgba(90, 42, 0, .14);
  transition: transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.bp-product-card__button:hover,
.bp-home-products .bp-product-card__button:hover {
  background:
    radial-gradient(70% 120% at 28% 10%, rgba(255, 255, 255, .34), rgba(255, 255, 255, 0) 60%),
    linear-gradient(135deg, #ffbf45 0%, #ff9f1a 58%, #e58908 100%);
  color: #2b1603;
  transform: translateY(-1px);
  filter: saturate(1.06);
}
.bp-discount__button {
  border-radius: 999px;
  background:
    radial-gradient(70% 120% at 28% 10%, rgba(255, 255, 255, .34), rgba(255, 255, 255, 0) 60%),
    linear-gradient(135deg, #ffbf45 0%, #ff9f1a 58%, #e58908 100%);
  color: #2b1603;
}

/* 3. Янтарь убираем из заголовков и декоративных акцентов — оставляем действиям.
   Hero не трогаем: там оранжевый на тёмном фоне необходим для контраста. */
.bp-title strong,
.bp-section__head h2 strong {
  color: var(--bp-ink);
}
.bp-quiz-card__price { color: var(--bp-ink); }

/* 4. Тёплая подложка под фото товаров вместо «белых плит». */
.bp-product-card__image {
  background: #fbf7ee;
}
.bp-product-card__image img,
.bp-product-card__main-img {
  mix-blend-mode: multiply;
}

/* 5. «Подарки» из тёмного в светлый: тёмным остаётся только бортевой. */
.bp-promo__card--gift {
  background: var(--bp-cream);
  border: 1px solid var(--bp-line);
  color: var(--bp-ink);
}
.bp-promo__card--gift h3 { color: var(--bp-ink); }
.bp-promo__card--gift p { color: var(--bp-muted); }
.bp-promo__card--gift .bp-kicker {
  background: var(--bp-orange-soft);
  color: var(--bp-amber-deep);
}

/* 6. Микротекст-успокоение возле кнопки покупки. */
.bp-product-card__note {
  display: block;
  margin-top: 6px;
  color: var(--bp-muted);
  font-size: 12px;
  line-height: 1.35;
  text-align: center;
}

/* ==========================================================================
   Чекаут по Figma: две колонки, карточки получения и оплаты.
   ========================================================================== */
.bp-checkout {
  max-width: 1180px;
  margin: 0 auto;
  padding: 40px 20px 70px;
}
.bp-checkout__intro h2 {
  margin: 0 0 8px;
  font-family: var(--bp-serif);
  font-size: clamp(28px, 3vw, 38px);
  color: var(--bp-ink);
}
.bp-checkout__intro p { margin: 0 0 28px; color: var(--bp-muted); font-size: 16px; max-width: 640px; }
.bp-checkout__grid {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 32px;
  align-items: start;
}
.bp-checkout__details .col2-set { width: 100%; float: none; }
.bp-checkout__details .col2-set .col-1,
.bp-checkout__details .col2-set .col-2 { width: 100%; float: none; }
.bp-checkout .woocommerce-billing-fields,
.bp-checkout .woocommerce-additional-fields {
  background: var(--bp-cream);
  border: 1px solid var(--bp-line);
  border-radius: var(--bp-radius-lg);
  box-shadow: var(--bp-shadow-soft);
  padding: 26px;
  margin-bottom: 20px;
}
.bp-checkout .woocommerce-billing-fields h3,
.bp-checkout .woocommerce-additional-fields h3 {
  margin: 0 0 16px;
  font-family: var(--bp-serif);
  font-size: 22px;
  color: var(--bp-ink);
}
.bp-checkout .form-row { margin-bottom: 14px; }
.bp-checkout .form-row label {
  display: block;
  margin-bottom: 6px;
  color: var(--bp-ink);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.bp-checkout .form-row label .optional { color: var(--bp-muted); font-weight: 500; text-transform: none; }
.bp-checkout .form-row .input-text,
.bp-checkout .form-row select,
.bp-checkout .form-row textarea {
  width: 100%;
  min-height: 48px;
  padding: 12px 14px;
  border: 1.5px solid var(--bp-line);
  border-radius: var(--bp-radius);
  background: #fff;
  color: var(--bp-ink);
  font-size: 16px;
}
.bp-checkout .form-row .input-text:focus,
.bp-checkout .form-row textarea:focus {
  outline: none;
  border-color: var(--bp-orange);
  box-shadow: 0 0 0 3px rgba(217, 149, 20, .14);
}
.bp-checkout .form-row textarea { min-height: 90px; }
.bp-field-hidden { display: none !important; }

/* Сводка заказа справа: липкая карточка. */
.bp-checkout__summary {
  position: sticky;
  top: 90px;
  background: var(--bp-cream);
  border: 1px solid var(--bp-line);
  border-radius: var(--bp-radius-lg);
  box-shadow: var(--bp-shadow-soft);
  padding: 26px;
}
.bp-checkout__summary > h3 {
  margin: 0 0 16px;
  font-family: var(--bp-serif);
  font-size: 24px;
  color: var(--bp-ink);
}
.bp-checkout__summary table.shop_table {
  width: 100%;
  border: 0;
  border-collapse: collapse;
  margin-bottom: 14px;
}
.bp-checkout__summary table.shop_table th,
.bp-checkout__summary table.shop_table td {
  padding: 10px 0;
  border: 0;
  border-bottom: 1px solid var(--bp-line);
  text-align: left;
  font-size: 15px;
  color: var(--bp-ink);
  vertical-align: top;
}
.bp-checkout__summary table.shop_table td { text-align: right; }
.bp-checkout__summary .order-total th,
.bp-checkout__summary .order-total td { border-bottom: 0; font-size: 18px; font-weight: 900; }

/* Способы получения — карточки. */
.bp-checkout__summary ul#shipping_method,
.bp-checkout__summary ul.woocommerce-shipping-methods {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}
.bp-checkout__summary ul#shipping_method li,
.bp-checkout__summary ul.woocommerce-shipping-methods li {
  position: relative;
  margin: 0;
  padding: 0;
}
.bp-checkout__summary ul#shipping_method li input[type="radio"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.bp-checkout__summary ul#shipping_method li label {
  display: block;
  padding: 14px 16px;
  background: #fff;
  border: 1.5px solid var(--bp-line);
  border-radius: var(--bp-radius);
  font-size: 15px;
  font-weight: 700;
  color: var(--bp-ink);
  cursor: pointer;
  transition: border-color .15s ease, box-shadow .15s ease;
  text-align: left;
}
.bp-checkout__summary ul#shipping_method li input[type="radio"]:checked + label {
  border-color: var(--bp-orange);
  box-shadow: 0 0 0 3px rgba(217, 149, 20, .16);
  background: var(--bp-orange-soft);
}

/* Оплата — карточки. */
.bp-checkout #payment { background: transparent; }
.bp-checkout #payment ul.payment_methods {
  list-style: none;
  margin: 0 0 16px;
  padding: 14px 0 0;
  border: 0;
  display: grid;
  gap: 10px;
}
.bp-checkout #payment ul.payment_methods li {
  margin: 0;
  padding: 0;
  background: #fff;
  border: 1.5px solid var(--bp-line);
  border-radius: var(--bp-radius);
  overflow: hidden;
}
.bp-checkout #payment ul.payment_methods li > label {
  display: block;
  padding: 14px 16px;
  font-size: 15px;
  font-weight: 700;
  color: var(--bp-ink);
  cursor: pointer;
}
.bp-checkout #payment ul.payment_methods li:has(input:checked) {
  border-color: var(--bp-orange);
  box-shadow: 0 0 0 3px rgba(217, 149, 20, .16);
  background: var(--bp-orange-soft);
}
.bp-checkout #payment ul.payment_methods input[type="radio"] { margin-right: 8px; accent-color: var(--bp-orange); }
.bp-checkout #payment div.payment_box {
  margin: 0;
  padding: 0 16px 14px;
  background: transparent;
  color: var(--bp-muted);
  font-size: 14px;
}
.bp-checkout #payment div.payment_box::before { content: none; }

/* Кнопка «Сделать заказ». */
.bp-checkout #place_order {
  width: 100%;
  min-height: 56px;
  border: 0;
  border-radius: 999px;
  background:
    radial-gradient(70% 120% at 28% 10%, rgba(255, 255, 255, .34), rgba(255, 255, 255, 0) 60%),
    linear-gradient(135deg, #ffbf45 0%, #ff9f1a 58%, #e58908 100%);
  color: #2b1603;
  font-size: 17px;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 14px 32px rgba(255, 159, 26, .3), inset 0 -2px 0 rgba(90, 42, 0, .16);
  transition: transform .18s ease, filter .18s ease;
}
.bp-checkout #place_order:hover { transform: translateY(-2px); filter: saturate(1.06); }
.bp-checkout__note {
  margin: 14px 0 0;
  color: var(--bp-muted);
  font-size: 13px;
  line-height: 1.5;
}
.bp-checkout .woocommerce-terms-and-conditions-wrapper { margin-bottom: 12px; font-size: 13px; color: var(--bp-muted); }

@media (max-width: 920px) {
  .bp-checkout__grid { grid-template-columns: 1fr; }
  .bp-checkout__summary { position: static; }
}

/* Hero: чипы доверия под подзаголовком. */
.bp-herofg__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}
.bp-herofg__chips li {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(255, 252, 245, .1);
  border: 1px solid rgba(255, 218, 150, .35);
  backdrop-filter: blur(4px);
  color: rgba(253, 249, 240, .95);
  font-size: 14px;
  font-weight: 700;
}
.bp-herofg__chips li::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--bp-orange);
  flex: 0 0 auto;
}
@media (max-width: 900px) {
  .bp-herofg__chips { gap: 8px; }
  .bp-herofg__chips li { font-size: 13px; padding: 7px 12px; }
}

/* ==========================================================================
   Дизайн-полировка по курсам (типографика, анимация, чек-лист):
   хореография появления, 3 состояния кнопок, фирменные детали.
   ========================================================================== */

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

/* Hero: каскадное появление элементов при загрузке. */
.bp-anim-hero {
  opacity: 0;
  animation: bpHeroIn .7s cubic-bezier(.22, .8, .36, 1) forwards;
}
@keyframes bpHeroIn {
  from { opacity: 0; transform: translateY(22px); }
  to   { opacity: 1; transform: translateY(0); }
}
.bp-herofg { overflow: hidden; }
.bp-herofg__photo { will-change: transform; }

/* Появление карточек и блоков при скролле: равные элементы — одинаково, каскадом. */
.bp-reveal {
  opacity: 0;
  transform: translateY(26px);
  transition: opacity .6s cubic-bezier(.22, .8, .36, 1), transform .6s cubic-bezier(.22, .8, .36, 1);
}
.bp-reveal.is-in {
  opacity: 1;
  transform: translateY(0);
}

/* Кнопки: три состояния (статика / hover / нажатие) — по чек-листу. */
.bp-button:active,
.bp-herofg__button:active,
.bp-product-card__button:active,
.bp-discount__button:active,
.bp-quiz__option:active,
.bp-checkout #place_order:active {
  transform: translateY(1px) scale(.985);
  transition-duration: .06s;
}

/* Поля ввода: hover-состояние (4 состояния по чек-листу: статика/hover/фокус/ошибка). */
.bp-checkout .form-row .input-text:hover,
.bp-modal__form input:hover,
.bp-checkout .form-row textarea:hover {
  border-color: rgba(217, 149, 20, .55);
}

/* Фирменная деталь: «медовый мазок» под акцентом заголовка. Текст не меняется —
   это фоновая подсветка-подчёркивание тёплым янтарём. */
.bp-title strong,
.bp-section__head h2 strong {
  background-image: linear-gradient(180deg, rgba(255, 191, 69, 0) 62%, rgba(255, 191, 69, .42) 62%, rgba(244, 192, 74, .42) 92%, rgba(255, 191, 69, 0) 92%);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  border-radius: 2px;
}

/* Меню: подчёркивание-«потёк мёда» на hover. */
.bp-servicebar__menu a,
.bp-nav__inner > a:not(.bp-nav__catalog),
.bp-footer ul a {
  position: relative;
  text-decoration: none;
}
.bp-servicebar__menu a::after,
.bp-nav__inner > a:not(.bp-nav__catalog)::after,
.bp-footer ul a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 100%;
  bottom: -3px;
  height: 2px;
  border-radius: 2px;
  background: linear-gradient(90deg, var(--bp-orange), #ffce6e);
  transition: right .28s cubic-bezier(.22, .8, .36, 1);
}
.bp-servicebar__menu a:hover::after,
.bp-nav__inner > a:not(.bp-nav__catalog):hover::after,
.bp-footer ul a:hover::after {
  right: 0;
}

/* Карточки товаров: фото оживает на hover (умеренный зум). */
.bp-product-card__image { overflow: hidden; }
.bp-product-card__image img {
  transition: transform .35s cubic-bezier(.22, .8, .36, 1);
}
.bp-product-card:hover .bp-product-card__image img {
  transform: scale(1.045);
}

/* Кикер секций: янтарная точка-капля перед лейблом. */
.bp-kicker {
  position: relative;
}
.bp-kicker::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  margin-right: 8px;
  vertical-align: 2px;
  border-radius: 50% 50% 50% 0;
  transform: rotate(-45deg);
  background: linear-gradient(135deg, #ffbf45, var(--bp-amber-deep));
}

/* Цена в карточке — заметнее (иерархия: цена = ключевая информация). */
.bp-product-card__price {
  font-size: 19px;
}

/* Бортевой: мягкое «свечение» янтаря — единственный декоративный акцент-петля. */
.bp-bort__media img {
  transition: transform .45s cubic-bezier(.22, .8, .36, 1);
}
.bp-bort__media:hover img {
  transform: scale(1.03);
}
.bp-bort__tag {
  animation: bpPulse 3.2s ease-in-out infinite;
}
@keyframes bpPulse {
  0%, 100% { box-shadow: 0 0 0 0 rgba(255, 159, 26, .0); }
  50%      { box-shadow: 0 0 22px 2px rgba(255, 159, 26, .35); }
}

/* Доступность: видимый фокус с янтарным кольцом. */
a:focus-visible,
button:focus-visible,
.bp-button:focus-visible {
  outline: 2px solid var(--bp-orange);
  outline-offset: 2px;
  border-radius: 4px;
}

@media (prefers-reduced-motion: reduce) {
  .bp-anim-hero { animation: none; opacity: 1; }
  .bp-reveal { opacity: 1; transform: none; transition: none; }
  .bp-bort__tag { animation: none; }
}
