.home-quality-banner {
    padding: 48px 0 36px;
    background: #fff;
}

.home-quality-banner__wrap {
    /* width: min(100%, 1500px); */
    margin: 0 auto;
}

.home-quality-banner__grid {
    display: grid;
    grid-template-columns: 1.05fr 0.96fr 0.96fr 0.98fr;
    gap: 28px;
    align-items: stretch;
}

.home-quality-banner__card {
    position: relative;
    min-height: 560px;
    overflow: hidden;
}

.home-quality-banner__card--image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.home-quality-banner__parallax {
    --banner-shift-x: 0px;
    --banner-scale: 1;
    transform: translate3d(var(--banner-shift-x), 0, 0) scale(var(--banner-scale));
    will-change: transform;
    transition: transform 0.18s linear;
}

.home-quality-banner__card--image .home-quality-banner__parallax {
    --banner-scale: 1.04;
}

.home-quality-banner__card--gold {
    background: #577C4C;
    color: #fff;
}

.home-quality-banner__card--dark {
    background: #050505;
    color: #fff;
}

.home-quality-banner__inner {
    position: relative;
    z-index: 2;
    padding: 52px 40px 40px;
}

.home-quality-banner__inner--bottom {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding-top: 0;
    padding-bottom: 34px;
}

.home-quality-banner__inner h3 {
    margin: 0;
    color: inherit;
    font: 700 48px/0.95 var(--fontB);
    text-transform: uppercase;
    letter-spacing: -0.04em;
    word-break: break-word;
}

.home-quality-banner__inner p {
    margin: 34px 0 0;
    max-width: 280px;
    color: rgba(17, 17, 17, 0.8);
    font: 16px var(--font);
}

.home-quality-banner__quote {
    position: relative;
    z-index: 2;
    padding: 42px 40px 0;
}

.home-quality-banner__quote span {
    display: inline;
    background: #577C4C;
    color: #fff;
    font: 16px var(--fontM);
    /* box-decoration-break: clone; */
    /* -webkit-box-decoration-break: clone; */
    padding: 2px 0;
}

.home-quality-banner__lineart {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 200px;
    /* opacity: 0.34; */
}

.home-quality-banner__wireframe {
    position: absolute;
    right: -10px;
    top: 56px;
    width: 300px;
    height: 420px;
    /* opacity: 0.2; */
}

.home-quality-banner__parallax--left {
    --banner-shift-x: 0px;
}

.home-quality-banner__parallax--right {
    --banner-shift-x: 0px;
}

.home-quality-banner__parallax--soft-left,
.home-quality-banner__parallax--soft-right {
    transition-duration: 0.22s;
}


@media (max-width: 1399px) {
    .home-quality-banner__grid {
        /* grid-template-columns: repeat(2, minmax(0, 1fr)); */
    }

    .home-quality-banner__card {
        min-height: 620px;
    }
}

@media (max-width: 991px) {
    .home-quality-banner {
        padding: 32px 0 20px;
    }

    .home-quality-banner__grid {
        gap: 18px;
    }

    .home-quality-banner__card {
        min-height: 520px;
    }

    .home-quality-banner__inner {
        padding: 36px 26px 28px;
    }

    .home-quality-banner__inner h3 {
        font-size: 44px;
    }

    .home-quality-banner__inner p {
        margin-top: 24px;
        font-size: 17px;
    }

    .home-quality-banner__quote {
        padding: 28px 26px 0;
    }
}

@media (max-width: 767px) {
    .home-quality-banner__grid {
        grid-template-columns: 1fr;
    }

    .home-quality-banner__card {
        min-height: 400px;
    }

    .home-quality-banner__inner h3 {
        font-size: 36px;
    }

    .home-quality-banner__wireframe {
        width: 220px;
        height: 300px;
        top: 72px;
    }

    .home-quality-banner__parallax {
        transform: none !important;
        transition: none;
    }
}