@font-face {
    font-family: 'Vazirmatn';
    src: url('../fonts/Vazirmatn-Thin.woff2') format('woff2');
    font-style: normal;
    font-weight: 100;
    font-display: swap;
}

@font-face {
    font-family: 'Vazirmatn';
    src: url('../fonts/Vazirmatn-ExtraLight.woff2') format('woff2');
    font-style: normal;
    font-weight: 200;
    font-display: swap;
}

@font-face {
    font-family: 'Vazirmatn';
    src: url('../fonts/Vazirmatn-Light.woff2') format('woff2');
    font-style: normal;
    font-weight: 300;
    font-display: swap;
}

@font-face {
    font-family: 'Vazirmatn';
    src: url('../fonts/Vazirmatn-Regular.woff2') format('woff2');
    font-style: normal;
    font-weight: 400;
    font-display: swap;
}

@font-face {
    font-family: 'Vazirmatn';
    src: url('../fonts/Vazirmatn-Medium.woff2') format('woff2');
    font-style: normal;
    font-weight: 500;
    font-display: swap;
}

@font-face {
    font-family: 'Vazirmatn';
    src: url('../fonts/Vazirmatn-SemiBold.woff2') format('woff2');
    font-style: normal;
    font-weight: 600;
    font-display: swap;
}

@font-face {
    font-family: 'Vazirmatn';
    src: url('../fonts/Vazirmatn-Bold.woff2') format('woff2');
    font-style: normal;
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: 'Vazirmatn';
    src: url('../fonts/Vazirmatn-ExtraBold.woff2') format('woff2');
    font-style: normal;
    font-weight: 800;
    font-display: swap;
}

@font-face {
    font-family: 'Vazirmatn';
    src: url('../fonts/Vazirmatn-Black.woff2') format('woff2');
    font-style: normal;
    font-weight: 900;
    font-display: swap;
}

:root {
    --font-family: 'Vazirmatn', Tahoma, Arial, ui-sans-serif, system-ui, sans-serif;
}

html[lang='fa'],
html[dir='rtl'],
body,
button,
input,
select,
textarea {
    font-family: var(--font-family);
}

html[dir='rtl'] body {
    font-synthesis-weight: none;
    text-rendering: optimizeLegibility;
}

/* Dashboard typography: give Persian glyphs enough vertical room and avoid fallback metrics. */
.impact-home {
    font-family: var(--font-family);
    line-height: 1.8;
    letter-spacing: 0;
}

.impact-title {
    line-height: 1.55;
    letter-spacing: -0.012em;
}

.impact-copy {
    line-height: 2.1;
}

.impact-eyebrow,
.impact-btn,
.impact-stat-label,
.impact-card-link,
.impact-project-meta,
.impact-path-step span {
    line-height: 1.75;
}

.impact-card-title,
.impact-project-name,
.impact-path-step strong,
.impact-empty strong {
    line-height: 1.65;
}

.impact-stat-value {
    line-height: 1.25;
    font-variant-numeric: tabular-nums;
}
