.shop{padding-block:clamp(2.5rem,2rem + 4vw,6rem) var(--section-space)}.shop__head{max-width:46rem;margin-bottom:clamp(2rem,1.5rem + 3vw,4rem)}.shop__head>* + *{margin-top:var(--space-m)}.shop__kicker{color:var(--text-muted)}.shop__title{font-size:var(--step-5)}.filters{position:sticky;top:var(--header-height);z-index:10;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-s);padding-block:var(--space-s);margin-bottom:var(--space-xl);background:var(--bg);border-block:var(--hairline) solid var(--line)}.filters__list{display:flex;gap:var(--space-2xs);overflow-x:auto;scrollbar-width:none;margin:0 calc(var(--space-2xs) * -1);padding:2px var(--space-2xs)}.filters__list::-webkit-scrollbar{display:none}.filter{display:inline-flex;align-items:center;gap:0.5em;min-height:40px;padding:0 1rem;border:var(--hairline) solid var(--line);border-radius:999px;font-size:var(--step--1);text-decoration:none;white-space:nowrap;transition:border-color var(--duration-fast) var(--ease),background-color var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease)}.filter:hover{border-color:var(--color-green);color:var(--text)}.filter[aria-current="page"]{background:var(--color-green);border-color:var(--color-green);color:var(--color-ivory)}.filter__count{font-size:var(--step--2);opacity:0.7;font-variant-numeric:tabular-nums}@media (max-width:420px){.filters__list{gap:6px}.filter{padding:0 0.8rem;gap:0.35em}}@media (max-width:380px){.filter__count{display:none}}.shop__grid{row-gap:clamp(2.5rem,2rem + 3vw,5rem)}.shop__note{margin-top:var(--space-3xl);max-width:60ch}.product{padding-top:var(--space-m)}.breadcrumb ol{display:flex;flex-wrap:wrap;gap:0.5em;color:var(--text-muted)}.breadcrumb li + li::before{content:"/";margin-right:0.5em;opacity:0.5}.breadcrumb a{text-decoration:none}.breadcrumb a:hover{text-decoration:underline}.product__layout{display:grid;gap:var(--space-xl);margin-top:var(--space-m)}@media (min-width:960px){.product__layout{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(2rem,5vw,6rem);align-items:start}.product__sticky{position:sticky;top:calc(var(--header-height) + var(--space-l))}}.gallery{display:grid;gap:var(--space-s)}@media (min-width:600px) and (max-width:959px){.gallery__main,.gallery__thumbs{width:100%;max-width:520px;justify-self:center}}@media (min-width:960px){.gallery{position:sticky;top:calc(var(--header-height) + var(--space-m))}.gallery__main,.gallery__thumbs{width:100%;max-width:calc((100svh - var(--header-height) - 190px) * 0.8);justify-self:center}.gallery__thumbs{justify-content:start}}.gallery__main{position:relative;aspect-ratio:4 / 5;overflow:hidden;border-radius:var(--radius);background:var(--color-sand)}.gallery__image{width:100%;height:100%;object-fit:cover;transition:opacity 260ms var(--ease)}.gallery__image.is-changing{opacity:0.35}.gallery__note{position:absolute;left:var(--space-s);bottom:var(--space-s);color:var(--text-muted);font-size:var(--step--2);letter-spacing:var(--tracking-wide)}.gallery__thumbs{display:grid;grid-template-columns:repeat(3,minmax(0,96px));gap:var(--space-xs)}.gallery__thumb{display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;border-radius:var(--radius);overflow:hidden;outline:var(--hairline) solid transparent;outline-offset:3px;transition:outline-color var(--duration-fast) var(--ease),opacity var(--duration-fast) var(--ease);opacity:0.7}.gallery__thumb img{width:100%;height:auto;aspect-ratio:4 / 5;object-fit:cover}.gallery__thumb:hover{opacity:1}.gallery__thumb[aria-pressed="true"]{opacity:1;outline-color:var(--color-green)}.gallery__thumb:focus-visible{outline:2px solid var(--focus)}.product__sticky>* + *{margin-top:var(--space-m)}.product__category{color:var(--color-rust-text)}.product__name{font-size:var(--step-4);margin-top:var(--space-xs) !important}.product__price{display:flex;flex-wrap:wrap;align-items:baseline;gap:0.75em}.product__amount{font-size:var(--step-2);font-weight:500;font-variant-numeric:tabular-nums}.product__tax{color:var(--text-muted)}.product__short{font-size:var(--step-1);line-height:1.5}.colour-picker{border:0;margin:0;padding:var(--space-m) 0 0;border-top:var(--hairline) solid var(--line)}.colour-picker__legend{float:left;width:100%;padding:0;margin-bottom:var(--space-s)}.colour-picker__current{text-transform:none;letter-spacing:0.02em;color:var(--text-muted);font-size:var(--step--1)}.colour-picker__options{clear:both;display:flex;gap:var(--space-xs)}.swatch{position:relative;display:grid;place-items:center;width:44px;height:44px;cursor:pointer}.swatch input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}.swatch__dot{width:28px;height:28px;border-radius:50%;background:var(--dot);box-shadow:inset 0 0 0 1px rgba(2,54,49,0.18),0 0 0 4px var(--bg),0 0 0 5px transparent;transition:box-shadow var(--duration-fast) var(--ease)}.swatch:hover .swatch__dot{box-shadow:inset 0 0 0 1px rgba(2,54,49,0.18),0 0 0 4px var(--bg),0 0 0 5px var(--line)}.swatch input:checked + .swatch__dot{box-shadow:inset 0 0 0 1px rgba(2,54,49,0.18),0 0 0 4px var(--bg),0 0 0 5px var(--color-green)}.swatch input:focus-visible + .swatch__dot{outline:2px solid var(--focus);outline-offset:7px}.product__cta{padding-top:var(--space-xs)}.notify-panel{margin-top:var(--space-m);padding:var(--space-m);background:var(--surface);border:var(--hairline) solid var(--line);border-radius:var(--radius)}.notify-panel[hidden]{display:none}.notify-panel__intro{margin-bottom:var(--space-s)}.notify-panel .field__label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.product__assurance{margin-top:var(--space-s) !important}.product__info .accordions{margin-top:var(--space-xl) !important}.product__features{padding-left:1.1em}.product__features li + li{margin-top:0.35em}.product__features li::marker{color:var(--accent)}.spec{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xs) var(--space-m);margin-top:var(--space-m) !important}.spec div{padding-top:var(--space-2xs);border-top:var(--hairline) solid var(--line)}.spec dt{font-size:var(--step--2);letter-spacing:var(--tracking-label);text-transform:uppercase}.spec dd{margin:0.2em 0 0;color:var(--text)}.related{margin-top:var(--section-space);border-top:var(--hairline) solid var(--line)}