@charset "UTF-8";
/*md

# Icons

List of all icons is [here](./iconsvfc.html)

Please see [icons](./styles-mixins-doc-_icons.html) documentation for details.

*/
/* h:\projects\vfc\reference-theme\src\components\accordion\accordion.scss */
[data-accordion] {
  display: block;
  overflow: hidden;
}
[data-accordion][data-active=true] [data-accordion-open] {
  display: none;
}
[data-accordion][data-active=false] [data-accordion-close] {
  display: none;
}
[data-accordion][data-active=false] [data-accordion-content] {
  display: none;
}

.accordion__header {
  padding: var(--spacing-400) 0;
}

.accordion__header-inner {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-gap: var(--spacing-100);
  align-items: center;
  min-height: 24px;
  position: relative;
}

.accordion__button {
  display: inline-block;
  color: var(--typography-color-default);
  border: none;
  background-color: transparent;
  height: 24px;
  width: 24px;
  padding: 4px;
}
.accordion__button * {
  height: 100%;
  width: 100%;
}

.accordion__icon {
  position: relative;
}

.accordion__icon-horizontal {
  position: absolute;
}

.accordion__icon-vertical {
  position: absolute;
  opacity: 1;
  transition: opacity 0.3s, transform 0.3s;
}

[data-accordion][data-active=true] .accordion__icon-vertical {
  transform: rotate(90deg);
  opacity: 0;
}

.accordion__icon-chevron {
  transition: transform 0.3s;
}

[data-accordion][data-active=true] .accordion__icon-chevron {
  transform: rotate(180deg);
}

.accordion__content-preview {
  padding-bottom: var(--spacing-400);
}

[data-accordion][data-active=true] .accordion__content-preview {
  display: none;
}

.accordion__content {
  padding-bottom: var(--spacing-400);
}

.accordion__footer-button {
  display: block;
}

.accordion__footer-label {
  display: flex;
  justify-content: start;
  align-items: center;
  font-weight: 700;
}
.accordion__footer-label > * + * {
  margin-left: var(--spacing-100);
}

/* h:\projects\vfc\reference-theme\src\components\accordion-mobile-links\accordion-mobile-links.scss */
.accordion-mobile-links[data-component=accordion-mobile-links] {
  display: block;
  /* When open: hide the vertical bar */
}
.accordion-mobile-links[data-component=accordion-mobile-links] > div {
  border-top: 1px solid var(--color-neutrals-1000);
  padding: var(--spacing-500) 0;
  position: relative;
  margin-bottom: 0;
}
.accordion-mobile-links[data-component=accordion-mobile-links] .accordion-mobile-links__toggle-indicator {
  display: block;
  position: absolute;
  width: 24px;
  height: 24px;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  /* Horizontal bar */
  /* Vertical bar */
}
.accordion-mobile-links[data-component=accordion-mobile-links] .accordion-mobile-links__toggle-indicator::before, .accordion-mobile-links[data-component=accordion-mobile-links] .accordion-mobile-links__toggle-indicator::after {
  content: "";
  position: absolute;
  background-color: #333;
}
.accordion-mobile-links[data-component=accordion-mobile-links] .accordion-mobile-links__toggle-indicator::after {
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  transform: translateY(-50%);
}
.accordion-mobile-links[data-component=accordion-mobile-links] .accordion-mobile-links__toggle-indicator::before {
  top: 0;
  left: 50%;
  width: 2px;
  height: 100%;
  transform: translateX(-50%);
}
.accordion-mobile-links[data-component=accordion-mobile-links] ul li:last-child {
  padding-bottom: var(--spacing-400);
}
.accordion-mobile-links[data-component=accordion-mobile-links].is-open .accordion-mobile-links__toggle-indicator::before {
  transform: translateX(-50%) scaleY(0);
}
@media (min-width: 769px) {
  .accordion-mobile-links[data-component=accordion-mobile-links] > div {
    border-top: none;
    padding: 0;
    margin-bottom: var(--spacing-400);
  }
  .accordion-mobile-links[data-component=accordion-mobile-links] .accordion-mobile-links__toggle-indicator {
    display: none;
  }
}

/* h:\projects\vfc\reference-theme\src\components\badge\badge.scss */
/*md
# Badges

```html_example
<div class="badge">
This is badge
</div>
```
*/
.badge {
  display: inline-flex;
  padding: var(--spacing-50, 4px) var(--spacing-200, 8px) var(--spacing-25, 2px) var(--spacing-200, 8px);
  align-items: center;
  gap: var(--spacing-50, 4px);
  border-radius: var(--borders-radius-radius-none, 0px);
  border: 1px solid var(--borders-radius-color-black, #000);
  color: var(--typography-color-default, #000);
  /* Body/XSmall/Bold */
  font-family: var(--typography-styles-font-family-body, "Akkurat Pro");
  font-size: var(--typography-styles-sizing-body-xsmall, 12px);
  font-style: normal;
  font-weight: 700;
  line-height: var(--typography-styles-line-height-body-xsmall, 16px); /* 133.333% */
  letter-spacing: var(--typography-styles-tracking-body, 0px);
}

/* h:\projects\vfc\reference-theme\src\components\breadcrumbs\breadcrumbs.scss */
/*md
# Badges

```html_example
<div class="breadcrumbs">
<ul class="breadcrumbs__list">
<li class="breadcrumbs__item">
  <a href="#" class="breadcrumbs__link">123</a>
</li>
<li class="breadcrumbs__item">
  <a href="#" class="breadcrumbs__link">123</a>
</li>
<li class="breadcrumbs__item">
  <a href="#" class="breadcrumbs__link">123</a>
</li>
</ul>
</div>
```
*/
.breadcrumbs__list {
  display: flex;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
  list-style: none;
}

.breadcrumbs__item {
  display: flex;
  align-items: center;
}

.breadcrumbs__item:not(:last-child)::after {
  content: "";
  width: 16px;
  height: 16px;
  margin: var(--spacing-50) var(--spacing-50) var(--spacing-50) 2px;
  background-image: url('data:image/svg+xml,<svg viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12.7999 4.79964L23.4342 15.434C23.7467 15.7464 23.7467 16.2529 23.4342 16.5653L12.7999 27.1996" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  color: var(--color-neutrals-600);
}

.breadcrumbs__link {
  color: var(--color-text);
  text-decoration: none;
}

.breadcrumbs__link:hover {
  text-decoration: underline;
}

.breadcrumbs__text,
.breadcrumbs__link {
  color: var(--color-neutrals-600);
}

/* h:\projects\vfc\reference-theme\src\components\build-a-bundle\build-a-bundle.scss */
.build-a-bundle {
  background-color: var(--surface-primary);
}

.build-a-bundle__inner {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 769px) {
  .build-a-bundle__inner {
    padding: var(--spacing-700) var(--screens-desktop-margin);
  }
}
@media (max-width: 768px) {
  .build-a-bundle__inner {
    padding: var(--spacing-700) var(--screens-mobile-margin);
  }
}

.build-a-bundle__content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--spacing-600);
}
@media (max-width: 768px) {
  .build-a-bundle__content {
    align-items: flex-start;
    flex-direction: column;
  }
}

.build-a-bundle__header {
  display: flex;
  flex-direction: column;
}
@media (max-width: 768px) {
  .build-a-bundle__header {
    margin-bottom: var(--spacing-400);
  }
}

.build-a-bundle__description {
  max-width: 50rem;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 768px) {
  .build-a-bundle__description {
    margin-left: 0;
    margin-right: 0;
  }
}

.build-a-bundle__categories {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-600);
}

.build-a-bundle__category {
  margin-bottom: var(--spacing-400);
}

.build-a-bundle__category-title {
  margin-bottom: var(--spacing-400);
}

.build-a-bundle__slider {
  position: relative;
}
.build-a-bundle__slider .swiper-slide {
  width: 25%;
}
@media (max-width: 768px) {
  .build-a-bundle__slider .swiper-slide {
    width: 85%;
  }
}

.build-a-bundle__scrollbar {
  display: none;
}
@media (min-width: 769px) {
  .build-a-bundle__scrollbar {
    display: block;
    height: 4px;
    background-color: var(--color-primary-warmgray-200);
    margin-top: var(--spacing-400);
    position: relative;
    cursor: pointer;
  }
}

.build-a-bundle__scrollbar-drag {
  height: 100%;
  background-color: var(--buttons-primary-background);
  position: relative;
  cursor: grab;
}
.build-a-bundle__scrollbar-drag:active {
  cursor: grabbing;
}
.build-a-bundle__scrollbar-drag::before {
  content: "";
  position: absolute;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  background-color: var(--buttons-primary-background);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.build-a-bundle__scrollbar-drag::after {
  content: "";
  position: absolute;
  width: 0.75rem;
  height: 2px;
  background-color: var(--surface-primary);
  top: calc(50% - 2px);
  left: 50%;
  box-shadow: 0 4px 0 var(--surface-primary);
  transform: translate(-50%, -50%);
}

/* Selection states */
.build-a-bundle__product-wrapper {
  transition: opacity 0.3s ease, pointer-events 0.3s ease;
}

.build-a-bundle__product-wrapper--selected {
  position: relative;
  opacity: 1 !important;
  pointer-events: auto !important;
}

.build-a-bundle__product-wrapper--selected::after {
  content: "✓";
  position: absolute;
  top: 10px;
  right: 10px;
  width: 24px;
  height: 24px;
  background-color: var(--buttons-primary-background);
  color: var(--buttons-primary-text);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  z-index: 10;
}

.build-a-bundle__product-wrapper--disabled {
  opacity: 0.5;
  pointer-events: none;
}

.build-a-bundle__category--completed .build-a-bundle__product-wrapper:not(.build-a-bundle__product-wrapper--selected) {
  opacity: 0.5;
  pointer-events: none;
}

.build-a-bundle__category-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: var(--spacing-400);
}

.build-a-bundle__reset {
  font-size: 0.875rem;
  padding: 0.5rem 1rem;
}

.bundle-product-card--selected .product-card__add-to-cart {
  background-color: var(--buttons-primary-background);
  color: var(--buttons-primary-text);
}

.bundle-product-card--selected .product-card__add-to-cart::after {
  content: "✓";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.bundle-product-card--disabled {
  opacity: 0.5;
  pointer-events: none;
}

.bundle-product-card--disabled .product-card__add-to-cart {
  opacity: 0.5;
  cursor: not-allowed;
}

/* h:\projects\vfc\reference-theme\src\components\carousel-arrow\carousel-arrow.scss */
.carousel-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(255, 255, 255, 0.45);
  backdrop-filter: var(--background-blur);
  height: 44px;
  width: 44px;
  border-radius: var(--borders-radius-full);
}
.carousel-arrow.carousel-arrow--light {
  background-color: var(--ui-elements-controls-light);
}
.carousel-arrow.carousel-arrow--dark {
  background-color: var(--ui-elements-controls-dark);
}
@media (min-width: 768px) {
  .carousel-arrow:hover {
    background-color: var(--ui-elements-controls-light);
  }
}

/* h:\projects\vfc\reference-theme\src\components\checkbox\checkbox.scss */
/* Checkbox */
.checkbox-wrapper .checkbox {
  cursor: pointer;
  display: flex;
  flex-direction: row;
  padding-left: calc(24px + var(--spacing-200));
  position: relative;
  line-height: var(--spacing-600);
}
.checkbox-wrapper .checkbox input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.checkbox-wrapper .checkbox span {
  margin-top: var(--spacing-25);
}
.checkbox-wrapper .checkbox__indicator {
  position: absolute;
  top: var(--spacing-25);
  left: 0;
  height: 24px;
  width: 24px;
  background: transparent;
  border-radius: var(--ui-elements-forms-border-radius);
  border: 1px solid var(--ui-elements-forms-default);
}
.checkbox-wrapper .checkbox input:checked ~ .checkbox__indicator {
  background: var(--color-neutrals-1000);
}
.checkbox-wrapper .checkbox:hover input:not([disabled]):checked ~ .checkbox__indicator,
.checkbox-wrapper .checkbox input:checked:focus ~ .checkbox__indicator {
  background: var(--color-neutrals-1000);
}
.checkbox-wrapper .checkbox input:disabled ~ .checkbox__indicator {
  background: rgba(0, 0, 0, 0.08);
  pointer-events: none;
}
.checkbox-wrapper .checkbox__indicator:after {
  content: "";
  position: absolute;
  display: none;
}
.checkbox-wrapper .checkbox input:checked ~ .checkbox__indicator:after {
  display: block;
}
.checkbox-wrapper .checkbox .checkbox__indicator:after {
  /* checkmark styling */
  left: 8px;
  top: 3px;
  width: 6px;
  height: 11px;
  border: solid var(--icons-default-inverse);
  border-width: 0 1px 1px 0;
  transform: rotate(45deg);
}
.checkbox-wrapper .checkbox input:disabled ~ span,
.checkbox-wrapper .checkbox input:disabled ~ span .checkbox__count {
  color: var(--ui-elements-forms-disabled);
}
.checkbox-wrapper .checkbox input:disabled ~ .checkbox__indicator:after {
  border-radius: var(--ui-elements-forms-border-radius);
  border-color: var(--ui-elements-forms-disabled);
  background: rgba(0, 0, 0, 0.08);
}

/* Add these new styles for validation */
form-checkbox[data-invalid] .checkbox__indicator {
  border-color: var(--typography-color-error);
}

form-checkbox[data-invalid]:not([data-has-error-text]) [data-checkbox-label] {
  color: var(--typography-color-error);
}

.checkbox__error {
  display: none;
}

form-checkbox[data-invalid] .checkbox__error {
  color: var(--typography-color-error);
  display: block;
}

/* Required field indicator already handled by the * in the template */
.checkbox__count {
  color: currentColor;
}

/* Size filter specific styles */
.checkbox-wrapper__size {
  display: block;
  width: auto;
  min-width: 44px;
}

.checkbox-wrapper__size .checkbox {
  border-radius: var(--components-pickers-border-radius);
  border: var(--borders-width-standard, 1px) solid transparent;
  display: flex;
  height: 44px;
  padding: 0;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: var(--spacing-100);
  cursor: pointer;
}

.checkbox-wrapper__size .checkbox__input,
.checkbox-wrapper__size .checkbox__indicator {
  display: none;
}

/* Selected state */
.checkbox-wrapper__size[data-checked] .checkbox {
  border-bottom-color: var(--borders-color-black);
  background: var(--ui-elements-interactive-primary);
}

/* Hover state */
@media (hover: hover) {
  .checkbox-wrapper__size:not([data-disabled]) .checkbox:hover {
    border-bottom-color: var(--borders-color-black);
  }
}
/* Disabled state */
.checkbox-wrapper__size .checkbox__input:disabled + span,
.checkbox-wrapper__size[data-disabled] .checkbox__input:disabled + span {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
  text-decoration: line-through;
}

/* Focus state*/
.checkbox.body-medium:focus {
  outline: 2px solid initial;
}

/* h:\projects\vfc\reference-theme\src\components\collapsable-box\collapsable-box.scss */
.collapsable-box {
  display: block;
  transition: opacity 0.3s ease;
  padding: 25px;
  position: relative;
  width: 100%;
}
.collapsable-box [data-close-button] {
  position: absolute;
  top: 5px;
  right: 5px;
  cursor: pointer;
  background-color: transparent;
  border: none;
}
.collapsable-box [data-close-button]:hover {
  color: var(--color-neutrals-900);
}
.collapsable-box.fade-out {
  animation: fadeOut 0.3s forwards;
}
.collapsable-box.collapsable-box--success {
  background-color: var(--ui-elements-notifications-notifications-success);
}
.collapsable-box.collapsable-box--error {
  background-color: var(--ui-elements-notifications-notifications-error);
}

@keyframes fadeOut {
  to {
    opacity: 0;
    transform: translateY(-10px);
  }
}
/* h:\projects\vfc\reference-theme\src\components\color-swatch\color-swatch.scss */
.color-swatch {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-100);
  /* this is different from design to account for long colour names */
  /* this currently breaks pdp and the other colour swatches. Let's update when we start displaying them */
  /* width: 76px; */
}

.color-swatch__label {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-100);
  cursor: pointer;
}

.disabled .color-swatch__label {
  cursor: not-allowed;
}

.color-swatch__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.color-swatch__info {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

filter-drawer .color-swatch__info {
  flex-direction: row;
  margin-top: var(--spacing-50);
}
filter-drawer .color-swatch__info > span {
  margin-left: var(--spacing-50);
}

.color-swatch__count {
  color: inherit;
}

/* Disabled state */
input:disabled + .color-swatch__label {
  cursor: not-allowed;
}

input:disabled + .color-swatch__dot,
input:disabled + .color-swatch__label .color-swatch__circle {
  opacity: 0.4;
}

input:disabled + .color-swatch__label .color-swatch__circle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: -50%;
  width: 200%;
  height: 1px;
  background: var(--borders-color-medium);
  transform: rotate(-45deg);
  transform-origin: center;
}

input:disabled + .color-swatch__dot {
  border-color: var(--border-color-medium);
  color: var(--typography-color-disabled);
}

input:disabled ~ .color-swatch__info {
  color: var(--typography-color-disabled);
}

.color-swatch {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  flex-direction: column;
}

.color-swatch.default .color-swatch__dot {
  background-color: #777;
  background-image: url("https://cdn.shopify.com/s/files/1/0731/6353/8646/files/8883a46e7a2a60ee806e73a8052191be.png?v=1738452721");
  background-position: center;
  background-repeat: repeat;
}

.color-swatch__dot {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 1px solid var(--color-neutrals-400);
  position: relative;
  display: block;
  transition: box-shadow 0.2s ease;
}
.color-swatch__dot img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
  border-radius: 50%;
}
input:checked + .color-swatch__dot {
  border-color: var(--ui-elements-controls-brand);
}

filter-drawer .color-swatch__dot {
  border-radius: var(--borders-radius-none);
  position: relative;
}
filter-drawer .color-swatch__dot:before {
  content: "";
  position: absolute;
  top: 100%;
  right: 50%;
  left: 50%;
  height: 1px;
  margin-top: var(--spacing-50);
  background-color: var(--ui-elements-controls-brand);
  pointer-events: none;
  transition: left 0.2s, right 0.2s;
}

.color-swatch input:disabled + .color-swatch__dot:before {
  display: none;
}

/* Focus state */
.color-swatch__dot:focus {
  box-shadow: 0 0 0 2px white, 0 0 0 4px var(--color-neutrals-100);
}

/* Optional: Hover effect + Selected state */
input:checked + .color-swatch__dot:before {
  left: -1px;
  right: -1px;
}

@media (hover: hover) {
  .color-swatch:hover input:not([disabled]) + .color-swatch__dot:before {
    left: -1px;
    right: -1px;
  }
}
[data-option-wrapper].is-active .color-swatch__dot {
  box-shadow: 0 0 0 2px white, 0 0 0 4px black;
}

.color-swatch [disabled] + .color-swatch__dot::after {
  content: "";
  position: absolute;
  z-index: 100;
  top: 0;
  left: 0;
  margin: 0;
  width: 46px;
  height: 46px;
  background: linear-gradient(to top left, transparent calc(50% - 1px), var(--border-color-medium) 50%, transparent calc(50% + 1px));
  filter: brightness(0.5);
}

/* h:\projects\vfc\reference-theme\src\components\complete-look\complete-look.scss */
.complete-look {
  overflow: hidden;
  position: relative;
  display: block;
}
.complete-look img {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.complete-look .swiper-pagination {
  position: relative;
  top: auto;
  bottom: auto;
  padding: var(--spacing-200) var(--spacing-400) 0;
  gap: 2px;
}
.complete-look a {
  display: block;
  height: 100%;
  color: var(--color-neutrals-1000);
}
@media (hover: hover) {
  .complete-look a {
    transition: opacity 0.2s;
  }
  .complete-look a:hover {
    color: var(--color-neutrals-1000);
    opacity: 0.8;
  }
}
@media (min-width: 768px) {
  .complete-look .swiper-pagination {
    display: none;
  }
}

.complete-look__primary-product {
  position: relative;
}

.complete-look__primary-product-inner {
  overflow: hidden;
  position: relative;
  height: 125vw;
}
@media (min-width: 768px) {
  .complete-look__primary-product-inner {
    overflow: visible;
    height: auto;
    padding-top: 125%;
    position: static;
  }
}

.complete-look__heading {
  font-family: var(--heading-font);
  font-size: var(--heading-xsmall-size);
  font-weight: var(--heading-weight);
  line-height: var(--heading-xsmall-line-height);
  letter-spacing: calc(var(--heading-xsmall-size) * var(--heading-letter-spacing));
  text-transform: var(--heading-text-transform);
}
@media (min-width: 768px) {
  .complete-look__heading {
    font-family: var(--heading-font);
    font-size: var(--heading-small-size);
    font-weight: var(--heading-weight);
    line-height: var(--heading-small-line-height);
    letter-spacing: calc(var(--heading-small-size) * var(--heading-letter-spacing));
    text-transform: var(--heading-text-transform);
  }
}

.complete-look__label {
  padding: var(--spacing-200) var(--spacing-400) var(--spacing-100);
  font-family: var(--body-font);
  font-size: var(--body-xsmall-size);
  font-weight: var(--body-weight);
  line-height: var(--body-xsmall-line-height);
  letter-spacing: calc(var(--body-xsmall-size) * var(--body-letter-spacing));
}
@media (min-width: 768px) {
  .complete-look__label {
    position: absolute;
    bottom: var(--spacing-600);
    left: 30px;
    z-index: 2;
    max-width: calc(100% - 60px);
    padding: var(--spacing-50) var(--spacing-250);
    pointer-events: none;
    font-family: var(--body-font);
    font-size: var(--body-small-size);
    font-weight: var(--body-weight);
    line-height: var(--body-small-line-height);
    letter-spacing: calc(var(--body-small-size) * var(--body-letter-spacing));
  }
  .complete-look__label:after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background-color: var(--color-neutrals-0);
    backdrop-filter: blur(10px);
    opacity: 0.55;
  }
}

.complete-look__products .complete-look__product {
  overflow: hidden;
  position: relative;
  width: 171px;
  height: 214px;
}
@media (min-width: 768px) {
  .complete-look__products .complete-look__product {
    width: 100%;
    height: auto;
    padding-top: 125%;
  }
}

@media (min-width: 768px) {
  .complete-look__products-holder {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--spacing-25);
  }
}

.complete-look__products {
  margin-top: var(--spacing-25);
}
@media (min-width: 768px) {
  .complete-look__products {
    width: 100%;
    margin-top: 0;
  }
}

@media (min-width: 768px) {
  .complete-look__products-inner {
    flex-grow: 1;
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-auto-rows: minmax(min-content, max-content);
    gap: var(--spacing-25);
  }
}

@media (min-width: 768px) {
  .complete-look__products-holder--2 {
    grid-template-columns: 1fr 2fr;
  }
  .complete-look__products-holder--2 .complete-look__products-inner {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 768px) {
  .complete-look__products-holder--3 {
    grid-template-columns: repeat(7, 1fr);
  }
  .complete-look__products-holder--3 .complete-look__primary-product {
    grid-column: 1/span 4;
  }
  .complete-look__products-holder--3 .complete-look__products {
    grid-column: 5/span 3;
  }
  .complete-look__products-holder--3 .complete-look__products-inner {
    grid-template-columns: repeat(2, 1fr);
  }
  .complete-look__products-holder--3 .complete-look__product:last-child {
    grid-column: 1/span 2;
  }
}

@media (min-width: 768px) {
  .complete-look__products-holder--4 {
    grid-template-columns: repeat(2, 1fr);
  }
  .complete-look__products-holder--4 .complete-look__products-inner {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 768px) {
  .complete-look__products-holder--5 {
    grid-template-columns: repeat(9, 1fr);
  }
  .complete-look__products-holder--5 .complete-look__primary-product {
    grid-column: 1/span 3;
  }
  .complete-look__products-holder--5 .complete-look__products {
    grid-column: 4/span 6;
  }
  .complete-look__products-holder--5 .complete-look__products-inner {
    grid-template-columns: repeat(4, 1fr);
  }
  .complete-look__products-holder--5 .complete-look__product:last-child {
    grid-column: 3/span 2;
    grid-row: 1/span 2;
  }
}

@media (min-width: 768px) {
  .complete-look__products-holder--6 {
    grid-template-columns: repeat(8, 1fr);
  }
  .complete-look__products-holder--6 .complete-look__primary-product {
    grid-column: 1/span 3;
  }
  .complete-look__products-holder--6 .complete-look__products {
    grid-column: 4/span 5;
  }
  .complete-look__products-holder--6 .complete-look__products-inner {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* h:\projects\vfc\reference-theme\src\components\content-blocks\content-blocks.scss */
.content-blocks {
  color: var(--typography-color);
}
.content-blocks > * + * {
  margin-top: var(--spacing-600);
}
.content-blocks > h2, .content-blocks > h3 {
  margin-top: 0;
}

.content-blocks__buttons {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-400);
  justify-content: center;
}

.content-blocks--stack-buttons .content-blocks__buttons {
  flex-direction: column;
}

@media (min-width: 769px) {
  .content-blocks--left--desktop {
    text-align: left;
  }
  .content-blocks--left--desktop.content-blocks--stack-buttons .content-blocks__buttons {
    align-items: flex-start;
  }
  .content-blocks--left--desktop .content-blocks__buttons {
    justify-content: flex-start;
  }
}

@media (min-width: 769px) {
  .content-blocks--center--desktop {
    text-align: center;
  }
  .content-blocks--center--desktop.content-blocks--stack-buttons .content-blocks__buttons {
    align-items: center;
  }
  .content-blocks--center--desktop .content-blocks__buttons {
    justify-content: center;
  }
}

@media (min-width: 769px) {
  .content-blocks--right--desktop {
    text-align: right;
  }
  .content-blocks--right--desktop.content-blocks--stack-buttons .content-blocks__buttons {
    align-items: flex-end;
  }
  .content-blocks--right--desktop .content-blocks__buttons {
    justify-content: flex-end;
  }
}

@media (max-width: 768px) {
  .content-blocks--left--mobile {
    text-align: left;
  }
  .content-blocks--left--mobile.content-blocks--stack-buttons .content-blocks__buttons {
    align-items: flex-start;
  }
  .content-blocks--left--mobile .content-blocks__buttons {
    justify-content: flex-start;
  }
}

@media (max-width: 768px) {
  .content-blocks--center--mobile {
    text-align: center;
  }
  .content-blocks--center--mobile.content-blocks--stack-buttons .content-blocks__buttons {
    align-items: center;
  }
  .content-blocks--center--mobile .content-blocks__buttons {
    justify-content: center;
  }
}

@media (max-width: 768px) {
  .content-blocks--right--mobile {
    text-align: right;
  }
  .content-blocks--right--mobile.content-blocks--stack-buttons .content-blocks__buttons {
    align-items: flex-end;
  }
  .content-blocks--right--mobile .content-blocks__buttons {
    justify-content: flex-end;
  }
}

.content-blocks__heading {
  color: var(--typography-color);
  margin-top: 0;
}

.content-blocks__heading--highlight {
  color: var(--typography-color-brand);
}

.content-blocks__body > * + * {
  margin-top: var(--spacing-600);
}

.content-blocks__subheading {
  margin-top: 0;
}

/* Styling for when the layout is in a row on desktop */
@media (min-width: 769px) {
  .content-blocks--row {
    display: flex;
    justify-content: space-between;
  }
}

.content-blocks--center {
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.content-blocks--center .content-blocks__buttons {
  justify-content: center;
}

@media (min-width: 769px) {
  .content-blocks--row .content-blocks__content {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-200);
    max-width: 80%;
  }
}
@media (min-width: 769px) {
  .content-blocks--row .content-blocks__buttons {
    align-self: end;
  }
}

.content-blocks--row.content-blocks--right--desktop {
  flex-direction: row-reverse;
}

/* h:\projects\vfc\reference-theme\src\components\content-card\content-card.scss */
.content-card {
  position: relative;
  background-color: var(--surface-primary);
  height: 100%;
  display: flex;
  flex-direction: column;
  border-radius: var(--borders-radius-secondary);
}

.content-card__image {
  position: relative;
  width: 100%;
}
.content-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Image ratios */
.content-card--ratio-4-5 .content-card__image {
  aspect-ratio: 4/5;
}

.content-card--ratio-4-3 .content-card__image {
  aspect-ratio: 4/3;
}

.content-card--ratio-1-1 .content-card__image {
  aspect-ratio: 1/1;
}

/* Standard style */
.content-card--standard .content-card__content {
  color: var(--typography-color);
  padding: var(--spacing-400);
  flex: 1;
}
.content-card--standard .content-card__content > * + * {
  margin-top: var(--spacing-300);
}

/* Enhanced style */
.content-card--enhanced {
  text-align: center;
}
.content-card--enhanced .content-card__content {
  color: var(--typography-color);
  padding: var(--spacing-400);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-300);
}
.content-card--enhanced .content-card__heading {
  max-width: 20rem;
  margin-left: auto;
  margin-right: auto;
}
.content-card--enhanced .content-card__link {
  text-decoration: none;
}

/* Enhanced Icon style */
.content-card--enhanced-icon {
  text-align: center;
  background-color: transparent;
}
.content-card--enhanced-icon .content-card__content {
  margin-top: calc(var(--spacing-700) * -1);
  background-color: var(--color-neutrals-0);
  padding: var(--spacing-800) var(--spacing-400) var(--spacing-400);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-300);
}
.content-card--enhanced-icon .content-card__heading {
  max-width: 20rem;
  margin-left: auto;
  margin-right: auto;
}
.content-card--enhanced-icon .content-card__link {
  text-decoration: none;
}
.content-card--enhanced-icon .content-card__icon {
  display: flex;
  justify-content: center;
  z-index: 5;
}
.content-card--enhanced-icon .content-card__icon img {
  padding: var(--spacing-300);
  background: var(--surface-primary);
  border-radius: 100%;
}
.content-card--enhanced-icon .content-card__image img {
  position: absolute;
}

/* Overlay style */
.content-card--overlay {
  aspect-ratio: 1/1; /* Set default aspect ratio */
}
.content-card--overlay.content-card--ratio-4-5 {
  aspect-ratio: 4/5;
}
.content-card--overlay.content-card--ratio-4-3 {
  aspect-ratio: 4/3;
}
.content-card--overlay.content-card--ratio-1-1 {
  aspect-ratio: 1/1;
}
.content-card--overlay .content-card__image {
  position: absolute;
  inset: 0;
  padding-bottom: 0; /* Remove padding-bottom */
}
.content-card--overlay .content-card__scrim {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, transparent 50%, rgba(0, 0, 0, 0.5));
  border-radius: var(--borders-radius-secondary);
}
.content-card--overlay .content-card__content {
  position: relative;
  height: 100%;
  padding: var(--spacing-400);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  color: var(--typography-color);
}
.content-card--overlay .content-card__link {
  position: absolute;
  bottom: var(--spacing-400);
  right: var(--spacing-400);
}
.content-card--overlay .content-card__icon {
  position: absolute;
  bottom: var(--spacing-500);
  right: var(--spacing-500);
  width: 2rem;
  height: 2rem;
  background-color: var(--surface-primary);
  border-radius: 50%;
  padding: 0.25rem;
  pointer-events: none;
  color: var(--typography-color);
  opacity: 0.5;
}

