﻿:root {
    --h-top-hgt: 10rem;
    --left-area: 19rem;
    --star: #ff6a00;
}

.container-w {
    width: 100%;
    text-align: center;
    top: var(--h-top-hgt);
    position: relative;
}

.container {
    width: 100%;
    max-width: var(--max-width);
    display: inline-flex;
    text-align: left;
    margin-top: 2.5rem;
}

.prev-options{
    margin: 5rem 0;
}

.prev-options > p{
    font-family: 'Open Sans';
    margin: 1rem 0;
    position: relative;
    text-indent: 3rem;
    font-weight: 400;
    cursor: pointer;
}

.prev-options > p:first-child::before{
    position: absolute;
    content: '';
    width: 1.2rem;
    height: 1.2rem;
    background-color: var(--cbg100blue);
    border-radius: 50%;
    top: calc(50% - .6rem);
    left: 0;
}

.prev-options > p:nth-child(2)::before{
    position: absolute;
    content: '';
    width: 1.2rem;
    height: 1.2rem;
    background-color: var(--cbg1);
    border-radius: 50%;
    top: calc(50% - .6rem);
    left: 0;
}

.content {
    flex: 1;
    position: relative;
}

.info-content {
    overflow: hidden;
    height: 100%;
}

#about-content {
    margin: 0 2.5rem;
    position: absolute;
}

.ah{ /* about header */
     width: 100%;
     display: flex;
     position: relative;
     /* background-color: var(--cbg2); */
}

.ah::after{
    position: absolute;
    content: '';
    width: 80%;
    height: 1px;
    bottom: -4rem;
    background-color: var(--t4);
    left: 10%;
}

.ah > *{
    display: inline-block;
    vertical-align: top;
}

.ah-left {
    width: 20%;
    height: 325px;
    overflow: hidden;
    position: relative;
    max-width: 203px;
}

.ah-left img{
    left: 50%;
    top: 50%;
    position: absolute;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    max-height: 325px;
    height: 100%;
}

.ah-right{
    flex: 1;
    margin: 0 2.5%;
    display: flex;
    flex-direction: column;
}

.ah-title{
    width: 90%;
}

.ah-title > *{
    display: inline-block;
}

.ah-title > p:first-child{
    font-size: 4rem;
    font-family: 'Open Sans';
    margin: 0;
    font-weight: 600;
}

.ah-title > p:nth-child(2){
    font-size: 2.2rem;
    font-family: 'Open Sans';
    margin: 0 1rem;
    color: var(--t4);
}

.ah-author{
    width: 100%;
    height: 4.5rem;
    margin-top: 1.2rem;
}

.ah-author img{
    height: 100%;
    border-radius: 50%;
    display: inline-block;
    vertical-align: middle;
}

.ah-author-name{
    display: inline-block;
    vertical-align: middle;
    margin-left: 1.5rem;
}

.ah-author-name > p{
    font-family: 'Open Sans';
    font-size: 1.5rem;
    font-weight: 600;
    margin: 0;
}

.ah-author-name > p:nth-child(2){
    font-weight: 100;
    color: var(--t4);
    font-size: 1.4rem;
}

.ah-stars{
    margin-top: 3rem;
}

.ah-stars i{
    font-size: 1.75rem;
    color: var(--star);
}

.ah-stars p{
    display: inline-block;
    margin: 0;
    font-size: 1.75rem;
    color: var(--t3);
    margin-left: -1rem;
}

.ah-stats{
    display: table;
    width: 100%;
    margin-top: 1.5rem;
}

.stats-left{
    display: inline-block;
    width: 50%;
    vertical-align: top;
}

.stats-right{
    display: inline-block;
    width: 50%;
    vertical-align: top;
}

.ah-stat img {
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}

.ah-stat{
    margin-top: 1.5rem;
    height: 2.1rem;
}

.ah-stat > p{
    display: inline-block;
    font-family: 'Open Sans';
    font-size: 1.5rem;
    margin: 0 0 0 1rem;
    vertical-align: middle;
    font-weight: 600;
}

.ah-stat > i{
    width: 2rem;
    text-align: center;
    display: inline-block;
    font-size: 2rem;
    vertical-align: middle;
    color: var(--t3);
}

.ah-footer{
    flex: 1;
    display: flex;
    align-items: flex-end;
}

.ah-footer-c{
    width: 100%;
    display: table;
}

.ah-dates{
    display: inline-block;
    vertical-align: top;
    width: 50%;
}

