/* ==========================================================================
   Hellion — редизайн 2026 (макет Figma «hellion», страница «сайт»)
   Брейкпоинты: десктоп ≥1200 (макет 1440), планшет 768–1199 (макет 768),
   телефон ≤767 (макет 390).
   ========================================================================== */

:root {
  --hl-navy: #001f4b;
  --hl-navy-2: #00126a;
  --hl-blue: #005aef;
  --hl-ink: #2a2829;
  --hl-light: #ededed;
  --hl-grey: #969696;
  --hl-line: #bebebe;
  --hl-deep: #00071d;
  --hl-star: #ffcd29;
  --hl-font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
  --hl-font-head: 'Archivo', 'Inter', Arial, sans-serif;
  --hl-ease: cubic-bezier(.4, 0, .2, 1);
}

body {
  font-family: var(--hl-font);
  background: var(--hl-light);
  color: var(--hl-ink);
}

.hl-icon { display: inline-block; width: 1em; height: 1em; flex: none; vertical-align: middle; }

.hl-container {
  width: 1170px;
  max-width: 100%;
  margin: 0 auto;
  position: relative;
}

.hl-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

.hl-reset-list { list-style: none; margin: 0; padding: 0; }

/* ---------- Типографика секций ---------- */
.hl-h2 {
  margin: 0;
  font-family: var(--hl-font-head);
  font-weight: 500;
  font-size: 56px;
  line-height: .94;
  text-transform: uppercase;
  color: var(--hl-navy);
  letter-spacing: 0;
}
.hl-h2--light { color: var(--hl-light); }
.hl-lead {
  margin: 8px 0 0;
  font-size: 19px;
  line-height: 1.05;
  color: var(--hl-ink);
  font-weight: 400;
}
.hl-lead--light { color: var(--hl-light); font-weight: 300; }

/* ---------- Кнопки ---------- */
.hl-cta { display: inline-flex; align-items: center; gap: 9px; }
.hl-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 301px;
  height: 65px;
  padding: 0 20px;
  border: 1px solid var(--hl-navy);
  border-radius: 31px;
  background: var(--hl-light);
  color: var(--hl-navy);
  font: 400 20px/1.2 var(--hl-font);
  text-decoration: none;
  transition: background .25s var(--hl-ease), color .25s var(--hl-ease), border-color .25s var(--hl-ease);
  cursor: pointer;
}
.hl-btn:hover, .hl-btn:focus { background: var(--hl-navy); color: var(--hl-light); text-decoration: none; }
.hl-btn--plain { border-color: var(--hl-light); }
.hl-btn--plain:hover, .hl-btn--plain:focus { background: transparent; color: var(--hl-light); }
.hl-round {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 61px;
  height: 61px;
  border-radius: 50%;
  border: 1px solid transparent;
  background: var(--hl-navy);
  color: var(--hl-light);
  font-size: 24px;
  transition: transform .25s var(--hl-ease), background .25s var(--hl-ease), color .25s var(--hl-ease);
  flex: none;
}
.hl-round:hover, .hl-round:focus { transform: translateX(4px); color: var(--hl-light); }
.hl-round--light { background: var(--hl-light); color: var(--hl-navy); }
.hl-round--light:hover, .hl-round--light:focus { color: var(--hl-navy); }
.hl-round--ghost { background: transparent; border-color: var(--hl-light); color: var(--hl-light); }
.hl-round--ghost:hover, .hl-round--ghost:focus { color: var(--hl-light); }

.hl-more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding-bottom: 7px;
  border-bottom: 1px solid currentColor;
  color: var(--hl-ink);
  font-size: 19px;
  line-height: 1.05;
  text-decoration: none;
}
.hl-more .hl-icon { width: 21px; height: 21px; transform: scaleX(-1); transition: transform .25s var(--hl-ease); }
.hl-more:hover, .hl-more:focus { color: var(--hl-navy); text-decoration: none; }
.hl-more:hover .hl-icon { transform: scaleX(-1) translateX(-4px); }
.hl-more--light { color: var(--hl-light); font-weight: 300; }
.hl-more--light:hover, .hl-more--light:focus { color: #fff; }
.hl-more-wrap { text-align: center; }

/* стрелки слайдеров */
.hl-arrows { display: flex; gap: 8px; }
.hl-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 21px;
  height: 21px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--hl-navy);
  cursor: pointer;
  transition: opacity .2s, transform .2s;
}
.hl-arrow .hl-icon { width: 21px; height: 21px; }
.hl-arrow--next .hl-icon { transform: scaleX(-1); }
.hl-arrow:disabled { opacity: .35; cursor: default; }
.hl-arrow--light { color: var(--hl-light); }

/* точки слайдеров (планшет/телефон) */
.hl-dots { display: none; justify-content: center; gap: 8px; margin-top: 30px; }
.hl-dots button {
  width: 5px; height: 5px; padding: 0; border: 0; border-radius: 50%;
  background: rgba(150, 150, 150, .6); cursor: pointer; transition: background .2s;
}
.hl-dots button.is-active { background: var(--hl-navy); }
.hl-dots--light button { background: rgba(237, 237, 237, .45); }
.hl-dots--light button.is-active { background: var(--hl-light); }

/* горизонтальная лента со снапом */
.hl-track {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
}
.hl-track::-webkit-scrollbar { display: none; }
.hl-track > * { scroll-snap-align: start; flex: none; }

/* ==========================================================================
   ШАПКА
   ========================================================================== */
.hl-header { position: relative; z-index: 100; font-family: var(--hl-font); }

.hl-topbar { background: var(--hl-navy); color: var(--hl-light); }
.hl-topbar__in { display: flex; align-items: center; justify-content: space-between; height: 44px; }
.hl-topbar__links, .hl-topbar__contacts { display: flex; align-items: center; }
.hl-topbar__links { gap: 20px; }
.hl-topbar__contacts { gap: 32px; }
.hl-topbar a { color: var(--hl-light); font-size: 14px; line-height: 1.05; text-decoration: none; transition: opacity .2s; }
.hl-topbar a:hover, .hl-topbar a:focus { opacity: .75; color: var(--hl-light); text-decoration: none; }
.hl-topbar__contacts a { display: inline-flex; align-items: center; gap: 16px; }
.hl-topbar__contacts .hl-icon { width: 16px; height: 16px; }
.hl-topbar__logo { display: none; color: var(--hl-light); }

.hl-headbar { background: var(--hl-light); border-bottom: 1px solid #6e6e6e; }
.hl-headbar__in { display: flex; align-items: center; height: 95px; }
.hl-logo { display: inline-flex; color: var(--hl-ink); flex: none; }
.hl-logo .hl-icon { width: 170px; height: 40px; }

.hl-nav { margin-left: 30px; }
.hl-nav__list { display: flex; gap: 20px; list-style: none; margin: 0; padding: 0; }
.hl-nav__item { position: relative; }
.hl-nav__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 0;
  border: 0;
  background: none;
  color: var(--hl-navy);
  font: 400 14px/1.05 var(--hl-font);
  cursor: pointer;
  text-decoration: none;
}
.hl-nav__link:hover, .hl-nav__link:focus { color: var(--hl-navy); text-decoration: none; }
.hl-nav__link .hl-icon { width: 15px; height: 15px; transition: transform .25s var(--hl-ease); }
.hl-nav__item.is-open .hl-nav__link .hl-icon { transform: rotate(180deg); }

.hl-dd {
  position: absolute;
  top: calc(100% + 8px);
  left: calc(50% - 10px);
  min-width: 186px;
  padding: 21px 16px 21px;
  border-radius: 8px;
  background: var(--hl-navy);
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, 6px);
  transition: opacity .2s var(--hl-ease), transform .2s var(--hl-ease), visibility .2s;
  z-index: 20;
}
.hl-dd::before {
  content: '';
  position: absolute;
  top: -8px;
  left: 50%;
  margin-left: -6px;
  border: 6px solid transparent;
  border-bottom-width: 9px;
  border-top: 0;
  border-bottom-color: var(--hl-navy);
}
.hl-dd::after { content: ''; position: absolute; left: 0; right: 0; top: -16px; height: 16px; }
.hl-nav__item.is-open .hl-dd { opacity: 1; visibility: visible; transform: translate(-50%, 0); }
.hl-dd a {
  display: block;
  color: var(--hl-light);
  font-size: 14px;
  font-weight: 300;
  line-height: 1.05;
  white-space: nowrap;
  text-decoration: none;
  transition: opacity .2s;
}
.hl-dd li + li { margin-top: 12px; }
.hl-dd a:hover, .hl-dd a:focus { opacity: .7; color: var(--hl-light); text-decoration: none; }
.hl-dd__sep { width: 153px; height: 1px; margin: 18px 0 18px; background: rgba(237, 237, 237, .55); }
.hl-dd li.hl-dd__sep + li { margin-top: 0; }

.hl-tools { display: flex; align-items: center; gap: 24px; margin-left: auto; }
.hl-tool {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 0;
  background: none;
  color: var(--hl-navy);
  cursor: pointer;
  text-decoration: none;
}
.hl-tool:hover, .hl-tool:focus { color: var(--hl-navy-2); text-decoration: none; }
.hl-tool .hl-icon { width: 22px; height: 22px; }
.hl-tool--user .hl-icon { width: 21px; height: 21px; }
.hl-tool sup, .hl-badge {
  position: absolute;
  top: -8px;
  right: -7px;
  min-width: 13px;
  height: 13px;
  padding: 0 3px;
  border-radius: 7px;
  background: var(--hl-navy);
  color: var(--hl-light);
  font: 400 7.8px/13px var(--hl-font);
  text-align: center;
}
.hl-tool--burger { display: none; }
.hl-tool--burger .hl-icon { width: 22px; height: 22px; }

/* корзина Mango внутри шапки */
.hl-tools #cart.cart { position: relative; display: inline-flex; }
.hl-tools #cart .cart-total {
  position: relative;
  display: inline-flex;
  color: var(--hl-navy);
  text-decoration: none;
}
.hl-tools #cart .cart-total > i, .hl-tools #cart #cart-total { display: none !important; }
.hl-tools #cart .cart-total .hl-icon { width: 23px; height: 23px; }
.hl-tools #cart .cart-count { display: block !important; }

/* поиск */
.hl-search {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  background: var(--hl-light);
  border-bottom: 1px solid #6e6e6e;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition: opacity .2s, transform .2s, visibility .2s;
}
.hl-search.is-open { opacity: 1; visibility: visible; transform: none; }
.hl-search form { display: flex; align-items: center; gap: 16px; padding: 18px 0; }
.hl-search input {
  flex: 1;
  height: 44px;
  padding: 0 0 0 4px;
  border: 0;
  border-bottom: 1px solid var(--hl-navy);
  background: transparent;
  color: var(--hl-navy);
  font: 400 18px/1 var(--hl-font);
  outline: none;
  box-shadow: none;
}
.hl-search input::placeholder { color: var(--hl-grey); }
.hl-search button {
  display: inline-flex; align-items: center; justify-content: center;
  width: 44px; height: 44px; padding: 0; border: 0; border-radius: 50%;
  background: var(--hl-navy); color: var(--hl-light); cursor: pointer;
}
.hl-search button .hl-icon { width: 20px; height: 20px; }

