﻿/* CSS Variables */
:root {
    --font-size-heading: 24px;
    --font-size-subheading: 16px;
    --font-size-btn: 14px;
    --secondary-border: solid 2px var(--secondary);
    --container-max-width: 1400px;
}

/* Extra small devices (phones, <=600px) */
@media (max-width: 600px) {
    .mobile-none {
        display: none;
    }

    .desktop-none {
        display: block;
    }

    .navbar-brand img {
        width: 44px;
    }

    .menu {
        margin: 0 16px;
        padding: 12px 0;
    }

    .navbar-light .navbar-toggler {
        border: none;
    }

    .navbar .shopCartBtn .btn,
    .navbar .btn {
        width: 32px;
        height: 32px;
        display: flex;
        justify-content: center;
        align-items: center;
        border: var(--secondary-border);
    }

        .navbar .btn i {
            font-size: 16px;
        }

    .banner-one {
        height: auto !important;
        min-height: auto !important;
    }

    .banner-two {
        min-height: 120px !important;
        max-height: 120px !important;
    }

    .mycard {
        width: 200px !important;
    }

    .mobile-bottom-nav {
        display: block !important;
    }

    .filter-mobile {
        display: -webkit-box !important;
    }

    .filter-desktop, .sort-desktop, .desktop, .desktop-inline, .desktop-flex {
        display: none !important;
    }

    .mobile {
        display: block !important;
    }

    .banner-desktop {
        margin-top: 48px;
    }

        .banner-desktop .card-img-overlay,
        .row-banner .right-overlay,
        .row-banner .left-overlay {
            margin-right: 0;
            top: 8%;
            text-align: center;
            padding: 0 5% !important;
        }

        .banner-desktop h1,
        .row-banner .h2,
        .row-banner p {
            font-size: var(--font-size-heading);
        }

        .banner-desktop p {
            font-size: var(--font-size-subheading);
        }

        .banner-desktop a,
        .row-banner .btn {
            font-size: var(--font-size-btn);
        }

    .row-banner {
        margin: 64px 0;
    }

        .row-banner .right-overlay,
        .row-banner .left-overlay {
            top: 5%;
        }

    .section-header {
        font-size: var(--font-size-subheading);
    }

        .section-header::after {
            width: 35%;
        }

    .categories .section-header {
        margin-top: 32px;
    }

    .categories a {
        font-size: 12px;
        text-align: justify !important;
    }

    .navbar-scrolled .menu {
        margin: 0;
    }

    .menu-fa {
        display: block !important;
    }

    .blog-img {
        padding: 0;
    }

    .mobile-event-none {
        pointer-events: none !important;
    }

    .card-header h5,
    .mobile-bottom-nav a {
        font-size: medium !important;
    }

    .cart-img {
        max-width: 100%;
        transition: none !important;
    }

        .cart-img:hover {
            transform: none !important;
        }

    product-index-col {
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .product-card {
        width: 100% !important;
    }

    .service-info {
        margin-bottom: 64px;
    }

        .service-info img {
            width: 56px;
            margin-left: 0;
            margin-bottom: 8px;
        }

    .blog {
        margin-bottom: 64px;
    }

        .blog p {
            font-size: 16px;
            margin-bottom: 24px;
        }

    .offer-products-container, .new-products-container {
        padding-left: 0;
    }

    .offer-products {
        padding: 24px 16px;
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
        margin-top: 64px;
    }

        .offer-products .product-list, .new-products .product-list {
            padding-left: 0;
        }

        .offer-products .h4 {
            font-size: 16px;
        }

    .btn-show-all {
        font-size: 14px;
    }

    .new-products {
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
        border-left: 0;
    }

    .top-sell-products-container {
        padding-left: var(--bs-gutter-x, .75rem);
        padding-right: var(--bs-gutter-x, .75rem);
        margin-left: auto;
        margin-right: auto;
    }

    .slider-nav {
        display: flex !important;
        margin: auto;
        justify-content: center;
        margin-top: 16px;
    }

        .slider-nav svg {
            width: 40px;
            margin-right: 8px;
            margin-left: 8px;
            border-radius: 50%;
            border: 1px solid var(--danger);
            padding: 8px;
        }

    .top-sell-products {
        margin-bottom: 64px;
        margin-top: 64px;
    }

    .p-sm-0 {
        padding: 0;
    }

    footer {
        padding: 16px 0;
        text-align: justify;
    }

        footer .logo {
            width: 64px;
            margin-bottom: 16px !important;
        }

        footer .h4 {
            font-size: 16px;
            margin-bottom: 16px !important;
        }

        footer .h6 {
            font-size: 16px;
        }

    #product-list .product-index-col {
        padding-left: 8px;
        padding-right: 8px;
    }

    .all-products {
        margin-top: 120px;
        margin-bottom: 120px;
    }

    .filter-mobile .btn, .filter-mobile .btn:active, .filter-mobile .btn:hover, .filter-mobile .btn:focus {
        border-radius: 8px;
        background: transparent;
        border: 2px solid;
        border-color: var(--tertiary);
        padding: 4px 32px;
        margin-top: 24px;
        font-weight: 600;
        font-size: 14px;
    }

    .product-filter {
        padding-left: 4px;
        text-align: justify;
    }

    .all-products .section-header::after {
        width: 55%;
    }
    .tag-category-section .card-img-overlay .bg-transparent {
        margin-left: 2px;
        font-size: 14px;
    }
    .tag-category-section .card-img-overlay {
        right: 4px;
    }
    .offer-card .offer-description {
        font-size: 24px;
    }
    .offer-card .offer-title {
        font-size: 16px;
    }
    .offer-card .offer-desc {
        min-height: 148px;
    }
    .offer-section {
        margin-top: 64px;
    }
    .brand-section {
        margin-top: 64px;
        margin-bottom: 64px;
    }
    .offer-section {
        margin-top: 64px;
        margin-bottom: 64px;
    }
    .contactUs .breadcrumb {
        margin-bottom: 32px;
    }
    .contactUs h1 {
        font-size: 24px; 
    }
    .contactUs .contactUs-form {
        margin-top: 32px; 
    }
    .contactUs .contactUs-form .card .card-body {
        padding: 24px 8px;
    }
        .contactUs .contactUs-form .contact-us-map #map {
            height: 250px;
            margin-top: 32px;
        } 
    .address-section {
        display: flex;
        justify-content: start;
        padding-left: 8px;
        padding-right: 8px;
        align-content: center;
    }
    .address-section svg{
        width: 24px;
        height: 24px;
    }
    .contactUs {
        margin-bottom: 64px;
    }
    .order-m-1 {
        order: 1 !important;
    }
    .order-m-0 {
        order: 0 !important;
    }
    .about-us img {
        width: 100%;
        height: 200px; 
        margin-bottom: 24px;
    }
    .comment-item .card-body {
        padding:4px 12px;
    } 
    .comment-item .star-rating svg{
        width: 16px;
        height: 16px;
    }
    .comment-item h6{
        margin-bottom: 16px;
    }
    .comment-item .rate-text {
        display: none;
    }
    .comment-item {
        min-width: 264px;
        margin-left: 8px;
        height: 100%;
    }
    .comment-item .comment-item-rate {
        float: left;
        margin-top: 8px;
    }
    .comment-list {
        display: flex;
        overflow-x: scroll;
        scrollbar-width: none; /* Firefox */
        -ms-overflow-style: none; /* IE 10+ */
    }
    .comment-list::-webkit-scrollbar {
            display: none; /* Chrome, Safari */
        }

    .comment-summary .card-body {
        padding: 16px;
    }
    .comment-summary .star-rating svg {
        width: 16px;
        height: 16px;
    }
    .category-short-text, .category-text { 
        padding: 24px 16px; 
    }
    .category-short-text .qoute {
        display: none;
    }
        .category-text img {
            max-height: 140px;
            object-fit: cover;
        }
    .category-info .accordion-item { 
        padding: 24px 16px;
    }
    .category-info .accordion-item:has(.show) button { 
        font-size: 16px; 
    }
}

