* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}


/* ===========================
   GLOBAL RESPONSIVE FIX
=========================== */
html,
body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden !important;
    margin: 0;
    padding: 0;
}

/* Fixes Bootstrap row negative margins causing overflow when placed outside a container */
.row {
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
}

main {
    overflow-x: hidden;
}




body {
    background: #fcf9f5;
    color: #1e1e1e;
    /* animation: fadePage .8s ease; */

}

.navbar-toggler {
    border: 2px solid #171414;
}

.navbar-toggler:focus,
.navbar-toggler:active {
    outline: none;
    box-shadow: none;
}

/* 
@font-face {
    font-family: "Merriweather";
    src: url("../fonts/Merriweather-VariableFont_opsz,wdth,wght.ttf") format("truetype");
    font-style: normal;
    font-weight: 300 900;
}

@font-face {
    font-family: "Merriweather";
    src: url("../fonts/Merriweather-Italic-VariableFont_opsz,wdth,wght.ttf") format("truetype");
    font-style: italic;
    font-weight: 300 900;
}


@font-face {
    font-family: "Roboto Slab";
    src: url("../fonts/RobotoSlab-VariableFont_wght.ttf") format("truetype");
    font-style: normal;
    font-weight: 100 900;
} */


html {
    scroll-behavior: smooth;
}

@keyframes fadePage {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

/* ----- brand colors ----- */


a {
    color: var(--lsr-red);
    text-decoration: none;
}

a:hover {
    color: #dc0622;
}
a:focus {
    color: #fff !important;
}


tbody, td, tfoot, th, thead, tr {
    border-color: #565656 !important;
}

.notice-table-wrapper a i{
    font-size: 20px;
    color: #383838;
}
.notice-table-wrapper a:hover i{
    color: #dc0622;
}

/* ----- utility transitions ----- */
.fade-transition {
    transition: all 0.25s ease-in-out;
}

.hover-lift {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.hover-lift:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(118, 1, 16, 0.08);
}

/* ----- navbar / header ----- */

/* ----- TOP BAR – LATEST NEWS (fully responsive) ----- */
.top-bar-news {
    background: #100102;
    color: #fff;
    padding: 4px 0;
    border-bottom: 2px solid #760110;
    width: 100%;
}

.news-ticker {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    padding: 2px 0;
}

.news-badge {
    /* background: #760110; */
    color: #fff;
    font-weight: 700;
    font-size: 0.65rem;
    padding: 2px 10px;
    border-radius: 30px;
    letter-spacing: 0.3px;
    white-space: nowrap;
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex-shrink: 0;
    font-family: "merriweatherlight";
    font-style: italic;
    font-weight: 800;
    font-size: 16px;
}

.news-badge i {
    font-size: 0.7rem;
}

.ticker-wrap {
    flex: 1;
    overflow: hidden;
    position: relative;
    min-width: 120px;
}

.ticker-track {
    display: flex;
    white-space: nowrap;
    animation: scrollTicker 28s linear infinite;
    width: max-content;
    align-items: center;
}

.ticker-track:hover {
    animation-play-state: paused;
}

.ticker-item {
    display: inline-block;
    padding: 0 16px;
    color: #fbedc3;
    font-size: 14px;
    line-height: 1.4;
    font-weight: 600;
    font-family: "roboto_slabregular";
}

.news_image {
    width: 3%;
}

.ticker-item a {
    color: #ffc857;
    font-weight: 600;
    margin-right: 3px;
}

.ticker-item a:hover {
    color: #42b4d6;
}

.ticker-item .blink {
    animation: blinker 0.9s ease-in-out infinite alternate;
    color: #ffb347;
    font-weight: 700;
    margin-left: 4px;
}

@keyframes scrollTicker {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

@keyframes blinker {
    from {
        opacity: 1;
    }

    to {
        opacity: 0.2;
    }
}

.top-bar {
    background: #100102;
    color: #fff;
    font-size: 0.8rem;
    padding: 4px 0;
}

/* blink effect */
.blink {
    animation: blinker 0.8s ease-in-out infinite alternate;
}

@keyframes blinker {
    from {
        opacity: 1;
    }

    to {
        opacity: 0.3;
    }
}

/* end */


.top-bar-news {
    background: #a21728;
    padding: 0px 0px;
    border-bottom: 2px solid #f5f7f96b;
}

/* .blink {
	animation: blinker 0.8s ease-in-out infinite alternate;
	color: #4b9aff;
	padding: 0px 8px;
	font-weight: 700;
	display: inline-block;
	background: red;
} */
.me-5.las-text {
    color: wheat;
    font-size: 16px;
}

.top-bar .badge-latest {
    background: #760110;
    color: #fff;
    padding: 2px 10px;
    border-radius: 20px;
    font-weight: 600;
    font-size: 0.7rem;
    letter-spacing: 0.3px;
}

.top-bar a {
    color: #f4f1de;
    font-weight: 500;
}

.top-bar a:hover {
    color: #fff;
}

/* middle bar */
.logo img {
    width: 66% !important;
}

.naac-logo img {
    width: 32%;
}

.middle-bar {
    background: #042e47;
}

.title {
    font-size: 37px;
    color: white;
    font-weight: 500;
    line-height: 40px;
}

.title_1.mb-0 {
    color: #e29f2a;
    font-size: 31px;
    font-weight: 500;
    font-family: "merriweatherlight";
    text-transform: uppercase;
}

.middle_para.mb-0 {
    color: wheat;
    font-size: 14px;
    font-style: italic;
}

/* menu nav */

.navbar.navbar-expand-lg.shadow-sm {
    background: #ee8219;
    border-bottom: 2px solid #ddd6c4;
    padding: 6px 0;
    border-top: 2px solid #f0eded;
}

/* .navbar-main {
    background: #ee8219;
    border-bottom: 2px solid #ddd6c4;
    padding: 6px 0;
    border-top: 2px solid #f0eded;
} */

#navbarNavDropdown2 {
    background: #760110;
    justify-content: center;
    margin-top: 5px;
}

.navbar-main .navbar-brand img {
    height: 50px;
    width: auto;
}

.navbar-main .brand-text {
    font-weight: 700;
    letter-spacing: -0.3px;
    color: #1e1e1e;
    line-height: 1.1;
}

.brand-sub {
    font-size: 0.7rem;
    font-weight: 400;
    color: #3d2b2b;
    letter-spacing: 0.6px;
}

.navbar-main .nav-link {
    font-weight: 600;
    color: #f7f0f0;
    font-size: 15px;
    padding: 7px 9px;
    transition: 0.2s;
    border-radius: 6px;
    font-family: "merriweatherlight";
}

.navbar-main .nav-link:hover,
.navbar-main .nav-link.active {
    background: rgba(118, 1, 16, 0.08);
    color: #fffafa;
    background: #0d202b5c;
    padding: 7px 13px;
}

.dropdown-item:focus,
.dropdown-item:hover {

    background-color: #d1ddea;
}

.btn-viksit {
    background: #c00000;
    color: #fff !important;
    border-radius: 30px;
    padding: 0.25rem 1.2rem;
    font-weight: 600;
    font-size: 0.75rem;
    transition: 0.2s;
    border: none;
}

.btn-viksit:hover {
    background: #a00000;
    color: #fff;
}

.search-wrapper {
    background: #fff;
    border-radius: 30px;
    padding: 2px 6px 2px 14px;
    border: 1px solid #ddd;
    max-width: 200px;
}



.language-select {
    background: #760110;
    color: #fff;
    border-radius: 30px;
    padding: 4px 12px;
    font-size: 0.75rem;
    border: none;
    font-weight: 500;
}

/* ----- hero carousel (fade transition) ----- */
.hero-carousel .carousel-item {
    transition: opacity 0.8s ease;
}

.hero-carousel .carousel-item img {
    object-fit: cover;
    height: 380px;
    width: 100%;
    border-radius: 16px;
}

@media (max-width: 576px) {
    .hero-carousel .carousel-item img {
        height: 220px;
    }

    /* contact */

    .contact_us-title.mb-4 {
        font-size: 24px;
    }
}

.owl-prev {
    left: -70px;
}

.owl-next {
    right: -70px;
}

/* Banner Wrapper */
.banner-wrapper {
    position: relative;
    padding: 0 60px;
}

/* Banner Image */
.banner-slider .item img {
    width: 100%;
    height: 550px;
    /* Fixed Banner Height */
    object-fit: cover;
    /* Crop image instead of stretching */
    display: block;
    border-radius: 8px;
}

/* Navigation Buttons */
.banner-slider .owl-nav {
    margin: 0;
}

.banner-slider .owl-nav button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 45px;
    height: 45px;
    background: #0d6efd !important;
    color: #fff !important;
    border-radius: 50% !important;
    font-size: 18px !important;
}

.banner-slider .owl-nav .owl-prev {
    left: -55px;
}

.banner-slider .owl-nav .owl-next {
    right: -55px;
}

.banner-slider .owl-nav button:hover {
    background: #083d8c !important;
}

/* Responsive */
@media (max-width: 992px) {
    .banner-slider .item img {
        height: 350px;
    }
}

@media (max-width: 768px) {
    .banner-wrapper {
        padding: 0 20px;
    }

    .banner-slider .item img {
        height: 250px;
    }

    .banner-slider .owl-nav .owl-prev {
        left: -10px;
    }

    .banner-slider .owl-nav .owl-next {
        right: -10px;
    }

    .banner-slider .owl-nav button {
        width: 38px;
        height: 38px;
    }
}

@media (max-width: 576px) {
    .banner-slider .item img {
        height: 234px;
    }
}


/* about */
.card {
    border: none;
    border-radius: 12px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04);
    transition: transform 0.3s ease;

}

.about_title {
    font-size: 30px;
    font-weight: 700;
    color: #760110;
    border-left: 6px solid #ee8219;
    padding-left: 16px;
    font-style: italic;
    font-family: "merriweatherlight";
}

.about_para {
    font-size: 15px;
    color: #46181e;
    font-family: "roboto_slabregular";
    /* font-weight: 600; */
    color: #4a4a4a;
    text-align: justify;
}

.course-footer {
    background: #a21728;
    padding: 14px;
    border-top-right-radius: 20px;
    border-bottom-left-radius: 20px;
}

.notice_title.mb-0 {
    text-align: center;
    color: whitesmoke;
    font-size: 26px;
    font-style: italic;
    font-weight: 600;
    font-family: "merriweatherlight";
}

.gallery_title {
    font-size: 30px;
    font-weight: 700;
    color: #760110;
    border-left: 6px solid #ee8219;
    padding-left: 16px;
    font-style: italic;
    font-family: "merriweatherlight";

}

.photo-gallery .owl-nav {
    position: absolute;
    top: 27%;
    width: 100%;
}
.photo-gallery .owl-nav .owl-next{
    position: absolute;
}

/* .owl-nav {
    display: none;
} */

.principalBox {
    background: #fff;
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.04);
}

.nameprincipal {
    color: #0b2a4a;
    font-weight: 700;
}

.link {
    color: #ffecee;
    font-weight: 600;
    text-decoration: none;
    background: #a21728;
    padding: 9px 19px;
    display: inline-block;
    /* border-radius: 25px; */
    border: 4px solid #dfdfdf;
    font-size: 14px;
    transition: all 0.2s;
    font-family: "merriweatherlight";
    border-top-right-radius: 15px;
    border-bottom-left-radius: 15px;
}

.link:hover {
    /* text-decoration: underline; */
    color: wheat;
    background: #042e47;
    transform: translateY(3px);
    transition: all 0.5s ease-in-out;
}

/* Facility */
.facility-box {
    background: #fff;
    border-radius: 16px;
    padding: 20px 18px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.04);
    margin: 10px;
    transition: 0.3s;
}

.facility-box:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.07);
}

.facility-icon {
    font-size: 2.2rem;
    color: #e41e2b;
    margin-bottom: 10px;
}

.facility-title {
    font-weight: 700;
    font-size: 1.1rem;
    color: #0b2a4a;
    margin-bottom: 6px;
}

.read-more-btn {
    color: #e41e2b;
    font-weight: 500;
    text-decoration: none;
}

/*  */


.notice-marquee-container {
    height: 412px;
    overflow: hidden;
    position: relative;
}

.notice-marquee-list {
    margin: 0;
    padding: 0;
    animation: scrollUp 15s linear infinite;
}

