.elc-cart-page-wrapper {
  --panel-border-radius: 0;
  --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;
  --subtitle-font-color: var(--text-color-medium);
  --subtitle-font-family: var(--title-font);
  --subtitle-font-size: var(--message-font-size);
  --subtitle-line-height: var(--message-line-height);
  --subtitle-letter-spacing: normal;
  --subtitle-text-transform: none;

  --color-quantity-control-border-color: var(--color-secondary-500);
  --color-quantity-control: var(--color-secondary);
  --color-quantity-control-disabled: #a3a3a3;
  --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-letter-spacing: inherit;
  --summary-panel-header-text-transform: none;
  --summary-panel-header-font-weight: normal;
  --summary-panel-header-color: inherit;
  --summary-panel-item-font-family: inherit;
  --summary-panel-item-font-size: inherit;
  --summary-panel-item-font-weight: inherit;
  --summary-panel-item-line-height: inherit;
  --summary-panel-item-text-transform: inherit;
  --summary-panel-label-value-text-transform: uppercase;
  --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-subtotal-letter-spacing: inherit;
  --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;
  --summary-panel-letter-spacing: inherit;
  --summary-help-font-size: inherit;
  --summary-help-line-height: inherit;
  --summary-help-letter-spacing: inherit;
  --summary-help-font-color: inherit;
  --summary-panel-icons-border-radius: 4px;
  --summary-panel-discount-message-color: var(--color-black);
  --summary-panel-discount-message-font-size: 0.75rem;
  --summary-panel-discount-message-transform: capitalize;

  --sticky-footer-subtotal-font-weight: normal;
  --sticky-footer-subtotal-row-gap: 6px;
  --sticky-footer-subtotal-color: inherit;
  --sticky-footer-subtotal-font-size: var(--font-size-footer);
  --sticky-footer-subtotal-font-family: var(--font-body);
  --sticky-footer-subtotal-color: inherit;
  --sticky-footer-subtotal-text-transform: capitalize;

  --summary-panel-card-icon: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="20" height="16" fill="none"%3E%3Cpath fill="%23221F20" d="M18.571.857H1.43A1.429 1.429 0 0 0 0 2.286v11.428a1.429 1.429 0 0 0 1.429 1.429H18.57A1.429 1.429 0 0 0 20 13.714V2.286A1.429 1.429 0 0 0 18.571.857Zm0 1.429v2.143H1.43V2.286H18.57ZM1.43 13.714V5.857H18.57v7.857H1.43Z"/%3E%3Cpath fill="%23221F20" d="M10 10.857H2.857v1.429H10v-1.429Z"/%3E%3C/svg%3E');
  --summary-panel-applepay-icon: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="25" height="10" fill="none"%3E%3Cpath fill="%23221F20" fill-rule="evenodd" d="M3.576 1.863c.45.038.9-.228 1.182-.565.276-.346.46-.811.412-1.286-.398.02-.89.266-1.172.613-.257.299-.478.783-.422 1.238ZM8.93 7.975V.577h2.743c1.416 0 2.405.987 2.405 2.43s-1.008 2.44-2.443 2.44h-1.57v2.528H8.93ZM5.166 1.953c-.397-.023-.758.121-1.05.237-.189.075-.348.138-.47.138-.135 0-.3-.066-.487-.141-.244-.098-.523-.21-.815-.205-.67.01-1.294.394-1.637 1.006-.703 1.224-.182 3.037.497 4.034.333.493.732 1.034 1.257 1.015.23-.009.397-.08.569-.154.198-.085.404-.173.725-.173.31 0 .506.086.695.168.18.079.352.154.608.15.544-.01.886-.494 1.219-.987.359-.53.517-1.047.54-1.126l.004-.009-.004-.002a.911.911 0 0 0-.01-.004c-.12-.056-1.037-.48-1.046-1.621-.009-.958.728-1.443.844-1.519l.014-.01c-.469-.702-1.2-.778-1.453-.797Zm10.984 6.08c.712 0 1.373-.366 1.674-.945h.023v.887h1.05V4.293c0-1.068-.844-1.756-2.142-1.756-1.205 0-2.096.698-2.129 1.656h1.022c.085-.455.502-.754 1.074-.754.694 0 1.083.327 1.083.93v.408l-1.416.085c-1.317.081-2.03.627-2.03 1.576 0 .958.736 1.594 1.79 1.594Zm.305-.878c-.605 0-.99-.295-.99-.746 0-.465.37-.735 1.079-.778l1.26-.08v.417c0 .693-.58 1.186-1.35 1.186Zm5.925 1.11c-.454 1.295-.975 1.723-2.081 1.723a3.09 3.09 0 0 1-.431-.029v-.887c.07.01.243.019.333.019.501 0 .782-.214.956-.77l.103-.327-1.922-5.386h1.186l1.336 4.37h.024l1.336-4.37h1.153L22.38 8.265Zm-12.315-6.72h1.308c.984 0 1.547.532 1.547 1.467 0 .934-.563 1.47-1.552 1.47h-1.303V1.546Z" clip-rule="evenodd"/%3E%3C/svg%3E');
  --summary-panel-paypal-icon: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="19" height="16" fill="none"%3E%3Cpath fill="%23253B80" fill-rule="evenodd" d="M2.205 11.104H.775a.199.199 0 0 0-.196.168l-.578 3.664a.119.119 0 0 0 .118.138h.683a.199.199 0 0 0 .196-.168l.156-.988a.198.198 0 0 1 .196-.168h.452c.941 0 1.485-.456 1.627-1.358.064-.395.002-.705-.183-.923-.203-.239-.563-.365-1.041-.365Zm.165 1.339c-.079.513-.47.513-.85.513h-.215l.151-.958c.01-.058.06-.1.118-.1h.099c.258 0 .501 0 .627.146.075.088.098.218.07.399Zm4.107-.017h-.685a.12.12 0 0 0-.118.1l-.03.192-.048-.07c-.148-.214-.478-.286-.808-.286-.756 0-1.402.573-1.528 1.376-.065.4.028.784.255 1.051.209.246.507.348.862.348.61 0 .947-.391.947-.391l-.03.19a.119.119 0 0 0 .117.138h.617c.098 0 .18-.071.196-.168l.37-2.342a.119.119 0 0 0-.117-.138Zm-.954 1.332a.763.763 0 0 1-.772.654c-.2 0-.358-.064-.46-.185-.101-.12-.14-.29-.107-.48a.766.766 0 0 1 .767-.66c.194 0 .352.065.456.187a.592.592 0 0 1 .116.484Zm3.91-1.332h.688a.12.12 0 0 1 .098.187l-2.287 3.302a.198.198 0 0 1-.163.085h-.687a.12.12 0 0 1-.098-.188l.713-1.005-.758-2.223a.12.12 0 0 1 .113-.158h.676a.2.2 0 0 1 .19.142l.403 1.342.948-1.397a.2.2 0 0 1 .164-.087Z" clip-rule="evenodd"/%3E%3Cpath fill="%23179BD7" fill-rule="evenodd" d="m16.89 14.936.586-3.731a.12.12 0 0 1 .117-.1h.66c.074 0 .13.064.118.137l-.578 3.664a.198.198 0 0 1-.197.168h-.59a.119.119 0 0 1-.116-.138Zm-4.492-3.832h-1.43a.198.198 0 0 0-.195.168l-.578 3.664a.119.119 0 0 0 .117.138h.734c.068 0 .126-.05.137-.117l.164-1.04a.198.198 0 0 1 .196-.167h.452c.941 0 1.485-.456 1.627-1.358.064-.395.002-.705-.183-.923-.203-.239-.563-.365-1.041-.365Zm.165 1.339c-.078.513-.47.513-.849.513h-.216l.152-.958a.119.119 0 0 1 .117-.1h.1c.257 0 .5 0 .626.146.076.088.098.218.07.399Zm4.106-.017h-.684a.118.118 0 0 0-.117.1l-.03.192-.048-.07c-.148-.214-.479-.286-.808-.286-.757 0-1.402.573-1.528 1.376-.065.4.027.784.255 1.051.209.246.507.348.861.348.61 0 .948-.391.948-.391l-.03.19a.12.12 0 0 0 .117.138h.616c.098 0 .181-.071.196-.168l.37-2.342a.12.12 0 0 0-.118-.138Zm-.954 1.332a.763.763 0 0 1-.772.654c-.198 0-.357-.064-.46-.185-.1-.12-.138-.29-.107-.48a.766.766 0 0 1 .767-.66c.195 0 .353.065.457.187a.59.59 0 0 1 .116.484Z" clip-rule="evenodd"/%3E%3Cpath fill="%23253B80" d="m7.493 9.793.176-1.116-.391-.009h-1.87l1.3-8.234a.106.106 0 0 1 .106-.09h3.15c1.046 0 1.768.217 2.145.647.177.202.29.412.344.644.057.243.058.534.002.888l-.004.026v.227l.177.1c.148.08.267.17.357.273.152.172.25.391.29.651.043.267.03.585-.04.945-.081.414-.212.774-.388 1.069a2.2 2.2 0 0 1-.613.672 2.488 2.488 0 0 1-.825.372c-.305.08-.652.12-1.032.12h-.246a.742.742 0 0 0-.73.622l-.017.1-.31 1.967-.015.073c-.004.023-.01.034-.02.042a.053.053 0 0 1-.032.011H7.493Z"/%3E%3Cpath fill="%23179BD7" d="M12.795 2.575c-.01.06-.02.122-.032.185-.416 2.134-1.838 2.87-3.653 2.87h-.925a.449.449 0 0 0-.443.38l-.474 3.003-.134.85a.237.237 0 0 0 .234.274h1.64a.394.394 0 0 0 .389-.332l.016-.084.309-1.959.02-.107a.394.394 0 0 1 .39-.334h.245c1.588 0 2.832-.645 3.195-2.511.152-.78.073-1.43-.328-1.889a1.567 1.567 0 0 0-.45-.346Z"/%3E%3Cpath fill="%23222D65" d="M12.36 2.402a3.25 3.25 0 0 0-.404-.09c-.25-.04-.522-.059-.815-.059h-2.47a.392.392 0 0 0-.389.333l-.525 3.328-.015.097a.449.449 0 0 1 .443-.38h.925c1.816 0 3.237-.738 3.653-2.87.012-.064.023-.125.032-.185a2.212 2.212 0 0 0-.435-.174Z"/%3E%3Cpath fill="%23253B80" d="M8.282 2.586a.393.393 0 0 1 .39-.333h2.47c.292 0 .565.02.814.06a3.728 3.728 0 0 1 .404.09l.094.028c.122.041.236.09.341.145.124-.789 0-1.326-.427-1.812C11.898.23 11.05 0 9.964 0h-3.15a.45.45 0 0 0-.446.38L5.056 8.7a.27.27 0 0 0 .267.313h1.945l.489-3.099.525-3.328Z"/%3E%3C/svg%3E');
  --summary-panel-googlepay-icon: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="24" height="10" fill="none"%3E%3Cpath fill="%233C4043" fill-rule="evenodd" d="M11.07 7.79v-2.9h1.5c.6 0 1.13-.2 1.55-.61l.1-.1c.77-.84.72-2.15-.1-2.93a2.14 2.14 0 0 0-1.55-.62h-2.4v7.16h.9Zm0-3.78v-2.5h1.52c.33 0 .63.12.87.35.48.48.5 1.28.02 1.78-.23.24-.55.38-.9.37h-1.51Zm7.38-.74a2.24 2.24 0 0 0-1.6-.54c-.85 0-1.5.32-1.93.95l.8.51a1.37 1.37 0 0 1 2.07-.31c.24.2.37.5.37.81v.22a2.7 2.7 0 0 0-1.32-.3c-.63 0-1.14.15-1.52.45-.37.3-.57.7-.57 1.21 0 .46.2.9.54 1.2.35.32.8.48 1.33.48.63 0 1.12-.28 1.5-.84h.04v.68h.87V4.77c0-.63-.2-1.14-.58-1.5ZM15.99 6.9a.74.74 0 0 1-.3-.6c0-.27.12-.5.36-.67.25-.18.56-.27.93-.27.5 0 .9.11 1.18.34 0 .39-.15.72-.45 1-.27.28-.64.44-1.02.44-.25 0-.5-.08-.7-.24Zm4.98 3.05L24 2.9h-.98l-1.4 3.52h-.02l-1.44-3.52h-.98l1.98 4.58-1.12 2.47h.93Z" clip-rule="evenodd"/%3E%3Cpath fill="%234285F4" d="M7.94 4.26c0-.28-.02-.56-.07-.83H4.05V5h2.2c-.1.5-.4.96-.82 1.25v1.03h1.3a4.04 4.04 0 0 0 1.21-3.03Z"/%3E%3Cpath fill="%2334A853" d="M4.05 8.28c1.1 0 2.02-.37 2.69-1l-1.3-1.02a2.43 2.43 0 0 1-3.65-1.3H.42v1.06a4.04 4.04 0 0 0 3.62 2.26Z"/%3E%3Cpath fill="%23FBBC04" d="M1.78 4.96a2.51 2.51 0 0 1 0-1.58V2.33H.43A4.13 4.13 0 0 0 .43 6l1.35-1.05Z"/%3E%3Cpath fill="%23EA4335" d="M4.05 1.69c.58-.02 1.14.2 1.56.61l1.16-1.17A3.88 3.88 0 0 0 4.05.06C2.52.06 1.12.94.43 2.33l1.35 1.06a2.43 2.43 0 0 1 2.27-1.7Z"/%3E%3C/svg%3E');

  /* Message settings */
  --message-font-size: 1rem;
  --message-line-height: 1.5;
  --message-padding: 0.5rem;
  --info-icon-image: url('data:image/svg+xml,%0A%3Csvg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none" viewBox="0 0 16 16"%3E%3Ccircle cx="8" cy="8" r="7" stroke="%23087443"/%3E%3Cpath stroke="%23087443" d="M8 11.5v-5M8 5.5v-1"/%3E%3C/svg%3E');

  --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: var(--info-icon-image);
  --message-error-sub-text-color: var(--color-black);
  --message-error-sub-text-weight: 400;

  --message-info-color: #00339a;
  --message-info-background-color: #e6ecf9;

  --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: var(--info-icon-image);

  --message-offer-color: var(--message-success-color);
  --message-offer-border-color: none;
  --message-offer-icon-color: var(--message-success-color);
  --message-offer-background-color: #e6f1ec;
  --message-offer-icon-image: var(--info-icon-image);
  --message-offer-font-weight: normal;
  --message-offer-button-font-size: 0.875rem;
  --message-offer-button-font-weight: normal;
  --message-offer-button-text-transform: uppercase;

  /* 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;
  --checkout-button-icon: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="15" height="20" fill="none"%3E%3Cpath fill="%23fff" d="M13.36 8.57h-1.43V4.3a4.29 4.29 0 0 0-8.57 0v4.28H1.93A1.43 1.43 0 0 0 .5 10v8.57A1.43 1.43 0 0 0 1.93 20h11.43a1.43 1.43 0 0 0 1.43-1.43V10a1.43 1.43 0 0 0-1.43-1.43ZM4.79 4.3a2.86 2.86 0 0 1 5.71 0v4.28H4.79V4.3Zm8.57 14.28H1.93V10h11.43v8.57Z"/%3E%3C/svg%3E');

  --cart-sample-label-text-transform: none;
  --cart-sample-label-letter-spacing: inherit;
  --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;
  --product-cards-bg-color: var(--color-white);

  /* 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-color: #6f6d6e;
  --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-font-family: inherit;
  --item-description-product-wrapper-shade-border-color: #afb4bb;
  --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-transform: none;
  --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-price-letter-spacing: inherit;
  --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-spinner-border-color: #afb4bb;
  --item-spinner-disabled-border-color: #a3a3a3;
  --item-remove-button-font-size: 0.875rem;
  --item-remove-button-text-transform: none;
  --item-remove-button-line-height: 1;
  --item-remove-button-line-color: var(--color-off-black);
  --item-remove-button-line-border-color: var(--color-black);
  --item-remove-button-letter-spacing: inherit;
  --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-total-price-text-transform: uppercase;
  --item-price-color: inherit;
  --item-price-font-size: inherit;
  --item-price-font-family: inherit;
  --item-price-font-weight: normal;
  --item-price-sample-font-family: inherit;
  --item-price-sample-font-weight: inherit;
  --item-alert-font-size: 0.875rem;
  --item-alert-text-weight: 400;

  /* Custom Kit settings */
  --kit-item-name-color: inherit;
  --kit-item-name-font-family: inherit;
  --kit-item-name-font-size: inherit;
  --kit-item-name-line-height: inherit;
  --kit-item-name-text-transform: initial;

  /* Engraving Item settings */
  --engraving-item-label-size: 0.875rem;
  --engraving-item-label-font: var(--font-body);
  --engraving-item-label-font-weight: inherit;
  --engraving-item-label-font-size: inherit;
  --engraving-text-label-size: 0.75rem;
  --engraving-item-label-color: var(--color-black);
  --engraving-item-label-letter-spacing: inherit;
  --engraving-item-title-color: var(--color-black);
  --engraving-item-title-font-weight: normal;
  --engraving-disclaimer-color: inherit;
  --engraving-disclaimer-font-size: inherit;
  --engraving-disclaimer-font-weight: inherit;
  --engraving-disclaimer-letter-spacing: inherit;
  --engraving-message-font-weight: normal;
  --engraving-message-text-transform: none;
  --engraving-message-font-size: inherit;
  --engraving-message-font-style: italic;
  --engraving-message-line-height: 1.2;
  --engraving-item-label-text-transform: none;
  --engraving-message-panel-text-color: inherit;
  --engraving-message-letter-spacing: inherit;
  --engraving-message-panel-border: #6f6d6e;
  --engraving-message-panel-background: inherit;
  --engraving-message-separator: #afb4bb;
  --engraving-edit-separator-size: 1.125rem;
  --engraving-item-edit-label-size: 0.8125rem;
  --engraving-edit-icon: url('data:image/svg+xml,%0A%3Csvg xmlns="http://www.w3.org/2000/svg" width="20" height="20" fill="none"%3E%3Ccircle cx="7.5" cy="7.5" r="7.108" stroke="%231C1C1C" stroke-width=".784"/%3E%3Cpath fill="%231C1C1C" d="M7.018 8.68c0-.438.071-.797.212-1.074.148-.278.382-.542.704-.794.218-.174.382-.31.49-.407.11-.103.206-.239.29-.406.09-.168.135-.368.135-.6 0-.395-.122-.701-.366-.92-.238-.22-.56-.33-.964-.33-.443 0-.78.136-1.011.407-.225.264-.34.607-.347 1.026h-.867c0-.394.09-.745.27-1.055.18-.31.44-.552.78-.726.34-.181.739-.272 1.195-.272.43 0 .809.078 1.136.233.328.155.581.374.761.658.18.278.27.6.27.969 0 .367-.093.69-.28.968-.18.277-.433.545-.76.803a4.59 4.59 0 0 0-.55.514 1.154 1.154 0 0 0-.24.455 2.72 2.72 0 0 0-.068.678h-.79V8.68Zm-.067.892h.934v1.016h-.934V9.572Z"/%3E%3C/svg%3E') center center no-repeat;
  --engraving-edit-icon-height: 20px;
  --engraving-edit-icon-width: 20px;

  --empty-checkout-button-height: 2.6875rem;
  --empty-checkout-button-font-size: 0.875rem;
  --empty-checkout-button-font-color: #221f20;
  --empty-checkout-button-border-color: #6f6d6e;
  --empty-checkout-button-border-width: 1px;
  --empty-checkout-button-border-radius: 0;
  --empty-checkout-button-text-transform: capitalize;
  --empty-checkout-button-bg-color: var(--color-white);
  --empty-checkout-content-text-color: #6f6d6e;
  --empty-checkout-content-text-size: 0.9375rem;

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

  --bnpl-message-text-font-size: 0.875rem;
  --bnpl-afterpay-message-text-color: inherit;
  --payment-icons-text-color: inherit;

  /* Auto Replenishment settings */
  --auto-replenishment-disclaimer-font-size: 0.75rem;
  --auto-replenishment-disclaimer-line-height: 1.5;
  --auto-replenishment-disclaimer-color: #525252;
  --auto-replenishment-subscribe-label-font-size: 0.85rem;
  --auto-replenishment-subscribe-label-font-weight: 700;
  --auto-replenishment-subscribe-label-line-height: 1.5;
  --auto-replenishment-subscribe-label-color: #212121;
  --auto-replenishment-subscribe-checkbox-background-color: #000000;
  --auto-replenishment-subscribe-checkbox-border-color: #000000;
  --auto-replenishment-subscribe-icon-color: #000000;
  --auto-replenishment-dropdown-border-color: #A3A3A3;
  --auto-replenishment-dropdown-color: #525252;
  --auto-replenishment-dropdown-arrow-color: #000000;
  
  /* Cart Tooltip settings */
  --tooltip-button-background-color: transparent;
  --tooltip-hiddentext-color: #fff;
  --tooltip-hiddentext-wrapper-background-color: #262626;
  --tooltip-hiddentext-wrapper-arrow-background-color: #262626;
  --tooltip-alert-hiddentext-color: #a80000;
  --tooltip-alert-hiddentext-wrapper-background-color: #f9eeee;
  --tooltip-alert-hiddentext-wrapper-arrow-background-color: #f9eeee;

  /* Loyalty Panel */
  --loyalty-panel-wrapper-border-block-end: 1px solid #000000;
  --loyalty-panel-inner-background-color: #e5e5e5;
  --loyalty-panel-inner-text-color: #000000;
}

