.main{padding:1.5rem 1rem;max-width:1400px;margin:0 auto}.campaigns-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem;margin-bottom:2rem}.campaign-card{position:relative;border-radius:20px;padding:1.5rem;overflow:hidden;min-height:200px;display:flex;flex-direction:column;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer}.campaign-card:hover{transform:translateY(-5px);box-shadow:0 15px 40px rgba(0,0,0,.15)}.campaign-card.combo{background:linear-gradient(135deg,#ff6b35 0,#f7931e 100%);color:#fff}.campaign-card.first-order{background:linear-gradient(135deg,#667eea 0,#764ba2 100%);color:#fff}.campaign-card.happy-hour{background:linear-gradient(135deg,#11998e 0,#38ef7d 100%);color:#fff}.campaign-card.nth-item{background:linear-gradient(135deg,#4facfe 0,#00f2fe 100%);color:#fff}.campaign-card.coupon{background:linear-gradient(135deg,#f093fb 0,#f5576c 100%);color:#fff}.campaign-card.default{background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);color:#fff}.campaign-icon{position:absolute;top:1rem;left:1.25rem;width:48px;height:48px;opacity:.9}.campaign-icon svg{width:100%;height:100%;fill:currentColor}.campaign-badge{position:absolute;top:1rem;right:1rem;background:rgba(255,255,255,.25);backdrop-filter:blur(10px);padding:.35rem .75rem;border-radius:100px;font-size:.65rem;font-weight:700;letter-spacing:.5px}.campaign-content{margin-top:3.5rem;flex:1;display:flex;flex-direction:column}.campaign-title{font-size:1.3rem;font-weight:800;margin-bottom:.35rem;text-transform:capitalize}.campaign-desc{font-size:.85rem;opacity:.9;margin-bottom:.75rem;line-height:1.4}.campaign-value{font-size:1.5rem;font-weight:900;margin-bottom:.25rem}.campaign-hours{background:rgba(255,255,255,.2);display:inline-block;padding:.4rem .8rem;border-radius:8px;font-size:.9rem;font-weight:700;margin-bottom:.5rem}.campaign-code{font-size:.85rem;opacity:.9}.campaign-code strong{background:rgba(255,255,255,.2);padding:.2rem .5rem;border-radius:4px;margin-left:.25rem}.campaign-code-box{display:flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.2);padding:.6rem .9rem;border-radius:10px;margin-bottom:.75rem;cursor:pointer;transition:background .2s}.campaign-code-box:hover{background:rgba(255,255,255,.3)}.code-label{font-size:.75rem;opacity:.9}.code-value{font-size:1rem;font-weight:800;letter-spacing:1px;flex:1}.code-copy{font-size:1rem}.campaign-details{font-size:.75rem;opacity:.8;margin-top:auto}.combo-products{display:flex;gap:.5rem;margin:.75rem 0;flex-wrap:wrap}.combo-product-item{display:flex;align-items:center;gap:.4rem;background:rgba(255,255,255,.2);padding:.4rem .6rem;border-radius:8px;font-size:.8rem}.combo-product-item img{width:32px;height:32px;border-radius:6px;object-fit:cover}.campaign-price-row{display:flex;align-items:center;justify-content:space-between;margin-top:.5rem}.campaign-add-btn{display:flex;align-items:center;gap:.4rem;background:rgba(255,255,255,.25);border:none;color:#fff;padding:.6rem 1rem;border-radius:10px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.campaign-add-btn:hover{background:rgba(255,255,255,.4);transform:scale(1.02)}.campaign-add-btn svg{width:18px;height:18px}.applicable-items{margin-top:.75rem;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.2)}.applicable-label{font-size:.7rem;opacity:.8;display:block;margin-bottom:.4rem}.applicable-products{display:flex;gap:.5rem;flex-wrap:wrap}.applicable-product{display:flex;align-items:center;gap:.4rem;background:rgba(255,255,255,.2);padding:.35rem .6rem;border-radius:8px;font-size:.75rem;cursor:pointer;transition:all .2s}.applicable-product:hover{background:rgba(255,255,255,.35)}.applicable-product img{width:28px;height:28px;border-radius:5px;object-fit:cover}.applicable-categories{display:flex;gap:.4rem;flex-wrap:wrap}.cat-tag{background:rgba(255,255,255,.2);padding:.3rem .6rem;border-radius:6px;font-size:.75rem}.campaign-timer{position:absolute;bottom:1rem;right:1rem;background:rgba(0,0,0,.2);padding:.35rem .7rem;border-radius:100px;font-size:.7rem;font-weight:600;display:flex;align-items:center;gap:.3rem}.campaign-timer svg{width:12px;height:12px;fill:currentColor}.code-copy{display:flex;align-items:center}.code-copy svg{fill:currentColor}.section-title{font-size:1.5rem;font-weight:800;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem;color:var(--text)}.section-title span{color:var(--primary)}.featured-section{margin-top:1rem}.categories{background:rgba(255,255,255,.98);backdrop-filter:blur(10px);padding:1rem 0;overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none;border-bottom:1px solid var(--border);box-shadow:0 2px 20px var(--shadow);position:sticky;top:0;z-index:200;margin:0 -1rem}.categories::-webkit-scrollbar{display:none}.categories-inner{display:flex;gap:.5rem;padding:0 1rem;width:max-content}.cat-btn{background:0 0;border:1px solid var(--border);padding:.7rem 1.3rem;border-radius:100px;cursor:pointer;font-family:inherit;font-size:.9rem;font-weight:500;color:var(--text-light);white-space:nowrap;transition:all .3s ease}.cat-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-glow)}.cat-btn.active{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem;margin-top:1rem}.card{background:var(--surface);border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);transition:all .4s cubic-bezier(.4, 0, .2, 1);cursor:pointer;box-shadow:0 2px 10px var(--shadow)}.card:hover{transform:translateY(-6px);border-color:var(--primary-light);box-shadow:0 15px 30px rgba(0,0,0,.1)}.card-img{aspect-ratio:550/378;height:auto;background:#fff;display:flex;align-items:center;justify-content:center;font-size:3.5rem;position:relative;overflow:hidden}.card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.card:hover .card-img img{transform:scale(1.1)}.badge{position:absolute;top:10px;left:10px;background:var(--primary);color:#fff;padding:.3rem .7rem;border-radius:100px;font-size:.65rem;font-weight:700;text-transform:uppercase}.badge.out-of-stock{background:#ef4444}.card-body{padding:1rem}.card-title{font-size:1rem;font-weight:700;margin-bottom:.3rem;color:var(--text)}.card-desc{font-size:.8rem;color:var(--text-light);line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.2em;margin-bottom:.75rem}.card-footer{display:flex;justify-content:space-between;align-items:center}.price-wrapper{display:flex;align-items:center;gap:.5rem}.market-price{font-size:.85rem;color:var(--text-light);text-decoration:line-through}.price{font-size:1.2rem;font-weight:800;color:var(--primary)}.add-btn{width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);border:none;color:#fff;font-size:1.3rem;font-weight:300;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .25s cubic-bezier(.4, 0, .2, 1);box-shadow:0 4px 12px rgba(22,163,74,.3);position:relative;overflow:hidden}.add-btn::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.2) 0,transparent 50%);opacity:0;transition:opacity .25s}.add-btn:hover{transform:scale(1.1);box-shadow:0 6px 20px rgba(22,163,74,.4)}.add-btn:hover::before{opacity:1}.add-btn:active{transform:scale(.95)}.add-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.add-btn svg{width:20px;height:20px;fill:currentColor}.modal-img{height:280px;background:#fff;position:relative;overflow:hidden;flex-shrink:0;border-radius:24px 24px 0 0}.modal-img img{width:100%;height:100%;object-fit:cover;border-radius:24px 24px 0 0}.modal-img .badge{top:14px;left:14px;font-size:.75rem;padding:.4rem .9rem}#productModal .modal-body{padding:1.25rem}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.modal-title{font-size:1.3rem;font-weight:800}.modal-price{font-size:1.3rem;font-weight:800;color:var(--primary)}.modal-desc{color:var(--text-light);font-size:.9rem;line-height:1.5;margin-bottom:1.25rem}.options-section{margin-bottom:1rem}.options-title{font-size:.85rem;font-weight:700;margin-bottom:.5rem;display:flex;align-items:center;gap:.4rem}.options-title .tag{font-size:.65rem;padding:.15rem .4rem;border-radius:100px;font-weight:600}.options-title .required{background:#ff4757;color:#fff}.options-title .optional{background:#fff;color:var(--text-light)}.option-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;border:1px solid var(--border);border-radius:10px;margin-bottom:.5rem;cursor:pointer;transition:all .2s}.option-item:hover{border-color:var(--primary-light);background:var(--primary-glow)}.option-item.selected{border-color:var(--primary);background:var(--primary-glow)}.option-checkbox,.option-radio{width:20px;height:20px;border:2px solid var(--border);flex-shrink:0}.option-radio{border-radius:50%}.option-checkbox{border-radius:4px}.option-item.selected .option-checkbox,.option-item.selected .option-radio{border-color:var(--primary);background:var(--primary)}.option-item.selected .option-checkbox::after,.option-item.selected .option-radio::after{content:'✓';color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.option-info{flex:1}.option-name{font-size:.9rem;font-weight:500}.option-price{font-size:.85rem;font-weight:600;color:var(--primary)}.loading{display:flex;justify-content:center;align-items:center;padding:3rem;grid-column:1/-1}.modal-footer{padding:.75rem 1.25rem 1.25rem;background:var(--surface);border-top:1px solid var(--border);display:flex;gap:.75rem;align-items:center;flex-shrink:0;position:relative;z-index:50}.qty-selector{display:flex;align-items:center;gap:.5rem;background:var(--bg);padding:.4rem;border-radius:10px}.qty-selector button{width:32px;height:32px;border-radius:8px;border:none;background:var(--surface);color:var(--text);font-size:1.1rem;cursor:pointer;transition:all .2s}.qty-selector button:hover{background:var(--primary);color:#fff}.qty-selector span{font-size:1rem;font-weight:700;min-width:24px;text-align:center}.add-to-cart-btn{flex:1;padding:.9rem;border-radius:12px;background:var(--primary);border:none;color:#fff;font-family:inherit;font-size:.95rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.4rem;transition:all .3s}.add-to-cart-btn:hover{background:var(--primary-dark)}.add-to-cart-btn:disabled{background:#fff;color:var(--text-muted);cursor:not-allowed}.add-to-cart-btn .total-price{background:rgba(255,255,255,.2);padding:.2rem .6rem;border-radius:100px;font-size:.85rem}@media (max-width:768px){.main{padding:1rem .75rem}.campaigns-grid{grid-template-columns:1fr;gap:1rem}.campaign-card{min-height:180px;padding:1.25rem}.campaign-icon{font-size:2rem}.campaign-title{font-size:1.1rem}.campaign-value{font-size:1.3rem}.grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.card-img{height:120px;font-size:2.5rem}.card-body{padding:.75rem}.card-title{font-size:.9rem}.card-desc{font-size:.75rem;min-height:2em;margin-bottom:.5rem}.price{font-size:1rem}.add-btn{width:36px;height:36px;border-radius:10px}.add-btn svg{width:18px;height:18px}}@media (max-width:480px){.campaign-card{min-height:auto}.campaign-content{margin-top:3rem}}.combo-modal .modal-content{max-width:800px;width:95%;max-height:90vh;overflow-y:auto;padding:0}.combo-modal-header{background:linear-gradient(135deg,#ff6b35 0,#f7931e 100%);color:#fff;padding:1.5rem;text-align:center}.combo-modal-header h2{font-size:1.5rem;font-weight:800;margin-bottom:.25rem}.combo-modal-header p{font-size:.9rem;opacity:.9}.combo-products-container{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;padding:1.25rem;background:var(--bg)}.combo-product-card{background:var(--surface);border-radius:16px;overflow:hidden;border:2px solid var(--border);transition:border-color .2s}.combo-product-card.has-selection{border-color:var(--primary)}.combo-product-image{height:140px;background:#fff;position:relative;overflow:hidden}.combo-product-image img{width:100%;height:100%;object-fit:cover}.combo-product-image .product-index{position:absolute;top:10px;left:10px;background:var(--primary);color:#fff;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700}.combo-product-info{padding:1rem}.combo-product-name{font-size:1rem;font-weight:700;margin-bottom:.25rem;color:var(--text)}.combo-product-price{font-size:.85rem;color:var(--text-light);text-decoration:line-through}.combo-product-extras{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border)}.combo-extras-title{font-size:.75rem;font-weight:600;color:var(--text-light);margin-bottom:.5rem;display:flex;align-items:center;gap:.3rem}.combo-extras-title .required-dot{width:6px;height:6px;background:#ff4757;border-radius:50%}.combo-extra-option{display:flex;align-items:center;gap:.5rem;padding:.5rem .6rem;border:1px solid var(--border);border-radius:8px;margin-bottom:.4rem;cursor:pointer;transition:all .2s;font-size:.85rem}.combo-extra-option:hover{border-color:var(--primary-light);background:var(--primary-glow)}.combo-extra-option.selected{border-color:var(--primary);background:var(--primary-glow)}.combo-extra-option .check-circle{width:18px;height:18px;border:2px solid var(--border);border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;transition:all .2s}.combo-extra-option.selected .check-circle{border-color:var(--primary);background:var(--primary)}.combo-extra-option.selected .check-circle::after{content:'✓';color:#fff;font-size:10px;font-weight:700}.combo-extra-option .option-text{flex:1}.combo-extra-option .option-extra-price{font-weight:600;color:var(--primary);font-size:.8rem}.combo-modal-footer{padding:1rem 1.25rem 1.5rem;background:var(--surface);border-top:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;gap:1rem;position:sticky;bottom:0}.combo-savings{display:flex;flex-direction:column;gap:.2rem}.combo-savings .original-price{font-size:.9rem;color:var(--text-light);text-decoration:line-through}.combo-savings .savings-badge{font-size:.8rem;font-weight:700;color:#22c55e;background:rgba(34,197,94,.1);padding:.2rem .5rem;border-radius:4px;display:inline-block}.combo-add-btn{flex:1;max-width:280px;display:flex;align-items:center;justify-content:center;gap:.75rem;background:linear-gradient(135deg,#ff6b35 0,#f7931e 100%);color:#fff;border:none;padding:1rem 1.5rem;border-radius:14px;font-size:1rem;font-weight:700;cursor:pointer;transition:all .2s;box-shadow:0 4px 15px rgba(255,107,53,.3)}.combo-add-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(255,107,53,.4)}.combo-add-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.combo-add-btn .combo-total{background:rgba(255,255,255,.2);padding:.3rem .6rem;border-radius:6px;font-size:.95rem}@media (max-width:600px){.combo-products-container{grid-template-columns:1fr;gap:.75rem;padding:1rem}.combo-product-image{height:120px}.combo-modal-footer{flex-direction:column;align-items:stretch}.combo-savings{flex-direction:row;justify-content:center;align-items:center;gap:1rem}.combo-add-btn{max-width:none}}#headerLogo{width:120px;height:auto!important;max-height:43px;object-fit:contain}#footerLogo{width:auto;max-width:280px;height:100px;object-fit:contain}.powered-logo{width:24px!important;height:24px!important;object-fit:contain}.price{color:#15803d}.footer-copy{color:#4b5563!important}