/* KARMA UI V4.1.5 — home bestsellers and collection cards */

/*
 * Home / Бестселери
 * A completely frameless product row: the case is the visual focus, while
 * category, title and price keep one calm typographic rhythm.
 */
.is-home .section:has(> .shell > .product-scroller){
  overflow:hidden;
}
.is-home .section:has(> .shell > .product-scroller) .section-heading{
  margin-bottom:2px;
}
.is-home .section:has(> .shell > .product-scroller) .section-heading > span{
  opacity:0;
  pointer-events:none;
}
.is-home .section:has(> .shell > .product-scroller) .section-heading h2{
  margin:0;
  font-size:clamp(36px,3.6vw,58px);
  line-height:1;
  letter-spacing:-.035em;
  font-weight:700;
}

.is-home .product-scroller{
  display:flex!important;
  align-items:stretch!important;
  gap:32px!important;
  margin:0!important;
  padding:0!important;
  overflow-x:auto!important;
  overflow-y:visible!important;
  scroll-snap-type:x proximity;
  scroll-padding-inline:0;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
}
.is-home .product-scroller::-webkit-scrollbar{display:none}

.is-home .product-scroller > .product-card{
  box-sizing:border-box!important;
  flex:0 0 calc((100% - 160px)/6)!important;
  width:auto!important;
  min-width:0!important;
  max-width:none!important;
  min-height:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  outline:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
  scroll-snap-align:start;
  display:flex!important;
  flex-direction:column!important;
}
.is-home .product-scroller > .product-card::before,
.is-home .product-scroller > .product-card::after{
  display:none!important;
  content:none!important;
}

.is-home .product-scroller .product-card__media{
  position:relative!important;
  box-sizing:border-box!important;
  width:100%!important;
  min-height:0!important;
  margin:0 0 8px!important;
  padding:0!important;
  aspect-ratio:4/5!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.is-home .product-scroller .product-card__media > a{
  width:100%!important;
  height:100%!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  overflow:visible!important;
}
.is-home .product-scroller .product-card__media img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center bottom!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  transform:translateZ(0) scale(1)!important;
  transform-origin:50% 72%;
  transition:transform .32s cubic-bezier(.2,.65,.3,1), filter .32s ease;
  will-change:transform;
}

.is-home .product-scroller .product-card__body{
  box-sizing:border-box!important;
  flex:1 1 auto!important;
  width:100%!important;
  min-height:118px!important;
  margin:0!important;
  padding:0 2px 0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  display:grid!important;
  grid-template-rows:auto minmax(44px,auto) auto!important;
  align-content:start!important;
  justify-items:center!important;
  text-align:center!important;
  gap:5px!important;
}
.is-home .product-scroller .product-card__category{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
  color:#77736d!important;
  font-size:11px!important;
  line-height:1.35!important;
  font-weight:500!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
}
.is-home .product-scroller .product-card h3{
  min-height:44px!important;
  margin:0!important;
  padding:0!important;
  color:#111!important;
  font-size:16px!important;
  line-height:1.36!important;
  font-weight:500!important;
  letter-spacing:-.012em!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
  text-align:center!important;
}
.is-home .product-scroller .product-card h3 a{
  color:inherit!important;
  text-decoration:none!important;
}
.is-home .product-scroller .product-card__price{
  width:100%!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  text-align:center!important;
}
.is-home .product-scroller .product-card__price strong{
  display:inline-block!important;
  color:#111!important;
  font-size:17px!important;
  line-height:1.2!important;
  font-weight:700!important;
  letter-spacing:-.02em!important;
  white-space:nowrap;
}
.is-home .product-scroller a:focus-visible{
  outline:2px solid #111!important;
  outline-offset:5px!important;
}

@media(hover:hover) and (pointer:fine){
  .is-home .product-scroller .product-card:hover .product-card__media img,
  .is-home .product-scroller .product-card:focus-within .product-card__media img{
    transform:translateY(-5px) scale(1.055)!important;
    filter:drop-shadow(0 16px 15px rgba(0,0,0,.08));
  }
}

