*{margin:0;padding:0;box-sizing:border-box;}:root{--primary-green:#2E7D32;--light-green:#66BB6A;--accent-green:#689F38;--berry-purple:#6A1B9A;--berry-red:#D32F2F;--cream:#FFF8E1;--light-blue:#B3D9E8;}.skip-link{position:absolute;left:-9999px;top:auto;z-index:10000;}.skip-link:focus{left:1rem;top:1rem;background:#fff;color:#000;padding:0.5rem 1rem;border-radius:0.5rem;z-index:10000;}.category-card:focus-visible{outline:3px solid var(--primary-green);outline-offset:4px;}a.category-card{text-decoration:none;color:inherit;display:block;}section[id], .promo-banner{scroll-margin-top:90px;}html{text-size-adjust:100%;overflow-x:hidden;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}body{font-family:'Open Sans', sans-serif;line-height:1.6;color:#333;background-color:#FAFAFA;position:relative;z-index:0;overflow-x:hidden;width:100%;}img, svg{max-width:100%;height:auto;display:block;}h1, h2, h3, h4{overflow-wrap:break-word;word-wrap:break-word;word-break:break-word;hyphens:auto;}p{overflow-wrap:break-word;word-wrap:break-word;}.category-card, .gift-card, .product-item, .feature, .contact-info, .delivery-card{min-width:0;overflow:hidden;}section, .hero, .products, .christmas-section, .services, .delivery-info, .contact-form-section, .contact{overflow-x:hidden;width:100%;max-width:100vw;}.floating-elements{position:fixed;width:100%;height:100%;top:0;left:0;pointer-events:none;z-index:-1;overflow:hidden;}.floating-berry{position:absolute;font-size:2rem;animation:float 15s infinite ease-in-out;opacity:0.15;filter:drop-shadow(0 2px 4px rgba(0,0,0,0.1));}@keyframes float{0%, 100%{transform:translateY(0) rotate(0deg);}25%{transform:translateY(-20px) rotate(5deg);}50%{transform:translateY(10px) rotate(-5deg);}75%{transform:translateY(-15px) rotate(3deg);}}header{background:linear-gradient(135deg, rgba(255,255,255,0.98) 0%, rgba(255,248,225,0.98) 100%);backdrop-filter:blur(10px);box-shadow:0 2px 20px rgba(0,0,0,0.08);position:fixed;width:100%;top:0;z-index:1000;transition:all 0.3s ease;}header.scrolled{box-shadow:0 4px 30px rgba(0,0,0,0.12);}header + :not(.hero){margin-top:70px;}nav{display:flex;justify-content:space-between;align-items:center;padding:0.5rem 5%;max-width:1400px;margin:0 auto;}.logo-container{height:70px;display:flex;align-items:center;flex-shrink:0;}.logo-img{height:70px;width:auto;max-width:200px;min-height:70px;object-fit:contain;}.logo-container a{display:flex;align-items:center;height:100%;}header .logo-container a .logo-img{height:70px;max-width:200px;max-height:70px;}.nav-links{display:flex;list-style:none;gap:2.5rem;align-items:center;}.nav-links a{text-decoration:none;color:#333;font-weight:500;font-size:0.95rem;text-transform:uppercase;letter-spacing:0.5px;transition:all 0.3s;position:relative;}.nav-links a::after{content:'';position:absolute;bottom:-5px;left:0;width:0;height:2px;background:var(--primary-green);transition:width 0.3s;}.nav-links a:hover::after{width:100%;}.nav-links a:hover{color:var(--primary-green);}.cta-button{background:linear-gradient(135deg, var(--primary-green) 0%, var(--light-green) 100%);color:white !important;padding:0.6rem 1.5rem;border-radius:25px;transition:transform 0.3s, box-shadow 0.3s;min-height:44px;display:inline-flex;align-items:center;justify-content:center;}.cta-button:hover{transform:translateY(-2px);box-shadow:0 5px 15px rgba(46,125,50,0.3);}.cta-button:active{transform:translateY(0);}.hero{margin-top:0;padding-top:70px;background:linear-gradient(135deg, var(--light-blue) 0%, #E8F5E9 50%, var(--cream) 100%);position:relative;overflow:hidden;min-height:95vh;padding-bottom:6vh;display:flex;align-items:center;will-change:transform;}@supports (height:100dvh){.hero{min-height:calc(100dvh - 70px);}}.hero::before{content:'';position:absolute;width:200%;height:200%;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="10" cy="10" r="1" fill="%23000" opacity="0.05"/><circle cx="90" cy="90" r="1" fill="%23000" opacity="0.05"/></svg>');animation:slide 30s linear infinite;}@keyframes slide{0%{transform:translate(0, 0);}100%{transform:translate(-50%, -50%);}}.hero-content{max-width:1400px;margin:0 auto;padding:4rem 5%;display:flex;justify-content:center;align-items:center;gap:3rem;flex-wrap:wrap;position:relative;z-index:1;}.hero-text{text-align:center;max-width:800px;flex:1 1 380px;min-width:min(340px, 100%);}.hero-text h1{font-family:'Playfair Display', serif;font-size:clamp(1.8rem, 4.5vw, 3.5rem);color:var(--primary-green);margin-bottom:0.5rem;line-height:1.2;animation:fadeInUp 0.8s ease;}.hero-text .subtitle{font-size:clamp(1.05rem, 2.7vw, 1.8rem);color:var(--accent-green);margin-bottom:1.5rem;font-weight:300;font-style:italic;animation:fadeInUp 1s ease;}.hero-text p{color:#555;margin-bottom:2rem;line-height:1.8;font-size:1.1rem;animation:fadeInUp 1.2s ease;}.hero-text h1, .hero-text .subtitle, .hero-text p{word-break:normal;hyphens:manual;}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px);}to{opacity:1;transform:translateY(0);}}.hero-image{position:relative;display:flex;justify-content:center;align-items:center;flex:1 1 320px;min-width:min(320px, 100%);animation:fadeIn 1.5s ease;}@keyframes fadeIn{from{opacity:0;}to{opacity:1;}}.hero-logo{width:100%;max-width:550px;height:auto;filter:drop-shadow(0 20px 40px rgba(0,0,0,0.15));animation:gentle-float 6s infinite ease-in-out;}@keyframes gentle-float{0%, 100%{transform:translateY(0);}50%{transform:translateY(-10px);}}.features{display:grid;grid-template-columns:1fr;gap:2rem;margin-top:3rem;margin-bottom:3rem;max-width:600px;margin-left:auto;margin-right:auto;}.feature{display:flex;flex-direction:column;align-items:center;gap:1rem;padding:1.5rem;background:rgba(255,255,255,0.9);border-radius:15px;box-shadow:0 5px 15px rgba(0,0,0,0.08);transition:transform 0.3s, box-shadow 0.3s;text-align:center;text-decoration:none;color:inherit;cursor:pointer;}.feature:hover{transform:translateY(-5px);box-shadow:0 10px 25px rgba(0,0,0,0.12);}.feature-icon{width:50px;height:50px;background:linear-gradient(135deg, var(--primary-green) 0%, var(--light-green) 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;color:white;font-size:1.5rem;flex-shrink:0;}.feature-text{text-align:center;}.feature-text h3{color:var(--primary-green);margin-bottom:0.3rem;font-size:1.1rem;}.feature-text p{color:#666;font-size:0.9rem;}.promo-banner{background:linear-gradient(135deg, #D32F2F 0%, #C62828 50%, #B71C1C 100%);color:white;padding-block:clamp(2rem, 4vw, 3rem);padding-inline:5%;text-align:center;position:relative;overflow:hidden;box-shadow:0 10px 40px rgba(211,47,47,0.3);animation:pulse-glow 3s infinite ease-in-out;min-height:180px;}@keyframes pulse-glow{0%, 100%{box-shadow:0 10px 40px rgba(211,47,47,0.3);}50%{box-shadow:0 15px 60px rgba(211,47,47,0.5);}}.promo-banner::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:repeating-linear-gradient(45deg, transparent, transparent 10px, rgba(255,255,255,0.05) 10px, rgba(255,255,255,0.05) 20px);animation:slide-pattern 20s linear infinite;z-index:0;}@keyframes slide-pattern{0%{transform:translate(0, 0);}100%{transform:translate(50px, 50px);}}.promo-banner::after{content:'⭐';position:absolute;font-size:4rem;opacity:0.2;animation:twinkle 2s infinite ease-in-out;z-index:0;pointer-events:none;}@keyframes twinkle{0%, 100%{opacity:0.2;transform:scale(1);}50%{opacity:0.4;transform:scale(1.2);}}.promo-banner-content{position:relative;z-index:1;max-width:1100px;margin:0 auto;text-align:left;display:flex;flex-direction:column;gap:1.25rem;}.promo-headline h3{font-size:clamp(2rem, 4vw, 3rem);margin:0 0 0.3rem;font-family:'Playfair Display', serif;text-shadow:2px 2px 8px rgba(0,0,0,0.3);}.promo-headline p{margin:0;font-size:1.1rem;opacity:0.95;}.promo-pill{display:inline-flex;align-items:center;gap:0.4rem;background:rgba(255,255,255,0.15);padding:0.35rem 0.9rem;border-radius:999px;font-weight:700;letter-spacing:1px;text-transform:uppercase;font-size:0.85rem;}.promo-perks{list-style:none;display:flex;flex-wrap:wrap;gap:0.75rem;padding:0;margin:0;}.promo-perks li{background:rgba(255,255,255,0.15);border:1px solid rgba(255,255,255,0.2);padding:0.7rem 1rem;border-radius:14px;font-weight:600;backdrop-filter:blur(3px);}.promo-actions{display:flex;flex-wrap:wrap;gap:0.75rem;}.promo-shortcuts{max-width:1100px;margin:-1rem auto 3rem;padding:0 5%;display:grid;grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));gap:1rem;}.shortcut-card{display:flex;align-items:center;gap:0.85rem;padding:1rem 1.2rem;background:#fff;border-radius:18px;box-shadow:0 12px 32px rgba(0,0,0,0.08);text-decoration:none;color:inherit;transition:transform 0.2s, box-shadow 0.2s;}.shortcut-card:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(0,0,0,0.12);}.shortcut-card span{font-size:1.8rem;}.shortcut-card strong{display:block;font-size:1.05rem;color:var(--primary-green);}.shortcut-card small{color:#666;}.secondary-button.light{border-color:rgba(255,255,255,0.8);color:#fff;background:transparent;}.secondary-button.light:hover{background:rgba(255,255,255,0.15);box-shadow:0 5px 15px rgba(0,0,0,0.2);}@media (max-width:640px){.promo-banner-content{text-align:center;}.promo-actions{justify-content:center;}.promo-perks{justify-content:center;}}@media (max-width:480px){.promo-banner{padding-block:clamp(1.5rem, 3vw, 2rem);padding-inline:4%;}.promo-emoji{font-size:2rem;}}.products{max-width:1400px;margin:5rem auto;padding:5rem 5% 0 5%;scroll-margin-top:100px;content-visibility:auto;contain-intrinsic-size:1px 1000px;}.products.legal-page{max-width:min(900px, 100%);margin:0 auto 4rem;padding:calc(3rem + 70px) 5% 3rem;}@media (max-width:767px){.products.legal-page{padding:calc(2.5rem + 70px) 6% 2.5rem;}}.section-title{text-align:center;font-size:clamp(1.6rem, 5vw, 3rem);color:var(--primary-green);margin-bottom:1rem;font-family:'Playfair Display', serif;position:relative;z-index:1;padding:1rem 0;line-height:1.2;}.section-subtitle{text-align:center;color:#666;margin-bottom:4rem;font-size:clamp(0.95rem, 2.5vw, 1.1rem);position:relative;z-index:1;padding-bottom:1rem;}.product-categories{display:grid;grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));gap:2.5rem;margin-bottom:4rem;}.category-card{background:white;border-radius:20px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,0.1);transition:all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);cursor:pointer;position:relative;z-index:0;-webkit-tap-highlight-color:transparent;border:none;text-align:left;font-family:inherit;width:100%;}.category-card::before{content:'';position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg, var(--berry-purple), var(--primary-green), var(--berry-red));transform:scaleX(0);transition:transform 0.4s;}.category-card:hover::before{transform:scaleX(1);}.category-card:hover{transform:translateY(-10px) scale(1.02);box-shadow:0 20px 40px rgba(0,0,0,0.15);}.category-image{aspect-ratio:4 / 4;display:grid;place-items:center;padding:clamp(8px, 1.5vw, 14px);background:#fff7ea;overflow:hidden;border-bottom:1px solid rgba(0,0,0,.05);}.category-image img{width:100%;height:100%;object-fit:contain;object-position:center;display:block;}.category-card{display:grid;grid-template-rows:auto 1fr;}.category-content{padding:2rem;}.category-content h3{color:var(--primary-green);margin-bottom:0.8rem;font-size:1.5rem;font-family:'Playfair Display', serif;}.category-content p{color:#666;line-height:1.6;}.view-products-btn{display:inline-block;margin-top:1rem;color:var(--primary-green);text-decoration:none;font-weight:600;transition:all 0.3s;pointer-events:none;}.category-card:hover .view-products-btn{transform:translateX(5px);}.product-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));gap:2rem;margin-top:2rem;max-height:0;opacity:0;overflow:hidden;transition:max-height .4s ease, opacity .35s ease;}.product-grid.active{opacity:1;}.product-item{background:white;border-radius:15px;padding:1.5rem;box-shadow:0 5px 15px rgba(0,0,0,0.08);text-align:center;transition:all 0.3s;position:relative;overflow:hidden;display:flex;flex-direction:column;align-items:center;}.price-badge{position:absolute;top:10px;left:10px;padding:0.3rem 0.6rem;background:var(--berry-red);color:#fff;border-radius:8px;font-weight:700;font-size:0.9rem;z-index:2;box-shadow:0 2px 8px rgba(211,47,47,0.3);}.product-image{width:200px;height:200px;border-radius:12px;overflow:hidden;margin-bottom:1rem;display:flex;align-items:center;justify-content:center;background:#f8f9fa;border:2px solid #e9ecef;}.product-image img{width:100%;height:100%;object-fit:contain;padding:8px;background:#fff;}.product-item::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle, var(--light-green) 0%, transparent 70%);opacity:0;transition:opacity 0.3s;}.product-item:hover::before{opacity:0.1;}.product-item:hover{transform:translateY(-5px);box-shadow:0 10px 25px rgba(0,0,0,0.12);}.product-item h4{color:var(--primary-green);margin-bottom:0.5rem;font-size:1.1rem;}.product-item .quantity{color:#888;font-size:0.9rem;margin-bottom:0.5rem;}.product-item .price{display:none;}.info-btn{position:absolute;top:10px;right:10px;width:28px;height:28px;border-radius:50%;background:var(--primary-green);color:white;border:none;font-weight:bold;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 5px rgba(0,0,0,0.2);transition:all 0.3s;z-index:10;}.info-btn:hover{background:var(--light-green);transform:scale(1.1);}.info-btn:active{transform:scale(0.95);}.product-details{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255, 255, 255, 0.98);backdrop-filter:blur(10px);padding:1.5rem;border-radius:15px;opacity:0;visibility:hidden;transition:all 0.3s ease;overflow-y:auto;z-index:5;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-start;text-align:left;box-shadow:0 10px 30px rgba(0,0,0,0.15);}.product-details p{margin-bottom:0.8rem;font-size:0.9rem;line-height:1.6;color:#333;}.product-details p:last-child{margin-bottom:0;}.product-details strong{color:var(--primary-green);font-weight:600;}@media (hover:hover) and (pointer:fine){.info-btn{display:none;}.product-item:hover .product-details{opacity:1;visibility:visible;}}@media (hover:none) or (pointer:coarse){.info-btn{display:flex;}.product-item.details-active .product-details{opacity:1;visibility:visible;}}@media (max-width:767px){.info-btn{display:flex;}.product-item.details-active .product-details{opacity:1;visibility:visible;}body.details-open{overflow:hidden;}.product-item.details-active{overflow:visible;z-index:1000;}.product-item.details-active .product-details{position:fixed;top:calc(70px + 14px);left:12px;right:12px;bottom:max(12px, env(safe-area-inset-bottom));max-height:calc(100dvh - 88px);border-radius:16px;padding-bottom:max(16px, env(safe-area-inset-bottom));-webkit-overflow-scrolling:touch;z-index:1001;}}.christmas-section{background:linear-gradient(135deg, #FFEBEE 0%, var(--cream) 100%);padding:4rem 5%;margin:4rem 0;position:relative;overflow:hidden;content-visibility:auto;contain-intrinsic-size:1px 1000px;}.christmas-section::before, .christmas-section::after{content:'';position:absolute;width:300px;height:300px;border-radius:50%;opacity:0.05;}.christmas-section::before{background:var(--berry-red);top:-150px;left:-150px;}.christmas-section::after{background:var(--primary-green);bottom:-150px;right:-150px;}.gift-ideas{max-width:1400px;margin:0 auto;position:relative;z-index:1;}.gift-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:2.5rem;margin-top:3rem;}.gift-card{background:white;border-radius:20px;padding:2rem;text-align:center;box-shadow:0 10px 30px rgba(0,0,0,0.1);transition:all 0.4s;position:relative;overflow:hidden;-webkit-tap-highlight-color:transparent;}.gift-card::before{content:'';position:absolute;top:0;left:0;right:0;height:100%;background:linear-gradient(135deg, rgba(211,47,47,0.05) 0%, rgba(46,125,50,0.05) 100%);transform:translateY(100%);transition:transform 0.4s;}.gift-card:hover::before{transform:translateY(0);}.gift-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px rgba(0,0,0,0.15);}.gift-icon{font-size:3rem;margin-bottom:1rem;}.gift-card h4{color:var(--berry-red);margin-bottom:1.5rem;font-size:1.6rem;font-family:'Playfair Display', serif;}.gift-options{text-align:left;margin-top:1rem;}.gift-options ul{padding-left:0;margin:0;}.gift-options li{margin:0.8rem 0;list-style:none;padding:0.5rem 0.5rem 0.5rem 2rem;position:relative;background:rgba(46,125,50,0.05);border-radius:8px;transition:all 0.3s;}.gift-options li:hover{background:rgba(46,125,50,0.1);transform:translateX(5px);}.gift-options li:before{content:"✨";position:absolute;left:0.5rem;}.gift-collection{display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:2.5rem;margin-top:2.5rem;}.holiday-highlights{display:grid;grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));gap:1.5rem;margin:2rem 0 0;}.highlight-card{background:rgba(255,255,255,0.95);border-radius:20px;padding:1.5rem;box-shadow:0 12px 30px rgba(0,0,0,0.08);display:flex;flex-direction:column;gap:0.6rem;}.highlight-icon{width:48px;height:48px;border-radius:14px;background:rgba(46,125,50,0.12);display:grid;place-items:center;font-size:1.5rem;}.highlight-card h3{margin:0;color:var(--berry-red);font-size:1.15rem;}.highlight-card p{margin:0;color:#4a4a4a;line-height:1.6;}.gift-showcase{background:white;border-radius:28px;box-shadow:0 15px 40px rgba(0,0,0,0.08);overflow:hidden;display:flex;flex-direction:column;transition:transform 0.3s ease, box-shadow 0.3s ease;}.gift-showcase:hover{transform:translateY(-6px);box-shadow:0 20px 50px rgba(0,0,0,0.12);}.gift-media{position:relative;margin:1.5rem 1.5rem 0;border-radius:22px;overflow:hidden;aspect-ratio:4 / 3;}.gift-media img{width:100%;height:100%;object-fit:cover;display:block;}.gift-chip{position:absolute;left:1rem;bottom:1rem;background:rgba(46,125,50,0.92);color:#fff;padding:0.35rem 0.95rem;border-radius:999px;font-size:0.85rem;letter-spacing:0.5px;text-transform:uppercase;font-weight:700;box-shadow:0 10px 20px rgba(0,0,0,0.15);}.gift-body{padding:1.5rem 1.75rem 2rem;display:flex;flex-direction:column;gap:1rem;}.gift-note{margin:0;color:#4a4a4a;line-height:1.6;min-height:60px;}.gift-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0.8rem;}.gift-list li{display:flex;justify-content:space-between;align-items:center;background:rgba(46,125,50,0.08);padding:0.85rem 1rem;border-radius:16px;font-weight:600;color:#1b3a29;}.gift-list li span:first-child{flex:1;margin-right:0.75rem;}.gift-price{color:var(--primary-green);font-weight:800;}.holiday-steps{margin-top:3rem;background:linear-gradient(135deg, rgba(232,245,233,0.8), rgba(255,248,225,0.85));padding:2.5rem;border-radius:28px;box-shadow:0 10px 30px rgba(0,0,0,0.08);}.holiday-steps h2{text-align:center;margin-bottom:1.5rem;color:var(--berry-red);}.steps-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));gap:1.5rem;padding:0;margin:0;}.steps-list li{display:flex;gap:1rem;align-items:flex-start;background:#fff;border-radius:18px;padding:1.25rem;box-shadow:0 8px 24px rgba(0,0,0,0.05);}.step-number{color:var(--primary-green);font-weight:800;font-size:1.1rem;display:flex;align-items:center;margin-top:0.15rem;}.steps-list h4{margin:0 0 0.2rem;font-size:1.05rem;color:var(--primary-green);}.steps-list p{margin:0;color:#555;line-height:1.5;}.holiday-cta{margin-top:3rem;background:linear-gradient(135deg, #1B5E20, #2E7D32);color:#fff;border-radius:32px;padding:2.5rem;display:flex;flex-wrap:wrap;gap:1.5rem;align-items:center;box-shadow:0 15px 40px rgba(0,0,0,0.15);}.holiday-cta h2{margin-bottom:0.5rem;font-size:clamp(1.8rem, 4vw, 2.4rem);}.holiday-cta p{margin:0;max-width:600px;line-height:1.7;opacity:0.9;}.holiday-cta-actions{display:flex;flex-wrap:wrap;gap:0.8rem;}@media (max-width:640px){.holiday-steps, .holiday-cta{padding:1.75rem;}}@media (max-width:640px){.gift-collection{gap:1.5rem;}.gift-media{margin:1.25rem 1.25rem 0;}.gift-note{min-height:auto;}}.services{background:linear-gradient(135deg, #F5F5F5 0%, white 100%);padding:4rem 0;content-visibility:auto;contain-intrinsic-size:1px 1000px;}.delivery-info{background:linear-gradient(135deg, #FFF3E0 0%, #FFE0B2 100%);padding:3rem 5%;margin:3rem 0;position:relative;overflow:hidden;content-visibility:auto;contain-intrinsic-size:1px 1000px;}.delivery-content{max-width:1000px;margin:0 auto;text-align:center;position:relative;z-index:1;}.delivery-content h3{color:var(--primary-green);font-size:2rem;font-family:'Playfair Display', serif;margin-bottom:1.5rem;}.delivery-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));gap:2rem;margin-top:2rem;}.delivery-card{background:white;padding:2rem;border-radius:15px;box-shadow:0 5px 20px rgba(0,0,0,0.1);transition:all 0.3s;}.delivery-card:hover{transform:translateY(-5px);box-shadow:0 10px 30px rgba(0,0,0,0.15);}.delivery-icon{font-size:3rem;margin-bottom:1rem;}.delivery-card h4{color:var(--primary-green);margin-bottom:1rem;font-size:1.3rem;}.delivery-card p{color:#666;line-height:1.6;}.contact-form-section{background:linear-gradient(135deg, #E8F5E9 0%, #C8E6C9 100%);padding:4rem 5%;position:relative;content-visibility:auto;contain-intrinsic-size:1px 1000px;}.contact-form-container{max-width:800px;margin:0 auto;background:white;padding:3rem;border-radius:20px;box-shadow:0 10px 40px rgba(0,0,0,0.1);}.contact-form-container h2{color:var(--primary-green);font-family:'Playfair Display', serif;font-size:2.5rem;margin-bottom:1rem;text-align:center;}.contact-form-container p{text-align:center;color:#666;margin-bottom:2rem;}.contact-form{display:flex;flex-direction:column;gap:1.5rem;}.form-group{display:flex;flex-direction:column;gap:0.5rem;}.form-group label{color:var(--primary-green);font-weight:600;font-size:0.95rem;}.form-group label:has(input[type="checkbox"]){display:flex;flex-direction:row;align-items:flex-start;gap:0.75rem;cursor:pointer;font-weight:400;line-height:1.6;}.form-group label input[type="checkbox"]{margin:0;margin-top:0.2rem;width:18px;height:18px;min-width:18px;min-height:18px;cursor:pointer;flex-shrink:0;accent-color:var(--primary-green);}.form-group label:has(input[type="checkbox"]) > span{flex:1;min-width:0;display:block;}.form-group label:has(input[type="checkbox"]) a{display:inline;}.form-group input, .form-group textarea, .form-group select{padding:1rem;border:2px solid #E0E0E0;border-radius:10px;font-family:'Open Sans', sans-serif;font-size:16px;transition:all 0.3s;width:100%;box-sizing:border-box;}.form-group input:focus, .form-group textarea:focus, .form-group select:focus{outline:none;border-color:var(--primary-green);box-shadow:0 0 0 3px rgba(46,125,50,0.1);}.form-group textarea{min-height:150px;resize:vertical;}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;}.submit-btn{background:linear-gradient(135deg, var(--primary-green) 0%, var(--light-green) 100%);color:white;padding:1rem 2rem;border:none;border-radius:25px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all 0.3s;margin-top:1rem;}.submit-btn:hover{transform:translateY(-3px);box-shadow:0 10px 25px rgba(46,125,50,0.3);}.submit-btn:active{transform:translateY(-1px);}.contact{background:linear-gradient(135deg, var(--primary-green) 0%, #1B5E20 100%);color:white;padding:4rem 5%;margin-top:5rem;position:relative;overflow:hidden;content-visibility:auto;contain-intrinsic-size:1px 1000px;}.contact::before{content:'';position:absolute;width:100%;height:100%;background:url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path d="M10 50 Q 30 30, 50 50 T 90 50" stroke="white" fill="none" opacity="0.1"/></svg>');background-size:200px;}.contact-content{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));gap:3rem;position:relative;z-index:1;}.contact-info{padding:1.5rem;background:rgba(255,255,255,0.1);border-radius:15px;backdrop-filter:blur(10px);transition:all 0.3s;}.contact-info:hover{background:rgba(255,255,255,0.15);transform:translateY(-5px);}.contact-info h3{margin-bottom:1rem;font-size:1.5rem;font-family:'Playfair Display', serif;}.contact-info p{margin:0.5rem 0;opacity:0.95;}.contact-info a{color:white;text-decoration:none;transition:opacity 0.3s;}.contact-info a:hover{opacity:0.8;}footer{background-color:#0D3B0F;color:white;text-align:center;padding:2rem;position:relative;}.footer-content{max-width:1400px;margin:0 auto;}.mobile-menu{display:none;background:none;border:none;cursor:pointer;font-size:1.5rem;color:var(--primary-green);padding:10px;min-width:44px;min-height:44px;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent;}.mobile-menu span{display:block;width:25px;height:3px;background:var(--primary-green);margin:5px 0;transition:all 0.3s;border-radius:2px;}.mobile-menu.active span:nth-child(1){transform:rotate(45deg) translate(5px, 5px);}.mobile-menu.active span:nth-child(2){opacity:0;}.mobile-menu.active span:nth-child(3){transform:rotate(-45deg) translate(7px, -6px);}@media (max-width:1100px){.nav-links{display:none;position:fixed;top:70px;left:0;width:100%;height:calc(100svh - 70px);background:rgba(255,255,255,0.98);backdrop-filter:blur(8px);flex-direction:column;padding:1.25rem 1rem 2rem;gap:1rem;overflow:auto;z-index:999;}.nav-links.active{display:flex;}.mobile-menu{display:block;}}@media (min-width:768px) and (max-width:1024px){.logo-container{height:70px;}.logo-img{height:70px;max-width:200px;}header{height:70px;}nav{padding:0.5rem 4%;}.hero{min-height:auto;padding:3rem 0;}.hero-content{padding:3rem 6%;flex-direction:column;align-items:center;}.hero-text{text-align:center;max-width:700px;}.hero-text h1{font-size:2.8rem;line-height:1.2;}.hero-text .subtitle{font-size:1.5rem;margin-bottom:1.5rem;}.hero-text p{font-size:1.1rem;line-height:1.7;margin-bottom:2rem;}.hero-collage{width:min(450px, 80vw);margin-top:2rem;}.features{grid-template-columns:1fr 1fr;gap:2rem;max-width:100%;margin-top:2.5rem;}.feature{padding:2rem;}.product-categories{grid-template-columns:repeat(2, 1fr);gap:2.5rem;}.products{padding:4rem 6%;}.section-title{font-size:2.5rem;margin-bottom:1rem;}.section-subtitle{font-size:1.2rem;margin-bottom:3rem;}.trust-bar{flex-wrap:wrap;gap:1rem;margin-bottom:2rem;}.trust-bar span{padding:0.6rem 1rem;font-size:1rem;}.promo-card{max-width:500px;}.hero-cta{flex-direction:column;gap:1rem;align-items:center;margin-bottom:2rem;}.hero-cta .cta-button, .hero-cta .secondary-button{min-width:280px;padding:0.8rem 2rem;font-size:1.1rem;}.gift-grid{grid-template-columns:repeat(2, 1fr);gap:2.5rem;}.gift-card{padding:2rem;}.delivery-grid{grid-template-columns:repeat(2, 1fr);gap:2.5rem;}.contact-form-container{padding:3rem;max-width:700px;}.contact-form-container h2{font-size:2.5rem;}.footer-grid{grid-template-columns:repeat(2, 1fr);gap:2.5rem;}.product-grid{grid-template-columns:repeat(auto-fill, minmax(200px, 1fr));gap:2rem;}.product-item{padding:1.5rem;}.product-image{width:180px;height:180px;}.orders .order-item{grid-template-columns:100px 1fr;gap:1.5rem;}.orders .order-item img{width:100px;height:100px;}}@media (max-width:1024px){.hero-text h1{font-size:2.5rem;}.features{grid-template-columns:1fr;}.product-categories{grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));}}@media (max-width:360px){.hero-text h1{font-size:1.3rem;}.hero-text .subtitle{font-size:0.9rem;}.hero-text p{font-size:0.9rem;}.product-grid{grid-template-columns:1fr;}.product-item{padding:1rem;}.product-image{width:150px;height:150px;}.category-image{padding:8px;}.category-content{padding:1rem;}.category-content h3{font-size:1.2rem;}.category-content p{font-size:0.85rem;}.nav-links{gap:0.8rem;padding:1rem;}.nav-links a{font-size:0.9rem;padding:0.7rem 0.8rem;}.section-title{font-size:1.3rem;}.section-subtitle{font-size:0.85rem;}.promo-banner h3{font-size:1.2rem;}.promo-banner p{font-size:0.85rem;}.gift-card h4{font-size:1.2rem;}.gift-options li{font-size:0.85rem;}.delivery-content h3{font-size:1.3rem;}.delivery-card h4{font-size:1rem;}.delivery-card p{font-size:0.85rem;}.contact-form-container h2{font-size:1.4rem;}.contact-form-container p{font-size:0.85rem;}.form-group input, .form-group textarea, .form-group select{font-size:16px;}}@media (max-height:600px) and (orientation:landscape){.features{margin-top:1rem;}.nav-links{height:calc(100vh - 60px);padding:0.5rem;}.nav-links a{padding:0.5rem 1rem;}}.loading{position:fixed;top:0;left:0;width:100%;height:100%;background:white;display:flex;justify-content:center;align-items:center;z-index:9999;transition:opacity 0.5s;}.loading.hidden{opacity:0;pointer-events:none;}.loader{width:50px;height:50px;border:3px solid var(--light-green);border-top:3px solid var(--primary-green);border-radius:50%;animation:spin 1s linear infinite;}@keyframes spin{0%{transform:rotate(0deg);}100%{transform:rotate(360deg);}}@media (prefers-reduced-motion:reduce){*{animation:none !important;transition:none !important;}.hero{transform:none !important;}}.order-hero{margin-top:90px;padding:3.5rem 5%;background:linear-gradient(120deg, rgba(46,125,50,0.12), rgba(255,248,225,0.85));}.order-hero-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit, minmax(280px,1fr));gap:2rem;align-items:center;}.order-hero-pill{display:inline-flex;gap:0.3rem;align-items:center;background:rgba(46,125,50,0.15);border-radius:999px;padding:0.3rem 0.85rem;font-weight:700;letter-spacing:0.5px;text-transform:uppercase;font-size:0.85rem;color:var(--primary-green);}.order-hero-text h1{font-family:'Playfair Display', serif;font-size:clamp(1.8rem, 4vw, 2.8rem);margin:0.5rem 0;color:#1b3a29;}.order-hero-text p{line-height:1.7;color:#3d3d3d;}.order-hero-tags{display:flex;flex-wrap:wrap;gap:0.5rem;margin:1rem 0;}.order-hero-tags span{background:white;border-radius:14px;padding:0.45rem 0.8rem;font-weight:600;color:var(--primary-green);box-shadow:0 6px 16px rgba(0,0,0,0.08);}.order-hero-actions{display:flex;flex-wrap:wrap;gap:0.75rem;}.order-hero-card{background:#fff;border-radius:20px;padding:1.75rem;box-shadow:0 18px 40px rgba(0,0,0,0.12);}.order-hero-card h3{margin-top:0;color:var(--berry-red);}.order-hero-card ul{padding-left:1.2rem;margin:0 0 1rem;color:#444;line-height:1.6;}.order-hero-note{font-size:0.95rem;margin:0;color:#1b3a29;font-weight:600;}.secondary-button.light{border-color:rgba(46,125,50,0.3);color:var(--primary-green);background:rgba(255,255,255,0.8);}.secondary-button.light:hover{background:rgba(46,125,50,0.1);}.bundle-section{background:rgba(232,245,233,0.6);border-radius:24px;padding:2.5rem;margin:2rem 0;}.bundle-header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-bottom:1.5rem;}.bundle-header h3{margin:0 0 0.3rem;color:var(--berry-red);font-size:1.6rem;}.bundle-header p{margin:0;color:#3a3a3a;max-width:640px;}.bundle-badges{display:flex;flex-wrap:wrap;gap:0.5rem;}.bundle-badges span{background:white;border-radius:12px;padding:0.4rem 0.8rem;font-weight:600;color:#1b3a29;}.bundle-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));gap:1.5rem;}.bundle-card{background:#fff;border-radius:20px;padding:1.5rem;box-shadow:0 15px 35px rgba(0,0,0,0.08);display:flex;flex-direction:column;gap:0.75rem;}.bundle-icon{width:48px;height:48px;border-radius:16px;background:rgba(46,125,50,0.12);display:grid;place-items:center;font-size:1.6rem;}.bundle-card h4{margin:0;color:var(--primary-green);}.bundle-card p{margin:0;color:#555;line-height:1.5;}.bundle-label{font-size:0.9rem;font-weight:600;color:#333;}.bundle-card select, .bundle-card textarea{border:1px solid #e0e0e0;border-radius:12px;padding:0.75rem;font-family:'Open Sans', sans-serif;background:#fafafa;}.bundle-qty{display:flex;align-items:center;gap:0.75rem;}.bundle-qty label{font-size:0.9rem;font-weight:600;color:#444;}.bundle-qty input{width:80px;border:1px solid #e0e0e0;border-radius:10px;padding:0.65rem;font-size:1rem;background:#fff;}.bundle-card textarea{resize:vertical;}.bundle-add{border:none;border-radius:12px;background:linear-gradient(135deg, var(--primary-green), var(--light-green));color:#fff;font-weight:700;padding:0.75rem 1rem;cursor:pointer;transition:transform 0.2s, box-shadow 0.2s;}.bundle-add:hover{transform:translateY(-2px);box-shadow:0 10px 18px rgba(46,125,50,0.25);}.bundle-hint{margin-top:1rem;font-size:0.95rem;color:#3a3a3a;font-style:italic;}.bundle-feedback{min-height:1.2rem;font-size:0.9rem;font-weight:600;color:var(--primary-green);}@media (max-width:640px){.order-hero{padding:2.5rem 4%;}.order-hero-content{grid-template-columns:1fr;}.order-hero-actions{flex-direction:column;}.bundle-section{padding:1.8rem;}.bundle-grid{grid-template-columns:1fr;}.promo-shortcuts{grid-template-columns:1fr;padding:0 1.5rem;}.holiday-highlights{grid-template-columns:1fr;}.gift-collection .gift-showcase{flex-direction:column;}.gift-media{margin:1rem 0 0;}.holiday-steps, .holiday-cta{padding:1.75rem;}.order-toolbar{flex-wrap:wrap;}.orders .order-item{flex-direction:column;}}.orders{padding:2rem 5% 6rem;background:#fafafa;border-radius:0;margin:0;box-shadow:none;}.order-customer{background:#fff;border-radius:16px;padding:1.5rem;margin:0 0 1rem;box-shadow:0 2px 12px rgba(0,0,0,0.06);border:1px solid #f0f0f0;max-width:1100px;margin-left:auto;margin-right:auto;}.order-customer .form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1rem;}.order-customer input, .order-customer select, .order-customer textarea{width:100%;padding:.9rem 1rem;border:1px solid #e0e0e0;border-radius:10px;background:#fff;font-size:0.95rem;}.orders .order-grid{display:flex;flex-direction:column;gap:0;max-width:1100px;margin:0 auto;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,0.06);border:1px solid #f0f0f0;}.orders .order-item{display:block;background:#fff;border-bottom:1px solid #f0f0f0;margin:0;position:relative;transition:background 0.15s ease;}.orders .order-item:last-child{border-bottom:none;}.orders .order-item:hover{background:#f9f9f9;}.order-item-inner{display:flex;gap:1.25rem;padding:1.25rem;align-items:flex-start;}.orders .order-item img{width:120px;height:120px;min-width:120px;object-fit:cover;border-radius:14px;border:1px solid #f0f0f0;background:#fafafa;flex-shrink:0;}.order-item-content{flex:1;min-width:0;}.order-item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;}.orders .order-info{flex:1;min-width:0;}.orders .order-info h4{font-size:1.1rem;color:#1a1a1a;margin:0 0 0.5rem;font-weight:600;line-height:1.3;}.orders .order-details{font-size:0.88rem;color:#666;line-height:1.5;margin-bottom:0.5rem;}.orders .order-info .meta{font-size:0.9rem;color:#888;display:flex;gap:0.4rem;flex-wrap:wrap;align-items:center;}.order-price{color:var(--primary-green);font-weight:700;font-size:1.05rem;}.order-item-add{flex-shrink:0;width:38px;height:38px;border-radius:50%;background:linear-gradient(135deg, var(--primary-green), var(--light-green));color:#fff;border:none;font-size:1.5rem;font-weight:300;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 12px rgba(46,125,50,0.25);transition:transform 0.2s, box-shadow 0.2s;}.order-item-add:hover{transform:scale(1.05);box-shadow:0 6px 16px rgba(46,125,50,0.3);}.order-item-add:active{transform:scale(0.95);box-shadow:0 2px 8px rgba(46,125,50,0.3);}.order-item-add.added{background:#fff;color:var(--primary-green);border:2px solid var(--primary-green);box-shadow:0 2px 8px rgba(46,125,50,0.15);}.order-controls{display:none;width:100%;padding:1rem 1.25rem;background:#f9fdf9;border-top:1px solid #e6f2e6;justify-content:flex-end;align-items:center;}.order-item.has-qty .order-controls{display:flex;}.order-item.has-qty .order-item-add{display:none;}.order-controls .chk{display:none;}.order-controls .qty{margin:0;gap:0.45rem;display:flex;align-items:center;background:#fff;border-radius:50px;padding:0.2rem;box-shadow:0 2px 10px rgba(0,0,0,0.08);}.qty button{width:36px;height:36px;border-radius:50%;border:none;background:transparent;font-size:1.25rem;display:flex;align-items:center;justify-content:center;color:var(--primary-green);font-weight:600;transition:background 0.2s;cursor:pointer;}.qty button:hover{background:#f0f0f0;}.qty button:active{background:#e8e8e8;}.qty input{width:50px;text-align:center;border:none;background:transparent;font-size:1.1rem;font-weight:700;color:#333;pointer-events:none;}.order-actions{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin-top:2rem;max-width:1100px;margin-left:auto;margin-right:auto;padding:0 1rem;}.secondary-button{background:#fff;color:var(--primary-green);border:2px solid var(--primary-green);padding:.7rem 1.75rem;border-radius:25px;transition:transform 0.3s, box-shadow 0.3s, background 0.3s;min-height:44px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:600;cursor:pointer;}.secondary-button:hover{transform:translateY(-2px);box-shadow:0 5px 15px rgba(46,125,50,0.2);background:rgba(46,125,50,0.05);}.secondary-button:active{transform:translateY(0);}.order-total{margin-left:auto;font-weight:800;color:var(--primary-green);font-size:1.1rem;}.order-status{flex:1 1 100%;min-height:1.2rem;font-size:.95rem;color:#666;margin-top:0.5rem;}.order-status[data-status="success"]{color:var(--primary-green);}.order-status[data-status="error"]{color:var(--berry-red);}.order-status[data-status="pending"]{color:#C47B00;}.order-privacy{text-align:center;font-size:.9rem;color:#666;margin-top:1.5rem;max-width:1100px;margin-left:auto;margin-right:auto;}.order-privacy a{color:var(--primary-green);text-decoration:underline;}.order-toolbar{display:flex;justify-content:flex-start;align-items:center;gap:.5rem 1rem;margin:0 0 1rem;background:#fff;padding:0.75rem 1rem;border-radius:16px;max-width:1100px;margin-left:auto;margin-right:auto;box-shadow:0 2px 12px rgba(0,0,0,0.06);border:1px solid #f0f0f0;}.order-tabs{display:flex;flex-wrap:wrap;gap:.6rem}.order-tab{border:1px solid rgba(46,125,50,0.25);background:#fff;color:var(--primary-green);padding:.5rem 1.15rem;border-radius:50px;cursor:pointer;font-weight:600;transition:all .2s;font-size:0.95rem;}.order-tab:hover{background:rgba(46,125,50,0.05);}.order-tab.is-active{background:var(--primary-green);color:#fff;border-color:var(--primary-green);box-shadow:0 4px 12px rgba(46,125,50,0.25);}.order-pagination{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-top:1.5rem;padding:1rem;background:#fff;border-radius:16px;max-width:1100px;margin-left:auto;margin-right:auto;}.order-pagination .page-prev,.order-pagination .page-next{border:1px solid #e0e0e0;background:#fff;padding:.55rem 1rem;border-radius:10px;cursor:pointer;font-weight:600;transition:all 0.2s;}.order-pagination .page-prev:hover,.order-pagination .page-next:hover{background:#f5f5f5;border-color:var(--primary-green);}.order-pagination .page-prev[disabled],.order-pagination .page-next[disabled]{opacity:.4;cursor:not-allowed;}.order-pagination .page-prev[disabled]:hover,.order-pagination .page-next[disabled]:hover{background:#fff;border-color:#e0e0e0;}.order-pagination .page-info{font-weight:600;color:var(--primary-green);font-size:0.95rem;}@media (min-width:1025px){.hero-content{display:grid;grid-template-columns:1.1fr 0.9fr;gap:3rem;align-items:center;}.hero-text{text-align:left;margin:0;}.features{max-width:100%;margin-left:0;margin-right:0;}}.trust-bar{display:flex;gap:.75rem 1rem;justify-content:center;flex-wrap:wrap;margin:0 0 1.25rem 0;font-weight:700;color:var(--primary-green);}.trust-bar span{background:#fff;border:1px solid rgba(0,0,0,.06);padding:.5rem .8rem;border-radius:999px;box-shadow:0 2px 8px rgba(0,0,0,.05);}.hero-cta{display:flex;flex-direction:column;gap:.8rem;justify-content:center;align-items:center;flex-wrap:wrap;margin-bottom:2rem;}.hero-collage{position:relative;width:min(520px, 80vw);aspect-ratio:1/1;margin:0 auto;}.hero-collage img{position:absolute;inset:auto;border-radius:16px;background:#fff;object-fit:cover;box-shadow:0 20px 40px rgba(0,0,0,.15);}.hero-collage img:nth-child(1){left:0;bottom:0;width:62%;transform:rotate(-2deg);}.hero-collage img:nth-child(2){right:0;top:10%;width:48%;transform:rotate(3deg);}.hero-collage img:nth-child(3){left:15%;top:8%;width:40%;transform:rotate(-5deg);}.float{animation:gentle-float 6s ease-in-out infinite;}.float.slow{animation-duration:9s;}.seasonal-callout{padding:16px;}.seasonal-card{display:flex;gap:16px;align-items:center;text-decoration:none;background:linear-gradient(135deg, rgba(227, 242, 253, 0.8), rgba(232, 245, 233, 0.8));border:2px solid rgba(0, 0, 0, 0.06);border-radius:16px;padding:16px 18px;box-shadow:0 6px 20px rgba(0, 0, 0, 0.08);}.seasonal-card:hover{transform:translateY(-1px);}.seasonal-badge{font-size:28px;filter:saturate(1.2);}.seasonal-content h2{margin:0;font-size:1.15rem;line-height:1.2;}.seasonal-content p{margin:4px 0 6px 0;color:#333;}.seasonal-cta{font-weight:600;text-decoration:underline;}@media (max-width:767px){.seasonal-content h2{font-size:1.05rem;}.seasonal-card{padding:14px;}}.promo-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));margin-top:12px;}.promo-grid figure{margin:0;}.promo-grid img{width:100%;height:auto;border-radius:12px;display:block;}.promo-grid figcaption{text-align:center;margin-top:6px;font-size:0.95rem;}.legal-links{margin-top:12px;}.legal-links a{font-size:0.9rem;color:#E6F4EA;text-decoration:none;}.legal-links a:hover{text-decoration:underline;}.hero-image{position:relative;}.hero-callout{margin-bottom:0.75rem;width:100%;display:flex;justify-content:center;}.hero-callout-mobile{display:none;}@media (max-width:767px){.hero-callout-desktop{display:none;}.hero-callout-mobile{display:flex;}}.promo-card{display:inline-flex;align-items:center;gap:0.75rem;background:#fff;border:1px solid rgba(0, 0, 0, 0.06);border-radius:16px;padding:0.55rem 0.7rem;text-decoration:none;color:#222;font-weight:700;box-shadow:0 10px 26px rgba(0, 0, 0, 0.12);transition:transform 0.2s, box-shadow 0.2s, filter 0.2s;width:100%;max-width:min(520px, 80vw);}.promo-card:hover{transform:translateY(-1px);box-shadow:0 14px 34px rgba(0, 0, 0, 0.16);filter:saturate(1.03);}.promo-thumb{width:180px;height:120px;object-fit:cover;border-radius:12px;flex:0 0 auto;}.promo-pill{display:inline-flex;align-items:center;gap:0.55rem;}.promo-pill .chip-cta{text-decoration:underline;color:var(--primary-green);}@media (min-width:1025px){.hero-image{padding-top:84px;}.hero-callout{position:absolute;top:0;left:50%;transform:translateX(-50%) translateY(-62%);width:min(520px, 80vw);}}@media (max-width:1024px){.promo-thumb{display:none;}}.promo-card.promo-xmas{background:linear-gradient(135deg, #B71C1C 0%, #C62828 45%, #1B5E20 100%);color:#fff;border:2px solid rgba(255, 255, 255, .28);box-shadow:0 16px 44px rgba(183, 28, 28, .35);position:relative;isolation:isolate;animation:xmas-pulse 6s ease-in-out infinite;}.promo-card.promo-xmas .promo-thumb{border-radius:12px;border:2px solid rgba(255, 255, 255, .25);}.promo-content{display:flex;flex-direction:column;gap:.15rem;}.promo-title{font-family:'Playfair Display', serif;font-size:clamp(1rem, 1.8vw, 1.35rem);line-height:1.1;letter-spacing:.2px;}.promo-sub{opacity:.95;font-size:.95rem;}.promo-cta{font-weight:800;text-decoration:underline;color:#fff;}.promo-ribbon{position:absolute;top:-10px;left:-10px;background:#D32F2F;color:#fff;font-weight:900;padding:.25rem .55rem;border-radius:8px;box-shadow:0 10px 22px rgba(0, 0, 0, .22);transform:rotate(-10deg);letter-spacing:.5px;font-size:.8rem;z-index:2;}.promo-snow{position:absolute;inset:0;pointer-events:none;z-index:1;opacity:.18;background-image:radial-gradient(currentColor 1.2px, transparent 1.2px), radial-gradient(currentColor 1.2px, transparent 1.2px);background-size:22px 22px, 28px 28px;background-position:0 0, 11px -11px;color:#fff;animation:snowFall 18s linear infinite;}.promo-snow::after{content:'';position:absolute;inset:0;background-image:radial-gradient(currentColor 1.2px, transparent 1.2px);background-size:18px 18px;background-position:6px -6px;opacity:.25;animation:snowFall 28s linear infinite reverse;}.twinkle{display:inline-block;animation:twinkle 2.4s ease-in-out infinite;}.promo-card.promo-xmas:hover{transform:translateY(-2px) scale(1.01);box-shadow:0 20px 54px rgba(0, 0, 0, .22);filter:saturate(1.05);}.promo-card.promo-xmas:focus-visible{outline:3px solid #FFE082;outline-offset:3px;}@media (min-width:1025px){.promo-card.promo-xmas{width:100%;max-width:100%;}}@keyframes snowFall{to{background-position:0 600px, 11px 589px;}}@keyframes twinkle{0%, 100%{opacity:.7;transform:scale(1);}50%{opacity:1;transform:scale(1.2);}}@keyframes xmas-pulse{0%, 100%{box-shadow:0 16px 44px rgba(183, 28, 28, .35);}50%{box-shadow:0 22px 66px rgba(183, 28, 28, .5);}}@media (prefers-reduced-motion:reduce){.promo-card.promo-xmas{animation:none;}.promo-snow, .promo-snow::after, .twinkle{animation:none;}}@supports (height:100svh){.product-item.details-active .product-details{max-height:calc(100svh - 88px);}}.site-footer{background:#0D3B0F;color:#fff;margin-top:4rem;}.site-footer a{color:#E6F4EA;text-decoration:none;}.site-footer a:hover{text-decoration:underline;}.footer-grid{max-width:1400px;margin:0 auto;padding:2.5rem 5%;display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:2rem;}.footer-col h4{font-family:'Playfair Display', serif;font-size:1.1rem;margin-bottom:0.75rem;color:#FFFDE7;}.footer-logo{display:block;filter:drop-shadow(0 6px 18px rgba(0, 0, 0, 0.25));margin:0 auto 0.5rem auto;}.footer-claim{opacity:0.9;margin:0.25rem 0 0.25rem 0;}.footer-email{margin-top:0.35rem;font-weight:600;}.footer-email a{color:#E6F4EA;text-decoration:none;}.footer-email a:hover{text-decoration:underline;}.footer-list{list-style:none;padding:0;margin:0;display:grid;gap:0.35rem;}.footer-list li{line-height:1.5;}.footer-bar{border-top:1px solid rgba(255, 255, 255, 0.12);padding:1rem 5%;text-align:center;font-size:0.95rem;color:#E6F4EA;}.legal-links a{color:#E6F4EA;}.legal-links a:hover{text-decoration:underline;}@media (max-width:1000px){.footer-grid{grid-template-columns:repeat(2, minmax(0, 1fr));}}@media (max-width:560px){.footer-grid{grid-template-columns:1fr;}}#cookie-banner{position:fixed;bottom:-100%;left:0;right:0;background:linear-gradient(135deg, #1B5E20 0%, var(--primary-green) 100%);color:white;padding:1.25rem 5%;box-shadow:0 -4px 20px rgba(0, 0, 0, 0.25);z-index:9999;transition:bottom 0.4s cubic-bezier(0.4, 0, 0.2, 1);border-top:3px solid var(--light-green);}#cookie-banner.show{bottom:0;}.cookie-content{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap;}.cookie-text{flex:1;min-width:280px;line-height:1.6;font-size:0.95rem;}.cookie-text strong{font-weight:600;display:block;margin-bottom:0.25rem;font-size:1.05rem;}.cookie-text a{color:#FFF8E1;text-decoration:underline;font-weight:500;}.cookie-text a:hover{color:white;}.cookie-actions{display:flex;gap:0.75rem;flex-shrink:0;}#cookie-accept{background:white;color:var(--primary-green);border:none;padding:0.75rem 1.75rem;border-radius:50px;font-weight:600;font-size:1rem;cursor:pointer;transition:all 0.3s ease;box-shadow:0 4px 12px rgba(0, 0, 0, 0.15);}#cookie-accept:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0, 0, 0, 0.2);background:#FFF8E1;}#cookie-accept:active{transform:translateY(0);}@media (max-width:767px){#cookie-banner{padding:1rem 4%;}.cookie-content{flex-direction:column;gap:1rem;text-align:center;}.cookie-text{min-width:100%;}.cookie-actions{width:100%;justify-content:center;}#cookie-accept{flex:1;max-width:300px;}}html, body{overflow-x:hidden;width:100%;max-width:100vw;position:relative;box-sizing:border-box;}*, *::before, *::after{box-sizing:border-box;}.hero-image{max-width:100%;width:100%;position:relative;}@media (max-width:767px){.hero{overflow-x:hidden !important;overflow-y:visible !important;width:100vw;max-width:100%;min-height:auto !important;padding:calc(70px + 2rem) 0 3.5rem !important;margin-top:0 !important;}.hero::after{content:'';position:absolute;left:0;right:0;bottom:-90px;height:180px;background:linear-gradient(180deg, rgba(232,245,233,0.9) 0%, #FFF8E1 60%, #ffffff 100%);pointer-events:none;z-index:0;}.hero>*{position:relative;z-index:1;}.hero-content{width:100%;max-width:100vw;padding:1.5rem 4% !important;box-sizing:border-box !important;flex-direction:column !important;}.hero-image{width:100% !important;max-width:100% !important;margin-top:2rem !important;padding:0 !important;overflow:hidden !important;}header{height:70px;padding-left:max(3%, env(safe-area-inset-left, 0));padding-right:max(3%, env(safe-area-inset-right, 0));}nav{padding:0.5rem 3%;height:70px;}.logo-container{height:60px;width:auto;flex-shrink:0;overflow:hidden;}header .logo-container a .logo-img, .logo-container a .logo-img, .logo-img{height:50px;width:auto;max-height:50px;min-height:50px;max-width:160px;object-fit:contain;display:block;}.logo-container a{display:flex;align-items:center;height:100%;max-width:160px;}.hero-text{width:100%;max-width:100%;padding:0;overflow-wrap:break-word;word-wrap:break-word;text-align:center;}.hero-text h1{width:100%;max-width:100%;font-size:clamp(1.5rem, 6vw, 2rem);overflow-wrap:break-word;word-wrap:break-word;word-break:normal;hyphens:manual;margin-bottom:0.8rem;}.hero-text .subtitle{font-size:clamp(1rem, 4vw, 1.3rem);margin-bottom:1rem;}.hero-text p{font-size:0.95rem;line-height:1.6;margin-bottom:1.5rem;}.hero-collage{width:100%;margin:1.5rem auto 0;overflow-x:auto;overflow-y:hidden;position:relative;display:flex;gap:1rem;padding:0.2rem 0 1rem;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;align-items:stretch;}.hero-collage::-webkit-scrollbar{display:none;}.hero-collage img{position:relative;flex:0 0 80%;max-width:80%;height:auto;object-fit:cover;border-radius:0;box-shadow:0 10px 20px rgba(0,0,0,0.1);scroll-snap-align:center;transform:none;}.hero-callout{max-width:100%;margin-bottom:1rem;}.promo-card{max-width:88vw;margin:0 auto;}.promo-thumb{max-width:100%;height:auto;}.trust-bar{flex-wrap:wrap;gap:0.5rem;justify-content:center;font-size:0.9rem;}.trust-bar span{padding:0.4rem 0.65rem;}.hero-cta{flex-direction:column;align-items:stretch;width:100%;}.hero-cta .cta-button, .hero-cta .secondary-button{width:100%;text-align:center;}.features{padding:0 1rem;}.feature{padding:1.25rem 1rem;}.feature h3{font-size:1.1rem;}.feature p{font-size:0.9rem;}.nav-links li{width:100%;}.nav-links a{display:block;padding:0.8rem 1rem;min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:10px;transition:background 0.3s;}.nav-links a:not(.cta-button):hover, .nav-links a:not(.cta-button):active{background:rgba(46,125,50,0.1);}.products{padding:3rem 5% 0 5%;margin:3rem auto;}.product-categories{grid-template-columns:1fr;gap:2rem;margin-bottom:3rem;}.category-card{max-width:100%;}.category-content{padding:1.5rem;}.product-grid{grid-template-columns:repeat(auto-fill, minmax(160px, 1fr));gap:1.5rem;}.product-item{padding:1rem;}.product-image{width:150px;height:150px;}.gift-grid{grid-template-columns:1fr;gap:2rem;}.gift-card{padding:1.5rem;}.form-row{grid-template-columns:1fr;}.contact-form-container{padding:2rem 1.5rem;}.contact-form-container h2{font-size:2rem;}.delivery-grid{grid-template-columns:1fr;}.contact-content{grid-template-columns:1fr;gap:2rem;}.section-title{font-size:clamp(1.5rem, 6vw, 2rem);padding:0.5rem 0;margin-bottom:0.5rem;}.section-subtitle{font-size:clamp(0.9rem, 3.5vw, 1.1rem);margin-bottom:2rem;}.promo-banner h3{font-size:clamp(1.3rem, 5vw, 1.8rem);}.promo-banner p{font-size:clamp(0.9rem, 3vw, 1.1rem);}.christmas-section, .services, .delivery-info, .contact-form-section{padding:3rem 5%;}body{padding-bottom:env(safe-area-inset-bottom, 0);}#cookie-banner.show{bottom:0;padding-bottom:max(1rem, env(safe-area-inset-bottom));}.floating-elements{display:none;}header{padding-left:env(safe-area-inset-left, 0);padding-right:env(safe-area-inset-right, 0);}}@media (max-width:480px){header .logo-container a .logo-img, .logo-container a .logo-img, .logo-img{height:45px;max-height:45px;min-height:45px;max-width:140px;}.logo-container{height:50px;}.logo-container a{max-width:140px;}.hero-collage{width:100%;}.hero-text h1{font-size:1.65rem;line-height:1.3;}.hero-text p{font-size:0.9rem;line-height:1.5;}.trust-bar{flex-wrap:wrap;gap:0.5rem;justify-content:center;}.trust-bar span{font-size:0.75rem;padding:0.35rem 0.55rem;}.promo-card{max-width:85vw;}.features{margin-top:1.5rem;gap:0.8rem;}.feature{padding:1rem;flex-direction:row;text-align:left;gap:0.8rem;}.feature-icon{width:40px;height:40px;font-size:1.2rem;}.feature-text{text-align:left;}.feature-text h3{font-size:1rem;}.feature-text p{font-size:0.85rem;}.promo-banner{padding-block:clamp(1.5rem, 3vw, 2rem);padding-inline:4%;}.promo-banner h3{font-size:1.3rem;margin-bottom:0.8rem;}.promo-banner p{font-size:0.9rem;}.promo-emoji{font-size:1.5rem;margin:0 0.3rem;}.products{padding:2rem 4% 0 4%;margin:2rem auto;}.section-title{font-size:1.5rem;margin-bottom:0.5rem;}.section-subtitle{font-size:0.9rem;margin-bottom:2rem;}.product-categories{gap:1.5rem;margin-bottom:2rem;}.category-content{padding:1.25rem;}.category-content h3{font-size:1.3rem;}.category-content p{font-size:0.9rem;}.product-grid{grid-template-columns:repeat(auto-fill, minmax(140px, 1fr));gap:1rem;}.product-item{padding:0.8rem;}.product-image{width:120px;height:120px;}.product-item h4{font-size:0.95rem;}.product-item .quantity{font-size:0.8rem;}.price-badge{font-size:0.8rem;padding:0.25rem 0.5rem;top:8px;left:8px;}.christmas-section{padding:2rem 4%;margin:2rem 0;}.gift-grid{gap:1.5rem;margin-top:2rem;}.gift-card{padding:1.25rem;}.gift-icon{font-size:2.5rem;}.gift-card h4{font-size:1.3rem;margin-bottom:1rem;}.gift-options li{font-size:0.9rem;padding:0.4rem 0.4rem 0.4rem 1.8rem;}.services{padding:2rem 4%;}.delivery-info{padding:2rem 4%;margin:2rem 0;}.delivery-content h3{font-size:1.5rem;margin-bottom:1rem;}.delivery-grid{gap:1.5rem;margin-top:1.5rem;}.delivery-card{padding:1.5rem;}.delivery-icon{font-size:2.5rem;}.delivery-card h4{font-size:1.1rem;}.delivery-card p{font-size:0.9rem;}.contact-form-section{padding:2rem 4%;}.contact-form-container{padding:1.5rem 1rem;}.contact-form-container h2{font-size:1.6rem;}.contact-form-container p{font-size:0.9rem;margin-bottom:1.5rem;}.form-group label{font-size:0.9rem;}.form-group input, .form-group textarea, .form-group select{padding:0.8rem;font-size:16px;}.submit-btn{padding:0.9rem 1.5rem;font-size:1rem;}.contact{padding:2rem 4%;margin-top:3rem;}.contact-content{gap:1.5rem;}.contact-info{padding:1.25rem;}.contact-info h3{font-size:1.3rem;}.contact-info p{font-size:0.9rem;}footer{padding:1.5rem 4%;}footer p{font-size:0.85rem;}}@media (max-width:375px){header .logo-container a .logo-img, .logo-container a .logo-img, .logo-img{height:40px;max-height:40px;min-height:40px;max-width:130px;}.logo-container{height:45px;}.logo-container a{max-width:130px;}header{height:65px;}nav{height:65px;}.hero{margin-top:0 !important;padding-top:65px !important;}.hero-collage{width:min(240px, 65vw) !important;}.hero-text h1{font-size:1.5rem !important;}.hero-content{padding:2rem 4% !important;}.promo-card{max-width:82vw !important;}}img:not(.hero-collage img){max-width:100%;height:auto;}@media (max-width:640px){
  .order-hero{padding:1.5rem 1rem;margin-top:70px;background:linear-gradient(150deg, rgba(46,125,50,0.08), rgba(255,248,225,0.7));}
  .order-hero-content{gap:0.75rem;grid-template-columns:1fr;}
  .order-hero-text{text-align:center;}
  .order-hero-text h1{font-size:1.5rem;margin-bottom:0.5rem;}
  .order-hero-text p{font-size:0.9rem;margin-bottom:0.5rem;line-height:1.5;}
  .order-hero-tags{gap:0.35rem;justify-content:center;}
  .order-hero-tags span{padding:0.35rem 0.7rem;font-size:0.8rem;}
  .order-hero-card{display:none;}
  .orders{padding:1rem 1rem 8rem;background:#fafafa;}
  .order-customer{margin:0 0 1rem;padding:1.15rem;}
  .order-customer .form-row{grid-template-columns:1fr;gap:0.75rem;}
  .order-toolbar{position:sticky;top:70px;z-index:900;margin:0 -1rem 1rem;padding:0.85rem 1rem;border-radius:0;background:#fff;box-shadow:0 2px 12px rgba(0,0,0,0.08);overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;border:none;}
  .order-toolbar::-webkit-scrollbar{display:none;}
  .order-tabs{flex-wrap:nowrap;gap:0.55rem;padding:0;}
  .order-tab{white-space:nowrap;font-size:0.9rem;padding:0.5rem 1.1rem;}
  .orders .order-grid{margin:0;border-radius:12px;}
  .order-item-inner{padding:1rem;}
  .orders .order-item img{width:100px;height:100px;min-width:100px;}
  .orders .order-info h4{font-size:1rem;}
  .order-item-add{width:34px;height:34px;font-size:1.4rem;}
  .orders .order-details{font-size:0.85rem;margin-bottom:0.4rem;}
  .orders .order-info .meta{font-size:0.88rem;}
  .order-price{font-size:1rem;}
  .order-controls{padding:0.85rem 1rem;}
  .order-actions{position:fixed;bottom:0;left:0;right:0;background:#fff;border-radius:0;padding:1rem 1.25rem calc(env(safe-area-inset-bottom,0) + 1rem);box-shadow:0 -4px 24px rgba(0,0,0,0.12);flex-direction:row;align-items:center;justify-content:space-between;gap:0.75rem;z-index:950;border-top:1px solid #e8e8e8;margin:0;max-width:100%;}
  .order-total{order:0;width:auto;flex:1;text-align:left;margin:0;font-size:1.05rem;font-weight:800;color:#333;line-height:1.3;}
  .order-actions .cta-button{width:auto;flex-shrink:0;padding:0.8rem 1.75rem;font-size:0.95rem;font-weight:700;border-radius:50px;min-height:50px;box-shadow:0 4px 16px rgba(46,125,50,0.3);transition:all 0.2s ease;}
  .order-actions .cta-button:active{transform:scale(0.97);}
  .order-actions .cta-button:disabled{opacity:0.5;cursor:not-allowed;}
  .order-actions .secondary-button{display:none;}
  .order-status{display:none;}
  .order-pagination{padding:1rem;margin:1.5rem 0 1rem;border-radius:12px;}
  .order-privacy{font-size:0.85rem;text-align:center;padding:1rem 0.5rem;margin:0 0 6rem;color:#666;line-height:1.5;}
  .holiday-highlights,
  .gift-collection{
    display:flex;
    overflow-x:auto;
    gap:1rem;
    padding-bottom:0.75rem;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .holiday-highlights::-webkit-scrollbar,
  .gift-collection::-webkit-scrollbar{display:none;}
  .holiday-highlights .highlight-card,
  .gift-collection .gift-showcase{
    flex:0 0 85%;
    min-width:260px;
    scroll-snap-align:start;
  }
  .gift-collection .gift-showcase{
    margin:0;
  }
  .gift-collection .gift-media{
    margin:1rem 1rem 0;
  }
}
/* Ensure footer addresses keep normal font style across breakpoints */
.site-footer address{
  font-style:normal;
}

/* Fix mobile footer stacking and hero carousel fill */
@media (max-width:767px){
  html, body{
    overflow-x:hidden !important;
    overflow-y:auto !important;
    height:auto !important;
    min-height:100vh !important;
    max-height:none !important;
    position:relative !important;
  }
  body{
    padding-bottom:0 !important;
    padding-top:0 !important;
  }
  #header{
    position:fixed !important;
    top:0 !important;
    height:70px !important;
    margin:0 !important;
    z-index:1000 !important;
  }
  .hero{
    margin-top:0 !important;
    padding-top:70px !important;
  }
  .hero-collage{
    width:100% !important;
    margin:1.5rem auto 0 !important;
    padding:0 5% 1.5rem !important;
    gap:1rem !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    align-items:center !important;
  }
  .hero-collage img{
    position:relative !important;
    flex:0 0 90% !important;
    width:90% !important;
    max-width:90% !important;
    height:auto;
    aspect-ratio:1 / 1 !important;
    object-fit:cover;
    border-radius:16px !important;
    box-shadow:0 10px 25px rgba(0,0,0,0.15);
    scroll-snap-align:center;
    transform:none !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    inset:auto !important;
  }
}

@media (max-width:640px){
  .site-footer,
  footer{
    padding:2.5rem 6% 3.25rem 6%;
    text-align:center;
  }
  .site-footer .footer-grid,
  .footer-grid{
    display:flex !important;
    flex-direction:column !important;
    flex-wrap:wrap !important;
    width:100%;
    gap:0 !important;
    align-items:center !important;
  }
  .footer-grid > *:first-child,
  .site-footer .footer-col:first-child{
    width:100% !important;
    max-width:100% !important;
    flex:0 0 100% !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    text-align:center !important;
    gap:0.6rem !important;
    margin:0 0 1.75rem 0 !important;
  }
  .footer-grid nav.footer-col,
  .site-footer nav.footer-col{
    width:49% !important;
    max-width:49% !important;
    flex:0 0 49% !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    text-align:center !important;
    gap:0.6rem !important;
    margin:0 1% 1.75rem 0 !important;
  }
  .footer-grid address.footer-col,
  .site-footer address.footer-col{
    width:100% !important;
    max-width:100% !important;
    flex:0 0 100% !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    text-align:center !important;
    gap:0.6rem !important;
    margin:0 0 1.75rem 0 !important;
  }
  .footer-grid address.footer-col + .footer-col,
  .site-footer address.footer-col + .footer-col{
    width:49% !important;
    max-width:49% !important;
    flex:0 0 49% !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    text-align:center !important;
    gap:0.6rem !important;
    margin:0 0 1.75rem 1% !important;
  }
  .footer-grid > *:last-child{
    margin-bottom:0 !important;
  }
  .site-footer .footer-col h4,
  .footer-col h4{
    margin:0 0 0.4rem 0;
    font-size:1.1rem;
  }
  .site-footer .footer-list,
  .footer-list{
    list-style:none;
    padding:0;
    margin:0;
    width:100%;
    display:flex;
    flex-direction:column;
    gap:0.5rem;
  }
  .site-footer .footer-list li,
  .footer-list li{
    width:100%;
    line-height:1.6;
  }
  .site-footer .footer-list a,
  .footer-list a{
    display:inline-block;
    padding:0.15rem 0;
  }
  .footer-logo{
    max-width:110px;
    height:auto;
  }
  .site-footer .footer-bar,
  .footer-bar{
    padding:1.5rem 0 0.75rem;
    display:flex;
    flex-direction:column;
    gap:0.35rem;
  }
  .site-footer address{
    font-style:normal;
  }
}

/* ========================================
   FIX PROBLEMI SCROLL MOBILE
   ======================================== */
/* 1. Reset overflow sul body e html */
html{
  overflow-x:hidden;
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch;
  height:100%;
}
body{
  overflow-x:hidden !important;
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch;
  min-height:100%;
  position:relative;
  overscroll-behavior-y:none;
}
/* 2. Fix per il menu mobile - usa una classe specifica */
body.menu-open{
  overflow:hidden !important;
  position:fixed;
  width:100%;
  height:100%;
}
/* 3. Assicurati che il contenuto principale sia scrollabile */
main,
.hero,
section{
  overflow:visible !important;
  transform:none !important;
}
/* 4. Fix per elementi flottanti che potrebbero uscire dal viewport */
.floating-elements{
  pointer-events:none;
  overflow:hidden;
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:100%;
  z-index:-1;
}
.floating-berry{
  position:absolute !important;
}
/* 5. Fix specifici per mobile */
@media (max-width:768px){
  #header{
    position:fixed !important;
    top:0 !important;
    height:70px !important;
    margin:0 !important;
    z-index:1000 !important;
    transform:none !important;
  }
  .hero{
    transform:none !important;
    margin-top:0 !important;
    padding-top:70px !important;
  }
  .hero-content,
  .container{
    overflow:visible !important;
  }
  body{
    padding-top:0 !important;
  }
  #cookie-banner{
    position:fixed;
    bottom:0;
    left:0;
    right:0;
    z-index:10000;
    transform:translateY(100%);
    transition:transform 0.3s ease;
  }
  #cookie-banner.show{
    transform:translateY(0);
  }
  img,
  video,
  iframe{
    max-width:100% !important;
    height:auto;
  }
  .product-grid{
    overflow:visible !important;
    max-height:none !important;
  }
  .product-grid.active{
    max-height:none !important;
  }
  .nav-links{
    position:fixed;
    top:60px;
    left:0;
    right:0;
    bottom:0;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch;
    z-index:999;
  }
  .product-details{
    max-height:80vh;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch;
  }
}
/* 6. Fix per viewport su iOS */
@supports (-webkit-touch-callout: none){
  body{
    position:fixed;
    width:100%;
    overflow-y:scroll;
    -webkit-overflow-scrolling:touch;
  }
  body > *{
    transform:translate3d(0, 0, 0);
  }
}
/* 7. Fix aggiuntivi per problemi comuni */
*{
  -webkit-tap-highlight-color:transparent;
}
input,
textarea,
select{
  font-size:16px !important;
}
@media (max-width:768px){
  input,
  textarea,
  select{
    font-size:16px !important;
  }
}
/* 8. Container scroll wrapper (se necessario) */
.page-wrapper{
  min-height:100vh;
  overflow-x:hidden;
  overflow-y:auto;
  -webkit-overflow-scrolling:touch;
}
/* 9. Fix per loading screen */
.loading{
  position:fixed;
  pointer-events:none;
}
.loading.hidden{
  display:none !important;
}
/* 10. Debug helpers (rimuovi in produzione) */
.debug-scroll{
  position:fixed;
  top:10px;
  right:10px;
  background:rgba(0,0,0,0.8);
  color:white;
  padding:10px;
  z-index:99999;
  font-size:12px;
  display:none;
}
