/*
Custom Css
*/
:root {
    --primary-color: #003766;
    --secondary-color: #ffc221;
    --white-color: #fff;
    --dark-color: #000;
}

* {
    box-sizing: border-box;
}

/* جلوگیری از اسکرول افقی و مدیریت محتوای عریض */
html, body {
    overflow-x: hidden;
    width: 100%;
    max-width: 100%;
}

/* مدیریت تصاویر بزرگ */
img {
    max-width: 100%;
    height: auto;
}

/* مدیریت متن‌های طولانی که نمی‌شکنند */
p, h1, h2, h3, h4, h5, h6, span, a, div {
    word-wrap: break-word;
    overflow-wrap: break-word;
    hyphens: auto;
}

/* تنظیمات خاص برای موبایل */
@media (max-width: 767px) {
    /* کاهش اندازه تصاویر در موبایل */
    img {
        max-width: 95%;
        margin: 0 auto;
    }

    /* کنترل جداول و عناصر عریض */
    table, pre, code, iframe {
        max-width: 100%;
        display: block;
    }

    /* اطمینان از اینکه همه عناصر در محدوده صفحه قرار می‌گیرند */
    * {
        max-width: 100vw;
        box-sizing: border-box;
    }

    /* کنترل عناصر flex برای جلوگیری از سرریز */
    .flex-container, .row, [class*="col-"] {
        width: 100%;
        max-width: 100%;
    }
}

/* تنظیمات برای محتوای پیش‌فرض غیرقابل شکست */
pre, code {
    white-space: pre-wrap;
}

body {
    font-family: "Vazirmatn";
    margin: 0;
    font-size: 16px;
    overflow-x: hidden;
    max-width: 100vw;
}

a, button {
    line-height: inherit;
    cursor: pointer;
    text-decoration: none;
    color: inherit;
    font-family: 'Vazirmatn'
}

.mr-auto {
    margin-right: auto !important;
}

.ml-auto {
    margin-left: auto !important;
}

.w-20 {
    width: 20% !important;
}

.bg-f8 {
    background-color: #F8F8F8;
}
/* start Header top */
.header-top {
    background-color: var(--primary-color);
    width: 100%;
}

.container {
    max-width: 1200px;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}

.header-top-bar-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 10px;
    padding-bottom: 10px;
}

.header-top-bar-list-left {
    display: flex;
}

.header-top-bar-wrap__info {
    display: flex;
    align-items: center;
}



.header-top-bar-wrap__info-list {
    margin: auto;
    padding: 0;
    list-style-type: none;
    display: flex;
}


    .header-top-bar-wrap__info-list svg {
        width: 15px;
        height: auto;
        margin: auto 15px auto 15px;
        fill: var(--secondary-color);
    }

        .header-top-bar-wrap__info-list svg a:hover {
            width: 15px;
            height: auto;
            margin: auto 10px auto 10px;
            fill: var(--secondary-color);
        }

    .header-top-bar-wrap__info-list li {
        display: flex;
        align-items: center;
    }

    .header-top-bar-wrap__info-list a {
        color: var(--white-color); /* رنگ متن */
        text-decoration: none;
        font-size: 13px;
        font-weight: 500;
        white-space: normal;
    }

        .header-top-bar-wrap__info-list a:hover {
            color: var(--secondary-color); /* رنگ متن */
        }

/* تنظیم ایمیل و تلفن و عضویت به سمت چپ */
.header-top-bar-wrap__info-list {
    order: -1;
    margin-right: 0;
    margin-left: auto;
}

#header-top-bar-wrap__info-listresocial svg {
    width: 12px;
    height: auto;
    fill: var(--white-color);
    margin: 0 0.2rem;
}

#header-top-bar-wrap__info-listre {
    margin-left: 0.5rem;
}
/*  end Header top */
.info-text {
    margin-left: 5px;
}

/* خط جداکننده */
.divider {
    border-left: 1px solid var(--white-color);
    height: 15px;
    /* فاصله از بالا، راست، پایین و چپ را تنظیم کن */
    margin: auto 6px auto 12px;
}

/*start logo*/

.logo-img {
    max-width: 170px;
    padding: 0.5rem 0;
}

.header-main {
    padding: 16px 32px;
    box-shadow: 0 10px 26px #000000;
    box-shadow: 0 10px 26px rgba(0, 0, 0, 0.05);
}


#particles-js {
    position: absolute;
    width: 100% !important;
    height: 100% !important;
}


/*end logo*/
/*/////////////////////////////////////////////////////*/
/*start menu*/
.header-main-wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
}

span::before {
    content: "";
    position: absolute;
    left: auto;
    right: 0;
    bottom: 0;
    height: 2px;
    width: 0;
    background: currentColor;
    transition: all 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.hamburger-menu-container {
    display: none;
}

.home-container {
    display: none;
}

.user-container {
    display: none;
}
/*end menu*/
/*start  menu  */
.homepage {
    color: #0071dc;
    display: block;
    padding: 10px 15px;
    text-decoration: none;
}

.shop-menu {
    display: block;
    padding: 10px 15px;
    text-decoration: none;
}

.active::after {
    display: block;
    content: "";
    width: 100%;
    height: 2px;
    background-color: #0071dc;
}

.main-menu > ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
}

.main-menu ul li {
    position: relative;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.6;
}


    .main-menu ul li.dropdown:hover > .dropdown-menu {
        display: block;
        animation: dropdownAnimation 0.3s ease-in-out forwards;
    }

.dropdown {
    padding-left: 20px;
    z-index: 10;
    position: relative;
}

    .dropdown::after {
        content: "";
        position: absolute;
        top: 40%;
        right: 85%;
        width: 0;
        height: 0;
        transform: rotate(179deg);
        border-right: 5px solid transparent;
        border-left: 5px solid transparent;
        border-bottom: 5px solid #747272;
        filter: drop-shadow(0 0 30px rgba(0, 0, 0, 0.12));
    }

.dropdown-noafter::after {
    display: none;
}

.dropdown-menu {
    display: none;
    position: absolute;
    background-color: var(--white-color);
    box-shadow: 0 8px 16px 0 #000000;
    box-shadow: 0 8px 16px 0 rgba(0,0,0,0.2);
    z-index: 10;
    transform-origin: top;
    transform: scaleY(0);
    visibility: hidden;
    padding-top: 15px;
    border-radius: 10px;
    padding-right: 0.5rem;
}

.dropdown:hover > .dropdown-menu {
    visibility: visible;
    transform: scaleY(1);
}

.dropdown-menu.open {
    display: block;
    transform: scaleY(1);
    visibility: visible;
}



.dropdown-menu li {
    display: block;
}

.mega-menu {
    right: 0;
    width: 700%;
    padding: 30px;
    transform-origin: top;
    transform: scaleY(0);
    transition: opacity 0.3s ease-in-out, visibility 0.3s ease-in-out; /* انیمیشن transition */
}

.mega-menu-link {
    display: block;
    padding: 10px 15px;
    text-decoration: none;
    color: var(--dark-color);
    white-space: nowrap;
}

