.product-card{background:var(--bg-color);transition:var(--transition);border-radius:10px;overflow:hidden}.product-card:hover{box-shadow:var(--shadow)}.product-image{background:var(--bg-light);aspect-ratio:1;position:relative;overflow:hidden}.product-badge{background:var(--primary-color);color:var(--text-white);text-transform:uppercase;letter-spacing:1px;border-radius:3px;padding:5px 12px;font-size:11px;font-weight:600;position:absolute;top:15px;left:15px}.product-actions{opacity:0;transition:var(--transition);gap:10px;display:flex;position:absolute;bottom:15px;transform:translate(-50%)translateY(20px)}.product-card:hover .product-actions{opacity:1;transform:translate(-50%)translateY(0)}.product-action-btn{background:var(--bg-color);width:45px;height:45px;color:var(--text-color);transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;font-size:16px;display:flex;box-shadow:0 2px 10px #0000001a}.product-action-btn:hover{background:var(--primary-color);color:var(--text-white)}.product-info{text-align:center;padding:20px}.product-category{color:var(--text-light);text-transform:uppercase;letter-spacing:1px;margin-bottom:5px;font-size:12px}.product-name{font-family:var(--font-heading);color:var(--text-color);margin-bottom:10px;font-size:18px}.product-name a:hover{color:var(--primary-color)}.product-price{color:var(--primary-color);font-size:18px;font-weight:600}.product-price .old-price{color:var(--text-light);margin-right:8px;font-weight:400;text-decoration:line-through}.cart-overlay{z-index:998;opacity:0;visibility:hidden;width:100%;height:100%;transition:var(--transition);background:#00000080;position:fixed;top:0;left:0}.cart-overlay.active{opacity:1;visibility:visible}.cart-sidebar{background:var(--bg-color);z-index:999;width:400px;max-width:100%;height:100%;transition:var(--transition);flex-direction:column;display:flex;position:fixed;top:0;right:-420px;box-shadow:-5px 0 20px #0000001a}.cart-sidebar.active{right:0}.cart-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 25px;display:flex}.cart-header h3{font-family:var(--font-heading);font-size:22px;font-weight:500}.cart-close{width:40px;height:40px;transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;font-size:18px;display:flex}.cart-close:hover{background:var(--bg-light);color:var(--primary-color)}.cart-items{flex:1;padding:20px 25px;overflow-y:auto}.cart-empty{text-align:center;color:var(--text-light);padding:60px 20px}.cart-empty i{opacity:.3;margin-bottom:20px;font-size:60px}.cart-empty p{font-size:16px}.cart-item{border-bottom:1px solid var(--border-color);gap:15px;padding:15px 0;display:flex}.cart-item:last-child{border-bottom:none}.cart-item-image{background:var(--bg-light);border-radius:8px;flex-shrink:0;width:80px;height:80px;overflow:hidden}.cart-item-image img{object-fit:cover;width:100%;height:100%}.cart-item-details{flex-direction:column;flex:1;justify-content:center;display:flex}.cart-item-name{font-family:var(--font-heading);margin-bottom:5px;font-size:16px}.cart-item-price{color:var(--primary-color);margin-bottom:10px;font-size:14px;font-weight:600}.cart-item-quantity{align-items:center;gap:10px;display:flex}.qty-btn{border:1px solid var(--border-color);width:28px;height:28px;transition:var(--transition);border-radius:4px;justify-content:center;align-items:center;font-size:14px;display:flex}.qty-btn:hover{background:var(--primary-color);border-color:var(--primary-color);color:var(--text-white)}.qty-input{text-align:center;background:0 0;border:none;width:40px;font-family:inherit;font-size:14px}.cart-item-remove{color:var(--text-light);transition:var(--transition);align-self:flex-start;padding:5px}.cart-item-remove:hover{color:#e74c3c}.cart-footer{border-top:1px solid var(--border-color);background:var(--bg-cream);padding:20px 25px}.cart-total{justify-content:space-between;align-items:center;margin-bottom:20px;font-size:18px;font-weight:600;display:flex}.cart-total span:last-child{color:var(--primary-color);font-size:22px}.cart-footer .btn{margin-bottom:10px}.cart-footer .btn:last-child{margin-bottom:0}.banner{background:linear-gradient(135deg, var(--bg-light) 0%, var(--bg-cream) 100%);text-align:center;padding:100px 0}.banner-content{max-width:600px;margin:0 auto}.banner-tag{background:var(--primary-color);color:var(--text-white);letter-spacing:2px;text-transform:uppercase;border-radius:30px;margin-bottom:20px;padding:8px 20px;font-size:12px;font-weight:600;display:inline-block}.banner-title{font-family:var(--font-heading);color:var(--text-color);margin-bottom:15px;font-size:clamp(32px,5vw,52px);font-weight:400}.banner-desc{color:var(--text-light);margin-bottom:30px;font-size:18px}.footer-col h4{text-transform:uppercase;letter-spacing:1px;margin-bottom:20px;font-size:16px;font-weight:600}.footer-col p{opacity:.8;margin-bottom:10px;font-size:14px;line-height:1.8}.footer-col ul li{margin-bottom:10px}.footer-col ul a{opacity:.8;transition:var(--transition);font-size:14px}.footer-col ul a:hover{opacity:1;color:var(--secondary-color)}.footer-col i{color:var(--secondary-color);margin-right:10px}.footer-bottom{text-align:center;border-top:1px solid #ffffff1a;padding-top:30px}.footer-bottom p{opacity:.6;font-size:14px}.toast{background:var(--accent-color);color:var(--text-white);transition:var(--transition);z-index:1000;border-radius:8px;align-items:center;gap:10px;padding:15px 25px;font-size:14px;display:flex;position:fixed;bottom:30px;right:30px;transform:translate(150%);box-shadow:0 5px 20px #0003}.toast.show{transform:translate(0)}.toast i{color:var(--secondary-color)}.auth-page{background:linear-gradient(135deg, var(--bg-cream) 0%, var(--bg-light) 100%);align-items:center;min-height:80vh;padding:60px 0;display:flex;position:relative}.auth-page-enhanced{background-image:url(https://images.unsplash.com/photo-1556679343-c7306c1976bc?w=1920);background-position:50%;background-size:cover;background-attachment:fixed}.auth-page-enhanced:before{content:"";background:linear-gradient(135deg,#fffef7eb 0%,#f5f5dce0 100%);position:absolute;inset:0}.auth-page-enhanced .container{z-index:1;position:relative}.auth-form-container{background:var(--bg-color);border-radius:16px;max-width:450px;margin:0 auto;padding:40px;box-shadow:0 10px 40px #0000001f}.auth-card-enhanced{border-top:4px solid var(--primary-color);position:relative;overflow:hidden}.auth-card-enhanced:after{content:"";background:linear-gradient(135deg,#0000 50%,#6b8e230d 50%);width:120px;height:120px;position:absolute;top:0;right:0}.auth-logo{text-align:center;margin-bottom:24px}.auth-logo a{align-items:center;gap:8px;text-decoration:none;display:inline-flex}.auth-logo .logo-icon{font-size:32px}.auth-logo .logo-text{font-family:var(--font-heading);font-size:24px}.auth-header{text-align:center;margin-bottom:30px}.auth-header h1{font-family:var(--font-heading);color:var(--text-color);margin-bottom:8px;font-size:28px;font-weight:500}.auth-header p{color:var(--text-light);font-size:14px}.auth-error{color:#c53030;background:linear-gradient(135deg,#fff5f5 0%,#fee 100%);border-left:4px solid #c53030;border-radius:10px;align-items:center;gap:10px;margin-bottom:24px;padding:14px 18px;font-size:14px;display:flex}.auth-form .form-group{margin-bottom:22px}.auth-form label{color:var(--text-color);text-transform:uppercase;letter-spacing:1.2px;margin-bottom:10px;font-size:12px;font-weight:700;display:block}.input-wrapper{position:relative}.input-wrapper .input-icon{color:var(--text-light);transition:var(--transition);pointer-events:none;font-size:14px;position:absolute;top:50%;left:16px;transform:translateY(-50%)}.input-wrapper input{border:2px solid var(--border-color);width:100%;transition:var(--transition);background:var(--bg-cream);border-radius:10px;padding:16px 16px 16px 46px;font-family:inherit;font-size:15px}.input-wrapper input:focus{border-color:var(--primary-color);background:var(--bg-color);outline:none;box-shadow:0 0 0 4px #6b8e231a}.input-wrapper input:focus+.input-icon,.input-wrapper:focus-within .input-icon{color:var(--primary-color)}.input-wrapper input::placeholder{color:#aaa}.password-toggle{color:var(--text-light);cursor:pointer;transition:var(--transition);background:0 0;border:none;padding:6px;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.password-toggle:hover{color:var(--primary-color)}.auth-options{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.checkbox-wrapper{cursor:pointer;color:var(--text-light);align-items:center;gap:10px;font-size:14px;display:flex}.checkbox-wrapper input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary-color);cursor:pointer}.forgot-link{color:var(--primary-color);transition:var(--transition);font-size:14px;font-weight:600}.forgot-link:hover{color:var(--primary-dark);text-decoration:underline}.btn-signin{border-radius:10px;justify-content:center;align-items:center;gap:10px;padding:18px 24px;font-size:14px;font-weight:700;transition:all .3s;display:flex}.btn-signin:hover{transform:translateY(-2px);box-shadow:0 6px 20px #6b8e2359}.btn-signin:active{transform:translateY(0)}.btn-signin i{transition:transform .3s}.btn-signin:hover i{transform:translate(4px)}.btn-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}.auth-divider{align-items:center;gap:16px;margin:28px 0;display:flex}.auth-divider:before,.auth-divider:after{content:"";background:var(--border-color);flex:1;height:1px}.auth-divider span{color:var(--text-light);text-transform:uppercase;letter-spacing:1px;white-space:nowrap;font-size:13px}.social-login{justify-content:center;gap:16px;margin-bottom:8px;display:flex}.social-btn{border:2px solid var(--border-color);width:54px;height:54px;color:var(--text-light);background:var(--bg-color);transition:var(--transition);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;font-size:20px;display:flex}.social-btn:hover{border-color:var(--primary-color);color:var(--primary-color);background:#6b8e230d;transform:translateY(-3px);box-shadow:0 4px 12px #0000001a}.auth-footer{text-align:center;border-top:1px solid var(--border-color);margin-top:28px;padding-top:28px}.auth-footer p{color:var(--text-light);font-size:15px}.auth-footer a{color:var(--primary-color);transition:var(--transition);font-weight:700}.auth-footer a:hover{color:var(--primary-dark);text-decoration:underline}.auth-loading-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#fffef7e6;flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex;position:fixed;inset:0}.auth-loading-overlay p{color:var(--text-color);font-size:14px;font-weight:600}.auth-spinner{border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;width:48px;height:48px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.features{background:var(--bg-light);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);padding:60px 0}.features-grid{grid-template-columns:repeat(4,1fr);gap:30px;display:grid}.feature-card{text-align:center;transition:var(--transition);background:0 0;padding:25px 15px}.feature-card:hover{transform:translateY(-5px)}.feature-icon{background:var(--bg-color);width:65px;height:65px;color:var(--primary-color);transition:var(--transition);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 18px;font-size:22px;display:flex;box-shadow:0 2px 10px #0000000f}.feature-card:hover .feature-icon{background:var(--primary-color);color:var(--text-white);box-shadow:0 4px 15px #6b8e234d}.feature-title{font-family:var(--font-heading);color:var(--text-color);margin-bottom:8px;font-size:17px;font-weight:500}.feature-desc{color:var(--text-light);max-width:220px;margin:0 auto;font-size:13px;line-height:1.6}.promo-banners{background:var(--bg-cream);padding:80px 0}.promo-grid{grid-template-columns:1fr 1fr;gap:30px;display:grid}.promo-stack{flex-direction:column;gap:30px;display:flex}.promo-card{border-radius:8px;position:relative;overflow:hidden}.promo-card .promo-image{height:100%}.promo-card .promo-image img{object-fit:cover;width:100%;height:100%;transition:var(--transition-slow)}.promo-card:hover .promo-image img{transform:scale(1.05)}.promo-overlay{background:linear-gradient(135deg,#0006 0%,#0003 100%);position:absolute;inset:0}.promo-content{color:var(--text-white);flex-direction:column;justify-content:center;padding:40px;display:flex;position:absolute;inset:0}.promo-large .promo-image{min-height:500px}.promo-small .promo-image{min-height:235px}.promo-tag{letter-spacing:2px;text-transform:uppercase;opacity:.9;margin-bottom:15px;font-size:12px;font-weight:600}.promo-discount{background:var(--primary-color);letter-spacing:1px;text-transform:uppercase;border-radius:4px;margin-bottom:15px;padding:8px 18px;font-size:12px;font-weight:700;display:inline-block}.promo-title{font-family:var(--font-heading);margin-bottom:15px;font-size:32px;font-weight:400}.promo-small .promo-title{margin-bottom:10px;font-size:24px}.promo-desc{opacity:.9;max-width:350px;margin-bottom:25px;font-size:15px;line-height:1.6}.promo-link{letter-spacing:2px;text-transform:uppercase;color:var(--text-white);transition:var(--transition);align-items:center;gap:10px;font-size:12px;font-weight:700;display:inline-flex}.promo-link:hover{gap:15px}.promo-link i{transition:var(--transition);font-size:10px}.testimonials{background:var(--bg-light);padding:100px 0}.testimonials-slider{text-align:center;max-width:800px;margin:0 auto}.testimonial-card{background:var(--bg-color);box-shadow:var(--shadow-sm);border-radius:16px;padding:40px}.testimonial-quote{color:var(--primary-color);opacity:.3;margin-bottom:20px;font-size:48px}.testimonial-text{color:var(--text-color);margin-bottom:25px;font-size:18px;font-style:italic;line-height:1.8}.testimonial-rating{margin-bottom:25px}.testimonial-rating i{color:#ddd;margin:0 2px;font-size:14px}.testimonial-rating i.filled{color:var(--gold-color)}.testimonial-author{justify-content:center;align-items:center;gap:15px;display:flex}.author-avatar{object-fit:cover;border:3px solid var(--bg-light);border-radius:50%;width:60px;height:60px}.author-info h4{font-family:var(--font-heading);margin-bottom:4px;font-size:18px;font-weight:500}.author-info p{color:var(--text-light);font-size:13px}.testimonial-nav{justify-content:center;gap:10px;margin-top:30px;display:flex}.nav-dot{background:var(--border-color);cursor:pointer;width:10px;height:10px;transition:var(--transition);border:none;border-radius:50%}.nav-dot.active{background:var(--primary-color);transform:scale(1.2)}.nav-dot:hover{background:var(--primary-color);opacity:.7}.newsletter{background:linear-gradient(135deg, var(--accent-color) 0%, var(--primary-dark) 100%);padding:100px 0}.newsletter-content{justify-content:space-between;align-items:center;gap:60px;max-width:1100px;margin:0 auto;display:flex}.newsletter-text{color:var(--text-white);flex:1}.newsletter-text .section-tag{color:#ffffffb3}.newsletter-title{font-family:var(--font-heading);color:var(--text-white);margin-bottom:15px;font-size:36px;font-weight:400}.newsletter-desc{opacity:.85;max-width:450px;font-size:15px;line-height:1.7}.newsletter-form{flex:1;max-width:450px}.newsletter-form .input-group{background:var(--bg-color);box-shadow:var(--shadow);border-radius:8px;display:flex;overflow:hidden}.newsletter-form input{border:none;outline:none;flex:1;padding:18px 24px;font-family:inherit;font-size:15px}.newsletter-form input::placeholder{color:var(--text-muted)}.newsletter-form .btn{white-space:nowrap;border-radius:0;padding:18px 32px}.form-note{color:#fff9;align-items:center;gap:8px;margin-top:14px;font-size:13px;display:flex}.form-note i{font-size:11px}.subscribe-success{background:var(--bg-color);color:var(--primary-color);border-radius:8px;align-items:center;gap:12px;padding:20px 28px;font-size:15px;font-weight:600;display:flex}.subscribe-success i{font-size:24px}.animate-in{opacity:0;animation:.6s forwards fadeInUp;transform:translateY(30px)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.product-card,.category-card,.section-header{transition:opacity .6s,transform .6s;transform:translateY(30px)}.product-card.animate-in,.category-card.animate-in,.section-header.animate-in{opacity:1;transform:translateY(0)}.header.scrolled{z-index:100;animation:.3s slideDown;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 20px #0000001a}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@media (width<=992px){.header-nav{display:none}.header-logo{position:static;transform:none}.header-container{justify-content:space-between}.mobile-menu-toggle{display:flex}.mobile-nav{display:block}.hero-title{font-size:48px}.hero-indicators{display:none}.features-grid{grid-template-columns:repeat(2,1fr);gap:30px}.promo-grid{grid-template-columns:1fr}.promo-large .promo-image{min-height:400px}.promo-stack{flex-direction:row}.promo-small{flex:1}.promo-small .promo-image{min-height:280px}.newsletter-content{text-align:center;flex-direction:column;gap:40px}.newsletter-desc{margin:0 auto}.newsletter-form{width:100%}}@media (width<=768px){.section-title{font-size:32px}.cart-sidebar{width:100%;right:-100%}.announcement-bar{padding:8px 16px;font-size:11px}.header-container{padding:14px 16px}.header-logo .logo-text{font-size:22px}.header-logo .logo-leaf{font-size:20px}.auth-status{display:none}.header-actions{gap:4px}.header-icon-btn{width:34px;height:34px;font-size:15px}.hero{min-height:70vh}.hero-title{font-size:36px}.hero-content{padding:30px 20px}.features{padding:50px 0}.features-grid{grid-template-columns:1fr;gap:24px}.feature-card{padding:24px 16px}.promo-banners{padding:50px 0}.promo-stack{flex-direction:column}.promo-content{padding:24px}.promo-title{font-size:24px}.promo-small .promo-title{font-size:20px}.testimonials{padding:60px 0}.testimonial-card{padding:30px 20px}.testimonial-text{font-size:16px}.testimonial-author{flex-direction:column}.newsletter{padding:60px 0}.newsletter-title{font-size:28px}.newsletter-form .input-group{border-radius:8px;flex-direction:column}.newsletter-form input{border-radius:8px 8px 0 0}.newsletter-form .btn{border-radius:0 0 8px 8px}.auth-page{min-height:auto;padding:40px 0}.auth-form-container{margin:0 16px;padding:28px 24px}.auth-header h1{font-size:24px}.auth-options{flex-direction:column;align-items:flex-start;gap:14px}.social-login{gap:12px}.social-btn{width:48px;height:48px;font-size:18px}}.cart-page{background:linear-gradient(180deg, var(--bg-light) 0%, var(--bg-cream) 100%);min-height:80vh;padding:80px 0}.cart-page-title{font-family:var(--font-heading);color:var(--text-color);letter-spacing:.5px;margin-bottom:40px;font-size:36px;font-weight:400}.cart-page-title span{color:#4a7c4e}.cart-layout{grid-template-columns:1fr 400px;align-items:start;gap:48px;display:grid}.cart-items-section{background:var(--bg-color);box-shadow:var(--shadow-sm);border-radius:16px;padding:32px;transition:box-shadow .3s}.cart-items-section:hover{box-shadow:var(--shadow)}.cart-summary-section{z-index:10;position:sticky;top:100px}.cart-page-item{border-bottom:1px solid #0000000f;grid-template-columns:110px 1fr auto auto auto;align-items:center;gap:24px;padding:24px 0;transition:transform .3s,opacity .3s,background-color .2s;display:grid;position:relative}.cart-page-item:last-of-type{border-bottom:none}.cart-page-item:hover{background-color:#4a7c4e05}.cart-page-item.removing{opacity:0;transform:translate(-20px)}.cart-page-item-image{background:var(--bg-light);border-radius:12px;width:110px;height:110px;transition:transform .3s,box-shadow .3s;overflow:hidden;box-shadow:0 2px 8px #0000000f}.cart-page-item-image:hover{transform:scale(1.03);box-shadow:0 4px 16px #0000001a}.cart-page-item-image img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.cart-page-item-image:hover img{transform:scale(1.08)}.cart-page-item-details{flex-direction:column;gap:6px;display:flex}.cart-page-item-details h3{font-family:var(--font-heading);color:var(--text-color);margin:0;font-size:18px;font-weight:500;line-height:1.3;transition:color .2s}.cart-page-item-details a:hover h3{color:#4a7c4e}.cart-page-item-meta{color:var(--text-light);letter-spacing:.3px;font-size:13px}.cart-page-item-price{flex-wrap:wrap;align-items:center;gap:12px;margin-top:4px;display:flex}.cart-page-item-price .original-price{color:#999;opacity:.8;font-size:13px;font-weight:400;text-decoration:line-through}.cart-page-item-price .current-price{color:#4a7c4e;letter-spacing:-.3px;font-size:17px;font-weight:700}.cart-page-item-price .discount-badge{color:#4a7c4e;letter-spacing:.3px;background:linear-gradient(135deg,#4a7c4e1f 0%,#4a7c4e14 100%);border:1px solid #4a7c4e26;border-radius:20px;padding:4px 10px;font-size:11px;font-weight:700}.cart-page-item-quantity{background:var(--bg-light);border-radius:30px;align-items:center;gap:4px;padding:4px;display:flex}.cart-page-item-quantity .qty-btn{background:var(--bg-color);width:36px;height:36px;color:var(--text-color);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:18px;font-weight:500;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 1px 3px #00000014}.cart-page-item-quantity .qty-btn:hover:not(:disabled){color:#fff;background:#4a7c4e;transform:scale(1.08);box-shadow:0 4px 12px #4a7c4e4d}.cart-page-item-quantity .qty-btn:active:not(:disabled){transform:scale(.95)}.cart-page-item-quantity .qty-btn:disabled{opacity:.4;cursor:not-allowed;background:var(--bg-light)}.cart-page-item-quantity .qty-value{text-align:center;min-width:40px;color:var(--text-color);font-size:16px;font-weight:700;transition:transform .15s}.cart-page-item-quantity .qty-value.updating{color:#4a7c4e;transform:scale(1.15)}.cart-page-item-total{color:var(--text-color);text-align:right;min-width:100px;font-size:18px;font-weight:700;font-family:var(--font-body);letter-spacing:-.3px}.cart-page-item-remove{cursor:pointer;opacity:.5;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;padding:10px;font-size:18px;transition:all .25s;display:flex}.cart-page-item-remove:hover{opacity:1;background:#e539351a;transform:scale(1.1)}.cart-page-item-remove:active{transform:scale(.9)}.stock-warning{color:#e65100;letter-spacing:.2px;background:linear-gradient(135deg,#fff3e0 0%,#ffe0b2 100%);border-radius:20px;padding:5px 12px;font-size:11px;font-weight:600;animation:2s ease-in-out infinite pulse-warning;position:absolute;bottom:8px;left:134px}@keyframes pulse-warning{0%,to{opacity:1}50%{opacity:.7}}.cart-actions{border-top:1px solid #0000000f;justify-content:space-between;align-items:center;margin-top:20px;padding-top:28px;display:flex}.btn-outline-danger{color:#c62828;letter-spacing:.5px;background:0 0;border:2px solid #e539354d;border-radius:30px;padding:14px 28px;font-size:13px;font-weight:600;transition:all .3s}.btn-outline-danger:hover{color:#fff;background:#e53935;border-color:#e53935;transform:translateY(-2px);box-shadow:0 4px 16px #e539354d}.btn-outline-danger i{margin-right:6px;font-size:12px}.continue-shopping{letter-spacing:.5px;color:#4a7c4e;background:0 0;border:2px solid #4a7c4e;border-radius:30px;align-items:center;gap:8px;padding:14px 28px;font-size:13px;font-weight:600;transition:all .3s;display:inline-flex}.continue-shopping:hover{color:#fff;background:#4a7c4e;transform:translateY(-2px);box-shadow:0 4px 16px #4a7c4e4d}.continue-shopping i{font-size:12px;transition:transform .3s}.continue-shopping:hover i{transform:translate(-3px)}.cart-empty-state{text-align:center;background:var(--bg-color);max-width:520px;min-height:50vh;box-shadow:var(--shadow);border-radius:24px;flex-direction:column;justify-content:center;align-items:center;margin:0 auto;padding:100px 40px;display:flex}.cart-empty-icon{opacity:.15;filter:grayscale();margin-bottom:32px;font-size:90px;transition:all .4s}.cart-empty-state:hover .cart-empty-icon{opacity:.25;transform:scale(1.05)}.cart-empty-state h2{font-family:var(--font-heading);color:var(--text-color);letter-spacing:.3px;margin-bottom:16px;font-size:32px;font-weight:400}.cart-empty-state p{color:var(--text-light);max-width:320px;margin-bottom:40px;font-size:16px;line-height:1.6}.cart-empty-state .btn-primary{color:#fff;letter-spacing:1px;background:#4a7c4e;border:none;border-radius:30px;padding:18px 48px;font-size:14px;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 16px #4a7c4e4d}.cart-empty-state .btn-primary:hover{background:#3d6a42;transform:translateY(-3px);box-shadow:0 8px 28px #4a7c4e66}.order-summary{background:var(--bg-color);box-shadow:var(--shadow);border:1px solid #0000000a;border-radius:20px;padding:32px;transition:box-shadow .3s,transform .3s}.order-summary:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.order-summary h2{font-family:var(--font-heading);color:var(--text-color);letter-spacing:.3px;border-bottom:2px solid #4a7c4e26;margin-bottom:28px;padding-bottom:20px;font-size:24px;font-weight:400}.summary-row{justify-content:space-between;align-items:center;padding:12px 0;font-size:15px;transition:background-color .2s;display:flex}.summary-row:hover{background-color:#00000003;border-radius:6px;margin:0 -8px;padding:12px 8px}.summary-row.discount span:first-child{color:var(--text-light)}.summary-row.tax{color:var(--text-light);font-size:13px}.summary-row.total{color:var(--text-color);letter-spacing:-.3px;margin-top:8px;padding:20px 0;font-size:22px;font-weight:700}.summary-row.total span:last-child{color:#4a7c4e}.summary-divider{background:linear-gradient(90deg, transparent 0%, var(--border-color) 50%, transparent 100%);height:1px;margin:12px 0}.text-green{color:#4a7c4e;font-weight:700}.tax-breakdown{padding:16px 0}.tax-breakdown h4{color:var(--text-light);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:12px;font-size:12px;font-weight:700}.free-delivery-progress{background:linear-gradient(135deg,#4a7c4e0f 0%,#4a7c4e08 100%);border:1px solid #4a7c4e1a;border-radius:14px;margin:20px 0;padding:18px 20px}.free-delivery-progress p{color:#4a7c4e;align-items:center;gap:6px;margin-bottom:12px;font-size:13px;font-weight:600;display:flex}.free-delivery-progress p:before{content:"🚚";font-size:14px}.progress-bar{background:#4a7c4e26;border-radius:4px;height:4px;position:relative;overflow:hidden}.progress-fill{background:linear-gradient(90deg,#6b8e23,#4a7c4e,#3d6a42);border-radius:4px;height:100%;transition:width .5s cubic-bezier(.4,0,.2,1);position:relative}.progress-fill:after{content:"";background:linear-gradient(90deg,#0000 0%,#ffffff4d 50%,#0000 100%);animation:2s ease-in-out infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.savings-banner{color:#4a7c4e;text-align:center;background:linear-gradient(135deg,#4a7c4e1a 0%,#4a7c4e0d 100%);border:1px solid #4a7c4e1f;border-radius:12px;margin:20px 0;padding:16px 20px;font-size:14px;font-weight:600;transition:transform .3s,box-shadow .3s}.savings-banner:hover{transform:scale(1.02);box-shadow:0 4px 16px #4a7c4e26}.btn-checkout{letter-spacing:1px;color:#fff;cursor:pointer;text-transform:uppercase;background:linear-gradient(135deg,#4a7c4e 0%,#3d6a42 100%);border:none;border-radius:14px;width:100%;margin:24px 0 16px;padding:20px;font-size:15px;font-weight:700;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 16px #4a7c4e4d}.btn-checkout:hover{background:linear-gradient(135deg,#3d6a42 0%,#2d5432 100%);transform:translateY(-3px);box-shadow:0 8px 28px #4a7c4e66}.btn-checkout:active{transform:translateY(-1px)}.secure-checkout{text-align:center;color:var(--text-light);opacity:.8;justify-content:center;align-items:center;gap:6px;font-size:12px;display:flex}@media (width<=1200px){.cart-layout{grid-template-columns:1fr 360px;gap:32px}}@media (width<=992px){.cart-layout{grid-template-columns:1fr;gap:24px}.cart-summary-section{position:static}.order-summary{border-radius:16px}}@media (width<=768px){.cart-page{padding:50px 0}.cart-page-title{margin-bottom:24px;font-size:28px}.cart-items-section{border-radius:12px;padding:20px}.cart-page-item{grid-template-columns:90px 1fr;gap:16px;padding:20px 0}.cart-page-item-image{border-radius:10px;width:90px;height:90px}.cart-page-item-details h3{font-size:16px}.cart-page-item-price .current-price{font-size:15px}.cart-page-item-quantity{grid-column:2;justify-self:start;margin-top:10px;padding:3px}.cart-page-item-quantity .qty-btn{width:32px;height:32px;font-size:16px}.cart-page-item-quantity .qty-value{min-width:32px;font-size:14px}.cart-page-item-total{text-align:left;grid-column:2;justify-self:start;min-width:auto;margin-top:8px;font-size:16px}.cart-page-item-remove{position:absolute;top:20px;right:0}.stock-warning{padding:4px 10px;font-size:10px;bottom:16px;left:106px}.cart-actions{flex-direction:column;gap:14px}.cart-actions .btn{text-align:center;justify-content:center;width:100%}.btn-outline-danger{padding:14px 20px}.order-summary{border-radius:16px;padding:24px}.order-summary h2{margin-bottom:20px;padding-bottom:16px;font-size:20px}.summary-row{padding:10px 0;font-size:14px}.summary-row.total{padding:16px 0;font-size:20px}.btn-checkout{border-radius:12px;padding:18px;font-size:14px}.free-delivery-progress{border-radius:10px;padding:14px 16px}.savings-banner{border-radius:10px;padding:14px 16px;font-size:13px}.cart-empty-state{border-radius:20px;min-height:40vh;padding:70px 24px}.cart-empty-icon{margin-bottom:24px;font-size:70px}.cart-empty-state h2{font-size:26px}.cart-empty-state p{margin-bottom:32px;font-size:15px}.cart-empty-state .btn-primary{padding:16px 36px}}@media (width<=480px){.cart-page{padding:30px 0}.cart-page-title{font-size:24px}.cart-items-section{padding:16px}.cart-page-item{gap:12px}.cart-page-item-image{width:80px;height:80px}.cart-page-item-details h3{font-size:15px}.cart-page-item-meta{font-size:12px}.cart-page-item-price .current-price{font-size:14px}.cart-page-item-price .original-price{font-size:12px}.cart-page-item-price .discount-badge{padding:3px 8px;font-size:10px}.order-summary{padding:20px}.cart-empty-state{padding:50px 20px}.cart-empty-icon{font-size:60px}.cart-empty-state h2{font-size:22px}}.checkout-page{background:var(--bg-light);min-height:100vh;padding:40px 0 80px}.checkout-progress{justify-content:center;align-items:center;gap:20px;margin-bottom:40px;padding:0 20px;display:flex}.progress-step{align-items:center;gap:10px;display:flex;position:relative}.step-indicator{background:var(--bg-color);border:2px solid var(--border-color);width:48px;height:48px;color:var(--text-light);border-radius:50%;justify-content:center;align-items:center;font-size:20px;transition:all .3s;display:flex}.progress-step.active .step-indicator{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.progress-step.completed .step-indicator{color:#fff;background:#22c55e;border-color:#22c55e}.step-name{color:var(--text-light);font-size:14px;font-weight:600;display:none}.progress-step.active .step-name,.progress-step.completed .step-name{color:var(--text-color)}.step-connector{background:var(--border-color);width:60px;height:3px;margin-left:10px}.progress-step.completed .step-connector{background:#22c55e}.checkout-layout{grid-template-columns:1fr 380px;gap:30px;max-width:1200px;margin:0 auto;padding:0 20px;display:grid}.checkout-main{background:var(--bg-color);box-shadow:var(--shadow);border-radius:16px;padding:32px}.checkout-sidebar{height:fit-content;position:sticky;top:100px}.checkout-step h2{font-family:var(--font-heading);color:var(--text-color);margin-bottom:8px;font-size:24px}.step-description{color:var(--text-light);margin-bottom:24px;font-size:14px}.checkout-error{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;align-items:center;gap:8px;max-width:1200px;margin:0 auto 20px;padding:12px 16px;display:flex}.checkout-error button{cursor:pointer;color:#dc2626;background:0 0;border:none;margin-left:auto;font-size:18px}.address-form{flex-direction:column;gap:20px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:16px;display:grid}.form-row-3{grid-template-columns:1fr 1fr 1fr}.form-group{flex-direction:column;gap:6px;display:flex}.form-group label{color:var(--text-color);font-size:14px;font-weight:500}.form-input{border:1px solid var(--border-color);background:var(--bg-color);border-radius:8px;padding:12px 16px;font-family:inherit;font-size:14px;transition:all .2s}.form-input:focus{border-color:var(--primary-color);outline:none;box-shadow:0 0 0 3px #4a7c4e1a}.form-input.error{border-color:#dc2626}.form-input.error:focus{box-shadow:0 0 0 3px #dc26261a}.error-message{color:#dc2626;margin-top:2px;font-size:12px}.address-type-options{gap:12px;display:flex}.address-type-option{border:2px solid var(--border-color);cursor:pointer;border-radius:10px;flex:1;align-items:center;gap:8px;padding:12px 16px;transition:all .2s;display:flex}.address-type-option:hover{border-color:var(--primary-color)}.address-type-option.selected{border-color:var(--primary-color);background:#4a7c4e0d}.address-type-option input{display:none}.type-icon{font-size:18px}.type-label{font-size:14px;font-weight:500}.form-actions{border-top:1px solid var(--border-color);justify-content:space-between;gap:16px;margin-top:24px;padding-top:24px;display:flex}.btn-cancel{border:1px solid var(--border-color);color:var(--text-color);cursor:pointer;background:0 0;border-radius:10px;padding:14px 24px;font-weight:500;transition:all .2s}.btn-cancel:hover{background:var(--bg-light)}.btn-submit{background:linear-gradient(135deg, var(--primary-color) 0%, #3d6b41 100%);color:#fff;cursor:pointer;border:none;border-radius:10px;flex:1;padding:14px 24px;font-size:15px;font-weight:600;transition:all .3s}.btn-submit:hover{transform:translateY(-2px);box-shadow:0 4px 15px #4a7c4e4d}.btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.review-card{background:var(--bg-light);border-radius:12px;margin-bottom:20px;padding:20px}.review-card-header{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.review-card-header h3{align-items:center;gap:8px;font-size:16px;font-weight:600;display:flex}.edit-btn{border:1px solid var(--primary-color);color:var(--primary-color);cursor:pointer;background:0 0;border-radius:6px;padding:6px 12px;font-size:13px;transition:all .2s}.edit-btn:hover{background:var(--primary-color);color:#fff}.address-display{line-height:1.6}.address-display strong{margin-bottom:8px;font-size:16px;display:block}.address-display p{color:var(--text-light);margin:0}.review-items{flex-direction:column;gap:12px;display:flex}.review-item{background:var(--bg-color);border-radius:8px;align-items:center;gap:12px;padding:12px;display:flex}.review-item img{object-fit:cover;border-radius:6px;width:60px;height:60px}.review-item-details{flex:1}.review-item-details h4{margin-bottom:4px;font-size:14px}.review-item-details p{color:var(--text-light);margin:0;font-size:12px}.review-item-price{color:var(--primary-color);font-weight:600}.step-actions{justify-content:space-between;gap:16px;margin-top:24px;display:flex}.btn-back{border:1px solid var(--border-color);color:var(--text-color);cursor:pointer;background:0 0;border-radius:10px;padding:14px 24px;font-weight:500;transition:all .2s}.btn-back:hover{background:var(--bg-light)}.btn-continue{background:linear-gradient(135deg, var(--primary-color) 0%, #3d6b41 100%);color:#fff;cursor:pointer;border:none;border-radius:10px;padding:14px 32px;font-weight:600;transition:all .3s}.btn-continue:hover{transform:translateY(-2px);box-shadow:0 4px 15px #4a7c4e4d}.payment-card{background:var(--bg-light);text-align:center;border-radius:16px;padding:32px}.payment-amount{background:var(--bg-color);border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:24px;padding:20px;display:flex}.payment-amount span{color:var(--text-light);font-size:16px}.payment-amount strong{color:var(--primary-color);font-size:28px}.payment-methods{margin-bottom:24px}.payment-methods h4{color:var(--text-light);margin-bottom:12px;font-size:14px}.payment-icons{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.payment-icons span{color:var(--text-color);background:var(--bg-color);border-radius:6px;padding:8px 12px;font-size:13px}.btn-pay{background:linear-gradient(135deg, var(--primary-color) 0%, #3d6b41 100%);color:#fff;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:16px 32px;font-size:16px;font-weight:600;transition:all .3s;display:flex}.btn-pay:hover{transform:translateY(-2px);box-shadow:0 8px 25px #4a7c4e59}.btn-pay:disabled{opacity:.7;cursor:not-allowed;transform:none}.btn-pay .spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}.payment-secure{color:var(--text-light);margin-top:20px;font-size:13px}.promo-section{background:var(--bg-color);box-shadow:var(--shadow);border-radius:12px;margin-top:20px;padding:20px}.promo-section h4{margin-bottom:12px;font-size:14px}.promo-input{gap:8px;display:flex}.promo-input input{border:1px solid var(--border-color);border-radius:8px;flex:1;padding:10px 14px;font-size:14px}.promo-input button{background:var(--primary-color);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:10px 16px;font-weight:500;transition:all .2s}.promo-input button:hover{background:#3d6b41}.checkout-support{background:var(--bg-color);box-shadow:var(--shadow);border-radius:12px;margin-top:16px;padding:20px}.checkout-support h4{margin-bottom:12px;font-size:14px}.checkout-support p{color:var(--text-light);margin:4px 0;font-size:13px}@media (width<=1024px){.checkout-layout{grid-template-columns:1fr}.checkout-sidebar{order:-1;position:static}}@media (width<=768px){.checkout-page{padding:20px 0 60px}.checkout-progress{gap:10px}.step-indicator{width:40px;height:40px;font-size:16px}.step-connector{width:30px}.checkout-main{padding:20px}.form-row,.form-row-3{grid-template-columns:1fr}.address-type-options,.step-actions{flex-direction:column}.btn-back{order:1}}@media (width<=480px){.checkout-page{padding:15px 0 40px}.checkout-main{border-radius:12px;padding:16px}.checkout-step h2{font-size:20px}.review-card{padding:16px}.payment-card{padding:20px}.payment-amount strong{font-size:24px}}.gradient-btn{color:#fff!important;background:linear-gradient(135deg,#4a7c4e 0%,#3d6a42 100%)!important;border:none!important;box-shadow:0 4px 15px #4a7c4e4d!important}.gradient-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #4a7c4e73!important}.checkout-steps{justify-content:center;align-items:center;gap:15px;margin-bottom:50px;padding:20px 0;display:flex}.checkout-steps .step{flex-direction:column;align-items:center;gap:8px;min-width:80px;display:flex}.checkout-steps .step-num{color:#6c757d;background:#f8f9fa;border:2px solid #dee2e6;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:700;transition:all .3s;display:flex}.checkout-steps .step.active .step-num{color:#fff;background:#4a7c4e;border-color:#4a7c4e;box-shadow:0 0 0 5px #4a7c4e1a}.checkout-steps .step-text{text-transform:uppercase;letter-spacing:1px;color:#6c757d;font-size:11px;font-weight:700}.checkout-steps .step.active .step-text{color:#4a7c4e}.checkout-steps .step-line{background:#dee2e6;width:60px;height:2px;margin-bottom:20px}.cart-header-row{justify-content:space-between;align-items:flex-start;margin-bottom:20px;display:flex}.mobile-checkout-btn{color:#fff;background:#4a7c4e;border:none;border-radius:30px;padding:12px 24px;font-size:14px;font-weight:700;display:none;box-shadow:0 4px 12px #4a7c4e33}.trust-badges{border-top:1px solid #eee;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:25px;padding-top:20px;display:grid}.trust-item{text-align:center;flex-direction:column;align-items:center;gap:6px;display:flex}.trust-item i{color:#4a7c4e;opacity:.8;font-size:16px}.trust-item span{text-transform:uppercase;letter-spacing:.5px;color:#888;font-size:9px;font-weight:600}.payment-icons{color:#ccc;opacity:.6;justify-content:center;gap:15px;margin-top:20px;font-size:20px;display:flex}.one-click-container{text-align:center;margin-top:20px}.one-click-container .divider{border-bottom:1px solid #eee;margin:20px 0;position:relative}.one-click-container .divider span{color:#888;background:#fff;padding:0 10px;font-size:11px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.btn-one-click{color:#fff;cursor:pointer;background:#f90;border:none;border-radius:12px;justify-content:center;align-items:center;gap:8px;width:100%;padding:16px;font-size:14px;font-weight:700;transition:all .3s;display:flex;box-shadow:0 4px 12px #f903}.btn-one-click:hover{background:#e68a00;transform:translateY(-2px);box-shadow:0 6px 18px #ff99004d}.one-click-hint{color:#888;margin-top:8px;font-size:11px;font-style:italic}.total-label{text-transform:uppercase;color:#888;margin-bottom:2px;font-size:11px;display:none}.btn-clear-cart{color:#e53935;cursor:pointer;background:0 0;border:none;padding:10px;font-size:13px;font-weight:600;transition:all .2s}.btn-clear-cart:hover{color:#c62828;text-decoration:underline}@media (width<=768px){.mobile-checkout-btn{display:block}.checkout-steps{gap:8px;margin-bottom:30px}.checkout-steps .step-line{width:30px}.total-label{display:block}.cart-page-item-total{flex-direction:column;display:flex}}.order-success-page{background-color:var(--bg-light);justify-content:center;align-items:center;min-height:80vh;padding:60px 20px;display:flex}.success-container{text-align:center;background:#fff;border-radius:20px;width:100%;max-width:600px;padding:40px;box-shadow:0 10px 40px #00000014}.success-icon{width:80px;height:80px;margin:0 auto 20px}.checkmark{stroke-width:3px;stroke:#4a7c4e;stroke-miterlimit:10;border-radius:50%;width:100%;height:100%;margin:10% auto;animation:.4s ease-in-out .4s forwards fill,.3s ease-in-out .9s both scale;display:block;box-shadow:inset 0 0 #4a7c4e}.checkmark-circle{stroke-dasharray:166;stroke-dashoffset:166px;stroke-width:3px;stroke-miterlimit:10;stroke:#4a7c4e;fill:none;animation:.6s cubic-bezier(.65,0,.45,1) forwards stroke}.checkmark-check{transform-origin:50%;stroke-dasharray:48;stroke-dashoffset:48px;animation:.3s cubic-bezier(.65,0,.45,1) .8s forwards stroke}@keyframes stroke{to{stroke-dashoffset:0}}@keyframes scale{0%,to{transform:none}50%{transform:scale(1.1)}}@keyframes fill{to{box-shadow:inset 0 0 0 40px #4a7c4e1a}}.success-container h1{color:#333;margin-bottom:30px;font-size:28px;font-weight:700}.order-info{text-align:left;background:#f8f9fa;border-radius:12px;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:30px;padding:20px;display:grid}.order-info .label{color:#6c757d;text-transform:uppercase;margin-bottom:5px;font-size:12px;font-weight:600;display:block}.order-info .value{color:#333;font-size:14px;font-weight:600}.order-summary,.delivery-address{text-align:left;margin-bottom:30px;padding:0 10px}.order-summary h3,.delivery-address h3{color:#333;border-bottom:1px solid #eee;margin-bottom:15px;padding-bottom:10px;font-size:18px}.summary-item{color:#555;justify-content:space-between;padding:10px 0;font-size:15px;display:flex}.summary-total{color:#4a7c4e;border-top:2px dashed #eee;justify-content:space-between;margin-top:10px;padding:15px 0;font-size:18px;font-weight:700;display:flex}.delivery-address p{color:#555;font-size:15px;line-height:1.6}.success-actions{justify-content:center;gap:15px;margin-top:40px;display:flex}.success-actions .btn{border-radius:30px;padding:14px 28px;font-weight:600;text-decoration:none;transition:all .3s}.success-actions .btn-primary{color:#fff;background:#4a7c4e}.success-actions .btn-primary:hover{background:#3d6a42;transform:translateY(-2px)}.success-actions .btn-secondary{color:#333;background:#f8f9fa;border:1px solid #ddd}.success-actions .btn-secondary:hover{background:#e9ecef}.confirmation-email{color:#6c757d;margin-top:25px;font-size:14px}@media (width<=600px){.order-info{text-align:center;grid-template-columns:1fr}.success-actions{flex-direction:column}}:root{--primary-color:#4a7c4e;--primary-dark:#2d5a27;--primary-light:#a5d6a7;--secondary-color:#f1f8e9;--accent-color:#fbd38d;--text-color:#1a1a1a;--text-light:#4a4a4a;--text-muted:#8e8e8e;--text-white:#fff;--bg-color:#fff;--bg-light-green:#f3f8f1;--bg-light:#f9fbfa;--bg-cream:#fcfdfb;--bg-dark:#112613;--border-color:#e2e8f0;--shadow-sm:0 1px 3px #0000000d, 0 1px 2px #00000008;--shadow:0 4px 6px -1px #0000000d, 0 2px 4px -1px #00000008;--shadow-lg:0 20px 25px -5px #0000000d, 0 10px 10px -5px #00000005;--transition:all .3s cubic-bezier(.4, 0, .2, 1);--transition-slow:all .5s cubic-bezier(.4, 0, .2, 1);--font-heading:"Playfair Display", serif;--font-body:"Lato", sans-serif;--radius-sm:4px;--radius-md:8px;--radius-lg:12px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--text-color);background:var(--bg-color);font-size:16px;line-height:1.6}a{color:inherit;transition:var(--transition);text-decoration:none}ul{list-style:none}img{max-width:100%;height:auto}button{cursor:pointer;background:0 0;border:none;font-family:inherit}.container{max-width:1290px;margin:0 auto;padding:0 20px}.btn{letter-spacing:2px;text-transform:uppercase;transition:var(--transition);cursor:pointer;border:2px solid #0000;padding:16px 42px;font-size:11px;font-weight:700;display:inline-block}.btn-primary{background:var(--text-white);color:var(--text-color);border-color:var(--text-color)}.btn-primary:hover{background:var(--text-color);color:var(--text-white)}.btn-secondary{background:var(--primary-color);color:var(--text-white);border-color:var(--primary-color)}.btn-secondary:hover{background:var(--primary-dark);border-color:var(--primary-dark);transform:translateY(-2px)}.btn-outline{border:2px solid var(--text-color);color:var(--text-color);background:0 0}.btn-outline:hover{background:var(--text-color);color:var(--text-white)}.btn-hero{background:var(--text-white);color:var(--text-color);border-color:var(--text-color)}.btn-hero:hover{background:var(--text-color);color:var(--text-white)}.btn-block{text-align:center;width:100%;display:block}.btn-small{padding:10px 20px;font-size:10px}.announcement-bar{background:var(--bg-cream);text-align:center;color:var(--text-color);border-bottom:1px solid var(--border-color);padding:10px 20px;font-size:13px;transition:all .3s}.announcement-bar.hidden{opacity:0;height:0;padding:0;overflow:hidden;transform:translateY(-100%)}.announcement-bar p{margin:0}.announcement-bar strong{color:var(--primary-color)}.header{z-index:1000;width:100%;transition:var(--transition);background:0 0;top:0}.header-scrolled{background:var(--bg-color);box-shadow:var(--shadow)}.header-main{border-bottom:1px solid #ffffff1a}.header-scrolled .header-main{border-bottom:1px solid var(--border-color)}.header-container{justify-content:space-between;align-items:center;max-width:1320px;margin:0 auto;padding:4px 20px;display:flex}.header-logo{flex:1;align-items:center;display:flex}.header-logo .logo img{filter:brightness(0)invert();max-height:48px;transition:var(--transition)}.header-scrolled .header-logo .logo img{filter:none;max-height:60px}.header-nav{flex:2;justify-content:center;display:flex}.nav-list{align-items:center;gap:32px;display:flex}.nav-item a{color:var(--text-white);letter-spacing:.5px;transition:var(--transition);font-size:14px;font-weight:500}.header-scrolled .nav-item a{color:var(--text-color)}.nav-item a:hover{color:var(--primary-light)}.header-scrolled .nav-item a:hover{color:var(--primary-color)}.header-actions{flex:1;justify-content:flex-end;align-items:center;gap:16px;display:flex}.header-icon-btn{color:var(--text-white);transition:var(--transition);justify-content:center;align-items:center;padding:8px;font-size:18px;display:flex;position:relative}.header-scrolled .header-icon-btn{color:var(--text-color)}.header-icon-btn:hover{color:var(--primary-light)}.header-scrolled .header-icon-btn:hover{color:var(--primary-color)}.icon-badge{background:var(--accent-color);color:var(--text-color);border:2px solid var(--bg-color);border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:700;display:flex;position:absolute;top:0;right:0;transform:translate(25%,-25%);box-shadow:0 2px 4px #0000001a}.header-scrolled .icon-badge{background:var(--accent-color);border-color:var(--bg-color)}.cursor-pointer{cursor:pointer}.auth-status{align-items:center;column-gap:16px;margin-right:8px;display:flex}.auth-status .auth-link{text-transform:uppercase;letter-spacing:1px;color:var(--text-color);transition:var(--transition);align-items:center;gap:8px;font-size:12px;font-weight:500;display:flex}.auth-status .auth-link i{font-size:16px}.auth-status .auth-link:hover{color:var(--primary-color)}.auth-status .auth-logged-in{align-items:center;gap:8px;font-size:12px;display:flex}.auth-status .auth-logged-in i{color:var(--text-light);font-size:16px}.auth-status .user-greeting{color:var(--text-color);font-weight:500}.auth-status .logout-link{color:var(--primary-color);cursor:pointer;background:0 0;border:none;font-size:12px;font-weight:600}.auth-status .logout-link:hover{text-decoration:underline}.mobile-menu-toggle{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;width:38px;height:38px;padding:8px;display:none}.mobile-menu-toggle span{background:var(--text-color);width:22px;height:2px;transition:var(--transition);display:block}.mobile-menu-toggle.active span:first-child{transform:rotate(45deg)translate(5px,5px)}.mobile-menu-toggle.active span:nth-child(2){opacity:0}.mobile-menu-toggle.active span:nth-child(3){transform:rotate(-45deg)translate(5px,-5px)}.mobile-nav{background:var(--bg-color);border-bottom:1px solid var(--border-color);max-height:0;transition:max-height .3s;display:none;overflow:hidden}.mobile-nav.open{max-height:300px}.mobile-nav-list{padding:16px 20px}.mobile-nav-list li{border-bottom:1px solid var(--border-color);padding:12px 0}.mobile-nav-list li:last-child{border-bottom:none}.mobile-nav-list a{text-transform:uppercase;letter-spacing:1px;color:var(--text-color);font-size:14px;font-weight:500}.mobile-nav-list a:hover,.mobile-nav-list a.active{color:var(--primary-color)}.hero{height:100vh;min-height:600px;position:relative;overflow:hidden}.hero-slider{width:100%;height:100%;position:absolute;inset:0}.hero-slide{opacity:0;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity 1.5s ease-in-out;display:flex;position:absolute;inset:0}.hero-slide.active{opacity:1}.hero-bg{z-index:0;position:absolute;inset:0}.hero-bg img{object-fit:cover;width:100%;height:100%}.hero-overlay{background:linear-gradient(#0003,#0006);position:absolute;inset:0}.hero .container{z-index:2;text-align:center;position:relative}.hero-content{max-width:900px;color:var(--text-white);opacity:0;margin:0 auto;transition:all 1s ease-out .5s;transform:translateY(30px)}.hero-slide.active .hero-content{opacity:1;transform:translateY(0)}.hero-title{font-family:var(--font-heading);text-shadow:0 4px 12px #0000004d;margin-bottom:32px;font-size:clamp(48px,8vw,84px);font-weight:500;line-height:1.1}.hero-btn{background:var(--primary-color);color:var(--text-white);text-transform:uppercase;letter-spacing:1px;transition:var(--transition);border:2px solid var(--primary-color);border-radius:50px;padding:16px 48px;font-size:14px;font-weight:600;display:inline-block}.hero-btn:hover{border-color:var(--text-white);background:0 0;transform:translateY(-5px)}.hero-slider-nav{z-index:10;gap:15px;display:flex;position:absolute;bottom:140px;left:50%;transform:translate(-50%)}.hero-dot{cursor:pointer;width:10px;height:10px;transition:var(--transition);background:#ffffff4d;border:none;border-radius:50%}.hero-dot.active{background:var(--text-white);transform:scale(1.3)}.wave-divider{z-index:5;width:100%;line-height:0;position:absolute;bottom:-1px;left:0}.wave-divider svg{width:calc(100% + 1.3px);height:120px;display:block;position:relative}.wave-divider .shape-fill{fill:var(--bg-light-green)}.section-tag{letter-spacing:2px;text-transform:uppercase;color:var(--primary-color);margin-bottom:10px;font-size:12px;font-weight:600;display:block}.section-title{font-family:var(--font-heading);color:var(--text-color);font-size:42px;font-weight:400}.categories{background:var(--bg-cream);padding:80px 0}.category-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:30px;display:grid}.category-card{background:var(--bg-color);text-align:center;transition:var(--transition);cursor:pointer;border-radius:10px;padding:40px 30px}.category-card:hover{box-shadow:var(--shadow);transform:translateY(-5px)}.category-icon{background:var(--bg-light);width:70px;height:70px;color:var(--primary-color);border-radius:50%;justify-content:center;align-items:center;margin:0 auto 20px;font-size:28px;display:flex}.category-card h3{font-family:var(--font-heading);margin-bottom:5px;font-size:20px}.category-card p{color:var(--text-light);font-size:14px}.category-section{background:var(--bg-light-green);padding:100px 0}.category-section-title{font-family:var(--font-heading);text-align:center;color:var(--text-color);letter-spacing:2px;margin-bottom:60px;font-size:48px;font-weight:400}.category-grid-premium{grid-template-columns:repeat(4,1fr);gap:30px;display:grid}.category-card-premium{border-radius:var(--radius-lg);cursor:pointer;height:400px;transition:var(--transition);position:relative;overflow:hidden}.category-card-premium:hover{transform:translateY(-8px)}.category-bg-image{transition:var(--transition-slow);background-position:50%;background-size:cover;position:absolute;inset:0}.category-card-premium:hover .category-bg-image{transform:scale(1.1)}.category-card-content{-webkit-backdrop-filter:blur(12px);transition:var(--transition);background:#ffffff40;border:1px solid #fff3;border-bottom:none;padding:30px;position:absolute;bottom:0;left:0;right:0}.category-card-premium:hover .category-card-content{box-shadow:var(--shadow-lg);background:#ffffff59}.category-card-content h3{font-family:var(--font-heading);color:var(--text-color);text-shadow:0 2px 4px #ffffff80;margin-bottom:8px;font-size:28px;font-weight:500}.category-card-content p{color:var(--text-light);margin:0;font-size:14px}.products-section{background:var(--bg-color);padding:100px 0}.section-header{text-align:center;margin-bottom:60px}.section-title{font-family:var(--font-heading);color:var(--text-color);margin-bottom:16px;font-size:48px;font-weight:500}.section-subtitle{letter-spacing:2px;text-transform:uppercase;color:var(--primary-color);margin-bottom:12px;font-size:14px;font-weight:600;display:block}.category-tabs{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:50px;display:flex}.category-tab{letter-spacing:1px;text-transform:uppercase;color:var(--text-color);border:2px solid var(--border-color);transition:var(--transition);cursor:pointer;background:0 0;border-radius:30px;padding:10px 24px;font-size:13px;font-weight:600}.category-tab:hover{border-color:var(--primary-color);color:var(--primary-color)}.category-tab.active{background:var(--primary-color);color:var(--text-white);border-color:var(--primary-color)}.category-count{opacity:.8;margin-left:6px;font-size:11px}.products-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:30px;display:grid}.product-card{background:var(--bg-color);border-radius:var(--radius-lg);transition:var(--transition);box-shadow:var(--shadow-lg);border:none;flex-direction:column;height:100%;display:flex;overflow:hidden}.product-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-8px)}.product-image{aspect-ratio:4/5;background:var(--bg-color);justify-content:center;align-items:center;padding:24px;display:flex;position:relative;overflow:hidden}.product-image img{object-fit:contain;width:100%;height:100%;transition:var(--transition-slow)}.product-card:hover .product-image img{transform:scale(1.05)}.product-image-wrapper{position:relative;overflow:hidden}.product-hover-panel{opacity:0;visibility:hidden;z-index:10;background:#ffffff40;flex-direction:column;justify-content:center;align-items:center;gap:16px;transition:all .4s cubic-bezier(.4,0,.2,1);display:flex;position:absolute;top:0;bottom:0;right:15px}.product-card:hover .product-hover-panel{opacity:1;visibility:visible}.product-action-icon{width:50px;height:50px;color:var(--primary-color);cursor:pointer;opacity:0;background:#ffffffe6;border:2px solid #4a7c4e33;border-radius:50%;justify-content:center;align-items:center;font-size:18px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;transform:translateY(10px)}.product-card:hover .product-action-icon:first-child{animation:.4s cubic-bezier(.4,0,.2,1) .1s forwards fadeInUp}.product-card:hover .product-action-icon:nth-child(2){animation:.4s cubic-bezier(.4,0,.2,1) .2s forwards fadeInUp}.product-card:hover .product-action-icon:nth-child(3){animation:.4s cubic-bezier(.4,0,.2,1) .3s forwards fadeInUp}.product-action-icon:hover{background:var(--primary-color);color:var(--text-white);border-color:var(--primary-color);transform:translateY(-4px)scale(1.1);box-shadow:0 8px 16px #4a7c4e4d}.product-action-icon.is-favorite{background:var(--primary-color);color:var(--text-white);border-color:var(--primary-color)}.product-action-icon.is-favorite:hover{background:var(--primary-dark);border-color:var(--primary-dark)}.product-info{text-align:center;flex-direction:column;flex-grow:1;justify-content:space-between;padding:0 24px 24px;display:flex}.product-name{font-family:var(--font-body);color:var(--text-color);margin-bottom:8px;font-size:16px;font-weight:600;line-height:1.4}.product-price{color:var(--text-color);margin-bottom:20px;font-size:18px;font-weight:700}.btn-add-cart{background:var(--primary-color);color:var(--text-white);width:100%;transition:var(--transition);border-radius:6px;padding:12px 24px;font-size:13px;font-weight:600}.btn-add-cart:hover{background:var(--primary-dark);transform:scale(1.02)}.loading-state,.error-state,.empty-state{text-align:center;padding:60px 20px}.spinner{border:4px solid var(--border-color);border-top-color:var(--primary-color);border-radius:50%;width:40px;height:40px;margin:0 auto 16px;animation:.8s linear infinite spin}.error-state p{color:#ef4444;font-size:16px}.empty-state p{color:var(--text-light);font-size:16px}.animate-in{animation:.6s ease-out fadeInUp}.footer{background:var(--bg-dark);color:var(--text-white);padding:80px 0 40px}.footer-grid{grid-template-columns:1.5fr 1fr 1.5fr;gap:60px;margin-bottom:60px;display:grid}.footer-brand .footer-logo img{filter:brightness(0)invert();max-height:50px;margin-bottom:24px}.footer-description{color:#ffffffb3;margin-bottom:24px;font-size:14px;line-height:1.8}.footer-social{gap:16px;display:flex}.social-link{width:36px;height:36px;color:var(--text-white);transition:var(--transition);border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;display:flex}.social-link:hover{background:var(--primary-light);border-color:var(--primary-light);transform:translateY(-3px)}.footer-title{font-family:var(--font-body);text-transform:uppercase;letter-spacing:1px;color:var(--text-white);margin-bottom:24px;font-size:16px;font-weight:700}.footer-links li{margin-bottom:12px}.footer-links a{color:#ffffffb3;font-size:14px}.footer-links a:hover{color:var(--primary-light)}.newsletter-form{gap:10px;margin-top:20px;display:flex}.newsletter-input{color:var(--text-white);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:4px;flex-grow:1;padding:12px 16px;font-size:14px}.newsletter-input:focus{border-color:var(--primary-light);outline:none}.btn-newsletter{background:var(--primary-color);color:var(--text-white);transition:var(--transition);border-radius:4px;padding:12px 24px;font-size:14px;font-weight:600}.btn-newsletter:hover{background:var(--primary-light)}.footer-bottom{text-align:center;color:#ffffff80;border-top:1px solid #ffffff0d;padding-top:40px;font-size:13px}@media (width<=1024px){.footer-grid{grid-template-columns:1fr 1fr;gap:40px}.footer-brand{grid-column:1/-1;padding-right:0}}@media (width<=640px){.footer-grid{grid-template-columns:1fr;gap:32px}.footer-main{padding:40px 0 30px}.footer-bottom-content{text-align:center;flex-direction:column}.footer-payment{flex-direction:column;gap:8px}}.product-detail-page{background:var(--bg-light);padding:40px 0 80px}.breadcrumbs{color:var(--text-light);align-items:center;gap:8px;margin-bottom:32px;font-size:14px;display:flex}.breadcrumbs a{color:var(--text-light);transition:var(--transition)}.breadcrumbs a:hover{color:var(--primary-color)}.breadcrumbs .separator{color:var(--border-color)}.breadcrumbs .current{color:var(--text-color);font-weight:500}.product-detail-grid{background:#fff;border-radius:12px;grid-template-columns:1fr 1fr;gap:60px;margin-bottom:60px;padding:40px;display:grid;box-shadow:0 2px 8px #0000000d}.product-detail-image{position:relative}.main-image{aspect-ratio:1;background:var(--bg-light);border-radius:12px;width:100%;position:relative;overflow:hidden}.main-image img{object-fit:cover;width:100%;height:100%}.discount-badge{color:#fff;z-index:2;background:#ef4444;border-radius:24px;padding:8px 16px;font-size:14px;font-weight:600;position:absolute;top:16px;right:16px}.stock-badge{z-index:2;border-radius:24px;padding:8px 16px;font-size:14px;font-weight:600;position:absolute;top:16px;left:16px}.stock-badge.out-of-stock{color:#fff;background:#6b7280}.product-detail-info{flex-direction:column;gap:20px;display:flex}.product-category-badge{background:var(--primary-light);color:#fff;text-transform:uppercase;letter-spacing:.5px;border-radius:20px;width:fit-content;padding:6px 16px;font-size:12px;font-weight:600;display:inline-block}.product-detail-title{font-family:var(--font-heading);color:var(--text-color);margin:0;font-size:36px;font-weight:400;line-height:1.2}.stock-status{margin:8px 0}.status-badge{border-radius:6px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:600;display:inline-flex}.status-badge.in-stock{color:#065f46;background:#d1fae5}.status-badge.low-stock{color:#92400e;background:#fef3c7}.status-badge.out-of-stock{color:#991b1b;background:#fee2e2}.product-short-desc{color:var(--text-light);margin:0;font-size:16px;line-height:1.6}.product-detail-price{border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);align-items:center;gap:16px;padding:20px 0;display:flex}.original-price{color:var(--text-light);font-size:20px;text-decoration:line-through}.current-price{color:var(--primary-color);font-size:32px;font-weight:700}.save-amount{color:#92400e;background:#fef3c7;border-radius:6px;padding:4px 12px;font-size:14px;font-weight:600}.product-meta-info{flex-direction:column;gap:12px;display:flex}.meta-item{color:var(--text-color);align-items:center;gap:12px;font-size:14px;display:flex}.meta-item i{width:20px;color:var(--primary-color);font-size:16px}.product-actions-section{align-items:flex-end;gap:16px;margin-top:8px;display:flex}.quantity-selector{flex-direction:column;gap:8px;display:flex}.quantity-selector label{color:var(--text-color);font-size:14px;font-weight:600}.quantity-controls{border:2px solid var(--border-color);border-radius:8px;align-items:center;display:flex;overflow:hidden}.qty-btn{background:var(--bg-light);width:40px;height:48px;color:var(--text-color);cursor:pointer;transition:var(--transition);border:none;justify-content:center;align-items:center;display:flex}.qty-btn:hover:not(:disabled){background:var(--primary-light);color:#fff}.qty-btn:disabled{opacity:.4;cursor:not-allowed}.qty-input{border:none;border-left:1px solid var(--border-color);border-right:1px solid var(--border-color);text-align:center;width:60px;height:48px;color:var(--text-color);font-size:16px;font-weight:600}.qty-input:focus{outline:none}.btn-add-to-cart{background:var(--primary-color);color:#fff;cursor:pointer;height:56px;transition:var(--transition);border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;gap:12px;font-size:16px;font-weight:600;display:flex}.btn-add-to-cart:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px #8cb33d4d}.btn-add-to-cart:disabled{cursor:not-allowed;background:#9ca3af;transform:none}.product-features{background:var(--bg-light);border-radius:8px;flex-direction:column;gap:12px;margin-top:8px;padding:20px;display:flex}.feature-item{color:var(--text-color);align-items:center;gap:12px;font-size:14px;display:flex}.feature-item i{width:20px;color:var(--primary-color);font-size:16px}.product-description-section{background:#fff;border-radius:12px;margin-bottom:32px;padding:40px;box-shadow:0 2px 8px #0000000d}.section-title{font-family:var(--font-heading);color:var(--text-color);border-bottom:2px solid var(--primary-light);text-transform:uppercase;margin:0 0 24px;padding-bottom:16px;font-size:36px;font-weight:400}.description-content{color:var(--text-color);font-size:15px;line-height:1.8}.description-content p{margin:0 0 16px}.product-details-table{background:#fff;border-radius:12px;padding:40px;box-shadow:0 2px 8px #0000000d}.product-details-table table{border-collapse:collapse;width:100%}.product-details-table tbody tr{border-bottom:1px solid var(--border-color)}.product-details-table tbody tr:last-child{border-bottom:none}.product-details-table td{padding:16px 0}.detail-label{color:var(--text-color);width:200px;font-weight:600}.detail-value{color:var(--text-light)}@media (width<=991px){.header-nav{display:none}.mobile-menu-toggle{display:flex}.mobile-nav{display:block}.mobile-menu-toggle span{background:var(--text-white)}.header-scrolled .mobile-menu-toggle span{background:var(--text-color)}.hero{min-height:500px}.hero-title{margin-bottom:24px;font-size:clamp(32px,10vw,48px)}.hero-content{padding:0 20px}.hero-btn{padding:14px 32px;font-size:13px}}@media (width<=768px){.section-title{font-size:32px}.category-grid{grid-template-columns:1fr 1fr}.product-card:active .product-hover-panel{opacity:1;visibility:visible}.product-action-icon{width:44px;height:44px;font-size:16px}}@media (width<=1024px){.category-grid-premium{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.category-grid-premium{grid-template-columns:1fr}.category-card-premium{height:300px}.category-section-title{font-size:32px}}@media (width<=480px){.header-logo .logo img{max-height:36px}.header-scrolled .header-logo .logo img{max-height:48px}.header-actions{gap:10px}.hero-title{font-size:28px}}@media (width<=1024px){.product-detail-grid{grid-template-columns:1fr;gap:40px;padding:32px}.product-detail-title{font-size:28px}}@media (width<=640px){.product-detail-page{padding:24px 0 60px}.product-detail-grid{gap:32px;padding:24px}.product-detail-title{font-size:24px}.current-price{font-size:28px}.product-actions-section{flex-direction:column;align-items:stretch}.quantity-selector{width:100%}.product-description-section,.product-details-table{padding:24px}.section-title{font-size:22px}.detail-label{width:140px;font-size:14px}.detail-value{font-size:14px}}
