:root {
	--font-primary: "lato", sans-serif;
	--font-secondary: "Roboto", sans-serif;

	--color-primary: #0A2472;
	--color-secondary: #ffc800;
	--color-heading: #D52720;
	--color-white: #ffffff;
	--color-default: #000000;

	scroll-behavior: smooth;
}

body {
	font-family: var(--font-secondary) !important;
	font-size: 16px;
	line-height: 1.6;
	color: var(--color-default);
	overflow-x: hidden;
}

p,
a,
li,
span,
td,
th,
button {
	font-size: 16px;
	line-height: 1.6;
	color: var(--color-default);
}

table,
th,
td {
	border: 1px solid #ddd;
}

.shadow {
	box-shadow:
		rgba(60, 64, 67, 0.3) 0 1px 2px,
		rgba(60, 64, 67, 0.15) 0 2px 6px;
}

/*======================== Header Section ======================== */
.header-main {
	position: relative;
	background: var(--color-white);
	background-image: radial-gradient(#d9d9d9 1px, transparent 1px);
	background-size: 20px 20px;
}

.header-main::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 4px;
	background: var(--color-primary);
}

.top-info-bar {
	background-color: var(--color-primary);
	height: 45px;
	color: var(--color-white);
	clip-path: polygon(0 0, 100% 0, 100% 100%, 3% 100%);
	margin-left: 52%;
	font-size: 14px;
	box-sizing: border-box;
}

.contact-links {
	gap: 10px;
	padding: 0 40px;
}

.contact-links .contact-text {
	color: var(--color-white);
	font-family: var(--font-primary);
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	text-transform: capitalize;
}

.institute-name {
	color: var(--color-primary);
	font-family: "Roboto Condensed";
	font-size: 16px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	letter-spacing: 0.48px;
	text-align: center;
}

.main-title {
	color: var(--color-primary);
	font-family: "Roboto Condensed";
	font-size: 30px;
	font-style: normal;
	font-weight: 900;
	line-height: 23px;
	text-align: center;
}

.address-text,
.approval-text {
	color: var(--color-primary);
	text-align: center;
	font-family: "Roboto Condensed";
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: 20px;
	letter-spacing: 0.42px;
}

.left-logo {
	display: flex;
	justify-content: flex-end;
}

img.img-fluid.spiritual-img {
	width: 130px;
	height: 136px;
}

img.img-fluid.logo-img {
	width: 113px;
	height: 110px;
}

/* ===============================
   MAIN NAVBAR
================================= */

#main_navbar {
	background-color: var(--color-primary);
	height: 46px;
	display: flex;
	align-items: center;
	padding: 0 220px;
}

#main_navbar .nav-link {
	color: var(--color-white);
	font-family: var(--font-secondary);
	font-weight: 500;
	letter-spacing: 0.48px;
	transition: all 0.3s ease;
	padding: 6px 14px;
}

#main_navbar .nav-link:hover {
	background-color: var(--color-secondary);
	color: var(--color-white);
	border-radius: 30px;
}

#menuItem_1 {
	background: var(--color-secondary);
	border-radius: 30px;
	padding: 6px 18px !important;
}


#main_navbar .navbar-nav>.nav-item {
	position: relative;
	padding-right: 18px;
}

#main_navbar .navbar-nav>.nav-item::after {
	content: "";
	position: absolute;
	right: 6px;
	top: 50%;
	transform: translateY(-50%);
	width: 0.5px;
	height: 16px;
	background: rgba(255, 255, 255, 0.6);
}

#main_navbar .navbar-nav>.nav-item:last-child::after {
	display: none;
}

#main_navbar .dropdown-toggle {
	position: relative;
	padding-right: 28px;
}

#main_navbar .dropdown-toggle::after {
	content: "";
	position: absolute;
	right: 6px;
	top: 50%;
	transform: translateY(-50%) rotate(0deg);
	width: 16px;
	height: 16px;
	background: url("../img/arrow-down.svg") no-repeat center;
	background-size: contain;
	border: none;
	transition: transform 0.35s ease;
}

#main_navbar .dropdown:hover .dropdown-toggle::after {
	transform: translateY(-50%) rotate(180deg);
}

.dropdown-menu .nav-link {
	padding: 10px 15px;
	color: var(--color-default) !important;
	border-radius: 0 !important;
}

/* =========================================
   Home Hero Video 
========================================= */

.home-hero-video {
	position: relative;
	width: 100%;
	overflow: hidden;
}

.video-container {
	position: relative;
	width: 100%;
	height: 90vh;
	min-height: 400px;
	max-height: 716px;
}

.hero-video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

/* =====================================================
   IMPORTANT NEWS SECTION 
===================================================== */

.important-news-section {
	background: #EEF8FF;
	box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
}

.important-news-container {
	display: flex;
	align-items: center;
	gap: 20px;

}

.marquee-news-heading {
	position: relative;
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 15px 32px;
	background: var(--color-secondary);
	color: var(--color-primary);
	font-family: var(--font-secondary);
	font-size: 18px;
	font-weight: 600;
	white-space: nowrap;
	margin-bottom: 0;
	font-style: normal;
	transition: all 0.3s ease;
}

.marquee-news-heading::after {
	content: "";
	position: absolute;
	top: 50%;
	right: -10px;
	transform: translateY(-50%);
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 11px solid var(--color-secondary);
	transition: all 0.3s ease;
}

.marquee-news-heading:hover {
	background: var(--color-primary);
	color: var(--color-white);
}

.marquee-news-heading:hover::after {
	border-left-color: var(--color-primary);
}


.hor-marquee {
	width: 100%;
	overflow: hidden;
}

.news-ticker {
	display: inline-flex;
	align-items: center;
	gap: 50px;
	white-space: nowrap;
	animation: tickerMoveLeft 30s linear infinite;
}

.hor-marquee:hover .news-ticker {
	animation-play-state: paused;
}

@keyframes tickerMoveLeft {
	0% {
		transform: translateX(100%);
	}

	100% {
		transform: translateX(-100%);
	}
}

.slider-news {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 6px 10px;
	border-radius: 6px;
	transition: all 0.3s ease;
}

.slider-news::before {
	content: "";
	width: 14px;
	height: 14px;
	background: var(--color-primary);
	border-radius: 50%;
	transition: all 0.3s ease;
}

.slider-news::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 0%;
	height: 2px;
	background: var(--color-heading);
	transition: width 0.3s ease;
}

.slider-news:hover {
	background: rgba(10, 36, 114, 0.05);
	transform: translateY(-2px);
}

.slider-news:hover::before {
	background: var(--color-heading);
	transform: scale(1.2);
	box-shadow: 0 0 0 4px rgba(213, 39, 32, 0.2);
}

.slider-news:hover::after {
	width: 100%;
}


.important-news-section .news-link {
	color: var(--color-default);
	font-family: var(--font-secondary);
	font-size: 16px;
	font-weight: 400;
	line-height: 35px;
	text-decoration: none;
	position: relative;
	transition: color 0.3s ease;
}

.slider-news:hover .news-link {
	color: var(--color-primary);
}


