@charset "UTF-8";
/**
 * Aura Dom — современный визуальный слой
 * Палитра бренда сохранена, UI переработан
 */

:root {
  --ad-burgundy: #6c192a;
  --ad-burgundy-hover: #561421;
  --ad-burgundy-soft: rgba(108, 25, 42, 0.08);
  --ad-accent: #8d1931;
  --ad-brown: #7b685a;
  --ad-brown-dark: #5c4c41;
  --ad-brown-soft: #9a8778;
  --ad-cream: #f2e8e1;
  --ad-cream-deep: #e8d9cf;
  --ad-sand: #f7f2ed;
  --ad-ink: #2a211c;
  --ad-muted: #6b5c52;
  --ad-line: rgba(108, 25, 42, 0.12);
  --ad-white: #ffffff;
  --ad-danger: #c62828;
  --ad-radius: 12px;
  --ad-radius-sm: 8px;
  --ad-radius-lg: 20px;
  --ad-shadow: 0 8px 28px rgba(42, 33, 28, 0.08);
  --ad-shadow-hover: 0 16px 40px rgba(42, 33, 28, 0.14);
  --ad-shadow-header: 0 4px 24px rgba(42, 33, 28, 0.1);
  --ad-font: "Manrope", system-ui, sans-serif;
  --ad-display: "Cormorant Garamond", Georgia, serif;
  --ad-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --ad-header-h: 72px;
}

/* ========== Base ========== */
html {
  scroll-behavior: smooth;
}

body {
  font-family: var(--ad-font) !important;
  font-size: 15px;
  line-height: 1.55;
  color: var(--ad-ink) !important;
  background: #fff !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body, button, input, select, textarea {
  font-family: var(--ad-font) !important;
}

a {
  color: var(--ad-accent);
  transition: color 0.25s var(--ad-ease), opacity 0.25s var(--ad-ease);
}

a:hover,
a:focus {
  color: var(--ad-burgundy);
  text-decoration: none;
}

h1, h2, h3, h4, h5, h6,
.title_h1, .title_h2, .title_h3,
.pt-serif-family,
.modal-title,
.section .section-title .title_h3 {
  font-family: var(--ad-display) !important;
  font-weight: 600;
  letter-spacing: 0.01em;
  color: var(--ad-ink);
}

h1, .title_h1 {
  font-size: clamp(1.75rem, 3vw, 2.5rem);
  margin-bottom: 0.75em;
}

.text-brown {
  color: var(--ad-brown) !important;
}

.divider,
.header-separator,
.section-separator {
  border: 0 !important;
  height: 2px !important;
  width: 72px !important;
  margin: 16px auto 24px !important;
  background: linear-gradient(90deg, transparent, var(--ad-burgundy), transparent) !important;
  border-bottom: none !important;
}

.popup-window-top-row > td.popup-window-center-column::after {
  border-bottom: none !important;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--ad-burgundy), transparent);
  width: 80px;
}

/* ========== Header (reywood-like) ========== */
.header {
  position: relative;
  z-index: 100;
  background: #fff;
}

.header .navbar-default,
.header .ad-header-desktop.navbar-default {
  background: #fff !important;
  border: none !important;
  border-bottom: 1px solid rgba(42, 33, 28, 0.08) !important;
  box-shadow: none !important;
  min-height: auto;
  margin-bottom: 0;
}

.header .ad-header-desktop {
  padding: 14px 0 12px;
}

.header .ad-header-bar.navbar-header,
.header .navbar-header.ad-header-bar {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  gap: 16px;
  float: none;
}

.header .ad-header-bar .header-item {
  display: block !important;
  float: none !important;
  vertical-align: middle;
  padding-top: 0 !important;
  min-width: 0 !important;
}

.header .ad-header-bar .item-brand {
  flex: 0 0 auto;
  min-width: 180px !important;
}

.header .ad-header-bar .item-href {
  flex: 1 1 auto;
  min-width: 0 !important;
}

.header .ad-header-bar .item-phone {
  flex: 0 0 auto;
  min-width: 150px !important;
  text-align: right;
}

.header .ad-header-bar .header-menu {
  flex: 0 0 auto;
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  align-self: center;
  position: relative;
  margin: 0 !important;
  padding: 0 10px !important;
  min-width: 70px;
  text-align: center;
  float: none !important;
}

.header .ad-header-bar .header-menu > a,
.header .ad-header-bar .header-menu > .clearfix > a.pull-left,
.header .ad-header-bar .header-menu .pull-left.clearfix {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  float: none !important;
  text-align: center;
  width: 100%;
}

.header .ad-header-bar .header-menu .clearfix.pull-right {
  float: none !important;
  display: flex !important;
  flex-direction: column;
  align-items: center;
  position: relative;
  width: 100%;
}

.header .header-menu .header-icon {
  position: relative;
  display: flex !important;
  align-items: center;
  justify-content: center;
  height: 28px !important;
  width: 28px;
  margin: 0 auto;
  padding: 0;
}