.content-card__link {
  text-decoration: none;
  color: inherit;
}

.content-card__link-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1rem;
}

.content-card__link-wrapper {
  text-decoration: none;
  color: inherit;
  position: absolute;
  inset: 0;
  display: block;
}

/* h:\projects\vfc\reference-theme\src\components\content-card-block\content-card-block.scss */
.content-card {
  position: relative;
  width: 100%;
  border-radius: var(--borders-radius-secondary);
  overflow: hidden;
}
.content-card.content-card--1-tile {
  grid-column: span 1;
}
.content-card.content-card--2-tile {
  grid-column: span 2;
}
.content-card.content-card--3-tile {
  grid-column: span 2;
}
@media (min-width: 769px) {
  .content-card.content-card--3-tile {
    grid-column: span 3;
  }
}
.content-card.content-card--4-tile {
  grid-column: span 2;
}
@media (min-width: 769px) {
  .content-card.content-card--4-tile {
    grid-column: span 4;
  }
}
.content-card__image {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.content-card__image picture {
  height: 100%;
}
.content-card__image.desktop-only {
  display: none;
}
.content-card__image.mobile-only {
  display: block;
}
@media (min-width: 768px) {
  .content-card__image.desktop-only {
    display: block;
  }
  .content-card__image.mobile-only {
    display: none;
  }
}
.content-card__img-responsive {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.content-card__content {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  min-height: 200px;
  padding: var(--spacing-400);
  background: -webkit-linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.44) 30%, rgba(0, 0, 0, 0.74) 100%);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.44) 30%, rgba(0, 0, 0, 0.74) 100%);
  color: var(--typography-color-inverse, #fff);
  transform: translate3d(0, 0, 0);
}
.content-card__eyebrow {
  margin-bottom: var(--spacing-200);
}
.content-card__heading {
  font-family: var(--display-font);
  font-size: var(--display-small-size);
  font-weight: var(--display-weight);
  line-height: var(--display-small-line-height);
  letter-spacing: calc(var(--display-small-size) * var(--display-letter-spacing));
  text-transform: var(--display-text-transform);
  margin-bottom: var(--spacing-100);
}
@media (min-width: 769px) {
  .content-card__heading {
    font-family: var(--display-font);
    font-size: var(--display-medium-size);
    font-weight: var(--display-weight);
    line-height: var(--display-medium-line-height);
    letter-spacing: calc(var(--display-medium-size) * var(--display-letter-spacing));
    text-transform: var(--display-text-transform);
  }
}
.content-card__body {
  font-family: var(--body-font);
  font-size: var(--body-large-size);
  font-weight: var(--body-weight);
  line-height: var(--body-large-line-height);
  letter-spacing: calc(var(--body-large-size) * var(--body-letter-spacing));
  margin-bottom: var(--spacing-400);
}
.content-card__link {
  font-family: var(--body-font);
  font-size: var(--body-medium-size);
  font-weight: var(--body-weight);
  line-height: var(--body-medium-line-height);
  letter-spacing: calc(var(--body-medium-size) * var(--body-letter-spacing));
  display: inline-flex;
  padding: var(--spacing-50, 4px) 0;
  align-items: center;
  gap: var(--spacing-100, 6px);
  text-decoration: none;
}
.content-card__link svg {
  width: 16px;
  height: 16px;
}
@media (hover: hover) {
  .content-card__link {
    transition: opacity 0.2s;
  }
  .content-card__link:hover {
    opacity: 0.8;
  }
}
@media (min-width: 769px) {
  .content-card__content {
    padding: var(--spacing-600);
  }
}

/* h:\projects\vfc\reference-theme\src\components\customer-service-banner\customer-service-banner.scss */
/*
 * Customer Service Template
 * - Layout structure for customer service pages
 * - Responsive behavior for sidebar and content
 */
#MainContent {
  display: flex;
  flex-wrap: wrap;
  max-width: 1440px;
  margin: 0 auto var(--spacing-1100);
  /* Banner styling */
  /* Sidebar styling */
  /* Main content area */
  /* Mobile adjustments */
  /* Desktop adjustments */
}
#MainContent .customer-service__banner {
  width: 100%;
  order: 1;
}
#MainContent .customer-service__banner .hero-banner.customer-service-banner {
  display: block;
  height: 150px;
}
@media (min-width: 798px) {
  #MainContent .customer-service__banner .hero-banner.customer-service-banner {
    height: 213px;
  }
}
#MainContent .customer-service__sidebar {
  width: 100%;
  order: 2;
  margin-top: var(--spacing-600);
  margin-bottom: var(--spacing-600);
}
@media (min-width: 798px) {
  #MainContent .customer-service__sidebar {
    width: 20%;
    margin-top: var(--spacing-300);
    margin-left: var(--screens-desktop-margin);
    margin-bottom: 0;
  }
}
#MainContent .shopify-section:not(.customer-service__banner):not(.customer-service__sidebar) {
  width: 100%;
  order: 3;
}
@media (min-width: 798px) {
  #MainContent .shopify-section:not(.customer-service__banner):not(.customer-service__sidebar) {
    width: 70%;
    margin-left: auto;
    margin-right: var(--screens-desktop-margin);
  }
}
#MainContent .shopify-section:last-child .rte-content {
  margin-bottom: 0;
}
@media (max-width: 798px) {
  #MainContent .shopify-section:not(.customer-service__banner) {
    margin-left: var(--screens-mobile-margin);
    margin-right: var(--screens-mobile-margin);
  }
}
@media (min-width: 798px) {
  #MainContent {
    gap: var(--spacing-800);
  }
}

/* h:\projects\vfc\reference-theme\src\components\customer-service-menu\customer-service-menu.scss */
.customer-service-menu {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-400);
  width: 100%;
}

.customer-service-menu__heading,
.customer-service-menu__list {
  display: none;
}

.customer-service-menu__list {
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-200);
  padding: 0;
}

.customer-service-menu__item {
  list-style: none;
}

.customer-service-menu .header__nav-link {
  position: relative;
  text-decoration: none;
}
.customer-service-menu .header__nav-link::after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  border-bottom: 1px solid var(--typography-color-hover-active);
  width: 0%;
  transition: width 0.3s ease-in-out;
}
.customer-service-menu .header__nav-link:hover::after, .customer-service-menu .header__nav-link[aria-current=page]::after {
  width: 100%;
}
.customer-service-menu .header__nav-link[aria-current=page] {
  color: var(--typography-color-hover-active);
}

@media (min-width: 769px) {
  .customer-service-menu__heading,
  .customer-service-menu__list {
    display: flex;
  }
  .customer-service-menu .styled-select {
    display: none;
  }
}
/* h:\projects\vfc\reference-theme\src\components\discontinued-slider\discontinued-slider.scss */
.content-card {
  position: relative;
  background-color: var(--surface-primary);
  height: 100%;
  display: flex;
  flex-direction: column;
  border-radius: var(--borders-radius-secondary);
}

.content-card__image {
  position: relative;
  width: 100%;
}
.content-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Image ratios */
.content-card--ratio-4-5 .content-card__image {
  aspect-ratio: 4/5;
}

.content-card--ratio-4-3 .content-card__image {
  aspect-ratio: 4/3;
}

.content-card--ratio-1-1 .content-card__image {
  aspect-ratio: 1/1;
}

/* Standard style */
.content-card--standard .content-card__content {
  color: var(--typography-color);
  padding: var(--spacing-400);
  flex: 1;
}
.content-card--standard .content-card__content > * + * {
  margin-top: var(--spacing-300);
}

/* Enhanced style */
.content-card--enhanced {
  text-align: center;
}
.content-card--enhanced .content-card__content {
  color: var(--typography-color);
  padding: var(--spacing-400);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-300);
}
.content-card--enhanced .content-card__heading {
  max-width: 20rem;
  margin-left: auto;
  margin-right: auto;
}
.content-card--enhanced .content-card__link {
  text-decoration: none;
}

/* Enhanced Icon style */
.content-card--enhanced-icon {
  text-align: center;
  background-color: transparent;
}
.content-card--enhanced-icon .content-card__content {
  margin-top: calc(var(--spacing-700) * -1);
  background-color: var(--color-neutrals-0);
  padding: var(--spacing-800) var(--spacing-400) var(--spacing-400);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-300);
}
.content-card--enhanced-icon .content-card__heading {
  max-width: 20rem;
  margin-left: auto;
  margin-right: auto;
}
.content-card--enhanced-icon .content-card__link {
  text-decoration: none;
}
.content-card--enhanced-icon .content-card__icon {
  display: flex;
  justify-content: center;
  z-index: 5;
}
.content-card--enhanced-icon .content-card__icon img {
  padding: var(--spacing-300);
  background: var(--surface-primary);
  border-radius: 100%;
}
.content-card--enhanced-icon .content-card__image img {
  position: absolute;
}

/* Overlay style */
.content-card--overlay {
  aspect-ratio: 1/1; /* Set default aspect ratio */
}
.content-card--overlay.content-card--ratio-4-5 {
  aspect-ratio: 4/5;
}
.content-card--overlay.content-card--ratio-4-3 {
  aspect-ratio: 4/3;
}
.content-card--overlay.content-card--ratio-1-1 {
  aspect-ratio: 1/1;
}
.content-card--overlay .content-card__image {
  position: absolute;
  inset: 0;
  padding-bottom: 0; /* Remove padding-bottom */
}
.content-card--overlay .content-card__scrim {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, transparent 50%, rgba(0, 0, 0, 0.5));
  border-radius: var(--borders-radius-secondary);
}
.content-card--overlay .content-card__content {
  position: relative;
  height: 100%;
  padding: var(--spacing-400);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  color: var(--typography-color);
}
.content-card--overlay .content-card__link {
  position: absolute;
  bottom: var(--spacing-400);
  right: var(--spacing-400);
}
.content-card--overlay .content-card__icon {
  position: absolute;
  bottom: var(--spacing-500);
  right: var(--spacing-500);
  width: 2rem;
  height: 2rem;
  background-color: var(--surface-primary);
  border-radius: 50%;
  padding: 0.25rem;
  pointer-events: none;
  color: var(--typography-color);
  opacity: 0.5;
}

.content-card__link {
  text-decoration: none;
  color: inherit;
}

.content-card__link-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1rem;
}

.content-card__link-wrapper {
  text-decoration: none;
  color: inherit;
  position: absolute;
  inset: 0;
  display: block;
}

/* h:\projects\vfc\reference-theme\src\components\discount\discount.scss */
.discount {
  align-items: center;
  background-color: var(--color-primary-essential-200);
  border-radius: 2px;
  display: flex;
  flex-direction: row;
  gap: 4px;
  justify-content: center;
  padding: 4px 8px;
}

.discount .icon-s {
  height: 12px;
  width: 12px;
}

.discount__text {
  font-family: var(--body-font);
  font-size: var(--body-xsmall-size);
  font-weight: var(--body-weight);
  line-height: var(--body-xsmall-line-height);
  letter-spacing: calc(var(--body-xsmall-size) * var(--body-letter-spacing));
  font-weight: 700;
}

/* h:\projects\vfc\reference-theme\src\components\drawer\drawer.scss */
/*
  Basic Drawer Styles
*/
.drawer {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
  visibility: hidden;
  pointer-events: none;
}

[data-active=true] .drawer {
  visibility: visible;
  pointer-events: auto;
}

.drawer__overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  display: flex;
  justify-content: flex-end;
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}

[data-active=true] .drawer__overlay {
  opacity: 1;
}

.drawer__container {
  background-color: var(--ui-elements-overlays-background);
  height: 100vh;
  width: 100%;
  max-width: 512px;
  overflow-y: auto;
  box-sizing: border-box;
  position: relative;
  transform: translateX(100%);
  transition: transform 0.3s ease-in-out;
}

[data-active=true] .drawer__container {
  transform: translateX(0);
}

.drawer__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--spacing-500);
  border-bottom: 1px solid var(--borders-color-light);
}

.drawer__title {
  margin: 0;
  color: var(--typography-color-brand);
  box-sizing: border-box;
}

.drawer__close {
  background: transparent;
  border: 0;
  padding: var(--spacing-200);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.drawer__content {
  padding: var(--spacing-500);
}

@media screen and (max-width: 768px) {
  .drawer__container {
    max-width: 100%;
  }
}
/* h:\projects\vfc\reference-theme\src\components\employee-discount\employee-discount.scss */
/* Banner */
.employee-discount-banner {
  display: none;
  background: var(--ui-elements-notifications-promo-callout-default);
  color: var(--typography-color-default);
  padding: var(--spacing-200);
  align-items: center;
  align-content: center;
  gap: var(--spacing-200);
  align-self: stretch;
  flex-wrap: wrap;
  justify-content: center;
}

/* Modal */
.employee-discount-modal .modal__container {
  max-width: 600px;
}

.employee-discount-modal p:not(:last-child) {
  margin-bottom: var(--spacing-100);
}

.employee-discount-modal .modal__footer {
  gap: var(--spacing-400);
  display: flex;
  flex-wrap: wrap;
}

/* h:\projects\vfc\reference-theme\src\components\enhanced-content-collection\enhanced-content-collection.scss */
.enhanced-content-collection {
  background-color: var(--surface-primary);
}

.enhanced-content-collection__inner {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
@media (min-width: 1025px) {
  .enhanced-content-collection__inner {
    display: flex;
  }
}

.enhanced-content-collection--full {
  max-width: 100%;
}

.enhanced-content-collection__image {
  aspect-ratio: 3/4;
  position: relative;
  overflow: hidden;
}
@media (min-width: 1025px) {
  .enhanced-content-collection__image {
    width: 48%;
    flex-shrink: 0;
  }
}
.enhanced-content-collection__image img {
  position: absolute;
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.enhanced-content-collection__header {
  padding-bottom: var(--spacing-900);
}
@media (min-width: 1025px) {
  .enhanced-content-collection__header {
    display: flex;
    justify-content: end;
    padding: var(--spacing-700) var(--screens-desktop-margin) var(--spacing-900);
  }
  .enhanced-content-collection__header .content-blocks {
    width: 65%;
  }
}

@media (max-width: 1024px) {
  .enhanced-content-collection__content {
    margin: var(--spacing-600) 0 var(--spacing-600) var(--screens-mobile-margin);
  }
}
@media (min-width: 1025px) {
  .enhanced-content-collection__content {
    flex: 1;
    width: 55%;
    margin-left: -10%;
    position: relative;
  }
}

@media (max-width: 1024px) {
  .enhanced-content-collection__slider .swiper-slide {
    width: 65%;
  }
}

.enhanced-content-collection__swiper {
  height: 0;
}
.enhanced-content-collection__swiper.swiper-initialized {
  height: 100%;
}

.enhanced-content-collection__nav {
  display: none;
}
@media (min-width: 1025px) {
  .enhanced-content-collection__nav {
    display: flex;
    justify-content: flex-end;
    position: absolute;
    bottom: var(--spacing-800);
    right: var(--screens-desktop-margin);
  }
}
.enhanced-content-collection__nav .swiper-button-disabled {
  color: var(--icons-disabled);
}
.enhanced-content-collection__nav .carousel-arrow {
  background: transparent;
}

/* h:\projects\vfc\reference-theme\src\components\enhanced-filtering-collection\enhanced-filtering-collection.scss */
.enhanced-filtering-collection {
  position: relative;
  background-color: var(--surface-primary);
  padding: var(--spacing-1000) 0 var(--spacing-700);
}
@media (min-width: 1025px) {
  .enhanced-filtering-collection {
    padding: var(--spacing-100) 0;
  }
}

.enhanced-filtering-collection__inner {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  padding: 0;
}
@media (min-width: 1025px) {
  .enhanced-filtering-collection__inner {
    padding: 0 var(--screens-desktop-margin);
    display: flex;
    align-items: center;
    gap: var(--spacing-800);
  }
}

.enhanced-filtering-collection__header {
  margin-bottom: var(--spacing-700);
  padding: 0 var(--screens-mobile-margin);
}
@media (min-width: 1025px) {
  .enhanced-filtering-collection__header {
    margin-bottom: 0;
    flex: 0 0 30%;
  }
}

@media (min-width: 1025px) {
  .enhanced-filtering-collection__filters {
    flex: 1;
    margin: 0 var(--spacing-1200);
  }
}

.enhanced-filtering-collection__filter-slider {
  display: flex;
  gap: var(--spacing-400);
  overflow-x: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
  padding-bottom: var(--spacing-300);
}
.enhanced-filtering-collection__filter-slider::-webkit-scrollbar {
  display: none;
}
@media (min-width: 1025px) {
  .enhanced-filtering-collection__filter-slider {
    flex-wrap: wrap;
    overflow: visible;
    gap: var(--spacing-800);
    padding-bottom: 0;
  }
}

.enhanced-filtering-collection__filter-item {
  flex: 0 0 65%; /* Show 1.5 items on mobile */
}
@media (min-width: 768px) {
  .enhanced-filtering-collection__filter-item {
    flex: 0 0 35%; /* Show 2.5 items on mid-sizes */
  }
}
@media (min-width: 1025px) {
  .enhanced-filtering-collection__filter-item {
    flex: 1 1 0;
  }
}

.enhanced-filtering-collection__filter-link {
  display: block;
  text-decoration: none;
  color: var(--text-primary);
  transition: opacity 0.3s ease;
  background: none;
  border: none;
  padding: var(--spacing-100);
  width: 100%;
  cursor: pointer;
}
.enhanced-filtering-collection__filter-link:hover {
  opacity: 0.8;
}
.enhanced-filtering-collection__filter-link.is-active .enhanced-filtering-collection__filter-image {
  outline: 2px solid var(--buttons-primary-background);
  outline-offset: 2px;
  border-radius: var(--borders-radius-default);
}

.enhanced-filtering-collection__filter-image {
  position: relative;
  padding-bottom: 125%;
  width: 100%;
  background-color: var(--surface-secondary);
  margin-bottom: var(--spacing-300);
  overflow: hidden;
}
.enhanced-filtering-collection__filter-image img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.enhanced-filtering-collection__filter-title {
  text-align: center;
  color: var(--typography-color);
}

/* h:\projects\vfc\reference-theme\src\components\enhanced-product-collection\enhanced-product-collection.scss */
.enhanced-product-collection {
  display: block;
  background-color: var(--surface-primary);
}

.enhanced-product-collection__inner {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
@media (min-width: 1025px) {
  .enhanced-product-collection__inner {
    display: flex;
  }
}

.enhanced-product-collection--full {
  max-width: 100%;
}

.enhanced-product-collection__image {
  aspect-ratio: 3/4;
  position: relative;
  overflow: hidden;
}
@media (min-width: 1025px) {
  .enhanced-product-collection__image {
    width: 48%;
    flex-shrink: 0;
  }
}
.enhanced-product-collection__image img {
  position: absolute;
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.enhanced-product-collection__header {
  padding-bottom: var(--spacing-900);
}
@media (min-width: 1025px) {
  .enhanced-product-collection__header {
    display: flex;
    justify-content: end;
    padding: var(--spacing-700) var(--screens-desktop-margin) var(--spacing-900);
  }
  .enhanced-product-collection__header .content-blocks {
    width: 65%;
  }
}

@media (max-width: 1024px) {
  .enhanced-product-collection__content {
    margin: var(--spacing-600) 0 var(--spacing-600) var(--screens-mobile-margin);
  }
}
@media (min-width: 1025px) {
  .enhanced-product-collection__content {
    flex: 1;
    width: 55%;
    margin-left: -10%;
    position: relative;
  }
}

@media (max-width: 1024px) {
  .enhanced-product-collection__slider .swiper-slide {
    width: 65%;
  }
}
.enhanced-product-collection__slider .product-card {
  padding: 0;
  margin-bottom: 0;
}
.enhanced-product-collection__slider .product-form-options {
  display: none;
}

.enhanced-product-collection__swiper {
  height: 0;
}
.enhanced-product-collection__swiper.swiper-initialized {
  height: 100%;
}

.enhanced-product-collection__nav {
  display: none;
}
@media (min-width: 1025px) {
  .enhanced-product-collection__nav {
    display: flex;
    justify-content: flex-end;
    position: absolute;
    bottom: var(--spacing-800);
    right: var(--screens-desktop-margin);
  }
}
.enhanced-product-collection__nav .swiper-button-disabled {
  color: var(--icons-disabled);
}
.enhanced-product-collection__nav .carousel-arrow {
  background: transparent;
}

/* h:\projects\vfc\reference-theme\src\components\feature-list-item\feature-list-item.scss */
.feature-list {
  display: grid;
  grid-gap: var(--components-accordions-content-gap);
  padding: 0;
}

.feature-list-item {
  display: grid;
  grid-template-columns: auto 1fr;
  grid-gap: var(--spacing-200);
  list-style: none;
}

.feature-list-item__image {
  position: relative;
  height: 72px;
  width: 72px;
}
.feature-list-item__image img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: contain;
}

/* h:\projects\vfc\reference-theme\src\components\filter-chip\filter-chip.scss */
filter-chip {
  display: inline-flex;
  margin: var(--spacing-50);
  vertical-align: top;
}
@media (min-width: 768px) {
  filter-chip {
    margin: var(--spacing-100) var(--spacing-50);
  }
}

.filter-chip {
  display: inline-flex;
  align-items: center;
  flex-flow: row nowrap;
  gap: var(--spacing-50);
  padding: var(--spacing-50) var(--spacing-200);
  background-color: var(--color-neutrals-25);
  border: none;
  transition: background-color 0.3s;
}
.filter-chip:hover {
  background: var(--color-neutrals-50);
}

.filter-chip__swatch {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-size: cover;
  background-position: center;
  background-color: var(--swatch-color);
  overflow: hidden;
  margin-right: var(--spacing-25);
}

.filter-chip__value {
  text-transform: capitalize;
}

.filter-chip__remove {
  color: var(--typography-color-default);
  background: none;
  padding: 0;
  cursor: pointer;
}

/* h:\projects\vfc\reference-theme\src\components\filter-chips\filter-chips.scss */
filter-chips {
  display: block;
}
filter-chips > span {
  display: block;
  margin-bottom: var(--spacing-200);
  font-size: var(--heading-small-size);
  line-height: var(--heading-small-line-height);
  font-weight: 300;
}
filter-chips:has(:where(.filter-chips__clear-all:first-child)) {
  display: none;
}

[data-filter-chips][data-active=false] {
  display: none;
}

/* Filter chips */
.filter-chips {
  margin: calc(var(--spacing-50) * -1);
  font-size: 0;
}

.filter-chips--mobile.filter-chips--visible {
  border-bottom: 1px solid var(--ui-elements-dividers-primary);
}

.filter-chips__clear-all {
  font-family: var(--body-font);
  font-size: var(--body-medium-size);
  font-weight: var(--body-weight);
  line-height: var(--body-medium-line-height);
  letter-spacing: calc(var(--body-medium-size) * var(--body-letter-spacing));
  color: var(--typography-color-default);
  text-decoration: underline;
  cursor: pointer;
  padding-left: calc(var(--spacing-200) + 1px);
  position: relative;
  background-color: transparent;
  border: none;
  text-decoration-line: underline;
  margin: var(--spacing-50);
  transition: opacity 0.2s;
  display: inline-flex;
  align-self: center;
  vertical-align: middle;
}
.filter-chips__clear-all:first-child {
  display: none;
}
.filter-chips__clear-all:hover, .filter-chips__clear-all:focus {
  opacity: 0.7;
  text-decoration: none;
}
.filter-chips__clear-all:after {
  content: "";
  position: absolute;
  top: -2px;
  left: 0;
  width: 1px;
  height: 28px;
  background-color: var(--color-neutrals-1000);
}

/* h:\projects\vfc\reference-theme\src\components\filter-drawer\filter-drawer.scss */
.filter-drawer__overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--color-neutrals-1000);
  opacity: 0.24;
  z-index: 299;
  cursor: pointer;
}

[data-filter-drawer][data-active=false] .filter-drawer__overlay {
  display: none;
}

.filter-drawer__drawer {
  display: grid;
  grid-template-rows: auto 1fr auto;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  max-width: 512px;
  background: var(--color-neutrals-0);
  z-index: 300;
  transform: translateX(100%);
  transition: transform 0.2s ease-in-out;
}

[data-filter-drawer][data-active=true] .filter-drawer__drawer {
  transform: translateX(0%);
}

.filter-drawer__header {
  color: var(--typography-color-default);
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--spacing-700) 0 var(--spacing-400);
  margin: 0 var(--spacing-400);
  border-bottom: 1px solid var(--ui-elements-dividers-primary);
}
@media (min-width: 769px) {
  .filter-drawer__header {
    margin: 0 var(--spacing-700);
    padding-bottom: var(--spacing-450);
  }
}

.filter-drawer__title {
  font-weight: 300;
  line-height: var(--spacing-700);
}

.filter-drawer__content {
  overflow-y: auto;
  margin: 0;
  padding: 0 var(--screens-mobile-margin);
}
@media (min-width: 769px) {
  .filter-drawer__content {
    padding: 0 var(--spacing-700);
  }
}

filter-drawer filter-chips {
  padding: var(--spacing-400) 0 var(--spacing-600);
  border-bottom: 1px solid var(--ui-elements-dividers-primary);
}

.filter-drawer .accordion__header-inner > span {
  font-weight: 300;
}

.filter-drawer__content [data-active=true] .accordion__content:has(.checkbox-wrapper__size) {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-100);
  flex-direction: row;
}

.filter-drawer__filters {
  overflow-y: auto;
}
.filter-drawer__filters .checkbox-wrapper .checkbox {
  font-weight: 300;
}
.filter-drawer__filters .checkbox-wrapper .checkbox input:disabled + * {
  color: var(--border-color-disabled);
}
.filter-drawer__filters .checkbox-wrapper .checkbox__indicator {
  top: 0;
}

.filter-drawer__footer {
  display: flex;
  border-top: 1px solid var(--border-color-light);
  gap: var(--spacing-400);
  padding: var(--spacing-400) var(--screens-mobile-margin);
  align-items: center;
  width: 100%;
  background-color: var(--ui-elements-overlays-default);
}

.filter-drawer__footer button {
  flex: 1;
  padding: var(--spacing-200) var(--spacing-700);
  min-width: 0;
  height: auto;
}
@media (min-width: 768px) {
  .filter-drawer__footer button {
    padding: var(--spacing-300) var(--spacing-700);
  }
}

/* h:\projects\vfc\reference-theme\src\components\filter-dropdown\filter-dropdown.scss */
.filter-dropdown {
  position: relative;
}

.filter-dropdown__header {
  position: relative;
  padding: 0 var(--spacing-200);
  border-radius: var(--borders-radius-default);
  border: var(--ui-elements-filter-border) solid var(--borders-color-medium);
  background: var(--ui-elements-filter-default);
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: var(--spacing-50);
  height: 35px;
  z-index: 11;
}

.filter-dropdown__header--simple {
  padding: 0;
  border: none;
  background: none;
  height: auto;
}

/* Active filter dropdown */
[data-filter-dropdown][data-active=true] .filter-dropdown__header:not(.filter-dropdown__header--simple) {
  background: var(--ui-elements-overlays-default);
  border-radius: var(--borders-radius-default) var(--borders-radius-default) 0 0;
}

[data-filter-dropdown][data-active=true] .filter-dropdown__header:not(.filter-dropdown__header--simple)::after {
  content: "";
  display: block;
  background: var(--ui-elements-overlays-default);
  position: absolute;
  left: -1px;
  right: -1px;
  bottom: -14px;
  height: 14px;
  z-index: 10;
  border-left: var(--ui-elements-overlays-optional-border) solid var(--borders-color-medium);
  border-right: var(--ui-elements-overlays-optional-border) solid var(--borders-color-medium);
}

filter-dropdown[data-active=true] .filter-dropdown__content {
  display: block;
  border-top-left-radius: 0;
}

.filter-dropdown__header .icon-s {
  transition: transform 0.2s ease;
}

[data-active=true] .filter-dropdown__header .icon-s {
  transform: rotate(180deg);
}

.filter-dropdown__content {
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 100%;
  width: max-content;
  padding: var(--spacing-600) var(--spacing-400);
  z-index: 10;
  margin-top: var(--spacing-300);
  display: none;
  border-radius: var(--borders-radius-default);
  border: var(--ui-elements-overlays-optional-border) solid var(--borders-color-medium);
  background: var(--ui-elements-overlays-default);
  box-shadow: 0px 4px 40px 0px rgba(0, 0, 0, 0.1);
}

.filter-dropdown form {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-200);
  max-height: 300px;
  overflow-y: auto;
}

