﻿:root {
  --os-black: #050505;
  --os-black-2: #080808;
  --os-black-3: #0d0d0d;

  --os-gold: #d6a230;
  --os-gold-2: #e5bd56;
  --os-gold-soft: rgba(214, 162, 48, 0.20);
  --os-gold-border: rgba(214, 162, 48, 0.32);

  --os-text: #ffffff;
  --os-text-soft: #e5e5e5;
  --os-muted: #a7a7a7;

  --os-container: 1320px;
  --os-side-space: 24px;

  --os-topbar-height: 46px;
  --os-header-height: 122px;

  --os-logo-space: 470px;
  --os-logo-img-width: 360px;
  --os-logo-img-height: 150px;
  --os-logo-scale: 1.45;

  --os-line-top: rgba(214, 162, 48, 0.16);
  --os-line-bottom: rgba(214, 162, 48, 0.22);
  --os-line-hero: rgba(214, 162, 48, 0.20);
}

/* ============================================================
   02. ZAKLAD
   ============================================================ */

html,
body {
  background: var(--os-black) !important;
  color: var(--os-text) !important;
}

body {
  font-family: Arial, Helvetica, sans-serif;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

#wrapper {
  padding-top: 0 !important;
  color: var(--os-text) !important;
  background:
    radial-gradient(circle at top center, rgba(214, 162, 48, 0.10), transparent 34%),
    linear-gradient(180deg, #050505 0%, #080808 50%, #050505 100%) !important;
}

main {
  position: relative;
  z-index: 1;
}

.container {
  width: 100%;
  max-width: var(--os-container);
}

a {
  color: var(--os-gold);
  text-decoration: none;
  transition:
    color 0.2s ease,
    background 0.2s ease,
    border-color 0.2s ease,
    transform 0.2s ease,
    box-shadow 0.2s ease,
    padding 0.2s ease;
}

a:hover {
  color: var(--os-gold-2);
  text-decoration: none;
}

h1,
h2,
h3,
h4,
.h1,
.h2,
.h3,
.h4 {
  color: var(--os-text);
  text-transform: uppercase;
  font-weight: 900;
  letter-spacing: 0.04em;
}

/* ============================================================
   03. HEADER
   ============================================================ */

#header {
  position: relative !important;
  z-index: 10000 !important;
  overflow: visible !important;
  background: var(--os-black) !important;
  border: 0 !important;
  box-shadow: 0 10px 35px rgba(0, 0, 0, 0.65) !important;
}

#header,
#header * {
  box-sizing: border-box;
}

/* ============================================================
   04. TOP BAR
   ============================================================ */

#header .header-nav {
  height: var(--os-topbar-height) !important;
  min-height: var(--os-topbar-height) !important;
  max-height: var(--os-topbar-height) !important;
  background: #030303 !important;
  color: var(--os-gold) !important;
  border-bottom: 1px solid rgba(214, 162, 48, 0.16) !important;
  overflow: hidden !important;
}

#header .header-nav .container {
  width: 100% !important;
  max-width: var(--os-container) !important;
  height: var(--os-topbar-height) !important;
  margin: 0 auto !important;
  padding-left: var(--os-side-space) !important;
  padding-right: var(--os-side-space) !important;
}

#header .header-nav .container > .row,
#header .header-nav .hidden-sm-down {
  width: 100% !important;
  height: var(--os-topbar-height) !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
}

#header .header-nav [class*="col-"] {
  padding: 0 !important;
  margin: 0 !important;

}

#contact-link {
  display: none !important;
}

#header .header-nav .left-nav {
  height: var(--os-topbar-height) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin: 0 auto 0 0 !important;
  padding: 0 !important;
  flex: 1 1 auto !important;
}

#header .header-nav .right-nav {
  height: var(--os-topbar-height) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 14px !important;
  margin-left: auto !important;
  padding: 0 !important;
  flex: 0 0 auto !important;
}

#_desktop_user_info,
#_desktop_user_info .user-info,
#_desktop_cart {
  height: var(--os-topbar-height) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}

#_desktop_cart .blockcart {
  width: auto !important;
  min-width: 0 !important;
  height: var(--os-topbar-height) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 18px !important;
  gap: 7px !important;
  background: rgba(214, 162, 48, 0.10) !important;
  border-left: 1px solid rgba(214, 162, 48, 0.22) !important;
  border-right: 1px solid rgba(214, 162, 48, 0.10) !important;
  color: var(--os-gold-2) !important;
  white-space: nowrap !important;
}

#_desktop_cart .blockcart .header {
  height: var(--os-topbar-height) !important;
  display: flex !important;
  align-items: center !important;
  flex-direction: row !important;
  gap: 7px !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: nowrap !important;
}

#_desktop_user_info a,
#_desktop_cart a,
#header .header-nav a {
  height: var(--os-topbar-height) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  padding: 0 10px !important;
  margin: 0 !important;
  line-height: 1 !important;
  color: var(--os-gold) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  white-space: nowrap !important;
  text-decoration: none !important;
}

#_desktop_user_info a:hover,
#_desktop_cart a:hover,
#header .header-nav a:hover {
  color: #ffffff !important;
}

#_desktop_user_info span,
#_desktop_cart span,
#_desktop_cart .cart-products-count,
#_desktop_cart .blockcart .header a,
#_desktop_cart .blockcart .header span,
#_desktop_cart .blockcart .header i {
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

#_desktop_cart .cart-products-count {
  margin-left: 2px !important;
}

#header .header-nav .material-icons,
#_desktop_user_info .material-icons,
#_desktop_cart .material-icons,
#_desktop_cart .blockcart .material-icons {
  width: 21px !important;
  min-width: 21px !important;
  height: 21px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 21px !important;
  line-height: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--os-gold) !important;
}

#_desktop_user_info .os-header-account {
  gap: 0 !important;
  justify-content: flex-end !important;
  border-left: 1px solid rgba(214,162,48,0.18) !important;
}

#header .header-nav .right-nav > .user-info.os-header-account {
  height: var(--os-topbar-height) !important;
  min-height: var(--os-topbar-height) !important;
  max-height: var(--os-topbar-height) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
}

#header .header-nav .right-nav > .user-info.os-header-account > a {
  height: var(--os-topbar-height) !important;
  min-height: var(--os-topbar-height) !important;
  max-height: var(--os-topbar-height) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  line-height: 1 !important;
}

#_desktop_user_info .os-header-account a {
  position: relative !important;
  height: var(--os-topbar-height) !important;
  padding: 0 12px !important;
  gap: 7px !important;
  color: var(--os-gold) !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
  line-height: var(--os-topbar-height) !important;
}

#_desktop_user_info .os-header-account a::before,
#_desktop_user_info .os-header-account a::after {
  content: none !important;
  display: none !important;
}

#_desktop_user_info .os-header-account .os-header-account__icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--os-gold) !important;
  font-size: 18px !important;
  line-height: 18px !important;
}

#_desktop_user_info .os-header-account__name {
  color: #f4c642 !important;
  min-width: 0 !important;
}

#_desktop_user_info .os-header-account__name span {
  display: inline-block !important;
  max-width: 130px !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

#_desktop_user_info .os-header-account__logout {
  color: rgba(244,198,66,0.86) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  align-self: center !important;
}

#_desktop_user_info .os-header-account__logout::after {
  content: "" !important;
  display: block !important;
  position: absolute !important;
  right: 0 !important;
  top: 13px !important;
  bottom: 13px !important;
  width: 1px !important;
  background: rgba(214,162,48,0.18) !important;
}

#_desktop_user_info .os-header-account a:hover {
  color: #ffffff !important;
}

/* ============================================================
   05. HLAVNY HEADER - LOGO + MENU
   ============================================================ */

#header #search_widget,
#header #_desktop_search,
#search_widget,
#header .search-widget,
#header .header-top .position-static > .row > div:has(#search_widget),
#header .header-top .position-static > .row > div:has(.search-widget) {
  display: none !important;
}

#header .header-top {
  height: var(--os-header-height) !important;
  min-height: var(--os-header-height) !important;
  max-height: var(--os-header-height) !important;
  padding: 0 !important;
  position: relative !important;
  overflow: visible !important;
  border: 0 !important;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.28) 0%, rgba(0,0,0,0.08) 45%, rgba(0,0,0,0.18) 100%),
    url("../img/offroad_header_background_tire_tracks.png") center center / cover no-repeat,
    #050505 !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.04),
    0 12px 34px rgba(0,0,0,0.70) !important;
}

#header .header-top::before,
#header .header-top::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  height: 1px;
  z-index: 5;
  pointer-events: none;
}

#header .header-top::before {
  top: 0;
  background: var(--os-line-top);
}

#header .header-top::after {
  bottom: -1px;
  background: var(--os-line-bottom);
}

#header .header-top .container {
  width: 100% !important;
  max-width: var(--os-container) !important;
  height: var(--os-header-height) !important;
  margin: 0 auto !important;
  padding-left: var(--os-side-space) !important;
  padding-right: var(--os-side-space) !important;
  position: relative !important;
  background: transparent !important;
  overflow: visible !important;
}

#header .header-top .container > .row,
#header .header-top .position-static,
#header .header-top .position-static > .row,
#header .header-top [class*="col-"] {
  width: 100% !important;
  max-width: none !important;
  height: var(--os-header-height) !important;
  min-height: var(--os-header-height) !important;
  max-height: var(--os-header-height) !important;
  margin: 0 !important;
  padding: 0 !important;
  position: static !important;
  display: block !important;
  background: transparent !important;
  flex: none !important;
  overflow: visible !important;
}

#header #_desktop_logo {
  position: absolute !important;
  left: var(--os-side-space) !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: var(--os-logo-space) !important;
  max-width: var(--os-logo-space) !important;
  height: 190px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 100 !important;
  overflow: visible !important;
}

#header #_desktop_logo a {
  width: 100% !important;
  height: 190px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
}

#header #_desktop_logo img,
#header #_desktop_logo .logo,
#header .logo {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: var(--os-logo-img-width) !important;
  max-height: var(--os-logo-img-height) !important;
  object-fit: contain !important;
  margin: 0 !important;
  transform: scale(var(--os-logo-scale)) !important;
  transform-origin: left center !important;
}

#header #_desktop_top_menu {
  position: absolute !important;
  right: var(--os-side-space) !important;
  left: var(--os-logo-space) !important;
  top: 0 !important;
  width: auto !important;
  height: var(--os-header-height) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 80 !important;
  background: transparent !important;
  overflow: visible !important;
}

#header .top-menu {
  position: relative !important;
  width: auto !important;
  height: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  flex-wrap: nowrap !important;
  gap: clamp(22px, 2.4vw, 38px) !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  overflow: visible !important;
}

#header .top-menu > li {
  position: relative !important;
  height: var(--os-header-height) !important;
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  overflow: visible !important;
}

#header .top-menu a[data-depth="0"] {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 4px 14px !important;
  color: #d8d8d8 !important;
  background: transparent !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  font-size: 18px !important;
  font-weight: 950 !important;
  letter-spacing: 0.10em !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  text-shadow:
    0 1px 0 rgba(255,255,255,0.45),
    0 2px 0 rgba(105,105,105,0.55),
    0 3px 0 rgba(35,35,35,0.85),
    0 7px 12px rgba(0,0,0,0.95),
    0 0 14px rgba(255,255,255,0.10) !important;
}

#header .top-menu a[data-depth="0"]::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 0;
  height: 2px;
  transform: translateX(-50%);
  background: linear-gradient(90deg, transparent 0%, rgba(214, 162, 48, 0.35) 16%, rgba(255, 209, 95, 1) 50%, rgba(214, 162, 48, 0.35) 84%, transparent 100%);
  box-shadow: 0 0 10px rgba(229,189,86,0.75), 0 0 22px rgba(214,162,48,0.35);
  opacity: 0;
  transition: width 0.24s ease, opacity 0.24s ease !important;
}

#header .top-menu a[data-depth="0"]::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -6px;
  width: 0;
  height: 18px;
  transform: translateX(-50%);
  background: radial-gradient(ellipse at center, rgba(229,189,86,0.26) 0%, rgba(229,189,86,0.10) 38%, transparent 72%);
  opacity: 0;
  pointer-events: none;
  transition: width 0.24s ease, opacity 0.24s ease !important;
}

#header .top-menu a[data-depth="0"]:hover {
  color: #ffffff !important;
  transform: translateY(-1px) !important;
}

#header .top-menu a[data-depth="0"]:hover::after,
#header .top-menu .current a[data-depth="0"]::after,
#header .top-menu a[data-depth="0"].current::after {
  width: 78px;
  opacity: 1;
}

#header .top-menu a[data-depth="0"]:hover::before {
  width: 115px;
  opacity: 1;
}

#header .top-menu .current a[data-depth="0"],
#header .top-menu a[data-depth="0"].current,
body#index #header .top-menu a[href*="/"]:first-child {
  color: #ffffff !important;
}

/* ============================================================
   06. DROPDOWN MENU
   ============================================================ */

#header .top-menu > li > .sub-menu {
  display: none !important;
  position: absolute !important;
  top: calc(100% - 8px) !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  width: 300px !important;
  min-width: 300px !important;
  max-width: 300px !important;
  padding: 10px 16px !important;
  background: linear-gradient(180deg, rgba(14, 14, 14, 0.98), rgba(5, 5, 5, 0.98)) !important;
  border: 1px solid rgba(214, 162, 48, 0.38) !important;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.82) !important;
  z-index: 20000 !important;
}

#header .top-menu > li:hover > .sub-menu,
#header .top-menu > li:focus-within > .sub-menu,
#header .top-menu > li > .sub-menu:hover {
  display: block !important;
}

#header .top-menu > li > .sub-menu::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -22px;
  height: 22px;
  background: transparent;
}

#header .top-menu > li > .sub-menu ul[data-depth="2"],
#header .top-menu > li > .sub-menu ul[data-depth="3"],
#header .top-menu > li > .sub-menu li li,
#header .top-menu > li > .sub-menu a[data-depth="2"],
#header .top-menu > li > .sub-menu a[data-depth="3"] {
  display: none !important;
}

#header .top-menu > li > .sub-menu .top-menu,
#header .top-menu > li > .sub-menu ul[data-depth="1"] {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

#header .top-menu > li > .sub-menu li,
#header .top-menu > li > .sub-menu .top-menu > li {
  height: auto !important;
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

#header .top-menu > li > .sub-menu a[data-depth="1"] {
  min-height: 38px !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  padding: 8px 0 !important;
  margin: 0 !important;
  color: #ffffff !important;
  background: transparent !important;
  border-bottom: 1px solid rgba(214, 162, 48, 0.14) !important;
  text-transform: uppercase !important;
  font-size: 13px !important;
  font-weight: 850 !important;
  letter-spacing: 0.06em !important;
  line-height: 1.25 !important;
  white-space: normal !important;
}

#header .top-menu > li > .sub-menu a[data-depth="1"]:hover {
  color: var(--os-gold-2) !important;
  padding-left: 6px !important;
}

#header .top-menu > li > .sub-menu li:last-child a[data-depth="1"] {
  border-bottom: 0 !important;
}

/* ============================================================
   07. FORMARE / TLACIDLA
   ============================================================ */

.btn,
.btn-primary,
.btn-secondary {
  border-radius: 0 !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
}

.btn-primary {
  background: linear-gradient(180deg, var(--os-gold-2), var(--os-gold)) !important;
  border: 1px solid var(--os-gold-2) !important;
  color: var(--os-black) !important;
  box-shadow: 0 0 22px rgba(214, 162, 48, 0.25);
}

.btn-primary:hover {
  background: var(--os-black) !important;
  color: var(--os-gold-2) !important;
  border-color: var(--os-gold-2) !important;
}

.btn-secondary {
  background: transparent !important;
  border: 1px solid var(--os-gold-border) !important;
  color: var(--os-gold-2) !important;
}

.form-control,
.input-group .form-control,
select.form-control {
  background: #090909 !important;
  border: 1px solid rgba(214, 162, 48, 0.32) !important;
  color: var(--os-text) !important;
  border-radius: 0 !important;
}

.form-control:focus {
  border-color: var(--os-gold-2) !important;
  box-shadow: 0 0 0 0.15rem rgba(214, 162, 48, 0.20) !important;
}

/* ============================================================
   08. HOMEPAGE - SPOLOCNE SIRKY
   ============================================================ */

body#index .offroad-home,
body#index .page-home {
  width: 100%;
  background: var(--os-black) !important;
  color: var(--os-text) !important;
  position: relative;
  z-index: 1;
}

body#index .os-hero__inner,
body#index .os-benefit-strip__grid,
body#index .os-categories .container,
body#index .os-promo-row .container,
body#index .os-quick-categories__grid,
body#index .os-social-strip > .container,
body#index .featured-products,
body#index #content-wrapper > section {
  width: 100% !important;
  max-width: var(--os-container) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: var(--os-side-space) !important;
  padding-right: var(--os-side-space) !important;
}

body#index .os-categories,
body#index .os-promo-row,
body#index .os-benefit-strip,
body#index .os-quick-categories,
body#index .os-social-strip {
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
}

/* ============================================================
   09. HERO SLIDER
   ============================================================ */

body#index #carousel,
body#index #carousel.carousel,
body#index .carousel,
body#index .homeslider-container {
  position: relative !important;
  z-index: 1 !important;

  width: 100vw !important;
  max-width: none !important;
  height: 450px !important;
  min-height: 450px !important;
  max-height: 450px !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #050505 !important;
  border: 0 !important;
}

body#index #carousel::before,
body#index .carousel::before,
body#index .homeslider-container::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  z-index: 8;
  background: var(--os-line-hero);
  pointer-events: none;
}

body#index #carousel .carousel-inner,
body#index #carousel ul.carousel-inner,
body#index .carousel .carousel-inner,
body#index #carousel .carousel-item,
body#index #carousel li.carousel-item,
body#index .carousel .carousel-item,
body#index #carousel .carousel-item > a,
body#index #carousel li.carousel-item > a,
body#index #carousel figure {
  position: relative !important;
  width: 100% !important;
  max-width: none !important;
  height: 450px !important;
  min-height: 450px !important;
  max-height: 450px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #050505 !important;
}

body#index #carousel figure img,
body#index #carousel .carousel-item img,
body#index #carousel li.carousel-item img,
body#index .carousel .carousel-item img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: none !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  margin: 0 !important;
  padding: 0 !important;
  filter: brightness(1.12) contrast(1.05) saturate(1.08) !important;
}

body#index #carousel figure::before,
body#index #carousel .carousel-item::before,
body#index #carousel li.carousel-item::before,
body#index .carousel .carousel-item::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.58) 0%, rgba(0,0,0,0.42) 28%, rgba(0,0,0,0.18) 52%, rgba(0,0,0,0.04) 75%, rgba(0,0,0,0.10) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.00) 0%, rgba(0,0,0,0.16) 100%);
}

body#index #carousel::after,
body#index .carousel::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 90px;
  z-index: 3;
  background: linear-gradient(180deg, transparent, #050505);
  pointer-events: none;
}

body#index #carousel .caption,
body#index #carousel figcaption.caption,
body#index #carousel .carousel-caption,
body#index .carousel .carousel-caption {
  position: absolute !important;
  z-index: 4 !important;
  left: 50% !important;
  top: 50% !important;
  right: auto !important;
  bottom: auto !important;
  transform: translate(-50%, -50%) !important;
  width: 100% !important;
  max-width: var(--os-container) !important;
  padding-left: var(--os-side-space) !important;
  padding-right: var(--os-side-space) !important;
  text-align: left !important;
  color: #ffffff !important;
  background: transparent !important;
}

body#index #carousel .caption-description,
body#index #carousel .caption-description * {
  background: transparent !important;
}

body#index #carousel .caption h2,
body#index #carousel figcaption h2,
body#index #carousel .carousel-caption h2,
body#index #carousel .caption-description h2,
body#index .carousel .carousel-caption h2 {
  max-width: 680px !important;
  margin: 0 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: transparent !important;
  font-family: Arial, Helvetica, sans-serif !important;
  text-transform: uppercase !important;
  font-size: clamp(38px, 4.4vw, 66px) !important;
  line-height: 0.95 !important;
  font-weight: 950 !important;
  letter-spacing: 0 !important;
  -webkit-text-stroke: 0 !important;
  filter: brightness(1.35) contrast(1.12) !important;
  text-shadow:
    0 2px 3px rgba(0,0,0,0.95),
    0 0 1px rgba(255,255,255,0.55),
    0 8px 18px rgba(0,0,0,0.76) !important;
}

body#index #carousel .caption h3,
body#index #carousel figcaption h3,
body#index #carousel .carousel-caption h3,
body#index #carousel .caption-description h3,
body#index #carousel .caption-description > h3,
body#index .homeslider-container .caption-description > h3 {
  max-width: 680px !important;
  margin: 8px 0 0 !important;
  color: #f4c642 !important;
  -webkit-text-fill-color: #f4c642 !important;
  background: transparent !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(13px, 1.2vw, 17px) !important;
  line-height: 1.22 !important;
  font-weight: 900 !important;
  letter-spacing: 0.055em !important;
  text-transform: uppercase !important;
  filter: brightness(1.2) contrast(1.08) !important;
  text-shadow:
    0 1px 2px rgba(0,0,0,0.95),
    0 6px 14px rgba(0,0,0,0.82) !important;
}

body#index #carousel .caption h3:empty,
body#index #carousel .caption-description h3:empty,
body#index .homeslider-container .caption-description h3:empty {
  display: none !important;
}

body#index #carousel .caption p,
body#index #carousel figcaption p,
body#index #carousel .carousel-caption p,
body#index #carousel .caption-description p,
body#index .carousel .carousel-caption p {
  max-width: 560px !important;
  margin-top: 12px !important;
  margin-bottom: 0 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: transparent !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
  font-weight: 700 !important;
  filter: brightness(1.18) contrast(1.06) !important;
  text-shadow:
    0 1px 2px rgba(0,0,0,0.95),
    0 6px 14px rgba(0,0,0,0.82) !important;
}

body#index #carousel .direction,
body#index #carousel .carousel-control,
body#index #carousel .carousel-control-prev,
body#index #carousel .carousel-control-next,
body#index .carousel .carousel-control-prev,
body#index .carousel .carousel-control-next {
  z-index: 6 !important;
  width: 60px !important;
  opacity: 0.65 !important;
}

body#index #carousel .carousel-control-prev:hover,
body#index #carousel .carousel-control-next:hover,
body#index .carousel .carousel-control-prev:hover,
body#index .carousel .carousel-control-next:hover {
  opacity: 1 !important;
}

body#index #carousel .carousel-indicators,
body#index .carousel .carousel-indicators {
  z-index: 7 !important;
  bottom: 18px !important;
}

body#index #carousel .carousel-indicators li,
body#index .carousel .carousel-indicators li {
  width: 34px !important;
  height: 3px !important;
  background-color: rgba(229, 189, 86, 0.45) !important;
  border: 0 !important;
}

body#index #carousel .carousel-indicators .active,
body#index .carousel .carousel-indicators .active {
  background-color: #e5bd56 !important;
}

/* ============================================================
   10. HOMEPAGE - DYNAMICKE KATEGORIE
   ============================================================ */

body#index .os-categories--dynamic,
body#index .os-quick-categories--dynamic {
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 34px 0 42px !important;
  background:
    radial-gradient(circle at top center, rgba(214, 162, 48, 0.10), transparent 38%),
    linear-gradient(180deg, #050505 0%, #090909 100%) !important;
  border-top: 1px solid rgba(214, 162, 48, 0.18) !important;
  border-bottom: 1px solid rgba(214, 162, 48, 0.18) !important;
}

body#index .os-categories--dynamic .container,
body#index .os-quick-categories--dynamic .os-quick-categories__grid {
  width: 100% !important;
  max-width: var(--os-container) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: var(--os-side-space) !important;
  padding-right: var(--os-side-space) !important;
}

body#index .os-category-grid--dynamic,
body#index .os-categories--dynamic .os-category-grid,
body#index .os-quick-categories--dynamic .os-quick-categories__grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

body#index .os-category-card--dynamic,
body#index .os-categories--dynamic .os-category-card,
body#index .os-quick-category {
  position: relative !important;
  display: block !important;
  height: 170px !important;
  min-height: 170px !important;
  padding: 0 !important;
  overflow: hidden !important;
  text-decoration: none !important;
  background: #080808 !important;
  border: 1px solid rgba(214, 162, 48, 0.32) !important;
  box-shadow:
    0 18px 40px rgba(0, 0, 0, 0.55),
    inset 0 1px 0 rgba(255, 255, 255, 0.04) !important;
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease !important;
}

body#index .os-category-card--dynamic:hover,
body#index .os-categories--dynamic .os-category-card:hover,
body#index .os-quick-category:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(229, 189, 86, 0.70) !important;
  box-shadow:
    0 24px 52px rgba(0, 0, 0, 0.78),
    0 0 26px rgba(214, 162, 48, 0.16) !important;
}

body#index .os-category-card--dynamic::before,
body#index .os-categories--dynamic .os-category-card::before,
body#index .os-quick-category::before {
  content: "";
  position: absolute;
  left: 18px;
  right: 18px;
  top: 0;
  height: 1px;
  z-index: 4;
  background: linear-gradient(90deg, transparent, rgba(229, 189, 86, 0.75), transparent);
}

body#index .os-category-card--dynamic::after,
body#index .os-categories--dynamic .os-category-card::after,
body#index .os-quick-category::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(0,0,0,0.00) 0%, rgba(0,0,0,0.04) 45%, rgba(0,0,0,0.55) 100%),
    radial-gradient(circle at top center, transparent 35%, rgba(0,0,0,0.10) 100%);
}

body#index .os-category-card__image,
body#index .os-quick-category__image {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
}

body#index .os-category-card__image img,
body#index .os-quick-category__image img {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  filter: brightness(1.22) contrast(1.08) saturate(1.15) !important;
  transition: transform 0.32s ease, filter 0.32s ease !important;
}

body#index .os-category-card--dynamic:hover .os-category-card__image img,
body#index .os-categories--dynamic .os-category-card:hover .os-category-card__image img,
body#index .os-quick-category:hover .os-quick-category__image img {
  transform: scale(1.055) !important;
  filter: brightness(1.02) contrast(1.06) saturate(1.14) !important;
}

body#index .os-category-card__content,
body#index .os-quick-category strong {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 5 !important;
  min-height: 52px !important;
  padding: 28px 10px 13px !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
  color: var(--os-gold-2) !important;
  text-align: center !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.09em !important;
  line-height: 1.25 !important;
  background: linear-gradient(180deg, rgba(0,0,0,0.00) 0%, rgba(0,0,0,0.42) 42%, rgba(0,0,0,0.86) 100%) !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.95), 0 0 12px rgba(214, 162, 48, 0.18) !important;
}

body#index .os-category-card__content strong {
  color: var(--os-gold-2) !important;
  text-align: center !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.09em !important;
  line-height: 1.25 !important;
}

body#index .os-category-card__content span {
  display: none !important;
}

/* ============================================================
   11. SOCIAL STRIP
   ============================================================ */

body#index .os-social-strip {
  position: relative !important;
  overflow: hidden !important;
  padding: 0 !important;
  background:
    radial-gradient(circle at 50% 50%, rgba(214, 162, 48, 0.10), transparent 40%),
    linear-gradient(90deg, #050505 0%, #0a0a0a 18%, #120d06 50%, #0a0a0a 82%, #050505 100%) !important;
  border-top: 1px solid rgba(214, 162, 48, 0.24) !important;
  border-bottom: 1px solid rgba(214, 162, 48, 0.26) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,0.03),
    inset 0 -1px 0 rgba(214,162,48,0.12),
    0 20px 50px rgba(0,0,0,0.45) !important;
}

body#index .os-social-strip::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.75;
  background:
    repeating-linear-gradient(102deg, transparent 0 18px, rgba(214,162,48,0.045) 18px 20px, transparent 20px 34px, rgba(214,162,48,0.020) 34px 42px, transparent 42px 62px),
    repeating-linear-gradient(78deg, transparent 0 18px, rgba(214,162,48,0.045) 18px 20px, transparent 20px 34px, rgba(214,162,48,0.020) 34px 42px, transparent 42px 62px),
    radial-gradient(circle at 58% 50%, rgba(229,189,86,0.11), transparent 26%);
  background-size: 420px 100%, 420px 100%, 100% 100%;
  background-position: left center, right center, center center;
  background-repeat: no-repeat;
}

body#index .os-social-strip > .container {
  position: relative !important;
  z-index: 2 !important;
}

body#index .os-social-strip__inner {
  min-height: 185px !important;
  display: grid !important;
  grid-template-columns: minmax(300px, 455px) minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 28px !important;
  padding: 34px 0 !important;
}

body#index .os-social-strip__eyebrow {
  margin: 0 0 14px !important;
  color: var(--os-gold-2) !important;
  text-transform: uppercase !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 0.24em !important;
  line-height: 1 !important;
}

body#index .os-social-strip__content h2 {
  margin: 0 0 14px !important;
  color: #ffffff !important;
  text-transform: uppercase !important;
  font-size: clamp(30px, 3vw, 48px) !important;
  line-height: 0.95 !important;
  font-weight: 950 !important;
  letter-spacing: 0.03em !important;
  text-shadow: 0 8px 24px rgba(0,0,0,0.85) !important;
}

body#index .os-social-strip__content h2 span {
  color: var(--os-gold-2) !important;
}

body#index .os-social-strip__content p {
  margin: 0 !important;
  max-width: 620px !important;
  color: #d8d8d8 !important;
  font-size: 17px !important;
  line-height: 1.55 !important;
}

body#index .os-social-strip__buttons {
  position: relative !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(128px, 1fr)) !important;
  gap: 14px !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 860px !important;
  margin-left: auto !important;
}

body#index .os-social-strip__buttons::before {
  content: "";
  position: absolute;
  left: -34px;
  top: 50%;
  width: 2px;
  height: 88px;
  transform: translateY(-50%) rotate(18deg);
  background: linear-gradient(180deg, transparent, rgba(229,189,86,0.95), transparent);
  box-shadow: 0 0 12px rgba(229,189,86,0.45);
}

