* { box-sizing: border-box; }
body { font-family: 'Lato', sans-serif; background-color: #f6f3ed; color: #2d2d2d; }
html { scroll-behavior: smooth; }

#mobile-menu { display: none; }
#mobile-menu.open { display: block; }

.fade-in { opacity: 0; transform: translateY(18px); transition: opacity .6s ease, transform .6s ease; }
.fade-in.visible { opacity: 1; transform: translateY(0); }

.nav-link { position: relative; padding-bottom: 2px; }
.nav-link::after {
  content: ''; position: absolute; bottom: -1px; left: 0; right: 0;
  height: 1.5px; background-color: #ae6c5d;
  transform: scaleX(0); transition: transform 0.25s ease; transform-origin: left;
}
.nav-link:hover::after { transform: scaleX(1); }

.recipe-card { transition: transform 0.4s ease, box-shadow 0.4s ease; }
.recipe-card:hover { transform: translateY(-5px); box-shadow: 0 20px 40px rgba(174,108,93,0.14) !important; }
.recipe-card .card-img { transition: transform 0.7s ease; }
.recipe-card:hover .card-img { transform: scale(1.08); }
.recipe-card .card-overlay { opacity: 0; transition: opacity 0.4s ease; }
.recipe-card:hover .card-overlay { opacity: 1; }

.header-pattern {
  background-color: #ffffff;
  background-image: radial-gradient(circle at 1px 1px, rgba(174,108,93,0.08) 1px, transparent 0);
  background-size: 22px 22px;
}

.scrollbar-hide::-webkit-scrollbar { display: none; }
.scrollbar-hide { -ms-overflow-style: none; scrollbar-width: none; }

.wave { overflow: hidden; line-height: 0; display: block; }
.wave svg { display: block; width: 100%; }