/* Loyalty Panel */
.elc-cart-page-container .elc-cart-loyalty-panel-wrapper {
  border-block-end: var(--loyalty-panel-wrapper-border-block-end);
}
.elc-cart-page-container .elc-cart-loyalty-panel-inner {
  background-color: var(--loyalty-panel-inner-background-color);
  color: var(--loyalty-panel-inner-text-color);
}

.elc-cart-auto-replenishment-tooltip-modal {
  --auto-replenishment-tooltip-modal-heading-color: #000000;
  --auto-replenishment-tooltip-modal-heading-font-family: var(--font-body);
  --auto-replenishment-tooltip-modal-heading-font-weight: 600;
  --auto-replenishment-tooltip-modal-subtitle-color: #000000;
  --auto-replenishment-tooltip-modal-subtitle-font-family: var(--font-body);
  --auto-replenishment-tooltip-modal-step-wrapper-border-color: #cccccc;
  --auto-replenishment-tooltip-modal-step-title-color: #000000;
  --auto-replenishment-tooltip-modal-step-title-line-height: 1.5;
  --auto-replenishment-tooltip-modal-step-title-font-family: var(--font-body);
  --auto-replenishment-tooltip-modal-step-description-color: #000000;
  --auto-replenishment-tooltip-modal-step-description-line-height: 1.5;
  --auto-replenishment-tooltip-modal-step-description-font-family: var(--font-body);
  --auto-replenishment-tooltip-modal-paragraph-footer-color: #525252;
  --auto-replenishment-tooltip-modal-paragraph-footer-line-height: 1.5;
  --auto-replenishment-tooltip-modal-paragraph-footer-font-family: var(--font-body);
}

