/* Keep page width steady when the cart locks scrolling. */
html{scrollbar-gutter:stable}
body.epm-cart-open{overflow:hidden!important}#epm-cart[hidden]{display:none!important}#epm-cart{position:fixed;inset:0;z-index:2147483000;font-family:inherit;font-size:14px;line-height:1.5;color:#262633;text-align:left}#epm-cart *{box-sizing:border-box}#epm-cart .epm-cart-shade{position:absolute;inset:0;background:var(--epm-backdrop);animation:epm-cart-shade-in var(--epm-overlay-duration) var(--epm-overlay-easing)}#epm-cart .epm-cart-drawer{position:absolute;right:0;top:0;bottom:0;width:460px;max-width:100%;background:#fff;box-shadow:-15px 0 50px #0002;display:flex;flex-direction:column;outline:none;animation:epm-cart-in var(--epm-overlay-duration) var(--epm-overlay-easing)}#epm-cart header{display:flex;justify-content:space-between;align-items:center;padding:30px 28px 24px;border-bottom:1px solid #ece9f0;flex-shrink:0}#epm-cart h2{font-family:inherit;font-size:26px;line-height:1.3;font-weight:600;margin:5px 0 0;color:#282534}#epm-cart-title{display:flex;align-items:center;gap:8px}#epm-count-title{color:#9b92aa;font-size:18px;font-weight:400;line-height:1}#epm-cart button{font:inherit;cursor:pointer}#epm-cart button:disabled{cursor:wait;opacity:.5}#epm-cart .epm-close{display:flex;align-items:center;justify-content:center;flex-shrink:0;border:0;background:#f5f3f7;border-radius:50%;width:36px;height:36px;color:#817689;padding:0}#epm-cart .epm-close svg{display:block;width:18px;height:18px;pointer-events:none}#epm-cart-feedback{font-size:14px;color:#537b66;margin:0 28px;flex-shrink:0}#epm-cart-feedback:not(:empty){padding:15px 0 0}#epm-cart-feedback.epm-error{color:#a04848}#epm-cart-items{overflow:auto;flex:1;min-height:0;padding:10px 28px 20px}#epm-cart .epm-cart-item{display:flex;gap:14px;padding:24px 0;border-bottom:1px solid #eeebf2;align-items:flex-start}#epm-cart .epm-cart-item:last-child{border-bottom:0}/* Match the 230px product card at 84px: scale its 400px perspective and -500px depth by 84/230. */
#epm-cart .epm-thumbnail{display:block;width:64px;height:84px;object-fit:contain;flex-shrink:0;position:relative;left:2%;transform-origin:50% 50%;transform:translateZ(-182.609px) perspective(146.087px) rotateY(24deg)}#epm-cart .epm-cart-item>div{flex:1;min-width:0}#epm-cart .epm-item-title{color:#38303f;font-size:16px;line-height:1.4;font-weight:600;text-decoration:none}#epm-cart .epm-item-title:hover{text-decoration:underline}#epm-cart .epm-cart-item p{font-size:14px;line-height:1.4;color:#8b8491;margin:5px 0 9px}#epm-cart .epm-cart-item>strong{font-size:16px;white-space:nowrap;font-weight:600}#epm-cart .epm-remove{font-size:13px;color:#918396;border:0;background:none;padding:2px 0;text-decoration:underline}#epm-cart footer{padding:24px 28px 28px;border-top:1px solid #e9e6ed;background:#fcfbfd;flex-shrink:0}#epm-cart .epm-subtotal{display:flex;justify-content:space-between;align-items:center;font-size:16px}#epm-cart .epm-subtotal strong{font-size:23px;font-weight:600}#epm-cart .epm-digital{font-size:13px;color:#8b8393;margin:7px 0 19px}#epm-cart .epm-checkout-note{font-size:12px;line-height:1.6;background:#f0ecf7;color:#7e6d91;border-radius:7px;padding:13px 15px;margin-bottom:16px}#epm-cart .epm-continue{display:block;width:100%;border:1px solid #dcd4e5;background:white;padding:12px;border-radius:7px;color:#766184;font-size:12px;font-weight:600}#epm-cart .epm-empty{text-align:center;padding:70px 15px}#epm-cart .epm-empty>span{display:block;font:40px Georgia;color:#baa9cc;margin-bottom:18px}#epm-cart .epm-empty h3{font-size:20px;font-family:inherit;font-weight:500;margin:0 0 9px}#epm-cart .epm-empty p{font-size:12px;color:#8c8195;line-height:1.6;margin:0 0 25px}#epm-cart .epm-empty a{color:#827090;text-decoration:none;font-size:12px}#epm-cart .epm-loading{color:#8c8195;padding:20px 0;font-size:13px}#epm-cart :focus-visible{outline:2px solid #a18bb3!important;outline-offset:3px}#epm-cart footer[hidden]{display:none!important}a[data-epm-cart-open]{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}[data-epm-cart-count]{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#f2ebf7;color:#493653;font-size:12px;font-weight:700;line-height:1;font-variant-numeric:tabular-nums;flex-shrink:0}@keyframes epm-cart-in{from{transform:translateX(100%)}to{transform:translateX(0)}}@keyframes epm-cart-shade-in{from{opacity:0}to{opacity:1}}@media(prefers-reduced-motion:reduce){#epm-cart .epm-cart-drawer,#epm-cart .epm-cart-shade{animation:none}}@media(max-width:480px){#epm-cart .epm-cart-drawer{width:100%}#epm-cart header{padding:23px 22px}#epm-cart-items{padding-left:22px;padding-right:22px}#epm-cart footer{padding:20px 22px}#epm-cart-feedback{margin-left:22px;margin-right:22px}}@media(max-height:560px){#epm-cart footer{padding:14px 22px}#epm-cart .epm-checkout-note{margin-bottom:8px;padding:8px;font-size:11px}#epm-cart .epm-digital{margin-bottom:8px}#epm-cart header{padding:14px 22px}}

