/* ============================================================
   SABLONA17 — "Crimson Studio"
   Premium fashion/lifestyle theme
   Charcoal header · Crimson accents · Clean white content
   Fonts: Playfair Display (headings) + Lato (body)
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;600;700&family=Lato:wght@300;400;700;900&display=swap');

/* ── DESIGN TOKENS ── */
:root {
  --charcoal:      #1C1C2E;
  --charcoal-mid:  #252540;
  --crimson:       #C41E3A;
  --crimson-dark:  #A01830;
  --crimson-pale:  #FFF0F2;
  --gold:          #D4A843;
  --gold-light:    #F0D080;
  --white:         #FFFFFF;
  --off-white:     #F8F8F8;
  --light:         #F2F2F2;
  --border:        #E0E0E0;
  --text:          #1A1A1A;
  --text-muted:    #6B6B6B;
  --green:         #2E7D32;
  --red-badge:     #C41E3A;
}

/* ── GLOBAL TYPOGRAPHY ── */
body,
body *:not(.fa):not(.fas):not(.far):not(.fab):not(.fal):not([class*="fa-"]) {
  font-family: 'Lato', Arial, sans-serif !important;
}

/* Font Awesome ikony — nesmú mať Lato, musia mať svoju FA rodinu */
.fa, .fas, .far, .fab, .fal,
[class*="fa-"]::before,
[class*="fa-"]::after {
  font-family: "Font Awesome 6 Free", "Font Awesome 6 Brands", "Font Awesome 5 Free", sans-serif !important;
}

h1, h2, h3, h4, h5, h6,
.index-catalog-header,
#catalog-products-index h2,
.product-content-title a,
.product-third .product-content-title,
.product-first .product-content-title,
.product-fourth .product-content-title,
#index-catalog-header,
.big-startup-product-single-title {
  font-family: 'Playfair Display', Georgia, serif !important;
}

/* ── BODY / PAGE BG ── */
body {
  background-color: var(--off-white) !important;
}

#bg {
  background-color: var(--white) !important;
  background-image: none !important;
}

/* ── TOP HEADER STRIP ── */
#top-header-strip {
  background: var(--charcoal) !important;
  background-image: none !important;
  color: rgba(255,255,255,0.7) !important;
  font-size: 12px !important;
  font-family: 'Lato', sans-serif !important;
  letter-spacing: 0.04em !important;
}
#top-header-strip a {
  color: var(--gold) !important;
}

/* ── HEADER (nav inside = nav-con) ── */
#container-header,
.nav-con {
  background-color: #1C1C2E !important;
  background-image: none !important;
  border-bottom: 3px solid #C41E3A !important;
  box-shadow: 0 2px 16px rgba(0,0,0,0.35) !important;
  /* Transition riadi JavaScript — bez !important aby inline štýl vyhral */
  transition: transform 0.4s cubic-bezier(0.4,0,0.2,1),
              opacity 0.4s cubic-bezier(0.4,0,0.2,1);
}

/* Fix: style.min.css používa #container-header:not(.nav-con-sec) { background: initial !important }
   na non-homepage stránkach. Rovnaký selektor v neskorší webuni.css vyhráva kaskádu. */
#container-header:not(.nav-con-sec) {
  background-color: #1C1C2E !important;
  background-image: none !important;
}
#container-header:not(.nav-con-sec) #header-opacity {
  background-color: transparent !important;
  background-image: none !important;
}

/* ── HEADER HEIGHT ── */
#header-opacity {
  height: 54px !important;
  background-image: none !important;
  background-color: transparent !important;
}
#header {
  background: transparent !important;
  background-image: none !important;
  height: 54px !important;
  align-items: center !important;
}
#articles-menu {
  height: 54px !important;
}
.head-links {
  height: 54px !important;
}

/* ── LOGO / BRAND ── */
#brand a,
#brand span,
#brand {
  color: var(--white) !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 700 !important;
  font-size: 26px !important;
  letter-spacing: 0.04em !important;
}

/* ── NAVIGATION (inside header) ── */
#articles-menu,
#articles-menu ul {
  background: transparent !important;
  background-image: none !important;
}

#articles-menu > ul > li > a,
#articles-menu > ul > li > span {
  color: rgba(255,255,255,0.88) !important;
  font-family: 'Lato', sans-serif !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 0 14px !important;
  line-height: 54px !important;
  height: 54px !important;
  display: inline-flex !important;
  align-items: center !important;
  transition: color 0.2s !important;
}

#articles-menu > ul > li > a:hover,
#articles-menu > ul > li > a.active,
#articles-menu > ul > li.active > a {
  color: var(--gold) !important;
  text-decoration: none !important;
}

/* Dropdown */
#articles-menu ul ul,
#articles-menu .sub-menu {
  background: var(--charcoal-mid) !important;
  background-image: none !important;
  border-top: 2px solid var(--crimson) !important;
  border-radius: 0 0 6px 6px !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.4) !important;
}

#articles-menu ul ul a,
#articles-menu .sub-menu a {
  color: rgba(255,255,255,0.82) !important;
  font-size: 13px !important;
  padding: 9px 18px !important;
}

#articles-menu ul ul a:hover,
#articles-menu .sub-menu a:hover {
  color: var(--gold) !important;
  background: rgba(255,255,255,0.06) !important;
}

/* ── HEAD LINKS (cart icon, login, search icon) ── */
.head-links,
.head-links a,
.head-links i {
  color: var(--white) !important;
}

/* ─ Search icon button ─ */
.search-open {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  cursor: pointer !important;
  transition: border-color 0.2s, background 0.2s !important;
}
.search-open i {
  font-size: 14px !important;
  color: rgba(255,255,255,0.80) !important;
  transition: color 0.2s !important;
}
.search-open:hover {
  border-color: var(--crimson) !important;
  background: rgba(190,18,37,0.12) !important;
}
.search-open:hover i {
  color: var(--crimson) !important;
}

/* ─ Cart icon ─ */
.info-cart-small {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}
.info-cart-small > a {
  font-size: 12px !important;
  color: rgba(255,255,255,0.65) !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}
.info-cart-small .fas,
.info-cart-small .far {
  font-size: 20px !important;
  color: rgba(255,255,255,0.88) !important;
  transition: color 0.2s !important;
  position: relative !important;
}
.info-cart-small:hover .fas {
  color: var(--crimson) !important;
}

/* Cart item count badge */
.info-cart-small .cout {
  background: var(--crimson) !important;
  color: var(--white) !important;
  border-radius: 50% !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  min-width: 17px !important;
  height: 17px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  top: -9px !important;
  left: -10px !important;
  margin-right: -10px !important;
}

/* ─ Login / Registration links with icons ─ */
#head-login a {
  color: rgba(255,255,255,0.80) !important;
  transition: color 0.2s !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  font-size: 12px !important;
  letter-spacing: 0.04em !important;
}
#head-login a::before {
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 900 !important;
  font-style: normal !important;
  color: var(--gold) !important;
  transition: color 0.2s !important;
  line-height: 1 !important;
}
#head-login a[href*="login"]::before {
  content: "\f2bd" !important;
  font-size: 15px !important;
}
#head-login a[href*="registration"]::before {
  content: "\f234" !important;
  font-size: 14px !important;
}
#head-login a:hover {
  color: var(--white) !important;
}
#head-login a:hover::before {
  color: var(--crimson) !important;
}

/* ── SEARCH BAR ── */
.search-bar,
#search-form-container,
#search-input-container {
  background: var(--charcoal-mid) !important;
  border-top: 1px solid rgba(255,255,255,0.1) !important;
}

.search-bar input[type="text"],
#search-input {
  background: rgba(255,255,255,0.1) !important;
  border: 1px solid rgba(255,255,255,0.2) !important;
  color: var(--white) !important;
  border-radius: 4px !important;
}

.search-bar input[type="text"]::placeholder,
#search-input::placeholder {
  color: rgba(255,255,255,0.5) !important;
}

/* ── BREADCRUMB / NAVIGATION TOP ── */
#container-navigation-top {
  background: var(--light) !important;
  background-image: none !important;
  border-bottom: 1px solid var(--border) !important;
  padding-top: 60px !important;
}

.top-navigation,
.top-navigation a,
nav.breadcrumb a,
.breadcrumb a {
  color: var(--text-muted) !important;
  font-size: 12px !important;
}

.top-navigation a:hover,
.breadcrumb a:hover {
  color: var(--crimson) !important;
}

.navigationLine {
  border-color: var(--border) !important;
}

/* ── CONTENT AREA ── */
.content,
.container.site-color {
  background: var(--white) !important;
  background-image: none !important;
}

/* ── INDEX CATALOG HEADER ── */
#index-catalog-header,
.index-catalog-header {
  color: var(--charcoal) !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  letter-spacing: 0.01em !important;
  border-bottom: 2px solid var(--crimson) !important;
  padding-bottom: 10px !important;
  margin-bottom: 20px !important;
}

/* ── CATEGORY IMAGE GRID ── */
#img-catalog {
  background: transparent !important;
}

.img-catalog-block {
  border-radius: 8px !important;
  overflow: hidden !important;
  position: relative !important;
  z-index: 1 !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.08) !important;
  transition: box-shadow 0.25s, transform 0.25s, z-index 0s !important;
}

.img-catalog-block:hover {
  box-shadow: 0 8px 32px rgba(196,30,58,0.32) !important;
  transform: translateY(-3px) !important;
  z-index: 3 !important;
}

.img-catalog-image-link > span {
  background: var(--charcoal) !important;
  color: var(--white) !important;
  border-radius: 0 !important;
  font-family: 'Lato', sans-serif !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  /* Rovnaká výška pre všetky labely — aby dvojriadkový názov
     neurušil jednotnosť gridu */
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
  min-height: 130px !important;
  padding: 12px 16px !important;
  box-sizing: border-box !important;
}

.img-catalog-image-link > span > span:first-child {
  color: var(--white) !important;
  display: block !important;
  line-height: 1.3 !important;
}

.img-catalog-image-link > span > span:last-child {
  color: rgba(255,255,255,0.65) !important;
  font-size: 11px !important;
  display: block !important;
  margin-top: 4px !important;
  letter-spacing: 0.04em !important;
  text-transform: none !important;
  font-weight: 400 !important;
}

/* ── PRODUCT CARDS — product-third (actual class in sablona17) ── */
.product-third,
.product-block,
.product-first,
.product-fourth {
  background: var(--white) !important;
  background-image: none !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.07) !important;
  transition: box-shadow 0.25s, transform 0.25s, border-color 0.25s, z-index 0s !important;
  position: relative !important;
  z-index: 1 !important;
}

.product-third-border {
  border: 1px solid var(--border) !important;
  border-color: var(--border) !important;
}

.product-third:hover,
.product-block:hover,
.product-first:hover,
.product-fourth:hover {
  box-shadow: 0 8px 28px rgba(196,30,58,0.32) !important;
  transform: translateY(-3px) !important;
  border-color: var(--crimson) !important;
  z-index: 3 !important;
}

/* Product image area */
.product-catalog-insight {
  overflow: hidden !important;
  position: relative !important;
}

.product-catalog-insight-img img {
  transition: transform 0.4s ease !important;
}

.product-block:hover .product-catalog-insight-img img,
.product-first:hover .product-catalog-insight-img img {
  transform: scale(1.05) !important;
}

/* Hover overlay */
.product-catalog-insight-hover {
  background: rgba(28, 28, 46, 0.72) !important;
  backdrop-filter: blur(2px) !important;
}

.product-catalog-insight-button a,
.product-catalog-insight-button {
  background: var(--crimson) !important;
  background-image: none !important;
  color: var(--white) !important;
  border-radius: 6px !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  padding: 10px 24px !important;
  transition: background 0.2s !important;
}

.product-catalog-insight-button a:hover {
  background: var(--crimson-dark) !important;
  color: var(--white) !important;
}

/* Product title */
.product-content-title a,
.product-catalog-insight-title a,
.product-third .product-content-title a,
.product-third .product-content h4 a {
  color: var(--text) !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  transition: color 0.2s !important;
}

.product-content-title a:hover,
.product-catalog-insight-title a:hover {
  color: var(--crimson) !important;
  text-decoration: none !important;
}

/* Product price — sablona17 uses span.normal_price as the visible sale price */
.product-content .price,
.product-third .price,
.product-content .normal_price,
.product-third .product-content .normal_price,
span.normal_price {
  color: var(--crimson) !important;
  font-family: 'Lato', sans-serif !important;
  font-weight: 900 !important;
  font-size: 18px !important;
}

/* Old price (action_price = crossed-out original) */
.product-content p.action_price,
.product-third p.action_price,
p.action_price {
  color: var(--text-muted) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  text-decoration: line-through !important;
}

.product-content .old-price,
.product-third .old-price,
.old-price {
  color: var(--text-muted) !important;
  text-decoration: line-through !important;
}

/* Product bottom area */
.product-content,
.product-block-info,
.product-third .product-content {
  background: var(--white) !important;
  background-image: none !important;
  border-top: 1px solid var(--light) !important;
  padding: 12px 14px !important;
}

/* ── SPECIAL OFFER BOX ── */
#big-startup-products,
[id*="startup-product"],
[class*="startup-product"] {
  background: var(--crimson-pale) !important;
  background-image: none !important;
  border: 2px solid var(--crimson) !important;
  border-image: none !important;
  border-radius: 10px !important;
  box-shadow: 0 4px 20px rgba(196,30,58,0.12) !important;
}

#big-startup-products::before,
#big-startup-products::after {
  display: none !important;
}