body#index .os-social-btn {
  min-height: 76px !important;
  padding: 0 12px !important;
  display: grid !important;
  grid-template-columns: 38px minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: 10px !important;
  color: var(--os-gold-2) !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.01)),
    rgba(0,0,0,0.34) !important;
  border: 1px solid rgba(229,189,86,0.52) !important;
  border-radius: 14px !important;
  box-shadow:
    0 14px 30px rgba(0,0,0,0.48),
    0 0 18px rgba(214,162,48,0.10),
    inset 0 1px 0 rgba(255,255,255,0.04) !important;
  position: relative !important;
  overflow: hidden !important;
}

body#index .os-social-btn:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(229,189,86,0.88) !important;
  background:
    linear-gradient(180deg, rgba(214,162,48,0.10), rgba(255,255,255,0.01)),
    rgba(0,0,0,0.48) !important;
  box-shadow:
    0 18px 38px rgba(0,0,0,0.65),
    0 0 24px rgba(214,162,48,0.16),
    inset 0 1px 0 rgba(255,255,255,0.06) !important;
}

body#index .os-social-btn__icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  line-height: 1 !important;
  font-size: 0 !important;
}

body#index .os-social-btn__icon img {
  display: block !important;
  width: 38px !important;
  height: 38px !important;
  max-width: 38px !important;
  max-height: 38px !important;
  object-fit: contain !important;
}

body#index .os-social-btn > span:last-child {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  color: var(--os-gold-2) !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0.03em !important;
  line-height: 1.1 !important;
  min-width: 0 !important;
  white-space: nowrap !important;
}

body#index .os-social-btn > span:last-child::after {
  margin-top: 5px !important;
  color: #e2e2e2 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
}

body#index .os-social-btn--facebook > span:last-child::after { content: "Pridaj sa"; }
body#index .os-social-btn--instagram > span:last-child::after { content: "Sleduj nás"; }
body#index .os-social-btn--youtube > span:last-child::after { content: "Pozri videá"; }
body#index .os-social-btn--tiktok > span:last-child::after { content: "Sleduj trend"; }

/* ============================================================
   12. HOMEPAGE - TOP PRODUKTY
   ============================================================ */

body#index .os-home-products,
body#index .os-top-products,
body#index .os-top-products--dynamic,
body#index .os-products-home {
  width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding: 68px 0 76px !important;
  background:
    radial-gradient(circle at top center, rgba(214, 162, 48, 0.08), transparent 34%),
    linear-gradient(180deg, #050505 0%, #080808 100%) !important;
  border-top: 1px solid rgba(214, 162, 48, 0.18) !important;
}

body#index .os-home-products > .container,
body#index .os-top-products > .container,
body#index .os-top-products--dynamic .container,
body#index .os-products-home .container {
  width: 100% !important;
  max-width: var(--os-container) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: var(--os-side-space) !important;
  padding-right: var(--os-side-space) !important;
}

body#index .os-home-products .os-section-head {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 24px !important;
  margin-bottom: 28px !important;
}

body#index .os-home-products .os-section-head h2 {
  margin: 0 !important;
  color: #ffffff !important;
  text-transform: uppercase !important;
  font-size: clamp(34px, 4vw, 52px) !important;
  line-height: 0.95 !important;
  font-weight: 950 !important;
  letter-spacing: 0.04em !important;
}

body#index .os-home-products .os-section-head h2 span {
  color: var(--os-gold-2) !important;
}

body#index .os-home-products .os-section-link {
  color: var(--os-gold-2) !important;
  text-transform: uppercase !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

body#index .os-home-products__grid,
body#index .os-products-grid,
body#index .os-product-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
  align-items: stretch !important;
}

body#index .os-home-product,
body#index .os-product-card {
  min-width: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  overflow: hidden !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.025), rgba(255, 255, 255, 0.006)),
    #090909 !important;
  border: 1px solid rgba(214, 162, 48, 0.30) !important;
  box-shadow:
    0 18px 40px rgba(0, 0, 0, 0.55),
    inset 0 1px 0 rgba(255, 255, 255, 0.035) !important;
  transition: transform 0.22s ease, border-color 0.22s ease, box-shadow 0.22s ease !important;
}

body#index .os-home-product:hover,
body#index .os-product-card:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(229, 189, 86, 0.70) !important;
  box-shadow:
    0 24px 46px rgba(0, 0, 0, 0.65),
    0 0 24px rgba(214, 162, 48, 0.12) !important;
}

body#index .os-home-product__image,
body#index .os-product-card__image {
  position: relative !important;
  width: 100% !important;
  height: 235px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  text-decoration: none !important;
  background:
    radial-gradient(circle at center 58%, rgba(255,255,255,0.24) 0%, rgba(255,255,255,0.12) 28%, rgba(255,255,255,0.04) 48%, transparent 68%),
    url("../img/product-card-bg.png") center / cover no-repeat,
    #080808 !important;
  border-bottom: 1px solid rgba(214, 162, 48, 0.22) !important;
}

body#index .os-home-product__image img,
body#index .os-product-card__image img {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 92% !important;
  max-height: 220px !important;
  object-fit: contain !important;
  object-position: center center !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  filter: brightness(1.5) contrast(1.14) saturate(1.08)
          drop-shadow(0 18px 18px rgba(0,0,0,0.80))
          drop-shadow(0 0 14px rgba(255,255,255,0.16)) !important;
  transition: transform 0.25s ease, filter 0.25s ease !important;
}

body#index .os-home-product:hover .os-home-product__image img,
body#index .os-product-card:hover .os-product-card__image img {
  transform: scale(1.04) !important;
}

body#index .os-home-product__body,
body#index .os-product-card__body,
body#index .os-product-card__content {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  padding: 20px 20px 18px !important;
  background: linear-gradient(180deg, #0b0b0b 0%, #060606 100%) !important;
}

body#index .os-home-product__body h3,
body#index .os-product-card__title,
body#index .os-product-card__content h3 {
  min-height: 44px !important;
  margin: 0 0 10px !important;
  color: var(--os-gold-2) !important;
  text-transform: uppercase !important;
  font-size: 18px !important;
  line-height: 1.22 !important;
  font-weight: 950 !important;
  letter-spacing: 0.08em !important;
}

body#index .os-home-product__body h3 a,
body#index .os-product-card__title a,
body#index .os-product-card__content h3 a {
  color: var(--os-gold-2) !important;
  text-decoration: none !important;
}

body#index .os-home-product__body h3 a:hover,
body#index .os-product-card__title a:hover,
body#index .os-product-card__content h3 a:hover {
  color: #ffffff !important;
}

body#index .os-home-product__body p,
body#index .os-product-card__desc,
body#index .os-product-card__content p {
  margin: 0 0 18px !important;
  color: #bdbdbd !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

body#index .os-home-product__bottom,
body#index .os-product-card__footer,
body#index .os-product-card__bottom {
  margin-top: auto !important;
  padding-top: 14px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  border-top: 1px solid rgba(214, 162, 48, 0.10) !important;
  background: transparent !important;
}

body#index .os-home-product__bottom strong,
body#index .os-product-card__price {
  color: var(--os-gold-2) !important;
  font-size: 20px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

body#index .os-home-product__detail,
body#index .os-home-product__btn,
body#index .os-product-card__btn,
body#index .os-product-card__link {
  min-height: 38px !important;
  padding: 0 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  color: var(--os-gold-2) !important;
  border: 1px solid rgba(214, 162, 48, 0.36) !important;
  background: rgba(0, 0, 0, 0.28) !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  text-decoration: none !important;
}

body#index .os-home-product__detail:hover,
body#index .os-home-product__btn:hover,
body#index .os-product-card__btn:hover,
body#index .os-product-card__link:hover {
  color: #050505 !important;
  background: var(--os-gold-2) !important;
  border-color: var(--os-gold-2) !important;
}

/* ============================================================
   13. KATALOG - VSEOBECNE PRODUKTOVE KARTY
   ============================================================ */

.featured-products,
.product-accessories,
.product-miniature,
#products,
#left-column,
#content-wrapper {
  color: var(--os-text);
}

.featured-products h2,
.product-accessories h2,
.products-section-title {
  color: var(--os-text);
  text-transform: uppercase;
  font-weight: 900;
  letter-spacing: 0.08em;
  margin-bottom: 30px;
}

.product-miniature {
  background: transparent !important;
}

.product-miniature .thumbnail-container {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.03), rgba(0,0,0,0.35)),
    #101010 !important;
  border: 1px solid rgba(214, 162, 48, 0.28) !important;
  box-shadow: 0 12px 35px rgba(0, 0, 0, 0.55) !important;
  border-radius: 0 !important;
  overflow: hidden;
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}

.product-miniature .thumbnail-container:hover {
  transform: translateY(-5px);
  border-color: var(--os-gold) !important;
  box-shadow:
    0 18px 45px rgba(0, 0, 0, 0.85),
    0 0 22px rgba(214, 162, 48, 0.18) !important;
}

.product-miniature .product-description {
  background: #0b0b0b !important;
  border-top: 1px solid rgba(214, 162, 48, 0.20) !important;
}

.product-miniature .product-title a {
  color: var(--os-text) !important;
  text-transform: uppercase;
  font-weight: 800;
  letter-spacing: 0.03em;
}

.product-miniature .product-title a:hover,
.block-categories a:hover,
#search_filters a:hover {
  color: var(--os-gold-2) !important;
}

.product-miniature .price,
.product-prices .current-price,
.product-price {
  color: var(--os-gold-2) !important;
  font-weight: 900;
}

.product-miniature .price {
  font-size: 18px;
}

.product-miniature .regular-price {
  color: #777777 !important;
}

.product-miniature .product-flags li.product-flag {
  background: var(--os-gold) !important;
  color: var(--os-black) !important;
  font-weight: 900;
  border-radius: 0;
}

.block-categories,
#search_filters,
.card,
.tabs,
.product-information,
.product-actions {
  background: #101010 !important;
  border: 1px solid rgba(214, 162, 48, 0.25) !important;
  color: var(--os-text);
  border-radius: 0 !important;
}

.block-categories a,
#search_filters a {
  color: var(--os-text);
}

.products-selection {
  background: #0d0d0d !important;
  border: 1px solid rgba(214, 162, 48, 0.22) !important;
  color: var(--os-text);
  padding: 15px;
}

.product-information,
.product-description,
.tabs .tab-pane {
  color: var(--os-text);
}

.tabs .nav-tabs {
  border-bottom: 1px solid var(--os-gold-border) !important;
}

.tabs .nav-tabs .nav-link {
  color: var(--os-muted) !important;
  text-transform: uppercase;
  font-weight: 800;
}

.tabs .nav-tabs .nav-link.active {
  color: var(--os-gold-2) !important;
  background: transparent !important;
  border-color: var(--os-gold-border) !important;
}

/* ============================================================
   13B. PRODUKTOVÝ DETAIL
   ============================================================ */

body#product #wrapper,
body.page-product #wrapper {
  padding-top: 36px !important;
  background:
    radial-gradient(circle at 28% 0%, rgba(214,162,48,0.12), transparent 32%),
    linear-gradient(180deg, #050505 0%, #090807 56%, #050505 100%) !important;
}

body#product #wrapper > .container,
body.page-product #wrapper > .container {
  max-width: var(--os-container) !important;
  padding-left: var(--os-side-space) !important;
  padding-right: var(--os-side-space) !important;
}

body#product .breadcrumb,
body.page-product .breadcrumb {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 0 22px !important;
  padding: 9px 12px !important;
  width: fit-content !important;
  max-width: 100% !important;
  color: rgba(255,255,255,0.68) !important;
  background: rgba(0,0,0,0.36) !important;
  border: 1px solid rgba(214,162,48,0.22) !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
}

body#product .breadcrumb a,
body.page-product .breadcrumb a,
body#product .breadcrumb li,
body.page-product .breadcrumb li {
  color: rgba(255,255,255,0.68) !important;
}

body#product .breadcrumb a:hover,
body.page-product .breadcrumb a:hover {
  color: #f4c642 !important;
}

body#product .product-container,
body.page-product .product-container {
  display: grid !important;
  grid-template-columns: minmax(0, 0.95fr) minmax(390px, 1.05fr) !important;
  gap: 34px !important;
  align-items: start !important;
  margin: 0 !important;
}

body#product .product-container > .col-md-6,
body.page-product .product-container > .col-md-6 {
  width: auto !important;
  max-width: none !important;
  flex: none !important;
  padding: 0 !important;
}

body#product .product-container > .col-md-6:first-child,
body.page-product .product-container > .col-md-6:first-child {
  position: sticky !important;
  top: 18px !important;
}

body#product #content,
body.page-product #content {
  position: relative !important;
  padding: 22px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.035), rgba(255,255,255,0.008)),
    #0b0b0b !important;
  border: 1px solid rgba(214,162,48,0.36) !important;
  box-shadow: 0 24px 60px rgba(0,0,0,0.62) !important;
}

body#product .images-container,
body.page-product .images-container {
  margin: 0 !important;
}

body#product .product-cover,
body.page-product .product-cover {
  width: 100% !important;
  max-width: none !important;
  aspect-ratio: 1 / 1 !important;
  margin: 0 !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 50% 42%, rgba(255,255,255,0.08), transparent 48%),
    linear-gradient(145deg, #151515, #040404) !important;
  border: 1px solid rgba(214,162,48,0.26) !important;
}

body#product .product-cover img,
body.page-product .product-cover img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 18px !important;
  background: #ffffff !important;
}

body#product .product-cover .layer,
body.page-product .product-cover .layer {
  background: rgba(0,0,0,0.22) !important;
}

body#product .product-flags,
body.page-product .product-flags {
  position: absolute !important;
  top: 34px !important;
  left: 34px !important;
  z-index: 8 !important;
  display: grid !important;
  gap: 8px !important;
  margin: 0 !important;
}

body#product .product-flags li.product-flag,
body.page-product .product-flags li.product-flag {
  width: max-content !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 8px 11px !important;
  color: #050505 !important;
  background: linear-gradient(180deg, #f6cf55, #d69a21) !important;
  border: 1px solid rgba(255,255,255,0.16) !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  letter-spacing: 0.08em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  box-shadow: 0 10px 22px rgba(0,0,0,0.32) !important;
}

body#product .product-flags li.product-flag.out_of_stock,
body.page-product .product-flags li.product-flag.out_of_stock {
  color: #ffffff !important;
  background: linear-gradient(180deg, #1fb7d3, #0f8ea7) !important;
}

body#product .js-qv-mask,
body.page-product .js-qv-mask {
  margin-top: 18px !important;
}

body#product .product-images,
body.page-product .product-images {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin: 0 !important;
}

body#product .product-images > li.thumb-container,
body.page-product .product-images > li.thumb-container {
  margin: 0 !important;
}

body#product .product-images .thumb,
body.page-product .product-images .thumb {
  width: 86px !important;
  height: 86px !important;
  padding: 4px !important;
  object-fit: cover !important;
  background: #111 !important;
  border: 1px solid rgba(214,162,48,0.36) !important;
  opacity: 0.82 !important;
}

body#product .product-images .thumb.selected,
body.page-product .product-images .thumb.selected {
  border-color: #f4c642 !important;
  opacity: 1 !important;
  box-shadow: 0 0 0 2px rgba(244,198,66,0.18) !important;
}

body#product .scroll-box-arrows,
body.page-product .scroll-box-arrows {
  display: none !important;
}

body#product .product-container > .col-md-6:nth-child(2),
body.page-product .product-container > .col-md-6:nth-child(2) {
  min-height: 100% !important;
  padding: 28px 30px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.035), rgba(255,255,255,0.006)),
    #0b0b0b !important;
  border: 1px solid rgba(214,162,48,0.36) !important;
  box-shadow: 0 24px 60px rgba(0,0,0,0.62) !important;
}

body#product h1.h1,
body.page-product h1.h1 {
  margin: 0 0 16px !important;
  color: #ffffff !important;
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(28px, 3vw, 42px) !important;
  font-weight: 950 !important;
  letter-spacing: 0.035em !important;
  line-height: 1.05 !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 0 rgba(0,0,0,0.95), 0 10px 24px rgba(0,0,0,0.78) !important;
}

body#product .product-prices,
body.page-product .product-prices {
  margin: 0 0 22px !important;
}

body#product .product-prices .current-price,
body#product .product-prices .current-price-value,
body.page-product .product-prices .current-price,
body.page-product .product-prices .current-price-value {
  color: #f4c642 !important;
  font-size: clamp(26px, 2.5vw, 38px) !important;
  font-weight: 950 !important;
  letter-spacing: 0.02em !important;
}

body#product .tax-shipping-delivery-label,
body.page-product .tax-shipping-delivery-label {
  margin-top: 8px !important;
  color: rgba(255,255,255,0.62) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

body#product .product-information,
body#product .product-actions,
body#product .tabs,
body.page-product .product-information,
body.page-product .product-actions,
body.page-product .tabs {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body#product .product-information,
body.page-product .product-information {
  padding: 0 !important;
}

body#product #product-description-short,
body#product [id^="product-description-short"],
body.page-product #product-description-short,
body.page-product [id^="product-description-short"] {
  margin: 0 0 22px !important;
  padding: 16px 18px !important;
  color: #e7e7e7 !important;
  background: rgba(255,255,255,0.035) !important;
  border-left: 3px solid #f4c642 !important;
  line-height: 1.6 !important;
}

body#product .product-actions,
body.page-product .product-actions {
  margin: 0 0 18px !important;
  padding: 20px !important;
  background:
    linear-gradient(180deg, rgba(214,162,48,0.08), rgba(255,255,255,0.01)),
    #0f0f0f !important;
  border: 1px solid rgba(214,162,48,0.34) !important;
}

body#product .product-add-to-cart .control-label,
body.page-product .product-add-to-cart .control-label {
  display: block !important;
  margin: 0 0 10px !important;
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

body#product .product-quantity,
body.page-product .product-quantity {
  display: grid !important;
  grid-template-columns: 84px minmax(0, 1fr) 48px !important;
  gap: 12px !important;
  align-items: stretch !important;
}

body#product .product-quantity .qty,
body#product .product-quantity .add,
body.page-product .product-quantity .qty,
body.page-product .product-quantity .add {
  float: none !important;
  width: auto !important;
  margin: 0 !important;
}

body#product #quantity_wanted,
body.page-product #quantity_wanted {
  width: 58px !important;
  height: 52px !important;
  color: #ffffff !important;
  background: #050505 !important;
  border: 1px solid rgba(244,198,66,0.6) !important;
  font-size: 17px !important;
  font-weight: 900 !important;
  text-align: center !important;
}

body#product .bootstrap-touchspin,
body.page-product .bootstrap-touchspin {
  width: 84px !important;
}

body#product .bootstrap-touchspin .btn-touchspin,
body.page-product .bootstrap-touchspin .btn-touchspin {
  width: 24px !important;
  height: 26px !important;
  background: #161616 !important;
  border-color: rgba(244,198,66,0.35) !important;
}

body#product .add-to-cart,
body.page-product .add-to-cart,
body#product .js-mailalert-add,
body.page-product .js-mailalert-add {
  width: 100% !important;
  min-height: 52px !important;
  padding: 0 24px !important;
  color: #050505 !important;
  background: linear-gradient(180deg, #f6cf55, #d69a21) !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  border-radius: 0 !important;
  font-size: 14px !important;
  font-weight: 950 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  box-shadow: 0 16px 34px rgba(214,154,33,0.24) !important;
}

body#product .add-to-cart:disabled,
body.page-product .add-to-cart:disabled {
  opacity: 0.72 !important;
  filter: grayscale(0.15) !important;
}

body#product .wishlist-button-add,
body.page-product .wishlist-button-add {
  width: 52px !important;
  height: 52px !important;
  margin: 0 !important;
  color: #f4c642 !important;
  background: #050505 !important;
  border: 1px solid rgba(244,198,66,0.5) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

body#product #product-availability,
body.page-product #product-availability {
  margin-top: 14px !important;
}

body#product #product-availability .alert,
body.page-product #product-availability .alert {
  margin: 0 !important;
  padding: 13px 15px !important;
  color: #ffffff !important;
  background: linear-gradient(90deg, rgba(185,54,54,0.32), rgba(185,54,54,0.12)) !important;
  border: 1px solid rgba(255,95,95,0.42) !important;
  border-radius: 0 !important;
  font-weight: 900 !important;
}

body#product .product-additional-info,
body.page-product .product-additional-info {
  margin-top: 18px !important;
}

body#product .blockreassurance_product,
body.page-product .blockreassurance_product {
  margin: 20px 0 0 !important;
  padding: 0 !important;
  color: rgba(255,255,255,0.72) !important;
  background: transparent !important;
  border: 0 !important;
}

body#product .blockreassurance_product > div,
body.page-product .blockreassurance_product > div {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  margin: 0 0 10px !important;
  padding: 12px 14px !important;
  background: rgba(255,255,255,0.025) !important;
  border: 1px solid rgba(214,162,48,0.22) !important;
}

body#product .blockreassurance_product .block-title,
body.page-product .blockreassurance_product .block-title {
  display: block !important;
  color: #f4c642 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}

body#product .blockreassurance_product p,
body.page-product .blockreassurance_product p {
  margin: 3px 0 0 !important;
  color: rgba(255,255,255,0.58) !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

body#product .blockreassurance_product svg,
body.page-product .blockreassurance_product svg,
body#product .blockreassurance_product img,
body.page-product .blockreassurance_product img {
  width: 28px !important;
  height: 28px !important;
  flex: 0 0 28px !important;
  opacity: 0.9 !important;
}

body#product .social-sharing,
body.page-product .social-sharing {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
}

body#product .social-sharing span,
body.page-product .social-sharing span {
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

body#product .social-sharing ul,
body.page-product .social-sharing ul {
  display: flex !important;
  gap: 8px !important;
  margin: 0 !important;
}

body#product .social-sharing li,
body.page-product .social-sharing li {
  margin: 0 !important;
  background-color: #ffffff !important;
  border: 1px solid rgba(244,198,66,0.4) !important;
}

body#product .product-additional-info > .tabs,
body.page-product .product-additional-info > .tabs {
  margin: 0 !important;
  padding: 20px !important;
  background: rgba(255,255,255,0.035) !important;
  border: 1px solid rgba(214,162,48,0.28) !important;
}

body#product .js-mailalert,
body.page-product .js-mailalert {
  text-align: left !important;
}

body#product .js-mailalert input[type="email"],
body.page-product .js-mailalert input[type="email"] {
  height: 48px !important;
  margin: 0 0 12px !important;
  color: #ffffff !important;
  background: #050505 !important;
  border: 1px solid rgba(214,162,48,0.44) !important;
  border-radius: 0 !important;
}

body#product .product-information > .tabs,
body.page-product .product-information > .tabs {
  margin-top: 24px !important;
  padding: 22px !important;
  background: rgba(255,255,255,0.025) !important;
  border: 1px solid rgba(214,162,48,0.28) !important;
}

body#product .tabs .nav-tabs,
body.page-product .tabs .nav-tabs {
  margin-bottom: 18px !important;
}

body#product .tabs .nav-link,
body.page-product .tabs .nav-link {
  padding: 0 0 12px !important;
  border: 0 !important;
  border-bottom: 2px solid transparent !important;
}

body#product .tabs .nav-link.active,
body.page-product .tabs .nav-link.active {
  border-bottom-color: #f4c642 !important;
}

body#product .product-features > dl.data-sheet,
body.page-product .product-features > dl.data-sheet {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 1px !important;
  margin: 0 !important;
}

body#product .product-features .name,
body#product .product-features .value,
body.page-product .product-features .name,
body.page-product .product-features .value {
  margin: 0 !important;
  padding: 12px 14px !important;
  background: rgba(0,0,0,0.34) !important;
  color: #e7e7e7 !important;
}

body#product .product-accessories,
body.page-product .product-accessories {
  margin-top: 44px !important;
}

body#product .product-comments,
body#product #product-comments-list-header,
body#product #empty-product-comment,
body.page-product .product-comments,
body.page-product #product-comments-list-header,
body.page-product #empty-product-comment {
  color: rgba(255,255,255,0.72) !important;
  background: rgba(255,255,255,0.025) !important;
  border: 1px solid rgba(214,162,48,0.24) !important;
  box-shadow: none !important;
}

@media (max-width: 991px) {
  body#product #wrapper,
  body.page-product #wrapper {
    padding-top: 24px !important;
  }

  body#product .product-container,
  body.page-product .product-container {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 22px !important;
  }

  body#product .product-container > .col-md-6:first-child,
  body.page-product .product-container > .col-md-6:first-child {
    position: relative !important;
    top: auto !important;
  }

  body#product #content,
  body.page-product #content,
  body#product .product-container > .col-md-6:nth-child(2),
  body.page-product .product-container > .col-md-6:nth-child(2) {
    width: 100% !important;
    min-width: 0 !important;
    padding: 18px !important;
  }

  body#product .product-cover,
  body.page-product .product-cover {
    aspect-ratio: 4 / 3 !important;
  }

  body#product .product-cover img,
  body.page-product .product-cover img {
    padding: 12px !important;
  }

  body#product .product-flags,
  body.page-product .product-flags {
    top: 28px !important;
    left: 28px !important;
  }

  body#product .product-actions,
  body.page-product .product-actions {
    padding: 18px !important;
  }
}

@media (max-width: 560px) {
  body#product #wrapper > .container,
  body.page-product #wrapper > .container {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  body#product .breadcrumb,
  body.page-product .breadcrumb {
    margin-bottom: 14px !important;
    font-size: 11px !important;
  }

  body#product h1.h1,
  body.page-product h1.h1 {
    font-size: 25px !important;
    line-height: 1.08 !important;
  }

  body#product .product-prices .current-price,
  body#product .product-prices .current-price-value,
  body.page-product .product-prices .current-price,
  body.page-product .product-prices .current-price-value {
    font-size: 29px !important;
  }

  body#product .product-quantity,
  body.page-product .product-quantity {
    grid-template-columns: 78px minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  body#product .wishlist-button-add,
  body.page-product .wishlist-button-add {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }

  body#product .add-to-cart,
  body.page-product .add-to-cart,
  body#product .js-mailalert-add,
  body.page-product .js-mailalert-add {
    padding-left: 14px !important;
    padding-right: 14px !important;
    font-size: 12px !important;
    letter-spacing: 0.08em !important;
  }

  body#product .social-sharing,
  body.page-product .social-sharing {
    flex-wrap: wrap !important;
  }

  body#product .product-information > .tabs,
  body.page-product .product-information > .tabs,
  body#product .product-additional-info > .tabs,
  body.page-product .product-additional-info > .tabs {
    padding: 16px !important;
  }

  body#product .product-features > dl.data-sheet,
  body.page-product .product-features > dl.data-sheet {
    grid-template-columns: 1fr !important;
  }
}

/* ============================================================
   13C. PRODUKTOVY DETAIL - OFFROAD SVET LAYOUT
   ============================================================ */

body#product .os-product-page {
  color: #ffffff !important;
}

@media (max-width: 1100px) {
  html:has(body#product),
  body#product {
    height: auto !important;
    min-height: 100% !important;
    overflow-y: visible !important;
  }
}

.os-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* CMS: Obchodne podmienky */
body.cms-id-3 #wrapper,
body.cms-id-6 #wrapper,
body.cms-id-7 #wrapper,
body.cms-id-8 #wrapper,
body.cms-id-3 #main,
body.cms-id-6 #main,
body.cms-id-7 #main,
body.cms-id-8 #main,
body.cms-id-3 #content,
body.cms-id-6 #content,
body.cms-id-7 #content,
body.cms-id-8 #content,
body.cms-id-3 .page-content,
body.cms-id-6 .page-content,
body.cms-id-7 .page-content,
body.cms-id-8 .page-content,
body.cms-id-3 .cms-page,
body.cms-id-6 .cms-page,
body.cms-id-7 .cms-page,
body.cms-id-8 .cms-page,
body.cms-id-3 .card,
body.cms-id-6 .card,
body.cms-id-7 .card,
body.cms-id-8 .card,
body.cms-id-3 .card-block,
body.cms-id-6 .card-block,
body.cms-id-7 .card-block,
body.cms-id-8 .card-block {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.cms-id-3 #content-wrapper,
body.cms-id-6 #content-wrapper,
body.cms-id-7 #content-wrapper,
body.cms-id-8 #content-wrapper {
  width: 100% !important;
  max-width: none !important;
}

body.cms-id-3 .page-header,
body.cms-id-6 .page-header,
body.cms-id-7 .page-header,
body.cms-id-8 .page-header,
body.cms-id-3 .breadcrumb,
body.cms-id-6 .breadcrumb,
body.cms-id-7 .breadcrumb,
body.cms-id-8 .breadcrumb {
  display: none !important;
}

.os-terms-page {
  width: min(1180px, calc(100vw - 32px));
  margin: 42px auto 72px;
  color: #fff;
  font-family: Arial, Helvetica, sans-serif;
}

.os-terms-hero {
  position: relative;
  padding: 44px 48px;
  border: 1px solid rgba(226, 171, 45, 0.58);
  background:
    linear-gradient(115deg, rgba(0, 0, 0, 0.92), rgba(20, 18, 13, 0.82)),
    url('../img/offroad-section-bg.png') center/cover no-repeat;
  box-shadow: 0 28px 54px rgba(0, 0, 0, 0.44);
}

.os-terms-hero .os-eyebrow,
.os-terms-card h2,
.os-terms-nav h2 {
  color: #f4c642;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

.os-terms-hero .os-eyebrow {
  margin: 0 0 10px;
  font-size: 12px;
}

.os-terms-hero h1,
.os-terms-title {
  margin: 0;
  color: #fff;
  font-size: clamp(34px, 5vw, 58px);
  line-height: 0.98;
  font-weight: 950;
  text-transform: uppercase;
  text-shadow: 0 3px 0 #000, 0 12px 24px rgba(0, 0, 0, 0.72);
}

.os-terms-hero p {
  max-width: 780px;
  margin: 18px 0 0;
  color: rgba(255, 255, 255, 0.9);
  font-size: 16px;
  line-height: 1.65;
}

.os-terms-hero span {
  display: inline-flex;
  margin-top: 22px;
  padding: 9px 13px;
  border: 1px solid rgba(226, 171, 45, 0.5);
  color: #f4c642;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.os-terms-alert {
  margin: 20px 0;
  padding: 16px 18px;
  border-left: 4px solid #f4c642;
  background: rgba(244, 198, 66, 0.12);
  color: #fff;
  line-height: 1.55;
}

.os-terms-alert strong {
  color: #f4c642;
}

.os-terms-grid {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

.os-terms-nav,
.os-terms-card {
  border: 1px solid rgba(226, 171, 45, 0.45);
  background:
    linear-gradient(145deg, rgba(10, 10, 10, 0.96), rgba(26, 22, 15, 0.82)),
    radial-gradient(circle at top right, rgba(244, 198, 66, 0.13), transparent 36%);
}

.os-terms-nav {
  position: sticky;
  top: 18px;
  padding: 22px;
}

.os-terms-nav h2 {
  margin: 0 0 14px;
  font-size: 13px;
}

.os-terms-nav a {
  display: block;
  padding: 11px 0;
  border-top: 1px solid rgba(226, 171, 45, 0.22);
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
}

.os-terms-nav a:hover {
  color: #f4c642;
}

.os-terms-content {
  display: grid;
  gap: 18px;
}

.os-terms-card {
  padding: 28px 32px;
}

.os-terms-card h2 {
  margin: 0 0 16px;
  font-size: 18px;
  line-height: 1.25;
}

.os-terms-card p,
.os-terms-card dd,
.os-terms-card li {
  color: rgba(255, 255, 255, 0.88);
  font-size: 14px;
  line-height: 1.72;
}

.os-terms-card p {
  margin: 0 0 12px;
}

.os-terms-card a {
  color: #f4c642;
  text-decoration: none;
}

.os-terms-card a:hover {
  text-decoration: underline;
}

.os-terms-data {
  display: grid;
  grid-template-columns: 190px minmax(0, 1fr);
  gap: 0;
  margin: 0 0 18px;
  border: 1px solid rgba(226, 171, 45, 0.25);
}

.os-terms-data dt,
.os-terms-data dd {
  margin: 0;
  padding: 12px 14px;
  border-bottom: 1px solid rgba(226, 171, 45, 0.18);
}

.os-terms-data dt {
  color: #f4c642;
  font-size: 12px;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.os-terms-data dd {
  font-weight: 700;
}

.os-terms-data dt:nth-last-of-type(1),
.os-terms-data dd:nth-last-of-type(1) {
  border-bottom: 0;
}

.os-terms-page mark {
  padding: 2px 6px;
  background: rgba(244, 198, 66, 0.16);
  color: #f4c642;
  font-weight: 900;
}

.os-terms-form div {
  padding: 18px;
  border: 1px dashed rgba(226, 171, 45, 0.44);
  background: rgba(0, 0, 0, 0.28);
}

@media (max-width: 900px) {
  .os-terms-page {
    width: min(100%, calc(100vw - 24px));
    margin: 28px auto 52px;
  }

  .os-terms-hero,
  .os-terms-card {
    padding: 24px 18px;
  }

  .os-terms-grid {
    grid-template-columns: 1fr;
  }

  .os-terms-nav {
    position: static;
  }

  .os-terms-data {
    grid-template-columns: 1fr;
  }

  .os-terms-data dt {
    padding-bottom: 4px;
    border-bottom: 0;
  }

  .os-terms-data dd {
    padding-top: 4px;
  }
}

body#product .os-product-shell {
  display: grid !important;
  grid-template-columns: minmax(0, 1.04fr) minmax(420px, 0.96fr) !important;
  gap: 24px !important;
  align-items: stretch !important;
  margin: 0 !important;
}

body#product .os-product-gallery-card,
body#product .os-product-summary-card,
body#product .os-product-detail-panels {
  position: relative !important;
  overflow: hidden !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.045), rgba(255,255,255,0.01) 34%, rgba(214,162,48,0.035)),
    #090909 !important;
  border: 1px solid rgba(214,162,48,0.36) !important;
  box-shadow: 0 28px 70px rgba(0,0,0,0.62) !important;
}

body#product .os-product-gallery-card::before,
body#product .os-product-summary-card::before,
body#product .os-product-detail-panels::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 20% 0%, rgba(244,198,66,0.12), transparent 31%),
    linear-gradient(120deg, transparent 0%, rgba(255,255,255,0.045) 48%, transparent 51%) !important;
  opacity: 0.75 !important;
}

body#product .os-product-gallery-card {
  padding: 24px !important;
  display: flex !important;
  flex-direction: column !important;
}