/*
 * Home / Колекції дизайнів
 * The existing title splitter creates two spans. These rules make both lines
 * explicit and give every card the same title height and baseline.
 */
.is-home .collection-scroller{
  align-items:stretch!important;
}
.is-home .collection-card{
  position:relative!important;
  display:block!important;
  padding-bottom:0!important;
}
.is-home .collection-card > strong{
  position:absolute!important;
  left:18px!important;
  right:18px!important;
  bottom:58px!important;
  z-index:3!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-end!important;
  align-items:flex-start!important;
  gap:0!important;
  min-height:2.12em!important;
  max-width:11ch!important;
  margin:0!important;
  padding:0!important;
  color:#fff!important;
  font-size:clamp(18px,1.35vw,21px)!important;
  line-height:1.05!important;
  font-weight:700!important;
  letter-spacing:-.02em!important;
  text-wrap:balance;
}
.is-home .collection-card > strong > span{
  display:block!important;
  width:100%!important;
  min-height:1.04em!important;
  white-space:nowrap!important;
}
.is-home .collection-card > strong > span:empty::after{
  content:'\00a0';
}
.is-home .collection-card > span{
  position:absolute!important;
  left:18px!important;
  bottom:18px!important;
  z-index:3!important;
  margin:0!important;
}

@media(max-width:1180px) and (min-width:841px){
  .is-home .product-scroller{gap:28px!important}
  .is-home .product-scroller > .product-card{
    flex-basis:calc((100% - 84px)/4)!important;
  }
}

@media(max-width:840px){
  .is-home .section:has(> .shell > .product-scroller) .section-heading{
    margin-bottom:10px;
  }
  .is-home .section:has(> .shell > .product-scroller) .section-heading h2{
    font-size:34px;
    line-height:1.04;
  }
  .is-home .product-scroller{
    gap:18px!important;
    padding:0!important;
  }
  .is-home .product-scroller > .product-card{
    flex-basis:min(58vw,224px)!important;
  }
  .is-home .product-scroller .product-card__media{
    margin-bottom:10px!important;
  }
  .is-home .product-scroller .product-card__body{
    min-height:114px!important;
    grid-template-rows:auto minmax(42px,auto) auto!important;
    gap:4px!important;
    padding-inline:0!important;
  }
  .is-home .product-scroller .product-card__category{
    font-size:10px!important;
    letter-spacing:.12em!important;
  }
  .is-home .product-scroller .product-card h3{
    min-height:42px!important;
    font-size:15px!important;
    line-height:1.38!important;
  }
  .is-home .product-scroller .product-card__price strong{
    font-size:17px!important;
  }
  .is-home .collection-card > strong{
    left:14px!important;
    right:14px!important;
    bottom:54px!important;
    min-height:2.06em!important;
    max-width:10ch!important;
    font-size:18px!important;
    line-height:1.04!important;
  }
  .is-home .collection-card > span{
    left:14px!important;
    bottom:16px!important;
  }
}

@media(max-width:420px){
  .is-home .product-scroller > .product-card{
    flex-basis:min(66vw,218px)!important;
  }
}

/* Product page: recently viewed stays light and visually aligned. */
.product-slider-section--recent{
  margin-top:52px;
  padding-top:38px;
  border-top:1px solid #e3dfd7;
}
.product-slider-section--recent[hidden]{display:none!important}

/* Checkout: classic two-button row on every step, no fixed duplicate bar. */
.kcv1-mobile-bar{display:none!important}
.kcv1-step__actions,
.kcv1-step__actions--end{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:16px;
  align-items:stretch;
  justify-content:stretch;
}
.kcv1-step__actions .kcv1-button{
  width:100%;
  min-width:0;
  min-height:56px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
}

