.btn{display:inline-block;padding:12px 25px;border-radius:4px;font-weight:600;text-align:center;cursor:pointer;transition:.3s;position:relative;overflow:hidden;z-index:1}.btn-primary{background-color:#2e7d32;color:#fff;border:none}.btn-secondary{background-color:transparent;color:#2e7d32;border:2px solid #2e7d32}.btn-pulse{animation:2s infinite pulse}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 0 0 rgba(46,125,50,.7)}70%{transform:scale(1.05);box-shadow:0 0 0 10px rgba(46,125,50,0)}100%{transform:scale(1);box-shadow:0 0 0 0 rgba(46,125,50,0)}}.btn-shine{position:relative;overflow:hidden}.btn-shine::after{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(to right,rgba(255,255,255,0) 0,rgba(255,255,255,.3) 50%,rgba(255,255,255,0) 100%);transform:rotate(30deg);transition:.5s;opacity:0}.btn-shine:hover::after{opacity:1;left:100%;transition:.5s}.btn-bounce:hover{animation:.8s bounce}@keyframes bounce{0%,100%,20%,50%,80%{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.btn-ripple{position:relative;overflow:hidden}.btn-ripple::after{content:'';position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;background-image:radial-gradient(circle,#fff 10%,transparent 10.01%);background-repeat:no-repeat;background-position:50%;transform:scale(10,10);opacity:0;transition:transform .5s,opacity .8s}.btn-ripple:active::after{transform:scale(0,0);opacity:.3;transition:none}.btn-slide{position:relative;z-index:1;transition:color .3s}.btn-slide::before{content:'';position:absolute;top:0;left:0;width:0;height:100%;background-color:#1b5e20;z-index:-1;transition:width .3s}.btn-slide:hover::before{width:100%}.btn-rotate:hover{transform:rotate(5deg) scale(1.1)}.btn-shake:hover{animation:.5s shake}@keyframes shake{0%,100%{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-5px)}20%,40%,60%,80%{transform:translateX(5px)}}.btn-glow:hover{box-shadow:0 0 15px #2e7d32}.btn-3d{transform-style:preserve-3d;transition:transform .3s,box-shadow .3s}.btn-3d:hover{transform:translateY(-3px);box-shadow:0 5px 10px rgba(0,0,0,.2)}.btn-3d:active{transform:translateY(0);box-shadow:0 2px 5px rgba(0,0,0,.2)}.shop-now{background-color:#2e7d32;color:#fff;padding:12px 30px;font-size:1.2rem;border-radius:30px;border:none;cursor:pointer;position:relative;overflow:hidden;z-index:1}.shop-now::before{content:'';position:absolute;top:0;left:0;width:0;height:100%;background-color:#1b5e20;z-index:-1;transition:width .3s}.shop-now:hover::before{width:100%}.shop-now:hover{box-shadow:0 5px 15px rgba(0,0,0,.3)}.submit-btn{background-color:#2e7d32;color:#fff;padding:12px 25px;border:none;border-radius:4px;font-size:1rem;font-weight:600;cursor:pointer;position:relative;overflow:hidden}.submit-btn::after{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(to right,rgba(255,255,255,0) 0,rgba(255,255,255,.3) 50%,rgba(255,255,255,0) 100%);transform:rotate(30deg);transition:.5s;opacity:0}.submit-btn:hover::after{opacity:1;left:100%;transition:.5s}.submit-btn:hover{background-color:#1b5e20}.filter-btn{position:relative;overflow:hidden}.filter-btn::after{content:'';position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;background-image:radial-gradient(circle,rgba(255,255,255,.3) 10%,transparent 10.01%);background-repeat:no-repeat;background-position:50%;transform:scale(10,10);opacity:0;transition:transform .5s,opacity .8s}.filter-btn:active::after{transform:scale(0,0);opacity:.3;transition:none}.social-btn{transition:transform .5s,background-color .3s}.social-btn:hover{transform:rotate(360deg)}.newsletter-form button{position:relative;overflow:hidden;z-index:1}.newsletter-form button::before{content:'';position:absolute;top:0;left:0;width:0;height:100%;background-color:#1b5e20;z-index:-1;transition:width .3s}.newsletter-form button:hover::before{width:100%}.whatsapp-button{animation:3s ease-in-out infinite float}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}.whatsapp-button:hover{animation:none;transform:scale(1.1)}