* {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
    -webkit-font-smoothing: antialiased;
}

button, a {
    transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease, transform 0.2s ease;
}

button:active {
    transform: scale(0.98);
}

h2 {
    margin-top: 10px;
}

.card-hover {
    transition: all 0.3s ease;
}

.card-hover:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

.image-hover {
    transition: transform 0.3s ease;
}

.card-hover:hover .image-hover {
    transform: scale(1.1);
}

#mobileMenu {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    display: none;
}

#mobileMenu.open {
    max-height: 500px;
    display: block;
}