/* =========================================================
   CUSTOM WOODMART SINGLE POST
   RESET + LAYOUT
========================================================= */

.altafi-single-article {
    direction: rtl;
    width: 100%;
    display: block !important;
    position: relative;
    box-sizing: border-box;
}

.altafi-single-article *,
.altafi-single-article *::before,
.altafi-single-article *::after {
    box-sizing: border-box;
}


/* =========================================================
   MAIN CONTAINER
========================================================= */

.altafi-single-article .altafi-container {
    width: calc(100% - 40px) !important;
    max-width: 1180px !important;
    min-width: 0 !important;

    margin-right: auto !important;
    margin-left: auto !important;

    padding: 0 !important;

    display: block !important;

    position: relative;
}


/* =========================================================
   HEADER
========================================================= */

.altafi-article-header {
    width: 100% !important;

    display: block !important;

    text-align: center;

    padding: 40px 0 25px !important;

    margin: 0 !important;
}


.altafi-article-category {
    width: 100%;

    margin: 0 0 15px !important;

    text-align: center;
}


.altafi-article-category a {
    display: inline-block !important;

    width: auto !important;

    padding: 6px 14px !important;

    margin: 3px !important;

    border-radius: 30px !important;

    background: #eef4ff !important;

    color: #2563eb !important;

    font-size: 13px !important;

    line-height: 1.6 !important;

    text-decoration: none !important;
}


/* =========================================================
   TITLE
========================================================= */

.altafi-single-article .altafi-article-title {
    display: block !important;

    width: 100% !important;

    max-width: 900px !important;

    margin: 0 auto 20px !important;

    padding: 0 !important;

    color: #111827 !important;

    font-size: 38px !important;

    line-height: 1.6 !important;

    font-weight: 800 !important;

    text-align: center !important;

    float: none !important;
}


/* =========================================================
   META
========================================================= */

.altafi-article-meta {
    width: 100% !important;

    display: flex !important;

    flex-direction: row !important;

    flex-wrap: wrap !important;

    justify-content: center !important;

    align-items: center !important;

    gap: 14px !important;

    margin: 0 !important;

    padding: 0 !important;

    color: #64748b !important;

    font-size: 13px !important;
}


.altafi-meta-item {
    display: flex !important;

    align-items: center !important;

    gap: 7px !important;

    width: auto !important;

    margin: 0 !important;

    padding: 0 !important;

    color: #64748b !important;

    font-size: 13px !important;
}


.altafi-meta-item strong {
    color: #334155 !important;
}


.altafi-meta-icon {
    width: 18px !important;
    height: 18px !important;

    display: inline-flex !important;

    align-items: center !important;
    justify-content: center !important;
}


.altafi-meta-icon svg {
    width: 16px !important;
    height: 16px !important;

    fill: currentColor !important;
}


.altafi-meta-separator {
    width: 4px !important;
    height: 4px !important;

    flex: 0 0 4px !important;

    border-radius: 50% !important;

    background: #cbd5e1 !important;
}


/* =========================================================
   FEATURED IMAGE
========================================================= */

.altafi-featured-image {
    width: 100% !important;

    display: block !important;

    margin: 0 0 35px !important;

    padding: 0 !important;

    overflow: hidden !important;

    border-radius: 18px !important;

    position: relative;
}


.altafi-featured-image img {
    display: block !important;

    width: 100% !important;

    max-width: 100% !important;

    height: auto !important;

    max-height: 600px !important;

    margin: 0 !important;

    padding: 0 !important;

    object-fit: cover !important;
}


/* =========================================================
   TWO COLUMN LAYOUT
========================================================= */

.altafi-article-layout {
    width: 100% !important;

    display: grid !important;

    grid-template-columns: minmax(0, 1fr) 320px !important;

    gap: 28px !important;

    align-items: start !important;

    direction: ltr !important;

    margin: 0 !important;

    padding: 0 !important;
}


/*
   We use LTR only for column positioning:
   article = left
   sidebar = right
*/

.altafi-article-content {
    direction: rtl;

    grid-column: 1;

    min-width: 0 !important;

    width: 100% !important;

    display: block !important;

    margin: 0 !important;

    padding: 0 !important;

    float: none !important;

    color: #334155 !important;

    font-size: 16px !important;

    line-height: 2.2 !important;
}


.altafi-article-sidebar {
    direction: rtl;

    grid-column: 2;

    min-width: 0 !important;

    width: 100% !important;

    display: block !important;

    position: sticky !important;

    top: 160px !important;

    align-self: start !important;

    margin: 0 !important;

    padding: 0 !important;

    float: none !important;
}


/* =========================================================
   ARTICLE CONTENT
========================================================= */

.altafi-content-inner {
    width: 100% !important;

    display: block !important;

    margin: 0 !important;

    padding: 0 !important;

    color: #334155 !important;

    font-size: 16px !important;

    line-height: 2.2 !important;
}


