/*
Theme Name: Fatemeh Portfolio
Author: Fatemeh Yarali
Description: Minimal editorial photography portfolio theme.
Version: 2.2.7
Requires at least: 6.0
Requires PHP: 7.4
*/


/* =========================================================
   GLOBAL
========================================================= */

:root {
    --bg: #ffffff;
    --fg: #111111;
    --muted: #777777;

    --content-title: #222222;
    --content-text: #555555;

    --pad: 28px;
    --menu-width: 220px;

    --body-size: 14px;
    --title-size: 20px;
}

* {
    box-sizing: border-box;
}

html,
body {
    margin: 0;
    padding: 0;

    background: var(--bg);
    color: var(--fg);

    font-size: var(--body-size);
    font-weight: 400;

    line-height: 1.6;

    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

body {
    font-family:
        "Vazirmatn",
        Arial,
        Helvetica,
        sans-serif;

    overflow-x: hidden;
}

button,
input,
textarea,
select {
    font-family: inherit;
}

img {
    max-width: 100%;
}

a {
    color: inherit;
    text-decoration: none;
}


/* =========================================================
   SITE BRAND
========================================================= */

.site-brand {
    position: fixed;

    top: var(--pad);
    left: var(--pad);

    z-index: 1000;

    margin: 0;
    padding: 0;
}

.site-brand a {
    display: flex;

    flex-direction: column;

    color: #111111;

    font-family:
        "Vazirmatn",
        Arial,
        Helvetica,
        sans-serif;

    font-size: 14px;

    line-height: 1.15;

    font-weight: 600;

    letter-spacing: 0;

    text-decoration: none;

    -webkit-tap-highlight-color: transparent;
}

.site-brand a:hover,
.site-brand a:focus,
.site-brand a:visited {
    color: #111111;

    font-weight: 600;

    text-decoration: none;
}


/* =========================================================
   MAIN MENU
========================================================= */

.site-menu {
    position: fixed;

    top: var(--pad);
    left: var(--pad);
    right: auto;

    z-index: 1000;

    width: var(--menu-width);

    margin: 0;
    padding: 0;
}

.menu-list {
    list-style: none;

    margin: 0;
    padding: 0;
}

.menu-list li {
    margin: 0;
    padding: 0;
}

.site-menu a {
    display: inline-block;

    color: #666666;

    font-family:
        "Vazirmatn",
        Arial,
        Helvetica,
        sans-serif;

    font-size: 13px;

    line-height: 1.55;

    font-weight: 400;

    text-decoration: none;

    -webkit-tap-highlight-color: transparent;
}

.site-menu a:hover,
.site-menu a:focus,
.site-menu a:visited {
    text-decoration: none;
}


/* =========================================================
   PROJECTS
========================================================= */

.site-menu .project-menu-item {
    margin: 0 !important;
    padding: 0 !important;
}

.site-menu .project-menu-title {
    display: block;

    margin: 0;
    padding: 0;

    color: #666666;

    font-size: 13px;

    line-height: 1.55;

    font-weight: 400;

    cursor: default;

    pointer-events: none;
}

.site-menu .project-submenu {
    display: block !important;

    list-style: none;

    margin: 2px 0 0 0 !important;

    padding: 0 0 0 14px !important;
}

.site-menu .project-submenu-item {
    margin: 0 !important;
    padding: 0 !important;
}

.site-menu .project-submenu-item a {
    display: inline-block;

    margin: 0;
    padding: 0;

    color: #777777;

    font-size: 12px;

    line-height: 1.6;

    font-weight: 400;
}

.site-menu .project-submenu-item a:hover {
    color: #111111;

    font-weight: 500;
}


/* =========================================================
   WORDPRESS SUBMENUS
========================================================= */

.menu-item-has-children > .sub-menu {
    list-style: none;

    margin: 4px 0 0;

    padding: 0 0 0 14px;
}

.menu-item-has-children > .sub-menu li {
    margin: 0;
    padding: 0;
}

.menu-item-has-children > .sub-menu a {
    font-size: 12px;

    color: #777777;

    line-height: 1.6;
}


/* =========================================================
   MENU SECTION SPACING
========================================================= */

.site-menu .menu-list > li.menu-item-has-children + li {
    margin-top: 22px !important;
}

.site-menu .menu-list > li#menu-item-138 {
    margin-top: 50px !important;
}

.site-menu .menu-list > li#menu-item-134 {
    margin-top: 0 !important;
}

.site-menu #menu-item-138,
.site-menu #menu-item-134 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}


/* =========================================================
   ACTIVE MENU ITEM — DESKTOP
========================================================= */

@media (min-width: 801px) {

    .site-menu .current-menu-item > a,
    .site-menu .current_page_item > a {

        color: #2f6fed !important;

        font-weight: 600 !important;
    }

    .site-menu .current-menu-parent > a,
    .site-menu .current-menu-ancestor > a {

        color: #2f6fed !important;

        font-weight: 600 !important;
    }

}


/* =========================================================
   MOBILE MENU BUTTON
========================================================= */

.mobile-menu-toggle {
    display: none;

    position: fixed;

    top: 22px;
    right: 22px;

    z-index: 1100;

    width: 34px;
    height: 30px;

    margin: 0;
    padding: 4px 0;

    border: 0;

    background: transparent;

    cursor: pointer;
}


/* =========================================================
   HOME
========================================================= */

.home .site-main,
.home-main,
.home-screen {
    width: 100% !important;

    height: 100svh !important;

    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;
}

