.shop-section{color:var(--color-ink);padding:1rem clamp(1.25rem,5vw,3rem) clamp(3rem,6vw,5rem)}.shop-inner{max-width:72rem;margin:0 auto}.shop-eyebrow{color:var(--color-timber);letter-spacing:.14em;text-transform:uppercase;font-size:.75rem;font-weight:700}.shop-collection-heading{justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2rem;display:flex}.shop-collection-heading h2,.shop-single h2{margin-top:.75rem;font-size:clamp(1.75rem,3vw,2.5rem);font-weight:400}.shop-collection-heading>p{color:var(--color-bark);max-width:28ch;font-size:.9rem}.shop-toolbar{border-block:1px solid var(--color-sandline);justify-content:space-between;align-items:center;gap:1rem;padding-block:1rem;display:flex}.shop-filters{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.shop-filters>svg{margin-right:.5rem}.shop-filters button{cursor:pointer;border:1px solid #0000;border-radius:2rem;min-height:44px;padding:.5rem 1rem;font-size:.9rem}.shop-filters button[aria-pressed=true]{background:var(--color-forest);color:var(--color-cream)}.shop-filters button:hover{border-color:var(--color-forest)}.shop-search{background:var(--color-linen);border:1px solid var(--color-sandline);border-radius:.125rem;align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.shop-search input{background:0 0;outline:none;width:12rem;min-width:0;font-size:.9rem}.shop-search:focus-within{outline:2px solid var(--color-forest);outline-offset:3px}.shop-result-count{color:var(--color-bark);margin:1.25rem 0;font-size:.8rem}.shop-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem 1.75rem;display:grid}.shop-card{flex-direction:column;min-width:0;display:flex}.shop-card-photo{background:var(--color-parchment);aspect-ratio:2/3;display:block;position:relative;overflow:hidden}.shop-card-photo img{object-fit:contain;width:100%;height:100%;transition:scale .4s}.shop-card-photo:hover img{scale:1.025}.shop-photo-link{background:var(--color-linen);color:var(--color-forest);align-items:center;gap:.5rem;padding:.65rem .85rem;font-size:.8rem;display:inline-flex;position:absolute;bottom:.75rem;right:.75rem;box-shadow:0 1px 5px #26221c12}.shop-card-meta{color:var(--color-bark);letter-spacing:.04em;justify-content:space-between;gap:1rem;margin-top:1.25rem;font-size:.75rem;display:flex}.shop-card h3{margin-top:.65rem;font-size:1.4rem;font-weight:400;line-height:1.3}.shop-card h3 a:hover{color:var(--color-forest);text-underline-offset:.2em;text-decoration:underline}.shop-card-summary{color:var(--color-bark);flex:1;margin:.75rem 0 1.25rem;font-size:.95rem}.shop-card-action{border-top:1px solid var(--color-sandline);justify-content:space-between;align-items:center;gap:.5rem;padding-top:.75rem;display:flex}.shop-card-action>span{color:var(--color-bark);font-size:.8rem}.shop-add-button{color:var(--color-forest);cursor:pointer;align-items:center;gap:.75rem;min-height:44px;font-size:.85rem;font-weight:700;display:inline-flex}.shop-add-button>span{font-size:1.4rem;font-weight:400}.shop-add-button:hover{text-underline-offset:.2em;text-decoration:underline}.shop-button{background:var(--color-forest);color:var(--color-cream);border:1px solid var(--color-forest);cursor:pointer;text-align:center;border-radius:.125rem;justify-content:center;align-items:center;gap:.5rem;min-height:48px;padding:.85rem 1.25rem;font-size:.95rem;font-weight:600;transition:background .2s;display:inline-flex}.shop-button:hover{background:var(--color-forest-deep)}.shop-button-outline{color:var(--color-forest);background:0 0}.shop-button-outline:hover{background:var(--color-parchment)}.shop-how{border-block:1px solid var(--color-sandline);grid-template-columns:repeat(3,minmax(0,1fr));gap:3rem;margin-top:4rem;padding:2.5rem 0;display:grid}.shop-how span{color:var(--color-timber);font-size:.8rem}.shop-how h3{margin:.75rem 0;font-size:1.3rem;font-weight:400}.shop-how p{color:var(--color-bark);font-size:.9rem}.shop-enquiry-bar{z-index:20;border:1px solid var(--color-sandline);background:var(--color-linen);justify-content:space-between;align-items:center;gap:1rem;margin-top:2rem;padding:.85rem 1rem;display:flex;position:sticky;bottom:1rem;box-shadow:0 4px 24px #26221c15}.shop-enquiry-bar>div{align-items:center;gap:.75rem;font-size:.95rem;display:flex}.shop-empty{text-align:center;padding:3rem 1rem}.shop-empty h3{font-size:1.5rem}.shop-empty p{color:var(--color-bark);margin:1rem auto}.shop-single-action{border-block:1px solid var(--color-sandline);justify-content:space-between;align-items:center;gap:2rem;padding-block:2rem;display:flex}.shop-single-action p{color:var(--color-bark);margin-top:.75rem}.shop-dialog{background:var(--color-linen);color:var(--color-ink);border:1px solid var(--color-sandline);overscroll-behavior:contain;border-radius:.25rem;width:min(38rem,100% - 2rem);max-height:calc(100dvh - 2rem);margin:auto;padding:0;overflow-y:auto}.shop-dialog::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#171d18a8}html:has(.shop-dialog[open]){overflow:hidden}.shop-dialog-body{padding:clamp(1.25rem,4vw,2rem)}.shop-dialog-header{justify-content:space-between;align-items:start;gap:1rem;margin-bottom:1rem;display:flex}.shop-dialog h2{margin-top:.5rem;font-size:2rem;font-weight:400}.shop-muted{color:var(--color-bark);font-size:.95rem;line-height:1.65}.shop-icon-button{min-width:44px;min-height:44px;color:var(--color-bark);cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.shop-icon-button:hover{background:var(--color-parchment)}.shop-enquiry-items{margin-block:1.25rem;padding:0;list-style:none}.shop-enquiry-items li{border-top:1px solid var(--color-sandline);align-items:start;gap:1rem;padding-block:1.25rem;display:flex}.shop-enquiry-items img{object-fit:contain;background:var(--color-parchment);width:64px;height:96px}.shop-enquiry-item-copy{flex:1;min-width:0}.shop-enquiry-item-copy h3{font-size:1rem;font-weight:500;line-height:1.4}.shop-enquiry-item-copy p{color:var(--color-bark);margin-top:.25rem;font-size:.8rem}.shop-quantity{border:1px solid var(--color-sandline);align-items:center;margin-top:.75rem;display:inline-flex}.shop-quantity button{cursor:pointer;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.shop-quantity button:disabled{opacity:.3;cursor:default}.shop-quantity input{text-align:center;appearance:textfield;background:0 0;width:2.75rem;height:44px;font-size:.9rem}.shop-quantity input::-webkit-inner-spin-button{appearance:none}.shop-message{border-top:1px solid var(--color-sandline);padding-top:1rem}.shop-message label{font-size:.9rem;font-weight:700}.shop-message p{color:var(--color-bark);margin-top:.5rem;font-size:.85rem;line-height:1.6}.shop-message textarea{resize:vertical;border:1px solid var(--color-sandline);width:100%;min-height:12rem;font:inherit;background:#fff;border-radius:.125rem;margin-block:1rem;padding:1rem;font-size:.9rem;line-height:1.6}.shop-copy-status{min-height:1.5rem;margin-bottom:.5rem}.shop-dialog .messenger-cta{display:flex}.shop-confirmation-note{text-align:center;color:var(--color-bark);margin:1rem auto;font-size:.8rem}.shop-text-button{text-underline-offset:.2em;min-height:44px;color:var(--color-forest);cursor:pointer;margin:.5rem auto 0;text-decoration:underline;display:block}.shop-section :is(button,a,input,textarea):focus-visible{outline:2px solid var(--color-forest);outline-offset:4px}@media (max-width:1023px){.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.shop-toolbar{flex-wrap:wrap}}@media (max-width:639px){.shop-collection-heading{display:block}.shop-collection-heading>p{max-width:none;margin-top:1rem}.shop-filters{gap:.25rem}.shop-filters>svg{display:none}.shop-filters button{padding-inline:.75rem;font-size:.85rem}.shop-search,.shop-search input{width:100%}.shop-grid,.shop-how{grid-template-columns:minmax(0,1fr)}.shop-grid{gap:2.5rem}.shop-how{gap:2rem;margin-top:3rem}.shop-enquiry-bar{flex-wrap:wrap;padding:.75rem;bottom:.5rem}.shop-enquiry-bar .shop-button{flex:1}.shop-single-action{flex-direction:column;align-items:start}.shop-enquiry-items li{gap:.5rem}.shop-enquiry-items img{width:48px;height:72px}}@media (prefers-reduced-motion:reduce){.shop-card-photo img,.shop-button{transition:none}}