.altafi-content-inner p {
    display: block;

    margin: 0 0 25px !important;

    padding: 0 !important;

    color: #334155 !important;

    font-size: 16px !important;

    line-height: 2.2 !important;
}


.altafi-content-inner h2 {
    display: block !important;

    width: 100% !important;

    margin: 45px 0 18px !important;

    padding: 0 !important;

    color: #111827 !important;

    font-size: 27px !important;

    line-height: 1.6 !important;

    font-weight: 800 !important;
}


.altafi-content-inner h3 {
    display: block !important;

    width: 100% !important;

    margin: 35px 0 15px !important;

    padding: 0 !important;

    color: #1e293b !important;

    font-size: 22px !important;

    line-height: 1.7 !important;

    font-weight: 700 !important;
}


.altafi-content-inner img {
    display: block;

    max-width: 100% !important;

    height: auto !important;

    margin: 25px auto !important;

    border-radius: 12px;
}


.altafi-content-inner ul,
.altafi-content-inner ol {
    margin: 0 0 25px !important;

    padding-right: 25px !important;
}


.altafi-content-inner li {
    margin-bottom: 10px !important;
}


.altafi-content-inner blockquote {
    display: block;

    margin: 30px 0 !important;

    padding: 18px 22px !important;

    background: #f4f7fb !important;

    border-right: 4px solid #2563eb !important;

    border-left: 0 !important;

    border-radius: 8px !important;
}


/* =========================================================
   TABLE OF CONTENTS
========================================================= */

/* =========================================
   فهرست مطالب مقاله
   ========================================= */

.altafi-toc {
    width: 100%;
    margin: 0 0 30px;
    padding: 0;
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    overflow: hidden;
    box-sizing: border-box;
    direction: rtl;
}

/* هدر فهرست */
.altafi-toc-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    min-height: 58px;
    padding: 15px 20px;
    box-sizing: border-box;
    cursor: pointer;
    user-select: none;
    background: #fff;
    transition: background-color .2s ease;
}

.altafi-toc-header:hover {
    background: #f8fafc;
}

/* عنوان */
.altafi-toc-title {
    margin: 0;
    padding: 0;
    font-size: 17px;
    line-height: 1.8;
    font-weight: 700;
    color: #1f2937;
}

/* فلش */
.altafi-toc-arrow {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    font-size: 17px;
    line-height: 1;
    color: #374151;
    transition: transform .25s ease;
}

/* محتوای فهرست */
.altafi-toc-list {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    padding: 0 20px;
    box-sizing: border-box;
    transition:
        max-height .35s ease,
        opacity .25s ease,
        padding .3s ease;
}

/* حالت باز */
.altafi-toc.is-open .altafi-toc-list {
    max-height: 2000px;
    opacity: 1;
    padding-top: 5px;
    padding-bottom: 15px;
}

/* چرخش فلش هنگام باز بودن */
.altafi-toc.is-open .altafi-toc-arrow {
    transform: rotate(180deg);
}

/* لیست */
.altafi-toc-list ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

/* هر آیتم */
.altafi-toc-list li {
    position: relative;
    margin: 0;
    padding: 0;
    border-top: 1px solid #f0f0f0;
}

/* لینک */
.altafi-toc-list li a {
    display: block;
    width: 100%;
    padding: 13px 5px;
    box-sizing: border-box;
    color: #374151;
    font-size: 15px;
    line-height: 1.9;
    text-decoration: none;
    transition:
        color .2s ease,
        padding-right .2s ease;
}

/* حالت هاور */
.altafi-toc-list li a:hover {
    color: #009A93;
    padding-right: 10px;
}

/* موبایل */
@media (max-width: 767px) {

    .altafi-toc {
        margin-bottom: 24px;
        border-radius: 10px;
    }

    .altafi-toc-header {
        min-height: 52px;
        padding: 13px 15px;
    }

    .altafi-toc-title {
        font-size: 15px;
    }

    .altafi-toc-list {
        padding-left: 15px;
        padding-right: 15px;
    }

    .altafi-toc.is-open .altafi-toc-list {
        padding-top: 3px;
        padding-bottom: 10px;
    }

    .altafi-toc-list li a {
        padding: 11px 4px;
        font-size: 14px;
        line-height: 1.8;
    }
}

/* =========================================================
   SIDEBAR CARDS
========================================================= */

.altafi-sidebar-card {
    width: 100% !important;

    display: block !important;

    margin: 9px 0 18px !important;

    padding: 0 !important;

    overflow: hidden !important;

    border-radius: 14px !important;
}


/* =========================================================
   CTA
========================================================= */

.altafi-cta-card {
    padding: 22px !important;

    background: #101827 !important;

    color: #fff !important;
}


