/* Correcciones para problemas de visualización */

/* Corrección para las insignias en "Tu Progreso Judicial" */
.badge-item, .badge-item-unlock {
    width: 70px !important;
    height: 70px !important;
    padding: 8px !important;
    margin: 5px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    background-color: rgba(255, 255, 255, 0.1) !important;
    border-radius: 8px !important;
    color: #ffffff !important;
}

[data-theme="dark"] .badge-item, [data-theme="dark"] .badge-item-unlock {
    background-color: rgba(255, 255, 255, 0.1) !important;
    color: #ffffff !important;
}

.card-body .badge-item, .card-body .badge-item-unlock {
    background-color: rgba(59, 130, 246, 0.1) !important;
    color: #3b82f6 !important;
}

[data-theme="dark"] .card-body .badge-item, [data-theme="dark"] .card-body .badge-item-unlock {
    background-color: rgba(59, 130, 246, 0.2) !important;
    color: #60a5fa !important;
}

.badge-item span, .badge-item-unlock span {
    font-size: 0.7rem !important;
    margin-top: 5px !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    width: 100% !important;
}

.card-body .badge-item span, .card-body .badge-item-unlock span {
    color: #3b82f6 !important;
}

[data-theme="dark"] .card-body .badge-item span, [data-theme="dark"] .card-body .badge-item-unlock span {
    color: #60a5fa !important;
}

/* Corrección para la imagen de perfil */
.avatar-img-container {
    width: 80px !important;
    height: 80px !important;
    border-radius: 50% !important;
    overflow: hidden !important;
    border: 3px solid rgba(255, 255, 255, 0.3) !important;
    background-color: #ffffff !important;
}

.avatar-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

#profileBanner .avatar-img-container {
    border: 3px solid rgba(255, 255, 255, 0.3) !important;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.1) !important;
}

/* Corrección para los títulos en "Soluciones Recomendadas para Ti" */
.solution-card .card-title,
.card-title.h6.fw-semibold.mb-0.text-truncate {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    max-width: 100% !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    height: auto !important;
    min-height: 40px !important;
}

/* Corrección para fondos en modo claro */
.bg-white {
    background-color: #ffffff !important;
}

.bg-light {
    background-color: #f8f9fa !important;
}

.card, .card-body, .card-footer {
    background-color: #ffffff !important;
}

.card-header {
    background-color: #f8f9fa !important;
}

/* Corrección para fondos en modo oscuro */
[data-theme="dark"] .bg-white,
[data-theme="dark"] .bg-light,
[data-theme="dark"] .card,
[data-theme="dark"] .card-body,
[data-theme="dark"] .card-header,
[data-theme="dark"] .card-footer {
    background-color: #2d2d2d !important;
}

/* Corrección para textos en modo claro */
.text-dark {
    color: #212529 !important;
}

.text-secondary {
    color: #6c757d !important;
}

.text-muted {
    color: #6c757d !important;
}

.card .text-dark {
    color: #212529 !important;
}

.card .text-secondary, .card .text-muted {
    color: #6c757d !important;
}

/* Corrección para textos en modo oscuro */
[data-theme="dark"] .text-dark {
    color: #e0e0e0 !important;
}

[data-theme="dark"] .text-secondary,
[data-theme="dark"] .text-muted {
    color: #adb5bd !important;
}

[data-theme="dark"] .card .text-dark {
    color: #e0e0e0 !important;
}

[data-theme="dark"] .card .text-secondary,
[data-theme="dark"] .card .text-muted {
    color: #adb5bd !important;
}

/* Corrección para bordes en modo oscuro */
[data-theme="dark"] .border,
[data-theme="dark"] .border-top,
[data-theme="dark"] .border-bottom,
[data-theme="dark"] .border-start,
[data-theme="dark"] .border-end {
    border-color: #444 !important;
}

/* Corrección para fondos de tarjetas específicas */
.card.bg-light, .card.bg-white {
    background-color: #ffffff !important;
}

