.elc-cart-page-wrapper {
  --panel-border-radius: 4px;
  --success-color: #087443;
  --alert-color: #d82929;

  /* Title settings */
  --title-font: var(--font-headline);
  --title-text-transform: none;
  --title-font-size: 1.25rem;
  --title-font-line-height: 1.75rem;
  --title-letter-spacing: normal;
  --title-font-color: inherit;
  --title-font-weight: normal;

  --color-quantity-control-border-color: var(--color-secondary-500);
  --color-cart-items-border: var(--color-black);

  /* Summary section settings */
  --summary-panel-bg-color: var(--color-white);
  --summary-panel-header-font: var(--font-headline);
  --summary-panel-header-size: inherit;
  --summary-panel-header-line-height: inherit;
  --summary-panel-header-text-transform: none;
  --summary-panel-header-font-weight: normal;
  --summary-panel-header-color: inherit;
  --summary-panel-item-font-size: inherit;
  --summary-panel-item-line-height: inherit;
  --summary-panel-subtotal-text-transform: none;
  --summary-panel-subtotal-font-name: var(--font-headline);
  --summary-panel-subtotal-font-size: inherit;
  --summary-panel-subtotal-color: var(--color-black);
  --summary-panel-font-size: inherit;
  --summary-panel-font-color: inherit;
  --summary-panel-color: inherit;
  --summary-panel-subtotal-font-weight: normal;
  --summary-panel-border-color: var(--color-black);
  --summary-panel-border-radius: 0;

  --sticky-footer-subtotal-font-weight: bold;
  --sticky-footer-subtotal-row-gap: 12px;
  --sticky-footer-subtotal-color: inherit;
  --sticky-footer-subtotal-font-size: 1rem;
  --sticky-footer-subtotal-font-family: var(--font-body);

  /* Message settings */
  --message-font-size: 1rem;
  --message-line-height: 1.5;
  --message-padding: 0.875rem;

  --message-error-color: var(--color-error);
  --message-error-border-color: var(--message-error-color);
  --message-error-icon-color: var(--message-error-color);
  --message-error-background-color: var(--color-white);
  --message-error-icon-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath fill='red' d='M10 0C4.47 0 0 4.47 0 10s4.47 10 10 10 10-4.47 10-10S15.53 0 10 0Zm5 13.59L13.59 15 10 11.41 6.41 15 5 13.59 8.59 10 5 6.41 6.41 5 10 8.59 13.59 5 15 6.41 11.41 10 15 13.59Z'/%3E%3C/svg%3E");

  --message-success-color: var(--color-success-contrast);
  --message-success-border-color: var(--message-success-color);
  --message-success-icon-color: var(--message-success-color);
  --message-success-background-color: var(--color-white);
  --message-success-icon-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath fill='green' d='M10 0C4.48 0 0 4.48 0 10s4.48 10 10 10 10-4.48 10-10S15.52 0 10 0ZM8 15l-5-5 1.41-1.41L8 12.17l7.59-7.59L17 6l-9 9Z'/%3E%3C/svg%3E");

  /* Checkout button settings */
  --checkout-button-bg-color: var(--color-black);
  --checkout-button-color: var(--color-white);
  --checkout-button-border-width: 0;
  --checkout-button-text-transform: uppercase;
  --checkout-button-text-size: 16px;
  --checkout-button-box-shadow: none;
  --checkout-button-disabled-bg-color: #d4d4d4;
  --checkout-button-disabled-color: #737373;
  --checkout-button-height: 48px;
  --checkout-button-border-radius: 0;
  --checkout-button-bg-color-hover: var(--checkout-button-bg-color);
  --checkout-button-border-color-hover: var(--checkout-button-bg-color);
  --checkout-button-color-hover: var(--checkout-button-color);
  --checkout-button-lock-icon-bg: var(--color-white);
  --checkout-button-lock-icon-bg-hover: var(--color-black);
  --checkout-button-wrapper-bg-color: var(--color-white);
  --checkout-button-wrapper-top-border: #f2f2f2;
  --checkout-button-font-family: inherit;
  --checkout-button-text-weight: normal;
  --checkout-button-letter-spacing: normal;

  --cart-sample-label-text-transform: none;
  --cart-details-divider-color: #e0e0e0;
  --cart-sample-label-color: var(--color-black);
  --cart-sample-label-font: inherit;
  --cart-sample-label-font-weight: inherit;
  --cart-sample-label-font-size: inherit;

  /* Item panel settings */
  --item-description-name-text-size: 1rem;
  --item-description-name-line-height: 1.5;
  --item-description-name-text-weight: 400;
  --item-description-name-text-transform: inherit;
  --item-description-name-text-family: inherit;
  --item-description-name-text-color: var(--color-black);
  --item-description-name-letter-spacing: normal;
  --item-description-product-quantity-top-padding: 0;
  --item-description-product-wrapper-font-size: 0.75rem;
  --item-description-product-wrapper-flex-direction: column;
  --item-description-product-wrapper-shade-font-size: inherit;
  --item-description-product-wrapper-shade-border-color: currentColor;
  --item-description-product-wrapper-shade-text-transform: none;
  --item-description-product-wrapper-shade-text-weight: normal;
  --item-description-product-wrapper-shade-text-family: inherit;
  --item-description-product-wrapper-gap: 8px;
  --item-description-product-quantity-label-padding: 0;
  --item-description-product-quantity-label-color: inherit;
  --item-description-product-quantity-label-font-size: 1rem;
  --item-total-price-text-size: 1rem;
  --item-total-price-text-color: var(--color-black);
  --item-spinner-selector-border-radius: 0;
  --item-spinner-selector-data-color: var(--color-black);
  --item-spinner-selector-data-font-family: inherit;
  --item-spinner-selector-data-font-size: 1rem;
  --item-remove-button-font-size: 0.875rem;
  --item-remove-button-text-transform: none;
  --item-remove-button-line-height: 1;
  --item-remove-button-line-color: inherit;
  --item-remove-button-line-border-color: var(--color-black);
  --item-remove-button-top-padding: 8px;
  --item-old-price-color: var(--color-black);
  --item-old-price-font-size: inherit;
  --item-old-price-font-family: inherit;
  --item-old-price-font-weight: normal;
  --item-strike-through-color: unset;
  --item-percent-color: var(--color-black);
  --item-percent-font-size: inherit;
  --item-percent-font-family: inherit;
  --item-percent-font-style: normal;
  --item-discounted-price-color: var(--color-black);
  --item-discounted-price-font-size: inherit;
  --item-discounted-price-font-family: inherit;
  --item-discounted-price-font-weight: normal;
  --item-total-price-color: var(--color-black);
  --item-total-price-font-size: inherit;
  --item-total-price-font-family: inherit;
  --item-total-price-font-weight: normal;
  --item-price-color: inherit;
  --item-price-font-size: inherit;
  --item-price-font-family: inherit;
  --item-price-font-weight: normal;

  --vat-tax-font-size: 0.75rem;
  --vat-tax-color: var(--color-black);
}

