@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@400;500;600;700&family=Roboto:ital,wght@0,400;0,500;0,700;0,900;1,100&display=swap');

* {
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
}

body {
  margin: 0;
  font: 16px/1.4 'Roboto', sans-serif;
  color: #414141;
  background: #fff;
  overflow-x: hidden;
}



.flex {
  display: flex;
}

.v-center {
  align-items: center;
}
ul{
	list-style-type: disc;
}
.relative {
  position: relative;
}

.img-responsive {
  max-width: 100%;
  height: auto;
  display: block;
}

.img-responsive.fluid {
  width: 100%;
}

.absolute {
  position: absolute;
}

.cursor {
  cursor: pointer;
}

input,
textarea,
button {
  font-family: 'Roboto', sans-serif;
  outline: none;
}

button,
input[type="submit"],
input[type="reset"] {
  cursor: pointer;
}

.btn-primary {
  display: inline-block;
  vertical-align: top;
  border-radius: 30px;
  background: #1B2642;
  color: #fff;
  font-weight: 600;
  font-size: 15px;
  padding: 8px 17px;
}

.h-center {
  justify-content: center;
}

.text-center {
  text-align: center;
}

.text-right {
  text-align: right;
}

.ml-auto {
  margin-left: auto;
}

.mr-auto {
  margin-right: auto;
}

.flex-wrap {
  flex-wrap: wrap;
}

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

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

.flex-row {
  flex-direction: row;
}

input,
select {
  outline: none;
}

a {
  text-decoration: none;
  color: #1B2642;
  transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
}

.list-none {
  margin: 0;
  padding: 5px;
  list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: 'Josefin Sans', sans-serif;
  color: #005F86;
}

.single-news .banner img,
.single-event .banner img{
	max-height:400px;
}

.single-news .banner,
.single-event .banner{
	position:relative;
}

.title-overlay {
	position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    font-size: 40px;
    color: white;
    background: rgba(0,0,0,0.6);
    text-align: center;
}

.title-overlay .container{
width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    text-transform: capitalize;
    font-weight: 500;
}
h2 {
  font-size: 45px;
  text-align: center;
  margin: 0 0 30px;
  font-weight: 700;
  margin-bottom: 1.5rem;
}

h2 span {
  display: inline-block;
  vertical-align: top;


}

h2 span:after {
  width: 100%;
  height: 2px;
  position: absolute;
  content: '';
  left: 0;
  bottom: 16px;
  background: #005F86;
}

/* 1st chng */
.container {
  max-width: 1230px;
  margin: 0 auto;
  padding: 0 15px;  
}

#wrapper {
  width: 100%;
  position: relative;
  overflow: hidden;
}

#header {
  padding: 20px 15px 15px;
}

.logo {
  display: inline-block;
  vertical-align: top;
  margin: 0 0 30px;
}

#nav{
  transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
}

#nav li {
  margin: 0 24px;
}

#nav a {
  color: #443B39;
  position: relative;
  text-decoration: none;
}

#nav a:after {
  width: 0;
  height: 2px;
  position: absolute;
  content: '';
  bottom: 0;
  left: 0;
  background: #005F86;
  transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
}

#nav a:hover {
  color: #005F86;
}

#nav a:hover:after {
  width: 100%;
}

#nav {
  font-size: 17px;
  font-weight: 700;
	margin-top: 25px;
}

.logo img {
  width: 200px;
}

#main {
  margin: 0 0 60px;
}

.banner {
  margin: 0 0 0px;
}

.banner img {
  max-height: 628px;
  object-fit: cover;
}

.who-we-are {
  margin: 0 0 20px;
  font-size: 16px;
}

.who-we-are p {
  margin: 0 0 0px;
}

.points {
  margin: 0 0 10px;
}

.points li {
  position: relative;
  padding: 0 0 7px 20px;
}

.points li:after {
  width: 8px;
  height: 8px;
  position: absolute;
  content: '';
  left: 0;
  top: 8px;
  border-radius: 100%;
  background: #004F5E;
}

.goals {
  font-size: 16px;
}

.goals li {
  margin: 0 0 20px;
}

h3 {
  margin: 0 0 5px;
  display: block;
  color: #005F86;
  font-size: 22px;
  font-family: 'Roboto', sans-serif;
}

/* Add this separately */
h3::selection {
  text-decoration: none;
  background: #b3d4fc; /* Optional: selection color */
  color: inherit;
}

h3 *::selection {
  text-decoration: none;
}


.goals p {
  margin: 0;
}

.what-we-do {
/*   margin: 0 0 70px; */
	background-color: #EEEEEE;
	padding: 20px 0;
}
.services2 {
    display: flex;
    flex-wrap: nowrap; /* Prevents wrapping */
    overflow-x: auto; /* Allows horizontal scrolling if needed */
    gap: 20px; /* Adjust spacing between cards */
}

.services li {
  width: 50%;
  margin: 0 0 35px;
}

.services h3 {
  margin: 0 0 20px;
}

.services p {
  margin: 0;
}

.services .holder {
  width: 94%;
}

