/* ══════════════════════════════════════════════════════════════
   DESIGNATE — webuni.css  |  Fresh Modern Revitalizácia 2026
   Paleta: Charcoal #1C1C1A · Stone #8B7355 · Sand #C8B89A
           Cream #F5F0E8 · Warm-White #FAFAF8
   ══════════════════════════════════════════════════════════════ */

/* ── 0. GOOGLE FONTS ─────────────────────────────────────────── */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@500;600;700&family=Inter:wght@300;400;500;600&display=swap');
@import url('https://fonts.googleapis.com/icon?family=Material+Icons');

/* ── 1. CSS PREMENNÉ ─────────────────────────────────────────── */
:root {
  --charcoal:      #1C1C1A;
  --charcoal-l:    #2E2E2B;
  --stone:         #8B7355;
  --stone-dark:    #6D5A41;
  --stone-light:   #B09878;
  --sand:          #C8B89A;
  --sand-light:    #E2D8C8;
  --cream:         #F5F0E8;
  --cream-dark:    #EDE6D8;
  --warm-white:    #FAFAF8;
  --mist:          #EDEDEA;
  --border:        #DDD8D0;
  --text:          #1C1C1A;
  --text-muted:    #6B6560;
  --text-light:    #9A948E;
  --success:       #5A8A5A;
  --radius:        8px;
  --radius-sm:     5px;
  --radius-lg:     14px;
  --shadow:        0 2px 16px rgba(0,0,0,.06);
  --shadow-hover:  0 8px 32px rgba(0,0,0,.12);
  --transition:    all .22s ease;
}

/* ── 2. GLOBÁLNA TYPOGRAFIA ──────────────────────────────────── */
body, input, select, textarea, button {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  color: var(--text) !important;
}

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

a {
  transition: var(--transition) !important;
}

body {
  background: var(--warm-white) !important;
  margin: 0 !important;
}

/* ── 3. TOP LIŠTA (email + tel + login) ──────────────────────── */
#container-top-header-strip {
  background: var(--charcoal) !important;
  border-bottom: none !important;
}

#container-top-header-strip .container {
  background: var(--charcoal) !important;
}

#top-header-strip {
  background: var(--charcoal) !important;
}

#top-header-strip,
#top-header-strip *:not(.material-icons),
#container-top-header-strip .container,
#container-top-header-strip .container > *:not(.material-icons),
#container-top-header-strip .header-strip-text,
#container-top-header-strip .header-strip-text *:not(.material-icons) {
  color: rgba(255,255,255,.7) !important;
  font-size: 12px !important;
  font-family: 'Inter', sans-serif !important;
}

/* Material Icons in top strip — zachovaj icon font */
#container-top-header-strip .material-icons {
  font-family: 'Material Icons' !important;
  font-size: 16px !important;
  vertical-align: middle !important;
  color: rgba(255,255,255,.6) !important;
  margin-right: 4px !important;
}

#top-header-strip a,
#top-header-strip .text-1-phone span,
#top-header-strip .text-1-email a {
  color: rgba(255,255,255,.75) !important;
  text-decoration: none !important;
  font-size: 12px !important;
}

#top-header-strip a:hover {
  color: var(--sand) !important;
}

/* Login / Registration links v top stripe */
#top-header-login-links a {
  color: rgba(255,255,255,.75) !important;
  font-size: 12px !important;
}

#top-header-login-links a:hover {
  color: var(--sand-light) !important;
}

/* ── 4. HEADER (logo + vyhľadávanie + košík) ─────────────────── */
#container-header {
  background: var(--warm-white) !important;
  border-bottom: 1px solid var(--border) !important;
  box-shadow: 0 1px 6px rgba(0,0,0,.04) !important;
}

#header-opacity {
  background: var(--warm-white) !important;
}

#header {
  padding: 12px 0 !important;
  display: flex !important;
  align-items: center !important;
}

/* Vyhľadávanie */
#header-search-form,
.search-form,
#search {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
}

