:root{--primary:#2D7A3A;--primary-light:#4CAF50;--primary-dark:#1B5E20;--primary-glow:rgba(45, 122, 58, 0.15);--accent:#FF8C00;--accent-light:#FFA726;--accent-warm:#FF6D00;--bg-cream:#FFF8F0;--bg-light:#F7FAF4;--bg-white:#FFFFFF;--text-dark:#1A1A2E;--text-body:#4A4A5A;--text-light:#7A7A8A;--text-white:#FFFFFF;--border:#E8E8EE;--border-light:#F0F0F5;--shadow-sm:0 2px 8px rgba(0,0,0,0.04);--shadow-md:0 8px 30px rgba(0,0,0,0.07);--shadow-lg:0 12px 40px rgba(0,0,0,0.1);--shadow-xl:0 25px 60px rgba(0,0,0,0.14);--shadow-card:0 4px 20px rgba(0,0,0,0.06),0 1px 3px rgba(0,0,0,0.04);--shadow-card-hover:0 20px 50px rgba(0,0,0,0.12),0 4px 12px rgba(0,0,0,0.06);--radius-sm:10px;--radius-md:14px;--radius-lg:22px;--radius-xl:30px;--radius-2xl:40px;--transition:all 0.35s cubic-bezier(0.4, 0, 0.2, 1);--transition-slow:all 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94)}*,::after,::before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px;-webkit-text-size-adjust:100%;overflow-x:hidden}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;color:var(--text-body);background:var(--bg-white);line-height:1.65;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5{font-family:'Playfair Display',Georgia,serif;color:var(--text-dark);line-height:1.2;letter-spacing:-.01em}img{max-width:100%;height:auto;display:block}a{-webkit-tap-highlight-color:transparent}.business-image img,.gallery-item img,.product-image img,.promo-image img{filter:brightness(1.04) contrast(1.06) saturate(1.18);transition:filter .6s cubic-bezier(.25, .46, .45, .94),transform .6s cubic-bezier(.25, .46, .45, .94);-webkit-backface-visibility:hidden;backface-visibility:hidden}.about-img-wrapper img{filter:brightness(1.04) contrast(1.06) saturate(1.18);-webkit-backface-visibility:hidden;backface-visibility:hidden}.product-image::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 50%,rgba(0,0,0,.05) 100%);pointer-events:none;z-index:1;border-radius:inherit}.product-card:hover .product-image img{filter:brightness(1.08) contrast(1.08) saturate(1.28);transform:scale(1.05)}.gallery-item img{filter:brightness(1) contrast(1.06) saturate(.92)}.gallery-item:hover img,.gallery-item:hover video{filter:brightness(1.06) contrast(1.1) saturate(1.3);transform:scale(1.06)}.gallery-item::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.18) 100%);opacity:0;transition:opacity .4s ease;pointer-events:none;border-radius:inherit}.gallery-item:hover::after{opacity:1}.about-img-wrapper img{filter:brightness(1.04) contrast(1.05) saturate(1.12)}.business-image img{filter:brightness(1.02) contrast(1.08) saturate(1.08)}.business-image:hover img{filter:brightness(1.06) contrast(1.1) saturate(1.18);transform:scale(1.02)}.promo-image img{filter:brightness(1.05) contrast(1.08) saturate(1.22)}.promo-banner:hover .promo-image img{transform:scale(1.05);filter:brightness(1.08) contrast(1.1) saturate(1.3)}.container{max-width:1200px;margin:0 auto;padding:0 24px}.highlight{color:var(--primary)}.highlight-light{color:var(--accent-light)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 34px;border-radius:var(--radius-sm);font-family:Inter,sans-serif;font-weight:600;font-size:.92rem;text-decoration:none;border:none;cursor:pointer;transition:var(--transition);gap:8px;letter-spacing:.01em}.btn-primary{background:linear-gradient(135deg,var(--primary) 0,var(--primary-light) 100%);color:var(--text-white);box-shadow:0 4px 16px rgba(45,122,58,.25),0 1px 3px rgba(45,122,58,.15)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 28px rgba(45,122,58,.35),0 2px 6px rgba(45,122,58,.2)}.btn-outline-light{background:rgba(255,255,255,.12);color:#fff;border:2px solid rgba(255,255,255,.35);backdrop-filter:blur(8px)}.btn-outline-light:hover{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.7)}.btn-full{width:100%}.btn-nav{padding:10px 24px;font-size:.85rem}.btn-whatsapp{display:inline-flex;align-items:center;gap:8px;padding:13px 26px;background:#25d366;color:#fff;border-radius:var(--radius-sm);font-weight:600;font-size:.9rem;text-decoration:none;transition:var(--transition);box-shadow:0 4px 14px rgba(37,211,102,.25)}.btn-whatsapp:hover{background:#1da851;transform:translateY(-2px);box-shadow:0 6px 20px rgba(37,211,102,.35)}.btn-icon{width:18px;height:18px}.inline-icon{width:16px;height:16px;vertical-align:-2px;margin-right:4px}.section-badge{display:inline-block;padding:7px 18px;background:var(--primary-glow);color:var(--primary);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:2px;border-radius:50px;margin-bottom:18px}.section-header{text-align:center;margin-bottom:60px}.section-header h2{font-size:clamp(1.8rem, 4vw, 2.8rem);margin-bottom:16px}.section-header p{color:var(--text-light);font-size:1.05rem;max-width:520px;margin:0 auto;line-height:1.7}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(255,255,255,.92);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid transparent;transition:var(--transition);padding:14px 0}.navbar.scrolled{border-bottom-color:var(--border-light);box-shadow:0 1px 20px rgba(0,0,0,.06);padding:8px 0}.nav-container{display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:10px;text-decoration:none;z-index:1100}.logo-img{height:48px;width:auto;transition:var(--transition);image-rendering:-webkit-optimize-contrast;image-rendering:smooth;-webkit-backface-visibility:hidden;backface-visibility:hidden}.navbar.scrolled .logo-img{height:40px}.nav-links{display:flex;list-style:none;gap:2px}.nav-links a{text-decoration:none;color:var(--text-body);font-weight:500;font-size:.88rem;padding:8px 18px;border-radius:var(--radius-sm);transition:var(--transition);letter-spacing:.01em}.nav-links a:hover{color:var(--primary);background:var(--primary-glow)}.nav-actions{display:flex;align-items:center;gap:12px;z-index:1100}.menu-toggle{display:none;flex-direction:column;gap:6px;background:0 0;border:none;cursor:pointer;padding:12px;z-index:1100;position:relative;min-width:48px;min-height:48px;align-items:center;justify-content:center}.menu-toggle span{display:block;width:26px;height:2px;background:var(--text-dark);border-radius:3px;transition:all .4s cubic-bezier(.4, 0, .2, 1);transform-origin:center}.mobile-menu-overlay{position:fixed;inset:0;background:rgba(255,255,255,.97);backdrop-filter:blur(30px);-webkit-backdrop-filter:blur(30px);z-index:1050;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all .4s cubic-bezier(.4, 0, .2, 1)}.mobile-menu-overlay.active{opacity:1;visibility:visible}.mobile-menu-overlay .mobile-nav{list-style:none;text-align:center;display:flex;flex-direction:column;gap:6px;transform:translateY(20px);opacity:0;transition:all .5s cubic-bezier(.4, 0, .2, 1) .1s}.mobile-menu-overlay.active .mobile-nav{transform:translateY(0);opacity:1}.mobile-menu-overlay .mobile-nav a{display:block;text-decoration:none;font-family:'Playfair Display',Georgia,serif;font-size:2rem;font-weight:600;color:var(--text-dark);padding:14px 40px;border-radius:var(--radius-md);transition:var(--transition);letter-spacing:-.01em}.mobile-menu-overlay .mobile-nav a:active,.mobile-menu-overlay .mobile-nav a:hover{color:var(--primary);background:var(--primary-glow)}.mobile-menu-overlay .mobile-nav-footer{margin-top:32px;padding-top:32px;border-top:1px solid var(--border)}.mobile-menu-overlay .mobile-nav-footer a{font-family:Inter,sans-serif;font-size:.9rem;font-weight:500;color:var(--text-light)}.menu-toggle.active span:first-child{transform:rotate(45deg) translate(5.5px,5.5px)}.menu-toggle.active span:nth-child(2){opacity:0;transform:scaleX(0)}.menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(5.5px,-5.5px)}.hero{position:relative;min-height:100vh;display:flex;align-items:center;overflow:hidden;padding-top:80px}.hero-bg-image{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;filter:brightness(1.06) saturate(1.22) contrast(1.04);transform:scale(1.05);animation:heroZoom 25s ease-in-out infinite alternate}@keyframes heroZoom{0%{transform:scale(1.05)}100%{transform:scale(1.12)}}.hero-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(26,26,46,.75) 0,rgba(27,94,32,.5) 55%,rgba(255,140,0,.15) 100%),linear-gradient(180deg,rgba(0,0,0,.12) 0,transparent 25%,transparent 75%,rgba(0,0,0,.25) 100%)}.hero-content{position:relative;z-index:2;max-width:680px}.hero-badge{display:inline-flex;align-items:center;padding:9px 22px;background:rgba(255,255,255,.12);color:#fff;font-weight:600;font-size:.82rem;border-radius:50px;margin-bottom:28px;border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(8px);letter-spacing:.5px}.hero-text h1{font-size:clamp(2.5rem, 6vw, 4.2rem);margin-bottom:22px;color:#fff;line-height:1.08;letter-spacing:-.02em}.hero-subtitle{font-size:1.12rem;color:rgba(255,255,255,.82);margin-bottom:40px;line-height:1.75;max-width:540px}.hero-buttons{display:flex;gap:14px;margin-bottom:52px;flex-wrap:wrap}.hero-stats{display:flex;gap:36px;flex-wrap:wrap}.stat{display:flex;align-items:center;gap:12px}.stat-icon{width:24px;height:24px;color:var(--accent-light)}.stat-number{display:block;font-family:'Playfair Display',serif;font-size:1.1rem;font-weight:700;color:#fff}.stat-label{font-size:.72rem;color:rgba(255,255,255,.6);text-transform:uppercase;letter-spacing:.5px}.hero-wave{position:absolute;bottom:-1px;left:0;right:0;line-height:0}.hero-wave svg{width:100%;height:80px}.usp-banner{padding:56px 0;background:linear-gradient(135deg,var(--primary-dark) 0,var(--primary) 100%);color:#fff}.usp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.usp-item{text-align:center;padding:8px}.usp-icon{margin-bottom:14px}.usp-lucide{width:38px;height:38px;stroke-width:1.5;opacity:.9}.usp-item h4{color:#fff;font-family:Inter,sans-serif;font-size:.95rem;font-weight:600;margin-bottom:6px}.usp-item p{font-size:.83rem;opacity:.7;line-height:1.5}.products-section{padding:100px 0;background:var(--bg-white)}.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.product-grid-2{grid-template-columns:repeat(2,1fr)}.product-card{background:var(--bg-white);border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden;transition:var(--transition);box-shadow:var(--shadow-sm)}.product-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-card-hover);border-color:transparent}.product-image{position:relative;overflow:hidden;aspect-ratio:1;background:linear-gradient(145deg,var(--bg-light) 0,var(--bg-cream) 100%)}.product-card-wide .product-image{aspect-ratio:4/3}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.25, .46, .45, .94)}.product-card:hover .product-image img{transform:scale(1.05)}.product-badge{position:absolute;top:14px;left:14px;padding:6px 14px;border-radius:50px;font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px;z-index:2}.badge-sale{background:#fff3e0;color:var(--accent-warm)}.badge-new{background:#e3f2fd;color:#1565c0}.badge-bio{background:#e8f5e9;color:var(--primary)}.product-info{padding:22px}.product-info h4{font-family:Inter,sans-serif;font-size:1.02rem;font-weight:600;margin-bottom:6px;color:var(--text-dark)}.product-desc{font-size:.84rem;color:var(--text-light);margin-bottom:18px;line-height:1.55}.product-bottom{display:flex;align-items:center;justify-content:space-between}.product-price{font-family:'Playfair Display',serif;font-size:1.35rem;font-weight:700;color:var(--text-dark)}.btn-cart{width:46px;height:46px;border-radius:50%;border:none;background:linear-gradient(135deg,var(--primary),var(--primary-light));color:#fff;display:flex;align-items:center;justify-content:center;transition:var(--transition);text-decoration:none;box-shadow:0 3px 12px rgba(45,122,58,.2);cursor:pointer}.btn-cart i{width:20px;height:20px}.btn-cart:hover{transform:scale(1.12);box-shadow:0 6px 20px rgba(45,122,58,.35)}.btn-cart.added{background:var(--accent);transform:scale(1.2);box-shadow:0 6px 20px rgba(255,140,0,.35)}.products-toolbar{display:flex;gap:12px;align-items:center;justify-content:center;margin-bottom:32px;flex-wrap:wrap}.product-search-wrapper{position:relative;flex:1;max-width:480px}.product-search-wrapper .search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);width:20px;height:20px;color:var(--text-light);pointer-events:none}.product-search{width:100%;padding:14px 44px 14px 48px;border:2px solid var(--border);border-radius:50px;font-family:Inter,sans-serif;font-size:16px;background:var(--bg-white);transition:var(--transition);outline:0;color:var(--text-dark)}.product-search:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-glow)}.product-search::placeholder{color:var(--text-light)}.search-clear{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:var(--border);border:none;width:28px;height:28px;border-radius:50%;font-size:18px;line-height:1;cursor:pointer;color:var(--text-light);display:flex;align-items:center;justify-content:center;transition:var(--transition)}.search-clear:hover{background:var(--text-light);color:#fff}.view-toggle{display:flex;gap:4px;background:var(--bg-light);border-radius:12px;padding:4px}.view-btn{width:44px;height:44px;border:none;background:0 0;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-light);transition:var(--transition)}.view-btn.active{background:var(--bg-white);color:var(--primary);box-shadow:var(--shadow-sm)}.view-btn:hover:not(.active){color:var(--text-dark)}.search-results-info{text-align:center;padding:12px 0 24px;font-size:15px;color:var(--text-light)}.search-results-info strong{color:var(--text-dark)}.product-accordion{display:flex;flex-direction:column;gap:16px}.category-accordion{border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-white);box-shadow:var(--shadow-sm);transition:var(--transition)}.category-accordion.open{box-shadow:var(--shadow-card)}.category-accordion-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;cursor:pointer;user-select:none;background:var(--bg-white);border:none;width:100%;text-align:left;font-family:Inter,sans-serif;transition:background .2s}.category-accordion-header:hover{background:var(--bg-light)}.category-accordion-header-left{display:flex;align-items:center;gap:14px}.category-accordion-header h3{font-family:'Playfair Display',serif;font-size:1.3rem;font-weight:700;color:var(--text-dark);margin:0}.category-count{background:var(--bg-light);color:var(--text-light);font-size:13px;font-weight:600;padding:4px 12px;border-radius:50px}.category-accordion.open .category-count{background:var(--primary-glow);color:var(--primary)}.category-accordion-chevron{width:24px;height:24px;color:var(--text-light);transition:transform .3s ease;flex-shrink:0}.category-accordion.open .category-accordion-chevron{transform:rotate(180deg);color:var(--primary)}.category-accordion-body{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.4, 0, .2, 1)}.category-accordion.open .category-accordion-body{max-height:5000px}.category-accordion-inner{padding:0 24px 24px}.accordion-product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.accordion-product-grid.list-view{grid-template-columns:1fr;gap:12px}.accordion-product-grid.list-view .product-card{display:flex;flex-direction:row;align-items:center}.accordion-product-grid.list-view .product-image{width:100px;min-width:100px;aspect-ratio:1;border-radius:var(--radius-lg) 0 0 var(--radius-lg)}.accordion-product-grid.list-view .product-info{flex:1;display:flex;align-items:center;gap:16px;padding:16px 20px}.accordion-product-grid.list-view .product-info h4{flex:1;margin-bottom:0}.accordion-product-grid.list-view .product-desc{display:none}.accordion-product-grid.list-view .product-bottom{gap:12px;flex-shrink:0}.category-accordion-sale{border:2px solid var(--accent);background:linear-gradient(135deg,#fff8f0 0,#fff3e0 100%)}.category-accordion-sale.open{box-shadow:0 8px 30px rgba(255,140,0,.12)}.category-accordion-header-sale{background:0 0}.category-accordion-header-sale h3{color:var(--accent-warm)}.category-accordion-header-sale:hover{background:rgba(255,140,0,.06)}.category-count-sale{background:var(--accent)!important;color:#fff!important}.product-price-old{font-family:Inter,sans-serif;font-size:.95rem;font-weight:500;color:var(--text-light);text-decoration:line-through;margin-right:8px}.product-price-sale{color:var(--accent-warm)!important}.category-accordion-happy{border:2px solid #ff8c00;background:linear-gradient(135deg,#fffde7 0,#fff8e1 100%)}.category-accordion-happy.open{box-shadow:0 8px 30px rgba(255,140,0,.1)}.category-accordion-header-happy{background:0 0}.happy-hour-badge{background:linear-gradient(135deg,#ff8c00,#ff6d00);color:#fff;font-size:12px;font-weight:700;padding:5px 14px;border-radius:50px;animation:happyPulse 2s ease-in-out infinite;white-space:nowrap}@keyframes happyPulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.85;transform:scale(1.04)}}.happy-hour-banner{padding:14px 24px;background:linear-gradient(135deg,#fff3e0,#ffe0b2);font-size:14px;color:#e65100;line-height:1.5;border-top:1px solid rgba(255,140,0,.15)}.happy-hour-banner strong{color:#bf360c}.product-card-custom{grid-column:1/-1;overflow:hidden}.product-card-custom .product-image{display:none}.custom-banner-img{overflow:hidden;border-radius:var(--radius-md) var(--radius-md) 0 0;height:250px}.custom-banner-img img{width:100%;height:100%;display:block;object-fit:cover}.custom-preview-img{overflow:hidden;border-radius:var(--radius-md) var(--radius-md) 0 0;max-height:300px}.custom-preview-img img{width:100%;height:300px;object-fit:cover;display:block;transition:var(--transition)}.product-info-custom{padding:24px!important}.product-card-custom h4{font-size:1.15rem;margin-bottom:4px}.custom-options{display:flex;flex-wrap:wrap;gap:20px;margin:16px 0 20px}.custom-option-group{flex:1;min-width:200px}.custom-option-label{display:block;font-weight:600;font-size:14px;color:var(--text-dark);margin-bottom:10px}.custom-select{width:100%;padding:12px 16px;border:2px solid var(--border);border-radius:12px;font-family:Inter,sans-serif;font-size:16px;background:var(--bg-white);color:var(--text-dark);cursor:pointer;transition:var(--transition);outline:0;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1.5L6 6.5L11 1.5' stroke='%237A7A8A' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:38px}.custom-select:focus{border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-glow)}.custom-checkboxes{display:flex;flex-wrap:wrap;gap:8px}.custom-checkbox{display:flex;align-items:center;cursor:pointer;user-select:none}.custom-checkbox input{display:none}.custom-checkbox-label{display:inline-flex;align-items:center;gap:4px;padding:8px 16px;border:2px solid var(--border);border-radius:50px;font-size:13px;font-weight:500;color:var(--text-body);transition:var(--transition);background:var(--bg-white)}.custom-checkbox input:checked+.custom-checkbox-label{border-color:var(--primary);background:var(--primary-glow);color:var(--primary-dark);font-weight:600}.custom-extra-price{font-size:12px;color:var(--text-light);margin-left:2px}.custom-checkbox input:checked+.custom-checkbox-label .custom-extra-price{color:var(--primary)}.product-card-custom .product-bottom{border-top:1px solid var(--border-light);padding-top:16px;margin-top:4px}.custom-total-price{font-size:1.5rem!important}.accordion-product-grid.list-view .product-card-custom{flex-direction:column}.accordion-product-grid.list-view .product-card-custom .product-info{flex-direction:column;align-items:stretch}.accordion-product-grid.list-view .product-card-custom .product-desc{display:block}.no-search-results{text-align:center;padding:60px 20px;color:var(--text-light)}.no-search-results svg{margin-bottom:16px;opacity:.4}.no-search-results p{font-size:16px}.cart-btn{position:relative;background:0 0;border:none;cursor:pointer;padding:10px;color:var(--text-dark);transition:var(--transition);min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.cart-btn:hover{color:var(--primary)}.cart-count{position:absolute;top:0;right:0;width:19px;height:19px;background:var(--accent);color:#fff;font-size:.62rem;font-weight:700;border-radius:50%;display:none;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(255,140,0,.3)}.cart-overlay{position:fixed;inset:0;background:rgba(0,0,0,.35);backdrop-filter:blur(4px);z-index:1100;opacity:0;visibility:hidden;transition:opacity .35s ease,visibility .35s ease}.cart-overlay.open{opacity:1;visibility:visible}.cart-sidebar{position:fixed;top:0;right:0;width:420px;max-width:92vw;height:100vh;height:100dvh;background:var(--bg-white);z-index:1200;display:flex;flex-direction:column;box-shadow:-12px 0 40px rgba(0,0,0,.12);transform:translateX(100%);transition:transform .4s cubic-bezier(.4, 0, .2, 1)}.cart-sidebar.open{transform:translateX(0)}.cart-header{display:flex;align-items:center;justify-content:space-between;padding:22px 24px;border-bottom:1px solid var(--border-light)}.cart-header h3{font-family:Inter,sans-serif;font-size:1.02rem;font-weight:600;display:flex;align-items:center;gap:10px}.cart-close{background:0 0;border:none;cursor:pointer;color:var(--text-light);padding:10px;transition:var(--transition);border-radius:50%;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.cart-close:hover{color:var(--text-dark);background:var(--bg-light)}.cart-items{flex:1;overflow-y:auto;padding:16px 24px;-webkit-overflow-scrolling:touch}.cart-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--text-light);font-size:.9rem}.cart-item{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--border-light)}.cart-item-img{width:60px;height:60px;object-fit:cover;border-radius:var(--radius-sm);background:var(--bg-light)}.cart-item-info{flex:1;display:flex;flex-direction:column;gap:3px}.cart-item-name{font-weight:600;font-size:.88rem;color:var(--text-dark)}.cart-item-price{font-weight:700;font-size:.85rem;color:var(--primary)}.cart-item-qty{display:flex;align-items:center;gap:8px;margin-top:6px}.qty-btn{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--border);background:var(--bg-white);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:600;color:var(--text-dark);transition:var(--transition)}.qty-btn:hover{border-color:var(--primary);color:var(--primary);background:var(--primary-glow)}.cart-item-qty span{font-size:.85rem;font-weight:600;min-width:20px;text-align:center}.cart-item-remove{background:0 0;border:none;cursor:pointer;color:var(--text-light);padding:10px;transition:var(--transition);flex-shrink:0;border-radius:50%;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.cart-item-remove:hover{color:#e53935;background:#fff0f0}.cart-footer{padding:22px 24px;border-top:1px solid var(--border-light);background:var(--bg-light)}.cart-subtotal{display:flex;justify-content:space-between;font-weight:700;font-size:1.05rem;color:var(--text-dark);margin-bottom:6px}.cart-shipping-note{font-size:.8rem;color:var(--text-light);margin-bottom:18px}.cart-footer .btn{gap:8px}.promo-banner{margin-top:64px;background:linear-gradient(135deg,var(--bg-cream) 0,#fff3e0 100%);border-radius:var(--radius-xl);overflow:hidden;border:1px solid #ffe0b2;box-shadow:var(--shadow-card);transition:var(--transition)}.promo-banner:hover{box-shadow:var(--shadow-lg)}.promo-content{display:grid;grid-template-columns:260px 1fr;align-items:center}.promo-image{overflow:hidden;position:relative;height:100%}.promo-image img{width:100%;height:100%;object-fit:cover;min-height:240px;transition:transform .6s ease}.promo-text{padding:40px 44px}.promo-label{display:inline-flex;align-items:center;font-size:.78rem;font-weight:700;color:var(--accent-warm);text-transform:uppercase;letter-spacing:1.5px;margin-bottom:10px}.promo-text h3{font-size:1.45rem;margin-bottom:10px}.promo-text p{color:var(--text-light);margin-bottom:18px;line-height:1.6}.promo-price{font-family:'Playfair Display',serif;font-size:2rem;font-weight:700;color:var(--accent-warm);margin-bottom:22px}.business{padding:100px 0;background:var(--bg-light)}.business-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}.business-image{border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-xl);position:relative}.business-image::after{content:'';position:absolute;inset:0;border-radius:var(--radius-xl);box-shadow:inset 0 0 50px rgba(0,0,0,.06);pointer-events:none}.business-image img{width:100%;height:auto;transition:var(--transition-slow)}.business-lead{font-size:1.08rem;color:var(--text-dark);font-weight:500;margin:18px 0 28px;line-height:1.7}.business-grid-reverse{direction:rtl}.business-grid-reverse>*{direction:ltr}.schools-section{background:var(--bg-white)}.schools-hero-image{border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-xl);margin-bottom:48px;height:500px}.schools-hero-image img{width:100%;height:100%;object-fit:cover;object-position:center 30%;display:block}.ijsrollen-section{background:var(--bg-cream)}.price-table{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:34px}.price-row{display:flex;justify-content:space-between;align-items:center;padding:12px 18px;background:var(--bg-white);border-radius:var(--radius-sm);font-size:.88rem;border:1px solid var(--border-light);transition:var(--transition)}.price-row:hover{border-color:var(--primary-glow);box-shadow:0 2px 8px var(--primary-glow)}.price-amount{font-weight:700;color:var(--primary)}.gallery{padding:90px 0;background:var(--bg-white)}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:210px;gap:14px}.gallery-item{border-radius:var(--radius-md);overflow:hidden;position:relative;cursor:pointer;box-shadow:var(--shadow-sm)}.gallery-item img,.gallery-item video{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.25, .46, .45, .94),filter .6s ease}.business-video{border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-xl)}.business-video video{width:100%;height:auto;display:block;border-radius:var(--radius-xl)}.gallery-item-large{grid-column:span 2;grid-row:span 2}.gallery-item::before{content:'';position:absolute;inset:0;border:2px solid rgba(255,255,255,0);border-radius:var(--radius-md);z-index:2;transition:border-color .4s ease;pointer-events:none}.gallery-item:hover::before{border-color:rgba(255,255,255,.35)}.about{padding:100px 0;background:var(--bg-light)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about-images{position:relative}.about-img-wrapper{border-radius:var(--radius-xl);overflow:hidden}.about-img-wrapper img{width:100%;height:auto;display:block}.img-1{box-shadow:var(--shadow-lg)}.img-1 img{height:400px;object-fit:cover}.img-2{position:absolute;bottom:-28px;right:-28px;width:200px;box-shadow:var(--shadow-xl);border:5px solid #fff;border-radius:var(--radius-lg)}.img-2 img{height:180px;object-fit:cover}.about-experience{position:absolute;top:-18px;left:-18px;background:linear-gradient(135deg,var(--accent),var(--accent-light));color:#fff;padding:20px 26px;border-radius:var(--radius-md);box-shadow:0 8px 30px rgba(255,140,0,.3);text-align:center;display:flex;align-items:center;gap:12px}.exp-icon{width:28px;height:28px}.exp-text{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;line-height:1.4;text-align:left;font-weight:600}.about-lead{font-size:1.08rem;color:var(--text-dark);font-weight:500;margin:20px 0;line-height:1.7}.about-content p{margin-bottom:16px;line-height:1.7}.about-features{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:30px 0 38px}.about-feature{display:flex;align-items:center;gap:10px;font-weight:500;font-size:.88rem;padding:8px 0}.feature-check-icon{width:20px;height:20px;color:var(--primary);flex-shrink:0}.reviews{padding:90px 0;background:var(--bg-white)}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:36px}.review-card{background:var(--bg-light);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:32px;box-shadow:var(--shadow-sm);transition:var(--transition);text-align:left;position:relative}.review-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover);border-color:transparent}.review-card::before{content:'\201C';font-family:'Playfair Display',Georgia,serif;font-size:4rem;color:var(--primary);opacity:.15;position:absolute;top:10px;left:20px;line-height:1}.review-stars{display:flex;gap:2px;margin-bottom:14px}.review-stars svg{width:16px;height:16px;fill:var(--accent);stroke:none}.review-text{color:var(--text-body);font-size:.9rem;line-height:1.7;margin-bottom:18px;overflow:hidden;transition:max-height .4s ease;max-height:4.8em}.review-text.expanded{max-height:600px}.review-toggle{background:0 0;border:none;color:var(--primary);font-family:Inter,sans-serif;font-size:.82rem;font-weight:600;cursor:pointer;padding:0;margin-bottom:16px;display:none}.review-toggle:hover{color:var(--primary-light)}.review-toggle.visible{display:inline-block}.review-footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border-light);padding-top:14px}.review-author{font-weight:600;font-size:.88rem;color:var(--text-dark)}.review-date{font-size:.78rem;color:var(--text-light)}.reviews-cta{text-align:center}.reviews-cta a{display:inline-flex;align-items:center;gap:8px;color:var(--primary);font-weight:600;font-size:.92rem;text-decoration:none;transition:var(--transition)}.reviews-cta a:hover{color:var(--primary-light);gap:12px}.delivery-info{padding:90px 0;background:var(--bg-white)}.delivery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.delivery-card{text-align:center;padding:44px 30px;border:1px solid var(--border-light);border-radius:var(--radius-xl);transition:var(--transition);background:var(--bg-white);box-shadow:var(--shadow-sm)}.delivery-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-card-hover);border-color:transparent}.delivery-icon{width:48px;height:48px;color:var(--primary);margin-bottom:18px;stroke-width:1.5}.delivery-card h4{font-family:Inter,sans-serif;font-size:1.02rem;font-weight:600;margin-bottom:10px}.delivery-card p{font-size:.88rem;color:var(--text-light);line-height:1.65}.contact{padding:100px 0;background:var(--bg-light)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}.contact-info h2{font-size:clamp(1.6rem, 3vw, 2.2rem);margin-bottom:16px}.contact-info>p{color:var(--text-light);margin-bottom:36px;line-height:1.7}.contact-details{display:flex;flex-direction:column;gap:22px;margin-bottom:30px}.contact-item{display:flex;gap:16px;align-items:flex-start}.contact-icon{width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:var(--bg-white);border-radius:var(--radius-sm);flex-shrink:0;box-shadow:var(--shadow-sm)}.contact-lucide{width:22px;height:22px;color:var(--primary)}.contact-item strong{display:block;font-family:Inter,sans-serif;font-size:.85rem;color:var(--text-dark);margin-bottom:2px}.contact-item p{font-size:.88rem;color:var(--text-light);line-height:1.5}.contact-item a{color:var(--primary);text-decoration:none}.contact-item a:hover{text-decoration:underline}.contact-form-wrapper{background:var(--bg-white);border-radius:var(--radius-xl);padding:40px;box-shadow:var(--shadow-md);border:1px solid var(--border-light)}.form-group{margin-bottom:20px}.form-group label{display:block;font-weight:600;font-size:.84rem;color:var(--text-dark);margin-bottom:8px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:14px 18px;border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:Inter,sans-serif;font-size:16px;color:var(--text-dark);transition:var(--transition);background:var(--bg-white);appearance:none}.form-group select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%237A7A8A' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:0;border-color:var(--primary);box-shadow:0 0 0 4px var(--primary-glow)}.form-group textarea{resize:vertical;min-height:100px}.footer{background:var(--text-dark);color:rgba(255,255,255,.7);padding:64px 0 0}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.5fr;gap:44px;padding-bottom:44px}.footer-logo-img{height:40px}.footer-brand p{margin-top:18px;font-size:.88rem;line-height:1.75}.footer-social{display:flex;gap:10px;margin-top:22px}.footer-social a{width:42px;height:42px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(255,255,255,.08);color:rgba(255,255,255,.65);transition:var(--transition)}.footer-social a i{width:18px;height:18px}.footer-social a svg{width:18px;height:18px}.footer-social a:hover{background:var(--primary);color:#fff;transform:translateY(-2px)}.footer-contact h4,.footer-links h4{color:#fff;font-family:Inter,sans-serif;font-size:.92rem;font-weight:600;margin-bottom:22px}.footer-contact ul,.footer-links ul{list-style:none;display:flex;flex-direction:column;gap:12px}.footer-links a{color:rgba(255,255,255,.55);text-decoration:none;font-size:.88rem;transition:var(--transition)}.footer-links a:hover{color:#fff;padding-left:4px}.footer-contact li{display:flex;align-items:center;gap:10px;font-size:.88rem}.footer-icon{width:16px;height:16px;flex-shrink:0;opacity:.5}.footer-contact a{color:rgba(255,255,255,.55);text-decoration:none}.footer-contact a:hover{color:#fff}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding:24px 0;border-top:1px solid rgba(255,255,255,.06);font-size:.78rem}.footer-credit a{color:var(--accent-light);text-decoration:none;font-weight:600}.footer-credit a:hover{text-decoration:underline}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.animate-hidden{opacity:0}.animate-in{animation:fadeInUp .6s ease-out forwards}@media (max-width:1024px){.container{padding:0 22px}.product-grid{grid-template-columns:repeat(2,1fr);gap:18px}.accordion-product-grid{grid-template-columns:repeat(2,1fr);gap:18px}.accordion-product-grid.list-view .product-image{width:80px;min-width:80px}.business-grid{grid-template-columns:1fr;gap:44px}.business-grid-reverse{direction:ltr}.about-grid{grid-template-columns:1fr;gap:50px}.contact-grid{grid-template-columns:1fr;gap:40px}.footer-grid{grid-template-columns:1fr 1fr;gap:32px}.usp-grid{grid-template-columns:repeat(2,1fr);gap:20px}.gallery-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:190px}.gallery-item-large{grid-column:span 2}.price-table{grid-template-columns:1fr}.promo-content{grid-template-columns:220px 1fr}.about,.business,.contact,.products-section{padding:80px 0}.section-header{margin-bottom:44px}.business-image{max-width:580px;margin:0 auto}.about-images{max-width:440px;margin:0 auto}.hero{min-height:auto;padding-top:100px;padding-bottom:80px}}@media (max-width:900px){.nav-links{display:none!important}.menu-toggle{display:flex}.btn-nav{display:none}}@media (max-width:768px){.container{padding:0 18px}.logo-img{height:56px}.navbar.scrolled .logo-img{height:46px}.footer-logo-img{height:48px}.hero{min-height:auto;padding:130px 0 90px}.hero-text h1{font-size:2.4rem}.hero-subtitle{font-size:1rem;margin-bottom:30px}.hero-stats{flex-direction:column;gap:14px}.hero-buttons{gap:12px}.hero-wave svg{height:50px}.product-grid{grid-template-columns:1fr 1fr;gap:14px}.product-grid-2{grid-template-columns:1fr}.product-info{padding:16px}.product-info h4{font-size:.92rem}.product-desc{font-size:.8rem;margin-bottom:12px}.product-price{font-size:1.18rem}.promo-content{grid-template-columns:1fr}.promo-image img{min-height:200px;max-height:260px}.promo-text{padding:28px}.promo-text h3{font-size:1.25rem}.promo-price{font-size:1.6rem}.gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:170px;gap:10px}.gallery-item-large{grid-column:span 2;grid-row:span 2}.gallery{padding:64px 0}.reviews-grid{grid-template-columns:1fr;gap:16px}.reviews{padding:64px 0}.delivery-grid{grid-template-columns:1fr;gap:14px}.delivery-card{padding:30px 24px}.delivery-info{padding:64px 0}.usp-banner{padding:40px 0}.usp-grid{grid-template-columns:1fr 1fr;gap:16px}.usp-lucide{width:32px;height:32px}.usp-item h4{font-size:.88rem}.usp-item p{font-size:.78rem}.about-images{max-width:380px;margin:0 auto}.about-features{grid-template-columns:1fr}.img-1 img{height:300px}.img-2{width:155px;right:-14px;bottom:-18px}.img-2 img{height:145px}.about-experience{top:-14px;left:-10px;padding:14px 18px}.exp-icon{width:22px;height:22px}.exp-text{font-size:.7rem}.about,.business,.contact,.products-section{padding:60px 0}.section-header{margin-bottom:36px}.section-header h2{font-size:1.65rem}.section-header p{font-size:.92rem}.contact-form-wrapper{padding:28px}.form-group input,.form-group select,.form-group textarea{font-size:16px}.footer-grid{grid-template-columns:1fr;gap:28px}.footer{padding:44px 0 0}.footer-bottom{flex-direction:column;gap:8px;text-align:center}.cart-sidebar{width:100%;max-width:100vw}.btn{padding:15px 28px;min-height:50px}.btn-cart{width:48px;height:48px}.qty-btn{width:34px;height:34px;font-size:1rem}.cart-item-remove{padding:10px}}@media (max-width:480px){.container{padding:0 16px}.hero{padding:120px 0 70px}.hero-text h1{font-size:2rem}.hero-subtitle{font-size:.92rem;line-height:1.65}.hero-badge{font-size:.72rem;padding:7px 16px}.hero-buttons{flex-direction:column}.hero-buttons .btn{width:100%;justify-content:center}.hero-stats{gap:12px}.stat-number{font-size:1rem}.stat-label{font-size:.75rem}.product-grid{grid-template-columns:1fr 1fr;gap:10px}.accordion-product-grid{grid-template-columns:1fr 1fr;gap:10px}.accordion-product-grid.list-view .product-image{width:70px;min-width:70px}.accordion-product-grid.list-view .product-info{padding:10px 14px;gap:8px}.category-accordion-header{padding:16px 18px}.category-accordion-header h3{font-size:1.1rem}.category-accordion-inner{padding:0 18px 18px}.products-toolbar{gap:10px}.product-search{padding:12px 40px 12px 44px;font-size:16px}.product-info{padding:14px}.product-info h4{font-size:.86rem}.product-desc{font-size:.76rem;margin-bottom:10px}.product-price{font-size:1.05rem}.btn-cart{width:42px;height:42px}.btn-cart svg{width:17px;height:17px}.usp-grid{grid-template-columns:1fr 1fr;gap:14px}.usp-banner{padding:32px 0}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:130px;gap:8px}.gallery-item-large{grid-row:span 2}.gallery{padding:48px 0}.promo-text{padding:22px}.promo-text h3{font-size:1.12rem}.promo-price{font-size:1.4rem;margin-bottom:16px}.section-header{margin-bottom:28px}.section-header h2{font-size:1.4rem}.section-header p{font-size:.85rem}.section-badge{font-size:.68rem;padding:5px 14px;letter-spacing:1.5px}.business-lead{font-size:.95rem}.price-row{padding:10px 14px;font-size:.85rem}.review-card{padding:24px}.review-card::before{font-size:3rem;top:6px;left:14px}.delivery-card{padding:26px 18px}.delivery-icon{width:40px;height:40px}.delivery-card h4{font-size:.95rem}.delivery-card p{font-size:.84rem}.about-images{max-width:300px}.img-1 img{height:240px}.img-2{width:125px;right:-10px;bottom:-14px;border-width:3px}.img-2 img{height:115px}.about-experience{top:-12px;left:-8px;padding:12px 14px;gap:8px}.exp-icon{width:20px;height:20px}.exp-text{font-size:.75rem}.about-lead{font-size:.92rem}.about-feature{font-size:.84rem}.contact-info h2{font-size:1.4rem}.contact-form-wrapper{padding:22px;border-radius:var(--radius-lg)}.form-group input,.form-group select,.form-group textarea{padding:13px 16px;font-size:16px}.footer-brand p{font-size:.85rem}.footer-bottom{font-size:.75rem;padding:20px 0}.cart-header{padding:18px 20px}.cart-items{padding:14px 20px}.cart-footer{padding:18px 20px}.cart-item-img{width:52px;height:52px}.mobile-menu-overlay .mobile-nav a{font-size:1.65rem;padding:12px 32px}}@media (max-width:360px){.hero-text h1{font-size:1.7rem}.hero-subtitle{font-size:.85rem}.product-grid{gap:8px}.product-info{padding:12px}.product-info h4{font-size:.82rem}.product-price{font-size:.98rem}.btn-cart{width:40px;height:40px}.gallery-grid{grid-auto-rows:105px;gap:6px}.section-header h2{font-size:1.25rem}.mobile-menu-overlay .mobile-nav a{font-size:1.4rem;padding:10px 28px}}@media (hover:none){.product-card:hover{transform:none;box-shadow:var(--shadow-card)}.product-card:hover .product-image img{transform:none;filter:brightness(1.04) contrast(1.06) saturate(1.18)}.gallery-item:hover img{transform:none}.gallery-item:hover::after{opacity:0}.review-card:hover{transform:none;box-shadow:var(--shadow-sm)}.delivery-card:hover{transform:none;box-shadow:var(--shadow-sm)}.btn-primary:hover{transform:none}.business-image:hover img{transform:none}.price-row:hover{border-color:var(--border-light);box-shadow:none}.promo-banner:hover{box-shadow:var(--shadow-card)}.promo-banner:hover .promo-image img{transform:none}.product-card:active{transform:scale(.98);transition:transform .1s}.btn:active{transform:scale(.97);transition:transform .1s}.btn-cart:active{transform:scale(.9);transition:transform .1s}.gallery-item:active{transform:scale(.98);transition:transform .1s}.delivery-card:active{transform:scale(.98);transition:transform .1s}}@media (max-height:500px) and (orientation:landscape){.hero{min-height:auto;padding:100px 0 60px}.hero-text h1{font-size:1.8rem}.hero-stats{flex-direction:row;gap:20px}.mobile-menu-overlay .mobile-nav a{font-size:1.2rem;padding:8px 24px}.mobile-menu-overlay .mobile-nav{gap:2px}}@media (prefers-reduced-motion:reduce){*,::after,::before{animation-duration:0s!important;transition-duration:0s!important}.hero-bg-image{animation:none;transform:scale(1)}}@supports (padding:env(safe-area-inset-bottom)){.cart-footer{padding-bottom:calc(22px + env(safe-area-inset-bottom))}.footer-bottom{padding-bottom:calc(24px + env(safe-area-inset-bottom))}.mobile-menu-overlay{padding-bottom:env(safe-area-inset-bottom)}}[contenteditable=true],input,select,textarea{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:10000;background:var(--bg-white);box-shadow:0 -4px 30px rgba(0,0,0,.12);border-top:3px solid var(--primary);padding:20px 24px;transform:translateY(100%);transition:transform .4s cubic-bezier(.4, 0, .2, 1)}.cookie-banner.visible{transform:translateY(0)}.cookie-banner-inner{max-width:1100px;margin:0 auto;display:flex;align-items:center;gap:20px;flex-wrap:wrap}.cookie-banner-text{flex:1;min-width:260px;font-size:14px;line-height:1.6;color:var(--text-body)}.cookie-banner-text strong{color:var(--text-dark)}.cookie-banner-actions{display:flex;gap:10px;flex-shrink:0}.cookie-btn{padding:10px 24px;border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer;border:none;transition:var(--transition)}.cookie-btn-accept{background:var(--primary);color:#fff}.cookie-btn-accept:hover{background:var(--primary-dark)}.cookie-btn-reject{background:0 0;color:var(--text-light);border:1.5px solid var(--border)}.cookie-btn-reject:hover{background:var(--bg-light);color:var(--text-dark)}@media (max-width:600px){.cookie-banner{padding:16px}.cookie-banner-inner{flex-direction:column;align-items:stretch;gap:14px}.cookie-banner-actions{justify-content:stretch}.cookie-btn{flex:1;text-align:center}}.chat-fab{position:fixed;bottom:24px;right:24px;width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);color:#fff;border:none;cursor:pointer;box-shadow:0 4px 20px rgba(45,122,58,.35);z-index:9998;display:flex;align-items:center;justify-content:center;transition:var(--transition)}.chat-fab:hover{transform:scale(1.08);box-shadow:0 6px 28px rgba(45,122,58,.45)}.chat-fab svg{width:28px;height:28px}.chat-fab .chat-fab-close{display:none}.chat-fab.active .chat-fab-open{display:none}.chat-fab.active .chat-fab-close{display:block}.chat-fab-badge{position:absolute;top:-2px;right:-2px;width:16px;height:16px;background:var(--accent);border-radius:50%;border:2px solid #fff;animation:chatPulse 2s infinite}.chat-fab.active .chat-fab-badge{display:none}@keyframes chatPulse{0%,100%{transform:scale(1)}50%{transform:scale(1.3)}}.chat-window{position:fixed;bottom:100px;right:24px;width:380px;max-height:520px;background:#fff;border-radius:20px;box-shadow:0 12px 50px rgba(0,0,0,.15);z-index:9999;display:flex;flex-direction:column;overflow:hidden;opacity:0;transform:translateY(20px) scale(.95);pointer-events:none;transition:all .3s cubic-bezier(.4, 0, .2, 1)}.chat-window.open{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}.chat-header{background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);color:#fff;padding:16px 20px;display:flex;align-items:center;gap:12px}.chat-header-avatar{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;flex-shrink:0}.chat-header-avatar svg{width:22px;height:22px}.chat-header-info h4{font-family:'Playfair Display',serif;font-size:16px;font-weight:600;margin:0;color:#fff}.chat-header-info p{font-size:12px;opacity:.85;margin:2px 0 0}.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;min-height:280px;max-height:340px;background:#f9faf7}.chat-messages::-webkit-scrollbar{width:4px}.chat-messages::-webkit-scrollbar-thumb{background:#ccc;border-radius:4px}.chat-msg{max-width:85%;padding:10px 14px;border-radius:16px;font-size:14px;line-height:1.5;word-wrap:break-word;animation:chatMsgIn .3s ease}@keyframes chatMsgIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chat-msg.bot{background:#fff;color:var(--text-body);align-self:flex-start;border-bottom-left-radius:4px;box-shadow:0 1px 4px rgba(0,0,0,.06)}.chat-msg.user{background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}.chat-msg.bot strong{color:var(--primary-dark)}.chat-msg.bot ol,.chat-msg.bot ul{margin:6px 0;padding-left:18px}.chat-msg.bot li{margin:3px 0}.chat-typing{align-self:flex-start;display:flex;gap:4px;padding:12px 16px;background:#fff;border-radius:16px;border-bottom-left-radius:4px;box-shadow:0 1px 4px rgba(0,0,0,.06)}.chat-typing span{width:7px;height:7px;background:#bbb;border-radius:50%;animation:typingDot 1.4s infinite}.chat-typing span:nth-child(2){animation-delay:.2s}.chat-typing span:nth-child(3){animation-delay:.4s}@keyframes typingDot{0%,100%,60%{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.chat-input-area{padding:12px 16px;border-top:1px solid var(--border-light);display:flex;gap:8px;background:#fff}.chat-input{flex:1;border:1px solid var(--border);border-radius:24px;padding:10px 16px;font-size:16px;font-family:Inter,sans-serif;outline:0;transition:border-color .2s;resize:none;max-height:80px;line-height:1.4}.chat-input:focus{border-color:var(--primary)}.chat-input::placeholder{color:#aaa}.chat-send{width:40px;height:40px;border-radius:50%;background:var(--primary);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:var(--transition)}.chat-send:hover{background:var(--primary-dark)}.chat-send:disabled{opacity:.5;cursor:not-allowed}.chat-send svg{width:18px;height:18px}.chat-quick-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.chat-quick-btn{background:var(--primary-glow);color:var(--primary);border:1px solid rgba(45,122,58,.2);border-radius:20px;padding:6px 12px;font-size:12px;cursor:pointer;transition:var(--transition);font-family:Inter,sans-serif}.chat-quick-btn:hover{background:var(--primary);color:#fff}.chat-powered{text-align:center;font-size:10px;color:#bbb;padding:4px 0 8px;background:#fff}@media (max-width:480px){.chat-window{bottom:0;right:0;left:0;width:100%;max-height:100vh;max-height:100dvh;border-radius:0}.chat-messages{min-height:50vh;max-height:60vh}.chat-fab{bottom:16px;right:16px}}