.new-badge {
	margin-left: 6px;
	font-size: 12px;
	font-weight: 600;
	background: var(--color-heading);
	color: var(--color-white);
	padding: 3px 6px;
	border-radius: 4px;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.slider-news:hover .new-badge {
	transform: scale(1.05);
	box-shadow: 0 4px 10px rgba(213, 39, 32, 0.3);
}

/* ================= NEWS AND EVENTS ================= */
.news-and-events .section-heading {
	color: var(--color-default);
	font-family: var(--font-secondary);
	font-size: 34px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	margin-bottom: 30px;
}

.news-circular {
	padding: 20px;
	border: 1px solid rgba(172, 169, 158, 0.40);
	background: #EEF8FF;
	box-shadow: 3px 4px 30px 0 rgba(186, 151, 104, 0.20);
	max-height: 420px;
	overflow-y: auto;
}

.news-list {
	list-style: none;
	padding: 0;
}

.news-item {
	position: relative;
	display: flex;
	align-items: center;
	gap: 15px;
	padding: 15px;
	overflow: hidden;
	transition: transform 0.35s ease,
		box-shadow 0.35s ease;
	border-bottom: 1px solid #e1e1e1;
	cursor: pointer;
}

.news-item:last-child {
	border-bottom: none;
}

.news-date-box {
	position: relative;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 49px;
	text-align: center;
	background: var(--color-primary);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.news-date-box::before {
	content: "";
	position: absolute;
	inset: -2px;
	border-radius: inherit;
	z-index: -1;

	background: linear-gradient(90deg,
			var(--color-primary),
			#1236a5,
			var(--color-primary));

	background-size: 300% 300%;
	animation: borderMove 4s linear infinite;
}

@keyframes borderMove {
	0% {
		background-position: 0% 50%;
	}

	100% {
		background-position: 300% 50%;
	}
}

.news-date-box::after {
	content: "";
	position: absolute;
	top: 0;
	left: -75%;
	width: 50%;
	height: 100%;
	background: linear-gradient(120deg,
			rgba(255, 255, 255, 0.2),
			rgba(255, 255, 255, 0.6),
			rgba(255, 255, 255, 0.2));

	transform: skewX(-20deg);
}

.news-item:hover .news-date-box::after {
	animation: shineMove 0.8s ease forwards;
}

@keyframes shineMove {
	100% {
		left: 125%;
	}
}

.news-date-box .day {
	display: flex;
	flex-direction: column;
	font-family: "Jost", sans-serif;
	color: var(--color-white);
	font-weight: 600;
	text-align: center;
}

.news-item:hover .news-date-box {
	transform: translateY(-4px) scale(1.07);
	box-shadow:
		0 0 15px rgba(10, 36, 114, 0.6),
		0 0 25px rgba(10, 36, 114, 0.4);
}

.news-content {
	flex: 1;
}

.news-item:hover {
	transform: translateY(-8px);
	box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);
}

.news-item::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	height: 0%;
	width: 4px;

	background: linear-gradient(180deg,
			var(--color-primary),
			var(--color-secondary),
			var(--color-primary));

	border-radius: 4px;
	transition: height 0.4s ease;
}

.news-item:hover::before {
	height: 100%;
}


.news-and-events .news-link {
	position: relative;
	padding: 4px 8px;
	border-radius: 4px;
	color: #454545;
	font-family: var(--font-secondary);
	text-decoration: none;
	letter-spacing: 0.3px;
	transition: color 0.3s ease,
		letter-spacing 0.3s ease,
		transform 0.3s ease,
		background 0.3s ease;
	line-height: normal;
	font-style: normal;

}

.news-and-events .news-link::after {
	content: "";
	position: absolute;
	left: 8px;
	bottom: -4px;
	width: 0%;
	height: 2px;
	background: var(--color-primary);
	transition: width 0.3s ease;
}

.news-item:hover .news-link {
	background: rgba(0, 0, 0, 0.04);
	color: var(--color-primary);
	letter-spacing: 1px;
	transform: translateX(4px);
}

.news-item:hover .news-link::after {
	width: calc(100% - 16px);
}

.news-image {
	overflow: hidden;
	border-radius: 10px;
}

.news-image img {
	transition: transform 0.4s ease;
	width: 20px;
	height: 21px;
}

.news-item:hover .news-image img {
	transform: scale(1.05);
}

.media-card {
	position: relative;
	overflow: hidden;
	border: 1px solid rgba(172, 169, 158, 0.40);
	background: var(--color-white);
	box-shadow: 3px 4px 30px 0 rgba(186, 151, 104, 0.20);
	cursor: pointer;
}

.media-img {
	width: 100%;
	height: auto;
	display: block;
	transition: transform 0.5s ease;
	padding: 20px;
}

.media-card:hover .media-img {
	transform: scale(1.08);
}

.media-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to top,
			rgba(10, 36, 114, 0.85),
			rgba(10, 36, 114, 0.2));
	display: flex;
	align-items: flex-end;
	padding: 20px;
	opacity: 0;
	transition: opacity 0.4s ease;
}

.media-card:hover .media-overlay {
	opacity: 1;
}

.media-title {
	font-family: var(--font-secondary);
	font-size: 18px;
	margin-bottom: 10px;
	color: var(--color-white);
}

.media-btn {
	display: inline-block;
	background: var(--color-secondary);
	color: var(--color-white);
	padding: 6px 14px;
	font-size: 13px;
	border-radius: 20px;
	font-weight: 600;
	transition: all 0.3s ease;
}

.media-btn:hover {
	background: var(--color-white);
	color: var(--color-primary);
}



.view-all-news {
	text-align: right;
	margin-top: 25px;
}

.view-all-link {
	position: relative;
	font-family: var(--font-secondary);
	font-weight: 500;
	text-decoration: none;
	color: var(--color-primary);
	letter-spacing: 0.5px;

	transition:
		color 0.3s ease,
		letter-spacing 0.3s ease;
}

.view-all-link span {
	position: relative;
	z-index: 1;
	color: var(--color-primary);
}

.view-all-link::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -4px;
	width: 0%;
	height: 2px;
	background: var(--color-primary);
	transition: width 0.3s ease;
}

.view-all-link:hover {
	letter-spacing: 1px;
	color: var(--color-secondary);
}

.view-all-link:hover::after {
	width: 100%;
}


/* ==============================
   About Section
================================= */

.about-section {
	position: relative;
	min-height: 730px;
	padding: 30px 20px;
	display: flex;
	justify-content: center;
	background-color: #f5f5f5;
	background-image: url('../img/about-bg.png');
	background-repeat: no-repeat;
	background-size: cover;
}

.about-section::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 50px;

	background: linear-gradient(0deg,
			rgba(10, 36, 114, 0.95) 39.7%,
			rgba(10, 36, 114, 0.00) 86.44%);

	z-index: 1;
}

.about-title {
	color: var(--color-primary);
	font-family: var(--font-secondary);
	font-size: 38px;
	line-height: 44px;
	margin-bottom: 20px;
	text-align: center;
	font-style: normal;
}

.section-description {
	line-height: 28px;
	text-align: center;
	color: #454545;
	font-size: 18px;
	font-style: normal;
}