.news {
  padding: 0px 0 0;
  color: #fff;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}

.news h2 {
  margin: 40px 0 0px;
  font-family: 'Roboto', sans-serif;
  font-weight: bold;
  color: #005F86; /* Blue */
  background: none;
  border: none;
  padding: 0;
  box-shadow: none;
}


.news ul {
  width: 100%;
}

.news li {
  width: 25%;
  padding: 0 10px 40px;
  font-weight: 700;
}

.news a {
  color: #000;
  text-transform: capitalize;
  text-align: center;
}

.news .container {
  width: 100%;
}

.team-area {
  padding-top: 50px;
}

.team-list li {
  display: flex;
/*   align-items: center; */
  margin: 0 0 25px;
}

.team-list li strong {
  display: block;
  font-size: 18px;
  color: #000;
  margin: 0 0 4px;
}

.team-list li span {
  display: block;
  color: #005f86;
  font-weight: 600;
  margin: 0 0 10px;
}

.team-list li p {
  margin: 0;
}

.team-list li img {
  width: 110px;
  height: 188px;
  object-fit: cover;
  border-radius: 10px;
  margin-right: 18px;
}
.team-list li .text{
	flex:1;
}
.careers .col {
  width: 43%;
}

.careers h1 {
  margin: 0 0 15px;
  font: 600 50px/54px 'Roboto', sans-serif;
  color: #121212;
}

.careers p {
  margin: 0;
}

.careers-list a {
  margin-left: auto;
}

.careers {
  max-width: 900px;
  margin: 50px auto;
}

.careers-list strong {
  display: block;
  width: 160px;
  font-size: 18px;
}

.careers .apply-btn {
  display: block;
}

.careers-list .apply-btn span {
  border-bottom: 2px solid #007FB2;
}

.careers-list .apply-btn {
  width: 195px;
  height: 77px;
  font-family: 'Roboto', sans-serif;
  padding-bottom: 20px;
  background: #E5EFF3;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  font-weight: 600;
}

.careers-list li {
  margin: 0 0 20px;
}

.contact-area {
  padding: 50px 0 0 100px;
  font-weight: 600;
  color: #121212;
  max-width: 1520px;
  margin: 0 auto;
}

.contact-area h1 {
  margin: 0 0 15px;
  font: 600 45px/49px 'Roboto', sans-serif;
  color: #121212;
}

.contact-area .col {
  width: 33%;
}

.map-holder {
  width: 47%;
}

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

.contact-area ul li {
  margin: 0 0 10px;
}

.social-link {
  width: 35px;
  height: 35px;
  border-radius: 100%;
  background: #0E76A8;
  display: block;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 15px;
}

.form-holder {
  margin-top: 40px;
}

.form-row input,
.form-row textarea {
  height: 50px;
  width: 100%;
  border: none;
  outline: none;
  font-size: 14px;
  font-weight: 600;
  font-family: 'Roboto', sans-serif;
  padding: 0 20px;
}

.form-row textarea {
  height: 100px;
  padding: 22px 20px;
  font-size: 16px;
  font-family: 'Josefin Sans', sans-serif;
  resize: none;
}

.form-row {
  border: 2px solid #004F5E;
  margin: 0 0 25px;
}

.form-holder input[type="submit"] {
  height: 40px;
  background: #004F5E;
  text-align: center;
  color: #fff;
  border: none;
  width: 100%;
  font: 600 15px/20px 'Roboto', sans-serif;
}

span.label {
  position: absolute;
  left: 12px;
  top: -12px;
  background: #fff;
  padding: 0 7px;
  font-size: 14px;
}

span.label sup {
  color: red;
}

p:empty {
  display: none;
}

.company-logo,
.filters-form,
.screen-reader-response {
  display: none;
}

.job-date {
  display: none;
}

.v1 {
  margin: 0 0 15px;
  display: flex;
  align-items: center;
}

.job-description {
  margin-left: auto;
}

.job-description .btn-primary {
  width: 195px;
  height: 77px;
  font-family: 'Roboto', sans-serif;
  padding-bottom: 20px;
  background: #E5EFF3;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  font-weight: 600;
  border-radius: 0;
  text-transform: uppercase;
  color: #121212;
  position: relative;
}

.job-description .btn-primary:after {
  bottom: 20px;
  height: 20px;
  background: #E5EFF3;
  position: absolute;
  content: 'APPLY & SUBMIT CV';
  text-align: center;
  border-bottom: 2px solid #007FB2;
  width: 136px;
  left: 50%;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  font-size: 14px;
  padding-top: 20px;
}

.job-title {
  display: block;
  width: 160px;
  font-size: 18px;
  font-family: 'Roboto', sans-serif;
}

.wpcf7-not-valid-tip {
  position: absolute;
  right: 0;
  top: -19px;
  font-size: 12px;
  color: red;
}

.single-jobpost .v1 {
  flex-direction: column;
  align-items: flex-start;
  border: 1px solid #1B2642;
  max-width: 660px;
  margin: 50px auto;
  border-radius: 5px;
  padding: 20px 15px;
  display: block;
  overflow: hidden;
}

.single-jobpost .v1 .clearfix {
  display: none;
}

.single-jobpost .job-features {
  float: left;
}

.single-jobpost .jobpost-form {
  float: right;
}

.post-details * {
  text-align: left;
}

.post-details h2 {
  font-size: 24px;
  margin: 30px 0 10px;
}

.jobpost-form input {
  width: 100%;
  display: block;
  height: 40px;
  margin: 0 0 15px;
}

.app-submit {
  width: 100%;
  border-radius: 5px;
  border: none;
  height: 40px;
}

.sjb-loading {
  display: none;
}

.job-features table {
  border-collapse: collapse;
}

.job-features td {
  border: 1px solid #1B2642;
  border-collapse: collapse;
  padding: 10px 10px;
}

 #footer {
  padding: 0 0 25px;
  font-weight: 700;
}

#footer .col {
  max-width: 360px;
  margin-right: 60px;
}

#footer .col:last-child {
  margin-right: 0;
}

#footer a {
  color: #443B39;
}

#footer .holder {
  border-top: 6px solid #005F86;
  padding: 20px 0;
}

#footer .logo img {
  width: 220px;
}

#footer i {
  color: #005F86;
  font-size: 17px;
  margin-right: 6px;
}

#footer ul li {
  margin: 0 0 10px;
}

#footer p {
  margin: 0;
  color: #c4c4c4;
}

#footer p img {
  margin-right: 5px;
}
 


#footer {
  padding: 0px 0 0px;
  font-weight: 700;
  background-color: #005a83; /* Blue background */
  color: white;

}

/* Flexbox for footer columns to ensure left alignment */
#footer .holder {
  display: flex; /* Use flexbox */
  justify-content: flex-start; /* Align all columns to the left */
  flex-wrap: nowrap; /* Allow wrapping of content */
  border-top: 0px solid #ffffff;
  padding: 10px 0;
}

/* Adjust individual columns for spacing */
#footer .col {
  max-width: 360px;
  margin-right: 60px;
}

#footer .col:last-child {
  margin-right: 0;
}

/* Ensure links are white with no underline, and change on hover */
#footer a {
  color: white !important;
  text-decoration: none;
  font-size: 15px;
}

#footer a:hover {
  text-decoration: underline;
}

/* Footer logo styling */
#footer .logo img {
  width: 70%;
  filter: brightness(0) invert(1); /* Lighten logos */
}

/* Icon styling for social media */
#footer i {
  color: white !important;
  font-size: 17px;
  margin-right: 6px;
}

/* Social media links */
#footer .socials {
  display: flex; /* Use flexbox for social icons */
  flex-direction: column; /* Align items in a vertical stack */
  align-items: flex-start; /* Left-align social icons */
  padding-left: 0; /* Remove any padding */
}

#footer .socials li {
  margin: 0 0 10px; /* Space between each item */
}

