/** Shopify CDN: Minification failed

Line 345:6 Unexpected "{"
Line 345:15 Expected ":"
Line 345:22 Unexpected "{"
Line 353:6 Unexpected "{"
Line 353:15 Expected ":"
Line 354:6 Unexpected "{"
Line 354:15 Expected ":"
Line 355:6 Unexpected "{"
Line 355:15 Expected ":"
Line 364:6 Unexpected "{"
... and 53 more hidden warnings

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:athlete-spotlight (INDEX:19) */
.hbc {
    padding-top: calc(var(--hbc-pt) * 0.5);
    padding-bottom: calc(var(--hbc-pb) * 0.5);
    color: var(--hbc-text);
  }
  .hbc *,
  .hbc *::before,
  .hbc *::after {
    box-sizing: border-box;
  }
  .hbc [hidden] {
    display: none !important;
  }
  .hbc__root {
    display: block;
  }
  .hbc__container {
    max-width: var(--hbc-max-w);
    margin-inline: auto;
    padding-inline: var(--hbc-side);
  }

  /* ---------- Heading ---------- */
  .hbc__header {
    display: flex;
    flex-direction: column;
    align-items: var(--hbc-hai);
    margin-bottom: 18px;
    text-align: var(--hbc-ha);
  }
  .hbc__heading {
    margin: 0;
    color: inherit;
    font-family: var(--font-heading-family, inherit);
    font-size: var(--hbc-heading-m);
    font-style: var(--font-heading-style, normal);
    font-weight: var(--font-heading-weight, 800);
    line-height: 1.05;
    text-transform: var(--hbc-heading-tt);
  }
  .hbc__bar {
    display: block;
    width: 34px;
    height: 3px;
    margin-top: 10px;
    background: var(--hbc-accent);
  }

  /* ---------- Track (mobile first: swipeable row) ---------- */
  .hbc__track {
    display: flex;
    gap: var(--hbc-gap-m);
    margin: 0 calc(var(--hbc-side) * -1);
    padding: 0 var(--hbc-side);
    overflow-x: auto;
    overscroll-behavior-x: contain;
    scroll-padding-inline: var(--hbc-side);
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
    list-style: none;
  }
  .hbc__track::-webkit-scrollbar {
    display: none;
  }
  .hbc__slide {
    flex: 0 0 var(--hbc-card-w-m);
    min-width: 0;
    margin: 0;
    padding: 0;
    scroll-snap-align: start;
  }

  /* ---------- Card ---------- */
  .hbc__card {
    display: flex;
    flex-direction: column;
    height: 100%;
    overflow: hidden;
    border: 1px solid var(--hbc-border);
    border-radius: var(--hbc-radius);
    background: var(--hbc-card-bg);
  }
  .hbc__media {
    position: relative;
    flex: none;
    aspect-ratio: var(--hbc-ratio);
    overflow: hidden;
    background: var(--hbc-tile-bg);
  }
  .hbc__media-link,
  .hbc__media picture {
    display: block;
    width: 100%;
    height: 100%;
  }
  .hbc__img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .hbc__body {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: 10px;
    padding: 20px 16px 18px;
  }
  .hbc__title {
    margin: 0;
    font-family: var(--font-heading-family, inherit);
    font-size: var(--hbc-title-m);
    font-weight: 800;
    line-height: 1.12;
    text-transform: uppercase;
  }
  .hbc__title a {
    color: inherit;
    text-decoration: none;
  }
  .hbc__title a:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  .hbc__title a:focus-visible,
  .hbc__prod:focus-visible {
    outline: 3px solid var(--hbc-accent);
    outline-offset: 3px;
  }
  .hbc__subtitle {
    margin: 0;
    color: var(--hbc-accent);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.35;
    text-transform: uppercase;
  }
  .hbc__text {
    margin: 4px 0 0;
    font-size: var(--hbc-text-size);
    line-height: 1.6;
    opacity: 0.8;
  }
  .hbc--clamp .hbc__text {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: var(--hbc-lines);
    line-clamp: var(--hbc-lines);
  }

  /* ---------- Favorite products ---------- */
  .hbc__favs {
    padding-top: 14px;
  }
  .hbc--bottom .hbc__favs {
    margin-top: auto;
  }
  .hbc__favs-label {
    margin: 0 0 8px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.04em;
    line-height: 1.3;
    opacity: 0.55;
    text-transform: uppercase;
  }
  .hbc__prods {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
  }
  .hbc__prod {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 6px;
    min-width: 0;
    color: inherit;
    text-decoration: none;
  }
  .hbc__prod-media {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-radius: var(--hbc-tile-radius);
    background: var(--hbc-tile-bg);
  }
  .hbc__prod-img {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    padding: 8%;
    object-fit: contain;
  }
  .hbc--blend .hbc__prod-img {
    mix-blend-mode: multiply;
  }
  .hbc__prod-name {
    display: -webkit-box;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
    font-family: var(--font-heading-family, inherit);
    font-size: var(--hbc-name-size);
    font-weight: 800;
    letter-spacing: 0.01em;
    line-height: 1.2;
    text-align: center;
    text-transform: uppercase;
  }
  a.hbc__prod:hover .hbc__prod-name {
    text-decoration: underline;
    text-underline-offset: 2px;
  }

  /* ---------- Dots (mobile slider) ---------- */
  .hbc__dots {
    display: flex;
    justify-content: center;
    gap: 8px;
    margin-top: 16px;
  }
  .hbc__dot {
    position: relative;
    width: 8px;
    height: 8px;
    padding: 0;
    border: 0;
    border-radius: 4px;
    background: var(--hbc-dots);
    cursor: pointer;
    opacity: 0.25;
    transition: width 0.2s ease, opacity 0.2s ease;
  }
  .hbc__dot::after {
    content: '';
    position: absolute;
    inset: -10px -4px;
  }
  .hbc__dot[aria-current='true'] {
    width: 22px;
    opacity: 1;
  }
  .hbc__dot:focus-visible {
    outline: 3px solid var(--hbc-accent);
    outline-offset: 3px;
  }

  /* ---------- Mobile: single column instead of slider ---------- */
  @media (max-width: 749px) {
    .hbc--m-stack .hbc__track {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      margin: 0;
      padding: 0;
      overflow: visible;
    }
    .hbc--m-stack .hbc__slide {
      flex: none;
    }
    .hbc--m-stack .hbc__dots {
      display: none;
    }
  }

  /* ---------- Desktop ---------- */
  @media (min-width: 750px) {
    .hbc {
      --hbc-cols: var(--hbc-cols-t);
      padding-top: var(--hbc-pt);
      padding-bottom: var(--hbc-pb);
    }
    .hbc__header {
      margin-bottom: 24px;
    }
    .hbc__heading {
      font-size: var(--hbc-heading-d);
    }
    .hbc__bar {
      width: 40px;
      height: 4px;
    }
    .hbc__track {
      display: grid;
      grid-template-columns: repeat(var(--hbc-cols), minmax(0, 1fr));
      gap: var(--hbc-gap-d);
      margin: 0;
      padding: 0;
      overflow: visible;
    }
    .hbc__slide {
      flex: none;
    }
    .hbc__body {
      padding: 22px 18px 20px;
    }
    .hbc__title {
      font-size: var(--hbc-title-d);
    }
    .hbc__dots {
      display: none;
    }
  }
  @media (min-width: 990px) {
    .hbc {
      --hbc-cols: var(--hbc-cols-d);
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .hbc__dot {
      transition: none;
    }
  }
/* END_SECTION:athlete-spotlight */

/* START_SECTION:category-cards (INDEX:28) */
#hcl-{{ section.id }} {
  width: 100%;
  box-sizing: border-box;
  padding-top: var(--hcl-pt);
  padding-bottom: var(--hcl-pb);
  background: transparent;
}

