/* LOVESILK – vlastní úpravy webu */

/* Produktové štítky */
#products .product .flags .flag.flag-action,
.product .flags .flag.flag-action,
.flags .flag.flag-action,
.flag.flag-action {
  background: #000000 !important;
  background-color: #000000 !important;
  color: #ffffff !important;
}

.flag.flag-action span,
.flag-action span {
  color: #ffffff !important;
}

#products .product .flags .flag.flag-new,
.product .flags .flag.flag-new,
.flags .flag.flag-new,
.flag.flag-new {
  background: #000000 !important;
  background-color: #000000 !important;
  color: #ffffff !important;
}

.flag.flag-new span,
.flag-new span {
  color: #ffffff !important;
}

#products .product .flags .flag,
.product-top .flags .flag,
.flags .flag,
.flag {
  background-color: #000000 !important;
  background: #000000 !important;
  color: #ffffff !important;
}

#products .product .flags .flag span,
.flags .flag span,
.flag span {
  color: #ffffff !important;
}

/* Systémové prvky */
.no-javascript__text,
.no-javascript {
  display: none !important;
}

.type-category .category-description-inner h2:first-child,
.type-category .category-description-inner h1:first-child {
  display: none !important;
}

.carousel .sr-only,
.carousel-control .sr-only,
.carousel-control-prev .sr-only,
.carousel-control-next .sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Carousel – desktop a tablet */
@media (min-width: 768px) {
  body.in-index #carousel,
  body.in-index #carousel .item > a,
  body.in-index #carousel .carousel-inner,
  body.in-index #carousel .carousel-inner .item.active,
  body.in-index #carousel .carousel-inner .item > a {
    position: relative !important;
    display: block !important;
  }

  body.in-index #carousel .extended-banner-texts {
    position: absolute !important;
    left: 5% !important;
    right: auto !important;
    top: 49% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    width: 48% !important;
    max-width: 620px !important;
    min-width: 460px !important;
    text-align: left !important;
    align-items: flex-start !important;
    display: flex !important;
    flex-direction: column !important;
    z-index: 5 !important;
  }

  body.in-index #carousel .extended-banner-title {
    display: block !important;
    width: 100% !important;
    max-width: 620px !important;
    font-size: 40px !important;
    line-height: 1.08 !important;
    font-weight: 400 !important;
    margin: 0 0 12px 0 !important;
    color: #5f6668 !important;
    text-align: left !important;
  }

  body.in-index #carousel .extended-banner-text {
    display: block !important;
    width: 100% !important;
    max-width: 440px !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    margin: 0 0 12px 0 !important;
    color: #5f6668 !important;
    text-align: left !important;
  }

  body.in-index #carousel .extended-banner-text p {
    margin: 0 !important;
  }

  body.in-index #carousel .extended-banner-link {
    display: inline-block !important;
    width: auto !important;
    font-size: 13px !important;
    line-height: 1.1 !important;
    padding: 8px 22px !important;
    background: transparent !important;
    border: 1px solid #5f6668 !important;
    color: #5f6668 !important;
    text-decoration: none !important;
    text-align: center !important;
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease !important;
  }

  body.in-index #carousel .extended-banner-link:hover {
    background: #a5e0cf !important;
    border-color: #a5e0cf !important;
    color: #5f6668 !important;
  }
}

/* Carousel – třetí banner */
@media (min-width: 768px) {
  body.in-index #carousel a[data-ec-promo-id="206"] .extended-banner-title {
    font-size: 46px !important;
    line-height: 1.04 !important;
    margin-bottom: 14px !important;
  }

  body.in-index #carousel a[data-ec-promo-id="206"] .extended-banner-text {
    font-size: 16px !important;
    line-height: 1.35 !important;
    margin-bottom: 14px !important;
  }

  body.in-index #carousel a[data-ec-promo-id="206"] .extended-banner-link {
    font-size: 14px !important;
    padding: 10px 28px !important;
  }
}

/* Carousel – mobil */
@media (max-width: 767px) {
  body.in-index #carousel .item > a,
  body.in-index #carousel .carousel-inner .item > a {
    position: relative !important;
    display: block !important;
  }

  body.in-index #carousel .extended-banner-texts {
    position: absolute !important;
    left: 6% !important;
    right: auto !important;
    top: 47% !important;
    bottom: auto !important;
    transform: translateY(-50%) !important;
    width: 48% !important;
    max-width: 48% !important;
    min-width: 0 !important;
    text-align: left !important;
    align-items: flex-start !important;
    display: flex !important;
    flex-direction: column !important;
    z-index: 5 !important;
  }

  body.in-index #carousel .extended-banner-title {
    display: block !important;
    width: 100% !important;
    font-size: 18px !important;
    line-height: 1.15 !important;
    font-weight: 400 !important;
    margin: 0 0 7px 0 !important;
    color: #5f6668 !important;
    text-align: left !important;
  }

  body.in-index #carousel .extended-banner-text {
    display: block !important;
    width: 100% !important;
    font-size: 10px !important;
    line-height: 1.25 !important;
    margin: 0 0 8px 0 !important;
    color: #5f6668 !important;
    text-align: left !important;
  }

  body.in-index #carousel .extended-banner-text p {
    margin: 0 !important;
  }

  body.in-index #carousel .extended-banner-link {
    display: inline-block !important;
    width: auto !important;
    font-size: 9px !important;
    line-height: 1.2 !important;
    padding: 6px 9px !important;
    background: transparent !important;
    border: 1px solid #5f6668 !important;
    color: #5f6668 !important;
    text-decoration: none !important;
    text-align: center !important;
    transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease !important;
  }

  body.in-index #carousel .extended-banner-link:hover {
    background: #a5e0cf !important;
    border-color: #a5e0cf !important;
    color: #5f6668 !important;
  }

  body.in-index #carousel .ls-mobile-quote {
    display: block !important;
    font-family: var(--template-headings-font) !important;
    font-size: 14px !important;
    line-height: 1.18 !important;
    font-weight: 400 !important;
    color: #5f6668 !important;
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
    text-align: left !important;
  }

  body.in-index #carousel .ls-mobile-credit {
    display: inline-block !important;
    font-family: var(--template-font) !important;
    font-size: 8px !important;
    line-height: 1.25 !important;
    color: #5f6668 !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    white-space: nowrap !important;
  }
}

/* Produktový detail – mobil */
@media (max-width: 767px) {
  body.type-detail .p-detail-inner {
    min-height: 0 !important;
    height: auto !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }
}

/* Newsletter – odstranění duplicitního textu tlačítka ze staré úpravy šablony */
#formNewsletterWidget button[type="submit"]::after {
  content: none !important;
  display: none !important;
}

/* Newsletter – odstranění starého doplňkového textu ze šablony */
.custom-footer__newsletter .newsletter-header::after {
  content: none !important;
  display: none !important;
}

/* Newsletter – správná šířka formuláře na mobilu */
@media (max-width: 767px) {
  .custom-footer .custom-footer__newsletter,
  .custom-footer__newsletter #formNewsletterWidget,
  .custom-footer__newsletter #formNewsletterWidget fieldset,
  .custom-footer__newsletter #formNewsletterWidget .form-group,
  .custom-footer__newsletter #formNewsletterWidget .form-control-wrapper,
  .custom-footer__newsletter #newsletterWidget {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
}

/* Newsletter – plná využitelná šířka e-mailového pole na desktopu */
@media (min-width: 768px) {
  .custom-footer__newsletter #newsletterWidget {
    padding-right: 12px !important;
  }
}

