@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap');

*,
html {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Roboto", sans-serif;
}

body {
    position: relative;
}

.material-icons.md-12 {
    font-size: 12px;
}

.material-icons.md-14 {
    font-size: 14px;
}

.material-icons.md-16 {
    font-size: 16px;
}

.material-icons.md-18 {
    font-size: 18px;
}

.material-icons.md-24 {
    font-size: 24px;
}

.material-icons.md-36 {
    font-size: 36px;
}

.material-icons.md-48 {
    font-size: 48px;
}

:root {
    --primary: #00a173;
    --mobile-btn: #0b57cf;
    --link: #01875f;
    --white: #fff;
    --black: #000;
    --bg-black: #202124;
    --secondary-text: #5f6368;
}

.hero__section {
    background-color: var(--bg-black);
}

.hero__section .container {
    min-height: 500px;
    position: relative;
}

.hero__section .container .bg__img {
    position: absolute;
    top: 0;
    right: 0;
    width: 700px;
    height: 420px;
}

.hero__section .container .bg__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero__section .container .gradient__bg {
    position: absolute;
    top: 0;
    right: 0;
    width: 700px;
    height: 420px;
    background-image: radial-gradient(transparent, var(--bg-black));
    min-height: 100%;
    background-image: linear-gradient(to right, rgb(32, 33, 36) 0, rgba(0, 0, 0, 0) 56%), linear-gradient(to top, rgb(32, 33, 36) 0, rgba(0, 0, 0, 0) 56%), linear-gradient(to left, rgb(32, 33, 36) 0, rgba(0, 0, 0, 0) 56%);
}

.hero__section .hero__content {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding-bottom: 35px;
}

.hero__section .hero__content .title {
    font-size: 2.75rem;
    line-height: 3.25rem;
    font-weight: 500;
    color: var(--white);
    margin-bottom: 10px;
}

.hero__section .hero__content .company {
    font-size: 1rem;
    color: var(--link);
    font-weight: 500;
    margin-bottom: 20px;
}

.hero__section .hero__content h1 {
    margin-top: 30px;
    font-size: 14px;
    font-weight: 400;
    color: rgb(154, 160, 166);
}

.hero__section .hero__content .details__section {
    color: var(--white);
    gap: 10px;
    display: flex;
    align-items: center;
    margin-bottom: 35px;
}

.hero__section .hero__content .details__section p {
    margin-bottom: 0;
}

.hero__section .hero__content .details__section .logo img {
    width: 70px;
    margin-right: 20px;
    border-radius: 50%;
}

.hero__content .detail__item {
    text-align: center;
}

.hero__content .detail__item p:first-child {
    font-weight: 600;
    margin-bottom: 5px;
    font-size: 14px;
    display: inline-flex;
    line-height: normal;
    gap: 4px;
    align-items: center;
}

.hero__content .detail__item p:last-child {
    font-size: 12px;
    color: rgb(154, 160, 166);
}

.hero__section .hero__content .details__section .divider {
    width: 1px;
    height: 20px;
    background-color: #303133;
    margin: 0 15px;
}

.hero__section .hero__content .download__section {
    display: flex;
    align-items: center;
    width: 100%;
    gap: 30px;
    line-height: normal;
}

a {
    text-decoration: none;
    color: white;
}

.hero__section .hero__content .download__section .install__btn {
    background-color: var(--primary);
    color: #303133 !important;
    padding: 10px 65px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
}

.hero__section .hero__content .download__section .play__btn {
    background-color: transparent;
    outline: 2px solid var(--primary);
    color: var(--primary) !important;
    padding: 10px 65px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
}

.hero__content .download__section .material-icons {
    color: var(--primary);
}

.hero__content .trailer__video__btn {
    margin-inline-start: auto;
    display: flex;
    align-items: center;
    background-color: rgba(0, 0, 0, .54);
    padding: 10px 20px;
    border-radius: 50px;
    color: white;
    font-size: 14px
}

.trailer__video__btn .material-icons {
    color: var(--white) !important;
}

/* mobile hero section */

.hero__section__mobile .container {
    padding-inline: 0;
}

.hero__section__mobile .bg__img {
    position: relative;
}

.hero__section__mobile .bg__img img {
    width: 100%;
}

.hero__section__mobile .gradient__bg {
    position: absolute;
    z-index: 14;
    /* background: linear-gradient(to bottom, transparent 40%, var(--bg-black) 100%); */
    width: 100%;
    height: 100%;
    top: 0;
}

.hero__section__mobile .hero__content {
    /* background-color: var(--bg-black); */
    padding: 20px 25px 0px 25px;
    position: relative;
    width: 100%;
}

