/* CSS Document */
/* Layout */
.contact-section {
  padding: 40px 0 60px;
  color: #0f2318;
}
.container { max-width: 1000px; margin: 0 auto; padding: 0 20px; }

.contact-grid {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 36px;
  align-items: start;
}

/* Colors from the mock */
:where(.contact-form-card) { background: #DFF2F1; }        /* pale teal */
:where(.leadership-card){ background:#c3db6c; }          /* light olive */


/* Left card (form) */
.contact-form-card {
  padding: 40px 112px 18px 38px;
}
.contact-form-card p {
  color: #2A5236;
font-size: 26px;
font-style: normal;
font-weight: 400;
line-height: 150%; /* 39px */
  margin: 0;
}
.contact-form-card .contact-form-shortcode {
  max-width: 560px;
  margin: 34px 0 0;
}
.contact-form label {
  color: #000;
font-size: 20px;
font-style: normal;
font-weight: 600;
line-height: 150%; /* 30px */
}
.contact-form input,
.contact-form textarea {
  width: 100%;
  background: #ffffff;
  border: 1px solid #2A5236;
  font-size: 15px;
  line-height: 1.35;
  outline: none;
  margin: 3px 0 32px;
}
.contact-form textarea{resize: vertical;}
.contact-form input:focus,
.contact-form textarea:focus {
  border-color: #1f5a43;
  box-shadow: 0 0 0 2px rgba(31,90,67,.12);
}

/* Right card (leadership) */
.leadership-card {
  padding: 34px 60px;
}
@media (min-width: 769px) {
  .leadership-card {
    margin: 76px 0 0;
    margin-left: -50px;
  }
}
.leadership-title {
  color: var(--Forest-Green---Primary, #2A5236);
  font-family: "Recife Text";
  font-size: 36px;
  font-style: normal;
  font-weight: 700;
  line-height: 125%; /* 45px */
  margin: 0 0 16px;
}
.leaders {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 35px;
  margin-bottom: 48px;
}
.leader { margin: 0; }
.leader img {
  display: block;
  width: 100%;
  height: auto;
}
.leader-name {
  color: var(--Forest-Green---Primary, #2A5236);
  font-family: "Recife Text";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 125%; /* 25px */
  margin: 8px 10px 0;
}
.leader-role {
  color: var(--Forest-Green---Primary, #2A5236);
  font-size: 14px;
  font-style: normal;
  font-weight: 600;
  line-height: 125%; /* 17.5px */
  margin: 0 10px;
}

.leadership-rule {
  border: none;
  border-top: 2px solid rgba(15,35,24,.25);
  margin: 38px 0;
}

.media-inquiries {color: var(--Forest-Green---Primary, #2A5236);font-size: 16px;font-style: normal;font-weight: 600;line-height: 150%; /* 24px */}
.media-kicker {
  margin: 0 0 10px;
}
.contact-name {
  margin: 0;
  font-weight: 700;
}
.contact-role {
  margin: 2px 0 0;
}
.contact-email a {
    color: var(--Forest-Green---Primary, #2A5236);
}
.contact-email a {
  text-decoration: none;
  border-bottom: 1px solid;
}
.contact-email a:hover { border-bottom-color: rgba(11,107,74,.9); }

/* Responsive */
@media (max-width: 900px){
  .contact-grid { grid-template-columns: 1fr; }
  .leaders { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px){
  .leaders { grid-template-columns: 1fr; }
  .leadership-title { font-size: 26px; }
}

@media (max-width: 1200px) {}
@media (max-width: 991px) {}
@media (max-width: 768px) {
  .contact-intro {
    font-size: 20px;
  }
  .contact-form-card {
    margin: 0 0 8px
  }
  .contact-form-card,
  .leadership-card {
    padding: 20px;
  }
}