*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Geist", sans-serif;
    
}
a{
  text-decoration: none;
  color: black;
}
body{
  background-color: #ffffff;
}



/* top navigation ***********************************************************/
.social-icons a{
  color: white;
  transition: transform 0.5s ease, color 0.5s ease;
}
.social-icons a:hover {  
  color: #05f7eb; /* Change color on hover */
}
.complaintbtn{
  border: none;
  border-radius: 50px 0px 50px 0px ;
  background-color: white !important;
}
.top-title .assistance{
    display: inline-block; /* Ensures animation applies properly */
    font-weight: bold;
    background-color: #222; /* Dark background */
    color: white;
    padding: 5px 10px;
    border-radius: 5px;
    animation: textResize 1.5s infinite ease-in-out; /* Looping animation */
}

@keyframes textResize {
  0% { transform: scale(1); color: white;} /* Normal size, white text */
  50% { transform: scale(1.2); color: white; } /* Larger, yellow text */
  100% { transform: scale(1); color: white;} /* Back to normal */
}
.complaintbtn:hover{
background-color: skyblue;
border: none;
}
 /* navigation ***********************************************************/

.navbar .navbar-brand img{
  width: 230px;
}
#navbarNav ul li a.active{
  color: #0d5336;
}
#navbarNav ul li a{
    margin-right: 1px;   
    font-size: 15px;       
}
#navbarNav ul li a:hover{
  color: #0d5336;
}

