@font-face {
    font-family: IRANSans;
    font-style: normal;
    font-display: swap;
    font-weight: bold;
    src: url('/fonts/IRANSans/woff2/IRANSansWeb_Bold.woff2') format('woff2'),
         url('/fonts/IRANSans/woff/IRANSansWeb_Bold.woff') format('woff');
}

@font-face {
    font-family: IRANSans;
    font-style: normal;
    font-display: swap;
    font-weight: 500;
    src: url('/fonts/IRANSans/woff2/IRANSansWeb_Medium.woff2') format('woff2'),
         url('/fonts/IRANSans/woff/IRANSansWeb_Medium.woff') format('woff');
}

@font-face {
    font-family: IRANSans;
    font-style: normal;
    font-display: swap;
    font-weight: 300;
    src: url('/fonts/IRANSans/woff2/IRANSansWeb_Light.woff2') format('woff2'),
         url('/fonts/IRANSans/woff/IRANSansWeb_Light.woff') format('woff');
}

@font-face {
    font-family: IRANSans;
    font-style: normal;
    font-display: swap;
    font-weight: normal;
    src: url('/fonts/IRANSans/woff2/IRANSansWeb.woff2') format('woff2'),
         url('/fonts/IRANSans/woff/IRANSansWeb.woff') format('woff');
}

html[dir="rtl"] {
    --bs-font-sans-serif: IRANSans, Tahoma, sans-serif;
    --bs-body-font-family: IRANSans, Tahoma, sans-serif;
}

html[dir="rtl"],
html[dir="rtl"] body,
html[dir="rtl"] #topnav,
html[dir="rtl"] #topnav .logo,
html[dir="rtl"] #topnav .logo .site-logo-text,
html[dir="rtl"] #topnav .navigation-menu > li > a,
html[dir="rtl"] #topnav .navigation-menu > li .submenu li a,
html[dir="rtl"] #topnav .navigation-menu > li .submenu.megamenu li .megamenu-head,
html[dir="rtl"] .h1, html[dir="rtl"] .h2, html[dir="rtl"] .h3,
html[dir="rtl"] .h4, html[dir="rtl"] .h5, html[dir="rtl"] .h6,
html[dir="rtl"] h1, html[dir="rtl"] h2, html[dir="rtl"] h3,
html[dir="rtl"] h4, html[dir="rtl"] h5, html[dir="rtl"] h6,
html[dir="rtl"] .btn, html[dir="rtl"] .badge, html[dir="rtl"] .nav-link,
html[dir="rtl"] .form-label, html[dir="rtl"] .form-control, html[dir="rtl"] .form-select,
html[dir="rtl"] .title, html[dir="rtl"] .heading, html[dir="rtl"] .para-desc,
html[dir="rtl"] .footer, html[dir="rtl"] .footer-head, html[dir="rtl"] .footer-list,
html[dir="rtl"] .breadcrumb, html[dir="rtl"] .accordion-button,
html[dir="rtl"] .card, html[dir="rtl"] .dropdown-item, html[dir="rtl"] .page-link,
html[dir="rtl"] .site-logo-text {
    font-family: IRANSans, Tahoma, sans-serif !important;
}

html[dir="rtl"] #topnav .navigation-menu > li > a,
html[dir="rtl"] #topnav .navigation-menu > li .submenu li a {
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-size: 14px;
    font-weight: 500;
}

body {
    font-size: 15px;
}

html[dir="rtl"] body {
    text-align: right;
}

html[dir="ltr"] body {
    text-align: left;
}

.site-logo-mark {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    margin-left: 8px;
    border-radius: 10px;
    background: #2f55d4;
    color: #fff;
    font-weight: 700;
    font-size: 18px;
    line-height: 1;
    vertical-align: middle;
}

.site-logo-text {
    font-size: 18px;
    font-weight: 700;
    color: #161c2d;
    vertical-align: middle;
    letter-spacing: 0;
    text-transform: none;
}

#topnav.navbar-glass,
#topnav.navbar-glass.nav-sticky {
    background: transparent !important;
    border: 0;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
}

#topnav.navbar-glass::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: rgba(255, 255, 255, 0.72);
    backdrop-filter: blur(16px) saturate(1.35);
    -webkit-backdrop-filter: blur(16px) saturate(1.35);
    pointer-events: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.45);
}

#topnav .logo,
#topnav.defaultscroll .logo,
#topnav.defaultscroll.scroll .logo,
#topnav.nav-sticky .logo {
    display: flex !important;
    align-items: center;
    gap: 10px;
    height: 74px !important;
    line-height: 74px !important;
    padding: 0 !important;
    margin-top: 0 !important;
    letter-spacing: 0;
    text-transform: none;
}