.img-principal {
	width: 100%;
}

/* ==============================
   Colleges Section
================================= */

.colleges-overview {
	background-color: var(--color-primary);
	padding: 80px 0;
}

.colleges-overview .section-title {
	color: var(--color-white);
	font-family: var(--font-secondary);
	font-size: 38px;
	margin-bottom: 12px;
	text-align: center;
	font-style: normal;
	line-height: 40px;
}

.colleges-intro__title {
	position: relative;
	font-family: var(--font-secondary);
	color: var(--color-white);
	text-align: center;
	font-style: normal;
	font-weight: 600;
	line-height: 40px;
}

.colleges-intro__title span {
	color: var(--color-secondary);
	display: block;
	font-size: 28px;
}

.colleges-intro__title::after {
	content: "";
	display: block;
	width: 190px;
	height: 15px;
	margin: 18px auto 0;
	background-image: url("../img/yellow-underline.svg");
	background-repeat: no-repeat;
	background-size: contain;
}

.colleges-intro__description {
	color: var(--color-white);
	font-size: 18px;
	font-style: normal;
	line-height: 30px;
}

.college-card {
	position: relative;
	width: 100%;
	max-width: 340px;
	padding: 0px 28px 28px;
	border-radius: 5px;
	background: #EEF8FF;
	box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
	display: flex;
	flex-direction: column;
	align-items: center;
	/* justify-content: space-between; */
	min-height: 237px;
	margin-bottom: 60px;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.college-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
}

.college-card::after {
	content: "";
	position: absolute;
	top: -35px;
	left: 50%;
	transform: translateX(-50%);
	width: 120px;
	height: 100px;
	background-color: #EEF8FF;
	border-radius: 50%;
	z-index: 1;
}

.college-card>a:first-child {
	position: relative;
	display: flex;
	align-items: center;
	top: -8px;
	z-index: 2;
}

.college-card>a:first-child img {
	object-fit: contain;
}

.college-card>a:first-child::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -10px;
	transform: translateX(-50%);
	width: 98px;
	height: 0.6px;
	background: var(--color-heading);
	border-radius: 2px;
}

.college-card__title a {
	color: var(--color-primary);
	font-family: var(--font-secondary);
	font-size: 18px;
	font-weight: 600;
	line-height: 24px;
	font-style: normal;
	display: block;
	margin: 12px 0 8px 0;
}

.college-card__description {
	color: #454545;
	text-align: center;
	font-size: 12px;
	line-height: 16px;
	margin-bottom: 20px;
}

.junior-college {
	margin: 20px;
}

a.btn.btn-primary.college-card__cta {
	display: inline-flex;
	padding: 12px 43px;
	justify-content: center;
	align-items: center;
	border-radius: 24px;
	background: var(--color-heading);
	color: var(--color-white);
	font-family: var(--font-secondary);
	font-size: 18px;
	font-weight: 600;
	line-height: 24px;
	border: none;
	cursor: pointer;
	transition: background 0.3s ease;
	position: absolute;
	bottom: -20px;
	left: 50%;
	transform: translateX(-50%);
}

.college-card__cta:hover {
	background: #b41b1a;
}

/* =========================
   Admission Guidance Section
========================= */

.admission-guidance-section {
	padding-top: 100px;
	position: relative;
}

.admission-guidance-card {
	background-color: var(--color-secondary);
	border-radius: 10px;
	position: relative;
	padding: 60px 40px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
	max-width: 1097px;
	height: auto;
	margin: 0 auto;
	transition: transform 0.35s ease, box-shadow 0.35s ease;
	z-index: 1;
}

.admission-divider {
	width: 592px;
	height: 0.7px;
	background: linear-gradient(90deg,
			var(--color-default) 0%,
			rgba(153, 153, 153, 0.50) 100%);
	margin-bottom: 20px;
}

.admission-title {
	color: var(--color-primary);
	font-family: var(--font-secondary);
	font-size: 28px;
	font-style: normal;
	line-height: normal;
	margin-bottom: 20px;
	transition: color 0.3s ease;
}

.admission-description {
	color: #454545;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin-bottom: 30px;
}

.admission-btn {
	display: inline-flex;
	padding: 11px 16px 10px 16px;
	justify-content: center;
	align-items: center;
	border-radius: 5px;
	background: var(--color-primary);
	color: var(--color-white);
	font-family: Roboto, sans-serif;
	font-weight: 600;
	font-style: normal;
	line-height: normal;
	transition: background 0.3s ease, box-shadow 0.3s ease;
}

.admission-btn:hover {
	background: var(--color-heading);
	color: var(--color-white);
}

.admission-btn-wrapper {
	position: relative;
	display: inline-block;
	padding-bottom: 38px;
}

.admission-btn-wrapper::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 592px;
	height: 0.7px;
	background: linear-gradient(90deg, #000 0%, rgba(153, 153, 153, 0.50) 100%);
}



.admission-blue-arch {
	position: absolute;
	bottom: 0;
	width: 100%;
	height: 85%;
	background-color: var(--color-primary);
	border-radius: 200px 200px 0 0;
	z-index: 1;
	transition: box-shadow 0.4s ease;
}

.admission-image-wrapper {
	position: absolute;
	bottom: 0;
	right: 40px;
	width: 400px;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: flex-end;
	z-index: 2;
}

.admission-student-img {
	width: 100%;
	height: 467px;
	object-fit: cover;
	z-index: 3;
	margin-right: 100px;

	transition: transform 0.4s ease;
}

.admission-guidance-card:hover {
	transform: translateY(-8px);
	box-shadow: 0 25px 60px rgba(0, 0, 0, 0.12);
}

.admission-guidance-card:hover .admission-title {
	color: #061a5c;
}

.admission-guidance-card:hover .admission-student-img {
	transform: scale(1.03);
}

.admission-guidance-card:hover .admission-blue-arch {
	box-shadow: 0 0 40px rgba(10, 36, 114, 0.25);
}

.admission-guidance-card:hover .admission-btn {
	box-shadow: 0 6px 15px rgba(10, 36, 114, 0.25);
}

/* =========================
   FAQ Section
========================= */

.faq-section {
	background: #EEF8FF;
	padding-top: 180px;
	padding-bottom: 80px;
	margin-top: -100px;
	position: relative;
}

.faq-title {
	color: var(--color-primary);
	font-family: var(--font-secondary);
	font-size: 38px;
	font-style: normal;
	line-height: 40px;
}

.faq-subtitle {
	color: rgba(69, 69, 69, 0.90);
	font-size: 18px;
	font-style: normal;
	line-height: normal;
	margin-bottom: 60px;
}

.custom-accordion .accordion-item {
	border: none;
	margin-bottom: 28px;
	overflow: hidden;
	background: var(--color-white);
	border-radius: 5px;
	background: var(--color-white);
	box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
	position: relative;
	transition: all 0.3s ease;
}

.custom-accordion .accordion-item:hover {
	transform: translateY(-4px);
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
}

.custom-accordion .accordion-button:not(.collapsed) {
	background: var(--color-white);
	box-shadow: none;
	padding-bottom: 10px;
}