/* Instagram – celé řady příspěvků podle velikosti obrazovky */
@media (min-width: 768px) {
  .custom-footer__instagram .instagram-widget {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .custom-footer__instagram .instagram-widget > a {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
  }

  .custom-footer__instagram .instagram-widget > a:nth-child(n + 9) {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .custom-footer__instagram .instagram-widget {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .custom-footer__instagram .instagram-widget > a {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
  }

  .custom-footer__instagram .instagram-widget > a:nth-child(n + 10) {
    display: none !important;
  }
}

.custom-footer__instagram .instagram-widget > a img {
  display: block !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
}

/* Druhý produktový blok – zobrazení nadpisu skrytého původní šablonou */
.homepage-products-heading-8 {
  display: block !important;
}

/* Carousel – bezpečné rozložení všech textů na menších mobilech */
@media (max-width: 414px) {
  body.in-index #carousel .extended-banner-texts {
    top: 5% !important;
    transform: none !important;
    width: 46% !important;
    max-width: 46% !important;
  }

  body.in-index #carousel .extended-banner-title {
    font-size: 14px !important;
    line-height: 1.12 !important;
    margin-bottom: 5px !important;
  }

  body.in-index #carousel .extended-banner-text {
    font-size: 9px !important;
    line-height: 1.15 !important;
    margin-bottom: 5px !important;
  }

  body.in-index #carousel .ls-mobile-quote {
    font-size: 12px !important;
    line-height: 1.12 !important;
    margin-bottom: 4px !important;
  }

  body.in-index #carousel .ls-mobile-quote br + br {
    display: none !important;
  }

  body.in-index #carousel .ls-mobile-credit {
    font-size: 7px !important;
    line-height: 1.1 !important;
  }

  body.in-index #carousel .extended-banner-link {
    font-size: 8px !important;
    line-height: 1.1 !important;
    padding: 4px 6px !important;
  }
}


/* LOVESILK v7 – styly přesunuté z pole HTML kódy v Shoptetu. */

/* Mobilní nákup: cena a množství, celoplošné CTA a kompaktní benefity. */
@media (max-width: 767px) {
  body.type-detail #product-detail-form .p-to-cart-block {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 16px 12px !important;
    padding: 16px !important;
    margin-bottom: 0 !important;
  }
  body.type-detail #product-detail-form .p-final-price-wrapper {
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.type-detail #product-detail-form .p-to-cart-block .price-final {
    font-size: clamp(24px, 6.4vw, 32px) !important;
    line-height: 1.2 !important;
  }
  body.type-detail #product-detail-form .p-to-cart-block .add-to-cart {
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.type-detail #product-detail-form .p-to-cart-block .quantity {
    display: block !important;
    width: 132px !important;
    height: 48px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.type-detail #product-detail-form .p-to-cart-block .quantity input {
    width: 100% !important;
    height: 48px !important;
    padding: 0 44px !important;
    font-size: 16px !important;
  }
  body.type-detail #product-detail-form .quantity .increase,
  body.type-detail #product-detail-form .quantity .decrease {
    width: 44px !important;
    height: 48px !important;
    font-size: 0 !important;
    top: 0 !important;
    bottom: auto !important;
  }
  body.type-detail #product-detail-form .quantity .increase::before,
  body.type-detail #product-detail-form .quantity .decrease::before {
    font-family: Arial, sans-serif !important;
    font-size: 22px !important;
    line-height: 48px !important;
  }
  body.type-detail #product-detail-form .quantity .increase::before { content: "+" !important; }
  body.type-detail #product-detail-form .quantity .decrease::before { content: "−" !important; }
  body.type-detail #product-detail-form .quantity .increase > span,
  body.type-detail #product-detail-form .quantity .decrease > span { display: none !important; }
  body.type-detail #product-detail-form .p-to-cart-block .add-to-cart-button::before {
    content: none !important;
  }
  body.type-detail #product-detail-form .p-to-cart-block .add-to-cart-button {
    grid-column: 1 / -1 !important;
    width: 100% !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 14px 12px !important;
    background-color: #a4dfcf !important;
    color: #193c35 !important;
    border-color: #a4dfcf !important;
    border-radius: 4px !important;
    font-size: 18px !important;
    line-height: 1.4 !important;
    white-space: normal !important;
  }
  body.type-detail #product-detail-form .add-to-cart-button:focus-visible {
    outline: 2px solid #193c35 !important;
    outline-offset: 3px !important;
  }
  body.type-detail #product-detail-form .lovesilk-purchase-trust {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 0 !important;
    margin: 12px 0 24px !important;
    padding: 0 !important;
    border: 0 !important;
  }
  body.type-detail #product-detail-form .lovesilk-purchase-trust > p,
  body.type-detail #product-detail-form .lovesilk-purchase-trust > a {
    position: relative !important;
    display: block !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 10px 4px 10px 34px !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    letter-spacing: 0 !important;
    color: #384c47 !important;
    overflow-wrap: anywhere;
  }
  body.type-detail #product-detail-form .lovesilk-purchase-trust > :before {
    content: "";
    position: absolute;
    left: 2px;
    top: 11px;
    width: 21px;
    height: 21px;
    background-color: #487d6e;
    -webkit-mask: var(--ls-purchase-icon) center / contain no-repeat;
    mask: var(--ls-purchase-icon) center / contain no-repeat;
  }
  body.type-detail #product-detail-form .lovesilk-purchase-trust > :nth-child(1) {
    --ls-purchase-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v6m0-10v2'/%3E%3C/svg%3E");
  }
  body.type-detail #product-detail-form .lovesilk-purchase-trust > :nth-child(2) {
    --ls-purchase-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Cpath d='M3 17V5h11v12H3Zm11-9h4l3 4v5h-7'/%3E%3Ccircle cx='7' cy='18' r='2'/%3E%3Ccircle cx='18' cy='18' r='2'/%3E%3C/svg%3E");
  }
  body.type-detail #product-detail-form .lovesilk-purchase-trust > :nth-child(3) {
    --ls-purchase-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Cpath d='m8 3-5 5 5 5M3 8h11a6 6 0 0 1 0 12H8'/%3E%3C/svg%3E");
  }
  body.type-detail #product-detail-form .lovesilk-purchase-trust > :nth-child(4) {
    --ls-purchase-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Cpath d='M20 3C10 2 3 6 4 13s13 9 16-10ZM4 21l10-12'/%3E%3C/svg%3E");
  }
}

/* LOVESILK: tmavý text na mátových akcích, 2026-09-10 */
:root {
  --lovesilk-mint: #a5e0cf;
  --lovesilk-mint-hover: #91cfbc;
  --lovesilk-ink: #193c35;
}

/* Textové akce se stejným vzhledem jako hlavní nákupní tlačítko. */
body .lovesilk-silk-education__cta,
body #formNewsletterWidget .btn.btn-primary,
body .subscribe-form .btn.btn-primary,
body #formLoginIncluded .btn.btn-primary,
body #formSearchForm .search-button,
body #lovesilk-advice-chat .advice-window__form .btn.btn-primary,
body .loadMore__button--products,
body .goToTop__button {
  background-color: var(--lovesilk-mint) !important;
  border-color: var(--lovesilk-mint) !important;
  color: var(--lovesilk-ink) !important;
  font-family: Livvic, sans-serif !important;
  font-weight: 900 !important;
}

body .lovesilk-silk-education__cta:hover,
body .lovesilk-silk-education__cta:focus,
body #formNewsletterWidget .btn.btn-primary:hover,
body #formNewsletterWidget .btn.btn-primary:focus,
body .subscribe-form .btn.btn-primary:hover,
body .subscribe-form .btn.btn-primary:focus,
body #formLoginIncluded .btn.btn-primary:hover,
body #formLoginIncluded .btn.btn-primary:focus,
body #formSearchForm .search-button:hover,
body #formSearchForm .search-button:focus,
body #lovesilk-advice-chat .advice-window__form .btn.btn-primary:hover,
body #lovesilk-advice-chat .advice-window__form .btn.btn-primary:focus,
body .loadMore__button--products:hover,
body .loadMore__button--products:focus,
body .goToTop__button:hover,
body .goToTop__button:focus {
  background-color: var(--lovesilk-mint-hover) !important;
  border-color: var(--lovesilk-mint-hover) !important;
  color: var(--lovesilk-ink) !important;
}