.big-startup-product-single {
  background: var(--white) !important;
  background-image: none !important;
  border: 1px solid rgba(196,30,58,0.15) !important;
  border-radius: 8px !important;
  box-shadow: none !important;
}

.big-startup-product-single:hover {
  border-color: var(--crimson) !important;
  box-shadow: 0 4px 16px rgba(196,30,58,0.15) !important;
}

.big-startup-product-single-title a {
  color: var(--text) !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 600 !important;
}

.big-startup-product-single-title a:hover {
  color: var(--crimson) !important;
}

/* ── BADGES ── */
.container-product-actions > div.startup,
span.startup, div.startup {
  background: var(--charcoal) !important;
  background-image: none !important;
  animation: none !important;
  color: var(--white) !important;
  border-radius: 4px !important;
  font-family: 'Lato', sans-serif !important;
  font-weight: 700 !important;
  font-size: 10px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  padding: 3px 7px !important;
}

.container-product-actions > div.action,
span.action, div.action {
  background: var(--crimson) !important;
  background-image: none !important;
  animation: none !important;
  color: var(--white) !important;
  border-radius: 4px !important;
  font-family: 'Lato', sans-serif !important;
  font-weight: 700 !important;
  font-size: 10px !important;
  text-transform: uppercase !important;
  padding: 3px 7px !important;
}

.container-product-actions > div.clear,
span.clear, div.clear {
  background: var(--crimson) !important;
  background-image: none !important;
  animation: none !important;
  color: var(--white) !important;
  border-radius: 4px !important;
  font-family: 'Lato', sans-serif !important;
  font-weight: 700 !important;
  font-size: 10px !important;
  padding: 3px 7px !important;
}

.container-product-actions > div.top_product,
span.top_product, div.top_product {
  background: var(--gold) !important;
  background-image: none !important;
  animation: none !important;
  color: var(--charcoal) !important;
  border-radius: 4px !important;
  font-weight: 700 !important;
  font-size: 10px !important;
  padding: 3px 7px !important;
}

.container-product-actions > div.last_items,
span.last_items, div.last_items {
  background: var(--crimson) !important;
  background-image: none !important;
  animation: none !important;
  color: var(--white) !important;
  border-radius: 4px !important;
  font-weight: 700 !important;
  font-size: 10px !important;
  padding: 3px 7px !important;
}

.container-product-actions > div.hot_tip,
.container-product-actions > div.new,
.container-product-actions > div.sale,
.container-product-actions > div.sale_collection,
.container-product-actions > div.clearance_sale,
.container-product-actions > div.discount {
  background: var(--charcoal) !important;
  background-image: none !important;
  animation: none !important;
  color: var(--white) !important;
  border-radius: 4px !important;
  font-weight: 700 !important;
  font-size: 10px !important;
  padding: 3px 7px !important;
}

/* ── BUTTONS ── */
/* button-type-1 */
.button-type-1 {
  background: var(--charcoal) !important;
  background-image: none !important;
  border-radius: 6px !important;
  border: none !important;
  box-shadow: none !important;
  transition: background 0.2s !important;
  overflow: hidden !important;
}
.button-type-1:hover {
  background: var(--crimson) !important;
}
.button-type-1 a {
  color: var(--white) !important;
  font-family: 'Lato', sans-serif !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

/* button-type-3 (add to cart / primary CTA) */
.button-type-3 {
  background: var(--crimson) !important;
  background-image: none !important;
  border-radius: 6px !important;
  border: none !important;
  box-shadow: none !important;
  transition: background 0.2s !important;
}
.button-type-3:hover {
  background: var(--crimson-dark) !important;
}
.button-type-3 a,
.button-type-3 button {
  color: var(--white) !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
}

/* button-type-4 (secondary) */
.button-type-4 {
  background: var(--white) !important;
  background-image: none !important;
  border: 2px solid var(--charcoal) !important;
  border-radius: 6px !important;
  box-shadow: none !important;
  transition: background 0.2s, border-color 0.2s !important;
}
.button-type-4:hover {
  background: var(--charcoal) !important;
}
.button-type-4 a,
.button-type-4 button {
  color: var(--charcoal) !important;
  font-weight: 700 !important;
  font-size: 13px !important;
}
.button-type-4:hover a,
.button-type-4:hover button {
  color: var(--white) !important;
}

/* button-type-5 (gold/accent) */
.button-type-5 {
  background: var(--gold) !important;
  background-image: none !important;
  border-radius: 6px !important;
  border: none !important;
  transition: background 0.2s !important;
}
.button-type-5:hover {
  background: var(--gold-light) !important;
}
.button-type-5 a,
.button-type-5 button {
  color: var(--charcoal) !important;
  font-weight: 700 !important;
  font-size: 13px !important;
}

/* ── ADD TO CART BUTTON (sablona17 specific)
   style.min.css uses: .button-add-cart-button { background: none !important; border: 1px solid #000 }
   We need to override with crimson border + crimson text, hover = crimson fill
── */
.button-add-cart-button,
.product-third .product-content .button-add-cart-button,
[id^="button-add-cart"] {
  background: none !important;
  background-image: none !important;
  border: 2px solid var(--crimson) !important;
  border-radius: 6px !important;
  padding: 4px 14px !important;
  transition: background 0.2s, border-color 0.2s !important;
}
.button-add-cart-button:hover,
.product-third .product-content .button-add-cart-button:hover,
[id^="button-add-cart"]:hover {
  background: var(--crimson) !important;
  background-image: none !important;
  border-color: var(--crimson) !important;
  border-radius: 6px !important;
}
/* Input inside add-to-cart button */
.button-add-cart-button input,
.product-third .product-content .button-add-cart-button input,
[id^="button-add-cart"] input {
  background: none !important;
  background-image: none !important;
  color: var(--crimson) !important;
  font-family: 'Lato', sans-serif !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  padding: 0 !important;
  cursor: pointer !important;
}
.button-add-cart-button:hover input,
.product-third .product-content .button-add-cart-button:hover input {
  color: var(--white) !important;
}

/* ── NEWSLETTER ──
   style.min.css uses: #container-newsletter { background: url(bg-container-newsletter.jpg) }
   We override the background image and set charcoal + crimson top border
── */
#container-newsletter {
  background: var(--charcoal) !important;
  background-image: none !important;
  border-top: 4px solid var(--crimson) !important;
  height: auto !important;
  padding: 50px 20px !important;
}

#container-newsletter p,
#container-newsletter label,
#container-newsletter span {
  color: rgba(255,255,255,0.85) !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 15px !important;
  letter-spacing: 0.02em !important;
}

#container-newsletter input#email,
#container-newsletter input[type="email"],
#container-newsletter input[type="text"] {
  background: rgba(255,255,255,0.1) !important;
  border: 1px solid rgba(255,255,255,0.3) !important;
  color: var(--white) !important;
  border-radius: 4px 0 0 4px !important;
  height: 44px !important;
}

#container-newsletter input#email::placeholder {
  color: rgba(255,255,255,0.5) !important;
}

#button-addNewsletter,
[id*="addNewsletter"] {
  background: var(--crimson) !important;
  background-image: none !important;
  border: none !important;
  border-radius: 0 4px 4px 0 !important;
  color: var(--white) !important;
  font-family: 'Lato', sans-serif !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  padding: 0 22px !important;
  height: 44px !important;
  cursor: pointer !important;
}
#button-addNewsletter:hover,
[id*="addNewsletter"]:hover {
  background: var(--crimson-dark) !important;
}

/* ── FOOTER ── */
#container-footer {
  background: var(--charcoal) !important;
  background-image: none !important;
  border-top: 4px solid var(--crimson) !important;
}

#footer,
#container-footer * {
  background: transparent !important;
  background-image: none !important;
}

#container-footer .footerLine,
.footerLine {
  border-color: rgba(255,255,255,0.1) !important;
}

/* Footer group titles */
.icon-footer-group,
.group-title,
[class*="icon-footer-group"] h3,
[class*="icon-footer-group"] h4 {
  color: var(--white) !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  letter-spacing: 0.03em !important;
  border-bottom: 1px solid rgba(255,255,255,0.15) !important;
  padding-bottom: 8px !important;
  margin-bottom: 12px !important;
}

/* Footer links */
#footer a,
#container-footer a,
.group-link {
  color: rgba(255,255,255,0.65) !important;
  font-size: 13px !important;
  transition: color 0.2s !important;
}

#footer a:hover,
#container-footer a:hover,
.group-link:hover {
  color: var(--gold) !important;
  text-decoration: none !important;
}

/* ══════════════════════════════════════════════════════
   PRODUCT DETAIL — full modernization
   ══════════════════════════════════════════════════════ */

/* Wrapper */
#detail {
  background: var(--off-white) !important;
  background-image: none !important;
}

/* Reduce gap between gallery (image+links) and product-detail (price block).
   style.min.css sets: #detail #gallery { padding: 40px 20px }
   and #product-detail { margin-top: 40px; padding-top: 20px } → total ~120px gap.
   We reduce to ~50px total. */
#detail #gallery {
  padding-bottom: 16px !important;
}
#product-detail {
  margin-top: 16px !important;
  padding-top: 0 !important;
  margin-bottom: 10px !important;
  padding-bottom: 0 !important;
}
#detail hr.space {
  margin: 0 !important;
  padding: 0 !important;
}
/* ── Product description text ── */
#description {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-style: italic !important;
  font-size: 17px !important;
  line-height: 1.7 !important;
  color: var(--text-muted) !important;
  margin: 8px 0 22px !important;
  padding-left: 14px !important;
  border-left: 3px solid var(--border) !important;
}

/* Reduce gap after params table */
.param-product {
  margin-bottom: 4px !important;
}
#detail-social-network-buttons {
  margin-top: 2px !important;
  height: auto !important;
  min-height: 0 !important;
}
.delivery {
  margin-bottom: 4px !important;
}

/* ── Title ── */
#gallery h1,
#detail h1 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  color: var(--charcoal) !important;
  line-height: 1.25 !important;
  margin-bottom: 10px !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* ── Code + evaluation row ── */
#container-detail-code-and-evaluation {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  flex-wrap: wrap !important;
  margin-bottom: 10px !important;
}
#detail-code-product {
  font-size: 12px !important;
  color: #888 !important;
  background: rgba(0,0,0,0.05) !important;
  padding: 3px 10px !important;
  border-radius: 20px !important;
  display: inline-block !important;
  margin: 0 !important;
}

/* ── Discount & promo badges (generic) ── */
.percent-discount,
.catalog-percent-discount,
[class*="percent-discount"] {
  background-color: var(--crimson) !important;
  background-image: none !important;
  color: #fff !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  border-radius: 4px !important;
  padding: 4px 9px !important;
}

/* ── Info links (email, favorites, compare...) ── */
.info-links {
  border-top: 1px solid var(--border) !important;
  margin-top: 14px !important;
  padding-top: 10px !important;
}
.info-links ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px 16px !important;
}
.info-links ul li {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 13px !important;
}
.info-links ul li i,
.info-links ul li .fa,
.info-links ul li .fas {
  color: var(--crimson) !important;
  font-size: 13px !important;
  width: 16px !important;
  text-align: center !important;
}
.info-links ul li a {
  color: #555 !important;
  text-decoration: none !important;
  transition: color 0.2s !important;
}
.info-links ul li a:hover {
  color: var(--crimson) !important;
}

/* ── Product detail right column ── */
#product-detail {
  color: var(--charcoal) !important;
}

/* ── Price block ── */
#price-block {
  background: #fff !important;
  background-image: none !important;
  border: 1px solid var(--border) !important;
  border-radius: 10px !important;
  padding: 22px 24px !important;
  margin-bottom: 14px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
}

/* Old price */
#price-block .old-price,
.detail-old-and-actual-price .old-price,
.detail-old-and-actual-price .old_price {
  font-size: 15px !important;
  color: #aaa !important;
  text-decoration: line-through !important;
  font-weight: 400 !important;
}

/* Action / current price */
#price-block .price,
.detail-old-and-actual-price .price,
.detail-old-and-actual-price .action_price,
#product-detail .price {
  color: var(--crimson) !important;
  font-size: 30px !important;
  font-weight: 900 !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  line-height: 1.1 !important;
}

/* Savings label */
.save-price {
  margin-top: 4px !important;
  font-size: 13px !important;
  color: #666 !important;
}
.save-price .price-info {
  color: var(--crimson) !important;
  font-weight: 700 !important;
}
.save-price .percet {
  color: var(--crimson) !important;
  font-weight: 600 !important;
}

/* ── Quantity input + button alignment ── */
/* Make add-to-cart row a flexbox so input & button stay on same baseline */
.detail-add-to-cart-all {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  float: none !important;
}
.detail-add-to-cart-all .add-cart {
  flex-shrink: 0 !important;
}

/* Beat #product-detail .mini-imput-text { margin: 29px 0 0 10px } (spec 110) */
#product-detail .mini-imput-text,
.mini-imput-text,
input.mini-imput-text {
  margin: 0 !important;
  border: 1.5px solid var(--border) !important;
  border-radius: 6px !important;
  padding: 8px 12px !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: var(--charcoal) !important;
  background: #fff !important;
  background-image: none !important;
  width: 64px !important;
  text-align: center !important;
  transition: border-color 0.2s !important;
  height: auto !important;
  line-height: normal !important;
}
#product-detail .mini-imput-text:focus,
input.mini-imput-text:focus {
  border-color: var(--crimson) !important;
  outline: none !important;
}

/* Label "ks" beside input */
#product-detail .mini-imput-label,
.mini-imput-label {
  margin: 0 !important;
  align-self: center !important;
  font-size: 13px !important;
  color: #888 !important;
}

