/* =========================================
   WRS / Journal 3.2 - Sticky Header Island Pro
   OpenCart 2.3
========================================= */

/* =========================================
   DESKTOP: sticky / non-sticky header
========================================= */
@media (min-width: 992px) {

  /* -----------------------------------------
     HEADER / NORMAL STATE
  ----------------------------------------- */
  .desktop-header-active.sticky-default header.header-compact {
    position: relative !important;
    top: 0 !important;
    left: auto !important;
    transform: none !important;
    width: calc(100% - 48px);
    max-width: 1380px;
    margin: 14px auto 0 auto;
    z-index: 20;

    border-radius: 22px;
    overflow: visible !important;

    background: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;

    box-shadow: none !important;
    border: 0 !important;

    transition:
      top .25s ease,
      box-shadow .25s ease,
      background .25s ease,
      transform .25s ease;
  }

  /* -----------------------------------------
     HEADER / STICKY STATE
  ----------------------------------------- */
  .desktop-header-active.header-sticky header.header-compact {
    position: fixed !important;
    top: 12px !important;

    left: 24px !important;
    right: 24px !important;

    inset-inline-start: 24px !important;
    inset-inline-end: 24px !important;

    width: auto !important;
    max-width: none !important;
    margin: 0 !important;

    transform: none !important;
    -webkit-transform: none !important;

    z-index: 9999;

    border-radius: 22px;
    overflow: visible !important;

    background: rgba(245, 247, 250, 0.82) !important;
    -webkit-backdrop-filter: blur(20px) saturate(180%) !important;
    backdrop-filter: blur(20px) saturate(180%) !important;

    box-shadow:
      0 8px 32px rgba(0, 0, 0, 0.10),
      0 2px 8px rgba(0, 0, 0, 0.06),
      inset 0 1px 0 rgba(255, 255, 255, 0.85) !important;

    border: 1px solid rgba(255, 255, 255, 0.55);

    transition:
      top .25s ease,
      box-shadow .25s ease,
      background .25s ease;
  }

  /* -----------------------------------------
     HEADER / INNER JOURNAL WRAPPERS
  ----------------------------------------- */
  .desktop-header-active.header-sticky header.header-compact > div.header,
  .desktop-header-active.header-sticky header.header-compact > div[class*="header-compact-sm"],
  .desktop-header-active.header-sticky header.header-compact > div[class*="module-header"] {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
  }

  .desktop-header-active.header-sticky header.header-compact div.top-bar,
  .desktop-header-active.header-sticky header.header-compact div.mid-bar,
  .desktop-header-active.header-sticky header.header-compact div.bottom-bar,
  .desktop-header-active.header-sticky header.header-compact div.header-wrapper,
  .desktop-header-active.header-sticky header.header-compact div.navbar-nav,
  .desktop-header-active.header-sticky header.header-compact div.container,
  .desktop-header-active.header-sticky header.header-compact div.container-fluid,
  .desktop-header-active.header-sticky header.header-compact div.row,
  .desktop-header-active.header-sticky header.header-compact nav,
  .desktop-header-active.header-sticky header.header-compact ul.nav {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
  }

  .desktop-header-active.header-sticky header.header-compact [class*="color-scheme"] {
    background: transparent !important;
    background-color: transparent !important;
  }

  /* -----------------------------------------
     HEADER / INNER VISUAL CONTAINER
  ----------------------------------------- */
  .desktop-header-active.sticky-default header.header-compact > .header {
    border-radius: 22px;
    overflow: visible !important;
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
  }

  .desktop-header-active.header-sticky header.header-compact > .header {
    border-radius: 22px;
    overflow: hidden;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  /* -----------------------------------------
     HEADER / NORMAL STATE INNER RESET
  ----------------------------------------- */
  .desktop-header-active.sticky-default header.header-compact > .header,
  .desktop-header-active.sticky-default header.header-compact .top-bar,
  .desktop-header-active.sticky-default header.header-compact .mid-bar,
  .desktop-header-active.sticky-default header.header-compact .bottom-bar,
  .desktop-header-active.sticky-default header.header-compact .header-wrapper,
  .desktop-header-active.sticky-default header.header-compact .navbar-nav,
  .desktop-header-active.sticky-default header.header-compact .nav,
  .desktop-header-active.sticky-default header.header-compact .container,
  .desktop-header-active.sticky-default header.header-compact .container-fluid,
  .desktop-header-active.sticky-default header.header-compact .row {
    background: transparent !important;
    box-shadow: none !important;
    border: 0 !important;
  }

  /* -----------------------------------------
     HEADER / INTERNAL SPACING
  ----------------------------------------- */
  .desktop-header-active header.header-compact .top-bar {
    padding-left: 18px;
    padding-right: 18px;
  }

  .desktop-header-active header.header-compact .mid-bar {
    padding-left: 18px;
    padding-right: 18px;
    overflow: visible !important;
    position: relative;
  }

  /* -----------------------------------------
     HEADER / SEARCH WRAPPERS
  ----------------------------------------- */
  .desktop-header-active header.header-compact .desktop-search-wrapper,
  .desktop-header-active header.header-compact .desktop-search-wrapper.mini-search,
  .desktop-header-active header.header-compact #search.dropdown.search-dropdown {
    position: relative;
    overflow: visible !important;
  }

  /* -----------------------------------------
     HEADER / SEARCH DROPDOWN PANEL
  ----------------------------------------- */
  .desktop-header-active header.header-compact #search.dropdown.search-dropdown.open > .dropdown-menu.j-dropdown,
  .desktop-header-active header.header-compact #search.dropdown.search-dropdown.animating > .dropdown-menu.j-dropdown,
  .desktop-header-active header.header-compact #search.dropdown.search-dropdown.open.animating > .dropdown-menu.j-dropdown {
    position: absolute !important;
    top: calc(100% + 14px) !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 1180px !important;
    max-width: calc(100vw - 80px) !important;
    min-width: 900px !important;

    display: block !important;
    padding: 16px !important;
    margin: 0 !important;

    border-radius: 18px !important;
    background: rgba(255, 255, 255, 0.82) !important;
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.18) !important;
    border: 1px solid rgba(0, 0, 0, 0.06) !important;

    z-index: 10050 !important;
    overflow: visible !important;
  }

  /* -----------------------------------------
     HEADER / SEARCH INPUT WRAPPER
  ----------------------------------------- */
  .desktop-header-active header.header-compact #search .header-search {
    position: relative !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
  }

  /* -----------------------------------------
     HEADER / SEARCH CATEGORY SELECT
  ----------------------------------------- */
  .desktop-header-active header.header-compact #search .search-categories {
    flex: 0 0 90px !important;
    width: 90px !important;
    min-width: 90px !important;
    max-width: 90px !important;
  }

  /* -----------------------------------------
     HEADER / TYPEAHEAD WRAPPER
  ----------------------------------------- */
  .desktop-header-active header.header-compact #search .twitter-typeahead {
    display: inline-block !important;
    width: calc(100% - 140px) !important;
    vertical-align: top !important;
  }

  /* -----------------------------------------
     HEADER / SEARCH INPUT
  ----------------------------------------- */
  .desktop-header-active header.header-compact #search input.search-input,
  .desktop-header-active header.header-compact #search input.tt-input,
  .desktop-header-active header.header-compact #search-input-el {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 54px !important;
    line-height: 54px !important;
    padding: 0 18px !important;

    border-radius: 14px !important;
    border: 1px solid rgba(0, 0, 0, 0.08) !important;
    background: #ffffff !important;
    box-shadow: none !important;
  }

  /* -----------------------------------------
     HEADER / SEARCH BUTTON
  ----------------------------------------- */
  .desktop-header-active header.header-compact #search .search-button {
    height: 54px !important;
    width: 54px !important;
    min-width: 54px !important;
    border-radius: 14px !important;
    margin-left: 10px !important;
    position: relative !important;
    top: auto !important;
    right: auto !important;
  }

  /* -----------------------------------------
     HEADER / SEARCH PAGE RESET
  ----------------------------------------- */
  .desktop-header-active.search-page .header-compact .header-search,
  .desktop-header-active.search-page .header-compact .desktop-search-wrapper,
  .desktop-header-active.search-page .header-compact #search.dropdown.search-dropdown {
    min-width: 0 !important;
    width: auto !important;
    max-width: none !important;
    overflow: visible !important;
  }

  .desktop-header-active.search-page .header-compact .header-search input,
  .desktop-header-active.search-page .header-compact .header-search .search-input,
  .desktop-header-active.search-page .header-compact .header-search .tt-input {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
  }

  /* -----------------------------------------
     HEADER / TYPEAHEAD DROPDOWNS
  ----------------------------------------- */
  .desktop-header-active header.header-compact #search .tt-menu,
  .desktop-header-active header.header-compact #search .tt-dropdown-menu,
  .desktop-header-active header.header-compact #search .tt-empty,
  .desktop-header-active header.header-compact #search .autocomplete,
  .desktop-header-active header.header-compact #search .ui-autocomplete {
    width: 100% !important;
    margin-top: 10px !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    z-index: 10060 !important;
  }

  /* -----------------------------------------
     HEADER / BODY OFFSET WHEN STICKY
  ----------------------------------------- */
  body.desktop-header-active.header-sticky {
    padding-top: 120px !important;
  }

  body.desktop-header-active:not(.header-sticky) {
    padding-top: 0 !important;
  }

  .desktop-header-active.sticky-default:not(.sticky-menu) header {
    padding-bottom: 0 !important;
    pointer-events: auto !important;
  }
}

