/* ===== Hero section ===== */
.hero {
    position: relative;
    min-height: 100vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    isolation: isolate;
    padding-top: calc(var(--header-h) + var(--nav-h));
}

.hero__bg {
    position: absolute;
    inset: 0;
    background-image: url('../assets/hero-bg.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: -2;
}

.hero__overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(180deg, rgba(0, 0, 0, 0.55) 0%, rgba(0, 0, 0, 0.35) 18%, rgba(0, 0, 0, 0.20) 30%, rgba(0, 0, 0, 0.45) 75%, rgba(0, 0, 0, 0.55) 100%);
    z-index: -1;
}


/* ===== Hero content ===== */
.hero__content {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding-top: 60px;
    padding-bottom: 100px;
    position: relative;
    z-index: 2;
}

.hero__logo {
    margin-bottom: 24px;
}

.hero__logo img {
    width: clamp(220px, 28vw, 360px);
    height: auto;
    filter: drop-shadow(0 6px 24px rgba(0, 0, 0, 0.5));
}

.hero__title {
    font-size: clamp(28px, 3.4vw, 48px);
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: 0.01em;
    text-transform: uppercase;
    margin: 0 0 24px;
    max-width: 1000px;
    text-shadow: 0 2px 20px rgba(0, 0, 0, 0.6);
}

.hero__subtitle {
    font-size: clamp(15px, 1.4vw, 19px);
    font-weight: 400;
    line-height: 1.5;
    color: var(--color-text-muted);
    max-width: 760px;
    margin: 0 0 48px;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.6);
}

.hero__actions {
    display: flex;
    gap: 20px;
    flex-wrap: wrap;
    justify-content: center;
}