#hcl-{{ section.id }} *,
#hcl-{{ section.id }} *::before,
#hcl-{{ section.id }} *::after {
  box-sizing: border-box;
}


/* ==================================================
   CONTAINER
   ================================================== */

#hcl-{{ section.id }} .hcl__container {
  width: 100%;
  max-width: var(--hcl-max-w);
  margin: 0 auto;
  padding-left: var(--hcl-side);
  padding-right: var(--hcl-side);
}


/* ==================================================
   HEADER
   ================================================== */

#hcl-{{ section.id }} .hcl__header {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 20px;
}

#hcl-{{ section.id }} .hcl__heading {
  margin: 0;
  color: var(--hcl-heading-color);
  font-size: var(--hcl-heading-fs-m);
  line-height: 1.2;
  font-weight: 600;
  text-align: var(--hcl-heading-align);
}

#hcl-{{ section.id }} .hcl__all {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;
  color: var(--hcl-link-color);
  font-size: 14px;
  line-height: 1.2;
  text-decoration: none;
  white-space: nowrap;
  transition: opacity 0.2s ease;
}

#hcl-{{ section.id }} .hcl__all:hover {
  opacity: 0.7;
}

#hcl-{{ section.id }} .hcl__all-arrow {
  display: block;
  flex: 0 0 auto;
}


/* ==================================================
   GRID
   ================================================== */

#hcl-{{ section.id }} .hcl__grid {
  width: 100%;
  display: grid;

  /*
    IMPORTANT:
    Always 2 columns.

    6 collections become:

    [ 1 ] [ 2 ]
    [ 3 ] [ 4 ]
    [ 5 ] [ 6 ]
  */

  grid-template-columns: repeat(2, minmax(0, 1fr));

  gap: var(--hcl-gap-m);

  margin: 0;
  padding: 0;
  list-style: none;
}


/* ==================================================
   GRID ITEM
   ================================================== */

#hcl-{{ section.id }} .hcl__item {
  min-width: 0;
  width: 100%;
}


/* ==================================================
   CARD
   ================================================== */

#hcl-{{ section.id }} .hcl__card {
  width: 100%;
  min-width: 0;

  display: flex;
  align-items: center;

  gap: 10px;

  padding: 10px 14px 10px 10px;

  background: var(--hcl-card-bg);
  border: 1px solid var(--hcl-card-border);
  border-radius: var(--hcl-radius);

  color: var(--hcl-text);
  text-decoration: none;

  overflow: hidden;

  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    transform 0.2s ease;
}

#hcl-{{ section.id }} .hcl__card:hover {
  background: var(--hcl-card-hover);
}


/* ==================================================
   IMAGE
   ================================================== */

#hcl-{{ section.id }} .hcl__media {
  position: relative;

  flex: 0 0 var(--hcl-thumb-m);

  width: var(--hcl-thumb-m);
  height: var(--hcl-thumb-m);

  display: block;

  overflow: hidden;

  border-radius: var(--hcl-img-radius);

  background: #f5f5f5;
}

#hcl-{{ section.id }} .hcl__media picture {
  display: block;
  width: 100%;
  height: 100%;
}

#hcl-{{ section.id }} .hcl__img {
  display: block;

  width: 100%;
  height: 100%;

  max-width: 100%;

  object-fit: var(--hcl-fit);

  object-position: center;
}


/* ==================================================
   LABEL
   ================================================== */

#hcl-{{ section.id }} .hcl__label {
  min-width: 0;
  flex: 1 1 auto;

  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 8px;
}

#hcl-{{ section.id }} .hcl__title {
  min-width: 0;

  display: block;

  color: var(--hcl-text);

  font-size: var(--hcl-fs-m);
  line-height: 1.25;
  font-weight: 500;

  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

#hcl-{{ section.id }} .hcl__arrow {
  flex: 0 0 auto;

  width: 18px;
  height: 18px;

  color: var(--hcl-arrow);
}


/* ==================================================
   TABLET / DESKTOP
   ================================================== */

@media screen and (min-width: 750px) {

  #hcl-{{ section.id }} .hcl__heading {
    font-size: var(--hcl-heading-fs-d);
  }

  /*
    Keep EXACTLY 2 columns on desktop.
  */

  #hcl-{{ section.id }} .hcl__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--hcl-gap-d);
  }

  /*
    Same card layout as mobile.
    Only the image/title sizes can increase.
  */

  #hcl-{{ section.id }} .hcl__media {
    flex-basis: var(--hcl-thumb-d);
    width: var(--hcl-thumb-d);
    height: var(--hcl-thumb-d);
  }

  #hcl-{{ section.id }} .hcl__title {
    font-size: var(--hcl-fs-d);
  }

}