.ah-dates > p{
    font-family: 'Open Sans';
    font-weight: 400;
    font-size: 1.4rem;
    margin: 0;
    color: var(--t4);
}

.ah-buttons{
    display: inline-block;
    vertical-align: top;
    width: 50%;
}

.ah-buttons p{
    margin: 0;
}

#ah-read-now {
    padding: .7rem 3.5rem;
    background-color: var(--cbg100blue);
    width: 8rem;
    text-align: center;
    font-size: 1.3rem;
    font-family: Verdana;
    font-weight: 600;
    color: var(--t1);
    box-shadow: 0 3px 10px var(--t4);
    user-select: none;
    cursor: pointer;
    -webkit-transition: all .22s ease;
    transition: all .22s ease;
    display: inline-block;
    vertical-align: top;
}

#ah-read-now:hover{
    -webkit-transform: scale(1.06);
    transform: scale(1.06);
}

#ah-follow {
    margin-left: 2rem;
    padding: .7rem 1.1rem;
    background-color: var(--cbg1);
    display: inline-block;
    vertical-align: top;
    box-shadow: 0 3px 10px var(--t4);
    user-select: none;
    cursor: pointer;
    -webkit-transition: all .22s ease;
    transition: all .22s ease;
    position: relative;
    color: var(--t1);
    font-size: 1.3rem;
    font-family: Verdana;
    font-weight: 600;
    width: 1.2rem;
    overflow: hidden;
    white-space: nowrap;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
}

#ah-follow > p{
    display: inline-block;
    margin: 0;
    text-indent: 1.5rem;;
}

#ah-follow:hover{
    width: 9rem;
}

.about-desc {
    margin-top: 10rem;
    font-family: 'Open Sans';
}

.about-desc > p:first-child{
    font-size: 2.65rem;
    color: var(--t3);
    margin: 0;
}

.about-desc > p:nth-child(2){
    font-size: 1.5rem;
    color: var(--t3);
    opacity: .75;
    line-height: 2.5rem;
}

.about-awards {
    margin-top: 5rem;
    font-family: 'Open Sans';
}

.about-awards > p:first-child {
    font-size: 2.65rem;
    color: var(--t3);
}

.about-top {
    margin-top: 5rem;
    font-family: 'Open Sans';
}

.about-top > p:first-child {
    font-size: 2.65rem;
    color: var(--t3);
}

.ah-mobile-menu{
    display: none;
}

#reviews-content{
    position: absolute;
    top: 0;
    font-family: 'Open Sans';
    width: 100%;
    opacity: 0;
    user-select: none;
    pointer-events: none;
}

.r-top{
}

.r-title, .c-title {
    margin: 0 2.5rem;
    text-align: center;
    font-size: 3.5rem;
    font-weight: 600;
    color: var(--t3);
}

.r-book-name, .c-book-name{
    display: none;
}

.r-ratings{
    margin: 2rem 2% 0 2.5%;
    display: inline-block;
    width: 40%;
    padding-right: 7.5%;
    border-right: 1px solid var(--cbg3);
}

.r-rating{
    font-size: 1.4rem;
    display: flex;
    align-items: center;
    opacity: .95;
    margin: .5rem 0;
}

.r-rating p{
    flex: 1;
    margin: 0;
}

.r-rating p:nth-child(2){
    flex: 0;
    margin-right: 1rem;
    color: var(--t3);
    opacity: .7;
}

.r-rating i{
    color: var(--star);
}

.r-rating > *{
    display: inline-block;
    vertical-align: middle;
}

.r-orating {
    margin: 2rem 2% 0 2.5%;
    display: inline-flex;
    vertical-align: top;
    width: 35%;
    justify-content: center;
    flex-wrap: wrap;
}

.r-orating p{
    flex: 1;
    font-size: 1.8rem;
    opacity: .95;
    margin: 1rem 0 1.5rem -1.5rem; /* because the i below is 1.5rem */
    font-weight: 600;
    min-width: 100%;
    text-align: center;
}

.r-orating i{
    font-size: 1.5rem;
    color: var(--star);
}

.r-m-review{
    display: none;
}

.r-bar{
    width: 100%;
    height: 1px;
    margin-top: 4rem;
    position: relative;
}

.r-bar::after{
    position: absolute;
    content: '';
    width: 85%;
    height: 100%;
    left: 7.5%;
    background-color: var(--cbg3);
}

.r-review {
    margin: 2rem 2.5%;
}

.r-review img{
    height: 42px;
    width: 42px;
    border-radius: 50%;
    display: inline-block;
    vertical-align: middle;
}