#topnav .logo img {
    display: block;
    height: 36px;
    width: 36px;
    object-fit: contain;
}

#topnav .logo .site-logo-text {
    display: flex;
    align-items: center;
    line-height: 1;
    height: 36px;
    white-space: nowrap;
}

#topnav .buy-button {
    display: flex !important;
    align-items: center;
    height: 74px !important;
    line-height: 74px !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
}

#topnav .buy-button > li {
    display: flex;
    align-items: center;
    height: 74px;
    line-height: 1 !important;
    margin: 0;
}

#topnav .navigation-menu > li > a {
    display: flex;
    align-items: center;
    height: 74px;
    min-height: 74px;
    padding-top: 0;
    padding-bottom: 0;
    text-transform: none;
    letter-spacing: 0;
    font-size: 14px;
}

.logo-footer img {
    height: 48px;
    width: 48px;
    object-fit: contain;
}

.buy-button .btn {
    line-height: 1.4;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
}

.buy-button .theme-toggle {
    width: 36px;
    height: 36px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
}

.theme-toggle .theme-toggle-sun {
    display: none;
}

[data-theme="dark"] .theme-toggle .theme-toggle-sun {
    display: inline;
}

[data-theme="dark"] .theme-toggle .theme-toggle-moon {
    display: none;
}

html[data-theme="dark"] {
    color-scheme: dark;
}

[data-theme="dark"] .site-logo-text {
    color: #f8f9fa;
}

[data-theme="dark"] #topnav.navbar-glass::before {
    background: rgba(28, 40, 54, 0.78);
    border-bottom-color: rgba(255, 255, 255, 0.06);
}

[data-theme="dark"] #topnav.navbar-glass,
[data-theme="dark"] #topnav.navbar-glass.nav-sticky {
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .post-content {
    color: #adb5bd;
}

[data-theme="dark"] .author-timeline {
    border-color: #2a3c51;
}

[data-theme="dark"] .accordion-item {
    background-color: #243044;
    border-color: #2a3c51;
}

[data-theme="dark"] .accordion-button,
[data-theme="dark"] .accordion-button.collapsed,
[data-theme="dark"] .accordion-button:not(.collapsed),
[data-theme="dark"] .accordion-button:focus {
    background-color: #243044 !important;
    color: #f8f9fa !important;
    box-shadow: none;
}

[data-theme="dark"] .accordion-button::after,
[data-theme="dark"] .accordion-button.collapsed::after {
    filter: invert(1);
}

[data-theme="dark"] .accordion-body {
    background-color: #243044;
    color: #adb5bd !important;
}

[data-theme="dark"] html[dir="ltr"] .author-timeline {
    border-color: #2a3c51;
}

.post-content {
    line-height: 1.9;
    color: #495057;
}

.post-content img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
}

.post-content h2, .post-content h3 {
    margin-top: 1.5rem;
}

.blog .card-img-top {
    height: 210px;
    object-fit: cover;
}

.author-timeline {
    list-style: none;
    padding: 0;
    margin: 0;
    border-right: 2px solid #e9ecef;
}

html[dir="ltr"] .author-timeline {
    border-right: 0;
    border-left: 2px solid #e9ecef;
}

.author-timeline-item {
    position: relative;
    padding: 0 1.5rem 1.5rem 0;
}

html[dir="ltr"] .author-timeline-item {
    padding: 0 0 1.5rem 1.5rem;
}

.author-timeline-dot {
    position: absolute;
    right: -11px;
    top: 0;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background: #2f55d4;
    color: #fff;
    font-size: 11px;
    display: flex;
    align-items: center;
    justify-content: center;
}

html[dir="ltr"] .author-timeline-dot {
    right: auto;
    left: -11px;
}

html[dir="ltr"] .site-logo-mark {
    margin-left: 0;
    margin-right: 8px;
}

.author-timeline-date {
    color: #8492a6;
    font-size: 13px;
}

.cookie-popup,
#switcher-sidebar,
.t-rtl-light,
.style-switcher {
    display: none !important;
}

.card.blog .overlay {
    pointer-events: none;
}

.hover-underline-animation {
    position: relative;
    display: inline-block;
    text-decoration: none;
}

.hover-underline-animation::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -2px;
    width: 100%;
    height: 1px;
    background: currentColor;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform .25s ease;
}

.hover-underline-animation:hover::after {
    transform: scaleX(1);
}

.text-primary-hover:hover {
    color: #2f55d4 !important;
}

.footer-bar a.text-body {
    color: #adb5bd;
}

.footer-bar a.text-body:hover {
    color: #2f55d4;
}

@media (max-width: 991px) {
    .site-logo-text {
        font-size: 16px;
    }
}