.header .header-menu .text,
.header .header-menu .text-small,
.header .header-favorite-color,
.header .header-menu span.text-small,
.header .header-menu span.text {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 10px !important;
  letter-spacing: 0.05em;
  font-weight: 600;
  color: var(--ad-muted) !important;
  line-height: 1.2;
  white-space: nowrap;
}

/* Logout X — аккуратно у иконки кабинета */
.header .close-block,
.header .header-menu .close-block {
  position: absolute !important;
  top: -2px;
  right: 2px;
  float: none !important;
  width: 16px;
  height: 16px;
  z-index: 2;
  margin: 0 !important;
  padding: 0 !important;
}

.header .icon-close {
  display: block;
  top: 0 !important;
  left: 0 !important;
  width: 14px !important;
  height: 14px !important;
  border-radius: 50%;
  background-color: var(--ad-cream) !important;
  background-size: 55% !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
}

/* Top menu: Бренды / Доставка / Салоны — были color:#fff */
.header .item-href .text-small,
.header .item-href a,
.header .item-href .text-warning,
.header .item-href .text-warning a,
.header .ad-header-links .text-small,
.header .ad-header-links a.text-small,
.header a.text-small,
.header .text-warning,
.header .text-warning a {
  color: var(--ad-ink) !important;
}

.header .item-href a.text-small:hover,
.header .ad-header-links a.text-small:hover,
.header .text-warning a:hover {
  color: var(--ad-burgundy) !important;
}

.header .item-href .text-warning,
.header .ad-header-links .text-warning {
  margin: 0;
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px 10px;
}

.header .item-href .current_link {
  color: var(--ad-burgundy) !important;
  font-weight: 700;
}

.header .ad-logo,
.header .navbar-brand.ad-logo {
  display: inline-flex !important;
  align-items: center;
  gap: 10px;
  padding: 0 !important;
  height: auto !important;
  margin: 0 !important;
  float: none;
}

.header .ad-logo-mark {
  height: 42px !important;
  width: auto !important;
  max-height: 42px !important;
  margin: 0 !important;
}

.header .ad-logo-text {
  height: 34px !important;
  width: auto !important;
  max-height: 34px !important;
  margin: 0 !important;
}

.header .navbar-brand img,
.header .item-brand .navbar-brand img {
  max-height: 42px !important;
  width: auto !important;
  margin: 0 !important;
}

.header .ad-header-links {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px 14px;
  width: auto !important;
  margin: 0;
}

.header .ad-header-links > ul,
.header .ad-header-links .nav {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin: 0;
  float: none;
}

.header .navbar-nav > li > a,
.header .ad-header-links > li > a {
  color: var(--ad-muted) !important;
  font-size: 13px;
  font-weight: 500;
  padding: 4px 8px !important;
  background: transparent !important;
}

.header .navbar-nav > li > a:hover {
  color: var(--ad-burgundy) !important;
}

.header .navbar-default .header-menu a,
.header .header-menu a {
  color: var(--ad-ink) !important;
}

.header .header-menu [class^="icon-"],
.header .header-menu [class*=" icon-"],
.header .text-muted,
.header .header-favorite-color.icon-favorite,
.header [class^="icon-"],
.header [class*=" icon-"],
.section-menu [class^="icon-"],
.section-menu [class*=" icon-"],
.icon-search,
.menu-item.icon-search {
  font-family: "icomoon" !important;
  font-style: normal !important;
  font-weight: normal !important;
  speak: none;
  -webkit-font-smoothing: antialiased;
}

.header .header-menu [class^="icon-"],
.header .header-menu [class*=" icon-"],
.header .text-muted.icon-cabinet,
.header .text-muted.icon-favorite,
.header .text-muted.icon-cart {
  font-size: 22px !important;
  color: var(--ad-brown) !important;
  line-height: 1 !important;
}

.header .header-icon {
  position: relative;
  display: inline-block;
}

.header .header-icon .text-danger,
.header .header-icon i.text-danger,
#text-favorite {
  position: absolute;
  top: -6px;
  right: -10px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  background: var(--ad-burgundy) !important;
  color: #fff !important;
  font-size: 10px !important;
  font-style: normal;
  font-weight: 700;
  line-height: 18px;
  text-align: center;
}

/* Phones — always readable on light header */
.header .item-phone,
.header .ad-header-phone {
  line-height: 1.25;
}

.header .ad-phone-link {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  margin: 0 0 2px;
  color: var(--ad-ink) !important;
  text-decoration: none !important;
  white-space: nowrap;
}

.header .ad-phone-link:hover,
.header .ad-phone-link:hover .ad-phone-num {
  color: var(--ad-burgundy) !important;
}

.header .item-phone .navbar-nav p,
.header .item-phone strong,
.header .item-phone a,
.header .ad-phone-num,
.header .ga_ym_t,
.header .ga_ym_t span,
.header .item-phone span {
  color: var(--ad-ink) !important;
  font-weight: 600 !important;
  font-size: 14px !important;
}

