.hero {
    width: 100%;
    aspect-ratio: 1920 / 601;
    margin: 0;
    background: #eef1f4;
    overflow: hidden
}

.hero:before {
    background: linear-gradient(90deg, rgba(10, 18, 28, .12), transparent 28%, transparent 72%, rgba(10, 18, 28, .12))
}

.hero .carousel-track {
    width: 100%;
    height: 100%;
    max-width: none;
    margin: 0
}

.hero .carousel-slide {
    width: 100%;
    height: 100%
}

.hero .carousel-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block
}

.hero .carousel-arrow {
    width: 42px;
    height: 72px;
    border-radius: 0;
    background: transparent;
    font-size: 34px;
    line-height: 72px;
    text-shadow: 0 2px 8px rgba(0, 0, 0, .7)
}

.hero .carousel-arrow:hover {
    background: rgba(0, 0, 0, .14)
}

.hero .carousel-arrow.prev {
    left: 0
}

.hero .carousel-arrow.next {
    right: 0
}

.hero .carousel-dots {
    bottom: 10px
}

.hero .carousel-dots button {
    width: 8px;
    height: 8px;
    margin: 0 3px;
    background: rgba(255, 255, 255, .82);
    box-shadow: 0 1px 4px rgba(0, 0, 0, .25)
}

.hero .carousel-dots button.active {
    width: 20px;
    background: #ef4247
}

@media(max-width:760px) {

    .hero,
    .hero .carousel-track {
        height: clamp(190px, 52vw, 280px)
    }

    .hero:before {
        background: linear-gradient(90deg, rgba(10, 18, 28, .1), transparent 35%, transparent 65%, rgba(10, 18, 28, .1))
    }

    .hero .carousel-slide img {
        object-position: center
    }

    .hero .carousel-arrow {
        display: flex;
        width: 34px;
        height: 52px;
        align-items: center;
        justify-content: center;
        font-size: 28px;
        line-height: 1
    }

    .hero .carousel-dots {
        bottom: 8px
    }
}