.home-screen {
    position: relative;

    display: flex !important;

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

.home-image {
    display: block !important;

    width: auto !important;

    height: 82svh !important;

    max-width: 92vw !important;
    max-height: 82svh !important;

    margin: 0 auto !important;
    padding: 0 !important;

    object-fit: contain !important;

    object-position: center center !important;
}

.home-placeholder {
    color: var(--muted);

    text-align: center;
}

.home-placeholder strong {
    display: block;

    margin-bottom: 8px;

    color: var(--fg);

    font-size: 18px;

    font-weight: 400;
}


/* =========================================================
   ABOUT / CONTACT
========================================================= */

.fy-editorial-page {
    width: 100% !important;

    max-width: none !important;

    margin: 0 !important;

    padding: 100px 30px 60px !important;

    display: flex !important;

    justify-content: center !important;
    align-items: flex-start !important;

    direction: ltr !important;
}

.fy-editorial-content {
    width: 620px !important;

    max-width: 620px !important;

    margin: 0 auto !important;
    padding: 0 !important;

    direction: ltr !important;
}

.fy-about-page {
    min-height: 100vh !important;

    height: auto !important;

    overflow: visible !important;

    padding-top: 100px !important;
}

.fy-about-page .fy-editorial-content,
.fy-about-page .fy-page-body {
    direction: ltr !important;
}

.fy-about-page .fy-page-body {
    margin-top: 0 !important;

    text-align: left !important;
}

.fy-contact-page .fy-editorial-content,
.fy-contact-page .fy-page-body {
    direction: ltr !important;
}

.fy-contact-page .fy-page-body {
    text-align: center !important;
}


/* =========================================================
   PROJECT GALLERY
========================================================= */

.project-gallery {
    position: relative;

    width: 100%;

    max-width: 100vw;

    margin: 0;
    padding: 0;

    overflow: hidden;
}

.project-gallery-viewport {
    width: 100%;

    height: 70vh;

    margin: 0;
    padding: 0;

    overflow: hidden;
}

.project-gallery-track {
    display: flex;

    flex-direction: row;

    width: 100%;
    height: 100%;

    margin: 0;
    padding: 0;

    transform: translate3d(0, 0, 0);

    will-change: transform;
}

.project-gallery-slide {
    flex: 0 0 100%;

    width: 100%;
    height: 100%;

    margin: 0;
    padding: 0;

    display: flex;

    align-items: center;
    justify-content: center;

    overflow: hidden;
}

.project-gallery-slide img {
    display: block;

    width: auto;
    height: auto;

    max-width: 78vw;
    max-height: 62vh;

    margin: 0 !important;
    padding: 0 !important;

    object-fit: contain;

    object-position: center center;
}


/* =========================================================
   REMOVE WORDPRESS IMAGE SPACING
========================================================= */

.project-gallery-slide figure,
.project-gallery-slide p,
.project-gallery-slide .wp-block-image,
.project-gallery-slide .wp-block-gallery {
    margin: 0 !important;
    padding: 0 !important;
}


/* =========================================================
   GALLERY ARROWS — EDITORIAL STYLE
   فقط فلش‌های گالری اصلاح شده‌اند
========================================================= */

.project-gallery-arrow {
    position: absolute;

    top: 50%;

    z-index: 100;

    width: 34px;
    height: 34px;

    margin: 0;
    padding: 0;

    border: 0;
    outline: 0;

    background: transparent;

    color: #555555;

    font-family:
        Arial,
        Helvetica,
        sans-serif;

    font-size: 26px;

    font-weight: 300;

    line-height: 34px;

    text-align: center;

    cursor: pointer;

    opacity: 0.9;

    transform: translateY(-50%);

    transition:
        color 0.2s ease,
        opacity 0.2s ease,
        transform 0.2s ease;

    box-shadow: none;
}


/*
 * عمداً left/right مشخص نشده.
 * JavaScript خود گالری فلش را دقیقاً روی لبه عکس قرار می‌دهد.
 */

.project-gallery-prev {
    left: auto !important;
    right: auto !important;
}

.project-gallery-next {
    left: auto !important;
    right: auto !important;
}


/* Hover */

.project-gallery-arrow:hover {
    color: #111111;

    opacity: 1;

    transform:
        translateY(-50%)
        scale(1.05);
}


/* =========================================================
   PROJECT INFORMATION
========================================================= */

.project-info {
    width: 620px;

    max-width: calc(100vw - 60px);

    margin: 65px auto 80px;

    padding: 0;
}

.project-title {
    margin: 0 0 24px;

    padding: 0;

    color: var(--fg);

    font-family:
        "Vazirmatn",
        Arial,
        Helvetica,
        sans-serif;

    font-size: var(--title-size);

    font-weight: 400;

    line-height: 1.3;
}

.project-description {
    margin: 0;
    padding: 0;

    color: var(--fg);

    font-family:
        "Vazirmatn",
        Arial,
        Helvetica,
        sans-serif;

    font-size: var(--body-size);

    font-weight: 400;

    line-height: 1.8;
}

.project-description p {
    margin: 0 0 18px;

    padding: 0;
}


/* =========================================================
   DIRECTION
========================================================= */

.project-title[dir="rtl"],
.project-description p[dir="rtl"] {
    direction: rtl;

    text-align: right;
}

.project-title[dir="ltr"],
.project-description p[dir="ltr"] {
    direction: ltr;

    text-align: left;
}


/* =========================================================
   GENERAL WORDPRESS CONTENT
========================================================= */

.entry-content,
.page-content {
    font-family:
        "Vazirmatn",
        Arial,
        Helvetica,
        sans-serif;
}

.entry-content p,
.page-content p {
    margin-top: 0;
}


/* =========================================================
   FOOTER
========================================================= */

.site-footer {
    display: none;
}


/* =========================================================
   ABOUT / CONTACT TYPOGRAPHY
========================================================= */

.fy-about-page h1,
.fy-about-page h2,
.fy-about-page h3,
.fy-contact-page h1,
.fy-contact-page h2,
.fy-contact-page h3 {

    margin: 0 0 24px !important;
    padding: 0 !important;

    font-family:
        "Vazirmatn",
        Arial,
        Helvetica,
        sans-serif !important;

    font-size: 20px !important;

    font-weight: 400 !important;

    line-height: 1.3 !important;

    color: var(--content-title) !important;
}

.fy-about-page .fy-page-body,
.fy-contact-page .fy-page-body {

    font-family:
        "Vazirmatn",
        Arial,
        Helvetica,
        sans-serif !important;

    font-size: 14px !important;

    font-weight: 400 !important;

    line-height: 1.8 !important;

    color: var(--content-text) !important;
}

.fy-about-page .fy-page-body p,
.fy-contact-page .fy-page-body p {

    margin: 0 0 18px !important;

    padding: 0 !important;

    font-family:
        "Vazirmatn",
        Arial,
        Helvetica,
        sans-serif !important;

    font-size: 14px !important;

    font-weight: 400 !important;

    line-height: 1.8 !important;

    color: var(--content-text) !important;
}


/* =========================================================
   ENGLISH / PERSIAN
========================================================= */

.fy-about-page .fy-page-body [dir="ltr"],
.fy-contact-page .fy-page-body [dir="ltr"] {
    direction: ltr;

    text-align: left;
}

.fy-about-page .fy-page-body [dir="rtl"],
.fy-contact-page .fy-page-body [dir="rtl"] {
    direction: rtl;

    text-align: right;
}


/* =========================================================
   LINKS
========================================================= */

.fy-about-page .fy-page-body a,
.fy-contact-page .fy-page-body a {

    color: #777777 !important;

    font-weight: 400 !important;

    text-decoration: none !important;

    -webkit-tap-highlight-color: transparent;
}

.fy-about-page .fy-page-body a:hover,
.fy-contact-page .fy-page-body a:hover {

    color: #111111 !important;
}


/* =========================================================
   DESKTOP — GALLERY
========================================================= */

@media (min-width: 801px) {

    .project-gallery {
        position: relative !important;

        width: 100% !important;

        max-width: 100vw !important;

        margin: 0 !important;

        padding: 0 !important;

        overflow: hidden !important;
    }

    .project-gallery-viewport {
        position: relative !important;

        width: 100% !important;

        height: 70vh !important;

        margin: 0 !important;

        padding: 0 !important;

        overflow: hidden !important;
    }

    /*
     * فقط ظاهر فلش‌ها اصلاح شده.
     * left/right آزاد هستند تا JavaScript
     * آنها را روی خود عکس قرار دهد.
     */

    .project-gallery .project-gallery-arrow {

        position: absolute !important;

        top: 50% !important;

        width: 34px !important;
        height: 34px !important;

        margin: 0 !important;
        padding: 0 !important;

        display: flex !important;

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

        border: 0 !important;
        outline: 0 !important;

        background: transparent !important;

        color: #555555 !important;

        font-family:
            Arial,
            Helvetica,
            sans-serif !important;

        font-size: 26px !important;

        font-weight: 300 !important;

        line-height: 34px !important;

        opacity: 0.9 !important;

        visibility: visible !important;

        transform: translateY(-50%) !important;

        cursor: pointer !important;

        z-index: 100 !important;

        box-shadow: none !important;

        text-shadow: none !important;
    }

    /*
     * مهم:
     * این دو مقدار دیگر فلش را از عکس دور نمی‌کنند.
     * موقعیت دقیق توسط JavaScript تعیین می‌شود.
     */

    .project-gallery .project-gallery-prev {

        left: auto !important;

        right: auto !important;
    }

    .project-gallery .project-gallery-next {

        left: auto !important;

        right: auto !important;
    }

    .project-gallery .project-gallery-arrow:hover {

        color: #111111 !important;

        opacity: 1 !important;

        transform:
            translateY(-50%)
            scale(1.05) !important;
    }

    .project-info {

        width: 100% !important;

        max-width: none !important;

        margin-top: 65px !important;

        margin-right: 0 !important;
        margin-bottom: 80px !important;
        margin-left: 0 !important;

        padding-top: 0 !important;
        padding-bottom: 0 !important;

        padding-left: var(--pad) !important;
        padding-right: var(--pad) !important;

        box-sizing: border-box !important;
    }

    .project-description {

        width: 100% !important;

        max-width: none !important;
    }
}


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

@media (max-width: 800px) {

    /* =====================================================
       BRAND
    ===================================================== */

    body .site-brand {

        position: fixed !important;

        top: 17px !important;

        left: 50% !important;

        right: auto !important;

        width: auto !important;

        height: 30px !important;

        margin: 0 !important;

        padding: 0 !important;

        transform: translateX(-50%) !important;

        z-index: 100000 !important;

        text-align: center !important;
    }

    body .site-brand a {

        display: flex !important;

        flex-direction: row !important;

        align-items: center !important;

        justify-content: center !important;

        direction: ltr !important;

        white-space: nowrap !important;

        text-align: center !important;

        color: #111111 !important;

        font-size: 16px !important;

        font-weight: 600 !important;

        line-height: 1.15px !important;

        height: 30px !important;
    }

    body .site-brand a span {

        display: inline !important;

        white-space: nowrap !important;

        direction: ltr !important;

        text-align: center !important;

        letter-spacing: 2px !important;
    }

    body .site-brand a span + span {

        margin-left: 4px !important;
    }


    /* =====================================================
       HAMBURGER
    ===================================================== */

    body .mobile-menu-toggle {

        position: fixed !important;

        top: 17px !important;

        left: calc(50% + 88px) !important;

        right: auto !important;

        width: 30px !important;

        height: 30px !important;

        margin: 0 !important;

        padding: 0 !important;

        display: block !important;

        transform: none !important;

        z-index: 100001 !important;

        background: transparent !important;

        border: 0 !important;

        outline: 0 !important;

        box-shadow: none !important;
    }

    body .mobile-menu-toggle span,
    body .mobile-menu-toggle .hamburger-icon,
    body .mobile-menu-toggle .hamburger-line,
    body .mobile-menu-toggle .hamburger-line-1,
    body .mobile-menu-toggle .hamburger-line-2,
    body .mobile-menu-toggle .hamburger-line-3 {

        display: none !important;
    }

    body .mobile-menu-toggle::before {

        content: "" !important;

        position: absolute !important;

        left: 0 !important;

        top: 7px !important;

        width: 22px !important;

        height: 1px !important;

        display: block !important;

        background: #666666 !important;

        border: 0 !important;

        opacity: 1 !important;

        visibility: visible !important;

        box-shadow:
            0 6px 0 #666666,
            0 12px 0 #666666 !important;

        transform: none !important;
    }

    body .mobile-menu-toggle::after {

        content: none !important;

        display: none !important;
    }

    body.mobile-menu-open .mobile-menu-toggle::before {

        left: 0 !important;

        top: 13px !important;

        width: 22px !important;

        height: 1px !important;

        background: #666666 !important;

        box-shadow: none !important;

        transform: rotate(45deg) !important;
    }

    body.mobile-menu-open .mobile-menu-toggle::after {

        content: "" !important;

        position: absolute !important;

        left: 0 !important;

        top: 13px !important;

        width: 22px !important;

        height: 1px !important;

        display: block !important;

        background: #666666 !important;

        border: 0 !important;

        transform: rotate(-45deg) !important;
    }


    /* =====================================================
       MENU PANEL
    ===================================================== */

    body .site-menu {

        position: fixed !important;

        top: 0 !important;

        left: 0 !important;

        right: 0 !important;

        width: 100vw !important;

        max-width: 100vw !important;

        height: auto !important;

        min-height: 0 !important;

        margin: 0 !important;

        padding:
            82px 28px 28px !important;

        background: #ffffff !important;

        box-sizing: border-box !important;

        z-index: 9000 !important;

        opacity: 0 !important;

        visibility: hidden !important;

        transform: translateY(-8px) !important;

        transition:
            opacity 0.2s ease,
            visibility 0.2s ease,
            transform 0.2s ease !important;

        overflow: visible !important;
    }

    body.mobile-menu-open .site-menu {

        opacity: 1 !important;

        visibility: visible !important;

        transform: translateY(0) !important;

        width: 100vw !important;

        max-width: 100vw !important;
    }


    /* =====================================================
       MENU LIST
    ===================================================== */

    body .site-menu .menu-list {

        width: 100% !important;

        margin: 0 !important;

        padding: 0 !important;

        list-style: none !important;
    }

    body .site-menu .menu-list > li {

        margin: 0 0 5px !important;

        padding: 0 !important;
    }

    body .site-menu .menu-list > li.menu-item-has-children {

        margin-bottom: 0 !important;
    }

    body .site-menu .menu-list > li.menu-item-has-children > .sub-menu {

        margin-top: 2px !important;

        margin-bottom: 0 !important;

        padding-left: 14px !important;
    }

    body .site-menu .menu-list > li.menu-item-has-children + li {

        margin-top: 22px !important;
    }

    body .site-menu .menu-list > li.menu-item-has-children + li.menu-item-has-children {

        margin-bottom: 0 !important;
    }

    body .site-menu .menu-list > li.menu-item-has-children + li.menu-item-has-children > .sub-menu {

        margin-top: 2px !important;

        margin-bottom: 0 !important;
    }


    /* =====================================================
       ABOUT
    ===================================================== */

    body .site-menu .menu-list > li#menu-item-138 {

        margin-top: 50px !important;

        margin-bottom: 5px !important;

        padding-top: 0 !important;

        padding-bottom: 0 !important;
    }


    /* =====================================================
       CONTACT
    ===================================================== */

    body .site-menu .menu-list > li#menu-item-134 {

        margin-top: 0 !important;

        padding-top: 0 !important;

        padding-bottom: 0 !important;
    }


    /* =====================================================
       MENU LINKS
    ===================================================== */

    body .site-menu a {

        color: #666666 !important;

        font-size: 13px !important;

        font-weight: 400 !important;

        line-height: 1.55 !important;

        -webkit-tap-highlight-color: transparent !important;
    }

    body .site-menu a:focus,
    body .site-menu a:active {

        outline: none !important;

        box-shadow: none !important;

        background: transparent !important;
    }

    body .site-menu .project-submenu-item a {

        color: #777777 !important;

        font-size: 13px !important;

        font-weight: 400 !important;

        line-height: 1.6 !important;
    }

    body .site-menu .menu-item-has-children > .sub-menu a {

        font-size: 13px !important;

        line-height: 1.6 !important;

        color: #777777 !important;
    }


    /* =====================================================
       GALLERY — MOBILE
    ===================================================== */

    .project-gallery-viewport {

        height: 62vh;
    }

    .project-gallery-slide img {

        max-width: 88vw;

        max-height: 56vh;
    }

    /*
     * فقط ظاهر فلش‌ها اصلاح شده.
     * موقعیت افقی توسط JavaScript تعیین می‌شود.
     */

    .project-gallery-arrow {

        width: 30px !important;

        height: 30px !important;

        font-size: 22px !important;

        line-height: 30px !important;

        color: #666666 !important;

        opacity: 0.9 !important;

        transform: translateY(-50%) !important;
    }

    .project-gallery-prev {

        left: auto !important;

        right: auto !important;
    }

    .project-gallery-next {

        left: auto !important;

        right: auto !important;
    }

    .project-gallery-arrow:hover {

        color: #111111 !important;

        opacity: 1 !important;

        transform: translateY(-50%) !important;
    }


    /* =====================================================
       PROJECT INFO
    ===================================================== */

    .project-info {

        width: auto;

        max-width: none;

        margin:
            50px 30px 60px;
    }

    .project-title {

        font-size: 18px;

        margin-bottom: 20px;
    }

    .project-description {

        font-size: 14px;

        line-height: 1.75;
    }


    /* =====================================================
       ABOUT / CONTACT
    ===================================================== */

    body .fy-editorial-page {

        padding:
            125px 24px 50px !important;
    }

    body .fy-editorial-content {

        width: 100% !important;

        max-width: 620px !important;
    }

    body .fy-about-page {

        padding-top: 125px !important;
    }

    body .fy-about-page h1,
    body .fy-about-page h2,
    body .fy-about-page h3,
    body .fy-contact-page h1,
    body .fy-contact-page h2,
    body .fy-contact-page h3 {

        font-size: 18px !important;

        margin-bottom: 20px !important;
    }

    body .fy-about-page .fy-page-body,
    body .fy-contact-page .fy-page-body,
    body .fy-about-page .fy-page-body p,
    body .fy-contact-page .fy-page-body p {

        font-size: 14px !important;

        line-height: 1.75 !important;
    }


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

    body.home .home-screen {

        align-items: flex-start !important;

        padding-top: 72px !important;
    }

}


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

