@charset "UTF-8";
/*! ==========================================================================
 *  Variables
 *  ========================================================================== */
:root {
  --font-family-primary: "Inter",sans-serif;
  --transition-base: 0.3s ease;
  --transition-colors: color var(--transition-base),background-color var(--transition-base),border-color var(--transition-base);
  --transition-opacity: opacity var(--transition-base),visibility var(--transition-base);
  --gap-column: clamp(1.001rem, 0.5vw + 0.901rem, 1.501rem)
}
/*! ==========================================================================
 *  Normalize
 *  ========================================================================== */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%
}
body {
  margin: 0
}
main {
  display: block
}
h1 {
  margin: .67em 0;
  font-size: 2em
}
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible
}
pre {
  font-size: 1em;
  font-family: monospace,monospace
}
a {
  background-color: transparent
}
abbr[title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  border-bottom: none
}
b,
strong {
  font-weight: bolder
}
code,
kbd,
samp {
  font-size: 1em;
  font-family: monospace,monospace
}
small {
  font-size: 80%
}
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline
}
sub {
  bottom: -.25em
}
sup {
  top: -.5em
}
img {
  border-style: none
}
button,
input,
optgroup,
select,
textarea {
  margin: 0;
  font-size: 100%;
  font-family: inherit;
  line-height: 1.15
}
button,
input {
  overflow: visible
}
button,
select {
  text-transform: none
}
[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance: button
}
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
  padding: 0;
  border-style: none
}
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
  outline: 1px dotted ButtonText
}
fieldset {
  padding: .35em .75em .625em
}
legend {
  display: table;
  box-sizing: border-box;
  max-width: 100%;
  padding: 0;
  color: inherit;
  white-space: normal
}
progress {
  vertical-align: baseline
}
textarea {
  overflow: auto
}
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  padding: 0
}
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto
}
[type=search] {
  outline-offset: -2px;
  -webkit-appearance: textfield
}
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none
}
::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button
}
details {
  display: block
}
summary {
  display: list-item
}
template {
  display: none
}
[hidden] {
  display: none
}
/*! ==========================================================================
 *  Fonts
 *  ========================================================================== */
@font-face {
  font-weight: 100 900;
  font-family: Inter;
  font-style: normal;
  src: url(../fonts/Inter-Variable.woff2) format("woff2");
  font-display: swap
}
/*! ==========================================================================
 *  Global styles
 *  ========================================================================== */
*,
::after,
::before {
  box-sizing: border-box
}
html {
  scroll-behavior: smooth
}
body {
  margin: 0
}
a {
  color: inherit;
  transition: color .2s ease;
  text-underline-offset: .25rem
}
@media (any-hover:hover) {
  a:hover {
    color: inherit;
    text-decoration: none
  }
}
a:active {
  color: inherit;
  text-decoration: none
}
h2 {
  font-weight: 600;
  font-size: clamp(1.501rem,1.313vw + 1.239rem,2.814rem)
}
ol,
ul {
  padding-left: 1.5em
}
li {
  margin-bottom: .5em
}
dt {
  font-weight: 700
}
dd {
  margin-bottom: .5em
}
button,
input,
select,
textarea {
  font: inherit
}
audio,
iframe,
img,
video {
  display: block;
  max-width: 100%;
  margin: 1.5em 0
}
iframe {
  border: none
}
picture {
  display: contents
}
table {
  width: 100%;
  margin: 1.5em 0;
  border-collapse: collapse
}
td,
th {
  padding: .625em;
  text-align: left;
  border: 1px solid #d3d3d3
}
th {
  font-weight: 700;
  background-color: #d3d3d3
}
code {
  padding: .125em .375em;
  font-size: .95em;
  font-family: monospace;
  background-color: #d3d3d3
}
pre {
  padding: 1em;
  overflow-x: auto;
  background-color: #d3d3d3;
  border-radius: .375em
}
abbr {
  cursor: help
}
blockquote {
  margin: 1.5em 0;
  padding: 1em 1.5em;
  font-style: italic;
  border-left: .25em solid currentcolor
}
:focus {
  outline-width: 0!important
}
:focus-visible {
  outline-width: .125rem!important;
  outline-offset: .3125rem!important
}
@-moz-document url-prefix() {
  :focus-visible {
    outline: .125rem solid gold!important
  }
}
/*! ==========================================================================
 *  Utils
 *  ========================================================================== */
.list-reset {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style: none
}
.list-reset > li {
  margin-bottom: 0
}
.text-nowrap {
  white-space: nowrap
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  border: 0;
  clip: rect(0 0 0 0)
}
/*! ==========================================================================
 *  .page
 *  ========================================================================== */
.page__body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  min-height: 100dvh;
  color: #000;
  font-weight: 400;
  font-size: clamp(.876rem,.125vw + .851rem,1.001rem);
  font-family: var(--font-family-primary);
  line-height: normal;
  background-color: #f0f3f7
}
.page__body.is-lock {
  padding-right: var(--scrollbar-width);
  overflow: hidden
}
.page__main {
  display: flex;
  flex-direction: column;
  flex-grow: 1
}
.page__footer {
  margin-top: auto
}
/*! ==========================================================================
 *  .icon
 *  ========================================================================== */
.icon {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  width: 1em;
  height: 1em;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain
}
.icon--height-auto {
  height: auto
}
.icon--width-auto {
  width: auto
}
.icon img,
.icon svg {
  display: block;
  width: inherit;
  height: inherit;
  margin: 0;
  fill: currentcolor
}
.icon img {
  object-fit: contain;
  object-position: center
}
/*! ==========================================================================
 *  .button
 *  ========================================================================== */
.button {
  position: relative;
  display: inline-flex;
  gap: .75rem;
  align-items: center;
  justify-content: center;
  width: min(20rem,100%);
  max-width: 100%;
  padding: .625rem;
  font-weight: 500;
  font-size: clamp(.751rem,.375vw + .676rem,1.126rem);
  text-align: center;
  text-decoration: none;
  border: none;
  border-radius: .625rem;
  cursor: pointer;
  transition: var(--transition-colors)
}
.button:disabled {
  cursor: not-allowed
}
.button .icon {
  font-size: 1.25rem
}
.button--color-primary {
  color: #fff;
  background-color: #173483
}
@media (any-hover:hover) {
  .button--color-primary:hover {
    color: #fff;
    background-color: #357de4
  }
}
.button--color-primary:active {
  color: #fff;
  background-color: #357de4
}
.button--color-primary:disabled {
  color: #fff!important;
  background-color: #ccc!important
}
.button--color-default {
  color: #fff;
  background-color: #357de4
}
@media (any-hover:hover) {
  .button--color-default:hover {
    color: #fff;
    background-color: #173483
  }
}
.button--color-default:active {
  color: #fff;
  background-color: #173483
}
.button--color-default:disabled {
  color: #fff!important;
  background-color: #ccc!important
}
.button--color-default.button--variant-filled {
  color: #fff;
  background-color: #173483
}
@media (any-hover:hover) {
  .button--color-default.button--variant-filled:hover {
    color: #fff;
    background-color: #173483
  }
}
.button--color-default.button--variant-filled:active {
  color: #fff;
  background-color: #173483
}
.button--color-default.button--variant-filled:disabled {
  color: #fff!important;
  background-color: #ccc!important
}
.button--size-large {
  width: unset;
  padding: clamp(.626rem,.5vw + .526rem,1.126rem) clamp(1.501rem,.75vw + 1.351rem,2.251rem);
  font-size: clamp(.876rem,.125vw + .851rem,1.001rem);
  line-height: 1.5
}
/*! ==========================================================================
 *  .container
 *  ========================================================================== */
.container {
  --container-width: 99.75rem;
  --container-padding-x: clamp(0.501rem, 5.75vw + -0.65rem, 6.251rem);
  width: min(var(--container-width),100% - 2 * var(--container-padding-x));
  margin-right: auto;
  margin-left: auto
}
/*! ==========================================================================
 *  .content
 *  ========================================================================== */
.content > :first-child {
  margin-top: 0
}
.content > :last-child {
  margin-bottom: 0
}
/*! ==========================================================================
 *  .section
 *  ========================================================================== */