/* ── Add to cart button ── */
.add-cart,
.detail-add-to-cart-all .add-cart {
  display: inline-block !important;
}

/* Beat style.min.css rule: .detail-add-to-cart-all #button-add-cart-button { background: #000 !important } (spec 110) */
.detail-add-to-cart-all #button-add-cart-button,
.detail-add-to-cart-all .button-add-cart-button {
  background-color: var(--crimson) !important;
  background-image: none !important;
  border-radius: 7px !important;
  height: auto !important;
  box-shadow: 0 4px 14px rgba(196,30,58,0.30) !important;
  transition: background 0.2s, transform 0.15s, box-shadow 0.2s !important;
}
.detail-add-to-cart-all #button-add-cart-button:hover,
.detail-add-to-cart-all .button-add-cart-button:hover {
  background-color: #a31830 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(196,30,58,0.40) !important;
}

/* The actual input inside the wrapper */
#add-cart-button,
input#add-cart-button,
.detail-add-to-cart-all input[type="submit"] {
  background: transparent !important;
  background-image: none !important;
  color: #fff !important;
  font-family: 'Montserrat', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  border: none !important;
  padding: 16px 36px !important;
  cursor: pointer !important;
  line-height: normal !important;
  height: auto !important;
  width: 100% !important;
}

/* ── Delivery / storage section ── */
/* Clean minimal inline status — no box, just a pulsing dot */
.delivery > p {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 13px !important;
  color: var(--text-muted) !important;
  margin: 8px 0 !important;
  padding: 0 !important;
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
}

/* Hide old truck icon */
.delivery .icon-cart-delivery,
.delivery [class*="icon-cart-delivery"] {
  display: none !important;
}

/* Pulsing live-status dot */
.delivery > p::before {
  content: '' !important;
  display: inline-block !important;
  width: 8px !important;
  height: 8px !important;
  min-width: 8px !important;
  background: var(--green) !important;
  border-radius: 50% !important;
  animation: statusPulse 2.2s ease-in-out infinite !important;
}

@keyframes statusPulse {
  0%   { box-shadow: 0 0 0 0   rgba(46,125,50,0.55); }
  60%  { box-shadow: 0 0 0 7px rgba(46,125,50,0);    }
  100% { box-shadow: 0 0 0 0   rgba(46,125,50,0);    }
}

/* "skladom" — jednoducho zelené tučné slovo, žiadny odznak */
#delivery-info {
  color: var(--green) !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  background: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  display: inline !important;
}

/* "Doprava zadarmo" badge */
#detail-free-delivery-info {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: rgba(46,125,50,0.08) !important;
  border: 1px solid rgba(46,125,50,0.22) !important;
  color: #2e7d32 !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  padding: 6px 14px !important;
  border-radius: 20px !important;
  margin-top: 4px !important;
}

/* ── Color / variant selector ── */
.param-product-select .appurtenances-name,
.show-color-schemes .color-scheme-title,
.param-product-select-row-1 {
  font-size: 11px !important;
  font-weight: 700 !important;
  color: var(--text-muted) !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  margin-bottom: 6px !important;
  display: block !important;
}
.appurtenances-item,
.payoff-param-value,
.color-scheme-item,
.param-product-select-row-2 > div {
  border: 1.5px solid var(--border) !important;
  border-radius: 6px !important;
  padding: 6px 14px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--text) !important;
  cursor: pointer !important;
  transition: border-color 0.2s, color 0.2s, background 0.2s !important;
  display: inline-block !important;
  background: var(--white) !important;
  margin: 4px 4px 4px 0 !important;
}
.appurtenances-item:hover,
.payoff-param-value:hover,
.color-scheme-item:hover,
.param-product-select-row-2 > div:hover,
.appurtenances-item.selected,
.color-scheme-item.selected {
  border-color: var(--crimson) !important;
  color: var(--crimson) !important;
  background: var(--crimson-pale) !important;
}

/* ── Basic parameters table ── */
#basic-parameter table,
.basic-parameter table,
table.basic-parameter-table {
  width: 100% !important;
  border-collapse: collapse !important;
  font-size: 14px !important;
  margin-top: 12px !important;
  border-radius: 8px !important;
  overflow: hidden !important;
}
#basic-parameter tr:nth-child(even),
.basic-parameter tr:nth-child(even),
table.basic-parameter-table tr:nth-child(even) {
  background: rgba(0,0,0,0.03) !important;
}
#basic-parameter td,
.basic-parameter td,
table.basic-parameter-table td {
  padding: 9px 14px !important;
  border-bottom: 1px solid var(--border) !important;
  color: var(--charcoal) !important;
}
#basic-parameter td:first-child,
.basic-parameter td:first-child,
table.basic-parameter-table td:first-child {
  font-weight: 600 !important;
  color: #666 !important;
  width: 40% !important;
}

/* ── Section titles (Súvisiace / Posledné prezerané) ── */
.products-title-with-line {
  background: transparent !important;
  background-image: none !important;
  text-align: center !important;
  margin: 10px 0 20px !important;
  position: relative !important;
}
#related-product {
  margin-top: 10px !important;
}
.products-title-with-line::before {
  content: '' !important;
  display: block !important;
  height: 1px !important;
  background: var(--border) !important;
  position: absolute !important;
  top: 50% !important;
  left: 0 !important;
  right: 0 !important;
}
.products-title-with-line span {
  position: relative !important;
  background: var(--off-white) !important;
  padding: 0 20px !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: var(--charcoal) !important;
}

/* ── Lowest price guarantee link ── */
.detail-lowest-price-guarantee a {
  color: var(--gold) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 0.5px !important;
  text-decoration: none !important;
  border-bottom: 1px dotted var(--gold) !important;
}

/* ── Breadcrumb ── */
#breadcrumb,
.breadcrumb-nav {
  font-size: 12px !important;
  color: #999 !important;
  padding: 8px 0 !important;
}
#breadcrumb a,
.breadcrumb-nav a {
  color: #999 !important;
  text-decoration: none !important;
}
#breadcrumb a:hover,
.breadcrumb-nav a:hover {
  color: var(--crimson) !important;
}
#breadcrumb strong,
.breadcrumb-nav strong {
  color: var(--charcoal) !important;
  font-weight: 600 !important;
}

/* ── Product detail right column ── */
#product-detail h1,
.product-detail h1,
[class*="product-detail"] h1 {
  font-family: 'Playfair Display', Georgia, serif !important;
  color: var(--charcoal) !important;
  font-weight: 700 !important;
}

/* ── CART ── */
#cart-info,
.cart-info {
  background: var(--off-white) !important;
  background-image: none !important;
  border: 1px solid var(--border) !important;
  border-radius: 8px !important;
}

/* ── ARTICLE / BLOG CARDS ── */
#last-blog-entries-on-index .article-block,
.article-block {
  background: var(--white) !important;
  background-image: none !important;
  border: 1px solid var(--border) !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06) !important;
  transition: box-shadow 0.25s, transform 0.25s !important;
}

.article-block:hover {
  box-shadow: 0 6px 22px rgba(196,30,58,0.12) !important;
  transform: translateY(-2px) !important;
}

.article-block h2 a,
.article-block h3 a {
  color: var(--charcoal) !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 600 !important;
}

.article-block h2 a:hover,
.article-block h3 a:hover {
  color: var(--crimson) !important;
}

/* ── INFOARTICLES / BOTTOM ARTICLES ── */
#info-articles,
#info-block {
  background: var(--charcoal-mid) !important;
  background-image: none !important;
}

#info-articles *,
#info-block * {
  background: transparent !important;
  background-image: none !important;
}

#info-articles a,
#info-block a {
  color: rgba(255,255,255,0.7) !important;
}

#info-articles a:hover,
#info-block a:hover {
  color: var(--gold) !important;
}

/* ── FLASH MESSAGES ── */
#messages .error,
.message-error {
  background: var(--crimson-pale) !important;
  border-left: 4px solid var(--crimson) !important;
  color: var(--crimson-dark) !important;
  border-radius: 4px !important;
}

#messages .success,
.message-success {
  background: #F0FFF4 !important;
  border-left: 4px solid var(--green) !important;
  color: var(--green) !important;
  border-radius: 4px !important;
}

/* ── FORMS ── */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
textarea,
select {
  border: 1px solid var(--border) !important;
  border-radius: 4px !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  transition: border-color 0.2s !important;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
  border-color: var(--crimson) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(196,30,58,0.1) !important;
}

/* ── PAGINATION ── */
.pagination a,
.pager a {
  color: var(--charcoal) !important;
  border: 1px solid var(--border) !important;
  border-radius: 4px !important;
  transition: background 0.2s, color 0.2s !important;
}

.pagination a:hover,
.pager a:hover,
.pagination .active a,
.pager .active {
  background: var(--crimson) !important;
  color: var(--white) !important;
  border-color: var(--crimson) !important;
}

/* ── SCROLL TO TOP ── */
#scroll-to-top-button {
  background: var(--crimson) !important;
  background-image: none !important;
  border-radius: 50% !important;
  box-shadow: 0 4px 12px rgba(196,30,58,0.4) !important;
}

/* ── SOCIAL NETWORK ICONS ── */
#container-social-networks-icons {
  text-align: center !important;
  padding: 16px 0 !important;
  background: transparent !important;
}

#container-social-networks-icons a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 38px !important;
  height: 38px !important;
  background: var(--charcoal-mid) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  border-radius: 50% !important;
  margin: 0 5px !important;
  transition: background 0.2s, border-color 0.2s, transform 0.2s !important;
  text-decoration: none !important;
}

#container-social-networks-icons a:hover {
  background: var(--crimson) !important;
  border-color: var(--crimson) !important;
  transform: translateY(-2px) !important;
}

#container-social-networks-icons i,
#container-social-networks-icons a i {
  color: rgba(255,255,255,0.85) !important;
  font-size: 15px !important;
  background: transparent !important;
}

/* ── PERCENTAGE DISCOUNT BADGE ── */
.container-product-actions .percent,
.container-product-actions [class*="percent"],
span.percent, div.percent {
  background: #16a34a !important;
  background-image: none !important;
  animation: none !important;
  color: var(--white) !important;
  border-radius: 4px !important;
  font-family: 'Lato', sans-serif !important;
  font-weight: 700 !important;
  font-size: 10px !important;
  padding: 3px 7px !important;
}

/* ── FACEBOOK / NOVINKY SIDE BUTTONS ── */
#container-facebook-button,
#container-novinky-button,
.facebook-side-button,
.novinky-side-button {
  border-radius: 0 6px 6px 0 !important;
  overflow: hidden !important;
}

/* ── CATALOG FILTER BAR ── */
#top-category-panel {
  background: var(--light) !important;
  background-image: none !important;
  border: 1px solid var(--border) !important;
  border-radius: 6px !important;
  padding: 10px 16px !important;
  margin-bottom: 18px !important;
}

#top-category-panel select,
#SortCategory,
#CountCategory {
  border: 1px solid var(--border) !important;
  border-radius: 4px !important;
  background: var(--white) !important;
  color: var(--text) !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 13px !important;
  padding: 4px 8px !important;
}

#top-category-panel a,
#top-category-panel label {
  color: var(--text) !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 13px !important;
}

#top-category-panel a[class*="skladom"],
.only-in-stock-link {
  color: var(--crimson) !important;
}

/* Price range slider */
#top-category-panel .ui-slider,
#top-category-panel .price-slider {
  background: var(--border) !important;
}

#top-category-panel .ui-slider-handle {
  background: var(--crimson) !important;
  border-color: var(--crimson-dark) !important;
}

/* Catalog heading */
#catalog-products-index h1,
#catalog-products-index h2,
.catalog-title h1,
.catalog-title h2 {
  font-family: 'Playfair Display', Georgia, serif !important;
  color: var(--charcoal) !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  margin-bottom: 16px !important;
}

/* ── SEO BOX ── */
#seo-box,
.seo-box,
#seo-content {
  background: var(--off-white) !important;
  border: 1px solid var(--border) !important;
  border-radius: 8px !important;
  padding: 20px 24px !important;
  margin: 20px 0 !important;
}

#seo-box h1, #seo-box h2, #seo-box h3,
.seo-box h1, .seo-box h2, .seo-box h3 {
  color: var(--charcoal) !important;
  font-family: 'Playfair Display', Georgia, serif !important;
}

/* ── DIVIDER / SEPARATOR ── */
hr,
.separator,
.divider {
  border-color: var(--border) !important;
}

/* ── NOVINKY SLIDING PANEL ── */

/* Tab button — prepíšeme modrú na crimson, poziciovanie nechávame style.min.css */
#news-slide-icon {
  background: var(--crimson) !important;
  background-image: none !important;
  border-radius: 6px 0 0 6px !important;
  cursor: pointer !important;
  transition: background 0.2s !important;
}

#news-slide-icon:hover {
  background: var(--crimson-dark) !important;
}

/* Text v buttone — nemeníme transform/position z style.min.css, len farbu a font */
#news-slide-icon p {
  color: var(--white) !important;
  font-family: 'Lato', sans-serif !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  background: transparent !important;
}

/* Content panel */
#news-slide-content {
  background: var(--charcoal) !important;
  background-image: none !important;
  border-left: 3px solid var(--crimson) !important;
  padding: 0 !important;
  box-shadow: -4px 0 20px rgba(0,0,0,0.4) !important;
}

/* Each news item */
.news-slide-single {
  padding: 12px 16px !important;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  transition: background 0.2s !important;
}

.news-slide-single:last-child {
  border-bottom: none !important;
}