@media (max-width: 480px) {

    .project-gallery-viewport {

        height: 56vh;
    }

    .project-gallery-slide img {

        max-width: 90vw;

        max-height: 50vh;
    }

    .project-info {

        margin-left: 24px;

        margin-right: 24px;
    }

    .fy-editorial-page {

        padding-left: 20px !important;

        padding-right: 20px !important;
    }
}


/* =========================================================
   BRAND LETTER SPACING
========================================================= */

.site-brand a span {

    letter-spacing: 2px !important;
}


/* =========================================================
   FINAL MENU SPACING OVERRIDE
========================================================= */

.site-menu .menu-list > li#menu-item-138 {

    margin-top: 50px !important;

    margin-bottom: 5px !important;

    padding-top: 0 !important;

    padding-bottom: 0 !important;
}

.site-menu .menu-list > li#menu-item-134 {

    margin-top: 0 !important;

    padding-top: 0 !important;

    padding-bottom: 0 !important;
}

.site-menu .menu-list > li#menu-item-138,
.site-menu .menu-list > li#menu-item-134 {

    position: relative !important;
}


/* =========================================================
   FINAL ACTIVE MENU OVERRIDE — DESKTOP
========================================================= */

@media (min-width: 801px) {

    .site-menu .current-menu-item > a,
    .site-menu .current_page_item > a,
    .site-menu .current-menu-parent > a,
    .site-menu .current-menu-ancestor > a {

        color: #2f6fed !important;

        font-weight: 600 !important;
    }

}
/* =========================================================
   PROJECT GALLERY — FINAL ARROW POSITION ONLY
   فقط جای فلش‌های گالری پروژه
========================================================= */