.section {
  --section-padding-y: clamp(0.751rem, 1.75vw + 0.401rem, 2.501rem);
  padding-top: var(--section-padding-y);
  padding-bottom: var(--section-padding-y)
}
.section--pt-big {
  padding-top: calc(2 * var(--section-padding-y))
}
.section--pb-big {
  padding-bottom: calc(2 * var(--section-padding-y))
}
/*! ==========================================================================
 *  .splide
 *  ========================================================================== */
.splide {
  --slider-per-page: 1;
  --slider-gap: var(--gap-column)
}
.splide__arrows {
  display: flex;
  gap: .625rem;
  align-items: center;
  justify-content: center
}
.splide__arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1em;
  height: 1em;
  color: #000;
  font-size: clamp(2.001rem,1vw + 1.801rem,3.001rem);
  background-color: transparent;
  border: 1px solid #000;
  border-radius: 50%;
  cursor: pointer;
  transition: var(--transition-colors)
}
@media (any-hover:hover) {
  .splide__arrow:hover {
    color: #000;
    background-color: #afafaf
  }
}
.splide__arrow:active {
  color: #000;
  background-color: #afafaf
}
.splide__arrow:disabled {
  color: #000;
  background-color: #efefef;
  border-color: #efefef;
  cursor: initial
}
.splide__slide {
  display: flex;
  width: calc((100% - var(--slider-gap) * (var(--slider-per-page) - 1))/ var(--slider-per-page))
}
.splide__slide:not(:last-child) {
  margin-right: var(--slider-gap)
}
/*! ==========================================================================
 *  .form
 *  ========================================================================== */
.form__hidden-input {
  display: none
}
.form__input {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: clamp(.501rem,.25vw + .451rem,.751rem);
  align-items: flex-start;
  width: 100%
}
.form__input .icon {
  position: absolute;
  top: 50%;
  left: .75rem;
  color: #357de4;
  font-size: clamp(1.626rem,.375vw + 1.551rem,2.001rem);
  transform: translateY(-50%)
}
.form__input-label {
  color: #141414;
  font-weight: 700;
  font-size: clamp(.751rem,.125vw + .726rem,.876rem);
  line-height: 1.5
}
.form__input-control {
  width: 100%;
  padding: clamp(.689rem,.438vw + .601rem,1.126rem) 1rem;
  font-size: clamp(.751rem,.25vw + .701rem,1.001rem);
  line-height: 1.5;
  background-color: transparent;
  border: 1px solid #d2dae1;
  border-radius: .25rem
}
.form__input-control:focus {
  border-color: #357de4;
  outline: 0!important
}
.form__input-control:focus::placeholder {
  opacity: 0
}
.form__input-control--icon {
  padding-left: clamp(2.876rem,.375vw + 2.801rem,3.251rem);
  font-size: clamp(.876rem,.125vw + .851rem,1.001rem)
}
/*! ==========================================================================
 *  .logo
 *  ========================================================================== */
.logo {
  color: #203764;
  font-weight: 800;
  font-size: clamp(1.626rem,.375vw + 1.551rem,2.001rem);
  text-decoration: none
}
@media (any-hover:hover) {
  .logo:hover {
    color: #203764
  }
}
.logo:active {
  color: #203764
}
.logo span {
  color: #8ea9db
}
.logo img {
  display: inline-block;
  width: 100vw;
  max-width: clamp(7.751rem,5.5vw + 6.651rem,13.251rem);
  margin: 0;
  vertical-align: middle
}
/*! ==========================================================================
 *  .socials
 *  ========================================================================== */
.socials__list {
  display: flex;
  gap: calc(.5rem - clamp(.001rem,.125vw + -.025rem,.126rem))
}
.socials__list-link {
  display: flex;
  align-items: center;
  justify-content: center;
  color: #357de4;
  font-size: clamp(1.626rem,.188vw + 1.589rem,1.814rem);
  border-radius: 50%
}
@media (any-hover:hover) {
  .socials__list-link:hover {
    color: #173483
  }
}
.socials__list-link:active {
  color: #173483
}
/*! ==========================================================================
 *  .about-company
 *  ========================================================================== */
.about-company__container {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: var(--gap-column)
}
@media (max-width:61.98rem) {
  .about-company__container {
    grid-template-columns: 1fr
  }
}
.about-company__title {
  margin-top: 0;
  margin-bottom: clamp(1.001rem,.5vw + .901rem,1.501rem)
  display: flex;
    align-items: center;

}
.about-company__title .logo img {
  vertical-align: -20%
}
.about-company__content {
  line-height: 1.3
}
.about-company__image {
  position: relative;
  display: flex;
  align-items: center;
  align-self: center;
  justify-content: center
}
.about-company__image img {
  margin: 0
}
.about-company__image-point {
  position: absolute;
  transform: translate(-50%,-100%)
}
.about-company__image-point .icon {
  width: clamp(.626rem,.75vw + .476rem,1.376rem);
  animation: bounce 1.6s ease-in-out infinite
}
.about-company__image-point:nth-child(4n+1) .icon {
  animation-delay: 0s
}
.about-company__image-point:nth-child(4n+2) .icon {
  animation-delay: .25s
}
.about-company__image-point:nth-child(4n+3) .icon {
  animation-delay: .5s
}
.about-company__image-point:nth-child(4n+4) .icon {
  animation-delay: .75s
}
.tippy-box {
  color: #fff;
  background-color: #448aff;
  border-radius: 1.875rem
}
.tippy-content {
  padding: .3125rem .625rem;
  font-size: clamp(.814rem,.063vw + .801rem,.876rem)
}
.tippy-arrow {
  color: #448aff
}
@keyframes bounce {
  0% {
    transform: translateY(0) scale(1)
  }
  20% {
    transform: translateY(-10px) scale(1.05)
  }
  40% {
    transform: translateY(0) scale(.98)
  }
  60% {
    transform: translateY(-5px) scale(1.02)
  }
  100% {
    transform: translateY(0) scale(1)
  }
}
/*! ==========================================================================
 *  .features
 *  ========================================================================== */
.features__list {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: var(--gap-column);
  min-height: 100%
}
@media (max-width:74.98rem) {
  .features__list {
    grid-template-columns: repeat(2,1fr)
  }
}
@media (max-width:61.98rem) {
  .features__list {
    grid-template-columns: repeat(3,1fr)
  }
}
@media (max-width:47.98rem) {
  .features__list {
    grid-template-columns: repeat(2,1fr)
  }
}
.features__list-item {
  display: flex
}
.features__item {
  width: 100%;
  padding: clamp(1.001rem,.25vw + .951rem,1.251rem) clamp(.501rem,.75vw + .351rem,1.251rem);
  color: #fff;
  background-color: #448aff;
  border-radius: 1.25rem
}
.features__item .icon {
  margin-bottom: clamp(.876rem,1.188vw + .639rem,2.064rem);
  font-size: clamp(2.689rem,1.313vw + 2.426rem,4.001rem)
}
.features__item-title {
  margin-top: 0;
  margin-bottom: clamp(.751rem,.438vw + .664rem,1.189rem);
  font-weight: 600;
  font-size: clamp(.876rem,.25vw + .826rem,1.126rem)
}
.features__item-text {
  margin: 0;
  font-weight: 300;
  font-size: clamp(.751rem,.375vw + .676rem,1.126rem)
}
/*! ==========================================================================
 *  .about-product
 *  ========================================================================== */
.about-product__container {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: var(--gap-column)
}
@media (max-width:61.98rem) {
  .about-product__container {
    grid-template-columns: 1fr
  }
}
.about-product__info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 1.25rem clamp(.626rem,6.25vw + -.625rem,6.876rem) clamp(1.439rem,1.063vw + 1.226rem,2.501rem) clamp(.626rem,.625vw + .501rem,1.251rem);
  color: #000;
  background: #fff;
  border-radius: 1.25rem
}
.about-product__label {
  margin-top: 0;
  margin-bottom: clamp(1.189rem,.438vw + 1.101rem,1.626rem);
  padding: .3125rem .625rem;
  color: #fff;
  font-weight: 400;
  font-size: clamp(.751rem,.125vw + .726rem,.876rem);
  background: #448aff;
  border-radius: 6.25rem
}
.about-product__title {
  margin-top: 0;
  margin-bottom: clamp(1.001rem,.5vw + .901rem,1.501rem)
}
.about-product__text {
  margin-top: 0;
  margin-bottom: auto;
  line-height: 1.3
}
.about-product__button {
  margin-top: clamp(1.064rem,1.688vw + .726rem,2.751rem)
}
@media (max-width:35.98rem) {
  .about-product__button {
    width: 100%
  }
}
/*! ==========================================================================
 *  .solutions
 *  ========================================================================== */