/* Desktop styles */
@media (min-width: 1024px) {
  .filter-container__dropdowns {
    display: flex;
  }
  .filter-container__dropdowns-inner {
    display: flex;
    align-items: center;
    gap: var(--spacing-100);
  }
  .filter-container__dropdowns-inner--right {
    gap: var(--spacing-400);
  }
  /* Hide excess filters and show 'All Filters' button */
  .filter-container__dropdowns .filter-group:nth-child(n+8) {
    display: none;
  }
  .filter-dropdown__all {
    display: none;
  }
  .filter-container__dropdowns:has(.filter-group:nth-child(7)) .filter-dropdown__all {
    display: flex;
    align-items: center;
  }
}
/* h:\projects\vfc\reference-theme\src\components\filters-facets\filters-facets.scss */
.filter-container {
  z-index: 9;
  transition: top 0.3s ease-in-out;
  transition: padding-top 0.3s;
}
@media (max-width: 768px) {
  .filter-container {
    display: grid;
    grid-gap: var(--spacing-700);
    margin: 0;
  }
}

.filter-container__sticky-bar__outer {
  position: relative;
  height: var(--filter-bar-h);
  z-index: 19;
}

.filter-container__sticky-bar {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  padding: var(--spacing-300) var(--spacing-400);
  background-color: var(--color-neutrals-25);
}
.filter-container__sticky-bar[data-sticky] {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  transition: transform 0.3s ease-in-out;
  will-change: transform;
}
.filter-container__sticky-bar[data-sticky].is-sticky {
  position: fixed;
  transform: translate(-50%, var(--header-height));
}
@media (max-width: 768px) {
  .filter-container__sticky-bar[data-sticky].is-sticky {
    transform: translate(-50%, 0);
  }
}
[data-header-hidden] .filter-container__sticky-bar[data-sticky].is-sticky {
  transform: translate(-50%, 0);
}

.filter-container__inner {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

.filter-container__breadcrumbs {
  display: flex;
  padding: var(--spacing-400) var(--spacing-400) 0 0;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
}
@media (max-width: 768px) {
  .filter-container__breadcrumbs {
    justify-content: end;
  }
}

.filter-container__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.filter-container__header-inner {
  display: flex;
  flex-flow: row nowrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: var(--spacing-400);
  width: 100%;
  padding: var(--spacing-400) var(--spacing-400);
}

.filter-container__title {
  font-family: var(--heading-font);
  font-size: var(--heading-large-size);
  font-weight: var(--heading-weight);
  line-height: var(--heading-large-line-height);
  letter-spacing: calc(var(--heading-large-size) * var(--heading-letter-spacing));
  text-transform: var(--heading-text-transform);
}

.filter-container__count {
  flex: 1 1 auto;
  margin-bottom: var(--spacing-100);
  color: var(--color-neutrals-600);
  white-space: nowrap;
  text-align: right;
}

.filter-group [data-accordion]:not(:first-child) .accordion__header {
  border-top: 1px solid var(--ui-elements-dividers-primary);
}

.filter-container__mobile-trigger {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-50);
  white-space: nowrap;
}

.filter-container__filters {
  display: grid;
  grid-gap: var(--spacing-600);
}
@media (max-width: 768px) {
  .filter-container__filters {
    display: none;
  }
}

.filter-group .accordion__content:not(.accordion__content--one-line) {
  display: flex;
  gap: var(--spacing-600);
  flex-direction: column;
  padding-bottom: var(--spacing-400);
}

.filter-group-sorting__holder {
  padding: var(--spacing-400) 0 var(--spacing-600);
}
@media (min-width: 1024px) {
  .filter-group-sorting__holder {
    overflow: hidden;
  }
}

.filter-group-sorting__holder > span {
  display: block;
  margin-bottom: var(--spacing-200);
  font-weight: 300;
}

.filter-group-sorting__holder__inner {
  display: flex;
  flex-flow: row wrap;
  gap: var(--spacing-200);
  font-size: 0;
}
.filter-group-sorting__holder__inner radio-button.radio--button label {
  font-weight: 300;
}

/* Specific styling */
.price-range {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-200);
}

.price-range__field {
  display: flex;
  align-items: center;
  gap: var(--spacing-100);
}

.price-range__field input {
  width: 100px;
}

/* Desktop styles */
@media (min-width: 1024px) {
  .filter-container__title {
    margin-right: var(--spacing-400);
    color: var(--typography-color-default);
  }
}
.filter-inputs__color-swatch-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  justify-items: center;
  grid-gap: var(--spacing-elements-group-gap-interactive);
}
@media (min-width: 768px) {
  .filter-inputs__color-swatch-grid {
    grid-template-columns: repeat(6, 1fr);
  }
}

.filter-container__dropdowns {
  display: none;
  justify-content: space-between;
  gap: var(--spacing-50);
  margin: 0;
}

.filter-container__dropdowns .filter-group {
  position: relative;
}

.filter-container__dropdowns basic-accordion[data-active=true] .accordion__content {
  display: block;
}

.filter-container__dropdowns .filter-group--sort {
  appearance: none;
  -webkit-appearance: none;
  border-radius: var(--ui-elements-forms-border-radius);
  border: var(--ui-elements-forms-border-default) solid var(--ui-elements-forms-default);
  display: flex;
  position: relative;
  padding: 0 var(--spacing-200) 0 var(--spacing-300);
  align-items: center;
  gap: var(--spacing-200);
  background-color: transparent;
  cursor: pointer;
  padding-right: var(--spacing-700);
  background-image: url('data:image/svg+xml,<svg viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"><path d="M27.1999 12.8002L16.5656 23.4345C16.2532 23.747 15.7466 23.747 15.4342 23.4345L4.7999 12.8002" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  background-repeat: no-repeat;
  background-position: 98%;
  background-size: 24px;
}

/* Adjust form layout */
.filter-container__dropdowns .filter-group__wrapper {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-600);
  max-height: 300px;
  overflow-y: auto;
}

/* h:\projects\vfc\reference-theme\src\components\footer\footer.scss */
.footer {
  background: var(--color-neutrals-0);
  padding: var(--spacing-1000) 0 calc(var(--mobile-nav-height) + var(--spacing-700));
}
.footer .footer__body {
  padding-bottom: var(--spacing-900);
}
.footer .footer__container {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 20px;
}
.footer .footer__content {
  flex: 1 1 0;
  max-width: 414px;
}
.footer .footer__aside {
  flex: 1 1 0;
  max-width: 706px;
}
.footer .footer__links ul {
  list-style: none;
  padding: 0;
}
.footer .footer__links > div,
.footer .footer__links li {
  margin-bottom: var(--spacing-400);
}
.footer .footer__links li:last-child {
  margin-bottom: 0;
}
.footer .footer__links > div,
.footer .footer__links a {
  display: inline-block;
  text-decoration: none;
  padding: var(--spacing-50) 0;
}
.footer .footer__links a:hover {
  text-decoration: underline;
}
.footer .footer__links--large a:hover {
  text-decoration: none;
}
.footer .footer__links-heading {
  font-weight: 700;
}
.footer .footer__links--large a {
  font-weight: 700;
}
.footer .footer__cols {
  display: flex;
  justify-content: space-between;
  gap: 15px;
}
.footer .footer__cols > * {
  min-width: 150px;
  white-space: nowrap;
}
.footer .footer__social-icons-list {
  display: flex;
  gap: var(--spacing-400);
}
.footer .footer__social-icons-list h3 {
  font-weight: 700;
}
.footer .brand-callout img {
  max-width: 40px;
}
.footer .brand-callout p {
  color: var(--color-neutrals-1000);
  font-weight: 700;
  margin: var(--spacing-600) 0 0;
}
.footer .copyright-menu ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  margin: 0;
  padding: 0;
  list-style: none;
  gap: var(--spacing-400);
}
.footer .copyright-menu li {
  display: flex;
}
.footer .copyright-menu a {
  color: var(--color-neutrals-1000);
  text-decoration: none;
  padding: var(--spacing-200) 0;
}
.footer .footer__bar {
  margin-top: var(--spacing-400);
  padding: var(--spacing-400) 0;
  border-top: 1px solid var(--color-neutrals-400);
}
@media (min-width: 769px) {
  .footer {
    padding: var(--spacing-800) 0;
  }
}
@media (max-width: 991px) {
  .footer .footer__container {
    display: block;
  }
  .footer .footer__aside,
  .footer .footer__content {
    max-width: initial;
  }
  .footer .copyright-menu ul {
    justify-content: flex-start;
    row-gap: var(--spacing-200);
    column-gap: var(--spacing-400);
  }
  .footer .footer__social-icons-list {
    margin-bottom: var(--spacing-600);
  }
}
@media (max-width: 768px) {
  .footer .footer__container {
    flex-direction: column;
  }
  .footer .footer__content,
  .footer .footer__aside {
    max-width: 100%;
  }
  .footer .footer__links > div,
  .footer .footer__links a,
  .footer .footer__cols {
    display: block;
  }
  .footer .footer__links--large {
    margin-bottom: var(--spacing-800);
  }
  .footer .footer__links > div,
  .footer .footer__links li {
    margin-bottom: var(--spacing-200);
  }
}

footer .footer-col__email-cta {
  flex: 0 0 100%;
  margin-bottom: var(--spacing-1100);
}

footer .footer-col__email-cta-content {
  flex: 0 0 100%;
  max-width: 550px;
}

footer .footer-col__email-cta h3,
footer .footer-col__email-cta p {
  color: var(--color-neutrals-1000);
}

footer .footer-col__email-cta p {
  margin-top: var(--spacing-200);
}

.payment-icons_main {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  color: var(--color-neutrals-1000);
  row-gap: var(--spacing-600);
  align-self: stretch;
  flex-wrap: wrap;
}
.payment-icons_main .body-xsmall {
  font-weight: 300;
}
@media (min-width: 1025px) {
  .payment-icons_main {
    flex-direction: row;
    align-items: center;
  }
}
.payment-icons_main img {
  width: auto;
  max-height: 24px;
}

.payment-icons_container {
  display: flex;
  align-items: center;
  align-content: center;
  gap: var(--spacing-400);
  flex: 1 0 0;
  flex-wrap: wrap;
}
.payment-icons_container .payment-icons {
  background-color: var(--color-neutrals-0);
}

/* h:\projects\vfc\reference-theme\src\components\footer-social-icons\footer-social-icons.scss */
.footer-social-icons {
  display: flex;
  list-style: none;
  padding: 0;
  gap: var(--spacing-400);
}
.footer-social-icons li {
  display: flex;
}
.footer-social-icons svg {
  width: 20px;
  height: 20px;
}

/* h:\projects\vfc\reference-theme\src\components\form-toggle\form-toggle.scss */
/* Toggle Switch */
.toggle-wrapper {
  display: inline-block;
}

.toggle {
  cursor: pointer;
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  gap: var(--spacing-300);
  position: relative;
  justify-content: flex-end;
}

.toggle input {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}

.toggle__switch {
  position: relative;
  display: inline-block;
  width: 42px;
  height: 24px;
  background-color: var(--color-neutrals-0);
  border: 1px solid var(--ui-elements-forms-default);
  border-radius: var(--spacing-300);
  transition: all 0.2s ease;
}

/* Switch handle */
.toggle__switch:after {
  content: "";
  position: absolute;
  top: 50%;
  left: var(--spacing-50);
  width: 14px;
  height: 14px;
  background-color: var(--ui-elements-forms-default);
  border-radius: 50%;
  transition: all 0.2s ease;
  transform: translateY(-50%);
}

/* Checkmark in handle */
.toggle__switch:before {
  content: "";
  position: absolute;
  opacity: 0;
  left: var(--spacing-100);
  top: 50%;
  width: 6px;
  height: 9px;
  border: solid var(--ui-elements-forms-focus);
  border-width: 0 1px 1px 0;
  transform: translateY(-50%) rotate(45deg);
  z-index: 1;
  transition: opacity 0.2s ease;
}

/* Checked state */
.toggle input:checked ~ .toggle__switch {
  background-color: var(--ui-elements-forms-focus);
  border-color: var(--ui-elements-forms-focus);
}

.toggle input:checked ~ .toggle__switch:after {
  transform: translateY(-50%) translateX(20px);
  width: 20px;
  height: 20px;
  background-color: var(--color-neutrals-0);
  left: -1px;
}

.toggle input:checked ~ .toggle__switch:before {
  opacity: 1;
  left: calc(100% - 14px);
}

/* Hover state - removed border change */
.toggle:hover input:not([disabled]):checked ~ .toggle__switch {
  background-color: var(--ui-elements-forms-focus);
}

/* Focus state */
.toggle input:focus-visible ~ .toggle__switch {
  outline: 2px solid var(--ui-elements-forms-focus);
  outline-offset: 2px;
}

/* Disabled state */
.toggle input:disabled ~ .toggle__switch {
  background-color: var(--color-neutrals-200);
  border-color: var(--color-neutrals-300);
  cursor: not-allowed;
}

/* Disabled and checked state */
.toggle input:disabled:checked ~ .toggle__switch {
  background-color: #c6c6c4;
  border-color: #c6c6c4;
}

.toggle input:disabled:checked ~ .toggle__switch:after {
  background-color: rgba(0, 0, 0, 0.08);
}

.toggle input:disabled ~ .toggle__label {
  color: var(--typography-color-disabled);
  cursor: not-allowed;
}

/* Invalid state */
form-toggle[data-invalid] .toggle__switch {
  outline: 2px solid var(--typography-color-error-sale);
}

form-toggle[data-invalid] .toggle__label {
  color: var(--typography-color-error-sale);
}

/* Help text */
.toggle__help {
  display: block;
  margin-top: var(--spacing-50);
  color: var(--typography-color-secondary);
}

/* h:\projects\vfc\reference-theme\src\components\header\header.scss */
.header {
  display: block;
  position: fixed;
  top: var(--spacing-400);
  right: var(--spacing-400);
  left: var(--spacing-400);
  z-index: 20;
  max-width: 1360px;
  margin-left: auto;
  margin-right: auto;
  transition: transform 0.3s ease-in-out;
}
.header--full-width {
  max-width: 100%;
  left: 0;
  right: 0;
}

[data-is-top=true] .header {
  top: calc(var(--header-top-offset) + var(--spacing-400));
}

[data-is-top=true] .header--full-width {
  top: var(--header-top-offset);
}

[data-is-top=false][data-scrolled=false] .header--full-width {
  top: 0;
}

[data-enable-sticky=false] .header {
  position: absolute;
  top: calc(var(--header-top-offset) + var(--spacing-400));
}

[data-enable-sticky=false] .header--full-width {
  top: 0;
}

.header__bar {
  background-color: var(--ui-elements-navigation-header-desktop-background);
  border: var(--ui-elements-navigation-header-desktop-border-width);
  box-shadow: var(--overlay);
  padding: 0 var(--spacing-300, 12px) 0 var(--grids-spacing-desktop-margin, 16px);
}
@media (max-width: 768px) {
  .header__bar {
    padding: 0 var(--spacing-50, 4px) 0 var(--spacing-400, 16px);
  }
}

.header:not(.header--full-width) .header__bar {
  border-radius: var(--borders-radius-default);
}

[data-scrolled=true] .header {
  transform: translateY(-300px);
}

.header__inner {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  grid-gap: var(--spacing-400);
  height: 64px;
}
@media (max-width: 768px) {
  .header__inner {
    grid-template-columns: auto 1fr;
  }
}

.header__left,
.header__center,
.header__right {
  display: flex;
  align-items: center;
}

.header__left {
  justify-content: start;
}
@media (max-width: 768px) {
  .header__left {
    display: none;
  }
}

.header__center {
  justify-content: center;
}

.header__right {
  justify-content: end;
}

.header__logo {
  height: 32px;
  width: auto;
}
@media (max-width: 768px) {
  .header__logo {
    height: 26px;
  }
}
.header__logo img {
  height: 100%;
  width: auto;
  object-fit: contain;
}

.header__nav-list {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: auto;
  grid-gap: var(--spacing-400);
  justify-content: start;
  padding: 0;
}
.header__nav-list li {
  padding: 0;
  list-style: none;
  cursor: pointer;
}

.header__nav-list-item {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: auto;
  align-items: center;
  grid-gap: var(--spacing-100);
  cursor: pointer;
}

.header__nav-list-item .nav-item-text {
  position: relative;
  display: inline-block;
  text-decoration: none;
  padding-bottom: 3px;
}

.header__nav-list-item .nav-item-text::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  bottom: -17px;
  height: 2px;
  background-color: var(--color-primary-napa-orange-500, #BC4A1A);
  transform: scaleX(0);
}

.header__nav-list-item:not([aria-expanded=true]):hover .nav-item-text::after {
  transform: scaleX(1);
  background-color: var(--color-primary-napa-orange-500, #BC4A1A);
}

.header__nav-list-item[aria-expanded=true] .nav-item-text::after {
  transform: scaleX(1);
  background-color: black;
}

.header__nav-list-item[aria-expanded=true] {
  color: var(--typography-color-default, #000);
  font-family: var(--typography-styles-font-family-body, "Akkurat Pro");
  font-size: var(--typography-styles-sizing-body-medium, 16px);
  font-style: normal;
  font-weight: 700;
  line-height: var(--typography-styles-line-height-body-medium, 24px);
  letter-spacing: var(--typography-styles-tracking-body, 0px);
}

.header__nav-list-item[aria-expanded=true]:hover {
  color: var(--typography-color-default, #000);
}

.header__nav-list-item:hover {
  color: var(--color-primary-napa-orange-500, #BC4A1A);
}

@media (max-width: 1200px) {
  .header__nav-list-item--overflow {
    display: none;
  }
}

.header__nav-overflow {
  display: none;
}
@media (max-width: 1200px) {
  .header__nav-overflow {
    display: grid;
  }
}

.header__nav-link {
  position: relative;
  text-decoration: none;
}
.header__nav-link::after {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  border-bottom: 1px solid var(--typography-color-hover-active);
  width: 0%;
  transition: width 0.3s ease-in-out;
}
.header__nav-link:hover::after {
  width: 100%;
}

.header__mega-menu-trigger {
  background-color: transparent;
  border: none;
  padding: 0;
}

/* this uses some tricky keyboard only user styles */
html:not([data-whatintent=keyboard]) .header__mega-menu-trigger:not(:focus) {
  position: absolute;
  width: 1px !important;
  height: 1px !important;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.header__action-list {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: auto;
  justify-content: start;
  padding: 0;
  height: 44px;
}
.header__action-list li {
  padding: 0;
  list-style: none;
  height: 44px;
}
@media (max-width: 768px) {
  .header__action-list .icon-account {
    display: none;
  }
}
@media (min-width: 768px) {
  .header__action-list .icon-menu-hamburger {
    display: none;
  }
}
@media (max-width: 768px) {
  .header__action-list .country-selector {
    display: none;
  }
}

.icon-button__badge {
  font-family: var(--body-font);
  font-size: var(--body-xsmall-size);
  font-weight: var(--body-bold-weight);
  line-height: var(--body-xsmall-line-height);
  letter-spacing: calc(var(--body-xsmall-size) * var(--body-letter-spacing));
  position: absolute;
  top: -10px;
  right: -10px;
  background: var(--color-napa-orange-300);
  color: var(--color-essential-100);
  border-radius: 50%;
  width: 18px;
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ----- Component: Drawer Menu Styling ----- */
:root {
  --drawer-width: 593px;
  --drawer-width-with-cards: 843px;
  --drawer-transition-duration: 0.35s;
  --drawer-transition-timing: ease-in-out;
  --drawer-background: #ffffff;
  --drawer-border-color: #e5e5e5;
  --drawer-z-index: 1001;
  --overlay-z-index: 1000;
  --overlay-background: rgba(0, 0, 0, 0.5);
  --drawer-side-card-width: 250px;
  --drawer-side-card-gap: 16px;
}

.drawer-menu {
  position: fixed;
  top: 40px;
  left: 0;
  bottom: 0;
  width: var(--drawer-width);
  background-color: var(--drawer-background);
  color: var(--color-essential-400);
  z-index: var(--drawer-z-index);
  overflow-y: auto;
  transform: translateX(-100%);
  transition: transform var(--drawer-transition-duration) var(--drawer-transition-timing), width var(--drawer-transition-duration) var(--drawer-transition-timing);
  visibility: hidden;
  display: flex;
  flex-direction: column;
}

.drawer-menu--with-cards {
  width: var(--drawer-width-with-cards);
}

.drawer-menu.drawer-is-open {
  transform: translateX(0);
  visibility: visible;
}

.drawer-menu__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 593px;
  background-color: var(--drawer-background);
  min-height: 64px;
}

.drawer-menu__close-button {
  background: none;
  border: none;
  cursor: pointer;
  color: var(--color-essential-400);
}

.drawer-menu__close-button:hover {
  opacity: 0.7;
}

.drawer-menu__close-button .icon {
  width: 32px;
  height: 32px;
  margin-right: var(--spacing-300);
  display: block;
}

.drawer-menu__content-wrapper {
  flex-grow: 1;
  max-width: 593px;
  overflow-y: auto;
  background: var(--color-neutrals-25);
  scrollbar-width: none;
}

.drawer-menu__overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--overlay-background);
  z-index: var(--overlay-z-index);
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--drawer-transition-duration) var(--drawer-transition-timing), visibility 0s linear var(--drawer-transition-duration);
}

.drawer-menu__overlay.is-active {
  opacity: 1;
  visibility: visible;
  transition: opacity var(--drawer-transition-duration) var(--drawer-transition-timing), visibility 0s linear 0s;
}

body.drawer-open-overflow-hidden {
  overflow: hidden;
}

.header-drawer-l1 {
  display: flex;
  padding: var(--spacing-500) 0 var(--spacing-500) var(--spacing-400);
}

.drawer-menu__featured-links {
  display: flex;
  height: 32px;
  padding: 24px 16px 20px;
  min-height: 76px;
  border-bottom: 1px solid var(--drawer-border-color);
}

.featured-links-menu {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  margin-block-start: 0;
  padding-inline-start: 0;
  gap: var(--spacing-600);
  list-style: none;
}
.featured-links-menu a {
  text-decoration: none;
}

/* ----- Drawer Menu Content Grid Styling (Revised) ----- */
.drawer-menu__content-grid.grid-layout--3xN {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3px;
  padding: var(--spacing-500, 24px);
}

.grid-layout--3xN .content-grid__card {
  position: relative;
  overflow: hidden;
  height: 250px;
  background-color: var(--color-neutrals-200, #f0f0f0);
}

.grid-layout--3xN .content-grid__card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0.4) 40%, rgba(0, 0, 0, 0.2) 70%, rgba(0, 0, 0, 0) 100%);
  z-index: 1;
  pointer-events: none;
}

.content-grid__image-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.content-grid__image-wrapper img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.content-grid__text-content {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  display: flex;
  gap: var(--spacing-400);
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
  padding: var(--spacing-400);
  text-align: center;
  color: var(--color-primary-essential-100);
  pointer-events: none;
}

.content-grid__text {
  font-family: var(--body-font);
  font-size: var(--body-large-size);
  font-weight: var(--body-bold-weight);
  line-height: var(--body-large-line-height);
  letter-spacing: calc(var(--body-large-size) * var(--body-letter-spacing));
  margin: 0 0 var(--spacing-100, 8px) 0;
  color: inherit;
  pointer-events: auto;
}

.content-grid__cta {
  color: var(--color-primary-essential-100);
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  pointer-events: auto;
}

.drawer-menu:not(.drawer-is-open) {
  transition: transform 0.4s ease-out, visibility 0s linear 0.4s;
}

.drawer-menu__content-grid.grid-layout--2xN {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1px;
}

.drawer-menu__content-grid.grid-layout--2xN .content-grid__card {
  position: relative;
  overflow: hidden;
  width: 296px;
  height: 230px;
  background-color: var(--color-neutrals-200, #f0f0f0);
}

.drawer-menu__content-grid.grid-layout--2xN .content-grid__card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0.4) 40%, rgba(0, 0, 0, 0.1) 70%, rgba(0, 0, 0, 0) 100%);
  z-index: 1;
  pointer-events: none;
  border-radius: inherit;
}

.grid-layout--2xN .content-grid__text-content {
  padding: var(--spacing-600);
}

/* ----- Drawer Menu Text Navigation Area Styling ----- */
.drawer-menu__text-nav-area {
  padding: var(--spacing-500, 24px);
}

.drawer-menu__text-columns.columns-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--spacing-700);
  padding-bottom: var(--spacing-600, 24px);
  align-items: start;
}

.drawer-menu__text-columns.columns-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--spacing-700);
  padding-bottom: var(--spacing-600, 24px);
  align-items: start;
}

.text-column__item {
  margin-bottom: 0;
  padding: 0;
}
.text-column__item:last-child {
  margin-bottom: 0;
}

.drawer-layout-wrapper {
  display: flex;
  align-items: flex-start;
  position: relative;
  width: 843px;
  min-width: 843px;
}

.external-side-cards-container {
  position: absolute;
  display: flex;
  flex-direction: column;
  top: 40px;
  left: 593px;
  width: 250px;
  height: 100%;
  z-index: 1000;
  box-sizing: border-box;
  overflow-y: auto;
  scrollbar-width: none;
}

.external-side-cards-container .drawer-menu__side-cards {
  gap: 2px;
}

.external-side-cards-container:empty {
  display: none;
}

.external-side-cards-container .side-card {
  position: relative;
  overflow: hidden;
  height: 50%;
  background-color: var(--color-neutrals-700, #4a4a4a);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  text-align: center;
}

.external-side-cards-container .side-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.75) 0%, rgba(0, 0, 0, 0.4) 40%, rgba(0, 0, 0, 0.1) 70%, rgba(0, 0, 0, 0) 100%);
  z-index: 1;
  pointer-events: none;
  border-radius: inherit;
}

.external-side-cards-container .side-card__image-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.external-side-cards-container .side-card__image-wrapper img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: inherit;
}

.external-side-cards-container .side-card__text {
  font-family: var(--subheading-font);
  font-size: var(--subheading-medium-size);
  font-weight: var(--subheading-weight);
  line-height: var(--subheading-medium-line-height);
  letter-spacing: calc(var(--subheading-medium-size) * var(--subheading-letter-spacing));
  text-transform: var(--subheading-text-transform);
  margin: 0 0 var(--spacing-100, 8px) 0;
  color: var(--color-primary-essential-100);
  pointer-events: auto;
}

.external-side-cards-container .side-card__cta {
  color: var(--color-primary-essential-100);
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  pointer-events: auto;
}