.notice-marquee-list li {
    list-style: none;
    padding: 12px 16px;
    border-bottom: 1px solid #e9ecef;
    font-size: 0.95rem;
}

.notice-marquee-list li a {
    color: #0b2a4a;
    font-weight: 500;
    font-size: 15px;
    font-family: "roboto_slabregular";
}

.notice-marquee-list li a:hover {
    color: #e41e2b;
}

.notice-marquee-list li small {
    color: #6c757d;
    display: block;
    margin-top: 2px;
}

.notice-marquee-list li .badge {
    font-size: 0.65rem;
    margin-left: 6px;
}

@keyframes scrollUp {
    0% {
        transform: translateY(0);
    }

    100% {
        transform: translateY(-50%);
    }

}

.notice-marquee-container:hover .notice-marquee-list {
    animation-play-state: paused;
}

/* ----- marquee (scrolling) ----- */
.marquee-wrap {
    background: #fff;
    border-radius: 40px;
    padding: 10px 0;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.02);
    overflow: hidden;
    white-space: nowrap;
    border: 1px solid #ece3d9;
}

.marquee-track {
    display: inline-flex;
    animation: scrollMarquee 24s linear infinite;
    width: max-content;
}

.marquee-track:hover {
    animation-play-state: paused;
}

.marquee-item {
    padding: 0 50px;
    font-weight: 600;
    color: #3d2b2b;
}

.marquee-item a {
    color: #d97300;
    font-weight: 700;
}

@keyframes scrollMarquee {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-50%);
    }
}

/* ----- principal message ----- */
.principal-card {
    background: #fff;
    border-radius: 28px;
    padding: 24px;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.02);
    border: 1px solid #f0e8de;
}

.princi_para {
    font-size: 15px;
    /* font-family: "Nata Sans", sans-serif; */
    font-family: "roboto_slabregular";
    /* font-weight: 600; */
    color: #4a4a4a;
}
.princi_para p{
    text-align: justify;
}

.name_tag {
    font-size: 17px;
    color: #a21728;
    font-family: "merriweatherlight";
}

.princi-title.mb-3 {
	font-size: 25px;
	background-color: #a21728;
	color: #fffafb;
	/* border-bottom: 2px solid wheat; */
	/* background: red; */
	/* display: inline-block; */
	font-weight: 800;
	/* margin: 0px 0px 0px 0px; */
	padding: 9px 34px 8px 55px;
	border-top-right-radius: 20px;
	border-bottom-left-radius: 20px;
	text-align: center;
	font-style: italic;
	font-family: "merriweatherlight";
}

.principal-img {
    border-radius: 24px;
    max-width: 180px;
    width: 100%;
    height: auto;
    box-shadow: 0 6px 18px rgba(118, 1, 16, 0.10);
    transition: 0.3s;
}

.principal-img:hover {
    transform: scale(1.01);
}

/* ----- counters ----- */
.counter-card {
    background: #a21728;
    /* border-radius: 24px; */
    padding: 33px 10px;
    /* border-top-right-radius: 20px; */
    /* border-bottom-left-radius: 20px; */
    /* border: 4px solid #dbd6d0; */
    transition: 0.2s;
}

.count-title {
    font-size: 16px;
    text-transform: uppercase;
    font-weight: bold;
    color: #f4f4f1;
    font-family: "roboto_slabregular";
}

.counter-number {
    font-size: 38px;
    font-weight: 700;
    color: #d9cacc;
    letter-spacing: -0.5px;
}

.serve_title {
    font-size: 30px;
    font-weight: 700;
    color: #760110;
    border-left: 6px solid #ee8219;
    padding-left: 16px;
    font-style: italic;
    font-family: "merriweatherlight";
}

/* zone */


.glass-card {

    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border-radius: 48px;

    padding: 2.2rem 2rem 1.8rem;

    margin: 0 auto;
    border: 1px solid rgba(255, 255, 255, 0.5);
    transition: all 0.25s ease;
}

@media (max-width: 576px) {
    .glass-card {
        padding: 1.5rem 0.8rem;
        border-radius: 32px;
    }

}

/* ---- modern tab navigation (centered) ---- */

/* Zone Tabs Custom Styling */
.zone-nav .nav-link {
    color: #333;
    border: 1px solid #b32d38;
    border-radius: 30px;
    padding: 8px 24px;
    font-weight: 500;
    transition: all 0.3s ease;
    background-color: #fff;
    white-space: nowrap;
    font-size: 16px;
    font-family: "merriweatherlight";
    /* Prevents text wrapping on tiny screens */
}

.zone-nav .nav-link:hover {
    background-color: #fcecee;
    color: #b32d38;
}

.zone-nav .nav-link.active {
    background-color: #b32d38 !important;
    border-color: #b32d38;
    color: #fff !important;
    font-size: 16px;
    font-family: "merriweatherlight";
}

/* Quick Links Grid & Cards */
.quick-link-card {
    background-color: #b32d38;
    color: white;
    border: none;
    border-radius: 16px 4px 16px 4px;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    text-decoration: none;
    height: 100%;
    min-height: 120px;
    box-shadow: 2px 2px 2px black;
    border: 2px solid #d9eaf4;
}

.quick-link-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.15);
    color: white;
}

.icon-wrapper {
    background-color: white;
    color: #0d6efd;
    /* Icon blue color */
    width: 45px;
    height: 45px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    margin-bottom: 10px;
    box-shadow: inset 0 0 2px rgba(0, 0, 0, 0.2);
}

.card-title {
    font-size: 14px;
    font-weight: 500;
    margin: 0;
    font-family: "merriweatherlight";
}

/* Section Headings (Awards / Events) */



/* links zone */


.sec1 {
    background: #fff;
}

.sec5 {
    background: #eef3f7;
}

/* .sec2 {
      background: #f1f6fa;
    } */
.sec6 {
    background: #fff;
}

.text-22 {
    font-size: 2.2rem;
    font-weight: 700;
    color: #0d1b2a;
}

.text-21 {
    font-size: 1rem;
    color: #2a3a4a;
    line-height: 1.7;
    text-align: justify;
}

.sp77 {
    font-size: 2.5rem;
    font-weight: 700;
    color: #b8860b;
    margin-right: 4px;
}

.btn-default {
    background: #0d1b2a;
    color: #fff;
    padding: 0.6rem 1.8rem;
    border-radius: 30px;
    text-decoration: none;
    font-weight: 600;
    transition: 0.3s;
    display: inline-block;
}

.btn-default:hover {
    background: #b8860b;
    color: #fff;
}

.txt1,
.txt1_1 {
    background: #0d1b2a;
    color: #fff;
    padding: 12px 15px;
    border-radius: 40px 40px 0 0;
    font-weight: 700;
    font-size: 1.1rem;
}

.txt1 i,
.txt1_1 i {
    margin-right: 10px;
}

.txt-box,
.txt-box2 {
    background: #fff;
    padding: 10px 5px;
    border-radius: 0 0 12px 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
    max-height: 260px;
    overflow-y: auto;
}

.txt-box2 {
    max-height: 280px;
}

.txt2 {
    padding: 6px 12px;
    border-bottom: 1px solid #e9ecef;
    margin: 0;
}

.txt2 a {
    color: #0d1b2a;
    font-weight: 500;
    text-decoration: none;
}

.txt2 a:hover {
    color: #b8860b;
}

.mbox {
    margin-bottom: 1.5rem;
}

.mbox1 {
    background: #f8f9fa;
    border-radius: 16px;
    padding: 1.2rem 0.5rem;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.03);
    transition: 0.2s;
    text-align: center;
    height: 100%;
}

.mbox1:hover {
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.08);
}

.img2 img {
    max-width: 50px;
}

.text-1 a {
    font-weight: 600;
    color: #0d1b2a;
    text-decoration: none;
    font-size: 0.9rem;
}

.text-1 a:hover {
    color: #b8860b;
}

/* departments */
/* Custom properties for colors to match your original theme */


/* Section Title styling with the left orange border bar */
.section-title-wrapper {
    border-left: 5px solid var(--color-title-orange);
    padding-left: 15px;
}

.section-title {
    color: var(--color-humanities);
    font-style: italic;
    font-size: 2.25rem;
}

/* Serif font style for the header text like your mockup */
.serif-font {
    font-family: 'Georgia', Times, serif;
}

.text-dark-blue {
    color: var(--color-btn-dark);
}

/* Department Card base styling */
.dept-card {
    border-radius: 20px;
    overflow: hidden;
    background: #ffffff;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.department-title {
    font-size: 24px;
    font-weight: 700;
    color: #760110;
    border-left: 6px solid #ee8219;
    padding-left: 16px;
    font-style: italic;
    font-family: "merriweatherlight";
    margin: 7px;
}

.dept-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1) !important;
}

/* Card split header */
.dept-card-header {
    height: 180px;
}

.bg-humanities {
    background-color: #364956;
}

.bg-science {
    background-color: var(--color-science) !important;
}

/* The overlapping circular icon setup */
.dept-icon-badge {
    width: 65px;
    height: 65px;
    border-radius: 50%;
    position: absolute;
    top: -32.5px;
    left: 50%;
    transform: translateX(-50%);
    transition: transform 0.3s ease;
}

.dept-card:hover .dept-icon-badge {
    transform: translateX(-50%) scale(1.1);
}

.text-humanities {
    color: var(--color-humanities);
}

.text-science {
    color: var(--color-science);
}

/* Unified modern styled button */
.btn-dept {
    background-color: var(--color-btn-dark);
    color: #ffffff;
    font-size: 0.9rem;
    transition: all 0.2s ease;
}

.btn-dept:hover {
    background-color: #00366d;
    color: #ffffff;
    box-shadow: 0 4px 10px rgba(0, 35, 71, 0.3);
}

/* noticemarquee */


.notice-sec {
    background: #a21728;
    color: #fff;
    padding: 12px 15px;
    /* border-radius: 40px 40px 0 0; */
    font-weight: 700;
    font-size: 17px;
    text-align: center;
    border-bottom-right-radius: 20px;
    border-top-left-radius: 20px;
}

.noti_al {
    color: #ffc107;
}

.noti_al:hover {
    color: #bcddf4;
}

.p-2.notice-item a {
    font-size: 14px;
    color: #0d1b2a;
    /* font-weight: 500; */
    /* font-family: "Nata Sans", sans-serif; */
    font-family: "Roboto Slab", serif;
}

.board_title {
    font-size: 17px;
    font-family: "merriweatherlight";
}

/* course */
















/* pill / chip style for extra links */
.chip-group {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 12px;
    margin-top: 0.8rem;
}

.chip {
    background: rgba(255, 255, 255, 0.7);
    backdrop-filter: blur(2px);
    border: 1px solid rgba(200, 215, 235, 0.4);
    padding: 0.35rem 1.1rem;
    border-radius: 40px;
    font-size: 0.78rem;
    font-weight: 500;
    color: #1d385b;
    transition: 0.15s;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.chip i {
    color: #3b6cb0;
    font-size: 0.75rem;
}

.chip:hover {
    background: white;
    border-color: #b0cceb;
    box-shadow: 0 4px 10px rgba(0, 20, 50, 0.04);
}

.uni-block {
    background: rgba(235, 244, 255, 0.5);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    border-radius: 30px;
    padding: 0.9rem 1.6rem;
    margin: 1.8rem 0 0.8rem 0;
    border: 1px solid rgba(255, 255, 255, 0.4);
}

.uni-block h6 {
    font-weight: 600;
    font-size: 0.9rem;
    color: #14305a;
    letter-spacing: -0.01em;
}

.uni-badge {
    background: white;
    border-radius: 40px;
    padding: 0.3rem 1rem;
    margin: 0.2rem 0.4rem 0.2rem 0;
    display: inline-block;
    font-weight: 500;
    font-size: 0.75rem;
    color: #14345e;
    border: 1px solid #d7e3f5;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.01);
}

.uni-badge i {
    margin-right: 5px;
    color: #1d4ed8;
}

.email-chip {
    background: #e5effb;
    border-radius: 60px;
    padding: 0.25rem 1.2rem;
    font-weight: 500;
    font-size: 0.8rem;
    color: #12315a;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.email-chip i {
    color: #1d4ed8;
}

.divider-light {
    border: 0;
    border-top: 1px solid rgba(160, 185, 215, 0.25);
    margin: 1.2rem 0 0.5rem 0;
}

.footer-mini {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    font-size: 0.75rem;
    color: #4a6382;
    padding-top: 0.2rem;
}

.footer-mini i {
    color: #3f71b0;
    margin-right: 4px;
}

/* active tab underline accent (optional) */
.tab-nav-modern .nav-link.active::after {
    display: none;
}

/* extra polish */
.text-soft {
    color: #3d5d82;
}

/* ----- tabs (notifications & events) ----- */



.tab-pane .event-item {
    border-bottom: 1px solid #d6d6d6;
    padding: 1rem 0;
}

.event-item .date-col {
    border-left: 2px solid #7b0015;
    padding-left: 15px;
}

.event-item .date-col .day {
    font-size: 2rem;
    font-weight: 700;
    color: #8b0015;
    line-height: 1;
}

.event-item .date-col .month {
    font-size: 0.9rem;
    text-transform: uppercase;
    color: #8b0015;
}

/*  */


.section-title {
    color: #0a2f5a;
    font-weight: 700;
    position: relative;
    padding-bottom: 10px;
}

.section-title:after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 60px;
    height: 3px;
    background: #b22234;
}

