/* Catalogue actions stay outside the photo/title link. */
.cm-storefront .cm-product-stock-badge { position:absolute; right:10px; top:10px; padding:5px 9px; border:1px solid #151617; background:#151617; color:#f1eee7; font-size:11px; font-weight:750; line-height:1.5; }
.cm-storefront .cm-product-grid .cm-catalog-card .cm-card-action:disabled,
.cm-storefront .cm-product-grid .cm-catalog-card .cm-card-action:disabled:hover { border-color:#c9c4b9; background:#ded9ce; color:#6b6458; cursor:not-allowed; }
.cm-storefront .cm-pdp .cm-pdp-stock-notice { display:grid; gap:5px; margin-top:20px; padding:16px; border-left:3px solid #f26338; background:#e6dfd2; color:#151617; font-size:14px; line-height:1.6; }
.cm-storefront .cm-pdp .cm-pdp-stock-notice strong { font-size:18px; }
.cm-storefront .cm-pdp .cm-pdp-stock-alternative { display:inline-flex; align-items:center; min-height:44px; margin-top:10px; color:#7a321d; font-size:14px; font-weight:700; }
.cm-storefront .cm-catalog-card { display:flex; flex-direction:column; min-width:0; }
.cm-storefront .cm-catalog-card .cm-card-link { height:auto; }
.cm-storefront .cm-product-grid .cm-catalog-card .cm-card-body { padding-bottom:0; }
.cm-storefront .cm-product-grid .cm-catalog-card .cm-card-body h3 { min-height:0; margin:0; }
.cm-storefront .cm-product-grid .cm-catalog-card .cm-card-buy { margin-top:auto; padding-top:12px; gap:12px; }
.cm-storefront .cm-catalog-card .cm-card-actions { display:grid; gap:8px; }
.cm-storefront .cm-catalog-card .cm-card-action {
  display:flex; align-items:center; justify-content:space-between; gap:8px;
  box-sizing:border-box; width:100%; min-height:46px; padding:11px 14px;
  border:1px solid #151617; color:#151617; font-family:inherit;
  font-size:14px; font-weight:750; line-height:1.4; text-decoration:none;
  transition:background-color .15s ease, color .15s ease;
}
.cm-storefront .cm-catalog-card .cm-card-action span { font-size:19px; line-height:1; font-weight:500; }
.cm-storefront .cm-catalog-card .cm-card-action-buy { background:#f26338; border-color:#f26338; }
.cm-storefront .cm-catalog-card .cm-card-action-buy:hover { background:#ff805b; border-color:#ff805b; }
.cm-storefront .cm-catalog-card .cm-card-action-cart { background:transparent; }
.cm-storefront .cm-catalog-card .cm-card-action-cart:hover { color:#f1eee7; background:#151617; }
.cm-storefront .cm-catalog-card .cm-card-action:focus-visible,
.cm-storefront .cm-catalog-card .cm-card-link:focus-visible,
.cm-storefront .cm-card-preview-dialog a:focus-visible,
.cm-storefront .cm-card-preview-dialog button:focus-visible { outline:3px solid #a93415; outline-offset:4px; }
.cm-storefront #cm-pdp-purchase { scroll-margin-top:24px; }
.cm-storefront .cm-card-preview-dialog {
  box-sizing:border-box; width:min(480px, calc(100vw - 32px)); max-height:calc(100dvh - 40px);
  margin:auto; padding:32px; border:1px solid #151617; color:#151617;
  background:#f1eee7; font-family:inherit; text-align:left; overflow:auto;
}
.cm-storefront .cm-card-preview-dialog::backdrop { background:rgb(0 0 0 / .65); }
.cm-storefront .cm-card-preview-dialog .cm-card-preview-kicker { margin:0 0 18px; color:#a93415; font-size:12px; font-weight:750; text-transform:uppercase; letter-spacing:.05em; }
.cm-storefront .cm-card-preview-dialog h2 { margin:0 0 16px; font-family:inherit; font-size:32px; font-weight:800; line-height:1.15; letter-spacing:-.04em; }
.cm-storefront .cm-card-preview-dialog .cm-card-preview-product { margin:0 0 10px; font-size:16px; font-weight:750; line-height:1.5; }
.cm-storefront .cm-card-preview-dialog #cm-card-preview-description { margin:0 0 24px; font-size:15px; line-height:1.7; }
.cm-storefront .cm-card-preview-dialog .cm-card-preview-choose,
.cm-storefront .cm-card-preview-dialog .cm-card-preview-close {
  box-sizing:border-box; display:flex; align-items:center; justify-content:center; gap:12px;
  width:100%; min-height:46px; padding:12px; line-height:1.5;
  text-decoration:none; cursor:pointer;
}
.cm-storefront .cm-card-preview-dialog .cm-card-preview-choose { color:#151617; background:#f26338; border:1px solid #f26338; font-family:inherit; font-size:14px; font-weight:750; }
.cm-storefront .cm-card-preview-dialog .cm-card-preview-close { margin-top:10px; background:transparent; color:#151617; border:1px solid #99958c; font-family:inherit; font-size:14px; font-weight:650; }
@media (max-width:700px) {
  .cm-storefront .cm-catalog-card .cm-card-action { padding:11px 10px; font-size:13px; }
  .cm-storefront .cm-card-preview-dialog { padding:24px; }
}
@media (prefers-reduced-motion:reduce) {
  .cm-storefront .cm-catalog-card .cm-card-action { transition:none; }
}