/* ==================================================
   SMALL MOBILE
   ================================================== */

@media screen and (max-width: 389px) {

  #hcl-{{ section.id }} .hcl__grid {
    gap: 8px;
  }

  #hcl-{{ section.id }} .hcl__card {
    gap: 7px;
    padding: 8px 9px 8px 8px;
  }

  #hcl-{{ section.id }} .hcl__media {
    flex-basis: 44px;
    width: 44px;
    height: 44px;
  }

  #hcl-{{ section.id }} .hcl__title {
    font-size: 13px;
  }

  #hcl-{{ section.id }} .hcl__arrow {
    width: 15px;
    height: 15px;
  }

}


/* ==================================================
   ACCESSIBILITY
   ================================================== */

#hcl-{{ section.id }} .hcl__card:focus-visible,
#hcl-{{ section.id }} .hcl__all:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}
/* END_SECTION:category-cards */

/* START_SECTION:hero-promo-banner (INDEX:50) */
.hpb {
    padding-top: calc(var(--hpb-pt) * 0.5);
    padding-bottom: calc(var(--hpb-pb) * 0.5);
  }
  .hpb *,
  .hpb *::before,
  .hpb *::after {
    box-sizing: border-box;
  }
  .hpb__container {
    max-width: var(--hpb-max-w);
    margin-inline: auto;
    padding-inline: var(--hpb-side);
  }
  .hpb__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--hpb-gap);
  }

  /* ---------- Hero card ---------- */
  .hpb__hero {
    position: relative;
    display: flex;
    overflow: hidden;
    min-height: var(--hpb-hero-h-m);
    border-radius: var(--hpb-radius);
    background: var(--hpb-hero-bg);
    color: var(--hpb-hero-text);
  }
  .hpb__hero-media,
  .hpb__hero-overlay {
    position: absolute;
    inset: 0;
  }
  .hpb__hero-media picture {
    display: block;
    width: 100%;
    height: 100%;
  }
  .hpb__hero-overlay {
    background: var(--hpb-overlay-m);
    pointer-events: none;
  }
  .hpb__img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .hpb__hero-content {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    justify-content: var(--hpb-jc-m);
    align-items: var(--hpb-ai-m);
    gap: 14px;
    width: 100%;
    min-width: 0;
    padding: 28px 20px;
    text-align: var(--hpb-ta-m);
  }
  .hpb__hero-heading {
    max-width: 12em;
    margin: 0;
    font-size: var(--hpb-h-m);
    font-weight: 800;
    line-height: 1.05;
    letter-spacing: -0.01em;
    text-transform: uppercase;
    text-wrap: balance;
  }
  .hpb__hero-text {
    max-width: 34em;
    margin: 0;
    font-size: 16px;
    line-height: 1.55;
    opacity: 0.92;
    text-wrap: pretty;
  }

  /* Trustpilot-style rating */
  .hpb__rating {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
  }
  .hpb__stars {
    display: inline-flex;
    gap: 2px;
  }
  .hpb__star {
    display: grid;
    place-items: center;
    width: 22px;
    height: 22px;
    background: var(--hpb-star);
  }
  .hpb__star--empty {
    background: #dcdce6;
  }
  .hpb__rating-text {
    font-size: 14px;
    font-weight: 600;
  }

  /* ---------- Buttons ---------- */
  .hpb__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 16px 24px;
    border-radius: var(--hpb-btn-radius);
    background: var(--hpb-btn-bg);
    color: var(--hpb-btn-text);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: 0.01em;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    transition: filter 0.2s ease;
  }
  .hpb__btn:hover {
    filter: brightness(1.1);
  }
  .hpb__btn:focus-visible {
    outline: 3px solid currentColor;
    outline-offset: 3px;
  }
  .hpb__btn--hero {
    margin-top: 8px;
  }
  .hpb__btn--block-m {
    width: 100%;
  }
  .hpb__arrow {
    flex: none;
  }

  /* ---------- Promo card ---------- */
  .hpb__promo {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 42%);
    min-height: 220px;
    overflow: hidden;
    border-radius: var(--hpb-radius);
    background: var(--hpb-promo-bg);
    color: var(--hpb-promo-text);
  }
  .hpb__promo-body {
    order: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: var(--hpb-promo-ai-m);
    gap: 10px;
    padding: 22px 18px;
    text-align: var(--hpb-promo-ta-m);
  }
  .hpb__promo-media {
    position: relative;
    order: 2;
    min-height: 100%;
    background: var(--hpb-promo-media-bg);
  }
  .hpb__promo-media picture,
  .hpb__promo-media > svg {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
  }
  .hpb__promo-media .hpb__img {
    object-fit: var(--hpb-promo-fit-m);
  }
  .hpb__promo-heading {
    margin: 0;
    font-size: var(--hpb-ph-m);
    font-weight: 800;
    line-height: 1.15;
    text-wrap: balance;
  }
  .hpb__promo-text {
    margin: 0;
    font-size: 15px;
    line-height: 1.5;
    opacity: 0.75;
  }
  .hpb__btn--promo {
    margin-top: 6px;
  }

  /* Mobile: image above text instead of beside it */
  .hpb__promo--stack-m {
    grid-template-columns: minmax(0, 1fr);
  }
  .hpb__promo--stack-m .hpb__promo-media {
    order: 0;
    min-height: 240px;
  }
  .hpb__promo--stack-m .hpb__promo-body {
    padding: 20px;
  }

  /* ---------- Desktop ---------- */
  @media (min-width: 750px) {
    .hpb {
      padding-top: var(--hpb-pt);
      padding-bottom: var(--hpb-pb);
    }
    .hpb__grid {
      grid-template-columns: minmax(0, 2.7fr) minmax(0, 1fr);
    }
    .hpb__grid--solo {
      grid-template-columns: minmax(0, 1fr);
    }

    .hpb__hero {
      min-height: var(--hpb-hero-h);
    }
    .hpb__hero-overlay {
      background: var(--hpb-overlay-d);
    }
    .hpb__hero-content {
      justify-content: var(--hpb-jc-d);
      align-items: var(--hpb-ai-d);
      gap: 18px;
      padding: 48px 56px;
      text-align: var(--hpb-ta-d);
    }
    .hpb__hero-heading {
      font-size: var(--hpb-h-d);
    }
    .hpb__hero-text {
      font-size: 18px;
    }
    .hpb__btn {
      padding: 20px 36px;
      font-size: 16px;
    }
    .hpb__btn--hero {
      margin-top: 14px;
    }
    .hpb__btn--block-m {
      width: auto;
    }

    .hpb__promo,
    .hpb__promo--stack-m {
      display: flex;
      flex-direction: column;
      min-height: 0;
    }
    .hpb__promo-media,
    .hpb__promo--stack-m .hpb__promo-media {
      order: 0;
      flex: 1 1 auto;
      min-height: 260px;
    }
    .hpb__promo-media .hpb__img {
      object-fit: var(--hpb-promo-fit-d);
    }
    .hpb__promo-body,
    .hpb__promo--stack-m .hpb__promo-body {
      order: 1;
      flex: none;
      justify-content: flex-start;
      align-items: var(--hpb-promo-ai-d);
      gap: 12px;
      padding: 20px 32px 32px;
      text-align: var(--hpb-promo-ta-d);
    }
    .hpb__promo-heading {
      font-size: var(--hpb-ph-d);
    }
    .hpb__promo-text {
      font-size: 18px;
    }
    .hpb__btn--promo {
      margin-top: 12px;
    }
  }

  @media (prefers-reduced-motion: reduce) {
    .hpb__btn {
      transition: none;
    }
  }
