/*=============== HERO SINGLE BLOG ===============*/
.hero__single__blog {
    padding-block: 127px 180px;

    .hero__single__blog__container {

        .hero__single__blog__content {
            display: flex;
            justify-content: center;
            align-items: start;
            flex-direction: column;
            gap: 30px;

            .back__btn {
                gap: 11px;
                font-size: 16px;
                font-weight: var(--font-regular);
                color: #cccccc;
                transition: color 0.3s ease-in-out !important;

                &:hover {
                    color: var(--dark-blue);
                }
            }

            .img {
                width: 100%;
                height: 587px;

                img {
                    width: 100%;
                    height: 100%;
                    object-fit: cover;
                }
            }

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

                .single__blog__about {
                    display: flex;
                    justify-content: center;
                    align-items: start;
                    flex-direction: column;
                    max-width: 815px;
                    width: 100%;
                    gap: 28px;

                    h1,
                    h2,
                    h3,
                    p,
                    li {
                        color: #333333;

                        span {
                            font-weight: var(--font-bold);
                        }
                    }

                    h1 {
                        font-size: 24px;
                        font-weight: var(--font-bold);
                    }

                    h2 {
                        font-size: 32px;
                        font-weight: var(--font-bold);
                    }

                    p {
                        font-size: 16px;
                        font-weight: var(--font-regular);
                        line-height: 1.5;
                    }

                    ul,
                    ol {
                        display: flex;
                        flex-direction: column;
                        gap: 4px;
                        margin-left: 40px;

                        li {
                            font-size: 16px;
                            font-weight: var(--font-regular);
                            line-height: 1.5;
                        }
                    }

                    ul {
                        list-style: disc;
                    }

                    .spical {
                        gap: 11px;

                        li {
                            color: var(--orange);
                        }
                    }

                    a {
                        color: var(--orange);
                        font-weight: var(--font-bold);
                    }
                }

                .single__blog__sidebar {
                    position: sticky;
                    top: 150px;
                    display: flex;
                    flex-direction: column;
                    align-items: center;
                    justify-content: center;
                    gap: 36px;
                    width: 100%;
                    max-width: 422px;
                    border: 1px solid #D1D5DB66;
                    padding-block: 30px 48px;
                    border-radius: 12px;
                    align-self: flex-start;

                    .btn__blog {
                        padding: 12px 32px;
                        background-color: var(--blue);
                        color: white;
                        border-radius: 7px;
                        box-shadow: 0px 0px 20px 0px #0071BDB2;
                        font-size: 20px;
                        font-weight: var(--font-semi-bold);
                        transition: all 0.3s ease-in-out;

                        &:hover {
                            background-color: var(--dark-blue);
                            box-shadow: 0px 0px 30px 0px #012946B2;
                        }
                    }

                    .share {
                        display: flex;
                        justify-content: space-between;
                        align-items: center;
                        gap: 41px;
                        padding-block: 38px;
                        padding-inline: 25px;
                        border-top: 1px solid #F2F2F2;
                        border-bottom: 1px solid #F2F2F2;
                        width: 100%;

                        span {
                            font-size: 18px;
                            font-weight: var(--font-semi-bold);
                            color: #1E293B;
                        }

                        .social {
                            display: flex;
                            justify-content: center;
                            align-items: center;
                            gap: 23px;

                            a,
                            button {
                                background-color: transparent;
                                color: #CCCCCC;
                                font-size: 25px;
                                transition: all 0.3s ease-in-out;
                                cursor: pointer;

                                &:hover {
                                    color: var(--blue);
                                }

                            }
                        }

                        /* Toast */
                        .toast {
                            position: fixed;
                            top: 100px;
                            right: 10px;
                            transform: translateX(-50%);
                            background: var(--blue);
                            color: #fff;
                            padding: 10px 16px;
                            border-radius: 8px;
                            opacity: 0;
                            z-index: 5;
                            transition: 0.3s;
                        }

                        .toast.show {
                            opacity: 1;
                        }
                    }

                    .popular__courses {
                        display: flex;
                        justify-content: center;
                        align-items: start;
                        flex-direction: column;
                        gap: 32px;
                        padding-inline: 20px;

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

                            span {
                                font-size: 22px;
                                font-weight: var(--font-semi-bold);
                                color: #333333;
                            }

                            a {
                                gap: 6px;
                                font-size: 14px;
                                font-weight: var(--font-regular);
                                color: #6B7280;
                                transition: all 0.3s ease-in-out;

                                i {
                                    font-size: 12px;
                                    margin-top: 5px;
                                }

                                &:hover {
                                    color: var(--blue);
                                }
                            }
                        }

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

                            .card {
                                position: relative;
                                display: flex;
                                justify-content: center;
                                align-items: start;
                                flex-direction: column;
                                gap: 2rem;
                                width: 100%;
                                border-radius: 12px;
                                padding: 15.5px 17.5px;
                                transition: all 0.3s ease-in-out !important;
                                z-index: 1;

                                .card__text {
                                    display: flex;
                                    justify-content: center;
                                    align-items: start;
                                    flex-direction: column;
                                    gap: 4px;
                                    color: white;
                                    z-index: 2;

                                    h3 {
                                        font-size: 26.6px;
                                        font-weight: var(--font-bold);
                                        display: -webkit-box;
                                        -webkit-line-clamp: 2;
                                        -webkit-box-orient: vertical;
                                        overflow: hidden;
                                    }

                                    p {
                                        font-size: 16px;
                                        font-weight: var(--font-semi-bold);
                                        display: -webkit-box;
                                        -webkit-line-clamp: 2;
                                        -webkit-box-orient: vertical;
                                        overflow: hidden;
                                    }
                                }

                                .img {
                                    width: 238px;
                                    height: 238px;
                                    border-radius: 0 1000px 1000px 1000px;
                                    border: 1.11px solid #D1D5DB4D;
                                    margin-left: 25px;
                                    transform: rotate(2.78deg);
                                    z-index: 2;

                                    img {
                                        width: 100%;
                                        height: 100%;
                                        object-fit: cover;
                                        border-radius: 0 1000px 1000px 1000px;
                                    }
                                }

                                .btn {
                                    position: absolute;
                                    bottom: 17px;
                                    right: 17px;
                                    padding: 9px 35px;
                                    background-color: white;
                                    box-shadow: 0px 4.44px 11.09px 0px #33333347;
                                    border-radius: 999px;
                                    z-index: 2;
                                    font-size: 17.75px;
                                    font-weight: var(--font-semi-bold);
                                }

                                &::after {
                                    content: '';
                                    position: absolute;
                                    top: 0;
                                    left: 0;
                                    width: 100%;
                                    height: 100%;
                                    background-image: url('../image/bg-course-card.png');
                                    background-size: cover;
                                    background-position: center;
                                    opacity: 0.05;
                                    z-index: 0;
                                    pointer-events: none;
                                }
                            }

                            .card:hover {
                                transform: translateY(-3px) !important;
                            }

                            .card__orange {
                                background-color: var(--orange);

                                .btn {
                                    color: var(--orange);
                                    border: 1.11px solid #FEB785;
                                }
                            }

                            .card__blue {
                                background-color: var(--blue);

                                .btn {
                                    color: var(--blue);
                                    border: 1.11px solid #3899DA;
                                }
                            }

                            .card__dark {
                                background-color: var(--dark-blue);

                                .btn {
                                    color: var(--dark-blue);
                                    border: 1.11px solid #4D5E78;
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    .container {
        max-width: 1350px;
    }
}

/*=============== OUR BLOGS ===============*/
.our__blogs {
    padding-block: 0px 78px;

    .our__blogs__container {

        .our__blogs__content {
            position: relative;
            display: flex;
            justify-content: center;
            align-items: start;
            flex-direction: column;
            gap: 42px;

            h2 {
                font-size: 34px;
                font-weight: var(--font-semi-bold);
                color: #1E293B;
            }

            .swiper {
                width: 100%;
                padding-block: 21px;

                .swiper-wrapper {

                    .discover_data {
                        position: relative;
                        display: flex;
                        justify-content: start;
                        align-items: center;
                        gap: 19px;
                        background: rgb(255, 255, 255);
                        border-radius: 10px;
                        box-shadow: 0px 0.9px 1.8px 0px #0000000D;
                        border: 1px solid #F3F4F6;
                        padding: 8px;
                        opacity: 0.9;
                        transition: box-shadow 0.3s ease-in-out, opacity 0.3s ease-in-out;

                        .discover_img {
                            width: 359px;
                            height: 255.6px;

                            img {
                                width: 100%;
                                height: 100%;
                                object-fit: cover;
                                border-radius: 8px 0 0 8px;
                            }
                        }

                        .data {
                            display: flex;
                            justify-content: center;
                            align-items: start;
                            flex-direction: column;
                            gap: 8px;
                            max-width: 330px;
                            padding-right: 50px;

                            h2 {
                                font-size: 16px;
                                font-weight: var(--font-bold);
                                color: #1E293B;
                                width: 100%;
                                display: -webkit-box;
                                -webkit-line-clamp: 2;
                                -webkit-box-orient: vertical;
                                overflow: hidden;
                            }

                            p {
                                font-size: 14px;
                                font-weight: var(--font-regular);
                                color: #6B7280;
                                width: 100%;
                                display: -webkit-box;
                                -webkit-line-clamp: 3;
                                -webkit-box-orient: vertical;
                                overflow: hidden;
                            }

                            .link_date {
                                font-size: 16px;
                                font-weight: var(--font-semi-bold);
                                color: var(--blue);
                                margin-top: 12px;
                            }
                        }

                        .logo {
                            position: absolute;
                            top: -20px;
                            right: -10px;
                            width: 62px;
                            height: 62px;
                            border-radius: 50%;
                            border: 1.8px solid #F1F1F1;

                            img {
                                width: 100%;
                                height: 100%;
                                border-radius: 50%;
                                object-fit: cover;
                            }
                        }

                        &:hover {
                            box-shadow: 0px 0.9px 1.8px 0px #0000001A, 0px 1.8px 3.6px 0px #0000001A, 0px 3.6px 7.2px 0px #0000001A;
                            opacity: 1;
                        }
                    }
                }
            }

            .next__btn {
                position: absolute;
                width: 53px;
                height: 53px;
                right: 0;
                bottom: 40%;
                transform: translateY(50%);
                background-color: white;
                box-shadow: 0px 4px 34px 0px #D7D7D7;
                border-radius: 50%;
                font-size: 18px;
                color: var(--blue);
                transition: all 0.3s ease-in-out;
                z-index: 5;
                cursor: pointer;

                &:hover {
                    background-color: var(--blue);
                    color: white;
                    box-shadow: 0px 4.44px 11.09px 0px #0071BDB2;
                }
            }
        }
    }

    .container {
        max-width: 1350px;
    }
}

@media (max-width: 1220px) {

    /*===============HERO SINGLE BLOG===============*/
    .hero__single__blog {
        padding-block: 115px 150px;

        .hero__single__blog__container {
            .hero__single__blog__content {
                .img {
                    height: 520px;
                }

                .group__single__blog {
                    gap: 30px;

                    .single__blog__about {
                        max-width: 700px;
                    }

                    .single__blog__sidebar {
                        max-width: 380px;

                        .popular__courses {
                            .our__courses__cards {
                                .card {
                                    .img {
                                        width: 210px;
                                        height: 210px;
                                    }

                                    .card__text {
                                        h3 {
                                            font-size: 23px;
                                        }

                                        p {
                                            font-size: 14px;
                                        }
                                    }

                                    .btn {
                                        font-size: 15px;
                                        padding: 8px 28px;
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    /*===============OUR BLOGS===============*/
    .our__blogs {
        padding-block: 0px 70px;

        .our__blogs__container {
            .our__blogs__content {
                gap: 36px;

                h2 {
                    font-size: 30px;
                }

                .swiper {
                    .swiper-wrapper {
                        .discover_data {
                            .discover_img {
                                width: 310px;
                                height: 230px;
                            }

                            .data {
                                max-width: 300px;
                                padding-right: 35px;
                            }
                        }
                    }
                }
            }
        }
    }
}

@media (max-width: 991px) {

    /*===============HERO SINGLE BLOG===============*/
    .hero__single__blog {
        padding-block: 130px 110px;

        .hero__single__blog__container {
            .hero__single__blog__content {
                gap: 26px;

                .img {
                    height: 440px;
                }

                .group__single__blog {
                    flex-direction: column;
                    gap: 45px;

                    .single__blog__about {
                        max-width: 100%;

                        h2 {
                            font-size: 28px;
                        }
                    }

                    .single__blog__sidebar {
                        position: relative;
                        top: 0;
                        max-width: 100%;

                        .popular__courses {
                            width: 100%;

                            .our__courses__cards {
                                flex-direction: row;
                                flex-wrap: wrap;
                                width: 100%;

                                .card {
                                    width: calc(50% - 11px);
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    /*===============OUR BLOGS===============*/
    .our__blogs {
        padding-block: 0px 60px;

        .our__blogs__container {
            .our__blogs__content {
                gap: 32px;

                h2 {
                    font-size: 28px;
                }

                .swiper {
                    .swiper-wrapper {
                        .discover_data {
                            padding: 0;
                            max-width: 280px;
                            flex-direction: column;

                            .discover_img {
                                width: 100%;
                                height: 200px;

                                img {
                                    border-radius: 8px 8px 0 0;
                                }
                            }

                            .data {
                                max-width: 100%;
                                padding: 5.5px 15.5px 10px 15.5px;

                                h2 {
                                    font-size: 16px;
                                }

                                p {
                                    font-size: 12px;
                                }

                                .link_date {
                                    font-size: 15px;
                                    margin-top: 15px;
                                    text-align: center;
                                    width: 100%;
                                }
                            }

                            .logo {
                                top: 52%;
                                transform: translateY(-50%);
                                right: 15px;
                                width: 35px;
                                height: 35px;
                            }
                        }
                    }
                }

                .next__btn {
                    width: 48px;
                    height: 48px;
                    font-size: 16px;
                }
            }
        }
    }
}

@media (max-width: 768px) {

    /*===============HERO SINGLE BLOG===============*/
    .hero__single__blog {
        padding-block: 160px 80px;

        .hero__single__blog__container {
            .hero__single__blog__content {
                gap: 22px;

                .back__btn {
                    font-size: 14px;
                }

                .img {
                    height: 340px;
                }

                .group__single__blog {
                    gap: 35px;

                    .single__blog__about {
                        gap: 22px;

                        h1 {
                            font-size: 22px;
                        }

                        h2 {
                            font-size: 24px;
                        }

                        p {
                            font-size: 14px;
                        }

                        ul,
                        ol {
                            margin-left: 26px;

                            li {
                                font-size: 14px;
                            }
                        }
                    }

                    .single__blog__sidebar {
                        gap: 28px;
                        padding-block: 26px 36px;

                        .btn__blog {
                            font-size: 17px;
                            padding: 11px 28px;
                        }

                        .share {
                            gap: 24px;
                            padding-block: 28px;
                            padding-inline: 20px;

                            span {
                                font-size: 16px;
                            }

                            .social {
                                gap: 18px;

                                a,
                                button {
                                    font-size: 22px;
                                }
                            }
                        }

                        .popular__courses {
                            gap: 26px;

                            .header__popular {
                                span {
                                    font-size: 19px;
                                }
                            }

                            .our__courses__cards {
                                .card {
                                    gap: 1.5rem;

                                    .card__text {
                                        h3 {
                                            font-size: 20px;
                                        }

                                        p {
                                            font-size: 13px;
                                        }
                                    }

                                    .img {
                                        width: 180px;
                                        height: 180px;
                                    }

                                    .btn {
                                        font-size: 14px;
                                        padding: 8px 24px;
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    /*===============OUR BLOGS===============*/
    .our__blogs {
        padding-block: 0px 50px;

        .our__blogs__container {
            .our__blogs__content {
                gap: 28px;

                h2 {
                    font-size: 25px;
                }

                .swiper {
                    .swiper-wrapper {
                        .discover_data {
                            gap: 14px;

                            .discover_img {
                                width: 260px;
                                height: 210px;
                            }

                            .data {
                                padding-right: 25px;

                                h2 {
                                    font-size: 15px;
                                }

                                p {
                                    font-size: 13px;
                                }

                                .link_date {
                                    font-size: 14px;
                                }
                            }
                        }
                    }
                }

                .next__btn {
                    width: 43px;
                    height: 43px;
                    right: 10px;
                    bottom: 45%;
                    font-size: 15px;
                }
            }
        }
    }
}

@media (max-width: 576px) {

    /*===============HERO SINGLE BLOG===============*/
    .hero__single__blog {
        padding-block: 120px 60px;

        .hero__single__blog__container {
            .hero__single__blog__content {
                gap: 20px;

                .img {
                    height: 240px;
                }

                .group__single__blog {
                    gap: 30px;

                    .single__blog__about {
                        gap: 18px;

                        h1 {
                            font-size: 20px;
                        }

                        h2 {
                            font-size: 21px;
                        }

                        p {
                            font-size: 13px;
                        }

                        ul,
                        ol {
                            margin-left: 22px;

                            li {
                                font-size: 13px;
                            }
                        }
                    }

                    .single__blog__sidebar {
                        gap: 24px;
                        padding-block: 22px 30px;

                        .btn__blog {
                            font-size: 15px;
                            padding: 10px 24px;
                        }

                        .share {
                            flex-direction: column;
                            gap: 16px;
                            padding-block: 22px;
                            padding-inline: 16px;

                            span {
                                font-size: 15px;
                            }

                            .social {
                                gap: 16px;

                                a,
                                button {
                                    font-size: 20px;
                                }
                            }
                        }

                        .popular__courses {
                            gap: 22px;
                            padding-inline: 14px;

                            .header__popular {
                                span {
                                    font-size: 17px;
                                }

                                a {
                                    font-size: 12px;
                                }
                            }

                            .our__courses__cards {
                                .card {
                                    width: 100%;
                                    gap: 1.3rem;
                                    padding: 14px;

                                    .card__text {
                                        h3 {
                                            font-size: 18px;
                                        }

                                        p {
                                            font-size: 12px;
                                        }
                                    }

                                    .img {
                                        width: 165px;
                                        height: 165px;
                                        margin-left: 10px;
                                    }

                                    .btn {
                                        right: 14px;
                                        bottom: 14px;
                                        font-size: 13px;
                                        padding: 7px 22px;
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }

    /*===============OUR BLOGS===============*/
    .our__blogs {
        padding-block: 0px 40px;

        .our__blogs__container {
            .our__blogs__content {
                gap: 24px;

                h2 {
                    font-size: 22px;
                }

                .swiper {
                    padding-block: 18px;

                    .swiper-wrapper {
                        .discover_data {
                            flex-direction: column;
                            align-items: start;
                            gap: 12px;
                            max-width: 100%;

                            .discover_img {
                                width: 100%;
                                height: 210px;

                                img {
                                    border-radius: 8px 8px 0 0;
                                }
                            }

                            .data {
                                max-width: 100%;
                                padding-right: 0;
                                padding: 0 8px 12px;

                                h2 {
                                    font-size: 14px;
                                    width: 80%;
                                }

                                p {
                                    font-size: 12px;
                                }

                                .link_date {
                                    font-size: 13px;
                                    margin-top: 10px;
                                }
                            }

                            .logo {
                                top: 57%;
                                right: 13px;
                                width: 35px;
                                height: 35px;
                            }
                        }
                    }
                }

                .next__btn {
                    width: 38px;
                    height: 38px;
                    right: 8px;
                    font-size: 14px;
                }
            }
        }
    }

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