.principal-card {
    background: #0a2f5a;
    color: white;
    border-radius: 14px;
    padding: 24px 20px;
    height: 100%;
    box-shadow: 0 8px 24px rgba(10, 47, 90, 0.12);
}

.principal-card img {
    border-radius: 50%;
    border: 3px solid #ffd966;
    max-width: 100%;
}

.principal-card .btn-outline-light {
    border-color: #ffd966;
    color: #ffd966;
}

.principal-card .btn-outline-light:hover {
    background: #ffd966;
    color: #0a2f5a;
}

.dept-card-modern {
    background: #ffffff;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 20, 40, 0.06);
    transition: all 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    border: 1px solid #f0f4fa;
    height: 100%;
    position: relative;
    top: 0;
}


.dept-card-modern .dept-img {
    overflow: hidden;
    position: relative;
    height: 180px;
}

.dept-card-modern .dept-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.dept-card-modern .dept-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(10, 47, 90, 0.2) 0%, rgba(178, 34, 52, 0.3) 100%);
    opacity: 0;
    transition: opacity 0.4s ease;
}

.dept-card-modern .dept-body {
    padding: 22px 18px 24px;
    text-align: center;
    background: white;
    position: relative;
}

.dept-card-modern .dept-icon {
    font-size: 2.2rem;
    color: #0a2f5a;
    background: #eef3f9;
    width: 60px;
    height: 60px;
    line-height: 60px;
    border-radius: 50%;
    margin: -30px auto 10px;
    position: relative;
    z-index: 2;
    transition: 0.3s;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.02);
}

.dept-card-modern .dept-body h5 {
    font-weight: 700;
    color: #0a2f5a;
    font-size: 1.25rem;
    margin-bottom: 4px;
}

.dept-card-modern .dept-body .dept-sub {
    font-size: 0.8rem;
    color: #6c7e94;
    letter-spacing: 0.5px;
    font-weight: 500;
}

.dept-card-modern .dept-body .btn-dept {
    background: #0a2f5a;
    color: white;
    border-radius: 40px;
    padding: 6px 22px;
    font-size: 0.8rem;
    font-weight: 600;
    transition: 0.3s;
    border: none;
    margin-top: 12px;
    display: inline-block;
    box-shadow: 0 4px 10px rgba(10, 47, 90, 0.15);
}

/* ----- MODERN DEPARTMENT CARDS WITH HOVER EFFECTS ----- */
.dept-card-modern {
    background: #ffffff;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 20, 40, 0.06);
    transition: all 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    border: 1px solid #f0f4fa;
    height: 100%;
    position: relative;
    top: 0;
}

.dept-card-modern:hover {
    transform: translateY(-10px);
    box-shadow: 0 25px 45px rgba(10, 47, 90, 0.15);
    border-color: #cbdae9;
}

.dept-card-modern .dept-img {
    overflow: hidden;
    position: relative;
    height: 180px;
}

.dept-card-modern .dept-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.dept-card-modern:hover .dept-img img {
    transform: scale(1.08);
}

.dept-card-modern .dept-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(10, 47, 90, 0.2) 0%, rgba(178, 34, 52, 0.3) 100%);
    opacity: 0;
    transition: opacity 0.4s ease;
}

.dept-card-modern:hover .dept-overlay {
    opacity: 1;
}

.dept-card-modern .dept-body {
    padding: 22px 18px 24px;
    text-align: center;
    background: white;
    position: relative;
}

.dept-card-modern .dept-body h5 {
    font-weight: 700;
    color: #0a2f5a;
    font-size: 1.25rem;
    margin-bottom: 4px;
}

.dept-card-modern .dept-body .dept-sub {
    font-size: 0.8rem;
    color: #6c7e94;
    letter-spacing: 0.5px;
    font-weight: 500;
}

.dept-card-modern .dept-body .btn-dept {
    background: #0a2f5a;
    color: white;
    border-radius: 40px;
    padding: 6px 22px;
    font-size: 0.8rem;
    font-weight: 600;
    transition: 0.3s;
    border: none;
    margin-top: 12px;
    display: inline-block;
    box-shadow: 0 4px 10px rgba(10, 47, 90, 0.15);
}

.dept-card-modern .dept-body .btn-dept:hover {
    background: #b22234;
    transform: scale(1.02);
    box-shadow: 0 8px 18px rgba(178, 34, 52, 0.25);
    color: white;
}

.dept-card-modern .dept-icon {
    font-size: 2.2rem;
    color: #0a2f5a;
    background: #eef3f9;
    width: 60px;
    height: 60px;
    line-height: 60px;
    border-radius: 50%;
    margin: -30px auto 10px;
    position: relative;
    z-index: 2;
    transition: 0.3s;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.02);
}

.dept-card-modern:hover .dept-icon {
    background: #b22234;
    color: white;
    transform: rotate(4deg) scale(1.05);
}

.dept-card-body.position-relative.px-4.pb-4.pt-5 {
    background: #d9eaf4;
}

.bg-humanities {
    background-color: #b32d38;
}

.hu_title {
    font-size: 30px;
    font-family: "merriweatherlight";
}







/* 
.custom-tabs .nav-link {
    border-radius: 40px;
    font-weight: 600;
    color: #3d2b2b;
    padding: 0.6rem 1.8rem;
    border: 1px solid transparent;
    transition: 0.2s;
}

.custom-tabs .nav-link.active {
    background: #760110;
    color: #fff;
    border-color: #760110;
    box-shadow: 0 4px 12px rgba(118, 1, 16, 0.15);
}

.custom-tabs .nav-link:not(.active):hover {
    background: #f4f1de;
    border-color: #ddd6c4;
}

.tab-pane .event-item {
    border-bottom: 1px solid #e8dfd3;
    padding: 14px 0;
    display: flex;
    align-items: center;
    gap: 14px;
    transition: 0.15s;
}

.tab-pane .event-item:last-child {
    border-bottom: none;
}

.event-date {
    background: #f4f1de;
    color: #760110;
    font-weight: 700;
    border-radius: 20px;
    padding: 4px 14px;
    font-size: 0.8rem;
    white-space: nowrap;
    min-width: 70px;
    text-align: center;
}

.event-text a {
    font-weight: 500;
} */

/* ----- footer ----- */

/* Footer */
.footer-section {
    background: #0b1e33;
    color: #cfdbe8;
    padding: 40px 0 20px;
}

.footer-section h5 {
    color: #fff;
    font-weight: 700;
}

.footer-section hr {
    border-color: #2a4a6a;
}

.footer-section a {
    color: #fff;
    text-decoration: none;
    font-family: "roboto_slabregular";
    font-size: 15px;
}
.footer-section a:hover {
    color: #fff;
}
.footer-section p{
    font-size: 15px;
    margin-bottom: 1rem;
}

p {
    font-family: "roboto_slabregular";
}



.footer-section ul li {
    margin-bottom: 6px;
}

.footer_title {
    font-size: 22px;
    color: #ee8219;
    font-weight: 700;
    font-style: italic;
    font-family: "merriweatherlight";
}

.footer_para {
    font-size: 14px;
    font-family: "roboto_slabregular";
    color: whitesmoke;
}

.footer_last {
    font-size: 13px;
    color: white;
    font-family: "merriweatherlight";
}

.footer-para {
    background: #760110;
    color: #aab8c9;
    padding: 16px 0;
    text-align: center;
    font-size: 0.9rem;
}

.wp-block-social-links {
    display: flex;
    gap: 18px;
    margin-bottom: 0;
}
.wp-block-social-links .wp-block-social-link.wp-social-link {
    padding: 6px !important;
}
.wp-block-social-links .wp-block-social-link.wp-social-link svg{
    font-size: 20px;
}





/* misc */
.section-title {
    font-weight: 700;
    color: #1e1e1e;
    letter-spacing: -0.3px;
    border-left: 6px solid #760110;
    padding-left: 16px;
}

.bg-cream {
    background: var(--lsr-cream);
}

.bg-gold-light {
    background: #faf7f0;
}

.text-lsr-red {
    color: #760110;
}

.border-lsr {
    border-color: #760110;
}






.section-title {
    font-weight: 600;
    letter-spacing: -0.02em;
    color: #0b1a33;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
    font-size: 1.2rem;
}

.section-title i {
    color: #0d6efd;
    font-size: 1.4rem;
}

.badge-count {
    background: #e9edf2;
    color: #1e293b;
    font-weight: 500;
    font-size: 0.7rem;
    padding: 0.2rem 0.7rem;
    border-radius: 0;
    /* square badge */
    margin-left: 0.5rem;
    border: 1px solid #dde1e6;
}



/* remove all border-radius from any carousel element */
.carousel,
.carousel-inner,
.carousel-item,
.carousel-item img,
.carousel-caption,
.carousel-control-prev-icon,
.carousel-control-next-icon,
.carousel-indicators [data-bs-target] {
    border-radius: 0 !important;
}

/* keep card edges sharp */
.carousel-card {
    border-radius: 0 !important;
}

/* mobile caption chip */
.mobile-chip {
    background: #f0f2f5;
    color: #1e293b;
    border: 1px solid #e2e6ec;
    padding: 0.5rem 0.75rem;
    font-size: 0.75rem;
    font-weight: 500;
    letter-spacing: 0.01em;
    border-radius: 0;
}



/* scroll top */

#scrollTopBtn i {
    line-height: 1;
}

#scrollTopBtn {
    position: fixed;
    bottom: 30px;
    right: 30px;
    z-index: 1060;
    background: #760110;
    color: #fff;
    border: 2px solid #ee8219;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    font-size: 1.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 6px 20px rgba(118, 1, 16, 0.3);
    transition: all 0.25s ease;
    opacity: 0;
    visibility: hidden;
    cursor: pointer;
    transform: translateY(20px);
    padding: 0;
}

#scrollTopBtn.visible {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}




/* College & Student Zone */
.zone-section {
    background: #f8fafc;
    padding: 60px 0;
}

/* Toggle Buttons */

.btn-group {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}

.btn-group .btn {
    border-radius: 50px !important;
    font-weight: 600;
    padding: 12px 35px;
    transition: .3s;
    min-width: 180px;
}

.btn-light {
    background: #fff;
}


/* Cards */

.zone-tabs {
    display: inline-flex;
    border-radius: 50px;
    overflow: hidden;
    background: #fff;
    padding: 4px;
}

.zone-tabs .btn {
    border: none;
    min-width: 160px;
    padding: 10px 24px;
    font-size: 15px;
    font-weight: 600;
    border-radius: 40px !important;
    transition: .3s;
    font-family: "merriweatherlight";
    font-weight: 500;
    font-weight: 600;
}

.zone-tabs .btn.btn-danger {
    background: #dc3545;
}

.zone-tabs .btn.btn-light {
    background: #b32d381c;
}

/* Tablet */

@media (max-width:768px) {

    .zone-tabs .btn {
        min-width: 140px;
        padding: 9px 18px;
        font-size: 14px;
    }

}




