@import url("https://fonts.googleapis.com/css?family=Montserrat:500,500i,800,800i&display=swap&subset=cyrillic,latin-ext");
@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&display=swap");
body {
  margin: 0;
  font-family: "Inter", sans-serif;
  font-size: 1.1em;
  letter-spacing: -0.02em;
  color: #303030;
  line-height: 150%;
  display: flex;
  flex-direction: column;
}

main {
  display: flex;
  flex-direction: column;
  padding: 4rem 2rem;
  padding-bottom: 2rem;
}

.video {
  margin-top: 2rem;
}

.video-embed {
  border-radius: 6px;
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}
.video-embed iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.block:not(:last-of-type) {
  margin-bottom: 4rem;
}

.box {
  padding: 2rem;
  border-radius: 6px;
  flex: 1 1 100%;
  border: 3px solid #f0f0f0;
}

.centered {
  margin-left: auto;
  margin-right: auto;
}

.small {
  max-width: 37rem;
}

.wide {
  max-width: 92rem;
}

.edge {
  margin-left: -2rem;
  margin-right: -2rem;
}

h1.bullet::before {
  display: inline-block;
  content: " ";
  background-color: #d0d0d0;
  width: 13px;
  height: 13px;
  margin-right: 1ex;
  margin-bottom: 1px;
  border-radius: 50%;
}

.feature {
  display: flex;
  flex-direction: column;
  border-radius: 6px;
  border: 3px solid #f0f0f0;
  line-height: 175%;
}
.feature .description {
  padding: 1rem;
}
.feature h1 {
  font-size: 1.2em;
  margin-bottom: 0.5em;
  font-family: "Inter", sans-serif;
  font-weight: 600;
}
.feature h1 + p {
  margin-top: 0;
}
.feature .screenshot {
  margin-top: auto;
  border-radius: 0 0 6px 6px;
  height: 240px;
  background-color: #ffffff;
  display: flex;
  justify-content: center;
  overflow: hidden;
  padding: 1rem 0;
  box-sizing: border;
}
.feature .screenshot img {
  width: auto;
  max-width: 100%;
  max-height: 100%;
  margin: auto;
}

@media (max-width: 1380px) {
  .features {
    flex-direction: column;
  }

  .feature {
    flex-direction: row;
    height: 240px;
    width: 54rem;
  }

  .feature .screenshot {
    min-width: 426px;
    border-radius: 0 6px 6px 0;
    border-top: none;
  }
}
@media (max-width: 900px) {
  .feature {
    flex-direction: column;
    height: auto;
    width: auto;
    max-width: 426px;
  }

  .feature .screenshot {
    min-width: 20px;
    width: auto;
    border-radius: 0 0 6px 6px;
    border-left: none;
  }
}
@media (min-width: 900px) and (max-width: 1380px) {
  .feature {
    /* For Safari 13.0.5 */
    max-height: 271px;
  }
}
.horizontal {
  display: flex;
  justify-content: center;
  margin: -1rem;
}
.horizontal > * {
  margin: 1rem;
  flex: 1 1 100%;
}

@media (max-width: 900px) {
  .horizontal.flip-900 {
    align-items: center;
    flex-direction: column;
  }
}
.nolist {
  list-style: none;
  padding: 0;
}

a.external-link {
  color: inherit;
  text-decoration: none;
  margin: 0;
}
a.external-link span {
  border-bottom: 2px solid #00000028;
  transition: border-color 150ms;
}
a.external-link:hover span {
  border-color: #00000060;
}
a.external-link:active span {
  border-color: #00000010;
}

h1 {
  margin: 0;
  font-family: "Inter", sans-serif;
  font-weight: 600;
  font-size: 1.5em;
}

p {
  margin: 0;
  margin-top: 1em;
  line-height: 175%;
}
p:first-child {
  margin-top: 0;
}
h1 + p {
  margin-top: 1.5em;
}

