/* The shop is a quiet contact sheet: artwork first, essentials immediately below. */
.shop-page{background:#f7f3e8}
.shop-page [hidden]{display:none!important}
.shop-catalog{max-width:1600px;margin:auto;padding:42px 5% 92px}
.shop-catalog-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px;margin-bottom:30px}
.shop-catalog h1{font-family:var(--reading);font-size:clamp(2.25rem,4vw,3.5rem);font-weight:700;letter-spacing:-.04em;line-height:1.1;color:var(--heading-ink);margin:0}
.shop-catalog-heading p{font-size:1rem;color:#6b6b5f;margin:0;text-wrap:pretty}
.catalog-controls{border-top:1px solid #cfc5b3;border-bottom:1px solid #cfc5b3;padding:0 0 16px;margin-bottom:32px}
.collection-switch{display:flex;flex-wrap:wrap;gap:0 28px}
.collection-switch button{border:0;border-bottom:2px solid transparent;background:none;padding:18px 0 15px;min-height:50px;font-family:var(--reading);font-size:1rem;line-height:1.5;font-weight:400;letter-spacing:0;color:#66675f;cursor:pointer}
.collection-switch button[aria-pressed=true]{border-color:#93733f;color:#4f4f4f;font-weight:600}
.catalog-filter-line{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 24px;padding-top:18px}
.catalog-filter-line label{display:flex;align-items:center;gap:14px;font-size:.875rem;color:#62665c}
.catalog-filter-line select{font:inherit;font-size:.875rem;max-width:100%;color:#4f4f4f;line-height:1.4;background:transparent;border:1px solid #cfc5b3;border-radius:0;min-height:42px;padding:8px 34px 8px 12px}
#design-count{font-family:var(--annotation);font-size:.8125rem;letter-spacing:.02em;margin:0;color:#716749}
.design-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:28px;row-gap:50px}
.design-card{min-width:0;display:flex;flex-direction:column}
.design-art{display:flex;align-items:center;justify-content:center;width:100%;aspect-ratio:1.48;background:transparent;border:0;padding:0;cursor:pointer}
.design-art>img{display:block;max-width:100%;width:100%;height:100%;object-fit:contain;transition:transform .22s ease}
.design-art:hover>img{transform:translateY(-3px)}
.design-meta{display:flex;flex-direction:column;flex:1;padding-top:22px}
.design-series{font-family:var(--reading);font-size:.8125rem;color:#7a6b4e;line-height:1.5;margin:0 0 5px}
.design-card :is(h2,h3){font-family:var(--reading);font-weight:600;font-size:1.1875rem;letter-spacing:-.02em;line-height:1.4;margin:0 0 10px;color:#4f4f4f}
.design-card :is(h2,h3) button{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:3px 12px;width:100%;padding:0;font:inherit;color:inherit;text-align:left;background:none;border:0;cursor:pointer}
.design-card :is(h2,h3) span{font-family:var(--annotation);font-size:.8125rem;letter-spacing:0;color:#796c52;font-weight:500}
.design-notes{font-size:.875rem;line-height:1.65;color:#646a60;min-height:3.3em;margin:0 0 18px;text-wrap:pretty}
.design-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:5px 10px;margin-top:auto}
.design-price .price-amounts{gap:8px}
.design-price .price-amounts strong{font-size:1.125rem;color:#4f4f4f}
.design-price .price-amounts del{font-size:.875rem}
.design-price .price-currency{font-size:.75rem}
.design-unit{font-size:.8125rem;color:#747266}
.design-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #d8cfbe;margin-top:16px;padding-top:13px}
.design-actions button{font-family:var(--reading);font-size:.875rem;font-weight:500;line-height:1.5;min-height:44px;cursor:pointer;letter-spacing:0;border-radius:0}
.design-detail{color:#6c6c61;background:none;border:0;padding:9px 0;text-decoration:underline;text-decoration-color:#b1a386;text-underline-offset:5px}
.design-add{background:#4c574f;color:#fff;border:1px solid #4c574f;padding:10px 15px}
.design-add:hover{background:#756241;border-color:#756241}
.design-add:active{transform:translateY(1px)}
.shop-catalog :is(button,select):focus-visible{outline:2px solid #93733f;outline-offset:5px}
.design-grid.showing-sets{grid-template-columns:repeat(2,minmax(0,1fr));gap:50px;max-width:1100px;margin:auto}
.design-set .design-art{aspect-ratio:1.45}
.design-set .design-art>img.shop-set-box{width:100%;height:100%;object-fit:contain}
.shop-set-mosaic{width:100%;height:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:14px;align-items:center;padding:14px 0}
.shop-set-mosaic img{display:block;width:100%;height:100%;object-fit:contain;min-width:0;min-height:0}
.design-set .design-notes{min-height:0}
.shop-empty{text-align:center;padding:60px 20px}
.shop-empty p{font-size:1rem}.shop-empty button{min-height:44px;font:inherit;color:#4f4f4f;background:none;border:1px solid #a99a7d;padding:8px 20px;cursor:pointer}
.shop-endnote{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center;border-top:1px solid #cfc5b3;margin-top:55px;padding-top:24px}
.shop-endnote p{font-size:.875rem;color:#73756b;margin:0;max-width:54ch;text-wrap:pretty}
.shop-endnote a{font-size:.875rem;min-height:44px;display:inline-flex;align-items:center;color:#756241;text-underline-offset:5px}
@media(max-width:1200px){.design-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:850px){.design-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 24px}.shop-catalog{padding:32px 6% 64px}.shop-catalog-heading{align-items:flex-start;flex-direction:column;gap:12px}.collection-switch{gap:0 22px}.collection-switch button{font-size:.9375rem}.design-grid.showing-sets{gap:30px}.shop-set-mosaic{gap:8px}}
@media(max-width:540px){.shop-catalog{padding:28px 5% 52px}.collection-switch{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.collection-switch button{text-align:left;padding:13px 0 10px;min-height:48px}.catalog-filter-line{gap:12px}.catalog-filter-line label{gap:10px}.design-grid{column-gap:18px;row-gap:32px}.design-meta{padding-top:15px}.design-card :is(h2,h3){font-size:1.0625rem}.design-card :is(h2,h3) button{display:block}.design-card :is(h2,h3) span{display:block;margin-top:3px}.design-series{font-size:.75rem}.design-notes{min-height:4.95em;margin-bottom:14px}.design-actions{gap:4px;flex-direction:column-reverse;align-items:stretch;margin-top:12px;padding-top:12px}.design-add{padding:9px 5px}.design-detail{padding:6px 0;min-height:36px!important}.design-unit{width:100%}.design-grid.showing-sets{grid-template-columns:1fr}.design-set .design-actions{flex-direction:row;align-items:center;gap:16px}.design-set .design-add{padding:10px 22px}.design-set :is(h2,h3){font-size:1.25rem}.design-set .design-notes{min-height:0}.design-set :is(h2,h3) button{display:flex}.shop-endnote{margin-top:35px}}
@media(max-width:340px){.design-grid{grid-template-columns:1fr}.design-card :is(h2,h3) button{display:flex}.design-notes{min-height:0}}
@media(prefers-reduced-motion:reduce){.design-art>img{transition:none}.design-art:hover>img,.design-add:active{transform:none}}

/* Collections start on their own rows in the complete catalog. */
.design-grid.grouped-catalog{display:block}
.catalog-group + .catalog-group{margin-top:64px;padding-top:28px;border-top:1px solid #cfc5b3}
.catalog-group-title{font-family:var(--reading);font-size:1.125rem;font-weight:500;letter-spacing:-.01em;line-height:1.4;color:#4f4f4f;margin:0 0 28px}
.catalog-group .showing-sets{margin-left:0;max-width:none}
@media(max-width:540px){.catalog-group + .catalog-group{margin-top:44px;padding-top:24px}.catalog-group-title{font-size:1rem;margin-bottom:24px}}
