/* SwiftCart Shop by Category v1.2 */
.sc-category-section{
  --sc-card-width:302px;
  --sc-card-height:478px;
  --sc-card-gap:5px;
  --sc-ratio-w:2;
  --sc-ratio-h:3;
  --sc-mobile-section-heading-size:22px;
  --sc-mobile-section-heading-line:1.15em;
  --sc-mobile-card-heading-size:22px;
  --sc-mobile-card-heading-line:1.02em;
  --sc-mobile-card-pt:10px;
  --sc-mobile-card-pr:10px;
  --sc-mobile-card-pb:10px;
  --sc-mobile-card-pl:10px;
  --sc-card-radius:15px;
  position:relative;
  width:100%;
  max-width:100%;
  overflow:hidden;
  background:#fff;
  color:#0f1111;
  box-sizing:border-box;
  font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;
}
.sc-category-section *{box-sizing:border-box}
/* Kept for backwards compatibility, but v1.1 no longer forces viewport width. */
.sc-category-stretch{width:100%;max-width:100%;margin-left:0;margin-right:0}
.sc-category-inner{width:100%;max-width:1600px;margin:0 auto;padding:18px 12px}
.sc-category-header{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0 0 12px}
.sc-category-title{margin:0!important;padding:0!important;font-size:28px;line-height:1.15;font-weight:700;color:#0f1111}
.sc-category-viewall{flex:0 0 auto;color:#007185;text-decoration:none;font-size:14px;line-height:1.2;font-weight:500}
.sc-category-viewall:hover{text-decoration:underline;color:#c7511f}
.sc-category-carousel-wrap{position:relative;width:100%}
.sc-category-track{
  display:flex;
  align-items:stretch;
  gap:var(--sc-card-gap);
  width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-behavior:smooth;
  scroll-snap-type:x mandatory;
  scroll-snap-stop:always;
  overscroll-behavior-x:contain;
  scrollbar-width:none;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-y;
  cursor:grab;
  padding:0;
}
.sc-category-track.sc-is-dragging{cursor:grabbing;scroll-behavior:auto;scroll-snap-type:none;user-select:none;-webkit-user-select:none}
.sc-category-track::-webkit-scrollbar{display:none}
.sc-category-card{
  position:relative;
  display:block;
  flex:0 0 var(--sc-card-width);
  width:var(--sc-card-width);
  aspect-ratio:var(--sc-ratio-w) / var(--sc-ratio-h);
  overflow:hidden;
  scroll-snap-align:start;
  background:#eef0f0;
  border-radius:var(--sc-card-radius);
  color:#0f1111;
  text-decoration:none!important;
  isolation:isolate;
  -webkit-user-drag:none;
}
.sc-category-card img,.sc-category-placeholder{position:absolute;inset:0;width:100%;height:100%;display:block;border-radius:inherit}
.sc-category-card img{object-fit:cover;object-position:center;pointer-events:none;-webkit-user-drag:none;user-select:none}
.sc-category-placeholder{background:linear-gradient(145deg,#eef1f1,#d8dddd)}
.sc-category-card::after{
  border-radius:inherit;
  --sc-overlay:rgba(255,255,255,.78);
  content:"";
  position:absolute;
  z-index:1;
  inset:0 0 auto 0;
  height:38%;
  pointer-events:none;
  background:linear-gradient(180deg,var(--sc-overlay) 0%,rgba(255,255,255,.42) 58%,rgba(255,255,255,0) 100%);
}
.sc-category-card-title{position:relative;z-index:2;display:block;width:100%;padding:10px;color:#0f1111;font-size:22px;line-height:1.02;font-weight:800;letter-spacing:-.02em;text-decoration:none;word-break:normal}
.sc-category-card:focus-visible{outline:3px solid #2DB81F;outline-offset:-3px}
.sc-category-card:hover img{transform:scale(1.015)}
.sc-category-card img{transition:transform .18s ease}
.sc-category-arrow{
  position:absolute;
  z-index:5;
  top:50%;
  transform:translateY(-50%);
  display:flex;
  align-items:center;
  justify-content:center;
  width:50px;
  height:100px;
  margin:0;
  padding:0;
  border:1px solid #d5d9d9;
  border-radius:7px;
  background:#fff;
  color:#0f1111;
  box-shadow:0 1px 3px rgba(0,0,0,.15);
  cursor:pointer;
  font-size:28px;
  line-height:1;
  opacity:.98;
}
.sc-category-prev{left:0}
.sc-category-next{right:0}
.sc-category-arrow[disabled]{opacity:0;pointer-events:none}
.sc-no-arrows .sc-category-arrow{display:none!important}

/* v1.3 radius fix */
.sc-category-card,
.sc-category-card img,
.sc-category-placeholder,
.sc-category-card::after{border-radius:var(--sc-card-radius)!important;}
.sc-category-card{overflow:hidden!important;-webkit-mask-image:-webkit-radial-gradient(white, black);}

@media (max-width:767px){
  .sc-category-inner{max-width:100%;padding:10px 6px 12px}
  .sc-category-header{align-items:center;margin-bottom:8px;padding:0 3px}
  .sc-category-title{font-size:var(--sc-mobile-section-heading-size);line-height:var(--sc-mobile-section-heading-line)}
  .sc-category-viewall{font-size:12px}
  .sc-category-track{padding-right:12vw;scroll-padding-left:0;touch-action:pan-y}
  .sc-category-card{flex-basis:var(--sc-card-width);width:var(--sc-card-width)}
  .sc-category-card-title{font-size:var(--sc-mobile-card-heading-size);line-height:var(--sc-mobile-card-heading-line);padding:var(--sc-mobile-card-pt) var(--sc-mobile-card-pr) var(--sc-mobile-card-pb) var(--sc-mobile-card-pl)}
  .sc-category-arrow{display:none!important}
}

@media (prefers-reduced-motion:reduce){
  .sc-category-track{scroll-behavior:auto}
  .sc-category-card img{transition:none}
}


/* v1.4 hard bottom-radius fix */
.sc-category-card{
  border-radius:var(--sc-card-radius)!important;
  overflow:hidden!important;
  clip-path:inset(0 round var(--sc-card-radius))!important;
  -webkit-clip-path:inset(0 round var(--sc-card-radius))!important;
  contain:paint;
  transform:translateZ(0);
}
.sc-category-card > img,
.sc-category-card > .sc-category-placeholder{
  border-radius:0!important;
  clip-path:none!important;
  -webkit-clip-path:none!important;
}
.sc-category-card::after{
  border-radius:0!important;
}


/* v1.5 adjustable exact card dimensions */
.sc-category-section.sc-fixed-card-height .sc-category-card{
  height:var(--sc-card-height)!important;
  min-height:var(--sc-card-height)!important;
  max-height:var(--sc-card-height)!important;
  aspect-ratio:auto!important;
}