#header-search-form input[type="text"],
input[name="search"],
.search-input {
  border: 1.5px solid var(--border) !important;
  border-right: none !important;
  border-radius: var(--radius-sm) 0 0 var(--radius-sm) !important;
  background: var(--warm-white) !important;
  color: var(--text) !important;
  padding: 10px 16px !important;
  font-size: 14px !important;
  height: 42px !important;
  transition: border-color .2s !important;
  box-shadow: none !important;
  outline: none !important;
}

#header-search-form input[type="text"]:focus,
input[name="search"]:focus {
  border-color: var(--stone) !important;
}

#button-indexSearch,
#button-indexSearch input[type="submit"],
.search-submit,
#header-search-form input[type="submit"] {
  background: var(--stone) !important;
  background-image: none !important;
  color: var(--warm-white) !important;
  border: none !important;
  border-radius: 0 var(--radius-sm) var(--radius-sm) 0 !important;
  height: 42px !important;
  padding: 0 18px !important;
  font-size: 14px !important;
  cursor: pointer !important;
  transition: background .2s !important;
}

#button-indexSearch:hover,
#button-indexSearch input[type="submit"]:hover {
  background: var(--stone-dark) !important;
}

/* Košík v headeri */
#cart-button-small,
.cart-small,
#header .cart-icon {
  background: var(--cream) !important;
  border: 1.5px solid var(--border) !important;
  border-radius: var(--radius-sm) !important;
  color: var(--charcoal) !important;
  padding: 8px 14px !important;
  transition: var(--transition) !important;
}

#cart-button-small:hover {
  background: var(--cream-dark) !important;
  border-color: var(--sand) !important;
}

/* ── 5. NAVIGÁCIA — KATEGÓRIE (ľavý panel) ───────────────────── */
#container-articles-menu {
  background: var(--warm-white) !important;
  border-bottom: 1px solid var(--border) !important;
}

/* KATEGÓRIE heading block */
.category-call {
  background: var(--charcoal) !important;
  border-right: none !important;
}

.category-call-head,
.category-call > p:first-child {
  background: var(--charcoal) !important;
  color: var(--warm-white) !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  padding: 14px 20px !important;
  margin: 0 !important;
}

/* Zoznam kategórií */
.category-tree,
#buttonsLeft,
ul.category-tree {
  background: var(--warm-white) !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.category-tree li,
#buttonsLeft li,
ul.category-tree > li {
  list-style: none !important;
  border-bottom: 1px solid var(--mist) !important;
  margin: 0 !important;
  padding: 0 !important;
}

.category-tree li a,
#buttonsLeft li a,
ul.category-tree > li > a {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 12px 20px !important;
  color: var(--charcoal) !important;
  text-decoration: none !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: .01em !important;
  transition: background .18s, padding-left .18s, color .18s !important;
  background: var(--warm-white) !important;
}

.category-tree li a:hover,
#buttonsLeft li a:hover {
  background: var(--cream) !important;
  color: var(--stone) !important;
  padding-left: 26px !important;
}

.category-tree li a.active,
#buttonsLeft li a.category-active,
.category-tree li.active > a {
  background: var(--cream-dark) !important;
  color: var(--stone-dark) !important;
  border-left: 3px solid var(--stone) !important;
  font-weight: 600 !important;
}

/* Šípka pre subcategóriu */
.category-tree li a span.arrow,
.category-tree .category-tree-arrow {
  color: var(--text-light) !important;
  font-size: 10px !important;
}

/* ── 6. HLAVNÉ MENU (articles-menu vpravo) ───────────────────── */
#articles-menu,
#articles-menu-top {
  background: var(--warm-white) !important;
}

#articles-menu > ul > li,
#articles-menu-top > ul > li {
  height: auto !important;
  line-height: 1 !important;
}

#articles-menu > ul > li > a,
#articles-menu-top > ul > li > a {
  color: var(--charcoal) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  padding: 14px 14px !important;
  display: block !important;
  float: none !important;
  height: auto !important;
  line-height: 1 !important;
  transition: color .18s !important;
  position: relative !important;
}

#articles-menu > ul > li > a::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 14px !important;
  right: 14px !important;
  height: 2px !important;
  background: var(--stone) !important;
  transform: scaleX(0) !important;
  transition: transform .2s ease !important;
}