/* Šipky v produktových posuvnících mají zůstat mátové, ale tmavě zelené. */
body .product-slider-navigation,
body .product-slider-navigation:hover,
body .product-slider-navigation:focus {
  background-color: var(--lovesilk-mint) !important;
  border-color: var(--lovesilk-mint) !important;
  color: var(--lovesilk-ink) !important;
}

body .product-slider-navigation::before,
body .product-slider-navigation::after,
body .product-slider-navigation svg,
body .product-slider-navigation svg * {
  color: var(--lovesilk-ink) !important;
  fill: var(--lovesilk-ink) !important;
  stroke: var(--lovesilk-ink) !important;
}

body .lovesilk-silk-education__cta:focus-visible,
body #formNewsletterWidget .btn.btn-primary:focus-visible,
body .subscribe-form .btn.btn-primary:focus-visible,
body #formLoginIncluded .btn.btn-primary:focus-visible,
body #formSearchForm .search-button:focus-visible,
body #lovesilk-advice-chat .advice-window__form .btn.btn-primary:focus-visible,
body .loadMore__button--products:focus-visible,
body .goToTop__button:focus-visible,
body .product-slider-navigation:focus-visible {
  outline: 2px solid var(--lovesilk-ink) !important;
  outline-offset: 3px;
}

@media (max-width: 374px) {
  body.type-detail #product-detail-form .p-final-price-wrapper {
    grid-column: 1 / -1 !important;
  }
  body.type-detail #product-detail-form .p-to-cart-block .add-to-cart {
    grid-column: 1 / -1 !important;
    justify-self: start !important;
  }
}

/* Desktopový nákupní blok: cena a množství nahoře, výrazné CTA pod nimi. */
@media (min-width: 1024px) {
  body.type-detail #product-detail-form .p-to-cart-block {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 112px !important;
    align-items: center !important;
    gap: 16px 20px !important;
    padding: 16px 0 0 !important;
    margin: 8px 0 0 !important;
    background: transparent !important;
  }
  body.type-detail #product-detail-form .p-final-price-wrapper,
  body.type-detail #product-detail-form .p-to-cart-block .add-to-cart {
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.type-detail #product-detail-form .p-final-price-wrapper {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }
  body.type-detail #product-detail-form .p-to-cart-block .price-final {
    font-size: 36px !important;
    line-height: 1.15 !important;
  }
  body.type-detail #product-detail-form .p-to-cart-block .quantity {
    display: block !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 112px !important;
    height: 50px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  body.type-detail #product-detail-form .p-to-cart-block .quantity input {
    width: 100% !important;
    height: 50px !important;
    padding: 0 34px !important;
    font-size: 16px !important;
  }
  body.type-detail #product-detail-form .quantity .increase,
  body.type-detail #product-detail-form .quantity .decrease {
    width: 34px !important;
    height: 50px !important;
    top: 0 !important;
    bottom: auto !important;
    font-size: 0 !important;
  }
  body.type-detail #product-detail-form .quantity .increase::before,
  body.type-detail #product-detail-form .quantity .decrease::before {
    font-family: Arial, sans-serif !important;
    font-size: 20px !important;
    line-height: 50px !important;
  }
  body.type-detail #product-detail-form .quantity .increase::before { content: "+" !important; }
  body.type-detail #product-detail-form .quantity .decrease::before { content: "−" !important; }
  body.type-detail #product-detail-form .quantity .increase > span,
  body.type-detail #product-detail-form .quantity .decrease > span { display: none !important; }
  body.type-detail #product-detail-form .p-to-cart-block .add-to-cart-button,
  body.type-detail #product-detail-form .p-to-cart-block .add-to-cart-button::before {
    width: 100% !important;
    min-height: 56px !important;
    margin: 0 !important;
    padding: 12px 16px !important;
    background: #a4dfcf !important;
    color: #193c35 !important;
    border-color: #a4dfcf !important;
    border-radius: 2px !important;
    font-size: 17px !important;
    line-height: 1.25 !important;
  }
  body.type-detail #product-detail-form .p-to-cart-block .add-to-cart-button::before {
    content: none !important;
  }
  body.type-detail #product-detail-form .p-to-cart-block .add-to-cart {
    display: contents !important;
  }
  body.type-detail #product-detail-form .p-to-cart-block .add-to-cart-button {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    justify-self: stretch !important;
  }
  body.type-detail #product-detail-form .lovesilk-purchase-trust {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px 28px !important;
    margin: 18px 0 24px !important;
    padding: 0 !important;
    border: 0 !important;
  }
  body.type-detail #product-detail-form .lovesilk-purchase-trust > p,
  body.type-detail #product-detail-form .lovesilk-purchase-trust > a {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    min-height: 28px !important;
    margin: 0 !important;
    padding: 2px 0 2px 31px !important;
    border: 0 !important;
    background: transparent !important;
    color: #46504e !important;
    font-size: 13px !important;
    line-height: 1.35 !important;
    letter-spacing: 0 !important;
    text-decoration: none !important;
  }
  body.type-detail #product-detail-form .lovesilk-purchase-trust > :before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 19px;
    height: 19px;
    transform: translateY(-50%);
    background-color: #487d6e;
    -webkit-mask: var(--ls-purchase-icon) center / contain no-repeat;
    mask: var(--ls-purchase-icon) center / contain no-repeat;
  }
  body.type-detail #product-detail-form .lovesilk-purchase-trust > :nth-child(1) {
    --ls-purchase-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='m7 12 3 3 7-7'/%3E%3C/svg%3E");
  }
  body.type-detail #product-detail-form .lovesilk-purchase-trust > :nth-child(2) {
    --ls-purchase-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Cpath d='M3 17V5h11v12H3Zm11-9h4l3 4v5h-7'/%3E%3Ccircle cx='7' cy='18' r='2'/%3E%3Ccircle cx='18' cy='18' r='2'/%3E%3C/svg%3E");
  }
  body.type-detail #product-detail-form .lovesilk-purchase-trust > :nth-child(3) {
    --ls-purchase-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Cpath d='m8 3-5 5 5 5M3 8h11a6 6 0 0 1 0 12H8'/%3E%3C/svg%3E");
  }
  body.type-detail #product-detail-form .lovesilk-purchase-trust > :nth-child(4) {
    --ls-purchase-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8'%3E%3Cpath d='M20 3C10 2 3 6 4 13s13 9 16-10ZM4 21l10-12'/%3E%3C/svg%3E");
  }
  body.type-detail #product-detail-form .lovesilk-purchase-trust > a:hover,
  body.type-detail #product-detail-form .lovesilk-purchase-trust > a:focus-visible {
    background: transparent !important;
    color: #193c35 !important;
    text-decoration: underline !important;
  }
  body.type-detail #product-detail-form .lovesilk-purchase-trust__availability strong {
    margin-right: 4px !important;
  }
}

/* Přístupný nadpis zůstává vizuálně skrytý, ale je dostupný čtečkám. */
.lovesilk-page-title.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Produktový detail: důvěryhodné informace v bezprostřední blízkosti CTA. */
.lovesilk-purchase-trust {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px 16px;
  margin: 14px 0 0;
  padding: 14px 0 0;
  border-top: 1px solid #e6e4e1;
  color: #5f6668;
  font-size: 14px;
  line-height: 1.4;
}

.lovesilk-purchase-trust p,
.lovesilk-purchase-trust a {
  margin: 0;
}

