html {
	scroll-behavior: smooth;
}

body {
	overflow-x: hidden;
}

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

:root {
	--primaryClr: #00683F;
	--secondaryClr: #1aa6c9;
	--whiteClr: #ffffff;
	--blackClr: #000000;
	--textClr: #002530;
}

body {
	overflow-x: hidden;
	font-family: "Inter", sans-serif;
	line-height: 1.5;
	letter-spacing: -1px;
	color: var(--blackClr);
}

button,
input,
textarea,
select {
	font: inherit;
}

img {
	max-width: 100%;
	display: block;
}

a {
	text-decoration: none;
}

.container {
	max-width: 1800px;
	width: 95%;
	margin: 0 auto;
}

.btn {
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease;
	will-change: transform;
}

.btnText {
	background: var(--primaryClr);
	color: var(--whiteClr);
	padding: 15px 30px;
	border-radius: 50px;
	font-weight: 500;
	font-size: 20px;
	transition: all 0.3s ease;

}

.btnIcon {
	width: 58px;
	height: 58px;
	border-radius: 50%;
	border: 1px solid var(--primaryClr);
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--whiteClr);
	transition: all 0.3s ease;
}

.btnIcon img {
	width: 30px;
	transition: transform 0.3s ease, filter 0.3s ease;

}

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

.btn:hover .btnText {
	background: #015231;
}

.btn:hover .btnIcon {
	transform: translateX(6px);
	background: var(--primaryClr);
}

.btn:hover .btnIcon img {
	transform: rotate(45deg);
	filter: brightness(0) invert(1);
}


/* ===================== HEADER ===================================*/

.mainHeader {
	position: absolute;
	top: 20px;
	width: 100%;
	z-index: 100;
}

.headerContainer {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: #FFFFFF33;
	backdrop-filter: blur(12px);
	border-radius: 60px;
	padding: 10px 20px;
	border: 1px solid #ffffff;
}

.headerLogo {
	height: 49px;
}

.headerCta {
	display: flex;
	align-items: center;
}

.headerCta {
	display: flex;
	align-items: center;
	transition: all 0.3s ease;
	will-change: transform;
}

.headerCtaText {
	background: var(--primaryClr);
	color: var(--whiteClr);
	padding: 15px 30px;
	border-radius: 50px;
	font-weight: 500;
	font-size: 20px;
	transition: all 0.3s ease;
}

.headerCtaIcon {
	width: 58px;
	height: 58px;
	border-radius: 50%;
	border: 1px solid var(--primaryClr);
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--whiteClr);
	transition: all 0.3s ease;
}

.headerCtaIcon img {
	width: 30px;
	transition: transform 0.3s ease, filter 0.3s ease;
}


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

.headerCta:hover .headerCtaText {
	background: #015231;
}

.headerCta:hover .headerCtaIcon {
	transform: translateX(6px);
	background: var(--primaryClr);
}

.headerCta:hover .headerCtaIcon img {
	transform: rotate(45deg);
	filter: brightness(0) invert(1);
}


.heroSection {
	position: relative;
	width: 100%;
	height: 800px;
	padding: 175px 0 40px 0;
	background: url(../images/hero-banner.webp) no-repeat;
	background-size: cover;
	overflow: hidden;
	display: flex;
	align-items: center;
	max-width: 1920px;
	margin: 0 auto;
}


.heroContent {
	position: relative;
	padding: 60px;
	width: 1194px;
	color: var(--whiteClr);
	z-index: 2;
	background: url(../images/hero-left-bg.webp) no-repeat;
	background-size: 100% 100%;
	height: 585px;
	border-radius: 0;
}

.heroInner {
	width: 520px;
}



.heroTitle {
	font-size: 40px;
	font-weight: 600;
	line-height: 1.25;
	margin-bottom: 20px;
}

.heroDesc {
	font-size: 20px;
	line-height: 1.35;
	margin-bottom: 30px;
	font-weight: 500;
}

.heroSub {
	font-size: 28px;
	font-weight: 500;
	line-height: 1.35;
	font-style: italic;
	margin-bottom: 15px;
}

/* .heroCourse {
	position: relative;
	display: inline-block;
	padding: 10px 30px 10px 0;
	font-size: 36px;
	font-weight: 700;
	line-height: 1.35;
	color: var(--whiteClr);
	margin-bottom: 25px;
	z-index: 1;
}

.heroCourse::before {
	content: "";
	position: absolute;
	top: 0;
	left: -60px;
	height: 100%;
	width: 400px;
	background: var(--primaryClr);
	border-radius: 0 15px 15px 0;

	z-index: -1;
} */