/* END_SECTION:hero-promo-banner */

/* START_SECTION:products-slider (INDEX:92) */
.hpc {
    --hpc-star-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l2.9 6.9 7.1.6-5.4 4.7 1.7 7.3L12 17.8l-6.3 3.7 1.7-7.3L2 9.5l7.1-.6z'/%3E%3C/svg%3E");
    padding-top: calc(var(--hpc-pt) * 0.5);
    padding-bottom: calc(var(--hpc-pb) * 0.5);
    color: var(--hpc-text);
  }
  .hpc *,
  .hpc *::before,
  .hpc *::after {
    box-sizing: border-box;
  }
  .hpc [hidden] {
    display: none !important;
  }
  .hpc__root {
    display: block;
  }
  .hpc__container {
    max-width: var(--hpc-max-w);
    margin-inline: auto;
    padding-inline: var(--hpc-side);
  }

  /* ---------- Header ---------- */
  .hpc__header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
  }
  .hpc__eyebrow {
    margin: 0 0 6px;
    font-size: 13px;
    font-weight: 500;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    opacity: 0.6;
  }
  .hpc__heading {
    margin: 0;
    color: inherit;
    font-family: var(--font-heading-family, inherit);
    font-size: var(--hpc-heading-m);
    font-style: var(--font-heading-style, normal);
    font-weight: var(--font-heading-weight, 700);
    line-height: 1.05;
    text-transform: var(--hpc-heading-tt);
  }
  .hpc__bar {
    display: block;
    width: 44px;
    height: 4px;
    margin-top: 10px;
    border-radius: 2px;
    background: var(--hpc-accent);
  }
  .hpc__all {
    display: inline-flex;
    flex: none;
    align-items: center;
    gap: 6px;
    margin-bottom: 4px;
    color: var(--hpc-accent);
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-decoration: none;
    text-transform: uppercase;
  }
  .hpc__all:hover {
    text-decoration: underline;
    text-underline-offset: 4px;
  }
  .hpc__all:focus-visible {
    outline: 3px solid currentColor;
    outline-offset: 3px;
  }

  /* ---------- Track (mobile first: swipeable row) ---------- */
  .hpc__viewport {
    position: relative;
  }
  .hpc__track {
    display: flex;
    gap: var(--hpc-gap-m);
    margin: 0 calc(var(--hpc-side) * -1);
    padding: 0 var(--hpc-side);
    overflow-x: auto;
    overscroll-behavior-x: auto;
    touch-action: auto;
    -webkit-overflow-scrolling: touch;
    scroll-padding-inline: var(--hpc-side);
    scroll-snap-type: x proximity;
    scrollbar-width: none;
    list-style: none;
  }
  .hpc__track::-webkit-scrollbar {
    display: none;
  }
  .hpc__slide {
    flex: 0 0 var(--hpc-card-w-m);
    min-width: 0;
    margin: 0;
    padding: 0;
    scroll-snap-align: start;
  }
  .hpc__nav {
    display: none;
  }

  /* ---------- Card ---------- */
  .hpc__card {
    display: flex;
    flex-direction: column;
    height: 100%;
  }
  .hpc__media {
    position: relative;
    isolation: isolate;
    aspect-ratio: var(--hpc-ratio);
    overflow: hidden;
    border-radius: var(--hpc-radius);
    background: var(--hpc-card-bg);
  }
  .hpc__media-link {
    position: absolute;
    inset: 0;
    display: block;
  }
  .hpc__img {
    display: block;
    width: 100%;
    height: 100%;
    padding: var(--hpc-img-pad);
    object-fit: var(--hpc-fit);
  }
  .hpc--blend .hpc__img {
    mix-blend-mode: multiply;
  }
  .hpc__media > svg {
    position: absolute;
    inset: 0;
    padding: 8%;
  }

  .hpc__badges {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 2;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
    pointer-events: none;
  }
  .hpc__badge {
    display: inline-flex;
    align-items: center;
    padding: 3px 9px;
    border-radius: 8px;
    background: #111;
    color: #fff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.03em;
    line-height: 1.4;
    text-transform: uppercase;
  }
  .hpc__badge--accent {
    background: var(--hpc-badge-accent);
  }
  .hpc__badge--sale {
    background: var(--hpc-sale);
  }
  .hpc__badge--sold {
    background: #6b6b6b;
  }

  .hpc__heart {
    position: absolute;
    top: 6px;
    right: 6px;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    color: var(--hpc-text);
    cursor: pointer;
  }
  .hpc__heart[aria-pressed='true'] {
    color: var(--hpc-sale);
  }
  .hpc__heart[aria-pressed='true'] svg {
    fill: currentColor;
  }

  .hpc__count {
    position: absolute;
    bottom: 10px;
    left: 10px;
    z-index: 2;
    padding: 4px 11px;
    border: 1px solid #e6e6e6;
    border-radius: 999px;
    background: #fff;
    font-size: 12px;
    font-weight: 600;
    line-height: 1.2;
    pointer-events: none;
  }

  .hpc__quick {
    position: absolute;
    right: 10px;
    bottom: 10px;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #111;
    color: #fff;
    cursor: pointer;
    transition: transform 0.15s ease, background-color 0.2s ease;
  }
  .hpc__quick:hover:not(:disabled) {
    transform: scale(1.07);
  }
  .hpc__quick:disabled {
    cursor: not-allowed;
    opacity: 0.35;
  }
  .hpc__quick.is-loading {
    opacity: 0.6;
    pointer-events: none;
  }
  .hpc__quick-check {
    display: none;
  }
  .hpc__quick.is-added {
    background: var(--hpc-cta-bg);
  }
  .hpc__quick.is-added .hpc__quick-bag {
    display: none;
  }
  .hpc__quick.is-added .hpc__quick-check {
    display: block;
  }
  .hpc__quick:focus-visible,
  .hpc__heart:focus-visible,
  .hpc__title a:focus-visible,
  .hpc__nav:focus-visible {
    outline: 3px solid var(--hpc-accent);
    outline-offset: 2px;
  }

  /* ---------- Card text ---------- */
  .hpc__body {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding-top: 12px;
  }
  .hpc__title {
    margin: 0;
    font-size: var(--hpc-title-m);
    font-weight: 500;
    line-height: 1.25;
  }
  .hpc__title a {
    color: inherit;
    text-decoration: none;
  }
  .hpc__title a:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
  }
  .hpc__rating {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
  }
  .hpc__stars {
    flex: none;
    width: 90px;
    height: 16px;
    background: linear-gradient(90deg, var(--hpc-star) calc(var(--r, 0) / 5 * 100%), #d8d8dc 0);
    -webkit-mask-image: var(--hpc-star-mask);
    mask-image: var(--hpc-star-mask);
    -webkit-mask-repeat: repeat-x;
    mask-repeat: repeat-x;
    -webkit-mask-size: 18px 16px;
    mask-size: 18px 16px;
  }
  .hpc__rating-n {
    opacity: 0.65;
  }
  .hpc__price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 2px 8px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1.3;
  }
  .hpc__price--sale .hpc__price-now,
  .hpc__price--sale .hpc__from {
    color: var(--hpc-sale);
  }
  .hpc__price-was {
    font-weight: 500;
    opacity: 0.5;
  }

  @media (max-width: 749px) {
    .hpc__track {
      touch-action: auto;
      overscroll-behavior-y: auto;
    }
    .hpc__badge--sale {
      padding: 2px 6px;
      border-radius: 5px;
      font-size: 9px;
      line-height: 1.25;
      letter-spacing: 0;
    }
  }

  /* ---------- Mobile 2-column grid option ---------- */
  @media (max-width: 749px) {
    .hpc--m-grid .hpc__track {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      row-gap: 20px;
      margin: 0;
      padding: 0;
      overflow: visible;
      touch-action: auto;
    }
    .hpc--m-grid .hpc__slide {
      flex: none;
    }
  }

  /* ---------- Desktop ---------- */
  @media (min-width: 750px) {
    .hpc {
      --hpc-cols: var(--hpc-cols-t);
      padding-top: var(--hpc-pt);
      padding-bottom: var(--hpc-pb);
    }
    .hpc__header {
      margin-bottom: 24px;
    }
    .hpc__heading {
      font-size: var(--hpc-heading-d);
    }
    .hpc:not(.hpc--eyebrow-d) .hpc__eyebrow {
      display: none;
    }
    .hpc__track {
      gap: var(--hpc-gap-d);
      margin: 0;
      padding: 0;
      scroll-padding-inline: 0;
    }
    .hpc--d-slider .hpc__slide {
      flex-basis: calc((100% - (var(--hpc-cols) - 1) * var(--hpc-gap-d)) / var(--hpc-cols));
    }
    .hpc--d-grid .hpc__track {
      display: grid;
      grid-template-columns: repeat(var(--hpc-cols), minmax(0, 1fr));
      row-gap: 32px;
      overflow: visible;
      touch-action: auto;
    }
    .hpc--d-grid .hpc__slide {
      flex: none;
    }

    .hpc__badges {
      top: 12px;
      left: 12px;
    }
    .hpc__count {
      bottom: 12px;
      left: 12px;
      font-size: 13px;
    }
    .hpc__quick {
      right: 12px;
      bottom: 12px;
      width: 44px;
      height: 44px;
    }
    .hpc__heart {
      top: 8px;
      right: 8px;
    }
    .hpc__body {
      padding-top: 14px;
    }
    .hpc__title {
      font-size: var(--hpc-title-d);
    }
    .hpc__price {
      font-size: 18px;
    }

    .hpc--d-slider .hpc__nav {
      position: absolute;
      top: 34%;
      z-index: 3;
      display: grid;
      place-items: center;
      width: 44px;
      height: 44px;
      padding: 0;
      border: 0;
      border-radius: 50%;
      background: #fff;
      box-shadow: 0 2px 10px rgba(0, 0, 0, 0.18);
      color: #111;
      cursor: pointer;
      transform: translateY(-50%);
    }
    .hpc--d-slider .hpc__nav--prev {
      left: 8px;
    }
    .hpc--d-slider .hpc__nav--next {
      right: 8px;
    }
    .hpc--d-slider .hpc__nav:disabled {
      cursor: default;
      opacity: 0.35;
    }
  }
  @media (min-width: 990px) {
    .hpc {
      --hpc-cols: var(--hpc-cols-d);
    }
  }

  /* ---------- Quick-add pop-up ---------- */
  html.hpc-lock {
    overflow: hidden;
  }
  .hpc-modal {
    width: min(92vw, 520px);
    max-width: none;
    max-height: 92vh;
    max-height: 92dvh;
    padding: 0;
    border: 0;
    border-radius: 24px;
    background: #fff;
    color: var(--hpc-text);
    box-shadow: 0 24px 60px rgba(0, 0, 0, 0.3);
    overflow: hidden;
  }
  .hpc-modal::backdrop {
    background: rgba(0, 0, 0, 0.5);
  }
  .hpc-modal__inner {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: 22px;
    max-height: inherit;
    padding: 28px;
    overflow-y: auto;
    overscroll-behavior: contain;
  }
  .hpc-modal__close {
    position: absolute;
    top: 16px;
    right: 16px;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #f0f0f2;
    color: #111;
    cursor: pointer;
  }
  .hpc-modal__close:focus-visible,
  .hpc-modal__add:focus-visible {
    outline: 3px solid var(--hpc-accent);
    outline-offset: 2px;
  }
  .hpc-modal__head {
    display: flex;
    align-items: center;
    gap: 16px;
    padding-right: 48px;
  }
  .hpc-modal__thumb {
    flex: none;
    width: 64px;
    height: 64px;
    overflow: hidden;
    border-radius: 12px;
    background: var(--hpc-card-bg);
  }
  .hpc-modal__thumb img {
    display: block;
    width: 100%;
    height: 100%;
    padding: 6%;
    mix-blend-mode: multiply;
    object-fit: contain;
  }
  .hpc-modal__meta {
    min-width: 0;
  }
  .hpc-modal__title {
    margin: 0 0 4px;
    font-family: var(--font-heading-family, inherit);
    font-size: 18px;
    font-weight: 800;
    line-height: 1.15;
    text-transform: uppercase;
  }
  .hpc-modal__price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 2px 8px;
    margin: 0;
    font-size: 16px;
    font-weight: 700;
  }
  .hpc-modal__price.is-sale span {
    color: var(--hpc-sale);
  }
  .hpc-modal__price s {
    font-weight: 500;
    opacity: 0.5;
  }
  .hpc-modal__options {
    display: flex;
    flex-direction: column;
    gap: 20px;
  }
  .hpc-modal__opt {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
  }
  .hpc-modal__legend {
    margin-bottom: 10px;
    padding: 0;
    color: #6b6b73;
    font-size: 14px;
    font-weight: 500;
  }
  .hpc-modal__legend strong {
    color: #111;
    font-weight: 700;
  }
  .hpc-modal__values {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
  }
  .hpc-modal__chip {
    position: relative;
    display: block;
    cursor: pointer;
  }
  .hpc-modal__radio {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
    cursor: pointer;
  }
  .hpc-modal__face {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 12px 18px;
    border: 1px solid #e2e2e6;
    border-radius: 12px;
    background: #fff;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.2;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
  }
  .hpc-modal__chip:hover .hpc-modal__face {
    border-color: #c8c8ce;
  }
  .hpc-modal__radio:checked + .hpc-modal__face {
    border-color: var(--hpc-accent);
    box-shadow: inset 0 0 0 1px var(--hpc-accent);
  }
  .hpc-modal__radio:focus-visible + .hpc-modal__face {
    outline: 3px solid var(--hpc-accent);
    outline-offset: 2px;
  }
  .hpc-modal__face.is-unavailable {
    color: #8a8a92;
    text-decoration: line-through;
  }
  .hpc-modal__dot {
    flex: none;
    width: 16px;
    height: 16px;
    border: 1px solid rgba(0, 0, 0, 0.12);
    border-radius: 50%;
    background-position: center;
    background-size: cover;
  }
  .hpc-modal__error {
    margin: 0;
    padding: 10px 14px;
    border-radius: 10px;
    background: #fdecee;
    color: #a4202c;
    font-size: 14px;
    font-weight: 500;
  }
  .hpc-modal__add {
    width: 100%;
    padding: 18px 20px;
    border: 0;
    border-radius: 14px;
    background: var(--hpc-cta-bg);
    color: var(--hpc-cta-text);
    cursor: pointer;
    font-family: var(--font-heading-family, inherit);
    font-size: 16px;
    font-weight: 800;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    transition: filter 0.2s ease, opacity 0.2s ease;
  }
  .hpc-modal__add:hover:not(:disabled) {
    filter: brightness(1.08);
  }
  .hpc-modal__add:disabled {
    cursor: not-allowed;
    opacity: 0.45;
  }
  .hpc-modal__add.is-loading {
    opacity: 0.65;
    pointer-events: none;
  }

  /* Bottom sheet on mobile */
  @media (max-width: 749px) {
    .hpc-modal {
      width: 100%;
      margin: auto 0 0;
      border-radius: 24px 24px 0 0;
    }
    .hpc-modal__inner {
      padding: 24px 20px 28px;
    }
  }

  /* ---------- Toast ---------- */
  .hpc__toast {
    position: fixed;
    bottom: 20px;
    left: 50%;
    z-index: 1000;
    display: flex;
    align-items: center;
    gap: 14px;
    max-width: calc(100vw - 32px);
    padding: 14px 20px;
    border-radius: 14px;
    background: #111;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    opacity: 0;
    transform: translate(-50%, 16px);
    transition: opacity 0.25s ease, transform 0.25s ease;
  }
  .hpc__toast.is-visible {
    opacity: 1;
    transform: translate(-50%, 0);
  }
  .hpc__toast.is-error {
    background: #a4202c;
  }
  .hpc__toast a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 3px;
  }

  @media (prefers-reduced-motion: reduce) {
    .hpc__quick,
    .hpc-modal__face,
    .hpc-modal__add,
    .hpc__toast {
      transition: none;
    }
    .hpc__quick:hover:not(:disabled) {
      transform: none;
    }
  }

  @media (max-width: 850px){
    span.hpc__badge.hpc__badge--sold {
    font-size: 10px !important;
    font-weight: normal !important;
}
  }
