html {
  box-sizing: border-box; }

*, *::after, *::before {
  box-sizing: inherit; }

/* One-off breakpoints (consider consolidation)*/
/* Mayflower Color Tokens */
.ma__accordion-item {
  border: 2px solid #DCDCDC; }
  .ma__accordion-item--borderless {
    border: none; }
  .ma__accordion-item--secondary .ma__accordion-content__body {
    padding-left: 35px; }

.ma__accordion-header__icon--secondary {
  font-size: 2.5rem;
  line-height: .65em;
  position: absolute;
  left: 5px;
  top: 5px;
  text-align: center;
  overflow: hidden;
  transform-origin: center center;
  transition: transform .2s ease;
  fill: #388557;
  transform: rotate(-90deg); }

.ma__accordion-header__icon--secondary + .ma__accordion-header__title--secondary {
  padding-left: 0px; }

.ma__accordion-header__button {
  border: none;
  display: block;
  padding: 20px 40px;
  position: relative;
  text-align: left;
  width: 100%;
  background-color: #F2F2F2;
  /* focus specific transitions */
  -webkit-transition: border-color .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
  transition: border-color .15s ease-in-out, -webkit-box-shadow .15s ease-in-out;
  -o-transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out; }
  .ma__accordion-header__button--secondary {
    display: block;
    position: relative;
    width: 100%;
    text-align: left;
    border: none;
    padding-left: 35px; }
    .ma__accordion-header__button--secondary.is-open .ma__accordion-header__icon--secondary {
      transform: rotate(0deg); }
  .ma__accordion-header__button:focus {
    -webkit-box-shadow: 0 0 0 2px #9bdaf1;
    box-shadow: 0 0 0 2px #9bdaf1; }
  .ma__accordion-header__button--trans.is-open {
    background-color: transparent; }
  .ma__accordion-header__button--solid.is-open {
    margin-bottom: 22px;
    border-bottom: 2px solid #DCDCDC; }
  .ma__accordion-header__button.is-open:focus {
    -webkit-box-shadow: 0 0 0 1px #9bdaf1;
    box-shadow: 0 0 0 1px #9bdaf1; }
  .ma__accordion-header__button.is-open:after {
    transform: rotate(135deg); }
  .ma__accordion-header__button:after {
    font-size: 2.5rem;
    content: "+";
    line-height: .65em;
    overflow: hidden;
    position: absolute;
    right: 15px;
    top: 25px;
    transform-origin: center center;
    transition: transform .2s ease;
    color: #388557; }

.ma__accordion-header__icon {
  position: absolute;
  top: 25px;
  left: 20px;
  text-align: center; }
  .ma__accordion-header__icon > svg {
    height: 25px;
    width: 25px;
    fill: #388557; }

.ma__accordion-header__title {
  font-size: 1.625rem;
  line-height: 1.3;
  margin-bottom: .5em;
  font-weight: 700;
  margin-bottom: 0;
  min-height: 32px; }
  .ma__accordion-header__title--secondary {
    font-weight: 500;
    font-size: 1.625rem;
    line-height: 1.3;
    margin-bottom: .5em;
    margin-bottom: 0; }

.ma__accordion-header__icon + .ma__accordion-header__title {
  padding-left: 20px; }

.ma__accordion-content__body {
  padding-left: 60px;
  padding-right: 40px; }
  .ma__accordion-content__body.collapsed {
    visibility: hidden;
    height: 0px; }
  .ma__accordion-content__body.collapsing, .ma__accordion-content__body.expanding {
    position: relative;
    overflow: hidden;
    visibility: visible;
    -webkit-transition-property: height, visibility;
    transition-property: height, visibility;
    transition-duration: 0.35s;
    -webkit-transition-duration: 0.35s;
    transition-timing-function: ease;
    -webkit-transition-timing-function: ease; }
  .ma__accordion-content__body.expanded {
    height: auto;
    visibility: visible;
    display: block; }
  .ma__accordion-content__body--without-icon {
    padding-left: 40px; }
  .ma__accordion-content__body > * {
    margin-top: 1em; }
  .ma__accordion-content__body > :first-child {
    margin-top: 0; }