/* =========================================
   TABLET HEADER
========================================= */
@media (max-width: 991px) {
  .desktop-header-active.sticky-default header.header-compact,
  .desktop-header-active.header-sticky header.header-compact {
    width: calc(100% - 24px);
    top: 8px !important;
    border-radius: 16px;
  }
}

/* =========================================
   PRODUCT PAGE / DEFAULT STEPPER
========================================= */
.product-info .button-group-page .stepper {
  position: relative;
  width: 54px;
  min-width: 54px;
  height: 64px;
  border: 1px solid rgba(0,0,0,.10);
  border-radius: 18px;
  overflow: hidden;
  background: #f8f8f8;
  box-shadow: 0 4px 12px rgba(0,0,0,.05);
}

.product-info .button-group-page .stepper input.form-control,
.product-info .button-group-page .stepper #product-quantity {
  width: 100%;
  height: 100%;
  padding: 0;
  text-align: center;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 18px;
  font-weight: 600;
  line-height: 64px;
}

.product-info .button-group-page .stepper button.fa-angle-up,
.product-info .button-group-page .stepper button.fa-angle-down {
  position: absolute !important;
  left: 0 !important;
  width: 100% !important;
  height: 32px !important;
  min-height: 32px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: #4a4a4a !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  line-height: 1 !important;
  z-index: 3;
  transition: background .2s ease, color .2s ease, transform .2s ease;
}