.hero__section__mobile .hero__content .inner__content {
    position: relative;
    width: 100%;
    z-index: 25;
}

.hero__section__mobile .logo__and__title {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 30px;
    color: var(--bg-black);
}

.hero__section__mobile .logo__and__title img {
    width: 70px;
    border-radius: 12px;
}

.hero__section__mobile .trailer__video__btn {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: flex;
    align-items: center;
    background-color: rgba(0, 0, 0, .54);
    padding: 10px 20px;
    border-radius: 50px;
    color: white;
    font-size: 14px;
    z-index: 26;
}

.hero__section__mobile .logo__and__title .title__and__company p:first-child {
    line-height: 2rem;
    font-size: 1.5rem;
    letter-spacing: 0;
    font-weight: 500;
    word-break: keep-all;
    margin-bottom: 0px;
}

.hero__section__mobile .logo__and__title .title__and__company p:last-child {
    line-height: 1.5rem;
    font-size: 0.875rem;
    letter-spacing: .00625em;
    font-weight: 500;
    color: var(--primary);
    margin-bottom: 0;
}

.hero__section__mobile .details__section {
    color: var(--bg-black);
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: space-between;
    white-space: nowrap;
}

.hero__section__mobile .details-slider {
    overflow: hidden;
}

.hero__section__mobile .mobile__details__section {
    position: relative;
}

.hero__section__mobile .details-slider .swiper-wrapper {
    align-items: center;
}

.hero__section__mobile .detail__item {
    width: fit-content;
    margin-inline: auto;
}

.hero__section__mobile .details-slider .swiper-slide {
    width: fit-content;
    text-align: center !important;
}

.hero__section__mobile .detail__item p:first-child {
    font-weight: 600;
    margin-bottom: 0px;
    font-size: 13px;
    display: inline-flex;
    line-height: normal;
    gap: 4px;
    align-items: center;
}

.hero__section__mobile .detail__item p:last-child {
    font-size: 12px;
    color: rgb(154, 160, 166);
    margin-bottom: 0;
}

.hero__section__mobile .divider {
    width: 1px;
    height: 20px;
    margin-inline: auto;
    background-color: #d2d2d3;
    opacity: 0.5;
}

.hero__section__mobile .install__btn {
    width: 100%;
    background-color: var(--mobile-btn);
    color: var(--white) !important;
    padding: 8px 5px;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 500;
    outline: none;
    border: none;
}

.hero__section__mobile .play__btn {
    width: 100%;
    background-color: transparent;
    outline: 2px solid var(--mobile-btn);
    color: var(--mobile-btn) !important;
    padding: 8px 5px;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 500;
    border: none;
}

.hero__section__mobile .download__section {
    display: flex;
    align-items: center;
    color: var(--primary);
    justify-content: center;
    gap: 20px;
    font-size: 14px;
    margin-bottom: 40px;
    margin-top: 25px;
}

.hero__section__mobile .download__section a {
    display: flex;
    align-items: center;
    color: var(--primary);
    justify-content: center;
    gap: 5px;
    font-size: 14px;
}

.hero__section__mobile h1 {
    margin-top: 30px;
    font-size: 14px;
    font-weight: 400;
    color: rgb(154, 160, 166);
}


/* screenshot section */

.screenshot__slider {
    position: relative;
}

.screenshot__slider .screenshot-slider {
    overflow: hidden;
}

.screenshot__slider .slider {
    margin: 40px auto 10px auto;
}

.screenshot__slider .swiper-container {
    padding-bottom: 20px;
}

.screenshot__slider .swiper-scrollbar {
    background: #333333;
    border-radius: 10px;
}

.screenshot__slider .swiper-scrollbar-drag {
    background-color: var(--white);
}

.screenshot__slider .swiper-scrollbar {
    border-radius: 50px;
    height: 4px;
    width: 100%;
}

.screenshot__slider .swiper-wrapper img {
    height: 340px;
    width: 100%;
    object-fit: contain;
    border-radius: 10px;
}

.screenshot-slider .swiper-slide {
    width: fit-content !important;
}