.heroActions {
	display: flex;
	align-items: center;
}




/* ================= HERO COURSES ================= */

.heroCourses {
  margin-top: 10px;
}

.heroCourseItem {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  margin-bottom: 18px;
}

.heroCourseIcon {
  width: 42px;
  height: 42px;
  border-radius: 10px;
  background: var(--primaryClr);

  display: flex;
  align-items: center;
  justify-content: center;

  flex-shrink: 0;
}

.heroCourseIcon img {
  width: 22px;
  height: 22px;
}

.heroCourseText {
  font-size: 28px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--whiteClr);
}

.heroCourseContent {
  display: flex;
  flex-direction: column;
}

.heroCourseList {
  margin-top: 8px;
  padding-left: 18px;
}

.heroCourseList li {
  font-size: 18px;
  line-height: 1.4;
  font-weight: 500;
  margin-bottom: 5px;
  color: var(--whiteClr);
}

/* ================= HERO CONTENT ================= */


.studentsPic {
	position: absolute;
	bottom: 40px;
	width: fit-content;
	z-index: 2;
	pointer-events: none;
	right: 35%;
}

.studentsPic img {
	width: auto;
	height: 560px;
	display: block;
}

/* Form */
.form {
	width: 100%;
	position: absolute;
	right: 75px;
	min-height: 450px;
	border-radius: 20px;
	max-width: 500px;
	top: 150px;
	text-align: center;
	padding: 20px;
	backdrop-filter: blur(12px);
	background: rgba(194, 255, 230, 0.2);

	z-index: 9999;
}

/* ================= PATHWAY SECTION ================= */

.pathwaySection {
	padding: 40px 0;
}

.pathwayWrap {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 20px;
}

.pathwayContent {
	flex: 0 0 40%;
}

.pathwayTitle {
	font-size: 48px;
	font-weight: 600;
	line-height: 1.25;
	color: var(--primaryClr);
	margin-bottom: 20px;
}

.pathwayDesc {
	font-size: 20px;
	line-height: 1.35;
	color: var(--textClr);
	font-weight: 500;
	letter-spacing: -0.9px;
}

.pathwayCard {
	flex: 0 0 58%;
	background: linear-gradient(90deg, #11694B 0%, #1F9C3B 100%);
	border-radius: 22px;
	padding: 30px 40px;
	color: var(--whiteClr);
}

.pathwayCardTitle {
	font-size: 36px;
	font-weight: 600;
	margin-bottom: 30px;
	color: #AAFFC0;
}

.pathwayCardWrap {
	display: flex;
	position: relative;
	gap: 80px;
}

.pathwayCardWrap::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 1px;
	background: rgba(255, 255, 255, 0.4);
}

.pathwayItem {
	flex: 1;
}

.pathwayItem h4 {
	font-size: 22px;
	font-weight: 600;
	line-height: 1.25;
	margin-bottom: 12px;
}

.pathwayItem p {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: -0.7px;
}

.pathwayItem:first-child,
.pathwayItem:last-child {
	border: none;
	padding: 0;
}


/* ================= Dual Degree SECTION ================= */

.dualDegreeSection {
	padding: 40px 0;
}

.dualDegreeContainer {
	max-width: 1500px;
	margin: 0 auto;
	width: 95%;
}

.dualDegreeTitle {
	text-align: center;
	font-size: 48px;
	font-weight: 600;
	color: var(--primaryClr);
	margin-bottom: 30px;
}

.dualDegreeWrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 20px;
}

.dualDegreeItem {
	display: flex;
	align-items: center;
	width: 50%;
	position: relative;
}

.dualLogo {
	width: 283px;
	height: 282px;
	border-radius: 50%;
	background: #EDFFF5;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	z-index: 2;
	box-shadow: 0px 0px 10px 0px #0000001F;

}

.dualLogo img {
	height: 180px;
	object-fit: contain;
}

.dualCard {
	background: #fff;
	border-radius: 16px;
	padding: 17px 17px 17px 100px;
	margin-left: -80px;
	box-shadow: 0px 0px 16.6px 0px #00000026;
	width: 100%;
}

.dualCard h4 {
	font-size: 24px;
	font-weight: 600;
	color: var(--primaryClr);
}

.dualCard p {
	font-size: 18px;
	line-height: 1.5;
	color: #002530;
}





