/* Readable, content-first cart and checkout. */
.commerce-shell{padding-top:40px;padding-bottom:80px;font-size:16px}
.commerce-grid{grid-template-columns:minmax(0,1fr) 390px;gap:40px}
.commerce-shell .button{font-size:15px;min-height:54px;line-height:1.5;gap:16px}
.commerce-shell .text-link{font-size:14px;line-height:1.6}
.commerce-shell .notice,.commerce-shell .notice strong,.commerce-shell .notice ul{font-size:15px}
.commerce-shell .notice a{text-decoration:underline;text-underline-offset:3px}
.cart-topline{font-size:16px;gap:18px;padding-bottom:23px}
.cart-topline .text-link{font-size:15px}
.cart-item{grid-template-columns:140px minmax(0,1fr);gap:24px;padding:30px 0;position:relative}
.cart-item-image{grid-column:1;grid-row:1 / span 2}
.cart-item-image img{width:140px;aspect-ratio:.86}
.cart-item-copy{min-width:0}
.cart-item-copy .eyebrow{font-size:10px;letter-spacing:.13em;margin-top:2px}
.cart-item-copy h2{font-size:36px;margin-top:9px;line-height:1.12}
.cart-item-copy>p:not(.eyebrow){font-size:16px;line-height:1.6;margin-top:10px}
.cart-item-copy>small{font-size:15px;display:block;margin-top:5px}
.cart-item-copy .item-warning{font-size:14px}
.cart-item-controls{gap:22px;flex-wrap:wrap;margin-top:18px}
.cart-quantity-form{gap:12px}
.cart-quantity-form input{width:58px;height:46px;font-size:17px;background:var(--paper)}
.cart-quantity-form button,.remove-button{font-size:14px;min-height:44px;padding:8px 0;border-bottom:0;text-decoration:underline;text-underline-offset:5px}
.cart-line-total{grid-column:2;font-size:20px;margin:0;color:var(--burgundy);line-height:1.4}
.cart-gift-note{gap:16px;align-items:flex-start;padding-top:26px}
.cart-gift-note h3{font-size:17px;font-weight:500}
.cart-gift-note p{font-size:15px;line-height:1.75;margin-top:6px}
.cart-gift-note>span{font-size:35px;line-height:1.2}
.commerce-shell .order-summary{padding:29px;top:24px;border:1px solid #e0d7cb;background:#f0ebe3}
.order-summary>.eyebrow{font-size:10px;letter-spacing:.14em;margin-bottom:12px}
.summary-heading{display:flex;gap:15px;justify-content:space-between;align-items:center;margin-bottom:25px}
.summary-heading h2{font-size:36px;margin:0}
.summary-heading .text-link{white-space:nowrap;font-size:13px;padding-bottom:2px}
.summary-line{font-size:15px;gap:13px;line-height:1.65;margin-bottom:14px}
.summary-line>span:last-child{white-space:normal;text-align:right}
.summary-total{font-size:17px;margin-top:23px;padding-top:22px;gap:16px}
.summary-total strong{font-size:28px;white-space:nowrap}
.summary-note{font-size:14px;line-height:1.75;margin:17px 0 24px}
.summary-delivery{display:flex;gap:10px;align-items:flex-start;background:#e4e7dc;padding:12px 14px;font-size:14px;color:#465344;margin-top:17px;line-height:1.65}
.summary-delivery>span:first-child{font-size:17px;line-height:1.4}
.summary-delivery small{display:block;font-size:13px}
.summary-help{gap:13px;align-items:flex-start;padding-top:22px;margin-top:26px}
.summary-help strong{font-size:14px;line-height:1.65;font-weight:500}
.summary-help a{font-size:14px;line-height:1.8;display:inline-block;margin-top:3px}
.summary-help>span{line-height:1.25}
.summary-items{margin-bottom:23px}
.summary-products>summary{display:none;cursor:pointer;font-size:14px;color:var(--burgundy);list-style:none;align-items:center;justify-content:space-between;padding:0 0 16px}
.summary-products>summary::-webkit-details-marker{display:none}
.summary-products>summary>span{font-size:19px;line-height:1}
.summary-products[open]>summary>span{transform:rotate(180deg)}
.summary-items li{display:grid;grid-template-columns:60px minmax(0,1fr);gap:5px 14px;align-items:start;padding:18px 0}
.summary-items img{grid-row:1 / span 2;width:60px;height:72px}
.summary-items strong{font-size:15px;line-height:1.45}
.summary-items small{font-size:13px;line-height:1.5;margin-top:5px}
.summary-items b{grid-column:2;font-size:15px;color:var(--burgundy);line-height:1.5}
.empty-cart{padding:50px 20px 65px}
.empty-cart h2{font-size:48px;max-width:600px;line-height:1.12}
.empty-cart p{font-size:17px;line-height:1.8;max-width:510px}
.checkout-panel{padding:30px;background:var(--paper);border-color:#ded5cc;margin-bottom:22px}
.panel-heading{gap:16px;margin-bottom:26px;align-items:flex-start}
.panel-heading h2{font-size:36px;line-height:1.12}
.panel-heading p{font-size:15px;line-height:1.7;margin-top:9px}
.commerce-panel-icon{width:43px;height:43px;display:flex;align-items:center;justify-content:center;background:#f1e6e2;border-radius:50%;margin-top:1px}
.commerce-panel-icon svg{width:23px;height:23px;stroke-width:1.5}
.method-options{gap:12px;margin-bottom:25px}
.method-options label{font-size:15px;min-height:54px;padding:13px 15px;gap:10px}
.method-options input{width:17px;height:17px;flex-shrink:0;margin:0}
.field{gap:9px;margin-bottom:23px}
.field-grid{gap:18px}
.field label{font-size:15px;line-height:1.5;font-weight:500}
.field label [data-date-label]{color:var(--ink)}
.field input,.field select,.field textarea{font-size:16px;padding:13px 14px;min-height:52px;line-height:1.6;background:#fffdf9;border-color:#cfc4b9}
.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:#9b3d48}
.field small{font-size:13px;line-height:1.7}
.field .optional{font-size:13px;margin-left:5px}
.field textarea{min-height:112px}
.delivery-quote-actions{display:flex;align-items:center;gap:21px;flex-wrap:wrap;margin-top:4px}
.delivery-quote-actions .button{flex:1}
.delivery-quote-actions .button [data-quote-button-label]{font-size:15px;font-weight:500}
.delivery-quote-actions .text-link{font-size:13px;white-space:nowrap}
.quote-confirmation{font-size:14px;gap:12px;padding:16px;margin-top:23px}
.quote-confirmation strong{display:block;font-size:14px;font-weight:600;margin-bottom:3px}
.quote-confirmation>span:first-child{font-size:19px}
.checkout-live-status{font-size:14px;line-height:1.8;color:var(--burgundy);margin:0 0 20px}
.checkout-live-status:empty{display:none}
.checkout-next-note{display:flex;align-items:flex-start;gap:16px;padding:5px 8px 24px}
.checkout-next-note>span{font-size:29px;color:var(--burgundy);line-height:1.25}
.checkout-next-note p{font-size:15px;line-height:1.8}
.recipient-same{display:flex;gap:10px;align-items:center;font-size:14px;line-height:1.6;cursor:pointer;margin-bottom:24px;padding:12px 14px;background:#f4f0e9}
.recipient-same input{width:18px;height:18px;accent-color:var(--burgundy);margin:0;flex-shrink:0}
.postcode-field{max-width:320px}
.card-message-field{padding-top:23px;border-top:1px solid var(--line);margin-bottom:0}
.checkout-review-total{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 22px;margin:0 0 23px;border-bottom:1px solid var(--line);font-size:16px}
.checkout-review-total strong{font-size:27px;font-weight:500;color:var(--burgundy);white-space:nowrap}
.checkout-submit .terms-checkbox{font-size:14px;line-height:1.8;gap:12px;margin-bottom:23px}
.terms-checkbox input{width:18px;height:18px;margin-top:4px}
.checkout-submit>p{font-size:13px;line-height:1.8;margin:14px 0 24px}
.checkout-submit .button{font-size:15px;gap:14px;padding:15px 18px}
.checkout-submit>.text-link{font-size:14px}
@media(max-width:1100px){
  .commerce-grid{grid-template-columns:minmax(0,1fr) 340px;gap:28px}
  .checkout-panel{padding:26px}
  .commerce-shell .order-summary{padding:25px}
  .summary-heading{align-items:flex-start;flex-direction:column;gap:10px}
  .summary-heading h2{font-size:34px}
  .cart-item{grid-template-columns:115px minmax(0,1fr);gap:20px}
  .cart-item-image img{width:115px}
  .cart-item-copy h2{font-size:32px}
  .cart-item-copy .eyebrow{display:none}
  .cart-item-copy h2{margin-top:0}
  .checkout-panels .field-grid{grid-template-columns:1fr;gap:0}
}
@media(max-width:900px){
  .commerce-grid{grid-template-columns:minmax(0,1fr);gap:28px}
  .commerce-shell .order-summary{position:static}
  .summary-heading{flex-direction:row;align-items:center}
  .checkout-panels .field-grid{grid-template-columns:1fr 1fr;gap:18px}
  .niel-checkout .commerce-grid{display:flex;flex-direction:column}
  .niel-checkout .commerce-grid>aside{order:-1;width:100%}
  .niel-checkout .checkout-panels{width:100%}
  .niel-checkout .summary-products>summary{display:flex}
  .niel-checkout .order-summary>.eyebrow,.niel-checkout .summary-help{display:none}
  .niel-checkout .summary-heading{margin-bottom:18px}
  .niel-checkout .summary-heading h2{font-size:30px}
  .niel-checkout .summary-note{margin-bottom:0;font-size:13px}
  .niel-checkout .summary-total{margin-top:17px;padding-top:17px}
}
@media(max-width:600px){
  .commerce-shell{padding-top:25px;padding-bottom:50px}
  .commerce-grid{gap:25px}
  .cart-topline{flex-wrap:wrap;gap:10px;font-size:15px}
  .cart-topline .text-link{font-size:14px}
  .cart-item{grid-template-columns:90px minmax(0,1fr);gap:15px;padding:25px 0}
  .cart-item-image img{width:90px;aspect-ratio:.85}
  .cart-item-copy h2{font-size:30px;line-height:1.12}
  .cart-item-copy>p:not(.eyebrow){font-size:15px;margin-top:7px}
  .cart-item-copy>small{font-size:14px}
  .cart-item-controls{gap:8px 19px;margin-top:14px}
  .cart-quantity-form{gap:12px}
  .cart-quantity-form input{width:52px;height:44px;font-size:16px}
  .cart-quantity-form button,.remove-button{font-size:14px}
  .cart-line-total{font-size:20px}
  .cart-gift-note h3{font-size:16px}
  .cart-gift-note p{font-size:14px}
  .commerce-shell .order-summary{padding:24px 21px}
  .order-summary h2{font-size:34px}
  .summary-heading .text-link{font-size:13px}
  .summary-line{font-size:15px}
  .summary-total strong{font-size:27px}
  .checkout-panel{padding:24px 20px}
  .panel-heading{gap:13px;margin-bottom:23px}
  .panel-heading h2{font-size:32px}
  .panel-heading p{font-size:14px;line-height:1.7}
  .commerce-panel-icon{width:36px;height:36px}
  .commerce-panel-icon svg{width:20px;height:20px}
  .checkout-panels .field-grid{grid-template-columns:1fr;gap:0}
  .field label{font-size:15px}
  .field input,.field textarea,.field select{font-size:16px;min-height:52px}
  .field small{font-size:13px}
  .method-options{gap:10px;flex-wrap:wrap}
  .method-options label{min-width:135px;font-size:14px;padding:12px}
  .delivery-quote-actions{gap:16px}
  .delivery-quote-actions .button{flex-basis:100%}
  .quote-confirmation{font-size:14px;padding:14px}
  .checkout-submit .button{font-size:14px;gap:12px;padding:15px 12px}
  .checkout-submit .terms-checkbox{font-size:14px}
  .checkout-submit>p{font-size:13px}
  .empty-cart{padding:35px 0 45px}
  .empty-cart h2{font-size:40px}
  .empty-cart p{font-size:16px}
}

.checkout-account-note{margin:0 0 24px;font-size:14px;line-height:1.8}.saved-delivery-address{display:grid;justify-items:start;gap:10px;margin:0 0 24px}.saved-delivery-address small{color:var(--muted);font-size:13px;line-height:1.7}.saved-delivery-address .button{white-space:normal;text-align:left}