.product-info .button-group-page .stepper button.fa-angle-up {
  top: 0 !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
}

.product-info .button-group-page .stepper button.fa-angle-down {
  bottom: 0 !important;
  border-top: 1px solid rgba(0,0,0,.08) !important;
}

.product-info .button-group-page .stepper button.fa-angle-up:before,
.product-info .button-group-page .stepper button.fa-angle-down:before {
  font-size: 14px !important;
  line-height: 1 !important;
}

.product-info .button-group-page .stepper button.fa-angle-up:hover,
.product-info .button-group-page .stepper button.fa-angle-down:hover {
  background: rgba(0,0,0,.04) !important;
  color: #111 !important;
}

.product-info .button-group-page .stepper button.fa-angle-up:active,
.product-info .button-group-page .stepper button.fa-angle-down:active {
  transform: scale(.98);
}

.product-info .button-group-page .stepper button {
  inset-inline: auto !important;
  right: auto !important;
  border-inline-width: 0 !important;
  border-block-width: 0 !important;
}

/* =========================================
   INFO BLOCKS / HIDE IMAGE IN SPECIFIC BLOCKS
========================================= */
.module-info_blocks-328 .auto-grid .module-item-1 .info-block-img {
  display: none;
}

.module-info_blocks-1155 .auto-grid .module-item-1 .info-block-img {
  display: none;
}

/* =========================================
   PRODUCT MODULE / SAFE BUTTON NORMALIZATION
   След rollback към оригинален Journal products.tpl
========================================= */
.product-thumb .button-group {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  flex-wrap: nowrap !important;
}

.product-thumb .button-group .btn,
.product-thumb .button-group a.btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 40px !important;
  line-height: 1.2 !important;
  text-align: center !important;
}

.product-thumb .button-group .btn-cart {
  min-width: 92px !important;
}

.product-thumb .button-group .btn-wishlist,
.product-thumb .button-group .btn-compare {
  min-width: 40px !important;
  width: 40px !important;
  height: 40px !important;
  padding: 0 !important;
}

.product-thumb .button-group .btn-text {
  white-space: nowrap !important;
}

/* =========================================
   PRODUCT MODULE / GRID CARD BALANCE
========================================= */
.module-products-grid .product-thumb .caption,
.module-products-carousel .product-thumb .caption {
  min-height: 120px;
}

.module-products-grid .product-thumb .name,
.module-products-carousel .product-thumb .name {
  min-height: 56px;
}

/* =========================================
   PRODUCT MODULE / LIST MODE STABILITY
========================================= */
.product-list .product-thumb {
  display: flex !important;
  align-items: flex-start !important;
}

.product-list .product-thumb .image {
  flex: 0 0 260px !important;
  max-width: 260px !important;
}

.product-list .product-thumb .caption {
  flex: 1 1 auto !important;
  padding-left: 20px !important;
}

.product-list .product-thumb .button-group {
  margin-top: 14px !important;
}

/* =========================================
   SEARCH DROPDOWN / Z-INDEX FIX
========================================= */
@media (min-width: 992px) {
  .desktop-header-active header.header-compact #search.dropdown.search-dropdown {
    position: relative !important;
    z-index: 20000 !important;
  }

  .desktop-header-active header.header-compact #search.dropdown.search-dropdown.open > .dropdown-menu.j-dropdown,
  .desktop-header-active header.header-compact #search.dropdown.search-dropdown.animating > .dropdown-menu.j-dropdown,
  .desktop-header-active header.header-compact #search.dropdown.search-dropdown.open.animating > .dropdown-menu.j-dropdown {
    position: absolute !important;
    z-index: 20001 !important;
  }

  .desktop-header-active header.header-compact #search .tt-menu,
  .desktop-header-active header.header-compact #search .tt-dropdown-menu,
  .desktop-header-active header.header-compact #search .autocomplete,
  .desktop-header-active header.header-compact #search .ui-autocomplete,
  .desktop-header-active header.header-compact #search .journal-search-results,
  .desktop-header-active header.header-compact #search .search-results {
    z-index: 20002 !important;
    position: relative !important;
  }

  #product-product,
  #product-product .product-info,
  #product-product .product-left,
  #product-product .product-right,
  #product-product .product-details,
  #product-product .product-options,
  #product-product .button-group-page,
  #product-product .wishlist-compare,
  #product-product .product-stats,
  #product-product .product-price-group,
  #product-product .product-side-position {
    position: relative !important;
    z-index: 1 !important;
  }
}

