/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/* ----------------
root style
---------------- */
:root {
    --color-gold: #caad67;
    --color-withe: #fff;
    --text-color: #333333;
    --primary-gradient: linear-gradient(87deg,
            rgba(1, 17, 40, 1) 0%,
            rgba(2, 27, 58, 1) 57%,
            rgba(1, 31, 68, 1) 100%);
    --old-gradiant: #011128;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
    color: var(--text-color);
}

.img-l-to-r{
      transform: scaleX(-1);
}

/* -----------------------------
front page
 ----------------------------- */
/* header */
#wide-nav {
    background-color: var(--color-gold);
    padding: 1rem 0;
}

#wide-nav .flex-right {
    max-width: 230px !important;
}

#wide-nav .ux-search-box .searchform {
    background-color: #fff;
    border-radius: 14px;
    padding: 4px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
}

#wide-nav .nav-column>li>a,
.nav-dropdown>li>a,
.nav-vertical-fly-out>li>a,
.nav>li>a {
    color: #fff;
}

#wide-nav .nav-size-medium>li>a {
    font-size: 1em;
}

#wide-nav .nav-box>li.active>a {
    color: #000;
    background-color: transparent;
}

#masthead {
    background: hsla(214, 94%, 6%, 1);
    background: linear-gradient(135deg, hsla(214, 94%, 6%, 1) 0%, hsla(215, 100%, 3%, 1) 50%, hsla(220, 100%, 1%, 1) 100%);
    background: -moz-linear-gradient(135deg, hsla(214, 94%, 6%, 1) 0%, hsla(215, 100%, 3%, 1) 50%, hsla(220, 100%, 1%, 1) 100%);
    background: -webkit-linear-gradient(135deg, hsla(214, 94%, 6%, 1) 0%, hsla(215, 100%, 3%, 1) 50%, hsla(220, 100%, 1%, 1) 100%);
    filter: progid: DXImageTransform.Microsoft.gradient(startColorstr="#010E1F", endColorstr="#000711", GradientType=1);
}

/* search form */
.ux-search-box .searchform .flex-col:last-child {
    order: 0;
    flex: 0 0 auto;
    padding-right: 0 !important;
}

.ux-search-box .searchform button.ux-search-submit {
    background-color: #000 !important;
    color: #fff !important;
    border-radius: 12px !important;
    width: 40px;
    height: 40px;
    min-height: auto !important;
    box-shadow: none !important;
    opacity: 1 !important;
    margin: 0 !important;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: none !important;
}

.ux-search-box .searchform button.ux-search-submit i {
    font-size: 18px;
    line-height: 1;
}

.ux-search-box .searchform input.search-field {
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    color: #333;
    padding-left: 15px !important;
    height: 40px !important;
    font-size: 14px;
    font-weight: 500;
}

.ux-search-box .flex-col {
    margin-bottom: 0 !important;
}

/* hiro */
.gw-hiro-sec-index::after {
    content: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 37.3'><path fill='%23FFFFFF' stroke='%23FFFFFF' stroke-width='0.25' stroke-miterlimit='10' d='M672,26.3c-13.9-0.9-28-1.9-41.7-2.8c-60.4-4.2-122.9-8.4-183.6-6.8c-33.6,0.9-68.2,3.6-101.6,6.2 c-41.5,3.3-84.4,6.6-127.2,6.7c-0.2,0-0.5,0-0.7,0c-78.8,0-156.2-10.9-193.5-16.1L0,10.2v27.1h900v-0.1l-37.2-1.5 C825.7,34.3,748.4,31.3,672,26.3z'/><path fill='%23CBAE68' d='M865.2,26.2c-36.9-1.5-113.7-4.5-189.3-9.4C662.1,15.9,648,15,634.4,14C572.6,9.8,508.6,5.4,445,7.1 c-35.2,0.9-70.5,3.7-104.7,6.4c-40.4,3.2-82.1,6.5-122.6,6.5c-0.2,0-0.4,0-0.6,0C142.5,20,67.7,9.5,31.7,4.4L0,0v10.2l23.6,3.3 c37.3,5.2,114.7,16.1,193.5,16.1c0.2,0,0.5,0,0.7,0c42.8-0.1,85.7-3.4,127.2-6.7c33.4-2.6,68-5.3,101.6-6.2 c60.7-1.6,123.2,2.7,183.6,6.8c13.7,0.9,27.8,1.9,41.7,2.8c76.4,5,153.7,8,190.8,9.5l37.2,1.5v-9.7L865.2,26.2z'/></svg>");
    display: block;
    width: 100%;
    line-height: 0;
    position: absolute;
    bottom: 0;
    z-index: 1;
}