.news-slide-single:hover {
  background: rgba(255,255,255,0.05) !important;
}

/* Date label */
.news-slide-single > p {
  color: var(--gold) !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  margin: 0 0 4px 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

/* Article link */
.news-slide-single > a,
.news-slide-single a {
  color: rgba(255,255,255,0.88) !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
  transition: color 0.2s !important;
  display: block !important;
}

.news-slide-single > a:hover,
.news-slide-single a:hover {
  color: var(--crimson) !important;
  text-decoration: none !important;
}

/* ── POPUP / MODAL ── */
.popup-wrapper,
[id*="popup"] {
  border-radius: 12px !important;
  overflow: hidden !important;
}


/* ═══════════════════════════════════════════════════════════
   ADD-TO-CART SUCCESS PAGE
   ═══════════════════════════════════════════════════════════ */

/* ── Wrapper card ── */
#cart-add-product-success {
  max-width: 640px !important;
  margin: 48px auto 48px !important;
  padding: 44px 52px !important;
  background: var(--charcoal) !important;
  border-radius: 8px !important;
  border-left: 4px solid var(--crimson) !important;
  box-shadow: 0 12px 40px rgba(0,0,0,0.30) !important;
  text-align: center !important;
}

/* ── Icon — skryje starý sprite, nahradí FA ── */
.icon-success {
  background-image: none !important;
  background: transparent !important;
  width: auto !important;
  height: auto !important;
  margin: 0 auto 4px !important;
  display: block !important;
}
.icon-success::before {
  font-family: "Font Awesome 6 Free" !important;
  font-weight: 900 !important;
  content: "\f058" !important;
  font-size: 68px !important;
  color: var(--crimson) !important;
  display: block !important;
  line-height: 1 !important;
}

/* ── Nadpis ── */
#cart-add-product-success hr.space {
  border: none !important;
  margin: 10px 0 !important;
  height: 0 !important;
}
#cart-add-product-success-text .title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: var(--white) !important;
  letter-spacing: 0.02em !important;
  margin: 0 0 10px !important;
}

/* ── Popis ── */
#cart-add-product-success-text .text {
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  color: rgba(255,255,255,0.58) !important;
  line-height: 1.65 !important;
  margin: 0 !important;
}

/* ── Tlačidlá ── */
.button-type-back,
.button-type-next {
  display: inline-block !important;
  float: none !important;
  vertical-align: top !important;
  margin: 18px 8px 0 !important;
  border-radius: 4px !important;
  overflow: visible !important;
  height: auto !important;
  line-height: normal !important;
  transition: background 0.2s, border-color 0.2s !important;
}

/* Sekundárne — "Pokračovať v nákupe" */
.button-type-back {
  background: transparent !important;
  border: 2px solid rgba(255,255,255,0.30) !important;
}
.button-type-back a.buttons-text {
  display: block !important;
  padding: 11px 26px !important;
  color: rgba(255,255,255,0.75) !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}
.button-type-back:hover {
  border-color: rgba(255,255,255,0.70) !important;
  background: rgba(255,255,255,0.06) !important;
}
.button-type-back:hover a.buttons-text {
  color: var(--white) !important;
}

/* Primárne CTA — "Prejsť do košíka" */
.button-type-next {
  background: var(--crimson) !important;
  border: 2px solid var(--crimson) !important;
}
.button-type-next a.buttons-text {
  display: block !important;
  padding: 11px 26px !important;
  color: var(--white) !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}
.button-type-next:hover {
  background: var(--crimson-dark) !important;
  border-color: var(--crimson-dark) !important;
}

/* ── "Tipy na ďalší nákup" heading ── */
#tips-after-add-to-cart {
  padding-top: 16px !important;
}
#tips-after-add-to-cart .products-title-with-line {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: var(--charcoal) !important;
  text-align: center !important;
  margin-bottom: 28px !important;
  position: relative !important;
}
#tips-after-add-to-cart .products-title-with-line span {
  position: relative !important;
  padding: 0 20px !important;
  background: #fff !important;
  z-index: 1 !important;
}
#tips-after-add-to-cart .products-title-with-line::before {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: 0 !important;
  right: 0 !important;
  height: 2px !important;
  background: var(--crimson) !important;
  z-index: 0 !important;
}

/* ═══════════════════════════════════════════════════════════════
   LOGIN PAGE  (body.users-login)
   ═══════════════════════════════════════════════════════════════ */

/* ── Page background ── */
body.users-login {
  background: var(--off-white) !important;
}

/* ── Outer wrapper: full-width → centered card ── */
body.users-login .new-reg {
  max-width: 480px !important;
  margin: 0 auto 40px !important;
  background: var(--white) !important;
  border: 1px solid var(--border) !important;
  border-radius: 12px !important;
  box-shadow: 0 4px 28px rgba(0,0,0,0.07) !important;
  padding: 36px 40px 32px !important;
  width: auto !important;
  float: none !important;
}

/* ── Heading ── */
body.users-login h1.new-reg-info {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  color: var(--charcoal) !important;
  text-align: center !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  margin: 36px auto 20px !important;
  padding: 0 !important;
}

/* ── Info/GDPR block ── */
/* Note: element also has id="info-block" — need ID+class to beat #info-block !important rule */
body.users-login #info-block.info-block-registration,
body.users-login .info-block-registration {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  background: var(--off-white) !important;
  background-color: var(--off-white) !important;
  background-image: none !important;
  border: 1px solid var(--border) !important;
  border-left: 3px solid var(--crimson) !important;
  border-right: none !important;
  border-radius: 6px !important;
  color: var(--text-muted) !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
  text-align: left !important;
  word-wrap: break-word !important;
  overflow: hidden !important;
  padding: 12px 16px !important;
  margin: 0 0 10px 0 !important;
  box-shadow: none !important;
  float: none !important;
  position: static !important;
}
body.users-login #info-block.info-block-registration p,
body.users-login #info-block.info-block-registration *,
body.users-login .info-block-registration p {
  text-align: left !important;
  color: var(--text-muted) !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}
/* Hide the old icon span — red left border serves as visual indicator */
body.users-login #info-block span.info,
body.users-login .info-block-registration span.info {
  display: none !important;
}

/* ── Form container ── */
body.users-login #registration-form {
  margin: 0 !important;
  padding: 0 !important;
}
body.users-login .myform,
body.users-login fieldset#fieldset-users {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: none !important;
}
body.users-login fieldset#fieldset-users legend {
  display: none !important;
}
body.users-login .myform dl {
  margin: 0 !important;
  padding: 0 !important;
}
/* Collapse the DT outer label (Zend_Form group label) */
body.users-login .myform > dl > dt,
body.users-login .myform dt#users-label {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
}
/* Remove DD top gap */
body.users-login .myform > dl > dd,
body.users-login .myform dd#users-element {
  margin: 0 !important;
  padding: 0 !important;
}

/* ── Stack form rows vertically ── */
body.users-login .myform .row,
body.users-login .myform div[class^="row"] {
  display: block !important;
  width: 100% !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
}

/* ── Labels ── */
body.users-login .myform dt,
body.users-login .myform label {
  display: block !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  color: var(--text-muted) !important;
  margin-bottom: 6px !important;
}

/* ── Input wrappers ── */
body.users-login .myform dd,
body.users-login .myform .element {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
/* Override #fieldset-users .element { max-width: 188px } from style.min.css */
body.users-login #fieldset-users .element {
  width: 100% !important;
  max-width: none !important;
  display: block !important;
}
body.users-login #fieldset-users .element input {
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

/* ── Hide invisible labels (placeholders suffice) ── */
body.users-login fieldset#fieldset-users label {
  display: none !important;
}

/* ── Inputs ── */
body.users-login .myform input[type="text"],
body.users-login .myform input[type="password"],
body.users-login .myform input[type="email"],
body.users-login #user_email,
body.users-login #password {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
  height: 46px !important;
  padding: 0 16px !important;
  font-size: 14px !important;
  font-family: 'Lato', sans-serif !important;
  color: var(--charcoal) !important;
  background: #ffffff !important;
  border: 1.5px solid #ddd !important;
  border-radius: 8px !important;
  outline: none !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
  box-shadow: none !important;
  margin-bottom: 12px !important;
}

/* ── Autofill override (Chrome replaces bg with blue) ── */
body.users-login #user_email:-webkit-autofill,
body.users-login #user_email:-webkit-autofill:hover,
body.users-login #user_email:-webkit-autofill:focus,
body.users-login #password:-webkit-autofill,
body.users-login #password:-webkit-autofill:hover,
body.users-login #password:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 1000px #ffffff inset !important;
  box-shadow: 0 0 0 1000px #ffffff inset !important;
  -webkit-text-fill-color: var(--charcoal) !important;
  border: 1.5px solid #ddd !important;
  border-radius: 8px !important;
  transition: background-color 5000s ease-in-out 0s !important;
}
body.users-login .myform input[type="text"]:focus,
body.users-login .myform input[type="password"]:focus,
body.users-login .myform input[type="email"]:focus,
body.users-login #user_email:focus,
body.users-login #password:focus {
  border-color: var(--crimson) !important;
  box-shadow: 0 0 0 3px rgba(182,43,43,0.10) !important;
}

/* ── Divider ── */
body.users-login hr.space {
  margin: 4px 0 20px !important;
  border: none !important;
  border-top: 1px solid var(--border) !important;
}


/* ── Submit / login tlačidlo ── */
body.users-login .buttons,
body.users-login #button-login {
  display: block !important;
  width: 100% !important;
  margin: 4px 0 0 !important;
  float: none !important;
  clear: both !important;
  text-align: center !important;
}
body.users-login .buttons input[type="submit"],
body.users-login #button-login input[type="submit"],
body.users-login .buttons .button-type-3,
body.users-login .buttons a.buttons-text {
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 13px 24px !important;
  background: linear-gradient(135deg, var(--crimson) 0%, var(--crimson-dark) 100%) !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: 8px !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  cursor: pointer !important;
  transition: box-shadow 0.2s, transform 0.15s !important;
  height: auto !important;
  line-height: normal !important;
  text-decoration: none !important;
}
body.users-login .buttons input[type="submit"]:hover,
body.users-login #button-login input[type="submit"]:hover {
  box-shadow: 0 4px 14px rgba(182,43,43,0.40) !important;
  transform: translateY(-1px) !important;
}

/* ═══════════════════════════════════════════════════
   KOŠÍK — KROK 2 (body.cart-second)
   /cart/public_cart/second
   ═══════════════════════════════════════════════════ */

/* ── Wrapper formulára (prihlásený / bez registrácie) ── */
body.cart-second .no-reg-form {
  background: #fff !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 16px rgba(0,0,0,0.08) !important;
  padding: 32px 36px !important;
  margin-bottom: 24px !important;
}

/* ── Globálny reset inputov v kroku 2 ── */
body.cart-second input[type="text"],
body.cart-second input[type="email"],
body.cart-second input[type="password"],
body.cart-second input[type="tel"],
body.cart-second input[type="number"],
body.cart-second textarea,
body.cart-second select {
  width: 100% !important;
  box-sizing: border-box !important;
  border: 1.5px solid #dde1e8 !important;
  border-radius: 8px !important;
  padding: 11px 14px !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  color: #1c1c2e !important;
  background: #fafbfc !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
  outline: none !important;
  height: auto !important;
  line-height: normal !important;
}
body.cart-second input[type="text"]:focus,
body.cart-second input[type="email"]:focus,
body.cart-second input[type="password"]:focus,
body.cart-second input[type="tel"]:focus,
body.cart-second input[type="number"]:focus,
body.cart-second textarea:focus,
body.cart-second select:focus {
  border-color: #2a7a2a !important;
  background: #fff !important;
  box-shadow: 0 0 0 3px rgba(42,122,42,0.10) !important;
}

/* ── Labels ── */
body.cart-second label,
body.cart-second dt label {
  display: block !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #555 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  margin-bottom: 5px !important;
}

/* ── Riadky formulára (Zend float layout) ── */
body.cart-second div.row-medium-margin,
body.cart-second div.row-medium,
body.cart-second div.row-big,
body.cart-second div.row-small,
body.cart-second div.row-full {
  float: left !important;
  margin-bottom: 16px !important;
  padding-right: 12px !important;
  box-sizing: border-box !important;
}
body.cart-second div.row-medium-margin { width: 50% !important; }
body.cart-second div.row-medium        { width: 50% !important; }
body.cart-second div.row-big           { width: 66.6% !important; }
body.cart-second div.row-small         { width: 33.3% !important; }
body.cart-second div.row-full          { width: 100% !important; padding-right: 0 !important; }

/* ── Oddiel "Dodacia adresa" ── */
body.cart-second .no-reg-info {
  background: rgba(42,122,42,0.05) !important;
  border: 1px solid rgba(42,122,42,0.18) !important;
  border-left: 4px solid #2a7a2a !important;
  border-radius: 8px !important;
  padding: 14px 18px !important;
  margin: 8px 0 20px !important;
  clear: both !important;
}
body.cart-second .no-reg-info p,
body.cart-second .no-reg-info label {
  font-family: 'Lato', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #1a6e1a !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  margin: 0 !important;
}

/* ── Checkbox ── */
body.cart-second input[type="checkbox"] {
  width: auto !important;
  height: auto !important;
  margin-right: 8px !important;
  accent-color: #2a7a2a !important;
}

/* ── Chybové hlášky ── */
body.cart-second ul.errors li,
body.cart-second .errors li {
  font-size: 11px !important;
  color: #c8192e !important;
  font-weight: 600 !important;
  list-style: none !important;
  margin: 4px 0 0 !important;
  padding: 0 !important;
}