.custom-accordion .accordion-button:not(.collapsed)::after {
	transform: rotate(180deg);
}

.custom-accordion .accordion-button {
	padding: 24px 20px;
	background: var(--color-white);
	color: var(--color-primary);
	font-family: var(--font-secondary);
	border-radius: 12px;
	position: relative;
	transition: all 0.3s ease;
	font-size: 20px;
	font-style: normal;
	line-height: normal;
	position: relative;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.custom-accordion .accordion-button::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 5px;
	background: linear-gradient(180deg,
			var(--color-primary),
			var(--color-secondary));
	transform: scaleY(0);
	transform-origin: top;
	transition: transform 0.4s ease;
}

.custom-accordion .accordion-button:not(.collapsed)::before {
	transform: scaleY(1);
}

.accordion-button::after {
	background: url("../img/arrow-down.png") no-repeat center;
	background-size: contain;
	width: 25px;
	height: 25px;
	transition: transform 0.3s ease;
}

.accordion-button:not(.collapsed)::after {
	transform: rotate(180deg);
	background: url("../img/arrow-down.png") no-repeat center;
}

.custom-accordion .accordion-body {
	padding: 10px 20px 35px;
	color: #454545;
	font-size: 17.5px;
	font-style: normal;
	line-height: 27px;
}

.accordion-button:focus {
	box-shadow: none;
}

/* ===============================
   Recruiters Section
================================= */
.recruiters-section {
	position: relative;
	background: url("../img/recruiters-bg.jpg") center center / cover no-repeat;
	padding: 80px 0;
	overflow: hidden;
}

.recruiters-section::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(255, 196, 0, 0.88) 53.51%, rgba(255, 196, 0, 0.88) 69.36%);
	z-index: 1;
}

.recruiters-section .container {
	position: relative;
	z-index: 2;
}

.recruiters-title {
	color: var(--color-primary);
	font-family: var(--font-secondary);
	font-size: 38px;
	font-style: normal;
	line-height: normal;
}

.recruiters-carousel .item {
	transition: transform 0.3s ease;
	padding: 20px;
}


.recruiters-carousel .item img {
	transition: all 0.4s ease;
	width: 170px;
	height: 89px;
	border: 1px solid #000;
}

.recruiters-carousel .item:hover img {
	filter: grayscale(0%);
	opacity: 1;
	transform: scale(1.05);
}

.recruiters-carousel .item:hover {
	transform: translateY(-4px);
}

.owl-carousel .owl-nav.disabled {
	display: block !important;
}

.recruiters-carousel .owl-nav {
	position: absolute;
	top: 50%;
	width: 100%;
	transform: translateY(-50%);
}

.recruiters-carousel .owl-nav button:hover {
	transform: scale(1.1);
}

.recruiters-carousel .owl-nav .owl-prev {
	left: -25px;
	background: url("../img/arrow-left.svg") center no-repeat;
	background-size: 47px;
}

.recruiters-carousel .owl-nav .owl-next {
	right: -25px;
	background: url("../img/arrow-right.svg") center no-repeat;
	background-size: 47px;
}

.recruiters-carousel .owl-nav .owl-prev,
.recruiters-carousel .owl-nav .owl-next {
	color: transparent;
}

/* ===============================
   Testimonial Section
================================= */
.alumni-title {
	color: var(--color-primary);
	font-family: Roboto;
	font-size: 38px;
	font-style: normal;
	line-height: 40px;
}

.testimonial-card {
	border-radius: 4px;
	background: #EEF8FF;
	padding: 30px;
	margin-top: 60px;
	position: relative;
	box-shadow: 101px 111px 42px 0 rgba(0, 0, 0, 0.00), 65px 71px 38px 0 rgba(0, 0, 0, 0.01), 36px 40px 32px 0 rgba(0, 0, 0, 0.05), 16px 18px 24px 0 rgba(0, 0, 0, 0.09), 4px 4px 13px 0 rgba(0, 0, 0, 0.10);
	min-height: 254px;
	width: 572px;
	margin-bottom: 51px;
}

.testimonial-header {
	display: flex;
	align-items: flex-end;
	margin-bottom: 15px;
}

.testimonial-img-box {
	margin-top: -85px;
	margin-right: 20px;
	margin-left: -30px;
}

.testimonial-img-box img {
	width: 140px !important;
	height: 140px;
	border-radius: 8px;
	object-fit: cover;
}

.testimonial-designation {
	color: var(--color-default);
	font-size: 14px;
	font-style: normal;
	line-height: 110%;
	margin-bottom: 10px;
}

.testimonial-info h5 {
	color: #00478F;
	font-family: var(--font-secondary);
	font-size: 24px;
	font-style: normal;
	line-height: 110%;
}

.testimonial-college {
	color: #7B7B7B;
	font-size: 12px;
	font-style: normal;
	line-height: 110%;
}

.testimonial-body p {
	color: #454545;
	font-size: 18px;
	font-style: normal;
	line-height: 28px;
}

.alumni-section .owl-nav {
	position: absolute;
	bottom: 40px;
	right: 100px;
	display: flex;
	gap: 15px;
	z-index: 10;
}

.alumni-section .owl-nav .owl-prev,
.alumni-section .owl-nav .owl-next {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: #FFC400;
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
	transition: transform 0.2s ease;
}


.alumni-section .owl-nav .owl-prev {
	left: -60px;
}


.owl-nav .owl-prev:hover,
.owl-nav .owl-next:hover {
	transform: scale(1.1);
}


.alumni-section .owl-nav>div {
font-size: 0;
}


/* ================= Footer ================= */

.footer-section {
	background: var(--color-primary);
}

.footer-brand {
	background: var(--color-secondary);
	clip-path: polygon(0 0, 100% 0, 100% 85%, 50% 100%, 0 85%);
	filter: drop-shadow(0 1px 8px rgba(0, 0, 0, 0.25));
	margin: 0;
	padding: 0;
}

.footer-brand-inner {
	padding: 33px 19px;
}

.brand-header {
	display: flex;
	gap: 15px;
	align-items: center;
	margin-bottom: 30px;
}

.brand-header img {
	width: 70px;
}

.brand-name {
	font-size: 23px;
	font-weight: 600;
	line-height: 26px;
	color: var(--color-primary);
}


.contact-list {
	list-style: none;
	padding: 0;
	margin: 0;
	padding-left: 15px;
}

.contact-list li {
	display: flex;
	gap: 12px;
	margin-bottom: 20px;
}

.contact-list li span,
.contact-list li a {
	font-size: 15px;
	line-height: 20px;
	color: var(--color-primary);
	font-style: normal;
	letter-spacing: 0.45px;
}

.contact-list li a {
	position: relative;
	letter-spacing: 0.3px;
	transition: letter-spacing 0.3s ease;
	line-height: normal;
}

.contact-list li a::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -3px;
	width: 100%;
	height: 2px;
	background-color: var(--color-primary);
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 0.3s ease;
}

.contact-list li a:hover {
	letter-spacing: 1px;
}

.contact-list li a:hover::after {
	transform: scaleX(1);
}

