.image-container {
    display: flex;
    justify-content: center; /* Center horizontally */
    align-items: center; /* Center vertically */
}

.image-container .rounded-circle {
    width: 250px; /* Adjust as needed */
    height: 250px; /* Adjust as needed */
    border-radius: 50%; /* Make it a circle */
    overflow: hidden; /* Ensure the image doesn't exceed the container */
}

.rounded-circle img {
    width: 100%; /* Ensure the image fills the container */
    height: 100%; /* Maintain aspect ratio */
    display: flex; /* Remove extra space below the image */
}

.card-image img {
    width: 100%; /* Ensure the image fills the container */
    height: 300px; /* Maintain aspect ratio */
    display: flex; /* Remove extra space below the image */
}

.horizontal-tags .nav-link {
    display: inline-block;
    margin-inline-end: 10px;
}

html,
body {
    max-width: 100%;
    overflow-x: hidden;
}

html[lang="fa"] body,
html[lang="fa"] ul,
html[lang="fa"] li,
html[lang="fa"] p,
html[lang="fa"] a,
html[lang="fa"] label,
html[lang="fa"] div,
html[lang="fa"] span,
html[lang="fa"] strong,
html[lang="fa"] h1,
html[lang="fa"] h2,
html[lang="fa"] h3,
html[lang="fa"] h4,
html[lang="fa"] h5,
html[lang="fa"] h6,
html[lang="fa"] input,
html[lang="fa"] button,
html[lang="fa"] textarea,
html[lang="fa"] select {
    font-family: "Vazirmatn", Tahoma, sans-serif !important;
}

html[dir="rtl"] body {
    text-align: right;
}

html[dir="rtl"] .text-left {
    text-align: right !important;
}

html[dir="rtl"] .navbar-nav,
html[dir="rtl"] .navbar-nav .nav-link,
html[dir="rtl"] .navbar-nav .dropdown-menu,
html[dir="rtl"] .navbar-nav .dropdown-item {
    direction: rtl;
    text-align: right !important;
}

html[dir="rtl"] .navbar-nav .dropdown-menu {
    right: 0;
    left: auto;
}

img,
video,
iframe {
    max-width: 100%;
}

.site-logo {
    filter: invert(100%) brightness(100%);
    object-fit: contain;
}

.container-background {
    padding-top: clamp(3rem, 6vw, 5rem) !important;
    padding-bottom: clamp(3rem, 6vw, 5rem) !important;
}

.navbar-nav .dropdown-menu {
    display: none;
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 0.2s ease, transform 0.2s ease;
}

.navbar-nav .dropdown:hover > .dropdown-menu,
.navbar-nav .dropdown:focus-within > .dropdown-menu {
    display: block;
    opacity: 1;
    transform: translateY(0);
}

.card-body,
.description-box,
.text-white,
.card-text {
    overflow-wrap: anywhere;
}

.card-body img,
.card-body iframe,
.description-box img,
.description-box iframe {
    height: auto !important;
}

.card-body table,
.description-box table {
    display: block;
    max-width: 100%;
    overflow-x: auto;
}

@media (max-width: 991.98px) {
    #templatemo_nav_top {
        min-height: 36px;
        padding-block: 0.35rem;
    }

    #templatemo_nav_top .container {
        flex-wrap: wrap !important;
        justify-content: center;
        row-gap: 0.35rem;
    }

    #templatemo_nav_top .top-contact {
        display: flex !important;
        width: 100%;
        margin-inline: 0 !important;
        justify-content: center !important;
        text-align: center;
    }

    #templatemo_nav_top .top-contact > div:first-child {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
    }

    #templatemo_main_nav {
        padding-bottom: 1rem;
    }

    #templatemo_main_nav .navbar-nav {
        align-items: stretch;
    }

    #templatemo_main_nav .nav-link {
        padding: 0.7rem 0.5rem;
    }

    .navbar-nav .dropdown-menu {
        position: static;
        display: block;
        opacity: 1;
        transform: none;
        margin: 0 0 0.5rem;
        padding: 0 0.75rem;
        border: 0;
        box-shadow: none;
    }

    .navbar-nav .dropdown-item {
        white-space: normal;
    }

    .product-wap,
    .post-card,
    .product-card {
        width: 100% !important;
        height: auto !important;
        max-width: 34rem;
        margin-inline: auto;
    }

    .product-wap > .card > img,
    .post-card > .card > img,
    .product-card > .card > img {
        width: 100%;
        height: min(300px, 55vw) !important;
        object-fit: cover;
    }

    .product-wap > .card-body,
    .product-card > .card-body {
        height: auto !important;
        min-height: 0;
    }

    #product-detail,
    #post-detail {
        height: auto !important;
        max-height: 65vh;
        object-fit: contain;
    }

    .description-box.open {
        max-height: none !important;
    }
}