@media (max-width: 768px) {

    .about-section .col-md-5,
    .about-section .col-md-7 {
        width: 100%;
        flex: 0 0 100%;
    }

    .about-menu .custom_item {
        /* background-color: #b31b27; */
        color: #0d0c0c !important;
        border-radius: 8px;
        padding: 12px 20px;
        text-decoration: none;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    }

    .about-menu .custom_item:hover {
        background: #a21728;

        color: white !important;
    }

    .about-menu .custom_item .icon {
        background-color: #ffffff;
        color: #b31b27;
        width: 38px;
        height: 38px;
        min-width: 38px;
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-right: 15px;
        font-size: 1.1rem;
    }

    .about-menu .custom_item .custom_title {
        font-weight: bold;
        font-size: 21px;
    }

    /* .footer_title {
        font-size: 29px;
    }

    .footer_para {
        font-size: 18px;
    }

    .footer-section a {
        font-size: 19px;
    }

    p {
        font-size: 20px;
    } */
    /* .owl-next,
    .owl-prev {
        display: none;
    } */

    .gallery-content h5 {
        font-size: 18px;
    }

    .content-header {
        display: flex;
        flex-direction: row-reverse;
        /* Puts the arrows on the right */
        justify-content: center;
        align-items: center;
        margin-bottom: 25px;
        padding-bottom: 10px;
        border-bottom: 2px solid #002147;
        /* Blue bottom border */
        position: relative;
    }

    .content-header::after {
        content: '';
        position: absolute;
        bottom: -6px;
        left: 0;
        right: 0;
        height: 2px;
        background-color: #b31b27;
    }

    .content-header .hist {
        color: #b31b27;
        font-size: 22px;
        font-style: italic;
        font-weight: 700;
        text-transform: uppercase;
        margin-right: 10px;
    }

    .content-header i.bi-chevron-double-right {

        font-size: 20px;
    }
}

/* Fix Carousel arrows overflowing on screens <= 1450px */
@media (max-width: 1450px) {
    .owl-prev {
        left: 10px !important;
        background: rgba(13, 110, 253, 0.8) !important;
        /* Optional: adds background so it's visible over images */
    }

    .owl-next {
        right: 10px !important;
        background: rgba(13, 110, 253, 0.8) !important;
    }

    .banner-slider .owl-nav .owl-prev {
        left: 10px !important;
    }

    .banner-slider .owl-nav .owl-next {
        right: 10px !important;
    }
}

/* Mobile */

@media (max-width:576px) {

    .zone-tabs {
        width: auto;
    }

    .zone-tabs .btn {
        min-width: 120px;
        padding: 8px 14px;
        font-size: 13px;
    }

}

/* Small Mobile */

@media (max-width:360px) {

    .zone-tabs .btn {
        min-width: 105px;
        padding: 8px 10px;
        font-size: 12px;
    }

}

.zone-card {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 100%;
    height: 170px;
    background: #fff;
    color: #222;
    text-decoration: none;
    /* border-radius: 18px; */
    border: 1px solid #dc3545;
    box-shadow: 0 8px 20px rgba(0, 0, 0, .08);
    transition: .35s;
    border-top-left-radius: 20px;
    border-bottom-right-radius: 20px;
}

.zone-card i {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: #dc3545;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 30px;
    margin-bottom: 15px;
    transition: .35s;
}

.zone-card h6 {
    margin: 0;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.4;
    font-family: "roboto_slabregular";
}

.zone-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 18px 35px rgba(220, 53, 69, .22);
}

.zone-card:hover i {
    transform: scale(1.08) rotate(8deg);
    background: #b91c1c;
}

/* Animation */

.zone {
    animation: fade .35s ease;
}

.social-links.mt-4 {


    margin-bottom: 18px;
}

.about-menu .custom_item .custom_title {
    font-size: 17px;
}

.link {
    font-size: 13px;
}

.sm-blue li a {
    font-size: 14px;
}

.department_custom {
    font-size: 13px;
}

@keyframes fade {
    from {
        opacity: 0;
        transform: translateY(12px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }

}

/* --------------------- */
/* Large Tablet */
/* --------------------- */

@media (min-width:992px) {

    .main-menu-btn {
        display: none !important;
    }

    .footer_title {
        font-size: 20px;
    }

    #main-menu {
        display: flex !important;
    }
}

@media (max-width:991px) {

    .zone-card {
        height: 155px;
    }

    .zone-card i {
        width: 60px;
        height: 60px;
        font-size: 26px;
    }

 .zone-card h6 {
	font-size: 14px;
}

}

/* --------------------- */
/* Tablet */
/* --------------------- */

@media (max-width:768px) {

    .btn-group {
        width: 100%;
    }

    .btn-group .btn {
        flex: 1;
        min-width: 150px;
        padding: 11px 20px;
        font-size: 15px;
    }

    .zone-card {
        height: 145px;
    }

}

/* --------------------- */
/* Mobile */
/* --------------------- */

@media (max-width:576px) {

    .zone-section {
        padding: 40px 0;
    }

    .container {
        padding-left: 15px;
        padding-right: 15px;
    }

    .btn-group {
        width: 100%;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    .btn-group .btn {
        min-width: auto;
        width: 100%;
        padding: 10px;
        font-size: 14px;
    }

    .zone-card {
        height: 120px;
        border-radius: 15px;
    }

    .zone-card i {
        width: 50px;
        height: 50px;
        font-size: 22px;
        margin-bottom: 10px;
    }

    .zone-card h6 {
        font-size: 13px;
    }

}

/* --------------------- */
/* Very Small Phones */
/* --------------------- */

@media (max-width:360px) {

    .zone-card {
        height: 110px;
    }

    .zone-card i {
        width: 44px;
        height: 44px;
        font-size: 18px;
    }

    .zone-card h6 {
        font-size: 12px;
    }

}


/* TABS */

.custom-tabs {
    margin: 50px auto 30px;
}

.custom-tabs .nav-link {
    position: relative;
    border-radius: 0;
    padding: 18px;
    font-size: 20px;
    color: #110f0d;
    background: #ecdb85b0;
    border: none;
    transition: .3s;
    border: 2px solid #f7f7f5;
    font-family: "merriweatherlight";
    font-style: italic;
}

.custom-tabs .nav-link:hover {
    background: #eee6ca;
}

.custom-tabs .nav-link.active {
    background: #a21728;
    color: #fff;
}

.custom-tabs .nav-link.active::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -12px;
    transform: translateX(-50%);
    border-left: 12px solid transparent;
    border-right: 12px solid transparent;
    border-top: 12px solid #c40000;
}

/*=========================
    List
==========================*/

.notice-list {
    background: #fff;
}

.notice-item {
    display: flex;
    gap: 30px;
    padding: 28px 0;
    border-bottom: 1px solid #ddd;
}

.notice-date {
    width: 90px;
    text-align: center;
    border-left: 3px solid #c40000;
    padding-left: 18px;
    /* Gap between border and date */
}

.date-content {
    padding-left: 18px;
    text-align: center;
}

/* View More Button */

