.cart-page{max-width:980px!important;margin:auto!important;padding:35px clamp(20px,5vw,65px)!important}.cart-row{display:grid;grid-template-columns:minmax(0,1fr) auto 110px;gap:24px;align-items:center;border-bottom:1px solid #ddd;padding:20px 0}.cart-item-description{display:flex;gap:18px;align-items:center;min-width:0}.cart-item-description img{width:95px;height:95px;object-fit:cover}.cart-item-description p{font-size:14px;color:#666}.cart-qty{display:flex;gap:14px;align-items:center}.cart-qty button{background:#f7f3ee;border:1px solid #aaa;padding:8px 13px;cursor:pointer;font-size:18px}.cart-continue{display:inline-block;margin:18px 0;color:#536637}#delivery-options{margin:25px 0;padding:25px;border:1px solid #ddd}#delivery-options label{display:block;margin:16px 0}#delivery-options select,#delivery-options input[type=date]{display:block;padding:10px;margin-top:8px;max-width:320px;width:100%}#continue-checkout{background:#627353;color:white;border:0;padding:14px 24px;cursor:pointer}#continue-checkout:disabled{opacity:.5;cursor:not-allowed}[hidden]{display:none!important}@media(max-width:620px){.cart-row{grid-template-columns:1fr auto;gap:14px}.cart-row>strong{grid-column:2}.cart-item-description img{width:75px;height:75px}}
.pickup-calendar-block{margin:20px 0;max-width:440px}
.pickup-calendar-nav{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0}
.pickup-calendar-nav button{border:1px solid #b4bdad;background:#fff;color:#36452d;border-radius:4px;padding:7px 15px;font:24px Georgia,serif;cursor:pointer}
.pickup-calendar-nav button:disabled{opacity:.3;cursor:default}
.pickup-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;text-align:center}
.calendar-weekday{font:12px Arial,sans-serif;color:#555;padding:8px 0}
.calendar-date{min-height:44px;display:flex;justify-content:center;align-items:center}
.calendar-date button{width:100%;min-height:43px;border-radius:5px;border:1px solid #9cae88;background:#f3f7f0;color:#253d17;cursor:pointer;font:16px Georgia,serif}
.calendar-date button:hover,.calendar-date button:focus-visible{background:#dcebd4;outline:2px solid #627353}
.calendar-date button.selected{background:#627353;color:white;border-color:#627353}
.calendar-empty{grid-column:1/-1;font:14px Georgia,serif}
#pickup-selection{font-weight:bold;color:#40542f}
#pickup-restriction{font-size:14px;line-height:1.5;color:#654a28}
@media(max-width:500px){.calendar-date{min-height:38px}.calendar-date button{min-height:38px}}

/* Cart products left, the entire delivery method right. */
.cart-page{max-width:1200px!important;width:100%!important}
.cart-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,1fr);align-items:start;gap:clamp(22px,3vw,48px)}
.cart-products-column{min-width:0}
.cart-layout #delivery-options{min-width:0;margin:0;padding:24px}
.cart-layout .cart-row{grid-template-columns:minmax(0,1fr) auto;gap:12px}
.cart-layout .cart-row>strong{grid-column:2;justify-self:end}
.cart-layout .cart-item-description{gap:12px}
.cart-layout .cart-item-description img{width:72px;height:72px;flex-shrink:0}
.cart-layout #delivery-options input:not([type=radio]),.cart-layout #delivery-options select{max-width:100%;width:100%;min-width:0}
@media(max-width:780px){.cart-layout{grid-template-columns:minmax(0,1fr)}.cart-layout #delivery-options{margin-top:12px}.cart-layout .cart-row{grid-template-columns:minmax(0,1fr) auto}}

/* Cart reference layout: full-width products, instructions left, delivery right. */
main.cart-page{max-width:1200px!important;width:100%!important;margin:0 auto!important;padding:28px clamp(20px,5vw,70px) 55px!important;display:block!important}
.cart-top-section{background:transparent!important;padding:0 0 24px!important}
.cart-title-row{display:flex;align-items:center;justify-content:space-between;gap:18px}
.cart-title-row h1{font:normal 34px Georgia,serif;margin:0 0 18px;color:#765328}
.cart-title-row .cart-continue{margin:0;color:#b08045;text-decoration:none}
.cart-column-labels{display:grid;grid-template-columns:minmax(0,1fr) 160px 115px;gap:16px;padding:12px 0;border-bottom:1px solid #e0ded9;color:#886b46;font:12px Arial,sans-serif;letter-spacing:1px}
.cart-column-labels span:nth-child(2){text-align:center}
.cart-column-labels span:nth-child(3){text-align:right}
.cart-top-section .cart-row{grid-template-columns:minmax(0,1fr) 160px 115px;gap:16px;padding:24px 0;align-items:center;border-bottom:1px solid #e0ded9}
.cart-top-section .cart-row>strong{grid-column:3;justify-self:end}
.cart-top-section .cart-item-description img{width:86px;height:86px;object-fit:cover}
.cart-top-section .cart-qty{justify-self:center}
.cart-checkout-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,.85fr);gap:clamp(35px,7vw,110px);padding-top:28px;align-items:start}
.cart-notes label{display:block;margin:0 0 12px;font:16px Georgia,serif}
.cart-notes textarea{display:block;box-sizing:border-box;width:100%;max-width:390px;min-height:110px;padding:12px;border:1px solid #aaa;border-radius:3px;font:16px Georgia,serif;resize:vertical}
.cart-delivery-column{width:100%;min-width:0}
.cart-estimated-total{display:flex;justify-content:space-between;align-items:center;gap:14px;font:16px Georgia,serif}
.cart-estimated-total #cart-subtotal{font:normal 20px Georgia,serif;white-space:nowrap}
.cart-taxes-note{font-size:13px;text-align:right;color:#666;margin:12px 0 24px}
.cart-delivery-column #delivery-options{border:0!important;margin:0!important;padding:0!important;width:100%}
.cart-delivery-column #delivery-options h2{margin:0 0 16px}
.cart-delivery-column #delivery-options input:not([type=radio]),.cart-delivery-column #delivery-options select{box-sizing:border-box;width:100%;max-width:100%}
.cart-delivery-column #continue-checkout{display:block;width:100%;margin-top:20px}
.cart-delivery-column .pickup-calendar-block{max-width:none}
@media(max-width:760px){.cart-checkout-layout{grid-template-columns:minmax(0,1fr);gap:35px}.cart-column-labels{grid-template-columns:minmax(0,1fr) 90px 85px}.cart-top-section .cart-row{grid-template-columns:minmax(0,1fr) 90px 85px}.cart-top-section .cart-item-description img{width:65px;height:65px}.cart-notes textarea{max-width:100%}}
@media(max-width:490px){.cart-column-labels{grid-template-columns:minmax(0,1fr) 70px 75px;font-size:10px;gap:7px}.cart-top-section .cart-row{grid-template-columns:minmax(0,1fr) 70px 75px;gap:7px}.cart-top-section .cart-item-description{gap:8px}.cart-top-section .cart-item-description img{width:50px;height:50px}.cart-top-section .cart-qty{gap:4px}.cart-top-section .cart-qty button{padding:4px 7px}.cart-top-section .cart-row>strong{font-size:13px}}

/* Unavailable calendar dates must look unavailable and cannot receive pointer clicks. */
#pickup-calendar .calendar-date button:disabled{background:#f1f1f1!important;border:1px solid #e5e5e5!important;color:#a8a8a8!important;opacity:1!important;cursor:not-allowed!important;pointer-events:none!important;box-shadow:none!important;outline:none!important}
#pickup-calendar .calendar-date button:not(:disabled){background:#eef5e8!important;border:1px solid #9cae88!important;color:#253d17!important;cursor:pointer!important}
#pickup-calendar .calendar-date button.selected:not(:disabled){background:#627353!important;color:#fff!important;border-color:#627353!important}

/* Pickup time appears only after an available date is selected. */
.pickup-date-time-selection{display:flex;flex-wrap:wrap;align-items:end;gap:14px;margin-top:12px}
.pickup-date-time-selection #pickup-selection{margin:0;flex:1 1 145px}
.pickup-date-time-selection #pickup-time-row{flex:1 1 210px;margin:0;font-weight:600}
.pickup-date-time-selection #pickup-time{display:block;width:100%;min-height:46px;margin-top:6px;padding:10px;border:1px solid #9cae88;border-radius:5px;background:#fff;color:#263f22;font:16px Arial,sans-serif}
@media(max-width:520px){.pickup-date-time-selection{display:block}.pickup-date-time-selection #pickup-time-row{margin-top:12px}}
