.header .cmm-cart-trigger{position:relative;display:inline-flex!important;align-items:center;justify-content:center;width:44px;height:44px;flex:none;color:#292929}
.cmm-cart-trigger svg{width:24px;height:24px}.cmm-cart-count:empty{display:none}.cmm-cart-count{position:absolute;right:0;top:0;min-width:17px;height:17px;padding:0 4px;border-radius:12px;background:#000;color:white;font:11px/17px Arial;text-align:center}
html.cmm-cart-open{overflow:hidden}
.cmm-cart-drawer{position:fixed;inset:0 0 0 auto;margin:0;width:400px;max-width:100vw;height:100dvh;max-height:100dvh;padding:0;border:0;background:#fff;color:#292929;overflow:auto;font:14px/1.6 Arial,Helvetica,sans-serif;box-shadow:-4px 0 20px #00000012}
.cmm-cart-drawer[open]{display:flex;flex-direction:column;animation:cmm-cart-slide .25s ease-out}.cmm-cart-drawer::backdrop{background:rgba(0,0,0,.36)}
.cmm-cart-close{position:absolute;right:8px;top:10px;width:40px;height:40px;display:grid;place-items:center;background:transparent;border:0;color:#292929;cursor:pointer;z-index:1}
.cmm-cart-content{display:flex;flex-direction:column;flex:1;padding:66px 30px 30px;min-height:100%}.cmm-cart-content.is-empty{justify-content:center;text-align:center;padding:64px 30px}
.cmm-cart-drawer h2{font:bold 24px/1.3 Arial,Helvetica,sans-serif;letter-spacing:0;margin:0 0 12px}.cmm-cart-empty p{margin:0 0 27px;font-size:14px;line-height:1.65}.cmm-cart-empty p a{text-decoration:underline;text-underline-offset:2px}
.cmm-cart-drawer .button,.cmm-cart-continue{display:inline-flex;justify-content:center;align-items:center;gap:0;margin:0;padding:13px 20px;min-height:46px;border:0;border-radius:14px;background:#000;color:white;font:14px/20px Arial,Helvetica,sans-serif;cursor:pointer;text-decoration:none}.cmm-cart-continue{min-width:200px}.cmm-cart-drawer button:focus-visible,.cmm-cart-drawer a:focus-visible{outline:2px solid #292929;outline-offset:4px}
.cmm-cart-drawer .woocommerce-mini-cart{list-style:none;padding:0;margin:20px 0}.cmm-cart-drawer .woocommerce-mini-cart-item{position:relative;min-height:100px;padding:0 24px 20px 0;margin:0 0 20px;border-bottom:1px solid #eee}.cmm-cart-drawer .woocommerce-mini-cart-item img{float:left;width:72px;height:80px;margin:0 14px 10px 0;object-fit:contain}.cmm-cart-drawer .remove{position:absolute;right:0;top:0;font-size:22px}.cmm-cart-drawer .quantity{display:block;margin-top:8px}.cmm-cart-drawer .variation{font-size:12px}.cmm-cart-drawer .woocommerce-mini-cart__total{border-top:1px solid #eee;padding-top:20px;margin-top:auto}.cmm-cart-drawer .woocommerce-mini-cart__buttons{display:grid;gap:10px}.cmm-cart-drawer .woocommerce-mini-cart__buttons .button:first-child{background:#f3f3f3;color:#292929}
@keyframes cmm-cart-slide{from{transform:translateX(100%)}to{transform:translateX(0)}}@media(prefers-reduced-motion:reduce){.cmm-cart-drawer[open]{animation:none}}
.cmm-cart-count .screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

.cmm-cart-drawer .woocommerce-mini-cart__total:has(.cmm-cart-delivery-summary){border-top:0;padding-top:0}
.cmm-cart-drawer .cmm-cart-delivery-summary{display:block;margin:0 0 20px;padding:0 0 16px;border-bottom:1px solid #eee;color:#000;font:12px/1.5 Arial,Helvetica,sans-serif}
.cmm-cart-delivery-summary>span{display:block}
.cmm-cart-delivery-summary .cmm-cart-delivery-free{color:#000;font-weight:600;margin-bottom:4px}
.cmm-cart-delivery-estimate+.cmm-cart-delivery-estimate{margin-top:8px}
.cmm-cart-delivery-products{font-weight:600}

/* Keep each model label and value on the same line, including the mini-cart. */
.cmm-cart-drawer dl.variation{display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:5px;row-gap:4px;margin:2px 0 8px;padding:0;border:0}
.cmm-cart-drawer dl.variation dt,.cmm-cart-drawer dl.variation dd{float:none;display:block;margin:0;padding:0;line-height:1.5;font-weight:400;min-width:0}
.cmm-cart-drawer dl.variation dd p{margin:0;padding:0;line-height:inherit}

.cmm-cart-recommendation{list-style:none;margin:0 0 8px;padding:0;border:1px solid #e5e9e2;border-radius:10px;overflow:hidden}
.cmm-cart-recommendation h3{margin:0;padding:10px 12px;background:#f3f5f0;color:#314735;font:600 13px/1.4 Arial,Helvetica,sans-serif;text-align:center}
.cmm-cart-recommendation-card{display:flex;align-items:center;gap:11px;padding:12px;color:inherit;text-decoration:none}
.cmm-cart-recommendation-card img{flex:0 0 76px;width:76px;height:76px;object-fit:cover;border-radius:5px}
.cmm-cart-recommendation-info{min-width:0;flex:1;display:grid;gap:4px;font:12px/1.4 Arial,Helvetica,sans-serif}
.cmm-cart-recommendation-info small{color:#64705f;font-size:10px}
.cmm-cart-recommendation-name{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cmm-cart-recommendation-price{font-weight:600;color:#314735}
.cmm-cart-recommendation-view{display:grid;place-items:center;flex:0 0 30px;height:30px;border-radius:5px;background:#314735;color:#fff}
.cmm-cart-recommendation-card:hover .cmm-cart-recommendation-name{text-decoration:underline;text-underline-offset:3px}

/* Keep checkout pinned to the bottom while the cart contents scroll above it. */
.cmm-cart-drawer{overflow:hidden}
.cmm-cart-drawer .cmm-cart-content{position:static;height:100%;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:calc(110px + env(safe-area-inset-bottom))}
.cmm-cart-drawer .cmm-cart-content>h2{order:-2;flex-shrink:0}
.cmm-cart-drawer .cmm-cart-content>.woocommerce-mini-cart__buttons{position:absolute;left:30px;right:30px;bottom:0;z-index:3;margin:0;padding:16px 0 calc(20px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e5e9e2}
.cmm-cart-drawer .woocommerce-mini-cart__buttons .button.checkout{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;background:#314735;color:#fff}
.cmm-cart-drawer .cmm-cart-content> :not(.woocommerce-mini-cart__buttons){flex-shrink:0}
.cmm-cart-drawer .cmm-cart-close{background:#fff;z-index:4}

/* Separate the cart heading from its articles. */
.cmm-cart-drawer .cmm-cart-content:not(.is-empty)>h2{padding-bottom:16px;border-bottom:1px solid #d7ddd3;margin-bottom:12px}

/* Center the store identity above the cart title on all screens. */
@media(min-width:0px){
 .cmm-cart-brand-header{display:flex;align-items:center;justify-content:center;flex:0 0 68px;min-height:68px;width:100%;padding:10px 52px 6px;box-sizing:border-box;background:#fff}
 .cmm-cart-brand{display:flex;align-items:center;justify-content:center;gap:8px;max-width:100%;color:#203f30;text-decoration:none}
 .cmm-cart-brand .cmm-home-brand-mark{width:30px;height:36px;flex:0 0 30px}
 .cmm-cart-brand>span{display:flex;flex-direction:column;align-items:center}
 .cmm-cart-brand .brand-name{font:30px/1 'CMM Caslon',Georgia,serif;white-space:nowrap;letter-spacing:-1px}
 .cmm-cart-brand small{font:8px/1.5 'CMM Sans',Arial,sans-serif;letter-spacing:3px;margin-top:4px}
 .cmm-cart-drawer .cmm-cart-content{height:auto;flex:1;min-height:0;padding-top:12px}
 .cmm-cart-drawer .cmm-cart-close{top:14px}
 .cmm-cart-brand:focus-visible{outline:2px solid #203f30;outline-offset:4px}
}
