* {
    direction: rtl;
    box-sizing: border-box;
}

p {
    padding: 0;
}
a {
    text-decoration: none;
}

ul, li {
    list-style: none;
}

[type=email], [type=number], [type=url], [type=text] {
    direction: rtl;
}

@font-face {
    font-family: iranyekan;
    src: url('../fonts/IRANYekanWebFn.woff2');
    font-display: swap;
}

@font-face {
    font-family: 'icomoon';
    src: url('../fonts/icomoon.eot?jef8xe');
    src: url('../fonts/icomoon.eot?jef8xe#iefix') format('embedded-opentype'),
    url('../fonts/icomoon.ttf?jef8xe') format('truetype'),
    url('../fonts/icomoon.woff?jef8xe') format('woff'),
    url('../fonts/icomoon.svg?jef8xe#icomoon') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

[class^="icon-"], [class*=" icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-percent:before {
    content: "\e925";
}

.icon-bars:before {
    content: "\e923";
}

.icon-shield-solid:before {
    content: "\e917";
}

.icon-arrow:before {
    content: "\e924";
}

.icon-money:before {
    content: "\e900";
}

.icon-headset:before {
    content: "\e901";
}

.icon-medal:before {
    content: "\e902";
}

.icon-truck:before {
    content: "\e903";
}

.icon-heart-filled:before {
    content: "\e904";
}

.icon-arrow-right:before {
    content: "\e905";
}

.icon-bell-regular:before {
    content: "\e906";
}

.icon-cart:before {
    content: "\e907";
}

.icon-chart:before {
    content: "\e908";
}

.icon-left:before {
    content: "\e909";
}

.icon-circle:before {
    content: "\e90a";
}

.icon-ellipsis:before {
    content: "\e90b";
}

.icon-envelope:before {
    content: "\e90c";
}

.icon-file:before {
    content: "\e90d";
}

.icon-heart:before {
    content: "\e90e";
}

.icon-instagram:before {
    content: "\e90f";
}

.icon-list:before {
    content: "\e910";
}

.icon-location:before {
    content: "\e911";
}

.icon-phone:before {
    content: "\e912";
}

.icon-share:before {
    content: "\e913";
}

.icon-telegram:before {
    content: "\e914";
}

.icon-user:before {
    content: "\e915";
}

.icon-youtube:before {
    content: "\e916";
}

.price .border-bottom {
    border-bottom: 1px solid var(--primary) !important;
}

.color-secondry {
    color: var(--secondary);
}

.bg-secondry {
    background: var(--secondary);
}

.color-main, .color-main:hover {
    color: #1e1f26;
}

h1, h2, h3, h4, h5, h6, p, strong, a, b, label, button, th, td, div {

    font-family: "iranyekan", sans-serif;
    color: #4c5e60;
    line-height: 1.5rem;
}
.text-justfy {
    text-align: justify;
}
body {
    overflow-x: hidden;
}

.costumbg {
    background-image: url("../img/bg.svg");
}

.iconFlip {
    transform: rotate(-180deg);
}

.theme-text-color {
    color: var(--primary);
}

.theme-text-weight {
    font-weight: 900;
}

h1 {
    font-size: 1.6rem;
    font-weight: bolder;
}

h2, h3, h4, h5, h6 {
    font-size: 1.2rem;
    font-weight: bold;
}

.text-10 {
    font-size: 0.7rem;
}

/*-------------------------------------------------------------------------------------------------------------header*/
header {
    background: var(--secondary);
    padding: 10px 5px;
}



.accountBtn {
    padding: 5px 9px;
    border: 1px solid;
    border-radius: 5px;
    font-weight: 900;
    font-size: 13px;
}

.cartBtn {
    padding: 5px 9px;
}

span.cart_total {
    color: #fff;
    padding: 5px;
    border-radius: 50%;
    line-height: 5px;
    text-align: center;
    font-size: 10px;
    font-weight: 900;
    left: 2px;
    top: -1px;
    z-index: 101;
}

.navbar-toggler:focus {
    box-shadow: 0 0 0;
}

/*-------------------------------------------------------------------------------------------------------------article*/
article {
    font-family: iranyekan;
    text-align: justify;
}


/*-------------------------------------------------------------------------------------------------------------footer*/
footer {
    font-family: iranyekan;
    background: #2F2F2F;
    color: #fff;
    border-radius: 25px 25px 0 0;
    overflow-x: hidden;
}

footer p, footer b {
    color: #fff;
    text-align: justify;
}


footer ul {
    list-style: none;
    padding: 0;
}

#go-up {
    cursor: pointer;
}

img.footerLogo, footer .footerImage {
    width: auto;
    height: 45px;
}

.newsletterBtn {
    background: none;
    border: 1px solid var(--primary);
}

input#newslettermail {
    background: none;
    border: 1px solid var(--primary);
    padding: 5px 10px;
    border-radius: 5px;
}

button.newsletterBtn.position-absolute {
    left: 5px;
    right: auto;
    background: var(--primary);
    border-radius: 25px;
    color: #fff;
    font-size: 12px;
}

::placeholder {
    color: #fff;
}

.icon-telegram {
    color: #0088CC;
}

.icon-instagram {
    color: #c13584;
}

.license img {
    filter: invert();
}

/*search bar----------------------------------------------------------------------------------------------------------*/
.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input {
    border-radius: 8px;
    min-width: 560px;
    height: 40px;
    background: #fff;
}

.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp button.dgwt-wcas-search-submit {
    top: 12px;
}

.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input {
    font-family: iranyekan;
}

.dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp {
    background: none;
}

/*Swiper Slider-------------------------------------------------------------------------------------------------------*/
.swiper-button-prev, .swiper-rtl .swiper-button-next {
    background: #fff;
    border-radius: 50%;
    width: 25px;
    height: 25px;
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
    font-size: 12px;
    color: var(--primary);
}

/*product Page-------------------------------------------------------------------------------------------------------*/
.min-h-65 {
    min-height: 65px;
}
.productTitle {
    font-size: 18px;
    text-transform: uppercase;
}

.themeFont {
    font-family: iranyekan;
}
.slidePrice {
    min-height: 65px;
}
.productEnglish {
    font-size: 12px;
    color: #c3c3ce;
    font-family: sans-serif;
    text-transform: uppercase;
    position: relative;
    max-height: 24px;
}

.lineDevider {
    height: 1px;
    background: #c3c3ce;
    flex-grow: 1;
}

.productSinglExcerpt ul li {
    list-style: circle;
}

.productSinglExcerpt ul li {
    font-size: 12px;
}

.woocommerce-product-details__short-description ul {
    padding-right: 16px;
}

.alertText {
    font-size: 10px;
}

nav.woocommerce-breadcrumb {
    font-size: 0.75rem;
}

form.cart {
    /*display: flex;*/
    /*align-items: center;*/
    /*justify-content: space-evenly;*/
}

input.qty {
    padding: 5px 10px;
    width: 50px;
    border-radius: 5px;
    border: 1px solid var(--primary);
}

button.single_add_to_cart_button.button.alt, button.single_add_to_cart_button.button.alt:hover {
    border: none;
    outline: none;
    background: var(--primary);
    color: #fff;
    border-radius: 5px;
    width: 100%;
    padding: 0.5rem 1rem;
    margin-right: 1rem;:;
}

.actions span {
    background: #fff;
    padding: 5px;
    line-height: 10px;
    border-radius: 5px;
    cursor: pointer;
}

.report {
    font-size: 10px;
    font-weight: bold;
}

.report:hover {
    cursor: pointer;
}

.regular-price {
    text-align: left;
    font-weight: 900;
    font-size: 1.3rem;
}

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

.theme-breadcrumb, .error-desc {
    font-size: 0.68rem;
}

img.brandIcon {
    height: 35px;
    width: auto;
}

.brandSliderIcons {
    filter: grayscale(1);
    opacity: 0.3;
}

