html {
}
body {
  font-family: helvetica, arial, sans-serif;
  font-size: 1.2em;
}
#site-wrapper {
  max-width: 95%;
}

header {
  display: flex;
  flex-direction: column;
  align-items: center;
}

header > a {
  text-align: center;
}

header .profile-img {
  overflow: hidden;
  border-radius: 50%;
  display: inline-block;
  flex-shrink: 0;
  width: 60%;
  height: 60%;
}

header .headline-wrapper {
  display: inline-block;
  /*vertical-align: middle;*/
  width: 100%;
  text-align: center;
}

header .sidebar {
  width: 100%;
  text-align: left;
  padding-left: 1em;
  padding-right: 1em;
  margin-left: 1em;
  margin-right: 1em;
}

header .sidebar > a {
  display: block;
}

main {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
}

section {
  color: #333;
  /*border-bottom: 1px solid #ccc;*/
  padding: 0 1em;
  width: 100%;
}

section:first-of-type {
  /*border-bottom: none;*/
}

h2 {
  margin-top: 0em;
  margin-bottom: 0em;
  padding-top: 0em;
  padding-bottom: 0em;
  border-bottom: 1px solid grey;
}

#professional-experience {
  /*border-bottom: 1px solid grey;*/
}

.card {
  /*display: flex;*/
  /*flex-direction: column;*/
  /*align-items: flex-start;*/
  border-bottom: 1px solid grey;
}

.card h3 {
  margin-top: 0.5em;
  margin-bottom: 0em;
  padding-top: 0em;
  padding-bottom: 0em;
  font-weight: bold;
}

.card h4 {
  margin-top: 0em;
  margin-bottom: 0em;
  padding-top: 0em;
  padding-bottom: 0em;
}

.card h4:first-of-type {
  font-style: italic;
}

.card h4:last-of-type {
  margin-top: 0em;
  margin-bottom: 0.5em;
  padding-top: 0em;
  padding-bottom: 0em;
}

@media only screen and (min-width: 1080px) {
  body {
    font-size: 1.0em;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
  }

  #site-wrapper {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
  }

  header {
    max-width: 30%;
    margin-left: 1em;
    margin-right: 1em;
  }

  header .profile-img {
    width: 200px;
    height: 200px;
    margin-left: 50px;
    margin-right: 50px
  }

  header .headline-wrapper {
    /*vertical-align: middle;*/
    margin-left: 20px;
    
  }

  section {
    margin: 0.5em 1em;
  }

  section.sidebar {
    margin-top: -0.5em;
  }
}

#testimonials > .card {
  margin-top: 1em;
  padding: 1em 0;
}

#testimonials .card .testimonial-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-right: 1em;
  float: left;
  border: 1px solid lightgrey;
  border-radius: 5px;
  padding: 0.5em;
}

#testimonials .card .testimonial-img {
  width: 100px;
  height: 100px;
  border-radius: 50%;
}

#testimonials .card .testimonial-text {
  margin-top: 0;
}