/* ================= INNOVATION SECTION ================= */

.innovationSection {
	padding: 50px 0;
	text-align: center;
	position: relative;
	max-width: 1920px;
	margin: 0 auto;
}

/* .innovationSection::before {
	content: "";
	position: absolute;
	top: -430px;
	left: -70px;
	width: 1086px;
	height: 987px;

	background: url('../images/innovation-bg.webp') no-repeat center;
	background-size: cover;

	z-index: -1;
} */

.innovationHeader {
	max-width: 1190px;
	margin: 0 auto 40px;
}

.innovationTitle {
	font-size: 48px;
	font-weight: 600;
	line-height: 1.25;
	color: var(--primaryClr);
	margin-bottom: 15px;
}

.innovationSub {
	font-size: 18px;
	color: var(--textClr);
	font-weight: 500;
	line-height: 1.35;
	max-width: 900px;
	margin: 0 auto;
}

.innovationWrap {
	display: grid;
	grid-template-columns: 1fr 430px 1fr;
	align-items: center;
	gap: 30px;
	max-width: 1560px;
	margin: 0 auto;
}

.innovationCenter img {
	width: 100%;
}

.innovationCol {
	display: flex;
	flex-direction: column;
	gap: 60px;
}

.innovationLeft {
	align-items: flex-end;
}

.innovationRight {
	align-items: flex-start;
}

.innovationCard {
	display: flex;
	gap: 15px;
	background: #EDFFF5;
	padding: 10px 25px;
	border-radius: 50px;
	max-width: 500px;
}

.leftCard {
	flex-direction: row;
	text-align: right;
}

.rightCard {
	flex-direction: row;
	text-align: left;
}

.middleInnovLeft {
	margin-right: 40px;
}

.middleInnovRight {
	margin-left: 40px;
}

.cardIcon {
	width: 28px;
	height: 28px;
	flex-shrink: 0;
}

.cardIcon img {
	width: 100%;
}