#epm-cart .epm-checkout-link{display:block;text-align:center;background:#78618d;color:white;padding:14px;border-radius:7px;text-decoration:none;font-weight:600;font-size:13px;margin-top:18px}#epm-cart .epm-checkout-note{text-align:center;font-size:13px;background:transparent;padding:0;margin:9px 0 17px}

/* One drawer owns the cart, payment and download steps. */
#epm-cart [hidden]{display:none!important}#epm-cart.epm-authenticating{z-index:1000}#epm-cart-view{display:flex;flex:1;min-height:0;flex-direction:column}#epm-cart .epm-step{flex:1;overflow:auto;min-height:0;padding:22px 28px 28px}#epm-cart .epm-checkout-link{width:100%;border:0;cursor:pointer}#epm-cart #epm-checkout-next{background:var(--green,hsl(84,59%,46%));font-size:16px}#epm-cart .epm-back{background:none;border:0;padding:0;margin:0 0 20px;color:#766184;text-decoration:underline}#epm-cart .epm-summary-item{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #eee}#epm-cart .epm-summary-item strong{white-space:nowrap}#epm-cart .epm-summary-item small{display:block;color:#716979;font-size:11px;margin-top:4px}#epm-payment-view>.epm-subtotal{margin:18px 0 24px}#epm-cart fieldset{border:0;padding:0;margin:0;min-width:0}#epm-cart legend{font-size:16px;font-weight:600;margin-bottom:12px}#epm-payment-fields>label,#epm-card-area>label{display:block;font-size:12px;margin:12px 0 5px}#epm-payment-fields>input{width:100%;background:#fff;border:1px solid #dcd4e5;border-radius:5px;padding:12px;font-family:inherit;font-size:16px;line-height:1.4;color:#262633}#epm-cart .epm-help{font-size:12px;line-height:1.6;color:#716979}#epm-cart .epm-methods{margin:24px 0 18px;display:flex;gap:24px}#epm-cart .epm-methods label{display:flex;gap:7px;align-items:center}#epm-cart .epm-methods input{margin:0;accent-color:#78618d}#epm-card-element{border:1px solid #dcd4e5;border-radius:5px;padding:14px 10px;min-height:48px}#epm-cart .epm-download{padding:18px 0 24px;border-bottom:1px solid #eee;margin-bottom:20px}#epm-cart .epm-download h3{font-family:inherit;font-weight:600;font-size:16px;line-height:1.4;margin:0 0 6px}#epm-cart .epm-download p{overflow-wrap:anywhere}#epm-check-again{margin:20px 0}#epm-order-summary{overflow-wrap:anywhere}#epm-cart button:disabled{cursor:not-allowed}@media(max-width:480px){#epm-cart .epm-step{padding:20px 22px}}


#epm-cart #epm-card-error{font-size:16px;line-height:1.5;font-weight:600;color:#ff0000;margin:10px 0 0}#epm-cart #epm-card-error:empty{display:none}#epm-cart #epm-card-element.epm-invalid{border-color:#ff0000}

#epm-cart #epm-cart-footer .epm-continue{font-size:16px}

/* Matching footer controls; shared SVG rendering comes from buttons.js. */
#epm-cart #epm-cart-footer .epm-checkout-link,#epm-cart #epm-cart-footer .epm-continue{display:flex;align-items:center;justify-content:center;height:52px;padding:0 26px;line-height:1.4}

/* Keep checkout color steady during brief cart updates; disabled still blocks clicks. */
#epm-cart #epm-checkout-next:disabled{opacity:1}

/* Align checkout labels with the field contents; let required stars hang left. */
#epm-cart #epm-payment-fields>label,#epm-cart #epm-card-area>label {
  position:relative;
  padding-left:var(--epm-field-padding-x,20px);
}
#epm-cart .epm-required {
  position:absolute;
  left:calc(var(--epm-field-padding-x,20px) - 13px);
  color:#ff0000;
}
#epm-cart .epm-required-info {
  color:#ff0000;font-size:12px;margin:0 0 12px;
  padding-left:var(--epm-field-padding-x,20px);
}
#epm-cart .epm-sr-only {
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* Field guidance and errors align with their labels and input text. */
#epm-cart #epm-payment-fields>input+.epm-help,
#epm-cart #epm-card-area>.epm-help,
#epm-cart #epm-card-error {
  padding-left:var(--epm-field-padding-x,20px);
  padding-right:var(--epm-field-padding-x,20px);
}

/* Hidden counters take no space, including the flex gap beside Cart. */
[data-epm-cart-count][hidden]{display:none!important}