[data-theme="dark"] .card.bg-light, [data-theme="dark"] .card.bg-white {
    background-color: #2d2d2d !important;
}

/* Corrección para el navbar */
.navbar-dark {
    background-color: #3b82f6 !important;
    background-image: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%) !important;
}

.navbar-dark .navbar-nav .nav-link {
    color: rgba(255, 255, 255, 0.85) !important;
}

.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:focus {
    color: #ffffff !important;
}

.navbar-dark .navbar-nav .nav-link.active {
    color: #ffffff !important;
    font-weight: 600 !important;
}

/* Corrección para el Dashboard Banner */
.dashboard-banner {
    background-color: #3b82f6 !important;
    background-image: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%) !important;
    color: #ffffff !important;
}

.dashboard-banner .card-body {
    background-color: transparent !important;
    color: #ffffff !important;
}

.dashboard-banner .text-white {
    color: #ffffff !important;
}

.dashboard-banner .bg-white.bg-opacity-20,
.dashboard-banner .bg-white.bg-opacity-30 {
    background-color: rgba(255, 255, 255, 0.2) !important;
}

.dashboard-banner .opacity-80,
.dashboard-banner .opacity-90 {
    opacity: 0.8 !important;
}

/* Corrección para el Profile Banner */
#profileBanner {
    background-color: #3b82f6 !important;
    background-image: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%) !important;
    color: #ffffff !important;
}

#profileBanner .card-body {
    background-color: transparent !important;
    color: #ffffff !important;
}

#profileBanner h1,
#profileBanner h2,
#profileBanner p,
#profileBanner .text-white {
    color: #ffffff !important;
}

#profileBanner .small {
    color: rgba(255, 255, 255, 0.9) !important;
}

#profileBanner .opacity-75,
#profileBanner .opacity-80,
#profileBanner .opacity-90 {
    color: rgba(255, 255, 255, 0.9) !important;
}

#profileBanner .bg-white.bg-opacity-20 {
    background-color: rgba(255, 255, 255, 0.2) !important;
}

#profileBanner .bg-white.bg-opacity-30 {
    background-color: rgba(255, 255, 255, 0.3) !important;
}

#profileBanner .h4.fw-bold {
    color: #ffffff !important;
}

/* Corrección para el buscador en solutions.html */
#solutionsList .dashboard-banner {
    background-color: #6366f1 !important;
    background-image: linear-gradient(135deg, #6366f1 0%, #4f46e5 100%) !important;
    color: #ffffff !important;
}

#solutionsList .dashboard-banner .card-body {
    background-color: transparent !important;
    color: #ffffff !important;
}

#solutionsList .dashboard-banner h1,
#solutionsList .dashboard-banner p,
#solutionsList .dashboard-banner .text-white {
    color: #ffffff !important;
}

#solutionsList .dashboard-banner .opacity-90 {
    color: rgba(255, 255, 255, 0.9) !important;
}

#solutionsList .dashboard-banner .form-control {
    background-color: rgba(255, 255, 255, 0.2) !important;
    border-color: rgba(255, 255, 255, 0.3) !important;
    color: #ffffff !important;
}

#solutionsList .dashboard-banner .form-control::placeholder {
    color: rgba(255, 255, 255, 0.7) !important;
}

#solutionsList .dashboard-banner .form-control:focus {
    box-shadow: 0 0 0 0.25rem rgba(255, 255, 255, 0.25) !important;
}

/* Corrección para la vista de lista */
.hover-bg-light-active:hover {
    background-color: rgba(59, 130, 246, 0.05) !important;
}

[data-theme="dark"] .hover-bg-light-active:hover {
    background-color: rgba(59, 130, 246, 0.1) !important;
}

/* Corrección para los filtros */
#advancedFilters {
    background-color: #ffffff !important;
}

[data-theme="dark"] #advancedFilters {
    background-color: #2d2d2d !important;
}

#advancedFilters .form-select,
#advancedFilters .form-control {
    background-color: #ffffff !important;
    color: #212529 !important;
    border-color: #dee2e6 !important;
}