.header .item-phone .icon {
  opacity: 0.85;
  flex-shrink: 0;
}

.header .back-call,
.header a.back-call {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  border: 1px solid rgba(108, 25, 42, 0.25);
  border-radius: 999px;
  background: transparent;
  color: var(--ad-burgundy) !important;
  font-size: 11px !important;
  font-weight: 700;
  letter-spacing: 0.04em;
  transition: background 0.25s var(--ad-ease), color 0.25s var(--ad-ease), border-color 0.25s var(--ad-ease);
}

.header .back-call:hover {
  background: var(--ad-burgundy) !important;
  border-color: var(--ad-burgundy);
  color: #fff !important;
}

/* Mobile header */
#navbar-phone.navbar-default {
  background: #fff !important;
  border: none !important;
  border-bottom: 1px solid rgba(42, 33, 28, 0.08) !important;
  box-shadow: none !important;
  min-height: 56px !important;
  height: auto !important;
  padding: 8px 0;
  margin-bottom: 0;
}

#navbar-phone .navbar-header {
  display: block;
  float: none;
  width: 100%;
}

#navbar-phone .row {
  display: flex;
  align-items: center;
  margin: 0 -8px;
}

#navbar-phone .row > [class*="col-"] {
  float: none;
  padding: 0 8px;
  display: flex;
  align-items: center;
  justify-content: center;
}

#navbar-phone .item-brand {
  flex: 1;
  justify-content: center;
  min-width: 0 !important;
}

#navbar-phone .ad-logo {
  justify-content: center;
}

#navbar-phone .ad-logo-mark {
  height: 32px !important;
  max-height: 32px !important;
}

#navbar-phone .ad-logo-text {
  height: 24px !important;
  max-height: 24px !important;
}

#navbar-phone .menu_icon_hamburger,
#navbar-phone .menu_icon {
  width: 24px;
  height: 24px;
  opacity: 0.85;
  cursor: pointer;
}

@media (max-width: 991px) {
  header,
  .header #navbar-phone.navbar {
    min-height: 56px !important;
    height: auto !important;
  }

  .header .navbar-brand img,
  .header .ad-logo img {
    margin-left: 0 !important;
    margin-top: 0 !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .header .ad-logo-text {
    height: 28px !important;
  }

  .header .ad-header-bar .item-phone {
    min-width: 130px !important;
  }

  .header .item-phone .ad-phone-num,
  .header .ga_ym_t span {
    font-size: 12px !important;
  }
}

/* ========== Sidenav ========== */
.sidenav {
  background: linear-gradient(165deg, var(--ad-brown-dark) 0%, var(--ad-brown) 55%, #8a7363 100%) !important;
  box-shadow: 8px 0 32px rgba(0, 0, 0, 0.25);
  padding-top: 24px !important;
  transition: width 0.35s var(--ad-ease) !important;
}

.sidenav a {
  color: rgba(255, 255, 255, 0.92) !important;
  font-family: var(--ad-font) !important;
  font-size: 15px !important;
  font-weight: 500;
  letter-spacing: 0.02em;
  padding: 12px 22px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  transition: background 0.25s var(--ad-ease), padding-left 0.25s var(--ad-ease);
}

.sidenav a:hover {
  background: rgba(255, 255, 255, 0.1) !important;
  padding-left: 28px !important;
  color: #fff !important;
}

#cover {
  background: rgba(42, 33, 28, 0.45) !important;
  pointer-events: none !important;
  visibility: hidden;
  opacity: 0 !important;
  z-index: -1 !important;
  transition: opacity 0.35s var(--ad-ease) !important;
}

#cover.is-open {
  pointer-events: auto !important;
  visibility: visible;
  opacity: 1 !important;
  z-index: 8000 !important;
}

/* ========== Catalog menu (clean, like reywood) ========== */
.section-menu {
  background: #fff !important;
  float: none !important;
  padding: 0;
  border-bottom: 1px solid rgba(42, 33, 28, 0.08);
  margin-bottom: 0;
}

.section-menu > .container {
  position: relative;
}

.section-menu ul {
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
  border: none !important;
  display: flex !important;
  flex-wrap: wrap;
  align-items: stretch;
  justify-content: center;
  width: 100% !important;
  text-align: center;
}

.section-menu ul li {
  display: block !important;
  float: none !important;
  border-left: none !important;
  flex: 1 1 auto;
}

.section-menu ul li .menu-item {
  color: var(--ad-ink) !important;
  font-family: var(--ad-font) !important;
  font-size: 12px !important;
  font-weight: 600;
  letter-spacing: 0.06em;
  padding: 16px 10px !important;
  line-height: 1.25 !important;
  background: transparent !important;
  border-bottom: 2px solid transparent;
  transition: color 0.25s var(--ad-ease), border-color 0.25s var(--ad-ease);
}

.section-menu ul li .menu-item:hover,
.section-menu ul li .menu-item:focus,
.root-item-selected {
  background: transparent !important;
  color: var(--ad-burgundy) !important;
  border-bottom-color: var(--ad-burgundy) !important;
}