/* Business consulting */
.gw-front-sec h2 {
    color: var(--color-gold);
}

.gw-card-index .col-inner {
        display: flex;
    flex-direction: column;
    align-items: center;
    border-radius: 16px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.07);
    padding: 3.5rem 2rem 2rem 2rem;
    text-align: center;
    position: relative;
    overflow: hidden;
    height: 100%;
    min-height: 400px;
    box-sizing: border-box;

    text-align: center;
}

.gw-card-index .col-inner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 14px;
    background-color: #002349;
}

.gw-card-index h3 {
    font-size: 1.75rem;

}

.service-button {
    background-color: var(--color-gold) !important;
    color: var(--color-withe) !important;
    text-decoration: none;
    padding: 0.25rem 2.5rem;
    border-radius: 8px;
    font-weight: 700;
    font-size: 1rem;
    text-transform: lowercase;
    transition: background-color 0.3s ease;
    margin-top: auto;
    margin-bottom: 0;
    margin-left: 0;
}

.service-button:hover {
    background-color: #a98a53;
}

/* history section */
.gw-history-index::before {
    content: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 57.6'><polygon fill='%23FFFFFF' points='900,0.8 900,0 0,0 0,0.8 450.7,46.4'/><polygon fill='%23CBAE68' points='450.7,46.4 0,0.8 0,10.8 450.2,56.4 451.2,56.4 900,10.8 900,0.8'/></svg>");
    display: block;
    width: 100%;
    height: 10px;
    line-height: 1;
    position: absolute;
    top: 0;
    z-index: 1;
}

/* interview section */
.gw-interview {
    background: #011128;
    background: linear-gradient(87deg, rgba(1, 17, 40, 1) 0%, rgba(2, 27, 58, 1) 57%, rgba(1, 31, 68, 1) 100%);
}

.gw-interview::before {
    content: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 10'><rect fill='%23CBAE68' width='900' height='10'/></svg>");
    display: block;
    width: 100%;
    height: 10px;
    line-height: 1;
    position: absolute;
    top: 0;
}

.gw-interview::after {
    content: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 57.6'><polygon fill='%23FFFFFF' points='900,56.8 900,57.6 0,57.6 0,56.8 450.7,11.2'/><polygon fill='%23CBAE68' points='450.7,11.2 0,56.8 0,46.8 450.2,1.2 451.2,1.2 900,46.8 900,56.8'/></svg>");
    display: block;
    width: 100%;
    line-height: 0;
    position: absolute;
    bottom: 0;
}

/* curses */
.gw-curses {
    background: #011128;
    /* فال‌بک برای مرورگرهای قدیمی */
    background: linear-gradient(87deg, rgba(1, 31, 68, 1) 0%, rgba(2, 27, 58, 1) 43%, rgba(1, 17, 40, 1) 100%);
}