.custom-view-more {
    background: linear-gradient(135deg, #b80000, #d31b1b);
    color: #fff;
    border: none;
    border-radius: 30px;
    padding: 10px 14px;
    font-weight: 600;
    text-decoration: none;
    transition: all .3s ease;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    box-shadow: 0 5px 15px rgba(184, 0, 0, .25);
    font-size: 15px;
}

.custom-view-more:hover {
    background: linear-gradient(135deg, #9a0000, #b80000);
    color: #fff;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(184, 0, 0, .35);
}

.custom-view-more i {
    transition: transform .3s ease;
}

.custom-view-more:hover i {
    transform: translateX(4px);
}

.notice-date h2 {
    margin: 0;
    font-size: 31px;
    color: #a40000;
    font-weight: 300;
    line-height: 1;
    font-family: "merriweatherlight";
}

.notice-date span {
    font-size: 16px;
    color: #555;
    text-transform: uppercase;
    font-family: "merriweatherlight";
}

.notice-content {
    flex: 1;
    display: flex;
    align-items: center;
}

.notice-content a {
    text-decoration: none;
    color: #8b0000;
    font-size: 16px;
    transition: .3s;
    font-family: "roboto_slabregular";
}

.notice-content a:hover {
    color: #c40000;
    text-decoration: underline;
}

@media(max-width:768px) {

    .notice-item {
        flex-direction: column;
        gap: 15px;
    }

    .notice-date {
        width: 100%;
        border-left: none;
        border-bottom: 3px solid #c40000;
        padding-bottom: 10px;
    }

    .notice-content a {
        font-size: 18px;
    }

    .notice-content {
        padding: 10px 20px;
    }

    .notice-content a {
        font-size: 14px;
    }

    .notice-date h2 {
        font-size: 25px;
    }
}

.counter-row {
    margin-top: 40px;
}

.counter-box {
    background: linear-gradient(135deg, #8b0015, #b30021);
    color: #fff;
    text-align: center;
    padding: 35px 20px;
    border-radius: 15px;
    box-shadow: 0 15px 35px rgba(0, 0, 0, .15);
    transition: .35s;
    position: relative;
    overflow: hidden;
}

.counter-box::before {
    content: '';
    position: absolute;
    width: 140px;
    height: 140px;
    background: rgba(255, 255, 255, .08);
    border-radius: 50%;
    top: -60px;
    right: -50px;
}

.counter-box:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 45px rgba(0, 0, 0, .25);
}

.counter-box i {
    font-size: 45px;
    margin-bottom: 18px;
    color: #ffd86b;
}

.counter-box h2 {
    font-size: 42px;
    font-weight: 700;
    margin-bottom: 10px;
}

.counter-box p {
    margin: 0;
    font-size: 18px;
    font-weight: 500;
}

@media(max-width:991px) {

    .counter-box {
        padding: 30px 15px;
    }

    .counter-box h2 {
        font-size: 34px;
    }

    .counter-box i {
        font-size: 38px;
    }

}



.social-links {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}

.social-links h6 {
    width: 100%;
    color: #fff;
    margin-bottom: 5px;
}

.social {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    transition: .3s ease;
}

.social.facebook {
    background: #1877F2;
}

.social.instagram {
    background: linear-gradient(45deg, #f09433, #e6683c, #dc2743, #cc2366, #bc1888);
}

.social.twitter {
    background: #e6d9d9;
    color: #1877f2;
}

.social:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 18px rgba(0, 0, 0, .35);
}

@media (max-width:768px) {

    .social-links {
        justify-content: flex-start;
    }

    .social {
        width: 38px;
        height: 38px;
        font-size: 16px;
    }
}







.department-title {

    font-size: 30px;
    font-weight: 700;
    color: #760110;
    border-left: 6px solid #ee8219;
    padding-left: 16px;
    font-style: italic;
    font-family: "merriweatherlight";

}

.department-subtitle {
    color: #6c757d;
}

.department-card {
    display: block;
    background: #fff;
    border-radius: 18px;
    padding: 50px 35px;
    text-align: center;
    transition: .35s;
    position: relative;
    overflow: hidden;
    box-shadow: 0 12px 35px rgba(0, 0, 0, .08);
    height: 100%;
    border: 1px solid #edf0f5;
}

.department-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 45px rgba(46, 80, 132, .18);
}

.department-card::before {
    content: "";
    position: absolute;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    top: -90px;
    right: -90px;
    opacity: .08;
    transition: .4s;
}

.science-card::before {
    background: #0d6efd;
}

.arts-card::before {
    background: #dc3545;
}

.department-card:hover::before {
    transform: scale(1.2);
}

.department-icon {
    width: 90px;
    height: 90px;
    margin: auto;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 38px;
    margin-bottom: 25px;
}

.science-card .department-icon {
    background: #e8f1ff;
    color: #0d6efd;
}

.arts-card .department-icon {
    background: #ffe8eb;
    color: #dc3545;
}

.department-card h3 {
    font-size: 30px;
    font-weight: 700;
    color: #222;
    margin-bottom: 15px;
    font-family: "merriweatherlight";
}

.department-card p {
    color: #777;
    margin-bottom: 25px;
    font-family: "roboto_slabregular";
}

.department_custom {
    display: inline-flex;
    align-items: center;
    padding: 10px 24px;
    border-radius: 30px;
    font-weight: 600;
    transition: .3s;
    font-family: "merriweatherlight";
}


.science-card .department_custom {
    background: #042e47;
    color: #fff;
}


.arts-card .department_custom {
    background: #a21728;
    color: #fff;
}

/* .department-card:hover .department_custom {
    letter-spacing: .5px;
} */


/* ===========================
   GLOBAL RESPONSIVE FIX
=========================== */

html,
body {
    overflow-x: hidden;
}

img {
    max-width: 100%;
    height: auto;
}

.container,
.container-fluid {
    width: 100%;
}

iframe,
video {
    max-width: 100%;
}

/* ===========================
   LARGE TABLETS
=========================== */

@media (max-width:991px) {

    .title {
        font-size: 28px;
    }

    .title_1 {
        font-size: 22px !important;
    }

    .middle_para {
        font-size: 13px !important;
    }

    .logo img {
        width: 85%;
    }

    .naac-logo img {
        width: 45%;
    }

    .navbar-nav {
        text-align: center;
    }

    .navbar-main .nav-link {
        padding: 12px 15px;
    }

    .hero-carousel .carousel-item img {
        height: 320px;
    }

    .about_title,
    .gallery_title,
    .serve_title {
        font-size: 26px;
    }

    .principal-img {
        margin: auto;
        display: block;
    }

    .counter-card {
        margin-bottom: 20px;
    }

    .facility-box {
        margin: 10px 0;
    }

}

/* ===========================
   TABLET
=========================== */

@media (max-width:768px) {

    .middle-bar {
        text-align: center;
    }

    .logo img {
        width: 94% !important;
        /* margin-bottom: 15px; */
    }

    .naac-logo img {
        width: 45%;
    }

    .title {
        font-size: 24px;
    }

    .title_1 {
        font-size: 20px !important;
    }

    .hero-carousel .carousel-item img {
        height: 250px;
    }

    .notice-marquee-container {
        height: 300px;
    }

    .principal-card {
        text-align: center;
    }

    .principal-img {
        margin-bottom: 20px;
    }

    .glass-card {
        padding: 20px;
    }

    .quick-link-card {
        min-height: auto;
    }

}

/* ===========================
   MOBILE
=========================== */

@media (max-width:576px) {

    .container {
        padding-left: 15px;
        padding-right: 15px;
    }

    .logo img {
        width: 80% !important;
    }

    .naac-logo img {
        width: 85%;
    }

    .title {
        font-size: 20px;
        line-height: 30px;
    }

    .title_1 {
        font-size: 17px !important;
    }

    .middle_para {
        font-size: 12px !important;
    }

    .hero-carousel .carousel-item img {
        height: 200px;
        border-radius: 10px;
    }

    .about_title,
    .gallery_title,
    .serve_title {
        font-size: 22px;
    }

    .about_para,
    .princi_para {
        font-size: 14px;
    }

    .notice_title {
        font-size: 22px;
    }

    .notice-marquee-container {
        height: 260px;
    }

    .principal-img {
        max-width: 150px;
    }

    .counter-card {
        padding: 25px 15px;
    }

    .counter-number {
        font-size: 28px;
    }

    .count-title {
        font-size: 14px;
    }

    .link {
        display: block;
        width: 100%;
        text-align: center;
    }

    .zone-nav {
        flex-wrap: nowrap;
        overflow-x: auto;
        white-space: nowrap;
    }

    .zone-nav::-webkit-scrollbar {
        height: 4px;
    }

    .zone-nav .nav-link {
        margin-right: 10px;
    }

    .custom-item img {
        height: 180px;
    }

    .footer {
        text-align: center;
    }

}

/* ===========================
   SMALL MOBILE
=========================== */

@media (max-width:420px) {
    .custom-tabs .nav-link {
        font-size: 17px;
    }
    .department-title {
        font-size: 26px;
    }

    .about_title,
    .gallery_title,
    .serve_title {
        font-size: 22px;
    }

    .footer_last {
        font-size: 11px;
    }

    .title {
        font-size: 18px;
    }

    .title_1 {
        font-size: 15px !important;
    }

    .hero-carousel .carousel-item img {
        height: 180px;
    }

    .about_title,
    .gallery_title,
    .serve_title {
        font-size: 20px;
    }

    .notice_title {
        font-size: 18px;
    }

    .counter-number {
        font-size: 24px;
    }

    .logo img {
        width: 70%;
    }

    .naac-logo img {
        width: 45%;
    }

}

/* ===========================
   EXTRA SMALL
=========================== */

@media (max-width:360px) {

    .title {
        font-size: 16px;
    }

    .title_1 {
        font-size: 14px !important;
    }

    .middle_para {
        font-size: 11px !important;
    }

    .hero-carousel .carousel-item img {
        height: 160px;
    }

    .about_title,
    .gallery_title,
    .serve_title {
        font-size: 18px;
    }

    .counter-number {
        font-size: 22px;
    }

    .link {
        font-size: 13px;
        padding: 10px;
    }

    .footer_last {
        font-size: 10px;
    }

    .notice_title.mb-0 {
        font-size: 20px;
    }
}

.card img,
.gallery img,
.owl-carousel img,
.principal-img {
    width: 100%;
    height: auto;
}

/* ===========================
   TABLE FIX
=========================== */

.table-responsive {
    overflow-x: auto;
}

table {
    width: 100%;
}

/* ===========================
   FORM FIX
=========================== */





/* responsive tweaks */
@media (max-width: 768px) {
    .navbar-main .navbar-brand img {
        height: 40px;
    }

    .brand-sub {
        font-size: 0.6rem;
    }

    .counter-number {
        font-size: 2.2rem;
    }
}

@media (max-width: 360px) {
    .navbar-main .navbar-brand img {
        height: 40px;
    }

    .brand-sub {
        font-size: 0.6rem;
    }

    .counter-number {
        font-size: 2.2rem;
    }

    .title {
        font-size: 25px;
        color: white;
    }

    .title_1.mb-0 {
        color: #e29f2a;
        font-size: 17px;
        font-weight: 500;
    }

    .middle_para.mb-0 {
        color: wheat;
        font-size: 7px;
        font-style: italic;
    }

    .notice_title.mb-0 {
        font-size: 20px;
    }

    .princi-title.mb-3 {
        font-size: 18px;

    }

    .tab-nav-modern {
        display: flex;
        justify-content: center;
        gap: 0.5rem;
        margin-bottom: 2rem;
        border: none;
        background: none;
        padding: 0.4rem;
        /* border-radius: 80px; */
        backdrop-filter: blur(4px);
        -webkit-backdrop-filter: blur(4px);
        box-shadow: none;
    }

    .logo img {
        width: 100%;
    }

    .about_para {
        font-size: 13px;
    }

    .princi_para {
        font-size: 13px;
    }

    .naac-logo img {
        width: 100%;
    }

    .notice_title.mb-0 {
        font-size: 17px;
    }

    .notice-marquee-list li a {
        font-size: 13px;
    }

    .board_title {
        font-size: 14px;
    }

    .p-2.notice-item a {
        font-size: 13px;
    }

    .zone-nav .nav-link.active {
        font-size: 14px;
    }

    .zone-nav .nav-link {
        font-size: 14px;
    }

    .card-title {
        font-size: 11px;
    }

    .award_title {
        font-size: 19px;
    }

    .event_title {
        font-size: 19px;
    }

    .department-title {
        font-size: 19px;
    }

    .gallery_title {
        font-size: 19px;
    }

    .footer_para {
        font-size: 13px;
    }

    .footer_title {
        font-size: 18px;
    }

    .footer_last {
        font-size: 11px;
    }

    .news-badge {
        font-size: 11px;
    }

    .notice-date span {
        font-size: 14px;
    }

    .department-title {
        font-size: 22px;
    }

    .notice-content a {
        font-size: 14px;
    }
}


@media (max-width: 420px) {

    .title {
        font-size: 24px;
    }

    .title_1.mb-0 {
        font-size: 14px;
    }

    .middle_para.mb-0 {
        color: wheat;
        font-size: 10px;
        font-style: italic;
    }

    .naac-logo img {
        width: 100%;
    }

    .logo img {
        width: 95% !important;
    }
}




/* responsive adjustments */
@media (max-width: 767.98px) {
    .carousel-card .carousel-item img {
        height: 220px;
        /* slightly taller on tablet */
    }

    .carousel-card {
        padding: 0.75rem 0.75rem 0.25rem 0.75rem;
    }

    .carousel-card .carousel-caption h5 {
        font-size: 0.95rem;
    }

    .carousel-card .carousel-caption p {
        font-size: 0.75rem;
    }

    .carousel-indicators [data-bs-target] {
        width: 8px;
        height: 8px;
    }

    .carousel-indicators .active {
        width: 14px;
    }
}

@media (max-width: 575.98px) {
    .carousel-card .carousel-item img {
        height: 190px;
        /* taller on mobile */
    }

    .section-title {
        font-size: 1rem;
    }
}


/* ----- RESPONSIVE: 360px and below ----- */
@media (max-width: 420px) {
    .top-bar-news {
        padding: 3px 0;
    }

    .news-ticker {
        gap: 4px;
    }

    .news-badge {
        font-size: 0.55rem;
        padding: 2px 8px;
        letter-spacing: 0.2px;
    }

    .news-badge i {
        font-size: 0.6rem;
    }

    .ticker-item {
        font-size: 0.6rem;
        padding: 0 10px;
    }

    .ticker-wrap {
        min-width: 80px;
    }

}

@media (max-width: 360px) {
    .top-bar-news {
        padding: 2px 0;
    }

    .news-ticker {
        flex-wrap: wrap;
        gap: 2px;
    }

    .news-badge {
        font-size: 0.5rem;
        padding: 1px 6px;
    }

    .ticker-item {
        font-size: 0.55rem;
        padding: 0 8px;
    }

    .ticker-item a {
        font-size: 0.55rem;
    }

    .ticker-wrap {
        min-width: 60px;
    }

    /* ensure no overflow */
    .container {
        padding-left: 6px;
        padding-right: 6px;
    }

    .footer-section a {
        font-size: 13px;
    }

    p {
        font-size: 14px;
    }

    .custom-tabs .nav-link {
        font-size: 15px;
    }

}

@media (max-width: 768px) {

    section {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    /* Reduce Bootstrap spacing */
    .py-4 {
        padding-top: 15px !important;
        padding-bottom: 15px !important;
    }

    .py-5 {
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }

    .mt-3 {
        margin-top: 10px !important;
    }

    .mt-4 {
        margin-top: 15px !important;
    }

    .mt-5 {
        margin-top: 20px !important;
    }

    .my-5 {
        margin-top: 20px !important;
        margin-bottom: 20px !important;
    }

    /* Remove extra card spacing */
    .card,
    .zone-card,
    .department-card,
    .carousel-card {
        margin-bottom: 15px !important;
    }

    /* Footer compact */
    .footer-section {
        padding-top: 25px !important;
        padding-bottom: 25px !important;
    }

}

/* ===================================
   Extra Small Mobile Gap Fix
   For 320px and below
   =================================== */

@media (max-width: 320px) {

    section {
        margin-top: 10px !important;
        margin-bottom: 10px !important;
    }

    .container {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    /* Bootstrap spacing override */
    .mt-5 {
        margin-top: 10px !important;
    }

    .mt-4 {
        margin-top: 10px !important;
    }

    .mt-3 {
        margin-top: 8px !important;
    }

    .my-5 {
        margin-top: 15px !important;
        margin-bottom: 15px !important;
    }

    .py-5 {
        padding-top: 15px !important;
        padding-bottom: 15px !important;
    }

    .py-4 {
        padding-top: 15px !important;
        padding-bottom: 15px !important;
    }


    /* Header */
    .middle-bar {
        padding: 5px 0 !important;
    }


    /* Banner */
    .container.mt-3 {
        margin-top: 5px !important;
    }


    /* Cards */
    .card,
    .zone-card,
    .department-card,
    .carousel-card {
        margin-bottom: 10px !important;
    }


    /* Titles spacing */
    .princi-title,
    .about_title,
    .department-title,
    .gallery_title,
    .serve_title,
    .award_title,
    .event_title {
        margin-bottom: 10px !important;
    }


    /* Footer */
    .footer-section {
        padding-top: 15px !important;
        padding-bottom: 15px !important;
    }

    .princi-title.mb-3 {
        font-size: 17px;
    }

    .about_title {
        font-size: 19px;
    }








}

/* =====================================
   Common Section Gap Fix
   PC + Laptop + Tablet + Mobile
   ===================================== */

/* All devices */
/* section {
    margin-top: 25px;
    margin-bottom: 25px;
} */


/* Desktop / Laptop */
/* Mobile */
@media (max-width: 767px) {

    section {
        margin-top: 0px !important;
        margin-bottom: 0px !important;
    }

    .container {
        padding-left: 12px;
        padding-right: 12px;
    }

    .py-5 {
        padding-top: 25px !important;
        padding-bottom: 25px !important;
    }

    .py-4 {
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }

    .mt-5 {
        margin-top: 20px !important;
    }

    .mt-4 {
        margin-top: 15px !important;
    }

    .mt-3 {
        margin-top: 10px !important;
    }

}

/* Small Mobile 320px */
@media (max-width: 320px) {


    .py-5 {
        padding-top: 15px !important;
        padding-bottom: 15px !important;
    }

    .py-4 {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }

}

/* ==========================================
   Responsive Section Gap Fix
   576px | 420px | 360px
   ========================================== */


/* Mobile Large - 576px */
@media (max-width: 576px) {

    .py-5 {
        padding-top: 25px !important;
        padding-bottom: 25px !important;
    }

    .py-4 {
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }

    .mt-5 {
        margin-top: 20px !important;
    }

    .mt-4 {
        margin-top: 15px !important;
    }

    .container {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .link {
        padding: 8px 18px;
        font-size: 14px;
        width: auto !important;
    }
}

/* Mobile Medium - 420px */
@media (max-width: 420px) {

    .py-5 {
        padding-top: 20px !important;
        padding-bottom: 20px !important;
    }

    .py-4 {
        padding-top: 15px !important;
        padding-bottom: 15px !important;
    }

    .mt-5 {
        margin-top: 15px !important;
    }

    .mt-4 {
        margin-top: 10px !important;
    }

    .card,
    .carousel-card,
    .zone-card,
    .department-card {
        margin-bottom: 10px !important;
    }
.about-menu .custom_item .custom_title {
	font-size: 16px;
}
}


/* Small Mobile - 360px */
@media (max-width: 360px) {

    .py-5 {
        padding-top: 15px !important;
        padding-bottom: 15px !important;
    }

    .py-4 {
        padding-top: 10px !important;
        padding-bottom: 10px !important;
    }

    .mt-5 {
        margin-top: 10px !important;
    }

    .mt-4 {
        margin-top: 8px !important;
    }

    .container {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

}


/* Extra small - 320px */
@media (max-width: 320px) {

    .about-menu .custom_item .custom_title {
        font-size: 15px;
    }

    .sm-blue li a {
        font-size: 14px;
    }

    .link {
        font-size: 12px;
    }

    .custom-tabs .nav-link {
        font-size: 12px;
    }

    .custom-view-more {
        padding: 10px 20px;
        font-size: 13px;
    }

    .department-card h3 {
        font-size: 21px;
    }

    .department_custom {
        padding: 10px 22px;
        font-size: 12px;
    }

    .social-links.mt-4 {
        margin-bottom: 21px;
    }

    .gallery-btn {
        font-size: 12px;
    }
}

/* Fix Read More Button Size */
.link {
    display: inline-flex !important;
    width: auto !important;
    max-width: fit-content;
    padding: 10px 22px;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}


/* About us */
.about-section {
    background: #f8f9fa;
}

.section-title {
    text-align: center;
}

.about_hist-title {
    font-weight: 700;
    font-weight: 700;
    color: #760110;
    font-family: "merriweatherlight";
    position: relative;
    font-size: 28px;
    font-style: italic;
    text-transform: uppercase;
}

.about_hist-title::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 3px;
    background: #b22234;
    top: 59px;
}

.section-title p {
    color: #777;
}


/* .about-menu {
    display: flex;
    flex-direction: column;
    gap: 12px;
} */

.custom_item {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 9px 20px;
    background: #fff;
    border-radius: 10px;
    text-decoration: none;
    color: #333;
    border-left: 5px solid transparent;
    box-shadow: 0 6px 14px rgba(0, 0, 0, 0.04);
    transition: 0.25s ease;
}

.custom_item:hover {
    transform: translateX(6px);
    border-left-color: #d35400;
    background: #fff8f5;
    color: #000;
}

/* 
.custom_item.active {
    background: #a21728;
    color: #fff;
}

.custom_item.active small {
    color: #f3f3f3;
} */

.custom_item .icon {
    width: 44px;
    height: 44px;
    min-width: 44px;
    border-radius: 50%;
    background: #760110;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 18px;
}

.custom_item .active .icon {
    background: #fff;
    color: #760110;
}

.custom_title {
    margin: 0;
    font-weight: 600;
    font-size: 17px;
    font-family: "roboto_slabregular";
}


/* .about-menu .custom_item {
  display: flex;
    align-items: center;
    gap: 14px;
    padding: 9px 20px;
    background: #fff;
    border-radius: 10px;
    text-decoration: none;
    color: #333;
    border-left: 5px solid transparent;
    box-shadow: 0 6px 14px rgba(0, 0, 0, 0.04);
    transition: 0.25s ease;
} */

/* Icon */
.about-menu .custom_item .icon {
    width: 44px;
    height: 44px;
    min-width: 44px;
    border-radius: 50%;
    background: #a21728;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 18px;
    transition: all 0.3s ease;
}

/* Hover */
.about-menu .custom_item:hover {
    background: #a21728;
    color: #fff;
}

/* Hover icon becomes WHITE with RED icon */
.about-menu .custom_item:hover .icon {
    background: #fff;
    color: #a21728;
}

/* ACTIVE TAB */
.about-menu .custom_item.active {
    background: #a21728;
    color: #fff;
}

/* ACTIVE icon becomes WHITE with RED icon */
.about-menu .custom_item.active .icon {
    background: #fff;
    color: #a21728;
}

/* Optional: keep active title white */
.about-menu .custom_item.active .custom_title {
    color: #fff;
}






/* content card */
.content-card {
    background: #fff;
    padding: 32px 30px;
    border-radius: 16px;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);
    /* border-left: 3px solid #a21728; */
    border-top: 3px solid #a21728;
}
.content-card li{
    color: #1a1a1a;
    font-size: 15px;
}

.content-header {
    display: flex;
    align-items: center;
    gap: 16px;
    border-bottom: 2px solid #eee;
    padding-bottom: 14px;
    margin-bottom: 22px;
}

.content-header i {
    width: 45px;
    height: 45px;
    background: #a21728;
    color: #fff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    flex-shrink: 0;
}

.content-header .hist {
    font-size: 29px;
    font-weight: 600;
    color: #760110;
    font-family: "merriweatherlight";
    font-style: italic;
}

.content-card p {
    text-align: justify;
    line-height: 1.8;
    color: #0f0d0d;
    margin-bottom: 1.2rem;
    font-size: 15px;
    font-family: "roboto_slabregular";
}

.content-card h3 {
    font-size: 21px;
    font-weight: 600;
    color: #760110;
    margin: 1.4rem 0 0.4rem;
    font-family: "merriweatherlight";
    font-style: italic;
}

/* responsive */
@media (max-width: 991px) {
    .about-menu {
        margin-bottom: 30px;
    }
}

@media (max-width: 576px) {
    .content-header {
        flex-wrap: wrap;
    }

    .content-header .hist {
        font-size: 1.25rem;
    }

    .content-card {
        padding: 22px 16px;
    }
}



/* Mission */


.content-box ul {
    padding-left: 4px;
}

.content-box li {
    margin-bottom: 10px;
    line-height: 1.7;
    list-style: none;
    font-family: "roboto_slabregular";
    font-size: 15px;
}

.mision_title {
    font-size: 29px;
    font-weight: 600;
    color: #760110;
    font-family: "Merriweather", serif;
    font-style: italic;
}




/* principal */
@media (max-width:768px) {

    .principal-header {
        text-align: center;
        justify-content: center;
    }

}

/* .principal-card {
    background: #ffffff;
    border-radius: 1.25rem;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);
    transition: all 0.2s;
}

.principal-header {
    border-bottom: 1px solid rgba(0, 0, 0, 0.04);
    padding-bottom: 0.75rem;
}

.profile-img-placeholder {
    width: 72px;
    height: 72px;
    background: linear-gradient(145deg, #e9ecf3, #d7dce7);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    color: #2c3e50;
    font-weight: 500;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.02);
}

.principal-name {
    font-weight: 600;
    color: #0b2a4a;
    letter-spacing: -0.01em;
}

.principal-credentials {
    color: #3e5a76;
    font-weight: 400;
    font-size: 0.95rem;
}

.view-profile-link {
    font-size: 0.9rem;
    font-weight: 500;
    color: #1a5f9c;
    text-decoration: none;
    transition: 0.15s;
}

.view-profile-link:hover {
    color: #0b3a63;
    text-decoration: underline;
} */

hr {
    opacity: 0.2;
    margin: 1.2rem 0;
}

/* responsiveness fine-tune */
@media (max-width: 576px) {
    .profile-img-placeholder {
        width: 56px;
        height: 56px;
        font-size: 1.5rem;
    }

    .principal-name {
        font-size: 1.25rem;
    }
}

.principal-card {
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 10px 35px rgba(0, 0, 0, .08);
    transition: .3s;
}

.principal-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, .12);
}



/* Content */
.principal-img {

    border: 1px solid #ccc;
    border-radius: 8px;
    padding: 8px;
    max-width: 250px;
}

.principal-name {
    font-weight: 800;
    font-family: "merriweatherlight";
    color: #a21728;
    font-family: "roboto_slabregular";
    font-size: 22px;
}

.designation {
    color: #666;
}

.content {

    text-align: justify;
    line-height: 30px;
    color: #444;
}


@media (max-width:991.98px) {

    .about-menu {
        margin-bottom: 25px;
    }

    .content-card {
        padding: 28px;
    }

    .hist {
        font-size: 24px;
    }

    .content-card h3 {
        font-size: 16px;
    }

    .about_hist-title {
        font-size: 28px;
    }

}

/* ==========================
   Mobile
========================== */
@media (max-width:767.98px) {

    .about-section {
        padding-top: 35px !important;
        padding-bottom: 35px !important;
    }

    .about_hist-title {
        font-size: 22px;
        text-align: center;
        border-left: none;
        /* border-bottom: 3px solid #1b4d89; */
        padding-left: 0;
        padding-bottom: 10px;
    }

    .custom_item {
        padding: 15px;
        gap: 12px;
    }

    .custom_item .icon {
        width: 40px;
        height: 40px;
        font-size: 18px;
    }

    .custom_title {
        font-size: 15px;
    }

    .content-card {
        padding: 20px;
    }

    .content-header {
        flex-wrap: wrap;
        justify-content: center;
        text-align: center;
    }

    .hist {
        font-size: 22px;
    }

    .content-card p {
        font-size: 15px;
        line-height: 1.8;
    }
}

/* ==========================
   Small Mobile
========================== */
@media (max-width:575.98px) {
    .princi-title.mb-3 {
        font-size: 20px;
    }

    .notice_title.mb-0 {
        font-size: 21px;
    }

.about_hist-title {
	font-size: 19px;
}

    .hist {
        font-size: 20px;
    }

    .content-card {
        padding: 18px;
    }

    .custom_item {
        padding: 14px;
    }

    .custom_title {
        font-size: 14px;
    }

    .content-card p {
        font-size: 14px;
    }
}


#lightboxCaption { display: none;}





/* Contact Cards */


.info-card {

    background: #fff;
    border-radius: 20px;
    padding: 35px 25px;
    text-align: center;
    height: 100%;

    box-shadow:
        0 10px 30px rgba(46, 80, 132, .12);

    transition: .35s;

}


.info-card:hover {

    transform: translateY(-10px);
    box-shadow:
        0 18px 40px rgba(46, 80, 132, .18);

}

.icon-box {
    width: 75px;
    height: 75px;
    margin: 0 auto 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    /* background: linear-gradient(135deg, #fff, #760110); */
    color: #fffbfb;
    font-size: 32px;
    background: #a21728;
}

.info-card h5 {
    color: #75000f;
    font-weight: 700;
    margin-bottom: 15px;
    font-family: "roboto_slabregular";
    font-size: 22px;
}


.info-card p {
    color: #0f0d0d;
    line-height: 1.8;
    margin: 0;
    font-size: 16px;
}





/* Map */


.map-container {

    background: #fff;
    padding: 15px;
    border-radius: 20px;

    box-shadow:
        0 10px 30px rgba(0, 0, 0, .08);

}


.map-container iframe {

    width: 100%;
    height: 400px;
    border-radius: 15px;
    border: 0;

}




/* Section Heading */
.contact_us-title.mb-4 {
    font-size: 31px;
    font-weight: 800;
    color: #760110;
    border-left: 6px solid #ee8219;
    padding-left: 16px;
    font-style: italic;
    font-family: "merriweatherlight";
}




/* Large Desktop */
@media (min-width:1200px) {

    .info-card {
        padding: 35px;
    }

}


/* Tablet */
@media (max-width:991px) {

    .info-card {
        padding: 25px 20px;
    }

}

@media(max-width:768px) {



    .contact_us-title.mb-4 {
        font-size: 27px;
    }


    .map-container iframe {

        height: 300px;

    }


}

/* Mobile */
@media (max-width:576px) {

    .contact-us {
        padding-top: 30px !important;
        padding-bottom: 30px !important;
    }

    .contact_us-title.mb-4 {
        font-size: 24px;
    }

    .contact_us-title {
        font-size: 22px;
    }


    .info-card {
        text-align: center;
    }


    .icon-box {
        margin-left: auto;
        margin-right: auto;
    }


    .info-card p {
        font-size: 14px;
    }

}



/* notice */

.table thead {
    background: #f6dede;
}

.table thead th {
    text-align: center;
    vertical-align: middle;
    font-weight: 600;
    font-family: "merriweatherlight";
    font-size: 15px;
}

.table tbody td {
    text-align: center;
    vertical-align: middle;
    font-family: "roboto_slabregular";
    font-size: 14px;
}

.table-hover tbody tr:hover {
    background: #fff9ef;
    transition: .3s;
}

@media(max-width:768px) {

    .notice-title {
        font-size: 24px;
    }

    .table {
        min-width: 650px;
    }

}



/* ===== Animations ===== */
@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.fade-up {
    opacity: 0;
    transform: translateY(30px);
    animation: fadeUp 0.6s ease forwards;
}

@keyframes fadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


@media (max-width: 768px) {
    .gallery-page {
        padding: 30px 0;
    }

    .section-title {
        font-size: 1.8rem;
    }

    .gallery-img-wrapper {
        height: 180px;
    }

}

@media (max-width: 576px) {
    .gallery-title {
        font-size: 13px;
        padding: 10px;
    }

    .sidebar-card {
        padding: 15px;
    }
}

/* events */

.award_title {
    font-size: 25px;
    font-weight: 700;
    color: #760110;
    border-left: 6px solid #ee8219;
    padding-left: 16px;
    font-style: italic;
    /* line-height: 45px; */
    margin: 7px;
    font-family: "merriweatherlight";
}

.event_title {
    font-size: 24px;
    font-weight: 700;
    color: #760110;
    border-left: 6px solid #ee8219;
    padding-left: 16px;
    font-style: italic;
    font-family: "merriweatherlight";

    /* line-height: 45px; */
    margin: 7px;
}

.carousel-section {
    margin-bottom: 2rem;
}

.carousel-card {
    background: white;
    border-radius: 0;
    /* no rounded corners on card */
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.04);
    padding: 1rem 1rem 0.5rem 1rem;
    height: 100%;
    transition: box-shadow 0.2s;
    border: 1px solid rgba(0, 0, 0, 0.02);
}