.lovesilk-purchase-trust__availability {
  color: #4f5759;
}

.lovesilk-purchase-trust a {
  color: #4f5759;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.lovesilk-purchase-trust a:hover,
.lovesilk-purchase-trust a:focus-visible {
  color: #5a9f8d;
}

@media (max-width: 767px) {
  .lovesilk-purchase-trust {
    grid-template-columns: 1fr;
    gap: 7px;
    margin-top: 12px;
    padding-top: 12px;
    font-size: 13px;
  }
}

.lovesilk-carousel-pause {
  position: absolute;
  z-index: 4;
  right: 14px;
  bottom: 14px;
  padding: 6px 10px;
  border: 1px solid rgba(95, 102, 104, 0.55);
  background: rgba(255, 255, 255, 0.9);
  color: #5f6668;
  font-size: 12px;
  cursor: pointer;
}

#carousel {
  position: relative;
}

/* Desktopová titulní stránka: kompaktnější carousel a rychlejší přechod
   k první produktové řadě. */
@media (min-width: 768px) {
  body.in-index #carousel {
    width: 100% !important;
    max-width: 1100px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  body.in-index .homepage-products-heading-5 {
    margin-top: 24px !important;
    margin-bottom: 18px !important;
  }
}

@media (max-width: 767px) {
  .lovesilk-carousel-pause {
    right: 8px;
    bottom: 8px;
    padding: 5px 8px;
    font-size: 11px;
  }
}

/* Vyhledávání: přehledné pokračování po nulovém výsledku. */
.lovesilk-search-empty {
  max-width: 760px;
  margin: 26px auto 0;
  padding: 28px;
  background: #f5f4f2;
  text-align: center;
  box-sizing: border-box;
}

.lovesilk-search-empty h3 {
  margin: 0 0 8px;
  color: #5f6668;
  font-size: 26px;
  font-weight: 400;
}

.lovesilk-search-empty p {
  margin: 0 0 18px;
  color: #5f6668;
}

.lovesilk-search-empty__links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

.lovesilk-search-empty__links a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 8px 16px;
  border: 1px solid #a5e0cf;
  background: #fff;
  color: #4f5759;
  font-weight: 600;
  text-decoration: none;
  box-sizing: border-box;
}

.lovesilk-search-empty__links a:hover,
.lovesilk-search-empty__links a:focus-visible {
  background: #a5e0cf;
  color: #fff;
}

@media (max-width: 767px) {
  .lovesilk-search-empty {
    margin-top: 20px;
    padding: 24px 16px;
  }

  .lovesilk-search-empty h3 { font-size: 23px; }

  .lovesilk-search-empty__links {
    display: grid;
    grid-template-columns: 1fr;
  }
}

/* Mobilní produktový detail: nákupní formulář před delším popisem. */
@media (max-width: 767px) {
  body.type-detail .p-data-wrapper {
    display: flex !important;
    flex-direction: column !important;
  }

  body.type-detail .p-data-wrapper #product-detail-form {
    order: 1 !important;
  }

  body.type-detail .p-data-wrapper .p-short-description {
    order: 2 !important;
    margin-top: 20px !important;
  }

  body.type-detail .p-data-wrapper .social-buttons-wrapper {
    order: 3 !important;
  }

  .advice-window {
    display: none !important;
  }
}

/* Produktový detail: na desktopu zmenšíme zbytečně velkou mezeru
   mezi nákupní částí a benefity. Mobilní rozložení zůstává beze změny. */
@media (min-width: 768px) {
  body.type-detail .p-detail-inner {
    margin-bottom: 24px !important;
    border-bottom: 0 !important;
  }

  body.type-detail .benefitBanner.position--benefitProduct {
    margin-top: 24px !important;
  }
}

/* Mobilní produktový detail: stejný kompaktní dvousloupcový benefitní blok
   jako na titulní straně, bez velkých mezer a přerostlých textů. */
@media (max-width: 767px) {
  body.type-detail .benefitBanner.position--benefitProduct {
    margin-top: 24px !important;
    margin-bottom: 0 !important;
    background: rgb(247, 247, 246);
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: 12px !important;
    padding: 20px 8px 24px !important;
  }

  body.type-detail .benefitBanner.position--benefitProduct .benefitBanner__item {
    background: #fff;
    box-sizing: border-box;
    min-height: 132px !important;
    padding: 16px 10px !important;
    justify-content: flex-start !important;
  }

  body.type-detail .benefitBanner.position--benefitProduct .benefitBanner__picture {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 48px;
    margin: 0 0 10px;
  }

  body.type-detail .benefitBanner.position--benefitProduct .benefitBanner__img {
    object-fit: contain;
    width: auto !important;
    max-width: 54px !important;
    height: 46px !important;
  }

  body.type-detail .benefitBanner.position--benefitProduct .benefitBanner__content {
    width: 100%;
  }

  body.type-detail .benefitBanner.position--benefitProduct .benefitBanner__title {
    display: block;
    font-size: 16px !important;
    line-height: 1.25 !important;
  }

  body.type-detail .benefitBanner.position--benefitProduct .benefitBanner__data {
    display: none !important;
  }
}

/* Desktopová hlavička: plná při otevření, kompaktní po posunutí. */
@media (min-width: 768px) {
  #header .header-top {
    height: 105px !important;
    padding: 10px 0 5px !important;
  }

  #header :is(.header-top-wrapper, .site-name, .site-name > a, .site-name img) {
    height: 90px !important;
  }

  #header .site-name img {
    width: auto !important;
  }

  #header .navigation-buttons {
    top: 45px !important;
  }

  #header .header-bottom {
    height: 65px !important;
    padding: 10px 0 !important;
  }
}

/* Kompaktní sticky hlavička je pouze pro skutečný desktop. */
@media (min-width: 1200px) {
  html.scrolled #header {
    height: 76px !important;
  }

  html.scrolled #header .header-top {
    height: 76px !important;
    padding: 0 !important;
  }

  html.scrolled #header :is(.header-top-wrapper, .site-name, .site-name > a) {
    height: 76px !important;
  }

  html.scrolled #header .site-name {
    justify-content: flex-start !important;
  }

  html.scrolled #header .site-name > a {
    display: flex !important;
    align-items: center !important;
  }

  html.scrolled #header .site-name img {
    height: 58px !important;
  }

  html.scrolled #header .navigation-buttons {
    top: 38px !important;
    z-index: 4;
  }

  html.scrolled #header .header-bottom {
    position: absolute !important;
    top: 0;
    left: max(185px, calc((100% - 1418px) / 2 + 150px));
    right: max(170px, calc((100% - 1418px) / 2 + 130px));
    height: 76px !important;
    padding: 15px 0 !important;
    background: transparent !important;
    z-index: 3;
  }

  html.scrolled #header .header-bottom-wrapper,
  html.scrolled #header #navigation {
    height: 46px !important;
    width: 100% !important;
    padding: 0 !important;
  }

  html.scrolled #header .menu-level-1 > li > a {
    padding-left: 9px !important;
    padding-right: 9px !important;
    font-size: 12px !important;
  }

  html.scrolled #header .menu-level-1 > li.ext > a {
    padding-right: 42px !important;
  }

  html.scrolled #header .menu-helper > span {
    font-size: 12px !important;
  }
}