/* END_SECTION:products-slider */

/* START_SECTION:trust-features (INDEX:109) */
/* ============================================================
   SECTION
   ============================================================ */

.htf {

  padding-top:
    calc(var(--htf-pt) * 0.5);

  padding-bottom:
    calc(var(--htf-pb) * 0.5);

}


.htf *,
.htf *::before,
.htf *::after {

  box-sizing: border-box;

}



/* ============================================================
   CONTAINER
   ============================================================ */

.htf__container {

  max-width:
    var(--htf-max-w);

  margin-inline:
    auto;

  padding-inline:
    var(--htf-side);

}

@media (max-width: 750px) {
    #shopify-section-template--32332565348682__trust_features_EtFYeH .htf__card {
        padding: 2px !important;
    }
}


/* ============================================================
   OUTER CARD
   ============================================================ */

.htf__card {

  border-radius:
    var(--htf-card-radius);

  border:
    1px solid var(--htf-card-border);

  background:
    var(--htf-card-bg);

  padding:
    var(--htf-card-pad);

}



/* ============================================================
   INTRO
   ============================================================ */

.htf__intro {

  margin-bottom:
    18px;

}


.htf__eyebrow {

  margin:
    0 0 8px;

  color:
    var(--htf-eyebrow);

  font-size:
    12px;

  font-weight:
    700;

  letter-spacing:
    0.08em;

  line-height:
    1.3;

  text-transform:
    uppercase;

}


