*{
	box-sizing: border-box;
}
body{
	margin: 0;
	padding: 0;
	top: 0;
	left: 0;
	right: 0;
	font-size: 16px;
	font-family: Segoe UI,SegoeUI,"Helvetica Neue",Helvetica,Arial,sans-serif;
}
ul{
	padding: 20px;
}
p{
	color:#444 ;
	font-size: 14px;
	line-height: 1.5;
	margin: 0px;
}
h1,h2,h3,h4,h5,h6{
	margin: 0px;
}
button{
	padding: 5px 10px;
	font-size: 18px;
	border-radius: 10px;
	color: white;
	background:#ffffff ;
	cursor: pointer;
	outline: 0px;
	border: none;
}

.container {
    width: 100%;
    max-width: 1200px;      
    margin: 0 auto;        
    padding: 0 20px;     
    box-sizing: border-box;
    position: relative;   
}
/* Base reusable button */
.btn_r {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 12px 28px;
	font-size: 16px;
	font-weight: 600;
	margin-top: 20px;
	margin-bottom: 30px;
	border: none;
	border-radius: 8px;
	cursor: pointer;
	text-decoration: none;
	transition: all 0.3s ease;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  }
  
  /* Primary color variant */
  .btn-primary {
	background: linear-gradient(135deg, #ffd52e, #a07c00);
	color: #fff;
  }
  
  .btn-primary:hover {
	transform: translateY(-2px);
	font-size: 17px;
	box-shadow: 0 6px 14px rgba(0, 0, 0, 0.15);
  }
  
  /* Optional: secondary variant */
  .btn-secondary {
	background: #fff;
	color: #f6d365;
	border: 2px solid #f6d365;
  }
  
  .btn-secondary:hover {
	background: #f6d365;
	color: #fff;
  }
  
  /* Small size */
  .btn-sm {
	padding: 8px 20px;
	font-size: 14px;
  }
  
  /* Large size */
  .btn-lg {
	padding: 16px 36px;
	font-size: 18px;
  }


/*Top Header */
#top-header {
    margin:0;
    margin-bottom: 0px;
    width: 100%;
	display: inline-table;
	background-color: #0e3600;
	padding: 10px 100px;
}

   .top-contact{
    width: 80%;
    float: left;
  }
  .top-contact {
    display: flex; 
    gap: 20px;    
    align-items: center; 
    font-size: 16px;
}

.top-contact span {
    display: flex;
    align-items: center;
	color: #fff;
	margin-top: 5px;
}

.top-contact i {
    margin-right: 8px; 
}

.top-contact h6{
    margin: 0; 
    font-size: 16px; 
	font-weight: 300;
}
.top-contact a{
	color: #fff;
	font-size: 16px;
}

  .top-social{
    float: right;
    margin-right: 30px;
  }
  .top-social a i{
    text-align: left;
	margin-right: 20px;
	line-height: 2;
    font-size: 19px;
    color: #fff;
  }
  .top-social a i:hover,.top-contact a i:hover{
    color: #BB853D;
  }


/*

/*Top Header */
.navigation {
	height: 90px;
	margin-top: -10px;
	padding: 10px 108px;
	background: #ffff;
}

.brand {
	width: 10%;
	position: absolute;
	float: left;
	margin: 0;
	padding: 10px;
	border-radius: 10px;
	z-index: 200;
	background: #fff;
    -webkit-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.brand img {
	width: 100%;
}

.brand a, .brand a:visited {
	color: #0e3600;
	text-decoration: none;
}

.nav-container {
	max-width: 100%;
	margin: 0 auto;
}
/* Existing styles */

nav {
    float: right;
}

nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    float: right;
	margin-top: 7px;
}



nav ul li {
    float: left;
    position: relative;
    -webkit-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    padding: 5px 10px;
}

nav ul li a, nav ul li a:visited, nav ul li h5 {
    display: block;
    padding: 18px 10px;
    font-size: 16px;
	cursor: pointer;
    font-weight: 500;
    margin: 0px;
    color: #175800;
    text-decoration: none;
    -webkit-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

nav ul li a {
    background: transparent;
    color: #175800;
    -webkit-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

nav ul li a:hover {
    border-bottom: 3px #BB853D solid;
    cursor: pointer;
    -webkit-transform: translateX(5px);
    -moz-transform: translateX(5px);
    -ms-transform: translateX(5px);
    -o-transform: translateX(5px);
    transform: translateX(5px);
}

nav ul li a:hover, nav ul li a:visited:hover, nav ul li h5:hover {
    color: #BB853D;
    -webkit-transform: translateX(5px);
    -moz-transform: translateX(5px);
    -ms-transform: translateX(5px);
    -o-transform: translateX(5px);
    transform: translateX(5px);
}

nav ul span {
    background: #000;
    color: #fff;
}
/* =========================
   NAV WRAPPER
========================= */

nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

nav ul li {
    position: relative;
}

/* =========================
   DROPDOWN BASE (MEGA MENU)
========================= */

.navbar-dropdown {
    position: absolute;
    top: 100%;
    left: 0;

    min-width: 260px;
    background: #fff;

    border-radius: 12px;
    box-shadow: 0 20px 50px rgba(0,0,0,0.12);

    padding: 10px 0;
    z-index: 999;

    /* animation system */
    opacity: 0;
    visibility: hidden;
    transform: translateY(12px);
    transition: all 0.25s ease;

    pointer-events: none;
}

/* OPEN STATE */
.navbar-dropdown.open {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
}

/* =========================
   DROPDOWN LINKS
========================= */

.navbar-dropdown li {
    width: 100%;
}

.navbar-dropdown li a {
    display: block;
    padding: 9px 18px;
    font-size: 14px;
    color: #111;
    text-transform: capitalize;
    transition: all 0.2s ease;
}

.navbar-dropdown li a:hover {
    padding-left: 22px;
}

/* =========================
   ACTIVE NAV LINK
========================= */

nav ul li a.current {
    color: #BB853D;
    font-weight: 600;
    position: relative;
}

/* underline animation */
nav ul li a.current::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 100%;
    height: 2px;
    background: #BB853D;
}

/* active parent dropdown */
.has-dropdown.active > a {
    color: #BB853D;
    font-weight: 600;
}
nav ul li a.current::before {
    content: "";
    position: absolute;
    left: -10px;
    top: 50%;
    transform: translateY(-50%);
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #BB853D;
}
/* =========================
   PARENT MENU ITEM
========================= */

.has-dropdown > a {
    position: relative;
    display: inline-block;
    padding-right: 18px;
}

/* dropdown arrow */
.has-dropdown > a::after {
    content: "▾";
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 12px;
    opacity: 0.7;
}

/* =========================
   MOBILE NAV TOGGLE
========================= */

.nav-mobile {
    display: none;
    position: absolute;
    right: 20px;
    top: 25px;
    z-index: 9999;
}

/* hamburger button */
#navbar-toggle {
    width: 50px;
    height: 50px;
    cursor: pointer;
    position: relative;
}

#navbar-toggle span,
#navbar-toggle span::before,
#navbar-toggle span::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 3px;
    background: #175800;
    transition: all 0.3s ease;
    border-radius: 2px;
}

#navbar-toggle span {
    top: 50%;
    transform: translateY(-50%);
}

#navbar-toggle span::before {
    top: -10px;
}

#navbar-toggle span::after {
    top: 10px;
}

/* ACTIVE ANIMATION */
#navbar-toggle.active span {
    background: transparent;
}

#navbar-toggle.active span::before {
    transform: rotate(45deg);
    top: 0;
}

#navbar-toggle.active span::after {
    transform: rotate(-45deg);
    top: 0;
}

/* =========================
   MOBILE NAV STRUCTURE
========================= */

@media (max-width: 992px) {

    .nav-mobile {
        display: block;
    }

    nav {
        float: none;
    }

    nav ul {
        display: none;
        width: 100%;
        background: #fff;
        position: absolute;
        top: 90px;
        left: 0;
        flex-direction: column;
        box-shadow: 0 10px 30px rgba(0,0,0,0.1);
    }

    nav ul.open {
        display: block;
    }

    nav ul li {
        float: none;
        width: 100%;
    }

    .navbar-dropdown {
        position: static;
        box-shadow: none;
        opacity: 1;
        visibility: visible;
        transform: none;
        display: none;
    }

    .navbar-dropdown.open {
        display: block;
    }
}

/* =========================
   HOVER SUPPORT (DESKTOP)
========================= */

@media (min-width: 993px) {
    .has-dropdown:hover .navbar-dropdown {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
        pointer-events: auto;
    }
}

/* =========================
   MOBILE MENU FIX
========================= */

@media (max-width: 992px) {

    .navbar-dropdown {
        position: static;
        box-shadow: none;
        transform: none;

        display: none;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;

        padding-left: 10px;
    }

    .navbar-dropdown.open {
        display: block;
		padding: 0px;
    }

    .has-dropdown > a::after {
        position: static;
        margin-left: 6px;
        transform: none;
    }
}

/* =========================
   ACTIVE LINK
========================= */

nav ul li a.current {
    color: #BB853D;
    border-bottom: 2px solid #BB853D;
}

/* =========================
   MOBILE TOGGLE (HAMBURGER)
========================= */

.nav-mobile {
    display: none;
    position: absolute;
    right: 0;
    top: 0;
}

@media (max-width: 992px) {
    .nav-mobile {
        display: block;
    }
}

#navbar-toggle {
    cursor: pointer;
}

#navbar-toggle span,
#navbar-toggle span:before,
#navbar-toggle span:after {
    content: '';
    display: block;
    width: 35px;
    height: 4px;
    background: #00310b;
    position: absolute;
    transition: 0.3s;
}

#navbar-toggle span:before {
    top: -8px;
}

#navbar-toggle span:after {
    top: 8px;
}

#navbar-toggle.active span {
    background: transparent;
}

#navbar-toggle.active span:before {
    transform: rotate(45deg);
    top: 0;
}

#navbar-toggle.active span:after {
    transform: rotate(-45deg);
    top: 0;
}

/* Sticky */
.sticky {
    position: fixed;
    top: 0;
    background-color: #000;
	height: 67px;
    left: 0;
    width: 100%;
    z-index: 250;
    box-shadow: 0 19px 38px rgba(0,0,0,0.10), 0 15px 12px rgba(0,0,0,0.02);
}
.sticky nav ul li{
	padding: 0px 10px;
}
.sticky 
.brand {
    width: 6%;
}
.sticky  nav ul li a, .sticky nav ul li a:visited, .sticky nav ul li h5 {
    font-size: 15px;
	margin-top: 11px;
}

/* End Header */

/* End Logo Header */

header nav {
    position: relative;
    font-size: 16px;
    text-transform: capitalize;
    font-weight: 300;
    width: 100%;
	float: left;
    margin: 0;
    height: 60px;
    z-index: 100;
}

.menu-icon {
    float: right;
    padding: 15px 20px;
    text-align: right;
    cursor: pointer;
    color: #fff;
    font-size: 30px;
    display: none;
}

.menu-icon p a {
    font-size: 30px;
    color: #fff;
}

/* New styles for the 'Join Our Glub' link */
.join-link {
    display: inline-block; 
    padding: 10px 20px; 
    text-decoration: none; 
    border-radius: 5px; 
    font-weight: 500;
	margin-top: 5px;
	color: #fff;
	background-color: #175800;
    transition: background-color 0.3s ease; 
	-webkit-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
nav ul li a.join-link{
	color: #fff;
	font-size: 20px;
	background-color: #175800;
}


a.join-link:hover {
    background-color: darkgoldenrod; 
	color: #fff; 
}
 li a.join-link:hover{
	border: none;
	color: #fff;
}


/*==================
 breadcrumb
====================*/
#mu-page-breadcrumb {
	height: 300px;
	position: relative;
	width: 100%;
	background-image: url("../images/slider/slider2.jpg");
	background-size: cover;
	background-attachment: fixed;
	background-position:center;
	top: 0; 
	margin-top: 0px;
	margin-bottom: 20px;
	position: relative;
	padding: 20px;
	z-index: 9;
	float: left;
}
#mu-page-breadcrumb:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #000;
    opacity: .4;
	width: 100%;
    z-index: -10;
}
.mu-page-breadcrumb-area {
    position: relative;
    top: 0%;
}

.mu-page-breadcrumb-area h1{
	margin-top: 70px;
	  color:#fff;
	font-size: 50px;
	font-weight: 500;
	text-align: center;
}


.mu-page-breadcrumb-area .breadcrumb span{
	margin-left: 20px;
}
.mu-page-breadcrumb-area .breadcrumb li {
	font-size: 20px;
	list-style: none;
	margin-left: 10px;
	color: #fff;
	display: inline-grid;
}

.mu-page-breadcrumb-area .breadcrumb li a {
  color:  #fff;
	font-weight: bold;
}

.mu-page-breadcrumb-area li a:hover{
  color:#aad2fa;
	border-bottom: 1px yellow solid;
}


/*==================
 breadcrumb  END
====================*/
/* ===============================
   HERO SLIDER - PREMIUM SYSTEM
=============================== */

#hero-slider {
    position: relative;
    width: 100%;
    height: 70vh;
    overflow: hidden;
}

/* SWIPER BASE */
.heroSwiper {
    width: 100%;
    height: 100%;
}

.heroSwiper .swiper-wrapper {
    width: 100%;
    height: 100%;
}

/* SLIDE CORE FIX (IMPORTANT FOR WIDTH BUGS) */
.heroSwiper .swiper-slide {
    width: 100% !important;
    height: 100%;
    position: relative;
    display: flex;
}

/* ===============================
   BACKGROUND SLIDE
=============================== */
.slide {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;

    display: flex;
    align-items: center;
}

/* ===============================
   DARK PREMIUM OVERLAY
=============================== */
.slide .overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        120deg,
        rgba(0,0,0,0.85) 0%,
        rgba(0,0,0,0.55) 45%,
        rgba(0,0,0,0.25) 100%
    );
    z-index: 1;
}

/* ===============================
   CONTENT AREA
=============================== */
.slide-content {
    position: relative;
    z-index: 2;
    color: #fff;

    max-width: 650px;
    padding: 20px;
    margin-left: 8%;

    animation: slideUp 1s ease both;
}

/* TAG */
.slide-tag {
    display: inline-block;
    font-size: 13px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #ffc107;
    margin-bottom: 12px;
    font-weight: 600;
}

/* TITLE */
.slide-title {
    font-size: 44px;
    font-weight: 800;
    line-height: 1.15;
    margin-bottom: 15px;
}

/* DESCRIPTION */
.slide-desc {
    font-size: 18px;
    line-height: 1.7;
    color: rgba(255,255,255,0.9);
    margin-bottom: 25px;
}

/* ===============================
   BUTTONS (PREMIUM STYLE)
=============================== */
.slide-buttons {
    gap: 14px;
    flex-wrap: wrap;
}

.btn-primary,
.btn-secondary {
    padding: 14px 28px;
    border-radius: 50px;
    font-weight: 600;
    font-size: 14px;
    text-decoration: none;
    transition: all 0.3s ease;
}

/* PRIMARY BUTTON */
.btn-primary {
    background: linear-gradient(135deg, #0d6efd, #0047b3);
    color: #fff;
}

.btn-primary:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(13,110,253,0.35);
}

/* SECONDARY BUTTON */
.btn-secondary {
    background: #ffc107;
    color: #000;
}

.btn-secondary:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(255,193,7,0.35);
}

/* ===============================
   NAVIGATION BUTTONS
=============================== */
.heroSwiper .swiper-button-next,
.heroSwiper .swiper-button-prev {
    color: #fff;
    width: 50px;
    height: 50px;
    background: rgba(0,0,0,0.4);
    border-radius: 50%;
    backdrop-filter: blur(8px);
    transition: 0.3s;
}

.heroSwiper .swiper-button-next:hover,
.heroSwiper .swiper-button-prev:hover {
    background: rgba(0,0,0,0.7);
    transform: scale(1.1);
}

/* ===============================
   PAGINATION
=============================== */
.heroSwiper .swiper-pagination {
    bottom: 25px !important;
}

.heroSwiper .swiper-pagination-bullet {
    width: 10px;
    height: 10px;
    background: rgba(255,255,255,0.5);
    opacity: 1;
    transition: 0.3s;
}

.heroSwiper .swiper-pagination-bullet-active {
    width: 25px;
    border-radius: 20px;
    background: #ffc107;
}