[data-theme="dark"] #advancedFilters .form-select,
[data-theme="dark"] #advancedFilters .form-control {
    background-color: #1e1e1e !important;
    color: #e0e0e0 !important;
    border-color: #444444 !important;
}

#filterToggleBtn {
    position: relative !important;
}

#filterToggleBtn.active {
    background-color: #e9ecef !important;
    border-color: #dee2e6 !important;
}

[data-theme="dark"] #filterToggleBtn.active {
    background-color: #2d3748 !important;
    border-color: #4a5568 !important;
}

/* Estilos responsivos para los filtros de categoría */
#categoryFilters {
    margin-bottom: 0.5rem !important;
}

#categoryFilters button {
    margin-bottom: 0.5rem !important;
    font-size: 0.875rem !important;
    padding: 0.375rem 0.75rem !important;
    transition: all 0.2s ease-in-out !important;
}

@media (max-width: 768px) {
    #categoryFilters button {
        padding: 0.25rem 0.5rem !important;
        font-size: 0.8rem !important;
    }

    #categoryFilters button i {
        margin-right: 0.25rem !important;
    }
}

@media (max-width: 576px) {
    #categoryFilters {
        width: 100% !important;
        margin-bottom: 1rem !important;
    }

    #categoryFilters button {
        flex: 1 1 auto !important;
        min-width: calc(33.333% - 0.5rem) !important;
        justify-content: center !important;
        margin-right: 0 !important;
    }
}

/* Elementos inmunes a cambios de tema */
.theme-immune {
    /* Preservar colores y estilos independientemente del tema */
    color-scheme: light !important;
}

