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

html {
    box-sizing: border-box;
    font-size: 62.5%;
}

body {
    font-family: proxima-nova, sans-serif;
    font-size: 1.7rem;
    margin: auto;
    width: 45%;
    color: #2b2b2b;
}

h1,h2,h3 {
    color: #1f1f1f;
}

table {
    width: 100%;
    border-collapse: collapse;
    margin: 2rem 0;
    font-size: 1.5rem;
}

th,
td {
    border: 1px solid #c8c8c8;
    padding: 0.8rem 1rem;
    text-align: left;
    vertical-align: top;
}

th {
    background-color: #f5f5f5;
}

.table-wrap {
    overflow-x: auto;
}

@media screen and (max-width: 75em) {
    body { width: 65%; }
    html { font-size: 56.25%; }
}

@media screen and (max-width: 50em) {
    body { width: 75%; }
    html { font-size: 50%; }
}

@media screen and (max-width: 37.5em) {
    body { width: 90%; }
}
