/* PRODUCT DETAILS STYLE */
#productDetails_section{
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 30px;
}


/* main_details_container */

/* LEFT SIDE: IMAGES ZONE */
.main_details_container{
    width: 100%;
    
    display: flex;
    flex-direction: row;


}

.main_details_container .product_images{
    width: 40%;
    
    padding: 10px;
    display: flex;
    flex-direction: column;
    position: relative;
}

.image-zoom-container {
    display: none; /* Hide by default */
    position: fixed; /* Set to fixed position to overlay on top of the content */
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.8); /* Semi-transparent black background */
    z-index: 9999; /* Set a high z-index to overlay on top of other elements */
  }

  .image-zoom-container img {
    display: block;
    margin: auto;
    max-height: 90%;
    max-width: 90%;
  }

.main_details_container .product_images img.main_image{
    width: 100%;
    border-radius: 30px;
    cursor: zoom-in;
    transition: 0.3s ease;
}



.main_details_container .product_images .smaller_images{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-top: 10px;
}

.main_details_container .product_images .smaller_images .small_img_col {
    flex-basis: 24%;
    cursor: pointer;
    transition: 0.3s ease;
}

.main_details_container .product_images .smaller_images .small_img_col:hover {
    scale: 1.1;
}

.main_details_container .product_images .smaller_images .small_img_col img{
    width: 100%;
    border-radius: 15px;
    
}



/* RIGHT SIDE: TEXTS AND BUTTONS ZONE */

.product_text_details{
    width: 100%;
    display: flex;
    flex-direction: column;
    padding: 20px 60px;
    gap: 20px;
}

.separator_line{
    width: 100%;
    height: 0.5px;
    opacity: 0.3;
    background-color: #606063;
    
}

.product_text_details .product_category{
    width: 100%;
    font-size: 1.5rem;
    font-weight: 400;
    text-transform: capitalize;
    color: #606063;
}


.product_text_details  .product_title{
    
    font-size: 2.5rem;
    text-transform: capitalize;
    color: #0a111f;
    
    margin-bottom: 10px;
}



.product_text_details .availability_and_buttons{
    
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 10px;
    
} 

.product_text_details .availability_and_buttons .product_availability{
    width: fit-content;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 1rem;
    font-weight: 600;
    text-transform: uppercase;
    color: #088178;
    background-color: #d2ebdf;
    

}

.product_text_details .availability_and_buttons .product_availability_notAvailable{
    width: fit-content;
    padding: 6px 12px;
    border-radius: 20px;
    font-size: 1rem;
    font-weight: 600;
    text-transform: uppercase;
    color: #a4133c;
    background-color: #ffccd5;
}

.product_text_details .availability_and_buttons .share_button{
    background-color: transparent;
    border: 0px;
    cursor: pointer;
}

.product_text_details .share_button i{
    color: #0a111f;
    font-size: 2.5rem;
    ;

} 

.product_text_details .price_div{
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: center;
    
}
.product_text_details .price_div .price_subdiv{
    display: flex;
    flex-direction: row;
    gap: 30px;
}

.product_text_details .price_div .price{
    font-size: 2.25rem;
    font-weight: 600;
    text-transform: capitalize;
    color: #088178;
    
}

.product_text_details .price_div .old_price{
    font-size: 1.25rem;
    font-weight: 500;
    text-decoration: line-through;
    text-transform: capitalize;
    color: #606063;
}

.product_text_details .price_div .percentage_of_sales{
    font-size: 1rem;
    text-transform: capitalize;
    align-self: center;
    background-color: #fca311;
    padding: 6px 12px;
    border-radius: 20px;
    color: #FFFF;
    font-weight: 600;
    
}

.size_selector_MainDiv{
    display: flex;
    justify-content: center;
    flex-direction: column;
    gap: 5px;
}


