.storefront-cart-drawer .storefront-cart-item-card {
  display: grid;
  gap: 8px;
  height: auto;
  min-height: 0;
  background: #fff;
  border: 1px solid #efeeea;
  border-radius: 12px;
  box-shadow: 0 1px 2px rgb(33 25 19 / 8%);
  padding: 12px;
}

.storefront-cart-drawer .storefront-cart-item-main {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}

.storefront-cart-drawer .storefront-cart-item-media {
  width: 92px;
  height: 106px;
  border-radius: 8px;
  overflow: hidden;
  background: linear-gradient(180deg, #efe9b7 0%, #d8ddb0 100%);
}

.storefront-cart-drawer .storefront-cart-item-image-fallback,
.storefront-cart-drawer .storefront-cart-cross-sell-fallback {
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, #dce6ec 0%, #bed2db 100%);
}

.storefront-cart-drawer .storefront-cart-item-copy {
  position: relative;
  min-width: 0;
  display: grid;
  align-content: start;
  justify-content: start;
  gap: 6px;
}

.storefront-cart-drawer .storefront-cart-item-title-row {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 16px;
  gap: 12px;
  align-items: start;
}

.storefront-cart-drawer .storefront-cart-item-meta-group,
.storefront-cart-drawer .storefront-cart-item-price-row,
.storefront-cart-drawer .storefront-cart-item-secondary-meta,
.storefront-cart-drawer .storefront-cart-item-status-badge,
.storefront-cart-drawer .storefront-cart-item-delivery-copy {
  margin-right: 108px;
}

.storefront-cart-drawer .storefront-cart-item-variant-pill {
  min-height: 24px;
  border-radius: 13px;
  background: #efeeea;
  padding: 4px 8px;
}

.storefront-cart-drawer .storefront-cart-item-controls {
  position: absolute;
  right: 0;
  top: 40px;
  display: inline-flex;
  align-items: center;
  justify-self: auto;
  min-height: 34px;
  border: 1px solid #dbd9d2;
  border-radius: 40px;
  box-shadow: 0 1px 2px rgb(33 25 19 / 8%);
  background: #fff;
  padding: 0 8px;
  gap: 6px;
}

.storefront-cart-drawer .storefront-cart-item-checkout-warning {
  margin: 0;
}

.storefront-cart-drawer .storefront-cart-item-gift-wrap {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
}

.storefront-cart-drawer .storefront-cart-item-gift-wrap-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  background: transparent;
  color: inherit;
  font-size: 12px;
  line-height: 1;
  margin-left: 2px;
  padding-left: 10px;
  border-left: 1px solid #c8b5c1;
  cursor: pointer;
}

.storefront-cart-drawer .storefront-cart-item-gift-wrap-remove:disabled {
  cursor: default;
  opacity: 0.6;
}

.storefront-cart-drawer .storefront-cart-item-card.is-free-gift {
  background:
    linear-gradient(90deg, rgb(255 241 208) 0%, rgb(255 241 208 / 0%) 100%),
    #fff;
}

.storefront-cart-drawer .storefront-cart-item-card.is-free-gift .storefront-cart-item-main {
  align-items: stretch;
}

.storefront-cart-drawer .storefront-cart-item-card.is-free-gift .storefront-cart-item-copy {
  padding: 6px 0;
}

.storefront-cart-drawer .storefront-cart-shipping-card,
.storefront-cart-drawer .storefront-cart-wallet-card,
.storefront-cart-drawer .storefront-cart-gst-card,
.storefront-cart-drawer .storefront-cart-bill-breakdown {
  background: #fff;
  border: 1px solid #efeeea;
  border-radius: 12px;
  box-shadow: 0 1px 2px rgb(33 25 19 / 8%);
  padding: 12px;
}

.storefront-cart-drawer .storefront-cart-wallet-icon svg,
.storefront-cart-drawer .storefront-cart-shipping-icon svg,
.storefront-cart-drawer .storefront-cart-icon-mask {
  width: 20px;
  height: 20px;
}

.storefront-cart-drawer .storefront-cart-icon-mask {
  display: block;
  background: currentColor;
  mask-position: center;
  mask-repeat: no-repeat;
  mask-size: 20px 20px;
  -webkit-mask-position: center;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: 20px 20px;
}

.storefront-cart-drawer .storefront-cart-icon-mask.is-delivery {
  mask-image: url("https://www.figma.com/api/mcp/asset/0a3489a2-3423-477c-88fa-c66936f5d37d");
  -webkit-mask-image: url("https://www.figma.com/api/mcp/asset/0a3489a2-3423-477c-88fa-c66936f5d37d");
}

.storefront-cart-drawer .storefront-cart-icon-mask.is-wallet {
  mask-image: url("https://www.figma.com/api/mcp/asset/40a5d1a3-eaf3-4825-a5c4-34cc0950b4e7");
  -webkit-mask-image: url("https://www.figma.com/api/mcp/asset/40a5d1a3-eaf3-4825-a5c4-34cc0950b4e7");
}

.storefront-cart-drawer .storefront-cart-gst-toggle {
  width: 100%;
  border: 0;
  background: transparent;
  padding: 0;
  text-align: left;
  display: flex;
  align-items: flex-start;
  gap: 8px;
}

.storefront-cart-drawer .storefront-cart-gst-form {
  margin-top: 12px;
}

.storefront-cart-drawer .storefront-cart-cross-sell {
  display: grid;
  gap: 12px;
  border: 0;
  background: transparent;
  padding: 0;
}

.storefront-cart-drawer .storefront-cart-tabs {
  display: flex;
  gap: 8px;
  overflow-x: auto;
}

.storefront-cart-drawer .storefront-cart-tabs button {
  flex: 0 0 auto;
}

.storefront-cart-drawer .storefront-cart-cross-sell-grid {
  display: grid;
  gap: 12px;
}

.storefront-cart-drawer .storefront-cart-cross-sell-card {
  display: grid;
  gap: 4px;
}