.solutions__wrapper {
  position: relative;
  z-index: 1;
  padding: clamp(1.251rem,1.812vw + .889rem,3.064rem) clamp(1.251rem,11.313vw + -1.013rem,12.564rem) clamp(1.251rem,5.438vw + .164rem,6.689rem);
  overflow: hidden;
  color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  border-radius: 1.25rem
}
@media (max-width:61.98rem) {
  .solutions__wrapper {
    background-image: unset!important
  }
}
@media (max-width:35.98rem) {
  .solutions__wrapper {
    width: 100vw;
    margin-left: calc(-1 * var(--container-padding-x))
  }
}
@media (min-width:62rem) {
  .solutions__wrapper.loaded::before {
    display: none
  }
}
.solutions__wrapper::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
  display: block;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg,#092e5a 0,#0f4a91 75.57%,#1362c0 100%);
  content: ""
}
.solutions__top {
  display: flex;
  gap: var(--gap-column);
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: clamp(1.126rem,2.375vw + .651rem,3.501rem)
}
@media (max-width:61.98rem) {
  .solutions__top {
    flex-direction: column
  }
}
.solutions__title {
  margin-top: 0;
  margin-bottom: 0
}
.solutions__labels {
  display: flex;
  flex-wrap: wrap;
  gap: .625rem;
  justify-content: flex-end;
  max-width: clamp(21.876rem,9.375vw + 20.001rem,31.251rem);
  margin-right: calc(0rem - clamp(.001rem,10.375vw + -2.075rem,10.376rem))
}
@media (max-width:61.98rem) {
  .solutions__labels {
    order: -1;
    margin-right: 0;
    margin-left: auto
  }
}
.solutions__labels-item {
  padding: .3125rem .625rem;
  color: #fff;
  font-size: clamp(.626rem,.25vw + .576rem,.876rem);
  line-height: 1.3;
  background: #97aac6;
  border-radius: 6.25rem
}
@media (max-width:47.98rem) {
  .solutions__labels-item:nth-child(3) {
    display: none
  }
  .solutions__labels-item:nth-child(2) {
    margin-right: auto
  }
}
.solutions__list {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: var(--gap-column)
}
@media (max-width:74.98rem) {
  .solutions__list {
    grid-template-columns: repeat(2,1fr)
  }
}
@media (max-width:47.98rem) {
  .solutions__list {
    grid-template-columns: 1fr
  }
}
.solutions__list-item {
  display: flex
}
.solutions__card {
  display: flex;
  flex-direction: column;
  width: 100%;
  padding: 1.25rem clamp(1.376rem,.188vw + 1.339rem,1.564rem) clamp(1.689rem,.75vw + 1.539rem,2.439rem);
  color: #000;
  background: #fff;
  border-radius: 1.25rem
}
.solutions__card--accent {
  position: relative;
  z-index: 1;
  color: #fff;
  background: #448aff
}
.solutions__card--accent::after {
  position: absolute;
  right: 0;
  bottom: 0;
  z-index: -1;
  display: block;
  width: clamp(6.501rem,8.125vw + 4.876rem,14.626rem);
  height: clamp(4.814rem,6.063vw + 3.601rem,10.876rem);
  background: url(../images/solutions/decor.webp) center/contain no-repeat;
  content: ""
}
@media (max-width:47.98rem) {
  .solutions__card--accent::after {
    display: none
  }
}
.solutions__card-top {
  display: flex;
  gap: 1.625rem;
  align-items: center;
  margin-bottom: .6875rem
}
.solutions__card-top .icon {
  align-self: flex-start;
  margin-top: -.4375rem;
  margin-left: calc(-.13rem - clamp(.001rem,.188vw + -.038rem,.189rem));
  font-size: clamp(3.439rem,1.313vw + 3.176rem,4.751rem)
}
.solutions__card-title {
  max-width: 16.875rem;
  margin-top: 0;
  margin-right: calc(-.63rem - clamp(.001rem,.625vw + -.125rem,.626rem));
  margin-bottom: 0;
  font-weight: 600;
  font-size: clamp(1.126rem,.375vw + 1.051rem,1.501rem)
}
.solutions__card-text {
  flex-grow: 1;
  margin-top: 0;
  margin-bottom: 1.1875rem
}
.solutions__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem
}
.solutions__actions-button {
  flex-grow: 1;
  width: unset
}
@media (max-width:35.98rem) {
  .solutions__actions-button {
    width: 100%
  }
}
@media (max-width:61.98rem) {
  .solutions__actions-button--info {
    display: none
  }
}
/*! ==========================================================================
 *  .services
 *  ========================================================================== */
.services__title {
  margin-top: 0;
  margin-bottom: clamp(.876rem,.375vw + .801rem,1.251rem)
}
@media (max-width:61.98rem) {
  .services__slider {
    --slider-per-page: 2
  }
}
@media (max-width:47.98rem) {
  .services__slider {
    --slider-per-page: 1
  }
}
.services__slider .splide__arrows {
  justify-content: flex-end;
  margin-bottom: -.625rem
}
@media (min-width:62rem) {
  .services__slider .splide__arrows {
    display: none
  }
}
@media (min-width:62rem) {
  .services__list {
    display: grid!important;
    grid-template-columns: repeat(3,1fr);
    gap: .25rem var(--gap-column)
  }
}
.services__list-item {
  display: flex
}
.services__card {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 100%;
  margin-top: clamp(1.501rem,.75vw + 1.351rem,2.251rem);
  padding: clamp(1.564rem,.625vw + 1.439rem,2.189rem) clamp(.501rem,2.375vw + .026rem,2.876rem) clamp(1.126rem,.375vw + 1.051rem,1.501rem);
  background: #fff;
  border-radius: 1rem
}
.services__card .icon {
  position: absolute;
  top: .75rem;
  right: clamp(1.126rem,.375vw + 1.051rem,1.501rem);
  font-size: clamp(2.814rem,.875vw + 2.639rem,3.689rem)
}
.services__card-number {
  position: absolute;
  top: calc(-1.5rem - clamp(.001rem,.75vw + -.15rem,.751rem));
  left: clamp(.501rem,2.375vw + .026rem,2.876rem);
  color: #2770f1;
  font-weight: 800;
  font-size: clamp(2.251rem,.75vw + 2.101rem,3.001rem);
  line-height: 1.5
}
.services__card-title {
  margin-top: 0;
  margin-right: 2.5rem;
  margin-bottom: clamp(.501rem,.25vw + .451rem,.751rem);
  color: #141414;
  font-weight: 700;
  font-size: 1rem;
  line-height: 1.5
}
@media (max-width:61.98rem) {
  .services__card-title {
    min-height: 2.5rem
  }
}
.services__card-text {
  margin-top: 0;
  margin-bottom: clamp(.626rem,.375vw + .551rem,1.001rem);
  color: #141414;
  font-weight: 400;
  font-size: clamp(.814rem,.063vw + .801rem,.876rem);
  line-height: 1.5
}
.services__card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  margin-top: auto
}
.services__card-button {
  width: unset;
  padding-right: 1.625rem;
  padding-left: 1.625rem
}
@media (max-width:61.98rem) {
  .services__card-button {
    width: 100%
  }
}
@media (max-width:61.98rem) {
  .services__card-button--info {
    display: none
  }
}
/*! ==========================================================================
 *  .turnkey
 *  ========================================================================== */
