/* hero.css — Styles for Hero section (Section 1)
   BEM-like naming, responsive square, layered fade-in */

.hero-section {
    position: relative;
    width: 100vw;
    max-width: 600px;
    aspect-ratio: 1 / 1;
    margin: 2rem auto;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
}

.hero-section__layer {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.8s cubic-bezier(0.4,0,0.2,1);
    will-change: opacity;
    pointer-events: none;
}

.hero-section__layer--visible {
    opacity: 1;
    pointer-events: auto;
}

@media (max-width: 600px) {
    .hero-section {
        max-width: 98vw;
    }
}
