/*=============== HERO STORIES ===============*/
.hero__stories {
    position: relative;
    background-color: #D12C25;
    height: 100dvh;
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: start;
    padding-top: 230px;

    .hero__stories__container {

        .hero__stories__content {
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column;
            text-align: center;
            gap: 15px;
            max-width: 793px;
            width: 100%;

            h1 {
                color: white;
                font-size: 48px;
                font-weight: var(--font-bold);
                text-transform: uppercase;
            }

            p {
                color: white;
                font-size: 18px;
                font-weight: var(--font-regular);
                max-width: 718px;
                width: 100%;
            }
        }
    }

    &::after {
        content: "";
        position: absolute;
        bottom: 0;
        right: 0;
        width: 435px;
        height: 428px;
        background-image: url("../image/bg-character-stories-removebg-preview.webp");
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center;
        filter: brightness(0);
        opacity: 0.3;
    }

    &::before {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        width: 356px;
        height: 80%;
        background-image: url("../image/bg-character-2-removebg-preview.webp");
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center;
        opacity: 0.2;
        filter: brightness(0);
    }

    .cloud {
        position: absolute;
        bottom: -30px;
        left: 50%;
        transform: translateX(-50%);
        width: 631.3860174577082px;
        height: 254.96992223889558px;
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center;
        animation: cloudMove 1s linear infinite;

        @keyframes cloudMove {
            from {
                transform: translateX(-100%);
            }

            to {
                transform: translateX(100%);
            }
        }
    }


}

/*=============== STORIES ===============*/
.stories {
    padding-block: 107px 67px;

    .stories__container {

        .stories__content {
            display: flex;
            justify-content: center;
            align-items: center;
            flex-direction: column;
            gap: 40px;

            .header__stories {
                display: flex;
                justify-content: center;
                align-items: center;
                flex-direction: column;
                text-align: center;
                gap: 5px;
                max-width: 718px;
                width: 100%;

                h2 {
                    color: #21282E;
                    font-size: 48px;
                    font-weight: var(--font-bold);
                }

                p {
                    color: #21282E;
                    font-size: 18px;
                    font-weight: var(--font-regular);
                }
            }

            .stories__cards {
                display: grid;
                grid-template-columns: repeat(3, 1fr);
                gap: 34px;
                justify-items: center;

                .story__card {
                    display: flex;
                    justify-content: center;
                    align-items: start;
                    flex-direction: column;
                    background: #EEEEEE66;
                    box-shadow: 0px 0px 34px 1px #00000033;
                    border-radius: 4px;
                    max-width: 350px;
                    width: 100%;

                    .img {
                        position: relative;
                        width: 100%;
                        height: 229px;
                        border-radius: 4px 4px 0px 0px;
                        overflow: hidden;
                        transition: all 0.3s ease-in-out;

                        img {
                            width: 100%;
                            height: 100%;
                            object-fit: cover;
                            border-radius: 4px 4px 0px 0px;
                            transition: all 0.3s ease-in-out;
                        }
                    }

                    .story__card__content {
                        display: flex;
                        justify-content: center;
                        align-items: start;
                        flex-direction: column;
                        gap: 17px;
                        padding: 11px 15.5px 15.5px 15.5px;

                        .category {
                            font-size: 12px;
                            font-weight: var(--font-medium);
                            color: #DDC8B4;
                            text-transform: uppercase;
                        }

                        h3 {
                            color: #21282E;
                            font-size: 18px;
                            font-weight: var(--font-bold);
                            text-transform: uppercase;
                            display: -webkit-box;
                            -webkit-line-clamp: 2;
                            -webkit-box-orient: vertical;
                            overflow: hidden;
                        }

                        p {
                            color: #464F54;
                            font-size: 14px;
                            font-weight: var(--font-regular);
                            display: -webkit-box;
                            -webkit-line-clamp: 3;
                            -webkit-box-orient: vertical;
                            overflow: hidden;
                        }

                        .card__group {
                            display: flex;
                            justify-content: space-between;
                            align-items: center;
                            width: 100%;

                            .buy {
                                font-size: 18px;
                                font-weight: var(--font-regular);
                                color: #EB2F27;
                                text-decoration: underline;
                            }

                            .price {
                                font-size: 14px;
                                font-weight: var(--font-bold);
                                color: var(--turquoise-light);
                            }
                        }
                    }

                    &:hover {
                        .img {
                            img {
                                transform: scale(1.08);
                            }
                        }
                    }
                }
            }
        }
    }
}