.footer-section .imp-links a {
	position: relative;
	display: inline-block;
	padding-left: 17px;
	color: var(--color-white);
	text-decoration: none;
	letter-spacing: 0.3px;
	transition:
		color 0.3s ease,
		letter-spacing 0.3s ease;
	font-weight: 400;
	line-height: 187.594%;
}

.footer-section .imp-links a::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 16px;
	height: 16px;
	transform: translateY(-50%);
	-webkit-mask: url('../img/footer-right-arrow.svg') no-repeat center;
	mask: url('../img/footer-right-arrow.svg') no-repeat center;
	-webkit-mask-size: contain;
	mask-size: contain;
	background-color: var(--color-white);
	transition:
		background-color 0.3s ease,
		transform 0.3s ease;
}

.footer-section .imp-links a::after {
	content: "";
	position: absolute;
	left: 24px;
	bottom: 0;
	width: calc(100% - 24px);
	height: 2px;
	background-color: var(--color-secondary);

	transform: scaleX(0);
	transform-origin: center;
	transition: transform 0.3s ease;
}

.footer-section .imp-links a:hover {
	color: var(--color-secondary);
	letter-spacing: 1px;
}

.footer-section .imp-links a:hover::before {
	background-color: var(--color-secondary);
	transform: translateY(-50%) translateX(-4px);
}

.footer-section .imp-links a:hover::after {
	transform: scaleX(1);
}

.social-wrapper {
	display: flex;
	gap: 8px;
	align-items: center;
	margin-left: 50px;
}

.social-link {
	transition: transform 0.3s ease;
}

.social-link:hover {
	transform: translateY(-3px);
}

.footer-heading {
	color: var(--color-white);
	font-family: var(--font-secondary) !important;
	font-size: 20px;
	font-weight: 600;
	line-height: normal;
}

.footer-nav-heading {
	line-height: 22px;
}

.footer-nav-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.footer-nav-list li {
	margin-bottom: 10px;
}

.footer-nav-list a {
	position: relative;
	display: inline-block;
	padding-left: 17px;
	color: var(--color-white);
	text-decoration: none;
	letter-spacing: 0.3px;
	transition:
		color 0.3s ease,
		letter-spacing 0.3s ease;
}

.footer-nav-list a::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 16px;
	height: 16px;
	transform: translateY(-50%);
	-webkit-mask: url('../img/footer-right-arrow.svg') no-repeat center;
	mask: url('../img/footer-right-arrow.svg') no-repeat center;
	-webkit-mask-size: contain;
	mask-size: contain;
	background-color: var(--color-white);
	transition:
		background-color 0.3s ease,
		transform 0.3s ease;
}

.footer-nav-list a::after {
	content: "";
	position: absolute;
	left: 24px;
	bottom: 0;
	width: calc(100% - 24px);
	height: 2px;
	background-color: var(--color-secondary);
	transform: scaleX(0);
	transform-origin: center;
	transition: transform 0.3s ease;
}

.footer-nav-list a:hover {
	color: var(--color-secondary);
	letter-spacing: 1px;
}

.footer-nav-list a:hover::before {
	background-color: var(--color-secondary);
	transform: translateY(-50%) translateX(-4px);
}

.footer-nav-list a:hover::after {
	transform: scaleX(1);
}

.footer-nav-col {
	display: flex;
	justify-content: center;
}

.map-wrapper iframe {
	border-radius: 15px;
	border: 1px solid #FF6425;
	width: 252px;
	height: 206px;
}

.footer-bottom {
	border-top: 1px solid var(--color-secondary);
}

.copy-right,
.copyright-link {
	color: var(--color-white);
	font-size: 18px;
	font-weight: 600;
	line-height: normal;
}

.copyright-link {
	position: relative;
	display: inline-block;
	color: var(--color-secondary);
	text-decoration: underline;
	text-underline-offset: 4px;
	text-decoration-thickness: 2px;
	transition: color 0.3s ease, letter-spacing 0.3s ease;
}

.copyright-link::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -4px;
	width: 0;
	height: 2px;
	background-color: currentColor;
	transform: translateX(-50%);
	transition: width 0.3s ease;
}

.copyright-link:hover {
	color: var(--color-white);
	letter-spacing: 1px;
	text-decoration: none;
}

.copyright-link:hover::after {
	width: 100%;
}

.myCustomMenuFooter .col-lg-6 {
	padding: 0;
}
.myCustomMenuFooter{
	padding-left: 50px;
}

.imp-links {
	padding-left: 50px;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.footer-section .imp-links a.btn {
	padding-top: 0;
}

@media (max-width: 991px) {

	#main_navbar .navbar-nav>.nav-item::after {
		content: "";
	}

	#main_navbar .nav-link {
		padding: 10px 15px;
	}

}

/* =========================================
   Large Screens (1440px+)
========================================= */
@media (min-width: 1440px) {
	.video-container {
		height: 95vh;
	}
}

/* =========================================
   Laptops & Tablets
========================================= */
@media (max-width: 1200px) {
	.video-container {
		height: 75vh;
	}
}

@media (max-width: 992px) {
	.video-container {
		height: 65vh;
	}
}

/* =========================================
   Mobile Devices
========================================= */
@media (max-width: 768px) {
	.video-container {
		height: 55vh;
		min-height: 300px;
	}
}

@media (max-width: 576px) {
	.video-container {
		height: 45vh;
		min-height: 250px;
	}
}

/* =========================================
   Reduce Motion Accessibility
========================================= */
@media (prefers-reduced-motion: reduce) {
	.hero-video {
		display: none;
	}

	.video-container {
		background: url('/assets/images/video-fallback.jpg') center/cover no-repeat;
	}
}


@media (max-width: 768px) {

	.important-news-container {
		flex-direction: column;
		align-items: flex-start;
		gap: 12px;
	}

	.marquee-news-heading::after {
		display: none;
	}

	.news-ticker {
		gap: 30px;
		animation-duration: 40s;
	}

	.news-link {
		font-size: 14px;
	}

	.slider-news::before {
		width: 8px;
		height: 8px;
	}
}

.student-testimonials {
    padding: 60px 0;
}
.testimonial-card {
    background: #ffffff;
    border-radius: 16px;
    padding: 30px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    transition: 0.3s ease-in-out;
    margin-top: 0;
}

.testimonial-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);
}

.testimonial-rating {
    font-size: 18px;
    color: #f4b400;
    font-weight: 600;
    margin-bottom: 15px;
}

.review-count {
    font-size: 14px;
    color: #777;
    margin-left: 6px;
}

.testimonial-description {
    font-size: 15px;
    line-height: 1.7;
    color: #555;
    margin-bottom: 25px;
}

.testimonial-author {
    display: flex;
    align-items: center;
    gap: 15px;
}

.author-image {
    width: 60px !important;
    height: 60px !important;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid #0A2472; 
}

.author-name {
    font-size: 16px;
    font-weight: 600;
    margin: 0;
    color: #222;
	font-family: var(--font-secondary);
}

.author-designation {
    font-size: 14px;
    color: #777;
    margin: 2px 0 0 0;
}

.owl-theme .owl-dots {
    margin-top: 30px;
    text-align: center;
}