.gw-curses::before {
    content: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 37.3'><path fill='%23FFFFFF' stroke='%23FFFFFF' stroke-width='0.25' stroke-miterlimit='10' d='M228,11c13.9,0.9,28,1.9,41.7,2.8c60.4,4.2,122.9,8.4,183.6,6.8c33.6-0.9,68.2-3.6,101.6-6.2 c41.5-3.3,84.4-6.6,127.2-6.7c0.2,0,0.5,0,0.7,0c78.8,0,156.2,10.9,193.5,16.1l23.7,3.3V0H0v0.1l37.2,1.5C74.3,3,151.6,6,228,11z'/><path fill='%23CBAE68' d='M34.8,11.1c36.9,1.5,113.7,4.5,189.3,9.4c13.8,0.9,27.9,1.8,41.5,2.8c61.8,4.2,125.8,8.6,189.4,6.9 c35.2-0.9,70.5-3.7,104.7-6.4c40.4-3.2,82.1-6.5,122.6-6.5c0.2,0,0.4,0,0.6,0c74.6,0,149.4,10.5,185.4,15.6l31.7,4.4V27.1 l-23.6-3.3C839,18.6,761.7,7.7,682.9,7.7c-0.2,0-0.5,0-0.7,0c-42.8,0.1-85.7,3.4-127.2,6.7c-33.4,2.6-68,5.3-101.6,6.2 c-60.7,1.6-123.2-2.7-183.6-6.8c-13.7-0.9-27.8-1.9-41.7-2.8C151.7,6,74.4,3,37.3,1.5L0.1,0v9.7L34.8,11.1z'/></svg>");
    display: block;
    width: 100%;
    height: 10px;
    line-height: 1;
    position: absolute;
    top: 0;
}

.gw-card-index-curses .col-inner{
min-height: 400px;
}

.gw-card-index-curses .col-inner,
.gw-card-icon-project .col-inner {
    border-radius: 16px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.07);
    padding: 2rem 2rem 2rem 2rem;
    text-align: center;
    position: relative;
    overflow: hidden;
    height: 100%;    
    box-sizing: border-box;
    background-color: var(--color-withe);
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.gw-card-index-curses .col-inner::before,
.gw-card-icon-project .col-inner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 14px;
    background-color: var(--color-gold);
}

.gw-card-index-curses h3,
.gw-card-icon-project h3 {
    font-size: 1.75rem;
    color: var(--text-color) !important;

}

.gw-card-index-curses .service-button,
.gw-card-icon-project .service-button {
    background-color: var(--color-gold) !important;
    color: var(--color-withe) !important;
    text-decoration: none;
    padding: 0.25rem 2.5rem;
    border-radius: 8px;
    font-weight: 700;
    font-size: 1rem;
    text-transform: lowercase;
    transition: background-color 0.3s ease;
    margin-top: auto;
    margin-bottom: 0;
    margin-left: 0;
}

.gw-card-index-curses .service-button:hover,
.gw-card-icon-project .service-button:hover {
    background-color: #a98a53;
}

.gw-curses::after {
    content: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 37.3'><path fill='%23FFFFFF' stroke='%23FFFFFF' stroke-width='0.25' stroke-miterlimit='10' d='M672,26.3c-13.9-0.9-28-1.9-41.7-2.8c-60.4-4.2-122.9-8.4-183.6-6.8c-33.6,0.9-68.2,3.6-101.6,6.2 c-41.5,3.3-84.4,6.6-127.2,6.7c-0.2,0-0.5,0-0.7,0c-78.8,0-156.2-10.9-193.5-16.1L0,10.2v27.1h900v-0.1l-37.2-1.5 C825.7,34.3,748.4,31.3,672,26.3z'/><path fill='%23CBAE68' d='M865.2,26.2c-36.9-1.5-113.7-4.5-189.3-9.4C662.1,15.9,648,15,634.4,14C572.6,9.8,508.6,5.4,445,7.1 c-35.2,0.9-70.5,3.7-104.7,6.4c-40.4,3.2-82.1,6.5-122.6,6.5c-0.2,0-0.4,0-0.6,0C142.5,20,67.7,9.5,31.7,4.4L0,0v10.2l23.6,3.3 c37.3,5.2,114.7,16.1,193.5,16.1c0.2,0,0.5,0,0.7,0c42.8-0.1,85.7-3.4,127.2-6.7c33.4-2.6,68-5.3,101.6-6.2 c60.7-1.6,123.2,2.7,183.6,6.8c13.7,0.9,27.8,1.9,41.7,2.8c76.4,5,153.7,8,190.8,9.5l37.2,1.5v-9.7L865.2,26.2z'/></svg>");
    display: block;
    width: 100%;
    line-height: 0;
    position: absolute;
    bottom: 0;
    z-index: 1;
}