.turnkey__title {
  margin-top: 0;
  margin-bottom: clamp(.876rem,1.625vw + .551rem,2.501rem)
}
.turnkey__slider .splide__arrows {
  justify-content: flex-end;
  margin-bottom: clamp(.876rem,.375vw + .801rem,1.251rem)
}
@media (min-width:62rem) {
  .turnkey__slider .splide__arrows {
    display: none
  }
}
@media (max-width:61.98rem) {
  .turnkey__list {
    --slider-per-page: 2
  }
}
@media (min-width:62rem) {
  .turnkey__list {
    display: grid!important;
    grid-template-columns: repeat(2,1fr);
    gap: var(--gap-column)
  }
}
.turnkey__list-item {
  display: flex
}
@media (max-width:47.98rem) {
  .turnkey__list-item {
    width: 100%
  }
}
.turnkey__card {
  position: relative;
  display: flex;
  width: 100%;
  overflow: hidden;
  background: linear-gradient(134deg,#fff 25.98%,#0098ff 91.95%);
  border-radius: .875rem
}
@media (max-width:61.98rem) {
  .turnkey__card {
    flex-direction: column;
    background: linear-gradient(180deg,#fff 33.68%,#30a1f0 100%)
  }
}
.turnkey__card-info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  max-width: 16.5625rem;
  padding: clamp(1.251rem,.438vw + 1.164rem,1.689rem) calc(.5rem - clamp(.001rem,.5vw + -.1rem,.501rem)) clamp(1.064rem,1.938vw + .676rem,3.001rem) clamp(.501rem,1.375vw + .226rem,1.876rem)
}
@media (max-width:61.98rem) {
  .turnkey__card-info {
    flex-grow: 1;
    max-width: unset;
    padding-right: .5rem
  }
}
.turnkey__card-title {
  margin-top: 0;
  margin-right: calc(0rem - clamp(.001rem,4.375vw + -.875rem,4.376rem));
  margin-bottom: clamp(.751rem,1.063vw + .539rem,1.814rem);
  color: #092e5a;
  font-weight: 600;
  font-size: clamp(1.001rem,.5vw + .901rem,1.501rem);
  line-height: 1.37
}
@media (max-width:61.98rem) {
  .turnkey__card-title {
    margin-right: 0
  }
}
.turnkey__card-list {
  display: flex;
  flex-direction: column;
  gap: clamp(.751rem,.375vw + .676rem,1.126rem);
  max-width: 14.5625rem;
  margin-top: auto;
  margin-bottom: clamp(1.001rem,1.063vw + .789rem,2.064rem);
  line-height: 1.37
}
@media (max-width:61.98rem) {
  .turnkey__card-list {
    max-width: unset
  }
}
.turnkey__card-button {
  max-width: 13.4375rem
}
@media (max-width:35.98rem) {
  .turnkey__card-button {
    width: 100%;
    max-width: 100%
  }
}
.turnkey__card-image {
  position: relative;
  top: 0;
  right: 0;
  display: flex;
  flex-grow: 1;
  align-items: center;
  max-width: clamp(8.751rem,21.875vw + 4.376rem,30.626rem);
  height: 100%;
  margin-left: auto
}
@media (max-width:61.98rem) {
  .turnkey__card-image {
    flex-grow: 0;
    align-items: flex-end;
    width: 100%;
    max-width: 19rem;
    height: auto;
    margin-top: auto
  }
}
.turnkey__card-image img {
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: cover;
  object-position: center left
}
@media (max-width:61.98rem) {
  .turnkey__card-image img {
    height: auto
  }
}
/*! ==========================================================================
 *  .marquee
 *  ========================================================================== */
.marquee {
  overflow: hidden
}
@media (max-width:61.98rem) {
  .marquee {
    display: none
  }
}
.marquee__track {
  display: flex;
  gap: .625rem
}
.marquee__item {
  display: flex;
  flex-shrink: 0;
  gap: clamp(1.251rem,.313vw + 1.189rem,1.564rem);
  align-items: center;
  padding: clamp(.314rem,.313vw + .251rem,.626rem) clamp(.626rem,.313vw + .564rem,.939rem);
  color: #fff;
  font-weight: 600;
  font-size: clamp(1.126rem,.438vw + 1.039rem,1.564rem);
  background: #b1c4e6;
  border-radius: 1.25rem
}
.marquee__item .icon {
  font-size: clamp(1.876rem,.563vw + 1.764rem,2.439rem)
}
/*! ==========================================================================
 *  .feedback
 *  ========================================================================== */
.feedback__wrapper {
  padding: clamp(1.251rem,1.75vw + .901rem,3.001rem) clamp(.876rem,2.125vw + .451rem,3.001rem);
  background: #fff;
  border-radius: .875rem;
  box-shadow: 0 6px 24px 0 rgba(20,51,90,.1)
}
.feedback__title {
  margin-top: 0;
  margin-bottom: clamp(.501rem,.5vw + .401rem,1.001rem);
  color: #141414;
  font-weight: 700;
  font-size: clamp(1.251rem,.75vw + 1.101rem,2.001rem);
  line-height: 1.3
}
.feedback__subtitle {
  margin-top: 0;
  margin-bottom: clamp(.814rem,1.188vw + .576rem,2.001rem);
  color: #707d89;
  font-weight: 400;
  font-size: clamp(.751rem,.25vw + .701rem,1.001rem);
  line-height: 1.5
}
.feedback__form-inputs {
  display: grid;
  grid-template-columns: repeat(3,1fr);
  gap: clamp(.626rem,.375vw + .551rem,1.001rem)
}
@media (max-width:47.98rem) {
  .feedback__form-inputs {
    grid-template-columns: 1fr
  }
}
.feedback__form-bottom {
  display: flex;
  gap: clamp(.626rem,1.375vw + .351rem,2.001rem);
  align-items: center;
  margin-top: clamp(.626rem,1.375vw + .351rem,2.001rem)
}
@media (max-width:35.98rem) {
  .feedback__form-bottom {
    flex-direction: column
  }
}
@media (max-width:35.98rem) {
  .feedback__form-button {
    width: 100%
  }
}
.feedback__form-agree {
  margin: 0;
  color: #707d89;
  font-weight: 400;
  font-size: clamp(.751rem,.125vw + .726rem,.876rem);
  line-height: 1.5
}
/*! ==========================================================================
 *  .footer
 *  ========================================================================== */
.footer {
  overflow: hidden;
  font-size: clamp(.751rem,.125vw + .726rem,.876rem);
  background: #fff
}
.footer__top {
  color: #373737
}
.footer__top-container {
  display: flex;
  gap: var(--gap-column);
  justify-content: space-between
}
@media (max-width:47.98rem) {
  .footer__top-container {
    flex-direction: column;
    gap: unset;
    align-items: center;
    padding-top: clamp(1.126rem,1.5vw + .826rem,2.626rem);
    padding-bottom: clamp(1.126rem,1.5vw + .826rem,2.626rem)
  }
}
.footer__info {
  max-width: clamp(12.501rem,5.375vw + 11.426rem,17.876rem);
  padding-top: clamp(1.126rem,1.5vw + .826rem,2.626rem);
  padding-bottom: clamp(1.126rem,1.5vw + .826rem,2.626rem)
}
@media (max-width:61.98rem) {
  .footer__info {
    max-width: 17.875rem
  }
}
@media (max-width:47.98rem) {
  .footer__info {
    display: contents
  }
}
.footer__logo img {
  max-width: clamp(9.501rem,3.75vw + 8.751rem,13.251rem)
}
.footer__text {
  margin-top: calc(.81rem - clamp(.001rem,.125vw + -.025rem,.126rem));
  font-size: .875rem
}
@media (max-width:47.98rem) {
  .footer__text {
    text-align: center
  }
}
.footer__socials {
  margin-top: clamp(.751rem,1vw + .551rem,1.751rem)
}
@media (max-width:47.98rem) {
  .footer__socials {
    order: 1
  }
}
.footer__contacts {
  padding-top: clamp(1.126rem,1.5vw + .826rem,2.626rem);
  padding-bottom: clamp(1.126rem,1.5vw + .826rem,2.626rem)
}
@media (max-width:61.98rem) {
  .footer__contacts {
    width: 100%
  }
}
@media (max-width:47.98rem) {
  .footer__contacts {
    padding-top: clamp(1.501rem,1.125vw + 1.276rem,2.626rem);
    padding-bottom: clamp(.001rem,2.625vw + -.525rem,2.626rem)
  }
}
.footer__contacts-title {
  margin-top: 0;
  margin-bottom: calc(.81rem - clamp(.001rem,.188vw + -.038rem,.189rem));
  font-weight: 700;
  font-size: clamp(1.001rem,.125vw + .976rem,1.126rem)
}
.footer__contacts-list {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: clamp(.751rem,.75vw + .601rem,1.501rem) clamp(1.001rem,2.875vw + .426rem,3.876rem)
}
.footer__contact {
  display: flex;
  flex-direction: column;
  gap: .4375rem;
  align-items: flex-start;
  max-width: clamp(9.376rem,1.938vw + 8.989rem,11.314rem)
}
@media (max-width:61.98rem) {
  .footer__contact {
    max-width: 11.3125rem
  }
}
.footer__contact .icon {
  color: #357de4;
  font-size: 2.25rem
}
@media (max-width:47.98rem) {
  .footer__contact .icon {
    color: inherit
  }
}
.footer__contact-key {
  margin: 0;
  font-weight: 600;
  font-size: .875rem
}
.footer__contact-value {
  margin: 0;
  font-weight: 500
}
.footer__contact-value a {
  text-decoration: none
}
@media (any-hover:hover) {
  .footer__contact-value a:hover {
    text-decoration: underline
  }
}
.footer__contact-value a:active {
  text-decoration: underline
}
.footer__map {
  flex-grow: 1;
  max-width: calc((100vw - 100%)/ 2 + 41.6875rem);
  margin-right: calc((100vw - 100%)/ -2)
}
@media (max-width:61.98rem) {
  .footer__map {
    display: none
  }
}
.footer__map > div {
  width: 100%;
  height: 100%
}
.footer__map iframe {
  width: 100%;
  height: 100%;
  margin: 0;
  border: none
}
.footer__bottom {
  padding-top: clamp(.626rem,.188vw + .589rem,.814rem);
  padding-bottom: clamp(.626rem,.188vw + .589rem,.814rem);
  color: #828282;
  font-weight: 500;
  border-top: 1px solid #828282
}
.footer__bottom-container {
  display: flex;
  gap: .3125rem;
  align-items: center;
  justify-content: space-between
}
@media (max-width:35.98rem) {
  .footer__bottom-container {
    flex-direction: column;
    text-align: center
  }
}
.footer__copyright {
  margin: 0;
  font-size: inherit
}
.footer__developer {
  margin: 0;
  text-align: right
}
@media (max-width:35.98rem) {
  .footer__developer {
    text-align: center
  }
}
/*! ==========================================================================
 *  .nav
 *  ========================================================================== */
.nav {
  display: flex;
  gap: clamp(1.251rem,1.875vw + .876rem,3.126rem);
  align-items: center
}
@media (max-width:61.98rem) {
  .nav {
    position: absolute;
    top: calc(100% + .5rem);
    left: 0;
    flex-direction: column;
    width: 100%;
    padding: 1.25rem clamp(.501rem,.75vw + .351rem,1.251rem);
    background-color: #fff;
    border-radius: 1.25rem;
    box-shadow: 0 4px 4px 0 rgba(0,0,0,.09);
    visibility: hidden;
    opacity: 0;
    transition: var(--transition-opacity)
  }
  .nav.is-active {
    visibility: visible;
    opacity: 1
  }
}
.nav__list {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(.626rem,.313vw + .564rem,.939rem);
  justify-content: center
}
@media (max-width:61.98rem) {
  .nav__list {
    width: 100%
  }
}
@media (max-width:47.98rem) {
  .nav__list {
    flex-direction: column
  }
}
.nav__list-link {
  display: block;
  padding: .3125rem clamp(.626rem,.313vw + .564rem,.939rem);
  color: #000;
  font-weight: 500;
  font-size: clamp(.876rem,.125vw + .851rem,1.001rem);
  text-decoration: none;
  background-color: #f0f3f7;
  border-radius: 1.25rem;
  transition: var(--transition-colors)
}
@media (any-hover:hover) {
  .nav__list-link:hover {
    color: #fff;
    background-color: #448aff
  }
}
.nav__list-link:active {
  color: #fff;
  background-color: #448aff
}
.nav__login {
  display: block;
  margin-left: auto;
  padding: .3125rem clamp(.626rem,.313vw + .564rem,.939rem);
  color: #fff;
  font-weight: 500;
  font-size: clamp(.876rem,.125vw + .851rem,1.001rem);
  text-decoration: none;
  background-color: #448aff;
  border-radius: 1.25rem;
  transition: var(--transition-colors)
}
@media (max-width:61.98rem) {
  .nav__login {
    margin-left: 0
  }
}
@media (max-width:47.98rem) {
  .nav__login {
    width: 100%
  }
}
@media (any-hover:hover) {
  .nav__login:hover {
    color: #000;
    background-color: #f0f3f7
  }
}
.nav__login:active {
  color: #000;
  background-color: #f0f3f7
}
/*! ==========================================================================
 *  .dropdown
 *  ========================================================================== */
.dropdown:not(.is-active) .dropdown__list {
  display: none
}
/*! ==========================================================================
 *  .lang-select
 *  ========================================================================== */
.lang-select {
  position: relative
}
.lang-select.is-active .lang-select__trigger-arrow {
  transform: rotate(180deg)
}
.lang-select__trigger {
  display: flex;
  gap: .375rem;
  align-items: center;
  margin: 0;
  padding: 0;
  color: #373737;
  font-weight: 400;
  font-size: clamp(.876rem,.25vw + .826rem,1.126rem);
  background-color: transparent;
  border: none;
  cursor: pointer
}
.lang-select__trigger-icon {
  color: #448aff;
  font-size: clamp(1.251rem,.375vw + 1.176rem,1.626rem)
}
.lang-select__trigger-arrow {
  font-size: clamp(1.126rem,.25vw + 1.076rem,1.376rem)
}
.lang-select__dropdown {
  position: absolute;
  top: calc(100% + .125rem);
  right: 0;
  z-index: 6;
  display: grid;
  gap: .375rem;
  width: 100%;
  max-width: 3.75rem;
  padding: .375rem;
  background-color: #fff;
  border-radius: .375rem;
  box-shadow: rgba(149,157,165,.2) 0 8px 24px
}
.lang-select__dropdown-link {
  color: #373737;
  font-weight: 400;
  font-size: clamp(.876rem,.25vw + .826rem,1.126rem);
  text-decoration: none
}
@media (any-hover:hover) {
  .lang-select__dropdown-link:hover {
    color: #448aff
  }
}
.lang-select__dropdown-link:active {
  color: #448aff
}
/*! ==========================================================================
 *  .header
 *  ========================================================================== */
.header {
  position: relative;
  z-index: 2;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem
}
.header__wrapper {
  position: relative;
  display: flex;
  gap: 1.1875rem;
  align-items: center;
  justify-content: space-between;
  min-height: 3.5rem;
  padding: .5rem clamp(.501rem,1.375vw + .226rem,1.876rem);
  background: #fff;
  border-radius: 1.25rem
}
@media (min-width:62rem) {
  .header__left {
    margin-right: .6875rem
  }
}
.header__logo {
  font-size: clamp(1.251rem,.75vw + 1.101rem,2.001rem)
}
.header__nav {
  flex-grow: 1
}
.header__right {
  display: flex;
  gap: .875rem;
  align-items: center;
  justify-content: flex-end
}
.header__phone {
  flex-shrink: 0;
  margin-top: calc(.06rem - clamp(.001rem,.063vw + -.013rem,.064rem));
  font-weight: 700;
  font-size: clamp(.751rem,.5vw + .651rem,1.251rem);
  text-decoration: none;
  transition: var(--transition-colors)
}
@media (any-hover:hover) {
  .header__phone:hover {
    color: #357de4
  }
}
.header__phone:active {
  color: #357de4
}
.header__burger {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  order: 2;
  width: 1.1875rem;
  height: 1.1875rem;
  padding: .25rem 0;
  color: inherit;
  background-color: transparent;
  border: none;
  cursor: pointer
}
@media (min-width:62rem) {
  .header__burger {
    display: none
  }
}
.header__burger.is-active::before {
  top: 50%;
  transform: translateY(-50%) rotate(45deg)
}
.header__burger.is-active span {
  transform: scaleX(0);
  opacity: 0
}
.header__burger.is-active::after {
  top: 50%;
  bottom: auto;
  transform: translateY(-50%) rotate(-45deg)
}
.header__burger span,
.header__burger::after,
.header__burger::before {
  display: block;
  width: 100%;
  height: .09375rem;
  background: currentcolor;
  border-radius: 10px;
  transition: opacity .3s ease,transform .3s ease,top .3s ease,bottom .3s ease
}
.header__burger::before {
  position: absolute;
  bottom: .25rem;
  left: 0;
  content: ""
}
.header__burger::after {
  position: absolute;
  top: .25rem;
  left: 0;
  content: ""
}
/*! ==========================================================================
 *  .hero
 *  ========================================================================== */
.hero {
  padding-top: 0
}
.hero__container {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: var(--gap-column)
}
@media (max-width:61.98rem) {
  .hero__container {
    grid-template-columns: 1fr
  }
}
.hero__wrapper {
  display: flex;
  flex-direction: column;
  gap: clamp(1.126rem,1.375vw + .851rem,2.501rem)
}
.hero__top {
  position: relative;
  z-index: 1;
  padding: clamp(1.189rem,.063vw + 1.176rem,1.251rem) clamp(.501rem,.75vw + .351rem,1.251rem) calc(1.5rem - clamp(.001rem,.25vw + -.05rem,.251rem));
  background: #fff;
  border-radius: 1.25rem;
  box-shadow: 0 4px 4px 0 rgba(0,0,0,.09)
}
.hero__top::after {
  position: absolute;
  top: clamp(.689rem,.125vw + .664rem,.814rem);
  right: clamp(.689rem,1.5vw + .389rem,2.189rem);
  z-index: -1;
  display: block;
  width: clamp(3.314rem,5.125vw + 2.289rem,8.439rem);
  height: clamp(3.126rem,4.875vw + 2.151rem,8.001rem);
  background: url(../images/hero/decor-01.svg) center/contain no-repeat;
  content: ""
}
.hero__top-labels {
  display: flex;
  flex-wrap: wrap;
  gap: .3125rem;
  margin-bottom: clamp(1.126rem,.188vw + 1.089rem,1.314rem)
}
.hero__top-label {
  margin: 0;
  padding: .3125rem .625rem;
  color: #fff;
  font-size: clamp(.814rem,.063vw + .801rem,.876rem);
  background: #448aff;
  border-radius: 1.875rem
}
.hero__top-title {
  margin-top: 0;
  margin-bottom: clamp(.751rem,.625vw + .626rem,1.376rem);
  color: #333;
  font-weight: 600;
  font-size: clamp(1.501rem,1.313vw + 1.239rem,2.814rem)
}
@media (min-width:62rem) {
  .hero__top-title {
    max-width: 23ch
  }
}
.hero__top-text {
  margin: 0;
  color: #6b6b6b;
  font-weight: 600;
  font-size: clamp(.751rem,.375vw + .676rem,1.126rem)
}
@media (min-width:62rem) {
  .hero__top-text {
    max-width: 50ch
  }
}
.hero__info {
  position: relative;
  z-index: 1;
  padding: clamp(1.126rem,.125vw + 1.101rem,1.251rem) clamp(.501rem,.75vw + .351rem,1.251rem) 1.25rem;
  color: #fff;
  background: #448aff;
  border-radius: 1.25rem;
  box-shadow: 0 4px 4px 0 rgba(0,0,0,.1)
}
.hero__info::after {
  position: absolute;
  right: clamp(.314rem,1.313vw + .051rem,1.626rem);
  bottom: 0;
  z-index: -1;
  display: block;
  width: clamp(6.501rem,8.938vw + 4.714rem,15.439rem);
  height: clamp(4.814rem,6.688vw + 3.476rem,11.501rem);
  background: url(../images/hero/decor-02.webp) center/contain no-repeat;
  content: ""
}
@media (max-width:61.98rem) {
  .hero__info::after {
    top: 1.5625rem;
    bottom: auto
  }
}
.hero__info-title {
  margin-top: 0;
  margin-bottom: clamp(.751rem,.75vw + .601rem,1.501rem);
  font-weight: 600;
  font-size: clamp(1.251rem,1.563vw + .939rem,2.814rem)
}
@media (max-width:61.98rem) {
  .hero__info-title {
    padding-right: 4.5rem
  }
}
.hero__info-text {
  margin-top: 0;
  margin-bottom: clamp(1.001rem,.625vw + .876rem,1.626rem);
  font-size: clamp(.751rem,.375vw + .676rem,1.126rem)
}
@media (max-width:61.98rem) {
  .hero__info-text {
    padding-right: clamp(.001rem,9.375vw + -1.875rem,9.376rem)
  }
}
@media (min-width:62rem) {
  .hero__info-text {
    max-width: 40ch
  }
}
.hero__info-button {
  display: inline-flex;
  gap: .625rem;
  align-items: center;
  justify-content: center;
  padding: .3125rem .625rem;
  color: #173483;
  font-weight: 500;
  font-size: clamp(.876rem,.5vw + .776rem,1.376rem);
  background-color: #fff;
  border: none;
  border-radius: 1.25rem;
  cursor: pointer;
  transition: var(--transition-colors)
}
@media (max-width:35.98rem) {
  .hero__info-button {
    width: 100%
  }
}
@media (any-hover:hover) {
  .hero__info-button:hover {
    color: #fff;
    background-color: #173483
  }
  .hero__info-button:hover .hero__info-button-icon-wrapper {
    color: #173483;
    background-color: #fff
  }
}
.hero__info-button:active {
  color: #fff;
  background-color: #173483
}
.hero__info-button:active .hero__info-button-icon-wrapper {
  color: #173483;
  background-color: #fff
}
.hero__info-button-icon-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.1875rem;
  height: 2.1875rem;
  margin-right: -.3125rem;
  color: #fff;
  font-size: 1.3125rem;
  background-color: #173483;
  border-radius: 50%;
  transition: var(--transition-colors)
}
.hero__image {
  position: relative;
  display: flex;
  height: 100%;
  overflow: hidden;
  background-color: #fff;
  border-radius: 1.25rem
}
.hero__image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  object-fit: cover;
  object-position: center right
}
@media (max-width:61.98rem) {
  .hero__image {
    display: none
  }
}
/*! ==========================================================================
 *  .modal
 *  ========================================================================== */
