.border-wrapper {
  border: 2px dashed #ccc;
  margin: 3.5em 0 1em;
  padding: 1.7em 2em;
}
.border-wrapper > :first-child {
  margin-top: 0;
}
.border-wrapper > :last-child:not(.basic-accordion) {
  margin-bottom: 0;
}
.border-wrapper .basic-accordion:last-child {
  margin-bottom: 1.1em;
}
.border-wrapper .row > div :first-child {
  margin-top: 0;
}
.border-wrapper .row > div :last-child {
  margin-bottom: 0;
}
.border-wrapper h2.border-wrapper-title {
  background: #fff;
  display: table;
  margin: -0.5em 0 0.3em -0.65em;
  padding: 0 0.4em;
  font-size: 2.4rem;
}
@media only screen and (min-width: 768px) {
  .border-wrapper h2.border-wrapper-title {
    font-size: 2.8rem;
    margin: -1.3em 0 0.3em -0.65em;
  }
}
.border-wrapper h2.border-wrapper-title + * {
  margin-top: 9px;
}
.border-wrapper .border-wrapper-has-title {
  padding-top: 0;
}
.border-wrapper.border-wrapper-grey {
  background: #f5f5f5;
  border: none;
  border-radius: 5px;
}
.border-wrapper.border-wrapper-white-bg {
  background: #fff;
  border: none;
  -webkit-box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.2);
  box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.2);
  margin-top: 0;
  border-radius: 7px;
}
.border-wrapper.border-wrapper-white-bg h2 {
  font-size: 3.2rem;
  margin-bottom: .1em;
}
@media only screen and (min-width: 2300px) {
  .border-wrapper.border-wrapper-white-bg h2 {
    font-size: 4.2rem;
  }
}
.border-wrapper.border-wrapper-white-bg h3 {
  margin-top: 0;
  font-weight: normal;
}
.border-wrapper.border-wrapper-white-bg h2 + h3 {
  margin-left: .1em;
}
.border-wrapper.border-wrapper-blue {
  border-color: #4fbfed;
}
.border-wrapper.border-wrapper-blue a,
.border-wrapper.border-wrapper-blue div.accordion .panel .panel-heading a {
  color: #4fbfed;
}
.border-wrapper.border-wrapper-blue a:hover,
.border-wrapper.border-wrapper-blue div.accordion .panel .panel-heading a:hover {
  color: #148fc2;
}
.border-wrapper.border-wrapper-blue h2.border-wrapper-title {
  color: #4fbfed;
}
.border-wrapper.border-wrapper-lt-blue {
  border-color: #94d8f4;
}
.border-wrapper.border-wrapper-lt-blue a,
.border-wrapper.border-wrapper-lt-blue div.accordion .panel .panel-heading a {
  color: #94d8f4;
}
.border-wrapper.border-wrapper-lt-blue a:hover,
.border-wrapper.border-wrapper-lt-blue div.accordion .panel .panel-heading a:hover {
  color: #38b7eb;
}
.border-wrapper.border-wrapper-lt-blue h2.border-wrapper-title {
  color: #94d8f4;
}
.blue-bg h2.border-wrapper-title {
  font-size: 2.6rem;
  font-weight: 400;
  background: #71d4fb;
  padding: 0.2em 0.4em;
}
.page-type-blog-post .border-wrapper {
  margin-top: .2em;
}