/* Mantener gradientes originales */
.bg-gradient-indigo {
    background: linear-gradient(135deg, #6610f2, #6f42c1) !important;
}

.bg-gradient-blue {
    background: linear-gradient(135deg, #0d6efd, #0dcaf0) !important;
}

.bg-gradient-purple {
    background: linear-gradient(135deg, #6f42c1, #d63384) !important;
}

.bg-gradient-green {
    background: linear-gradient(135deg, #198754, #20c997) !important;
}

.bg-gradient-red {
    background: linear-gradient(135deg, #dc3545, #fd7e14) !important;
}

.bg-gradient-orange {
    background: linear-gradient(135deg, #fd7e14, #ffc107) !important;
}

.bg-gradient-light {
    background: linear-gradient(135deg, #f8f9fa, #e9ecef) !important;
}

/* Asegurar que los textos sean legibles en modo claro y oscuro */
.theme-immune.bg-gradient-indigo,
.theme-immune.bg-gradient-blue,
.theme-immune.bg-gradient-purple,
.theme-immune.bg-gradient-green,
.theme-immune.bg-gradient-red,
.theme-immune.bg-gradient-orange {
    color: #ffffff !important;
}

.theme-immune.bg-gradient-indigo *,
.theme-immune.bg-gradient-blue *,
.theme-immune.bg-gradient-purple *,
.theme-immune.bg-gradient-green *,
.theme-immune.bg-gradient-red *,
.theme-immune.bg-gradient-orange * {
    color: #ffffff !important;
}

.theme-immune.bg-gradient-light,
.theme-immune.bg-light,
.theme-immune.bg-white {
    color: #212529 !important;
}

.theme-immune.bg-gradient-light *,
.theme-immune.bg-light *,
.theme-immune.bg-white * {
    color: #212529 !important;
}

.theme-immune .card-header,
.theme-immune .card-body,
.theme-immune .card-footer {
    /* Mantener colores originales */
    background-color: inherit !important;
}

.theme-immune .text-white {
    color: #ffffff !important;
}

.theme-immune .text-dark {
    color: #212529 !important;
}

.theme-immune .text-secondary {
    color: #6c757d !important;
}

.theme-immune .text-primary {
    color: #0d6efd !important;
}

.theme-immune .bg-white {
    background-color: #ffffff !important;
}

.theme-immune .bg-light {
    background-color: #f8f9fa !important;
}

.theme-immune .border-light {
    border-color: #f8f9fa !important;
}

/* Corregir colores específicos para badges y otros elementos */
.theme-immune .badge.bg-indigo,
.theme-immune .badge.bg-blue,
.theme-immune .badge.bg-purple,
.theme-immune .badge.bg-green,
.theme-immune .badge.bg-red,
.theme-immune .badge.bg-orange {
    color: #ffffff !important;
}

.theme-immune .badge.bg-light {
    color: #212529 !important;
}

/* Corrección para el footer */
html, body {
    height: 100% !important;
}

body {
    display: flex !important;
    flex-direction: column !important;
}

main {
    flex: 1 0 auto !important;
    min-height: 70vh !important;
}

footer {
    flex-shrink: 0 !important;
    margin-top: auto !important;
}

.solution-icon-sm {
    width: 40px !important;
    height: 40px !important;
    border-radius: 8px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #ffffff !important;
    flex-shrink: 0 !important;
}

.bg-gradient-blue {
    background-color: #3b82f6 !important;
    background-image: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%) !important;
}

.bg-gradient-purple {
    background-color: #8b5cf6 !important;
    background-image: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%) !important;
}

.bg-gradient-green {
    background-color: #10b981 !important;
    background-image: linear-gradient(135deg, #10b981 0%, #059669 100%) !important;
}

.bg-gradient-orange {
    background-color: #f97316 !important;
    background-image: linear-gradient(135deg, #f97316 0%, #ea580c 100%) !important;
}

/* Corrección para textos en fondos de colores */
.bg-gradient-primary, .bg-primary {
    background-color: #3b82f6 !important;
    background-image: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%) !important;
    color: #ffffff !important;
}

.bg-gradient-primary .text-white, .bg-primary .text-white,
.bg-gradient-primary .text-white-75, .bg-primary .text-white-75,
.bg-gradient-primary .text-light, .bg-primary .text-light {
    color: #ffffff !important;
}

/* Corrección para el Centro de Administración Judicial */
.card-header.bg-gradient-primary {
    background-color: #3b82f6 !important;
    background-image: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%) !important;
    color: #ffffff !important;
}

.card-header.bg-gradient-primary .text-white {
    color: #ffffff !important;
}

.card-header.bg-gradient-primary .small {
    color: rgba(255, 255, 255, 0.8) !important;
}

/* Corrección para el botón de nivel en Mi Progreso Judicial */
.card-header.bg-gradient-primary .bg-white.bg-opacity-20 {
    background-color: rgba(255, 255, 255, 0.2) !important;
    color: #ffffff !important;
}

[data-theme="dark"] .card-header.bg-gradient-primary .bg-white.bg-opacity-20 {
    background-color: rgba(255, 255, 255, 0.2) !important;
    color: #ffffff !important;
}

.card-header.bg-gradient-primary .rounded-pill.small {
    color: #ffffff !important;
}

/* Corrección para la sección de perfil en modo claro */
.dashboard-banner .bg-white.bg-opacity-20 {
    background-color: rgba(255, 255, 255, 0.2) !important;
    color: #ffffff !important;
}

.dashboard-banner .bg-white.bg-opacity-30 {
    background-color: rgba(255, 255, 255, 0.3) !important;
    color: #ffffff !important;
}

.dashboard-banner .small.opacity-80,
.dashboard-banner .small.opacity-75 {
    color: rgba(255, 255, 255, 0.8) !important;
}

.dashboard-banner .h4.fw-bold {
    color: #ffffff !important;
}

/* Corrección para fondos de colores en tarjetas */
.card .bg-primary, .card .bg-gradient-primary {
    background-color: #3b82f6 !important;
    background-image: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%) !important;
    color: #ffffff !important;
}

/* Corrección para Tu Progreso Judicial */
.progress {
    background-color: rgba(0, 0, 0, 0.1) !important;
}

[data-theme="dark"] .progress {
    background-color: rgba(255, 255, 255, 0.2) !important;
}

.progress-bar {
    background-color: #3b82f6 !important;
}

/* Corrección para las tarjetas de progreso */
.card.border-primary {
    border-color: #3b82f6 !important;
}

.card.border-success {
    border-color: #10b981 !important;
}

.card.border-warning {
    border-color: #f59e0b !important;
}

.card.border-purple {
    border-color: #8b5cf6 !important;
}

/* Corrección para los textos en las tarjetas de progreso */
.card.border-primary .text-primary {
    color: #3b82f6 !important;
}

.card.border-success .text-success {
    color: #10b981 !important;
}

.card.border-warning .text-warning {
    color: #f59e0b !important;
}

.card.border-purple .text-purple {
    color: #8b5cf6 !important;
}

/* Corrección para los controles del carrusel */
.carousel-control-link {
    background-color: #ffffff !important;
    color: #495057 !important;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

[data-theme="dark"] .carousel-control-link {
    background-color: #3a3a3a !important;
    color: #e0e0e0 !important;
}

/* Corrección para los indicadores del carrusel */
.carousel-indicators [data-bs-target] {
    background-color: #adb5bd !important;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin: 0 4px;
}

[data-theme="dark"] .carousel-indicators [data-bs-target] {
    background-color: #6c757d !important;
}

.carousel-indicators .active {
    background-color: #3b82f6 !important;
}

/* Corrección para las historias de éxito */
.bg-gradient-light {
    background-color: #f8f9fa !important;
    background-image: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%) !important;
}

[data-theme="dark"] .bg-gradient-light {
    background-color: #2d2d2d !important;
    background-image: linear-gradient(135deg, #2d2d2d 0%, #212529 100%) !important;
}

/* Corrección para las actividades recientes */
.bg-light.rounded {
    background-color: #f0f4f8 !important;
}

[data-theme="dark"] .bg-light.rounded {
    background-color: #2d2d2d !important;
}

.text-indigo {
    color: #6366f1 !important;
}

[data-theme="dark"] .text-indigo {
    color: #818cf8 !important;
}

/* Corrección para el contraste en modo oscuro */
[data-theme="dark"] .bg-light {
    background-color: #1e1e1e !important;
}

[data-theme="dark"] .text-secondary {
    color: #a0a0a0 !important;
}

/* Corrección para las fechas importantes */
.date-box {
    background-color: #ffffff !important;
    color: #3b82f6 !important;
    padding: 5px 10px;
    border-radius: 6px;
}

[data-theme="dark"] .date-box {
    background-color: #2d2d2d !important;
    color: #60a5fa !important;
}

.bg-danger-soft {
    background-color: rgba(220, 53, 69, 0.15) !important;
}

.text-danger {
    color: #dc3545 !important;
}

.bg-warning-soft {
    background-color: rgba(255, 193, 7, 0.15) !important;
}

.text-warning {
    color: #ffc107 !important;
}

/* Corrección para los fondos de las tareas */
.hover-bg-light-active {
    background-color: #f8f9fa !important;
}

[data-theme="dark"] .hover-bg-light-active {
    background-color: #2d2d2d !important;
}

/* Corrección para los fondos de colores con opacidad */
.bg-success.bg-opacity-10 {
    background-color: rgba(16, 185, 129, 0.1) !important;
}

.bg-primary.bg-opacity-10 {
    background-color: rgba(59, 130, 246, 0.1) !important;
}

.bg-purple.bg-opacity-10 {
    background-color: rgba(139, 92, 246, 0.1) !important;
}

.bg-warning.bg-opacity-10 {
    background-color: rgba(245, 158, 11, 0.1) !important;
}

/* Corrección para los bordes de colores con opacidad */
.border-success.border-opacity-25 {
    border-color: rgba(16, 185, 129, 0.25) !important;
}

.border-primary.border-opacity-25 {
    border-color: rgba(59, 130, 246, 0.25) !important;
}

.border-purple.border-opacity-25 {
    border-color: rgba(139, 92, 246, 0.25) !important;
}

.border-warning.border-opacity-25 {
    border-color: rgba(245, 158, 11, 0.25) !important;
}

/* Corrección para los badges en las soluciones recomendadas */
.badge.bg-teal-soft, span.badge.bg-teal-soft {
    background-color: rgba(20, 184, 166, 0.15) !important;
    color: #14b8a6 !important;
}

[data-theme="dark"] .badge.bg-teal-soft, [data-theme="dark"] span.badge.bg-teal-soft {
    background-color: rgba(20, 184, 166, 0.25) !important;
    color: #2dd4bf !important;
}

.badge.bg-blue-soft, span.badge.bg-blue-soft {
    background-color: rgba(59, 130, 246, 0.15) !important;
    color: #3b82f6 !important;
}

[data-theme="dark"] .badge.bg-blue-soft, [data-theme="dark"] span.badge.bg-blue-soft {
    background-color: rgba(59, 130, 246, 0.25) !important;
    color: #60a5fa !important;
}

.badge.bg-purple-soft, span.badge.bg-purple-soft {
    background-color: rgba(139, 92, 246, 0.15) !important;
    color: #8b5cf6 !important;
}

[data-theme="dark"] .badge.bg-purple-soft, [data-theme="dark"] span.badge.bg-purple-soft {
    background-color: rgba(139, 92, 246, 0.25) !important;
    color: #a78bfa !important;
}

.badge.bg-orange-soft, span.badge.bg-orange-soft {
    background-color: rgba(249, 115, 22, 0.15) !important;
    color: #f97316 !important;
}

[data-theme="dark"] .badge.bg-orange-soft, [data-theme="dark"] span.badge.bg-orange-soft {
    background-color: rgba(249, 115, 22, 0.25) !important;
    color: #fb923c !important;
}

.badge.bg-green-soft, span.badge.bg-green-soft {
    background-color: rgba(16, 185, 129, 0.15) !important;
    color: #10b981 !important;
}

[data-theme="dark"] .badge.bg-green-soft, [data-theme="dark"] span.badge.bg-green-soft {
    background-color: rgba(16, 185, 129, 0.25) !important;
    color: #34d399 !important;
}

.badge.bg-light, span.badge.bg-light {
    background-color: #f3f4f6 !important;
    color: #6b7280 !important;
}

[data-theme="dark"] .badge.bg-light, [data-theme="dark"] span.badge.bg-light {
    background-color: #374151 !important;
    color: #d1d5db !important;
}

/* Corrección para las cajas de Impacto del Ecosistema */
.row .border-success, .row .border-primary, .row .border-purple, .row .border-warning,
.row .border-info {
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-start !important;
}

.row .border-success p.display-6,
.row .border-primary p.display-6,
.row .border-purple p.display-6,
.row .border-warning p.display-6,
.row .border-info p.display-6,
.row .border-success p.h4,
.row .border-primary p.h4,
.row .border-purple p.h4,
.row .border-warning p.h4,
.row .border-info p.h4 {
    margin-top: auto !important;
    margin-bottom: 0.5rem !important;
}

/* Corrección para los colores de texto en las cajas de impacto */
.text-success {
    color: #10b981 !important;
}

.text-primary {
    color: #3b82f6 !important;
}

.text-purple {
    color: #8b5cf6 !important;
}

.text-warning {
    color: #f59e0b !important;
}

.text-info {
    color: #0ea5e9 !important;
}

[data-theme="dark"] .text-success {
    color: #34d399 !important;
}

[data-theme="dark"] .text-primary {
    color: #60a5fa !important;
}

[data-theme="dark"] .text-purple {
    color: #a78bfa !important;
}

[data-theme="dark"] .text-warning {
    color: #fbbf24 !important;
}

[data-theme="dark"] .text-info {
    color: #38bdf8 !important;
}

/* Corrección para las tarjetas en modo oscuro */
[data-theme="dark"] .card {
    background-color: #1e1e1e !important;
}

/* Corrección para los enlaces del footer */
.footer-links a {
    color: inherit !important;
    text-decoration: none !important;
    transition: color 0.2s ease-in-out !important;
}

.footer-links a:hover {
    color: var(--primary) !important;
}
