/*
 * JOSPORT.CZ — HOMEPAGE RESPONSIVE V55 CLEAN
 * ---------------------------------------------------------
 * Čistá sjednocená responzivní homepage.
 *
 * Obsahuje:
 *  - base design benefitů dříve v josport-benefits-v1.4.js
 *  - horní promo bannery
 *  - responzivní benefity
 *  - spodní 4 navigační bannery
 *
 * Neobsahuje mobilní menu.
 * Desktop >= 1100 px se kromě benefitů drží původního layoutu.
 */

/* =========================================================
   1) BENEFITY — BASE DESIGN
   Přesunuto z původního josport-benefits-v1.4.js
   ========================================================= */
body.josport-homepage-rwd-v55 {
  --jhp-blue: #0b4f91;
  --jhp-blue-2: #0b78c8;
  --jhp-border: #dbe8f3;
  --jhp-text: #0b3f78;
  --jhp-muted: #5f6d7c;
}


      /* JOsport – homepage benefity */
      .benefitBanner.position--benefitHomepage {
        display: grid !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        gap: 16px !important;
        width: 100% !important;
        margin: 28px 0 36px !important;
        padding: 0 !important;
        background: transparent !important;
      }

      .benefitBanner.position--benefitHomepage > .benefitBanner__item {
        position: relative !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: flex-start !important;
        min-width: 0 !important;
        min-height: 172px !important;
        padding: 68px 16px 16px !important;
        border: 1px solid #e6edf4 !important;
        border-radius: 18px !important;
        background:
          radial-gradient(circle at 50% 16%, rgba(16, 137, 229, .10), transparent 31%),
          linear-gradient(180deg, #ffffff 0%, #fbfdff 100%) !important;
        box-shadow:
          0 12px 30px rgba(15, 51, 87, .09),
          inset 0 1px 0 rgba(255,255,255,.95) !important;
        text-align: center !important;
        overflow: hidden !important;
        isolation: isolate !important;
        transition:
          transform .22s ease,
          box-shadow .22s ease,
          border-color .22s ease !important;
      }

      .benefitBanner.position--benefitHomepage > .benefitBanner__item:hover {
        transform: translateY(-5px) !important;
        border-color: #cfe4f5 !important;
        box-shadow:
          0 18px 38px rgba(15, 51, 87, .14),
          inset 0 1px 0 rgba(255,255,255,.98) !important;
      }

      .benefitBanner.position--benefitHomepage > .benefitBanner__item::before {
        content: "";
        position: absolute;
        top: 12px;
        left: 50%;
        z-index: 2;
        width: 46px;
        height: 46px;
        border: 1px solid #d9eaf8;
        border-radius: 50%;
        background:
          #fff
          center / 22px 22px
          no-repeat;
        box-shadow:
          0 10px 24px rgba(14, 82, 145, .13),
          0 0 0 6px rgba(20, 143, 229, .035);
        transform: translateX(-50%);
        transition:
          transform .22s ease,
          box-shadow .22s ease !important;
      }

      .benefitBanner.position--benefitHomepage > .benefitBanner__item:hover::before {
        transform: translateX(-50%) scale(1.06);
        box-shadow:
          0 14px 28px rgba(14, 82, 145, .18),
          0 0 0 14px rgba(20, 143, 229, .045);
      }

      .benefitBanner.position--benefitHomepage > .benefitBanner__item::after {
        content: "";
        position: absolute;
        top: 61px;
        left: 50%;
        width: 22px;
        height: 3px;
        border-radius: 999px;
        background: linear-gradient(90deg, #1595ea, #0a5ea9);
        transform: translateX(-50%);
      }

      /* Ikony podle pořadí, obsah textů zůstává ze Shoptetu */
      .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(1)::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b7fd5' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='8' r='3'/%3E%3Cpath d='M3 19v-1a5 5 0 0 1 10 0v1'/%3E%3Cpath d='M16 10a2.5 2.5 0 1 0 0-5'/%3E%3Cpath d='M15 13a4.5 4.5 0 0 1 6 4.3V19'/%3E%3C/svg%3E");
      }

      .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(2)::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b7fd5' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 5h2l2 10h10l2-7H7'/%3E%3Ccircle cx='9' cy='19' r='1'/%3E%3Ccircle cx='17' cy='19' r='1'/%3E%3C/svg%3E");
      }

      .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(3)::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b7fd5' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l2.2 2.1 3-.3.6 3 2.5 1.7-1.4 2.7.8 2.9-2.8 1.2-1.2 2.8-2.9-.8-2.7 1.4-1.7-2.5-3-.6.3-3L3 12l2.1-2.2-.3-3 3-.6L9.5 3.7 12 5.1 14.5 3.7 12 3Z'/%3E%3Cpath d='m9.5 12 1.7 1.7L15 10'/%3E%3C/svg%3E");
      }

      .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(4)::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b7fd5' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 4 4 6l2 4 2-1v11h8V9l2 1 2-4-4-2a4 4 0 0 1-8 0Z'/%3E%3C/svg%3E");
      }

      .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(5)::before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b7fd5' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3 19 6v5c0 4.7-2.8 8.1-7 10-4.2-1.9-7-5.3-7-10V6l7-3Z'/%3E%3Cpath d='m9 12 2 2 4-5'/%3E%3C/svg%3E");
      }

      .benefitBanner.position--benefitHomepage > .benefitBanner__item > * {
        position: relative;
        z-index: 3;
      }

      .benefitBanner.position--benefitHomepage .benefitBanner__title,
      .benefitBanner.position--benefitHomepage .benefitBanner__item h2,
      .benefitBanner.position--benefitHomepage .benefitBanner__item h3,
      .benefitBanner.position--benefitHomepage .benefitBanner__item h4,
      .benefitBanner.position--benefitHomepage .benefitBanner__item strong {
        display: block !important;
        width: 100% !important;
        margin: 0 0 7px !important;
        color: #0b3f78 !important;
        font-size: 15px !important;
        font-weight: 800 !important;
        line-height: 1.22 !important;
        letter-spacing: -.015em !important;
        text-align: center !important;
      }

      .benefitBanner.position--benefitHomepage .benefitBanner__content,
      .benefitBanner.position--benefitHomepage .benefitBanner__description,
      .benefitBanner.position--benefitHomepage .benefitBanner__item p,
      .benefitBanner.position--benefitHomepage .benefitBanner__item span:not(.benefitBanner__title) {
        display: block !important;
        width: 100% !important;
        margin: 0 !important;
        color: #5f6d7c !important;
        font-size: 12px !important;
        font-weight: 400 !important;
        line-height: 1.55 !important;
        text-align: center !important;
      }

      .benefitBanner.position--benefitHomepage a {
        color: inherit !important;
        text-decoration: none !important;
      }


      /* v1.2 – oprava šířky karet a zalamování textu v Shoptetu */
      .benefitBanner.position--benefitHomepage {
        width: 100% !important;
        max-width: none !important;
        justify-content: initial !important;
        align-items: stretch !important;
      }

      .benefitBanner.position--benefitHomepage > .benefitBanner__item {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        flex: none !important;
        margin: 0 !important;
        box-sizing: border-box !important;
      }

      .benefitBanner.position--benefitHomepage > .benefitBanner__item > *,
      .benefitBanner.position--benefitHomepage .benefitBanner__content,
      .benefitBanner.position--benefitHomepage .benefitBanner__text,
      .benefitBanner.position--benefitHomepage .benefitBanner__title,
      .benefitBanner.position--benefitHomepage .benefitBanner__description {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
      }

      .benefitBanner.position--benefitHomepage .benefitBanner__title,
      .benefitBanner.position--benefitHomepage .benefitBanner__item h2,
      .benefitBanner.position--benefitHomepage .benefitBanner__item h3,
      .benefitBanner.position--benefitHomepage .benefitBanner__item h4,
      .benefitBanner.position--benefitHomepage .benefitBanner__item strong {
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: normal !important;
        hyphens: none !important;
      }

      .benefitBanner.position--benefitHomepage .benefitBanner__content,
      .benefitBanner.position--benefitHomepage .benefitBanner__description,
      .benefitBanner.position--benefitHomepage .benefitBanner__item p,
      .benefitBanner.position--benefitHomepage .benefitBanner__item span:not(.benefitBanner__title) {
        white-space: normal !important;
        word-break: normal !important;
        overflow-wrap: break-word !important;
        hyphens: none !important;
      }

/* =========================================================
   2) RESET POUZE PRO HOMEPAGE RESPONZIVNÍ DLAŽDICE
   Odstraňuje konfliktní pseudo-elementy ze Shoptetu/starších JS.
   ========================================================= */