.brandSliderIcons:hover {
    filter: grayscale(0);
    opacity: 1;
}

.relatedSwiper {
    text-align: center;
    background: #fff;
    border-radius: 10px;
    padding: 10px 0;
}

.relatedSwiper .swiper-slide:hover, .productSwiper .swiper-slide:hover, r {
    box-shadow: 2px 10px 5px #f5f5f5;
}

.pr_name {
    color: var(--primary);
}

div#desc {
    text-align: justify;
    height: 25vh;
}

.nextAdvantage {
    font-size: 10px;
}

.advIcons {
    background: #Fff;
    color: var(--primary);
    padding: 5px;
    border-radius: 50%;
}

.price .img-50 {
    height: 20px;
    width: auto;
}

.woocommerce-message::before, .woocommerce-message::after, .woocommerce-error::before {
    content: "";
}
ul.woocommerce-error li
{
    list-style: none!important;
}
#seemore {
    cursor: pointer;
}










/*mobile*/
@media only screen and (max-width: 570px) {
    .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input {
        max-width: 100%;
        min-width: 100%;
    }

    .logInform {
        min-width: 90vw;
    }

    .category-swiper a img {
        max-width: 85px !important;
    }

    h2 {
        font-size: 1rem;
        font-weight: 900;
    }

    h3 {
        font-size: 1rem;
        font-weight: 900;
    }

    footer p, footer b {
        font-size: .85rem;
        text-align: justify;
    }



    .row .loopStart {
        grid-template-columns: auto auto;
        gap: 0.5rem;

    }

    .woocommerce form .form-row-first, .woocommerce-page form .form-row-first, .woocommerce form .form-row-last, .woocommerce-page form .form-row-last {
        width: 100%;
    }
}

@media only screen and (max-width: 320px) {

    span#go-up {
        font-size: 0.6rem;
    }

    .footer-logo {
        width: 40%;
        height: auto;
    }

    .dgwt-wcas-style-pirx .dgwt-wcas-sf-wrapp input[type=search].dgwt-wcas-search-input {
        max-width: 100%;
        min-width: 100%;
    }

}

/*mega menu*/
.level1 {
    top: 40px;
    min-width: 300px;
    z-index: 999;
    border-radius: 0.5rem;
}

.child-link {
    border-right: 4px solid var(--primary);
}

.level2 a.link-dark:last-of-type {
    padding-bottom: 0.2rem;
}

.megaMenu {
    background: #fff;
    top: 136px;
    z-index: 100;
    right: 0;
}

.submenu {
    background: #00baba21;
    border-radius: 0.3rem 0 0 0.3rem;
}
.offcanvas-start {
    width: 80vw;
}

.main-Cat {
    font-weight: 900;
    border-right: 4px solid var(--primary);
    padding-right: 5px;
    line-height: 16px;
    margin-bottom: 8px;
}

.text-14 {
    font-size: 14px;
}

#megaHover:hover {
    cursor: pointer;

}
.offcanvas-body .accordion-item, .offcanvas-body .accordion-button
{
       border: none;
}

/*product slider*/
.blend {
    mix-blend-mode: multiply;
}
.productSwiper .swiper-slided {
    border-left: 1px solid #f5f5f5;
}

.slide-price {
    color: var(--color-text);
}

.slider-title {
    font-weight: 900;
    font-size: 1.2rem;
}


/*my acoount page*/
.woocommerce-account .woocommerce-MyAccount-navigation {
    width: 100%;
}

.woocommerce-account .woocommerce-MyAccount-content {
    width: 100%;
}

.d-grid-4 {
    display: grid;
    grid-template-columns: auto auto auto auto;
    gap: 5px;
}

.favItems .btn-close {
    font-size: 8px;
    top: 4px;
    cursor: pointer;
}


/*Front Page Mag*/
.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
    bottom: 10px;
    width: fit-content;
    right: 32px;
}

.swiper-pagination-bullet {

    height: 32px;
    border-radius: 1rem;
    color: #fff;
    background: #fff;
    opacity: 1;
}

.swiper-pagination-bullet-active {
    background: var(--primary);
}

.front-page-desc p {
    text-align: justify;
}

.loopStart {
    display: grid;
    grid-gap: 0.5rem;
    grid-template-columns: repeat(5, 1fr); /* Define 5 columns with equal width */
}

.woocommerce .woocommerce-ordering select {
    padding: 0.3rem;
    border: 1px solid #dddddd;
}


.price_slider_amount {
    display: flex;
    align-items: center;
    justify-content: space-around;
    flex-direction: row-reverse;
}

.price_label {
    display: flex;
}

.seemore {
    cursor: pointer;
}

#desc {
    overflow: hidden;
}

div#desc * {
    font-size: 1rem;
    line-height: 2rem;
}

div#desc h2, div#desc h3, div#desc h4 {
    font-weight: 900;
}

div#desc * li {
    list-style: disc;
}


.desktop {
    position: relative;
}

.submenu {
    position: absolute;
    z-index: 100000000;
    background: #fff;
    top: 105px;
}

.sub-half {
    position: absolute;
    left: 0;
    height: 100%;
}

.category-swiper a img {
    max-width: 130px;
    height: auto;
}

.toast-fav {
    position: fixed;
    bottom: 20px;
    right: 20px;
    padding: 15px;
    border-radius: 5px;
    display: block;
    z-index: 1000;
}

/* Style the switch container */
.switch {
    position: relative;
    display: inline-block;
    width: 50px;
    height: 25px;
}

/* Hide the default checkbox input */
.switch input {
    display: none;
}

/* Style the slider (the visible part of the switch) */
.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    transition: 0.4s;
    border-radius: 34px;
}

/* Style the slider's appearance when the switch is on (checked) */
.slider:before {
    position: absolute;
    content: "";
    height: 19px;
    width: 19px;
    left: 4px;
    bottom: 3px;
    background-color: white;
    transition: 0.4s;
    border-radius: 50%;
}

/* Adjust the slider appearance when the switch is checked */
.switch input:checked + .slider {
    background-color: var(--primary);
}

.switch input:checked + .slider:before {
    transform: translateX(22px);
}

.form-check-input:checked {
    background-color: var(--primary);
    border-color: var(--primary);
}

span#id_number-description {
    font-size: 0.6rem;
    color: #e53935;
}

.form-check-input:focus {
    border-color: var(--primary);
    outline: 0;
    box-shadow: 0 0 0 0.25rem rgb(0 186 186 / 22%);
}

.brand-in-english {
    text-transform: capitalize;
}

#showDesc {
    cursor: pointer;
}

.prevent-select {
    -webkit-user-select: none; /* Safari */
    -ms-user-select: none; /* IE 10 and IE 11 */
    user-select: none; /* Standard syntax */
}

.sort-btn span {
    cursor: pointer;
}

.bg-off{
    background: radial-gradient(circle, transparent 25%, #e53935  26%),linear-gradient(45deg, transparent 46%, #ffffff 47%, #ffffff 52%, transparent 53%), linear-gradient(135deg, transparent 46%, #ffffff 47%, #ffffff 52%, transparent 53%);
    background-size: 1rem 1rem;
    background-color: #e53935;
    opacity: 1
}

.page-content strong
{
    color: var(--primary);
}

.accordion-button:not(.collapsed) {
    color: var(--primary);
    background-color: #f5f5f5;
    box-shadow: 0 0 0;
}
.accordion-button:focus {
    z-index: 3;
    border-color: var(--primary);
    outline: 0;
    box-shadow: 0 0 0;
}
#resendOTP
{
    cursor: pointer;
}
.theme-modal
{
    background: none;
    border: none;
}

ul#shipping_method li {
    list-style: none;
}

a.woocommerce-terms-and-conditions-link,a.woocommerce-privacy-policy-link
{
    color: #e53935;
    font-weight: bolder;
}
.rotate
{
    transform: rotate(-90deg);
}
.woocommerce-MyAccount-content .favpage li
{
    list-style: none;
}