.storefront-cart-drawer .storefront-cart-cross-sell-thumb {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  aspect-ratio: 92 / 106;
  background: linear-gradient(180deg, #dce6ec 0%, #bed2db 100%);
}

.storefront-cart-drawer .storefront-cart-cross-sell-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-card {
  border: 0;
  border-bottom: 1px solid #efeeea;
  border-radius: 0;
  box-shadow: none;
  padding: 12px 16px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-card.is-free-gift {
  margin-top: 8px;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-copy {
  padding-top: 2px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-cross-sell-grid {
  grid-auto-flow: column;
  grid-auto-columns: 92px;
  overflow-x: auto;
}

.storefront-cart-drawer.is-desktop .storefront-cart-item-card {
  padding: 12px 16px;
}

.storefront-cart-drawer.is-desktop .storefront-cart-item-copy {
  padding-top: 0;
  margin-right: 0;
}

.storefront-cart-drawer.is-desktop .storefront-cart-item-meta-group,
.storefront-cart-drawer.is-desktop .storefront-cart-item-price-row,
.storefront-cart-drawer.is-desktop .storefront-cart-item-secondary-meta,
.storefront-cart-drawer.is-desktop .storefront-cart-item-status-badge,
.storefront-cart-drawer.is-desktop .storefront-cart-item-delivery-copy {
  margin-right: 120px;
}

.storefront-cart-drawer.is-desktop .storefront-cart-item-controls {
  top: 44px;
}

.storefront-cart-drawer.is-desktop .storefront-cart-cross-sell-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.storefront-cart-drawer .storefront-cart-items {
  gap: 12px;
}

.storefront-cart-drawer .storefront-cart-item-card {
  background: var(--sf-color-surface);
  border: 1px solid #efeeea;
  border-radius: 12px;
  box-shadow: 0 1px 2px rgb(33 25 19 / 8%);
  padding: 12px;
  display: grid;
  gap: 8px;
}

.storefront-cart-drawer .storefront-cart-item-main {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 12px;
}

.storefront-cart-drawer .storefront-cart-item-copy {
  min-width: 0;
  display: grid;
  gap: 6px;
  align-content: start;
}

.storefront-cart-drawer .storefront-cart-item-title {
  color: #211913;
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
}

.storefront-cart-drawer .storefront-cart-item-title-row {
  gap: 12px;
  align-items: start;
}

.storefront-cart-drawer .storefront-cart-item-title-row button {
  width: 16px;
  height: 16px;
  color: #938e8b;
  font-size: 18px;
  line-height: 1;
}

.storefront-cart-drawer .storefront-cart-item-meta-group {
  display: grid;
  gap: 6px;
}

.storefront-cart-drawer .storefront-cart-item-variant-row {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.storefront-cart-drawer .storefront-cart-item-low-stock,
.storefront-cart-drawer .storefront-cart-item-variant-help {
  color: #f2694e;
  font-size: 10px;
  line-height: 14px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-item-low-stock {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.storefront-cart-drawer .storefront-cart-item-variant-help {
  margin: 0;
  color: #27ad86;
}

.storefront-cart-drawer .storefront-cart-item-price-row p {
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-item-compare-price {
  color: #938e8b;
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
}

.storefront-cart-drawer .storefront-cart-item-return-copy,
.storefront-cart-drawer .storefront-cart-item-delivery-copy {
  color: #666262;
  font-size: 12px;
  line-height: 16px;
  font-weight: 400;
}

.storefront-cart-drawer .storefront-cart-item-status-badge {
  width: fit-content;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  border-radius: 14px;
  padding: 0 8px 0 6px;
  min-height: 20px;
  font-size: 10px;
  line-height: 14px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-item-status-badge.is-error {
  background: #fcebe9;
  color: #dd381f;
}

.storefront-cart-drawer .storefront-cart-item-status-badge.is-success {
  background: #e9f7f3;
  color: #27ad86;
}

.storefront-cart-drawer .storefront-cart-item-controls {
  justify-self: end;
  min-height: 34px;
  border: 1px solid #dbd9d2;
  border-radius: 40px;
  box-shadow: 0 1px 2px rgb(33 25 19 / 8%);
  background: #fff;
  padding: 0 8px;
  gap: 6px;
}

.storefront-cart-drawer .storefront-cart-item-controls button {
  width: 24px;
  height: 24px;
  background: transparent;
}

.storefront-cart-drawer .storefront-cart-item-checkout-warning {
  margin: 0;
  color: #dd381f;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-item-checkout-warning::before {
  content: "•";
  margin-right: 4px;
}

.storefront-cart-drawer .storefront-cart-item-gift-wrap {
  width: fit-content;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: 10px;
  background: #f1eaed;
  color: #772b4d;
  min-height: 22px;
  padding: 2px 8px;
}

.storefront-cart-drawer .storefront-cart-item-gift-wrap-copy {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 10px;
  line-height: 14px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-item-gift-wrap-copy .storefront-cart-item-inline-icon {
  width: 12px;
  height: 12px;
  color: #772b4d;
}

.storefront-cart-drawer .storefront-cart-item-gift-wrap button {
  border: 0;
  background: transparent;
  color: inherit;
  padding: 0;
  font-size: 12px;
  line-height: 1;
}

.storefront-cart-drawer .storefront-cart-item-card.is-free-gift {
  background:
    linear-gradient(90deg, rgb(255 241 208 / 100%) 0%, rgb(255 241 208 / 0%) 100%),
    #fff;
}

.storefront-cart-drawer .storefront-cart-item-card.is-free-gift .storefront-cart-item-copy {
  align-content: space-between;
  padding: 6px 0;
}

.storefront-cart-drawer .storefront-cart-item-copy-stack {
  display: grid;
  gap: 6px;
}

.storefront-cart-drawer .storefront-cart-item-gift-badge {
  width: fit-content;
  min-height: 24px;
  border-radius: 13px;
  background: #ffe3a2;
  color: #211913;
  padding: 4px 8px;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-item-gift-label {
  margin: 0;
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-panel,
.storefront-cart-drawer .storefront-cart-shipping-card,
.storefront-cart-drawer .storefront-cart-wallet-card,
.storefront-cart-drawer .storefront-cart-gst-card,
.storefront-cart-drawer .storefront-cart-bill-breakdown {
  border: 1px solid #efeeea;
  border-radius: 12px;
  box-shadow: 0 1px 2px rgb(33 25 19 / 8%);
  background: #fff;
  padding: 12px;
}

.storefront-cart-drawer .storefront-cart-card-eyebrow {
  color: #938e8b;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-shipping-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 8px;
  align-items: start;
}

.storefront-cart-drawer .storefront-cart-shipping-icon,
.storefront-cart-drawer .storefront-cart-wallet-icon {
  width: 20px;
  height: 20px;
  color: #27ad86;
}

.storefront-cart-drawer .storefront-cart-shipping-copy {
  display: grid;
  gap: 2px;
}

.storefront-cart-drawer .storefront-cart-delivery-section.is-applied .storefront-cart-shipping-copy {
  gap: 0;
}

.storefront-cart-drawer .storefront-cart-shipping-head {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}

.storefront-cart-drawer .storefront-cart-shipping-title,
.storefront-cart-drawer .storefront-cart-shipping-price {
  margin: 0;
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-shipping-subtitle {
  margin: 0;
  color: #dd381f;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-wallet-row {
  grid-template-columns: auto minmax(0, 1fr) auto;
  padding-top: 12px;
  gap: 8px;
}

.storefront-cart-drawer .storefront-cart-wallet-row.is-logged-out {
  align-items: center;
}

.storefront-cart-drawer .storefront-cart-wallet-toggle {
  border: 0;
  background: transparent;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.storefront-cart-drawer .storefront-cart-wallet-toggle:disabled {
  cursor: default;
  opacity: 0.6;
}

.storefront-cart-drawer .storefront-cart-checkbox {
  width: 20px;
  height: 20px;
  border: 1px solid #dbd9d2;
  border-radius: 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  flex-shrink: 0;
}

.storefront-cart-drawer .storefront-cart-checkbox.is-checked {
  border-color: #4f76fe;
  background: #4f76fe;
}

.storefront-cart-drawer .storefront-cart-checkbox svg {
  width: 12px;
  height: 12px;
}

.storefront-cart-drawer .storefront-cart-wallet-title {
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-wallet-subtitle {
  color: #666262;
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
}

.storefront-cart-drawer .storefront-cart-wallet-login {
  min-width: 88px;
  min-height: 40px;
  padding: 0 18px;
  border: 1px solid #8f8a85;
  border-radius: 12px;
  background: #fff;
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 600;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.storefront-cart-drawer .storefront-cart-tabs button {
  min-height: 24px;
  padding: 4px 8px;
  border-radius: 8px;
  border: 1px solid #dbd9d2;
  box-shadow: 0 1px 2px rgb(33 25 19 / 8%);
  background: #fff;
  color: #211913;
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
}

.storefront-cart-drawer .storefront-cart-tabs button.is-active {
  background: #211913;
  border-color: #211913;
  color: #fff;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-cross-sell {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
}

.storefront-cart-drawer .storefront-cart-cross-sell-grid {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 92px;
  gap: 12px;
  overflow-x: auto;
}

.storefront-cart-drawer .storefront-cart-cross-sell-card {
  display: grid;
  gap: 4px;
  background: transparent;
  border-radius: 0;
}

.storefront-cart-drawer .storefront-cart-cross-sell-thumb {
  position: relative;
  aspect-ratio: 92 / 106;
  border-radius: 8px;
  overflow: hidden;
}

.storefront-cart-drawer .storefront-cart-cross-sell-add {
  position: absolute;
  right: 6px;
  bottom: 6px;
  border: 0;
  border-radius: 6px;
  background: #fff;
  box-shadow: 0 1px 2px rgb(33 25 19 / 25%);
  min-height: 24px;
  padding: 4px 8px;
  color: #211913;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-cross-sell-price-row {
  gap: 4px;
}

.storefront-cart-drawer .storefront-cart-cross-sell-price-row p {
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-cross-sell-price-row span {
  color: #938e8b;
  font-size: 10px;
  line-height: 12px;
  font-weight: 300;
  text-decoration: line-through;
}

.storefront-cart-drawer .storefront-cart-gst-toggle {
  display: flex;
  gap: 8px;
  align-items: start;
  margin: 0;
  cursor: pointer;
}

.storefront-cart-drawer .storefront-cart-gst-toggle input {
  width: 20px;
  height: 20px;
  margin: 0;
  accent-color: #4f76fe;
}

.storefront-cart-drawer .storefront-cart-gst-copy {
  display: grid;
  gap: 2px;
}

.storefront-cart-drawer .storefront-cart-gst-copy span:first-child {
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-gst-copy span:last-child {
  color: #403b3b;
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
}

.storefront-cart-drawer .storefront-cart-gst-form {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

.storefront-cart-drawer .storefront-cart-gst-form label {
  display: grid;
  gap: 2px;
}

.storefront-cart-drawer .storefront-cart-gst-form label span {
  color: #403b3b;
  opacity: 0.8;
  font-size: 10px;
  line-height: 14px;
  font-weight: 300;
}

.storefront-cart-drawer .storefront-cart-gst-form input {
  border: 1px solid #dbd9d2;
  border-radius: 8px;
  background: #fff;
  min-height: 44px;
  padding: 12px 16px;
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 300;
}

.storefront-cart-drawer .storefront-cart-gst-form input::placeholder {
  color: #938e8b;
}

.storefront-cart-drawer .storefront-cart-bill-breakdown {
  display: grid;
  gap: 8px;
}

.storefront-cart-drawer .storefront-cart-bill-breakdown > div {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  color: #211913;
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
}

.storefront-cart-drawer .storefront-cart-bill-copy {
  display: grid;
  gap: 2px;
}

.storefront-cart-drawer .storefront-cart-bill-copy small {
  color: #938e8b;
  font-size: 10px;
  line-height: 14px;
  font-weight: 300;
}

.storefront-cart-drawer .storefront-cart-bill-breakdown .is-positive {
  color: #27ad86;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-bill-strike {
  color: #938e8b;
  text-decoration: line-through;
  margin-right: 4px;
}

.storefront-cart-drawer .storefront-cart-bill-divider-top {
  border-top: 1px solid #efeeea;
  padding-top: 8px;
}

.storefront-cart-drawer .storefront-cart-payable-row {
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 700;
  border-top: 1px solid #efeeea;
  padding-top: 8px;
}

.storefront-cart-drawer .storefront-cart-payable-row p {
  font-weight: 500 !important;
  font-size: 14px;
}

.storefront-cart-drawer .storefront-cart-payable-label {
  display: inline-flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
}

.storefront-cart-drawer .storefront-cart-payable-note {
  color: #938e8b;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-total-savings {
  background: #e9f7f3;
  border-radius: 6px;
  color: #145743;
  padding: 2px 8px;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-drawer.is-mobile .storefront-cart-items,
.storefront-cart-drawer.is-mobile .storefront-cart-support-zone {
  margin: 0 16px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-card {
  border-radius: 12px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-copy {
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    "title title"
    "meta controls"
    "price controls"
    "secondary controls"
    "badge controls";
  column-gap: 12px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-title-row {
  grid-area: title;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-meta-group {
  grid-area: meta;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-price-row {
  grid-area: price;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-secondary-meta {
  grid-area: secondary;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-status-badge {
  grid-area: badge;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-controls {
  grid-area: controls;
  align-self: center;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-card.is-free-gift {
  margin-top: 8px;
}

@media (min-width: 1024px) {
  .storefront-cart-drawer.is-desktop .storefront-cart-items,
  .storefront-cart-drawer.is-desktop .storefront-cart-support-zone {
    margin: 0;
  }

  .storefront-cart-drawer.is-desktop .storefront-cart-item-card {
    gap: 12px;
  }

  .storefront-cart-drawer.is-desktop .storefront-cart-item-main {
    grid-template-columns: 92px minmax(0, 1fr);
  }

  .storefront-cart-drawer.is-desktop .storefront-cart-item-copy {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
      "title controls"
      "meta controls"
      "price controls"
      "secondary controls"
      "badge controls";
    align-items: start;
  }

  .storefront-cart-drawer.is-desktop .storefront-cart-item-title-row {
    grid-area: title;
  }

  .storefront-cart-drawer.is-desktop .storefront-cart-item-meta-group {
    grid-area: meta;
  }

  .storefront-cart-drawer.is-desktop .storefront-cart-item-price-row {
    grid-area: price;
  }

  .storefront-cart-drawer.is-desktop .storefront-cart-item-secondary-meta {
    grid-area: secondary;
  }

  .storefront-cart-drawer.is-desktop .storefront-cart-item-status-badge {
    grid-area: badge;
  }

  .storefront-cart-drawer.is-desktop .storefront-cart-item-controls {
    grid-area: controls;
    align-self: center;
  }

  .storefront-cart-drawer.is-desktop .storefront-cart-item-card.is-free-gift {
    padding: 12px;
  }

  .storefront-cart-drawer.is-desktop .storefront-cart-cross-sell-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    grid-auto-flow: row;
    grid-auto-columns: unset;
    overflow: visible;
  }

  .storefront-cart-drawer.is-desktop .storefront-cart-cross-sell-card {
    background: transparent;
  }
}

.storefront-cart-drawer .storefront-cart-item-group {
  display: grid;
  gap: 10px;
}

.storefront-cart-drawer .storefront-cart-free-gift-items + .storefront-cart-paid-items {
  margin-top: 6px;
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser {
  display: grid;
  gap: 8px;
  border: 1px solid #efeeea;
  border-radius: 12px;
  background: #fff;
  padding: 10px 12px;
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser-main {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser-media {
  width: 72px;
  height: 72px;
  border-radius: 8px;
  overflow: hidden;
  background: linear-gradient(180deg, #dce6ec 0%, #bed2db 100%);
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser-copy {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser-copy p,
.storefront-cart-drawer .storefront-cart-free-gift-teaser-copy small {
  margin: 0;
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser-copy p {
  color: #211913;
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser-copy small {
  color: #211913;
  font-size: 22px;
  line-height: 30px;
  font-weight: 500;
  letter-spacing: -0.04em;
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser-badge {
  width: fit-content;
  min-height: 24px;
  border-radius: 13px;
  background: #ffe3a2;
  color: #211913;
  padding: 4px 8px;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser-unlock-copy {
  margin: 0;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: #211913;
  font-size: 22px;
  line-height: 30px;
  font-weight: 500;
  letter-spacing: -0.04em;
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser-unlock-copy span {
  width: 16px;
  height: 16px;
  display: inline-flex;
  color: #211913;
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser-unlock-copy span svg {
  width: 100%;
  height: 100%;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-group {
  gap: 0;
}

.storefront-cart-drawer.is-mobile .storefront-cart-free-gift-items + .storefront-cart-paid-items {
  margin-top: 10px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-free-gift-teaser-copy small,
.storefront-cart-drawer.is-mobile .storefront-cart-free-gift-teaser-unlock-copy {
  font-size: 16px;
  line-height: 22px;
}

.storefront-cart-drawer-backdrop {
  position: fixed;
  inset: 0;
  z-index: 90;
  background: color-mix(in srgb, var(--sf-color-surface) 92%, #000 8%);
}

.storefront-cart-drawer-shell {
  width: 100%;
  height: 100%;
  max-width: 100%;
  overflow-x: hidden;
  animation: storefront-cart-drawer-enter 220ms ease-out;
}

.storefront-cart-drawer {
  height: 100%;
  max-width: 100%;
  background: var(--sf-color-surface-muted);
  color: var(--sf-color-text-primary);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  position: relative;
  overflow: hidden;
}

.storefront-cart-drawer-header {
  min-height: 56px;
  padding: 8px 16px;
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  border-bottom: 1px solid var(--sf-color-border-subtle);
  background: var(--sf-color-surface);
  position: sticky;
  top: 0;
  z-index: 6;
}

.storefront-cart-drawer-close {
  width: 24px;
  height: 24px;
  border: 0;
  background: transparent;
  color: inherit;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 20px;
}

.storefront-cart-drawer-title {
  margin: 0;
  font-size: 18px;
  line-height: 24px;
  font-weight: 500;
}

.storefront-cart-drawer-body {
  min-height: 0;
  overflow-y: auto;
  overflow-x: hidden;
  display: grid;
  align-content: start;
  gap: 12px;
}

.storefront-cart-drawer.is-sheet-open .storefront-cart-drawer-body {
  overflow: hidden;
}

.storefront-cart-drawer .storefront-cart-items,
.storefront-cart-drawer .storefront-cart-support-zone,
.storefront-cart-drawer .storefront-mobile-cart-post-items,
.storefront-cart-drawer .storefront-cart-drawer-footer {
  min-width: 0;
  max-width: 100%;
}

.storefront-cart-drawer .storefront-cart-payment-row > * {
  min-width: 0;
}

.storefront-cart-status,
.storefront-cart-error {
  margin: 0;
  padding: 14px;
  border-radius: 12px;
  background: var(--sf-color-surface);
}

.storefront-cart-error {
  color: #b03a2e;
}

.storefront-cart-panel,
.storefront-cart-wallet-card,
.storefront-cart-gst-card,
.storefront-cart-bill-breakdown {
  background: var(--sf-color-surface);
  border: 1px solid var(--sf-color-border-subtle);
  border-radius: 12px;
  padding: 14px;
}

.storefront-cart-empty-layout {
  display: grid;
  align-content: start;
  gap: 16px;
}

.storefront-cart-empty-state {
  display: grid;
  justify-items: center;
  gap: 18px;
  width: 100%;
  max-width: 328px;
  margin: 0 auto;
  padding: 4px 0 0;
  background: transparent;
  border: 0;
  border-radius: 0;
}

.storefront-cart-empty-image-frame,
.storefront-cart-empty-illustration {
  --sf-color-cart-empty-illustration-outline: #6e7289;
  --sf-color-cart-empty-illustration-muted: #c4c7d3;
  --sf-color-cart-empty-illustration-surface: #f8f8f8;
  --sf-color-cart-empty-illustration-accent: #d18b13;
  width: 128px;
  height: 128px;
}

.storefront-cart-empty-image {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.storefront-cart-empty-illustration svg {
  width: 100%;
  height: 100%;
}

.storefront-cart-empty-copy-block {
  display: grid;
  gap: 6px;
  justify-items: center;
  width: 100%;
  text-align: center;
}

.storefront-cart-empty-title {
  margin: 0;
  color: var(--sf-color-text-neutral-primary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: 18px;
  font-weight: 500;
  line-height: 24px;
}

.storefront-cart-empty-copy {
  margin: 0;
  color: var(--sf-ref-color-grayscale-60);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: 14px;
  font-weight: var(--sf-ref-type-weight-light);
  line-height: 20px;
  text-align: center;
  white-space: pre-line;
}

.storefront-cart-empty-home-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  width: min(100%, 196px);
  padding: 11px 18px;
  border: 1px solid #d5d1c8;
  border-radius: 12px;
  background: var(--sf-color-surface);
  color: var(--sf-color-text-neutral-primary);
  font-family: var(--sf-ref-type-family-lexend);
  font-weight: var(--sf-ref-type-weight-medium);
  font-size: 15px;
  line-height: 20px;
  text-align: center;
  text-decoration: none;
  box-shadow: 0 1px 2px rgb(33 25 19 / 6%);
}

.storefront-cart-empty-home-link:focus-visible {
  outline: 2px solid var(--sf-color-focus);
  outline-offset: 2px;
}

.storefront-cart-empty-slot-stack {
  display: grid;
  gap: 12px;
  width: 100%;
}

.storefront-cart-empty-divider {
  width: 100%;
  height: 8px;
  background: var(--sf-color-surface-muted);
}

.storefront-cart-empty-slot-stack > * {
  width: 100%;
}

.storefront-cart-savings-banner {
  min-height: 36px;
  border: 1px solid var(--sf-color-border-subtle);
  border-radius: 10px;
  background: color-mix(in srgb, var(--sf-color-brand-soft) 62%, var(--sf-color-surface) 38%);
  color: color-mix(in srgb, var(--sf-color-brand-accent) 58%, var(--sf-color-text-primary) 42%);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 6px 10px;
  font-weight: 600;
  font-size: 14px;
}

.storefront-cart-items {
  display: grid;
  gap: 10px;
}

.storefront-cart-item-card {
  background: var(--sf-color-surface);
  border: 1px solid var(--sf-color-border-subtle);
  border-radius: 12px;
  padding: 10px;
  display: grid;
  grid-template-columns: 88px minmax(0, 1fr);
  gap: 10px;
}

.storefront-cart-item-media {
  width: 88px;
  height: 88px;
  border-radius: 10px;
  overflow: hidden;
  background: var(--sf-color-input-disabled);
}

.storefront-cart-item-media img,
.storefront-cart-cross-sell-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.storefront-cart-item-image-fallback {
  width: 100%;
  height: 100%;
  background: color-mix(in srgb, var(--sf-color-input-disabled) 80%, var(--sf-color-surface) 20%);
}

.storefront-cart-item-copy {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 8px;
}

.storefront-cart-item-content-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
}

.storefront-cart-item-copy-main {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 8px;
}

.storefront-cart-item-side {
  display: grid;
  justify-items: end;
  align-content: start;
  gap: 10px;
}

.storefront-cart-item-title {
  margin: 0;
  font-size: 15px;
  line-height: 20px;
  font-weight: 400;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.storefront-cart-item-remove {
  margin-left: 80px !important;
  width: 20px;
  height: 20px;
  border: 0;
  background: transparent;
  color: var(--sf-color-text-secondary);
  cursor: pointer;
}

.storefront-cart-item-price-stack {
  display: grid;
  justify-items: end;
  gap: 6px;
}

.storefront-cart-item-price-row {
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
}

.storefront-cart-item-price-row p {
  margin: 0;
  font-weight: 600;
}

.storefront-cart-item-compare-price {
  color: var(--sf-color-text-secondary);
  text-decoration: line-through;
  font-weight: 400;
}

.storefront-cart-item-discount-pill {
  gap: 4px;
  padding: 0 8px;
  font-size: 12px;
  line-height: 16px;
}

.storefront-cart-item-discount-pill.is-placeholder,
.storefront-cart-standalone-item-discount-pill.is-placeholder {
  visibility: hidden;
  pointer-events: none;
}

.storefront-cart-item-discount-pill span:first-child {
  font-size: 14px;
  line-height: 20px;
}

.storefront-cart-item-controls {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid var(--sf-color-border-subtle);
  border-radius: 999px;
  padding: 4px;
  width: fit-content;
}

.storefront-cart-item-controls button {
  width: 22px;
  height: 22px;
  border: 0;
  border-radius: 999px;
  background: var(--sf-color-input-disabled);
  color: inherit;
  cursor: pointer;
}

.storefront-cart-item-controls span {
  min-width: 18px;
  text-align: center;
  font-weight: 600;
}

.storefront-cart-bill-breakdown h2 {
  margin: 0 0 10px;
  font-size: 20px;
  line-height: 24px;
  font-weight: 400;
}

.storefront-cart-coupon-section {
  display: grid;
  gap: 8px;
  padding: 12px;
}

.storefront-cart-coupon-entry-row,
.storefront-cart-coupon-applied-row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 8px;
}

.storefront-cart-coupon-entry-left {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.storefront-cart-coupon-icon {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
}

.storefront-cart-coupon-icon svg {
  width: 100%;
  height: 100%;
}

.storefront-cart-coupon-title {
  margin: 0;
  color: var(--sf-color-text-primary);
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-coupon-link-row {
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  color: var(--sf-color-cta-line-border-compact);
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}

.storefront-cart-coupon-chevron {
  width: 12px;
  height: 12px;
  display: inline-flex;
}

.storefront-cart-coupon-chevron svg {
  width: 100%;
  height: 100%;
}

.storefront-cart-coupon-applied-copy {
  flex: 1 1 auto;
  min-width: 0;
  display: grid;
  gap: 2px;
}

.storefront-cart-coupon-remove {
  color: var(--sf-color-input-error);
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-coupon-suggestion {
  border-radius: 6px;
  position: relative;
  overflow: clip;
  background: #e9f7f3;
  padding: 4px 8px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.storefront-cart-coupon-suggestion-accent {
  position: absolute;
  top: 0;
  left: 0;
  width: 2px;
  height: 100%;
  background: #93d6c3;
}

.storefront-cart-coupon-suggestion-copy {
  flex: 1 1 auto;
  min-width: 0;
  display: grid;
  gap: 2px;
}

.storefront-cart-coupon-suggestion-copy p,
.storefront-cart-coupon-suggestion-copy small,
.storefront-cart-coupon-suggestion-badge {
  margin: 0;
}

.storefront-cart-coupon-suggestion-copy p {
  color: var(--sf-color-text-primary);
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-coupon-suggestion-meta {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  flex-wrap: wrap;
}

.storefront-cart-coupon-suggestion-copy small {
  color: #666262;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-coupon-suggestion-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 14px;
  padding: 0 6px;
  border-radius: 14px;
  background: var(--sf-color-surface);
  color: #145743;
  font-size: 10px;
  line-height: 14px;
  font-weight: 500;
}

.storefront-cart-coupon-suggestion button {
  border: 0;
  border-radius: 6px;
  padding: 4px 12px;
  min-height: 24px;
  color: var(--sf-color-surface);
  background: color-mix(in srgb, var(--sf-color-input-success) 50%, var(--sf-color-surface) 50%);
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
  cursor: pointer;
}

.storefront-cart-coupon-suggestion button.is-active {
  background: var(--sf-color-input-success);
}

.storefront-cart-coupon-suggestion button:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.storefront-cart-savings-card {
  padding: 0;
  overflow: hidden;
}

.storefront-cart-savings-card .storefront-cart-card-eyebrow {
  padding: 12px 12px 0;
}

.storefront-cart-savings-divider {
  height: 1px;
  margin: 0 12px;
  background: #efeeea;
}

.storefront-cart-delivery-section {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 8px;
  align-items: start;
  padding: 16px 12px;
}

.storefront-cart-delivery-section.is-applied {
  align-items: center;
  padding-top: 12px;
  padding-bottom: 12px;
}

.storefront-cart-coupon-selector {
  position: absolute;
  inset: 0;
  z-index: 12;
  background: var(--sf-color-surface);
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
}

.storefront-cart-coupon-selector-header {
  min-height: 52px;
  padding: 6px 16px;
  background: var(--sf-color-surface);
  border-bottom: 1px solid var(--sf-color-border-subtle);
  box-shadow: 0 4px 4px color-mix(in srgb, var(--sf-color-text-primary) 8%, transparent);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.storefront-cart-coupon-selector-header p {
  margin: 0;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-coupon-selector-header button,
.storefront-cart-coupon-selector-error-dismiss,
.storefront-cart-coupon-success-close {
  width: 20px;
  height: 20px;
  border: 0;
  background: transparent;
  color: var(--sf-color-footer-muted);
  font-size: 28px;
  line-height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
}

.storefront-cart-coupon-selector-input {
  background: var(--sf-color-input-disabled);
  padding: 16px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
}

.storefront-cart-coupon-selector-input input {
  min-height: 44px;
  border: 1px solid var(--sf-color-input-border);
  border-radius: 8px;
  background: var(--sf-color-surface);
  color: var(--sf-color-text-primary);
  padding: 0 14px;
  font-size: 14px;
  line-height: 20px;
  font-weight: 300;
}

.storefront-cart-coupon-selector-input input::placeholder {
  color: var(--sf-color-input-placeholder);
}

.storefront-cart-coupon-selector-input button {
  min-height: 44px;
  border: 0;
  border-radius: 8px;
  background: var(--sf-color-surface);
  color: var(--sf-color-text-primary);
  padding: 0 12px;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
  cursor: pointer;
}

.storefront-cart-coupon-selector-input button:disabled {
  opacity: 0.45;
  cursor: not-allowed;
}

.storefront-cart-coupon-selector-body {
  min-height: 0;
  overflow-y: auto;
  background: var(--sf-color-input-disabled);
  padding: 16px;
  display: grid;
  align-content: start;
  gap: 12px;
}

.storefront-cart-coupon-selector-group {
  display: grid;
  gap: 12px;
}

.storefront-cart-coupon-selector-group-title {
  margin: 0;
  color: var(--sf-color-footer-muted);
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
}

.storefront-cart-coupon-selector-list {
  display: grid;
  gap: 12px;
}

.storefront-cart-coupon-ticket {
  display: flex;
  min-height: 120px;
  position: relative;
  border-radius: 12px;
  overflow: clip;
  box-shadow: 0 1px 2px color-mix(in srgb, var(--sf-color-text-primary) 8%, transparent);
}

.storefront-cart-coupon-ticket-ribbon {
  width: 40px;
  background: var(--sf-color-brand-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.storefront-cart-coupon-ticket-ribbon.is-locked {
  background: var(--sf-color-input-border);
}

.storefront-cart-coupon-ticket-ribbon span {
  display: inline-block;
  transform: rotate(-90deg);
  white-space: nowrap;
  color: var(--sf-color-text-primary);
  font-size: 14px;
  line-height: 20px;
  font-weight: 700;
}

.storefront-cart-coupon-ticket-main {
  flex: 1 1 auto;
  min-width: 0;
  background: var(--sf-color-surface);
  padding: 12px;
  display: grid;
  align-content: start;
  gap: 12px;
}

.storefront-cart-coupon-ticket-head {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 12px;
}

.storefront-cart-coupon-ticket-title-wrap {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.storefront-cart-coupon-ticket-code {
  margin: 0;
  font-size: 16px;
  line-height: 20px;
  font-weight: 700;
  color: var(--sf-color-text-primary);
}

.storefront-cart-coupon-ticket-highlight {
  margin: 0;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
  color: var(--sf-color-text-primary);
}

.storefront-cart-coupon-ticket-highlight.is-success {
  color: var(--sf-color-input-success);
}

.storefront-cart-coupon-ticket-highlight.is-error {
  color: var(--sf-color-input-error);
}

.storefront-cart-coupon-ticket-apply {
  min-height: 24px;
  border: 0;
  border-radius: 6px;
  padding: 4px 12px;
  background: color-mix(in srgb, var(--sf-color-input-success) 50%, var(--sf-color-surface) 50%);
  color: var(--sf-color-surface);
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
  cursor: pointer;
}

.storefront-cart-coupon-ticket-apply.is-active {
  background: var(--sf-color-input-success);
}

.storefront-cart-coupon-ticket-apply:disabled {
  opacity: 0.35;
  cursor: not-allowed;
}

.storefront-cart-coupon-ticket-remove {
  color: var(--sf-color-input-error);
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-coupon-ticket-divider {
  height: 1px;
  background: var(--sf-color-input-border);
}

.storefront-cart-coupon-ticket-rules {
  display: grid;
  gap: 2px;
}

.storefront-cart-coupon-ticket-rules p {
  margin: 0;
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
  color: var(--sf-color-footer-muted);
}

.storefront-cart-coupon-ticket-notch {
  position: absolute;
  right: -8px;
  width: 16px;
  height: 16px;
  border-radius: 999px;
  background: var(--sf-color-input-disabled);
}

.storefront-cart-coupon-ticket-notch.top {
  top: 32px;
}

.storefront-cart-coupon-ticket-notch.bottom {
  top: 56px;
}

.storefront-cart-coupon-selector-error-layer {
  position: absolute;
  inset: 0;
  z-index: 2;
  background: color-mix(in srgb, var(--sf-color-text-primary) 50%, transparent);
  display: flex;
  align-items: flex-end;
}

.storefront-cart-coupon-selector-error-dismiss {
  position: absolute;
  right: 16px;
  bottom: calc(124px + env(safe-area-inset-bottom));
}

.storefront-cart-coupon-selector-error-sheet {
  width: 100%;
  background: var(--sf-color-surface);
  border-radius: 20px 20px 0 0;
  padding: 16px 16px calc(24px + env(safe-area-inset-bottom));
  display: grid;
  gap: 24px;
}

.storefront-cart-coupon-selector-error-grab {
  width: 32px;
  height: 4px;
  border-radius: 10px;
  background: var(--sf-color-input-border);
  justify-self: center;
}

.storefront-cart-coupon-selector-error-sheet p {
  margin: 0;
  color: var(--sf-color-text-primary);
  font-size: 16px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-coupon-selector-error-sheet button,
.storefront-cart-coupon-success-cta {
  min-height: 44px;
  border: 0;
  border-radius: 8px;
  background: var(--sf-color-brand-primary);
  color: var(--sf-color-text-primary);
  font-size: 16px;
  line-height: 20px;
  font-weight: 500;
  cursor: pointer;
}

.storefront-cart-coupon-success-layer {
  position: fixed;
  inset: 0;
  z-index: 140;
  background: color-mix(in srgb, var(--sf-color-text-primary) 36%, transparent);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}

.storefront-cart-coupon-success-modal {
  width: min(280px, 100%);
  border-radius: 24px;
  background: var(--sf-color-surface);
  padding: 32px 20px 20px;
  display: grid;
  gap: 32px;
  position: relative;
}

.storefront-cart-coupon-success-close {
  position: absolute;
  top: 20px;
  right: 20px;
}

.storefront-cart-coupon-success-icon {
  width: 56px;
  height: 56px;
  justify-self: center;
}

.storefront-cart-coupon-success-icon svg {
  width: 100%;
  height: 100%;
}

.storefront-cart-coupon-success-copy {
  display: grid;
  gap: 4px;
  text-align: center;
}

.storefront-cart-coupon-success-copy p,
.storefront-cart-coupon-success-copy small {
  margin: 0;
}

.storefront-cart-coupon-success-copy p:first-child {
  color: var(--sf-color-text-primary);
  font-size: 24px;
  line-height: 32px;
  font-weight: 700;
}

.storefront-cart-coupon-success-copy p:nth-child(2) {
  color: var(--sf-color-text-primary);
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-coupon-success-copy small {
  color: var(--sf-color-input-placeholder);
  font-size: 14px;
  line-height: 20px;
  font-weight: 300;
}

.storefront-cart-payment-toggle,
.storefront-cart-payment-cta {
  min-height: 38px;
  border: 0;
  border-radius: 10px;
  padding: 0 14px;
  font-weight: 600;
  cursor: pointer;
}

.storefront-cart-payment-cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
}

.storefront-cart-payment-cta-full {
  grid-column: 1 / -1;
}

.storefront-cart-delivery-card p,
.storefront-cart-wallet-card p,
.storefront-cart-gst-card p,
.storefront-cart-address-row p,
.storefront-cart-bill-breakdown p {
  margin: 0;
}

.storefront-cart-gst-card p,
.storefront-cart-address-row p + p {
  color: var(--sf-color-text-secondary);
}

.storefront-cart-delivery-card {
  margin-top: 12px;
  border-top: 1px solid var(--sf-color-border-subtle);
  padding-top: 12px;
  display: flex;
  justify-content: space-between;
  gap: 8px;
  font-weight: 600;
}

.storefront-cart-wallet-card p:first-child {
  color: var(--sf-color-text-secondary);
}

.storefront-cart-wallet-card p:last-child {
  margin-top: 4px;
  font-weight: 600;
}

.storefront-cart-cross-sell {
  border-radius: 12px;
  border: 1px solid var(--sf-color-border-subtle);
  background: color-mix(in srgb, var(--sf-color-input-disabled) 65%, var(--sf-color-surface) 35%);
  padding: 12px;
  display: grid;
  gap: 10px;
}

.storefront-cart-tabs {
  display: flex;
  gap: 8px;
  overflow-x: auto;
}

.storefront-cart-tabs button {
  border: 1px solid var(--sf-color-border-subtle);
  background: var(--sf-color-surface);
  color: var(--sf-color-text-secondary);
  border-radius: 999px;
  min-height: 30px;
  padding: 0 10px;
  white-space: nowrap;
}

.storefront-cart-tabs button.is-active {
  background: var(--sf-color-cta-dark);
  color: var(--sf-color-surface);
}

.storefront-cart-cross-sell-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.storefront-cart-cross-sell-card {
  background: var(--sf-color-surface);
  border-radius: 10px;
  overflow: hidden;
}

.storefront-cart-cross-sell-thumb {
  aspect-ratio: 1 / 1;
  background: var(--sf-color-input-disabled);
}

.storefront-cart-cross-sell-card p {
  margin: 0;
  padding: 6px 8px;
  font-size: 13px;
  font-weight: 600;
}

.storefront-cart-gst-card {
  display: grid;
  gap: 16px;
}

.storefront-cart-gst-toggle {
  width: 100%;
  border: 0;
  background: transparent;
  padding: 0;
  text-align: left;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
}

.storefront-cart-gst-toggle .storefront-cart-checkbox {
  flex: 0 0 auto;
  pointer-events: none;
}

.storefront-cart-gst-copy {
  min-width: 0;
  display: grid;
  gap: 4px;
}

.storefront-cart-gst-heading {
  color: var(--sf-color-text-primary);
  font-size: 16px;
  line-height: 20px;
  font-weight: 600;
}

.storefront-cart-gst-description {
  color: var(--sf-color-text-secondary);
  font-size: 14px;
  line-height: 20px;
  font-weight: 300;
}

.storefront-cart-gst-form {
  display: grid;
  gap: 14px;
}

.storefront-cart-gst-card .storefront-cart-gst-field {
  display: grid;
  gap: 6px;
  margin: 0;
}

.storefront-cart-gst-card .storefront-cart-gst-field-label {
  color: var(--sf-color-text-secondary);
  font-size: 12px;
  line-height: 16px;
  font-weight: 400;
}

.storefront-cart-gst-card .storefront-cart-gst-field-input {
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  min-height: 48px;
  border: 1px solid var(--sf-color-border-subtle);
  border-radius: 14px;
  background: var(--sf-color-surface);
  padding: 0 16px;
  color: var(--sf-color-text-primary);
  font-size: 15px;
  line-height: 20px;
  font-weight: 300;
  box-sizing: border-box;
}

.storefront-cart-drawer .storefront-cart-gst-card .storefront-cart-gst-field {
  display: grid;
  gap: 6px;
}

.storefront-cart-drawer .storefront-cart-gst-card .storefront-cart-gst-field-input {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  min-height: 48px;
  padding: 0 16px;
}

.storefront-cart-gst-card .storefront-cart-gst-field-input::placeholder {
  color: var(--sf-color-input-placeholder);
}

.storefront-cart-gst-card .storefront-cart-gst-field-input[aria-invalid="true"] {
  border-color: var(--sf-color-text-error-primary);
}

.storefront-cart-bill-breakdown {
  display: grid;
  gap: 8px;
}

.storefront-cart-bill-breakdown > div {
  display: flex;
  justify-content: space-between;
  gap: 8px;
}

.storefront-cart-payable-row {
  padding-top: 8px;
  border-top: 1px solid var(--sf-color-border-subtle);
  font-weight: 700;
}

.storefront-cart-payable-row p {
  font-weight: 700;
}

.storefront-cart-drawer-footer {
  border-top: 1px solid var(--sf-color-border-subtle);
  background: var(--sf-color-surface);
  padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
  display: grid;
  gap: 10px;
  position: sticky;
  bottom: 0;
  z-index: 6;
}

.storefront-cart-address-row {
  display: grid;
  gap: 2px;
}

.storefront-cart-address-row.is-action-row {
  width: 100%;
  border: 0;
  text-align: left;
  cursor: pointer;
}

.storefront-cart-payment-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
}

.storefront-cart-payment-row--summary {
  grid-template-columns: auto minmax(150px, 1fr);
  gap: 24px;
  align-items: center;
}

.storefront-cart-payment-row--single-cta {
  grid-template-columns: minmax(0, 1fr);
}

.storefront-cart-payment-summary {
  display: grid;
  align-content: center;
  gap: 4px;
}

.storefront-cart-payment-summary-label,
.storefront-cart-payment-summary-amount {
  margin: 0;
}

.storefront-cart-payment-summary-label {
  color: #666262;
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
  white-space: nowrap;
}

.storefront-cart-payment-summary-amount {
  color: #211913;
  font-size: 16px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-payment-row.is-mobile {
  align-items: center;
}

.storefront-cart-payment-toggle {
  background: color-mix(in srgb, var(--sf-color-brand-soft) 70%, var(--sf-color-surface) 30%);
  color: var(--sf-color-text-primary);
  text-align: left;
}

.storefront-cart-payment-cta {
  background: var(--sf-color-brand-primary);
  color: var(--sf-color-text-primary);
  min-width: 150px;
}

.storefront-cart-drawer-header {
  grid-template-columns: 24px minmax(0, 1fr) 24px;
}

.storefront-cart-drawer-header-spacer,
.storefront-cart-drawer-wishlist {
  width: 24px;
  height: 24px;
}

.storefront-cart-drawer-wishlist {
  position: relative;
  color: var(--sf-color-text-primary);
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.storefront-cart-drawer-wishlist svg {
  width: 20px;
  height: 20px;
}

.storefront-cart-drawer-wishlist-badge {
  position: absolute;
  top: -4px;
  right: -8px;
  min-width: 14px;
  height: 14px;
  padding: 0 3px;
  border-radius: 999px;
  background: var(--sf-color-brand-primary);
  color: var(--sf-color-text-primary);
  font-size: 9px;
  line-height: 14px;
  font-weight: 600;
  text-align: center;
}

.storefront-cart-item-title,
.storefront-cart-item-price-row,
.storefront-cart-item-secondary-meta,
.storefront-cart-item-delivery-copy,
.storefront-cart-item-variant-pill {
  margin: 0;
}

.storefront-cart-item-variant-pill {
  grid-area: variant;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 24px;
  width: fit-content;
  padding: 0 8px;
  border-radius: 999px;
  background: #efeeea;
  color: #403b3b;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-item-variant-chevron {
  width: 10px;
  height: 10px;
  display: inline-flex;
  color: #938e8b;
}

.storefront-cart-item-price-row {
  grid-area: price;
}

.storefront-cart-item-secondary-meta {
  grid-area: secondary;
}

.storefront-cart-item-return-copy {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: #666262;
  font-size: 12px;
  line-height: 16px;
  font-weight: 400;
}

.storefront-cart-item-inline-icon {
  width: 12px;
  height: 12px;
  display: inline-flex;
  color: #938e8b;
}

.storefront-cart-item-delivery-copy {
  grid-area: delivery;
  color: #666262;
  font-size: 12px;
  line-height: 16px;
  font-weight: 400;
}

.storefront-cart-item-delivery-copy.is-fast-delivery,
.storefront-mobile-cart-item-delivery.is-fast-delivery,
.storefront-cart-standalone-item-delivery-copy.is-fast-delivery {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  width: fit-content;
}

.storefront-cart-fast-delivery-badge {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  color: #211913;
}

.storefront-cart-fast-delivery-badge-icon {
  display: inline-flex;
  width: 8px;
  height: 12px;
  flex: 0 0 auto;
}

.storefront-cart-fast-delivery-badge-icon svg {
  width: 100%;
  height: 100%;
  display: block;
}

.storefront-cart-fast-delivery-badge-copy {
  display: inline-flex;
  flex-direction: column;
  gap: 1px;
  font-family: var(--sf-ref-type-family-lexend);
  font-size: 8px;
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: 1;
}

.storefront-cart-fast-delivery-divider {
  display: block;
  width: 1px;
  height: 12px;
  flex: 0 0 auto;
  background: var(--sf-color-border-subtle);
}

.storefront-cart-fast-delivery-copy {
  color: #666262;
  font-family: var(--sf-ref-type-family-poppins);
  font-size: 12px;
  font-weight: var(--sf-ref-type-weight-regular);
  line-height: 16px;
  white-space: nowrap;
}

.storefront-cart-gift-card {
  background: var(--sf-color-surface);
  border: 1px solid #dbd9d2;
  border-radius: 12px;
  box-shadow: 0 1px 2px rgb(33 25 19 / 8%);
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  padding: 10px 16px;
}

.storefront-cart-gift-icon,
.storefront-cart-gift-chevron,
.storefront-cart-reassurance-icon,
.storefront-cart-address-icon,
.storefront-cart-coupon-status-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.storefront-cart-gift-icon {
  width: 28px;
  height: 28px;
  color: #d18b13;
}

.storefront-cart-gift-copy,
.storefront-cart-gift-copy p,
.storefront-cart-card-eyebrow,
.storefront-cart-wallet-copy,
.storefront-cart-wallet-copy span,
.storefront-cart-address-copy,
.storefront-cart-address-copy p,
.storefront-cart-total-savings p,
.storefront-cart-cross-sell-price-row p,
.storefront-cart-cross-sell-price-row span {
  margin: 0;
}

.storefront-cart-gift-copy p {
  color: #211913;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-gift-action {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: #666262;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
  white-space: nowrap;
}

.storefront-cart-gift-chevron {
  width: 12px;
  height: 12px;
  color: #938e8b;
}

.storefront-cart-support-zone {
  background: #efeeea;
  display: grid;
  gap: 16px;
  padding: 16px;
}

.storefront-cart-reassurance-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

.storefront-cart-reassurance-item {
  display: grid;
  justify-items: center;
  gap: 6px;
  color: #666262;
  font-size: 10px;
  line-height: 14px;
  font-weight: 500;
  text-align: center;
}

.storefront-cart-reassurance-icon {
  width: 20px;
  height: 20px;
  color: #666262;
}

.storefront-cart-card-eyebrow {
  color: #938e8b;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-coupon-entry-row,
.storefront-cart-coupon-applied-row {
  padding: 0;
}

.storefront-cart-coupon-status {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  color: #27ad86;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
  white-space: nowrap;
}

.storefront-cart-coupon-status-icon {
  width: 12px;
  height: 12px;
}

.storefront-cart-coupon-applied-secondary .storefront-cart-coupon-title {
  font-weight: 500;
}

.storefront-cart-wallet-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  padding-top: 12px;
}

.storefront-cart-wallet-row.is-logged-out {
  align-items: center;
}

.storefront-cart-wallet-row.is-disabled .storefront-cart-wallet-title {
  opacity: 0.35;
}

.storefront-cart-wallet-toggle {
  border: 0;
  background: transparent;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.storefront-cart-wallet-toggle:disabled {
  cursor: default;
  opacity: 0.6;
}

.storefront-cart-wallet-checkbox {
  width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.storefront-cart-wallet-checkmark-box {
  width: 20px;
  height: 20px;
  border-radius: 4px;
  background: #27ad86;
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.storefront-cart-wallet-copy {
  display: grid;
  gap: 2px;
}

.storefront-cart-wallet-title {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px;
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-wallet-subtitle {
  display: flex;
  align-items: center;
  gap: 4px;
  color: #666262;
  font-size: 12px;
  line-height: 16px;
  font-weight: 400;
}

.storefront-cart-wallet-subtitle-label {
  font-weight: 300;
}

.storefront-cart-wallet-subtitle-amount {
  font-weight: 500;
}

.storefront-cart-wallet-login {
  min-width: 88px;
  min-height: 40px;
  padding: 0 18px;
  border: 1px solid #8f8a85;
  border-radius: 12px;
  background: #fff;
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 600;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.storefront-cart-cross-sell-price-row {
  display: flex;
  align-items: baseline;
  gap: 4px;
}

.storefront-cart-cross-sell-price-row p {
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
  padding: 0;
}

.storefront-cart-cross-sell-price-row span {
  color: #938e8b;
  font-size: 10px;
  line-height: 12px;
  font-weight: 300;
  text-decoration: line-through;
}

.storefront-cart-cross-sell-add {
  position: absolute;
  right: 6px;
  bottom: 6px;
  width: 24px;
  height: 24px;
  border: 1px solid #dbd9d2;
  border-radius: 8px;
  background: var(--sf-color-surface);
  box-shadow: 0 1px 2px rgb(33 25 19 / 8%);
  color: #211913;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  line-height: 1;
}

.storefront-cart-total-savings {
  border-radius: 6px;
  background: #e9f7f3;
  padding: 2px 8px;
  display: flex;
  justify-content: space-between;
  gap: 8px;
  color: #145743;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-address-row {
  grid-template-columns: auto minmax(0, 1fr) auto auto;
  align-items: center;
  gap: 8px;
}

.storefront-cart-address-icon {
  width: 16px;
  height: 16px;
  color: #211913;
}

.storefront-cart-address-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.storefront-cart-address-copy p:first-child {
  color: #403b3b;
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
}

.storefront-cart-address-copy p:first-child strong {
  color: #211913;
  font-weight: 500;
}

.storefront-cart-address-copy p + p {
  color: #403b3b;
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.storefront-cart-address-change {
  border: 0;
  background: transparent;
  padding: 4px 0;
  color: #211913;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
  cursor: pointer;
}

.storefront-cart-address-divider {
  width: 1px;
  height: 16px;
  background: #dbd9d2;
}

.storefront-cart-payment-toggle {
  display: grid;
  justify-items: start;
  gap: 2px;
}

.storefront-cart-payment-summary {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.storefront-cart-payment-row--summary .storefront-cart-payment-summary {
  display: grid;
  align-content: center;
  justify-items: start;
  gap: 4px;
}

.storefront-cart-payment-row--summary .storefront-cart-payment-summary-label,
.storefront-cart-payment-row--summary .storefront-cart-payment-summary-amount {
  display: block;
}

.storefront-cart-payment-summary-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.storefront-cart-payment-logo {
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 6px;
  background: #fff;
}

.storefront-cart-payment-logo-fallback {
  border: 1px solid #dbd9d2;
  background: #f6f4ef;
  color: #666262;
  font-size: 9px;
  line-height: 1;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.storefront-cart-payment-label {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  color: #4f76fe;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-payment-chevron {
  width: 12px;
  height: 12px;
  display: inline-flex;
  color: #4f76fe;
}

.storefront-cart-payment-chevron.is-up {
  transform: rotate(180deg);
}

.storefront-cart-payment-method {
  color: #211913;
  font-size: 10px;
  line-height: 14px;
  font-weight: 400;
}

.storefront-cart-payment-channel {
  color: #938e8b;
  font-size: 10px;
  line-height: 14px;
  font-weight: 300;
}

.storefront-cart-cta-copy {
  display: grid;
  gap: 4px;
}

.storefront-cart-cta-copy p {
  margin: 0;
}

.storefront-cart-cta-copy p:first-child {
  color: #666262;
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
}

.storefront-cart-cta-copy p + p {
  color: #211913;
  font-size: 16px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-sheet-layer {
  position: fixed;
  inset: 0;
  z-index: 80;
  display: grid;
  align-items: end;
}

.storefront-cart-sheet-dismiss {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgb(33 25 19 / 32%);
}

.storefront-cart-sheet {
  position: relative;
  z-index: 1;
  border-radius: 24px 24px 0 0;
  background: #ffffff;
  padding: 12px 16px calc(24px + env(safe-area-inset-bottom));
  display: grid;
  gap: 16px;
  box-shadow: 0 -10px 24px rgb(33 25 19 / 16%);
  max-height: min(82dvh, 760px);
  overflow: auto;
}

.storefront-cart-sheet-grab {
  width: 44px;
  height: 4px;
  border-radius: 999px;
  background: #dbd9d2;
  justify-self: center;
}

.storefront-cart-sheet-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.storefront-cart-sheet-header p {
  margin: 0;
  color: #211913;
  font-size: 16px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-sheet-header button {
  border: 0;
  background: transparent;
  color: #666262;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
}

.storefront-cart-address-sheet-header {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
}

.storefront-cart-address-sheet-header p {
  grid-column: 2;
}

.storefront-cart-address-sheet-back {
  border: 0;
  background: transparent;
  color: #666262;
  font-size: 20px;
  line-height: 1;
  width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

.storefront-cart-address-sheet-list {
  display: grid;
  gap: 0;
}

.storefront-cart-address-sheet-add {
  border: 0;
  background: transparent;
  color: #4f76fe;
  text-align: left;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
  padding: 0 0 16px;
  cursor: pointer;
}

.storefront-cart-address-sheet-divider {
  width: 100%;
  height: 1px;
  background: #efeeea;
}

.storefront-cart-address-sheet-option {
  border: 0;
  border-bottom: 1px solid #efeeea;
  background: transparent;
  padding: 16px 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  text-align: left;
  cursor: pointer;
}

.storefront-cart-address-sheet-option.is-selected .storefront-cart-address-sheet-option-title {
  color: #211913;
}

.storefront-cart-address-sheet-option-copy {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.storefront-cart-address-sheet-option-title {
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-address-sheet-option-detail {
  color: #403b3b;
  font-size: 14px;
  line-height: 20px;
  font-weight: 300;
}

.storefront-cart-address-sheet-option-chevron {
  color: #938e8b;
  font-size: 24px;
  line-height: 1;
}

.storefront-cart-address-sheet-empty {
  margin: 16px 0 0;
  color: #666262;
  font-size: 12px;
  line-height: 16px;
}

.storefront-cart-address-sheet-form {
  display: grid;
  gap: 16px;
}

.storefront-cart-address-sheet-form label {
  display: grid;
  gap: 2px;
}

.storefront-cart-address-sheet-form span {
  color: #403b3b;
  opacity: 0.8;
  font-size: 10px;
  line-height: 14px;
  font-weight: 300;
}

.storefront-cart-address-sheet-form input {
  min-height: 44px;
  border: 1px solid #dbd9d2;
  border-radius: 8px;
  background: #fff;
  padding: 0 16px;
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 300;
}

.storefront-cart-address-sheet-form input[readonly] {
  background: #efeeea;
  color: #938e8b;
}

.storefront-cart-address-sheet-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.storefront-cart-address-sheet-helper {
  margin: -10px 0 0;
  color: #666262;
  font-size: 10px;
  line-height: 14px;
  font-weight: 300;
}

.storefront-cart-address-sheet-locate {
  border: 0;
  background: transparent;
  color: #4f76fe;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
  text-align: left;
  padding: 0;
  cursor: pointer;
}

.storefront-cart-sheet-list {
  display: grid;
  gap: 10px;
}

.storefront-cart-sheet-group-title {
  margin: 0 0 8px;
  color: #666262;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-sheet-option {
  border: 1px solid #dbd9d2;
  border-radius: 14px;
  background: #fff;
  padding: 12px;
  display: grid;
  grid-template-columns: 40px minmax(0, 1fr);
  align-items: center;
  column-gap: 12px;
  row-gap: 4px;
  text-align: left;
  cursor: pointer;
}

.storefront-cart-sheet-option.is-selected {
  border-color: #211913;
  box-shadow: inset 0 0 0 1px #211913;
}

.storefront-cart-sheet-option-leading {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid #dbd9d2;
  border-radius: 12px;
  background: #f7f4ee;
  overflow: hidden;
}

.storefront-cart-sheet-option-logo {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 6px;
}

.storefront-cart-sheet-option-logo-fallback {
  color: #666262;
  font-size: 10px;
  line-height: 12px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.storefront-cart-sheet-option-body {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.storefront-cart-sheet-option-title {
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-sheet-option-copy {
  color: #666262;
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
}

.storefront-cart-mobile-payment-sheet {
  position: fixed;
  inset: 0;
  z-index: 90;
  background: #efeeea;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr);
}

.storefront-cart-mobile-payment-sheet-header {
  min-height: 52px;
  padding: 0 16px;
  background: #fff;
  box-shadow: 0 4px 4px rgb(33 25 19 / 8%);
  display: grid;
  grid-template-columns: 20px minmax(0, 1fr) 20px;
  align-items: center;
  gap: 12px;
}

.storefront-cart-mobile-payment-sheet-header p {
  margin: 0;
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-mobile-payment-sheet-back {
  width: 20px;
  height: 20px;
  border: 0;
  padding: 0;
  background: transparent;
  color: #211913;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.storefront-cart-mobile-payment-sheet-back svg {
  width: 20px;
  height: 20px;
}

.storefront-cart-mobile-payment-sheet-spacer {
  width: 20px;
  height: 20px;
}

.storefront-cart-mobile-payment-sheet-bill-bar {
  padding: 8px 16px;
  background: #fff9ec;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.storefront-cart-mobile-payment-sheet-bill-bar p {
  margin: 0;
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-mobile-payment-sheet-bill-bar p span {
  font-weight: 500;
}

.storefront-cart-mobile-payment-sheet-bill-bar button {
  border: 0;
  background: transparent;
  padding: 0;
  color: #211913;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-mobile-payment-sheet-content {
  overflow: auto;
  padding: 24px 16px calc(32px + env(safe-area-inset-bottom));
  display: grid;
  gap: 24px;
}

.storefront-cart-mobile-payment-group {
  display: grid;
  gap: 8px;
}

.storefront-cart-mobile-payment-group-title {
  margin: 0;
  color: #666262;
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-mobile-payment-group-card {
  background: #fff;
  border: 1px solid #efeeea;
  border-radius: 12px;
  box-shadow: 0 1px 2px rgb(33 25 19 / 8%);
  overflow: hidden;
}

.storefront-cart-mobile-payment-option {
  width: 100%;
  border: 0;
  background: transparent;
  padding: 16px 12px;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) 16px;
  align-items: center;
  gap: 8px;
  text-align: left;
}

.storefront-cart-mobile-payment-option.is-selected {
  background: rgb(79 118 254 / 4%);
}

.storefront-cart-mobile-payment-option:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.storefront-cart-mobile-payment-option-leading {
  width: 28px;
  height: 28px;
  border-radius: 6px;
  background: #dbd9d2;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.storefront-cart-mobile-payment-option-logo {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 4px;
}

.storefront-cart-mobile-payment-option-logo-fallback {
  color: #666262;
  font-size: 10px;
  line-height: 12px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.storefront-cart-mobile-payment-option-body {
  min-width: 0;
  display: grid;
  gap: 2px;
}

.storefront-cart-mobile-payment-option-title {
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 300;
}

.storefront-cart-mobile-payment-option-title.is-accent {
  color: #4f76fe;
  font-weight: 500;
}

.storefront-cart-mobile-payment-option-copy {
  color: #666262;
  font-size: 10px;
  line-height: 14px;
  font-weight: 300;
}

.storefront-cart-mobile-payment-option-trailing {
  width: 16px;
  height: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #666262;
}

.storefront-cart-mobile-payment-option-chevron {
  width: 16px;
  height: 16px;
  display: inline-flex;
  transform: rotate(-90deg);
}

.storefront-cart-mobile-payment-option-divider {
  height: 1px;
  margin: 0 12px;
  background: #efeeea;
}

.storefront-cart-sheet-form {
  display: grid;
  gap: 12px;
}

.storefront-cart-sheet-form-title {
  margin: 0;
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-sheet-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.storefront-cart-sheet-form-grid label {
  display: grid;
  gap: 6px;
}

.storefront-cart-sheet-form-grid label.is-wide {
  grid-column: 1 / -1;
}

.storefront-cart-sheet-form-grid span {
  color: #666262;
  font-size: 12px;
  line-height: 16px;
  font-weight: 400;
}

.storefront-cart-postal-feedback {
  margin: 0;
  color: #666262;
  font-size: 12px;
  line-height: 16px;
  font-weight: 400;
}

.storefront-cart-postal-feedback.is-error {
  color: #b42318;
}

.storefront-cart-postal-feedback.is-success {
  display: grid;
  gap: 2px;
}

.storefront-cart-postal-feedback.is-success p {
  margin: 0;
}

.storefront-cart-sheet-form-grid input {
  min-height: 44px;
  border: 1px solid #dbd9d2;
  border-radius: 12px;
  background: #fff;
  padding: 0 12px;
  color: #211913;
  font-size: 14px;
  line-height: 20px;
}

.storefront-cart-sheet-form-grid select {
  min-height: 44px;
  border: 1px solid #dbd9d2;
  border-radius: 12px;
  background: #fff;
  padding: 0 12px;
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  text-transform: lowercase;
}

.storefront-cart-sheet-submit {
  min-height: 52px;
  border: 0;
  border-radius: 8px;
  background: #ffc845;
  color: #211913;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
  cursor: pointer;
}

.storefront-cart-sheet-submit:disabled,
.storefront-cart-sheet-option:disabled,
.storefront-cart-address-sheet-option:disabled,
.storefront-cart-address-sheet-add:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.storefront-cart-address-layer.is-desktop {
  align-items: stretch;
  justify-items: end;
}

.storefront-cart-address-layer.is-desktop:not(.is-standalone) {
  position: absolute;
  z-index: 12;
}

.storefront-cart-address-layer.is-desktop .storefront-cart-sheet-dismiss {
  background: color-mix(in srgb, var(--sf-color-text-primary) 42%, transparent);
}

.storefront-cart-address-layer.is-desktop:not(.is-standalone) .storefront-cart-sheet-dismiss {
  background: transparent;
}

.storefront-cart-address-sheet.is-desktop {
  width: min(560px, 100vw);
  height: 100dvh;
  max-height: 100dvh;
  border-radius: 0;
  padding: 16px 16px calc(24px + env(safe-area-inset-bottom));
  box-shadow: -8px 0 28px color-mix(in srgb, var(--sf-color-text-primary) 16%, transparent);
  gap: 20px;
}

.storefront-cart-address-sheet.is-desktop .storefront-cart-sheet-grab {
  display: none;
}

.storefront-cart-address-sheet.is-desktop .storefront-cart-address-sheet-list {
  max-height: calc(100dvh - 176px);
  overflow: auto;
  padding-right: 2px;
}

.storefront-cart-address-sheet.is-desktop .storefront-cart-address-sheet-form {
  max-height: calc(100dvh - 224px);
  overflow: auto;
  padding-right: 2px;
}

.storefront-cart-address-sheet.is-desktop .storefront-cart-sheet-submit {
  width: min(328px, 100%);
  justify-self: center;
  min-height: 44px;
  padding: 12px 20px;
  height: 44px;
}

.storefront-cart-address-layer.is-desktop:not(.is-standalone) .storefront-cart-address-sheet.is-desktop {
  width: 100%;
  max-width: 100%;
  box-shadow: none;
}

.storefront-cart-drawer.is-mobile {
  background: var(--sf-color-surface);
}

.storefront-cart-drawer.is-mobile .storefront-cart-drawer-header {
  min-height: 48px;
  padding: 10px 16px 8px;
  border-bottom: 0;
  background: var(--sf-color-surface);
}

.storefront-cart-drawer.is-mobile .storefront-cart-drawer-title {
  font-size: 16px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-drawer.is-mobile .storefront-cart-drawer-body {
  gap: 0;
  background: var(--sf-color-surface);
}

.storefront-cart-drawer.is-mobile .storefront-cart-status,
.storefront-cart-drawer.is-mobile .storefront-cart-error,
.storefront-cart-drawer.is-mobile .storefront-cart-empty-layout {
  margin: 12px 16px 0;
}

.storefront-cart-drawer.is-mobile .storefront-cart-empty-layout {
  padding: 48px 0 calc(40px + env(safe-area-inset-bottom));
  justify-items: center;
}

.storefront-cart-drawer.is-mobile .storefront-cart-empty-divider {
  width: calc(100% + 32px);
  margin-inline: -16px;
}

.storefront-cart-drawer.is-mobile:not(.is-standalone) .storefront-cart-empty-layout {
  padding-top: 24px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-empty-slot-stack {
  gap: 16px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-savings-banner {
  min-height: 28px;
  margin: 8px 16px 10px;
  border-radius: 8px;
  padding: 4px 10px;
  font-size: 12px;
  line-height: 16px;
}

.storefront-cart-drawer.is-mobile:not(.is-standalone) .storefront-cart-savings-banner {
  margin: 8px 16px 0;
  border: 1px solid #c3e0e1;
  background: #e7f3f3;
  color: #074245;
  box-shadow: none;
  font-weight: 500;
}

.storefront-cart-drawer.is-mobile .storefront-cart-items {
  gap: 0;
  margin: 0;
}

.storefront-cart-drawer.is-mobile:not(.is-standalone) .storefront-cart-items {
  display: grid;
  gap: 0;
  background: #fff;
  padding: 12px 16px 16px;
}

.storefront-cart-drawer.is-mobile:not(.is-standalone) .storefront-cart-item-group {
  gap: 0;
}

.storefront-cart-drawer.is-mobile .storefront-mobile-cart-post-items {
  margin: 0;
}

.storefront-cart-drawer.is-mobile:not(.is-standalone) .storefront-mobile-cart-post-items {
  gap: 24px;
  padding: 16px 16px 24px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-card {
  border: 0;
  border-bottom: 1px solid #efeeea;
  border-radius: 0;
  padding: 24px 20px 18px;
  gap: 16px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-main {
  grid-template-columns: 184px minmax(0, 1fr);
  gap: 16px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-card:last-child {
  border-bottom: 0;
}

.storefront-cart-drawer.is-mobile:not(.is-standalone) .storefront-mobile-cart-item,
.storefront-cart-drawer.is-mobile:not(.is-standalone) .storefront-mobile-cart-gift-item {
  background: transparent;
  border: 0;
  box-shadow: none;
  padding: 12px 0;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-media {
  width: 184px;
  height: 213px;
  border-radius: 20px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-copy {
  grid-template-columns: minmax(0, 1fr) auto;
  grid-template-areas:
    "title title"
    "variant controls"
    "price controls"
    "secondary controls"
    "badge controls"
    "delivery delivery";
  gap: 8px 12px;
  padding-top: 6px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-title {
  grid-area: title;
  font-size: 20px;
  line-height: 1.25;
  font-weight: 400;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-meta-group {
  grid-area: variant;
  margin-right: 0;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-price-row {
  grid-area: price;
  margin-right: 0;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-secondary-meta {
  grid-area: secondary;
  margin-right: 0;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-status-badge {
  grid-area: badge;
  margin-right: 0;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-delivery-copy {
  grid-area: delivery;
  margin-right: 0;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-checkout-warning,
.storefront-cart-drawer.is-mobile .storefront-cart-item-gift-wrap {
  grid-column: 1 / -1;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-remove {
  width: 16px;
  height: 16px;
  color: #938e8b;
  font-size: 18px;
  line-height: 1;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-price-row p {
  font-size: 20px;
  line-height: 1.2;
  font-weight: 700;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-compare-price {
  font-size: 18px;
  line-height: 1.2;
  font-weight: 300;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-discount-pill {
  font-size: 14px;
  line-height: 18px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-discount-pill span:first-child {
  font-size: 18px;
  line-height: 1.2;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-return-copy,
.storefront-cart-drawer.is-mobile .storefront-cart-item-delivery-copy {
  font-size: 18px;
  line-height: 1.25;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-low-stock,
.storefront-cart-drawer.is-mobile .storefront-cart-item-variant-help {
  font-size: 14px;
  line-height: 1.25;
  font-weight: 500;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-status-badge {
  min-height: 24px;
  padding: 0 10px 0 8px;
  font-size: 14px;
  line-height: 1.25;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-checkout-warning {
  margin-top: 4px;
  font-size: 18px;
  line-height: 1.25;
  font-weight: 600;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-gift-wrap {
  min-height: 32px;
  border-radius: 10px;
  padding: 0 10px;
  font-size: 14px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-gift-wrap-copy {
  gap: 6px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-gift-wrap-remove {
  margin-left: 6px;
  padding-left: 10px;
  border-left: 1px solid #c8b5c1;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-controls {
  grid-area: controls;
  position: static;
  justify-self: end;
  align-self: center;
  min-height: 60px;
  gap: 10px;
  padding: 0 16px;
  border: 1px solid #dbd9d2;
  border-radius: 999px;
  box-shadow: 0 1px 2px rgb(33 25 19 / 8%);
  background: var(--sf-color-surface);
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-controls button {
  width: 24px;
  height: 24px;
  background: transparent;
}

.storefront-cart-drawer.is-mobile .storefront-cart-item-controls span {
  min-width: 20px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-gift-card {
  margin: 12px 16px 0;
}

.storefront-cart-drawer.is-mobile .storefront-cart-panel,
.storefront-cart-drawer.is-mobile .storefront-cart-wallet-card,
.storefront-cart-drawer.is-mobile .storefront-cart-bill-breakdown {
  border: 1px solid #efeeea;
  border-radius: 12px;
  box-shadow: 0 1px 2px rgb(33 25 19 / 8%);
  padding: 12px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-savings-card {
  padding: 0;
}

.storefront-cart-drawer.is-mobile .storefront-cart-cross-sell {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0;
  gap: 12px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-tabs button {
  min-height: 24px;
  padding: 0 8px;
  border-radius: 8px;
  box-shadow: 0 1px 2px rgb(33 25 19 / 8%);
  color: #211913;
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
}

.storefront-cart-drawer.is-mobile .storefront-cart-tabs button.is-active {
  color: var(--sf-color-surface);
  font-weight: 500;
}

.storefront-cart-drawer.is-mobile .storefront-cart-cross-sell-grid {
  grid-auto-flow: column;
  grid-auto-columns: 92px;
  grid-template-columns: unset;
  grid-template-rows: repeat(2, auto);
  gap: 12px;
  overflow-x: auto;
  padding-bottom: 2px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-cross-sell-card {
  background: transparent;
  border-radius: 0;
  overflow: visible;
  display: grid;
  gap: 4px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-cross-sell-thumb {
  aspect-ratio: 92 / 106;
  border-radius: 8px;
  position: relative;
  overflow: hidden;
}

.storefront-cart-drawer.is-mobile .storefront-cart-bill-breakdown > div {
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
}

.storefront-cart-drawer.is-mobile .storefront-cart-payable-row {
  font-size: 14px;
  line-height: 20px;
  font-weight: 700;
  border-top: 1px solid #efeeea;
  padding-top: 8px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-payable-row p {
  font-weight: 700;
}

.storefront-cart-drawer.is-mobile .storefront-cart-drawer-footer {
  border-top: 0;
  border-radius: 16px 16px 0 0;
  box-shadow: 0 -4px 8px rgb(33 25 19 / 8%);
  padding: 0 0 calc(12px + env(safe-area-inset-bottom));
  gap: 0;
}

.storefront-cart-drawer.is-mobile .storefront-cart-address-row {
  background: #fff9ec;
  border-radius: 16px 16px 0 0;
  border-bottom: 1px solid #efeeea;
  padding: 12px 16px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-address-row .storefront-cart-address-copy {
  gap: 2px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-payment-row {
  padding: 12px 16px 0;
  gap: 12px;
  align-items: center;
}

.storefront-cart-drawer.is-mobile .storefront-cart-payment-row.is-mobile {
  grid-template-columns: minmax(0, 1fr) auto;
}

.storefront-cart-drawer.is-mobile .storefront-cart-payment-row.is-mobile.is-split-cta {
  grid-template-columns: minmax(0, 1fr) 196.8px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-payment-toggle {
  min-height: 0;
  padding: 0;
  border-radius: 0;
  background: transparent;
  align-content: start;
  gap: 4px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-payment-summary {
  align-items: start;
  gap: 4px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-payment-logo {
  width: 28px;
  height: 28px;
  flex-basis: 28px;
  border-radius: 6px;
  background: #dbd9d2;
}

.storefront-cart-drawer.is-mobile .storefront-cart-payment-logo img {
  padding: 4px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-payment-logo-fallback {
  font-size: 10px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-payment-summary-copy {
  gap: 0;
}

.storefront-cart-drawer.is-mobile .storefront-cart-payment-label {
  gap: 2px;
  font-size: 12px;
  line-height: 16px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-payment-method {
  font-size: 10px;
  line-height: 14px;
  font-weight: 300;
  white-space: nowrap;
}

.storefront-cart-drawer.is-mobile .storefront-cart-payment-channel {
  color: #938e8b;
  font-size: 10px;
  line-height: 14px;
  white-space: nowrap;
}

.storefront-cart-drawer.is-mobile .storefront-cart-payment-cta {
  min-width: 196px;
  width: 196.8px;
  min-height: 52px;
  border-radius: 12px;
  font-size: 16px;
  line-height: 20px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-payment-cta-full {
  width: 100%;
  min-width: 0;
}

.storefront-cart-drawer.is-mobile .storefront-cart-address-row + .storefront-cart-payment-row {
  border-top: 0;
}

.storefront-cart-standalone-shell {
  background: transparent;
  border: 0;
  box-shadow: none;
}

.storefront-cart-drawer.is-standalone {
  min-height: calc(100dvh - 108px);
}

.storefront-cart-drawer.is-standalone.is-mobile {
  min-height: 100dvh;
}

.storefront-cart-drawer.is-standalone .storefront-cart-empty-layout {
  width: 100%;
  min-height: 100%;
  justify-items: center;
  align-content: center;
}

@keyframes storefront-cart-drawer-enter {
  from {
    transform: translateX(22px);
    opacity: 0.7;
  }

  to {
    transform: translateX(0);
    opacity: 1;
  }
}

@media (max-width: 420px) {
  .storefront-search-drawer-continue-exploring-list {
    gap: 10px;
  }
}

@media (min-width: 1024px) {
  .storefront-search-drawer-suggestions {
    display: grid;
    margin: 0;
    padding: 0.25rem;
    border: 1px solid var(--sf-color-search-border);
    border-radius: 0.9rem;
    box-shadow: none;
  }

  .storefront-search-drawer-suggestions > li + li {
    border-top: 0;
  }

  .storefront-search-suggestion-row-button {
    border-radius: 0.65rem;
  }

  .storefront-search-results-text-style {
    padding: 6px 16px;
    border-radius: 0.65rem;
  }

  .storefront-search-suggestion-row-button:hover .storefront-search-results-text-style {
    background: color-mix(in srgb, var(--sf-color-input-disabled) 80%, var(--sf-color-surface) 20%);
  }

  .storefront-cart-drawer-backdrop {
    display: flex;
    justify-content: flex-end;
    background: color-mix(in srgb, var(--sf-color-text-primary) 42%, transparent);
  }

  .storefront-cart-drawer-shell {
    width: min(560px, 96vw);
    box-shadow: -8px 0 28px color-mix(in srgb, var(--sf-color-text-primary) 16%, transparent);
  }

  .storefront-cart-drawer {
    background: var(--sf-color-surface);
  }

  .storefront-cart-drawer-body {
    padding: 16px;
  }

  .storefront-cart-drawer-footer {
    padding: 12px 16px;
  }

  .storefront-cart-cross-sell-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .storefront-cart-standalone-shell {
    width: min(1200px, calc(100% - 48px));
    margin: 32px auto 80px;
  }

  .storefront-cart-drawer.is-standalone {
    min-height: calc(100dvh - 145px);
    border: 0;
    border-radius: 0;
    box-shadow: none;
    overflow: visible;
  }

  .storefront-cart-drawer.is-standalone.is-desktop {
    height: auto;
    grid-template-rows: auto minmax(0, 1fr);
  }

  .storefront-cart-drawer.is-desktop .storefront-cart-empty-layout {
    padding: 24px 0 32px;
    justify-items: center;
  }

  .storefront-cart-drawer.is-desktop .storefront-cart-empty-divider {
    width: 240px;
    height: 1px;
    margin: 0 auto;
    background: var(--sf-color-border-subtle);
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-empty-layout {
    min-height: auto;
    padding: 28px 0 72px;
    gap: 40px;
    justify-items: stretch;
  }

  .storefront-cart-drawer.is-desktop .storefront-cart-empty-slot-stack {
    width: 100%;
  }

  .storefront-cart-drawer.is-desktop:not(.is-standalone) .cms-v1-category-tile-grid .cms-v1-content-wrap {
    min-width: 0 !important;
  }

  .storefront-cart-drawer.is-desktop:not(.is-standalone) .cms-v1-category-tile-grid-layout {
    grid-auto-flow: column !important;
    grid-auto-columns: max-content !important;
    grid-template-columns: none !important;
    justify-content: start !important;
    column-gap: 20px !important;
    row-gap: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    overscroll-behavior-x: contain !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
  }

  .storefront-cart-drawer.is-desktop:not(.is-standalone) .cms-v1-category-tile-grid-layout::-webkit-scrollbar {
    display: none !important;
  }

  .storefront-cart-drawer.is-desktop:not(.is-standalone) .cms-v1-category-tile-grid-item {
    justify-self: start !important;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-desktop-header {
    min-height: auto;
    padding: 0 0 24px;
    border-bottom: 0;
    background: transparent;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 16px;
    width: 100%;
    position: static;
    top: auto;
    z-index: auto;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-desktop-header .storefront-cart-drawer-wishlist {
    align-self: center;
  }

  .storefront-cart-standalone-desktop-title {
    font-family: var(--sf-ref-type-family-lexend);
    font-size: var(--sf-ref-type-size-large);
    font-weight: var(--sf-ref-type-weight-medium);
    line-height: var(--sf-ref-type-line-height-24);
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-drawer-body {
    overflow: visible;
    padding: 0;
    gap: 0;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-desktop-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(332px, 364px);
    align-items: start;
    gap: 20px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-desktop-main {
    min-width: 0;
    display: grid;
    align-content: start;
    gap: 16px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-card {
    display: block;
    grid-template-columns: none;
    padding: 14px 16px;
    gap: 12px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-grid {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr) 120px minmax(112px, 132px) 24px;
    grid-template-areas: "media info quantity price remove";
    align-items: start;
    column-gap: 14px;
    row-gap: 8px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-media {
    grid-area: media;
    width: 92px;
    height: 106px;
    border-radius: 10px;
    overflow: hidden;
    background: var(--sf-color-input-disabled);
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-info {
    grid-area: info;
    min-width: 0;
    display: grid;
    align-content: start;
    gap: 8px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-copy {
    min-width: 0;
    display: grid;
    align-content: start;
    gap: 6px;
  }

.storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-title {
  margin: 0;
  color: #211913;
  font-size: 16px;
  line-height: 20px;
  font-weight: 400;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    min-width: 0;
    color: #403b3b;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-messages {
    min-width: 0;
    display: grid;
    align-content: start;
    gap: 4px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-variant-pill {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    min-height: 24px;
    border-radius: 13px;
    background: #efeeea;
    padding: 4px 8px;
    color: #403b3b;
    font-size: 12px;
    line-height: 16px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-low-stock,
  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-variant-help,
  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-return-copy,
  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-delivery-copy {
    margin: 0;
    color: #666262;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-low-stock,
  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-return-copy {
    display: inline-flex;
    align-items: center;
    gap: 4px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-status {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    width: fit-content;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    font-size: 11px;
    line-height: 14px;
    font-weight: 500;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-status.is-error {
    background: #fbe9e8;
    color: #b33b30;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-status.is-success {
    background: #e9f7f3;
    color: #145743;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-status.is-neutral {
    background: #efeeea;
    color: #666262;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-quantity {
    grid-area: quantity;
    align-self: center;
    justify-self: center;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-controls {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 36px;
    border: 1px solid #dbd9d2;
    border-radius: 999px;
    background: #fff;
    padding: 0 10px;
    box-shadow: 0 1px 2px rgb(33 25 19 / 8%);
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-controls button {
    width: 22px;
    height: 22px;
    border: 0;
    border-radius: 999px;
    background: #efeeea;
    color: #211913;
    cursor: pointer;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-controls span {
    min-width: 18px;
    text-align: center;
    color: #211913;
    font-size: 14px;
    line-height: 18px;
    font-weight: 500;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-price {
    grid-area: price;
    min-width: 0;
    display: grid;
    justify-items: end;
    align-content: center;
    gap: 6px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-price-row {
    display: flex;
    align-items: baseline;
    justify-content: flex-end;
    gap: 8px;
    margin: 0;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-price-row p {
    margin: 0;
    color: #211913;
    font-size: 16px;
    line-height: 20px;
    font-weight: 600;
    white-space: nowrap;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-compare-price {
    color: #938e8b;
    text-decoration: line-through;
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-remove {
    grid-area: remove;
    align-self: start;
    justify-self: end;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-remove .storefront-cart-item-remove {
    margin: 0;
    padding: 0;
    position: static;
    width: 20px;
    height: 20px;
    color: #938e8b;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-discount-pill {
    gap: 4px;
    padding: 0 8px;
    font-size: 11px;
    line-height: 14px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-discount-pill span:first-child {
    font-size: 13px;
    line-height: 16px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-checkout-warning,
  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-gift-wrap {
    margin: 0;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-checkout-warning {
    color: #9c2f2f;
    font-size: 12px;
    line-height: 16px;
    font-weight: 500;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-gift-wrap {
    display: flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    min-height: 22px;
    border-radius: 10px;
    padding: 2px 8px;
    background: #f1eaed;
    color: #772b4d;
    font-size: 10px;
    line-height: 14px;
    font-weight: 500;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-gift-wrap-copy {
    display: inline-flex;
    align-items: center;
    gap: 4px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-gift-wrap-copy .storefront-cart-item-inline-icon {
    width: 12px;
    height: 12px;
    color: #772b4d;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-gift-wrap-remove {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 0;
    background: transparent;
    color: inherit;
    font-size: 12px;
    line-height: 1;
    margin-left: 2px;
    padding-left: 10px;
    border-left: 1px solid #c8b5c1;
    cursor: pointer;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-gift-wrap-remove:disabled {
    cursor: default;
    opacity: 0.6;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-gift-grid {
    display: grid;
    grid-template-columns: 92px minmax(0, 1fr);
    gap: 14px;
    align-items: center;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-gift-copy {
    min-width: 0;
    display: grid;
    gap: 6px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-special-row {
    display: flex;
    align-items: center;
    border: 1px solid #efeeea;
    border-radius: 12px;
    background: #fff;
    overflow: hidden;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-special-intro,
  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-special-action {
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 0 12px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-special-intro {
    flex: 1 1 auto;
    min-width: 0;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-special-divider {
    width: 1px;
    height: 16px;
    flex: 0 0 auto;
    background: #ece8df;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-special-action {
    min-width: 176px;
    border: 0;
    background: transparent;
    justify-content: space-between;
    cursor: pointer;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-special-icon,
  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-special-chevron {
    width: 14px;
    height: 14px;
    color: #666262;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-special-copy {
    color: #211913;
    font-size: 12px;
    line-height: 16px;
    font-weight: 500;
    white-space: nowrap;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-desktop-rail {
    min-width: 0;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-desktop-rail-sticky {
    position: sticky;
    top: 24px;
    display: grid;
    align-content: start;
    gap: 12px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-savings-card,
  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-wallet-card,
  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-gst-card,
  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-bill-breakdown {
    padding: 14px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-savings-card {
    padding: 0;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-coupon-entry-row,
  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-coupon-applied-row {
    align-items: center;
    padding: 0;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-coupon-link-row {
    white-space: nowrap;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-coupon-suggestion {
    border-radius: 8px;
    padding: 8px 10px;
    align-items: flex-start;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-coupon-suggestion button {
    align-self: center;
    min-height: 26px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-wallet-row {
    gap: 10px;
    padding-top: 10px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-wallet-login {
    min-height: 40px;
    border-radius: 12px;
    padding: 0 18px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-summary-checkout {
    padding: 14px;
    display: grid;
    gap: 12px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-summary-checkout .storefront-cart-address-row {
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: start;
    gap: 10px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-summary-checkout .storefront-cart-address-icon {
    width: 18px;
    height: 18px;
    margin-top: 1px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-summary-checkout .storefront-cart-payment-row {
    grid-template-columns: minmax(0, 1fr) 176px;
    gap: 10px;
    align-items: stretch;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-summary-checkout .storefront-cart-payment-row--single-cta {
    grid-template-columns: minmax(0, 1fr);
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-summary-checkout .storefront-cart-payment-row--summary {
    grid-template-columns: minmax(88px, max-content) minmax(196px, 1fr);
    gap: 24px;
    align-items: center;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-summary-checkout .storefront-cart-payment-summary {
    min-width: 88px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-summary-checkout .storefront-cart-payment-toggle {
    min-height: 64px;
    border-radius: 12px;
    padding: 10px 12px;
    align-content: center;
    gap: 2px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-summary-checkout .storefront-cart-payment-summary {
    gap: 4px;
    min-height: 52px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-summary-checkout .storefront-cart-payment-summary-label {
    font-size: 11px;
    line-height: 14px;
    color: var(--sf-color-text-tertiary);
    font-weight: 300;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-summary-checkout .storefront-cart-payment-summary-amount {
    font-size: 16px;
    line-height: 20px;
    color: var(--sf-color-text-primary);
    font-weight: 500;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-summary-checkout .storefront-cart-payment-label {
    font-size: 11px;
    line-height: 14px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-summary-checkout .storefront-cart-payment-method {
    font-size: 12px;
    line-height: 16px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-summary-checkout .storefront-cart-payment-channel {
    font-size: 11px;
    line-height: 14px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-summary-checkout .storefront-cart-payment-cta {
    min-width: 0;
    min-height: 52px;
    border-radius: 12px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-bill-breakdown {
    gap: 10px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-payable-row {
    padding-top: 10px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-gst-toggle {
    gap: 10px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-rail-savings-banner {
    margin: 0;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-desktop-recommendations {
    margin-top: 20px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-drawer-footer {
    bottom: 0;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-empty-state {
    max-width: 360px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-empty-slot-stack {
    gap: 40px;
  }
}

.storefront-mobile-cart-header {
  position: sticky;
  top: 0;
  z-index: 5;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  align-items: center;
  min-height: 52px;
  padding: 6px 16px;
  background: var(--sf-color-background-neutral-base);
  box-shadow: 0 1px 0 var(--sf-color-border-subtle);
}

.storefront-mobile-cart-header-slot {
  display: flex;
  align-items: center;
}

.storefront-mobile-cart-header-slot.is-leading {
  justify-content: flex-start;
}

.storefront-mobile-cart-header-slot.is-trailing {
  justify-content: flex-end;
}

.storefront-mobile-cart-header-action {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--sf-color-text-neutral-primary);
}

.storefront-mobile-cart-header-action svg {
  width: 20px;
  height: 20px;
}

.storefront-mobile-cart-header-wishlist.is-badged {
  overflow: visible;
}

.storefront-mobile-cart-header-badge {
  position: absolute;
  top: -4px;
  right: -7px;
  min-width: 14px;
  height: 14px;
  border-radius: 999px;
  background: var(--sf-color-text-neutral-primary);
  color: var(--sf-color-background-neutral-base);
  padding: 0 4px;
  font-family: var(--sf-ref-type-family-lexend);
  font-size: 8px;
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: 14px;
  text-align: center;
}

.storefront-mobile-cart-header-title {
  margin: 0;
  justify-self: center;
  color: var(--sf-color-text-neutral-primary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-medium);
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: var(--sf-ref-type-line-height-20);
}

.storefront-mobile-cart-item {
  display: grid;
  gap: 10px;
  padding: 12px 16px;
  background: var(--sf-color-background-neutral-base);
  box-shadow: inset 0 -1px 0 var(--sf-color-border-subtle);
}

.storefront-mobile-cart-gift-item {
  display: grid;
  gap: 10px;
  padding: 12px 16px;
  background:
    linear-gradient(90deg, rgb(255 241 208 / 100%) 0%, rgb(255 241 208 / 0%) 100%),
    var(--sf-color-background-neutral-base);
  box-shadow: inset 0 -1px 0 var(--sf-color-border-subtle);
}

.storefront-mobile-cart-item-main {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}

.storefront-mobile-cart-item-media {
  width: 92px;
  height: 106px;
  overflow: hidden;
  border-radius: 8px;
  background: var(--sf-color-background-neutral-light-gray);
}

.storefront-mobile-cart-item-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.storefront-mobile-cart-item-copy {
  position: relative;
  display: grid;
  gap: 6px;
  min-width: 0;
  padding-top: 6px;
  padding-bottom: 6px;
}

.storefront-mobile-cart-gift-copy {
  display: grid;
  align-content: start;
  gap: 6px;
  min-width: 0;
  padding-top: 6px;
  padding-bottom: 6px;
}

.storefront-mobile-cart-item-top {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 16px;
  gap: 12px;
  align-items: start;
}

.storefront-mobile-cart-item-title {
  margin: 0;
  color: var(--sf-color-text-neutral-primary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-caption);
  font-weight: var(--sf-ref-type-weight-light);
  line-height: var(--sf-ref-type-line-height-16);
}

.storefront-mobile-cart-item-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--sf-color-text-neutral-secondary);
}

.storefront-mobile-cart-item-remove svg,
.storefront-mobile-cart-sheet-close svg {
  width: 16px;
  height: 16px;
}

.storefront-mobile-cart-item-variant {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  width: 98px;
  height: 16px;
  padding: 4px 8px;
  border: 0;
  border-radius: 13px;
  background: var(--sf-color-background-neutral-light-gray);
  color: var(--sf-color-text-neutral-secondary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-caption);
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: var(--sf-ref-type-line-height-16);
}

.storefront-mobile-cart-item-variant-label {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.storefront-mobile-cart-item-low-stock,
.storefront-mobile-cart-item-variant-help,
.storefront-mobile-cart-item-warning,
.storefront-mobile-cart-gift-badge,
.storefront-mobile-cart-gift-label,
.storefront-mobile-cart-item-status,
.storefront-mobile-cart-item-gift-wrap {
  margin: 0;
  width: fit-content;
  font-family: var(--sf-ref-type-family-lexend);
}

.storefront-mobile-cart-item-low-stock,
.storefront-mobile-cart-item-variant-help {
  font-size: var(--sf-ref-type-size-small);
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: var(--sf-ref-type-line-height-14);
}

.storefront-mobile-cart-item-low-stock {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--sf-color-text-decorative-peach-primary, #f2694e);
  font-style: normal;
}

.storefront-mobile-cart-item-low-stock-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 12px;
  height: 12px;
  flex-shrink: 0;
}

.storefront-mobile-cart-item-variant-help {
  color: var(--sf-color-input-success);
}

.storefront-mobile-cart-item-variant-icon {
  display: inline-flex;
  width: 12px;
  height: 12px;
  flex: 0 0 auto;
}

.storefront-mobile-cart-item-price {
  display: inline-flex;
  gap: 6px;
  align-items: center;
}

.storefront-mobile-cart-item-price p,
.storefront-mobile-cart-item-price span {
  margin: 0;
}

.storefront-mobile-cart-item-price p {
  color: var(--sf-color-text-neutral-primary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-regular);
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: var(--sf-ref-type-line-height-20);
}

.storefront-mobile-cart-item-price span {
  color: var(--sf-color-text-neutral-tertiary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-caption);
  font-weight: var(--sf-ref-type-weight-light);
  line-height: var(--sf-ref-type-line-height-16);
  text-decoration: line-through;
}

.storefront-mobile-cart-item-price-stack {
  display: grid;
  justify-items: end;
  gap: 6px;
  min-height: 42px;
  align-content: start;
}

.storefront-mobile-cart-item-discount-pill.is-placeholder {
  visibility: hidden;
  pointer-events: none;
}

.storefront-mobile-cart-item-return {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--sf-color-text-neutral-tertiary);
}

.storefront-mobile-cart-item-return p {
  margin: 0;
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-caption);
  font-weight: var(--sf-ref-type-weight-light);
  line-height: var(--sf-ref-type-line-height-16);
}

.storefront-mobile-cart-item-return svg {
  width: 12px;
  height: 12px;
}

.storefront-mobile-cart-item-status {
  display: inline-flex;
  align-items: center;
  min-height: 20px;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 10px;
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: 14px;
}

.storefront-mobile-cart-item-status-success {
  background: #e9f7f3;
  color: #27ad86;
}

.storefront-mobile-cart-item-status-error {
  background: #fcebe9;
  color: #dd381f;
}

.storefront-mobile-cart-item-status-neutral {
  background: var(--sf-color-background-neutral-light-gray);
  color: var(--sf-color-text-neutral-secondary);
}

.storefront-mobile-cart-item-warning {
  color: var(--sf-color-text-error-primary);
  font-size: 10px;
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: 14px;
}

.storefront-mobile-cart-item-gift-wrap {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 22px;
  padding: 2px 8px;
  border-radius: 10px;
  background: #f1eaed;
  color: #772b4d;
  font-size: 10px;
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: 14px;
}

.storefront-mobile-cart-item-gift-wrap-copy {
  display: inline-flex;
  align-items: center;
  gap: 4px;
}

.storefront-mobile-cart-item-gift-wrap-copy .storefront-cart-item-inline-icon {
  width: 12px;
  height: 12px;
  color: #772b4d;
}

.storefront-mobile-cart-item-gift-wrap-remove {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  background: transparent;
  color: inherit;
  margin-left: 2px;
  padding-left: 10px;
  border-left: 1px solid #c8b5c1;
  font-size: 12px;
  line-height: 1;
  cursor: pointer;
}

.storefront-mobile-cart-item-gift-wrap-remove:disabled {
  cursor: default;
  opacity: 0.6;
}

.storefront-mobile-cart-item-quantity {
  position: absolute;
  right: 0;
  bottom: -36px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 34px;
  padding: 0 8px;
  border: 1px solid var(--sf-color-border-subtle);
  border-radius: 40px;
  background: var(--sf-color-background-neutral-base);
  box-shadow: 0 1px 2px var(--sf-ext-color-shadow-base);
}

.storefront-mobile-cart-item-quantity button,
.storefront-mobile-cart-item-quantity span {
  width: 20px;
  height: 20px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--sf-color-text-neutral-primary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-regular);
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: var(--sf-ref-type-line-height-20);
  text-align: center;
}

.storefront-mobile-cart-item-quantity button:disabled {
  color: var(--sf-color-text-neutral-tertiary);
}

.storefront-mobile-cart-item-delivery {
  margin: 0;
  color: var(--sf-color-text-neutral-tertiary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-caption);
  font-weight: var(--sf-ref-type-weight-light);
  line-height: var(--sf-ref-type-line-height-16);
  text-align: left;
}

.storefront-mobile-cart-gift-badge {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 4px 8px;
  border-radius: 999px;
  background: #ffe3a2;
  color: var(--sf-color-text-neutral-primary);
  font-size: var(--sf-ref-type-size-caption);
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: var(--sf-ref-type-line-height-16);
}

.storefront-mobile-cart-gift-label {
  color: var(--sf-color-text-neutral-primary);
  font-size: var(--sf-ref-type-size-regular);
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: var(--sf-ref-type-line-height-20);
}

.storefront-mobile-cart-post-items {
  display: grid;
  gap: 12px;
  padding: 16px;
  background: var(--sf-color-background-neutral-light-gray);
}

.storefront-mobile-cart-special-row {
  display: flex;
  align-items: stretch;
  border: 1px solid var(--sf-color-border-subtle);
  border-radius: 16px;
  background: var(--sf-color-background-neutral-base);
  overflow: hidden;
}

.storefront-mobile-cart-special-card {
  display: flex;
  align-items: center;
  gap: 8px;
  flex: 1 1 0;
  min-height: 48px;
  padding: 10px 12px;
  border: 0;
  background: transparent;
  color: var(--sf-color-text-neutral-primary);
}

button.storefront-mobile-cart-special-card {
  width: auto;
  text-align: left;
  cursor: pointer;
}

.storefront-mobile-cart-special-card.is-secondary {
  flex: 0 0 auto;
  min-width: 136px;
  justify-content: space-between;
  border-left: 1px solid var(--sf-color-border-subtle);
}

.storefront-mobile-cart-special-icon,
.storefront-mobile-cart-special-chevron {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.storefront-mobile-cart-special-icon svg,
.storefront-mobile-cart-special-chevron svg {
  width: 16px;
  height: 16px;
}

.storefront-mobile-cart-special-copy {
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-regular);
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: var(--sf-ref-type-line-height-20);
}

.storefront-mobile-cart-special-card.is-secondary .storefront-mobile-cart-special-copy {
  color: var(--sf-color-text-neutral-secondary);
}

.storefront-cart-drawer.is-mobile:not(.is-standalone) .storefront-mobile-cart-special-row {
  margin-top: 8px;
  border-radius: 12px;
  background: transparent;
}

.storefront-cart-drawer.is-mobile:not(.is-standalone) .storefront-mobile-cart-special-card {
  padding: 0 14px;
  background: transparent;
}

.storefront-cart-drawer.is-mobile:not(.is-standalone) .storefront-mobile-cart-special-card.is-secondary {
  min-width: 126px;
  padding-left: 12px;
  padding-right: 12px;
  border-left: 1px solid #ece8df;
}

.storefront-cart-drawer.is-mobile:not(.is-standalone) .storefront-mobile-cart-special-copy {
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-drawer.is-mobile:not(.is-standalone) .storefront-mobile-cart-special-card.is-secondary .storefront-mobile-cart-special-copy {
  color: #666262;
}

.storefront-cart-drawer.is-mobile:not(.is-standalone) .storefront-mobile-cart-special-icon {
  width: 32px;
  height: 32px;
  flex: 0 0 auto;
}

.storefront-cart-drawer.is-mobile:not(.is-standalone) .storefront-mobile-cart-special-chevron {
  width: 20px;
  height: 20px;
}

.storefront-cart-drawer.is-mobile:not(.is-standalone) .storefront-mobile-cart-special-chevron svg {
  width: 12px;
  height: 12px;
}

.storefront-cart-gift-wrap-sheet {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.storefront-cart-gift-wrap-header {
  align-items: flex-start;
}

.storefront-cart-gift-wrap-hero {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-right: 16px;
}

.storefront-cart-gift-wrap-hero-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: linear-gradient(135deg, #fff3c2 0%, #ffe08a 100%);
  color: #9d6b00;
}

.storefront-cart-gift-wrap-hero-icon svg {
  width: 22px;
  height: 22px;
}

.storefront-cart-gift-wrap-list {
  display: grid;
  gap: 12px;
  max-height: min(48vh, 380px);
  padding: 0 20px;
  overflow: auto;
}

.storefront-cart-gift-wrap-item {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  padding-bottom: 12px;
  border-bottom: 1px solid var(--sf-color-border-subtle);
}

.storefront-cart-gift-wrap-item.is-disabled .storefront-cart-gift-wrap-item-media,
.storefront-cart-gift-wrap-item.is-disabled .storefront-cart-gift-wrap-item-copy > p:first-child {
  opacity: 0.35;
}

.storefront-cart-gift-wrap-item:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.storefront-cart-gift-wrap-item-media {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 64px;
  height: 74px;
  overflow: hidden;
  border-radius: 12px;
  background: #f7f1d4;
}

.storefront-cart-gift-wrap-item-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.storefront-cart-gift-wrap-item-copy {
  display: grid;
  gap: 10px;
}

.storefront-cart-gift-wrap-item-copy > p:first-child {
  margin: 0;
  color: var(--sf-color-text-neutral-primary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-regular);
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: var(--sf-ref-type-line-height-20);
}

.storefront-cart-gift-wrap-item-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--sf-color-text-neutral-primary);
  text-align: left;
  cursor: pointer;
}

.storefront-cart-gift-wrap-item-toggle:disabled {
  cursor: default;
}

.storefront-cart-gift-wrap-item-toggle-copy {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-regular);
  font-weight: var(--sf-ref-type-weight-regular);
  line-height: var(--sf-ref-type-line-height-20);
}

.storefront-cart-gift-wrap-item-toggle strong,
.storefront-cart-gift-wrap-item-unavailable {
  margin: 0;
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-regular);
  line-height: var(--sf-ref-type-line-height-20);
}

.storefront-cart-gift-wrap-item-toggle strong {
  font-weight: var(--sf-ref-type-weight-semibold);
}

.storefront-cart-gift-wrap-item-unavailable {
  color: var(--sf-color-text-neutral-primary);
  font-weight: var(--sf-ref-type-weight-medium);
}

.storefront-cart-gift-wrap-footer {
  padding: 0 20px 20px;
}

.storefront-cart-gift-wrap-confirm {
  width: 100%;
  min-height: 48px;
  border: 0;
  border-radius: 14px;
  background: #f6c94c;
  color: #2f2200;
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-regular);
  font-weight: var(--sf-ref-type-weight-semibold);
  line-height: var(--sf-ref-type-line-height-20);
  cursor: pointer;
}

.storefront-cart-gift-wrap-confirm:disabled {
  opacity: 0.65;
  cursor: default;
}

.storefront-mobile-cart-trust-strip {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0;
  padding: 12px;
  border: 1px solid var(--sf-color-border-subtle);
  border-radius: 12px;
  background: var(--sf-color-background-neutral-base);
}

.storefront-mobile-cart-trust-item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  color: var(--sf-color-text-neutral-secondary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: 10px;
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: 14px;
  text-align: left;
}

.storefront-mobile-cart-trust-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  color: var(--sf-color-text-neutral-secondary);
}

.storefront-mobile-cart-trust-icon svg {
  width: 20px;
  height: 20px;
}

.storefront-cart-drawer.is-mobile:not(.is-standalone) .storefront-mobile-cart-trust-strip {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.storefront-mobile-cart-trust-mask {
  display: block;
  width: 20px;
  height: 20px;
  background: currentColor;
  mask-position: center;
  mask-repeat: no-repeat;
  mask-size: 20px 20px;
  -webkit-mask-position: center;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-size: 20px 20px;
}

.storefront-mobile-cart-trust-mask.is-support {
  mask-image: url("https://www.figma.com/api/mcp/asset/1cf81568-acc5-481f-9ede-2e2830d997cb");
  -webkit-mask-image: url("https://www.figma.com/api/mcp/asset/1cf81568-acc5-481f-9ede-2e2830d997cb");
}

.storefront-mobile-cart-trust-mask.is-secure {
  mask-image: url("https://www.figma.com/api/mcp/asset/226032aa-0e1d-4801-af65-4e579c326310");
  -webkit-mask-image: url("https://www.figma.com/api/mcp/asset/226032aa-0e1d-4801-af65-4e579c326310");
}

.storefront-mobile-cart-trust-mask.is-returns {
  mask-image: url("https://www.figma.com/api/mcp/asset/8f0e2bb8-32e8-41e1-9329-a714bee24d7e");
  -webkit-mask-image: url("https://www.figma.com/api/mcp/asset/8f0e2bb8-32e8-41e1-9329-a714bee24d7e");
}

.storefront-mobile-cart-trust-copy {
  display: grid;
  gap: 0;
  white-space: nowrap;
}

.storefront-mobile-cart-trust-copy span {
  display: block;
}

.storefront-mobile-cart-sheet-layer {
  position: fixed;
  inset: 0;
  z-index: 30;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}

.storefront-mobile-cart-sheet-dismiss {
  position: absolute;
  inset: 0;
  border: 0;
  background: rgb(0 0 0 / 32%);
}

.storefront-mobile-cart-sheet {
  position: relative;
  width: 100%;
  max-width: none;
  max-height: min(88vh, 720px);
  overflow: auto;
  border-radius: 20px 20px 0 0;
  background: var(--sf-color-background-neutral-base);
  box-shadow: 0 -4px 8px var(--sf-ext-color-shadow-base);
}

.storefront-mobile-cart-sheet-handle {
  width: 32px;
  height: 4px;
  margin: 16px auto 0;
  border-radius: 10px;
  background: var(--sf-color-background-neutral-mid-gray);
}

.storefront-mobile-cart-sheet-close {
  position: absolute;
  top: 12px;
  right: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--sf-color-text-neutral-secondary);
}

.storefront-mobile-cart-remove-sheet {
  display: grid;
  gap: 24px;
  padding: 24px 16px;
}

.storefront-mobile-cart-remove-sheet-title {
  margin: 0;
  color: var(--sf-color-text-neutral-primary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-medium);
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: var(--sf-ref-type-line-height-20);
}

.storefront-mobile-cart-remove-sheet-body {
  display: grid;
  grid-template-columns: 80px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}

.storefront-mobile-cart-remove-sheet-media {
  width: 80px;
  height: 92px;
  overflow: hidden;
  border-radius: 6px;
  background: var(--sf-color-background-neutral-light-gray);
}

.storefront-mobile-cart-remove-sheet-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.storefront-mobile-cart-remove-sheet-body p {
  margin: 0;
  color: var(--sf-color-text-neutral-primary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-regular);
  font-weight: var(--sf-ref-type-weight-light);
  line-height: var(--sf-ref-type-line-height-20);
}

.storefront-mobile-cart-remove-sheet-actions {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 16px;
  align-items: center;
}

.storefront-mobile-cart-remove-sheet-actions button,
.storefront-mobile-cart-variant-footer button {
  min-height: 36px;
  padding: 8px 16px;
  border: 0;
  border-radius: 8px;
  background: transparent;
  color: var(--sf-color-text-error-primary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-regular);
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: var(--sf-ref-type-line-height-20);
}

.storefront-mobile-cart-remove-sheet-actions button.is-primary,
.storefront-mobile-cart-variant-footer button {
  background: var(--sf-color-background-brand-main);
  color: var(--sf-color-text-neutral-primary);
}

.storefront-mobile-cart-remove-sheet-actions button:disabled,
.storefront-mobile-cart-variant-footer button:disabled {
  opacity: 0.45;
}

.storefront-cart-remove-layer.is-desktop {
  align-items: center;
  justify-items: center;
}

.storefront-cart-remove-modal {
  position: relative;
  z-index: 1;
  width: min(368px, calc(100vw - 32px));
  border-radius: 24px;
  background: var(--sf-color-background-neutral-base);
  box-shadow: 0 20px 48px rgb(33 25 19 / 18%);
  padding: 24px;
  display: grid;
  gap: 24px;
}

.storefront-cart-remove-modal-close {
  position: absolute;
  top: 24px;
  right: 24px;
  width: 20px;
  height: 20px;
  border: 0;
  background: transparent;
  color: var(--sf-color-icon-neutral-light-gray);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  cursor: pointer;
}

.storefront-cart-remove-modal-close svg {
  width: 20px;
  height: 20px;
}

.storefront-cart-remove-modal .storefront-mobile-cart-remove-sheet-title,
.storefront-cart-remove-modal .storefront-mobile-cart-remove-sheet-body,
.storefront-cart-remove-modal .storefront-mobile-cart-remove-sheet-actions {
  padding: 0;
}

.storefront-cart-remove-modal-actions button {
  min-height: 44px;
}

.storefront-mobile-cart-variant-sheet {
  display: grid;
  width: 100%;
  max-width: none;
}

.storefront-mobile-cart-variant-content {
  display: grid;
  gap: 16px;
  padding: 24px 16px 16px;
}

.storefront-mobile-cart-variant-media-row {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 200px;
  gap: 12px;
  overflow-x: auto;
}

.storefront-mobile-cart-variant-media {
  width: 200px;
  height: 200px;
  overflow: hidden;
  border-radius: 4px;
  background: var(--sf-color-background-neutral-light-gray);
}

.storefront-mobile-cart-variant-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.storefront-mobile-cart-variant-copy {
  display: grid;
  gap: 2px;
}

.storefront-mobile-cart-variant-copy p,
.storefront-mobile-cart-variant-copy span,
.storefront-mobile-cart-variant-price p,
.storefront-mobile-cart-variant-price span,
.storefront-mobile-cart-variant-price small,
.storefront-mobile-cart-variant-options-copy span,
.storefront-mobile-cart-variant-options-copy strong,
.storefront-mobile-cart-variant-option span,
.storefront-mobile-cart-variant-option small,
.storefront-mobile-cart-variant-state {
  margin: 0;
}

.storefront-mobile-cart-variant-copy p {
  color: var(--sf-color-text-neutral-primary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-caption);
  font-weight: var(--sf-ref-type-weight-light);
  line-height: var(--sf-ref-type-line-height-16);
}

.storefront-mobile-cart-variant-copy span {
  color: var(--sf-color-text-neutral-tertiary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-caption);
  font-weight: var(--sf-ref-type-weight-light);
  line-height: var(--sf-ref-type-line-height-16);
}

.storefront-mobile-cart-variant-price {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.storefront-mobile-cart-variant-price p {
  color: var(--sf-color-text-neutral-primary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-large);
  font-weight: var(--sf-ref-type-weight-bold);
  line-height: var(--sf-ref-type-line-height-24);
}

.storefront-mobile-cart-variant-price span {
  color: var(--sf-color-text-neutral-tertiary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-regular);
  font-weight: var(--sf-ref-type-weight-light);
  line-height: var(--sf-ref-type-line-height-20);
}

.storefront-mobile-cart-variant-price small {
  padding: 2px 8px;
  border-radius: 20px;
  background: var(--sf-color-background-offer-main);
  color: var(--sf-color-text-neutral-light);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-regular);
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: var(--sf-ref-type-line-height-20);
}

.storefront-mobile-cart-variant-divider {
  height: 1px;
  background: var(--sf-color-border-subtle);
}

.storefront-mobile-cart-variant-options-copy {
  display: inline-flex;
  gap: 4px;
  align-items: center;
}

.storefront-mobile-cart-variant-options-copy span {
  color: var(--sf-color-text-neutral-tertiary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-regular);
  font-weight: var(--sf-ref-type-weight-light);
  line-height: var(--sf-ref-type-line-height-20);
}

.storefront-mobile-cart-variant-options-copy strong {
  color: var(--sf-color-text-neutral-tertiary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-regular);
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: var(--sf-ref-type-line-height-20);
}

.storefront-mobile-cart-variant-options {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.storefront-mobile-cart-variant-option {
  display: grid;
  gap: 0;
  min-height: 36px;
  padding: 4px 16px;
  border: 1px solid var(--sf-color-border-subtle);
  border-radius: 40px;
  background: var(--sf-color-background-neutral-base);
  color: var(--sf-color-text-neutral-primary);
  text-align: left;
}

.storefront-mobile-cart-variant-option span {
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-regular);
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: var(--sf-ref-type-line-height-20);
}

.storefront-mobile-cart-variant-option small {
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-caption);
  font-weight: var(--sf-ref-type-weight-light);
  line-height: var(--sf-ref-type-line-height-16);
}

.storefront-mobile-cart-variant-option.is-selected {
  border-color: var(--sf-color-text-neutral-primary);
}

.storefront-mobile-cart-variant-option.is-disabled {
  background: var(--sf-color-background-neutral-mid-gray);
  color: var(--sf-color-text-neutral-tertiary);
  text-decoration: line-through;
}

.storefront-mobile-cart-variant-footer {
  position: sticky;
  bottom: 0;
  padding: 8px 16px;
  background: var(--sf-color-background-neutral-base);
  box-shadow: 0 -4px 8px var(--sf-ext-color-shadow-base);
}

.storefront-mobile-cart-variant-footer button {
  width: 100%;
  min-height: 48px;
}

.storefront-mobile-cart-variant-state {
  padding: 32px 16px 24px;
  color: var(--sf-color-text-neutral-primary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: var(--sf-ref-type-size-regular);
  font-weight: var(--sf-ref-type-weight-light);
  line-height: var(--sf-ref-type-line-height-20);
}

.storefront-mobile-cart-variant-state.is-error {
  color: var(--sf-color-text-error-primary);
}

.storefront-cart-recommended-section {
  display: grid;
  gap: 22px;
  padding: 24px;
  border-radius: 24px;
  background: color-mix(in srgb, var(--sf-color-input-disabled) 82%, var(--sf-color-surface) 18%);
  min-width: 0;
  max-width: 100%;
  overflow-x: hidden;
}

.storefront-cart-recommended-header {
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.storefront-cart-recommended-title {
  margin: 0;
  min-width: 0;
  color: var(--sf-color-text-primary);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: clamp(1.5rem, 1.3rem + 0.8vw, 2rem);
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: 1;
}

.storefront-cart-recommended-pill {
  margin: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 22px;
  border-radius: 999px;
  background: var(--sf-color-cta-warning-main);
  color: var(--sf-color-text-neutral-light);
  font-family: var(--sf-ref-type-family-lexend);
  font-size: 1rem;
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: 1;
  white-space: nowrap;
  flex: 0 0 auto;
}

.storefront-cart-recommended-rail::-webkit-scrollbar {
  display: none;
}

.storefront-cart-recommended-rail {
  display: flex;
  gap: 16px;
  margin: 0;
  padding: 2px 2px 8px 0;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow-x: auto;
  overflow-y: hidden;
  list-style: none;
  scroll-snap-type: x proximity;
  scroll-padding-inline: 24px;
  scrollbar-width: none;
  overscroll-behavior-x: contain;
}

.storefront-cart-recommended-item {
  flex: 0 0 172px;
  scroll-snap-align: start;
}

.storefront-cart-recommended-card {
  display: grid;
  grid-template-rows: auto 1fr;
  gap: 0;
  height: 100%;
  border: 0;
  border-radius: 16px;
  background: var(--sf-color-surface);
  box-shadow: 0 8px 20px color-mix(in srgb, var(--sf-color-text-primary) 8%, transparent);
  overflow: hidden;
}

.storefront-cart-recommended-card.sf-product-card {
  gap: 0;
}

.storefront-cart-recommended-card .sf-product-card-media,
.storefront-cart-recommended-card .sf-product-card-image-link,
.storefront-cart-recommended-card .sf-product-card-image,
.storefront-cart-recommended-card .sf-product-card-image-placeholder {
  border-radius: 16px 16px 0 0;
}

.storefront-cart-recommended-card .sf-product-card-media {
  aspect-ratio: 172 / 200;
  background: color-mix(in srgb, var(--sf-color-input-disabled) 72%, var(--sf-color-surface) 28%);
}

.storefront-cart-recommended-card .sf-product-card-body {
  display: grid;
  align-content: start;
  gap: 14px;
  padding: 0 14px 14px;
}

.storefront-cart-recommended-card .sf-product-card-content {
  position: relative;
  gap: 10px;
}

.storefront-cart-recommended-card .sf-product-card-meta-row {
  display: block;
  padding-top: 18px;
}

.storefront-cart-recommended-card .sf-product-card-copy {
  gap: 2px;
}

.storefront-cart-recommended-card .sf-product-card-title {
  display: -webkit-box;
  min-height: 34px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: normal;
  color: var(--sf-color-text-primary);
  font-size: 13px;
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: 17px;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.storefront-cart-recommended-card .sf-product-card-subtitle {
  margin-top: 2px;
  min-height: 0;
  color: var(--sf-color-footer-muted);
  font-size: 12px;
  font-weight: var(--sf-ref-type-weight-light);
  line-height: 15px;
  -webkit-line-clamp: 1;
}

.storefront-cart-recommended-card .sf-product-card-wishlist-button {
  position: absolute;
  top: -24px;
  right: 0;
  width: 48px;
  height: 48px;
  border: 1px solid var(--sf-color-input-disabled);
  border-radius: 999px;
  background: var(--sf-color-surface);
  box-shadow: 0 4px 12px color-mix(in srgb, var(--sf-color-text-primary) 10%, transparent);
}

.storefront-cart-recommended-card .sf-product-card-wishlist-button svg {
  width: 20px;
  height: 20px;
}

.storefront-cart-recommended-card .sf-product-card-ribbon {
  top: 12px;
  left: 12px;
  z-index: 1;
  padding: 0 12px 0 10px;
  font-size: 12px;
  font-weight: var(--sf-ref-type-weight-bold);
  line-height: 18px;
}

.storefront-cart-recommended-card .sf-product-card-attribute-pill {
  padding: 4px 8px;
  border-radius: 8px;
  font-size: 12px;
  line-height: 16px;
  font-weight: 600;
}

.storefront-cart-recommended-card .sf-product-card-price-block {
  gap: 8px;
}

.storefront-cart-recommended-card .sf-product-card-price-row {
  gap: 6px;
  align-items: baseline;
}

.storefront-cart-recommended-card .sf-product-card-price {
  color: var(--sf-color-text-primary);
  font-size: 16px;
  font-weight: 700;
  line-height: 20px;
}

.storefront-cart-recommended-card .sf-product-card-compare-price {
  color: var(--sf-color-footer-muted);
  font-size: 11px;
  font-weight: var(--sf-ref-type-weight-light);
  line-height: 14px;
}

.storefront-cart-recommended-card .sf-product-card-discount-pill {
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  font-size: 11px;
  line-height: 14px;
}

.storefront-cart-recommended-card .sf-product-card-discount-pill span:first-child {
  font-size: 13px;
  line-height: 16px;
}

.storefront-cart-recommended-card .sf-product-card-cart-button {
  min-height: 40px;
  border: 1px solid var(--sf-color-text-primary);
  border-radius: 10px;
  background: var(--sf-color-surface);
  color: var(--sf-color-text-primary);
  font-size: 14px;
  font-weight: var(--sf-ref-type-weight-medium);
  line-height: 18px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-recommended-title {
  font-size: 1.5rem;
}

.storefront-cart-drawer.is-mobile .storefront-cart-recommended-pill {
  min-height: 38px;
  padding: 0 18px;
  font-size: 0.9375rem;
}

.storefront-cart-drawer.is-mobile .storefront-cart-recommended-item {
  flex-basis: 162px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-recommended-card .sf-product-card-media {
  aspect-ratio: 162 / 196;
}

.storefront-cart-drawer.is-mobile .storefront-cart-recommended-card .sf-product-card-body {
  gap: 12px;
  padding: 0 12px 12px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-recommended-card .sf-product-card-title,
.storefront-cart-drawer.is-mobile .storefront-cart-recommended-card .sf-product-card-subtitle {
  line-height: 16px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-recommended-card .sf-product-card-title {
  font-size: 12px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-recommended-card .sf-product-card-price {
  font-size: 15px;
  line-height: 18px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-recommended-card .sf-product-card-compare-price {
  font-size: 10px;
  line-height: 12px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-recommended-card .sf-product-card-cart-button {
  min-height: 38px;
  font-size: 13px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-recommended-card .sf-product-card-wishlist-button {
  top: -22px;
  width: 44px;
  height: 44px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-recommended-card .sf-product-card-wishlist-button svg {
  width: 18px;
  height: 18px;
}

@media (min-width: 1024px) {
  .storefront-cart-drawer.is-desktop .storefront-cart-recommended-section {
    gap: 20px;
    padding: 24px;
  }

  .storefront-cart-drawer.is-desktop .storefront-cart-recommended-item {
    flex-basis: 172px;
  }

  .storefront-cart-drawer.is-desktop .storefront-cart-recommended-card .sf-product-card-body {
    padding: 0 14px 14px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-recommended-section {
    gap: 24px;
    padding: 28px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-recommended-item {
    flex-basis: 208px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-recommended-card .sf-product-card-media {
    aspect-ratio: 208 / 244;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-recommended-card .sf-product-card-body {
    padding: 0 16px 16px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-recommended-card .sf-product-card-title {
    min-height: 40px;
    font-size: 14px;
    line-height: 18px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-recommended-card .sf-product-card-price {
    font-size: 18px;
    line-height: 22px;
  }

  .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-recommended-card .sf-product-card-cart-button {
    min-height: 42px;
    font-size: 15px;
  }
}

/* Free gift state visual alignment overrides (keep at file end to win cascade). */
.storefront-cart-drawer .storefront-cart-free-gift-items {
  gap: 0;
  border: 1px solid #efe4cf;
  border-radius: 12px;
  background: #f8f2e4;
  overflow: hidden;
}

.storefront-cart-drawer .storefront-cart-free-gift-items .storefront-cart-item-card.is-free-gift {
  border: 0;
  border-radius: 0;
  box-shadow: none;
  background: transparent;
  padding: 10px 12px;
}

.storefront-cart-drawer
  .storefront-cart-free-gift-items
  .storefront-cart-item-card.is-free-gift
  + .storefront-cart-item-card.is-free-gift {
  border-top: 1px solid #eadfc9;
}

.storefront-cart-drawer .storefront-cart-free-gift-items + .storefront-cart-paid-items {
  margin-top: 12px;
}

.storefront-cart-drawer .storefront-mobile-cart-gift-item {
  padding: 10px 12px;
  background: transparent;
  box-shadow: none;
}

.storefront-cart-drawer .storefront-mobile-cart-gift-item + .storefront-mobile-cart-gift-item {
  border-top: 1px solid #eadfc9;
}

.storefront-cart-drawer .storefront-mobile-cart-gift-item .storefront-mobile-cart-item-main {
  align-items: stretch;
  margin-left: 10px;
}

.storefront-cart-drawer .storefront-mobile-cart-gift-copy {
  align-content: space-between;
  align-self: stretch;
  min-height: 100%;
  gap: 6px;
  padding-top: 6px;
  padding-bottom: 6px;
}

.storefront-cart-drawer .storefront-mobile-cart-gift-label {
  margin-top: auto;
}

.storefront-cart-drawer .storefront-cart-item-card.is-free-gift .storefront-cart-item-copy {
  align-self: stretch;
  align-content: space-between;
  gap: 6px;
  padding-top: 6px;
  padding-bottom: 6px;
}

.storefront-cart-drawer .storefront-cart-item-card.is-free-gift .storefront-cart-item-main {
  align-items: stretch;
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser {
  gap: 10px;
  border: 1px solid #efeeea;
  border-radius: 12px;
  background: #fff;
  padding: 10px 12px 8px;
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser-main {
  grid-template-columns: 72px minmax(0, 1fr);
  gap: 10px;
  align-items: stretch;
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser-copy {
  align-self: stretch;
  align-content: space-between;
  gap: 4px;
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser-copy p {
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser-copy small {
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
  letter-spacing: 0;
}

.storefront-cart-drawer .storefront-cart-free-gift-teaser-unlock-copy {
  padding-top: 8px;
  border-top: 1px solid #efeeea;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
  letter-spacing: 0;
}

.storefront-cart-drawer .storefront-cart-free-gift-ladder {
  position: relative;
  padding-top: 10px;
  border-top: 1px solid #efeeea;
}

.storefront-cart-drawer .storefront-cart-free-gift-ladder-list {
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
  gap: 8px;
  position: relative;
  z-index: 1;
}

.storefront-cart-drawer .storefront-cart-free-gift-ladder-step {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
}

.storefront-cart-drawer .storefront-cart-free-gift-ladder-node {
  width: 22px;
  height: 22px;
  border-radius: 999px;
  border: 1px solid #d8d4cb;
  background: #fff;
  color: #5d5349;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  line-height: 1;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-free-gift-ladder-node svg {
  width: 13px;
  height: 13px;
}

.storefront-cart-drawer .storefront-cart-free-gift-ladder-content {
  min-width: 0;
  display: grid;
  gap: 1px;
}

.storefront-cart-drawer .storefront-cart-free-gift-ladder-content > span {
  margin: 0;
  color: #211913;
}

.storefront-cart-drawer .storefront-cart-free-gift-ladder-content > span:first-child {
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-free-gift-ladder-content > span:nth-child(2) {
  font-size: 11px;
  line-height: 14px;
  font-weight: 400;
  color: #5d5349;
}

.storefront-cart-drawer .storefront-cart-free-gift-ladder-content > small {
  margin: 0;
  color: #85735f;
  font-size: 11px;
  line-height: 14px;
  font-weight: 500;
}

.storefront-cart-drawer .storefront-cart-free-gift-ladder-step.is-unlocked .storefront-cart-free-gift-ladder-node {
  background: #1f7a63;
  border-color: #1f7a63;
  color: #fff;
}

.storefront-cart-drawer .storefront-cart-free-gift-ladder-step.is-next .storefront-cart-free-gift-ladder-node {
  background: #211913;
  border-color: #211913;
  color: #fff;
}

.storefront-cart-drawer .storefront-cart-free-gift-ladder-step.is-next .storefront-cart-free-gift-ladder-content > small {
  color: #211913;
}

.storefront-cart-drawer.is-mobile .storefront-cart-free-gift-teaser-copy p {
  font-size: 12px;
  line-height: 16px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-free-gift-teaser-copy small {
  font-size: 16px;
  line-height: 30px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-free-gift-teaser-unlock-copy {
  font-size: 13px;
  line-height: 22px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-free-gift-ladder {
  padding-top: 8px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-free-gift-ladder-list {
  gap: 6px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-free-gift-ladder-step {
  grid-template-columns: 20px minmax(0, 1fr);
  gap: 6px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-free-gift-ladder-node {
  width: 20px;
  height: 20px;
  font-size: 10px;
}

.storefront-cart-drawer.is-mobile .storefront-cart-free-gift-ladder-content > span:first-child,
.storefront-cart-drawer.is-mobile .storefront-cart-free-gift-ladder-content > span:nth-child(2),
.storefront-cart-drawer.is-mobile .storefront-cart-free-gift-ladder-content > small {
  font-size: 10px;
  line-height: 13px;
}

@media (max-width: 409.98px) {
  .storefront-cart-sheet-form-grid,
  .storefront-cart-address-sheet-form-grid {
    grid-template-columns: repeat(1, minmax(0, 1fr));
  }
}

/* Cart page desktop fidelity overrides (scoped + end-of-file so they beat legacy cart cascade). */
@media (min-width: 1024px) {
  body.storefront-cart-page .site-header-desktop {
    display: block !important;
  }

  body.storefront-cart-page .page-shell {
    padding-top: 18px !important;
  }

  body.storefront-cart-page .desktop-site-header-row {
    width: min(1168px, calc(100% - 56px)) !important;
  }

  body.storefront-cart-page .desktop-site-header-row-top {
    min-height: 56px !important;
    column-gap: 20px !important;
    padding-top: 4px !important;
    padding-bottom: 4px !important;
  }

  body.storefront-cart-page .desktop-site-header-search-slot {
    max-width: 560px !important;
  }

  body.storefront-cart-page .desktop-site-header-row-bottom {
    min-height: 34px !important;
    gap: 14px !important;
  }

  body.storefront-cart-page .storefront-cart-standalone-shell {
    width: min(1168px, calc(100% - 56px)) !important;
    margin: 26px auto 72px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop {
    min-height: auto !important;
    height: auto !important;
    overflow: visible !important;
    background: transparent !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-desktop-header {
    position: static !important;
    top: auto !important;
    z-index: auto !important;
    padding: 0 0 18px !important;
    margin: 0 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-desktop-header .storefront-cart-drawer-wishlist {
    display: inline-flex !important;
    align-self: center !important;
    justify-self: end !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-desktop-title {
    font-size: 18px !important;
    line-height: 24px !important;
    font-weight: 500 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-drawer-body {
    overflow: visible !important;
    overflow-x: clip !important;
    gap: 0 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-desktop-layout {
    grid-template-columns: minmax(0, 1fr) 360px !important;
    gap: 22px !important;
    align-items: start !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-desktop-main {
    gap: 0 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-items,
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-item-group {
    gap: 0 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-card {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 12px 0 16px !important;
    border-bottom: 1px solid #e9e6df !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-item-group > .storefront-cart-standalone-item-card:last-child {
    border-bottom-color: transparent !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-grid {
    grid-template-columns: 86px minmax(0, 1fr) 144px !important;
    grid-template-areas: "media info actions" !important;
    column-gap: 16px !important;
    row-gap: 8px !important;
    align-items: start !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-grid > * {
    min-width: 0 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-actions {
    grid-area: actions !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    justify-content: flex-start !important;
    gap: 8px !important;
    min-width: 0 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-actions > .storefront-cart-standalone-item-remove,
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-actions > .storefront-cart-standalone-item-price,
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-actions > .storefront-cart-standalone-item-quantity {
    grid-area: auto !important;
    justify-self: end !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-actions > .storefront-cart-standalone-item-remove {
    order: 1 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-actions > .storefront-cart-standalone-item-price {
    order: 2 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-actions > .storefront-cart-standalone-item-quantity {
    order: 3 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-media {
    width: 86px !important;
    height: 98px !important;
    border-radius: 10px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-info {
    gap: 6px !important;
    align-self: start !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-copy {
    gap: 4px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-title {
    font-size: 16px !important;
    line-height: 22px !important;
    font-weight: 400 !important;
    display: -webkit-box !important;
    overflow: hidden !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-meta {
    gap: 6px !important;
    font-size: 12px !important;
    line-height: 16px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-meta > span,
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-variant-pill {
    min-height: 24px !important;
    border-radius: 999px !important;
    background: #efeeea !important;
    padding: 0 8px !important;
    display: inline-flex !important;
    align-items: center !important;
    font-size: 12px !important;
    line-height: 16px !important;
    color: #403b3b !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-item-variant-chevron {
    width: 12px !important;
    height: 12px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-messages {
    gap: 4px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-low-stock,
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-variant-help,
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-return-copy,
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-delivery-copy {
    font-size: 12px !important;
    line-height: 16px !important;
    color: #666262 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-return-copy,
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-low-stock {
    gap: 6px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-item-inline-icon {
    width: 14px !important;
    height: 14px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-quantity {
    align-self: start !important;
    justify-self: end !important;
    padding-top: 0 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-mobile-stepper {
    position: static !important;
    right: auto !important;
    bottom: auto !important;
    margin: 0 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-price {
    gap: 6px !important;
    align-self: start !important;
    justify-items: end !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-price-row {
    gap: 10px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-price-row p {
    font-size: 16px !important;
    line-height: 20px !important;
    font-weight: 600 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-compare-price {
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 400 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-discount-pill {
    min-height: 22px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    line-height: 14px !important;
    gap: 4px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-discount-pill span:first-child {
    font-size: 13px !important;
    line-height: 16px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-remove {
    align-self: start !important;
    justify-self: end !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-remove .storefront-cart-item-remove {
    width: 20px !important;
    height: 20px !important;
    color: #938e8b !important;
    font-size: 18px !important;
    line-height: 1 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-items {
    display: grid !important;
    grid-auto-rows: auto !important;
    gap: 0 !important;
    border: 1px solid #efe4cf !important;
    border-radius: 12px !important;
    background: #f8f2e4 !important;
    overflow: hidden !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-items > .storefront-cart-standalone-item-card.is-free-gift {
    display: block !important;
    min-height: 0 !important;
    height: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 12px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-items > .storefront-cart-standalone-item-card.is-free-gift + .storefront-cart-standalone-item-card.is-free-gift {
    border-top: 1px solid #eadfc9 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-items .storefront-cart-standalone-gift-grid {
    display: grid !important;
    grid-template-columns: 86px minmax(0, 1fr) !important;
    grid-template-areas: "media copy" !important;
    align-items: stretch !important;
    column-gap: 12px !important;
    row-gap: 0 !important;
    min-height: 0 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-items .storefront-cart-standalone-gift-grid > .storefront-cart-standalone-item-media {
    grid-area: media !important;
    justify-self: start !important;
    align-self: start !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-items .storefront-cart-standalone-gift-grid > .storefront-cart-standalone-gift-copy {
    grid-area: copy !important;
    min-width: 0 !important;
    display: grid !important;
    align-self: stretch !important;
    align-content: space-between !important;
    gap: 6px !important;
    min-height: 100% !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-items .storefront-cart-standalone-gift-grid > .storefront-cart-standalone-gift-copy .storefront-cart-standalone-item-title {
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 300 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-items .storefront-cart-standalone-gift-grid > .storefront-cart-standalone-gift-copy .storefront-cart-item-gift-label {
    margin-top: auto !important;
    font-size: 14px !important;
    line-height: 20px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-items + .storefront-cart-paid-items {
    margin-top: 12px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-teaser {
    margin: 12px 0 0 102px !important;
    width: min(540px, calc(100% - 102px)) !important;
    border: 1px solid #efeeea !important;
    border-radius: 14px !important;
    background: #fff !important;
    box-shadow: 0 1px 2px rgb(33 25 19 / 8%) !important;
    padding: 12px 14px 10px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-teaser-main {
    grid-template-columns: 72px minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: stretch !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-teaser-copy small {
    font-size: 14px !important;
    line-height: 20px !important;
    letter-spacing: 0 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-teaser-unlock-copy {
    font-size: 14px !important;
    line-height: 20px !important;
    letter-spacing: 0 !important;
    border-top: 1px solid #efeeea !important;
    padding-top: 10px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-ladder {
    padding-top: 12px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-ladder-list {
    gap: 10px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-ladder-content > span:first-child,
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-ladder-content > span:nth-child(2),
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-free-gift-ladder-content > small {
    font-size: 12px !important;
    line-height: 15px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-desktop-rail {
    min-width: 0 !important;
    position: sticky !important;
    top: 24px !important;
    align-self: start !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-desktop-rail-sticky {
    position: static !important;
    top: auto !important;
    border: 1px solid #dbd9d2 !important;
    border-radius: 16px !important;
    background: #fff !important;
    padding: 20px !important;
    gap: 24px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-desktop-rail-sticky > * {
    margin: 0 !important;
    min-width: 0 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-desktop-rail-sticky > * + * {
    border-top: 0 !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-rail-savings-banner {
    min-height: 30px !important;
    border: 1px solid #bfded9 !important;
    border-radius: 8px !important;
    background: #d8ece8 !important;
    color: #1f5f51 !important;
    font-size: 13px !important;
    line-height: 16px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    padding: 4px 10px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-special-row {
    gap: 0 !important;
    border: 1px solid #ebe7de !important;
    border-radius: 12px !important;
    overflow: hidden !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-special-intro,
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-special-action {
    min-height: 48px !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 14px !important;
    gap: 8px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-special-divider {
    width: 1px !important;
    height: 16px !important;
    flex: 0 0 auto !important;
    background: #ece8df !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-special-action {
    min-width: 122px !important;
    position: relative !important;
    justify-content: space-between !important;
    gap: 0 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-panel,
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-shipping-card,
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-wallet-card,
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-gst-card,
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-bill-breakdown,
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-summary-checkout {
    border: 1px solid #efeeea !important;
    border-radius: 12px !important;
    box-shadow: 0 1px 2px rgb(33 25 19 / 8%) !important;
    background: #fff !important;
    padding: 14px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-savings-card {
    padding: 0 !important;
    overflow: hidden !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-card-eyebrow {
    color: #938e8b !important;
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 500 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-coupon-entry-row,
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-coupon-applied-row {
    padding: 0 !important;
    align-items: center !important;
    gap: 10px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-coupon-title {
    font-size: 14px !important;
    line-height: 20px !important;
    font-weight: 600 !important;
    color: #211913 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-coupon-link-row,
  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-coupon-status {
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 500 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-coupon-suggestion {
    margin-top: 8px !important;
    border-radius: 10px !important;
    padding: 10px 12px !important;
    align-items: center !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-coupon-suggestion-copy p {
    font-size: 14px !important;
    line-height: 20px !important;
    font-weight: 600 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-coupon-suggestion-copy small {
    color: #666262 !important;
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 500 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-coupon-suggestion-badge {
    min-height: 14px !important;
    padding: 0 6px !important;
    border-radius: 14px !important;
    background: var(--sf-color-surface) !important;
    color: #145743 !important;
    font-size: 10px !important;
    line-height: 14px !important;
    font-weight: 500 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-coupon-suggestion button {
    min-height: 32px !important;
    border-radius: 8px !important;
    padding: 0 12px !important;
    font-size: 12px !important;
    line-height: 16px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-wallet-row {
    padding-top: 10px !important;
    gap: 10px !important;
    align-items: center !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-wallet-title {
    font-size: 14px !important;
    line-height: 20px !important;
    font-weight: 600 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-wallet-subtitle {
    font-size: 12px !important;
    line-height: 16px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-wallet-login {
    min-height: 40px !important;
    min-width: 88px !important;
    border-radius: 12px !important;
    font-size: 14px !important;
    line-height: 20px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-login-cta-section {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-login-cta {
    width: 100% !important;
    height: 48px !important;
    min-height: 48px !important;
    border-radius: 12px !important;
    background: #f7c744 !important;
    color: #211913 !important;
    font-size: 16px !important;
    line-height: 20px !important;
    font-weight: 600 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    padding: 0 16px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-summary-checkout {
    gap: 10px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-address-row {
    background: #f8f2e4 !important;
    border-radius: 12px !important;
    padding: 12px 16px !important;
    grid-template-columns: auto minmax(0, 1fr) auto auto !important;
    gap: 8px !important;
    align-items: center !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-address-icon {
    width: 16px !important;
    height: 16px !important;
    margin-top: 0 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-address-copy p:first-child {
    font-size: 12px !important;
    line-height: 16px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-address-copy p + p {
    font-size: 12px !important;
    line-height: 16px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-address-change {
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 600 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-payment-row {
    grid-template-columns: minmax(0, 1fr) 1.35fr !important;
    gap: 10px !important;
    align-items: stretch !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-payment-row--single-cta {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-payment-row--summary {
    grid-template-columns: minmax(88px, max-content) minmax(196px, 1fr) !important;
    gap: 24px !important;
    align-items: center !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-payment-summary {
    min-width: 88px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-payment-toggle {
    min-height: 68px !important;
    border-radius: 12px !important;
    padding: 10px 12px !important;
    background: #f8f2e4 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-payment-summary {
    min-height: 52px !important;
    gap: 4px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-payment-summary-label {
    font-size: 12px !important;
    line-height: 16px !important;
    color: #666262 !important;
    font-weight: 300 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-payment-summary-amount {
    font-size: 16px !important;
    line-height: 20px !important;
    color: #211913 !important;
    font-weight: 500 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-payment-label {
    font-size: 12px !important;
    line-height: 16px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-payment-method {
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 500 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-payment-channel {
    font-size: 10px !important;
    line-height: 14px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-payment-cta {
    min-width: 0 !important;
    min-height: 52px !important;
    border-radius: 12px !important;
    padding: 0 20px !important;
    font-size: 16px !important;
    line-height: 20px !important;
    font-weight: 500 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-detached-delivery-cta {
    margin-top: 10px !important;
    display: grid !important;
    gap: 8px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-detached-delivery-cta .storefront-cart-payment-toggle {
    width: 100% !important;
    min-height: 54px !important;
    border-radius: 10px !important;
    padding: 8px 10px !important;
    background: #f8f2e4 !important;
    align-content: center !important;
    gap: 1px !important;
    text-align: left !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-detached-delivery-cta .storefront-cart-payment-label {
    font-size: 11px !important;
    line-height: 14px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-detached-delivery-cta .storefront-cart-payment-method {
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 500 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-detached-delivery-cta .storefront-cart-payment-channel {
    font-size: 10px !important;
    line-height: 14px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-detached-delivery-cta-button {
    width: 100% !important;
    min-height: 52px !important;
    border-radius: 12px !important;
    padding: 0 20px !important;
    font-size: 16px !important;
    line-height: 20px !important;
    font-weight: 600 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-bill-breakdown {
    gap: 8px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-bill-breakdown > div {
    font-size: 12px !important;
    line-height: 16px !important;
    font-weight: 400 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-payable-row {
    padding-top: 10px !important;
    margin-top: 2px !important;
    border-top: 1px solid #e9e6df !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-payable-row p {
    font-size: 14px !important;
    line-height: 20px !important;
    font-weight: 700 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-total-savings {
    border-radius: 8px !important;
    min-height: 30px !important;
    align-items: center !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-gst-toggle {
    gap: 10px !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-gst-heading {
    font-size: 14px !important;
    line-height: 20px !important;
    font-weight: 600 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-gst-description {
    font-size: 12px !important;
    line-height: 16px !important;
    color: #666262 !important;
  }

  body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-desktop-recommendations {
    margin-top: 24px !important;
  }

  body.storefront-cart-page .sf-chat-widget {
    --sf-chat-launcher-right: 14px;
    --sf-chat-launcher-bottom: calc(14px + env(safe-area-inset-bottom));
  }

  body.storefront-cart-page .sf-chat-speech-bubble {
    min-width: 106px !important;
    padding: 6px 10px !important;
  }
}

.storefront-cart-gift-art {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.storefront-cart-gift-wrap-sheet {
  position: relative;
  gap: 24px;
  background: #fff;
  padding-top: 16px;
}

.storefront-cart-gift-wrap-sheet .storefront-cart-sheet-grab {
  width: 40px;
  align-self: center;
  margin-inline: auto;
}

.storefront-cart-gift-wrap-layer.is-desktop {
  align-items: center;
  justify-items: center;
}

.storefront-cart-gift-wrap-modal {
  position: relative;
  z-index: 1;
  width: min(360px, calc(100vw - 32px));
  max-height: min(80dvh, 540px);
  overflow: auto;
  border-radius: 24px;
  background: #fff;
  padding: 24px;
  display: grid;
  gap: 24px;
  box-shadow: 0 20px 48px rgb(33 25 19 / 18%);
}

.storefront-cart-gift-wrap-modal-close {
  position: absolute;
  top: 24px;
  right: 24px;
  width: 20px;
  height: 20px;
  border: 0;
  background: transparent;
  color: var(--sf-color-icon-neutral-light-gray);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  cursor: pointer;
}

.storefront-cart-gift-wrap-modal-close svg {
  width: 20px;
  height: 20px;
}

.storefront-cart-gift-wrap-modal-header {
  display: flex;
  align-items: center;
  width: 100%;
}

.storefront-cart-gift-wrap-modal-header p {
  margin: 0;
  color: #211913;
  font-size: 16px;
  line-height: 20px;
  font-weight: 500;
}

.storefront-cart-gift-wrap-modal-banner {
  border: 1px solid #fff1d0;
  border-radius: 12px;
  overflow: hidden;
  background: #fff9ec;
}

.storefront-cart-gift-wrap-modal-banner-image {
  display: block;
  width: 100%;
  height: auto;
}

.storefront-cart-gift-wrap-header {
  position: static;
  display: block;
}

.storefront-cart-gift-wrap-close {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 20px;
  height: 20px;
  border: 0;
  background: transparent;
  color: var(--sf-color-icon-neutral-light-gray);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  cursor: pointer;
  z-index: 2;
}

.storefront-cart-gift-wrap-close svg {
  width: 20px;
  height: 20px;
}

.storefront-cart-gift-wrap-banner {
  display: block;
  border-radius: 12px;
  overflow: hidden;
}

.storefront-cart-gift-wrap-banner-image {
  display: block;
  width: 100%;
  height: auto;
}

.storefront-cart-gift-wrap-list {
  gap: 0;
  max-height: min(46vh, 320px);
  padding: 0;
}

.storefront-cart-gift-wrap-list.is-desktop {
  max-height: none;
}

.storefront-cart-gift-wrap-item {
  grid-template-columns: 60px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  padding: 12px 0;
}

.storefront-cart-gift-wrap-item.is-desktop + .storefront-cart-gift-wrap-item.is-desktop {
  border-top: 2px solid #efeeea;
}

.storefront-cart-gift-wrap-item.is-disabled .storefront-cart-gift-wrap-item-media,
.storefront-cart-gift-wrap-item.is-disabled .storefront-cart-gift-wrap-item-title {
  opacity: 0.35;
}

.storefront-cart-gift-wrap-item-media {
  width: 60px;
  height: 69px;
  border-radius: 8px;
}

.storefront-cart-gift-wrap-item-copy {
  gap: 10px;
}

.storefront-cart-gift-wrap-item-title {
  margin: 0;
  color: #211913;
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.storefront-cart-gift-wrap-item-toggle-copy {
  gap: 8px;
  color: #211913;
  font-size: 12px;
  line-height: 16px;
  font-weight: 300;
}

.storefront-cart-gift-wrap-item-toggle .storefront-cart-checkbox {
  width: 20px;
  height: 20px;
}

.storefront-cart-gift-wrap-item-toggle strong {
  font-size: 14px;
  line-height: 20px;
  font-weight: 700;
}

.storefront-cart-gift-wrap-item-unavailable {
  color: #211913;
  font-size: 12px;
  font-weight: 500;
  line-height: 16px;
  font-weight: 300;
}

.storefront-cart-gift-wrap-footer {
  padding: 0;
}

.storefront-cart-gift-wrap-footer.is-desktop {
  width: 100%;
}

.storefront-cart-gift-wrap-confirm {
  width: 100%;
  min-height: 48px;
  border-radius: 8px;
  background: #ffc845;
  color: #211913;
  font-size: 16px;
  line-height: 20px;
  font-weight: 600;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone .storefront-cart-coupon-icon,
body.storefront-cart-page .storefront-cart-drawer.is-standalone .storefront-cart-coupon-status-icon,
body.storefront-cart-page .storefront-cart-drawer.is-standalone .storefront-cart-shipping-icon,
body.storefront-cart-page .storefront-cart-drawer.is-standalone .storefront-cart-wallet-icon,
body.storefront-cart-page .storefront-cart-drawer.is-standalone .storefront-cart-address-icon,
body.storefront-cart-page .storefront-cart-drawer.is-standalone .storefront-mobile-cart-trust-icon {
  width: 20px;
  height: 20px;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone .storefront-cart-coupon-icon svg,
body.storefront-cart-page .storefront-cart-drawer.is-standalone .storefront-cart-coupon-status-icon svg,
body.storefront-cart-page .storefront-cart-drawer.is-standalone .storefront-cart-shipping-icon svg,
body.storefront-cart-page .storefront-cart-drawer.is-standalone .storefront-cart-wallet-icon svg,
body.storefront-cart-page .storefront-cart-drawer.is-standalone .storefront-cart-address-icon svg,
body.storefront-cart-page .storefront-cart-drawer.is-standalone .storefront-mobile-cart-trust-icon svg,
body.storefront-cart-page .storefront-cart-drawer.is-standalone .storefront-cart-icon-mask {
  width: 20px;
  height: 20px;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-standalone-item-media {
  width: 86px !important;
  height: 98px !important;
  border-radius: 10px !important;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-special-icon {
  width: 32px !important;
  height: 32px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-special-chevron {
  width: 20px !important;
  height: 20px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-desktop .storefront-cart-desktop-special-chevron svg {
  width: 12px !important;
  height: 12px !important;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-cart-savings-banner {
  min-height: 28px !important;
  margin: 8px 16px 0 !important;
  border: 1px solid #c3e0e1 !important;
  border-radius: 8px !important;
  background: #e7f3f3 !important;
  color: #074245 !important;
  box-shadow: none !important;
  font-size: 12px !important;
  line-height: 16px !important;
  font-weight: 500 !important;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile {
  height: auto !important;
  min-height: auto !important;
  grid-template-rows: auto auto auto !important;
  overflow: visible !important;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-cart-drawer-body {
  overflow: visible !important;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-cart-drawer-footer {
  position: sticky !important;
  bottom: 0 !important;
  z-index: 8 !important;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-cart-items {
  display: grid !important;
  gap: 0 !important;
  background: #fff !important;
  padding: 12px 16px 16px !important;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-cart-item-group {
  gap: 0 !important;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-mobile-cart-item,
body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-mobile-cart-gift-item {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 12px 0 !important;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-mobile-cart-post-items {
  gap: 24px;
  padding: 16px 16px 24px;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-mobile-cart-special-row {
  margin-top: 8px;
  border: 1px solid #dbd9d2;
  border-radius: 12px;
  background: transparent;
  overflow: hidden;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-mobile-cart-special-card {
  min-height: 48px;
  padding: 0 14px;
  background: transparent !important;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-mobile-cart-special-card.is-secondary {
  min-width: 126px;
  padding-left: 12px;
  padding-right: 12px;
  border-left: 1px solid #ece8df;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-mobile-cart-special-copy {
  font-size: 12px;
  line-height: 16px;
  font-weight: 500;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-mobile-cart-special-card.is-secondary .storefront-mobile-cart-special-copy {
  color: #666262;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-mobile-cart-special-icon {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  flex: 0 0 auto;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-mobile-cart-special-chevron {
  width: 20px;
  height: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-mobile-cart-special-chevron svg {
  width: 12px;
  height: 12px;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-mobile-cart-special-action {
  gap: 0;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-mobile-cart-special-divider {
  display: block;
  align-self: center;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-mobile-cart-item-quantity {
  position: absolute;
  right: 0;
  bottom: -36px;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-mobile-cart-trust-strip {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-mobile-cart-trust-item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  color: #666262;
  font-size: 10px;
  line-height: 14px;
  font-weight: 500;
  text-align: left;
}

body.storefront-cart-page .storefront-cart-drawer.is-standalone.is-mobile .storefront-mobile-cart-trust-icon {
  width: 20px;
  height: 20px;
  color: #666262;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
