@media only screen and (max-width: 768px) {
  /* Force table to not be like tables anymore */
  table.responsive-table,
  table.responsive-table thead,
  table.responsive-table tbody,
  table.responsive-table th,
  table.responsive-table td,
  table.responsive-table tr {
    display: block;
  }

  /* Hide table headers (but not display: none;, for accessibility) */
  table.responsive-table thead tr {
    position: absolute;
    top: -9999px;
    left: -9999px;
  }

  table.responsive-table tr {
    border-bottom: 1px solid #e2e2e2;
    overflow: hidden;
  }

  table.responsive-table tr:last-child {
    border-bottom: 0;
  }

  table.responsive-table tr td {
    /* Behave like a "row" */
    border: none;
    border-bottom: 1px solid #eee;
    position: relative;
    padding-left: 50%;
    white-space: normal;
    text-align: left !important;
  }

  table.responsive-table td:before {
    /* Now like a table header */
    position: absolute;
    /* Top/left values mimic padding */
    top: 0;
    bottom: 0;
    left: 6px;
    height: 13px;
    width: 45%;
    margin: auto;
    padding-right: 10px;
    white-space: nowrap;
    text-align: left;
    font-weight: bold;
    font-size: 13px;
  }

  /*
    Label the data
    */
  table.responsive-table td:before {
    content: attr(data-title);
  }

  /**
    * Nested tables
    */
  table.responsive-table table tr {
    border: none;
  }

  table.responsive-table table td {
    border: none;
    padding-left: 0 !important;
  }

  table.responsive-table table td:before {
    content: '';
    padding-right: 0;
    position: relative;
  }

  table.responsive-table table tr.odd td {
    background-color: #f9f9f9;
  }
}