.elc-cart-kits__item-name {
  color: var(--kit-item-name-color);
  font-family: var(--kit-item-name-font-family);
  font-size: var(--kit-item-name-font-size);
  line-height: var(--kit-item-name-line-height);
  text-transform: var(--kit-item-name-text-transform);
}

.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);
  mask: var(--checkout-button-icon) no-repeat;
}

.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-summary-discount .elc-tax-shipping-content-value {
  color: var(--success-color);
}

.elc-cart-page-container .elc-summary-discount .elc-discount-details {
  font-size: var(--summary-panel-discount-message-font-size);
  color: var(--summary-panel-discount-message-color);
  text-transform: var(--summary-panel-discount-message-transform);
}
.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 .elc-summary-label-text,
.elc-cart-page-container .elc-summary-subtotal-sticky .elc-summary-label-value,
.elc-cart-page-container .elc-sticky-total-item-count {
  color: var(--sticky-footer-subtotal-color);
  font-family: var(--sticky-footer-subtotal-font-family);
  font-size: var(--sticky-footer-subtotal-font-size);
  font-weight: var(--sticky-footer-subtotal-font-weight);
  text-transform: var(--sticky-footer-subtotal-text-transform);
}

.elc-cart-page-container .elc-summary-subtotal-sticky .elc-summary-label-value {
  margin-inline-start: 5px;
}

