html, body {
      margin: 0;
      padding: 0;
      width: 100%;
      height: 100%;
      font-family: "Roboto Mono" !important;
      background: #0f0f0f !important;
      color: #fff !important;
}

.whitespace {
      width: 100%;
      height: 100px;
}

@media(max-width: 768px) {
      .whitespace {
            display: none;
      }
}

.line {
      width: 24em;
      top: 50%;
      margin: auto;
      border-right: 2px solid #ffffffbf;
      text-align: center;
      white-space: nowrap;
      overflow: hidden;
      transform: translateY(-50%);
}

.anim-typewriter {
      animation: typewriter 2s steps(40) 1s 1 normal both,
      blinkTextCussor 500ms steps(40) infinite normal;
}

@keyframes typewriter {
      from {
            width: 0;
      }
      to {
            width: 14em;
      }
}

@media(max-width: 768px) {
      @keyframes typewriter {
            from {
                  width: 0;
            }
            to {
                  width: 13em;
            }
      }
}

@keyframes blinkTextCussor {
      from {
            border-right-color: rgba(255, 255, 255, 0.75);
      }
      to {
            border-right-color: transparent;
      }
}

nav {
      width: 100%;
      background: #0f0f0f;
      height: 80px;
      position: fixed;
      z-index: 1;
}

nav #brand {
      float: left;
      display: block;
      margin-left: 82px;
      line-height: 80px;
      font-weight: bold;
}

nav #brand a {
      color: #fff;
      transition: all 0.3s ease-out;
}

nav #brand a:hover {
      text-decoration: none;
}

nav #menu {
      float: left;
      right: 80px;
      position: fixed;
}

nav #menu li {
      padding-left: 40px;
      display: inline-block;
      cursor: pointer;
      font-weight: 300;
      line-height: 80px;
      position: relative;
      transition: all 0.3s ease-out;
}

nav #menu li span {
      font-weight: 700;
}

nav #menu li a {
      color: #fff;
}

nav #menu li a:hover {
      text-decoration: none;
}

#toggle {
      position: absolute;
      right: 30px;
      top: 20px;
      font-weight: 300;
      z-index: 2;
      width: 30px;
      height: 30px;
      cursor: pointer;
      float: right;
      transition: all 0.3s ease-out;
      visibility: hidden;
      opacity: 0;
}

.close-btn {
      position: absolute;
      right: 16px;
      font-weight: 300;
      z-index: 2;
      cursor: pointer;
      top: -2px;
      line-height: 80px;
}

#resize {
      z-index: 1;
      top: 0px;
      position: fixed;
      background: #0f0f0f;
      width: 100%;
      height: 100%;
      visibility: hidden;
      opacity: 0;
      transition: all 1s ease-out;
}

#resize #menu {
      height: 90px;
      position: absolute;
      left: 45%;
      transform: translateX(-40%);
      text-align: center;
      display: table-cell;
      vertical-align: center;
}

#resize #menu li {
      display: block;
      text-align: center;
      padding: 10px 0;
      font-size: 50px;
      min-height: 50px;
      font-weight: bold;
      cursor: pointer;
      transition: all 0.3s ease-out;
}

#resize li:nth-child(1) {
      margin-top: 140px;
}

#resize #menu li a {
      color: #fff;
}

#resize #menu li a:hover {
      text-decoration: none;
}

#resize.active {
      visibility: visible;
      opacity: 1;
}

@media(max-width: 768px) {
      #toggle {
            visibility: visible;
            opacity: 1;
            margin-top: 6px;
            margin-right: 4px;
      }

      nav #brand {
            margin-left: 24px;
      }

      #menu a {
            font-size: 20px;
            font-weight: 300;
      }

      #resize li span {
            font-weight: bolder;
      }

      nav #menu {
            display: none;
      }
}

@media(min-width: 768px) {
      #resize {
            visibility: hidden !important;
      }
}

.hero {
      height: 100vh;
      display: flex;
      align-items: center;
      justify-content: center;
}

.hero h1 {
      font-weight: lighter;
      text-align: center;
      letter-spacing: -2px;
      line-height: 58px;
}

@media(max-width: 768px) {
      .header h1 {
            font-size: 22px;
      }
}