.htf__heading {

  margin:
    0 0 10px;

  color:
    var(--htf-text);

  font-family:
    var(--font-heading-family, inherit);

  font-size:
    var(--htf-h-size-m);

  font-style:
    var(--font-heading-style, normal);

  font-weight:
    var(--font-heading-weight, 800);

  line-height:
    1.15;

  text-transform:
    var(--htf-heading-tt);

}


.htf__h-accent {

  color:
    var(--htf-accent);

}


.htf__subtext {

  margin:
    0;

  color:
    var(--htf-subtext);

  font-size:
    14px;

  line-height:
    1.5;

}



/* ============================================================
   MOBILE GRID
   2 COLUMNS
   ============================================================ */

.htf__grid {

  display:
    grid;

  grid-template-columns:
    repeat(2, minmax(0, 1fr));

  gap:
    var(--htf-gap-m);

  margin:
    0;

  padding:
    0;

  list-style:
    none;

}



/* ============================================================
   FEATURE ITEM
   ============================================================ */

.htf__item {

  display:
    flex;

  align-items:
    flex-start;

  gap:
    10px;

  min-width:
    0;

  padding:
    14px;

  border:
    1px solid var(--htf-item-border);

  border-radius:
    var(--htf-item-radius);

  background:
    var(--htf-item-bg);

}