.donate-btn {
    display: inline-block;
    padding: 5px 24px;
    margin-top: -7px;
    font-size: 16px;
    font-weight: bold;
    color: white;
    border: none;
    border-radius: 30px;   
    background: linear-gradient(90deg, #07f1a3, #2699fb,#0ff107); 
    background-size: 300% 300%;
    animation: gradientAnimation 4s infinite linear; /* Smooth looping effect */
    text-decoration: none;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* Hover effect */
.donate-btn:hover {
    transform: scale(1.08);
    box-shadow: 0px 4px 15px rgba(255, 215, 0, 0.5); /* Gold shadow effect */
}

/* Gradient animation */
@keyframes gradientAnimation {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}
/* Navbar Background */

/* Default Navbar Links */
.navbar-nav .nav-item .nav-link {
  color: #333333; /* Dark Grey */
  font-weight: 500;
  transition: all 0.3s ease-in-out;
}
/* Active Link (Same as Logo Green) */
.navbar-nav .nav-item .nav-link.active {
  color: #006400; /* Dark Green */
  font-weight: bold;  
}
/* Hover Effect for Other Links */
.navbar-nav .nav-item .nav-link:hover {
  color: #027A48; /* Slightly lighter green */
}
/* Open dropdown menu on hover */
.navbar-nav .dropdown:hover .dropdown-menu {
  display: block;
  margin-top: 0; /* Remove extra spacing */
}
/* Open dropdown on hover */
.navbar-nav .dropdown:hover .dropdown-menu {
  display: block;
  animation: fadeIn 0.3s ease-in-out;
}
/* Dropdown Fade-in Animation */
@keyframes fadeIn {
  from {
      opacity: 0;
      transform: translateY(10px);
  }
  to {
      opacity: 1;
      transform: translateY(0);
  }
}
/* Open dropdown on hover */
.navbar-nav .dropdown:hover .dropdown-menu {
  display: block;
  animation: fadeIn 0.3s ease-in-out;
}
/* Dropdown Fade-in Animation */
@keyframes fadeIn {
  from {
      opacity: 0;
      transform: translateY(10px);
  }
  to {
      opacity: 1;
      transform: translateY(0);
  }
}

/* Dropdown Menu Style */
.dropdown-menu {
  border-radius: 8px; /* Slightly rounded */
  border: 2px solid #cbd2de; /* Border color matching logo */
  box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.15); /* Softer shadow */
  background: linear-gradient(135deg, #cbd2de 30%, #cbd2de);
  padding: 5px;
  min-width: 180px;
}
/* Dropdown Item Style */
.dropdown-item {
  color: black;
  font-weight: 400;
  padding: 6px 10px;
  position: relative; /* Required for underline effect */
  transition: background 0.3s ease-in-out, transform 0.2s;
  border-radius: 5px;
}
/* White Underline Effect */
.dropdown-item::after {
  content: "";
  position: absolute;
  bottom: 4px; /* Positioning the line */
  left: 10%;
  width: 80%; /* Adjusting width */
  height: 2px; /* Thickness */
  background: white;
  opacity: 0;
  transform: scaleX(0);
  transition: opacity 0.3s, transform 0.3s ease-in-out;
}
/* Hover Effect */
.dropdown-item:hover {
  background: rgba(255, 255, 255, 0.2);
  transform: translateX(3px);
}
/* Show White Underline on Hover */
.dropdown-item:hover::after {
  opacity: 1;
  transform: scaleX(1);
}

/* hero carousal *************************************************************************************** */
/* .hero-benner{
  margin-top: 150px;
} */
.carousel-item {
 /*min-height: 300px;   Set desired height for the carousel */
}
.carousel-item img {
  width: 100%;
  height: 100%; /* Ensures the image fills the parent container */
  object-fit: cover; /* Prevents distortion and ensures full coverage */
  object-position: center center; /* Ensures the center of the image is visible */
  display: block; /* Ensures the image behaves as a block element */
}
/* Dots Indicators */
.carousel-indicators button {
    background-color: #28a745; /* Green color */
    border-radius: 50%;
    width: 12px;
    height: 12px;
}
.carousel-indicators .active {
    background-color: #1e5631; /* Darker green for active slide */
}
/* Navigation Arrows */
.carousel-control-prev-icon, .carousel-control-next-icon {
    background-color: rgba(0, 0, 0, 0.5);
    border-radius: 50%;
    padding: 10px;
}
/* news marquee ************************************************************************************************* */
.news-ticker {
  width: 100%;
  height: 100px; /* Adjust height */
  overflow: hidden;
  background-color: #e0e0e0; /* Adjust as needed */ 
  position: relative;
}
.news-list {
  display: flex;
  flex-direction: row;
  gap: 1px;
  animation: scrollHorizontal 50s linear infinite;
}
@keyframes scrollHorizontal {
  0% {
    transform: translateX(100%);
  }

  100% {
    transform: translateX(-100%);
  }
}
.news-item {
  display: inline-block;
  padding: 0 20px;
  white-space: nowrap;
}
.news-item a,.news-item i {
  color: rgb(8, 8, 8);
  font-size: 14px;
  text-decoration: none;
  transition: color .3s;  
  
}
.news-item a:hover {
  color: rgb(0, 89, 255);
  }

/* Pause animation on hover */
.news-ticker:hover .news-list {
  animation-play-state: paused;
}


.gallery-slider {
  width: 100%;
  height: 187px; /* Adjust height as needed */
  position: relative;
  overflow: hidden;
  margin-top: 14px;
}

.gallery-slider img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 1.5s ease-in-out;
}

.gallery-slider img.active {
  opacity: 1;
}

/* management profile  **************************************************************************************/
.profile-card {
  display: flex;
  align-items: center;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0px 10px 30px rgba(0, 0, 0, 0.2);;
  background: rgb(255, 255, 255);
  transition: transform 0.3s ease-in-out;
  padding: 10px 1px;
  
}

.profile-card:hover {
  box-shadow: 0px 15px 40px rgba(0, 0, 0, 0.3);
}

.profile-card img {
  width: 80px;
  height: 105px;
  object-fit: cover;
  border-radius: 6px;
  margin-right: 10px;
}

.profile-card .card-body {
  flex: 1;
  padding: 0;
}

.profile-card h5 {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 5px;
}

.profile-card p {
  font-size: 14px;
  color: gray;
  margin: 0;
}

/* our project  **********************************************************************************************/
.service-card {
  background: white;
  border-radius: 10px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease-in-out;
  padding-left: 5px;
 
}

.service-card:hover {
  transform: translateY(-5px);
}
.service-card::after {
  content: "View Detail";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%; 
  height: 40px; 
  background: rgba(8, 8, 8, 0.8); 
  color: white;
  font-size: 14px;
  text-align: center;
  line-height: 40px;
  opacity: 0; 
  transition: opacity 0.3s ease-in-out;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}
.service-card:hover::after {
  opacity: 1;
}
.service-card img {
  width: 60px;
  height: 60px;
  margin: 0 auto;  
  border-radius: 50%;
  margin-top: 10px;
  display: block;
  object-fit: cover;
 
}

.service-title {
  font-size: 16px;
  font-weight: bold;
  color: #007bff; /* Blue color */
  margin-bottom: 5px;
}
.card .card-body .counter{
  font-size: 1.4rem;
}
.service-card p {
  font-size: 12px;
  color: #555;
  margin-bottom: 0;
  text-align: left;
}

/* Different Background Colors */
.medical { background: rgba(255, 99, 132, 0.2); }
.education { background: rgba(54, 162, 235, 0.2); }
.shelter { background: rgba(233, 168, 188, 0.2); }
.old-home { background: rgba(116, 255, 2, 0.2); }
.cochlear { background: rgba(225, 224, 226, 0.2); }
.special-friend { background: rgba(177, 179, 186, 0.2); }
.srcl { background: rgba(0, 128, 0, 0.2); }
.ptc { background: rgba(255, 0, 0, 0.2); }
.sweet-home { background: rgba(255, 165, 0, 0.2); }
.wec { background: rgba(128, 0, 128, 0.2); }


/* counter  *************************************************************************************************/
 /* Counter Box Styling */
 .counter-box {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100%; /* Ensures all boxes take equal height */
  padding: 20px;
  border: 2px solid;
  border-radius: 10px;
  font-weight: bold;
  background: #fff;
  text-align: center;
  box-shadow: 0 15px 20px rgba(0, 0, 0, 0.2);
  transition: 0.3s;
}

/* Different Colored Borders */
.counter1 { border-color: blue; }
.counter2 { border-color: blueviolet; }
.counter3 { border-color: deeppink; }
.counter4 { border-color: gold; }

/* Hover Effect */
.counter-box:hover {
  transform: scale(1.05);
  
}

/* our client  ****************************************************************************************************/
.swiper-slide img {
  width: 350px; /* Adjust width as needed */
  height: 250px; /* Adjust height to make images larger */
  object-fit: cover; /* Ensures images don't stretch */
}


/* video with about us section*******************************************************************************8 */

/* Responsive Video */

#videoCarousel .carousel-item video {
  width: 100%;
  height: 100%;
  max-height: 250px; /* Controls video height */
  object-fit: cover; 
  
}