/* ── Submit tlačidlá (prihlásený používateľ / formulár) ── */
body.cart-second .buttons {
  display: flex !important;
  gap: 12px !important;
  align-items: center !important;
  clear: both !important;
  padding-top: 8px !important;
  flex-wrap: wrap !important;
}
body.cart-second .buttons input[type="submit"],
body.cart-second .buttons button[type="submit"] {
  background: linear-gradient(135deg, #c8192e 0%, #a01525 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 13px 32px !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  cursor: pointer !important;
  transition: box-shadow 0.2s, transform 0.15s !important;
  height: auto !important;
  line-height: normal !important;
  width: auto !important;
  float: none !important;
}
body.cart-second .buttons input[type="submit"]:hover,
body.cart-second .buttons button[type="submit"]:hover {
  box-shadow: 0 4px 14px rgba(192,25,46,0.40) !important;
  transform: translateY(-1px) !important;
}

/* ── Blok prihlásenia (neprihlásený) ── */
body.cart-second #login-cart-block {
  background: #f8f9fb !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.07) !important;
  padding: 28px 32px !important;
  margin-bottom: 20px !important;
}
body.cart-second #login-cart-block p.title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #1c1c2e !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
}
body.cart-second #login-cart-block .info {
  margin-top: 16px !important;
  font-size: 13px !important;
  color: #666 !important;
}
body.cart-second #login-cart-block .info a {
  color: #2a7a2a !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
body.cart-second #login-cart-block .info a:hover {
  text-decoration: underline !important;
}

/* ── Blok nákup bez registrácie ── */
body.cart-second #registration-cart-block {
  background: #f8f9fb !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.07) !important;
  padding: 28px 32px !important;
  margin-bottom: 20px !important;
}
body.cart-second #registration-cart-block p.title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #1c1c2e !important;
  margin: 0 0 20px !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
}
body.cart-second #registration-cart-block form {
  display: flex !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
}

/* Tlačidlá "Súkromná osoba" / "Nákup pre firmy" */
body.cart-second #registration-cart-block .button-type-next {
  background: #fff !important;
  border: 2px solid #dde1e8 !important;
  border-radius: 8px !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.07) !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
  height: auto !important;
  margin: 0 !important;
}
body.cart-second #registration-cart-block .button-type-next:hover {
  border-color: #2a7a2a !important;
  box-shadow: 0 3px 10px rgba(42,122,42,0.15) !important;
  background: #fff !important;
}
body.cart-second #registration-cart-block .button-type-next a.buttons-text {
  color: #1c1c2e !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  padding: 13px 28px !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  display: block !important;
  text-decoration: none !important;
}
body.cart-second #registration-cart-block .button-type-next:hover a.buttons-text {
  color: #2a7a2a !important;
}

body.cart-second #results {
  display: none !important;
}

/* ═══════════════════════════════════════════════════════════════
   KOŠÍK — SPOLOČNÉ ŠTÝLY + KROK 1 (body.cart-first)
   ═══════════════════════════════════════════════════════════════ */

body.cart-first .content,
body.cart-second .content,
body.cart-third .content {
  max-width: none !important;
  padding: 0 24px 40px !important;
  box-sizing: border-box !important;
}

/* Zrušenie float — oba .cart-steps bloky idú cez plnú šírku */
body.cart-first form > .cart-steps {
  float: none !important;
  display: block !important;
  width: 100% !important;
  clear: both !important;
  box-sizing: border-box !important;
}

/* Span badge -5% — rovnaká šírka ako coupon-pct-badge (90px) */
body.cart-first table#cart-info-table tr.normal:has(td p a[href="#"]) td.price-all .discount-pct-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(135deg, #1a6e1a 0%, #2a9e2a 100%) !important;
  color: #fff !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0.5px !important;
  border-radius: 50px !important;
  padding: 7px 16px !important;
  white-space: nowrap !important;
  box-shadow: 0 3px 10px rgba(34,139,34,0.40) !important;
  width: 90px !important;
  min-width: 90px !important;
  max-width: 90px !important;
  box-sizing: border-box !important;
  text-align: center !important;
}

/* Spacer — flexibilný, vypĺňa zostatok priestoru pred badge */
body.cart-first .coupon-spacer {
  flex: 1 !important;
  min-width: 0 !important;
}
/* Badge -20% — zjednotený s -5% (rovnaký padding, auto šírka podľa obsahu) */
body.cart-first .coupon-pct-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(135deg, #2a9e2a 0%, #1a6e1a 100%) !important;
  color: #fff !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0.5px !important;
  border-radius: 50px !important;
  padding: 7px 24px !important;
  white-space: nowrap !important;
  box-shadow: 0 3px 10px rgba(34,139,34,0.40) !important;
  flex-shrink: 0 !important;
  box-sizing: border-box !important;
  text-align: center !important;
}

body.cart-first .coupons-text-long {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  background: rgba(34,139,34,0.05) !important;
  border: 1px solid rgba(34,139,34,0.20) !important;
  border-left: 4px solid #2a7a2a !important;
  border-radius: 8px !important;
  padding: 12px 16px !important;
  margin: 4px 0 !important;
  box-sizing: border-box !important;
}
body.cart-first .coupons-text-long > p {
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #1a6e1a !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  flex: 1 !important;
}
/* Zelený kruh s nožnicami ✂ — reverzný gradient oproti % kruhu zľavy */
body.cart-first .coupons-text-long > p::before {
  content: '✂' !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  background: linear-gradient(135deg, #2da82d 0%, #1e7a1e 100%) !important;
  color: #fff !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  border-radius: 50% !important;
  box-shadow: 0 3px 10px rgba(34,139,34,0.38) !important;
  letter-spacing: 0 !important;
  margin-left: 40px !important;
  margin-right: 47px !important;
  flex-shrink: 0 !important;
}
/* Hlavný text kupónu — TD1 šírka (304px) = zarovnaný s textom zľavy */
body.cart-first .coupon-main-text {
  width: 304px !important;
  min-width: 304px !important;
  max-width: 304px !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #1a6e1a !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  text-align: left !important;
  flex-shrink: 0 !important;
}
/* Úspora — TD2 šírka (162px) = zarovnaná s -63.28€ */
body.cart-first .coupon-savings {
  width: 162px !important;
  min-width: 162px !important;
  max-width: 162px !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #1a6e1a !important;
  white-space: nowrap !important;
  text-align: right !important;
  flex-shrink: 0 !important;
  padding-right: 8px !important;
}
/* Spacer — TD3 šírka (233px) medzera pred badge */
body.cart-first .coupon-spacer {
  width: 233px !important;
  min-width: 233px !important;
  flex-shrink: 0 !important;
}
/* Badge -20% — zjednotený s -5%, reverzný zelený gradient */
body.cart-first .coupon-pct-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(135deg, #2a9e2a 0%, #1a6e1a 100%) !important;
  color: #fff !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0.5px !important;
  border-radius: 50px !important;
  padding: 7px 18px !important;
  white-space: nowrap !important;
  box-shadow: 0 3px 10px rgba(34,139,34,0.40) !important;
  flex-shrink: 0 !important;
  width: 171px !important;
  box-sizing: border-box !important;
  text-align: center !important;
}
/* X — kruhové tlačidlo na odobranie kupónu */
body.cart-first .coupons-text-long .button-type-1 {
  background: transparent !important;
  border: 2px solid rgba(34,139,34,0.30) !important;
  border-radius: 50% !important;
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: background 0.2s, border-color 0.2s !important;
  flex-shrink: 0 !important;
  box-shadow: none !important;
}
body.cart-first .coupons-text-long .button-type-1:hover {
  background: rgba(34,139,34,0.10) !important;
  border-color: #2a7a2a !important;
}
body.cart-first .coupons-text-long .button-type-1 a {
  display: flex !important;
  align-items: center !important;
  text-decoration: none !important;
}
body.cart-first .coupons-text-long .button-type-1 span.icon-type-remove {
  filter: brightness(0) saturate(100%) invert(30%) sepia(60%) saturate(600%) hue-rotate(90deg) !important;
  opacity: 0.85 !important;
}

/* Crimson kruh s nožnicami ✂ — zarovnaný s green % kruhom zľavy */
body.cart-first .coupons-text-long > p::before {
  content: '✂' !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  background: linear-gradient(135deg, var(--crimson) 0%, #e05555 100%) !important;
  color: #fff !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  border-radius: 50% !important;
  box-shadow: 0 3px 10px rgba(182,43,43,0.38) !important;
  letter-spacing: 0 !important;
  margin-left: 40px !important;
  margin-right: 47px !important;
  flex-shrink: 0 !important;
}
/* Hlavný text kupónu — TD1 šírka (304px) = zarovnaný s textom zľavy */
body.cart-first .coupon-main-text {
  width: 304px !important;
  min-width: 304px !important;
  max-width: 304px !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #8a1a1a !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  text-align: left !important;
  flex-shrink: 0 !important;
}
/* Úspora — TD2 šírka (162px) = zarovnaná s -63.28€ */
body.cart-first .coupon-savings {
  width: 162px !important;
  min-width: 162px !important;
  max-width: 162px !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #8a1a1a !important;
  white-space: nowrap !important;
  text-align: right !important;
  flex-shrink: 0 !important;
  padding-right: 8px !important;
}
/* Spacer — TD3 šírka (233px) medzera pred badge */
body.cart-first .coupon-spacer {
  width: 233px !important;
  min-width: 233px !important;
  flex-shrink: 0 !important;
}
/* Badge -20% — oválny štýl ako -5% zľavy, zarovnaný s TD4 */
body.cart-first .coupon-pct-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: linear-gradient(135deg, var(--crimson) 0%, #e05555 100%) !important;
  color: #fff !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: 0.5px !important;
  border-radius: 50px !important;
  padding: 7px 18px !important;
  white-space: nowrap !important;
  box-shadow: 0 3px 10px rgba(182,43,43,0.40) !important;
  flex-shrink: 0 !important;
  width: 171px !important;
  box-sizing: border-box !important;
}

/* X — kruhové tlačidlo na odobranie kupónu */
body.cart-first .coupons-text-long .button-type-1 {
  background: linear-gradient(135deg, #b02030 0%, #c8192e 100%) !important;
  border: none !important;
  border-radius: 50% !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  padding: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: transform 0.15s ease, box-shadow 0.15s ease !important;
  flex-shrink: 0 !important;
  box-shadow: 0 3px 10px rgba(192, 25, 46, 0.40) !important;
}
body.cart-first .coupons-text-long .button-type-1:hover {
  transform: scale(1.10) !important;
  box-shadow: 0 5px 16px rgba(192, 25, 46, 0.55) !important;
}
body.cart-first .coupons-text-long .button-type-1 a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  text-decoration: none !important;
}
/* Skry sprite ikonu, nahraď bielym × */
body.cart-first .coupons-text-long .button-type-1 span.icon-type-remove {
  display: none !important;
}
body.cart-first .coupons-text-long .button-type-1 a::after {
  content: '×' !important;
  color: #fff !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  display: block !important;
}

/* ---- DARČEKOVÁ ZĽAVA — .position-discount ---- */
/* TD padding vynulujeme rovnako silným selektorom ako globálne pravidlo */
body.cart-first table#cart-info-table td:has(.position-discount) {
  padding: 0 !important;
}

/* Box — rovnaký vizuál ako % a kupón riadok */
body.cart-first table#cart-info-table .position-discount {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  padding: 12px 16px !important;
  background: rgba(34,139,34,0.05) !important;
  border: 1px solid rgba(34,139,34,0.20) !important;
  border-left: 4px solid #2a7a2a !important;
  border-radius: 8px !important;
  margin: 8px 0 !important;
}

/* Skryjeme pôvodný sprite */
body.cart-first table#cart-info-table .icon-type-discount {
  display: none !important;
}

/* Zelený kruh s darček emoji — zarovnaný s % a nožnicami */
body.cart-first table#cart-info-table .position-discount::before {
  content: '🎁' !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #1e7a1e 0%, #2da82d 100%) !important;
  box-shadow: 0 3px 10px rgba(34,139,34,0.38) !important;
  font-size: 20px !important;
  margin-left: 40px !important;
  margin-right: 47px !important;
  flex-shrink: 0 !important;
}

/* Text */
body.cart-first table#cart-info-table .text-discount {
  color: #1a6e1a !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  margin: 0 !important;
}

body.cart-first #renderFreeDelivery .info-price.free-price-bg {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  background: rgba(34,139,34,0.08) !important;
  border: 1px solid rgba(34,139,34,0.25) !important;
  border-left: 4px solid #2a7a2a !important;
  border-radius: 8px !important;
  padding: 14px 20px !important;
  margin: 0 0 16px !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #1e6e1e !important;
}
/* style.min.css nastavuje .free-price-bg p { color: white } — prepíšeme */
body.cart-first #renderFreeDelivery .info-price.free-price-bg p {
  color: #1a6e1a !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  margin: 0 !important;
}

/* ---- CELKOVÁ SUMA — #fullPrice ---- */
/* style.min.css má: height:40px, float:left, width:60%/40% — všetko resetujeme */
body.cart-first #fullPrice {
  background: linear-gradient(135deg, #1C1C2E 0%, #252540 100%) !important;
  border-radius: 12px !important;
  padding: 22px 28px !important;
  margin: 0 0 20px !important;
  width: 100% !important;
  height: auto !important;
  box-sizing: border-box !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.25) !important;
  float: none !important;
  overflow: visible !important;
}

body.cart-first #fullPrice p {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  line-height: normal !important;
  overflow: hidden !important; /* clearfix pre float */
}