.owl-carousel .item {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
}

.owl-carousel img {
    width: 100%;
    height: 350px;
    object-fit: cover;
    display: block;
    border-radius: 12px;
}

.caption {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    color: #fff;
    padding: 20px;
    background: linear-gradient(to top, rgba(0, 0, 0, .75), transparent);
}

.caption h5 {
    margin-bottom: 5px;
    font-weight: 700;
}

.caption p {
    margin: 0;
}

/* Navigation */

/* .owl-nav button{
    position:absolute;
    top:50%;
    transform:translateY(-50%);
    width:42px;
    height:42px;
    border-radius:50%!important;
    background:rgba(15, 13, 13, 0.95)!important;
    color:#222!important;
    font-size:28px!important;
    line-height:42px!important;
    box-shadow:0 5px 15px rgba(0,0,0,.15);
} */

.owl-prev {
    left: 10px;
}

.owl-next {
    right: 10px;
}

.owl-nav button:hover {
    background: #0d6efd !important;
    color: #fff !important;
}

/* Dots */

.owl-theme .owl-dots .owl-dot span {
    width: 12px;
    height: 12px;
}

.owl-theme .owl-dots .owl-dot.active span {
    background: #0d6efd;
}

@media(max-width:768px) {

    .owl-carousel img {
        height: 230px;
    }

    /* .award_title,
    .event_title {
        font-size: 20px;
    } */

    .caption {
        padding: 12px;
    }

}