/* ===============================
   ANIMATION FIX
=============================== */
@keyframes slideUp {
    from {
        opacity: 0;
        transform: translateY(40px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ONLY ACTIVE SLIDE ANIMATES */
.heroSwiper .swiper-slide-active .slide-content {
    animation: slideUp 0.9s ease both;
}

/* ===============================
   RESPONSIVE
=============================== */
@media (max-width: 992px) {
    .slide-title {
        font-size: 38px;
    }

    .slide-desc {
        font-size: 16px;
    }

    .slide-content {
        margin-left: 5%;
    }
}

@media (max-width: 600px) {
    #hero-slider {
        height: 85vh;
    }

    .slide-title {
        font-size: 28px;
    }

    .slide-desc {
        font-size: 14px;
    }

    .slide-buttons {
        flex-direction: column;
        align-items: flex-start;
    }
}
/*==================
 breadcrumb  END
====================*/
#home-banner{
	width: 100%;
	float: left;
	padding:20px 150px;
	background-color: darkgoldenrod;
	  }

.hb_section h3{  
	float: left;
	width: 70%;
	color: #fff;
	font-weight: 400;
	font-size: 30px;
}
.hb_btn a{
    padding: 10px 50px; 
    background: none;
    color: #ffffff; 
    text-decoration: none; 
	border: 2px #fff solid;
    border-radius: 20px; 
    font-weight: 500;
	float: right;
	font-size: 25px;
    transition: background-color 0.3s ease; 
	-webkit-transition: all 0.5s ease;
    -ms-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

.hb_btn a:hover {
    background-color: #ffff; 
	color: darkgoldenrod; 

}
.hb_btn:hover{
	border: none;
}

/*Home About*/
#ho_about {
	width: 100%;
	float: left;
	padding: 50px 0px;
	position: relative;
	background: #00310b url('../images/slider/slider2.jpg') center center/cover no-repeat;
	color: #fff; /* makes text readable */
	z-index: 1;
  }
  
  #ho_about::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 73, 1, 0.912); /* adjust opacity (0.3–0.7) */
	z-index: -1;
  }
  
  #ho_about h2 {
	position: relative;
	text-align: center;
	font-size: 26px;
	width: 100%;
	color: #fff;
	display: inline-block;
	margin: 0 auto;
	margin-bottom: 30px;
  }
  
  #ho_about h2::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -8px;
	transform: translateX(-50%);
	width: 60px;
	height: 3px;
	background: #ffd56c;
	border-radius: 2px;
  }
  
  
  .hb-container {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
	gap: 20px;
  }
  
  .hb-grid {
	padding: 20px;
	border-radius: 8px;
	transition: transform 0.3s ease;
	display: flex;
  }
  
  .hb-grid:hover {
	transform: translateY(-5px);
	box-shadow: 0 8px 15px rgba(0, 0, 0, 0.2);
	background: rgba(255, 213, 108, 0.06); /* soft gold tint */

  }
  
  .hb-icon-title {
	align-items: center;
	margin-bottom: 15px;
  }
  
  .hb-grid i {
	font-size: 40px;
	color: #ffd56c;             /* icon color */
	background: rgba(255, 213, 108, 0.092); /* soft gold tint */
	border: 2px solid #ffd56c;  /* outline */
	border-radius: 50%;         /* make it perfectly round */
	padding: 20px;
	margin-right: 10px;
	display: inline-flex;       /* center icon inside */
	align-items: center;
	justify-content: center;
	width: 80px;                /* fixed size circle */
	height: 80px;
	transition: all 0.3s ease;
  }
  
  /* Optional: Hover effect */
  .hb-grid i:hover {
	background: #ffd56c;
	color: #00310b;             /* contrast when hovered */
	transform: scale(1.1);
  }
  
  
  .hb-icon-title h3 {
	margin: 0;
	font-size: 30px;
	font-weight: 500;
	color: #ffd56c;
  }
  
  .hb-grid p {
    margin-top: 20px;
    color: #fff;
  }
  
  .hb-grid ul {
	padding-left: 20px;
	margin-top: 20px;
  }
  
  .hb-grid li {
	margin-bottom: 8px;
	list-style: decimal;
  }
  
  .hb-grid li:last-child {
	margin-bottom: 0;
  }
  
/*Homepage Banner */
#head-about{
	background-image: url("../images/slider/banner2.jpg");
	width: 100%;
	float: left;
}
#head-about .image{
	width: 50%;
	float: left;
}
#head-about .image img{
	width: 100%;
}

#head-about .content{
	margin-top: 150px;
	float: right;
	width: 50%;
	padding: 20px;
}
#head-about .content h1{
	font-size: 40px;
	font-weight: 500;
}

/*End Homepage Banner */

.impact-stories {
	width: 100%;
	float: left;
	padding: 60px 0px !important;
  position: relative;
  z-index: 5;
	text-align: center;
  }
  /* =========================================
   IMPACT STORIES — PREMIUM UI
========================================= */

.impact-stories {
  position: relative;
  padding: 7rem 0;
  background:
      radial-gradient(circle at top left, rgba(12, 98, 71, 0.08), transparent 30%),
      radial-gradient(circle at bottom right, rgba(255, 183, 77, 0.08), transparent 30%),
      #f8fafc;
  overflow: hidden;
}

/* =========================================
 SECTION HEADER
========================================= */

.impact-stories .section-header {
  max-width: 760px;
  margin: 0 auto 4rem;
  text-align: center;
}

.impact-stories .section-header h2 {
  font-size: clamp(2.2rem, 5vw, 2.5rem);
  line-height: 1.1;
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 1rem;
  letter-spacing: -1px;
}

.impact-stories .section-header p {
  font-size: 1.05rem;
  line-height: 1.9;
  color: #64748b;
  max-width: 650px;
  margin: auto;
}

/* =========================================
 GRID
========================================= */

.stories-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 2rem;
}

/* =========================================
 CARD
========================================= */

.story-card {
  position: relative;
  border-radius: 28px;
  overflow: hidden;
  background: #ffffff;
  box-shadow:
      0 10px 30px rgba(15, 23, 42, 0.06),
      0 2px 8px rgba(15, 23, 42, 0.04);
  transition:
      transform 0.45s ease,
      box-shadow 0.45s ease;
  isolation: isolate;
}

.story-card:hover {
  transform: translateY(-12px);
  box-shadow:
      0 28px 60px rgba(15, 23, 42, 0.14),
      0 8px 24px rgba(15, 23, 42, 0.08);
}

/* =========================================
 LINK
========================================= */

.story-card__link {
  display: flex;
  flex-direction: column;
  height: 100%;
  text-decoration: none;
  color: inherit;
}

/* =========================================
 IMAGE WRAP
========================================= */

.story-card__image-wrap {
  position: relative;
  overflow: hidden;
  height: 260px;
}

.story-card__image-wrap::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
      linear-gradient(
          to top,
          rgba(0,0,0,0.45),
          rgba(0,0,0,0.05)
      );
  z-index: 1;
}

/* =========================================
 IMAGE
========================================= */

.story-card__image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition:
      transform 0.8s ease,
      filter 0.5s ease;
}

.story-card:hover .story-card__image {
  transform: scale(1.08);
  filter: brightness(1.05);
}

/* =========================================
 CATEGORY BADGE
========================================= */

.story-card__category {
  position: absolute;
  top: 1.2rem;
  left: 1.2rem;
  z-index: 3;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  padding: 0.55rem 1rem;

  border-radius: 999px;

  background: rgba(255,255,255,0.14);
  backdrop-filter: blur(14px);

  border: 1px solid rgba(255,255,255,0.25);

  color: #fff;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

/* =========================================
 BODY
========================================= */

.story-card__body {
  display: flex;
  flex-direction: column;
  flex: 1;

  padding: 2rem;
}

/* =========================================
 DATE
========================================= */

.story-card__date {
  display: inline-block;
  margin-bottom: 1rem;

  font-size: 0.88rem;
  font-weight: 600;

  color: #0c6247;
  letter-spacing: 0.4px;
}

/* =========================================
 TITLE
========================================= */

.story-card__title {
  font-size: 1.45rem;
  line-height: 1.35;
  font-weight: 800;

  color: #0f172a;

  margin-bottom: 1rem;

  transition: color 0.3s ease;
}

.story-card:hover .story-card__title {
  color: #0c6247;
}

/* =========================================
 EXCERPT
========================================= */

.story-card__excerpt {
  color: #64748b;
  line-height: 1.85;
  font-size: 1rem;

  margin-bottom: 2rem;

  flex-grow: 1;
}

/* =========================================
 CTA
========================================= */

.story-card__cta {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;

  font-size: 0.95rem;
  font-weight: 700;

  color: #0c6247;

  transition:
      gap 0.3s ease,
      transform 0.3s ease;
}

.story-card__cta::after {
  content: "→";
  font-size: 1rem;
  transition: transform 0.3s ease;
}

.story-card:hover .story-card__cta {
  gap: 1rem;
}

.story-card:hover .story-card__cta::after {
  transform: translateX(4px);
}

/* =========================================
 BUTTON
========================================= */

.impact-stories .btn_r {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  margin: 4rem auto 0;
  padding: 1rem 2rem;

  border-radius: 999px;

  background: linear-gradient(
      135deg,
      #0c6247,
      #12805d
  );

  color: #fff;
  font-weight: 700;
  text-decoration: none;

  box-shadow:
      0 10px 25px rgba(12, 98, 71, 0.22);

  transition:
      transform 0.35s ease,
      box-shadow 0.35s ease;
}

.impact-stories .btn_r:hover {
  transform: translateY(-4px);

  box-shadow:
      0 18px 40px rgba(12, 98, 71, 0.32);
}

/* =========================================
 MOBILE
========================================= */

@media (max-width: 768px) {

  .impact-stories {
      padding: 5rem 0;
  }

  .stories-grid {
      gap: 1.5rem;
  }

  .story-card__body {
      padding: 1.5rem;
  }

  .story-card__title {
      font-size: 1.25rem;
  }

  .story-card__excerpt {
      font-size: 0.95rem;
  }
}

  /* =========================
FEATURED PROJECTS SWIPER
========================= */
.featured-projects {
    padding: 100px 0;
    background: #f8fafc;
    position: relative;
}

.featured-projects .test_text {
    text-align: center;
    margin-bottom: 50px;
}

.featured-projects .test_text h2 {
    font-size: 34px;
    font-weight: 800;
    letter-spacing: 2px;
    color: #111;
    position: relative;
}

.featured-projects .test_text h2::after {
    content: "";
    width: 80px;
    height: 3px;
    background: #111;
    display: block;
    margin: 15px auto 0;
    border-radius: 10px;
}

.featured-projects .swiper-slide {
    height: auto;
    display: flex;
}

/* CARD BASE */
.project-card,
.view-all-card {
    width: 100%;
    height: 350px; /* FIXED HEIGHT */
    display: flex;
    flex-direction: column;
    border-radius: 18px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.view-all-card p{
  color: var(--ev-gold-light);
  margin-bottom: 30px;
}

.project-card:hover,
.view-all-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 45px rgba(0,0,0,0.12);
}

/* IMAGE SECTION */
.project-card-image {
    height: 55%;
    overflow: hidden;
    position: relative;
}

.project-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.project-card:hover .project-card-image img {
    transform: scale(1.08);
}

/* CONTENT SECTION */
.project-card-content {
    height: 45%;
    padding: 18px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* TITLE */
.project-card-content h3 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 8px;
    color: #111;
}

/* TEXT */
.project-card-content p {
    font-size: 14px;
    line-height: 1.5;
    color: #666;
    flex-grow: 1;
}

/* BUTTON */
.project-btn {
    display: inline-block;
    margin-top: 10px;
    padding: 10px 14px;
    background: #111;
    color: #fff;
    font-size: 13px;
    border-radius: 8px;
    text-decoration: none;
    text-align: center;
    transition: 0.3s;
}

.project-btn:hover {
    background: #333;
}

/* =========================
VIEW ALL SLIDE
========================= */

.view-all-card {
	background: linear-gradient(135deg, #111, #165800);    color: #fff;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 25px;
}

.view-all-content h3 {
    font-size: 25px;
    margin-bottom: 10px;
}

.view-all-content p {
    font-size: 16px;
    opacity: 0.8;
    margin-bottom: 20px;
    color: antiquewhite;
}

.view-all-btn {
    display: inline-block;
    padding: 10px 16px;
    border: 1px solid #fff;
    border-radius: 8px;
    font-size: 13px;
    transition: 0.3s;
}

.view-all-btn:hover {
    background: #fff;
    color: #111;
}

/* =========================================
   PROJECT ITEM CARD
========================================= */

.project-item-card {
    position: relative;

    display: flex;
    flex-direction: column;

    height: 100%;
    min-height: 520px;

    background: #ffffff;

    border-radius: 28px;

    overflow: hidden;

    border: 1px solid rgba(15, 23, 42, 0.06);

    box-shadow:
        0 12px 40px rgba(15, 23, 42, 0.06);

    transition:
        transform 0.45s ease,
        box-shadow 0.45s ease,
        border-color 0.45s ease;
}

/* HOVER */
.project-item-card:hover {
    transform: translateY(-12px);

    border-color: rgba(15, 118, 110, 0.18);

    box-shadow:
        0 25px 70px rgba(15, 23, 42, 0.12);
}

/* =========================================
   IMAGE
========================================= */

.project-item-image {
    position: relative;

    display: block;

    width: 100%;
    height: 270px;

    overflow: hidden;

    background: #f1f5f9;
}

.project-item-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition:
        transform 0.9s ease,
        filter 0.5s ease;
}

.project-item-card:hover .project-item-image img {
    transform: scale(1.08);

    filter: brightness(1.04);
}

/* IMAGE OVERLAY */
.project-item-image::after {
    content: '';

    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            to top,
            rgba(15, 23, 42, 0.45),
            rgba(15, 23, 42, 0.02)
        );

    opacity: 0.85;

    transition: opacity 0.4s ease;
}

.project-item-card:hover .project-item-image::after {
    opacity: 1;
}

/* =========================================
   BADGE
========================================= */

.project-item-badge {
    position: absolute;

    top: 18px;
    left: 18px;

    z-index: 5;

    padding: 10px 18px;

    border-radius: 100px;

    font-size: 0.72rem;
    font-weight: 800;

    letter-spacing: 1px;

    text-transform: uppercase;

    background:
        linear-gradient(
            135deg,
            #0f766e,
            #115e59
        );

    color: #ffffff;

    box-shadow:
        0 10px 25px rgba(15, 118, 110, 0.25);
}

/* =========================================
   CONTENT
========================================= */

.project-item-content {
    display: flex;
    flex-direction: column;
    flex: 1;

    padding: 30px;
}

/* =========================================
   DATE
========================================= */

.project-item-date {
    display: inline-flex;
    align-items: center;
    gap: 8px;

    margin-bottom: 18px;

    color: #64748b;

    font-size: 0.84rem;
    font-weight: 700;

    letter-spacing: 0.3px;
}

.project-item-date i {
    color: #0f766e;
}

/* =========================================
   TITLE
========================================= */

.project-item-title {
    margin-bottom: 18px;

    line-height: 1.45;
}

.project-item-title a {
    color: #0f172a;

    text-decoration: none;

    font-size: 1.3rem;
    font-weight: 800;

    transition: color 0.3s ease;
}

.project-item-card:hover .project-item-title a {
    color: #0f766e;
}

/* =========================================
   EXCERPT
========================================= */

.project-item-excerpt {
    flex-grow: 1;

    margin-bottom: 30px;

    color: #475569;

    font-size: 0.96rem;

    line-height: 1.9;
}

/* =========================================
   FOOTER
========================================= */

.project-item-footer {
    margin-top: auto;
}

/* =========================================
   BUTTON
========================================= */

.project-item-link {
    display: inline-flex;
    align-items: center;
    gap: 12px;

    padding:
        15px 24px;

    border-radius: 16px;

    text-decoration: none;

    font-size: 0.95rem;
    font-weight: 700;

    color: #ffffff;

    background:
        linear-gradient(
            135deg,
            #0f766e,
            #115e59
        );

    transition:
        transform 0.35s ease,
        box-shadow 0.35s ease,
        gap 0.35s ease;
}

/* BUTTON HOVER */
.project-item-link:hover {
    transform: translateY(-4px);

    gap: 16px;

    box-shadow:
        0 18px 35px rgba(15, 118, 110, 0.28);
}

.project-item-link i {
    transition: transform 0.35s ease;
}

.project-item-link:hover i {
    transform: translateX(5px);
}

/* =========================================
   GRID
========================================= */

.projects-grid {
    display: grid;

    grid-template-columns:
        repeat(auto-fit, minmax(320px, 1fr));

    gap: 35px;

    margin-top: 60px;
}

/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 992px) {

    .project-item-card {
        min-height: auto;
    }

    .project-item-image {
        height: 240px;
    }
}

@media (max-width: 768px) {

    .project-item-content {
        padding: 24px;
    }

    .project-item-title a {
        font-size: 1.08rem;
    }

    .project-item-link {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 480px) {

    .projects-grid {
        grid-template-columns: 1fr;
    }

    .project-item-image {
        height: 220px;
    }

    .project-item-content {
        padding: 22px;
    }
}
/* Explore button */
.explore-btn {
    display: inline-block;
    margin-top: 12px;
    padding: 10px 20px;
    background: #fff;
    color: #0f172a;
    font-weight: 600;
    border-radius: 8px;
    text-decoration: none;
    transition: 0.3s ease;
}

.explore-btn:hover {
    background: #e2e8f0;
}

/* Hover animation — premium feel */
.view-all-card:hover .view-all-bg {
    opacity: 1;
}

.view-all-card:hover {
    transform: scale(1.04);
    transition: 0.3s ease;
    box-shadow: 0 20px 40px rgba(0,0,0,0.22);
}


 /* Learn More Button */
 .program-caption .pro {
	display: flex;
	flex-direction: column; 
	justify-content: space-between; 
	height: 250px;
  }
  
  .learn-more {
	display: inline-block;
	background-color: #b79301;
	color: #fff;
	font-size: 16px;
	font-weight: 600;
	padding: 10px 25px;
	border: none;
	border-radius: 6px;
	cursor: pointer;
	transition: all 0.3s ease;
	text-decoration: none;
	margin-top: 15px;
	align-self: center; /* aligns button to left; use flex-end for right */
  }
  
  .learn-more:hover {
	background-color: #a07c00;
	transform: translateY(-2px);
  }
  
  
  .learn-more:hover {
	background-color: #b79301;
	color: #000;
	box-shadow: 0 4px 12px rgba(0,0,0,0.2);
	transform: translateY(-2px);
  }
  
  .learn-more:focus {
	outline: none;
	box-shadow: 0 0 0 3px rgba(255, 213, 46, 0.5);
  }
  
  /* The Modal (background) */
.modal {
	display: none; 
	position: fixed; 
	z-index: 1; 
	padding-top: 130px; 
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: auto;
	background-color: rgba(0, 0, 0, 0.5); 
  }
  
  /* Modal Content */
  .modal-content {
	background-color: #fefefe;
	margin: auto;
	padding: 20px;
	border: 1px solid #888;
	width: 80%;
	max-width: 70%;
	border-radius: 10px;
	text-align: center;
  }
  a#modal-link {
    background:#ffd52e;
    color: #000;
    padding: 10px 30px;
    font-size: 20px;
}
a#modal-link:hover{
	background: #fff;
	border: 2px #000 solid;
}
  p#modal-body {
    font-size: 15px;
    line-height: 2;
    width: 100%;
	text-align: left;
    padding: 20px;
	margin-bottom: 20px;
}
  /* Close button */
  .close {
	color: #aaa;
	float: right;
	font-size: 28px;
	font-weight: bold;
  }
  
  .close:hover, .close:focus {
	color: #000;
	text-decoration: none;
	cursor: pointer;
  }
  
  /* === Counter Section === */
