html {
  box-sizing: border-box; }

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

/* One-off breakpoints (consider consolidation)*/
/* Mayflower Color Tokens */
.ma__page-header {
  margin-right: auto;
  margin-left: auto;
  max-width: 1320px;
  padding-left: 20px;
  padding-right: 20px; }
  @media (min-width: 781px) {
    .ma__page-header {
      padding-left: 30px;
      padding-right: 30px; } }
  @media (min-width: 911px) {
    .ma__page-header {
      padding-left: 40px;
      padding-right: 40px; } }
  .ma__page-header::after {
    clear: both;
    content: "";
    display: block; }
  .ma__page-header__tags {
    clear: both;
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    justify-content: space-between;
    overflow: hidden;
    margin-bottom: 20px;
    padding-top: 18px;
    border-bottom-width: 1px;
    border-bottom-style: solid; }
    .ma__page-header__tags .ma__header-tags,
    .ma__page-header__tags .ma__social-links {
      border-bottom-width: 1px;
      border-bottom-style: solid;
      min-height: 48px;
      position: relative;
      top: 1px; }
      @media (min-width: 781px) {
        .ma__page-header__tags .ma__header-tags,
        .ma__page-header__tags .ma__social-links {
          border: 0; } }
    .ma__page-header__tags .ma__header-tags {
      flex-grow: 1;
      margin-bottom: 30px; }
      @media (min-width: 781px) {
        .ma__page-header__tags .ma__header-tags {
          margin-bottom: 10px; } }
    .ma__page-header__tags .ma__social-links {
      flex-grow: 0; }
      @media (max-width: 620px) {
        .ma__page-header__tags .ma__social-links {
          width: 100%; } }
      .ma__page-header__tags .ma__social-links__link[data-social-share="facebook"] svg,
      .ma__page-header__tags .ma__social-links__link[data-social-share="facebook"] svg path {
        fill: #395999; }
      .ma__page-header__tags .ma__social-links__link[data-social-share="twitter"] svg,
      .ma__page-header__tags .ma__social-links__link[data-social-share="twitter"] svg path {
        fill: #16a2f3; }
      .ma__page-header__tags .ma__social-links__link[data-social-share="linkedin"] svg,
      .ma__page-header__tags .ma__social-links__link[data-social-share="linkedin"] svg path {
        fill: #0078b6; }
      .ma__page-header__tags .ma__social-links__link[data-social-share="youtube"] svg,
      .ma__page-header__tags .ma__social-links__link[data-social-share="youtube"] svg path {
        fill: #CC181E; }
    @media (max-width: 780px) {
      .ma__page-header__tags {
        border: 0; } }
  .ma__page-header__content {
    padding: 30px 0; }
  .ma__page-header__tags ~ .ma__page-header__content {
    padding-top: 30px; }
    @media (min-width: 781px) {
      .ma__page-header__tags ~ .ma__page-header__content {
        padding-top: 40px; } }
    @media (min-width: 911px) {
      .ma__page-header__tags ~ .ma__page-header__content {
        padding-top: 50px; } }
    @media (min-width: 1201px) {
      .ma__page-header__tags ~ .ma__page-header__content {
        padding-top: 60px; } }
  .ma__page-banner ~ .ma__page-header .ma__page-header__content {
    padding-top: 20px; }
  @media (min-width: 781px) {
    .ma__page-header--has-widgets .ma__page-header__content {
      padding-bottom: 45px; } }
  @media (min-width: 911px) {
    .ma__page-header--has-widgets .ma__page-header__content {
      float: left;
      padding-right: 85px;
      max-width: 820px;
      width: calc(100% - 350px); } }
  .ma__page-header__widgets {
    padding-bottom: 40px; }
    @media (min-width: 911px) {
      .ma__page-header__widgets {
        float: right;
        padding-top: 75px;
        padding-bottom: 60px;
        width: 350px; } }
    @media (min-width: 1201px) {
      .ma__page-header__widgets {
        padding-top: 85px; } }
    .ma__page-header__widgets > * {
      margin-top: 30px; }
      .ma__page-header__widgets > *:first-child {
        margin-top: 0; }
    @media (min-width: 911px) {
      .ma__page-header__widgets .ma__image {
        clear: both;
        float: right; } }
  @media (min-width: 911px) {
    .ma__page-header__tags ~ .ma__page-header__widgets {
      padding-top: 50px; } }
  @media (min-width: 1201px) {
    .ma__page-header__tags ~ .ma__page-header__widgets {
      padding-top: 60px; } }
  @media (min-width: 911px) {
    .ma__page-banner ~ .ma__page-header .ma__page-header__widgets {
      padding-top: 20px; } }
  .ma__page-header__publish-state {
    margin-top: -20px;
    margin-bottom: 35px; }
  .ma__page-header__category {
    font-size: 1.375rem;
    padding-bottom: 1rem;
    line-height: 1.1;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase; }
  .ma__page-header__title {
    margin-bottom: .4em; }
    .ma__page-header__title:last-child {
      margin-bottom: 0; }
    .ma__page-header__title .ma__page-header__sub-title {
      margin-top: .8em; }
  .ma__page-banner ~ .ma__page-header .ma__page-header__title {
    display: none; }
  .ma__page-header__sub-title:last-child {
    margin-bottom: 0; }
  @media (min-width: 911px) {
    .ma__page-header__sub-title {
      padding-right: 85px;
      width: calc(100% - 295px); } }
  @media (min-width: 1201px) {
    .ma__page-header__sub-title {
      padding-right: 125px; } }
  .ma__page-header__sub-title,
  .ma__page-header__sub-title * {
    font-size: 1.625rem !important;
    line-height: 1.3 !important;
    margin-bottom: 1em; }
  @media (min-width: 911px) {
    .ma__page-header--has-widgets .ma__page-header__sub-title {
      padding-right: 0;
      width: 100%; } }
  .ma__page-header__optional-content .main-content {
    margin: 0;
    padding: 0;
    width: 100%; }
    .ma__page-header__optional-content .main-content .page-content {
      padding-bottom: 0; }
  .ma__page-header__optional-content .ma__contact-us.js-accordion::after {
    clear: both;
    content: "";
    display: block; }
  .ma__page-header__optional-content .ma__contact-us.js-accordion:before {
    content: "true"; }
  @media (min-width: 621px) {
    .ma__page-header__optional-content .ma__contact-us.js-accordion:before {
      content: "false"; } }
  @media (min-width: 621px) {
    .ma__page-header__optional-content .ma__contact-us > .ma__contact-group:first-child {
      clear: both;
      padding-bottom: 20px; } }
  @media (min-width: 621px) {
    .ma__page-header__optional-content .ma__contact-us .ma__contact-group:nth-child(2):nth-last-child(3) {
      border-right-width: 1px;
      border-right-style: solid;
      float: left;
      height: 100%;
      padding-right: 45px;
      padding-top: 0;
      width: 50%; } }
  @media (min-width: 621px) {
    .ma__page-header__optional-content .ma__contact-us__extra {
      border-left-width: 1px;
      border-left-style: solid;
      display: block;
      float: left;
      height: 100%;
      margin-left: -1px;
      padding-left: 45px;
      padding-top: 0;
      width: 50%; } }
  .ma__page-header__optional-content .ma__contact-us__expand {
    clear: both; }
    @media (min-width: 621px) {
      .ma__page-header__optional-content .ma__contact-us__expand {
        display: none; } }
  .ma__page-header--has-widgets .ma__page-header__optional-content .page-content {
    padding: 0;
    width: 100%; }
  .ma__page-header__divider {
    clear: both;
    padding-bottom: 30px; }
    @media (min-width: 781px) {
      .ma__page-header__divider {
        padding-bottom: 50px; } }
    @media (min-width: 911px) {
      .ma__page-header__divider {
        padding-bottom: 60px; } }
    .ma__page-header__divider .ma__divider {
      padding-left: 0;
      padding-right: 0; }

@media (min-width: 781px) {
  .ma__page-header__tags {
    border-color: #DCDCDC; } }

.ma__page-header__tags .ma__header-tags,
.ma__page-header__tags .ma__social-links {
  border-color: #DCDCDC; }

.ma__page-header__category {
  color: #535353; }

.ma__page-header__sub-title {
  color: #141414;
  font-weight: 700; }

@media (min-width: 621px) {
  .ma__page-header__optional-content .ma__contact-us > .ma__contact-group:nth-child(2):nth-last-child(3),
  .ma__page-header__optional-content .ma__contact-us > .ma__contact-us__extra {
    border-color: #DCDCDC; } }

.ma__page-header__optional-content .ma__contact-us__expand {
  border-top-color: #DCDCDC; }