.sign-up-big {
  display: block;
  width: max-content;
  -webkit-user-drag: none;
  margin: 0 auto;
  padding: 12px 2rem;
  border-radius: 6px;
  font-family: "Inter", sans-serif;
  font-weight: 600;
  font-weight: bold;
  color: #ffffff;
  background-color: #4d91b3;
  background: radial-gradient(#70b4c2, #4d91b3);
  box-shadow: #00000040 0 0 6px;
  transition: transform 300ms;
  white-space: nowrap;
}
.sign-up-big:hover {
  transform: scale(1.1);
}
.sign-up-big:active {
  transform: scale(1.05);
}

.newsletter-outer {
  background-color: #fdf8dd;
  border-top: 3px solid #f0ebd1;
  border-bottom: 3px solid #f0ebd1;
  padding: 2rem;
  font-size: 0.9em;
}

.newsletter h1 {
  margin: 0;
  font-size: 1em;
  display: inline;
  padding-right: 0.5em;
}

.newsletter p {
  margin: 0;
  font-size: 1em;
  display: inline;
  line-height: 150%;
}

.newsletter form {
  margin: 0;
  margin-top: 0.5rem;
  display: flex;
  flex-direction: row;
}

.newsletter input[type=email] {
  padding: 0 0.5em;
  background-color: #00000008;
  border: none;
  color: #000000a0;
  flex-shrink: 1;
  width: auto;
  max-width: auto;
  min-width: 3em;
  flex: 0 1 auto;
}

.newsletter input[type=submit] {
  padding: 0 0.5em;
  background-color: #00000008;
  border: none;
  color: #000000a0;
  width: auto;
  font-size: 0.9em;
  text-transform: uppercase;
  padding-top: 0.525em;
  padding-bottom: 0.525em;
  margin-left: 0.5em;
}

.newsletter input[type=submit]:hover {
  cursor: pointer;
  background-color: #00000010;
}

.newsletter input::placeholder {
  color: #00000060;
}

footer {
  font-size: 0.9em;
  padding: 0 2rem;
  padding-bottom: 2rem;
  color: #a0a0a0;
  text-align: center;
  margin-top: auto;
}

/* #region Login page */
.login h1 {
  font-size: 1.25rem;
  margin: 0;
  margin-bottom: 1rem;
}

form {
  padding: 0;
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 40ex;
}

form .entry {
  display: flex;
  flex-direction: column;
}

form > *:not(:last-child) {
  margin-bottom: 2em;
}

form {
  color: #808080;
}
form input {
  color: #404040;
}

form .entry label {
  cursor: text;
  font-size: 0.9em;
  line-height: 125%;
}

form input[type=text],
input[type=password],
input[type=email] {
  background: none;
  border: none;
  outline: none;
  padding: 0;
  margin: 0;
  font-size: 1em;
  font-family: "Inter";
}

form .entry > input {
  width: 100%;
}

form input[type=checkbox] {
  margin-right: 1em;
}

.login button.submit {
  margin-top: auto;
  font-family: "Inter", sans-serif;
  font-weight: 600;
  font-size: 0.9em;
  font-weight: bold;
  cursor: pointer;
  border-radius: 6px;
  padding: 1em;
  color: #484848;
  border: 3px solid #f0f0f0;
  transition: border-color 150ms, background-color 150ms;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: transparent;
  outline: none;
}
.login button.submit:hover {
  border-color: #e0e0e0;
}
.login button.submit:active {
  background-color: #f8f8f8;
}

.login .invalid-username {
  display: none;
  padding: 1em 0;
  color: #606060;
  font-size: 0.9em;
}

.login input::placeholder {
  color: #c0c0c0;
}

.login input:invalid:not(:placeholder-shown) + .invalid-username {
  display: inline-block;
}

.login .forgot-password {
  font-size: 0.9em;
  display: inline-block;
}

/* #endregion */

/*# sourceMappingURL=index.css.map */
