:root{--chili: #C23616;--chili-dark: #9C2A12;--saffron: #E8A838;--turmeric: #D4A017;--cream: #FDF6EC;--warm-white: #FFFBF4;--dark: #1A1208;--dark-warm: #2A1F12;--text-muted: #6B5D4F;--border-light: rgba(26, 18, 8, .08);--green: #2D5016}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--warm-white);color:var(--dark);font-family:DM Sans,sans-serif;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:inherit}.top-bar{position:sticky;top:0;z-index:100;background:var(--cream);border-bottom:1px solid var(--border-light);padding:.85rem 1.5rem;display:flex;align-items:center;gap:1.25rem}.brand{font-family:Playfair Display,serif;font-weight:700;font-size:1.1rem;color:var(--dark);text-decoration:none;letter-spacing:-.01em;white-space:nowrap;flex-shrink:0;line-height:1.15}.brand span{font-style:italic;color:var(--chili)}.brand small{display:block;font-family:DM Sans,sans-serif;font-size:.65rem;font-weight:500;color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;margin-top:1px}.top-bar-search{flex:1;max-width:600px;position:relative}.top-bar-search input{width:100%;padding:.7rem 2.75rem;border:1.5px solid var(--border-light);border-radius:999px;background:var(--warm-white);font-family:DM Sans,sans-serif;font-size:.92rem;color:var(--dark);transition:all .2s}.top-bar-search input:focus{outline:none;border-color:var(--chili);box-shadow:0 0 0 3px #c2361614}.top-bar-search-icon{position:absolute;left:1rem;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.top-bar-clear{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:transparent;border:none;font-size:1.4rem;color:var(--text-muted);cursor:pointer;padding:0 .5rem;line-height:1}.top-bar-clear:hover{color:var(--chili)}.top-bar-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.zip-btn{display:inline-flex;align-items:center;gap:.45rem;padding:.55rem .95rem;background:transparent;border:1.5px solid var(--border-light);border-radius:999px;font-family:DM Sans,sans-serif;font-weight:500;font-size:.82rem;color:var(--dark);cursor:pointer;transition:all .2s;white-space:nowrap}.zip-btn:hover{border-color:var(--chili);color:var(--chili)}.zip-btn.has-zip{background:#2d501614;border-color:var(--green);color:var(--green)}.zip-btn.no-delivery{background:#e8a8381f;border-color:var(--saffron);color:var(--dark)}.cart-btn{display:inline-flex;align-items:center;gap:.4rem;padding:.55rem .95rem;background:var(--dark);color:var(--cream);border:none;border-radius:999px;font-family:DM Sans,sans-serif;font-weight:600;font-size:.82rem;cursor:pointer;transition:all .2s;white-space:nowrap}.cart-btn:hover{background:var(--chili)}.cart-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 .35rem;background:#ffffff2e;border-radius:10px;font-size:.7rem;font-weight:700}.cart-count.has-items{background:var(--saffron);color:var(--dark)}.back-to-site{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;font-weight:500;color:var(--text-muted);text-decoration:none;padding:.3rem .6rem;border-radius:.3rem;transition:all .2s;flex-shrink:0}.back-to-site:hover{color:var(--chili)}.mobile-dept-bar{display:none;position:sticky;top:64px;z-index:90;background:var(--warm-white);border-bottom:1px solid var(--border-light);padding:.75rem 1.25rem}.mobile-dept-toggle{width:100%;padding:.75rem 1rem;background:var(--cream);border:1.5px solid var(--border-light);border-radius:.5rem;font-family:DM Sans,sans-serif;font-size:.9rem;font-weight:600;color:var(--dark);cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.mobile-dept-list{position:absolute;top:100%;left:1.25rem;right:1.25rem;background:var(--warm-white);border:1px solid var(--border-light);border-radius:.5rem;box-shadow:0 12px 40px #0000001f;max-height:60vh;overflow-y:auto;display:none;z-index:95}.mobile-dept-list.open{display:block}.mobile-dept-list button{width:100%;padding:.75rem 1rem;background:transparent;border:none;border-bottom:1px solid var(--border-light);font-family:DM Sans,sans-serif;font-size:.88rem;text-align:left;cursor:pointer;color:var(--dark);display:flex;justify-content:space-between}.mobile-dept-list button:hover,.mobile-dept-list button.active{background:var(--cream);color:var(--chili)}.mobile-dept-list button .count{color:var(--text-muted);font-size:.8rem}.layout{display:grid;grid-template-columns:240px 1fr;max-width:1400px;margin:0 auto;gap:0}.sidebar{position:sticky;top:64px;align-self:start;height:calc(100vh - 64px);overflow-y:auto;padding:2rem 1rem 2rem 1.5rem;border-right:1px solid var(--border-light);background:var(--warm-white)}.sidebar h3{font-family:Playfair Display,serif;font-size:1.05rem;font-weight:700;color:var(--dark);margin-bottom:1rem;padding-left:.75rem}.dept-list{list-style:none}.dept-list button{width:100%;text-align:left;padding:.55rem .75rem;background:transparent;border:none;border-radius:.4rem;font-family:DM Sans,sans-serif;font-size:.86rem;font-weight:500;color:var(--dark);cursor:pointer;transition:all .15s;display:flex;justify-content:space-between;align-items:center;gap:.5rem}.dept-list button:hover{background:var(--cream);color:var(--chili)}.dept-list button.active{background:var(--dark);color:var(--cream)}.dept-list button .count{font-size:.75rem;color:var(--text-muted);font-weight:400}.dept-list button.active .count{color:#fdf6ec99}.main-content{padding:2rem 2rem 6rem;min-width:0}.main-header{margin-bottom:2rem}.main-header .label{font-size:.7rem;font-weight:600;letter-spacing:.15em;text-transform:uppercase;color:var(--chili);margin-bottom:.5rem}.main-header h1{font-family:Playfair Display,serif;font-weight:900;font-size:2.5rem;line-height:1;color:var(--dark);letter-spacing:-.02em;margin-bottom:.5rem}.main-header h1 em{font-style:italic;color:var(--chili)}.main-header p{font-size:.95rem;color:var(--text-muted)}.dept-section{margin-bottom:3rem}.dept-section-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:1.25rem;padding-bottom:.6rem;border-bottom:2px solid var(--dark)}.dept-section-header h2{font-family:Playfair Display,serif;font-size:1.65rem;font-weight:900;color:var(--dark);letter-spacing:-.02em}.dept-section-header .count{font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem}.product-card{background:var(--cream);border:1px solid var(--border-light);border-radius:.6rem;overflow:hidden;transition:all .2s ease;display:flex;flex-direction:column;height:300px;cursor:pointer;position:relative}.product-card:hover{border-color:var(--saffron);transform:translateY(-2px);box-shadow:0 8px 24px #1a12080f}.product-card-img{flex-shrink:0;height:140px;background:linear-gradient(135deg,#e8a83814,#c236160a);display:flex;align-items:center;justify-content:center;border-bottom:1px solid var(--border-light);position:relative}.product-placeholder{font-family:Playfair Display,serif;font-size:2.5rem;font-weight:900;color:var(--saffron);opacity:.4}.product-quick-add{position:absolute;bottom:.5rem;right:.5rem;width:32px;height:32px;border-radius:50%;background:var(--cream);border:1.5px solid var(--chili);color:var(--chili);cursor:pointer;font-size:1.1rem;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all .2s;line-height:0;padding-bottom:2px}.product-quick-add:hover{background:var(--chili);color:var(--cream);transform:scale(1.08)}.product-quick-add.added{background:var(--green);border-color:var(--green);color:var(--cream)}.product-card-body{padding:.75rem .85rem .85rem;display:flex;flex-direction:column;flex:1;min-height:0}.product-name{font-size:.86rem;font-weight:600;color:var(--dark);line-height:1.3;margin-bottom:.2rem;height:2.4em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-size{font-size:.74rem;color:var(--text-muted);height:1.2em;overflow:hidden}.product-price{margin-top:auto;padding-top:.6rem;font-family:Playfair Display,serif;font-size:1.1rem;font-weight:700;color:var(--dark)}.no-results{text-align:center;padding:4rem 2rem;color:var(--text-muted)}.modal-backdrop{position:fixed;inset:0;background:#1a12088c;z-index:1000;display:none;align-items:center;justify-content:center;padding:1rem;animation:fadeIn .2s ease}.modal-backdrop.open{display:flex}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:var(--cream);border-radius:.8rem;max-width:480px;width:100%;padding:2rem;position:relative;animation:slideUp .25s ease;max-height:90vh;overflow-y:auto}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close{position:absolute;top:1rem;right:1rem;background:transparent;border:none;font-size:1.5rem;color:var(--text-muted);cursor:pointer;line-height:1;padding:.3rem}.modal-close:hover{color:var(--chili)}.modal h2{font-family:Playfair Display,serif;font-size:1.5rem;font-weight:900;margin-bottom:.5rem;color:var(--dark);letter-spacing:-.02em}.modal p{color:var(--text-muted);font-size:.9rem;margin-bottom:1.25rem}.zip-input{width:100%;padding:.85rem 1rem;border:1.5px solid var(--border-light);border-radius:.5rem;background:var(--warm-white);font-family:DM Sans,sans-serif;font-size:1rem;color:var(--dark);margin-bottom:1rem}.zip-input:focus{outline:none;border-color:var(--chili);box-shadow:0 0 0 3px #c2361614}.zip-result{padding:.85rem 1rem;border-radius:.5rem;font-size:.88rem;margin-bottom:1rem;display:none}.zip-result.success{background:#2d50161a;color:var(--green);display:block}.zip-result.warning{background:#e8a83826;color:var(--dark);display:block}.zip-result.error{background:#c236161a;color:var(--chili);display:block}.modal-btn{width:100%;padding:.85rem;background:var(--dark);color:var(--cream);border:none;border-radius:.5rem;font-family:DM Sans,sans-serif;font-weight:600;font-size:.92rem;cursor:pointer;transition:all .2s}.modal-btn:hover{background:var(--chili)}.product-modal{max-width:540px}.product-modal .product-modal-img{width:100%;height:220px;background:linear-gradient(135deg,#e8a8381f,#c236160f);border-radius:.6rem;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem}.product-modal .product-modal-img .placeholder-letter{font-family:Playfair Display,serif;font-size:5rem;font-weight:900;color:var(--saffron);opacity:.5}.product-modal .product-modal-name{font-family:Playfair Display,serif;font-size:1.6rem;font-weight:700;color:var(--dark);margin-bottom:.3rem;letter-spacing:-.01em;line-height:1.2}.product-modal .product-modal-size{font-size:.9rem;color:var(--text-muted);margin-bottom:1rem}.product-modal .product-modal-price{font-family:Playfair Display,serif;font-size:2rem;font-weight:900;color:var(--dark);margin-bottom:1.5rem}.product-modal .product-modal-desc{font-size:.92rem;color:var(--text-muted);margin-bottom:1.5rem;line-height:1.6}.qty-control{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.qty-control label{font-size:.85rem;font-weight:600;color:var(--dark)}.qty-stepper{display:inline-flex;align-items:center;background:var(--warm-white);border:1.5px solid var(--border-light);border-radius:.5rem;overflow:hidden}.qty-stepper button{width:38px;height:38px;background:transparent;border:none;font-size:1.2rem;font-weight:600;color:var(--dark);cursor:pointer;transition:background .15s}.qty-stepper button:hover{background:var(--cream)}.qty-stepper button:disabled{opacity:.3;cursor:not-allowed}.qty-stepper .qty-value{min-width:36px;text-align:center;font-weight:600;color:var(--dark)}.modal-add-btn{width:100%;padding:.95rem;background:var(--chili);color:var(--cream);border:none;border-radius:.5rem;font-family:DM Sans,sans-serif;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .2s}.modal-add-btn:hover{background:var(--chili-dark)}.modal-add-btn.added{background:var(--green)}@media(max-width:900px){.layout{grid-template-columns:1fr}.sidebar{display:none}.mobile-dept-bar{display:block;position:relative;top:auto}.top-bar{padding:.65rem 1rem;gap:.6rem;flex-wrap:wrap}.back-to-site{display:none}.brand{font-size:.95rem;order:1}.top-bar-search{order:3;flex-basis:100%;max-width:100%}.top-bar-actions{order:2;margin-left:auto}.zip-btn{padding:.45rem .7rem;font-size:.75rem}.zip-btn .zip-label{display:none}.cart-btn{padding:.45rem .75rem;font-size:.78rem}.main-content{padding:1.5rem 1rem 4rem}.main-header h1{font-size:1.8rem}.product-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.product-card{height:270px}.product-card-img{height:110px}.product-name{font-size:.82rem}.product-price{font-size:1rem}}