.h_iframe-aparat_embed_frame {
    border-radius: 1rem;
    overflow: hidden;
    border-bottom: 18px solid var(--color-gold);
}

/* slider */
.gw-index-slider > .col-inner {
    background-color: #fff;
    border-radius: 1rem;
    border-bottom: 12px solid var(--color-gold);
    color: #000;
    min-height: 560px;

}
.gw-index-slider .flickity-prev-next-button{
    width: 56px;
}
.gw-index-slider .flickity-prev-next-button svg,
.gw-index-slider .flickity-prev-next-button .arrow{
    fill: var(--color-gold);
    padding: 12%;
}




.gw-index-slider .flickity-prev-next-button.previous{
    right: 0%;
}
.gw-index-slider .flickity-prev-next-button.next{
    left: 0%;
}

.gw-index-slider .flickity-slider > .row > .col.medium-10.small-12.large-12{
padding: 0 34px 30px;    
}

.gw-index-slider .slider-wrapper {
    min-height: 560px;
}

.gw-index-slider .slider-wrapper .slider{
        position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}
























/* -----------------------------
about me
 ----------------------------- */
.gw-aboutme-skill {
    background: #011128;
    /* فال‌بک برای مرورگرهای قدیمی */
    background: linear-gradient(87deg, rgba(1, 31, 68, 1) 0%, rgba(2, 27, 58, 1) 43%, rgba(1, 17, 40, 1) 100%);
}

.gw-btn-aboutme {
    overflow: hidden;
    border: none;
    color: #111111 !important;
}

.gw-btn-aboutme::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 14px;
    background-color: var(--color-gold);
    overflow: hidden;
}

/* -----------------------------
education page
 ----------------------------- */
.gw-education .icon-box {
    align-items: center !important;
}










/* -----------------------------
Interviews page
 ----------------------------- */
.gw-Interviews-box {
    margin-bottom: 3rem;
}