.mega-menu .row {
    display: flex;
    flex-direction: row;
    padding: 0;
    width: 100%;
    gap: 150px; /* افزایش فاصله بین ستون‌ها */
}

.mega-menu .column {
    display: flex;
    flex-direction: column;
    font-size: 1rem;
}



    .mega-menu .column ul li a {
        display: inline-block;
        padding: 5px 0;
        text-wrap: nowrap;
    }

.mega-menu-img {
    position: relative;
    width: 100%;
}

    .mega-menu-img img {
        width: 100%;
    }

.mega-menu-img-tex {
    position: absolute;
    top: 25px;
    right: 15px;
}

.mega-menu-img-btn {
    position: absolute;
    top: 70px;
    right: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    color: white;
}

@keyframes dropdownAnimation {
    0% {
        transform: scaleY(0);
    }

    100% {
        transform: scaleY(1);
    }
}
/*end menu*/

/* start search */
.search-container {
    display: flex;
    justify-content: center;
    width: 100%;
}

.search-input {
    color: #252525;
    outline: none;
    background: #f2f2f2;
    border: 1px solid #f2f2f2;
    font-weight: 500;
    height: 60px;
    padding: 3px 20px;
    margin-right: 25px;
    font-size: 14px;
    width: 360px;
    border-radius: 5px;
    transition: all 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    font-family: Vazirmatn;
}

.search-button {
    margin-right: 0;
    width: 60px;
    height: 60px;
    border: 0;
    background: #f2f2f2;
    border: 1px solid #f2f2f2;
    color: #0071dc;
    border-top-left-radius: 5px;
    border-bottom-left-radius: 5px;
    font-size: 20px;
}



.searchsvg {
    width: 22px;
    height: auto;
}


.mobile-search-btn-icon {
    display: none;
}


#searchToggleDiv {
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
    height: 0;
    overflow: hidden;
}

.visible {
    opacity: 1 !important;
    height: auto; /* Adjust height as needed */
    overflow: visible;
}

/*end search */
/* start slider*/
.slider-primary {
    background-color: var(--primary-color);
    width: 100%;
    height: auto;
    display: inline-block;
}

.slider-sub {
    margin: 50px auto;
    width: 100%;
    display: flex;
}

.slider-caption {
    margin-top: 1rem;
    position: relative;
    width: 50%;
}

.slider-caption__sub-title {
    font-size: 15px;
    text-transform: uppercase;
    line-height: 1.4;
    letter-spacing: 2px;
    color: var(--white-color);
}

.slider-caption__main-title {
    font-size: 40px;
    line-height: 1.5;
    margin-top: 20px;
    color: var(--white-color);
}

mark {
    padding: 0.1875em;
    background-color: var(--bs-highlight-bg);
    color: #0071dc;
    position: relative;
}

.slider-caption__main-title-mark::before {
    content: "";
    position: absolute;
    width: 91px;
    height: 12px;
    bottom: 0;
    left: 40%;
    transform: translate(-45px);
    background-color: #ffc221;
    mask-repeat: no-repeat;
    z-index: 2;
    mask-size: contain;
    mask-image: url(/assets/template/tajhizafagh/img/headline-curve.svg);
}

.img-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    width: 100%;
    position: relative;
    margin-right: 50px;
}

.child {
    width: 46%;
    border: 1px solid #b1b1b1;
    border: 1px solid rgba(177, 177, 177, 0.5);
    border-radius: 25px;
    position: relative;
    margin-bottom: 15px;
    z-index: 2;
    cursor: pointer;
    margin-left: 2%;
}

.str-img {
    width: 100%;
    height: auto;
    border-radius: 25px;
    padding: 5px;
    position: relative;
}

.btn-banner {
    position: absolute;
    left: 10px;
    background-color: #003766;
    background-color: rgba(0, 55, 102, 0.8);
    padding: 0 10px 0 5px;
    color: var(--white-color);
    border-radius: 15px;
    align-items: center;
    transition-duration: .2s;
    right: 10px;
    bottom: 10px;
    justify-content: center;
    text-align: center;
    padding: 0.2rem;
    font-weight: 600;
}

/*img {
    max-width: 100%;
    height: auto;
    }*/

a,
img {
    transition: all 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
}

img,
svg {
    vertical-align: middle;
}

/* end slider*/

/* star first baner*/
.btn-first-banner {
    padding: 10px 20px;
    color: white !important;
    transition: all 0.3s ease-in;
    margin-bottom: 1rem;
    font-size: 13px;
}

.outlined-first-banner {
    background-color: #0071dc;
    color: var(--dark-color);
}

.rounded-first-banner {
    border-radius: 10px;
}

.btn-first-banner:hover {
    background-color: var(--secondary-color);
}

.first-banner {
    display: flex;
    background-color: #eef0f4;
    margin-top: 0;
    height: auto;
    padding: 5px 15px;
    border-radius: 25px;
    width: 48%;
}

.first-banner-text {
}

.first-banner-img {
    margin: auto;
    /*max-width: 150px;*/
}

    .first-banner-img img {
        max-width: 100%;
        height: auto;
        border-radius: 0.5rem;
        box-shadow: 0 0 5px 3px #b1b1b1;
        opacity: 0.9;
    }

h3.banner-caption-02__title {
    font-size: 1rem;
    padding-left: 1rem;
    font-weight: 600;
    min-width: 160px;
}
/* end first baner*/
/*star- main-category-expertise*/
.main-category-expertise {
    margin-top: 3rem;
    display: flex;
    justify-content: center;
}

.section-title__title {
    font-size: 28px;
    line-height: 1.5;
}

.show-expertise {
    margin-top: 20px;
}

.btn-expertise {
    font-family: "Vazirmatn";
    font-size: 15px;
    font-weight: 400;
    background-color: transparent;
    padding: 10px 20px;
    border: 0;
    box-shadow: none;
    transition: all 0.3s ease;
    margin-left: 0;
    text-decoration: none;
    display: flex;
    justify-content: center;
    align-items: center;
}

.btn-light {
    background-color: #f5f5f5;
    border-color: #f5f5f5;
    color: #0071dc;
}

.btn-hover-primary:hover {
    background-color: #0071dc;
    border-color: #0071dc;
    color: #ffffff;
}



.hexagon {
    position: relative;
    padding: 2rem;
    background-image: url("/assets/template/tajhizafagh/img/hexagon-background-2.png"); /* تصویر با شکل ده‌ضلعی */
    background-size: 100% 100%;
    background-repeat: no-repeat;
    margin: 0.5rem auto;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    text-align: center;
    width: 80%;
    text-decoration: none;
}

.hexagon-row {
    display: flex;
    width: 300px; /* قابل تنظیم است */
    height: 231px; /* قابل تنظیم است */
}

.hexagon-clum {
    display: flex;
    justify-content: center;
}

.hexagon-title {
    font-size: 1rem;
    color: #FFF;
    font-weight: 200;
}

.hexagon img {
    width: 56px;
    filter: invert(1);
}

/*end-main-category-expertise*/

/* start-down baner */
.banners-container {
    display: flex;
    flex-direction: row;
    margin-top: 1rem;
    justify-content: space-between;
    position: relative;
    z-index: 9;
}