/* Devices >=600px and <992px */
@media (min-width: 600px) and (max-width: 991.98px) {
    .filter-mobile {
        display: -webkit-box !important;
    }

    .filter-desktop, .sort-desktop {
        display: none !important;
    }

    .desktop, .desktop-flex {
        display: none !important;
    }

    .desktop-inline {
        display: none !important;
    }

    .mobile {
        display: block !important;
    }
    .mobile-none {
        display: none;
    }
    .desktop-none {
        display: block;
    }

    .banner-desktop {
        margin-top: 136px;
    }

        .banner-desktop .card-img-overlay,
        .row-banner .right-overlay,
        .row-banner .left-overlay {
            margin-right: 0;
            top: 8%;
            text-align: center;
            padding: 0 5% !important;
        }

        .banner-desktop h1,
        .row-banner h2,
        .row-banner p {
            font-size: var(--font-size-heading);
        }

        .banner-desktop p {
            font-size: var(--font-size-subheading);
        }

        .banner-desktop a,
        .row-banner .btn {
            font-size: var(--font-size-btn);
        }

    .row-banner {
        margin: 64px 0;
    }

        .row-banner .right-overlay,
        .row-banner .left-overlay {
            top: 5%;
        }

    .navbar-scrolled .menu {
        margin: 0;
    }

    .menu-fa {
        display: block !important;
    }

    .blog-img {
        padding: 0;
    }

    .cart-img {
        transition: none !important;
    }

        .cart-img:hover {
            transform: none !important;
        }

    .product-card {
        width: 100% !important;
    }
    .address-section {
        display: flex;
        justify-content: start;
        padding-left: 8px;
        padding-right: 8px;
        align-content: center;
        margin-bottom: 15px;
    }
    .order-m-1 {
        order: 1 !important;
    }

    .order-m-0 {
        order: 0 !important;
    }
    .about-us img {
        width: 100%;
        height: 300px;
        margin-bottom: 24px;
    }
}

