/* SPA Components SK – tablet 768–1199 px, revize 2, 2026-11-10.
   Načíst ZA stávajícími vlastními styly. Bez změn mobilu <768 a desktopu >=1200. */
@media (min-width:768px) and (max-width:1199px) {
  /* Vlastní čtyřdílný trust bar je vložený do jedné systémové výhody.
     Systémový obal proto nesmí dostat šířku jediné z více výhod. */
  body.in-index .benefitBanner.position--benefitHomepage:has(.sc-benefits),
  body.in-index .benefitBanner__item:has(.sc-benefits),
  body.in-index .benefitBanner__content:has(.sc-benefits),
  body.in-index .benefitBanner__data:has(.sc-benefits) {
    display:block!important;
    flex:0 0 100%!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box;
  }
  body.in-index .sc-benefits {
    width:100%!important;
    padding:24px 0 32px!important;
  }
  body.in-index .sc-benefits-row {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:24px 28px!important;
  }
  body.in-index .sc-benefits-row .sc-benefit,
  body.in-index .sc-benefits-row .sc-benefit:first-child,
  body.in-index .sc-benefits-row .sc-benefit:last-child {
    min-width:0;
    padding:0!important;
    border:0!important;
  }
  body.in-index .sc-benefit-icon {margin-bottom:12px!important;}
  body.in-index .sc-benefit-text strong {font-size:17px!important;}
  body.in-index .sc-benefit-text span {max-width:none!important;font-size:14px!important;}

  /* Dva video bannery mají na tabletu dost místa jen při CTA pod textem. */
  body.in-index .sc-video-banner-link {
    --sc-banner-padding:22px;
    aspect-ratio:4 / 3!important;
    min-width:0;
  }
  body.in-index .sc-video-banner-content {
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:flex-end!important;
    gap:14px!important;
  }
  body.in-index .sc-video-banner-copy {width:100%!important;max-width:100%!important;}
  body.in-index .sc-video-banner-title {
    max-width:100%;
    font-size:clamp(26px,3.3vw,38px)!important;
    line-height:1.08!important;
    white-space:normal!important;
    overflow-wrap:break-word;
  }
  body.in-index .sc-video-banner-eyebrow {
    margin-bottom:8px!important;
    font-size:11px!important;
    letter-spacing:.2em!important;
  }
  body.in-index .sc-video-banner-cta {
    min-width:0!important;
    min-height:46px!important;
    max-width:100%;
    padding:12px 22px!important;
    gap:14px!important;
    font-size:16px!important;
  }
  body.in-index .sc-video-banner-cta svg {width:18px!important;height:18px!important;}

  /* Tablet: pevně šest kategorií, tři sloupce a dva řádky. */
  body.in-index .js-top-category-block .menu-level-2 {
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:16px!important;
    justify-content:normal!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
  }
  body.in-index .js-top-category-block .menu-level-2>li {
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex:none!important;
    margin:0!important;
    padding:0!important;
  }
  body.in-index .js-top-category-block .menu-level-2>li:nth-child(-n+6) {display:block!important;}
  body.in-index .js-top-category-block .menu-level-2>li:nth-child(n+7) {display:none!important;}
  body.in-index .js-top-category-block .menu-level-2>li>.menu-content {
    width:100%;
    height:100%;
    box-sizing:border-box;
  }

  /* Dotyková kategorie: stejná šířka obou sloupců a vyrovnané názvy/ceny. */
  body.type-category .category-content-wrapper {min-width:0!important;}
  body.type-category .category-content-wrapper .products-block {
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    align-items:stretch;
    gap:16px!important;
    margin:0!important;
    width:100%!important;
  }
  body.type-category .category-content-wrapper .products-block::before,
  body.type-category .category-content-wrapper .products-block::after {display:none!important;}
  body.type-category .category-content-wrapper .products-block>.product {
    flex:none!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:0!important;
    margin:0!important;
  }
  body.type-category .category-content-wrapper .products-block .product>.p {
    padding:0 18px 20px!important;
    grid-template-rows:auto 28px 82px minmax(76px,auto) auto!important;
    align-items:start;
  }
  body.type-category .category-content-wrapper .products-block .product>.p>a.image {
    aspect-ratio:1 / 1!important;
    margin-bottom:14px!important;
  }
  body.type-category .category-content-wrapper .products-block .product a.name {
    display:-webkit-box!important;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:3;
    height:4.2em!important;
    min-height:4.2em!important;
    overflow:hidden;
    margin:0 0 14px!important;
    font-size:16px!important;
    line-height:1.4!important;
  }
  body.type-category .category-content-wrapper .products-block .product .prices {
    min-width:0;
    margin:12px 0 16px!important;
  }
  body.type-category .category-content-wrapper .products-block .product .price-final {
    font-size:20px!important;
    line-height:1.25!important;
    letter-spacing:-.3px!important;
  }
  body.type-category .category-content-wrapper .products-block .product .price-additional {font-size:13px!important;}
  body.type-category .category-content-wrapper .products-block .product .product-btn {
    align-self:end!important;
    width:100%!important;
  }
  body.type-category .category-content-wrapper .products-block .product .product-btn .btn {
    min-height:48px!important;
    font-size:16px!important;
  }
  body.in-index .products-block .product>.p>a.image {aspect-ratio:1 / 1!important;}
  body.in-index .products-block .product .product-btn .btn {min-height:48px!important;font-size:16px!important;}

  /* Na tabletu již existuje nativní posuvník, jen nesmí přetékat mimo fotografii. */
  body.type-detail .p-detail-inner .product-top {
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(300px,1fr);
    align-items:start;
    gap:28px;
    margin-left:0!important;
    margin-right:0!important;
  }
  body.type-detail .p-detail-inner .product-top::before,
  body.type-detail .p-detail-inner .product-top::after {display:none!important;}
  body.type-detail .product-top>.col-xs-12:not(.p-image-wrapper):not(.p-info-wrapper) {
    grid-column:1 / -1;
    min-width:0;
    padding:0!important;
  }
  body.type-detail .product-top>.col-xs-12:not(.p-image-wrapper):not(.p-info-wrapper):not(:has(*)) {display:none!important;}
  body.type-detail .product-top>.p-image-wrapper,
  body.type-detail .product-top>.p-info-wrapper {
    float:none!important;
    width:auto!important;
    max-width:100%!important;
    min-width:0!important;
    padding-left:0!important;
    padding-right:0!important;
    margin:0!important;
  }
  body.type-detail .p-detail-inner-header h1 {font-size:30px!important;line-height:1.15!important;}
  body.type-detail .p-image-wrapper .p-image {
    position:relative!important;
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box;
    border-radius:18px;
    background:#fff!important;
    overflow:hidden;
  }
  body.type-detail .p-image-wrapper .p-image:has(>.flags-default .flag) {padding:64px 12px 12px!important;}
  body.type-detail .p-image-wrapper .p-image img {width:100%!important;height:auto!important;max-height:380px!important;object-fit:contain;}
  body.type-detail .p-image-wrapper .p-image>.flags-default {
    position:absolute!important;
    top:12px!important;
    left:12px!important;
    right:auto!important;
    max-width:calc(100% - 86px)!important;
    padding:0!important;
    margin:0!important;
    gap:5px!important;
    flex-flow:row wrap!important;
  }
  body.type-detail .p-image-wrapper .p-image>.flags-extra {
    position:absolute!important;
    top:12px!important;
    right:12px!important;
    bottom:auto!important;
    left:auto!important;
    width:56px!important;
    height:56px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
  }
  body.type-detail .p-thumbnails-wrapper {max-width:100%;min-width:0;overflow:hidden;}
  body.type-detail .p-image-wrapper .thumbnail-next,
  body.type-detail .p-image-wrapper .thumbnail-prev {
    width:44px!important;
    height:44px!important;
    min-width:44px;
    min-height:44px;
    z-index:3;
  }
  body.type-detail .p-image-wrapper .thumbnail-next {right:0!important;}
  body.type-detail .p-image-wrapper .thumbnail-prev {left:0!important;}
  body.type-detail .p-info-wrapper .short-description {font-size:15px!important;line-height:1.55!important;}
  body.type-detail #p-detail-tabs {flex-wrap:wrap!important;gap:8px!important;}
  body.type-detail #p-detail-tabs .shp-tab-link {min-height:46px;white-space:normal;}
  body.type-detail .p-info-wrapper .add-to-cart .btn {min-height:48px;}

  /* Vlastní kontakty a formulář: žádné negativní okraje od desktopové mřížky. */
  body .sc-contact-page {width:100%!important;max-width:100%!important;box-sizing:border-box;}
  body .sc-contact-page [id="kontaktni-formular"] {max-width:100%!important;box-sizing:border-box;}
  body.type-page:has(.sc-contact-page) #kontaktni-formular {
    width:100%!important;
    max-width:100%!important;
    left:auto!important;
    right:auto!important;
    margin-left:0!important;
    margin-right:0!important;
    transform:none!important;
    box-sizing:border-box;
  }
  body #vyrivky-form {width:100%!important;max-width:100%!important;box-sizing:border-box;}
  body #vyrivky-form input:not([type="radio"]):not([type="checkbox"]),
  body #vyrivky-form select {min-height:46px;}
  body.ordering-process .cart-header__contact .cart-content,
  body.ordering-process .cart-header__contact .contact-box ul {
    flex-wrap:wrap!important;
    gap:12px 20px!important;
    max-width:100%;
  }
  body.ordering-process .cart-header__contact {box-sizing:border-box;}
}