.scroll-down {
      position: absolute;
      left: 50%;
      bottom: 100px;
      display: block;
      text-align: center;
      font-size: 20px;
      z-index: 0;
      text-decoration: none;
      text-shadow: 0;
      width: 13px;
      height: 13px;
      border-bottom: 2px solid #fff;
      border-right: 2px solid #fff;
      transform: translate(-50%, 0) rotate(45deg);
      animation: fade_move_down 3s cubic-bezier(0.19, 1, 0.22, 1) infinite;
}

@keyframes fade_move_down {
      0% {
            transform: translate(0, -20px) rotate(45deg);
            opacity: 0;
      }
      50% {
            opacity: 1;
      }
      100% {
            transform: translate(0, 20px) rotate(45deg);
            opacity: 0;
      }
}

h6 {
      text-align: center;
}

.vertical {
      margin-top: 40px;
      border-left: 1px solid #fff;
      height: 80px;
      position: absolute;
      left: 50%;
}

.project {
      height: 500px;
      cursor: pointer;
}

.project_right::after {
      font-family: "Roboto Mono";
      font-size: 36px;
      position: relative;
      color: #fff;
      display: block;
      top: 10%;
      left: -30%;
      right: 0;
      bottom: 0;
}

.project_left::after {
      font-family: "Roboto Mono";
      font-size: 36px;
      position: relative;
      color: #fff;
      display: block; 
      top: 10%;
      left: 90%;
      right: 0;
      bottom: 0;
}

.project1 {
      background: url(img/projet-1.png) no-repeat 50% 50%;
      background-size: cover;
}

.project1::after {
      content: "web design.";
}

.project2 {
      background: url(img/projet-2.png) no-repeat 50% 50%;
      background-size: cover;
}

.project2::after {
      content: "jeux vidéo.";
}

.project3 {
      background: url(img/projet-3.png) no-repeat 50% 50%;
      background-size: cover;
}

.project3::after {
      content: "sound design.";
}

.project4 {
      background: url(img/projet-4.png) no-repeat 50% 50%;
      background-size: cover;
}

.project4::after {
      content: "graphisme.";
}

.project5 {
  background: url(img/goal-globe.png) no-repeat 50% 50%;
  background-size: cover;
}

.project5::after {
  content: "goal globe.";
}

.project6 {
  background: url(img/meet-coloc.png) no-repeat 50% 50%;
  background-size: cover;
}

.project6::after {
  content: "meet coloc.";
}

.project7 {
  background: url(img/fuze.png) no-repeat 50% 50%;
  background-size: cover;
}

.project7::after {
  content: "fuze.";
  left: -15%;
}

.project8 {
  background: url(img/ferme.png) no-repeat 50% 50%;
  background-size: cover;
}

.project8::after {
  content: "ferme de l'espérance.";
  left: 80%;
}

.project9 {
  background: url(img/goal-globe-1.png) no-repeat 50% 50%;
  background-size: cover;
}

.project10 {
  background: url(img/goal-globe-2.png) no-repeat 50% 50%;
  background-size: cover;
}

.project11 {
  background: url(img/goal-globe-3.png) no-repeat 50% 50%;
  background-size: cover;
}

.project12 {
  background: url(img/fuze-1.png) no-repeat 50% 50%;
  background-size: cover;
}

.project13 {
  background: url(img/fuze-2.png) no-repeat 50% 50%;
  background-size: cover;
}

.project14 {
  background: url(img/fuze-3.png) no-repeat 50% 50%;
  background-size: cover;
}

.project15 {
  background: url(img/fuze-4.png) no-repeat 50% 50%;
  background-size: cover;
}

.project16 {
  background: url(img/fuze-5.png) no-repeat 50% 50%;
  background-size: cover;
}

.project17 {
  background: url(img/meet-coloc-1.png) no-repeat 50% 50%;
  background-size: cover;
}

.project18 {
  background: url(img/meet-coloc-2.png) no-repeat 50% 50%;
  background-size: cover;
}

.project19 {
  background: url(img/meet-coloc-3.png) no-repeat 50% 50%;
  background-size: cover;
}

.project20 {
  background: url(img/meet-coloc-4.png) no-repeat 50% 50%;
  background-size: cover;
}

.project21 {
  background: url(img/meet-coloc-5.png) no-repeat 50% 50%;
  background-size: cover;
}

.project22 {
  background: url(img/meet-coloc-6.png) no-repeat 50% 50%;
  background-size: cover;
}