.elc-cart-page-container {
  padding-block: 1.5rem;
  margin-block: 0;
}

.elc-cart-page-container button.elc-cart-page-checkout-btn {
  font-size: var(--checkout-button-text-size);
  border-width: var(--checkout-button-border-width);
  text-transform: var(--checkout-button-text-transform);
  color: var(--checkout-button-color);
  background: var(--checkout-button-bg-color);
  min-block-size: var(--checkout-button-height);
  max-block-size: none;
  border-radius: var(--checkout-button-border-radius);
  font-family: var(--checkout-button-font-family);
  font-weight: var(--checkout-button-text-weight);
  letter-spacing: var(--checkout-button-letter-spacing);
}

.elc-cart-page-container button.elc-cart-page-checkout-btn:disabled {
  background: var(--checkout-button-disabled-bg-color);
  color: var(--checkout-button-disabled-color);
  opacity: 1;
}

.elc-cart-page-container button.elc-cart-page-checkout-btn:disabled .elc-icon {
  background-color: var(--checkout-button-disabled-color);
}

.elc-cart-page-container button.elc-cart-page-checkout-btn .elc-icon {
  display: inline-block;
  background-color: var(--checkout-button-lock-icon-bg);
}

.elc-cart-page-container .elc-cart-panel-wrapper {
  margin-block: 0;
}

.elc-cart-page-container .elc-cart-panel-wrapper ~ .elc-cart-empty-btn-wrapper {
  margin-block-start: 1.5rem;
}

.elc-cart-page-container .elc-cart-page-checkout-btn-wrapper {
  display: flex;
  flex: 1 1 0;
}