/* Social media link text */
#footer .socials li a {
  color: white;
  text-decoration: none; /* Ensure no underline */
}

#footer .socials li a:hover {
  text-decoration: underline; /* Underline on hover */
}

#footer p {
  margin: 0;
  color: white;
}

#footer p img {
  margin-right: 5px;
}


.menu-opener {
  right: 15px;
  top: 50%;
  font-size: 25px;
  display: none;
  margin-top: -15px;
}
.file-icon img {
    width: 35px;
    display: block;
}
#nav .sub-menu li:first-child a {
    border-top: 1px solid #ccc;
}
#nav .sub-menu li:last-child a {
    border: none;
}
#nav li{
	position: relative;
}
#nav li:hover .sub-menu{
	display:block;
}
#nav .sub-menu li a {
    display: block;
    padding: 12px 10px;
    font-size: 14px;
    text-align: center;
    border-bottom: 1px solid #ccc;
}
#nav .sub-menu li {
    padding: 0;
    margin: 0;
    background: #fff;
}
#nav .sub-menu {
    position: absolute;
    margin: 0;
    padding: 0;
    list-style: none;
    left: -45px;
    top: 100%;
    z-index: 1;
    width: 150px;
    padding-top: 15px;
    border-radius: 2px;
	display:none;
}
.newsCol a {
    display: block;
    font-weight: 400;
    padding: 0 10px 17px;
	text-align: center;

	
	
}

.eventCol a {
    display: block;
    font-weight: 400;
    padding: 0 10px 17px;
	text-align: left;
	font-weight: bold;

}
.newsCol img {
    display: block;
    width: 100%; 
    height: 70%;
    margin: 0 0 5px;
}
.newsCol {
    width: 20%;
    padding: 0 10px 20px;
}
.newsCols {
	padding:30px 0 0;
    display: flex;
    flex-wrap: wrap;
}

.newsCol .holder {
    border-radius: 7px;
	height:100%;
    overflow: hidden;
    border: 2px solid #005f86;
}
.eventCol .holder {
    border-radius: 7px;
	height:100%;
    overflow: hidden;
	background: #F0F8FF;
}
.eventCol img {
    display: block;
    width: 25%; 
    height: 25%;
    margin: 20px 10px 20px;
}
.eventCol {
    width: 20%;
    padding: 0 10px 20px;

}
.eventCol {
	padding:30px 0 0;
    display: flex;
    flex-wrap: wrap;
	width: 20%;
    padding: 0 10px 20px;
}

/* .newsCol .holder > img {
	width: 100% !important;
} */
.box-shadow {
	margin: auto 15px 0px auto;
	background: white;
    padding: 30px;
    min-height: 400px;
    box-shadow: 10px 10px 5px #DDD;
}
/* .new-heading2 {
	padding: 7px 25px !important;
	background: #005a83 !important;
	color: white !important;
	border-radius: 7px !important;
} */

.new-heading2 {
  padding: 0px 25px;
  color: #005a83;
  font-weight: bold;
  font-family: 'Roboto', sans-serif;
  background: none;
  border-radius: 0;
}

.who-we-are h2 span{
  padding: 0 0 17px;
  color: white;
  background-color: #005F86;
  border: 1px solid #ccc;
  border-radius: 5px;
  padding: 7px;
  box-shadow: 11px 0px 30px #ccc;
}
#footer .sub-menu {
    margin: 0;
    padding: 4px 10px 0;
    list-style: none;
}
.file-icon {
    display: none;
}
.file-info {
    border: 1px solid #fff;
    height: 100%;
    text-align: center;
    border-radius: 4px;
    padding: 30px 10px;
}
/* .boxes {
    display: flex;
}
.boxes .box {
    width: 48%;
	padding: 0 10px;
}
.boxes h2 {
    text-align: center;
    margin: 0;
    font-size: 33px;
	color:black;
}
.boxes .box img {
    width: 100%;
    height: auto;
    border-radius: 15px;
} */


.carousel .carousel-item img {
    width: 100%;
    height: auto;
    border-radius: 15px;
}

.carousel-caption {
    color: #005a83 !important;
	background-color: #FFF !important;
	padding-top: 5px !important;
	padding-bottom: 5px !important;
	border-radius: 10px;
}

.gallery{
	width:100%;
	position:relative;
}

.gallery .slide{
	width:100%;
	float:left;
}
.gallery .mask{
	width:100%;
}
.gallery .btn-prev,
.gallery .btn-next{
	height:28px;
	color: red;
	font-size: 18px;
	font-weight: 600;
 	position: absolute; 
	left: 0;
	text-align: center;
}

/* .gallery .btn-next{
	left:auto;
	right:0;
} */
.gallery .pagination{
	position:absolute;
	left:50%;
	overflow:hidden;
}
.boxes .box h4{
	margin:6px 0 0;
}

section.news.media h2 {
    color: #000;
}

section.news.media {
    
	padding-bottom: 40px !important;
	padding-top: 5px;
}
section.news.media h3 {
    color: #000;
	text-align:center;
	
}
.desc .text-expander {
    border: none;
    padding: 0;
    margin-left: 4px;
    font-weight: 600;
    color: #005f86;
    background: none;
    font-size: 17px;
}
.desc p {
    display: inline;
}
.full-text{
	display:none;
}
.full-text.active{
	display:inline !important;
}
.desc img {
    max-width: 100%;
    height: auto;
    object-fit: cover;
}

.heading-icon-ring img {
  position: absolute;
  top: 42%; /* push to the middle of heading */
  left: 18%; /* or adjust as needed */
  transform: translateY(-40%); /* half above, half below the line */
  height: 100px; /* or whatever size you want */
  z-index: 2;
   width: 60%;
    object-fit: contain;
/* 	background-color:white;
	border-radius:50%; */
	
}

.heading-icon-ring

 {
    position: absolute;
    top: 85%;
    left: 14%;
    transform: translateY(-40%);
    height: 90%;
    z-index: 0;
    width: 9%;
    object-fit: contain;
    background-color: #f5f5f5;
    border-radius: 50%;
}






/* Features Section */
.features-section {
    text-align: center;
    padding: 0;
    background: #f5f5f5;
    margin: 0;
}


