/** Shopify CDN: Minification failed

Line 583:0 Unexpected "}"

**/
cart-items .title-wrapper-with-link {
  margin-top: 0;
}

@media screen and (min-width: 990px) {
  cart-items .title-wrapper-with-link {
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 2rem !important;
    max-width: calc(100% - 390px) !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    text-align: left !important;
  }

  cart-items .title-wrapper-with-link .title {
    text-align: left !important;
  }
}

.cart-items td,
.cart-items th {
  padding: 0;
  border: none;
}

.cart-items th {
  text-align: left;
  padding-bottom: 1.8rem;
  opacity: 0.85;
  font-weight: normal;
}

.cart-item__quantity-wrapper {
  display: flex;
}

.cart-item__totals {
  position: relative;
}

.cart-items *.right {
  text-align: right;
}

.cart-item__image-container {
  display: inline-flex;
  align-items: flex-start;
}

.cart-item__nested-line .cart-item__image-container {
  min-width: calc(10rem / var(--font-body-scale));
  justify-content: right;
  img {
    width: 60%;
  }
}

.cart-item__image-container:after {
  content: none;
}

.cart-item__image {
  height: auto;
  max-width: calc(10rem / var(--font-body-scale));
}

@media screen and (min-width: 750px) {
  .cart-item__image {
    max-width: 100%;
  }
}

.cart-item__details {
  font-size: 1.6rem;
  line-height: calc(1 + 0.4 / var(--font-body-scale));
}

.cart-item__details > * {
  margin: 0;
  max-width: 30rem;
}

.cart-item__details > * + * {
  margin-top: 0.6rem;
}

.cart-item__media {
  position: relative;
}