#counter-section {
	padding: 80px 150px;
	background-image: url("../images/slider/slider5.jpg");
	background-size: cover;
	background-attachment: fixed;
	background-position: center;
	position: relative;
	z-index: 9;
	width: 100%;
	float: left;
	overflow: hidden;
  }
  
  #counter-section::after {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: linear-gradient(rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.6));
	z-index: -1;
  }
  
  .counter-container {
	display: flex;
	justify-content: center;
	align-items: center;
  }
  
  .counter-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	gap: 30px;
	max-width: 1200px;
	width: 100%;
  }
  
  .counter-item {
	background: rgba(255, 255, 255, 0.95);
	padding: 30px 20px;
	border-radius: 12px;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.15);
	transition: transform 0.4s ease, box-shadow 0.4s ease;
	text-align: center;
  }
  
  .counter-item:hover {
	transform: translateY(-10px) scale(1.03);
	box-shadow: 0 12px 25px rgba(0, 0, 0, 0.25);
  }
  
  .counter-icon {
	font-size: 50px;
	color: #bb853d;
	margin-bottom: 15px;
  }
  
  .counter-number {
	font-size: 42px;
	font-weight: 700;
	color: #222;
	margin-bottom: 8px;
	transition: color 0.3s ease;
  }
  
  .counter-item:hover .counter-number {
	color: #bb853d;
  }
  
  .counter-item h3 {
	margin: 0;
	font-size: 20px;
	color: #555;
	font-weight: 600;
	letter-spacing: 0.5px;
  }
  
  
  #volunteer-banner {
	background: #b79301;
	padding: 60px 20px;
	text-align: center;
	width: 100%;
	float: left;
  }
  
  .volunteer-container {
	max-width: 800px;
	margin: 0 auto;
  }
  
  #volunteer-banner h2 {
	font-size: 36px;
	margin-bottom: 20px;
	font-weight: bold;
	color: #fff;
  }
  
  #volunteer-banner p {
	font-size: 18px;
	margin-bottom: 30px;
	color: #000;
  }
  
  .volunteer-btn {
	display: inline-block;
	background-color: #175800;
	color: #fff;
	padding: 15px 30px;
	border-radius: 5px;
	text-decoration: none;
	font-size: 18px;
	transition: background-color 0.3s ease;
  }
  
  .volunteer-btn:hover {
	background-color: #00310b;
  }
  

  /*Program*/
  /* =========================================================
   PROGRAM PAGE
========================================================= */
/* =====================================================
   PROGRAM PAGE — PREMIUM UI
   ===================================================== */

   .page {
    position: relative;
    overflow: hidden;
    background: #f7f8fc;
}

/* =====================================================
   CONTAINER
   ===================================================== */

.page-container {
    width: min(1200px, 92%);
    margin-inline: auto;
    padding: 5rem 0;
}

/* =====================================================
   HERO
   ===================================================== */

.page-hero {
    position: relative;
    min-height: 75vh;
    display: flex;
    align-items: center;
    overflow: hidden;
    isolation: isolate;
}

.page-hero__image {
    position: absolute;
    inset: 0;
    z-index: -3;
}

.page-hero__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: scale(1.03);
}

.page-hero__overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            120deg,
            rgba(0, 0, 0, 0.78),
            rgba(0, 0, 0, 0.45)
        );
    z-index: -2;
}

.page-hero__content {
    width: min(1100px, 92%);
    margin-inline: auto;
    color: #fff;
    padding-top: 7rem;
}

.page-hero__date {
    display: inline-flex;
    align-items: center;
    gap: .7rem;
    padding: .8rem 1.4rem;
    border-radius: 100px;
    background: rgba(255,255,255,.12);
    backdrop-filter: blur(12px);
    font-size: .95rem;
    margin-bottom: 1.5rem;
}

.page-hero__subtitle {
    max-width: 700px;
    font-size: 1.15rem;
    line-height: 1.9;
    opacity: .92;
}

/* =====================================================
   INTRO SECTION
   ===================================================== */

.page-intro {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 4rem;
    align-items: center;
    margin-bottom: 5rem;
}

.page-intro__content {
    position: relative;
}

.page-intro__content p {
    font-size: 1.08rem;
    line-height: 2;
    color: #555;
    margin-bottom: 2rem;
}

.page-intro__image {
    position: relative;
    overflow: hidden;
    border-radius: 28px;
    box-shadow:
        0 20px 50px rgba(0,0,0,.08),
        0 5px 15px rgba(0,0,0,.04);
}

.page-intro__image img {
    width: 100%;
    height: 100%;
    min-height: 420px;
    object-fit: cover;
    transition: transform .7s ease;
}

.page-intro__image:hover img {
    transform: scale(1.06);
}
/* =====================================================
PAGE HERO META
===================================================== */

.page-hero__meta{
  display:flex;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;

  margin-bottom:20px;
}

.page-hero__date{
  display:inline-flex;
  align-items:center;
  gap:10px;

  padding:10px 18px;

  border-radius:100px;

  background:rgba(255,255,255,0.12);

  backdrop-filter:blur(10px);

  color:#fff;

  font-size:.95rem;
  font-weight:500;
}

/* =====================================================
STATUS BADGES
===================================================== */

.page-status{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:10px 18px;

  border-radius:100px;

  font-size:.85rem;
  font-weight:700;

  text-transform:uppercase;
  letter-spacing:.08em;
}

/* UPCOMING */

.page-status--upcoming{
  background:#dbeafe;
  color:#1d4ed8;
}

/* ONGOING */

.page-status--ongoing{
  background:#dcfce7;
  color:#15803d;
}

/* PAST */

.page-status--past{
  background:#fee2e2;
  color:#b91c1c;
}

/* =====================================================
MOBILE
===================================================== */

@media (max-width:768px){

  .page-hero__meta{
      gap:10px;
  }

  .page-hero__date,
  .page-status{
      width:100%;
      justify-content:center;
  }

}
/* =====================================================
   BUTTONS
   ===================================================== */

.btn-primary,
.btn-back {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .7rem;
    padding: 1rem 2rem;
    border-radius: 14px;
    text-decoration: none;
    font-weight: 600;
    transition: all .35s ease;
}

.btn-primary {
    background: var(--primary-color);
    color: #fff;
    box-shadow: 0 15px 35px rgba(0,0,0,.12);
}

.btn-primary:hover {
    transform: translateY(-4px);
}

.btn-back {
    border: 1px solid rgba(0,0,0,.08);
    background: #fff;
    color: #222;
}

.btn-back:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 25px rgba(0,0,0,.06);
}

/* =====================================================
   CONTENT
   ===================================================== */

.page-content {
    display: grid;
    gap: 3rem;
}

/* =====================================================
   BLOCKS
   ===================================================== */

.block {
    position: relative;
}

.block-card {
    background: #fff;
    border-radius: 28px;
    padding: 3rem;
    box-shadow:
        0 20px 40px rgba(0,0,0,.04),
        0 3px 10px rgba(0,0,0,.03);
}

/* =====================================================
   TEXT BLOCK
   ===================================================== */

.block-card--text p {
    font-size: 1.08rem;
    line-height: 2;
    color: #555;
}

/* =====================================================
   IMAGE BLOCK
   ===================================================== */

.block-card--image {
    overflow: hidden;
    padding: 0;
}

.block-card--image img {
    width: 100%;
    height: auto;
    display: block;
}

.caption {
    padding: 1.2rem 1.5rem;
    color: #777;
    font-size: .95rem;
    border-top: 1px solid rgba(0,0,0,.05);
}

/* =====================================================
   MEDIA BLOCK
   ===================================================== */

.block-media {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 3rem;
    background: #fff;
    border-radius: 28px;
    overflow: hidden;
    box-shadow:
        0 20px 40px rgba(0,0,0,.04),
        0 3px 10px rgba(0,0,0,.03);
}

.block-media--reverse {
    direction: rtl;
}

.block-media--reverse * {
    direction: ltr;
}

.block-media__image img {
    width: 100%;
    height: 100%;
    min-height: 420px;
    object-fit: cover;
    display: block;
}

.block-media__content {
    padding: 3rem;
    font-size: 1.05rem;
    line-height: 2;
    color: #555;
}

/* =====================================================
   GALLERY
   ===================================================== */
/* =========================================
BLOCK TITLES
========================================= */
h3.gallery-title {
  font-size: clamp(1.5rem, 3vw, 2.2rem);
  font-weight: 700;
  line-height: 1.2;
  color: #111;
  position: relative;
  padding-left: 1rem;
  text-align: center;
    margin-bottom: 30px;
}

h3.gallery-title::before {
  content: "";
  position: absolute;
  left: 0;
  top: .2rem;
  width: 4px;
  height: 85%;
  border-radius: 20px;
  background: var(--primary-color);
}
.gallery-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.2rem;
}

.gallery-item {
    overflow: hidden;
    border-radius: 20px;
}

.gallery-item img {
    width: 100%;
    height: 280px;
    object-fit: cover;
    transition: transform .5s ease;
}

.gallery-item:hover img {
    transform: scale(1.06);
}

/* =====================================================
   QUOTE
   ===================================================== */

.block-card--quote {
    position: relative;
    background:
        linear-gradient(
            135deg,
            var(--primary-color),
            #111
        );
    color: #fff;
}

.block-card--quote blockquote {
    margin: 0;
}

.block-card--quote p {
    font-size: clamp(1.3rem, 2vw, 2rem);
    line-height: 1.7;
    font-weight: 500;
}

/* =====================================================
   VIDEO
   ===================================================== */

.video-wrapper {
    position: relative;
    width: 100%;
    padding-bottom: 56.25%;
    border-radius: 24px;
    overflow: hidden;
}

.video-wrapper iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}

/* =====================================================
   CTA BLOCK
   ===================================================== */

.block-card--cta {
    text-align: center;
    background:
        linear-gradient(
            135deg,
            #fff,
            #f2f4ff
        );
}

.cta-description {
    max-width: 700px;
    margin-inline: auto;
    margin-bottom: 2rem;
    color: #666;
    line-height: 1.9;
}

/* =====================================================
   DONATION CTA
   ===================================================== */

.donation-cta {
    padding: 4rem;
    border-radius: 30px;
    text-align: center;
    background:
        linear-gradient(
            135deg,
            var(--primary-color),
            #111
        );
    color: #fff;
}

.donation-cta h2 {
    font-size: clamp(2rem, 4vw, 3rem);
    margin-bottom: 1rem;
}

.donation-cta p {
    max-width: 700px;
    margin-inline: auto;
    line-height: 1.9;
    opacity: .9;
    margin-bottom: 2rem;
}

/* =====================================================
   TIMELINE
   ===================================================== */

.project-timeline {
    margin-top: 6rem;
}

.timeline-wrapper {
    display: grid;
    gap: 2rem;
}

.timeline-item {
    display: grid;
    grid-template-columns: 320px 1fr;
    background: #fff;
    border-radius: 28px;
    overflow: hidden;
    box-shadow:
        0 20px 40px rgba(0,0,0,.04),
        0 3px 10px rgba(0,0,0,.03);
}

.timeline-item-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.timeline-item-content {
    padding: 3rem;
}

.timeline-year {
    display: inline-block;
    margin-bottom: 1rem;
    color: var(--primary-color);
    font-weight: 700;
}

.timeline-title {
    font-size: 1.7rem;
    margin-bottom: 1rem;
}

.timeline-description {
    line-height: 1.9;
    color: #666;
}

/* =====================================================
   SHARE
   ===================================================== */

.event-share {
    margin-top: 6rem;
    text-align: center;
}

.event-share h3 {
    margin-bottom: 2rem;
    font-size: 2rem;
}

.share-buttons {
    display: flex;
    justify-content: center;
    gap: 1rem;
}

.share-buttons a {
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    border-radius: 18px;
    background: #fff;
    color: #222;
    font-size: 1.2rem;
    text-decoration: none;
    transition: all .35s ease;
    box-shadow: 0 10px 25px rgba(0,0,0,.05);
}

.share-buttons a:hover {
    transform: translateY(-5px);
}

/* =====================================================
   RELATED
   ===================================================== */

section.related-section .swiper {
  height: fit-content;
}
/**
=====================================================
PREMIUM RELATED SECTION
=====================================================
*/

.related-section {
  position: relative;
  background: #f8fafc;
  overflow: hidden;
}

.related-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
      radial-gradient(circle at top left,
          rgba(37, 99, 235, 0.08),
          transparent 35%),
      radial-gradient(circle at bottom right,
          rgba(16, 185, 129, 0.08),
          transparent 35%);
  pointer-events: none;
}

.related-section .container {
  position: relative;
  z-index: 2;
}

/**
=====================================================
SECTION TITLE
=====================================================
*/

.related-section h2 {
  position: relative;
  margin-bottom:20px;
  margin-top: 20px;
  font-size: 2.5rem;
  font-weight: 500;
  color: #0f172a;
  text-align: center;
  line-height: 1.2;
  letter-spacing: -1px;
}

.related-section h2::after {
  content: "";
  width: 90px;
  height: 5px;
  margin: 18px auto 0;
  display: block;
  border-radius: 999px;
  background: linear-gradient(
      90deg,
      #2563eb,
      #06b6d4
  );
}

/**
=====================================================
SWIPER
=====================================================
*/

.related-swiper {
  position: relative;
  padding-bottom: 70px;
}

/**
=====================================================
CARD
=====================================================
*/

.related-card {
  position: relative;
  height: 100%;
  overflow: hidden;
  border-radius: 28px;
  background: #ffffff;
  transition:
      transform 0.45s ease,
      box-shadow 0.45s ease;
  box-shadow:
      0 10px 30px rgba(15, 23, 42, 0.06),
      0 2px 10px rgba(15, 23, 42, 0.04);
}

.related-card:hover {
  transform: translateY(-10px);
  box-shadow:
      0 30px 60px rgba(15, 23, 42, 0.14),
      0 10px 20px rgba(15, 23, 42, 0.08);
}

/**
=====================================================
LINK
=====================================================
*/

.related-card a {
  display: block;
  text-decoration: none;
  color: inherit;
}

/**
=====================================================
IMAGE
=====================================================
*/

.related-card img {
  width: 100%;
  height: 280px;
  object-fit: cover;
  display: block;
  transition:
      transform 0.7s ease,
      filter 0.5s ease;
}

.related-card:hover img {
  transform: scale(1.08);
  filter: brightness(1.05);
}

/**
=====================================================
CONTENT
=====================================================
*/

.related-card h3 {
  margin: 0;
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.45;
  color: #0f172a;
  transition: color 0.3s ease;
}

.related-card:hover h3 {
  color: #2563eb;
}
.related-card-content{
  padding: 28px 26px 20px;

}

/**
=====================================================
IMAGE OVERLAY EFFECT
=====================================================
*/

.related-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
      to top,
      rgba(15, 23, 42, 0.08),
      transparent 45%
  );
  opacity: 0;
  transition: opacity 0.4s ease;
  z-index: 1;
  pointer-events: none;
}

.related-card:hover::before {
  opacity: 1;
}

/**
=====================================================
SWIPER BUTTONS
=====================================================
*/

.related-swiper .swiper-button-prev,
.related-swiper .swiper-button-next {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: #ffffff;
  color: #0f172a;
  box-shadow:
      0 10px 25px rgba(15, 23, 42, 0.12);
  transition:
      all 0.35s ease;
}

.related-swiper .swiper-button-prev:hover,
.related-swiper .swiper-button-next:hover {
  background: #2563eb;
  color: #ffffff;
  transform: translateY(-3px);
}

.related-swiper .swiper-button-prev::after,
.related-swiper .swiper-button-next::after {
  font-size: 18px;
  font-weight: 700;
}

/**
=====================================================
PAGINATION
=====================================================
*/

.related-swiper .swiper-pagination {
  bottom: 0 !important;
}

.related-swiper .swiper-pagination-bullet {
  width: 12px;
  height: 5px;
  opacity: 1;
  background: rgba(15, 23, 42, 0.15);
  transition: all 0.3s ease;
}

.related-swiper .swiper-pagination-bullet-active {
  width: 34px;
  border-radius: 999px;
  background: linear-gradient(
      90deg,
      #2563eb,
      #06b6d4
  );
}

/**
=====================================================
MOBILE
=====================================================
*/

@media (max-width: 992px) {

  .related-section {
      padding: 80px 0;
  }

  .related-card img {
      height: 240px;
  }
}

@media (max-width: 768px) {

  .related-section h2 {
      margin-bottom: 45px;
  }

  .related-card {
      border-radius: 22px;
  }

  .related-card img {
      height: 220px;
  }

  .related-card h3 {
      padding: 10px;
      font-size: 1rem;
  }
  .related-card-content {
    padding: 24px;
}

.related-date {
    display: inline-block;
    margin-bottom: 12px;
    font-size: 0.82rem;
    font-weight: 600;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    color: #2563eb;
    background: rgba(37, 99, 235, 0.08);
    padding: 8px 14px;
    border-radius: 999px;
}

.related-card h3 {
    margin: 0;
}

  .related-swiper .swiper-button-prev,
  .related-swiper .swiper-button-next {
      display: none;
  }
}

@media (max-width: 480px) {

  .related-section {
      padding: 65px 0;
  }

  .related-card img {
      height: 200px;
  }
}