@media (max-width: 575.98px) {
    body,
    ul,
    li,
    p,
    a,
    label,
    input,
    button,
    div {
        font-size: 16px !important;
    }

    .h1,
    h1,
    .section-title {
        font-size: 1.75rem !important;
        line-height: 1.3;
    }

    .h2,
    h2,
    .product-wap .h2,
    .post-card .h2 {
        font-size: 1.35rem !important;
        line-height: 1.4;
    }

    .h3,
    h3,
    .templatemo-accordion .h3 {
        font-size: 1.1rem !important;
    }

    .container {
        padding-inline: 1rem;
    }

    .navbar-brand {
        margin: 0;
        padding-block: 0.25rem;
    }

    .site-logo {
        width: 68px;
        height: 68px;
    }

    #template-mo-zay-hero-carousel .carousel-caption {
        right: 0;
        left: 0;
        width: auto;
        padding-inline: 2.5rem;
    }

    #template-mo-zay-hero-carousel .carousel-caption .h1 {
        font-size: 1.25rem !important;
    }

    .container-background {
        padding-top: 3rem !important;
        padding-bottom: 3rem !important;
    }

    .container-background .section-title,
    .our-brands-section .section-title {
        font-size: 1.4rem !important;
    }

    .container-background .product-item {
        margin-bottom: 0.75rem;
    }

    .container-background .product-item .h5 {
        font-size: 0.95rem !important;
        line-height: 1.5;
    }

    .our-brands-section {
        padding: 2rem 1rem !important;
    }

    .our-brands-section .brand-image {
        width: 72px !important;
        max-height: 72px;
    }

    .blog-post-item .h2 {
        font-size: 1.15rem !important;
    }

    .section-title {
        margin-inline: 0 !important;
        margin-top: 2rem !important;
        margin-bottom: 1.5rem !important;
    }

    .card-body,
    .description-box {
        padding: 1rem !important;
    }

    .service-btn {
        font-size: 16px !important;
        padding: 0.75rem !important;
    }

    footer .pt-5 {
        padding-top: 2rem !important;
    }
}