.project-gallery .project-gallery-prev {
    left: 16px !important;
    right: auto !important;
}

.project-gallery .project-gallery-next {
    left: auto !important;
    right: 16px !important;
}

@media (max-width: 800px) {

    .project-gallery .project-gallery-prev {
        left: 8px !important;
        right: auto !important;
    }

    .project-gallery .project-gallery-next {
        left: auto !important;
        right: 8px !important;
    }

}
/* =========================================================
   PROJECT GALLERY — SLIDES FIX ONLY
   فقط اصلاح نمایش تمام اسلایدهای گالری
========================================================= */

.project-gallery-viewport {
    overflow: hidden !important;
}

.project-gallery-track {
    display: flex !important;
    flex-wrap: nowrap !important;
    width: max-content !important;
    min-width: 100% !important;
    height: 100% !important;
}

.project-gallery-slide {
    flex: 0 0 100vw !important;
    width: 100vw !important;
    height: 100% !important;
}
/* =========================================================
   PROJECT GALLERY — FINAL SLIDER LAYOUT
   فقط اصلاح ساختار اسلایدهای گالری Project
========================================================= */

.project-gallery {
    position: relative !important;
    width: 100% !important;
    max-width: 100vw !important;
    overflow: hidden !important;
}

.project-gallery-viewport {
    position: relative !important;
    width: 100% !important;
    height: 70vh !important;
    overflow: hidden !important;
}

