


@font-face {
    font-family: Iransans;
    src: url('../font/Iranian\ Sans.ttf');
}

#spinner {
    opacity: 0;
    visibility: hidden;
    transition: opacity .5s ease-out, visibility 0s linear .5s;
    z-index: 99999;
}

#spinner.show {
    transition: opacity .5s ease-out, visibility 0s linear 0s;
    visibility: visible;
    opacity: 1;
}

:root {
    --pc: #2b5197;
    --sc: #7098e4;
    --c5-color: #c5c5c5;
}

/* Font + Base */
html, body {
    font-family: Iransans, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif;
    color: #222;
}

/* Brand colors */
:root{
    --pc: #2b5197;     /* primary */
    --sc: #7098e4;     /* secondary */
    --dark: #0f1b3d;
}
/* اعداد انگلیسی: کلاس کمکی برای LTR نمایش شماره‌ها */
.en { direction: ltr; unicode-bidi: plaintext; }

/* Topbar / Navbar / Footer — بدون تغییرات اصلی رنگ برند */
.topbar{ background: linear-gradient(90deg, var(--pc), var(--sc)); color:#fff; }
.topbar .social-link{ color:#fff; opacity:.85; font-size:1.1rem; }
.topbar .social-link:hover{ opacity:1; }

/* Navbar */
.shadow-nav { box-shadow: none; transition: box-shadow .2s ease, padding .2s ease; }
.navbar-scrolled { box-shadow: 0 6px 20px rgba(0,0,0,.06); }
.brand-logo{ width:46px; height:46px; object-fit:cover; border-radius:0; } /* ریدیوس حذف شد */
.brand-logo-small{ width:40px; height:40px; object-fit:cover; border-radius:0; } /* ریدیوس حذف شد */
.navbar .nav-link{ padding:.6rem .8rem; border-radius:.6rem; color:#223; transition: background .2s ease, color .2s ease; }
.navbar .nav-link:hover{ background: rgba(43,81,151,.08); color: var(--pc); }
.navbar .nav-link.active{ color: var(--pc); font-weight:600; }
.dropdown-menu{ text-align:right; }

/* CTA (outline برای دکمه ورود) */
.btn-cta-outline{
    --bs-btn-color: var(--pc);
    --bs-btn-border-color: var(--pc);
    --bs-btn-hover-bg: var(--pc);
    --bs-btn-hover-border-color: var(--pc);
    color: var(--pc);
    border: 1px solid var(--pc);
    border-radius: 10px;
    padding: .45rem .9rem;
}

/* Footer */
#site-footer .footer-top{
    background: radial-gradient(1200px 400px at 80% 0%, #203c77 0%, #172b55 50%, #101e41 100%);
    color:#fff;
}
#site-footer .footer-bottom{ background:#0c1633; color:#fff; }
.footer-links li{ margin-bottom:.45rem; }
.footer-links a{ color:#d6dcff; text-decoration:none; }
.footer-links a:hover{ color:#fff; text-decoration:underline; }
.footer-contacts li{ display:flex; align-items:center; gap:.5rem; margin-bottom:.4rem; color:#cbd2ff; }
.footer-contacts i{ color:#9fb6ff; }
.social-round{
    width:36px; height:36px; display:inline-flex; align-items:center; justify-content:center;
    background: rgba(255,255,255,.1); border-radius:50%; color:#fff; text-decoration:none;
}
.social-round:hover{ background: rgba(255,255,255,.2); }
.btn-light-subtle{ background: rgba(255,255,255,.15); border:1px solid rgba(255,255,255,.25); color:#fff; }
.btn-light-subtle:hover{ background: rgba(255,255,255,.25); }
.newsletter input::placeholder{ color:#ced6ff; }



/* HERO */
.hero-home{
    background: radial-gradient(1100px 400px at 100% -10%, var(--sc) 0%, var(--pc) 45%, #0f1b3d 100%);
    color: #fff;
}
.hero-title{ font-weight: 800; }
.hero-title .brand{ color:#fff; text-shadow: 0 6px 20px rgba(0,0,0,.18); }
.hero-media{ height: 360px; }
@media (min-width:992px){ .hero-media{ height: 420px; } }

.tracker-box .form-control{ height: 48px; }

/* Services */

.service-card { position: relative; overflow: hidden; }

.service-card .icon-wrap{
    width:48px; height:48px; border-radius:12px;
    background: rgba(43,81,151,.1); display:flex; align-items:center; justify-content:center;
}
.service-card .icon-wrap i{ font-size: 1.3rem; color: var(--pc); }
.service-card a{ color: var(--pc); text-decoration: none; }
.service-card a:hover{ text-decoration: underline; }

/* Stats */
.stats-strip{
    background: linear-gradient(90deg, var(--pc), var(--sc));
    color:#fff;
}
.stat-item .h2{ font-weight:800; }

/* Offices */
.office-card i{ vertical-align: middle; }

/* CTA band */
.cta-band{
    background: linear-gradient(90deg, var(--pc), #1f3f82);
    color:#fff;
}