.elc-summary-subtotal-sticky .elc-summary-label-text::after {
  content: ':';
}

.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 {
  color: var(--summary-help-font-color);
  margin: 0 0.8rem;
  font-size: var(--summary-help-font-size);
  line-height: var(--summary-help-line-height);
  letter-spacing: var(--summary-help-letter-spacing);
}

.elc-cart-page-summary-wrapper .elc-drupal-node .elc-cart-page-summary-help a {
  color: inherit;
  font-family: inherit;
  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;
  flex-wrap: wrap;
}

.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-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: var(--item-description-product-quantity-label-transform);
  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 {
  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(--item-spinner-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-spinner-selector-button:disabled,
.elc-cart-page-container
  .elc-cart-item-description-product-quantity-spinner-selector
  .elc-spinner-selector-button.disabled {
  border-color: var(--item-spinner-disabled-border-color);
}

.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;
}

.elc-cart-page-container .elc-spinner-selector-button:disabled .elc-icon,
.elc-cart-page-container .elc-spinner-selector-button.disabled .elc-icon {
  background: var(--color-quantity-control-disabled);
}

.elc-cart-page-container .elc-cart-item-description-product-wrapper {
  color: var(--item-description-product-wrapper-color);
  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);
  font-family: var(--item-description-product-wrapper-shade-font-family);
  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);
  letter-spacing: var(--summary-panel-header-letter-spacing);
  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 {
  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);
  letter-spacing: var(--summary-panel-subtotal-letter-spacing);
}

