@font-face {
  font-family: "Open Sans";
  font-style: italic;
  font-weight: 400;
  font-stretch: normal;
  src: url(https://fonts.gstatic.com/s/opensans/v40/memQYaGs126MiZpBA-UFUIcVXSCEkx2cmqvXlWq8tWZ0Pw86hd0Rk8ZkWVAexQ.ttf)
    format("truetype");
}
@font-face {
  font-family: "Open Sans";
  font-style: normal;
  font-weight: 400;
  font-stretch: normal;
  src: url(https://fonts.gstatic.com/s/opensans/v40/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4gaVc.ttf)
    format("truetype");
}
/* Variables
****************************************************/
/* Base
****************************************************/
html {
  box-sizing: border-box;
}
*,
*:before,
*:after {
  box-sizing: inherit;
}
body {
  background-color: #fff;
}
.CV-u-nowrap {
  white-space: nowrap;
}
.CV-page {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 2em;
  color: #222;
  font-size: 1em;
  font-family: "Open Sans", sans-serif;
}
@media all and (max-width: 500px) {
  .CV-page {
    padding: 0 1em;
  }
}
.CV-page a {
  color: rgba(34, 34, 34, 0.25);
  text-decoration: underline;
}
.CV-page a span {
  color: #222;
  text-decoration: none;
  transition: color 0.2s;
}
.CV-page a:hover span {
  color: #c44ce2;
}
.CV-page a:active {
  display: inline-block;
  transform: translate(0px, 1px);
}
.CV-page abbr {
  border-color: rgba(34, 34, 34, 0.25);
}
.CV-page hr {
  width: 30%;
  height: 0;
  margin: 1em auto;
  border: none;
  border-top: solid 1px #c44ce2;
}
/* if IE<=7 */
.CV-page\ {
  width: 1100px;
  font-family: "Comic Sans MS", "Comic Sans", cursive;
}
/* Headings
****************************************************/
.CV-primaryHeading {
  text-transform: uppercase;
  margin-bottom: 1.5em;
}
.CV-primaryHeading-name {
  display: flex;
  justify-content: start;
  margin-bottom: 0.3em;
  font-size: 1.5em;
  line-height: 0.9;
}
.CV-primaryHeading-position {
  display: flex;
  justify-content: start;
  font-size: 0.6em;
  line-height: 0.9;
  color: #c44ce2;
  font-style: italic;
}
.CV-secondaryHeading {
  position: relative;
  margin: 2em 0 0;
  text-transform: uppercase;
}
.CV-secondaryHeading:before {
  content: "";
  display: inline-block;
  width: 0.7em;
  height: 0.7em;
  margin: 0 0.5em 0 -0.2em;
  border: 2px solid #c44ce2;
  border-left: none;
  border-bottom: none;
  transform: scaleX(0.75) rotate(45deg);
}
/* Details
****************************************************/
.CV-detail {
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 0.5em 1.5em;
  border-radius: 1em;
  line-height: 1.2;
  font-size: 0.9em;
  text-decoration: none;
}
/* if SVG supported */
.svg .CV-detail {
  padding-left: 56px;
}
.svg .CV-detail:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 14px;
  width: 34px;
  height: 34px;
  margin-top: -14px;
  background-size: 28px;
  background-repeat: no-repeat;
  background-position: 2px 2px;
  background-color: #fff;
  border-radius: 50%;
  border: solid 1px #222;
  transition: background-color 0.4s ease;
}
.svg .CV-detail--address:before {
  background-image: url("https://s3-us-west-2.amazonaws.com/s.cdpn.io/14082/CV_icons_address.svg");
}
.svg .CV-detail--phone:before {
  background-image: url("https://s3-us-west-2.amazonaws.com/s.cdpn.io/14082/CV_icons_phone.svg");
}
.svg .CV-detail--email:before {
  background-image: url("https://s3-us-west-2.amazonaws.com/s.cdpn.io/14082/CV_icons_email.svg");
}
.svg .CV-detail--twitter:before {
  background-image: url("https://s3-us-west-2.amazonaws.com/s.cdpn.io/14082/CV_icons_email.svg");
}
.svg .CV-detail--linkedin:before {
  background-image: url("https://s3-us-west-2.amazonaws.com/s.cdpn.io/14082/CV_icons_linkedin.svg");
}
.svg .CV-detail--website:before {
  background-image: url("https://s3-us-west-2.amazonaws.com/s.cdpn.io/14082/CV_icons_web.svg");
}
.svg .CV-detail--blog:before {
  background-image: url("https://s3-us-west-2.amazonaws.com/s.cdpn.io/14082/CV_icons_tumblr.svg");
}
.svg .CV-detail--experiments:before {
  background-image: url("https://s3-us-west-2.amazonaws.com/s.cdpn.io/14082/CV_icons_codepen.svg");
}
/* end if SVG */
.CV-detail-key {
  display: inline-block;
  color: #c44ce2;
  text-transform: uppercase;
  transition: transform 0.4s ease;
}
.CV-detail-val {
  display: inline-block;
  color: #222;
  text-decoration: none;
  transition: transform 0.4s ease;
}
@media all and (max-width: 500px) {
  .CV-detail-val {
    display: block;
    border-bottom: none;
  }
}
@media all and (min-width: 500px) {
  .CV-detail {
    width: 50%;
    vertical-align: middle;
  }
  .CV-detail-val {
    display: block;
  }
}
@media all and (min-width: 700px) {
  .CV-detail {
    width: 33%;
  }
}
.CV-detail:hover::before,
.CV-detail:focus::before {
  background-color: #bdedff;
}
.CV-detail:hover .CV-detail-key,
.CV-detail:focus .CV-detail-key,
.CV-detail:hover .CV-detail-val,
.CV-detail:focus .CV-detail-val {
  transform: translateX(0.3em);
}
/* Blurb
****************************************************/
.CV-introBlurb {
  /*TEMP display:none; */
  width: 100%;
  /* margin: 3em auto 1em auto; */
  /* text-align: center; */
  font-size: 1.1em;
}
@media screen and (max-width: 500px) {
  .CV-introBlurb {
    width: 100%;
  }
  .CV-primaryHeading-name {
    font-size: 1.3em;
  }
}
/* Grid
****************************************************/
.CV-grid {
  display: table;
}
.CV-grid-column {
  display: table-cell;
}
.CV-grid-column--left {
  width: 75%;
  padding-right: 2em;
}
.CV-grid-column--right {
  width: 25%;
}
@media screen and (max-width: 850px) {
  .CV-grid {
    display: block;
  }
  .CV-grid-column {
    display: block;
  }
  .CV-grid-column--left {
    width: 100%;
    padding-right: 0;
  }
  .CV-grid-column--right {
    width: 100%;
  }
  .CV-primaryHeading-name {
    font-size: 1.2em;
  }
}
/* Timeline
****************************************************/
.CV-timeline {
  position: relative;
  margin: 0 0 0 0.5em;
  padding-left: 1.5em;
  border-left: solid 1px #222;
}
.CV-timeline:first-of-type {
  margin-top: 1em;
}
.CV-timeline:last-of-type {
  border-left-color: transparent;
}
.CV-timeline:before {
  content: "";
  position: absolute;
  top: 0;
  left: -0.5em;
  display: block;
  width: 1em;
  height: 1em;
  border: solid 1px #222;
  background-color: #fff;
  border-radius: 50%;
}
.CV-timeline-heading {
  margin: 0;
  padding-bottom: 0.5em;
  line-height: 1em;
  font-weight: normal;
  transform: translateY(-0.1em);
}
.CV-timeline-heading-title {
  line-height: 1;
  color: #c44ce2;
  font-style: italic;
  text-transform: uppercase;
}
.CV-timeline-heading-location {
  font-size: 0.9em;
}
.CV-timeline-heading-duration {
  display: block;
  font-size: 0.8em;
  color: #6f6f6f;
}
.CV-timeline-details {
  display: block;
  margin: 0;
  padding-bottom: 2em;
  padding: 0 0 2em 1em;
  list-style-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAGElEQVQIW2NkYGD4D8TIgJERTQDMpVAQAGaUAQbko3DsAAAAAElFTkSuQmCC");
}
.CV-timeline-details-item {
  margin-bottom: 0.5em;
}
/* Skills
****************************************************/
.CV-skills-group-list {
  display: table;
  width: 100%;
}
.CV-skill {
  display: table-row;
}
.CV-skill-name {
  display: table-cell;
  width: 25%;
  min-width: 2em;
  margin: 0;
  padding: 0.6em 1em 0.6em 0;
  text-align: right;
  vertical-align: top;
  line-height: 1;
}
.CV-skill-extraDetail {
  display: block;
}
.CV-skill-value {
  display: table-cell;
  width: 75%;
  margin: 0;
  padding: 0.6em 0;
  vertical-align: top;
  line-height: 1;
  color: #c44ce2;
}
/* Technologies
****************************************************/
.CV-technologies-group-list {
  display: table;
  width: 100%;
}
.CV-tech {
  display: table-row;
}
.CV-tech-name {
  display: table-cell;
  width: 25%;
  min-width: 10em;
  margin: 0;
  padding: 0.6em 1em 0.6em 0;
  text-align: left;
  vertical-align: top;
  line-height: 1;
}
.CV-tech-extraDetail {
  display: block;
}
.CV-tech-value {
  display: table-cell;
  width: 75%;
  margin: 0;
  padding: 0.6em 0;
  vertical-align: top;
  line-height: 1;
  color: #c44ce2;
}
/* if <meter> IS supported */
.meter .CV-skill-value {
  /* background-image: linear-gradient(90deg, #222 1px, transparent 0); */
  background-size: 33.33333333%;
  background-position: -5%;
}
/* end <meter> support */
.CV-skill-rating {
  background: none;
  width: 100%;
  height: 1.5em;
}
.CV-skill-rating .meter-frame {
  background: none;
}
.CV-skill-rating::-webkit-meter-bar {
  background: none;
}
.CV-skill-rating .meter-bar {
  border: 2.5px solid #c44ce2;
  background: rgba(196, 76, 226, 0.9);
}
.CV-skill-rating::-webkit-meter-optimum-value {
  border: 2.5px solid #c44ce2;
  background: rgba(196, 76, 226, 0.9);
}
.CV-skill-rating::-moz-meter-bar {
  border: 2.5px solid #c44ce2;
  background: rgba(196, 76, 226, 0.9);
}
/* if IE<=7 */
.CV-skill\ {
  display: block;
  padding: 0.3em 1em;
}
.CV-skill-name\ {
  display: inline;
}
.CV-skill-value\ {
  display: inline;
}
/* end if IE<=7 */
/* END 
****************************************************/
.CV-referees {
  margin-bottom: 4em;
}
.CV-disclaimer {
  margin-top: 4em;
  font-size: 0.8em;
  text-align: right;
  font-variant: small-caps;
  color: #a2a2a2;
}
/* PRINT STYLES
****************************************************/
@media print {
  .CV-page {
    font-size: 0.7em;
  }
  .CV-pageBreakBefore {
    page-break-before: always;
  }
  .svg .CV-detail {
    padding-left: 44px;
  }
  .svg .CV-detail:before {
    left: 11px;
    width: 28px;
    height: 28px;
    margin-top: -11px;
    background-size: 22px;
  }
}