.featured-link a:hover {
  color: var(--color-primary-napa-orange-500, #BC4A1A);
  text-decoration: underline;
}

/* h:\projects\vfc\reference-theme\src\components\hero-banner\hero-banner.scss */
.hero-banner {
  display: flex;
  flex-direction: row;
  position: relative;
  justify-content: center;
}
.hero-banner.hero-banner--height-small {
  min-height: 281px;
}
@media (min-width: 769px) {
  .hero-banner.hero-banner--height-small {
    min-height: 360px;
  }
}
.hero-banner.hero-banner--height-medium {
  min-height: 375px;
}
@media (min-width: 769px) {
  .hero-banner.hero-banner--height-medium {
    min-height: 480px;
  }
}
.hero-banner.hero-banner--height-large {
  min-height: 500px;
}
@media (min-width: 769px) {
  .hero-banner.hero-banner--height-large {
    min-height: 720px;
  }
}
.hero-banner.hero-banner--height-full {
  min-height: calc(100vh - var(--header-top-offset));
}

.hero-banner__scrim {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: var(--scrim);
}
@media (max-width: 768px) {
  .hero-banner--layout-block .hero-banner__scrim {
    display: none;
  }
}

.hero-banner__image {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}
.hero-banner__image img {
  bottom: 0;
  height: 100%;
  left: 0;
  object-fit: cover;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}
@media (max-width: 768px) {
  .hero-banner__image.hero-banner__image--desktop {
    display: none;
  }
}
@media (min-width: 769px) {
  .hero-banner__image.hero-banner__image--mobile {
    display: none;
  }
}
@media (max-width: 768px) {
  .hero-banner--height-small .hero-banner__image {
    padding-bottom: 66%;
  }
  .hero-banner--height-medium .hero-banner__image {
    padding-bottom: 100%;
  }
  .hero-banner--height-large .hero-banner__image {
    padding-bottom: 133.33%;
  }
}

.hero-banner__content {
  display: flex;
  max-width: 1400px;
  position: relative;
  width: 100%;
}
.hero-banner__content-inner {
  max-width: var(--settings-banner-max-width);
  padding: var(--spacing-400);
  position: relative;
}
.hero-banner--layout-block .hero-banner__content-inner {
  background-color: var(--surface-primary);
}
.hero-banner--layout-block .hero-banner__content {
  padding: var(--spacing-400);
}
.hero-banner--v-top .hero-banner__content {
  align-items: flex-start;
}
.hero-banner--v-center .hero-banner__content {
  align-items: center;
}
.hero-banner--v-bottom .hero-banner__content {
  align-items: flex-end;
}
.hero-banner--h-left .hero-banner__content {
  justify-content: flex-start;
}
.hero-banner--h-center .hero-banner__content {
  justify-content: center;
}
.hero-banner--h-right .hero-banner__content {
  justify-content: flex-end;
}

/* h:\projects\vfc\reference-theme\src\components\icon-button\icon-button.scss */
.icon-button {
  display: inline-block;
  border: none;
  background-color: transparent;
  padding: 10px;
  position: relative;
}
.icon-button::before {
  content: "";
  display: block;
  position: absolute;
  background-color: var(--color-neutrals-50);
  opacity: 0;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 50%;
}
.icon-button:hover::before {
  opacity: 0.2;
}
@media (hover: none) {
  .icon-button:hover::before {
    opacity: 0;
  }
}
.icon-button:active::before {
  opacity: 1;
}
@media (hover: none) {
  .icon-button:active::before {
    opacity: 0;
  }
}

.icon-button__icon {
  height: 24px;
  width: 24px;
  position: relative;
}
.icon-button__icon > svg {
  height: 100%;
  width: 100%;
}

/* h:\projects\vfc\reference-theme\src\components\image-gallery\image-gallery.scss */
.image-gallery {
  display: block;
  margin: 0 auto;
  padding: var(--spacing-800) 0;
  max-width: var(--screens-desktop-width);
}

.image-gallery--full-screen {
  max-width: none;
  padding: var(--spacing-800) 0;
}

.image-gallery__content {
  background-color: var(--surface-primary);
}

.image-gallery__content-wrapper {
  margin-bottom: var(--spacing-800);
  padding-left: var(--screens-mobile-margin);
  padding-right: var(--screens-mobile-margin);
}

.image-gallery__image-wrapper {
  aspect-ratio: 16/9;
}

.image-gallery__images {
  display: grid;
  gap: var(--spacing-200);
}

.image-gallery__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (min-width: 769px) {
  .image-gallery {
    padding: var(--spacing-700) 0;
    display: flex;
    flex-direction: column;
    gap: var(--spacing-800);
  }
  .image-gallery__content-wrapper {
    margin-bottom: 0;
  }
  /* Default layout for 4 images */
  .image-gallery__images {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: auto auto;
    gap: var(--spacing-200);
  }
  /* Single image layout */
  .image-gallery__images:not(:has(.image-gallery__image-wrapper:nth-child(2))) {
    grid-template-columns: 1fr;
  }
  /* Layout for 2 images */
  .image-gallery__images:has(.image-gallery__image-wrapper:nth-child(2)):not(:has(.image-gallery__image-wrapper:nth-child(3))) {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto;
  }
  /* Layout for 3 images */
  .image-gallery__images:has(.image-gallery__image-wrapper:nth-child(3)):not(:has(.image-gallery__image-wrapper:nth-child(4))) {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto auto;
  }
  .image-gallery__images:has(.image-gallery__image-wrapper:nth-child(3)):not(:has(.image-gallery__image-wrapper:nth-child(4))) .image-gallery__image-wrapper:first-child {
    grid-column: 1/-1;
  }
  /* Layout for 4 images */
  .image-gallery__images:has(.image-gallery__image-wrapper:nth-child(4)) .image-gallery__image-wrapper:first-child {
    grid-column: 1/-1;
  }
}
/* h:\projects\vfc\reference-theme\src\components\image-with-text\image-with-text.scss */
.image-with-text {
  position: relative;
  display: block;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 769px) {
  .image-with-text {
    padding: var(--spacing-700) var(--screens-desktop-margin);
  }
}

.image-with-text.image-with-text--full-bleed {
  padding: 0;
}

.image-with-text__inner {
  position: relative;
  display: grid;
  align-items: center;
  background-color: var(--surface-primary);
}
@media (min-width: 769px) {
  .image-with-text__inner {
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 769px) {
  .image-with-text__left {
    height: 100%;
  }
}

/* left column layouts */
@media (min-width: 769px) {
  .image-with-text--left .image-with-text--width-small .image-with-text__inner {
    grid-template-columns: 40% 1fr;
  }
}
@media (min-width: 769px) {
  .image-with-text--left .image-with-text--width-medium .image-with-text__inner {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 769px) {
  .image-with-text--left .image-with-text--width-large .image-with-text__inner {
    grid-template-columns: 60% 1fr;
  }
}
.image-with-text--left .image-with-text__left .image-with-text__content {
  display: none;
}

/* invert column layouts */
@media (min-width: 769px) {
  .image-with-text--right.image-with-text--width-small .image-with-text__inner {
    grid-template-columns: 1fr 40%;
  }
}
@media (min-width: 769px) {
  .image-with-text--right .image-with-text--width-medium .image-with-text__inner {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 769px) {
  .image-with-text--right.image-with-text--width-large .image-with-text__inner {
    grid-template-columns: 1fr 60%;
  }
}
.image-with-text--right .image-with-text__right .image-with-text__content {
  display: none;
}

/* mobile styles to show image on top, text on bottom regardless of image placement */
@media (max-width: 768px) {
  .image-with-text--left .image-with-text__left .image-with-text__content,
  .image-with-text--right .image-with-text__left .image-with-text__content {
    display: none;
  }
}
@media (max-width: 768px) {
  .image-with-text--left .image-with-text__right .image-with-text__content,
  .image-with-text--right .image-with-text__right .image-with-text__content {
    display: block;
  }
}

.image-with-text--contain-image .image-with-text__image img {
  object-fit: contain;
}

.image-with-text__image {
  position: relative;
  padding-bottom: 75%;
  height: 100%;
}
.image-with-text__image img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
@media (max-width: 768px) {
  .image-with-text__image.image-with-text__image--desktop {
    display: none;
  }
}
@media (min-width: 769px) {
  .image-with-text__image.image-with-text__image--mobile {
    display: none;
  }
}

.image-with-text--height-small .image-with-text__image {
  padding-bottom: 75%;
}

.image-with-text--height-medium .image-with-text__image {
  padding-bottom: 100%;
}

.image-with-text--height-large .image-with-text__image {
  padding-bottom: 120%;
}

.image-with-text__content {
  display: flex;
  align-items: center;
  height: 100%;
  padding: var(--spacing-700) var(--screens-mobile-margin);
}
@media (min-width: 769px) {
  .image-with-text__content {
    padding: var(--screens-desktop-margin);
  }
}

/* h:\projects\vfc\reference-theme\src\components\interactive-link-list\interactive-link-list.scss */
.interactive-link-list {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 769px) {
  .interactive-link-list {
    padding: var(--spacing-700) var(--screens-desktop-margin);
  }
}

.interactive-link-list__inner {
  background-color: var(--surface-primary);
}
@media (min-width: 769px) {
  .interactive-link-list__inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--spacing-800);
  }
}

@media (max-width: 768px) {
  .interactive-link-list__links {
    display: flex;
    flex-direction: column;
    gap: var(--spacing-400);
  }
}
@media (min-width: 769px) {
  .interactive-link-list--links-left .interactive-link-list__inner {
    grid-template-areas: "links image";
  }
  .interactive-link-list--links-right .interactive-link-list__inner {
    grid-template-areas: "image links";
  }
  .interactive-link-list__image-container {
    grid-area: image;
  }
}
.interactive-link-list__image {
  position: relative;
  padding-bottom: 100%;
}
.interactive-link-list__image img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}

@media (min-width: 769px) {
  .interactive-link-list__image--mobile {
    display: none;
  }
}

@media (max-width: 768px) {
  .interactive-link-list__image--desktop {
    display: none;
  }
}

.interactive-link-list__eyebrow {
  writing-mode: vertical-lr;
  margin-bottom: 0;
  transform-origin: center;
  transform: rotate(180deg);
  white-space: nowrap;
}

.interactive-link-list__link {
  color: var(--typography-color);
  text-decoration: none;
  font-weight: 400;
  transition: color 0.2s ease-out;
}
.interactive-link-list__link:hover {
  color: var(--typography-color-hover-active);
}

@media (max-width: 768px) {
  .interactive-link-list__links {
    padding: var(--spacing-800) var(--screens-mobile-margin);
  }
}
@media (min-width: 769px) {
  .interactive-link-list__links {
    display: flex;
    align-items: center;
  }
}

.interactive-link-list__links-inner {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: start;
  gap: var(--spacing-600);
}
@media (min-width: 769px) {
  .interactive-link-list__links-inner {
    gap: var(--spacing-800);
  }
}
.interactive-link-list__links-inner ul {
  padding: 0;
}
.interactive-link-list__links-inner li {
  list-style: none;
}

/* h:\projects\vfc\reference-theme\src\components\main-404\main-404.scss */
.main-404 {
  display: block;
  justify-content: center;
  text-align: center;
  padding: var(--spacing-1300) var(--screens-mobile-margin) var(--spacing-1300);
}
@media (min-width: 769px) {
  .main-404 {
    padding: 192px var(--screens-desktop-margin) var(--spacing-1300);
  }
}
.main-404 > * + * {
  margin-top: var(--spacing-200);
}

/* h:\projects\vfc\reference-theme\src\components\main-article\main-article.scss */
.article {
  margin: 0 auto;
}
.article:not(:has(.article-banner__image)) {
  margin-top: 80px;
}
@media (min-width: 768px) {
  .article:not(:has(.article-banner__image)) {
    margin-top: 128px;
  }
}

.article-banner__image {
  width: 100%;
  position: relative;
  aspect-ratio: 4/3;
  margin-bottom: var(--spacing-700);
}
@media (min-width: 1024px) {
  .article-banner__image {
    aspect-ratio: 8/3;
    margin-bottom: var(--spacing-700);
  }
}
.article-banner__image img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
@media (max-width: 1023px) {
  .article-banner__image.article-banner__image--desktop {
    display: none;
  }
}
@media (min-width: 1024px) {
  .article-banner__image.article-banner__image--mobile {
    display: none;
  }
}

.article__content {
  padding: 0 var(--screens-mobile-margin) var(--spacing-700);
}
@media (min-width: 1024px) {
  .article__content {
    max-width: 1023px;
    margin: 0 auto;
    padding: 0 var(--spacing-400) var(--spacing-700);
  }
}

.article__header {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-400);
}

.article__badges {
  display: flex;
  gap: var(--spacing-50);
  padding-left: 0;
  flex-direction: row;
  flex-wrap: wrap;
}

.article__badge {
  border-radius: var(--borders-radius-full);
  list-style: none;
  padding: var(--spacing-50) var(--spacing-300);
}

.article__meta {
  display: flex;
  gap: var(--spacing-50);
  color: var(--typography-color-secondary);
}

.article__divider {
  margin: var(--spacing-700) 0;
  border: none;
  border-top: 1px solid var(--ui-elements-dividers-primary);
}

/* Content styles */
.article__body img {
  width: 100%;
  height: auto;
  margin: var(--spacing-700) 0;
}
.article__body p {
  margin-top: var(--spacing-500);
}
.article__body blockquote {
  border-left: 1px solid var(--ui-elements-dividers-primary);
  padding-left: var(--spacing-500);
  margin: var(--spacing-700) 0;
}
.article__body blockquote strong.body-medium {
  font-family: var(--body-font);
  font-size: var(--body-large-size);
  font-weight: var(--body-bold-weight);
  line-height: var(--body-large-line-height);
  letter-spacing: calc(var(--body-large-size) * var(--body-letter-spacing));
  color: var(--typography-color-default);
  margin-top: 0;
}
.article__body blockquote p.body-medium {
  font-family: var(--body-font);
  font-size: var(--body-small-size);
  font-weight: var(--body-weight);
  line-height: var(--body-small-line-height);
  letter-spacing: calc(var(--body-small-size) * var(--body-letter-spacing));
  color: var(--typography-color-secondary);
  margin-top: var(--spacing-400);
}
.article__body ul,
.article__body ol {
  padding-left: var(--spacing-600);
}
.article__body a {
  color: var(--typography-color-brand);
  text-decoration: underline;
}

/* Two Column layout (Layout B) */
@media (min-width: 1024px) {
  .article__two-column {
    display: flex;
    margin: 0 10%;
    justify-self: center;
  }
}
@media (min-width: 1024px) {
  .article__two-column .article__content {
    max-width: 67%;
    padding: 0;
    padding-right: var(--spacing-800);
    margin-top: 0;
    margin-bottom: var(--spacing-700);
    border-right: 1px solid var(--ui-elements-dividers-primary);
  }
}
@media (min-width: 1024px) {
  .article__two-column .article__aside {
    max-width: 33%;
    margin-top: var(--spacing-600);
    padding-top: 0;
    padding-left: var(--spacing-800);
  }
}
.article__two-column .article__products-title {
  border-top: 1px solid var(--ui-elements-dividers-primary);
  padding-top: var(--spacing-700);
  margin-bottom: var(--spacing-600);
  margin-left: var(--screens-mobile-margin);
  margin-right: var(--screens-mobile-margin);
}
@media (min-width: 1024px) {
  .article__two-column .article__products-title {
    border-top: 0;
    text-align: center;
    padding-top: 0;
    margin: 0;
    margin-bottom: var(--spacing-800);
  }
}
.article__two-column .article__products-list {
  display: flex;
  overflow: scroll;
  padding-left: 0;
  margin-left: var(--screens-mobile-margin);
  gap: var(--spacing-100);
}
@media (min-width: 1024px) {
  .article__two-column .article__products-list {
    flex-direction: column;
    margin-left: 0;
    margin-right: 0;
  }
}
.article__two-column .article__product {
  list-style: none;
  min-width: 237px;
}
.article__two-column .article__product:last-child {
  margin-right: var(--screens-mobile-margin);
}
@media (min-width: 1024px) {
  .article__two-column .article__product:last-child {
    margin-right: 0;
    min-width: unset;
  }
}
.article__two-column .article__product .product-card {
  padding: 0;
}

/* h:\projects\vfc\reference-theme\src\components\main-blog\main-blog.scss */
.main-blog {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-600);
  margin-bottom: var(--spacing-800);
}

.blog-articles__header {
  display: flex;
  justify-content: space-between;
  margin: 0 var(--screens-mobile-margin);
}
@media (min-width: 1024px) {
  .blog-articles__header {
    max-width: 1024px;
    width: 100%;
    margin: 0 auto;
  }
}

.blog-articles {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-column-gap: var(--screens-mobile-margin);
  grid-row-gap: var(--screens-mobile-margin);
  max-width: 1024px;
  margin: 0 var(--screens-mobile-margin);
}
@media (min-width: 1024px) {
  .blog-articles {
    grid-template-columns: repeat(3, 1fr);
    margin: 0 auto;
  }
}
.blog-articles .article-card {
  border-radius: var(--borders-radius-secondary);
  border: var(--borders-width-decorative) solid var(--borders-color-white);
  background: var(--page-default);
  box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.08);
}
.blog-articles .blog-card__image {
  margin-bottom: 0;
}
.blog-articles .blog-card__image img {
  border-radius: var(--borders-radius-secondary) var(--borders-radius-secondary) 0 0;
}
.blog-articles .blog-card__content {
  padding: var(--spacing-600) var(--spacing-400) var(--spacing-1000);
  position: relative;
}
.blog-articles .text-link {
  color: var(--typography-color-brand);
  position: absolute;
  bottom: var(--spacing-400);
}

/* Featured article styling */
@media (min-width: 1024px) {
  .blog-articles__featured {
    padding-top: 128px;
    margin-bottom: var(--spacing-900);
    background: var(--schemes-neutral-200);
  }
}
.blog-articles__featured .blog-card {
  background: transparent;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-600);
  margin-bottom: var(--spacing-900);
}
@media (min-width: 1024px) {
  .blog-articles__featured .blog-card {
    flex-direction: row-reverse;
    align-items: center;
    gap: var(--spacing-800);
    max-width: 896px;
    margin: 0 auto;
  }
}
.blog-articles__featured .blog-card__image {
  margin-bottom: 0;
}
@media (min-width: 1024px) {
  .blog-articles__featured .blog-card__image {
    max-width: 360px;
    max-height: 360px;
    width: 100%;
    height: 100%;
    margin-bottom: calc(var(--spacing-800) * -1);
  }
}
@media (min-width: 1024px) {
  .blog-articles__featured .blog-card__image img, .blog-articles__featured .blog-card__image svg {
    border-radius: var(--borders-radius-secondary);
  }
}
@media (max-width: 1024px) {
  .blog-articles__featured .blog-card__content {
    background: var(--schemes-neutral-200);
    border-radius: var(--borders-radius-secondary);
    margin: calc(var(--spacing-1100) * -1) var(--screens-mobile-margin) 0;
    padding: var(--spacing-600) var(--screens-mobile-margin);
  }
}
.blog-articles__featured .button {
  align-self: flex-start;
}

.blog-articles__filtering {
  position: relative;
}
.blog-articles__filtering label {
  position: absolute;
  color: var(--typography-color-secondary);
  top: var(--spacing-50);
  left: var(--spacing-300);
}

.blog-articles__filter {
  -webkit-appearance: none;
  background-image: url('data:image/svg+xml,<svg viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg" aria-hidden="true"><path d="M27.1999 12.8002L16.5656 23.4345C16.2532 23.747 15.7466 23.747 15.4342 23.4345L4.7999 12.8002" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  background-repeat: no-repeat;
  background-position: right var(--spacing-200) center;
  background-size: 24px;
  padding: var(--spacing-400) var(--spacing-300) var(--spacing-200);
  border: 1px solid var(--borders-color-medium);
  border-radius: var(--borders-radius-default);
  background-color: var(--surface-primary);
  color: var(--typography-color-primary);
  padding-right: var(--spacing-800);
  min-width: 220px;
}

/* h:\projects\vfc\reference-theme\src\components\main-cart\main-cart.scss */
.cart {
  display: block;
  padding: calc(var(--spacing-600) + var(--promo-bar-height) + var(--mobile-header-height, var(--header-height))) 0 var(--spacing-600);
  margin: 0 auto;
}
@media (min-width: 768px) {
  .cart {
    padding: var(--spacing-1200) 0 0;
    max-width: 1280px;
  }
}

.cart__message {
  padding: var(--spacing-200);
  margin-bottom: var(--spacing-600);
  background-color: var(--color-primary-essential-200);
  text-align: center;
  font-weight: 700;
}
.cart__table + .cart__message {
  margin-top: var(--spacing-400);
}

.cart__header {
  display: flex;
  padding-bottom: var(--spacing-100);
}

.cart__items,
.cart__table,
.cart__items tr:not([class]) {
  display: block;
}

.cart__header-cell {
  display: block;
  color: var(--color-neutrals-600);
  font-weight: 400;
}
.cart__header-cell:nth-child(1), .cart__header-cell:nth-child(2), .cart__header-cell:nth-child(3) {
  width: auto;
}
@media (min-width: 768px) {
  .cart__header-cell {
    padding-bottom: var(--spacing-200);
  }
}

.cart__header-cell + .cart__header-cell:before {
  content: "/";
  margin: 0 var(--spacing-100);
}

.cart__title {
  margin-bottom: var(--spacing-600);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (min-width: 768px) {
  .cart__title {
    margin-bottom: var(--spacing-700);
  }
}

.cart__item {
  display: block;
  border-top: 1px solid var(--color-neutrals-400);
}
.cart__item:last-child, .cart__item + tr:not(.cart__item):last-child {
  border-bottom: 1px solid var(--color-neutrals-400);
}

.cart__item-product {
  display: flex;
  gap: var(--spacing-400);
  width: 100%;
  padding-top: var(--spacing-400);
}

.cart__item-product-image {
  min-width: 120px;
  width: 40%;
}
.cart__item-product-image img {
  width: 100%;
  height: auto;
}
@media (min-width: 768px) {
  .cart__item-product-image {
    width: 120px;
    font-size: 0;
  }
  .cart__item-product-image a {
    overflow: hidden;
    position: relative;
    width: 100%;
    height: 150px;
  }
  .cart__item-product-image img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}
@media (hover: hover) {
  .cart__item-product-image a {
    transition: opacity 0.2s;
  }
  .cart__item-product-image a:hover {
    opacity: 0.7;
  }
}

.cart__item-product-details {
  flex: 1;
  padding-bottom: var(--spacing-700);
}
@media (min-width: 768px) {
  .cart__item-product-details {
    flex: auto;
    padding: var(--spacing-25) 0 var(--spacing-300);
  }
}

.cart__item-title {
  margin-bottom: var(--spacing-200);
  font-family: var(--typography-styles-font-family-body);
  font-size: var(--type-fontsize-100);
  font-style: normal;
  line-height: var(--typography-styles-line-height-body-medium);
  letter-spacing: var(--typography-styles-tracking-body);
}
.cart__item-title a {
  text-decoration: none;
}
@media (min-width: 768px) {
  .cart__item-title {
    margin-bottom: var(--spacing-250);
  }
}

@media (min-width: 768px) {
  .cart__item-variant {
    margin-bottom: var(--spacing-200);
  }
}

.cart__item-edit-container {
  margin-top: var(--spacing-200);
}
@media (min-width: 768px) {
  .cart__item-edit-container {
    margin-top: var(--spacing-400);
  }
}

.cart__item-quantity-controls-container {
  display: flex;
  flex-flow: row wrap;
  align-items: center;
  justify-content: flex-start;
  gap: var(--spacing-400);
  padding-left: clamp(120px + var(--spacing-400), 40% + var(--spacing-400), 40% + var(--spacing-400));
  margin-top: calc(var(--spacing-500) * -1);
}
.cart__item-quantity-controls-container quantity-input {
  display: block;
  height: 40px;
}
@media (min-width: 768px) {
  .cart__item-quantity-controls-container {
    padding: var(--spacing-400) 0 0;
    margin-top: 0;
  }
  .cart__item-quantity-controls-container .cart__item-quantity {
    display: inline-block;
    vertical-align: middle;
  }
}

.cart__item-remove {
  text-decoration: underline;
  padding: 0;
  border: none;
  background: transparent;
  color: var(--color-neutrals-1000);
  cursor: pointer;
}

@media (min-width: 768px) {
  .cart__item-remove-container {
    display: inline-block;
    vertical-align: middle;
    margin-left: var(--spacing-250);
  }
}

.cart__item-price-container {
  display: flex;
  flex-direction: row wrap;
  justify-content: flex-start;
  align-items: center;
  padding: var(--spacing-400) 0 var(--spacing-400) clamp(120px + var(--spacing-400), 40% + var(--spacing-400), 40% + var(--spacing-400));
  gap: var(--spacing-50);
}
.cart__item-price-container > p {
  font-size: var(--type-fontsize-100);
}
.cart__item-price-container .product-price__price-current {
  font-weight: 400;
  color: var(--color-neutrals-1000);
}
.cart__item-price-container .product-price__price-compare {
  font-weight: 400;
  color: var(--color-neutrals-600);
}
.cart__item-price-container .product-price__price-savings-text {
  background: none;
  padding: 0;
  color: var(--color-primary-napaorange-500);
}
@media (min-width: 768px) {
  .cart__item-price-container {
    padding: var(--spacing-500) 0 0;
    white-space: nowrap;
  }
  .cart__item-price-container > p,
  .cart__item-price-container > div {
    display: inline-block;
    vertical-align: middle;
  }
}

.cart__discounts {
  display: flex;
  flex-flow: row wrap;
  gap: var(--spacing-200);
  padding-bottom: var(--spacing-400);
}
.cart__discounts .discount {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  gap: var(--spacing-50);
  padding: var(--spacing-50) var(--spacing-200);
  border-radius: var(--borders-radius-50);
  background-color: var(--color-primary-essential-200);
  text-transform: uppercase;
  font-weight: 700;
}
.cart__discounts .discount .icon-s {
  width: 12px;
  height: 12px;
}
.cart__discounts .discount__remove {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 16px;
  height: 16px;
  background: none;
  border-radius: 0;
  border: none;
  padding: 0;
  margin-left: var(--spacing-50);
}
@media (hover: hover) {
  .cart__discounts .discount__remove {
    transition: opacity 0.2s;
  }
  .cart__discounts .discount__remove:hover {
    opacity: 0.7;
  }
}

.cart__items td > .discount {
  width: 100%;
  font-weight: 700;
  text-transform: none;
}

@media (min-width: 768px) {
  .cart__items {
    display: table-row-group;
  }
  .cart__table {
    display: table;
    width: 100%;
    border-collapse: collapse;
  }
  .cart__items tr:not([class]),
  .cart__header,
  .cart__item {
    display: table-row;
  }
  .cart__header-cell,
  .cart__item-quantity-controls-container,
  .cart__item-price-container {
    display: table-cell;
    vertical-align: top;
    text-align: left;
  }
  .cart__item-price-container,
  .cart__header-cell:last-child {
    text-align: right;
  }
  .cart__header-cell + .cart__header-cell:before {
    content: none;
  }
}
.cart__summary {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
  margin-top: var(--spacing-600);
}
@media (min-width: 768px) {
  .cart__summary {
    max-width: 343px;
    justify-content: flex-end;
    margin-left: auto;
  }
}

.cart-discount-form {
  display: flex;
  flex-flow: row wrap;
  flex: 1 1 100%;
  margin-bottom: var(--spacing-600);
  gap: var(--spacing-300);
}
.cart-discount-form form-input {
  flex: 1;
  display: block;
}
.cart-discount-form .field__input {
  height: 48px;
  padding: var(--spacing-300);
  color: var(--color-neutrals-600);
}
.cart-discount-form .field__input::placeholder {
  opacity: 1;
  color: var(--color-neutrals-600);
}
.cart-discount-form .field__input:focus {
  border-width: 1px;
}
.cart-discount-form .button {
  min-width: 0;
  height: auto;
  padding: var(--spacing-250) var(--spacing-450);
  background-color: var(--color-neutrals-200);
  font-size: var(--type-fontsize-300);
  font-weight: 300;
  color: var(--color-neutrals-400);
  transition: opacity 0.2s;
}
@media (hover: hover) {
  .cart-discount-form .button:hover {
    background-color: var(--color-neutrals-200);
    color: var(--color-neutrals-400);
    transform: none;
    opacity: 0.7;
  }
}
.cart-discount-form .field-error__message {
  width: 100%;
}
.cart-discount-form .cart__discounts {
  display: none;
}
@media (min-width: 768px) {
  .cart-discount-form .cart__discounts {
    display: flex;
    width: 100%;
    padding-bottom: 0;
  }
}

.cart__subtotal-label,
.cart__subtotal-amount {
  margin-bottom: var(--spacing-200);
  padding-right: var(--spacing-250);
  font-family: var(--typography-styles-font-family-body);
  font-size: var(--type-fontsize-100);
  font-style: normal;
  line-height: var(--typography-styles-line-height-body-xsmall);
  letter-spacing: var(--typography-styles-tracking-body);
}

.cart__subtotal-amount {
  padding-right: 0;
}
.cart__subtotal-amount del {
  color: var(--color-neutrals-600);
}
@media (min-width: 768px) {
  .cart__subtotal-amount {
    padding-left: var(--spacing-400);
  }
}

.minicart__subtotal-note-label {
  width: 100%;
  margin-bottom: var(--spacing-400);
  font-family: var(--typography-styles-font-family-body);
  font-size: var(--type-fontsize-50);
  font-style: normal;
  line-height: var(--typography-styles-line-height-body-xsmall);
  letter-spacing: var(--typography-styles-tracking-body);
  color: var(--color-neutrals-600);
  text-align: right;
}

.cart .checkout-cta {
  width: 100%;
}
@media (min-width: 768px) {
  .cart .checkout-cta {
    max-width: 343px;
    margin-left: auto;
  }
}

.cart__notifications .notification {
  display: flex;
  flex-flow: row nowrap;
  gap: var(--spacing-200);
  margin: var(--spacing-200) 0 var(--spacing-300);
}
.cart__notifications .notification__icon {
  width: 16px;
  height: 16px;
  margin-right: var(--spacing-200);
}
.cart__notifications .notification__text {
  flex: 1;
}
.cart__notifications .notification--information {
  color: var(--color-primary-napaorange-500);
}

.cart__empty {
  display: flex;
  flex-flow: column wrap;
  justify-content: center;
  align-items: center;
  height: 100%;
  padding: 100px 0;
  min-height: calc(60vh - 100px);
}
.cart__empty p {
  margin-bottom: var(--spacing-600);
}

.cart__item-edit-container button {
  border: none;
  background: transparent;
  padding: 0;
  cursor: pointer;
  display: block;
  text-decoration: none;
  padding-bottom: 2px;
  border-bottom: 1px solid #000;
  line-height: 1;
  transition: opacity 0.2s ease-in-out;
}

.cart__item-edit-container button:hover {
  opacity: 0.75;
}

/* h:\projects\vfc\reference-theme\src\components\main-product\main-product.scss */
.main-product {
  background-color: #fff;
  padding-top: var(--mobile-header-height);
}
@media (min-width: 769px) {
  .main-product {
    padding-top: 0;
  }
}

.main-product__inner {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}

.main-product__media {
  overflow: hidden;
}

.main-product__content {
  padding: var(--spacing-600) var(--spacing-400);
  overflow: clip;
}

.main-product__content-header-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: var(--spacing-200);
}

.main-product__content-header-breadcrumbs ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.main-product__content-product-subtitle {
  margin: var(--spacing-50) 0 0;
}

.main-product__content-social-proof {
  margin: var(--spacing-200) 0 0;
  padding: var(--spacing-100);
  background-color: var(--color-primary-warmgray-200);
  display: inline-block;
}

.main-product__content-review-summary {
  margin: var(--spacing-400) 0 0;
}

.main-product__content-review-summary button {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
  display: flex;
}

.main-product__content-description {
  margin-top: var(--spacing-500);
}

.main-product .shopify-product-form {
  margin-top: var(--spacing-200);
  display: block;
}

.main-product__content-review-summary {
  display: flex;
  align-items: center;
  gap: var(--spacing-00);
}

.main-product__content-review-summary svg {
  width: 16px;
  height: auto;
  color: var(--color-orange-300);
}

.main-product__content-review-summary-rating {
  color: var(--color-neutrals-600);
  margin-left: var(--spacing-100);
}

.main-product .shopify-product-form button#add-to-cart {
  width: 100%;
  margin-bottom: var(--spacing-400);
}

.main-product .shopify-product-form button#add-to-cart.with-apple-pay {
  margin-bottom: var(--spacing-200);
}

.main-product__content-header-actions-eyebrow {
  color: var(--color-primary-dirtyblue-400);
}

.main-product .shopify-product-form button#add-to-cart:disabled {
  cursor: not-allowed;
}

.main-product__content-promo-text {
  background-color: var(--color-primary-dirtyblue-200);
  display: inline-block;
  padding: var(--spacing-200);
  margin-bottom: var(--spacing-600);
  margin-top: var(--spacing-200);
}

.main-product__accordions-reviews {
  padding: var(--spacing-800) 0;
}

.main-product__accordions-reviews .main-product__reviews {
  padding-top: var(--spacing-800);
}

.main-product .product-form__apple-pay {
  display: none;
}

.product-form__apple-pay.mobile {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 0 var(--spacing-400);
}

.main-product .product-form__apple-pay button {
  background-color: transparent;
  border: 1px solid var(--color-neutrals-1000);
  width: 100%;
  padding: var(--spacing-200);
  margin: 0;
  text-align: center;
  border-radius: 4px;
  margin: 0 0 var(--spacing-400);
}

.main-product .product-form__apple-pay svg {
  width: 70px;
  height: auto;
  margin: 0 auto;
}

.main-product .quantity-input {
  margin-bottom: var(--spacing-400);
}

.cross-promotion__container {
  margin-top: var(--spacing-600);
  padding-top: var(--spacing-600);
  border-top: 1px solid var(--color-neutrals-300);
}

