html, body {
  margin: 0;
  padding: 0;
  font-family: "Trebuchet MS", Verdana, sans-serif;
  font-size: 16px;
  background-color: #ffffff;
  color: #4a4a4a;
  line-height: 1.6;
}

.wrap {
  max-width: 760px;
  margin: 0 auto;
  padding: 0 24px 70px;
}

header.site {
  border-bottom: 3px solid #00008b;
  margin-bottom: 34px;
  padding: 30px 0 14px;
}

header.site h1 {
  font-family: Arial, Helvetica, sans-serif;
  color: #111;
  font-size: 25px;
  margin: 0;
  letter-spacing: -0.2px;
}

header.site .tagline {
  color: #7a7a7a;
  font-size: 14px;
  margin-top: 5px;
}

.intro {
  display: flex;
  align-items: flex-start;
  gap: 26px;
  margin-bottom: 34px;
}

.intro img.headshot {
  width: 168px;
  min-width: 168px;
  height: auto;
  border-radius: 4px;
  display: block;
}

p.lead {
  font-size: 21px;
  font-weight: bold;
  color: #222;
  margin: 0 0 14px;
  line-height: 1.35;
}

p { margin: 0 0 16px; }

h2 {
  font-family: Arial, Helvetica, sans-serif;
  font-size: 19px;
  color: #222;
  margin: 38px 0 14px;
  padding-bottom: 6px;
  border-bottom: 1px solid #e4e4e4;
}

ul.services { list-style: none; margin: 0 0 8px; padding: 0; }

ul.services li {
  padding: 7px 0 7px 20px;
  position: relative;
  border-bottom: 1px solid #f2f2f2;
}

ul.services li:last-child { border-bottom: none; }

ul.services li::before {
  content: "\2022";
  color: #00008b;
  position: absolute;
  left: 2px;
  top: 7px;
}

ul.services li strong { color: #222; }

ul.plain { list-style: none; margin: 0; padding: 0; }

ul.plain li {
  padding: 9px 0;
  border-bottom: 1px solid #f2f2f2;
}

ul.plain li:last-child { border-bottom: none; }

a { color: #2f5fbf; }
a:hover { color: #1a3f8f; }

.cta {
  background: #f7f9fc;
  border: 1px solid #dfe6f2;
  border-radius: 5px;
  padding: 20px 22px;
  margin-top: 14px;
}

.cta p:last-child { margin-bottom: 0; }

footer.site {
  margin-top: 50px;
  padding-top: 18px;
  border-top: 1px solid #e4e4e4;
  font-size: 13px;
  color: #8a8a8a;
}

footer.site a { color: #8a8a8a; }

.backlink {
  display: inline-block;
  margin-bottom: 22px;
  font-size: 14px;
}

@media screen and (max-width: 700px) {
  .wrap { padding: 0 18px 50px; }
  .intro { flex-direction: column; gap: 16px; }
  .intro img.headshot { width: 140px; min-width: 0; }
  p.lead { font-size: 19px; }
  header.site h1 { font-size: 21px; }
}