/* --- استایل افکت Luxury Gradient --- */
/* 1. کانتینر اصلی تصویر */
.gw-Interviews-box .img-inner {
    position: relative;
    /* برای قرارگیری لایه درخشش */
    display: inline-block;
    /* برای اینکه کادر اندازه تصویر باشد */
    padding: 4px;
    /* ضخامت بوردر رنگی */
    /* گرادیانت طلایی (تیره - روشن - تیره) */
    background: linear-gradient(45deg, #d09d1d, #f4e0a8, #d09d1d);
    border-radius: 16px;
    /* گردی گوشه‌های قاب بیرونی */
    z-index: 1;
    /* برای قرار گرفتن بالاتر از لایه درخشش */
    transition: transform 0.3s ease;
}

/* 2. لایه درخشش (Glow) در پشت تصویر */
.gw-Interviews-box .img-inner::before {
    content: "";
    position: absolute;
    inset: 0;
    /* پر کردن تمام فضا */
    background: inherit;
    /* استفاده از همان گرادیانت کانتینر */
    border-radius: inherit;
    /* همان گردی گوشه */
    filter: blur(10px);
    /* میزان تاری پیش‌فرض */
    opacity: 0.6;
    /* شفافیت پیش‌فرض */
    z-index: -1;
    /* قرارگیری در پشت کادر */
    transition: all 0.4s ease-in-out;
}

/* 3. استایل خود تصویر */
.gw-Interviews-box .img-inner img {
    display: block;
    /* حذف فضای خالی زیر تصاویر */
    border-radius: 12px;
    /* گردی گوشه تصویر (کمی کمتر از قاب) */
    max-width: 100%;
    /* ریسپانسیو بودن */
    height: auto;
    object-fit: cover;
}

/* 4. حالت هاور (وقتی ماوس روی عکس می‌رود) */
.gw-Interviews-box .img-inner:hover::before {
    opacity: 1;
    /* درخشش کامل */
    filter: blur(16px);
    /* تاری بیشتر برای پخش شدن نور */
}

.gw-Interviews-box .img-inner:hover {
    transform: translateY(-2px);
    /* کمی حرکت به بالا برای حس شناور بودن */
}


/* --- استایل تیتر H2 با خط زیرین نازک‌شونده (فقط سمت چپ) --- */
.gw-Interviews-box .col-inner h2 {
    position: relative;
    padding-bottom: 15px;
    /* فاصله متن تا خط */
    margin-bottom: 20px;
    /* فاصله کلی تیتر از پاراگراف */

    /* نکته کلیدی: این خط باعث می‌شود عرض h2 دقیقاً به اندازه متن باشد */
    display: inline-block;

    color: #222;
}

/* خط گرادیانت زیر تیتر */
.gw-Interviews-box .col-inner h2::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    /* پر کردن عرض موجود */
    width: 80%;
    /* عرض ۱۰۰٪ نسبت به تگ inline-block (یعنی اندازه متن) */
    height: 3px;
    /* ارتفاع خط */

    /* تغییر: گرادیانت از راست (توپر) شروع و در چپ (شفاف) محو می‌شود */
    background: linear-gradient(270deg, #d09d1d 10%, #f4e0a8 60%, transparent 100%);

    /* تغییر: سمت راست (شروع) کمی گرد، سمت چپ (پایان) کاملاً کشیده و نازک */
    border-radius: 100px 2px 2px 100px;

    /* سایه ملایم */
    box-shadow: 0 4px 10px rgba(208, 157, 29, 0.3);

    transition: all 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
    transform: scaleX(0.90);
    /* در حالت عادی خط کمی کوتاه‌تر است */
    transform-origin: right;
    /* انیمیشن از سمت راست (شروع متن) انجام شود */
}

/* افکت تعاملی */
.gw-Interviews-box .col-inner h2:hover::after {
    transform: scaleX(1);
    /* در هاور به اندازه کامل متن کشیده شود */
    box-shadow: 0 4px 15px rgba(208, 157, 29, 0.6);
    /* افزایش درخشش */
    opacity: 1;
}




/* -----------------------------
Coaching page
 ----------------------------- */
.gw-hiro-coaching::after {
    content: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 57.6'><style>.st0{fill:%23011226;}.st1{fill:%23CBAE68;}</style><polygon class='st0' points='900,57.6 900,12 451.2,57.6 '/><polygon class='st0' points='0,57.6 450.2,57.6 0,12 '/><polygon class='st1' points='0,2 0,12 450.2,57.6 451.2,57.6 900,12 900,2 450.7,47.6 '/></svg>");
    display: block;
    width: 100%;
    line-height: 0;
    position: absolute;
    bottom: 0;
    z-index: 1;
}

.gw-second-coaching {
    background: #011128;
    background: linear-gradient(180deg, rgb(3 18 40) 0%, rgb(0 14 31) 57%, rgb(0 12 28) 100%);
    min-height: 550px !important;
}

.gw-second-coaching::after {
    content: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 900 57.6'><polygon fill='%23FFFFFF' points='900,56.8 900,57.6 0,57.6 0,56.8 450.7,11.2'/><polygon fill='%23CBAE68' points='450.7,11.2 0,56.8 0,46.8 450.2,1.2 451.2,1.2 900,46.8 900,56.8'/></svg>");
    display: block;
    width: 100%;
    line-height: 0;
    position: absolute;
    bottom: 0;
}

/* accordion */
.gw-accordion,
.gw-accordion-gold {
    max-width: 900px;
    margin: 40px auto;
    background-color: transparent;
}

.gw-accordion .accordion-item,
.gw-accordion-gold .accordion-item {
    border-bottom: 2px solid var(--color-gold);
    transition: background-color 0.3s ease;
}

.gw-accordion .accordion-item:last-child,
.gw-accordion-gold .accordion-item:last-child {
    border-bottom: none;
}

.gw-accordion .accordion-item:first-child .accordion-title,
.gw-accordion-gold .accordion-item:first-child .accordion-title {
    border-top: none;
}

.gw-accordion .accordion-title,
.gw-accordion-gold .accordion-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 0;
    cursor: pointer;
    text-decoration: none;
    font-size: 1.25rem;
    font-weight: 700;
    transition: color 0.3s ease;
    border-top: none;
}