.cross-promotion__container .cross-promotion__container-inner {
  text-align: center;
}

.cross-promotion__container .cross-promotion__container-eyebrow {
  font-weight: 700;
  color: var(--color-primary-dirtyblue-400);
  margin-bottom: var(--spacing-200);
}

.cross-promotion__container .cross-promotion__container-title {
  font-weight: 700;
  margin-bottom: var(--spacing-200);
}

.cross-promotion__container .cross-promotion__container-link {
  margin-bottom: var(--spacing-200);
  margin-top: var(--spacing-600);
}

.cross-promotion__container .cross-promotion__container-link.desktop {
  display: none;
}

.cross-promotion__container .cross-promotion__container-link.mobile {
  display: block;
}

.cross-promotion__container .cross-promotion__container-link.mobile a {
  justify-content: center;
}

.cross-promotion__container .cross-promotion__container-link a {
  text-decoration: none;
  color: var(--color-primary-dirtyblue-400);
  font-weight: 700;
  display: inline-flex;
  width: 100%;
}

.cross-promotion__container .cross-promotion__container-link a span {
  flex: 0 0 20px;
  margin-left: var(--spacing-0);
}

.cross-promotion__container .cross-promotion__container-image img {
  object-fit: contain;
  max-width: 140px;
  margin: 0 auto;
  display: block;
}

/* upsell */
.main-product__content-low-inventory {
  display: flex;
  align-items: center;
  color: var(--color-orange-400);
  margin-bottom: var(--spacing-400);
  margin-top: var(--spacing-200);
}

.main-product__content-low-inventory-icon {
  width: 20px;
  height: auto;
  margin-right: var(--spacing-200);
}

.product-media-gallery__image {
  position: relative;
  overflow: hidden;
  cursor: zoom-in;
  background-color: var(--schemes-neutral-100);
}

.product-media-gallery__image[data-zoomed=true] {
  cursor: move;
}

.product-media-gallery__image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transition: transform 0.3s ease;
  will-change: transform;
}

.product-media-gallery__image[data-zoomed=true] img {
  transform: scale(2);
  transition: none;
}

.product-media-gallery__button {
  padding: 0;
  margin: 0;
  border: none;
  background: none;
  cursor: zoom-in;
  width: 100%;
  display: block;
}

.product-media-gallery__link {
  display: block;
  width: 100%;
  cursor: pointer;
}

/* Discontinued */
.main-product__content-header-discontinued-title {
  color: var(--color-primary-dirtyblue-400);
}

.main-product__content-header-discontinued-body {
  margin-top: var(--spacing-200);
}

/* Legacy */
.main-product__content-legacy-product-inner {
  display: flex;
  align-items: center;
  gap: var(--spacing-400);
  margin: var(--spacing-800) 0;
}

.legacy-product__image {
  width: 165px;
}

.legacy-product__price {
  font-weight: 700;
}

.legacy-product__cta a {
  width: 100%;
}

.legacy-product__options {
  margin: var(--spacing-100) 0;
  color: var(--color-neutrals-600);
}

@media (min-width: 768px) {
  .main-product__inner {
    display: flex;
  }
  .main-product__media {
    flex: 0 0 65%;
  }
  .main-product__content {
    flex: 0 0 35%;
  }
}
@media (min-width: 1024px) {
  .main-product {
    padding-top: 100px;
  }
  .main-product__accordions-reviews-inner {
    display: flex;
    gap: var(--spacing-1100);
    justify-content: center;
  }
  .main-product__accordions-reviews {
    padding: var(--spacing-1100) 0;
  }
  .main-product__accordions-reviews .main-product__accordions,
  .main-product__accordions-reviews .main-product__reviews {
    flex: 1;
    min-width: 0; /* Prevents flex items from overflowing */
    max-width: calc(50% - var(--spacing-1100) / 2); /* Accounts for gap */
  }
  .main-product__accordions-reviews .main-product__reviews {
    padding-top: 0;
  }
  .cross-promotion__container .cross-promotion__container-inner {
    display: flex;
    gap: var(--spacing-800);
    text-align: left;
  }
  .cross-promotion__container .cross-promotion__container-link.desktop {
    display: block;
  }
  .cross-promotion__container .cross-promotion__container-link.mobile {
    display: none;
  }
  .cross-promotion__container .cross-promotion__container-image {
    max-width: 140px;
    margin-left: auto;
    flex: 0 0 140px;
  }
  .cross-promotion__container .cross-promotion__container-image img {
    max-width: 100%;
    margin: 0;
  }
}
.main-product__media-modal {
  display: flex;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1000;
  background: rgba(255, 255, 255, 0);
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0s linear 0.3s, background-color 0.3s ease;
}

.main-product__media-modal[data-active=true] {
  opacity: 1;
  visibility: visible;
  background: #fff;
  transition: opacity 0.3s ease, visibility 0s, background-color 0.3s ease;
}

.main-product__media-modal-content {
  display: flex;
  gap: 20px;
  max-height: 90vh;
  width: 100%;
  background: white;
  border-radius: 4px;
  padding: 20px;
}

.main-product__media-modal-thumbnails {
  gap: 10px;
  overflow-y: auto;
  max-height: 90vh;
  padding-right: 10px;
  max-height: 550px;
}

.main-product__media-modal-thumbnail {
  width: 100px;
  height: 100px;
  padding: 0;
  border: 2px solid transparent;
  border-radius: 4px;
  cursor: pointer;
  transition: border-color 0.2s ease;
  background: none;
  overflow: hidden;
  display: block;
}

.main-product__media-modal-thumbnail[data-active=true] {
  border-color: var(--color-primary-dirtyblue-400);
}

.main-product__media-modal-thumbnail:hover {
  border-color: var(--color-neutrals-300);
}

.main-product__media-modal-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.main-product__media-modal-image-container {
  position: relative;
  max-height: 90vh;
  overflow: hidden;
  cursor: zoom-in;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}

.main-product__media-modal-image {
  max-height: 90vh;
  max-width: 90vw;
  object-fit: contain;
  transform: scale(0.95);
  opacity: 0;
  transition: transform 0.3s ease, opacity 0.3s ease;
  will-change: transform;
}

.main-product__media-modal[data-active=true] .main-product__media-modal-image {
  transform: scale(1);
  opacity: 1;
}

.main-product__media-modal-image-container[data-zoomed=true] .main-product__media-modal-image {
  transform: scale(2.5);
  transition: none;
  cursor: zoom-out;
}

.main-product__media-modal-close {
  position: absolute;
  top: 20px;
  right: 20px;
  background: rgba(255, 255, 255, 0.9);
  border: none;
  cursor: pointer;
  padding: 8px;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: scale(0.9);
  opacity: 0;
  border: 1px solid var(--color-neutrals-300);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  transition: transform 0.2s ease, opacity 0.2s ease, background-color 0.2s ease;
}

.main-product__media-modal[data-active=true] .main-product__media-modal-close {
  transform: scale(1);
  opacity: 1;
}

.main-product__media-modal-close:hover {
  background: rgb(255, 255, 255);
  transform: scale(1.05);
}

.main-product__media-modal-close svg {
  width: 20px;
  height: 20px;
}

/* h:\projects\vfc\reference-theme\src\components\main-product-grid\main-product-grid.scss */
.main-product-grid {
  display: block;
  margin-top: 60px;
}
.main-product-grid.search-grid {
  margin-top: 0;
}
@media (min-width: 769px) {
  .main-product-grid {
    margin-top: 0;
  }
}

.search-grid .suggestion-chip {
  background-color: var(--color-neutrals-25);
}

.product-grid {
  display: grid;
  grid-auto-flow: dense;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--spacing-50);
}
@media (min-width: 769px) {
  .product-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: var(--spacing-25);
  }
}
.product-grid .product-card {
  padding: 0;
  margin: 0;
}

/* SEO Text */
.plp-seo-text {
  margin: 0 var(--screens-mobile-gutter) var(--spacing-700);
}
@media (min-width: 768px) {
  .plp-seo-text {
    margin: 0 auto var(--spacing-800);
    max-width: 1400px;
    padding: var(--screens-desktop-gutter);
  }
}
.plp-seo-text p {
  margin-bottom: var(--spacing-400);
}
.plp-seo-text h1, .plp-seo-text h2, .plp-seo-text h3, .plp-seo-text h4, .plp-seo-text h5, .plp-seo-text h6 {
  margin-bottom: var(--spacing-200);
}
.plp-seo-text .rte-text-link {
  color: var(--typography-color-brand);
}

/* h:\projects\vfc\reference-theme\src\components\mega-menu\mega-menu.scss */
[data-mega-menu] {
  display: none;
  position: absolute;
  top: calc(100% + var(--spacing-400));
  left: 0;
  right: 0;
  z-index: 20;
}

[data-mega-menu][data-active=true] {
  display: block;
}

.mega-menu {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: stretch;
  border-radius: var(--borders-radius-default);
  box-shadow: var(--overlay);
  background: var(--ui-elements-navigation-header-desktop-background);
  max-height: 80vh;
  overflow: auto;
}
.mega-menu > .mega-menu-tile-list {
  flex: 0 0 310px;
}

.mega-menu__columns {
  flex: 1;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}

.mega-menu__bottom-link {
  display: flex;
  justify-content: center;
  width: 100%;
  position: sticky;
  bottom: 0;
  padding: var(--spacing-300) var(--spacing-700);
  background-color: var(--ui-elements-navigation-header-desktop-focus);
}

/* h:\projects\vfc\reference-theme\src\components\mega-menu-dropdown\mega-menu-dropdown.scss */
.mega-menu-dropdown {
  position: relative;
}

.mega-menu-dropdown__trigger {
  display: flex;
  align-items: center;
  background-color: transparent;
  border: none;
}
.mega-menu-dropdown__trigger > * + * {
  margin-left: var(--spacing-200);
}

[data-mega-menu-dropdown][data-active=false] [data-mega-menu-dropdown-list] {
  display: none;
}

.mega-menu-dropdown__list {
  position: absolute;
  z-index: 100;
  top: calc(100% + var(--spacing-200));
  padding: var(--spacing-400);
  background-color: var(--ui-elements-navigation-header-desktop-background);
  width: 132px;
  box-shadow: var(--overlay);
  border-radius: var(--borders-radius-default);
}
.mega-menu-dropdown__list > * + * {
  margin-top: var(--spacing-200);
}

.mega-menu-dropdown__list-item {
  padding: var(--spacing-200) 0;
}
.mega-menu-dropdown__list-item a {
  text-decoration: none;
}

/* h:\projects\vfc\reference-theme\src\components\mega-menu-enhanced-list\mega-menu-enhanced-list.scss */
.mega-menu-enhanced-list {
  padding: var(--spacing-800) var(--spacing-700);
}
.mega-menu-enhanced-list > * + * {
  margin-top: var(--spacing-600);
}
.mega-menu-enhanced-list li {
  list-style: none;
}

.mega-menu-enhanced-list__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: var(--spacing-400);
  padding: 0;
}

.mega-menu-enhanced-list--single {
  grid-column: span 1;
}
.mega-menu-enhanced-list--single .mega-menu-enhanced-list__list {
  grid-template-columns: repeat(1, 1fr);
}

.mega-menu-enhanced-list--double {
  grid-column: span 2;
}
.mega-menu-enhanced-list--double .mega-menu-enhanced-list__list {
  grid-template-columns: repeat(2, 1fr);
}

.mega-menu-enhanced-list--triple {
  grid-column: span 3;
}
.mega-menu-enhanced-list--triple .mega-menu-enhanced-list__list {
  grid-template-columns: repeat(3, 1fr);
}

.mega-menu-enhanced-list--full {
  grid-column: span 4;
}
.mega-menu-enhanced-list--full .mega-menu-enhanced-list__list {
  grid-template-columns: repeat(4, 1fr);
}

.mega-menu-enhanced-list__card {
  display: grid;
  /* grid-template-columns: 30% 1fr; */
  grid-template-columns: auto 1fr;
  grid-gap: var(--spacing-400);
  position: relative;
}

.mega-menu-enhanced-list__card-image {
  position: relative;
  /* padding-bottom: 100%;
  width: 100%; */
  height: 96px;
  width: 96px;
}
@media (max-width: 1200px) {
  .mega-menu-enhanced-list__card-image {
    height: 64px;
    width: 64px;
  }
}
.mega-menu-enhanced-list__card-image img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.mega-menu-enhanced-list__card-content {
  display: grid;
}

.mega-menu-enhanced-list__card-title {
  text-decoration: none;
  font-weight: 700;
}

.mega-menu-enhanced-list__card-description {
  color: var(--typography-color-secondary);
}

/* h:\projects\vfc\reference-theme\src\components\mega-menu-list\mega-menu-list.scss */
.mega-menu-list > * + * {
  margin-top: var(--spacing-50);
}
.mega-menu-list li {
  list-style: none;
}

.mega-menu-list__list {
  display: grid;
  padding: 0;
}

.mega-menu-list--single {
  grid-column: span 1;
}
.mega-menu-list--single .mega-menu-list__list {
  grid-template-columns: repeat(1, 1fr);
}

.mega-menu-list--double {
  grid-column: span 2;
}
.mega-menu-list--double .mega-menu-list__list {
  grid-template-columns: repeat(2, 1fr);
}

.mega-menu-list--triple {
  grid-column: span 3;
}
.mega-menu-list--triple .mega-menu-list__list {
  grid-template-columns: repeat(3, 1fr);
}

.mega-menu-list--full {
  grid-column: span 4;
}
.mega-menu-list--full .mega-menu-list__list {
  grid-template-columns: repeat(4, 1fr);
}

.mega-menu-list__list-item {
  display: flex;
  flex-flow: wrap;
  gap: var(--spacing-200);
}
.mega-menu-list__list-item a {
  text-decoration: none;
}

.mega-menu-list__list-item a:hover {
  color: var(--color-primary-napa-orange-500, #BC4A1A);
  text-decoration: underline;
}

.mega-menu-list-heading {
  display: flex;
  align-items: center;
  color: var(--typography-color-default, #000);
  font-family: var(--typography-styles-font-family-body, "Akkurat Pro");
  font-size: var(--typography-styles-sizing-body-medium, 16px);
  font-style: normal;
  font-weight: 700;
  line-height: var(--typography-styles-line-height-body-medium, 24px); /* 150% */
  letter-spacing: var(--typography-styles-tracking-body, 0px);
}
.mega-menu-list-heading span {
  display: inline-flex;
  visibility: hidden;
}

.mega-menu-list-heading:hover {
  color: var(--color-primary-napa-orange-500, #BC4A1A);
}
.mega-menu-list-heading:hover span {
  visibility: visible;
}

/* h:\projects\vfc\reference-theme\src\components\mega-menu-tile-list\mega-menu-tile-list.scss */
.mega-menu-tile-list {
  background-color: var(--ui-elements-navigation-mega-menu-highlight);
  padding: var(--spacing-800) var(--spacing-700);
  grid-column: 4;
}
.mega-menu-tile-list > * + * {
  margin-top: var(--spacing-600);
}
.mega-menu-tile-list li {
  list-style: none;
}

.mega-menu-tile-list__list {
  display: grid;
  grid-gap: var(--spacing-800);
  padding: 0;
}

.mega-menu-tile-list__card {
  display: grid;
  grid-gap: var(--spacing-400);
}

.mega-menu-tile-list__card-image {
  position: relative;
  width: 100%;
  padding-bottom: 67%;
}
.mega-menu-tile-list__card-image img {
  position: absolute;
  height: 100%;
  width: 100%;
  object-fit: cover;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

/* h:\projects\vfc\reference-theme\src\components\minicart\minicart.scss */
.minicart {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  visibility: hidden;
  transition: visibility 0s 0.3s;
}

.minicart[data-active=true] {
  visibility: visible;
  transition: visibility 0s;
}

.minicart__overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
  cursor: pointer;
}

.minicart[data-active=true] .minicart__overlay {
  opacity: 1;
}

.minicart__drawer {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  max-width: 100%;
  background-color: #fff;
  transform: translateX(100%);
  transition: transform 0.3s ease-in-out;
}
@media (min-width: 769px) {
  .minicart__drawer {
    max-width: 512px;
  }
}

.minicart[data-active=true] .minicart__drawer {
  transform: translateX(0);
}

.minicart.is-closing .minicart__drawer {
  transform: translateX(100%);
}

.minicart.is-closing .minicart__overlay {
  opacity: 0;
}

@media (max-width: 767px) {
  .minicart__drawer {
    max-width: 100%;
  }
}
.minicart__content {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.minicart__header {
  padding: var(--spacing-400);
}

.minicart__header-inner {
  padding: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: var(--spacing-400);
}

.minicart__title {
  margin: 0;
}

.minicart__close {
  border: none;
  background: transparent;
  padding: 0;
  cursor: pointer;
  display: block;
}

.minicart__items {
  flex: 1;
  overflow-y: auto;
  padding: 0 var(--spacing-400);
  scrollbar-gutter: stable;
}

.minicart__item {
  display: grid;
  grid-template-areas: "image details details" "image prices prices" "image quantity remove" "promo promo promo";
  grid-template-columns: 120px auto;
  gap: var(--spacing-200) var(--spacing-400);
  padding: 0 0 var(--spacing-600);
  margin: 0 0 var(--spacing-600);
  border-bottom: 1px solid var(--color-primary-warmgray-300);
}
@media (min-width: 769px) {
  .minicart__item {
    grid-template-areas: "image details prices" "image quantity remove" "promo promo promo";
    grid-template-columns: 120px auto auto;
  }
}

.minicart__item:last-child {
  border-bottom: none;
}

.minicart__item-image {
  grid-area: image;
  position: relative;
  width: 120px;
  padding-bottom: 125%;
}

.minicart__item-image-link {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
}

.minicart__item-image-link img {
  display: block;
  width: 120px;
  height: auto;
}

.minicart__item-title {
  font-family: var(--heading-font);
  font-size: var(--heading-xsmall-size);
  font-weight: var(--heading-weight);
  line-height: var(--heading-xsmall-line-height);
  letter-spacing: calc(var(--heading-xsmall-size) * var(--heading-letter-spacing));
  text-transform: var(--heading-text-transform);
}

.minicart__item-title a {
  text-decoration: none;
}

.minicart__item-title-container {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: var(--spacing-200);
}

.minicart__item-variant-container {
  margin-top: var(--spacing-200);
}

.minicart__item-quantity-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-top: var(--spacing-400);
}

.minicart__item-quantity {
  grid-area: quantity;
}

.minicart__item-remove-container {
  grid-area: remove;
  justify-self: end;
  align-self: center;
}

.minicart__item-remove {
  border: none;
  background: var(--color-neutrals-0);
  color: var(--color-neutrals-1000);
  padding: 0 0.5rem;
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 5px;
}

.minicart__item-remove svg {
  width: 24px;
  height: auto;
}

@media (min-width: 769px) {
  .minicart__item-price--mobile {
    display: none;
  }
}

.minicart__footer {
  border-top: var(--borders-width-decorative) solid var(--borders-color-light);
  padding: var(--spacing-400) var(--screens-mobile-margin);
}

.minicart__subtotal {
  display: flex;
  justify-content: space-between;
  margin-bottom: var(--spacing-200);
  font-weight: bold;
}

.minicart__subtotal-note-label {
  margin-bottom: var(--spacing-400);
  color: var(--color-neutrals-600);
}

.minicart__subtotal-amount del {
  color: var(--color-neutrals-600);
}

.minicart__buttons {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 1fr;
  gap: 1rem;
}

.minicart__item-edit-container {
  margin-top: var(--spacing-400);
  margin-bottom: var(--spacing-400);
}

.minicart__item-edit-container button {
  border: none;
  background: transparent;
  padding: 0;
  cursor: pointer;
  display: block;
  text-decoration: none;
  padding-bottom: 2px;
  border-bottom: 1px solid #000;
  line-height: 1;
  transition: opacity 0.2s ease-in-out;
}

.minicart__item-edit-container button:hover {
  opacity: 0.75;
}

.minicart__item-price {
  grid-area: prices;
  font-weight: 700;
}

.minicart__item-price--compare {
  font-weight: 400;
  text-decoration: line-through;
}

.minicart__item-price--desktop .minicart__item-price--compare {
  display: block;
}

.minicart__item-content {
  flex: 1;
}

.minicart__discounts {
  display: flex;
  flex-flow: wrap;
  gap: var(--spacing-200);
  grid-area: promo;
  grid-column: span 2;
  margin-top: var(--spacing-200);
}
@media (min-width: 769px) {
  .minicart__discounts {
    grid-column: span 3;
  }
}
.minicart__discounts .discount {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  gap: var(--spacing-50);
  padding: var(--spacing-50) var(--spacing-200);
  border-radius: var(--borders-radius-50);
  background-color: var(--color-primary-essential-200);
  text-transform: uppercase;
  font-weight: 700;
}
.minicart__discounts .discount .icon-s {
  width: 12px;
  height: 12px;
}
.minicart__discounts .discount__remove {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 16px;
  height: 16px;
  background: none;
  border-radius: 0;
  border: none;
  padding: 0;
  margin-left: var(--spacing-50);
}
@media (hover: hover) {
  .minicart__discounts .discount__remove {
    transition: opacity 0.2s;
  }
  .minicart__discounts .discount__remove:hover {
    opacity: 0.7;
  }
}

.minicart__notifications {
  padding: 5px 0;
}

.minicart__item-option + .minicart__notifications {
  padding-top: 15px;
}

.minicart__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  gap: var(--spacing-600);
}

.minicart__empty-text {
  font-size: 24px;
  font-weight: 200;
}

.notification {
  font-family: var(--body-font);
  font-size: var(--body-small-size);
  font-weight: var(--body-weight);
  line-height: var(--body-small-line-height);
  letter-spacing: calc(var(--body-small-size) * var(--body-letter-spacing));
  display: flex;
  gap: 5px;
  flex-direction: row;
  align-items: center;
}

.notification--success {
  color: var(--color-green-400);
}

.notification--information {
  color: var(--color-orange-400);
}

.notification--error,
.notification--error-alt {
  color: var(--color-red-400);
}

/* h:\projects\vfc\reference-theme\src\components\minicart-variant-editor\minicart-variant-editor.scss */
.minicart-variant-editor {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  visibility: hidden;
  transition: visibility 0s linear 0.3s;
}

.minicart-variant-editor[data-active=true] {
  visibility: visible;
  transition-delay: 0s;
}

.minicart-variant-editor__overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0);
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
  cursor: pointer;
}

.minicart-variant-editor__overlay.is-active {
  background-color: rgba(0, 0, 0, 0.75);
}

.minicart-variant-editor.is-active .minicart-variant-editor__overlay {
  opacity: 1;
}

.minicart-variant-editor__drawer {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  max-width: 512px;
  background-color: #fff;
  transform: translateX(100%);
  transition: transform 0.3s ease-in-out;
  padding: var(--spacing-700);
}

.minicart-variant-editor.is-active .minicart-variant-editor__drawer {
  transform: translateX(0);
}

@media (max-width: 767px) {
  .minicart-variant-editor__drawer {
    max-width: 100%;
  }
}
.minicart-variant-editor__content {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.minicart-variant-editor__header {
  padding: 0;
  border-bottom: 1px solid var(--color-primary-warmgray-300);
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 0 var(--spacing-600);
  padding-bottom: var(--spacing-400);
  flex: 0 0 auto;
}

.minicart-variant-editor variant-editor {
  flex: 1;
}

.minicart-variant-editor form {
  height: 100%;
}

.minicart-variant-editor__title {
  margin: 0;
}

.minicart-variant-editor__close {
  border: none;
  background: transparent;
  padding: 0;
  cursor: pointer;
  display: block;
}

.minicart-variant-editor__close svg {
  width: 32px;
  height: 32px;
}

.minicart-variant-editor__item {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: var(--spacing-400);
  margin-bottom: var(--spacing-600);
  padding-bottom: var(--spacing-600);
  border-bottom: 1px solid var(--color-primary-warmgray-300);
}

.minicart-variant-editor__item-image {
  max-width: 140px;
}

.minicart-variant-editor__item-image img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

.minicart-variant-editor__options {
  flex: 1;
  overflow-y: auto;
}

.minicart-variant-editor__footer {
  margin-top: var(--spacing-600);
  border-top: 1px solid var(--color-primary-warmgray-300);
  padding-top: var(--spacing-600);
}

.minicart-variant-editor__footer {
  display: flex;
  gap: var(--spacing-400);
}

.minicart-variant-editor__footer .button {
  width: 100%;
  flex: 1;
  min-width: 0;
}

.minicart-variant-editor__item-quantity {
  margin-top: var(--spacing-400);
}

.minicart-variant-editor__item-price {
  margin-top: var(--spacing-400);
}

.minicart-variant-editor .product-form-options__list {
  display: flex;
  flex-wrap: wrap;
}

/* h:\projects\vfc\reference-theme\src\components\mobile-mega-menu\mobile-mega-menu.scss */
.mobile-mega-menu {
  background: var(--ui-elements-overlays-default);
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
  overflow: auto;
  transition: transform 0.2s ease-in-out;
}
@media (min-width: 769px) {
  .mobile-mega-menu {
    display: none;
  }
}

[data-mobile-mega-menu][data-active=false] {
  visibility: hidden;
  pointer-events: none;
}
[data-mobile-mega-menu][data-active=false] .mobile-mega-menu {
  transform: translateX(100%);
}
[data-mobile-mega-menu][data-active=false] [data-mobile-close-button] {
  display: none;
}

.mobile-mega-menu__content {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.brand_moment_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--spacing-500, 20px) var(--spacing-100, 6px) var(--spacing-300, 12px) var(--grids-spacing-mobile-margin, 16px);
}

.brand_moment_header .header__logo,
.brand_moment_header__logo {
  height: 24px;
}

.mobile-mega-menu__list {
  display: grid;
  gap: var(--spacing-elements-group-gap-interactive);
  padding: var(--screens-mobile-page-top) var(--screens-mobile-margin) 0;
  padding-bottom: var(--spacing-600);
}

.brand_moment_header + .mobile-mega-menu__list {
  padding-top: 0px;
  margin-top: 0px;
}

.mobile-mega-menu__list-item {
  list-style: none;
  padding: var(--spacing-200) 0;
}
.mobile-mega-menu__list-item--alt {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
}
.mobile-mega-menu__list-item a {
  text-decoration: none;
}

.mobile-mega-menu__list-item-button {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: transparent;
  border: none;
  width: auto;
  padding: 0;
}

.mobile-mega-menu-panel__divider {
  height: 1px;
  width: 100%;
  border-bottom: 1px solid var(--ui-elements-dividers-primary);
  width: calc(100% - 2 * var(--screens-mobile-margin));
  margin-left: auto;
  margin-right: auto;
}

.mobile-mega-menu__utility-menu {
  padding: var(--spacing-600) var(--screens-mobile-margin) var(--screens-mobile-content-bottom);
  background: var(--color-neutrals-25);
  flex-grow: 1;
}

.mobile-mega-menu__close {
  position: fixed;
  top: var(--spacing-400);
  right: 0;
  z-index: 110;
  height: 44px;
  width: 44px;
  border-radius: var(--borders-radius-full);
  background-color: transparent;
  border: none;
  box-sizing: content-box;
}

.mobile-mega-menu__close-icon {
  position: absolute;
  color: var(--icons-default);
  transform: translate(-50%, -50%);
  top: var(--spacing-400);
  right: var(--spacing-100);
  width: 24px;
  height: 24px;
}

.mobile-mega-menu__panel {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 101;
  background: var(--ui-elements-overlays-default);
}

[data-mobile-mega-menu-panel][data-active=false] {
  transform: translateX(100%);
}

.menu-open {
  position: fixed;
  left: 0;
  right: 0;
  width: 100%;
  overflow: hidden;
}

/* h:\projects\vfc\reference-theme\src\components\mobile-mega-menu-panel\mobile-mega-menu-panel.scss */
.mobile-mega-menu-panel {
  display: flex;
  flex-flow: column;
  background-color: var(--ui-elements-overlays-default);
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  transition: transform 0.2s ease-in-out;
  transform: translateX(0%);
  overflow: auto;
}

[data-mobile-mega-menu-panel][data-active=false] .mobile-mega-menu-panel {
  transform: translateX(100%);
}

.panel-mega-menu__utility-menu {
  background: var(--color-neutrals-25);
  flex-grow: 1;
}

.panel_utility-menu-padding {
  padding: 0 var(--screens-mobile-margin) var(--screens-mobile-content-bottom);
  padding-top: var(--spacing-600);
}

/* when the main menu is closing, delay transition so that the panels aren't moving while the main menu is closing */
[data-mobile-mega-menu][data-active=false] .mobile-mega-menu-panel {
  transition-delay: 0.4s;
}

.mobile-mega-menu-panel__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: var(--spacing-500, 20px) var(--spacing-100, 6px) var(--spacing-300, 12px) var(--grids-spacing-mobile-margin, 16px);
}

.mobile-mega-menu-panel__close {
  display: flex;
  align-items: center;
  justify-content: start;
  background-color: transparent;
  border: none;
  padding: 0;
  height: 36px;
  width: 100%;
}
.mobile-mega-menu-panel__close > * + * {
  margin-left: var(--spacing-400);
}

.mobile-mega-menu-panel__header-title {
  position: absolute;
  left: calc(36px + var(--spacing-200));
  pointer-events: none;
}

.mobile-mega-menu-panel__list {
  padding: 0 var(--spacing-400) var(--spacing-600) var(--spacing-400);
}

.mobile-mega-menu-panel__list-item {
  list-style: none;
  padding: var(--spacing-200) 0;
}
.mobile-mega-menu-panel__list-item a {
  text-decoration: none;
}

.mobile-mega-menu-panel__list-item-button {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: transparent;
  border: none;
  width: 100%;
  padding: 0;
  cursor: pointer;
}
.mobile-mega-menu-panel__list-item-button span,
.mobile-mega-menu-panel__list-item-button svg {
  pointer-events: none;
}

.mobile-mega-menu-panel__utility-menu {
  margin-top: auto;
  background: var(--color-neutrals-25);
}