.project23 {
  background: url(img/realite-virtuelle.png) no-repeat 50% 50%;
  background-size: cover;
}

.project23::after {
  content: "réalité virtuelle. (à venir)";
  left: -50%;
}

.project24 {
  background: url(img/visual-novel.png) no-repeat 50% 50%;
  background-size: cover;
}

.project24::after {
  content: "visual novel. (à venir)";
}

.project25 {
  background: url(img/mini-jeu.png) no-repeat 50% 50%;
  background-size: cover;
}

.project25::after {
  content: "mini-jeu. (à venir)";
  left: -20%;
}

.project26 {
  background: url(img/bar.png) no-repeat 50% 50%;
  background-size: cover;
}

.project26::after {
  content: "une soirée au bar.";
  left: -40%;
}

.project27 {
  background: url(img/cover.png) no-repeat 50% 50%;
  background-size: cover;
}

.project27::after {
  content: "cover.";
  left: -15%;
}

.project28 {
  background: url(img/affiche.png) no-repeat 50% 50%;
  background-size: cover;
}

.project28::after {
  content: "affiche. (à venir)";
  left: 95%;
}

.project29 {
      background: url(img/sound-design-1.png) no-repeat 50% 50%;
      background-size: cover;
}


.project30 {
      background: url(img/ferme-1.png) no-repeat 50% 50%;
      background-size: cover;
}

.project31 {
      background: url(img/ferme-2.png) no-repeat 50% 50%;
      background-size: cover;
}

.project32 {
      background: url(img/ferme-3.png) no-repeat 50% 50%;
      background-size: cover;
}

.project33 {
      background: url(img/ferme-4.png) no-repeat 50% 50%;
      background-size: cover;
}

.project34 {
      background: url(img/ferme-5.png) no-repeat 50% 50%;
      background-size: cover;
}

.project35 {
      background: url(img/ferme-6.png) no-repeat 50% 50%;
      background-size: cover;
}
    
.project36 {
      background: url(img/ferme-7.png) no-repeat 50% 50%;
      background-size: cover;
}

.project37 {
      background: url(img/ferme-8.png) no-repeat 50% 50%;
      background-size: cover;
}

.project38 {
      background: url(img/l3xa.png) no-repeat 50% 50%;
      background-size: cover;
    }
    
.project38::after {
      content: "l3xa.";
      left: -15%;
    }
    
.project39 {
      background: url(img/dans-ca.png) no-repeat 50% 50%;
      background-size: cover;
}

.project40 {
      background: url(img/love-effect.png) no-repeat 50% 50%;
      background-size: cover;
}

.project41 {
      background: url(img/therapy.png) no-repeat 50% 50%;
      background-size: cover;
    }

@media(max-width: 768px) {
      .project {
            width: 90% !important;
            margin: 14px auto;
      }

      .vertical {
            display: none;
      }

      .project1::after, .project2::after, .project3::after, .project4::after, .project5::after, .project6::after, .project7::after, .project8::after, .project23::after, .project24::after, .project25::after, .project26::after, .project27::after, .project28::after {
        font-size: 30px;
        top: 15%;
        left: 0%;
  }

      .project9 {
        background: url(img/goal-globe-1-mobile.png) no-repeat 50% 50%;
        background-size: cover;
      }

      .project10 {
        background: url(img/goal-globe-2-mobile.png) no-repeat 50% 50%;
        background-size: cover;
      }

      .project11 {
        background: url(img/goal-globe-3-mobile.png) no-repeat 50% 50%;
        background-size: cover;
      }

      .project12 {
            background: url(img/fuze-1-mobile.png) no-repeat 50% 50%;
            background-size: cover;
      }

      .project13 {
            background: url(img/fuze-2-mobile.png) no-repeat 50% 50%;
            background-size: cover;
      }

      .project14 {
            background: url(img/fuze-3-mobile.png) no-repeat 50% 50%;
            background-size: cover;
      }

      .project15 {
            background: url(img/fuze-4-mobile.png) no-repeat 50% 50%;
            background-size: cover;
      }

      .project16 {
            background: url(img/fuze-5-mobile.png) no-repeat 50% 50%;
            background-size: cover;
      }

      .project17 {
        background: url(img/meet-coloc-1-mobile.png) no-repeat 50% 50%;
        background-size: cover;
      }

      .project18 {
        background: url(img/meet-coloc-2-mobile.png) no-repeat 50% 50%;
        background-size: cover;
      }

      .project19 {
        background: url(img/meet-coloc-3-mobile.png) no-repeat 50% 50%;
        background-size: cover;
      }

      .project20 {
        background: url(img/meet-coloc-4-mobile.png) no-repeat 50% 50%;
        background-size: cover;
      }

      .project21 {
        background: url(img/meet-coloc-5-mobile.png) no-repeat 50% 50%;
        background-size: cover;
      }

      .project22 {
        background: url(img/meet-coloc-6-mobile.png) no-repeat 50% 50%;
        background-size: cover;
      }

      .project29 {
            height: 225px;
      }
      .project39, .project40, .project41 {
            height: 300px;
      }
}

