/* A restrained order flow using the landing's paper, graphite and Manrope. */
#cart-items .cart-item img{height:auto;max-height:96px;object-fit:contain;background:transparent}
#cart-dialog{max-width:none}#checkout-form label[for=delivery-carrier]{margin-bottom:8px}#checkout-form #delivery-carrier{margin-top:0;margin-bottom:18px}
.legal-shell{max-width:850px;margin:auto;padding:40px 24px}.legal-header{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:25px}.legal-card h1{font-size:40px;margin:40px 0 20px}.legal-section{margin-top:30px}.legal-section h2{font-size:23px;margin-bottom:15px}.legal-card a{text-decoration:underline;text-underline-offset:3px}.legal-meta{margin-top:30px;color:var(--muted)}
.header-cart{display:flex;align-items:center;gap:9px;font-size:13px;min-height:44px;white-space:nowrap}
[data-cart-count]{display:inline-grid;place-items:center;min-width:25px;height:25px;padding:0 6px;border:1px solid currentColor;border-radius:50%;font-size:13px;margin-left:5px}
.hero-delivery{margin-top:20px;font-size:13px;color:var(--muted);line-height:1.7}
.product-actions{display:flex;align-items:center;gap:22px;margin-top:23px}
.product-actions .under-link{margin-top:0;padding:10px 0;min-height:44px}
.product-actions .button{flex:1;max-width:230px}
.delivery{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;border-top:1px solid var(--line);background:#efede7}
.delivery .body-large{max-width:540px;margin-top:28px;font-size:17px}
.delivery .text-link{margin-top:20px}.delivery-details>div{padding:24px 0;border-bottom:1px solid #ccc7bd}.delivery-details>div:first-child{padding-top:0}.delivery-details p{margin-top:10px;font-size:14px;color:var(--muted)}
.cart-toast{position:fixed;z-index:30;bottom:24px;left:50%;transform:translateX(-50%);width:min(760px,calc(100% - 32px));background:var(--paper);border:1px solid var(--line);box-shadow:0 8px 50px #27231d20;display:flex;align-items:center;gap:24px;padding:16px 24px;font-size:13px}
.cart-toast .under-link{white-space:nowrap}.toast-close{font-size:13px;min-height:44px;color:var(--muted)}
#cart-dialog{width:min(850px,calc(100% - 48px));max-height:90dvh;padding:0;border:0;background:var(--paper);color:var(--ink)}
#cart-dialog .dialog-close{position:sticky;top:0;float:right;z-index:2;background:var(--paper);margin:12px 20px 0;padding:10px;min-height:44px}
.cart-shell{padding:44px 48px 48px;clear:both}.cart-shell>.section-label{margin-bottom:12px}.cart-shell h2{margin-bottom:30px}
#cart-items{padding:0;margin:0;list-style:none}.cart-item{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:22px;padding:24px 0;border-top:1px solid var(--line);align-items:center}.cart-item img{width:76px;height:96px;object-fit:cover;background:var(--panel)}
.cart-item h3{font-size:16px}.cart-item p{font-size:13px;color:var(--muted)}.cart-remove{font-size:13px;text-decoration:underline;text-underline-offset:3px;min-height:36px}.cart-item-controls{display:grid;gap:12px;text-align:right}.cart-item-controls strong{font-size:15px;font-weight:500}.cart-item .quantity{border:1px solid var(--line)}.cart-item .quantity input{width:38px;background:transparent}.cart-item .quantity button{width:34px;min-height:40px}
.cart-total{border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:12px;padding:25px 0 6px;font-size:20px}.cart-total output{font-weight:550}#checkout-start{width:100%;margin-top:28px}#cart-empty p{margin-bottom:25px}
#checkout-form{margin-top:30px;border-top:1px solid var(--line);padding-top:26px}#checkout-form fieldset{margin:0;padding:0;border:0;min-width:0}#checkout-form legend{font-size:20px;margin-bottom:24px}#checkout-form label{display:block;font-size:13px;margin-bottom:18px}#checkout-form input:not([type=checkbox]),#checkout-form select,#checkout-form textarea{display:block;width:100%;padding:13px 14px;border:1px solid #aaa59a;border-radius:0;background:transparent;font:inherit;font-size:16px;min-height:50px;margin-top:8px;color:var(--ink)}
#checkout-form textarea{resize:vertical}#checkout-form :is(input,textarea,select):focus-visible{outline:2px solid var(--accent);outline-offset:2px}#checkout-form [aria-invalid=true]{border-color:#a42e22}#checkout-form .checkout-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}#checkout-form .micro-note{margin-bottom:20px;font-size:13px}#checkout-form .checkout-consent{display:flex;align-items:flex-start;gap:12px;line-height:1.65;font-size:13px;margin-top:22px}.checkout-consent input{width:20px;height:20px;flex:0 0 20px;margin:4px 0;accent-color:var(--ink)}.checkout-consent a,.checkout-preview a{text-decoration:underline;text-underline-offset:3px}.checkout-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
#checkout-submit{width:100%;margin-bottom:16px}#checkout-error{background:#f1e5dd;color:#772d1d;padding:16px;margin-bottom:20px;overflow-wrap:anywhere}.checkout-preview{padding:16px;border:1px dashed var(--line);font-size:13px;color:var(--muted)}
#order-success{padding:25px 0 10px}#order-success h3{font-size:32px;margin-bottom:22px}#order-success p{margin-bottom:20px}#order-receipt{font-weight:550;overflow-wrap:anywhere}.mobile-cta>button{gap:4px}
@media(max-width:1050px){.product-actions{gap:14px;flex-wrap:wrap}.product-actions .button{max-width:none;min-width:100%}.delivery{gap:45px}.site-header{gap:16px}}
@media(max-width:700px){.site-header{gap:14px}.header-cart{margin-left:auto;font-size:13px}.header-cart [data-cart-count]{min-width:22px;height:22px}.wordmark{font-size:30px}.delivery{grid-template-columns:1fr;gap:35px}.cart-toast{bottom:85px;gap:10px;padding:14px 16px;flex-wrap:wrap}.cart-toast>span{width:100%}.cart-toast .toast-close{margin-left:auto}.cart-toast .under-link{padding-top:0}.product-actions{flex-wrap:nowrap}.product-actions .button{min-width:0}.cart-shell{padding:24px 20px 30px}#cart-dialog{width:100%;max-height:96dvh;margin:auto 0 0;border-top:1px solid var(--line)}#cart-dialog .dialog-close{margin-right:12px}.cart-shell>.section-label{font-size:13px}.cart-item{grid-template-columns:60px minmax(0,1fr);gap:16px}.cart-item img{width:60px;height:80px}.cart-item-controls{grid-column:2;display:flex;align-items:center;justify-content:space-between;gap:8px}.cart-item h3{font-size:15px}#checkout-form .checkout-grid{grid-template-columns:1fr;gap:0}.cart-total{font-size:18px}.cart-item-controls strong{font-size:13px}.cart-item .quantity button{width:32px;min-height:44px}.hero-actions{flex-wrap:wrap}.hero-actions .text-link{margin-top:0}.hero-delivery{font-size:13px}}

/* Compact, task-specific contact steps; transport remains optional for orders. */
#cart-dialog{scroll-padding-block-start:115px}
.cart-dialog-header{position:sticky;top:0;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px 48px;border-bottom:1px solid var(--line);background:var(--paper)}
.cart-dialog-header .section-label{font-size:13px;margin-bottom:8px}.cart-dialog-header h2{font-size:30px;line-height:1.2;margin:0}
#cart-dialog .cart-dialog-header .dialog-close{position:static;float:none;margin:0;padding:10px 0;flex-shrink:0}
.cart-shell{padding-top:24px}
#cart-dialog.is-inquiry{width:min(720px,calc(100% - 40px))}
.is-checkout .cart-shell{padding-top:14px}.is-checkout .cart-shell h2{font-size:30px;margin-bottom:24px;line-height:1.2}
.inquiry-context{display:flex;align-items:center;gap:18px;background:#efeee7;border:1px solid var(--line);padding:16px 20px}
.inquiry-context img{width:60px;height:76px;object-fit:contain;background:#e6e2d8;flex-shrink:0}
.inquiry-context strong{font-size:16px;font-weight:600}.inquiry-context p{font-size:13px;color:var(--muted);line-height:1.7;margin-top:5px;white-space:pre-line;overflow-wrap:anywhere}
#inquiry-back{min-height:44px;margin:8px 0 0;font-size:13px}
.is-checkout #checkout-form{border:0;margin-top:26px;padding:0}
.is-checkout:not(.is-inquiry) #checkout-form{border-top:1px solid var(--line);padding-top:26px}
.is-checkout #checkout-legend{font-size:16px;font-weight:550;margin-bottom:20px}
.is-inquiry #checkout-legend{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%)}
.is-inquiry #checkout-form{margin-top:20px}
#shipping-options{margin:0 0 20px;border-block:1px solid var(--line)}
#shipping-options summary{cursor:pointer;padding:15px 0;font-size:13px;min-height:48px}
#shipping-options summary span{font-size:13px;color:var(--muted);margin-left:8px}
.shipping-fields{padding:6px 0 2px}
#checkout-form .checkout-grid label{margin-bottom:14px}
#checkout-form #contact-hint{font-size:13px;margin-bottom:18px;line-height:1.6}
#checkout-form textarea{min-height:76px}
#checkout-form .checkout-consent{margin-top:18px}
#checkout-submit:disabled{opacity:.65;cursor:wait}
.business-dialog-copy .micro-note a{display:block;font-size:13px;min-height:44px;margin-top:5px}
@media(max-width:700px){
 .cart-dialog-header{padding:18px 20px;gap:12px}.cart-dialog-header .section-label{font-size:13px}.cart-dialog-header h2{font-size:25px}
 #cart-dialog.is-checkout{width:100%;max-height:96dvh}
 .is-checkout .cart-shell{padding:14px 20px 26px}.is-checkout .cart-shell h2{font-size:27px;margin-bottom:20px}
 .inquiry-context{padding:13px 15px;gap:13px}
 .inquiry-context img{width:48px;height:60px}.inquiry-context strong{font-size:15px}
 .is-checkout #checkout-form{margin-top:22px}
 #shipping-options summary span{display:block;margin:2px 0 0 17px}
 #checkout-form .checkout-grid{gap:0}.is-checkout #checkout-legend{margin-bottom:16px}
}

/* Inline messages of the order form (2026-09-21). */
.field-error { margin: 6px 0 0; font-size: 13px; line-height: 1.45; color: #9a3b2a; }
.checkout-consent + .field-error { margin-top: 8px; }
/* 22.09: the message belongs to the field above it, not to the label below; the grey hint steps aside while it shows. */
.field-error { margin-bottom: 14px; }
#checkout-form:has([name="contact"][aria-invalid="true"]) #contact-hint { display: none; }
#checkout-form [aria-invalid="true"] { border-color: #9a3b2a; box-shadow: inset 0 0 0 1px #9a3b2a; }
