:root {
    --unhcr-blue: #007bff;
    --unhcr-dark-blue: #18375F;
    --unhcr-light-blue: #E6F2F9;
}

body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    background-color: #f8f9fa;
    color: #333;
    overflow-x: hidden;
}

.news-header {
    background: linear-gradient(135deg, var(--unhcr-blue), var(--unhcr-blue));
    color: white;
    padding: 3rem 0;
    margin-bottom: 2rem;
    border-radius: 0 0 10px 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    position: relative;
    overflow: hidden;
    margin-top: 70px;
}

    .news-header::before {
        content: '';
        position: absolute;
        top: -50%;
        left: -50%;
        width: 200%;
        height: 200%;
        background: radial-gradient(circle, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0) 70%);
        animation: pulse 15s infinite alternate;
    }

@keyframes pulse {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

.news-card {
    border: none;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    transition: all 0.5s cubic-bezier(0.25, 0.8, 0.25, 1);
    margin-bottom: 1.5rem;
    background-color: white;
    opacity: 0;
    transform: translateY(30px);


}

    .news-card.visible {
        opacity: 1;
        transform: translateY(0);
    }

    .news-card:hover {
        transform: translateY(-10px) !important;
        box-shadow: 0 12px 24px rgba(0, 0, 0, 0.15);
    }

    .news-card .card-img-top {
        height: 200px;
        object-fit: cover;
        transition: transform 0.5s ease;
    }

    .news-card:hover .card-img-top {
        transform: scale(1.05);
    }

    .news-card .card-body {
        padding: 1.5rem;
    }

    .news-card .card-title {
        color: var(--unhcr-dark-blue);
        font-weight: 600;
        position: relative;
        display: inline-block;
    }

        .news-card .card-title::after {
            content: '';
            position: absolute;
            bottom: -5px;
            right: 0;
            width: 0;
            height: 2px;
            background: var(--unhcr-blue);
            transition: width 0.3s ease;
        }

    .news-card:hover .card-title::after {
        width: 100%;
        left: 0;
        right: auto;
    }

    .news-card .card-text {
        color: #555;
        transition: color 0.3s ease;
    }

    .news-card:hover .card-text {
        color: #333;
    }

.news-date {
    color: var(--unhcr-blue);
    font-size: 0.9rem;
    margin-bottom: 0.5rem;
    display: inline-block;
    transition: all 0.3s ease;
}

.news-card:hover .news-date {
    transform: translateX(-5px);
}

.read-more {
    color: var(--unhcr-blue);
    font-weight: 500;
    text-decoration: none;
    position: relative;
    display: inline-block;
    transition: all 0.3s ease;
}

    .read-more::after {
        content: '\f060';
        font-family: 'Font Awesome 6 Free';
        font-weight: 900;
        position: absolute;
        right: -20px;
        top: 50%;
        transform: translateY(-50%);
        opacity: 0;
        transition: all 0.3s ease;
    }

    .read-more:hover {
        color: var(--unhcr-dark-blue);
        padding-right: 20px;
    }

        .read-more:hover::after {
            right: 0;
            opacity: 1;
        }

.category-badge {
    background-color: var(--unhcr-light-blue);
    color: var(--unhcr-dark-blue);
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 600;
    position: absolute;
    top: 15px;
    left: 15px;
    z-index: 2;
    transition: all 0.3s ease;
}

.news-card:hover .category-badge {
    transform: translateY(-5px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.footer {
    background-color: var(--unhcr-dark-blue);
    color: white;
    padding: 3rem 0;
    margin-top: 3rem;
    position: relative;
}

    .footer::before {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        width: 100%;
        height: 10px;
        background: linear-gradient(90deg, var(--unhcr-blue), transparent);
    }

.social-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.1);
    color: white;
    margin: 0 5px;
    transition: all 0.3s ease;
}

    .social-icon:hover {
        background-color: var(--unhcr-blue);
        transform: translateY(-5px);
    }

.news-ticker {
    background-color: var(--unhcr-dark-blue);
    color: white;
    padding: 10px 0;
    margin-bottom: 2rem;
    overflow: hidden;
}

.ticker-content {
    display: inline-block;
    white-space: nowrap;
    animation: ticker 30s linear infinite;
}

@keyframes ticker {
    0% {
        transform: translateX(100%);
    }

    100% {
        transform: translateX(-100%);
    }
}

.ticker-item {
    display: inline-block;
    padding: 0 20px;
    position: relative;
}

    .ticker-item::after {
        content: '•';
        position: absolute;
        right: -5px;
        color: var(--unhcr-blue);
    }

    .ticker-item:last-child::after {
        display: none;
    }

.floating-shapes {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    pointer-events: none;
    z-index: 0;
    overflow: hidden;
}

.shape {
    position: absolute;
    opacity: 0.1;
    border-radius: 50%;
    animation: float 15s infinite linear;
}

@keyframes float {
    0% {
        transform: translateY(0) rotate(0deg);
    }

    50% {
        transform: translateY(-20px) rotate(180deg);
    }

    100% {
        transform: translateY(0) rotate(360deg);
    }
}

.loading-bar {
    height: 4px;
    width: 100%;
    background-color: #f0f0f0;
    margin-bottom: 2rem;
    overflow: hidden;
}

.loading-progress {
    height: 100%;
    width: 0;
    background: linear-gradient(90deg, var(--unhcr-blue), var(--unhcr-dark-blue));
    animation: loading 2s ease-in-out infinite;
}

@keyframes loading {
    0% {
        width: 0;
        margin-left: 0;
    }

    50% {
        width: 100%;
        margin-left: 0;
    }

    100% {
        width: 0;
        margin-left: 100%;
    }
}

@media (max-width: 768px) {
    .news-header {
        padding: 2rem 0;
        margin-top: 144px;
    }

        .news-header h1 {
            font-size: 1.8rem;
        }

    .ticker-content {
        animation: ticker-mobile 20s linear infinite;
    }

    @keyframes ticker-mobile {
        0% {
            transform: translateX(100%);
        }

        100% {
            transform: translateX(-200%);
        }
    }
}
