.flipbook-wrapper{
    width:100%;
    display:flex;
    justify-content:center;
    align-items:center;
    perspective:2500px;
    overflow:hidden;
    /* padding:60px 20px; */
}

.book{
    position:relative;
    width:500px;
    height:550px;
    transform-style:preserve-3d;
    transition:transform .8s ease;
}

.book.book-opened{
    transform:translateX(250px);
}

.book-page{
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    cursor:pointer;
    transform-style:preserve-3d;
    transform-origin:left center;
    transition:transform 1s ease;
}

/* SPIRAL */
.book-page::before{
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    left:-18px;
    width:36px;
    z-index:20;
    pointer-events:none;

    background:url("../image/spiral.png") center center / contain repeat-y;
}

.book-page.flipped{
    transform:rotateY(-180deg);
}

.front,
.back{
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    overflow:hidden;
    border-radius:0;
    background:#fff;

    backface-visibility:hidden;
    -webkit-backface-visibility:hidden;
}

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

.front img,
.back img{
    width:100%;
    height:100%;
    object-fit: unset;
    display:block;
    border:1px solid #000000;
}

/* =========================
   LAPTOP
========================= */

@media (max-width: 1200px){

    .book{
        width:420px;
        height:500px;
    }

    .book.book-opened{
        transform:translateX(210px);
    }

}

/* =========================
   TABLET
========================= */

@media (max-width: 991px){

    .book{
        width:340px;
        height:420px;
    }

    .book.book-opened{
        transform:translateX(170px);
    }

    .book-page::before{
        left:-14px;
        width:28px;
    }

}

/* =========================
   MOBILE
========================= */

@media (max-width: 767px){
    .book{
        width:240px;
        height:340px;
    }

    .book.book-opened{
        transform:translateX(120px);
    }

    .book-page::before{
        left:-12px;
        width:24px;
    }

}

@media (max-width: 640px){
    .book{
        width: 220px;
        height: 320px;
    }

    .book.book-opened{
        transform: translateX(110px);
    }

    .book-page::before{
        left:-12px;
        width:24px;
    }
}

/* =========================
   SMALL MOBILE
========================= */

@media (max-width: 480px){

    .book{
        width:160px;
        height:250px;
    }

    .book.book-opened{
        transform:translateX(80px);
    }

    .book-page::before{
        left:-10px;
        width:20px;
    }

}


@media (max-width: 375px){

    .book{
        width:160px;
        height:240px;
    }

    .book.book-opened{
        transform:translateX(80px);
    }

    .page::before{
        left:-8px;
        width:16px;
    }

}

/* =========================
   320px DEVICES
========================= */

@media (max-width: 320px){

    /* .flipbook-wrapper{
        padding:20px 10px;
    } */

    .book{
        width:140px;
        height:200px;
    }

    .book.book-opened{
        transform:translateX(70px);
    }

    .page::before{
        left:-6px;
        width:12px;
    }

}