.follow {
    content: '';
    position: absolute;
    background: var(--primary);
    z-index: 0;
    height: 0.5rem;
    top: 1.5rem;
    border-radius: 1rem;
}
.form-range::-webkit-slider-thumb{
    background-color: var(--primary); /* Change this color to whatever you prefer */
}

.white-shadow {
    background: rgb(255, 255, 255);
    background: linear-gradient(0deg, #fff, rgba(255, 255, 255, 0) 100%);
    height: 100px;
}
#expand-data
{
    cursor: pointer;
}
.line2
{
    line-height: 3rem;
}


table.variations select {
    display: none;
}
/* =========================================================
   NextKala UI Refresh — 2026
   Visual-only layer: preserves the existing theme/API markup.
   ========================================================= */
:root {
    --next-primary: #00baba;
    --next-primary-dark: #008f91;
    --next-ink: #172326;
    --next-muted: #6f7d80;
    --next-border: #e9eff0;
    --next-surface: #ffffff;
    --next-surface-soft: #f7fafb;
    --next-danger: #e53935;
    --next-radius: 18px;
    --next-shadow: 0 10px 30px rgba(23,35,38,.06);
    --next-shadow-hover: 0 16px 36px rgba(23,35,38,.12);
}

.next-homepage {
    color: var(--next-ink);
    background: #fff;
}

.next-homepage .next-container,
.next-homepage > .next-container {
    max-width: 1400px;
}

.next-homepage a {
    text-decoration: none;
}

.next-homepage .next-section {
    margin-bottom: 28px !important;
}

.next-homepage .next-hero {
    overflow: hidden;
    border-radius: 0 0 22px 22px;
    background: #f5f7f8;
}

.next-homepage .next-hero img {
    display: block;
    width: 100%;
    height: auto;
}

.next-homepage .frontSwiper .swiper-pagination {
    bottom: 16px;
}

.next-homepage .frontSwiper .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    margin: 0 4px !important;
    border-radius: 999px;
    background: #fff;
    opacity: .55;
    transition: .2s ease;
}

.next-homepage .frontSwiper .swiper-pagination-bullet-active {
    width: 24px;
    background: var(--next-primary);
    opacity: 1;
}

.next-homepage .next-categories {
    padding: 8px 0 4px;
}

.next-homepage .category-swiper {
    padding: 8px 2px 14px;
}

