.shop-product select{display:block;width:100%;font:13px/1.4 Arial,sans-serif;padding:10px;margin:8px 0 12px;background:var(--paper);border:1px solid var(--line)}.shop-product label{font-size:12px}.shop-product button,#bag-open,#bag-checkout{border:1px solid var(--ink);background:var(--ink);color:white;padding:10px 18px;font:600 14px Arial,sans-serif;cursor:pointer}.shop-product button:disabled,#bag-checkout:disabled{opacity:.55;cursor:not-allowed}.shop-product small{display:block;margin-top:10px}.bag-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:20px 0}.bag-toolbar p{margin:0}#shop-bag{width:min(620px,94vw);max-height:85vh;border:1px solid var(--line);background:var(--paper);color:var(--text);padding:24px}#shop-bag::backdrop{background:#10251fcc}.bag-heading{display:flex;justify-content:space-between;align-items:center}.bag-heading h2{margin:0}.bag-heading button{padding:10px;background:transparent;border:1px solid var(--line);cursor:pointer}.bag-item{display:grid;grid-template-columns:75px 1fr;gap:15px;padding:20px 0;border-bottom:1px solid var(--line)}.bag-item img{width:75px;height:95px;object-fit:contain}.bag-item p{margin:5px 0;font-size:13px}.bag-item input{width:65px;padding:7px;margin:8px}.bag-item button{background:transparent;border:0;text-decoration:underline;cursor:pointer}.bag-subtotal{display:flex;justify-content:space-between;margin:20px 0;font-weight:bold}.bag-note{font-size:13px;color:var(--muted)}

