 * {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
 }

 body {
     font-family: 'Inter', sans-serif;
     overflow-x: hidden;
     background-color: #f9fafb;
 }

 .heading-font {
     font-family: 'Playfair Display', serif;
 }

 #mobile-menu {
     display: none;
 }

 #mobile-menu.active {
     display: block !important;
 }

 .fade-in {
     animation: fadeIn 0.8s ease-out;
 }

 @keyframes fadeIn {
     from {
         opacity: 0;
         transform: translateY(20px);
     }

     to {
         opacity: 1;
         transform: translateY(0);
     }
 }

 .hover-lift {
     transition: transform 0.3s ease, box-shadow 0.3s ease;
 }

 .hover-lift:hover {
     transform: translateY(-5px);
     box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
 }

 .nav-link {
     position: relative;
     transition: color 0.3s ease;
 }

 .nav-link::after {
     content: '';
     position: absolute;
     width: 0;
     height: 2px;
     bottom: -4px;
     left: 0;
     background-color: #f53232;
     transition: width 0.3s ease;
 }

 .nav-link:hover::after {
     width: 100%;
 }

 .filter-btn {
     transition: all 0.2s ease;
     border-radius: 99px;
 }

 .filter-btn.active {
     background-color: #ef4444;
     color: white;
     box-shadow: 0 4px 15px rgba(239, 68, 68, 0.3);
 }

 .map-card img {
     transition: transform 0.5s ease;
 }

 .map-card:hover img {
     transform: scale(1.05);
 }

 ::-webkit-scrollbar {
     width: 8px;
 }

 ::-webkit-scrollbar-track {
     background: #f3f4f6;
 }

 ::-webkit-scrollbar-thumb {
     background: #ef4444;
     border-radius: 10px;
 }