body#product .os-product-gallery-card #content {
  position: relative !important;
  z-index: 1 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  min-height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}

body#product .os-product-gallery-card .images-container,
body#product .os-product-gallery-card .js-images-container {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
}

body#product .os-product-gallery-card .product-cover {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  aspect-ratio: auto !important;
  width: 100% !important;
  background:
    linear-gradient(118deg, transparent 0 13%, rgba(214,162,48,0.16) 13.2% 13.6%, transparent 13.9% 100%),
    linear-gradient(298deg, transparent 0 77%, rgba(214,162,48,0.13) 77.3% 77.7%, transparent 78% 100%),
    radial-gradient(circle at 50% 43%, rgba(255,255,255,0.24), rgba(255,255,255,0.10) 20%, rgba(214,162,48,0.08) 34%, transparent 55%),
    radial-gradient(ellipse at 50% 84%, rgba(0,0,0,0.86), rgba(0,0,0,0.42) 34%, transparent 64%),
    repeating-linear-gradient(135deg, rgba(255,255,255,0.027) 0 1px, transparent 1px 10px),
    linear-gradient(180deg, #1a1a18 0%, #0b0b0b 54%, #050505 100%) !important;
  border: 1px solid rgba(244,198,66,0.34) !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,0.025),
    inset 0 -80px 100px rgba(0,0,0,0.52) !important;
}

body#product .os-product-gallery-card .product-cover img {
  object-fit: cover !important;
  padding: 0 !important;
  background: transparent !important;
  mix-blend-mode: normal !important;
  filter: drop-shadow(0 28px 34px rgba(0,0,0,0.70)) contrast(1.04) saturate(1.04) !important;
}

body#product .os-product-gallery-card .js-qv-mask {
  flex: 0 0 auto !important;
  margin-top: 18px !important;
  overflow: hidden !important;
  padding: 0 2px !important;
  width: 100% !important;
  background: transparent !important;
  border-top: 0 !important;
}

body#product .os-product-gallery-card .product-images {
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: flex-start !important;
  gap: 12px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  padding: 0 0 4px !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(244,198,66,0.72) rgba(255,255,255,0.08) !important;
}

body#product .os-product-gallery-card .product-images::-webkit-scrollbar {
  height: 5px !important;
}

body#product .os-product-gallery-card .product-images::-webkit-scrollbar-track {
  background: rgba(255,255,255,0.06) !important;
}

body#product .os-product-gallery-card .product-images::-webkit-scrollbar-thumb {
  background: rgba(244,198,66,0.72) !important;
}

body#product .os-product-gallery-card .product-images > li.thumb-container {
  flex: 1 0 0 !important;
  min-width: 82px !important;
  max-width: 116px !important;
}

body#product .os-product-gallery-card .product-images .thumb {
  width: 100% !important;
  height: 82px !important;
  object-fit: cover !important;
  transform: scale(1.16) !important;
  background:
    radial-gradient(circle at 50% 55%, rgba(244,198,66,0.16), transparent 44%),
    linear-gradient(135deg, #15120a, #050505 58%, #111) !important;
  padding: 0 !important;
}

body#product .os-product-gallery-card .product-images > li.thumb-container {
  overflow: hidden !important;
  background:
    radial-gradient(circle at 50% 55%, rgba(244,198,66,0.16), transparent 44%),
    linear-gradient(135deg, #15120a, #050505 58%, #111) !important;
  border: 1px solid rgba(214,162,48,0.36) !important;
}

body#product .os-product-summary-card {
  padding: 30px !important;
  align-self: stretch !important;
}

body#product .os-product-kicker {
  position: relative !important;
  z-index: 1 !important;
  margin: 0 0 9px !important;
  color: #f4c642 !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  letter-spacing: 0.22em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

body#product .os-product-summary-card h1.h1 {
  position: relative !important;
  z-index: 1 !important;
  max-width: 720px !important;
  margin-bottom: 12px !important;
  font-size: clamp(25px, 2.55vw, 34px) !important;
  line-height: 1.08 !important;
  letter-spacing: 0.018em !important;
}

body#product .os-product-summary-card .product-prices,
body#product .os-product-information,
body#product .os-product-actions,
body#product .os-product-reassurance {
  position: relative !important;
  z-index: 1 !important;
}

body#product .os-product-summary-card .product-prices {
  display: flex !important;
  align-items: baseline !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
  margin: 0 0 18px !important;
}

body#product .os-product-summary-card .current-price-value {
  font-size: clamp(25px, 2.2vw, 31px) !important;
  line-height: 1 !important;
}

body#product .os-product-summary-card .tax-shipping-delivery-label {
  margin: 0 !important;
  color: rgba(255,255,255,0.62) !important;
  font-size: 11px !important;
  letter-spacing: 0.1em !important;
}

body#product .os-product-lead {
  margin: 0 0 16px !important;
  padding: 0 !important;
  color: rgba(255,255,255,0.84) !important;
  background: transparent !important;
  border: 0 !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
}

body#product .os-product-benefits {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 9px !important;
  margin: 18px 0 0 !important;
}

body#product .os-product-benefit {
  min-height: 88px !important;
  padding: 12px !important;
  background: linear-gradient(180deg, rgba(255,255,255,0.035), rgba(0,0,0,0.22)) !important;
  border: 1px solid rgba(214,162,48,0.22) !important;
}

body#product .os-product-benefit .material-icons {
  display: block !important;
  margin-bottom: 7px !important;
  color: #f4c642 !important;
  font-size: 21px !important;
}

body#product .os-product-benefit strong,
body#product .os-product-benefit span:last-child {
  display: block !important;
}

body#product .os-product-benefit strong {
  color: #ffffff !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

body#product .os-product-benefit span:last-child {
  margin-top: 4px !important;
  color: rgba(255,255,255,0.62) !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
}

body#product .os-product-actions {
  margin: 18px 0 12px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body#product .os-product-actions .product-add-to-cart {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

body#product .os-product-actions .product-add-to-cart .control-label {
  display: block !important;
  margin: 0 0 8px !important;
  color: #ffffff !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

body#product .os-product-actions .product-quantity {
  grid-template-columns: 74px minmax(180px, 1fr) !important;
  gap: 10px !important;
  align-items: stretch !important;
  margin-bottom: 0 !important;
  padding-top: 4px !important;
}

body#product .os-product-actions .bootstrap-touchspin,
body#product .os-product-actions .bootstrap-touchspin input,
body#product .os-product-actions #quantity_wanted {
  min-height: 44px !important;
  height: 44px !important;
}

body#product .os-product-actions .bootstrap-touchspin {
  width: 74px !important;
}

body#product .os-product-actions .bootstrap-touchspin .input-group-btn-vertical,
body#product .os-product-actions .bootstrap-touchspin .bootstrap-touchspin-up,
body#product .os-product-actions .bootstrap-touchspin .bootstrap-touchspin-down {
  display: none !important;
}

body#product .os-product-actions #quantity_wanted {
  width: 74px !important;
  padding: 0 !important;
  text-align: center !important;
}

body#product .os-product-actions .product-quantity .qty {
  grid-column: 1 !important;
}

body#product .os-product-actions .product-quantity .add {
  grid-column: 2 !important;
}

body#product .os-product-actions .add-to-cart {
  min-height: 44px !important;
  font-size: 12px !important;
  white-space: normal !important;
  line-height: 1.25 !important;
  box-shadow: none !important;
}

body#product .os-product-actions .add-to-cart:disabled {
  cursor: not-allowed !important;
  opacity: 0.68 !important;
  filter: grayscale(0.25) !important;
}

body#product .os-product-actions .wishlist-button-add {
  display: none !important;
}

body#product .os-product-actions #product-availability,
body#product .os-product-actions .product-availability {
  margin-top: 16px !important;
}

body#product .os-product-actions:has(#product-availability .alert-danger) #product-availability,
body#product .os-product-actions:has(#product-availability .alert-danger) .product-availability {
  margin-top: 16px !important;
}

body#product .os-product-actions #product-availability .alert,
body#product .os-product-actions .product-availability .alert {
  display: inline-flex !important;
  width: auto !important;
  min-width: 0 !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 7px 12px !important;
  font-size: 12px !important;
  font-weight: 850 !important;
  color: #ffd9d2 !important;
  border: 1px solid rgba(220,74,54,0.42) !important;
  background: rgba(120,34,28,0.30) !important;
}

body#product .os-product-actions:has(#product-availability .alert-danger) #product-availability .alert,
body#product .os-product-actions:has(#product-availability .alert-danger) .product-availability .alert {
  width: fit-content !important;
  min-width: 190px !important;
  min-height: 42px !important;
  margin-top: 16px !important;
  justify-content: flex-start !important;
  padding: 0 18px !important;
  color: #ffffff !important;
  background:
    linear-gradient(90deg, rgba(125,32,24,0.42), rgba(0,0,0,0.14)),
    rgba(0,0,0,0.12) !important;
  border: 1px solid rgba(220,74,54,0.34) !important;
  border-left: 3px solid rgba(244,198,66,0.88) !important;
  box-shadow: none !important;
}

body#product .os-product-actions #product-availability .alert-content-wrapper,
body#product .os-product-actions .product-availability .alert-content-wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

body#product .os-product-actions #product-availability .alert-content-wrapper > div,
body#product .os-product-actions .product-availability .alert-content-wrapper > div {
  display: flex !important;
  align-items: center !important;
}

body#product .os-product-actions #product-availability .material-icons,
body#product .os-product-actions .product-availability .material-icons {
  color: #f4c642 !important;
  font-size: 21px !important;
  line-height: 1 !important;
}

body#product .os-product-actions:has(#product-availability .alert-danger) #product-availability .material-icons,
body#product .os-product-actions:has(#product-availability .alert-danger) .product-availability .material-icons {
  display: none !important;
}

body#product .os-product-actions:has(#product-availability .alert-danger) #product-availability .alert-content-wrapper > div:last-child,
body#product .os-product-actions:has(#product-availability .alert-danger) .product-availability .alert-content-wrapper > div:last-child {
  font-size: 0 !important;
}

body#product .os-product-actions:has(#product-availability .alert-danger) #product-availability .alert-content-wrapper > div:last-child::after,
body#product .os-product-actions:has(#product-availability .alert-danger) .product-availability .alert-content-wrapper > div:last-child::after {
  content: "Na objednávku" !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.02em !important;
}

body#product .os-product-actions .product-additional-info,
body#product .os-product-actions .social-sharing,
body#product .os-product-actions .js-mailalert,
body.page-product .os-product-actions .product-additional-info,
body.page-product .os-product-actions .social-sharing,
body.page-product .os-product-actions .js-mailalert {
  display: none !important;
}

body#product .os-product-reassurance {
  display: none !important;
}

body#product .os-product-reassurance .blockreassurance_product {
  display: none !important;
}

body#product .os-product-reassurance .blockreassurance_product > div {
  min-height: 74px !important;
  margin: 0 !important;
  align-items: center !important;
}

body#product .os-product-reassurance .blockreassurance_product > div:not(:has(.block-title)) {
  display: none !important;
}

body#product .os-product-reassurance .blockreassurance_product p {
  display: none !important;
}

body#product .os-product-reassurance .blockreassurance_product .block-title {
  font-size: 12px !important;
  line-height: 1.25 !important;
}

body.os-lightbox-open {
  overflow: hidden !important;
}

.os-lightbox {
  position: fixed !important;
  inset: 0 !important;
  z-index: 30000 !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 28px !important;
}

.os-lightbox.is-open {
  display: flex !important;
}

.os-lightbox__backdrop {
  position: absolute !important;
  inset: 0 !important;
  background: rgba(0,0,0,0.78) !important;
  backdrop-filter: blur(2px) !important;
}

.os-lightbox__dialog {
  position: relative !important;
  z-index: 1 !important;
  width: min(1180px, calc(100vw - 56px)) !important;
  max-height: calc(100vh - 56px) !important;
  display: grid !important;
  grid-template-rows: minmax(0, 1fr) auto !important;
  gap: 14px !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.06), rgba(255,255,255,0.015) 34%, rgba(214,162,48,0.045)),
    #090909 !important;
  border: 1px solid rgba(244,198,66,0.42) !important;
  box-shadow: 0 28px 90px rgba(0,0,0,0.82) !important;
}

.os-lightbox__figure {
  min-height: 0 !important;
  margin: 0 !important;
  padding: 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background:
    radial-gradient(circle at 50% 45%, rgba(255,255,255,0.18), rgba(255,255,255,0.06) 30%, transparent 60%),
    repeating-linear-gradient(135deg, rgba(255,255,255,0.025) 0 1px, transparent 1px 10px),
    linear-gradient(180deg, #171717 0%, #070707 100%) !important;
}

.os-lightbox__image {
  display: block !important;
  max-width: 100% !important;
  max-height: calc(100vh - 190px) !important;
  object-fit: contain !important;
  background: transparent !important;
  filter: drop-shadow(0 24px 34px rgba(0,0,0,0.58)) !important;
}

.os-lightbox__close,
.os-lightbox__nav {
  position: absolute !important;
  z-index: 2 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #f4c642 !important;
  background: rgba(0,0,0,0.72) !important;
  border: 1px solid rgba(244,198,66,0.58) !important;
  border-radius: 0 !important;
  cursor: pointer !important;
}

.os-lightbox__close {
  top: 12px !important;
  right: 12px !important;
  width: 42px !important;
  height: 42px !important;
  font-size: 22px !important;
  font-weight: 900 !important;
}

.os-lightbox__nav {
  top: 50% !important;
  width: 48px !important;
  height: 64px !important;
  transform: translateY(-50%) !important;
  font-size: 54px !important;
  line-height: 1 !important;
}

.os-lightbox__nav--prev {
  left: 14px !important;
}

.os-lightbox__nav--next {
  right: 14px !important;
}

.os-lightbox__close:hover,
.os-lightbox__nav:hover {
  color: #000 !important;
  background: #f4c642 !important;
}

.os-lightbox__thumbs {
  display: flex !important;
  gap: 10px !important;
  padding: 0 18px 18px !important;
  overflow-x: auto !important;
  scrollbar-width: thin !important;
  scrollbar-color: rgba(244,198,66,0.74) rgba(255,255,255,0.08) !important;
}

.os-lightbox__thumb {
  flex: 0 0 82px !important;
  width: 82px !important;
  height: 68px !important;
  padding: 0 !important;
  overflow: hidden !important;
  background: #050505 !important;
  border: 1px solid rgba(214,162,48,0.36) !important;
  cursor: pointer !important;
}

.os-lightbox__thumb.is-active {
  border-color: #f4c642 !important;
  box-shadow: 0 0 0 1px #f4c642 inset !important;
}

.os-lightbox__thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

@media (max-width: 767px) {
  .os-lightbox {
    padding: 10px !important;
  }

  .os-lightbox__dialog {
    width: calc(100vw - 20px) !important;
    max-height: calc(100vh - 20px) !important;
  }

  .os-lightbox__figure {
    padding: 12px !important;
  }

  .os-lightbox__image {
    max-height: calc(100vh - 162px) !important;
  }

  .os-lightbox__nav {
    width: 40px !important;
    height: 54px !important;
    font-size: 42px !important;
  }

  .os-lightbox__thumb {
    flex-basis: 68px !important;
    width: 68px !important;
    height: 56px !important;
  }
}

body#product .os-product-detail-panels {
  margin-top: 38px !important;
  padding: 30px !important;
}

body#product .os-product-tabs {
  position: relative !important;
  z-index: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

body#product .os-product-tabs .nav-tabs {
  display: flex !important;
  gap: 12px !important;
  margin-bottom: 24px !important;
  border-bottom: 1px solid rgba(214,162,48,0.28) !important;
}

body#product .os-product-tabs .nav-link {
  padding: 0 0 14px !important;
  color: rgba(255,255,255,0.64) !important;
  font-weight: 950 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

body#product .os-product-tabs .nav-link.active {
  color: #f4c642 !important;
}

body#product .os-product-tabs .tab-content {
  color: rgba(255,255,255,0.78) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}

@media (max-width: 920px) {
  body#product .os-product-shell {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body#product .os-product-gallery-card .product-cover {
    aspect-ratio: 16 / 10 !important;
  }
}

@media (max-width: 760px) {
  body#product .os-product-gallery-card,
  body#product .os-product-summary-card,
  body#product .os-product-detail-panels {
    padding: 18px !important;
  }

  body#product .os-product-summary-card h1.h1 {
    font-size: 30px !important;
  }

  body#product .os-product-benefits,
  body#product .os-product-reassurance .blockreassurance_product {
    grid-template-columns: 1fr !important;
  }

  body#product .os-product-actions .product-quantity {
    grid-template-columns: 88px minmax(0, 1fr) !important;
  }

  body#product .os-product-actions .product-quantity .add {
    grid-column: 1 / -1 !important;
  }

  body#product .os-product-actions .wishlist-button-add {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }

  body#product .os-product-actions .add-to-cart,
  body#product .os-product-actions .js-mailalert-add {
    white-space: normal !important;
    line-height: 1.25 !important;
  }

  body#product .os-product-tabs .nav-tabs {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
}

/* ============================================================
   14. KATEGORIA
   ============================================================ */

#category #wrapper {
  padding-top: 38px !important;
  background:
    radial-gradient(circle at top center, rgba(214, 162, 48, 0.08), transparent 34%),
    linear-gradient(180deg, #050505 0%, #080808 100%) !important;
}

#category #left-column,
#category #content-wrapper {
  color: #ffffff !important;
  padding-top: 0 !important;
}

#category #left-column {
  position: relative !important;
  z-index: 100 !important;
  overflow: visible !important;
  padding-left: 15px !important;
  padding-right: 15px !important;
}

#category #content-wrapper {
  position: relative !important;
  z-index: 1 !important;
  min-height: 400px !important;
  padding-left: 22px !important;
  padding-right: 15px !important;
}

#category .os-shop-top-menu-wrapper,
#category .os-shop-top-menu {
  display: none !important;
}

#category .os-shop-left-menu {
  position: relative !important;
  z-index: 110 !important;
  overflow: visible !important;
  margin-bottom: 24px !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.025), rgba(255, 255, 255, 0.005)),
    #0b0b0b !important;
  border: 1px solid rgba(214, 162, 48, 0.28) !important;
}

#category .os-shop-left-menu__block {
  position: relative !important;
  z-index: 120 !important;
  padding: 18px 18px 14px !important;
  border-bottom: 1px solid rgba(214, 162, 48, 0.18) !important;
}

#category .os-shop-left-menu__block:last-child {
  border-bottom: 0 !important;
}

#category .os-shop-left-menu h3 {
  margin: 0 0 14px !important;
  color: var(--os-gold-2) !important;
  text-transform: uppercase !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em !important;
  line-height: 1.2 !important;
  pointer-events: none !important;
}

#category .os-shop-left-menu ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

#category .os-shop-left-menu li {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

#category .os-shop-left-menu a,
#category .os-shop-left-menu__link {
  display: block !important;
  width: 100% !important;
  min-height: 28px !important;
  padding: 4px 0 !important;
  color: var(--os-gold) !important;
  text-decoration: none !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  cursor: pointer !important;
  pointer-events: auto !important;
}

#category .os-shop-left-menu a:hover,
#category .os-shop-left-menu__link:hover {
  color: #ffffff !important;
  padding-left: 6px !important;
}

/* ============================================================
   15. KATEGORIA - HLAVICKA A FILTER
   ============================================================ */

#category .os-category-header--simple {
  position: relative !important;
  overflow: hidden !important;
  min-height: 74px !important;
  padding: 0 28px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  background:
    linear-gradient(90deg, rgba(214,162,48,0.10) 0%, rgba(214,162,48,0.04) 18%, rgba(255,255,255,0.015) 50%, rgba(214,162,48,0.04) 82%, rgba(214,162,48,0.10) 100%),
    linear-gradient(180deg, rgba(255,255,255,0.028) 0%, rgba(255,255,255,0.008) 100%),
    linear-gradient(180deg, #111111 0%, #090909 55%, #050505 100%) !important;
  border: 1px solid rgba(214, 162, 48, 0.26) !important;
  box-shadow:
    0 14px 34px rgba(0,0,0,0.45),
    inset 0 1px 0 rgba(255,255,255,0.04),
    inset 0 0 40px rgba(214,162,48,0.04) !important;
}

#category .os-category-header--simple::before,
#category .os-category-header--simple::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
}

#category .os-category-header--simple::before {
  opacity: 0.22;
  background:
    repeating-linear-gradient(100deg, transparent 0 14px, rgba(255,255,255,0.025) 14px 15px, transparent 15px 28px),
    repeating-linear-gradient(80deg, transparent 0 18px, rgba(214,162,48,0.02) 18px 19px, transparent 19px 36px);
}

#category .os-category-header--simple::after {
  opacity: 0.16;
  background:
    radial-gradient(circle at 12% 50%, rgba(214,162,48,0.12), transparent 18%),
    radial-gradient(circle at 88% 50%, rgba(214,162,48,0.12), transparent 18%);
}

#category .os-category-header__content {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
}

#category .os-category-path {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  color: var(--os-gold) !important;
  text-align: left !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: 0.10em !important;
  line-height: 1.3 !important;
}

#category .os-category-path span,
#category .os-category-path em {
  display: inline-flex !important;
  align-items: center !important;
  white-space: nowrap !important;
}

#category .os-category-path span {
  color: var(--os-gold) !important;
}

#category .os-category-path em {
  color: rgba(214, 162, 48, 0.55) !important;
  font-style: normal !important;
}

#category .os-category-header--simple h1 {
  display: none !important;
}

#category .os-category-header__description {
  max-width: 760px !important;
  margin-top: 12px !important;
  color: #cfcfcf !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
}

#category .os-category-sort {
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  margin-left: auto !important;
  position: relative !important;
  z-index: 3 !important;
}

#category .os-category-sort > span {
  color: #ffffff !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  white-space: nowrap !important;
}

#category .os-category-sort .products-sort-order {
  margin: 0 !important;
  display: block !important;
}

#category .os-category-sort .products-sort-order .select-title {
  min-width: 230px !important;
  height: 42px !important;
  padding: 0 42px 0 16px !important;
  display: flex !important;
  align-items: center !important;
  background: #0b0b0b !important;
  border: 1px solid rgba(214, 162, 48, 0.35) !important;
  color: var(--os-gold-2) !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

#category .os-category-sort .products-sort-order .select-title:hover {
  border-color: rgba(229, 189, 86, 0.70) !important;
  color: #ffffff !important;
}

#category .os-category-sort .products-sort-order .dropdown-menu {
  background: #080808 !important;
  border: 1px solid rgba(214, 162, 48, 0.35) !important;
  border-radius: 0 !important;
  box-shadow: 0 18px 38px rgba(0,0,0,0.75) !important;
}

#category .os-category-sort .products-sort-order .dropdown-menu a {
  color: var(--os-gold) !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}

#category .os-category-sort .products-sort-order .dropdown-menu a:hover {
  background: rgba(214, 162, 48, 0.12) !important;
  color: #ffffff !important;
}

#category #js-product-list-top.products-selection,
#category .products-selection {
  display: none !important;
}

#category .os-category-sort .products-selection,
#category .os-category-sort .products-sort-order {
  display: block !important;
}

#category #content-wrapper {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

#category .os-category-header--simple,
#category #js-product-list,
#category .pagination {
  width: min(100%, 100%) !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

#category .os-category-header--simple {
  margin-bottom: 30px !important;
}

#category #js-product-list .products.row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 28px 24px !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

#category #js-product-list .products.row > .product {
  width: auto !important;
  max-width: none !important;
  flex: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin-bottom: 0 !important;
}

#category #js-product-list .product-miniature,
#category #js-product-list .product-miniature .thumbnail-container {
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

#category #js-product-list .product-miniature .thumbnail-container {
  display: flex !important;
  flex-direction: column !important;
}

/* ============================================================
   16A. KOSIK
   ============================================================ */

body#cart #wrapper,
body#cart #main,
body#cart .cart-grid {
  color: #ffffff !important;
}

body#cart .cart-grid {
  max-width: 1180px;
  margin: 0 auto;
  padding: 58px 18px 48px;
}

body#cart .cart-container,
body#cart .cart-summary,
body#cart #block-reassurance,
body#cart .blockreassurance_product,
body#cart .cart-detailed-totals,
body#cart #js-checkout-summary {
  background:
    linear-gradient(135deg, rgba(255,255,255,0.035), rgba(214,162,48,0.055) 42%, rgba(0,0,0,0.2)),
    #080808 !important;
  border: 1px solid rgba(214, 162, 48, 0.36) !important;
  border-radius: 0 !important;
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.55) !important;
  color: #ffffff !important;
}

body#cart .cart-container .card-block,
body#cart .cart-summary .card-block {
  padding: 24px 24px 18px !important;
}

body#cart .cart-container .h1,
body#cart h1,
body#cart .h1 {
  color: #ffffff !important;
  font-size: clamp(26px, 3vw, 40px) !important;
  line-height: 1.05 !important;
  margin: 0 !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  letter-spacing: 0.05em !important;
  text-shadow: 0 3px 0 #000000 !important;
}

body#cart .separator,
body#cart hr {
  border-color: rgba(214, 162, 48, 0.28) !important;
}

body#cart .cart-item {
  padding: 22px 24px !important;
  border-bottom: 1px solid rgba(214, 162, 48, 0.18) !important;
}

