.business {
    position: relative;
    color: var(--primary-white);
}

.business .section-title {
    padding-bottom: 16px;
}

.business .container-fluid {
    z-index: 2;
}

.business .banner-image {
    z-index: 1;
}

.business .images {
    position: relative;
    padding-top: 40px;
    margin: 0 -8px;
}

.business .images .item-card {
    position: relative;
    padding: 8px;
}

.business .images .item-card .image {
    position: relative;
    padding-top: 80.5%;
    box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.20), 9px 9px 27px 0px rgba(0, 0, 0, 0.20), 35px 35px 49px 0px rgba(0, 0, 0, 0.17), 78px 79px 67px 0px rgba(0, 0, 0, 0.10), 139px 140px 79px 0px rgba(0, 0, 0, 0.03), 218px 218px 86px 0px rgba(0, 0, 0, 0.00);
    overflow: hidden;
}

.business .item-card .label {
    position: relative;
    max-width: fit-content;
    margin-left: auto;
    transform: none !important;
}

.business .item-card .label .label-wrap {
    position: relative;
    display: inline-block;
    width: fit-content;
    padding: 30px 40px;
    transition: all .4s;
    color: var(--primary-white);
}

.business .item-card .label-wrap .label-value {
    position: relative;
    z-index: 4;
    transition: color .1s;
    white-space: nowrap;
}

.business .item-card .label-wrap .label-value span {
    display: block;
}

.business .item-card .label .slant-line,
.business .item-card .label .slant-line::after,
.business .item-card .label .slant-line::before {
    position: absolute;
    top: 0;
    left: -10px;
    width: 2px;
    height: 100%;
    margin: 0;
    transform: skew(-38deg, 0);
    transition: transform .4s, opacity .6s;
}

.business .item-card .label .slant-line::before {
    content: "";
    transform: skew(0deg, 0) translate3d(0, 100%, 0);
    left: 0;
    opacity: 0;
    background: var(--primary-white);
}

.business .item-card .label .slant-line::after {
    content: "";
    transform: skew(0deg, 0) translate3d(0, 0, 0);
    left: 0;
    opacity: 1;
    background: var(--primary-white);
}

.business .item-card:hover .label .slant-line::before {
    opacity: 1;
    transform: skew(0deg, 0) translate3d(0, 0, 0);
}

.business .item-card:hover .label .slant-line::after {
    opacity: 0;
    transform: skew(0deg, 0) translate3d(0, -50%, 0);
}

.business .item-card .label .label-wrap::before {
    top: 0;
    left: 0;
    background-color: var(--secondary-blue);
    opacity: 1;
    z-index: 2;
}

.business .item-card .label .label-wrap::before,
.business .item-card .label .label-wrap::after {
    content: "";
    position: absolute;
    top: 1px;
    left: 0;
    width: 150%;
    height: 100%;
    background-color: var(--secondary-blue);
    transform: skew(-38deg, 0deg);
    z-index: 3;
    transition: transform .5s, opacity .6s;
}

.business .item-card .label .label-wrap::after {
    opacity: 1;
    background-color: var(--primary-white);
    transform: skew(-38deg, 0deg) translate3d(0, 100%, 0);
}

.business .item-card:hover .label .label-wrap::after {
    transform: skew(-38deg, 0deg) translate3d(0, 0, 0);
}

/* Animation styles begin */

.business .item-card:hover .label .label-wrap {
    color: var(--secondary-blue);
}

.business .item-card .label-value {
    animation: shakeOut 0.3s;
}

.business .item-card:hover .label-value {
    animation: shakeIn 0.3s;
}

@keyframes shakeIn {
    0% {
        transform: translate3d(0, 0, 0);
    }
    50% {
        transform: translate3d(15px, -10px, 0);
    }
    100% {
        transform: translate3d(0, 0, 0);
    }
}

@keyframes shakeOut {
    0% {
        transform: translate3d(0, 0, 0);
    }
    50% {
        transform: translate3d(15px, -10px, 0);
    }
    100% {
        transform: translate3d(0, 0, 0);
    }
}

/* Animation styles end */

@media (max-width: 768px) {
    .business .item-card .label .label-wrap {
        padding: 24px 12px 24px 24px;
    }

    .business .text {
        font-size: 16px;
        line-height: 1.5;
    }
}