/** Shopify CDN: Minification failed

Line 246:13 Unexpected "{"
Line 246:22 Expected ":"
Line 279:13 Unexpected "{"
Line 279:22 Expected ":"

**/
.cart {
  position: relative;
  display: block;
}

.cart__empty-text,
.is-empty .cart__contents,
cart-items.is-empty .title-wrapper-with-link,
.is-empty .cart__footer {
  display: none;
}

.is-empty .cart__empty-text,
.is-empty .cart__warnings {
  display: block;
}

.cart__warnings {
  display: none;
  text-align: center;
  padding: 3rem 0 1rem;
}

.cart__empty-text {
  margin: 4.5rem 0 2rem;
}

.cart__contents > * + * {
  margin-top: 0;
}

.cart__login-title {
  margin: 5.5rem 0 0.5rem;
}

.cart__login-paragraph {
  margin-top: 0.8rem;
}

.cart__login-paragraph a {
  font-size: inherit;
}

@media screen and (min-width: 990px) {
  .cart__warnings {
    padding: 7rem 0;
  }

  .cart__empty-text {
    margin: 0 0 3rem;
  }
}

cart-items {
  display: block;
}

.cart__items {
  position: relative;
  padding-bottom: 3rem;
  border-bottom: 0.1rem solid rgba(var(--color-foreground), 0.08);
}

.cart__items--disabled {
  pointer-events: none;
}

.cart__footer-wrapper:last-child .cart__footer {
  padding-bottom: 5rem;
}

.cart__footer > div:only-child {
  margin-left: auto;
}

.cart__footer > * + * {
  margin-top: 6.5rem;
}

.cart__footer .discounts {
  margin-bottom: 1rem;
}

.cart__note {
  height: fit-content;
  top: 2.5rem;
}

.cart__note label {
  display: flex;
  align-items: flex-end;
  position: absolute;
  line-height: 1;
  height: 1.8rem;
  top: -3rem;
  color: rgba(var(--color-foreground), 0.75);
}

.cart__note .field__input {
  height: 100%;
  position: relative;
  border-radius: var(--inputs-radius);
  padding: 1rem 2rem;
}

.cart__note .text-area {
  resize: vertical;
}

.cart__note:after,
.cart__note:hover.cart__note:after,
.cart__note:before,
.cart__note:hover.cart__note:before,
.cart__note .field__input:focus,
.cart__note .field__input {
  border-bottom-right-radius: 0;
}

@media screen and (min-width: 750px) {
  .cart__items {
    grid-column-start: 1;
    grid-column-end: 3;
    padding-bottom: 4rem;
  }

  .cart__contents > * + * {
    margin-top: 0;
  }

  .cart__items + .cart__footer {
    grid-column: 2;
  }

  .cart__footer {
    display: flex;
    justify-content: space-between;
    border: 0;
  }

  .cart__footer-wrapper:last-child {
    padding-top: 0;
  }

  .cart__footer > * {
    width: 35rem;
  }

  .cart__footer > * + * {
    margin-left: 4rem;
    margin-top: 0;
  }
}

.cart__ctas button {
  width: 100%;
}

.cart__ctas > * + * {
  margin-top: 1rem;
}

.cart__update-button {
  margin-bottom: 1rem;
}

.cart__dynamic-checkout-buttons {
  max-width: 36rem;
  margin: 0 auto;
}

.cart__dynamic-checkout-buttons:has(.dynamic-checkout__content:empty) {
  margin: 0;
}

.cart__blocks > * + * {
  margin-top: 1rem;
}

.cart-note__label {
  display: inline-block;
  margin-bottom: 1rem;
  line-height: calc(1 + 1 / var(--font-body-scale));
}

.tax-note {
  margin: 2.2rem 0 1.6rem auto;
  text-align: center;
  display: block;
}

.cart__checkout-button {
  max-width: 36rem;
}

.cart__ctas {
  text-align: center;
}

