/* Hero Section Layout */
.hero {
    position: relative;
    min-height: 80vh;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    /* Add padding-top to account for fixed header */
    padding-top: calc(6rem + 80px); /* 80px is approximate header height */
    padding-bottom: 4rem;
    padding-left: 2rem;
    padding-right: 2rem;
    color: var(--text-light);
    overflow: hidden;
}

.hero-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.hero-background img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    animation: subtle-zoom 20s ease-in-out infinite;
}

.hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(
        rgba(0, 0, 0, 0.7),
        rgba(0, 0, 0, 0.5)
    );
    z-index: 2;
    opacity: 0;
    animation: fade-in 1s ease-out forwards;
}

.hero-content {
    position: relative;
    max-width: 800px;
    margin: 0 auto;
    z-index: 3;
    opacity: 0;
    animation: fade-in-up 1s ease-out forwards;
}
