/* cyrillic */
@font-face {
  font-family: 'Anonymous Pro';
  font-style: normal;
  font-weight: 400;
  src: local('Anonymous Pro Regular'), local('AnonymousPro-Regular'), url(https://fonts.gstatic.com/s/anonymouspro/v12/rP2Bp2a15UIB7Un-bOeISG3pHl829RH9.woff2) format('woff2');
  unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek */
@font-face {
  font-family: 'Anonymous Pro';
  font-style: normal;
  font-weight: 400;
  src: local('Anonymous Pro Regular'), local('AnonymousPro-Regular'), url(https://fonts.gstatic.com/s/anonymouspro/v12/rP2Bp2a15UIB7Un-bOeISG3pHlg29RH9.woff2) format('woff2');
  unicode-range: U+0370-03FF;
}
/* latin-ext */
@font-face {
  font-family: 'Anonymous Pro';
  font-style: normal;
  font-weight: 400;
  src: local('Anonymous Pro Regular'), local('AnonymousPro-Regular'), url(https://fonts.gstatic.com/s/anonymouspro/v12/rP2Bp2a15UIB7Un-bOeISG3pHlU29RH9.woff2) format('woff2');
  unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Anonymous Pro';
  font-style: normal;
  font-weight: 400;
  src: local('Anonymous Pro Regular'), local('AnonymousPro-Regular'), url(https://fonts.gstatic.com/s/anonymouspro/v12/rP2Bp2a15UIB7Un-bOeISG3pHls29Q.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

html{
  -moz-osx-font-smoothing: grayscale;
  -ms-text-size-adjust: 100%; 
  -webkit-text-size-adjust: 100%;
  overflow-x: hidden
}

a, a:visited, a:focus{
  text-decoration: none !important;
  color:inherit !important;
  transition: .2s;
  padding-bottom: 7px
}

footer a:hover{
  border-bottom: 1px solid #e84647 !important
}

.description svg{
  width: 18px;
  padding: 4px;
  stroke-dasharray: 92;
  transition: .2s;
  vertical-align: middle
}

.description a:hover svg{
  animation: social 1s linear backwards;
  stroke-dasharray: 92;
}

.description a:hover{
  transform: translateX(15px);
}

@keyframes social {
  0% {
    stroke-dashoffset: 105
  }

  to {
    stroke-dashoffset: 12
  }
}

body{
  margin: 0px;
  cursor: default;
  color: #111;
  font-family: "DINNeuzeitGroteskLTW01-Lt";
  line-height: 1.2;
  overflow-x: hidden
}

section{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  height: 100vh
}

section:first-child{
  background-color: #fff
}

#sec{
  background-color: #f8f8f9;
}

.line-1{
  vertical-align: middle;
  margin-top: -15px;
  display: inline-block;
  white-space: nowrap;
  overflow: hidden; 
  border-right: 2px solid rgba(255,255,255,.75);
  padding-right: 5px
}

.anim-typewriter{
  -webkit-animation: typewriter .7s steps(10) .5s 1 normal both,
  blinkTextCursor 1s steps(10) infinite normal;
  animation: typewriter 1s steps(10) 1s cubic-bezier(.54,.71,0,1.29),
  blinkTextCursor 0.9s steps(9) infinite normal
}

@-webkit-keyframes typewriter{
  from{width: 0}
  to{width: 50%}
}

@keyframes typewriter{
  from{width: 0}
  to{width: 50%}
}

#logo{
  margin-top: -50px;
  margin-bottom: 30px;
  width: 100px;
  animation: fade .9s
}

.projects div{
  transition: 2s;
  cursor: pointer;
  -moz-user-select: none;
  user-select: none;
  padding-top: 2px;
  padding-left: 20px;
  padding-right: 20px;
  z-index: 1;
  position: relative;
  transition: .2s
}

.projects >div:hover{
  transform: translateX(25px);
}

.visibility{
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important
}

#spic:hover>span, .selected>span{
  display: inline !important;
  visibility: visible;
}

.selected{
  transform: translateX(25px);
  /*background-color: #111;*/
  color: #f8f8f9;
  border-radius: 3px;
}

#after{
  width: 428px;
  background-color: #111;
  height: 83px;
  display: inline;
  border-radius: 3px;
  z-index: 0;
  position: absolute;
  transition: .2s
}

.after1{
  transform: translateX(6%) translateY(-404%);
}

.after2{
  transform: translateX(6%) translateY(-307%);
  width: 320px !important
}

.after3{
  transform: translateX(6%) translateY(-198%);
  width: 460px !important
}

.after4{
  transform: translateX(6%) translateY(-98%);
}

.content{
  margin: auto;
  margin-left: 16%;
  transition: .2s
}

rect{fill:#121213;}
.st1{enable-background:new;}
.st2{fill:#F8F7F8;}

.an{
  font-size: 77px;
  transition: .2s;
  text-transform: uppercase;
  animation: fade 1.2s;
}

#dev{
  border-right: 0.06em solid #a2a2a3;
  padding-right: 16px;
  animation: 
  blink-caret 1.5s step-end infinite;
}

@keyframes blink-caret {
  from, to { border-color: transparent }
  50% { border-color: #e84647 }
}


.projects{
  font-size: 68px;
  position: relative;
  z-index: 22;
  transition: .2s
}

.bgtext, .bgtext2, .bgtext3{
  position: absolute;
  left: 0;
  font-size: 15vh;
  text-transform: uppercase;
  -moz-user-select: none;
  user-select: none; 
  transition: .2s;
  -webkit-text-fill-color: #f8f8f9
}

.bgtext{
  transform: rotate(-90deg) translateX(32%) translateY(-7%);
  -webkit-text-stroke: 1px #ccc;
  z-index: 2
}

.bgtext2{
  transform: rotate(-90deg) translateX(32%) translateY(-28%);
  -webkit-text-stroke: 1px #ddd;
  z-index: 1
}

.bgtext3{
  transform: rotate(-90deg) translateX(32%) translateY(-50%);
  -webkit-text-stroke: 1px #eaeaea;
  z-index: 0
}

.opacity{
  animation: fade .4s
}

@-webkit-keyframes fade {
  from { opacity: 0 }
  to { opacity: 1 }
}
@-o-keyframes fade {
  from { opacity: 0 }
  to { opacity: 1 }
}
@-moz-keyframes fade {
  from { opacity: 0 }
  to { opacity: 1 }
}
@keyframes fade {
  from { opacity: 0 }
  to { opacity: 1 }
}

.links{
  position: fixed;
  bottom: 60px;
  right: 8.7%;
  font-size: 12px;
  font-family: 'Anonymous Pro', monospace;
  transition: .2s;
  z-index: 888
}

.links a, .links div{
  margin-right: 1px;
  margin-left: 1px;
  padding: 5px;
  display: inline;
  border-bottom: 1px solid transparent;
  transition: .2s
}

.links span{
  display: inline
}

.links-bottom{
  bottom: 60px;
  right: 50% !important;
  transform: translateX(50%)
}

.links-bottom-padding a, .links-bottom-padding div{
  padding: 23px 10px 15px 10px !important
}

.workflex{
  position: relative;
  left: -10%;
  -webkit-box-flex: 0;
  -ms-flex: 0 0 45%;
  flex: 0 0 45%;
  display: flex;
  height: 100%;
  flex-direction: column;
  margin-left: -52%;
  z-index: 5;
  transition: .2s
}

.work {
  background-color: transparent;
  height: 100%;
  transition: .2s;
  z-index: 0;
  overflow: hidden;
  position: relative
}

.scale > div {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: .3s
}

.scale{
  animation: scale 10s infinite alternate;
  position: absolute;
  width: 100%;
  height: 100%
}

@keyframes scale {
  from { transform: scale(1.04)}
  to { transform: scale(1)}
}

@-webkit-keyframes scale {
  from { transform: scale(1.04)}
  to { transform: scale(1)}
}
.descrbg{
  position: absolute;
  bottom: 0px;
  background-color: #fefefe;
  right: -33%;
  width: 100%;
  height: 25.5%;
  transition: right .2s;
  border-radius: 2px 0px 0px 0px
}
.full{
  background: url('../fullstack.jpg') 60% center;
  background-size: cover
}

.spic{
  background-color: #222 !important;
  background: url('../spic.jpg') 60% center;
  background-size: cover
}

.etic{
  background-color: #222 !important;
  background: url('../etic.png') center center no-repeat;
  background-size: initial
}

.neo{
  background-color: #fff !important;
  background: url('../neonumy.png') center center no-repeat;
  background-size: 45%
}

.description{
  background-color: #efefef;
  flex: 1;
  z-index: 3;
  margin: auto;
  font-family: 'Anonymous Pro', monospace;
  font-size: 12px;
  width: 100%;
  display: flex;
  padding-left: 115px
}

.description div{
 margin: auto;
 transition: .3s;
 position: absolute;
 margin-top: 9%;
 width: 58%;
 opacity: 0;
 line-height: 16px;
 pointer-events: none
}

.description a{
 display: inline-block
}

.st0{fill:#121213}
.st1{fill:none;stroke:#F8F7F8;stroke-width:1.7;stroke-miterlimit:10}
.st2{fill:none;stroke:#F8F7F8;stroke-width:1.5;stroke-miterlimit:10}

.Mwezzhbn_0{
  stroke-dasharray:356 358;
  stroke-dashoffset:357;
  animation:Mwezzhbn_draw 1s ease 0ms forwards
}

.Mwezzhbn_1{
  stroke-dasharray:52 54;
  stroke-dashoffset:53;
  animation:Mwezzhbn_draw 1s ease 25ms forwards
}

.Mwezzhbn_2{
  stroke-dasharray:36 38;stroke-dashoffset:37;
  animation:Mwezzhbn_draw 1s ease 50ms forwards
}

.Mwezzhbn_3{
  stroke-dasharray:21 23;stroke-dashoffset:22;
  animation:Mwezzhbn_draw 1s ease 75ms forwards
}

.Mwezzhbn_4{
  stroke-dasharray:78 80;
  stroke-dashoffset:79;
  animation:Mwezzhbn_draw 1s ease 100ms forwards
}

@keyframes Mwezzhbn_draw{100%{stroke-dashoffset:0}}
@-webkit-keyframes Mwezzhbn_draw{100%{stroke-dashoffset:0}}

footer{
  height: 150px;
  background-color: #fff
}

/*** media queries ***/

@media (max-width: 1610px) {
  .links {
    right: 6.7%
  }

  .workflex {
    left: -8%;
    -ms-flex: 0 0 47%;
    flex: 0 0 47%
  }

  .description div {
    width: 52%
  }

  .descrbg {
    right: -24%
  }
}

@media (max-width: 1300px) {

  .workflex {
    left: 0%
  }

  .descrbg {
    right: 0% !important;
    height: 27%;
    border-radius: 0px
  }

  .work > div {
    height: 73%
  }

  .description {
    padding-left: 11%
  }

  .description div {
    width: 75%
  }
  .an {
    font-size: 65px
  }

  .bgtext, .bgtext2, .bgtext3{
    font-size: 14vh
  }

  .projects{
    font-size: 60px
  }

  #after{
    height: 75px
  }

  .after2{
    transform: translateX(6%) translateY(-296%)
  }
}

@media (max-width: 1120px) {
  .an {
    padding-right: 220px;
    font-size: 46px;
  }
}

@media (max-width: 920px) {
  .an {
    font-size: 38px;
    padding-right: 20px;
    white-space: nowrap
  }

  .projects{
    font-size: 55px;
    transform: translateY(-10%)
  }

  .content{
    margin: auto;
    margin-left: 11%
  }

  .links {
    left: 11%;
    right: 20px
  }

  .description{
    padding-left: 19%
  }

  .description div {
    margin-top: 15%;
    width: 70%
  }

  .etic{
    background-size: 50%
  }

  .visit{
    background-size: 70%
  }

  .work > div {
    width: 104%
  }

  #after {

    height: 69px;

  }
}

@media (max-width: 700px) {
  .workflex {
    left: 0%;
    -ms-flex: 0 0 66%;
    flex: 0 0 66%
  }

  .projects{
    font-size: 50px;
    transform: translateY(-15%)
  }

  .description div {
    width: 72%
  }

  .descrbg {
    height: 30%
  }

  .links a, .links div{
    display: block;
    width: 60%;
    padding: 10px;
    line-height: 0px
  }

  .links span{
    display: none
  }

  .links {
    bottom: 43px
  }

  .work{
    opacity: .93
  }

  #after {
    height: 62px;
    width: 355px !important
  }

  footer{
    height: 200px
  }

}

@media (max-width: 520px) {

  #logo, .an{
    transform: translateY(-15px)
  }

  #logo{
    width: 78px;
    margin-top: -80px
  }

  #dev {
    padding-right: 10px;
  }

  .an {
    font-size: 7vw;
    padding-right: 20px
  }

  .content{
    margin-left: 9%
  }

  .description div {
    width: 80%
  }

  .links {
    left: calc(10% - 10px)
  }

  .description {
    padding-left: 10%
  }

  .descrbg {
    height: 45%;
    background-color: #f9f9fa
  }

  .work > div {
    height: 55%
  }

  .projects{
    font-size: 9vw;
    transform: translateY(-46%) translateX(-20px)
  }

  .selected{
    transform: translateX(15px)
  }

  .work{
    opacity: .7
  }

  .workflex {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    margin-left: -90%
  }

  .visit{
    background-size: 60%
  }

  .etic{
    background-size: 45%
  }

  .bgtext, .bgtext2, .bgtext3 {
    left: -30px;
    font-size: 84px;
    opacity: 0
  }

  .bgtext2{
    transform: rotate(-90deg) translateX(39%) translateY(-4%);
    -webkit-text-stroke: 1px #dadada
  }

  .links a, .links div{
    width: 90%
  }

  #after {
    height: 11.3vw;
    width: 72vw !important
  }

}

