html {
    box-sizing: border-box;
    font-size: 9px;
}

body {
    font-size: 1.4em;
}

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

.latin {
    font-style: italic;
    text-transform: lowercase;
}

.resume-container {
    margin: 0 auto;
    font-family: "freight-display-pro", serif;
    background: rgba(255, 255, 255, 1);
}

.bold {
    font-family: "europa", sans-serif;
    font-weight: 600;
}

.small {
    font-size: 0.9em;
}

.resume-container .bio h1.name {
    font-family: "europa", sans-serif;
    font-size: 1.6em;
    font-weight: normal;
    text-align: center;
}

.resume-container .bio .contact {
    font-family: "europa", sans-serif;
    font-size: 1em;
    font-weight: 200;
    text-align: center;
}

.resume-container .bio .contact > span {
    white-space: nowrap;
}

.resume-container .body section {
    margin: 0.5em 0;
}

.resume-container .body section h1 {
    font-family: "europa", sans-serif;
    font-size: 1.3em;
    letter-spacing: 0.2em;
    color: #888;
    font-variant: small-caps;
    margin-bottom: 0;
}

.resume-container .body section h1 + * {
    margin-top: 0.5em;
}

.resume-container .body section p {
    line-height: 1.5em;
}

.resume-container .job {
    margin: 1em 0;
}

.resume-container .job + .job {
    margin: 2em 0;
}

.resume-container .job .heading {
    font-family: "europa", sans-serif;
    font-size: 0.8em;
    line-height: 1.8em;
}

.resume-container .job .heading .position {
    font-size: 1.3em;
    font-weight: 200;
}
.resume-container .job .heading .company {
    font-size: 1.3em;
    font-weight: 600;
}

.resume-container .job .heading .posterm,
.resume-container .job .heading .comploc {
    position: relative;
}

.resume-container .job .heading .time-period,
.resume-container .job .heading .location {
    font-style: italic;
    font-weight: 200;
}
.resume-container .job .heading .time-period {
    font-size: 1.2em;
    color: #333;
}
.resume-container .job .heading .location {
    font-size: 1.5em;
    color: #AAA;
}

.resume-container .job .description {
    font-size: 1.1em;
    line-height: 1.25em;
}

.resume-container .job .description p {
    margin: 0.2em 0;
}

.resume-container .job.job-concise .description {
    display: none;
}

.job + .job.job-concise {
    margin: 0;
}

.resume-container ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.resume-container ul.skills li {
    font-size: 1em;
}

.resume-container ul h2 {
    text-align: left;
    font-family: 'europa', sans-serif;
    font-weight: 600;
    font-size: 1.2em;
    margin: 0.5em 0 0.1em 0;
}

.resume-container ul h3.client-name {
    text-align: center;
    font-family: "europa", sans-serif;
    font-weight: 600;
    font-size: 0.9em;
    margin: 0.2em 0;
}

.resume-container ul li {
    padding-left: 1em;
    margin: 0.2em 0;
    text-indent: -0.3em;
}

.resume-container ul li:not(.header):before {
    position: relative;
    top: -0.3em;
    left: -0.9em;
    font-size: 0.6em;
    content: "• ";
    color: #999;
}

.resume-container ul li.header {
    text-indent: 0;
}

.resume-container .education .company {
    font-family: "europa", sans-serif;
    font-weight: 600;
}

.resume-container .education .location {
    font-family: "europa", sans-serif;
    font-style: normal;
    font-weight: 200;
    color: #AAA;
}

.resume-container .education .time-period {
    font-style: italic;
    font-weight: 200;
    color: #333;
    font-size: 1em;
}

.resume-container .education .degree {
    font-weight: 400;
    color: #333;
}
