/* commons  */
.swiper-wrapper {
    transition-timing-function: linear !important;
    -webkit-transition-timing-function: linear !important;
    -o-transition-timing-function: linear !important;
}

.swiper-free-mode>.swiper-wrapper {
    transition-timing-function: linear !important;
}

/* Hero Section - Section 1  */
.hero-container {
    position: relative;
    display: block;
    width: 100%;
    height: 600px;
    margin-bottom: 0;
    padding-top: 0;


    .banner-top {
        height: 70%;
        width: 100%;

        .banner-content {
            position: absolute;
            top: 33%;
            left: 50%;
            transform: translate(-50%, -50%);
            max-width: 570px;
            width: 100%;
            height: auto;
            text-align: center;

            .eyebrow {
                color: var(--text-grey4);
            }
        }

        .desktop-banner {
            height: 100%;
            width: 100%;

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

    }

    .swiper {
        width: 100%;
        height: auto;

        .swiper-wrapper {
            pointer-events: none;

            .swiper-slide {
                pointer-events: none;

                img {
                    display: block;
                    width: auto;
                    height: auto;
                    object-fit: cover;
                    margin-inline: auto;
                }
            }
        }
    }

    @media screen and (max-width: 1024px) {
        & {
            height: 430px;

            .mobile-banner {
                height: 100%;
                width: 100%;

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

    @media screen and (max-width: 555px) {
        & {
            .mobile-banner {
                height: 100%;
                width: 100%;

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

/* Explore Story - Section 2  */
.explore-section {
    margin-block: 120px;
    height: auto;

    h2 {
        width: fit-content;
        margin-inline: auto;
        margin-bottom: 60px;
    }

    .tab {
        padding-inline: 20px;

        &.active {
            background: var(--blue-red-gradient);
            opacity: 1;
            background-clip: text;
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
        }
    }

    .tabs {
        width: 100%;
        /* justify-content: start; */
    }

    .products-grid-container {
        margin-top: 24px;

        .product-grid {
            display: flex;
            align-items: stretch;
            gap: 32px;

            .grid-img {
                min-width: 568px;
                width: 50%;
                height: 440px;
                overflow: hidden;
                border-radius: 16px;

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

            .black-card {
                position: relative;
                /* changes */
                display: flex;
                flex-direction: column;
                overflow: hidden;
                /* end */
                width: 50%;
                height: 440px;
                padding: 40px 32px;
                border-radius: 16px;
                background: linear-gradient(180deg, #3C3B3B 0%, #1B1B1B 100%);
                color: var(--text-white);

                .solid-line {
                    width: 100%;
                    height: 1px;
                    background: var(--bg-grey5);
                    margin-block: 32px;
                }

                .swiper.testimonialSwiper {
                    flex: 1;
                    width: 100%;
                    height: 60%;                    

                    .swiper-slide {
                        width: 100% !important;

                        .para-primary {
                            max-height: 95px;
                            height: auto;
                            overflow-y: auto;

                            &::-webkit-scrollbar {
                                width: 5px;
                            }

                            &::-webkit-scrollbar-track {
                                background: transparent;
                            }

                            /* Handle */
                            &::-webkit-scrollbar-thumb {
                                background: var(--bg-grey2);
                            }
                        }

                        .para-secondary {
                            margin-top: 12px;
                            color: var(--text-grey2);
                        }
                    }
                }

                .card-bottom {
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    margin-top: 24px;

                    .pagination-container {
                        position: relative !important;
                        width: auto;
                        height: auto;
                        display: flex;
                        gap: 16px;
                        bottom: unset;
                        left: unset;
                        margin-top: 0;
                        align-items: center;

                        svg {
                            width: 40px;
                            height: 40px;
                        }
                    }

                    .swiper-button-next,
                    .swiper-button-prev {
                        position: relative !important;
                        left: unset !important;
                        right: unset !important;
                    }

                    .swiper-pagination {
                        position: relative !important;
                        width: fit-content;
                        display: inline-flex !important;
                        color: var(--text-grey1);
                        text-align: center;
                        font-size: 14px;
                        font-weight: 400;
                        line-height: 1  ;
                        user-select: none;
                        align-items: center;
                        opacity: 1 !important;
                        visibility: visible !important;
                    }

                    .swiper-pagination-bullet {
                        width: 20px;
                        height: 20px;
                        text-align: center;
                        line-height: 20px;
                        font-size: 12px;
                        color: #000;
                        opacity: 1;
                        background: rgba(0, 0, 0, 0.2);
                    }

                    .swiper-pagination-bullet-active {
                        color: #fff;
                        background: #007aff;
                    }

                    .explore-card-cta {
                        width: max-content;
                        align-self: flex-end;   /* pushes to right */
                        margin-top: 0;

                        .cta-secondary__text {
                            white-space: nowrap;
                        }
                    }
                   
                }
            }
        }
    }

    @media screen and (max-width: 1024px) {
        & {
            .dropdown {
                z-index: 1;

                .custom-dropdown {
                    position: relative;
                    width: 100%;
                }

                .dropdown-cta {
                    display: flex;
                    align-items: center;
                    justify-content: space-between;
                    padding: 20px;
                    border: 1px solid #d8e5f4;
                    border-radius: 8px;
                    cursor: pointer;
                    background: var(--section-gradient);
                }

                .cta-arrow {
                    transition: transform 0.3s ease;
                }

                .options-container {
                    position: absolute;
                    top: calc(100% + (-1px));
                    left: 0;
                    width: 100%;
                    max-height: 0;
                    transition: max-height 0.3s ease;
                    overflow: hidden;
                    background-color: #fff;
                    /* border: 1px solid #d8e5f4; */
                    border-top: 0;
                    border-radius: 8px;
                    border-top-left-radius: 0;
                    border-top-right-radius: 0;
                    z-index: 10;
                }

                .dropdown-option {
                    padding: 12px 20px;
                    cursor: pointer;
                    transition: background-color 0.3s ease;
                    color: var(--text-black-primary);
                    font-size: 14px;
                }

                .dropdown-option.active {
                    color: var(--text-black-primary);
                    opacity: 0.4;
                }

                .dropdown-open .options-container {
                    max-height: 500px;
                    transition: max-height 0.3s ease;
                }

                .displayNone {
                    border: 0;
                }

                .dropdown-open .dropdown-cta {
                    border-bottom: 0;
                    border-bottom-left-radius: 0;
                    border-bottom-right-radius: 0;
                }

                .dropdown-open .cta-arrow {
                    transform: rotate(180deg);
                }
            }

            .products-grid-container {

                .product-grid {
                    flex-direction: column;
                    gap: 16px;

                    .grid-img {
                        width: 100%;
                        min-width: 100%;
                        height: 270px;

                        img {
                            object-position: top;
                        }
                    }

                    .black-card {
                        width: 100%;
                        padding: 32px 24px;

                        .solid-line {
                            margin-block: 24px;
                        }

                        .swiper.testimonialSwiper {
                            .swiper-slide {
                                .para-primary {
                                    max-height: 135px;
                                }
                            }
                        }


                        .pagination-container {
                            position: relative !important;
                            margin-top: 64px;
                        }
                    }
                }
            }
        }
    }
}