.next-homepage .category-swiper .swiper-slide {
    min-height: 132px;
    padding: 14px 10px 10px;
    border: 1px solid transparent;
    border-radius: 16px;
    transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.next-homepage .category-swiper .swiper-slide:hover {
    transform: translateY(-3px);
    border-color: #d8eeee;
    background: #fbfefe;
    box-shadow: var(--next-shadow);
}

.next-homepage .category-swiper .swiper-slide img {
    width: 88px;
    height: 88px;
    object-fit: contain;
    transition: transform .2s ease;
}

.next-homepage .category-swiper .swiper-slide:hover img {
    transform: scale(1.05);
}

.next-homepage .category-swiper .swiper-slide b {
    color: var(--next-ink);
    font-size: 12px;
    font-weight: 700;
}

.next-homepage .next-sale-shell {
    padding: 10px;
    border-radius: var(--next-radius);
    background: linear-gradient(135deg, #fff7f7 0%, #fff 70%);
    border: 1px solid #f4dddd;
    box-shadow: var(--next-shadow);
}

.next-homepage .next-section-head {
    min-height: 64px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.next-homepage .next-section-title-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.next-homepage .next-section-icon {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    color: #fff;
    background: var(--next-danger);
}

.next-homepage .next-section-icon-soft {
    color: var(--next-primary);
    background: #e9fafa;
}

.next-homepage .next-section-icon i {
    font-size: 14px;
}

.next-homepage .slider-title {
    color: var(--next-ink);
    font-size: 17px;
    line-height: 1.5;
    font-weight: 800;
}

.next-homepage .next-section-subtitle {
    display: block;
    margin-top: 2px;
    color: var(--next-muted);
    font-size: 11px;
    line-height: 1.5;
}

.next-homepage .next-see-all {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    flex: 0 0 auto;
    color: var(--next-primary) !important;
    font-size: 12px;
    font-weight: 800;
    transition: gap .2s ease, color .2s ease;
}

.next-homepage .next-see-all:hover {
    color: var(--next-primary-dark) !important;
    gap: 8px;
}

.next-homepage .next-see-all i {
    font-size: 10px;
}

.next-homepage .saleSwiper,
.next-homepage .productSwiper {
    padding: 4px 4px 12px;
}

.next-homepage .next-product-section,
.next-homepage .next-brands,
.next-homepage .next-magazine {
    overflow: hidden;
    border: 1px solid var(--next-border) !important;
    border-radius: var(--next-radius);
    background: var(--next-surface);
    box-shadow: var(--next-shadow);
}

.next-homepage .next-product-card,
.next-homepage .next-sale-card {
    height: auto;
    min-height: 300px;
    padding: 10px 10px 12px;
    border: 0 !important;
    border-left: 1px solid var(--next-border) !important;
    background: #fff;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.next-homepage .next-product-card:hover,
.next-homepage .next-sale-card:hover {
    z-index: 2;
    transform: translateY(-4px);
    background: #fff;
    box-shadow: var(--next-shadow-hover);
}

.next-homepage .next-product-card img,
.next-homepage .next-sale-card img {
    width: 100%;
    height: 190px;
    object-fit: contain;
    padding: 8px;
    transition: transform .25s ease;
}

.next-homepage .next-product-card:hover img,
.next-homepage .next-sale-card:hover img {
    transform: scale(1.035);
}

.next-homepage .next-product-title {
    display: -webkit-box !important;
    overflow: hidden;
    min-height: 44px;
    margin: 6px 0 8px !important;
    color: #273538 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.85 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.next-homepage .next-price {
    color: var(--next-primary) !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    line-height: 1.6 !important;
}

.next-homepage .next-old-price {
    color: #9aa5a7 !important;
    font-size: 10px !important;
}

.next-homepage .next-discount-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    min-height: 28px;
    padding: 4px 7px;
    background: #fff0f0 !important;
    color: var(--next-danger) !important;
    font-size: 11px;
    border: 1px solid #ffdada;
}

.next-homepage .next-discount-badge span {
    color: var(--next-danger) !important;
}

.next-homepage .swiper-button-next,
.next-homepage .swiper-button-prev {
    width: 34px;
    height: 34px;
    margin-top: -17px;
    border: 1px solid var(--next-border);
    border-radius: 50%;
    background: rgba(255,255,255,.96);
    box-shadow: 0 6px 18px rgba(0,0,0,.08);
    color: var(--next-ink);
}

.next-homepage .swiper-button-next:after,
.next-homepage .swiper-button-prev:after {
    font-size: 12px;
    font-weight: 900;
}

.next-homepage .next-banners {
    gap: 12px;
}

.next-homepage .next-banners > a {
    overflow: hidden;
    border-radius: var(--next-radius);
}

.next-homepage .next-banners img {
    display: block;
    transition: transform .35s ease;
}

.next-homepage .next-banners a:hover img {
    transform: scale(1.02);
}

.next-homepage .next-brand-card {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100px;
    border-left: 1px solid var(--next-border) !important;
    transition: background .2s ease, transform .2s ease;
}

.next-homepage .next-brand-card:hover {
    background: #fbfefe;
}

.next-homepage .next-mag-card {
    overflow: hidden;
    border-color: var(--next-border) !important;
    transition: transform .2s ease, background .2s ease;
}

.next-homepage .next-mag-card img {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    object-fit: cover;
    transition: transform .3s ease;
}

.next-homepage .next-mag-card:hover img {
    transform: scale(1.035);
}

.next-homepage .next-mag-card p {
    min-height: 52px;
    margin: 0 !important;
    padding: 10px !important;
    border-top: 0 !important;
    color: var(--next-ink);
    font-size: 12px;
    line-height: 1.8;
}

.next-homepage .next-seo-section {
    border: 1px solid var(--next-border);
    color: var(--next-muted);
    background: var(--next-surface-soft) !important;
    border-radius: var(--next-radius) !important;
}

.next-homepage .next-seo-section h1,
.next-homepage .next-seo-section h2,
.next-homepage .next-seo-section h3 {
    color: var(--next-ink);
}

.next-homepage .next-seo-section h1 {
    font-size: 21px;
}

.next-homepage .next-seo-section h2 {
    font-size: 16px;
}

.next-homepage .next-seo-section p {
    color: #647477;
}

@media (max-width: 767.98px) {
    .next-homepage .next-section {
        margin-bottom: 18px !important;
    }

    .next-homepage .next-hero {
        border-radius: 0 0 16px 16px;
    }

    .next-homepage .next-categories {
        padding-top: 2px;
    }

    .next-homepage .category-swiper .swiper-slide {
        min-height: 108px;
        padding: 8px 6px;
        border-radius: 14px;
    }

    .next-homepage .category-swiper .swiper-slide img {
        width: 64px;
        height: 64px;
    }

    .next-homepage .next-section-head {
        min-height: 56px;
        padding: 12px !important;
    }

    .next-homepage .slider-title {
        font-size: 14px;
    }

    .next-homepage .next-section-subtitle {
        font-size: 9px;
    }

    .next-homepage .next-section-icon {
        width: 32px;
        height: 32px;
        flex-basis: 32px;
        border-radius: 10px;
    }

    .next-homepage .next-see-all {
        font-size: 10px;
    }

    .next-homepage .next-product-card,
    .next-homepage .next-sale-card {
        min-height: 275px;
        padding: 7px;
    }

    .next-homepage .next-product-card img,
    .next-homepage .next-sale-card img {
        height: 140px;
    }

    .next-homepage .next-product-title {
        min-height: 43px;
        font-size: 11px !important;
    }

    .next-homepage .next-price {
        font-size: 12px !important;
    }

    .next-homepage .swiper-button-next,
    .next-homepage .swiper-button-prev {
        display: none;
    }

    .next-homepage .next-sale-shell {
        padding: 6px;
        border-radius: 16px;
    }

    .next-homepage .next-banners > a {
        margin-bottom: 8px;
    }

    .next-homepage .next-brand-card {
        min-height: 78px;
        padding: 10px !important;
    }

    .next-homepage .next-mag-card p {
        min-height: 64px;
        font-size: 11px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .next-homepage *,
    .next-homepage *::before,
    .next-homepage *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}


/* =========================================================
   NextKala homepage grid — one shared Bootstrap-style container
   Hero is full-bleed. Every section below uses the exact same width.
   ========================================================= */
.next-homepage {
    --next-content-gutter: 12px;
}

.next-homepage .next-home-content {
    width: calc(100% - (var(--next-content-gutter) * 2));
    max-width: 1320px;
    margin-inline: auto;
    padding: 0 !important;
    box-sizing: border-box;
}

/* Every homepage section is locked to the content column. */
.next-homepage .next-home-content > * {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box;
}

/* Remove Bootstrap row gutters only inside the homepage content. */
.next-homepage .next-home-content .row {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    --bs-gutter-x: 0;
}

/* Swiper must never calculate a viewport-sized box. */
.next-homepage .next-home-content .swiper,
.next-homepage .next-home-content .swiper-container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box;
}

.next-homepage .next-product-section,
.next-homepage .next-brands,
.next-homepage .next-magazine,
.next-homepage .next-seo-section,
.next-homepage .next-sale,
.next-homepage .next-banners {
    width: 100% !important;
    max-width: 100% !important;
}

/* Promo banners stay inside the same grid. */
.next-homepage .next-banners {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.next-homepage .next-banners > a {
    flex: 1 1 calc(50% - 6px);
    width: calc(50% - 6px) !important;
    max-width: calc(50% - 6px) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Only the hero is full width. */
.next-homepage > .next-hero {
    width: 100% !important;
    max-width: none !important;
    margin-inline: 0 !important;
}

/* Match Bootstrap container breakpoints so all sections line up. */
@media (min-width: 576px) {
    .next-homepage .next-home-content { max-width: 540px; }
}

@media (min-width: 768px) {
    .next-homepage .next-home-content { max-width: 720px; }
}

@media (min-width: 992px) {
    .next-homepage .next-home-content { max-width: 960px; }
}

@media (min-width: 1200px) {
    .next-homepage .next-home-content { max-width: 1140px; }
}

@media (min-width: 1400px) {
    .next-homepage .next-home-content { max-width: 1320px; }
}

@media (max-width: 767.98px) {
    .next-homepage {
        --next-content-gutter: 10px;
    }

    .next-homepage .next-banners > a {
        flex-basis: 100%;
        width: 100% !important;
        max-width: 100% !important;
    }
}

header {
    position: relative;
    z-index: 1000;
    background: #fff;
    color: var(--color-text, #5a5c7a);
    border-bottom: 1px solid #eef2f4;
}

header .desktop {
    max-width: 1440px;
    margin-inline: auto;
    padding: 10px 24px 0 !important;
}

header .desktop > .d-flex:first-child {
    min-height: 58px;
    margin-inline: 0 !important;
    gap: 24px;
}


header .desktop .mainlogo {
    margin: 0 0 0 18px !important;
}

header .desktop [class*="fibosearch"],
header .desktop .dgwt-wcas-search-wrapp {
    flex: 1 1 520px;
    max-width: 680px;
    margin: 0 auto;
}

header .dgwt-wcas-search-form {
    margin: 0;
}

header .dgwt-wcas-search-input {
    height: 44px !important;
    border: 1px solid #e7ecef !important;
    border-radius: 13px !important;
    background: #f7f9fa !important;
    box-shadow: none !important;
    color: #30343b !important;
    font-family: iranyekan, sans-serif !important;
    font-size: 12px !important;
    padding-inline: 48px 16px !important;
    transition: .2s ease;
}

header .dgwt-wcas-search-input:focus {
    border-color: rgba(0, 186, 186, .45) !important;
    background: #fff !important;
    box-shadow: 0 0 0 4px rgba(0, 186, 186, .08) !important;
}

header .dgwt-wcas-search-submit {
    min-width: 42px !important;
    width: 42px !important;
    height: 42px !important;
    border-radius: 11px !important;
}

header .desktop > .d-flex:first-child > .d-flex:last-child {
    gap: 8px;
    flex: 0 0 auto;
}

header .accountBtn,
header .cartBtn {
    height: 42px;
    border: 1px solid #e8edef;
    border-radius: 12px;
    background: #fff;
    color: #3d4148;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: .2s ease;
}

header .accountBtn {
    padding: 0 14px;
    min-width: 42px;
    gap: 7px;
    font-size: 11px;
}

header .cartBtn {
    width: 42px;
    font-size: 18px;
    position: relative;
}

header .accountBtn:hover,
header .cartBtn:hover {
    color:#fff;
    border-color: var(--next-primary) ;
    background: var(--next-primary) ;
    transform: translateY(-1px);
}

header .cart_total {
    top: -5px;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    border-radius: 999px;
    background: #c62828 !important;
    color: #fff;
    font-size: 9px;
    font-weight: 800;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
    border: 2px solid #fff;
}

/* Main navigation */

header .desktop > .d-flex:last-child {
    min-height: 48px;
    margin-top: 6px !important;
    padding: 0 !important;
    border-top: 1px solid #f1f3f4;
}

header .desktop > .d-flex:last-child > .d-flex:first-child {
    gap: 4px;
}

header .rootLink {
    position: relative;
}

header .main-menu-item {
    min-height: 42px;
    margin: 0 !important;
    padding: 0 13px;
    color: #40444a !important;
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
    border-radius: 9px;
    transition: .2s ease;
}

header .main-menu-item .rotate {
    transform: rotate(-90deg);
    transition: transform .2s ease;
}

header .main-menu-item:hover {
    color: var(--primary, #00baba) !important;
    background: #f3ffff;
}

header .rootLink:hover .main-menu-item .rotate {
    transform: rotate(90deg);
}

header .desktop > .d-flex:last-child > .d-flex:last-child .badge {
    background: #c62828 !important;
    border: 0;
    padding: 8px 13px !important;
    font-size: 10px;
    box-shadow: none;
    transition: .2s ease;
}

header .desktop > .d-flex:last-child > .d-flex:last-child .badge:hover {
    transform: translateY(-1px);
}

/* Mega menu */

header .level1 {
    top: calc(100% + 5px);
    right: 0;
    min-width: 230px;
    max-width: 720px;
    padding: 16px !important;
    border: 1px solid #e8eef0;
    border-radius: 14px;
    background: #fff !important;
    box-shadow: 0 18px 45px rgba(26, 42, 49, .12);
    z-index: 1100;
}

header .rootLink:hover .level1 {
    display: flex !important;
}

header .level1 > a {
    color: #34383e !important;
    font-size: 12px;
    padding: 8px 10px;
    margin: 0 !important;
    border-radius: 8px;
    transition: .15s ease;
}

header .level1 > a:hover {
    color: var(--primary, #00baba) !important;
    background: #f3ffff;
}

header .level2 {
    padding: 2px 8px 8px;
}

header .level2 .child-link {
    color: #727982 !important;
    font-size: 11px;
    line-height: 1.8;
    border-radius: 6px;
    transition: .15s ease;
}

header .level2 .child-link:hover {
    color: var(--primary) !important;
    background: #f7fbfb;
}

/* ---------- Mobile Header ---------- */

header .mobileview {
    background: #fff;
    border-bottom: 1px solid #eef2f4;
}

header .mobileview .navbar {
    min-height: 62px;
    padding: 9px 12px;
    background: #fff !important;
}

header .mobileview .navbar > .d-flex {
    gap: 8px;
}

header .mobileview .mainlogo {
    width: auto;
    height: 32px;
    max-width: 145px;
}

header .navbar-toggler {
    width: 40px;
    height: 40px;
    padding: 0;
    border: 1px solid #e8edef;
    border-radius: 11px;
    color: #333 !important;
    background: #fff !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: none !important;
}

header .navbar-toggler .icon-bars {
    font-size: 18px;
}

header .mobileview .accountBtn,
header .mobileview .cartBtn {
    width: 39px;
    min-width: 39px;
    height: 39px;
    padding: 0;
    border-radius: 10px;
    font-size: 16px;
}

header .mobileview .accountBtn {
    font-size: 0;
}

header .mobileview .accountBtn .icon-user {
    font-size: 16px;
}

#mobileSearch {
    transition: transform 0.3s ease, opacity 0.3s ease;
    will-change: transform, opacity;
}

#mobileSearch.is-hidden {
    opacity: 0;
    transform: translateY(-100%);
    pointer-events: none;
}

/* Mobile offcanvas */

header .offcanvas {
    width: min(88vw, 360px);
    background: #fff !important;
    color: #34383e !important;
    border-left: 1px solid #e8edef;
}

header .offcanvas-header {
    min-height: 66px;
    padding: 12px 16px;
    background: #fff !important;
    border-bottom: 1px solid #eef2f4;
}

header .offcanvas-header .mainlogo {
    height: 32px;
    max-width: 145px;
}

header .offcanvas-header a[href^="tel"] {
    color: var(--primary, #00baba);
    font-size: 11px;
}

header .offcanvas-body {
    padding: 10px !important;
    background: #fff;
}

header .accordion-item {
    border: 0;
    border-bottom: 1px solid #f0f2f3;
    background: transparent;
}

header .accordion-button {
    min-height: 48px;
    padding: 10px 8px !important;
    color: #353a40 !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 12px;
}

header .accordion-button:not(.collapsed) {
    color: var(--primary, #00baba) !important;
}

header .accordion-button::after {
    background-size: 12px;
}

header .accordion-body {
    padding: 3px 8px 12px !important;
}

header .accordion-body > a {
    color: #555c63 !important;
    font-size: 11px;
    padding: 7px 10px !important;
    border-radius: 7px;
}

header .accordion-body > a:hover {
    color: var(--primary, #00baba) !important;
    background: #f3ffff;
}

@media (min-width: 768px) {
    header {
        position: relative;
    }
}

@media (max-width: 991.98px) and (min-width: 768px) {
    header .desktop {
        padding-inline: 16px !important;
    }

    header .desktop .mainlogo {
        max-width: 155px;
        height: 32px;
    }

    header .desktop [class*="fibosearch"],
    header .desktop .dgwt-wcas-search-wrapp {
        max-width: 440px;
    }

    header .main-menu-item {
        padding-inline: 8px;
        font-size: 10px;
    }
}

/* ---------- Footer ---------- */

footer {
    width: 100%;
    margin-top: 48px;
    padding: 0 !important;
    background: #242729;
    color: #d9dee0;
    border-radius: 22px 22px 0 0;
    overflow: hidden;
}

footer > .container {
    max-width: 1280px;
    padding: 38px 24px 28px;
}

footer .footer-logo {
    width: auto;
    height: 38px;
    max-width: 175px;
    object-fit: contain;
}

footer > .container > .d-flex:first-child {
    min-height: 58px;
    padding-bottom: 22px !important;
    border-bottom: 1px solid rgba(255,255,255,.12) !important;
}

footer #go-up {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 92px;
    height: 38px;
    padding: 0 14px !important;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 10px !important;
    background: rgba(255,255,255,.08) !important;
    color: #fff;
    font-size: 10px;
    cursor: pointer;
    transition: .2s ease;
}

footer #go-up:hover {
    color: var(--primary, #00baba);
    border-color: rgba(0,186,186,.4);
    background: rgba(0,186,186,.08) !important;
    transform: translateY(-1px);
}

footer > .container > .row {

    --bs-gutter-x: 28px;
    --bs-gutter-y: 30px;
}

footer > .container > .row > [class*="col-"] {
    padding-inline: 14px;
}

footer p {
    color: #aeb6ba;
    font-size: 11px;
    line-height: 2;
}

footer .col-md-4 > .d-flex:first-child {
    margin-bottom: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid rgba(255,255,255,.08);
}

footer .col-md-4 > .d-flex:first-child p {
    margin: 0;
    color: #f3f5f6;
    font-size: 11px;
    font-weight: 700;
}

footer .col-md-4 > .d-flex:first-child p:last-child {
    color: var(--primary, #00baba);
    direction: ltr;
}

footer .license {
    min-height: 70px;
    gap: 10px;
    margin-top: 16px;
    border: 1px solid rgba(255,255,255,.1) !important;
    background: rgba(255,255,255,.04);
}

footer .license img {
    width: 48px;
    height: 48px;
    object-fit: contain;
}

footer .social-icons {
    gap: 8px;
    min-height: 42px;
    margin-top: 10px !important;
    background: transparent !important;
    justify-content: flex-start !important;
}

footer .social-icons a {
    width: 38px;
    height: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 10px;
    background: rgba(255,255,255,.04);
    color: #dbe1e3;
    font-size: 16px;
    transition: .2s ease;
}

footer .social-icons a:hover {
    color: var(--primary, #00baba);
    border-color: rgba(0,186,186,.35);
    background: rgba(0,186,186,.08);
    transform: translateY(-2px);
}

footer .col-md-2 > p {
    position: relative;
    margin: 0 0 14px;
    padding-bottom: 10px;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}

footer .col-md-2 > p::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 28px;
    height: 2px;
    border-radius: 99px;
    background: var(--primary, #00baba);
}

footer .footerMenu ul,
footer .footerMenu .menu {
    gap: 2px;
}

footer .footerMenu li {
    width: 100%;
    margin: 0;
}

footer .footerMenu a {
    display: block;
    width: 100%;
    padding: 6px 0;
    color: #9ea8ad !important;
    font-size: 10px;
    line-height: 1.8;
    transition: .18s ease;
}

footer .footerMenu a:hover {
    color: var(--primary, #00baba) !important;
    transform: translateX(-3px);
}

.next-footer-copyright { margin-top: 35px; padding: 20px 0 5px; text-align: center; } .next-footer-copyright-line { width: 55px; height: 3px; margin: 0 auto 16px; border-radius: 10px; background: #4366B0; opacity: .85; } .next-footer-copyright-text { margin: 0; font-size: 13px; line-height: 1.8; color: #8a8f98; } .next-footer-copyright-text a { display: inline-block; margin-right: 4px; color: #4366B0; font-weight: 700; text-decoration: none; transition: all .25s ease; } .next-footer-copyright-text a:hover { color: #2f4f8f; transform: translateY(-1px); } .next-footer-heart { display: inline-block; margin: 0 3px; color: #e25555; font-size: 12px; animation: next-footer-heartbeat 1.8s ease-in-out infinite; } @keyframes next-footer-heartbeat { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.15); } } @media (max-width: 576px) { .next-footer-copyright { margin-top: 25px; padding-top: 18px; } .next-footer-copyright-text { font-size: 12px; } }
/* Footer responsive */

@media (max-width: 767.98px) {
    footer {
        margin-top: 28px;
        border-radius: 18px 18px 0 0;
    }

    footer > .container {
        padding: 28px 16px 22px;
    }

    footer > .container > .d-flex:first-child {
        min-height: 52px;
        padding-bottom: 18px !important;
    }

    footer .footer-logo {
        height: 32px;
        max-width: 145px;
    }

    footer #go-up {
        min-width: 78px;
        height: 34px;
        font-size: 9px;
    }

    footer > .container > .row {
        padding-top: 22px !important;
        --bs-gutter-x: 0;
        --bs-gutter-y: 18px;
    }

    footer > .container > .row > .col-md-4 {
        width: 100%;
        padding-inline: 0;
    }

    footer .col-md-4 p {
        font-size: 10px;
        line-height: 1.9;
    }

    footer .license {
        margin-top: 12px;
    }

    footer .social-icons {
        justify-content: flex-start !important;
    }
}

/* Prevent this header/footer stylesheet from changing Front Page layout */
.next-homepage,
.next-homepage .container,
.next-homepage .row,
.next-homepage .swiper,
.next-homepage .swiper-wrapper,
.next-homepage .swiper-slide {
    /* intentionally untouched */
}

.next-footer-heading {
    position: relative;
    margin: 0 0 14px;
    padding-bottom: 10px;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}

.next-footer-heading::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 28px;
    height: 2px;
    border-radius: 99px;
    background: var(--primary, #00baba);
}

footer .col-md-2 > p {
    position: relative;
    margin: 0 0 14px;
    padding-bottom: 10px;
    color: #fff;
    font-size: 12px;
    font-weight: 800;
}

footer .col-md-2 > p::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 28px;
    height: 2px;
    border-radius: 99px;
    background: var(--primary, #00baba);




}


/* ==========================================================================
   Product page visual alignment
   IMPORTANT: .next-product-page is intentionally NOT styled.
   It remains a normal Bootstrap .row so the existing product layout is unchanged.
   ========================================================================== */

/* Related products: same visual language as the homepage product cards */
.next-product-related .relatedSwiper {
    background: #fff;
    border: 0 !important;
    border-radius: 16px !important;
    padding: 10px 6px;
    box-shadow: 0 4px 18px rgba(31, 52, 58, 0.07);
    overflow: hidden;
}

.next-product-related > p {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 10px !important;
    font-size: 16px;
    font-weight: 900 !important;
}

.next-product-related > p::before {
    content: "";
    width: 5px;
    height: 22px;
    display: inline-block;
    border-radius: 6px;
    background: var(--primary);
}

.next-product-related .relatedSwiper .swiper-slide {
    background: #fff;
    border: 0 !important;
    border-radius: 12px;
    padding: 8px !important;
    overflow: hidden;
    transition: transform .2s ease, box-shadow .2s ease;
}

.next-product-related .relatedSwiper .swiper-slide:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 22px rgba(31, 52, 58, 0.10);
}

.next-product-related .relatedSwiper .swiper-slide > img {
    display: block;
    width: 100%;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    border-radius: 10px;
    background: #fff;
}

.next-product-related .relatedSwiper .slidePrice {
    min-height: 0;
    padding-top: 4px;
}

.next-product-related .relatedSwiper .slidePrice p,
.next-product-related .relatedSwiper .slidePrice b {
    font-size: 12px;
}

.next-product-related .relatedSwiper .swiper-slide > p {
    color: #4c5e60;
    line-height: 1.7rem;
    min-height: 42px;
}

.next-product-related .relatedSwiper .theme-badge {
    background: #e53935 !important;
    color: #fff;
}

.next-product-related .relatedSwiper .text-danger {
    color: #e53935 !important;
}

.next-product-related .relatedSwiper .swiper-button-next,
.next-product-related .relatedSwiper .swiper-button-prev {
    width: 30px;
    height: 30px;
    background: #fff;
    border-radius: 50%;
    box-shadow: 0 3px 10px rgba(0,0,0,.10);
}

.next-product-related .relatedSwiper .swiper-button-next::after,
.next-product-related .relatedSwiper .swiper-button-prev::after {
    font-size: 11px;
    color: var(--primary);
}

/* Description / review / comments tabs */
.next-product-tabs {
    margin-top: 18px !important;
    background: #fff;
    border-radius: 16px;
    padding: 0 !important;
    overflow: hidden;
    box-shadow: 0 4px 18px rgba(31, 52, 58, 0.06);
}

.next-product-tabs > div:first-child {
    display: flex;
    align-items: center;
    gap: 0;
    padding: 0 !important;
    background: #f3fcfb;
    border-radius: 16px 16px 0 0;
    border: 1px solid #e3f1f0;
}

.next-product-tabs > div:first-child a {
    display: block;
    position: relative;
    margin: 0 !important;
    padding: 14px 20px;
    color: #4c5e60;
    font-size: 13px;
    font-weight: 800;
    transition: color .2s ease, background .2s ease;
}

.next-product-tabs > div:first-child a:hover {
    color: var(--primary);
    background: rgba(0,186,186,.08);
}

.next-product-tabs > div:first-child a:first-child {
    color: var(--primary);
}

.next-product-tabs > div:first-child a:first-child::after {
    content: "";
    position: absolute;
    right: 18px;
    left: 18px;
    bottom: 0;
    height: 3px;
    border-radius: 4px 4px 0 0;
    background: var(--primary);
}

.next-product-tabs > .alert-info {
    border: 1px solid #d9eeee !important;
    border-radius: 10px !important;
    background: #f7fcfc !important;
    color: #4c5e60 !important;
}

.next-product-tabs > .alert-info p {
    margin: 0;
}

/* Product description */
.next-product-description {
    height: auto !important;
    min-height: 0;
    margin-top: 18px !important;
    padding: 24px !important;
    background: #fff;
    border: 1px solid #edf1f1;
    border-radius: 16px;
    box-shadow: 0 4px 18px rgba(31, 52, 58, 0.05);
    text-align: justify;
    line-height: 2rem;
}

.next-product-description p,
.next-product-description li {
    line-height: 2rem;
}

.next-product-description h2,
.next-product-description h3,
.next-product-description h4 {
    margin-top: 18px;
    margin-bottom: 10px;
    color: #36484b;
    font-weight: 900;
}

.next-product-description img {
    max-width: 100%;
    height: auto;
    border-radius: 10px;
}

/* Reviews / comments */
.next-product-reviews {
    margin-top: 18px !important;
    padding: 24px !important;
    background: #fff;
    border: 1px solid #edf1f1;
    border-radius: 16px;
    box-shadow: 0 4px 18px rgba(31, 52, 58, 0.05);
}

.next-product-reviews #reviews,
.next-product-reviews .woocommerce-Reviews {
    width: 100%;
}

.next-product-reviews .comment-reply-title,
.next-product-reviews .woocommerce-Reviews-title {
    font-size: 16px;
    font-weight: 900;
    color: #36484b;
}

.next-product-reviews ol.commentlist {
    padding: 0;
    margin: 0 0 20px;
}

.next-product-reviews ol.commentlist li {
    list-style: none;
    padding: 15px 0;
    border-bottom: 1px solid #edf1f1;
}

.next-product-reviews .comment-text {
    border: 0 !important;
    padding: 0 !important;
}

.next-product-reviews .comment-form input,
.next-product-reviews textarea#comment {
    width: 100%;
    background: #fff;
    border: 1px solid #dfe8e8;
    border-radius: 9px;
    padding: 9px 12px;
    outline: none;
}

.next-product-reviews .comment-form input:focus,
.next-product-reviews textarea#comment:focus {
    border-color: var(--primary);
    box-shadow: 0 0 0 3px rgba(0,186,186,.10);
}

.next-product-reviews input#submit {
    background: var(--primary);
    color: #fff;
    border: 0;
    border-radius: 9px;
    padding: 10px 22px;
    font-family: iranyekan, sans-serif;
    cursor: pointer;
}

.next-product-reviews .comment-form-author,
.next-product-reviews .comment-form-email {
    gap: 10px;
}

@media only screen and (max-width: 570px) {
    .next-product-related .relatedSwiper {
        border-radius: 12px !important;
        padding: 6px 2px;
    }

    .next-product-related > p {
        font-size: 14px;
    }

    .next-product-tabs > div:first-child {
        overflow-x: auto;
        white-space: nowrap;
    }

    .next-product-tabs > div:first-child a {
        padding: 12px 14px;
        font-size: 12px;
    }

    .next-product-description,
    .next-product-reviews {
        padding: 14px !important;
        border-radius: 12px;
    }

    .next-product-reviews .comment-form-author,
    .next-product-reviews .comment-form-email {
        flex-direction: column;
        align-items: stretch;
    }
}


/* ==========================================================================
   PRODUCT HERO / TOP AREA — V4
   Only the existing .next-product-page block is restyled.
   The .next-product-page element itself keeps Bootstrap .row behavior.
   ========================================================================== */

.next-product-page {
    --product-border: var(--next-border, #e9eff0);
    --product-surface: var(--next-surface, #fff);
    --product-soft: var(--next-surface-soft, #f7fafb);
    --product-ink: var(--next-ink, #172326);
    --product-primary: var(--next-primary, #00baba);
    --product-shadow: var(--next-shadow, 0 10px 30px rgba(23,35,38,.06));

    /* Do not set display/flex/grid/margin/padding/width here. */
}

/* Three existing Bootstrap columns become independent homepage-style cards. */
.next-product-page > .col-md-3,
.next-product-page > .col-md-6 {
    min-width: 0;
}

/* Product image card */
.next-product-page > .col-md-3:first-child {
    padding: 14px;
    background: var(--product-surface);
    border: 1px solid var(--product-border);
    border-radius: 18px;
    box-shadow: var(--product-shadow);
}

.next-product-page > .col-md-3:first-child > img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 300px;
    max-height: 420px;
    object-fit: contain;
    padding: 12px;
    border: 0 !important;
    border-radius: 14px !important;
    background: #fff;
}

.next-product-page .actions {
    margin-top: 12px !important;
    padding: 7px;
    border: 1px solid var(--product-border);
    border-radius: 12px;
    background: var(--product-soft);
    gap: 6px;
}

.next-product-page .actions span {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid var(--product-border);
    border-radius: 9px;
    background: #fff;
    box-shadow: none;
    transition: transform .2s ease, border-color .2s ease, color .2s ease;
}

.next-product-page .actions span:hover {
    transform: translateY(-2px);
    border-color: #cfe8e8;
    color: var(--product-primary);
}

/* Main product information card */
.next-product-page > .col-md-6 {
    padding: 18px 22px;
    background: var(--product-surface);
    border: 1px solid var(--product-border);
    border-radius: 18px;
    box-shadow: var(--product-shadow);
}

.next-product-page .productTitle {
    margin: 0 !important;
    color: var(--product-ink);
    font-size: 19px;
    font-weight: 900;
    line-height: 1.9;
    text-transform: none;
}

.next-product-page .brandIcon {
    max-width: 92px;
    height: 38px;
    width: auto;
    object-fit: contain;
    margin-right: 12px;
}

.next-product-page .productEnglish {
    color: #9aa5a7;
    font-size: 10px;
    line-height: 1.8;
    letter-spacing: .2px;
}

.next-product-page .lineDevider {
    background: var(--product-border);
}

.next-product-page .col-md-6 > .d-flex > .d-flex:first-child {
    padding-bottom: 12px;
    border-bottom: 1px solid var(--product-border);
}

.next-product-page .col-md-6 b.my-2 {
    display: block;
    margin: 15px 0 8px !important;
    color: var(--product-ink);
    font-size: 13px;
    font-weight: 900;
}

.next-product-page .productSinglExcerpt {
    padding: 10px 12px;
    border: 1px solid var(--product-border);
    border-radius: 12px;
    background: var(--product-soft);
}

.next-product-page .productSinglExcerpt ul {
    margin: 0;
}

.next-product-page .productSinglExcerpt ul li {
    min-height: 30px;
    align-items: center;
    gap: 5px;
    border-bottom: 1px solid #edf2f2;
    color: #536466;
    font-size: 11px;
}

.next-product-page .productSinglExcerpt ul li:last-child {
    border-bottom: 0;
}

.next-product-page .productSinglExcerpt ul li b {
    margin: 0 !important;
    color: var(--product-ink);
    font-size: 11px;
}

.next-product-page .productSinglExcerpt ul li p {
    margin: 0 !important;
    font-size: 11px;
}

/* Return notice */
.next-product-page .alertText {
    margin-top: 12px !important;
    padding: 8px 10px;
    border-radius: 10px;
    background: #fff9eb;
    color: #687476;
    line-height: 1.8;
}

/* Four service advantages */
.next-product-page .nextAdvantage {
    margin-top: 10px !important;
    padding: 9px 6px !important;
    gap: 4px;
    border: 1px solid var(--product-border) !important;
    border-radius: 12px !important;
    background: var(--product-soft);
}

.next-product-page .nextAdvantage > span {
    flex: 1 1 25%;
    justify-content: center;
    gap: 3px;
    color: #596a6c;
    text-align: center;
    white-space: nowrap;
}

.next-product-page .nextAdvantage > span b {
    font-size: 9px;
    color: #596a6c;
}

.next-product-page .advIcons {
    flex: 0 0 auto;
    width: 28px;
    height: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    color: var(--product-primary);
    background: #e9fafa;
    border-radius: 50%;
}

/* Seller / purchase card */
.next-product-page > .col-md-3:last-child {
    padding: 0 14px;
}

.next-product-page > .col-md-3:last-child > .bg-secondry {
    min-height: 100%;
    padding: 18px !important;
    border: 1px solid #d7eeee;
    border-radius: 18px !important;
    background: linear-gradient(145deg, #e8fafa 0%, #ccf1f1 100%) !important;
    box-shadow: var(--product-shadow);
}

.next-product-page .price > b {
    display: block;
    margin-bottom: 4px;
    color: var(--product-ink);
    font-size: 13px;
    font-weight: 900;
}

.next-product-page .price .border-bottom {
    margin-bottom: 12px;
    padding: 8px !important;
    border-bottom: 1px solid #b9dddd !important;
}

.next-product-page .price .border-bottom span {
    color: #4c5e60;
    font-size: 11px;
    font-weight: 800;
}

.next-product-page .price .img-50 {
    width: 26px;
    height: 26px;
    padding: 3px;
    border-radius: 7px;
    background: #fff;
}

.next-product-page .regular-price {
    margin: 8px 0 14px !important;
    color: var(--product-primary) !important;
    font-size: 21px;
    font-weight: 900;
}

.next-product-page .sale-price {
    font-size: 10px;
}

.next-product-page .price .badge.bg-danger {
    align-self: center;
    padding: 5px 7px;
    border-radius: 7px;
    background: #fff0f0 !important;
    color: #e53935 !important;
    border: 1px solid #ffdada;
}

.next-product-page form.cart {
    margin-top: 10px;
}

.next-product-page input.qty {
    height: 40px;
    padding: 5px 8px;
    border: 1px solid #b8dddd;
    border-radius: 9px;
    background: #fff;
}

.next-product-page button.single_add_to_cart_button.button.alt,
.next-product-page button.single_add_to_cart_button.button.alt:hover {
    min-height: 40px;
    margin-right: 8px;
    border-radius: 9px;
    background: var(--product-primary);
    box-shadow: 0 7px 18px rgba(0,186,186,.18);
    font-weight: 800;
}

.next-product-page .report,
.next-product-page .error-desc {
    color: #617274;
    font-size: 9px;
}

.next-product-page .report:hover,
.next-product-page .error-desc:hover {
    color: var(--product-primary);
}

/* Banner immediately after the top block: keep its content, only give it the
   same clean spacing as homepage sections. */
.next-product-page + .row.p-0 {
    margin-top: 10px !important;
    margin-bottom: 10px !important;
}

.next-product-page + .row.p-0 img {
    display: block;
    width: 100%;
    border-radius: 14px !important;
    box-shadow: none !important;
}

/* Keep this correction isolated to product-page top area. */
@media (min-width: 768px) {
    .next-product-page {
        align-items: stretch;
    }

    .next-product-page > .col-md-3:first-child,
    .next-product-page > .col-md-6,
    .next-product-page > .col-md-3:last-child {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
}

@media (max-width: 767.98px) {
    .next-product-page > .col-md-3:first-child,
    .next-product-page > .col-md-6 {
        margin-bottom: 12px;
    }

    .next-product-page > .col-md-3:last-child {
        padding: 0 12px;
    }

    .next-product-page .productTitle {
        font-size: 16px;
    }

    .next-product-page > .col-md-3:first-child > img {
        min-height: 240px;
        max-height: 320px;
    }

    .next-product-page .nextAdvantage > span b {
        display: none;
    }

    .next-product-page .advIcons {
        width: 30px;
        height: 30px;
    }
}


/* ==========================================================================
   RELATED PRODUCTS — match the homepage product slider
   Same card/slider language as .next-homepage .next-product-section,
   but intentionally NO "See All / مشاهده بیشتر" action.
   ========================================================================== */

.next-related-section {
    width: 100%;
    overflow: hidden;
    border: 1px solid var(--next-border, #e9eff0) !important;
    border-radius: var(--next-radius, 16px);
    background: var(--next-surface, #fff);
    box-shadow: var(--next-shadow, 0 10px 30px rgba(23,35,38,.06));
}

.next-related-section .next-section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 58px;
    border-bottom: 1px solid var(--next-border, #e9eff0);
    background: #fff;
}

.next-related-section .next-section-title-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
}

.next-related-section .next-section-icon {
    width: 34px;
    height: 34px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 34px;
    border-radius: 10px;
    background: rgba(0,186,186,.10);
    color: var(--next-primary, #00baba);
}

.next-related-section .next-section-icon-soft {
    background: #effafa;
}

.next-related-section .next-section-icon i {
    font-size: 13px;
}

.next-related-section .slider-title {
    margin: 0 !important;
    color: var(--next-ink, #172326);
    font-size: 15px;
    font-weight: 900;
}

.next-related-section .next-section-subtitle {
    display: block;
    margin-top: 2px;
    color: #9aa5a7;
    font-size: 9px;
}

.next-related-section .relatedSwiper {
    width: 100%;
    max-width: 100%;
    padding: 4px 4px 12px;
    box-sizing: border-box;
}

.next-related-section .relatedSwiper .swiper-wrapper {
    align-items: stretch;
}

.next-related-section .next-product-card {
    height: auto;
    min-height: 300px;
    padding: 10px 10px 12px !important;
    border: 0 !important;
    border-left: 1px solid var(--next-border, #e9eff0) !important;
    background: #fff;
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

.next-related-section .next-product-card:hover {
    z-index: 2;
    transform: translateY(-4px);
    background: #fff;
    box-shadow: var(--next-shadow-hover, 0 14px 35px rgba(23,35,38,.10));
}

.next-related-section .next-product-card img {
    width: 100%;
    height: 190px;
    object-fit: contain;
    padding: 8px;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff;
    transition: transform .25s ease;
}

.next-related-section .next-product-card:hover img {
    transform: scale(1.035);
}

.next-related-section .next-product-title {
    display: -webkit-box !important;
    overflow: hidden;
    min-height: 44px;
    margin: 6px 0 8px !important;
    padding: 0 8px !important;
    color: #273538 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.85 !important;
    text-align: center;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.next-related-section .slidePrice {
    padding: 0 8px !important;
}

.next-related-section .slidePrice > .d-flex {
    padding: 8px 0 !important;
}

.next-related-section .next-price,
.next-related-section .slidePrice b {
    color: var(--next-primary, #00baba) !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    line-height: 1.6 !important;
}

.next-related-section .next-old-price {
    color: #9aa5a7 !important;
    font-size: 10px !important;
}

.next-related-section .next-discount-badge,
.next-related-section .theme-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    min-height: 28px;
    padding: 4px 7px;
    background: #fff0f0 !important;
    color: var(--next-danger, #e53935) !important;
    font-size: 11px;
    border: 1px solid #ffdada;
}

.next-related-section .next-discount-badge span,
.next-related-section .theme-badge span {
    color: var(--next-danger, #e53935) !important;
}

.next-related-section .swiper-button-next,
.next-related-section .swiper-button-prev {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #fff;
    box-shadow: 0 5px 16px rgba(23,35,38,.12);
}

.next-related-section .swiper-button-next::after,
.next-related-section .swiper-button-prev::after {
    font-size: 11px;
    font-weight: 900;
    color: var(--next-primary, #00baba);
}

/* Explicitly suppress any "See All / مشاهده بیشتر" element if one is
   introduced by a hook/template around this section. */
.next-related-section .next-see-all,
.next-related-section .related-see-all,
.next-related-section .show-more,
.next-related-section .see-more,
.next-related-section #showMore {
    display: none !important;
}

@media only screen and (max-width: 570px) {
    .next-related-section {
        border-radius: 12px;
    }

    .next-related-section .next-section-head {
        min-height: 52px;
        padding: 10px !important;
    }

    .next-related-section .next-section-icon {
        width: 30px;
        height: 30px;
        flex-basis: 30px;
    }

    .next-related-section .slider-title {
        font-size: 13px;
    }

    .next-related-section .next-section-subtitle {
        font-size: 8px;
    }

    .next-related-section .next-product-card {
        min-height: 275px;
        padding: 7px !important;
    }

    .next-related-section .next-product-card img {
        height: 160px;
    }

    .next-related-section .next-product-title {
        min-height: 43px;
        font-size: 11px !important;
    }

    .next-related-section .next-price,
    .next-related-section .slidePrice b {
        font-size: 12px !important;
    }

    .next-related-section .swiper-button-next,
    .next-related-section .swiper-button-prev {
        display: none;
    }
}