.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,
.elc-cart-page-container .elc-summary-label-text,
.elc-cart-page-container .elc-summary-label-value {
  font-family: var(--summary-panel-item-font-family);
  font-size: var(--summary-panel-item-font-size);
  font-weight: var(--summary-panel-item-font-weight);
  line-height: var(--summary-panel-item-line-height);
  text-transform: var(--summary-panel-item-text-transform);
}

.elc-cart-page-container .elc-summary-label-value {
  text-transform: var(--summary-panel-label-value-text-transform);
}

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

.elc-cart-page-container .elc-vat-tax {
  text-transform: none;
  padding-block-start: 0;
}

.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);
}

/* Styles for content loading from CMS */
.elc-cart-page-wrapper .elc-cart-page-subtitle {
  color: var(--subtitle-font-color);
  font-family: var(--subtitle-font-family);
  font-size: var(--subtitle-font-size);
  line-height: var(--subtitle-line-height);
  letter-spacing: var(--subtitle-letter-spacing);
  margin-block-start: 0;
  margin-inline: 1.25rem;
  padding-block-start: 0.5rem;
  text-transform: var(--subtitle-text-transform);
}

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

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

.elc-cart-page-container .elc-cart-empty-message {
  color: var(--empty-checkout-content-text-color);
  font-size: var(--empty-checkout-content-text-size);
}

