/* ===== TYPO (desktop od 500px) ===== */
@media (min-width:500px){
  p,li{font-size:17px;line-height:1.6}
  h2{font-size:24px;font-weight:700}
  h3{font-size:20px;font-weight:700}
}
.navigation-in li,.navigation-in a{font-size:17px;line-height:1.6}

/* ===== TABULKY: doprava / platba ===== */
.shipping-table,.payment-table{
  width:100%;border-collapse:collapse;margin:20px 0 40px;font-size:15px;line-height:1.5
}
.shipping-table thead,.payment-table thead{display:none}
.shipping-table tbody tr,.payment-table tbody tr{border-bottom:1px dotted #cfcfcf}
.shipping-table td,.payment-table td{padding:12px 0;vertical-align:middle}
.shipping-table td:first-child,.payment-table td:first-child{
  font-weight:600;color:#222;width:24%;white-space:nowrap
}
.shipping-table td:nth-child(2),.payment-table td:nth-child(2){color:#555;padding:0 20px}
.shipping-table td:last-child,.payment-table td:last-child{text-align:right;font-weight:600;white-space:nowrap}

/* Nadpisy sekcí v obsahu */
.content h2{margin:40px 0 10px;font-size:28px;font-weight:800}

/* Mobilní tabulky */
@media (max-width:768px){
  .shipping-table tr,.payment-table tr{display:block;padding:12px 0}
  .shipping-table td,.payment-table td{display:block;padding:4px 0}
  .shipping-table td:first-child,.payment-table td:first-child{width:auto;white-space:normal}
  .shipping-table td:last-child,.payment-table td:last-child{text-align:left;margin-top:4px}
}

/* ===== FOOTER ===== */
#footer{background:#000;width:100%}
#footer .footer-rows{background:transparent}
#footer, #footer p, #footer a, #footer li, #footer h4, #footer span{color:#fff !important}

/* Kontakty ve footeru */
#footer .contact-box a{color:#111 !important}
#footer .contact-box a:hover{color:#af301d !important}

/* Spodní pruh */
#footer .footer-bottom{
  position:relative;background:#af301d;width:100%;padding:22px 0;color:#fff !important
}
#footer .footer-bottom a{color:#fff !important}
#footer .footer-bottom a:hover{color:#f5f5f5}
#footer .footer-bottom .container{display:flex;align-items:center;justify-content:space-between}
#footer .footer-bottom .copyright{margin-left:40px;line-height:1.4}
#footer #signature{margin-right:40px;white-space:nowrap}

@media (max-width:768px){
  #footer .footer-bottom .container{flex-direction:column;align-items:flex-start}
  #footer .footer-bottom .copyright{margin:0 0 8px 20px}
  #footer #signature{margin:0 0 0 20px}
}

/* Servis blok */
#footer .servis-block{
  display:flex;flex-direction:column;align-items:center;
  text-align:center;max-width:420px;margin:0 auto
}
#footer .servis-icon{display:block;margin:0 auto 12px}
#footer .servis-heading{
  color:#af301d !important;font-weight:800;text-transform:uppercase;
  line-height:1.2;margin-bottom:10px;text-align:center
}
#footer .servis-text{text-align:center;line-height:1.5;margin:0}

/* Oddělení pravého banneru */
#footer .custom-footer__banner1701{position:relative;padding-left:40px}
#footer .custom-footer__banner1701::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:1px;
  background:rgba(255,255,255,.25)
}

/* ===== Oblíbené kategorie ===== */
.fav-cat.container{padding:0 16px !important}
@media (min-width:768px){.fav-cat.container{padding:0 32px !important}}
/* ===== OBLÍBENÉ KATEGORIE – SLIDER ===== */

.fav-cat ul{display:grid !important;grid-template-columns:repeat(4,1fr);gap:24px}
@media (max-width:1024px){.fav-cat ul{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.fav-cat ul{grid-template-columns:1fr}}
.fav-cat ul li{float:none !important;width:auto !important}
/* ===== E-mail v hlavičce ===== */
@media (min-width:1200px){
  .top-navigation-bar .project-email{
    display:inline-block;font-size:16px;font-weight:700;margin-left:24px;color:var(--color-primary)
  }
  a.project-email::before{content:'\e910';font-size:16px}
}
@media (min-width:360px) and (max-width:767px){
  .top-navigation-contacts{display:block !important}
  .top-navigation-contacts .project-phone{display:none !important}
  .top-navigation-contacts .project-email{
    display:block !important;position:absolute;right:164px;top:15px;color:#af301d
  }
  a.project-email::before{content:'\e910'}
  .top-navigation-contacts .project-email span{display:none}
}

/* ===== Menu ===== */
@media (min-width:768px){
  .navigation-in{background:transparent}
  .navigation-in > ul > li > a, .submenu-arrow::after, .menu-helper::after{color:#af301d}
}
.navigation-in > ul > li > a{
  display:flex;align-items:center;height:100%;line-height:normal
}

/* Tlačítka */
.btn:not(.cart-count), .compact-form .form-control, .pagination>a, .pagination>strong, a.login-btn{border-radius:10px}

/* Skrytí submenu arrow */
.submenu-arrow, .submenu-arrow::after{display:none !important}

/* Hero obrázek článku */
.news-item-detail .article-hero{
  display:block;width:100%;height:auto;margin:18px 0 28px;border-radius:10px
}
@media (max-width:768px){
  .news-item-detail .article-hero{margin:14px 0 20px;border-radius:6px}
}

/* Produktové karty */

.products.products-block .product{
  border: 0 !important;
  box-shadow: none !important;
}
.products.products-block .product .p{
  padding: 14px 16px 16px !important;
  border-radius: 10px; 
}

/* Hover efekt */
.products.products-block .product .p:hover{
  border-color: rgba(0,0,0,.10) !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.10) !important;
  transform: translateY(-2px);
    border-radius: 10px; 
}
@media (max-width: 768px) {
  .products.products-block .product {
    width: 100% !important;
    max-width: 100% !important;
  }

}
.filters-unveil-button-wrapper {
  display: flex;
  justify-content: center;
}

.faq {
  margin: 32px 0;
}

.faq details {
  border: 1px solid #dcdcdc;
  border-radius: 10px;
  background: #fff;
  margin-bottom: 12px;
  overflow: hidden;
  transition: all 0.2s ease;
}

.faq details:hover {
  border-color: #bdbdbd;
}

.faq summary {
  position: relative;
  display: block;
  padding: 16px 48px 16px 18px;
  font-weight: 600;
  cursor: pointer;
  list-style: none;
  transition: background 0.2s ease;
}

.faq summary:hover {
  background: #f7f7f7;
}

.faq summary::-webkit-details-marker {
  display: none;
}

.faq summary::after {
  content: "+";
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 22px;
  line-height: 1;
  font-weight: 400;
  transition: transform 0.2s ease;
}

.faq details[open] summary::after {
  content: "−";
}

.faq details[open] summary {
  background: #f7f7f7;
}

.faq details p,
.faq details div {
  padding: 0 18px 18px;
  margin: 0;
  line-height: 1.6;
  color: #333;
}

.faq details p + p {
  margin-top: 12px;
}