body#cart .cart-item:last-child {
  border-bottom: 0 !important;
}

body#cart .product-line-grid {
  align-items: center !important;
}

body#cart .product-image img {
  width: 118px !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  filter: drop-shadow(0 12px 18px rgba(0, 0, 0, 0.65));
}

body#cart .product-line-info .label,
body#cart .product-line-info a.label,
body#cart .product-line-info .value {
  color: #ffffff !important;
  opacity: 1 !important;
}

body#cart .product-line-info a.label {
  display: inline-block;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  text-decoration: none !important;
}

body#cart .product-line-info a.label:hover {
  color: var(--os-gold-2) !important;
}

body#cart .product-price,
body#cart .product-price strong,
body#cart .current-price .price,
body#cart .cart-summary-line .value,
body#cart .cart-total .value {
  color: var(--os-gold-2) !important;
  font-weight: 900 !important;
}

body#cart .product-line-grid-right .row {
  align-items: center !important;
}

body#cart .bootstrap-touchspin,
body#cart .js-cart-line-product-quantity {
  border-radius: 0 !important;
}

body#cart .js-cart-line-product-quantity {
  min-height: 38px !important;
  background: #020202 !important;
  color: #ffffff !important;
  border: 1px solid rgba(214, 162, 48, 0.55) !important;
  font-weight: 900 !important;
  text-align: center !important;
}

body#cart .bootstrap-touchspin .btn-touchspin,
body#cart .bootstrap-touchspin .input-group-btn-vertical > .btn {
  background: #111111 !important;
  border-color: rgba(214, 162, 48, 0.35) !important;
  color: var(--os-gold-2) !important;
}

body#cart .remove-from-cart,
body#cart .remove-from-cart i,
body#cart .cart-line-product-actions a {
  color: rgba(255,255,255,0.55) !important;
}

body#cart .remove-from-cart:hover,
body#cart .remove-from-cart:hover i {
  color: var(--os-gold-2) !important;
}

body#cart .cart-summary-line {
  display: flex !important;
  justify-content: space-between !important;
  gap: 16px !important;
  color: #ffffff !important;
  padding: 8px 0 !important;
}

body#cart .cart-summary-line .label,
body#cart .cart-summary-line small,
body#cart .cart-summary-line span {
  color: rgba(255,255,255,0.82) !important;
  opacity: 1 !important;
}

body#cart .cart-detailed-subtotals {
  border-bottom: 1px solid rgba(255,255,255,0.22) !important;
}

body#cart .cart-total {
  padding-top: 14px !important;
  font-size: 16px !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
}

body#cart .checkout a,
body#cart .cart-detailed-actions a,
body#cart .cart-grid .btn-primary {
  min-height: 46px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  background: linear-gradient(180deg, #ffd24d, #c8911c) !important;
  border: 0 !important;
  color: #050505 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  box-shadow: 0 14px 28px rgba(214, 162, 48, 0.22) !important;
}

body#cart .checkout a:hover,
body#cart .cart-detailed-actions a:hover,
body#cart .cart-grid .btn-primary:hover {
  background: linear-gradient(180deg, #ffe27a, #dca329) !important;
}

body#cart a.label,
body#cart .cart-grid-body > a.label {
  display: inline-flex !important;
  align-items: center !important;
  margin-top: 18px !important;
  color: var(--os-gold-2) !important;
  opacity: 1 !important;
  text-decoration: none !important;
}

body#cart #block-reassurance {
  margin-top: 20px !important;
  padding: 18px !important;
}

body#cart .blockreassurance_product {
  margin-top: 22px !important;
  padding: 18px !important;
}

body#cart .blockreassurance_product > div,
body#cart .blockreassurance_product .block-reassurance-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  margin: 0 0 16px !important;
  color: rgba(255,255,255,0.82) !important;
  opacity: 1 !important;
}

body#cart .blockreassurance_product > div:last-child,
body#cart .blockreassurance_product .block-reassurance-item:last-child {
  margin-bottom: 0 !important;
}

body#cart .blockreassurance_product .block-title,
body#cart .blockreassurance_product span,
body#cart .blockreassurance_product strong {
  color: var(--os-gold-2) !important;
  opacity: 1 !important;
  font-weight: 900 !important;
}

body#cart .blockreassurance_product p,
body#cart .blockreassurance_product small,
body#cart .blockreassurance_product div,
body#cart .blockreassurance_product a {
  color: rgba(255,255,255,0.78) !important;
  opacity: 1 !important;
}

body#cart .blockreassurance_product svg,
body#cart .blockreassurance_product img,
body#cart .blockreassurance_product i,
body#cart .blockreassurance_product .material-icons {
  color: var(--os-gold-2) !important;
  fill: var(--os-gold-2) !important;
  opacity: 0.95 !important;
  flex: 0 0 28px !important;
  width: 28px !important;
  max-width: 28px !important;
}

body#cart #block-reassurance li,
body#cart #block-reassurance span,
body#cart #block-reassurance p,
body#cart #block-reassurance .block-reassurance-item {
  color: rgba(255,255,255,0.78) !important;
  opacity: 1 !important;
}

body#cart #block-reassurance .material-icons,
body#cart #block-reassurance i {
  color: var(--os-gold-2) !important;
}

body#product #notifications .alert-info,
body.page-product #notifications .alert-info {
  display: none !important;
}

/* ============================================================
   16B. MODAL PO PRIDANI DO KOSIKA
   ============================================================ */

#blockcart-modal {
  color: #ffffff !important;
}

#blockcart-modal .modal-dialog {
  max-width: 940px !important;
  margin-top: 8vh !important;
}

#blockcart-modal .modal-content {
  background:
    radial-gradient(circle at 18% 18%, rgba(214, 162, 48, 0.16), transparent 34%),
    linear-gradient(135deg, rgba(255,255,255,0.04), rgba(214,162,48,0.055) 44%, rgba(0,0,0,0.2)),
    #080808 !important;
  border: 1px solid rgba(214, 162, 48, 0.48) !important;
  border-radius: 0 !important;
  box-shadow: 0 28px 80px rgba(0, 0, 0, 0.82) !important;
  overflow: hidden !important;
}

#blockcart-modal .modal-header {
  min-height: 64px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 18px 58px 16px !important;
  border-bottom: 1px solid rgba(214, 162, 48, 0.30) !important;
  background: rgba(0, 0, 0, 0.28) !important;
}

#blockcart-modal .modal-title {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  color: #ffffff !important;
  text-transform: uppercase !important;
  font-size: clamp(17px, 2vw, 24px) !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
  text-shadow: 0 3px 0 #000000 !important;
}

#blockcart-modal .modal-title .material-icons {
  color: var(--os-gold-2) !important;
  font-size: 25px !important;
}

#blockcart-modal .close {
  position: absolute !important;
  right: 18px !important;
  top: 18px !important;
  width: 34px !important;
  height: 34px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--os-gold-2) !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

#blockcart-modal .close:hover {
  color: #ffffff !important;
}

#blockcart-modal .modal-body {
  padding: 28px 30px 30px !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.035), rgba(214,162,48,0.06) 44%, rgba(0,0,0,0.3)),
    #080808 !important;
  color: #ffffff !important;
}

#blockcart-modal .modal-body > .row {
  align-items: stretch !important;
}

#blockcart-modal .modal-body .col-md-5,
#blockcart-modal .modal-body .col-md-7 {
  background: transparent !important;
  color: #ffffff !important;
}

#blockcart-modal .modal-body * {
  border-color: rgba(214, 162, 48, 0.26);
}

#blockcart-modal .divide-right {
  border-right: 1px solid rgba(214, 162, 48, 0.26) !important;
}

#blockcart-modal .divide-right > .row {
  min-height: 100% !important;
  align-items: center !important;
}

#blockcart-modal .product-image {
  width: 100% !important;
  max-width: 190px !important;
  height: auto !important;
  display: block !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  filter: drop-shadow(0 18px 24px rgba(0, 0, 0, 0.72));
}

#blockcart-modal .product-name {
  color: #ffffff !important;
  font-size: 17px !important;
  line-height: 1.15 !important;
  text-transform: uppercase !important;
  font-weight: 900 !important;
  letter-spacing: 0.04em !important;
  margin: 6px 0 10px !important;
}

#blockcart-modal .product-price,
#blockcart-modal .value,
#blockcart-modal .subtotal,
#blockcart-modal .shipping {
  color: var(--os-gold-2) !important;
  font-weight: 900 !important;
}

#blockcart-modal .product-quantity,
#blockcart-modal .cart-products-count,
#blockcart-modal .cart-content p,
#blockcart-modal .cart-content span,
#blockcart-modal .label {
  color: rgba(255,255,255,0.84) !important;
  opacity: 1 !important;
}

#blockcart-modal .cart-products-count {
  font-size: 16px !important;
  color: #ffffff !important;
  font-weight: 900 !important;
  margin-bottom: 16px !important;
}

#blockcart-modal .cart-content {
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  color: #ffffff !important;
}

#blockcart-modal .cart-content p {
  display: flex !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin: 0 !important;
  padding: 9px 0 !important;
}

#blockcart-modal .product-total {
  margin-top: 10px !important;
  padding: 13px 14px !important;
  background: rgba(214, 162, 48, 0.13) !important;
  border: 1px solid rgba(214, 162, 48, 0.22) !important;
}

#blockcart-modal .product-total .label {
  color: #ffffff !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

#blockcart-modal .cart-content-btn {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 12px !important;
  margin-top: 18px !important;
}

#blockcart-modal .cart-content-btn .btn {
  min-height: 52px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  border-radius: 0 !important;
  text-transform: uppercase !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  white-space: normal !important;
}

#blockcart-modal .cart-content-btn .btn-secondary {
  background: rgba(0, 0, 0, 0.24) !important;
  border: 1px solid rgba(214, 162, 48, 0.55) !important;
  color: var(--os-gold-2) !important;
}

#blockcart-modal .cart-content-btn .btn-secondary:hover {
  background: rgba(214, 162, 48, 0.12) !important;
  color: #ffffff !important;
}

#blockcart-modal .cart-content-btn .btn-primary {
  background: linear-gradient(180deg, #ffd24d, #c8911c) !important;
  border: 1px solid #ffd24d !important;
  color: #050505 !important;
  box-shadow: 0 16px 30px rgba(214, 162, 48, 0.24) !important;
}

#blockcart-modal .cart-content-btn .btn-primary:hover {
  background: linear-gradient(180deg, #ffe27a, #dca329) !important;
}

#blockcart-modal .cart-content-btn .btn-primary .material-icons {
  margin-right: 8px !important;
  color: #050505 !important;
}

@media (max-width: 767px) {
  #blockcart-modal .modal-dialog {
    margin: 18px 12px !important;
  }

  #blockcart-modal .modal-header {
    padding: 16px 52px 14px 18px !important;
    justify-content: flex-start !important;
  }

  #blockcart-modal .modal-body {
    padding: 22px 18px !important;
  }

  #blockcart-modal .divide-right {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(214, 162, 48, 0.26) !important;
    padding-bottom: 20px !important;
    margin-bottom: 20px !important;
  }

  #blockcart-modal .cart-content-btn {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 991px) {
  body#cart .cart-grid {
    padding: 44px 14px 36px;
  }

  body#cart .cart-grid-right {
    margin-top: 22px !important;
  }
}

@media (max-width: 575px) {
  body#cart .cart-item {
    padding: 18px 14px !important;
  }

  body#cart .product-line-grid-left,
  body#cart .product-line-grid-body,
  body#cart .product-line-grid-right {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    text-align: left !important;
  }

  body#cart .product-line-grid-left {
    margin-bottom: 14px !important;
  }

  body#cart .product-line-grid-right {
    margin-top: 14px !important;
  }
}

/* ============================================================
   16. KATEGORIA - PODKATEGORIE
   ============================================================ */


#category .os-subcategories--catalog,
#category .os-shop-category-grid {
  margin: 24px 0 42px !important;
}

#category .os-subcategories__grid,
#category .os-shop-category-grid__inner {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

#category .os-subcategory-card,
#category .os-shop-category-card {
  position: relative !important;
  display: block !important;
  height: 165px !important;
  overflow: hidden !important;
  text-decoration: none !important;
  background: #080808 !important;
  border: 1px solid rgba(214, 162, 48, 0.30) !important;
  box-shadow:
    0 14px 32px rgba(0, 0, 0, 0.50),
    inset 0 1px 0 rgba(255, 255, 255, 0.035) !important;
}

#category .os-subcategory-card:hover,
#category .os-shop-category-card:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(229, 189, 86, 0.70) !important;
  box-shadow:
    0 20px 42px rgba(0, 0, 0, 0.72),
    0 0 22px rgba(214, 162, 48, 0.14) !important;
}

#category .os-subcategory-card__image,
#category .os-shop-category-card__image {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  overflow: hidden !important;
}

#category .os-subcategory-card__image img,
#category .os-shop-category-card__image img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  filter: brightness(0.94) contrast(1.05) saturate(1.08) !important;
  transition: transform 0.28s ease, filter 0.28s ease !important;
}

#category .os-subcategory-card:hover .os-subcategory-card__image img,
#category .os-shop-category-card:hover .os-shop-category-card__image img {
  transform: scale(1.055) !important;
  filter: brightness(1.03) contrast(1.07) saturate(1.12) !important;
}

#category .os-subcategory-card::after,
#category .os-shop-category-card::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(0,0,0,0.04) 0%, rgba(0,0,0,0.20) 45%, rgba(0,0,0,0.86) 100%);
}

#category .os-subcategory-card strong,
#category .os-shop-category-card strong {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 3 !important;
  min-height: 50px !important;
  padding: 24px 10px 13px !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
  color: var(--os-gold-2) !important;
  text-align: center !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.25 !important;
  background: linear-gradient(180deg, rgba(0,0,0,0.00) 0%, rgba(0,0,0,0.45) 45%, rgba(0,0,0,0.90) 100%) !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.95), 0 0 12px rgba(214, 162, 48, 0.18) !important;
}

/* ============================================================
   17. KONTAKT
   ============================================================ */

body#contact #wrapper {
  background:
    radial-gradient(circle at 18% 18%, rgba(214, 162, 48, 0.10), transparent 28%),
    linear-gradient(180deg, #050505 0%, #090806 48%, #050505 100%) !important;
}

body#contact .os-contact-page {
  padding: 42px 0 48px !important;
  border-bottom: 1px solid rgba(214, 162, 48, 0.30) !important;
}

body#contact .os-contact-page__inner {
  max-width: 1120px !important;
  display: grid !important;
  grid-template-columns: minmax(280px, 0.36fr) minmax(0, 1fr) !important;
  gap: 28px !important;
  align-items: stretch !important;
}

body#contact .os-contact-info,
body#contact .os-contact-panel {
  border: 1px solid rgba(214, 162, 48, 0.38) !important;
  background:
    linear-gradient(rgba(0, 0, 0, 0.55), rgba(0, 0, 0, 0.72)),
    url("../img/contact-offroad-bg.png") center / cover no-repeat,
    #080808 !important;
  box-shadow:
    0 22px 52px rgba(0,0,0,0.58),
    inset 0 1px 0 rgba(255,255,255,0.04) !important;
}

body#contact .os-contact-info {
  min-height: 100% !important;
  padding: 34px 30px !important;
}

body#contact .os-contact-panel {
  padding: 0 !important;
  overflow: hidden !important;
}

body#contact .os-contact-rich h4 {
  margin: 0 0 24px !important;
  color: var(--os-gold-2) !important;
  text-transform: uppercase !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  letter-spacing: 0.12em !important;
}

body#contact .os-contact-rich .block {
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) !important;
  gap: 14px !important;
  align-items: start !important;
  margin: 0 0 24px !important;
}

body#contact .os-contact-rich .icon {
  color: var(--os-gold-2) !important;
  opacity: 0.95 !important;
}

body#contact .os-contact-rich .icon .material-icons {
  font-size: 28px !important;
}

body#contact .os-contact-rich .data {
  color: #cfcfcf !important;
  font-size: 14px !important;
  line-height: 1.58 !important;
}

body#contact .os-contact-rich a {
  color: var(--os-gold-2) !important;
  text-decoration: none !important;
}

body#contact .os-contact-form {
  padding: 38px 42px 34px !important;
}

body#contact .os-contact-form__head {
  margin: 0 0 26px !important;
  padding-bottom: 20px !important;
  border-bottom: 1px solid rgba(214, 162, 48, 0.28) !important;
}

body#contact .os-contact-form__head span {
  display: block !important;
  margin-bottom: 8px !important;
  color: var(--os-gold-2) !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.18em !important;
}

body#contact .os-contact-form__head h1 {
  margin: 0 0 10px !important;
  color: #ffffff !important;
  text-transform: uppercase !important;
  font-size: clamp(25px, 2.4vw, 36px) !important;
  line-height: 1.05 !important;
  font-weight: 950 !important;
  letter-spacing: 0.06em !important;
}

body#contact .os-contact-form__head p {
  max-width: 680px !important;
  margin: 0 !important;
  color: #cfcfcf !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
}

body#contact .os-contact-form__fields {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px 20px !important;
}

body#contact .os-contact-field {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 9px !important;
  align-items: start !important;
  margin: 0 !important;
}

body#contact .os-contact-field--file,
body#contact .os-contact-field--message {
  grid-column: 1 / -1 !important;
}

body#contact .os-contact-field > span {
  margin: 0 !important;
  color: var(--os-gold-2) !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
}

body#contact .os-contact-field input,
body#contact .os-contact-field select,
body#contact .os-contact-field textarea {
  width: 100% !important;
  min-height: 50px !important;
  padding: 0 16px !important;
  background: #050505 !important;
  color: #f1f1f1 !important;
  border: 1px solid rgba(214, 162, 48, 0.38) !important;
  border-radius: 0 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.03) !important;
}

body#contact .os-contact-field textarea {
  min-height: 145px !important;
  padding-top: 14px !important;
  line-height: 1.55 !important;
}

body#contact .os-contact-field input:focus,
body#contact .os-contact-field select:focus,
body#contact .os-contact-field textarea:focus {
  border-color: var(--os-gold-2) !important;
  outline: 0 !important;
  box-shadow:
    0 0 0 1px rgba(214, 162, 48, 0.22),
    0 0 18px rgba(214, 162, 48, 0.14) !important;
}

body#contact .os-contact-field input::placeholder,
body#contact .os-contact-field textarea::placeholder {
  color: #8d8d8d !important;
}

body#contact .os-contact-field--file input[type="file"] {
  padding: 11px 12px !important;
  color: #d8d8d8 !important;
}

body#contact .os-contact-field--file input[type="file"]::file-selector-button {
  margin-right: 14px !important;
  padding: 8px 14px !important;
  background: linear-gradient(180deg, var(--os-gold-2), var(--os-gold)) !important;
  color: #050505 !important;
  border: 0 !important;
  text-transform: uppercase !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
}

body#contact .os-contact-field em {
  align-self: center !important;
  color: #a9a9a9 !important;
  font-style: normal !important;
  font-size: 13px !important;
}

body#contact .os-contact-form__footer {
  margin-top: 24px !important;
  text-align: right !important;
}

body#contact .os-contact-form__footer button {
  min-height: 48px !important;
  padding: 0 32px !important;
  background: linear-gradient(180deg, var(--os-gold-2), var(--os-gold)) !important;
  color: #050505 !important;
  border: 1px solid var(--os-gold-2) !important;
  border-radius: 0 !important;
  text-transform: uppercase !important;
  font-size: 13px !important;
  font-weight: 950 !important;
  letter-spacing: 0.10em !important;
  box-shadow: 0 16px 34px rgba(214, 162, 48, 0.18) !important;
}

body#contact .os-contact-form__footer button:hover {
  background: #ffffff !important;
  border-color: #ffffff !important;
}

body#contact .os-contact-notification {
  margin: 0 0 22px !important;
  padding: 14px 16px !important;
  border: 1px solid rgba(214, 162, 48, 0.34) !important;
  color: #ffffff !important;
  background: rgba(214, 162, 48, 0.10) !important;
}

body#contact .os-contact-notification--error {
  border-color: rgba(255, 76, 76, 0.45) !important;
  background: rgba(255, 76, 76, 0.10) !important;
}

body#contact .os-contact-notification ul {
  margin: 0 !important;
  padding-left: 18px !important;
}

body#contact .os-contact-page {
  padding: 48px 0 68px !important;
}

body#contact .os-contact-page > .container {
  max-width: var(--os-container) !important;
  padding-left: var(--os-side-space) !important;
  padding-right: var(--os-side-space) !important;
}

body#contact .os-contact-top {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 28px !important;
  margin-bottom: 28px !important;
  align-items: stretch !important;
}

body#contact .os-contact-info,
body#contact .os-contact-map,
body#contact .os-contact-panel {
  border: 1px solid rgba(214, 162, 48, 0.34) !important;
  background:
    linear-gradient(rgba(0, 0, 0, 0.62), rgba(0, 0, 0, 0.76)),
    url("../img/contact-offroad-bg.png") center / cover no-repeat,
    #080808 !important;
  box-shadow:
    0 22px 52px rgba(0,0,0,0.58),
    inset 0 1px 0 rgba(255,255,255,0.035) !important;
}

body#contact .os-contact-info {
  height: 420px !important;
  min-height: 420px !important;
  padding: 34px 34px !important;
  box-sizing: border-box !important;
}

body#contact .os-contact-map {
  height: 420px !important;
  min-height: 420px !important;
  padding: 8px !important;
  overflow: hidden !important;
  position: relative !important;
  display: flex !important;
  box-sizing: border-box !important;
}

body#contact .os-contact-map iframe {
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  flex: 1 1 auto !important;
  display: block !important;
  border: 0 !important;
  filter: none !important;
}

body#contact .os-contact-map__link {
  position: absolute !important;
  top: 18px !important;
  right: 18px !important;
  z-index: 2 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 34px !important;
  padding: 0 14px !important;
  border: 1px solid rgba(214, 162, 48, 0.72) !important;
  background: rgba(0, 0, 0, 0.82) !important;
  color: #f4c642 !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  box-shadow: 0 10px 24px rgba(0,0,0,0.45) !important;
}

body#contact .os-contact-map__link:hover {
  background: #d6a230 !important;
  color: #050505 !important;
}

body#contact .os-contact-panel {
  width: 100% !important;
  padding: 0 !important;
}

body#contact .os-contact-rich > span,
body#contact .os-contact-form__head span {
  display: block !important;
  margin-bottom: 10px !important;
  color: var(--os-gold-2) !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.16em !important;
}

body#contact .os-contact-rich h4 {
  max-width: 330px !important;
  margin: 0 0 28px !important;
  color: #ffffff !important;
  text-transform: none !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(28px, 3vw, 42px) !important;
  font-weight: 700 !important;
  line-height: 1.05 !important;
  letter-spacing: 0 !important;
}

body#contact .os-contact-rich .block {
  grid-template-columns: 38px minmax(0, 1fr) !important;
  gap: 16px !important;
  margin-bottom: 22px !important;
}

body#contact .os-contact-rich__items {
  display: block !important;
}

body#contact .os-contact-rich .data strong {
  display: block !important;
  margin-bottom: 5px !important;
  color: #ffffff !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
}

body#contact .os-contact-form {
  padding: 40px 42px 34px !important;
}

body#contact .os-contact-form__head {
  max-width: 920px !important;
  margin-bottom: 30px !important;
  padding-bottom: 0 !important;
  border-bottom: 0 !important;
}

body#contact .os-contact-form__head h1 {
  color: #ffffff !important;
  text-transform: none !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: clamp(32px, 4vw, 54px) !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}

body#contact .os-contact-form__head p {
  max-width: 880px !important;
  margin-top: 28px !important;
  color: #e5e5e5 !important;
  font-size: 18px !important;
}

body#contact .os-contact-form__fields {
  max-width: 860px !important;
  grid-template-columns: 1fr !important;
  gap: 14px !important;
}

body#contact .os-contact-field {
  gap: 9px !important;
}

body#contact .os-contact-field > span {
  color: #ffffff !important;
  font-size: 12px !important;
  letter-spacing: 0.03em !important;
}

body#contact .os-contact-field input,
body#contact .os-contact-field textarea {
  min-height: 44px !important;
  background: #060606 !important;
  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  color: #ffffff !important;
}

body#contact .os-contact-field textarea {
  min-height: 160px !important;
}

body#contact .os-contact-form__footer {
  max-width: 860px !important;
  margin-top: 22px !important;
  text-align: left !important;
}

body#contact .os-contact-form__footer button {
  min-width: 220px !important;
  background: linear-gradient(180deg, #ff9b2d, #f18718) !important;
  border-color: #ff9b2d !important;
  box-shadow: 0 14px 34px rgba(241, 135, 24, 0.20) !important;
}

body#contact .os-contact-form__fields,
body#contact .os-contact-form__footer {
  width: min(100%, 820px) !important;
  max-width: none !important;
}

body#contact .os-contact-field {
  width: 100% !important;
  justify-items: stretch !important;
  text-align: left !important;
}

body#contact .os-contact-field > span {
  justify-self: start !important;
  text-align: left !important;
  margin-bottom: 3px !important;
}

body#contact .os-contact-field input,
body#contact .os-contact-field textarea {
  width: 100% !important;
  box-sizing: border-box !important;
}

body#contact .os-contact-field + .os-contact-field {
  margin-top: 4px !important;
}

body#contact .os-contact-form__footer {
  padding-top: 4px !important;
}

body#contact .os-contact-rich h4 {
  font-size: clamp(24px, 2.3vw, 34px) !important;
  line-height: 1.08 !important;
}

body#contact .os-contact-form__head h1 {
  font-size: clamp(28px, 3vw, 42px) !important;
  line-height: 1.08 !important;
}

body#contact .os-contact-form__layout {
  display: grid !important;
  grid-template-columns: minmax(280px, 0.44fr) minmax(420px, 0.56fr) !important;
  gap: clamp(34px, 5vw, 72px) !important;
  align-items: start !important;
}

body#contact .os-contact-form__head {
  max-width: none !important;
  margin-bottom: 0 !important;
}

body#contact .os-contact-form__head p {
  max-width: 460px !important;
}

body#contact .os-contact-form__note {
  margin-top: 34px !important;
  padding: 22px 24px !important;
  border-left: 3px solid #ff9b2d !important;
  background: rgba(255, 155, 45, 0.07) !important;
}

body#contact .os-contact-form__note strong {
  display: block !important;
  margin-bottom: 8px !important;
  color: #ffbd58 !important;
  text-transform: uppercase !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
}

body#contact .os-contact-form__note p {
  margin: 0 !important;
  color: #d7d7d7 !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
}

body#contact .os-contact-form__body {
  width: 100% !important;
}

body#contact .os-contact-form__fields,
body#contact .os-contact-form__footer {
  width: 100% !important;
}

body#contact #content,
body#contact #content-wrapper,
body#contact .page-content,
body#contact .page-content > .container {
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body#contact .os-contact-page {
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

body#contact .os-contact-page > .container {
  width: 100% !important;
  max-width: var(--os-container) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: var(--os-side-space) !important;
  padding-right: var(--os-side-space) !important;
}

body#contact .os-contact-top,
body#contact .os-contact-panel {
  width: 100% !important;
}

#category #subcategories,
#category .subcategories {
  display: none !important;
}

/* ============================================================
   17. FOOTER - VIDEO + NEWSLETTER
   ============================================================ */

#footer {
  background: linear-gradient(180deg, #080808 0%, #030303 100%) !important;
  color: var(--os-muted) !important;
  border-top: 1px solid rgba(214, 162, 48, 0.35) !important;
}

.os-footer-media {
  position: relative !important;
  padding: 58px 0 48px !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 18% 32%, rgba(214, 162, 48, 0.14), transparent 30%),
    radial-gradient(circle at 78% 42%, rgba(214, 162, 48, 0.10), transparent 30%),
    linear-gradient(180deg, #0a0a0a 0%, #050505 100%) !important;
  border-bottom: 1px solid rgba(214, 162, 48, 0.28) !important;
}

.os-footer-media__inner {
  position: relative !important;
  z-index: 2 !important;
  max-width: var(--os-container) !important;
  margin: 0 auto !important;
  padding-left: var(--os-side-space) !important;
  padding-right: var(--os-side-space) !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(360px, 0.85fr) !important;
  gap: 46px !important;
  align-items: stretch !important;
}

.os-footer-video-embed,
.os-footer-newsletter {
  border: 1px solid rgba(214, 162, 48, 0.36) !important;
  box-shadow:
    0 24px 58px rgba(0,0,0,0.66),
    0 0 30px rgba(214, 162, 48, 0.08),
    inset 0 1px 0 rgba(255,255,255,0.04) !important;
}

.os-footer-video-embed {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.025), rgba(255,255,255,0.005)),
    #080808 !important;
  overflow: hidden !important;
}

.os-footer-video-embed__head {
  position: relative;
  padding: 22px 26px 18px !important;
  border-bottom: 1px solid rgba(214, 171, 55, 0.35);
  background:
    linear-gradient(rgba(0, 0, 0, 0.20), rgba(0, 0, 0, 0.55)),
    url("../img/offroad-metal-video-bg.png") center top / cover no-repeat !important;
}

.os-footer-video-embed__head small,
.os-footer-newsletter small {
  display: block !important;
  margin-bottom: 9px !important;
  color: var(--os-gold-2) !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.18em !important;
}

.os-footer-video-embed__head strong {
  display: block !important;
  color: #ffffff !important;
  text-transform: uppercase !important;
  font-size: clamp(22px, 2vw, 32px) !important;
  line-height: 1.05 !important;
  font-weight: 950 !important;
  letter-spacing: 0.055em !important;
}

.os-footer-video-embed__frame {
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 16 / 9 !important;
  background: #000000 !important;
}

.os-footer-video-embed__frame iframe {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  border: 0 !important;
}

.os-footer-newsletter {
  position: relative;
  padding: 38px 40px !important;
  background:
    linear-gradient(rgba(0, 0, 0, 0.25), rgba(0, 0, 0, 0.38)),
    url("../img/offroad-section-bg.png") center / cover no-repeat !important;
  overflow: hidden;
}

