﻿/* Carrello e checkout: stessa palette cacao, avorio e oro della navigazione. */
#cartModal [hidden]{display:none!important}
#cartModal .delivery-options{display:flex;flex-wrap:wrap;gap:8px 12px;margin:0 0 14px;padding:8px 12px;border:1px solid #c9b79d}
#cartModal .delivery-options legend{padding:0 5px;color:#433126;font-size:13px;font-weight:600}
#cartModal .delivery-options label{display:flex;align-items:center;gap:6px;min-height:36px;font-size:13px;cursor:pointer;margin:0}
#cartModal .delivery-options input{width:auto;margin:0;accent-color:#433126}
#cartModal .store-pickup-details{padding:16px;background:#f5efe7;border:1px solid #ded2c3;margin-bottom:20px;line-height:1.7}
#cartModal .store-pickup-details > strong{display:block;font-size:20px;font-weight:600;line-height:1.3;color:#433126;margin-bottom:8px}
#cartModal .store-pickup-details p{font-size:12px;font-weight:400;line-height:1.45;margin:6px 0;color:#65564a}
#cartModal .store-pickup-details .store-pickup-address{font-size:14px;font-weight:400;color:#433126;line-height:1.5;margin:0 0 14px}
#cartModal .store-pickup-details .store-pickup-address + p{font-size:13px;font-weight:600;line-height:1.5;color:#433126;margin:0}
#cartModal .shipping-info-button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;margin-left:5px;border:1px solid #795c37;border-radius:50%;color:#433126;background:transparent;font-size:14px;cursor:pointer}
#cartModal #shippingCountry{width:100%;max-width:100%;padding:12px;border:1px solid #c9b79d;background:#fffdf9;color:#433126;font:inherit}
.shipping-info-dialog{width:min(760px,94vw);max-height:85dvh;margin:auto;padding:24px;background:#fffdf9;color:#433126;border:1px solid #c9b79d;overflow-y:auto}
.shipping-info-dialog::backdrop{background:rgba(0,0,0,.65)}
.shipping-info-dialog p{line-height:1.7;margin:0 0 16px}
.shipping-info-header{display:flex;align-items:start;justify-content:space-between;gap:16px;margin-bottom:20px}
.shipping-info-header h2{margin:0;font-size:24px}
.shipping-info-header .btn{padding:8px 12px;font-size:12px;letter-spacing:0}
#cartModal .modal-content{padding:0;border-radius:0;background:#fffdf9}
#cartModal .cart-banner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 30px;background:linear-gradient(110deg,#33261f,#584131);border-bottom:1px solid #c9a962;color:#fffaf3}
#cartModal .cart-banner p{font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:#e6c99a;margin:0 0 7px}
#cartModal .cart-banner h2{font-family:'Cormorant Garamond',Georgia,serif;color:inherit;font-size:32px;font-weight:400;margin:0}
#cartModal .cart-banner .modal-close{position:static;color:#fffaf3;font-size:30px;min-width:44px;min-height:44px;flex-shrink:0}
#cartModal .cart-review-step{padding:24px 30px 30px}
#cartModal .cart-review-step .cart-summary{padding:8px 0;font-size:1.1rem}
#cartModal .cart-checkout-button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;margin-top:8px;padding:10px 16px;background:#433126;color:#fffaf3;border-radius:0;min-height:44px;font-size:12px;letter-spacing:.12em}
#cartModal .cart-checkout-button:hover{background:#654a36}
#cartModal .cart-checkout-button:disabled{opacity:.45;cursor:not-allowed}
#cartModal.checkout-open{justify-content:center;align-items:center;padding:24px}
#cartModal.checkout-open .modal-content{width:min(1160px,100%);max-width:1160px;height:auto;max-height:calc(100dvh - 48px);border-radius:4px}
#cartModal .cart-checkout-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start}
#cartModal .checkout-form-panel{padding:24px 30px 30px;min-width:0}
#cartModal .checkout-order-panel{padding:30px;background:#f5efe7;border-left:1px solid #ded2c3;min-width:0;align-self:stretch}
#cartModal .checkout-back{color:#725331;text-decoration:underline;text-underline-offset:4px;font-size:12px;min-height:44px;margin-bottom:12px}
#cartModal .checkout-form-panel>h3,#cartModal .checkout-order-panel>h3{font-family:'Cormorant Garamond',Georgia,serif;font-size:25px;font-weight:500;margin:0 0 18px;color:#433126}
#cartModal .checkout-order-panel .cart-items{max-height:none;overflow:visible}
#cartModal .cart-item-details{min-width:0;overflow-wrap:anywhere}
#cartModal .cart-item-details p{font-size:12px;font-weight:400;color:#65564a}
#cartModal .cart-item-image{width:72px;height:84px;object-fit:cover}
#cartModal .cart-product-image{flex-shrink:0}
#cartModal .cart-summary{border-color:#c9b79d}
#cartModal .cart-summary,#cartModal .cart-summary strong{color:#433126}
#cartModal .btn-primary,#cartModal .btn-outline,#cartModal .remove-btn{background:#433126;border-color:#433126;color:#fffaf3}
#cartModal .btn-primary:hover,#cartModal .btn-outline:hover,#cartModal .remove-btn:hover{background:#654a36;border-color:#654a36;color:#fffaf3}
#cartModal .checkout-back{color:#433126}
#cartModal .checkout-back:hover{color:#654a36}
#cartModal .quantity-controls button{border-color:#433126;color:#433126}
#cartModal .quantity-controls button:hover{background:#433126;color:#fffaf3}
#cartModal .btn:disabled,#cartModal .remove-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}
#cartModal .quantity-controls button{min-width:36px;min-height:36px}
#cartModal button:focus-visible,#cartModal a:focus-visible{outline:2px solid #a88b4a;outline-offset:3px}
#cartModal #cartDialogTitle:focus{outline:none}
@media(max-width:760px){
 #cartModal.checkout-open{padding:0;align-items:stretch}
 #cartModal.checkout-open .modal-content{max-height:100dvh;height:100%;border-radius:0}
 #cartModal .cart-checkout-layout{grid-template-columns:minmax(0,1fr)}
 #cartModal .checkout-order-panel{border-left:0;border-top:1px solid #ded2c3}
 #cartModal .cart-banner,#cartModal .cart-review-step,#cartModal .checkout-form-panel,#cartModal .checkout-order-panel{padding:20px}
 #cartModal .cart-item{gap:10px;flex-wrap:wrap}
 #cartModal .cart-item-details{flex:1;min-width:130px}
}
#cartModal .cart-banner{padding:12px 24px}
#cartModal .cart-banner p{margin-bottom:3px}
#cartModal .cart-banner h2{font-size:26px}
@media(prefers-reduced-motion:reduce){#cartModal .modal-content{transition:none;animation:none}}

.club-discount{padding:12px 0;border-top:1px solid #ded2c3;margin-top:12px}.club-discount label{display:block;font-size:12px;margin-bottom:5px}.club-discount input{width:100%;min-width:0;min-height:40px;padding:8px 10px;border:1px solid #c9b79d;background:#fffdf9;font:inherit;font-size:13px;box-sizing:border-box}.club-discount-fields{display:flex;gap:8px;margin-bottom:10px}.club-discount-fields input{flex:1;width:0;text-transform:uppercase}.club-discount-fields .btn{min-height:44px;padding:8px 14px;font-size:11px;letter-spacing:.05em;white-space:nowrap}.club-discount [role=status]{font-size:12px;line-height:1.5;margin:8px 0 0}.club-discount [role=status]:empty{display:none}.club-discount-row{margin-top:8px;color:#433126}
#cartReviewStep .club-discount{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px 12px;padding:8px 0;margin-top:8px}
#cartReviewStep .club-discount label{font-size:11px;line-height:1.4;margin:0}
#cartReviewStep .club-discount label[for="club-code-0"]{grid-column:1;grid-row:1}
#cartReviewStep .club-discount-fields{grid-column:1;grid-row:2;gap:6px;margin:0;min-width:0}
#cartReviewStep .club-discount label[for="club-email-0"]{grid-column:2;grid-row:1}
#cartReviewStep .club-discount>input[type=email]{grid-column:2;grid-row:2}
#cartReviewStep .club-discount input{min-height:36px;padding:6px 8px;font-size:12px}
#cartReviewStep .club-discount-fields .btn{min-height:36px;padding:6px 10px;letter-spacing:0;font-size:11px}
#cartReviewStep .club-discount [role=status],#cartReviewStep .club-discount-row{grid-column:1/-1;margin-top:4px}
@media(max-width:480px){
 #cartReviewStep .club-discount{grid-template-columns:minmax(0,1fr);gap:3px}
 #cartReviewStep .club-discount label[for="club-email-0"]{grid-column:1;grid-row:3;margin-top:4px}
 #cartReviewStep .club-discount>input[type=email]{grid-column:1;grid-row:4}
 #cartReviewStep .club-discount-fields .btn{min-height:44px}
}
