/* News page specific styles */

.news-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;   /* cards are centered as a group */
    gap: 30px;
    width: 90%;
    max-width: 1400px;
    margin: 60px auto;         /* container centered */
}

.news-card {
    background-color: rgba(255, 179, 77, 0.05);
    border: 2px solid #FFB34D;
    border-radius: 8px;
    padding: 25px;
    width: 350px;
    transition: transform 0.3s ease, background-color 0.3s ease;
    display: flex;
    flex-direction: column;
}

.news-card:hover {
    transform: scale(1.02);
    background-color: rgba(255, 179, 77, 0.1);
}

.news-date {
    color: #FFB34D;
    font-family: "Goldman", sans-serif;
    font-size: 0.9rem;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.news-title {
    font-family: "Goldman", sans-serif;
    font-size: 1.5rem;
    color: #fff;
    margin-bottom: 15px;
    line-height: 1.3;
}

.news-excerpt {
    font-family: "Roboto", sans-serif;
    font-weight: 300;
    font-size: 1rem;
    line-height: 1.6;
    color: #ccc;
    margin-bottom: 20px;
    flex-grow: 1;
}

.news-link {
    display: inline-block;
    color: #FFB34D;
    font-family: "Goldman", sans-serif;
    font-size: 1rem;
    text-decoration: none;
    border-bottom: 2px solid #FFB34D;
    padding-bottom: 2px;
    transition: color 0.2s, border-color 0.2s;
    align-self: flex-start;
}

.news-thumbnail {
    width: 100%;               /* make image fill the card width */
    height: auto;              /* maintain aspect ratio */
    border-radius: 6px;        /* soft corners (slightly smaller than card’s border-radius) */
    display: block;
    margin-bottom: 15px;       /* space between image and date */
    object-fit: cover;         /* if images have varying dimensions, this crops them nicely */
    aspect-ratio: 16 / 9;      /* optional: enforce a consistent rectangle (adjust ratio as needed) */
}

.news-image-link {
    text-decoration: none;     /* remove underline from link */
}

.news-link:hover {
    color: #fff;
    border-bottom-color: #fff;
}

/* Article image and credit */
.article-figure {
    margin: 2rem 0;            /* space above and below */
    text-align: center;        /* center the image if it’s smaller than full width */
}

.article-image {
    max-width: 100%;
    height: auto;
    border-radius: 8px;        /* matches the soft corners of your cards/buttons */
    display: block;            /* removes extra space below image */
    margin: 0 auto;            /* center if needed */
}

.image-credit {
    font-family: "Roboto", sans-serif;
    font-size: 0.85rem;
    color: #aaa;               /* subtle gray */
    margin-top: 0.5rem;
    text-align: right;         /* aligns credit to the right – adjust as you like */
    border-bottom: 1px solid #FFB34D33; /* optional thin orange line */
    padding-bottom: 0.25rem;
}


/* Additional styles for article page */
        .article-container {
            max-width: 800px;
            margin: 40px auto 100px;
            padding: 0 20px;
        }
        .article-header {
            margin-bottom: 30px;
            border-bottom: 2px solid #FFB34D;
            padding-bottom: 20px;
        }
        .article-date {
            color: #FFB34D;
            font-family: "Goldman", sans-serif;
            font-size: 1rem;
            margin-bottom: 10px;
        }
        .article-title {
            font-family: "Goldman", sans-serif;
            font-size: 2.5rem;
            color: #fff;
            line-height: 1.2;
            text-align: left;
        }
        .article-content {
            font-family: "Roboto", sans-serif;
            font-weight: 300;
            font-size: 1.1rem;
            line-height: 1.8;
            color: #ddd;
        }
        .article-content p {
            margin-bottom: 1.5rem;
        }
        .article-content h3 {
            font-family: "Goldman", sans-serif;
            color: #FFB34D;
            margin: 2rem 0 1rem;
        }
        .article-content a {
            color: #FFB34D;
            text-decoration: underline;
        }
        .back-to-news {
            display: inline-block;
            margin: 40px 0;
            color: #FFB34D;
            font-family: "Goldman", sans-serif;
            font-size: 1.1rem;
            border: 2px solid #FFB34D;
            padding: 10px 20px;
            border-radius: 4px;
            transition: background-color 0.2s, color 0.2s;
        }
        .back-to-news:hover {
            background-color: #FFB34D;
            color: #000;
}

/* Responsive adjustments */
@media (max-width: 800px) {
    .news-grid {
        width: 95%;
        gap: 20px;
        margin: 40px auto 80px;
    }

    .news-card {
        width: 100%;
        max-width: 450px;
        padding: 20px;
    }

    .news-title {
        font-size: 1.3rem;
    }
    
    .article-title {
                font-size: 1.8rem;
            }
            .article-content {
                font-size: 1rem;
            }
}