.gw-accordion .accordion-title {
    color: #f8f9fa;
    border-top: none;

}

.gw-accordion-gold .accordion-title {
    color: #111111;

}

.gw-accordion .toggle,
.gw-accordion-gold .toggle {
    all: unset;
    display: block;
    position: relative;
    width: 24px;
    height: 24px;
    margin-right: 1rem;
    font-size: 1.5rem;
    line-height: 1;
}

.gw-accordion .toggle {
    color: #f8f9fa;

}

.gw-accordion-gold .toggle {
    color: #111111;

}

.accordion-title.active {
    background-color: transparent !important;
}

.gw-accordion .toggle i,
.gw-accordion-gold .toggle i {
    display: none !important;
}

.gw-accordion .toggle::before,
.gw-accordion-gold .toggle::before {
        content: '+';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: color 0.3s ease;
    font-size: 2.5rem;
    font-weight: 100;
    margin-left: 6px;
    color: #cbae68;
}

.gw-accordion .accordion-title.plain.active,
.gw-accordion-gold .accordion-title.plain.active {
    color: var(--color-gold) !important;
}

.gw-accordion .accordion-title.plain.active .toggle,
.gw-accordion-gold .accordion-title.plain.active .toggle {
    color: var(--color-gold) !important;
}

.gw-accordion .accordion-title.plain.active .toggle::before,
.gw-accordion-gold .accordion-title.plain.active .toggle::before {
    content: '−';
}

.gw-accordion .accordion-inner,
.gw-accordion-gold .accordion-inner {
    overflow: hidden;
    transition: max-height 0.4s ease-in-out;
}

.gw-accordion .accordion-inner p,
.gw-accordion-gold .accordion-inner p {
    padding: 10px 0 20px 40px;
    font-size: 1rem;
    line-height: 1.8;
}

.gw-accordion .accordion-inner p {
    color: rgba(255, 255, 255, 0.7);
}

.gw-accordion-gold .accordion-inner p {
    color: #111111;
}

.gw-accordion .accordion-title span,
.gw-accordion-gold .accordion-title span {
    flex-grow: 1;
    text-align: right;
}
.gw-accordion.en .accordion-title span,
.gw-accordion-gold.en .accordion-title span{
    text-align: left;
}
/* card coaching */
.gw-card-index.gw-card-coaching .col-inner {
    min-height: 230px !important;
}

/* about soltanali */
.gw-sec-about-coaching {
    background: #011128;
    background: linear-gradient(87deg, rgba(1, 17, 40, 1) 0%, rgba(2, 27, 58, 1) 57%, rgba(1, 31, 68, 1) 100%);
}



/* -----------------------------
Education page
 ----------------------------- */
.logo-grid {
    display: grid;
    gap: 16px;
    /* فاصله بین آیتم ها */
    /* پیش فرض (موبایل): 3 ستون */
    grid-template-columns: repeat(3, 1fr);
}

/* تبلت (عرض حداقل 640 پیکسل): 4 ستون */
@media (min-width: 640px) {
    .logo-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

/* دسکتاپ (عرض حداقل 1024 پیکسل): 7 ستون */
@media (min-width: 1024px) {
    .logo-grid {
        grid-template-columns: repeat(7, 1fr);
    }
}

/* --- Styling --- */

.logo-item {
    border-radius: 12px;
    height: 100px;
    /* ارتفاع ثابت برای نمایش لوگوها */
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    font-size: 0.9rem;
    font-weight: 600;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
    transition: transform 0.2s, box-shadow 0.2s;
    cursor: pointer;
}

.logo-item:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 16px rgba(0, 0, 0, 0.4);
}