.elc-cart-page-container .elc-cart-empty-btn-wrapper .elc-cart-page-checkout-btn {
  background: var(--empty-checkout-button-bg-color);
  border: var(--empty-checkout-button-border-width) solid var(--empty-checkout-button-border-color);
  border-radius: var(--empty-checkout-button-border-radius);
  color: var(--empty-checkout-button-font-color);
  font-size: var(--empty-checkout-button-font-size);
  min-block-size: var(--empty-checkout-button-height);
  text-transform: var(--empty-checkout-button-text-transform);
}

/* Icons */

.elc-cart-payment-icons-wrapper {
  border-bottom: solid 1px var(--color-cart-items-border);
}

.elc-cart-page-container .elc-card-icon {
  background: var(--summary-panel-card-icon);
}

.elc-cart-page-container .elc-applepay-icon {
  background: var(--summary-panel-applepay-icon);
}

.elc-cart-page-container .elc-paypal-icon {
  background: var(--summary-panel-paypal-icon);
}

.elc-cart-page-container .elc-googlepay-icon {
  background: var(--summary-panel-googlepay-icon);
}

.elc-cart-payment-icons-wrapper .elc-card-icon,
.elc-cart-payment-icons-wrapper .elc-paypal-icon,
.elc-cart-payment-icons-wrapper .elc-googlepay-icon,
.elc-cart-payment-icons-wrapper .elc-applepay-icon {
  background-position: center;
  background-repeat: no-repeat;
  background-color: var(--color-white);
  border: 1px solid var(--color-cart-items-border);
  border-radius: var(--summary-panel-icons-border-radius);
  display: inline-flex;
  height: 24px;
  margin: 4px;
  text-indent: -999rem;
  width: 34px;
}

 /* The structural style is added here because the content is loaded from CMS */
.elc-cart-payment-icons-title {
  color: var(--payment-icons-text-color);
  font-size: var(--text-sm-4);
  text-transform: var(--font-text-transform-capitalize);
  margin-block: 7px 0;
  margin-inline: 0 4px;
}

/* Messages */
.elc-cart-page-messages-panel:empty {
  display: none;
}

.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-container .elc-cart-page-messages-panel.offer {
  margin: 0 1.25rem 1rem;
}

.elc-cart-page-empty .elc-cart-page-container .js-cart-page-messages-panel.offer {
  margin: 0;
}

.elc-cart-page-empty .elc-cart-page-loading{
  margin: 0 auto;
}

.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[data-message-severity="MESSAGE"],
.elc-cart-page-message[data-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);
  font-weight: var(--message-offer-font-weight);
}

.elc-cart-page-message[data-message-severity="MESSAGE"] .cart-limit-subtext {
  color: var(--message-error-sub-text-color);
  font-weight: var(--message-error-sub-text-weight);
}

.elc-cart-page-message.elc-threshold-messages[data-message-severity="MESSAGE"] {
  color: var(--message-info-color);
  background-color: var(--message-info-background-color);
}

.elc-cart-page-message[data-message-tag*="SUCCESS"]:not([data-message-tag*="trans_limit"],
[data-message-tag*="REMOVED_ITEM.OUT_OF_STOCK"]) {
  color: var(--message-success-color);
  border: solid 1px var(--message-success-border-color);
  background-color: var(--message-success-background-color);
}

.elc-cart-page-message.offer:not([data-message-tag*="trans_limit"]) {
  border: 1px solid var(--message-success-border-color);
  font-weight: var(--message-offer-font-weight);
  background-color: var(--message-offer-background-color);
  color: var(--message-offer-color);
  justify-content: center;
}

.elc-cart-page-message.offer:not([data-message-tag*="trans_limit"]) button.elc-cart-page-checkout-btn {
  font-size: var(--message-offer-button-font-size);
  font-weight: var(--message-offer-button-font-weight);
  text-transform: var(--message-offer-button-text-transform);
}

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

.elc-cart-page-message[data-message-severity="MESSAGE"] .elc-cart-page-messages-icon,
.elc-cart-page-message[data-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.elc-threshold-messages[data-message-severity="MESSAGE"]
 .elc-cart-page-messages-icon {
  background-color: var(--message-info-color);
}

.elc-cart-page-message[data-message-tag*="SUCCESS"]:not([data-message-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.offer:not([data-message-tag*="trans_limit"])
  .elc-cart-page-messages-icon {
  background-color: var(--message-offer-icon-color);
  -webkit-mask-image: var(--message-offer-icon-image);
  mask-image: var(--message-offer-icon-image);
}

.elc-cart-page-message[data-message-tag*="offer-manual"][data-message-tag*="SUCCESS"] {
  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;
  letter-spacing: var(--item-price-letter-spacing);
}

.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,
.elc-cart-page-container .elc-cart-item-free-price.elc-subtitle--2,
.elc-cart-page-container .elc-cart-item-loyalty-points {
  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-cart-item-free-price.elc-subtitle--2 {
  text-transform: var(--item-total-price-text-transform);
}

.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);
  letter-spacing: var(--summary-panel-letter-spacing);
}

.elc-cart-page-container
  .elc-cart-item-price
  .elc-cart-item-sample-price.elc-subtitle--2,
  .elc-cart-page-container .elc-cart-item-loyalty-name {
  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);
  letter-spacing: var(--cart-sample-label-letter-spacing);
  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 {
  font-family: var(--item-price-sample-font-family);
  font-weight: var(--item-price-sample-font-weight);
  letter-spacing: var(--item-price-letter-spacing);
  text-transform: uppercase;
}

.elc-cart-page-container .elc-cart-item-description-product-wrapper-shade::before {
  outline-color: var(--item-description-product-wrapper-shade-border-color);
}

.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);
  letter-spacing: var(--item-remove-button-letter-spacing);
}