.swiper-button-prev,
.swiper-button-next {
    color: var(--bg-black);
    background-color: var(--white);
    height: 60px !important;
    width: 60px !important;
    aspect-ratio: 1/1;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.swiper-button-next:after,
.swiper-button-prev:after {
    font-size: 16px;
    font-weight: 800;
    line-height: normal;
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
    left: -15px !important;
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
    right: -23px !important;
}

/* about game */
.section__heading {
    display: flex;
    gap: 10px;
    font-size: 18px;
    font-weight: 500;
    color: var(--bg-black);
    align-items: center;
}

.about__app .about__text {
    font-size: .875rem;
    font-weight: 400;
    letter-spacing: .0142857143em;
    line-height: 1.25rem;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 6;
    line-clamp: 6;
    max-height: 7.5rem;
    overflow: hidden;
    text-overflow: ellipsis;
    color: var(--secondary-text);
}

/* categories */

.category {
    display: flex;
    align-items: center;
    gap: 15px;
    margin: 30px auto 30px auto;
}

.category .category__item {
    border: 1px solid #cacaca;
    padding: 6px 25px;
    border-radius: 50px;
    font-size: 14px;
    color: #5f5f5f;
    font-family: 'roboto', sans-serif;
}

/* rating and review */
.rating__section {
    width: 100%;
    display: flex;
    align-items: center;
    margin-top: 30px;
    margin-bottom: 60px;
    gap: 45px;
}

.rating__section .rating__details .rating {
    color: var(--bg-black);
    font-family: Roboto, sans-serif;
    line-height: normal;
    font-size: 3.5rem;
    letter-spacing: 0;
    font-weight: 500;
    margin-bottom: 0;
}

.rating__section .rating__details .star__rating .material-icons {
    color: var(--link);
}

.rating__section .rating__details .review__count {
    font-size: .875rem;
    font-weight: 400;
    color: var(--secondary-text);
    margin-bottom: 0;
}

.rating__section .rating__bars {
    flex-grow: 1;
}

.rating__section .rating__bars .progress__bar__item {
    display: flex;
    align-items: center;
    gap: 10px;
}

.rating__section .rating__bars .progress__bar__item p {
    font-size: .875rem;
    font-weight: 400;
    color: var(--secondary-text);
    margin-bottom: 0;
}

.rating__section .rating__bars .progress__bar__item .progress {
    flex-grow: 1;
    height: 10px;
}

.rating__section .rating__bars .progress__bar__item .progress-bar {
    height: 100%;
    background-color: var(--link);
    border-radius: 5px;
}

/* reviews */

.review__section {
    margin-bottom: 80px;
}

.review__section .review__item {
    margin-bottom: 30px;
}

.review__section .review__item .profile__details {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 10px;
}

.review__section .review__item .profile__details img {
    width: 40px;
    height: 40px;
    border-radius: 50%;
}

.review__section .review__item .profile__details .name {
    margin-bottom: 0;
}

.review__section .review__item .review__details .rating__date {
    display: flex;
    gap: 10px;
    margin-bottom: 10px;
}

.review__section .review__item .review__details .rating__date .material-icons {
    color: var(--link);
}

.review__section .review__item .review__details .rating__date .date {
    font-size: .875rem;
    font-weight: 400;
    color: var(--secondary-text);
    margin-bottom: 0;
}

.review__section .review__item .description {
    font-size: .975rem;
    font-weight: 400;
    color: var(--secondary-text);
    margin-bottom: 0;
}


/* footer */
footer .footer__items {
    display: flex;
    gap: 10px;
    align-items: center;
    justify-content: center;
    margin-top: 50px;
    padding-bottom: 70px;
    flex-wrap: wrap;
}

footer .footer__items a {
    color: var(--bg-black) !important;
    font-size: 14px;
}

footer .footer__items .divider {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background-color: #303133;
    opacity: 0.6;
}

/* miscellanies */
#cta {
    width: 100%;
    max-width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
    bottom: -50px;
    z-index: 64546;
    transition: all 0.3s ease-in-out;
}

.footer__cta__download__section {
    display: flex;
    align-items: center;
    width: 100%;
    gap: 30px;
    line-height: normal;
}

#cta .install__btn {
    background-color: var(--primary);
    max-width: 100%;
    color: #303133 !important;
    padding: 10px 65px;
    border-radius: 12px;
    font-size: 14px;
    font-weight: 500;
    width: 100%;
    border: none;
    outline: none;
    text-align: center;
}

.other__page {
    min-height: calc(100vh - 150px);
}

/* mobile */

@media only screen and (max-width: 600px) {

    .swiper-button-prev,
    .swiper-button-next {
        display: none;
    }

    footer .footer__items {
        padding-bottom: 130px !important;
    }

    #cta {
        padding-bottom: 60px;
    }

    #cta .install__btn {
        background-color: var(--mobile-btn);
        max-width: 100%;
        color: var(--white) !important;
        padding: 10px 65px;
        border-radius: 50px;
        font-size: 14px;
        font-weight: 500;
        width: 100%;
        border: none;
        outline: none;
    }

    .screenshot__slider .swiper-wrapper img {
        height: 250px;
        object-fit: cover;
    }

    .screenshot-slider .first__slide img {
        width: 80vw !important;
        height: 250px;
        object-fit: cover;
    }


    .screenshot-slider .swiper-slide {
        width: fit-content !important;
    }
}