.os-footer-newsletter::before {
  display: none;
}

.os-footer-newsletter > * {
  position: relative;
  z-index: 1;
}

.os-footer-newsletter h3 {
  margin: 0 0 15px !important;
  color: var(--os-gold-2) !important;
  text-transform: uppercase !important;
  font-size: clamp(24px, 2.2vw, 35px) !important;
  line-height: 1.06 !important;
  font-weight: 950 !important;
  letter-spacing: 0.055em !important;
}

.os-footer-newsletter p {
  margin: 0 0 22px !important;
  color: #d2d2d2 !important;
  font-size: 15px !important;
  line-height: 1.62 !important;
}

.os-footer-newsletter__form .block_newsletter {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.os-footer-newsletter__form .block_newsletter .row,
.os-footer-newsletter__form .block_newsletter [class*="col-"] {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  flex: none !important;
}

.os-footer-newsletter__form #block-newsletter-label {
  display: none !important;
}

.os-footer-newsletter__form .block_newsletter input[type="email"] {
  width: 100% !important;
  height: 54px !important;
  padding: 0 18px !important;
  background: #ffffff !important;
  color: #111111 !important;
  border: 1px solid rgba(214, 162, 48, 0.34) !important;
  border-radius: 0 !important;
  font-size: 15px !important;
  line-height: 54px !important;
}

.os-footer-newsletter__form .block_newsletter input[type="submit"] {
  height: 54px !important;
  padding: 0 24px !important;
  background: linear-gradient(180deg, var(--os-gold-2), var(--os-gold)) !important;
  color: #050505 !important;
  border: 1px solid var(--os-gold-2) !important;
  border-radius: 0 !important;
  text-transform: uppercase !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
}

.os-footer-newsletter__form .block_newsletter input[type="submit"]:hover {
  background: #ffffff !important;
  color: #050505 !important;
}

#footer .footer-container {
  display: block !important;
  padding: 42px 0 22px !important;
  background: linear-gradient(180deg, #050505 0%, #030303 100%) !important;
  border-top: 1px solid rgba(214, 162, 48, 0.18) !important;
  box-shadow: none !important;
}

#footer .footer-container .container {
  max-width: var(--os-container) !important;
  padding-left: var(--os-side-space) !important;
  padding-right: var(--os-side-space) !important;
}

#footer h3,
#footer h4,
#footer .h3,
#footer .h4,
#footer .links .h3,
#footer .links h3,
#footer .links h4,
#footer .block-contact-title,
#footer .myaccount-title a {
  display: block !important;
  color: var(--os-gold-2) !important;
  text-transform: uppercase !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  letter-spacing: 0.10em !important;
  margin-bottom: 18px !important;
  text-decoration: none !important;
}

#footer a,
#footer .links a,
#footer .account-list a,
#footer .block-contact a {
  color: #bdbdbd !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
  text-decoration: none !important;
}

#footer a:hover,
#footer .links a:hover,
#footer .account-list a:hover,
#footer .block-contact a:hover {
  color: var(--os-gold-2) !important;
}

#footer .os-footer-copyright {
  color: #bdbdbd !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
  text-align: center !important;
}

#footer .os-footer-copyright a {
  color: #bdbdbd !important;
  font-weight: 400 !important;
}

#footer .os-footer-copyright * {
  font-weight: 400 !important;
}

.os-cookie-banner {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  z-index: 9999 !important;
  padding: 18px var(--os-side-space) !important;
  background:
    linear-gradient(180deg, rgba(20,20,20,0.98), rgba(3,3,3,0.98)),
    radial-gradient(circle at 20% 0%, rgba(229,189,86,0.18), transparent 34%) !important;
  border-top: 1px solid rgba(229,189,86,0.55) !important;
  box-shadow: 0 -20px 44px rgba(0,0,0,0.72) !important;
}

.os-cookie-banner[hidden] {
  display: none !important;
}

.os-cookie-banner__inner {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  width: min(100%, var(--os-container)) !important;
  margin: 0 auto !important;
}

.os-cookie-banner__content {
  min-width: 0 !important;
}

.os-cookie-banner__content strong {
  display: block !important;
  margin: 0 0 6px !important;
  color: var(--os-gold-2) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 0.14em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
}

.os-cookie-banner__content p {
  margin: 0 !important;
  color: #e8e8e8 !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

.os-cookie-banner__content a {
  color: var(--os-gold-2) !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.os-cookie-banner__content a:hover {
  color: #ffffff !important;
}

.os-cookie-banner__actions {
  display: flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  gap: 10px !important;
}

.os-cookie-banner__btn {
  min-height: 44px !important;
  padding: 0 20px !important;
  border: 1px solid rgba(229,189,86,0.72) !important;
  border-radius: 0 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
}

.os-cookie-banner__btn--ghost {
  color: #f4c642 !important;
  background: rgba(0,0,0,0.45) !important;
}

.os-cookie-banner__btn--primary {
  color: #050505 !important;
  background: linear-gradient(180deg, #f6cf55, #d69a21) !important;
  box-shadow: 0 12px 30px rgba(214,154,33,0.22) !important;
}

.os-cookie-banner__btn:hover {
  border-color: #ffffff !important;
}

@media (max-width: 767px) {
  .os-cookie-banner {
    padding: 16px !important;
  }

  .os-cookie-banner__inner {
    display: block !important;
  }

  .os-cookie-banner__content p {
    font-size: 13px !important;
  }

  .os-cookie-banner__actions {
    width: 100% !important;
    margin-top: 14px !important;
  }

  .os-cookie-banner__btn {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    padding: 0 12px !important;
  }
}

@media (max-width: 420px) {
  .os-cookie-banner__actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  .os-cookie-banner__btn {
    width: 100% !important;
  }
}

.os-cookies-page {
  width: min(1180px, calc(100vw - 32px)) !important;
  margin: 36px auto 70px !important;
  color: #ffffff !important;
}

body.cms-id-9 #wrapper,
body.cms-id-9 #main,
body.cms-id-9 .page-content.page-cms,
body.cms-id-9 .cms-content,
body.cms-id-9 .card,
body.cms-id-9 .card-block {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.cms-id-9 .page-content.page-cms {
  padding: 0 !important;
}

body.cms-id-9 #main > h1 {
  display: none !important;
}

.os-cookies-page p {
  color: rgba(255,255,255,0.86) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
  text-align: left !important;
}

.os-cookies-page a {
  color: #f4c642 !important;
  font-weight: 800 !important;
}

.os-cookies-hero,
.os-cookies-card,
.os-cookies-panel {
  position: relative !important;
  overflow: hidden !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.055), rgba(255,255,255,0.015) 38%, rgba(214,162,48,0.04)),
    radial-gradient(circle at 86% 0%, rgba(244,198,66,0.12), transparent 34%),
    #090909 !important;
  border: 1px solid rgba(214,162,48,0.38) !important;
  box-shadow: 0 22px 48px rgba(0,0,0,0.46) !important;
}

.os-cookies-hero::before,
.os-cookies-card::before,
.os-cookies-panel::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    repeating-linear-gradient(135deg, rgba(255,255,255,0.022) 0 1px, transparent 1px 10px),
    linear-gradient(90deg, transparent, rgba(244,198,66,0.05), transparent) !important;
}

.os-cookies-hero > *,
.os-cookies-card > *,
.os-cookies-panel > * {
  position: relative !important;
  z-index: 1 !important;
}

.os-cookies-hero {
  padding: clamp(28px, 4vw, 48px) !important;
  margin-bottom: 24px !important;
}

.os-cookies-kicker {
  margin: 0 0 10px !important;
  color: #f4c642 !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  letter-spacing: 0.24em !important;
  text-transform: uppercase !important;
}

.os-cookies-page h2,
.os-cookies-page h3 {
  color: #ffffff !important;
  font-weight: 950 !important;
  text-transform: uppercase !important;
  text-shadow: 3px 3px 0 #000 !important;
}

.os-cookies-page h2 {
  max-width: 840px !important;
  margin: 0 0 16px !important;
  font-size: clamp(32px, 4.6vw, 52px) !important;
  line-height: 1 !important;
}

.os-cookies-page h3 {
  margin: 0 0 14px !important;
  color: #f4c642 !important;
  font-size: 18px !important;
  letter-spacing: 0.08em !important;
}

.os-cookies-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px !important;
  margin-bottom: 24px !important;
}

.os-cookies-card,
.os-cookies-panel {
  padding: 28px !important;
}

.os-cookies-panel {
  margin-bottom: 24px !important;
}

.os-cookies-table-wrap {
  position: relative !important;
  z-index: 1 !important;
  overflow-x: auto !important;
}

.os-cookies-table {
  width: 100% !important;
  min-width: 820px !important;
  border-collapse: collapse !important;
  color: #ffffff !important;
}

.os-cookies-table th,
.os-cookies-table td {
  padding: 15px !important;
  vertical-align: top !important;
  border: 1px solid rgba(214,162,48,0.28) !important;
}

.os-cookies-table th {
  color: #f4c642 !important;
  background: rgba(244,198,66,0.08) !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

.os-cookies-table td {
  color: rgba(255,255,255,0.84) !important;
  background: rgba(0,0,0,0.26) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

.os-cookies-reset {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 46px !important;
  padding: 0 24px !important;
  color: #000000 !important;
  background: linear-gradient(180deg, #ffd84e, #d59a21) !important;
  border: 1px solid rgba(244,198,66,0.82) !important;
  border-radius: 0 !important;
  font-weight: 950 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
}

.os-cookies-reset:hover {
  filter: brightness(1.08) !important;
}

.os-cookies-note {
  margin: 22px 0 0 !important;
  padding: 18px 22px !important;
  color: rgba(255,255,255,0.74) !important;
  border-left: 3px solid #f4c642 !important;
  background: rgba(244,198,66,0.06) !important;
}

@media (max-width: 767px) {
  .os-cookies-page {
    width: calc(100vw - 24px) !important;
    margin-top: 24px !important;
  }

  .os-cookies-grid {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  .os-cookies-hero,
  .os-cookies-card,
  .os-cookies-panel {
    padding: 20px !important;
  }

  .os-cookies-page h2 {
    font-size: 32px !important;
  }
}

body.cms-id-9 #wrapper {
  background:
    radial-gradient(circle at 50% 0%, rgba(214,162,48,0.12), transparent 34%),
    linear-gradient(180deg, #050505 0%, #090806 42%, #050505 100%) !important;
}

body.cms-id-9 #content-wrapper,
body.cms-id-9 #main,
body.cms-id-9 .page-content.page-cms,
body.cms-id-9 .page-cms-9,
body.cms-id-9 .cms-content,
body.cms-id-9 .card,
body.cms-id-9 .card-block {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.cms-id-9 #content-wrapper {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
}

body.cms-id-9 .page-content.page-cms {
  margin: 0 !important;
  padding: 0 !important;
}

body.cms-id-9 .page-header,
body.cms-id-9 #main > h1,
body.cms-id-9 #main > header {
  display: none !important;
}

body.cms-id-9 .os-cookies-page {
  width: min(1180px, calc(100vw - 48px)) !important;
  margin: 42px auto 76px !important;
}

body.cms-id-9 .os-cookies-hero {
  min-height: 300px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: clamp(34px, 5vw, 58px) !important;
  background:
    linear-gradient(90deg, rgba(0,0,0,0.88) 0%, rgba(0,0,0,0.70) 48%, rgba(0,0,0,0.32) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.18), rgba(0,0,0,0.64)),
    url("../img/offroad-section-bg.png") center / cover no-repeat !important;
  border-color: rgba(244,198,66,0.46) !important;
}

body.cms-id-9 .os-cookies-hero::before {
  background:
    linear-gradient(90deg, transparent, rgba(244,198,66,0.10), transparent),
    repeating-linear-gradient(135deg, rgba(255,255,255,0.018) 0 1px, transparent 1px 11px) !important;
}

body.cms-id-9 .os-cookies-hero p:not(.os-cookies-kicker) {
  max-width: 900px !important;
  margin-bottom: 0 !important;
  font-size: 16px !important;
}

body.cms-id-9 .os-cookies-page h2 {
  max-width: 760px !important;
  margin-bottom: 18px !important;
  font-size: clamp(36px, 4.2vw, 54px) !important;
  line-height: 0.96 !important;
  letter-spacing: 0.035em !important;
}

body.cms-id-9 .os-cookies-grid {
  gap: 20px !important;
}

body.cms-id-9 .os-cookies-card,
body.cms-id-9 .os-cookies-panel {
  background:
    linear-gradient(135deg, rgba(255,255,255,0.045), rgba(255,255,255,0.012) 38%, rgba(214,162,48,0.05)),
    radial-gradient(circle at 88% 0%, rgba(244,198,66,0.11), transparent 30%),
    #080808 !important;
  border-color: rgba(214,162,48,0.34) !important;
}

body.cms-id-9 .os-cookies-card {
  min-height: 230px !important;
}

body.cms-id-9 .os-cookies-card h3,
body.cms-id-9 .os-cookies-panel h3 {
  display: inline-block !important;
  padding-bottom: 9px !important;
  border-bottom: 1px solid rgba(244,198,66,0.48) !important;
}

body.cms-id-9 .os-cookies-table th {
  background:
    linear-gradient(180deg, rgba(244,198,66,0.16), rgba(244,198,66,0.06)) !important;
}

body.cms-id-9 .os-cookies-table td {
  background: rgba(0,0,0,0.38) !important;
}

body.cms-id-9 .os-cookies-note {
  background:
    linear-gradient(90deg, rgba(244,198,66,0.12), rgba(0,0,0,0.28)) !important;
}

@media (max-width: 767px) {
  body.cms-id-9 .os-cookies-page {
    width: calc(100vw - 24px) !important;
    margin-top: 24px !important;
  }

  body.cms-id-9 .os-cookies-hero {
    min-height: 0 !important;
  }

  body.cms-id-9 .os-cookies-page h2 {
    font-size: 34px !important;
  }
}

/* ============================================================
   19. FIXY
   ============================================================ */

@media (min-width: 768px) {
  #mobile_top_menu_wrapper,
  #header #mobile_top_menu_wrapper,
  body #mobile_top_menu_wrapper {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }
}

/* ============================================================
   20. RESPONSIVE
   ============================================================ */

@media (max-width: 1250px) {
  :root {
    --os-logo-space: 395px;
    --os-logo-img-width: 320px;
    --os-logo-img-height: 135px;
    --os-logo-scale: 1.35;
  }

  #header .header-top .container,
  #header .header-nav .container {
    max-width: 1140px !important;
  }

  #header #_desktop_logo,
  #header #_desktop_logo a {
    height: 170px !important;
  }

  #header .top-menu {
    gap: 18px !important;
  }

  #header .top-menu a[data-depth="0"] {
    font-size: 13px !important;
    letter-spacing: 0.075em !important;
  }

  body#index .os-social-strip__inner {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  body#index .os-social-strip__buttons {
    max-width: none !important;
    margin-left: 0 !important;
  }

  body#index .os-social-strip__buttons::before {
    display: none !important;
  }
}

@media (max-width: 1199px) {
  body#index .os-category-grid--dynamic,
  body#index .os-categories--dynamic .os-category-grid,
  body#index .os-quick-categories--dynamic .os-quick-categories__grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  body#index .os-category-card--dynamic,
  body#index .os-categories--dynamic .os-category-card,
  body#index .os-quick-category {
    height: 210px !important;
    min-height: 210px !important;
  }

  body#index .os-home-products__grid,
  body#index .os-products-grid,
  body#index .os-product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 991px) {
  body#contact .os-contact-form__layout {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  body#contact .os-contact-form__head p {
    max-width: none !important;
  }

  body#contact .os-contact-top {
    grid-template-columns: 1fr !important;
  }

  body#contact .os-contact-info,
  body#contact .os-contact-map {
    min-height: 300px !important;
  }

  body#contact .os-contact-info {
    height: auto !important;
  }

  body#contact .os-contact-map {
    height: 340px !important;
  }

  body#contact .os-contact-map iframe {
    min-height: 0 !important;
  }

  body#contact .os-contact-page__inner {
    grid-template-columns: 1fr !important;
  }

  body#contact .os-contact-field {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  body#contact .os-contact-field em {
    margin-top: -4px !important;
  }

  body#contact .os-contact-form__footer {
    text-align: left !important;
  }

  #header .header-top,
  #header .header-top .container,
  #header .header-top .container > .row,
  #header .header-top .position-static,
  #header .header-top .position-static > .row,
  #header .header-top [class*="col-"] {
    height: auto !important;
    min-height: auto !important;
    max-height: none !important;
  }

  #header .header-top {
    padding: 18px 0 !important;
  }

  #header #_desktop_logo {
    position: static !important;
    top: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    justify-content: center !important;
    margin-bottom: 14px !important;
  }

  #header #_desktop_logo a {
    height: auto !important;
    justify-content: center !important;
  }

  #header #_desktop_logo img,
  #header #_desktop_logo .logo,
  #header .logo {
    max-width: 260px !important;
    max-height: 90px !important;
    transform: none !important;
    margin: 0 auto !important;
  }

  #header #_desktop_top_menu {
    position: static !important;
    width: 100% !important;
    height: auto !important;
    justify-content: center !important;
  }

  #header .top-menu {
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 14px !important;
  }

  #header .top-menu > li {
    height: auto !important;
    padding: 10px 0 !important;
  }

  #header .top-menu a[data-depth="0"] {
    font-size: 12px !important;
  }

  #header .top-menu > li > .sub-menu {
    position: static !important;
    transform: none !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    margin-top: 12px !important;
  }

  #category #wrapper {
    padding-top: 24px !important;
  }

  #category #content-wrapper {
    padding-left: 15px !important;
  }

  #category .os-subcategories__grid,
  #category .os-shop-category-grid__inner,
  body#index .os-home-products__grid,
  body#index .os-products-grid,
  body#index .os-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body#index .os-home-product__image,
  body#index .os-product-card__image {
    height: 220px !important;
  }

  .os-footer-media__inner {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }

  .os-footer-newsletter {
    padding: 32px 28px !important;
  }
}

@media (max-width: 767px) {
  body#index .os-social-strip__buttons {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  body#index .os-social-btn {
    min-height: 72px !important;
    grid-template-columns: 42px 1fr !important;
    column-gap: 12px !important;
    padding: 0 14px !important;
    border-radius: 10px !important;
  }

  body#index .os-social-strip__content h2 {
    font-size: 38px !important;
  }

  #category .os-category-header__content {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 14px !important;
    padding-top: 14px !important;
    padding-bottom: 14px !important;
  }

  #category .os-category-sort {
    width: 100% !important;
    justify-content: flex-start !important;
  }

  #category .os-category-sort .products-sort-order,
  #category .os-category-sort .products-sort-order .select-title {
    width: 100% !important;
    min-width: 0 !important;
  }
}

@media (max-width: 575px) {
  :root {
    --os-side-space: 16px;
  }

  body#contact .os-contact-page {
    padding: 34px 0 42px !important;
  }

  body#contact .os-contact-info,
  body#contact .os-contact-form {
    padding: 24px 20px !important;
  }

  body#contact .os-contact-rich h4,
  body#contact .os-contact-form__head h1 {
    font-size: 30px !important;
  }

  body#contact .os-contact-form__head p {
    margin-top: 18px !important;
    font-size: 15px !important;
  }

  body#contact .os-contact-form__footer button {
    width: 100% !important;
  }

  body#index #carousel,
  body#index #carousel.carousel,
  body#index .carousel,
  body#index .homeslider-container,
  body#index #carousel .carousel-inner,
  body#index #carousel ul.carousel-inner,
  body#index .carousel .carousel-inner,
  body#index #carousel .carousel-item,
  body#index #carousel li.carousel-item,
  body#index .carousel .carousel-item,
  body#index #carousel .carousel-item > a,
  body#index #carousel li.carousel-item > a,
  body#index #carousel figure {
    height: 360px !important;
    min-height: 360px !important;
    max-height: 360px !important;
  }

  body#index #carousel .caption h2,
  body#index #carousel figcaption h2,
  body#index #carousel .carousel-caption h2,
  body#index #carousel .caption-description h2 {
    font-size: 36px !important;
  }

  body#index .os-categories--dynamic,
  body#index .os-quick-categories--dynamic {
    padding: 28px 0 34px !important;
  }

  body#index .os-category-grid--dynamic,
  body#index .os-categories--dynamic .os-category-grid,
  body#index .os-quick-categories--dynamic .os-quick-categories__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  body#index .os-category-card--dynamic,
  body#index .os-categories--dynamic .os-category-card,
  body#index .os-quick-category {
    height: 150px !important;
    min-height: 150px !important;
  }

  body#index .os-category-card__content strong,
  body#index .os-quick-category strong {
    font-size: 11px !important;
    letter-spacing: 0.055em !important;
  }

  body#index .os-social-strip__inner {
    min-height: auto !important;
    padding: 30px 0 !important;
  }

  body#index .os-home-products,
  body#index .os-top-products,
  body#index .os-top-products--dynamic,
  body#index .os-products-home {
    padding: 44px 0 54px !important;
  }

  body#index .os-home-products .os-section-head {
    display: block !important;
  }

  body#index .os-home-products .os-section-link {
    display: inline-flex !important;
    margin-top: 16px !important;
  }

  body#index .os-home-products__grid,
  body#index .os-products-grid,
  body#index .os-product-grid {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  body#index .os-home-product__image,
  body#index .os-product-card__image {
    height: 210px !important;
  }

  #category .os-category-header--simple {
    min-height: 58px !important;
    padding: 0 18px !important;
  }

  #category .os-category-path {
    overflow-x: auto !important;
    max-width: 100% !important;
  }

  #category .os-subcategories__grid,
  #category .os-shop-category-grid__inner {
    grid-template-columns: 1fr !important;
  }

  #category #js-product-list .products.row {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }

  #category .os-subcategory-card,
  #category .os-shop-category-card {
    height: 170px !important;
  }

  .os-footer-media {
    padding: 34px 0 30px !important;
  }

  .os-footer-newsletter {
    padding: 26px 22px !important;
  }

  .os-footer-newsletter h3 {
    font-size: 24px !important;
  }

  #footer .footer-container {
    padding-top: 32px !important;
  }
}

/* ============================================================
   18. LOGIN A REGISTRACIA
   ============================================================ */

/*
  Dolezite:
  - v celom CSS je iba tento jeden auth/login blok
  - pozadie loginu pouziva presne:
    /themes/TVOJA-TEMA/assets/img/login-offroad-bg.jpg
  - relativna cesta z assets/css/custom.css je:
    ../img/login-offroad-bg.jpg
  - spodne ikony su SVG v authentication.tpl, nie pseudo-elementy
*/

/* ---------- PrestaShop obaly na auth stranke ---------- */

body#authentication,
body.page-authentication {
  background: #050505 !important;
}

body#authentication #wrapper,
body.page-authentication #wrapper {
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  background: #050505 !important;
}

body#authentication #left-column,
body#authentication #right-column,
body.page-authentication #left-column,
body.page-authentication #right-column {
  display: none !important;
}

body#authentication #notifications,
body#authentication .breadcrumb,
body#authentication .breadcrumb-wrapper,
body#authentication .page-header,
body.page-authentication #notifications,
body.page-authentication .breadcrumb,
body.page-authentication .breadcrumb-wrapper,
body.page-authentication .page-header {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body#authentication #wrapper > .container,
body#authentication #wrapper #content-wrapper,
body#authentication #wrapper #content,
body#authentication #wrapper .page-content,
body.page-authentication #wrapper > .container,
body.page-authentication #wrapper #content-wrapper,
body.page-authentication #wrapper #content,
body.page-authentication #wrapper .page-content {
  width: 100% !important;
  max-width: none !important;
  flex: 0 0 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* ---------- Cela auth plocha ---------- */

body#authentication .os-auth-page,
body.page-authentication .os-auth-page {
  position: relative !important;
  width: 100% !important;
  min-height: calc(100vh - 126px) !important;

  /*
    Sekcia sa vytiahne o 42px vyssie pod header.
    Rovnakych 42px je pridanych do horneho paddingu,
    takze panel zostane vizualne na mieste.
  */
  margin: -42px 0 0 !important;
  padding: 112px 20px 90px !important;

  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  overflow: hidden !important;
  color: #ffffff !important;
  background: #050505 !important;
}

/* ---------- Pozadie ---------- */

body#authentication .os-auth-bg,
body.page-authentication .os-auth-bg {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  background-color: #050505 !important;
  background-image:
    linear-gradient(90deg, rgba(0,0,0,0.45) 0%, rgba(0,0,0,0.34) 38%, rgba(0,0,0,0.78) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.12) 0%, rgba(0,0,0,0.88) 100%),
    url("../img/login-offroad-bg.jpg") !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position:
    center center,
    center center,
    center top !important;
}

body#authentication .os-auth-bg::after,
body.page-authentication .os-auth-bg::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  background:
    radial-gradient(circle at 35% 45%, rgba(214,162,48,0.13), transparent 34%),
    radial-gradient(circle at 50% 100%, rgba(0,0,0,0.92), transparent 58%) !important;
}

/* ---------- Drziak a panel ---------- */

body#authentication .os-auth-wrap,
body.page-authentication .os-auth-wrap {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  max-width: 720px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body#authentication .os-auth-panel,
body.page-authentication .os-auth-panel {
  position: relative !important;
  width: 100% !important;
  min-height: auto !important;
  margin: 0 auto !important;
  padding: 44px 58px 38px !important;
  overflow: hidden !important;
  color: #ffffff !important;
  border-radius: 18px !important;
  border: 1px solid rgba(214,162,48,0.68) !important;
  background:
    linear-gradient(145deg, rgba(24,24,24,0.965), rgba(5,5,5,0.985)) !important;
  box-shadow:
    0 38px 100px rgba(0,0,0,0.88),
    inset 0 1px 0 rgba(255,255,255,0.075),
    inset 0 0 55px rgba(214,162,48,0.025) !important;
}

body#authentication .os-auth-panel::before,
body.page-authentication .os-auth-panel::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.055), transparent 34%),
    repeating-linear-gradient(
      135deg,
      rgba(255,255,255,0.024) 0,
      rgba(255,255,255,0.024) 1px,
      transparent 1px,
      transparent 7px
    ) !important;
}

body#authentication .os-auth-panel::after,
body.page-authentication .os-auth-panel::after {
  content: "" !important;
  position: absolute !important;
  right: -48px !important;
  top: -42px !important;
  z-index: 0 !important;
  width: 230px !important;
  height: 230px !important;
  opacity: 0.18 !important;
  pointer-events: none !important;
  transform: rotate(20deg) !important;
  background:
    repeating-linear-gradient(
      45deg,
      transparent 0,
      transparent 8px,
      rgba(0,0,0,0.95) 8px,
      rgba(0,0,0,0.95) 15px
    ) !important;
}

body#authentication .os-auth-panel > *,
body.page-authentication .os-auth-panel > * {
  position: relative !important;
  z-index: 2 !important;
}

/* ---------- Skrutky ---------- */