@media (max-height: 1000px){
  .description div {
    margin-top: 8%
  }

}

@media (max-height: 900px) and (min-width: 520px){
  .bgtext{
    transform: rotate(-90deg) translateX(33%) translateY(-10%)
  }

  .bgtext2{
    transform: rotate(-90deg) translateX(33%) translateY(-28%)
  }

  .bgtext3{
    transform: rotate(-90deg) translateX(33%) translateY(-50%)
  }

  .descrbg {
    height: 27%
}

}

@media (max-height: 700px) and (min-width: 520px){
  .links {
    bottom: 40px !important
  }

  .bgtext{
    transform: rotate(-90deg) translateX(41%) translateY(-10%)
  }

  .bgtext2{
    transform: rotate(-90deg) translateX(41%) translateY(-28%)
  }

  .bgtext3{
    transform: rotate(-90deg) translateX(41%) translateY(-50%)
  }

}

@media (max-height: 500px) and (min-width: 520px){
  .bgtext{
    transform: rotate(-90deg) translateX(50%) translateY(-10%)
  }

  .bgtext2{
    transform: rotate(-90deg) translateX(50%) translateY(-28%)
  }

  .bgtext3{
    transform: rotate(-90deg) translateX(50%) translateY(-50%)
  }

}


@font-face {
  font-family: 'DINNeuzeitGroteskLTW01-Lt';
  src: url('../fonts/DINNeuzeitGroteskLTW01-Lt.eot?#iefix') format('embedded-opentype'),  
  url('../fonts/DINNeuzeitGroteskLTW01-Lt.otf')  format('opentype'),
  url('../fonts/DINNeuzeitGroteskLTW01-Lt.woff') format('woff'), 
  url('../fonts/DINNeuzeitGroteskLTW01-Lt.ttf')  format('truetype'), 
  url('../fonts/DINNeuzeitGroteskLTW01-Lt.svg#DINNeuzeitGroteskLTW01-Lt') format('svg');
  font-weight: normal;
  font-style: normal
}

::selection {
  background-color: #e84647; 
  color: rgb(35, 31, 32)
}

::-moz-selection {
  background-color: #e84647;
  color: rgb(35, 31, 32)
}