.second-banner-text1 {
    font-size: 14px;
    color: #0071dc;
}

.second-banner-text2 {
    font-size: 17px;
}

.second-banner {
    position: relative;
    margin: 0 auto;
    display: flex;
    background-color: #f4f9ff;
    border-radius: 20px;
    width: 49%;
    height: auto;
}

.second-banner-text {
    padding-right: 25px;
    padding-top: 15px;
}

.second-banner-btn {
    padding-top: 50px;
    padding-right: 80px;
}

.btn-second-banner {
    font-family: "Vazirmatn";
    font-size: 15px;
    font-weight: 400;
    overflow: hidden;
    background-color: transparent;
    height: 52px;
    line-height: 52px;
    padding: 10px 36px;
    border: 0;
    box-shadow: none;
    transition: all 0.3s ease 0;
    cursor: pointer;
    white-space: nowrap;
    margin-left: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.rounded {
    border-radius: 10px;
}

.outlined {
    background-color: var(--secondary-color);
    color: var(--dark-color);
}

.btn-second-banner:hover {
    background-color: #0071dc;
}

.circle-second-banner {
    width: 64px;
    height: 64px;
    line-height: 64px;
    text-align: center;
    font-size: 24px;
    color: #0a0000;
    background-color: #0071dc;
    border-radius: 50%;
    position: absolute;
    top: -32px;
    right: -38px;
    z-index: 1;
}

/* end-down baner */

/*start footer*/
footer {
    color: var(--dark-color);
    padding: 20px 0;
}

.footer-content {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    max-width: 1200px;
    margin: 0 auto;
}

.columnfooter {
    flex: 1;
    padding: 0 20px;
}

    .columnfooter h3 {
        color: var(--dark-color);
    }

    .columnfooter ul {
        list-style: none;
        padding: 0;
    }

        .columnfooter ul li {
            margin-bottom: 10px;
        }

            .columnfooter ul li a {
                color: var(--dark-color);
                text-decoration: none;
            }

                .columnfooter ul li a:hover {
                    text-decoration: underline;
                }


.routers-icon img {
    max-width: 50px;
}
/*end footer*/
.hamburger-menu {
    display: none;
}


/*

    sidenav
*/


.sidenav {
    display: none;
}

/* end of sidenav*/


/*
    fixed support icons

*/
.whatsapp-support {
    position: fixed;
    bottom: 80px;
    left: 10px;
    background-color: green;
    color: white;
    z-index: 99;
    border-radius: 5px;
    width: 40px;
    height: 40px;
    border-radius: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.whatsapp-support-icon {
    width: 20px;
}

    .whatsapp-support-icon img {
        filter: invert(1);
    }

.whatsapp-support-contacts {
    background-color: #25D366;
    position: absolute;
    left: 100%;
    min-width: 150px;
    margin-left: 0.5rem;
    border-radius: 5px;
    padding: 0.5rem;
    font-size: 0.9rem;
    display: none;
}

    .whatsapp-support-contacts a {
        text-decoration: none;
        color: black;
        font-weight: 500;
        width: 100%;
    }

        .whatsapp-support-contacts a svg {
            fill: black;
            max-width: 16px;
        }

.whatsapp-support-contact-1 {
    margin-bottom: 0.5rem;
}


.phone-support {
    position: fixed;
    bottom: 30px;
    left: 10px;
    background-color: #1c7acb;
    color: white;
    z-index: 99;
    border-radius: 5px;
    width: 40px;
    height: 40px;
    border-radius: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.phone-support-icon {
    width: 20px;
}

    .phone-support-icon img {
        filter: invert(1);
    }

.phone-support-contacts {
    background-color: #1c7acb;
    position: absolute;
    left: 100%;
    min-width: 150px;
    margin-left: 0.5rem;
    border-radius: 5px;
    padding: 0.5rem;
    font-size: 0.9rem;
    display: none;
}

    .phone-support-contacts a {
        text-decoration: none;
        color: white;
        font-weight: 500;
        width: 100%;
    }

        .phone-support-contacts a svg {
            fill: white;
            max-width: 16px;
        }

.phone-support-contact-1 {
    margin-bottom: 0.5rem;
}



.goTopBtn {
    position: fixed;
    bottom: 30px;
    right: 10px;
    background-color: black;
    color: white;
    z-index: 99;
    border-radius: 5px;
    width: 40px;
    height: 40px;
    border-radius: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
    opacity: 0.5;
}

    .goTopBtn:hover {
        opacity: 0.7;
    }

.goTopBtn-icon {
    width: 20px;
}

    .goTopBtn-icon img {
        filter: invert(1);
    }
/*
    end of support icons

*/


/*

    Service page

*/

.breadcrumb {
    --bs-breadcrumb-padding-x: 0;
    --bs-breadcrumb-padding-y: 0;
    --bs-breadcrumb-margin-bottom: 1rem;
    --bs-breadcrumb-divider-color: #6c757d;
    --bs-breadcrumb-item-padding-x: 0.5rem;
    --bs-breadcrumb-item-active-color: #6c757d;
    display: flex;
    flex-wrap: wrap;
    padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);
    margin-bottom: var(--bs-breadcrumb-margin-bottom);
    font-size: 0.9rem;
    list-style: none;
    background-color: var(--bs-breadcrumb-bg);
    border-radius: var(--bs-breadcrumb-border-radius);
}

.page-breadcrumb .breadcrumb {
    margin-bottom: 0;
    padding-top: 16px;
    padding-bottom: 16px;
}

    .page-breadcrumb .breadcrumb .breadcrumb-item {
        font-size: 14px;
        font-weight: 400;
        line-height: 1.67;
        color: #333;
    }

        .page-breadcrumb .breadcrumb .breadcrumb-item a {
            position: relative;
        }

            .page-breadcrumb .breadcrumb .breadcrumb-item a::before {
                position: absolute;
                content: "";
                width: 0;
                height: 1px;
                background-color: #252525;
                bottom: 0;
                left: 0;
                transition: all 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
            }

        .page-breadcrumb .breadcrumb .breadcrumb-item.active {
            color: #252525;
        }

.breadcrumb-item + .breadcrumb-item:before {
    float: left;
    padding-right: var(--bs-breadcrumb-item-padding-x);
    color: var(--bs-breadcrumb-divider-color);
    content: var(--bs-breadcrumb-divider, "/");
}

.breadcrumb-item + .breadcrumb-item:before {
    float: right;
    padding-left: var(--bs-breadcrumb-item-padding-x);
    color: var(--bs-breadcrumb-divider-color);
    content: var(--bs-breadcrumb-divider, "/");
}

.page-banner__caption {
    padding-top: 30px;
    /*padding-bottom: 72px;*/
    padding-bottom: 0;
    text-align: center;
}

.page-banner__main-title {
    font-size: 40px;
    font-weight: 500;
    line-height: 1.3;
    margin-top: -8px;
}


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

.services-row-column {
    flex: 0 0 auto;
    width: 24%;
}

.categories-item__link {
    display: flex;
    align-items: center;
    background-color: #f1f3f8;
    border-radius: 5px;
    padding: 10px 30px;
    height: 100%;
    min-height: 70px;
    transition: all 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
}

.categories-item__icon {
    flex-shrink: 0;
    max-width: 60px;
    width: 100%;
}

    .categories-item__icon svg .text-lighten-fill-color {
        fill: #d4e1f4;
        transition: all 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    }

.categories-item__info {
    flex-grow: 1;
}

.categories-item__name {
    font-size: 16px;
    line-height: 1.8;
    font-weight: 400;
    margin: 0;
    transition: all 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
    position: relative;
    display: inline-block;
    white-space: nowrap;
}

    .categories-item__name::before {
        content: "\f104";
        position: absolute;
        left: -15px;
        top: 50%;
        transform: translateY(-50%) scale(0);
        color: #FFFFFF;
        font-size: 16px;
        font-family: "Font Awesome 5 Free";
        font-weight: 600;
        transition: all 0.25s cubic-bezier(0.645, 0.045, 0.355, 1);
        line-height: 1;
    }
/*
    end of service page styles
*/


/* modal styles */
.modal {
    display: none;
    position: fixed;
    z-index: 15;
    padding-top: 100px;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0,0,0,0.4);
}

.modal-content {
    position: relative;
    background-color: #fefefe;
    margin: auto;
    padding: 0;
    border: 1px solid #888;
    width: 80%;
    box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2), 0 6px 20px 0 rgba(0,0,0,0.19);
    animation-name: animatetop;
    animation-duration: 0.4s;
}