#articles-menu > ul > li > a:hover::after,
#articles-menu > ul > li.active > a::after {
  transform: scaleX(1) !important;
}

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

/* Submenu */
#articles-menu ul.submenu,
#articles-menu ul ul {
  background: var(--warm-white) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  box-shadow: var(--shadow-hover) !important;
  padding: 8px 0 !important;
  min-width: 200px !important;
  top: 100% !important;
  left: 0 !important;
  margin-top: 0 !important;
}

#articles-menu ul.submenu li a {
  color: var(--charcoal) !important;
  font-size: 13px !important;
  padding: 9px 18px !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-weight: 400 !important;
  float: none !important;
  display: block !important;
}

#articles-menu ul.submenu li a:hover {
  background: var(--cream) !important;
  color: var(--stone) !important;
}

/* ── 7. BREADCRUMB ───────────────────────────────────────────── */
.breadcrumbs, #breadcrumbs, .breadcrumb {
  font-size: 12px !important;
  color: var(--text-muted) !important;
  padding: 10px 0 6px !important;
}

.breadcrumbs a, #breadcrumbs a {
  color: var(--stone) !important;
  text-decoration: none !important;
}

.breadcrumbs a:hover {
  color: var(--stone-dark) !important;
  text-decoration: underline !important;
}

/* ── 8. PRODUKTOVÉ KARTY ─────────────────────────────────────── */
.product-first,
.product-second,
.product-third {
  background: var(--warm-white) !important;
  border-radius: var(--radius) !important;
  border: 1px solid var(--mist) !important;
  box-shadow: var(--shadow) !important;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s !important;
}

/* overflow: hidden only for non-slick product cards */
.product-first:not(.slick-slide),
.product-second:not(.slick-slide) {
  overflow: hidden !important;
}

.product-first:hover,
.product-second:hover,
.product-third:hover {
  transform: translateY(-4px) !important;
  box-shadow: var(--shadow-hover) !important;
  border-color: var(--sand) !important;
}

/* Produkt — obrázok */
.product-images,
.product-first .product-images,
.product-second .product-images {
  background: var(--cream) !important;
  overflow: hidden !important;
}

.product-images img {
  transition: transform .4s ease !important;
}

.product-first:hover .product-images img,
.product-second:hover .product-images img {
  transform: scale(1.04) !important;
}

/* Produkt — obsah */
.product-content {
  padding: 12px 14px 14px !important;
}

/* Produkt — názov */
.catalog-product-name a,
.product-name a,
.catalog-name a {
  color: var(--charcoal) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  line-height: 1.4 !important;
  transition: color .18s !important;
}

.catalog-product-name a:hover,
.product-name a:hover {
  color: var(--stone) !important;
}

/* Produkt — cena */
.catalog-product-price,
.price,
.product-price {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: var(--charcoal) !important;
  font-family: 'Inter', sans-serif !important;
}

.old-price, .price-original, del {
  font-size: 13px !important;
  color: var(--text-light) !important;
  text-decoration: line-through !important;
  font-weight: 400 !important;
}

/* Produkt — dostupnosť */
.catalog-delivery_name,
.delivery-name {
  font-size: 11px !important;
  color: var(--success) !important;
  font-weight: 500 !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
}

/* ── 9. ODZNAKY (badges) ─────────────────────────────────────── */
.catalog-product-action,
.catalog-badge,
.action-badge,
.badge-action,
.product-action,
[class*="badge"],
[class*="action-label"],
[class*="label-action"] {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .06em !important;
  border-radius: 4px !important;
  padding: 4px 8px !important;
  text-transform: uppercase !important;
}

/* Akcový odznak — maroon → stone */
.catalog-product-action,
.action-badge,
[class*="badge-sale"],
[class*="sale-badge"] {
  background: var(--stone) !important;
  color: var(--warm-white) !important;
}

/* Doporučujeme */
[class*="badge-recommended"],
[class*="recommended"] {
  background: var(--charcoal) !important;
  color: var(--warm-white) !important;
}