.altafi-cta-card h3 {
    margin: 0 0 10px !important;

    color: #fff !important;

    font-size: 17px !important;

    line-height: 1.7 !important;

    font-weight: 800 !important;
}


.altafi-cta-card p {
    margin: 0 0 18px !important;

    color: #cbd5e1 !important;

    font-size: 13px !important;

    line-height: 1.9 !important;
}


.altafi-cta-button {
    width: 100% !important;

    display: flex !important;

    justify-content: center !important;

    align-items: center !important;

    min-height: 44px !important;

    padding: 10px !important;

    border-radius: 9px !important;

    background: #fff !important;

    color: #111827 !important;

    font-size: 13px !important;

    font-weight: 700 !important;

    text-decoration: none !important;
}


/* =========================================================
   CONSULTATION
========================================================= */

.altafi-consultation-card {
    padding: 20px !important;

    background: #f8fafc !important;

    border: 1px solid #e5e7eb !important;
}


.altafi-form-header {
    display: flex !important;

    justify-content: space-between !important;

    align-items: flex-start !important;

    gap: 10px !important;

    margin-bottom: 15px !important;
}


.altafi-form-header h3 {
    margin: 0 0 4px !important;

    color: #1e293b !important;

    font-size: 16px !important;

    font-weight: 800 !important;
}


.altafi-form-header p {
    margin: 0 !important;

    color: #94a3b8 !important;

    font-size: 11px !important;
}


/* =========================================================
   FORM
========================================================= */

.altafi-form-field {
    width: 100% !important;

    margin: 0 0 10px !important;
}


.altafi-form-field input,
.altafi-form-field textarea {
    display: block !important;

    width: 100% !important;

    max-width: 100% !important;

    min-width: 0 !important;

    padding: 11px 12px !important;

    border: 1px solid #dbe2ea !important;

    border-radius: 8px !important;

    background: #fff !important;

    font-family: inherit !important;

    font-size: 12px !important;

    line-height: 1.6 !important;
}


.altafi-form-field textarea {
    min-height: 75px !important;

    resize: vertical !important;
}


.altafi-submit-button {
    display: block !important;

    width: 100% !important;

    min-height: 42px !important;

    padding: 10px !important;

    border: 0 !important;

    border-radius: 8px !important;

    background: #2563eb !important;

    color: #fff !important;

    font-family: inherit !important;

    font-size: 12px !important;

    font-weight: 700 !important;

    cursor: pointer !important;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 991px) {

    .altafi-article-layout {
        grid-template-columns: 1fr !important;

        direction: rtl !important;
    }


    .altafi-article-content {
        grid-column: 1 !important;
    }


    .altafi-article-sidebar {
        grid-column: 1 !important;

        position: static !important;
    }

}


@media (max-width: 767px) {

    .altafi-single-article .altafi-container {
        width: calc(100% - 25px) !important;
    }


    .altafi-article-header {
        padding-top: 25px !important;
    }


    .altafi-single-article .altafi-article-title {
        font-size: 27px !important;

        line-height: 1.7 !important;
    }


    .altafi-article-meta {
        gap: 8px !important;

        font-size: 11px !important;
    }


    .altafi-meta-item {
        font-size: 11px !important;
    }


    .altafi-meta-separator {
        display: none !important;
    }


    .altafi-featured-image {
        border-radius: 12px !important;
    }


    .altafi-content-inner,
    .altafi-content-inner p {
        font-size: 15px !important;

        line-height: 2.1 !important;
    }


    .altafi-content-inner h2 {
        font-size: 23px !important;
    }


    .altafi-content-inner h3 {
        font-size: 19px !important;
    }

}
/* =========================
   COLLAPSIBLE TOC
========================= */

.altafi-toc-header {
    cursor: pointer;
    user-select: none;
}
.altafi-toc-arrow {
    transition: transform .25s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.altafi-toc.is-open .altafi-toc-arrow {
    transform: rotate(180deg);
}
.altafi-toc-arrow svg {
    width: 20px;
    height: 20px;
    fill: currentColor;
}
.altafi-toc-list {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    padding-top: 0;
    padding-bottom: 0;

    transition:
        max-height .4s ease,
        opacity .25s ease,
        padding .3s ease;
}

.altafi-toc.is-open .altafi-toc-list {
    max-height: 1500px;
    opacity: 1;
    padding-top: 10px;
    padding-bottom: 10px;
}
.altafi-form-field input::placeholder,
.altafi-form-field textarea::placeholder {
    color: #b8c0cc !important;
    opacity: 1 !important;
}

/* فقط placeholder شماره موبایل سمت راست باشد */
.altafi-form-field input[name="phone"] {
    text-align: right !important;
}

.altafi-form-field input[name="phone"]::placeholder {
    text-align: right !important;
}