body#authentication .os-auth-panel__bolt,
body.page-authentication .os-auth-panel__bolt {
  position: absolute !important;
  z-index: 5 !important;

  width: 15px !important;
  height: 15px !important;
  border-radius: 50% !important;
  background:
    radial-gradient(circle, #9a9a9a 0 2px, #151515 3px, #555 7px, #111 8px) !important;
  box-shadow:
    0 0 0 1px rgba(214,162,48,0.36),
    inset 0 1px 1px rgba(255,255,255,0.22) !important;
}

body#authentication .os-auth-panel__bolt--tl,
body.page-authentication .os-auth-panel__bolt--tl {
  top: 22px !important;
  left: 22px !important;
}

body#authentication .os-auth-panel__bolt--tr,
body.page-authentication .os-auth-panel__bolt--tr {
  top: 22px !important;
  right: 22px !important;
}

body#authentication .os-auth-panel__bolt--bl,
body.page-authentication .os-auth-panel__bolt--bl {
  bottom: 22px !important;
  left: 22px !important;
}

body#authentication .os-auth-panel__bolt--br,
body.page-authentication .os-auth-panel__bolt--br {
  right: 22px !important;
  bottom: 22px !important;
}

/* ---------- Hlavicka panelu ---------- */

body#authentication .os-auth-panel__head,
body.page-authentication .os-auth-panel__head {
  margin: 0 0 28px !important;
  padding: 0 !important;
  text-align: center !important;
}

body#authentication .os-auth-panel__logo,
body.page-authentication .os-auth-panel__logo {
  margin: 0 0 22px !important;
  padding: 0 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
}

body#authentication .os-auth-panel__logo span,
body.page-authentication .os-auth-panel__logo span {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #f3f3f3 !important;
  font-size: 43px !important;
  font-weight: 950 !important;
  line-height: 0.95 !important;
  letter-spacing: 0.075em !important;
  text-shadow:
    0 2px 0 #000,
    0 5px 0 rgba(80,80,80,0.55),
    0 14px 28px rgba(0,0,0,0.92) !important;
}

body#authentication .os-auth-panel__logo strong,
body.page-authentication .os-auth-panel__logo strong {
  display: block !important;
  margin: 9px 0 0 !important;
  padding: 0 !important;
  color: #d6a230 !important;
  font-size: 18px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  letter-spacing: 0.55em !important;
  text-shadow: 0 8px 18px rgba(0,0,0,0.85) !important;
}

body#authentication .os-auth-panel__kicker,
body.page-authentication .os-auth-panel__kicker {
  margin: 0 0 12px !important;
  padding: 0 !important;
  color: #d6a230 !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  letter-spacing: 0.26em !important;
}

body#authentication .os-auth-panel h1,
body.page-authentication .os-auth-panel h1 {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #ffffff !important;
  font-size: 52px !important;
  line-height: 0.95 !important;
  font-weight: 950 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
  letter-spacing: 0.075em !important;
  text-shadow:
    0 3px 0 #000,
    0 8px 18px rgba(0,0,0,0.92) !important;
}

body#authentication .os-auth-panel h1::after,
body.page-authentication .os-auth-panel h1::after {
  content: "" !important;
  display: block !important;
  width: 420px !important;
  max-width: 76% !important;
  height: 1px !important;
  margin: 24px auto 20px !important;
  background: linear-gradient(90deg, transparent, rgba(214,162,48,0.92), transparent) !important;
}

body#authentication .os-auth-panel__head p,
body.page-authentication .os-auth-panel__head p {
  display: block !important;
  max-width: 560px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  color: #d1d1d1 !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  text-align: center !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* ---------- Formular ---------- */

body#authentication .os-auth-form,
body.page-authentication .os-auth-form {
  width: 100% !important;
  max-width: 560px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body#authentication .os-auth-field,
body.page-authentication .os-auth-field {
  width: 100% !important;
  margin: 0 0 21px !important;
  padding: 0 !important;
}

body#authentication .os-auth-field label,
body.page-authentication .os-auth-field label {
  display: block !important;
  width: 100% !important;
  margin: 0 0 9px !important;
  padding: 0 !important;
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  text-align: left !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

body#authentication .os-auth-input,
body.page-authentication .os-auth-input {
  position: relative !important;
  width: 100% !important;
  height: 60px !important;
  display: flex !important;
  align-items: center !important;
  border-radius: 8px !important;
  background: rgba(0,0,0,0.58) !important;
  border: 1px solid rgba(255,255,255,0.20) !important;
  box-shadow: inset 0 1px 10px rgba(0,0,0,0.78) !important;
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    background 0.2s ease !important;
}

body#authentication .os-auth-input:focus-within,
body.page-authentication .os-auth-input:focus-within {
  background: rgba(0,0,0,0.76) !important;
  border-color: rgba(214,162,48,0.9) !important;
  box-shadow:
    0 0 0 3px rgba(214,162,48,0.17),
    inset 0 1px 10px rgba(0,0,0,0.78) !important;
}

body#authentication .os-auth-input input,
body.page-authentication .os-auth-input input {
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 56px 0 62px !important;
  border: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 60px !important;
  box-shadow: none !important;
}

body#authentication .os-auth-input input::placeholder,
body.page-authentication .os-auth-input input::placeholder {
  color: rgba(255,255,255,0.46) !important;
}

/* ---------- Ikony vo vnutri inputov ---------- */

body#authentication .os-auth-input__icon,
body.page-authentication .os-auth-input__icon {
  position: absolute !important;
  left: 23px !important;
  top: 50% !important;
  width: 19px !important;
  height: 19px !important;
  transform: translateY(-50%) !important;
  color: #d6a230 !important;
  pointer-events: none !important;
}

body#authentication .os-auth-input__icon--mail,
body.page-authentication .os-auth-input__icon--mail {
  border: 1px solid #d6a230 !important;
  border-radius: 2px !important;
}

body#authentication .os-auth-input__icon--mail::before,
body.page-authentication .os-auth-input__icon--mail::before {
  content: "" !important;
  position: absolute !important;
  left: 3px !important;
  top: 4px !important;
  width: 12px !important;
  height: 8px !important;
  border-left: 1px solid #d6a230 !important;
  border-bottom: 1px solid #d6a230 !important;
  transform: rotate(-45deg) !important;
}

body#authentication .os-auth-input__icon--lock,
body.page-authentication .os-auth-input__icon--lock {
  width: 17px !important;
  height: 14px !important;
  margin-top: 4px !important;
  border: 1px solid #d6a230 !important;
  border-radius: 2px !important;
}

body#authentication .os-auth-input__icon--lock::before,
body.page-authentication .os-auth-input__icon--lock::before {
  content: "" !important;
  position: absolute !important;
  left: 3px !important;
  top: -9px !important;
  width: 9px !important;
  height: 9px !important;
  border: 1px solid #d6a230 !important;
  border-bottom: 0 !important;
  border-radius: 8px 8px 0 0 !important;
}

/* ---------- Tlacidlo zobrazit heslo ---------- */

body#authentication .os-auth-password-toggle,
body.page-authentication .os-auth-password-toggle {
  position: absolute !important;
  right: 14px !important;
  top: 50% !important;
  width: 36px !important;
  height: 36px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  transform: translateY(-50%) !important;
  cursor: pointer !important;
  opacity: 0.74 !important;
}

body#authentication .os-auth-password-toggle:hover,
body#authentication .os-auth-password-toggle.is-active,
body.page-authentication .os-auth-password-toggle:hover,
body.page-authentication .os-auth-password-toggle.is-active {
  opacity: 1 !important;
}

body#authentication .os-auth-password-toggle span,
body.page-authentication .os-auth-password-toggle span {
  position: absolute !important;
  left: 7px !important;
  top: 12px !important;
  width: 22px !important;
  height: 13px !important;
  border: 1px solid rgba(255,255,255,0.72) !important;
  border-radius: 50% !important;
}

body#authentication .os-auth-password-toggle span::before,
body.page-authentication .os-auth-password-toggle span::before {
  content: "" !important;
  position: absolute !important;
  left: 7px !important;
  top: 3px !important;
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,0.72) !important;
}

/* ---------- Submit ---------- */

body#authentication .os-auth-submit,
body.page-authentication .os-auth-submit {
  width: 100% !important;
  height: 68px !important;
  margin: 8px 0 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  color: #050505 !important;
  background:
    linear-gradient(135deg, #b87617 0%, #e6bd56 48%, #bd811d 100%) !important;
  font-size: 23px !important;
  font-weight: 950 !important;
  line-height: 68px !important;
  text-align: center !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  box-shadow:
    0 16px 34px rgba(214,162,48,0.30),
    inset 0 1px 0 rgba(255,255,255,0.48),
    inset 0 -10px 22px rgba(120,70,0,0.12) !important;
  transition:
    transform 0.2s ease,
    filter 0.2s ease !important;
}

body#authentication .os-auth-submit:hover,
body.page-authentication .os-auth-submit:hover {
  filter: brightness(1.08) !important;
  transform: translateY(-1px) !important;
}

/* ---------- Deliaca linka s ikonou ---------- */

body#authentication .os-auth-divider,
body.page-authentication .os-auth-divider {
  position: relative !important;
  height: 44px !important;
  margin: 18px 0 8px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body#authentication .os-auth-divider::before,
body.page-authentication .os-auth-divider::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  top: 50% !important;
  height: 1px !important;
  background: linear-gradient(
    90deg,
    transparent 0%,
    rgba(214,162,48,0.34) 28%,
    rgba(214,162,48,0.70) 50%,
    rgba(214,162,48,0.34) 72%,
    transparent 100%
  ) !important;
}

body#authentication .os-auth-divider__icon,
body.page-authentication .os-auth-divider__icon {
  position: relative !important;
  z-index: 2 !important;
  width: 34px !important;
  height: 34px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #080808 !important;
}

body#authentication .os-auth-divider__icon svg,
body.page-authentication .os-auth-divider__icon svg {
  display: block !important;
  width: 25px !important;
  height: 25px !important;
}

body#authentication .os-auth-divider__icon svg path,
body.page-authentication .os-auth-divider__icon svg path {
  fill: none !important;
  stroke: #d6a230 !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

/* ---------- Spodne odkazy so SVG ikonami ---------- */

body#authentication .os-auth-links,
body.page-authentication .os-auth-links {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: 1fr 1px 1fr !important;
  align-items: center !important;
  column-gap: 28px !important;
  margin: 0 !important;
  padding: 0 0 2px !important;
}

/* vypne stare separator prvky, ak zostali zo stareho HTML */
body#authentication .os-auth-links > i,
body.page-authentication .os-auth-links > i {
  display: none !important;
}

body#authentication .os-auth-links__separator,
body.page-authentication .os-auth-links__separator {
  width: 1px !important;
  height: 32px !important;
  display: block !important;
  background: rgba(255,255,255,0.18) !important;
}

body#authentication .os-auth-link,
body.page-authentication .os-auth-link {
  min-height: 38px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #d6a230 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  text-transform: none !important;
  white-space: nowrap !important;
  letter-spacing: 0 !important;
}

/* definitivne vypnutie starych pseudo-ikon */
body#authentication .os-auth-link::before,
body#authentication .os-auth-link::after,
body#authentication .os-auth-links a::before,
body#authentication .os-auth-links a::after,
body.page-authentication .os-auth-link::before,
body.page-authentication .os-auth-link::after,
body.page-authentication .os-auth-links a::before,
body.page-authentication .os-auth-links a::after {
  content: none !important;
  display: none !important;
}

body#authentication .os-auth-link:hover,
body.page-authentication .os-auth-link:hover {
  color: #e5bd56 !important;
  text-decoration: none !important;
}

body#authentication .os-auth-link--forgot,
body.page-authentication .os-auth-link--forgot {
  justify-self: start !important;
  text-align: left !important;
}

body#authentication .os-auth-link--register,
body.page-authentication .os-auth-link--register {
  justify-self: end !important;
  text-align: right !important;
}

body#authentication .os-auth-link--register span,
body.page-authentication .os-auth-link--register span {
  color: #bdbdbd !important;
}

body#authentication .os-auth-link--register strong,
body.page-authentication .os-auth-link--register strong {
  color: #d6a230 !important;
  font-weight: 900 !important;
}

body#authentication .os-auth-link__icon,
body.page-authentication .os-auth-link__icon {
  flex: 0 0 24px !important;
  width: 24px !important;
  height: 24px !important;
  display: block !important;
  margin: 0 !important;
}

body#authentication .os-auth-link__icon rect,
body#authentication .os-auth-link__icon path,
body#authentication .os-auth-link__icon circle,
body.page-authentication .os-auth-link__icon rect,
body.page-authentication .os-auth-link__icon path,
body.page-authentication .os-auth-link__icon circle {
  fill: none !important;
  stroke: #d6a230 !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

body#authentication .os-auth-link:hover .os-auth-link__icon rect,
body#authentication .os-auth-link:hover .os-auth-link__icon path,
body#authentication .os-auth-link:hover .os-auth-link__icon circle,
body.page-authentication .os-auth-link:hover .os-auth-link__icon rect,
body.page-authentication .os-auth-link:hover .os-auth-link__icon path,
body.page-authentication .os-auth-link:hover .os-auth-link__icon circle {
  stroke: #e5bd56 !important;
}

/* ---------- Chybove hlasky ---------- */

body#authentication .os-auth-form .alert,
body#authentication .os-auth-form .help-block,
body#authentication .os-auth-form .form-error,
body.page-authentication .os-auth-form .alert,
body.page-authentication .os-auth-form .help-block,
body.page-authentication .os-auth-form .form-error {
  border-radius: 10px !important;
}

/* ---------- Responsive ---------- */

@media (max-width: 900px) {
  body#authentication .os-auth-wrap,
  body.page-authentication .os-auth-wrap {
    max-width: 680px !important;
  }

  body#authentication .os-auth-panel,
  body.page-authentication .os-auth-panel {
    padding: 42px 48px 38px !important;
  }

  body#authentication .os-auth-panel h1,
  body.page-authentication .os-auth-panel h1 {
    font-size: 46px !important;
    letter-spacing: 0.055em !important;
  }
}

@media (max-width: 768px) {
  body#authentication .os-auth-page,
  body.page-authentication .os-auth-page {
    min-height: calc(100vh - 110px) !important;
    margin-top: 0 !important;
    padding: 42px 14px 60px !important;
  }

  body#authentication .os-auth-wrap,
  body.page-authentication .os-auth-wrap {
    max-width: 100% !important;
  }

  body#authentication .os-auth-panel,
  body.page-authentication .os-auth-panel {
    padding: 34px 24px 30px !important;
    border-radius: 16px !important;
  }

  body#authentication .os-auth-panel h1,
  body.page-authentication .os-auth-panel h1 {
    font-size: 31px !important;
    letter-spacing: 0.08em !important;
    white-space: normal !important;
  }

  body#authentication .os-auth-panel__logo span,
  body.page-authentication .os-auth-panel__logo span {
    font-size: 30px !important;
  }

  body#authentication .os-auth-panel__logo strong,
  body.page-authentication .os-auth-panel__logo strong {
    font-size: 14px !important;
    letter-spacing: 0.34em !important;
  }

  body#authentication .os-auth-panel__head p,
  body.page-authentication .os-auth-panel__head p {
    font-size: 14px !important;
  }

  body#authentication .os-auth-input,
  body.page-authentication .os-auth-input {
    height: 54px !important;
  }

  body#authentication .os-auth-input input,
  body.page-authentication .os-auth-input input {
    font-size: 14px !important;
    line-height: 54px !important;
  }

  body#authentication .os-auth-submit,
  body.page-authentication .os-auth-submit {
    height: 58px !important;
    font-size: 18px !important;
    line-height: 58px !important;
  }

  body#authentication .os-auth-links,
  body.page-authentication .os-auth-links {
    grid-template-columns: 1fr !important;
    row-gap: 10px !important;
    column-gap: 0 !important;
    text-align: center !important;
  }

  body#authentication .os-auth-links__separator,
  body.page-authentication .os-auth-links__separator {
    display: none !important;
  }

  body#authentication .os-auth-link--forgot,
  body#authentication .os-auth-link--register,
  body.page-authentication .os-auth-link--forgot,
  body.page-authentication .os-auth-link--register {
    justify-self: center !important;
    text-align: center !important;
  }
}

/* ============================================================
   OFFROAD SVET - FOCUS / CLICK OUTLINE FIX
   odstrani biele oramovanie pri klikani mysou,
   ale ponecha pekny focus pri ovladani klavesnicou
   ============================================================ */

/* odstranenie skaredeho bieleho ramu po kliknuti */
a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus,
.btn:focus,
.form-control:focus,
.custom-checkbox input[type="checkbox"]:focus + span,
.custom-radio input[type="radio"]:focus + span {
  outline: none !important;
  box-shadow: none !important;
}

/* header, menu, logo, kosik, ucet */
#header a:focus,
#header button:focus,
#header .top-menu a:focus,
#header .header-nav a:focus,
#header #_desktop_logo a:focus,
#header #_desktop_cart a:focus,
#header #_desktop_user_info a:focus {
  outline: none !important;
  box-shadow: none !important;
}

/* produkty, kategorie, slider, obrazky */
.product-miniature a:focus,
.thumbnail-container a:focus,
.carousel a:focus,
.os-category-card:focus,
.os-category-card a:focus,
.os-quick-category:focus,
.os-quick-category a:focus,
.os-social-btn:focus,
.os-home-product a:focus,
.os-product-card a:focus {
  outline: none !important;
  box-shadow: none !important;
}

/* prihlasovaci formular */
body#authentication .os-auth-panel a:focus,
body#authentication .os-auth-panel button:focus,
body#authentication .os-auth-panel input:focus,
body#authentication .os-auth-submit:focus,
body#authentication .os-auth-link:focus,
body#authentication .os-auth-password-toggle:focus {
  outline: none !important;
  box-shadow: none !important;
}

/* pekny focus iba pri ovladani klavesnicou cez TAB */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.btn:focus-visible,
.form-control:focus-visible {
  outline: 2px solid rgba(214, 162, 48, 0.85) !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 4px rgba(214, 162, 48, 0.18) !important;
}

/* login stranka - jemny zlaty focus pri TAB */
body#authentication .os-auth-panel a:focus-visible,
body#authentication .os-auth-panel button:focus-visible,
body#authentication .os-auth-panel input:focus-visible {
  outline: 2px solid rgba(214, 162, 48, 0.85) !important;
  outline-offset: 3px !important;
  box-shadow: 0 0 0 4px rgba(214, 162, 48, 0.18) !important;
}

/* Login - jasne SVG ikony vo formulari */
body#authentication .os-auth-input .os-auth-input__icon,
body.page-authentication .os-auth-input .os-auth-input__icon {
  width: 23px !important;
  height: 23px !important;
  left: 21px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: visible !important;
}

body#authentication .os-auth-input .os-auth-input__icon::before,
body#authentication .os-auth-input .os-auth-input__icon::after,
body.page-authentication .os-auth-input .os-auth-input__icon::before,
body.page-authentication .os-auth-input .os-auth-input__icon::after {
  content: none !important;
  display: none !important;
}

body#authentication .os-auth-input .os-auth-input__icon rect,
body#authentication .os-auth-input .os-auth-input__icon path,
body.page-authentication .os-auth-input .os-auth-input__icon rect,
body.page-authentication .os-auth-input .os-auth-input__icon path {
  fill: none !important;
  stroke: #d6a230 !important;
  stroke-width: 1.7 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

/* Kontakt - mapa a info box */
body#contact .os-contact-top {
  align-items: stretch !important;
  grid-auto-rows: 500px !important;
  margin-bottom: 34px !important;
}

body#contact .os-contact-info,
body#contact .os-contact-map {
  height: 500px !important;
  min-height: 500px !important;
  box-sizing: border-box !important;
}

body#contact .os-contact-info {
  padding-bottom: 54px !important;
}

body#contact .os-contact-map {
  position: relative !important;
  padding: 8px !important;
  overflow: hidden !important;
}

body#contact .os-contact-map iframe {
  position: absolute !important;
  inset: 8px !important;
  width: calc(100% - 16px) !important;
  height: calc(100% - 16px) !important;
  min-height: 0 !important;
  display: block !important;
  border: 0 !important;
}

body#contact .os-contact-map__link {
  top: 18px !important;
  right: 18px !important;
}

@media (max-width: 991px) {
  body#contact .os-contact-top {
    grid-auto-rows: auto !important;
  }

  body#contact .os-contact-info {
    height: auto !important;
    min-height: 300px !important;
  }

  body#contact .os-contact-map {
    height: 340px !important;
  }
}

/* Header - prihlaseny zakaznik */
#header .header-nav .right-nav {
  align-items: center !important;
}

#header #_desktop_user_info {
  height: var(--os-topbar-height) !important;
  min-height: var(--os-topbar-height) !important;
  max-height: var(--os-topbar-height) !important;
  align-self: center !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
}

#header #_desktop_user_info .os-header-account {
  height: var(--os-topbar-height) !important;
  min-height: var(--os-topbar-height) !important;
  max-height: var(--os-topbar-height) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

#header #_desktop_user_info .os-header-account a {
  height: var(--os-topbar-height) !important;
  min-height: var(--os-topbar-height) !important;
  max-height: var(--os-topbar-height) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  margin: 0 !important;
  padding: 0 10px !important;
  line-height: 1 !important;
  font-size: 14px !important;
  vertical-align: middle !important;
}

#header #_desktop_user_info .os-header-account__icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 17px !important;
  min-width: 17px !important;
  height: 17px !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 17px !important;
  line-height: 17px !important;
}

#header #_desktop_user_info .os-header-account span {
  height: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Zakaznicky ucet - checkboxy v osobnych nastaveniach blizsie k poliam */
body#identity .os-account-main__panel .os-register-consent,
body#identity .os-account-main__panel .os-register-consent.form-group,
body#identity .os-account-main__panel .os-register-consent.form-group.row,
body#identity .os-account-main__panel .form-group:has(.custom-checkbox) {
  margin: 17px 0 0 20px !important;
  max-width: 650px !important;
}

body#identity .os-account-main__panel .os-register-checkbox {
  max-width: 620px !important;
}

body#identity .os-account-main__panel .os-register-consent > .js-input-column,
body#identity .os-account-main__panel .os-register-consent .col-md-6.offset-md-3,
body#identity .os-account-main__panel .form-group:has(.custom-checkbox) > .js-input-column,
body#identity .os-account-main__panel .form-group:has(.custom-checkbox) .col-md-6.offset-md-3 {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

@media (max-width: 991px) {
  body#identity .os-account-main__panel .os-register-consent,
  body#identity .os-account-main__panel .os-register-consent.form-group,
  body#identity .os-account-main__panel .os-register-consent.form-group.row,
  body#identity .os-account-main__panel .form-group:has(.custom-checkbox) {
    margin-left: 0 !important;
    max-width: none !important;
  }
}

/* Auth final polish - jednotny login a registracia */
body#authentication .os-auth-panel,
body.page-authentication .os-auth-panel,
.os-register-panel {
  border-radius: 0 !important;
  border: 1px solid rgba(214,162,48,0.68) !important;
  background:
    linear-gradient(145deg, rgba(24,24,24,0.965), rgba(5,5,5,0.985)) !important;
  box-shadow:
    0 38px 100px rgba(0,0,0,0.88),
    inset 0 1px 0 rgba(255,255,255,0.075),
    inset 0 0 55px rgba(214,162,48,0.025) !important;
  overflow: hidden !important;
}

body#authentication .os-auth-panel::before,
body.page-authentication .os-auth-panel::before,
.os-register-panel::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  background:
    linear-gradient(135deg, rgba(255,255,255,0.055), transparent 34%),
    repeating-linear-gradient(
      135deg,
      rgba(255,255,255,0.024) 0,
      rgba(255,255,255,0.024) 1px,
      transparent 1px,
      transparent 7px
    ) !important;
}

body#authentication .os-auth-panel::after,
body.page-authentication .os-auth-panel::after,
.os-register-panel::after {
  content: "" !important;
  position: absolute !important;
  right: -48px !important;
  top: -42px !important;
  z-index: 0 !important;
  width: 230px !important;
  height: 230px !important;
  opacity: 0.18 !important;
  pointer-events: none !important;
  transform: rotate(20deg) !important;
  background:
    repeating-linear-gradient(
      45deg,
      transparent 0,
      transparent 8px,
      rgba(0,0,0,0.95) 8px,
      rgba(0,0,0,0.95) 15px
    ) !important;
}

.os-register-panel > * {
  position: relative !important;
  z-index: 2 !important;
}

body#authentication .os-auth-input,
body.page-authentication .os-auth-input,
.os-register-form .form-control,
.os-register-form .input-group .form-control,
.os-register-form select.form-control {
  border-radius: 0 !important;
}

body#authentication .os-auth-submit,
body.page-authentication .os-auth-submit,
.os-register-form .form-control-submit,
.os-register-login {
  border-radius: 0 !important;
}

.os-register-bg {
  background-color: #050505 !important;
  background-image:
    linear-gradient(90deg, rgba(5,5,5,0.96) 0%, rgba(5,5,5,0.76) 48%, rgba(5,5,5,0.94) 100%),
    radial-gradient(circle at 28% 18%, rgba(214,162,48,0.16), transparent 34%),
    url("../img/login.png") !important;
  background-repeat: no-repeat !important;
  background-size: cover !important;
  background-position: center center !important;
}

body#authentication .os-auth-panel__bolt,
body.page-authentication .os-auth-panel__bolt {
  display: none !important;
}

.os-account-dashboard__grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

body#my-account .breadcrumb,
body.page-my-account .breadcrumb,
body#identity .breadcrumb,
body#history .breadcrumb,
body#my-account .page-header,
body.page-my-account .page-header,
body#identity .page-header,
body#history .page-header {
  display: none !important;
}

/* Zakaznicky ucet */
body#my-account #wrapper,
body.page-my-account #wrapper {
  background: #050505 !important;
}

body#my-account .page-header,
body.page-my-account .page-header {
  margin: 0 0 22px !important;
}

body#my-account .page-header h1,
body.page-my-account .page-header h1 {
  color: #ffffff !important;
  font-size: 28px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  text-shadow: 3px 4px 0 #000000 !important;
}

.os-account-page {
  width: 100% !important;
  margin: 0 !important;
  padding: 6px 0 28px !important;
}

.os-account-grid,
body#my-account .links {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
  width: 100% !important;
}

.os-account-card,
body#my-account .links a,
body.page-my-account .links a {
  min-height: 118px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  padding: 22px 18px !important;
  border: 1px solid rgba(214,162,48,0.42) !important;
  background:
    linear-gradient(145deg, rgba(18,18,18,0.96), rgba(5,5,5,0.98)),
    repeating-linear-gradient(135deg, rgba(255,255,255,0.024) 0 1px, transparent 1px 7px) !important;
  color: #ffffff !important;
  text-align: center !important;
  text-decoration: none !important;
  box-shadow:
    0 18px 42px rgba(0,0,0,0.55),
    inset 0 1px 0 rgba(255,255,255,0.04) !important;
  transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease !important;
}

.os-account-card:hover,
body#my-account .links a:hover,
body.page-my-account .links a:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(244,198,66,0.9) !important;
  color: #f4c642 !important;
  box-shadow:
    0 22px 52px rgba(0,0,0,0.68),
    0 0 22px rgba(214,162,48,0.16) !important;
}

.os-account-card i,
body#my-account .links .link-item i,
body.page-my-account .links .link-item i {
  color: #d6a230 !important;
  font-size: 34px !important;
  line-height: 1 !important;
}

.os-account-card span,
body#my-account .links .link-item,
body.page-my-account .links .link-item {
  color: inherit !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

body#my-account .links a[class*="col-"],
body.page-my-account .links a[class*="col-"] {
  width: auto !important;
  max-width: none !important;
  flex: none !important;
  padding-left: 18px !important;
  padding-right: 18px !important;
}

body#my-account .links .link-item,
body.page-my-account .links .link-item {
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.os-account-logout,
body#my-account .page-footer,
body.page-my-account .page-footer {
  margin: 28px 0 0 !important;
  padding: 24px 0 0 !important;
  border-top: 1px solid rgba(214,162,48,0.28) !important;
  text-align: center !important;
}

.os-account-logout a,
body#my-account .page-footer a,
body.page-my-account .page-footer a {
  color: #f4c642 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

@media (max-width: 991px) {
  .os-account-grid,
  body#my-account .links {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 575px) {
  .os-account-grid,
  body#my-account .links {
    grid-template-columns: 1fr !important;
  }
}

/* Zakaznicky ucet - bocne menu a obsah */
.os-account-shell {
  display: grid !important;
  grid-template-columns: 280px minmax(0, 1fr) !important;
  gap: 28px !important;
  align-items: start !important;
  width: 100% !important;
  padding: 52px 0 48px !important;
}

.os-account-sidebar,
.os-account-main__panel {
  border: 1px solid rgba(214,162,48,0.42) !important;
  background:
    linear-gradient(145deg, rgba(18,18,18,0.96), rgba(5,5,5,0.98)),
    repeating-linear-gradient(135deg, rgba(255,255,255,0.024) 0 1px, transparent 1px 7px) !important;
  box-shadow:
    0 18px 42px rgba(0,0,0,0.55),
    inset 0 1px 0 rgba(255,255,255,0.04) !important;
}

.os-account-sidebar {
  padding: 20px !important;
}

.os-account-sidebar__title {
  margin: 0 0 16px !important;
  color: #d6a230 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

.os-account-nav {
  display: grid !important;
  gap: 10px !important;
}

.os-account-nav__item,
.os-account-nav__hooks a {
  min-height: 58px !important;
  display: grid !important;
  grid-template-columns: 28px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(214,162,48,0.28) !important;
  background: rgba(0,0,0,0.44) !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

.os-account-nav__item:hover,
.os-account-nav__hooks a:hover {
  border-color: rgba(244,198,66,0.9) !important;
  background: rgba(214,162,48,0.10) !important;
  color: #f4c642 !important;
}

body#my-account #identity-link,
body#identity #identity-link,
body#history #history-link {
  border-color: rgba(244,198,66,0.86) !important;
  background: rgba(214,162,48,0.12) !important;
  color: #f4c642 !important;
}

.os-account-nav__item i,
.os-account-nav__hooks i,
.os-account-nav__hooks .material-icons {
  color: #d6a230 !important;
  font-size: 24px !important;
}

.os-account-nav__item span,
.os-account-nav__hooks a,
.os-account-nav__hooks .link-item {
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.03em !important;
  line-height: 1.25 !important;
  text-transform: uppercase !important;
}

.os-account-nav__hooks {
  display: grid !important;
  gap: 10px !important;
}

.os-account-nav__hooks a[class*="col-"] {
  width: auto !important;
  max-width: none !important;
  padding: 12px 14px !important;
}

.os-account-nav__hooks .link-item {
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: inherit !important;
}

.os-account-nav__item--logout {
  margin-top: 8px !important;
  border-color: rgba(214,162,48,0.5) !important;
  color: #f4c642 !important;
}

.os-account-main__panel {
  min-height: 420px !important;
  padding: 34px 38px !important;
}

.os-account-dashboard > span {
  display: block !important;
  margin: 0 0 10px !important;
  color: #d6a230 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

.os-account-dashboard h2 {
  margin: 0 !important;
  color: #ffffff !important;
  font-size: 36px !important;
  font-weight: 900 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  text-shadow: 3px 4px 0 #000000 !important;
}

.os-account-dashboard p {
  max-width: 650px !important;
  margin: 16px 0 26px !important;
  color: #d8d8d8 !important;
  line-height: 1.65 !important;
}

.os-account-dashboard__grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

.os-account-dashboard__grid a {
  min-height: 118px !important;
  padding: 20px !important;
  border: 1px solid rgba(214,162,48,0.32) !important;
  background: rgba(0,0,0,0.36) !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

.os-account-dashboard__grid a:hover {
  border-color: rgba(244,198,66,0.9) !important;
}

.os-account-dashboard__grid strong {
  display: block !important;
  margin: 0 0 8px !important;
  color: #f4c642 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

.os-account-dashboard__grid small {
  color: #d8d8d8 !important;
  line-height: 1.45 !important;
}

.os-account-settings > span {
  display: block !important;
  margin: 0 0 10px !important;
  color: #d6a230 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
}

.os-account-settings h2 {
  margin: 0 !important;
  color: #ffffff !important;
  font-size: 36px !important;
  font-weight: 900 !important;
  letter-spacing: 0.04em !important;
  line-height: 1.1 !important;
  text-transform: uppercase !important;
  text-shadow: 3px 4px 0 #000000 !important;
}

.os-account-settings p {
  max-width: 680px !important;
  margin: 16px 0 26px !important;
  color: #d8d8d8 !important;
  line-height: 1.65 !important;
}

.os-account-settings__details {
  display: grid !important;
  gap: 12px !important;
  max-width: 680px !important;
  margin: 0 0 28px !important;
}

.os-account-settings__row {
  display: grid !important;
  grid-template-columns: 190px minmax(0, 1fr) !important;
  gap: 18px !important;
  align-items: center !important;
  min-height: 58px !important;
  padding: 14px 18px !important;
  border: 1px solid rgba(214,162,48,0.28) !important;
  background: rgba(0,0,0,0.38) !important;
}

.os-account-settings__row small {
  color: #f4c642 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
}

.os-account-settings__row strong {
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  overflow-wrap: anywhere !important;
}

.os-account-settings__button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px !important;
  padding: 0 24px !important;
  border: 1px solid rgba(244,198,66,0.85) !important;
  background: linear-gradient(180deg, #f6c746, #d79519) !important;
  color: #000000 !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  box-shadow: 0 16px 30px rgba(214,162,48,0.24) !important;
}

.os-account-settings__button:hover {
  background: linear-gradient(180deg, #ffd35d, #e1a11e) !important;
  color: #000000 !important;
}

@media (max-width: 991px) {
  .os-account-shell {
    grid-template-columns: 1fr !important;
  }

  .os-account-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 575px) {
  .os-account-nav,
  .os-account-dashboard__grid {
    grid-template-columns: 1fr !important;
  }

  .os-account-settings__row {
    grid-template-columns: 1fr !important;
    gap: 6px !important;
  }
}

.os-register-form .custom-radio {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 17px !important;
  height: 17px !important;
  border: 1px solid rgba(255,255,255,0.65) !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,0.92) !important;
  box-shadow: 0 0 0 2px rgba(0,0,0,0.45) !important;
}

.os-register-form .custom-radio input[type="radio"] {
  position: absolute !important;
  opacity: 0 !important;
}

.os-register-form .custom-radio span {
  display: block !important;
  width: 9px !important;
  height: 9px !important;
  border-radius: 50% !important;
  background: transparent !important;
}

.os-register-form .custom-radio input[type="radio"]:checked + span {
  background: #f4c642 !important;
  box-shadow:
    0 0 0 3px rgba(214,162,48,0.35),
    0 0 14px rgba(244,198,66,0.85) !important;
}

.os-register-form .custom-radio:has(input[type="radio"]:checked) {
  border-color: #f4c642 !important;
  background: #101010 !important;
}

/* Zakaznicky ucet - osobne nastavenia */
body#identity,
body#history,
body#my-account,
body.page-my-account {
  background: #050505 !important;
}

body#identity #wrapper,
body#history #wrapper,
body#my-account #wrapper,
body.page-my-account #wrapper {
  background: #050505 !important;
}

body#identity #wrapper > .container,
body#history #wrapper > .container,
body#my-account #wrapper > .container,
body.page-my-account #wrapper > .container,
body#identity #content-wrapper,
body#history #content-wrapper,
body#my-account #content-wrapper,
body.page-my-account #content-wrapper,
body#identity #content,
body#history #content,
body#my-account #content,
body.page-my-account #content,
body#identity .page-content,
body#history .page-content,
body#my-account .page-content,
body.page-my-account .page-content {
  background: transparent !important;
}

body#identity .os-account-shell,
body#history .os-account-shell,
body#my-account .os-account-shell,
body.page-my-account .os-account-shell {
  padding-top: 44px !important;
}

body#identity .os-account-main__panel {
  padding: 40px 48px 44px !important;
}

body#identity .os-account-main__panel #customer-form {
  width: 100% !important;
  max-width: 760px !important;
  margin: 0 auto !important;
}

body#identity .os-account-main__panel #customer-form > div {
  display: block !important;
}

body#identity .os-account-main__panel .form-group,
body#identity .os-account-main__panel .form-group.row {
  display: grid !important;
  grid-template-columns: 190px minmax(0, 1fr) !important;
  column-gap: 24px !important;
  row-gap: 6px !important;
  align-items: start !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
}

body#identity .os-account-main__panel .form-control-label,
body#identity .os-account-main__panel .js-input-column,
body#identity .os-account-main__panel .form-control-comment {
  width: 100% !important;
  max-width: none !important;
  flex: none !important;
  padding: 0 !important;
}