/* label "Celková suma" — reset float/width zo style.min.css */
body.cart-first #fullPrice p span.text {
  display: inline !important;
  float: none !important;
  width: auto !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: rgba(255,255,255,0.55) !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  background: transparent !important;
}

/* cena — reset float/width/textAlign zo style.min.css */
body.cart-first #fullPrice p span.price {
  display: inline !important;
  float: none !important;
  width: auto !important;
  text-align: right !important;
  font-size: 30px !important;
  font-weight: 800 !important;
  color: #ffffff !important;
  letter-spacing: -0.5px !important;
  background: transparent !important;
}


/* ── Krok 2: "Súkromná osoba" / "Nákup pre firmy" submit tlačidlá ── */
body.cart-second #registration-cart-block .button-type-next input[type="submit"],
body.cart-second #registration-cart-block .button-type-1 input[type="submit"] {
  color: #1c1c2e !important;
  background: transparent !important;
  border: none !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  width: 100% !important;
  padding: 13px 24px !important;
  height: auto !important;
  line-height: normal !important;
  display: block !important;
  text-align: center !important;
}
body.cart-second #registration-cart-block .button-type-next,
body.cart-second #registration-cart-block .button-type-1.button-type-next {
  background: #fff !important;
  border: 2px solid #dde1e8 !important;
  border-radius: 8px !important;
  box-shadow: 0 1px 4px rgba(0,0,0,0.07) !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
  margin-bottom: 12px !important;
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
}
body.cart-second #registration-cart-block .button-type-next:hover,
body.cart-second #registration-cart-block .button-type-1.button-type-next:hover {
  border-color: #2a7a2a !important;
  box-shadow: 0 3px 10px rgba(42,122,42,0.15) !important;
}
body.cart-second #registration-cart-block .button-type-next:hover input[type="submit"],
body.cart-second #registration-cart-block .button-type-1.button-type-next:hover input[type="submit"] {
  color: #2a7a2a !important;
}

/* ── Krok 2: Login form — Prihlásiť tlačidlo ── */
body.cart-second #login-cart-block .buttons input[type="submit"],
body.cart-second #login-cart-block input[type="submit"] {
  background: linear-gradient(135deg, #c8192e 0%, #a01525 100%) !important;
  color: #fff !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 13px 32px !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: box-shadow 0.2s, transform 0.15s !important;
  height: auto !important;
  line-height: normal !important;
  width: auto !important;
  display: inline-block !important;
}
body.cart-second #login-cart-block .buttons input[type="submit"]:hover,
body.cart-second #login-cart-block input[type="submit"]:hover {
  box-shadow: 0 4px 14px rgba(192,25,46,0.40) !important;
  transform: translateY(-1px) !important;
}

/* ── Krok 2: staré ikony (zámok) skryť ── */
body.cart-second #login-cart-block img[src*="lock"],
body.cart-second #login-cart-block .info img {
  display: none !important;
}

/* ── Krok 2: Info text pod login formulárom ── */
body.cart-second #login-cart-block div.info {
  margin-top: 20px !important;
  padding: 12px 16px !important;
  background: rgba(0,0,0,0.03) !important;
  border-radius: 6px !important;
  border-left: 3px solid #dde1e8 !important;
}
body.cart-second #login-cart-block div.info span.info {
  display: none !important;
}
body.cart-second #login-cart-block div.info p {
  font-family: 'Lato', sans-serif !important;
  font-size: 13px !important;
  color: #666 !important;
  margin: 0 !important;
}
body.cart-second #login-cart-block div.info a {
  color: #2a7a2a !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
body.cart-second #login-cart-block div.info a:hover {
  text-decoration: underline !important;
}


/* =======================================================
   CART STEP 3 — Potvrdenie objednavky
   ======================================================= */

body.cart-third #confirmation-order-data,
body.cart-third .confirmation-order-data {
  max-width: 860px !important;
  margin: 0 auto !important;
}

body.cart-third #corfimation-button,
body.cart-third #button-corfimation-button input[type="submit"] {
  color: #fff !important;
  background: transparent !important;
  border: none !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  padding: 0 !important;
  cursor: pointer !important;
}

body.cart-third #button-corfimation-button .button-type-1 {
  background: linear-gradient(135deg, #C41E3A 0%, #a01525 100%) !important;
  border: none !important;
  border-radius: 10px !important;
  box-shadow: 0 4px 18px rgba(196,30,58,0.30) !important;
  transition: box-shadow 0.2s, transform 0.15s !important;
  display: block !important;
  float: none !important;
  height: auto !important;
  padding: 14px 40px !important;
  max-width: 320px !important;
  margin: 20px auto !important;
}

body.cart-third #button-corfimation-button .button-type-1:hover {
  box-shadow: 0 6px 24px rgba(196,30,58,0.45) !important;
  transform: translateY(-2px) !important;
}


/* =======================================================
   PROFIL MENU — dropdown po kliknuti na avatar
   ======================================================= */

/* Avatar kruh */
ul#user_menu li.title .um-avatar,
ul#user_menu > li:first-child .um-avatar {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #C41E3A 0%, #a01525 100%) !important;
  color: #fff !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  cursor: pointer !important;
  user-select: none !important;
  border: 2px solid rgba(255,255,255,0.20) !important;
  transition: border-color 0.2s !important;
}

ul#user_menu li.title .um-avatar:hover,
ul#user_menu li.menu-open .um-avatar {
  border-color: rgba(196,30,58,0.6) !important;
}

/* Dropdown panel */
ul#user_menu ul.profile-menu-window {
  transform-origin: top right !important;
}

ul#user_menu ul.profile-menu-window {
  display: none !important;
  position: absolute !important;
  top: calc(100% + 12px) !important;
  right: 0 !important;
  width: 240px !important;
  background: #ffffff !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.16), 0 2px 8px rgba(0,0,0,0.08) !important;
  border: 1px solid rgba(0,0,0,0.06) !important;
  padding: 0 !important;
  list-style: none !important;
  overflow: hidden !important;
  z-index: 9999 !important;
}

ul#user_menu ul.profile-menu-window.um-open {
  display: block !important;
}

/* Header — meno + email */
ul#user_menu ul.profile-menu-window li.um-header {
  padding: 16px 16px 12px !important;
  background: #f8f8fb !important;
  border-bottom: 1px solid #ebebf0 !important;
}

ul#user_menu ul.profile-menu-window li.um-header .um-name {
  display: block !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #1a1a2e !important;
  margin-bottom: 2px !important;
}

ul#user_menu ul.profile-menu-window li.um-header .um-email {
  display: block !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 11px !important;
  color: #888 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Divider */
ul#user_menu ul.profile-menu-window li.um-divider {
  height: 1px !important;
  background: #ebebf0 !important;
  margin: 4px 0 !important;
  padding: 0 !important;
}

/* Menu items */
#head-login .um-item,
#head-login .profile-menu-window a {
  color: #2d2d2d !important;
  text-decoration: none !important;
}

ul#user_menu ul.profile-menu-window li.menu {
  list-style: none !important;
  padding: 0 !important;
}

.um-item {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 9px 16px !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #2d2d3a !important;
  transition: background 0.18s, color 0.18s !important;
  text-decoration: none !important;
  border-radius: 8px !important;
  margin: 2px 6px !important;
}

.um-item:hover {
  background: rgba(196,30,58,0.07) !important;
  color: #C41E3A !important;
}

/* Ikonka — zaoblený štvorček, zlatá varianta */
.um-item::before {
  font-family: FontAwesome !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  border-radius: 8px !important;
  background: #FDF3D7 !important;
  color: #B8860B !important;
  font-size: 13px !important;
  transition: background 0.18s, color 0.18s, transform 0.18s !important;
}

.um-item:hover::before {
  background: #D4A843 !important;
  color: #ffffff !important;
  transform: scale(1.08) !important;
}

/* Ikony — FA4 */
.um-item--login::before    { content: "\f084" !important; } /* key */
.um-item--profile::before  { content: "\f007" !important; } /* user */
.um-item--favorites::before{ content: "\f004" !important; } /* heart */
.um-item--discounts::before{ content: "\f02b" !important; } /* tag */
.um-item--orders::before   { content: "\f290" !important; } /* shopping-bag */
.um-item--logout::before   { content: "\f08b" !important; } /* sign-out */

.um-item--logout {
  color: #C41E3A !important;
  font-weight: 600 !important;
}
.um-item--logout::before {
  background: rgba(196,30,58,0.09) !important;
  color: #C41E3A !important;
}
.um-item--logout:hover {
  background: rgba(196,30,58,0.07) !important;
  color: #9e1128 !important;
}
.um-item--logout:hover::before {
  background: #C41E3A !important;
  color: #ffffff !important;
}


/* =======================================================
   MOJE OBJEDNAVKY — zoznam (orders.phtml)
   ======================================================= */

#user-order {
  max-width: 900px !important;
  margin: 32px auto 48px !important;
  padding: 0 20px !important;
}

#user-order::before {
  content: 'Moje objednavky' !important;
  display: block !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  font-style: italic !important;
  color: #1a1a2e !important;
  margin-bottom: 24px !important;
}

#user-order .table-public.table-classic {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.08) !important;
}

#user-order .table-public tr.title th {
  background: #1a1a2e !important;
  color: rgba(255,255,255,0.60) !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  padding: 14px 16px !important;
  border: none !important;
}

#user-order .table-public tr.title th.action {
  text-align: center !important;
}

#user-order .table-public tr.title th:first-child { border-radius: 12px 0 0 0 !important; }
#user-order .table-public tr.title th:last-child  { border-radius: 0 12px 0 0 !important; }

#user-order .table-public tbody tr {
  border-bottom: 1px solid #f0f0f5 !important;
  transition: background 0.15s !important;
}

#user-order .table-public tbody tr.tr-first {
  background: #fafafa !important;
}

#user-order .table-public tbody tr:hover {
  background: rgba(196,30,58,0.03) !important;
}

#user-order .table-public tbody td {
  padding: 14px 16px !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 13px !important;
  color: #333 !important;
  border: none !important;
  vertical-align: middle !important;
}

#user-order .table-public tbody td:nth-child(1) {
  font-weight: 700 !important;
  color: #1a1a2e !important;
  font-size: 14px !important;
  letter-spacing: 0.03em !important;
}

#user-order .table-public tbody td:nth-child(2) {
  color: #777 !important;
  font-size: 12px !important;
}

#user-order .table-public tbody td:nth-child(3) {
  color: #1e7a3a !important;
  font-weight: 600 !important;
}

#user-order .table-public tbody td:nth-child(3)::before {
  content: '\25CF' !important;
  color: #1e7a3a !important;
  font-size: 8px !important;
  margin-right: 6px !important;
  vertical-align: middle !important;
}

#user-order .table-public tbody td:nth-child(4) {
  color: #C41E3A !important;
  font-weight: 700 !important;
  font-size: 14px !important;
}

#user-order .table-public tbody td:last-child {
  text-align: center !important;
}

/* Akcie — ikony */
#user-order .update-a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  border-radius: 6px !important;
  background: rgba(26,26,46,0.06) !important;
  text-decoration: none !important;
  transition: background 0.15s !important;
}

#user-order .update-a::before {
  content: "\f05a" !important;
  font-family: FontAwesome !important;
  font-size: 14px !important;
  color: #1a1a2e !important;
}

#user-order .update-a:hover { background: rgba(196,30,58,0.10) !important; }
#user-order .update-a:hover::before { color: #C41E3A !important; }

#user-order .pdf-a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  border-radius: 6px !important;
  background: rgba(26,26,46,0.06) !important;
  text-decoration: none !important;
  transition: background 0.15s !important;
  margin-left: 6px !important;
}

#user-order .pdf-a::before {
  content: "\f02f" !important;
  font-family: FontAwesome !important;
  font-size: 14px !important;
  color: #1a1a2e !important;
}

#user-order .pdf-a:hover { background: rgba(196,30,58,0.10) !important; }
#user-order .pdf-a:hover::before { color: #C41E3A !important; }

#user-order .paginationControl {
  margin-top: 24px !important;
}


/* =======================================================
   DETAIL OBJEDNAVKY (update.phtml)
   ======================================================= */

.order-detail-title p {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  font-style: italic !important;
  color: #1a1a2e !important;
  margin: 24px 0 20px !important;
  padding: 0 !important;
}

.order-detail-cell-first,
.order-detail-cell-second {
  display: flex !important;
  align-items: center !important;
  padding: 14px 20px !important;
  border-bottom: 1px solid #f0f0f5 !important;
  max-width: 860px !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
}

