.cc_ud0vift4_9yFS8SSff6 .psl {
  background: var(--kbdkEkTUuO);
  color: var(--xzwz2GSx9S);
}

/* ===== Header ===== */

.cc_ud0vift4_9yFS8SSff6 .psl-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 40px;
  margin-bottom: 24px;
  padding-inline: 4px;
}

.cc_ud0vift4_9yFS8SSff6 .psl-copy { min-width: 0; max-width: 680px; }

.cc_ud0vift4_9yFS8SSff6 .psl-eyebrow {
  margin: 0 0 20px;
  font-size: var(--t-product-slider-eyebrow-size, 12px);
  font-weight: var(--t-product-slider-eyebrow-weight, 500);

  color: var(--eIjF7PvDc3);
}

.cc_ud0vift4_9yFS8SSff6 .psl-heading {
  margin: 0;
  font-size: var(--t-product-slider-heading-size, 40px);
  font-weight: var(--t-product-slider-heading-weight, 600);
  line-height: 1.1;

}

.cc_ud0vift4_9yFS8SSff6 .psl-heading-mask { display: block; overflow: hidden; padding-bottom: 0.14em; margin-bottom: -0.14em; }
.cc_ud0vift4_9yFS8SSff6 .psl-heading-inner { display: block; }

.cc_ud0vift4_9yFS8SSff6 .psl-description {
  margin: 8px 0 0;
  max-width: 480px;
  font-size: var(--t-product-slider-description-size, 16px);
  font-weight: var(--t-product-slider-description-weight, 400);
  line-height: 1.6;
  color: var(--9JwAa4B9AN);
}

.cc_ud0vift4_9yFS8SSff6 .psl-tools { flex: none; display: flex; align-items: center; gap: 28px; }

.cc_ud0vift4_9yFS8SSff6 .psl-all {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 6px 0;
  color: var(--xzwz2GSx9S);
  font-size: 15px;
  font-weight: 500;
  text-decoration: none;
}

.cc_ud0vift4_9yFS8SSff6 .psl-all::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
  transform-origin: 100% 50%;
  transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}

.cc_ud0vift4_9yFS8SSff6 .psl-all:hover::after { transform: scaleX(0); transform-origin: 100% 50%; }

.cc_ud0vift4_9yFS8SSff6 .psl-all svg { transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1); }
.cc_ud0vift4_9yFS8SSff6 .psl-all:hover svg { transform: translateX(4px); }

.cc_ud0vift4_9yFS8SSff6 .psl-arrows { display: flex; gap: 10px; }

.cc_ud0vift4_9yFS8SSff6 .psl-arrow {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  padding: 0;
  border-radius: 50%;
  border: 1px solid var(--eaUZrJ571O);
  background: transparent;
  color: var(--xzwz2GSx9S);
  cursor: pointer;
  transition:
    background-color 0.3s ease,
    color 0.3s ease,
    border-color 0.3s ease,
    opacity 0.3s ease,
    transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}

.cc_ud0vift4_9yFS8SSff6 .psl-arrow:hover:not(:disabled) {
  background: var(--xzwz2GSx9S);
  border-color: var(--xzwz2GSx9S);
  color: var(--kbdkEkTUuO);
}

.cc_ud0vift4_9yFS8SSff6 .psl-arrow:active:not(:disabled) { transform: scale(0.92); }
.cc_ud0vift4_9yFS8SSff6 .psl-arrow:disabled { opacity: 0.3; cursor: default; }

.cc_ud0vift4_9yFS8SSff6 .psl-all:focus-visible, .cc_ud0vift4_9yFS8SSff6 .psl-arrow:focus-visible, .cc_ud0vift4_9yFS8SSff6 .psl-rail:focus-visible {
  outline: 2px solid var(--eIjF7PvDc3);
  outline-offset: 4px;
}

/* ===== Rail ===== */

.cc_ud0vift4_9yFS8SSff6 .psl-rail {
  --fl: 0px;
  --fr: 0px;
  overflow-x: auto;
  overflow-y: hidden;
  /* breathing room so card shadows / hover lifts are not clipped */
  padding: 12px 4px 20px;
  margin: -12px -4px -20px;
  scroll-snap-type: x mandatory;
  scroll-padding-inline: 4px;
  scrollbar-width: none;
  -ms-overflow-style: none;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
}

.cc_ud0vift4_9yFS8SSff6 .psl-rail::-webkit-scrollbar { display: none; }

/* soft edge fade, only towards a side that can still scroll */
.cc_ud0vift4_9yFS8SSff6 .psl.has-fade.can-prev .psl-rail { --fl: 56px; }
.cc_ud0vift4_9yFS8SSff6 .psl.has-fade.can-next .psl-rail { --fr: 56px; }

