/*
|--------------------------------------------------------------------------
| Bilin Framework
| Document Category Archive
|--------------------------------------------------------------------------
| RTL Persian
*/


/*
|--------------------------------------------------------------------------
| Page
|--------------------------------------------------------------------------
*/

.document-category-page {
        direction: rtl;
        width: 100%;
        padding: 70px 20px 90px;
        box-sizing: border-box;
}

.document-category-container {
        width: min(1180px, 100%);
        margin: 0 auto;
        box-sizing: border-box;
}


/*
|--------------------------------------------------------------------------
| Header
|--------------------------------------------------------------------------
*/

.document-category-header {
        width: 100%;
        margin: 0 auto 55px;
        text-align: center;
        box-sizing: border-box;
}

.document-category-label {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 14px;
        padding: 7px 16px;
        border-radius: 999px;
        background: #fff1ec;
        color: #d95f43;
        font-size: 14px;
        line-height: 1.5;
        font-weight: 700;
}

.document-category-title {
        margin: 0 0 18px;
        font-size: clamp(30px, 4vw, 48px);
        line-height: 1.35;
        font-weight: 800;
        color: #222;
        overflow-wrap: anywhere;
}

.document-category-description {
        max-width: 900px;
        margin: 0 auto;
        color: #666;
        font-size: 19px;
        line-height: 2;
}

.document-category-description p {
        margin: 0 0 12px;
}

.document-category-description p:last-child {
        margin-bottom: 0;
}


/*
|--------------------------------------------------------------------------
| Documents Section
|--------------------------------------------------------------------------
*/

.document-category-guides {
        width: 100%;
        margin-bottom: 65px;
}


/*
|--------------------------------------------------------------------------
| Documents Grid
|--------------------------------------------------------------------------
*/

.document-category-grid {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 28px;
        width: 100%;
        box-sizing: border-box;
}


/*
|--------------------------------------------------------------------------
| Document Card
|--------------------------------------------------------------------------
*/

.document-guide-card {
        display: flex;
        flex-direction: column;
        min-width: 0;
        min-height: 100%;
        margin: 0;
        overflow: hidden;
        background: #fff;
        border: 1px solid #eee;
        border-radius: 18px;
        box-shadow: 0 8px 30px rgba(0, 0, 0, 0.06);
        box-sizing: border-box;
        transition:
                transform 0.25s ease,
                box-shadow 0.25s ease,
                border-color 0.25s ease;
}

.document-guide-card:hover {
        transform: translateY(-5px);
        border-color: #e8e8e8;
        box-shadow: 0 16px 40px rgba(0, 0, 0, 0.10);
}

.document-guide-card-link {
        display: flex;
        flex-direction: column;
        width: 100%;
        height: 100%;
        min-width: 0;
        color: inherit;
        text-decoration: none;
        box-sizing: border-box;
}


/*
|--------------------------------------------------------------------------
| Card Image
|--------------------------------------------------------------------------
*/

.document-guide-card-image {
        position: relative;
        width: 100%;
        overflow: hidden;
        aspect-ratio: 16 / 10;
        background: #f5f5f5;
        flex-shrink: 0;
}

.document-guide-card-thumbnail {
        display: block;
        width: 100%;
        height: 100%;
        max-width: 100%;
        object-fit: cover;
        object-position: center;
        transition: transform 0.35s ease;
}

.document-guide-card:hover .document-guide-card-thumbnail {
        transform: scale(1.04);
}


/*
|--------------------------------------------------------------------------
| Card Content
|--------------------------------------------------------------------------
*/

.document-guide-card-content {
        display: flex;
        flex-direction: column;
        flex: 1;
        min-width: 0;
        padding: 24px;
        box-sizing: border-box;
}

.document-guide-card-title {
        margin: 0 0 12px;
        font-size: 21px;
        line-height: 1.6;
        font-weight: 800;
        color: #222;
        overflow-wrap: anywhere;
}

.document-guide-card-title a {
        color: inherit;
        text-decoration: none;
}

.document-guide-card-excerpt {
        margin: 0 0 18px;
        color: #666;
        font-size: 16px;
        line-height: 1.95;
        overflow-wrap: anywhere;
}

.document-guide-card-excerpt p {
        margin: 0 0 10px;
}

.document-guide-card-excerpt p:last-child {
        margin-bottom: 0;
}


/*
|--------------------------------------------------------------------------
| Read More
|--------------------------------------------------------------------------
*/

.document-guide-card-more {
        display: inline-flex;
        align-items: center;
        align-self: flex-start;
        gap: 7px;
        margin-top: auto;
        color: #d95f43;
        font-size: 15px;
        line-height: 1.6;
        font-weight: 700;
        white-space: nowrap;
}

.document-guide-card-more::after {
        content: "←";
        display: inline-block;
        transition: transform 0.2s ease;
}

.document-guide-card:hover .document-guide-card-more::after {
        transform: translateX(-4px);
}


/*
|--------------------------------------------------------------------------
| Card Keyboard Focus
|--------------------------------------------------------------------------
*/

