/* Reset default browser spacing */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* Body styling */
body {
  font-family: Arial, Helvetica, sans-serif;
  background-color: #ffffff;
  color: #333;
}

/* Hero / Banner section */
.hero {
  width: 100%;
  height: 600px; /* IMPORTANT: height required */
  background-image: url("images/banner.jpg"); /* <-- your image path */
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Text inside hero */
.hero h1 {
  color: #ffffff;
  font-size: 48px;
  background: rgba(0, 0, 0, 0.4);
  padding: 15px 25px;
  border-radius: 8px;
  align-items: LEFT;
}

/* Page content */
.container {
  padding: 40px;
  max-width: 1200px;
  margin: auto;
}
.logo-circle {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background-color: #2d7a1f;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden; /* IMPORTANT */

}

.logo-circle img {
  width: 100%;
  height: 100%;
  object-fit: contain; /* keeps logo proportion */
}

.hero {
  display: flex;
  align-items: center;
}

.hero-content {
  text-align: left;
  max-width: 600px;
}

.hero-content h2,
.hero-content p,
.hero-subtitle {
  text-align: left;
}

.hero {
  justify-content: flex-start; /* LEFT */
}


.gallery-item {
  position: relative;
  overflow: hidden;
}

.gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.gallery-overlay {
  position: absolute;
  inset: 0;
  /* background: rgba(0, 0, 0, 0.55); DARK overlay for contrast */
  color: #FFFFFF; /* Always visible */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.gallery-item:hover .gallery-overlay {
  opacity: 1;
}