/* =====================================================
   RESPONSIVE
   ===================================================== */

@media (max-width: 992px) {

    .page-intro,
    .block-media,
    .timeline-item {
        grid-template-columns: 1fr;
    }

    .block-media--reverse {
        direction: ltr;
    }

    .gallery-grid {
        grid-template-columns: repeat(2, 1fr);
    }

}

@media (max-width: 768px) {

    .page-container {
        width: 94%;
        padding: 4rem 0;
    }

    .block-card,
    .block-media__content,
    .timeline-item-content {
        padding: 2rem;
    }

    .gallery-grid {
        grid-template-columns: 1fr;
    }

    .page-hero {
        min-height: 65vh;
    }

    .page-hero__title {
        font-size: 2.5rem;
    }

}
/* =========================================================
 TIMELINE SPACING
========================================================= */

.timeline-section {
  margin: 5rem 0;
}

/* =========================================================
 RESPONSIVE
========================================================= */

@media (max-width: 992px) {

  .program-container {
      grid-template-columns: 1fr;
      gap: 3rem;
  }

  .program-image {
      order: -1;
  }

  .program-image img {
      min-height: 400px;
  }
}

@media (max-width: 768px) {

  .program-container {
      padding: 4rem 0;
  }

  .program-text h1 {
      font-size: 2.3rem;
  }

  .program-short {
      font-size: 1rem;
  }

  .program-description p {
      font-size: 1rem;
      line-height: 1.8;
  }

  .program-image {
      border-radius: 1.5rem;
  }

  .program-image img {
      min-height: 320px;
  }

  .back-to-programs {
      width: 100%;
      justify-content: center;
  }
}
  /* === Base Styles === */
#timeline {
	background: #fff;
	padding: 100px 0;
	font-family: "Inter", sans-serif;
	color: #222;
	width: 100%;
	float: left;
  }
  
  .timeline-wrapper {
	display: grid;
	grid-template-columns: 250px 1fr;
	gap: 40px;
	max-width: 1200px;
	margin: 0 auto;
	align-items: start;
  }
  
  /* ===== Year List ===== */
  .timeline-years {
	position: sticky;
	top: 100px;
	align-self: start;
  }
  
  .timeline-years ul {
	list-style: none;
	padding: 0;
	margin: 0;
	border-left: 2px solid #ddd;
  }
  
  .timeline-years li {
	padding: 12px 20px;
	margin-bottom: 10px;
	cursor: pointer;
	font-weight: 500;
	color: #555;
	position: relative;
	transition: all 0.3s ease;
  }
  
  .timeline-years li::before {
	content: "";
	position: absolute;
	left: -7px;
	top: 50%;
	transform: translateY(-50%);
	width: 12px;
	height: 12px;
	background: #bbb;
	border-radius: 50%;
	transition: all 0.3s ease;
  }
  
  .timeline-years li.active,
  .timeline-years li:hover {
	color: #111;
	font-weight: 600;
  }
  
  .timeline-years li.active::before {
	background: #2a3344;
	transform: scale(1.2) translateY(-50%);
  }
  /* ===== Timeline Events ===== */
.timeline-events {
	display: flex;
	flex-direction: column;
	gap: 100px;
  }
  
  .event {
	display: grid;
	grid-template-columns: 1fr 400px;
	gap: 40px;
	align-items: start; /* keep text top-aligned */
	opacity: 1; /* always visible */
	transform: none; /* remove animation offset */
	transition: all 0.5s ease;
	position: relative;
  }
  
  .event-text {
	position: relative;
	top: auto;
	transition: all 0.5s ease;
  }
  
  .event.active-text {
	position: sticky;
	top: 100px;
	align-self: start;
  }
  
  .event.active-text h2 {
	font-size: 2.5rem;
	color: #2a3344;
  }
  

/* ===== Image Styling ===== */
.event-image img {
	width: 100%;
	border-radius: 10px;
	box-shadow: 0 4px 15px rgba(0,0,0,0.1);
	transform: scale(0.95);
	opacity: 0.85;
	transition: all 0.6s ease;
  }
  
  /* Slight zoom when active */
  .event-text.active-text ~ .event-image img {
	transform: scale(1.1);
	opacity: 1;
  }
  /* ==== Active State ==== */
  .event.visible {
	opacity: 1;
	transform: none;
  }
  
  /* ==== Text Styles ==== */
/* Base title style */
.event-text h2 {
	font-size: 2rem;
	color: #2a3344;
	margin: 0 0 10px;
	transition: all 0.4s ease;
  }
  
  /* When event is active and sticky */
  .event-text.active-text h2 {
	font-size: 2.8rem; /* larger size when active */
	color: #1b2230;    /* slightly darker for emphasis */
	transform: scale(1.03);
  }
  
  
  .event-text h3 {
	font-size: 1.2rem;
	color: #333;
	margin-bottom: 10px;
  }
  
  .event-text p {
	color: #444;
	font-size: 0.95rem;
	line-height: 1.7;
  }
  
  /* ==== Image Container ==== */
  .event-image img {
	width: 100%;
	border-radius: 10px;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  }
  
  
/* =========================================
   EVENT GALLERY
========================================= */

.event-gallery {
    margin-top: 5rem;
}

.event-gallery h3 {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 2rem;
    color: #111;
}

/* =========================================
   GRID
========================================= */

.gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 1.5rem;
}

/* =========================================
   IMAGE
========================================= */

.gallery-grid img {
    width: 100%;
    height: 280px;
    object-fit: cover;

    border-radius: 18px;

    display: block;

    transition: 0.4s ease;

    cursor: pointer;

    box-shadow:
        0 10px 25px rgba(0,0,0,0.08);
}

/* =========================================
   HOVER EFFECT
========================================= */

.gallery-grid img:hover {
    transform: translateY(-6px) scale(1.02);

    box-shadow:
        0 20px 40px rgba(0,0,0,0.15);
}

/* =========================================
   MOBILE
========================================= */

@media (max-width: 768px) {

    .event-gallery {
        margin-top: 3rem;
    }

    .event-gallery h3 {
        font-size: 1.5rem;
    }

    .gallery-grid {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .gallery-grid img {
        height: 240px;
        border-radius: 14px;
    }
}
/*GLobal*/
/* =========================================
   GLOBAL PAGE HERO
========================================= */

.page-hero {
  position: relative;

  min-height: 320px;

  display: flex;
  align-items: center;
  justify-content: center;

  background-size: cover;
  background-position: top;
  background-repeat: no-repeat;

  overflow: hidden;
}

/* DARK OVERLAY */
.page-hero__overlay {
  position: absolute;
  inset: 0;

  background:
      linear-gradient(
          to bottom,
          rgba(0,0,0,0.55),
          rgba(2, 35, 0, 0.885)
      );
}

/* CONTENT */
.page-hero__content {
  position: relative;
  z-index: 2;

  text-align: center;
  color: #fff;

  padding: 40px 20px;
}

/* SUBTITLE */
.page-hero__subtitle {
  display: inline-block;

  margin-bottom: 14px;

  font-size: 13px;
  font-weight: 600;

  letter-spacing: 3px;
  text-transform: uppercase;

  color: rgba(255,255,255,0.85);
}

/* TITLE */
.page-hero__title {
  margin-bottom: 18px;

  font-size: clamp(38px, 6vw, 68px);
  font-weight: 800;
  line-height: 1.1;
}

/* TEXT */
.page-hero__text {
  width: 100%;
  max-width: 720px;

  margin: auto;

  font-size: 16px;
  line-height: 1.8;

  color: rgba(255,255,255,0.9);
}

/* RESPONSIVE */
@media (max-width: 768px) {

  .page-hero {
      min-height: 320px;
  }

  .page-hero__content {
      padding: 60px 20px;
  }

  .page-hero__text {
      font-size: 15px;
  }
}
/* =========================================
   CONTENT LIST WRAPPER
========================================= */

.content-list {
  padding: 80px 0;
  background: #f7f9fc;
}

/* SECTION HEADER */
.section-heading {
  text-align: center;
  margin-bottom: 40px;
}

.section-subtitle {
  display: inline-block;
  font-size: 13px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #6b7280;
  margin-bottom: 10px;
}

.section-title {
  font-size: 34px;
  font-weight: 700;
  color: #111827;
  margin-bottom: 10px;
}

.section-description {
  max-width: 650px;
  margin: 0 auto;
  color: #6b7280;
  font-size: 15px;
  line-height: 1.6;
}

/* =========================================
 GRID SYSTEM (GLOBAL)
========================================= */

.content-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 28px;
}

/* =========================================
 CARD BASE
========================================= */

.card {
  background: #ffffff;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.06);
  transition: all 0.35s ease;
  display: flex;
  flex-direction: column;
  position: relative;
}

.card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 50px rgba(0, 0, 0, 0.12);
}

/* =========================================
 IMAGE SECTION
========================================= */

.card-image {
  position: relative;
  display: block;
  overflow: hidden;
}

.card-image img {
  width: 100%;
  height: 220px;
  object-fit: cover;
  transition: transform 0.6s ease;
}

.card:hover .card-image img {
  transform: scale(1.08);
}

/* =========================================
 BADGE (PAST / UPCOMING)
========================================= */

.card-badge {
  position: absolute;
  top: 15px;
  left: 15px;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: 600;
  border-radius: 30px;
  color: #fff;
  backdrop-filter: blur(8px);
}

.card-badge.past {
  background: rgba(239, 68, 68, 0.9);
}

.card-badge.upcoming {
  background: rgba(34, 197, 94, 0.9);
}

/* =========================================
 CARD CONTENT
========================================= */

.card-content {
  padding: 18px 18px 22px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.card-content h3 {
  font-size: 18px;
  font-weight: 700;
  margin: 0;
}

.card-content h3 a {
  text-decoration: none;
  color: #111827;
  transition: color 0.3s ease;
}

.card-content h3 a:hover {
  color: #2563eb;
}

/* DATE */
.card-date {
  font-size: 13px;
  color: #6b7280;
  display: flex;
  align-items: center;
  gap: 6px;
}

/* DESCRIPTION */
.card-content p {
  font-size: 14px;
  color: #4b5563;
  line-height: 1.6;
  margin: 0;
}

/* =========================================
 CARD LINK
========================================= */

.card-link {
  margin-top: 10px;
  font-size: 14px;
  font-weight: 600;
  color: #2563eb;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: gap 0.3s ease;
}

.card-link:hover {
  gap: 10px;
}

/* =========================================
 RESPONSIVE
========================================= */

@media (max-width: 768px) {

  .section-title {
      font-size: 26px;
  }

  .card-image img {
      height: 200px;
  }

  .content-grid {
      gap: 18px;
  }
}
/* =========================================
   CARD LINK (PREMIUM INTERACTION)
========================================= */

.card-link {
  margin-top: 10px;
  font-size: 14px;
  font-weight: 600;
  color: #2563eb;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  position: relative;
  transition: all 0.3s ease;
}

/* ARROW ANIMATION */
.card-link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 10%;
  height: 2px;
  background: #2563eb;
  transition: width 0.3s ease;
}

/* HOVER EFFECT */
.card-link:hover {
  color: #1d4ed8;
  transform: translateX(4px);
}

/* underline slide */
.card-link:hover::after {
  width: 30%;
}

/* optional arrow micro animation */
.card-link:hover {
  gap: 10px;
}
/* =========================================================
   PREMIUM CONTENT BLOCKS
========================================================= */

.event-rich-content {
    display: flex;
    flex-direction: column;
    gap: 4rem;
    margin-top: 3rem;
}

/* =========================================================
   GLOBAL BLOCK
========================================================= */

.content-block {
    position: relative;
    width: 100%;
}

.content-block-header {
    margin-bottom: 1.5rem;
}

.content-block-title {
    position: relative;
    font-size: clamp(1.4rem, 2vw, 2rem);
    font-weight: 700;
    line-height: 1.2;
    color: #111;
    padding-left: 1rem;
}

.content-block-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.15em;
    width: 5px;
    height: 80%;
    border-radius: 30px;
    background: linear-gradient(
        to bottom,
        #0f766e,
        #14b8a6
    );
}

/* =========================================================
   CARD BASE
========================================================= */

.content-card {
    position: relative;
    background: #fff;
    border-radius: 28px;
    overflow: hidden;
    border: 1px solid rgba(0,0,0,0.05);
    box-shadow:
        0 10px 30px rgba(0,0,0,0.04),
        0 2px 10px rgba(0,0,0,0.03);
    transition:
        transform 0.4s ease,
        box-shadow 0.4s ease;
}

.content-card:hover {
    transform: translateY(-4px);
    box-shadow:
        0 18px 40px rgba(0,0,0,0.08),
        0 6px 18px rgba(0,0,0,0.06);
}

/* =========================================================
   TEXT BLOCK
========================================================= */

.content-card--text {
    padding: 2.5rem;
}

.content-text p {
    font-size: 1.08rem;
    line-height: 1.9;
    color: #444;
    margin: 0;
}

/* =========================================================
   IMAGE BLOCK
========================================================= */

.content-card--image {
    overflow: hidden;
}

.content-image {
    position: relative;
    overflow: hidden;
}

.content-image img {
    width: 100%;
    display: block;
    object-fit: cover;
    border-radius: 0;
    transition: transform 0.7s ease;
}

.content-card--image:hover img {
    transform: scale(1.04);
}

/* =========================================================
   GALLERY
========================================================= */

.content-card--gallery {
    padding: 1rem;
}

.gallery-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 1rem;
}

.gallery-item {
    position: relative;
    overflow: hidden;
    border-radius: 22px;
    background: #f5f5f5;
    min-height: 260px;
}

.gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition:
        transform 0.7s ease,
        filter 0.4s ease;
}

.gallery-item:hover img {
    transform: scale(1.08);
    filter: brightness(1.05);
}

/* overlay effect */

.gallery-item::after {
    content: "";
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            to top,
            rgba(0,0,0,0.3),
            transparent 40%
        );
    opacity: 0;
    transition: opacity 0.4s ease;
}

.gallery-item:hover::after {
    opacity: 1;
}

/* =========================================================
   CAPTION
========================================================= */

.content-caption {
    padding: 1.2rem 1.4rem;
    font-size: 0.95rem;
    line-height: 1.7;
    color: #666;
    background: #fafafa;
    border-top: 1px solid rgba(0,0,0,0.05);
}

/* =========================================================
   QUOTE
========================================================= */

.content-card--quote {
    padding: 3rem;
    background:
        linear-gradient(
            135deg,
            #0f172a,
            #111827
        );
    color: #fff;
}

.content-card--quote blockquote {
    margin: 0;
    position: relative;
    text-align: center;
}

.content-card--quote p {
    font-size: clamp(1.2rem, 2vw, 1.7rem);
    line-height: 1.8;
    font-weight: 500;
    margin: 0;
    color: rgba(255,255,255,0.92);
}

.quote-icon {
    display: block;
    font-size: 3rem;
    line-height: 1;
    color: rgba(255,255,255,0.18);
}

.quote-icon:first-child {
    margin-bottom: 1rem;
}

.quote-icon:last-child {
    margin-top: 1rem;
}



/* =========================================================
   CTA
========================================================= */

.content-card--cta {
    padding: 3rem;
    text-align: center;
    background:
        linear-gradient(
            135deg,
            #0f766e,
            #14b8a6
        );
    color: #fff;
}

.cta-content {
    max-width: 700px;
    margin: auto;
}

.cta-description {
    font-size: 1.05rem;
    line-height: 1.9;
    margin-bottom: 1.8rem;
    color: rgba(255,255,255,0.92);
}

/* =========================================================
   BUTTON
========================================================= */

.btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 1rem 2.5rem;
    border-radius: 100px;
    margin-top: 30px;
    background: #fff;
    color: #111;
    font-weight: 600;
    text-decoration: none;
    transition:
        transform 0.3s ease,
        background 0.3s ease,
        color 0.3s ease;
}

.btn-primary:hover {
    transform: translateY(-1px);
    background: #111;
    color: #fff;
}

/* =========================================================
   ANIMATION
========================================================= */

.content-block[data-animate="fade-up"] {
    opacity: 0;
    transform: translateY(40px);
    animation: fadeUp 0.8s ease forwards;
}

@keyframes fadeUp {

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 768px) {

    .event-rich-content {
        gap: 2.5rem;
    }

    .content-card--text,
    .content-card--quote,
    .content-card--cta {
        padding: 2rem;
    }

    .gallery-grid {
        grid-template-columns: 1fr;
    }

    .gallery-item {
        min-height: 220px;
    }

    .content-text p {
        font-size: 1rem;
    }

    .content-card--quote p {
        font-size: 1.1rem;
    }
}
  
/*About*/
#about{
	width: 100%;
	float: left;
	padding: 0px 80px;
	margin: 0px;
	background: #f9f9f9;
  }

#about .who{
	width: 100%;
	text-align: center;
	padding: 0px;
	margin-top: 30px;
}
#about .who .about-us{
	width: 45%;
	float:left;
	padding:20px;
}
#about .who .about-us img{
	width: 100%;
	border-radius: 20px;
}

#about .who .about-us-right {
	padding: 0px 10px;
	text-align: left;
	width: auto;
	color: #333;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
  }
  
#about .who .about-us-right h2 {
	font-size: 50px;
	color: #00310b;
	font-weight: 500;
	margin: 2px;
	position: relative;
	display: inline-block;
  }
  
  #about .who .about-us-right h2::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -8px;                /* distance of line from text */
	width: 100px;                 /* underline length */
	height: 4px;                 /* underline thickness */
	background-color: #bb853d;   /* underline color */
	border-radius: 2px;          /* smooth edges */
  }
  
#about .who .about-us-right p{
	color: #333;
	margin-top: 10px;
}
#about .our-story{
	width: 100%;
	float: left;
	margin-top: 50px;
}
#about .os-img {
    width: 45%;
    float: right;
    padding: 20px;
	overflow: hidden;
}
#about .os-img img{
	width: 100%;
	height: 400px;
	border-radius: 20px;
	object-fit: cover;
}