.content_cards .hero-banner {
  position: relative;
  flex-direction: column;
  display: flex !important;
  justify-content: flex-end !important;
  align-items: flex-start !important;
  min-height: 184px;
  padding: var(--spacing-400);
  gap: var(--spacing-400);
  overflow: hidden;
  color: #ffffff;
  box-sizing: border-box;
  margin-bottom: var(--spacing-50);
}

.content_cards .hero-banner:last-child {
  margin-bottom: 0;
}

.content_cards .hero-banner img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}

.content_cards .hero-banner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.6) 33%, rgba(0, 0, 0, 0.4) 66%, rgba(0, 0, 0, 0.2) 100%);
  z-index: 1;
  pointer-events: none;
}

.content_cards .hero-banner .hero-text {
  position: relative;
  z-index: 2;
  font-size: 1.4rem;
  font-weight: 600;
  text-transform: uppercase;
  margin: 0 0 0.3em 0;
  line-height: 1.2;
}

.content_cards .hero-banner .cta-button {
  position: relative;
  z-index: 2;
  color: #ffffff;
  text-decoration: none;
  font-size: 0.9rem;
  font-weight: normal;
  display: inline-flex;
  align-items: center;
  padding: 2px 0;
}

.content_cards .hero-banner .cta-button::after {
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-left: 8px;
  vertical-align: middle;
}

.icon-arrow-right_content_cards {
  margin-left: var(--spacing-50);
  display: block;
  height: 20px;
  width: 20px;
}

.horizontal-scroll-cards {
  display: flex;
  overflow-y: auto;
  overflow-x: auto;
  padding: 15px;
  padding-left: 0;
  padding-right: 0;
  gap: 8px;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

.horizontal-scroll-cards .hero-banner {
  display: flex;
  flex-direction: column;
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
  flex: 0 0 auto;
  width: 240px;
  height: 300px;
  border: 1px solid #eaeaea;
  overflow: hidden;
  color: #333333;
  box-sizing: border-box;
}

.horizontal-scroll-cards .hero-banner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.6) 33%, rgba(0, 0, 0, 0.4) 66%, rgba(0, 0, 0, 0.2) 100%);
  z-index: 1;
  pointer-events: none;
}

.horizontal-scroll-cards .hero-banner img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}

.horizontal-scroll-cards .hero-banner .hero-text,
.horizontal-scroll-cards .hero-banner .cta-button {
  position: static;
  z-index: auto;
  z-index: 5;
  padding: 1rem;
  margin: 0 0 0.3em 0;
}

.horizontal-scroll-cards .hero-banner .hero-text {
  padding-top: 10px;
  font-size: 0.9em;
  font-weight: 600;
  text-transform: uppercase;
  color: var(--typography-color-inverse, #FFF);
  margin: 0 0 4px 0;
  line-height: 1.3;
}

.horizontal-scroll-cards .hero-banner .cta-button {
  padding-bottom: 10px;
  font-size: 0.85em;
  font-weight: normal;
  color: var(--typography-color-inverse, #FFF);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
}

.horizontal-scroll-cards .hero-banner .cta-button::after {
  content: "";
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 5px;
  vertical-align: middle;
}

/* h:\projects\vfc\reference-theme\src\components\mobile-mega-menu-tile-slider\mobile-mega-menu-tile-slider.scss */
.mobile-mega-menu-tile-slider {
  position: relative;
}
.mobile-mega-menu-tile-slider .swiper {
  padding: 0 var(--screens-mobile-margin);
}
.mobile-mega-menu-tile-slider .swiper-slide {
  width: auto;
}
.mobile-mega-menu-tile-slider > * + * {
  margin-top: var(--spacing-600);
}

.mobile-mega-menu-tile-slider__heading {
  padding: 0 var(--screens-mobile-margin);
}

.mobile-mega-menu-tile-slider__card {
  display: grid;
  grid-gap: var(--spacing-400);
  width: 160px;
}

.mobile-mega-menu-tile-slider__card-image {
  width: 100%;
  padding-bottom: 100%;
  position: relative;
}
.mobile-mega-menu-tile-slider__card-image img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.mobile-mega-menu-tile-slider__card-content > * + * {
  margin-top: var(--spacing-300);
}

.mobile-mega-menu-tile-slider__prev,
.mobile-mega-menu-tile-slider__next {
  display: none;
  background-color: transparent;
  border: none;
  position: absolute;
  top: 50%;
  z-index: 1;
  transform: translateY(-50%);
  margin: 0;
  z-index: 10;
}

.mobile-mega-menu-tile-slider__prev {
  left: var(--spacing-200);
}

.mobile-mega-menu-tile-slider__next {
  right: var(--spacing-200);
}

/* show arrows for keyboard users */
html:not([data-whatintent=keyboard]) .mobile-mega-menu-tile-slider__prev, html:not([data-whatintent=keyboard]) .mobile-mega-menu-tile-slider__next {
  position: absolute;
  width: 1px !important;
  height: 1px !important;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

/* h:\projects\vfc\reference-theme\src\components\mobile-mega-menu-utility-menu\mobile-mega-menu-utility-menu.scss */
.mobile-mega-menu-utility-menu {
  display: grid;
  padding: 0;
}

.mobile-mega-menu-utility-menu__item {
  list-style: none;
  padding: var(--spacing-200) 0;
  font-weight: var(--type-fontweight-light);
}
.mobile-mega-menu-utility-menu__item a {
  gap: 8px;
  display: flex;
  text-decoration: none;
}

/* h:\projects\vfc\reference-theme\src\components\modal\modal.scss */
/*
  Basic Modal Styles
*/
.modal {
  display: none;
}

[data-active=true] .modal {
  display: block;
}

.modal__overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1000;
}

.modal__container {
  background-color: var(--ui-elements-overlays-background);
  padding: var(--spacing-500);
  max-width: 500px;
  max-height: 100vh;
  border-radius: var(--ui-elements-forms-border-radius);
  overflow-y: auto;
  box-sizing: border-box;
}

.modal__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.modal__footer {
  background: transparent;
  padding: var(--spacing-400) 0;
}

.modal__title {
  margin-top: 0;
  margin-bottom: 0;
  color: var(--typography-color-brand);
  box-sizing: border-box;
}

.modal__close {
  background: transparent;
  border: 0;
}

.modal__header .modal__close:before {
  content: "✕";
}

.modal__content {
  margin-top: var(--spacing-300);
  margin-bottom: var(--spacing-300);
}

/* h:\projects\vfc\reference-theme\src\components\mp-accordion-reviews\mp-accordion-reviews.scss */
/* h:\projects\vfc\reference-theme\src\components\newsletter-form\newsletter-form.scss */
.newsletter-form-container h3 {
  font-weight: 700;
  margin-bottom: var(--spacing-200);
}

.newsletter-form {
  display: flex;
  align-items: flex-start;
  position: relative;
  margin-top: var(--spacing-400);
  margin-bottom: var(--spacing-800);
  max-width: initial;
}
.newsletter-form h3 {
  font-weight: 700;
}
.newsletter-form form-input {
  width: 100%;
}
.newsletter-form .field__label {
  color: var(--typography-color-secondary);
}
.newsletter-form .field__input {
  color: var(--color-neutrals-1000);
  padding: 20px 10px 5px;
  border-color: var(--typography-color-secondary);
}
.newsletter-form .checkbox {
  font-family: var(--body-font);
  font-size: var(--body-small-size);
  font-weight: var(--body-weight);
  line-height: var(--body-small-line-height);
  letter-spacing: calc(var(--body-small-size) * var(--body-letter-spacing));
}
.newsletter-form .checkbox a {
  text-decoration: none;
}
.newsletter-form .button.button--tiny {
  height: auto;
  padding: 10px;
  font-size: 20px;
  width: 100%;
}
@media (hover: hover) {
  .newsletter-form .checkbox a:hover {
    text-decoration: underline;
  }
}
@media (min-width: 769px) {
  .newsletter-form {
    max-width: 450px;
  }
  .newsletter-form .button.button--tiny {
    min-width: 134px;
    width: auto;
    padding: 14px;
  }
}

/* h:\projects\vfc\reference-theme\src\components\pagination\pagination.scss */
.pagination {
  display: flex;
  justify-content: center;
  margin: var(--spacing-700) auto;
}
@media (min-width: 1024px) {
  .pagination {
    margin-bottom: var(--spacing-700);
  }
}

.pagination__inner {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-400);
}

.pagination__count {
  align-self: center;
}

.button.button--load-more {
  align-self: center;
  min-width: 160px;
  font-size: 20px;
  height: auto;
  padding: 15px var(--spacing-200);
}

.pagination-progress-bar {
  min-width: 300px;
  height: 2px;
  border-radius: var(--borders-radius-full);
  background: var(--ui-elements-controls-container);
  overflow: hidden;
}

.pagination-progress-bar__fill {
  height: 100%;
  background-color: var(--ui-elements-controls-dark);
  transition: width 0.3s ease;
}

/* Pagination by Page */
.pagination-page {
  max-width: 1280px;
  width: 100%;
  margin: 0 var(--screens-mobile-margin);
}
@media (min-width: 1024px) {
  .pagination-page {
    margin: 0 auto;
  }
}

.pagination__list {
  list-style: none;
  display: flex;
  flex-direction: row;
  padding: 0;
  margin: 0 var(--spacing-300);
  justify-content: space-between;
  width: 100%;
  border-top: 1px solid var(--ui-elements-dividers-primary);
}

.pagination__item {
  padding: var(--spacing-300) 0;
}

.pagination__item--next,
.pagination__item--prev {
  font-weight: 700;
  text-decoration: none;
}

/* h:\projects\vfc\reference-theme\src\components\pdp-accordions\pdp-accordions.scss */
.pdp-accordions .accordion__header {
  border-bottom: 1px solid var(--color-primary-warmgray-300);
}

.pdp-accordions basic-accordion[data-active=true] .accordion__header {
  border-bottom: 1px solid transparent;
}

.pdp-accordions basic-accordion[data-active=true] .accordion__content {
  border-bottom: 1px solid var(--color-primary-warmgray-300);
}

.pdp-accordions basic-accordion:last-child .accordion__header {
  border-bottom: none;
}

.pdp-accordions basic-accordion:last-child .accordion__content {
  border-bottom: none;
}

.pdp-accordions basic-accordion:last-child .accordion__content {
  border-bottom: none;
}

.pdp-accordions basic-accordion .accordion__content p:not(:first-child) {
  margin-top: var(--spacing-600);
}

/* h:\projects\vfc\reference-theme\src\components\pdp-reviews\pdp-reviews.scss */
.pdp-reviews .pdp-reviews__header {
  text-align: center;
}

.pdp-reviews .pdp-reviews__header .pdp-reviews__header-rating .product-reviews__header-rating-stars {
  display: flex;
  justify-content: center;
  margin-top: var(--spacing-400);
}

.pdp-reviews .pr-rating-stars {
  display: inline-block;
}

.pdp-reviews .pdp-reviews__header-rating .pr-star-v4 {
  border-radius: 3px;
  height: 20px;
  margin-left: 0;
  margin-right: 2px;
  padding: 3px;
  width: 20px;
  background-size: cover;
  display: inline-block;
}

.pdp-reviews__content {
  margin-top: var(--spacing-600);
}

.pdp-reviews__content-inner {
  max-width: 300px;
  margin: 0 auto;
}

.pdp-reviews__content-inner ul {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-200);
  list-style: none;
  margin: 0;
  padding: 0;
}

.pdp-reviews__content-inner button,
.pdp-reviews__content-inner a {
  width: 100%;
}

/* h:\projects\vfc\reference-theme\src\components\pdp-smart-collection\pdp-smart-collection.scss */
.pdp-smart-collection {
  display: block;
}

.pdp-smart-collection__collection-inner {
  display: flex;
  max-width: 100%;
  overflow-x: auto;
}

.pdp-smart-collection__collection-inner > product-card {
  flex: 0 0 25%;
}

/* h:\projects\vfc\reference-theme\src\components\pdp-sticky-atc\pdp-sticky-atc.scss */
pdp-sticky-atc {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 100;
  background-color: #fff;
  box-shadow: 0px 4px 40px 0px rgba(0, 0, 0, 0.1);
  padding: var(--spacing-600) 0;
  transform: translateY(0);
  transition: transform 0.3s ease-in-out;
}
@media (max-width: 991px) {
  pdp-sticky-atc {
    display: none;
  }
}

.pdp-sticky-atc--hidden {
  transform: translateY(100%);
}

.pdp-sticky-atc__content-left {
  display: flex;
  align-items: center;
  gap: var(--spacing-400);
}

.pdp-sticky-atc__image {
  position: relative;
  width: 52px;
  height: 64px;
}
.pdp-sticky-atc__image > img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.pdp-sticky-atc__content {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.pdp-sticky-atc__content-right {
  display: flex;
  align-items: center;
  gap: var(--spacing-400);
}

.pdp-sticky-atc__content-right .button[disabled] {
  cursor: not-allowed;
}

/* h:\projects\vfc\reference-theme\src\components\pdp-upsell-product\pdp-upsell-product.scss */
pdp-upsell-product.is-completed,
pdp-upsell-product.not-initialized {
  display: none;
}

.pdp-upsell {
  /* margin-top: var(--spacing-600); */
  margin-bottom: var(--spacing-600);
  border: 1px solid var(--color-primary-warmgray-300);
  padding: var(--spacing-400);
  border-radius: 4px;
}

.pdp-upsell__inner {
  display: flex;
  align-items: center;
  gap: var(--spacing-400);
}

.pdp-upsell__image {
  /* flex: 0 0 40%; */
}

.pdp-upsell__checkbox input {
  width: 24px;
  height: 24px;
}

.pdp-upsell__image img {
  max-width: 80px;
  height: auto;
  width: 100%;
}

.pdp-upsell__content a {
  display: inline-block;
  text-decoration: none;
  color: var(--color-primary-dirtyblue-400);
  border-bottom: 1px solid var(--color-primary-dirtyblue-400);
  transition: opacity 0.3s ease;
}

.pdp-upsell__content a:hover {
  opacity: 0.8;
}

/* h:\projects\vfc\reference-theme\src\components\plp-banner\plp-banner.scss */
.plp-banner {
  position: relative;
  width: 100%;
  /* TODO: Update so brand can choose colour scheme */
  color: var(--typography-color-inverse);
}

.plp-banner__image {
  position: relative;
  width: 100%;
  aspect-ratio: 4/3;
  max-height: 280px;
}
@media (min-width: 769px) {
  .plp-banner__image {
    aspect-ratio: 8/3;
    max-height: 360px;
  }
}
.plp-banner__image img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
@media (max-width: 768px) {
  .plp-banner__image.plp-banner__image--desktop {
    display: none;
  }
}
@media (min-width: 769px) {
  .plp-banner__image.plp-banner__image--mobile {
    display: none;
  }
}

.plp-banner .content-blocks {
  position: absolute;
  left: 0;
  bottom: 0;
  padding: var(--spacing-1050) var(--spacing-800);
}
@media (min-width: 769px) {
  .plp-banner .content-blocks {
    padding: var(--spacing-1000);
  }
}

/* h:\projects\vfc\reference-theme\src\components\plp-seo-text\plp-seo-text.scss */
.plp-seo-text {
  margin: 0 var(--screens-mobile-gutter) var(--spacing-700);
}
@media (min-width: 768px) {
  .plp-seo-text {
    margin: 0 auto var(--spacing-800);
    max-width: 1280px;
    padding: var(--screens-desktop-gutter);
  }
}
.plp-seo-text p {
  margin-bottom: var(--spacing-400);
}
.plp-seo-text h1, .plp-seo-text h2, .plp-seo-text h3, .plp-seo-text h4, .plp-seo-text h5, .plp-seo-text h6 {
  margin-bottom: var(--spacing-200);
}
.plp-seo-text .rte-text-link {
  color: var(--typography-color-brand);
}

/* h:\projects\vfc\reference-theme\src\components\price-slider\price-slider.scss */
/* Price slider */
.price-slider {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-400);
  min-width: 264px;
  max-width: 749px;
}

.price-slider__range {
  position: relative;
  height: 28px;
  display: flex;
  align-items: center;
}

.price-slider__track {
  position: absolute;
  width: 100%;
  height: 2px;
  border-radius: 9999px;
  background: var(--color-primary-essential-200);
}

.price-slider__progress {
  position: absolute;
  height: 100%;
  background: var(--ui-elements-controls-brand);
}

.price-slider__input {
  position: absolute;
  width: 100%;
  pointer-events: none;
  appearance: none;
  height: 100%;
  background: none;
  outline: none;
  margin: 0;
}

.price-slider__input::-webkit-slider-thumb {
  appearance: none;
  pointer-events: auto;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--ui-elements-controls-brand);
  cursor: pointer;
  margin-top: -1px;
}

.price-slider__inputs {
  display: flex;
  align-items: center;
  gap: var(--spacing-200);
  justify-content: space-between;
}

.price-slider__field {
  position: relative;
}

.price-slider__currency {
  position: absolute;
  left: var(--spacing-300);
  top: 50%;
  transform: translateY(-50%);
  color: var(--typography-color-secondary);
  pointer-events: none;
  line-height: 35px;
}

.price-slider__field input {
  text-align: left;
  display: flex;
  width: 96px;
  height: 44px;
  padding: 0 var(--spacing-500);
  align-items: center;
  gap: var(--spacing-200);
  border-radius: var(--borders-radius-default);
  border: var(--borders-width-standard) solid var(--borders-color-medium);
  color: var(--typography-color-secondary);
}

.price-slider__field input::-webkit-inner-spin-button,
.price-slider__field input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin: 0;
}

/* h:\projects\vfc\reference-theme\src\components\product-card\product-card.scss */
.product-card {
  --thumbs-height: 5px;
  --card-image-ratio: 125%;
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 0 var(--spacing-200);
  margin-bottom: var(--spacing-400);
  /* Video */
  /* Media */
  /* Content */
  /* Price styles */
  /* Swatches */
  /* Optional: Hover effect + Selected state */
  /* Optional: Hover effect */
  /* Selected state */
  /* Sold out state */
  /* Button styles within card */
  /* Error message styles */
}
.product-card product-form {
  max-width: 100%;
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
}
.product-card product-form form {
  flex: 1 0 auto;
}
.product-card .product-card__inner {
  display: flex;
  flex: 1;
  height: 100%;
  flex-direction: column;
  border-radius: 0;
  overflow: hidden;
  position: relative;
}
.product-card .product-media-gallery__video {
  position: relative;
  padding-bottom: var(--card-image-ratio);
  width: 100%;
}
.product-card .product-media-gallery__video video {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10000;
}
.product-card .product-media-gallery .product-media-gallery__image {
  position: relative;
  padding-bottom: var(--card-image-ratio);
  height: 0;
  width: 100%;
  background-color: var(--ui-elements-productcards-background);
}
.product-card .product-media-gallery .product-media-gallery__image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  mix-blend-mode: multiply;
}
.product-card .product-media-gallery .swiper, .product-card .product-media-gallery .swiper-wrapper, .product-card .product-media-gallery .swiper-slide {
  height: 100%;
}
.product-card .product-media-gallery .swiper-slide {
  width: auto;
}
.product-card .product-card__media {
  position: relative;
  width: 100%;
  padding-bottom: calc(var(--card-image-ratio) + var(--thumbs-height));
}
.product-card .product-card__media > * {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  overflow: hidden;
}
.product-card .product-card__media > img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: contain;
}
.product-card .product-card__content {
  position: relative;
  z-index: 3;
  padding: var(--spacing-200);
  padding-right: 0;
  flex: 1;
}
.product-card .product-card__content-inner {
  display: flex;
  flex-direction: column;
  gap: 0;
  justify-content: space-between;
  flex: 1;
}
.product-card .product-card__content-wrapper {
  padding-right: var(--spacing-200);
}
.product-card .product-card__content-inner-header {
  margin: 0 0 var(--spacing-200);
}
.product-card .pr-category-snippet {
  display: none;
}
.product-card .product-card__eyebrow {
  margin-bottom: var(--spacing-200);
}
.product-card .product-card__eyebrow p {
  color: var(--color-primary-dirtyblue-400);
  font-weight: bold;
  margin-bottom: 0;
}
.product-card .product-card__title a {
  text-decoration: none;
  color: inherit;
  display: block;
}
.product-card .product-card__type {
  padding-top: var(--spacing-50);
  color: var(--typography-color-secondary);
}
.product-card .product-card__price {
  display: flex;
  gap: var(--spacing-200);
  align-items: baseline;
}
.product-card .product-price {
  display: flex;
  gap: var(--spacing-200);
  align-items: baseline;
  flex-wrap: wrap;
}
.product-card .product-price__price {
  gap: var(--spacing-100);
  min-height: initial;
}
.product-card .product-price__price-current {
  font-weight: normal;
  margin: 0;
}
.product-card .product-price__compare {
  color: var(--color-text-subdued);
  text-decoration: line-through;
  margin: 0;
}
.product-card .product-price__price-savings-text {
  font-weight: 700;
  background-color: transparent;
  padding: 0;
}
.product-card .product-price__savings {
  color: var(--color-success);
  margin: 0;
}
.product-card .product-card__add-to-cart {
  position: absolute;
  right: 0px;
  bottom: 100%;
  margin-bottom: 5px;
  z-index: 8;
  cursor: pointer;
  background: transparent;
  border: none;
  appearance: none;
  padding: var(--spacing-250);
}
.product-card .product-card__form {
  margin-top: auto;
}
.product-card .product-form-options fieldset {
  margin: 0;
  min-width: 0;
  display: block;
}
.product-card .product-form-options fieldset legend {
  display: none;
}
.product-card .product-form-options__list--color {
  flex-direction: row;
  gap: 0;
}
.product-card .product-form-options__list:not(.swiper-wrapper) {
  display: flex;
  gap: var(--spacing-200);
  margin: 0;
  list-style: none;
  overflow-x: auto;
  flex-wrap: nowrap;
  box-sizing: border-box;
}
.product-card .product-form-options__fieldset--color {
  width: auto;
  display: block;
}
.product-card .swatches-slider-outer {
  position: relative;
  bottom: 0;
  padding: 0;
  margin-bottom: var(--spacing-300);
}
.product-card .swatches-slider-outer .swiper-wrapper {
  padding: 0;
  white-space: nowrap;
  flex-wrap: nowrap;
}
.product-card .swatches-slider-outer .swiper-slide {
  width: auto;
  padding-bottom: var(--spacing-100);
}
.product-card .swatches-slider-outer .swiper-nav-button {
  display: none;
}
.product-card .product-form-options__list-item {
  margin: 0;
}
.product-card .color-swatch {
  display: block;
}
.product-card .color-swatch__label {
  gap: var(--spacing-50);
}
.product-card .color-swatch__dot {
  width: 24px;
  height: 24px;
  border-radius: var(--borders-radius-none);
  border: 1px solid var(--color-neutrals-400);
  position: relative;
  display: block;
}
.product-card .color-swatch__dot:after {
  content: "";
  position: absolute;
  top: 100%;
  right: 50%;
  left: 50%;
  height: 1px;
  margin-top: var(--spacing-50);
  background-color: var(--ui-elements-controls-brand);
  transition: left 0.2s, right 0.2s;
}
.product-card .color-swatch:hover input:not([disabled]) + .color-swatch__dot:after,
.product-card input:checked + .color-swatch__dot:after {
  left: -1px;
  right: -1px;
}
.product-card .color-swatch [disabled] + .color-swatch__dot:after {
  height: 22px;
  width: 22px;
}
.product-card .product-form-options__button[data-option-wrapper].is-active {
  border-color: var(--color-primary);
  background: var(--color-primary);
  color: var(--color-background);
}
.product-card .color-swatch__dot:after {
  visibility: visible;
  opacity: 1;
}
.product-card .color-swatch:hover .color-swatch__dot {
  box-shadow: none;
  border-color: var(--color-primary);
}
.product-card input:checked + .color-swatch__dot {
  box-shadow: none;
}
.product-card .product-form-options__list-item--more {
  display: block !important;
  position: relative;
  top: 3px;
}
.product-card .product-card__sold-out {
  display: inline-block;
  padding: var(--spacing-200) var(--spacing-300);
  background: var(--color-background-subdued);
  border-radius: var(--border-radius);
}
.product-card .button {
  width: 100%;
}
.product-card [data-error] {
  display: none;
  color: var(--color-error);
  margin-top: var(--spacing-200);
}
.product-card [data-error][data-active=true] {
  display: block;
}
.product-card .product-form__price-savings {
  display: inline-flex;
  align-items: baseline;
  margin-left: var(--spacing-100);
}
.product-card .product-form__price-savings-text {
  color: var(--color-sale);
  margin: 0;
}
.product-card .quick-add-button svg path:nth-child(3) {
  fill: var(--color-primary-essential-400);
}

@media (min-width: 769px) {
  .product-card .product-card__media .swiper-pagination {
    transition: opacity 0.3s, visibility 0.3s;
  }
  .product-card .product-card__content {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    align-items: flex-start;
    padding: calc(var(--spacing-400) - var(--thumbs-height)) var(--spacing-200) var(--spacing-400);
  }
  .product-card .swatches-slider-outer {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 100%;
    width: 100%;
    max-width: 100%;
    background: rgba(255, 255, 255, 0.45);
    padding: var(--spacing-200) var(--spacing-700) var(--spacing-100);
    visibility: hidden;
    opacity: 0;
    margin-bottom: calc(-1 * var(--spacing-100));
    transition: margin-bottom 0.1s, opacity 0.3s, visibility 0.3s;
  }
  .product-card .swatches-slider-outer .swiper-button-lock {
    display: none;
  }
  .product-card .swatches-slider-outer .swiper-nav-button:not(.swiper-button-lock) {
    display: block;
  }
  .product-card .swatches-slider-outer .swiper-nav-button {
    padding: 0 4px;
  }
  .product-card .swatches-slider-outer .swiper-nav-button svg {
    color: var(--icons-disabled);
  }
  .product-card .swatches-slider-outer .swiper-nav-button:hover svg {
    color: var(--icons-default);
  }
  .product-card .swatches-slider-outer,
  .product-card .product-card__media .swiper-nav-button {
    opacity: 0;
    visibility: hidden;
  }
  .product-card .swiper-nav-button--prev {
    transition: left 0.1s ease-out, opacity 0.3s, visibility 0.3s;
  }
  .product-card .swiper-nav-button--next {
    transition: right 0.1s ease-out, opacity 0.3s, visibility 0.3s;
  }
  .product-card:hover .product-card__content .swatches-slider-outer, .product-card:hover .product-card__media .swiper-pagination, .product-card:hover .product-card__media .swiper-nav-button {
    opacity: 1;
    visibility: visible;
  }
  .product-card:hover .swiper-nav-button.swiper-nav-button--prev {
    left: 0;
  }
  .product-card:hover .swiper-nav-button.swiper-nav-button--next {
    right: 0;
  }
  .product-card:hover .product-card__content .swatches-slider-outer {
    margin-bottom: 5px;
  }
  .product-card .product-card__add-to-cart {
    padding: var(--spacing-100);
    margin-bottom: 0px;
    position: relative;
    top: calc(-1 * var(--spacing-200));
  }
  .product-card .product-card__add-to-cart .icon-m {
    width: 32px;
    height: 32px;
  }
}
@media (max-width: 768px) {
  .product-card .swiper-nav-button {
    display: none;
  }
}
/* h:\projects\vfc\reference-theme\src\components\product-card-simple\product-card-simple.scss */
.product-card-simple {
  display: block;
  width: 100%;
  color: var(--color-neutrals-1000);
}
.product-card-simple > a {
  display: block;
  text-decoration: none;
}
@media (hover: hover) {
  .product-card-simple > a {
    transition: opacity 0.2s;
  }
  .product-card-simple > a:hover {
    opacity: 0.8;
    color: currentColor;
  }
}

.product-card-simple__image {
  overflow: hidden;
  position: relative;
  height: 312px;
}
@media (min-width: 769px) {
  .product-card-simple__image {
    height: 375px;
  }
}

.product-card-simple__image-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.product-card-simple__content {
  padding: var(--spacing-300) var(--spacing-200);
}

.product-card-simple__description {
  margin-top: var(--spacing-25);
  color: var(--color-neutrals-600);
  font-family: var(--body-font);
  font-size: var(--body-small-size);
  font-weight: var(--body-weight);
  line-height: var(--body-small-line-height);
  letter-spacing: calc(var(--body-small-size) * var(--body-letter-spacing));
}

.product-card-simple__title {
  font-family: var(--heading-font);
  font-size: var(--heading-xsmall-size);
  font-weight: var(--heading-weight);
  line-height: var(--heading-xsmall-line-height);
  letter-spacing: calc(var(--heading-xsmall-size) * var(--heading-letter-spacing));
  text-transform: var(--heading-text-transform);
}

.product-card-simple__price {
  margin-top: var(--spacing-200);
}

/* h:\projects\vfc\reference-theme\src\components\product-content-sections\product-content-sections.scss */
product-content-sections {
  display: block;
  background-color: var(--schemes-neutral-50);
}

.product-content-sections {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  --surface-primary: var(--schemes-neutral-50);
  background-color: var(--schemes-neutral-50);
}
@media (max-width: 768px) {
  .product-content-sections .swiper-slide {
    width: auto;
  }
}

.product-content-sections__card-collection > * + * {
  margin-top: var(--spacing-800);
}
@media (max-width: 768px) {
  .product-content-sections__card-collection {
    padding: var(--spacing-800) 0 var(--screens-mobile-margin) var(--spacing-800);
  }
}
@media (min-width: 769px) {
  .product-content-sections__card-collection {
    padding: var(--spacing-800) var(--screens-desktop-margin);
  }
}

.product-content-sections__card-collection-header > * + * {
  margin-top: var(--spacing-200);
}
@media (min-width: 769px) {
  .product-content-sections__card-collection-header {
    text-align: center;
  }
}

.product-content-sections__content-card {
  max-width: 300px;
}
.product-content-sections__content-card ul {
  padding-left: var(--spacing-400);
}
.product-content-sections__content-card .content-card__image img {
  object-fit: contain;
}

.product-content-sections__video-section {
  background-color: var(--schemes-neutral-50);
  padding: var(--spacing-800) var(--screens-desktop-margin);
}

