/* General Body Styles */
body {
    font-family: 'Libre Baskerville', serif; /* Default font for content */
    background-color: #f8f9fa; /* Light background */
}

/* Typography Classes */
.main-font {
    font-family: 'Quicksand', sans-serif;
    font-weight: 700;
}

.sub-font {
    font-family: 'Ubuntu Mono', monospace;
}

.small-text {
    font-size: 0.75em; /* Adjust as needed */
}

/* Header/Navbar Styles */
header.navbar {
    border-bottom: 1px solid #dee2e6;
}

.navbar-brand .small-text {
    vertical-align: middle;
}

/* Sidebar Styles (for quick links) */
#sidebar-quicklinks {
    max-height: calc(100vh - 80px); /* Adjust based on header height */
    overflow-y: auto;
    border-right: 1px solid #dee2e6;
}

#sidebar-quicklinks .list-group-item {
    font-size: 0.9em;
    padding: 0.5rem 1rem;
    white-space: nowrap; /* Prevent wrapping in sidebar */
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Main Content Area */
#content {
    min-height: 60vh; /* Ensure content area has a minimum height */
}

/* News Article Card Styles */
.news-article {
    background-color: #ffffff;
    border: 1px solid #e0e0e0;
    border-radius: 0.5rem;
    margin-bottom: 2rem;
    padding: 1.5rem;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);
    transition: transform 0.2s ease-in-out;
}

.news-article:hover {
    transform: translateY(-5px);
}

.news-article img {
    max-width: 100%;
    height: auto;
    border-radius: 0.3rem;
    object-fit: cover; /* Ensures image covers the area without distortion */
    aspect-ratio: 16/9; /* Standard aspect ratio for images */
}

.news-article .news-title {
    font-family: 'Quicksand', sans-serif;
    font-weight: 700;
    color: #333;
    margin-top: 1rem;
    margin-bottom: 0.5rem;
}

.news-article .news-meta {
    font-family: 'Ubuntu Mono', monospace;
    font-size: 0.85em;
    color: #6c757d;
    margin-bottom: 1rem;
}

.news-article .news-description {
    color: #495057;
    line-height: 1.6;
    text-align: justify;
}

/* Pagination Styles */
.pagination .page-link {
    font-family: 'Ubuntu Mono', monospace;
    color: #0d6efd; /* Bootstrap primary color */
}

.pagination .page-item.active .page-link {
    background-color: #0d6efd;
    border-color: #0d6efd;
}

/* Footer Styles */
footer {
    background-color: #343a40 !important; /* Dark background */
    border-top: 1px solid #444;
}

footer a {
    color: #adb5bd !important; /* Lighter text for links */
}

footer a:hover {
    color: #ffffff !important;
}

/* Responsive adjustments */
@media (max-width: 991.98px) { /* For small to medium devices */
    #navbarNav {
        margin-top: 1rem; /* Space below header on smaller screens */
    }
    #navContent {
        flex-direction: column; /* Stack quick links vertically in navbar */
    }
    #sidebar-quicklinks {
        display: none !important; /* Hide dedicated sidebar on smaller screens */
    }
    .news-article img {
        margin-bottom: 1rem; /* Space between image and text on smaller screens */
    }
    .news-article .order-lg-last {
        order: -1 !important; /* Image comes first on smaller screens */
    }
}