:root {
    --bs-primary: #0879ad;
    --bs-primary-rgb: 8, 121, 173;
    --bs-warning: #fdd261;
    --bs-warning-rgb: 253, 210, 97;
    --dk-navy: #073a54;
    --dk-soft: #eef7fb;
}
body {
    color: #26343c;
}
.navbar .nav-link {
    color: rgba(255, 255, 255, 0.84);
}
.navbar .nav-link:hover,
.navbar .nav-link.active {
    color: #fff;
}
.hero {
    background: linear-gradient(130deg, var(--dk-navy), #0879ad 68%, #28a745);
    min-height: 620px;
}
.hero-orb {
    width: 23rem;
    height: 23rem;
    background: rgba(255, 255, 255, 0.11);
    border: 1px solid rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(8px);
}
.section-soft {
    background: var(--dk-soft);
}
.icon-box {
    width: 3.25rem;
    height: 3.25rem;
}
.module-card {
    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
}
.module-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 1rem 2.5rem rgba(7, 58, 84, 0.13) !important;
}
.step-number {
    width: 3rem;
    height: 3rem;
}
.quote-mark {
    font-size: 4rem;
    line-height: 0.7;
    color: var(--bs-warning);
}
.mw-30 {
    max-width: 30rem;
}
.page-hero {
    background: linear-gradient(120deg, var(--dk-navy), var(--bs-primary));
    padding: 6rem 0;
}
.form-control:focus,
.form-select:focus {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), 0.15);
}
