:root{--paper:#f1efe8;--ink:#111;--rule:#99968d;--muted:#68665f;--panel:#e5e1d7}
*{box-sizing:border-box}html{background:var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}
button,select{font:inherit;color:inherit}.shop-shell{width:min(1560px,calc(100% - 34px));margin:auto}
.shop-header{min-height:70px;border-bottom:1px solid var(--ink);display:flex;align-items:center;justify-content:space-between;gap:20px}
.shop-brand{text-decoration:none;color:inherit;display:flex;align-items:baseline;gap:12px;font-weight:800}.shop-brand small{font-family:monospace;font-size:9px;letter-spacing:.16em;font-weight:400}
.shop-nav{display:flex;gap:22px;align-items:center}.shop-nav a,.shop-nav button{border:0;background:none;text-decoration:none;font-family:monospace;font-size:10px;letter-spacing:.12em;cursor:pointer}
.shop-intro{border-top:9px solid var(--ink);margin-top:40px;padding:26px 0 44px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);gap:40px;align-items:end}
.shop-kicker,.control-head,.filter-status,.product-meta,.section-count,.card-category,.shop-footer{font-family:monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.shop-kicker{grid-column:1/-1;margin:0}.shop-intro h1{font-size:clamp(64px,10vw,156px);line-height:.78;letter-spacing:-.075em;margin:0}.shop-intro>p:last-child{font-size:18px;line-height:1.4;max-width:560px;margin:0 0 7px}
.shop-controls{border-top:2px solid var(--ink);border-bottom:1px solid var(--ink);padding:14px 0 18px;position:sticky;top:0;background:rgba(241,239,232,.96);backdrop-filter:blur(12px);z-index:5}
.control-head{display:flex;justify-content:space-between;margin-bottom:13px;font-weight:700}.control-head button{border:0;background:none;font-family:inherit;font-size:inherit;letter-spacing:inherit;cursor:pointer}
.filter-row-block{display:grid;grid-template-columns:90px 1fr;gap:12px;align-items:start;margin-bottom:10px}.filter-label{font-family:monospace;font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);padding-top:8px}.brand-pills,.category-pills{display:flex;gap:7px;flex-wrap:wrap}.brand-pills button,.category-pills button{border:1px solid var(--ink);background:transparent;padding:7px 10px;font-family:monospace;font-size:10px;letter-spacing:.07em;cursor:pointer}.brand-pills button.active,.category-pills button.active{background:var(--ink);color:var(--paper)}
.select-row{display:grid;grid-template-columns:180px 180px 180px 1fr;gap:10px;align-items:end}.select-row label{font-family:monospace;font-size:9px;letter-spacing:.1em}.select-row select{display:block;width:100%;margin-top:5px;background:transparent;border:1px solid var(--ink);border-radius:0;padding:9px}.filter-status{text-align:right;color:var(--muted);padding-bottom:10px}
.category-section{border-top:9px solid var(--ink);margin-top:46px}.section-head{border-bottom:1px solid var(--ink);padding:13px 0 17px;display:flex;justify-content:space-between;align-items:end;gap:20px}.section-head h2{font-size:clamp(38px,5vw,76px);letter-spacing:-.055em;line-height:.9;margin:0}.section-count{color:var(--muted)}
.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-left:1px solid var(--rule)}
.product-card{display:grid;grid-template-columns:46% 54%;min-height:360px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);background:#f8f6ef;cursor:pointer}
.product-image{background:var(--panel);display:grid;place-items:center;overflow:hidden;border-right:1px solid var(--rule);min-width:0}.product-image img{width:100%;height:100%;object-fit:contain}.product-copy{padding:21px;display:flex;flex-direction:column;min-width:0}.card-number{font-size:24px;font-weight:800}.card-category{color:var(--muted);margin-top:7px}.product-copy h3{font-size:clamp(24px,2.25vw,38px);line-height:.98;letter-spacing:-.045em;margin:10px 0 16px}.product-meta{margin-top:auto;border-top:1px solid var(--rule);padding-top:10px;display:flex;justify-content:space-between;gap:12px}.product-price{font-weight:800}.loading-block,.empty-block{border-top:9px solid var(--ink);margin-top:46px;padding:32px 0;font-size:30px;font-weight:800}
.product-dialog{width:min(1120px,calc(100% - 28px));max-height:calc(100vh - 28px);border:0;padding:0;background:var(--paper);color:var(--ink)}.product-dialog::backdrop{background:rgba(0,0,0,.62)}.dialog-x{position:sticky;top:0;z-index:2;width:100%;text-align:right;border:0;border-bottom:1px solid var(--ink);background:var(--paper);padding:14px 18px;font-family:monospace;font-size:10px;letter-spacing:.1em;cursor:pointer}
.dialog-grid{display:grid;grid-template-columns:52% 48%}.dialog-image{background:var(--panel);min-height:620px;display:grid;place-items:center;border-right:1px solid var(--rule)}.dialog-image img{width:100%;height:100%;object-fit:contain}.dialog-copy{padding:34px}.dialog-copy h2{font-size:clamp(42px,5vw,72px);line-height:.88;letter-spacing:-.055em;margin:10px 0 25px}.variant-select{width:100%;padding:12px;border:1px solid var(--ink);background:transparent;border-radius:0;margin:9px 0 14px}.add-button{width:100%;border:0;background:var(--ink);color:var(--paper);padding:16px;font-weight:800;cursor:pointer}.add-button:disabled{opacity:.35;cursor:not-allowed}.variant-note{font-size:12px;color:var(--muted);line-height:1.4}
.bag-drawer{position:fixed;right:0;top:0;height:100vh;width:min(480px,92vw);background:var(--paper);z-index:30;transform:translateX(105%);transition:transform .18s ease;border-left:2px solid var(--ink);display:flex;flex-direction:column;padding:18px}.bag-drawer.open{transform:none}.bag-scrim{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:29}.bag-head{border-top:9px solid var(--ink);border-bottom:1px solid var(--ink);padding:15px 0;display:flex;justify-content:space-between}.bag-head button{border:0;background:none;font-family:monospace;font-size:10px;cursor:pointer}.bag-items{overflow:auto;flex:1}.bag-item{display:grid;grid-template-columns:72px 1fr auto;gap:12px;padding:14px 0;border-bottom:1px solid var(--rule)}.bag-item img{width:72px;height:72px;object-fit:contain;background:var(--panel)}.bag-item h4{margin:0 0 6px;font-size:15px}.bag-item p{margin:0;font-size:11px;color:var(--muted)}.bag-item button{border:0;background:none;font-size:18px;cursor:pointer}.bag-total{border-top:2px solid var(--ink);display:flex;justify-content:space-between;padding:14px 0}.checkout-button{border:0;background:var(--ink);color:var(--paper);padding:15px;font-weight:800}.checkout-note{font-size:11px;line-height:1.4;color:var(--muted)}
.shop-footer{border-top:1px solid var(--ink);margin-top:60px;padding:16px 0 32px;display:flex;justify-content:space-between;gap:20px}.shop-footer a{color:inherit}
@media(max-width:900px){.shop-intro{grid-template-columns:1fr}.shop-intro>p:last-child{max-width:none}.select-row{grid-template-columns:1fr 1fr}.filter-status{grid-column:1/-1;text-align:left}.product-grid{grid-template-columns:1fr}.dialog-grid{grid-template-columns:1fr}.dialog-image{min-height:420px;border-right:0;border-bottom:1px solid var(--rule)}}
@media(max-width:620px){.filter-row-block{grid-template-columns:1fr;gap:4px}.filter-label{padding-top:0}.shop-shell{width:calc(100% - 18px)}.shop-brand small{display:none}.shop-intro h1{font-size:18vw}.select-row{grid-template-columns:1fr}.product-card{min-height:260px;grid-template-columns:42% 58%}.product-copy{padding:14px}.product-copy h3{font-size:23px}.dialog-copy{padding:20px}.shop-footer{flex-direction:column}}
