.elementor-459 .elementor-element.elementor-element-e361768{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-fd49800 *//* =========================================================
   ABOUT BOOK - HERO
========================================================= */

.nl-about-hero {

    width: 100%;

    height: 55vh;

    min-height: 480px;

    background: #eee8dc;

    overflow: hidden;

    direction: rtl;
}


/* =========================================================
   INNER
========================================================= */

.nl-about-hero-inner {

    width: 90%;

    max-width: 1400px;

    height: 100%;

    margin: 0 auto;

    display: grid;

    grid-template-columns: 1fr 1fr;

    align-items: center;

    gap: 70px;
}


/* =========================================================
   CONTENT
========================================================= */

.nl-about-hero-content {

    padding-right: 30px;

    border-right:
        1px solid
        rgba(30,30,30,.18);
}


/* =========================================================
   LABEL
========================================================= */

.nl-about-hero-label {

    margin-bottom: 25px;

    font-family: 'Vazirmatn', sans-serif;

    font-size: 12px;

    font-weight: 500;

    color: #777269;
}


/* =========================================================
   TITLE
========================================================= */

.nl-about-hero-content h1 {

    margin: 0;

    font-family: 'Vazirmatn', sans-serif;

    font-size:
        clamp(42px, 5vw, 72px);

    line-height: 1.15;

    font-weight: 800;

    letter-spacing: -3px;

    color: #191817;
}


/* =========================================================
   DESCRIPTION
========================================================= */

.nl-about-hero-content p {

    max-width: 520px;

    margin: 30px 0 35px;

    font-family: 'Vazirmatn', sans-serif;

    font-size: 15px;

    line-height: 2.2;

    color: #5f5b55;

    text-align: justify;

    text-justify: inter-word;
}


/* =========================================================
   META
========================================================= */

.nl-about-hero-meta {

    display: flex;

    align-items: center;

    gap: 14px;

    font-family: 'Vazirmatn', sans-serif;

    font-size: 10px;

    color: #777269;
}


.nl-about-hero-line {

    width: 35px;

    height: 1px;

    background: #aaa49a;
}


/* =========================================================
   IMAGE
========================================================= */

.nl-about-hero-image {

    width: 100%;

    height: 78%;

    overflow: hidden;

    position: relative;
}


.nl-about-hero-image img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition:
        transform .6s ease;
}