/* Tablet používá plnou hlavičku a při posunu ji nechá odjet s obsahem. */
@media (min-width: 768px) and (max-width: 1199px) {
  html.scrolled #header {
    position: relative !important;
    top: auto !important;
    height: auto !important;
    transform: none !important;
  }

  html.scrolled #header .header-top {
    height: 105px !important;
    padding: 10px 0 5px !important;
  }

  html.scrolled #header :is(.header-top-wrapper, .site-name, .site-name > a, .site-name img) {
    height: 90px !important;
  }

  html.scrolled #header .site-name {
    width: auto !important;
    justify-content: center !important;
  }

  html.scrolled #header .site-name img {
    width: auto !important;
    max-width: none !important;
    height: 90px !important;
  }

  html.scrolled #header .navigation-buttons {
    top: 45px !important;
  }

  html.scrolled #header .header-bottom {
    position: static !important;
    inset: auto !important;
    height: 65px !important;
    padding: 10px 0 !important;
    background: #fff !important;
  }

  html.scrolled #header .header-bottom-wrapper,
  html.scrolled #header #navigation {
    width: 100% !important;
    height: 45px !important;
    padding: 0 !important;
  }
}

/* Široký desktop: Více zůstává blíž poslední viditelné kategorii. */
@media (min-width: 1500px) {
  html.scrolled #header .menu-helper {
    right: 100px !important;
  }
}

/* Mobilní názvy produktů: až tři řádky, aby zůstala vidět barva. */
@media (max-width: 767px) {
  .products .product .name {
    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    line-height: 1.35 !important;
    min-height: 4.05em;
  }
}

/* Titulní stránka: konverzní pořadí hlavních bloků. */
body.in-index main#content {
  display: flex;
  flex-direction: column;
}

body.in-index main#content > .banners-row {
  order: 0;
}

body.in-index main#content > .homepage-products-heading-5 {
  order: 1;
}

body.in-index main#content > .homepage-products-heading-5 + .products-wrapper {
  order: 2;
}

body.in-index main#content > .homepage-products-heading-5 + .products-wrapper > .products {
  margin-bottom: 0 !important;
}

body.in-index main#content > .benefitBanner {
  order: 4;
  margin-top: 32px;
  margin-bottom: 0 !important;
  padding-top: 36px;
}

body.in-index main#content > .lovesilk-media-strip {
  order: 3;
}

body.in-index main#content > .container-narrow {
  order: 5;
  margin-top: 70px;
}

body.in-index main#content > .homepage-products-heading-8 {
  order: 6;
}

body.in-index main#content > .homepage-products-heading-8 + .products-wrapper {
  order: 7;
}

body.in-index main#content > .lovesilk-silk-education {
  order: 8;
}

/* Pás médií se přesune ze zápatí mezi bestsellery a benefity. */
.lovesilk-media-source-moved {
  display: none !important;
}

.lovesilk-media-strip {
  width: 100%;
  max-width: none;
  margin: 32px auto 0;
  padding: 24px 0 22px;
  background: #f7f7f6;
  text-align: center;
  box-sizing: border-box;
  overflow: hidden;
}

.lovesilk-media-strip__title {
  margin: 0 0 16px;
  color: #6b7173;
  font-size: 22px;
  font-weight: 400;
}

.lovesilk-media-marquee {
  width: 100%;
  overflow: hidden;
  -webkit-mask-image: linear-gradient(
    to right,
    transparent,
    #000 4%,
    #000 96%,
    transparent
  );
  mask-image: linear-gradient(
    to right,
    transparent,
    #000 4%,
    #000 96%,
    transparent
  );
}

.lovesilk-media-marquee__track {
  display: flex;
  align-items: center;
  gap: 0;
  width: max-content;
  min-width: 100%;
  --lovesilk-media-shift: -33.333333%;
  animation: lovesilk-media-scroll 30s linear infinite;
  will-change: transform;
}

.lovesilk-media-strip .footer-about-us {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
  gap: 72px;
  width: max-content;
  min-height: 52px;
  margin: 0;
  padding: 0 72px 0 0;
  overflow: visible;
}

.lovesilk-media-strip .footer-about-us > a,
.lovesilk-media-strip .footer-about-us > span {
  display: inline-flex;
  flex: 0 0 auto;
  justify-content: center;
  align-items: center;
  min-height: 52px;
  overflow: visible;
}

.lovesilk-media-strip .footer-about-us img {
  display: block;
  width: auto;
  max-width: 180px;
  height: auto;
  max-height: 50px;
  object-fit: contain;
  overflow: visible;
}

.lovesilk-media-strip .footer-about-us > a {
  cursor: pointer;
  transition: opacity 0.2s ease;
}

.lovesilk-media-strip .footer-about-us > a:hover,
.lovesilk-media-strip .footer-about-us > a:focus-visible {
  opacity: 0.65;
}

/* Oficiální vektorové logo Svět ženy bez oříznutého prvního písmene. */
.lovesilk-media-strip img[alt="Logo Svět ženy"] {
  width: 176px !important;
  min-width: 176px;
  max-width: 176px;
  height: auto !important;
  margin: 0;
  padding: 0;
  filter: none;
}

@media (hover: hover) and (pointer: fine) {
  .lovesilk-media-marquee:hover .lovesilk-media-marquee__track,
  .lovesilk-media-marquee:focus-within .lovesilk-media-marquee__track {
    animation-play-state: paused;
  }
}

@keyframes lovesilk-media-scroll {
  from {
    transform: translate3d(0, 0, 0);
  }

  to {
    transform: translate3d(var(--lovesilk-media-shift), 0, 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .lovesilk-media-marquee__track {
    animation: none;
  }
}

/* Edukační blok na titulní stránce. */
.lovesilk-silk-education {
  margin: 70px auto 10px;
  padding: 50px 54px;
  width: 100%;
  max-width: 1180px;
  background: #f5f4f2;
  text-align: center;
  box-sizing: border-box;
}

.lovesilk-silk-education__eyebrow {
  margin: 0 0 12px;
  color: #73797b;
  font-size: 12px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.lovesilk-silk-education h2 {
  margin: 0 0 18px;
  color: #5f6668;
  font-size: 34px;
  font-weight: 400;
}

.lovesilk-silk-education__intro {
  max-width: 780px;
  margin: 0 auto 30px;
  line-height: 1.7;
}

.lovesilk-silk-education__points {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  max-width: 900px;
  margin: 0 auto 34px;
  padding: 0;
  list-style: none;
}

.lovesilk-silk-education__points li {
  padding: 20px 16px;
  background: #fff;
  line-height: 1.5;
}

.lovesilk-silk-education__cta {
  display: inline-block;
  padding: 13px 28px;
  border: 1px solid #a5e0cf;
  background: #a5e0cf;
  color: #fff !important;
  font-weight: 600;
  text-decoration: none !important;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}

.lovesilk-silk-education__cta:hover,
.lovesilk-silk-education__cta:focus {
  border-color: #8fd3c0;
  background: #8fd3c0;
  color: #fff !important;
}

@media (min-width: 900px) {
  .lovesilk-silk-education {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(360px, 0.92fr);
    grid-template-areas:
      "eyebrow points"
      "title points"
      "intro points"
      "cta points";
    column-gap: 58px;
    align-items: start;
    text-align: left;
  }

  .lovesilk-silk-education__eyebrow {
    grid-area: eyebrow;
  }

  .lovesilk-silk-education h2 {
    grid-area: title;
    margin-bottom: 16px;
  }

  .lovesilk-silk-education__intro {
    grid-area: intro;
    max-width: none;
    margin: 0 0 28px;
  }

  .lovesilk-silk-education__points {
    grid-area: points;
    align-self: end;
    grid-template-columns: 1fr;
    gap: 12px;
    width: 100%;
    max-width: none;
    margin: 0;
  }

  .lovesilk-silk-education__points li {
    min-height: 58px;
    padding: 17px 20px;
    border-left: 3px solid #a5e0cf;
    box-sizing: border-box;
  }

  .lovesilk-silk-education__cta {
    grid-area: cta;
    justify-self: start;
  }
}

@media (max-width: 767px) {
  /* Šablona carousel na mobilu skrývá; homepage ho používá i pro mobilní bannery. */
  body.in-index #carousel,
  body.in-index #carousel .carousel-inner,
  body.in-index #carousel .carousel-inner .item.active,
  body.in-index #carousel .carousel-inner .item.active > a {
    display: block !important;
    width: 100% !important;
  }

  body.in-index #carousel .carousel-inner .item.active img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
  }

  body.in-index main#content > .benefitBanner,
  body.in-index main#content > .container-narrow {
    margin-top: 45px;
  }

  body.in-index main#content > .benefitBanner {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: 12px !important;
    margin-top: 24px;
    padding: 20px 8px 24px !important;
    background: #f7f7f6;
  }

  body.in-index .benefitBanner .benefitBanner__item {
    min-height: 132px !important;
    padding: 16px 10px !important;
    background: #fff;
    justify-content: flex-start !important;
    box-sizing: border-box;
  }

  body.in-index .benefitBanner .benefitBanner__picture {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 48px;
    margin: 0 0 10px;
  }

  body.in-index .benefitBanner .benefitBanner__img {
    width: auto !important;
    max-width: 54px !important;
    height: 46px !important;
    object-fit: contain;
  }

  body.in-index .benefitBanner .benefitBanner__content {
    width: 100%;
  }

  body.in-index .benefitBanner .benefitBanner__title {
    display: block;
    font-size: 16px !important;
    line-height: 1.25 !important;
  }

  body.in-index .benefitBanner .benefitBanner__data {
    display: none !important;
  }

  .lovesilk-media-strip {
    margin-top: 24px;
    padding: 20px 0 18px;
  }

  .lovesilk-media-strip__title {
    margin-bottom: 14px;
    font-size: 21px;
  }

  .lovesilk-media-strip .footer-about-us {
    gap: 48px;
    padding-right: 48px;
  }

  .lovesilk-media-marquee__track {
    animation-duration: 26s;
  }

  .lovesilk-media-strip .footer-about-us img {
    max-width: 140px;
    max-height: 38px;
  }

  .lovesilk-media-strip img[alt="Logo Svět ženy"] {
    width: 140px !important;
    min-width: 140px;
    max-width: 140px;
  }

  .lovesilk-silk-education {
    margin-top: 55px;
    padding: 38px 20px;
  }

  .lovesilk-silk-education h2 {
    font-size: 28px;
    line-height: 1.25;
  }

  .lovesilk-silk-education__points {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}

