@charset "utf-8";
@font-face {
    font-family: "IRANSansWeb";
    src: url("../fonts/IRANSansWeb_Bold.woff2") format("woff2"),
    url("../fonts/IRANSansWeb_Bold.woff") format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

body {
    font-family: "IRANSansWeb", "Tahoma", "Arial", sans-serif;
}
header video#heroVideo {
    object-fit: cover;
    min-height: 100vh;
}

header {
    height: 100vh;
    color: #fff;
}

header .btn-warning {
    background-color: #f59e0b;
    border-color: #f59e0b;
}

header .btn-warning:hover {
    background-color: #d97706;
    border-color: #d97706;
}

header .btn-light {
    color: #111827;
}

.navbar-nav .nav-link:hover {
    color: #fbbf24 !important;
}

.dropdown-menu {
    background-color: rgba(255, 255, 255, 0.95);
    border-radius: 0.5rem;
}

.dropdown-item:hover {
    background-color: #f3f4f6;
}
/* ==== Logo Style ==== */
.navbar-brand .logo-img {
    height: 48px;           /* اندازه استاندارد */
    width: auto;            /* نسبت تصویر حفظ می‌شود */
    object-fit: contain;    /* بدون کشیدگی */
    filter: drop-shadow(0 2px 4px rgba(0,0,0,0.2));
    transition: transform 0.2s ease-in-out;
}

.navbar-brand:hover .logo-img {
    transform: scale(1.05);
}

@media (max-width: 768px) {
    .navbar-brand .logo-img {
        height: 40px;
    }
}
header{ position: relative; isolation: isolate; }
header::before{
    content: "";
    position: absolute;
    inset: 0;                                /* top/right/bottom/left = 0 */
    background: rgba(107, 114, 128, 0.30);   /* Gray-500 با 0.3 شفافیت */
    z-index: 1;                               /* بالاتر از ویدیو، پایین‌تر از محتوا و برش سفید */
    pointer-events: none;
}

header::after{
    content:"";
    position:absolute;
    left:0; right:0;
    bottom:-1px;
    height:50vh;
    background:#fff;
    z-index:2;
    clip-path: polygon(
            0 100%,
            100% 100%,
            100% 22%,
            50% 50%,
            0 22%
    );
    box-shadow:0 -1px 0 rgba(0,0,0,.08);
    pointer-events:none;
}


@media (max-width: 992px){
    header::after{
        height:60vh;
        clip-path: polygon(0 100%, 100% 100%, 100% 24%, 50% 82%, 0 24%);
    }
}
@media (max-width: 576px){
    header::after{
        height:55vh;
        clip-path: polygon(0 100%, 100% 100%, 100% 26%, 50% 80%, 0 26%);
    }
}

/* اطمینان از لایه‌ها */
header video#heroVideo,
header .bg-dark.opacity-50{ position:absolute; z-index:1; }
header video#heroVideo{ position:absolute; z-index:0; }  /* ویدیو زیر همه */
header::after{ z-index:2; }                               /* برش سفید V */
nav.navbar{ position:relative; z-index:5; }
/* پروژه ما: نزدیک‌تر به برش V و تاکید رنگی */
.projects-intro{
    position: relative;
    margin-top: -25vh;   /* بیارش بالاتر؛ اگر خواستی کمتر/بیشترش کن */
    padding-top: 4rem;   /* فاصله ایمن از نوک برش تا متن */
}

.projects-intro h2 .accent{
    color: #f59e0b;      /* زرد نارنجی مطابق دکمه‌ها */
}
@media (max-width: 992px){
    .projects-intro{ margin-top: -23vh; padding-top: 3.25rem; }
}
@media (max-width: 576px){
    .projects-intro{ margin-top: -21vh; padding-top: 2.75rem; }
}