@keyframes animatetop {
    from {
        top: -300px;
        opacity: 0
    }

    to {
        top: 0;
        opacity: 1
    }
}

.close {
    color: white;
    float: right;
    font-size: 28px;
    font-weight: bold;
}

    .close:hover,
    .close:focus {
        color: #000;
        cursor: pointer;
    }

.modal-header, .modal-footer {
    padding: 2px 16px;
    background-color: #00213d;
    color: white;
}

.modal-body {
    padding: 2px 16px;
}
/* end of modal styles */

/*
    articles-row
*/

.articles-grid-row {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(218px, 1fr));
    gap: 20px;
    margin-bottom: 2rem;
}

.articles-header h3 {
    text-align: center;
    color: #333;
    font-size: 24px;
    padding-bottom: 10px;
    border-bottom: 2px solid #007BFF;
    margin-bottom: 20px;
}

.article-column {
    display: flex;
    flex-direction: column;
    border: 1px solid #ccc;
    border-radius: 8px;
    overflow: hidden;
    transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
}

    .article-column:hover {
        transform: translateY(-5px);
        box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    }

.article-box {
    padding: 15px;
}

.article-image img {
    width: 100%;
    height: 150px;
}

.article-title h4 {
    margin: 10px 0;
    color: #007BFF;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;

}

.article-link a {
    display: inline-block;
    color: #fff;
    background-color: #007BFF;
    padding: 5px 15px;
    border-radius: 5px;
    text-decoration: none;
    transition: background-color 0.3s;
    font-size: 12px;
}

    .article-link a:hover {
        background-color: #0056b3;
    }

.noarticle p {
    text-align: center;
    color: #666;
    font-style: italic;
}


.products-row {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(218px, 1fr));
    gap: 20px;
}

.products-header h3 {
    text-align: center;
    color: #333;
    font-size: 24px;
    padding-bottom: 10px;
    border-bottom: 2px solid #28a745;
    margin-bottom: 20px;
}

.product-column {
    display: flex;
    flex-direction: column;
    border: 1px solid #ccc;
    border-radius: 8px;
    overflow: hidden;
    transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
}

    .product-column:hover {
        transform: translateY(-5px);
        box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    }

.product-box {
    padding: 15px;
}

.product-image img {
    width: 100%;
    height: auto;
}

.product-title h4 {
    margin: 10px 0;
    color: #28a745;
}

.product-price {
    font-size: 18px;
    color: #555;
    margin-bottom: 10px;
}

.product-link a {
    display: inline-block;
    color: #fff;
    background-color: #28a745;
    padding: 5px 15px;
    border-radius: 5px;
    text-decoration: none;
    transition: background-color 0.3s;
    font-size: 12px;
}

    .product-link a:hover {
        background-color: #19692c;
    }

/* end of articles-row */

/*
    article page
*/


.article-row {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    margin: 2rem auto;
}

.article-title {
    display: block;
    align-items: center;
    justify-content: center;
    width: 90%;
}

    .article-title h1 {
        font-size: 18px;
        color: #333;
        margin: 0;
        padding-right: 10px; /* Space between icon and text */
        border-bottom: 2px solid #007BFF;
        position: relative;
        line-height: 1.4;
    }

    .article-title img {
        width: 50px; /* Adjust size as needed */
        height: 50px; /* Adjust size as needed */
        object-fit: cover; /* Ensures the image covers the area */
        margin-left: 10px;
    }

.article-body {
    flex: 1; /* Takes the remaining space */
    padding-top: 10px;
}

    .article-body p {
        font-size: 16px;
        line-height: 1.6;
        color: #666;
    }

    .article-body img {
        max-width: 100% !important;
    }

/*
    end of article page
*/


/*
    product page styles
*/

.breadcrumbs {
    padding: 20px 0;
    font-size: 16px;
    display: flex;
    align-items: center;
    gap: 10px;
}

    .breadcrumbs i {
        margin-right: 5px;
    }

.product-main {
    display: flex;
    flex-wrap: wrap;
    background: white;
    padding: 20px;
    border: 1px solid #e0e0e0;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    border-radius: 10px;
    margin-bottom: 20px;
}