/* Devices >=992px */
@media (min-width: 992px) {
    .filter-mobile {
        display: none !important;
    }

    .filter-desktop {
        display: block !important;
    }

    .sort-desktop {
        display: flex !important;
    }

    .container-fluid {
        max-width: var(--container-max-width);
    }

    .blog-card, .overlay {
        transition: 0.3s all;
    }

    .overlay {
        opacity: 0;
    }

        .overlay .btn {
            background-color: black;
            color: white;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            z-index: 2;
            width: 80%;
        }

    .card-blur:hover .overlay {
        opacity: 1;
    }

    .card-blur:hover .blog-card {
        -webkit-filter: blur(2px);
        filter: blur(2px);
    }
    .modal-dialog { max-width: 750px; }
}

/* iPad Pro Specific */
@media only screen and (width: 1024px) {
    .srch-card {
        min-height: 100px !important;
    }
}

@media only screen and (min-width: 1024px) and (max-width: 1299px) {

    .container-fluid {
        padding-left: 3% !important;
        padding-right: 3% !important;
    }

    .banner-desktop .card-img-overlay {
        margin-right: 2%;
        top: 16%;
    }

    .banner-desktop h1 {
        font-size: 48px;
    }

    .banner-desktop p {
        font-size: 18px;
    }

    .offer-products .h4, #product-list .h4 {
        font-size: 24px;
    }

    .offer-products .btn-show-all {
        font-size: 14px !important;
    }

    .card-body {
        padding: .5rem;
    }

    .blog p {
        font-size: 14px;
        margin-bottom: 24px;
        overflow: hidden;
        white-space: nowrap;
    }

    .blog small {
        font-size: 11px;
        margin-top: 3%;
    }
    .blog .btn {
        font-size: 12px;
    }
     

    .row-banner p, .row-banner h2 {
        font-size: 32px;
    }
    .row-banner .btn {
        font-size: 16px;
    }
    .row-banner .right-overlay {
        margin-right: 2%;
        margin-top: 4%; 
    }
    .row-banner .left-overlay {
        margin-right: 44%;
        margin-top: 4%; 
    }
}

@media only screen and (min-width: 1300px) and (max-width: 1499px) {

    .container-fluid {
        padding-left: 100px !important;
        padding-right: 100px !important;
    }
}
/* Tablets only (600px – 1023px) */
@media (min-width: 600px) and (max-width: 1023px) {
    .mobile {
        display: none !important;
    }

    .desktop {
        display: block !important;
    }
    .banner-desktop .card-img-overlay {
        margin-right: 2%;
        top: 16%;
    }
    .banner-desktop h1 {
        font-size: 32px;
    }

    .banner-desktop p {
        font-size: 16px;
    }

    .offer-products .h4, #product-list .h4 {
        font-size: 24px;
    }

    .offer-products .btn-show-all {
        font-size: 14px !important;
    }
    .banner-desktop {
        margin-top: 48px;
    }
    .banner-desktop .card-img-overlay {
        margin-right: 0;
        top: 14%;
        text-align: right;
    }
    .row-banner .right-overlay {
        top: -10%;
        text-align: right; 
    }
    .row-banner .left-overlay {
        top: 0;
        right: 30%;
    }
    .row-banner .btn {
        margin-top: 8px;
    }
}
@media (max-width: 1023px) {
    .navbar-collapse {
        padding: 16px;
        padding-bottom: 24px;
        position: absolute;
        top: 100%;
        left: -24px !important;
        right: -24px !important;
        background-color: var(--gray-10) !important;
        z-index: 1050;
        max-height: unset !important;
        overflow-y: hidden !important;
        border-bottom-left-radius: 16px;
        border-bottom-right-radius: 16px;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    }
}