/* Tablety: samostatné jemné rozložení bez zásahu do mobilu a desktopu. */
@media (min-width: 768px) and (max-width: 1199px) {
  /* Menu drží viditelné kategorie a položku Více pohromadě. */
  #header .header-bottom-wrapper {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 16px !important;
  }

  #header #navigation {
    flex: 0 1 760px !important;
    width: auto !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  #header #navigation .navigation-in {
    width: auto !important;
    overflow: hidden !important;
  }

  #header .menu-helper {
    position: static !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    flex: 0 0 auto !important;
    width: auto !important;
    margin: 0 !important;
  }

  /* Vizuálně neruší, ale zůstává dostupné z klávesnice a čteček. */
  .lovesilk-carousel-pause {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
  }

  .homepage-products-8 .product:has([data-micro-product-id="527"]) .availability {
    display: block !important;
    min-height: 2.6em !important;
    margin: 8px auto 0 !important;
    padding: 0 6px !important;
    line-height: 1.3 !important;
    white-space: normal !important;
    text-align: center !important;
  }

  /* Čtyři body v edukaci zůstávají kompaktní a výškově vyvážené. */
  .lovesilk-silk-education__points {
    gap: 10px;
  }

  .lovesilk-silk-education__points li {
    min-height: 54px;
    padding: 14px 18px;
  }
}

/* iPad na výšku: tři dárkové produkty a kratší úvodní banner. */
@media (min-width: 768px) and (max-width: 900px) {
  body.in-index #carousel {
    width: calc(100% - 40px) !important;
    max-width: 720px !important;
  }

  body.in-index #carousel .carousel-inner,
  body.in-index #carousel .carousel-inner .item,
  body.in-index #carousel .carousel-inner .item > a {
    height: 285px !important;
    min-height: 285px !important;
    overflow: hidden !important;
  }

  body.in-index #carousel .carousel-inner .item img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }

}

/* iPad na šířku: čtyři dárkové produkty a kompaktnější banner. */
@media (min-width: 901px) and (max-width: 1199px) {
  body.in-index #carousel {
    width: calc(100% - 40px) !important;
    max-width: 940px !important;
  }

  body.in-index #carousel .carousel-inner,
  body.in-index #carousel .carousel-inner .item,
  body.in-index #carousel .carousel-inner .item > a {
    height: 360px !important;
    min-height: 360px !important;
    overflow: hidden !important;
  }

  body.in-index #carousel .carousel-inner .item img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }

}

/* Shoptet na některých tabletech skrývá pomocné menu, i když hlavní
   navigace už je zkrácená. „Více“ proto držíme jako součást stejné řádky. */
@media (min-width: 768px) and (max-width: 1199px) {
  #header .menu-helper {
    visibility: visible !important;
    z-index: 1 !important;
  }
  #header .header-bottom-wrapper {
    flex-wrap: nowrap !important;
  }
  #header #navigation {
    flex: 1 1 0 !important;
    max-width: calc(100% - 111px) !important;
  }
}

/* Tabletová navigace: tři přímé kategorie a funkční rozbalovací „Více“. */
#header .lovesilk-tablet-more,
#header .lovesilk-tablet-more-panel { display: none !important; }
@media (min-width: 768px) and (max-width: 1199px) {
  #header .menu-helper { display: none !important; }
  #header #navigation {
    flex: 1 1 auto !important;
    width: auto !important;
    max-width: none !important;
    overflow: visible !important;
  }
  #header #navigation .navigation-in { overflow: visible !important; }
  #header #navigation .navigation-in > .menu-level-1 {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    width: 100% !important;
  }
  #header #navigation .navigation-in > .menu-level-1 > li { display: none !important; }
  #header #navigation .navigation-in > .menu-level-1 > li:nth-child(-n+3) {
    display: block !important;
    flex: 0 1 auto !important;
    visibility: visible !important;
  }
  #header #navigation .navigation-in > .menu-level-1 > li > a {
    padding: 0 !important;
    white-space: nowrap !important;
    visibility: visible !important;
  }
  #header .lovesilk-tablet-more {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    flex: 0 0 auto;
    padding: 10px 0;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    cursor: pointer;
  }
  #header .lovesilk-tablet-more::after { content: "⌄"; font-size: 18px; }
  #header .lovesilk-tablet-more-panel {
    display: block !important;
    position: absolute;
    z-index: 1001;
    top: 100%;
    right: 16px;
    width: min(320px, calc(100vw - 32px));
    margin-top: 8px;
    padding: 12px;
    background: #fff;
    border: 1px solid #e4e4e4;
    box-shadow: 0 12px 28px rgba(0,0,0,.13);
  }
  #header .lovesilk-tablet-more-panel[hidden] { display: none !important; }
  #header .lovesilk-tablet-more-panel a {
    display: block;
    padding: 10px 8px;
    color: inherit;
    text-decoration: none;
  }
}
@media (min-width: 768px) and (max-width: 900px) {
  #header #navigation .navigation-in > .menu-level-1 > li > a,
  #header .lovesilk-tablet-more { font-size: 14px; }
}

@media (min-width: 768px) and (max-width: 1199px) {
  #header .header-bottom-wrapper {
    justify-content: center !important;
    gap: 22px !important;
  }
  #header #navigation { flex: 0 1 auto !important; }
  #header #navigation .navigation-in > .menu-level-1 {
    justify-content: flex-start !important;
    gap: 22px !important;
    width: auto !important;
  }
}