.size_selector_MainDiv h6.size_selector_title{
    text-transform: capitalize;
    font-size: 1.5rem;
    color: #0a111f;
    font-weight: 500;

}

.size_selector_MainDiv .size_selection_container {
    display: flex;
    align-items: center;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px;
    
}

.size_selector_MainDiv .size_selection_container button.size_button{
    border: 2px solid #fca311;
    padding: 4px 10px;
    border-radius: 15px;
    font-size: 1.2rem;
    font-weight: 500;
    background-color: transparent;
    text-transform: uppercase;
    color: #0a111f;
    cursor: pointer;
    transition: 0.15s ease-in;

}

.size_selector_MainDiv .size_selection_container button.active_size_button{
    background-color: #fb960f;
    color: #ffff;
}

.size_selector_MainDiv p.unselected_size_warning{
    display: none;
    font-size: 1rem;
    color: #c1292e;
    font-weight: 600;
}

.product_text_details .ratings_div{
    width: 100%;
    display: flex;
    align-items: center;
    gap: 10px;
    
}

.product_text_details .ratings_div p.rating_value{
    font-size: 1.5rem;
    text-transform: capitalize;
    align-self: center;
    background-color: #fca311;
    padding: 4px 12px;
    border-radius: 10px;
    color: #FFFF;
    font-weight: 600;
}

.product_text_details .ratings_div i{
    color: #fca311;
    font-size: 1.75rem;
}

.product_text_details .ratings_div p.number_of_ratings{
    font-size: 1rem;
    color: #606063;
    text-transform: capitalize;

}






.product_text_details .remaining_quantity_warning{
    display: none;
    flex-direction: row;
    align-items: center;
    gap: 5px;
    color: #c1292e;
    font-size: 1.25rem;
    font-weight: 500;
    
}

.product_text_details .delivery_info{
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 5px;
    color: #606063;
    font-size: 1.25rem;
    font-weight: 500;
}

.product_text_details .delivery_info i{
    font-size: 2rem;
}

.product_text_details .delivery_info span{
    color: #0a111f;
    font-weight: 600;
}

.product_text_details .add_to_cart_button_active{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    width: 100%;
    font-size: 1.5rem;
    text-decoration: none;
    text-align: center;
    text-transform: capitalize;
    color: #ffff;
    padding: 10px;
    background-color: #fca311;

    border-radius: 10px;
    margin-top: 10px;
    font-weight: 600;
    transition: 0.6s ease;
    border: 0px;
    cursor: pointer;
    transition: 0.3s ease;
}

.product_text_details .add_to_cart_button_notActive{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    width: 100%;
    font-size: 1.5rem;
    text-decoration: none;
    text-align: center;
    text-transform: capitalize;
    color: #FFFF;
    padding: 10px;
    background-color: #606063;
    border-radius: 10px;
    margin-top: 10px;
    font-weight: 600;
    transition: 0.6s ease;
    border: 0px;
    transition: 0.3s ease;
}

.product_text_details .add_to_cart_button_active i,
.product_text_details .add_to_cart_button_notActive i{
    font-size: 2rem;
}

.product_text_details .add_to_cart_button_active:hover{
    scale: 1.01;
    box-shadow: 0 10px 15px rgba(0, 0, 0, 0.06 );
}

.product_text_details .check_cart{
    display: none;
    color: #FFFF;
    align-self: center;
    text-decoration: none;
    font-size: 1.25rem;
    font-weight: 600;
    padding: 10px 15px;
    background-color: #fca311;
    text-align: center;
    text-transform: capitalize;
    border-radius: 10px;
}


.product_text_details .product_quantity{
    display: none;
    flex-direction: row;
    gap: 20px;
    justify-content: center;
    align-items: center;
    
}

.product_text_details .product_quantity span{
    background-color: #fca311;
    color: #FFFF;
    font-size: 1.25rem;
    font-weight: 500;
    padding: 5px 10px;
    border-radius: 5px;
    cursor: pointer;
}

