:root {
    --bs-body-font-family: 'Be Vietnam Pro', sans-serif;
    /* SGU Palette chính xác từ Logo */
    --sgu-brand-navy: #0C2340; /* Xanh Navy đậm */
    --sgu-brand-cyan: #00A3E0; /* Xanh Cyan tươi */
    --sgu-brand-light-blue: #38BDF8; /* Xanh Sky Blue */
    --sgu-navy-hover: #071629;
    --sgu-gold: #D97706;
}

body {
    background-color: #F8FAFC;
    color: #0F172A;
}

.font-serif-heading {
    font-family: 'Merriweather', serif;
}

/* Glassmorphism Header */
.glass-nav {
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-bottom: 2px solid rgba(0, 163, 224, 0.15);
}

/* Hero Wave Section */
.hero-bg {
    background: linear-gradient(135deg, #0A1B33 0%, var(--sgu-brand-navy) 45%, var(--sgu-brand-cyan) 100%);
    position: relative;
    overflow: hidden;
}

.hero-wave-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
}

    .hero-wave-overlay svg {
        position: relative;
        display: block;
        width: calc(100% + 1.3px);
        height: 60px;
    }

/* Hero Slideshow Glass Card */
.slideshow-card {
    background: rgba(255, 255, 255, 0.12);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 1.5rem;
}

/* --- FOOTER SGU BRANDED STYLES --- */
.footer-sgu {
    background: linear-gradient(180deg, #0A1B33 0%, var(--sgu-brand-navy) 100%);
    color: #E2E8F0;
    position: relative;
}

.footer-wave {
    position: absolute;
    top: -49px;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
}

    .footer-wave svg {
        position: relative;
        display: block;
        width: calc(100% + 1.3px);
        height: 50px;
    }

.footer-glow-1 {
    position: absolute;
    top: 20%;
    left: 5%;
    width: 250px;
    height: 250px;
    background: rgba(0, 163, 224, 0.12);
    filter: blur(90px);
    border-radius: 50%;
    pointer-events: none;
}

.footer-glow-2 {
    position: absolute;
    bottom: 10%;
    right: 5%;
    width: 300px;
    height: 300px;
    background: rgba(56, 189, 248, 0.08);
    filter: blur(100px);
    border-radius: 50%;
    pointer-events: none;
}

.footer-link-item {
    color: #94A3B8;
    text-decoration: none;
    transition: all 0.25s ease;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

    .footer-link-item:hover {
        color: var(--sgu-brand-light-blue);
        transform: translateX(5px);
    }

.social-btn {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.12);
    color: #E2E8F0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    text-decoration: none;
}

    .social-btn:hover {
        background: var(--sgu-brand-cyan);
        color: #FFFFFF;
        border-color: var(--sgu-brand-cyan);
        transform: translateY(-3px);
        box-shadow: 0 6px 16px rgba(0, 163, 224, 0.35);
    }

.footer-newsletter-card {
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(10px);
    border-radius: 1rem;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
    width: 8px;
}

::-webkit-scrollbar-track {
    background: #F1F5F9;
}

::-webkit-scrollbar-thumb {
    background: var(--sgu-brand-cyan);
    border-radius: 4px;
}

.hover-shadow {
    transition: all 0.3s ease;
}

    .hover-shadow:hover {
        transform: translateY(-4px);
        box-shadow: 0 .5rem 1rem rgba(0,0,0,.08) !important;
    }