/*=============== THE BEST ===============*/
.the__best {
    background-color: #161616;
    padding-block: 38px 120px;
    height: auto !important;
    min-height: auto !important;
    overflow: hidden;
    position: relative;
    z-index: 2;

    .the__best__content {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        text-align: center;
        gap: 24px;

        h2 {
            color: white;
            font-size: 42px;
            font-weight: var(--font-bold);
            text-transform: uppercase;
            max-width: 865px;
            width: 100%;
        }

        .stories__grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            gap: 7.5px;
            width: 100%;
            height: clamp(420px, 32vw, 540px);
        }

        .story-column {
            display: flex;
            flex-direction: column;
            gap: 7.5px;
            height: 100%;
            min-height: 0;
        }

        .story-card {
            overflow: hidden;
            background-color: #fff;
            min-height: 0;

            img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                display: block;
                transition: transform .4s ease;
            }

            &:hover img {
                transform: scale(1.05);
            }
        }

        .story-card.big {
            height: 100%;
        }

        .story-column:first-child {
            .story-card:first-child {
                flex: 1.25;
            }

            .story-card:last-child {
                flex: .75;
            }
        }

        .story-column:last-child {
            .story-card:first-child {
                flex: .9;
            }

            .story-card:last-child {
                flex: 1.1;
            }
        }
    }
}

@media (max-width: 1200px) {

    /*===============HERO STORIES===============*/
    .hero__stories {

        height: auto;
        min-height: 100dvh;
        padding-top: 190px;


        .hero__stories__container {


            .hero__stories__content {


                h1 {

                    font-size: 42px;

                }


                p {

                    font-size: 17px;

                }
            }
        }


        &::after {

            width: 350px;
            height: 345px;

        }


        &::before {

            width: 290px;

        }


        .cloud {

            width: 550px;
            height: 220px;

        }
    }

    /*===============STORIES===============*/
    .stories {

        padding-block: 90px 60px;


        .stories__container {


            .stories__content {


                .header__stories {


                    h2 {

                        font-size: 42px;

                    }


                    p {

                        font-size: 17px;

                    }
                }


                .stories__cards {

                    grid-template-columns: repeat(2, 1fr);
                    gap: 30px;


                    .story__card {

                        max-width: 360px;


                        .img {

                            height: 220px;

                        }
                    }
                }
            }
        }
    }

    /*===============THE BEST===============*/
    .the__best {
        padding-block: 38px 100px;

        .the__best__content {
            h2 {
                font-size: 38px;
            }

            .stories__grid {
                height: clamp(400px, 38vw, 500px);
            }
        }
    }
}

@media (max-width: 991px) {

    /*===============HERO STORIES===============*/
    .hero__stories {

        padding-top: 260px;


        .hero__stories__container {


            .hero__stories__content {

                max-width: 776px;


                h1 {

                    font-size: 42px;

                }


                p {

                    font-size: 18px;

                    max-width: 618px;

                }
            }
        }


        &::after {

            width: 435px;
            height: 428px;

            opacity: 0.25;

        }


        &::before {
            width: 318px;
            height: 465px;
            opacity: 0.15;
        }


        .cloud {

            width: 336px;
            height: 190px;
            bottom: -40px;

        }
    }

    /*===============STORIES===============*/
    .stories {

        padding-block: 114px;


        .stories__container {


            .stories__content {


                gap: 40px;


                .header__stories {


                    max-width: 100%;


                    h2 {

                        font-size: 32px;

                    }


                    p {

                        font-size: 16px;

                    }
                }


                .stories__cards {

                    grid-template-columns: repeat(2, 1fr);
                    clip-path: 34px;
                    row-gap: 25px;


                    .story__card {


                        .img {

                            height: 229px;

                        }


                        .story__card__content {


                            gap: 17px;


                            h3 {

                                font-size: 18px;

                            }


                            p {

                                font-size: 14px;

                            }
                        }
                    }
                }
            }
        }
    }

    /*===============THE BEST===============*/
    .the__best {
        padding-block: 44px 47px;

        .the__best__content {
            gap: 51px;

            h2 {
                font-size: 42px;
                max-width: 776px;
            }

            .stories__grid {
                grid-template-columns: 1fr;
                height: auto;
            }

            .story-column {
                display: grid;
                grid-template-columns: repeat(2, 1fr);

                height: auto;
            }

            .story-card {
                height: 240px;
            }

            .story-card.big {
                height: 282px;
            }

            .story-column:first-child,
            .story-column:last-child {

                .story-card:first-child,
                .story-card:last-child {
                    flex: unset;
                }
            }
        }
    }
}

