/* Bcross Store – úpravy vzhledu
   Autor úprav: Claude (pro Petra Mynáře), 29. 10. 2026
   Soubor je ve Správci souborů jako bcross-rebranding.css, v HTML kódech je na něj jen odkaz. */


/* ---------- Informační lišta: nahoře, žlutá, s křížkem ---------- */
.site-msg.information {
  position: relative !important;
  top: auto !important;
  bottom: auto !important;
  left: auto !important;
  right: auto !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: #FFD500 !important;
  color: #000000 !important;
  z-index: 3;
}
.site-msg.information .container { position: relative; padding: 10px 56px; text-align: center; }
.site-msg.information .text { font-family: 'Oxanium', sans-serif; font-size: 14px; font-weight: 700; line-height: 1.4; color: #000000; }
.site-msg.information .close {
  position: absolute !important; right: 6px !important; top: 50% !important; transform: translateY(-50%) !important;
  margin: 0 !important; width: 44px; height: 44px; cursor: pointer; opacity: 1;
  display: flex !important; align-items: center; justify-content: center;
}
.site-msg.information .close::before { line-height: 1 !important; height: auto !important; }
@media (max-width: 767px) {
  .site-msg.information .container { padding: 10px 48px 10px 16px; }
  .site-msg.information .text { font-size: 13px; }
}

/* ---------- Horní lišta s odkazy (Obchodní podmínky, Kontakty, CZK, Přihlášení): tmavá, navazuje na hlavičku ---------- */
.top-navigation-bar { background: #111111 !important; border-bottom: 1px solid #262626 !important; }
.top-navigation-bar .top-navigation-bar-menu > li > a,
.top-navigation-bar .top-navigation-menu-trigger,
.top-navigation-bar .top-navigation-tools > a,
.top-navigation-bar .top-navigation-tools > button,
.top-navigation-bar .top-navigation-tools > div > button,
.top-navigation-bar .top-navigation-tools > div > a,
.top-navigation-bar .top-navigation-tools .top-nav-button {
  color: #BDBDBD !important; font-size: 13px !important; font-weight: 600 !important; letter-spacing: .02em;
  text-decoration: none !important;
}
.top-navigation-bar .top-navigation-bar-menu > li > a:hover,
.top-navigation-bar .top-navigation-tools a:hover,
.top-navigation-bar .top-navigation-tools button:hover { color: #FFD500 !important; }
.top-navigation-bar svg, .top-navigation-bar .top-navigation-tools button::after { fill: #BDBDBD; color: #BDBDBD; }

.top-navigation-bar .languagesMenu__box > .languagesMenu__header { color: #BDBDBD !important; }
.top-navigation-bar .languagesMenu__box > .languagesMenu__header:hover { color: #FFD500 !important; }
.top-navigation-bar .languagesMenu .caret { border-top-color: #BDBDBD !important; color: #BDBDBD !important; }

/* ---------- Košík v hlavičce: prázdný / plný / po najetí ---------- */
/* prázdný: obrys, tlumený */
#header a.cart-count {
  display: inline-flex !important; align-items: center; gap: 10px; position: relative;
  min-height: 48px; padding: 0 18px !important; border-radius: 4px !important;
  border: 1.5px solid #3A3A3A !important; background: transparent !important; color: #CFCFCF !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700; font-size: 18px; letter-spacing: .04em; text-transform: uppercase;
  transition: background-color .15s, border-color .15s, color .15s;
}
#header a.cart-count .cart-price { font-family: inherit !important; font-size: inherit !important; font-weight: inherit !important; color: inherit !important; }
#header a.cart-count:hover { border-color: #FFD500 !important; color: #FFD500 !important; }

/* plný: žluté tlačítko s cenou a černým kolečkem s počtem kusů */
#header a.cart-count.full {
  background: #FFD500 !important; border-color: #FFD500 !important; color: #000000 !important; font-size: 20px;
}
#header a.cart-count.full i {
  position: absolute !important; top: -9px !important; right: -9px !important; left: auto !important;
  min-width: 24px; height: 24px; padding: 0 6px; border-radius: 12px;
  display: flex !important; align-items: center; justify-content: center;
  background: #000000 !important; color: #FFD500 !important; border: 2px solid #FFD500;
  font-family: 'Oxanium', sans-serif; font-style: normal; font-weight: 800; font-size: 12px; line-height: 1;
}
#header a.cart-count.full:hover, #header a.cart-count.full.hovered {
  background: #000000 !important; color: #FFD500 !important; border-color: #FFD500 !important;
}

/* okno po najetí */
#cart-widget.cart-widget {
  border-radius: 4px !important; border: 0 !important; border-top: 4px solid #FFD500 !important;
  box-shadow: 0 18px 40px rgba(0, 0, 0, .28) !important; overflow: hidden;
}
#cart-widget .cart-widget-inner { padding: 18px 20px 20px !important; background: #FFFFFF; }
#cart-widget .cart-widget-product { padding: 10px 0 !important; border-bottom: 1px solid #ECECEC; align-items: center; }
#cart-widget .cart-widget-product-image img { border-radius: 3px; background: #F4F4F4; }
#cart-widget .cart-widget-product-name a { color: #1F1F1F !important; font-weight: 700; text-decoration: none; }
#cart-widget .cart-widget-product-name a:hover { text-decoration: underline; text-decoration-color: #FFD500; text-decoration-thickness: 2px; }
#cart-widget .cart-widget-product-price strong { font-family: 'Oxanium', sans-serif; font-weight: 700; font-size: 20px; color: #000000; }
#cart-widget .remove-item { opacity: .55; visibility: visible !important; } /* šablona křížek schovává do najetí, na dotyku by nebyl vidět */
#cart-widget .remove-item:hover { opacity: 1; }
#cart-widget #continue-order-button {
  display: flex !important; width: 100%; justify-content: center; align-items: center; min-height: 50px; margin-top: 14px;
  background: #000000 !important; color: #FFFFFF !important; border: 2px solid #000000 !important; border-radius: 4px !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700; font-size: 19px; letter-spacing: .06em; text-transform: uppercase; text-decoration: none;
}
#cart-widget #continue-order-button:hover { background: #FFD500 !important; color: #000000 !important; border-color: #FFD500 !important; }
#cart-widget .cart-free-shipping { margin-top: 14px; padding: 12px 14px; background: #F4F4F4; border-radius: 4px; font-size: 13px; color: #1F1F1F; text-align: left; }
#cart-widget .cart-free-shipping strong { color: #000000 !important; }
#cart-widget .cart-free-shipping .price-range { margin-top: 8px; height: 6px; border-radius: 3px; background: #DDDDDD; overflow: hidden; }
#cart-widget .cart-free-shipping .price-range > div { height: 100%; background: #FFD500 !important; border-radius: 3px; }

/* ---------- Hlavní menu kategorií: černé, velkými písmeny, žluté podtržení, Výprodej červeně ---------- */
@media (min-width: 768px) {
  #header .header-bottom, #header #navigation { background: #000000 !important; border-bottom: 0 !important; }
  #header .header-bottom { border-top: 1px solid #222222; }
  #navigation .menu-level-1 > li > a {
    color: #FFFFFF !important; background: transparent !important;
    font-family: 'Oxanium', sans-serif !important; font-size: 18px !important; letter-spacing: .05em; text-transform: uppercase;
    padding: 23px 20px 20px !important; /* stejné rozestupy a výška jako původní menu */ border-bottom: 3px solid transparent !important;
  }
  #navigation .menu-level-1 > li > a b { font-weight: 700 !important; color: inherit !important; }
  #navigation .menu-level-1 > li > a:hover, #navigation .menu-level-1 > li.exp > a, #navigation .menu-level-1 > li.active > a, #navigation .menu-level-1 > li:hover > a {
    color: #FFD500 !important; border-bottom-color: #FFD500 !important;
  }
  #navigation .menu-level-1 > li > a[href="/vyprodej/"] { color: #FF4D3D !important; }
  #navigation .menu-level-1 > li > a[href="/vyprodej/"]:hover { color: #FF4D3D !important; border-bottom-color: #FF4D3D !important; }
  #navigation .submenu-arrow { filter: invert(1); }
  #navigation .menu-level-2 { border-top: 4px solid #FFD500 !important; box-shadow: 0 24px 40px rgba(0,0,0,.18) !important; }
  #navigation .menu-level-2 a { color: #1F1F1F !important; }
  #navigation .menu-level-2 a:hover { color: #000000 !important; text-decoration: underline !important; text-decoration-color: #FFD500 !important; text-decoration-thickness: 3px !important; }
  #navigation .menu-level-2 a.menu-image:has(img[src*="folder.svg"]) { display: none !important; }
  #navigation .menu-level-2 > li > div > a span { font-family: 'Oxanium', sans-serif; font-weight: 800; font-size: 20px; text-transform: uppercase; }
}

/* ---------- Hlavička s menu: přichycená nahoře při scrollování (mobil to má ze šablony) ---------- */
@media (min-width: 768px) {
  /* z-index nad ztmavovací vrstvou šablony (body::before, 1002) – jinak menu po najetí problikává */
  #header { position: sticky !important; top: 0; z-index: 1010; }
}
/* mobil: šablona hlavičku při sjíždění schovává, tohle ji nechá vidět */
html.scrolled-down #header { transform: none !important; }
/* okna Přihlášení a košíku nad přichycenou hlavičkou (jinak je hlavička zakryje) */
.user-action .popup-widget { z-index: 1020 !important; }
/* mobil: ikony hledání, košíku a menu vycentrované, stejné rozestupy a velikost */
@media (max-width: 767px) {
  html body #header .navigation-buttons { gap: 2px; padding-right: 6px !important; }
  html body #header .navigation-buttons > a { display: flex !important; align-items: center; justify-content: center; width: 46px !important; height: 50px !important; padding: 0 !important; margin: 0 !important; }
  html body #header .navigation-buttons > a::before { font-size: 22px !important; width: auto !important; height: auto !important; line-height: 1 !important; margin: 0 !important; display: block !important; }
}

