[hidden]{display:none!important}
.commerce{padding:0 0 110px}
.commerce button,dialog button{border:0}
.collection-hero{min-height:78vh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(340px,.95fr);border-bottom:1px solid var(--line)}
.collection-hero-copy{padding:clamp(72px,9vw,140px) 7% 72px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.collection-hero h1{max-width:900px;font-size:clamp(58px,8.8vw,132px);line-height:.86;letter-spacing:-.07em;margin:26px 0 30px;text-transform:uppercase}
.collection-hero-copy>p{max-width:640px;font-size:clamp(17px,1.5vw,23px);line-height:1.45;margin:0 0 34px}
.collection-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.collection-actions .button{display:inline-flex;width:auto;text-decoration:none}
.collection-hero-product{position:relative;min-height:620px;background:#e7e7e2;overflow:hidden}
.collection-hero-product img{width:100%;height:100%;object-fit:contain;display:block;filter:contrast(1.02)}
.collection-hero-caption{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;gap:20px;padding:18px 22px;background:#08090be8;color:#fff;border-top:1px solid #ffffff30;font:11px/1.3 monospace;letter-spacing:.14em;text-transform:uppercase}
.collection-rail{display:flex;justify-content:space-between;gap:22px;padding:18px 4%;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.13em;overflow:auto;white-space:nowrap}
.collection-toolbar{position:sticky;top:0;z-index:8;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 4%;background:color-mix(in srgb,var(--paper) 90%,transparent);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}
.collection-nav{display:flex;gap:22px;overflow:auto;white-space:nowrap}
.collection-nav a{color:inherit;text-decoration:none;font:11px/1.2 monospace;letter-spacing:.13em;text-transform:uppercase}
.collection-nav a:hover{text-decoration:underline}
.collection-toolbar .button{width:auto;white-space:nowrap}
#store-status{margin:0;padding:0 4%}
.product-group{padding:96px 4% 20px;scroll-margin-top:76px}
.product-group+.product-group{border-top:1px solid var(--line);margin-top:80px}
.product-group-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,520px);align-items:end;gap:40px;margin-bottom:52px}
.product-group-heading h2{font-size:clamp(45px,6vw,86px);line-height:.92;letter-spacing:-.055em;margin:20px 0 0;text-transform:uppercase}
.product-group-heading p{font-size:clamp(16px,1.4vw,20px);line-height:1.5;margin:0}
.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:64px 30px}
.product-card{min-width:0;display:flex;flex-direction:column}
.product-viewer{position:relative;margin-bottom:24px;background:#e6e8e4;overflow:hidden}
.product-card img{width:100%;aspect-ratio:4/5;object-fit:contain;display:block;transition:transform .45s ease}
.product-card:hover img{transform:scale(1.025)}
.product-viewer-controls{position:absolute;left:12px;right:12px;bottom:12px;display:flex;align-items:center;justify-content:space-between;background:#08090bd9;color:#fff;border:1px solid #ffffff38;backdrop-filter:blur(8px)}
.product-viewer-arrow{width:48px;height:42px;background:transparent;color:inherit;font-size:21px;cursor:pointer}
.product-viewer-status{font:11px/1.2 monospace;letter-spacing:.16em;text-transform:uppercase}
.product-kicker{font:10px/1.3 monospace;letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;opacity:.68}
.product-card h3{font-size:clamp(24px,2.2vw,34px);line-height:.96;margin:0 0 14px;letter-spacing:-.045em;text-transform:uppercase}
.product-card .description{font-size:14px;line-height:1.55;margin:0 0 16px;max-width:52ch}
.product-card details{margin:0 0 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:10px 0;font-size:13px}
.product-card summary{cursor:pointer;font:10px/1.3 monospace;letter-spacing:.12em;text-transform:uppercase}
.product-card .details-copy{white-space:pre-line;margin:12px 0 4px;opacity:.78}
.product-card .price{font-size:18px;color:var(--ink);margin:0 0 6px}
.product-card label{display:block;margin:14px 0 8px;font-size:13px}
.product-card select{width:100%;padding:12px;background:transparent;border:1px solid var(--line);color:var(--ink);margin-bottom:12px}
.product-card .button{width:100%;margin-top:auto}
button:disabled{opacity:.45;cursor:not-allowed}
.support-story{margin:120px 4% 0;padding:clamp(64px,9vw,130px) 6%;background:var(--ink);color:var(--paper)}
.support-story h2{font-size:clamp(52px,8vw,116px);line-height:.88;letter-spacing:-.065em;text-transform:uppercase;max-width:1050px;margin:24px 0 32px}
.support-story p{max-width:680px;font-size:clamp(17px,1.6vw,23px);line-height:1.5}
.support-story a{color:inherit}
dialog{background:var(--paper);color:var(--ink);border:1px solid var(--line);padding:32px;width:min(600px,92vw);max-height:85vh;overflow:auto}
dialog::backdrop{background:#0008}
.bag-heading{display:flex;justify-content:space-between;align-items:start;gap:20px}
.bag-heading h2{font-size:38px}
.bag-heading button,.remove-line{background:none;padding:5px;text-decoration:underline}
.bag-line{border-bottom:1px solid var(--line);padding:18px 0;display:flex;justify-content:space-between;gap:20px}
.bag-line p{margin:4px 0;font-size:14px}.bag-line strong{display:block}
#bag-total{margin-top:24px;color:var(--ink)}
#bag-status{color:var(--ink);font-size:14px}
#checkout{width:100%}
@media(max-width:1000px){.collection-hero{grid-template-columns:1fr}.collection-hero-product{min-height:62vw;max-height:760px}.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-group-heading{grid-template-columns:1fr}}
@media(max-width:640px){.collection-hero-copy{padding:58px 6% 46px}.collection-hero h1{font-size:clamp(52px,17vw,78px)}.collection-hero-product{min-height:110vw}.collection-rail span:nth-child(2){display:none}.collection-toolbar{align-items:flex-start}.collection-nav{gap:16px}.product-group{padding:70px 5% 10px}.product-group+.product-group{margin-top:56px}.product-grid{grid-template-columns:1fr;gap:54px}.support-story{margin-top:90px;padding:70px 7%}.support-story h2{font-size:clamp(48px,15vw,76px)}dialog{padding:22px}}