.order-detail-cell-first { background: #fff !important; }
.order-detail-cell-second { background: #fafafa !important; }

.order-detail-cell-first > div,
.order-detail-cell-second > div {
  font-family: 'Lato', sans-serif !important;
  font-size: 13px !important;
  color: #333 !important;
}

.order-detail-cell-first > div:first-child,
.order-detail-cell-second > div:first-child {
  flex: 1 !important;
  font-weight: 600 !important;
  color: #666 !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
}

.order-detail-cell-first > div:nth-child(2),
.order-detail-cell-second > div:nth-child(2) {
  flex: 2 !important;
  font-weight: 600 !important;
  color: #1a1a2e !important;
}

.order-detail-cell-first > div:last-child,
.order-detail-cell-second > div:last-child {
  flex: 1 !important;
  text-align: right !important;
  font-weight: 700 !important;
  color: #C41E3A !important;
}

/* Nadpis sekcie (Objednavka obsahuje tieto produkty, adresy) */
.order-detail-cell-title {
  background: linear-gradient(135deg, #1a1a2e 0%, #12121f 100%) !important;
  border-radius: 10px 10px 0 0 !important;
  max-width: 860px !important;
  margin: 24px auto 0 !important;
}

html body .order-detail-cell-first.order-detail-cell-title,
html body .order-detail-cell-second.order-detail-cell-title {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  background: linear-gradient(135deg, #1a1a2e 0%, #12121f 100%) !important;
  padding: 12px 20px !important;
  gap: 0 !important;
}

html body .order-detail-cell-first.order-detail-cell-title p,
html body .order-detail-cell-second.order-detail-cell-title p {
  color: rgba(255,255,255,0.85) !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  flex: none !important;
  font-style: normal !important;
}

/* Celkova cena */
.total-order-price {
  max-width: 860px !important;
  margin: 0 auto !important;
  background: #f8f0f2 !important;
  border-top: 2px solid #C41E3A !important;
}

.total-order-price div:last-child p {
  font-size: 20px !important;
  font-weight: 800 !important;
  color: #C41E3A !important;
}

/* Adresne bunky — vertikalne (priame <p> deti) */
.order-detail-cell-first:has(> p),
.order-detail-cell-second:has(> p) {
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 2px !important;
  padding: 16px 20px !important;
}

.order-detail-cell-first:has(> p) p,
.order-detail-cell-second:has(> p) p {
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  color: #444 !important;
  margin: 1px 0 !important;
  padding: 0 !important;
  line-height: 1.5 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-weight: 400 !important;
  flex: none !important;
}

.order-detail-cell-first:has(> p) p:first-child,
.order-detail-cell-second:has(> p) p:first-child {
  font-weight: 700 !important;
  color: #1a1a2e !important;
  font-size: 15px !important;
}


/* =======================================================
   BUTTON SPAT NA OBJEDNAVKY
   ======================================================= */

.button-type-1:has(.width-150) {
  display: flex !important;
  justify-content: center !important;
  width: 100% !important;
  height: auto !important;
  overflow: visible !important;
  float: none !important;
  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  margin: 24px 0 16px !important;
}

.button-type-1:has(.width-150):hover {
  background: transparent !important;
}

.button-type-1:has(.width-150) a.buttons-text {
  display: inline-flex !important;
  align-items: center !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #C41E3A !important;
  text-decoration: none !important;
  padding: 11px 22px !important;
  line-height: 1 !important;
  border: 2px solid #C41E3A !important;
  border-radius: 8px !important;
  transition: background 0.2s, color 0.2s !important;
}

.button-type-1:has(.width-150) a.buttons-text::before {
  content: "\2190" !important;
  font-size: 15px !important;
  margin-right: 7px !important;
  line-height: 1 !important;
}

.button-type-1:has(.width-150) a.buttons-text:hover,
.button-type-1:has(.width-150):hover a.buttons-text {
  background: #C41E3A !important;
  color: #fff !important;
}

.button-type-1:has(.width-150):hover a.buttons-text::before {
  color: #fff !important;
}

.button-type-1:has(.width-150) span.icon-type-1 {
  display: none !important;
}


/* =======================================================
   ZMENA PRIHLASOVACICH UDAJOV — update-login
   ======================================================= */

p.new-reg-info-update-login {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  font-style: italic !important;
  color: #1a1a2e !important;
  text-align: center !important;
  margin: 36px auto 32px !important;
  padding: 0 !important;
}

#update-login-form {
  display: block !important;
  float: none !important;
  box-sizing: border-box !important;
  max-width: 520px !important;
  margin: 0 auto 48px !important;
  background: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 32px rgba(0,0,0,0.09) !important;
  padding: 36px 40px 32px !important;
  border: 1px solid #f0f0f0 !important;
}

#fieldset-updateLogin {
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

#fieldset-updateLogin legend {
  display: none !important;
}

#update-login-form .row {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  margin-bottom: 18px !important;
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  vertical-align: top !important;
  box-sizing: border-box !important;
}

#update-login-form .row label.left {
  display: block !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: #888 !important;
  margin-bottom: 6px !important;
  float: none !important;
  width: auto !important;
}

#update-login-form .element {
  width: 100% !important;
  float: none !important;
}

#update-login-form .element input[type="text"],
#update-login-form .element input[type="password"],
#update-login-form .element input[type="email"] {
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 12px 16px !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  color: #1a1a2e !important;
  background: #f8f8fb !important;
  border: 1.5px solid #e2e4ea !important;
  border-radius: 8px !important;
  outline: none !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
}

#update-login-form .element input:focus {
  border-color: #C41E3A !important;
  box-shadow: 0 0 0 3px rgba(196,30,58,0.10) !important;
  background: #fff !important;
}

/* Separator medzi starym a novym heslom */
#update-login-form .row:nth-child(3) {
  margin-top: 28px !important;
  padding-top: 24px !important;
  border-top: 1px solid #ebebf0 !important;
  position: relative !important;
}

#update-login-form .row:nth-child(3)::before {
  content: 'NOVE HESLO' !important;
  position: absolute !important;
  top: -11px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  background: #fff !important;
  padding: 0 12px !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  color: #aaa !important;
  white-space: nowrap !important;
}

/* Submit button wrapper */
#update-login-form .buttons {
  margin-top: 28px !important;
  float: none !important;
  width: 100% !important;
  text-align: center !important;
}

/* button-type-1 wrapper inside .buttons - override height:30px */
#update-login-form .buttons .button-type-1 {
  height: auto !important;
  display: inline-block !important;
  float: none !important;
  background: none !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

#update-login-form .buttons input[type="submit"] {
  width: auto !important;
  min-width: 220px !important;
  padding: 14px 40px !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #fff !important;
  background: linear-gradient(135deg, #C41E3A 0%, #a01528 100%) !important;
  border: none !important;
  border-radius: 8px !important;
  cursor: pointer !important;
  box-shadow: 0 4px 16px rgba(196,30,58,0.28) !important;
  transition: transform 0.15s, box-shadow 0.15s !important;
  height: auto !important;
  line-height: normal !important;
}

#update-login-form .buttons input[type="submit"]:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 22px rgba(196,30,58,0.40) !important;
}

#update-login-form .errors,
#update-login-form ul.errors {
  list-style: none !important;
  margin: 4px 0 0 !important;
  padding: 0 !important;
}

#update-login-form ul.errors li {
  font-family: 'Lato', sans-serif !important;
  font-size: 12px !important;
  color: #C41E3A !important;
  margin-top: 4px !important;
}

/* ============================================================
   COUNTDOWN — Odpočítavanie (Produkt dňa / Big Startup)
   ============================================================ */

/* ── Big Startup (homepage wide box) countdown ── */
.big-product-hours-left-for-actual-price-countdown {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  padding: 12px 0 !important;
  width: 100% !important;
  float: none !important;
  box-sizing: border-box !important;
}

.big-product-hours-left-for-actual-price-countdown span {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 64px !important;
  height: 64px !important;
  width: auto !important;
  padding: 0 10px !important;
  box-sizing: border-box !important;
  background: var(--charcoal) !important;
  border: 2px solid var(--crimson) !important;
  border-radius: 10px !important;
  color: var(--white) !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  letter-spacing: 0.02em !important;
  box-shadow: 0 3px 12px rgba(196,30,58,0.22) !important;
  transition: transform 0.15s, box-shadow 0.15s !important;
}

.big-product-hours-left-for-actual-price-countdown span:nth-child(n+2) {
  margin: 0 !important;
}

/* "Tick" — sekundový span pulzuje jemne */
.big-product-hours-left-for-actual-price-countdown span:last-child {
  border-color: var(--gold) !important;
}

/* ── Catalog product card countdown ── */
.catalog-hours-left-for-actual-price-countdown {
  width: 100% !important;
  float: none !important;
  text-align: center !important;
  box-sizing: border-box !important;
  padding: 4px 8px !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: var(--crimson) !important;
  background: var(--crimson-pale) !important;
  border-radius: 4px !important;
  letter-spacing: 0.03em !important;
}

/* ── Product detail page countdown ── */
#price-block .detail-hours-left-for-actual-price-countdown {
  width: 100% !important;
  float: none !important;
  padding: 8px 10px !important;
  box-sizing: border-box !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: var(--crimson) !important;
  background: var(--crimson-pale) !important;
  border-left: 3px solid var(--crimson) !important;
  border-radius: 4px !important;
  margin: 8px 0 !important;
}

/* ============================================================
   PRODUKT DŇA — ľavý panel (left-block)
   ============================================================ */

#product-of-day-title {
  margin-left: 0 !important;
  margin-bottom: 10px !important;
  padding: 8px 14px !important;
  background: var(--charcoal) !important;
  border-left: 4px solid var(--crimson) !important;
  border-radius: 0 6px 6px 0 !important;
}

#product-of-day-title p {
  color: var(--white) !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  margin: 0 !important;
}

.products-in-left-menu {
  margin-left: 0 !important;
  padding: 10px !important;
  background: var(--white) !important;
  border: 1px solid var(--border) !important;
  border-radius: 8px !important;
  box-shadow: 0 2px 10px rgba(0,0,0,0.06) !important;
}

.products-in-left-menu .product-third {
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Countdown v ľavom paneli (catalog-type) */
.products-in-left-menu .catalog-hours-left-for-actual-price-countdown {
  margin-top: 6px !important;
}

/* ── PRODUCT OF DAY SLIDE (slide z ľavej strany) ── */
#product-of-day-slide {
  background: var(--charcoal) !important;
  border-right: 4px solid var(--crimson) !important;
  box-shadow: 4px 0 24px rgba(0,0,0,0.3) !important;
}

#product-of-day-slide-icon p {
  font-family: 'Lato', sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--white) !important;
  background: var(--crimson) !important;
}

#product-of-day-slide-content a {
  color: var(--white) !important;
  font-family: 'Playfair Display', Georgia, serif !important;
}

#product-of-day-slide-content a:hover {
  color: var(--gold) !important;
}

.product-of-day-slide-delivery-and-price p {
  color: rgba(255,255,255,0.7) !important;
  font-size: 12px !important;
}

.product-of-day-slide-cart-submit-button {
  background: var(--crimson) !important;
  color: var(--white) !important;
  border: none !important;
  border-radius: 6px !important;
  font-family: 'Lato', sans-serif !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  padding: 9px 18px !important;
  cursor: pointer !important;
  transition: background 0.2s !important;
}

.product-of-day-slide-cart-submit-button:hover {
  background: var(--crimson-dark) !important;
}

/* Big Startup box — text & CTA ── */
#big-startup-products .big-startup-product-single > div:last-child > p:first-child {
  color: var(--text-muted) !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
}

#big-startup-products .big-startup-product-single > div:last-child > p:first-child span {
  color: var(--crimson) !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  display: block !important;
  margin-top: 2px !important;
}

#big-startup-products .big-startup-product-single > div:last-child > p:nth-child(2) {
  color: var(--text-muted) !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 12px !important;
  line-height: 1.5 !important;
}

#big-startup-products .big-startup-product-single > div:last-child > a {
  display: inline-block !important;
  margin-top: 12px !important;
  padding: 10px 24px !important;
  background: var(--crimson) !important;
  color: var(--white) !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  border-radius: 6px !important;
  transition: background 0.2s, transform 0.15s !important;
  text-decoration: none !important;
}

#big-startup-products .big-startup-product-single > div:last-child > a:hover {
  background: var(--crimson-dark) !important;
  transform: translateY(-2px) !important;
}

/* ============================================================
   COUNTDOWN — oprava selektorov (cdown-unit / cdown-sep)
   Skutočná štruktúra: span.cdown-unit > b.cdown-num + em
   ============================================================ */

/* Kontajner — reset na flex row */
.big-product-hours-left-for-actual-price-countdown {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
}

/* Oddelovač `:` — len text, žiadny box */
.big-product-hours-left-for-actual-price-countdown span.cdown-sep {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: auto !important;
  width: auto !important;
  height: auto !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--crimson) !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  padding: 0 2px !important;
  margin: 0 !important;
  flex-direction: row !important;
}

/* Bublina — len .cdown-unit */
.big-product-hours-left-for-actual-price-countdown span.cdown-unit {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 64px !important;
  width: 64px !important;
  height: 64px !important;
  padding: 0 6px !important;
  background: var(--charcoal) !important;
  border: 2px solid var(--crimson) !important;
  border-radius: 10px !important;
  box-shadow: 0 3px 12px rgba(196,30,58,0.22) !important;
}

/* Sekundy — zlatý rámeček */
.big-product-hours-left-for-actual-price-countdown span.cdown-seconds {
  border-color: var(--gold) !important;
}

/* Číslo v bubline */
.big-product-hours-left-for-actual-price-countdown span.cdown-unit b.cdown-num {
  display: block !important;
  color: var(--white) !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  line-height: 1.1 !important;
  font-style: normal !important;
}

/* Popis pod číslom (dní / hod / min / sek) */
.big-product-hours-left-for-actual-price-countdown span.cdown-unit em {
  display: block !important;
  color: rgba(255,255,255,0.60) !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  font-style: normal !important;
  line-height: 1 !important;
  margin-top: 2px !important;
}

/* Playfair pre čísla v countdown — vyššia specificita cez #big-startup-products */
#big-startup-products .cdown-unit b.cdown-num,
.big-startup-product-single .cdown-unit b.cdown-num {
  font-family: 'Playfair Display', Georgia, serif !important;
}

/* ============================================================
   PROFIL MENU — oprava dropdown (display conflict)
   Pôvodný JS: $(#user_menu).find("li.menu").toggle()
   → profile-menu-window musí byť viditeľný kontajner,
     li.menu položky sa toggle-ujú cez JS
   ============================================================ */