.r-reviews-top p{
    display: inline-block;
    vertical-align: middle;
    font-size: 1.5rem;
    margin: 0 0 0 1.5rem;
    font-weight: 600;
}

.r-reviews-mid{
    margin: 1.5rem 0 0 0;
    display: flex;
    align-items: center;
}

.r-reviews-mid i{
    color: var(--star);
    font-size: 1.2rem;
}

.r-reviews-mid p{
    flex: 1;
    text-align: right;
    font-size: 1.2rem;
    font-style: italic;
    color: var(--t4);
    margin: 0;
}

.r-reviews-text{
    margin: 1.25rem 0;
    opacity: .9;
}

.r-reviews-text p{
    margin: 0;
    font-size: 1.4rem;
}

#chapters-content {
    position: absolute;
    top: 0;
    font-family: 'Open Sans';
    width: 100%;
    opacity: 0;
    user-select: none;
    pointer-events: none;
}

.c-arc{
    display: inline-block;
    width: 100%;
}

.c-arc-title {
    color: var(--t4);
    margin: 0;
    font-size: 2rem;
    font-family: Verdana;
    font-weight: 600;
    padding: 1rem 5rem;
    text-indent: 2rem;
    user-select: none;
    margin-bottom: 1rem;
}

.c-arc-chapters{
    width: 100%;
}

.c-arc-chapter {
    width: 65%;
    display: flex;
    -webkit-transition: transform .22s ease;
    transition: transform .22s ease;
    padding-bottom: .8rem;
    margin-bottom: .8rem;
    cursor: pointer;
}

.c-arc-chapter:hover{
    -webkit-transform: scale(1.021);
    transform: scale(1.021);
    background-color: var(--cbg2);
}

.cac-left{
    display: flex;
    margin: 0 1.5% 0 1%;
    width: 2.5%;
    justify-content: center;
    align-items: center;
    font-size: 1.75rem;
    color: var(--check);
}

.cac-center{
    font-size: 1.4rem;
    flex: 1;
    position: relative;
    overflow: hidden;
}

.cac-center p{
    margin: 0;
}

.cac-center-top{
    width: 100%;
    display: flex;
    align-items: center;
}

.cac-center-top p{
    display: inline-block;
}

.cac-center-top p:first-child{
    font-weight: 600;
    font-size: 2rem;
    margin-bottom: .333rem;
}

.cac-center-top p:nth-child(2){
    text-align: right;
    flex: 1;
    color: var(--t4);
    opacity: .7;
    font-size: 1.3rem;
    vertical-align: top;
    position: relative;
    bottom: .15rem;
}

.cac-center > p:nth-child(2){
    opacity: .8;
    text-indent: 2rem;
    margin-top: -1.5rem;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
    max-width: 80%;
}