.project-gallery-track {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    min-width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: translate3d(0, 0, 0);
    will-change: transform !important;
}

.project-gallery-slide {
    display: flex !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
}

.project-gallery-slide img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 78vw !important;
    max-height: 62vh !important;
    margin: 0 auto !important;
    padding: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* فلش‌ها داخل قاب گالری بمانند */
.project-gallery .project-gallery-prev {
    left: 16px !important;
    right: auto !important;
}

.project-gallery .project-gallery-next {
    left: auto !important;
    right: 16px !important;
}

@media (max-width: 800px) {

    .project-gallery-viewport {
        height: 62vh !important;
    }

    .project-gallery-slide img {
        max-width: 88vw !important;
        max-height: 56vh !important;
    }

    .project-gallery .project-gallery-prev {
        left: 8px !important;
        right: auto !important;
    }

    .project-gallery .project-gallery-next {
        left: auto !important;
        right: 8px !important;
    }

}
/* =========================================================
   PROJECT GALLERY — SIMPLE ONE-IMAGE VIEW
   فقط نمایش یک عکس در هر زمان
========================================================= */

.project-gallery-track {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    transform: none !important;
}

.project-gallery-slide {
    display: none;
    width: 100% !important;
    height: 100% !important;
}

.project-gallery-slide.is-active {
    display: flex !important;
}
/* =========================================================
   PROJECT GALLERY — FINAL SINGLE-SLIDE OVERRIDE
   فقط برای گالری صفحه‌های Project
========================================================= */