@media screen and (min-width: 750px) {
  .cart-note {
    max-width: 35rem;
  }

  .cart__update-button {
    margin-bottom: 0;
    margin-right: 0.8rem;
  }

  .tax-note {
    margin-bottom: 2.2rem;
    text-align: right;
  }

  [data-shopify-buttoncontainer] {
    justify-content: flex-end;
  }

  .cart__ctas {
    display: flex;
    gap: 1rem;
  }
}

#main-cart-header + cart-items {
  margin-top: 0 !important;
}

#main-cart-header .title-wrapper-with-link {
  margin-bottom: 0 !important;
  margin-top: 0 !important;
}

/*    WHOLE PAGE    */

/* DESKTOP: 60/35 Split */
@media screen and (min-width: 990px) {
  /* This is the wrapper around everything in main-cart.liquid */
  #MainCart-{{ section.id }}.page-width {
    max-width: 1400px !important;
    width: 92% !important;
    margin: 0 auto !important;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .cart-layout-grid {
    display: flex !important;
    justify-content: space-between;
    align-items: start;
    column-gap: 5%; /* Adds a nice gap between the basket and the summary */
  }

  /* Your 60% Column (Items) */
  .cart-items-column {
    flex: 0 0 55% !important;
    max-width: 55% !important;
  }

  /* Your 35% Column (Footer/Summary) */
  .cart-footer-column {
    flex: 0 0 40% !important;
    max-width: 40% !important;
    position: sticky;
    top: 5rem; /* <--- ADD THIS (adjust pixels/rem to match your header height) */
    z-index: 2; /* Keeps it cleanly above other scrolling content */
  }
}

/* MOBILE: Stacked */
@media screen and (max-width: 989px) {
  #MainCart-{{ section.id }}.page-width {
    padding-left: 2rem;
    padding-right: 2rem;
    max-width: 100% !important;
  }

  .cart-layout-grid {
    display: flex;
    flex-direction: column;
    gap: 0;
  }
}

/* Neutralize internal padding of snippets so they fill your 60% and 35% columns */
.cart-items-column .page-width,
.cart-footer-column .page-width {
  padding-left: 0 !important;
  padding-right: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  margin: 0 !important;
}

/*    TITLE    */

/* CART HEADER STYLING */

.cart-header-wrapper {
  padding-bottom: 20px;
}

.cart-header-wrapper .title {
  margin: 0;
  text-align: left; /* Change to 'center' if you want it centered across the 92% */
  font-family: var(--font-heading-family);
}

/* If you want the header to span across BOTH columns (the full 92%) */
@media screen and (min-width: 990px) {
  .cart-header-wrapper {
    width: 100%;
  }
}

/*    CART ITEMS SECTION    */

/* NO hover effects from cart item titles */
.cart-item__name:hover {
  text-decoration: none !important;
  color: currentColor !important; /* Keeps the color the same as the non-hover state */
  opacity: 1 !important; /* Prevents any fading effects */
}

/* Disable text selection/highlighting on titles */
.cart-item__name {
  user-select: none;
  -webkit-user-select: none; /* For Safari */
  -moz-user-select: none;    /* For Firefox */
  cursor: default;           /* Changes pointer back to standard arrow */
}

/* title NOT clickable at all */
.cart-item__name {
  pointer-events: none;
}

.cart__items {
  border-bottom: none !important;
}

.cart-items td {
  padding: 0 !important;
}

/* 1. Hide the grid columns and header when empty */
.is-empty .cart-header-wrapper,
.is-empty .cart-footer-column {
  display: none !important;
}

/* 2. Collapse the grid so the items column takes up 100% */
@media screen and (min-width: 990px) {
  .is-empty .cart-layout-grid {
    display: block !important; /* Disables the flex/grid behavior */
  }

  .is-empty .cart-items-column {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }
}

/* 3. Center the empty state content */
.is-empty .cart-empty-full-width {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  min-height: 400px; /* Gives it some breathing room */
  text-align: center;
}