/* Flipcard Slider */

.lfs-slider {
    position: relative;
    overflow: visible;
}

.lfs-viewport {
    overflow: visible;
    padding-block: 1rem;
    margin-block: -1rem;
    clip-path: inset(-1rem 0);
}

.lfs-track {
    display: flex;
    transition: transform 0.4s ease;
    touch-action: pan-y;
    user-select: none;
    -webkit-user-select: none;
}

.lfs-track.is-dragging {
    cursor: grabbing;
}

.lfs-slider:focus-visible {
    outline: 2px solid currentColor;
    outline-offset: 4px;
}

.lfs-slide {
    flex: 0 0 33.3333%;
    max-width: 100%;
    padding: 0 0.5rem;
    box-sizing: border-box;
}

.lfs-flipcard {
    perspective: 1200px;
    cursor: pointer;
    outline: none;
}

.lfs-flipcard-inner {
    width: 100%;
    display: grid;
    align-items: start;
    transition: transform 0.6s;
    transform-style: preserve-3d;
}

.lfs-flipcard.is-flipped .lfs-flipcard-inner {
    transform: rotateY(180deg);
}

.lfs-flipcard-front,
.lfs-flipcard-back {
    grid-area: 1 / 1;
    backface-visibility: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0;
    box-sizing: border-box;
}


/* front */
.lfs-flipcard-front .lfs-flipcard-icon {
    width: 2rem;
    height: auto;
    margin-bottom: 0.5rem;
    display: none;
}

.lfs-flipcard-front img {
    max-width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

.lfs-flipcard-front .card-top {
    background: var(--vtr-dark-blue);
    width: 100%;
    height: 100%;
    padding: 0;
    border-radius: 15px 15px 0 0;
    aspect-ratio: 2.65 / 2;
    overflow: hidden;
}

.lfs-flipcard-front .card-bottom {
    background: #EEF0F2;
    width: 100%;
    text-align: left;
    padding: 1rem;
    color: var(--vtr-dark-blue);
    border-radius: 0 0 15px 15px;
}

.lfs-flipcard-front .card-bottom p {
    margin-bottom: 0;
}

/* back */
.lfs-flipcard-back {
    transform: rotateY(180deg);
    background: #fff;
}

.lfs-flipcard-back .lfs-flipcard-icon {
    width: 2rem;
    height: auto;
}

.lfs-flipcard-back .card-top {
    background: var(--vtr-green);
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: 1rem;
    text-align: left;
    padding: 0.5rem 1rem;
    border-radius: 15px 15px 0 0;
}

.lfs-flipcard-back .card-bottom {
    background: var(--vtr-dark-blue);
    width: 100%;
    text-align: left;
    padding: 0.5rem 1rem;
    color: #fff;
    border-radius: 0 0 15px 15px;
}

.lfs-flipcard-back .card-bottom h4 {
    color: #fff;
    font-size: 1rem;
    margin-bottom: 0.2rem;
}

.lfs-flipcard-back .card-bottom .lfs-back-text p {
    font-size: 1rem !important;
    line-height: 1.6 !important;
    margin-bottom: 0.5rem !important;
}

/* navigation buttons */
.lfs-nav {
    position: absolute;
    top: 40%;
    background: none;
    transform: translateY(-50%);
    color: #fff;
    border: none;
    padding: 0;
    width: 2.5rem;
    height: 2.5rem;
    cursor: pointer;
    font-size: 1.5rem;
    line-height: 1;
    z-index: 2;
}

.lfs-nav[hidden] {
    display: none;
}

.lfs-prev {
    left: -2.8rem;
}

.lfs-next {
    right: -2.8rem;
}

@media (max-width: 767px) {
    .lfs-slide {
        flex-basis: 100%;
    }

    /* navigation buttons */
    .lfs-prev {
        left: -1.3rem;
    }

    .lfs-next {
        right: -1.3rem;
    }
}

@media (min-width: 768px) and (max-width: 992px) {
    .lfs-slide {
        flex-basis: 50%;
    }
}