.project-gallery {
    position: relative !important;
    width: 100% !important;
    max-width: 100vw !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

.project-gallery-viewport {
    position: relative !important;
    width: 100% !important;
    height: 70vh !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

.project-gallery-track {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    transition: none !important;
}

.project-gallery-slide {
    display: none !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
}

.project-gallery-slide.is-active {
    display: flex !important;
}

.project-gallery-slide img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 78vw !important;
    max-height: 62vh !important;
    margin: 0 auto !important;
    padding: 0 !important;
    object-fit: contain !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* فلش‌ها فقط داخل قاب گالری */
.project-gallery .project-gallery-prev {
    left: 16px !important;
    right: auto !important;
}

.project-gallery .project-gallery-next {
    left: auto !important;
    right: 16px !important;
}

@media (max-width: 800px) {

    .project-gallery-viewport {
        height: 62vh !important;
    }

    .project-gallery-slide img {
        max-width: 88vw !important;
        max-height: 56vh !important;
    }

    .project-gallery .project-gallery-prev {
        left: 8px !important;
        right: auto !important;
    }

    .project-gallery .project-gallery-next {
        left: auto !important;
        right: 8px !important;
    }

}
/* =========================================================
   PROJECT GALLERY — STATIC EDITORIAL VERSION
   فقط گالری صفحات Project
========================================================= */

.project-gallery-static {
    width: 100% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 0 28px !important;
    overflow: visible !important;
}

.project-gallery-static .project-gallery-image {
    display: block !important;
    width: 100% !important;
    margin: 0 0 34px !important;
    padding: 0 !important;
}

.project-gallery-static .project-gallery-image img {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

@media (max-width: 800px) {

    .project-gallery-static {
        padding: 0 16px !important;
    }

    .project-gallery-static .project-gallery-image {
        margin-bottom: 22px !important;
    }

}
/* =========================================================
   PROJECT GALLERY — CENTERED IMAGE SIZE
   فقط اندازهٔ عکس‌های گالری Project
========================================================= */

.project-gallery-static {
    max-width: 1260px !important;
}

.project-gallery-static .project-gallery-image {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    margin: 0 0 46px !important;
}

.project-gallery-static .project-gallery-image img {
    display: block !important;
    width: auto !important;
    max-width: 82vw !important;
    height: auto !important;
    max-height: 82vh !important;
    object-fit: contain !important;
}

@media (max-width: 800px) {

    .project-gallery-static .project-gallery-image {
        margin-bottom: 28px !important;
    }

    .project-gallery-static .project-gallery-image img {
        max-width: 90vw !important;
        max-height: 76vh !important;
    }

}
/* =========================================================
   PROJECT GALLERY — SIMPLE SLIDER
   فقط گالری اسلایدی صفحات Project
========================================================= */

.project-gallery-slider {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
}

.fy-slider-stage {
    position: relative !important;
    width: 100% !important;
    height: 76vh !important;
    min-height: 430px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
}

.fy-slider-slide {
    position: absolute !important;
    inset: 0 !important;
    display: none !important;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
}

.fy-slider-slide.is-active {
    display: flex !important;
}

.fy-slider-slide img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 68vw !important;
    max-height: 68vh !important;
    margin: 0 auto !important;
    padding: 0 !important;
    object-fit: contain !important;
}

.fy-slider-arrow {
    position: absolute !important;
    top: 50% !important;
    z-index: 20 !important;
    width: 38px !important;
    height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    color: #555555 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 30px !important;
    font-weight: 300 !important;
    line-height: 38px !important;
    text-align: center !important;
    cursor: pointer !important;
    opacity: 0.9 !important;
    transform: translateY(-50%) !important;
}

.fy-slider-arrow:hover {
    color: #111111 !important;
    opacity: 1 !important;
}

.fy-slider-prev {
    left: calc(50% - 37vw) !important;
}

.fy-slider-next {
    right: calc(50% - 37vw) !important;
}

@media (max-width: 800px) {

    .fy-slider-stage {
        height: 64vh !important;
        min-height: 330px !important;
    }

    .fy-slider-slide img {
        max-width: 78vw !important;
        max-height: 58vh !important;
    }

    .fy-slider-arrow {
        width: 32px !important;
        height: 32px !important;
        font-size: 25px !important;
        line-height: 32px !important;
    }

    .fy-slider-prev {
        left: calc(50% - 45vw) !important;
    }

    .fy-slider-next {
        right: calc(50% - 45vw) !important;
    }

}
/* =========================================================
   FY SLIDER — ARROWS ON IMAGE + SOFT FADE
========================================================= */

.fy-slider-slide {
    opacity: 0 !important;
    visibility: hidden !important;
    transition: opacity 1.2s ease-in-out !important;
}

.fy-slider-slide.is-active {
    opacity: 1 !important;
    visibility: visible !important;
}

/* فلش‌ها روی لبه‌های خود عکس */
.fy-slider-prev {
    left: calc(50% - 34vw - 18px) !important;
    right: auto !important;
}

.fy-slider-next {
    left: auto !important;
    right: calc(50% - 34vw - 18px) !important;
}

@media (max-width: 800px) {

    .fy-slider-prev {
        left: calc(50% - 39vw - 12px) !important;
        right: auto !important;
    }

    .fy-slider-next {
        left: auto !important;
        right: calc(50% - 39vw - 12px) !important;
    }

}
/* =========================================================
   FY PROJECT SLIDER — FINAL ARROW & MOBILE SPACING
========================================================= */

/* Fade نرم بین عکس‌ها */
.fy-slider-slide {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: opacity 1.15s ease-in-out !important;
}

.fy-slider-slide.is-active {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

/* دسکتاپ: فلش‌ها داخل فضای تصویر، نه در کناره صفحه */
@media (min-width: 801px) {

    .fy-slider-prev {
        left: calc(50% - 26vw) !important;
        right: auto !important;
    }

    .fy-slider-next {
        left: auto !important;
        right: calc(50% - 26vw) !important;
    }

}

/* موبایل: فلش‌ها کمی از لبه‌ها به سمت مرکز بیایند */
@media (max-width: 800px) {

    .fy-slider-prev {
        left: calc(50% - 39vw) !important;
        right: auto !important;
    }

    .fy-slider-next {
        left: auto !important;
        right: calc(50% - 39vw) !important;
    }

    .project-info {
        margin-top: 8px !important;
        margin-bottom: 56px !important;
    }

    .project-title {
        margin-bottom: 12px !important;
    }

}
/* =========================================================
   FY SLIDER — SMOOTH HORIZONTAL SLIDE
========================================================= */

.project-gallery-slider {
    overflow: hidden !important;
}

.fy-slider-stage {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: 100% !important;
    overflow: visible !important;
    will-change: transform !important;
}

.fy-slider-slide {
    position: relative !important;
    inset: auto !important;
    display: flex !important;
    flex: 0 0 100% !important;
    width: 100% !important;
    height: 100% !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transition: none !important;
}

@media (min-width: 801px) {

    .fy-slider-prev {
        left: calc(50% - 26vw) !important;
        right: auto !important;
    }

    .fy-slider-next {
        left: auto !important;
        right: calc(50% - 26vw) !important;
    }

}

@media (max-width: 800px) {

    .fy-slider-prev {
        left: calc(50% - 39vw) !important;
        right: auto !important;
    }

    .fy-slider-next {
        left: auto !important;
        right: calc(50% - 39vw) !important;
    }

    .project-info {
        margin-top: 8px !important;
        margin-bottom: 56px !important;
    }

    .project-title {
        margin-bottom: 8px !important;
    }

}
/* =========================================================
   FY PROJECT SLIDER — REAL TRACK / SMOOTH SLIDE
========================================================= */

.project-gallery-slider {
    position: relative !important;
    width: 100% !important;
    height: 76vh !important;
    min-height: 430px !important;
    overflow: hidden !important;
}

.fy-slider-window {
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
}

.fy-slider-track {
    display: flex !important;
    flex-wrap: nowrap !important;
    width: max-content !important;
    min-width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    will-change: transform !important;
}

.fy-slider-slide {
    position: relative !important;
    inset: auto !important;
    display: flex !important;
    flex: 0 0 100vw !important;
    width: 100vw !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transition: none !important;
}

.fy-slider-slide img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 68vw !important;
    max-height: 68vh !important;
    margin: 0 auto !important;
    padding: 0 !important;
    object-fit: contain !important;
}

@media (max-width: 800px) {

    .project-gallery-slider {
        height: 64vh !important;
        min-height: 330px !important;
    }

    .fy-slider-slide {
        flex-basis: 100vw !important;
        width: 100vw !important;
    }

    .fy-slider-slide img {
        max-width: 78vw !important;
        max-height: 58vh !important;
    }

    /* فاصلهٔ گالری تا عنوان و متن */
    .project-gallery-slider + .project-info,
    .project-info {
        margin: 8px 30px 56px !important;
    }

    .project-title {
        margin-bottom: 8px !important;
    }

}
/* =========================================================
   FY PROJECT SLIDER — PIXEL TRACK + MOBILE INFO GAP
========================================================= */

.fy-slider-window {
    position: relative !important;
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
}

.fy-slider-track {
    display: flex !important;
    flex-wrap: nowrap !important;
    width: auto !important;
    min-width: 100% !important;
    height: 100% !important;
    will-change: transform !important;
}

.fy-slider-slide {
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    height: 100% !important;
}

@media (max-width: 800px) {

    .project-entry .project-info {
        margin: 0 30px 56px !important;
        padding-top: 0 !important;
    }

    .project-entry .project-title {
        margin-top: 0 !important;
        margin-bottom: 8px !important;
    }

}
/* =========================================================
   FY PROJECT SLIDER — OVERLAY SLIDE, NO BLANK TRACK
========================================================= */

.project-gallery-slider {
    position: relative !important;
    height: 76vh !important;
    min-height: 430px !important;
    overflow: hidden !important;
}

.fy-slider-window,
.fy-slider-track {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    transform: none !important;
    transition: none !important;
}

.fy-slider-slide {
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translateX(4%) !important;
    transition:
        opacity 1.6s ease-in-out,
        transform 1.6s cubic-bezier(.22,.61,.36,1),
        visibility 0s linear 1.6s !important;
}

.fy-slider-slide.is-active {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateX(0) !important;
    transition:
        opacity 1.6s ease-in-out,
        transform 1.6s cubic-bezier(.22,.61,.36,1),
        visibility 0s !important;
}

.fy-slider-slide.is-leaving {
    opacity: 0 !important;
    transform: translateX(-4%) !important;
}

.fy-slider-slide.is-entering {
    opacity: 0 !important;
    visibility: visible !important;
    transform: translateX(4%) !important;
    transition: none !important;
}

.fy-slider-slide img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 68vw !important;
    max-height: 68vh !important;
    object-fit: contain !important;
}

/* موبایل: عنوان دقیقاً پس از پایان قاب گالری */
@media (max-width: 800px) {

    .project-gallery-slider {
        height: 47vh !important;
        min-height: 240px !important;
        margin-bottom: 0 !important;
    }

    .project-entry > .project-info {
        margin: 0 30px 56px !important;
        padding: 0 !important;
    }

    .project-entry > .project-info .project-title {
        margin-top: 0 !important;
        margin-bottom: 8px !important;
    }

    .fy-slider-slide img {
        max-width: 78vw !important;
        max-height: 52vh !important;
    }

}
/* =========================================================
   MOBILE — REMOVE BLUE TAP HIGHLIGHT
========================================================= */

@media (max-width: 800px) {

    .mobile-menu-toggle,
    .fy-slider-arrow {
        -webkit-tap-highlight-color: transparent !important;
        tap-highlight-color: transparent !important;
        -webkit-touch-callout: none;
        user-select: none;
    }

    .mobile-menu-toggle:focus:not(:focus-visible),
    .fy-slider-arrow:focus:not(:focus-visible) {
        outline: none !important;
        box-shadow: none !important;
    }

}
/* =========================================================
   PROJECT GALLERY — GRID VERSION
   فقط پروژه‌هایی با <!-- gallery: grid -->
========================================================= */

.project-gallery-grid {
    width: 100% !important;
    max-width: 1180px !important;
    margin: 0 auto !important;
    padding: 0 28px !important;

    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;

    overflow: visible !important;
}

.project-gallery-grid .fy-grid-item {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;

    background: #ffffff !important;
}

.project-gallery-grid .fy-grid-item img,
.project-gallery-grid .fy-grid-item video {
    display: block !important;

    width: 100% !important;
    height: auto !important;
    max-height: 72vh !important;

    margin: 0 !important;
    padding: 0 !important;

    object-fit: contain !important;
}

@media (max-width: 800px) {

    .project-gallery-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;

        padding: 0 16px !important;
    }

    .project-gallery-grid .fy-grid-item img,
    .project-gallery-grid .fy-grid-item video {
        max-height: none !important;
    }

    .project-gallery-grid + .project-info {
        margin-top: 18px !important;
    }

}
.project-info {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
    margin-top: 48px !important;
    margin-bottom: 60px !important;
}

