/* =========================
HOME HERO
========================= */

.hero {

    position: relative;

    min-height: 100svh;

    overflow: hidden;

    display: flex;
    justify-content: center;
    align-items: center;

    text-align: center;
}

/* =========================
IMAGE LAYERS
========================= */

.hero-bg {

    position: absolute;
    inset: 0;

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;

    will-change: opacity;

    transition:
        opacity 2.2s cubic-bezier(0.25, 0.8, 0.25, 1),
        transform 2.2s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.hero-bw {
    background-image: url('../../assets/images/artist/ethan-needham-hero-black-and-white.png');
    opacity: 1;
}

.hero-color {
    background-image: url('../../assets/images/artist/ethan-needham-hero-color.png');
    opacity: 0;
}

/* =========================
OVERLAY
========================= */

.hero::after {

    content: '';

    position: absolute;
    inset: 0;

    background: linear-gradient(
        to bottom,
        rgba(0,0,0,0.25),
        rgba(0,0,0,0.55)
    );

    z-index: 1;
}

/* =========================
COLOR MODE
========================= */

.hero.color-mode .hero-bw {
    opacity: 0;
}

.hero.color-mode .hero-color {
    opacity: 1;
    transform: scale(1.02);
}

/* =========================
CONTENT
========================= */

.hero-content {

    position: relative;
    z-index: 2;

    color: white;

    padding: 20px;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

/* MAIN TITLE */

.hero-content h1 {

    font-family: var(--font-display);

    font-size: clamp(4rem, 10vw, 7rem);

    font-weight: 500;

    line-height: 0.9;

    letter-spacing: 0.05em;

    text-transform: uppercase;
}

/* removed subtitle intentionally */

/* =========================
MOBILE
========================= */

@media (max-width: 768px) {

    .hero-content h1 {
        font-size: clamp(2.75rem, 12vw, 4.5rem);
    }
}