.elc-cart-page-container
  .elc-cart-page-summary
  > .elc-cart-page-checkout-btn-wrapper {
  background: var(--checkout-button-wrapper-bg-color);
  box-shadow: var(--checkout-button-box-shadow);
  position: fixed;
  inline-size: 100%;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 0.75rem 1rem;
  margin: 0;
  border-top: solid 1px var(--checkout-button-wrapper-top-border);
  z-index: 1;
  flex-direction: column;
  row-gap: var(--sticky-footer-subtotal-row-gap);
}

.elc-cart-page-container .elc-summary-subtotal-sticky {
  font-weight: var(--sticky-footer-subtotal-font-weight);
  color: var(--sticky-footer-subtotal-color);
  font-size: var(--sticky-footer-subtotal-font-size);
  font-family: var(--sticky-footer-subtotal-font-family);
}

.elc-cart-page-container .elc-summary-subtotal-sticky .elc-summary-label-text,
.elc-cart-page-container .elc-summary-subtotal-sticky .elc-summary-label-value {
  font-size: inherit;
  line-height: inherit;
  color: inherit;
}

.elc-cart-item-panel > .elc-cart-item-image {
  inline-size: 80px;
  min-inline-size: 80px;
}

.elc-cart-page-summary-wrapper .elc-drupal-node .elc-cart-page-summary-help {
  margin: 0 0.8rem;
}

.elc-cart-page-summary-wrapper .elc-drupal-node .elc-cart-page-summary-help a {
  text-decoration: underline;
}

.elc-cart-page-summary-wrapper
  .elc-drupal-node
  .elc-cart-page-summary-help
  a:hover,
.elc-cart-page-summary-wrapper
  .elc-drupal-node
  .elc-cart-page-summary-help
  a:focus {
  text-decoration: none;
}

.elc-cart-page-container .elc-cart-item-panel {
  display: flex;
  border-bottom: 1px solid var(--color-cart-items-border);
  padding-block: 16px;
}

.elc-cart-page-container .elc-cart-item-panel:last-child {
  border-bottom: 0;
}

.elc-cart-page-container
  .elc-cart-item-panel
  .elc-cart-item-description-product {
  flex-direction: column;
  gap: 16px;
  padding-block-end: 16px;
}

.elc-cart-page-container
  .elc-cart-item-panel.sample
  .elc-cart-item-price-wrapper {
  flex-direction: row;
}

.elc-cart-page-wrapper .elc-spinner-selector-data.elc-subtitle--1 {
  font-weight: normal;
  color: var(--item-spinner-selector-data-color);
  font-size: var(--item-spinner-selector-data-font-size);
  font-family: var(--item-spinner-selector-data-font-family);
}

.elc-cart-item-description-product-quantity-spinner-selector
  > .elc-spinner-selector-data-wrapper {
  padding: 0;
  border: none;
  flex: 0;
  min-inline-size: 38px;
  text-align: center;
}

.elc-cart-page-container .elc-cart-item-description {
  inline-size: 100%;
  padding-block-start: 0;
}

.elc-cart-page-container .elc-cart-item-panel .elc-cart-item-description-name {
  font-size: var(--item-description-name-text-size);
  line-height: var(--item-description-name-line-height);
}

.elc-cart-page-container .elc-cart-item-description-product-quantity {
  padding-block-start: var(--item-description-product-quantity-top-padding);
  inline-size: auto;
  margin: 0;
}

.elc-cart-page-container .elc-cart-item-description-product-quantity-label {
  padding: var(--item-description-product-quantity-label-padding);
  text-transform: none;
  color: var(--item-description-product-quantity-label-color);
  font-size: var(--item-description-product-quantity-label-font-size);
}

.elc-cart-page-container
  .elc-cart-item-description-product-quantity-spinner-selector {
  block-size: 24px;
  justify-content: center;
  align-items: center;
  border: 0;
}

.elc-cart-page-container
  .elc-cart-item-description-product-quantity-spinner-selector
  .elc-spinner-selector-button {
  border: solid 1px var(--color-quantity-control-border-color);
  padding: 0;
  text-align: center;
  border-radius: var(--item-spinner-selector-border-radius);
}

.elc-cart-page-container
  .elc-cart-item-description-product-quantity-spinner-selector
  .elc-icon {
  background: var(--color-quantity-control);
  stroke: var(--color-quantity-control);
  margin: auto;
  inline-size: 10px;
  block-size: 10px;
}