/* Finální tabletová navigace: vlastní, stabilní řádek bez závislosti
   na automatickém přepočtu položek v šabloně Shoptetu. */
#header .lovesilk-tablet-primary-nav { display: none !important; }
@media (min-width: 768px) and (max-width: 1199px) {
  #header #navigation,
  #header .menu-helper { display: none !important; }
  #header .header-bottom-wrapper {
    display: flex !important;
    justify-content: center !important;
    gap: 0 !important;
  }
  #header .lovesilk-tablet-primary-nav {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: clamp(16px, 2.4vw, 32px);
    width: 100%;
    min-height: 45px;
    white-space: nowrap;
  }
  #header .lovesilk-tablet-primary-nav > a {
    color: inherit;
    font-size: 15px;
    text-decoration: none;
  }
  #header .lovesilk-tablet-primary-nav > .lovesilk-tablet-more {
    display: inline-flex !important;
    margin: 0 !important;
  }
}
@media (min-width: 768px) and (max-width: 900px) {
  #header .lovesilk-tablet-primary-nav { gap: 18px; }
  #header .lovesilk-tablet-primary-nav > a,
  #header .lovesilk-tablet-primary-nav > .lovesilk-tablet-more { font-size: 14px; }
}

/* Druhý hero slide má delší citaci; v tabletovém portrétu ji zmenšíme,
   aby zůstaly vidět i autor a výzva k akci. */
@media (min-width: 768px) and (max-width: 900px) {
  body.in-index #carousel .item:nth-child(2) .extended-banner-texts {
    width: 45% !important;
  }
  body.in-index #carousel .item:nth-child(2) .extended-banner-title {
    font-size: 30px !important;
    line-height: 1.08 !important;
  }
  body.in-index #carousel .item:nth-child(2) .extended-banner-text,
  body.in-index #carousel .item:nth-child(2) .extended-banner-link {
    font-size: 12px !important;
  }
}
/* Migrace úprav ze Shoptet HTML kódu – září 2026. */
.lovesilk-carousel-pause {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@media (min-width: 768px) and (max-width: 900px) {
  body.in-index #carousel .item:nth-child(2) .extended-banner-texts { width: 45% !important; }
  body.in-index #carousel .item:nth-child(2) .extended-banner-title { font-size: 30px !important; line-height: 1.08 !important; }
  body.in-index #carousel .item:nth-child(2) .extended-banner-text,
  body.in-index #carousel .item:nth-child(2) .extended-banner-link { font-size: 12px !important; }
}

/* Stabilní tabletové menu s funkčním rozbalením dalších kategorií. */
#header .lovesilk-tablet-nav,
#header .lovesilk-tablet-more-panel { display: none !important; }

/* Klikací plochy: šipky produktových řad mají dostatečnou velikost i na mobilu. */
.products-wrapper .product-slider-navigation {
  min-width: 44px !important;
  min-height: 44px !important;
}

@media (min-width: 768px) and (max-width: 1199px) {
  #header #navigation,
  #header .menu-helper { display: none !important; }
  #header .header-bottom-wrapper { display: flex !important; justify-content: center !important; }
  #header .lovesilk-tablet-nav {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: clamp(18px, 2.6vw, 34px);
    width: 100%;
    min-height: 48px;
    white-space: nowrap;
  }
  #header .lovesilk-tablet-nav a,
  #header .lovesilk-tablet-more { color: inherit; font-size: 15px; text-decoration: none; }
  #header .lovesilk-tablet-nav a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
  }
  #header .lovesilk-tablet-more {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 44px;
    padding: 8px 0;
    border: 0;
    background: transparent;
    font: inherit;
    cursor: pointer;
  }
  #header .lovesilk-tablet-more::after { content: "⌄"; font-size: 18px; }
  #header .lovesilk-tablet-more-panel {
    display: block !important;
    position: absolute;
    z-index: 1001;
    top: 100%;
    right: 16px;
    width: min(320px, calc(100vw - 32px));
    margin-top: 8px;
    padding: 12px;
    background: #fff;
    border: 1px solid #e4e4e4;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.13);
  }
  #header .lovesilk-tablet-more-panel[hidden] { display: none !important; }
  #header .lovesilk-tablet-more-panel a {
    display: flex;
    align-items: center;
    min-height: 44px;
    padding: 10px 8px;
    color: inherit;
    text-decoration: none;
  }
  body.in-index .lovesilk-silk-education { margin-top: 24px !important; margin-bottom: 52px !important; }
}

@media (min-width: 768px) and (max-width: 900px) {
  #header .lovesilk-tablet-nav { gap: 18px; }
  #header .lovesilk-tablet-nav a,
  #header .lovesilk-tablet-more { font-size: 14px; }
}

/* Dvě doplňující výhody se zobrazují jen v portrétu tabletu. */
.lovesilk-portrait-benefit { display: none !important; }

@media (min-width: 768px) and (max-width: 899px) {
  body.in-index .lovesilk-silk-education { margin-top: 32px !important; }
  .lovesilk-silk-education__points {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
    margin-bottom: 26px !important;
  }
  .lovesilk-silk-education__points li { min-height: 66px !important; padding: 14px 12px !important; }
  .lovesilk-silk-education__points li.lovesilk-portrait-benefit { display: list-item !important; }
}

@media (max-width: 1199px) {
  .custom-footer__newsletter .newsletter-header { padding-top: 24px !important; }
}

@media (max-width: 767px) {
  body.in-index .lovesilk-silk-education { margin-top: 24px !important; }
  .homepage-products-8 .product:has([data-micro-product-id="527"]) .availability {
    margin-top: 16px !important;
    min-height: 3.2em !important;
  }
}

/* Desktop: leave a clearer separation before the newsletter block. */
@media (min-width: 1200px) {
  body.in-index .lovesilk-silk-education { margin-bottom: 58px !important; }

  /* Give the newsletter heading enough breathing room inside the footer band. */
  #footer .custom-footer__newsletter .newsletter-header {
    padding-top: 26px !important;
  }

  /* Keep the footer band visibly distinct from the white page background. */
  body.in-index #footer {
    background-color: #f5f4f2 !important;
  }
}

/* Vouchery mají dvouřádkovou informaci o doručení: na menších obrazovkách
   posuneme cenu mírně výš, aby se oba texty nepřekrývaly. */
@media (max-width: 1199px) {
  .homepage-products-8 .product:has([data-micro-product-id="527"]) .price {
    transform: translateY(-16px) !important;
  }
}

/* Mobilní kategorie: stručné ovládání otevřeného filtru zůstává stále po ruce.
   Volby Shoptetu se používají okamžitě, tlačítko tedy jen zavře panel a vrátí
   návštěvníka k již přepočítaným produktům. */
@media (max-width: 767px) {
  .filters-wrapper .lovesilk-mobile-filter-actions {
    position: sticky;
    z-index: 5;
    top: 8px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr);
    gap: 8px;
    margin: 10px 0 16px;
    padding: 8px;
    border: 1px solid #e6e4e1;
    background: rgba(255, 255, 255, 0.97);
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
  }

  .filters-wrapper .lovesilk-mobile-filter-actions[hidden] {
    display: none !important;
  }

  .filters-wrapper .lovesilk-mobile-filter-clear,
  .filters-wrapper .lovesilk-mobile-filter-show {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 8px 10px;
    border: 1px solid #a5e0cf;
    border-radius: 0;
    box-sizing: border-box;
    font: inherit;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    text-align: center;
    text-decoration: none;
  }

  .filters-wrapper .lovesilk-mobile-filter-clear {
    background: #fff;
    color: #4f5759;
  }

  .filters-wrapper .lovesilk-mobile-filter-show {
    background: #a5e0cf;
    color: #fff;
    cursor: pointer;
  }

  .filters-wrapper .lovesilk-mobile-filter-clear:focus-visible,
  .filters-wrapper .lovesilk-mobile-filter-show:focus-visible {
    outline: 3px solid #4f5759;
    outline-offset: 2px;
  }
}

