:root{--canvas:#ece7da;--canvas-card:#f6f3ea;--ink:#181510;--ink-soft:#5b5548;--line:#cdc4ae;--oxide:#b8431c;--oxide-dark:#8f3315;--white:#fffdf8}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--canvas);color:var(--ink);font-family:Work Sans,Arial,sans-serif}h1,h2,h3{font-family:Archivo Expanded,Arial,sans-serif;font-weight:700}button{font-family:inherit;cursor:pointer;border:none;background:none}header{position:-webkit-sticky;position:sticky;top:0;z-index:40;background:var(--canvas);border-bottom:2px solid var(--ink)}.header-top{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;max-width:1280px;margin:0 auto}.logo{font-family:Archivo Expanded,Arial,sans-serif;font-weight:800;font-size:26px}.logo span{color:var(--oxide)}.cart-btn{position:relative;gap:8px;padding:8px 14px;border:2px solid var(--ink);font-weight:600;font-size:14px;background:var(--ink)}.cart-btn,.cart-count{display:flex;align-items:center;color:var(--white)}.cart-count{background:var(--oxide);font-size:12px;font-weight:700;min-width:20px;height:20px;justify-content:center;border-radius:50%}.shop{max-width:1280px;margin:0 auto;padding:30px 24px 100px;display:grid;grid-template-columns:220px 1fr;grid-gap:36px;gap:36px}aside.filters{border-right:1px solid var(--line);padding-right:24px;align-self:start;position:-webkit-sticky;position:sticky;top:78px}.filter-group{padding:18px 0;border-bottom:1px solid var(--line)}.filter-group h3{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin-bottom:12px;color:var(--ink-soft)}.filter-row{display:flex;align-items:center;gap:9px;font-size:14px;padding:5px 0;cursor:pointer}.filter-row input{width:15px;height:15px;accent-color:var(--oxide)}.grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:22px;gap:22px}.card{background:var(--canvas-card);border:1px solid var(--line);display:flex;flex-direction:column}.card-media{aspect-ratio:1/1.05;position:relative;display:flex;align-items:center;justify-content:center;color:var(--canvas)}.card-tag{position:absolute;top:10px;left:10px;background:var(--oxide);color:var(--white);font-size:11px;font-weight:700;padding:3px 8px}.card-info{padding:14px;border-top:1px solid var(--line)}.card-cat{font-size:11px;color:var(--ink-soft);font-weight:600;margin-bottom:4px}.card-name{font-size:15px;font-weight:600;margin-bottom:6px}.card-price{font-size:15px;font-weight:700}.add-btn{margin-top:10px;width:100%;background:var(--ink);color:var(--white);padding:10px;font-size:13px;font-weight:600}.overlay{position:fixed;inset:0;background:rgba(24,21,16,.5);opacity:0;pointer-events:none;transition:opacity .2s;z-index:50}.overlay.open{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;bottom:0;width:400px;max-width:92vw;background:var(--white);z-index:60;transform:translateX(100%);transition:transform .25s;display:flex;flex-direction:column}.drawer.open{transform:translateX(0)}.drawer-head{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:2px solid var(--ink)}.drawer-items{flex:1 1;overflow-y:auto;padding:0 20px}.drawer-item{display:flex;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}.drawer-foot{padding:20px;border-top:2px solid var(--ink)}.subtotal-row{display:flex;justify-content:space-between;font-weight:700;margin-bottom:14px}.checkout-btn{display:block;width:100%;background:var(--oxide);color:var(--white);text-align:center;padding:14px;font-weight:700;border:none;font-size:15px}.checkout-btn:disabled{opacity:.5}