/* .owl-nav {
    position: absolute;
    top: -60px;
    right: 0;
} */

.owl-nav button.owl-prev,
.owl-nav button.owl-next {
    width: 40px;
    height: 40px;
    border-radius: 50% !important;
    background: #2e5084 !important;
    color: #fff !important;
    font-size: 18px !important;
    margin-left: 8px;
    transition: .3s;
}

.owl-nav button.owl-prev:hover,
.owl-nav button.owl-next:hover {
    background: #f57c00 !important;
}

/* .owl-nav button span {
    display: none;
} */

/* .owl-nav {
    position: absolute;
    top: -60px;
    right: 0;
} */


/* Important */
.awards-carousel,
.events-carousel {
    position: relative;
}

.awards-carousel .owl-nav,
.events-carousel .owl-nav {
    margin: 0;
}

.awards-carousel .owl-nav .owl-prev,
.awards-carousel .owl-nav .owl-next,
.events-carousel .owl-nav .owl-prev,
.events-carousel .owl-nav .owl-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 42px;
    height: 42px;
    border-radius: 50% !important;
    background: #fff !important;
    color: #1b3f73 !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .25);
    display: flex !important;
    align-items: center;
    justify-content: center;
    z-index: 100;
}

/* Left button */
.awards-carousel .owl-nav .owl-prev,
.events-carousel .owl-nav .owl-prev {
    left: 12px;
}

/* Right button */
.awards-carousel .owl-nav .owl-next,
.events-carousel .owl-nav .owl-next {
    right: 12px;
}

.awards-carousel .owl-nav button:hover,
.events-carousel .owl-nav button:hover {
    background: #0d6efd !important;
    color: #fff !important;
}

.owl-nav button span {
    display: none;
}

.owl-nav button i {
    font-size: 20px;
}



/* Gallery */
.gallery-card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 5px 15px rgba(0, 0, 0, .08);
    transition: .3s;
}

.gallery-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 25px rgba(0, 0, 0, .15);
}

.gallery-card img {
    width: 100%;
    height: 240px;
    object-fit: cover;
}

.gallery-content {
    padding: 18px;
    text-align: center;
}

.gallery-content h5 {
    font-size: 20px;
    font-weight: 600;
    color: #dc3545;
    margin-bottom: 15px;
    font-family: "roboto_slabregular";
}

.gallery-btn {
    display: inline-block;
    background: #042e47;
    color: #fff;
    padding: 10px 22px;
    border-radius: 21px;
    text-decoration: none;
    font-weight: 500;
    transition: .3s;
    font-family: "roboto_slabregular";
    font-size: 14px;
}

.gallery-btn:hover {
    background: #e17c1a;
    color: #fff;
}

.gallery-btn i {
    margin-left: 6px;
}



/* inner */


/* ===== Gallery Section ===== */
.gallery-page {
    padding: 60px 0;
}

.section-title {
    color: #1e293b;
    font-weight: 700;
    font-size: 2.2rem;
    margin-bottom: 5px;
}

.title-underline {
    width: 80px;
    height: 4px;
    background: linear-gradient(90deg, #060097, #c10fff);
    border-radius: 2px;
    margin: 10px auto 30px;
}

/* ===== Sidebar ===== */
.sidebar-card {
    background: white;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.08);
    border: 1px solid #e9ecef;
}

.sidebar-card h5 {
    color: #060097;
    font-weight: 600;
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 2px solid #f0f0f0;
}

.sidebar-menu {
    list-style: none;
    padding: 0;
    margin: 0;
}

.sidebar-menu li {
    margin-bottom: 8px;
}

.sidebar-menu a {
    display: block;
    padding: 10px 15px;
    color: #333;
    text-decoration: none;
    border-radius: 8px;
    transition: all 0.3s ease;
    font-size: 15px;
}

.sidebar-menu a i {
    margin-right: 10px;
    color: #060097;
    transition: all 0.3s ease;
}

.sidebar-menu a:hover {
    background: #f0edff;
    color: #060097;
    padding-left: 20px;
}

.sidebar-menu a:hover i {
    transform: translateX(5px);
}

.sidebar-menu .active a {
    background: #060097;
    color: white;
}

.sidebar-menu .active a i {
    color: white;
}

/* ===== Gallery Grid ===== */
.gallery-card {
    background: white;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 15px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    border: 1px solid #e9ecef;
}

.gallery-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 8px 30px rgba(6, 0, 151, 0.15);
}

.gallery-img-wrapper {
    position: relative;
    overflow: hidden;
    background: #f0f0f0;
    height: 220px;
}

.gallery-img-wrapper img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.gallery-card:hover .gallery-img-wrapper img {
    transform: scale(1.08);
}

/* Overlay on hover */
.gallery-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(6, 0, 151, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: all 0.3s ease;
    cursor: pointer;
}

.gallery-card:hover .gallery-overlay {
    opacity: 1;
}

.gallery-overlay i {
    color: white;
    font-size: 40px;
    transform: scale(0.5);
    transition: transform 0.3s ease;
}

.gallery-card:hover .gallery-overlay i {
    transform: scale(1);
}

/* ===== Gallery Title Below Image ===== */
.gallery-title-wrapper {
    padding: 14px 15px 15px;
    background: white;
    border-top: 1px solid #f0f0f0;
}

.gallery-title {
    font-size: 15px;
    font-weight: 600;
    color: #1e293b;
    margin: 0 0 3px 0;
    text-align: center;
}

.gallery-subtitle {
    font-size: 12px;
    color: #888;
    text-align: center;
    margin: 0;
}

.gallery-title i {
    color: #060097;
    margin-right: 6px;
    font-size: 14px;
}

/* ===== Lightbox Modal ===== */
.lightbox-modal {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.92);
    z-index: 9999;
    padding: 30px;
    animation: fadeIn 0.3s ease;
}

.lightbox-modal.active {
    display: flex;
    align-items: center;
    justify-content: center;
}

.lightbox-content {
    position: relative;
    max-width: 90%;
    max-height: 85vh;
    text-align: center;
}

.lightbox-content img {
    max-width: 100%;
    max-height: 75vh;
    border-radius: 8px;
    box-shadow: 0 10px 50px rgba(0, 0, 0, 0.5);
}

.lightbox-caption {
    color: white;
    margin-top: 15px;
    font-size: 18px;
    font-weight: 500;
}

.lightbox-close {
    position: absolute;
    top: -40px;
    right: -10px;
    color: white;
    font-size: 35px;
    cursor: pointer;
    transition: all 0.3s ease;
    background: none;
    border: none;
}

.lightbox-close:hover {
    transform: rotate(90deg);
    color: #ff6b6b;
}

.lightbox-prev,
.lightbox-next {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(255, 255, 255, 0.15);
    color: white;
    border: none;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    font-size: 24px;
    cursor: pointer;
    transition: all 0.3s ease;
    backdrop-filter: blur(5px);
}

.lightbox-prev {
    left: -70px;
}

.lightbox-next {
    right: -70px;
}

.lightbox-prev:hover,
.lightbox-next:hover {
    background: rgba(255, 255, 255, 0.3);
}

/* ===== Animations ===== */
@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

.fade-up {
    opacity: 0;
    transform: translateY(30px);
    animation: fadeUp 0.6s ease forwards;
}

