.afbw-flip-box-wrapper {
    position: relative;
    perspective: 1200px;
    width: 100%;
}

.afbw-flip-box {
    position: relative;
    width: 100%;
    min-height: 380px;
    transform-style: preserve-3d;
    transition: transform .7s ease;
}

.afbw-face {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.afbw-front,
.afbw-back {
    box-sizing: border-box;
}

.afbw-back {
    transform: rotateY(180deg);
}

.afbw-direction-vertical .afbw-back {
    transform: rotateX(180deg);
}

.afbw-trigger-hover:hover .afbw-flip-box {
    transform: rotateY(180deg);
}

.afbw-trigger-hover.afbw-direction-vertical:hover .afbw-flip-box {
    transform: rotateX(180deg);
}

.afbw-trigger-click:focus-within .afbw-flip-box,
.afbw-trigger-click:focus .afbw-flip-box {
    transform: rotateY(180deg);
}

.afbw-trigger-click.afbw-direction-vertical:focus-within .afbw-flip-box,
.afbw-trigger-click.afbw-direction-vertical:focus .afbw-flip-box {
    transform: rotateX(180deg);
}

.afbw-top-texts-wrap {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.afbw-heading,
.afbw-price,
.afbw-front-bottom-text,
.afbw-back-heading-copy,
.afbw-date-range,
.afbw-back-text,
.afbw-button,
.afbw-top-text {
    width: 100%;
    box-sizing: border-box;
}

.afbw-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    text-decoration: none;
    transition: all .25s ease;
    cursor: pointer;
}

.afbw-button-disabled {
    cursor: default;
}

.afbw-divider {
    width: 100%;
    border-top: 1px solid #d9d9d9;
}

.afbw-front .afbw-front-bottom-text,
.afbw-back .afbw-back-text {
    white-space: normal;
}

@media (max-width: 767px) {
    .afbw-flip-box {
        min-height: 320px;
    }
}