body#identity .os-account-main__panel .form-control-label {
  grid-column: 1 !important;
  margin: 13px 0 0 !important;
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.05em !important;
  line-height: 1.25 !important;
  text-align: right !important;
  text-transform: uppercase !important;
  opacity: 1 !important;
}

body#identity .os-account-main__panel .js-input-column {
  grid-column: 2 !important;
  min-width: 0 !important;
}

body#identity .os-account-main__panel .form-control-comment {
  display: none !important;
}

body#identity .os-account-main__panel .form-control,
body#identity .os-account-main__panel .input-group .form-control,
body#identity .os-account-main__panel select.form-control {
  width: 100% !important;
  height: 44px !important;
  padding: 0 14px !important;
  border: 1px solid rgba(214,162,48,0.52) !important;
  border-radius: 0 !important;
  background: rgba(0,0,0,0.72) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  line-height: 44px !important;
  box-shadow: inset 0 1px 10px rgba(0,0,0,0.72) !important;
}

body#identity .os-account-main__panel .form-control:focus {
  border-color: rgba(244,198,66,0.95) !important;
  background: rgba(0,0,0,0.9) !important;
  box-shadow:
    0 0 0 3px rgba(214,162,48,0.16),
    inset 0 1px 10px rgba(0,0,0,0.72) !important;
}

body#identity .os-account-main__panel .input-group {
  position: relative !important;
  display: block !important;
  width: 100% !important;
}

body#identity .os-account-main__panel .input-group .form-control {
  padding-right: 54px !important;
}

body#identity .os-account-main__panel .input-group-btn {
  position: absolute !important;
  top: 0 !important;
  right: 8px !important;
  bottom: 0 !important;
  width: 36px !important;
  z-index: 4 !important;
}

body#identity .os-account-main__panel button[data-action="show-password"] {
  position: absolute !important;
  inset: 0 !important;
  width: 36px !important;
  min-width: 36px !important;
  height: 44px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  text-indent: 0 !important;
  box-shadow: none !important;
}

body#identity .os-account-main__panel button[data-action="show-password"]::before {
  content: "" !important;
  position: absolute !important;
  left: 7px !important;
  top: 50% !important;
  width: 22px !important;
  height: 13px !important;
  transform: translateY(-50%) !important;
  border: 1.7px solid #d6a230 !important;
  border-radius: 50% / 62% !important;
}

body#identity .os-account-main__panel button[data-action="show-password"]::after {
  content: "" !important;
  position: absolute !important;
  left: 15px !important;
  top: 50% !important;
  width: 6px !important;
  height: 6px !important;
  transform: translateY(-50%) !important;
  border-radius: 50% !important;
  background: #d6a230 !important;
}

body#identity .os-account-main__panel .form-group:has(.custom-radio) {
  align-items: center !important;
}

body#identity .os-account-main__panel .form-group:has(.custom-radio) .form-control-label {
  margin-top: 2px !important;
}

body#identity .os-account-main__panel .radio-inline {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 6px 22px 0 0 !important;
  color: #d8d8d8 !important;
}

body#identity .os-account-main__panel .custom-radio {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 17px !important;
  height: 17px !important;
  border: 1px solid rgba(255,255,255,0.72) !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,0.92) !important;
}

body#identity .os-account-main__panel .custom-radio input[type="radio"] {
  position: absolute !important;
  opacity: 0 !important;
}

body#identity .os-account-main__panel .custom-radio span {
  width: 9px !important;
  height: 9px !important;
  border-radius: 50% !important;
  background: transparent !important;
}

body#identity .os-account-main__panel .custom-radio input[type="radio"]:checked + span {
  background: #f4c642 !important;
  box-shadow: 0 0 0 3px rgba(214,162,48,0.28), 0 0 14px rgba(244,198,66,0.75) !important;
}

body#identity .os-account-main__panel .os-register-consent,
body#identity .os-account-main__panel .form-group:has(.custom-checkbox) {
  display: block !important;
  margin: 17px 0 0 214px !important;
}

body#identity .os-account-main__panel .os-register-consent .js-input-column {
  width: 100% !important;
}

body#identity .os-account-main__panel .os-register-consent .custom-checkbox label {
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: start !important;
}

body#identity .os-account-main__panel .os-register-consent .custom-checkbox input[type="checkbox"] {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 16px !important;
  height: 16px !important;
  margin: 2px 0 0 !important;
  opacity: 1 !important;
}

body#identity .os-account-main__panel .os-register-consent__content strong {
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
}

body#identity .os-account-main__panel .os-register-consent__content small {
  color: rgba(255,255,255,0.7) !important;
  font-size: 12px !important;
  line-height: 1.48 !important;
}

body#identity .os-account-main__panel .form-footer {
  display: flex !important;
  justify-content: flex-end !important;
  margin: 28px 0 0 214px !important;
  padding-top: 26px !important;
  border-top: 1px solid rgba(255,255,255,0.12) !important;
}

body#identity .os-account-main__panel .form-control-submit {
  min-width: 190px !important;
  height: 54px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: linear-gradient(180deg, #f4c642 0%, #d6a230 100%) !important;
  color: #050505 !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  box-shadow: 0 16px 34px rgba(214,162,48,0.22) !important;
}

@media (max-width: 991px) {
  body#identity .os-account-main__panel {
    padding: 30px 22px 34px !important;
  }

  body#identity .os-account-main__panel .form-group,
  body#identity .os-account-main__panel .form-group.row {
    display: block !important;
  }

  body#identity .os-account-main__panel .form-control-label {
    margin: 0 0 8px !important;
    text-align: left !important;
  }

  body#identity .os-account-main__panel .os-register-consent,
  body#identity .os-account-main__panel .form-group:has(.custom-checkbox),
  body#identity .os-account-main__panel .form-footer {
    margin-left: 0 !important;
  }
}

.os-register-form .os-register-password-toggle {
  position: absolute !important;
  inset: 0 !important;
  width: 36px !important;
  height: 100% !important;
  min-width: 36px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  text-indent: 0 !important;
  box-shadow: none !important;
}

.os-register-form .os-register-password-toggle::before,
.os-register-form .os-register-password-toggle::after {
  content: none !important;
  display: none !important;
}

.os-register-form .os-register-password-toggle span {
  position: absolute !important;
  left: 7px !important;
  top: 50% !important;
  width: 22px !important;
  height: 13px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translateY(-50%) !important;
  border: 1.7px solid #d6a230 !important;
  border-radius: 50% / 62% !important;
  background: transparent !important;
}

.os-register-form .os-register-password-toggle span::before {
  content: "" !important;
  position: absolute !important;
  left: 7px !important;
  top: 3px !important;
  width: 6px !important;
  height: 6px !important;
  border-radius: 50% !important;
  background: #d6a230 !important;
}

/* Registracia zakaznika */
body#registration,
body.page-registration {
  background: #050505 !important;
}

body#registration #wrapper,
body.page-registration #wrapper {
  padding: 0 !important;
  margin: 0 !important;
  background: #050505 !important;
}

body#registration #wrapper > .container,
body#registration #wrapper #content-wrapper,
body#registration #wrapper #content,
body#registration #wrapper .page-content,
body.page-registration #wrapper > .container,
body.page-registration #wrapper #content-wrapper,
body.page-registration #wrapper #content,
body.page-registration #wrapper .page-content {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body#registration #left-column,
body#registration #right-column,
body#registration .breadcrumb,
body#registration .page-header,
body.page-registration #left-column,
body.page-registration #right-column,
body.page-registration .breadcrumb,
body.page-registration .page-header {
  display: none !important;
}

.os-register-page {
  position: relative !important;
  min-height: calc(100vh - 126px) !important;
  padding: 54px 18px 74px !important;
  overflow: hidden !important;
  background: #050505 !important;
}

.os-register-bg {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
  background:
    linear-gradient(90deg, rgba(5,5,5,0.96) 0%, rgba(5,5,5,0.78) 48%, rgba(5,5,5,0.94) 100%),
    radial-gradient(circle at 28% 18%, rgba(214,162,48,0.16), transparent 34%),
    url("../img/auth/login-bg.jpg") center / cover no-repeat !important;
  opacity: 0.82 !important;
}

.os-register-wrap {
  position: relative !important;
  z-index: 1 !important;
  width: 100% !important;
  max-width: 920px !important;
  margin: 0 auto !important;
}

.os-register-panel {
  position: relative !important;
  width: 100% !important;
  padding: 44px 52px 46px !important;
  border: 1px solid rgba(214,162,48,0.48) !important;
  background:
    linear-gradient(rgba(12,12,12,0.92), rgba(5,5,5,0.96)),
    repeating-linear-gradient(135deg, rgba(255,255,255,0.035) 0 1px, transparent 1px 7px) !important;
  box-shadow:
    0 28px 70px rgba(0,0,0,0.62),
    inset 0 1px 0 rgba(255,255,255,0.04) !important;
}

.os-register-panel__head {
  max-width: 650px !important;
  margin: 0 0 24px !important;
}

.os-register-panel__head span {
  display: block !important;
  margin: 0 0 10px !important;
  color: #d6a230 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
}

.os-register-panel__head h1 {
  margin: 0 !important;
  color: #ffffff !important;
  font-size: 44px !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  text-shadow: 3px 4px 0 #000000 !important;
}

.os-register-panel__head p {
  max-width: 620px !important;
  margin: 15px 0 0 !important;
  color: #d8d8d8 !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
}

.os-register-login {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin: 0 0 30px !important;
  padding: 15px 18px !important;
  border: 1px solid rgba(214,162,48,0.28) !important;
  background: rgba(214,162,48,0.07) !important;
}

.os-register-login span {
  color: #cfcfcf !important;
  font-size: 14px !important;
}

.os-register-login a {
  color: #f4c642 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

.os-register-form .js-customer-form {
  margin: 0 !important;
}

.os-register-form .js-customer-form > div {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 20px 24px !important;
}

.os-register-form .form-group {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

.os-register-form .form-group.row {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.os-register-form .form-control-label,
.os-register-form .js-input-column,
.os-register-form .form-control-comment {
  width: 100% !important;
  max-width: none !important;
  flex: none !important;
  padding: 0 !important;
}

.os-register-form .form-control-label {
  display: block !important;
  margin: 0 0 8px !important;
  color: #ffffff !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}

.os-register-form .form-control,
.os-register-form .input-group .form-control,
.os-register-form select.form-control {
  width: 100% !important;
  height: 48px !important;
  padding: 0 15px !important;
  border: 1px solid rgba(214,162,48,0.45) !important;
  border-radius: 0 !important;
  background: rgba(0,0,0,0.68) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  line-height: 48px !important;
  box-shadow: inset 0 1px 10px rgba(0,0,0,0.72) !important;
}

.os-register-form .form-control:focus {
  border-color: rgba(244,198,66,0.92) !important;
  background: rgba(0,0,0,0.86) !important;
  box-shadow:
    0 0 0 3px rgba(214,162,48,0.16),
    inset 0 1px 10px rgba(0,0,0,0.72) !important;
}

.os-register-form .input-group {
  display: flex !important;
  width: 100% !important;
}

.os-register-form .input-group .form-control {
  flex: 1 1 auto !important;
}

.os-register-form .input-group-btn {
  flex: 0 0 auto !important;
}

.os-register-form .input-group-btn .btn {
  height: 48px !important;
  min-width: 92px !important;
  padding: 0 16px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #d6a230 !important;
  color: #050505 !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}

.os-register-form .form-control-comment {
  margin-top: 6px !important;
  color: rgba(255,255,255,0.58) !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
}

.os-register-form .custom-radio,
.os-register-form .custom-checkbox {
  color: #d8d8d8 !important;
}

.os-register-form .radio-inline {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 8px 20px 0 0 !important;
  color: #d8d8d8 !important;
}

.os-register-form .custom-checkbox label {
  display: grid !important;
  grid-template-columns: 22px minmax(0, 1fr) !important;
  gap: 12px !important;
  align-items: start !important;
  margin: 0 !important;
  color: #d4d4d4 !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
}

.os-register-form .custom-checkbox input[type="checkbox"] {
  margin: 4px 0 0 !important;
}

.os-register-form .custom-checkbox span {
  color: #d4d4d4 !important;
}

.os-register-form .form-footer {
  margin: 30px 0 0 !important;
  padding: 28px 0 0 !important;
  border-top: 1px solid rgba(255,255,255,0.12) !important;
}

.os-register-form .form-control-submit {
  min-width: 210px !important;
  height: 58px !important;
  float: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: linear-gradient(180deg, #f4c642 0%, #d6a230 100%) !important;
  color: #050505 !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  box-shadow: 0 16px 34px rgba(214,162,48,0.22) !important;
}

.os-register-form .form-control-submit:hover {
  background: linear-gradient(180deg, #ffd965 0%, #e0ad36 100%) !important;
}

.os-register-form .has-error .form-control {
  border-color: #d9534f !important;
}

.os-register-form .alert,
.os-register-form .help-block,
.os-register-form .form-error {
  color: #ffb3ad !important;
}

@media (max-width: 768px) {
  .os-register-page {
    padding: 34px 14px 54px !important;
  }

  .os-register-panel {
    padding: 30px 20px 32px !important;
  }

  .os-register-panel__head h1 {
    font-size: 31px !important;
  }

  .os-register-login {
    display: block !important;
  }

  .os-register-login a {
    display: inline-block !important;
    margin-top: 8px !important;
  }

  .os-register-form .js-customer-form > div {
    grid-template-columns: 1fr !important;
  }
}

/* Registracia - formular */
.os-register-wrap {
  max-width: 780px !important;
}

.os-register-panel {
  padding: 42px 48px 44px !important;
}

.os-register-panel__head {
  max-width: none !important;
  margin-bottom: 24px !important;
  text-align: left !important;
}

.os-register-panel__head h1 {
  font-size: 40px !important;
  letter-spacing: 0.055em !important;
}

.os-register-login {
  margin-bottom: 28px !important;
}

.os-register-form .js-customer-form > div {
  display: block !important;
}

.os-register-form .form-group,
.os-register-form .form-group.row {
  display: grid !important;
  grid-template-columns: 190px minmax(0, 1fr) !important;
  column-gap: 24px !important;
  row-gap: 6px !important;
  align-items: start !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
}

.os-register-form .form-control-label {
  grid-column: 1 !important;
  margin: 15px 0 0 !important;
  text-align: right !important;
  white-space: normal !important;
}

.os-register-form .js-input-column {
  grid-column: 2 !important;
  min-width: 0 !important;
}

.os-register-form .form-control-comment {
  grid-column: 2 !important;
  width: auto !important;
  max-width: none !important;
  margin: 4px 0 0 !important;
  text-align: left !important;
  white-space: normal !important;
}

.os-register-form .form-group:has(.custom-radio) {
  align-items: center !important;
}

.os-register-form .form-group:has(.custom-radio) .form-control-label {
  margin-top: 4px !important;
}

/* Registracia - suhlasy a checkboxy */
.os-register-form .os-register-consent,
.os-register-form .os-register-consent.form-group,
.os-register-form .os-register-consent.form-group.row {
  display: block !important;
  width: auto !important;
  margin: 18px 0 0 214px !important;
  padding: 0 !important;
}

.os-register-form .os-register-consent .js-input-column {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
}

.os-register-checkbox {
  display: grid !important;
  grid-template-columns: 18px minmax(0, 1fr) !important;
  gap: 13px !important;
  align-items: start !important;
  width: 100% !important;
  max-width: 590px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #d8d8d8 !important;
  text-align: left !important;
  white-space: normal !important;
}

.os-register-checkbox input[type="checkbox"] {
  grid-column: 1 !important;
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
  opacity: 1 !important;
  position: static !important;
  appearance: auto !important;
}

.os-register-checkbox__text,
.os-register-checkbox__text strong,
.os-register-checkbox__text small {
  display: block !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  padding-left: 0 !important;
  text-align: left !important;
  white-space: normal !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

.os-register-checkbox__text strong {
  margin-bottom: 5px !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
}

.os-register-checkbox__text small {
  color: rgba(255,255,255,0.66) !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
}

.os-register-form .os-register-consent--hidden {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

@media (max-width: 768px) {
  .os-register-form .os-register-consent,
  .os-register-form .os-register-consent.form-group,
  .os-register-form .os-register-consent.form-group.row {
    margin-left: 0 !important;
  }

  .os-register-checkbox {
    max-width: none !important;
  }
}

/* Registracia - pozadie a zobrazenie hesla */
.os-register-bg {
  background:
    linear-gradient(90deg, rgba(5,5,5,0.96) 0%, rgba(5,5,5,0.76) 48%, rgba(5,5,5,0.94) 100%),
    radial-gradient(circle at 28% 18%, rgba(214,162,48,0.16), transparent 34%),
    url("../img/login.png") center / cover no-repeat !important;
}

.os-register-form .os-register-password-field .input-group {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 48px !important;
}

.os-register-form .os-register-password-field .input-group .form-control {
  height: 48px !important;
  padding-right: 58px !important;
  line-height: 48px !important;
}

.os-register-form .os-register-password-field .input-group-btn {
  position: absolute !important;
  top: 0 !important;
  right: 8px !important;
  z-index: 50 !important;
  display: block !important;
  width: 36px !important;
  height: 48px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

.os-register-form .os-register-password-toggle {
  position: relative !important;
  display: block !important;
  width: 36px !important;
  height: 48px !important;
  min-width: 36px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  text-indent: 0 !important;
  overflow: hidden !important;
  box-shadow: none !important;
}

.os-register-form .os-register-password-toggle span {
  display: none !important;
}

.os-register-form .os-register-password-toggle::before {
  content: "" !important;
  position: absolute !important;
  left: 7px !important;
  top: 50% !important;
  display: block !important;
  width: 22px !important;
  height: 13px !important;
  transform: translateY(-50%) !important;
  border: 1.7px solid #d6a230 !important;
  border-radius: 50% / 62% !important;
  background: transparent !important;
}

.os-register-form .os-register-password-toggle::after {
  content: "" !important;
  position: absolute !important;
  left: 15px !important;
  top: 50% !important;
  display: block !important;
  width: 6px !important;
  height: 6px !important;
  transform: translateY(-50%) !important;
  border-radius: 50% !important;
  background: #d6a230 !important;
}

/* ============================================================
   99. RESPONSIVE HEADER, MENU AND RESIZE SAFETY
   ============================================================ */

#header .header-top .os-tablet-menu-icon,
#header #os_responsive_logo,
#header #os_responsive_cart {
  display: none;
}

@media (max-width: 1100px) {
  html,
  body {
    overflow-x: hidden !important;
  }

  img,
  iframe,
  video {
    max-width: 100% !important;
  }

  #wrapper,
  #content-wrapper,
  #content,
  #main,
  #notifications,
  #footer {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    max-width: 100% !important;
  }

  #header .header-nav {
    height: var(--os-topbar-height) !important;
    min-height: var(--os-topbar-height) !important;
    max-height: var(--os-topbar-height) !important;
    overflow: visible !important;
  }

  #header .header-nav .container,
  #header .header-nav .container > .row,
  #header .header-nav .hidden-sm-down {
    height: var(--os-topbar-height) !important;
    min-height: var(--os-topbar-height) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
  }

  #header .header-nav .hidden-sm-down .col-md-5,
  #header .header-nav .hidden-md-up.mobile,
  #header .header-nav #_mobile_cart,
  #header .header-nav #_mobile_user_info,
  #header .header-nav #_mobile_logo,
  #header .header-nav .top-logo,
  #header .header-nav #_desktop_cart,
  #header .header-nav #_mobile_cart {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  #header .header-nav .right-nav {
    width: auto !important;
    height: var(--os-topbar-height) !important;
    margin-left: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 0 !important;
  }

  #header .header-nav .right-nav > .user-info.os-header-account {
    position: fixed !important;
    right: 54px !important;
    top: calc((var(--os-topbar-height) - 40px) / 2) !important;
    width: auto !important;
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    z-index: 10079 !important;
  }

  #header .header-nav .right-nav > .user-info.os-header-account > a {
    position: static !important;
    top: auto !important;
    width: auto !important;
    height: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
    margin: 0 !important;
    padding: 0 7px !important;
    color: var(--os-gold) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    transform: none !important;
    white-space: nowrap !important;
  }

  #header .header-nav .right-nav > .user-info.os-header-account > a .material-icons,
  #header .header-nav .right-nav > .user-info.os-header-account > a .os-header-account__icon {
    width: 16px !important;
    min-width: 16px !important;
    height: 16px !important;
    font-size: 16px !important;
    line-height: 16px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  #header .header-top,
  #header .header-top .container,
  #header .header-top .container > .row,
  #header .header-top .position-static,
  #header .header-top .position-static > .row,
  #header .header-top [class*="col-"] {
    height: 72px !important;
    min-height: 72px !important;
    max-height: 72px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    position: relative !important;
    overflow: visible !important;
  }

  #header .header-top #_desktop_logo,
  #header .header-top #_desktop_top_menu {
    display: none !important;
  }

  #header #os_responsive_logo {
    position: absolute !important;
    left: 50% !important;
    top: 50% !important;
    width: 360px !important;
    height: 168px !important;
    max-height: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translate(-50%, -50%) !important;
    z-index: 150 !important;
    pointer-events: auto !important;
    overflow: visible !important;
  }

  #header #os_responsive_logo a {
    width: 360px !important;
    height: 168px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: visible !important;
  }

  #header #os_responsive_logo img,
  #header #os_responsive_logo .logo {
    width: auto !important;
    max-width: 330px !important;
    max-height: 158px !important;
    margin: 0 auto !important;
    transform: none !important;
    transform-origin: center center !important;
  }

  #header .header-top .os-tablet-menu-icon,
  #header .header-top #os-menu-icon.os-tablet-menu-icon {
    position: absolute !important;
    right: 22px !important;
    top: 50% !important;
    z-index: 180 !important;
    width: 52px !important;
    height: 52px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--os-gold) !important;
    background: rgba(0, 0, 0, 0.72) !important;
    border: 1px solid rgba(214, 162, 48, 0.55) !important;
    border-radius: 0 !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.55) !important;
    cursor: pointer !important;
    transform: translateY(-50%) !important;
  }

  #header .header-top .os-tablet-menu-icon i,
  #header .header-top .os-tablet-menu-icon .material-icons {
    display: block !important;
    width: 34px !important;
    height: 34px !important;
    font-size: 34px !important;
    line-height: 34px !important;
  }

  #header #os_responsive_cart {
    position: fixed !important;
    right: 10px !important;
    top: 0 !important;
    width: 46px !important;
    min-width: 46px !important;
    max-width: 46px !important;
    height: var(--os-topbar-height) !important;
    min-height: var(--os-topbar-height) !important;
    max-height: var(--os-topbar-height) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--os-gold) !important;
    background: rgba(214, 162, 48, 0.10) !important;
    border-left: 1px solid rgba(214, 162, 48, 0.22) !important;
    border-right: 1px solid rgba(214, 162, 48, 0.10) !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    z-index: 10080 !important;
  }

  #header #os_responsive_cart i,
  #header #os_responsive_cart .material-icons {
    width: 20px !important;
    min-width: 20px !important;
    height: 20px !important;
    font-size: 20px !important;
    line-height: 20px !important;
  }

  #header #os_responsive_cart span {
    display: none !important;
  }
}

@media (max-width: 767px) {
  #header #os_responsive_logo {
    left: 50vw !important;
    width: 390px !important;
    height: 188px !important;
  }

  #header #os_responsive_logo a {
    width: 390px !important;
    height: 188px !important;
  }

  #header #os_responsive_logo img,
  #header #os_responsive_logo .logo {
    max-width: 360px !important;
    max-height: 176px !important;
  }
}

@media (max-width: 520px) {
  body#product #wrapper,
  body.page-product #wrapper {
    padding-top: 58px !important;
  }
}

@media (min-width: 1101px) {
  #header #mobile_top_menu_wrapper,
  body #mobile_top_menu_wrapper {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }
}

#header #mobile_top_menu_wrapper:not(.os-menu-open),
body #mobile_top_menu_wrapper:not(.os-menu-open) {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

@media (max-width: 1100px) {
  #header #mobile_top_menu_wrapper.os-menu-open,
  body #mobile_top_menu_wrapper.os-menu-open {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    z-index: 260 !important;
    width: 285px !important;
    max-width: calc(100vw - 36px) !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 18px 0 auto !important;
    padding: 8px 12px !important;
    overflow: visible !important;
    pointer-events: auto !important;
    background: linear-gradient(180deg, rgba(18,18,18,0.98), rgba(3,3,3,0.98)) !important;
    border: 1px solid rgba(214, 162, 48, 0.45) !important;
    box-shadow: 0 18px 42px rgba(0, 0, 0, 0.78), inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
  }

  #header #mobile_top_menu_wrapper.os-menu-open .os-mobile-top-menu,
  #header #mobile_top_menu_wrapper.os-menu-open .os-mobile-top-menu > li {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  #header #mobile_top_menu_wrapper.os-menu-open .os-mobile-top-menu > li > a {
    width: 100% !important;
    min-height: 40px !important;
    height: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin: 0 !important;
    padding: 11px 10px !important;
    color: rgba(255, 255, 255, 0.96) !important;
    border-bottom: 1px solid rgba(214, 162, 48, 0.18) !important;
    font-size: 13px !important;
    font-weight: 900 !important;
    letter-spacing: 0.06em !important;
    line-height: 1.15 !important;
    text-transform: uppercase !important;
    transform: none !important;
  }

  #header #mobile_top_menu_wrapper.os-menu-open .os-mobile-top-menu > li > a:hover {
    color: var(--os-gold-2) !important;
    background: rgba(214, 162, 48, 0.10) !important;
    padding-left: 14px !important;
  }

  #header #mobile_top_menu_wrapper.os-menu-open .os-mobile-top-menu > li:last-child > a {
    border-bottom: 0 !important;
  }

  #header #mobile_top_menu_wrapper.os-menu-open .os-mobile-top-menu a i,
  #header #mobile_top_menu_wrapper.os-menu-open .os-mobile-top-menu a .material-icons,
  #header #mobile_top_menu_wrapper.os-menu-open .os-mobile-top-menu a .collapse-icons,
  #header #mobile_top_menu_wrapper.os-menu-open .os-mobile-top-menu .navbar-toggler,
  #header #mobile_top_menu_wrapper.os-menu-open .sub-menu,
  #header #mobile_top_menu_wrapper.os-menu-open .popover,
  #header #mobile_top_menu_wrapper.os-menu-open .collapse,
  #header #mobile_top_menu_wrapper.os-menu-open ul[data-depth]:not(.os-mobile-top-menu) {
    display: none !important;
  }
}