/* donation section  */
.donation-card {
  background: rgb(255, 255, 255);
  padding: 20px; 
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  text-align: center;
}
.donation-card img {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  margin-bottom: 10px;
}
.donation-amount {
  color: green;
  font-weight: bold;
}
/* help line button  */


/* scrollbar top buttom  */
#scrollTopBtn {
  position: fixed;
  bottom: 20px;
  right: 20px;
  display: none;
  background: #007bff;
  color: white;
  border: none;
  border-radius: 50%;
  width: 50px;
  height: 50px;
  font-size: 20px;
  cursor: pointer;
  transition: 0.3s;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}
#scrollTopBtn:hover {
  background: #0056b3;
}
/* helpline button  */

.helpline-fixed {
  position: fixed;
  bottom: 50%;
  right: 5px;
  z-index: 1050;
  background-color: #dce6e5;
  color: #2c7c81;
  border: none;
  border-radius: 2rem;
  padding: .3rem .9rem;
  display: flex;
  align-items: center;
  max-width: 250px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  transition: background-color 0.3s ease, transform 0.2s ease;
  overflow: hidden;
  text-align: left;
  box-sizing: border-box;
}
.helpline-fixed1 {
  position: fixed !important;
  bottom: 42% !important;
  right: 5px !important;
}
.helpline-fixed2 {
  position: fixed !important;
  bottom: 34% !important;
  right: 5px !important;
  letter-spacing: 5px;
}
.helpline-fixed:hover {
  background-color: #c8d8d7;
  transform: scale(1.02);
}

