/* Override Bootstrap primary color to #0b4b8a */
:root {
    --bs-primary: #0b4b8a !important;
    --bs-primary-rgb: 11, 75, 138 !important;
}

/* Fix header navigation colors */
.header .navmenu a,
.header .navmenu a:focus {
    color: #ffffff !important;
}

.header .navmenu a:hover,
.header .navmenu .active,
.header .navmenu .active:focus {
    color: #76c2ff !important;
}

.header .navmenu .dropdown ul a {
    color: #0a0f14 !important;
}

.header .navmenu .dropdown ul a:hover,
.header .navmenu .dropdown ul .active:hover,
.header .navmenu .dropdown ul li:hover > a {
    color: #0a0f14 !important;
}

/* Fix header social links */
.header .header-social-links a,
.header .header-social-links a:focus {
    color: #ffffff !important;
}

.header .header-social-links a:hover {
    color: #76c2ff !important;
}

.header .header-social-links a i {
    color: inherit !important;
}

/* Mobile navigation fixes */
@media (max-width: 1199px) {
    .header .navmenu a,
    .header .navmenu a:focus {
        color: #ffffff !important;
    }
    
    .header .navmenu a:hover,
    .header .navmenu .active,
    .header .navmenu .active:focus {
        color: #76c2ff !important;
    }
    
    /* Mobile social links */
    .header .header-social-links a,
    .header .header-social-links a:focus {
        color: #ffffff !important;
    }
    
    .header .header-social-links a:hover {
        color: #76c2ff !important;
    }
}

/* Additional social links specificity - more specific */
.header .header-social-links a.twitter,
.header .header-social-links a.facebook,
.header .header-social-links a.instagram,
.header .header-social-links a.linkedin,
.header .header-social-links a.twitter i,
.header .header-social-links a.facebook i,
.header .header-social-links a.instagram i,
.header .header-social-links a.linkedin i {
    color: #ffffff !important;
}

.header .header-social-links a.twitter:hover,
.header .header-social-links a.facebook:hover,
.header .header-social-links a.instagram:hover,
.header .header-social-links a.linkedin:hover,
.header .header-social-links a.twitter:hover i,
.header .header-social-links a.facebook:hover i,
.header .header-social-links a.instagram:hover i,
.header .header-social-links a.linkedin:hover i {
    color: #76c2ff !important;
}

/* Force visibility with highest specificity */
div.header-social-links a,
div.header-social-links a i {
    color: #ffffff !important;
}

div.header-social-links a:hover,
div.header-social-links a:hover i {
    color: #76c2ff !important;
}

/* Maximum specificity for social icons */
#header .header-social-links a,
#header .header-social-links a i,
.header-container .header-social-links a,
.header-container .header-social-links a i {
    color: #ffffff !important;
}

#header .header-social-links a:hover,
#header .header-social-links a:hover i,
.header-container .header-social-links a:hover,
.header-container .header-social-links a:hover i {
    color: #76c2ff !important;
}

/* Bootstrap Icons specific override */
.header-social-links .bi-twitter-x,
.header-social-links .bi-facebook,
.header-social-links .bi-instagram,
.header-social-links .bi-linkedin {
    color: #ffffff !important;
}

.header-social-links a:hover .bi-twitter-x,
.header-social-links a:hover .bi-facebook,
.header-social-links a:hover .bi-instagram,
.header-social-links a:hover .bi-linkedin {
    color: #76c2ff !important;
}

/* NUCLEAR OPTION - Maximum specificity for social icons */
#header.header .header-container .header-social-links a,
#header.header .header-container .header-social-links a i,
#header.header .header-container .header-social-links a[href="#"],
#header.header .header-container .header-social-links a[href="#"] i {
    color: #ffffff !important;
}

#header.header .header-container .header-social-links a:hover,
#header.header .header-container .header-social-links a:hover i,
#header.header .header-container .header-social-links a[href="#"]:hover,
#header.header .header-container .header-social-links a[href="#"]:hover i {
    color: #76c2ff !important;
}

/* Force all social icons to be white */
.header-social-links a.twitter,
.header-social-links a.facebook,
.header-social-links a.instagram,
.header-social-links a.linkedin,
.header-social-links a.twitter i,
.header-social-links a.facebook i,
.header-social-links a.instagram i,
.header-social-links a.linkedin i,
.header-social-links .bi-twitter-x,
.header-social-links .bi-facebook,
.header-social-links .bi-instagram,
.header-social-links .bi-linkedin {
    color: #ffffff !important;
}

.header-social-links a.twitter:hover,
.header-social-links a.facebook:hover,
.header-social-links a.instagram:hover,
.header-social-links a.linkedin:hover,
.header-social-links a.twitter:hover i,
.header-social-links a.facebook:hover i,
.header-social-links a.instagram:hover i,
.header-social-links a.linkedin:hover i {
    color: #76c2ff !important;
}

/* Force primary color in all Bootstrap components */
.btn-primary,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active {
    background-color: #0b4b8a !important;
    border-color: #0b4b8a !important;
    color: #fff !important;
}

.btn-primary:hover {
    background-color: #093d73 !important;
    border-color: #093d73 !important;
}

/* Ensure buttons maintain their original text colors */
.btn a,
a.btn {
    color: inherit !important;
    text-decoration: none !important;
}

.btn-primary a,
a.btn-primary {
    color: #fff !important;
}

.btn-secondary a,
a.btn-secondary {
    color: #fff !important;
}

.btn-success a,
a.btn-success {
    color: #fff !important;
}

.btn-danger a,
a.btn-danger {
    color: #fff !important;
}

.btn-warning a,
a.btn-warning {
    color: #000 !important;
}