@media (max-width: 600px) {
  #header #mobile_top_menu_wrapper.os-menu-open,
  body #mobile_top_menu_wrapper.os-menu-open {
    position: absolute !important;
    top: 138px !important;
    right: 16px !important;
    z-index: 320 !important;
    margin: 0 !important;
  }

  #header #mobile_top_menu_wrapper.os-menu-open .js-top-menu-bottom {
    display: none !important;
  }

  body#index #carousel .caption,
  body#index #carousel figcaption.caption,
  body#index #carousel .carousel-caption,
  body#index .carousel .carousel-caption {
    top: 53% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  body#index #carousel .caption h2,
  body#index #carousel figcaption h2,
  body#index #carousel .carousel-caption h2,
  body#index #carousel .caption-description h2,
  body#index .carousel .carousel-caption h2 {
    max-width: calc(100vw - 32px) !important;
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 31px !important;
    line-height: 0.98 !important;
    font-weight: 950 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
    -webkit-text-stroke: 0 !important;
    filter: brightness(1.35) contrast(1.12) !important;
    text-shadow:
      0 2px 3px rgba(0,0,0,0.95),
      0 0 1px rgba(255,255,255,0.55),
      0 8px 18px rgba(0,0,0,0.76) !important;
  }

  body#index #carousel .caption h3,
  body#index #carousel figcaption h3,
  body#index #carousel .carousel-caption h3,
  body#index #carousel .caption-description h3,
  body#index #carousel .caption-description > h3,
  body#index .homeslider-container .caption-description > h3 {
    max-width: calc(100vw - 32px) !important;
    margin: 7px 0 0 !important;
    color: #f4c642 !important;
    background: transparent !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 12px !important;
    line-height: 1.22 !important;
    font-weight: 900 !important;
    letter-spacing: 0.055em !important;
    text-transform: uppercase !important;
    filter: brightness(1.2) contrast(1.08) !important;
    text-shadow:
      0 1px 2px rgba(0,0,0,0.95),
      0 6px 14px rgba(0,0,0,0.82) !important;
  }

  body#index #carousel .caption h3:empty,
  body#index #carousel .caption-description h3:empty,
  body#index .homeslider-container .caption-description h3:empty {
    display: none !important;
  }

  body#index #carousel .caption p,
  body#index #carousel figcaption p,
  body#index #carousel .carousel-caption p,
  body#index #carousel .caption-description p,
  body#index .carousel .carousel-caption p {
    max-width: calc(100vw - 32px) !important;
    margin-top: 10px !important;
    color: #ffffff !important;
    background: transparent !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    line-height: 1.42 !important;
    font-weight: 700 !important;
    filter: brightness(1.18) contrast(1.06) !important;
    text-shadow:
      0 1px 2px rgba(0,0,0,0.95),
      0 6px 14px rgba(0,0,0,0.82) !important;
  }
}

@media (min-width: 601px) and (max-width: 900px) {
  body#index #carousel .caption,
  body#index #carousel figcaption.caption,
  body#index #carousel .carousel-caption,
  body#index .carousel .carousel-caption {
    top: 52% !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  body#index #carousel .caption h2,
  body#index #carousel figcaption h2,
  body#index #carousel .carousel-caption h2,
  body#index #carousel .caption-description h2,
  body#index .carousel .carousel-caption h2 {
    max-width: calc(100vw - 40px) !important;
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: clamp(32px, 5.6vw, 46px) !important;
    line-height: 0.96 !important;
    font-weight: 950 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
    -webkit-text-stroke: 0 !important;
    filter: brightness(1.35) contrast(1.12) !important;
    text-shadow:
      0 2px 3px rgba(0,0,0,0.95),
      0 0 1px rgba(255,255,255,0.55),
      0 8px 18px rgba(0,0,0,0.76) !important;
  }

  body#index #carousel .caption h3,
  body#index #carousel figcaption h3,
  body#index #carousel .carousel-caption h3,
  body#index #carousel .caption-description h3,
  body#index #carousel .caption-description > h3,
  body#index .homeslider-container .caption-description > h3 {
    max-width: calc(100vw - 40px) !important;
    margin: 7px 0 0 !important;
    color: #f4c642 !important;
    background: transparent !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: clamp(12px, 1.85vw, 15px) !important;
    line-height: 1.22 !important;
    font-weight: 900 !important;
    letter-spacing: 0.055em !important;
    text-transform: uppercase !important;
    filter: brightness(1.2) contrast(1.08) !important;
    text-shadow:
      0 1px 2px rgba(0,0,0,0.95),
      0 6px 14px rgba(0,0,0,0.82) !important;
  }

  body#index #carousel .caption h3:empty,
  body#index #carousel .caption-description h3:empty,
  body#index .homeslider-container .caption-description h3:empty {
    display: none !important;
  }

  body#index #carousel .caption p,
  body#index #carousel figcaption p,
  body#index #carousel .carousel-caption p,
  body#index #carousel .caption-description p,
  body#index .carousel .carousel-caption p {
    max-width: min(560px, calc(100vw - 40px)) !important;
    margin-top: 10px !important;
    color: #ffffff !important;
    background: transparent !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: clamp(13px, 1.85vw, 15px) !important;
    line-height: 1.42 !important;
    font-weight: 700 !important;
    filter: brightness(1.18) contrast(1.06) !important;
    text-shadow:
      0 1px 2px rgba(0,0,0,0.95),
      0 6px 14px rgba(0,0,0,0.82) !important;
  }
}

@media (max-width: 1100px) {
  body#index #carousel,
  body#index #carousel.carousel,
  body#index .homeslider-container {
    left: 0 !important;
    right: auto !important;
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    transform: none !important;
    overflow: hidden !important;
  }

  body#index #carousel .carousel-inner,
  body#index #carousel ul.carousel-inner,
  body#index .carousel .carousel-inner,
  body#index #carousel .carousel-item,
  body#index #carousel li.carousel-item,
  body#index .carousel .carousel-item,
  body#index #carousel .carousel-item.active,
  body#index li.carousel-item.active,
  body#index #carousel .carousel-item > a,
  body#index #carousel li.carousel-item > a,
  body#index #carousel figure {
    left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    transform: translate3d(0, 0, 0) !important;
    overflow: hidden !important;
  }

  body#index #carousel figure img,
  body#index #carousel .carousel-item img,
  body#index #carousel li.carousel-item img,
  body#index .carousel .carousel-item img,
  body#index .carousel-inner > .carousel-item > img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    min-height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    margin: 0 !important;
    transform: translate3d(0, 0, 0) !important;
  }

  body#index #carousel .direction,
  body#index #carousel .carousel-control,
  body#index #carousel .carousel-control-prev,
  body#index #carousel .carousel-control-next,
  body#index #carousel .left,
  body#index #carousel .right,
  body#index .carousel .carousel-control-prev,
  body#index .carousel .carousel-control-next,
  body#index #carousel .carousel-indicators,
  body#index .carousel .carousel-indicators {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}
/* Product description media inserted by os_productcontent module. */
body#product .product-description .os-product-text-media,
body.page-product .product-description .os-product-text-media,
body#product .os-product-tabs .os-product-text-media,
body.page-product .os-product-tabs .os-product-text-media {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
  margin: 34px 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(226, 169, 35, 0.48) !important;
  background:
    radial-gradient(circle at 22% 18%, rgba(255, 205, 76, 0.16), transparent 34%),
    linear-gradient(135deg, rgba(226, 169, 35, 0.13), rgba(0, 0, 0, 0) 38%),
    #050505 !important;
  box-shadow: 0 22px 42px rgba(0, 0, 0, 0.42) !important;
}

body#product .product-description table td,
body.page-product .product-description table td,
body#product .os-product-tabs table td,
body.page-product .os-product-tabs table td {
  padding: 8px !important;
  vertical-align: top !important;
}

body#product .product-description table td .os-product-text-media,
body.page-product .product-description table td .os-product-text-media,
body#product .os-product-tabs table td .os-product-text-media,
body.page-product .os-product-tabs table td .os-product-text-media {
  margin: 0 !important;
  padding: 8px !important;
  box-sizing: border-box !important;
}

body#product .product-description .os-product-text-media img,
body.page-product .product-description .os-product-text-media img,
body#product .os-product-tabs .os-product-text-media img,
body.page-product .os-product-tabs .os-product-text-media img {
  display: block !important;
  width: 100% !important;
  height: clamp(260px, 42vw, 520px) !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body#product .product-description .os-product-text-media figcaption,
body.page-product .product-description .os-product-text-media figcaption,
body#product .os-product-tabs .os-product-text-media figcaption,
body.page-product .os-product-tabs .os-product-text-media figcaption {
  margin: 0 !important;
  padding: 12px 16px 14px !important;
  color: #f4c247 !important;
  font-size: 0.78rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  background: rgba(0, 0, 0, 0.78) !important;
}

@media (max-width: 575px) {
  body#product .product-description .os-product-text-media,
  body.page-product .product-description .os-product-text-media,
  body#product .os-product-tabs .os-product-text-media,
  body.page-product .os-product-tabs .os-product-text-media {
    margin: 24px 0 !important;
  }

  body#product .product-description .os-product-text-media img,
  body.page-product .product-description .os-product-text-media img,
  body#product .os-product-tabs .os-product-text-media img,
  body.page-product .os-product-tabs .os-product-text-media img {
    height: 260px !important;
  }
}

/* ============================================================
   FINAL LIGHT BALANCE
   Jemne zosvetlenie webu po nasadeni na produkciu.
   ============================================================ */

#wrapper {
  background:
    radial-gradient(circle at top center, rgba(214, 162, 48, 0.14), transparent 38%),
    linear-gradient(180deg, #090806 0%, #0d0c0a 48%, #070707 100%) !important;
}

body#index #carousel figure img,
body#index #carousel .carousel-item img,
body#index #carousel li.carousel-item img,
body#index .carousel .carousel-item img {
  filter: brightness(1.22) contrast(1.04) saturate(1.10) !important;
}

body#index #carousel figure::before,
body#index #carousel .carousel-item::before,
body#index #carousel li.carousel-item::before,
body#index .carousel .carousel-item::before {
  background:
    linear-gradient(90deg, rgba(0,0,0,0.36) 0%, rgba(0,0,0,0.24) 30%, rgba(0,0,0,0.08) 58%, rgba(0,0,0,0.02) 78%, rgba(0,0,0,0.06) 100%),
    linear-gradient(180deg, rgba(0,0,0,0.00) 0%, rgba(0,0,0,0.08) 100%) !important;
}

body#index #carousel::after,
body#index .carousel::after {
  height: 54px !important;
  background: linear-gradient(180deg, transparent, rgba(5,5,5,0.78)) !important;
}

.product-miniature .thumbnail-container,
body#product #content,
body.page-product #content,
.os-contact-card,
.os-contact-form,
.os-account-panel,
.os-product-summary-card {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.045), rgba(255,255,255,0.012)),
    #11100e !important;
}

body#product #wrapper,
body.page-product #wrapper {
  background:
    radial-gradient(circle at 28% 0%, rgba(214,162,48,0.15), transparent 34%),
    linear-gradient(180deg, #080807 0%, #0d0c0a 56%, #070707 100%) !important;
}

/* OFFROAD SVET: category left menu alignment */
@media (min-width: 768px) {
  #category #left-column .os-shop-left-menu {
    margin-top: 24px !important;
  }
}

@media (max-width: 767.98px) {
  #category #left-column .os-shop-left-menu {
    margin-top: 0 !important;
  }
}
/* OFFROAD SVET: mobile footer polish */
@media (max-width: 767.98px) {
  #footer {
    background: #030303 !important;
  }

  #footer .footer-container {
    padding: 28px 0 18px !important;
    background:
      radial-gradient(circle at 20% 0%, rgba(214, 162, 48, 0.10), transparent 34%),
      linear-gradient(180deg, #050505 0%, #020202 100%) !important;
  }

  #footer .footer-container .container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  #footer .footer-container .row,
  #footer .os-footer-links-row {
    display: block !important;
    margin: 0 !important;
  }

  #footer .footer-container .links,
  #footer .footer-container .wrapper,
  #footer .footer-container [class*="col-"] {
    width: 100% !important;
    max-width: none !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin: 0 0 12px !important;
    float: none !important;
  }

  #footer .links .title,
  #footer .footer-container .h3,
  #footer .footer-container h3,
  #footer .footer-container h4,
  #footer .myaccount-title,
  #footer .block-contact-title {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 52px !important;
    margin: 0 !important;
    padding: 0 16px !important;
    background:
      linear-gradient(90deg, rgba(214, 162, 48, 0.12), rgba(255,255,255,0.02)),
      #090909 !important;
    border: 1px solid rgba(214, 162, 48, 0.28) !important;
    color: var(--os-gold-2) !important;
    text-transform: uppercase !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
    letter-spacing: 0.12em !important;
    box-shadow: 0 12px 28px rgba(0,0,0,0.35) !important;
  }

  #footer .links .title .collapse-icons,
  #footer .links .title i,
  #footer .footer-container .navbar-toggler,
  #footer .footer-container .collapse-icons {
    color: var(--os-gold-2) !important;
    font-size: 20px !important;
    line-height: 1 !important;
    margin-left: auto !important;
  }

  #footer .links ul,
  #footer .footer-container .collapse,
  #footer .footer-container .collapsing,
  #footer .footer-container .account-list {
    margin: 0 !important;
    padding: 8px 0 !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.025), rgba(255,255,255,0.006)),
      #060606 !important;
    border-left: 1px solid rgba(214, 162, 48, 0.22) !important;
    border-right: 1px solid rgba(214, 162, 48, 0.22) !important;
    border-bottom: 1px solid rgba(214, 162, 48, 0.22) !important;
  }

  #footer .links ul.collapse:not(.show),
  #footer .footer-container .collapse:not(.show) {
    display: none !important;
  }

  #footer .links ul li,
  #footer .account-list li {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(214, 162, 48, 0.10) !important;
  }

  #footer .links ul li:last-child,
  #footer .account-list li:last-child {
    border-bottom: 0 !important;
  }

  #footer .links a,
  #footer .account-list a,
  #footer .block-contact a {
    display: block !important;
    padding: 12px 16px !important;
    background: transparent !important;
    color: #e7e7e7 !important;
    font-size: 14px !important;
    line-height: 1.35 !important;
    font-weight: 700 !important;
  }

  #footer .links a:hover,
  #footer .account-list a:hover,
  #footer .block-contact a:hover {
    color: var(--os-gold-2) !important;
    background: rgba(214, 162, 48, 0.07) !important;
  }

  #footer .os-footer-after-row,
  #footer .os-footer-bottom-row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #footer .os-footer-copyright {
    padding: 16px 8px 0 !important;
    color: #a8a8a8 !important;
    font-size: 13px !important;
  }
}
/* OFFROAD SVET: mobile footer accordion refine */
@media (max-width: 767.98px) {
  #footer .footer-container .hidden-sm-down,
  #footer .footer-container .block-contact-title.hidden-sm-down,
  #footer .footer-container .myaccount-title.hidden-sm-down {
    display: none !important;
  }

  #footer .footer-container .links,
  #footer .footer-container .wrapper,
  #footer .block-contact {
    margin-bottom: 12px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  #footer .links .title,
  #footer .block-contact .title {
    min-height: 54px !important;
    padding: 0 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background:
      linear-gradient(90deg, rgba(214, 162, 48, 0.13), rgba(214, 162, 48, 0.035) 45%, rgba(255,255,255,0.018)),
      #090909 !important;
    border: 1px solid rgba(214, 162, 48, 0.34) !important;
    box-shadow:
      0 12px 26px rgba(0, 0, 0, 0.45),
      inset 0 1px 0 rgba(255,255,255,0.035) !important;
  }

  #footer .links .title .h3,
  #footer .block-contact .title .h3 {
    display: block !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: var(--os-gold-2) !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
  }

  #footer .links .title .float-xs-right,
  #footer .block-contact .title .float-xs-right {
    float: none !important;
    margin-left: 12px !important;
    display: inline-flex !important;
    align-items: center !important;
  }

  #footer .links .title .navbar-toggler,
  #footer .block-contact .title .navbar-toggler {
    width: 30px !important;
    height: 30px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    color: var(--os-gold-2) !important;
    border: 1px solid rgba(214, 162, 48, 0.22) !important;
    background: rgba(0, 0, 0, 0.28) !important;
  }

  #footer .links ul,
  #footer .account-list,
  #footer #contact-infos {
    margin: 0 !important;
    padding: 6px 0 !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.018), rgba(255,255,255,0.004)),
      #050505 !important;
    border: 1px solid rgba(214, 162, 48, 0.22) !important;
    border-top: 0 !important;
  }

  #footer #contact-infos {
    padding: 14px 16px !important;
    color: #d8d8d8 !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
  }

  #footer .links a,
  #footer .account-list a {
    padding: 11px 16px !important;
    color: #d9d9d9 !important;
    font-weight: 700 !important;
  }
}
/* OFFROAD SVET: pro mobile footer */
@media (max-width: 767.98px) {
  #footer .footer-container {
    padding: 26px 0 18px !important;
    background:
      radial-gradient(circle at 50% 0%, rgba(214, 162, 48, 0.10), transparent 34%),
      linear-gradient(180deg, #060606 0%, #020202 100%) !important;
  }

  #footer .footer-container .container {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  #footer .footer-container .row,
  #footer .os-footer-links-row {
    display: block !important;
    margin: 0 !important;
  }

  #footer .footer-container .hidden-sm-down,
  #footer .footer-container .block-contact-title.hidden-sm-down,
  #footer .footer-container .myaccount-title.hidden-sm-down {
    display: none !important;
  }

  #footer .footer-container .links,
  #footer .footer-container .wrapper,
  #footer .block-contact {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  #footer .links .title,
  #footer .block-contact .title {
    min-height: 54px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(214, 162, 48, 0.28) !important;
    box-shadow: none !important;
    cursor: pointer !important;
  }

  #footer .links:first-child .title {
    border-top: 1px solid rgba(214, 162, 48, 0.28) !important;
  }

  #footer .links .title .h3,
  #footer .block-contact .title .h3 {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    min-height: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: var(--os-gold-2) !important;
    text-transform: uppercase !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 900 !important;
    letter-spacing: 0.15em !important;
  }

  #footer .links .title .float-xs-right,
  #footer .block-contact .title .float-xs-right {
    float: none !important;
    margin-left: 14px !important;
    display: inline-flex !important;
    align-items: center !important;
  }

  #footer .links .title .navbar-toggler,
  #footer .block-contact .title .navbar-toggler,
  #footer .links .title .collapse-icons,
  #footer .block-contact .title .collapse-icons {
    width: auto !important;
    height: auto !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    border: 0 !important;
    color: var(--os-gold-2) !important;
  }

  #footer .links .title i,
  #footer .block-contact .title i {
    font-size: 22px !important;
    line-height: 1 !important;
    color: var(--os-gold-2) !important;
  }

  #footer .links .title .remove,
  #footer .block-contact .title .remove,
  #footer .links .title.os-footer-open .add,
  #footer .block-contact .title.os-footer-open .add {
    display: none !important;
  }

  #footer .links .title.os-footer-open .remove,
  #footer .block-contact .title.os-footer-open .remove {
    display: inline-block !important;
  }

  #footer .links ul,
  #footer .account-list,
  #footer #contact-infos {
    margin: 0 !important;
    padding: 10px 0 14px !important;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(214, 162, 48, 0.18) !important;
    box-shadow: none !important;
  }

  #footer .links ul.collapse,
  #footer .account-list.collapse,
  #footer #contact-infos.collapse {
    display: none !important;
  }

  #footer .links ul.os-footer-panel-open,
  #footer .account-list.os-footer-panel-open,
  #footer #contact-infos.os-footer-panel-open {
    display: block !important;
  }

  #footer .links li,
  #footer .account-list li {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
  }

  #footer .links a,
  #footer .account-list a,
  #footer .block-contact a {
    display: block !important;
    padding: 8px 0 !important;
    color: #dcdcdc !important;
    background: transparent !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
  }

  #footer .links a:hover,
  #footer .account-list a:hover,
  #footer .block-contact a:hover {
    color: var(--os-gold-2) !important;
  }

  #footer #contact-infos {
    color: #dcdcdc !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
  }

  #footer .os-footer-copyright {
    margin-top: 18px !important;
    padding-top: 12px !important;
    color: #c8c8c8 !important;
    font-size: 13px !important;
    border-top: 1px solid rgba(214, 162, 48, 0.16) !important;
  }
}
/* OFFROAD SVET: footer arrow alignment final */
@media (max-width: 767.98px) {
  #footer .links .title,
  #footer .block-contact .title {
    position: relative !important;
    width: 100% !important;
    padding-right: 34px !important;
  }

  #footer .links .title .float-xs-right,
  #footer .block-contact .title .float-xs-right {
    position: absolute !important;
    right: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 24px !important;
    height: 24px !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  #footer .links .title .navbar-toggler,
  #footer .block-contact .title .navbar-toggler,
  #footer .links .title .collapse-icons,
  #footer .block-contact .title .collapse-icons {
    width: 24px !important;
    height: 24px !important;
  }
}
/* OFFROAD SVET: footer mobile visibility final */
@media (max-width: 767.98px) {
  #footer .footer-container,
  #footer .footer-container .container,
  #footer .footer-container .row,
  #footer .os-footer-links-row,
  #footer .footer-container .links,
  #footer .footer-container .links > .row,
  #footer .footer-container .wrapper,
  #footer .footer-container .block-contact {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  #footer .footer-container .title.hidden-md-up,
  #footer .footer-container .links .title,
  #footer .footer-container .block-contact .title {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  #footer .footer-container .links .title {
    margin-top: 0 !important;
  }

  #footer .footer-container .links,
  #footer .footer-container .wrapper,
  #footer .footer-container .block-contact {
    margin-bottom: 0 !important;
  }

  #footer .footer-container .links ul.collapse,
  #footer .footer-container .account-list.collapse,
  #footer .footer-container #contact-infos.collapse {
    display: none !important;
    height: auto !important;
    overflow: visible !important;
  }

  #footer .footer-container .links ul.os-footer-panel-open,
  #footer .footer-container .account-list.os-footer-panel-open,
  #footer .footer-container #contact-infos.os-footer-panel-open {
    display: block !important;
  }

  #footer .footer-container .links + .links,
  #footer .footer-container .wrapper + .wrapper,
  #footer .footer-container .block-contact {
    margin-top: 0 !important;
  }
}
/* OFFROAD SVET: footer mobile open panel clean */
@media (max-width: 767.98px) {
  #footer .footer-container .links ul,
  #footer .footer-container .account-list,
  #footer .footer-container #contact-infos {
    padding: 12px 0 18px !important;
    background: transparent !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-top: 0 !important;
    border-bottom: 1px solid rgba(214, 162, 48, 0.18) !important;
    box-shadow: none !important;
  }

  #footer .footer-container .links ul li,
  #footer .footer-container .account-list li {
    border: 0 !important;
    background: transparent !important;
  }

  #footer .footer-container .links a,
  #footer .footer-container .account-list a {
    padding: 5px 0 !important;
    background: transparent !important;
    border: 0 !important;
    color: #eeeeee !important;
    font-weight: 700 !important;
    box-shadow: none !important;
  }

  #footer .footer-container .links a:hover,
  #footer .footer-container .account-list a:hover {
    background: transparent !important;
    color: var(--os-gold-2) !important;
  }
}
/* OFFROAD SVET: category header vertical alignment */
@media (min-width: 768px) {
  #category .os-category-header--simple {
    margin-top: 24px !important;
  }
}

@media (max-width: 767.98px) {
  #category .os-category-header--simple {
    margin-top: 0 !important;
  }
}
/* OFFROAD SVET: balanced category and header gutters */
@media (min-width: 768px) {
  #category #wrapper > .container {
    width: 100% !important;
    max-width: var(--os-container) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: var(--os-side-space) !important;
    padding-right: var(--os-side-space) !important;
    box-sizing: border-box !important;
  }

  #category #wrapper > .container > .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #category #left-column {
    padding-left: 0 !important;
    padding-right: 15px !important;
  }

  #category #content-wrapper {
    padding-left: 15px !important;
    padding-right: 0 !important;
  }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
  #header .header-nav .container,
  #header .header-top .container {
    padding-left: var(--os-side-space) !important;
    padding-right: var(--os-side-space) !important;
  }

  #header .header-nav .right-nav {
    padding-right: 0 !important;
  }

  #_desktop_cart .blockcart {
    margin-right: 0 !important;
  }
}

/* OFFROAD SVET: narrow header topbar normal scroll final */
@media (max-width: 1100px) {
  #header {
    position: relative !important;
  }

  #header .header-nav,
  #header .header-top {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
  }

  #header .header-nav .right-nav > .user-info.os-header-account {
    position: absolute !important;
    top: 0 !important;
    right: calc(clamp(18px, 3vw, 34px) + 52px) !important;
    width: auto !important;
    height: var(--os-topbar-height) !important;
    min-height: var(--os-topbar-height) !important;
    max-height: var(--os-topbar-height) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    z-index: 220 !important;
  }

  #header .header-nav .right-nav > .user-info.os-header-account > a {
    height: var(--os-topbar-height) !important;
    min-height: var(--os-topbar-height) !important;
    max-height: var(--os-topbar-height) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 8px !important;
    line-height: 1 !important;
  }

  #header #os_responsive_cart {
    position: absolute !important;
    top: calc(-1 * var(--os-topbar-height)) !important;
    right: clamp(18px, 3vw, 34px) !important;
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: var(--os-topbar-height) !important;
    min-height: var(--os-topbar-height) !important;
    max-height: var(--os-topbar-height) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    z-index: 221 !important;
  }
}

@media (max-width: 520px) {
  #header .header-nav .right-nav > .user-info.os-header-account {
    right: 58px !important;
  }

  #header .header-nav .right-nav > .user-info.os-header-account > a {
    padding-left: 6px !important;
    padding-right: 6px !important;
    font-size: 12px !important;
  }

  #header #os_responsive_cart {
    right: 12px !important;
    width: 40px !important;
    min-width: 40px !important;
    max-width: 40px !important;
  }
}

/* OFFROAD SVET: narrow header cart restored to topbar */
@media (max-width: 1100px) {
  #header #os_responsive_cart {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }

  #header .header-nav .hidden-md-up.mobile,
  #header .header-nav #_mobile_cart,
  #header .header-nav #_mobile_user_info {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: var(--os-topbar-height) !important;
    min-height: var(--os-topbar-height) !important;
    max-height: var(--os-topbar-height) !important;
    overflow: visible !important;
  }

  #header .header-nav .hidden-md-up.mobile {
    width: 100% !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 0 !important;
    padding-right: clamp(16px, 3vw, 28px) !important;
  }

  #header .header-nav #_mobile_cart,
  #header .header-nav #_mobile_user_info {
    position: static !important;
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }

  #header .header-nav #_mobile_user_info {
    order: 1 !important;
  }

  #header .header-nav #_mobile_cart {
    order: 2 !important;
  }

  #header .header-nav #_mobile_user_info .user-info,
  #header .header-nav #_mobile_user_info .os-header-account,
  #header .header-nav #_mobile_cart .blockcart,
  #header .header-nav #_mobile_cart .cart-preview {
    height: var(--os-topbar-height) !important;
    min-height: var(--os-topbar-height) !important;
    max-height: var(--os-topbar-height) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
  }

  #header .header-nav #_mobile_user_info a,
  #header .header-nav #_mobile_cart a,
  #header .header-nav #_mobile_cart .header,
  #header .header-nav #_mobile_cart .cart-preview > a {
    height: var(--os-topbar-height) !important;
    min-height: var(--os-topbar-height) !important;
    max-height: var(--os-topbar-height) !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 10px !important;
    line-height: 1 !important;
    color: var(--os-gold) !important;
    white-space: nowrap !important;
  }

  #header .header-nav .right-nav > .user-info.os-header-account {
    display: none !important;
    visibility: hidden !important;
  }
}

@media (max-width: 520px) {
  #header .header-nav .hidden-md-up.mobile {
    padding-right: 10px !important;
  }

  #header .header-nav #_mobile_user_info a,
  #header .header-nav #_mobile_cart a,
  #header .header-nav #_mobile_cart .header,
  #header .header-nav #_mobile_cart .cart-preview > a {
    padding-left: 7px !important;
    padding-right: 7px !important;
    font-size: 12px !important;
  }
}

/* OFFROAD SVET: desktop footer always expanded */
@media (min-width: 768px) {
  #footer .footer-container .links ul.collapse,
  #footer .footer-container .account-list.collapse,
  #footer .footer-container #contact-infos.collapse,
  #footer .footer-container .collapse:not(.navbar-collapse) {
    display: block !important;
    height: auto !important;
    visibility: visible !important;
    opacity: 1 !important;
    overflow: visible !important;
  }

  #footer .footer-container .title.hidden-md-up,
  #footer .footer-container .links .title .collapse-icons,
  #footer .footer-container .links .title .navbar-toggler,
  #footer .footer-container .block-contact .title .collapse-icons,
  #footer .footer-container .block-contact .title .navbar-toggler {
    display: none !important;
  }

  #footer .footer-container .hidden-sm-down,
  #footer .footer-container .block-contact-title.hidden-sm-down,
  #footer .footer-container .myaccount-title.hidden-sm-down {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  #footer .footer-container .row,
  #footer .os-footer-links-row {
    display: flex !important;
    align-items: flex-start !important;
  }
}