.modal {
  position: fixed;
  top: 0;
  left: 0;
  box-sizing: border-box;
  width: 100%;
  max-width: unset;
  height: 100vh;
  height: 100dvh;
  max-height: unset;
  margin: 0;
  padding: 0;
  background-color: rgba(53,125,228,.6);
  border: none;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px)
}
.modal:not([open]) {
  display: none
}
.modal + .backdrop,
.modal::backdrop {
  background: 0 0;
  pointer-events: none
}
.modal__wrapper {
  display: grid;
  width: 100%;
  height: 100%;
  padding: .9375rem;
  overflow: auto;
  pointer-events: none
}
.modal__content {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: clamp(.939rem,.563vw + .826rem,1.501rem);
  align-self: center;
  width: 100%;
  max-width: clamp(25.001rem,13.625vw + 22.276rem,38.626rem);
  margin-right: auto;
  margin-left: auto;
  padding: clamp(1.689rem,.313vw + 1.626rem,2.001rem) clamp(.876rem,1.125vw + .651rem,2.001rem);
  color: #3f578b;
  background-color: #fff;
  border-radius: .25rem;
  pointer-events: all
}
.modal__content--wide {
  max-width: clamp(37.501rem,45.375vw + 28.426rem,82.876rem);
  padding: 2.5rem clamp(.501rem,7.938vw + -1.088rem,8.439rem);
  border-radius: clamp(.251rem,1vw + .051rem,1.251rem)
}
.modal__content--secondary {
  gap: clamp(.626rem,.875vw + .451rem,1.501rem);
  padding: clamp(1.251rem,.75vw + 1.101rem,2.001rem) clamp(.876rem,1.125vw + .651rem,2.001rem)
}
@media (max-width:35.98rem) {
  .modal__content--secondary .modal__actions-button {
    width: unset
  }
}
.modal__close-button {
  position: absolute;
  top: clamp(.939rem,2vw + .539rem,2.939rem);
  right: clamp(.939rem,1.5vw + .639rem,2.439rem);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  font-size: 1.125rem;
  background: 0 0;
  border: none;
  cursor: pointer
}
@media (any-hover:hover) {
  .modal__close-button:hover {
    color: #357de4
  }
}
.modal__close-button:active {
  color: #357de4
}
.modal__title {
  margin: 0;
  color: #1b315f;
  font-weight: 800;
  font-size: clamp(1.251rem,.75vw + 1.101rem,2.001rem);
  line-height: 1.25;
  text-align: center
}
.modal__title--secondary {
  font-size: clamp(1.126rem,.875vw + .951rem,2.001rem)
}
.modal__subtitle {
  margin: 0;
  margin-bottom: calc(.5rem - clamp(.001rem,.5vw + -.1rem,.501rem));
  font-weight: 500;
  font-size: clamp(.876rem,.25vw + .826rem,1.126rem);
  line-height: 1.44;
  text-align: center
}
.modal__form {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  width: 100%
}
.modal__form-agree {
  margin: 0;
  font-weight: 400;
  font-size: clamp(.751rem,.25vw + .701rem,1.001rem);
  line-height: 1.5;
  text-align: center
}
.modal__form-agree a {
  color: #2770f1
}
.modal__actions {
  display: flex;
  flex-wrap: wrap;
  gap: clamp(.751rem,.25vw + .701rem,1.001rem);
  align-items: center;
  justify-content: center
}
@media (max-width:35.98rem) {
  .modal__actions {
    flex-direction: column
  }
}
.modal__actions-button {
  width: unset;
  padding: clamp(.751rem,.25vw + .701rem,1.001rem) 1rem;
  font-size: clamp(.876rem,.25vw + .826rem,1.126rem);
  line-height: 1.33;
  border-radius: .25rem
}
@media (max-width:35.98rem) {
  .modal__actions-button {
    width: 100%;
    max-width: 16.125rem
  }
}
/*! ==========================================================================
 *  .service-info
 *  ========================================================================== */