/* Product mobile buy bar: footer lift is now calculated by its bottom edge. */
.mobile-buy-bar{
  will-change:transform;
}

@media(max-width:840px){
  .is-home .product-scroller{
    gap:18px;
    padding-inline:0;
  }
  .is-home .product-scroller .product-card{
    flex-basis:min(58vw,230px);
  }
  .is-home .product-scroller .product-card__media{
    padding-bottom:12px;
  }
  .is-home .product-scroller .product-card__body{
    padding-inline:0;
  }
  .is-home .product-scroller .product-card h3{font-size:15px}

  .kcv1-step__actions,
  .kcv1-step__actions--end{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:12px!important;
  }
  .kcv1-step__actions .kcv1-button,
  .kcv1-step__actions .kcv1-inline-next{
    display:flex!important;
    min-height:58px;
    padding:12px 10px;
    font-size:15px;
    line-height:1.15;
  }
}

@media(max-width:380px){
  .kcv1-step__actions,
  .kcv1-step__actions--end{gap:8px!important}
  .kcv1-step__actions .kcv1-button{font-size:14px;padding-inline:7px}
}

/* V4.1.4 markers: centered bestseller text, tighter price spacing, smaller lowered collection titles */


/* V4.1.4: collection titles lower and larger, bestseller rhythm tightened */
.is-home .section:has(> .shell > .product-scroller) .product-scroller + .section-actions,
.is-home .section:has(> .shell > .product-scroller) .product-scroller + .section-footer,
.is-home .section:has(> .shell > .product-scroller) .product-scroller + .section-cta,
.is-home .section:has(> .shell > .product-scroller) .product-scroller + .button,
.is-home .section:has(> .shell > .product-scroller) .product-scroller + a,
.is-home .section:has(> .shell > .product-scroller) .product-scroller + div{
  margin-top:8px!important;
}


/* V4.1.4 markers: force two-line collection titles and centered bestseller price */
.is-home .product-scroller .product-card__category,
.is-home .product-scroller .product-card h3,
.is-home .product-scroller .product-card h3 a,
.is-home .product-scroller .product-card__price,
.is-home .product-scroller .product-card__price strong{
  width:100%!important;
  text-align:center!important;
  justify-content:center!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
.is-home .product-scroller .product-card__price strong{
  display:block!important;
}
.is-home .collection-card > strong{
  left:18px!important;
  right:18px!important;
  bottom:58px!important;
  min-height:auto!important;
  max-width:9ch!important;
  font-size:clamp(18px,1.4vw,21px)!important;
  line-height:1.02!important;
}
.is-home .collection-card > strong > span{
  white-space:normal!important;
}
@media(max-width:840px){
  .is-home .section:has(> .shell > .product-scroller) .section-heading{
    margin-bottom:2px!important;
  }
  .is-home .section:has(> .shell > .product-scroller) .product-scroller + .section-actions,
  .is-home .section:has(> .shell > .product-scroller) .product-scroller + .section-footer,
  .is-home .section:has(> .shell > .product-scroller) .product-scroller + .section-cta,
  .is-home .section:has(> .shell > .product-scroller) .product-scroller + .button,
  .is-home .section:has(> .shell > .product-scroller) .product-scroller + a,
  .is-home .section:has(> .shell > .product-scroller) .product-scroller + div{
    margin-top:8px!important;
  }
  .is-home .collection-card > strong{
    left:14px!important;
    right:14px!important;
    bottom:50px!important;
    max-width:8.5ch!important;
    font-size:17px!important;
    line-height:1.02!important;
  }
}


/* V4.1.5 — bestseller vertical rhythm */
@media(min-width:841px){
  .is-home .section:has(> .shell > .product-scroller) .product-scroller{
    margin-top:-46px!important;
  }
}
@media(max-width:840px){
  .is-home .section:has(> .shell > .product-scroller) .product-scroller{
    margin-top:-18px!important;
  }
}