/* WHAT WE DO Section */
.what-we-do-container {
    width: 100%;
    background: linear-gradient(to bottom, #1D71B8, #1C5A99);
    padding: 20px 0;
    margin: 0;
}

/* Wrapper to align content to the left */
.features-header {
    max-width: 80%;  /* Adjust based on layout */
    margin-left: 50px; /* Align content to the left */
    padding-left: 20px; /* Extra space from the left */
    text-align: center; /* Ensure text aligns to the left */
}

/* Heading Style */
/* .features-heading {
    font-size: 2.5rem;
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 10px;
    display: block;
    text-align: left; 
	color: #ffffff; 
	left: 20%;
    position: relative;
}
 */
.features-container {
    width: 93%;
    margin: 0 auto;
    padding: 20px 0 2%;
}

.features-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
    padding: 0;
    list-style: none;
}

.feature-item {
    flex: 1 1 calc(25% - 20px);
    max-width: 25%;
}

.feature-box {
    background: linear-gradient(to bottom, #1D71B8, #1C5A99);
    color: #ffffff;
    text-align: justify;
	hyphens: auto;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
    min-height: 395px;
    position: relative;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    cursor: pointer;
}

.feature-box:hover {
    transform: scale(1.03);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3);
}


/* IMAGE SLIDE IN (now only shows on hover) */
.feature-image {
    position: absolute;
    top: 0;
    right: -100%;
    width: 100%;
    height: 100%;
    z-index: 1;
    transition: right 0.5s ease;
}

.feature-box:hover .feature-image {
    right: 0;
}

.feature-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0.8;
}




/* HEADING - VISIBLE BY DEFAULT */
.feature-title {
    position: relative;
    z-index: 2;
    font-size: 1.2rem;
    font-weight: bold;
    text-transform: uppercase;
    text-align:center;
    padding: 10px;
    border-radius: 5px;
    display: block;
    opacity: 1; 
}

/* TEXT - VISIBLE INITIALLY, HIDDEN ON HOVER */
.feature-text {
    position: relative;
    z-index: 2;
    font-size: 0.9rem;
    line-height: 1.5;
    margin-top: 10px;
	transition: opacity 0.4s ease;
   
}

.feature-box:hover .feature-text {
    opacity: 0;
}


.feature-read-more-btn {
  display: inline-block;
  background-color: #1A2940;
  color: white;
  font-weight: bold;
  text-transform: uppercase;
  padding: 8px 20px;
  border-radius: 5px;
  text-decoration: none;
  font-size: 55%;
  transition: background 0.3s ease;
  margin-top: 15px;
}

/* Hover effect */
.feature-read-more-btn:hover {
  background-color: #324765;
	 text-decoration: none;
}

/* Adjust spacing and keep alignment left */
.feature-item {
  text-align: left;
  padding: 0 20px 20px 20px; /* optional: padding for spacing inside the item */
}


/* RESPONSIVE */
@media (max-width: 1024px) {
    .features-container {
        width: 80%;
    }

    .feature-item {
        flex: 1 1 calc(50% - 20px);
        max-width: 50%;
    }
}

@media (max-width: 768px) {
    .feature-item {
        flex: 1 1 100%;
        max-width: 100%;
    }
	
	.heading-icon-ring {
    position: absolute;
    top: 85%;
    left: 0%;
    transform: translateY(-40%);
    height: 100%;
    z-index: 0;
    width: 25%;
    object-fit: contain;
    background-color: #f5f5f5;
    border-radius: 50%;
}
	#footer .logo img {
    width: 195px;
	
  }
	

}









/* .feature-box:hover {
    transform: scale(1.05); 
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3); 
    background: linear-gradient(to bottom, #2A9DD9, #174A89); */




/* banner + who we are section */
/* Ensure the banner container is positioned relative */
.banner-container {
    position: relative;
    width: 100%;
}

/* Banner should be visible as background */
.banner img {
    width: 100%;
    height: auto;
    display: block;
}

/* Position Who We Are section over the banner */
.who-we-are {
    position: absolute;
    top: 50%;  /* Center vertically */
    left: 5%; /* Align left */
    transform: translateY(-50%);
    width: 50%; /* Adjust width for better readability */
    text-align: left; /* Align text to the left */
    color: white; /* White text */
    padding: 20px;
}

/* Style the heading */
.who-we-are h2 {
    font-size: 2.3rem;
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 15px;
    text-align: left; /* Ensure heading is left-aligned */
}

/* Style the paragraph text */
.who-we-are p {
    font-size: 1rem;
    line-height: 1.5;
    text-align: left; /* Ensure paragraph is left-aligned */
}

/* Responsive Design */
@media (max-width: 768px) {
    .who-we-are {
        width: 80%;
        left: 5%;
        transform: translateY(-50%);
        text-align: left; /* Keep text left-aligned on smaller screens */
        padding: 15px;
    }

    .who-we-are h2 {
        font-size: 1.5rem;
    }

    .who-we-are p {
        font-size: 0.9rem;
    }
	
	.heading-icon-ring {
    position: absolute;
    top: 85%;
    left: 0%;
    transform: translateY(-40%);
    height: 100%;
    z-index: 0;
    width: 25%;
    object-fit: contain;
    background-color: #f5f5f5;
    border-radius: 50%;
}
}


/* who we are read more button */
.read-more-btn {
    display: inline-block;
    background-color: #1A2940; /* Dark Blue Button */
    color: white;
    font-weight: bold;
    text-transform: uppercase;
    padding: 12px 24px;
    border-radius: 5px;
    text-decoration: none;
    margin-top: 15px;
    font-size: 1rem;
    transition: background 0.3s ease;
}

.read-more-btn:hover {
    background-color: #0F1C2D; /* Slightly darker blue on hover */
    text-decoration: none; /* Remove underline on hover */
}