.logo-item img {
    max-width: 90%;
    max-height: 100%;
    /* محدود کردن ارتفاع تصویر در کادر */
    height: auto;
    object-fit: contain;
    /* اطمینان از نمایش کامل لوگو بدون برش */
    transition: opacity 0.3s;
}

.logo-item:hover img {
    opacity: 1;
}


/* -----------------------------
business consulting page
 ----------------------------- */
.gw-second-business-consulting{
background: #011128;
    background: linear-gradient(180deg, rgb(3 18 40) 0%, rgb(0 14 31) 57%, rgb(0 12 28) 100%);
    min-height: 550px !important;
}


/* -----------------------------
Footer
 ----------------------------- */
.gw-main-footer {
    background: var(--old-gradiant);
    background: var(--primary-gradient);
}

.absolute-footer {
    display: none !important;
}









/* btn light */
/* .gw-btn-light {
    border-radius: 10px;
    background-color: var(--white);
    background-image: linear-gradient(180deg, var(--white), #1b0a3033 60%, var(--white)101%);
    color: var(--indigo);
    text-transform: uppercase;
    border-radius: 4px;
    padding: 10px 3vw;
    transition: all .2s;
    box-shadow: 0 0 41px #ffffff80;
}

.gw-btn-light:hover {
    box-shadow: 0 0 21px #ffffff40, 0 0 41px #ffffff80 !important;
} */

/* ----------------
home page
---------------- */
/* sections */
/* .gw-sec-1 {
    background-color: var(--color-purple);
}

.gw-sec-2 {
    background-color: var(--color-purple-dark);
}

.gw-sec-3 {
    background-color: var(--color-purple-light);
    padding-top: 90px !important;
    padding-bottom: 90px !important;
}
.gw-sec-3 .col{
    padding-bottom: 0;
}
.gw-sec-3 .is-sticky-column{
    margin-bottom: 2rem;
} */

/* section hiro home page */
/* .gw-hiro-home {
    position: relative;
    height: 55vh;
    background-color: var(--color-purple);
    overflow: hidden;

}

.gw-hiro-home::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 300px;
    background: linear-gradient(to top, #1b0a30, transparent);
}

.gw-hiro-home::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 70%;
    height: 100%;
    z-index: 1;
    background: linear-gradient(to left, #1b0a30 62%, transparent 87%);
} */

/* animation effect hover img 1,2 */
/* .gw-gw .col-inner .img-inner {
    max-height: 0;
    overflow: hidden;
    border-width: 0;
    transition: max-height 0.7s ease-in-out;
}

.gw-gw img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 20px;
}

.gw-gw:hover .col-inner .img-inner {
    max-height: 500px;
} */

/* join us */
/* .gw-join-us .img-inner{
    border-radius: 50%;
    width: 230px;
    height: 230px;
}
.gw-join-us .img{
    width: 100% !important;
} */







































































/* --- کانتینر اصلی و خط عمودی --- */
.ztl-wrapper {
    position: relative;
    max-width: 1000px;
    margin: 50px auto;
    padding: 20px 0;
    overflow: hidden; /* جلوگیری از اسکرول افقی انیمیشن */
}

/* خط ممتد وسط */
.ztl-wrapper::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 1px;
    background-color: #e0e0e0; /* رنگ خط عمودی */
    transform: translateX(-50%);
    z-index: 0;
}

/* --- سربرگ (1400 - 2020) --- */
.ztl-header {
    text-align: center;
    font-family: "Times New Roman", serif;
    font-size: 42px;
    font-weight: bold;
    color: #000;
    margin-bottom: 40px;
    position: relative;
    z-index: 2;
    background: #fff; /* برای دیده شدن روی خط */
    display: table; /* برای وسط چین شدن بهتر */
    margin-left: auto;
    margin-right: auto;
    padding: 0 20px;
}

