@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeUp{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeDown{from{opacity:0;transform:translateY(-40px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeLeft{from{opacity:0;transform:translateX(-50px)}to{opacity:1;transform:translateX(0)}}@keyframes fadeRight{from{opacity:0;transform:translateX(50px)}to{opacity:1;transform:translateX(0)}}@keyframes coffeeMove{0%{transform:translateY(0) rotate(0deg)}25%{transform:translateY(-15px) rotate(-5deg)}50%{transform:translateY(0) rotate(0deg)}75%{transform:translateY(-15px) rotate(5deg)}100%{transform:translateY(0) rotate(0deg)}}.loader i{animation:coffeeMove 1.5s infinite ease-in-out}.loader h3{animation:fadeIn 1s ease}header{animation:fadeDown .8s ease}.hero-content span{animation:fadeLeft 1s ease forwards}.hero-content h1{animation:fadeLeft 1.2s ease forwards}.hero-content p{animation:fadeLeft 1.4s ease forwards}.hero-buttons{animation:fadeUp 1.5s ease forwards}.hero-image{animation:fadeRight 1.2s ease forwards}.hero-stats div{animation:fadeUp 1s ease forwards}.hero-stats div:nth-child(2){animation-delay:.2s}.hero-stats div:nth-child(3){animation-delay:.4s}.btn{position:relative;overflow:hidden}.btn::before{content:"";position:absolute;width:0;height:0;background:rgb(255 255 255 / .25);border-radius:50%;transform:translate(-50%,-50%);left:50%;top:50%;transition:.5s}.btn:hover::before{width:300px;height:300px}.menu-card,.review-card,.contact-box{transition:transform .4s ease,box-shadow .4s ease}.menu-card:hover,.review-card:hover,.contact-box:hover{box-shadow:0 20px 40px rgb(0 0 0 / .12)}.about-image img,.gallery-item img,.menu-card img{transition:transform .5s ease}.about-image:hover img,.menu-card:hover img{transform:scale(1.05)}.logo i{transition:.4s ease}.logo:hover i{transform:rotate(-15deg)}.reveal{opacity:0;transform:translateY(50px);transition:opacity .8s ease,transform .8s ease}.reveal.active{opacity:1;transform:translateY(0)}.delay-1{transition-delay:.2s}.delay-2{transition-delay:.4s}.delay-3{transition-delay:.6s}.section-title span{animation:fadeUp .8s ease forwards}.section-title h2{animation:fadeUp 1s ease forwards}.feature{transition:transform .3s ease}.feature:hover{transform:translateX(10px)}.feature:hover i{transform:rotate(15deg)}.feature i{transition:transform .3s ease}.menu-card{position:relative;overflow:hidden}.menu-card::before{content:"";position:absolute;width:100%;height:4px;top:0;left:0;background:var(--main-color);transform:scaleX(0);transform-origin:left;transition:.4s ease}.menu-card:hover::before{transform:scaleX(1)}.menu-price button i{transition:.3s ease}.menu-price button:hover i{transform:rotate(90deg)}.offer-box{animation:fadeUp 1s ease}.offer-image img{animation:floatImage 3s infinite ease-in-out}@keyframes floatImage{0%{transform:translateY(0)}50%{transform:translateY(-15px)}100%{transform:translateY(0)}}.gallery-item{position:relative}.gallery-item::after{content:"";position:absolute;inset:0;background:linear-gradient(rgb(0 0 0 / .4),transparent);opacity:0;transition:.4s ease}.gallery-item:hover::after{opacity:1}.gallery-item:hover img{transform:scale(1.12)}.review-card img{transition:transform .4s ease}.review-card:hover img{transform:scale(1.1)}.stars i{animation:starMove .8s ease infinite alternate}.stars i:nth-child(2){animation-delay:.1s}.stars i:nth-child(3){animation-delay:.2s}.stars i:nth-child(4){animation-delay:.3s}.stars i:nth-child(5){animation-delay:.4s}@keyframes starMove{from{transform:translateY(0)}to{transform:translateY(-5px)}}.contact-box:hover i{animation:iconBounce .5s ease}@keyframes iconBounce{0%{transform:scale(1)}50%{transform:scale(1.2)}100%{transform:scale(1)}}.input-group input,.input-group textarea{transition:transform .3s ease,box-shadow .3s ease}.input-group input:focus,.input-group textarea:focus{transform:translateY(-3px);box-shadow:0 8px 20px rgb(184 134 82 / .15)}.social-icons a{transition:transform .3s ease,background .3s ease}.social-icons a:hover{transform:translateY(-8px) rotate(8deg)}#backToTop{animation:pulseButton 2s infinite}@keyframes pulseButton{0%{box-shadow:0 0 0 0 rgb(184 134 82 / .5)}70%{box-shadow:0 0 0 15px #fff0}100%{box-shadow:0 0 0 0 #fff0}}img,.btn,.menu-card,.review-card,.gallery-item{will-change:transform}