.helpline-fixed .icon {
  font-size: 20px;
  margin-right: 12px;
  flex-shrink: 0;
}

.helpline-text {
  display: flex;
  flex-direction: column;
}

.helpline-text  small {
  font-size: 10px;
  font-weight: bold;
  letter-spacing: 1px;
}

.helpline-text strong {
  font-size: 12px;
  letter-spacing: 2px;
  font-weight: 700;
  white-space: nowrap;
}
 /* WhatsApp Button Styling */
 .whatsapp-btn {
  position: fixed;
  bottom: 20px;
  left: 20px;
  background-color: #25D366;
  color: white;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  text-decoration: none;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
  transition: 0.3s;
  opacity: 0;
  visibility: hidden;
}

.whatsapp-btn.show {
  opacity: 1;
  visibility: visible;
}

/* news and events */
.hover-shadow:hover {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  transform: translateY(-4px);
  transition: 0.3s ease;
}
/*-----------------------
	FAQ 1
-----------------------*/
.faq-wrapper {
	display: block;
	background: #f3f6f8;
}
.faq-wrapper .search-block {
	background: #fff;
	border-radius: 4px;
	box-shadow: 0px 4px 4px #eaedef;
}
.faq-wrapper .search-block input {
	height: 58px;
}
.faq-wrapper .search-block .search {
	width: 58px;
	height: 58px;
	border-radius: 0px 4px 4px 0px;
}
ul.faq-listing {
	display: block;
}
ul.faq-listing li {
	margin-bottom: 25px;
	position: relative;
}
ul.faq-listing li:after {
	width: 1px;
	height: calc(100% - 25px);
	display: block;
	position: absolute;
	top: 0px;
	right: 0px;
	background: #e2e4e6;
	content: "";
}
ul.faq-listing li:nth-child(even):after {
	display: none;
}
ul.faq-listing li:nth-child(even) .inner {
	padding-left: 88px;
}
ul.faq-listing li:nth-child(even) .inner:before {
	left: 20px;
}
ul.faq-listing li:nth-last-child(2) .inner, ul.faq-listing li:last-child .inner {
	border-bottom: none;
}
ul.faq-listing li .inner {
	display: block;
	padding: 50px 40px 50px 68px;
	border-bottom: 1px #e2e4e6 solid;
	position: relative;
}
ul.faq-listing li .inner:before {
	position: absolute;
	left: 0px;
	top: 58px;
	font-family: 'icomoon';
	font-size: 46px;
	color: #c5d4da;
	content: "\e91c";
}
ul.faq-listing li h2 {
	padding-bottom: 20px;
	font-size: 18px;
	color: #284962;
	text-transform: uppercase;
	line-height: 26px;
}
.faq-wrapper hr {
	margin: 0px;
	border-color: #e2e4e6;
}
.faq-wrapper .text-center, .testimonial-outer .text-center {
	margin-top: 80px;
}
.pagination.blue > li > a, .faq-wrapper .pagination.blue > li > span {
	background: #e3edf5;
}
.pagination.blue > li > a:focus, .pagination.blue > li > a:hover, .pagination.blue > li > span:focus, .pagination.blue > li > span:hover {
	background: #ff9600;
}

