.text-shadow {
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.gradient-bg {
    background: linear-gradient(135deg, #1e88e5 0%, #64b5f6 100%);
}
.card-hover {
    transition: all 0.3s ease;
}
.card-hover:hover {
    transform: translateY(-5px);
}
.btn-primary {
    background-color: #1e88e5;
    color: white;
    font-weight: bold;
    padding: 0.75rem 1.5rem;
    border-radius: 0.5rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    transition: all 0.3s ease;
}
.btn-primary:hover {
    background-color: #0d47a1;
    transform: translateY(-1px);
}
.btn-secondary {
    background-color: white;
    color: #1e88e5;
    font-weight: bold;
    padding: 0.75rem 1.5rem;
    border-radius: 0.5rem;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    border: 1px solid #1e88e5;
    transition: all 0.3s ease;
}
.btn-secondary:hover {
    background-color: #e3f2fd;
    transform: translateY(-1px);
}
.section-title {
    font-size: 1.5rem;
    font-weight: bold;
    color: #1f2937;
    margin-bottom: 1.5rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #1e88e5;
    display: inline-block;
}
@media (min-width: 768px) {
    .section-title {
        font-size: 1.875rem;
    }
}
.feature-icon {
    font-size: 2.25rem;
    color: #1e88e5;
    margin-bottom: 1rem;
}