/* OUR MISSION & VISION Section (Slider) */
.mission-vision-slider {
    width: 100%;
    background: linear-gradient(to bottom, #1D71B8, #1C5A99);
    padding: 100px 20px; /* Add padding to top and bottom */
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden; /* Hide the overflowing content for carousel effect */
    position: relative;
    gap: 30px; /* Space between slides */
}

/* Slider container (each slide) */
.slider-container {
    width: 100%;
    max-width: 1200px; /* Limit the width to avoid stretching */
    display: flex;
    justify-content: space-between; /* Space between heading and text */
    align-items: center;
    opacity: 0;
    transition: opacity 1s ease-in-out; /* Smooth transition for sliding */
    flex-shrink: 0;
    flex-basis: 100%;
    margin: 0;
    padding: 50px 30px; /* Increase padding to give more space around the text */
    box-sizing: border-box;
    position: absolute; /* Position slides on top of each other */
    min-height: 450px; /* Increased minimum height to avoid cramped text */
}

/* Ensure the first slide is visible immediately */
.slider-container:first-child {
    opacity: 1;
}

/* Slider Heading */
.slider-heading {
    font-size: 2.4rem; /* Decreased font size by 20% */
    font-weight: bold;
    text-transform: uppercase;
    color: white !important; /* Ensure the text color is white */
    margin-bottom: 20px; /* Increased margin for more space between heading and text */
    text-align: left; /* Align the heading to the left */
    word-wrap: break-word; /* Prevent text overflow */
    position: relative;
}



/* Slider Text */
.slider-text {
    font-size: 1.28rem; /* Decreased font size by 20% */
    line-height: 2; /* Adjusted line height for more breathing room */
    color: white !important; /* Ensure the text color is white */
    max-width: 800px; /* Increased max-width to avoid text cramping */
    margin: 0;
    text-align: left; /* Align the text to the left */
    word-wrap: break-word;
    padding: 0 15px; /* Added padding on the sides */
}

/* Apply the sliding effect to each slider */
@keyframes slide {
    0% {
        opacity: 0;
        transform: translateX(100%); /* Start off to the right */
    }
    50% {
        opacity: 1;
        transform: translateX(0); /* Slide into place */
    }
    100% {
        opacity: 0;
        transform: translateX(-100%); /* Slide off to the left */
    }
}

/* Apply the sliding effect to each slider */
.slider-container:nth-child(1) {
    animation: slide 36s infinite;
}

.slider-container:nth-child(2) {
    animation: slide 36s infinite 18s; /* Delays the start by half the duration */
}



.features-heading-row {
  position: relative;
  display: inline-block;
	 width: 100%;
    background: linear-gradient(to bottom, #1D71B8, #1C5A99);
    padding: 3% 0;
    margin-bottom: 5%;
		
}

	
/* Heading Style */
.features-heading {
    font-size: 2.3rem;
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 10px;
    display: block;
    text-align: left; 
	color: #ffffff; 
	left: 23%;
    position: relative;
	
    
    line-height: 1.2;
}




/* .heading-icon-ring{
  position: absolute;
  top: 85%; 
  left: 12%; 
  transform: translateY(-40%); 
  height: 120px; 
  z-index: 0;
   width: 120px;
    object-fit: contain;
	background-color:#f5f5f5;
	border-radius:50%;
	
} */

/* Adjust the image size */
/* .heading-icon-ring img {
    height: 70px;
    width: 70px;
    object-fit: contain;
} */

/* Optional: adjust the heading position slightly if needed */
/* .features-heading {
    margin: 0;
    font-size: 28px;
    line-height: 1.2;
} */

/* .our-partners {
/*   padding: 30px 0;
/*   background-color: white;
  text-align: center;
}

.partners-heading {
  padding: 0 20px;
  color: #005a83;
  font-weight: bold;
  font-family: 'Roboto', sans-serif;
  font-size: 2.3rem;
  text-transform: uppercase;
  margin-bottom: 20px;
}

.partners-carousel-wrapper {
  position: relative;
  max-width: 100%;
  overflow: hidden;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.partners-logos-scroll {
  display: flex;
  gap: 45px;
  overflow-x: auto;
  scroll-behavior: smooth;
  padding: 5px 15px;
  flex-grow: 1;
  justify-content: center;
}

.partners-logos-scroll a {
  flex: 0 0 auto;
}

.partners-logos-scroll img {
  width: 260px;
  height: auto;
  object-fit: contain;
  transition: transform 0.3s ease; 
}
*/


/* .partners-logos-scroll img:hover {
  transform: scale(1.05);
}

.carousel-scroll-btn {
  position: absolute;
  right: 2%;
  top: 50%;
  transform: translateY(-50%);
  background-color: #005a83;
  color: white;
  border: none;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  font-size: 22px;
  font-weight: bold;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.15);
  z-index: 10;
  transition: background-color 0.3s ease;
}

.carousel-scroll-btn:hover {
  background-color: #004566; 
}  */





/*RESEARCH & PUBLICATIONS SECTION TEXT UNDERLINE */
.box .holder {
    text-decoration: none;
}

.box .holder:hover {
    text-decoration: none;
}


/* Popup Modal Styling */
.popup-modal {
  display: none; /* Hidden by default */
  position: fixed;
  z-index: 9999;
  padding-top: 100px;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0,0,0,0.5);
  opacity: 0; /* Start invisible */
  visibility: hidden; /* Start hidden */
  transition: opacity 0.3s ease, visibility 0s 0.3s; /* Smooth fade-in */
}

/* When the modal is displayed, make it visible */
.popup-modal.show {
  display: block; /* Show modal */
  opacity: 1; /* Fade in */
  visibility: visible; /* Make it visible */
  transition: opacity 0.3s ease, visibility 0s 0s; /* Make fade-in immediate */
}

/* Popup Content */
.popup-content {
  background-color: #fff;
  margin: auto;
  padding: 30px;
  border-radius: 10px;
  width: 90%;
  max-width: 700px;
  position: relative;
  text-align: left;
  max-height: 110vh; /* Increase height limit */
  overflow-y: auto;  /* Allow vertical scroll if needed */
}


.popup-content ul {
  margin-left: 20px;
}

/* Close Button Styling */
.close-btn {
  color: #aaa;
  position: absolute;
  right: 20px;
  top: 10px;
  font-size: 28px;
  font-weight: bold;
  cursor: pointer;
}

.close-btn:hover {
  color: #000;
}


.box img {
    max-width: 80%;   /* Keeps it responsive */
    height: auto;
    width: 150px;      /* Adjust this to the desired width */
}


.our-partners {
  padding: 0px 0;
  background-color: white;
  text-align: center;
}

.partners-heading {
  color: #005a83;
  font-weight: bold;
  text-transform: uppercase;
  margin-bottom: 10px;
  padding-top: 30px;
}

.partner-carousel {
  position: relative;
  max-width: 100%;
  overflow: hidden;
  margin: 0 auto;
  padding-right: 60px; /* Adds space on the right for the scroll button */
  display: flex;
  align-items: center;
}

/* Limit image size inside the visible track */
.partner-carousel img {
  max-width: 100px;
  height: auto;
  object-fit: contain;
  padding: 10px;
  margin-bottom: 20px;
}

/* Wrapper for overflow control */
.partner-slider-wrapper {
  overflow: hidden;
  width: 100%;
}

/* Track that holds all images */
.partner-track {
  display: flex;
  transition: transform 0.5s ease-in-out;
}

/* Each image inside the track takes 1/3 width */
.partner-track img {
  flex: 0 0 33.3333%; /* 3 images shown at a time */
  max-width: 80%;
  height: 140px;
  object-fit: contain;
  padding: 10px;
}

/* Scroll button styling */
.partner-scroll-btn {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  background: #005a83;
  color: white;
  border: none;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  cursor: pointer;
  z-index: 10;
}





@media (max-width: 320px) {
    .who-we-are {
        width: 80%;
        left: 5%;
        transform: translateY(-50%);
        text-align: left; /* Keep text left-aligned on smaller screens */
        padding: 15px;
    }

    .who-we-are h2 {
        font-size: 1.3rem;
    }

    .who-we-are p {
        font-size: 0.8rem;
    }
	
	.heading-icon-ring {
    position: absolute;
    top: 85%;
    left: 1%;
    transform: translateY(-40%);
    height: 100%;
    z-index: 0;
    width: 25%;
    object-fit: contain;
    background-color: #f5f5f5;
    border-radius: 50%;
}
	.heading-icon-ring img {
    position: absolute;
    top: 42%;
    left: 9%;
    transform: translateY(-40%);
    height: 75px;
    z-index: 2;
    width: 60px;
    object-fit: contain;
}
	.features-heading {
    font-size: 2rem;
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 10px;
    display: block;
    text-align: left;
    color: #ffffff;
    left: 23%;
    position: relative;
    line-height: 1.2;
}
	.read-more-btn {
    display: inline-block;
    background-color: #1A2940;
    color: white;
    font-weight: bold;
    text-transform: uppercase;
    padding: 8px 20px;
    border-radius: 5px;
    text-decoration: none;
    margin-top: 15px;
    font-size: 0.8rem;
    transition: background 0.3s ease;
}
	.slider-heading {
    font-size: 1.6rem;
    font-weight: bold;
    text-transform: uppercase;
    color: white !important;
    margin-bottom: 20px;
    text-align: left;
    word-wrap: break-word;
    position: relative;
}
	.slider-text {
    font-size: 0.75rem;
    line-height: 1.5;
    color: white !important;
    max-width: 800px;
    margin: 0;
    text-align: left;
    word-wrap: break-word;
    padding: 0 15px;
}
	    #footer .col {
        max-width: none;
        margin-right: 0;
        width: 100%;
        padding: 0 30px;
    }
	#footer .logo img
Specificity: (1,1,1)
#footer .logo img {
    width: 300px;
	padding-left: 60px; /* Adjust this value as needed */
  }
	
	section.news.media {
    padding-bottom: 40px !important;
    padding-top: 0px;
}
	section.news.media {
    padding-bottom: 40px !important;
    padding-top: 0px;
		
	}
	
}