/*-----------------------
	FAQ 2
-----------------------*/
.faq-wrapper.faq2{
	background:#fff;
}
.faq-wrapper.faq2 .search-block{
    padding-left: 50px;
	box-shadow:none;
}
.faq-wrapper.faq2 .search-block input{
	border:2px #ff9600 solid;
	border-radius:4px 0 0 4px;
	border-right:none;
}
.panel-default{
	background:none;
	border:none;
	border-bottom:1px #ececec solid;
	border-radius:0px !important;
	box-shadow:none;
}
.panel-group .panel + .panel{
	margin:0px;
}
.panel-default > .panel-heading{ 
	padding:22px 0px;
	background:none;
	border:none;
	color:#738c9f;
}
.panel-default .panel-title{
	font-size:18px;
	text-transform:inherit;
}
.panel-default .panel-title a{
    display: block;
    padding-left: 50px;
    position: relative;
    color:#284962;
}
.panel-default .panel-title a:before,
.panel-default .panel-title a.collapsed:before{
    position: absolute;
    left: 0px;
    top: -15px;
    font-family: 'Roboto', sans-serif;
	font-weight:300;
	font-size:46px;
}
.panel-default .panel-title a:before{
	top:-20px;
	content:" - ";
	color:#284962;
}
.panel-default .panel-title a.collapsed{
	color:#738c9f;
}
.panel-default .panel-title a.collapsed:before{
	content:" + ";
	color:#b9c5cf;
}
.panel-default .panel-body{ 
	padding:0 0 15px 50px;
}
.panel-default .panel-body p{ 
	padding-bottom:15px;
}
.panel-default > .panel-heading + .panel-collapse > .panel-body{ 
	border:none;
}


/* news and events using slide */
.slider-container {
  overflow-x: auto;
  white-space: nowrap;
  scroll-behavior: smooth;
  border: 1px solid #ccc;
  padding: 1rem;
  position:relative;
  overflow: hidden;
}
.newscard {
  flex: 0 0 auto;
  width: 80vw;
  max-width: 300px;
  margin-right: 16px;
}

.card-body {
overflow: hidden;
text-overflow: ellipsis;
white-space: normal; /* or 'nowrap' if you want truncation */
}
.slider-track {
  display: inline-flex;
  flex-wrap: nowrap;
  will-change: scroll-position;
}


/* Optional: Hide scrollbar */
.slider-container::-webkit-scrollbar {
  display: none;
}

.slider-container {
  -ms-overflow-style: none;
  scrollbar-width: none;
}


    /* onpage load popup Modal animation *************************************************/
    /* .modal.fade .modal-dialog {
      transform: translateY(-20px);
      transition: all 0.4s ease-in-out;
    }
    .modal.show .modal-dialog {
      transform: translateY(0);
    }

    .modal-content {
      border-radius: 1rem;
      box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
      padding: 1rem;
      backdrop-filter: blur(10px);
    }

    .modal-img {
      width: 100%;
      height: auto;
      border-radius: 0.5rem;
      object-fit: cover;
    }

    .modal-body {
      text-align: center;
    }

    .search-group {
      max-width: 100%;
      margin: 0 auto;
    }

    .search-group input {
      border-radius: .5rem;
      border: 1px solid #0bf354 !important; 
      border-radius: 0.5rem;
      outline: none;
      transition: border-color 0.3s ease;
    
    }
    .search-group input:focus {
      border-color: #0a58ca;
      box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.25);
    }
    .search-group button {
      border: none;
      border-radius: 0.5rem;
      padding: 0.5rem 1.25rem;
      height: 100%;
      white-space: nowrap;
      box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
      transition: background-color 0.3s ease;
    }

    .search-group button:hover {
      background-color: #0b5ed7;
      color: #fff;
    }

    .timer-text {
      font-size: 1rem;
      color: #6c757d;
      margin-top: 10px;
    }

    @media (max-width: 576px) {
      .search-group button {     
       padding: .5rem 2.5rem;  
       
    }

      .search-group input {
        margin-bottom: 10px;
      }
    }

    .modal-dialog {
      max-width: 500px;
    }

     Optional: blur background when modal is open 
    body.modal-open {
      overflow: hidden;
    }

    body.modal-open::before {
      content: "";
      position: fixed;
      top: 0; left: 0; right: 0; bottom: 0;
      background: rgba(255, 255, 255, 0.3);
      backdrop-filter: blur(6px);
      z-index: 1040; /* under modal (z-index 1050) 
    }
   
   */