.site-header .brand-logo {
    display: block;
    width: auto;
    max-width: min(220px, 30vw);
    height: 64px;
    object-fit: contain;
    object-position: center;
}

.hero-main.hero-main--generated {
    height: auto;
    min-height: 0;
}

.hero-main--generated .hero-banner-slider,
.hero-main--generated .hero-banner-slides,
.hero-main--generated .hero-banner-link {
    height: auto;
}

.hero-main--generated .hero-banner-slides {
    display: grid;
}

.hero-main--generated .hero-banner-slide {
    position: relative;
    inset: auto;
    grid-area: 1 / 1;
    height: auto;
    min-width: 0;
}

.hero-main--generated .hero-banner-link picture {
    display: block;
    aspect-ratio: 16 / 9;
}

.hero-main--generated .hero-banner-img {
    aspect-ratio: 16 / 9;
    object-fit: contain;
}

[dir="rtl"] .hero-banner-content {
    letter-spacing: normal;
    word-break: normal;
}

@media (max-width: 767.98px) {
    .site-header .brand-logo {
        height: 52px;
        max-width: min(160px, 32vw);
    }

    .hero-main--generated .hero-banner-content {
        position: relative;
        top: auto;
        transform: none;
        width: 100%;
        max-width: none;
        padding: 20px 20px 52px;
        box-sizing: border-box;
        background: var(--ink, #0f172a);
    }

    .hero-main--generated .hero-banner-overlay {
        display: none;
    }

    .hero-main--generated .hero-banner-subtitle {
        display: block;
        overflow: visible;
    }

    .hero-main--generated .hero-banner-title {
        line-height: 1.5;
        overflow-wrap: anywhere;
    }
}