.product-images {
    flex: 1 1 300px;
    padding-right: 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

    .product-images img {
        width: 100%;
        cursor: pointer;
    }

.product-details {
    flex: 2 1 600px;
    padding-right: 20px;
    border-right: 1px solid #e0e0e0;
}

    .product-details h1 {
        margin-bottom: 15px;
        font-size: 24px;
    }

    .product-details div,
    .product-details a {
        margin-bottom: 10px;
    }

.product-feature {
    font-size: 14px;
}

.product-price {
    font-weight: bold;
    font-size: 20px;
}

.price-strike {
    text-decoration: line-through;
    color: #999;
    margin-right: 5px;
}

.product-availability {
    font-size: 12px;
    background-color: #57d157;
    font-weight: 600;
    color: white;
    margin-top: 10px;
    display: inline-block;
    padding: 0.5rem;
    border-radius: 0.3rem;
    border-right: 2px solid green;
    border-bottom-right-radius: 0;
    border-top-right-radius: 0;
}

.add-to-cart {
    padding: 10px 15px;
    background-color: #007bff;
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-family: 'Vazirmatn'
}

.product-tab {
    background: white;
    padding: 20px;
    border: 1px solid #e0e0e0;
    border-radius: 10px;
    margin-top: 20px;
}

.tab-content {
    margin-top: 20px;
}

.similar-products {
    background: #f8f9fa;
    padding: 20px;
    margin-top: 20px;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 10px;
}

.product-box {
    border: 1px solid #e0e0e0;
    padding: 10px;
    text-align: center;
    border-radius: 10px;
}


.product-gallery-images {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

    .product-gallery-images img {
        width: 25%;
    }
/*
    end of product page styles
*/

/*
    Register page styles
*/

.reg-container {
    max-width: 600px;
    margin: auto;
    padding: 20px;
    font-family: 'Vazirmatn';
    background-color: #f8f9fa;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);
}

.reg-form-panel {
    background-color: #ffffff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.reg-logo {
    width: 100px; /* Adjust as needed */
    height: auto;
    margin-bottom: 20px;
}

.reg-form-title {
    margin-bottom: 20px;
    color: #333;
    font-size: 20px;
}

.reg-form {
    display: block;
    width: 100%;
}

.reg-input-group {
    margin-bottom: 15px;
}

    .reg-input-group label {
        display: block;
        margin-bottom: 5px;
    }

    .reg-input-group input[type="text"],
    .reg-input-group input[type="submit"] {
        width: 100%;
        padding: 8px;
        border: 1px solid #ccc;
        border-radius: 4px;
        font-family: 'Vazirmatn';
    }

    .reg-input-group input[type="submit"] {
        background-color: #007bff;
        color: white;
        cursor: pointer;
        font-family: 'Vazirmatn';
    }

.reg-login-option {
    margin-top: 20px;
    text-align: center;
}

    .reg-login-option a {
        color: #007bff;
        text-decoration: none;
    }

.reg-rules-text {
    text-align: center;
    font-size: 14px;
    margin-top: 10px;
}

.reg-register-redirect {
    text-align: center;
    margin-top: 10px;
}

.reg-btn-secondary {
    /*    background-color: #6c757d;
    border-color: #6c757d;*/
    color: #6c757d;
    font-size: 0.8rem;
}

/*
    end of register page styles
*/

/*
    login page styles
*/
.login-container {
    max-width: 600px;
    margin: auto;
    padding: 20px;
    font-family: 'Vazirmatn';
    background-color: #f8f9fa;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);
}

.login-form-panel {
    background-color: #ffffff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.login-logo {
    width: 100px; /* Adjust as needed */
    height: auto;
    margin-bottom: 20px;
}

.login-form-title {
    margin-bottom: 20px;
    color: #333;
    font-size: 20px;
}

.login-form {
    display: block;
    width: 100%;
}

.login-input-group {
    margin-bottom: 15px;
}

    .login-input-group label {
        display: block;
        margin-bottom: 5px;
    }

    .login-input-group input[type="text"],
    .login-input-group input[type="submit"] {
        width: 100%;
        padding: 8px;
        border: 1px solid #ccc;
        border-radius: 4px;
        font-family: 'Vazirmatn';
    }

    .login-input-group input[type="submit"] {
        background-color: #007bff;
        color: white;
        cursor: pointer;
        font-family: 'Vazirmatn';
    }

.login-link-option {
    margin-top: 20px;
    text-align: center;
}

    .login-link-option a {
        color: #007bff;
        text-decoration: none;
    }

.login-rules-text {
    text-align: center;
    font-size: 14px;
    margin-top: 10px;
}

.login-register-redirect {
    text-align: center;
    margin-top: 10px;
}

.login-btn-secondary {
    /*    background-color: #6c757d;
    border-color: #6c757d;*/
    color: #6c757d;
    font-size: 0.8rem;
}
/*
    end of login page styles
*/

/*
    otp page styles
*/

.otp-container {
    max-width: 600px;
    margin: 100px auto;
    padding: 20px;
    font-family: 'Vazirmatn';
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.05);
}

.otp-card {
    background-color: #ffffff;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.otp-card-header {
    padding: 10px 15px;
    background-color: #f7f7f7;
    border-bottom: 1px solid #e0e0e0;
    color: #333;
    font-size: 18px;
    text-align: center;
}

.otp-card-body {
    padding: 20px;
    text-align: center;
}

.otp-input-group {
    margin-bottom: 15px;
}

    .otp-input-group input[type="text"],
    .otp-input-group input[type="submit"] {
        width: 100%;
        padding: 8px;
        border: 1px solid #ccc;
        border-radius: 4px;
        font-family: 'Vazirmatn';
    }

    .otp-input-group input[type="submit"] {
        background-color: #007bff;
        color: white;
        cursor: pointer;
        font-family: 'Vazirmatn';
    }


/*
    end of otp page styles
*/

/*/* Customer dashboard styles */
.dashboard-container {
    max-width: 1200px;
    margin: 40px auto;
    padding: 20px;
    font-family: 'Vazirmatn';
}

.dashboard-row {
    display: flex;
    flex-wrap: wrap; /* Allow items to wrap to the next line */
    margin-top: 20px;
}

.dashboard-sidebar {
    flex: 1;
    margin-right: 20px; /* space between sidebar and main content */
    min-width: 200px; /* Ensure a minimum width for the sidebar */
}

.dashboard-main {
    flex: 3;
}

.dashboard-card {
    background-color: #ffffff;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    margin-bottom: 20px;
    padding: 20px;
    flex: 1; /* Allow cards to flex and fill space */
}

.dashboard-card-body {
    padding: 20px;
}

.dashboard-card-title {
    color: #333;
    font-size: 18px;
    margin-bottom: 10px;
}

.dashboard-card-text {
    font-size: 16px;
    color: #666;
}



/*
    end of customer dashboard styles
*/


/*
    checkout page styles
*/

.checkout-container {
    max-width: 1200px;
    margin: 20px auto;
    padding: 20px;
    font-family: 'Vazirmatn';
}

.checkout-header {
    text-align: center;
    margin-bottom: 20px;
    font-size: 24px;
    font-weight: bold;
}

.checkout-section {
    margin-bottom: 30px;
}

.checkout-form {
    display: block;
    width: 100%;
}

.checkout-row {
    display: flex;
    justify-content: space-between;
}

.checkout-col {
    flex: 1;
    padding: 15px;
}

.checkout-label {
    font-size: 16px;
    margin-bottom: 5px;
}

.checkout-input {
    width: 100%;
    padding: 8px;
    border: 1px solid #ccc;
    border-radius: 4px;
    margin-bottom: 15px;
}

.checkout-textarea {
    width: 100%;
    height: 100px;
    border-radius: 4px;
    border: 1px solid #ccc;
    padding: 8px;
    font-size: 14px;
}

.checkout-select {
    width: 100%;
    padding: 8px;
    border: 1px solid #ccc;
    border-radius: 4px;
    margin-bottom: 15px;
}

.checkout-table {
    width: 100%;
    margin-bottom: 20px;
    border-collapse: collapse;
}

    .checkout-table th,
    .checkout-table td {
        text-align: left;
        padding: 8px;
        border: 1px solid #ccc;
    }

.checkout-total {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 20px;
}

.checkout-button {
    padding: 10px 20px;
    background-color: #007bff;
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}


/*
    end of checkout page styles
*/


/*orders page styles*/
.orders-container {
    max-width: 1200px;
    margin: 20px auto;
    padding: 20px;
    font-family: 'Vazirmatn';
}

.orders-row {
    display: flex;
    margin-top: 20px;
}

.orders-sidebar {
    flex: 1;
    margin-right: 20px; /* space between sidebar and main content */
}

.orders-main {
    flex: 3;
}

.orders-card {
    background-color: #ffffff;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.orders-card-header {
    padding: 10px 15px;
    background-color: #f7f7f7;
    border-bottom: 1px solid #e0e0e0;
    font-size: 18px;
    text-align: center;
}

.orders-card-body {
    padding: 20px;
}

.orders-table {
    width: 100%;
    margin-top: 20px;
    border-collapse: collapse;
}

    .orders-table th,
    .orders-table td {
        text-align: left;
        padding: 8px;
        border: 1px solid #ccc;
    }

    .orders-table th {
        background-color: #f0f0f0;
    }

.orders-link {
    color: #007bff;
    text-decoration: none;
}

/* end of orders page style*/


/* order details styles*/

.order-details-container {
    max-width: 1200px;
    margin: 20px auto;
    padding: 20px;
}

.order-details-row {
    display: flex;
    margin-top: 20px;
}

.order-details-sidebar {
    flex: 1;
    margin-right: 20px; /* space between sidebar and main content */
}

.order-details-main {
    flex: 3;
}

.order-details-card {
    background-color: #ffffff;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.order-details-card-header {
    padding: 10px 15px;
    background-color: #f7f7f7;
    border-bottom: 1px solid #e0e0e0;
    font-size: 18px;
    text-align: center;
}

.order-details-card-body {
    padding: 20px;
}

.order-details-table {
    width: 100%;
    margin-top: 20px;
    border-collapse: collapse;
}

    .order-details-table th,
    .order-details-table td {
        text-align: left;
        padding: 8px;
        border: 1px solid #ccc;
    }

    .order-details-table th {
        background-color: #f0f0f0;
    }

.order-details-button {
    padding: 10px 20px;
    background-color: #007bff;
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}

.order-details-footer {
    padding: 10px 15px;
    text-align: right;
}


.order-details-container {
    margin-top: 16px;
    padding: 20px;
}

.order-details-row {
    display: flex;
    flex-wrap: wrap;
}

.order-details-col {
    flex: 50%; /* simulates col-md-6 */
    padding: 8px;
    box-sizing: border-box;
}

.order-details-full-col {
    flex: 100%; /* full width */
    padding: 8px;
    box-sizing: border-box;
}

/* Products Table CSS */
.products-table-container {
    margin-top: 16px;
    padding: 20px;
}

.products-table {
    width: 100%;
    border-collapse: collapse;
}

    .products-table th, .products-table td {
        border: 1px solid #ccc;
        padding: 8px;
        text-align: left;
    }

    .products-table th {
        background-color: #f0f0f0;
    }

.text-right {
    text-align: right;
}

/* end of order details styles */


/*payments page*/
.payments-container {
    max-width: 1200px;
    margin: 20px auto;
    padding: 20px;
}

.payments-row {
    display: flex;
    margin-top: 20px;
}

.payments-sidebar {
    flex: 1;
    margin-right: 20px; /* space between sidebar and main content */
}

.payments-main {
    flex: 3;
}

.payments-card {
    background-color: #ffffff;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.payments-card-header {
    padding: 10px 15px;
    background-color: #f7f7f7;
    border-bottom: 1px solid #e0e0e0;
    font-size: 18px;
    text-align: center;
}

.payments-card-body {
    padding: 20px;
}

.payments-table {
    width: 100%;
    margin-top: 20px;
    border-collapse: collapse;
}

    .payments-table th,
    .payments-table td {
        text-align: left;
        padding: 8px;
        border: 1px solid #ccc;
    }

    .payments-table th {
        background-color: #f0f0f0;
    }

/*end of payments page*/


/*
    styles for profile page
*/
.profile-container {
    max-width: 1200px;
    margin: 20px auto;
    padding: 20px;
}

.profile-row {
    display: flex;
    margin-top: 20px;
}

.profile-sidebar {
    flex: 1;
    margin-right: 20px; /* space between sidebar and main content */
}

.profile-main {
    flex: 3;
    background-color: #ffffff;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.profile-form {
    width: 100%;
}

.profile-input-group {
    margin-bottom: 15px;
}

.profile-label {
    display: block;
    margin-bottom: 5px;
}

.profile-input {
    width: 100%;
    padding: 8px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-family: 'Vazirmatn';
}

.profile-textarea {
    width: 100%;
    height: 100px;
    border-radius: 4px;
    border: 1px solid #ccc;
    padding: 8px;
    resize: none;
    font-family: 'Vazirmatn';
}

.profile-button {
    padding: 10px 20px;
    background-color: #007bff;
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
}


/*
    end of styles for profile page
*/


/* about us page styles */

.about-container {
    max-width: 1200px;
    margin: auto;
    padding: 40px 20px;
    background-color: #f4f4f4; /* Light grey background for better readability */
    color: #333; /* Darker text for contrast */
}

.about-section-title {
    text-align: center;
    padding: 20px;
}

.about-section-title__sub-title {
    color: #555;
    font-size: 24px;
    margin-bottom: 10px;
}

.about-section-title__main-title {
    color: #222;
    font-size: 36px;
    margin-bottom: 20px;
}

.about-counter {
    padding: 30px 0;
}

.counter-item-03 {
    text-align: center;
    padding: 15px;
}

.counter-item-03__icon {
    margin-bottom: 10px; /* Space between icon and text */
}

.counter-item-03__count {
    font-size: 28px; /* Larger font for the counter numbers */
    font-weight: bold;
    color: #0071DC; /* Primary color for numbers */
}

.counter-item-03__text {
    font-size: 16px;
    color: #666; /* Gray for subtle text */
}

.about-row {
    display: flex;
    justify-content: space-around;
}

.about-counter-columns {
    display: flex;
    justify-content: end;
    align-items: center;
    width: 25%;
    flex-direction: column;
}

/* end of about us page styles */


/* shop page styles */
.shop-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

.shop-row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -15px;
    margin-left: -15px;
}

    .shop-row > div {
        margin-bottom: 0.5rem;
    }

