@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes bannerFade{0%{opacity:0;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes fadeSlideIn{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes modalSlideIn{0%{transform:translateY(40px) scale(.95);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes toastIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes dropdownSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(360deg)}}@keyframes slideUpModal{0%{transform:translateY(100%);opacity:.5}to{transform:translateY(0);opacity:1}}@keyframes highlightReview{0%,50%{background:#fce8ef;border-color:var(--primary)}to{background:#fff;border-color:#eee}}@keyframes bounceUpDown{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes pulsate{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}@font-face{font-family:"Font Awesome 6 Free";font-display:swap}@font-face{font-family:"Font Awesome 6 Brands";font-display:swap}#location-selector,#saved-addresses-section,.location-selector{display:none!important}:root{--primary:#B03359;--primary-dark:#8C2847;--primary-light:#F8E0E8;--secondary:#D64D7A;--secondary-dark:#B03359;--accent:#B03359;--dark:#1A1A2E;--dark-secondary:#16213E;--light:#F8FAFC;--gray:#64748B;--gray-light:#94A3B8;--light-gray:#E2E8F0;--border:#E2E8F0;--white:#FFFFFF;--success:#10B981;--warning:#F59E0B;--error:#EF4444;--shadow-sm:0 1px 2px rgba(0, 0, 0, 0.05);--shadow:0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);--shadow-md:0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);--shadow-lg:0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);--shadow-xl:0 25px 50px -12px rgba(0, 0, 0, 0.25);--radius:16px;--radius-sm:10px;--radius-lg:24px;--radius-full:9999px;--transition:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);--font-sans:'Poppins', -apple-system, BlinkMacSystemFont, sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-sans);background:var(--light);color:var(--dark);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeSpeed}img{content-visibility:auto}.banner-slide,.category-card,.product-card{will-change:transform;transform:translateZ(0)}.app-container{min-height:100vh;display:flex;flex-direction:column;background:var(--white);position:relative}.app-header{background:linear-gradient(135deg,var(--primary) 0%,#c44a6d 50%,var(--primary-dark) 100%);color:var(--white);padding:1rem 1.25rem;position:sticky;top:0;z-index:1001;box-shadow:var(--shadow-md)}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:.875rem}.logo{align-items:center;font-size:1.375rem;font-weight:700;text-decoration:none;color:var(--white);letter-spacing:-.5px}.logo img{height:44px;width:auto;object-fit:contain;filter:brightness(0) invert(1)}.logo i{font-size:1.75rem;background:rgba(255,255,255,.2);padding:.5rem;border-radius:var(--radius-sm)}.header-actions,.logo{display:flex;gap:.625rem}.cart-badge,.header-action-btn{display:flex;align-items:center;justify-content:center}.header-action-btn{background:rgba(255,255,255,.15);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);width:42px;height:42px;border-radius:var(--radius-sm);color:var(--white);cursor:pointer;transition:background .3s ease;position:relative;font-size:1rem;text-decoration:none;-webkit-tap-highlight-color:transparent;transform:translateZ(0)}.header-action-btn i{line-height:1;display:block}.header-action-btn:hover{background:rgba(255,255,255,.25)}@media (hover:hover) and (pointer:fine){.header-action-btn:hover{transform:translateY(-2px)}}.cart-badge{position:absolute;top:-6px;right:-6px;background:var(--success);color:#fff;border-radius:var(--radius-full);min-width:20px;height:20px;padding:0 5px;font-size:.7rem;font-weight:700;border:2px solid var(--white);box-shadow:var(--shadow)}.cart-badge:empty{display:none}.location-selector{display:flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.12);backdrop-filter:blur(10px);padding:.625rem 1rem;border-radius:var(--radius-full);font-size:.875rem;cursor:pointer;border:1px solid rgba(255,255,255,.15);transition:var(--transition)}.location-selector:hover{background:rgba(255,255,255,.2)}.location-selector i:first-child{color:#ffd93d}.app-main{flex:1;padding-bottom:85px}.screen{display:none!important}.screen.active{display:block!important;animation:fadeIn .4s ease}.banner-slider{overflow:hidden;background:linear-gradient(135deg,var(--light) 0%,#e8edf5 100%);min-height:200px;contain:layout style}.banner-slider,.banner-track{position:relative;width:100%}.banner-slide{display:none;width:100%}.banner-slide.active{display:block;animation:bannerFade .6s ease-out}.banner-slide img{width:100%;height:auto;display:block;aspect-ratio:16/7;object-fit:cover}.banner-img-desktop{display:block!important;width:100%;height:auto}.banner-img-mobile{display:none!important}@media (max-width:768px){.banner-img-desktop{display:none!important}.banner-img-mobile{display:block!important;width:100%;height:auto;aspect-ratio:4/5}}@media (min-width:1024px){.banner-slider{width:100%!important;margin:0!important;overflow:hidden!important;min-height:550px!important}.banner-slide,.banner-slider,.banner-track{line-height:0!important}.banner-slide{min-height:550px!important}.banner-slide img{aspect-ratio:unset!important;max-height:none!important;height:auto!important;width:100%!important}.banner-img-desktop,.banner-slide img{display:block!important;object-fit:cover!important;object-position:center!important;min-height:550px!important;vertical-align:bottom!important}}@media (min-width:1440px){.banner-img-desktop,.banner-slide,.banner-slide img,.banner-slider{min-height:650px!important}}@media (min-width:1920px){.banner-img-desktop,.banner-slide,.banner-slide img,.banner-slider{min-height:750px!important}}.banner-dot,.banner-dots{border-radius:var(--radius-full)}.banner-dots{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:10;padding:8px 14px;background:rgba(0,0,0,.4);backdrop-filter:blur(8px)}.banner-dot{width:8px;height:8px;background:rgba(255,255,255,.4);cursor:pointer;transition:var(--transition);border:0}.banner-dot:hover{background:rgba(255,255,255,.7)}.banner-dot.active{background:var(--white);width:24px}.categories{padding:1.5rem 1.25rem}.section-title{font-size:1.25rem;font-weight:700;margin-bottom:1rem;color:var(--dark);display:flex;justify-content:space-between;align-items:center}.section-title a{font-size:.875rem;color:var(--primary);text-decoration:none;font-weight:600;display:flex;align-items:center;gap:4px}.category-grid{display:flex;gap:.875rem;overflow-x:auto;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:.5rem;min-height:90px}.category-grid::-webkit-scrollbar{display:none}.category-card,.category-icon{display:flex;align-items:center;transition:var(--transition)}.category-card{flex-direction:column;gap:.625rem;padding:1rem .875rem;background:var(--white);border-radius:var(--radius);cursor:pointer;border:2px solid var(--light-gray);min-width:100px;max-width:120px;box-shadow:var(--shadow-sm)}.category-card:hover{border-color:var(--primary);transform:translateY(-4px);box-shadow:var(--shadow-md)}.category-card.active{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:var(--white);border-color:var(--primary);box-shadow:0 8px 20px rgba(22,101,52,.35)}.category-icon{width:52px;height:52px;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--primary-light),#f8e0e8);justify-content:center;font-size:1.5rem;color:var(--primary)}.category-card.active .category-icon{background:rgba(255,255,255,.25);color:var(--white)}.category-name{font-size:.75rem;font-weight:600;text-align:center;white-space:normal;word-wrap:break-word;line-height:1.2;max-height:2.4em;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.subcategory-nav{animation:fadeSlideIn .3s ease}.back-to-categories-btn{width:36px;height:36px;border-radius:50%;border:2px solid var(--primary);background:var(--white);color:var(--primary);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);flex-shrink:0;font-size:.875rem}.back-to-categories-btn:hover{background:var(--primary);color:var(--white)}.products-section{padding:0 1.25rem 2rem}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;width:100%;min-height:300px}.product-card{background:var(--white);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);transition:var(--transition);display:flex;flex-direction:column;border:1px solid rgba(0,0,0,.04)}.product-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}.product-image{height:200px;width:100%;position:relative;overflow:hidden;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:10px}.product-image img{width:100%;height:100%;object-fit:contain;transition:transform .5s ease}.product-card:hover .product-image img{transform:scale(1.08)}.product-badge{position:absolute;top:10px;left:10px;background:var(--error);color:#fff;padding:4px 10px;border-radius:var(--radius-full);font-size:.7rem;font-weight:700}.out-of-stock-badge,.product-wishlist{position:absolute;display:flex;align-items:center;justify-content:center}.product-wishlist{top:10px;right:10px;width:32px;height:32px;background:rgba(255,255,255,.9);border:0;border-radius:var(--radius-full);cursor:pointer;transition:var(--transition);color:var(--gray)}.product-wishlist:hover{background:var(--error);color:#fff}.out-of-stock-badge{inset:0;background:rgba(0,0,0,.65);color:#fff;font-size:.85rem;font-weight:700;text-transform:uppercase;backdrop-filter:blur(2px)}.bogo-badge{position:absolute;top:8px;left:8px;background:linear-gradient(135deg,#43a047,#2e7d32);color:#fff;padding:4px 10px;border-radius:6px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 6px rgba(46,125,50,.4);z-index:2;animation:bogoPulse 2s ease-in-out infinite}@keyframes bogoPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.05)}}.product-details,.product-info{padding:1rem;display:flex;flex-direction:column;flex-grow:1}.product-rating{display:flex;align-items:center;gap:4px;margin-bottom:.5rem;font-size:.75rem}.product-rating i{color:#ffc107}.product-name,.product-rating .rating-value{font-weight:600;color:var(--dark)}.product-rating .rating-count{color:var(--gray);font-size:.7rem}.product-name{margin-bottom:.375rem;font-size:.95rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.6em}.product-unit{font-size:.75rem;color:var(--gray);margin-bottom:.75rem}.product-footer{display:flex;align-items:center;justify-content:space-between;margin-top:auto;gap:.75rem;flex-wrap:nowrap;padding-top:.5rem}.product-footer .add-to-cart-btn,.product-footer .quantity-controls{flex-shrink:0}.product-price{display:flex;flex-direction:row;align-items:baseline;gap:4px;flex-wrap:wrap;flex:1;min-width:0}.add-to-cart-btn,.product-price .price{font-size:1.1rem;font-weight:700;color:var(--primary);white-space:nowrap}.product-price .unit{font-size:.8rem;color:var(--gray);font-weight:500}.product-price .original-price{font-size:.75rem;color:var(--gray);text-decoration:line-through}.add-to-cart-btn{padding:.5rem .875rem;background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:var(--white);border:0;border-radius:var(--radius-sm);font-weight:600;font-size:.8rem;cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;gap:.375rem}.add-to-cart-btn:hover{transform:scale(1.05);box-shadow:0 4px 15px rgba(22,101,52,.4)}.add-to-cart-btn.added{background:linear-gradient(135deg,var(--success),#9c2e4e)}.add-to-cart-btn:disabled{background:var(--gray);cursor:not-allowed;opacity:.6}.quantity-controls{display:flex;align-items:center;gap:.375rem;background:linear-gradient(135deg,var(--primary),var(--primary-dark));border-radius:var(--radius-sm);padding:.35rem .5rem;min-height:36px}.quantity-controls .qty-btn{width:28px;height:28px;min-width:28px;min-height:28px;padding:0;border:0;background:rgba(255,255,255,.25);color:#fff;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition);font-size:.85rem;font-weight:600;flex-shrink:0}.quantity-controls .qty-btn:hover{background:rgba(255,255,255,.4);transform:scale(1.05)}.quantity-controls .qty-btn:active{transform:scale(.95)}.quantity-controls .qty-value{color:#fff;font-weight:700;font-size:.95rem;min-width:24px;text-align:center;line-height:1}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background:var(--white);display:flex;justify-content:space-around;padding:.625rem 0;padding-bottom:calc(.625rem + env(safe-area-inset-bottom));box-shadow:0-4px 20px rgba(0,0,0,.08);z-index:100;border-top:1px solid var(--light-gray)}@media (min-width:769px){.bottom-nav{display:none!important}}.modal,.nav-item{align-items:center}.nav-item,.nav-item i{transition:var(--transition)}.nav-item{display:flex;flex-direction:column;gap:.25rem;text-decoration:none;color:var(--gray);flex:1;padding:.5rem 0;position:relative}.nav-item.active{color:var(--primary)}.nav-item.active::before{content:"";position:absolute;top:-10px;left:50%;transform:translateX(-50%);width:40px;height:3px;background:var(--primary);border-radius:var(--radius-full)}.nav-item i{font-size:1.25rem}.nav-item.active i{transform:scale(1.1)}.nav-item span{font-size:.7rem;font-weight:600}.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:1000;justify-content:center;padding:1rem;backdrop-filter:blur(4px)}.modal.active{display:flex}.modal-content{background:var(--white);border-radius:var(--radius-lg);width:100%;max-width:420px;max-height:90vh;overflow-y:auto;animation:modalSlideIn .35s ease;box-shadow:var(--shadow-xl)}.modal-header{padding:1.25rem 1.5rem;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:var(--white);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:1}.modal-header h3{font-weight:600;font-size:1.1rem}.close-modal,.search-input-container input{border-radius:var(--radius-full);transition:var(--transition)}.close-modal{background:rgba(255,255,255,.15);border:0;color:var(--white);font-size:1.1rem;cursor:pointer;width:34px;height:34px;display:flex;align-items:center;justify-content:center}.close-modal:hover{background:rgba(255,255,255,.25)}.modal-body{padding:1.5rem}#search-modal .modal-content{max-width:450px}#search-modal .modal-header,.search-input-container{padding:1rem 1.25rem;background:var(--white);border-bottom:1px solid var(--light-gray)}#search-modal .modal-header{color:var(--dark)}#search-modal .close-modal{background:var(--light);color:var(--gray)}#search-modal .modal-body{padding:0}.search-input-container{position:relative}.search-input-container .search-icon{position:absolute;left:2rem;top:50%;transform:translateY(-50%);color:var(--gray)}.search-input-container input{width:100%;padding:.875rem 1rem .875rem 2.75rem;border:2px solid var(--light-gray);font-size:.95rem;font-family:inherit;background:var(--light)}.search-input-container input:focus{outline:0;border-color:var(--primary);background:var(--white);box-shadow:0 0 0 4px rgba(22,101,52,.1)}#search-results{padding:1rem 1.25rem;max-height:400px;overflow-y:auto}.search-result-item{display:flex;align-items:center;gap:1rem;padding:.875rem;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition)}.search-result-item:hover{background:var(--light)}.search-result-item img{width:56px;height:56px;border-radius:var(--radius-sm);object-fit:cover}.search-result-info{flex:1;min-width:0}.search-result-name{font-weight:600;color:var(--dark);margin-bottom:.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.search-result-category{font-size:.8rem;color:var(--gray)}.search-result-price{font-weight:700;color:var(--primary)}.search-empty{text-align:center;padding:3rem 1rem;color:var(--gray)}.search-empty i{font-size:3rem;margin-bottom:1rem;opacity:.3}.search-empty .title{font-size:1rem;font-weight:600;color:var(--dark);margin-bottom:.5rem}#location-modal .modal-content{max-width:450px}#location-modal .modal-header{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:var(--white)}#location-modal .modal-body{padding:1.25rem;max-height:70vh;overflow-y:auto}#location-map-modal{z-index:9999!important}#location-map-modal .modal-content{max-width:900px;width:95%;max-height:90vh;overflow-y:auto}#location-map-modal .modal-header{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:var(--white);padding:1rem 1.5rem}#location-map-modal .modal-body{padding:0;overflow:visible}#location-map-modal iframe{width:100%;min-height:400px;border:0;display:block}@media (max-width:768px){#location-map-modal .modal-content{width:100%;max-width:100%;max-height:none;margin:0;border-radius:12px}#location-map-modal iframe{min-height:250px;height:250px}#location-map-modal .modal-header{padding:1rem}#location-map-modal .modal-header h3{font-size:1.1rem}#location-map-modal .modal-body>div{height:auto!important}}@media (max-width:480px){#location-map-modal iframe{min-height:200px;height:200px}#location-map-modal .modal-body>div{height:auto!important}}.saved-address-item{gap:1rem;padding:1rem;border:2px solid var(--light-gray);margin-bottom:.75rem;position:relative}.saved-address-item.selected,.saved-address-item:hover{border-color:var(--primary);background:var(--primary-light)}.saved-address-item .address-icon{width:44px;height:44px;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--primary-light),#f8e0e8);display:flex;align-items:center;justify-content:center;color:var(--primary);font-size:1.1rem;flex-shrink:0}.saved-address-item.selected .address-icon{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:var(--white)}.saved-address-item .address-content{flex:1;min-width:0}.add-address-form h4,.saved-address-item .address-name{font-weight:600;color:var(--dark);margin-bottom:.25rem}.saved-address-item .address-text{font-size:.85rem;color:var(--gray);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.saved-address-item .selected-icon{color:var(--primary);font-size:1.1rem}.saved-address-item .delete-address-btn{width:32px;height:32px;border-radius:50%;border:0;background:0 0;color:var(--gray);cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;opacity:0}.saved-address-item:hover .delete-address-btn{opacity:1}.saved-address-item .delete-address-btn:hover{background:#fee2e2;color:#ef4444}.add-address-btn,.address-type-selector .type-option span,.location-result-item,.saved-address-item{display:flex;align-items:center;border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition)}.add-address-btn{justify-content:center;gap:.5rem;width:100%;padding:1rem;border:2px dashed var(--primary);background:0 0;color:var(--primary);font-family:inherit;font-size:.95rem;font-weight:600;margin-top:.5rem}.add-address-btn:hover,.location-result-item:hover{background:var(--primary-light)}.address-type-selector .type-option span,.location-result-item{gap:.75rem;padding:.875rem 1rem;color:var(--dark)}.location-result-item i{color:var(--primary);font-size:1rem}.no-addresses,.no-results{text-align:center;padding:2rem 1rem;color:var(--gray)}.no-addresses i{font-size:2.5rem;margin-bottom:.75rem;opacity:.3}.no-results{padding:1.5rem}.no-results i{font-size:2rem;margin-bottom:.5rem;opacity:.3}.add-address-form{padding:.5rem 0}.add-address-form h4{font-size:1.1rem;margin-bottom:1.25rem}.address-type-selector{display:flex;gap:.75rem;flex-wrap:wrap}.address-type-selector .type-option{flex:1;min-width:80px}.address-type-selector .type-option input{display:none}.address-type-selector .type-option span{flex-direction:column;gap:.5rem;padding:.875rem;border:2px solid var(--light-gray);font-size:.85rem;font-weight:500;color:var(--gray)}.address-type-selector .type-option span i{font-size:1.25rem}.address-type-selector .type-option input:checked+span{border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.add-address-form .form-actions{display:flex;gap:.75rem;margin-top:1.5rem}.add-address-form .form-actions .btn{flex:1}.add-address-form textarea.form-control{resize:vertical;min-height:80px}.btn{padding:.75rem 1.5rem;border:0;border-radius:var(--radius-sm);font-family:var(--font-sans);font-weight:600;cursor:pointer;transition:var(--transition);display:inline-flex;align-items:center;justify-content:center;gap:.5rem;text-decoration:none}.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-dark));color:var(--white)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 15px rgba(22,101,52,.4)}.btn-secondary{background:linear-gradient(135deg,var(--secondary),var(--secondary-dark));color:var(--white)}.btn-outline{background:0 0;color:var(--primary);border:2px solid var(--primary)}.btn-outline:hover{background:var(--primary);color:var(--white)}.btn-block{width:100%}.btn-lg{padding:1rem 2rem;font-size:1.1rem}.btn-sm{padding:.5rem 1rem;font-size:.9rem}.btn-success{background:linear-gradient(135deg,var(--success),#059669)!important;color:var(--white)!important;transform:scale(1.02)}.btn-success:hover{background:linear-gradient(135deg,#059669,#047857)!important}.form-group{margin-bottom:1.25rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--dark)}.form-control{width:100%;padding:.875rem 1rem;border:2px solid var(--light-gray);border-radius:var(--radius-sm);font-family:var(--font-sans);font-size:1rem;transition:var(--transition);background:var(--white)}.form-control:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 4px rgba(22,101,52,.1)}.form-control::placeholder{color:var(--gray-light)}.login-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;padding:2rem;text-align:center;background:linear-gradient(180deg,var(--primary-light) 0%,var(--white) 100%)}.login-logo{margin-bottom:2rem}.login-logo img{height:160px;width:auto;margin-bottom:1.5rem}.login-logo i{font-size:4rem;color:var(--primary);margin-bottom:1rem}.login-logo h1{font-size:2rem;font-weight:700;color:var(--dark)}.login-logo p{color:var(--gray);margin-top:.5rem}.loading-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);display:none;align-items:center;justify-content:center;z-index:9999;backdrop-filter:blur(4px)}.image-lightbox.active,.loading-overlay.active{display:flex}.loading-spinner{width:50px;height:50px;border:4px solid rgba(255,255,255,.3);border-top-color:var(--white);border-radius:var(--radius-full);animation:spin 1s linear infinite}.image-lightbox,.image-lightbox-close{align-items:center;justify-content:center}.image-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.95);display:none;z-index:10000;padding:1rem}.image-lightbox img{max-width:100%;max-height:100%;object-fit:contain}.image-lightbox-close{position:absolute;top:1.5rem;right:1.5rem;background:rgba(255,255,255,.95);border:2px solid rgba(0,0,0,.1);width:50px;height:50px;border-radius:var(--radius-full);color:var(--dark);font-size:2rem;font-weight:700;cursor:pointer;display:flex;z-index:10001;transition:all .2s ease;box-shadow:0 4px 12px rgba(0,0,0,.3);-webkit-tap-highlight-color:transparent}.image-lightbox-close:hover{background:var(--white);transform:scale(1.1);box-shadow:0 6px 20px rgba(0,0,0,.4);border-color:var(--primary)}.image-lightbox-close:active{transform:scale(.95)}.offline-indicator{position:fixed;top:0;left:0;right:0;background:var(--error);color:#fff;padding:.75rem;text-align:center;font-size:.875rem;z-index:9998;display:none}.offline-indicator.active{display:block}#toast-container{position:fixed;bottom:100px;left:50%;transform:translateX(-50%);z-index:9999;display:flex;flex-direction:column;gap:.5rem}.toast{background:var(--dark);color:var(--white);padding:.875rem 1.5rem;border-radius:var(--radius-full);font-size:.9rem;font-weight:500;box-shadow:var(--shadow-lg);animation:toastIn .3s ease;display:flex;align-items:center;gap:.5rem}.toast.success{background:var(--success)}.toast.error{background:var(--error)}.toast.warning{background:var(--warning)}@media (max-width:480px){.app-header{padding:.75rem 1rem}.header-top{margin-bottom:.625rem}.logo{font-size:1.2rem}.logo img{height:36px}.header-action-btn{width:38px;height:38px;font-size:.9rem}.location-selector{padding:.5rem .875rem;font-size:.8rem}.categories{padding:1rem 0 1rem 1rem}.category-grid{gap:.75rem;padding-right:1rem}.category-card{min-width:90px;max-width:110px;padding:.75rem .5rem}.category-icon{width:44px;height:44px;font-size:1.25rem}.category-name{font-size:.65rem}.section-title{font-size:1.1rem;padding:0 1rem}.products-section{padding:0 1rem 1.5rem}.product-grid{grid-template-columns:1fr;gap:1rem}.product-card{flex-direction:row;height:140px}.product-image{width:130px;height:100%;min-width:130px}.product-details,.product-info{flex:1;padding:.75rem;justify-content:space-between}.product-name{font-size:.9rem;min-height:auto;-webkit-line-clamp:2}.product-rating{margin-bottom:.25rem;display:none}.product-footer{flex-wrap:nowrap;gap:.375rem;align-items:center}.product-price{flex:1;min-width:0}.product-price .price{font-size:.95rem}.nav-item span,.product-price .original-price{font-size:.65rem}.product-footer .add-to-cart-btn{padding:.4rem .625rem;font-size:.7rem;min-height:30px;flex-shrink:0}.product-footer .add-to-cart-btn i{display:none}.quantity-controls{padding:.2rem .35rem;min-height:30px;gap:.2rem;flex-shrink:0}.quantity-controls .qty-btn{width:22px;height:22px;min-width:22px;min-height:22px;font-size:.7rem}.quantity-controls .qty-value{font-size:.75rem;min-width:18px}.bottom-nav{padding:.5rem 0}.nav-item i{font-size:1.15rem}}@media (min-width:481px) and (max-width:767px){.product-grid{grid-template-columns:repeat(2,1fr)}.product-card{flex-direction:column;height:auto}.product-image{width:100%;height:220px;min-width:auto;padding:15px;background:#fff}.category-grid{gap:1rem}.category-card{min-width:100px;max-width:130px;padding:1rem}.category-icon{width:50px;height:50px}.category-name{font-size:.75rem}.product-footer{gap:.5rem;flex-wrap:nowrap;align-items:center}.product-price{flex:1;min-width:0}.product-price .price{font-size:1rem}.product-footer .add-to-cart-btn{padding:.45rem .75rem;font-size:.75rem;min-height:34px;flex-shrink:0}.quantity-controls{padding:.25rem .45rem;min-height:34px;gap:.3rem;flex-shrink:0}.quantity-controls .qty-btn{width:26px;height:26px;min-width:26px;min-height:26px;font-size:.75rem}.quantity-controls .qty-value{font-size:.85rem;min-width:20px}}@media (min-width:769px){.app-main{padding-bottom:2rem}.app-header{padding:1rem 2rem}.header-top{margin-bottom:0}.location-selector{margin-top:0}.logo{font-size:1.5rem}.logo img{height:50px}.header-action-btn{width:46px;height:46px;font-size:1.1rem}.categories{padding:2rem}.category-grid{flex-wrap:wrap;overflow-x:visible;gap:1.5rem;justify-content:flex-start}.category-card{min-width:120px;max-width:150px;padding:1.25rem}.category-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}.category-icon{width:60px;height:60px;font-size:1.75rem}.category-name{font-size:.85rem}.products-section{padding:0 2rem 2.5rem}.section-title{font-size:1.5rem;margin-bottom:1.25rem;padding:0}.product-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem}.product-card{flex-direction:column;height:auto}.product-image{width:100%;height:240px;min-width:auto;padding:15px;background:#fff}.product-details,.product-info{padding:1.25rem}.product-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-xl)}.product-footer{gap:.75rem}.product-footer .add-to-cart-btn{padding:.55rem 1rem;font-size:.85rem;min-height:38px}.quantity-controls{padding:.35rem .6rem;min-height:38px;gap:.4rem}.quantity-controls .qty-btn{width:30px;height:30px;min-width:30px;min-height:30px;font-size:.85rem}.quantity-controls .qty-value{font-size:.95rem;min-width:24px}}@media (min-width:1024px){.app-container{max-width:100%;margin:0;box-shadow:none;border-radius:0}.app-header{padding:1rem 3rem;display:flex;flex-direction:row;align-items:center;justify-content:space-between}.header-top{flex:1;margin-bottom:0}.location-selector{position:absolute;left:50%;transform:translateX(-50%);margin:0}.logo{font-size:1.6rem}.logo img{height:55px}.header-actions{gap:.875rem}.header-action-btn{width:48px;height:48px;font-size:1.15rem;border-radius:var(--radius)}.header-action-btn:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.15)}.categories{padding:2.5rem 3rem}.category-grid{justify-content:center;gap:2rem}.products-section{padding:0 3rem 3rem}.product-grid{grid-template-columns:repeat(4,1fr);gap:1.75rem}.product-image{height:260px;padding:15px;background:#fff}.banner-slide img,.banner-slider{min-height:550px!important;border-radius:0!important}.banner-slider{margin:0!important;overflow:hidden!important;line-height:0!important}.banner-slide img{aspect-ratio:unset!important;max-height:none!important;height:auto!important;width:100%!important;object-fit:cover!important;object-position:center!important;display:block!important;vertical-align:bottom!important}.category-card{min-width:140px;max-width:170px;padding:1.5rem;cursor:pointer}.category-card:hover{transform:translateY(-8px) scale(1.02)}.category-icon{width:70px;height:70px;font-size:2rem}.category-name{font-size:1rem}.section-title{font-size:1.6rem}.product-card{cursor:pointer;border-radius:var(--radius)}.product-card:hover .product-image img{transform:scale(1.05)}.product-image{overflow:hidden;border-radius:var(--radius) var(--radius)0 0}.product-image img{transition:transform .4s ease}.add-to-cart-btn:hover{transform:scale(1.05);box-shadow:0 4px 12px rgba(176,51,89,.4)}.product-footer{gap:.875rem}.product-footer .add-to-cart-btn{padding:.6rem 1.125rem;font-size:.875rem;min-height:40px}.quantity-controls{padding:.4rem .65rem;min-height:40px;gap:.45rem}.quantity-controls .qty-btn{width:32px;height:32px;min-width:32px;min-height:32px;font-size:.9rem}.quantity-controls .qty-value{font-size:1rem;min-width:26px}}@media (min-width:1400px){.app-header{padding:1.25rem 4rem}.logo{font-size:1.75rem}.categories{padding:3rem 4rem}.products-section{padding:0 4rem 3rem}.product-grid{grid-template-columns:repeat(5,1fr);gap:2rem}.product-image{height:240px}.section-title{font-size:1.75rem}.product-footer{gap:1rem}.product-footer .add-to-cart-btn{padding:.65rem 1.25rem;font-size:.9rem;min-height:42px}.quantity-controls{padding:.45rem .75rem;min-height:42px;gap:.5rem}.quantity-controls .qty-btn{width:34px;height:34px;min-width:34px;min-height:34px;font-size:.95rem}.quantity-controls .qty-value{font-size:1.05rem;min-width:28px}}@media (min-width:1800px){.app-header{padding:1.25rem 5rem}.categories{padding:3rem 5rem}.products-section{padding:0 5rem 3rem}.product-grid{grid-template-columns:repeat(6,1fr)}.product-image{height:260px}.product-footer{gap:1.125rem}.product-footer .add-to-cart-btn{padding:.7rem 1.375rem;font-size:.95rem;min-height:44px}.quantity-controls{padding:.5rem .8rem;min-height:44px;gap:.55rem}.quantity-controls .qty-btn{width:36px;height:36px;min-width:36px;min-height:36px;font-size:1rem}.quantity-controls .qty-value{font-size:1.1rem;min-width:30px}}@media (max-width:768px){.bottom-nav{display:flex}.app-main{padding-bottom:85px}.app-header{padding:.875rem 1rem}.header-top{margin-bottom:.75rem}.logo{font-size:1.25rem}.logo img{height:38px}.header-action-btn{width:38px;height:38px;font-size:.95rem}.location-selector{font-size:.8rem;padding:.5rem .875rem}.product-grid{grid-template-columns:repeat(2,1fr);gap:.875rem}.product-image{height:180px;padding:12px;background:#fff}.product-image img{width:100%;height:100%;object-fit:contain}.product-name{font-size:.85rem}.product-price .price{font-size:1rem}.product-footer{gap:.5rem;flex-wrap:nowrap}.product-footer .add-to-cart-btn{padding:.4rem .65rem;font-size:.75rem;min-height:32px;flex-shrink:0}.quantity-controls{padding:.25rem .4rem;min-height:32px;gap:.25rem;flex-shrink:0}.quantity-controls .qty-btn{width:24px;height:24px;min-width:24px;min-height:24px;font-size:.75rem}.quantity-controls .qty-value{font-size:.8rem;min-width:18px}.categories{padding:1rem}.category-grid{gap:.75rem}.category-card{min-width:85px;max-width:100px;padding:.75rem .5rem}.category-icon{width:40px;height:40px;font-size:1.1rem}.category-name{font-size:.6rem}.section-title{font-size:1.1rem;padding:0 .25rem}.products-section{padding:0 1rem 1.5rem}}.location-autocomplete-dropdown{position:fixed;background:var(--white);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);border:1px solid var(--border);max-height:280px;overflow:hidden;z-index:10001;display:none;min-width:280px}.location-autocomplete-dropdown.show{display:block;animation:dropdownSlideIn .2s ease-out}.autocomplete-results{max-height:280px;overflow-y:auto;-webkit-overflow-scrolling:touch}.autocomplete-results::-webkit-scrollbar{width:6px}.autocomplete-results::-webkit-scrollbar-track{background:var(--light);border-radius:3px}.autocomplete-results::-webkit-scrollbar-thumb{background:var(--gray-light);border-radius:3px}.autocomplete-results::-webkit-scrollbar-thumb:hover{background:var(--gray)}.autocomplete-item{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;cursor:pointer;border-bottom:1px solid var(--light-gray);transition:background-color .15s ease}.autocomplete-item:last-child{border-bottom:none}.autocomplete-item.active,.autocomplete-item:hover{background:var(--primary-light)}.autocomplete-item.active{background:linear-gradient(135deg,var(--primary-light) 0%,#f5d0dc 100%)}.autocomplete-item i{color:var(--primary);font-size:1rem;margin-top:.125rem;flex-shrink:0}.autocomplete-item-content{flex:1;min-width:0}.autocomplete-item-main{font-size:.9375rem;font-weight:500;color:var(--dark);line-height:1.3;word-wrap:break-word}.autocomplete-item-sub{font-size:.8125rem;color:var(--gray);margin-top:.125rem;line-height:1.3}.autocomplete-item mark{background:0 0;color:var(--primary);font-weight:600}.autocomplete-loading{display:flex;align-items:center;justify-content:center;gap:.75rem;padding:1.5rem 1rem;color:var(--gray);font-size:.875rem}.autocomplete-loading i{color:var(--primary);animation:spin 1s linear infinite}.autocomplete-no-results{padding:1.5rem 1rem;text-align:center;color:var(--gray)}.autocomplete-no-results i{font-size:2rem;color:var(--gray-light);margin-bottom:.5rem;display:block}.autocomplete-no-results .no-results-text{font-size:.875rem;font-weight:500;color:var(--dark);margin-bottom:.25rem}.autocomplete-no-results .no-results-hint{font-size:.8125rem;color:var(--gray)}.autocomplete-error{padding:1.25rem 1rem;text-align:center;color:var(--error);font-size:.875rem}.autocomplete-error i{font-size:1.5rem;margin-bottom:.5rem;display:block}@media (max-width:480px){.location-autocomplete-dropdown{left:1rem!important;right:1rem!important;width:auto!important;min-width:auto}.autocomplete-item{padding:.75rem;gap:.625rem}.autocomplete-item-main{font-size:.875rem}.autocomplete-item-sub{font-size:.75rem}}#product-detail-modal{padding:0;background:rgba(0,0,0,.6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);align-items:flex-end;z-index:1000}#product-detail-modal.active{display:flex!important}#product-detail-modal .modal-content{max-width:100%;width:100%;max-height:85vh;border-radius:24px 24px 0 0;overflow:hidden;box-shadow:0-10px 40px rgba(0,0,0,.2);position:relative;animation:slideUpModal .35s cubic-bezier(.32,.72,0,1)}#product-detail-modal .modal-body{padding:0;overflow-y:auto;max-height:85vh;overscroll-behavior:contain}#product-detail-modal .modal-content::before{content:"";position:absolute;top:8px;left:50%;transform:translateX(-50%);width:40px;height:4px;background:rgba(0,0,0,.2);border-radius:2px;z-index:20}#product-detail-modal .close-modal{position:absolute;top:16px;right:16px;z-index:1000;background:rgba(255,255,255,.95);color:var(--dark);width:44px;height:44px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;border:2px solid rgba(0,0,0,.15);cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px rgba(0,0,0,.25);-webkit-tap-highlight-color:transparent}#product-detail-modal .close-modal:hover{background:var(--white);transform:scale(1.1);box-shadow:0 6px 20px rgba(0,0,0,.3);border-color:var(--primary)}#product-detail-modal .close-modal:active{transform:scale(.95)}.product-detail-image{width:100%;height:320px;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative;cursor:pointer;transition:transform .3s ease}.product-detail-image::after{content:"";position:absolute;bottom:0;left:0;right:0;height:80px;background:linear-gradient(to top,#fff 0,rgba(255,255,255,0) 100%);pointer-events:none}.image-zoom-hint{position:absolute;bottom:16px;right:16px;background:rgba(0,0,0,.6);color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;opacity:.8;transition:all .2s ease;z-index:5}.product-detail-image:hover .image-zoom-hint{opacity:1;transform:scale(1.1)}.product-detail-info{padding:8px 20px 24px;background:var(--white)}.product-detail-info h2{font-size:1.4rem;font-weight:700;color:var(--dark);margin-bottom:10px;line-height:1.4;letter-spacing:-.02em}.product-detail-info .product-rating{display:flex;align-items:center;gap:8px;margin-bottom:12px}.product-detail-info .product-rating .star-rating{display:flex;gap:2px}.product-detail-info .product-rating .star-rating i{font-size:.9rem;color:#f59e0b}.product-detail-info .rating-count{font-size:.85rem;color:var(--gray)}.product-detail-info .product-price{display:flex;align-items:baseline;gap:4px;margin:12px 0 16px}.product-detail-info .product-price .price-amount{font-size:1.75rem;font-weight:800;color:var(--primary);letter-spacing:-.02em}.product-detail-info .product-price .price-unit{font-size:.95rem;color:var(--gray);font-weight:500}.product-detail-info .product-description{font-size:.9rem;color:#666;line-height:1.6;margin-bottom:20px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.quantity-selector,.quantity-selector .quantity-btn{display:flex;align-items:center;justify-content:center}.quantity-selector{gap:0;background:#f5f5f5;border-radius:50px;padding:4px;width:fit-content;margin:16px auto 20px}.quantity-selector .quantity-btn{width:48px;height:48px;border:0;background:var(--white);color:var(--primary);font-size:1.1rem;cursor:pointer;transition:all .2s ease;border-radius:50%;box-shadow:0 2px 8px rgba(0,0,0,.08);-webkit-tap-highlight-color:transparent}.quantity-selector .quantity-btn:hover{background:var(--primary);color:var(--white);transform:scale(1.05)}.quantity-selector .quantity-btn:active{transform:scale(.95)}.quantity-selector input[type=number]{width:56px;height:44px;border:0;background:0 0;text-align:center;font-size:1.2rem;font-weight:700;color:var(--dark);font-family:inherit;-moz-appearance:textfield}.quantity-selector input[type=number]::-webkit-inner-spin-button,.quantity-selector input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.product-detail-info .btn-block{width:100%;padding:18px 24px;font-size:1.05rem;font-weight:600;border-radius:14px;display:flex;align-items:center;justify-content:center;gap:10px;background:var(--primary);color:var(--white);border:0;cursor:pointer;transition:all .25s ease;box-shadow:0 4px 20px rgba(176,51,89,.25);text-transform:uppercase;letter-spacing:.5px;-webkit-tap-highlight-color:transparent;min-height:56px}.product-detail-info .btn-block:hover{background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 6px 25px rgba(176,51,89,.35)}.product-detail-info .btn-block:active{transform:translateY(0) scale(.98)}.product-detail-info .btn-block i{font-size:1.1rem}@media (max-width:360px){.product-detail-image{height:240px}.product-detail-info{padding:0 16px 20px}.product-detail-info h2{font-size:1.2rem}.product-detail-info .product-price .price-amount{font-size:1.5rem}.quantity-selector .quantity-btn{width:40px;height:40px}.quantity-selector input[type=number]{width:48px;height:40px;font-size:1.1rem}.product-detail-info .btn-block{padding:14px 20px;font-size:.95rem}}@media (min-width:768px){#product-detail-modal{align-items:center;padding:20px}#product-detail-modal .modal-content{max-width:420px;border-radius:20px;animation:fadeScaleIn .3s ease}@keyframes fadeScaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}#product-detail-modal .modal-content::before{display:none}.product-detail-image{height:300px}.product-detail-info{padding:4px 24px 28px}.product-detail-info h2{font-size:1.5rem}.product-detail-info .product-price .price-amount{font-size:2rem}}@media (min-width:1024px){#product-detail-modal .modal-content{max-width:480px}.product-detail-image{height:340px}.quantity-selector .quantity-btn{width:48px;height:48px}.quantity-selector input[type=number]{width:64px;height:48px;font-size:1.3rem}}.reviews-section{margin-top:28px;padding:24px 20px 20px;background:#f9fafb;border-top:2px solid #e5e7eb;margin-left:-20px;margin-right:-20px}.reviews-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.reviews-header h3{font-size:1.15rem;font-weight:700;color:var(--dark);display:flex;align-items:center;gap:8px}.reviews-header h3 i{color:#f59e0b}.btn-add-review{padding:10px 18px;font-size:.9rem;font-weight:600;background:var(--primary);color:#fff;border:0;border-radius:24px;cursor:pointer;display:flex;align-items:center;gap:6px;transition:all .2s ease;-webkit-tap-highlight-color:transparent;min-height:40px}.btn-add-review:hover{background:var(--primary-dark);transform:scale(1.05)}.product-rating{cursor:pointer}.rating-arrow{font-size:.7rem;color:var(--gray);margin-left:4px;transition:transform .2s ease}.product-rating:hover .rating-arrow{transform:translateX(3px)}.rating-summary{display:flex;gap:20px;background:#f8f9fa;border-radius:12px;padding:16px;margin-bottom:20px}.rating-big{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:100px}.rating-number{font-size:2.5rem;font-weight:800;color:var(--dark);line-height:1}.rating-big .rating-stars{margin:6px 0}.rating-big .rating-stars i{font-size:.9rem}.rating-total{font-size:.75rem;color:var(--gray)}.rating-bars{flex:1;display:flex;flex-direction:column;gap:6px}.rating-bar-row{display:flex;align-items:center;gap:8px;font-size:.75rem;color:var(--gray)}.rating-bar-row>span:first-child{width:12px;text-align:center;font-weight:600}.rating-bar{flex:1;height:6px;background:#e0e0e0;border-radius:3px;overflow:hidden}.rating-bar-fill{height:100%;background:linear-gradient(90deg,#f59e0b,#fbbf24);border-radius:3px}.bar-count{width:32px;text-align:right;font-size:.7rem}.reviews-list{display:flex;flex-direction:column;gap:16px}.loading-reviews,.no-reviews{text-align:center;padding:30px 20px;color:#666;font-size:14px}.no-reviews{background:#f9f9f9;border-radius:12px;color:#888}.loading-reviews i{font-size:24px;color:var(--primary);display:block;margin-bottom:10px}.review-item{background:#fff;border:1px solid #eee;border-radius:12px;padding:14px;transition:all .2s ease}.review-item:hover{border-color:var(--primary-light);box-shadow:0 2px 8px rgba(0,0,0,.05)}.review-item.new-review{animation:highlightReview 2s ease}.review-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:10px}.reviewer-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem;flex-shrink:0}.reviewer-info{flex:1}.reviewer-name{font-weight:600;color:var(--dark);font-size:.95rem}.review-meta{display:flex;align-items:center;gap:10px;margin-top:4px}.review-stars i{font-size:.75rem;color:#f59e0b}.review-date{font-size:.75rem;color:var(--gray)}.review-comment{font-size:.9rem;color:#444;line-height:1.5;margin:0}.review-actions{margin-top:12px;display:flex;gap:12px}.btn-helpful,.btn-view-all-reviews{cursor:pointer;display:flex;align-items:center;transition:all .2s ease}.btn-helpful{padding:6px 12px;font-size:.8rem;background:#f5f5f5;color:var(--gray);border:0;border-radius:16px;gap:6px}.btn-helpful.marked,.btn-helpful:hover{background:#fce8ef;color:var(--primary)}.btn-helpful.marked i{color:var(--primary)}.btn-view-all-reviews{width:100%;padding:12px;margin-top:16px;font-size:.9rem;font-weight:600;background:0 0;color:var(--primary);border:2px solid var(--primary);border-radius:10px;justify-content:center;gap:8px}.btn-view-all-reviews:hover{background:var(--primary);color:#fff}.btn-view-all-reviews i{transition:transform .2s ease}.btn-view-all-reviews:hover i{transform:translateX(4px)}.add-review-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);backdrop-filter:blur(8px);z-index:10000;display:flex;align-items:flex-end;justify-content:center;opacity:0;visibility:hidden;transition:all .3s ease}.add-review-modal.active{opacity:1;visibility:visible}.add-review-content{background:#fff;width:100%;max-width:500px;max-height:90vh;border-radius:20px 20px 0 0;overflow:hidden;transform:translateY(100%);transition:transform .35s cubic-bezier(.32,.72,0,1)}.add-review-modal.active .add-review-content{transform:translateY(0)}.add-review-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #eee}.add-review-header h3{font-size:1.1rem;font-weight:700;color:var(--dark);margin:0}.close-review-modal{width:36px;height:36px;border:0;background:#f5f5f5;color:var(--gray);border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:all .2s ease}.close-review-modal:hover{background:#eee;color:var(--dark)}.add-review-body{padding:20px;overflow-y:auto;max-height:calc(90vh - 70px)}.review-product-name{font-size:.9rem;color:var(--gray);margin-bottom:20px;padding:12px;background:#f8f9fa;border-radius:8px}.review-product-name strong,.timeline-content p strong{color:var(--dark)}.rating-input{margin-bottom:20px}.rating-input label,.review-input-group label{display:block;font-size:.9rem;font-weight:600;color:var(--dark);margin-bottom:10px}.star-rating-input{display:flex;gap:8px}.star-rating-input i{font-size:2rem;color:#ddd;cursor:pointer;transition:all .15s ease}.star-rating-input i.fas{color:#f59e0b}.star-rating-input i.hover{color:#fbbf24;transform:scale(1.1)}.review-input-group{margin-bottom:16px}.review-input-group label{margin-bottom:8px}.review-input-group input,.review-input-group textarea{width:100%;padding:12px 14px;font-size:.95rem;border:2px solid #e0e0e0;border-radius:10px;outline:0;transition:border-color .2s ease;font-family:inherit;resize:none}.review-input-group input:focus,.review-input-group textarea:focus{border-color:var(--primary)}.review-input-group textarea{min-height:100px}@media (max-width:500px){.rating-summary{flex-direction:column;gap:16px}.rating-big{flex-direction:row;gap:12px;min-width:auto}.rating-number{font-size:2rem}.review-item{padding:12px}.reviewer-avatar{width:36px;height:36px;font-size:.9rem}.btn-add-review{padding:6px 12px;font-size:.8rem}.star-rating-input i{font-size:1.75rem}}@media (min-width:768px){.add-review-modal{align-items:center}.add-review-content{border-radius:20px;max-height:85vh}}.login-prompt{background:linear-gradient(135deg,#fdf0f4 0,#f8e0e8 100%);border-radius:16px;padding:24px;text-align:center;margin:16px;border:2px dashed var(--primary)}.login-prompt-icon{width:70px;height:70px;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 16px;box-shadow:0 4px 15px rgba(22,101,52,.15)}.login-prompt-icon i{font-size:2.5rem;color:var(--primary)}.login-prompt h3{font-size:1.25rem;font-weight:700;color:var(--dark);margin:0 0 8px}.login-prompt p{font-size:.9rem;color:var(--gray);margin:0 0 16px;line-height:1.5}.login-prompt .btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;font-size:.95rem}.login-btn-style{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%)!important;color:#fff!important}.login-btn-style:hover{background:linear-gradient(135deg,var(--primary-dark) 0%,#7a1f3d 100%)!important}@media (min-width:768px){body{background:var(--white);padding:0}.app-container{max-width:100%;margin:0;box-shadow:none;overflow:visible}.app-container,.bottom-nav,.header{border-radius:0}.category-scroll{padding:0 2rem}.product-grid,.products-grid{grid-template-columns:repeat(3,1fr);gap:1.25rem;padding:1.25rem 2rem}}@media (min-width:1024px){body{padding:0;background:var(--white)}.app-container{max-width:100%;margin:0;border-radius:0;box-shadow:none}.product-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem;padding:1.5rem 3rem}.header{padding:1.75rem 2.5rem}.header-title{font-size:1.75rem}.location-text{font-size:1rem}.header-icons{gap:1.25rem}.icon-btn{width:48px;height:48px;font-size:1.25rem}.search-container{padding:1.5rem 2.5rem}.search-bar{height:56px;font-size:1.0625rem}.banner-slide{height:280px;border-radius:20px}.category-item{padding:1rem 1.5rem;font-size:1rem}.products-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;padding:1.5rem 2.5rem}.product-card{padding:1.25rem}.product-image{height:200px}.product-name{font-size:1.125rem}.product-price{font-size:1.25rem}.add-to-cart-btn{padding:.875rem;font-size:1rem}.bottom-nav{display:flex;position:static;border-radius:0;padding:0;background:0 0;box-shadow:none;justify-content:center;gap:3rem;margin-top:2rem}.nav-item{flex-direction:row;gap:.75rem;padding:1rem 2rem;background:#fff;border-radius:50px;box-shadow:0 2px 8px rgba(0,0,0,.08);transition:all .3s ease}.nav-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.12)}.nav-item.active{background:var(--primary);color:#fff}.nav-label{display:block;font-size:1rem;font-weight:500}}@media (min-width:1280px){.app-container{max-width:100%}.product-grid,.products-grid{grid-template-columns:repeat(5,1fr);gap:2rem;padding:2rem 3rem}.section-header{padding:2rem 3rem 1rem}.category-scroll{padding:0 3rem}.search-container{padding:2rem 3rem}}@media (min-width:1536px){body{padding:0;background:var(--white)}.app-container{max-width:100%;margin:0;box-shadow:none;border-radius:0}.product-grid,.products-grid{grid-template-columns:repeat(5,1fr);gap:2rem;padding:2.5rem 4rem}.header,.search-container{padding:2rem 4rem}.section-header{padding:2rem 4rem 1rem}.category-scroll{padding:0 4rem}}.our-story-section{padding:2rem 1.25rem 3rem;margin-bottom:80px;background:linear-gradient(180deg,var(--white) 0%,var(--primary-light) 100%);display:none}.our-story-section.show{display:block}.our-story-section .section-title{display:flex;align-items:center;justify-content:center;gap:.5rem;color:var(--primary);margin-bottom:1.5rem}.our-story-section .section-title i,.story-lead strong{color:var(--primary)}.story-content{background:var(--white);border-radius:var(--radius-lg);padding:1.5rem;box-shadow:var(--shadow-md);border:1px solid var(--primary-light)}.story-intro{text-align:center;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px dashed var(--primary-light)}.founders-badge{display:inline-flex;align-items:center;gap:.5rem;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:var(--white);padding:.5rem 1rem;border-radius:var(--radius-full);font-size:.85rem;font-weight:500;margin-bottom:1rem}.founders-badge i,.story-lead{font-size:1rem}.story-lead{line-height:1.7;color:var(--dark)}.story-timeline{position:relative;padding-left:2rem;margin-bottom:2rem}.story-timeline::before{content:"";position:absolute;left:.75rem;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--primary) 0%,var(--primary-light) 100%);border-radius:2px}.timeline-item{position:relative;padding-bottom:1.5rem;padding-left:1.5rem}.timeline-item:last-child{padding-bottom:0}.timeline-icon{position:absolute;left:-1.25rem;top:0;width:2.5rem;height:2.5rem;background:var(--white);border:3px solid var(--primary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--primary);font-size:.9rem;z-index:1;box-shadow:var(--shadow-sm)}.badge-item span,.timeline-content h4{font-weight:600;color:var(--primary-dark)}.timeline-content h4{font-size:1rem;margin-bottom:.5rem}.timeline-content p{font-size:.9rem;line-height:1.6;color:var(--gray)}.story-footer{text-align:center;padding-top:1.5rem;border-top:2px dashed var(--primary-light)}.quality-badges{display:flex;justify-content:center;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.badge-item{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.75rem 1rem;background:var(--primary-light);border-radius:var(--radius);min-width:80px}.badge-item i{font-size:1.25rem;color:var(--primary)}.badge-item span{font-size:.75rem}.story-closing{font-size:.95rem;line-height:1.7;color:var(--gray);font-style:italic;padding:1rem;background:var(--light);border-radius:var(--radius);border-left:4px solid var(--primary)}@media (min-width:768px){.our-story-section{padding:3rem 2rem 4rem}.story-content{padding:2.5rem;max-width:900px;margin:0 auto}.story-lead,.timeline-content h4{font-size:1.1rem}.story-timeline{padding-left:3rem}.timeline-icon{width:3rem;height:3rem;left:-1.5rem;font-size:1.1rem}.timeline-content p{font-size:.95rem}.quality-badges{gap:1.5rem}.badge-item{padding:1rem 1.5rem;min-width:100px}.badge-item i{font-size:1.5rem}.badge-item span{font-size:.85rem}}@media (min-width:1024px){.our-story-section{padding:4rem 3rem 5rem}.story-content{padding:3rem}.founders-badge{font-size:.95rem;padding:.625rem 1.25rem}.story-closing{font-size:1rem;padding:1.25rem}}@media (max-width:480px){.products-section{padding:0 .75rem 1.5rem}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;width:100%}.product-card{display:flex;flex-direction:column;width:100%;min-height:280px;border-radius:12px;overflow:hidden;background:var(--white);border:1px solid #eee;box-shadow:0 2px 8px rgba(0,0,0,.06);transition:transform .2s ease,box-shadow .2s ease}.product-image{width:100%;height:120px;min-height:120px;padding:10px;background:#f9f9f9;display:flex;align-items:center;justify-content:center}.product-image img{width:100%;height:100%;object-fit:contain}.product-details,.product-info{padding:10px;flex:1;display:flex;flex-direction:column}.product-name{font-size:.85rem;font-weight:600;line-height:1.3;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:2.2em}.product-rating,.product-unit{margin-bottom:4px;font-size:.7rem}.product-unit{margin-bottom:6px;display:none}.product-footer{margin-top:auto;display:flex;flex-direction:column;gap:8px;padding-top:6px}.product-price{display:flex;align-items:baseline;gap:4px}.product-price .price{font-size:1rem;font-weight:700}.product-price .unit{font-size:.75rem}.add-to-cart-btn{width:100%;padding:10px 12px;font-size:.8rem;min-height:40px;border-radius:8px}.quantity-controls{width:100%;display:flex;align-items:center;justify-content:center;height:40px;min-width:unset;padding:4px 12px;gap:10px;border-radius:8px}.quantity-controls .qty-btn{width:30px;height:30px;min-width:30px;flex-shrink:0}.quantity-controls .qty-value{min-width:28px;font-size:1rem}}@media (min-width:375px) and (max-width:480px){.product-grid{gap:.875rem}.product-card{min-height:290px}.product-image{height:130px;min-height:130px}.product-details,.product-info{padding:12px}}@media (min-width:481px) and (max-width:639px){.products-section{padding:0 1rem 1.5rem}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.product-card{min-height:320px}.product-image{height:150px;min-height:150px;padding:12px}.product-details,.product-info{padding:14px}.product-name{font-size:.9rem}.product-unit{display:block}.product-footer{flex-direction:row;justify-content:space-between;align-items:center}.add-to-cart-btn{width:auto;min-width:80px;padding:10px 16px}.quantity-controls{width:auto;min-width:100px}}@media (min-width:640px) and (max-width:767px){.products-section{padding:0 1.25rem 2rem}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.product-card{min-height:310px;border-radius:12px}.product-image{height:140px;min-height:140px;padding:12px;background:#f8f8f8}.product-details,.product-info{padding:12px}.product-name{font-size:.88rem;margin-bottom:5px}.product-rating,.product-unit{font-size:.7rem;margin-bottom:5px}.product-unit{margin-bottom:6px}.product-footer{flex-direction:row;justify-content:space-between;align-items:center;gap:8px}.product-price .price{font-size:.95rem}.product-price .unit{font-size:.72rem}.add-to-cart-btn{padding:8px 14px;font-size:.78rem;min-width:70px;height:36px}.quantity-controls{height:36px;min-width:90px;padding:4px 8px;gap:5px}.quantity-controls .qty-btn{width:26px;height:26px;min-width:26px}.quantity-controls .qty-value{min-width:20px;font-size:.85rem}}@media (min-width:768px) and (max-width:1023px){.products-section{padding:0 1.5rem 2rem}.product-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:1.25rem!important}.product-card{display:flex!important;flex-direction:column!important;min-height:340px!important;border-radius:12px!important;background:var(--white);border:1px solid #e8e8e8;box-shadow:0 2px 10px rgba(0,0,0,.06);transition:transform .25s ease,box-shadow .25s ease}.product-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(0,0,0,.1)}.product-image{height:160px!important;min-height:160px!important;padding:15px!important;background:#f8f8f8!important}.product-image img{object-fit:contain!important}.product-details,.product-info{padding:14px!important;flex:1;display:flex;flex-direction:column}.product-name{font-size:.95rem!important;line-height:1.35!important;margin-bottom:6px!important}.product-rating,.product-unit{font-size:.75rem!important;margin-bottom:6px!important}.product-unit{margin-bottom:8px!important}.product-footer{margin-top:auto!important;flex-direction:row!important;justify-content:space-between!important;align-items:center!important;gap:10px!important;flex-wrap:nowrap!important}.product-price{flex:1;min-width:0}.product-price .price{font-size:1.05rem!important}.product-price .unit{font-size:.8rem!important}.add-to-cart-btn,.quantity-controls{height:40px!important;flex-shrink:0!important}.add-to-cart-btn{padding:10px 18px!important;font-size:.85rem!important;min-width:80px!important}.quantity-controls{display:flex!important;align-items:center!important;justify-content:center!important;min-width:105px!important;padding:4px 10px!important;gap:6px!important}.quantity-controls .qty-btn{width:28px!important;height:28px!important;min-width:28px!important;flex-shrink:0!important}.quantity-controls .qty-value{min-width:24px!important;font-size:.9rem!important;text-align:center!important}}@media (min-width:1024px) and (max-width:1279px){.products-section{padding:0 2rem 2.5rem}.product-grid{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:1.25rem!important}.product-card{display:flex!important;flex-direction:column!important;min-height:380px!important;border-radius:12px!important;background:var(--white);border:1px solid #e8e8e8;box-shadow:0 2px 10px rgba(0,0,0,.06);transition:transform .25s ease,box-shadow .25s ease}.product-card:hover{transform:translateY(-5px);box-shadow:0 10px 28px rgba(0,0,0,.1)}.product-image{height:160px!important;min-height:160px!important;padding:14px!important;background:#f8f8f8!important}.product-image img{object-fit:contain!important}.product-details,.product-info{padding:14px!important;flex:1;display:flex;flex-direction:column}.product-name{font-size:.92rem!important;line-height:1.35!important;margin-bottom:5px!important}.product-rating,.product-unit{font-size:.73rem!important;margin-bottom:5px!important}.product-unit{margin-bottom:8px!important}.product-footer{margin-top:auto!important;display:flex!important;flex-direction:column!important;gap:10px!important}.product-price{display:flex!important;flex-direction:row!important;align-items:baseline!important;gap:4px!important}.product-price .price{font-size:1.1rem!important;font-weight:700!important}.product-price .unit{font-size:.8rem!important;color:var(--gray)!important}.add-to-cart-btn,.quantity-controls{width:100%!important;height:40px!important;flex-shrink:0!important;border-radius:8px!important}.add-to-cart-btn{padding:10px 16px!important;font-size:.85rem!important}.quantity-controls{display:flex!important;align-items:center!important;justify-content:center!important;padding:4px 12px!important;gap:10px!important}.quantity-controls .qty-btn{width:30px!important;height:30px!important;min-width:30px!important;flex-shrink:0!important}.quantity-controls .qty-value{min-width:28px!important;font-size:1rem!important;text-align:center!important}}@media (min-width:1280px) and (max-width:1535px){.products-section{padding:0 2.5rem 3rem}.product-grid{display:grid!important;grid-template-columns:repeat(5,1fr)!important;gap:1.25rem!important}.product-card{display:flex!important;flex-direction:column!important;min-height:370px!important;border-radius:12px!important;background:var(--white);border:1px solid #e8e8e8;box-shadow:0 2px 10px rgba(0,0,0,.06);transition:transform .25s ease,box-shadow .25s ease}.product-card:hover{transform:translateY(-5px);box-shadow:0 10px 28px rgba(0,0,0,.1)}.product-image{height:150px!important;min-height:150px!important;padding:12px!important;background:#f8f8f8!important}.product-image img{object-fit:contain!important}.product-details,.product-info{padding:12px!important;flex:1;display:flex;flex-direction:column}.product-name{font-size:.88rem!important;line-height:1.3!important;margin-bottom:5px!important}.product-rating,.product-unit{font-size:.7rem!important;margin-bottom:5px!important}.product-unit{margin-bottom:6px!important}.product-footer{margin-top:auto!important;display:flex!important;flex-direction:column!important;gap:10px!important}.product-price{display:flex!important;flex-direction:row!important;align-items:baseline!important;gap:4px!important}.product-price .price{font-size:1.05rem!important;font-weight:700!important}.product-price .unit{font-size:.78rem!important;color:var(--gray)!important}.add-to-cart-btn,.quantity-controls{width:100%!important;height:38px!important;flex-shrink:0!important;border-radius:8px!important}.add-to-cart-btn{padding:9px 14px!important;font-size:.82rem!important}.quantity-controls{display:flex!important;align-items:center!important;justify-content:center!important;padding:4px 10px!important;gap:8px!important}.quantity-controls .qty-btn{width:28px!important;height:28px!important;min-width:28px!important;flex-shrink:0!important}.quantity-controls .qty-value{min-width:24px!important;font-size:.95rem!important;text-align:center!important}}@media (min-width:1536px) and (max-width:1919px){.products-section{padding:0 3rem 3rem}.product-grid{display:grid!important;grid-template-columns:repeat(6,1fr)!important;gap:1.5rem!important}.product-card{display:flex!important;flex-direction:column!important;min-height:380px!important;border-radius:14px!important;background:var(--white);border:1px solid #e8e8e8;box-shadow:0 2px 12px rgba(0,0,0,.06);transition:transform .25s ease,box-shadow .25s ease}.product-card:hover{transform:translateY(-6px);box-shadow:0 12px 32px rgba(0,0,0,.1)}.product-image{height:160px!important;min-height:160px!important;padding:14px!important;background:#f8f8f8!important}.product-image img{object-fit:contain!important}.product-details,.product-info{padding:14px!important;flex:1;display:flex;flex-direction:column}.product-name{font-size:.9rem!important;line-height:1.35!important;margin-bottom:5px!important}.product-rating,.product-unit{font-size:.72rem!important;margin-bottom:5px!important}.product-unit{margin-bottom:6px!important}.product-footer{margin-top:auto!important;display:flex!important;flex-direction:column!important;gap:10px!important}.product-price{display:flex!important;flex-direction:row!important;align-items:baseline!important;gap:4px!important}.product-price .price{font-size:1.1rem!important;font-weight:700!important}.product-price .unit{font-size:.8rem!important;color:var(--gray)!important}.add-to-cart-btn,.quantity-controls{width:100%!important;height:40px!important;flex-shrink:0!important;border-radius:8px!important}.add-to-cart-btn{padding:10px 16px!important;font-size:.85rem!important}.quantity-controls{display:flex!important;align-items:center!important;justify-content:center!important;padding:4px 12px!important;gap:10px!important}.quantity-controls .qty-btn{width:30px!important;height:30px!important;min-width:30px!important;flex-shrink:0!important}.quantity-controls .qty-value{min-width:28px!important;font-size:1rem!important;text-align:center!important}}@media (min-width:1920px){.products-section{padding:0 4rem 3.5rem;max-width:2200px;margin:0 auto}.product-grid{display:grid!important;grid-template-columns:repeat(6,1fr)!important;gap:1.75rem!important}.product-card{display:flex!important;flex-direction:column!important;min-height:400px!important;border-radius:14px!important;background:var(--white);border:1px solid #e8e8e8;box-shadow:0 2px 12px rgba(0,0,0,.06);transition:transform .25s ease,box-shadow .25s ease}.product-card:hover{transform:translateY(-6px);box-shadow:0 14px 36px rgba(0,0,0,.1)}.product-image{height:180px!important;min-height:180px!important;padding:16px!important;background:#f8f8f8!important}.product-image img{object-fit:contain!important}.product-details,.product-info{padding:16px!important;flex:1;display:flex;flex-direction:column}.product-name{font-size:.95rem!important;line-height:1.4!important;margin-bottom:6px!important}.product-rating,.product-unit{font-size:.75rem!important;margin-bottom:6px!important}.product-unit{margin-bottom:8px!important}.product-footer{margin-top:auto!important;display:flex!important;flex-direction:column!important;gap:12px!important}.product-price{display:flex!important;flex-direction:row!important;align-items:baseline!important;gap:5px!important}.product-price .price{font-size:1.15rem!important;font-weight:700!important}.product-price .unit{font-size:.85rem!important;color:var(--gray)!important}.add-to-cart-btn,.quantity-controls{width:100%!important;height:44px!important;flex-shrink:0!important;border-radius:10px!important}.add-to-cart-btn{padding:12px 18px!important;font-size:.9rem!important}.quantity-controls{display:flex!important;align-items:center!important;justify-content:center!important;padding:4px 14px!important;gap:12px!important}.quantity-controls .qty-btn{width:32px!important;height:32px!important;min-width:32px!important;flex-shrink:0!important}.quantity-controls .qty-value{min-width:30px!important;font-size:1.1rem!important;text-align:center!important}}@media (min-width:769px) and (max-width:1023px){.banner-slider{width:100%;margin:0}.banner-slide img{width:100%;height:auto;min-height:300px;max-height:350px;aspect-ratio:16/6;object-fit:cover}}@media (min-width:1024px){.banner-slider{width:100%;margin:0}.banner-slide img{width:100%;height:auto;min-height:unset;max-height:unset;aspect-ratio:unset;object-fit:fill}.banner-dots{bottom:24px;padding:10px 18px}.banner-dot{width:10px;height:10px}.banner-dot.active{width:28px}}#location-btn,.scroll-to-top{cursor:pointer;-webkit-tap-highlight-color:transparent;display:flex;align-items:center;justify-content:center}.scroll-to-top{position:fixed;bottom:80px;right:20px;width:50px;height:50px;background:linear-gradient(135deg,var(--primary),#d91c5c);color:#fff;border:0;border-radius:50%;font-size:1.5rem;opacity:0;visibility:hidden;transform:translateY(20px);transition:all .3s ease;box-shadow:0 4px 15px rgba(176,51,89,.4);z-index:999}.scroll-to-top.show{opacity:1;visibility:visible;transform:translateY(0)}.scroll-to-top:hover{transform:translateY(-3px);box-shadow:0 6px 20px rgba(176,51,89,.6)}.scroll-to-top:active{transform:translateY(-1px)}.scroll-to-top i{animation:bounceUpDown 2s infinite}@media (max-width:767px){.scroll-to-top{width:45px;height:45px;bottom:70px;right:15px;font-size:1.3rem}}#location-btn{position:relative;touch-action:manipulation;width:42px;height:42px}#location-btn i{color:var(--white)!important;font-size:1rem;animation:pulsate 2s infinite;pointer-events:none}#location-btn:active i,#location-btn:hover i{animation:none;transform:scale(1.15)}@media (max-width:768px){#location-btn{width:38px;height:38px}#location-btn i{font-size:.9rem}}@media (min-width:769px) and (max-width:1024px){#location-btn{width:46px;height:46px}#location-btn i{font-size:1.1rem}}@media (min-width:1025px){#location-btn{width:48px;height:48px}#location-btn i{font-size:1.15rem}}