.elc-cart-page-container .elc-cart-item-description-product-wrapper {
  font-size: var(--item-description-product-wrapper-font-size);
  inline-size: auto;
  margin-inline-start: 0;
  flex-direction: var(--item-description-product-wrapper-flex-direction);
  gap: var(--item-description-product-wrapper-gap);
}

.elc-cart-page-container .elc-cart-item-description-product-wrapper-shade,
.elc-cart-page-container .elc-cart-item-description-product-wrapper-size {
  font-size: var(--item-description-product-wrapper-shade-font-size);
  border-inline-end-width: 0;
  padding: 0;
  margin: 0;
}

.elc-cart-page-container .elc-cart-item-description-product-wrapper-shade {
  position: static;
  white-space: nowrap;
  text-transform: var(--item-description-product-wrapper-shade-text-transform);
  font-weight: var(--item-description-product-wrapper-shade-text-weight);
  font-family: var(--item-description-product-wrapper-shade-text-family);
}

.elc-cart-page-container .elc-cart-item-description-sku-description {
  display: none;
}

.elc-cart-page-container .elc-summary-panel-header {
  font-family: var(--summary-panel-header-font);
  font-size: var(--summary-panel-header-size);
  line-height: var(--summary-panel-header-line-height);
  text-transform: var(--summary-panel-header-text-transform);
  color: var(--summary-panel-header-color);
  font-weight: var(--summary-panel-header-font-weight);
}

.elc-cart-page-container .elc-summary-shipping {
  padding: 0 0 1rem;
  margin: 0 0 1rem;
  font-size: 14px;
  border-block-end: solid 1px var(--color-cart-items-border);
}

.elc-cart-page-container .elc-summary-subtotal {
  padding: 0;
  text-transform: var(--summary-panel-subtotal-text-transform);
  font-weight: var(--summary-panel-subtotal-font-weight);
  font-size: var(--summary-panel-subtotal-font-size);
  font-family: var(--summary-panel-subtotal-font-name);
  color: var(--summary-panel-subtotal-color);
}

.elc-cart-page-container .elc-tax-shipping,
.elc-cart-page-container .elc-summary-shipping {
  color: var(--summary-panel-color);
}

.elc-cart-page-container .elc-tax-shipping-content-label,
.elc-cart-page-container .elc-tax-shipping-content-value {
  margin: 0.5rem 0;
}

.elc-cart-page-container .elc-tax-shipping-content-label,
.elc-cart-page-container .elc-tax-shipping-content-value,
.elc-cart-page-container .elc-summary-label-text,
.elc-cart-page-container .elc-summary-label-value {
  font-size: var(--summary-panel-item-font-size);
  line-height: var(--summary-panel-item-line-height);
}

.elc-cart-page-container .elc-summary-subtotal .elc-summary-label-text {
  font-size: inherit;
}

.elc-cart-page-container .elc-vat-tax {
  text-transform: none;
  padding-block-start: 0;
  font-size: var(--vat-tax-font-size);
  color: var(--vat-tax-color);
}

.elc-cart-page-container .elc-vat-tax .elc-summary-label-text,
.elc-cart-page-container .elc-vat-tax .elc-summary-label-value {
  font-size: inherit;
}

.elc-cart-page-container .elc-cart-sidebar-sidebar-items,
.elc-cart-page-container .elc-cart-page-summary {
  border-style: solid;
  border-color: var(--color-cart-items-border);
  border-inline-width: 0;
  border-top-width: 1px;
  border-bottom-width: 1px;
}

.elc-cart-page-wrapper .elc-cart-page-title {
  font-size: var(--title-font-size);
  line-height: var(--title-font-line-height);
  margin-block-start: 0;
  margin-inline: 1.25rem;
  padding-block-start: 1.25rem;
  font-family: var(--title-font);
  text-transform: var(--title-text-transform);
  letter-spacing: var(--title-letter-spacing);
  font-weight: var(--title-font-weight);
  color: var(--title-font-color);
}

.elc-cart-page-container .elc-cart-sidebar-sidebar-items {
  padding: 0;
  background-color: var(--color-white);
}

.elc-cart-page-container .elc-cart-empty-btn-wrapper {
  padding-inline: 1.25rem;
}

.elc-cart-page-container .elc-summary-panel-wrapper {
  border-bottom: solid 1px var(--color-cart-items-border);
  padding: 0 0 1rem;
  margin: 0 0 1rem;
}

