html {
  box-sizing: border-box; }

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

/* One-off breakpoints (consider consolidation)*/
/* Mayflower Color Tokens */
.ma__rich-text table,
.ma__table {
  border-collapse: collapse;
  width: 100%; }
  .ma__rich-text table thead,
  .ma__table thead {
    background-color: #F2F2F2; }
    .ma__rich-text table thead th,
    .ma__table thead th {
      color: #141414;
      border: none;
      font-size: 1.625rem;
      line-height: 1.3; }
  .ma__rich-text table tbody,
  .ma__table tbody {
    border-top: 2px solid #DCDCDC; }
  .ma__rich-text table tr + tr,
  .ma__table tr + tr {
    border-top: 1px solid #DCDCDC; }
  .ma__rich-text table th, .ma__rich-text table td,
  .ma__table th,
  .ma__table td {
    font-size: 1.25rem;
    padding: 10px 20px 10px 0;
    text-align: left;
    vertical-align: top; }
    .ma__rich-text table th:first-child, .ma__rich-text table td:first-child,
    .ma__table th:first-child,
    .ma__table td:first-child {
      padding-left: 15px; }
  .ma__rich-text table .is-offset th:first-child,
  .ma__rich-text table .is-offset td:first-child,
  .ma__table .is-offset th:first-child,
  .ma__table .is-offset td:first-child {
    padding-left: 0; }

.ma__table th {
  color: #535353; }

@media (max-width: 620px) {
  .ma__table {
    display: block; }
    .ma__table thead {
      display: none; }
    .ma__table tbody {
      display: block; }
    .ma__table thead + tbody,
    .ma__table tbody:first-child {
      border-top: 0; }
    .ma__table tr {
      display: block; }
    .ma__table td:before {
      color: #141414;
      font-weight: 500; }
    .ma__table td,
    .ma__table th {
      display: block;
      font-size: 1.375rem;
      padding-left: 40% !important;
      padding-bottom: 0;
      position: relative; }
      .ma__table td:before,
      .ma__table th:before {
        content: attr(data-label);
        height: 100%;
        position: absolute;
        top: 10px;
        left: 0;
        width: 35%; }
    .ma__table th {
      font-size: 1.375rem;
      color: #141414;
      background-color: #F2F2F2; } }

@media (max-width: 780px) {
  .ma__table--wide {
    display: block; }
    .ma__table--wide thead {
      display: none; }
    .ma__table--wide tbody {
      display: block; }
    .ma__table--wide thead + tbody,
    .ma__table--wide tbody:first-child {
      border-top: 0; }
    .ma__table--wide tr {
      display: block; }
    .ma__table--wide td:before {
      color: #141414;
      font-weight: 500; }
    .ma__table--wide td,
    .ma__table--wide th {
      display: block;
      padding-left: 40% !important;
      position: relative; }
      .ma__table--wide td:before,
      .ma__table--wide th:before {
        content: attr(data-label);
        height: 100%;
        position: absolute;
        top: 10px;
        left: 0;
        text-align: right;
        width: 35%; }
    .ma__table--wide th {
      font-size: 1.375rem;
      color: #141414;
      background-color: #F2F2F2; } }

.ma__table--responsive .no-left-pad {
  padding-left: 0; }