.owl-theme .owl-dots .owl-dot span {
    width: 12px;
    height: 12px;
    background: #ddd;
    border-radius: 50%;
    transition: 0.3s;
}

.owl-theme .owl-dots .owl-dot.active span {
    background: #0A2472; 
    width: 25px;
    border-radius: 10px;
}

.owl-nav button {
    background: #0A2472 !important;
    color: #fff !important;
    border-radius: 50% !important;
    width: 40px;
    height: 40px;
    font-size: 18px !important;
    transition: 0.3s;
}

.owl-nav button:hover {
    background: #000 !important;
}
/* ===============================
   YOUTUBE BACKGROUND VIDEO
================================ */

.video-container {
    position: relative;
    width: 100%;
    height: 100vh; /* Full screen height */
    overflow: hidden;
}

/* Make iframe behave like background */
.video-container iframe {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 177.77vh;   /* 16:9 ratio */
    height: 100vh;
    transform: translate(-50%, -50%);
    pointer-events: none; /* Disable click */
}

/* For wider screens */
@media (min-aspect-ratio: 16/9) {
    .video-container iframe {
        width: 100%;
        height: 56.25vw; /* 16:9 ratio */
    }
}

/* Optional overlay (dark effect) */
.video-container::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.4); /* Dark overlay */
}


.custom-list li::marker {
	content: "✔  ";
	color: #198754;
	/* Bootstrap green */
	font-size: 18px;
}


/* Director Desk Section */
.director-card {
	border: none;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
	border-radius: 14px;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	background-color: #ffffff;
}

.director-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 14px 32px rgba(0, 0, 0, 0.12);
}

/* Image */
.director-img {
	width: 160px;
	height: 160px;
	object-fit: cover;
	border-radius: 50%;
	margin: 24px auto 10px;
	display: block;
	border: 4px solid #f1f1f1;
}

/* Text */
.director-card .card-title {
	font-size: 1.1rem;
	margin-bottom: 6px;
}

.director-card .card-text {
	font-size: 0.95rem;
}

.hostel-section {
	background-color: #f9fafb;
}

/* Carousel images */
.hostel-img {
	height: 420px;
	object-fit: cover;
	border-radius: 12px;
}

.facility-img {
	width: 100%;
	height: auto;
	/* 🔥 MOST IMPORTANT */
	max-height: 500px;
	/* optional, controls size */
	object-fit: contain;
	/* 🔥 shows FULL image */
	border-radius: 12px;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
}

.research-section {
	background-color: #f9fafb;
	padding-top: 20px;
	padding-bottom: 20px;
}

/* Remove extra spacing from rows inside section */
.research-section .row {
	margin-left: 0;
	margin-right: 0;
}

/* Image wrapper */
.research-image-box {
	padding: 0;
	/* FIX: remove extra padding */
	margin: 0;
	text-align: center;
}

/* Research image */
.research-img {
	width: 100%;
	max-width: 260px;
	/* Controlled width */
	height: 320px;
	/* Fixed height */
	object-fit: cover;
	/* No distortion */
	border-radius: 14px;
	display: block;
	margin: 0 auto;
	/* Center image */
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.12);
}

/* Name under image */
.research-name,
.research-image-box p {
	margin-top: 6px;
	/* FIX: redce gap */
	margin-bottom: 0;
	/* FIX: remove bottom space */
	font-size: 0.95rem;
	font-weight: 600;
	line-height: 1.3;
}

/* Paragraph spacing inside section */
.research-section p {
	margin-bottom: 12px;
	line-height: 1.7;
	color: #333;
}

/* Headings spacing */
.research-section h4,
.research-section h5 {
	margin-bottom: 10px;
}

