/* Cart drawer and two-step payment page, in the Lotti palette. */
dialog.cart-drawer{position:fixed;inset:0 0 0 auto;margin:0;width:min(470px,100vw);height:100dvh;max-height:100dvh;max-width:100vw;border:0;border-radius:0;padding:0;background:#f7f2e7;color:#321e10;overflow:hidden;font:16px/1.5 Georgia,serif;box-shadow:-15px 0 50px #0002}
dialog.cart-drawer[open]{display:flex;flex-direction:column;animation:drawer-in .3s ease-out}
.cart-drawer::backdrop{background:#000a;backdrop-filter:none}
@keyframes drawer-in{from{transform:translateX(100%)}to{transform:translateX(0)}}
.cart-drawer .drawer-header{padding:26px 28px 16px;position:relative;border-bottom:1px solid #d4c7b250;flex:none}
.cart-drawer .drawer-header h2{font:29px/1.2 Georgia,serif;letter-spacing:-.02em;margin:0 38px 8px 0}
.cart-drawer #drawer-count{font-size:14px;margin:0}
.cart-drawer .drawer-header .close{position:absolute;inset:17px 17px auto auto;width:34px;height:34px;font:29px/1 Georgia,serif;border:0;background:none;color:inherit;padding:0}
.cart-drawer #cart-items{overflow-y:auto;overscroll-behavior:contain;padding:4px 28px 22px;flex:1;min-height:0}
.cart-drawer .drawer-item{display:grid;grid-template-columns:58px minmax(0,1fr) auto;align-items:start;gap:15px;padding:24px 0;border:0}
.cart-drawer .drawer-photo{display:block;margin:0}
.cart-drawer .drawer-photo img{width:58px;height:104px;object-fit:contain}
.cart-drawer .drawer-item-info h3{font:18px/1.25 Georgia,serif;margin:0 0 6px}
.cart-drawer .drawer-item-info h3 a{display:inline;margin:0}
.cart-drawer .drawer-item-info p{font-size:12px;line-height:1.5;margin:3px 0;color:#79694f}
.cart-drawer .drawer-line-total{font-size:14px;white-space:nowrap;padding-top:1px}
.cart-drawer .drawer-item-actions{display:flex;align-items:center;gap:12px;margin-top:10px}
.cart-drawer .drawer-quantity{display:flex;align-items:center;border:1px solid #a49377;border-radius:30px;height:30px}
.cart-drawer .drawer-quantity button{border:0;background:none;font-size:16px;width:29px;height:28px;padding:0;margin:0;line-height:1}
.cart-drawer .drawer-quantity output{font-size:13px;min-width:25px;text-align:center}
.cart-drawer button.drawer-remove{display:grid;place-items:center;border:0;border-radius:0;margin:0;padding:4px;background:none;width:29px;height:29px}
.drawer-remove svg{height:18px;width:18px}
.cart-drawer .drawer-footer{flex:none;padding:0 28px 25px;background:#f7f2e7;max-height:48dvh;overflow-y:auto}
.cart-drawer #cart-total{font-size:15px;margin:0}
.drawer-shipping-note{display:flex;justify-content:space-between;gap:15px;border-bottom:2px solid #b99461;padding:15px 0 12px;font-size:12px;color:#8b714e;margin:0 0 18px}
.drawer-totals{margin:0}.drawer-totals>div{display:flex;justify-content:space-between;gap:20px;padding:5px 0;border:0}.drawer-totals dt,.drawer-totals dd{font:15px/1.5 Georgia,serif;letter-spacing:0;margin:0}
.drawer-totals .drawer-grand-total{border-top:1px solid #cbbca5;padding-top:13px;margin-top:6px}.drawer-grand-total dt,.drawer-grand-total dd{font-size:18px}
.drawer-tax-note{font-size:11px;line-height:1.6;margin:10px 0 15px;color:#79694f}
.cart-drawer #checkout-button,.cart-drawer .drawer-continue{display:block;width:100%;text-align:center;border-radius:999px;font:14px/1.4 Georgia,serif;padding:14px 20px;min-height:48px}
.cart-drawer #checkout-button{border:1px solid #37200e;background:#37200e;color:#fff3df}.cart-drawer #checkout-button:before{content:"";display:inline-block;width:12px;height:13px;margin-right:10px;vertical-align:-1px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='2' d='M7 10V7a5 5 0 0 1 10 0v3M5 10h14v11H5z'/%3E%3C/svg%3E") center/contain no-repeat}.cart-drawer #checkout-button:disabled{opacity:.45}
.cart-drawer .drawer-continue{border:1px solid #79694f;color:#37200e;background:transparent;margin-top:11px}
.cart-drawer #checkout-message{font:11px/1.5 Arial,sans-serif;color:#79694f;margin:10px 0 0;text-align:center}
.checkout-page{background:#f7f2e7;color:#321e10;padding:175px 6vw 100px;min-height:70svh}
.checkout-page>h1{text-align:center;font:40px/1.2 Georgia,serif;letter-spacing:-.02em;margin:0 0 65px}
.checkout-layout{max-width:1200px;margin:auto;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:7vw;align-items:start}
.checkout-layout[hidden],.checkout-page [hidden]{display:none!important}
.checkout-step{border-bottom:1px solid #d6c9b3;padding-bottom:28px;margin-bottom:30px}
.checkout-step-heading{display:flex;align-items:center;gap:13px;margin-bottom:26px}
.checkout-step-heading>span{border:1px solid currentColor;border-radius:50%;height:25px;width:25px;display:grid;place-items:center;font:13px Arial,sans-serif;flex:none}
.checkout-step-heading h2{font:20px/1.4 Georgia,serif;letter-spacing:0;margin:0}.checkout-step-heading button{margin-left:auto;border:0;background:none;border-bottom:1px solid #aa9677;padding:2px;font:13px Georgia,serif}
.checkout-form label{display:block;font:13px/1.4 Arial,sans-serif;color:#79694f;margin:0 0 15px}
.checkout-form input:not([type=checkbox]),.checkout-form select,.checkout-form textarea{display:block;width:100%;border:1px solid #d3c8b5;border-radius:7px;background:transparent;padding:14px;color:#321e10;font:15px/1.5 Georgia,serif;margin-top:6px;box-sizing:border-box}
.checkout-form input[readonly]{color:#79694f;background:#e9e0d140}
.checkout-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.checkout-form .street-row{grid-template-columns:minmax(0,3fr) minmax(90px,1fr)}
.checkout-form fieldset{border:0;margin:0;padding:0;min-width:0}.checkout-form .checkout-check{display:flex;align-items:start;gap:9px;font:14px/1.6 Georgia,serif;color:inherit;margin:18px 0}.checkout-check input{width:16px;height:16px;flex:none;margin:3px 0 0;accent-color:#37200e}
.checkout-privacy{font:12px/1.7 Arial,sans-serif;color:#8b7b64;margin:17px 0 23px}.checkout-privacy a{text-decoration:underline}
.checkout-page .pill{border:1px solid #37200e;border-radius:999px;background:#37200e;color:#fff3df;font:15px/1.4 Georgia,serif;padding:15px 27px;display:inline-block}.checkout-page .pill:disabled{opacity:.45}
.checkout-page .checkout-status{font:14px/1.7 Georgia,serif;margin:18px 0 0;color:#796047}.checkout-status:empty{display:none}
.checkout-step.step-disabled{color:#b9ae9a}.checkout-step.step-disabled .checkout-step-heading{margin-bottom:0}.checkout-step.step-complete .checkout-step-heading>span{background:#6e7c51;color:#fff;border-color:#6e7c51}
.checkout-saved{font-size:15px;line-height:1.8;color:#79694f;margin:0 0 10px}
.checkout-order-summary{position:sticky;top:145px;border:1px solid #dfd4c1;border-radius:13px;padding:28px}
.checkout-order-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.checkout-order-heading h2{font:22px/1.4 Georgia,serif;letter-spacing:0;margin:0}.checkout-order-heading button{border:0;border-bottom:1px solid #b6a286;background:none;font:13px Georgia,serif;color:inherit;padding:2px}
.checkout-order-item{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:15px;align-items:start;margin-bottom:24px}.checkout-order-photo{position:relative}.checkout-order-photo img{width:40px;height:65px;object-fit:contain}.checkout-order-photo>.checkout-item-count{position:absolute;right:-6px;top:-8px;background:#6d6559;color:#fff;border-radius:50%;width:21px;height:21px;display:grid;place-items:center;font:11px Arial,sans-serif}.checkout-order-item a{font:15px/1.4 Georgia,serif}.checkout-order-item p{font:11px/1.7 Arial,sans-serif;color:#978973;margin:5px 0 0}.checkout-order-item>strong{font:14px/1.4 Georgia,serif;white-space:nowrap}
.checkout-order-summary dl{border-top:1px solid #dfd4c1;padding-top:20px;margin:25px 0 0}.checkout-order-summary dl>div{display:flex;justify-content:space-between;gap:20px;border:0;padding:8px 0}.checkout-order-summary dt,.checkout-order-summary dd{font:14px/1.5 Georgia,serif;margin:0;color:#8b7b64}.checkout-order-summary .checkout-total{border-top:1px solid #dfd4c1;margin-top:10px;padding-top:17px}.checkout-total dt,.checkout-total dd{font-size:20px!important;color:#321e10!important}.checkout-summary-note{font:11px/1.7 Arial,sans-serif;color:#8b7b64;text-align:right;margin-top:12px}
.payment-choice{border:1px solid #cdbb9e;border-radius:9px;padding:20px;margin-bottom:20px}.payment-choice strong{font:20px Georgia,serif}.payment-choice p{font:14px/1.7 Georgia,serif;color:#79694f;margin:13px 0 0}.checkout-empty{text-align:center;max-width:600px;margin:auto;padding:40px 0 70px}.checkout-empty p{margin:20px 0 28px}
@media(max-width:760px){
 .cart-drawer .drawer-header{padding:24px 22px 15px}.cart-drawer #cart-items{padding:0 22px 20px}.cart-drawer .drawer-footer{padding:0 22px 20px}.cart-drawer .drawer-item{gap:12px;grid-template-columns:48px minmax(0,1fr) auto}.cart-drawer .drawer-photo img{width:48px;height:92px}.cart-drawer .drawer-item-info h3{font-size:17px}.cart-drawer .drawer-line-total{font-size:13px}
 .checkout-page{padding:145px 6vw 65px}.checkout-page>h1{font-size:34px;margin-bottom:42px}.checkout-layout{grid-template-columns:1fr;gap:35px}.checkout-order-summary{position:static;padding:23px;grid-row:1}.checkout-form .form-row{gap:12px}.checkout-form .street-row{grid-template-columns:minmax(0,2fr) minmax(85px,1fr)}.checkout-step-heading h2{font-size:20px}
}
@media(prefers-reduced-motion:reduce){dialog.cart-drawer[open]{animation:none}}

.cart-drawer .drawer-photo .bottle-crop{position:relative;display:block;height:100px;overflow:hidden;margin:auto}.cart-drawer .drawer-photo .bottle-crop img{object-fit:fill;max-width:none}.checkout-order-photo .bottle-crop{position:relative;display:block;height:65px;overflow:hidden;margin:auto}.checkout-order-photo .bottle-crop img{object-fit:fill;max-width:none}.checkout-form input:not([type=checkbox]),.checkout-form select{margin-top:0;padding:12px 14px}.checkout-form input::placeholder{color:#a09480;font:14px Georgia,serif}
.checkout-notes{border-top:1px solid #dfd4c1;border-bottom:1px solid #dfd4c1;padding:14px 0;margin:18px 0}.checkout-notes summary{font:14px/1.5 Georgia,serif;cursor:pointer}.checkout-notes[open] summary{margin-bottom:18px}