.collab {
      text-align: right;
}

.collab p {
      font-weight: lighter !important;
      margin-bottom: 20px;
}

.hr {
      background: rgba(255, 255, 255, 0.2);
      height: 1px;
}

.info h4 {
      font-size: 18px;
      font-weight: lighter;
}

.info p {
      color: grey;
      font-weight: lighter;
}

.info li {
      font-weight: lighter;
      color: #fff;
      font-size: 18px;
      padding-left: 20px;
}

#fb::before {
      display: inline-block;
      content: '';
      border-radius: 100%;
      height: 4px;
      width: 4px;
      margin-right: 6px;
      background: #3b5998;
}


#ig::before {
      display: inline-block;
      content: '';
      border-radius: 100%;
      height: 4px;
      width: 4px;
      margin-right: 6px;
      background: #fcaf45;
}


#tw::before {
      display: inline-block;
      content: '';
      border-radius: 100%;
      height: 4px;
      width: 4px;
      margin-right: 6px;
      background: #55acee;
}


#yt::before {
      display: inline-block;
      content: '';
      border-radius: 100%;
      height: 4px;
      width: 4px;
      margin-right: 6px;
      background: #c4302b;
}

#media, #address {
      text-align: right;
}

#media ul {
      list-style: none;
}

#media ul li {
      display: inline-block;
}

@media(max-width: 768px) {
      .collab, #personal, #media, #address {
            text-align: center;
      }

      .info ul {
            margin: 0 0 0 -22px;
            padding: 0;
      }
}

.hero-content {
      margin-left: 0%;
}

.hero-content p {
      font-weight: 300;
      line-height: 36px;
      color: grey;
}

.hero-content h6 {
      text-align: left;
}

@media(max-width: 768px) {
      .hero-content {
            padding-top: 50px;
            width: 96%;
            margin: 0 auto;
      }
}

.about {
      height: 500px;
      margin-top: 120px;
}

.image {
      background: url(img/moi.png) no-repeat 54% 0%;
}

#contact-form {
      margin: 5% 1.4%;
}

#contact-form ul {
      list-style: none;
      border-radius: 5px;
      margin-bottom: 40px;
}

#contact-form li {
      padding: 10px;
}

#contact-form li:last-of-type {
      border-bottom: none;
}

#contact-form label {
      display: block;
      font-size: .8em;
      color: #999;
      padding-left: 5px;
}

#contact-form input, #contact-form textarea {
      width: 100%;
      padding: 5px;
      border: none;
      resize: vertical;
      background: transparent;
      color: #fff;
      font-weight: bolder;
}

input:focus {
      outline: none;
      border: none;
}

textarea:focus {
      outline: none;
      border: none;
}

.textarea {
      border-bottom: 1px solid #dfdfdf;
}

.send {
      margin-left: 50px;
      text-transform: uppercase;
      padding: 20px 30px;
      background: transparent;
      color: #dfdfdf;
      font-size: 14px;
      letter-spacing: 2px;
}

.send:hover {
      background: #dfdfdf;
      color: #101010;
}

@media(max-width: 768px) {
      #contact-form {
            margin: 5% -8%;
            width: 98%;
      }
}

.prev, .next p {
      color: grey;
      cursor: pointer;
}

.prev p {
      text-align: left;
}

.prev p:hover {
  color: white;
}

.next p {
      text-align: right;
}

.next p:hover {
  color: white;
}

a {
  color: white !important;
}

a:hover {
  text-decoration: none !important;
}

.row--arrow {
      flex-wrap: nowrap !important;
}