/* Custom Animations */
@keyframes fadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes slideUp {
    from { transform: translateY(20px); opacity: 0; }
    to { transform: translateY(0); opacity: 1; }
}

/* Apply animations to sections */
section {
    animation: fadeIn 1s ease-out;
}

.hero-content {
    animation: slideUp 1s ease-out;
}

/* Custom styles */
.aspect-w-16 {
    position: relative;
    padding-bottom: 56.25%;
}

.aspect-w-16 > div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

/* Smooth scroll behavior */
html {
    scroll-behavior: smooth;
}

/* Navigation styles */
nav {
    height: 80px; /* Updated fixed height for navbar */
}

.nav-container {
    height: 100%;
}

.logo-container {
    height: 100%;
    display: flex;
    align-items: center;
}

.logo-container img {
    height: 60px; /* Updated logo height to maintain proportion with navbar */
    width: auto;
}

.nav-links {
    height: 100%;
}

.nav-link {
    height: 100%;
    display: flex;
    align-items: center;
    padding: 0 0.5rem;
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
}

/* Active navigation link */
.nav-link.active {
    color: #2563eb;
    border-bottom: 2px solid #2563eb;
}

/* Mobile menu transition */
.mobile-menu {
    transition: all 0.3s ease-in-out;
}

/* Button hover effects */
button {
    transition: transform 0.2s ease;
}

button:hover {
    transform: translateY(-2px);
}

/* Form input focus styles */
input:focus, textarea:focus {
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.2);
}

/* Card hover effects */
.shadow-md {
    transition: all 0.3s ease;
}

.shadow-md:hover {
    transform: translateY(-5px);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}