/* Discount percent badge */
.catalog-discount-badge,
[class*="discount-badge"],
[class*="percent"] {
  background: var(--stone-dark) !important;
  color: #fff !important;
  border-radius: 4px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  padding: 4px 8px !important;
}

/* ── 10. "DO KOŠÍKA" TLAČIDLO ────────────────────────────────── */
.add-cart-button,
.button-add-cart-button input,
.do-kosika,
[class*="add-to-cart"] input,
[class*="add-cart"] input {
  background: var(--stone) !important;
  background-image: none !important;
  color: var(--warm-white) !important;
  border: none !important;
  border-radius: var(--radius-sm) !important;
  padding: 9px 18px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  letter-spacing: .02em !important;
  cursor: pointer !important;
  transition: background .2s, transform .15s !important;
  height: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.add-cart-button:hover,
.button-add-cart-button input:hover,
.do-kosika:hover {
  background: var(--stone-dark) !important;
  transform: translateY(-1px) !important;
}

/* Wrapper pre tlačidlo */
#button-add-cart-button,
[id*="button-add-cart"] {
  background: var(--stone) !important;
  border-radius: var(--radius-sm) !important;
}

/* ── 11. FILTER BAR V KATALÓGU ───────────────────────────────── */
#top-category-panel,
.catalog-sort-bar,
.category-filter-bar {
  background: var(--cream) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  padding: 10px 16px !important;
  margin-bottom: 16px !important;
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

#top-category-panel select,
#SortCategory, #MostProductsOrders, #CountToPageCategory {
  border: 1.5px solid var(--border) !important;
  border-radius: var(--radius-sm) !important;
  background: var(--warm-white) !important;
  color: var(--text) !important;
  padding: 7px 12px !important;
  font-size: 13px !important;
  transition: border-color .2s !important;
}

#top-category-panel select:focus {
  border-color: var(--stone) !important;
  outline: none !important;
}

/* "Zobraziť iba produkty skladom" label */
#top-category-panel-products-on-storage label,
#top-category-panel label {
  color: var(--text) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
}

label {
  color: var(--text) !important;
}

/* Price slider */
.ui-slider-horizontal {
  background: var(--mist) !important;
  border-color: var(--border) !important;
}

.ui-slider .ui-slider-handle {
  background: var(--stone) !important;
  border-color: var(--stone-dark) !important;
}

.ui-slider .ui-slider-range {
  background: var(--sand) !important;
}

/* ── 12. SEKCIA NADPISY NA HOMEPAGE ──────────────────────────── */
.products-title-with-line,
h2.section-title,
.section-heading,
#big-startup-products > h2,
.products-section-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 600 !important;
  color: var(--charcoal) !important;
  text-align: center !important;
  margin: 32px 0 20px !important;
  position: relative !important;
}

.products-title-with-line::before,
.products-title-with-line::after {
  content: '' !important;
  position: absolute !important;
  top: 50% !important;
  width: 80px !important;
  height: 1px !important;
  background: var(--sand) !important;
}

.products-title-with-line::before { right: calc(50% + 12px + var(--title-w, 80px)) !important; }
.products-title-with-line::after  { left:  calc(50% + 12px + var(--title-w, 80px)) !important; }

/* ── 13. NEWSLETTER SEKCIA ───────────────────────────────────── */
#container-newsletter {
  position: relative !important;
  overflow: hidden !important;
}

#container-newsletter h2,
#container-newsletter h3,
#container-newsletter p.newsletter-title {
  color: var(--warm-white) !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 24px !important;
  font-weight: 600 !important;
  letter-spacing: .02em !important;
}

#container-newsletter input[type="text"],
#container-newsletter input[type="email"] {
  background: rgba(255,255,255,.15) !important;
  border: 1.5px solid rgba(255,255,255,.35) !important;
  border-radius: var(--radius-sm) !important;
  color: var(--warm-white) !important;
  padding: 11px 16px !important;
  font-size: 14px !important;
  transition: border-color .2s !important;
}

#container-newsletter input[type="email"]::placeholder,
#container-newsletter input[type="text"]::placeholder {
  color: rgba(255,255,255,.55) !important;
}