/* =========================================================
   WRS CUSTOM PRODUCT CARDS
   Работи само за products_custom.tpl
   Без влияние върху стандартните Journal листинги
========================================================= */

.wrs-card-layout {
  width: 100%;
  margin-bottom: 28px;
}

.wrs-card-layout .wrs-card {
  display: grid !important;
  grid-template-columns: 370px minmax(0, 1fr) 380px !important;
  min-height: 520px !important;
  padding: 0 !important;
  background: #ffffff !important;
  border: 1px solid #dfe5ee !important;
  border-radius: 28px !important;
  overflow: hidden !important;
  box-shadow: 0 10px 26px rgba(17, 34, 68, 0.08) !important;
}

.wrs-card-layout .wrs-card__left {
  position: relative !important;
  background: #ffffff !important;
  border-right: 1px solid #dfe8f3 !important;
  padding: 22px !important;
}

.wrs-card-layout .wrs-card__center {
  background: #ffffff !important;
  padding: 34px 34px 30px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

.wrs-card-layout .wrs-card__right {
  background: #f7f9fc !important;
  border-left: 1px solid #e3ebf5 !important;
  padding: 34px 28px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

.wrs-card-layout .wrs-card__image-wrap {
  position: relative !important;
  width: 100% !important;
  min-height: 420px !important;
  height: 100% !important;
  background: #ffffff !important;
  border: 1px solid #e6edf6 !important;
  border-radius: 18px !important;
  overflow: hidden !important;
}

.wrs-card-layout .wrs-card__image-link {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 420px !important;
  text-decoration: none !important;
  padding: 20px !important;
}

.wrs-card-layout .wrs-card__image {
  max-width: 100% !important;
  max-height: 360px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto !important;
}

.wrs-card-layout .wrs-card__bonus {
  position: absolute !important;
  top: 28px !important;
  left: 24px !important;
  z-index: 5 !important;
  max-width: 165px !important;
  color: #17325d !important;
  font-size: 18px !important;
  line-height: 1.05 !important;
  font-weight: 800 !important;
}

.wrs-card-layout .wrs-card__badges {
  position: absolute !important;
  right: 14px !important;
  bottom: 20px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  z-index: 5 !important;
}

.wrs-card-layout .wrs-card__badges span {
  width: 82px !important;
  height: 82px !important;
  border-radius: 50% !important;
  background: #1ff1ec !important;
  color: #1b2416 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 6px !important;
  font-size: 14px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  box-shadow: inset 0 0 0 2px rgba(28,37,23,.08), 0 6px 14px rgba(0,0,0,.06) !important;
}

.wrs-card-layout .wrs-card__labels {
  position: absolute !important;
  z-index: 6 !important;
  pointer-events: none !important;
}

.wrs-card-layout .wrs-card__name {
  margin: 0 0 14px !important;
}

.wrs-card-layout .wrs-card__name a {
  color: #101114 !important;
  font-size: 26px !important;
  line-height: 1.12 !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.wrs-card-layout .wrs-card__subtitle {
  color: #687487 !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  margin-bottom: 18px !important;
  max-width: 92% !important;
}

.wrs-card-layout .wrs-card__tags {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-bottom: 22px !important;
}

.wrs-card-layout .wrs-card__tags span {
  padding: 8px 16px !important;
  border-radius: 999px !important;
  background: #eef3fb !important;
  border: 1px solid #d7e1ee !important;
  color: #18335f !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

.wrs-card-layout .wrs-card__price {
  margin-bottom: 24px !important;
}

.wrs-card-layout .wrs-card__price-labels {
  display: block !important;
  margin-bottom: 12px !important;
}

.wrs-card-layout .wrs-card__price-labels .product-label {
  background: #ff2d2d !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
  margin-right: 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.wrs-card-layout .wrs-card__price-labels .product-label strong {
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

.wrs-card-layout .wrs-card__price-row {
  display: flex !important;
  align-items: baseline !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

.wrs-card-layout .wrs-card__price-new {
  color: #163168 !important;
  font-size: 36px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
}

.wrs-card-layout .wrs-card__price-old {
  color: #97a1b1 !important;
  font-size: 28px !important;
  font-weight: 500 !important;
  text-decoration: line-through !important;
}

.wrs-card-layout .wrs-card__tax {
  margin-top: 8px !important;
  color: #6b7280 !important;
  font-size: 13px !important;
}

.wrs-card-layout .wrs-card__actions {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  margin-bottom: 8px !important;
}

.wrs-card-layout .wrs-card__qty {
  width: 168px !important;
  min-width: 168px !important;
  max-width: 168px !important;
  height: 60px !important;
  min-height: 60px !important;
  max-height: 60px !important;
  padding: 0 8px !important;
  margin: 0 !important;
  border: 2px solid #d7dfeb !important;
  border-radius: 999px !important;
  background: #f8fbff !important;
  box-shadow: none !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
}

.wrs-card-layout .wrs-card__qty-btn {
  flex: 0 0 40px !important;
  width: 40px !important;
  min-width: 40px !important;
  max-width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #d3dbe8 !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  color: #152f5f !important;
  font-size: 28px !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: none !important;
  cursor: pointer !important;
}

.wrs-card-layout .wrs-card__qty-btn:hover {
  background: #1a4fc3 !important;
  border-color: #1a4fc3 !important;
  color: #ffffff !important;
}

.wrs-card-layout .wrs-card__qty-input {
  flex: 0 0 42px !important;
  width: 42px !important;
  min-width: 42px !important;
  max-width: 42px !important;
  height: 54px !important;
  min-height: 54px !important;
  max-height: 54px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: none !important;
  color: #152f5f !important;
  font-size: 26px !important;
  font-weight: 800 !important;
  line-height: 54px !important;
  text-align: center !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

.wrs-card-layout .wrs-card__buy {
  min-width: 240px !important;
  height: 60px !important;
  padding: 0 30px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #1f57d5 0%, #143d99 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 24px rgba(20, 61, 153, 0.22) !important;
  font-size: 21px !important;
  font-weight: 900 !important;
  text-transform: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  letter-spacing: 0.2px !important;
}

.wrs-card-layout .wrs-card__buy .btn-text {
  font-size: 21px !important;
  font-weight: 900 !important;
}

.wrs-card-layout .wrs-card__service {
  margin-bottom: 24px !important;
  color: #17325d !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
  font-weight: 800 !important;
}

.wrs-card-layout .wrs-card__features {
  list-style: none !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
}

.wrs-card-layout .wrs-card__features li {
  position: relative !important;
  padding-left: 22px !important;
  margin-bottom: 14px !important;
  color: #354052 !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  font-weight: 700 !important;
}

.wrs-card-layout .wrs-card__features li:before {
  content: "" !important;
  position: absolute !important;
  top: 8px !important;
  left: 0 !important;
  width: 10px !important;
  height: 10px !important;
  border-radius: 50% !important;
  background: #2254c7 !important;
}

.wrs-card-layout .wrs-card__more {
  min-width: 260px !important;
  height: 64px !important;
  padding: 0 32px !important;
  border: 2px solid #b6c4da !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.55) !important;
  color: #17325d !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}

@media (max-width: 1599px) {
  .wrs-card-layout .wrs-card {
    grid-template-columns: 320px minmax(0, 1fr) 330px !important;
    min-height: 470px !important;
  }

  .wrs-card-layout .wrs-card__price-new {
    font-size: 36px !important;
  }
}

@media (max-width: 1199px) {
  .wrs-card-layout .wrs-card {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
  }

  .wrs-card-layout .wrs-card__left,
  .wrs-card-layout .wrs-card__center,
  .wrs-card-layout .wrs-card__right {
    border: 0 !important;
  }

  .wrs-card-layout .wrs-card__left {
    border-bottom: 1px solid #e6ebf2 !important;
  }

  .wrs-card-layout .wrs-card__right {
    border-top: 1px solid #e6ebf2 !important;
  }

  .wrs-card-layout .wrs-card__image-wrap {
    min-height: 320px !important;
  }

  .wrs-card-layout .wrs-card__actions {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .wrs-card-layout .wrs-card__qty,
  .wrs-card-layout .wrs-card__buy,
  .wrs-card-layout .wrs-card__more {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }
}

/* =========================================================
   WRS CUSTOM PRODUCT CARDS - FINAL SAFE STYLE
   Работи само за products_custom.tpl
========================================================= */

.wrs-card-layout {
  width: 100%;
  margin-bottom: 28px;
}

.wrs-card-layout .wrs-card {
  display: grid !important;
  grid-template-columns: 370px minmax(0, 1fr) 380px !important;
  min-height: 520px !important;
  padding: 0 !important;
  background: #ffffff !important;
  border: 1px solid #dfe5ee !important;
  border-radius: 28px !important;
  overflow: hidden !important;
  box-shadow: 0 10px 26px rgba(17, 34, 68, 0.08) !important;
}

.wrs-card-layout .wrs-card__left {
  position: relative !important;
  background: #ffffff !important;
  border-right: 1px solid #dfe8f3 !important;
  padding: 22px !important;
}

.wrs-card-layout .wrs-card__center {
  background: #ffffff !important;
  padding: 34px 34px 30px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

.wrs-card-layout .wrs-card__right {
  background: #f7f9fc !important;
  border-left: 1px solid #e3ebf5 !important;
  padding: 34px 28px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

.wrs-card-layout .wrs-card__image-wrap {
  position: relative !important;
  width: 100% !important;
  min-height: 420px !important;
  height: 100% !important;
  background: #ffffff !important;
  border: 1px solid #e6edf6 !important;
  border-radius: 18px !important;
  overflow: hidden !important;
}

.wrs-card-layout .wrs-card__image-link {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 420px !important;
  text-decoration: none !important;
  padding: 20px !important;
}

.wrs-card-layout .wrs-card__image {
  max-width: 100% !important;
  max-height: 360px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto !important;
}

.wrs-card-layout .wrs-card__bonus {
  position: absolute !important;
  top: 28px !important;
  left: 24px !important;
  z-index: 5 !important;
  max-width: 165px !important;
  color: #17325d !important;
  font-size: 18px !important;
  line-height: 1.05 !important;
  font-weight: 800 !important;
}

.wrs-card-layout .wrs-card__badges {
  position: absolute !important;
  right: 14px !important;
  bottom: 20px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  z-index: 5 !important;
}

.wrs-card-layout .wrs-card__badges span {
  width: 82px !important;
  height: 82px !important;
  border-radius: 50% !important;
  background: #1ff1ec !important;
  color: #1b2416 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  padding: 6px !important;
  font-size: 14px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  box-shadow: inset 0 0 0 2px rgba(28,37,23,.08), 0 6px 14px rgba(0,0,0,.06) !important;
}

.wrs-card-layout .wrs-card__labels {
  position: absolute !important;
  z-index: 6 !important;
  pointer-events: none !important;
}

.wrs-card-layout .wrs-card__name {
  margin: 0 0 14px !important;
}

.wrs-card-layout .wrs-card__name a {
  color: #101114 !important;
  font-size: 26px !important;
  line-height: 1.12 !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.wrs-card-layout .wrs-card__subtitle {
  color: #687487 !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  margin-bottom: 18px !important;
  max-width: 92% !important;
}

.wrs-card-layout .wrs-card__tags {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-bottom: 22px !important;
}

.wrs-card-layout .wrs-card__tags span {
  padding: 8px 16px !important;
  border-radius: 999px !important;
  background: #eef3fb !important;
  border: 1px solid #d7e1ee !important;
  color: #18335f !important;
  font-size: 13px !important;
  font-weight: 700 !important;
}

.wrs-card-layout .wrs-card__price {
  margin-bottom: 24px !important;
}

.wrs-card-layout .wrs-card__price-labels {
  display: block !important;
  margin-bottom: 12px !important;
}

.wrs-card-layout .wrs-card__price-labels .product-label {
  background: #ff2d2d !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
  margin-right: 10px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.wrs-card-layout .wrs-card__price-labels .product-label strong {
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
}

.wrs-card-layout .wrs-card__price-row {
  display: flex !important;
  align-items: baseline !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

.wrs-card-layout .wrs-card__price-new {
  color: #163168 !important;
  font-size: 36px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
}

.wrs-card-layout .wrs-card__price-old {
  color: #97a1b1 !important;
  font-size: 28px !important;
  font-weight: 500 !important;
  text-decoration: line-through !important;
}

.wrs-card-layout .wrs-card__tax {
  margin-top: 8px !important;
  color: #6b7280 !important;
  font-size: 13px !important;
}

.wrs-card-layout .wrs-card__actions {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  margin-bottom: 8px !important;
}

.wrs-card-layout .wrs-card__qty {
  width: 168px !important;
  min-width: 168px !important;
  max-width: 168px !important;
  height: 60px !important;
  min-height: 60px !important;
  max-height: 60px !important;
  padding: 0 8px !important;
  margin: 0 !important;
  border: 2px solid #d7dfeb !important;
  border-radius: 999px !important;
  background: #f8fbff !important;
  box-shadow: none !important;
  position: relative !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
}

.wrs-card-layout .wrs-card__qty-btn {
  flex: 0 0 40px !important;
  width: 40px !important;
  min-width: 40px !important;
  max-width: 40px !important;
  height: 40px !important;
  min-height: 40px !important;
  max-height: 40px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid #d3dbe8 !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  box-shadow: none !important;
  overflow: hidden !important;
  cursor: pointer !important;
}

.wrs-card-layout .wrs-card__qty-minus::before,
.wrs-card-layout .wrs-card__qty-plus::before {
  position: absolute !important;
  inset: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: Arial, sans-serif !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  color: #152f5f !important;
}

.wrs-card-layout .wrs-card__qty-minus::before {
  content: "-" !important;
  font-size: 28px !important;
}

.wrs-card-layout .wrs-card__qty-plus::before {
  content: "+" !important;
  font-size: 28px !important;
}

.wrs-card-layout .wrs-card__qty-btn:hover {
  background: #1a4fc3 !important;
  border-color: #1a4fc3 !important;
}

.wrs-card-layout .wrs-card__qty-btn:hover::before {
  color: #ffffff !important;
}

.wrs-card-layout .wrs-card__qty-input {
  flex: 0 0 42px !important;
  width: 42px !important;
  min-width: 42px !important;
  max-width: 42px !important;
  height: 54px !important;
  min-height: 54px !important;
  max-height: 54px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  outline: none !important;
  color: #152f5f !important;
  font-size: 26px !important;
  font-weight: 800 !important;
  line-height: 54px !important;
  text-align: center !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

.wrs-card-layout .wrs-card__buy,
.wrs-card-layout .wrs-card__buy.btn,
.wrs-card-layout .wrs-card__buy.btn .btn-text {
  font-size: 21px !important;
  font-weight: 900 !important;
  letter-spacing: 0.2px !important;
}

.wrs-card-layout .wrs-card__buy {
  min-width: 240px !important;
  height: 60px !important;
  padding: 0 30px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, #1f57d5 0%, #143d99 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 24px rgba(20, 61, 153, 0.22) !important;
  text-transform: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}

.wrs-card-layout .wrs-card__service {
  margin-bottom: 24px !important;
  color: #17325d !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
  font-weight: 800 !important;
}

.wrs-card-layout .wrs-card__features {
  list-style: none !important;
  margin: 0 0 24px !important;
  padding: 0 !important;
}

.wrs-card-layout .wrs-card__features li {
  position: relative !important;
  padding-left: 22px !important;
  margin-bottom: 14px !important;
  color: #354052 !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  font-weight: 700 !important;
}

.wrs-card-layout .wrs-card__features li::before {
  content: "" !important;
  position: absolute !important;
  top: 4px !important;
  left: 0 !important;
  width: 10px !important;
  height: 10px !important;
  border-radius: 50% !important;
  background: #2254c7 !important;
}

.wrs-card-layout .wrs-card__more {
  min-width: 260px !important;
  height: 64px !important;
  padding: 0 32px !important;
  border: 2px solid #b6c4da !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.55) !important;
  color: #17325d !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
}

@media (max-width: 1599px) {
  .wrs-card-layout .wrs-card {
    grid-template-columns: 320px minmax(0, 1fr) 330px !important;
    min-height: 470px !important;
  }

  .wrs-card-layout .wrs-card__price-new {
    font-size: 36px !important;
  }
}

@media (max-width: 1199px) {
  .wrs-card-layout .wrs-card {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
  }

  .wrs-card-layout .wrs-card__left,
  .wrs-card-layout .wrs-card__center,
  .wrs-card-layout .wrs-card__right {
    border: 0 !important;
  }

  .wrs-card-layout .wrs-card__left {
    border-bottom: 1px solid #e6ebf2 !important;
  }

  .wrs-card-layout .wrs-card__right {
    border-top: 1px solid #e6ebf2 !important;
  }

  .wrs-card-layout .wrs-card__image-wrap {
    min-height: 320px !important;
  }

  .wrs-card-layout .wrs-card__actions {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .wrs-card-layout .wrs-card__qty,
  .wrs-card-layout .wrs-card__buy,
  .wrs-card-layout .wrs-card__more {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }
}

/* =========================================
   WRS CUSTOM CARDS - FINAL FIXES
========================================= */

/* 1) маха текста "+ Подарък карта памет" в лявата колона */
.wrs-card-layout .wrs-card__bonus {
  display: none !important;
}

/* 2) центрира съдържанието на дясната колона по височина */
.wrs-card-layout .wrs-card__right {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  height: 100% !important;
  min-height: 100% !important;
}

/* 3) оправя бутона "Купи" да показва текста */
.wrs-card-layout .wrs-card__buy,
.wrs-card-layout .wrs-card__buy.btn {
  color: #ffffff !important;
  font-size: 21px !important;
  font-weight: 900 !important;
  text-indent: 0 !important;
  overflow: visible !important;
}

.wrs-card-layout .wrs-card__buy .btn-text,
.wrs-card-layout .wrs-card__buy.btn .btn-text {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  font-size: 21px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  opacity: 1 !important;
  visibility: visible !important;
  text-indent: 0 !important;
  white-space: nowrap !important;
}

/* предпазен фикс ако Journal крие текста в бутона */
.wrs-card-layout .wrs-card__buy:before,
.wrs-card-layout .wrs-card__buy:after,
.wrs-card-layout .wrs-card__buy .btn-text:before,
.wrs-card-layout .wrs-card__buy .btn-text:after {
  color: inherit !important;
}

/* =========================================
   WRS CUSTOM CARDS - HIDE TAX
========================================= */

.wrs-card-layout .wrs-card__tax {
  display: none !important;
}



/* =========================================
   MOBILE STICKY HEADER - STANDARD -> ISLAND
========================================= */
@media (max-width: 991px) {

  /* normal state - стандартен mobile header */
  .mobile-header-active.mobile-sticky-default header.header-compact {
    position: sticky !important;
    top: 0 !important;
    left: auto !important;
    right: auto !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    transform: none !important;
    -webkit-transform: none !important;

    border-radius: 0 !important;
    overflow: visible !important;

    background: transparent !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
    border: 0 !important;

    z-index: 120 !important;
    transition:
      top .25s ease,
      box-shadow .25s ease,
      background .25s ease,
      border-radius .25s ease;
  }

  /* sticky state - island / glass */
  .mobile-header-active.mobile-sticky-default.is-sticky header.header-compact,
  .mobile-header-active.mobile-sticky-default[data-sticky="is-sticky"] header.header-compact,
  .mobile-header-active.mobile-sticky-default body.header-sticky header.header-compact,
  .mobile-header-active.mobile-sticky-default header.header-sticky.header-compact,
  .mobile-header-active.mobile-sticky-default header.is-sticky.header-compact {
    top: 8px !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    transform: none !important;
    -webkit-transform: none !important;

    border-radius: 16px !important;
    overflow: visible !important;

    background: rgba(245, 247, 250, 0.82) !important;
    -webkit-backdrop-filter: blur(18px) saturate(140%) !important;
    backdrop-filter: blur(18px) saturate(140%) !important;

    box-shadow:
      0 12px 30px rgba(0, 0, 0, 0.14),
      0 4px 12px rgba(0, 0, 0, 0.08) !important;

    border: 1px solid rgba(255, 255, 255, 0.45) !important;
    z-index: 9999 !important;
  }

  /* вътрешният mobile контейнер */
  .mobile-header-active header.header-compact > .mobile-header {
    background: transparent !important;
    overflow: visible !important;
    border-radius: 0 !important;
  }

  /* заобляне само при sticky island */
  .mobile-header-active.mobile-sticky-default.is-sticky header.header-compact > .mobile-header,
  .mobile-header-active.mobile-sticky-default[data-sticky="is-sticky"] header.header-compact > .mobile-header,
  .mobile-header-active.mobile-sticky-default body.header-sticky header.header-compact > .mobile-header,
  .mobile-header-active.mobile-sticky-default header.header-sticky.header-compact > .mobile-header,
  .mobile-header-active.mobile-sticky-default header.is-sticky.header-compact > .mobile-header {
    border-radius: 16px !important;
    overflow: hidden !important;
  }

  /* вътрешните mobile елементи без собствен фон */
  .mobile-header-active header.header-compact .mobile-top-bar,
  .mobile-header-active header.header-compact .mobile-bar,
  .mobile-header-active header.header-compact .mobile-bar-group,
  .mobile-header-active header.header-compact .mobile-logo-wrapper {
    background: transparent !important;
  }

  /* cleaner padding */
  .mobile-header-active header.header-compact .mobile-bar {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  /* компенсация само когато е sticky island */
  .mobile-header-active.mobile-sticky-default.is-sticky body,
  body.mobile-header-active.mobile-sticky-default.header-sticky,
  body.mobile-header-active.mobile-sticky-default[data-sticky="is-sticky"] {
    padding-top: 76px !important;
  }
}


/* =========================================
   MOBILE STICKY HEADER - FIX TRANSITION BLEED
========================================= */
@media (max-width: 991px) {

  /* normal mobile header */
  .mobile-header-active.mobile-sticky-default header.header-compact {
    background: #f7f8fa !important;
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
    border: 0 !important;
  }

  /* sticky / moving / active state */
  .mobile-header-active.mobile-sticky-default.is-sticky header.header-compact,
  html[data-sticky="is-sticky"] .mobile-header-active.mobile-sticky-default header.header-compact,
  body.header-sticky .mobile-header-active.mobile-sticky-default header.header-compact,
  .mobile-header-active.mobile-sticky-default header.header-sticky.header-compact,
  .mobile-header-active.mobile-sticky-default header.is-sticky.header-compact,
  .mobile-header-active.mobile-sticky-default header[style*="position: sticky"],
  .mobile-header-active.mobile-sticky-default header[style*="position:fixed"],
  .mobile-header-active.mobile-sticky-default header[style*="position: fixed"] {
    background: rgba(247, 248, 250, 0.98) !important;
    -webkit-backdrop-filter: blur(18px) saturate(140%) !important;
    backdrop-filter: blur(18px) saturate(140%) !important;
    box-shadow:
      0 12px 30px rgba(0, 0, 0, 0.14),
      0 4px 12px rgba(0, 0, 0, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.65) !important;
  }

  /* без fade на background, за да няма "прозиращ" момент */
  .mobile-header-active.mobile-sticky-default header.header-compact {
    transition:
      top .22s ease,
      left .22s ease,
      right .22s ease,
      box-shadow .22s ease,
      border-radius .22s ease !important;
  }

  /* вътрешните ленти да не стават полупрозрачни отделно */
  .mobile-header-active header.header-compact .mobile-header,
  .mobile-header-active header.header-compact .mobile-bar,
  .mobile-header-active header.header-compact .mobile-bar-group,
  .mobile-header-active header.header-compact .mobile-logo-wrapper,
  .mobile-header-active header.header-compact .mobile-top-bar {
    background: transparent !important;
  }
}


/* =========================================
   OFF-CANVAS OVER HEADER FIX
   Mobile menu / cart / filters over island header
========================================= */

/* overlay над header-а */
.site-overlay,
.mobile-container,
.mobile-main-menu-container,
.desktop-mobile-main-menu-container,
.mobile-filter-container,
.mobile-cart-content-container {
  z-index: 10050 !important;
}

/* самите off-canvas панели да са най-отгоре */
.mobile-main-menu-container,
.desktop-mobile-main-menu-container,
.mobile-filter-container,
.mobile-cart-content-container,
.mobile-side-menu,
.mobile-menu,
.cart-content,
.cart-panel,
.side-panel,
.panel-group {
  z-index: 10060 !important;
}

/* ако Journal ползва вътрешни wrappers */
.mobile-main-menu-container > *,
.desktop-mobile-main-menu-container > *,
.mobile-filter-container > *,
.mobile-cart-content-container > * {
  z-index: 10061 !important;
  position: relative;
}

/* header-ът остава под off-canvas */
@media (max-width: 991px) {
  .mobile-header-active.mobile-sticky-default header.header-compact {
    z-index: 9999 !important;
  }
}

@media (min-width: 992px) {
  .desktop-header-active.header-sticky header.header-compact {
    z-index: 9999 !important;
  }
}

/* когато има overlay, той да покрива header-а */
.site-overlay {
  position: fixed !important;
  inset: 0 !important;
}