/* Messages */
.elc-cart-page-container .elc-cart-empty-message,
.elc-cart-page-container .elc-cart-page-messages-panel {
  margin: 0 1.25rem 1.5rem;
}

.elc-cart-page-message {
  font-size: var(--message-font-size);
  line-height: var(--message-line-height);
  padding: var(--message-padding);
}

.elc-cart-page-message a {
  text-decoration: underline;
}

.elc-cart-page-message a:hover,
.elc-cart-page-message a:focus {
  text-decoration: none;
}

.elc-cart-page-message.severity-MESSAGE,
.elc-cart-page-message.tag-defer_to_view_cart {
  color: var(--message-error-color);
  border: solid 1px var(--message-error-border-color);
  background-color: var(--message-error-background-color);
}

.elc-cart-page-message.tag-SUCCESS:not(.tag-trans_limit) {
  color: var(--message-success-color);
  border: solid 1px var(--message-success-border-color);
  background-color: var(--message-success-background-color);
}

.elc-cart-page-message .elc-cart-page-messages-icon {
  background-repeat: no-repeat;
  display: inline-block;
  margin-block-start: 0;
}

.elc-cart-page-message.severity-MESSAGE .elc-cart-page-messages-icon,
.elc-cart-page-message.tag-defer_to_view_cart .elc-cart-page-messages-icon {
  background-color: var(--message-error-icon-color);
  -webkit-mask-image: var(--message-error-icon-image);
  mask-image: var(--message-error-icon-image);
}

.elc-cart-page-message.tag-SUCCESS:not(.tag-trans_limit)
  .elc-cart-page-messages-icon {
  background-color: var(--message-success-icon-color);
  -webkit-mask-image: var(--message-success-icon-image);
  mask-image: var(--message-success-icon-image);
}

.elc-cart-page-message.tag-offer-manual,
.elc-cart-page-message.tag-defer_to_view_cart:not(.tag-offer-automatic) {
  display: none;
}

.elc-cart-page-container .elc-cart-page-checkout-btn-wrapper {
  display: flex;
  flex: 1 1 0;
}

.elc-cart-page-container .elc-cart-page-checkout-btn-wrapper .elc-lock-icon {
  block-size: 21px;
  inline-size: 21px;
  margin-inline-end: 6px;
}

.elc-cart-page-container .elc-cart-item-buttons-container {
  padding-block-start: var(--item-remove-button-top-padding);
}

.elc-cart-page-container
  .elc-cart-item-total-price-wrapper
  .elc-cart-item-old-total-price {
  display: none;
}

.elc-cart-page-container .elc-cart-item-description-name.elc-subtitle--2 {
  color: var(--item-description-name-text-color);
  font-weight: var(--item-description-name-text-weight);
  text-transform: var(--item-description-name-text-transform);
  font-family: var(--item-description-name-text-family);
  letter-spacing: var(--item-description-name-letter-spacing);
}

.elc-cart-page-container
  .elc-cart-item-old-price.elc-subtitle--2.elc-medium-emphasis,
.elc-cart-page-container
  .elc-cart-item-percent.elc-subtitle--2.elc-medium-emphasis,
.elc-cart-page-container .elc-cart-item-price.elc-subtitle--2.discounted,
.elc-cart-page-container .elc-cart-item-total.elc-subtitle--2 {
  opacity: 1;
}

.elc-cart-page-container
  .elc-cart-item-old-price.elc-subtitle--2.elc-medium-emphasis {
  color: var(--item-old-price-color);
  font-size: var(--item-old-price-font-size);
  font-family: var(--item-old-price-font-family);
  font-weight: var(--item-old-price-font-weight);
  text-decoration-color: var(--item-strike-through-color);
}

.elc-cart-page-container
  .elc-cart-item-percent.elc-subtitle--2.elc-medium-emphasis {
  color: var(--item-percent-color);
  font-size: var(--item-percent-font-size);
  font-family: var(--item-percent-font-family);
  font-style: var(--item-percent-font-style);
  padding-inline: 6px;
}

.elc-cart-page-container .elc-cart-item-price.elc-subtitle--2.discounted {
  color: var(--item-discounted-price-color);
  font-size: var(--item-discounted-price-font-size);
  font-family: var(--item-discounted-price-font-family);
  font-weight: var(--item-discounted-price-font-weight);
}