/* Zruš display:none na celom kontajneri — ten riadi JS cez li.menu */
ul#user_menu ul.profile-menu-window {
  display: block !important;
  position: absolute !important;
  top: calc(100% + 8px) !important;
  right: 0 !important;
  left: auto !important;
  z-index: 9999 !important;
  min-width: 220px !important;
  background: #fff !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 32px rgba(28,28,46,0.18) !important;
  border: 1px solid #ebebf0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  list-style: none !important;
}

/* Zruš um-open pravidlo — nepotrebujeme ho */
ul#user_menu ul.profile-menu-window.um-open {
  display: block !important;
}

/* Rodičovský user_menu musí mať position:relative pre absolute dropdown */
#head-login ul#user_menu,
ul#user_menu {
  position: relative !important;
}

/* li.menu — skryté pred kliknutím (toggle-uje JS) */
ul#user_menu ul.profile-menu-window li.menu {
  display: none;
  list-style: none !important;
}

/* ============================================================
   PROFIL MENU — finálna oprava (um-open toggle)
   JS v user-menu.phtml pridáva/odoberá triedu um-open
   ============================================================ */

/* Skrytý stav — bez !important aby JS mohol ovládať cez triedu */
ul#user_menu ul.profile-menu-window {
  display: none !important;
}

/* Otvorený stav */
ul#user_menu ul.profile-menu-window.um-open {
  display: block !important;
}

/* li.menu — vždy viditeľné keď je panel otvorený */
ul#user_menu ul.profile-menu-window li.menu {
  display: block !important;
}

/* ── Profil menu — pozicioning anchored na li.title (nie na celom ul) ── */
ul#user_menu li.title,
[id="user_menu"] li.title {
  position: relative !important;
}

[id="user_menu"] ul.profile-menu-window {
  top: calc(100% + 6px) !important;
  right: -8px !important;
  left: auto !important;
  min-width: 240px !important;
}

/* Profile menu — position fixed (JS nastaví top/right dynamicky) */
[id="user_menu"] ul.profile-menu-window.um-open {
  position: fixed !important;
  top: auto;
  /* JS prepíše top a right */
}

/* Prekonaj všetky predchádzajúce position pravidlá pre otvorený panel */
ul#user_menu ul.profile-menu-window.um-open,
[id="user_menu"] ul.profile-menu-window.um-open {
  position: fixed !important;
  /* top a right nastavi JS cez inline style — CSS top: nesmie mat !important */
}

/* =======================================================
   PROFIL MENU — portálovaný stav (ul.um-portaled)
   Keď je dropdown presunutý do body cez JS portal,
   nahradíme selektory "ul#user_menu ul.profile-menu-window"
   ======================================================= */

ul.profile-menu-window.um-portaled {
  width: 240px !important;
  background: #ffffff !important;
  border-radius: 12px !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.16), 0 2px 8px rgba(0,0,0,0.08) !important;
  border: 1px solid rgba(0,0,0,0.06) !important;
  padding: 0 !important;
  list-style: none !important;
  overflow: hidden !important;
  margin: 0 !important;
}

ul.profile-menu-window.um-portaled li {
  list-style: none !important;
}

ul.profile-menu-window.um-portaled li.menu {
  list-style: none !important;
  padding: 0 !important;
}

ul.profile-menu-window.um-portaled li.um-header {
  padding: 16px 16px 12px !important;
  background: #f8f8fb !important;
  border-bottom: 1px solid #ebebf0 !important;
}

ul.profile-menu-window.um-portaled li.um-header .um-name {
  display: block !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #1a1a2e !important;
  margin-bottom: 2px !important;
}

ul.profile-menu-window.um-portaled li.um-header .um-email {
  display: block !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 11px !important;
  color: #888 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

ul.profile-menu-window.um-portaled li.um-divider {
  height: 1px !important;
  background: #ebebf0 !important;
  margin: 4px 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* Portaled um-item dedí štýly z .um-item — doplníme len špecifiká */
ul.profile-menu-window.um-portaled .um-item {
  margin: 2px 6px !important;
  border-radius: 8px !important;
}

ul.profile-menu-window.um-portaled .um-item:hover {
  background: rgba(196,30,58,0.07) !important;
  color: #C41E3A !important;
}

ul.profile-menu-window.um-portaled .um-item--logout {
  color: #C41E3A !important;
  font-weight: 600 !important;
}

ul.profile-menu-window.um-portaled .um-item--logout:hover {
  background: rgba(196,30,58,0.07) !important;
  color: #9e1128 !important;
}

/* =======================================================
   UPDATE-LOGIN — ikony v input poliach
   ======================================================= */

/* Wrapper musí mať position:relative pre absolute ikonu */
#update-login-form .element {
  position: relative !important;
}

/* Základné nastavenie ikony (FontAwesome) */
/* top: 12px = input padding-top — ikona je vždy zarovnaná s textom */
/* aj keď .element je vyšší (chybové správy pod inputom) */
#update-login-form .element::before {
  font-family: FontAwesome !important;
  position: absolute !important;
  left: 14px !important;
  top: 12px !important;
  transform: none !important;
  font-size: 15px !important;
  color: #c0c4d0 !important;
  z-index: 2 !important;
  pointer-events: none !important;
  transition: color 0.2s !important;
  line-height: 1 !important;
}

/* Ikona sa zafarbí na crimson keď je input aktívny */
#update-login-form .element:focus-within::before {
  color: #C41E3A !important;
}

/* Priestor v inpute pre ikonu vľavo */
#update-login-form .element input[type="text"],
#update-login-form .element input[type="password"],
#update-login-form .element input[type="email"] {
  padding-left: 44px !important;
}

/* Email — fa-envelope */
#update-login-form .row:nth-child(1) .element::before {
  content: "\f0e0" !important;
}

/* Aktuálne heslo — fa-lock */
#update-login-form .row:nth-child(2) .element::before {
  content: "\f023" !important;
}

/* Nové heslo — fa-key */
#update-login-form .row:nth-child(3) .element::before {
  content: "\f084" !important;
}

/* Nové heslo znova — fa-check-circle */
#update-login-form .row:nth-child(4) .element::before {
  content: "\f058" !important;
}

/* =======================================================
   ŠPECIÁLNA PONUKA — Split-panel: biely obrázok + karmínový obsah
   ======================================================= */

/* Vonkajší wrapper */
#big-startup-products,
[id*="startup-product"],
[class*="startup-product"] {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Hlavná karta — biela základ, bez overflow clip na ::before */
.big-startup-product-single {
  background: #ffffff !important;
  border: 2px solid rgba(212,168,67,0.45) !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: 0 10px 50px rgba(0,0,0,0.12), 0 0 0 4px rgba(212,168,67,0.10) !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  min-height: 290px !important;
  position: relative !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease !important;
}

/* Hover — jemné zdvihnutie */
.big-startup-product-single:hover {
  transform: translateY(-4px) !important;
  border-color: rgba(212,168,67,0.75) !important;
  box-shadow: 0 20px 64px rgba(0,0,0,0.15), 0 0 0 4px rgba(212,168,67,0.18) !important;
}

/* Pseudo — nie je potrebný, pravá strana rieši dizajn */
.big-startup-product-single::before {
  display: none !important;
}

/* ── ĽAVÝ PANEL — čisto biely, obrázok produktu ── */
.big-startup-product-single > div:first-child {
  flex: 0 0 44% !important;
  max-width: 44% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 40px 32px !important;
  background: #ffffff !important;
  border-right: none !important;
  position: relative !important;
  z-index: 1 !important;
}

/* Jemný červený glow za obrázkom */
.big-startup-product-single > div:first-child::before {
  content: '' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 75% !important;
  height: 75% !important;
  background: radial-gradient(ellipse, rgba(196,30,58,0.07) 0%, transparent 70%) !important;
  pointer-events: none !important;
}

.big-startup-product-single > div:first-child a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
}

.big-startup-product-single > div:first-child img {
  max-width: 100% !important;
  max-height: 210px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
  filter: drop-shadow(0 8px 20px rgba(0,0,0,0.13)) !important;
  transition: transform 0.4s ease !important;
  position: relative !important;
  z-index: 1 !important;
}

.big-startup-product-single:hover > div:first-child img {
  transform: scale(1.07) rotate(-1deg) !important;
  filter: drop-shadow(0 14px 28px rgba(196,30,58,0.22)) !important;
}

/* ── PRAVÝ PANEL — hlboký karmínový gradient ── */
.big-startup-product-single > div:last-child {
  flex: 1 !important;
  padding: 36px 44px 36px 40px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  position: relative !important;
  z-index: 1 !important;
  background: linear-gradient(145deg, #C41E3A 0%, #8B0F23 60%, #6B0A1B 100%) !important;
  overflow: hidden !important;
}

/* Dekoratívny kruh — veľká faded guľa vpravo dole */
.big-startup-product-single > div:last-child::before {
  content: '' !important;
  position: absolute !important;
  bottom: -60px !important;
  right: -60px !important;
  width: 220px !important;
  height: 220px !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,0.06) !important;
  pointer-events: none !important;
}

/* Dekoratívny kruh — menší vľavo hore */
.big-startup-product-single > div:last-child::after {
  content: '' !important;
  position: absolute !important;
  top: -40px !important;
  left: -30px !important;
  width: 130px !important;
  height: 130px !important;
  border-radius: 50% !important;
  background: rgba(255,255,255,0.05) !important;
  pointer-events: none !important;
}

/* Label "ŠPECIÁLNA" */
#big-startup-products .big-startup-product-single > div:last-child > p:first-child {
  display: flex !important;
  flex-direction: column !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
  color: rgba(255,255,255,0.60) !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  line-height: 1.4 !important;
  position: relative !important;
  z-index: 2 !important;
}

/* "PONUKA" — zlatý nadpis Playfair na karmínovom */
#big-startup-products .big-startup-product-single > div:last-child > p:first-child span {
  color: #D4A843 !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 40px !important;
  font-weight: 700 !important;
  font-style: italic !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
  display: block !important;
  margin-top: 2px !important;
  line-height: 1.05 !important;
  text-shadow: 0 2px 12px rgba(0,0,0,0.25) !important;
}

/* Zlatá dekoratívna čiara */
#big-startup-products .big-startup-product-single > div:last-child > p:first-child span::after {
  content: '' !important;
  display: block !important;
  width: 44px !important;
  height: 2px !important;
  background: linear-gradient(90deg, #D4A843, transparent) !important;
  margin-top: 12px !important;
}

/* Popis */
#big-startup-products .big-startup-product-single > div:last-child > p:nth-child(2) {
  color: rgba(255,255,255,0.75) !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 13px !important;
  line-height: 1.65 !important;
  margin: 0 0 4px !important;
  position: relative !important;
  z-index: 2 !important;
}

/* hr.space */
#big-startup-products .big-startup-product-single > div:last-child > hr.space {
  border: none !important;
  height: 0 !important;
  margin: 8px 0 !important;
}

/* CTA button — biely, karmínový text */
#big-startup-products .big-startup-product-single > div:last-child > a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  align-self: flex-start !important;
  margin-top: 10px !important;
  padding: 13px 28px !important;
  background: #ffffff !important;
  color: #C41E3A !important;
  font-family: 'Lato', sans-serif !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.20) !important;
  transition: transform 0.2s, box-shadow 0.2s, background 0.2s, color 0.2s !important;
  position: relative !important;
  z-index: 2 !important;
}

#big-startup-products .big-startup-product-single > div:last-child > a::after {
  content: '\2192' !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  transition: transform 0.2s !important;
}

#big-startup-products .big-startup-product-single > div:last-child > a:hover {
  background: #D4A843 !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(0,0,0,0.25) !important;
}

#big-startup-products .big-startup-product-single > div:last-child > a:hover::after {
  transform: translateX(4px) !important;
}

/* Countdown — glassmorphism bubliny na karmínovom paneli */
#big-startup-products .big-startup-product-single .big-product-hours-left-for-actual-price-countdown {
  justify-content: center !important;
}

#big-startup-products .big-startup-product-single .cdown-unit {
  background: rgba(255,255,255,0.14) !important;
  border: 1px solid rgba(255,255,255,0.30) !important;
  border-radius: 12px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.15), inset 0 1px 0 rgba(255,255,255,0.20) !important;
  min-width: 62px !important;
  width: 62px !important;
  height: 62px !important;
  position: relative !important;
  z-index: 2 !important;
  transition: background 0.2s, border-color 0.2s !important;
}

#big-startup-products .big-startup-product-single .cdown-unit:hover {
  background: rgba(255,255,255,0.22) !important;
  border-color: rgba(212,168,67,0.60) !important;
}

#big-startup-products .big-startup-product-single .cdown-unit b.cdown-num {
  color: #ffffff !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 21px !important;
  font-weight: 700 !important;
  text-shadow: 0 1px 4px rgba(0,0,0,0.25) !important;
}

#big-startup-products .big-startup-product-single .cdown-unit em {
  color: rgba(255,255,255,0.70) !important;
  font-size: 9px !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  font-style: normal !important;
}

/* Sekundy — zlaté orámovanie */
#big-startup-products .big-startup-product-single .cdown-seconds {
  border-color: rgba(212,168,67,0.65) !important;
  background: rgba(212,168,67,0.12) !important;
}

#big-startup-products .big-startup-product-single .cdown-sep {
  color: rgba(255,255,255,0.45) !important;
  font-size: 20px !important;
  position: relative !important;
  z-index: 2 !important;
}