@media (max-width: 768px) {

    /*===============HERO STORIES===============*/
    .hero__stories {
        padding-top: 240px;
        min-height: 80dvh;


        .hero__stories__container {


            .hero__stories__content {
                gap: 12px;
                padding-inline: 20px;


                h1 {

                    font-size: 32px;

                }


                p {

                    font-size: 16px;

                }
            }
        }


        &::after {

            width: 337px;
            height: 331px;

        }


        &::before {

            width: 246px;
            height: 360px;
        }


        .cloud {

            width: 350px;
            height: 140px;

        }
    }

    /*===============STORIES===============*/
    .stories {

        padding-block: 118px 63px;


        .stories__container {


            .stories__content {


                gap: 40px;


                .header__stories {


                    h2 {

                        font-size: 32px;

                    }


                    p {

                        font-size: 16px;

                    }
                }


                .stories__cards {
                    column-gap: 30px;


                    .story__card {

                        max-width: 318px;


                        .img {

                            height: 318px;

                        }


                        .story__card__content {


                            padding: 10px 14px 14px 14px;


                            .category {

                                font-size: 11px;

                            }


                            h3 {

                                font-size: 16px;

                            }


                            p {

                                font-size: 13px;

                            }


                            .card__group {


                                .buy {

                                    font-size: 16px;

                                }


                                .price {

                                    font-size: 13px;

                                }
                            }
                        }
                    }
                }
            }
        }
    }

    /*===============THE BEST===============*/
    .the__best {
        padding-block: 68px 112px;

        .the__best__content {
            gap: 66px;

            h2 {
                font-size: 28px;
            }

            .story-card {
                height: 220px;
            }

            .story-card.big {
                height: 282px;
            }
        }
    }
}

@media (max-width: 576px) {

    /*===============HERO STORIES===============*/
    .hero__stories {

        padding-top: 167px;
        min-height: 75dvh;


        .hero__stories__container {


            .hero__stories__content {
                position: relative;
                z-index: 5;
                padding-inline: 0;

                gap: 22px;


                h1 {

                    font-size: 28px;

                }


                p {

                    font-size: 14px;

                }
            }
        }


        &::after {
            bottom: 80px;
            right: -25px;
            width: 223px;
            height: 220px;

        }


        &::before {
            width: 120px;
            height: 176px;
        }


        .cloud {

            width: 260px;
            height: 105px;
            bottom: -10px;

        }
    }

    /*===============STORIES===============*/
    .stories {

        padding-block: 53px;


        .stories__container {


            .stories__content {


                gap: 28px;


                .header__stories {


                    gap: 10px;


                    h2 {

                        font-size: 28px;

                    }


                    p {

                        font-size: 14px;

                    }
                }


                .stories__cards {
                    grid-template-columns: 1fr;
                    gap: 30px;


                    .story__card {
                        max-width: 100%;


                        .img {

                            height: 207px;

                        }


                        .story__card__content {


                            gap: 15px;


                            h3 {

                                font-size: 16px;

                            }


                            p {

                                font-size: 13px;

                            }


                            .card__group {


                                .buy {

                                    font-size: 16px;

                                }


                                .price {

                                    font-size: 13px;

                                }
                            }
                        }
                    }
                }
            }
        }
    }

    /*===============THE BEST===============*/
    .the__best {
        padding-block: 49px 82px;

        .the__best__content {
            gap: 31px;

            h2 {
                font-size: 22px;
                line-height: 1.25;
            }

            .stories__grid {
                gap: 6px;
            }

            .story-column {
                gap: 6px;
            }

            .story-card,
            .story-card.big {
                height: 220px;
            }
        }
    }

    .section {
        padding-inline: 1rem;
    }
}