@keyframes fadeInUp {
	0% {
		opacity: 0;
		transform: translateY(50px);
	}

	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

.recruiter-img {
	transition: transform 0.5s ease, box-shadow 0.5s ease, background 0.5s ease;
	border-radius: 12px;
	padding: 15px;
	background-color: var(--color-primary);
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
	filter: brightness(1.1);
	transform: translateY(50px);
	opacity: 0;
	animation: fadeInUp 1s forwards;
}

.recruiter-img:hover {
	transform: translateY(-5px) scale(1.05);
	box-shadow: 0 10px 30px rgba(255, 196, 0, 0.6);
	background-color: var(--color-heading);
	filter: brightness(1.2);
}

.recruiter-img:nth-child(1) {
	animation-delay: 0.2s;
}

.recruiter-img:nth-child(2) {
	animation-delay: 0.4s;
}

.recruiter-img:nth-child(3) {
	animation-delay: 0.6s;
}

.recruiter-img:nth-child(4) {
	animation-delay: 0.8s;
}

.page-section-title {
	font-weight: 700;
	color: #0A2472;
	margin-bottom: 15px;
	position: relative;
}

.Introduction-section .page-section-title::after {
	content: "";
	display: block;
	width: 60px;
	height: 3px;
	background-color: var(--color-secondary);
	margin: 10px auto 0 auto;
	border-radius: 2px;
}

.image-hover-caption {
	position: relative;
	display: inline-block;
	overflow: hidden;
	border-radius: 15px;
}

.image-hover-caption img {
	display: block;
	width: 100%;
	height: auto;
	transition: transform 0.4s ease;
}

.Introduction-section .page-section-image {
	border-radius: 15px;
	border: 3px solid var(--color-secondary);
	box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
	transition: transform 0.5s ease, border-color 0.5s ease;
}

.image-hover-caption figcaption {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 10px;
	background: rgba(10, 36, 114, 0.8);
	color: #fff;
	font-weight: 500;
	text-align: center;
	opacity: 0;
	transform: translateY(100%);
	transition: all 0.4s ease;
	border-radius: 0 0 15px 15px;
}

.image-hover-caption:hover figcaption {
	opacity: 1;
	transform: translateY(0);
}

.page-section-text {
	line-height: 1.7;
	padding-bottom: 16px;
}

.page-section-text .highlight,
.page-section-list li span.highlight {
	font-weight: 700;
	color: var(--color-primary);
	position: relative;
}

.page-section-subtitle {
	font-family: var(--font-secondary);
	background: linear-gradient(90deg, var(--color-primary), var(--color-heading));
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	position: relative;
	margin-bottom: 25px;
	line-height: 1.1;
}

.page-section-card {
	background: var(--color-white);
	border-radius: 24px;
	padding: 1rem 1rem;
	box-shadow: 0 16px 28px -8px rgba(10, 36, 114, 0.08);
	border: 1px solid rgba(10, 36, 114, 0.12);
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.page-section-card:hover {
	transform: translateY(-8px);
	box-shadow: 0 20px 40px rgba(10, 36, 114, 0.15);
}

.card-header {
	background: transparent !important;
	border: none;
	padding: 0;
}

.page-section-card-header {
	display: flex;
	align-items: center;
	gap: 1rem;
	border-bottom: 3px solid var(--color-secondary);
	padding-bottom: 0.8rem;
}

.card-icon-img {
	width: 65px;
	height: 65px;
	object-fit: contain;
	background: var(--color-primary);
	padding: 0.8rem;
	border-radius: 16px;
	box-shadow: 0 6px 0 var(--color-heading);
	transition: 0.3s ease;
}

.page-section-card:hover .card-icon-img {
	transform: scale(1.1) rotate(5deg);
}

.page-section-card-body {
	top: 0;
	background: none;
}

.table th,
table th {
	background: unset;
	padding: 15px;
	color: #fff;
	letter-spacing: 0.5px;
}

.pages-section-table thead {
	background: linear-gradient(135deg, var(--color-primary), var(--color-heading));
	border: none;
}

.pages-section-table {

	overflow: hidden;
	border-radius: 12px;
}

.page-section .table-responsive {
	background: rgba(255, 255, 255, 0.8);
	backdrop-filter: blur(15px);
	padding: 20px;
	border-radius: 20px;
	box-shadow: 0 25px 50px rgba(10, 36, 114, 0.08);
}

.pages-section-table tbody tr {
	transition: all 0.3s ease;
}

.pages-section-table tbody td:first-child {
	font-weight: 600;
	color: var(--color-primary);
}

.pages-section-table tbody td {
	padding: 14px;
	border-bottom: 1px solid #e5e9ff;
}

.pages-section-table tbody tr:nth-child(even) {
	background: #f4f7ff;
}

.pages-section-table tbody tr:hover {
	background: #e6ecff;
	transform: scale(1.01);
}

.principal-message-section .page-section-media {
	background: #fff;
	padding: 30px;
	border-radius: 25px;
	box-shadow: 0 30px 60px rgba(0, 0, 0, 0.08);
	text-align: center;
	transition: 0.3s ease;
}

.principal-message-section .media-image {
	width: 200px;
	height: 200px;
	object-fit: cover;
	border-radius: 50%;
	border: 6px solid var(--color-secondary);
	box-shadow: 0 15px 30px rgba(0, 0, 0, 0.15);
}

.page-faculty-name {
	margin-top: 20px;
	font-size: 20px;
	font-weight: 700;
	color: var(--color-primary);
}

.page-faculty-designation {
	color: var(--color-heading);
	font-weight: 600;
	text-align: center;
	padding-bottom: 16px;
}

.page-faculty-rating {
	color: var(--color-secondary);
	font-size: 18px;
	letter-spacing: 3px;
	text-align: center;
	padding-bottom: 16px;
}

.department-article {
	background: #fff;
	padding: 20px;
	border-radius: 25px;
	box-shadow: 0 25px 50px rgba(0, 0, 0, 0.06);
	position: relative;
}

.principal-message-section .department-article::before {
	content: "“";
	font-size: 80px;
	color: var(--color-secondary);
	position: absolute;
	top: 30px;
	left: 7px;
	opacity: 0.2;
	font-family: serif;
}

.principal-message-section .page-section-text {
	padding-left: 35px;
	position: relative;
}

.principal-message-section .page-section-text::before {
	content: "";
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: var(--color-heading);
	position: absolute;
	left: 0;
	top: 8px;
	box-shadow: 0 0 0 5px rgba(213, 39, 32, 0.15);
}

.thank-you-heading::before {
	display: none;
}

.thank-you-heading {
	font-weight: 700;
	font-size: 18px;
	color: var(--color-primary);
	padding-left: 0;
}

.principal-message-section .page-section-media:hover {
	transform: translateY(-10px);
}

.principal-message-section {
	position: relative;
	overflow: hidden;
}

.principal-message-section::after {
	content: "";
	position: absolute;
	width: 350px;
	height: 350px;
	background: var(--color-secondary);
	opacity: 0.07;
	border-radius: 50%;
	bottom: -120px;
	left: -120px;
}

.page-section-block,
.department-block {
	margin-bottom: 40px;
	padding-bottom: 30px;
	border-bottom: 1px solid #e5e9ff;
}

.page-section-block:last-child,
.department-block:last-child {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}

.page-section-list::before {
	content: "";
	position: absolute;
	left: 8px;
	top: 0;
	width: 3px;
	height: 100%;
	background: linear-gradient(var(--color-primary), var(--color-heading));
}

.page-section-list {
	list-style: none;
	padding-left: 30px;
	margin: 0;
	position: relative;
}

.page-section-list li {
	position: relative;
	padding: 15px 0 15px 25px;
	line-height: 1.8;
	transition: 0.3s ease;
}

.page-section-list li::before {
	content: "";
	position: absolute;
	left: -3px;
	top: 22px;
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: var(--color-secondary);
	border: 3px solid #fff;
	box-shadow: 0 0 0 3px rgba(255, 196, 0, 0.25);
}

.page-section-list li:hover {
	transform: translateX(6px);
	color: var(--color-primary);
}

.vission-mission-section .page-section-article {
	background: #fff;
	padding: 25px;
	border-radius: 20px;
	box-shadow: 0 30px 60px rgba(0, 0, 0, 0.06);
	position: relative;
}

#mission-heading-title {
	letter-spacing: 1px;
	padding-left: 20px;
	margin-bottom: 25px;
}

#mission-heading-title::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 6px;
	height: 24px;
	background: linear-gradient(var(--color-heading), var(--color-primary));
	border-radius: 4px;
}

.page-section-list li:hover {
	transform: translateX(8px);
	color: var(--color-primary);
}

.page-section-gallery-card {
	border-radius: 16px;
	overflow: hidden;
	position: relative;
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.05);
	transition: 0.4s ease;
}

.page-section-gallery-wrapper {
	position: relative;
	overflow: hidden;
}

.page-section-gallery-image {
	transition: 0.6s ease;
	filter: grayscale(40%);
}

.page-section-gallery-hover {
	position: absolute;
	bottom: 0;
	width: 100%;
	padding: 20px;
	background: linear-gradient(transparent, rgba(10, 36, 114, 0.92));
	color: #fff;
	font-weight: 600;
	text-align: center;
	letter-spacing: 0.6px;
}

.department-article .table-responsive {
	padding: 0;
}

.department-list .list-group-item {
	background-color: unset;
}

.vtabs .tabsName-holder {
	box-shadow: inset -11px 0px 8px -11px rgba(112, 108, 112, 1) !important;
	background: #fff;
	padding: 20px;
}

.vtabs .nav-tabs .nav-link.active {
	background: linear-gradient(135deg, var(--color-primary), var(--color-heading));
	color: #fff;
	box-shadow: 0 12px 30px rgba(0, 0, 0, 0.2);
}

.vtabs .nav-tabs .nav-link {
	border: 1px solid #06406570;
	position: relative;
	background: #fff;
	font-weight: 500;
	padding: 14px 20px;
	margin-bottom: 12px;
	border-radius: 12px;
	transition: all 0.4s ease;
	display: flex;
	align-items: center;
	gap: 12px;
	box-shadow: 0 6px 15px rgba(0, 0, 0, 0.05);
	color: var(--color-primary);
}

.vtabs .nav-tabs .nav-link::before {
	content: '';
	width: 14px;
	height: 14px;
	border-radius: 50%;
	background: var(--color-secondary);
	flex-shrink: 0;
	transition: all 0.3s ease;
}