/* мобильное меню */
.hl-overlay {
  position: fixed;
  inset: 0;
  z-index: 998;
  background: rgba(0, 18, 50, .15);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  opacity: 0;
  visibility: hidden;
  transition: opacity .3s, visibility .3s;
}
.hl-panel {
  position: fixed;
  top: 44px;
  right: 0;
  bottom: 0;
  z-index: 999;
  display: flex;
  flex-direction: column;
  width: 394px;
  max-width: 100%;
  padding: 13px 16px 25px 21px;
  border: 1px solid var(--hl-navy);
  border-radius: 6px 0 0 6px;
  background: rgba(0, 31, 75, .66);
  -webkit-backdrop-filter: blur(53px);
  backdrop-filter: blur(53px);
  color: var(--hl-light);
  overflow-y: auto;
  transform: translateX(105%);
  transition: transform .35s var(--hl-ease);
}
body.hl-menu-open { overflow: hidden; }
body.hl-menu-open .hl-overlay { opacity: 1; visibility: visible; }
body.hl-menu-open .hl-panel { transform: none; }
.hl-panel__close {
  align-self: flex-end;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 26px;
  height: 26px;
  margin: 0 0 33px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--hl-light);
  cursor: pointer;
}
.hl-panel__close .hl-icon { width: 17px; height: 17px; }
.hl-panel__hr { width: 342px; max-width: 100%; height: 1px; margin: 0; background: #bebebe; flex: none; }
.hl-panel__brand { display: flex; align-items: center; justify-content: space-between; width: 342px; max-width: 100%; padding: 30px 5px 30px 0; }
.hl-panel__brand .hl-logo { color: var(--hl-light); }
.hl-panel__brand .hl-logo .hl-icon { width: 155px; height: 36px; }
.hl-panel__brand .hl-tool { color: var(--hl-light); }
.hl-panel__tools { display: flex; justify-content: space-between; width: 342px; max-width: 100%; padding: 24px 0 24px; }
.hl-panel__tool { gap: 9px !important; padding-top: 12px !important; line-height: 15px !important; }
.hl-panel__tool {
  position: relative;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  color: var(--hl-light);
  font-size: 14px;
  line-height: 1.2;
  text-decoration: none;
  background: none;
  border: 0;
  padding: 0;
  cursor: pointer;
}
.hl-panel__tool:hover, .hl-panel__tool:focus { color: #fff; text-decoration: none; }
.hl-panel__tool .hl-icon { width: 22px; height: 22px; }
.hl-panel__tool .hl-badge { top: 5px; right: auto; left: calc(50% + 6px); background: var(--hl-light); color: var(--hl-navy); }
.hl-panel__nav { list-style: none; margin: 0; padding: 24px 0 0; }
.hl-panel__nav > li + li { margin-top: 18px; }
.hl-panel__nav-btn {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--hl-light);
  font: 400 16px/1.25 var(--hl-font);
  cursor: pointer;
  text-decoration: none;
}
.hl-panel__nav-btn:hover, .hl-panel__nav-btn:focus { color: #fff; text-decoration: none; }
.hl-panel__nav-btn .hl-icon { width: 15px; height: 15px; transition: transform .25s var(--hl-ease); }
.hl-panel__nav li.is-open > .hl-panel__nav-btn .hl-icon { transform: rotate(180deg); }
.hl-panel__sub {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows .3s var(--hl-ease);
}
.hl-panel__nav li.is-open > .hl-panel__sub { grid-template-rows: 1fr; }
.hl-panel__sub > ul { overflow: hidden; list-style: none; margin: 0; padding: 0 0 0 13px; }
.hl-panel__sub li:first-child { padding-top: 18px; }
.hl-panel__sub li + li { margin-top: 14px; }
.hl-panel__sub li { line-height: 15px; }
.hl-panel__sub a { line-height: 15px; }
.hl-panel__nav-btn { line-height: 17px !important; }
.hl-panel__nav > li { line-height: 17px; }
.hl-panel__sub a { color: var(--hl-light); font-size: 14px; font-weight: 300; line-height: 1.15; text-decoration: none; }
.hl-panel__sub a:hover, .hl-panel__sub a:focus { color: #fff; text-decoration: none; }
.hl-panel__sub .hl-dd__sep { width: 153px; margin: 18px 0; background: #bebebe; }
.hl-panel__foot { display: flex; align-items: flex-end; justify-content: space-between; width: 342px; max-width: 100%; margin-top: auto; padding-top: 40px; }
.hl-panel__contacts a {
  display: flex; align-items: center; gap: 8px;
  color: var(--hl-light); font-size: 14px; font-weight: 300; text-decoration: none;
}
.hl-panel__contacts a + a { margin-top: 18px; }
.hl-panel__brand .hl-tool .hl-icon { width: 19px; height: 19px; }
.hl-panel__contacts .hl-icon { width: 16px; height: 16px; }
.hl-social { display: flex; align-items: center; gap: 16px; }
.hl-social a { display: inline-flex; color: inherit; transition: opacity .2s; }
.hl-social a:hover, .hl-social a:focus { opacity: .7; color: inherit; }
.hl-social .hl-icon { width: 24px; height: 24px; }
.hl-social .hl-icon--dzen { width: 21px; height: 21px; }

/* ==========================================================================
   ПОДВАЛ
   ========================================================================== */
.hl-footer { background: var(--hl-light); color: var(--hl-ink); font-family: var(--hl-font); }
.hl-footer__top { display: flex; padding: 64px 0 45px; position: relative; }
.hl-footer__brand { width: 270px; flex: none; }
.hl-footer__brand .hl-logo { color: var(--hl-navy); }
.hl-footer__tagline { margin: 15px 0 0; width: 160px; color: var(--hl-navy); font-size: 13px; line-height: 1.05; }
.hl-footer__brand .hl-social { gap: 16px; margin-top: 23px; color: var(--hl-navy); }
.hl-footer__menu { display: flex; gap: 56px; margin-top: 14px; }
.hl-fcol__title {
  position: relative;
  display: block;
  width: 100%;
  margin: 0 0 12px;
  padding: 0 0 12px;
  border: 0;
  background: none;
  font: 600 16px/.94 var(--hl-font-head);
  text-transform: uppercase;
  color: var(--hl-navy);
  text-align: left;
  white-space: nowrap;
}
.hl-fcol__title::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 68.5px;
  height: 1px;
  background: var(--hl-navy);
}
.hl-fcol__title .hl-icon { display: none; }
.hl-fcol--catalog { width: 154px; }
.hl-fcol--orders { width: 189px; }
.hl-fcol--support { width: 197px; }
.hl-fcol--contacts { width: 189px; }
.hl-fcol li { line-height: 1.05; }
.hl-fcol li + li { margin-top: 12px; }
.hl-fcol a, .hl-fcol span {
  color: var(--hl-ink);
  font-size: 14px;
  font-weight: 300;
  line-height: 1.05;
  text-decoration: none;
  display: inline-block;
  transition: font-weight .25s var(--hl-ease), color .25s;
}
/* плавное «утолщение» при наведении (макет: футер при наведении на пункт) */
@supports (font-variation-settings: normal) {
  .hl-fcol a { font-variation-settings: 'wght' 300; transition: font-variation-settings .3s var(--hl-ease); }
  .hl-fcol a:hover, .hl-fcol a:focus { font-variation-settings: 'wght' 600; }
}
.hl-fcol a:hover, .hl-fcol a:focus { color: var(--hl-navy); font-weight: 600; text-decoration: none; }
.hl-fcol--contacts li { display: flex; align-items: flex-start; gap: 8px; }
.hl-fcol--contacts .hl-icon { width: 16px; height: 16px; margin-top: -1px; color: var(--hl-ink); }
.hl-fcol--contacts .hl-addr { max-width: 167px; line-height: 1.19; }
.hl-footer__up {
  position: absolute;
  top: 20px;
  right: 2px;
  display: inline-flex;
  width: 37px;
  height: 37px;
  padding: 0;
  border: 0;
  background: none;
  color: #848484;
  cursor: pointer;
  transition: color .2s, transform .2s;
}
.hl-footer__up .hl-icon { width: 37px; height: 37px; }
.hl-footer__up:hover, .hl-footer__up:focus { color: var(--hl-navy); transform: translateY(-3px); }
.hl-footer__bottom { border-top: 1px solid #848484; padding: 26px 0 44px; }
.hl-footer__row { display: flex; align-items: center; justify-content: space-between; }
.hl-footer__row + .hl-footer__row { margin-top: 19px; }
.hl-legal { display: flex; flex-wrap: wrap; gap: 10px; list-style: none; margin: 0; padding: 0; }
.hl-legal li + li::before { content: '·'; margin-right: 10px; }
.hl-legal a, .hl-footer__copy, .hl-footer__ip { color: var(--hl-ink); font-size: 13px; font-weight: 300; line-height: 1.05; text-decoration: none; }
.hl-legal a:hover, .hl-legal a:focus { color: var(--hl-navy); text-decoration: underline; }
.hl-footer__ids { display: flex; gap: 24px; }
.hl-pay { display: flex; align-items: center; gap: 12px; margin-right: 1px; font-size: 13px; line-height: 1.05; color: var(--hl-ink); }
.hl-pay__icons { display: flex; align-items: center; gap: 12px; }
.hl-pay__icons .hl-icon--visa { width: 25px; height: 8px; }
.hl-pay__icons .hl-icon--mastercard { width: 15px; height: 9px; }
.hl-pay__icons .hl-icon--mir { width: 27px; height: 8px; }

/* ==========================================================================
   КАРТОЧКА ТОВАРА (общая для главной, категорий, модулей)
   ========================================================================== */
.hl-card { display: flex; flex-direction: column; gap: 16px; width: 369px; }
.hl-card__box {
  position: relative;
  display: flex;
  flex-direction: column;
  height: 439px;
  padding: 17px 17px 22px;
  border: 1px solid var(--hl-navy);
  border-radius: 24px;
  background: transparent;
  transition: box-shadow .25s var(--hl-ease), transform .25s var(--hl-ease);
}
.hl-card:hover .hl-card__box { box-shadow: 0 14px 34px rgba(0, 31, 75, .12); }
.hl-card__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 41px;
  padding: 0 4px 13px 12px;
  margin: 0 3px;
  border-bottom: 1px solid #000;
}
.hl-card__label { color: var(--hl-navy); font-size: 16px; line-height: 1.2; }
.hl-card__label--sale { color: var(--hl-blue); }
.hl-card__acts { display: flex; align-items: center; gap: 11px; margin-left: auto; }
.hl-card__act {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 25px;
  height: 25px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--hl-navy);
  cursor: pointer;
  transition: transform .2s, color .2s;
}
.hl-card__act:hover, .hl-card__act:focus { color: var(--hl-navy); }
.hl-card__act .hl-icon { width: 22px; height: 22px; }
.hl-card__act--eye .hl-icon { width: 25px; height: 25px; }
.hl-card__media {
  position: relative;
  display: block;
  height: 197px;
  margin-top: 13px;
  border-radius: 18px;
  overflow: hidden;
  background: #0a1a36;
}
.hl-card__media img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity .3s var(--hl-ease);
}
.hl-card__media img.is-active { opacity: 1; }
.hl-card__media img:only-of-type { opacity: 1; }
.hl-card__media--fit img { object-fit: contain; background: #fff; }
.hl-card__zones { position: absolute; inset: 0; display: flex; z-index: 2; }
.hl-card__zones span { flex: 1; }
.hl-card__dash { display: flex; gap: 16px; justify-content: center; height: 9px; margin-top: 0; padding-top: 8px; }
.hl-card__dash i { display: block; width: 38px; height: 1px; background: var(--hl-line); transition: background .2s; }
.hl-card__dash i.is-active { background: var(--hl-navy); }
.hl-card__name {
  display: block;
  margin-top: 14px;
  color: var(--hl-navy);
  font: 500 18px/1.15 var(--hl-font-head);
  text-decoration: none;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.hl-card__name:hover, .hl-card__name:focus { color: var(--hl-blue); text-decoration: none; }
.hl-card__desc {
  margin: 6px 0 0;
  color: var(--hl-grey);
  font-size: 14px;
  line-height: 1.2;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}
.hl-card__foot { display: flex; align-items: center; justify-content: space-between; margin-top: auto; }
.hl-card__price { color: var(--hl-navy); font: 400 18px/1.1 var(--hl-font-head); }
.hl-card__price-old { margin-left: 8px; color: var(--hl-grey); font-size: 14px; text-decoration: line-through; }
.hl-card__price-new { color: var(--hl-blue); }
.hl-card__cart {
  display: inline-flex;
  width: 25px;
  height: 25px;
  padding: 0;
  border: 0;
  background: none;
  color: var(--hl-navy);
  cursor: pointer;
  transition: transform .2s, color .2s;
}
.hl-card__cart .hl-icon { width: 25px; height: 25px; }
.hl-card__cart:hover, .hl-card__cart:focus { color: var(--hl-navy); }
.hl-card__buy {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 42px;
  border: 1px solid var(--hl-navy);
  border-radius: 48px;
  background: var(--hl-navy);
  color: var(--hl-light);
  font: 500 16px/1 var(--hl-font);
  cursor: pointer;
  transition: height .2s var(--hl-ease), margin .2s var(--hl-ease);
}
.hl-card__buy:hover, .hl-card__buy:focus { height: 50px; margin: -4px 0; border-radius: 50px; }
.hl-card__buy[disabled] { opacity: .5; cursor: not-allowed; }

/* сетка карточек на страницах категорий/поиска/акций */
.hl-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px 31px; margin: 0 0 40px; }
.hl-grid .hl-card { width: auto; }
#column-left ~ #content .hl-grid, #column-right ~ #content .hl-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.hl-grid--list { grid-template-columns: 1fr !important; }
.hl-grid--list .hl-card__box { flex-direction: row; flex-wrap: wrap; height: auto; gap: 0 24px; }
.hl-grid--list .hl-card__top { flex: 0 0 100%; }
.hl-grid--list .hl-card__mediawrap { flex: 0 0 333px; }
.hl-grid--list .hl-card__body { flex: 1; display: flex; flex-direction: column; min-height: 230px; }

/* ==========================================================================
   ПЛАНШЕТ 768–1199
   ========================================================================== */
@media (max-width: 1199px) {
  .hl-container { width: auto; padding: 0 32px; }

  .hl-h2 { font-size: 48px; font-weight: 600; }
  .hl-lead { font-size: 16px; }

  .hl-btn { width: 229px; height: 50px; border-radius: 24px; font-size: 14px; }
  .hl-round { width: 46px; height: 46px; font-size: 18px; }
  .hl-cta { gap: 7px; }
  .hl-more { font-size: 14px; gap: 5px; padding-bottom: 5px; }
  .hl-more .hl-icon { width: 13px; height: 13px; }
  .hl-dots { display: flex; }

  .hl-topbar__in { height: 44px; }
  .hl-topbar a { font-size: 13px; }
  .hl-topbar__contacts a { gap: 8px; }
  .hl-topbar__contacts { gap: 22px; }
  .hl-headbar__in { height: 77px; }
  .hl-logo .hl-icon { width: 101px; height: 24px; }
  .hl-nav { margin-left: 20px; }
  .hl-nav__list { gap: 14px; }
  .hl-nav__link { font-size: 13px; gap: 3px; }
  .hl-tools { gap: 18px; }
  .hl-tool--compare, .hl-tool--wishlist { display: none; }
  .hl-tool--burger { display: inline-flex; }
  .hl-tool .hl-icon { width: 21px; height: 21px; }
  .hl-tools #cart .cart-total .hl-icon { width: 21px; height: 21px; }

  .hl-footer__top { flex-wrap: wrap; padding: 50px 0 40px; }
  .hl-footer__brand { width: 242px; }
  .hl-footer__brand .hl-logo .hl-icon { width: 161px; height: 38px; }
  .hl-footer__tagline { margin-top: 10px; width: 170px; }
  .hl-footer__menu { display: grid; grid-template-columns: 241px 1fr; gap: 32px 0; flex: 1; margin-top: 0; }
  .hl-fcol--catalog, .hl-fcol--orders, .hl-fcol--support, .hl-fcol--contacts { width: auto; }
  .hl-fcol__title { font-size: 15px; margin-bottom: 12px; }
  .hl-footer__up { top: auto; bottom: 330px; right: 4px; }
  .hl-footer__bottom { padding: 32px 0 40px; }
  .hl-footer__row { flex-wrap: wrap; justify-content: flex-start; }
  .hl-footer__row + .hl-footer__row { margin-top: 18px; }
  .hl-legal a, .hl-footer__copy, .hl-footer__ip { font-size: 12px; }
  .hl-legal { gap: 6px; } .hl-legal li + li::before { margin-right: 6px; }
  .hl-footer__ids { gap: 16px; }
  .hl-pay { width: 100%; margin-top: 18px; font-size: 13px; }

  .hl-card { width: auto; gap: 14px; }
  .hl-card__box { height: 400px; padding: 14px 14px 20px; border-radius: 21px; }
  .hl-card__top { height: 38px; padding-left: 6px; margin: 0; }
  .hl-card__label { font-size: 14px; }
  .hl-card__media { height: 187px; border-radius: 14px; }
  .hl-card__dash i { width: 39px; }
  .hl-card__name { font-size: 16px; margin-top: 14px; padding-left: 6px; }
  .hl-card__desc { font-size: 12px; padding-left: 6px; }
  .hl-card__foot { padding-left: 6px; }
  .hl-card__price { font-size: 16px; }
  .hl-card__buy { height: 36px; font-size: 14px; }
  .hl-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px 20px; }
}

/* ==========================================================================
   ТЕЛЕФОН ≤767
   ========================================================================== */
@media (max-width: 767px) {
  .hl-container { padding: 0 20px; }

  .hl-h2 { font-size: 24px; line-height: 1; }
  .hl-lead { font-size: 14px; margin-top: 8px; }

  .hl-btn { width: 208px; height: 44px; border-radius: 21px; font-size: 13px; }
  .hl-round { width: 42px; height: 42px; font-size: 18px; }
  .hl-cta { gap: 6px; }
  .hl-more { font-size: 12px; gap: 6px; }

  .hl-topbar { display: none; }
  .hl-headbar__in { height: 59px; }
  .hl-nav { display: none; }
  .hl-tools { gap: 17px; }
  .hl-tool .hl-icon, .hl-tools #cart .cart-total .hl-icon { width: 20px; height: 20px; }
  .hl-tool--search .hl-icon { width: 20px; height: 20px; }

  .hl-panel { top: 0; bottom: auto; width: 100%; max-height: 100vh; max-height: 100dvh; padding: 13px 21px calc(25px + env(safe-area-inset-bottom)) 20px; border-radius: 6px; -webkit-overflow-scrolling: touch; overscroll-behavior: contain; }
  .hl-panel__close { margin-bottom: 24px; }
  .hl-panel__brand { padding: 26px 3px 26px 1px; }
  .hl-panel__brand .hl-logo .hl-icon { width: 123px; height: 29px; }
  .hl-panel__tools { padding: 26px 0 33px; }
  .hl-panel__nav { padding-top: 33px; }
  .hl-panel__foot { margin-top: 0; padding-top: 48px; }
  .hl-panel__hr, .hl-panel__brand, .hl-panel__tools, .hl-panel__foot { width: 100%; }

  .hl-footer__top { display: grid; grid-template-columns: 183px 1fr; padding: 47px 0 0; }
  .hl-footer__brand { width: auto; display: flex; flex-direction: column; }
  .hl-footer__brand .hl-logo .hl-icon { width: 140px; height: 33px; }
  .hl-footer__tagline { font-size: 12px; margin-top: 8px; }
  .hl-footer__brand .hl-social { margin-top: auto; padding-bottom: 0; gap: 24px; }
  .hl-footer__menu { display: contents; }
  .hl-fcol--contacts { grid-column: 2; grid-row: 1; padding-top: 10px; }
  .hl-fcol--contacts .hl-fcol__title { font-size: 14px; margin-bottom: 22px; }
  .hl-fcol--contacts a, .hl-fcol--contacts span { font-size: 12px; }
  .hl-fcol--contacts .hl-icon { width: 13px; height: 13px; }
  .hl-fcol--catalog, .hl-fcol--orders, .hl-fcol--support { grid-column: 1 / -1; margin-top: 16px; }
  .hl-fcol--catalog { margin-top: 32px; }
  .hl-fcol .hl-fcol__title {
    display: flex; align-items: center; justify-content: space-between;
    margin: 0; padding: 0 0 3px; border-bottom: 1px solid #9a9a9a;
    font-size: 14px; cursor: pointer;
  }
  .hl-fcol--contacts .hl-fcol__title { display: block; margin: 0 0 12px; padding: 0 0 12px; border-bottom: 0; cursor: default; }
  .hl-fcol--contacts li + li { margin-top: 12px; }
  .hl-fcol .hl-fcol__title::after { display: none; }
  .hl-fcol--contacts .hl-fcol__title::after { display: block; }
  .hl-fcol .hl-fcol__title .hl-icon { display: inline-block; width: 19px; height: 19px; transition: transform .3s var(--hl-ease); }
  .hl-fcol.is-open .hl-fcol__title .hl-icon { transform: rotate(45deg); }
  .hl-fcol__body { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .35s var(--hl-ease); }
  .hl-fcol__body > ul { overflow: hidden; }
  .hl-fcol.is-open .hl-fcol__body { grid-template-rows: 1fr; }
  .hl-fcol--contacts .hl-fcol__body { display: block; }
  .hl-fcol:not(.hl-fcol--contacts) li:first-child { padding-top: 16px; }
  .hl-fcol:not(.hl-fcol--contacts) li + li { margin-top: 16px; }
  .hl-fcol:not(.hl-fcol--contacts) a { font-size: 14px; }
  .hl-footer__up { top: 18px; bottom: auto; right: 0; }
  .hl-footer__bottom { border-top: 0; padding: 24px 0 40px; }
  .hl-footer__row { display: block; }
  .hl-legal { row-gap: 8px; }
  .hl-legal li, .hl-legal a { line-height: 13px; }
  .hl-legal li::before { content: '·'; margin-right: 8px; }
  .hl-footer__row + .hl-footer__row { display: flex; flex-direction: column; margin-top: 0; }
  .hl-pay { order: -1; margin: 24px 0 0; font-size: 12px; }
  .hl-footer__ids { flex-direction: column-reverse; gap: 12px; margin-top: 24px; }
  .hl-footer__ip { line-height: 1.35; }

  .hl-card__box { height: 400px; padding: 14px 18px 20px; }
  .hl-card__media { height: 187px; }
  .hl-card__name { font-size: 15px; }
  .hl-card__price { font-size: 15px; }
  .hl-card__buy { height: 36px; }
  .hl-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; scroll-behavior: auto !important; }
}