.elc-cart-page-container .elc-cart-item-total.elc-subtitle--2 {
  color: var(--item-total-price-color);
  font-size: var(--item-total-price-font-size);
  font-family: var(--item-total-price-font-family);
  font-weight: var(--item-total-price-font-weight);
}

.elc-cart-page-container .elc-minus-icon,
.elc-cart-page-container .elc-plus-icon {
  inline-size: 24px;
  block-size: 24px;
}

.elc-cart-page-container .elc-minus-icon {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' preserveAspectRatio='none' fill='transparent' stroke='%23000000' stroke-width='3px' %3E%3Cpath d='M0,10 L20,10' /%3E%3C/svg%3E")
    center center / 14px 14px no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' preserveAspectRatio='none' fill='transparent' stroke='%23000000' stroke-width='3px' %3E%3Cpath d='M0,10 L20,10' /%3E%3C/svg%3E")
    center center / 14px 14px no-repeat;
}

.elc-cart-page-container .elc-plus-icon {
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' preserveAspectRatio='none' fill='transparent' stroke='%23000000' stroke-width='3px' %3E%3Cpath d='M0,10 L20,10' /%3E%3Cpath d='M10,0 L10,20' /%3E%3C/svg%3E")
    center center / 14px 14px no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' preserveAspectRatio='none' fill='transparent' stroke='%23000000' stroke-width='3px' %3E%3Cpath d='M0,10 L20,10' /%3E%3Cpath d='M10,0 L10,20' /%3E%3C/svg%3E")
    center center / 14px 14px no-repeat;
}

.elc-cart-page-container .elc-cart-page-summary {
  background-color: var(--summary-panel-bg-color);
  font-size: var(--summary-panel-font-size);
  color: var(--summary-panel-font-color);
  border-color: var(--summary-panel-border-color);
  border-radius: var(--summary-panel-border-radius);
}

.elc-cart-page-container
  .elc-cart-item-price
  .elc-cart-item-sample-price.elc-subtitle--2 {
  color: var(--cart-sample-label-color);
  font-family: var(--cart-sample-label-font);
  font-weight: var(--cart-sample-label-font-weight);
  font-size: var(--cart-sample-label-font-size);
  text-transform: var(--cart-sample-label-text-transform);
}

.elc-cart-page-container .elc-cart-item-price.elc-subtitle--2 {
  color: var(--item-price-color);
  font-size: var(--item-price-font-size);
  font-family: var(--item-price-font-family);
  font-weight: var(--item-price-font-weight);
}

.elc-cart-page-container .sample .elc-cart-item-price.elc-subtitle--2 {
  text-transform: uppercase;
}

.elc-cart-page-container .elc-cart-item-percent::before {
  content: "(";
}

.elc-cart-page-container .elc-cart-item-remove button {
  line-height: var(--item-remove-button-line-height);
  font-size: var(--item-remove-button-font-size);
  text-transform: var(--item-remove-button-text-transform);
  color: var(--item-remove-button-line-color);
  border-color: var(--item-remove-button-line-border-color);
}