.nl-about-hero-image:hover img {

    transform: scale(1.025);
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 768px) {

    .nl-about-hero {

        height: auto;

        min-height: 0;

        padding: 55px 0;
    }


    .nl-about-hero-inner {

        width: 88%;

        display: flex;

        flex-direction: column;

        align-items: stretch;

        gap: 40px;
    }


    .nl-about-hero-content {

        padding-right: 20px;
    }


    .nl-about-hero-content h1 {

        font-size: 42px;

        letter-spacing: -2px;
    }


    .nl-about-hero-content p {

        margin: 22px 0 28px;

        font-size: 13px;

        line-height: 2;
    }


    .nl-about-hero-image {

        height: 280px;

        width: 100%;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-b9f5296 *//* =========================================================
   WHY LETTER
========================================================= */

.nl-why-letter {

    width: 100%;

    height: 45vh;

    min-height: 400px;

    background: #eee8dc;

    color: #181716;

    direction: rtl;

    overflow: hidden;
}


/* =========================================================
   INNER
========================================================= */

.nl-why-letter-inner {

    width: 90%;

    max-width: 1400px;

    height: 100%;

    margin: 0 auto;

    display: grid;

    grid-template-columns:
        70px
        .8fr
        1.2fr;

    align-items: center;

    gap: 55px;
}


/* =========================================================
   NUMBER
========================================================= */

.nl-why-letter-number {

    height: 65%;

    display: flex;

    align-items: center;

    justify-content: center;

    border-left:
        1px solid
        rgba(0,0,0,.15);

    font-family: Arial, sans-serif;

    font-size: 10px;

    letter-spacing: 3px;

    color: #8c867c;

    direction: ltr;
}


/* =========================================================
   TITLE
========================================================= */

.nl-why-letter-title {

    padding-right: 10px;
}


.nl-why-letter-title span {

    display: block;

    margin-bottom: 20px;

    font-family: 'Vazirmatn', sans-serif;

    font-size: 11px;

    color: #817b72;
}


.nl-why-letter-title h2 {

    margin: 0;

    font-family: 'Vazirmatn', sans-serif;

    font-size:
        clamp(52px, 6vw, 88px);

    line-height: .95;

    font-weight: 300;

    letter-spacing: -4px;
}


.nl-why-letter-title h2 strong {

    display: block;

    font-weight: 800;

    margin-top: 8px;
}


/* =========================================================
   CONTENT
========================================================= */

.nl-why-letter-content {

    padding-right: 55px;

    border-right:
        1px solid
        rgba(0,0,0,.15);
}


.nl-why-letter-text {

    max-width: 560px;

    margin: 0 0 25px;

    font-family: 'Vazirmatn', sans-serif;

    font-size: 14px;

    line-height: 2.15;

    color: #56514b;

    text-align: justify;

    text-justify: inter-word;
}


/* =========================================================
   HIGHLIGHT
========================================================= */

.nl-why-letter-highlight {

    max-width: 520px;

    margin: 0;

    padding-right: 18px;

    border-right:
        3px solid
        #777168;

    font-family: 'Vazirmatn', sans-serif;

    font-size: 15px;

    line-height: 2;

    font-weight: 600;

    color: #282623;

    text-align: justify;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 800px) {

    .nl-why-letter {

        height: auto;

        min-height: 0;

        padding: 70px 0;
    }


    .nl-why-letter-inner {

        width: 88%;

        display: grid;

        grid-template-columns: 1fr;

        gap: 35px;
    }


    .nl-why-letter-number {

        display: none;
    }


    .nl-why-letter-title {

        padding-right: 0;
    }


    .nl-why-letter-title h2 {

        font-size: 58px;

        letter-spacing: -2px;
    }


    .nl-why-letter-content {

        padding-right: 20px;

        border-right:
            1px solid
            rgba(0,0,0,.15);
    }


    .nl-why-letter-text {

        font-size: 13px;

        line-height: 2;
    }


    .nl-why-letter-highlight {

        font-size: 13px;

        line-height: 2;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-096961a *//* =========================================================
   TEAM SECTION - UNIFIED FONT
========================================================= */

.nl-team {
    width: 100%;
    background: #eee8dc;
    color: #1b1917;
    direction: rtl;
    overflow: hidden;

    /* فونت واحد کل بخش */
    font-family: "Vazirmatn", sans-serif !important;
}

.nl-team *,
.nl-team h1,
.nl-team h2,
.nl-team h3,
.nl-team h4,
.nl-team h5,
.nl-team h6,
.nl-team p,
.nl-team span,
.nl-team div,
.nl-team article {
    font-family: "Vazirmatn", sans-serif !important;
    box-sizing: border-box;
}


/* =========================================================
   CONTAINER
========================================================= */

.nl-team-container {
    width: 90%;
    max-width: 1400px;
    margin: 0 auto;
    padding: 100px 0 90px;
}


/* =========================================================
   HEADER
========================================================= */

.nl-team-header {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: end;
    margin-bottom: 80px;
}

.nl-team-eyebrow {
    display: block;
    margin-bottom: 18px;

    font-size: 11px !important;
    font-weight: 400 !important;
    line-height: 1.7;

    color: #817a70;
}

.nl-team-title h2 {
    margin: 0;
    padding: 0;

    font-size: clamp(45px, 6vw, 80px) !important;
    line-height: 1.05 !important;

    font-weight: 300 !important;

    letter-spacing: -4px;
}

.nl-team-title h2 strong {
    font-weight: 800 !important;
}

.nl-team-intro {
    padding-right: 35px;

    border-right: 1px solid rgba(0, 0, 0, .15);
}

.nl-team-intro p {
    max-width: 480px;

    margin: 0;
    padding: 0;

    color: #625c54;

    font-size: 13px !important;
    line-height: 2.2 !important;
    font-weight: 400 !important;

    text-align: justify;
}


/* =========================================================
   SECTION LABEL
========================================================= */

.nl-section-label {
    display: flex;
    align-items: center;

    gap: 20px;

    margin: 0 0 30px;
}

.nl-section-label::before {
    content: "";

    display: block;

    width: 35px;
    height: 1px;

    background: #1b1917;
}

.nl-section-label span {
    font-size: 10px !important;
    font-weight: 400 !important;
    line-height: 1.7;

    color: #716a62;

    white-space: nowrap;
}


/* =========================================================
   COMMON PHOTO SIZE
   تمام عکس‌ها دقیقاً یک اندازه
========================================================= */

.nl-main-photo,
.nl-design-photo,
.nl-publishing-photo {

    position: relative;

    width: 220px !important;
    min-width: 220px !important;
    max-width: 220px !important;

    height: 290px !important;
    min-height: 290px !important;
    max-height: 290px !important;

    flex: 0 0 220px !important;

    overflow: hidden;

    background: #d5cec2;
}


/* =========================================================
   IMAGES
========================================================= */

.nl-main-photo img,
.nl-design-photo img,
.nl-publishing-photo img {

    display: block;

    width: 100% !important;
    height: 100% !important;

    max-width: none !important;

    object-fit: cover;

    filter: grayscale(100%);

    transition:
        transform .6s ease,
        filter .6s ease;
}


/* =========================================================
   IMAGE HOVER
========================================================= */

.nl-main-person:hover .nl-main-photo img,
.nl-design-person:hover .nl-design-photo img,
.nl-publishing-person:hover .nl-publishing-photo img {

    transform: scale(1.05);

    filter: grayscale(0%);
}


/* =========================================================
   NUMBER
========================================================= */

.nl-number {

    position: absolute;

    top: 12px;
    right: 12px;

    color: #fff;

    font-family: Arial, sans-serif !important;

    font-size: 9px !important;
    font-weight: 400 !important;

    line-height: 1;

    letter-spacing: 3px;

    direction: ltr;

    text-shadow: 0 1px 8px rgba(0, 0, 0, .5);

    z-index: 2;
}


/* =========================================================
   MAIN TEAM
========================================================= */

.nl-main-team {

    width: 100%;

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 35px;
}

.nl-main-person {

    width: 100%;
    min-width: 0;

    display: flex;

    align-items: flex-start;

    gap: 25px;
}

.nl-main-content {

    flex: 1;
    min-width: 0;

    padding-top: 5px;
}


/* =========================================================
   MAIN ROLE
========================================================= */

.nl-main-content .nl-role {

    display: block;

    margin: 0 0 9px;

    color: #817a70;

    font-size: 10px !important;
    font-weight: 400 !important;

    line-height: 1.7 !important;
}


/* =========================================================
   MAIN NAME
========================================================= */

.nl-main-content h3 {

    margin: 0 0 18px;
    padding: 0;

    color: #1b1917;

    font-size: 27px !important;
    font-weight: 800 !important;

    line-height: 1.3 !important;

    letter-spacing: -1px;
}


/* =========================================================
   MAIN TEXT
========================================================= */

.nl-main-content p {

    margin: 0;
    padding: 0;

    color: #5f5952;

    font-size: 11px !important;
    font-weight: 400 !important;

    line-height: 2.15 !important;

    text-align: justify;
}


/* =========================================================
   DESIGN
========================================================= */

.nl-design-label {
    margin-top: 95px;
}

.nl-design-team {
    width: 100%;
}

.nl-design-person {

    width: 100%;
    min-width: 0;

    display: flex;

    align-items: flex-start;

    gap: 25px;
}

.nl-design-content {

    flex: 1;
    min-width: 0;

    padding-top: 5px;
}

.nl-design-content .nl-role {

    display: block;

    margin: 0 0 9px;

    color: #817a70;

    font-size: 10px !important;
    font-weight: 400 !important;

    line-height: 1.7 !important;
}

.nl-design-content h3 {

    margin: 0 0 18px;
    padding: 0;

    color: #1b1917;

    font-size: 24px !important;
    font-weight: 700 !important;

    line-height: 1.4 !important;

    letter-spacing: -1px;
}

.nl-design-content p {

    margin: 0;
    padding: 0;

    color: #5f5952;

    font-size: 11px !important;
    font-weight: 400 !important;

    line-height: 2.15 !important;

    text-align: justify;
}


/* =========================================================
   PUBLISHING
========================================================= */

.nl-publishing-label {
    margin-top: 80px;
}

.nl-publishing-team {

    width: 100%;

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 35px;
}

.nl-publishing-person {

    width: 100%;
    min-width: 0;

    display: flex;

    align-items: flex-start;

    gap: 25px;
}

.nl-publishing-content {

    flex: 1;
    min-width: 0;

    padding-top: 5px;
}

.nl-publishing-content .nl-role {

    display: block;

    margin: 0 0 9px;

    color: #817a70;

    font-size: 10px !important;
    font-weight: 400 !important;

    line-height: 1.7 !important;
}

.nl-publishing-content h3 {

    margin: 0 0 18px;
    padding: 0;

    color: #1b1917;

    font-size: 23px !important;
    font-weight: 700 !important;

    line-height: 1.4 !important;

    letter-spacing: -1px;
}

.nl-publishing-content p {

    margin: 0;
    padding: 0;

    color: #5f5952;

    font-size: 11px !important;
    font-weight: 400 !important;

    line-height: 2.15 !important;

    text-align: justify;
}


/* =========================================================
   FOOTER
========================================================= */

.nl-team-footer {

    display: flex;

    align-items: center;

    gap: 25px;

    margin-top: 90px;
}

.nl-team-footer span {

    flex: 1;

    height: 1px;

    background: rgba(0, 0, 0, .14);

    font-size: 10px !important;
}

.nl-team-footer p {

    margin: 0;
    padding: 0;

    color: #716a62;

    font-size: 10px !important;
    font-weight: 400 !important;

    line-height: 1.8 !important;

    white-space: nowrap;

    text-align: center;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1000px) {

    .nl-team-header {
        gap: 50px;
    }

    .nl-main-team {
        gap: 20px;
    }

    .nl-main-person,
    .nl-design-person,
    .nl-publishing-person {
        gap: 18px;
    }

    .nl-main-content h3 {
        font-size: 23px !important;
    }

    .nl-main-content p,
    .nl-design-content p,
    .nl-publishing-content p {
        font-size: 10px !important;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 700px) {

    .nl-team-container {
        width: 88%;
        padding: 70px 0;
    }


    /* HEADER */

    .nl-team-header {

        grid-template-columns: 1fr;

        gap: 30px;

        margin-bottom: 55px;
    }

    .nl-team-title h2 {

        font-size: 50px !important;

        letter-spacing: -2px;
    }

    .nl-team-intro {

        padding-right: 20px;
    }


    /* MAIN */

    .nl-main-team {

        grid-template-columns: 1fr;

        gap: 55px;
    }


    /* ALL MOBILE PHOTOS */

    .nl-main-photo,
    .nl-design-photo,
    .nl-publishing-photo {

        width: 110px !important;
        min-width: 110px !important;
        max-width: 110px !important;

        height: 150px !important;
        min-height: 150px !important;
        max-height: 150px !important;

        flex: 0 0 110px !important;
    }


    .nl-main-person,
    .nl-design-person,
    .nl-publishing-person {

        gap: 18px;
    }


    /* MAIN TEXT */

    .nl-main-content h3 {

        font-size: 23px !important;

        margin-bottom: 10px;
    }

    .nl-main-content p,
    .nl-design-content p,
    .nl-publishing-content p {

        font-size: 10px !important;

        line-height: 2 !important;
    }


    /* DESIGN */

    .nl-design-label {

        margin-top: 65px;
    }

    .nl-design-content h3 {

        font-size: 21px !important;

        margin-bottom: 10px;
    }


    /* PUBLISHING */

    .nl-publishing-label {

        margin-top: 60px;
    }

    .nl-publishing-team {

        grid-template-columns: 1fr;

        gap: 40px;
    }

    .nl-publishing-content h3 {

        font-size: 21px !important;

        margin-bottom: 10px;
    }


    /* FOOTER */

    .nl-team-footer {

        margin-top: 65px;

        gap: 12px;
    }

    .nl-team-footer p {

        white-space: normal;

        font-size: 9px !important;
    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-669c5e3 *//* =========================================================
   FINAL SECTION
========================================================= */

.nl-final {

    position: relative;

    width: 100%;

    height: 50vh;
    min-height: 420px;

    overflow: hidden;

    background: #eee8dc;

    direction: rtl;

    font-family: "Vazirmatn", sans-serif !important;
}


/* =========================================================
   RESET
========================================================= */

.nl-final *,
.nl-final h1,
.nl-final h2,
.nl-final h3,
.nl-final p,
.nl-final span,
.nl-final a,
.nl-final i {

    box-sizing: border-box;

    font-family: "Vazirmatn", sans-serif !important;
}


/* =========================================================
   BACKGROUND IMAGE
========================================================= */

.nl-final-image {

    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    overflow: hidden;

    z-index: 0;
}

.nl-final-image img {

    display: block;

    width: 100% !important;
    height: 100% !important;

    max-width: none !important;

    object-fit: cover;

    opacity: .32;

    filter:
        grayscale(100%)
        contrast(.9);

    transform: scale(1.02);
}


/* =========================================================
   OVERLAY
========================================================= */

.nl-final-overlay {

    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    background:
        linear-gradient(
            90deg,
            rgba(238,232,220,.95) 0%,
            rgba(238,232,220,.78) 45%,
            rgba(238,232,220,.30) 100%
        );

    z-index: 1;
}


/* =========================================================
   CONTENT
========================================================= */

.nl-final-content {

    position: relative;

    z-index: 2;

    width: 90%;
    max-width: 1400px;

    height: 100%;

    margin: 0 auto;

    display: flex;

    flex-direction: column;

    justify-content: center;

    align-items: flex-start;

    text-align: right;
}


/* =========================================================
   EYEBROW
========================================================= */

.nl-final-eyebrow {

    display: block;

    margin: 0 0 20px;

    padding: 0;

    color: #817a70 !important;

    font-size: 11px !important;

    font-weight: 400 !important;

    line-height: 1.7 !important;

    letter-spacing: 1px;
}


/* =========================================================
   MAIN TITLE
========================================================= */

.nl-final h2 {

    margin: 0;

    padding: 0;

    max-width: 850px;

    color: #1b1917 !important;

    font-size: clamp(36px, 5vw, 72px) !important;

    line-height: 1.25 !important;

    font-weight: 300 !important;

    letter-spacing: -2px;
}

.nl-final h2 strong {

    color: #1b1917 !important;

    font-weight: 800 !important;
}


/* =========================================================
   DESCRIPTION
========================================================= */

.nl-final p {

    max-width: 520px;

    margin: 25px 0 30px;

    padding: 0;

    color: #625c54 !important;

    font-size: 12px !important;

    font-weight: 400 !important;

    line-height: 2.1 !important;

    text-align: justify;
}


/* =========================================================
   CTA CONTAINER
========================================================= */

.nl-final-actions {

    display: flex;

    align-items: center;

    gap: 24px;

    margin-top: 5px;
}


/* =========================================================
   MAIN GREEN CTA
========================================================= */

.nl-final-cta {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 22px;

    min-width: 210px;

    padding: 16px 25px;

    background: #3f6b4f !important;

    color: #ffffff !important;

    font-family: "Vazirmatn", sans-serif !important;

    font-size: 11px !important;

    font-weight: 600 !important;

    line-height: 1.5 !important;

    text-decoration: none !important;

    border: 1px solid #3f6b4f;

    border-radius: 2px;

    box-shadow: none;

    transition:
        background .3s ease,
        border-color .3s ease,
        transform .3s ease;
}


/* CTA TEXT */

.nl-final-cta span {

    margin: 0;

    padding: 0;

    color: #ffffff !important;

    font-family: "Vazirmatn", sans-serif !important;

    font-size: 11px !important;

    font-weight: 600 !important;

    line-height: 1.5 !important;
}


/* CTA ARROW */

.nl-final-cta i {

    margin: 0;

    padding: 0;

    color: #ffffff !important;

    font-family: Arial, sans-serif !important;

    font-style: normal;

    font-size: 18px !important;

    font-weight: normal;

    line-height: 1;

    transition: transform .3s ease;
}


/* CTA HOVER */

.nl-final-cta:hover {

    background: #31563f !important;

    border-color: #31563f;

    color: #ffffff !important;

    transform: translateY(-2px);
}

.nl-final-cta:hover span {

    color: #ffffff !important;
}

.nl-final-cta:hover i {

    color: #ffffff !important;

    transform: translateX(-5px);
}


/* =========================================================
   SECONDARY LINK
========================================================= */

.nl-final-secondary {

    display: inline-block;

    margin: 0;

    padding: 0 0 7px;

    color: #1b1917 !important;

    font-family: "Vazirmatn", sans-serif !important;

    font-size: 10px !important;

    font-weight: 400 !important;

    line-height: 1.5 !important;

    text-decoration: none !important;

    border-bottom: 1px solid rgba(27,25,23,.3);

    transition:
        color .3s ease,
        border-color .3s ease;
}

.nl-final-secondary:hover {

    color: #3f6b4f !important;

    border-color: #3f6b4f;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 900px) {

    .nl-final {

        height: 48vh;

        min-height: 400px;
    }

    .nl-final h2 {

        font-size: clamp(34px, 6vw, 58px) !important;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 700px) {

    .nl-final {

        height: 60vh;

        min-height: 470px;
    }


    .nl-final-content {

        width: 88%;

        justify-content: center;
    }


    /* تصویر موبایل */

    .nl-final-image img {

        object-position: 60% center;
    }


    /* overlay موبایل */

    .nl-final-overlay {

        background:
            linear-gradient(
                180deg,
                rgba(238,232,220,.78) 0%,
                rgba(238,232,220,.92) 75%,
                rgba(238,232,220,.97) 100%
            );
    }


    /* عنوان */

    .nl-final h2 {

        max-width: 100%;

        font-size: 38px !important;

        line-height: 1.35 !important;

        letter-spacing: -1px;
    }


    /* متن */

    .nl-final p {

        max-width: 100%;

        margin-top: 22px;

        margin-bottom: 25px;

        font-size: 11px !important;

        line-height: 2 !important;
    }


    /* CTA */

    .nl-final-actions {

        width: 100%;

        display: flex;

        flex-direction: column;

        align-items: flex-start;

        gap: 18px;

        margin-top: 5px;
    }


    .nl-final-cta {

        min-width: 190px;

        padding: 14px 22px;

        font-size: 10px !important;
    }


    .nl-final-cta span {

        font-size: 10px !important;
    }


    .nl-final-secondary {

        font-size: 10px !important;
    }

}/* End custom CSS */