@media (max-width:1099px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .banner::before,
  body.josport-homepage-rwd-v55 section.next-banner.first .banner::after,
  body.josport-homepage-rwd-v55 section.next-banner.first .banner-wrapper::before {
    content:none !important;
    display:none !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first,
  body.josport-homepage-rwd-v55 section.next-banner.first *,
  body.josport-homepage-rwd-v55 .next-to-carousel-banners,
  body.josport-homepage-rwd-v55 .next-to-carousel-banners * {
    box-sizing:border-box !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first img {
    max-width:none !important;
  }
}

/* =========================================================
   3) HORNÍCH 5 PROMO BANNERŮ
   ========================================================= */
@media (min-width:768px) and (max-width:1099px) {
  body.josport-homepage-rwd-v55 .next-to-carousel-banners {
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:7px !important;
    width:100% !important;
    margin:0 !important;
  }

  body.josport-homepage-rwd-v55 .next-to-carousel-banners > .banner-wrapper {
    position:relative !important;
    min-width:0 !important;
    width:100% !important;
    height:218px !important;
    overflow:hidden !important;
    border-radius:10px !important;
  }

  body.josport-homepage-rwd-v55 .next-to-carousel-banners .banner-wrapper > a {
    position:relative !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
  }

  body.josport-homepage-rwd-v55 .next-to-carousel-banners img {
    display:block !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center !important;
  }

  body.josport-homepage-rwd-v55 .next-to-carousel-banners .extended-banner-texts {
    position:absolute !important;
    inset:0 !important;
    z-index:2 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    height:100% !important;
    padding:10px 7px 12px !important;
    margin:0 !important;
    text-align:center !important;
  }

  body.josport-homepage-rwd-v55 .next-to-carousel-banners .extended-banner-title {
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    width:100% !important;
    margin:0 0 5px !important;
    padding:0 !important;
    color:#fff !important;
    font-size:12px !important;
    font-weight:800 !important;
    line-height:1.06 !important;
    overflow:hidden !important;
  }

  body.josport-homepage-rwd-v55 .next-to-carousel-banners .extended-banner-text {
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    width:100% !important;
    margin:0 0 6px !important;
    padding:0 !important;
    color:rgba(255,255,255,.95) !important;
    font-size:7.8px !important;
    line-height:1.14 !important;
    overflow:hidden !important;
  }

  body.josport-homepage-rwd-v55 .next-to-carousel-banners .extended-banner-link {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:54px !important;
    min-height:27px !important;
    margin:0 !important;
    padding:5px 9px !important;
    background:#104a8e !important;
    color:#fff !important;
    border-radius:7px !important;
    font-size:8.5px !important;
    font-weight:800 !important;
    line-height:1 !important;
  }
}

@media (min-width:768px) and (max-width:799px) {
  body.josport-homepage-rwd-v55 .next-to-carousel-banners > .banner-wrapper {
    height:205px !important;
  }
}

@media (min-width:600px) and (max-width:1099px) and (max-height:560px) {
  body.josport-homepage-rwd-v55 .next-to-carousel-banners > .banner-wrapper {
    height:138px !important;
  }

  body.josport-homepage-rwd-v55 .next-to-carousel-banners .extended-banner-title {
    font-size:9.5px !important;
    margin-bottom:3px !important;
  }

  body.josport-homepage-rwd-v55 .next-to-carousel-banners .extended-banner-text {
    -webkit-line-clamp:1 !important;
    font-size:7px !important;
    margin-bottom:4px !important;
  }

  body.josport-homepage-rwd-v55 .next-to-carousel-banners .extended-banner-link {
    min-width:46px !important;
    min-height:23px !important;
    font-size:7.2px !important;
    padding:4px 7px !important;
  }
}

/* =========================================================
   4) BENEFITY — RESPONSIVE
   ========================================================= */

/* iPad / tablet portrait: 3 + 2 */
@media (min-width:768px) and (max-width:1099px) {
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage {
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:10px !important;
    width:100% !important;
    margin:10px 0 12px !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item {
    min-height:122px !important;
    padding:60px 13px 12px !important;
    border-radius:14px !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item::before {
    top:10px !important;
    width:42px !important;
    height:42px !important;
    background-size:20px 20px !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item::after {
    top:54px !important;
    width:22px !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__title,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item h2,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item h3,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item h4,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item strong {
    margin:2px 0 6px !important;
    font-size:12px !important;
    line-height:1.18 !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__content,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__description,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item p,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item span:not(.benefitBanner__title) {
    font-size:8.8px !important;
    line-height:1.25 !important;
  }
}

/* Landscape 600–767: všech 5 v jedné řadě */
@media (min-width:600px) and (max-width:767px) and (max-height:560px) {
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage {
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:7px !important;
    margin:7px 0 8px !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item {
    min-height:104px !important;
    padding:50px 7px 8px !important;
    border-radius:10px !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item::before {
    top:8px !important;
    width:36px !important;
    height:36px !important;
    background-size:17px 17px !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item::after {
    top:46px !important;
    width:18px !important;
    height:2px !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__title,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item h2,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item h3,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item h4,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item strong {
    margin:1px 0 3px !important;
    font-size:8.7px !important;
    line-height:1.08 !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__content,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__description,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item p,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item span:not(.benefitBanner__title) {
    font-size:6.8px !important;
    line-height:1.15 !important;
  }
}

/* Mobil portrait: 2x2 + poslední přes celou šířku */
@media (max-width:599px) {
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
    margin:9px 0 10px !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item {
    min-height:112px !important;
    padding:58px 9px 10px !important;
    border-radius:12px !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(5) {
    grid-column:1 / -1 !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item::before {
    top:9px !important;
    width:40px !important;
    height:40px !important;
    background-size:19px 19px !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item::after {
    top:51px !important;
    width:20px !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__title,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item h2,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item h3,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item h4,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item strong {
    margin:2px 0 5px !important;
    font-size:10.5px !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__content,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__description,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item p,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage .benefitBanner__item span:not(.benefitBanner__title) {
    font-size:7.8px !important;
    line-height:1.2 !important;
  }
}

/* =========================================================
   5) SPODNÍ 4 NAVIGAČNÍ BANNERY — FINÁLNÍ ČISTÝ LAYOUT
   ========================================================= */

/* iPad/tablet: 4 v jedné řadě */
@media (min-width:768px) and (max-width:1099px) {
  body.josport-homepage-rwd-v55 section.next-banner.first {
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:10px !important;
    width:88% !important;
    max-width:700px !important;
    margin:12px auto 18px !important;
    padding:0 !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > .first,
  body.josport-homepage-rwd-v55 section.next-banner.first > .second,
  body.josport-homepage-rwd-v55 section.next-banner.first > .third,
  body.josport-homepage-rwd-v55 section.next-banner.first > .fourth {
    display:block !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    float:none !important;
    position:relative !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner {
    display:block !important;
    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper {
    position:relative !important;
    display:block !important;
    width:100% !important;
    height:138px !important;
    min-height:138px !important;
    max-height:138px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    border-radius:10px !important;
    background:#10263e !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper > a {
    position:relative !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper img {
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center !important;
    margin:0 !important;
    padding:0 !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper > a::after {
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    display:block !important;
    pointer-events:none !important;
    background:linear-gradient(to bottom,rgba(3,12,22,.04) 20%,rgba(3,12,22,.22) 55%,rgba(3,12,22,.72) 100%) !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-texts {
    position:absolute !important;
    inset:0 !important;
    z-index:2 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-end !important;
    width:100% !important;
    height:100% !important;
    margin:0 !important;
    padding:9px 7px 10px !important;
    text-align:center !important;
    pointer-events:none !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-title {
    display:block !important;
    width:100% !important;
    margin:0 0 6px !important;
    padding:0 !important;
    color:#fff !important;
    font-size:10px !important;
    font-weight:800 !important;
    line-height:1.06 !important;
    text-align:center !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-text {
    display:none !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-link {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:48px !important;
    min-height:24px !important;
    margin:0 !important;
    padding:4px 8px !important;
    border-radius:6px !important;
    background:#0e5ca6 !important;
    color:#fff !important;
    font-size:7.5px !important;
    font-weight:800 !important;
    line-height:1 !important;
    pointer-events:auto !important;
  }
}

/* iPad Mini */
@media (min-width:768px) and (max-width:799px) {
  body.josport-homepage-rwd-v55 section.next-banner.first {
    width:90% !important;
    gap:8px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper {
    height:128px !important;
    min-height:128px !important;
    max-height:128px !important;
  }
}

/* Landscape 600–1099 */
@media (min-width:600px) and (max-width:1099px) and (max-height:560px) {
  body.josport-homepage-rwd-v55 section.next-banner.first {
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    width:76% !important;
    max-width:680px !important;
    gap:7px !important;
    margin:8px auto 10px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper {
    height:96px !important;
    min-height:96px !important;
    max-height:96px !important;
    border-radius:8px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-texts {
    padding:6px 5px 7px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-title {
    margin-bottom:4px !important;
    font-size:8px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-link {
    min-width:42px !important;
    min-height:21px !important;
    padding:4px 6px !important;
    font-size:6.7px !important;
    border-radius:5px !important;
  }
}

/* Mobil portrait: 2x2 */
@media (max-width:599px) {
  body.josport-homepage-rwd-v55 section.next-banner.first {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:7px !important;
    width:92% !important;
    max-width:430px !important;
    margin:9px auto 13px !important;
    padding:0 !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > .first,
  body.josport-homepage-rwd-v55 section.next-banner.first > .second,
  body.josport-homepage-rwd-v55 section.next-banner.first > .third,
  body.josport-homepage-rwd-v55 section.next-banner.first > .fourth {
    display:block !important;
    width:auto !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    float:none !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner {
    display:block !important;
    width:100% !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper {
    position:relative !important;
    display:block !important;
    width:100% !important;
    height:92px !important;
    min-height:92px !important;
    max-height:92px !important;
    margin:0 !important;
    padding:0 !important;
    overflow:hidden !important;
    border-radius:8px !important;
    background:#10263e !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper img {
    position:absolute !important;
    inset:0 !important;
    display:block !important;
    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;
    object-fit:cover !important;
    object-position:center !important;
    margin:0 !important;
    padding:0 !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper > a::after {
    content:"" !important;
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    display:block !important;
    pointer-events:none !important;
    background:linear-gradient(to bottom,rgba(3,12,22,.04) 18%,rgba(3,12,22,.25) 58%,rgba(3,12,22,.72) 100%) !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-texts {
    position:absolute !important;
    inset:0 !important;
    z-index:2 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-end !important;
    width:100% !important;
    height:100% !important;
    margin:0 !important;
    padding:6px 5px 7px !important;
    text-align:center !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-title {
    display:block !important;
    width:100% !important;
    margin:0 0 4px !important;
    color:#fff !important;
    font-size:8.6px !important;
    font-weight:800 !important;
    line-height:1.05 !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-text {
    display:none !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-link {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:42px !important;
    min-height:21px !important;
    margin:0 !important;
    padding:4px 6px !important;
    border-radius:5px !important;
    background:#0e5ca6 !important;
    color:#fff !important;
    font-size:6.8px !important;
    font-weight:800 !important;
    line-height:1 !important;
  }
}

/* =========================================================
   6) MENŠÍ ODSTUP K OBLÍBENÝM PRODUKTŮM
   ========================================================= */
@media (max-width:1099px) {
  body.josport-homepage-rwd-v55 section.next-banner.first + .homepage-group-title,
  body.josport-homepage-rwd-v55 section.next-banner.first ~ .homepage-group-title:first-of-type {
    margin-top:16px !important;
  }
}

/* =========================================================
   V15 — BENEFITY 3 + 2: DRUHÁ ŘADA ROVNOMĚRNĚ NA ŠÍŘKU
   ========================================================= */
@media (min-width:768px) and (max-width:1099px) {

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage {
    display:grid !important;
    grid-template-columns:repeat(6,minmax(0,1fr)) !important;
    gap:10px !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(1),
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(2),
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(3) {
    grid-column:span 2 !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(4) {
    grid-column:1 / span 3 !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(5) {
    grid-column:4 / span 3 !important;
  }
}

/* Landscape 600–767: 5 benefitů v jedné řadě necháváme */
@media (min-width:600px) and (max-width:767px) and (max-height:560px) {
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage {
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item {
    grid-column:auto !important;
  }
}

/* =========================================================
   V15 — 4 HLAVNÍ PROKLIKY VĚTŠÍ A VÝRAZNĚJŠÍ
   Týmová zóna / E-shop / Hřiště / Sportovní pomůcky
   ========================================================= */

/* iPad / tablet portrait: velké 2x2 bannery */
@media (min-width:768px) and (max-width:1099px) and (min-height:561px) {

  body.josport-homepage-rwd-v55 section.next-banner.first {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:10px !important;
    width:100% !important;
    max-width:none !important;
    margin:12px auto 16px !important;
    padding:0 10px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper {
    height:154px !important;
    min-height:154px !important;
    max-height:154px !important;
    border-radius:10px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-texts {
    padding:10px 10px 12px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-title {
    margin-bottom:7px !important;
    font-size:15px !important;
    line-height:1.08 !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-link {
    min-width:58px !important;
    min-height:29px !important;
    padding:6px 10px !important;
    font-size:8.8px !important;
    border-radius:7px !important;
  }
}

/* iPad Mini */
@media (min-width:768px) and (max-width:799px) and (min-height:561px) {
  body.josport-homepage-rwd-v55 section.next-banner.first {
    gap:8px !important;
    padding:0 8px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper {
    height:145px !important;
    min-height:145px !important;
    max-height:145px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-title {
    font-size:13.5px !important;
  }
}

/* Tablet / mobil na šířku: 2x2 široké bannery */
@media (min-width:600px) and (max-width:1099px) and (max-height:560px) {
  body.josport-homepage-rwd-v55 section.next-banner.first {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:7px !important;
    width:92% !important;
    max-width:760px !important;
    margin:8px auto 10px !important;
    padding:0 !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper {
    height:82px !important;
    min-height:82px !important;
    max-height:82px !important;
    border-radius:8px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-title {
    margin-bottom:4px !important;
    font-size:11px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-link {
    min-width:46px !important;
    min-height:22px !important;
    padding:4px 7px !important;
    font-size:7px !important;
  }
}

/* Mobil portrait: 2x2 zůstává, ale o něco větší */
@media (max-width:599px) {
  body.josport-homepage-rwd-v55 section.next-banner.first {
    width:96% !important;
    max-width:470px !important;
    gap:8px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper {
    height:106px !important;
    min-height:106px !important;
    max-height:106px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-title {
    font-size:10px !important;
    margin-bottom:5px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-link {
    min-width:46px !important;
    min-height:23px !important;
    font-size:7.2px !important;
  }
}

/* =========================================================
   V16 — MOBILE HOTFIX PRO 4 HLAVNÍ BANNERY
   Opravuje původní výšku wrapperů .first/.second/.third/.fourth,
   která na iPhone/mobile držela cca 240 px a dělala prázdné bloky.
   ========================================================= */
@media (max-width:599px) {

  body.josport-homepage-rwd-v55 section.next-banner.first {
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    grid-template-rows:auto !important;
    grid-auto-rows:auto !important;
    align-items:start !important;
    align-content:start !important;
    gap:8px !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    overflow:visible !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > .first,
  body.josport-homepage-rwd-v55 section.next-banner.first > .second,
  body.josport-homepage-rwd-v55 section.next-banner.first > .third,
  body.josport-homepage-rwd-v55 section.next-banner.first > .fourth {
    display:block !important;
    position:relative !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;

    height:auto !important;
    min-height:0 !important;
    max-height:none !important;

    margin:0 !important;
    padding:0 !important;

    float:none !important;
    clear:none !important;

    align-self:start !important;
    justify-self:stretch !important;

    overflow:visible !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner {
    display:block !important;
    position:relative !important;

    width:100% !important;
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;

    margin:0 !important;
    padding:0 !important;

    float:none !important;
    clear:none !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper {
    display:block !important;
    position:relative !important;

    width:100% !important;
    height:106px !important;
    min-height:106px !important;
    max-height:106px !important;

    margin:0 !important;
    padding:0 !important;

    overflow:hidden !important;
    border-radius:8px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper > a {
    display:block !important;
    position:relative !important;

    width:100% !important;
    height:100% !important;

    margin:0 !important;
    padding:0 !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper img {
    position:absolute !important;
    inset:0 !important;

    display:block !important;

    width:100% !important;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;

    margin:0 !important;
    padding:0 !important;

    object-fit:cover !important;
    object-position:center !important;
  }
}

/* Extra úzké telefony */
@media (max-width:420px) {
  body.josport-homepage-rwd-v55 section.next-banner.first {
    gap:7px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper {
    height:98px !important;
    min-height:98px !important;
    max-height:98px !important;
  }
}

/* =========================================================
   V17 — MOBILE: VÝRAZNĚJŠÍ 4 BANNERY + NADPIS PRODUKTŮ
   ========================================================= */

@media (max-width:599px) {

  /* Hlavní 4 prokliky – vyšší a výraznější */
  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper {
    height:142px !important;
    min-height:142px !important;
    max-height:142px !important;
    border-radius:10px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-texts {
    padding:10px 8px 12px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-title {
    margin:0 0 7px !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:1.08 !important;
    text-align:center !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-link {
    min-width:54px !important;
    min-height:27px !important;
    padding:5px 9px !important;
    border-radius:6px !important;
    font-size:8px !important;
  }

  /* Nadpis "Oblíbené produkty" */
  body.josport-homepage-rwd-v55 .homepage-group-title.homepage-products-heading-1,
  body.josport-homepage-rwd-v55 .homepage-group-title {
    display:block !important;
    width:100% !important;
    margin:24px auto 16px !important;
    padding:0 12px !important;
    box-sizing:border-box !important;

    color:#0b3f78 !important;
    font-size:24px !important;
    font-weight:800 !important;
    line-height:1.1 !important;
    letter-spacing:-.02em !important;

    text-align:center !important;
  }

  body.josport-homepage-rwd-v55 .homepage-group-title.homepage-products-heading-1::after,
  body.josport-homepage-rwd-v55 .homepage-group-title::after {
    content:"" !important;
    display:block !important;
    width:44px !important;
    height:3px !important;
    margin:9px auto 0 !important;
    border-radius:999px !important;
    background:linear-gradient(90deg,#1595ea,#0a5ea9) !important;
  }
}

/* iPhone SE / extra úzké */
@media (max-width:420px) {

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .banner-wrapper {
    height:132px !important;
    min-height:132px !important;
    max-height:132px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-title {
    font-size:12px !important;
  }

  body.josport-homepage-rwd-v55 .homepage-group-title.homepage-products-heading-1,
  body.josport-homepage-rwd-v55 .homepage-group-title {
    margin-top:22px !important;
    margin-bottom:14px !important;
    font-size:22px !important;
  }
}

/* =========================================================
   V18 — iPad Mini / TABLET: OPRAVA UJÍŽDĚNÍ DOPRAVA U BENEFITŮ
   Cíl: přesné centrování, pevná 100% šířka a žádný overflow.
   ========================================================= */

@media (min-width:768px) and (max-width:1099px) {

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage {
    width:100% !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;

    grid-template-columns:repeat(6,minmax(0,1fr)) !important;
    column-gap:10px !important;
    row-gap:10px !important;

    box-sizing:border-box !important;
    overflow:visible !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item {
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;

    margin-left:0 !important;
    margin-right:0 !important;

    box-sizing:border-box !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(1),
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(2),
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(3) {
    grid-column:span 2 !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(4) {
    grid-column:1 / span 3 !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(5) {
    grid-column:4 / span 3 !important;
  }
}

/* iPad Mini — 768px */
@media (min-width:768px) and (max-width:799px) {

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage {
    width:100% !important;
    max-width:100% !important;
    padding-left:0 !important;
    padding-right:0 !important;

    column-gap:8px !important;
    row-gap:8px !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item {
    min-width:0 !important;
    width:auto !important;
  }
}

/* Landscape 600–767: zachovat 5 v jedné řadě */
@media (min-width:600px) and (max-width:767px) and (max-height:560px) {
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage {
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    width:100% !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item {
    grid-column:auto !important;
  }
}

/* =========================================================
   V19 — iPAD MINI 768–799 px: FINÁLNÍ CENTROVÁNÍ BENEFITŮ
   Ostatní breakpointy zůstávají z V18 beze změny.
   ========================================================= */
@media (min-width:768px) and (max-width:799px) {

  /*
   * iPad Mini měl na 768 px benefit grid opticky posunutý doprava.
   * Sekci proto lehce stáhneme dovnitř a přesně vycentrujeme.
   */
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage {
    display:grid !important;

    width:calc(100% - 12px) !important;
    max-width:calc(100% - 12px) !important;

    margin-left:auto !important;
    margin-right:auto !important;

    padding-left:0 !important;
    padding-right:0 !important;

    grid-template-columns:repeat(6,minmax(0,1fr)) !important;
    column-gap:8px !important;
    row-gap:8px !important;

    justify-content:center !important;
    justify-items:stretch !important;
    align-items:stretch !important;

    box-sizing:border-box !important;
    overflow:hidden !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item {
    display:block !important;

    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;

    margin:0 !important;

    box-sizing:border-box !important;
    overflow:hidden !important;
  }

  /* 3 stejné karty nahoře */
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(1),
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(2),
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(3) {
    grid-column:span 2 !important;
  }

  /* 2 přesně stejné karty dole */
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(4) {
    grid-column:1 / span 3 !important;
  }

  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item:nth-child(5) {
    grid-column:4 / span 3 !important;
  }

  /*
   * Pojistka proti horizontálnímu overflow způsobenému vnitřním
   * textem/pseudo prvky.
   */
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item *,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item::before,
  body.josport-homepage-rwd-v55 .benefitBanner.position--benefitHomepage > .benefitBanner__item::after {
    max-width:100% !important;
    box-sizing:border-box !important;
  }

  /* Srovnání se spodními 2x2 bannery */
  body.josport-homepage-rwd-v55 section.next-banner.first {
    width:calc(100% - 12px) !important;
    max-width:calc(100% - 12px) !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

/* =========================================================
   V20 — iPAD MINI 768–799 px
   FINÁLNÍ SROVNÁNÍ HORNÍCH 5 PROMO BANNERŮ
   ========================================================= */
@media (min-width:768px) and (max-width:799px) {

  /*
   * Celý bannerový řádek nesmí používat původní Shoptet záporné
   * marginy / šířku přesahující obsah.
   */
  body.josport-homepage-rwd-v55 .row.banners-row {
    display:block !important;

    width:100% !important;
    max-width:100% !important;

    margin-left:0 !important;
    margin-right:0 !important;

    padding-left:0 !important;
    padding-right:0 !important;

    box-sizing:border-box !important;
    overflow:visible !important;
  }

  /*
   * Prázdný carousel nesmí zabírat boční prostor vedle 5 bannerů.
   */
  body.josport-homepage-rwd-v55 .row.banners-row > .wide-carousel:empty {
    display:none !important;
    width:0 !important;
    min-width:0 !important;
    max-width:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  /*
   * Stejná čistá šířka jako benefity + spodní 2×2 sekce.
   */
  body.josport-homepage-rwd-v55 .next-to-carousel-banners {
    display:grid !important;
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;

    width:calc(100% - 12px) !important;
    max-width:calc(100% - 12px) !important;

    margin-left:auto !important;
    margin-right:auto !important;

    padding-left:0 !important;
    padding-right:0 !important;

    gap:8px !important;

    float:none !important;
    clear:both !important;

    box-sizing:border-box !important;
    overflow:visible !important;
  }

  body.josport-homepage-rwd-v55 .next-to-carousel-banners > .banner-wrapper {
    position:relative !important;

    display:block !important;

    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;

    height:205px !important;
    min-height:205px !important;
    max-height:205px !important;

    margin:0 !important;
    padding:0 !important;

    float:none !important;

    box-sizing:border-box !important;
    overflow:hidden !important;
  }

  body.josport-homepage-rwd-v55 .next-to-carousel-banners > .banner-wrapper > a {
    display:block !important;

    width:100% !important;
    height:100% !important;

    margin:0 !important;
    padding:0 !important;
  }

  body.josport-homepage-rwd-v55 .next-to-carousel-banners > .banner-wrapper img {
    position:absolute !important;
    inset:0 !important;

    display:block !important;

    width:100% !important;
    height:100% !important;
    min-width:0 !important;
    max-width:none !important;

    margin:0 !important;
    padding:0 !important;

    object-fit:cover !important;
    object-position:center !important;
  }

  /*
   * Pojistka proti starým fixed/flex hodnotám Shoptetu.
   */
  body.josport-homepage-rwd-v55 .next-to-carousel-banners > * {
    min-width:0 !important;
    max-width:100% !important;
    box-sizing:border-box !important;
  }
}

/* =========================================================
   V21 — MOBILE: OPRAVA NADPISU BLOG
   Centrovaný nadpis bez posunu doleva / špatné šířky odkazu.
   ========================================================= */

@media (max-width:599px) {

  body.josport-homepage-rwd-v55 .homepage-blog-wrapper {
    width:100% !important;
    max-width:100% !important;

    margin-left:auto !important;
    margin-right:auto !important;

    padding-left:0 !important;
    padding-right:0 !important;

    box-sizing:border-box !important;
  }

  body.josport-homepage-rwd-v55 .homepage-blog-wrapper > .homepage-group-title,
  body.josport-homepage-rwd-v55 .homepage-blog-wrapper .homepage-group-title.h4 {
    display:block !important;

    width:100% !important;
    max-width:100% !important;

    margin:22px auto 14px !important;
    padding:0 12px !important;

    box-sizing:border-box !important;

    text-align:center !important;
    line-height:1.1 !important;
  }

  body.josport-homepage-rwd-v55 .homepage-blog-wrapper .homepage-group-title a,
  body.josport-homepage-rwd-v55 .homepage-blog-wrapper .homepage-group-title.h4 a {
    display:inline-block !important;

    width:auto !important;
    max-width:100% !important;

    margin:0 auto !important;
    padding:0 !important;

    color:#0b3f78 !important;

    font-size:22px !important;
    font-weight:800 !important;
    line-height:1.1 !important;
    letter-spacing:-.01em !important;

    text-align:center !important;
    text-decoration:none !important;
    white-space:normal !important;

    transform:none !important;
    position:static !important;
    float:none !important;
  }

  body.josport-homepage-rwd-v55 .homepage-blog-wrapper .homepage-group-title::after,
  body.josport-homepage-rwd-v55 .homepage-blog-wrapper .homepage-group-title.h4::after {
    content:"" !important;

    display:block !important;

    width:40px !important;
    height:3px !important;

    margin:8px auto 0 !important;

    border-radius:999px !important;
    background:linear-gradient(90deg,#1595ea,#0a5ea9) !important;
  }
}

/* iPhone SE / extra úzké mobily */
@media (max-width:420px) {

  body.josport-homepage-rwd-v55 .homepage-blog-wrapper > .homepage-group-title,
  body.josport-homepage-rwd-v55 .homepage-blog-wrapper .homepage-group-title.h4 {
    margin-top:20px !important;
    margin-bottom:12px !important;
  }

  body.josport-homepage-rwd-v55 .homepage-blog-wrapper .homepage-group-title a,
  body.josport-homepage-rwd-v55 .homepage-blog-wrapper .homepage-group-title.h4 a {
    font-size:21px !important;
  }
}

/* =========================================================
   V22 — MOBILE BLOG TITLE: ROBUSTNÍ VLASTNÍ TŘÍDA
   ========================================================= */
@media (max-width:599px) {

  body.josport-homepage-rwd-v55 .homepage-blog-wrapper {
    position:relative !important;
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    margin-left:auto !important;
    margin-right:auto !important;
    padding-left:0 !important;
    padding-right:0 !important;
    box-sizing:border-box !important;
  }

  body.josport-homepage-rwd-v55 .josport-blog-title-v22 {
    position:relative !important;
    inset:auto !important;

    display:block !important;
    visibility:visible !important;
    opacity:1 !important;

    width:100% !important;
    max-width:100% !important;
    height:auto !important;
    min-height:0 !important;

    margin:22px auto 14px !important;
    padding:0 12px !important;

    float:none !important;
    clear:both !important;

    transform:none !important;
    clip:auto !important;
    clip-path:none !important;

    overflow:visible !important;
    box-sizing:border-box !important;

    color:#0b3f78 !important;
    font-size:22px !important;
    font-weight:800 !important;
    line-height:1.1 !important;
    letter-spacing:-.01em !important;
    text-align:center !important;
    text-transform:uppercase !important;
  }

  body.josport-homepage-rwd-v55 .josport-blog-title-v22 > a,
  body.josport-homepage-rwd-v55 .josport-blog-title-v22 a {
    position:static !important;
    display:inline-block !important;
    visibility:visible !important;
    opacity:1 !important;

    width:auto !important;
    height:auto !important;

    margin:0 auto !important;
    padding:0 !important;

    float:none !important;
    transform:none !important;

    color:#0b3f78 !important;
    font-size:inherit !important;
    font-weight:inherit !important;
    line-height:inherit !important;
    text-align:center !important;
    text-decoration:none !important;
    text-transform:uppercase !important;
  }

  body.josport-homepage-rwd-v55 .josport-blog-title-v22::after {
    content:"" !important;
    display:block !important;

    width:40px !important;
    height:3px !important;

    margin:8px auto 0 !important;

    border-radius:999px !important;
    background:linear-gradient(90deg,#1595ea,#0a5ea9) !important;
  }
}

@media (max-width:420px) {
  body.josport-homepage-rwd-v55 .josport-blog-title-v22 {
    margin-top:20px !important;
    margin-bottom:12px !important;
    font-size:21px !important;
  }
}

/* =========================================================
   V23 — MOBILE BLOG: HORIZONTÁLNÍ SWIPE / SCROLL
   ========================================================= */
@media (max-width:599px) {

  body.josport-homepage-rwd-v55 .homepage-blog-wrapper {
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    overflow:visible !important;
  }

  body.josport-homepage-rwd-v55 .josport-blog-scroll-v23 {
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;

    width:100% !important;
    max-width:100% !important;

    margin:0 !important;
    padding:0 12px 10px !important;
    gap:10px !important;

    overflow-x:auto !important;
    overflow-y:hidden !important;

    -webkit-overflow-scrolling:touch !important;
    scroll-snap-type:x mandatory !important;
    scroll-padding-left:12px !important;
    overscroll-behavior-x:contain !important;

    box-sizing:border-box !important;
    scrollbar-width:none !important;
  }

  body.josport-homepage-rwd-v55 .josport-blog-scroll-v23::-webkit-scrollbar {
    display:none !important;
    width:0 !important;
    height:0 !important;
  }

  body.josport-homepage-rwd-v55 .josport-blog-scroll-v23 > * {
    flex:0 0 82% !important;
    width:82% !important;
    min-width:82% !important;
    max-width:82% !important;

    margin:0 !important;
    box-sizing:border-box !important;

    scroll-snap-align:start !important;
  }

  /* Obrázky článků držíme uvnitř karty */
  body.josport-homepage-rwd-v55 .josport-blog-scroll-v23 img {
    max-width:100% !important;
    height:auto !important;
  }
}

/* iPhone SE / úzké mobily — trochu více vykukující další karta */
@media (max-width:420px) {

  body.josport-homepage-rwd-v55 .josport-blog-scroll-v23 {
    padding-left:10px !important;
    padding-right:10px !important;
    gap:9px !important;
    scroll-padding-left:10px !important;
  }

  body.josport-homepage-rwd-v55 .josport-blog-scroll-v23 > * {
    flex-basis:84% !important;
    width:84% !important;
    min-width:84% !important;
    max-width:84% !important;
  }
}

/* =========================================================
   V24 — LAST-BANNER: RESPONZIVNÍ TYPOGRAFIE PRO VŠECHNY TABLETY/MOBILY
   Sekce pod "Kdo jsme" — 8 spodních bannerů.
   ========================================================= */

/* Základ pro všechna responzivní zobrazení */
@media (max-width:1099px) {

  body.josport-homepage-rwd-v55 .last-banner .banner-wrapper {
    position:relative !important;
    overflow:hidden !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-texts {
    position:absolute !important;
    inset:0 !important;
    z-index:2 !important;

    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:flex-end !important;

    width:100% !important;
    height:100% !important;

    margin:0 !important;
    padding:10px 7px 10px !important;
    box-sizing:border-box !important;

    text-align:center !important;
    pointer-events:none !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;

    width:100% !important;
    max-width:100% !important;

    margin:0 0 6px !important;
    padding:0 !important;

    color:#fff !important;
    font-size:13px !important;
    font-weight:800 !important;
    line-height:1.05 !important;
    letter-spacing:-.015em !important;

    text-align:center !important;
    text-wrap:balance !important;

    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-text {
    display:none !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    min-width:54px !important;
    min-height:27px !important;

    margin:0 !important;
    padding:5px 9px !important;

    border-radius:7px !important;
    background:#104a8e !important;
    color:#fff !important;

    font-size:8px !important;
    font-weight:800 !important;
    line-height:1 !important;

    white-space:nowrap !important;
    pointer-events:auto !important;
  }
}

/* iPad Pro / větší tablet: 1000–1099 */
@media (min-width:1000px) and (max-width:1099px) {

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    font-size:12.5px !important;
    margin-bottom:6px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:56px !important;
    min-height:28px !important;
    font-size:8.2px !important;
  }
}

/* iPad Air / tablet: 800–999 */
@media (min-width:800px) and (max-width:999px) {

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-texts {
    padding:9px 6px 9px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    font-size:11px !important;
    line-height:1.05 !important;
    margin-bottom:5px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:50px !important;
    min-height:25px !important;
    padding:5px 8px !important;
    font-size:7.5px !important;
  }
}

/* iPad Mini 768–799 */
@media (min-width:768px) and (max-width:799px) {

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-texts {
    padding:8px 5px 8px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    -webkit-line-clamp:2 !important;
    font-size:9.6px !important;
    line-height:1.04 !important;
    margin-bottom:4px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:46px !important;
    min-height:23px !important;
    padding:4px 7px !important;
    border-radius:6px !important;
    font-size:7px !important;
  }
}

/* Široký mobil / tablet landscape */
@media (min-width:600px) and (max-width:767px) {

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-texts {
    padding:7px 5px 7px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    font-size:9px !important;
    line-height:1.04 !important;
    margin-bottom:4px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:44px !important;
    min-height:22px !important;
    padding:4px 7px !important;
    font-size:6.8px !important;
  }
}

/* Mobil portrait */
@media (max-width:599px) {

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-texts {
    padding:7px 5px 7px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    font-size:10px !important;
    line-height:1.04 !important;
    margin-bottom:4px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:46px !important;
    min-height:23px !important;
    padding:4px 7px !important;
    font-size:7px !important;
  }
}

/* iPhone SE / extra úzké */
@media (max-width:420px) {

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    font-size:9px !important;
    line-height:1.03 !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:42px !important;
    min-height:21px !important;
    padding:4px 6px !important;
    font-size:6.6px !important;
  }
}

/* =========================================================
   V25 — iPad Mini: čitelnost spodních .last-banner karet
   768–799 px
   ========================================================= */
@media (min-width:768px) and (max-width:799px) {

  /* Na iPad Mini necháme karty dost široké, aby text nebyl mikroskopický. */
  body.josport-homepage-rwd-v55 .last-banner {
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:10px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding:10px 10px 14px !important;
    scroll-snap-type:x proximity !important;
    -webkit-overflow-scrolling:touch !important;
    box-sizing:border-box !important;
  }

  body.josport-homepage-rwd-v55 .last-banner > div {
    flex:0 0 180px !important;
    width:180px !important;
    min-width:180px !important;
    max-width:180px !important;
    scroll-snap-align:start !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .banner,
  body.josport-homepage-rwd-v55 .last-banner .banner-wrapper,
  body.josport-homepage-rwd-v55 .last-banner a {
    width:100% !important;
    max-width:100% !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .banner-wrapper {
    height:150px !important;
    border-radius:10px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner img {
    width:100% !important;
    height:150px !important;
    max-width:none !important;
    object-fit:cover !important;
    display:block !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-texts {
    padding:10px 8px 10px !important;
    justify-content:flex-end !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;

    font-size:13px !important;
    line-height:1.08 !important;
    font-weight:800 !important;
    letter-spacing:-.01em !important;
    margin:0 0 7px !important;
    padding:0 !important;
    text-align:center !important;
    color:#fff !important;
    text-shadow:0 1px 3px rgba(0,0,0,.55) !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:54px !important;
    min-height:27px !important;
    padding:5px 9px !important;
    border-radius:7px !important;
    font-size:8px !important;
    line-height:1 !important;
  }
}

/* =========================================================
   V26 — LAST-BANNER TYPOGRAFIE PRO VŠECHNY RESPONSIVE BREAKPOINTY
   Čitelnější nadpisy, max 2 řádky, menší CTA.
   ========================================================= */

/* společný základ */
@media (max-width:1099px) {
  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;

    color:#fff !important;
    font-weight:800 !important;
    text-align:center !important;
    text-wrap:balance !important;

    text-shadow:
      0 1px 2px rgba(0,0,0,.75),
      0 2px 6px rgba(0,0,0,.35) !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-text {
    display:none !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    font-weight:800 !important;
    text-transform:none !important;
  }
}

/* iPad Pro / větší tablety */
@media (min-width:1000px) and (max-width:1099px) {
  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    font-size:15px !important;
    line-height:1.08 !important;
    margin-bottom:7px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:54px !important;
    min-height:27px !important;
    padding:5px 9px !important;
    font-size:8px !important;
  }
}

/* iPad Air / běžné tablety */
@media (min-width:800px) and (max-width:999px) {
  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    font-size:14px !important;
    line-height:1.08 !important;
    margin-bottom:7px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:52px !important;
    min-height:26px !important;
    padding:5px 8px !important;
    font-size:7.8px !important;
  }
}

/* iPad Mini */
@media (min-width:768px) and (max-width:799px) {
  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    font-size:13.5px !important;
    line-height:1.07 !important;
    margin-bottom:6px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:50px !important;
    min-height:25px !important;
    padding:5px 8px !important;
    font-size:7.5px !important;
  }
}

/* tablet / mobil landscape */
@media (min-width:600px) and (max-width:767px) {
  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    font-size:12px !important;
    line-height:1.06 !important;
    margin-bottom:5px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:48px !important;
    min-height:24px !important;
    padding:4px 8px !important;
    font-size:7.2px !important;
  }
}

/* mobil portrait */
@media (max-width:599px) {
  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    font-size:11.5px !important;
    line-height:1.06 !important;
    margin-bottom:5px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:46px !important;
    min-height:23px !important;
    padding:4px 7px !important;
    font-size:7px !important;
  }
}

/* iPhone SE / extra úzké */
@media (max-width:420px) {
  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    font-size:10.8px !important;
    line-height:1.05 !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:44px !important;
    min-height:22px !important;
    font-size:6.8px !important;
  }
}

/* =========================================================
   V27 — MOBIL: výraznější názvy spodních .last-banner karet
   Rozměry bannerů zůstávají beze změny.
   ========================================================= */

/* běžné mobilní telefony */
@media (min-width:421px) and (max-width:599px) {
  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    font-size:13.5px !important;
    line-height:1.08 !important;
    font-weight:800 !important;
    margin:0 0 7px !important;
    padding:0 5px !important;
    text-align:center !important;
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;
    color:#fff !important;
    text-shadow:
      0 1px 2px rgba(0,0,0,.82),
      0 2px 6px rgba(0,0,0,.42) !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    font-size:7.5px !important;
    min-width:46px !important;
    min-height:23px !important;
    padding:4px 7px !important;
  }
}

/* iPhone SE a další úzké mobily */
@media (max-width:420px) {
  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    font-size:13px !important;
    line-height:1.07 !important;
    font-weight:800 !important;
    margin:0 0 7px !important;
    padding:0 5px !important;
    text-align:center !important;
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;
    color:#fff !important;
    text-shadow:
      0 1px 2px rgba(0,0,0,.85),
      0 2px 6px rgba(0,0,0,.45) !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    font-size:7.3px !important;
    min-width:45px !important;
    min-height:23px !important;
    padding:4px 7px !important;
  }
}

/* =========================================================
   V28 — MOBIL: ještě výraznější název + CTA ve .last-banner
   ========================================================= */

/* běžné mobilní telefony */
@media (min-width:421px) and (max-width:599px) {
  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    font-size:16px !important;
    line-height:1.08 !important;
    font-weight:900 !important;
    margin:0 0 10px !important;
    padding:0 8px !important;
    letter-spacing:-.02em !important;
    text-shadow:
      0 1px 2px rgba(0,0,0,.9),
      0 2px 7px rgba(0,0,0,.55) !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:64px !important;
    min-height:32px !important;
    padding:7px 12px !important;
    border-radius:8px !important;
    font-size:10px !important;
    line-height:1 !important;
    font-weight:900 !important;
  }
}

/* iPhone SE a další úzké mobily */
@media (max-width:420px) {
  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    font-size:15px !important;
    line-height:1.08 !important;
    font-weight:900 !important;
    margin:0 0 9px !important;
    padding:0 7px !important;
    letter-spacing:-.02em !important;
    text-shadow:
      0 1px 2px rgba(0,0,0,.92),
      0 2px 7px rgba(0,0,0,.58) !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:62px !important;
    min-height:31px !important;
    padding:7px 11px !important;
    border-radius:8px !important;
    font-size:9.5px !important;
    line-height:1 !important;
    font-weight:900 !important;
  }
}

/* =========================================================
   V29 — 4 HLAVNÍ PROKLIKY: VĚTŠÍ TYPOGRAFIE + CTA
   Týmová zóna / E-shop / Hřiště / Sportovní pomůcky
   ========================================================= */

/* společný základ */
@media (max-width:1099px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-title {
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;

    font-weight:900 !important;
    text-align:center !important;
    text-wrap:balance !important;
    color:#fff !important;

    text-shadow:
      0 1px 2px rgba(0,0,0,.88),
      0 2px 7px rgba(0,0,0,.52) !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-text {
    display:none !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-link {
    font-weight:900 !important;
    text-transform:uppercase !important;
    letter-spacing:.01em !important;
  }
}

/* iPad Pro / větší tablet */
@media (min-width:1000px) and (max-width:1099px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-title {
    font-size:18px !important;
    line-height:1.08 !important;
    margin:0 0 10px !important;
    padding:0 10px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-link {
    min-width:76px !important;
    min-height:38px !important;
    padding:8px 14px !important;
    border-radius:9px !important;
    font-size:11px !important;
  }
}

/* iPad Air */
@media (min-width:800px) and (max-width:999px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-title {
    font-size:17px !important;
    line-height:1.08 !important;
    margin:0 0 9px !important;
    padding:0 9px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-link {
    min-width:72px !important;
    min-height:36px !important;
    padding:8px 13px !important;
    border-radius:9px !important;
    font-size:10.5px !important;
  }
}

/* iPad Mini */
@media (min-width:768px) and (max-width:799px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-title {
    font-size:16px !important;
    line-height:1.08 !important;
    margin:0 0 9px !important;
    padding:0 8px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-link {
    min-width:68px !important;
    min-height:34px !important;
    padding:7px 12px !important;
    border-radius:8px !important;
    font-size:10px !important;
  }
}

/* landscape / široké mobily */
@media (min-width:600px) and (max-width:767px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-title {
    font-size:15px !important;
    line-height:1.07 !important;
    margin:0 0 8px !important;
    padding:0 7px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-link {
    min-width:66px !important;
    min-height:33px !important;
    padding:7px 11px !important;
    border-radius:8px !important;
    font-size:9.8px !important;
  }
}

/* běžné mobily */
@media (min-width:421px) and (max-width:599px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-title {
    font-size:16px !important;
    line-height:1.08 !important;
    margin:0 0 9px !important;
    padding:0 8px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-link {
    min-width:66px !important;
    min-height:33px !important;
    padding:7px 11px !important;
    border-radius:8px !important;
    font-size:10px !important;
  }
}

/* iPhone SE / extra úzké */
@media (max-width:420px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-title {
    font-size:15px !important;
    line-height:1.08 !important;
    margin:0 0 8px !important;
    padding:0 7px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-link {
    min-width:64px !important;
    min-height:32px !important;
    padding:7px 10px !important;
    border-radius:8px !important;
    font-size:9.5px !important;
  }
}

/* =========================================================
   V30 — MOBILE LAST-BANNER: VŠECH 8 KATEGORIÍ VČETNĚ VOUCHERŮ
   iPhone / mobil: horizontální swipe, poslední karta vždy dosažitelná.
   ========================================================= */

@media (max-width:599px) {

  body.josport-homepage-rwd-v55 .last-banner {
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;

    width:100% !important;
    max-width:100% !important;

    margin:0 !important;
    padding:10px 16px 16px !important;
    gap:10px !important;

    overflow-x:auto !important;
    overflow-y:hidden !important;

    -webkit-overflow-scrolling:touch !important;
    overscroll-behavior-x:contain !important;
    scroll-snap-type:x mandatory !important;
    scroll-padding-left:16px !important;
    scroll-padding-right:16px !important;

    box-sizing:border-box !important;
    scrollbar-width:none !important;
  }

  body.josport-homepage-rwd-v55 .last-banner::-webkit-scrollbar {
    display:none !important;
    width:0 !important;
    height:0 !important;
  }

  /* Vynutit zobrazení VŠECH 8 položek včetně .eighth = Vouchery */
  body.josport-homepage-rwd-v55 .last-banner > .first,
  body.josport-homepage-rwd-v55 .last-banner > .second,
  body.josport-homepage-rwd-v55 .last-banner > .third,
  body.josport-homepage-rwd-v55 .last-banner > .fourth,
  body.josport-homepage-rwd-v55 .last-banner > .fifth,
  body.josport-homepage-rwd-v55 .last-banner > .sixth,
  body.josport-homepage-rwd-v55 .last-banner > .seventh,
  body.josport-homepage-rwd-v55 .last-banner > .eighth {
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;

    flex:0 0 82% !important;
    width:82% !important;
    min-width:82% !important;
    max-width:82% !important;

    height:auto !important;
    min-height:0 !important;

    margin:0 !important;
    padding:0 !important;

    float:none !important;
    position:relative !important;

    scroll-snap-align:start !important;
    box-sizing:border-box !important;
  }

  body.josport-homepage-rwd-v55 .last-banner > .eighth {
    scroll-snap-align:end !important;
  }

  body.josport-homepage-rwd-v55 .last-banner > div > .banner {
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;

    width:100% !important;
    height:auto !important;
    margin:0 !important;
    padding:0 !important;
  }

  body.josport-homepage-rwd-v55 .last-banner > div > .banner .banner-wrapper {
    display:block !important;
    position:relative !important;

    width:100% !important;
    height:300px !important;
    min-height:300px !important;
    max-height:300px !important;

    margin:0 !important;
    padding:0 !important;

    border-radius:11px !important;
    overflow:hidden !important;
  }

  body.josport-homepage-rwd-v55 .last-banner > div > .banner .banner-wrapper > a {
    display:block !important;
    width:100% !important;
    height:100% !important;
  }

  body.josport-homepage-rwd-v55 .last-banner > div > .banner .banner-wrapper img {
    display:block !important;
    position:absolute !important;
    inset:0 !important;

    width:100% !important;
    height:100% !important;
    max-width:none !important;

    object-fit:cover !important;
    object-position:center !important;

    margin:0 !important;
    padding:0 !important;
  }

  /* zachovat výraznější typografii z V28/V29 */
  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    font-size:16px !important;
    line-height:1.08 !important;
    font-weight:900 !important;
    margin:0 0 10px !important;
    padding:0 10px !important;

    color:#fff !important;
    text-align:center !important;

    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:2 !important;
    overflow:hidden !important;

    text-shadow:
      0 1px 2px rgba(0,0,0,.9),
      0 2px 7px rgba(0,0,0,.55) !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:64px !important;
    min-height:32px !important;
    padding:7px 12px !important;

    border-radius:8px !important;

    font-size:10px !important;
    font-weight:900 !important;
  }

  /* prostor za poslední Voucher, aby nebyl useknutý na pravé hraně */
  body.josport-homepage-rwd-v55 .last-banner::after {
    content:"" !important;
    display:block !important;
    flex:0 0 6px !important;
    width:6px !important;
    min-width:6px !important;
    height:1px !important;
  }
}

/* iPhone SE / extra úzké */
@media (max-width:420px) {

  body.josport-homepage-rwd-v55 .last-banner {
    padding-left:10px !important;
    padding-right:10px !important;
    gap:9px !important;
    scroll-padding-left:10px !important;
    scroll-padding-right:10px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner > .first,
  body.josport-homepage-rwd-v55 .last-banner > .second,
  body.josport-homepage-rwd-v55 .last-banner > .third,
  body.josport-homepage-rwd-v55 .last-banner > .fourth,
  body.josport-homepage-rwd-v55 .last-banner > .fifth,
  body.josport-homepage-rwd-v55 .last-banner > .sixth,
  body.josport-homepage-rwd-v55 .last-banner > .seventh,
  body.josport-homepage-rwd-v55 .last-banner > .eighth {
    flex-basis:86% !important;
    width:86% !important;
    min-width:86% !important;
    max-width:86% !important;
  }

  body.josport-homepage-rwd-v55 .last-banner > div > .banner .banner-wrapper {
    height:300px !important;
    min-height:300px !important;
    max-height:300px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    font-size:15px !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:62px !important;
    min-height:31px !important;
    font-size:9.5px !important;
  }
}

/* =========================================================
   V31 — RESPONZIVNÍ PATIČKA: BEZPEČNÉ ODSAZENÍ OD KRAJŮ
   Mobil / iPhone / tablet / iPad. Desktop >= 1100 px beze změny.
   ========================================================= */

/* společný základ pro responsive footer */
@media (max-width:1099px) {

  body.josport-homepage-rwd-v55 #footer,
  body.josport-homepage-rwd-v55 footer#footer {
    box-sizing:border-box !important;
    overflow-x:hidden !important;
  }

  /*
   * Vnitřní bloky patičky – text už nesmí lepit na levou/pravou hranu.
   * Cílíme na běžnou Shoptet strukturu i na vlastní footer bloky.
   */
  body.josport-homepage-rwd-v55 #footer .custom-footer > div,
  body.josport-homepage-rwd-v55 #footer .footer-row,
  body.josport-homepage-rwd-v55 #footer .footer-newsletter,
  body.josport-homepage-rwd-v55 #footer .newsletter-widget,
  body.josport-homepage-rwd-v55 #footer .contact-box,
  body.josport-homepage-rwd-v55 #footer .footer-links,
  body.josport-homepage-rwd-v55 #footer .footer-bottom {
    box-sizing:border-box !important;
  }

  /* textové elementy držíme uvnitř šířky */
  body.josport-homepage-rwd-v55 #footer p,
  body.josport-homepage-rwd-v55 #footer h1,
  body.josport-homepage-rwd-v55 #footer h2,
  body.josport-homepage-rwd-v55 #footer h3,
  body.josport-homepage-rwd-v55 #footer h4,
  body.josport-homepage-rwd-v55 #footer h5,
  body.josport-homepage-rwd-v55 #footer li,
  body.josport-homepage-rwd-v55 #footer a,
  body.josport-homepage-rwd-v55 #footer span {
    overflow-wrap:anywhere !important;
    word-break:normal !important;
  }

  /* formulář nesmí přetékat */
  body.josport-homepage-rwd-v55 #footer form,
  body.josport-homepage-rwd-v55 #footer input,
  body.josport-homepage-rwd-v55 #footer button,
  body.josport-homepage-rwd-v55 #footer .btn {
    max-width:100% !important;
    box-sizing:border-box !important;
  }

  body.josport-homepage-rwd-v55 #footer input[type="email"],
  body.josport-homepage-rwd-v55 #footer input[type="text"] {
    width:100% !important;
  }
}

/* iPad Pro / větší tablet */
@media (min-width:1000px) and (max-width:1099px) {
  body.josport-homepage-rwd-v55 #footer .custom-footer > div,
  body.josport-homepage-rwd-v55 #footer .footer-row,
  body.josport-homepage-rwd-v55 #footer .footer-newsletter,
  body.josport-homepage-rwd-v55 #footer .newsletter-widget,
  body.josport-homepage-rwd-v55 #footer .contact-box,
  body.josport-homepage-rwd-v55 #footer .footer-links {
    padding-left:28px !important;
    padding-right:28px !important;
  }
}

/* iPad Air / běžný tablet */
@media (min-width:800px) and (max-width:999px) {
  body.josport-homepage-rwd-v55 #footer .custom-footer > div,
  body.josport-homepage-rwd-v55 #footer .footer-row,
  body.josport-homepage-rwd-v55 #footer .footer-newsletter,
  body.josport-homepage-rwd-v55 #footer .newsletter-widget,
  body.josport-homepage-rwd-v55 #footer .contact-box,
  body.josport-homepage-rwd-v55 #footer .footer-links {
    padding-left:24px !important;
    padding-right:24px !important;
  }
}

/* iPad Mini */
@media (min-width:768px) and (max-width:799px) {
  body.josport-homepage-rwd-v55 #footer .custom-footer > div,
  body.josport-homepage-rwd-v55 #footer .footer-row,
  body.josport-homepage-rwd-v55 #footer .footer-newsletter,
  body.josport-homepage-rwd-v55 #footer .newsletter-widget,
  body.josport-homepage-rwd-v55 #footer .contact-box,
  body.josport-homepage-rwd-v55 #footer .footer-links {
    padding-left:22px !important;
    padding-right:22px !important;
  }
}

/* landscape / menší tablet */
@media (min-width:600px) and (max-width:767px) {
  body.josport-homepage-rwd-v55 #footer .custom-footer > div,
  body.josport-homepage-rwd-v55 #footer .footer-row,
  body.josport-homepage-rwd-v55 #footer .footer-newsletter,
  body.josport-homepage-rwd-v55 #footer .newsletter-widget,
  body.josport-homepage-rwd-v55 #footer .contact-box,
  body.josport-homepage-rwd-v55 #footer .footer-links {
    padding-left:20px !important;
    padding-right:20px !important;
  }
}

/* běžné mobily */
@media (min-width:421px) and (max-width:599px) {
  body.josport-homepage-rwd-v55 #footer .custom-footer > div,
  body.josport-homepage-rwd-v55 #footer .footer-row,
  body.josport-homepage-rwd-v55 #footer .footer-newsletter,
  body.josport-homepage-rwd-v55 #footer .newsletter-widget,
  body.josport-homepage-rwd-v55 #footer .contact-box,
  body.josport-homepage-rwd-v55 #footer .footer-links {
    padding-left:18px !important;
    padding-right:18px !important;
  }

  body.josport-homepage-rwd-v55 #footer .custom-footer > div {
    padding-top:18px !important;
    padding-bottom:18px !important;
  }
}

/* iPhone SE / extra úzké mobily */
@media (max-width:420px) {
  body.josport-homepage-rwd-v55 #footer .custom-footer > div,
  body.josport-homepage-rwd-v55 #footer .footer-row,
  body.josport-homepage-rwd-v55 #footer .footer-newsletter,
  body.josport-homepage-rwd-v55 #footer .newsletter-widget,
  body.josport-homepage-rwd-v55 #footer .contact-box,
  body.josport-homepage-rwd-v55 #footer .footer-links {
    padding-left:16px !important;
    padding-right:16px !important;
  }

  body.josport-homepage-rwd-v55 #footer .custom-footer > div {
    padding-top:16px !important;
    padding-bottom:16px !important;
  }
}

/* =========================================================
   V32 — iPAD MINI 768–799 px: BLOG NADPIS + HORIZONTÁLNÍ SWIPE
   Ostatní breakpointy zůstávají beze změny.
   ========================================================= */
@media (min-width:768px) and (max-width:799px) {

  body.josport-homepage-rwd-v55 .homepage-blog-wrapper {
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 auto !important;
    padding:0 !important;
    box-sizing:border-box !important;
    overflow:visible !important;
  }

  body.josport-homepage-rwd-v55 .homepage-blog-wrapper > .homepage-group-title,
  body.josport-homepage-rwd-v55 .homepage-blog-wrapper .homepage-group-title.h4,
  body.josport-homepage-rwd-v55 .josport-blog-title-v22 {
    display:block !important;
    position:relative !important;
    width:100% !important;
    max-width:100% !important;
    margin:22px auto 14px !important;
    padding:0 12px !important;
    box-sizing:border-box !important;
    text-align:center !important;
    color:#0b3f78 !important;
    font-size:24px !important;
    font-weight:800 !important;
    line-height:1.1 !important;
    letter-spacing:-.02em !important;
    transform:none !important;
    float:none !important;
  }

  body.josport-homepage-rwd-v55 .homepage-blog-wrapper .homepage-group-title a,
  body.josport-homepage-rwd-v55 .homepage-blog-wrapper .homepage-group-title.h4 a,
  body.josport-homepage-rwd-v55 .josport-blog-title-v22 a {
    display:inline-block !important;
    margin:0 auto !important;
    padding:0 !important;
    color:#0b3f78 !important;
    font-size:inherit !important;
    font-weight:inherit !important;
    line-height:inherit !important;
    text-align:center !important;
    text-decoration:none !important;
    text-transform:uppercase !important;
  }

  body.josport-homepage-rwd-v55 .homepage-blog-wrapper > .homepage-group-title::after,
  body.josport-homepage-rwd-v55 .homepage-blog-wrapper .homepage-group-title.h4::after,
  body.josport-homepage-rwd-v55 .josport-blog-title-v22::after {
    content:"" !important;
    display:block !important;
    width:44px !important;
    height:3px !important;
    margin:9px auto 0 !important;
    border-radius:999px !important;
    background:linear-gradient(90deg,#1595ea,#0a5ea9) !important;
  }

  body.josport-homepage-rwd-v55 .josport-blog-scroll-v32 {
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:stretch !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 !important;
    padding:0 14px 14px !important;
    gap:12px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    -webkit-overflow-scrolling:touch !important;
    scroll-snap-type:x mandatory !important;
    scroll-padding-left:14px !important;
    overscroll-behavior-x:contain !important;
    box-sizing:border-box !important;
    scrollbar-width:none !important;
  }

  body.josport-homepage-rwd-v55 .josport-blog-scroll-v32::-webkit-scrollbar {
    display:none !important;
    width:0 !important;
    height:0 !important;
  }

  body.josport-homepage-rwd-v55 .josport-blog-scroll-v32 > * {
    flex:0 0 86% !important;
    width:86% !important;
    min-width:86% !important;
    max-width:86% !important;
    margin:0 !important;
    box-sizing:border-box !important;
    scroll-snap-align:start !important;
  }

  body.josport-homepage-rwd-v55 .josport-blog-scroll-v32 img {
    display:block !important;
    max-width:100% !important;
    height:auto !important;
  }

  body.josport-homepage-rwd-v55 .josport-blog-scroll-v32::after {
    content:"" !important;
    display:block !important;
    flex:0 0 6px !important;
    width:6px !important;
    min-width:6px !important;
    height:1px !important;
  }
}

/* =========================================================
   V33 — iPAD MINI 768–799 px: POSUN HORNÍCH 5 BANNERŮ POD HLAVIČKU
   ========================================================= */
@media (min-width:768px) and (max-width:799px) {

  body.josport-homepage-rwd-v55 .row.banners-row {
    margin-top:10px !important;
  }

  body.josport-homepage-rwd-v55 .next-to-carousel-banners {
    margin-top:0 !important;
  }
}

/* =========================================================
   V34 — iPAD MINI 768–799 px:
   GLOBÁLNÍ ODSAZENÍ OBSAHU POD HLAVIČKOU NA PODSTRÁNKÁCH
   Homepage zůstává řízena vlastními pravidly.
   ========================================================= */
@media (min-width:768px) and (max-width:799px) {

  /*
   * Shoptet na iPad Mini někdy vykreslí obsah podstránky příliš vysoko
   * a první blok zaleze pod hlavičku.
   *
   * Platí pouze mimo homepage (.in-index).
   */
  body.josport-homepage-rwd-v55:not(.in-index) #content-wrapper {
    margin-top:12px !important;
  }

  /*
   * Pojistka pro šablony, které mají první obsahový blok
   * absolutně / negativně posunutý.
   */
  body.josport-homepage-rwd-v55:not(.in-index) #content-wrapper > .content-wrapper-in,
  body.josport-homepage-rwd-v55:not(.in-index) main#content {
    position:relative !important;
    top:0 !important;
  }

  /*
   * Pokud je první sekce na podstránce bez vlastního odstupu,
   * necháme minimální bezpečný prostor pod hlavičkou.
   */
  body.josport-homepage-rwd-v55:not(.in-index) main#content > :first-child {
    margin-top:0 !important;
  }
}


/* =========================================================

/* =========================================================
   V55 — JEDNOTNÝ MODEL TYPOGRAFIE PRO OBRÁZKOVÉ BANNERY
   Jeden systém pro iPhone / mobil / iPad / tablet / desktop.
   Týmová zóna / E-shop / Hřiště / Sportovní pomůcky i .last-banner.
   Delší názvy se mohou zalomit maximálně na 2 řádky.
   ========================================================= */
body.josport-homepage-rwd-v55 {
  --jhp-tile-title-size: 22px;
  --jhp-tile-title-line: 1.05;
  --jhp-tile-title-pad-x: 8px;
  --jhp-tile-title-gap: 8px;
  --jhp-tile-cta-size: 9px;
}

/* Jeden společný vzhled názvu pro všechny relevantní bannery. */
body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-texts .extended-banner-title,
body.josport-homepage-rwd-v55 section.last-banner .extended-banner-texts .extended-banner-title,
body.josport-homepage-rwd-v55 .last-banner .extended-banner-texts .extended-banner-title {
  display:-webkit-box !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:2 !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 0 var(--jhp-tile-title-gap) !important;
  padding:0 var(--jhp-tile-title-pad-x) !important;
  color:#fff !important;
  font-size:var(--jhp-tile-title-size) !important;
  font-weight:900 !important;
  line-height:var(--jhp-tile-title-line) !important;
  letter-spacing:-.025em !important;
  white-space:normal !important;
  overflow:hidden !important;
  overflow-wrap:normal !important;
  word-break:normal !important;
  text-align:center !important;
  text-wrap:balance !important;
  text-shadow:0 2px 5px rgba(0,0,0,.68),0 1px 2px rgba(0,0,0,.92) !important;
}

body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-texts .extended-banner-link,
body.josport-homepage-rwd-v55 section.last-banner .extended-banner-texts .extended-banner-link,
body.josport-homepage-rwd-v55 .last-banner .extended-banner-texts .extended-banner-link {
  font-size:var(--jhp-tile-cta-size) !important;
  font-weight:900 !important;
}

/* iPhone SE / úzké telefony */
@media (max-width:420px) {
  body.josport-homepage-rwd-v55 {
    --jhp-tile-title-size:18px;
    --jhp-tile-title-pad-x:5px;
    --jhp-tile-title-gap:6px;
    --jhp-tile-cta-size:8px;
  }
}

/* Běžný iPhone / Android portrait */
@media (min-width:421px) and (max-width:599px) {
  body.josport-homepage-rwd-v55 {
    --jhp-tile-title-size:20px;
    --jhp-tile-title-pad-x:6px;
    --jhp-tile-title-gap:7px;
    --jhp-tile-cta-size:8.5px;
  }
}

/* Mobil / menší tablet na šířku */
@media (min-width:600px) and (max-width:767px) {
  body.josport-homepage-rwd-v55 {
    --jhp-tile-title-size:21px;
    --jhp-tile-title-pad-x:7px;
    --jhp-tile-title-gap:7px;
    --jhp-tile-cta-size:8.8px;
  }
}

/* iPad Mini */
@media (min-width:768px) and (max-width:799px) {
  body.josport-homepage-rwd-v55 {
    --jhp-tile-title-size:25px;
    --jhp-tile-title-pad-x:8px;
    --jhp-tile-title-gap:8px;
    --jhp-tile-cta-size:9.5px;
  }
}

/* iPad Air / běžné tablety */
@media (min-width:800px) and (max-width:999px) {
  body.josport-homepage-rwd-v55 {
    --jhp-tile-title-size:29px;
    --jhp-tile-title-pad-x:10px;
    --jhp-tile-title-gap:9px;
    --jhp-tile-cta-size:10px;
  }
}

/* iPad Pro / větší tablety */
@media (min-width:1000px) and (max-width:1099px) {
  body.josport-homepage-rwd-v55 {
    --jhp-tile-title-size:31px;
    --jhp-tile-title-pad-x:12px;
    --jhp-tile-title-gap:10px;
    --jhp-tile-cta-size:10.5px;
  }
}

/* Desktop: zachovat důraz, ale ne přerůst kartu. */
@media (min-width:1100px) {
  body.josport-homepage-rwd-v55 {
    --jhp-tile-title-size:24px;
    --jhp-tile-title-pad-x:10px;
    --jhp-tile-title-gap:9px;
    --jhp-tile-cta-size:10px;
  }
}

/* =========================================================
   V55 — TABLETY 768–1099 px: větší spodní .last-banner karty
   Jednotný model pro iPad Mini / Air / Pro a další tablety.
   Větší karta + celý název až na 3 řádky, bez zbytečné výpustky.
   ========================================================= */
@media (min-width:768px) and (max-width:1099px) {
  body.josport-homepage-rwd-v55 .last-banner {
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:14px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    padding:14px 16px 18px !important;
    scroll-snap-type:x proximity !important;
    -webkit-overflow-scrolling:touch !important;
    box-sizing:border-box !important;
  }

  body.josport-homepage-rwd-v55 .last-banner > div {
    flex:0 0 clamp(220px, 30vw, 285px) !important;
    width:clamp(220px, 30vw, 285px) !important;
    min-width:clamp(220px, 30vw, 285px) !important;
    max-width:clamp(220px, 30vw, 285px) !important;
    scroll-snap-align:start !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .banner,
  body.josport-homepage-rwd-v55 .last-banner .banner-wrapper,
  body.josport-homepage-rwd-v55 .last-banner a {
    width:100% !important;
    max-width:100% !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .banner-wrapper,
  body.josport-homepage-rwd-v55 .last-banner img {
    height:clamp(172px, 21vw, 210px) !important;
  }

  body.josport-homepage-rwd-v55 .last-banner img {
    width:100% !important;
    max-width:none !important;
    object-fit:cover !important;
    display:block !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-texts {
    padding:14px 12px 12px !important;
    justify-content:flex-end !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-title {
    display:-webkit-box !important;
    -webkit-box-orient:vertical !important;
    -webkit-line-clamp:3 !important;
    font-size:clamp(19px, 2.35vw, 24px) !important;
    line-height:1.08 !important;
    font-weight:900 !important;
    letter-spacing:-.02em !important;
    margin:0 0 10px !important;
    padding:0 6px !important;
    white-space:normal !important;
    overflow:hidden !important;
    text-align:center !important;
    text-wrap:balance !important;
  }

  body.josport-homepage-rwd-v55 .last-banner .extended-banner-link {
    min-width:60px !important;
    min-height:30px !important;
    padding:6px 10px !important;
    font-size:9px !important;
    line-height:1 !important;
  }
}

/* =========================================================
   V55 — MOBILY: jednotně větší názvy 4 hlavních bannerů
   Platí pro všechny mobilní šířky do 767 px.
   ========================================================= */
@media (max-width: 767px) {
  body.josport-homepage-rwd-v55 {
    --jhp-tile-title-size: clamp(21px, 5.8vw, 25px);
    --jhp-tile-title-line: 1.04;
    --jhp-tile-title-pad-x: 6px;
    --jhp-tile-title-gap: 7px;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-texts .extended-banner-title {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    white-space: normal !important;
    overflow: hidden !important;
    text-overflow: clip !important;
    text-align: center !important;
    text-wrap: balance !important;
    font-size: var(--jhp-tile-title-size) !important;
    line-height: var(--jhp-tile-title-line) !important;
    font-weight: 900 !important;
    letter-spacing: -.025em !important;
    padding: 0 var(--jhp-tile-title-pad-x) !important;
  }
}

/* menší iPhony / úzké mobily */
@media (max-width: 374px) {
  body.josport-homepage-rwd-v55 {
    --jhp-tile-title-size: 20px;
  }
}

/* =========================================================
   V55 — FIX MOBILNÍCH 4 HLAVNÍCH DLAŽDIC
   Shoptet na mobilu drží název přímo ve span.extended-banner-texts
   (často s třídou josport-mobile-tile-text-v3), nikoli v potomku
   .extended-banner-title. Proto cílíme přímo skutečný element.
   Platí jednotně pro všechny mobilní šířky do 767 px.
   ========================================================= */
@media (max-width: 767px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .banner-wrapper > a > .extended-banner-texts,
  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-texts.josport-mobile-tile-text-v3,
  body.josport-homepage-rwd-v55 section.next-banner.first span.extended-banner-texts {
    position:absolute !important;
    inset:0 !important;
    z-index:3 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    width:100% !important;
    height:100% !important;
    margin:0 !important;
    padding:10px 8px 12px !important;
    box-sizing:border-box !important;
    color:#fff !important;
    font-size:clamp(20px, 5.7vw, 25px) !important;
    font-weight:900 !important;
    line-height:1.04 !important;
    letter-spacing:-.03em !important;
    text-align:center !important;
    white-space:normal !important;
    overflow:visible !important;
    overflow-wrap:normal !important;
    word-break:normal !important;
    text-wrap:balance !important;
    text-shadow:0 2px 5px rgba(0,0,0,.72),0 1px 2px rgba(0,0,0,.95) !important;
    pointer-events:none !important;
  }

  /* Pokud Shoptet uvnitř přece jen vytvoří titul, dědí stejnou velikost. */
  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-texts .extended-banner-title {
    font:inherit !important;
    color:inherit !important;
    line-height:inherit !important;
    letter-spacing:inherit !important;
    text-shadow:inherit !important;
  }
}

/* Extra úzké telefony — stále výrazné, ale bezpečně se vejdou. */
@media (max-width: 360px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .banner-wrapper > a > .extended-banner-texts,
  body.josport-homepage-rwd-v55 section.next-banner.first .extended-banner-texts.josport-mobile-tile-text-v3,
  body.josport-homepage-rwd-v55 section.next-banner.first span.extended-banner-texts {
    font-size:19px !important;
    padding-left:5px !important;
    padding-right:5px !important;
  }
}

/* =========================================================
   V55 — MOBILE 4 MAIN TILES: ROBUST TITLE + CTA
   Týmová zóna / E-shop / Hřiště / Sportovní pomůcky
   Nezávislé na původní Shoptet struktuře titulku.
   ========================================================= */
@media (max-width: 767px) {
  section.next-banner.first > .first .banner-wrapper,
  section.next-banner.first > .second .banner-wrapper,
  section.next-banner.first > .third .banner-wrapper,
  section.next-banner.first > .fourth .banner-wrapper {
    position: relative !important;
    overflow: hidden !important;
  }

  section.next-banner.first > .first .banner-wrapper > a,
  section.next-banner.first > .second .banner-wrapper > a,
  section.next-banner.first > .third .banner-wrapper > a,
  section.next-banner.first > .fourth .banner-wrapper > a {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
  }

  section.next-banner.first .josport-mobile-tile-v55 {
    position: absolute !important;
    inset: 0 !important;
    z-index: 5 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    width: 100% !important;
    height: 100% !important;
    padding: 12px 8px 13px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    text-align: center !important;
    pointer-events: none !important;
    background: linear-gradient(to bottom, rgba(2,10,20,0) 30%, rgba(2,10,20,.12) 52%, rgba(2,10,20,.70) 100%) !important;
  }

  section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-title-v55 {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 4px !important;
    box-sizing: border-box !important;
    color: #fff !important;
    font-family: inherit !important;
    font-size: clamp(17px, 5vw, 22px) !important;
    font-weight: 900 !important;
    line-height: 1.03 !important;
    letter-spacing: -0.025em !important;
    white-space: normal !important;
    overflow: hidden !important;
    text-overflow: clip !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    text-align: center !important;
    text-shadow: 0 2px 5px rgba(0,0,0,.82), 0 1px 2px rgba(0,0,0,.98) !important;
  }

  section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-cta-v55 {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 54px !important;
    min-height: 27px !important;
    margin: 0 !important;
    padding: 5px 10px !important;
    box-sizing: border-box !important;
    border-radius: 7px !important;
    background: #0e5ca6 !important;
    color: #fff !important;
    font-family: inherit !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-shadow: none !important;
    box-shadow: 0 4px 12px rgba(0,0,0,.18) !important;
  }
}

/* úzké telefony 320–374 px */
@media (max-width: 374px) {
  section.next-banner.first .josport-mobile-tile-v55 {
    gap: 6px !important;
    padding: 9px 5px 10px !important;
  }
  section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-title-v55 {
    font-size: 16px !important;
    padding: 0 2px !important;
  }
  section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-cta-v55 {
    min-width: 50px !important;
    min-height: 25px !important;
    font-size: 9px !important;
  }
}

/* širší mobily / landscape */
@media (min-width: 480px) and (max-width: 767px) {
  section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-title-v55 {
    font-size: clamp(19px, 3.7vw, 23px) !important;
  }
}


/* =========================================================
   V55 — MOBILE TILE CONTENT POSITION
   Jemné posunutí titulku + CTA nahoru, aby tlačítko „Více“
   nebylo nalepené na spodní hraně / ořezané.
   ========================================================= */
@media (max-width: 767px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 {
    padding-bottom: 24px !important;
  }
}

@media (max-width: 374px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 {
    padding-bottom: 20px !important;
  }
}

/* =========================================================
   V55 — MOBILE 4 MAIN TILES: CTA VŽDY UVNITŘ BANNERU
   Oprava pozice obsahu na všech mobilních šířkách.
   Nepoužívá flex-end, ale stabilní střed s jemným posunem dolů.
   ========================================================= */
@media (max-width: 767px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 {
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 8px 7px !important;
    box-sizing: border-box !important;
    transform: translateY(14px) !important;
    overflow: hidden !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-title-v55 {
    flex: 0 0 auto !important;
    margin: 0 !important;
    font-size: clamp(17px, 4.8vw, 21px) !important;
    line-height: 1.02 !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-cta-v55 {
    position: static !important;
    flex: 0 0 auto !important;
    min-width: 52px !important;
    min-height: 25px !important;
    margin: 0 !important;
    padding: 5px 9px !important;
    font-size: 9px !important;
    line-height: 1 !important;
    transform: none !important;
  }
}

@media (max-width: 374px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 {
    gap: 5px !important;
    padding: 7px 5px !important;
    transform: translateY(11px) !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-title-v55 {
    font-size: 16px !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-cta-v55 {
    min-width: 48px !important;
    min-height: 24px !important;
    padding: 4px 8px !important;
    font-size: 8.5px !important;
  }
}

/* =========================================================
   V55 — FINÁLNÍ POZICE 4 HLAVNÍCH DLAŽDIC + CTA
   Mobil + všechny běžné tablety (iPad Mini/Air/Pro do 1099 px).
   Obsah je vždy uvnitř banneru, bez translate posunů.
   ========================================================= */
@media (max-width: 1099px) {
  body.josport-homepage-rwd-v55 section.next-banner.first > .first .banner-wrapper,
  body.josport-homepage-rwd-v55 section.next-banner.first > .second .banner-wrapper,
  body.josport-homepage-rwd-v55 section.next-banner.first > .third .banner-wrapper,
  body.josport-homepage-rwd-v55 section.next-banner.first > .fourth .banner-wrapper {
    position: relative !important;
    overflow: hidden !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 {
    position: absolute !important;
    inset: 0 !important;
    z-index: 8 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-end !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    gap: 6px !important;
    margin: 0 !important;
    padding: 10px 8px 12px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    text-align: center !important;
    pointer-events: none !important;
    transform: none !important;
    background: linear-gradient(to bottom, rgba(2,10,20,0) 34%, rgba(2,10,20,.10) 56%, rgba(2,10,20,.62) 100%) !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-title-v55 {
    position: static !important;
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    flex: 0 0 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 4px !important;
    box-sizing: border-box !important;
    color: #fff !important;
    font-size: clamp(17px, 4.6vw, 21px) !important;
    font-weight: 900 !important;
    line-height: 1.03 !important;
    letter-spacing: -.02em !important;
    white-space: normal !important;
    overflow: hidden !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    text-align: center !important;
    text-shadow: 0 2px 5px rgba(0,0,0,.88), 0 1px 2px rgba(0,0,0,.98) !important;
    transform: none !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-cta-v55 {
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 auto !important;
    min-width: 52px !important;
    min-height: 25px !important;
    margin: 0 !important;
    padding: 5px 9px !important;
    border-radius: 6px !important;
    background: #0e5ca6 !important;
    color: #fff !important;
    font-size: 9px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-align: center !important;
    box-shadow: 0 3px 9px rgba(0,0,0,.20) !important;
    transform: none !important;
  }
}

/* menší telefony */
@media (max-width: 374px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 {
    gap: 5px !important;
    padding: 8px 5px 9px !important;
  }
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-title-v55 {
    font-size: 16px !important;
  }
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-cta-v55 {
    min-width: 48px !important;
    min-height: 23px !important;
    padding: 4px 8px !important;
    font-size: 8.5px !important;
  }
}

/* Tablety / iPad Mini, Air, Pro */
@media (min-width: 768px) and (max-width: 1099px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 {
    gap: 7px !important;
    padding: 12px 10px 14px !important;
  }
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-title-v55 {
    font-size: clamp(18px, 2.15vw, 23px) !important;
    line-height: 1.04 !important;
  }
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-cta-v55 {
    min-width: 58px !important;
    min-height: 28px !important;
    padding: 6px 10px !important;
    font-size: 10px !important;
  }
}

/* =========================================================
   V55 — MOBIL: NÁZEV + CTA VERTIKÁLNĚ DO STŘEDU BANNERU
   Pouze telefony / mobilní layout do 767 px.
   Tabletová pravidla 768–1099 px zůstávají beze změny.
   ========================================================= */
@media (max-width: 767px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 {
    justify-content: center !important;
    gap: 7px !important;
    padding: 8px 7px !important;
    transform: none !important;
    background: linear-gradient(to bottom, rgba(2,10,20,.03) 0%, rgba(2,10,20,.08) 42%, rgba(2,10,20,.34) 100%) !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-title-v55 {
    margin: 0 !important;
    font-size: clamp(17px, 4.9vw, 21px) !important;
    line-height: 1.02 !important;
    transform: none !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-cta-v55 {
    margin: 0 !important;
    min-width: 54px !important;
    min-height: 26px !important;
    padding: 5px 10px !important;
    font-size: 9px !important;
    transform: none !important;
  }
}

@media (max-width: 374px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 {
    gap: 6px !important;
    padding: 7px 5px !important;
  }
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-title-v55 {
    font-size: 16px !important;
  }
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-cta-v55 {
    min-width: 50px !important;
    min-height: 24px !important;
    padding: 4px 8px !important;
    font-size: 8.5px !important;
  }
}

/* =========================================================
   V55 — MOBILE FINAL: overlay přes CELÝ banner, obsah ve středu
   Důležité: přepisuje staré bottom/height/transform pozicování.
   iPad/tablety 768+ zůstávají beze změny.
   ========================================================= */
@media (max-width: 767px) {
  body.josport-homepage-rwd-v55 section.next-banner.first > .first .banner-wrapper > a,
  body.josport-homepage-rwd-v55 section.next-banner.first > .second .banner-wrapper > a,
  body.josport-homepage-rwd-v55 section.next-banner.first > .third .banner-wrapper > a,
  body.josport-homepage-rwd-v55 section.next-banner.first > .fourth .banner-wrapper > a {
    position: relative !important;
    overflow: hidden !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 {
    position: absolute !important;
    inset: 0 !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 100% !important;
    margin: 0 !important;
    padding: 10px 7px !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    transform: none !important;
    translate: none !important;
    overflow: hidden !important;
    z-index: 3 !important;
    background: linear-gradient(to bottom, rgba(0,0,0,.02), rgba(0,0,0,.10) 45%, rgba(0,0,0,.22)) !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-title-v55 {
    position: static !important;
    inset: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 5px !important;
    font-size: clamp(17px, 4.8vw, 21px) !important;
    font-weight: 900 !important;
    line-height: 1.02 !important;
    text-align: center !important;
    white-space: normal !important;
    transform: none !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 .josport-mobile-tile-cta-v55 {
    position: static !important;
    inset: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 54px !important;
    min-height: 26px !important;
    margin: 0 !important;
    padding: 5px 10px !important;
    border-radius: 6px !important;
    font-size: 9px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    transform: none !important;
  }
}

/* =========================================================
   V55 — MOBILE FINAL FIX: OVERLAY RELATIVE TO VISIBLE WRAPPER
   The visible banner is shorter than the inner link/image box on phones.
   Therefore title + CTA are positioned against .banner-wrapper itself,
   i.e. the actually visible cropped banner area.
   ========================================================= */
@media (max-width: 767px) {
  body.josport-homepage-rwd-v55 section.next-banner.first > .first .banner-wrapper,
  body.josport-homepage-rwd-v55 section.next-banner.first > .second .banner-wrapper,
  body.josport-homepage-rwd-v55 section.next-banner.first > .third .banner-wrapper,
  body.josport-homepage-rwd-v55 section.next-banner.first > .fourth .banner-wrapper {
    position: relative !important;
    overflow: hidden !important;
  }

  /* The link must fill only the visible wrapper, not its intrinsic image height. */
  body.josport-homepage-rwd-v55 section.next-banner.first > .first .banner-wrapper > a,
  body.josport-homepage-rwd-v55 section.next-banner.first > .second .banner-wrapper > a,
  body.josport-homepage-rwd-v55 section.next-banner.first > .third .banner-wrapper > a,
  body.josport-homepage-rwd-v55 section.next-banner.first > .fourth .banner-wrapper > a {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  /* Hide all older/original text layers on phones. */
  body.josport-homepage-rwd-v55 section.next-banner.first > div > .banner .extended-banner-texts,
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-mobile-tile-v55 {
    display: none !important;
    visibility: hidden !important;
  }

  /* New overlay is a DIRECT CHILD of .banner-wrapper. */
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-visible-tile-overlay-v55 {
    position: absolute !important;
    inset: 0 !important;
    z-index: 30 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 8px 7px !important;
    box-sizing: border-box !important;
    pointer-events: none !important;
    text-align: center !important;
    overflow: hidden !important;
    background: linear-gradient(to bottom, rgba(0,0,0,.02) 0%, rgba(0,0,0,.07) 40%, rgba(0,0,0,.27) 100%) !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .josport-visible-tile-title-v55 {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 3px !important;
    box-sizing: border-box !important;
    color: #fff !important;
    font-size: clamp(17px, 4.8vw, 20px) !important;
    font-weight: 900 !important;
    line-height: 1.02 !important;
    letter-spacing: -.02em !important;
    white-space: normal !important;
    overflow: hidden !important;
    text-align: center !important;
    text-shadow: 0 2px 5px rgba(0,0,0,.95), 0 1px 2px rgba(0,0,0,1) !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .josport-visible-tile-cta-v55 {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 54px !important;
    min-height: 25px !important;
    margin: 0 !important;
    padding: 5px 9px !important;
    box-sizing: border-box !important;
    border-radius: 6px !important;
    background: #0e5ca6 !important;
    color: #fff !important;
    font-size: 9px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    box-shadow: 0 3px 9px rgba(0,0,0,.28) !important;
  }
}

@media (max-width: 374px) {
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-visible-tile-overlay-v55 {
    gap: 5px !important;
    padding: 7px 5px !important;
  }
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-visible-tile-title-v55 {
    font-size: 16px !important;
  }
  body.josport-homepage-rwd-v55 section.next-banner.first .josport-visible-tile-cta-v55 {
    min-width: 50px !important;
    min-height: 24px !important;
    padding: 4px 8px !important;
    font-size: 8.5px !important;
  }
}

/* =========================================================
   V55 — MOBILE: ODSTRANĚNÍ DVOJITÉHO / PŮLENÉHO FILTRU
   Původní Shoptet overlay přes <a>::after + nový V55 overlay
   se na mobilu sčítaly. Text + CTA zůstávají vycentrované,
   ale obrázek je nyní bez překrývajícího tmavého filtru.
   ========================================================= */
@media (max-width: 767px) {
  body.josport-homepage-rwd-v55 section.next-banner.first > .first .banner-wrapper > a::after,
  body.josport-homepage-rwd-v55 section.next-banner.first > .second .banner-wrapper > a::after,
  body.josport-homepage-rwd-v55 section.next-banner.first > .third .banner-wrapper > a::after,
  body.josport-homepage-rwd-v55 section.next-banner.first > .fourth .banner-wrapper > a::after {
    content: none !important;
    display: none !important;
    background: none !important;
    opacity: 0 !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .josport-visible-tile-overlay-v55 {
    background: transparent !important;
  }

  body.josport-homepage-rwd-v55 section.next-banner.first .josport-visible-tile-title-v55 {
    text-shadow: 0 2px 5px rgba(0,0,0,.9), 0 1px 2px rgba(0,0,0,.9) !important;
  }
}