#container-newsletter input[type="text"]:focus,
#container-newsletter input[type="email"]:focus {
  border-color: var(--sand) !important;
  outline: none !important;
}

/* Newsletter button */
#button-addNewsletter,
#button-addNewsletter.button-type-1 {
  background: var(--stone) !important;
  background-image: none !important;
  border-radius: var(--radius-sm) !important;
}

#button-addNewsletter:hover {
  background: var(--stone-dark) !important;
}

#addNewsletter,
#button-addNewsletter input,
#container-newsletter input[type="submit"] {
  background: transparent !important;
  color: var(--warm-white) !important;
  border: none !important;
  padding: 11px 24px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  cursor: pointer !important;
}

/* ── 14. PÄTIČKA ─────────────────────────────────────────────── */
#container-footer {
  background: var(--charcoal) !important;
  border-top: 3px solid var(--stone) !important;
  margin-top: 0 !important;
}

hr.footerLine {
  display: none !important;
}

#info-articles {
  display: flex !important;
  flex-wrap: wrap !important;
  padding: 44px 32px 32px !important;
  gap: 0 !important;
}

#info-articles .span-6,
#info-articles #mediahelp {
  display: inline-flex !important;
  flex-direction: column !important;
  float: none !important;
  width: calc(25% - 24px) !important;
  margin: 0 12px 24px !important;
}

/* Logo v pätičke */
#mediahelp img,
#info-articles #mediahelp img {
  filter: brightness(0) invert(1) !important;
  opacity: 0.85 !important;
  max-width: 130px !important;
  height: auto !important;
  margin-bottom: 16px !important;
}

/* Footer column headings */
.group-title {
  color: var(--warm-white) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .1em !important;
  margin-bottom: 14px !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid rgba(255,255,255,.12) !important;
}

/* Footer links */
#footer ul li a,
#info-articles ul li a,
#info-articles a {
  color: rgba(255,255,255,.6) !important;
  text-decoration: none !important;
  font-size: 13px !important;
  line-height: 2 !important;
  transition: color .18s, padding-left .18s !important;
  display: block !important;
}

#footer ul li a:hover,
#info-articles ul li a:hover,
#info-articles a:hover {
  color: var(--sand) !important;
  padding-left: 4px !important;
}

/* Footer kontaktné info (telefón, email) */
.text-1-phone,
.text-1-email,
#info-articles p.text-1-phone,
#info-articles p.text-1-email {
  color: rgba(255,255,255,.7) !important;
  font-size: 13px !important;
  line-height: 1.9 !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.text-2-copyright,
.text-1-copyright {
  color: rgba(255,255,255,.4) !important;
  font-size: 12px !important;
  margin-top: 12px !important;
  line-height: 1.7 !important;
}

/* Payment/delivery icons */
.pay-delivery-footer-container {
  padding: 0 12px !important;
}

.pay-delivery-footer-outer .pay-delivery-footer-button img {
  opacity: 0.85 !important;
  filter: brightness(.9) !important;
  transition: opacity .2s !important;
  border-radius: 4px !important;
}

.pay-delivery-footer-outer .pay-delivery-footer-button img:hover {
  opacity: 1 !important;
}

/* Footer bottom bar */
#container-royal-media-text,
a#container-royal-media-text {
  display: block !important;
  text-align: center !important;
  color: rgba(255,255,255,.25) !important;
  font-size: 11px !important;
  padding: 14px 0 !important;
  border-top: 1px solid rgba(255,255,255,.06) !important;
  text-decoration: none !important;
}

/* ── 15. SLIDER — OCHRANA KARIET ─────────────────────────────── */
.product-third.slick-slide {
  margin: 6px 4px !important;
}

/* Slick dots */
.slick-dots li button:before {
  color: var(--charcoal) !important;
  opacity: 0.3 !important;
}

.slick-dots li.slick-active button:before {
  color: var(--stone) !important;
  opacity: 1 !important;
}

.slick-prev:before,
.slick-next:before {
  color: var(--charcoal) !important;
  font-size: 24px !important;
}