#about .os-content{
	width: 50%;
	float: left;
	text-align: left;
}
  #practice{
	width: 100%;
	float: left;
	background-color: #fff;
	
  }
  .practice_sec,.practice_sec2{
	width: 100%;
	float: left;
	padding: 50px 0px;
  }
.practice_sec2{
	background: #f1f1f1;
	display: flex;
	justify-content: space-between;
  }
  .practice_sec .pra_cont h3,.practice_sec2 .pra_cont h3{
	font-size: 40px;
	font-weight: 600;
	margin: 0;
	left: 0px;
	position: relative;
 }
 .practice_sec .pra_img{
	width: 50%;
	float: right;
 }
 .practice_sec .pra_img img{
	width: 100%;
	float: right;
	margin-top: 30px;
	margin-bottom: 30px;
	border-radius: 20px;
 }
 .practice_sec .pra_cont{
	width: 50%;
	padding: 20px;
	flex-direction: column;
	justify-content: center;      
	align-items: flex-start;   
 }
 
 .practice_sec .pra_cont li,.practice_sec2 .pra_cont li {
	list-style: decimal;
	font-size: 30px;
 }

 .practice_sec2 .pra_img{
	width: 50%;
	float: left;
	padding: 20px;
	margin-top: 30px;
 }
 .practice_sec2 .pra_img img{
	width: 100%;
	border-radius: 20px;

 }
 .practice_sec2 {
	display: flex;
	justify-content: space-between;
	padding: 80px 100px;        
	gap: 40px;                   
  }
  
  .practice_sec2 .pra_cont {
	width: 50%;
	float: right;
	padding: 20px;
	display: flex;
	flex-direction: column;
	justify-content: center; /* Vertically center content */
	align-items: flex-start; /* Keep text aligned left */   
  }
  
  .pra_cont {
	width: 50%;
	padding: 20px;
	display: flex;
	flex-direction: column;
	justify-content: center; /* Vertically center content */
	align-items: flex-start; /* Keep text aligned left */
  }
  .practice_sec2{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 80px 100px; /* Adjust spacing around section */
	gap: 40px;
  }
  

 .practice_sec .pra_cont .btn a, .practice_sec2 .pra_cont .btn a{
	background: #00310b;
	color: #fff;
	padding: 10px 20px;
 }
 .practice_sec .pra_cont .btn a:hover, .practice_sec2 .pra_cont .btn a:hover{
	border: 1px #00310b solid;
	background: none;
	color: #00310b;
 }
 /*Impact*/
 .impact-section {
	width: 100%;
	float: left;
	padding: 60px 5%;
	background: #fafafa;
	display: flex;
	flex-direction: column;
	gap: 60px;
	font-family: 'Poppins', sans-serif;
  }
  
  .impact h2 {
	text-align: center;
	font-size: 1.8rem;
	color: #222;
	margin-bottom: 20px;
	position: relative;
  }
  
  .impact h2::after {
	content: "";
	width: 60px;
	height: 3px;
	background: #0e3600;
	display: block;
	margin: 8px auto 0;
	border-radius: 3px;
  }
  
  .table-wrapper {
	overflow-x: auto;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
	border-radius: 10px;
	background: #fff;
  }
  
  table {
	width: 100%;
	border-collapse: collapse;
	min-width: 700px;
  }
  
  thead {
	background: #0e3600;
	color: #fff;
  }
  
  th, td {
	padding: 16px 20px;
	text-align: left;
	font-size: 0.95rem;
  }
  
  tbody tr:nth-child(even) {
	background: #f9f9f9;
  }
  
  tbody tr:hover {
	background: #eef5ff;
	transition: background 0.3s ease;
  }
  
  th {
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
  }
  
  td {
	color: #333;
	line-height: 1.6;
  }
  /* ============================
   STORY PAGE LAYOUT
============================ */

.story-text {
    max-width: 800px;
}

.story-text h1 {
    font-size: 2.5rem;
    margin-bottom: 20px;
    line-height: 1.3;
}

/* ============================
   STORY BLOCKS
============================ */

.story-block {
    margin-bottom: 40px;
}

.story-block h2 {
    font-size: 1.6rem;
    margin-bottom: 10px;
    color: #222;
}

.story-block h4 {
    font-size: 1.1rem;
    margin-bottom: 10px;
    color: #777;
}

.story-block p {
    line-height: 1.8;
    color: #444;
    font-size: 1rem;
}

/* ============================
   IMAGE BLOCK
============================ */

.image-block {
    margin: 30px 0;
    text-align: center;
}

.image-block img {
    width: 100%;
    max-width: 600px;
    border-radius: 10px;
    margin: auto;
    display: block;
}

.image-block figcaption {
    font-size: 0.9rem;
    color: #666;
    margin-top: 10px;
}

/* ============================
   VIDEO BLOCK
============================ */

.video-block {
    margin: 30px 0;
}

.video-block video {
    width: 100%;
    max-width: 600px;
    border-radius: 10px;
    display: block;
    margin: auto;
}

/* ============================
   RIGHT SIDE IMAGE
============================ */

.story-image img {
    width: 100%;
    border-radius: 12px;
    object-fit: cover;
}

/* ============================
   OTHER STORIES GRID
============================ */
.stories-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
}

/* ============================
   STORY CARD FIX
============================ */

.story-card {
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 10px 25px rgba(0,0,0,0.05);
    transition: 0.3s;
}

.story-card:hover {
    transform: translateY(-5px);
}

.story-img {
    height: 200px;
    background-size: cover;
    background-position: center;
}

.story-content {
    padding: 20px;
}

.story-content h3 {
    font-size: 1.2rem;
    margin-bottom: 10px;
}

.read-more {
    color: #007bff;
    text-decoration: none;
    font-weight: 600;
}

/* ============================
   BACK BUTTON
============================ */

.back-to-programs {
    display: inline-block;
    margin-top: 40px;
    color: #ffff;
    text-decoration: none;
}

/* ============================
   MOBILE RESPONSIVE
============================ */

@media (max-width: 992px) {
    .story-container {
        grid-template-columns: 1fr;
    }

    .story-image {
        order: -1;
    }

    .story-text h1 {
        font-size: 2rem;
    }
}
  /* Responsive Adjustments */
  @media screen and (max-width: 1024px) {
	.story-row {
	  grid-template-columns: 1fr 2fr; /* stack video below text */
	}
	.story-video {
	  margin-top: 20px;
	}
  }
  
  @media screen and (max-width: 768px) {
	.story-row {
	  grid-template-columns: 1fr;}
	.story-image,
	.story-video {
	  margin-bottom: 20px;
	}
  }
  .st-ro {
	width: 100%;
	float: left;
	padding: 50px 0px;
	background-color: #f2f2f2;
  }

.story-row.reverse-row {
	display: grid;
	grid-template-columns: 1fr 2fr; /* image | text */
	gap: 30px;
	align-items: center;
  }
  
  .story-row.reverse-row .story-image img {
	width: 100%;
	border-radius: 10px;
	object-fit: cover;
	box-shadow: 0 4px 15px rgba(0,0,0,0.15);
  }
  .story-text h2{
	font-size: 40px;
	font-weight: 400;
  }
  
  /* Responsive adjustments */
  @media screen and (max-width: 1024px) {
	.story-row.reverse-row {
	  grid-template-columns: 1fr; /* stack vertically on smaller screens */
	}
	.story-row.reverse-row .story-image {
	  margin-bottom: 20px;
	}
  }
 
  /* Section Wrapper */
.story-section {
    width: 100%;
	float: left;
    padding: 50px 0;
    background: #f2f2f2;
}
.story-block{
	width: 100%;
	float: left;
	margin-top: 90px;
	margin-bottom: 30px;
}
.story-block2{
	width: 100%;
	float: left;
	background:#ecebebdd;
	margin-top: 90px;
	padding: 40px 0px;
	margin-bottom: 30px;
}
/* Main layout */
.sl {
    display: grid;
    grid-template-columns: 2fr 2fr;
    gap: 40px;
    align-items: flex-start;
}

/* Reverse layout (image left, text right) */
.slr{
    grid-template-columns: 2fr 2fr;
}

.slr2{
    grid-template-columns: 2fr 2fr;
}
/* Media (image container) */
.story-media {
    width: 100%;
}

/* Image styling */
.story-image {
    width: 100%;
    border-radius: 12px;
    object-fit: cover;
    box-shadow: 0 4px 15px rgba(0,0,0,0.15);
    display: block;
}
img.story-image {
    margin-bottom: 19px;
}
.story-media h5{
font-size: 18px;
font-weight: 400;
}

/* Text content */
.story-content-d {
    width: 100%;
}
.story-content-d span{
	font-size: 20px;
	font-weight: 600px;
	display: block;
	margin-bottom: 20px;
}

.story-title {
    font-size: 45px;
    font-weight: 500;
    margin-bottom: 30px;
    color: #222;
}

.story-content-d p {
    font-size: 18px;
    line-height: 1.7;
    margin-bottom: 20px;
    color: #333;
}
.sl-full h5{
	font-size: 20px;
	margin-top: 20px;
}
.sl-full {
	width: 100%;
	float: left;
	padding: 40px 0px;
}
.story-section .board-section{
	padding: 30px 0px;
}
.story-section .board-section .full_tit{
	margin-bottom: 50px;
	text-align: center;
}
.story-section .board-section .full_tit h2{
	font-size: 50px;
}
.story-section .board-section .full_tit h3{
	font-size: 20px;
	font-weight: 400;
}

/* =============================
   SPLIT LAYOUT CORE
============================= */
.sl {
	display: flex;
	align-items: center;
	gap: 40px;
	margin-bottom: 60px;
  }
  
  /* Normal layout */
  .slr {
	flex-direction: row;
  }
  
  /* Reverse layout */
  .slr2 {
	flex-direction: row-reverse;
  }
  
  /* =============================
	 CONTENT + IMAGE
  ============================= */
  .story-media,
  .story-content-d {
	flex: 1;
  }
  
  /* Image styling */
  .story-image {
	width: 100%;
	border-radius: 10px;
	object-fit: cover;
  }
  
  /* =============================
	 MOBILE RESPONSIVE
  ============================= */
  @media (max-width: 768px) {
	.sl,
	.slr,
	.slr2 {
	  flex-direction: column !important;
	}
  }
/* Responsive */
@media (max-width: 900px) {
    .sl,
    .slr {
        grid-template-columns: 1fr;
    }

    .sl {
        font-size: 28px;
    }
}

.sl {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	align-items: center;
  }
  
  .story-block.reverse .sl {
	direction: rtl;
  }
  
  .story-block.reverse .story-content-d {
	direction: ltr;
  }
  
  .story-video {
    height: 300px;
    width: 100%;
    background: azure;
    border-radius: 20px;
}

  /*Sponsors*/
  /* --- SPONSORS CAROUSEL --- */
#sponsors {
  padding: 60px 0;
  background-color: #132b0b;
  width: 100%;
  float: left;
}

#sponsors .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
}

/* Section Header */
#sponsors .cap-la {
  text-align: center;
  margin-bottom: 40px;
}

#sponsors .cap-la h4 {
  font-size: 24px;
  font-weight: 700;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin: 0;
  position: relative;
  display: inline-block;
}

#sponsors .cap-la h4::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: -10px;
  transform: translateX(-50%);
  width: 40px;
  height: 3px;
  background-color: #007bff;
  border-radius: 2px;
}

/* Owl Carousel Spacing */
#sponsors .owl-carousel .item {
  padding: 10px 5px; /* Spacing between cards */
}

/* Modern Carousel Card Style */
#sponsors .event-grid {
  background: #ffffff;
  border-radius: 12px;
  padding: 30px 20px;
  text-align: center;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.02), 0 1px 3px rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease-in-out;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 110px;
}

#sponsors .event-grid:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 15px rgba(0, 0, 0, 0.06);
  border-color: rgba(0, 123, 255, 0.2);
}

#sponsors .event-grid h4 {
  font-size: 15px;
  font-weight: 600;
  color: #333333;
  margin: 0;
  line-height: 1.4;
}

/* Customizing Owl Carousel Dots (Pagination) */
#sponsors .owl-dots {
  text-align: center;
  margin-top: 25px;
}

#sponsors .owl-dots .owl-dot span {
  width: 8px;
  height: 8px;
  margin: 5px 4px;
  background: #cbd5e1;
  display: block;
  border-radius: 50%;
  transition: all 0.3s ease;
}

#sponsors .owl-dots .owl-dot.active span,
#sponsors .owl-dots .owl-dot:hover span {
  background: #0d3000;
  width: 20px; /* Expands active dot into a sleek pill shape */
  border-radius: 4px;
}
/* Custom styling for Swiper navigation arrows */
.sponsors-swiper {
  position: relative;
  padding: 0 40px; /* Gives space on the sides so arrows don't overlap the cards */
}

.sponsors-swiper .swiper-button-next,
.sponsors-swiper .swiper-button-prev {
  color: #007a29; /* Arrow color */
  background: #ffffff;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
  transition: all 0.3s ease;
}

.sponsors-swiper .swiper-button-next:hover,
.sponsors-swiper .swiper-button-prev:hover {
  background: #0d3000;
  color: #ffffff;
  box-shadow: 0 6px 12px rgba(0, 123, 255, 0.2);
}

/* Adjust default Swiper arrow icon size */
.sponsors-swiper .swiper-button-next::after,
.sponsors-swiper .swiper-button-prev::after {
  font-size: 16px;
  font-weight: bold;
}
	
/*Blogs*/
section.latest-blog {
  width: 100%;
  float: left;
  text-align: center;
  padding: 20px 0px;
}

.section-blog {
  margin-bottom: 20px;
}

.section-blog h2{
  font-size: 2rem
}

/*Event FUll Details*/
/* =====================================================================
   MAXIMUM JOY FOUNDATION — EVENTS PAGE
   Premium stylesheet: editorial warmth, refined nonprofit aesthetic.
   Palette: deep forest green + warm gold + off-white parchment.
   Fonts: Playfair Display (headings) + DM Sans (body)
   ===================================================================== */

   @import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,600;0,700;1,600&family=DM+Sans:opsz,wght@9..40,300;9..40,400;9..40,500;9..40,600&display=swap');


   /* ─────────────────────────────────────────────
      CSS CUSTOM PROPERTIES
      ───────────────────────────────────────────── */
   :root {
       --ev-green:         #1b4332;
       --ev-green-mid:     #2d6a4f;
       --ev-green-light:   #40916c;
       --ev-gold:          #c9922a;
       --ev-gold-light:    #e8b84b;
       --ev-cream:         #f8f4ee;
       --ev-parchment:     #f0e9dc;
       --ev-ink:           #1a1a18;
       --ev-muted:         #6b6860;
       --ev-border:        #ddd6c8;
       --ev-white:         #ffffff;
   
       --ev-shadow-sm:     0 2px 8px  rgba(27, 67, 50, 0.08);
       --ev-shadow-md:     0 6px 24px rgba(27, 67, 50, 0.12);
       --ev-shadow-lg:     0 16px 48px rgba(27, 67, 50, 0.18);
   
       --ev-radius:        14px;
       --ev-radius-sm:     8px;
       --ev-radius-pill:   999px;
   
       --ev-ease:          cubic-bezier(0.4, 0, 0.2, 1);
       --ev-transition:    all 0.3s var(--ev-ease);
   }
   
   
   /* ─────────────────────────────────────────────
      PAGE HERO
      ───────────────────────────────────────────── */
   .page-hero {
       position: relative;
       min-height: 500px;
       display: flex;
       align-items: flex-end;
       background-size: cover;
       background-position: center;
       overflow: hidden;
   }
   
   /* Rich layered overlay — green left, darker right */
   .page-hero::before {
       content: '';
       position: absolute;
       inset: 0;
       background: linear-gradient(
           155deg,
           rgba(27, 67, 50, 0.50) 0%,
           rgba(27, 67, 50, 0.80) 55%,
           rgba(8, 24, 16, 0.96) 100%
       );
       z-index: 1;
   }
   
   /* Grain texture for depth */
   .page-hero::after {
       content: '';
       position: absolute;
       inset: 0;
       background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E");
       opacity: 0.4;
       z-index: 2;
       pointer-events: none;
   }
   
   .page-hero__overlay { display: none; } /* handled by ::before */
   
   .page-hero__content {
       position: relative;
       z-index: 3;
       padding: 88px 0 100px;
       animation: heroReveal 0.8s var(--ev-ease) both;
   }
   
   @keyframes heroReveal {
       from { opacity: 0; transform: translateY(16px); }
       to   { opacity: 1; transform: translateY(0); }
   }
   
   .page-hero__subtitle {
       display: inline-block;
       font-family: 'DM Sans', sans-serif;
       font-size: 0.72rem;
       font-weight: 600;
       letter-spacing: 0.22em;
       text-transform: uppercase;
       color: var(--ev-gold-light);
       margin-bottom: 18px;
       padding: 6px 16px;
       border: 1px solid rgba(232, 184, 75, 0.4);
       border-radius: var(--ev-radius-pill);
       background: rgba(232, 184, 75, 0.1);
   }
   
   
   /* ─────────────────────────────────────────────
      TAB NAVIGATION
      ───────────────────────────────────────────── */
   .events-tabs-nav {
       position: sticky;
       top: 0;
       z-index: 100;
       background: var(--ev-white);
       border-bottom: 1px solid var(--ev-border);
       box-shadow: var(--ev-shadow-sm);
   }
   
   .tab-nav {
       display: flex;
       overflow-x: auto;
       scrollbar-width: none;
       -webkit-overflow-scrolling: touch;
   }
   
   .tab-nav::-webkit-scrollbar { display: none; }
   
   .tab-btn {
       position: relative;
       display: inline-flex;
       align-items: center;
       gap: 10px;
       padding: 22px 40px;
       font-family: 'DM Sans', sans-serif;
       font-size: 0.88rem;
       font-weight: 500;
       color: var(--ev-muted);
       background: transparent;
       border: none;
       border-bottom: 3px solid transparent;
       margin-bottom: -1px;
       cursor: pointer;
       white-space: nowrap;
       letter-spacing: 0.01em;
       transition: var(--ev-transition);
   }
   
   .tab-btn:hover {
       color: var(--ev-green);
       background: rgba(27, 67, 50, 0.03);
   }
   
   .tab-btn--active {
       color: var(--ev-green);
       font-weight: 600;
       border-bottom-color: var(--ev-green);
   }
   
   /* Animated indicator dot */
   .tab-btn--active::before {
       content: '';
       position: absolute;
       bottom: -1px;
       left: 40px;
       width: 6px;
       height: 6px;
       background: var(--ev-gold);
       border-radius: 50%;
       transform: translateY(50%);
   }
   
   .tab-badge {
       display: inline-flex;
       align-items: center;
       justify-content: center;
       min-width: 24px;
       height: 24px;
       padding: 0 8px;
       font-family: 'DM Sans', sans-serif;
       font-size: 0.7rem;
       font-weight: 700;
       color: var(--ev-white);
       background: var(--ev-green-mid);
       border-radius: var(--ev-radius-pill);
       transition: var(--ev-transition);
   }
   
   .tab-btn--active .tab-badge {
       background: var(--ev-gold);
       color: var(--ev-ink);
   }
   
   
   /* --- FEATURED LINKS SECTION STYLING --- */
  #featured{
    width: 100%;
    float: left;
  }