@media (max-width: 375px) {
    .who-we-are {
        width: 80%;
        left: 5%;
        transform: translateY(-50%);
        text-align: left; /* Keep text left-aligned on smaller screens */
        padding: 15px;
    }

    .who-we-are h2 {
        font-size: 1.3rem;
    }

    .who-we-are p {
        font-size: 0.8rem;
    }
	
	.heading-icon-ring {
    position: absolute;
    top: 85%;
    left: 1%;
    transform: translateY(-40%);
    height: 100%;
    z-index: 0;
    width: 25%;
    object-fit: contain;
    background-color: #f5f5f5;
    border-radius: 50%;
}
	.heading-icon-ring img {
    position: absolute;
    top: 42%;
    left: 9%;
    transform: translateY(-40%);
    height: 75px;
    z-index: 2;
    width: 60px;
    object-fit: contain;
}
	.features-heading {
    font-size: 2rem;
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 10px;
    display: block;
    text-align: left;
    color: #ffffff;
    left: 23%;
    position: relative;
    line-height: 1.2;
}
	.read-more-btn {
    display: inline-block;
    background-color: #1A2940;
    color: white;
    font-weight: bold;
    text-transform: uppercase;
    padding: 8px 20px;
    border-radius: 5px;
    text-decoration: none;
    margin-top: 15px;
    font-size: 0.8rem;
    transition: background 0.3s ease;
}
	.slider-heading {
    font-size: 1.6rem;
    font-weight: bold;
    text-transform: uppercase;
    color: white !important;
    margin-bottom: 20px;
    text-align: left;
    word-wrap: break-word;
    position: relative;
}
	.slider-text {
    font-size: 0.75rem;
    line-height: 1.5;
    color: white !important;
    max-width: 800px;
    margin: 0;
    text-align: left;
    word-wrap: break-word;
    padding: 0 15px;
}
	    #footer .col {
        max-width: none;
        margin-right: 0;
        width: 100%;
        padding: 0 30px;
    }
	    .news h2 {
        font-size: 28px;
        margin: 40px 0 0px;
    }	
	h3 {
    padding:5%;
	}
	#footer .logo img
Specificity: (1,1,1)
#footer .logo img {
    width: 300px;
	padding-left: 60px; /* Adjust this value as needed */
  }
	
	section.news.media {
    padding-bottom: 40px !important;
    padding-top: 0px;
	}
}

@media (max-width: 460px) {
    .who-we-are {
        width: 80%;
        left: 5%;
        transform: translateY(-50%);
        text-align: left; /* Keep text left-aligned on smaller screens */
        padding: 15px;
    }

    .who-we-are h2 {
        font-size: 1.3rem;
    }

    .who-we-are p {
        font-size: 0.8rem;
    }
	
	.heading-icon-ring {
    position: absolute;
    top: 80%;
    left: 8%;
    transform: translateY(-40%);
    height: 100%;
    z-index: 0;
    width: 18%;
    object-fit: contain;
    background-color: #f5f5f5;
    border-radius: 50%;
}
	.heading-icon-ring img {
    position: absolute;
    top: 42%;
    left: 5%;
    transform: translateY(-40%);
    height: 50px;
    z-index: 2;
    width: 82%;
    object-fit: contain;
}
	.features-heading {
    font-size: 1.7rem;
    font-weight: bold;
    text-transform: uppercase;
    margin-bottom: 10px;
    display: block;
    text-align: left;
    color: #ffffff;
    left: 30%;
    position: relative;
    line-height: 1.2;
}
	.read-more-btn {
    display: inline-block;
    background-color: #1A2940;
    color: white;
    font-weight: bold;
    text-transform: uppercase;
    padding: 8px 20px;
    border-radius: 5px;
    text-decoration: none;
    margin-top: 15px;
    font-size: 0.8rem;
    transition: background 0.3s ease;
}
	.slider-heading {
    font-size: 1.6rem;
    font-weight: bold;
    text-transform: uppercase;
    color: white !important;
    margin-bottom: 20px;
    text-align: left;
    word-wrap: break-word;
    position: relative;
}
	.slider-text {
    font-size: 0.75rem;
    line-height: 1.5;
    color: white !important;
    max-width: 800px;
    margin: 0;
    text-align: left;
    word-wrap: break-word;
    padding: 0 15px;
}
	    #footer .col {
        max-width: none;
        margin-right: 0;
        width: 100%;
        padding: 0 30px;
    }
	    #footer .holder {
        flex-wrap: wrap !important;
    }
	
    .news h2 {
        font-size: 28px;
        margin: 40px 0 0px;
    }	
	h3 {
    padding:5%;
	}
	#footer .logo img
