@import url("https://fonts.googleapis.com/css2?family=Lato:wght@300&display=swap");
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css");

html, body {
  overflow-x: hidden !important;
  font-family: Arial, Helvetica, sans-serif;
  margin: 0;
  min-height: 100vh;
}

body {
  position: relative;
}

body::after {
  content: "";
  display: block;
  height: 50px;
}

.wrapper {
  min-height: 600px;
}

::selection {
  background: rgba(20, 20, 20, .3) !important;
}

* {
  font-weight: 200;
  scrollbar-width: thin !important;
  scrollbar-color: #acacac #ffffffff !important;
}

a {
  color: #ccc;
}

a:hover {
  color: #aaa;
}

a:active {
  color: #999;
}

.main {
  position: absolute;
  background: #efefef;
  width: 100%;
  margin: 0;
  top: 0;
  left: 0;
  right: 0;
  height: 450px;
}

.main-title {
  font-size: 50px;
  text-align: center;
  font-family: "Lato", Arial;
}

.main-description {
  position: relative;
  word-wrap: break-word;
  text-align: center;
  color: #333;
  left: 50%;
  width: 80%;
  margin-left: -40%;
}

.button {
  color: #333;
  border: 1px solid #ccc;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.2);
  background: #dbdbdb;
  padding: 8px;
  cursor: pointer;
  margin: 10px;
}

.button:active {
  background: #ccc;
}

.main-buttons .button {
  width: 125px;
}

.main-buttons {
  position: relative;
  width: 100%;
  margin: 0;
  justify-content: center;
  text-align: center;
  align-items: center;
}

.button > .btn-arrow {
  opacity: 0;
  margin-left: -5px;
  position: relative;
  transition: opacity .5s, margin-left .75s ease-out;
}

.button:hover > .btn-arrow {
  opacity: 1;
  margin-left: 5px;
}

.body {
  position: absolute;
  margin: 0;
  margin-top: 450px;
  width: 100%;
}

.main-banner {
  position: relative;
  width: 40%;
  left: 50%;
  margin-left: -20%;
}

.body-banner-wrapper {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.body-banner {
  width: 40%;
}

h2 {
  font-family: Arial, Helvetica, sans-serif;
}

.body-title {
  text-align: center;
}

p.body-description {
  position: relative;
  text-align: center;
  word-wrap: break-word;
  width: 50%;
  left: 50%;
  margin-left: -25%;
}

.main-keyboard-typing {
  border-right: 3px solid #999;
  padding-right: 3px;
  animation: caret .75s infinite ease-in-out;
  border-bottom: 1px dotted #333;
}

@keyframes caret {
  0% {
    border-right: 3px solid transparent;
  }
  50% {
    border-right: 3px solid #999;
  }
  100% {
    border-right: 3px solid transparent;
  }
}

hr {
  border: none !important;
  outline: none !important;
  background: #ccc;
  width: 50%;
  position: relative;
  height: 2px;
  line-height: 2px;
}

.list {
  position: relative;
  display: block;
  align-items: center;
  justify-content: center;
  width: 50%;
  word-wrap: break-word;
  left: 50%;
  margin-left: -20%;
}

.list p {
  width: 80%;
  text-align: left;
}

footer {
  position: absolute;
  background: #efefef;
  width: 100%;
  height: 300px;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
  margin-top: 100px;
}

.footer-title {
  position: relative;
  text-align: center;
  font-family: "Lato", Arial;
  font-size: 40px;
}

.footer-description {
  text-align: center;
}

.nav-bar {
  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
  background: rgba(220, 220, 220, .5);
  border-bottom: 1px solid #333;
  transition: opacity .5s;
  position: fixed;
  width: 100%;
  margin: 0;
  left: 0;
  right: 0;
  top: 0;
  height: 60px;
  opacity: 0;
  z-index: 9999;
  font-size: 20px;
  font-family: "Lato", Arial;
}

.nav-bar a {
  line-height: 60px;
  vertical-align: middle;
  color: #333;
  margin-right: 2vw;
}

.nav-bar div a {
  margin-right: 0 !important;
  margin-left: 2vw;
}

@media only screen and (max-width: 535px) {
  .nav-bar a {
    margin-right: 1vw !important;
  }
  .nav-bar div a {
    margin-left: 1vw !important;
  }
  .nav-bar > .seperator {
    width: 10px !important;
  }
}

@media only screen and (max-width: 425px) {
  .nav-bar > .seperator {
    width: 0 !important;
  }
  .nav-bar {
    font-size: 16px !important;
  }
}

@media only screen and (max-width: 400px) {
  .nav-bar {
    font-size: 14px !important;
  }
}

.swal-button {
  background: #e0e0e0;
  box-shadow: none !important;
  outline: none !important;
  border-radius: 0 !important;
}

.swal-button:hover {
  background: #ccc !important;
}

.swal-modal {
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.2);
  border-radius: 0 !important;
}

.sites {
  --box-count: 3;
  --box-width: 100px;
  --box-margin: 10px;
  --total-width: calc((var(--box-width) + (var(--box-margin) * 2) + 4px) * var(--box-count));
  position: relative;
  width: var(--total-width);
  border: 1px solid #999;
  border-radius: 8px;
  left: 50%;
  margin-left: calc(calc(var(--total-width) / 2) - var(--total-width));
}

button[data-site] {
  position: relative;
  width: 100px;
  height: 100px;
  border-radius: 6px;
  background: #ddd;
  margin: 10px;
  border: none;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.2);
  color: #000 !important;
  font-family: "Lato", Arial;
  font-size: 20px;
  word-wrap: break-word;
  vertical-align: middle;
  line-height: 20px;
  padding: 0 !important;
}

button[data-site]:hover {
  background: #bcbcbc;
}

button[data-site]:not(.no_site):hover::after {
  pointer-events: auto;
  position: absolute;
  float: right;
  top: 10px;
  right: 10px;
  margin: 0 !important;
  font-family: "FontAwesome";
  content: "\f08e";
  font-size: 10px;
  cursor: pointer;
}

.create_site, .remove_site {
  position: relative;
  padding: 6px;
  margin: 10px;
  vertical-align: baseline;
  background: #e2e2e2;
  border: 1px solid #999;
  border-radius: 0;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.15);
  cursor: default !important;
  color: #000 !important;
  left: 50%;
  margin-left: -186px;
}

.create_site:hover, .remove_site:hover {
  background: #ccc;
}

.create_site:active, .remove_site:active {
  background: #aaa;
}

select {
  background: #e1e1e1;
  color: #333;
  border: 1px solid #999;
  border-radius: 0;
  padding: 6px;
}

select:hover {
  background: #ccc;
}