.shop-col-lg-3, .shop-col-lg-9, .shop-col-md-4, .shop-col-md-12 {
    padding-right: 15px;
    padding-left: 15px;
}

.shop-col-lg-3 {
    flex: 0 0 25%;
    max-width: 25%;
}

.shop-col-lg-9 {
    flex: 0 0 75%;
    max-width: 75%;
}

.shop-col-md-4 {
    flex: 0 0 33.33333%;
    max-width: 33.33333%;
}

.shop-col-md-12 {
    flex: 0 0 100%;
    max-width: 100%;
}

/* Additional styling for shop components */
.shop-card {
    margin-bottom: 15px;
    background: #fff;
    border: none;
    border-radius: 4px;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.shop-card-header {
    padding: 10px;
    border-bottom: 1px solid #eee;
}

.shop-card-body {
    padding: 15px;
}

.shop-product-box {
    background: #fff;
    border: 1px solid #dee2e6;
    border-radius: 4px;
    padding: 5px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.shop-product-image img {
    width: 100%;
    height: auto;
    border-bottom: 1px solid #eee;
}

.shop-product-info {
    padding-top: 10px;
    text-align: center;
}

.shop-product-title {
    margin: 0;
    font-size: 16px;
}

.shop-product-price {
    font-size: 14px;
    color: #333;
}

.shop-add-to-cart {
    text-align: center;
    padding-top: 10px;
}

.shop-btn {
    padding: 5px 10px;
    font-size: 14px;
    color: #fff;
    background-color: #007bff;
    border-radius: 4px;
    border: none;
    cursor: pointer;
    font-family: 'Vazirmatn'
}

.shop-btn-sm {
    padding: 3px 7px;
    font-size: 12px;
}

.shop-btn-red-orange {
    background-color: #fc641e;
}

/* Responsive adjustments */
@media (max-width: 991px) {
    .shop-col-lg-3, .shop-col-lg-9 {
        flex: 0 0 100%;
        max-width: 100%;
    }
}

@media (max-width: 767px) {
    .shop-col-md-4 {
        flex: 0 0 50%;
        max-width: 50%;
    }
}

/* end of shop page styles */

/* contacts page styles */
.contacts-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px;
}

.contacts-row {
    display: flex;
    flex-wrap: wrap;
    gap: 30px; /* replaces g-5 */
    padding: 20px; /* replaces p-5 */
}

.contacts-col-md-6 {
    flex: 0 0 45%;
    max-width: 45%;
}

.contacts-list-group {
    background-color: #f8f9fa;
    border-radius: 0.25rem;
    padding-left: 0;
    margin-bottom: 0;
}

.contacts-list-group-item {
    display: flex;
    align-items: center;
    padding: 0.75rem 1.25rem;
    margin-bottom: -1px;
    background-color: #e9ecef;
    border: 1px solid rgba(0,0,0,.125);
}

.contacts-list-group-item-action {
    width: 100%;
    color: #495057;
    text-align: left;
}

.list-group-item-bg-custom-light {
    background-color: #f0f4f8;
}

.fa {
    margin-right: 10px;
}

.text-dark {
    color: #343a40;
}

.text-start {
    text-align: right;
}

/* end of contacts page styles */

/* learning page styles */

.articles-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

.articles-row {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px;
}

.articles-col {
    flex: 0 0 25%; /* approx for lg-8 */
    max-width: 25%;
    padding: 0 15px;
    box-sizing: border-box;
}

.article-card {
    box-shadow: 0 4px 8px rgba(0,0,0,0.1);
    margin-bottom: 20px;
    background-color: #fff;
    border-radius: 5px;
    overflow: hidden;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.article-image {
    height: 150px;
    display: block;
}

.article-content {
    padding: 15px;
}

.article-title {
    font-size: 16px;
    margin-bottom: 10px;
    white-space: nowrap;
}

.article-summary {
    font-size: 16px;
    color: #666;
    line-height: 1.5;
    margin-bottom: 10px;
}

.article-read-more {
    display: inline-block;
    padding: 8px 12px;
    text-decoration: none;
    background-color: #007bff;
    color: white;
    border-radius: 5px;
    font-size: 11px;
}


/* end of learning page styles*/


/*customer sidebar styles*/

.customer-sidebar-card {
    border: 1px solid #ddd;
    border-radius: 4px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    margin-bottom: 20px;
}

.customer-sidebar-header {
    background-color: #f8f9fa;
    border-bottom: 1px solid #ddd;
    padding: 10px 15px;
}

    .customer-sidebar-header h5 {
        margin: 0;
        font-size: 18px;
    }

.customer-sidebar-body {
    padding: 15px;
}

.customer-sidebar-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

    .customer-sidebar-list li {
        margin-bottom: 10px;
    }

        .customer-sidebar-list li a {
            text-decoration: none;
            color: #007bff;
            display: block;
            padding: 5px 0;
            transition: background-color 0.2s ease-in-out;
        }

            .customer-sidebar-list li a:hover {
                background-color: #f0f0f0;
                border-radius: 4px;
            }


/* end of customer side bar styles */

/* sabad styles */
.sabad {
    position: relative;
}

    .sabad svg {
        width: 26px;
    }

#sabad-count {
    background-color: #003766;
    width: 20px;
    height: 20px;
    position: absolute;
    border-radius: 50%;
    right: -10px;
    bottom: -5px;
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 0.8rem;
    padding: 0;
    margin: 0;
}
/* end of sabad styles */

/* cart page styles */
.shopping-cart-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
}