.section-menu ul li .icon-search,
.section-menu ul li a.menu-item.icon-search {
  font-family: "icomoon" !important;
  background: transparent !important;
  color: var(--ad-brown) !important;
  height: auto !important;
  padding: 16px 14px !important;
  border-bottom: 2px solid transparent !important;
  font-size: 18px !important;
  line-height: 1 !important;
  speak: none;
}

.section-menu ul li .icon-search:before,
.section-menu ul li a.icon-search:before {
  content: "\e60c" !important;
  font-family: "icomoon" !important;
  font-size: 18px;
  color: var(--ad-brown);
}

.section-menu ul li .icon-search:hover,
.section-menu ul li .icon-search:hover:before {
  color: var(--ad-burgundy) !important;
  border-bottom-color: transparent !important;
}

.section-menu ul .search-li {
  flex: 0 0 48px;
  max-width: 48px;
}

.section-menu .search-panel .search-input input {
  background: var(--ad-sand) !important;
  border: 1px solid var(--ad-line) !important;
  border-radius: var(--ad-radius-sm) !important;
  color: var(--ad-ink) !important;
  height: 44px !important;
  padding: 0 14px;
  box-shadow: none !important;
}

.section-menu .search-panel .search-input input:focus {
  border-color: var(--ad-burgundy) !important;
  background: #fff !important;
}

.section-menu .search-panel .search-button .menu-item {
  background: var(--ad-burgundy) !important;
  border-radius: 0 var(--ad-radius-sm) var(--ad-radius-sm) 0;
  color: #fff !important;
  border-bottom: none !important;
}

.section-menu .search-panel .search-input ::-webkit-input-placeholder,
.section-menu .search-panel .search-input ::placeholder {
  color: var(--ad-muted) !important;
}

.bx-searchtitle input[type="text"],
.title-search-input,
#title-search-input {
  border-radius: var(--ad-radius-sm) !important;
  border: 1px solid var(--ad-line) !important;
  background: #fff !important;
}

.bx-searchtitle input[type="text"]:focus,
#title-search-input:focus {
  border-color: var(--ad-burgundy) !important;
  box-shadow: 0 0 0 3px var(--ad-burgundy-soft) !important;
}

/* ========== Home slider + category tiles ========== */
.section-index-slider {
  position: relative;
  padding-bottom: 24px !important;
  overflow: visible !important;
}

.section-index-slider .carousel .carousel-inner {
  max-height: none !important;
  border-radius: 0;
}

.section-index-slider .carousel-inner .item img {
  width: 100%;
  height: auto;
}

.section-index-slider .slider-general-goods {
  position: static !important;
  bottom: auto !important;
  left: auto !important;
  right: auto !important;
  margin-top: 28px !important;
  padding: 0 15px;
}

.section-index-slider .slider-general-goods .slider-general-goods-tab {
  min-height: auto !important;
  height: auto !important;
  padding: 8px !important;
  margin-bottom: 8px;
}

.section-index-slider .slider-general-goods .slider-general-goods-tab a {
  height: auto !important;
  min-height: 200px;
  border-radius: var(--ad-radius) !important;
  overflow: hidden;
  box-shadow: none !important;
  border: 1px solid var(--ad-line);
  background-size: cover !important;
  background-position: center !important;
  transition: transform 0.35s var(--ad-ease), box-shadow 0.35s var(--ad-ease);
}

.section-index-slider .slider-general-goods .slider-general-goods-tab a:hover {
  transform: translateY(-3px);
  box-shadow: var(--ad-shadow-hover) !important;
  margin-top: 0 !important;
}

.section-index-slider .slider-general-goods .slider-general-goods-tab a div,
.section-index-slider .slider-general-goods .slider-general-goods-tab a div {
  background: rgba(42, 33, 28, 0.78) !important;
  padding: 10px 12px !important;
  border-radius: 0;
}

.section-index-slider .slider-general-goods .slider-general-goods-title span {
  border: none !important;
  color: #fff !important;
  font-family: var(--ad-font) !important;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.section-index-slider .carousel-indicators {
  margin-bottom: 16px !important;
  bottom: 12px !important;
  position: absolute !important;
}

/* ========== Buttons ========== */
.btn,
.btn-primary,
button.btn,
input.btn,
.bx_bt_button,
span.bx_medium.bx_bt_button,
.popup-window-content-row .popup-window-center-column .popup-window-buttons span span,
#set_filter,
#del_filter {
  font-family: var(--ad-font) !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  border-radius: var(--ad-radius-sm) !important;
  border: none !important;
  padding: 12px 22px !important;
  transition: background 0.25s var(--ad-ease), transform 0.25s var(--ad-ease), box-shadow 0.25s var(--ad-ease) !important;
  box-shadow: 0 2px 8px rgba(108, 25, 42, 0.2);
}