.service-info {
  color: #000;
  line-height: 1.1875
}
.service-info__top {
  display: flex;
  gap: clamp(.939rem,.375vw + .864rem,1.314rem);
  align-items: flex-end;
  margin-bottom: .75rem
}
.service-info__top .icon {
  color: #357de4;
  font-size: clamp(3.751rem,1vw + 3.551rem,4.751rem)
}
.service-info__title {
  margin-top: 0;
  margin-bottom: .3125rem;
  color: #000;
  font-weight: 600;
  font-size: clamp(1.501rem,.5vw + 1.401rem,2.001rem)
}
.service-info__wrapper {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: var(--gap-column);
  margin-top: clamp(1.501rem,.75vw + 1.351rem,2.251rem)
}
@media (max-width:47.98rem) {
  .service-info__wrapper {
    grid-template-columns: 1fr
  }
}
.service-info__wrapper-left {
  display: flex;
  flex-direction: column;
  gap: clamp(.751rem,.25vw + .701rem,1.001rem)
}
.service-info__features-title {
  margin-top: 0;
  margin-bottom: clamp(1.001rem,.5vw + .901rem,1.501rem);
  font-size: clamp(1.001rem,.125vw + .976rem,1.126rem)
}
.service-info__features-list {
  display: flex;
  flex-direction: column;
  gap: clamp(.751rem,.25vw + .701rem,1.001rem);
  counter-reset: features-list
}
.service-info__features-item {
  display: flex;
  flex-direction: column;
  gap: .375rem
}
.service-info__features-item--number .service-info__features-item-top::before {
  content: counter(features-list) ". ";
  counter-increment: features-list
}
.service-info__features-item-top {
  color: #2770f1;
  font-weight: 500
}
.service-info__features-item-top--no-accent {
  color: inherit
}
.service-info__features-item-top::before {
  content: " • "
}
.service-info__wrapper-right {
  display: flex;
  flex-direction: column;
  gap: clamp(.751rem,.25vw + .701rem,1.001rem)
}
.service-info__using-title {
  margin-top: 0;
  margin-bottom: clamp(1.001rem,.5vw + .901rem,1.501rem);
  font-size: clamp(1.001rem,.125vw + .976rem,1.126rem)
}
.service-info__using-list {
  display: flex;
  flex-direction: column;
  gap: clamp(.751rem,.25vw + .701rem,1.001rem);
  align-items: flex-start
}
.service-info__using-list li {
  position: relative;
  padding-left: 1.625rem
}
.service-info__using-list li::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 1.125rem;
  height: 1.125rem;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0nMTgnIGhlaWdodD0nMTgnIHZpZXdCb3g9JzAgMCAxOCAxOCcgZmlsbD0nbm9uZScgeG1sbnM9J2h0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnJz48cGF0aCBkPSdNNy44NzUxIDAuMDUyNzU3M0M0LjYwNTU3IDAuNDU3MDU0IDEuODI0NzEgMi42MjI2OCAwLjU5Nzc1NCA1LjcxNjQzQzAuMzQxMTEzIDYuMzU2MjcgMC4xMTI1OTggNy4yOTg0NiAwLjAzNTI1MzkgOC4wMjI2OEMtMC4wMTA0NDkyIDguNDYyMTMgLTAuMDEwNDQ5MiA5LjUzNzkxIDAuMDM1MjUzOSA5Ljk3NzM3QzAuMzg2ODE2IDEzLjI5NjEgMi41NzM1NCAxNi4xNTQzIDUuNzE2NSAxNy40MDI0QzYuMzU2MzUgMTcuNjU5IDcuMjk4NTQgMTcuODg3NSA4LjAyMjc1IDE3Ljk2NDlDOC40NjIyMSAxOC4wMTA2IDkuNTM3OTkgMTguMDEwNiA5Ljk3NzQ0IDE3Ljk2NDlDMTMuNTQ5MyAxNy41ODUyIDE2LjU4MzMgMTUuMDcxNSAxNy42Mjc0IDExLjYyMjdDMTcuODg3NiAxMC43Njg0IDE4LjAwMDEgOS45NzczNyAxOC4wMDAxIDkuMDAwMDJDMTguMDAwMSA4LjI2NTI2IDE3Ljk2NDkgNy44NjA5NiAxNy44Mzg0IDcuMjI0NjNDMTcuMjQ3OCA0LjIyOTMyIDE1LjE2MyAxLjc0MDI2IDEyLjI4MzcgMC41OTc2NzlDMTEuNjQzOCAwLjM0MTA0IDEwLjcwMTcgMC4xMTI1MjQgOS45Nzc0NCAwLjAzNTE3OTFDOS41MTY5IC0wLjAxNDAzODEgOC4zMjg2MSAtMC4wMDM0OTIzNiA3Ljg3NTEgMC4wNTI3NTczWk0xMC4zMjIgMS41NDMzOEMxMS44OTcgMS44NDIyMSAxMy4yMzI5IDIuNTQxODIgMTQuMzQ3NCAzLjY1NjI3QzE1LjQ1ODMgNC43NjcyMSAxNi4xNTc5IDYuMDk5NjMgMTYuNDYzOCA3LjY5NTczQzE2LjUzMDYgOC4wNTA4MSAxNi41NDExIDguMjE5NTUgMTYuNTQxMSA5LjAwMDAyQzE2LjU0MTEgOS43ODA0OSAxNi41MzA2IDkuOTQ5MjQgMTYuNDYzOCAxMC4zMDQzQzE2LjE1NzkgMTEuOTAwNCAxNS40NjE4IDEzLjIyOTMgMTQuMzQzOCAxNC4zNDczQzEzLjIzMjkgMTUuNDU4MiAxMS45MDA1IDE2LjE1NzggMTAuMzA0NCAxNi40NjM3QzkuOTQ5MzIgMTYuNTMwNSA5Ljc4MDU3IDE2LjU0MSA5LjAwMDEgMTYuNTQxQzguMjE5NjMgMTYuNTQxIDguMDUwODggMTYuNTMwNSA3LjY5NTggMTYuNDYzN0M2LjA5OTcxIDE2LjE1NzggNC43NzA4IDE1LjQ2MTcgMy42NTI4MyAxNC4zNDM4QzIuNTQxODkgMTMuMjMyOCAxLjg0MjI5IDExLjkwMDQgMS41MzY0MyAxMC4zMDQzQzEuNDY5NjMgOS45NDkyNCAxLjQ1OTA4IDkuNzgwNDkgMS40NTkwOCA5LjAwMDAyQzEuNDU5MDggOC4yMTk1NSAxLjQ2OTYzIDguMDUwODEgMS41MzY0MyA3LjY5NTczQzEuODQyMjkgNi4wOTk2MyAyLjUzODM4IDQuNzcwNzMgMy42NTYzNSAzLjY1Mjc2QzQuNzY3MjkgMi41NDE4MiA2LjE1OTQ3IDEuODE0MDkgNy42NzgyMiAxLjU0NjlDOC4yNTEyNyAxLjQ0ODQ2IDguMjQ0MjQgMS40NDg0NiA5LjEyMzE1IDEuNDU5MDFDOS43NzAwMiAxLjQ2NjA0IDEwLjAwOTEgMS40ODM2MiAxMC4zMjIgMS41NDMzOFonIGZpbGw9JyMyNzcwRjEnIC8+PHBhdGggZD0nTTEyLjMzOTcgNS45NDE0NEMxMi4yNzI5IDUuOTUxOTggMTIuMTc4IDUuOTgzNjMgMTIuMTI4OCA2LjAwODIzQzEyLjA3OTYgNi4wMzI4NCAxMS4wNzQxIDcuMDE3MjIgOS44OTYzNyA4LjE5NDk1TDcuNzUxODQgMTAuMzM2TDYuODU1MzYgOS40MzU5N0M2LjI4MjMxIDguODYyOTIgNS45MDk2NSA4LjUxMTM2IDUuODE4MjUgOC40NjkxN0M1LjY2NzA4IDguMzk4ODYgNS4zOTk4OSA4LjM4MTI4IDUuMjU5MjYgOC40Mzc1M0M1LjExODY0IDguNDkwMjcgNC44OTM2NCA4LjcxNTI3IDQuODUxNDUgOC44NDUzNEM0Ljc5MTY5IDkuMDIxMTMgNC44MDIyMyA5LjI5MTgzIDQuODcyNTUgOS40Mjg5NEM0Ljk1MzQgOS41OTA2NiA3LjI2MzE3IDExLjkwNzUgNy40MzE5MiAxMS45OTUzQzcuNjAwNjcgMTIuMDgzMiA3Ljg3ODQgMTIuMDg2OCA4LjA2ODI1IDEyLjAwOTRDOC4yNjUxMiAxMS45MjUgMTMuMDQ5OSA3LjE0Mzc4IDEzLjEzMDcgNi45NDY5MUMxMy4zNTkzIDYuMzk4NDcgMTIuOTEyOCA1LjgzNTk3IDEyLjMzOTcgNS45NDE0NFonIGZpbGw9JyMyNzcwRjEnIC8+PC9zdmc+);
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  content: ""
}
.service-info__ps {
  margin-top: clamp(1.501rem,.375vw + 1.426rem,1.876rem);
  margin-bottom: 0;
  color: #2770f1;
  font-weight: 500
}
.service-info__button-wrapper {
  display: flex;
  justify-content: center;
  margin-top: clamp(1.501rem,.625vw + 1.376rem,2.126rem)
}
@media (max-width:35.98rem) {
  .service-info__button {
    width: 100%
  }
}
/*! ==========================================================================
 *  .calculator
 *  ========================================================================== */
