@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:ital,wght@0,100..700;1,100..700&display=swap');

:root {
  --color-main-background: #FFFFFF;
  --color-main-text: #191D23;
  --color-accent: #00F695;
  --color-button: #00B0AC;
  --color-green: #006980;
  --color-error: #FA6B6B;
  --color-gray: #888888;
  --color-neutralis-dark: #2E2E3C;
  --color-border: #191D23;
  --color-purple: #BFB0FF;
/*  --color-input-background: #F4F4F4;
  --color-button-default: var(--color-accent);
  --color-button-hover: linear-gradient(152.52deg, #DB0C0C -39.82%, #3B0101 187.94%);
  --color-button-active: #7B000E;
  --color-button-disabled: #DADADA;*/
}

@font-face {
  font-family: "Helios";
  src: url("../fonts/helios_regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Helios";
  src: url("../fonts/helios_light.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}

body {
  background: var(--color-main-background);
  font: 300 16px "Helios", sans-serif;
  color: var(--color-main-text);
  overflow-y: scroll;
  -ms-overflow-style: none;
  scrollbar-width: none;
  overflow-x: hidden;
  line-height: 1.14;
  .p-inputtext {
    font: 400 12px "IBM Plex Sans", sans-serif;
  }
  &::-webkit-scrollbar {
    width: 0;
    background: transparent;
  }

  p + p,
  p + a {
    margin-top:  0.25rem;
  }

  .container {
    max-width: 1300px;
    padding: 0 20px;
  }

}

.h1 {
  font: 400 clamp(38px, 90px, 6.25vw) "Helios", sans-serif;
  line-height: 1;
}

.h2 {
  font: 400 16px "Helios", sans-serif;
  margin-bottom: 4px;
}

.accent {
  color: var(--color-accent);
}

.accent-button {
  color: var(--color-button);
}

.accent-green {
  color: var(--color-green);
}

.accent-purple {
  color: var(--color-purple);
}

pre {
  margin: 0;
}

.alter-bg {
  background-color: var(--color-button) !important;
}

.modal-content {
  p {
    margin-bottom: 1em;
  }
  .button {
    margin-top: 30px;
  }
}

/* Анимация переходов (Transition). */
.fade-enter-active,
.fade-leave-active {
  transition: opacity .15s ease-in;
  will-change: opacity;
}

.fade-enter-from,
.fade-leave-to {
  opacity: 0;
}

.fade-enter-to,
.fade-leave-from {
  opacity: 1;
}

.height-enter-active,
.height-leave-active {
  transition: max-height .45s linear;
  will-change: max-height;
}

.height-enter-from,
.height-leave-to {
  max-height: 0;
}

.height-enter-to,
.height-leave-from {
  max-height: 200px;
}

pre code {
  white-space: pre-wrap;   /* сохраняет переносы строк */
  word-wrap: break-word;   /* переносит длинные слова */
}

a {
  display: inline-flex;
  align-items: center;
  gap: 5px;
}

@media (max-width: 768px) {
  .hidden-sm {
    display: none !important;
  }
}

/* <Header> */
.header {
  margin: 20px 0;
  .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 30px;
    &:last-child {
      font-weight: 400;
      font-size: 20px;
      @media (min-width: 768px) {
        position: relative;
        padding-bottom: 15px;
        &:after {
          content: '';
          display: block;
          position: absolute;
          bottom: 0;
          left: 20px;
          width: calc(100% - 40px);
          height: 1px;
          background-color: var(--color-border);
        }
      }
    }
  }
  .menu {
     gap: 30px;
  }
  .header-links {
    display: flex;
    gap: 30px;
  }
}

#primary-menu {
  @media (max-width: 768px) {
    position: fixed;
    width: 100vw;
    height: 0vh;
    top: 0;
    left: 0;
    padding: 0 15px;
    background-color: var(--color-main-background);
    z-index: var(--layout-modal);
    transition: all .3s ease-in;
    overflow: hidden;
    &.active {
      padding: 15px;
      height: 100vh;
      overflow-y: scroll;
    }
    li {
      padding: 15px 0;
      border-bottom: 1px solid var(--color-border);
    }
  }
}
/* </Header> */

/* <Pages background> */
.page-id-2 {
  background-image: url('../images/main-screen/main.png');
  background-size: 70%;
  background-position: right top;
  background-repeat: no-repeat;
  @media (max-width: 768px) {
    background-image: url('../images/main-screen/main-mob.png');
    background-size: 100%;
  }
}
/* </Pages background> */

/* <Footer> */
.site-footer {
  margin-top: 120px;
  @media (max-width: 768px) {
    margin-top: 80px;
  }
  .container {
    display: flex;
    justify-content: space-between;
    &:first-child {
      position: relative;
      padding-top: 20px;
      &:before {
        content: '';
        display: block;
        position: absolute;
        top: 0;
        left: 20px;
        width: calc(100% - 40px);
        height: 1px;
        background-color: var(--color-border);
      }
      @media (max-width: 768px) {
        margin-bottom: 30px;
      }
    }
    &:last-child {
      margin-bottom: 40px;
      gap: 14px;
    }
    @media (max-width: 768px) {
      flex-direction: column;
    }
  }
}

.footer-contacts {
  @media (max-width: 768px) {
    display: flex;
    flex-direction: row-reverse;
    justify-content: space-between;
    padding-top: 20px;
    gap: 15px;
  }
  .footer-contacts__links {
    font-size: 14px;
    margin: 29px 0 25px;
    @media (max-width: 768px) {
      margin-top: 0;
    }
  }
}

#footer-menu {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px 60px;
  font-weight: 400;
  @media (max-width: 768px) {
    gap: 20px;
    grid-template-columns: 1fr 0.7fr;
  }
}

.footer-nav {
  @media (max-width: 768px) {
    order: -1;
    border-bottom: 1px solid var(--color-border);
    padding-bottom: 40px;
  }
}

.policy-links {
  width: 241px;
  font-size: 14px;
  p {
    margin-bottom: 10px;
  }
}

.copyright {
  width: 241px;
  font-size: 14px;
}
/* </Footer> */