/* ===== Product card alignment (featured-collection) ===== */
/* Uniform slide widths; titles clamp to 2 lines; product images keep their NATURAL aspect ratio (no cropping). */
.section-featured-collection .featured-collection__track { align-items: flex-start !important; }
.section-featured-collection .featured-collection__track > li:not(.featured-collection__carousel-view-more) { flex: 0 0 calc(100% / var(--desktop-columns, 4)) !important; width: calc(100% / var(--desktop-columns, 4)) !important; max-width: calc(100% / var(--desktop-columns, 4)) !important; }
.section-featured-collection .featured-collection__track > li > product-item,
.section-featured-collection .block-product-card { display: flex !important; flex-direction: column !important; flex: 0 0 auto !important; width: 100% !important; height: auto !important; }
.section-featured-collection .block-product-image__layer-image-wrapper,
.section-featured-collection .block-product-image__image-wrapper { flex: 0 0 auto !important; }
.section-featured-collection .block-product-image__image-wrapper { width: 100% !important; height: auto !important; align-self: flex-start !important; }
.section-featured-collection .block-product-card-info { display: flex !important; flex-direction: column !important; }
.section-featured-collection .block-product-title { display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; text-overflow: ellipsis !important; white-space: normal !important; min-height: 2.8em !important; line-height: 1.4 !important; }
@media (max-width: 959px) { .section-featured-collection .featured-collection__track > li:not(.featured-collection__carousel-view-more) { flex: 0 0 calc(100% / var(--mobile-columns, 2.2)) !important; width: calc(100% / var(--mobile-columns, 2.2)) !important; max-width: calc(100% / var(--mobile-columns, 2.2)) !important; } }

theme-featured-collection-tabs {
  display: contents;
}

.section-featured-collection {
  background-color: rgb(var(--color-background));
}

.featured-collection__tabs-wrapper {
  width: 100%;
}

.featured-collection__tabs-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-block-end: 40px;
}

.featured-collection__tabs-list {
  display: flex;
  gap: 20px;
  overflow-x: auto;
}

.featured-collection__tabs-content {
  position: relative;
}

.featured-collection__tabs-content-inner {
  animation: column-fade-in 0.8s ease;
  animation-fill-mode: forwards;
}

@media (max-width: 959px) {
  .featured-collection__tabs-content-inner.mobile-full-width {
    width: var(--body-container-width);
    margin-inline-start: calc(50% - calc(var(--body-container-width) / 2));
  }

  .featured-collection__tabs-content-inner.mobile-full-width
    .product-card-border-shadow {
    border-radius: 0;
  }

  .featured-collection__tabs-content-inner.mobile-full-width
    .featured-collection__track {
    gap: 0;
  }
}

@media (min-width: 960px) {
  .featured-collection__tabs-content-inner.desktop-full-width
    .featured-collection__track {
    width: var(--body-container-width);
    padding-inline: var(--page-padding);
    margin-inline-start: calc(50% - calc(var(--body-container-width) / 2));
    scroll-padding-inline: var(--page-padding);
  }
}

.featured-collection__tab {
  padding: 10px 20px;
  color: var(--tab-color);
  white-space: nowrap;
  cursor: pointer;
  background-color: var(--tab-background-color);
  border-color: var(--tab-border-color);
  border-style: solid;
  border-width: 1px;
  border-radius: 6px;
}

.featured-collection__tab.active {
  color: var(--tab-active-color);
  background-color: var(--tab-active-background-color);
  border-color: var(--tab-active-border-color);
}

.featured-collection__tabs-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 550px;
}

.featured-collection__tabs-loading svg {
  width: 40px;
  height: 40px;
}

.featured-collection__carousel
  .featured-collection__carousel-indicator-progress {
  max-width: 480px;
  height: 6px;
}

.featured-collection__carousel-view-more {
  background-color: #e1e4e8;
}

.featured-collection__carousel-view-more a {
  color: #000;
}

.featured-collection__carousel-view-more a::after {
  display: none;
}

.featured-collection__carousel-view-more-button {
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.featured-collection__carousel-view-more-button-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background-color: #fff;
  border-radius: 50%;
}

.featured-collection__button {
  position: absolute;
  inset-block-start: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  color: rgb(255 255 255 / 100%);
  background-color: rgb(0 0 0 / 100%);
  border: 0;
  border-radius: 2px;
  box-shadow: 0 4px 10px rgb(0 0 0 / 15%);
}

.featured-collection__button:disabled {
  display: none;
}

.featured-collection__button--previous {
  inset-inline-start: 0;
}

.featured-collection__button--previous svg {
  transform: rotate(180deg);
}

.featured-collection__button--next {
  inset-inline-end: 0;
}

:where(.featured-collection__tab) {
  margin: 0;
  font: inherit;
  text-align: inherit;
  appearance: none;
}


/* FIX: force-hide tabs loading placeholder when .hidden applied (loading display:flex was overriding hidden) */
.featured-collection__tabs-loading.hidden,
.loading.hidden,
[class*="loading"].hidden {
  display: none !important;
}