/* Professional 3173 Color Palette Override */

/* Update primary blue colors to professional greys and blacks */
:root {
    --primary-color: #2c2c2c;
    --secondary-color: #6c757d;
    --accent-color: #495057;
    --light-grey: #f8f9fa;
    --dark-grey: #343a40;
    --aptia-text-green: #212529;
    --text-secondary: #6c757d;
}

/* Navigation bar - professional dark theme */
.navbar-dark {
    background-color: var(--primary-color) !important;
}

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

.navbar-dark .navbar-nav .nav-link:hover {
    color: #ffffff;
    background-color: rgba(255, 255, 255, 0.1);
}

/* Update all blue elements to professional grey/black */
.section-title {
    border-bottom: 2px solid var(--primary-color);
    color: var(--primary-color);
}

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

.aptia-btn:hover {
    background-color: var(--dark-grey);
    border-color: var(--dark-grey);
}

/* Card headers */
.card-header {
    background-color: var(--light-grey);
    border-bottom: 1px solid var(--secondary-color);
}

/* Form focus states */
.form-control:focus,
.form-select:focus {
    border-color: var(--accent-color);
    box-shadow: 0 0 0 0.25rem rgba(44, 44, 44, 0.25);
}

/* Table headers */
.table th {
    background-color: var(--light-grey);
    color: var(--aptia-text-green);
}

/* Breaking news ticker - keep red but update other elements */
.breaking-news {
    background-color: #dc3545 !important;
}

/* Professional footer */
footer {
    background-color: var(--primary-color) !important;
    color: white;
}

footer h5 {
    color: white;
}

footer a {
    color: rgba(255, 255, 255, 0.8);
}

footer a:hover {
    color: white;
}

/* Update any remaining blue elements */
.aptia-text-green {
    color: var(--primary-color) !important;
}

.aptia-bg-green {
    background-color: var(--primary-color) !important;
}

/* Professional button styling */
.aptia-btn-secondary {
    color: var(--primary-color);
    border-color: var(--primary-color);
}

.aptia-btn-secondary:hover {
    background-color: var(--primary-color);
    border-color: var(--primary-color);
}

/* Update focus outlines */
a:focus, button:focus, input:focus, select:focus {
    outline: 2px solid var(--primary-color);
    outline-offset: 2px;
}



/* Custom Banner Styles */
.banner-black {
    background-color: #000000 !important;
    color: #FFFFFF !important;
}

.banner-black h1, .banner-black h2, .banner-black h3, .banner-black h4, .banner-black h5, .banner-black h6, .banner-black p, .banner-black span, .banner-black a {
    color: #FFFFFF !important;
}




/* Banner with black background and white text */
.banner-black,
.card.banner-black,
.banner-black.card {
    background-color: #000000 !important;
    color: #ffffff !important;
    border: none !important;
}

.banner-black h1,
.banner-black h2,
.banner-black h3,
.banner-black h4,
.banner-black h5,
.banner-black h6,
.banner-black p,
.banner-black span,
.banner-black div,
.card.banner-black h1,
.card.banner-black h2,
.card.banner-black h3,
.card.banner-black h4,
.card.banner-black h5,
.card.banner-black h6,
.card.banner-black p,
.card.banner-black span,
.card.banner-black div,
.banner-black .card-title,
.banner-black .card-text {
    color: #ffffff !important;
}

.banner-black .card-body,
.card.banner-black .card-body {
    background-color: transparent !important;
}


/* Aptia Footer - Fixed Layout with Bold White Title and Equal Spacing */
.aptia-footer-fixed {
    background: white !important;
    border-top: 3px solid var(--aptia-green) !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
}

.footer-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding: 15px 20px !important;
    margin: 0 !important;
    min-height: 50px !important;
}

.quick-links-title {
    color: white !important;
    background: var(--aptia-green) !important;
    font-weight: bold !important;
    font-size: 16px !important;
    padding: 8px 15px !important;
    border-radius: 4px !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
}

.quick-links-nav {
    display: flex !important;
    justify-content: space-evenly !important;
    align-items: center !important;
    flex: 1 !important;
    margin: 0 !important;
    padding: 0 20px !important;
}

.quick-links-nav a {
    color: var(--aptia-green) !important;
    text-decoration: none !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    padding: 8px 12px !important;
    border-radius: 20px !important;
    border: 2px solid transparent !important;
    transition: all 0.3s ease !important;
    white-space: nowrap !important;
}

.quick-links-nav a:hover {
    color: white !important;
    background: var(--aptia-green) !important;
    border-color: var(--aptia-green) !important;
    transform: translateY(-2px) !important;
}

/* Mobile responsive */
@media (max-width: 768px) {
    .footer-row {
        flex-direction: column !important;
        padding: 10px !important;
    }
    
    .quick-links-title {
        margin-bottom: 10px !important;
    }
    
    .quick-links-nav {
        flex-wrap: wrap !important;
        justify-content: center !important;
        gap: 8px !important;
        padding: 0 !important;
    }
    
    .quick-links-nav a {
        font-size: 12px !important;
        padding: 6px 10px !important;
    }
}
