/* Design System - Plus Jakarta Sans Font */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;600;700&display=swap');

/* Primary Gradient Definition */
:root {
    --primary-gradient: linear-gradient(110.08deg, #CA2E30 -11.64%, #641718 186.72%);
    --neutral-100: #F8F9FA;
    --neutral-200: #E9ECEF;
    --neutral-400: #CED4DA;
    --neutral-500: #ADB5BD;
    --neutral-700: #495057;
    --neutral-900: #212529;
    --accent-red: #BC0F0F;
    --badge-bg: #F3E3E3;
}

/* Typography Base */
body {
    font-family: 'Plus Jakarta Sans', sans-serif;
}

/* Gradient Text Utility */
.gradient-text {
    background: var(--primary-gradient);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Card Hover Effects */
.news-card-wrapper {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.news-card-wrapper:hover {
    transform: translateY(-8px);
}

.news-card-image {
    transition: transform 0.5s ease;
}

.news-card-wrapper:hover .news-card-image {
    transform: scale(1.05);
}

.news-card-link {
    transition: gap 0.3s ease;
}

.news-card-wrapper:hover .news-card-link {
    gap: 8px !important;
}

/* Button Styles */
.btn-gradient {
    background: var(--primary-gradient);
    border: none;
    color: var(--neutral-100);
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-weight: 600;
    font-size: 16px;
    line-height: 20px;
    padding: 10px 16px;
    border-radius: 100px;
    cursor: pointer;
    transition: opacity 0.3s ease;
}

.btn-gradient:hover {
    opacity: 0.9;
}

/* Responsive Typography */
@media (max-width: 768px) {
    .hero-title {
        font-size: 36px !important;
        line-height: 46px !important;
    }

    .card-title {
        font-size: 16px !important;
        line-height: 21px !important;
    }
}