.calculator__title {
  margin-top: 0;
  margin-bottom: clamp(.626rem,1.063vw + .414rem,1.689rem)
}
.calculator__subtitle {
  margin-bottom: clamp(1.126rem,.563vw + 1.014rem,1.689rem);
  color: #828282;
  font-weight: 600;
  font-size: clamp(.876rem,.375vw + .801rem,1.251rem)
}
.calculator__wrapper {
  display: grid;
  grid-template-columns: repeat(12,1fr);
  gap: clamp(1.126rem,.375vw + 1.051rem,1.501rem)
}
.calculator__left {
  position: relative;
  z-index: 1;
  grid-column: span 8;
  padding: clamp(1.501rem,1.5vw + 1.201rem,3.001rem) clamp(.501rem,3.188vw + -.137rem,3.689rem) clamp(1.501rem,1.5vw + 1.201rem,3.001rem) clamp(.501rem,24.813vw + -4.463rem,25.314rem);
  overflow: hidden;
  background-color: #fff;
  border-radius: 1.875rem
}
@media (max-width:74.98rem) {
  .calculator__left {
    grid-column: span 7;
    padding-left: clamp(.501rem,3.188vw + -.137rem,3.689rem)
  }
}
@media (max-width:61.98rem) {
  .calculator__left {
    grid-column: span 12
  }
}
@media (max-width:35.98rem) {
  .calculator__left {
    margin-right: calc(-1 * var(--container-padding-x));
    margin-left: calc(-1 * var(--container-padding-x))
  }
}
.calculator__left-bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: clamp(.001rem,23.813vw + -4.763rem,23.814rem);
  height: 100%;
  background-repeat: no-repeat;
  background-position: center right;
  background-size: cover
}
@media (max-width:74.98rem) {
  .calculator__left-bg {
    display: none
  }
}
.calculator__left-title {
  margin-top: 0;
  margin-bottom: clamp(.751rem,.625vw + .626rem,1.376rem);
  color: #357de4;
  font-weight: 600;
  font-size: clamp(1.501rem,1vw + 1.301rem,2.501rem)
}
@media (max-width:61.98rem) {
  .calculator__left-title {
    text-align: center
  }
}
.calculator__form {
  display: grid;
  grid-template-columns: repeat(2,1fr);
  gap: clamp(.751rem,.75vw + .601rem,1.501rem) clamp(1.001rem,.5vw + .901rem,1.501rem)
}
.calculator__form-input {
  display: flex;
  flex-direction: column;
  gap: clamp(.501rem,.375vw + .426rem,.876rem)
}
.calculator__form-input--wide {
  grid-column: span 2
}
.calculator__form-input-label {
  color: #424242;
  font-weight: 500;
  font-size: clamp(.689rem,.438vw + .601rem,1.126rem);
  line-height: 1.22
}
.calculator__form-input-control {
  width: 100%;
  padding: clamp(.564rem,.375vw + .489rem,.939rem) 1.25rem;
  color: #141414;
  font-weight: 400;
  font-size: 1.25rem;
  line-height: 1.4;
  border: 1px solid #a7a7a7;
  border-radius: clamp(.876rem,.375vw + .801rem,1.251rem);
  -moz-appearance: textfield
}
.calculator__form-input-control:focus {
  border-color: #357de4;
  outline: 0!important
}
.calculator__form-input-control:focus::placeholder {
  opacity: 0
}
.calculator__form-input-control::-webkit-inner-spin-button,
.calculator__form-input-control::-webkit-outer-spin-button {
  margin: 0;
  -webkit-appearance: none
}
.calculator__right {
  grid-column: span 4;
  padding: clamp(1.501rem,2.125vw + 1.076rem,3.626rem) clamp(1.251rem,1.5vw + .951rem,2.751rem) 1.5rem;
  background-color: #fff;
  border-radius: 1.875rem
}
@media (max-width:74.98rem) {
  .calculator__right {
    grid-column: span 5
  }
}
@media (max-width:61.98rem) {
  .calculator__right {
    grid-column: span 12
  }
}
@media (max-width:35.98rem) {
  .calculator__right {
    margin-right: calc(-1 * var(--container-padding-x));
    margin-left: calc(-1 * var(--container-padding-x))
  }
}
.calculator__right-title {
  margin-top: 0;
  margin-bottom: clamp(.751rem,1.188vw + .514rem,1.939rem);
  color: #357de4;
  font-weight: 600;
  font-size: clamp(1.126rem,.625vw + 1.001rem,1.751rem);
  line-height: 1.25
}
@media (max-width:61.98rem) {
  .calculator__right-title {
    text-align: center
  }
}
.calculator__top {
  display: flex;
  gap: .625rem;
  align-items: center;
  justify-content: space-between;
  margin-bottom: clamp(.501rem,.5vw + .401rem,1.001rem);
  color: #424242;
  font-weight: 500;
  font-size: clamp(.876rem,.375vw + .801rem,1.251rem);
  line-height: 1.1
}
.calculator__rows {
  display: grid;
  gap: clamp(.251rem,.375vw + .176rem,.626rem)
}
.calculator__row {
  display: flex;
  gap: .75rem;
  align-items: center;
  margin-right: clamp(-.75rem,.25vw + -.8rem,-.5rem);
  margin-left: clamp(-.75rem,.25vw + -.8rem,-.5rem);
  padding: clamp(.345rem,.406vw + .264rem,.751rem) .75rem;
  color: #357de4;
  font-size: clamp(1.001rem,.375vw + .926rem,1.376rem);
  line-height: 1.45;
  border-radius: clamp(.751rem,.5vw + .651rem,1.251rem)
}
.calculator__row::before {
  display: block;
  flex-grow: 1;
  order: 1;
  height: 1px;
  vertical-align: middle;
  background: #d7e2ff;
  content: ""
}
.calculator__row--accent {
  color: #1b315f;
  background: #b3d6ff
}
.calculator__row--accent::before {
  background: #1b315f
}
.calculator__row-key {
  font-weight: 500
}
.calculator__row-value {
  order: 2;
  color: #1b315f;
  font-weight: 700;
  text-align: right
}