.portfolio-item{
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    aspect-ratio: 16 / 9;           /* همه کارت‌ها هم‌ارتفاع بشن */
    background: #f3f4f6;
}
.portfolio-item img{
    width: 100%; height: 100%;
    object-fit: cover;
    transition: transform .6s ease, filter .6s ease;
    display: block;
}
.portfolio-item .overlay{
    position: absolute; inset: 0;
    display: flex; align-items: end; justify-content: center;
    padding: 1rem 1.25rem;
    background: rgba(245, 158, 11, 0);   /* زرد 0 شفاف */
    transition: background .3s ease;
}
.portfolio-item .overlay-content{
    transform: translateY(16px); opacity: 0;
    transition: transform .35s ease, opacity .35s ease;
    text-align: center;
}
.portfolio-item .overlay h5{ color: #111827; font-weight: 800; }
.portfolio-item:hover img{ transform: scale(1.06); filter: saturate(1.08); }
.portfolio-item:hover .overlay{ background: rgba(245,158,11,0.85); }
.portfolio-item:hover .overlay-content{ transform: translateY(0); opacity: 1; }

/* مودال: لبه‌های کمی گرد */
#portfolioModal .modal-content{ border-radius: 14px; overflow: hidden; }
/* ==== Services Section ==== */
.services-heading{
    background: #eef1f3;      /* طوسی روشن مطابق شات */
}
.services-heading .accent{ color:#f59e0b; }

.service-hero{ overflow:hidden; }
.service-hero img{
    width:100%; height:100%;
    object-fit:cover; display:block;
}

/* شبکه‌ی سمت راست با خطوط جداکننده شبیه شات */
.services-grid .service-card{
    height:100%;
    background:#fff;
    padding: 2.75rem 1.25rem;
    text-align:center;
    border:1px solid #eceff1;        /* خطوط نازک دور هر سلول */
    display:flex; flex-direction:column; justify-content:center; gap: .75rem;
    transition: transform .15s ease, box-shadow .15s ease;
}
.services-grid .service-card:hover{
    transform: translateY(-2px);
    box-shadow: 0 8px 22px rgba(0,0,0,.06);
}

.services-grid .icon{
    font-size: 2rem;
    color:#f59e0b;                   /* نارنجی آیکون‌ها */
    line-height:1;
}
.services-grid .title{
    font-size:1.125rem;
    font-weight:800;
    color:#101213;
    margin:0;
}

/* ریسپانسیو: در موبایل فاصله‌ها کمتر و پدینگ منطقی‌تر */
@media (max-width: 576px){
    .services-grid .service-card{ padding: 2rem 1rem; }
}
/* ==== Team Section ==== */
.team-section{
    background: #f2f5f6;        /* طوسی خیلی روشن مثل شات */
}
.team-section .accent{ color:#f59e0b; }

/* آواتار دایره‌ای با قاب طوسی روشن */
.avatar-outer{
    width: 320px; height: 320px;
    border-radius: 50%;
    overflow: hidden;
    background: #e9edf0;             /* قاب نرم */
    border: 12px solid #e9edf0;       /* حلقه‌ی دور عکس */
    box-shadow: 0 10px 30px rgba(0,0,0,.06);
}
.avatar-img{
    width:100%; height:100%;
    object-fit: cover;
    display:block;
}

/* تایپوگرافی نام/نقش */
.member-name{
    font-weight: 900;
    font-size: 1.5rem;
    margin: 0;
    color: #0f172a;
}
.member-role{
    font-weight: 700;
    color: #9aa3ab;                 /* خاکستری نرم */
    margin-top: .35rem;
}

/* افکت ملایم روی هاور */
.member:hover .avatar-outer{ transform: translateY(-2px); transition: .15s ease; }

/* ریسپانسیو اندازه‌ی آواتارها */
@media (max-width: 992px){
    .avatar-outer{ width: 280px; height: 280px; }
}
@media (max-width: 576px){
    .avatar-outer{ width: 220px; height: 220px; }
}
/* ===== Blog / Latest Posts ===== */
.blog-section .accent{ color:#f59e0b; }

.post-item{
    display:flex; align-items:center; gap:1.25rem;
}
.post-item.reverse{ flex-direction: row-reverse; }

.post-thumb{
    flex:0 0 auto;
    width:120px; height:120px; border-radius:50%;
    overflow:hidden; display:block; background:#e5e7eb;
    box-shadow: 0 6px 18px rgba(0,0,0,.08);
}
.post-thumb img{
    width:100%; height:100%; object-fit:cover; display:block;
}

.post-content{ flex:1 1 auto; }
.post-link{ color:#111827; text-decoration:none; }
.post-link:hover{ text-decoration:underline; }

.post-meta{ color:#9ca3af !important; }
.post-excerpt{
    color:#4b5563;
    display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}

/* "نمایش ادامه" */
.blog-more-link{
    color:#f59e0b; font-weight:700; text-decoration:none;
}
.blog-more-link:hover{ text-decoration:underline; }

/* ریسپانسیو */
@media (max-width: 576px){
    .post-item{ gap:.9rem; }
    .post-thumb{ width:92px; height:92px; }
    .post-excerpt{ -webkit-line-clamp:2; }
}
.contact-hero{ position:relative; padding: 2.25rem 0 4.5rem; overflow:hidden; }
.contact-hero .ch-bg{
    position:absolute; inset:0;
    background-image: var(--contact-bg);
    background-size: cover; background-position: center;
    z-index:0;
}
.contact-hero .ch-overlay{
    position:absolute; inset:0;
    background: rgba(17, 24, 39, .55);  /* تیره مثل شات */
    z-index:1;
}
.contact-hero .accent{ color:#f59e0b; }

.input-soft .input-group-text{ background:#fff; border-color:#e5e7eb; color:#6b7280; }
.input-soft .form-control{ background:#fff; border-color:#e5e7eb; }
.input-soft .form-control:focus{ border-color:#f59e0b; box-shadow:0 0 0 .2rem rgba(245,158,11,.25); }
.input-soft-ta{ background:#fff; border:1px solid #e5e7eb; }
.input-soft-ta:focus{ border-color:#f59e0b; box-shadow:0 0 0 .2rem rgba(245,158,11,.25); }

#contact-hero .btn.btn-warning,
.contact-hero .btn.btn-warning{ background:#f59e0b; border-color:#f59e0b; }
#contact-hero .btn.btn-warning:hover,
.contact-hero .btn.btn-warning:hover{ background:#d97706; border-color:#d97706; }

/* تماس سمت راست */
.icon-circle{
    width:46px;height:46px;border-radius:999px;display:grid;place-items:center;
    background:#f59e0b;color:#fff;box-shadow:0 8px 18px rgba(245,158,11,.25);
}
.contact-num{ font-size:2rem; font-weight:900; color:#fff; text-decoration:none; }
.contact-mail{ font-size:1.5rem; font-weight:900; color:#fff; text-decoration:none; }

/* برش ۷ پایین سکشن (V رو به بالا) */
.ch-cut{
    position:absolute;
    left:0; right:0;
    bottom:-1px;
    height:10vh;
    background:#fff;
    z-index:2;
    clip-path: polygon(
            0 100%,
            100% 100%,
            100% 22%,
            50% 100%,
            0 22%
    );
    box-shadow:0 -1px 0 rgba(0,0,0,.08);
    pointer-events:none;
}

/* ردیف زیر تماس */
.rating-badge .badge{ border-radius:6px; }
.rating-badge .stars i{ font-size:1rem; }

/* ریسپانسیو */
@media (max-width: 992px){
    .contact-num{ font-size:1.6rem; }
    .contact-mail{ font-size:1.25rem; }
    .ch-cut{ height:120px; clip-path: polygon(0 30%, 50% 2%, 100% 30%, 100% 100%, 0 100%); }
}
@media (max-width: 576px){
    .contact-hero{ padding-bottom: 4rem; }
    .icon-circle{ width:42px;height:42px; }
    .contact-num{ font-size:1.35rem; }
    .contact-mail{ font-size:1.1rem; }
    .ch-cut{ height:100px; clip-path: polygon(0 32%, 50% 6%, 100% 32%, 100% 100%, 0 100%); }
}