.shop-discover{margin:36px 0}.section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:16px}.section-heading h2{font-size:30px}.section-heading p{color:var(--muted)}.collection-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.collection-card{display:flex;flex-direction:column;border:1px solid var(--line);text-decoration:none;color:inherit;background:#fff}.collection-card img{width:100%;height:190px;object-fit:contain;padding:14px;background:#f0eee7}.collection-card div{padding:17px}.collection-card h3{font-size:22px;line-height:1.1;margin:0 0 10px}.collection-card p{font-size:14px;line-height:1.5}.collection-card span{font:600 12px Arial,sans-serif;color:var(--green)}.collection-card:hover,.collection-card:focus-visible{border-color:var(--green);box-shadow:0 4px 0 var(--green)}.shop-controls{flex-wrap:wrap}@media(max-width:1000px){.collection-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.collection-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.collection-card img{height:140px}.collection-card div{padding:12px}.collection-card h3{font-size:20px}.section-heading{display:block}}
/* A shorter path from browsing to the bag. */
.post-shop .intro{max-width:none;padding:24px 0 14px}
.post-shop .intro h1{font-size:clamp(29px,3.4vw,42px);margin:7px 0}
.post-shop .intro p{font-size:16px;line-height:1.5;max-width:690px;margin:8px 0}
.shop-browse{padding-bottom:12px}
.shop-sticky{position:sticky;top:0;z-index:20;background:var(--paper);padding:12px 0 10px;border-bottom:1px solid var(--line);box-shadow:0 8px 12px -12px #10251f88}
.shop-topbar{display:flex;gap:18px;align-items:end;justify-content:space-between}
.shop-search-label{display:grid;gap:6px;width:min(600px,75%);font:600 11px Arial,sans-serif;text-transform:uppercase;letter-spacing:1px}
.shop-search-label input{width:100%;background:#fff;border:1px solid #9caaa1;padding:12px 14px;font:15px Arial,sans-serif;text-transform:none;letter-spacing:0;border-radius:3px}
#bag-open{white-space:nowrap;min-height:44px;border-radius:3px;background:var(--ink)}
#bag-count{display:inline-grid;place-items:center;background:#f3efdf;color:var(--ink);border-radius:50%;min-width:23px;height:23px;margin-left:6px;font-weight:700}
.shop-collection-buttons{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}
.shop-collection-buttons button{padding:9px 14px;border:1px solid #c8cec6;border-radius:3px;background:transparent;color:var(--ink);font:600 13px Arial,sans-serif;cursor:pointer;min-height:38px}
.shop-collection-buttons button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:#fff}
.shop-collection-buttons button:hover{border-color:var(--ink)}
.shop-refine{display:flex;gap:16px;align-items:end;flex-wrap:wrap;padding:18px 0}
.shop-refine label{display:grid;gap:6px;font:12px Arial,sans-serif;min-width:145px}
.shop-refine select{font:13px Arial,sans-serif;padding:10px;background:#fff;border:1px solid #b5beb4;border-radius:3px;max-width:100%;min-height:40px}
.shop-refine .shop-stock{display:flex;align-items:center;align-self:center;gap:7px;min-width:0;cursor:pointer;padding-top:18px}
.shop-stock input{width:17px;height:17px;accent-color:var(--ink)}
#shop-reset{background:transparent;border:0;color:var(--ink);text-decoration:underline;font:12px Arial,sans-serif;min-height:40px;cursor:pointer}
.shop-results-heading{display:flex;justify-content:space-between;align-items:baseline;gap:15px;margin:5px 0 18px;border-top:1px solid var(--line);padding-top:16px}
.shop-results-heading h2{font:27px/1.2 Georgia,serif;margin:0;color:var(--ink)}
#shop-count{font:12px Arial,sans-serif;color:var(--muted);white-space:nowrap}
.post-shop .shop-products{gap:22px}
.post-shop .shop-product{border:1px solid var(--line);padding:0;background:#fff;display:flex;flex-direction:column;min-width:0;border-radius:3px;overflow:hidden}
.shop-product .shop-image-button{padding:0;border:0;background:#f4f2ed;color:var(--ink);display:block;width:100%;position:relative;cursor:pointer}
.shop-product .shop-image-button img{height:235px;padding:16px;display:block;transition:transform .2s}
.shop-image-button span{position:absolute;bottom:9px;right:10px;background:#ffffffed;border:1px solid #d9dfd9;padding:6px 8px;font:10px Arial,sans-serif}
.shop-image-button:hover img{transform:scale(1.025)}
.shop-product-info{padding:17px;display:flex;flex-direction:column;flex:1}
.shop-product-info .eyebrow{font:10px/1.4 Arial,sans-serif;letter-spacing:1px;margin:0 0 8px;color:var(--muted)}
.shop-product h3{font:21px/1.25 Georgia,serif;margin:0 0 12px;color:var(--ink)}
.shop-product h3 button{padding:0;background:none;color:inherit;border:0;font:inherit;text-align:left;cursor:pointer}
.shop-product h3 button:hover{text-decoration:underline;text-underline-offset:3px}
.shop-price{font:700 17px Arial,sans-serif;color:var(--ink);margin:auto 0 12px;padding-top:6px}
.shop-product select,.post-shop #shop-detail select{border:1px solid #a5b2a5;border-radius:3px;background:#fff;padding:10px;font:13px Arial,sans-serif;width:100%;min-height:42px;margin:6px 0 10px}
.shop-product select[hidden]{display:none}
.shop-option-label{font:11px Arial,sans-serif}
.shop-single-option{font:12px Arial,sans-serif;margin:0 0 10px}
.shop-product .shop-add,#shop-detail .shop-add{min-height:44px;border-radius:3px;background:var(--ink);color:#fff;font:600 14px Arial,sans-serif;width:100%}
.shop-product .shop-add:disabled{background:#edf0e9;color:#526258;opacity:1;border:1px solid #c4ccc2;cursor:not-allowed}
.shop-more{text-align:center;margin:26px 0 12px}
.shop-more p{font:12px Arial,sans-serif;color:var(--muted)}
#shop-more,.shop-empty button{min-height:44px;padding:12px 26px;border:1px solid var(--ink);background:transparent;color:var(--ink);font:600 14px Arial,sans-serif;border-radius:3px;cursor:pointer}
.shop-checkout-note{text-align:center;font:12px/1.6 Arial,sans-serif;color:var(--muted);padding:12px 0}
.shop-empty{grid-column:1/-1;padding:35px;text-align:center}
.shop-feedback:empty{display:none}
.shop-feedback{position:fixed;bottom:18px;left:50%;transform:translateX(-50%);z-index:25;background:var(--ink);color:white;box-shadow:0 6px 28px #0003;padding:14px 18px;border-radius:4px;width:max-content;max-width:min(640px,calc(100vw - 32px));display:flex;gap:14px;align-items:center;font:13px/1.4 Arial,sans-serif}
.shop-feedback span{max-width:390px}
.shop-feedback button{background:transparent;color:#fff;border:0;text-decoration:underline;cursor:pointer;font:600 13px Arial,sans-serif;min-height:34px}
.shop-feedback .toast-dismiss{font-size:19px;text-decoration:none;padding:3px 5px}
#shop-detail{width:min(860px,94vw);max-height:88vh;padding:24px;border:1px solid var(--line);border-radius:4px;background:var(--paper);color:var(--ink)}
#shop-detail::backdrop{background:#10251fcc}
#detail-close{display:block;margin:0 0 14px auto;background:transparent;border:1px solid var(--line);padding:10px;cursor:pointer}
#detail-content article{display:grid;grid-template-columns:1fr 1fr;gap:26px}
#detail-content img{width:100%;height:360px;object-fit:contain;background:#fff}
#detail-content h2{font:29px/1.2 Georgia,serif}
#shop-detail [hidden]{display:none}
#shop-bag{border-radius:4px}
#bag-continue{background:transparent;border:1px solid var(--line);padding:12px 18px;margin:0 8px 8px 0;cursor:pointer;font:14px Arial,sans-serif}
#bag-checkout{min-height:44px;border-radius:3px}
.post-shop :is(button,input,select):focus-visible{outline:3px solid #b27d37;outline-offset:3px}
@media(max-width:700px){
 .post-shop .intro{padding-top:18px}
 .post-shop .intro p{font-size:15px}
 .shop-sticky{padding-top:8px}
 .shop-search-label{width:auto;flex:1;min-width:0}
 .shop-search-label span{font-size:10px}
 .shop-topbar{gap:10px}
 #bag-open{padding:9px 12px}
 #bag-preview-total{display:none}
 .shop-collection-buttons{gap:5px;margin-top:9px}
 .shop-collection-buttons button{padding:7px 10px;font-size:12px;min-height:35px}
 .shop-refine{display:grid;grid-template-columns:1fr 1fr;gap:12px}
 .shop-refine label{min-width:0}
 .shop-refine .shop-stock{padding-top:17px}
 #shop-reset{justify-self:start;grid-column:1/-1}
 .shop-results-heading h2{font-size:23px}
 .post-shop .shop-products{gap:12px}
 .shop-product .shop-image-button img{height:175px;padding:12px}
 .shop-image-button span{font-size:9px;padding:4px 5px;bottom:5px;right:5px}
 .shop-product-info{padding:12px}
 .shop-product h3{font-size:17px}
 .shop-product .shop-add{font-size:13px;padding:10px 8px}
 .shop-product select{font-size:12px;padding:8px}
 .shop-product-info .eyebrow{font-size:9px}
 .shop-price{font-size:15px}
 .shop-feedback{flex-wrap:wrap;gap:4px 12px;padding:10px 14px}
 .shop-feedback span{width:100%;font-size:12px}
 #detail-content article{grid-template-columns:1fr;gap:12px}
 #detail-content img{height:240px}
 #detail-content h2{font-size:25px}
}
@media(prefers-reduced-motion:reduce){.shop-product .shop-image-button img{transition:none}}