/* Desktopový nákup: kompaktní celek zarovnaný vlevo pod informacemi
   o produktu. Cena, množství, CTA i benefity tak tvoří jeden přehledný blok. */
@media (min-width: 1024px) {
  body.type-detail #product-detail-form .p-to-cart-block,
  body.type-detail #product-detail-form .lovesilk-purchase-trust {
    width: 100% !important;
    max-width: 520px !important;
    margin-left: 0 !important;
  }

  body.type-detail #product-detail-form .p-to-cart-block {
    margin-right: auto !important;
  }

  body.type-detail #product-detail-form .p-to-cart-block .price-final {
    font-size: 32px !important;
  }

  body.type-detail #product-detail-form .lovesilk-purchase-trust {
    margin-right: auto !important;
  }

  /* Množství patří hned vedle ceny; nesmí zůstávat osamocené
     na opačném konci nákupního řádku. */
  body.type-detail #product-detail-form .p-to-cart-block {
    grid-template-columns: max-content 112px !important;
  }

  /* U produktů s volbou varianty se informace o dostupnosti rozloží
     pod svůj popisek, aby se nemačkala v jedné řádce. */
  body.type-detail #product-detail-form .lovesilk-purchase-trust__availability {
    display: block !important;
    min-height: 44px !important;
    padding-top: 2px !important;
    padding-bottom: 2px !important;
  }

  body.type-detail #product-detail-form .lovesilk-purchase-trust__availability strong,
  body.type-detail #product-detail-form .lovesilk-purchase-trust__availability span {
    display: block !important;
  }

  body.type-detail #product-detail-form .lovesilk-purchase-trust__availability span {
    margin-top: 2px !important;
  }
}

/* Nákupní prvek a benefity mají na desktopu totožný levý i pravý okraj.
   CTA proto končí přesně pod pravým okrajem „Jak pečovat o hedvábí“. */
@media (min-width: 1024px) {
  body.type-detail #product-detail-form .p-to-cart-block,
  body.type-detail #product-detail-form .lovesilk-purchase-trust {
    width: min(100%, 430px) !important;
    max-width: 430px !important;
  }

  body.type-detail #product-detail-form .p-to-cart-block .add-to-cart-button {
    width: 100% !important;
  }

  /* Třetí pružný sloupec pouze doplní řádek CTA do stejné šířky jako
     benefity; množství zůstává bezprostředně vedle ceny. */
  body.type-detail #product-detail-form .p-to-cart-block {
    grid-template-columns: max-content 112px minmax(0, 1fr) !important;
  }

  /* Větší první sloupec a stav varianty na druhém řádku zabrání
     nečitelné stlačené informaci o dostupnosti. */
  body.type-detail #product-detail-form .lovesilk-purchase-trust {
    grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr) !important;
    column-gap: 22px !important;
  }

  body.type-detail #product-detail-form .lovesilk-purchase-trust__availability {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-content: center !important;
    line-height: 1.25 !important;
  }

  /* Shoptet u některých variant vkládá popisek dostupnosti různou značkou.
     Cílíme proto na první položku benefitů přímo a vždy ji skládáme svisle. */
  body.type-detail #product-detail-form .lovesilk-purchase-trust > :first-child {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 3px !important;
  }

  body.type-detail #product-detail-form .lovesilk-purchase-trust > :first-child > * {
    display: block !important;
    margin: 0 !important;
  }
}


/* LOVESILK: sjednocení hlavních tlačítek v produktových kartách */
body .products .p .btn.btn-primary {
  background-color: #a4dfcf !important;
  border-color: #a4dfcf !important;
  color: #193c35 !important;
  font-family: Livvic, sans-serif !important;
  font-size: 17px !important;
  font-weight: 900 !important;
}

body .products .p .btn.btn-primary:hover,
body .products .p .btn.btn-primary:focus {
  background-color: #91cfbc !important;
  border-color: #91cfbc !important;
  color: #193c35 !important;
}

body .products .p .btn.btn-primary:focus-visible {
  outline: 2px solid #193c35 !important;
  outline-offset: 3px;
}


/* LOVESILK: doplňkové styly šipek a nákupních stavů */
/* Shoptet kreslí šipku jako bílé SVG pozadí pseudoprvku, ne jako text. */
body .products-wrapper .product-slider-navigation::after {
  background-image: url("data:image/svg+xml,%3Csvg width='11' height='21' viewBox='0 0 11 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1.5 19.25L9 10.75L1.5 1.75' stroke='%23193c35' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
}

/* Dokončení nákupu: stejný kontrast a písmo v každém kroku objednávky. */
body.in-kosik #continue-order-button,
body#checkout #orderFormButton,
body#checkout #submit-order,
body .cart-wrapper #continue-order-button,
body .checkoutContent #orderFormButton,
body .checkoutSidebar #submit-order {
  background-color: var(--lovesilk-mint) !important;
  border-color: var(--lovesilk-mint) !important;
  color: var(--lovesilk-ink) !important;
  font-family: Livvic, sans-serif !important;
  font-weight: 900 !important;
}

body.in-kosik #continue-order-button *,
body#checkout #orderFormButton *,
body#checkout #submit-order *,
body .cart-wrapper #continue-order-button *,
body .checkoutContent #orderFormButton *,
body .checkoutSidebar #submit-order * {
  color: inherit !important;
}

body.in-kosik #continue-order-button:hover,
body.in-kosik #continue-order-button:focus,
body#checkout #orderFormButton:hover,
body#checkout #orderFormButton:focus,
body#checkout #submit-order:hover,
body#checkout #submit-order:focus,
body .cart-wrapper #continue-order-button:hover,
body .cart-wrapper #continue-order-button:focus,
body .checkoutContent #orderFormButton:hover,
body .checkoutContent #orderFormButton:focus,
body .checkoutSidebar #submit-order:hover,
body .checkoutSidebar #submit-order:focus {
  background-color: var(--lovesilk-mint-hover) !important;
  border-color: var(--lovesilk-mint-hover) !important;
  color: var(--lovesilk-ink) !important;
}

/* Shoptet checkout: tyto identifikátory jsou použity ve všech třech krocích. */
body #continue-order-button,
body #orderFormButton,
body #submit-order,
body #continue-order-button::before,
body #continue-order-button::after,
body #orderFormButton::before,
body #orderFormButton::after,
body #submit-order::before,
body #submit-order::after,
body #continue-order-button *,
body #orderFormButton *,
body #submit-order * {
  color: #193c35 !important;
  -webkit-text-fill-color: #193c35 !important;
  text-shadow: none !important;
}

/* Všechny standardní mátové akce Shoptetu: formuláře, přihlášení a prázdný košík. */
body .btn.btn-primary,
body input.btn.btn-primary,
body .js-try-search-button {
  background-color: var(--lovesilk-mint) !important;
  border-color: var(--lovesilk-mint) !important;
  color: var(--lovesilk-ink) !important;
  -webkit-text-fill-color: var(--lovesilk-ink) !important;
  font-family: Livvic, sans-serif !important;
  font-weight: 900 !important;
  text-shadow: none !important;
}

body .btn.btn-primary *,
body .js-try-search-button * {
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
}

body .btn.btn-primary:hover,
body .btn.btn-primary:focus,
body .js-try-search-button:hover,
body .js-try-search-button:focus {
  background-color: var(--lovesilk-mint-hover) !important;
  border-color: var(--lovesilk-mint-hover) !important;
  color: var(--lovesilk-ink) !important;
}