.ztl-header-dot {
    font-size: 24px;
    vertical-align: middle;
    margin: 0 15px;
}

/* --- ردیف آیتم‌ها --- */
.ztl-row {
    position: relative;
    display: flex;
    align-items: center;
    /* margin-bottom: 60px;  */
    opacity: 0; /* مخفی برای انیمیشن */
    transition: all 0.8s ease-out;
}

/* نقطه روی خط */
.ztl-dot {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 14px;
    height: 14px;
    background-color: #000;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
}

/* خط افقی اتصال دهنده */
.ztl-line-h {
    position: absolute;
    top: 50%;
    height: 1px;
    width: 100px; /* طول خط افقی */
    background-color: #e0e0e0;
    z-index: 1;
}


.ztl-line-h:before
 {
    content: "";
    position: absolute;
    right: 80%;
    top: 50%;
    width: 14px;
    height: 14px;
    background-color: #000;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
}


/* باکس محتوا */
.ztl-content {
    width: 40%;
    display: flex;
    align-items: center;
    gap: 15px;
}

.ztl-img-box img {
    max-width: 180px; /* سایز لوگوها */
    height: auto;
    display: block;
}

.ztl-title {
    font-size: 18px;
    font-weight: bold;
    color: #333;
}

/* --- لاجیک چپ و راست (Zigzag) --- */

/* آیتم‌های فرد (چپ) */
.ztl-row:nth-child(odd) {
    justify-content: center; /* هل دادن به چپ نسبت به وسط */
    padding-right: 50%; /* نصف صفحه خالی باشد */
    transform: translateX(-50px); /* وضعیت شروع انیمیشن */
}

.ztl-row:nth-child(odd) .ztl-content {
    flex-direction: column;
    justify-content: flex-end;
    text-align: right;
    margin-right: -80px; /* فاصله از خط وسط */
}

.ztl-row:nth-child(odd) .ztl-line-h {
    right: 50%; /* شروع از وسط */
}

/* آیتم‌های زوج (راست) */
.ztl-row:nth-child(even) {
    justify-content: space-around;
    padding-left: 50%;
    transform: translateX(50px);
}

.ztl-row:nth-child(even) .ztl-content {
    flex-direction: column; /* عکس و متن برعکس */
    justify-content: flex-end;
    text-align: left;
    margin-left: 0px;

}

.ztl-row:nth-child(even) .ztl-line-h {
    left: 50%;
}

.ztl-row:nth-child(even) .ztl-line-h:before{
    content: "";
    right: -12%;
}

.ztl-row:nth-child(odd) .ztl-line-h:before{
content: "";
    right: 80%;
}
/* --- کلاس انیمیشن (توسط JS اضافه می‌شود) --- */
.ztl-row.ztl-animate {
    opacity: 1;
    transform: translateX(0);
}

/* --- ریسپانسیو (موبایل) --- */
@media screen and (max-width: 768px) {
    .ztl-wrapper::before {
        /* left: 20px;  */
    }
    
    .ztl-header {
        font-size: 28px;
    }

    .ztl-row {
        flex-direction: column;
        padding: 0 !important;
        margin-bottom: 40px;
        transform: translateY(30px) !important;
    }

    .ztl-row.ztl-animate {
        transform: translateY(0) !important;
    }

    .ztl-dot {
        left: 20px;
    }

    .ztl-line-h {
        left: 20px !important; /* شروع خط از نقطه سمت چپ */
        width: 30px; /* خط کوتاه‌تر */
        right: auto !important;
    }

    .ztl-row:nth-child(odd) .ztl-content {
        margin-right: 386px;
    }
    .ztl-row:nth-child(even) .ztl-content {
        margin-right: -386px;
    }
    .ztl-img-box img{
        max-width: 100px;
    }
}