.shopping-cart-row {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px;
}

.shopping-cart-main-col {
    flex: 0 0 58.33333%; /* approx for md-7 */
    max-width: 58.33333%;
    padding: 0 15px;
    box-sizing: border-box;
}

.shopping-cart-summary-col {
    flex: 0 0 41.66667%; /* approx for md-5 */
    max-width: 41.66667%;
    padding: 0 15px;
    box-sizing: border-box;
}

.shopping-cart-table {
    width: 100%;
    border-collapse: collapse;
}

    .shopping-cart-table th,
    .shopping-cart-table td {
        border: 1px solid #ddd;
        padding: 8px;
        text-align: center;
    }

    .shopping-cart-table th {
        background-color: #f8f9fa;
    }

.shopping-cart-back-to-shop,
.shopping-cart-checkout-btn {
    display: block;
    margin-top: 20px;
    text-decoration: none;
    padding: 10px 20px;
    background-color: #007bff;
    color: white;
    text-align: center;
    border-radius: 5px;
}

.shopping-cart-back-to-shop {
    background-color: #6c757d; /* Gray color for back button */
}

.shopping-cart-checkout-btn {
    background-color: #dc3545; /* Red-Orange color for checkout button */
}

/* Media Queries for Responsive Design */

/* Small devices (phones, less than 600px) */
@media (max-width: 600px) {
    .shopping-cart-main-col,
    .shopping-cart-summary-col {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .shopping-cart-table th,
    .shopping-cart-table td {
        font-size: 14px; /* Smaller font size for small screens */
        padding: 6px; /* Smaller padding */
    }

    .shopping-cart-back-to-shop,
    .shopping-cart-checkout-btn {
        padding: 8px 12px; /* Smaller padding for buttons */
        font-size: 12px; /* Smaller font size for buttons */
    }
}



/*=============================
	Footer CSS
===============================*/
.site-footer {
    background: #0e304c;
    padding: 0;
    margin-top: 2rem;
}

.site-footer-top {
    padding: 10px 0 20px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
}

/*   .site-footer-top:before {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background: rgb(0 20 36);
    }*/

.site-footer-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
}

.site-footer-row {
    display: flex;
    flex-wrap: wrap;
}

.site-footer-col {
    flex: 1 0 33.333%;
    padding: 5px;
    box-sizing: border-box;
}

.site-footer-widget {
    color: #ccc;
    margin-top: 30px;
}

    .site-footer-widget h2 {
        font-size: 16px;
        color: #fff;
        margin-top: 0;
        margin-bottom: 25px;
    }

    .site-footer-widget.about p {
        margin-top: 10px;
    }

.site-footer-logo {
    display: block;
    max-width: 100%;
    height: auto;
    filter: brightness(100%) invert(10%);
    max-width: 100px;
}