.vtabs .nav-tabs .nav-link.active::before {
	background: #fff;
	transform: scale(1.4);
	box-shadow: 0 0 10px rgba(255, 196, 0, 0.8);
}

.vtabs .nav-tabs .nav-link:hover {
	transform: translateX(5px) scale(1.02);
	background-color: #f0f5ff !important;
	box-shadow: 0 12px 25px rgba(0, 0, 0, 0.12);
}

.vtabs .nav-tabs .nav-link:hover::before {
	animation: pulse 1.2s infinite;
}

.left-tabs.nav-tabs {
	border-right: none;
}

@keyframes pulse {
	0% {
		transform: scale(1);
		opacity: 0.9;
	}

	50% {
		transform: scale(1.3);
		opacity: 0.6;
	}

	100% {
		transform: scale(1);
		opacity: 0.9;
	}
}

.admissions-section .page-section-gallery-card {
	width: 500px;
	margin: 0 auto;
}

.admissions-section .page-section-gallery-wrapper {
	width: 500px;

}

li:hover .highlight {
	color: #0A2472;
}

.principal-message-section .department-article {
	padding: 40px;
}

.page-section-header {
	position: relative;
}

.page-section-header::before {
	content: "";
	position: absolute;
	width: 400px;
	height: 400px;
	background: radial-gradient(circle, var(--color-secondary)20%, transparent 70%);
	opacity: 0.08;
	top: -100px;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 50%;
	animation: floatBg 6s ease-in-out infinite;
}

@keyframes floatBg {

	0%,
	100% {
		transform: translateX(-50%) translateY(0px);
	}

	50% {
		transform: translateX(-50%) translateY(20px);
	}
}


.page-section-title {
	font-weight: 900;
	text-transform: uppercase;
	letter-spacing: 3px;
	background:
		linear-gradient(270deg, var(--color-primary), var(--color-heading), var(--color-secondary), var(--color-primary));
	background-size: 600% 600%;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	animation: gradientMove 6s ease infinite, glowPulse 3s ease-in-out infinite;
	position: relative;
	display: inline-block;
}

@keyframes gradientMove {
	0% {
		background-position: 0% 50%;
	}

	50% {
		background-position: 100% 50%;
	}

	100% {
		background-position: 0% 50%;
	}
}

@keyframes glowPulse {

	0%,
	100% {
		filter: drop-shadow(0 0 5px rgba(255, 196, 0, 0.3));
	}

	50% {
		filter: drop-shadow(0 0 20px rgba(255, 196, 0, 0.6));
	}
}

.page-section-title::after {
	content: "";
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: -15px;
	width: 0%;
	height: 4px;
	background: linear-gradient(90deg, var(--color-heading), var(--color-secondary));
	border-radius: 2px;
	animation: underlineGrow 1.5s ease forwards;
	animation-delay: 0.5s;
}

@keyframes underlineGrow {
	from {
		width: 0%;
	}

	to {
		width: 80%;
	}
}

.page-section-title:hover {
	transform: scale(1.05);
	transition: 0.4s ease;
}

.editorial-wrapper {
	border-left: 5px solid var(--color-primary);
	padding-left: 25px;
	margin-bottom: 30px;
}

.editorial-subtitle {
	font-size: 14px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 2px;
	color: var(--color-heading);
	margin-bottom: 12px;
}

.editorial-heading {
	color: var(--color-primary);
}

.editorial-divider {
	width: 70px;
	height: 3px;
	background: var(--color-secondary);
	margin-top: 18px;
}



.page-section-gallery-card {
	position: relative;
	overflow: hidden;
	border-radius: 18px;
	box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
	transition: all 0.4s ease;
	background: #fff;
}

.page-section-gallery-card img {
	width: 100%;
	height: 260px;
	object-fit: cover;
	transition: transform 0.6s ease;
}

/* Gradient Overlay */
.gallery-overlay {
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(10, 36, 114, 0.85), rgba(213, 39, 32, 0.5));
	opacity: 0;
	transition: all 0.4s ease;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	text-align: center;
	color: #fff;
	padding: 20px;
}

.gallery-overlay i {
	font-size: 30px;
	margin-bottom: 15px;
	color: var(--color-secondary);
}

.gallery-title {
	font-size: 18px;
	font-weight: 600;
	letter-spacing: 1px;
}

.gallery-subtext {
	font-size: 13px;
	opacity: 0.85;
	margin-top: 8px;
}

/* Hover Effects */
.page-section-gallery-card:hover img {
	transform: scale(1.1);
}

.page-section-gallery-card:hover .gallery-overlay {
	opacity: 1;
}

.page-section-gallery-card:hover {
	transform: translateY(-8px);
	box-shadow: 0 20px 40px rgba(0, 0, 0, 0.12);
}

.page-section-gallery-card::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 4px;
	background: linear-gradient(90deg, var(--color-heading), var(--color-secondary));
}

.placement-page-header {
	position: relative;
}

.placement-page-header::before {
	content: "";
	position: absolute;
	width: 320px;
	height: 320px;
	background: radial-gradient(circle, var(--color-secondary)15%, transparent 70%);
	opacity: 0.05;
	top: -80px;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 50%;
}


.placement-title {
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 2px;
	background: linear-gradient(90deg, var(--color-primary), var(--color-heading));
	background-size: 200% auto;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	animation: gradientMove 8s ease infinite;
	position: relative;
	display: inline-block;
}

@keyframes gradientMove {
	0% {
		background-position: 0% center;
	}

	100% {
		background-position: 200% center;
	}
}

.placement-title::after {
	content: "";
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: -12px;
	width: 60px;
	height: 3px;
	background: var(--color-secondary);
	border-radius: 2px;
	opacity: 0.9;
	transition: 0.4s ease;
}

.placement-title:hover {
	letter-spacing: 3px;
}
/* Section spacing */
.owl-slider {
    /* padding: 60px 0; */
    /* background: #f8f9fa; */
}
.owl-nav{
	display: none;
}
/* Card design */
.alumni-con {
    background: #ffffff;
    padding: 35px;
    border-radius: 12px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    height: 100%;
    position: relative;
}

.alumni-con:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);
}

/* Testimonial text */
.alumni-con .card-text {
    font-size: 16px;
    line-height: 1.7;
    color: #555;
    margin-bottom: 25px;
    position: relative;
}

/* Quote icon */
.alumni-con .card-text::before {
    content: "“";
    font-size: 50px;
    color: #ff7202; /* your theme color */
    position: absolute;
    top: -25px;
    left: -10px;
    opacity: 0.2;
}

/* Profile image */
.almni-i img {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid #ff7202;
}

/* Name */
.al-name h5 {
    font-weight: 600;
    margin-bottom: 3px;
    color: #222;
}

/* Designation */
.al-name p {
    font-size: 14px;
    color: #777;
}

/* Owl navigation */
.owl-nav {
    margin-top: 25px;
    text-align: center;
}

.owl-nav button {
    background: #4cbf5e !important;
    color: #fff !important;
    border-radius: 50% !important;
    width: 40px;
    height: 40px;
    margin: 0 5px;
    font-size: 18px !important;
    transition: 0.3s;
}

.owl-nav button:hover {
    background: #000 !important;
}