Specificity: (1,1,1)
 #footer .logo img {
    width: 300px;
	padding-left: 60px; /* Adjust this value as needed */
  }
	
	section.news.media {
    padding-bottom: 40px !important;
    padding-top: 0px;
	}
	

}


@media (max-width:767px) {
		.boxes .box img {
    height: 50vw;
}
	.newsCol{
		width:50%;
	}
	.eventCol{
		width:50%;
	}
  #nav li {
    width: 100%;
  }

  #nav a {
    color: #fff;
    display: block;
    text-align: left;
    padding: 14px 30px;
    border-bottom: 1px solid #fff;
  }

  #nav ul {
    flex-direction: column;
  }

/*   #nav {
    position: fixed;
    width: 250px;
    top: 0;
    height: 100%;
    overflow: auto;
    left: 0;
    background: #005f86;
    z-index: 1;
    transform: translate(-105%, 0);
    -webkit-transform: translate(-105%, 0);
  }
 */
	
#nav {
  position: fixed;
  width: 250px;
  top: 0;
  height: 100vh;
  overflow-y: auto;
  left: 0;
  background: #005f86;
  z-index: 9999; /* This makes sure the menu is on top */
  transform: translate(-105%, 0);
  -webkit-transform: translate(-105%, 0);
  transition: transform 0.3s ease-in-out;
}

  #nav.active{
    transform: none;
    -webkit-transform: none;
  }
	#nav .sub-menu li:last-child {
		border-bottom: 1px solid #fff;
	}
	#nav .sub-menu a {
		border-top: 0 !important;
		text-align: left !important;
		padding: 14px 48px !important;
		border-color: #fff !important;
	}
	#nav .sub-menu li {
		background: none;
	}
	#nav .sub-menu {
		position: static;
		display: block;
		left: 0;
		width: 100%;
		padding: 0;
	}
  .menu-opener {
    display: block;
  }

  #header {
    align-items: flex-start;
  }

  .logo {
    margin: 0;
  }

  h2 {
    font-size: 30px;
    margin: 0 0 20px;
  }

  h2 span:after {
    bottom: 7px;
  }

  .who-we-are {
    margin: 0 0 30px;
    font-size: 16px;
  }

  .services li {
    width: 100%;
    margin: 0 0 10px;
  }

  .services li .holder {
    width: 100%;
  }

  .news h2 {
    font-size: 28px;
    margin: 25 0 10px;
  }

  .news li {
    width: 100%;
    padding: 0 0 15px;
  }

    #footer .col {
        max-width: none;
        margin-right: 0;
        width: 100%;
        padding: 0 8% 10px;
	}

  .jobs-area {
    flex-wrap: wrap;
  }

  .careers .col {
    width: 100%;
    padding: 0 0 20px;
  }

  .careers h1 {
    font-size: 30px;
    line-height: 34px;
  }

  .job-title {
    width: 120px;
    font-size: 14px;
  }

  .job-description .btn-primary {
    width: 145px;
    height: 67px;
  }

  .careers {
    margin: 20px auto;
  }

  .contact-area {
    padding: 25px 15px;
    flex-wrap: wrap;
  }

  .contact-area .col,
  .map-holder {
    width: 100%;
  }

  .contact-area h1 {
    font-size: 35px;
    line-height: 39px;
  }
	
}

\\\\\\\\\\\\\\\single news page style\\\\\\\\\\\\\\
.article-main-wrapper {
    width: 100%;
    overflow: hidden;
}

.article-featured-banner {
    position: relative;
    width: 100%;
    max-height: 70vh;
    overflow: hidden;
}

.article-featured-img {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}

.article-title-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center; /* Vertical centering */
    justify-content: center; /* Horizontal centering */
    background: linear-gradient(to bottom, 
                rgba(0, 0, 0, 0.3) 0%, 
                rgba(0, 0, 0, 0.7) 100%);
    text-align: center;
    padding: 20px;
    box-sizing: border-box;
}

.article-title-container {
    max-width: 1200px;
    width: 100%;
    padding: 0 30px;
}

.article-title {
    margin: 0;
    color: #fff;
    font-size: 2.5rem;
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.8);
    line-height: 1.3;
}

/* Content container with side margins */
.article-content-container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 30px;
    box-sizing: border-box;
}

/* Content section */
.article-content-section {
    padding: 50px 0;
}

/* Meta information */
.article-meta-list {
    list-style: none;
    padding: 0;
    margin: 0 0 40px;
    display: flex;
    flex-wrap: wrap;
    border-bottom: 1px solid #eee;
    padding-bottom: 20px;
}

.meta-item {
    width: 33.33%;
    color: #005F86;
    padding: 5px 10px;
    box-sizing: border-box;
    font-size: 0.95rem;
}

/* Article content */
.article-body-content {
    line-height: 1.6;
}

.article-excerpt {
    font-weight: 400;
    margin-bottom: 30px;
    font-size: 1.2rem;
    color: #333;
}

.article-full-text {
    margin-top: 30px;
}

/* Responsive adjustments */
@media (max-width: 992px) {
    .article-content-container {
        padding: 0 25px;
    }
    
    .article-title {
        font-size: 2rem;
    }
}

@media (max-width: 768px) {
    .meta-item {
        width: 100%;
        margin-bottom: 10px;
    }
    
    .article-content-container {
        padding: 0 20px;
    }
    
    .article-title {
        font-size: 1.8rem;
    }
    
    .article-featured-banner {
        max-height: 50vh;
    }
}