@media (min-width:992px) and (max-width:1199px) {
  /* Původní width:100% na výpisu nutil boční panel na samostatný řádek. */
  body.type-category main.content:has(>.sidebar):has(>.category-content-wrapper) {
    display:grid!important;
    grid-template-columns:220px minmax(0,1fr)!important;
    gap:24px!important;
    align-items:start;
  }
  body.type-category main.content>.sidebar {
    grid-column:1;
    width:100%!important;
    min-width:0;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
  }
  body.type-category main.content>.category-content-wrapper {
    grid-column:2;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
  }
  body.type-category main.content>*:not(.sidebar):not(.category-content-wrapper) {grid-column:1 / -1;min-width:0;}
  body.type-category .sidebar .box-categories .pageElement__heading {font-size:18px!important;padding-left:48px!important;}
  body.type-category .sidebar .box-categories a {overflow-wrap:normal;word-break:normal;}
  body.type-category .sidebar .box-categories .categories>.topic>a {
    padding-left:42px!important;
    padding-right:12px!important;
  }
  body.type-category .sidebar .box-categories .categories li>a {
    margin-left:4px!important;
    margin-right:4px!important;
    padding-left:36px!important;
    padding-right:10px!important;
  }
  body.type-category .sidebar .sale.box-sale .sale__content {padding:18px 16px!important;}
  body.type-category .sidebar .sale.box-sale .sale__title {margin-left:14px!important;min-width:0;}
  body.type-category .sidebar .sale.box-sale .sale__title::after {font-size:17px!important;}
  body.type-category .sidebar .box-support .support__content {padding:22px 16px!important;}
  body.type-category .sidebar .box-support .support__title,
  body.type-category .sidebar .box-support .support__title--gray {font-size:21px!important;}
  body.type-category .sidebar .box-support .support__content>.btn {
    min-height:46px;
    max-width:100%;
    padding:12px!important;
    font-size:13px!important;
    white-space:normal;
  }
}