/* Buy Now Pay Later */
.elc-cart-page-bnpl__eligible-message {
  font-size: var(--bnpl-message-text-font-size);
}

.elc-cart-page-bnpl .elc-more-info-icon {
  mask: var(--info-icon-image);
  width: 20px;
  height: 20px;
}

/* Klarna split payment messaging */
.elc-cart-page-klarna-message {
  font-size: var(--bnpl-message-text-font-size);
}

/* Afterpay split payment messsaging - 3rd party web component */
.elc-cart-page-container afterpay-placement {
  /* Variables below are provided by Afterpay for custom styling */
  --messaging-font-size: var(--bnpl-message-text-font-size);
  --messaging-margin-block-start: 0;
  --messaging-margin-block-end: 0;
  --logo-badge-width: 70px;
  color: var(--bnpl-afterpay-message-text-color);
}

/* Klarna modal content - This is content from Drupal so layout/spacing has been added here as there isn't a component to style */
.elc-cart-page-modal__content .klarna-information {
  font-family: var(--main-font-family);
  font-size: 1.125rem;
}

.elc-cart-page-modal__content .klarna-information__header {
  font-size: 2em;
}

.elc-cart-page-modal__content .klarna-information__list {
  list-style: auto;
  display: block;
  list-style-type: decimal;
  margin: 20px;
  padding-inline-start: 40px;
}

.elc-cart-page-modal__content .klarna-information__list-item {
  margin-block-end: 10px;
}

.elc-cart-page-modal__content .klarna-information__text {
  font-size: 0.9375rem;
}

.elc-cart-page-modal__content .klarna-information__list-item::marker {
  font-size: 1.5rem;
}

.elc-cart-page-modal__content .klarna-message-wrapper {
  font-size: 0.875rem;
}

.elc-cart-page-modal__content .klarna-information__link {
  text-decoration: underline;
}

.elc-cart-page-modal__content .klarna-information__link:focus,
.elc-cart-page-modal__content .klarna-information__link:hover {
  text-decoration: none;
}

/* Auto Replenishment */
.elc-cart-auto-replenishment-disclaimer {
  font-size: var(--auto-replenishment-disclaimer-font-size);
  line-height: var(--auto-replenishment-disclaimer-line-height); 
  color: var(--auto-replenishment-disclaimer-color);
}

.elc-cart-auto-replenishment-subscribe-label {
  font-size: var(--auto-replenishment-subscribe-label-font-size);
  font-weight: var(--auto-replenishment-subscribe-label-font-weight);
  line-height: var(--auto-replenishment-subscribe-label-line-height);
  color: var(--auto-replenishment-subscribe-label-color);
}

.elc-cart-auto-replenishment-subscribe-checkbox {
  border-color: var(--auto-replenishment-subscribe-checkbox-border-color);
}

.elc-cart-auto-replenishment-subscribe-checkbox:checked {
  background-color: var(--auto-replenishment-subscribe-checkbox-background-color);
}

.elc-cart-auto-replenishment-container .elc-icon {
  background-color: var(--auto-replenishment-subscribe-checkbox-background-color);
}

.elc-cart-auto-replenishment-container .elc-dropdown-wrapper::after {
  border-color: transparent var(--auto-replenishment-dropdown-arrow-color) var(--auto-replenishment-dropdown-arrow-color) transparent;
}

.elc-cart-auto-replenishment-container .elc-dropdown {
  border: 1px solid var(--auto-replenishment-dropdown-border-color);
  color: var(--auto-replenishment-dropdown-color);
}

.elc-cart-auto-replenishment-tooltip-modal-header {
  color: var(--auto-replenishment-tooltip-modal-heading-color);
  font-family: var(--auto-replenishment-tooltip-modal-heading-font-family);
  font-weight: var(--auto-replenishment-tooltip-modal-heading-font-weight);
}

.elc-cart-auto-replenishment-tooltip-modal-subtitle {
  color: var(--auto-replenishment-tooltip-modal-subtitle-color);
  font-family: var(--auto-replenishment-tooltip-modal-subtitle-font-family);
}

.elc-cart-auto-replenishment-tooltip-step-wrapper {
  border-color: var(--auto-replenishment-tooltip-modal-step-wrapper-border-color);
  font-family: var(--auto-replenishment-tooltip-modal-step-title-font-family);
}

.elc-cart-auto-replenishment-tooltip-step-title {
  color: var(--auto-replenishment-tooltip-modal-step-title-color);
  line-height: var(--auto-replenishment-tooltip-modal-step-title-line-height);
  font-family: var(--auto-replenishment-tooltip-modal-step-title-font-family);
}

.elc-cart-auto-replenishment-tooltip-step-description {
  color: var(--auto-replenishment-tooltip-modal-step-description-color);
  line-height: var(--auto-replenishment-tooltip-modal-step-description-line-height);
  font-family: var(--auto-replenishment-tooltip-modal-step-description-font-family);
}

.elc-cart-auto-replenishment-tooltip-modal-paragraph-footer {
  color: var(--auto-replenishment-tooltip-modal-paragraph-footer-color);
  line-height: var(--auto-replenishment-tooltip-modal-paragraph-footer-line-height);
  font-family: var(--auto-replenishment-tooltip-modal-paragraph-footer-font-family);
}
  
