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

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

/* Apply to all elements */
* {
    font-family: 'Vazirmatn', Arial, sans-serif;
}

/* ===== Typography & Base ===== */
body {
    font-family: 'Vazirmatn', Arial, sans-serif;
}

/* ===== Reusable Components ===== */
.skill-tag {
    transition: all 0.2s;
}
.skill-tag:hover {
    transform: translateY(-2px);
}

.card-hover {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.card-hover:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}

.service-tag {
    transition: all 0.2s ease;
}
.service-tag:hover {
    transform: scale(1.05);
}

.gradient-text {
    background: linear-gradient(135deg, #3b82f6, #8b5cf6);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

.mode-card {
    transition: all 0.3s ease;
}
.mode-card:hover {
    transform: translateY(-4px);
}

/* ===== Grid Pattern ===== */
.grid-pattern {
    background-image: linear-gradient(rgba(255,255,255,0.05) 1px, transparent 1px),
                      linear-gradient(90deg, rgba(255,255,255,0.05) 1px, transparent 1px);
    background-size: 40px 40px;
}

/* ===== Footer ===== */
.site-footer {
    background-color: #0f172a; /* slate-900 */
    color: #94a3b8;            /* slate-400 */
    padding: 2rem 0;
    text-align: center;
    font-size: 0.875rem;
}