.product-content-sections__video-aspect {
  position: relative;
  padding-bottom: 56.25%;
}
.product-content-sections__video-aspect iframe {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.product-content-sections__image-banner {
  display: flex;
  align-items: center;
  position: relative;
}
@media (min-width: 769px) {
  .product-content-sections__image-banner {
    justify-content: center;
  }
}
.product-content-sections__image-banner.product-content-sections__image-banner--light {
  --typography-color: var(--typography-color-default);
}
.product-content-sections__image-banner.product-content-sections__image-banner--dark {
  --typography-color: var(--typography-color-inverse);
}

.product-content-sections__image-banner-image img {
  height: auto;
  object-fit: contain;
}
@media (max-width: 768px) {
  .product-content-sections__image-banner-image.product-content-sections__image-banner-image--desktop {
    display: none;
  }
}
@media (min-width: 769px) {
  .product-content-sections__image-banner-image.product-content-sections__image-banner-image--mobile {
    display: none;
  }
}

.product-content-sections__image-banner-scrim {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0.2);
}

.product-content-sections__image-banner-content {
  position: absolute;
  padding: 0 var(--screens-desktop-margin);
  color: var(--typography-color);
}
.product-content-sections__image-banner-content > * + * {
  margin-top: var(--spacing-200);
}
@media (min-width: 769px) {
  .product-content-sections__image-banner-content {
    text-align: center;
    max-width: 400px;
  }
}

.product-content-sections__image-card-collection {
  padding: var(--spacing-800) var(--screens-mobile-margin);
}
@media (min-width: 769px) {
  .product-content-sections__image-card-collection {
    padding: var(--spacing-800) var(--screens-desktop-margin);
  }
}
.product-content-sections__image-card-collection > * + * {
  margin-top: var(--spacing-400);
}

@media (min-width: 769px) {
  .product-content-sections__image-card-collection-header {
    text-align: center;
  }
}

/* h:\projects\vfc\reference-theme\src\components\product-form-options\product-form-options.scss */
.main-product .product-form-options {
  margin-top: var(--spacing-300);
}

.product-form-options fieldset {
  margin-top: var(--spacing-600);
  padding: 0;
  border: none;
  margin-bottom: var(--spacing-600);
}

.product-form-options fieldset:first-child {
  margin-top: 0;
}

.product-form-options fieldset legend {
  font-weight: 700;
  padding: 0;
}

.product-form-options__current-value {
  font-weight: 400;
}

.product-form-options__list {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-200);
  padding: var(--spacing-200) 0 0;
}

/* Color swatch specific spacing */
.product-form-options__list--color {
  gap: var(--spacing-600) var(--spacing-600);
}

/* standard options */
.product-form-options__list-item {
  display: flex;
  align-items: center;
  justify-content: center;
}

.product-form-options__list-item-button {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 140px;
  height: 40px;
  background: white;
  border: 1px solid #000;
  border-radius: 2px;
  font-weight: 700;
}

@media (min-width: 768px) {
  .product-form-options__list {
    flex-wrap: wrap;
    padding: 10px 0;
  }
  .product-form-options__list--color {
    flex-wrap: wrap;
    padding: 10px 5px;
  }
}
.product-form-options__radio-label {
  display: block;
  cursor: pointer;
}

.product-form-options__radio-button {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 48px;
  height: 48px;
  padding: 0 var(--spacing-400);
  background: var(--color-background);
  border: 1px solid var(--color-neutrals-400);
  border-radius: 4px;
  transition: all 0.2s ease;
  font-weight: 700;
}

input[type=radio]:checked + .product-form-options__radio-button,
input[type=radio]:focus-visible + .product-form-options__radio-button {
  background: var(--color-primary);
  color: var(--color-background);
  border-width: 2px;
  border-color: var(--color-primary);
}

input[type=radio]:focus-visible + .product-form-options__radio-button {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}

/* h:\projects\vfc\reference-theme\src\components\product-media-gallery\product-media-gallery.scss */
@media (min-width: 992px) {
  .main-product .product-media-gallery .swiper-slide {
    padding: 0 2px 4px;
    cursor: zoom-in;
  }
}

@media (min-width: 992px) {
  .main-product .product-media-gallery .swiper {
    margin: 0 -2px -4px;
  }
}

/* turns into two column product gallery on desktop */
@media (min-width: 769px) {
  [data-mode=default] .swiper-wrapper {
    display: flex;
    flex-flow: wrap;
  }
}
@media (min-width: 769px) {
  [data-mode=default] .swiper-slide {
    flex-basis: 50%;
  }
}
@media (min-width: 769px) {
  [data-mode=default] .product-media-gallery__image {
    position: relative;
    padding-bottom: 125%;
  }
  [data-mode=default] .product-media-gallery__image > img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    height: 100%;
    width: 100%;
    object-fit: contain;
  }
}
@media (min-width: 769px) {
  [data-mode=default] .product-media-gallery .swiper-pagination {
    display: none;
  }
}
@media (min-width: 769px) {
  [data-mode=default] .product-media-gallery .swiper-nav-button {
    display: none;
  }
}

/* shared styles for mobile */
@media (max-width: 768px) {
  .product-media-gallery .main-product .swiper-wrapper {
    align-items: stretch;
  }
  .main-product .product-media-gallery .swiper-slide {
    height: auto;
  }
}
.product-media-gallery .product-media-gallery__image {
  position: relative;
  padding-bottom: 0;
  width: 100%;
}
.product-media-gallery .product-media-gallery__image > img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: contain;
}
.product-media-gallery .product-media-gallery__video > video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  cursor: pointer;
}
@media (max-width: 768px) {
  .product-media-gallery .product-media-gallery__video > video {
    position: absolute;
    inset: 0;
  }
}
.product-media-gallery .swiper-nav-button {
  margin-top: calc(-1 * var(--thumbs-height));
}
@media (min-width: 769px) {
  .product-media-gallery .swiper-pagination {
    visibility: hidden;
    opacity: 0;
  }
  .product-media-gallery .swiper-nav-button.swiper-nav-button--prev {
    left: calc(-1 * var(--spacing-200));
  }
  .product-media-gallery .swiper-nav-button.swiper-nav-button--next {
    right: calc(-1 * var(--spacing-200));
  }
}

/* Swiper pagination styles */
.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0;
}

.product-media-gallery .swiper-pagination {
  z-index: 2;
  position: static;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
  gap: var(--spacing-25);
  min-height: 1px;
  margin: var(--spacing-25) 0;
  padding: 0;
}

.swiper-pagination-bullet {
  visibility: visible;
  cursor: pointer;
  border: none;
  width: inherit;
  height: 1px;
  background: var(--color-primary-essential-400);
  opacity: 0.2;
  border-radius: 0;
  transition: all 0.2s ease;
}

.swiper-pagination-bullet-active {
  opacity: 1;
}

/* Swiper navigation styles */
.no-swiper .swiper-nav-button {
  display: none;
}

.swiper-nav-button {
  position: absolute;
  top: 50%;
  padding: var(--spacing-200);
  transform: translateY(-50%);
  left: 0;
  background-color: transparent;
  z-index: 2;
  border: none;
  appearance: none;
  cursor: pointer;
  display: block;
}
.swiper-nav-button.swiper-nav-button--next {
  right: 0;
  left: auto;
}

/* h:\projects\vfc\reference-theme\src\components\product-no-results\product-no-results.scss */
.product-no-results {
  padding-bottom: var(--screens-desktop-content-bottom);
  width: 100%;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}
.product-no-results > * + * {
  margin-top: var(--spacing-800);
}

.product-no-results__header {
  text-align: center;
  padding: 0 var(--screens-mobile-margin);
  max-width: 1024px;
  margin-left: auto;
  margin-right: auto;
  font-weight: 300;
}

.product-no-results__sliders {
  max-width: 852px;
  margin-left: auto;
  margin-right: auto;
}
.product-no-results__sliders > * + * {
  margin-top: var(--spacing-800);
}
.product-no-results__sliders .suggestion-chip-slider__heading {
  font-family: var(--body-font);
  font-size: var(--body-medium-size);
  font-weight: var(--body-weight);
  line-height: var(--body-medium-line-height);
  letter-spacing: calc(var(--body-medium-size) * var(--body-letter-spacing));
}

.product-no-results .product-search-card {
  width: 164px;
}

/* h:\projects\vfc\reference-theme\src\components\product-price\product-price.scss */
product-price [data-active=false] {
  display: none;
}

.product-price__price {
  display: flex;
  flex-flow: wrap;
  align-items: center;
  gap: var(--spacing-200);
  /* margin-top: var(--spacing-200); */
  /* prevent jumping when price is hidden */
  min-height: 40px;
}

.product-price__price--minicart {
  align-items: flex-start;
  flex-flow: column;
  gap: var(--spacing-50);
}
@media (min-width: 769px) {
  .product-price__price--minicart {
    align-items: flex-end;
  }
}

.product-price__price-current {
  font-weight: 700;
  margin: 0;
}

.product-price__price-current--minicart {
  font-weight: 400;
}

.product-price__price-compare {
  margin: 0;
  color: var(--typography-color-secondary);
  text-decoration: line-through;
  font-weight: 400;
}

.product-price__price-savings-text {
  align-items: center;
  background-color: var(--color-red-100);
  border-radius: 4px;
  color: var(--color-red-400);
  display: flex;
  flex-direction: row;
  font-weight: 700;
  padding: var(--spacing-200);
}
.product-price__price-savings-text:before {
  content: "-";
  display: inline-block;
}

.product-price__price-savings-text--minicart {
  background: none;
  padding: 0;
}

/* h:\projects\vfc\reference-theme\src\components\product-search-card\product-search-card.scss */
.product-search-card {
  position: relative;
}

.product-search-card__image {
  position: relative;
  width: 100%;
  min-height: 205px;
  aspect-ratio: 4/5;
}
@media (min-width: 769px) {
  .product-search-card__image {
    min-height: 227px;
  }
}
.product-search-card__image img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.product-search-card__content {
  display: grid;
  grid-gap: var(--spacing-400);
  padding: var(--spacing-400) var(--spacing-200);
}

.product-search-card__title a {
  text-decoration: none;
}

/* h:\projects\vfc\reference-theme\src\components\product-search-card-slider\product-search-card-slider.scss */
[data-product-search-card-slider][data-active=false] {
  display: none;
}

product-search-card-slider {
  display: block;
  position: relative;
}

.product-search-card-slider .swiper-slide {
  width: auto;
}
@media (max-width: 768px) {
  .product-search-card-slider .swiper {
    padding: 0 var(--screens-mobile-margin);
  }
}
.product-search-card-slider > * + * {
  margin-top: var(--spacing-400);
}

.product-search-card-slider__heading {
  color: var(--typography-color-secondary);
}
@media (max-width: 768px) {
  .product-search-card-slider__heading {
    padding: 0 var(--screens-mobile-margin);
  }
}

.product-search-card-slider__prev,
.product-search-card-slider__next {
  position: absolute;
  top: 50%;
  background-color: transparent;
  border: none;
  transform: translateY(-50%);
  z-index: 10;
  padding: 0;
  margin: 0;
}

/* show arrows for keyboard users */
html:not([data-whatintent=keyboard]) .product-search-card-slider__prev, html:not([data-whatintent=keyboard]) .product-search-card-slider__next {
  position: absolute;
  width: 1px !important;
  height: 1px !important;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

.product-search-card-slider__prev {
  left: var(--spacing-200);
}

.product-search-card-slider__next {
  right: var(--spacing-200);
}

/* h:\projects\vfc\reference-theme\src\components\promo-bar\promo-bar.scss */
.promo-bar {
  color: var(--ui-elements-navigation-promo-bar-brand-cta);
  background: var(--ui-elements-navigation-promo-bar-brand);
  position: relative;
}
.promo-bar.promo-bar--brand {
  color: var(--ui-elements-navigation-promo-bar-brand-cta);
  background: var(--ui-elements-navigation-promo-bar-brand);
  --promo-bar-cta: var(--ui-elements-navigation-promo-bar-brand-cta);
  --promo-bar-cta-hover: var(--typography-color-hover-active-inverse);
}
.promo-bar.promo-bar--dark {
  color: var(--ui-elements-navigation-promo-bar-dark-cta);
  background: var(--ui-elements-navigation-promo-bar-dark);
  --promo-bar-cta: var(--ui-elements-navigation-promo-bar-dark-cta);
  --promo-bar-cta-hover: var(--typography-color-hover-active-inverse);
}
.promo-bar.promo-bar--light {
  color: var(--ui-elements-navigation-promo-bar-light-cta);
  background: var(--ui-elements-navigation-promo-bar-light);
  --promo-bar-cta: var(--ui-elements-navigation-promo-bar-light-cta);
  --promo-bar-cta-hover: var(--typography-color-hover-active);
}
.promo-bar a:hover {
  color: var(--promo-bar-cta-hover);
}
.promo-bar a:focus {
  color: var(--promo-bar-cta-hover);
}
.promo-bar .swiper-wrapper {
  align-items: center;
}

.promo-bar__slide {
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 700;
  padding: var(--spacing-200) var(--spacing-800);
  min-height: 40px;
}
.promo-bar__slide > * {
  text-align: center;
}

.promo-bar__prev,
.promo-bar__next {
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
  z-index: 1;
  border: none;
  background-color: transparent;
  padding: 0;
  color: var(--promo-bar-cta);
}
.promo-bar__prev:hover,
.promo-bar__next:hover {
  color: var(--promo-bar-cta-hover);
}

.promo-bar__prev {
  left: var(--spacing-400);
}

.promo-bar__next {
  right: var(--spacing-400);
}

/* h:\projects\vfc\reference-theme\src\components\quantity-input\quantity-input.scss */
quantity-input {
  display: inline-block;
  vertical-align: top;
}

.quantity-input__input {
  display: inline-grid;
  vertical-align: top;
  grid-template-columns: auto auto auto;
  height: 40px;
  padding: 0;
  border: 1px solid var(--color-neutrals-100);
  border-radius: var(--borders-radius-50);
  width: 120px;
}
.quantity-input__input input {
  border: 0 none;
  display: inline-block;
  background-color: transparent;
  text-align: center;
  line-height: 1;
  width: 24px;
  font-weight: 700;
}

.quantity-input__button {
  -webkit-appearance: button;
  background-color: transparent;
  background-image: none;
  border: 0 none;
  padding: var(--spacing-200);
}
.quantity-input__button .icon-m {
  width: 24px;
  height: 24px;
}

/* Hides the native stepper in most browsers */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Hides the native stepper in Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

/* h:\projects\vfc\reference-theme\src\components\quick-view\quick-view.scss */
.quick-view {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  cursor: pointer;
}
@media (hover: hover) {
  .quick-view {
    transition: opacity 0.2s;
  }
  .quick-view:hover {
    opacity: 0.6;
  }
}
@media (min-width: 768px) {
  .quick-view {
    bottom: var(--spacing-200);
    right: var(--spacing-200);
  }
}

/* h:\projects\vfc\reference-theme\src\components\radio\radio.scss */
/* Radio input styling */
radio-button {
  display: block;
  position: relative;
}

radio-button.radio--button {
  display: inline-flex;
}

radio-button label {
  display: flex;
  align-items: center;
  gap: var(--spacing-100);
  cursor: pointer;
}

radio-button.radio--button label {
  padding: var(--spacing-100) var(--spacing-200);
  border: var(--borders-width-25) solid var(--color-neutrals-100);
  transition: background-color 0.2s, border 0.2s;
}

radio-button.radio--button label {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-100);
}

/* Hide default radio input */
radio-button [data-radio-input] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

/* Custom radio button style */
radio-button [data-radio-label] {
  display: inline-flex;
  align-items: center;
}

radio-button:not(.radio--button) [data-radio-label]::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  border: 1px solid var(--ui-elements-forms-default);
  border-radius: 50%;
  margin-right: var(--spacing-100);
  transition: 120ms transform ease-in-out;
}

/* Checked state */
radio-button:not(.radio--button)[data-checked] [data-radio-label]::before {
  background: var(--ui-elements-forms-focus);
  box-shadow: inset 0 0 0 4px var(--color-neutrals-0);
  transform: scale(1);
}

radio-button.radio--button[data-checked] label,
radio-button.radio--button label:hover {
  border-color: var(--color-primary-essential-400);
  border-width: var(--borders-width-50);
}

radio-button.radio--button[data-checked] label {
  background-color: var(--color-neutrals-25);
}

/* Help text */
radio-button [data-radio-help] {
  display: block;
  margin-top: var(--spacing-50);
  color: var(--typography-color-default);
}

/* Disabled state */
radio-button label:has([data-radio-input]:disabled) {
  color: var(--ui-elements-forms-disabled);
}

radio-button label:has([data-radio-input]:disabled) [data-radio-label]::before {
  background: rgba(0, 0, 0, 0.08);
  pointer-events: none;
}

/* Focus state */
radio-button [data-radio-input]:focus-visible + [data-radio-label]::before {
  outline: 2px solid var(--color-primary);
  outline-offset: 2px;
}

/* h:\projects\vfc\reference-theme\src\components\recently-view-products\recently-view-products.scss */
.product-recommendations {
  display: block;
  padding: var(--spacing-800) var(--spacing-400);
}

.product-recommendations__head {
  margin-bottom: var(--spacing-600);
}
.product-recommendations__head > h3:not(:last-child) {
  margin-bottom: var(--spacing-200);
}

.product-recommendations__swiper {
  margin-right: calc(var(--spacing-400) * -1);
}
.product-recommendations__swiper .swiper-wrapper {
  min-height: 300px;
}
.product-recommendations__swiper.swiper-initialized .swiper-wrapper {
  min-height: 0;
}
.product-recommendations__swiper.swiper-initialized .loading {
  display: none;
}
.product-recommendations__swiper .swiper-slide {
  width: 250px;
}
.product-recommendations__swiper .product-card {
  padding: 0;
}
.product-recommendations__swiper .product-recommendations__swiper-actions {
  display: none;
}
@media (min-width: 769px) {
  .product-recommendations__swiper .product-recommendations__swiper-actions {
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
  }
  .product-recommendations__swiper .product-recommendations__swiper-actions .swiper-pagination {
    flex: 1;
    position: static;
    display: flex;
    flex-flow: row nowrap;
    gap: var(--spacing-25);
    width: calc(100% - 88px - var(--spacing-200));
  }
  .product-recommendations__swiper .product-recommendations__swiper-actions .swiper-pagination-bullet {
    flex: 1;
    width: auto;
    height: 1px;
    margin: 0;
    background-color: var(--ui-elements-dark);
    opacity: 0.2;
    transition: opacity 0.2s;
  }
  .product-recommendations__swiper .product-recommendations__swiper-actions .swiper-pagination-bullet-active {
    opacity: 1;
  }
  .product-recommendations__swiper .product-recommendations__swiper-actions button {
    transition: color 0.2s;
  }
  .product-recommendations__swiper .product-recommendations__swiper-actions button:first-of-type {
    margin-left: var(--spacing-200);
  }
  .product-recommendations__swiper .swiper-button-disabled {
    color: var(--typography-color-disabled);
  }
  .product-recommendations__swiper .swiper-slide {
    width: 300px;
  }
}

@media (min-width: 769px) {
  .recently-view__swiper .swiper-slide {
    width: 192px;
  }
  .recently-view__swiper .product-card-simple__image {
    height: 240px;
  }
}

/* h:\projects\vfc\reference-theme\src\components\reviews-drawer\reviews-drawer.scss */
.reviews-drawer .drawer__container {
  background-color: var(--surface-primary);
}

.reviews-drawer .drawer__header {
  display: none;
}

.reviews-drawer .drawer__close {
  background: transparent;
  border: 0;
  padding: var(--spacing-200);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: var(--spacing-500);
  right: var(--spacing-500);
}

.reviews-drawer .drawer__close svg {
  width: 24px;
  height: 24px;
}

.reviews-drawer__tabs {
  display: flex;
  padding: 0 var(--spacing-500);
  border-bottom: 1px solid var(--borders-color-light);
}

.reviews-drawer__tab {
  flex: 1;
  padding: var(--spacing-400) var(--spacing-200);
  text-align: center;
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  cursor: pointer;
  font-weight: 500;
  color: var(--typography-color-subdued);
  transition: all 0.2s ease;
}

.reviews-drawer__tab--active {
  color: var(--typography-color-brand);
  border-bottom-color: var(--borders-color-brand);
}

.reviews-drawer__tab-content {
  display: none;
  padding: var(--spacing-400) var(--spacing-500);
}

.reviews-drawer__tab-content--active {
  display: block;
}

.reviews-drawer__content {
  height: calc(100vh - 120px);
  overflow-y: auto;
}

@media screen and (max-width: 768px) {
  .reviews-drawer__content {
    height: calc(100vh - 100px);
  }
}
/* h:\projects\vfc\reference-theme\src\components\rich-text\rich-text.scss */
.rich-text {
  margin: 0 auto;
  padding: var(--spacing-800) var(--screens-mobile-margin);
  max-width: var(--screens-desktop-width);
  position: relative;
  min-height: 363px;
}
@media (min-width: 1024px) {
  .rich-text {
    padding: 0;
    min-height: 264px;
  }
}

.rich-text__content {
  background-color: var(--surface-primary);
}

.rich-text__inner {
  margin: 0 auto;
  position: relative;
  padding: var(--spacing-800) var(--screens-mobile-margin);
}
@media (min-width: 1024px) {
  .rich-text__inner {
    padding: var(--spacing-700) var(--screens-desktop-margin);
  }
}

/* Full screen add max width on content */
.rich-text--full-screen {
  max-width: none;
}
.rich-text--full-screen .rich-text__inner {
  max-width: var(--screens-desktop-width);
}

/* h:\projects\vfc\reference-theme\src\components\rte-content\rte-content.scss */
/*
  Styling for RTE content
  - used predominantly on the customer service pages
*/
.rte-content:not(.rte-content__highlight) {
  /* Table styling */
}
.rte-content:not(.rte-content__highlight) h1,
.rte-content:not(.rte-content__highlight) h2,
.rte-content:not(.rte-content__highlight) h3,
.rte-content:not(.rte-content__highlight) h4,
.rte-content:not(.rte-content__highlight) h5 h6 {
  margin-bottom: var(--spacing-600);
}
.rte-content:not(.rte-content__highlight) p:not(:last-child),
.rte-content:not(.rte-content__highlight) ul,
.rte-content:not(.rte-content__highlight) ol {
  margin-bottom: var(--spacing-500);
}
.rte-content:not(.rte-content__highlight) p:has(.body-bold) {
  margin-bottom: var(--spacing-400);
}
.rte-content:not(.rte-content__highlight) img {
  height: auto;
  max-width: 500px;
  width: 100%;
}
.rte-content:not(.rte-content__highlight) .rte-text-link {
  color: var(--typography-color-brand);
  text-decoration: underline;
}
.rte-content:not(.rte-content__highlight) table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border: 1px solid var(--borders-color-light);
  border-radius: var(--borders-radius-default);
  margin-bottom: var(--spacing-600);
  overflow: hidden;
}
.rte-content:not(.rte-content__highlight) th,
.rte-content:not(.rte-content__highlight) td {
  padding: var(--spacing-400);
  border-right: 1px solid var(--borders-color-light);
}
.rte-content:not(.rte-content__highlight) th:last-child,
.rte-content:not(.rte-content__highlight) td:last-child {
  border-right: none;
}
.rte-content:not(.rte-content__highlight) th,
.rte-content:not(.rte-content__highlight) tr:first-child {
  font-weight: 700;
}

.rte-content__title {
  margin-bottom: var(--spacing-800);
}

.rte-content__highlight {
  background-color: var(--schemes-accent-50);
  padding: var(--spacing-800);
  margin-bottom: var(--spacing-800);
}

.rte-content__highlight .content-blocks > * + * {
  margin-top: var(--spacing-400);
}

.rte-content__margin {
  margin-top: var(--spacing-600);
}
@media (min-width: 1024px) {
  .rte-content__margin {
    margin-top: var(--spacing-1300);
  }
}

/* h:\projects\vfc\reference-theme\src\components\search-drawer\search-drawer.scss */
.search-drawer {
  background-color: var(--ui-elements-overlays-default);
}
@media (max-width: 768px) {
  .search-drawer {
    position: fixed;
    z-index: 100;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    transition: transform 0.2s;
    overflow: auto;
  }
}
@media (min-width: 769px) {
  .search-drawer {
    display: grid;
    /* these columns are kind of weird, but swiper massively overflows when contained by a 1fr grid parent */
    grid-template-columns: minmax(276px, auto) calc(100% - 276px - var(--spacing-400));
    grid-gap: var(--spacing-400);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 50;
    border-radius: var(--borders-radius-default);
    box-shadow: var(--overlay);
    padding: 0 0 var(--spacing-600) 0;
  }
}

@media (max-width: 768px) {
  [data-search-drawer][data-active=false] .search-drawer {
    transform: translateX(100%);
  }
}

.search-drawer__links.search-drawer__links--desktop {
  padding: var(--spacing-600) 0 0 var(--spacing-600);
}
@media (max-width: 768px) {
  .search-drawer__links.search-drawer__links--desktop .search-drawer__links-inner {
    display: none;
  }
}
@media (max-width: 768px) {
  .search-drawer__links.search-drawer__links--desktop {
    height: var(--spacing-1000);
    padding-left: var(--spacing-400);
    padding-top: 29px;
  }
}
@media (min-width: 769px) {
  .search-drawer__links.search-drawer__links--mobile {
    display: none;
  }
}
.search-drawer__links > * + * {
  margin-top: var(--spacing-400);
}

.search-drawer__links-inner {
  margin-top: var(--spacing-600);
}
.search-drawer__links-inner > * + * {
  margin-top: var(--spacing-elements-group-gap-interactive);
}

.search-drawer__close-wrapper {
  height: var(--spacing-850);
}

.search-drawer__links-header {
  display: inline-flex;
  align-items: center;
  height: var(--spacing-850);
}
@media (max-width: 768px) {
  .search-drawer__links-header {
    height: auto;
    justify-content: space-between;
    width: 100%;
    padding-right: var(--spacing-100);
  }
  .search-drawer__links-header .header__logo {
    height: auto;
  }
  .search-drawer__links-header .header__logo img {
    height: 26px;
  }
}

.search-drawer__links-list {
  padding: 0;
}

.search-drawer__links-list-item {
  list-style: none;
  margin-top: var(--spacing-200);
}
.search-drawer__links-list-item a {
  text-decoration: underline;
  min-height: var(--spacing-850);
  padding: var(--spacing-50) 0;
}
.search-drawer__links-list-item .matched-query {
  font-weight: var(--body-bold-weight);
}

.search-drawer__subheading {
  color: var(--typography-color-secondary);
  font-weight: 300;
}

.search-drawer__main > * + * {
  margin-top: var(--spacing-600);
}
@media (min-width: 769px) {
  .search-drawer__main .search-drawer__results {
    padding-right: var(--spacing-600);
  }
}

.search-drawer__search {
  display: flex;
  align-items: center;
  padding: var(--screens-mobile-page-top) var(--screens-mobile-margin) 0;
  column-gap: var(--spacing-400);
}
@media (min-width: 769px) {
  .search-drawer__search {
    padding: var(--spacing-600) var(--spacing-600) 0 0;
  }
}

@media (max-width: 768px) {
  .search-drawer__search form {
    width: 100%;
  }
}
.search-drawer_cancel {
  font-weight: var(--type-fontweight-light);
  text-decoration: none;
}
@media (max-width: 768px) {
  .search-drawer_cancel {
    display: none;
  }
}
.search-drawer_cancel:hover {
  cursor: pointer;
}

.search-drawer__terms .suggestion-chip {
  background-color: var(--color-neutrals-25);
  font-weight: 400;
}
.search-drawer__terms .suggestion-chip:hover {
  background-color: var(--color-primary-napaorange-100);
}
.search-drawer__terms .suggestion-chip-slider__nav-container {
  display: none;
}
@media (min-width: 769px) {
  .search-drawer__terms {
    padding-right: var(--spacing-600);
  }
}

.search-drawer__links.search-drawer__links--mobile {
  padding: 0 var(--screens-mobile-margin) var(--screens-mobile-content-bottom);
}

[data-js=search-drawer-suggestions].search-drawer__links.search-drawer__links--mobile {
  padding: 0 var(--screens-mobile-margin) 0;
}

@media (max-width: 768px) {
  .search-drawer__suggestsions {
    padding-bottom: var(--spacing-800);
  }
}
.search-drawer__close {
  position: relative;
  padding: 0;
  height: var(--spacing-850);
  width: var(--spacing-850);
  border: none;
  background-color: var(--color-neutrals-0);
}
@media (min-width: 769px) {
  .search-drawer__close {
    display: none;
  }
}

[data-search-drawer][data-active=false] .search-drawer__close {
  display: none;
}

.search-drawer__close-icon {
  color: var(--color-neutrals-1000);
  position: absolute;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  width: 24px;
  height: 24px;
}

.search-drawer .product-search-card {
  width: 164px;
}
@media (min-width: 769px) {
  .search-drawer .product-search-card {
    width: 182px;
  }
}

/* h:\projects\vfc\reference-theme\src\components\search-drawer-link-list\search-drawer-link-list.scss */
[data-search-drawer-link-list][data-active=false] {
  display: none;
}

search-drawer-link-list {
  display: block;
}

.search-drawer-link-list__heading {
  color: var(--typography-color-secondary);
}

.search-drawer__links-list-item .suggestion-links {
  text-decoration: none;
}

/* h:\projects\vfc\reference-theme\src\components\search-header\search-header.scss */
.header .header__bar {
  box-shadow: none;
}

.search-header {
  display: block;
  margin: 0 auto;
}
.search-header > * + * {
  margin-top: var(--spacing-400);
}

.search-header__search {
  padding: var(--spacing-400);
}
@media (min-width: 769px) {
  .search-header__search {
    max-width: 606px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }
}

#MainContent {
  margin-top: var(--mobile-header-height);
}

@media (min-width: 769px) {
  #MainContent {
    margin-top: var(--header-height);
  }
}
.search.filter-container__title {
  font-weight: 300;
}