.featured-section {
  padding: 80px 0;
  background-color: #f8f9fa;
}

.featured-section .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
}

/* Section Header */
.featured-section .section-header {
  text-align: center;
  margin-bottom: 50px;
}

.featured-section h2 {
  font-size: 32px;
  font-weight: 700;
  color: #1a1a1a;
  margin: 0 0 15px 0;
  letter-spacing: -0.5px;
}

.featured-section .header-underline {
  width: 50px;
  height: 3px;
  background-color: #007bff;
  margin: 0 auto;
  border-radius: 2px;
}

/* Responsive CSS Grid */
.featured-grid-wrapper {
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* 2 columns by default on larger screens */
  gap: 30px;
}

/* Fallback for smaller screens / Mobile view */
@media (max-width: 768px) {
  .featured-grid-wrapper {
    grid-template-columns: 1fr; /* Stacks to 1 column on tablets and mobile phones */
    gap: 20px;
  }
}

/* Modern Feature Card */
.featured-card {
  background: #ffffff;
  border-radius: 16px;
  overflow: hidden;
  text-decoration: none;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.02), 0 1px 3px rgba(0, 0, 0, 0.05);
  border: 1px solid rgba(0, 0, 0, 0.05);
  transition: all 0.35s ease-in-out;
  display: flex;
  flex-direction: column;
}

.featured-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.08);
  border-color: rgba(0, 123, 255, 0.2);
}

/* Image Container with Zoom Effect */
.card-image-wrapper {
  width: 100%;
  height: 220px;
  overflow: hidden;
  background-color: #e9ecef;
}

.card-image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.featured-card:hover .card-image-wrapper img {
  transform: scale(1.05);
}

/* Card Body Content */
.card-content {
  padding: 10px 30px;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.featured-card h4 {
  font-size: 20px;
  font-weight: 600;
  color: #1a1a1a;
  margin: 0 0 12px 0;
  transition: color 0.2s ease;
}

.featured-card:hover h4 {
  color: #007bff;
}

.featured-card p {
  font-size: 15px;
  color: #666666;
  line-height: 1.6;
  margin: 0 0 20px 0;
  flex-grow: 1;
}

/* Action Link Indicator */
.card-link-text {
  font-size: 14px;
  font-weight: 600;
  color: #007bff;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: gap 0.2s ease;
}

.featured-card:hover .card-link-text {
  gap: 10px;
}
   /* ─────────────────────────────────────────────
      TAB PANELS
      ───────────────────────────────────────────── */
   .events-section {
       background: var(--ev-cream);
       min-height: 460px;
   }
   
   .tab-panel {
       display: none;
       padding: 64px 0 88px;
   }
   
   .tab-panel--active {
       display: block;
       animation: panelReveal 0.4s var(--ev-ease) both;
   }
   
   @keyframes panelReveal {
       from { opacity: 0; transform: translateY(12px); }
       to   { opacity: 1; transform: translateY(0); }
   }
   
   
   /* ─────────────────────────────────────────────
      CONTENT GRID
      ───────────────────────────────────────────── */
   .content-grid {
       display: grid;
       grid-template-columns: repeat(auto-fill, minmax(310px, 1fr));
       gap: 30px;
       align-items: start;
   }
   
   
   /* ─────────────────────────────────────────────
      EVENT CARD
      ───────────────────────────────────────────── */
   .event-card {
       background: var(--ev-white);
       border-radius: var(--ev-radius);
       overflow: hidden;
       border: 1px solid var(--ev-border);
       box-shadow: var(--ev-shadow-sm);
       display: flex;
       flex-direction: column;
       transition: transform 0.35s var(--ev-ease),
                   box-shadow 0.35s var(--ev-ease),
                   border-color 0.35s var(--ev-ease);
   
       /* Staggered entrance */
       opacity: 0;
       transform: translateY(22px);
       animation: cardIn 0.5s var(--ev-ease) forwards;
   }
   
   .event-card:nth-child(1) { animation-delay: 0.04s; }
   .event-card:nth-child(2) { animation-delay: 0.11s; }
   .event-card:nth-child(3) { animation-delay: 0.18s; }
   .event-card:nth-child(4) { animation-delay: 0.25s; }
   .event-card:nth-child(5) { animation-delay: 0.32s; }
   .event-card:nth-child(6) { animation-delay: 0.39s; }
   .event-card:nth-child(n+7) { animation-delay: 0.46s; }
   
   @keyframes cardIn {
       to { opacity: 1; transform: translateY(0); }
   }
   
   .event-card:hover {
       transform: translateY(-7px);
       box-shadow: var(--ev-shadow-lg);
       border-color: rgba(27, 67, 50, 0.18);
   }
   
   /* Past cards — desaturated until hover */
   .event-card--past .event-card__image {
       filter: saturate(0.6) brightness(0.95);
       transition: filter 0.4s ease, transform 0.5s var(--ev-ease);
   }
   
   .event-card--past:hover .event-card__image {
       filter: saturate(1) brightness(1);
   }
   
   .event-card__link {
       display: flex;
       flex-direction: column;
       text-decoration: none;
       color: inherit;
       height: 100%;
   }
   
   
   /* ── IMAGE WRAP ── */
   .event-card__image-wrap {
       position: relative;
       aspect-ratio: 3 / 2;
       overflow: hidden;
       flex-shrink: 0;
   }
   
   .event-card__image {
       width: 100%;
       height: 100%;
       object-fit: cover;
       display: block;
       transition: transform 0.55s var(--ev-ease);
   }
   
   .event-card:hover .event-card__image {
       transform: scale(1.07);
   }
   
   /* Bottom fade to allow text/badge overlap */
   .event-card__image-wrap::after {
       content: '';
       position: absolute;
       inset: 0;
       background: linear-gradient(
           to top,
           rgba(10, 25, 18, 0.4) 0%,
           transparent 55%
       );
       pointer-events: none;
   }
   
   
   /* ── DATE BADGE ── */
   .event-card__date-badge {
       position: absolute;
       top: 16px;
       left: 16px;
       z-index: 2;
       display: flex;
       flex-direction: column;
       align-items: center;
       width: 56px;
       padding: 10px 6px;
       background: var(--ev-green);
       border-radius: var(--ev-radius-sm);
       box-shadow: 0 4px 14px rgba(27, 67, 50, 0.45);
       text-align: center;
       line-height: 1;
   }
   
   .event-card__day {
       font-family: 'Playfair Display', serif;
       font-size: 1.55rem;
       font-weight: 700;
       color: var(--ev-white);
       display: block;
       line-height: 1;
   }
   
   .event-card__month {
       font-family: 'DM Sans', sans-serif;
       font-size: 0.62rem;
       font-weight: 600;
       text-transform: uppercase;
       letter-spacing: 0.12em;
       color: var(--ev-gold-light);
       display: block;
       margin-top: 5px;
   }
   
   
   /* ── STATUS BADGE ── */
   .event-card__status {
       position: absolute;
       top: 16px;
       right: 16px;
       z-index: 2;
       padding: 5px 13px;
       font-family: 'DM Sans', sans-serif;
       font-size: 0.65rem;
       font-weight: 700;
       text-transform: uppercase;
       letter-spacing: 0.12em;
       border-radius: var(--ev-radius-pill);
       backdrop-filter: blur(10px);
       -webkit-backdrop-filter: blur(10px);
   }
   
   .event-card__status--upcoming {
       background: rgba(64, 145, 108, 0.2);
       color: #e8f5ee;
       border: 1px solid rgba(64, 145, 108, 0.45);
   }
   
   .event-card__status--past {
       background: rgba(0, 0, 0, 0.18);
       color: rgba(255, 255, 255, 0.88);
       border: 1px solid rgba(255, 255, 255, 0.18);
   }
   
   
   /* ── CARD BODY ── */
   .event-card__body {
       padding: 22px 24px 26px;
       display: flex;
       flex-direction: column;
       flex: 1;
   }
   
   /* Gold accent rule */
   .event-card__body::before {
       content: '';
       display: block;
       width: 32px;
       height: 2px;
       background: linear-gradient(90deg, var(--ev-gold), var(--ev-gold-light));
       border-radius: 2px;
       margin-bottom: 14px;
       flex-shrink: 0;
   }
   
   .event-card__title {
       font-family: 'Playfair Display', serif;
       font-size: 1.12rem;
       font-weight: 600;
       color: var(--ev-ink);
       line-height: 1.32;
       margin: 0 0 10px;
       transition: color 0.2s ease;
   }
   
   .event-card:hover .event-card__title {
       color: var(--ev-green);
   }
   
   .event-card__excerpt {
       font-family: 'DM Sans', sans-serif;
       font-size: 0.855rem;
       font-weight: 300;
       color: var(--ev-muted);
       line-height: 1.68;
       margin: 0;
       flex: 1;
       display: -webkit-box;
       -webkit-line-clamp: 3;
       -webkit-box-orient: vertical;
       overflow: hidden;
   }
   
   .event-card__cta {
       display: inline-flex;
       align-items: center;
       gap: 7px;
       font-family: 'DM Sans', sans-serif;
       font-size: 0.76rem;
       font-weight: 600;
       color: var(--ev-green-mid);
       letter-spacing: 0.07em;
       text-transform: uppercase;
       margin-top: 18px;
       padding-top: 16px;
       border-top: 1px solid var(--ev-border);
       transition: color 0.2s ease, gap 0.2s ease;
       flex-shrink: 0;
   }
   
   .event-card:hover .event-card__cta {
       color: var(--ev-green);
       gap: 11px;
   }
   
   
   /* ─────────────────────────────────────────────
      EMPTY STATE
      ───────────────────────────────────────────── */
   .empty-state {
       grid-column: 1 / -1;
       display: flex;
       flex-direction: column;
       align-items: center;
       text-align: center;
       padding: 96px 24px;
       gap: 14px;
   }
   
   .empty-state i {
       font-size: 2.8rem;
       color: var(--ev-border);
       margin-bottom: 6px;
   }
   
   .empty-state h3 {
       font-family: 'Playfair Display', serif;
       font-size: 1.6rem;
       font-weight: 600;
       color: var(--ev-ink);
       margin: 0;
   }
   
   .empty-state p {
       font-family: 'DM Sans', sans-serif;
       font-size: 0.95rem;
       font-weight: 300;
       color: var(--ev-muted);
       margin: 0;
       max-width: 380px;
       line-height: 1.65;
   }
   
   .empty-state .btn-primary {
       margin-top: 12px;
       padding: 14px 36px;
       font-family: 'DM Sans', sans-serif;
       font-size: 0.82rem;
       font-weight: 600;
       letter-spacing: 0.08em;
       text-transform: uppercase;
       color: var(--ev-white);
       background: var(--ev-green);
       border: none;
       border-radius: var(--ev-radius-pill);
       cursor: pointer;
       box-shadow: 0 4px 18px rgba(27, 67, 50, 0.28);
       transition: var(--ev-transition);
   }
   
   .empty-state .btn-primary:hover {
       background: var(--ev-green-mid);
       transform: translateY(-2px);
       box-shadow: 0 8px 26px rgba(27, 67, 50, 0.32);
   }
   
   
   /* ─────────────────────────────────────────────
      RESPONSIVE
      ───────────────────────────────────────────── */
   @media (max-width: 1024px) {
       .content-grid {
           grid-template-columns: repeat(2, 1fr);
       }
   }
   
   @media (max-width: 768px) {
   
       .page-hero {
           min-height: 380px;
       }
   
       .page-hero__content {
           padding: 64px 0 52px;
       }
   
       .tab-btn {
           padding: 18px 24px;
           font-size: 0.84rem;
       }
   
       .tab-btn--active::before {
           left: 24px;
       }
   
       .tab-panel {
           padding: 44px 0 60px;
       }
   
       .content-grid {
           grid-template-columns: 1fr;
           gap: 20px;
       }
   }
   
   @media (max-width: 480px) {
   
       .page-hero__title {
           font-size: 2.3rem;
       }
   
       .event-card__body {
           padding: 18px 18px 22px;
       }
   }

#event {
    padding: 80px 0;
    background: #f9fafb;
}

.event_container h2 {
    text-align: center;
    font-size: 2.2rem;
    margin-bottom: 40px;
}

.event-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
}

.events {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
}

.events:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(0,0,0,0.12);
}
/* BADGE */
.event-badge {
    position: absolute;
    top: 15px;
    left: 15px;
    padding: 6px 12px;
    font-size: 12px;
    font-weight: 600;
    border-radius: 50px;
    color: #fff;
    backdrop-filter: blur(6px);
}
/* UPCOMING */
.event-badge.upcoming {
    background: linear-gradient(135deg, #28a745, #20c997);
}

/* PAST */
.event-badge.past {
    background: linear-gradient(135deg, #6c757d, #343a40);
}
/* IMAGE */
.event-image {
    display: block;
}

.event-image img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    display: block;
}

/* TEXT */
.event-text {
    padding: 20px;
}

.event h3 {
    font-size: 18px;
    margin-bottom: 10px;
}

.event h3 a {
    color: #111;
    text-decoration: none;
}

.event h3 a:hover {
    color: #0d6efd;
}

.event p {
    font-size: 14px;
    color: #555;
    line-height: 1.6;
}

/* BUTTON */
.event_btn {
    margin-top: 15px;
}

.event-link {
    font-weight: 600;
    color: #0d6efd;
    text-decoration: none;
}

.event-link i {
    margin-left: 5px;
    transition: 0.3s;
}

.event-link:hover i {
    transform: translateX(5px);
}
/* ======================================================
   GLOBAL EVENT PAGE WRAPPER
====================================================== */
.event-hero,.program-hero {
    position: relative;
    height: 420px;
    border-radius: 18px;
    overflow: hidden;
    margin-bottom: 30px;
	margin: 20px;
}

.event-hero-image img, .program-hero-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* DARK OVERLAY */
.event-hero-overlay, .program-hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to top,
        rgba(0,0,0,0.65),
        rgba(0,0,0,0.2)
    );
}

/* CONTENT */
.event-hero-content, .program-hero-content {
    position: absolute;
    bottom: 30px;
    left: 30px;
    right: 30px;
    color: #fff;
    z-index: 2;
}

.event-title, .program-title {
    font-size: 34px;
    font-weight: 800;
    margin-bottom: 8px;
    letter-spacing: -0.5px;
}

.event-date {
    font-size: 16px;
    opacity: 0.9;
    display: flex;
    align-items: center;
    gap: 8px;
}
p.event-date{
	color: #f6d365;

}

#event_section {
    background: #f6f8fb;
    padding-bottom: 80px;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial;
    color: #1d2b3a;
}


/* ======================================================
   HEADER
====================================================== */

.event-header {
    text-align: center;
    margin: 40px 0 20px;
}

.event-title {
    font-size: 34px;
    font-weight: 800;
    letter-spacing: -0.5px;
    margin-bottom: 10px;
}

.event-meta {
    display: flex;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
    font-size: 14px;
    color: #64748b;
}

.event-status {
    padding: 4px 12px;
    border-radius: 999px;
    font-weight: 600;
    font-size: 12px;
}

.event-status.upcoming {
    background: #e0f2fe;
    color: #0369a1;
}

.event-status.past {
    background: #fee2e2;
    color: #991b1b;
}

/* ======================================================
   HERO GRID
====================================================== */

.event-hero-grid {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    gap: 30px;
    align-items: center;
    margin: 30px 0 50px;
}

.event-hero-text {
    padding: 28px;
    border-radius: 18px;
}

.event-short-desc {
    font-size: 16px;
    font-weight: 600;
    color: #334155;
    margin-bottom: 14px;
}

.event-long-desc {
    font-size: 15px;
    color: #475569;
    line-height: 1.7;
    margin-bottom: 20px;
}

.event-hero-image img {
    width: 100%;
    height: 420px;
    object-fit: cover;
    border-radius: 18px;
    box-shadow: 0 12px 35px rgba(15, 23, 42, 0.12);
}

/* ======================================================
   BUTTONS
====================================================== */

.btn-register {
    display: inline-block;
    padding: 12px 18px;
    background: linear-gradient(135deg, #0ea5e9, #2563eb);
    color: white;
    border-radius: 10px;
    font-weight: 600;
    text-decoration: none;
    transition: 0.3s ease;
}

.btn-register:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(37, 99, 235, 0.3);
}