@media (max-width: 576px) {
    .article-content-container {
        padding: 0 15px;
    }
    
    .article-title {
        font-size: 1.5rem;
    }
    
    .article-content-section {
        padding: 30px 0;
    }
}
\\\\\\\\\\\\\\single news page style end\\\\\\\\\\\\\\

\\\\\\\\\\\\\\\single event page style \\\\\\\\\\\\\\\\\
.custom-template {
        position: relative;
        overflow-x: hidden;
    }
    
    .custom-banner-container {
        position: relative;
        width: 100%;
        height: 50vh;
        max-height: 500px;
        overflow: hidden;
    }
    
    .custom-banner-image {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }
    
    .custom-banner-overlay {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        background: rgba(0,0,0,0.5);
        color: #fff;
        text-align: center;
        padding: 20px;
    }
    
    .custom-banner-title {
        font-size: clamp(2rem, 5vw, 3rem);
        font-weight: 700;
        text-shadow: 1px 1px 3px rgba(0,0,0,0.8);
        margin: 0;
        padding: 0 15px;
		color: #ffffff;
    }
    
    /* Content section */
    .custom-content-section {
        padding: 3rem 0;
    }
    
    /* Optimized image loading */
    .custom-gallery-row {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
        gap: 1rem;
        margin: 1rem 0;
    }
    
    .custom-gallery-image {
        width: 100%;
        height: 200px;
        object-fit: cover;
        border-radius: 4px;
        background: #f5f5f5;
    }
    
    /* Lazy loading styles */
    .custom-lazy-load {
        opacity: 0;
        transition: opacity 0.3s ease;
    }
    
    .custom-lazy-load.loaded {
        opacity: 1;
    }
    
    /* Video section */
    .custom-video-container {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
        gap: 1.5rem;
        margin: 1rem 0;
    }
    
    .custom-video-wrapper {
        position: relative;
        padding-bottom: 56.25%; /* 16:9 aspect ratio */
        height: 0;
        overflow: hidden;
        background: #000;
    }
    
    .custom-video-iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border: none;
    }
    
    /* Links section */
    .custom-links-list {
        list-style-type: none;
        padding-left: 0;
    }
    
    .custom-links-item {
        margin-bottom: 0.8rem;
    }
    
    .custom-links-item a {
        color: #0d6efd;
        text-decoration: none;
        transition: color 0.2s;
    }
    
    .custom-links-item a:hover {
        color: #0a58ca;
        text-decoration: underline;
    }
    
    /* Responsive adjustments */
    @media (max-width: 768px) {
        .custom-banner-container {
            height: 40vh;
        }
        
        .custom-gallery-row {
            grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
        }
        
        .custom-gallery-image {
            height: 150px;
        }
		
		.custom-banner-title {
        	font-size: clamp(1.5rem, 4vw, 2.3rem);
        	font-weight: 700;
        	text-shadow: 1px 1px 3px rgba(0,0,0,0.8);
        	margin: 0;
        	padding: 0 15px;
			color: #ffffff;
    	}
    }
    
    @media (max-width: 576px) {
        .custom-banner-container {
            height: 35vh;
        }
        
        .custom-gallery-row {
            grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
        }
		
		.custom-banner-title {
        	font-size: clamp(1.5rem, 4vw, 2.3rem);
        	font-weight: 700;
        	text-shadow: 1px 1px 3px rgba(0,0,0,0.8);
        	margin: 0;
        	padding: 0 15px;
			color: #ffffff;
    	}
    }
\\\\\\\\\\\single event page style end\\\\\\\\\\\\\\\\



.team-list {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.team-list li {
    flex: 1 1 calc(33.333% - 20px); /* 3 items per row on desktop */
    display: block; /* default desktop */
    padding: 15px;
    border-radius: 8px;
    background: #f9f9f9;
	margin: 6px
}

.team-list li img {
    width: 130px;
    height: 170px;
    border-radius: 10px;
	margin-bottom:6px;
}

.team-list li .text {
    margin-top: 10px;
}


/* Tablet and smaller */
@media (max-width: 768px) {
    .team-list li {
        display: flex;
        flex-direction: column; /* stack rows */
        padding: 15px;
    }

    .team-list li .text {
        display: flex;
        flex-direction: row;
        align-items: center;
        margin-bottom: 10px;
    }

    .team-list li img {
        width: 90px;
        height: 90px;
        object-fit: cover;
		object-position: top;
        border-radius: 50%;
        margin-right: 15px;
        flex-shrink: 0;
    }

    .team-list li .text div {
        display: flex;
        flex-direction: column;
    }

    .team-list li .content-row {
        margin-top: 10px;
    }
}

/* Phones */
@media (max-width: 480px) {
    .team-list li img {
        width: 85px;
        height: 85px;
        margin-right: 12px;
    }

    .team-list li strong {
        font-size: 15px;
    }

    .team-list li .content-row {
        font-size: 13px;
    }
}
/* Desktop: show text2 in a single row */
.text2 {
    display: flex; /* horizontal row */
    align-items: flex-end; /* align text to bottom of image */
    gap: 15px; /* space between image and text */
}

.text2 img {
    width: 100px; /* adjust size as needed */
    height: 100px;
    object-fit: cover;
    border-radius: 10px;
    flex-shrink: 0; /* prevent shrinking */
}

.text2 div {
    display: flex;
    flex-direction: column;
    justify-content: flex-end; /* make text bottom-aligned */
    gap: 4px; /* reduce vertical space between title and excerpt */
}

.text2 strong {
    display: block;
    font-size: 18px;
    margin: 0;
}

.text2 span {
    display: block;
    color: #005f86;
    font-weight: 600;
    margin: 0;
}

.text {
        display: none;
    }

/* Hide text2 on mobile */
@media (max-width: 768px) {
    .text2 {
        display: none;
    }
    .text {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }
}
.content-row p {
    margin: 0;
    padding: 0;
}
.content-row {
    text-align: justify;
}
@media (max-width: 768px) {
    .team-list li .text {
        display: flex;
        flex-direction: row;
        align-items: center; /* vertically center */
        margin-bottom: 10px;
    }

    .team-list li .text img {
        width: 90px;
        height: 90px;
        object-fit: cover;
        border-radius: 50%;
        margin-right: 15px;
        flex-shrink: 0;
    }

    .team-list li .text div {
        display: flex;
        flex-direction: column;
        justify-content: center; /* vertically center text with image */
        gap: 4px;
    }
}
.text div span p {
    margin: 0;
    padding: 0;
    display: block; /* ensures it behaves like a block under strong */
}