/* ---------- Závodní pruh (uvítací text) ---------- */
.welcome-wrapper:has(.bc-race) {
  /* stejná šířka jako bannery nad ním (ty mají řádek s okraji -20 px) */
  max-width: none !important; width: auto !important; padding: 0 !important;
  margin-left: 0 !important; margin-right: 0 !important;
}
@media (min-width: 768px) {
  .welcome-wrapper:has(.bc-race) { margin-left: -20px !important; margin-right: -20px !important; }
}
.bc-race[hidden] { display: none; }
.bc-race { margin-top: 48px; background: #000000; color: #FFFFFF; }
.bc-race__in {
  padding: 64px 56px;
  display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 440px), 1fr)); gap: 48px; align-items: center;
}
.bc-race__main { display: flex; flex-direction: column; gap: 18px; }
.bc-race__eyebrow { font-family: 'Oxanium', sans-serif; font-weight: 700; font-size: 14px; letter-spacing: .16em; text-transform: uppercase; color: #FFD500; }
.bc-race__title { margin: 0; font-family: 'Oxanium', sans-serif; font-weight: 800; font-size: 72px; line-height: .92; text-transform: uppercase; color: #FFFFFF; }
.bc-race__sub { color: #FFD500; }
.bc-race__meta { display: flex; gap: 28px; flex-wrap: wrap; font-size: 17px; font-weight: 600; color: #D9D9D9; }
.bc-race__meta [hidden] { display: none; }
.bc-race__btns { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 6px; }
.bc-race__steps { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.bc-race__step { background: #141414; border: 1px solid #262626; border-radius: 4px; padding: 24px; display: flex; flex-direction: column; gap: 8px; }
.bc-race__step b { font-family: 'Oxanium', sans-serif; font-weight: 800; font-size: 52px; line-height: 1; color: #FFD500; }
.bc-race__step strong { font-size: 16px; }
.bc-race__step span { font-size: 14px; line-height: 1.5; color: #A8A8A8; }

.bc-btn {
  display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 0 28px;
  font-family: 'Oxanium', sans-serif; font-weight: 700; font-size: 19px; letter-spacing: .06em; text-transform: uppercase;
  text-decoration: none; border-radius: 4px; border: 2px solid transparent; line-height: 1;
}
.bc-btn--y { background: #FFD500; color: #000000; }
.bc-btn--y:hover { background: #000000; color: #FFD500; border-color: #FFD500; }
.bc-btn--o { border-color: #FFFFFF; color: #FFFFFF; background: transparent; }
.bc-btn--o:hover { background: #FFFFFF; color: #000000; }

@media (max-width: 767px) {
  .bc-race { margin-top: 48px; }
  .bc-race__in { padding: 40px 16px; gap: 28px; }
  .bc-race__title { font-size: 48px; }
  .bc-race__meta { font-size: 15px; gap: 12px; }
  .bc-race__btns .bc-btn { width: 100%; }
  .bc-race__steps { grid-template-columns: 1fr; }
}

/* ---------- Úvodní stránka podle návrhu: karusel, bannery, výhody, nadpisy sekcí, kartičky, posuvníky ---------- */
/* karusel a bannery vedle něj: zaoblené rohy, jemné přiblížení po najetí */
body.type-index #carousel, body.type-index .next-to-carousel-banners .banner-wrapper, body.type-index .footer-banner > a { border-radius: 4px; overflow: hidden; }
body.type-index .next-to-carousel-banners .banner-wrapper img, body.type-index .footer-banner img { transition: transform .3s ease; }
body.type-index .next-to-carousel-banners .banner-wrapper:hover img, body.type-index .footer-banner > a:hover img { transform: scale(1.03); }
body.type-index .footer-banner > a { display: block; }
/* šipky karuselu: tmavé kolečko, po najetí žluté */
body.type-index #carousel .carousel-control {
  width: 48px !important; height: 48px !important; border-radius: 50% !important; background: rgba(0,0,0,.72) !important;
  opacity: 1 !important; display: flex !important; align-items: center; justify-content: center; border: 0 !important;
  transition: background-color .15s;
}
body.type-index #carousel .carousel-control::before { color: #FFFFFF !important; font-size: 20px !important; line-height: 1 !important; filter: none !important; }
body.type-index #carousel .carousel-control:hover { background: #FFD500 !important; }
body.type-index #carousel .carousel-control:hover::before { color: #000000 !important; }

/* výhody: šedé karty s ikonou, nadpis písmem webu */
body.type-index .benefitBanner { gap: 16px; margin-top: 16px !important; margin-bottom: 8px !important; }
body.type-index .benefitBanner__item { background: #F4F4F4; border-radius: 4px; padding: 18px 20px !important; align-items: center !important; gap: 14px; margin: 0 !important; flex: 1 1 0 !important; }
body.type-index .benefitBanner__picture { width: 48px !important; min-width: 48px; height: 48px !important; margin: 0 !important; }
body.type-index .benefitBanner__img { width: 48px !important; height: 48px !important; object-fit: contain; }
body.type-index .benefitBanner__content { padding: 0 !important; margin: 0 !important; }
body.type-index .benefitBanner__title { display: block; font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 20px !important; line-height: 1.1 !important; text-transform: uppercase; color: #000000 !important; margin-bottom: 4px; }
body.type-index .benefitBanner__data { font-size: 13px !important; line-height: 1.45 !important; color: #5C5C5C !important; }

/* nadpisy sekcí: velké, vlevo, s krátkou žlutou čárou */
body.type-index .homepage-group-title {
  font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 56px !important; line-height: .95 !important;
  text-transform: uppercase; text-align: left !important; color: #000000 !important; margin: 64px 0 24px !important; padding: 0 0 14px !important;
  position: relative; letter-spacing: 0;
}
body.type-index .homepage-group-title::after { content: ""; position: absolute; left: 0; bottom: 0; width: 64px; height: 4px; background: #FFD500; }
body.type-index .homepage-group-title::before { display: none !important; }

/* kartičky produktů jako v kategorii */
body.type-index .products-wrapper .product .p { text-align: left !important; }
body.type-index .products-wrapper .product .image { display: block; background: #F4F4F4; border-radius: 4px; overflow: hidden; outline: 2px solid transparent; transition: outline-color .15s; }
body.type-index .products-wrapper .product .image img { transition: transform .35s ease; }
body.type-index .products-wrapper .product:hover .image { outline-color: #000000; }
body.type-index .products-wrapper .product:hover .image img { transform: scale(1.04); }
body.type-index .products-wrapper .product .p-in, body.type-index .products-wrapper .product .p-in-in, body.type-index .products-wrapper .product .p-bottom { text-align: left !important; padding-left: 0 !important; padding-right: 0 !important; }
body.type-index .products-wrapper .product .name, body.type-index .products-wrapper .product .name span { font-weight: 700 !important; font-size: 16px !important; line-height: 1.3 !important; color: #1F1F1F !important; text-align: left !important; min-height: 0 !important; }
body.type-index .products-wrapper .product .name:hover span { text-decoration: underline; text-decoration-color: #FFD500; text-decoration-thickness: 2px; }
body.type-index .products-wrapper .product .availability { font-size: 13px !important; text-align: left !important; }
body.type-index .products-wrapper .product .name { padding: 0 !important; }
body.type-index .products-wrapper .product .ratings-wrapper { height: auto !important; min-height: 0 !important; margin-top: 6px !important; display: block !important; }
body.type-index .products-wrapper .product .p-in { padding-top: 12px !important; }
body.type-index .products-wrapper .product .stars-placeholder { display: none !important; }
body.type-index .products-wrapper .product .p-bottom { padding-top: 8px !important; }
body.type-index .products-wrapper .product .prices { text-align: left !important; justify-content: flex-start !important; display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
body.type-index .products-wrapper .product .price-final strong { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 24px !important; color: #000000 !important; }
body.type-index .products-wrapper .product .price-standard, body.type-index .products-wrapper .product .price-standard strong { font-size: 15px !important; color: #7A7A7A !important; text-decoration: line-through; font-weight: 400 !important; }
body.type-index .products-wrapper .product .price-standard-wrapper-placeholder { display: none !important; }
/* štítky (barvy zůstávají z adminu) */
body.type-index .products-wrapper .flags .flag { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 13px !important; letter-spacing: .08em; text-transform: uppercase; padding: 5px 10px !important; border-radius: 2px !important; }
body.type-index .products-wrapper .product .p-bottom { padding-top: 12px !important; }
body.type-index .products-wrapper .product .p-bottom .btn {
  display: flex !important; width: 100%; align-items: center; justify-content: center; min-height: 46px; margin-top: 10px; padding: 0 16px !important;
  border: 2px solid #000000 !important; border-radius: 4px !important; background: #FFFFFF !important; color: #000000 !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 17px !important; letter-spacing: .06em; text-transform: uppercase; text-decoration: none !important;
  transition: background-color .15s, color .15s;
}
body.type-index .products-wrapper .product .p-bottom .btn:hover { background: #000000 !important; color: #FFFFFF !important; }
body.type-index .products-wrapper .product .p-bottom .btn-cart, body.type-index .products-wrapper .product .p-bottom .add-to-cart-button, body.type-index .products-wrapper .product .p-bottom button[type="submit"] {
  background: #FFD500 !important; border-color: #FFD500 !important; color: #000000 !important;
}
body.type-index .products-wrapper .product .p-bottom .btn-cart:hover, body.type-index .products-wrapper .product .p-bottom .add-to-cart-button:hover, body.type-index .products-wrapper .product .p-bottom button[type="submit"]:hover { background: #000000 !important; border-color: #000000 !important; color: #FFD500 !important; }
body.type-index .products-wrapper .product .availability span { font-weight: 700; }

/* šipky a tečky posuvníků */
body.type-index .product-slider-navigation {
  width: 44px !important; height: 44px !important; border-radius: 50% !important; background: #000000 !important; border: 0 !important;
  color: #FFFFFF !important; opacity: 1 !important; transition: background-color .15s; z-index: 2;
}
body.type-index .product-slider-navigation::before { color: #FFFFFF !important; font-size: 16px !important; }
body.type-index .product-slider-navigation:hover { background: #FFD500 !important; }
body.type-index .product-slider-navigation:hover::before { color: #000000 !important; }
body.type-index .product-slider-pagination .pagination-button { width: 10px !important; height: 10px !important; border-radius: 5px !important; background: #D6D6D6 !important; border: 0 !important; transition: width .2s, background-color .2s; }
body.type-index .product-slider-pagination .pagination-button.active { width: 30px !important; background: #000000 !important; }

@media (max-width: 767px) {
  body.type-index .homepage-group-title { font-size: 40px !important; margin: 44px 0 18px !important; }
  body.type-index .benefitBanner__item { flex: 1 1 100% !important; padding: 14px 16px !important; }
  body.type-index .products-wrapper .product .price-final strong { font-size: 20px !important; }
}

/* šipky karuselu: místo kroužku ze šablony jednoduchá šipka */
body.type-index #carousel .carousel-control::before { border: 0 !important; border-radius: 0 !important; width: auto !important; height: auto !important; background: none !important; margin: -4px 0 0 !important; position: static !important; transform: none !important; font-family: 'Oxanium', sans-serif !important; font-size: 34px !important; font-weight: 400 !important; }
body.type-index #carousel .carousel-control.left::before { content: '\2039' !important; }
body.type-index #carousel .carousel-control.right::before { content: '\203A' !important; }
/* tlačítko Detail přes celou šířku kartičky */
body.type-index .products-wrapper .product .p-tools { display: flex !important; width: 100%; }
body.type-index .products-wrapper .product .p-tools .btn { flex: 1 1 auto !important; width: 100% !important; max-width: none !important; }
/* ikony výhod bez bílého podkladu */
body.type-index .benefitBanner__img { mix-blend-mode: multiply; }
@media (max-width: 767px) {
  body.type-index .product-slider-navigation { display: none !important; }
  body.type-index .benefitBanner { display: flex !important; flex-direction: column; gap: 8px; }
  body.type-index .benefitBanner__picture { flex: 0 0 48px !important; }
}

/* ---------- Okno „Přidáno do košíku“ ---------- */
/* okno a ztmavení nad přichycenou hlavičkou */
#cboxOverlay { z-index: 1030 !important; background: #000000 !important; opacity: .72 !important; }
#colorbox { z-index: 1031 !important; }
#colorbox #cboxContent { border-radius: 4px; overflow: hidden; border-top: 6px solid #FFD500; }
#colorbox #cboxClose { width: 48px !important; height: 48px !important; top: 10px !important; right: 10px !important; border-radius: 50% !important; background: #F4F4F4 !important; transition: background-color .15s; }
#colorbox #cboxClose:hover { background: #FFD500 !important; }
#colorbox .advanced-order { padding: 28px 24px 8px !important; text-align: center; }
#colorbox .advanced-order > .h1 {
  font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 52px !important; line-height: 1 !important;
  text-transform: uppercase; color: #000000 !important; margin: 0 0 12px !important;
  display: flex; align-items: center; justify-content: center; gap: 14px;
}
#colorbox .advanced-order > .h1::before {
  content: ""; flex: 0 0 44px; width: 44px; height: 44px; border-radius: 50%;
  background: #FFD500 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3'%3E%3Cpath d='M5 12.5 L10 17 L19 7'/%3E%3C/svg%3E") center/24px no-repeat;
}
#colorbox .advanced-order > .h2:not(.advanced-order-suggestion) { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 20px !important; line-height: 1.35 !important; color: #1F1F1F !important; margin: 0 0 20px !important; }
#colorbox .advanced-order > .h2 span { display: inline-block; margin-left: 8px; padding: 3px 10px; border-radius: 2px; background: #000000; color: #FFD500; font-family: 'Oxanium', sans-serif; font-weight: 700; font-size: 16px; letter-spacing: .06em; text-transform: uppercase; vertical-align: middle; }
/* doprava zdarma: černý pruh se žlutým ukazatelem */
#colorbox .advanced-order .extras-wrap { display: flex; justify-content: center; margin: 0 0 24px !important; }
#colorbox .advanced-order .extra.delivery { background: #000000 !important; color: #FFFFFF !important; border-radius: 4px; padding: 16px 20px !important; max-width: 520px; width: 100%; text-align: left; border: 0 !important; }
#colorbox .advanced-order .extra.delivery::before { display: none !important; }
#colorbox .advanced-order .extra.delivery span { color: #FFFFFF !important; font-size: 15px !important; font-weight: 600; padding: 0 !important; }
#colorbox .advanced-order .extra.delivery strong { color: #FFD500 !important; }
#colorbox .advanced-order .price-range { height: 10px !important; background: #2A2A2A !important; border-radius: 5px !important; overflow: hidden; margin-top: 10px !important; border: 0 !important; }
#colorbox .advanced-order .price-range > div { background: #FFD500 !important; border-radius: 5px !important; height: 100% !important; }
/* tlačítka */
#colorbox .advancedOrder__buttons { display: flex !important; justify-content: center; gap: 12px; flex-wrap: wrap; padding-bottom: 24px; }
#colorbox .advancedOrder__buttons .btn {
  min-height: 54px !important; padding: 0 28px !important; border-radius: 4px !important; display: inline-flex !important; align-items: center; justify-content: center;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 19px !important; letter-spacing: .06em; text-transform: uppercase; text-decoration: none !important;
  transition: background-color .15s, color .15s, border-color .15s;
}
#colorbox .advancedOrder__buttons .next-step-back { background: #FFFFFF !important; border: 2px solid #000000 !important; color: #000000 !important; }
#colorbox .advancedOrder__buttons .next-step-back:hover { background: #000000 !important; color: #FFFFFF !important; }
#colorbox .advancedOrder__buttons .btn-conversion { background: #FFD500 !important; border: 2px solid #FFD500 !important; color: #000000 !important; }
#colorbox .advancedOrder__buttons .btn-conversion:hover { background: #000000 !important; border-color: #000000 !important; color: #FFD500 !important; }
#colorbox .advancedOrder__buttons .next-step-back::before, #colorbox .advancedOrder__buttons .btn-conversion::before { display: none !important; }
/* doporučené produkty */
#colorbox .advanced-order .advanced-order-suggestion {
  font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 34px !important; line-height: 1 !important;
  text-transform: uppercase; color: #000000 !important; text-align: left !important; border-top: 1px solid #E4E4E4; padding: 28px 0 14px !important; margin: 0 0 20px !important; position: relative;
}
#colorbox .advanced-order .advanced-order-suggestion::after { content: ""; position: absolute; left: 0; bottom: 0; width: 56px; height: 4px; background: #FFD500; }
/* kartičky doporučených produktů jako v kategorii */
#colorbox .advanced-order .products-wrapper .product .p { text-align: left !important; }
#colorbox .advanced-order .products-wrapper .product .image { display: block; background: #F4F4F4; border-radius: 4px; overflow: hidden; outline: 2px solid transparent; transition: outline-color .15s; }
#colorbox .advanced-order .products-wrapper .product .image img { transition: transform .35s ease; }
#colorbox .advanced-order .products-wrapper .product:hover .image { outline-color: #000000; }
#colorbox .advanced-order .products-wrapper .product:hover .image img { transform: scale(1.04); }
#colorbox .advanced-order .products-wrapper .product .p-in, #colorbox .advanced-order .products-wrapper .product .p-in-in, #colorbox .advanced-order .products-wrapper .product .p-bottom { text-align: left !important; padding-left: 0 !important; padding-right: 0 !important; }
#colorbox .advanced-order .products-wrapper .product .name, #colorbox .advanced-order .products-wrapper .product .name span { font-weight: 700 !important; font-size: 16px !important; line-height: 1.3 !important; color: #1F1F1F !important; text-align: left !important; min-height: 0 !important; }
#colorbox .advanced-order .products-wrapper .product .name:hover span { text-decoration: underline; text-decoration-color: #FFD500; text-decoration-thickness: 2px; }
#colorbox .advanced-order .products-wrapper .product .availability { font-size: 13px !important; text-align: left !important; }
#colorbox .advanced-order .products-wrapper .product .name { padding: 0 !important; }
#colorbox .advanced-order .products-wrapper .product .ratings-wrapper { height: auto !important; min-height: 0 !important; margin-top: 6px !important; display: block !important; }
#colorbox .advanced-order .products-wrapper .product .p-in { padding-top: 12px !important; }
#colorbox .advanced-order .products-wrapper .product .stars-placeholder { display: none !important; }
#colorbox .advanced-order .products-wrapper .product .p-bottom { padding-top: 8px !important; }
#colorbox .advanced-order .products-wrapper .product .prices { text-align: left !important; justify-content: flex-start !important; display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
#colorbox .advanced-order .products-wrapper .product .price-final strong { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 24px !important; color: #000000 !important; }
#colorbox .advanced-order .products-wrapper .product .price-standard, #colorbox .advanced-order .products-wrapper .product .price-standard strong { font-size: 15px !important; color: #7A7A7A !important; text-decoration: line-through; font-weight: 400 !important; }
#colorbox .advanced-order .products-wrapper .product .price-standard-wrapper-placeholder { display: none !important; }
/* štítky (barvy zůstávají z adminu) */
#colorbox .advanced-order .products-wrapper .flags .flag { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 13px !important; letter-spacing: .08em; text-transform: uppercase; padding: 5px 10px !important; border-radius: 2px !important; }
#colorbox .advanced-order .products-wrapper .product .p-bottom { padding-top: 12px !important; }
#colorbox .advanced-order .products-wrapper .product .p-bottom .btn {
  display: flex !important; width: 100%; align-items: center; justify-content: center; min-height: 46px; margin-top: 10px; padding: 0 16px !important;
  border: 2px solid #000000 !important; border-radius: 4px !important; background: #FFFFFF !important; color: #000000 !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 17px !important; letter-spacing: .06em; text-transform: uppercase; text-decoration: none !important;
  transition: background-color .15s, color .15s;
}
#colorbox .advanced-order .products-wrapper .product .p-bottom .btn:hover { background: #000000 !important; color: #FFFFFF !important; }
#colorbox .advanced-order .products-wrapper .product .p-bottom .btn-cart, #colorbox .advanced-order .products-wrapper .product .p-bottom .add-to-cart-button, #colorbox .advanced-order .products-wrapper .product .p-bottom button[type="submit"] {
  background: #FFD500 !important; border-color: #FFD500 !important; color: #000000 !important;
}
#colorbox .advanced-order .products-wrapper .product .p-bottom .btn-cart:hover, #colorbox .advanced-order .products-wrapper .product .p-bottom .add-to-cart-button:hover, #colorbox .advanced-order .products-wrapper .product .p-bottom button[type="submit"]:hover { background: #000000 !important; border-color: #000000 !important; color: #FFD500 !important; }
#colorbox .advanced-order .products-wrapper .product .availability span { font-weight: 700; }

#colorbox .advanced-order .products-wrapper .product .p-tools { display: flex !important; width: 100%; }
#colorbox .advanced-order .products-wrapper .product .p-tools .btn { flex: 1 1 auto !important; width: 100% !important; max-width: none !important; }
#colorbox .advanced-order .product-slider-navigation { width: 44px !important; height: 44px !important; border-radius: 50% !important; background: #000000 !important; border: 0 !important; opacity: 1 !important; }
#colorbox .advanced-order .product-slider-navigation::before { color: #FFFFFF !important; }
#colorbox .advanced-order .product-slider-navigation:hover { background: #FFD500 !important; }
#colorbox .advanced-order .product-slider-navigation:hover::before { color: #000000 !important; }
#colorbox .advanced-order .product-slider-pagination .pagination-button { width: 10px !important; height: 10px !important; border-radius: 5px !important; background: #D6D6D6 !important; border: 0 !important; }
#colorbox .advanced-order .product-slider-pagination .pagination-button.active { width: 30px !important; background: #000000 !important; }
@media (max-width: 767px) {
  #colorbox .advanced-order { padding: 20px 12px 4px !important; }
  #colorbox .advanced-order > .h1 { font-size: 34px !important; gap: 10px; }
  #colorbox .advanced-order > .h1::before { flex-basis: 34px; width: 34px; height: 34px; background-size: 18px; }
  #colorbox .advanced-order > .h2:not(.advanced-order-suggestion) { font-size: 17px !important; }
  #colorbox .advancedOrder__buttons .btn { width: 100%; }
  #colorbox .advanced-order .advanced-order-suggestion { font-size: 26px !important; }
  #colorbox .advanced-order .product-slider-navigation { display: none !important; }
}
/* ---------- Formuláře (registrace, kontakty, objednávka): pole, zaškrtávátka, tlačítka podle návrhu ---------- */
:is(body.in-registrace, body.in-kontakty, body.ordering-process) #content .form-control {
  border: 1.5px solid #CFCFCF !important; border-radius: 4px !important; background: #FFFFFF !important; color: #1F1F1F !important;
  font-family: 'Oxanium', sans-serif !important; font-size: 16px !important; box-shadow: none !important; transition: border-color .15s, box-shadow .15s;
}
:is(body.in-registrace, body.in-kontakty, body.ordering-process) #content .form-control:hover { border-color: #8A8A8A !important; }
:is(body.in-registrace, body.in-kontakty, body.ordering-process) #content .form-control:focus { border-color: #000000 !important; box-shadow: 0 0 0 3px #FFD500 !important; outline: none !important; }
:is(body.in-registrace, body.in-kontakty, body.ordering-process) #content .smart-label-wrapper label,
:is(body.in-registrace, body.in-kontakty, body.ordering-process) #content .smart-label-wrapper label span { color: #5C5C5C !important; font-weight: 600 !important; }
:is(body.in-registrace, body.in-kontakty, body.ordering-process) .required-asterisk::after { color: #D10A00 !important; }
:is(body.in-registrace, body.in-kontakty, body.ordering-process) #content .js-validated-element-wrapper.has-error .form-control,
:is(body.in-registrace, body.in-kontakty, body.ordering-process) #content .form-control.error { border-color: #D10A00 !important; }
/* nadpisy sekcí formuláře */
:is(body.in-registrace, body.in-kontakty, body.ordering-process) fieldset > h2,
:is(body.in-registrace, body.in-kontakty, body.ordering-process) .co-box > h2,
:is(body.in-registrace) .social-login > h2 {
  font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 28px !important; line-height: 1 !important;
  text-transform: uppercase; color: #000000 !important; margin-bottom: 16px !important;
}
/* zaškrtávátka: černý čtvereček, po zaškrtnutí černý se žlutou fajfkou */
:is(body.in-registrace, body.in-kontakty, body.ordering-process) #content input[type="checkbox"] + label::before {
  width: 20px !important; height: 20px !important; border: 1.5px solid #000000 !important; border-radius: 3px !important; background: #FFFFFF !important;
}
:is(body.in-registrace, body.in-kontakty, body.ordering-process) #content input[type="checkbox"]:checked + label::before { background: #000000 !important; border-color: #000000 !important; }
:is(body.in-registrace, body.in-kontakty, body.ordering-process) #content input[type="checkbox"]:checked + label::after { border-color: #FFD500 !important; color: #FFD500 !important; }
:is(body.in-registrace, body.in-kontakty, body.ordering-process) #content input[type="checkbox"] + label:hover::before { box-shadow: 0 0 0 2px #FFD500; }
:is(body.in-registrace, body.in-kontakty, body.ordering-process) .consents label, :is(body.in-registrace, body.in-kontakty, body.ordering-process) .consents .label { font-size: 14px !important; line-height: 1.5 !important; }
:is(body.in-registrace, body.in-kontakty, body.ordering-process) .consents a { color: #000000 !important; font-weight: 700; text-decoration: none !important; border-bottom: 2px solid #FFD500; }
/* hlavní tlačítka žlutá, vedlejší s černým obrysem */
:is(body.in-registrace, body.in-kontakty) .submit-wrapper .btn,
body.ordering-process .next-step .btn-conversion {
  min-height: 58px !important; padding: 0 32px !important; border-radius: 4px !important; border: 2px solid #FFD500 !important;
  background: #FFD500 !important; color: #000000 !important; box-shadow: none !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 21px !important; letter-spacing: .06em; text-transform: uppercase;
  display: inline-flex !important; align-items: center; justify-content: center; gap: 8px; transition: background-color .15s, color .15s, border-color .15s;
}
:is(body.in-registrace, body.in-kontakty) .submit-wrapper .btn:hover,
body.ordering-process .next-step .btn-conversion:hover { background: #000000 !important; border-color: #000000 !important; color: #FFD500 !important; }
body.ordering-process .next-step .btn-conversion span { color: inherit !important; font: inherit !important; }
body.ordering-process .next-step .btn-conversion .order-button-suffix { font-family: 'Oxanium', sans-serif !important; font-size: 12px !important; font-weight: 700 !important; letter-spacing: 0; text-transform: none; opacity: .8; }
body.ordering-process .next-step .btn-conversion::before, body.ordering-process .next-step .btn-conversion::after { color: inherit !important; }
body.ordering-process .next-step .next-step-back {
  min-height: 58px !important; padding: 0 24px !important; border-radius: 4px !important; border: 2px solid #000000 !important; background: #FFFFFF !important; color: #000000 !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 18px !important; letter-spacing: .06em; text-transform: uppercase;
  display: inline-flex !important; align-items: center; justify-content: center; text-decoration: none !important; transition: background-color .15s, color .15s;
}
body.ordering-process .next-step .next-step-back span { color: inherit !important; font: inherit !important; }
body.ordering-process .next-step .next-step-back:hover { background: #000000 !important; color: #FFFFFF !important; }
body.ordering-process .next-step { display: flex !important; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }

/* ---------- Registrace ---------- */
body.in-registrace .content-inner > h1 { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 80px !important; line-height: .92 !important; text-transform: uppercase; color: #000000 !important; margin: 24px 0 28px !important; }
body.in-registrace #register-form { max-width: 560px !important; width: 100%; display: flex; flex-direction: column; gap: 20px; }
body.in-registrace #register-form > .co-box > fieldset, body.in-registrace #register-form > fieldset { background: #FFFFFF !important; border: 1.5px solid #E4E4E4 !important; border-radius: 4px !important; padding: 28px !important; margin: 0 !important; }
body.in-registrace #register-form > fieldset:not(.box) { border: 0 !important; padding: 0 !important; }
body.in-registrace .captcha-image img { border-radius: 4px; border: 1.5px solid #E4E4E4; }
body.in-registrace .submit-wrapper .btn { width: 100%; }
/* přihlášení přes Google / Seznam: bílá tlačítka s černým obrysem */
body.in-registrace .social-login { border-top: 1px solid #E4E4E4; padding-top: 24px; }
body.in-registrace .social-login .login-btn {
  border: 2px solid #000000 !important; border-radius: 4px !important; background: #FFFFFF !important; color: #000000 !important; min-height: 52px; overflow: hidden;
  transition: background-color .15s;
}
body.in-registrace .social-login .login-btn strong { color: #000000 !important; font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 15px !important; }
body.in-registrace .social-login .login-btn:hover { background: #FFD500 !important; }
body.in-registrace .social-login .login-btn span { background-color: transparent !important; border: 0 !important; }
body.in-registrace .social-login .login-btn.seznam span { filter: none; }

/* ---------- Kontakty: černá hlavička, kontakty vlevo v kartách, formulář vpravo ---------- */
body.in-kontakty .pageArticleDetail > header {
  background: #000000; color: #FFFFFF; border-radius: 4px; padding: 56px 48px 64px; margin: 16px 0 40px; position: relative; overflow: hidden;
}
body.in-kontakty .pageArticleDetail > header::after {
  content: "VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ";
  white-space: pre; position: absolute; left: -20px; right: -20px; bottom: 14px; transform: rotate(-1.5deg);
  background: #FFD500; color: #000000; font-family: 'Oxanium', sans-serif; font-weight: 800; font-size: 16px; letter-spacing: .08em; padding: 5px 0; overflow: hidden;
}
body.in-kontakty .pageArticleDetail > header h1 { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 96px !important; line-height: .92 !important; text-transform: uppercase; color: #FFFFFF !important; margin: 0 !important; }
body.in-kontakty .pageArticleDetail > header h1::before { content: "Máš otázku?"; display: block; font-size: 14px; letter-spacing: .16em; color: #FFD500; margin-bottom: 14px; font-weight: 700; }
body.in-kontakty .pageArticleDetail > header + div {
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 520px); column-gap: 48px; row-gap: 14px; align-items: start; text-align: left !important;
}
body.in-kontakty .pageArticleDetail > header + div > * { grid-column: 1; margin: 0 !important; text-align: left !important; }
body.in-kontakty .pageArticleDetail > header + div > p:first-child { display: none; } /* „Máš otázku?“ je v hlavičce */
body.in-kontakty .pageArticleDetail > header + div > p:has(+ form), body.in-kontakty .pageArticleDetail > header + div > form { grid-column: 2; }
body.in-kontakty .pageArticleDetail > header + div > p:has(+ form) { grid-row: 1; font-family: 'Oxanium', sans-serif; font-weight: 800; font-size: 28px; line-height: 1.05; text-transform: uppercase; color: #000000; }
body.in-kontakty .pageArticleDetail > header + div > form { grid-row: 2 / span 20; background: #F4F4F4; border-radius: 4px; padding: 28px; width: 100% !important; max-width: none !important; }
body.in-kontakty .pageArticleDetail > header + div > form fieldset { width: 100%; }
body.in-kontakty .pageArticleDetail > header + div > form .box { background: transparent !important; border: 0 !important; padding: 0 !important; }
body.in-kontakty .pageArticleDetail > header + div > form .form-group, body.in-kontakty #formContact .form-control { max-width: none !important; width: 100% !important; }
body.in-kontakty #formContact .submit-wrapper .btn { width: 100%; }
/* e-mail a telefon jako karty se žlutou ikonou */
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href^="mailto:"]),
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href^="tel:"]) {
  display: flex; align-items: center; gap: 18px; border: 1.5px solid #E4E4E4; border-radius: 4px; padding: 20px 24px; font-size: 15px; color: #5C5C5C;
  transition: border-color .15s;
}
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href^="mailto:"]):hover,
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href^="tel:"]):hover { border-color: #000000; }
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href^="mailto:"])::before,
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href^="tel:"])::before {
  content: ""; flex: 0 0 56px; height: 56px; border-radius: 4px; background: #FFD500 center/26px no-repeat;
}
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href^="mailto:"])::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 7 L12 13 L21 7'/%3E%3C/svg%3E"); }
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href^="tel:"])::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2'%3E%3Cpath d='M5 4 H9 L11 9 L8.5 10.5 C9.5 12.8 11.2 14.5 13.5 15.5 L15 13 L20 15 V19 C20 20 19 21 18 21 C10 20.5 3.5 14 3 6 C3 5 4 4 5 4 Z'/%3E%3C/svg%3E"); }
body.in-kontakty .pageArticleDetail > header + div > p a[href^="mailto:"], body.in-kontakty .pageArticleDetail > header + div > p a[href^="tel:"],
body.in-kontakty .pageArticleDetail > header + div > p a[href^="tel:"] span { color: #000000 !important; font-weight: 800 !important; font-size: 22px !important; text-decoration: none !important; }
/* sociální sítě a adresa jako šedé bloky */
body.in-kontakty .pageArticleDetail > header + div > p:has(> span:first-child > strong):has(> br):not(:has(a[href^="mailto:"])):not(:has(a[href^="tel:"])) { background: #F4F4F4; border-radius: 4px; padding: 20px 24px; line-height: 1.7; }
body.in-kontakty .pageArticleDetail > header + div > p > span:first-child > strong:only-child,
body.in-kontakty .pageArticleDetail > header + div > p > strong:first-child { font-family: 'Oxanium', sans-serif; font-weight: 800; font-size: 22px; text-transform: uppercase; color: #000000; }
body.in-kontakty .pageArticleDetail > header + div > p a:not([href^="mailto:"]):not([href^="tel:"]) { color: #000000 !important; font-weight: 700; text-decoration: none !important; border-bottom: 2px solid #FFD500; }
body.in-kontakty .pageArticleDetail > header + div > p:has(iframe) iframe { width: 100% !important; height: 340px; border: 0; border-radius: 4px; display: block; }

/* ---------- Košík a objednávka: kroky nahoře ---------- */
body.ordering-process .cart-header { border: 0 !important; margin: 24px 0 32px !important; }
body.ordering-process .cart-header .step strong, body.ordering-process .cart-header .step a {
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 18px !important; letter-spacing: .06em; text-transform: uppercase; color: #7A7A7A !important; text-decoration: none !important;
}
body.ordering-process .cart-header .step strong span, body.ordering-process .cart-header .step a span { color: inherit !important; text-decoration: none !important; }
body.ordering-process .cart-header .step strong::before, body.ordering-process .cart-header .step a::before {
  background: #FFFFFF !important; border: 1.5px solid #CFCFCF !important; color: #7A7A7A !important; font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 18px !important;
}
body.ordering-process .cart-header .step.active strong, body.ordering-process .cart-header .step.active a { color: #000000 !important; }
body.ordering-process .cart-header .step.active strong::before, body.ordering-process .cart-header .step.active a::before { background: #FFD500 !important; border-color: #FFD500 !important; color: #000000 !important; }
body.ordering-process .cart-header .step.completed a, body.ordering-process .cart-header .step.completed strong { color: #000000 !important; }
body.ordering-process .cart-header .step.completed a::before, body.ordering-process .cart-header .step.completed strong::before { background: #000000 !important; border-color: #000000 !important; color: #FFD500 !important; }
body.ordering-process .cart-header .step.completed a:hover span { border-bottom: 2px solid #FFD500; }

/* ---------- Košík: tabulka položek ---------- */
body.in-kosik .cart-table { border-collapse: collapse; }
body.in-kosik .cart-table .cart-table-header td { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 15px !important; letter-spacing: .08em; text-transform: uppercase; color: #7A7A7A !important; border-bottom: 1.5px solid #000000 !important; }
body.in-kosik .cart-table tr.removeable td, body.in-kosik .cart-table tr.free-gift-row td { border-bottom: 1px solid #E4E4E4 !important; }
body.in-kosik .cart-table .cart-p-image img { border-radius: 4px; background: #F4F4F4; }
body.in-kosik .cart-table .p-name .main-link { color: #1F1F1F !important; font-weight: 800 !important; font-size: 16px !important; text-decoration: none !important; }
body.in-kosik .cart-table .p-name .main-link:hover { text-decoration: underline !important; text-decoration-color: #FFD500 !important; text-decoration-thickness: 2px !important; }
body.in-kosik .cart-table .show-related { color: #000000 !important; font-weight: 700; font-size: 13px; }
body.in-kosik .cart-table .price-final, body.in-kosik .cart-table .free-gift-price { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 22px !important; color: #000000 !important; }
body.in-kosik .cart-table .p-total .price-final { font-size: 24px !important; }
body.in-kosik .cart-table .free-gift-price { color: #1A7F37 !important; }
body.in-kosik .cart-table .availability-label { font-weight: 700 !important; }
/* počet kusů: černý rámeček, tlačítka −/+ */
body.in-kosik .cart-table .quantity { border: 1.5px solid #000000 !important; border-radius: 4px !important; overflow: hidden; background: #FFFFFF; }
body.in-kosik .cart-table .quantity input { border: 0 !important; font-weight: 800 !important; font-size: 16px !important; box-shadow: none !important; }
body.in-kosik .cart-table .quantity button, body.in-kosik .cart-table .quantity .increase, body.in-kosik .cart-table .quantity .decrease { border: 0 !important; background: #FFFFFF !important; color: #000000 !important; transition: background-color .15s; }
body.in-kosik .cart-table .quantity button:hover, body.in-kosik .cart-table .quantity .increase:hover, body.in-kosik .cart-table .quantity .decrease:hover { background: #FFD500 !important; }
/* odebrat: křížek v kolečku, po najetí červeně */
body.in-kosik .cart-table .remove-item { width: 32px !important; height: 32px !important; border-radius: 50% !important; background: #F4F4F4 !important; border: 0 !important; transition: background-color .15s; }
body.in-kosik .cart-table .remove-item::before { color: #000000 !important; }
body.in-kosik .cart-table .remove-item:hover { background: #D10A00 !important; }
body.in-kosik .cart-table .remove-item:hover::before { color: #FFFFFF !important; }
/* dárek a doprava zdarma: černý pruh se žlutým ukazatelem */
body.in-kosik .summary .box.box-bg-default { background: transparent !important; border: 0 !important; padding: 0 !important; }
body.ordering-process .extra.gift, body.ordering-process .extra.delivery { background: #000000 !important; color: #FFFFFF !important; border-radius: 4px !important; padding: 18px 22px !important; border: 0 !important; }
body.ordering-process .extra.gift::before, body.ordering-process .extra.delivery::before { color: #FFD500 !important; }
body.ordering-process .extra.gift span, body.ordering-process .extra.delivery span { color: #FFFFFF !important; font-weight: 600; }
body.ordering-process .extra.gift strong, body.ordering-process .extra.delivery strong { color: #FFD500 !important; }
body.ordering-process .price-range { height: 10px !important; background: #2A2A2A !important; border-radius: 5px !important; overflow: hidden; border: 0 !important; margin-top: 10px !important; }
body.ordering-process .price-range > div { background: #FFD500 !important; border-radius: 5px !important; height: 100% !important; }
/* slevový kupón */
body.in-kosik .toggle-coupon-input-button { color: #000000 !important; font-weight: 800 !important; text-decoration: none !important; border-bottom: 2px solid #FFD500 !important; padding-bottom: 2px !important; }
body.in-kosik .discount-coupon .btn { border-radius: 4px !important; background: #000000 !important; color: #FFFFFF !important; border: 0 !important; font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; text-transform: uppercase; letter-spacing: .06em; }
body.in-kosik .discount-coupon .btn:hover { background: #FFD500 !important; color: #000000 !important; }
/* součet */
body.in-kosik .summary .price-wrapper { background: #F4F4F4; border-radius: 4px; padding: 20px 24px !important; }
body.in-kosik .summary .price-label { font-weight: 700 !important; color: #5C5C5C !important; }
body.in-kosik .summary .price.price-primary { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 44px !important; color: #000000 !important; }
body.in-kosik .summary .next-step { margin-top: 16px; }

/* ---------- Objednávka krok 1: doprava a platba jako karty ---------- */
body.ordering-process .co-box h2.order-icon::before { color: #000000 !important; }
body.ordering-process .shipping-billing-table .radio-wrapper {
  border: 1.5px solid #D6D6D6 !important; border-radius: 4px !important; background: #FFFFFF !important; margin-bottom: 10px !important; padding: 0 !important;
  transition: border-color .15s, background-color .15s, box-shadow .15s;
}
body.ordering-process .shipping-billing-table .radio-wrapper:hover { border-color: #000000 !important; }
body.ordering-process .shipping-billing-table .radio-wrapper.active { border-color: #000000 !important; box-shadow: inset 0 0 0 1px #000000; background: #FFFBE0 !important; }
body.ordering-process .shipping-billing-table .radio-wrapper label { padding-top: 16px !important; padding-bottom: 16px !important; border: 0 !important; }
body.ordering-process .shipping-billing-table .radio-wrapper input[type="radio"] { accent-color: #000000; }
body.ordering-process .shipping-billing-table .shipping-billing-name { font-weight: 800 !important; color: #1F1F1F !important; }
body.ordering-process .shipping-billing-table .payment-shipping-price { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 20px !important; color: #000000 !important; }
body.ordering-process .shipping-billing-table .payment-shipping-price.for-free { color: #1A7F37 !important; }
body.ordering-process .shipping-billing-table .question-tooltip { background: #000000 !important; color: #FFD500 !important; }
body.ordering-process .cart-toggle-unselected-options { color: #000000 !important; font-weight: 800; text-decoration: none !important; border-bottom: 2px solid #FFD500; }

/* ---------- Objednávka: rekapitulace vpravo ---------- */
body.ordering-process #checkoutSidebar .order-summary-inner { border: 0 !important; border-top: 4px solid #FFD500 !important; border-radius: 4px !important; background: #F4F4F4 !important; }
body.ordering-process #checkoutSidebar .order-summary-inner > h2 { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 28px !important; text-transform: uppercase; color: #000000 !important; }
body.ordering-process #checkoutSidebar .order-summary-item { border-color: #E0E0E0 !important; }
body.ordering-process #checkoutSidebar .order-summary-item.price strong, body.ordering-process #checkoutSidebar .order-summary-item.price .price-primary { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; color: #000000 !important; }
body.ordering-process #checkoutSidebar .order-summary-item.price .price-primary { font-size: 34px !important; }
body.ordering-process #checkoutSidebar .checkout-box .toggle-contacts { border: 1.5px solid #E4E4E4 !important; border-radius: 4px !important; background: #FFFFFF !important; color: #000000 !important; font-weight: 800 !important; }
body.ordering-process #checkoutSidebar .checkout-box .toggle-contacts span { color: #5C5C5C; font-weight: 700; }
body.ordering-process #checkoutSidebar .next-step { margin-top: 16px; }
body.ordering-process #checkoutSidebar .next-step .btn-conversion { flex: 1 1 auto; }

/* ---------- Objednávka krok 2: odkaz na přihlášení ---------- */
body.ordering-process .helper #order-page-login-button { color: #000000 !important; font-weight: 800; text-decoration: none !important; border-bottom: 2px solid #FFD500; }

@media (max-width: 767px) {
  body.in-registrace .content-inner > h1 { font-size: 52px !important; }
  body.in-registrace #register-form > .co-box > fieldset, body.in-registrace #register-form > fieldset.box { padding: 20px !important; }
  body.in-kontakty .pageArticleDetail > header { padding: 36px 20px 56px; }
  body.in-kontakty .pageArticleDetail > header h1 { font-size: 60px !important; }
  body.in-kontakty .pageArticleDetail > header + div { display: flex; flex-direction: column; gap: 14px; }
  body.in-kontakty .pageArticleDetail > header + div > form { padding: 20px; }
  body.in-kontakty .pageArticleDetail > header + div > p a[href^="mailto:"], body.in-kontakty .pageArticleDetail > header + div > p a[href^="tel:"], body.in-kontakty .pageArticleDetail > header + div > p a[href^="tel:"] span { font-size: 18px !important; }
  body.in-kontakty .pageArticleDetail > header + div > p:has(a[href^="mailto:"])::before, body.in-kontakty .pageArticleDetail > header + div > p:has(a[href^="tel:"])::before { flex-basis: 44px; height: 44px; background-size: 22px; }
  body.ordering-process .cart-header .step strong, body.ordering-process .cart-header .step a { font-size: 14px !important; }
  body.in-kosik .summary .price.price-primary { font-size: 36px !important; }
  body.ordering-process .next-step .btn-conversion { width: 100%; }
  body.ordering-process .next-step .next-step-back { width: 100%; }
}

/* ---------- Doladění formulářů a objednávky ---------- */
/* doprava a platba: kolečko uprostřed karty, cena vpravo na jednom řádku */
body.ordering-process .shipping-billing-table .radio-wrapper label { padding: 16px 20px 16px 52px !important; align-items: center !important; flex-wrap: nowrap !important; gap: 12px; }
body.ordering-process .shipping-billing-table .radio-wrapper label::before { left: 18px !important; top: 50% !important; transform: translateY(-50%) !important; width: 20px !important; height: 20px !important; border: 1.5px solid #000000 !important; background: #FFFFFF !important; }
body.ordering-process .shipping-billing-table .radio-wrapper label::after { left: 23px !important; top: 50% !important; transform: translateY(-50%) !important; width: 10px !important; height: 10px !important; background: #000000 !important; }
body.ordering-process .shipping-billing-table .radio-wrapper input:not(:checked) + label::after { display: none !important; }
body.ordering-process .shipping-billing-table .radio-wrapper label > :first-child { flex: 1 1 auto !important; min-width: 0; }
body.ordering-process .shipping-billing-table .radio-wrapper .payment-logo { flex: 0 0 auto !important; }
body.ordering-process .shipping-billing-table .radio-wrapper .payment-shipping-price { flex: 0 0 auto !important; width: auto !important; margin-left: auto; text-align: right; white-space: nowrap; }
body.ordering-process #checkoutSidebar .checkout-box .toggle-contacts { border: 0 !important; background: transparent !important; }
body.ordering-process .next-step { align-items: stretch !important; }
body.ordering-process .next-step .btn-conversion:has(.order-button-suffix) { flex-direction: column !important; gap: 2px !important; padding: 8px 24px !important; line-height: 1.1 !important; }
/* kontakty: telefon jako karta (odkaz v textu je /tel.:…), pole formuláře přes celou šířku */
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href*="tel"]) { display: flex; align-items: center; gap: 18px; border: 1.5px solid #E4E4E4; border-radius: 4px; padding: 20px 24px; font-size: 15px; color: #5C5C5C; transition: border-color .15s; }
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href*="tel"]):hover { border-color: #000000; }
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href*="tel"])::before { content: ""; flex: 0 0 56px; height: 56px; border-radius: 4px; background: #FFD500 center/26px no-repeat; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2'%3E%3Cpath d='M5 4 H9 L11 9 L8.5 10.5 C9.5 12.8 11.2 14.5 13.5 15.5 L15 13 L20 15 V19 C20 20 19 21 18 21 C10 20.5 3.5 14 3 6 C3 5 4 4 5 4 Z'/%3E%3C/svg%3E"); }
body.in-kontakty .pageArticleDetail > header + div > p a[href*="tel"], body.in-kontakty .pageArticleDetail > header + div > p a[href*="tel"] span { color: #000000 !important; font-weight: 800 !important; font-size: 22px !important; text-decoration: none !important; border-bottom: 0 !important; }
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href^="mailto:"]) span, body.in-kontakty .pageArticleDetail > header + div > p:has(a[href*="tel"]) span { text-decoration: none !important; }
body.in-kontakty #formContact .form-control-wrapper, body.in-kontakty #formContact .form-control { max-width: none !important; width: 100% !important; }
body.in-kontakty #formContact .form-control.short { max-width: 220px !important; }
/* registrace: bez prázdného místa nad nadpisy, pole přes celou šířku, ikona Seznamu na červené */
body.in-registrace #register-form fieldset > h2:first-child, body.in-registrace #register-form .social-login > h2 { margin-top: 0 !important; padding-top: 0 !important; }
body.in-registrace #register-form .form-control-wrapper, body.in-registrace #register-form .form-control { max-width: none !important; width: 100% !important; }
body.in-registrace #register-form .form-control.short { max-width: 220px !important; }
body.in-registrace .social-login .login-btn.seznam .login-seznam-icon { background-color: #CC0000 !important; }
@media (max-width: 767px) {
  body.in-kontakty .pageArticleDetail > header + div > p a[href*="tel"], body.in-kontakty .pageArticleDetail > header + div > p a[href*="tel"] span { font-size: 18px !important; }
  body.in-kontakty .pageArticleDetail > header + div > p:has(a[href*="tel"])::before { flex-basis: 44px; height: 44px; background-size: 22px; }
  body.ordering-process .shipping-billing-table .radio-wrapper label { padding: 14px 14px 14px 46px !important; flex-wrap: wrap !important; }
  body.ordering-process .shipping-billing-table .radio-wrapper label::before { left: 14px !important; }
  body.ordering-process .shipping-billing-table .radio-wrapper label::after { left: 19px !important; }
  body.in-kontakty .pageArticleDetail > header + div { align-items: stretch !important; }
  body.ordering-process #checkoutSidebar .order-summary-inner { padding: 20px 16px !important; }
}
/* nedostupná kombinace dopravy a platby tlumeně */
body.ordering-process .shipping-billing-table .radio-wrapper.inactive-child { opacity: .55; }

/* ---------- Detail produktu podle návrhu ---------- */
body.type-product .p-detail-inner-header h1 { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 52px !important; line-height: .95 !important; text-transform: uppercase; color: #000000 !important; margin-bottom: 10px !important; }
body.type-product .p-image, body.type-product .p-main-image { border-radius: 4px; overflow: hidden; background: #F4F4F4; }
body.type-product .p-image .flags .flag { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 15px !important; letter-spacing: .08em; text-transform: uppercase; padding: 6px 12px !important; border-radius: 2px !important; }
body.type-product .p-thumbnail { border: 2px solid transparent !important; border-radius: 4px !important; overflow: hidden; background: #F4F4F4; transition: border-color .15s; }
body.type-product .p-thumbnail:hover { border-color: #8A8A8A !important; }
body.type-product .p-thumbnail.highlighted { border-color: #000000 !important; }
/* cena */
body.type-product .p-final-price-wrapper .price-final, body.type-product .p-final-price-wrapper .price-final-holder { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 44px !important; line-height: 1 !important; color: #000000 !important; }
body.type-product .p-final-price-wrapper .price-standard { font-size: 16px !important; color: #7A7A7A !important; }
/* velikosti jako tlačítka (vytváří je skript z variant v adminu, původní seznam zůstává skrytě pod nimi) */
body.type-product .variant-list .variant-label { font-weight: 800 !important; font-size: 15px !important; color: #1F1F1F !important; margin-bottom: 10px !important; display: block; }
.bc-sizes { display: flex; flex-wrap: wrap; gap: 8px; margin: 2px 0 6px; }
.bc-size {
  min-width: 58px; height: 52px; padding: 0 12px; border: 1.5px solid #CFCFCF; border-radius: 4px; background: #FFFFFF; cursor: pointer;
  font-family: 'Oxanium', sans-serif; font-weight: 700; font-size: 19px; color: #1F1F1F; transition: border-color .15s, background-color .15s, color .15s;
}
.bc-size:hover { border-color: #000000; }
.bc-size:focus-visible { outline: none; box-shadow: 0 0 0 3px #FFD500; }
.bc-size.is-on { background: #000000; color: #FFD500; border-color: #000000; }
.bc-size.is-out, .bc-size:disabled { color: #B5B5B5; text-decoration: line-through; background: #FAFAFA; cursor: not-allowed; }
.bc-sizes-select { position: absolute !important; width: 1px !important; height: 1px !important; opacity: 0 !important; pointer-events: none !important; overflow: hidden; }
/* počet kusů a Do košíku */
body.type-product .p-to-cart-block { display: flex !important; flex-wrap: wrap; align-items: center; gap: 12px 16px; }
body.type-product .p-to-cart-block .add-to-cart .quantity { border: 1.5px solid #CFCFCF !important; border-radius: 4px !important; height: 56px !important; background: #FFFFFF; overflow: hidden; }
body.type-product .p-to-cart-block .add-to-cart .quantity input { border: 0 !important; font-weight: 800 !important; font-size: 17px !important; box-shadow: none !important; height: 52px !important; }
body.type-product .p-to-cart-block .add-to-cart .quantity button { border: 0 !important; background: transparent !important; color: #1F1F1F !important; height: 52px !important; }
body.type-product .p-to-cart-block .add-to-cart .quantity button:hover { background: #FFD500 !important; }
body.type-product .p-to-cart-block .add-to-cart-button {
  min-height: 56px !important; border-radius: 4px !important; border: 2px solid #FFD500 !important; background: #FFD500 !important; color: #000000 !important; box-shadow: none !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 21px !important; letter-spacing: .06em; text-transform: uppercase; transition: background-color .15s, color .15s, border-color .15s;
}
body.type-product .p-to-cart-block .add-to-cart-button:hover { background: #000000 !important; border-color: #000000 !important; color: #FFD500 !important; }
/* dostupnost a doprava */
body.type-product table.detail-parameters { border-top: 1px solid #E4E4E4; margin-top: 8px; }
body.type-product table.detail-parameters th, body.type-product table.detail-parameters td { padding: 10px 0 !important; font-size: 14px !important; }
body.type-product table.detail-parameters th { color: #5C5C5C !important; font-weight: 700 !important; }
body.type-product table.detail-parameters .availability-label { font-weight: 800 !important; }
body.type-product table.detail-parameters a { color: #000000 !important; font-weight: 700; text-decoration: none !important; border-bottom: 2px solid #FFD500; }
body.type-product .link-icons .link-icon { color: #5C5C5C !important; font-size: 13px !important; text-decoration: none !important; }
body.type-product .link-icons .link-icon:hover { color: #000000 !important; }
/* záložky Popis / Hodnocení / Diskuze */
body.type-product .shp-tabs-wrapper { margin-top: 56px !important; }
body.type-product .shp-tabs { border-bottom: 1.5px solid #000000 !important; }
body.type-product .shp-tabs .shp-tab-link {
  font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 24px !important; text-transform: uppercase; color: #7A7A7A !important;
  border: 0 !important; border-bottom: 4px solid transparent !important; background: transparent !important; text-decoration: none !important; padding: 14px 24px 10px !important;
}
body.type-product .shp-tabs .shp-tab-link:hover { color: #000000 !important; }
body.type-product .shp-tabs .shp-tab.active .shp-tab-link { color: #000000 !important; border-bottom-color: #FFD500 !important; }
body.type-product #description { font-size: 16px; line-height: 1.65; color: #1F1F1F; }
body.type-product #description h2:not([class]), body.type-product #description h3:not([class]) { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; text-transform: uppercase; color: #000000 !important; }
body.type-product #description table:not([class]) th { background: #000000 !important; color: #FFFFFF !important; font-family: 'Oxanium', sans-serif; letter-spacing: .06em; text-transform: uppercase; }
/* výhody pod nákupem jako na úvodu */
body.type-product .benefitBanner { gap: 16px; margin-top: 40px !important; }
body.type-product .benefitBanner__item { background: #F4F4F4; border-radius: 4px; padding: 18px 20px !important; align-items: center !important; gap: 14px; margin: 0 !important; flex: 1 1 0 !important; }
body.type-product .benefitBanner__picture { width: 48px !important; min-width: 48px; height: 48px !important; margin: 0 !important; }
body.type-product .benefitBanner__img { width: 48px !important; height: 48px !important; object-fit: contain; mix-blend-mode: multiply; }
body.type-product .benefitBanner__content { padding: 0 !important; margin: 0 !important; }
body.type-product .benefitBanner__title { display: block; font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 20px !important; line-height: 1.1 !important; text-transform: uppercase; color: #000000 !important; margin-bottom: 4px; }
body.type-product .benefitBanner__data { font-size: 13px !important; line-height: 1.45 !important; color: #5C5C5C !important; }
/* Související a Podobné produkty */
body.type-product .products-header {
  font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 44px !important; line-height: .95 !important; text-transform: uppercase;
  text-align: left !important; color: #000000 !important; margin: 64px 0 24px !important; padding-bottom: 14px !important; position: relative;
}
body.type-product .products-header::after { content: ""; position: absolute; left: 0; bottom: 0; width: 64px; height: 4px; background: #FFD500; }
body.type-product .products-wrapper .product .p-tools { display: flex !important; width: 100%; }
body.type-product .products-wrapper .product .p-tools .btn { flex: 1 1 auto !important; width: 100% !important; max-width: none !important; }
body.type-product .product-slider-navigation { width: 44px !important; height: 44px !important; border-radius: 50% !important; background: #000000 !important; border: 0 !important; opacity: 1 !important; z-index: 2; }
body.type-product .product-slider-navigation::before { color: #FFFFFF !important; }
body.type-product .product-slider-navigation:hover { background: #FFD500 !important; }
body.type-product .product-slider-navigation:hover::before { color: #000000 !important; }
body.type-product .product-slider-pagination .pagination-button { width: 10px !important; height: 10px !important; border-radius: 5px !important; background: #D6D6D6 !important; border: 0 !important; }
body.type-product .product-slider-pagination .pagination-button.active { width: 30px !important; background: #000000 !important; }
@media (max-width: 767px) {
  body.type-product .p-detail-inner-header h1 { font-size: 36px !important; }
  body.type-product .p-final-price-wrapper .price-final, body.type-product .p-final-price-wrapper .price-final-holder { font-size: 36px !important; }
  body.type-product .p-to-cart-block .add-to-cart-button { flex: 1 1 100%; }
  body.type-product .shp-tabs .shp-tab-link { font-size: 19px !important; padding: 12px 14px 8px !important; }
  body.type-product .benefitBanner { display: flex !important; flex-direction: column; gap: 8px; }
  body.type-product .benefitBanner__item { flex: 1 1 100% !important; padding: 14px 16px !important; }
  body.type-product .products-header { font-size: 32px !important; margin-top: 44px !important; }
  body.type-product .product-slider-navigation { display: none !important; }
}

/* detail produktu: kartičky souvisejících a podobných produktů */
body.type-product .products-wrapper .product .p { text-align: left !important; }
body.type-product .products-wrapper .product .image { display: block; background: #F4F4F4; border-radius: 4px; overflow: hidden; outline: 2px solid transparent; transition: outline-color .15s; }
body.type-product .products-wrapper .product .image img { transition: transform .35s ease; }
body.type-product .products-wrapper .product:hover .image { outline-color: #000000; }
body.type-product .products-wrapper .product:hover .image img { transform: scale(1.04); }
body.type-product .products-wrapper .product .p-in, body.type-product .products-wrapper .product .p-in-in, body.type-product .products-wrapper .product .p-bottom { text-align: left !important; padding-left: 0 !important; padding-right: 0 !important; }
body.type-product .products-wrapper .product .name, body.type-product .products-wrapper .product .name span { font-weight: 700 !important; font-size: 16px !important; line-height: 1.3 !important; color: #1F1F1F !important; text-align: left !important; min-height: 0 !important; }
body.type-product .products-wrapper .product .name:hover span { text-decoration: underline; text-decoration-color: #FFD500; text-decoration-thickness: 2px; }
body.type-product .products-wrapper .product .availability { font-size: 13px !important; text-align: left !important; }
body.type-product .products-wrapper .product .name { padding: 0 !important; }
body.type-product .products-wrapper .product .ratings-wrapper { height: auto !important; min-height: 0 !important; margin-top: 6px !important; display: block !important; }
body.type-product .products-wrapper .product .p-in { padding-top: 12px !important; }
body.type-product .products-wrapper .product .stars-placeholder { display: none !important; }
body.type-product .products-wrapper .product .p-bottom { padding-top: 8px !important; }
body.type-product .products-wrapper .product .prices { text-align: left !important; justify-content: flex-start !important; display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
body.type-product .products-wrapper .product .price-final strong { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 24px !important; color: #000000 !important; }
body.type-product .products-wrapper .product .price-standard, body.type-product .products-wrapper .product .price-standard strong { font-size: 15px !important; color: #7A7A7A !important; text-decoration: line-through; font-weight: 400 !important; }
body.type-product .products-wrapper .product .price-standard-wrapper-placeholder { display: none !important; }
/* štítky (barvy zůstávají z adminu) */
body.type-product .products-wrapper .flags .flag { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 13px !important; letter-spacing: .08em; text-transform: uppercase; padding: 5px 10px !important; border-radius: 2px !important; }
body.type-product .products-wrapper .product .p-bottom { padding-top: 12px !important; }
body.type-product .products-wrapper .product .p-bottom .btn {
  display: flex !important; width: 100%; align-items: center; justify-content: center; min-height: 46px; margin-top: 10px; padding: 0 16px !important;
  border: 2px solid #000000 !important; border-radius: 4px !important; background: #FFFFFF !important; color: #000000 !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 17px !important; letter-spacing: .06em; text-transform: uppercase; text-decoration: none !important;
  transition: background-color .15s, color .15s;
}
body.type-product .products-wrapper .product .p-bottom .btn:hover { background: #000000 !important; color: #FFFFFF !important; }
body.type-product .products-wrapper .product .p-bottom .btn-cart, body.type-product .products-wrapper .product .p-bottom .add-to-cart-button, body.type-product .products-wrapper .product .p-bottom button[type="submit"] {
  background: #FFD500 !important; border-color: #FFD500 !important; color: #000000 !important;
}
body.type-product .products-wrapper .product .p-bottom .btn-cart:hover, body.type-product .products-wrapper .product .p-bottom .add-to-cart-button:hover, body.type-product .products-wrapper .product .p-bottom button[type="submit"]:hover { background: #000000 !important; border-color: #000000 !important; color: #FFD500 !important; }
body.type-product .products-wrapper .product .availability span { font-weight: 700; }


/* ---------- Textové stránky (Doprava a platba, Obchodní podmínky, Ochrana údajů, Buď v týmu…) ---------- */
/* boční menu vzniká skriptem z odkazů „Zákaznický servis“ v zápatí (spravují se v adminu) */
body.type-page .content-inner.bc-text-layout { display: grid; grid-template-columns: 260px minmax(0, 1fr); column-gap: 64px; align-items: start; }
.bc-side { display: flex; flex-direction: column; border-top: 1.5px solid #000000; margin-top: 32px; position: sticky; top: 190px; }
.bc-side a {
  padding: 16px 0; border-bottom: 1px solid #E4E4E4; font-family: 'Oxanium', sans-serif; font-weight: 700; font-size: 20px; line-height: 1.1;
  text-transform: uppercase; text-decoration: none !important; color: #5C5C5C !important; transition: color .15s, padding-left .15s;
}
.bc-side a:hover { color: #000000 !important; padding-left: 6px; }
.bc-side a.is-on { color: #000000 !important; font-weight: 800; box-shadow: inset 4px 0 0 #FFD500; padding-left: 14px; }
body.bc-text-page .pageArticleDetail { max-width: 860px; }
body.bc-text-page .pageArticleDetail > header h1 { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 80px !important; line-height: .92 !important; text-transform: uppercase; color: #000000 !important; margin: 24px 0 28px !important; }
body.bc-text-page .pageArticleDetail > header + div { font-size: 16px !important; line-height: 1.7 !important; color: #1F1F1F; }
body.bc-text-page .pageArticleDetail > header + div :is(p, li, span, td) { text-align: left !important; font-family: 'Oxanium', sans-serif !important; }
body.bc-text-page .pageArticleDetail > header + div p { margin: 0 0 14px !important; }
/* nadpisy uvnitř textu (tučný řádek bez dalšího textu i skutečné nadpisy) */
body.bc-text-page .pageArticleDetail > header + div :is(h2, h3, h4),
body.bc-text-page .pageArticleDetail > header + div p:has(> strong:only-child),
body.bc-text-page .pageArticleDetail > header + div p:has(> span:only-child > strong:only-child) {
  font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 30px !important; line-height: 1.05 !important; text-transform: uppercase; color: #000000 !important; margin: 36px 0 14px !important;
}
body.bc-text-page .pageArticleDetail > header + div p:has(> strong:only-child) *, body.bc-text-page .pageArticleDetail > header + div p:has(> span:only-child > strong:only-child) * { font: inherit !important; color: inherit !important; text-transform: inherit; }
body.bc-text-page .pageArticleDetail > header + div a { color: #000000 !important; font-weight: 700; text-decoration: none !important; border-bottom: 2px solid #FFD500; }
body.bc-text-page .pageArticleDetail > header + div ul { list-style: none !important; padding-left: 0 !important; margin: 0 0 18px !important; }
body.bc-text-page .pageArticleDetail > header + div ul li { position: relative; padding-left: 22px !important; margin-bottom: 6px; }
body.bc-text-page .pageArticleDetail > header + div ul li::before { content: "" !important; position: absolute; left: 0; top: .7em; width: 10px; height: 4px; background: #FFD500; }
/* tabulky: přes celou šířku, černá hlavička */
body.bc-text-page .pageArticleDetail > header + div table { width: 100% !important; max-width: 100% !important; border-collapse: collapse !important; border: 0 !important; margin: 0 0 20px !important; font-size: 15px; }
body.bc-text-page .pageArticleDetail > header + div table td, body.bc-text-page .pageArticleDetail > header + div table th { border: 0 !important; border-bottom: 1px solid #E4E4E4 !important; padding: 14px 16px !important; background: transparent !important; text-align: left !important; }
body.bc-text-page .pageArticleDetail > header + div table td:last-child:not(:first-child) { text-align: right !important; font-weight: 800; }
body.bc-text-page .pageArticleDetail > header + div table tr:first-child td, body.bc-text-page .pageArticleDetail > header + div table th {
  background: #000000 !important; color: #FFFFFF !important; font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 16px !important; letter-spacing: .06em; text-transform: uppercase; border-bottom: 0 !important;
}
body.bc-text-page .pageArticleDetail > header + div table tr:first-child td * { color: inherit !important; font: inherit !important; }
body.bc-text-page .pageArticleDetail > header + div img { max-width: 100%; height: auto; border-radius: 4px; }
@media (max-width: 991px) {
  body.type-page .content-inner.bc-text-layout { display: block; }
  .bc-side { position: static; flex-direction: row; flex-wrap: wrap; gap: 8px; border-top: 0; margin: 16px 0 0; }
  .bc-side a { border: 1.5px solid #E4E4E4; border-radius: 4px; padding: 10px 14px; font-size: 17px; }
  .bc-side a:hover { padding-left: 14px; }
  .bc-side a.is-on { box-shadow: none; background: #000000; color: #FFD500 !important; border-color: #000000; padding-left: 14px; }
}
@media (max-width: 767px) {
  body.bc-text-page .pageArticleDetail > header h1 { font-size: 48px !important; }
  body.bc-text-page .pageArticleDetail > header + div :is(h2, h3, h4), body.bc-text-page .pageArticleDetail > header + div p:has(> strong:only-child), body.bc-text-page .pageArticleDetail > header + div p:has(> span:only-child > strong:only-child) { font-size: 24px !important; }
  body.bc-text-page .pageArticleDetail > header + div table td, body.bc-text-page .pageArticleDetail > header + div table th { padding: 10px 10px !important; }
}
/* Hodnocení obchodu: nadpis písmem webu */
body.in-hodnoceni-obchodu .content-inner > h1 { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 80px !important; line-height: .92 !important; text-transform: uppercase; color: #000000 !important; margin: 24px 0 28px !important; }
body.in-hodnoceni-obchodu .rate-wrapper .btn, body.in-hodnoceni-obchodu .listingControls .btn { border-radius: 4px !important; background: #FFD500 !important; border: 2px solid #FFD500 !important; color: #000000 !important; font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 18px !important; text-transform: uppercase; letter-spacing: .06em; }
body.in-hodnoceni-obchodu .rate-wrapper .btn:hover, body.in-hodnoceni-obchodu .listingControls .btn:hover { background: #000000 !important; border-color: #000000 !important; color: #FFD500 !important; }
@media (max-width: 767px) { body.in-hodnoceni-obchodu .content-inner > h1 { font-size: 48px !important; } }

/* ---------- Výsledky vyhledávání ---------- */
body.type-search #content h2:first-of-type { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 64px !important; line-height: .95 !important; text-transform: uppercase; color: #000000 !important; margin: 24px 0 24px !important; }
body.type-search #content h2:first-of-type .highlight { color: #000000 !important; background: #FFD500; padding: 0 10px; border-radius: 2px; }
body.type-search .search-results-group { background: #F4F4F4; border-radius: 4px; padding: 20px 24px !important; margin-bottom: 28px !important; border: 0 !important; }
body.type-search .search-results-group h4, body.type-search .search-products-heading { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 24px !important; text-transform: uppercase; color: #000000 !important; margin: 0 0 12px !important; }
body.type-search .search-products-heading { font-size: 34px !important; margin-top: 12px !important; }
body.type-search .search-results-group-list ul { display: flex !important; flex-wrap: wrap; gap: 8px; padding: 0 !important; margin: 0 !important; list-style: none !important; }
body.type-search .search-results-group-list li { margin: 0 !important; padding: 0 !important; }
body.type-search .search-results-group-list li::before { display: none !important; }
body.type-search .search-results-group-list a {
  display: inline-flex; align-items: center; min-height: 42px; padding: 0 16px; border-radius: 4px; background: #FFFFFF; border: 1.5px solid #E4E4E4;
  font-family: 'Oxanium', sans-serif; font-weight: 700; font-size: 18px; text-transform: uppercase; color: #000000 !important; text-decoration: none !important; transition: background-color .15s, border-color .15s;
}
body.type-search .search-results-group-list a:hover { background: #FFD500; border-color: #FFD500; }
@media (max-width: 767px) { body.type-search #content h2:first-of-type { font-size: 40px !important; } }

/* vyhledávání: kartičky jako v kategorii */
body.type-search #products .product .p { text-align: left !important; }
body.type-search #products .product .image { display: block; background: #F4F4F4; border-radius: 4px; overflow: hidden; outline: 2px solid transparent; transition: outline-color .15s; }
body.type-search #products .product .image img { transition: transform .35s ease; }
body.type-search #products .product:hover .image { outline-color: #000000; }
body.type-search #products .product:hover .image img { transform: scale(1.04); }
body.type-search #products .product .p-in, body.type-search #products .product .p-in-in, body.type-search #products .product .p-bottom { text-align: left !important; padding-left: 0 !important; padding-right: 0 !important; }
body.type-search #products .product .name, body.type-search #products .product .name span { font-weight: 700 !important; font-size: 16px !important; line-height: 1.3 !important; color: #1F1F1F !important; text-align: left !important; min-height: 0 !important; }
body.type-search #products .product .name:hover span { text-decoration: underline; text-decoration-color: #FFD500; text-decoration-thickness: 2px; }
body.type-search #products .product .availability { font-size: 13px !important; text-align: left !important; }
body.type-search #products .product .name { padding: 0 !important; }
body.type-search #products .product .ratings-wrapper { height: auto !important; min-height: 0 !important; margin-top: 6px !important; display: block !important; }
body.type-search #products .product .p-in { padding-top: 12px !important; }
body.type-search #products .product .stars-placeholder { display: none !important; }
body.type-search #products .product .p-bottom { padding-top: 8px !important; }
body.type-search #products .product .prices { text-align: left !important; justify-content: flex-start !important; display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
body.type-search #products .product .price-final strong { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 24px !important; color: #000000 !important; }
body.type-search #products .product .price-standard, body.type-search #products .product .price-standard strong { font-size: 15px !important; color: #7A7A7A !important; text-decoration: line-through; font-weight: 400 !important; }
body.type-search #products .product .price-standard-wrapper-placeholder { display: none !important; }
/* tlačítka na kartičkách: Detail s černým obrysem, Do košíku žlutě */
body.type-search #products .product .p-bottom { padding-top: 12px !important; }
body.type-search #products .product .p-bottom .btn {
  display: flex !important; width: 100%; align-items: center; justify-content: center; min-height: 46px; margin-top: 10px; padding: 0 16px !important;
  border: 2px solid #000000 !important; border-radius: 4px !important; background: #FFFFFF !important; color: #000000 !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 17px !important; letter-spacing: .06em; text-transform: uppercase; text-decoration: none !important;
  transition: background-color .15s, color .15s;
}
body.type-search #products .product .p-bottom .btn:hover { background: #000000 !important; color: #FFFFFF !important; }
body.type-search #products .product .p-bottom .btn-cart, body.type-search #products .product .p-bottom .add-to-cart-button, body.type-search #products .product .p-bottom button[type="submit"] {
  background: #FFD500 !important; border-color: #FFD500 !important; color: #000000 !important;
}
body.type-search #products .product .p-bottom .btn-cart:hover, body.type-search #products .product .p-bottom .add-to-cart-button:hover, body.type-search #products .product .p-bottom button[type="submit"]:hover { background: #000000 !important; border-color: #000000 !important; color: #FFD500 !important; }


/* ---------- Přihlášení: stránka /login/ a okno v hlavičce ---------- */
body.in-login .content-inner > h1 { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 80px !important; line-height: .92 !important; text-transform: uppercase; color: #000000 !important; margin: 24px 0 28px !important; }
body.in-login #formLogin { max-width: 520px; }
#login .popup-widget-inner { border-top: 4px solid #FFD500; }
#login #loginHeading { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 30px !important; line-height: 1 !important; text-transform: uppercase; color: #000000 !important; }
:is(#login, body.in-login #content) .form-control {
  border: 1.5px solid #CFCFCF !important; border-radius: 4px !important; background: #FFFFFF !important; color: #1F1F1F !important; box-shadow: none !important; transition: border-color .15s, box-shadow .15s;
}
:is(#login, body.in-login #content) .form-control:hover { border-color: #8A8A8A !important; }
:is(#login, body.in-login #content) .form-control:focus { border-color: #000000 !important; box-shadow: 0 0 0 3px #FFD500 !important; outline: none !important; }
:is(#login, body.in-login #content) .smart-label-wrapper label, :is(#login, body.in-login #content) .smart-label-wrapper label span { color: #5C5C5C !important; font-weight: 600 !important; }
:is(#login, body.in-login #content) .submit-wrapper .btn {
  width: 100%; min-height: 54px !important; border-radius: 4px !important; border: 2px solid #FFD500 !important; background: #FFD500 !important; color: #000000 !important; box-shadow: none !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 20px !important; letter-spacing: .06em; text-transform: uppercase; transition: background-color .15s, color .15s, border-color .15s;
}
:is(#login, body.in-login #content) .submit-wrapper .btn:hover { background: #000000 !important; border-color: #000000 !important; color: #FFD500 !important; }
:is(#login, body.in-login #content) .alternative-links { display: flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
:is(#login, body.in-login #content) .alternative-links a { color: #000000 !important; font-weight: 700; font-size: 15px; text-decoration: none !important; border-bottom: 2px solid #FFD500; }
:is(#login, body.in-login #content) .social-login-buttons-divider span { color: #7A7A7A !important; font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
:is(#login, body.in-login #content) .login-btn { border: 2px solid #000000 !important; border-radius: 4px !important; background: #FFFFFF !important; color: #000000 !important; min-height: 50px; overflow: hidden; transition: background-color .15s; }
:is(#login, body.in-login #content) .login-btn strong { color: #000000 !important; font-weight: 800 !important; }
:is(#login, body.in-login #content) .login-btn:hover { background: #FFD500 !important; }
:is(#login, body.in-login #content) .login-btn > span { background-color: transparent !important; border: 0 !important; }
:is(#login, body.in-login #content) .login-btn.seznam .login-seznam-icon { background-color: #CC0000 !important; }
@media (max-width: 767px) { body.in-login .content-inner > h1 { font-size: 52px !important; } }

/* ---------- Mega menu na PC: sloupce s nadpisem, podkategorie pod sebou, bez ikon ---------- */
@media (min-width: 768px) {
  #navigation .menu-level-2 { border-top: 0 !important; border-bottom: 4px solid #FFD500 !important; box-shadow: 0 24px 40px rgba(0,0,0,.18) !important; padding: 36px 32px 40px !important; align-items: flex-start !important; }
  #navigation .menu-level-2 > li { align-items: flex-start !important; padding: 0 16px 0 0 !important; }
  #navigation .menu-level-2 > li > a.menu-image { display: none !important; }
  #navigation .menu-level-2 > li > div > a, #navigation .menu-level-2 > li > div > a span {
    font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 22px !important; line-height: 1.1 !important; text-transform: uppercase; color: #000000 !important; text-decoration: none !important;
  }
  #navigation .menu-level-2 > li > div > a:hover span { text-decoration: underline !important; text-decoration-color: #FFD500 !important; text-decoration-thickness: 3px !important; }
  #navigation .menu-level-3 { display: flex !important; flex-direction: column; gap: 0; margin-top: 8px !important; padding: 0 !important; }
  #navigation .menu-level-3 li { display: block !important; margin: 0 !important; padding: 0 !important; }
  #navigation .menu-level-3 li::after { display: none !important; content: none !important; }
  #navigation .menu-level-3 a { display: block; padding: 6px 0 !important; font-family: 'Oxanium', sans-serif !important; font-weight: 600 !important; font-size: 15px !important; color: #1F1F1F !important; text-transform: none !important; text-decoration: none !important; }
  #navigation .menu-level-3 a:hover { color: #000000 !important; text-decoration: underline !important; text-decoration-color: #FFD500 !important; text-decoration-thickness: 3px !important; }
}

/* ---------- Můj účet (vidí jen přihlášený zákazník; styl podle formulářů a tabulek webu) ---------- */
body:has(.client-center-box) #content h1 { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 64px !important; line-height: .95 !important; text-transform: uppercase; color: #000000 !important; }
body:has(.client-center-box) #content h2 { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 28px !important; text-transform: uppercase; color: #000000 !important; }
body:has(.client-center-box) #content table { border-collapse: collapse; }
body:has(.client-center-box) #content table th, body:has(.client-center-box) #content table thead td { background: #000000 !important; color: #FFFFFF !important; font-family: 'Oxanium', sans-serif; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
body:has(.client-center-box) #content table td { border-bottom: 1px solid #E4E4E4 !important; }
body:has(.client-center-box) #content .form-control { border: 1.5px solid #CFCFCF !important; border-radius: 4px !important; box-shadow: none !important; }
body:has(.client-center-box) #content .form-control:focus { border-color: #000000 !important; box-shadow: 0 0 0 3px #FFD500 !important; }
body:has(.client-center-box) #content .btn-primary, body:has(.client-center-box) #content .btn-conversion { border-radius: 4px !important; background: #FFD500 !important; border: 2px solid #FFD500 !important; color: #000000 !important; font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; text-transform: uppercase; letter-spacing: .06em; }
body:has(.client-center-box) #content .btn-primary:hover, body:has(.client-center-box) #content .btn-conversion:hover { background: #000000 !important; border-color: #000000 !important; color: #FFD500 !important; }
body:has(.client-center-box) .sidebar a, body:has(.client-center-box) .client-menu a { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 18px !important; text-transform: uppercase; }

/* doladění: podkategorie v megamenu pod sebou (šablona je zalamuje do řádku s čárkami), tabulky bez mezer, obrázek v odkazu bez podtržení */
@media (min-width: 768px) {
  #navigation .menu-level-3 { flex-wrap: nowrap !important; height: auto !important; max-height: none !important; align-items: flex-start !important; }
  #navigation .menu-level-3 li { font-size: 0 !important; line-height: 0 !important; }
  #navigation .menu-level-3 li a { line-height: 1.4 !important; }
}
body.bc-text-page .pageArticleDetail > header + div table { border-spacing: 0 !important; }
body.bc-text-page .pageArticleDetail > header + div a:has(img) { border-bottom: 0 !important; }

/* ---------- Detail: tabulka „Doplňkové parametry“ v Popisu bez černé hlavičky (byla nečitelná) ---------- */
body.type-product #description table.detail-parameters th, body.type-product .extended-description table th, body.type-product table.detail-parameters th {
  background: transparent !important; color: #5C5C5C !important; font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 14px !important; letter-spacing: 0 !important; text-transform: none !important;
}
body.type-product #description table.detail-parameters th *, body.type-product table.detail-parameters th * { color: inherit !important; background: transparent !important; }

/* ---------- Můj účet: menu vlevo jako v návrhu ---------- */
body:has(.client-center-box) .client-center-box { border: 0 !important; background: transparent !important; padding: 0 !important; box-shadow: none !important; }
body:has(.client-center-box) .client-center-box ul { list-style: none !important; padding: 12px 0 0 !important; margin: 0 !important; display: flex; flex-direction: column; gap: 4px; border-top: 1.5px solid #000000; }
body:has(.client-center-box) .client-center-box li { padding: 0 !important; margin: 0 !important; }
body:has(.client-center-box) .client-center-box li::before { display: none !important; content: none !important; }
body:has(.client-center-box) .client-center-box li a:not(.btn) {
  display: block; padding: 11px 14px !important; border-radius: 4px; font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 19px !important;
  text-transform: uppercase; color: #5C5C5C !important; text-decoration: none !important; transition: background-color .15s, color .15s;
}
body:has(.client-center-box) .client-center-box li a:not(.btn):hover { background: #F4F4F4; color: #000000 !important; }
body:has(.client-center-box) .client-center-box li.active a:not(.btn) { background: #000000; color: #FFD500 !important; }
body:has(.client-center-box) .client-center-box li.logout { margin: 4px 0 10px !important; }
body:has(.client-center-box) .client-center-box li.logout .btn { border-radius: 4px !important; border: 2px solid #000000 !important; background: #FFFFFF !important; color: #000000 !important; font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 16px !important; text-transform: uppercase; letter-spacing: .06em; padding: 8px 16px !important; }
body:has(.client-center-box) .client-center-box li.logout .btn:hover { background: #000000 !important; color: #FFFFFF !important; }
body:has(.client-center-box) #content table td:first-child a { color: #000000 !important; font-weight: 800; text-decoration: none !important; border-bottom: 2px solid #FFD500; }
body:has(.client-center-box) #content table .cell--price { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 18px !important; }
body:has(.client-center-box) #content .client-link a { color: #000000 !important; font-weight: 700; text-decoration: none !important; border-bottom: 2px solid #FFD500; }

/* ---------- Děkovná stránka po objednávce ---------- */
body.in-dekujeme .content-inner { font-size: 17px; line-height: 1.6; }
body.in-dekujeme h1.order-summary-heading {
  position: relative; overflow: hidden; background: #000000; color: #FFFFFF !important; border-radius: 4px; margin: 16px 0 28px !important;
  padding: 140px 48px 96px !important; font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 88px !important; line-height: .92 !important; text-transform: uppercase;
}
body.in-dekujeme h1.order-summary-heading::before {
  content: ""; position: absolute; left: 48px; top: 48px; width: 64px; height: 64px; border-radius: 50%;
  background: #FFD500 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.6'%3E%3Cpath d='M5 12.5 L10 17 L19 7'/%3E%3C/svg%3E") center/32px no-repeat;
}
body.in-dekujeme h1.order-summary-heading::after {
  content: "UVIDÍME SE NA STARTU  /  UVIDÍME SE NA STARTU  /  UVIDÍME SE NA STARTU  /  UVIDÍME SE NA STARTU  /  UVIDÍME SE NA STARTU  /  UVIDÍME SE NA STARTU";
  white-space: pre; position: absolute; left: -20px; right: -20px; bottom: 22px; transform: rotate(-1.5deg); overflow: hidden;
  background: #FFD500; color: #000000; font-size: 18px; letter-spacing: .08em; padding: 6px 0; line-height: 1.2;
}
body.in-dekujeme .content-inner > span { font-weight: 800; color: #000000; }
body.in-dekujeme .recapitulation-wrapper { margin-top: 28px; }
body.in-dekujeme .co-box > h4.order-icon {
  font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 34px !important; line-height: 1 !important; text-transform: uppercase;
  text-align: left !important; color: #000000 !important; margin: 0 0 18px !important; padding-bottom: 12px !important; position: relative;
}
body.in-dekujeme .co-box > h4.order-icon::before { display: none !important; }
body.in-dekujeme .co-box > h4.order-icon::after { content: ""; position: absolute; left: 0; bottom: 0; width: 56px; height: 4px; background: #FFD500; }
body.in-dekujeme .co-payment-method .row { margin: 0 !important; background: #F4F4F4; border-radius: 4px; padding: 20px 8px; }
body.in-dekujeme .recapitulation-table { margin-bottom: 8px !important; background: transparent !important; }
body.in-dekujeme .recapitulation-table th, body.in-dekujeme .recapitulation-table td { border: 0 !important; padding: 7px 0 !important; font-size: 15px !important; background: transparent !important; }
body.in-dekujeme .recapitulation-table th { color: #5C5C5C !important; font-weight: 600 !important; }
body.in-dekujeme .recapitulation-table td { color: #000000 !important; font-weight: 800 !important; }
body.in-dekujeme .recapitulation-table-payment { display: flex; align-items: center; gap: 32px; flex-wrap: wrap; }
body.in-dekujeme .recapitulation-table-payment .qrcode { background: #FFFFFF; padding: 10px; border-radius: 4px; border: 1.5px solid #000000; }
body.in-dekujeme .co-order { margin-top: 40px; }
body.in-dekujeme .cart-table .cart-table-header td { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 15px !important; letter-spacing: .08em; text-transform: uppercase; color: #7A7A7A !important; border-bottom: 1.5px solid #000000 !important; }
body.in-dekujeme .cart-table td { border-bottom: 1px solid #E4E4E4 !important; }
body.in-dekujeme .cart-table .cart-p-image img { border-radius: 4px; background: #F4F4F4; }
body.in-dekujeme .cart-table .p-name a { color: #1F1F1F !important; font-weight: 800 !important; text-decoration: none !important; }
body.in-dekujeme .cart-table .p-total, body.in-dekujeme .cart-table .price-final { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 22px !important; color: #000000 !important; }
body.in-dekujeme .order-summary-item.total, body.in-dekujeme .order-summary-item.summary-thx { border: 0 !important; padding: 4px 0 !important; color: #5C5C5C; }
body.in-dekujeme .order-summary-item.summary-thx { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 28px !important; text-transform: uppercase; color: #000000 !important; }
body.in-dekujeme .order-complete-links { border-top: 1px solid #E4E4E4; margin-top: 20px; padding-top: 24px; }
body.in-dekujeme .order-complete-links p { display: flex; flex-wrap: wrap; gap: 12px 24px; align-items: center; }
body.in-dekujeme .order-complete-links .btn {
  min-height: 56px !important; padding: 0 28px !important; border-radius: 4px !important; border: 2px solid #FFD500 !important; background: #FFD500 !important; color: #000000 !important;
  display: inline-flex !important; align-items: center; font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 20px !important; letter-spacing: .06em; text-transform: uppercase; text-decoration: none !important;
}
body.in-dekujeme .order-complete-links .btn:hover { background: #000000 !important; border-color: #000000 !important; color: #FFD500 !important; }
body.in-dekujeme .order-complete-links a:not(.btn) { color: #000000 !important; font-weight: 700; text-decoration: none !important; border-bottom: 2px solid #FFD500; }
/* platba kartou: tlačítko pro zaplacení (pokud ho Shoptet ukáže) žlutě */
body.in-dekujeme #content .btn-conversion, body.in-dekujeme #content .payment-button .btn { border-radius: 4px !important; background: #FFD500 !important; border: 2px solid #FFD500 !important; color: #000000 !important; font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; text-transform: uppercase; letter-spacing: .06em; }
@media (max-width: 767px) {
  body.in-dekujeme h1.order-summary-heading { font-size: 52px !important; padding: 110px 20px 84px !important; }
  body.in-dekujeme h1.order-summary-heading::before { left: 20px; top: 28px; width: 56px; height: 56px; background-size: 28px; }
  body.in-dekujeme .co-box > h4.order-icon { font-size: 28px !important; }
  body.in-dekujeme .recapitulation-table-payment { gap: 12px; }
  body.in-dekujeme .order-complete-links .btn { width: 100%; justify-content: center; }
}

/* děkovná stránka – objednávka čeká na zaplacení kartou: místo fajfky ikona karty, výrazné tlačítko Zaplatit */
body.in-dekujeme:has(#onlinePaymentButton) h1.order-summary-heading::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2.2'%3E%3Crect x='3' y='6' width='18' height='12' rx='2'/%3E%3Cpath d='M3 10 H21 M7 15 H11'/%3E%3C/svg%3E");
}
body.in-dekujeme .reca-payment-wrap { background: #FFFBE0; border: 2px solid #FFD500; border-radius: 4px; padding: 20px 24px; margin: 0 0 12px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; }
body.in-dekujeme .reca-payment-wrap p { margin: 0 !important; font-weight: 700; color: #1F1F1F; }
body.in-dekujeme #onlinePaymentButton {
  min-height: 60px !important; padding: 0 32px !important; border-radius: 4px !important; border: 2px solid #FFD500 !important; background: #FFD500 !important; color: #000000 !important; box-shadow: none !important;
  display: inline-flex !important; align-items: center; font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 22px !important; letter-spacing: .06em; text-transform: uppercase; text-decoration: none !important;
}
body.in-dekujeme #onlinePaymentButton:hover { background: #000000 !important; border-color: #000000 !important; color: #FFD500 !important; }
@media (max-width: 767px) { body.in-dekujeme #onlinePaymentButton { width: 100%; justify-content: center; } }

/* ---------- Kontakty v2: sjednocené karty, nadpis formuláře, animace ---------- */
/* hlavička: nápis najede, páska jede dokola */
body.in-kontakty .pageArticleDetail > header { padding: 64px 48px 88px; }
body.in-kontakty .pageArticleDetail > header h1 { animation: bcKUp .7s cubic-bezier(.2,.8,.2,1) both; }
body.in-kontakty .pageArticleDetail > header h1::before { animation: bcKUp .7s .1s cubic-bezier(.2,.8,.2,1) both; }
body.in-kontakty .pageArticleDetail > header::after {
  content: "VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  VYBAVENO NA TRAŤ  /  "; left: -40px; right: auto; width: max-content; padding: 6px 0; font-size: 17px;
  transform: rotate(-1.5deg); animation: bcKTape 28s linear infinite;
}
@keyframes bcKTape { from { transform: rotate(-1.5deg) translateX(0); } to { transform: rotate(-1.5deg) translateX(-50%); } }
@keyframes bcKUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }
/* karty vlevo: popisek malý šedý, údaj velký černý (e-mail i telefon stejně) */
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href^="mailto:"]),
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href*="tel"]) { font-size: 15px !important; color: #7A7A7A !important; font-weight: 600; }
body.in-kontakty .pageArticleDetail > header + div > p a[href*="tel"] > span { font-size: 15px !important; font-weight: 600 !important; color: #7A7A7A !important; }
body.in-kontakty .pageArticleDetail > header + div > p a[href*="tel"] > span > span { font-size: 22px !important; font-weight: 800 !important; color: #000000 !important; margin-left: 4px; }
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href^="mailto:"]) a { margin-left: 4px; }
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href^="mailto:"]),
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href*="tel"]) { cursor: pointer; transition: border-color .15s, transform .2s, box-shadow .2s; }
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href^="mailto:"]):hover,
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href*="tel"]):hover { transform: translateY(-2px); box-shadow: 0 10px 24px rgba(0,0,0,.08); }
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href^="mailto:"]):hover::before,
body.in-kontakty .pageArticleDetail > header + div > p:has(a[href*="tel"]):hover::before { animation: bcKWiggle .5s ease; }
@keyframes bcKWiggle { 0%,100% { transform: rotate(0); } 25% { transform: rotate(-8deg); } 75% { transform: rotate(8deg); } }
/* všechny bloky postupně najedou */
body.in-kontakty .pageArticleDetail > header + div > * { animation: bcKUp .6s cubic-bezier(.2,.8,.2,1) backwards; }
body.in-kontakty .pageArticleDetail > header + div > :nth-child(2) { animation-delay: .15s; }
body.in-kontakty .pageArticleDetail > header + div > :nth-child(3) { animation-delay: .25s; }
body.in-kontakty .pageArticleDetail > header + div > :nth-child(4) { animation-delay: .35s; }
body.in-kontakty .pageArticleDetail > header + div > :nth-child(5) { animation-delay: .45s; }
body.in-kontakty .pageArticleDetail > header + div > :nth-child(n+6) { animation-delay: .55s; }
/* úvodní věta formuláře jako normální text, nad ní nadpis Napiš nám */
body.in-kontakty .pageArticleDetail > header + div > p:has(+ form) {
  font-family: 'Oxanium', sans-serif !important; font-weight: 600 !important; font-size: 16px !important; line-height: 1.55 !important; text-transform: none !important; color: #3D3D3D !important;
}
body.in-kontakty .pageArticleDetail > header + div > p:has(+ form)::before {
  content: "Napiš nám"; display: block; margin-bottom: 8px; font-family: 'Oxanium', sans-serif; font-weight: 800; font-size: 40px; line-height: 1; text-transform: uppercase; color: #000000;
}
body.in-kontakty .pageArticleDetail > header + div > form { border-top: 4px solid #FFD500; }
/* mapa: černobílá, po najetí barevná */
body.in-kontakty .pageArticleDetail > header + div > p:has(iframe) { border-radius: 4px; overflow: hidden; }
body.in-kontakty .pageArticleDetail > header + div > p:has(iframe) iframe { filter: grayscale(1) contrast(1.05); transition: filter .4s; }
body.in-kontakty .pageArticleDetail > header + div > p:has(iframe):hover iframe { filter: none; }
@media (max-width: 767px) {
  body.in-kontakty .pageArticleDetail > header { padding: 36px 20px 64px; }
  body.in-kontakty .pageArticleDetail > header + div > p a[href*="tel"] > span > span { font-size: 18px !important; }
  body.in-kontakty .pageArticleDetail > header + div > p:has(+ form)::before { font-size: 32px; }
  body.in-kontakty .pageArticleDetail > header + div > p:has(iframe) iframe { filter: none; height: 260px; }
}
@media (prefers-reduced-motion: reduce) {
  body.in-kontakty .pageArticleDetail *, body.in-kontakty .pageArticleDetail *::before, body.in-kontakty .pageArticleDetail *::after,
  body.in-kontakty .pageArticleDetail > header::after { animation: none !important; transition: none !important; }
}

/* ---------- Detail produktu na mobilu: nadpis a rozbalovací záložky písmem webu ---------- */
body.type-product .p-detail-inner-header-mobile .h1 {
  font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 38px !important; line-height: .95 !important;
  text-transform: uppercase; color: #000000 !important; margin: 8px 0 10px !important;
}
body.type-product .p-detail-inner-header-mobile .ratings-and-brand a { color: #000000 !important; font-weight: 700; text-decoration: none !important; border-bottom: 2px solid #FFD500; }
body.type-product .shp-accordion { border-top: 1.5px solid #000000 !important; }
body.type-product .shp-accordion .shp-accordion-link {
  font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 26px !important; text-transform: uppercase; color: #000000 !important; text-decoration: none !important;
}
body.type-product .shp-accordion.active .shp-accordion-link { box-shadow: inset 0 -4px 0 #FFD500; }
body.type-product .extended-description > strong:first-child, body.type-product .extended-description h4 { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 24px !important; text-transform: uppercase; color: #000000 !important; }

/* ---------- Kontakty v3 podle návrhu (rozložení skládá skript z textu stránky v adminu) ---------- */
body.bc-k-ready .content-inner > .pageArticleDetail { display: none !important; }
/* černá hlavička přes celou šířku */
.bc-k-hero { position: relative; overflow: hidden; background: #000000; color: #FFFFFF; width: 100vw; margin-left: calc(50% - 50vw); margin-top: 8px; }
.bc-k-hero-in { max-width: 1280px; margin: 0 auto; padding: 56px 32px 118px; display: flex; flex-direction: column; gap: 16px; }
.bc-k-eyebrow { font-family: 'Oxanium', sans-serif; font-weight: 700; font-size: 14px; letter-spacing: .16em; text-transform: uppercase; color: #FFD500; animation: bcKUp .6s .05s cubic-bezier(.2,.8,.2,1) backwards; }
.bc-k-h1 { margin: 0 !important; font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 104px !important; line-height: .92 !important; text-transform: uppercase; color: #FFFFFF !important; animation: bcKUp .7s .12s cubic-bezier(.2,.8,.2,1) backwards; }
.bc-k-lead { margin: 0 !important; max-width: 560px; font-size: 18px; line-height: 1.55; color: #D9D9D9; animation: bcKUp .7s .22s cubic-bezier(.2,.8,.2,1) backwards; }
.bc-k-tape { position: absolute; left: -40px; right: -40px; bottom: 36px; transform: rotate(-2deg); background: #FFD500; color: #000000; padding: 10px 0; white-space: nowrap; overflow: hidden; }
.bc-k-tape span { display: inline-block; white-space: pre; font-family: 'Oxanium', sans-serif; font-weight: 800; font-style: italic; font-size: 22px; letter-spacing: .06em; animation: bcKTape2 30s linear infinite; }
@keyframes bcKTape2 { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@keyframes bcKUp { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }
/* dva sloupce: kontakty vlevo, formulář vpravo */
.bc-k-grid { display: flex; gap: 48px; flex-wrap: wrap; align-items: flex-start; padding: 64px 0 88px; }
.bc-k-left { flex: 1 1 420px; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.bc-k-right { flex: 1 1 520px; min-width: 0; display: flex; flex-direction: column; gap: 20px; animation: bcKUp .7s .3s cubic-bezier(.2,.8,.2,1) backwards; }
.bc-k-left > * { animation: bcKUp .6s cubic-bezier(.2,.8,.2,1) backwards; }
.bc-k-left > :nth-child(1) { animation-delay: .15s; } .bc-k-left > :nth-child(2) { animation-delay: .25s; } .bc-k-left > :nth-child(3) { animation-delay: .35s; } .bc-k-left > :nth-child(n+4) { animation-delay: .45s; }
/* karty e-mail / telefon / sítě */
.bc-k-card { display: flex; gap: 18px; align-items: center; text-decoration: none !important; color: #1F1F1F !important; border: 1.5px solid #E4E4E4; border-radius: 4px; padding: 28px; background: #FFFFFF; transition: border-color .15s, transform .2s, box-shadow .2s; }
.bc-k-card:hover { border-color: #000000; transform: translateY(-2px); box-shadow: 0 10px 24px rgba(0,0,0,.08); }
.bc-k-ico { flex: 0 0 56px; width: 56px; height: 56px; border-radius: 4px; background: #FFD500; display: flex; align-items: center; justify-content: center; }
.bc-k-card:hover .bc-k-ico { animation: bcKWiggle .5s ease; }
@keyframes bcKWiggle { 0%,100% { transform: rotate(0); } 25% { transform: rotate(-8deg); } 75% { transform: rotate(8deg); } }
.bc-k-card-t { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.bc-k-lbl { font-size: 14px; color: #5C5C5C; }
.bc-k-card-t b { font-size: 22px; font-weight: 800; color: #000000; overflow-wrap: anywhere; }
/* boxy: adresa s mapou, sítě */
.bc-k-box { border: 1.5px solid #E4E4E4; border-radius: 4px; padding: 28px; display: flex; flex-direction: column; gap: 14px; }
.bc-k-eyebrow-g { font-family: 'Oxanium', sans-serif; font-weight: 700; font-size: 14px; letter-spacing: .16em; text-transform: uppercase; color: #7A7A7A; }
.bc-k-place { font-size: 20px; font-weight: 800; color: #000000; }
.bc-k-addr { font-size: 15px; line-height: 1.6; color: #1F1F1F; }
.bc-k-map { border-radius: 4px; overflow: hidden; background: #F4F4F4; aspect-ratio: 16 / 7; }
.bc-k-map iframe { width: 100% !important; height: 100% !important; border: 0 !important; display: block; filter: grayscale(1) contrast(1.05); transition: filter .4s; }
.bc-k-map:hover iframe { filter: none; }
.bc-k-social { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 200px), 1fr)); gap: 12px; }
.bc-k-social .bc-k-card { padding: 16px 18px; gap: 14px; }
.bc-k-social .bc-k-ico { flex-basis: 44px; width: 44px; height: 44px; }
.bc-k-social .bc-k-card-t b { font-size: 17px; }
/* formulář: nadpis, jméno a e-mail vedle sebe, bez šedého podkladu */
.bc-k-h2 { margin: 0 !important; font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 52px !important; line-height: .92 !important; text-transform: uppercase; color: #000000 !important; }
.bc-k-right #formContact { background: transparent !important; padding: 0 !important; border: 0 !important; max-width: none !important; width: 100% !important; }
.bc-k-right #formContact > fieldset { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 0 !important; padding: 0 !important; border: 0 !important; width: 100%; }
.bc-k-right #formContact > fieldset > * { grid-column: 1 / -1; margin: 0 !important; max-width: none !important; width: 100% !important; }
.bc-k-right #formContact > fieldset > .form-group:has(input[name="fullName"]), .bc-k-right #formContact > fieldset > .form-group:has(input[name="email"]) { grid-column: auto; }
.bc-k-right #formContact .form-control-wrapper, .bc-k-right #formContact .form-control { max-width: none !important; width: 100% !important; }
.bc-k-right #formContact .form-control.short { max-width: 220px !important; }
.bc-k-right #formContact textarea.form-control { min-height: 180px; resize: vertical; }
.bc-k-right #formContact .box { background: transparent !important; border: 0 !important; padding: 0 !important; }
.bc-k-right #formContact .box > h2 { font-size: 22px !important; }
.bc-k-right #formContact .consents, .bc-k-right #formContact .consents * { font-size: 13px !important; color: #5C5C5C !important; }
.bc-k-right #formContact .consents a { color: #000000 !important; font-weight: 700; border-bottom: 2px solid #FFD500; text-decoration: none !important; }
.bc-k-right #formContact .submit-wrapper .btn { width: auto !important; min-width: 240px; }
@media (max-width: 767px) {
  .bc-k-hero-in { padding: 36px 16px 96px; }
  .bc-k-h1 { font-size: 64px !important; }
  .bc-k-lead { font-size: 16px; }
  .bc-k-tape { bottom: 28px; padding: 8px 0; }
  .bc-k-tape span { font-size: 18px; }
  .bc-k-grid { padding: 36px 0 56px; gap: 36px; }
  .bc-k-card, .bc-k-box { padding: 20px; }
  .bc-k-ico { flex-basis: 48px; width: 48px; height: 48px; }
  .bc-k-card-t b { font-size: 19px; }
  .bc-k-map { aspect-ratio: 4 / 3; }
  .bc-k-map iframe { filter: none; }
  .bc-k-h2 { font-size: 40px !important; }
  .bc-k-right #formContact > fieldset { grid-template-columns: 1fr; }
  .bc-k-right #formContact .submit-wrapper .btn { width: 100% !important; }
}
@media (prefers-reduced-motion: reduce) {
  .bc-k-hero *, .bc-k-grid, .bc-k-grid * { animation: none !important; transition: none !important; }
}

/* ---------- Kategorie: ikony v dlaždicích podkategorií sjednocené (verze 32) ---------- */
body.type-category ul.subcategories li a .image {
  flex: 0 0 44px !important; width: 44px !important; height: 44px !important; max-width: 44px !important; margin: 0 4px 0 0 !important; padding: 0 !important;
  display: flex !important; align-items: center; justify-content: center; background: transparent !important; border: 0 !important; overflow: hidden;
}
body.type-category ul.subcategories li a .image img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: contain !important; mix-blend-mode: multiply; transform: scale(1.75); transition: transform .2s; }
body.type-category ul.subcategories li a:hover .image img { transform: scale(1.9); }
/* výchozí šedá složka Shoptetu → ramínko v barvě webu */
body.type-category ul.subcategories li a .image:has(img[src*="folder.svg"]) img { opacity: 0 !important; }
body.type-category ul.subcategories li a .image:has(img[src*="folder.svg"]) {
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231F1F1F' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 7.5 C12 5.5 14.5 5 14.5 3.8 C14.5 2.8 13.4 2 12.2 2 C11 2 10 2.8 10 3.8'/%3E%3Cpath d='M12 7.5 L3 14.5 C2.2 15.2 2.6 16.5 3.7 16.5 H20.3 C21.4 16.5 21.8 15.2 21 14.5 Z'/%3E%3C/svg%3E") center / 34px no-repeat !important;
}
@media (max-width: 767px) {
  body.type-category ul.subcategories li a .image { flex-basis: 36px !important; width: 36px !important; height: 36px !important; max-width: 36px !important; }
  body.type-category ul.subcategories li a .image:has(img[src*="folder.svg"]) { background-size: 28px !important; }
}

/* ---------- Mega menu: ikony kategorií zpět (verze 33), stejný styl jako dlaždice v kategorii ---------- */
@media (min-width: 768px) {
  #navigation .menu-level-2 > li { align-items: flex-start !important; gap: 14px; }
  #navigation .menu-level-2 > li > a.menu-image, #navigation .menu-level-2 > li > a.menu-image:has(img[src*="folder.svg"]) {
    display: flex !important; flex: 0 0 56px; width: 56px !important; height: 56px !important; min-width: 56px; align-items: center; justify-content: center;
    margin: 0 !important; padding: 0 !important; border-radius: 4px; background: #F4F4F4 !important; overflow: hidden; transition: background-color .15s;
  }
  #navigation .menu-level-2 > li > a.menu-image img { width: 100% !important; height: 100% !important; max-width: none !important; object-fit: contain !important; mix-blend-mode: multiply; transform: scale(1.6); transition: transform .2s; }
  #navigation .menu-level-2 > li:hover > a.menu-image { background: #FFD500 !important; }
  #navigation .menu-level-2 > li:hover > a.menu-image img { transform: scale(1.75); }
  #navigation .menu-level-2 > li > a.menu-image:has(img[src*="folder.svg"]) img { opacity: 0 !important; }
  #navigation .menu-level-2 > li > a.menu-image:has(img[src*="folder.svg"]) {
    background: #F4F4F4 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231F1F1F' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 7.5 C12 5.5 14.5 5 14.5 3.8 C14.5 2.8 13.4 2 12.2 2 C11 2 10 2.8 10 3.8'/%3E%3Cpath d='M12 7.5 L3 14.5 C2.2 15.2 2.6 16.5 3.7 16.5 H20.3 C21.4 16.5 21.8 15.2 21 14.5 Z'/%3E%3C/svg%3E") center / 34px no-repeat !important;
  }
  #navigation .menu-level-2 > li:hover > a.menu-image:has(img[src*="folder.svg"]) { background-color: #FFD500 !important; }
  #navigation .menu-level-2 > li > div { padding-top: 14px; }
  #navigation .menu-level-2 > li > a.menu-image img[src$=".svg"] { transform: scale(1.15); }
  #navigation .menu-level-2 > li:hover > a.menu-image img[src$=".svg"] { transform: scale(1.25); }
}

/* pomocný příznak „Bez slevy“ (id 27, jen pro vyřazení z kupónu) nezobrazovat ve filtru kategorie */
#filters div:has(> input[data-filter-code="dd"][value="27"]), .filters div:has(> input[data-filter-code="dd"][value="27"]) { display: none !important; }

/* hlášky Shoptetu (chyba, úspěch…) nad přichycenou hlavičkou a v barvách webu */
.messages { z-index: 1040 !important; }
.messages .msg { border: 0 !important; border-radius: 0 !important; margin: 0 !important; padding: 16px 56px !important; text-align: center; font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 15px !important; line-height: 1.45 !important; box-shadow: 0 8px 24px rgba(0,0,0,.28) !important; }
.messages .msg-error { background: #D10A00 !important; color: #FFFFFF !important; }
.messages .msg-success { background: #FFD500 !important; color: #000000 !important; }
.messages .msg-info, .messages .msg-notice, .messages .msg-warning { background: #000000 !important; color: #FFFFFF !important; }
.messages .msg *, .messages .msg a { color: inherit !important; }
@media (max-width: 767px) { .messages .msg { padding: 14px 44px 14px 16px !important; font-size: 14px !important; } }

/* košík: uplatněný kupón jako štítek a nepřekrývá se s pruhem dopravy */
body.in-kosik .summary .coupon-input { display: flow-root !important; height: auto !important; margin-bottom: 16px !important; }
body.in-kosik .summary .coupon-input .discount-coupon { float: none !important; width: 100% !important; max-width: 520px; padding: 0 !important; }
body.in-kosik .applied-coupon__heading { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 14px !important; letter-spacing: .12em; text-transform: uppercase; color: #7A7A7A !important; margin: 0 0 8px !important; }
body.in-kosik .applied-coupon { display: flex !important; align-items: center; justify-content: space-between; gap: 12px; background: #FFFBE0; border: 2px solid #FFD500; border-radius: 4px; padding: 12px 14px !important; }
body.in-kosik .applied-coupon strong { color: #000000 !important; font-weight: 800 !important; font-size: 15px !important; }
body.in-kosik .applied-coupon form, body.in-kosik .applied-coupon fieldset { margin: 0 !important; padding: 0 !important; border: 0 !important; }

/* ---------- Dres se jménem a číslem (pole a náhled tvoří bcross-dres skript) ---------- */
.bc-dres-cislo, .bc-dres-jmeno { margin: 0 0 18px !important; }
.bc-dres-cislo .surcharge-label, .bc-dres-label { display:block; font-family:'Oxanium',sans-serif !important; font-size:15px !important; font-weight:800 !important; color:#1F1F1F !important; margin:0 0 10px !important; }
.bc-dres-cislo .surcharge-label .question-tooltip { display:none !important; }
.bc-dres-cislo select.surcharge-parameter, .bc-dres-input { width:100% !important; max-width:360px; height:52px !important; border:1.5px solid #CFCFCF !important; border-radius:4px !important; font-family:'Oxanium',sans-serif !important; font-size:19px !important; font-weight:700 !important; color:#000 !important; background-color:#FFF !important; box-shadow:none !important; }
.bc-dres-cislo select.surcharge-parameter:focus, .bc-dres-input:focus { border-color:#000 !important; outline:none !important; }
.bc-dres-radek { position:relative; max-width:360px; }
.bc-dres-input { padding:0 64px 0 14px !important; text-transform:uppercase; letter-spacing:.08em; }
.bc-dres-input::placeholder { color:#A8A8A8; letter-spacing:.04em; }
.bc-dres-pocet { position:absolute; right:14px; top:50%; transform:translateY(-50%); font-family:'Oxanium',sans-serif; font-size:15px; font-weight:700; color:#7A7A7A; pointer-events:none; }
.bc-dres-napoveda { margin:8px 0 0 !important; font-family:'Oxanium',sans-serif; font-size:13px; color:#7A7A7A; }
.bc-dres-chyba { margin:8px 0 0 !important; font-family:'Oxanium',sans-serif; font-size:14px; font-weight:700; color:#D10A00; }
.bc-dres-chyba:empty { display:none; }
.bc-dres-jmeno.bc-chyba .bc-dres-input, .bc-dres-cislo.bc-chyba select.surcharge-parameter { border-color:#D10A00 !important; }
.bc-dres-nahled { margin:0 0 22px; max-width:260px; background:#F4F4F4; border-radius:4px; padding:10px; }
.bc-dres-nahled canvas { display:block; width:100%; height:auto; }
.bc-dres-nahled-popis { margin:6px 0 0 !important; text-align:center; font-family:'Oxanium',sans-serif; font-size:13px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:#7A7A7A; }
/* košík a souhrn objednávky: jména u dresu */
.bc-dres-kosik { margin:6px 0 0; padding:0; list-style:none; font-family:'Oxanium',sans-serif; font-size:13px; line-height:1.5; color:#1F1F1F; }
.bc-dres-kosik li { display:flex; gap:6px; align-items:baseline; }
.bc-dres-kosik b { font-family:'Oxanium',sans-serif; font-size:15px; font-weight:800; letter-spacing:.04em; }
.bc-dres-kosik .bc-dres-chybi { color:#D10A00; font-weight:700; }

/* Kontakty podle návrhu: šedý box Provozovatel a popisky polí nad políčky */
.bc-k-box--k { background: #F4F4F4; border-color: #F4F4F4; gap: 8px; }
.bc-k-box--k .bc-k-place { font-size: 16px; }
.bc-k-box--k .bc-k-addr { font-size: 14px; line-height: 1.6; }
.bc-k-right #formContact .smart-label-wrapper { display: flex !important; flex-direction: column; gap: 8px; position: relative; }
.bc-k-right #formContact .smart-label-wrapper > label { position: static !important; transform: none !important; top: auto !important; left: auto !important; margin: 0 !important; padding: 0 !important; background: none !important; pointer-events: auto; font-size: 14px !important; line-height: 1.3 !important; }
.bc-k-right #formContact .smart-label-wrapper > label, .bc-k-right #formContact .smart-label-wrapper > label span { color: #1F1F1F !important; font-weight: 700 !important; font-size: 14px !important; }
.bc-k-right #formContact input.form-control { height: 52px !important; padding: 0 16px !important; }
.bc-k-right #formContact textarea.form-control { height: 180px; padding: 14px 16px !important; }
.bc-k-right #formContact textarea.form-control::placeholder { color: #A8A8A8; }

/* detail: vodicí čára šablony za popiskem (Dostupnost, Kód) přeškrtávala text → pryč */
body.type-product table.detail-parameters th::after { display: none !important; content: none !important; }

/* ---------- Popis produktu: grafické bloky bc-dp (text v adminu, vzhled tady) ---------- */
.bc-dp { display: flex; flex-direction: column; gap: 28px; font-family: 'Oxanium', sans-serif; color: #1F1F1F; }
.bc-dp p { margin: 0 !important; }
.bc-dp-hero { position: relative; overflow: hidden; background: #000000; color: #FFFFFF; border-radius: 4px; padding: 36px 36px 92px; }
.bc-dp-eyebrow { font-family: 'Oxanium', sans-serif; font-weight: 700; font-size: 14px; letter-spacing: .16em; text-transform: uppercase; color: #FFD500 !important; }
#description .bc-dp-title, .bc-dp-title { margin: 12px 0 14px !important; padding: 0 !important; border: 0 !important; font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 56px !important; line-height: .92 !important; text-transform: uppercase; color: #FFFFFF !important; background: none !important; }
.bc-dp-lead { max-width: 560px; font-size: 17px; line-height: 1.6; color: #D9D9D9 !important; }
.bc-dp-tape { position: absolute; left: -30px; right: -30px; bottom: 26px; transform: rotate(-2deg); background: #FFD500; color: #000000 !important; padding: 8px 0; white-space: nowrap; overflow: hidden; font-family: 'Oxanium', sans-serif; font-weight: 800; font-style: italic; font-size: 19px; letter-spacing: .06em; }
.bc-dp-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; }
.bc-dp-card { border: 1.5px solid #E4E4E4; border-radius: 4px; padding: 22px 20px; display: flex; flex-direction: column; gap: 6px; transition: border-color .15s, transform .2s, box-shadow .2s; }
.bc-dp-card:hover { border-color: #000000; transform: translateY(-2px); box-shadow: 0 10px 24px rgba(0,0,0,.08); }
.bc-dp-big { font-family: 'Oxanium', sans-serif; font-weight: 800; font-size: 40px; line-height: 1; color: #000000 !important; white-space: nowrap; }
.bc-dp-card-t { font-family: 'Oxanium', sans-serif; font-weight: 700; font-size: 15px; letter-spacing: .12em; text-transform: uppercase; color: #7A7A7A !important; margin-bottom: 4px !important; }
.bc-dp-card p:last-child { font-size: 14px; line-height: 1.55; }
#description .bc-dp-h, .bc-dp-h { margin: 8px 0 -6px !important; padding: 0 !important; border: 0 !important; font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 34px !important; line-height: 1 !important; text-transform: uppercase; color: #000000 !important; background: none !important; }
.bc-dp-steps { list-style: none !important; margin: 0 !important; padding: 0 !important; counter-reset: bcdp; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.bc-dp-steps li { counter-increment: bcdp; position: relative; margin: 0 !important; padding: 18px 18px 18px 74px !important; background: #F4F4F4; border-radius: 4px; font-size: 14px; line-height: 1.5; min-height: 76px; }
.bc-dp-steps li::before { content: counter(bcdp, decimal-leading-zero) !important; position: absolute; left: 18px; top: 50%; transform: translateY(-50%); width: auto !important; height: auto !important; background: none !important; border: 0 !important; font-family: 'Oxanium', sans-serif; font-weight: 800; font-size: 38px; line-height: 1; color: #FFD500; -webkit-text-stroke: 1.5px #000000; }
.bc-dp-steps li strong { display: block; font-family: 'Oxanium', sans-serif; font-weight: 800; font-size: 19px; letter-spacing: .04em; text-transform: uppercase; color: #000000; margin-bottom: 2px; }
.bc-dp-pre { background: #FFD500; color: #000000; border-radius: 4px; padding: 22px 24px; display: flex; flex-direction: column; gap: 6px; }
.bc-dp-pre-t { font-family: 'Oxanium', sans-serif; font-weight: 800; font-size: 26px; line-height: 1; text-transform: uppercase; }
.bc-dp-pre p:last-child { font-size: 15px; line-height: 1.55; }
.bc-dp-crew { border: 1.5px dashed #CFCFCF; border-radius: 4px; padding: 22px 24px; display: flex; flex-direction: column; gap: 12px; }
.bc-dp-crew-t { font-family: 'Oxanium', sans-serif; font-weight: 700; font-size: 15px; letter-spacing: .12em; text-transform: uppercase; color: #7A7A7A !important; }
.bc-dp-chips { display: flex; flex-wrap: wrap; gap: 10px; }
.bc-dp-chips span { position: relative; min-width: 56px; padding: 8px 10px; background: #000000; color: #FFFFFF; border-radius: 4px; text-align: center; font-family: 'Oxanium', sans-serif; font-weight: 800; font-size: 26px; line-height: 1; }
.bc-dp-chips span::after { content: ""; position: absolute; left: 8px; right: 8px; top: 50%; height: 2px; background: #FFD500; transform: rotate(-12deg); }
.bc-dp-crew p:last-child { font-size: 14px; color: #5C5C5C; }
@media (max-width: 767px) {
  .bc-dp { gap: 20px; }
  .bc-dp-hero { padding: 26px 20px 80px; }
  #description .bc-dp-title, .bc-dp-title { font-size: 40px !important; }
  .bc-dp-lead { font-size: 15px; }
  .bc-dp-cards, .bc-dp-steps { grid-template-columns: 1fr; }
  .bc-dp-big { font-size: 34px; }
  #description .bc-dp-h, .bc-dp-h { font-size: 28px !important; }
}
@media (prefers-reduced-motion: reduce) { .bc-dp-card { transition: none; } }

/* výhody (benefitBanner) na mobilu přes celou šířku – šablona jim dává polovinu */
@media (max-width: 767px) {
  body.type-product .benefitBanner, body.type-index .benefitBanner { width: 100% !important; align-items: stretch !important; }
  body.type-product .benefitBanner__item, body.type-index .benefitBanner__item { width: 100% !important; max-width: none !important; flex: 0 0 auto !important; align-self: stretch !important; }
  body.type-product .benefitBanner__content, body.type-index .benefitBanner__content { flex: 1 1 auto !important; min-width: 0; }
}

/* krok 2 objednávky: povinná jména na dresy (tvoří skript) */
.bc-dres-k2 { background: #FFFBE0; border: 2px solid #FFD500; border-radius: 4px; padding: 20px 22px; margin: 0 0 22px; display: flex; flex-direction: column; gap: 12px; }
.bc-dres-k2-h { margin: 0 !important; padding: 0 !important; border: 0 !important; font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 24px !important; line-height: 1 !important; text-transform: uppercase; color: #000000 !important; background: none !important; }
.bc-dres-k2-p { margin: 0 !important; font-size: 14px; color: #5C5C5C; }
.bc-dres-k2-row { display: flex; flex-direction: column; gap: 6px; margin: 0 !important; }
.bc-dres-k2-l { font-family: 'Oxanium', sans-serif; font-weight: 800; font-size: 17px; letter-spacing: .04em; text-transform: uppercase; color: #000000; }
.bc-dres-k2 .bc-dres-input { width: 100% !important; max-width: 360px; height: 52px !important; padding: 0 14px !important; border: 1.5px solid #CFCFCF !important; border-radius: 4px !important; background: #FFFFFF !important; font-family: 'Oxanium', sans-serif !important; font-size: 19px !important; font-weight: 700 !important; letter-spacing: .08em; text-transform: uppercase; color: #000000 !important; }
.bc-dres-k2 .bc-dres-input:focus { border-color: #000000 !important; box-shadow: 0 0 0 3px #FFD500 !important; outline: none !important; }
.bc-dres-k2 .bc-dres-input.bc-chyba-pole { border-color: #D10A00 !important; }

/* popis produktu: složení a tabulka velikostí (bc-dp-spec) */
.bc-dp-spec { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; align-items: start; }
.bc-dp-box { border: 1.5px solid #E4E4E4; border-radius: 4px; padding: 22px 24px; display: flex; flex-direction: column; gap: 14px; }
.bc-dp-box-t { font-family: 'Oxanium', sans-serif; font-weight: 800; font-size: 24px; line-height: 1; text-transform: uppercase; color: #000000 !important; }
.bc-dp-list { list-style: none !important; margin: 0 !important; padding: 0 !important; display: flex; flex-direction: column; gap: 10px; }
.bc-dp-list li { margin: 0 !important; padding: 0 0 10px !important; border-bottom: 1px solid #EFEFEF; font-size: 14px; line-height: 1.5; }
.bc-dp-list li:last-child { border-bottom: 0; padding-bottom: 0 !important; }
.bc-dp-list li::before, .bc-dp-list li::marker { content: none !important; display: none !important; }
.bc-dp-list li strong { display: block; font-family: 'Oxanium', sans-serif; font-weight: 700; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: #7A7A7A; margin-bottom: 1px; }
#description .bc-dp-table, .bc-dp-table { width: 100% !important; border-collapse: collapse !important; border-spacing: 0 !important; margin: 0 !important; border: 0 !important; }
#description .bc-dp-table th, .bc-dp-table th { background: #000000 !important; color: #FFD500 !important; font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 15px !important; letter-spacing: .08em !important; text-transform: uppercase !important; text-align: left !important; padding: 10px 12px !important; border: 0 !important; }
#description .bc-dp-table td, .bc-dp-table td { background: #FFFFFF !important; color: #1F1F1F !important; padding: 10px 12px !important; border: 0 !important; border-bottom: 1px solid #EFEFEF !important; font-size: 15px !important; text-align: left !important; }
#description .bc-dp-table tbody tr:nth-child(even) td, .bc-dp-table tbody tr:nth-child(even) td { background: #F7F7F7 !important; }
#description .bc-dp-table td:first-child, .bc-dp-table td:first-child { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 18px !important; color: #000000 !important; }
.bc-dp-note { font-size: 13px; line-height: 1.5; color: #5C5C5C !important; }
@media (max-width: 767px) { .bc-dp-spec { grid-template-columns: 1fr; } .bc-dp-box { padding: 20px; } }

/* popis produktu: animace po najetí – kroky a čísla crew */
.bc-dp-steps li { transition: transform .22s cubic-bezier(.2,.8,.2,1), background-color .2s, color .2s, box-shadow .22s; }
.bc-dp-steps li::before { transition: transform .3s cubic-bezier(.2,.8,.2,1), color .2s, -webkit-text-stroke-color .2s; }
.bc-dp-steps li strong { transition: color .2s; }
.bc-dp-steps li:hover { background: #000000; color: #D9D9D9; transform: translateY(-3px); box-shadow: 0 12px 26px rgba(0,0,0,.18); }
.bc-dp-steps li:hover strong { color: #FFD500; }
.bc-dp-steps li:hover::before { transform: translateY(-50%) scale(1.2) rotate(-6deg); color: #FFD500; -webkit-text-stroke-color: #FFD500; }
.bc-dp-chips span { cursor: default; transition: transform .22s cubic-bezier(.2,.8,.2,1), background-color .2s, color .2s; }
.bc-dp-chips span::after { transform-origin: 0 50%; transition: background-color .2s; }
.bc-dp-chips span:hover { transform: translateY(-4px) rotate(-5deg); background: #FFD500; color: #000000; }
.bc-dp-chips span:hover::after { background: #000000; animation: bcDpStrike .35s cubic-bezier(.2,.8,.2,1); }
.bc-dp-crew:hover .bc-dp-chips span::after { animation: bcDpStrike .4s cubic-bezier(.2,.8,.2,1) backwards; }
.bc-dp-crew:hover .bc-dp-chips span:nth-child(2)::after { animation-delay: .05s; }
.bc-dp-crew:hover .bc-dp-chips span:nth-child(3)::after { animation-delay: .1s; }
.bc-dp-crew:hover .bc-dp-chips span:nth-child(4)::after { animation-delay: .15s; }
.bc-dp-crew:hover .bc-dp-chips span:nth-child(5)::after { animation-delay: .2s; }
.bc-dp-crew:hover .bc-dp-chips span:nth-child(6)::after { animation-delay: .25s; }
@keyframes bcDpStrike { from { transform: rotate(-12deg) scaleX(0); } to { transform: rotate(-12deg) scaleX(1); } }
@media (prefers-reduced-motion: reduce) {
  .bc-dp-steps li, .bc-dp-steps li::before, .bc-dp-chips span { transition: none !important; }
  .bc-dp-steps li:hover, .bc-dp-chips span:hover { transform: none !important; }
  .bc-dp-steps li:hover::before { transform: translateY(-50%) !important; }
  .bc-dp-chips span::after { animation: none !important; }
}

/* dres: čísla jako mřížka tlačítek (varianta, 1 ks), velikost jako tlačítka (příplatek) */
.bc-dres-cislo--varianta .bc-sizes { gap: 6px; max-width: 520px; }
.bc-dres-cislo--varianta .bc-size { min-width: 46px !important; height: 42px !important; padding: 0 6px !important; font-size: 17px !important; }
.bc-dres-cislo--varianta > label, .bc-dres-cislo--varianta .variant-name { font-family: 'Oxanium', sans-serif !important; font-size: 15px !important; font-weight: 800 !important; color: #1F1F1F !important; }
.bc-dres-vel .bc-sizes { margin-bottom: 4px; }
.bc-dres-cislo.bc-chyba .bc-sizes .bc-size:not(.is-out) { border-color: #D10A00 !important; }

/* Kontakty přesně podle návrhu: bez drobečků, černý blok hned pod menu, spodek ve stejném sloupci 1280 px jako hlavička */
body.bc-k-ready .breadcrumbs { display: none !important; }
body.bc-k-ready #content { padding-top: 0 !important; }
body.bc-k-ready .bc-k-hero { margin-top: 0 !important; }
/* (v46) bílý sloupec Kontaktů stejně široký jako menu a ostatní stránky; spodek uvnitř sloupce, text hlavičky zarovnaný s ním – na širokém monitoru už nic nepřetéká */
body.bc-k-ready #content-wrapper.container-narrow { max-width: 1418px !important; width: 100% !important; }
body.bc-k-ready .bc-k-grid { width: auto !important; margin-left: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
body.bc-k-ready .bc-k-hero-in { max-width: 1418px !important; padding-left: 20px !important; padding-right: 20px !important; }
body.bc-k-ready .bc-k-right #formContact .submit-wrapper .btn { min-height: 52px !important; height: auto !important; padding: 0 28px !important; font-size: 19px !important; letter-spacing: .06em !important; }
body.bc-k-ready .bc-k-right #formContact .box > h2, body.bc-k-ready .bc-k-right #formContact fieldset > h2 { font-family: 'Oxanium', sans-serif !important; font-size: 14px !important; font-weight: 700 !important; text-transform: none !important; letter-spacing: 0 !important; color: #1F1F1F !important; margin: 0 0 8px !important; }
@media (max-width: 767px) { body.bc-k-ready .bc-k-hero-in { padding-left: 16px !important; padding-right: 16px !important; } body.bc-k-ready .bc-k-grid { padding-left: 6px !important; padding-right: 6px !important; } }

/* ---------- Písmo podle brand manuálu BCROSS RUN (11/2026): jediné písmo značky je Oxanium (Google Fonts) ----------
   Načítá se odkazem v HTML kódech; tady se nastaví všude. Ikony Shoptetu mají vlastní písmo na ::before/::after, těch se to netýká. */
html body, body button, body input, body select, body textarea, body .btn { font-family: 'Oxanium', sans-serif !important; }
html body *:not(.fb_reset):not(.fb_reset *) { font-family: inherit !important; }
/* přihlášení na mobilu: formulář měl pevnou šířku 440 px a stránka jela do strany */
body.in-login #formLogin { width: 100% !important; max-width: 520px !important; }

/* karty produktů: bez hvězdiček hodnocení (jen v detailu), název max 2 řádky, stejně vysoká dostupnost a ceny → dostupnost, cena a tlačítko v jedné linii */
.product .p .stars-wrapper { display: none !important; }
.product .p .name { display: -webkit-box !important; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; min-height: calc(2 * 1.3em); line-height: 1.3 !important; }
.product .p .p-bottom .prices { min-height: 66px; align-items: flex-start; align-content: flex-start; }
.product .p .availability, .product .p .availability * { font-size: 13px !important; line-height: 1.6 !important; }
@media (max-width: 767px) { .product .p .availability { min-height: 3.2em; } }

/* ---------- Obrázky po stranách na širokém monitoru (fotka z bcrossrun.cz) ----------
   Každý obrázek sahá až do půlky obrazovky a bílý obsah ho přikryje – sedí to i na užších textových stránkách. */
@media (min-width: 1540px) {
  html { background-color: #141414 !important; }
  body { background-color: transparent !important; }
  /* html::before/after – body::before si šablona Shoptetu bere pro vlastní překryv */
  html::before, html::after {
    content: ""; position: fixed; top: 0; bottom: 0; z-index: -1; width: 50vw;
    background-color: #262626; background-repeat: no-repeat; background-size: auto 100%;
    pointer-events: none;
  }
  /* vnitřní okraj fotky plynule ztmaví, takže sedí i na užších stránkách */
  /* tmavý závoj přes fotky, aby byly jen klidné pozadí (verze 32) */
  html::before { left: 0; background: linear-gradient(to left, #141414 0, rgba(20,20,20,0) 140px) right 709px bottom / 140px 100% no-repeat, linear-gradient(rgba(20,20,20,.62), rgba(20,20,20,.62)), url("/user/documents/upload/bcross-bok-leva.jpg") right 709px bottom / auto 100% no-repeat, #141414; }
  html::after { right: 0; background: linear-gradient(to right, #141414 0, rgba(20,20,20,0) 140px) left 709px bottom / 140px 100% no-repeat, linear-gradient(rgba(20,20,20,.62), rgba(20,20,20,.62)), url("/user/documents/upload/bcross-bok-prava.jpg") left 709px bottom / auto 100% no-repeat, #141414; }
}

/* ---------- Zápatí podle návrhu: černé, žluté nadpisy, šedé odkazy, řádek skupiny dole ---------- */
#footer { background: #000000 !important; border-top: 3px solid #FFD500 !important; }
#footer .footer-rows { padding-top: 56px !important; padding-bottom: 40px !important; }
/* prázdný sloupec Instagramu (Shoptet do něj nic nenačte) schovat, zbylé sloupce se roztáhnou */
#footer .custom-footer__instagram:not(:has(*)) { display: none !important; }
#footer .custom-footer { display: flex !important; flex-wrap: wrap; row-gap: 32px; }
#footer .custom-footer > div { flex: 1 1 220px; max-width: none !important; width: auto !important; float: none !important; }

#footer .pageElement__heading, #footer .banner-wrapper h4 {
  margin: 0 0 16px !important; padding: 0 !important; border: 0 !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 15px !important;
  letter-spacing: .16em !important; text-transform: uppercase !important; color: #FFD500 !important;
}
#footer .pageElement__heading span, #footer .banner-wrapper h4 span { color: #FFD500 !important; font: inherit !important; }
#footer ul { list-style: none !important; margin: 0 !important; padding: 0 !important; }
#footer .banner-wrapper li, #footer .contact-box li { margin: 0 0 10px !important; padding: 0 !important; list-style: none !important; }
#footer .banner-wrapper li::before { display: none !important; }
#footer a { color: #CFCFCF !important; font-size: 15px !important; text-decoration: none !important; transition: color .15s; }
#footer a:hover { color: #FFD500 !important; }

/* kontakt */
#footer .contact-box strong { display: block; margin-bottom: 12px; color: #FFFFFF !important; font-weight: 800; font-size: 16px; }
#footer .contact-box .mail a, #footer .contact-box .tel a { padding-left: 0 !important; }
#footer .contact-box .mail::before, #footer .contact-box .tel::before { color: #FFD500 !important; }
#footer .contact-box .social-icon-list { display: inline-block !important; margin: 8px 8px 0 0 !important; }
#footer .contact-box .social-icon {
  display: inline-flex !important; align-items: center; justify-content: center; width: 44px !important; height: 44px !important;
  border: 1px solid #333333 !important; border-radius: 4px !important; background-color: transparent !important; background-position: center !important;
}
#footer .contact-box .social-icon:hover { border-color: #FFD500 !important; }

/* řádek skupiny (Bcross Run, Bcross Gym…) */
#footer .footer-links-icons { border-top: 1px solid #222222; padding-top: 22px !important; padding-bottom: 22px !important; }
#footer .footer-links { display: flex !important; flex-wrap: wrap; gap: 8px 28px; justify-content: flex-start; }
#footer .footer-links a {
  font-family: 'Oxanium', sans-serif !important; font-weight: 700; font-size: 16px !important; letter-spacing: .06em;
  text-transform: uppercase; color: #8A8A8A !important;
}
#footer .footer-links a:hover { color: #FFD500 !important; }

/* spodní lišta */
#footer .footer-bottom { border-top: 1px solid #222222 !important; background: #000000 !important; padding: 18px 0 22px !important; }
#footer .footer-bottom, #footer .footer-bottom * { font-size: 13px !important; color: #6E6E6E !important; }
#footer .footer-bottom a:hover { color: #FFD500 !important; }
#footer .footer-bottom .container { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; }
#footer .footer-bottom .copyright strong { color: #A8A8A8 !important; }
#footer #signature img { opacity: .5; filter: grayscale(1); }

/* ---------- Stránka 404 podle návrhu: černá plocha přes celou šířku, 404 + DNF, páska z trati, animace ---------- */
body.id-404 .pageArticleDetail {
  position: relative; overflow: hidden; border-radius: 0;
  margin: 0 calc(50% - 50vw) 0 !important; min-height: 560px;
  background: #000000; color: #FFFFFF;
  padding: 88px max(24px, calc(50vw - 640px)) 170px !important;
  display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); column-gap: 56px; align-items: center;
}
/* velké 404 */
body.id-404 .pageArticleDetail::before {
  content: "404"; grid-column: 1; grid-row: 1 / span 2; justify-self: start;
  font-family: 'Oxanium', sans-serif; font-weight: 800; font-size: 300px; line-height: .8; letter-spacing: -.02em; color: #FFD500;
  animation: bc404in .8s cubic-bezier(.2,.8,.2,1) both, bc404glitch 6s 2s infinite;
}
/* štítek DNF */
body.id-404 .pageArticleDetail > header::before {
  content: "DNF"; position: absolute; left: max(24px, calc(50vw - 640px)); top: 64px; z-index: 2;
  background: #FFFFFF; color: #000000; padding: 4px 10px; border-radius: 2px;
  font-family: 'Oxanium', sans-serif; font-weight: 800; font-size: 22px; letter-spacing: .1em;
  animation: bc404tag .5s .7s cubic-bezier(.3,1.6,.5,1) both;
}
body.id-404 .pageArticleDetail > header, body.id-404 .pageArticleDetail > div { grid-column: 2; }
body.id-404 .pageArticleDetail h1 {
  margin: 0 0 20px !important; font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important;
  font-size: 84px !important; line-height: .92 !important; text-transform: uppercase; color: #FFFFFF !important;
  animation: bc404up .7s .25s cubic-bezier(.2,.8,.2,1) both;
}
body.id-404 .pageArticleDetail > div { animation: bc404up .7s .45s cubic-bezier(.2,.8,.2,1) both; }
body.id-404 .pageArticleDetail p, body.id-404 .pageArticleDetail p span { font-size: 19px !important; line-height: 1.6 !important; color: #D9D9D9 !important; max-width: 520px; }
body.id-404 .pageArticleDetail a, body.id-404 .pageArticleDetail p a, body.id-404 .pageArticleDetail a:not([href]) { color: #FFD500 !important; font-weight: 800; text-decoration: none !important; border-bottom: 2px solid #FFD500; }
/* trať: čárkovaná žlutá čára se rozběhne a v půlce zastaví (DNF) */
body.id-404 .pageArticleDetail > div::after {
  content: ""; display: block; margin-top: 32px; height: 6px; width: 0; max-width: 520px;
  background: repeating-linear-gradient(90deg, #FFD500 0 30px, transparent 30px 44px);
  animation: bc404run 1.8s 1s cubic-bezier(.25,.9,.3,1) forwards;
}
/* páska z trati, text jede dokola */
body.id-404 .pageArticleDetail::after {
  content: "VYBAVENO NA TRAŤ   /   VYBAVENO NA TRAŤ   /   VYBAVENO NA TRAŤ   /   VYBAVENO NA TRAŤ   /   VYBAVENO NA TRAŤ   /   VYBAVENO NA TRAŤ   /   VYBAVENO NA TRAŤ   /   VYBAVENO NA TRAŤ   /   VYBAVENO NA TRAŤ   /   VYBAVENO NA TRAŤ   /   VYBAVENO NA TRAŤ   /   VYBAVENO NA TRAŤ   /   VYBAVENO NA TRAŤ   /   VYBAVENO NA TRAŤ   /   VYBAVENO NA TRAŤ   /   VYBAVENO NA TRAŤ   /   "; white-space: pre; position: absolute; left: -60px; right: -60px; bottom: 52px; overflow: hidden;
  background: #FFD500; color: #000000; padding: 13px 0;
  font-family: 'Oxanium', sans-serif; font-weight: 800; font-style: italic; font-size: 24px; letter-spacing: .06em;
  transform: rotate(-2.2deg);
  animation: bc404tapein .9s .3s cubic-bezier(.2,.8,.2,1) both, bc404tape 9s linear infinite;
}
@keyframes bc404in { from { opacity: 0; transform: translateY(60px) skewX(-8deg); } to { opacity: 1; transform: none; } }
@keyframes bc404glitch {
  0%, 90%, 100% { transform: none; color: #FFD500; text-shadow: none; }
  91% { transform: translateX(-8px) skewX(-10deg); color: #FFFFFF; text-shadow: 8px 0 #FFD500; }
  93% { transform: translateX(6px); color: #FFD500; text-shadow: -6px 0 #FFFFFF; }
  95% { transform: none; text-shadow: none; }
}
@keyframes bc404tag { from { opacity: 0; transform: scale(.4) rotate(-14deg); } to { opacity: 1; transform: rotate(-6deg); } }
@keyframes bc404up { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }
@keyframes bc404run { 0% { width: 0; } 80% { width: 64%; } 86% { width: 61%; } 100% { width: 62%; } }
@keyframes bc404tapein { from { transform: translateX(100%) rotate(-2.2deg); } to { transform: rotate(-2.2deg); } }
@keyframes bc404tape { from { text-indent: 0; } to { text-indent: -245.77px; } }
@media (max-width: 767px) {
  body.id-404 .pageArticleDetail { grid-template-columns: 1fr; min-height: 0; padding: 72px 20px 130px !important; }
  body.id-404 .pageArticleDetail::before { grid-row: auto; font-size: 160px; margin-bottom: 18px; }
  body.id-404 .pageArticleDetail > header::before { left: 20px; top: 44px; font-size: 18px; }
  body.id-404 .pageArticleDetail > header, body.id-404 .pageArticleDetail > div { grid-column: 1; }
  body.id-404 .pageArticleDetail h1 { font-size: 52px !important; }
  body.id-404 .pageArticleDetail p, body.id-404 .pageArticleDetail p span { font-size: 17px !important; }
  body.id-404 .pageArticleDetail::after { font-size: 18px; bottom: 36px; padding: 10px 0; animation: bc404tapein .9s .3s cubic-bezier(.2,.8,.2,1) both, bc404tapem 7s linear infinite; }
  @keyframes bc404tapem { from { text-indent: 0; } to { text-indent: -184.32px; } }
}
@media (prefers-reduced-motion: reduce) {
  body.id-404 .pageArticleDetail::before, body.id-404 .pageArticleDetail::after, body.id-404 .pageArticleDetail > header::before,
  body.id-404 .pageArticleDetail h1, body.id-404 .pageArticleDetail > div, body.id-404 .pageArticleDetail > div::after { animation: none !important; }
  body.id-404 .pageArticleDetail > div::after { width: 62%; }
  body.id-404 .pageArticleDetail > header::before { transform: rotate(-6deg); }
}

/* 404: drobečková navigace černá přes celou šířku, plocha navazuje bez bílé mezery */
body.id-404 #content-wrapper { background: transparent !important; }
body.id-404 #content { padding-top: 0 !important; padding-bottom: 0 !important; }
body.id-404 .breadcrumbs {
  background: #000000 !important; margin: 0 calc(50% - 50vw) !important;
  padding: 16px max(24px, calc(50vw - 640px)) 0 !important; border: 0 !important;
}
body.id-404 .breadcrumbs, body.id-404 .breadcrumbs * { color: #8A8A8A !important; font-size: 13px !important; text-transform: uppercase; letter-spacing: .06em; }
body.id-404 .breadcrumbs a:hover { color: #FFD500 !important; }
body.id-404 .breadcrumbs svg, body.id-404 .breadcrumbs img, body.id-404 .breadcrumbs [class*="icon"]::before { filter: invert(.55); }

/* ---------- Prázdný košík: černý pruh s nadpisem a taškou, kategorie jako dlaždice ---------- */
body.in-kosik .cart-empty .cart-heading {
  position: relative; margin: 0 calc(50% - 50vw) 48px !important;
  padding: 64px max(24px, calc(50vw - 640px)) 64px calc(max(24px, calc(50vw - 640px)) + 120px) !important;
  background: #000000; color: #FFFFFF !important; border-bottom: 4px solid #FFD500;
  font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 64px !important;
  line-height: .95 !important; text-transform: uppercase; animation: bcCartUp .6s cubic-bezier(.2,.8,.2,1) both;
}
body.in-kosik .cart-empty .cart-heading::before {
  content: ""; position: absolute; left: max(24px, calc(50vw - 640px)); top: 50%; width: 88px; height: 88px; margin-top: -44px;
  background: #FFD500; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round' stroke-linecap='round'%3E%3Cpath d='M5 8h14l-1 12H6L5 8z'/%3E%3Cpath d='M9 8V6a3 3 0 0 1 6 0v2'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linejoin='round' stroke-linecap='round'%3E%3Cpath d='M5 8h14l-1 12H6L5 8z'/%3E%3Cpath d='M9 8V6a3 3 0 0 1 6 0v2'/%3E%3C/svg%3E") center / contain no-repeat;
  animation: bcCartBag 2.8s .6s ease-in-out infinite;
}
body.in-kosik .cart-empty h3, body.in-kosik .cart-empty .cart-content > h2 {
  margin: 0 0 16px !important; font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important;
  font-size: 26px !important; text-transform: uppercase; color: #000000 !important;
}
body.in-kosik .empty-cart-boxes ul { list-style: none !important; margin: 0 !important; padding: 0 !important;
  display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 10px; }
body.in-kosik .empty-cart-boxes li { margin: 0 !important; padding: 0 !important; list-style: none !important; }
body.in-kosik .empty-cart-boxes li::before { display: none !important; }
body.in-kosik .empty-cart-boxes li a {
  display: flex; align-items: center; justify-content: space-between; min-height: 52px; padding: 0 16px;
  border: 1.5px solid #000000; border-radius: 4px; background: #FFFFFF; color: #000000 !important; text-decoration: none !important;
  font-family: 'Oxanium', sans-serif; font-weight: 700; font-size: 18px; letter-spacing: .04em; text-transform: uppercase;
  transition: background-color .15s, color .15s, transform .15s;
}
body.in-kosik .empty-cart-boxes li a::after { content: "→"; font-family: 'Oxanium', sans-serif; transition: transform .15s; }
body.in-kosik .empty-cart-boxes li a:hover { background: #FFD500; transform: translateY(-2px); }
body.in-kosik .empty-cart-boxes li a:hover::after { transform: translateX(4px); }
body.in-kosik .empty-cart-boxes li a[href="/vyprodej/"] { border-color: #D10A00; color: #D10A00 !important; }
body.in-kosik .empty-cart-boxes li a[href="/vyprodej/"]:hover { background: #D10A00; color: #FFFFFF !important; }
body.in-kosik .empty-cart-boxes li { animation: bcCartUp .5s cubic-bezier(.2,.8,.2,1) both; }
body.in-kosik .empty-cart-boxes li:nth-child(1) { animation-delay: 0.15s; }
body.in-kosik .empty-cart-boxes li:nth-child(2) { animation-delay: 0.19s; }
body.in-kosik .empty-cart-boxes li:nth-child(3) { animation-delay: 0.23s; }
body.in-kosik .empty-cart-boxes li:nth-child(4) { animation-delay: 0.27s; }
body.in-kosik .empty-cart-boxes li:nth-child(5) { animation-delay: 0.31s; }
body.in-kosik .empty-cart-boxes li:nth-child(6) { animation-delay: 0.35s; }
body.in-kosik .empty-cart-boxes li:nth-child(7) { animation-delay: 0.39s; }
body.in-kosik .empty-cart-boxes li:nth-child(8) { animation-delay: 0.43s; }
body.in-kosik .empty-cart-boxes li:nth-child(9) { animation-delay: 0.47s; }
body.in-kosik .empty-cart-boxes li:nth-child(10) { animation-delay: 0.51s; }
body.in-kosik .empty-cart-boxes li:nth-child(11) { animation-delay: 0.55s; }
body.in-kosik .empty-cart-boxes li:nth-child(12) { animation-delay: 0.59s; }
body.in-kosik .js-try-search-button {
  min-height: 52px; padding: 0 28px !important; border: 0 !important; border-radius: 4px !important;
  background: #FFD500 !important; color: #000000 !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 19px !important; letter-spacing: .06em; text-transform: uppercase;
}
body.in-kosik .js-try-search-button:hover { background: #000000 !important; color: #FFD500 !important; }
body.in-kosik .cart-empty .col-md-4 .cart-content { background: #F4F4F4; border-top: 4px solid #FFD500; border-radius: 4px; padding: 24px !important; }
body.in-kosik .cart-empty .col-md-4 .box { background: transparent !important; border: 0 !important; padding: 0 !important; }
body.in-kosik .cart-empty .contact-box strong { display: block; margin-bottom: 10px; font-weight: 800; }
body.in-kosik .cart-empty .contact-box a { color: #1F1F1F !important; }
body.in-kosik .cart-empty .contact-box a:hover { color: #000000 !important; text-decoration: underline; text-decoration-color: #FFD500; text-decoration-thickness: 2px; }
body.in-kosik .cart-empty .cart-row { padding-bottom: 72px; }
body.in-kosik #content:has(.cart-empty), body.in-kosik .cart-inner.cart-empty { padding-top: 0 !important; }
body.in-kosik .cart-empty .cart-content > h2 { text-align: left !important; }
@keyframes bcCartUp { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
@keyframes bcCartBag { 0%, 100% { transform: rotate(0) translateY(0); } 20% { transform: rotate(-8deg) translateY(-6px); } 40% { transform: rotate(6deg) translateY(0); } 55% { transform: rotate(0); } }
@media (max-width: 767px) {
  body.in-kosik .cart-empty .cart-heading { font-size: 40px !important; padding: 40px 20px 40px 96px !important; margin-bottom: 32px !important; }
  body.in-kosik .cart-empty .cart-heading::before { left: 20px; width: 60px; height: 60px; margin-top: -30px; }
  body.in-kosik .empty-cart-boxes ul { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.in-kosik .cart-empty .col-md-4 { margin-top: 32px; }
  body.in-kosik .empty-cart-boxes li a { font-size: 16px; padding: 0 12px; }
  body.in-kosik .empty-cart-boxes .col-md-6 + .col-md-6 { margin-top: 28px; }
}
@media (prefers-reduced-motion: reduce) {
  body.in-kosik .cart-empty .cart-heading, body.in-kosik .cart-empty .cart-heading::before, body.in-kosik .empty-cart-boxes li { animation: none !important; }
}

/* ---------- Cookies: lišta jako karta vlevo dole, okno nastavení v barvách webu ---------- */
.siteCookies.siteCookies--bottom {
  left: 24px !important; right: auto !important; bottom: 24px !important; transform: none !important;
  width: 440px !important; max-width: calc(100vw - 32px) !important; margin: 0 !important;
  background: #FFFFFF !important; border: 0 !important; border-top: 4px solid #FFD500 !important; border-radius: 4px !important;
  box-shadow: 0 18px 50px rgba(0, 0, 0, .35) !important; padding: 22px 24px 22px 76px !important;
  animation: bcCookieIn .5s .6s cubic-bezier(.2,.8,.2,1) both;
}
.siteCookies.siteCookies--bottom::before {
  content: ""; position: absolute; left: 24px; top: 24px; width: 34px; height: 34px; background: #000000;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M12 3a9 9 0 1 0 9 9 3 3 0 0 1-3.5-3.5A3 3 0 0 1 14.5 5.5 2.5 2.5 0 0 1 12 3z'/%3E%3Ccircle cx='9' cy='10' r='1'/%3E%3Ccircle cx='13' cy='15' r='1'/%3E%3Ccircle cx='8.5' cy='15.5' r='1'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linejoin='round'%3E%3Cpath d='M12 3a9 9 0 1 0 9 9 3 3 0 0 1-3.5-3.5A3 3 0 0 1 14.5 5.5 2.5 2.5 0 0 1 12 3z'/%3E%3Ccircle cx='9' cy='10' r='1'/%3E%3Ccircle cx='13' cy='15' r='1'/%3E%3Ccircle cx='8.5' cy='15.5' r='1'/%3E%3C/svg%3E") center / contain no-repeat;
}
.siteCookies__form { display: grid !important; grid-template-columns: 1fr auto; grid-template-areas: 'text text' 'link btn'; align-items: center !important; gap: 14px 16px !important; padding: 0 !important; }
.siteCookies__content { display: contents !important; }
.siteCookies__text { grid-area: text; margin: 0 !important; font-family: 'Oxanium', sans-serif !important; font-size: 15px !important; line-height: 1.55 !important; color: #1F1F1F !important; text-align: left !important; }
.siteCookies__links { grid-area: link; margin: 0 !important; }
.siteCookies__link { height: auto !important; min-height: 44px !important; line-height: 1.3 !important; display: inline-flex !important; align-items: center; background: none !important; border: 0 !important; padding: 6px 0 !important; color: #000000 !important; font-weight: 800 !important; font-size: 14px !important; text-decoration: none !important; border-bottom: 2px solid #FFD500 !important; cursor: pointer; }
.siteCookies__buttonWrap { grid-area: btn; margin: 0 !important; }
.siteCookies__button {
  width: auto; min-height: 50px; padding: 0 28px !important; border: 2px solid #FFD500 !important; border-radius: 4px !important;
  background: #FFD500 !important; color: #000000 !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 19px !important; letter-spacing: .06em; text-transform: uppercase;
}
.siteCookies__button:hover { background: #000000 !important; color: #FFD500 !important; }
@keyframes bcCookieIn { from { opacity: 0; transform: translateY(24px); } to { opacity: 1; transform: none; } }
@media (max-width: 767px) {
  .siteCookies.siteCookies--bottom { left: 0 !important; right: 0 !important; bottom: 0 !important; width: auto !important; max-width: none !important; border-radius: 0 !important; padding: 18px 16px 18px 64px !important; }
  .siteCookies.siteCookies--bottom::before { left: 16px; top: 20px; width: 30px; height: 30px; }
  .siteCookies__text { font-size: 14px !important; }
}
@media (prefers-reduced-motion: reduce) { .siteCookies.siteCookies--bottom { animation: none !important; } }

/* okno Nastavení cookies */
#cboxContent.cookiesDialog { border-top: 4px solid #FFD500 !important; border-radius: 4px !important; overflow: hidden; }
.cookiesSetting__form { font-family: 'Oxanium', sans-serif !important; }
.cookiesSetting__title { margin: 0 0 10px !important; font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 36px !important; text-transform: uppercase; color: #000000 !important; }
.cookiesSetting__perex { color: #5C5C5C !important; font-size: 14px !important; line-height: 1.55 !important; }
.cookiesSetting__data { border: 0 !important; background: transparent !important; }
.cookiesSetting__item { border: 0 !important; border-top: 1px solid #E4E4E4 !important; padding: 16px 0 !important; background: transparent !important; align-items: center !important; }
.cookiesSetting__item__name strong { font-weight: 800; color: #000000; }
.cookiesSetting__item__text { color: #5C5C5C !important; }
/* zaškrtávátko jako přepínač */
.cookiesSetting__item__status { border: 0 !important; background: transparent !important; padding: 0 !important; display: inline-flex !important; align-items: center; gap: 10px; cursor: pointer; }
#cboxContent .cookiesSetting__item__checkbox { appearance: none !important; -webkit-appearance: none !important; position: relative !important; clip: auto !important; left: auto !important; top: auto !important; opacity: 1 !important; width: 52px !important; height: 30px !important; margin: 0 !important;
  border-radius: 15px !important; background: #D6D6D6 !important; border: 0 !important; cursor: pointer; transition: background-color .2s; flex: 0 0 52px; }
#cboxContent .cookiesSetting__item__checkbox::after { content: ""; position: absolute; left: 3px; top: 3px; width: 24px; height: 24px; border-radius: 50%; background: #FFFFFF; transition: transform .2s; box-shadow: 0 1px 3px rgba(0,0,0,.25); }
#cboxContent .cookiesSetting__item__checkbox:checked { background: #000000 !important; }
#cboxContent .cookiesSetting__item__checkbox:checked::after { transform: translateX(22px); background: #FFD500; }
#cboxContent .cookiesSetting__item__checkbox:focus-visible { outline: 3px solid #FFD500; outline-offset: 2px; }
.cookiesSetting__item__state { font-size: 13px !important; font-weight: 700; color: #5C5C5C !important; border: 0 !important; padding: 0 !important; background: transparent !important; }
.cookiesSetting__item__state::before, .cookiesSetting__item__state::after { display: none !important; }
.cookiesSetting__bottom { border-top: 1px solid #E4E4E4; padding-top: 18px !important; gap: 10px; }
.cookiesSetting__button, .cookiesSetting__uncheckLink {
  min-height: 48px; padding: 0 20px !important; border-radius: 4px !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 17px !important; letter-spacing: .05em; text-transform: uppercase;
}
.cookiesSetting__uncheckLink { background: #FFFFFF !important; color: #000000 !important; border: 2px solid #000000 !important; }
.cookiesSetting__button { background: #000000 !important; color: #FFFFFF !important; border: 2px solid #000000 !important; }
.cookiesSetting__button--green { background: #FFD500 !important; color: #000000 !important; border-color: #FFD500 !important; }
.cookiesSetting__uncheckLink:hover, .cookiesSetting__button:hover { background: #FFD500 !important; color: #000000 !important; border-color: #FFD500 !important; }
.cookiesSetting__button--green:hover { background: #000000 !important; color: #FFD500 !important; border-color: #000000 !important; }

/* cookies lišta: vnitřní formulář bez vlastního pozadí, stínu a zaoblení (šablona z něj dělala druhou kartu) */
.siteCookies .siteCookies__form { background: transparent !important; box-shadow: none !important; border-radius: 0 !important; border: 0 !important; }
.siteCookies .siteCookies__link { border-radius: 0 !important; background: transparent !important; }

/* mobil: košík v hlavičce jen ikona (bez rámečku z PC), cookie lišta černá, aby nesplývala se stránkou */
.siteCookies .siteCookies__links { justify-self: start; width: auto !important; }
.siteCookies .siteCookies__link { width: auto !important; }
@media (max-width: 767px) {
  #header a.cart-count, #header a.cart-count.full, #header a.cart-count:hover, #header a.cart-count.full:hover, #header a.cart-count.full.hovered {
    border: 0 !important; background: transparent !important; padding: 0 !important; min-height: 0 !important; color: #FFFFFF !important;
  }
  #header a.cart-count.full { color: #FFD500 !important; }
  #header a.cart-count.full i { top: 4px !important; right: 2px !important; background: #FFD500 !important; color: #000000 !important; border: 2px solid #000000 !important; }

  .siteCookies.siteCookies--bottom { background: #000000 !important; box-shadow: 0 -10px 30px rgba(0, 0, 0, .45) !important; }
  .siteCookies.siteCookies--bottom::before { background: #FFD500 !important; }
  .siteCookies .siteCookies__text { color: #E6E6E6 !important; }
  .siteCookies .siteCookies__link { color: #FFFFFF !important; }
  .siteCookies .siteCookies__button:hover { background: #FFFFFF !important; color: #000000 !important; border-color: #FFFFFF !important; }
}

/* ---------- Mobilní menu (hamburger): černé, velké položky, oddělovače, Výprodej červeně ---------- */
@media (max-width: 767px) {
  #navigation, #navigation .navigation-in, #navigation .menu-level-1 { background: #000000 !important; }
  #navigation .menu-level-1 > li { border-bottom: 1px solid #222222 !important; background: transparent !important; }
  #navigation .menu-level-1 > li > a {
    display: flex !important; align-items: center; min-height: 60px; padding: 14px 56px 14px 20px !important;
    color: #FFFFFF !important; background: transparent !important; text-decoration: none !important;
    font-family: 'Oxanium', sans-serif !important; font-size: 26px !important; line-height: 1.05 !important;
    letter-spacing: .03em; text-transform: uppercase;
  }
  #navigation .menu-level-1 > li > a b { font-weight: 800 !important; color: inherit !important; text-decoration: none !important; border: 0 !important; }
  #navigation .menu-level-1 > li > a[href="/vyprodej/"] { color: #FF4D3D !important; }
  #navigation .menu-level-1 > li.exp > a { color: #FFD500 !important; }
  #navigation .menu-level-1 .submenu-arrow { filter: invert(1) !important; opacity: .9; }
  /* podkategorie */
  #navigation .menu-level-1 .menu-level-2 { background: #111111 !important; padding: 6px 0 12px !important; border: 0 !important; }
  #navigation .menu-level-2 a.menu-image { display: none !important; }
  #navigation .menu-level-2 > li { border: 0 !important; background: transparent !important; }
  #navigation .menu-level-2 > li > div > a, #navigation .menu-level-2 > li > a:not(.menu-image) {
    display: block; padding: 11px 20px 11px 32px !important; color: #CFCFCF !important; background: transparent !important;
    font-family: 'Oxanium', sans-serif !important; font-size: 17px !important; font-weight: 600; text-decoration: none !important;
  }
  #navigation .menu-level-2 a span { color: inherit !important; }
  #navigation .menu-level-2 a:active, #navigation .menu-level-2 a:hover { color: #FFD500 !important; }
  /* spodní část: měna, přihlášení */
  #navigation .navigationActions { background: #000000 !important; border-top: 1px solid #222222 !important; padding: 8px 0 24px !important; }
  #navigation .navigationActions a, #navigation .navigationActions span { color: #BDBDBD !important; font-size: 16px !important; text-decoration: none !important; background: transparent !important; }
  #navigation .navigationActions .submenu-arrow { filter: invert(1) !important; }
  #navigation .navigationActions .menu-level-2 { background: #111111 !important; }
  #navigation .navigation-close { filter: invert(1); }
}

/* ---------- Kategorie: nadpis, podkategorie, filtry, kartičky produktů ---------- */
body.type-category .category-title { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 64px !important; line-height: .95 !important; text-transform: uppercase; color: #000000 !important; margin-bottom: 12px !important; }
body.type-category .category-perex { font-size: 16px; line-height: 1.6; color: #3D3D3D; max-width: 760px; }
/* podkategorie jako dlaždice */
body.type-category ul.subcategories { margin-top: 20px !important; }
body.type-category ul.subcategories li { padding: 0 6px 12px !important; }
body.type-category ul.subcategories li a {
  display: flex !important; align-items: center; gap: 12px; min-height: 64px; padding: 10px 16px !important;
  border: 1.5px solid #000000 !important; border-radius: 4px !important; background: #FFFFFF !important; color: #000000 !important; text-decoration: none !important;
  transition: background-color .15s, transform .15s;
}
body.type-category ul.subcategories li a .text { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 19px !important; letter-spacing: .04em; text-transform: uppercase; color: #000000 !important; }
body.type-category ul.subcategories li a:hover { background: #FFD500 !important; transform: translateY(-2px); }
/* nejprodávanější */
body.type-category .products-top-header { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 30px !important; text-transform: uppercase; color: #000000 !important; }
body.type-category .products-top-wrapper { background: #F4F4F4; border-radius: 4px; padding: 20px 24px !important; }
/* filtry vlevo */
body.type-category .sidebar h4, body.type-category .sidebar h4 span { font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 20px !important; text-transform: uppercase; color: #000000 !important; }
body.type-category .sidebar .box, body.type-category .sidebar .filters-wrapper { border-radius: 4px !important; }
body.type-category .sidebar input[type="checkbox"] { accent-color: #000000; }
body.type-category .sidebar .filters-unveil-button-wrapper a, body.type-category .sidebar [class*="unveil"] a {
  font-family: 'Oxanium', sans-serif !important; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #000000 !important;
}
/* řazení a stránkování */
body.type-category .category-header { border-bottom: 1.5px solid #000000; padding-bottom: 12px; margin-bottom: 24px; }
body.type-category .sortingToggle__value { font-weight: 800; }
body.type-category .pagination__currentPage, body.type-category .pagination__link {
  min-width: 44px; min-height: 44px; display: inline-flex !important; align-items: center; justify-content: center; border-radius: 4px !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 18px !important;
}
body.type-category .pagination__currentPage { background: #000000 !important; color: #FFD500 !important; }
body.type-category .pagination__link { border: 1.5px solid #000000 !important; background: #FFFFFF !important; color: #000000 !important; }
body.type-category .pagination__link:hover { background: #FFD500 !important; }
body.type-category .loadMore__button {
  min-height: 52px; padding: 0 28px !important; border: 2px solid #000000 !important; border-radius: 4px !important; background: #FFFFFF !important; color: #000000 !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 19px !important; letter-spacing: .06em; text-transform: uppercase;
}
body.type-category .loadMore__button:hover { background: #000000 !important; color: #FFFFFF !important; }
/* kartičky produktů v mřížce */
body.type-category #products .product .p { text-align: left !important; }
body.type-category #products .product .image { display: block; background: #F4F4F4; border-radius: 4px; overflow: hidden; outline: 2px solid transparent; transition: outline-color .15s; }
body.type-category #products .product .image img { transition: transform .35s ease; }
body.type-category #products .product:hover .image { outline-color: #000000; }
body.type-category #products .product:hover .image img { transform: scale(1.04); }
body.type-category #products .product .p-in, body.type-category #products .product .p-in-in, body.type-category #products .product .p-bottom { text-align: left !important; padding-left: 0 !important; padding-right: 0 !important; }
body.type-category #products .product .name, body.type-category #products .product .name span { font-weight: 700 !important; font-size: 16px !important; line-height: 1.3 !important; color: #1F1F1F !important; text-align: left !important; min-height: 0 !important; }
body.type-category #products .product .name:hover span { text-decoration: underline; text-decoration-color: #FFD500; text-decoration-thickness: 2px; }
body.type-category #products .product .availability { font-size: 13px !important; text-align: left !important; }
body.type-category #products .product .name { padding: 0 !important; }
body.type-category #products .product .ratings-wrapper { height: auto !important; min-height: 0 !important; margin-top: 6px !important; display: block !important; }
body.type-category #products .product .p-in { padding-top: 12px !important; }
body.type-category #products .product .stars-placeholder { display: none !important; }
body.type-category #products .product .p-bottom { padding-top: 8px !important; }
body.type-category #products .product .prices { text-align: left !important; justify-content: flex-start !important; display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
body.type-category #products .product .price-final strong { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 24px !important; color: #000000 !important; }
body.type-category #products .product .price-standard, body.type-category #products .product .price-standard strong { font-size: 15px !important; color: #7A7A7A !important; text-decoration: line-through; font-weight: 400 !important; }
body.type-category #products .product .price-standard-wrapper-placeholder { display: none !important; }
/* štítky (barvy zůstávají z adminu) */
body.type-category .flags .flag { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 13px !important; letter-spacing: .08em; text-transform: uppercase; padding: 5px 10px !important; border-radius: 2px !important; }
@media (max-width: 767px) {
  body.type-category .category-title { font-size: 42px !important; }
  body.type-category ul.subcategories li a { min-height: 52px; padding: 8px 12px !important; }
  body.type-category ul.subcategories li a .text { font-size: 16px !important; }
  body.type-category #products .product .price-final strong { font-size: 20px !important; }
}

/* mobil: tlačítko menu při otevřeném menu černé se žlutým křížkem (šablona dávala bílý čtverec) */
@media (max-width: 767px) {
  #header .navigation-buttons a[data-target="navigation"], #header .navigation-buttons a[data-target="navigation"]::before { background: #000000 !important; color: #FFD500 !important; }
}

/* mobilní menu: Měna a Přihlášení stejným písmem jako položky menu, jen menší a tlumené */
@media (max-width: 767px) {
  #navigation .navigationActions > li > a, #navigation .navigationActions > li > a span {
    font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 20px !important;
    letter-spacing: .04em; text-transform: uppercase; color: #BDBDBD !important;
  }
  #navigation .navigationActions > li > a { display: flex !important; align-items: center; min-height: 52px; padding: 10px 56px 10px 20px !important; }
  #navigation .navigationActions .menu-level-2 a { font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 18px !important; text-transform: uppercase; }
}

/* ---------- Kategorie v2: tlačítka na kartičkách, filtr (PC i mobil) ---------- */
/* tlačítka na kartičkách: Detail s černým obrysem, Do košíku žlutě */
body.type-category #products .product .p-bottom { padding-top: 12px !important; }
body.type-category #products .product .p-bottom .btn {
  display: flex !important; width: 100%; align-items: center; justify-content: center; min-height: 46px; margin-top: 10px; padding: 0 16px !important;
  border: 2px solid #000000 !important; border-radius: 4px !important; background: #FFFFFF !important; color: #000000 !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 17px !important; letter-spacing: .06em; text-transform: uppercase; text-decoration: none !important;
  transition: background-color .15s, color .15s;
}
body.type-category #products .product .p-bottom .btn:hover { background: #000000 !important; color: #FFFFFF !important; }
body.type-category #products .product .p-bottom .btn-cart, body.type-category #products .product .p-bottom .add-to-cart-button, body.type-category #products .product .p-bottom button[type="submit"] {
  background: #FFD500 !important; border-color: #FFD500 !important; color: #000000 !important;
}
body.type-category #products .product .p-bottom .btn-cart:hover, body.type-category #products .product .p-bottom .add-to-cart-button:hover, body.type-category #products .product .p-bottom button[type="submit"]:hover { background: #000000 !important; border-color: #000000 !important; color: #FFD500 !important; }

/* filtr: karta */
body.type-category .sidebar .box-filters { border: 0 !important; border-top: 4px solid #FFD500 !important; border-radius: 4px !important; background: #FFFFFF !important; box-shadow: 0 6px 24px rgba(0,0,0,.08); padding: 20px !important; }
body.type-category #filters .filter-section, body.type-category #filters .slider-wrapper { border: 0 !important; border-bottom: 1px solid #E4E4E4 !important; padding: 0 0 16px !important; margin: 0 0 16px !important; }
body.type-category #filters .filter-section:last-child { border-bottom: 0 !important; margin-bottom: 0 !important; }
body.type-category #filters h4, body.type-category #filters h4 span { margin: 0 0 12px !important; font-family: 'Oxanium', sans-serif !important; font-weight: 800 !important; font-size: 20px !important; text-transform: uppercase; color: #000000 !important; }
body.type-category #filters .slider-header { font-weight: 700; font-size: 14px; color: #1F1F1F; }
body.type-category #filters .ui-slider { background: #E4E4E4 !important; border: 0 !important; height: 4px !important; }
body.type-category #filters .ui-slider-range { background: #FFD500 !important; }
body.type-category #filters .ui-slider-handle { width: 20px !important; height: 20px !important; top: -8px !important; border-radius: 50% !important; background: #000000 !important; border: 3px solid #FFD500 !important; cursor: grab; }
/* zaškrtávátka */
body.type-category #filters .filter-label { position: relative !important; font-size: 15px !important; color: #1F1F1F !important; padding-left: 32px !important; display: flex !important; align-items: center; justify-content: space-between; gap: 8px; min-height: 34px; cursor: pointer; }
body.type-category #filters .filter-label::before { width: 20px !important; height: 20px !important; border: 1.5px solid #000000 !important; border-radius: 3px !important; background: #FFFFFF !important; top: 50% !important; margin-top: 0 !important; transform: translateY(-50%) !important; }
body.type-category #filters input:checked + .filter-label::before { background: #000000 !important; border-color: #000000 !important; }
body.type-category #filters input:checked + .filter-label::after { background: #FFD500 !important; width: 10px !important; height: 10px !important; left: 5px !important; top: 50% !important; margin-top: 0 !important; transform: translateY(-50%) !important; border-radius: 1px !important; }
body.type-category #filters .filter-label:hover::before { border-color: #FFD500 !important; box-shadow: 0 0 0 2px #FFD500; }
body.type-category #filters .filter-label.disabled { opacity: .4; }
body.type-category #filters .filter-count { background: #F4F4F4 !important; color: #5C5C5C !important; border-radius: 10px !important; padding: 1px 8px !important; font-size: 12px !important; font-weight: 700; min-width: 26px; text-align: center; }
body.type-category .sidebar .unveil-button:not([data-unveil="filters"]) {
  display: flex !important; width: 100%; align-items: center; justify-content: center; min-height: 46px; border: 2px solid #000000 !important; border-radius: 4px !important; background: #FFFFFF !important; color: #000000 !important;
  font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 17px !important; letter-spacing: .06em; text-transform: uppercase; text-decoration: none !important;
}
body.type-category .sidebar .unveil-button:hover { background: #000000 !important; color: #FFFFFF !important; }

/* mobil: Otevřít filtr a Řadit podle jako výrazná tlačítka s černým obrysem */
@media (max-width: 767px) {
  body.type-category .filters-unveil-button-wrapper a.unveil-button, body.type-category .sortingToggle {
    display: flex !important; width: 100%; align-items: center; min-height: 52px; padding: 0 48px 0 46px !important; position: relative;
    background: #FFFFFF !important; color: #000000 !important; border: 2px solid #000000 !important; border-radius: 4px !important; box-shadow: none !important;
    font-family: 'Oxanium', sans-serif !important; font-weight: 700 !important; font-size: 18px !important; letter-spacing: .05em; text-transform: uppercase;
  }
  body.type-category .filters-unveil-button-wrapper a.unveil-button { padding: 0 14px 0 20px !important; gap: 10px; justify-content: flex-start !important; }
  body.type-category .filters-unveil-button-wrapper { width: 100% !important; padding: 0 !important; }
  body.type-category .filters-unveil-button-wrapper a.unveil-button::after { margin-left: auto !important; }
  body.type-category .sortingToggle__label, body.type-category .sortingToggle__value { color: #000000 !important; }
  body.type-category .sortingToggle__value { margin-left: 6px; text-decoration: underline; text-decoration-color: #FFD500; text-decoration-thickness: 3px; text-underline-offset: 3px; }
  body.type-category .filters-unveil-button-wrapper a.unveil-button:active, body.type-category .sortingToggle:active { background: #FFD500 !important; }
  body.type-category .category-header { border-bottom: 0 !important; padding-bottom: 0 !important; margin-bottom: 12px !important; }
  body.type-category .sidebar .box-filters { box-shadow: none; padding: 16px !important; }
}
