/* Reuse real product-card geometry, without product claims or interactions. */
.home-page .product-skeleton{
  display:flex!important;
  flex-direction:column;
  pointer-events:none;
  user-select:none;
}
.home-page .product-skeleton:hover{transform:none;box-shadow:0 5px 22px rgba(45,26,32,.055)}
.home-page .skeleton-block,.home-page .skeleton-line{
  background:#e9ebee!important;
  border:0;
  animation:home-skeleton-pulse 1.8s ease-in-out infinite alternate;
}
.home-page .skeleton-line{
  flex:none;
  width:100%;
  height:14px;
  margin-top:12px;
  border-radius:5px;
}
.home-page .skeleton-price{width:58%;height:27px;margin-top:18px;margin-bottom:8px}
.home-page .skeleton-short{width:74%}
.home-page .skeleton-caption{width:42%;height:12px}
.home-page .skeleton-actions{display:grid;gap:8px;margin-top:auto;padding-top:16px}
.home-page .skeleton-actions .skeleton-block{height:44px;border-radius:10px}
.home-loading-status{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip-path:inset(50%);
  white-space:nowrap;
  border:0;
}
.home-page .horizontal-showcase #products .home-load-error,
.home-page .horizontal-showcase .summer-hit-grid .home-load-error,
.home-page .deal-of-day .home-load-error{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:16px;
}
.home-page [data-homepage-retry]{
  min-height:44px;
  padding:10px 24px;
  border:1px solid var(--red,#cf0a2c);
  border-radius:10px;
  background:#fff;
  color:var(--red,#cf0a2c);
  font:700 14px Manrope,Arial,sans-serif;
  cursor:pointer;
}
.home-page [data-homepage-retry]:hover{background:#fff0f3}
.home-page [data-homepage-retry]:focus-visible{outline:3px solid var(--red,#cf0a2c);outline-offset:3px}
/* Splide normally hides unmounted carousels; loading and errors must be visible. */
.home-page #promoCarousel:not(.is-initialized){visibility:visible;background:#e9ebee}
.home-page #promoCarousel:not(.is-initialized) .splide__track{visibility:hidden}
.home-page #promoCarousel:not(.is-initialized) .splide__arrows,
.home-page #promoCarousel:not(.is-initialized) .my-slider-progress{display:none}
.home-page #dealCarousel[data-home-state]{visibility:visible}
.home-page #dealCarousel:not(.is-initialized) .splide__slide{width:100%;flex:0 0 100%}
.home-page #dealCarousel:not(.is-initialized) .splide__slide:not(:first-child){display:none}
.home-page #dealCarousel[data-home-state="loading"] .splide__arrows,
.home-page #dealCarousel[data-home-state="error"] .splide__arrows,
.home-page #dealCarousel[data-home-state="loading"] .my-slider-progress,
.home-page #dealCarousel[data-home-state="error"] .my-slider-progress,
.home-page #dealCarousel[data-home-state="loading"] .deal-title:after,
.home-page #dealCarousel[data-home-state="error"] .deal-title:after{display:none}
.home-page .home-deal-skeleton{padding:0 0 20px}
.home-page .home-deal-empty,.home-page .deal-of-day .home-load-error{
  min-height:270px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  text-align:center;
  color:#766d71;
  font-size:14px;
}
@keyframes home-skeleton-pulse{from{opacity:1}to{opacity:.55}}
@media(max-width:530px){
  .home-page .product-skeleton .skeleton-line{height:10px;margin-top:8px}
  .home-page .product-skeleton .skeleton-price{height:22px;margin-top:10px;margin-bottom:6px}
  .home-page .product-skeleton .skeleton-actions{gap:6px;padding-top:12px}
  .home-page .product-skeleton .skeleton-actions .skeleton-block{height:36px}
}
@media(min-width:531px) and (max-width:899px){
  .home-page #dealCarousel .home-deal-message{display:block!important}
  .home-page #dealCarousel .home-deal-message>.home-load-error,
  .home-page #dealCarousel .home-deal-message>.home-deal-empty{
    height:144px;
    min-height:0;
    padding:12px;
  }
}
@media(prefers-reduced-motion:reduce){
  .home-page .skeleton-block,.home-page .skeleton-line{animation:none}
}