.cardContent h4 {
	font-size: 20px;
	font-weight: 600;
	/* color: var(--primaryClr); */
	line-height: 1.35;
	display: inline-block;
	background: linear-gradient(90deg, #11694B 30%, #1F9C3B 100%);

	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.cardContent p {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.35;
	color: var(--textClr);
}

.innovationAction {
	margin-top: 30px;
}



/* ================= Advantage SECTION ================= */

.advantageSection {
	padding: 40px 0;
}

.advantageContainer {
	max-width: 1500px;
	margin: 0 auto;
	width: 95%;

	background: #EDFFF5;
	border-radius: 17px;
	padding:50px 45px;
}

.advantageWrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 40px;
}

.advantageTitleWrap {
	flex: 0 0 30%;
}

.advantageTitle {
	font-size: 40px;
	font-weight: 600;
	line-height: 1.25;
	color: var(--primaryClr);
}

.advantageList {
	flex: 0 0 70%;
}

.advantageList ul {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 15px 40px;
}

.advantageList li {
	font-size: 24px;
	font-weight: 500;
	color: var(--textClr);
	line-height: 1.35;
}



/* ================= Carrer path  SECTION ================= */


.careerPathSection {
	padding: 40px 0;
}

.careerHeader {
	text-align: center;
	margin: 0 auto 30px;
}

.careerMainTitle {
	font-size: 48px;
	font-weight: 600;
	color: var(--primaryClr);
	line-height: 1.35;
	margin-bottom: 10px;
}

.careerSubText {
	font-size: 18px;
	color: var(--textClr);
	font-weight: 500;
	line-height: 1.35;
	max-width: 900px;
	margin: 0 auto;
}

.careerPathWrap {
	display: flex;
	gap: 30px;
}

.careerPathCard {
	flex: 1;
	background: linear-gradient(135deg, #EEF4EF, #E3ECE5);
	border-radius: 22px;
	padding: 30px;
	display: flex;
	gap: 20px;
	align-items: center;
}

.careerPathImg {
	width: 380px;
	height: 310px;
	overflow: hidden;
	border-radius: 18px;
}

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

.careerPathContent {
	width: 55%;
}

.careerPathContent h4 {
	font-size: 28px;
	font-weight: 600;
	color: var(--primaryClr);
	margin-bottom: 10px;
}

.careerPathContent ul {
	padding-left: 25px;
}

.careerPathContent li {
	font-size: 25px;
	font-weight: 500;
	line-height: 1.35;
	margin-bottom: 6px;
	color: #002530;
}


/* ================= advance lab SECTION ================= */

.advancedLabSection {
	padding: 40px 0;
}

.advancedLabContainer {
	max-width: 1500px;
	margin: 0 auto;
	width: 95%;
}

.advancedLabHeader {
	display: flex;
	/* justify-content: space-between; */
	align-items: flex-start;
	margin-bottom: 40px;
	align-items: end;
}

.advancedLabTitle {
	flex: 0 0 50%;
	font-size: 48px;
	font-weight: 600;
	line-height: 1.25;
	color: var(--primaryClr);
}

.advancedLabDesc {
		flex: 0 0 50%;
		font-weight: 500;
	font-size: 18px;
	line-height: 1.35;
	color: var(--textClr);
}

.advancedLabWrap {
	display: flex;
	justify-content: space-between;
}

.advancedLabLeft {
	flex: 0 0 50%;
}

.advancedLabList {
	list-style: none;
	margin-bottom: 25px;
}

.advancedLabList li {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin-bottom: 15px;
}

.labIcon {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
}

.labIcon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.advancedLabList li span:last-child {
	font-size: 20px;
	line-height: 1.53;
	color: var(--primaryClr);
	font-weight: 600;
}

.advancedInstrumentation h4 {
	font-size: 32px;
	line-height: 1.25;
	font-weight: 600;
	color: var(--primaryClr);
	margin-bottom: 22px;
}

.advancedInstrumentation ul {
	padding-left: 18px;
}

.advancedInstrumentation li {
	font-size: 20px;
	font-weight: 500;
	line-height: 1.35;
	margin-bottom: 6px;
	color: #002530;
}

.advancedLabRight {
	flex: 0 0 50%;
}

.advancedLabRight img {
	width: 100%;
	border-radius: 20px;
	display: block;
}











/* =================Admission SECTION ================= */

.admissionSection {
	padding: 40px 0;
}

.admissionContainer {
	max-width: 1500px;
	margin: 0 auto;
	width: 95%;

	background: url('../images/admission-bg.webp') no-repeat center;
	background-size: cover;

	border-radius: 40px;
	padding: 30px;
}

.admissionWrap {
	display: flex;
	justify-content: space-between;
}

.admissionLeft {
	flex: 0 0 35%;
	display: flex;
	padding: 20px;
	flex-direction: column;
	justify-content: space-between;
}

.admissionTitle {
	font-size: 48px;
	font-weight: 600;
	line-height: 1.25;
	color: var(--primaryClr);
	margin-bottom: 20px;
}

.admissionDesc {
	font-size: 18px;
	line-height: 1.5;
	max-width: 490px;
	color: var(--textClr);
}

.admissionAction .btn {
	justify-content: start;
}

.admissionBtn {
	display: flex;
	align-items: center;
}



.admissionRight {
	flex: 0 0 60%;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 30px 20px;
}

.stepCard {
	background: linear-gradient(90deg, #11694B 0%, #1F9C3B 100%);


	border-radius: 20px;
	padding: 30px;
	color: var(--whiteClr);
}

.stepNo {
	font-size: 36px;
	font-weight: 600;
	display: block;
	margin-bottom: 20px;
	color: #AAFFC0;
}

.stepCard h4 {
	font-size: 22px;
	font-weight: 600;
	margin-bottom: 10px;
}

.stepCard p {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.35;
}





/* ================= IMP DATE SECTION ================= */

.dateEligiblityBG {
	background: url('../images/eligibility-bg.webp') no-repeat center bottom;
}


.datesSection {
	padding: 40px 0;
}

.datesTitle {
	text-align: center;
	font-size: 48px;
	font-weight: 600;
	color: var(--primaryClr);
	margin-bottom: 40px;
}


.datesContainer {
	max-width: 1500px;
	margin: 0 auto;
	width: 95%;

	background: url('../images/dates-bg.webp') no-repeat center;
	background-size: cover;

	border-radius: 30px;
	padding: 30px 50px;

	position: relative;
}

.datesWrap {
	display: flex;
	justify-content: space-between;
	position: relative;
}

.datesContainer::before {
	content: "";
	position: absolute;
	height: 60%;
	left: 50%;
	transform: translateX(-50%);
	width: 1px;
	background: #005772;
}


.datesCol {
	flex: 0 0 45%;
	display: flex;
	flex-direction: column;
	gap: 15px;
}

.alignTop {
	align-items: flex-start;
}

.dateRow {
	display: flex;
	align-items: center;
	gap: 45px;
}

.dateLabel {
	background: var(--whiteClr);
	padding: 20px 25px;
	border-radius: 50px;
	font-family: "Montserrat", sans-serif;
	letter-spacing: normal;
	line-height: 1.35;
	font-size: 16px;
	font-weight: 600;
	/* color: var(--primaryClr); */
	width: 320px;


}

.dateLabel p {
	display: inline-block;
	background: linear-gradient(90deg, #11694B 30%, #1F9C3B 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;

}

.dateValue {
	font-size: 18px;
	font-weight: 600;
	color: var(--textClr);
	line-height: 1.5;
	font-family: "Montserrat", sans-serif;
}

.datesNote {
	text-align: center;
	margin-top: 25px;

	font-size: 16px;
	font-style: italic;
	font-weight: 400;
	color: #4a5a60;
	max-width: 970px;
	margin: 25px auto 0;
}


/* ================= Eligibility SECTION ================= */

.eligibilitySection {
	padding: 40px 0 150px 0;
}

.eligibilityContainer {
	max-width: 1500px;
	margin: 0 auto;
	width: 95%;
}

.eligibilityWrap {
	display: flex;
	align-items: flex-start;
	gap: 60px;
}


.eligibilityLeft {
	display: flex;
	align-items: center;
	gap: 20px;
	flex: 0 0 26%;
}

.eligibilityIcon {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: var(--whiteClr);
	box-shadow: 0px 0px 7.1px 0px #00577242;
	display: flex;
	align-items: center;
	justify-content: center;
}

.eligibilityIcon img {
	width: 28px;
}

.eligibilityTitle {
	font-size: 48px;
	font-weight: 600;
	line-height: 1.25;
	color: var(--primaryClr);
}


.eligibilityRight {
	flex: 0 0 70%;
}

.eligibilityRight p {
	font-size: 24px;
	font-weight: 500;
	line-height: 1.35;
	color: var(--textClr);
}



.eligibilityTabs {
  display: flex;
  justify-content: center;
  gap: 15px;
  margin-bottom: 30px;
  flex-wrap: wrap;
}

.eligibilityTab {
  padding: 12px 22px;
  border-radius: 30px;
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  white-space: nowrap;
  transition: 0.3s ease;

  background: #fff;
  color: var(--primaryClr);
  box-shadow: 0px 4px 10px rgba(0,0,0,0.08);
}

.eligibilityTab.active {
  background: linear-gradient(90deg, #11694B 0%, #1F9C3B 100%);
  color: #fff;
}

.eligibilityTab:hover {
  transform: translateY(-2px);
}
.eligibilityContent {
  display: none;
}

.eligibilityContent.active {
  display: block;
}



/* ================= CTA FOOTER ================= */


.ctaFooterSection {
	max-width: 1920px;
	margin: 0 auto;
}

.ctaTop {
	background: url('../images/cta-bg.webp') no-repeat center;
	background-size: cover;
	padding: 50px 0;
}

.ctaContainer {
	max-width: 1190px;
	margin: 0 auto;
	width: 95%;
}

.ctaBox {
	background:
		url('../images/cta-bg-inner.webp') no-repeat center;
	background-size: cover;

	border-radius: 85px;
	padding: 70px 40px;

	text-align: center;
}

.ctaTitle {
	font-size: 48px;
	font-weight: 600;
	color: var(--whiteClr);
	margin-bottom: 30px;
}

.ctaAction {
	display: flex;
	justify-content: center;
}

/* ================= FOOTER ================= */

.footerBar {
	background: linear-gradient(90deg, #11694B 0%, #1F9C3B 100%);

	color: var(--whiteClr);
	text-align: center;
	padding: 20px 0;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.35;
}

/* ================= MOBILE STICKY CTA ================= */

.mobileStickyCta {
	position: fixed;
	bottom: 0px;
	left: 0;
	width: 100%;
	padding: 10px 20px;
	z-index: 999;
	background: #FFFFFF33;
	backdrop-filter: blur(12px);
	display: none;
	justify-content: center;

}

.mobileStickyCta .btn {
	width: 100%;
	align-items: normal;
}

.mobileStickyCta .btnText {
	width: 80%;
	text-align: center;
	font-size: 16px;
	padding: 10px 0;

}

@media (max-width:768px) {
	.mobileStickyCta {
		display: block;
	}

	.ctaFooterSection {
		padding-bottom: 65px;
	}
}