/* ============================================================
   ICON
   ============================================================ */

.htf__icon {

  display:
    grid;

  flex:
    none;

  place-items:
    center;

  width:
    var(--htf-icon-size-m);

  height:
    var(--htf-icon-size-m);

  border-radius:
    50%;

  background:
    var(--htf-icon-bg);

  color:
    var(--htf-icon-color);

}


.htf__icon svg {

  width:
    52%;

  height:
    52%;

}


.htf__icon img {

  display:
    block;

  width:
    55%;

  height:
    55%;

  object-fit:
    contain;

}



/* ============================================================
   CONTENT
   ============================================================ */

.htf__item-body {

  display:
    flex;

  flex-direction:
    column;

  gap:
    4px;

  min-width:
    0;

  padding-top:
    2px;

}


.htf__item-title {

  color:
    var(--htf-text);

  font-family:
    var(--font-heading-family, inherit);

  font-size:
    var(--htf-item-title-m);

  font-weight:
    800;

  line-height:
    1.2;

}


.htf__item-text {

  color:
    var(--htf-subtext);

  font-size:
    var(--htf-item-text-m);

  line-height:
    1.4;

}



/* ============================================================
   DESKTOP
   4 FEATURES IN ONE ROW
   ============================================================ */

@media (min-width: 750px) {

  .htf {

    padding-top:
      var(--htf-pt);

    padding-bottom:
      var(--htf-pb);

  }


  .htf__intro {

    margin-bottom:
      24px;

  }


  .htf__heading {

    font-size:
      var(--htf-h-size-d);

  }


  .htf__subtext {

    font-size:
      16px;

  }


  /* --------------------------------------------
     DESKTOP: 4 COLUMNS
     -------------------------------------------- */

  .htf__grid {

    grid-template-columns:
      repeat(4, minmax(0, 1fr));

    gap:
      var(--htf-gap-d);

  }


  .htf__item {

    gap:
      16px;

    padding:
      20px 22px;

  }


  .htf__icon {

    width:
      var(--htf-icon-size-d);

    height:
      var(--htf-icon-size-d);

  }


  .htf__item-title {

    font-size:
      var(--htf-item-title-d);

  }


  .htf__item-text {

    font-size:
      var(--htf-item-text-d);

  }

}
/* END_SECTION:trust-features */