.btn-primary,
.btn.btn-primary,
#set_filter,
.popup-window-content-row .popup-window-center-column .popup-window-buttons span span:hover,
.popup-window-content-row .popup-window-center-column .popup-window-buttons span span:focus {
  background: linear-gradient(135deg, var(--ad-burgundy) 0%, #851f36 100%) !important;
  border-color: var(--ad-burgundy) !important;
  color: #fff !important;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
#set_filter:hover {
  background: linear-gradient(135deg, var(--ad-burgundy-hover) 0%, var(--ad-burgundy) 100%) !important;
  transform: translateY(-1px);
  box-shadow: 0 6px 18px rgba(108, 25, 42, 0.28) !important;
  color: #fff !important;
}

#del_filter {
  background: transparent !important;
  color: var(--ad-brown) !important;
  border: 1px solid var(--ad-line) !important;
  box-shadow: none !important;
}

#del_filter:hover {
  background: var(--ad-cream) !important;
  color: var(--ad-ink) !important;
}

.btn-default {
  background: #fff !important;
  color: var(--ad-ink) !important;
  border: 1px solid var(--ad-line) !important;
  box-shadow: none !important;
}

.btn-default:hover {
  background: var(--ad-cream) !important;
  border-color: var(--ad-brown-soft) !important;
}

/* ========== Forms ========== */
.form-control,
input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
input[type="number"],
select,
textarea,
.bx_ordercart_order_pay textarea,
.order_form input[type="text"],
.sale_order_full input[type="text"],
.sale_order_full textarea {
  font-family: var(--ad-font) !important;
  border: 1px solid var(--ad-line) !important;
  border-radius: var(--ad-radius-sm) !important;
  background: #fff !important;
  color: var(--ad-ink) !important;
  padding: 12px 14px !important;
  height: auto !important;
  min-height: 46px;
  box-shadow: none !important;
  transition: border-color 0.25s var(--ad-ease), box-shadow 0.25s var(--ad-ease);
}

textarea.form-control,
textarea {
  min-height: 110px;
}

.form-control:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
textarea:focus,
select:focus {
  border-color: var(--ad-burgundy) !important;
  box-shadow: 0 0 0 3px var(--ad-burgundy-soft) !important;
  outline: none !important;
}

.form-control::-webkit-input-placeholder,
.form-control::placeholder {
  color: var(--ad-muted) !important;
  opacity: 0.7;
}

.form-group {
  margin-bottom: 18px;
}

label {
  font-weight: 600;
  color: var(--ad-muted);
  font-size: 13px;
  letter-spacing: 0.02em;
}

/* Selectbox plugin */
.sbHolder {
  border-radius: var(--ad-radius-sm) !important;
  border-color: var(--ad-line) !important;
  background: #fff !important;
}

.sbSelector:link,
.sbSelector:visited,
.sbSelector:hover {
  color: var(--ad-ink) !important;
}

/* ========== Modals ========== */
.modal-content,
.modal-window {
  border: none !important;
  border-radius: var(--ad-radius-lg) !important;
  box-shadow: 0 24px 64px rgba(42, 33, 28, 0.22) !important;
  overflow: hidden;
  background: #fff !important;
}

.modal-header {
  background: linear-gradient(180deg, var(--ad-sand) 0%, #fff 100%) !important;
  border-bottom: 1px solid var(--ad-line) !important;
  padding: 24px 24px 12px !important;
}

.modal-title,
.modal-header .modal-title {
  font-family: var(--ad-display) !important;
  font-size: 1.65rem !important;
  color: var(--ad-ink) !important;
  font-weight: 600;
}

.modal-body {
  padding: 20px 28px 28px !important;
}

.modal-body p {
  color: var(--ad-muted);
  line-height: 1.5;
}

.modal .close {
  opacity: 0.55;
  font-weight: 300;
  font-size: 28px;
  transition: opacity 0.2s, transform 0.2s var(--ad-ease);
}

.modal .close:hover {
  opacity: 1;
  transform: rotate(90deg);
}

.modal-backdrop.in {
  opacity: 0.45;
  background: var(--ad-ink);
}

.bootstrap-dialog.type-aura .modal-header,
.bootstrap-dialog .modal-header {
  background: linear-gradient(135deg, var(--ad-brown) 0%, var(--ad-brown-dark) 100%) !important;
}

.back-call-captcha-img {
  border-radius: var(--ad-radius-sm);
  border: 1px solid var(--ad-line);
}

/* ========== Product cards ========== */
.section .section-content .product-item,
.section-catalog .section-content .product-item,
.product-item {
  background: var(--ad-white) !important;
  border: 1px solid var(--ad-line) !important;
  border-radius: var(--ad-radius) !important;
  padding: 16px !important;
  margin-bottom: 24px !important;
  box-shadow: none !important;
  transition: transform 0.35s var(--ad-ease), box-shadow 0.35s var(--ad-ease), border-color 0.35s var(--ad-ease) !important;
}

.section .section-content .product-item:hover,
.product-item:hover {
  transform: translateY(-4px);
  box-shadow: var(--ad-shadow-hover) !important;
  border-color: rgba(108, 25, 42, 0.2) !important;
}

.section .section-content .product-item .title_h2,
.product-item .title_h2 {
  font-family: var(--ad-display) !important;
  font-size: 1.15rem !important;
  font-weight: 600;
  color: var(--ad-ink) !important;
  min-height: auto !important;
  height: auto !important;
}

.product-item .bx_price,
.section-catalog .section-content .product-item .bx_price {
  font-family: var(--ad-font) !important;
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  color: var(--ad-burgundy) !important;
}

.product-item .product-img a,
.section .product-item .product-img a {
  border-radius: var(--ad-radius-sm);
  overflow: hidden;
  display: block;
}

.product-item .product-img img,
.product-item .img-responsive {
  transition: transform 0.5s var(--ad-ease);
}

.product-item:hover .product-img img,
.product-item:hover .img-responsive {
  transform: scale(1.04);
}

.product-item .red_price,
.title_h2.red_price {
  color: var(--ad-danger) !important;
}

.discount-percent-pulse {
  border-radius: var(--ad-radius-sm) !important;
  box-shadow: 0 4px 14px rgba(198, 40, 40, 0.35) !important;
  animation: ad-pulse 2.2s ease-in-out infinite;
}

@keyframes ad-pulse {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.04); }
}

