@import url(https://fonts.googleapis.com/css?family=Varela+Round);
@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,300,600,700);

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

html,
body {
  height: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  font-family: "Open Sans", sans-serif;
  font-size: 16px;
  line-height: 1.5em;
  background: #202124;
}

a {
  color: #66cc99;
  text-decoration: none;
}

.clearfix::after,
.clearfix::before {
  content: " ";
  display: table;
}

.course div {
  width: 100%;
  height: auto;
}

.clearfix::after {
  clear: both;
}

.bold {
  color: #e9ebfc;
  font-weight: 400;
}

.resume-wrapper {
  position: relative;
  text-align: center;
  height: 100%;
}

li a {
  color: #e9ebfc;
}

.container {
  min-height: 100px;
}

.header {
  display: grid;
  grid-template-columns: 50% 50%;
  gap: 10px;
}

.subheader {
  display: grid;
  grid-template-columns: 1fr 170px 120px 1fr;
  gap: 10px;
}

.contact-info {
  display: grid;
  grid-template-columns: 60px 1fr;
  gap: 10px;
}

.name-wrapper h1 {
  text-align: left;
}

.profile {
  background: #202124;
  width: 100%;
  float: none;
  color: #e9ebfc;
}

@media (max-width: 850px) {
  .profile {
    width: 100%;
  }
}

.profile .name-wrapper {
  float: left;
  font-size: 100%;
  width: 60%;
}

.profile h1 {
  font-size: 2.5em;
  text-align: left;
  font-family: "Varela Round", sans-serif;
  color: #e9ebfc;
  text-transform: uppercase;
  line-height: 1em;
  padding-top: 40px;
  padding-bottom: 40px;
}

.profile li {
  margin-bottom: 10px;
}

.profile .picture-resume-wrapper {
  width: 100%;
  display: block;
  float: right;
}

@media (max-width: 1200px) {
  .profile .picture-resume-wrapper {
    width: 100%;
  }
}

.profile .picture-resume {
  width: 160px;
  height: 160px;
  background-size: cover;
  border-radius: 50%;
  margin-right: 0px;
  display: table;
  position: relative;
  vertical-align: middle;
}

.profile .picture-resume span {
  display: table-cell;
  vertical-align: middle;
  position: relative;
  margin: 0 auto;
  z-index: 10;
  text-align: center;
}

.profile .picture-resume img {
  border-radius: 50%;
  width: 80px;
}

.profile .contact-info {
  margin-top: 20px;
  font-weight: 300;
}

.profile .list-titles {
  float: right;
  text-align: right;
  font-weight: 600;
  width: 100%;
  color: #e9ebfc;
}


.profile .list-content {
  float: left;
  width: 100%;
  text-align: left;
  font-weight: 300;
}

.profile .contact-presentation {
  text-align: left;
  font-weight: 300;
  margin-top: 100px;
  margin-bottom: 100px;
}

.profile svg {
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.profile .st0,
.profile .st1 {
  fill: #66cc99;
}

.experience {
  background: #204560;
  width: 100%;
  float: left;
  position: relative;
  color: #e9ebfc;
  font-weight: 300;
  min-height: 100%;
  min-height: 100vh;
}

@media (max-width: 850px) {
  .experience {
    width: 100%;
  }
}

.experience h3.experience-title {
  color: #66cc99;
  text-align: left;
  text-transform: uppercase;
  font-size: 1.2em;
  margin-bottom: 20px;
  font-weight: 400;
}

.experience .company-wrapper {
  width: 30%;
  float: left;
  text-align: left;
  padding-right: 5%;
  margin-bottom: 60px;
}

@media (max-width: 450px) {
  .experience .company-wrapper {
    width: 100%;
    margin-bottom: 20px;
  }
}

.experience .job-wrapper {
  width: 70%;
  float: left;
  text-align: left;
  padding-right: 5%;
  margin-bottom: 60px;
}

@media (max-width: 450px) {
  .experience .job-wrapper {
    width: 100%;
    margin-bottom: 40px;
  }
}

/* Add container for experience items */
.experience-item {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
}

@media (max-width: 450px) {
  .experience .company-wrapper,
  .experience .job-wrapper {
    width: 100%;
  }
  
  .experience-item {
    flex-direction: column;
  }
}

.experience .experience-title {
  color: white;
  margin-bottom: 15px;
}

.section-padding {
  padding: 60px 40px 60px 40px;
}

.header-section-padding {
  padding: 0px 40px 0px 40px;
}

h3.section-title {
  color: #66cc99;
  text-align: left;
  text-transform: uppercase;
  font-size: 1.2em;
  margin-bottom: 20px;
  font-weight: 400;
}

.section-wrapper h4 {
  color: #e9ebfc;
  text-align: center;
  height: auto;
  text-transform: uppercase;
  font-size: 1.2em;
  margin-bottom: 20px;
  font-weight: 400;
}

.section-wrapper div h4 {
  color: #e9ebfc;
  text-align: center;
  height: auto;
  text-transform: uppercase;
  font-size: 1.2em;
  margin-bottom: 20px;
  font-weight: 400;
}

.section-wrapper div div.past {
  width: 100%;
  height: auto;
  text-align: left;
  color: #e9ebfc;
  font-weight: 300;
  margin-bottom: 20px;
  display: grid;
  grid-template-columns: 30% calc(65% - 10px) calc(5% - 10px);
  gap: 10px;
}

@media (max-width: 750px) {
  .section-wrapper div {
    grid-template-columns: 1fr;
  }
}
