* {
    padding: 0;
    margin: 0;

    font-family: 'Montserrat';
}

.screen {
    display: flex;
    flex-direction: column;
    justify-content: space-between;

    height: 100vh;
    padding: 2vw 17vw;
    box-sizing: border-box;

    background-image: url("../images/bg.png");
    background-size: cover;
}

.title {
    margin-bottom: 4.5vw;

    color: white;

    font-weight: 700;
    font-size: 2.6vw;
    text-align: center;
    text-transform: uppercase;
    text-shadow: 0px .1vw 0px #AA1818;
}

.heroes-list {
    display: flex;
    justify-content: space-between;
    align-items: center;

    margin-bottom: 6.5vw;
}

.hero {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    position: relative;

    cursor: pointer;
}
.hero:hover .hero__image_active {
    opacity: 1;
}
.hero:hover .hero__name {
    width: 10vw;

    font-size: 1.4vw;

    box-shadow: 0px 1vw 2vw rgba(249, 45, 45, 0.47);
}
.hero__image-container {
    height: 19vw;
    position: relative;
}
.hero__image {
    height: 100%;
}
.hero__image_active {
    position: absolute;
    left: 0;
    top: 0;

    opacity: 0;

    transition: opacity ease-out 250ms;
}
.hero__name {
    position: absolute;
    bottom: -1vw;

    width: 9vw;

    box-sizing: border-box;
    padding: .4vw;

    color: white;

    font-weight: 700;
    font-size: 1.25vw;
    text-align: center;

    background-color: #FF2E2E;

    transform: matrix(1, -0.09, 0.01, 1, 0, 0);

    transition: all ease-out 200ms;
}

.footer {
    padding: 0 2vw;
}
.footer__top-row {
    display: flex;
    justify-content: space-between;
    align-items: center;

    margin-bottom: 1.5vw;
}
.footer__links {
    display: flex;
    gap: 1.5vw;
}
.footer__link {
    color: rgba(255, 255, 255, 0.4);

    padding-bottom: .075vw;

    font-size: .9vw;
    font-weight: 500;
    text-transform: uppercase;
    text-decoration: none;

    border-bottom: 2px solid transparent;

    cursor: pointer;

    transition: all ease-out 200ms;
}
.footer__link:hover {
    color: white;

    border-color: #FF2E2E;
}
.footer__title {
    color: white;

    font-size: 1.05vw;
    text-transform: uppercase;
}

.footer__policy {
    margin-bottom: 1vw;

    color: white;

    font-size: .7vw;
    line-height: 1.3;
}
.footer__policy a {
    color: rgba(255, 255, 255, 0.6);
    text-decoration: underline;
}

.footer__copyright {
    color: white;

    font-size: .7vw;
}