@media (min-width: 768px) {
  .elc-cart-page-wrapper {
    --title-font-size: 1.5rem;
    --title-font-line-height: 2.25rem;
    --checkout-button-height: 48px;
    --item-description-product-wrapper-flex-direction: row;
    --item-description-product-wrapper-bottom-padding: 16px;
    --item-remove-button-top-padding: 16px;
    --checkout-button-wrapper-bg-color: transparent;
    --checkout-button-wrapper-top-border: transparent;
    --summary-panel-border-radius: 4px;

    min-block-size: 80vh;
  }

  .elc-cart-page-container {
    padding-block: 2.5rem;
    margin-block: 0;
  }

  .elc-cart-page-container:has(.elc-cart-empty-message) {
    padding-block-start: 0.5rem;
  }

  .elc-cart-page-container .elc-cart-empty-message,
  .elc-cart-page-container .elc-cart-page-messages-panel,
  .elc-cart-page-summary-wrapper .elc-drupal-node .elc-cart-page-summary-help {
    margin: 0 0 1.5rem;
  }

  .elc-cart-page-container .elc-cart-empty-btn-wrapper {
    flex-direction: row;
    padding-inline: 0;
  }

  .elc-cart-page-container .elc-cart-empty-btn-wrapper > div {
    inline-size: 50%;
  }

  .elc-cart-page-container .elc-cart-empty-btn-wrapper > div > button {
    padding: 0 20px;
  }

  .elc-cart-page-container .elc-cart-sidebar-sidebar-items {
    padding-inline: 1rem;
  }

  .elc-cart-page-container
    .elc-cart-page-summary
    > .elc-cart-page-checkout-btn-wrapper {
    border-bottom: solid 1px var(--color-cart-items-border);
    box-shadow: none;
    position: static;
    padding: 0 0 1rem;
    margin: 0 0 1rem;
  }

  .elc-cart-page-container .elc-summary-subtotal-sticky {
    display: none;
  }

  .elc-cart-page-container button.elc-cart-page-checkout-btn {
    min-block-size: var(--checkout-button-height);
  }

  .elc-cart-page-wrapper .elc-cart-page-title {
    font-size: var(--title-font-size);
    line-height: var(--title-font-line-height);
    margin-block-start: 0;
    margin-inline: 0;
    padding-block-start: 2.5rem;
  }

  .elc-cart-page-container .elc-cart-sidebar-sidebar-items {
    border-inline-width: 1px;
    border-radius: var(--panel-border-radius);
  }

  .elc-cart-page-container .elc-elc-cart-item-details-wrapper {
    display: grid;
    grid-template-columns: auto 1fr;
    inline-size: calc(100% - 80px);
    max-inline-size: none;
  }

  .elc-cart-page-container .elc-cart-item-description,
  .elc-cart-page-container .elc-cart-item-description-wrapper,
  .elc-cart-page-container .elc-cart-item-description-product {
    display: contents;
  }

  .elc-cart-page-container .elc-cart-item-description-link {
    display: inline-grid;
    grid-column: 1/3;
  }

  .elc-cart-page-container .elc-cart-item-description-product-wrapper {
    grid-column: 1/3;
    padding-block-end: var(--item-description-product-wrapper-bottom-padding);
    gap: 0;
  }

  .elc-cart-page-container .elc-cart-item-description-product-quantity {
    display: grid;
    grid-column: 1;
    padding-block-start: 0;
  }

  .elc-cart-page-container
    .elc-cart-item-description-product-wrapper-shade:has(
      + .elc-cart-item-description-product-wrapper-size
    ) {
    border-inline-end: solid 1px
      var(--item-description-product-wrapper-shade-border-color);
    padding-inline-end: 17px;
  }

  .elc-cart-page-container
    .elc-cart-item-description-product-wrapper-shade
    + .elc-cart-item-description-product-wrapper-size {
    padding-inline-start: 17px;
  }

  .elc-cart-page-container .elc-cart-item-description-product-quantity-label {
    padding: 0;
    line-height: inherit;
  }

  .elc-cart-page-container
    .elc-elc-cart-item-details-wrapper
    > .elc-cart-item-price {
    grid-column: 2;
    margin-inline-start: 16px;
    padding-block-start: 0;
  }

  .elc-cart-page-container .elc-cart-item-panel {
    padding-block: 24px;
  }

  .elc-cart-page-container
    .elc-cart-item-panel
    .elc-cart-item-description-product-wrapper {
    grid-row: 2;
  }

  .elc-cart-page-container .elc-cart-item-buttons-container {
    grid-column: 1;
  }

  .elc-cart-page-container
    .elc-cart-item-panel.sample
    .elc-elc-cart-item-details-wrapper
    > .elc-cart-item-buttons-container
    button {
    margin-inline-end: 0;
    position: relative;
  }

  .elc-cart-page-container .elc-cart-page-summary {
    border-inline-width: 1px;
  }
}

@media (min-width: 1024px) {
  .elc-cart-page-container {
    flex-direction: row;
    gap: 5%;
  }

  .elc-cart-page-container .elc-cart-page-items {
    inline-size: 60%;
  }
}

@media (hover: hover) {
  .elc-cart-page-container
    button.elc-cart-page-checkout-btn:hover:not(:disabled) {
    background: var(--checkout-button-bg-color-hover);
    border-color: var(--checkout-button-border-color-hover);
    color: var(--checkout-button-color-hover);
  }
  .elc-cart-page-container
    button.elc-cart-page-checkout-btn:hover:not(:disabled)
    .elc-icon {
    background-color: var(--checkout-button-lock-icon-bg-hover);
  }
}