/* тело карточки */
.hl-card__body { display: flex; flex-direction: column; flex: 1; min-height: 0; }

/* сброс стилей Mango для корзины в шапке */
.hl-tools #cart .cart-total,
.hl-tools #cart .cart-total:hover,
.hl-tools #cart .cart-total:focus {
  width: auto;
  height: auto;
  padding: 0;
  margin: 0;
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  color: var(--hl-navy);
  line-height: 1;
}

/* сброс стилей Mango для тега footer */
footer.hl-footer { margin: 0; padding: 0; border: 0; box-shadow: none; }

/* ==========================================================================
   ВНУТРЕННИЕ СТРАНИЦЫ — палитра макета поверх темы Mango
   ========================================================================== */
body.hl-body { background: var(--hl-light); color: var(--hl-ink); }
:where(#content, .breadcrumb) a, :where(#content) .btn-link { color: var(--hl-navy); }
:where(#content) a:hover, :where(#content) a:focus, :where(#content) .btn-link:hover { color: var(--hl-blue); }
:where(#content) :where(h1, h2, h3, .title-h1) { font-family: var(--hl-font-head); color: var(--hl-navy); }

.hl-page-title, body.hl-body #content > h1 {
  margin: 0 0 28px;
  font: 500 40px/1.05 var(--hl-font-head);
  color: var(--hl-navy);
  text-transform: none;
}

/* хлебные крошки */
body.hl-body .breadcrumb { margin: 24px auto 28px; padding: 0 15px; background: none; font-size: 13px; }
body.hl-body .breadcrumb > li { color: var(--hl-grey); }
body.hl-body .breadcrumb > li a { color: var(--hl-ink); }
body.hl-body .breadcrumb > li + li::before { color: var(--hl-grey); content: '/\00a0'; }

/* кнопки Bootstrap/Mango */
body.hl-body .btn-primary {
  border: 1px solid var(--hl-navy);
  border-radius: 48px;
  background: var(--hl-navy);
  color: var(--hl-light);
  font-family: var(--hl-font);
  font-weight: 500;
  box-shadow: none;
  text-shadow: none;
}
body.hl-body .btn-primary:hover, body.hl-body .btn-primary:focus, body.hl-body .btn-primary:active,
body.hl-body .btn-primary.disabled, body.hl-body .btn-primary[disabled] {
  border-color: var(--hl-navy);
  background: transparent;
  color: var(--hl-navy);
}
body.hl-body .btn-default {
  border: 1px solid var(--hl-navy);
  border-radius: 48px;
  background: var(--hl-light);
  color: var(--hl-navy);
  box-shadow: none;
  text-shadow: none;
}
body.hl-body .btn-default:hover, body.hl-body .btn-default:focus, body.hl-body .btn-default:active {
  border-color: var(--hl-navy);
  background: var(--hl-navy);
  color: var(--hl-light);
}

/* поля форм */
body.hl-body .form-control {
  border: 1px solid rgba(0, 31, 75, .35);
  border-radius: 12px;
  background: #fff;
  color: var(--hl-ink);
  box-shadow: none;
  font-family: var(--hl-font);
}
body.hl-body .form-control:focus { border-color: var(--hl-navy); box-shadow: 0 0 0 3px rgba(0, 90, 239, .12); }

/* фильтр категории */
body.hl-body .category-filter {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0 0 32px;
  padding: 0;
  background: none;
  border: 0;
}
body.hl-body .category-filter .category-view { display: none; }
body.hl-body .category-filter .control-label { color: var(--hl-ink); font-weight: 400; }
body.hl-body .category-filter .form-control { height: 42px; border-radius: 48px; padding: 0 18px; border-color: var(--hl-navy); color: var(--hl-navy); }

/* подкатегории */
body.hl-body .categories .btn-default, body.hl-body .categories-item a {
  padding: 9px 20px;
  border-radius: 48px;
  font-size: 14px;
}

/* пагинация */
body.hl-body .pagination > li > a, body.hl-body .pagination > li > span {
  margin: 0 4px;
  border: 1px solid var(--hl-navy);
  border-radius: 50% !important;
  min-width: 40px;
  height: 40px;
  line-height: 38px;
  padding: 0 6px;
  background: transparent;
  color: var(--hl-navy);
  text-align: center;
}
body.hl-body .pagination > .active > a, body.hl-body .pagination > .active > span,
body.hl-body .pagination > li > a:hover, body.hl-body .pagination > li > span:hover {
  background: var(--hl-navy);
  border-color: var(--hl-navy);
  color: var(--hl-light);
}
body.hl-body .pagination-result { color: var(--hl-grey); font-size: 13px; }

/* левая колонка (категории, преимущества Mango) */
body.hl-body #column-left .list-group a, body.hl-body #column-right .list-group a { color: var(--hl-ink); }
body.hl-body #column-left .list-group a.active, body.hl-body #column-left .list-group a:hover,
body.hl-body .list-group-item.active, body.hl-body .list-group-item.active:hover { color: var(--hl-blue); background: none; }
body.hl-body #column-left .title, body.hl-body #column-left h3 { font: 600 16px/1 var(--hl-font-head); text-transform: uppercase; color: var(--hl-navy); }
body.hl-body .mango-advantages-item, body.hl-body .advantages-item, body.hl-body #column-left .advantage {
  border: 1px solid var(--hl-navy);
  border-radius: 24px;
  background: transparent;
}

/* вкладки товара Mango */
body.hl-body .product .nav-tabs > li.active > a, body.hl-body .product .nav-tabs > li > a:hover { border-color: var(--hl-navy); color: var(--hl-navy); }
body.hl-body .product .nav-tabs > li.active > a::after { border-top-color: var(--hl-navy); }

/* уведомления */
body.hl-body .alert { border-radius: 16px; }
body.hl-body .alert-success { border-color: var(--hl-navy); background: var(--hl-navy); color: var(--hl-light); }
body.hl-body .alert-success a { color: #fff; text-decoration: underline; }
body.hl-body .alert .close { color: inherit; opacity: .7; text-shadow: none; }

/* сетка карточек с левой колонкой — три в ряд */
#column-left ~ #content .hl-grid, #column-right ~ #content .hl-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px 20px; }
#column-left ~ #content .hl-grid .hl-card__box, #column-right ~ #content .hl-grid .hl-card__box { height: 420px; padding: 14px 14px 20px; }
#column-left ~ #content .hl-grid .hl-card__media { height: 170px; }
#column-left ~ #content .hl-grid .hl-card__name { font-size: 16px; }
#column-left ~ #content .hl-grid .hl-card__dash i { width: 30px; }
@media (max-width: 1199px) {
  #column-left ~ #content .hl-grid, #column-right ~ #content .hl-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hl-page-title, body.hl-body #content > h1 { font-size: 32px; }
}
@media (max-width: 767px) {
  #column-left ~ #content .hl-grid, #column-right ~ #content .hl-grid { grid-template-columns: 1fr; }
  .hl-page-title, body.hl-body #content > h1 { font-size: 24px; margin-bottom: 20px; }
}
body.hl-body .advantages-item { background: transparent !important; border: 1px solid var(--hl-navy); border-radius: 24px; }
body.hl-body .advantages-item .icon { color: var(--hl-navy) !important; }
body.hl-body .advantages-item .line-1 { font-family: var(--hl-font-head); color: var(--hl-navy); }
body.hl-body .advantages-item .line-2 { color: var(--hl-ink); }

/* ==========================================================================
   СТРАНИЦА ТОВАРА
   ========================================================================== */
.hl-product-title {
  margin: 0 0 20px !important;
  font: 500 36px/1.08 var(--hl-font-head) !important;
  color: var(--hl-navy) !important;
}
body.hl-body .product .image .main-image,
body.hl-body .product .image > a,
body.hl-body .product .image .thumbnail-main {
  border: 1px solid var(--hl-navy);
  border-radius: 24px;
  overflow: hidden;
  background: #fff;
}
body.hl-body .product .thumbnails .image-additional a {
  display: block;
  border: 1px solid rgba(0, 31, 75, .25);
  border-radius: 14px;
  overflow: hidden;
  background: #fff;
  transition: border-color .2s;
}
body.hl-body .product .thumbnails .image-additional a:hover,
body.hl-body .product .thumbnails .image-additional a.active { border-color: var(--hl-navy); }
body.hl-body .product .swiper-button-prev, body.hl-body .product .swiper-button-next { color: var(--hl-navy); }

/* стикеры */
body.hl-body .product .stickers .product-label.hit,
body.hl-body .product .stickers .product-label.new {
  border: 1px solid var(--hl-navy);
  border-radius: 48px;
  background: var(--hl-light);
  color: var(--hl-navy);
  font: 400 14px/1 var(--hl-font);
  padding: 7px 14px;
}
body.hl-body .product .stickers .product-label.sale { border-radius: 48px; background: var(--hl-blue); border-color: var(--hl-blue); }

/* блок покупки */
body.hl-body .product-data .product-info_list { border-color: rgba(0, 31, 75, .2); color: var(--hl-ink); font-size: 14px; }
body.hl-body .product-data .top-group { border-color: rgba(0, 31, 75, .2); }
body.hl-body .product-data .top-group .btn-link { color: var(--hl-navy); font-size: 20px; }
body.hl-body .product-data .stock { font-size: 14px; }
body.hl-body .product-data .stock.instock { color: #1f9d4c; }
body.hl-body .product-data .price .price-new,
body.hl-body .product-data .price .price-block.price-new .price-val {
  font: 500 34px/1.1 var(--hl-font-head);
  color: var(--hl-navy);
}
body.hl-body .product-data .price .price-old .price-val { color: var(--hl-grey); text-decoration: line-through; font-family: var(--hl-font-head); }
body.hl-body .product-data .price .price-title { color: var(--hl-grey); font-size: 13px; }
body.hl-body .product-data .price .price-save .price-val { color: var(--hl-blue); }
body.hl-body .product-cart-action-group .quantity { border-color: var(--hl-navy) !important; border-radius: 48px !important; overflow: hidden !important; }

/* вкладки и описание */
body.hl-body .product .tab-content, body.hl-body .product .tab-content-anchor { color: var(--hl-ink); font-size: 16px; line-height: 1.5; }
body.hl-body .product .tab-content h2, body.hl-body .product .tab-content h3, body.hl-body .product .tab-content h4,
body.hl-body .product .tab-content-anchor h2, body.hl-body .product .tab-content-anchor h3, body.hl-body .product .tab-content-anchor h4 {
  font-family: var(--hl-font-head) !important;
  font-weight: 500 !important;
  color: var(--hl-navy) !important;
}
body.hl-body .product .tab-content h2 *, body.hl-body .product .tab-content h3 *,
body.hl-body .product .tab-content-anchor h2 *, body.hl-body .product .tab-content-anchor h3 * { color: inherit !important; }
body.hl-body .product .tab-content img, body.hl-body .product .tab-content-anchor img { border-radius: 18px; max-width: 100%; height: auto; }
body.hl-body .product table.table { background: transparent; }
body.hl-body .product table.table td, body.hl-body .product table.table th { border-color: rgba(0, 31, 75, .15); }
body.hl-body .product table.table thead td, body.hl-body .product table.table thead th { color: var(--hl-navy); font-family: var(--hl-font-head); font-weight: 600; text-transform: uppercase; }

/* теги */
body.hl-body .product .tags a {
  display: inline-block;
  margin: 0 6px 8px 0;
  padding: 6px 14px;
  border: 1px solid rgba(0, 31, 75, .35);
  border-radius: 48px;
  background: transparent;
  color: var(--hl-navy);
  font-size: 13px;
}
body.hl-body .product .tags a:hover { background: var(--hl-navy); color: var(--hl-light); border-color: var(--hl-navy); }

/* похожие товары */
.product-related .title.related { margin: 56px 0 32px; font: 500 40px/1 var(--hl-font-head); text-transform: uppercase; color: var(--hl-navy); }
.hl-related__slide .hl-card { width: auto; }
.product-related .swiper-slide { height: auto; padding-bottom: 4px; }

@media (max-width: 1199px) {
  .hl-product-title { font-size: 30px !important; }
  .product-related .title.related { font-size: 32px; }
}
@media (max-width: 767px) {
  .hl-product-title { font-size: 24px !important; }
  body.hl-body .product-data .price .price-new,
  body.hl-body .product-data .price .price-block.price-new .price-val { font-size: 28px; }
  .product-related .title.related { font-size: 24px; margin: 40px 0 24px; }
}

body.hl-body .product .image .easyzoom { border: 0; border-radius: 24px; overflow: hidden; }
body.hl-body .product .stickers { display: flex; flex-direction: column; align-items: flex-start; gap: 6px; }
body.hl-body .product .stickers .product-label { width: auto !important; margin: 0 !important; }
/* стандартный голубой из редактора описаний → фирменный синий */
body.hl-body .product [style*="#2980b9"], body.hl-body .product [style*="#2980B9"],
body.hl-body .product [style*="rgb(41, 128, 185)"], body.hl-body .product [style*="#3498db"] { color: var(--hl-navy) !important; }
body.hl-body .product [style*="#2980b9"] strong, body.hl-body .product [style*="#2980b9"] b { color: inherit; }

/* пустая карусель модуля без товаров */
.carousel-product:not(:has(.swiper-slide, .product-layout, .hl-card)) { display: none; }

/* состояния иконок карточки (UI KIT: при наведении иконка закрашивается) */
.hl-card__act .hl-i-on, .hl-card__cart .hl-i-on { display: none; }
.hl-card__act:hover .hl-i-off, .hl-card__act:focus-visible .hl-i-off,
.hl-card__cart:hover .hl-i-off, .hl-card__cart:focus-visible .hl-i-off { display: none; }
.hl-card__act:hover .hl-i-on, .hl-card__act:focus-visible .hl-i-on,
.hl-card__cart:hover .hl-i-on, .hl-card__cart:focus-visible .hl-i-on { display: inline-block; }

/* кнопки (UI KIT): наведение меняет пару «кнопка + круг» */
.hl-btn, .hl-round { transition: background .25s var(--hl-ease), color .25s var(--hl-ease), border-color .25s var(--hl-ease); }
.hl-round:hover, .hl-round:focus { transform: none; }
.hl-cta:hover .hl-btn { background: var(--hl-navy); border-color: var(--hl-navy); color: var(--hl-light); }
.hl-cta:hover .hl-round { background: transparent; border-color: var(--hl-navy); color: var(--hl-navy); }
.hl-cta:hover .hl-btn--plain { background: transparent; border-color: var(--hl-light); color: var(--hl-light); }
.hl-cta:hover .hl-round--light, .hl-cta:hover .hl-round--ghost { background: transparent; border-color: var(--hl-light); color: var(--hl-light); }

/* Mango задаёт глобально «a:hover { color: #1c1c1c !important }» — возвращаем цвета макета */
.hl-topbar a:hover, .hl-dd a:hover, .hl-panel a:hover, .hl-panel__sub a:hover,
.hl-panel__contacts a:hover, .hl-panel__tool:hover, .hl-panel__nav-btn:hover { color: var(--hl-light) !important; }
.hl-logo:hover { color: inherit !important; }
.hl-tool:hover, .hl-tools #cart .cart-total:hover { color: var(--hl-navy) !important; }
.hl-footer .hl-social a:hover, .hl-footer .hl-logo:hover { color: var(--hl-navy) !important; }
.hl-fcol a:hover, .hl-legal a:hover { color: var(--hl-navy) !important; }
.hl-btn:hover, .hl-cta:hover .hl-btn { color: var(--hl-light) !important; }
.hl-cta:hover .hl-round { color: var(--hl-navy) !important; }
.hl-cta:hover .hl-round--light, .hl-cta:hover .hl-round--ghost,
.hl-cta:hover .hl-btn--plain { color: var(--hl-light) !important; }
.hl-more:hover { color: var(--hl-navy) !important; }
.hl-more--light:hover { color: var(--hl-light) !important; }
.hl-cat:hover { color: var(--hl-ink) !important; }
.hl-card__media:hover { color: inherit !important; }
.hl-card__name:hover { color: var(--hl-navy) !important; }
.hl-news__item:hover { color: var(--hl-ink) !important; }
.hl-kb__item:hover, .hl-kb__item:hover * { color: inherit; }
.hl-kb__item:hover { color: var(--hl-navy) !important; }
.hl-kb__item:hover .hl-kb__date { color: var(--hl-grey) !important; }
.hl-kb__item:hover .hl-kb__go { color: var(--hl-light) !important; }
.hl-sub__agree a:hover { color: var(--hl-light) !important; }
:where(#content) a:not([class*="hl-"]):hover { color: var(--hl-blue) !important; }

/* ==========================================================================
   СТРАНИЦА ТОВАРА — раскладка в стиле макета
   ========================================================================== */
body.hl-body .product-data .product-info { padding-left: 16px; }

/* сравнение / избранное под заголовком */
body.hl-body .product-data .top-group { display: flex; justify-content: flex-end; gap: 14px; margin: 0 0 18px; padding: 0; border: 0; }
body.hl-body .product-data .top-group .btn-link {
  display: inline-flex; align-items: center; justify-content: center;
  width: 42px; height: 42px; border: 1px solid var(--hl-navy); border-radius: 50%;
  font-size: 17px; color: var(--hl-navy); background: transparent; transition: background .2s, color .2s;
}
body.hl-body .product-data .top-group .btn-link:hover { background: var(--hl-navy); color: var(--hl-light) !important; }

/* производитель / код / баллы — пилюли */
body.hl-body .product-data .product-info_list {
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  margin: 0 0 20px; padding: 0 0 20px; border: 0; border-bottom: 1px solid rgba(0, 31, 75, .2);
}
body.hl-body .product-data .product-info_list ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; }
body.hl-body .product-data .product-info_list li {
  padding: 6px 14px; border: 1px solid rgba(0, 31, 75, .35); border-radius: 48px;
  font-size: 13px; line-height: 1.2; color: var(--hl-ink); background: transparent;
}
body.hl-body .product-data .product-info_list li a { color: var(--hl-navy); font-weight: 500; }
body.hl-body .product-data .manufacturer-image img { max-height: 28px; width: auto; opacity: .8; }

/* наличие и цена */
body.hl-body .product-data .stock { display: inline-flex; align-items: center; gap: 6px; margin: 0 0 8px; padding: 0; font-size: 14px; font-weight: 500; }
body.hl-body .product-data .stock::before { content: ''; width: 8px; height: 8px; border-radius: 50%; background: currentColor; }
body.hl-body .product-data .stock { color: #c0392b; }
body.hl-body .product-data .stock.instock { color: #1f9d4c; }
body.hl-body .product-data .stock i, body.hl-body .product-data .stock .fa { display: none; }
body.hl-body .product-data .price { display: flex; flex-wrap: wrap; align-items: flex-end; gap: 4px 20px; margin: 0 0 20px; }
body.hl-body .product-data .price .price-block { margin: 0; padding: 0; border: 0; background: none; }
body.hl-body .product-data .price .price-title { display: block; margin-bottom: 4px; }
body.hl-body .product-data .price yandex-pay-badge, body.hl-body .product-data .price > div[style] { flex-basis: 100%; }

/* рассрочка */
.hl-inst {
  display: flex; align-items: center; gap: 16px;
  max-width: 420px; margin: 0 0 24px; padding: 14px 18px;
  border: 1px solid var(--hl-blue); border-radius: 18px; background: var(--hl-navy); color: var(--hl-light);
}
.hl-inst__badge {
  display: inline-flex; align-items: center; justify-content: center; flex: none;
  width: 52px; height: 52px; border-radius: 50%; background: var(--hl-blue);
  font: 600 18px/1 var(--hl-font-head); color: #fff;
}
.hl-inst__text { display: flex; flex-direction: column; gap: 4px; }
.hl-inst__title { font: 500 16px/1.1 var(--hl-font-head); }
.hl-inst__price { font-size: 14px; font-weight: 300; }
.hl-inst__price b { font-weight: 600; font-size: 16px; }

/* количество + купить */
body.hl-body .product-cart-action-group { display: flex !important; align-items: center !important; gap: 12px !important; margin: 0 0 24px !important; }
body.hl-body .product-cart-action-group .quantity { height: 50px !important; background: transparent !important; }
body.hl-body .product-cart-action-group .quantity .qty-minus,
body.hl-body .product-cart-action-group .quantity .qty-plus { width: 44px !important; line-height: 48px !important; background: transparent !important; color: var(--hl-navy) !important; font-weight: 400 !important; }
body.hl-body .product-cart-action-group .quantity .qty-minus:hover,
body.hl-body .product-cart-action-group .quantity .qty-plus:hover { background: var(--hl-navy) !important; color: var(--hl-light) !important; }
body.hl-body .product-cart-action-group .quantity .input-quantity { height: 48px !important; background: transparent !important; color: var(--hl-navy) !important; border-color: rgba(0, 31, 75, .2) !important; }
body.hl-body .product-cart-action-group .order-group #button-cart { height: 50px !important; border-radius: 50px !important; background: var(--hl-navy) !important; border-color: var(--hl-navy) !important; color: var(--hl-light) !important; font-size: 16px !important; transition: background .2s, color .2s !important; }
body.hl-body .product-cart-action-group .order-group #button-cart:hover { background: transparent !important; color: var(--hl-navy) !important; }
body.hl-body .product-cart-action-group .btn-quick_order { height: 50px !important; border-radius: 50px !important; }

/* преимущества под кнопкой */
.hl-pfeat { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0; }
.hl-pfeat li {
  display: flex; flex-direction: column; gap: 6px; min-height: 96px; padding: 14px 14px 16px;
  border: 1px solid var(--hl-blue); border-radius: 18px; background: var(--hl-navy); color: var(--hl-light);
}
.hl-pfeat b { font: 500 20px/1.05 var(--hl-font-head); letter-spacing: -.02em; }
.hl-pfeat span { margin-top: auto; font-size: 13px; font-weight: 300; line-height: 1.15; }

/* описание */
body.hl-body .product .tab-content-anchor { max-width: 920px; }
body.hl-body .product #tab-description { font-size: 16px; line-height: 1.6; }
body.hl-body .product #tab-description p { margin: 0 0 14px; }
body.hl-body .product #tab-description h2, body.hl-body .product #tab-description h3 { margin: 36px 0 14px !important; font-size: 26px !important; line-height: 1.15 !important; }
body.hl-body .product #tab-description h4 { margin: 24px 0 10px !important; font-size: 19px !important; }
body.hl-body .product #tab-description img { display: block; margin: 20px 0; }

/* характеристики */
body.hl-body .product .hl-specs { width: 100%; max-width: 920px; border-collapse: collapse; margin: 0; }
body.hl-body .product .hl-specs thead td {
  padding: 28px 0 12px !important; border: 0 !important; border-bottom: 1px solid var(--hl-navy) !important;
  font: 600 16px/1.1 var(--hl-font-head) !important; text-transform: uppercase; color: var(--hl-navy);
}
body.hl-body .product .hl-specs thead:first-child td { padding-top: 0 !important; }
body.hl-body .product .hl-specs tbody td { padding: 12px 0 !important; border: 0 !important; border-bottom: 1px solid rgba(0, 31, 75, .15) !important; font-size: 15px; vertical-align: top; }
body.hl-body .product .hl-specs tbody td:first-child { width: 45%; padding-right: 24px !important; color: var(--hl-grey); }
body.hl-body .product .hl-specs tbody td:last-child { color: var(--hl-ink); font-weight: 500; }

@media (max-width: 1199px) {
  body.hl-body .product-data .product-info { padding-left: 0; }
  .hl-pfeat b { font-size: 17px; }
}
@media (max-width: 767px) {
  body.hl-body .product-data .product-info_list { flex-direction: column; align-items: flex-start; }
  .hl-inst { max-width: none; }
  .hl-pfeat { grid-template-columns: 1fr; }
  .hl-pfeat li { flex-direction: row; align-items: center; min-height: 0; gap: 12px; }
  .hl-pfeat span { margin-top: 0; }
  body.hl-body .product #tab-description { font-size: 15px; }
  body.hl-body .product #tab-description h2, body.hl-body .product #tab-description h3 { font-size: 21px !important; }
  body.hl-body .product .hl-specs tbody td:first-child { width: 50%; }
}
body.hl-body .product-data .product-info_list ul { flex: 1; }
body.hl-body .product-data .product-info_list li { float: none; display: inline-block; }
body.hl-body .product-data .manufacturer-image { display: none; }
body.hl-body .product .stickers .product-label .inner { background: none !important; color: inherit !important; padding: 0 !important; }
/* стикер рассрочки (модуль) в цветах сайта */
body.hl-body .product .stickers .product-label[style*="21a038"] {
  background: var(--hl-blue) !important; border: 0 !important; border-radius: 48px !important;
  box-shadow: none !important; font: 500 12px/1 var(--hl-font) !important; text-transform: none !important; letter-spacing: 0 !important; padding: 8px 14px !important;
}
body.hl-body .product .stickers .product-label[style*="21a038"] .inner { color: #fff !important; }
/* вкладки IMTabs (характеристики, инструкции) — текст из Word с инлайн-шрифтами */
body.hl-body .product .tab-pane { max-width: 920px; color: var(--hl-ink); font-size: 16px; line-height: 1.6; }
body.hl-body .product .tab-pane *, body.hl-body .product #tab-description * { font-family: var(--hl-font) !important; }
body.hl-body .product .tab-pane p { margin: 0 0 8px !important; }
body.hl-body .product .tab-pane p:first-child strong, body.hl-body .product .tab-pane p:first-child [style*="font-size:20px"] {
  font-family: var(--hl-font-head) !important; font-weight: 500; font-size: 24px !important; color: var(--hl-navy) !important;
}
body.hl-body .product .tab-pane table { width: 100%; border-collapse: collapse; }
body.hl-body .product .tab-pane td, body.hl-body .product .tab-pane th { padding: 10px 12px 10px 0; border: 0; border-bottom: 1px solid rgba(0, 31, 75, .15); }
body.hl-body .product .tab-pane a { color: var(--hl-navy); text-decoration: underline; }
@media (max-width: 767px) {
  body.hl-body .product-data .product-info_list ul { width: 100%; }
  body.hl-body .product-data .top-group { margin-bottom: 12px; }
}

/* Текстовые страницы (Скачать ПО и др.): контент из редактора с инлайн-отступами и длинными словами */
#content { overflow-wrap: break-word; word-wrap: break-word; }
#content img, #content iframe, #content video, #content table { max-width: 100%; }
#content iframe, #content video { height: auto; aspect-ratio: 16 / 9; }
@media (max-width: 767px) {
  #content [style*="margin-left"] { margin-left: 0 !important; }
  #content [style*="padding-left"] { padding-left: 0 !important; }
  #content [style*="width:"], #content [style*="width :"] { max-width: 100% !important; }
  #content p, #content span, #content a, #content b, #content strong { overflow-wrap: anywhere; }
  #content table { display: block; overflow-x: auto; }
}

/* ==========================================================================
   Правки клиента 20.10: фото без белого фона, стикеры, цена и «Купить»
   ========================================================================== */
/* белый фон фото растворяется в фоне сайта (multiply: белый → #ededed, тёмный товар не меняется) */
.hl-card__media { background: var(--hl-light) !important; }
.hl-card__media img, .hl-card__media--fit img { background: transparent !important; mix-blend-mode: multiply; }
body.hl-body .product .image .main-image,
body.hl-body .product .image .easyzoom,
body.hl-body .product .thumbnails .image-additional a { background: var(--hl-light) !important; }
body.hl-body .product .image img,
body.hl-body .product .thumbnails img { mix-blend-mode: multiply; }
.hl-related__slide .hl-card__media img { mix-blend-mode: multiply; }

/* стикеры на фото товара: одна аккуратная колонка пилюль */
body.hl-body .product .stickers { top: 14px !important; left: 14px !important; gap: 6px !important; z-index: 5; }
body.hl-body .product .stickers .product-label {
  display: inline-flex !important; align-items: center; width: auto !important; height: auto !important;
  margin: 0 !important; padding: 7px 14px !important; border-radius: 48px !important;
  font: 500 13px/1 var(--hl-font) !important; text-transform: none !important; letter-spacing: 0 !important;
  box-shadow: none !important; white-space: nowrap;
}
body.hl-body .product .stickers .product-label::before, body.hl-body .product .stickers .product-label::after { display: none !important; }
body.hl-body .product .stickers .product-label.sale { background: var(--hl-blue) !important; border: 1px solid var(--hl-blue) !important; color: #fff !important; }
body.hl-body .product .stickers .product-label.sale .inner { color: #fff !important; }

/* цена в одну строку, «Купить» сразу под ценой */
body.hl-body .product-data .product-info { display: flex; flex-direction: column; }
body.hl-body .product-data .product-info > .hl-inst { order: 1; margin-top: 4px; }
body.hl-body .product-data .product-info > .hl-pfeat { order: 2; margin-top: 4px; }
body.hl-body .product-data .price { display: flex !important; flex-wrap: wrap; align-items: baseline; gap: 4px 16px !important; margin: 0 0 18px !important; text-align: left !important; }
body.hl-body .product-data .price .price-block { display: inline-flex !important; align-items: baseline; gap: 8px; width: auto !important; float: none !important; text-align: left !important; }
body.hl-body .product-data .price .price-new .price-title,
body.hl-body .product-data .price .price-old .price-title { display: none !important; }
body.hl-body .product-data .price .price-new,
body.hl-body .product-data .price .price-val { white-space: nowrap; }
body.hl-body .product-data .price .price-old .price-val { font-size: 18px !important; }
body.hl-body .product-data .price .price-save { flex-basis: 100%; }
body.hl-body .product-data .price .price-save .price-title { display: inline !important; margin: 0 !important; font-size: 14px; color: var(--hl-ink) !important; }
body.hl-body .product-data .price .price-save .price-val { font-size: 14px !important; font-weight: 600; color: var(--hl-blue) !important; }
body.hl-body .product-cart-action-group { margin-bottom: 20px !important; }
body.hl-body .product-cart-action-group .order-group #button-cart { font-size: 17px !important; font-weight: 500 !important; box-shadow: 0 8px 22px rgba(0, 31, 75, .22) !important; }
@media (max-width: 767px) {
  body.hl-body .product-data .price .price-new,
  body.hl-body .product-data .price .price-block.price-new .price-val { font-size: 30px !important; }
  body.hl-body .product-cart-action-group .order-group { flex: 1 1 auto !important; }
}
body.hl-body .product .image a.thumbnail, body.hl-body .product .image .thumbnail { background: var(--hl-light) !important; border: 0 !important; }
body.hl-body .hl-inst { margin: 0 0 16px; }

/* ==========================================================================
   Доработки клиента 20.10
   ========================================================================== */
/* 9, 11. «Вы смотрели» / «Похожие товары»: без белого фона, заголовок в стиле сайта */
.carousel-product, .carousel-product .swiper-container, .carousel-product .swiper-slide { background: transparent !important; }
.carousel-product .title.title-h1 { margin: 56px 0 32px; text-align: left; font: 500 40px/1 var(--hl-font-head); text-transform: uppercase; color: var(--hl-navy); }
.carousel-product .swiper-button-prev, .carousel-product .swiper-button-next { background: transparent !important; box-shadow: none !important; border: 0 !important; color: var(--hl-navy) !important; }
@media (max-width: 767px) { .carousel-product .title.title-h1 { font-size: 24px; margin: 40px 0 20px; } }

/* 10. «Показать:» без переноса */
body.hl-body .category-filter .control-label { white-space: nowrap; }

/* 15. стрелки слайдеров (миниатюры товара и др.): без белых плашек, цвета сайта, кликабельны */
.swiper-button-prev, .swiper-button-next,
body.hl-body .product .thumbnails .swiper-button-prev, body.hl-body .product .thumbnails .swiper-button-next {
  background-color: transparent !important; box-shadow: none !important; border: 0 !important; color: var(--hl-navy) !important; z-index: 10 !important; pointer-events: auto !important; cursor: pointer;
}
.swiper-button-disabled { opacity: .3 !important; }

/* --- 13. «Инструкция» (картинка-кнопка в описаниях товаров) → фирменная кнопка --- */
body.hl-body .product a[href$=".pdf"]:has(> img), body.hl-body .product a[href*=".pdf"]:has(> img) {
  display: inline-flex; align-items: center; justify-content: center; gap: 10px;
  height: 50px; padding: 0 32px; border: 1px solid var(--hl-navy); border-radius: 50px;
  background: var(--hl-navy); color: var(--hl-light) !important; text-decoration: none !important;
  font: 500 16px/1 var(--hl-font) !important; transition: background .2s, color .2s;
}
body.hl-body .product a[href*=".pdf"]:has(> img)::before { content: 'Инструкция (PDF)'; }
body.hl-body .product a[href*=".pdf"]:has(> img):hover { background: transparent; color: var(--hl-navy) !important; }
body.hl-body .product a[href*=".pdf"] > img { display: none !important; }

/* --- 16. Тех. характеристики в описаниях: все таблицы по левому краю --- */
body.hl-body .product .tab-content table, body.hl-body .product .tab-pane table, body.hl-body .product #tab-description table {
  width: 100% !important; max-width: 920px; border-collapse: collapse !important; border: 0 !important; margin: 0 0 20px;
}
body.hl-body .product .tab-content td, body.hl-body .product .tab-content th,
body.hl-body .product .tab-content td *, body.hl-body .product .tab-content th * { text-align: left !important; }
body.hl-body .product .tab-content td, body.hl-body .product .tab-content th {
  padding: 10px 16px 10px 0 !important; border: 0 !important; border-bottom: 1px solid rgba(0, 31, 75, .15) !important;
  vertical-align: top !important; width: auto !important; font-size: 15px !important; line-height: 1.4 !important;
}
body.hl-body .product .tab-content td:first-child { width: 45% !important; color: var(--hl-grey); }
body.hl-body .product .tab-content td p, body.hl-body .product .tab-content th p { margin: 0 !important; }
/* цветные заголовки из Word в описаниях → фирменный синий */
body.hl-body .product [style*="rgb(79, 129, 189)"], body.hl-body .product [style*="#4f81bd"], body.hl-body .product [style*="#4F81BD"] { color: var(--hl-navy) !important; }

/* --- 17, 18, 20, 26. Текстовые страницы (доставка, оплата, сервис, оферта, политики): единый шрифт и размеры --- */
.hl-info .hl-info__text, .hl-info .hl-info__text *:not(i):not([class*="fa-"]):not(.fa) { font-family: var(--hl-font) !important; }
.hl-info .hl-info__text { color: var(--hl-ink); font-size: 16px; line-height: 1.6; max-width: 920px; }
.hl-info .hl-info__text p, .hl-info .hl-info__text li, .hl-info .hl-info__text span, .hl-info .hl-info__text div, .hl-info .hl-info__text td, .hl-info .hl-info__text a { font-size: 16px !important; line-height: 1.6 !important; }
.hl-info .hl-info__text h2, .hl-info .hl-info__text h2 *, .hl-info .hl-info__text h3, .hl-info .hl-info__text h3 *,
.hl-info .hl-info__text div[style*="font-size: 25px"], .hl-info .hl-info__text div[style*="font-size:25px"] {
  font-family: var(--hl-font-head) !important; font-size: 22px !important; font-weight: 500 !important; line-height: 1.2 !important; color: var(--hl-navy) !important;
}
.hl-info .hl-info__text h1, .hl-info .hl-info__text h1 * { font-family: var(--hl-font-head) !important; font-size: 26px !important; font-weight: 500 !important; color: var(--hl-navy) !important; }
.hl-info .hl-info__text b, .hl-info .hl-info__text strong { font-weight: 600; }
/* красный и прочие «чужие» цвета текста → фирменные */
.hl-info .hl-info__text [style*="color"] { color: inherit !important; }
.hl-info .hl-info__text [style*="rgb(197, 20, 20)"], .hl-info .hl-info__text [style*="rgb(157, 10, 15)"],
.hl-info .hl-info__text [style*="rgb(238, 29, 36)"], .hl-info .hl-info__text [style*="#ff0000"], .hl-info .hl-info__text [style*="#FF0000"],
.hl-info .hl-info__text [style*="red"] { color: var(--hl-blue) !important; font-weight: 600; }
.hl-info .hl-info__text a { color: var(--hl-navy) !important; text-decoration: underline; }
.hl-info .hl-info__text img { max-width: 100%; height: auto; }
/* «Оплата»: рамки и белые подложки карточек, пустой блок QR → иконка СБП */
.hl-info .area__img1-c2 { border: 1px solid var(--hl-navy) !important; border-radius: 18px; background: var(--hl-light) !important; }
.hl-info .hl-info__text img[src*="karty"], .hl-info .hl-info__text img[src*="payment"] { mix-blend-mode: multiply; }
.hl-info .area__img1-r .area__img1-c1:first-child .area__img1-td,
.hl-info .area__img1-c1:first-child .area__img1-td:not(:has(img)) {
  background: center / 64px 64px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23001f4b' stroke-width='1.6'%3E%3Crect x='3' y='3' width='7' height='7' rx='1'/%3E%3Crect x='14' y='3' width='7' height='7' rx='1'/%3E%3Crect x='3' y='14' width='7' height='7' rx='1'/%3E%3Cpath d='M14 14h3v3h-3zM20 14v.01M14 20h.01M17 20h4v-3M20 17h1'/%3E%3C/svg%3E");
}

/* --- 8. «О нас»: легенда --- */
.hl-legend {
  position: relative; max-width: 920px; margin: 0 0 40px; padding: 40px 44px;
  border: 1px solid var(--hl-blue); border-radius: 24px; background: var(--hl-navy); color: var(--hl-light);
}
.hl-legend__title { margin: 0 0 20px !important; font: 500 32px/1.1 var(--hl-font-head) !important; text-transform: uppercase; color: var(--hl-light) !important; }
.hl-legend p { margin: 0 0 14px; font: 300 17px/1.6 var(--hl-font); }
.hl-legend p:last-child { margin-bottom: 0; }
.hl-legend .hl-legend__accent { font-weight: 500; color: #fff; }

/* --- 19. «Скачать ПО» --- */
.hl-dl { max-width: 920px; }
.hl-dl__lead { margin: 0 0 16px; font: 400 18px/1.5 var(--hl-font); color: var(--hl-ink); }
.hl-dl__guide { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; margin: 0 0 24px; padding: 20px 24px; border: 1px solid var(--hl-navy); border-radius: 18px; font-size: 16px; }
.hl-dl__guide-btn { width: auto; height: 50px; padding: 0 32px; font-size: 16px; }
.hl-dl__note { margin: 0 0 32px; padding: 18px 24px; border-radius: 18px; background: var(--hl-navy); color: var(--hl-light); font-size: 15px; line-height: 1.55; }
.hl-dl__note b { color: #fff; }
.hl-dl__list { border-top: 1px solid rgba(0, 31, 75, .2); }
.hl-dl__item { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 14px 0; border-bottom: 1px solid rgba(0, 31, 75, .2); font-size: 16px; line-height: 1.4; }
.hl-dl__name { color: var(--hl-ink); }
.hl-dl__name b { font-weight: 600; color: var(--hl-navy); }
.hl-dl__info { color: var(--hl-ink); }
.hl-dl__link { flex: none; font-weight: 700; color: var(--hl-navy) !important; text-decoration: underline; text-underline-offset: 3px; }
.hl-dl__link:hover { color: var(--hl-blue) !important; }
@media (max-width: 767px) {
  .hl-dl__item { flex-direction: column; gap: 6px; }
  .hl-legend { padding: 28px 22px; }
  .hl-legend__title { font-size: 24px !important; }
}

/* --- 12, 23. Личный кабинет, партнёрская программа и др.: без белых подложек --- */
body.hl-body #content .well, body.hl-body #content .panel, body.hl-body #content .panel-default,
body.hl-body #content .login-content, body.hl-body #content .account-login > div,
body.hl-body .account-login .well, body.hl-body .affiliate-login .well {
  background: transparent !important; border: 1px solid var(--hl-navy) !important; border-radius: 24px !important; box-shadow: none !important;
}
body.hl-body #content .panel-heading { background: transparent !important; border-color: rgba(0, 31, 75, .2) !important; }
body.hl-body #content .form-control { background: #fff; }

/* --- 21, 22. Блог Mango и новости --- */
body.hl-body .blog .blog-inner, body.hl-body .blog .blog-text, body.hl-body .latest-blogs .blog-list, body.hl-body .blog-list .blog-text {
  background: transparent !important; box-shadow: none !important;
}
body.hl-body .blog .blog-inner { border: 1px solid var(--hl-navy); border-radius: 24px; overflow: hidden; }
body.hl-body .blog .blog-image { background: var(--hl-light) !important; }
body.hl-body .blog .blog-image img { mix-blend-mode: multiply; }
body.hl-body .blog .blog-text .title { font-family: var(--hl-font-head); color: var(--hl-navy); }
.hl-blog { display: flex; flex-direction: column; gap: 24px; margin: 0 0 40px; }
.hl-blog__item { display: grid; grid-template-columns: 360px 1fr; gap: 28px; padding: 20px; border: 1px solid var(--hl-navy); border-radius: 24px; }
.hl-blog__img { display: block; aspect-ratio: 3 / 2; border-radius: 16px; overflow: hidden; background: var(--hl-light); }
.hl-blog__img img { width: 100%; height: 100%; object-fit: contain; display: block; }
.hl-blog__body { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; min-width: 0; }
.hl-blog__title { font: 500 22px/1.2 var(--hl-font-head); color: var(--hl-navy) !important; text-decoration: none !important; }
.hl-blog__title:hover { color: var(--hl-blue) !important; }
.hl-blog__meta { font-size: 13px; color: var(--hl-grey); }
.hl-blog__text { margin: 0; font-size: 15px; line-height: 1.55; color: var(--hl-ink); }
.hl-blog__body .hl-more { margin-top: auto; font-size: 15px; }
.hl-news--module { margin: 48px 0 0; padding: 0; }
.hl-news--module .hl-news__module-title { font-size: 40px; }
.hl-news--module .hl-news__track { margin-top: 32px; }
.hl-news__date { display: block; margin-top: 6px; font-size: 13px; color: var(--hl-grey); }
@media (max-width: 767px) {
  .hl-blog__item { grid-template-columns: 1fr; gap: 14px; padding: 14px; }
  .hl-blog__title { font-size: 18px; }
  .hl-news--module .hl-news__module-title { font-size: 24px; }
}

/* --- 24. Карта сайта --- */
.hl-sitemap { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 0 0 40px; }
.hl-sitemap__block { padding: 24px 26px; border: 1px solid var(--hl-navy); border-radius: 24px; }
.hl-sitemap__block--wide { grid-column: 1 / -1; }
.hl-sitemap__title { position: relative; margin: 0 0 18px !important; padding: 0 0 12px; font: 600 16px/1 var(--hl-font-head) !important; text-transform: uppercase; color: var(--hl-navy) !important; }
.hl-sitemap__title::after { content: ''; position: absolute; left: 0; bottom: 0; width: 68px; height: 1px; background: var(--hl-navy); }
.hl-sitemap li { margin: 0 0 10px; font-size: 15px; line-height: 1.3; }
.hl-sitemap a { color: var(--hl-ink) !important; text-decoration: none; }
.hl-sitemap a:hover { color: var(--hl-navy) !important; text-decoration: underline; }
.hl-sitemap__sub { margin: 8px 0 4px 14px; }
.hl-sitemap__sub li { font-size: 14px; color: var(--hl-grey); }
.hl-sitemap__cols { columns: 3; column-gap: 32px; }
.hl-sitemap__cols li { break-inside: avoid; }
@media (max-width: 991px) { .hl-sitemap { grid-template-columns: 1fr 1fr; } .hl-sitemap__cols { columns: 2; } }
@media (max-width: 767px) { .hl-sitemap { grid-template-columns: 1fr; } .hl-sitemap__cols { columns: 1; } }

/* --- 27, 28. Контакты --- */
body.hl-body .contacts .contact-item { color: var(--hl-ink); }
body.hl-body .contacts .contact-item > i { color: var(--hl-navy) !important; }
.hl-contact-logo { color: var(--hl-navy); }
.hl-contact-logo .hl-icon { width: 200px; height: 47px; }
.hl-contact-social { gap: 18px; margin-top: 8px; color: var(--hl-navy); }
.hl-contact-social a { display: inline-flex; color: var(--hl-navy) !important; }
.hl-contact-social .hl-icon { width: 28px; height: 28px; }
.hl-contact-social .hl-icon--dzen { width: 25px; height: 25px; }
/* блок «Предложения о сотрудничестве» (HTML-модуль) — в фирменные цвета */
body.hl-body [style*="#313131"] { background-color: var(--hl-navy) !important; border-top-color: var(--hl-blue) !important; border-radius: 24px; font-family: var(--hl-font) !important; }
body.hl-body [style*="#313131"] * { font-family: var(--hl-font) !important; }
body.hl-body [style*="#313131"] a { border-bottom-color: var(--hl-blue) !important; }

/* текстовые страницы: единый размер у вложенных элементов, заголовки — после общего правила цвета */
.hl-info .hl-info__text p *, .hl-info .hl-info__text li *, .hl-info .hl-info__text a *, .hl-info .hl-info__text big, .hl-info .hl-info__text font { font-size: inherit !important; }
.hl-info .hl-info__text h2, .hl-info .hl-info__text h2 *, .hl-info .hl-info__text h3, .hl-info .hl-info__text h3 *,
.hl-info .hl-info__text div[style*="font-size: 25px"], .hl-info .hl-info__text div[style*="font-size: 25px"] *,
.hl-info .hl-info__text div[style*="font-size:25px"], .hl-info .hl-info__text div[style*="font-size:25px"] *,
.hl-info .hl-info__text .area__hdr1, .hl-info .hl-info__text .area__hdr1 * {
  font-family: var(--hl-font-head) !important; font-size: 22px !important; font-weight: 500 !important; line-height: 1.25 !important; color: var(--hl-navy) !important;
}
.hl-info .hl-info__text .area__img1-hdr { font-size: 17px !important; font-weight: 500 !important; color: var(--hl-navy) !important; }
/* «Скачать инструкцию» — заметная кнопка */
.hl-dl__guide-btn { background: var(--hl-navy) !important; color: var(--hl-light) !important; border-color: var(--hl-navy) !important; }
.hl-dl__guide-btn:hover { background: transparent !important; color: var(--hl-navy) !important; }
body.hl-body .contacts .contact-item.hl-contact-logo { color: var(--hl-navy); }
/* лента «Последние новости» вне главной (стили hellion-home.css там не подключены) */
.hl-news--module .hl-sec__head { display: flex; align-items: flex-end; justify-content: space-between; }
.hl-news--module .hl-news__track { gap: 30px; }
.hl-news--module .hl-news__item { flex: none; width: calc((100% - 90px) / 4); color: var(--hl-ink); text-decoration: none; }
.hl-news--module .hl-news__img { display: block; width: 100%; aspect-ratio: 3 / 2; border-radius: 20px; overflow: hidden; background: var(--hl-light); }
.hl-news--module .hl-news__img img { width: 100%; height: 100%; object-fit: contain; display: block; }
.hl-news--module .hl-news__line { display: block; height: 1px; margin: 14px 2px 0; background: var(--hl-navy); opacity: .7; }
.hl-news--module .hl-news__text { margin: 8px 0 0; font-size: 15px; line-height: 1.25; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; }
@media (max-width: 1199px) { .hl-news--module .hl-news__item { width: calc((100% - 30px) / 2); } .hl-news--module .hl-dots { display: flex; } }
@media (max-width: 767px) { .hl-news--module .hl-news__item { width: 85%; } .hl-news--module .hl-arrows { display: none; } }
.blog .blog-list { margin-bottom: 30px; }
body.hl-body .product .tab-content td *, body.hl-body .product .tab-content th * { margin-left: 0 !important; padding-left: 0 !important; text-indent: 0 !important; }
body.hl-body .product .tab-content td:first-child { padding-left: 0 !important; }
body.hl-body .product .tab-content td { vertical-align: top !important; }
body.hl-body .product .tab-content td p, body.hl-body .product .tab-content td span { line-height: 1.4 !important; }
/* «Вы смотрели» — лента как на главной */
.hl-viewed { position: relative; }
.hl-viewed__track { gap: 30px; padding-bottom: 6px; }
.hl-viewed__track > .hl-related__slide { flex: none; width: calc((100% - 60px) / 3); }
.hl-viewed__arrows { position: absolute; top: 66px; right: 0; }
@media (max-width: 1199px) { .hl-viewed__track > .hl-related__slide { width: calc((100% - 30px) / 2); } }
@media (max-width: 767px) { .hl-viewed__track > .hl-related__slide { width: 88%; } .hl-viewed__arrows { display: none; } }

/* Мобильные исправления 21.10 */
@media (max-width: 767px) {
  .hl-footer__top { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
  .hl-footer__top > *, .hl-fcol { min-width: 0; }
  .hl-fcol--contacts a, .hl-fcol--contacts span { overflow-wrap: anywhere; }
}
@media (max-width: 767px) {
  /* «Оплата»: старая табличная вёрстка с фиксированными ширинами */
  .hl-info .area__img1, .hl-info .area__img1-r, .hl-info .area__img1-c1, .hl-info .area__img1-b { display: block !important; width: auto !important; max-width: 100% !important; padding-left: 0 !important; padding-right: 0 !important; }
  .hl-info .area__img1-c2 { max-width: 100% !important; }
  /* описания из Word: отрицательные отступы маркеров */
  #content [style*="text-indent"] { text-indent: 0 !important; }
}
/* подвал всегда с новой строки (карта на «Контактах» обтекаемая) */
footer.hl-footer { clear: both; }
.contact-map { max-width: 100%; overflow: hidden; }
.contact-map, .contact-map > *, .contact-map iframe, .contact-map ymaps { width: 100% !important; max-width: 100% !important; }
@media (max-width: 991px) {
  body.hl-body .contacts .row > .col-sm-5 { width: 100%; margin-left: 0; float: none; }
  body.hl-body .contacts .row > .col-sm-5 + .col-sm-5 { margin-top: 32px; }
}
body.hl-body .contacts .g-recaptcha { max-width: 100%; overflow: hidden; }
@media (max-width: 359px) { body.hl-body .contacts .g-recaptcha { transform: scale(.88); transform-origin: 0 0; } }
/* широкие таблицы и старая вёрстка в текстовых страницах на планшете */
.hl-info .hl-info__text table { display: block; max-width: 100%; overflow-x: auto; width: auto !important; }
.hl-info .hl-info__text table col, .hl-info .hl-info__text table td { width: auto !important; }
@media (max-width: 991px) {
  .hl-info .area__img1, .hl-info .area__img1-r, .hl-info .area__img1-c1, .hl-info .area__img1-b { display: block !important; width: auto !important; max-width: 100% !important; padding-left: 0 !important; padding-right: 0 !important; }
}

/* «Вы смотрели» в узкой колонке (категории): карточки столбиком во всю ширину */
#column-left .hl-viewed .title.title-h1, #column-right .hl-viewed .title.title-h1 { margin: 32px 0 16px; font-size: 18px; }
#column-left .hl-viewed__arrows, #column-right .hl-viewed__arrows { display: none; }
#column-left .hl-viewed__track, #column-right .hl-viewed__track { flex-direction: column; overflow: visible; gap: 20px; }
#column-left .hl-viewed__track > .hl-related__slide, #column-right .hl-viewed__track > .hl-related__slide { width: 100%; }
#column-left .hl-viewed__track > .hl-related__slide:nth-child(n+4), #column-right .hl-viewed__track > .hl-related__slide:nth-child(n+4) { display: none; }
#column-left .hl-viewed .hl-card__box, #column-right .hl-viewed .hl-card__box { height: auto; padding: 12px 12px 16px; border-radius: 18px; }
#column-left .hl-viewed .hl-card__media, #column-right .hl-viewed .hl-card__media { height: 140px; }
#column-left .hl-viewed .hl-card__desc, #column-right .hl-viewed .hl-card__desc { display: none; }
#column-left .hl-viewed .hl-card__name, #column-right .hl-viewed .hl-card__name { font-size: 15px; }
#column-left .hl-viewed .hl-card__foot, #column-right .hl-viewed .hl-card__foot { margin-top: 10px; }
#column-left .hl-viewed .hl-card__price, #column-right .hl-viewed .hl-card__price { font-size: 15px; }
#column-left .hl-viewed .hl-card__dash i, #column-right .hl-viewed .hl-card__dash i { width: 22px; }

/* ==========================================================================
   Корзина и оформление заказа: без белых плашек, отступы в аккордеоне
   ========================================================================== */
/* блок «До бесплатной доставки» и рекомендации (модуль Smart Promo) */
body.hl-body .smart-promo-widget { background: transparent !important; border: 1px solid var(--hl-navy) !important; border-radius: 24px !important; box-shadow: none !important; padding: 20px 24px !important; }
body.hl-body .smart-promo-widget, body.hl-body .smart-promo-widget *:not(i):not(.fa):not([class*="fa-"]) { font-family: var(--hl-font) !important; }
body.hl-body .promo-progress-text { color: var(--hl-ink) !important; }
body.hl-body .promo-progress-text strong { color: var(--hl-navy) !important; }
body.hl-body .smart-promo-progress-bar { background: rgba(0, 31, 75, .12) !important; border-radius: 10px !important; }
body.hl-body .smart-promo-progress-inner { background: var(--hl-navy) !important; border-radius: 10px !important; }
body.hl-body .smart-promo-upsell-title { color: var(--hl-navy) !important; font-family: var(--hl-font-head) !important; }
body.hl-body .upsell-item { background: transparent !important; border: 1px solid rgba(0, 31, 75, .3) !important; border-radius: 18px !important; box-shadow: none !important; }
body.hl-body .upsell-image, body.hl-body .upsell-image a { background: var(--hl-light) !important; }
body.hl-body .upsell-image img, body.hl-body #content .table img, body.hl-body .simplecheckout-cart img { mix-blend-mode: multiply; }
body.hl-body .upsell-name a { color: var(--hl-navy) !important; }
body.hl-body .upsell-price { color: var(--hl-navy) !important; }

/* «Воспользуйтесь дополнительными возможностями»: отступы между пунктами и внутри */
body.hl-body #accordion .panel, body.hl-body .panel-group .panel { margin: 0 0 14px !important; overflow: hidden; }
body.hl-body #accordion .panel-heading, body.hl-body .panel-group .panel-heading { padding: 0 !important; border: 0 !important; }
body.hl-body #accordion .panel-title, body.hl-body .panel-group .panel-title { margin: 0; font: 500 16px/1.3 var(--hl-font) !important; }
body.hl-body #accordion .panel-title > a, body.hl-body .panel-group .panel-title > a { display: flex !important; align-items: center; justify-content: space-between; padding: 16px 24px !important; color: var(--hl-navy) !important; text-decoration: none !important; }
body.hl-body #accordion .panel-body, body.hl-body .panel-group .panel-body { padding: 4px 24px 22px !important; border-top: 0 !important; }

/* оформление заказа (Simple) */
body.hl-body .simplecheckout-block-content { background: transparent !important; border: 1px solid rgba(0, 31, 75, .25) !important; border-radius: 18px !important; padding: 18px 20px !important; }
body.hl-body .simplecheckout-block-header, body.hl-body .checkout-heading { background: transparent !important; border: 0 !important; color: var(--hl-navy) !important; font-family: var(--hl-font-head) !important; font-weight: 600 !important; }
body.hl-body .simplecheckout-button-block, body.hl-body .simplecheckout-button-block.buttons { background: transparent !important; border: 0 !important; box-shadow: none !important; }
body.hl-body .simplecheckout-cart, body.hl-body .simplecheckout-cart td, body.hl-body .simplecheckout-cart th { background: transparent !important; }

body.hl-body #accordion .panel-heading, body.hl-body #accordion .panel-collapse, body.hl-body #accordion .panel-body,
body.hl-body .panel-group .panel-heading, body.hl-body .panel-group .panel-body { background: transparent !important; }
body.hl-body #accordion .panel-body .form-group { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; margin: 0; }
body.hl-body #accordion .panel-body .control-label { width: auto !important; flex: 0 0 auto; padding: 0 !important; text-align: left !important; }
body.hl-body #accordion .panel-body .input-group { flex: 1 1 320px; width: auto !important; }
body.hl-body #content .table td.text-center a img, body.hl-body #content .table .img-thumbnail, body.hl-body #content .table td a:has(img) { background: transparent !important; border: 0 !important; }
body.hl-body #content form img, body.hl-body .cart-info img { mix-blend-mode: multiply; background: transparent !important; }
/* кнопки внизу страниц (корзина и др.) на телефоне — ровно, во всю ширину; главная кнопка сверху */
@media (max-width: 767px) {
  body.hl-body #content .buttons { display: flex; flex-direction: column-reverse; gap: 12px; }
  body.hl-body #content .buttons > .pull-left, body.hl-body #content .buttons > .pull-right { float: none !important; width: 100%; }
  body.hl-body #content .buttons .btn { display: flex; align-items: center; justify-content: center; width: 100%; height: 48px; }
  body.hl-body #content .buttons::before, body.hl-body #content .buttons::after { display: none; }
}
