
body { font-family: Arial, sans-serif; margin:0; background:#fff; }
.site-header { text-align:center; padding:20px; border-bottom:1px solid #eee; }

.logo {
  max-width:188px;   /* 75% of previous 250px */
  width:45%;         /* 75% of previous 60% */
  margin-bottom:10px;
}


.nav { margin:10px 0; }
.nav-link { margin:0 8px; text-decoration:none; font-weight:600; }
.nav-link.active { text-decoration:underline; }

.container { max-width:900px; margin:auto; padding:40px 20px; }

.directory-intro {
  margin: 0 0 20px;
  color: #555;
  font-size: 15px;
  line-height: 1.5;
}
.directory-intro a { color: #2c6b2f; text-decoration: none; }
.directory-intro a:hover { text-decoration: underline; }

.hero { text-align:center; }
.hero-title { font-size:42px; margin-bottom:10px; }
.hero-subtitle { color:#666; margin-bottom:40px; }

.mission { max-width:700px; margin:0 auto 40px; font-size:18px; line-height:1.6; }

/* Home map under CTA */
.home-map {
  margin-top: 30px;
  text-align: center;
}

.home-map h2 {
  margin-bottom: 8px;
  font-size: 24px;
}

.home-map-caption {
  margin: 0 0 16px;
  color: #555;
  font-size: 15px;
}

.home-map-frame {
  max-width: 900px;
  margin: 0 auto;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 6px 18px rgba(0,0,0,0.12);
}

.home-map-image {
  display: block;
  width: 100%;
  height: auto;
}

.cta-button {
  display:inline-block;
  padding:16px 28px;
  font-size:18px;
  font-weight:bold;
  border-radius:999px;
  background:#2c6b2f;
  color:#fff;
  text-decoration:none;
}

.cta-button:hover { background:#245828; }

/* Search / filter box */
.controls {
  margin: 0 0 24px;
}
.controls input,
#search {
  display: block;
  width: 100%;
  max-width: 560px;
  margin: 0 auto;
  padding: 14px 18px;
  font-size: 16px;
  line-height: 1.4;
  color: #333;
  background: #fafafa;
  border: 2px solid #d0d0d0;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  outline: none;
  transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;
}
.controls input::placeholder,
#search::placeholder {
  color: #888;
}
.controls input:hover,
#search:hover {
  border-color: #b0b0b0;
  background: #fff;
}
.controls input:focus,
#search:focus {
  border-color: #2c6b2f;
  background: #fff;
  box-shadow: 0 2px 12px rgba(44, 107, 47, 0.15);
}

.jump { margin:20px 0; text-align:center; }
.jump a { margin:2px; padding:6px 10px; border:1px solid #ddd; border-radius:20px; text-decoration:none; }
.jump a.disabled { opacity:0.3; pointer-events:none; }

.dir-row { margin:10px 0; padding:10px; border-bottom:1px solid #eee; }

.status { text-align:center; color:#666; margin-top:10px; }


/* Contact */
.contact {
  max-width: 760px;
  margin: 0 auto;
  text-align: left;
  padding: 18px 18px;
  border: 1px solid #e5e5e5;
  border-radius: 14px;
  background: #fff;
}

.contact-lead {
  margin: 0 0 10px;
  font-size: 18px;
}

.contact-email {
  margin: 0;
  font-size: 18px;
}

.footer {  
text-align:center;
}


/* Home Photo */









/* Home profile image under CTA */





/* 20px spacing between button and profile image */
.home-photo {
  margin-top:20px;
  margin-bottom:24px;
  text-align:center;
}

/* Larger profile image */
.profile-photo {
  width:200px;
  height:auto;
  display:block;
  margin:0 auto;
  border-radius:12px;
}
