@font-face {
  font-family: 'Folio Medium';
  src: url('folio-medium.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'Folio Light';
  src: url('folio-light.woff') format('woff');
  font-weight: normal;
  font-style: normal;
}


body {
  background: linear-gradient(180deg, #f2f0ed, 90%, #fffcfa) fixed;
  line-height: 1.5;
}

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  color: #1b0b0f;
  font-family: 'Folio Light';
  font-size: 15px;
}

a {
  color: #8c1638;
  text-decoration: none;
  cursor: pointer;
}

h3 {
  font-weight: normal;
  display: block;
  font-size: 17px;
  font-family: 'Folio Medium', Helvetica, sans-serif;
  text-transform: uppercase;
  display: block;
  line-height: 1;
}

.mw {
  perspective: 500px;
  overflow: visible;
  transition: all .4s;
}

.mw > path {
  backface-visibility: visible;
  transform-origin: 50%;
  transition: all .3s ease-out .2s;
}

.mw .mw__left-cap {
  transition: all .3s .1s;
}

#site-header {
  display: flex;
  align-items: center;
  flex-direction: row;
  justify-content: space-around;
  padding: 25px;
  width: 100%;
  height: 110px;
  position: relative;
}

#logo {
  display: flex;
  cursor: pointer;
}

#logo figcaption {
  margin-left: 20px;
  text-transform: uppercase;
  font-family: 'Folio Medium', Helvetica, sans-serif;
  font-size: 25px;
  line-height: 0.9;
  letter-spacing: -.2px;
  transition: all .4s;
}

#logo:hover figcaption {
  color: #ff9036;
}

#logo:hover > .mw > path {
  transform: rotateX(180deg);
}

#content {
  margin: 0 auto;
  max-width: 450px;
  min-width: 340px;
  padding: 5px;
}

.start-cards {
  position: relative;
  margin-top: 4vh;
}

.start-card {
  margin-bottom: 10px;
  background-color: #fff;
  border: 1px solid #e5e3e1;
  border-radius: 8px;
}

.card-header {
  font-size: 15px;
  font-weight: normal;
  text-transform: uppercase;
  font-family: 'Folio Medium';
  color: #fffcfa;
  border-bottom: 2px solid #1b0b0f;
  padding: 20px 20px;
  line-height: 0;
  color: #1b0b0f;
  text-align: left;
}

.card-header--alt {
  border-bottom: none;
}

.card-item {
  padding: 20px;
  display: flex;
  border-top: 1px solid #e5e3e1;
}

a.card-item {
  background-image: linear-gradient(200deg, #fffcfa, 90%, #e5e3e1);
  background-repeat: no-repeat;
  background-position-y: 100px;
  transition: background 0.2s;
}

a.card-item:hover {
  background-image: linear-gradient(200deg, #fffcfa, 90%, #e5e3e1);
  background-position-y: 0;
}

.card-item__illustration {
  width: 80px;
  height: 80px;
  margin-left: 10px;
  background: #1b0b0f;
  border-radius: 50%;
  position: relative;
  align-self: center;
}

.card-item__illustration:first-child {
  margin-left: 0;
}

.card-item__illustration > img {
  width: 80px;
  height: 80px;
  border-radius: 50%;
}

.card-item__illustration:before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: linear-gradient(60deg, #ff9036, #8c1638, #1b0b0f);
  mix-blend-mode: color;
  border-radius: 50%;
}

.card-item__info {
  padding-left: 25px;
  width: 100%;
}

.card-item__info:first-child {
  padding-left: 0;
}

.card-item__info > p {
  margin-top: 10px;
}

.contact-me a {
  font-size: 12px;
  color: #1b0b0f;
  opacity: 0.4;
  display: block;
  transition: all 0.2s ease-in-out;
}

.contact-me a:hover {
  opacity: 1;
}

.contact-me {
  width: 100%;
  font-size: 0;
  display: flex;
  flex-direction: row;
  align-items: left;
  justify-content: space-between;
}

@media only screen and (min-width: 450px) {
  * {
    font-size: 17px;
  }

  h3 {
    font-size: 22px;
  }

  .mw {
    width: 90px;
    height: 54px;
  }

  #logo figcaption {
    font-size: 30px;
  }

  .contact-me a {
    font-size: 15px;
  }

  .card-header {
    font-size: 17px;
    padding: 25px 25px;
  }

  .card-item {
    padding: 20px 25px;
  }

  .card-item__illustration,
  .card-item__illustration > img {
    width: 82px;
    height: 82px;
  }
}