.site-footer-links ul, .site-footer-contact-info ul {
    list-style: none;
    padding: 0;
}

    .site-footer-links ul li a, .site-footer-contact-info ul li a {
        color: #ccc;
        text-decoration: none;
    }

.site-footer-bottom {
    background: #0d2436;
    padding: 10px 0;
}

.site-footer-copy {
    text-align: center;
    color: #aaa;
}

    .site-footer-copy p {
        margin: 0;
        font-size: 12px;
    }


/*
    صفحه درخواست مشاوره
*/
/* General styling for the container */
.consult-container {
    max-width: 600px;
    margin: 30px auto;
    padding: 20px;
    background-color: #f9f9f9;
    box-shadow: 0 0 15px rgba(0,0,0,0.1);
    border-radius: 8px;
    direction: rtl; /* Right-to-left direction for Persian text */
}

    /* Styling for the heading */
    .consult-container h1 {
        color: #333;
        text-align: center;
        margin-bottom: 20px;
    }

/* Styles for form elements */
.consult-group {
    margin-bottom: 15px;
}

.consult-label {
    display: block;
    margin-bottom: 5px;
    font-size: 16px;
    color: #555;
}

.consult-input, .consult-textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #ddd;
    border-radius: 4px;
    box-sizing: border-box; /* Include padding in width calculation */
    font-size: 14px;
}

.consult-textarea {
    resize: vertical; /* Allows vertical resizing only */
}

.consult-submit {
    display: block;
    width: 100%;
    padding: 10px;
    background-color: #5cb85c; /* Bootstrap's btn-success color */
    color: white;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 16px;
    transition: background-color 0.3s;
}

    .consult-submit:hover {
        background-color: #4cae4c; /* Darken the button on hover */
    }

/* Responsive adjustments */
@media (max-width: 640px) {
    .consult-container {
        padding: 15px;
    }
}


/*
    end of صفحه درخواست مشاوره styles
*/

.article-footer {
    display: flex;
    flex-direction: row;
}

.like-and-share-div {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
}

.like-div svg {
    width: 32px;
    margin-left: 16px;
}

.share-div svg {
    width: 32px;
    cursor: pointer;
}

.fill-red {
    fill: red !important;
}


.pg-navigation {
    display: flex;
    justify-content: space-between;
    margin: 0;
    margin-bottom: 40px;
    border-top: 1px solid #dbdbdb;
    padding: 0.5rem;
    width: 100%;
}

.pg-container {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
    max-width: 1200px;
}

.pg-nav-link {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: #333;
    font-size: 16px;
    padding: 0.5rem;
    border-radius: 0.5rem;
}

    .pg-nav-link:hover {
        background-color: #0e304c;
        color: white;
    }

.pg-nav-link-text-content {
    display: flex;
    flex-direction: column;
    align-items: start;
}

.pg-nav-link-image-content img {
    max-width: 80px;
    margin: 0.5rem;
    border-radius: 0.5rem;
    box-shadow: 0 0 5px 2px #cbcbcb;
    max-height: 50px
}

.pg-previous {
    text-align: left;
}

.pg-next {
    text-align: right;
}

.pg-arrow {
    display: inline-block;
    margin: 0 10px;
    font-size: 20px;
}

.pg-article-title {
    display: inline-block;
    max-width: 200px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-weight: 500;
}


.pg-nav-link:hover .pg-article-title {
    text-decoration: underline;
}

.pg-nav-link:hover .pg-arrow {
    color: #007BFF;
}


.product-box img {
    max-width: 100%;
}


#snackbar {
    visibility: hidden;
    min-width: 250px;
    margin-left: -125px;
    background-color: #333;
    color: #fff;
    text-align: center;
    border-radius: 2px;
    padding: 16px;
    position: fixed;
    z-index: 1;
    left: 50%;
    bottom: 30px;
    font-size: 17px;
}

    #snackbar.show {
        visibility: visible;
        -webkit-animation: fadein 0.5s, fadeout 0.5s 2.5s;
        animation: fadein 0.5s, fadeout 0.5s 2.5s;
    }

@-webkit-keyframes fadein {
    from {
        bottom: 0;
        opacity: 0;
    }

    to {
        bottom: 30px;
        opacity: 1;
    }
}

@keyframes fadein {
    from {
        bottom: 0;
        opacity: 0;
    }

    to {
        bottom: 30px;
        opacity: 1;
    }
}

@-webkit-keyframes fadeout {
    from {
        bottom: 30px;
        opacity: 1;
    }

    to {
        bottom: 0;
        opacity: 0;
    }
}

@keyframes fadeout {
    from {
        bottom: 30px;
        opacity: 1;
    }

    to {
        bottom: 0;
        opacity: 0;
    }
}



/*
    Octagonal
*/
.Octagonal {
    position: relative;
    padding: 1rem;
    margin: 1rem;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    text-align: center;
    text-decoration: none;
    background-color: #003766;
    border-radius: 15px;
    width: 100%;
}

.Octagonal-col {
    display: flex;
    height: auto;
    width: 33%;
}

.Octagonal-row {
    display: flex;
    justify-content: center;
}

.Octagonal-title {
    font-size: 1rem;
    color: #FFF;
    font-weight: 400;
}

.Octagonal img {
    width: 56px;
    filter: invert(1);
}

.Octagonal-Description {
    font-size: 0.8rem;
    color: rgba(255, 255, 255, 0.8);
    text-align: right;
    font-weight: 200;
}


/*
    /Octagonal
*/


.card-product-count {
    display: flex;
    justify-content: space-around;
}

@media (max-width: 640px) {
    .card-product-count {
        flex-direction: column;
    }
}



.availability-icon {
    display: inline-block;
}

/* استایل برند */
.brand-info {
    display: flex;
    align-items: center;
}

.brand-label {
    margin-left: 5px;
    color: #888;
}

.brand-name {
    padding: 2px 8px;
    background-color: #F0F0F0;
    border-radius: 5px;
    font-size: 12px;
    color: #000;
}

/* ویژگی‌های کلیدی */
.key-features {
    margin-top: 10px;
    font-size: 14px;
    color: #333;
}

    .key-features ul {
        list-style-type: disc;
        padding-right: 1.5rem;
        margin: 0;
    }

    .key-features h5 {
        margin-bottom: 0.5rem;
    }

    .key-features li {
        margin-bottom: 5px;
        font-size: 13px;
        color: #555;
    }

/* شمارنده تعداد */
.quantity-selector {
    display: flex;
    align-items: center;
    margin: 0;
    margin-bottom: 0 !important;
}

    .quantity-selector button {
        background-color: #f0f0f0;
        border: 1px solid #ddd;
        padding: 5px 10px;
        cursor: pointer;
        font-size: 16px;
    }

        .quantity-selector button:hover {
            background-color: #ddd;
        }

    .quantity-selector span {
        margin: 0 10px;
        font-size: 14px;
        font-weight: bold;
    }

.product-page-add-to-card-box {
    display: flex;
}

.product-page-add-to-card-box .add-to-cart {
    padding-bottom: 0;
    padding-top: 0;
    margin-right: 0.5rem;
}