/* ========== Sections / titles ========== */
.section {
  padding-top: 12px;
  padding-bottom: 12px;
}

.section .section-title .title_h3,
.title_h3 {
  font-size: clamp(1.5rem, 2.5vw, 2rem) !important;
  margin: 8px 0 4px !important;
}

.section-about {
  background: transparent;
}

.section-index-slider .slider-general-goods .slider-general-goods-tab a div {
  background: linear-gradient(135deg, var(--ad-brown) 0%, var(--ad-brown-dark) 100%) !important;
  border-radius: var(--ad-radius-sm) var(--ad-radius-sm) 0 0;
}

.carousel-indicators li {
  border-radius: 50%;
  transition: transform 0.25s var(--ad-ease);
}

.carousel-indicators .active {
  background: var(--ad-burgundy) !important;
  transform: scale(1.15);
}

/* ========== Catalog / filter ========== */
.section-catalog .section-content .bg-grey,
.grey_filter,
.arrowstop {
  background: var(--ad-white) !important;
  border: 1px solid var(--ad-line);
  border-radius: var(--ad-radius);
  padding: 14px !important;
}

.bx_filter,
.bx_filter_section {
  background: #fff;
  border-radius: var(--ad-radius);
  border: 1px solid var(--ad-line);
  padding: 12px;
}

.bx_filter .bx_filter_param_label:hover {
  color: var(--ad-burgundy);
}

.section-catalog-item .section-content .catalog-item-images .image-inner {
  border-radius: var(--ad-radius);
  overflow: hidden;
}

.breadcrumb,
.bx-breadcrumb {
  background: transparent !important;
  padding: 12px 0 !important;
  font-size: 13px;
  color: var(--ad-muted);
}

.breadcrumb a,
.bx-breadcrumb a {
  color: var(--ad-muted);
}

.breadcrumb a:hover {
  color: var(--ad-burgundy);
}

/* ========== Basket / order ========== */
.section-basket,
.bx_ordercart,
.sale_order_full,
.order_form {
  background: transparent;
}

.section-basket table,
.bx_ordercart table,
.table-order {
  background: #fff;
  border-radius: var(--ad-radius);
  overflow: hidden;
  border: 1px solid var(--ad-line);
}

.section-basket .row-item td,
.bx_ordercart td {
  padding: 14px !important;
  vertical-align: middle !important;
  border-color: var(--ad-line) !important;
}

.bx_ordercart_order_pay {
  background: #fff;
  border: 1px solid var(--ad-line);
  border-radius: var(--ad-radius);
  padding: 20px;
  margin-top: 16px;
}

/* ========== Auth / personal ========== */
.bx-auth,
.bx-authform,
.section-personal,
.profile-block {
  background: #fff;
  border: 1px solid var(--ad-line);
  border-radius: var(--ad-radius-lg);
  padding: 28px;
  box-shadow: var(--ad-shadow);
}

/* ========== News / about ========== */
.section-news .section-content .news-content {
  border: 1px solid var(--ad-line) !important;
  border-radius: var(--ad-radius) !important;
  padding: 20px !important;
  background: #fff;
  transition: box-shadow 0.3s var(--ad-ease), transform 0.3s var(--ad-ease);
}

.section-news .section-content .news-content:hover {
  box-shadow: var(--ad-shadow);
  transform: translateY(-2px);
}

.contact_table td {
  padding: 14px 18px !important;
  border-bottom: 1px solid var(--ad-line);
}

/* ========== Footer ========== */
html, body.ad-site, body {
  height: auto !important;
  min-height: 100% !important;
  max-height: none !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
}

#main {
  overflow: visible !important;
  min-height: 0 !important;
  height: auto !important;
  max-height: none !important;
}

