:root {
  --color-black: #000;
  --color-white: #fff;
  --time-animation: 0.2s;
  --height-footer: 0px;
}

@keyframes pulse {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(25px);
  }
  100% {
    transform: translateY(0px);
  }
}

html {
  scrollbar-width: none;
}

@font-face {
font-family: "Calibri";
src: url("https://robotaki.de/Calibri.eot");
src: url("https://robotaki.de/Calibri.woff") format("woff"),
url("https://robotaki.de/Calibri.otf") format("opentype"),
url("https://robotaki.de/Calibri.svg#filename") format("svg");
}

body {
  margin: 0;
  padding: 0;
  font-family: "Calibri";
  background: #000;
  overflow: hidden scroll;
  -ms-overflow-style: none;
}

body::-webkit-scrollbar {
  display: none;
}

.layout {
  width: 100%;
  height: calc(100vh * 17);
  position: relative;
}

.layout .section-stick {
  margin: auto;

  position: fixed;
  right: 50px;
  bottom: 50px;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;

  z-index: 1000;
}

.layout .section-stick .stick,
.layout .section-stick .active {
  width: 13px;
  height: 22px;

  border: none;
  border-radius: 9px;
}

.layout .section-stick .stick {
  position: relative;

  background-color: rgba(255, 255, 255, 0.4);
  transition: all var(--time-animation) ease-in-out;
}

.layout .section-stick .stick:not(:last-child) {
  margin-bottom: 7px;
}

.layout .section-stick .active {
  position: absolute;

  background-color: var(--color-white);
  box-shadow: 0px 0px 12px 1px var(--color-white);
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
}

.layout section {
  width: 100%;
  height: 100vh;

  position: fixed;
  top: 100vh;
  left: 0;
  right: 0;
  bottom: 0;

  display: flex;
  align-items: center;
  justify-content: center;

  text-align: center;
  color: var(--color-white);
  font-size: 80px;
  font-weight: 600;

  transition: all var(--time-animation) ease-in-out;
  z-index: 1;
}

.layout section .home {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.layout section .home span {
  margin-bottom: 0px;
}

.layout section .home svg {
  animation: pulse 1.4s linear infinite normal;
}

.layout .s1 {
  top: 0;
}
.fit {
  display: grid;
  height: 100%;
}
.center-fit {
	max-width: 100%;
	max-height: 100vh;
	margin: auto;
}



body.end .layout {
/*  height: calc(100vh + 1px);*/
  xheight: calc(100vh + 1px);
}

/* TODO: conseguir una mejor solucion para esto */
body.end .s17 {
  top: calc(var(--height-footer) * -1) !important;
}

body.end footer {
  bottom: 0;
}

/************************************* RESPONSIVE ***************************************/

/* MOBILE */
@media screen and (max-width: 576px) {
  body::-webkit-scrollbar {
    width: 0px;
    background: transparent;
    -webkit-appearance: none;
  }

  .layout .section-stick {
    right: 20px;
    bottom: 20px;
    transform: scale(0.7);
  }

  .layout section {
    font-size: 40px;
  }

  #author {
    left: 20px;
    bottom: 20px;
    font-size: 18px;
  }

  #author svg {
    font-size: 30px;
  }
}