.document-guide-card-link:focus-visible {
        outline: 3px solid rgba(217, 95, 67, 0.28);
        outline-offset: -3px;
        border-radius: 18px;
}


/*
|--------------------------------------------------------------------------
| Empty State
|--------------------------------------------------------------------------
*/

.document-category-empty {
        width: 100%;
        padding: 55px 30px;
        text-align: center;
        background: #fafafa;
        border: 1px dashed #ddd;
        border-radius: 18px;
        color: #666;
        font-size: 17px;
        line-height: 2;
        box-sizing: border-box;
}

.document-category-empty p {
        margin: 0;
}


/*
|--------------------------------------------------------------------------
| SEO Content
|--------------------------------------------------------------------------
*/

.document-category-seo-content {
        width: 100%;
        margin: 0 0 60px;
}

.document-category-seo-content-inner {
        width: 100%;
        max-width: none;
        margin: 0;
        padding: 38px 44px;

        background: #fff;
        border: 1px solid #eee;
        border-radius: 20px;
        box-shadow: 0 6px 25px rgba(0, 0, 0, 0.04);

        color: #444;
        font-size: 20px;
        line-height: 2;

        box-sizing: border-box;
}

.document-category-seo-content-inner p {
        margin: 0 0 18px;
}

.document-category-seo-content-inner p:last-child {
        margin-bottom: 0;
}

.document-category-seo-content-inner h2,
.document-category-seo-content-inner h3 {
        margin: 28px 0 12px;
        color: #222;
        line-height: 1.65;
        font-weight: 800;
}

.document-category-seo-content-inner h2 {
        font-size: 28px;
}

.document-category-seo-content-inner h3 {
        font-size: 24px;
}

.document-category-seo-content-inner h2:first-child,
.document-category-seo-content-inner h3:first-child {
        margin-top: 0;
}

.document-category-seo-content-inner ul,
.document-category-seo-content-inner ol {
        margin: 0 0 20px;
        padding-right: 30px;
}

.document-category-seo-content-inner li {
        margin-bottom: 7px;
}

.document-category-seo-content-inner a {
        color: #d95f43;
        text-decoration: underline;
        text-underline-offset: 3px;
}

.document-category-seo-content-inner strong {
        color: #333;
}


/*
|--------------------------------------------------------------------------
| CTA
|--------------------------------------------------------------------------
*/

.document-category-cta {
        width: 100%;
        margin-top: 25px;
}

.document-category-cta-inner {
        width: 100%;
        padding: 55px 35px;
        text-align: center;
        background: #fff8f4;
        border: 1px solid #f3ded5;
        border-radius: 22px;
        box-sizing: border-box;
}

.document-category-cta-inner h2 {
        margin: 0 0 15px;
        font-size: 26px;
        line-height: 1.6;
        font-weight: 800;
        color: #222;
        overflow-wrap: anywhere;
}

.document-category-cta-inner p {
        max-width: 700px;
        margin: 0 auto 25px;
        color: #666;
        font-size: 17px;
        line-height: 2;
}

.document-category-cta-button {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 48px;
        padding: 0 28px;
        border-radius: 10px;
        background: #d95f43;
        color: #fff;
        font-size: 15px;
        line-height: 1.5;
        font-weight: 700;
        text-align: center;
        text-decoration: none;
        box-sizing: border-box;
        transition:
                transform 0.2s ease,
                opacity 0.2s ease,
                background-color 0.2s ease;
}

.document-category-cta-button:hover {
        background: #c95137;
        color: #fff;
        transform: translateY(-2px);
        opacity: 0.95;
}

.document-category-cta-button:focus-visible {
        outline: 3px solid rgba(217, 95, 67, 0.28);
        outline-offset: 3px;
}


/*
|--------------------------------------------------------------------------
| General Safety
|--------------------------------------------------------------------------
*/

.document-category-page img {
        max-width: 100%;
        height: auto;
}

.document-category-page a {
        box-sizing: border-box;
}


/*
|--------------------------------------------------------------------------
| Responsive - Tablet
|--------------------------------------------------------------------------
*/

@media (max-width: 1100px) {

        .document-category-grid {
                gap: 24px;
        }

        .document-guide-card-content {
                padding: 22px;
        }

        .document-guide-card-title {
                font-size: 20px;
        }

        .document-category-seo-content-inner {
                padding: 36px 34px;
        }

}


/*
|--------------------------------------------------------------------------
| Responsive - Two Columns
|--------------------------------------------------------------------------
*/

@media (max-width: 900px) {

        .document-category-page {
                padding: 50px 18px 75px;
        }

        .document-category-header {
                margin-bottom: 42px;
        }

        .document-category-description {
                max-width: 820px;
                font-size: 18px;
        }

        .document-category-grid {
                grid-template-columns: repeat(2, minmax(0, 1fr));
                gap: 24px;
        }

        .document-guide-card-content {
                padding: 22px;
        }

        .document-guide-card-title {
                font-size: 20px;
        }

        .document-guide-card-excerpt {
                font-size: 15px;
        }

        .document-category-seo-content {
                margin-bottom: 50px;
        }

        .document-category-seo-content-inner {
                padding: 32px 28px;
                font-size: 19px;
                line-height: 2;
        }

        .document-category-seo-content-inner h2 {
                font-size: 26px;
        }

        .document-category-seo-content-inner h3 {
                font-size: 22px;
        }

        .document-category-cta-inner {
                padding: 48px 30px;
        }

}