.btn-info a,
a.btn-info {
    color: #fff !important;
}

.btn-light a,
a.btn-light {
    color: #000 !important;
}

.btn-dark a,
a.btn-dark {
    color: #fff !important;
}

.bg-primary {
    background-color: #0b4b8a !important;
}

.text-primary {
    color: #0b4b8a !important;
}

.border-primary {
    border-color: #0b4b8a !important;
}

/* Links - more specific selectors to avoid conflicts */
a:not(.header .navmenu a):not(.btn):not(.btn-primary):not(.btn-secondary):not(.btn-success):not(.btn-danger):not(.btn-warning):not(.btn-info):not(.btn-light):not(.btn-dark) {
    color: #0b4b8a !important;
}

a:not(.header .navmenu a):not(.btn):not(.btn-primary):not(.btn-secondary):not(.btn-success):not(.btn-danger):not(.btn-warning):not(.btn-info):not(.btn-light):not(.btn-dark):hover {
    color: #093d73 !important;
}

/* Specific link styles for different contexts */
.text-muted a,
.card-text a,
p a,
li a:not(.btn),
.nav-link:not(.btn),
.breadcrumb-item a {
    color: #0b4b8a !important;
}

.text-muted a:hover,
.card-text a:hover,
p a:hover,
li a:not(.btn):hover,
.nav-link:not(.btn):hover,
.breadcrumb-item a:hover {
    color: #093d73 !important;
}

/* Override any conflicting Bootstrap link styles */
a:not(.btn):not(.header .navmenu a):not(.dropdown-item) {
    color: #0b4b8a !important;
}

a:not(.btn):not(.header .navmenu a):not(.dropdown-item):hover {
    color: #093d73 !important;
}

/* Form controls */
.form-control:focus,
.form-select:focus {
    border-color: #0b4b8a !important;
    box-shadow: 0 0 0 0.25rem rgba(11, 75, 138, 0.25) !important;
}

/* Pagination */
.page-link {
    color: #0b4b8a !important;
}

.page-link:hover {
    color: #093d73 !important;
}

.page-item.active .page-link {
    background-color: #0b4b8a !important;
    border-color: #0b4b8a !important;
    color: #ffffff !important;
}

.page-item.active .page-link:hover {
    background-color: #093d73 !important;
    border-color: #093d73 !important;
    color: #ffffff !important;
}

/* Ensure pagination text is always visible */
.pagination .page-link {
    color: #0b4b8a !important;
}

.pagination .page-item.active .page-link {
    background-color: #0b4b8a !important;
    border-color: #0b4b8a !important;
    color: #ffffff !important;
}

.pagination .page-item.active .page-link:focus {
    background-color: #0b4b8a !important;
    border-color: #0b4b8a !important;
    color: #ffffff !important;
    box-shadow: 0 0 0 0.25rem rgba(11, 75, 138, 0.25) !important;
}

/* Additional pagination fixes for edge cases */
.pagination li.active a,
.pagination li.active span {
    background-color: #0b4b8a !important;
    border-color: #0b4b8a !important;
    color: #ffffff !important;
}

.pagination li.active a:hover,
.pagination li.active span:hover {
    background-color: #093d73 !important;
    border-color: #093d73 !important;
    color: #ffffff !important;
}

/* Cards */
.card-header.bg-primary {
    background-color: #0b4b8a !important;
}

/* Badges */
.badge.bg-primary {
    background-color: #0b4b8a !important;
}

/* Checkbox and radio */
.form-check-input:checked {
    background-color: #0b4b8a !important;
    border-color: #0b4b8a !important;
}

.form-check-input:focus {
    border-color: #0b4b8a !important;
    box-shadow: 0 0 0 0.25rem rgba(11, 75, 138, 0.25) !important;
}

/* Navbar */
.navbar-dark .navbar-brand {
    color: #fff !important;
}

/* Dropdown */
.dropdown-item.active,
.dropdown-item:active {
    background-color: #0b4b8a !important;
}

/* List group */
.list-group-item.active {
    background-color: #0b4b8a !important;
    border-color: #0b4b8a !important;
}

/* Progress bars */
.progress-bar {
    background-color: #0b4b8a !important;
}

/* Carousel indicators */
.carousel-indicators [data-bs-target].active {
    background-color: #0b4b8a !important;
}

/* Spinner */
.spinner-border {
    color: #0b4b8a !important;
}

/* Modal */
.modal-header {
    border-bottom-color: #0b4b8a !important;
}

/* Table */
.table-primary {
    --bs-table-color: #fff !important;
    --bs-table-bg: #0b4b8a !important;
    --bs-table-border-color: #0b4b8a !important;
}

/* Breadcrumb */
.breadcrumb-item + .breadcrumb-item::before {
    color: #0b4b8a !important;
}

/* Alert primary */
.alert-primary {
    color: #084298 !important;
    background-color: #cff4fc !important;
    border-color: #b6effb !important;
}

/* Offcanvas */
.offcanvas-header {
    border-bottom-color: #0b4b8a !important;
}

/* Tooltip */
.tooltip .tooltip-inner {
    background-color: #0b4b8a !important;
}

/* Popover */
.popover {
    border-color: #0b4b8a !important;
}

.popover-header {
    background-color: #0b4b8a !important;
    border-bottom-color: #0b4b8a !important;
}

/* Range slider */
.form-range::-webkit-slider-thumb {
    background-color: #0b4b8a !important;
}

.form-range::-moz-range-thumb {
    background-color: #0b4b8a !important;
    border-color: #0b4b8a !important;
}

/* Switch */
.form-switch .form-check-input:checked {
    background-color: #0b4b8a !important;
    border-color: #0b4b8a !important;
}
