/* EDUCATIONAL ENTERPRISE TYPOGRAPHY SYSTEM */
/* Professional Inter font implementation with complete weight hierarchy */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');

/* Force Inter font on ALL elements */
* {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
}

html,
body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
}

/* Professional heading hierarchy */
h1, .h1 {
    font-family: 'Inter', sans-serif !important;
    font-size: 32px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    letter-spacing: -0.4px !important;
    color: #1e293b !important;
}

h2, .h2 {
    font-family: 'Inter', sans-serif !important;
    font-size: 28px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    letter-spacing: -0.3px !important;
    color: #1e293b !important;
}

h3, .h3 {
    font-family: 'Inter', sans-serif !important;
    font-size: 24px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    letter-spacing: -0.2px !important;
    color: #334155 !important;
}

h4, .h4 {
    font-family: 'Inter', sans-serif !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    letter-spacing: -0.1px !important;
    color: #334155 !important;
}

h5, .h5 {
    font-family: 'Inter', sans-serif !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    color: #475569 !important;
}

h6, .h6 {
    font-family: 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
    letter-spacing: 0.4px !important;
    color: #64748b !important;
}

/* Button typography */
.btn {
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    letter-spacing: 0px !important;
}

/* Text elements */
p, div, span, a, li, td, th {
    font-family: 'Inter', sans-serif !important;
}

/* Navigation elements */
.nav-link,
.navbar-brand,
.dropdown-item {
    font-family: 'Inter', sans-serif !important;
}

/* Small text */
small, .small {
    font-family: 'Inter', sans-serif !important;
    font-size: 12px !important;
    line-height: 1.5 !important;
    color: #64748b !important;
}

/* Professional text colors */
.text-muted {
    color: #64748b !important;
}

/* Professional weight hierarchy classes */
.font-light {
    font-weight: 300 !important;
}

.font-normal {
    font-weight: 400 !important;
}

.font-medium {
    font-weight: 500 !important;
}

.font-semibold {
    font-weight: 600 !important;
}

.font-bold {
    font-weight: 700 !important;
}

.font-extrabold {
    font-weight: 800 !important;
}

/* Text size utility classes */
.text-xs {
    font-size: 11px !important;
    line-height: 1.4 !important;
}

.text-sm {
    font-size: 13px !important;
    line-height: 1.5 !important;
}

.text-base {
    font-size: 14px !important;
    line-height: 1.6 !important;
}

.text-lg {
    font-size: 16px !important;
    line-height: 1.6 !important;
}

.text-xl {
    font-size: 18px !important;
    line-height: 1.5 !important;
}

.text-2xl {
    font-size: 20px !important;
    line-height: 1.4 !important;
}

.text-3xl {
    font-size: 24px !important;
    line-height: 1.3 !important;
}

/* Professional spacing */
.leading-tight {
    line-height: 1.2 !important;
}

.leading-normal {
    line-height: 1.6 !important;
}

.leading-relaxed {
    line-height: 1.8 !important;
}

/* Form elements typography */
.form-control,
.form-select,
.form-check-label,
input,
textarea,
select {
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}

/* Professional label styling */
label,
.form-label {
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 14px !important;
    color: #374151 !important;
    margin-bottom: 6px !important;
}

/* Table typography */
.table {
    font-family: 'Inter', sans-serif !important;
}

.table th {
    font-weight: 600 !important;
    font-size: 13px !important;
    letter-spacing: 0.3px !important;
    text-transform: uppercase !important;
    color: #4b5563 !important;
}

.table td {
    font-size: 14px !important;
    line-height: 1.5 !important;
    color: #374151 !important;
}

/* Card typography */
.card-title {
    font-family: 'Inter', sans-serif !important;
    font-weight: 600 !important;
    font-size: 18px !important;
    line-height: 1.4 !important;
    color: #1f2937 !important;
}

.card-text {
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    color: #4b5563 !important;
}

/* Force font display */
.font-inter {
    font-family: 'Inter', sans-serif !important;
}