:root {
    --primary-blue: #2A7F9E;
    --accent-green: #4CAF50;
    --neutral-gray: #F4F7F6;
    --text-dark: #2D3748;
    --font-headings: 'Poppins', sans-serif;
    --font-body: 'Roboto', sans-serif;
}

body {
    font-family: var(--font-body);
    color: var(--text-dark);
    background-color: #FBFCFE;
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-headings);
    font-weight: 600;
}

.navbar-brand {
    font-family: var(--font-headings);
    font-weight: 600;
    color: var(--primary-blue) !important;
}

.btn-primary {
    background-color: var(--primary-blue);
    border-color: var(--primary-blue);
}

.btn-primary:hover {
    background-color: #246B86;
    border-color: #246B86;
}

.btn-secondary {
    background-color: var(--accent-green);
    border-color: var(--accent-green);
}

.btn-secondary:hover {
    background-color: #45A049;
    border-color: #45A049;
}

.hero {
    background: linear-gradient(135deg, var(--primary-blue), #5eb3d1);
    color: white;
}

.program-card {
    border: 1px solid #e2e8f0;
    transition: box-shadow .3s ease-in-out;
}

.program-card:hover {
    box-shadow: 0 4px 12px rgba(0,0,0,0.08);
}