.dark_theme {
  display: none; }

html {
  font-size: 10px; }

body {
  display: flex;
  flex-direction: column;
  align-content: flex-start;
  margin: 0;
  font-family: 'Open Sans', sans-serif;
  font-weight: 300; }

header {
  height: 5rem;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding-top: .8rem;
  position: fixed;
  left: 0;
  right: 0;
  background: #ffffff;
  box-shadow: 0 0.8rem 0 #ffffff, 0 1.6rem 0.8rem #ffffff; }
  header .logo,
  header .logo img {
    margin: 0;
    width: 20rem;
    height: 5rem; }

#content {
  padding-top: 6.6rem; }

section {
  font-size: 1.4rem;
  letter-spacing: .05rem;
  margin: 3.2rem 3.2rem 4.8rem;
  box-shadow: 0 0 1.6rem #d8d8d8;
  padding: 3.2rem; }
  @media screen and (min-width: 1023px) {
    section {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      max-width: calc(100% - 38rem);
      margin-left: 20rem; } }

article {
  margin: 1.6rem 0 0 0; }
  article:not(:last-child) {
    border-bottom: 1px solid #d8d8d8;
    padding-bottom: 3.2rem;
    margin-bottom: 3.2rem; }
  @media screen and (min-width: 1023px) {
    article {
      width: calc((100% - 3.2rem) / 2); }
      article:nth-child(2):nth-last-child(2) {
        border-bottom-width: 0; } }

h1 {
  font-weight: 600;
  color: #880088;
  text-transform: uppercase;
  margin: 1.6rem 0 4.8rem 0;
  text-align: center;
  width: 100%; }

h2 {
  font-weight: 400;
  font-size: 1.6rem;
  margin-bottom: 3.2rem; }

aside {
  width: 5rem; }

em {
  font-family: "Courier New";
  font-style: normal;
  color: #880088;
  width: 4rem; }
  em:before {
    content: ' ';
    display: block; }

ul.header_menu {
  list-style: none;
  margin: 0 1.6rem 1.6rem;
  padding: 0;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center; }
  ul.header_menu li {
    display: block;
    width: 3rem;
    height: 3rem;
    color: transparent; }
    ul.header_menu li:not(:last-child) {
      margin-right: 1rem; }
    ul.header_menu li a {
      display: block;
      width: 100%;
      height: 100%;
      color: transparent;
      background-size: contain;
      background-repeat: no-repeat;
      transition: .3s ease all; }
      ul.header_menu li a:hover {
        transform: scale(1.1);
        box-shadow: -0.4rem 0.2rem 0.4rem #d8d8d8; }
    ul.header_menu li.linkedin a {
      background-image: url(../images/linkedin.svg); }
    ul.header_menu li.email a {
      background-image: url(../images/email.svg); }

ul:not(.header_menu) {
  position: relative;
  list-style: none;
  margin-left: 0;
  padding-inline-start: 2.4rem;
  padding-left: 2.4rem; }
  ul:not(.header_menu) li {
    position: relative; }
    ul:not(.header_menu) li:not(:last-child) {
      margin-bottom: 0.8rem; }
    ul:not(.header_menu) li:before {
      content: "+";
      font-family: "Courier New";
      position: absolute;
      color: #880088;
      left: -1.6rem;
      top: 0.26rem; }
  .skills ul:not(.header_menu) {
    display: flex;
    flex-wrap: wrap; }
    .skills ul:not(.header_menu) li {
      display: block;
      width: 100%; }
      @media screen and (min-width: 550px) {
        .skills ul:not(.header_menu) li {
          width: 50%; } }
      @media screen and (min-width: 766px) {
        .skills ul:not(.header_menu) li {
          width: 33%; } }

.cv {
  width: calc(210 * 50px / 297) !important;
  height: 50px !important; }
  .cv a {
    margin-right: .8rem;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    border: 2px solid #440044;
    color: #000000 !important;
    display: flex !important;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: .4rem;
    text-decoration: none;
    border-radius: .2rem;
    position: relative;
    transform-origin: top right;
    font-size: 1.8rem;
    letter-spacing: 1.6px;
    text-transform: lowercase; }
    .cv a:before {
      content: '';
      display: block;
      width: 1rem;
      height: 1rem;
      position: absolute;
      top: -2px;
      right: -2px;
      border-radius: .2rem;
      border-top: 2px solid #ffffff;
      border-right: 2px solid #ffffff;
      border-bottom: 2px solid #440044;
      border-left: 2px solid #440044; }
    .cv a:after {
      content: '';
      display: block;
      width: 18px;
      height: 2px;
      position: absolute;
      top: 0.4rem;
      right: -0.4rem;
      transform: rotate(45deg);
      background-color: #440044; }
    .cv a:hover {
      border-color: #880088; }
      .cv a:hover:before {
        border-bottom-color: #880088;
        border-left-color: #880088; }
      .cv a:hover:after {
        background-color: #880088; }

p:last-child,
ul:last-child {
  margin-bottom: 0; }

.career_progression p {
  margin-left: 4rem; }

@media screen and (min-width: 1023px) {
  .personal_profile p,
  .hobbies p {
    width: calc((100% - 3.2rem) / 2); } }

.career_progression {
  counter-reset: item; }
  .career_progression h2 em:first-child {
    position: relative;
    display: inline-block;
    counter-increment: item; }
    .career_progression h2 em:first-child:before {
      position: absolute;
      right: 1rem;
      bottom: 0;
      content: counter(item) "."; }