/* ======================================================
   EVENT BLOCK SYSTEM
====================================================== */

.event-body {
    margin-top: 30px;
}

.event-block {
    margin-bottom: 28px;
    animation: fadeUp 0.6s ease both;
}

@keyframes fadeUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ======================================================
   CARDS
====================================================== */

.event-card {
    background: #fff;
    border-radius: 16px;
    padding: 18px;
    box-shadow: 0 8px 25px rgba(15, 23, 42, 0.06);
}

/* TEXT */
.event-card--text p {
    font-size: 15px;
    line-height: 1.8;
    color: #334155;
}

/* IMAGE */
.event-card--image img {
    width: 100%;
    border-radius: 14px;
    object-fit: cover;
}

/* QUOTE */
.event-card--quote {
    background: #0d3000;
    color: white;
    padding: 24px;
    border-radius: 16px;
    font-style: italic;
}
.event-card--quote p{
	color: #fff;
}

.event-card--quote .quote-icon {
    font-size: 26px;
    opacity: 0.5;
}

/* GALLERY */
.event-gallery-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}


.gallery-item img:hover {
    transform: scale(1.05);
}

/* VIDEO */
/* =========================================================
   VIDEO (UPDATED HEIGHT 40%)
========================================================= */

.video-wrapper {
    position: relative;
    width: 100%;
    height: 40vh; /* 👈 40% of viewport height */
    background: #000;
    overflow: hidden;
    border-radius: 18px;
}

.video-wrapper iframe {
    width: 100%;
    height: 100%;
    border: 0;
}

/* CTA */
.event-card--cta {
    text-align: center;
}

.event-card--cta .btn-primary {
    background: #16a34a;
    color: white;
    padding: 12px 18px;
    border-radius: 10px;
    display: inline-block;
    font-weight: 600;
    text-decoration: none;
}

/* ======================================================
   COUNTDOWN
====================================================== */

.event-countdown {
    display: flex;
    justify-content: center;
    gap: 18px;
    margin: 40px 0;
}

.event-countdown div {
    background: white;
    padding: 16px;
    border-radius: 14px;
    min-width: 80px;
    text-align: center;
    box-shadow: 0 6px 20px rgba(0,0,0,0.06);
}

.event-countdown span {
    font-size: 22px;
    font-weight: bold;
    display: block;
}

/* ======================================================
   RELATED EVENTS
====================================================== */
.related-events {
    margin-top: 60px;
}

.related-title {
    text-align: center;
    font-size: 22px;
    margin-bottom: 20px;
    font-weight: 700;
}

.related-card {
    display: block;
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    text-decoration: none;
    box-shadow: 0 10px 30px rgba(0,0,0,0.08);
    transition: 0.3s ease;
}

.related-card:hover {
    transform: translateY(-6px);
}

.related-image img {
    width: 100%;
    height: 280px;
    object-fit: cover;
}

.related-content {
    padding: 12px;
}

.related-content h4 {
    font-size: 15px;
    margin: 0;
    color: #0f172a;
}

.related-date {
    display: block;
    margin-top: 5px;
    color: #64748b;
    font-size: 12px;
}

/* Swiper controls */
.swiper-button-next,
.swiper-button-prev {
    color: #fff;
	background: #000000ad;
	border-radius: 25px;
	padding: 10px;
}

.related-swiper .swiper-pagination {
    position: relative;
    margin-top: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 6px;
}

.related-swiper .swiper-pagination-bullet{
	background: #001d69;
}

.swiper-pagination-bullet-active {
    background: #2563eb;
}
/* =========================
   SHARE
========================= */

.event-share {
	text-align: center;
  }
  
  .share-buttons {
	margin-top: 10px;
  }
  
  .share-buttons a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 55px;
	height: 55px;
	margin: 5px;
	border-radius: 50%;
	background: #f1f5f9;
	color: #111;
	transition: 0.3s;
  }
  
  .share-buttons a:hover {
	background: #2563eb;
	color: #fff;
  }
  .share-buttons a i{
	font-size: 30px;
  }
/* ======================================================
   BACK BUTTON
====================================================== */

.back-to-events {
    display: block;
    text-align: center;
    margin-top: 40px;
    color: #2563eb;
    font-weight: 600;
    text-decoration: none;
}

/* ======================================================
   RESPONSIVE
====================================================== */

@media (max-width: 900px) {
    .event-hero-grid {
        grid-template-columns: 1fr;
    }

    .event-gallery-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 600px) {
    .event-gallery-grid {
        grid-template-columns: 1fr;
    }
}

/*Volunteer*/
/* =======================
   Donation Section Styles
   ======================= */
   .contact-section {
	padding: 150px 20px;
	position: relative;
	width: 100%;
	background-image: url("../images/slider/slider2.jpg");
	background-size: cover;
	background-attachment: fixed;
	background-position:center;
	top: 0; 
	margin-top: 0px;
	margin-bottom: 0px;
	position: relative;
	z-index: 9;
	float: left;
}
.contact-section:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #000;
    opacity: .6;
	width: 100%;
    z-index: -10;
}
  
  .contact-container {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
	max-width: 1200px;
	margin: auto;
  }
  
  .contact-info {
    display: flex;
    justify-content: center;
    flex-direction: column;
    text-align: left;
    gap: 5px;
}


  .contact-info h2 {
	font-size: 50px;
	margin-bottom: 10px;
	color: #ffd52e;
  }
  
  .contact-info p {
	line-height: 1.6;
	font-size: 20px;
	margin-bottom: 25px;
	color: #fff;
  }
  
  .info-item {
	display: flex;
	gap: 10px;
	margin-bottom: 15px;
	align-items: center;
	font-size: 18px;
  }
  
  .info-item i {
	font-size: 18px;
	color: #ffd52e;
  }
  .info-item span{
	color: #fff;
  }
  .info-item a{
	color: #fff;
  }
  .contact-form-box {
	padding: 30px;
	background: #fff;
	border-radius: 12px;
	box-shadow: 0 4px 20px rgba(0,0,0,0.08);
  }
  
  .contact-form-box h3 {
	margin-bottom: 20px;
	font-size: 26px;
  }
  
  .form-group {
	margin-bottom: 18px;
	display: flex;
	flex-direction: column;
  }
  
  .form-group label {
	font-weight: 600;
	margin-bottom: 6px;
  }
  
  .form-group input,
  .form-group textarea {
	padding: 12px 15px;
	border: 1px solid #ccc;
	border-radius: 8px;
	font-size: 16px;
	transition: 0.3s;
  }
  
  .form-group input:focus,
  .form-group textarea:focus {
	border-color: #E63946;
	outline: none;
  }
  
  /* Wrapper row */
.form-row {
    display: flex;
    gap: 15px;
    width: 100%;
    margin-bottom: 20px;
    flex-wrap: wrap; /* mobile-friendly */
}

/* Each input group */
.form-group {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 160px;
}

/* Labels */
.form-group label {
    font-size: 14px;
    margin-bottom: 6px;
    font-weight: 600;
    color: #333;
}

/* Inputs and select */
.form-group input,
.form-group select {
    padding: 12px;
    border: 1px solid #ccc;
    border-radius: 6px;
    font-size: 15px;
    width: 100%;
    transition: 0.2s ease;
    background: #fff;
}

/* Focus state */
.form-group input:focus,
.form-group select:focus {
    border-color: #007bff;
    outline: none;
    box-shadow: 0 0 0 2px rgba(0,123,255,0.15);
}

/* Read-only calling code */
#callingCode[readonly] {
    background: #f8f8f8;
    cursor: not-allowed;
}

/* Error text */
.error {
    color: red;
    font-size: 13px;
    margin-top: 4px;
}

/* Make phone field grow wider */
.flex-grow {
    flex: 2;
}

/* Mobile responsive */
@media(max-width: 600px) {
    .form-row {
        flex-direction: column;
    }
}


  .contact-btn {
	background: #417700;
	color: #fff;
	padding: 14px;
	width: 100%;
	border: none;
	border-radius: 8px;
	font-size: 18px;
	cursor: pointer;
	transition: 0.3s;
  }
  
  .contact-btn:hover {
	background: #223d00;
  }
  
  .error-msg {
	font-size: 14px;
	color: red;
	margin-top: 5px;
  }
  
  .form-success {
    padding: 12px 15px;
    margin-bottom: 20px;
    border-radius: 5px;
    display: none; /* hidden by default */
    font-weight: 500;
}

.form-success.error {
    background-color: #ffe6e6;
    color: #cc0000;
    border: 1px solid #cc0000;
}

.form-success.success {
    background-color: #e6ffed;
    color: #007a29;
    border: 1px solid #007a29;
}

  /* Responsive */
  @media (max-width: 768px) {
	.contact-container {
	  grid-template-columns: 1fr;
	}
  }
  
/* Container */
#donation-section {
	background: #f6f8fb;
	padding: 60px 20px;
	display: flex;
	justify-content: center;
  }
  
  /* Split Layout: Image left, Form right */
  .donation-wrapper {
	display: flex;
	max-width: 1000px;
	margin: 0 auto;
	gap: 0px; /* space between image and form */
	flex-wrap: wrap; /* stack on small screens */
  }
  
  /* Left Image */
  .donation-image {
	flex: 1;
	min-width: 300px;
	overflow: hidden;
  }
  
  .donation-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.4s ease;
  }
  
  .donation-image img:hover {
	transform: scale(1.05);
  }
  
  /* Right Form */
  .donation-container {
	flex: 1;
	min-width: 300px;
	background: #fff;
	padding: 50px;
	box-shadow: 0 8px 32px rgba(0,0,0,0.08);
	display: flex;
	flex-direction: column;
	gap: 10px;
  }
  
  .donation-container h2 {
	color: #ff6b00;
	font-size: 2rem;
	text-align: center;
  }
  
  .subtitle {
	text-align: center;
	color: #6b7280;
	margin-bottom: 10px;
  }
  
  /* Step Form */
  .donation-step {
	display: flex;
	flex-direction: column;
	gap: 16px;
  }
  
  .amount-options, .payment-options {
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
  }
  
  .amount, .payment {
	flex: 1 1 45%;
	background: #f0f4f8;
	padding: 14px 0;
	text-align: center;
	border-radius: 12px;
	cursor: pointer;
	font-weight: 600;
	color: #000;
	transition: all 0.3s ease;
  }
  
  .amount.selected, .payment.selected {
	background: #ff6b00;
	color: #fff;
	box-shadow: 0 4px 12px rgba(255,107,0,0.3);
  }
  
  .amount:hover, .payment:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(15,23,42,0.15);
  }
  
  .custom-amount input {
	width: 100%;
	padding: 12px 16px;
	border-radius: 12px;
	border: 1px solid #e2e6f0;
  }
  
  input, textarea {
	padding: 12px 16px;
	border-radius: 12px;
	border: 1px solid #e2e6f0;
	font-size: 1rem;
	width: 100%;
  }
  
  input:focus, textarea:focus {
	outline: none;
	border-color: #ff6b00;
	box-shadow: 0 0 8px rgba(255,107,0,0.2);
  }
  
  textarea {
	min-height: 80px;
	resize: none;
  }
  
  /* Buttons */
  .next-btn, .prev-btn, .donate-btn {
	padding: 14px 30px;
	border-radius: 12px;
	border: none;
	cursor: pointer;
	font-weight: 600;
	font-size: 1.2rem;
	transition: all 0.3s ease;
  }
  
  .next-btn, .donate-btn,button#newDonationBtn {
	background: #ff6b00;
	color: #fff;
  }
  
  .next-btn:hover, .donate-btn:hover,button#newDonationBtn:hover {
	background: #e65b00;
	transform: translateY(-2px);
  }
  
  .prev-btn {
	background: #f0f4f8;
	color: #10203a;
  }
  
  .prev-btn:hover {
	background: #e2e6f0;
  }
  
  /* Donation Status */
  .donation-status {
	margin-top: 12px;
	font-size: 0.95rem;
	color: #10203a;
	text-align: center;
  }
  
  /* Trust Signals */
  .trust-signals {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 16px;
	margin-top: 20px;
	flex-wrap: wrap;
  }
  
  .trust-signals img,
  .trust-signals i {
	height: 32px;
	font-size: 1.8rem;
	color: #ff6b00;
  }
  
  /* Payment icons as inline buttons */
  .payment-icons {
	display: flex;
	gap: 12px;
	justify-content: center;
  }
  
  .payment-icons i {
	font-size: 2rem;
	color: #10203a;
	cursor: pointer;
	padding: 10px;
	border-radius: 12px;
	background: #f0f4f8;
	transition: all 0.3s ease;
  }
  
  .payment-icons i:hover {
	color: #fff;
	background: #ff6b00;
	transform: translateY(-2px);
  }
  /* ==========================
   Amount & Payment Buttons
   ========================== */
.amount, .payment {
	flex: 1 1 45%;
	background: #f0f4f8;
	padding: 14px 0;
	text-align: center;
	border-radius: 12px;
	cursor: pointer;
	font-weight: 600;
	transition: all 0.3s ease;
	position: relative;
  }
  
  /* Selected state */
  .amount.selected, .payment.selected {
	background: #ff6b00;
	color: #fff;
	box-shadow: 0 4px 12px rgba(255,107,0,0.3);
  }
  
  /* Invalid state */
  .amount.error, .payment.error {
	border: 2px solid #ff4d4f;
	background-color: #fff1f0;
	color: #ff4d4f;
	animation: shake 0.3s ease;
  }
  
  /* Hover effect */
  .amount:hover, .payment:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(15,23,42,0.15);
  }
  
  /* Shake animation for invalid buttons */
  @keyframes shake {
	0% { transform: translateX(0); }
	20% { transform: translateX(-3px); }
	40% { transform: translateX(3px); }
	60% { transform: translateX(-3px); }
	80% { transform: translateX(3px); }
	100% { transform: translateX(0); }
  }
  
  /* Error message under button group */
  .amount-options .error-message, .payment-options .error-message {
	width: 100%;
	text-align: left;
	margin-top: 4px;
  }
  

  /* ==========================
   Invalid Field Highlight
   ========================== */
input.error, textarea.error, .amount.error, .payment.error {
	border: 2px solid #ff4d4f; /* Red border for invalid */
	background-color: #fff1f0; /* Slight red background */
	transition: all 0.3s ease;
  }
  
  input.error:focus, textarea.error:focus {
	outline: none;
	border-color: #ff4d4f;
	box-shadow: 0 0 8px rgba(255,77,79,0.2);
  }
  
  /* Error Message */
  .error-message {
	color: #ff4d4f;
	font-size: 0.85rem;
	margin-top: 4px;
	margin-bottom: -8px;
	font-weight: 500;
	animation: fadeIn 0.3s ease;
  }
  
  /* Donation Status Message */
  #donation-status {
	margin-top: 16px;
	font-size: 1rem;
	font-weight: 500;
	text-align: center;
	transition: all 0.3s ease;
  }
  
  /* Optional: Hover shake effect on invalid buttons */
  .amount.error:hover, .payment.error:hover {
	transform: translateY(-1px) rotate(-1deg);
  }
  .h-captcha {
    text-align: center;
}
  
  /* Fade in animation */
  @keyframes fadeIn {
	from { opacity: 0; transform: translateY(-5px); }
	to { opacity: 1; transform: translateY(0); }
  }
  
  /* Responsive */
  @media(max-width:768px){
	.donation-wrapper {
	  flex-direction: column;
	}
  }
  
  @media(max-width:576px){
	.amount, .payment {
	  flex: 1 1 100%;
	}
  }
  
/*Board of Directors*/
.breadcrumb-header {
    position: relative;
    background-image: url('../images/slider/slider5.jpg');
    background-size: cover;
	height: 400px;
    background-position: center;
    background-repeat: no-repeat;
    color: #fff;
    text-align: center;
    padding: 100px 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.breadcrumb-header .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.452); /* dark semi-transparent overlay */
    z-index: 1;
}

.breadcrumb-header h2,
.breadcrumb-header p {
    position: relative;
    z-index: 2; 
}

.breadcrumb-header h2 {
    font-size: 42px;
    margin: 0 0 10px;
    font-weight: 700;
	color: #fff;
}

.breadcrumb-header p {
    font-size: 18px;
    margin: 0;
	color: #fff;

}

@media (max-width: 992px) {
    .breadcrumb-header {
        padding: 80px 15px;
    }
    .breadcrumb-header h2 {
        font-size: 32px;
    }
    .breadcrumb-header p {
        font-size: 16px;
    }
}

@media (max-width: 700px) {
    .breadcrumb-header {
        padding: 60px 10px;
    }
    .breadcrumb-header h2 {
        font-size: 26px;
    }
    .breadcrumb-header p {
        font-size: 14px;
    }
}


.board-section {
    background: #f7f9fb;
}

.board-header {
    text-align: center;
    margin-bottom: 40px;
}

.board-header h2 {
    font-size: 32px;
    margin-bottom: 10px;
    color: #fff;
}

.board-header p {
    font-size: 16px;
    color: #ffd52e;
}

.board-grid {
	margin-top: 20px;
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 1200px) {
    .board-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 992px) {
    .board-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 700px) {
    .board-grid {
        grid-template-columns: 1fr;
    }
}

.board-card {
    background: rgba(255, 255, 255, 0.6);
    backdrop-filter: blur(10px);
    border-radius: 18px;
    padding: 20px;
    box-shadow: 0 6px 18px rgba(15, 23, 42, 0.08);
    transition: transform 0.24s ease, box-shadow 0.24s ease;
}

.board-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(15, 23, 42, 0.12);
}

.board-img {
    width: 100%;
    height: 350px;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 12px;
}

.board-img img {
    width: 100%;
    object-fit: cover;
}

.director-name {
    font-size: 18px;
    color: #0f172a;
    margin: 8px 0 4px;
}