.ad-page {
  overflow: visible !important;
  height: auto !important;
  min-height: 0 !important;
}

footer.footer,
footer.ad-footer,
#site-footer,
.footer.ad-footer,
body .footer,
#main > .footer,
#main > footer.footer {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  background: #3d322c !important;
  background-image: none !important;
  color: #f2e8e1 !important;
  font-size: 14px !important;
  margin-top: 48px !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  position: relative !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  overflow: visible !important;
  clear: both !important;
  width: 100% !important;
  max-width: none !important;
  z-index: 10 !important;
  float: none !important;
  height: auto !important;
  max-height: none !important;
  min-height: 220px !important;
  transform: none !important;
  clip: auto !important;
}

.footer::before {
  display: none;
}

.footer > .container {
  position: relative;
  z-index: 1;
  padding-top: 8px;
}

.footer .footer-container {
  padding: 48px 0 28px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.12) !important;
  display: block !important;
}

.footer .footer_submenu {
  display: block !important;
}

@media (max-width: 768px) {
  .footer .footer_submenu {
    display: none !important;
  }
  .footer .footer_submenu.is-open {
    display: block !important;
  }
}

.footer a {
  color: rgba(255, 255, 255, 0.82) !important;
}

.footer a:hover {
  color: #fff !important;
}

.menu-footer p,
.menu-footer p b {
  font-family: var(--ad-display) !important;
  font-size: 1.25rem !important;
  font-weight: 600 !important;
  color: #f2e8e1 !important;
  border-bottom: 1px solid rgba(242, 232, 225, 0.3) !important;
  padding-bottom: 8px;
  margin-bottom: 14px;
  display: inline-block;
}

.footer .Footer-txt,
.footer p,
.footer .reit {
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.8) !important;
}

.footer_social {
  display: inline-block;
  margin: 4px 8px 4px 0 !important;
  float: none !important;
  width: auto !important;
}

.footer .payment_block {
  margin-top: 24px;
  padding-top: 16px;
  text-align: right;
}

.footer .payment_img {
  display: inline-block;
  margin: 4px 6px;
  padding: 6px 10px;
  background: rgba(255, 255, 255, 0.95);
  border-radius: 8px;
  vertical-align: middle;
}

.footer .payment_img img {
  height: 28px !important;
  width: auto !important;
}

.footer-about {
  padding: 20px 0 36px;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.7);
}

/* ========== Scrollup ========== */
div.scrollup {
  background: var(--ad-burgundy) !important;
  border-radius: var(--ad-radius-sm) var(--ad-radius-sm) 0 0 !important;
  left: auto !important;
  right: 16px !important;
  bottom: 24px !important;
  padding: 10px 14px !important;
  box-shadow: 0 8px 24px rgba(108, 25, 42, 0.35);
  transition: background 0.25s var(--ad-ease), transform 0.25s var(--ad-ease);
}

div.scrollup:hover {
  background: var(--ad-burgundy-hover) !important;
  transform: translateY(-2px);
}

/* ========== Popups Bitrix ========== */
.popup-window {
  border-radius: var(--ad-radius) !important;
  box-shadow: var(--ad-shadow-hover) !important;
  border: 1px solid var(--ad-line) !important;
  overflow: hidden;
}

.popup-window-content-row .popup-window-center-column .popup-window-buttons span span {
  background: var(--ad-ink) !important;
  border-radius: var(--ad-radius-sm) !important;
}

/* ========== One-click / tarakud ========== */
.oneclick-form input,
.oneclick-form .form-control {
  border-radius: var(--ad-radius-sm) !important;
}

/* ========== Animations ========== */
@keyframes ad-fade-up {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.header .ad-header-desktop {
  animation: ad-fade-up 0.45s var(--ad-ease) both;
}

/* ========== Responsive ========== */
@media (max-width: 991px) {
  .section-menu {
    display: none !important;
  }

  .menu-footer p {
    border-bottom: none !important;
    font-size: 1.15rem !important;
  }

  .footer .footer-container {
    padding: 36px 0 20px !important;
  }

  .footer .payment_block {
    text-align: left !important;
  }

  .modal-dialog.modal-sm {
    width: auto;
    margin: 20px 16px;
  }

  .modal-window {
    width: calc(100% - 32px) !important;
    padding: 32px 20px !important;
  }

  .section .section-content .product-item {
    min-height: auto !important;
  }

  .bx-auth,
  .bx-authform,
  .section-personal {
    padding: 20px;
    border-radius: var(--ad-radius);
  }

  .sidenav a {
    font-size: 15px !important;
  }
}

@media (max-width: 767px) {
  body {
    font-size: 14px;
  }

  h1, .title_h1 {
    font-size: 1.55rem;
  }

  .header .back-call {
    padding: 6px 10px;
    font-size: 10px !important;
  }

  .section .section-content .product-item {
    padding: 12px !important;
  }

  .product-item .bx_price {
    font-size: 1.1rem !important;
  }

  .btn,
  .btn-primary {
    width: 100%;
    margin-bottom: 8px;
  }

  .modal-body .btn,
  .modal-body .btn-primary {
    width: auto;
    min-width: 140px;
  }

  .footer .col-xs-6 {
    margin-bottom: 20px;
  }

  div.scrollup {
    right: 10px !important;
    bottom: 16px !important;
  }

  .table-order tbody tr {
    flex-wrap: wrap;
  }
}

@media (max-width: 480px) {
  #navbar-phone .navbar-brand img {
    max-height: 30px !important;
  }

  .sidenav a {
    padding: 11px 18px !important;
  }
}