@keyframes fadeUp {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Stagger animation delay */
.fade-up:nth-child(1) {
    animation-delay: 0.1s;
}

.fade-up:nth-child(2) {
    animation-delay: 0.2s;
}

.fade-up:nth-child(3) {
    animation-delay: 0.3s;
}

.fade-up:nth-child(4) {
    animation-delay: 0.4s;
}

.fade-up:nth-child(5) {
    animation-delay: 0.5s;
}

.fade-up:nth-child(6) {
    animation-delay: 0.6s;
}

.fade-up:nth-child(7) {
    animation-delay: 0.7s;
}

.fade-up:nth-child(8) {
    animation-delay: 0.8s;
}

.fade-up:nth-child(9) {
    animation-delay: 0.9s;
}

.fade-up:nth-child(10) {
    animation-delay: 1.0s;
}

/* ===== Responsive ===== */
@media (max-width: 992px) {
    .lightbox-prev {
        left: 10px;
    }

    .lightbox-next {
        right: 10px;
    }

    .lightbox-prev,
    .lightbox-next {
        width: 40px;
        height: 40px;
        font-size: 18px;
    }

    .gallery-content h5 {
        font-size: 18px;
    }

    /* .notice_title.mb-0 {
        font-size: 23px;
    } */

    /* .about_title {
        font-size: 29px;
    } */
}

@media (max-width: 768px) {

    /* .princi-title.mb-3 {
	font-size: 22px;
} */
    /* .about_title {
	font-size: 27px;
} */

    .department-card h3 {
        font-size: 26px;
    }

    .gallery-page {
        padding: 30px 0;
    }

    .section-title {
        font-size: 1.8rem;
    }

    .gallery-img-wrapper {
        height: 180px;
    }

    .lightbox-modal {
        padding: 15px;
    }

    .lightbox-content img {
        max-height: 60vh;
    }

    .lightbox-close {
        top: -30px;
        right: 0;
        font-size: 28px;
    }

    .gallery-title {
        font-size: 14px;
    }

    .gallery-subtitle {
        font-size: 11px;
    }
}

@media (max-width: 576px) {
    .gallery-img-wrapper {
        height: 200px;
    }

    .gallery-title-wrapper {
        padding: 10px 12px 12px;
    }

    .gallery-title {
        font-size: 13px;
    }

    .sidebar-card {
        padding: 15px;
    }

}




/* inner page lightbox */


/* Gallery Item Styles */
.gallery-item {
    position: relative;
    overflow: hidden;
    border-radius: 0.375rem;
    cursor: pointer;
}

.gallery-img {
    width: 100%;
    height: 250px;
    object-fit: cover;
    transition: transform 0.3s ease;
}

/* Plus Icon Overlay Styling */
.overlay-icon {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 2.5rem;
    opacity: 0;
    transition: opacity 0.3s ease, transform 0.3s ease;
}

/* Hover Effect: Show Plus Icon & Zoom Image slightly */
.gallery-item:hover .gallery-img {
    transform: scale(1.05);
}

.gallery-item:hover .overlay-icon {
    opacity: 1;
}

.overlay-icon i {
    transition: transform 0.3s ease;
}

.gallery-item:hover .overlay-icon i {
    transform: scale(1.2);
}

/* Modal Styling */
.modal-backdrop.show {
    opacity: 0.9;
}

#lightboxImage {
    max-height: 80vh;
    width: 100%;
    object-fit: contain;
}

/* Nav Overlay Buttons */
.custom_nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.5);
    border: none;
    color: #fff;
    font-size: 1.8rem;
    padding: 0.5rem 0.5rem;
    border-radius: 50%;
    cursor: pointer;
    transition: background 0.3s ease, transform 0.2s ease;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
}

.custom_nav:hover {
    background: rgba(0, 0, 0, 0.8);
    transform: translateY(-50%) scale(1.1);
}
.custom_nav:hover i{
   color: #fff;
}

.prev-btn {
    left: 15px;
}

.next-btn {
    right: 15px;
}



/* Department */

/* ----- SECTION WRAPPER (blue border) ----- */
.department-wrapper {
    border: 4px solid #087cff;
    padding: 24px 18px 20px;
    margin: 0 auto;
    max-width: 1160px;
    background: #ffffff;
    border-radius: 6px;
}

/* ----- CARD ----- */
.science_department_card {
    height: 220px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    border-radius: 9px;
    border: 4px solid #ee8219;
    /* background: linear-gradient(135deg, #625a5a 0%, #a21728 100%); */
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    padding: 12px 8px;
    background: #a21728;
}

.science_department_card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(7, 80, 213, 0.25);
    border-color: #f9c400;
}

/* ----- ICON BOX ----- */
.department-icon {
    width: 100px;
    height: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    border-radius: 12px;
    color: #042e47;
    font-size: 48px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
    flex-shrink: 0;
}

.department-icon i {
    line-height: 1;
}

/* ----- DIVIDER (white line) ----- */
.department-divider {
    width: 55%;
    height: 2px;

    background: #ffffff;

    margin: 10px 0 8px;
    flex-shrink: 0;
}

/* ----- TITLE ----- */
.science_title {
    width: 100%;
    text-align: center;
    color: #ffffff;
    font-weight: 700;
    line-height: 1.3;
    padding: 0 4px;
    white-space: nowrap;
    font-family: "roboto_slabregular";
    font-size: 14px;
}


/* Department inner page */

/* =========================
           BANNER
        ========================= */



/* =========================
           MAIN CONTENT
        ========================= */
.subject-section {
    padding: 40px 0 60px;
}




/* =========================
           TEACHER SECTION
        ========================= */
.teachers-title {
    color: var(--primary-color);
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 15px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--primary-color);
}

.teacher-card {
    border: 1px solid #eaeaea;
    border-radius: 10px;
    background: #fff;
    padding: 20px 10px 15px;
    text-align: center;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.teacher-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 15px rgba(0, 0, 0, 0.08);
}

.teacher-image {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border-radius: 50%;
    border: 3px solid var(--bg-light);
    margin-bottom: 12px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.teacher-name {
    color: var(--primary-color);
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    margin-bottom: 5px;
}

.teacher-designation {
    color: #666;
    font-size: 10px;
    margin-bottom: 15px;
    flex-grow: 1;
}

.profile-btn {
    display: inline-block;
    border: 1px solid var(--primary-color);
    color: var(--primary-color);
    background: transparent;
    border-radius: 20px;
    padding: 5px 12px;
    font-size: 10px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s;
}

.profile-btn:hover {
    background: var(--primary-color);
    color: #fff;
}


.department-info {
    list-style: none;
    padding: 0;
    margin: 0;
}

.department-info li {
    padding: 7px 15px 14px 10px;
    margin-bottom: 10px;
    font-family: "merriweatherlight";
    color: #333;
    font-size: 15px;
    line-height: 1.6;
}


.department-info li strong {
    color: #2f3135;
    font-weight: 600;
    font-size: 15px;
}

.department-table-wrapper {
    width: 100%;
    overflow-x: auto;
}




.table {
    width: 100%;
    border-collapse: collapse;
    margin: 20px 0;
}

.table td {
    border: 1px solid #0a0a0a;
    height: 50px;
    padding: 10px;
}

.table td {
    height: 50px;
    vertical-align: middle;
}



/* Style the Tab */
        .tab {
        display: inline-flex;
            border-radius: 50px;
            overflow: hidden;
            background: #fff;
            padding: 4px;
            flex-wrap: wrap;
            justify-content: center;
            gap: 10px;
        }
        .tab button {
            border: none;
            min-width: 160px;
            padding: 14px 24px;
            color: #2e2e2e;
            font-size: 15px;
            font-weight: 600;
            border-radius: 40px !important;
            transition: .3s;
            font-family: "merriweatherlight";
            font-weight: 500;
            font-weight: 600;
            background: #b32d381c;
        }
        .tab button:hover {
            background: #dc3545;
            color: #fff;
        }

        .tab button.active {
            background: #dc3545;
            color: #fff;
        }
        .tab button.active:focus {
            box-shadow: 0 0 0 .25rem rgba(225, 83, 97, .5);
        }
        .tabcontent {
        display: none;
        }


#ast-scroll-top{ display: none !important;}




.pagination-wrapper .page-numbers {
    display: inline-flex;
    gap: 5px;
    list-style: none;
    padding: 0;
}

.pagination-wrapper .page-numbers li a,
.pagination-wrapper .page-numbers li span {
    display: block;
    padding: 8px 14px;
    border: 1px solid #ddd;
    text-decoration: none;
}

.pagination-wrapper .page-numbers .current {
    background: #0d6efd;
    color: #fff;
}



.important_link ul{ 
    margin: 0px 0px 20px 0px;
}



/* Mobile */
@media (max-width: 767px) {
    .department-table {
        min-width: 700px;
    }

    .department-table th,
    .department-table td {
        padding: 12px;
        font-size: 14px;
    }
}

/* Mobile */
@media (max-width: 576px) {
    .department-info li {
        padding: 12px 12px 12px 32px;
        font-size: 14px;
    }

    .department-info li::before {
        left: 10px;
    }
    .custom-tabs .nav-link {
    padding: 12px;
    font-size: 16px;
    }
}




/* =========================
   TEACHER CARD
========================= */

.teacher-card {
    background: #fff;
    border: 1px solid #e5e5e5;
    border-radius: 12px;
    padding: 20px 12px 18px;
    text-align: center;
    min-height: 205px;
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: all 0.3s ease;
}

.teacher-card:hover {
    transform: translateY(-5px);
    border-color: #b51d35;
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.10);
}


/* =========================
   TEACHER IMAGE
========================= */

.teacher-image {
    width: 82px;
    height: 82px;
    object-fit: cover;
    border-radius: 50%;
    padding: 4px;
    background: #fff;
    border: 1px solid #eeeeee;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    margin-bottom: 10px;
    transition: all 0.3s ease;
}

.teacher-card:hover .teacher-image {
    transform: scale(1.05);
    border-color: #b51d35;
}


/* =========================
   TEACHER NAME
========================= */

.teacher-name {
    width: 100%;
    font-family: "merriweatherlight";
    font-size: 14px;
    font-weight: 700;
    line-height: 1.35;
    color: #8f1028;
    margin-bottom: 5px;
    min-height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 3px;
}

/* =========================
   DESIGNATION
========================= */

.teacher-designation {
    /* font-family: Arial, sans-serif; */
    font-size: 15px;
    line-height: 1.4;
    color: #666;
    min-height: 30px;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    margin-bottom: 10px;
    font-family: "roboto_slabregular";
}

/* =========================
   VIEW PROFILE BUTTON
========================= */

.profile-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    min-width: 110px;
    padding: 7px 14px;
    border-radius: 30px;
    background: #a9152d;
    color: #fff !important;
    font-family: Arial, sans-serif;
    font-size: 12px;
    font-weight: 600;
    text-decoration: none !important;
    border: 1px solid #a9152d;
    transition: all 0.3s ease;
    font-family: "roboto_slabregular";
}

.profile-btn:hover {
    background: #fff;
    color: #a9152d !important;
    border-color: #a9152d;
    box-shadow: 0 4px 12px rgba(169, 21, 45, 0.18);
}




/* Home page 4 button */

.quick-links-section {
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 20px 0px 20px 0px;
}

.custom-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 20px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.custom-add {
    display: inline-block;
    padding: 10px 15px;
    background: #a21728;
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-size: 16px;
    font-weight: 600;
    border-radius: 50px;
    transition: all 0.3s ease;
    border: 2px solid white;
    box-shadow: 2px 7px 8px #12131340;
    font-family: "roboto_slabregular";
    width: 236px;
}

.custom-add:hover {
    background: #042e47;
    color: #fff;
    transform: translateY(-2px);
}

@media (max-width: 992px) {

    .button-wrapper {
        gap: 20px;
    }
 .custom-add {
	width: 192px;
}
}







/* 
@media (max-width: 767px) {
    .button-wrapper {
        gap: 15px;
    }

.custom-add {
	width: 226px;
}
}

@media (max-width: 992px) {

    .button-wrapper {
        gap: 20px;
    }

 .custom-add {
	width: 192px;
}
}


@media (max-width: 575px) {

    .button-wrapper {
        gap: 20px;
    }

   .custom-add {
	width: 240px;
}
}


@media (max-width: 420px) {

    .button-wrapper {
        gap: 20px;
    }

  .custom-add {
	width: 175px;
}
}

@media (max-width: 360px) {

    .button-wrapper {
        gap: 20px;
    }

.custom-add {
	width: 156px;
}
}


@media (max-width: 320px) {

    .button-wrapper {
        gap: 20px;
    }

   .custom-add {
	width: 137px;
}
} */