.director-role {
    font-size: 14px;
    color: #6b7280;
    margin: 0 0 8px;
}

.director-bio {
    font-size: 14px;
    color: #374151;
    line-height: 1.5;
    margin-bottom: 12px;
}

.director-social {
    display: flex;
    gap: 10px;
    margin-bottom: 12px;
}

.director-social i {
    font-size: 25px;
	color: #000;
    display: block;
	margin-top: 10px;
	letter-spacing: 20px;
}
.director-social i:hover{
	color: #007a29;
}
.read-more {
    display: inline-block;
    padding: 10px 20px;
    background-color: #0f172a;
    color: #fff;
    border-radius: 12px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    position: relative;
    overflow: hidden;
    transition: background-color 0.3s ease;
}

.read-more i {
    margin-left: 8px;
    transition: transform 0.3s ease;
}

/* Hover: move arrow forward */
.read-more:hover i {
    transform: translateX(6px);
}

/* Scratch/slide background effect */
.read-more::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: rgba(255,255,255,0.1); /* subtle white streak */
    transform: skewX(-20deg);
    transition: left 0.5s ease;
    z-index: 1;
}

.read-more:hover::before {
    left: 100%;
}

/* Keep text above the overlay */
.read-more span, .read-more i {
    position: relative;
    z-index: 2;
}


/* Dark theme variant */
.board-section.dark {
    background: #0f172a;
}

.board-section.dark .board-card {
    background: rgba(30, 41, 59, 0.7);
    color: #f3f4f6;
}

.board-section.dark .director-role {
    color: #cbd5e1;
}

/*Full Profile*/
/* Profile Page CSS */
.profile-hero {
    background: #f7f9fb;
    padding: 80px 20px;
}

.profile-hero .hero-content {
    display: flex;
    gap: 40px;
    flex-wrap: wrap;
}

.profile-hero .hero-img {
    flex: 1;
    max-width: 450px;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 6px 18px rgba(15,23,42,0.1);
}

.profile-hero .hero-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.profile-hero .hero-text {
    flex: 1;
}

.profile-hero h2 {
    font-size: 36px;
    margin-bottom: -1px;
    color: #0f172a;
	font-weight: 400;
}

.profile-hero h1 {
    font-size: 45px;
	font-weight: 700;
	text-transform: uppercase;
    margin-bottom: 8px;
    color: #0f172a;
}

.profile-hero .role {
    font-size: 18px;
    color: #6b7280;
    margin-bottom: 16px;
}

.profile-hero .social-links a {
    font-size: 20px;
    margin-right: 12px;
    color: #0f172a;
    transition: color 0.3s ease;
}

.profile-hero .social-links a:hover {
    color: #2563eb;
}
.profile-hero .hero-profile{
	margin-top: 20px;
}
.profile-hero .hero-profile h2{
	font-size: 30px;
	margin-bottom: 10px;
}
.profile-bio {
    padding: 10px 20px;
    background: #fff;
}

.profile-bio h2 {
    font-size: 28px;
    margin-bottom: 20px;
    color: #0f172a;
}

.profile-bio h3 {
    font-size: 20px;
    margin-top: 20px;
    margin-bottom: 12px;
    color: #0f172a;
}

.profile-bio p, .profile-bio ul {
    font-size: 16px;
    line-height: 1.8;
    color: #374151;
}

.profile-bio ul {
    list-style: disc inside;
    margin-bottom: 0px;
	padding: 0px;
}

.profile-cta {
    text-align: center;
    padding: 40px 20px;
}

.profile-cta .read-more {
    background-color: #0f172a;
    color: #fff;
    border-radius: 12px;
    padding: 10px 20px;
    font-size: 14px;
    text-decoration: none;
    display: inline-block;
    transition: background-color 0.3s ease, transform 0.3s ease;
}

.profile-cta .read-more:hover {
    background-color: #374151;
    transform: translateY(-3px);
}
.profile-cont h3{
	font-size: 20px;
    margin-top: 20px;
    margin-bottom: 12px;
    color: #0f172a;
}

@media (max-width: 992px) {
    .profile-hero .hero-content {
        flex-direction: column;
        text-align: center;
    }
    .profile-hero .hero-img {
        max-width: 80%;
    }
}

/* ==============================
   Other Board Members Section
   ============================== */
 
/* ===============================
   BOARD SECTION (MODERN)
=============================== */
#upcoming-events{
  width: 100%;
  float: left;
  padding: 20px 0px;
}
.others-section {
	padding: 80px 0;
	width: 100%;
	float: left;
	background: linear-gradient(180deg, #deffce, #eef2f7);
  }
  
  .section-header {
	text-align: center;
	margin-bottom: 50px;
  }
  
  .section-title {
	font-size: 32px;
	font-weight: 700;
	color: #0f172a;
  }
  
  .section-subtitle {
	font-size: 16px;
	color: #64748b;
	margin-top: 10px;
  }
  
  /* ===============================
	 SWIPER FIX (CRITICAL)
  =============================== */
  .board-slider .swiper-wrapper {
	display: flex !important;
  }
  
  .board-slide {
	display: flex;
	height: auto;
  }
  
  /* ===============================
	 CARD DESIGN
  =============================== */
  .board-card {
	background: #ffffff;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 10px 25px rgba(0,0,0,0.05);
	transition: all 0.35s ease;
	display: flex;
	flex-direction: column;
	height:500px;
  }
  
  /* HOVER EFFECT */
  .board-card:hover {
	transform: translateY(-10px);
	box-shadow: 0 20px 40px rgba(0,0,0,0.12);
  }
  
  /* ===============================
	 IMAGE (FIXED HEIGHT)
  =============================== */
  .board-card-image {
	position: relative;
	width: 100%;
	height: 260px; /* 🔥 SAME HEIGHT */
	overflow: hidden;
  }
  .board-card-image {
    height: 400px;
    overflow: hidden;
}
  .board-card-image img {
	width: 100%;
	height: 100%;
	object-fit: cover; /* 🔥 CROPS CLEANLY */
	transition: transform 0.5s ease;
  }
  
  /* IMAGE ZOOM */
  .board-card:hover .board-card-image img {
	transform: scale(1.08);
  }
  
  /* OPTIONAL OVERLAY */
  .board-card-image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(
	  to top,
	  rgba(0,0,0,0.3),
	  transparent
	);
	opacity: 0;
	transition: 0.3s ease;
  }
  
  .board-card:hover .board-card-image::after {
	opacity: 1;
  }
  
  /* ===============================
	 CONTENT
  =============================== */
  .board-card-content {
	padding: 20px;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
  }
  
  .board-card-name {
	font-size: 18px;
	font-weight: 600;
	color: #0f172a;
	margin-bottom: 6px;
  }
  
  .board-card-role {
	font-size: 14px;
	color: #64748b;
	margin-bottom: 15px;
  }
  
  /* ===============================
	 BUTTON
  =============================== */
  .board-card-link {
	margin-top: auto;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 14px;
	font-weight: 600;
	color: #2563eb;
	text-decoration: none;
	transition: 0.3s ease;
  }
  
  .board-card-link i {
	transition: transform 0.3s ease;
  }
  
  .board-card-link:hover {
	color: #1e40af;
  }
  
  .board-card-link:hover i {
	transform: translateX(5px);
  }
  
  /* ===============================
	 SWIPER NAVIGATION
  =============================== */
  .board-slider-nav {
	margin-top: 30px;
	display: flex;
	justify-content: center;
	gap: 20px;
  }
  
  .board-slider-prev,
  .board-slider-next {
	width: 45px;
	height: 45px;
	border-radius: 50%;
	background: #ffffff6d;
	box-shadow: 0 5px 15px rgba(0,0,0,0.1);
	color: #0f172a;
	transition: all 0.3s ease;
  }
  
  .board-slider-prev:hover,
  .board-slider-next:hover {
	background: #2563eb;
	color: #ffffff;
  }
  
  /* ===============================
	 PAGINATION
  =============================== */
  .board-slider-pagination {
	margin-top: 55px;
	text-align: center;
  }
  
  .board-slider-pagination .swiper-pagination-bullet {
	background: #cbd5f5;
	border:1px #000 solid;
	opacity: 1;
  }
  
  .board-slider-pagination .swiper-pagination-bullet-active {
	background: #2563eb;
  }
  
  /* ===============================
	 RESPONSIVE
  =============================== */
  @media (max-width: 1024px) {
	.board-card-image {
	  height: 220px;
	}
  }
  
  @media (max-width: 768px) {
	.board-section {
	  padding: 60px 0;
	}
  
	.section-title {
	  font-size: 26px;
	}
  
	.board-card-image {
	  height: 200px;
	}
  }
  
  @media (max-width: 480px) {
	.board-card-image {
	  height: 180px;
	}
  }
/*Portifiolo*/
#gallery{
	width: 100%;
	float: left;
	padding: 50px 0px;
	text-align: center;
  }
  #gallery hr{
	width: 50%;
  }
  
  #gallery h4{
	font-size: 30px;
	margin: 0px;
  }
  
  #gallery .photo .photo-grid{
	margin-bottom: 20px;
	overflow: hidden;
  }
  
  #gallery .photo img:not(:last-child) {
	margin-bottom: 1rem;
  }
  
  #gallery .photo img {
	cursor: pointer;
	transition: opacity 400ms;
	-webkit-transition: all 300ms;
	-moz-transition: all 300ms;
	transition: all 300ms;
  }
  
  #gallery .photo img:hover {
	-webkit-transform: scale(1.2);
	-moz-transform: scale(1.2);
	transform: scale(1.2);
  }
  
  
  #gallery .photo img {
	animation: rise 400ms ease-out backwards;
	animation-play-state: paused;
	animation-delay: 300ms;
  }
  
  /* WhatsApp icon */
/* Container for the widget */
.whatsapp-widget {
	position: fixed;
	bottom: 24%;
	right: 20px;
	z-index: 9999;
  }
  span.chat-text{
	color: #000;
	font-size: 11px;
	background: #fff;
	left: -26px;
    position: relative;
	padding: 10px;
	border-radius: 20px;
	margin-top: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
  }
  /* Toggle button styling */
  .whatsapp-toggle {
	position: relative;
	background-color: #25d366;
	color: #fff;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	display: flex;
	margin-bottom: 10px;
	align-items: center;
	justify-content: center;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
	cursor: pointer;
  }
  .whatsapp-toggle i {
	font-size: 28px;
  }
  
  /* Online dot indicator */
  .online-dot {
	position: absolute;
	bottom: 5px;
	right: 5px;
	width: 12px;
	height: 12px;
	background-color: #44b700;
	border: 2px solid #fff;
	border-radius: 50%;
  }
  /* Chat box styling (hidden by default) */
.whatsapp-chat {
	position: absolute;
	bottom: 80px;
	right: 0;
	width: 320px;
	background-color: #fff;
	border-radius: 10px;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.3);
	opacity: 0;
	transform: translateY(20px);
	transition: opacity 0.3s ease, transform 0.3s ease;
	pointer-events: none;
  }
  
  /* Chat box visible state */
  .whatsapp-chat.open {
	opacity: 1;
	transform: translateY(0);
	pointer-events: auto;
	margin-bottom: -16px;
	right: 81px;
  }
  
  /* Keyframes for fadeDown animation */
  @keyframes fadeDown {
	0% {
	  opacity: 1;
	  transform: translateY(0);
	}
	100% {
	  opacity: 0;
	  transform: translateY(20px);
	}
  }
  
  /* Chat box closing state uses fadeDown animation */
  .whatsapp-chat.closing {
	animation: fadeDown 0.3s forwards;
  }
  
  /* Chat header styling */
  .whatsapp-header {
	background-color: #25d366;
	color: #fff;
	padding: 10px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
  }
  .header-left {
	margin-right: 10px;
  }
  
  /* Company logo styling */
  .company-logo {
	width: 40px;
	height: 40px;
	background-color: #fff;
	border-radius: 50%;
	padding: 5px;
	object-fit: contain;
  }
  
  /* Header text styling */
  .header-text {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	font-size: 14px;
	margin-right: 10px;
  }
  .header-text .company-name {
	font-weight: bold;
  }
  .header-text .chat-prompt {
	font-size: 12px;
  }
  
  /* Close button styling */
  .close-chat {
	background: none;
	border: none;
	color: #fff;
	font-size: 24px;
	cursor: pointer;
  }
  
  /* Welcome message styling */
  .welcome-message {
    padding: 30px 20px;
    background-color: #f2f2f2;
    color: #333;
    font-size: 14px;
    text-align: center;
    border-bottom: 1px solid #ddd;
}
  /* Input container for inline message input and send icon */
  .input-container {
	display: flex;
	align-items: center;
	padding: 10px;
  }
  .input-container .whatsapp-message {
	flex: 1;
	border: 1px solid rgba(221, 221, 221, 0.62);
	border-radius: 5px;
	padding: 8px;
	font-size: 14px;
	font-family: inherit;
	outline: none;
  }
  .input-container .whatsapp-send {
	background-color: #25d366;
	border: none;
	margin-left: 10px;
	padding: 10px;
	border-radius: 5px;
	color: #fff;
	cursor: pointer;
	transition: background-color 0.3s ease;
	display: flex;
	align-items: center;
	justify-content: center;
  }
  .input-container .whatsapp-send:hover {
	background-color: #1ebe5d;
  }
  .input-container .whatsapp-send i {
	font-size: 16px;
  }
/**Start of Media **/
/*scrollToTop*/
.scrollToTop{
	position: fixed;
	bottom: 80px;
	right: 20px;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	line-height: 40px;
	text-align: center;
	background-color: #BB853D;
	color: #ffffff;
	z-index: 60000;
	display: none;
}



/* Marquee*/
.marslide{
position: fixed;
z-index: 1000;
bottom: 0%;
padding: 0px;
margin: 0px;
width: 100%;
height: 30px;
float: left;
animation: marquee 5s linear infinite;
background: #fff;
}
.marslide  .marsliderup{
  width: auto;
  float:left;
  margin-top: 0px;
  text-transform: uppercase;
  padding-left: 10px;
}
.marslide  .marsliderup p{
  font-weight: bold;
	font-size: 18px;
	margin-top: 0px;
  color: red;
}
.marslide marquee{
  width: 90%;
	margin-top: 0px;
	float: right;
}
.marslide marquee span{
	font-size: 19px;
	text-transform: uppercase;
	color: #000;
	padding-left: 130px;
}
.marslide marquee span b{
	font-weight:bold;
	color: #fff;
	padding: 10px;
	background: #417004;
	font-style: italic;
}
.marslide marquee  a{
	color:#417700;
	font-size: 18px;

}
.marslide marquee span a:hover{
	color: red;
}
 /*Footer*/

  html, body {
    height: 100%
  }

  ul {
    list-style: none
  }
  a {
    text-decoration: none
  }
  #flex-rw{
    background:#0e3600 ;
	width: 100%;
	float: left;
  }

  .flex-rw {
    display: flex;
    flex-flow: row wrap;
  }

  footer {
    width: 100%;
	padding: 0px;
  }
  footer ul{
	padding: 0px;
  }
  .footer-list-top {
    margin: 10px;
    margin-left:30px;
    width: 20%;
  }
  .footer-list-top:nth-child(1){
	width: 25%;
  }
  
.footer-list-top .img_foot{
width: 100%;float: left;
}
.footer-list-top .img_foot img{
	width: 60%;
	float: left;
	background-color: #fff;
	padding: 20px;
	border-radius: 20px;
	margin-bottom: 20px;
	}

  .footer-list-top h4,.footer-list-top h3, .news-let h4{
      font-size: 20px;
      text-transform: uppercase;
      font-weight: 600;
      padding-bottom: 10px;
      margin: 0px;
      color:#fff ;
      margin-left: -10px;
      margin-top: 30px;

  }
 
  .footer-list-top p,.footer-list-top li a{
    font-size: 15px;
    color: #fff;
    width: 100%;
	text-align: left;
    line-height: 30px;
  }
  .footer-list-top p{
	display: flex;
  }

  .footer-list-top p i{
    margin-right: 10px;
    color:#fff ;
	margin-top: 9px;
  }
    .footer-list-top p i a, .footer-list-top p,.footer-list-top p a{
      font-size: 15px;
		color: #fff;
    }

		.footer-list-top  a i{
		  letter-spacing: 10px;
		  font-size: 20px;
			color: #fff;
		}
		.footer-list-top  a i:hover,.footer-list-top li a:hover{
		  color: #BB853D;
		}
		
		.news-let{
			margin: 0px;
		   }		
			   .news-let form{
			   width: 100%;
			   padding: 0;
			   margin-bottom: 20px;
		   }
			   .news-let input[type="email"]{
			 padding: 15px;
			   font-size: 15px;
			 height: 40px;
			   margin-top: 10px;
			   width: 100%;
			   border-radius: 20px;
			   border: none;
			   background: #fff;
			   color: #595959;
			   outline: none;
		   }
		   .news-let button {
			background: #BB853D;
			color: #fff;
			font-size: 14px;
			margin-top: 10px;
			width: 100%;
			padding: 13px 20px;
			border: 2px #BB853D solid;
			border-radius: 50px;
		  }
		   .news-let button:hover{
		   border: 2px #BB853D solid;
		   color: #fff;
		   background: none;
		   }

.social{
   margin: 2px;
   float: left;
}
.social h6{
  font-weight: 700;
  font-size: 20px;
  color: white ;
  text-transform: uppercase;
  margin-left: 40px;
  margin-bottom: 20px;
}

	.footer2{
		text-align: center;
		padding: 5px;
		margin-bottom: 0px;
		color: #fff;
		background:#00310b;
		width: 100%;
		float: left;
	}
	.footer2 p{
		color: #023882;
		font-size: 14px;
		margin-bottom: 10px;
	}
	.footer2 a{
		margin-left: 10px;
		color: #BB853D;
	}
	.footer2 a:hover{
		text-decoration: underline;
	}

