/* FONT */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&display=swap');
* { font-family: 'Montserrat', sans-serif !important; }

/* HLAVNÍ NAVIGACE (desktop) */
.header-bottom .menu-level-1 > li { margin: 0 10px; }
.header-bottom .menu-level-1 > li > a{
  display:inline-block; padding:8px 20px; border:1px solid #1a1a1a; border-radius:25px;
  text-decoration:none; color:#1a1a1a; font-weight:bold; transition:.3s; box-shadow:3px 3px 0 #000;
}
.header-bottom .menu-level-1 > li > a:hover,
.header-bottom .menu-level-1 > li > a.active{ background:#1a1a1a; color:#fff; }

/* CATEGORY TOP + SIDEBAR */
.category-top{ border-bottom:1px solid #444; }
.sidebar-inner{
  background:#fff !important; border-radius:20px !important; overflow:hidden; position:relative; z-index:1;
}

/* LAYOUT KATEGORIÍ */
.products.products-page{ display:flex; flex-wrap:wrap; gap:20px; }
.category-content-wrapper .products.products-page .product{
  flex:1 1 calc(31.33% - 20px); background:#fff; overflow:hidden; box-sizing:border-box;
  padding:15px; border-radius:20px;
}
@media (max-width:1599px){
  .category-content-wrapper .products.products-page .product{ padding:0 15px; }
}
@media (max-width:768px){
  .category-content-wrapper .products.products-page .product{ padding:0 10px; flex:1 1 calc(50% - 10px); }
}

/* STÍNY DLE DRUHU ZVÍŘETE */
.category-content-wrapper .produkt-kocky,
.category-content-wrapper .produkt-cats{ box-shadow:6px 6px 0 #db8cb9 !important; border:1px solid #333 !important; border-radius:20px !important; }
.category-content-wrapper .produkt-psi,
.category-content-wrapper .produkt-dogs{ box-shadow:6px 6px 0 #60c3dc !important; border:1px solid #333 !important; border-radius:20px !important; }
.category-content-wrapper .produkt-kone,
.category-content-wrapper .produkt-horses{ box-shadow:6px 6px 0 #b78a6d !important; border:1px solid #333 !important; border-radius:20px !important; }

/* SLIDER NA HOMEPAGE */
.section.section--products-slider .product{
  background:#fff; border:1px solid #333; border-radius:20px; padding:15px; box-sizing:border-box; overflow:hidden;
}
.section.section--products-slider .produkt-kocky,
.section.section--products-slider .produkt-cats{ box-shadow:6px 6px 0 #db8cb9 !important; }
.section.section--products-slider .produkt-psi,
.section.section--products-slider .produkt-dogs{ box-shadow:6px 6px 0 #60c3dc !important; }
.section.section--products-slider .produkt-kone,
.section.section--products-slider .produkt-horses{ box-shadow:6px 6px 0 #b78a6d !important; }

/* TLAČÍTKA DO KOŠÍKU */
.btn-cart, .add-to-cart-button{
  border-radius:999px !important; padding:12px 24px !important; font-weight:bold !important; font-size:14px !important;
  color:#000 !important; text-transform:uppercase !important; transition:.2s ease-in-out; border:2px solid transparent !important;
}
[data-animal="cat"], [data-animal="cats"]{ --main-color:#db8cb9; }
[data-animal="dog"], [data-animal="dogs"]{ --main-color:#60c3dc; }
[data-animal="horse"], [data-animal="horses"]{ --main-color:#b78a6d; }

[data-animal="cat"] .btn-cart, [data-animal="cat"] .add-to-cart-button,
[data-animal="cats"] .btn-cart, [data-animal="cats"] .add-to-cart-button,
[data-animal="dog"] .btn-cart, [data-animal="dog"] .add-to-cart-button,
[data-animal="dogs"] .btn-cart, [data-animal="dogs"] .add-to-cart-button,
[data-animal="horse"] .btn-cart, [data-animal="horse"] .add-to-cart-button,
[data-animal="horses"] .btn-cart, [data-animal="horses"] .add-to-cart-button{
  background:var(--main-color) !important; border-color:var(--main-color) !important;
}
[data-animal="cat"] .btn-cart:hover, [data-animal="cat"] .add-to-cart-button:hover,
[data-animal="cats"] .btn-cart:hover, [data-animal="cats"] .add-to-cart-button:hover,
[data-animal="dog"] .btn-cart:hover, [data-animal="dog"] .add-to-cart-button:hover,
[data-animal="dogs"] .btn-cart:hover, [data-animal="dogs"] .add-to-cart-button:hover,
[data-animal="horse"] .btn-cart:hover, [data-animal="horse"] .add-to-cart-button:hover,
[data-animal="horses"] .btn-cart:hover, [data-animal="horses"] .add-to-cart-button:hover{
  background:#fff !important; box-shadow: inset 0 0 0 2px var(--main-color) !important; color:#000 !important;
}

/* BARVA CENOVKY – LIST/DETAIL */
[data-animal="cat"] .price-final-holder,   [data-animal="cats"]  .price-final-holder{ color:#db8cb9 !important; }
[data-animal="dog"] .price-final-holder,   [data-animal="dogs"]  .price-final-holder{ color:#60c3dc !important; }
[data-animal="horse"] .price-final-holder, [data-animal="horses"].price-final-holder{ color:#b78a6d !important; }
.p-detail-inner[data-animal="cat"]   .p-price-wrapper .price-final{ color:#db8cb9; }
.p-detail-inner[data-animal="dog"]   .p-price-wrapper .price-final{ color:#60c3dc; }
.p-detail-inner[data-animal="horse"] .p-price-wrapper .price-final{ color:#b78a6d; }

/* OBECNÝ WRAPPER KATEGORIÍ */
.category-content-wrapper{
  border:1px solid #333; border-radius:20px; padding:35px; background:#fff; box-sizing:border-box;
}
@media (max-width:768px){ .category-content-wrapper{ padding:15px; } }

/* Kategorie – skrytí subkategorií s obrázky */
ul.subcategories.with-image{ display:none !important; }

/* ROZCESTNÍK */
.kategorie-rozcestnik{
  display:flex; justify-content:center; align-items:flex-start; gap:16px; flex-wrap:wrap; padding:20px 0;
}
.kategorie-rozcestnik-box{ width:400px; height:440px; text-align:center; flex-shrink:0; }
.kategorie-rozcestnik-box a{ display:block; width:100%; height:100%; }
.kategorie-rozcestnik-box img{
  width:100%; height:100%; object-fit:contain; transition:transform .3s; display:block; margin:0 auto;
}
.kategorie-rozcestnik-box:hover img{ transform:scale(1.05); }
.kategorie-rozcestnik-box span{ display:none; }
@media (max-width:1280px){ .kategorie-rozcestnik-box{ width:32vw; height:auto; } }
@media (max-width:768px){
  .kategorie-rozcestnik-box{ width:30vw; }
  .kategorie-rozcestnik{ gap:10px; }
}

/* PRODUKT DETAIL – skrýt default nadpis */
.basic-description h4{ display:none; }

/* HP – full bleed & hero */
.buddy-hp-fullbleed{ width:100vw; margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw); }
.buddy-hp-wrap img{ display:block; max-width:100%; height:auto; border:0; }
.buddy-hp-hero{ position:relative; }
.buddy-hp-hero a{ display:block; line-height:0; }
.buddy-hp-hero img{ width:100%; height:auto; }

/* HP – výhody / marquee */
.buddy-hp-benefits{
  background:#60c3dc; overflow:hidden; position:relative; height:50px; display:flex; align-items:center;
}
.buddy-hp-marquee{ display:flex; width:max-content; animation:buddy-hp-marquee 20s linear infinite; }
.buddy-hp-marquee-inner{ display:flex; align-items:center; }
.buddy-hp-marquee-inner span{
  display:inline-block; padding:0 2rem; font-weight:700; white-space:nowrap; color:#000; font-size:16px; line-height:50px; text-transform:uppercase;
}
.buddy-hp-marquee-inner .buddy-hp-star{ padding:0 1.5rem; font-size:18px; opacity:.9; }
@keyframes buddy-hp-marquee{ from{transform:translateX(0)} to{transform:translateX(-50%)} }
@media (max-width:768px){
  .buddy-hp-benefits{ height:44px; }
  .buddy-hp-marquee-inner span{ font-size:14px; padding:0 1.2rem; line-height:44px; }
  .buddy-hp-marquee-inner .buddy-hp-star{ font-size:16px; padding:0 1rem; }
}

/* KONTAKTY */
.sb-contact{ display:grid; grid-template-columns:1fr 1fr; gap:30px; margin:20px 0; }
.sb-card{ background:#fff; border:1px solid #333; border-radius:20px; padding:24px; position:relative; }
.sb-chip{
  display:inline-block; padding:6px 16px; border:1px solid #1a1a1a; border-radius:25px; font-weight:600; font-size:14px;
  text-transform:uppercase; color:#1a1a1a; background:#fff; box-shadow:3px 3px 0 #000; position:absolute; top:-18px; left:20px;
}
.sb-value{ font-size:20px; font-weight:600; margin:20px 0 0; }
.sb-value a{ color:#1a1a1a; text-decoration:none; border-bottom:2px solid transparent; }
.sb-value a:hover{ border-bottom-color:#1a1a1a; }
.sb-address{ font-style:normal; line-height:1.6; margin-top:16px; }
@media (max-width:768px){
  .sb-contact{ grid-template-columns:1fr; gap:24px; }
  .sb-card{ padding:20px; }
  .sb-value{ font-size:18px; }
  .sb-chip{ font-size:13px; }
}

/* KARTA CENY NA DETAILU (duplicitní se seznamem – ponecháno separátně kvůli specifitě šablony) */
.p-detail-inner[data-animal="cat"]   .p-price-wrapper .price-final{ color:#db8cb9; }
.p-detail-inner[data-animal="dog"]   .p-price-wrapper .price-final{ color:#60c3dc; }
.p-detail-inner[data-animal="horse"] .p-price-wrapper .price-final{ color:#b78a6d; }

/* CATEGORY TABS */
#category-header fieldset{
  display:flex; gap:8px; border:none; padding:0; margin:0 0 20px; justify-content:center; flex-wrap:wrap;
}
#category-header input[type="radio"]{ display:none; }
#category-header label{
  font-size:1.3rem !important; padding:16px 31px !important; border:1px solid #000; border-radius:999px;
  margin-right:6px; cursor:pointer; transition:.3s; font-weight:bold; display:inline-block; line-height:1 !important; text-transform:uppercase;
}
#category-header label:hover{ background:#f0f0f0 !important; }
#category-header input[type="radio"]:checked + label{ background:#000; color:#fff; }

/* BOX: Kategorie (Samba) */
.box-categories{ border:1px solid #000; border-radius:14px; padding:18px 16px 14px; background:#fff; }
.box-categories > h4{ margin:0 0 14px; font-weight:800; text-transform:uppercase; letter-spacing:.02em; }
.box-categories #categories .categories.cat-01{
  border:2px solid #000; border-radius:12px; background:#fff; overflow:hidden;
}
.box-categories #categories .topic > a{
  display:block; padding:10px 14px; background:transparent; font-weight:600; color:inherit; text-decoration:none; line-height:1.2; border:0; border-radius:0; text-transform:lowercase;
}
.box-categories #categories .topic > a::first-letter{ text-transform:uppercase; }
.box-categories #categories .topic > a .cat-trigger{ display:none; }
.box-categories #categories ul{ list-style:none; margin:0; padding:0; }
.box-categories #categories ul > li > a{
  display:block; padding:10px 14px; border-top:1px solid #000; text-decoration:none; color:inherit; font-weight:600; line-height:1.2; background:#fff; border-radius:0;
}

/* Odstranění defaultních rámečků Samba okolo boxu Kategorie */
aside.sidebar.sidebar-left .sidebar-inner .box.box-bg-variant.box-categories,
aside.sidebar.sidebar-left .sidebar-inner .box.box-categories{
  border:0 !important; box-shadow:none !important; background:transparent !important; background-image:none !important; outline:0 !important;
}
aside.sidebar.sidebar-left .sidebar-inner .box.box-categories::before,
aside.sidebar.sidebar-left .sidebar-inner .box.box-categories::after,
aside.sidebar.sidebar-left .sidebar-inner .box.box-bg-variant.box-categories::before,
aside.sidebar.sidebar-left .sidebar-inner .box.box-bg-variant.box-categories::after{
  content:none !important; display:none !important;
}
aside.sidebar.sidebar-left .sidebar-inner .box.box-categories > .box-inner,
aside.sidebar.sidebar-left .sidebar-inner .box.box-categories > .content,
aside.sidebar.sidebar-left .sidebar-inner .box.box-bg-variant.box-categories > .box-inner,
aside.sidebar.sidebar-left .sidebar-inner .box.box-bg-variant.box-categories > .content{
  border:0 !important; box-shadow:none !important; background:transparent !important;
}

/* HP PRODUCT SLIDER – FIX */
.product-slider .products-block{ padding:0 !important; gap:0 !important; }
.product-slider .product{
  margin:0 !important; outline:none !important; outline-offset:0 !important; background:transparent !important;
  border:0 !important; overflow:visible !important; box-sizing:border-box; padding:10px;
}
.product-slider .product .p{
  background:#fff; border:1px solid #333; border-radius:20px; box-sizing:border-box; padding:15px; overflow:hidden; position:relative;
}
.product-slider .produkt-cats .p  { box-shadow:6px 6px 0 #db8cb9 !important; }
.product-slider .produkt-dogs .p  { box-shadow:6px 6px 0 #60c3dc !important; }
.product-slider .produkt-horses .p{ box-shadow:6px 6px 0 #b78a6d !important; }
.product-slider .product .image img{ display:block; width:100%; height:auto; }
@media (max-width:768px){
  .product-slider .product{ padding:6px; }
  .product-slider .product .p{ padding:12px; border-radius:16px; }
}
.product-slider .product::before, .product-slider .product::after{ content:none !important; }

/* Header – skrytí případné default home ikony */
.navigation-home-icon::before{ display:none !important; }

/* Doplňkové bannery na mobilu pod sebou */
@media (max-width:768px){
  .next-to-carousel-banners{ display:flex; flex-direction:column; gap:12px; }
  .next-to-carousel-banners .banner-wrapper{ width:100% !important; }
  .next-to-carousel-banners .banner-wrapper img{ width:100% !important; height:auto !important; display:block; }
}

/* VÝMĚNA IKONEK V ZÁHLAVÍ */
/* Košík */
#header .navigation-buttons a i,
#header .navigation-buttons a span.icon-cart{ font-size:1.15em !important; }
#header .navigation-buttons a span.icon-cart:after{ content:none !important; }
#header .navigation-buttons a span.icon-cart::before{
  content:""; display:inline-block; background-image:url('https://727342.myshoptet.com/user/documents/upload/kosik_ikona.svg') !important;
  background-size:contain !important; background-repeat:no-repeat !important; width:48px; height:48px; transition:filter .3s;
}
#header .navigation-buttons a span.icon-cart:hover::before{
  filter: brightness(0) saturate(100%) invert(70%) sepia(8%) saturate(3770%) hue-rotate(162deg) brightness(95%) contrast(88%);
}

/* Hledání */
#header .navigation-buttons a i.icon-search{ display:none !important; }
#header .navigation-buttons a[data-target="search"]::before{
  content:""; display:inline-block; background-image:url('https://727342.myshoptet.com/user/documents/upload/lupa_ikona.svg') !important;
  background-size:contain; background-repeat:no-repeat; width:48px; height:48px; vertical-align:middle; transition:filter .3s;
}
#header .navigation-buttons a[data-target="search"]:hover::before{
  filter: brightness(0) saturate(100%) invert(70%) sepia(8%) saturate(3770%) hue-rotate(162deg) brightness(95%) contrast(88%);
}

/* Profil / Login (ikona v headeru) – barvu jen na hover, vzhled tlačítka v menu necháváme default */
#header .navigation-buttons a i.icon-login{ display:none !important; }
#header .navigation-buttons a.top-nav-button-login::before{
  content:""; display:inline-block; background-image:url('https://727342.myshoptet.com/user/documents/upload/profil_ikona.svg') !important;
  background-size:contain; background-repeat:no-repeat; width:48px; height:48px; vertical-align:middle; transition:filter .3s;
}
#header .navigation-buttons a.top-nav-button-login:hover::before{
  filter: brightness(0) saturate(100%) invert(70%) sepia(8%) saturate(3770%) hue-rotate(162deg) brightness(95%) contrast(88%);
}

/* MOBILNÍ MENU – bílé pozadí panelu, vlastní styl jen pro položky, login default */
@media (max-width:768px){
  #navigation{
    background:#fff !important; padding:0 !important; border:0 !important; overflow:hidden !important;
    border-radius:0 0 20px 20px; box-sizing:border-box !important;
  }
  #navigation .menu-level-1{
    margin:0; padding:16px !important; background:transparent !important; border-top:2px solid #000;
    border-radius:0 0 20px 20px; position:relative; z-index:1; box-shadow:0 8px 24px rgba(0,0,0,.08);
  }
  /* vypnutí defaultních šedých linek/pozadí */
  #navigation .menu, #navigation .menu-level-1, #navigation .menu-level-1 > li,
  #navigation .menu-level-2, #navigation .menu-level-2 > li{
    background:transparent !important; border:0 !important; box-shadow:none !important; outline:0 !important;
  }
  #navigation .menu-level-1 > li::before, #navigation .menu-level-1 > li::after,
  #navigation .menu-level-1 > li > a::before, #navigation .menu-level-1 > li > a::after,
  #navigation .menu-level-2 > li::before, #navigation .menu-level-2 > li::after{
    content:none !important; display:none !important;
  }
  /* „pill“ položky */
  #navigation .menu-level-1 > li{ margin:0 0 10px !important; padding:0 !important; }
  #navigation .menu-level-1 > li > a{
    display:block; padding:12px 18px; border:1px solid #1a1a1a; border-radius:25px; font-weight:700; color:#1a1a1a;
    text-decoration:none; text-align:center; box-shadow:3px 3px 0 #000; transition:.3s;
  }
  #navigation .menu-level-1 > li > a:hover, #navigation .menu-level-1 > li > a.active{ background:#1a1a1a; color:#fff; }
  /* 2. úroveň – chips */
  #navigation .menu-level-2{ margin:8px 0 12px; padding-left:0; }
  #navigation .menu-level-2 > li > a{
    display:inline-block; margin:4px 4px 0 0; padding:8px 14px; font-size:14px; font-weight:600; color:#000; text-decoration:none;
    border:1px solid #1a1a1a; border-radius:18px; background:#f9f9f9; box-shadow:2px 2px 0 #000; transition:.2s;
  }
  #navigation .menu-level-2 > li > a:hover{ background:#1a1a1a; color:#fff; }
}

/* Skrytí tlačítka Tisknout */
.link-icons .link-icon.print {
  display: none !important;
}

/* VÝPIS BLOG ČLÁNKŮ */
/* 1) Vypnout overlay (pseudo + vnořené prvky) */
#newsWrapper .news-item .image::before,
#newsWrapper .news-item .image::after,
.blog-wrapper .news-item .image::before,
.blog-wrapper .news-item .image::after,
.news-wrapper .news-item:hover .image::before,
.news-wrapper .news-item:hover .image::after,
#newsWrapper .news-item:hover::before,
#newsWrapper .news-item:hover::after {
  content: none !important;
  display: none !important;
  opacity: 0 !important;
  background: none !important;
}

#newsWrapper .news-item .image .overlay,
#newsWrapper .news-item .image [class*="overlay"],
#newsWrapper .news-item .image [class*="shade"],
#newsWrapper .news-item .image [class*="mask"] {
  display: none !important;
}

/* 2) Zrušit případné backgroundy/gradienty a filtry */
#newsWrapper .news-item .image,
#newsWrapper .news-item {
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

#newsWrapper .news-item .image img {
  filter: none !important;
  opacity: 1 !important;
  mix-blend-mode: normal !important;
  transition: none !important;
  position: relative !important;
  z-index: 2 !important; /* vytáhne IMG nad případné zbytky overlaye */
}

/* 3) Klikací vrstva přes celou fotku (bere URL z .title-link přes JS) */
#newsWrapper .news-item .image { 
  position: relative !important;
}

#newsWrapper .news-item .image .image-link-overlay {
  position: absolute !important;
  inset: 0 !important;
  z-index: 5 !important;          /* nad IMG */
  display: block !important;
  text-indent: -9999px;
  overflow: hidden;
  cursor: pointer;
}

/* Focus kvůli přístupnosti */
#newsWrapper .news-item .image .image-link-overlay:focus {
  outline: 2px solid currentColor;
  outline-offset: 2px;
}

/* Skrytí počtu příspěvků v rubrice */
.pagination-wrapper .pagination-count {
  display: none !important;
}

/* Mobil: u článků s obrázkem skryj textový blok, nech jen fotku (klikací) */
@media (max-width: 767.98px) {
  #newsWrapper .news-item:not(.news-item--noImage) .text {
    display: none !important;
  }

  /* drobné utažení mezer, když zmizí text */
  #newsWrapper .news-item:not(.news-item--noImage) {
    margin-bottom: 16px; /* klidně si uprav */
  }

  /* jistota, že fotka netvoří horizontální posuvník */
  #newsWrapper .news-item .image img {
    max-width: 100%;
    height: auto;
    display: block;
  }
}


/* ZOBRAZENÍ V KATEGORII: pevné 3 sloupce bez roztahování (GRID) */

/* Zruš „placeholdery“, které dělaly díru na začátku */
.category-content-wrapper .products.products-page::before,
.category-content-wrapper .products.products-page::after {
  content: none !important;
}

/* Přepnutí seznamu produktů na GRID (3 sloupce na desktopu) */
.category-content-wrapper .products.products-page {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;                     
  justify-items: stretch;        /* karty vyplní buňku */
  align-items: stretch;
}

/* Reset starých flex stylů na kartě, aby grid nic „neškrcil“ */
.category-content-wrapper .products.products-page .product {
  flex: initial !important;
  width: auto !important;
}

/* Mobil: 2 sloupce (navazuje na tvé breakpoints) */
@media (max-width: 768px) {
  .category-content-wrapper .products.products-page {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
}