/* ── 16. KATEGÓRIE LIŠTA — ŠPECIÁLNE PRVKY ──────────────────── */
/* "KATEGÓRIE" button wrapper */
.left-block-categories,
.category-call {
  border-radius: 0 !important;
}

/* Subcategory indentation */
.category-tree ul,
.category-tree .subcategory {
  background: var(--cream) !important;
}

.category-tree ul li a,
.category-tree .subcategory li a {
  padding-left: 32px !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  color: var(--text-muted) !important;
}

.category-tree ul li a:hover {
  color: var(--stone) !important;
  padding-left: 38px !important;
}

/* Arrow na pravej strane kategórie so subkategóriou */
.category-tree li span.tree-arrow,
.category-tree a .position-type-arrow {
  float: right !important;
  color: var(--text-light) !important;
  font-size: 10px !important;
}

/* ── 17. DETAIL STRÁNKA ──────────────────────────────────────── */
#show-product,
.detail-product {
  background: var(--warm-white) !important;
}

.detail-product-name h1,
#product-name {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 26px !important;
  font-weight: 600 !important;
  color: var(--charcoal) !important;
  line-height: 1.3 !important;
}

.detail-price,
#detail-price,
.price-detail {
  font-size: 26px !important;
  font-weight: 700 !important;
  color: var(--charcoal) !important;
  font-family: 'Inter', sans-serif !important;
}

/* Detailové "Do košíka" */
#cart-add .button-type-1 input,
.detail-add-to-cart input[type="submit"],
.detail-add-to-cart input[type="button"],
#button-add input {
  background: var(--stone) !important;
  background-image: none !important;
  color: var(--warm-white) !important;
  border: none !important;
  border-radius: var(--radius-sm) !important;
  padding: 14px 32px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: background .2s, transform .15s !important;
  height: auto !important;
}

#cart-add .button-type-1 input:hover,
#button-add input:hover {
  background: var(--stone-dark) !important;
  transform: translateY(-1px) !important;
}

/* Detail wrapper pre button */
#button-add,
[id*="button-add"].button-type-1 {
  background: var(--stone) !important;
  border-radius: var(--radius-sm) !important;
}

/* ── 18. CHYBOVÁ STRÁNKA 404 ─────────────────────────────────── */
#error-page,
.error-page {
  text-align: center !important;
  padding: 64px 20px !important;
}

#error-page img {
  filter: grayscale(1) opacity(.3) !important;
  max-width: 80px !important;
}

#error-page h1 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 28px !important;
  color: var(--charcoal) !important;
  margin: 16px 0 8px !important;
}

#error-page p {
  color: var(--text-muted) !important;
  font-size: 15px !important;
}

.button-type-1.error-back-btn input,
#back-to-homepage input {
  background: var(--stone) !important;
  background-image: none !important;
  color: var(--warm-white) !important;
  border: none !important;
  border-radius: var(--radius-sm) !important;
  padding: 12px 26px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
}

/* ── 19. KOŠÍK — PRÁZDNY ─────────────────────────────────────── */
#cart-empty,
.cart-empty {
  text-align: center !important;
  padding: 60px 20px !important;
}

#cart-empty h1, .cart-empty h1 {
  font-family: 'Playfair Display', Georgia, serif !important;
  color: var(--charcoal) !important;
  font-size: 24px !important;
}

/* ── 20. VŠEOBECNÉ OPRAVY ────────────────────────────────────── */
/* Produkt image links — default browser blue */
.product-images a,
a[id^="product-id-"] {
  color: inherit !important;
  text-decoration: none !important;
}

/* Slick slider guard — nesmie prepisovať inline width od Slick JS */

/* Catalog section title line separator */
hr.catalog-products-separator {
  border: none !important;
  border-top: 1px solid var(--border) !important;
  margin: 24px 0 !important;
}

/* Prihlásenie / Registrácia v top stripe */
#head-login a,
#top-header-login-links a {
  color: rgba(255,255,255,.75) !important;
  font-size: 12px !important;
  text-decoration: none !important;
}

#head-login a:hover {
  color: var(--sand-light) !important;
}
