/* Phase 3 only: native single products, header and Phase 2 components are untouched. */
.cm-catalog,.cm-catalog *,.cm-catalog *::before,.cm-catalog *::after{box-sizing:border-box}
.cm-catalog [hidden]{display:none!important}
.cm-catalog{container-type:inline-size;max-width:var(--c-grid-max-width);width:min(var(--c-grid-width),calc(100% - min(var(--c-grid-margin-left),5%) - min(var(--c-grid-margin-right),5%)));margin:var(--c-grid-margin-top) auto var(--c-grid-margin-bottom);padding:var(--c-grid-padding-top) min(var(--c-grid-padding-right),5%) var(--c-grid-padding-bottom) min(var(--c-grid-padding-left),5%);background:var(--c-grid-background);border:var(--c-grid-border-width) solid var(--c-grid-border-color);border-radius:var(--c-grid-radius);transform:translateX(calc((min(var(--c-grid-margin-left),5vw) - min(var(--c-grid-margin-right),5vw))/2))}
.cm-catalog-grid{display:grid;grid-template-columns:repeat(var(--c-grid-columns),minmax(0,1fr));column-gap:min(var(--c-grid-gap-x),4cqi);row-gap:var(--c-grid-gap-y);list-style:none;margin:0;padding:0;min-width:0}
.cm-pcard{display:flex;flex-direction:column;min-width:0;container-type:inline-size;overflow-wrap:anywhere;text-align:var(--c-card-align);min-height:var(--c-card-min-height);background:var(--c-card-background);border:var(--c-card-border-width) var(--c-card-border-style) var(--product-outline,var(--c-card-border-color));border-radius:var(--c-card-radius);padding:var(--c-card-padding-top) min(var(--c-card-padding-right),2cqi) var(--c-card-padding-bottom) min(var(--c-card-padding-left),2cqi);margin:var(--c-card-margin-top) min(var(--c-card-margin-right),1cqi) var(--c-card-margin-bottom) min(var(--c-card-margin-left),1cqi);color:white}
.cm-pcard:hover,.cm-pcard:focus-within{background:var(--c-card-hover-background);border-color:var(--c-card-hover-border)}
.cm-pcard :focus-visible{outline:2px var(--c-card-focus-style) var(--c-card-focus-color);outline-offset:3px}
.cm-pcard a{color:inherit;text-decoration:none;overflow-wrap:anywhere}
.cm-pcard-media{position:relative;aspect-ratio:2/3;height:var(--c-card-frame-height);width:var(--c-card-image-width);max-width:100%;margin:0 auto var(--c-card-image-gap);background:var(--c-card-image-background);border:var(--c-card-image-border-width) solid var(--c-card-image-border);border-radius:min(var(--c-card-image-radius),15cqi);overflow:hidden;flex-shrink:0}
.cm-pcard-media-link{position:absolute;inset:0;display:block;border-radius:inherit}
.cm-pcard-media-link>img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:100%;object-fit:contain;object-position:var(--c-card-image-x) var(--c-card-image-y);padding:min(var(--c-card-image-padding),10cqi);border-radius:inherit}
.cm-pcard-media-link:focus-visible{outline:2px solid var(--c-card-focus-color);outline-offset:-3px}
.cm-pcard-no-image{position:absolute;inset:0;display:grid;place-content:center;padding:8px;color:#aaa;font:12px/1.4 system-ui,sans-serif;text-align:center}
.cm-pcard-title{text-transform:var(--c-typography-title-transform)}
.cm-pcard-special{display:var(--c-typography-special-visible);color:var(--product-special,var(--c-typography-special-color))!important}
.cm-pcard-notes{display:var(--c-typography-notes-visible);color:var(--product-notes,var(--c-typography-notes-color))!important}
.cm-pcard-tax{display:var(--c-typography-tax-visible);color:var(--product-tax,var(--c-typography-tax-color))!important}
.cm-pcard-separator{display:var(--c-separator-visible);justify-content:var(--c-separator-flex-align);padding:var(--c-separator-padding-top) min(var(--c-separator-padding-right),10cqi) var(--c-separator-padding-bottom) min(var(--c-separator-padding-left),10cqi);margin:var(--c-separator-margin-top) min(var(--c-separator-margin-right),10cqi) var(--c-separator-margin-bottom) min(var(--c-separator-margin-left),10cqi)}
.cm-pcard-separator span{display:block;width:var(--c-separator-width);max-width:100%;height:var(--c-separator-thickness);background:var(--c-separator-color)}
.cm-pcard-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 8px;justify-content:var(--c-prices-current-align)}
.cm-pcard-price ins{order:1;background:none;color:inherit;text-decoration:none}
.cm-pcard-price del{order:2;opacity:1}
.cm-pcard-price .screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.cm-pcard-unpriced{color:#aaa;font:13px/1.4 system-ui,sans-serif}
.cm-pcard-action{margin-top:auto;display:var(--c-button-visible);justify-content:var(--c-button-flex-align)}
.cm-pcard-cta{display:flex;justify-content:var(--c-button-icon-align);align-items:center;min-width:0;max-width:100%;width:var(--c-button-width);min-height:max(var(--c-button-min-height),var(--c-button-height));background:var(--c-button-background);border:var(--c-button-border-width) solid var(--c-button-border-color);border-radius:var(--c-button-radius);padding:var(--c-button-padding-top) min(var(--c-button-padding-right),5cqi) var(--c-button-padding-bottom) min(var(--c-button-padding-left),5cqi);margin:var(--c-button-margin-top) min(var(--c-button-margin-right),5cqi) var(--c-button-margin-bottom) min(var(--c-button-margin-left),5cqi);transition:background-color var(--c-button-transition),border-color var(--c-button-transition)}
.cm-pcard-cta:hover,.cm-pcard-cta:focus-visible{background:var(--c-button-hover-background);border-color:var(--c-button-hover-border)}
.cm-pcard-icon{position:relative;flex:none;width:min(var(--c-button-icon-width),100%);height:var(--c-button-icon-height);color:var(--c-button-icon-color)}
.cm-pcard-icon-normal,.cm-pcard-icon-hover{position:absolute;inset:0;align-items:center;justify-content:center;padding:var(--c-button-icon-padding-top) min(var(--c-button-icon-padding-right),10%) var(--c-button-icon-padding-bottom) min(var(--c-button-icon-padding-left),10%)}
.cm-pcard-icon-normal{display:flex}.cm-pcard-icon-hover{display:none;color:var(--c-button-icon-hover-color)}
.cm-pcard-icon svg,.cm-pcard-icon img{width:100%;height:100%;display:block;object-fit:contain}
.cm-pcard-icon--mobile{display:none}
.cm-pcard-cta:focus-visible .cm-pcard-icon-normal{display:none}.cm-pcard-cta:focus-visible .cm-pcard-icon-hover{display:flex}
@media(hover:hover) and (pointer:fine){.cm-pcard-cta:hover .cm-pcard-icon-normal{display:none}.cm-pcard-cta:hover .cm-pcard-icon-hover{display:flex}}
.cm-catalog-more{display:flex;flex-direction:column;align-items:var(--c-load_more-flex-align)}
.cm-catalog-load{display:var(--c-load_more-visible);align-items:center;justify-content:center;gap:8px;cursor:pointer;max-width:100%;width:var(--c-load_more-width);min-height:max(var(--c-load_more-min-height),var(--c-load_more-height));color:var(--c-load_more-label-color);background:var(--c-load_more-background);border:var(--c-load_more-border-width) solid var(--c-load_more-border-color);border-radius:var(--c-load_more-radius);padding:var(--c-load_more-padding-top) min(var(--c-load_more-padding-right),5%) var(--c-load_more-padding-bottom) min(var(--c-load_more-padding-left),5%);margin:var(--c-load_more-margin-top) min(var(--c-load_more-margin-right),5%) var(--c-load_more-margin-bottom) min(var(--c-load_more-margin-left),5%)}
.cm-catalog-load:hover,.cm-catalog-load:focus-visible{background:var(--c-load_more-hover-background);border-color:var(--c-load_more-hover-border);color:var(--c-load_more-hover-color)}
.cm-catalog-load:focus-visible{outline:2px solid var(--c-card-focus-color);outline-offset:4px}
.cm-catalog-load:disabled{cursor:wait;opacity:.7}
.cm-catalog-label--mobile{display:none}
.cm-catalog-status{font:14px/1.5 system-ui,sans-serif;color:white;margin:8px 0;text-align:center;max-width:100%;overflow-wrap:anywhere}
.cm-catalog-status:empty{margin:0}
.cm-catalog{min-width:min(280px,100%)}
.cm-pcard-cta{min-width:min(44px,100%)}
.cm-catalog-load{min-width:min(140px,100%);container-type:inline-size}
.cm-catalog-load>span{min-width:0;overflow-wrap:anywhere}
.cm-catalog-spinner{display:none;flex:none;width:var(--c-load_more-indicator-size);height:var(--c-load_more-indicator-size);border:2px solid var(--c-load_more-indicator-color);border-right-color:transparent;border-radius:50%}
.cm-catalog-load[aria-busy=true] .cm-catalog-spinner{display:block;animation:cm-catalog-spin .8s linear infinite}
@keyframes cm-catalog-spin{to{transform:rotate(360deg)}}
@media(max-width:767px){.cm-pcard-icon--desktop,.cm-catalog-label--desktop{display:none}.cm-pcard-icon--mobile{display:block}.cm-catalog-label--mobile{display:block}}
@media(prefers-reduced-motion:reduce){.cm-pcard-cta{transition:none}.cm-catalog-spinner{animation:none!important}}
.cm-pcard-title{font-family:var(--c-typography-title-font);font-size:min(var(--c-typography-title-size),20cqi);font-weight:var(--c-typography-title-weight);letter-spacing:min(var(--c-typography-title-tracking),2cqi);line-height:var(--c-typography-title-leading);color:var(--c-typography-title-color);text-align:var(--c-typography-title-align);padding:var(--c-typography-title-padding-top) min(var(--c-typography-title-padding-right),5cqi) var(--c-typography-title-padding-bottom) min(var(--c-typography-title-padding-left),5cqi);margin:var(--c-typography-title-margin-top) min(var(--c-typography-title-margin-right),5cqi) var(--c-typography-title-margin-bottom) min(var(--c-typography-title-margin-left),5cqi)}
.cm-pcard-special{font-family:var(--c-typography-special-font);font-size:min(var(--c-typography-special-size),20cqi);font-weight:var(--c-typography-special-weight);letter-spacing:min(var(--c-typography-special-tracking),2cqi);line-height:var(--c-typography-special-leading);color:var(--c-typography-special-color);text-align:var(--c-typography-special-align);padding:var(--c-typography-special-padding-top) min(var(--c-typography-special-padding-right),5cqi) var(--c-typography-special-padding-bottom) min(var(--c-typography-special-padding-left),5cqi);margin:var(--c-typography-special-margin-top) min(var(--c-typography-special-margin-right),5cqi) var(--c-typography-special-margin-bottom) min(var(--c-typography-special-margin-left),5cqi)}
.cm-pcard-notes{font-family:var(--c-typography-notes-font);font-size:min(var(--c-typography-notes-size),20cqi);font-weight:var(--c-typography-notes-weight);letter-spacing:min(var(--c-typography-notes-tracking),2cqi);line-height:var(--c-typography-notes-leading);color:var(--c-typography-notes-color);text-align:var(--c-typography-notes-align);padding:var(--c-typography-notes-padding-top) min(var(--c-typography-notes-padding-right),5cqi) var(--c-typography-notes-padding-bottom) min(var(--c-typography-notes-padding-left),5cqi);margin:var(--c-typography-notes-margin-top) min(var(--c-typography-notes-margin-right),5cqi) var(--c-typography-notes-margin-bottom) min(var(--c-typography-notes-margin-left),5cqi)}
.cm-pcard-tax{font-family:var(--c-typography-tax-font);font-size:min(var(--c-typography-tax-size),20cqi);font-weight:var(--c-typography-tax-weight);letter-spacing:min(var(--c-typography-tax-tracking),2cqi);line-height:var(--c-typography-tax-leading);color:var(--c-typography-tax-color);text-align:var(--c-typography-tax-align);padding:var(--c-typography-tax-padding-top) min(var(--c-typography-tax-padding-right),5cqi) var(--c-typography-tax-padding-bottom) min(var(--c-typography-tax-padding-left),5cqi);margin:var(--c-typography-tax-margin-top) min(var(--c-typography-tax-margin-right),5cqi) var(--c-typography-tax-margin-bottom) min(var(--c-typography-tax-margin-left),5cqi)}
.cm-pcard-price{font-family:var(--c-prices-current-font);font-size:min(var(--c-prices-current-size),20cqi);font-weight:var(--c-prices-current-weight);letter-spacing:min(var(--c-prices-current-tracking),2cqi);line-height:var(--c-prices-current-leading);color:var(--c-prices-current-color);text-align:var(--c-prices-current-align);padding:var(--c-prices-current-padding-top) min(var(--c-prices-current-padding-right),5cqi) var(--c-prices-current-padding-bottom) min(var(--c-prices-current-padding-left),5cqi);margin:var(--c-prices-current-margin-top) min(var(--c-prices-current-margin-right),5cqi) var(--c-prices-current-margin-bottom) min(var(--c-prices-current-margin-left),5cqi)}
.cm-pcard-price del{font-family:var(--c-prices-original-font);font-size:min(var(--c-prices-original-size),20cqi);font-weight:var(--c-prices-original-weight);letter-spacing:min(var(--c-prices-original-tracking),2cqi);line-height:var(--c-prices-original-leading);color:var(--c-prices-original-color);text-align:var(--c-prices-original-align);padding:var(--c-prices-original-padding-top) min(var(--c-prices-original-padding-right),5cqi) var(--c-prices-original-padding-bottom) min(var(--c-prices-original-padding-left),5cqi);margin:var(--c-prices-original-margin-top) min(var(--c-prices-original-margin-right),5cqi) var(--c-prices-original-margin-bottom) min(var(--c-prices-original-margin-left),5cqi)}
.cm-catalog-label--desktop,.cm-catalog-label--mobile{font-family:var(--c-load_more-label-font);font-size:min(var(--c-load_more-label-size),20cqi);font-weight:var(--c-load_more-label-weight);letter-spacing:min(var(--c-load_more-label-tracking),2cqi);line-height:var(--c-load_more-label-leading);color:var(--c-load_more-label-color);text-align:var(--c-load_more-label-align);padding:var(--c-load_more-label-padding-top) min(var(--c-load_more-label-padding-right),5cqi) var(--c-load_more-label-padding-bottom) min(var(--c-load_more-label-padding-left),5cqi);margin:var(--c-load_more-label-margin-top) min(var(--c-load_more-label-margin-right),5cqi) var(--c-load_more-label-margin-bottom) min(var(--c-load_more-label-margin-left),5cqi)}

.cm-catalog-load:hover>span:not(.cm-catalog-spinner),.cm-catalog-load:focus-visible>span:not(.cm-catalog-spinner){color:var(--c-load_more-hover-color)}

.cm-pcard-media{align-self:var(--c-card-flex-align);margin-left:0;margin-right:0}
/* Clip the image inside the card curve without clipping card focus outlines. */
.cm-pcard-media{border-top-left-radius:max(min(var(--c-card-image-radius),15cqi),calc(var(--c-card-radius) - var(--c-card-border-width)));border-top-right-radius:max(min(var(--c-card-image-radius),15cqi),calc(var(--c-card-radius) - var(--c-card-border-width)))}
.cm-catalog-label--desktop,.cm-catalog-label--mobile{flex:1}
/* Center the strike on the amount glyph box, independent of del line-height/padding. */
.cm-pcard-price del{text-decoration:none}
.cm-pcard-price del .amount{position:relative}
.cm-pcard-price del .amount::after{content:"";position:absolute;pointer-events:none;top:50%;left:50%;transform:translate(-50%,-50%);width:var(--c-prices-strike-length);height:var(--c-prices-strike-width);background:var(--c-prices-strike-color)}