.product_text_details .product_quantity p{
    color: #0a111f;
    font-size: 1.25rem;
    font-weight: 400;
    
}

.product_text_details .description_div{
    display: flex;
    flex-direction: column;
    justify-content: center;
    margin-top: 20px;
    gap: 10px;
}

.product_text_details .description_div h5.description_title{
    text-transform: capitalize;
    font-size: 2rem;
    color: #0a111f;
    font-weight: 500;

}

.product_text_details .description_div p.description_para{
    font-size: 1.3rem;
    color: #0a111f;
    font-weight: 400;
}

.product_text_details .details_container{
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 5px;
}


.product_text_details .details_container .details_card{
    width: 100%;
    display: flex;
    
    flex-wrap: wrap;
    
}



.product_text_details .details_container .details_card h6.detail_name{
    width: 50%;
    font-size: 1.3rem;
    color: #0a111f;
    font-weight: 600;
    padding: 10px;
    background-color: #f2f2f2;
    flex-grow: 1;
    flex-shrink: 0;
    text-transform: capitalize;
    border: 1px #f2f2f2 solid;
    border-radius: 10px 0px 0px 10px;
}

.product_text_details .details_container .details_card p.detail_content{
    width: 50%;
    font-size: 1.3rem;
    color: #0a111f;
    font-weight: 400;
    padding: 10px;
    flex-grow: 1;
    text-transform: capitalize;

    flex-shrink: 0;
    border: 1px #f2f2f2 solid;
    border-radius: 0px 10px 10px 0px;

}




/* reviews_section */
.reviews_section{
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.reviews_section h5.reviews_title{
    text-transform: capitalize;
    font-size: 2rem;
    color: #0a111f;
    font-weight: 500;

}

.reviews_section .reviews_container{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

/* review_card */
.review_card {
    display: flex;
    flex-direction: column;
    justify-content: center;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.03);
    background-color: #f2f2f2;
    transition: 0.2s ease;
    padding: 10px 20px;
    border-radius: 20px;
    gap: 5px;
}

.review_card .name_and_check{
    display: flex;
    justify-content: space-between;
    align-items: center;    
    gap: 80px;
}

.review_card .name_and_check i{
    color: #088178;
    align-self: center;
    font-size: 2rem;
    display: flex;
    cursor: help;
    
}

.review_card h6.reviewer_name{
    text-transform: capitalize;
    font-size: 1.75rem;
    color: #0a111f;
    font-weight: 500;
}

.review_card p.review_date{
    font-size: 1rem;
    text-transform: capitalize;
    color: #606063;
}

.review_card .review_stars i{
    color: #fca311;
    font-size: 1rem;

}





.review_card  p.review_content{
    max-width: 400px;
    font-size: 1.25rem;
    line-height: 1.4;
    height: calc(4.2 * 1em);
    color: #0a111f;
    font-weight: 400;
    display: -webkit-box;
    -webkit-line-clamp: 3; /* Specify the maximum number of lines */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    
}


.emptyView_reviews{
    margin: 20px 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
    justify-content: center;
    align-items: center;
}

.emptyView_reviews i{
    font-size: 4rem;
    color: #606063;
}

.emptyView_reviews span{
    font-size: 1.5rem;
    color: #606063;
}

.ProductPgae_featuredSection_title{
    text-transform: capitalize;
    font-size: 2.5rem;
    text-align: center;
}


@media (max-width:850px) {
    .main_details_container{
        flex-direction: column;
    
    }

    .main_details_container .product_images{
        width: 90%;
        align-self: center;
        
    }

    .product_text_details{
        
        padding: 20px 0px;
        gap: 10px;
    }

    .reviews_section .reviews_container{
        display: flex;
        flex-direction: column;
        gap: 15px;
    }

    .review_card {
        width: 100%;
    }

    .review_card  p.review_content{
        width: 100%;
        
    }
}