        /* Global Var */
        :root {
            --msu-maroon: #800000;
            --accent-gold: #c5a017;
            --text-dark: #2c3e50;
            --bg-light: #f8f9fa;
            --acad-blue: #2878EB;
        }

    .bg-img {
      background: linear-gradient(rgba(40, 120, 235, 0.05), rgba(40, 120, 235, 0.05)), url(/pages/academics/img/bg-image.jpg);
      background-attachment: fixed;
    }

        /* HERO HEADER */
            .dept-hero {
                position: relative;
                height: 45vh;
                min-height: 480px;
                display: flex;
                align-items: center;
                justify-content: center;
            }

            /* background image */
            .dept-hero-bg {
                position: fixed;   /* TRUE fixed background */
                top: 0;
                left: 0;
                width: 100%;
                height: 100vh;     /* cover whole screen */

                z-index: -2;

                transform: scale(1.12);
                animation: zoomBg 8s ease forwards;
            }

            /* dark mask */
            .dept-hero-overlay {
                position: fixed;   /* same as background */
                top: 0;
                left: 0;
                width: 100%;
                height: 100vh;

                background: rgba(0,0,0,0.7);

                z-index: -1;
            }

            /* content */
            .dept-hero-content {
                position: relative;
                padding-top: 40px;
                z-index: 2;
                color: white;
                animation: fadeUp 1.2s ease;
            }

            /* department logo/header image */
            .dept-hero-logo {
                max-width: 280px;
                width: 80%;
                height: auto;
                margin-top: 8px;
                margin-bottom: 15px;
            }

            /* title */
            .dept-hero-title {
                font-weight: 700;
                letter-spacing: 2px;
            }

            /* animations */
            @keyframes fadeUp {
                from {
                    opacity: 0;
                    transform: translateY(40px);
                }
                to {
                    opacity: 1;
                    transform: translateY(0);
                }
            }

            @keyframes zoomBg {
                from {
                    transform: scale(1.20);
                }
                to {
                    transform: scale(1.08);
                }
            }

            @media (max-width: 768px) {
                .dept-hero-bg {
                    position: absolute;
                    height: 100%;
                }
            }

        /* submenu positioning */
            .dropdown-submenu .dropdown-menu {
                top: 0;
                left: 100%;
                margin-top: -1px;
                display: none;
            }

        /* show on hover */
            .dropdown-submenu:hover > .dropdown-menu {
                display: block;
            }

        /* arrow indicator */
            .dropdown-submenu > .dropdown-toggle::after {
                float: right;
                margin-top: 8px;
                transform: rotate(-90deg);
            }

        .header-left::after {
            text-align: left;
            color: #2c3e50;
            font-family: 'Arial', sans-serif;
            font-size: 2.5rem;
            margin-top: 40px;
            margin-bottom: 50px;
            text-transform: uppercase;
            letter-spacing: 2px;
            position: relative;
        }

        .sidepan-head h6::before {
            position: absolute;
            content: "";
            width: 100%;
            height: 0;
            bottom: 0;
            left: 0;
            border-top: 2px dashed yellow;
            margin-top: 20px;
        }

        .sidepan-sec-text {
            color: yellow;
            margin-top: 20px;
        }
        .sidepan-sec-text a {
            color: yellow;
        }

        .sidepan-sec-text a:hover {
            color: #ffd700;
        }

        .color-yellow {
            color: yellow;
        }

        .acad-dept-logo {
            display: flex;
            justify-content: left;
            align-items: left;
            width: 100%;
            margin-bottom: 10px;
        }
        
        .dept-chair-cap {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            margin: 0;
            text-align: center;
            color: white;
            background: rgba(0,0,0,0.6);
            padding: 10px 0;
        }

        .section-heading {
            font-size: 2rem;
            margin: 0 0 30px 0;
            font-weight: 800;
            position: relative;
            display: flex;
            align-items: center;
        }

        .section-heading::after {
            content: '';
            flex: 1;
            height: 2px;
            background: #ddd;
            margin-left: 20px;
        }

        .content-container {
            flex: 3;
        }

        /* EVENT CARD LAYOUT */
            .event-card {
                background: #fff;
                border-radius: 12px;
                overflow: hidden;
                box-shadow: 0 5px 20px rgba(0, 0, 0, 0.08);
                margin-bottom: 30px;
                display: flex;
                flex-wrap: wrap; /* responsive */
                transition: transform 0.3s ease;
                border: 1px solid #eee;
            }

            /* LEFT = image (1/3) */
            .event-img {
                flex: 0 0 40%;
                max-width: 40%;
            }

            .event-img img {
                width: 100%;
                height: 100%;
                object-fit: cover;
            }

            .event-card:hover {
                transform: translateY(-5px);
                box-shadow: 0 15px 30px rgba(0,0,0,0.12);
                border-color: var(--accent-gold);
            }

            .card-icon-box {
                background: var(--acad-blue);
                width: 120px;
                display: flex;
                align-items: center;
                justify-content: center;
                color: #fff;
                font-size: 3rem;
            }

            .event-meta {
                display: flex;
                gap: 20px;
                font-size: 0.85rem;
                color: #888;
                border-top: 1px solid #eee;
                padding-top: 15px;
                padding-bottom: 10px ;
            }

            .card-content {
                flex: 0 0 60%;
                max-width: 60%;
                padding: 25px;
                font-size: 0.95rem;
                color: #666;
            } 

            /* MOBILE STACK */
            @media (max-width: 768px) {
                .event-img,
                .card-content {
                    flex: 0 0 100%;
                    max-width: 100%;
                }
            }

            /* EVENTS WRAPPER */
            .events-wrapper {
                background: rgba(255,255,0,0.1);
                border-radius: 12px;
                padding: 40px;
                margin-top: 40px;
            }

             /* hide extra events */
            .event-item.hidden {
                display: none;
            }

            /* see more button style */
            #seeMoreBtn {
                border-radius: 25px;
                font-weight: 600;
            }


        /* Side Bar */  
        .sidebar-widget {
            background: #fff;
            padding: 30px;
            margin-top: 30px;
            margin-bottom: 30px;
            border-top: 4px solid var(--acad-blue);
        }

        .widget-title {
            font-size: 1.1rem;
            font-weight: 700;
            color: var(--acad-blue);
            margin-bottom: 20px;
            border-bottom: 5px solid #f8f9fa;
            padding-bottom: 10px;
        }

        .download-link {
            display: flex;
            align-items: center;
            padding: 12px;
            background: #f8f9fa;
            color: #444;
            text-decoration: none;
            border-radius: 6px;
            margin-bottom: 10px;
            transition: all 0.2s;
            font-weight: 600;
            font-size: 0.9rem;
        }

        .download-link:hover {
            background: var(--acad-blue);
            color: #fff;
        }

        .download-link i {
            margin-right: 12px;
            font-size: 1.1rem;
            color: var(--accent-gold);
        }
        
        .download-link:hover i { color: #fff; }

/* COLLAPSABLE EVENT CONTENT */  
.event-description {
    max-height: 120px;   /* controls how much is visible */
    overflow: hidden;
    position: relative;
    transition: max-height 0.4s ease;
}

.event-description.expanded {
    max-height: 2000px;  /* large enough for full content */
}

.event-description::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 40px;
    background: linear-gradient(to bottom, transparent, white);
}

.event-description.expanded::after {
    display: none;
}

.read-more-btn {
    background: none;
    border: none;
    color: #2878EB;
    font-weight: 500;
    cursor: pointer;
    padding: 0;
    margin-top: 10px;
}

.read-more-btn:hover {
    text-decoration: underline;
}


/* CUSTOM BORDER */   
.brdr-rnd-1 {
    border-radius: 0.5rem !important;
}

.brdr-rnd-2 {
    border-radius: 1rem !important;
}

.brdr-rnd-3 {
    border-radius: 1.5rem !important;
}

.brdr-rnd-4 {
    border-radius: 2rem !important;
}

.brdr-rnd-5 {
    border-radius: 2.5rem !important;
}

.brdr-rnd-6 {
    border-radius: 3rem !important;
}


.drop-shadow {
     box-shadow: 0 3px 10px rgba(0,0,0,0.5);
}