/* Explicit paragraph direction chosen in the rich-text editor. */
.content-ltr { direction: ltr; text-align: start; }
.content-rtl { direction: rtl; text-align: start; }
.product-row-link, .product-row-link:hover, .product-row-link:focus {
    text-decoration: none;
}
/* Keep compact image rows centered, with room for the carousel controls. */
.content-slider, #carousel-related-product {
    width: calc(100% - 64px);
    max-width: min(var(--slider-content-width, 1200px), var(--slider-max-width, 1200px));
    min-width: 0;
    margin-inline: auto;
}
.brand-slider { --slider-max-width: 840px; }
.category-slider { --slider-max-width: 1080px; }
.content-slider .slick-slide, #carousel-related-product .slick-slide {
    padding: 8px;
    height: auto;
    min-width: 0;
}
.content-slider .slick-track, #carousel-related-product .slick-track { display: flex; }
/* Plain chevrons: no circle, border, shaded background, or blur. */
.content-slider, #carousel-related-product { --arrow-color: #0771c5; }
.category-slider { --arrow-color: #fff; }
.content-slider .slick-arrow, #carousel-related-product .slick-arrow,
#template-mo-zay-hero-carousel .carousel-control-prev,
#template-mo-zay-hero-carousel .carousel-control-next {
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    filter: none;
    backdrop-filter: none;
    opacity: 1;
}
.content-slider .slick-arrow, #carousel-related-product .slick-arrow {
    width: 32px;
    height: 44px;
    z-index: 1;
}
.content-slider .slick-arrow:before, #carousel-related-product .slick-arrow:before {
    font-family: Arial, sans-serif;
    font-size: 36px;
    color: var(--arrow-color);
    opacity: 1;
}
.content-slider .slick-prev, #carousel-related-product .slick-prev { left: -32px; }
.content-slider .slick-next, #carousel-related-product .slick-next { right: -32px; }
.content-slider .slick-prev:before, #carousel-related-product .slick-prev:before { content: '\2039'; }
.content-slider .slick-next:before, #carousel-related-product .slick-next:before { content: '\203a'; }
[dir='rtl'] .content-slider .slick-prev, [dir='rtl'] #carousel-related-product .slick-prev { right: -32px; left: auto; }
[dir='rtl'] .content-slider .slick-next, [dir='rtl'] #carousel-related-product .slick-next { left: -32px; right: auto; }
[dir='rtl'] .content-slider .slick-prev:before, [dir='rtl'] #carousel-related-product .slick-prev:before { content: '\203a'; }
[dir='rtl'] .content-slider .slick-next:before, [dir='rtl'] #carousel-related-product .slick-next:before { content: '\2039'; }
.content-slider .slick-arrow:focus-visible, #carousel-related-product .slick-arrow:focus-visible {
    outline: 2px solid var(--arrow-color);
    outline-offset: 2px;
}
.content-slider:not(.slick-initialized) { display: flex; overflow-x: auto; }
.content-slider:not(.slick-initialized) > * { flex: 0 0 216px; }
.content-slider .brand-image {
    width: 112px;
    height: 100px;
    object-fit: contain;
    margin: auto;
}
.content-slider .category-image {
    width: 100%;
    max-width: 200px;
    height: auto;
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: 15px;
}
.product-item .h5 { overflow-wrap: anywhere; }
.product-card, .product-wap { height: 100%; }
.product-card > .card-body, .product-wap > .card-body {
    height: auto !important;
    min-height: 0;
}
.product-card > .card > img, .product-wap > .card > img {
    width: 100%;
    height: auto !important;
    aspect-ratio: 1;
    object-fit: contain;
}
.row > *, .card-body, #templatemo_main_nav { min-width: 0; }
.description-box.open { max-height: none !important; }
#map { height: clamp(240px, 45vw, 400px) !important; }
.page-heading { margin-block: clamp(2rem, 5vw, 5rem) 1rem; color: #028bc1; }
@media (max-width: 991.98px) {
    .services-list { flex-direction: row !important; flex-wrap: wrap; gap: 8px; max-width: none !important; }
    .service-item { flex: 1 1 12rem; margin: 0 !important; }
    .full-width-background { padding-block: 2rem !important; }
}
@media (max-width: 575.98px) {
    .content-slider, #carousel-related-product { width: calc(100% - 64px); }
    .content-slider .slick-slide, #carousel-related-product .slick-slide { padding: 6px; }
    .brand-slider .brand-image { width: 96px !important; height: 88px; max-height: none; }
    .product-item .h5 { margin-bottom: 0; }
}

.services-list { display: flex; flex-direction: column; gap: 8px; }
.service-btn { display: block; padding: 15px; text-align: center; text-decoration: none; border: 0; border-radius: 12px; background: #888; color: white; overflow-wrap: anywhere; }
.service-btn:hover, .service-btn:focus, .service-btn.active { background: #0771c5; color: white; }
.service-content .description-box { background: #0771c5; color: white; opacity: 1; max-height: none; border-radius: 15px; }

.breadcrumb-item { overflow-wrap: anywhere; }