/* START_SECTION:trustpilot-reviews (INDEX:112) */
.trs,
  .trs *,
  .trs *::before,
  .trs *::after {
    box-sizing: border-box;
  }
  .trs {
    padding-top: calc(var(--trs-pt) * 0.6);
    padding-bottom: calc(var(--trs-pb) * 0.6);
    background: var(--trs-bg);
    overflow: hidden;
  }
  .trs__container {
    max-width: var(--trs-max-w);
    margin-inline: auto;
    padding-inline: var(--trs-side);
  }

  /* ---------- Rating summary ---------- */
  .trs__summary {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 8px 12px;
    margin-bottom: 10px;
    text-align: center;
  }
  .trs__logo {
    height: 20px;
    width: auto;
  }
  .trs__badge {
    padding: 3px 10px;
    border-radius: 999px;
    background: var(--trs-accent);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.02em;
    text-transform: uppercase;
  }
  .trs__summary-text {
    color: var(--trs-subdued);
    font-size: var(--trs-summary-size-m);
    font-weight: 500;
  }
  .trs__summary-text strong {
    color: var(--trs-text);
    font-weight: 800;
  }
  .trs__link {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    color: var(--trs-accent);
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
  }
  .trs__link:hover {
    text-decoration: underline;
    text-underline-offset: 3px;
  }

  /* 5-star rating rendered with a gradient-clipped mask: no JS, no per-star markup */
  .trs__stars,
  .trs__card-stars {
    --star-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2l2.9 6.9 7.1.6-5.4 4.7 1.7 7.3L12 17.8l-6.3 3.7 1.7-7.3L2 9.5l7.1-.6z'/%3E%3C/svg%3E");
    display: inline-block;
    flex: none;
    background-image: linear-gradient(90deg, var(--trs-star) var(--rating, 0%), #d8d8dc var(--rating, 0%));
    -webkit-mask-image: var(--star-mask);
    mask-image: var(--star-mask);
    -webkit-mask-repeat: repeat-x;
    mask-repeat: repeat-x;
  }
  .trs__stars {
    width: 100px;
    height: 18px;
    -webkit-mask-size: 20px 18px;
    mask-size: 20px 18px;
  }
  .trs__card-stars {
    width: 90px;
    height: 16px;
    margin: 0 auto 10px;
    -webkit-mask-size: 18px 16px;
    mask-size: 18px 16px;
  }

  /* ---------- Heading ---------- */
  .trs__heading {
    margin: 4px 0 28px;
    color: var(--trs-text);
    font-family: var(--font-heading-family, inherit);
    font-size: var(--trs-heading-size-m);
    font-weight: 700;
    line-height: 1.2;
  }
  .trs__heading--center {
    text-align: center;
  }
  .trs__heading--left {
    text-align: left;
  }

  /* ---------- Manual swipe/drag slider ---------- */
  .trs__slider {
    position: relative;
  }
  .trs__viewport {
    position: relative;
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    overscroll-behavior-inline: contain;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    cursor: grab;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 5%, #000 95%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 5%, #000 95%, transparent 100%);
  }
  .trs__viewport::-webkit-scrollbar {
    display: none;
  }
  .trs__viewport.is-dragging {
    cursor: grabbing;
    scroll-behavior: auto;
    scroll-snap-type: none;
    user-select: none;
  }
  .trs__track {
    display: flex;
    gap: var(--trs-gap);
    width: max-content;
    margin: 0;
    padding: 4px max(var(--trs-side), 44px) 8px;
    list-style: none;
  }
  .trs__nav {
    position: absolute;
    z-index: 3;
    top: 50%;
    display: grid;
    place-items: center;
    width: 34px;
    height: 34px;
    padding: 0;
    border: 1px solid var(--trs-card-border);
    border-radius: 50%;
    background: var(--trs-card-bg);
    color: var(--trs-text);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
    cursor: pointer;
    transform: translateY(-50%);
    transition: opacity 160ms ease, transform 160ms ease, box-shadow 160ms ease;
  }
  .trs__nav:hover {
    transform: translateY(-50%) scale(1.06);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.16);
  }
  .trs__nav:focus-visible {
    outline: 2px solid var(--trs-accent);
    outline-offset: 3px;
  }
  .trs__nav:disabled {
    opacity: 0.35;
    cursor: default;
    transform: translateY(-50%);
  }
  .trs__nav[hidden] {
    display: none;
  }
  .trs__nav--prev {
    left: 10px;
  }
  .trs__nav--next {
    right: 10px;
  }

  /* ---------- Card ---------- */
  .trs__card {
    flex: 0 0 var(--trs-card-w-m);
    width: var(--trs-card-w-m);
    padding: 20px;
    border: 1px solid var(--trs-card-border);
    border-radius: var(--trs-radius);
    background: var(--trs-card-bg);
    scroll-snap-align: center;
    text-align: center;
  }
  .trs--card-hover .trs__card {
    transition: transform var(--trs-hover-speed) ease, box-shadow var(--trs-hover-speed) ease, border-color var(--trs-hover-speed) ease;
  }
  .trs--card-hover .trs__card:hover,
  .trs--card-hover .trs__card:focus-within {
    transform: translateY(calc(var(--trs-hover-lift) * -1px));
    border-color: transparent;
    box-shadow: 0 calc(var(--trs-hover-lift) * 3px) var(--trs-shadow-blur) var(--trs-shadow-color);
  }
  @media (prefers-reduced-motion: reduce) {
    .trs--card-hover .trs__card {
      transition: box-shadow var(--trs-hover-speed) ease;
    }
    .trs--card-hover .trs__card:hover,
    .trs--card-hover .trs__card:focus-within {
      transform: none;
    }
  }
  .trs__card-head {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-bottom: 12px;
  }
  .trs__avatar {
    display: grid;
    flex: none;
    place-items: center;
    width: 38px;
    height: 38px;
    overflow: hidden;
    border-radius: 50%;
    background: var(--trs-accent);
  }
  .trs__avatar img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .trs__avatar-initial {
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
  }
  .trs__who {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    text-align: center;
  }
  .trs__name {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    color: var(--trs-text);
    font-size: var(--trs-name-size-m);
    font-weight: 700;
    line-height: 1.3;
  }
  .trs__verified {
    flex: none;
    color: var(--trs-accent);
  }
  .trs__verified-label {
    display: none;
  }
  .trs__date {
    color: var(--trs-subdued);
    font-size: var(--trs-date-size-m);
  }
  .trs__text {
    margin: 0;
    color: var(--trs-text);
    font-size: var(--trs-body-size-m);
    line-height: 1.55;
    opacity: 0.88;
    text-align: center;
  }

  /* Let the first and last cards snap to the center on phones as well. */
  @media (max-width: 749px) {
    .trs__track {
      padding-right: max(44px, calc((100vw - var(--trs-card-w-m)) / 2));
      padding-left: max(44px, calc((100vw - var(--trs-card-w-m)) / 2));
    }
  }

  /* ---------- Desktop ---------- */
  @media (min-width: 750px) {
    .trs {
      padding-top: var(--trs-pt);
      padding-bottom: var(--trs-pb);
    }
    .trs__heading {
      font-size: var(--trs-heading-size-d);
    }
    .trs__summary-text {
      font-size: var(--trs-summary-size-d);
    }
    .trs__name {
      font-size: var(--trs-name-size-d);
    }
    .trs__date {
      font-size: var(--trs-date-size-d);
    }
    .trs__text {
      font-size: var(--trs-body-size-d);
    }
    .trs__card {
      flex-basis: var(--trs-card-w-d);
      width: var(--trs-card-w-d);
      padding: 24px;
    }
  }
/* END_SECTION:trustpilot-reviews */