/* Shared layout: same for Index hero and content-pages hero */
.hero-section {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin: 0;
    padding: 0;
    margin-top: 0; /* Ensure it starts at the very top */
    min-height: 100vh;
    background: white;
}

.hero-section {
    height: 100vh;
    background: var(--image-hero-home) center center / cover no-repeat;
}

.hero-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.3));
    pointer-events: none;
    z-index: 0;
}

@supports (height: 100dvh) {
    .hero-section {
        min-height: 100dvh;
        height: 100dvh;
    }
}

/* Responsive hero section */
@media (max-width: 768px) {
    .hero-section {
        min-height: 100svh;
        height: 100svh;
        overflow: hidden;
    }

    .content-overlay {
        padding: var(--spacing-md) var(--spacing-sm);
    }
}