.elc-cart-item-engrave {
  background-color: var(--engraving-message-panel-background);
  border-color: var(--engraving-message-panel-border);
  color: var(--engraving-message-panel-text-color);
}

.elc-cart-item-engrave .elc-cart-item-engrave-edit::before {
  color: var(--engraving-message-separator);
  font-size: var(--engraving-edit-separator-size);
}

.elc-cart-item-engrave .elc-cart-item-engrave-tooltip-icon::after {
  background: var(--engraving-edit-icon);
  height: var(--engraving-edit-icon-height);
  width: var(--engraving-edit-icon-width);
}

.elc-cart-item-engrave-price,
.elc-cart-item-engrave-disclaimer {
  font-size: var(--engraving-text-label-size);
  font-family: var(--engraving-item-label-font);
}

.elc-cart-item-engrave-disclaimer {
  color: var(--engraving-disclaimer-color);
  font-size: var(--engraving-disclaimer-font-size);
  font-weight: var(--engraving-disclaimer-font-weight);
  letter-spacing: var(--engraving-disclaimer-letter-spacing);
}

.elc-cart-item-engrave-price .elc-cart-item-engrave-label,
.elc-cart-item-engrave-price .elc-cart-item-engrave-position,
.elc-cart-page-container .elc-cart-item-engrave .elc-cart-item-price.elc-subtitle--2,
.elc-cart-item-engrave .elc-cart-item-engrave-remove {
  font-size: var(--engraving-item-label-size);
  font-family: var(--engraving-item-label-font);
  letter-spacing: var(--engraving-item-label-letter-spacing);
  color: var(--engraving-item-label-color);
}

.elc-cart-item-engrave-price .elc-cart-item-engrave-label,
.elc-cart-item-engrave-price .elc-cart-item-engrave-position {
  color: var(--engraving-item-title-color);
  font-weight: var(--engraving-item-title-font-weight);
}

.elc-cart-item-engrave .elc-cart-item-engrave-edit {
  font-size: var(--engraving-item-edit-label-size);
}

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

.elc-cart-item-engrave-remove,
.elc-cart-item-engrave-edit {
  text-transform: var(--engraving-item-label-text-transform);
}

.elc-cart-item-engrave-price .elc-cart-item-engrave-message {
  font-weight: var(--engraving-message-font-weight);
  font-size: var(--engraving-message-font-size);
  font-style: var(--engraving-message-font-style);
  line-height: var(--engraving-message-line-height);
  letter-spacing: var(--engraving-message-letter-spacing);
  text-transform: var(--engraving-message-text-transform);
}

/* Cart Tooltip */
.elc-cart-tooltip-button {
  background-color: var(--tooltip-button-background-color);
}
.elc-cart-tooltip-hidden-text-wrapper {
  background-color: var(--tooltip-hiddentext-wrapper-background-color);

  &::before {
    background-color: var(--tooltip-hiddentext-wrapper-arrow-background-color);
  }
}
.elc-cart-tooltip-hidden-text {
  color: var(--tooltip-hiddentext-color);
}
.elc-cart-tooltip-hidden-text-wrapper.type-alert {
  background-color: var(--tooltip-alert-hiddentext-wrapper-background-color);

  &::before {
    background-color: var(--tooltip-alert-hiddentext-wrapper-arrow-background-color);
  }
}
.elc-cart-tooltip-hidden-text-wrapper.type-alert .elc-cart-tooltip-hidden-text {
  color: var(--tooltip-alert-hiddentext-color);
}

.elc-cart-item-alert {
  grid-column: 1 / 3;
  font-size: var(--item-alert-font-size);
  font-weight: var(--item-alert-text-weight);
  border: var(--item-alert-border-style);
}

.elc-cart-item-alert .elc-cart-item-alert-icon {
  mask: var(--info-icon-image);
  background-color: var(--color-off-black);
  width: 20px;
  height: 20px;
}

.item-error-alert {
  color: var(--alert-color);
  background-color: var(--message-error-background-color);
}

.item-error-alert .elc-cart-item-alert-icon {
  background-color: var(--alert-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-wrapper.elc-cart-page-empty {
    align-items: center;
  }

  .elc-cart-page-container .elc-cart-empty-message {
    text-align: center;
  }

  .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-page-messages-panel.offer {
    margin: 0 0 1rem;
  }

  .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 {
    box-shadow: none;
    position: static;
    padding: 0;
  }

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

  .elc-cart-page-container .elc-summary-subtotal-sticky,
  .elc-cart-page-container .elc-sticky-total-item-count {
    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;
  }

  /* Styles for content loading from CMS */
  .elc-cart-page-wrapper .elc-cart-page-subtitle {
    margin-inline: 0;
  }

  .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% - 100px);
    max-inline-size: none;
  }

  .elc-cart-page-wrapper .elc-elc-cart-item-details-wrapper .elc-more-info-icon {
    mask: var(--info-icon-image);
    height: 20px;
    width: 20px;
  }

  .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;
    padding-block-end: 5px;
  }

  .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;
    padding-block-end: 5px;
  }

  .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;
  }

  .elc-cart-page-message.offer:not([data-message-tag*="trans_limit"]) {
    align-items: center;
  }

}

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

  .elc-cart-page-empty .elc-cart-page-container {
    gap: 0;
  }

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

  .elc-cart-page-empty .elc-cart-page-items {
    inline-size: 68%;
  }
}

@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);
  }
}