.cc_ud0vift4_9yFS8SSff6 .psl.has-fade .psl-rail {
  -webkit-mask-image: linear-gradient(to right, transparent 0, #000 var(--fl), #000 calc(100% - var(--fr)), transparent 100%);
  mask-image: linear-gradient(to right, transparent 0, #000 var(--fl), #000 calc(100% - var(--fr)), transparent 100%);
}

.cc_ud0vift4_9yFS8SSff6 .psl.is-dragging .psl-rail { scroll-snap-type: none; cursor: grabbing; user-select: none; }
.cc_ud0vift4_9yFS8SSff6 .psl.is-dragging .psl-cell { pointer-events: none; }

.cc_ud0vift4_9yFS8SSff6 .psl-track {
  --psl-n: var(--psl-n-d, 4);
  display: flex;
  gap: var(--psl-gap, 24px);
  margin: 0;
  padding: 0;
  list-style: none;
}

.cc_ud0vift4_9yFS8SSff6 .psl-cell {
  flex: 0 0 calc((100% - var(--psl-gap, 24px) * (var(--psl-n) - 1)) / var(--psl-n));
  min-width: 0;
  scroll-snap-align: start;
  -webkit-user-drag: none;
}

.cc_ud0vift4_9yFS8SSff6 .psl-cell img { -webkit-user-drag: none; user-select: none; }

/* equal-height cards: stretch the cell and let the card body fill it,
   so the specs and the add-to-cart row always sit on the same baseline */
.cc_ud0vift4_9yFS8SSff6 .psl-track { align-items: stretch; }
.cc_ud0vift4_9yFS8SSff6 .psl-cell { display: flex; flex-direction: column; }
.cc_ud0vift4_9yFS8SSff6 .psl-cell > .pc { flex: 1 1 auto; height: 100%; }
.cc_ud0vift4_9yFS8SSff6 .psl-cell .pc-body { flex: 1 1 auto; }
.cc_ud0vift4_9yFS8SSff6 .psl-cell .pc-head { flex: 1 1 auto; }

@media (max-width: 1024px) {
  .cc_ud0vift4_9yFS8SSff6 .psl-track { --psl-n: var(--psl-n-t, 3); }
}

@media (max-width: 640px) {
  .cc_ud0vift4_9yFS8SSff6 .psl-track { --psl-n: var(--psl-n-m, 1.5); }
}

/* ===== Progress hairline ===== */

.cc_ud0vift4_9yFS8SSff6 .psl-progress {
  position: relative;
  height: 2px;
  margin: 40px 4px 0;
  border-radius: 2px;
  background: var(--eaUZrJ571O);
  overflow: hidden;
}

.cc_ud0vift4_9yFS8SSff6 .psl-progress-thumb {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 30%;
  background: var(--xzwz2GSx9S);
  border-radius: 2px;
}

.cc_ud0vift4_9yFS8SSff6 .psl-empty { margin: 0; padding: 48px 0; text-align: center; color: var(--9JwAa4B9AN); }

/* ===== Reveal =====
   Content is visible by default; the entrance only plays once `is-in` is set,
   so a missed observer can never leave the section blank. */

@keyframes cc_ud0vift4_9yFS8SSff6_psl-rise {
  from { opacity: 0; transform: translateY(32px); }
  to { opacity: 1; transform: none; }
}

@keyframes cc_ud0vift4_9yFS8SSff6_psl-mask {
  from { transform: translateY(115%); }
  to { transform: none; }
}

.cc_ud0vift4_9yFS8SSff6 .psl-motion.is-in .psl-heading-inner { animation: cc_ud0vift4_9yFS8SSff6_psl-mask 1.1s cubic-bezier(0.22, 1, 0.36, 1) both; }

.cc_ud0vift4_9yFS8SSff6 .psl-motion.is-in .psl-eyebrow, .cc_ud0vift4_9yFS8SSff6 .psl-motion.is-in .psl-description, .cc_ud0vift4_9yFS8SSff6 .psl-motion.is-in .psl-tools, .cc_ud0vift4_9yFS8SSff6 .psl-motion.is-in .psl-progress { animation: cc_ud0vift4_9yFS8SSff6_psl-rise 0.9s cubic-bezier(0.22, 1, 0.36, 1) 0.2s both; }

.cc_ud0vift4_9yFS8SSff6 .psl-motion.is-in .psl-cell {
  animation: cc_ud0vift4_9yFS8SSff6_psl-rise 1s cubic-bezier(0.22, 1, 0.36, 1) calc(0.2s + var(--i, 0) * 80ms) both;
}

@media (max-width: 900px) {
  .cc_ud0vift4_9yFS8SSff6 .psl-head { flex-direction: column; align-items: flex-start; gap: 24px; margin-bottom: 24px; }
}

@media (max-width: 640px) {
  .cc_ud0vift4_9yFS8SSff6 .psl-arrows { display: none; }
  .cc_ud0vift4_9yFS8SSff6 .psl.has-fade .psl-rail { -webkit-mask-image: none; mask-image: none; }
}

@media (prefers-reduced-motion: reduce) {
  .cc_ud0vift4_9yFS8SSff6 .psl-all::after, .cc_ud0vift4_9yFS8SSff6 .psl-all svg, .cc_ud0vift4_9yFS8SSff6 .psl-arrow { transition: none; }
  .cc_ud0vift4_9yFS8SSff6 .psl-motion.is-in .psl-heading-inner, .cc_ud0vift4_9yFS8SSff6 .psl-motion.is-in .psl-eyebrow, .cc_ud0vift4_9yFS8SSff6 .psl-motion.is-in .psl-description, .cc_ud0vift4_9yFS8SSff6 .psl-motion.is-in .psl-tools, .cc_ud0vift4_9yFS8SSff6 .psl-motion.is-in .psl-progress, .cc_ud0vift4_9yFS8SSff6 .psl-motion.is-in .psl-cell { animation: none; }
}

/* ===== Tabs (COMPONENT_LIST) ===== */

.cc_ud0vift4_9yFS8SSff6 .psl-tabrow {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 28px;
}

.cc_ud0vift4_9yFS8SSff6 .psl-tabrow .psl-tabbar { min-width: 0; }
.cc_ud0vift4_9yFS8SSff6 .psl-tabarrows { flex: none; display: flex; }
.cc_ud0vift4_9yFS8SSff6 .psl-tabarrows:empty { display: none; }

/*
   A white tray (same surface as the cards) holding the tabs. One
   raised highlight glides to the active tab; the child tab measures its
   button and writes --pst-x / --pst-w on the tray. */

.cc_ud0vift4_9yFS8SSff6 .psl-tabbar {
  position: relative;
  display: inline-flex;
  max-width: 100%;
  gap: 4px;
  padding: 6px;
  border-radius: 1000px;
  background: var(--ebXfETwy66);
  box-shadow: 0 18px 40px -24px rgba(15, 22, 38, 0.28), 0 2px 6px -2px rgba(15, 22, 38, 0.06);
  overflow-x: auto;
  scrollbar-width: none;
}

.cc_ud0vift4_9yFS8SSff6 .psl-tabbar::-webkit-scrollbar { display: none; }
.cc_ud0vift4_9yFS8SSff6 .psl-tabbar:empty { display: none; }

.cc_ud0vift4_9yFS8SSff6 .psl-tabbar::before {
  content: "";
  position: absolute;
  top: 6px;
  bottom: 6px;
  left: 0;
  width: var(--pst-w, 0px);
  transform: translateX(var(--pst-x, 0px));
  border-radius: 1000px;
  background: var(--eIjF7PvDc3);
  box-shadow: 0 10px 22px -8px var(--eIjF7PvDc3);
  opacity: 0;
}

.cc_ud0vift4_9yFS8SSff6 .psl-tabbar[data-ready="1"]::before {
  opacity: 1;
  transition:
    transform 0.6s cubic-bezier(0.65, 0, 0.2, 1),
    width 0.6s cubic-bezier(0.65, 0, 0.2, 1),
    opacity 0.3s ease;
}

.cc_ud0vift4_9yFS8SSff6 .psl-tabbar .pst-tab {
  position: relative;
  z-index: 1;
  flex: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 30px;
  border: 0;
  border-radius: 1000px;
  background: transparent;
  color: var(--xzwz2GSx9S);
  font: inherit;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  transition: color 0.35s ease 0.1s;
}

.cc_ud0vift4_9yFS8SSff6 .psl-tabbar .pst-tab:hover:not(.is-active) { color: var(--eIjF7PvDc3); }
.cc_ud0vift4_9yFS8SSff6 .psl-tabbar .pst-tab.is-active { color: var(--ebXfETwy66); }
/* before the highlight is measured, the active tab paints its own fill */
.cc_ud0vift4_9yFS8SSff6 .psl-tabbar:not([data-ready="1"]) .pst-tab.is-active { background: var(--eIjF7PvDc3); }

.cc_ud0vift4_9yFS8SSff6 .psl-tabbar .pst-tab:focus-visible {
  outline: 2px solid var(--eIjF7PvDc3);
  outline-offset: 2px;
}

@media (max-width: 640px) {
  .cc_ud0vift4_9yFS8SSff6 .psl-tabrow { margin-bottom: 20px; }
  .cc_ud0vift4_9yFS8SSff6 .psl-tabbar .pst-tab { min-height: 44px; padding: 0 22px; font-size: 15px; }
}

@media (prefers-reduced-motion: reduce) {
  .cc_ud0vift4_9yFS8SSff6 .psl-tabbar[data-ready="1"]::before, .cc_ud0vift4_9yFS8SSff6 .psl-tabbar .pst-tab { transition: none; }
}

@media (max-width: 640px) {
  .cc_ud0vift4_9yFS8SSff6 .psl-heading { font-size: min(var(--t-product-slider-heading-size, 40px), 32px); }
}