/* Landscape mobile overrides from old bootstrap — neutralize logo hacks */
@media all and (max-width: 800px) and (orientation: landscape) {
  .header .navbar-brand img {
    margin-left: 0 !important;
    margin-top: 0 !important;
  }
}

/* ========== Product detail ========== */
.section-catalog-item .section-content,
.catalog-item-info {
  background: #fff;
  border-radius: var(--ad-radius-lg);
  border: 1px solid var(--ad-line);
  padding: 20px;
  box-shadow: var(--ad-shadow);
}

.section-catalog-item .item_buttons,
.section-catalog-item .btn,
.catalog-item-buy .btn {
  min-width: 160px;
}

.item_price,
.catalog-item-price,
.item_current_price {
  font-family: var(--ad-font) !important;
  font-weight: 700;
  color: var(--ad-burgundy) !important;
}

.tabs-container .nav-tabs,
.section-catalog-item .nav-tabs {
  border-bottom: 1px solid var(--ad-line) !important;
}

.tabs-container .nav-tabs > li > a,
.section-catalog-item .nav-tabs > li > a {
  border-radius: var(--ad-radius-sm) var(--ad-radius-sm) 0 0 !important;
  color: var(--ad-muted);
  font-weight: 600;
}

.tabs-container .nav-tabs > li.active > a,
.section-catalog-item .nav-tabs > li.active > a {
  color: var(--ad-burgundy) !important;
  border-color: var(--ad-line) var(--ad-line) #fff !important;
}

/* ========== Brands strip ========== */
.section-brands-href .section-content a {
  transition: color 0.25s var(--ad-ease), opacity 0.25s var(--ad-ease);
}

.section-brands-href .section-content a:hover {
  color: var(--ad-burgundy);
}

/* ========== Auth modal / login ========== */
.modal .bx-authform,
#login-modal .modal-body,
.modal-auth .modal-body {
  padding: 8px 4px 4px;
}

.bx-authform-input-container input,
.bx-auth input[type="text"],
.bx-auth input[type="password"] {
  width: 100%;
  min-height: 46px;
  border-radius: var(--ad-radius-sm) !important;
  border: 1px solid var(--ad-line) !important;
  padding: 12px 14px !important;
}

.bx-authform-formgroup-container {
  margin-bottom: 16px;
}

/* ========== Compare / favorites ========== */
.compare-favorites a {
  color: var(--ad-muted);
  font-weight: 500;
  transition: color 0.25s var(--ad-ease);
}

.compare-favorites a:hover {
  color: var(--ad-burgundy);
}

/* ========== Pagination ========== */
.bx-pagination a,
.pagination > li > a,
.pagination > li > span {
  border-radius: var(--ad-radius-sm) !important;
  border-color: var(--ad-line) !important;
  color: var(--ad-ink) !important;
  margin: 0 3px;
  transition: background 0.25s var(--ad-ease), color 0.25s var(--ad-ease);
}

.bx-pagination .bx-active span,
.pagination > .active > a,
.pagination > .active > span {
  background: var(--ad-burgundy) !important;
  border-color: var(--ad-burgundy) !important;
  color: #fff !important;
}

.pagination > li > a:hover {
  background: var(--ad-cream) !important;
  color: var(--ad-burgundy) !important;
}

/* ========== 404 ========== */
.404_btn,
.404_btn_wrp a {
  display: inline-block;
  padding: 12px 24px;
  background: var(--ad-burgundy);
  color: #fff !important;
  border-radius: var(--ad-radius-sm);
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  transition: background 0.25s var(--ad-ease), transform 0.25s var(--ad-ease);
}

.404_btn:hover,
.404_btn_wrp a:hover {
  background: var(--ad-burgundy-hover);
  transform: translateY(-1px);
  color: #fff !important;
}

/* Top links visibility override (bootstrap .text-small was #fff) */
.header .text-small,
.header a.text-small,
.ad-top-links,
.ad-top-links a,
.ad-top-links .text-small {
  color: var(--ad-ink) !important;
}

.ad-top-links a:hover,
.header .ad-top-links a:hover {
  color: var(--ad-burgundy) !important;
}

.ad-top-links {
  margin: 0;
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px 12px;
}

/* Icomoon icons must win over Manrope */
[class^="icon-"]:before,
[class*=" icon-"]:before {
  font-family: "icomoon" !important;
}