.cart-item__link {
  display: block;
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.cart-item__name {
  text-decoration: none;
  display: block;
}

.cart-item__name:hover {
  text-decoration: underline;
  text-underline-offset: 0.3rem;
  text-decoration-thickness: 0.2rem;
}

.cart-item__price-wrapper > * {
  display: block;
  margin: 0;
  padding: 0;
}

.cart-item__discounted-prices dd {
  margin: 0;
}

.cart-item__discounted-prices .cart-item__old-price {
  font-size: 1.4rem;
}

.cart-item__old-price {
  opacity: 0.7;
}

.cart-item__final-price {
  font-weight: 400;
}

.product-option {
  font-size: 1.4rem;
  word-break: break-word;
  line-height: calc(1 + 0.5 / var(--font-body-scale));
}

.cart-item cart-remove-button {
  display: flex;
  margin-left: 1rem;
}

@media screen and (min-width: 750px) and (max-width: 989px) {
  .cart-item cart-remove-button {
    width: 4.5rem;
    height: 4.5rem;
  }
}

cart-remove-button .button {
  min-width: calc(4.5rem / var(--font-body-scale));
  min-height: 4.5rem;
  padding: 0;
  margin: 0 0.1rem 0.1rem 0;
}

cart-remove-button .button:before,
cart-remove-button .button:after {
  content: none;
}

cart-remove-button .button:not([disabled]):hover {
  color: rgb(var(--color-foreground));
}

@media screen and (min-width: 750px) {
  cart-remove-button .button {
    min-width: 3.5rem;
    min-height: 3.5rem;
  }
}

cart-remove-button .icon-remove {
  height: 1.5rem;
  width: 1.5rem;
}

.cart-item .loading__spinner {
  position: absolute;
  top: 66%;
  left: 50%;
  right: auto;
  bottom: auto;
  transform: translate(-50%, -50%);
  padding: 0;
}

.cart-item .loading__spinner:not(.hidden) ~ * {
  visibility: hidden;
}

.cart-item__error {
  display: flex;
  align-items: flex-start;
  margin-top: 0.2rem;
  width: min-content;
  min-width: 100%;
}

.cart-item__error-text {
  font-size: 1.3rem;
  line-height: 1.4;
  letter-spacing: 0.04rem;
  order: 1;
}

.cart-item__error-text + .svg-wrapper {
  flex-shrink: 0;
  width: 1.5rem;
  height: 1.5rem;
  margin-right: 0.7rem;
  margin-top: 0.25rem;
}

.cart-item__error-text:empty + .svg-wrapper {
  display: none;
}

.product-option + .product-option {
  margin-top: 0.4rem;
}

.product-option * {
  display: inline;
  margin: 0;
}

.cart-items thead th {
  text-transform: uppercase;
}

@media screen and (max-width: 749px) {
  .cart-items,
  .cart-items thead,
  .cart-items tbody {
    display: block;
    width: 100%;
  }

  .cart-items thead tr {
    display: flex;
    justify-content: space-between;
    border-bottom: 0.1rem solid rgba(var(--color-foreground), 0.2);
    margin-bottom: 4rem;
  }

  .cart-item {
    display: grid;
    grid-template: repeat(2, auto) / repeat(4, 1fr);
    gap: 1.5rem;
    margin-bottom: 3.5rem;
  }

  .cart-item:has(+ .cart-item__nested-line) {
    margin-bottom: 1.5rem;
  }

  .cart-item:last-child {
    margin-bottom: 0;
  }

  .cart-item__media {
    grid-row: 1 / 3;
  }

  .cart-item__details {
    grid-column: 2 / 4;
  }

  .cart-item__quantity {
    grid-column: 2 / 5;
  }

  .cart-item__quantity-wrapper {
    flex-wrap: wrap;
  }

  .cart-item__totals {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
  }
}

@media screen and (min-width: 750px) {
  .cart-items {
    border-spacing: 0;
    border-collapse: separate;
    box-shadow: none;
    width: 100%;
    display: table;
  }

  .cart-items th {
    border-bottom: 0.1rem solid rgba(var(--color-foreground), 0.08);
  }

  .cart-items thead th:first-child {
    width: 50%;
  }

  .cart-items th + th {
    padding-left: 4rem;
  }

  .cart-items td {
  vertical-align: top;
  padding-top: 3rem;
}

  .cart-items .cart-item__nested-line td {
    padding-top: 1rem;
  }

  .cart-item {
    display: table-row;
  }

  .cart-item > td + td {
    padding-left: 4rem;
  }

  .cart-item__details {
    width: 35rem;
  }

  .cart-item__media {
    width: 10rem;
  }

  .cart-item__price-wrapper > *:only-child:not(.cart-item__discounted-prices) {
    margin-top: 1.5rem;
  }

  .cart-item__error {
    margin-left: 0.3rem;
  }
}

@media screen and (min-width: 990px) {
  .cart-item .cart-item__quantity,
  .cart-items .cart-items__heading--wide {
    padding-left: 6rem;
  }

  .cart-item__details {
    width: 50rem;
  }

  .cart-items thead th:first-child {
    width: 60%;
  }
}

@media screen and (min-width: 750px) {
  .cart-items .cart-items__heading--quantity,
  .cart-item .cart-item__quantity,
  .cart-item__quantity--info quantity-popover > * {
    padding-left: 5rem;
  }

  .cart-item .cart-item__quantity--info,
  .cart-item__quantity--info .cart-item__quantity-wrapper,
  .cart-item__quantity--info .cart-items__info {
    padding-left: 0;
  }
}

@media screen and (max-width: 989px) {
  .cart-items .quantity-popover__info-button {
    padding-left: 0;
  }
}
.cart-item__image-container {
  border: 2px solid #000 !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: #fff !important;
}

.cart-item__image {
  object-fit: cover !important;
}

.cart-item__name {
  text-transform: uppercase !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

.quantity {
  border: 2px solid #000 !important;
  border-radius: 999px !important;
}

.cart-item__image-container {
  width: 120px !important;
  height: 90px !important;
}

.cart-item__image {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

@media screen and (max-width: 749px) {
  .cart-item__image-container {
    width: 110px !important;
    height: 82px !important;
  }

  .cart-item__name {
    font-size: 18px !important;
    line-height: 1.05 !important;
  }

  .product-option {
    font-size: 15px !important;
  }

  .cart-item__quantity-wrapper {
    justify-content: flex-start !important;
    gap: 16px !important;
  }
}

/* Desktop cart product row layout */
@media screen and (min-width: 750px) {
  .cart-items {
  table-layout: auto !important;
}

.cart-items th:first-child {
  width: auto !important;
}
@media screen and (min-width: 750px) {
  .cart-item__media {
    width: 120px !important;
    padding-right: 12px !important;
  }

  .cart-item__details {
    position: relative !important;
    left: -25px !important;
  }
}

  .cart-items__heading--quantity {
    width: 14% !important;
    padding-left: 0 !important;
    text-align: center !important;
  }

  .ff-cart-total-heading {
    width: 16% !important;
    padding-left: 0 !important;
    text-align: center !important;
  }

  .ff-cart-remove-heading {
    width: 6% !important;
    padding-left: 0 !important;
  }

  .cart-item > td + td {
    padding-left: 0 !important;
  }

  .cart-item__media {
    width: 150px !important;
    padding-right: 18px !important;
  }

  .cart-item__details {
    width: auto !important;
    max-width: none !important;
    padding-left: 0 !important;
    position: static !important;
  }

  .cart-item__details > * {
    max-width: none !important;
  }

  .cart-item__name {
    max-width: none !important;
    white-space: normal !important;
  }

  .product-option {
    max-width: 620px !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }

  .cart-item__quantity {
    width: 14% !important;
    padding-left: 0 !important;
    text-align: center !important;
  }

  .cart-item__quantity-wrapper {
    justify-content: center !important;
  }

  .cart-item__quantity-wrapper cart-remove-button {
    display: none !important;
  }

  .cart-item__totals.small-hide {
    width: 16% !important;
    padding-left: 0 !important;
    text-align: center !important;
  }

  .cart-item__remove {
    width: 6% !important;
    padding-left: 0 !important;
    text-align: right !important;
  }
}
  .ff-cart-price-wrapper {
    display: inline-flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    gap: 4px !important;
  }

  .ff-cart-price-math {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px !important;
    font-size: 14px !important;
    color: #777 !important;
  }
  

  .ff-cart-current-price,
  .ff-cart-line-total {
    color: #000 !important;
  }

  .ff-cart-line-total {
    font-size: 20px !important;
    line-height: 1.2 !important;
  }

  .ff-cart-times {
    white-space: nowrap !important;
  }

  .ff-cart-remove-link {
    min-width: 0 !important;
    min-height: 0 !important;
    width: 34px !important;
    height: 34px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .ff-cart-remove-link:before,
  .ff-cart-remove-link:after {
    display: none !important;
  }
}
.product-option dt {
  font-weight: 700 !important;
}
.ff-cart-option-name {
  font-weight: 600 !important;
  color: #000 !important;
  font-size: 0.9em !important;
}

.ff-cart-option-value {
  font-weight: 400 !important;
}
.cart-items thead th {
  font-weight: 600 !important;
  color: #000 !important;
  opacity: 1 !important;
}
/* Cart desktop position controls */
@media screen and (min-width: 750px) {
  /* Quantity pill */
  .cart-item__quantity-wrapper {
    position: relative !important;
    left: 1px !important;
    top: 0px !important;
  }

  /* Total price */
  .ff-cart-price-wrapper {
    position: relative !important;
    left: 0px !important;
    top: -2px !important;
  }

  /* Trash/remove icon */
  .cart-item__remove {
  position: static !important;
  left: auto !important;
  top: auto !important;
}
.ff-cart-remove-link {
  position: relative !important;
  left: -15px !important;
  top: 15px !important;
}
}
@media screen and (min-width: 750px) {
  /* Move QUANTITY heading */
  .cart-items__heading--quantity {
    position: relative !important;
    left: -6px !important;
  }

  /* Move TOTAL heading */
  .ff-cart-total-heading {
    position: relative !important;
    left: 1px !important;
  }
}
/* FF cart quantity loading spinner position */
.cart-item quantity-popover {
  position: relative !important;
}

/* Mobile spinner position */
@media screen and (max-width: 749px) {
  .cart-item__quantity {
    position: relative !important;
  }

  .cart-item quantity-popover .loading__spinner,
  .cart-item .cart-item__quantity .loading__spinner,
  .cart-item .loading__spinner {
    position: absolute !important;
    top: calc(50% - 0.1rem) !important;
left: calc(50% + 0.15rem) !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) !important;
    z-index: 20 !important;
  }
}
/* FF cart row vertical alignment tweaks */
@media screen and (min-width: 750px) {
  /* Move product photo down */
  .cart-item__media {
    position: relative !important;
    top: 8px !important;
  }

  /* Move product title + variant info down */
  .cart-item__details {
    position: relative !important;
    top: 8px !important;
  }

  /* Move quantity pill down */
  .cart-item__quantity-wrapper {
    position: relative !important;
    top: 8px !important;
  }

  /* Move total price down */
  .ff-cart-price-wrapper {
    position: relative !important;
    top: 6px !important;
  }

  /* Move trash icon down */
  .ff-cart-remove-link {
    position: relative !important;
    top: 8px !important;
  }
}
/* FF cart page true square product images */
.cart-item__image-container {
  width: 110px !important;
  height: 110px !important;
  aspect-ratio: 1 / 1 !important;
  border: 2px solid #000 !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: #fff !important;
}

.cart-item__image {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  display: block !important;
}

@media screen and (max-width: 749px) {
  .cart-item__image-container {
    width: 96px !important;
    height: 96px !important;
  }
}
/* FF cart row vertical centering */
@media screen and (min-width: 750px) {
  /* Make each cart row cell vertically centered */
  .cart-items tbody tr.cart-item td {
    vertical-align: middle !important;
  }

  /* Reset top offsets so the row centers naturally */
  .cart-item__media,
  .cart-item__details,
  .cart-item__quantity,
  .cart-item__totals,
  .cart-item__remove {
    top: auto !important;
    transform: none !important;
  }

  /* Product image cell */
  .cart-item__media {
    vertical-align: middle !important;
  }

  /* Product title + scent info */
  .cart-item__details {
    vertical-align: middle !important;
  }

  /* Quantity pill */
  .cart-item__quantity {
    vertical-align: middle !important;
  }

  .cart-item__quantity-wrapper {
    position: relative !important;
    top: 0 !important;
    transform: none !important;
    align-items: center !important;
  }

  /* Total price */
  .cart-item__totals {
    vertical-align: middle !important;
  }

  .ff-cart-price-wrapper {
    position: relative !important;
    top: 0 !important;
    transform: none !important;
  }

  /* Trash icon */
  .cart-item__remove {
    vertical-align: middle !important;
    position: static !important;
  }

  .ff-cart-remove-link {
    position: relative !important;
    top: 0 !important;
    transform: none !important;
  }

  /* Quantity reload/loading spinner */
  .cart-item quantity-popover {
    position: relative !important;
  }

  .cart-item quantity-popover .loading__spinner,
  .cart-item .cart-item__quantity .loading__spinner,
  .cart-item .loading__spinner {
    position: absolute !important;
    top: 61% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    z-index: 20 !important;
  }
}
/* FF raise cart item prices */
@media screen and (min-width: 750px) {
  .ff-cart-price-wrapper {
    position: relative !important;
    top: -8px !important;
  }
}
/* FF mobile cart item layout: image + details top, controls + price bottom */
@media screen and (max-width: 749px) {
  .cart-item {
    display: grid !important;
    grid-template-columns: 96px minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto !important;
    column-gap: 1.6rem !important;
    row-gap: 1.6rem !important;
    align-items: start !important;
    margin-bottom: 4rem !important;
  }

  .cart-item__media {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  .cart-item__details {
    grid-column: 2 / 4 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    align-self: center !important;
  }

  .cart-item__quantity {
  grid-column: 1 / 3 !important;
  grid-row: 2 !important;
  align-self: center !important;
  width: 100% !important;
}

.cart-item__quantity-wrapper {
  display: grid !important;
  grid-template-columns: 96px 1fr !important;
  align-items: center !important;
  justify-content: stretch !important;
  gap: 0 !important;
  width: 100% !important;
}

  .cart-item__quantity-wrapper cart-remove-button {
  grid-column: 1 !important;
  grid-row: 1 !important;
  width: 96px !important;
  margin: 0 !important;
  display: flex !important;
  justify-content: center !important;
  justify-self: center !important;
  align-items: center !important;
}

  .cart-item__quantity-wrapper .quantity {
  grid-column: 2 !important;
  grid-row: 1 !important;
  justify-self: center !important;
  width: 11.5rem !important;
  max-width: 11.5rem !important;
  min-height: 4.2rem !important;
  position: relative !important;
  left: 2rem !important;
}

.cart-item__quantity-wrapper .quantity__button {
  width: 3.5rem !important;
}

.cart-item__quantity-wrapper .quantity__input {
  width: 4rem !important;
  font-size: 1.6rem !important;
}

  .cart-item__totals.medium-hide.large-up-hide {
  grid-column: 3 !important;
  grid-row: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  text-align: right !important;
  align-self: center !important;
  position: relative !important;
  left: -1.5rem !important;
  top: 4px !important;
}

  .cart-item__totals.medium-hide.large-up-hide .price {
  font-size: 1.4rem !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  letter-spacing: 0.08em !important;
}

  .cart-item cart-remove-button .button {
    min-width: 3.8rem !important;
    min-height: 3.8rem !important;
    margin: 0 !important;
  }

  .cart-item cart-remove-button .icon-remove {
    width: 1.7rem !important;
    height: 1.7rem !important;
  }
}
/* FF mobile cart: even cart item height + consistent dividers */
@media screen and (max-width: 749px) {
  .cart-items thead tr {
    margin-bottom: 1.8rem !important;
  }

  .cart-items tbody tr.cart-item {
    position: relative !important;
    row-gap: 1rem !important;
    margin: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 2.2rem !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
  }

  .cart-items tbody tr.cart-item + tr.cart-item {
    padding-top: 2.2rem !important;
  }

  .cart-items tbody tr.cart-item:not(:last-child) {
    margin-bottom: 0 !important;
  }

  .cart-items tbody tr.cart-item:not(:last-child)::after {
    content: none !important;
    display: none !important;
  }

  .cart-item__quantity,
  .cart-item__quantity-wrapper,
  .cart-item quantity-popover {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }
  .cart-item__error {
  display: block !important;
  margin-top: 0.6rem !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
  .cart-item__details > * + * {
    margin-top: 0.15rem !important;
  }
}
/* Clickable cart item images */
.cart-item__image-link {
  display: block;
  color: inherit;
  text-decoration: none;
}

.cart-item__image-link .cart-item__image {
  display: block;
}
.ff-cart-variant-link {
  color: inherit;
  text-decoration: none;
}
/* Keep cart title and variant links only as large as the text */
.cart-item__details .ff-cart-title-link,
.cart-item__details .ff-cart-variant-link {
  display: inline !important;
  width: auto !important;
  max-width: max-content !important;
  color: inherit;
  text-decoration: none !important;
  -webkit-tap-highlight-color: transparent;
}

.cart-item__details .ff-cart-title-link:hover,
.cart-item__details .ff-cart-title-link:active,
.cart-item__details .ff-cart-title-link:visited,
.cart-item__details .ff-cart-variant-link:hover,
.cart-item__details .ff-cart-variant-link:active,
.cart-item__details .ff-cart-variant-link:visited {
  color: inherit;
  text-decoration: none !important;
}
/* Cart title and variant links only */
.cart-item__details .ff-cart-title-link,
.cart-item__details .ff-cart-variant-link {
  display: inline-block !important;
  width: auto !important;
  max-width: max-content !important;
  color: inherit !important;
  text-decoration: none !important;
  background: transparent !important;
  -webkit-tap-highlight-color: transparent;
}

.cart-item__details .ff-cart-title-link:hover,
.cart-item__details .ff-cart-title-link:active,
.cart-item__details .ff-cart-title-link:visited,
.cart-item__details .ff-cart-variant-link:hover,
.cart-item__details .ff-cart-variant-link:active,
.cart-item__details .ff-cart-variant-link:visited {
  color: inherit !important;
  text-decoration: none !important;
}
/* FF cart: hide built-in quantity error visually, keep it for accessibility */
.cart-items .cart-item__error {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
/* FF cart: low-stock text */
.ff-cart-low-stock-slot {
  width: 100%;
  margin-top: 0.5rem;
  text-align: center;
}

.ff-cart-low-stock {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  list-style: none !important;
  font-size: 1.05rem !important;
  line-height: 1.15 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
  color: rgba(0, 0, 0, 0.58) !important;
}

.ff-cart-low-stock::before,
.ff-cart-low-stock::after,
.ff-cart-low-stock::marker {
  content: none !important;
  display: none !important;
}

/* FF mobile cart: compact rows + low-stock centered under quantity pill */
@media screen and (max-width: 749px) {
  .cart-items tbody tr.cart-item {
    row-gap: 0.75rem !important;
    padding-bottom: 1.55rem !important;
  }

  .cart-items tbody tr.cart-item + tr.cart-item {
    padding-top: 1.55rem !important;
  }

  .cart-item__quantity {
    position: relative !important;
    overflow: visible !important;
  }

  .cart-item quantity-popover {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    overflow: visible !important;
  }

  .cart-item__quantity-wrapper {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
  }

  .ff-cart-low-stock-slot {
    position: absolute !important;
    top: calc(4.2rem + 0.99rem) !important;
    left: calc(96px + ((100% - 96px - 11.5rem) / 2)) !important;
    right: auto !important;
    width: 11.5rem !important;
    max-width: 11.5rem !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    text-align: center !important;
    pointer-events: none !important;
    z-index: 2 !important;
  }

  .ff-cart-low-stock {
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
    font-size: 1rem !important;
    line-height: 1.1 !important;
    letter-spacing: 0.08em !important;
  }

  .cart-item__totals.medium-hide.large-up-hide {
    align-self: center !important;
    top: 0 !important;
    transform: none !important;
  }
}
/* FF desktop cart: final clean alignment */
@media screen and (min-width: 990px) {
  .cart-items {
    --ff-cart-row-padding-y: 2rem;

    --ff-product-y: 0.25rem;
    --ff-price-y: -0.19rem;
    --ff-trash-y: 0rem;

    --ff-quantity-x: 0rem;
    --ff-price-x: 0rem;
    --ff-trash-x: 0rem;

    --ff-low-stock-y: 3.65rem;

    border-collapse: collapse !important;
    border-spacing: 0 !important;
  }

  .cart-items tbody tr.cart-item {
    height: auto !important;
  }

  .cart-items tbody tr.cart-item > td {
    height: auto !important;
    vertical-align: middle !important;
    padding-top: var(--ff-cart-row-padding-y) !important;
    padding-bottom: var(--ff-cart-row-padding-y) !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.08) !important;
    box-sizing: border-box !important;
  }

  .cart-items tbody tr.cart-item:not(:first-child) > td {
    padding-top: var(--ff-cart-row-padding-y) !important;
  }

  /* product image + product text */
  .cart-item__media,
  .cart-item__details {
    position: relative !important;
    top: auto !important;
    transform: translateY(var(--ff-product-y)) !important;
    vertical-align: middle !important;
  }

  .cart-item__media {
    text-align: left !important;
  }

  .cart-item__image-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: static !important;
    transform: none !important;
  }

  .cart-item__image-container {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 110px !important;
    height: 110px !important;
  }

  .cart-item__details {
    padding-left: 0 !important;
  }

  .cart-item__details > * {
    max-width: none !important;
  }

  .cart-item__details dl,
  .cart-item__details .product-option {
    margin-bottom: 0 !important;
  }

  /* quantity pill */
  .cart-item__quantity {
    position: relative !important;
    vertical-align: middle !important;
    text-align: center !important;
    padding-left: 0 !important;
  }

  .cart-item__quantity quantity-popover {
    position: static !important;
    display: block !important;
    width: 100% !important;
    transform: none !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
  }

  .cart-item__quantity-wrapper {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    transform: translateX(var(--ff-quantity-x)) !important;

    display: flex !important;
    justify-content: center !important;
    align-items: center !important;

    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;

    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
  }

  .cart-item__quantity-wrapper .quantity {
    margin: 0 auto !important;
  }

  .cart-item__quantity-wrapper cart-remove-button {
    display: none !important;
  }

  /* ONLY 1 LEFT text */
  .ff-cart-low-stock-slot {
    position: absolute !important;
    top: calc(50% + var(--ff-low-stock-y)) !important;
    left: 50% !important;
    transform: translateX(-50%) !important;

    width: 12rem !important;
    max-width: 12rem !important;

    margin: 0 !important;
    padding: 0 !important;

    text-align: center !important;
    pointer-events: none !important;
  }

  .ff-cart-low-stock {
    width: 100% !important;
    text-align: center !important;
    margin: 0 !important;
  }

  /* quantity loading spinner */
  .cart-item__quantity .loading__spinner,
  .cart-item__quantity quantity-popover .loading__spinner,
  .cart-item__quantity-wrapper .loading__spinner {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 30 !important;
  }

  /* price column */
  .cart-item__totals.small-hide {
    position: relative !important;
    vertical-align: middle !important;
    text-align: center !important;
    padding-left: 0 !important;
  }

  .cart-item__totals.small-hide .cart-item__price-wrapper {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  .cart-item__totals.small-hide .ff-cart-price-wrapper {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;

    transform: translate(var(--ff-price-x), var(--ff-price-y)) !important;

    display: inline-flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;

    width: max-content !important;
    min-width: max-content !important;
    max-width: none !important;

    margin: 0 auto !important;
    text-align: center !important;
  }

  .ff-cart-price-wrapper .ff-cart-price-math {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;

    width: max-content !important;
    max-width: none !important;

    white-space: nowrap !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  .ff-cart-price-wrapper .ff-cart-line-total {
    display: block !important;
    width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  /* price loading spinner */
  .cart-item__totals.small-hide .loading__spinner {
    position: absolute !important;
    top: calc(50% + var(--ff-price-y)) !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translate(-50%, -50%) !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 30 !important;
  }

  /* trash icon */
  .cart-item__remove {
    position: relative !important;
    vertical-align: middle !important;
    text-align: center !important;
    padding-left: 0 !important;
  }

  .cart-item__remove cart-remove-button {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 !important;
  }

  .cart-item__remove .ff-cart-remove-link {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;

    transform: translate(var(--ff-trash-x), var(--ff-trash-y)) !important;

    display: inline-flex !important;
    justify-content: center !important;
    align-items: center !important;

    width: 34px !important;
    height: 34px !important;
    min-width: 0 !important;
    min-height: 0 !important;

    margin: 0 auto !important;
    padding: 0 !important;

    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  .cart-item__remove .ff-cart-remove-link::before,
  .cart-item__remove .ff-cart-remove-link::after {
    display: none !important;
    content: none !important;
  }
}
/* FF desktop cart: center right-side order summary + notes */
@media screen and (min-width: 990px) {
  .cart__footer,
  .cart__blocks,
  .cart__dynamic-checkout-buttons,
  .cart__ctas {
    max-width: none !important;
  }

  .cart__footer .cart__blocks {
    width: 28rem !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .cart__footer .totals,
  .cart__footer .cart__ctas,
  .cart__footer .tax-note,
  .cart__footer .cart-note {
    width: 100% !important;
    text-align: center !important;
  }

  .cart-note {
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .cart-note__label,
  .cart-note label {
    text-align: center !important;
    display: block !important;
  }

  .cart-note textarea,
  .cart-note__input {
    width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}
/* FF desktop cart: move order summary + order notes right */
@media screen and (min-width: 990px) {
  .cart__blocks,
  cart-note,
  .cart__note,
  .cart-note {
    transform: translateX(1.2rem) !important;
  }
}
/* FF cart page: let long variant names wrap neatly */
.cart-item__details {
  min-width: 0 !important;
}

.cart-item__details dl {
  max-width: 36rem !important;
}

.cart-item__details .product-option {
  display: block !important;
  max-width: 36rem !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

.cart-item__details .ff-cart-variant-link {
  display: block !important;
  width: auto !important;
  max-width: 100% !important;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: clip !important;
  line-height: 1.35 !important;
}

.cart-item__details .ff-cart-option-name,
.cart-item__details .ff-cart-option-value {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}