.project-title {
    font-size: 20px !important;
    color: #111111 !important;
}

.project-description {
    font-size: 14px !important;
    color: #555555 !important;
}
.project-info {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    margin-top: 48px !important;
    margin-bottom: 60px !important;
}

.project-title {
    display: block !important;
    font-size: 20px !important;
    color: #111111 !important;
    margin-bottom: 12px !important;
}

.project-description {
    display: block !important;
    font-size: 14px !important;
    color: #555555 !important;
}
/* Force show project title and description */
.project-info {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    margin-top: 48px !important;
    margin-bottom: 60px !important;
}

.project-info .project-title {
    display: block !important;
    font-size: 20px !important;
    color: #111111 !important;
    margin-bottom: 12px !important;
}

.project-info .project-description {
    display: block !important;
    font-size: 14px !important;
    color: #555555 !important;
}
.project-info .project-title {
    display: block !important;
    font-size: 20px !important;
    color: #111111 !important;
    margin-bottom: 12px !important;
}
.project-info .project-title {
    display: block !important;
    font-size: 20px !important;
    color: #111111 !important;
    margin-bottom: 12px !important;
}
.project-info .project-title {
    display: block !important;
    font-size: 20px !important;
    color: #111111 !important;
    margin-bottom: 12px !important;


}
@media (max-width: 800px) {

    .project-info {
        margin-top: 12px !important;
    }

    .project-info .project-title {
        margin-bottom: 8px !important;
    }

}
.project-gallery-grid + .project-info .project-description {
    text-align: left !important;
    font-size: 14px !important;
    color: #555555 !important;
    line-height: 1.6 !important;
}
/* Grid Gallery - Small gap */
.project-gallery-grid {
    gap: 6px !important;
}

/* Grid Gallery - Title and Description like slider */
.project-gallery-grid + .project-info .project-title {
    display: block !important;
    font-size: 20px !important;
    color: #111111 !important;
    margin-bottom: 12px !important;
    text-align: left !important;
}

.project-gallery-grid + .project-info .project-description {
    display: block !important;
    font-size: 14px !important;
    color: #555555 !important;
    line-height: 1.6 !important;
    text-align: left !important;
}
/* FORCE GLOBAL FONT - MUST BE LAST */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video, button, input, select, textarea {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif !important;
}