@media screen and (min-width: 0px) and (max-width: 767px) {
    :root {
        --star: #ffd800;
    }

    .container-w {
        top: calc(var(--h-top-hgt-mobile) * 2);
    }

    .info-content{
        margin: 0;
    }

    .ah{ /* about header */
         width: 100%;
         display: block;
         overflow: hidden;
    }

    .ah::after{
        display: none;
    }

    .ah-mobile-menu {
        display: block;
        width: 100%;
        font-size: 0;
        background-color: var(--cbg);
        position: fixed;
        z-index: 4;
        top: 100px;
        -webkit-transition: top .4s ease;
        transition: top .4s ease;
    }

    .ah-mobile-menu-up{
        top: 50px;
    }

    .ah-mobile-menu p{
        display: inline-block;
        font-family: Verdana;
        font-size: 1.3rem;
        text-align: center;
        width: 33%;
        margin: 0;
        padding-top: 1rem;
        padding-bottom: 1rem;
        opacity: .6;
        border-bottom: 1px solid var(--cbg1);
    }

    .ah-left {
        width: 100%;
        height: 90vw;
        max-width: unset;
        overflow: unset;
        margin-top: 1rem;
    }

    .ah-left::after{
        content: '';
        position: absolute;
        background-image: linear-gradient(to bottom, transparent 0, black 80%, black 100%);
        width: 100%;
        height: 50%;
        top: 65%;
    }

    .ah-left img{
        height: unset;
        width: calc(100% + 5px);
        max-width: unset;
        max-height: unset;
        left: calc(50% + 1px);
        top: 0;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, 0%);
    }

    .ah-m-info {
        position: absolute;
        bottom: -.5rem;
        z-index: 2;
        font-family: 'Open Sans';
        margin: 0 2.5%;
    }

    #ah-m-title{
        color: white;
        font-weight: 600;
        font-size: 2.35rem;
        margin: 0;
        text-shadow: 0 0 10px black;
    }

    #ah-m-author{
        margin: .35rem 0 0 0;
        color: #b1b1b1;
        font-size: 1.15rem;
    }

    .ah-stars{
        display: none;
    }

    #ah-m-stars{
        margin-top: .65rem;
        font-size: 1.3rem;
        color: var(--star);
    }

    #ah-m-stars i{
        margin-right: .1rem;
        display: inline-block;
    }

    .half-star{
        margin-left: -.1rem;
    }

    #ah-m-stars p{
        color: white;
        display: inline-block;
        font-weight: 600;
        margin: 0;
    }

    .ah-right{
        margin: 2rem 0 0 0;
        position: relative;
        background-color: var(--cbg);
        border-top-left-radius: 25px;
        border-top-right-radius: 25px;
    }

    .ah-title{
        display: none;
    }

    .ah-author{
        display: none;
    }

    .ah-footer{
        position: absolute;
        width: 100%;
        flex: unset;
        height: 10rem;
    }

    .ah-footer-c{
        display: unset;
    }

    .ah-buttons {
        width: 100%;
        position: absolute;
        left: 0;
        top: 1rem;
        text-align: center;
    }

    .ah-dates {
        width: 100%;
        position: absolute;
        top: 5rem;
        text-align: center;
    }

    .ah-stats{
        margin: 10rem 2.5% 0 2.5%;
    }

    .ah-stats p{
        opacity: .6;
    }

    #about-content{
        margin: 0;
    }

    .about-desc{
        margin: 4rem 2.5%;
    }

    .about-desc > p:first-child{
        font-size: 2.65rem;
        color: var(--t3);
        margin: 4rem 0 0 0;
    }

    .about-desc:nth-child(2){
        margin-top: 1rem;
    }

    .about-awards{
        margin: 0 2.5%;
    }

    .about-top{
        margin: 0 2.5%;
    }
    
    .r-book-name, .c-book-name{
        display: block;
        margin: 2rem 0 0 1rem;
        font-size: 1.2rem;
        color: var(--t4);
    }

    .r-title{
        font-size: 3rem;
        margin-top: 1.5rem;
        margin-bottom: 4rem;
    }

    .r-m-review{
        text-align: center;
        display: block;
        margin: 4rem 0;
    }

    .r-m-review-btn{
        font-size: 1.4rem;
        background-color: var(--cbg100blue);
        display: inline-block;
        padding: .75rem 4rem;
        border-radius: 10px;
        color: var(--t1);
        font-family: 'Open Sans';
        font-weight: 600;
    }

    .r-ratings {
        border-right: none;
        width: calc(100% - 4.5%);
        padding-right: 0;
    }

    .r-orating{
        width: calc(100% - 4.5%);
    }

    .c-arc-title{
        margin: 1.75rem 0 .25rem 0;
        text-indent: .5rem;
    }

    .c-arc-chapter {
        width: 97.5%;
        -webkit-transition: unset;
        transition: unset;
        margin: unset;
        padding: .65rem 0;
    }

    .c-arc-chapter:hover{
        -webkit-transform: unset;
        transform: unset;
    }

    .cac-left{
        margin: 0 1rem 0 2%;
        font-size: 1.65rem;
    }

    .cac-center {
        font-size: 1.4rem;
        flex: 1;
        position: relative;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .cac-center > p{
        margin: 0;
        display: inline;
        margin: 0 .75rem;
    }

    .cac-center-top{
        width: unset;
        display: inline-flex;
    }

    .cac-center-top p{
        display: inline-block;
    }

    .cac-center-top p:first-child{
        font-size: 1.65rem;
        margin-bottom: unset;
    }

    .cac-center-top p:nth-child(2){
        display: none;
    }

    .cac-right{
        display: none;
    }
}

/* Dynamic content */

@keyframes content-exit {
    0% {
        opacity: 1;
        top: 0;
    }

    100% {
        opacity: 0;
        top: 20rem;
    }
}

.content-exit {
    user-select: none !important;
    pointer-events: none !important;
    -webkit-animation: content-exit .2s ease forwards;
    animation: content-exit .2s ease forwards;
    display: none;
}

@keyframes content-in{
    0%{
        opacity: 0;
    }
    100%{
        opacity: 1;
    }
}

.content-in {
    user-select: unset !important;
    pointer-events: all !important;
    -webkit-animation: content-in .6s ease forwards !important;
    animation: content-in .6s ease forwards !important;
}