@charset "UTF-8";
*, *::before, *::after {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0px;
  margin: 0px;
}

body {
  font-family: "Roboto", sans-serif;
  margin: auto;
  background: #fff;
}

.container {
  height: 100%;
  width: 90%;
  margin: auto;
  margin-top: 5%;
  display: grid;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  grid-gap: 10px;
  grid-template-columns: 3;
  grid-template-rows: 4;
}

.header {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  grid-column: 2;
  grid-row: 1;
}

.hero {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  grid-column: 2;
  grid-row: 2;
}

h1 {
  color: #e42e70;
  font-weight: bold;
  font-size: 2em;
  text-align: center;
  line-height: 3em;
}

h2, .link {
  color: #e42e70;
  font-weight: bold;
  font-size: 1em;
  line-height: 2em;
  text-decoration: none;
}

article {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  grid-column: 2;
  grid-row: 3;
  margin: 2em;
}

article > div {
  line-height: 2em;
  text-align: left;
  margin-bottom: 2em;
}

ul {
  list-style-type: none;
}

li {
  line-height: 1.5em;
  text-decoration: none;
}
li::before {
  content: "•";
  margin-right: 2px;
}

a {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

footer {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  grid-column: 2;
  grid-row: 4;
  height: 100px;
  margin: 2em;
}

.ruler {
  position: absolute;
  top: 488px;
  left: 0;
  right: 0;
  border-top: 1px solid red;
}

.desk {
  position: relative;
  height: 500px;
  width: 750px;
}
@media only screen and (max-width: 600px) {
  .desk {
    height: 250px;
    width: 375px;
  }
}

.laptop {
  position: absolute;
  display: grid;
  grid-gap: 5px;
  grid-template-columns: repeat(6, 16%);
  grid-template-rows: repeat(8, 10%);
  height: 72%;
  width: 69%;
  top: 10%;
  left: 15%;
  padding: 20px;
}
@media only screen and (max-width: 600px) {
  .laptop {
    padding: 5px 20px 20px 20px;
  }
}

.desk > img {
  height: 100%;
  width: 100%;
}

.logo-container--sass {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  justify-items: center;
  justify-self: end;
  grid-column: 1/3;
  grid-row: 1/3;
}

.sass-logo {
  width: 50%;
  -webkit-transform: rotateZ(-20deg);
      -ms-transform: rotate(-20deg);
          transform: rotateZ(-20deg);
}

.logo-container--npm {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  justify-items: start;
  left: -2%;
  grid-column: 3/4;
  grid-row: 1/3;
}
@media only screen and (max-width: 600px) {
  .logo-container--npm {
    top: 6%;
  }
}

.npm-logo {
  width: 100%;
}

.logo-container--react {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  grid-column: 4/6;
  grid-row: 1/3;
}

.react-logo {
  width: 90%;
}

.logo-container--js {
  justify-items: start;
  grid-column: 6/8;
  grid-row: 1/3;
}
@media only screen and (max-width: 600px) {
  .logo-container--js {
    left: -5%;
  }
}

.js-logo {
  width: 100%;
}

.logo-container--php {
  left: 1%;
  grid-column: 1;
  grid-row: 4;
}

.php-logo {
  width: 70%;
}

.logo-container--github {
  grid-column: 2;
  grid-row: 3/5;
}

.github-logo {
  width: 100%;
}

.logo-container--java {
  grid-column: 3;
  grid-row: 3;
  left: 5%;
}

.java-logo {
  width: 40%;
}

.logo-container--codepen {
  top: 8%;
  grid-column: 5;
  grid-row: 3/5;
}

.codepen-logo {
  width: 120%;
}

.logo-container--node {
  top: 6%;
  grid-column: 1/2;
  grid-row: 5;
}

.node-logo {
  width: 140%;
}

.logo-container--grunt {
  left: -4%;
  top: 2%;
  grid-column: 3;
  grid-row: 5;
}

.grunt-logo {
  width: 50%;
}

.logo-container--oracle {
  top: 8%;
  grid-column: 5/7;
  grid-row: 6;
}

.oracle-logo {
  width: 90%;
}

.logo-container--bitbucket {
  justify-items: center;
  top: 5%;
  grid-column: 1;
  grid-row: 8;
}
@media only screen and (max-width: 600px) {
  .logo-container--bitbucket {
    top: 4%;
  }
}

.bitbucket-logo {
  width: 80%;
}

.logo-container--json {
  justify-items: center;
  justify-self: baseline;
  top: 3%;
  grid-column: 2;
  grid-row: 8;
}

.json-logo {
  width: 70%;
}

.logo-container--html {
  justify-items: center;
  top: -1%;
  grid-column: 3;
  grid-row: 8;
}

.html-logo {
  width: 65%;
}

.logo-container--css {
  justify-items: center;
  top: -1%;
  grid-column: 4;
  grid-row: 8;
}

.css-logo {
  width: 65%;
}

.logo-container--angular {
  justify-items: start;
  top: -2%;
  left: -2%;
  grid-column: 5;
  grid-row: 8;
}

.angular-logo {
  width: 100%;
}

.logo-container--git {
  justify-items: center;
  top: 2%;
  grid-column: 6;
  grid-row: 8;
}

.git-logo {
  width: 80%;
}
@media only screen and (max-width: 600px) {
  .git-logo {
    top: -10%;
  }
}

.modal-content {
  height: 30%;
  width: 100%;
}

.modal--close {
  z-index: 1;
  float: right;
  color: #aaa;
  font-size: 28px;
  font-weight: bold;
  height: 30px;
}

.modal-logo {
  margin: auto;
}

strong {
  font-weight: bold;
}

.modal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  visibility: hidden;
  -webkit-transition-property: visibility;
  transition-property: visibility;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.modal__overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: 0;
  background-color: rgba(26.7481289465%, 16.7028514457%, 20.3456443855%, 0.32);
  -webkit-transition-property: opacity;
  transition-property: opacity;
  -webkit-transition-timing-function: cubic-bezier(0.52, -0.32, 0.68, 1);
          transition-timing-function: cubic-bezier(0.52, -0.32, 0.68, 1);
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
.modal__dialog {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: left;
      -ms-flex-align: left;
          align-items: left;
  background-color: #eee;
  padding: 20px;
  border: 1px solid #888;
  height: 90%;
  width: calc(100vw - 40px);
  max-width: 400px;
  border-radius: 5px;
  -webkit-box-shadow: 3px 6px 20px rgba(26.0775008308%, 9.3734795613%, 15.4309817799%, 0.32);
          box-shadow: 3px 6px 20px rgba(26.0775008308%, 9.3734795613%, 15.4309817799%, 0.32);
  overflow: auto;
  -webkit-transform: scale(0, 0);
      -ms-transform: scale(0, 0);
          transform: scale(0, 0);
  opacity: 0;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform;
  -webkit-transition-timing-function: cubic-bezier(0.52, -0.32, 0.68, 1);
          transition-timing-function: cubic-bezier(0.52, -0.32, 0.68, 1);
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
}
@media (min-width: 600px) {
  .modal__dialog {
    max-width: 500px;
  }
}
.modal__logo-content {
  margin-right: auto;
}
.modal__body {
  margin-top: 5%;
  line-height: 2em;
}
.modal__close {
  margin-left: auto;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  color: #aaa;
  font-size: 28px;
  font-weight: bold;
  height: 30px;
}
.modal__close:hover, .modal__close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}
.modal.active {
  visibility: visible;
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
}
.modal.active .modal__overlay {
  opacity: 1;
  -webkit-transition-timing-function: cubic-bezier(0.52, 1.32, 0.68, 1);
          transition-timing-function: cubic-bezier(0.52, 1.32, 0.68, 1);
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
}
.modal.active .modal__dialog {
  opacity: 1;
  -webkit-transform: scale(1, 1);
      -ms-transform: scale(1, 1);
          transform: scale(1, 1);
  -webkit-transition-timing-function: cubic-bezier(0.52, 1.32, 0.68, 1);
          transition-timing-function: cubic-bezier(0.52, 1.32, 0.68, 1);
  -webkit-transition-duration: 0.5s;
          transition-duration: 0.5s;
}