/* h:\projects\vfc\reference-theme\src\components\search-input\search-input.scss */
.search-input {
  display: flex;
  align-items: center;
  position: relative;
  border-radius: var(--borders-radius-default);
  border: var(--borders-width-standard) solid var(--borders-color-medium);
  height: 44px;
  /* this is a little wacky */
  padding: 0 44px 0 calc(var(--spacing-200) + 24px + var(--spacing-200));
}

@media (min-width: 769px) {
  .search-input {
    min-width: 616px;
  }
}
.search-input__icon {
  position: absolute;
  left: var(--spacing-200);
  color: var(--icons-default);
}

.search-input__input {
  border: none;
  background-color: transparent;
  width: 100%;
}

.search-input__input:focus {
  outline: none;
}

.search-input__close {
  position: absolute;
  right: 0;
  background-color: transparent;
  border: none;
  height: 44px;
  width: 44px;
}

.search-input:focus-within {
  outline: 1px solid var(--color-neutrals-1000);
}

/* h:\projects\vfc\reference-theme\src\components\section-accordions\section-accordions.scss */
.section-accordions {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-200);
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  padding: var(--spacing-700) var(--screens-desktop-margin);
}
.section-accordions [data-accordion] {
  border-top: 1px solid var(--ui-elements-dividers-primary);
}
.section-accordions [data-accordion]:last-child {
  padding-bottom: var(--screens-mobile-margin);
}

/* h:\projects\vfc\reference-theme\src\components\section-bg-image\section-bg-image.scss */
/* show/hide bg images on mobile and desktop */
.section-bg-image__image img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
@media (max-width: 768px) {
  .section-bg-image__image.section-bg-image__image--desktop {
    display: none;
  }
}
@media (min-width: 769px) {
  .section-bg-image__image.section-bg-image__image--mobile {
    display: none;
  }
}

.section-bg-image__scrim {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  /* this is set via section settings */
  background-color: var(--scrim);
}

/* h:\projects\vfc\reference-theme\src\components\sheer-id\sheer-id.scss */
.sheer-id {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  padding: var(--spacing-700) var(--screens-desktop-margin);
}

/* h:\projects\vfc\reference-theme\src\components\signup-modal\signup-modal.scss */
.signup-modal .modal__container {
  max-width: 800px;
  max-height: 600px;
  padding: 0;
  background: var(--surface-primary);
  border-radius: var(--borders-radius-large);
  overflow: hidden;
  position: relative;
}

.signup-modal__content {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

.signup-modal__image {
  position: relative;
}

.signup-modal__image img,
.signup-modal__image .placeholder-svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.signup-modal__text-content {
  padding: var(--spacing-800);
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.signup-modal__subtitle {
  margin-top: var(--spacing-100);
  margin-bottom: var(--spacing-400);
}

.signup-modal__form {
  margin-top: var(--spacing-600);
}

.signup-modal__form-field {
  margin-bottom: var(--spacing-400);
}

.signup-modal__input {
  padding: 10px;
  border: 1px solid var(--borders-color-medium);
  border-radius: var(--borders-radius-default);
  width: 100%;
  box-sizing: border-box;
}

.signup-modal__input::placeholder {
  color: var(--typography-color-default);
}

.signup-modal__buttons {
  display: grid;
  gap: var(--spacing-300);
  margin-bottom: var(--spacing-400);
}

.signup-modal__submit,
.signup-modal__close {
  width: 100%;
  justify-content: center;
}

.signup-modal__terms {
  margin: 0;
}

.signup-modal .modal__close {
  position: absolute;
  top: var(--spacing-400);
  right: var(--spacing-400);
  width: 4.4rem;
  height: 4.4rem;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  cursor: pointer;
  z-index: 2;
}

.signup-modal .modal__close svg {
  width: 2.4rem;
  height: 2.4rem;
}

@media screen and (max-width: 768px) {
  .signup-modal .modal__container {
    max-width: 100%;
    height: 100vh;
    max-height: none;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .signup-modal__content {
    grid-template-columns: 1fr;
    min-height: min-content;
  }
  .signup-modal__image {
    height: 30vh;
    position: sticky;
    top: 0;
    z-index: 1;
  }
  .signup-modal .modal__close {
    position: fixed;
    top: var(--spacing-400);
    right: var(--spacing-400);
    z-index: 3;
  }
  .signup-modal__text-content {
    padding: var(--spacing-600);
    position: relative;
    z-index: 0;
    background: var(--surface-primary);
  }
}
/* h:\projects\vfc\reference-theme\src\components\simple-blog-collection\simple-blog-collection.scss */
.simple-blog-collection {
  position: relative;
  display: block;
  background: var(--surface-primary);
}

.simple-blog-collection__inner {
  position: relative;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 769px) {
  .simple-blog-collection__inner {
    padding: var(--spacing-700) var(--screens-desktop-margin);
  }
}
@media (max-width: 768px) {
  .simple-blog-collection__inner {
    padding: var(--spacing-700) var(--screens-mobile-margin);
  }
}

.simple-blog-collection__header {
  text-align: center;
  margin-bottom: var(--spacing-700);
}
.simple-blog-collection__header > * + * {
  margin-top: var(--spacing-400);
}

.simple-blog-collection__slider {
  margin: 0 calc(-1 * var(--screens-mobile-margin));
  padding: 0 var(--screens-mobile-margin);
  padding-bottom: var(--spacing-700);
  overflow: hidden;
}
@media (min-width: 769px) {
  .simple-blog-collection__slider {
    margin: 0;
    padding: 0;
    padding-bottom: var(--spacing-700);
  }
}

.simple-blog-collection .swiper {
  overflow: visible;
}

.simple-blog-collection .swiper-wrapper {
  display: flex;
}

.simple-blog-collection .swiper-slide {
  height: auto;
}
@media (min-width: 769px) {
  .simple-blog-collection .swiper-slide {
    width: calc(33.333% - var(--spacing-400));
    margin-right: var(--spacing-400);
  }
}
@media (max-width: 768px) {
  .simple-blog-collection .swiper-slide {
    width: 85%;
    margin-right: var(--spacing-400);
  }
}

.blog-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: var(--surface-primary);
  border-radius: var(--borders-radius-secondary);
  border: var(--borders-width-decorative) solid var(--borders-color-white);
  box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.08);
}

.blog-card__image {
  aspect-ratio: 1/1;
  margin-bottom: var(--spacing-400);
}
.blog-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.blog-card__content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-300);
  flex: 1;
  position: relative;
  padding: var(--spacing-600) var(--spacing-400) var(--spacing-1000);
  color: var(--typography-color);
}
.blog-card__content .text-link {
  color: var(--typography-color-brand);
  position: absolute;
  bottom: var(--spacing-400);
}

.blog-card__meta {
  color: var(--typography-color-secondary);
}

.simple-blog-collection__scrollbar {
  display: none;
}
@media (min-width: 769px) {
  .simple-blog-collection__scrollbar {
    display: block;
    height: 4px;
    background-color: var(--color-neutrals-200);
    margin-top: var(--spacing-500);
    position: relative;
    cursor: pointer;
  }
}
@media (max-width: 768px) {
  .simple-blog-collection__scrollbar {
    display: none;
  }
}

.simple-blog-collection__scrollbar-drag {
  height: 100%;
  background-color: var(--typography-color-secondary);
  position: relative;
  cursor: grab;
}
.simple-blog-collection__scrollbar-drag:active {
  cursor: grabbing;
}
.simple-blog-collection__scrollbar-drag::before {
  content: "";
  position: absolute;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  background-color: var(--typography-color);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.simple-blog-collection__scrollbar-drag::after {
  content: "";
  position: absolute;
  width: 0.75rem;
  height: 2px;
  background-color: var(--surface-primary);
  top: calc(50% - 2px);
  left: 50%;
  box-shadow: 0 4px 0 var(--surface-primary);
  transform: translate(-50%, -50%);
}

.simple-blog-collection__footer {
  display: flex;
  justify-content: center;
  margin-top: var(--spacing-700);
}
@media (min-width: 769px) {
  .simple-blog-collection__footer {
    margin-top: 0;
  }
}

.blog-card__link-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1rem;
}

/* h:\projects\vfc\reference-theme\src\components\simple-content-collection\simple-content-collection.scss */
.simple-content-collection {
  background: var(--surface-primary);
  position: relative;
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 769px) {
  .simple-content-collection {
    padding: var(--spacing-700) var(--screens-desktop-margin);
  }
}
@media (max-width: 768px) {
  .simple-content-collection {
    padding: var(--spacing-700) var(--screens-mobile-margin);
  }
}

.simple-content-collection__header {
  position: relative;
  text-align: left;
  margin-bottom: var(--spacing-700);
}
@media (max-width: 768px) {
  .simple-content-collection__header {
    text-align: left;
  }
}
.simple-content-collection__header > * + * {
  margin-top: var(--spacing-400);
}

.simple-content-collection__grid {
  display: grid;
  gap: var(--spacing-400);
}
@media (min-width: 769px) {
  .simple-content-collection__grid {
    grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
  }
}

.simple-content-collection__description {
  max-width: 60rem;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 768px) {
  .simple-content-collection__description {
    margin-left: 0;
    margin-right: 0;
  }
}

/* h:\projects\vfc\reference-theme\src\components\simple-product-collection\simple-product-collection.scss */
.simple-product-collection {
  background-color: var(--surface-primary);
  position: relative;
}

.simple-product-collection__inner {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 769px) {
  .simple-product-collection__inner {
    padding: var(--spacing-700) var(--screens-desktop-margin);
  }
}
@media (max-width: 768px) {
  .simple-product-collection__inner {
    padding: var(--spacing-700) var(--screens-mobile-margin);
  }
}

.simple-product-collection__content {
  margin-bottom: var(--spacing-600);
  position: relative;
}
@media (max-width: 768px) {
  .simple-product-collection__content {
    margin-bottom: var(--spacing-400);
  }
}

.simple-product-collection__slider {
  position: relative;
}
.simple-product-collection__slider .swiper-slide {
  width: 25%;
}
@media (max-width: 768px) {
  .simple-product-collection__slider .swiper-slide {
    width: 85%;
  }
}

.simple-product-collection__scrollbar {
  display: none;
}
@media (min-width: 769px) {
  .simple-product-collection__scrollbar {
    display: block;
    height: 4px;
    background-color: var(--color-primary-warmgray-200);
    margin-top: var(--spacing-400);
    position: relative;
    cursor: pointer;
  }
}

.simple-product-collection__scrollbar-drag {
  height: 100%;
  background-color: var(--buttons-primary-background);
  position: relative;
  cursor: grab;
  max-width: 100px;
}
.simple-product-collection__scrollbar-drag:active {
  cursor: grabbing;
}
.simple-product-collection__scrollbar-drag::before {
  content: "";
  position: absolute;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  background-color: var(--buttons-primary-background);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.simple-product-collection__scrollbar-drag::after {
  content: "";
  position: absolute;
  width: 0.75rem;
  height: 2px;
  background-color: var(--surface-primary);
  top: calc(50% - 2px);
  left: 50%;
  box-shadow: 0 4px 0 var(--surface-primary);
  transform: translate(-50%, -50%);
}

.simple-product-collection__description {
  max-width: 50rem;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 768px) {
  .simple-product-collection__description {
    margin-left: 0;
    margin-right: 0;
  }
}

/* h:\projects\vfc\reference-theme\src\components\sketchfab\sketchfab.scss */
.sketchfab {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 769px) {
  .sketchfab {
    padding: var(--spacing-700) var(--screens-desktop-margin);
  }
}

.sketchfab.sketchfab--full-bleed {
  padding: 0;
}

.sketchfab__inner {
  display: grid;
  align-items: center;
  background-color: var(--surface-primary);
}
@media (min-width: 769px) {
  .sketchfab__inner {
    grid-template-columns: 1fr 1fr;
  }
}

@media (min-width: 769px) {
  .sketchfab__left {
    height: 100%;
  }
}

/* left column layouts */
@media (min-width: 769px) {
  .sketchfab--left .sketchfab--width-small .sketchfab__inner {
    grid-template-columns: 40% 1fr;
  }
}
@media (min-width: 769px) {
  .sketchfab--left .sketchfab--width-medium .sketchfab__inner {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 769px) {
  .sketchfab--left .sketchfab--width-large .sketchfab__inner {
    grid-template-columns: 60% 1fr;
  }
}
.sketchfab--left .sketchfab__left .sketchfab__content {
  display: none;
}

/* invert column layouts */
@media (min-width: 769px) {
  .sketchfab--right.sketchfab--width-small .sketchfab__inner {
    grid-template-columns: 1fr 40%;
  }
}
@media (min-width: 769px) {
  .sketchfab--right .sketchfab--width-medium .sketchfab__inner {
    grid-template-columns: 1fr 1fr;
  }
}
@media (min-width: 769px) {
  .sketchfab--right.sketchfab--width-large .sketchfab__inner {
    grid-template-columns: 1fr 60%;
  }
}
.sketchfab--right .sketchfab__right .sketchfab__content {
  display: none;
}

/* mobile styles to show image on top, text on bottom regardless of image placement */
@media (max-width: 768px) {
  .sketchfab--left .sketchfab__left .sketchfab__content,
  .sketchfab--right .sketchfab__left .sketchfab__content {
    display: none;
  }
}
@media (max-width: 768px) {
  .sketchfab--left .sketchfab__right .sketchfab__content,
  .sketchfab--right .sketchfab__right .sketchfab__content {
    display: block;
  }
}

.sketchfab__model {
  position: relative;
  padding-bottom: 75%;
  height: 100%;
}
.sketchfab__model iframe {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  border: none;
}
@media (max-width: 768px) {
  .sketchfab__model.sketchfab__model--desktop {
    display: none;
  }
}
@media (min-width: 769px) {
  .sketchfab__model.sketchfab__model--mobile {
    display: none;
  }
}

.sketchfab--height-small .sketchfab__model {
  padding-bottom: 75%;
}

.sketchfab--height-medium .sketchfab__model {
  padding-bottom: 100%;
}

.sketchfab--height-large .sketchfab__model {
  padding-bottom: 120%;
}

.sketchfab__content {
  display: flex;
  align-items: center;
  height: 100%;
  padding: var(--spacing-700) var(--screens-mobile-margin);
}
@media (min-width: 769px) {
  .sketchfab__content {
    padding: var(--screens-desktop-margin);
  }
}

/* h:\projects\vfc\reference-theme\src\components\specifications-table\specifications-table.scss */
.specifications-table {
  text-align: left;
}
.specifications-table tbody {
  display: grid;
  grid-gap: var(--components-accordions-content-gap);
}
.specifications-table tr {
  display: grid;
  grid-template-columns: 88px 1fr;
  grid-gap: var(--spacing-400);
}

/* h:\projects\vfc\reference-theme\src\components\styled-select\styled-select.scss */
/* Base select styles */
.styled-select {
  position: relative;
  width: 100%;
  min-width: 200px;
}

/* Field wrapper styles */
.styled-select[data-has-help],
.styled-select[data-has-error] {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-50);
}

/* Trigger button styling */
.styled-select__trigger {
  font-family: var(--body-font);
  font-size: var(--body-medium-size);
  font-weight: var(--body-weight);
  line-height: var(--body-medium-line-height);
  letter-spacing: calc(var(--body-medium-size) * var(--body-letter-spacing));
  background-color: transparent;
  border: var(--borders-width-standard) solid var(--ui-elements-forms-default);
  border-radius: var(--borders-radius-default);
  box-sizing: border-box;
  color: var(--typography-color-default);
  font-style: normal;
  height: 48px;
  width: 100%;
  padding: var(--spacing-500) var(--spacing-200) var(--spacing-300) var(--spacing-300);
  text-align: left;
  position: relative;
  cursor: pointer;
}

/* Label styling */
.styled-select__label {
  font-family: var(--body-font);
  font-size: var(--body-medium-size);
  font-weight: var(--body-weight);
  line-height: var(--body-medium-line-height);
  letter-spacing: calc(var(--body-medium-size) * var(--body-letter-spacing));
  color: var(--typography-color-secondary);
  left: var(--spacing-300);
  height: 48px;
  margin-bottom: 0;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transition: all 0.3s ease;
  transform: translateY(-50%);
  z-index: 1;
}

/* Selected value styling */
.styled-select__trigger [data-label] {
  display: block;
  text-align: left;
  opacity: 0;
  transition: opacity 0.3s ease;
}

/* When value is selected */
.styled-select[data-has-value] {
  /* Move label up */
  /* Show selected value */
  /* Adjust trigger padding for label */
}
.styled-select[data-has-value] .styled-select__label {
  font-family: var(--body-font);
  font-size: var(--body-xsmall-size);
  font-weight: var(--body-weight);
  line-height: var(--body-xsmall-line-height);
  letter-spacing: calc(var(--body-xsmall-size) * var(--body-letter-spacing));
  top: var(--spacing-50);
  transform: translateY(0);
  text-align: left;
  left: var(--spacing-300);
  right: auto;
}
.styled-select[data-has-value] .styled-select__trigger [data-label] {
  opacity: 1;
}
.styled-select[data-has-value] .styled-select__trigger {
  padding-top: var(--spacing-500);
}

/* Listbox styling */
.styled-select__listbox {
  position: absolute;
  left: 0;
  right: 0;
  top: 48px;
  background-color: var(--color-neutrals-0);
  border: var(--borders-width-standard) solid var(--color-neutrals-400);
  border-radius: var(--borders-radius-default);
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  z-index: 10;
  display: none;
}
.styled-select__listbox ul {
  padding: 0;
}

.styled-select[data-active=true] .styled-select__listbox {
  display: block;
}

/* Option styling */
.styled-select__option {
  font-family: var(--body-font);
  font-size: var(--body-medium-size);
  font-weight: var(--body-weight);
  line-height: var(--body-medium-line-height);
  letter-spacing: calc(var(--body-medium-size) * var(--body-letter-spacing));
  padding: var(--spacing-200) var(--spacing-300);
  cursor: pointer;
  transition: background-color 0.2s ease;
  color: var(--typography-color-default);
  list-style: none;
}

.styled-select__option[data-selected=true] {
  background-color: var(--color-neutrals-50);
}

/* Help text */
.styled-select__help {
  font-family: var(--body-font);
  font-size: var(--body-xsmall-size);
  font-weight: var(--body-weight);
  line-height: var(--body-xsmall-line-height);
  letter-spacing: calc(var(--body-xsmall-size) * var(--body-letter-spacing));
  color: var(--typography-color-default);
}

/* Error state - using native form validation */
.styled-select input:invalid ~ .styled-select__trigger {
  border-color: var(--typography-color-error-sale);
}

.styled-select input:invalid ~ .styled-select__label {
  color: var(--typography-color-error-sale);
}

/* Remove the custom error styles since we're using native validation */
.styled-select[data-has-error] .styled-select__trigger,
.styled-select[data-has-error] .styled-select__label,
.styled-select__error {
  display: none;
}

/* Disabled state */
.styled-select[disabled] .styled-select__trigger {
  color: var(--typography-color-disabled);
  background-color: rgba(0, 0, 0, 0.08);
  cursor: not-allowed;
}

.styled-select[disabled] .styled-select__label {
  color: var(--typography-color-disabled);
}

/* Focus state */
.styled-select__trigger:focus {
  border-color: var(--ui-elements-forms-focus);
  border-width: 2px;
  outline: none;
}

/* Icon */
.styled-select__trigger svg {
  position: absolute;
  right: var(--spacing-300);
  top: 50%;
  transform: translateY(-50%);
  transition: transform 0.2s ease;
  pointer-events: none;
  color: var(--typography-color-default);
  width: 24px;
}

.styled-select[data-active=true] .styled-select__trigger svg {
  transform: translateY(-50%) rotate(180deg);
}

/* Remove the old dropdown styles */
.dropdown {
  display: none;
}

/* h:\projects\vfc\reference-theme\src\components\suggestion-chip\suggestion-chip.scss */
.suggestion-chip {
  align-items: center;
  background: var(--ui-elements-chips-default);
  border-radius: var(--borders-radius-default);
  border: none;
  display: inline-flex;
  font-weight: 700;
  justify-content: center;
  padding: var(--spacing-200) var(--spacing-400);
  text-decoration: none;
}
@media (min-width: 769px) {
  .suggestion-chip:hover {
    background: var(--ui-elements-chips-hover, );
  }
}

/* h:\projects\vfc\reference-theme\src\components\suggestion-chip-slider\suggestion-chip-slider.scss */
[data-suggestion-chip-slider][data-active=false] {
  display: none;
}

suggestion-chip-slider {
  display: block;
  position: relative;
}

.suggestion-chip-slider .swiper-slide {
  width: auto;
}
@media (max-width: 768px) {
  .suggestion-chip-slider .swiper {
    padding: 0 var(--screens-mobile-margin);
  }
}
.suggestion-chip-slider > * + * {
  margin-top: var(--spacing-400);
}

.suggestion-chip-slider__heading {
  color: var(--typography-color-secondary);
}
@media (max-width: 768px) {
  .suggestion-chip-slider__heading {
    padding: 0 var(--screens-mobile-margin);
  }
}

.suggestion-chip-slider__nav-container {
  display: flex;
  gap: var(--spacing-200);
  margin-top: var(--spacing-600);
}
@media (max-width: 768px) {
  .suggestion-chip-slider__nav-container {
    display: none;
  }
}

.suggestion-chip-slider__prev,
.suggestion-chip-slider__next {
  background-color: transparent;
  border: none;
  transform: translateY(-50%);
  z-index: 10;
  padding: 0;
  margin: 0;
}

.suggestion-chip-slider__prev {
  left: var(--spacing-200);
}

.suggestion-chip-slider__next {
  right: var(--spacing-200);
}

/* h:\projects\vfc\reference-theme\src\components\swiper\swiper.scss */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  display: flex;
  flex-flow: row nowrap;
  padding: 0 var(--spacing-100);
  pointer-events: none;
}
@media (min-width: 769px) {
  .swiper-pagination-fraction,
  .swiper-pagination-custom,
  .swiper-horizontal > .swiper-pagination-bullets,
  .swiper-pagination-bullets.swiper-pagination-horizontal {
    display: block;
    padding: 0;
    pointer-events: auto;
  }
}

.swiper-pagination-bullet {
  flex: 1;
}

/* h:\projects\vfc\reference-theme\src\components\tagged-banner\tagged-banner.scss */
.tagged-banner {
  position: relative;
  width: 100%;
}

.tagged-banner__media-container {
  position: relative;
  width: 100%;
}

.tagged-banner__media {
  position: relative;
  width: 100%;
}

.tagged-banner__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Desktop media */
.tagged-banner__media--desktop {
  display: none;
  aspect-ratio: var(--desktop-ratio, 32/9);
}

/* Mobile media */
.tagged-banner__media--mobile {
  display: block;
  aspect-ratio: var(--mobile-ratio, 4/3);
}

/* Tag button styling */
.tagged-banner__tag {
  position: absolute;
  padding: var(--spacing-100);
  border-radius: 50%;
  background: var(--surface-primary);
  opacity: 0.8;
  cursor: pointer;
  transition: transform 0.2s ease;
  z-index: 2;
  transform-origin: center center;
  transform: translate(-50%, -50%);
}

.tagged-banner__tag:hover {
  transform: translate(-50%, -50%) scale(1.1);
}

.tagged-banner__tag svg {
  width: 16px;
  height: 16px;
  display: block;
}

/* Product card overlay */
.tagged-banner__product-card {
  position: absolute;
  z-index: 30;
  background: var(--color-background);
  border: 1px solid var(--color-border);
  border-radius: var(--border-radius);
  box-shadow: var(--shadow-lg);
  width: 300px;
  max-width: calc(100vw - 32px);
}

/* Position tags based on screen size */
@media screen and (min-width: 768px) {
  .tagged-banner__media--desktop {
    display: block;
  }
  .tagged-banner__media--mobile {
    display: none;
  }
  .tagged-banner__tag {
    left: var(--desktop-left);
    top: var(--desktop-top);
  }
}
@media screen and (max-width: 767px) {
  .tagged-banner__tag {
    left: var(--mobile-left);
    top: var(--mobile-top);
  }
}
/* h:\projects\vfc\reference-theme\src\components\text-link\text-link.scss */
/* these styles overlap with the basic link styles, but include some extra padding and animations */
.text-link {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-50);
  color: var(--typography-color);
  text-decoration: none;
  padding: var(--spacing-50) 0px;
  font-weight: 700;
}
.text-link:hover, .text-link:focus {
  color: var(--typography-color-hover-active);
}

.text-link__label {
  transition: transform 0.3s ease-out;
}

.text-link__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 20px;
  width: 20px;
}
.text-link__icon svg {
  height: 100%;
  width: 100%;
  scale: 80%;
  transition: scale 0.3s ease-out;
}

.text-link--arrow:hover .text-link__icon svg, .text-link--arrow:focus .text-link__icon svg {
  scale: 100%;
}

.text-link--icon:hover .text-link__label, .text-link--icon:focus .text-link__label {
  transform: translateX(-2px);
}

/* h:\projects\vfc\reference-theme\src\components\ugc-slider\ugc-slider.scss */
.ugc-slider {
  display: block;
  padding: var(--spacing-700) var(--screens-mobile-margin);
}
@media (min-width: 769px) {
  .ugc-slider {
    padding: var(--spacing-700) var(--screens-desktop-margin);
  }
}

/* h:\projects\vfc\reference-theme\src\components\user-testimonial\user-testimonial.scss */
.user-testimonial {
  padding: var(--spacing-700) var(--screens-mobile-margin);
  position: relative;
}
@media (min-width: 769px) {
  .user-testimonial {
    padding: var(--spacing-700) var(--screens-desktop-margin);
  }
}

.user-testimonial__inner {
  position: relative;
  max-width: var(--screens-desktop-width);
  margin: 0 auto;
}
@media (min-width: 769px) {
  .user-testimonial__inner {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--spacing-700);
    align-items: center;
  }
}

.user-testimonial__image {
  aspect-ratio: 1/1;
  margin-bottom: var(--spacing-600);
}
@media (min-width: 769px) {
  .user-testimonial__image {
    margin-bottom: 0;
  }
}
.user-testimonial__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.user-testimonial__content {
  color: var(--typography-color);
  display: flex;
  flex-direction: column;
  gap: var(--spacing-400);
  text-align: center;
}
@media (min-width: 769px) {
  .user-testimonial__content {
    text-align: left;
  }
}

.user-testimonial__quote {
  margin: 0;
}

.user-testimonial__author {
  display: flex;
  gap: var(--spacing-200);
  justify-content: center;
}
@media (min-width: 769px) {
  .user-testimonial__author {
    justify-content: flex-start;
  }
}

.user-testimonial__author-name {
  margin: 0;
  font-weight: 700;
}

.user-testimonial__author-details {
  margin: 0;
  color: var(--typography-color-secondary);
}

.user-testimonial__link {
  justify-content: center;
  color: var(--typography-color);
}
@media (min-width: 769px) {
  .user-testimonial__link {
    justify-content: flex-start;
  }
}

/* h:\projects\vfc\reference-theme\src\components\variant-collection\variant-collection.scss */
.variant-collection .variant-collection__header {
  margin-top: 80px;
  margin-bottom: var(--spacing-400);
  padding: 0 var(--screens-mobile-gutter);
}
@media (min-width: 767px) {
  .variant-collection .variant-collection__header {
    margin-top: 128px;
  }
}
@media (min-width: 1023px) {
  .variant-collection .variant-collection__header {
    margin-bottom: var(--spacing-800);
  }
}
@media (min-width: 1280px) {
  .variant-collection .variant-collection__header {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
  }
}
.variant-collection:not(:has(.variant-collection__header)) {
  padding-top: var(--spacing-400);
}
@media (min-width: 767px) {
  .variant-collection:not(:has(.variant-collection__header)) {
    padding-top: var(--spacing-800);
  }
}
.variant-collection .variant-collection__grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  grid-column-gap: var(--spacing-400);
  padding: 0 var(--spacing-900);
}
@media (min-width: 767px) {
  .variant-collection .variant-collection__grid {
    grid-template-columns: repeat(2, 1fr);
    padding: 0 var(--screens-mobile-gutter);
  }
}
@media (min-width: 1023px) {
  .variant-collection .variant-collection__grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 1280px) {
  .variant-collection .variant-collection__grid {
    max-width: 1280px;
    margin: 0 auto;
  }
}
.variant-collection .product-card {
  padding: 0;
}

/* h:\projects\vfc\reference-theme\src\components\video-section\video-section.scss */
.video-section {
  margin: 0 auto;
  padding: var(--spacing-800) 0;
  max-width: var(--screens-desktop-width);
}

.video-section--full-screen {
  max-width: none;
  padding: var(--spacing-800) 0;
}

.video-section__content {
  background-color: var(--surface-primary);
}

.video-section__content-wrapper {
  margin-bottom: var(--spacing-800);
  padding-left: var(--screens-mobile-margin);
  padding-right: var(--screens-mobile-margin);
}

/* Video container styles */
.video-section__video-wrapper {
  position: relative;
  width: 100%;
}

.video-section__video {
  position: relative;
  width: 100%;
}

/* Cover image styles */
.video-section__cover {
  position: relative;
  width: 100%;
  aspect-ratio: 16/9;
}

.video-section__cover-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Play button styles */
.video-section__play-button {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: rgba(0, 0, 0, 0.7);
  border: none;
  border-radius: 50%;
  width: 80px;
  height: 80px;
  cursor: pointer;
  transition: background 0.2s;
  color: white;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.video-section__play-button:hover {
  background: rgba(0, 0, 0, 0.9);
}

/* Video element styles */
.video-section__video-element {
  width: 100%;
  aspect-ratio: 16/9;
  display: block;
}

/* iFrame wrapper styles */
.video-section__iframe-wrapper {
  position: relative;
  width: 100%;
  padding-bottom: 56.25%; /* 16:9 aspect ratio */
}

.video-section__iframe-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

@media (min-width: 769px) {
  .video-section {
    padding: var(--spacing-700) 0;
  }
  .video-section__content-wrapper {
    margin-bottom: var(--spacing-800);
  }
}