/* Approved cart reference: cream paper, cocoa ink, olive action; scoped to catalog/cart. */
body.cart-enabled{--paper:#faf7f2;--ink:#3e291f;--green:#666f57;--soft:#f0ece3;background:var(--paper);color:var(--ink)}
.cart-enabled .site-header{display:flex;align-items:center;gap:24px}.cart-enabled .site-header nav{margin-left:auto}.cart-replaces-order{display:none!important}.cart-header-link{display:flex;align-items:center;justify-content:center;gap:9px;white-space:nowrap;border:1px solid #cfc3b4;border-radius:24px;padding:9px 16px;text-decoration:none;color:var(--ink);font-size:16px;order:3}.cart-header-link svg{width:22px;height:25px}.cart-badge{min-width:18px;line-height:18px;text-align:center;border:1px solid currentColor;border-radius:50%;font-size:12px}.cart-enabled .site-header .menu-toggle{order:4}.cart-enabled .header-wordmark{flex:none}
.cart-enabled .page-heading{margin-bottom:36px}.cart-enabled .page-heading h1{font-size:clamp(30px,3.4vw,48px);font-weight:400}.cart-enabled .page-heading p{margin-top:16px}.cart-enabled .page-filters{margin-bottom:32px}.cart-enabled .page-filters button{background:transparent;border-color:#cfc3b4}.cart-enabled .page-filters button[aria-pressed=true]{background:var(--green);color:var(--paper);border-color:var(--green)}
.cart-enabled[data-page=catalog] .page-products{max-width:1280px;grid-template-columns:repeat(4,minmax(0,1fr));gap:36px 32px}.cart-enabled[data-page=catalog] .page-product-media{aspect-ratio:1}.cart-enabled[data-page=catalog] .page-product h2{font-size:21px;margin:13px 0 5px}.cart-enabled[data-page=catalog] .page-product>p{font-size:14px;color:#8a7e70;white-space:pre-line}.product-purchase{display:grid;gap:10px;margin-top:8px;text-align:center}.product-purchase .product-unit-price{font-size:18px!important;margin:0!important;opacity:1!important;color:var(--ink)!important}.product-purchase select{width:100%;min-width:0;height:40px;border:1px solid #cfc3b4;border-radius:5px;background:transparent;padding:6px 12px;font:16px var(--serif);color:var(--ink)}
.quantity-control{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;height:40px;border:1px solid #cfc3b4;border-radius:5px;overflow:hidden}.quantity-control button{background:none;color:var(--ink);border:0;min-height:38px;padding:0;font:23px/1 var(--serif);cursor:pointer}.quantity-control input{width:100%;min-width:0;border:0;background:transparent;text-align:center;font:18px var(--serif);color:var(--ink);appearance:textfield;-moz-appearance:textfield}.quantity-control input::-webkit-inner-spin-button,.quantity-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.quantity-control button:disabled{opacity:.35;cursor:default}.add-to-cart,.cart-primary{display:flex;justify-content:center;align-items:center;width:100%;min-height:44px;border:1px solid var(--green);border-radius:6px;padding:9px 12px;background:var(--green);color:var(--paper);font:17px/1.4 var(--serif);text-decoration:none;cursor:pointer}.add-to-cart:disabled,.cart-primary:disabled{opacity:.5;cursor:not-allowed}.purchase-unavailable{font-size:13px!important;line-height:1.6!important;margin:4px 0!important;color:#786c5e!important}.cart-enabled button:focus-visible,.cart-enabled a:focus-visible,.cart-enabled select:focus-visible,.cart-enabled input:focus-visible{outline:2px solid var(--green);outline-offset:3px}
.cart-quickbar{display:none}.cart-live-message:empty{display:none}.cart-live-message{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);max-width:min(600px,90vw);z-index:60;background:#faf7f2;border:1px solid #b7aa96;box-shadow:0 4px 20px #3e291f18;padding:12px 20px;margin:0;border-radius:6px;font-size:15px;color:var(--ink)}
.cart-page .page-wrap{max-width:850px}.cart-page .page-heading h1{font-size:40px}.cart-page #page-content{max-width:680px;margin:auto}.cart-line{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:22px;align-items:start;padding:28px 0;border-bottom:1px solid #d3c9ba}.cart-line-photo{width:120px;aspect-ratio:1;display:grid;place-items:center;background:var(--soft);font-size:12px}.cart-line-photo img{width:100%;height:100%;object-fit:cover}.cart-line-info h2{font-size:22px;line-height:1.4;font-weight:400;margin:0 0 5px}.cart-line-info p{margin:3px 0;font-size:17px}.cart-line-info .cart-variant{color:#8a7e70;font-size:15px}.cart-line-info .quantity-control{max-width:180px;margin-top:9px}.cart-remove,.cart-accept{background:none;border:0;border-bottom:1px solid currentColor;padding:0;color:#8a7e70;font:15px var(--serif);cursor:pointer}.cart-remove{align-self:end;margin-bottom:3px}.cart-accept{font-size:14px;color:var(--ink)}.cart-issue{font-size:14px!important;color:#8d3c28}.cart-summary{margin-top:32px}.cart-subtotal{display:flex;justify-content:space-between;gap:20px;font-size:23px}.cart-subtotal strong{font-weight:400}.cart-note{text-align:right;font-size:15px;color:#8a7e70;margin:12px 0 34px}.cart-continue{display:block;width:fit-content;margin:22px auto;color:var(--ink);text-underline-offset:5px;font-size:18px}.cart-checkout-note{text-align:center;color:#8a7e70;font-size:14px;margin-top:28px}.cart-empty{text-align:center;margin:50px 0}.cart-enabled .page-more{margin-top:32px}
@media(max-width:1200px){.cart-enabled .site-header{gap:16px}.cart-enabled .site-header nav{gap:14px}.cart-header-link{padding:8px 12px}}
@media(max-width:1024px){.cart-enabled .site-header{gap:20px}.cart-header-link{margin-left:auto;border:0;padding:0;position:relative}.cart-header-label{display:none}.cart-header-link svg{width:28px;height:30px}.cart-badge{position:absolute;right:-9px;top:-7px;background:var(--green);color:var(--paper);border:0}.cart-enabled[data-page=catalog] .page-products{grid-template-columns:repeat(2,minmax(0,280px));gap:32px 24px}.cart-enabled .site-header .menu-toggle{border:0;padding:6px;width:36px}.cart-enabled .page-heading h1{font-size:32px}}
@media(max-width:640px){.cart-enabled{--gutter:20px;padding-bottom:calc(82px + env(safe-area-inset-bottom))}.cart-enabled .site-header{gap:24px;padding-top:20px;padding-bottom:22px}.cart-enabled .site-header .brand-name{font-size:29px}.cart-enabled .page-wrap{padding-inline:20px}.cart-enabled .page-breadcrumb{margin-bottom:24px}.cart-enabled .page-heading{margin-bottom:26px!important}.cart-enabled .page-heading h1{font-size:25px!important;line-height:1.6;letter-spacing:0;white-space:normal;word-break:normal;text-wrap:balance}.cart-enabled .page-heading p{font-size:15px;margin-top:9px}.cart-enabled .category-picker-trigger{font-size:18px;min-height:46px;padding:8px 14px}.cart-enabled .category-picker-label{font-size:14px}.cart-enabled[data-page=catalog] .page-products{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 16px}.cart-enabled[data-page=catalog] .page-product h2{font-size:17px;line-height:1.4;margin:10px 0 4px}.cart-enabled[data-page=catalog] .page-product>p{font-size:13px;line-height:1.6}.product-purchase{gap:8px}.product-purchase select{height:38px;padding:5px 8px;font-size:14px}.product-purchase .product-unit-price{font-size:16px!important}.quantity-control{grid-template-columns:38px minmax(0,1fr) 38px;height:40px}.quantity-control button{min-height:38px}.add-to-cart{font-size:16px;min-height:42px;padding:8px 3px}.cart-quickbar{position:fixed;inset:auto 0 0;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--green);color:var(--paper);padding:15px 20px calc(15px + env(safe-area-inset-bottom));z-index:40;min-height:72px;box-sizing:border-box}.cart-quickbar>span{display:flex;align-items:center;gap:7px;font-size:18px}.cart-quickbar svg{width:24px;height:28px;display:block}.cart-quick-link{color:var(--ink);background:var(--paper);text-decoration:none;padding:9px 16px;border-radius:6px;font-size:16px}.cart-live-message{bottom:calc(88px + env(safe-area-inset-bottom));width:max-content;max-width:calc(100vw - 32px);box-sizing:border-box;font-size:14px}.cart-page{padding-bottom:0}.cart-page .page-wrap{padding-top:20px}.cart-page .page-breadcrumb{display:none}.cart-page .page-heading h1{font-size:30px!important}.cart-page .page-heading p{font-size:16px}.cart-line{grid-template-columns:100px minmax(0,1fr) auto;gap:16px;padding:25px 0}.cart-line-photo{width:100px}.cart-line-info h2{font-size:18px}.cart-line-info .quantity-control{max-width:145px;grid-template-columns:32px minmax(0,1fr) 32px;height:36px}.cart-line-info .quantity-control button{min-height:34px}.cart-line-info .quantity-control input{font-size:17px}.cart-remove{font-size:14px}.cart-subtotal{font-size:22px}.cart-summary{margin-top:32px}.cart-note{font-size:14px;line-height:1.7}.cart-summary .cart-primary{min-height:48px;font-size:19px}}

.cart-page .page-heading{text-align:center!important}.cart-line-photo{height:120px;overflow:hidden}.cart-line-photo img{display:block;min-height:0;min-width:0}.cart-page .cart-line-photo img{width:100%;height:100%;object-fit:cover}@media(max-width:640px){.cart-line-photo{height:100px}}

.cart-line-info p{line-height:1.4}@media(max-width:640px){.cart-enabled[data-page=catalog] .page-breadcrumb{margin-bottom:18px}.cart-enabled[data-page=catalog] .page-heading{margin-bottom:18px!important}.cart-page .page-heading{margin-bottom:9px!important}}

.cart-enabled .page-heading h1,.cart-enabled[data-page=catalog] .page-product h2,.product-purchase .product-unit-price,.product-purchase select,.add-to-cart,.cart-line-info h2,.cart-price,.cart-primary{font-weight:500}
@media(max-width:640px){.cart-line{grid-template-columns:116px minmax(0,1fr) auto;gap:18px}.cart-line-photo{width:116px;height:116px}.cart-summary .cart-primary{min-height:52px;border-radius:8px}}

.cart-line-info{min-width:0;overflow-wrap:anywhere}

.product-custom-options{min-width:0;text-align:left;padding:10px;margin:0;border:1px solid #cfc3b4;border-radius:5px}.product-custom-options legend{font:13px/1.5 var(--serif);padding:0 5px;color:#786c5e}.product-custom-options label{display:flex;align-items:center;gap:7px;font:14px/1.5 var(--serif);cursor:pointer;min-height:30px}.product-custom-options label+label{margin-top:6px}.product-custom-options input{appearance:auto;width:17px;height:17px;flex:none;accent-color:var(--green)}.product-custom-options .custom-extra{margin-left:auto;white-space:nowrap;font-size:13px}.cart-custom-options{font-size:14px!important;color:#786c5e;white-space:pre-wrap}@media(max-width:640px){.product-custom-options{padding:8px 6px}.product-custom-options legend{font-size:11px}.product-custom-options label{font-size:13px;gap:4px;flex-wrap:wrap;min-height:36px}.product-custom-options .custom-extra{font-size:12px}}

/* Catalog cards keep equal text slots; configuration lives in the modal. */
[data-page=catalog] .page-product{display:flex;flex-direction:column;min-width:0;text-align:center}
[data-page=catalog] .page-product>h2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.4;min-height:2.8em;text-align:center;overflow-wrap:anywhere}
[data-page=catalog] .page-product>p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.6;min-height:3.2em;text-align:center;overflow-wrap:anywhere}
[data-page=catalog] .product-purchase{margin-top:auto;padding-top:12px}
[data-page=catalog] .product-unit-price{min-height:2.5em;display:flex;align-items:center;justify-content:center;line-height:1.4}
.product-selection-dialog{box-sizing:border-box;width:min(920px,94vw);max-height:88dvh;padding:36px;border:1px solid #cfc3b4;border-radius:14px;background:var(--paper,#faf7f2);color:var(--ink,#3e291f);overflow:auto;overscroll-behavior:contain}
.product-selection-dialog::backdrop{background:#2e211d80;backdrop-filter:blur(3px)}
.selection-close{position:absolute;right:10px;top:6px;width:40px;height:40px;border:0;background:transparent;color:inherit;font:32px/1 sans-serif;cursor:pointer}
.selection-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start}
.selection-photo{aspect-ratio:1;display:grid;place-items:center;background:var(--soft,#f0ece3);overflow:hidden;border-radius:8px}
.selection-photo img{display:block;width:100%;height:100%;object-fit:cover}
.selection-info{min-width:0;overflow-wrap:anywhere}.selection-info h2{font:500 28px/1.4 var(--serif);margin:0 0 12px}.selection-description{font-size:15px;line-height:1.7;white-space:pre-line;margin:0 0 22px}
.selection-info>label{display:block;font-size:15px;margin:16px 0}.selection-info select{display:block;width:100%;box-sizing:border-box;min-height:44px;margin-top:8px;padding:8px;border:1px solid #cfc3b4;border-radius:6px;background:transparent;color:inherit;font:16px var(--serif)}
.selection-info .product-custom-options{margin-top:16px}.selection-info .quantity-control{margin-top:8px;max-width:190px}.selection-subtotal{font-size:22px;margin:24px 0 14px}.selection-error{color:#8d3c28;font-size:14px;line-height:1.5}.selection-error:empty{display:none}.selection-info .add-to-cart{min-height:48px}
.product-selection-dialog :focus-visible{outline:2px solid var(--green);outline-offset:3px}
@media(max-width:800px){.product-selection-dialog{padding:36px 24px 24px}.selection-layout{gap:24px}.selection-info h2{font-size:24px}.selection-description{font-size:14px}}
@media(max-width:640px){.product-selection-dialog{width:100%;max-width:100%;max-height:90dvh;margin:auto 0 0;padding:40px 22px calc(24px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0;border-bottom:0}.selection-layout{grid-template-columns:minmax(0,1fr);gap:20px}.selection-photo{aspect-ratio:3/2;max-height:220px}.selection-info h2{font-size:25px}.selection-description{margin-bottom:18px}.selection-info .product-custom-options label{font-size:15px;min-height:40px}.selection-info .product-custom-options legend{font-size:13px}.selection-close{right:12px;top:6px}.selection-subtotal{font-size:22px}}