/*
|--------------------------------------------------------------------------
| Responsive - Mobile
|--------------------------------------------------------------------------
*/

@media (max-width: 600px) {

        .document-category-page {
                padding: 45px 16px 65px;
        }

        .document-category-header {
                margin-bottom: 35px;
        }

        .document-category-label {
                margin-bottom: 12px;
                padding: 6px 13px;
                font-size: 13px;
        }

        .document-category-title {
                margin-bottom: 14px;
                font-size: 30px;
                line-height: 1.4;
        }

        .document-category-description {
                font-size: 17px;
                line-height: 1.95;
        }


        /*
        |--------------------------------------------------------------------------
        | Grid
        |--------------------------------------------------------------------------
        */

        .document-category-grid {
                grid-template-columns: 1fr;
                gap: 20px;
        }


        /*
        |--------------------------------------------------------------------------
        | Card
        |--------------------------------------------------------------------------
        */

        .document-guide-card {
                border-radius: 15px;
        }

        .document-guide-card:hover {
                transform: translateY(-3px);
        }

        .document-guide-card-image {
                aspect-ratio: 16 / 10;
        }

        .document-guide-card-content {
                padding: 20px;
        }

        .document-guide-card-title {
                margin-bottom: 10px;
                font-size: 20px;
                line-height: 1.6;
        }

        .document-guide-card-excerpt {
                margin-bottom: 16px;
                font-size: 15px;
                line-height: 1.9;
        }

        .document-guide-card-more {
                font-size: 14px;
        }


        /*
        |--------------------------------------------------------------------------
        | Empty State
        |--------------------------------------------------------------------------
        */

        .document-category-empty {
                padding: 42px 22px;
                border-radius: 15px;
                font-size: 15px;
        }


        /*
        |--------------------------------------------------------------------------
        | SEO Content
        |--------------------------------------------------------------------------
        */

        .document-category-seo-content {
                margin-bottom: 45px;
        }

        .document-category-seo-content-inner {
                padding: 28px 22px;
                border-radius: 17px;
                font-size: 18px;
                line-height: 2;
        }

        .document-category-seo-content-inner h2 {
                font-size: 24px;
        }

        .document-category-seo-content-inner h3 {
                font-size: 21px;
        }

        .document-category-seo-content-inner ul,
        .document-category-seo-content-inner ol {
                padding-right: 24px;
        }


        /*
        |--------------------------------------------------------------------------
        | CTA
        |--------------------------------------------------------------------------
        */

        .document-category-cta {
                margin-top: 20px;
        }

        .document-category-cta-inner {
                padding: 38px 22px;
                border-radius: 17px;
        }

        .document-category-cta-inner h2 {
                margin-bottom: 12px;
                font-size: 22px;
                line-height: 1.6;
        }

        .document-category-cta-inner p {
                margin-bottom: 22px;
                font-size: 15px;
                line-height: 1.9;
        }

        .document-category-cta-button {
                width: 100%;
                min-height: 47px;
                padding: 10px 20px;
                font-size: 14px;
        }

}


/*
|--------------------------------------------------------------------------
| Responsive - Very Small Mobile
|--------------------------------------------------------------------------
*/

@media (max-width: 400px) {

        .document-category-page {
                padding-right: 12px;
                padding-left: 12px;
        }

        .document-category-title {
                font-size: 27px;
        }

        .document-category-description {
                font-size: 16px;
        }

        .document-guide-card-content {
                padding: 18px;
        }

        .document-guide-card-title {
                font-size: 19px;
        }

        .document-category-seo-content-inner {
                padding: 25px 18px;
                font-size: 17px;
                line-height: 2;
        }

        .document-category-seo-content-inner h2 {
                font-size: 22px;
        }

        .document-category-seo-content-inner h3 {
                font-size: 20px;
        }

        .document-category-cta-inner {
                padding: 32px 18px;
        }

        .document-category-cta-inner h2 {
                font-size: 20px;
        }

}


/*
|--------------------------------------------------------------------------
| Reduced Motion
|--------------------------------------------------------------------------
*/

@media (prefers-reduced-motion: reduce) {

        .document-guide-card,
        .document-guide-card-thumbnail,
        .document-guide-card-more::after,
        .document-category-cta-button {
                transition: none;
        }

        .document-guide-card:hover {
                transform: none;
        }

        .document-guide-card:hover .document-guide-card-thumbnail {
                transform: none;
        }

        .document-guide-card:hover .document-guide-card-more::after {
                transform: none;
        }

        .document-category-cta-button:hover {
                transform: none;
        }

}