a {
   text-decoration: none;
   color: inherit;
 }

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

 .container {
   width: 100%;
   max-width: 1200px;
   margin: 0 auto;
   padding: 0 20px;
 }


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

body {
  font-family: 'Roboto', sans-serif;
  background-color: #f5f5f5;
}
.header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: rgb(0, 0, 128);
  padding: 1rem 2rem;
  color: white;
  position: sticky;
  top: 0;
  z-index: 1000;
}

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

.logo-img {
  width: 2.6rem; 
  height: 2.6rem;
  margin-right: 0.5rem;
  object-fit: contain;
}

.logo h1 {
  font-size: 1.9rem;
  letter-spacing: 1px;
}

.background1{
  width: 100%;
  min-height: 500px;
  height: auto;
  object-fit: cover;
  display: block;
  position: auto;
}

.navbar ul {
  list-style: none;
  display: flex;
  gap: 1.5rem;
}

.navbar li {
  position: sticky;
}

.navbar a {
  text-decoration: none;
  color: white;
  font-weight: bold;
  transition: color 0.3s ease;
  display: inline-block;
  padding: 0.3rem 0.5rem;
}

.navbar a:hover {
  color: ;
}
.dropdown {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  background-color: navy;
  padding: 0.5rem 0;
  border-radius: 5px;
  z-index: 1;
  min-width: 120px;
  flex-direction: column;
  box-shadow: 0 4px 8px rgba(0,0,0,0.15);
}

.navbar li:hover > .dropdown {
  display: flex;
  flex-direction: column;
}

.dropdown ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
}

.dropdown li {
  padding: 0;
}

.dropdown a {
  color: white;
  display: block;
  padding: 0.1rem 0.5rem;
  transition: background-color 0.3s ease, color 0.3s ease;
  white-space: nowrap;
}


.dropdown a:hover {
  color: white;
  background-color: rgb(255, 166, 0);
}

.arrow{
  font-size: 14px;
}

 .hero {
   margin: 1.5rem auto;
   max-width: 1200px;
   padding: 0 20px;
 }

 .hero-image {
   width: 100%;
   border-radius: 8px;
   box-shadow: var(--shadow);
   background-size: contain;
   max-height: 400px;
 }

 /* Section Headings */
 .section-heading {
   text-align: center;
   font-weight: bold;
   font-size: 35px;
   margin: 3rem 0 2rem;
   position: relative;
   color: #003049;
 }



 /* Past Events */
 .past-events {
   padding: 2rem 0;
 }

 .event-grid {
   display: grid;
   grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
   gap: 2rem;
   margin-top: 2rem;
 }

 .event-card {
   background-color: white;
   border-radius: 8px;
   overflow: hidden;
   box-shadow: var(--shadow);
   transition: var(--transition);
 }

 .event-card:hover {
   transform: translateY(-5px);
   box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
 }

 .event-image {
   height: 200px;
   width: 100%;
   background-size: contain;
 }

 .event-content {
   padding: 1.5rem;
 }

 .event-title {
   font-size: 1.25rem;
   margin-bottom: 0.75rem;
   color: var(--primary-color);
 }

 .event-date {
   display: flex;
   align-items: center;
   gap: 0.5rem;
   color: orange;
   font-weight: 500;
   margin-bottom: 1rem;
 }

 .event-link {
   color: navy;
   font-weight: 500;
   display: inline-flex;
   align-items: center;
   gap: 0.5rem;
   transition: var(--transition);
 }

 .event-link:hover {
   color: var(--secondary-color);
 }

 /* Upcoming Events */
 .upcoming-events {
   padding: 2rem 0 4rem;
 }

 .event-filters {
   display: flex;
   flex-wrap: wrap;
   gap: 1rem;
   justify-content: center;
   margin: 2rem 0;
 }

 .filter-group {
   flex: 1;
   min-width: 200px;
   max-width: 300px;
 }

 .filter-label {
   display: block;
   margin-bottom: 0.5rem;
   font-weight: 500;
   color: navy;
 }

 .filter-input {
   width: 100%;
   padding: 0.75rem;
   border: 1px solid #ddd;
   border-radius: 4px;
   font-family: inherit;
 }

 .filter-button {
   background-color:orange;
   color: var(--white);
   border: none;
   padding: 0.75rem 1.5rem;
   border-radius: 4px;
   cursor: pointer;
   font-weight: 500;
   transition: var(--transition);
   align-self: flex-end;
   font-weight: bold;
 }

 .filter-button:hover {
   background-color:orangered;
   color: white;
 }

 .upcoming-grid {
   display: grid;
   grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
   gap: 2rem;
   margin-top: 2rem;
 }

 .upcoming-card {
   background-color:white;
   border-radius: 8px;
   overflow: hidden;
   box-shadow: var(--shadow);
   transition: var(--transition);
   position: relative;
 }

 .upcoming-card:hover {
   transform: translateY(-5px);
   box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
 }

 .upcoming-badge {
   position: absolute;
   top: 1rem;
   right: 1rem;
   background-color: orange;
   color: var(--white);
   padding: 0.25rem 0.75rem;
   border-radius: 20px;
   font-size: 0.875rem;
   font-weight: 500;
 }

 .upcoming-image {
   height: 180px;
   width: 100%;
   background-image: contain;
 }

 .upcoming-content {
   padding: 1.5rem;
 }

 .upcoming-title {
   font-size: 1.1rem;
   margin-bottom: 0.5rem;
   color: #003049;
 }

 .upcoming-date {
   font-size: 0.875rem;
   color: orange;
   margin-bottom: 1rem;
   display: flex;
   align-items: center;
   gap: 0.5rem;
 }

 .upcoming-button {
   display: inline-block;
   background-color:orangered;
   color: var(--white);
   padding: 0.5rem 1rem;
   border-radius: 4px;
   font-weight: 500;
   transition: var(--transition);
   width: 100%;
   text-align: center;
 }
.upcoming-button:hover{
  background-color: red;
}

 /* Footer */
footer{
  background-color: rgb(0, 0, 128);
  color: #fff;
  text-align: center;
  padding: 1rem 0;
  margin-top: 2rem;
}



 @media (max-width: 768px) {

   .event-grid,
   .upcoming-grid {
     grid-template-columns: 1fr;
   }

   .filter-group {
     min-width: 100%;
   }

   .hero-image {
     max-height: 300px;
   }
 }



 @media (max-width: 768px) {
  .header {
    flex-direction: column; 
    align-items: center;   
    gap: 10px;
  }

  .logo {
    margin-bottom: 0;
  }

  .navbar {
    width: 100%;
  }

  .navbar ul {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center; 
    align-items: center;
    gap: 1rem;
    flex-wrap: nowrap; 
    padding: 0;
    margin: 0;
  }

  .navbar li {
    margin-bottom: 0; 
  }
}