

/* Start:/local/templates/empty/assets/css/vendor.css?17036978121086*/
/*!
 * animate.css - https://animate.style/
 * Version - 4.1.1
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2020 Animate.css
 */:root{--animate-duration:1s;--animate-delay:1s;--animate-repeat:1}.animated{animation-duration:1s;animation-duration:var(--animate-duration);animation-fill-mode:both}.animated.infinite{animation-iteration-count:infinite}@media (prefers-reduced-motion:reduce),print{.animated{animation-duration:1ms!important;transition-duration:1ms!important;animation-iteration-count:1!important}.animated[class*=Out]{opacity:0}}@media (min-width:992px){@keyframes a{0%{opacity:0;transform:translate3d(0,40px,0)}to{opacity:1;transform:translateZ(0)}}.fadeInUp{opacity:0;animation:1.4s a forwards}@keyframes b{0%{opacity:0}to{opacity:1}}.fadeIn,.scaleIn{opacity:0;animation:1.4s b forwards}@keyframes c{0%{opacity:0;scale:.95}to{opacity:1;scale:1}}.scaleIn{animation:1s c forwards}@keyframes d{0%{box-shadow:0 8px 56px 12px transparent}to{box-shadow:0 8px 56px 12px rgba(58,88,101,.36)}}.boxShadow{animation:d 1s forwards}}
/* End */


/* Start:/local/templates/empty/assets/css/style.css?177072753046012*/
@charset "UTF-8";

.container,
body {
  position: relative
}

.container {
  margin: 0 auto;
  width: 100%;
  padding: 0 10px
}

body {
  margin: 0;
  overflow-x: clip;
  font-family: "Roboto", sans-serif;
}

body.no-scroll {
  overflow-y: hidden
}

* {
  box-sizing: border-box
}

*,
:focus {
  outline: 0
}

sup {
  font-size: .5em
}

.latest .news__item-img img,
svg {
  transition: all .4s
}

a,
button,
fieldset,
figure,
iframe,
input,
li,
textarea {
  border: 0;
  text-decoration: none;
  color: inherit;
  background: 0 0
}

a,
button,
fieldset,
figure,
iframe,
li {
  padding: 0;
  margin: 0;
  cursor: pointer;
  font-family: inherit
}

a:active,
button:active,
fieldset:active,
figure:active,
iframe:active,
input:active,
li:active,
textarea:active {
  outline: 0
}

button {
  font-size: inherit
}

ul li {
  list-style: none;
  cursor: default
}

strong {
  font-family: "Roboto", sans-serif;
  font-weight: 800
}

input,
textarea {
  outline: 0;
  -webkit-appearance: none;
  appearance: none;
  font-family: "Roboto", sans-serif;
}

input::placeholder,
textarea::placeholder {
  color: inherit;
  font: inherit;
  transition: all .4s
}

textarea {
  resize: none;
  max-height: 100%;
  padding-right: 9px;
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-color: #77a4de #f5f9ff;
  scrollbar-width: thin
}

textarea::-webkit-scrollbar {
  width: 4px
}

textarea::-webkit-scrollbar-track {
  background: #f5f9ff
}

textarea::-webkit-scrollbar-thumb {
  background: #77a4de
}

input::-webkit-inner-spin-button,
input::-webkit-outer-spin-button {
  -webkit-appearance: none
}

input[type=number] {
  -moz-appearance: textfield
}

.wrapper,
body,
html {
  display: flex;
  flex-direction: column;
  min-height: 100%
}

.wrapper,
body {
  flex: 1 1 auto
}

.wrapper {
  overflow-x: clip
}

.wrapper>* {
  width: 100%
}

b {
  font-weight: 400
}

h1,
h2,
h3,
h4,
h5,
h6,
ol,
p,
ul {
  margin: 0;
  padding: 0;
  font-weight: 400;
  font-size: inherit
}

img,
small {
  max-width: 100%
}

img {
  border: 0
}

[class*=-img] picture,
[class*=__img] picture {
  width: 100%;
  height: 100%
}

small {
  display: block
}

input[type=button],
input[type=submit] {
  cursor: pointer
}

picture {
  display: flex;
  justify-content: center
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible {
  outline: 1.5px solid #2f6ec0
}

.input-wrapper,
.input-wrapper p {
  display: grid
}

.logo {
  display: flex
}

.main {
  flex: 1 1 auto
}

.button,
.menu li,
.submit,
.tel,
a {
  transition: color .3s, background .3s, opacity .3s
}

.menu li:not(.menu-item-has-children) a {
  transition: none
}

.link-button {
  display: inline-flex;
  justify-content: center;
  align-items: center
}

.underline {
  position: relative
}

.underline:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 1px;
  background: 0 0;
  transition: all .4s
}

.is-closing {
  z-index: 1 !important
}

[hidden] {
  display: none !important
}

html:not(.loaded) ._dynamic_adapt_,
html:not(.loaded) .sub-menu-wrapper,
html:not(.loaded) [data-da*=header__mobile] {
  display: none
}

.img-bg {
  position: absolute;
  left: 0;
  top: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover
}

.ibg {
  position: relative
}

.ibg img {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  object-fit: cover
}

.more-line {
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical
}

.flex {
  display: flex;
  flex-wrap: wrap;
  width: 100%
}

.justify-center {
  justify-content: center
}

.justify-end {
  justify-content: end
}

.justify-start {
  justify-content: start;
  justify-items: start
}

.justify-between {
  width: 100%;
  justify-content: space-between
}

.align-center {
  align-items: center
}

.align-start {
  align-items: start;
  align-content: start
}

.col {
  justify-items: start
}

.col,
.grid {
  display: grid;
  grid-template-columns: 100%
}

.hide-xs {
  display: block
}

.show-xs {
  display: none
}

.hide-sm {
  display: block
}

.show-sm {
  display: none
}

.hide-md {
  display: block
}

.show-md {
  display: none
}

.hide-xl {
  display: block
}

.show-xl {
  display: none
}

.menu-link {
  position: relative;
  z-index: 7;
  width: 60px;
  height: 50px;
  order: 10;
  border-radius: 8px 24px 8px 8px;
  background: linear-gradient(46deg, #0e365e, #2878b7 101.01%)
}

.menu-link_active,
.menu-link_active .menu-lines {
  background: 0 0
}

.menu-link_active .menu-lines:after {
  background: #4e88d4;
  top: 0;
  transform: rotate(-135deg)
}

.menu-link_active .menu-lines:before {
  background: #4e88d4;
  top: 0;
  transform: rotate(135deg)
}

.menu-lines,
.menu-lines:after,
.menu-lines:before {
  position: absolute;
  left: 50%;
  width: 30px;
  height: 2px;
  translate: -50% 0;
  background: #fff;
  transition: .4s;
  pointer-events: none
}

.menu-lines:before {
  content: "";
  top: -8px
}

.menu-lines:after {
  content: "";
  top: 8px
}

.crumbs {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  column-gap: 20px;
  row-gap: 8px;
  margin-top: 50px;
  margin-bottom: 40px;
  color: #fff
}

.crumbs li:last-child {
  pointer-events: none
}

.crumbs li:last-child a {
  cursor: default
}

.crumbs li:not(:last-child) {
  position: relative;
  color: #7c7c7c
}

.crumbs li:not(:last-child):after {
  content: "/";
  position: absolute;
  right: -10px;
  top: 50%;
  transform: translate(50%, -50%)
}

.text {
  color: #fff
}

.text-block b,
.text-block h1,
.text-block h2,
.text-block h3,
.text-block strong {
  font-family: "Roboto", sans-serif;
  font-weight: bold;
}

.text-block h1 {
  text-transform: uppercase
}

.text-block h1,
.text-block h2 {
  line-height: 1.2
}

.text-block h4,
.text-block h5,
.text-block table thead td,
.text-block table thead th {
  font-family: "Roboto", sans-serif;
  font-weight: bold;
  text-transform: uppercase
}

.text-block h6 {
  margin-bottom: 15px
}

.text-block ol li,
.text-block ul li {
  position: relative;
  padding-left: 36px
}

.text-block ol li:not(:last-child),
.text-block ul li:not(:last-child) {
  margin-bottom: 20px
}

.text-block ol+ul,
.text-block ol ol,
.text-block ul+ul,
.text-block ul ol {
  padding-top: 0 !important
}

.text-block ul li:before {
  content: "";
  position: absolute;
  left: 0;
  top: 3px;
  width: 20px;
  height: 20px;
  background: url(/local/templates/empty/assets/css/../img/check.svg) 50%/contain no-repeat
}

.text-block ol {
  list-style: none;
  counter-reset: a
}

.text-block ol li {
  counter-increment: a
}

.text-block ol li:before {
  content: counter(a) ". ";
  position: absolute;
  left: 0;
  top: -2px;
  color: #fff;
  font-size: 1.1em;
  font-family: "Roboto", sans-serif;
}

.text-block h2+ol,
.text-block h2+ul,
.text-block h3+ol,
.text-block h3+ul,
.text-block h4+ol,
.text-block h4+ul,
.text-block h5+ol,
.text-block h5+ul,
.text-block h6+ol,
.text-block h6+ul,
.text-block p+ol,
.text-block p+ul {
  padding-top: 0
}

.text-block blockquote {
  line-height: 1.4;
  background: #c2c2c2
}

.text-block mark {
  background: #6b9bdb
}

.form__text a,
.text-block a {
  text-decoration: underline
}

.text-block table {
  width: 100%;
  text-align: left;
  border-collapse: collapse
}

.text-block table thead {
  background: linear-gradient(46deg, #0e365e, #2878b7 101.01%);
  color: #fff
}

.text-block table tbody {
  color: #003274
}

.text-block table tbody tr:nth-child(odd) {
  background: #dae0e7
}

.text-block table tbody tr:nth-child(2n) {
  background: #f5f9ff
}

.text-block table td,
.text-block table th {
  padding: 17px 40px
}

body,
body:before {
  background: #252932
}

body {
  line-height: 1.3;
  color: #fff
}

body:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 200px;
  pointer-events: none
}

.main {
  display: grid;
  grid-template-columns: 100%
}

.page {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto
}

.page-bg {
  background: #252932
}

.section {
  padding: 80px 0
}

.section-top {
  padding-top: 80px
}

.section-bottom {
  padding-bottom: 80px
}

.title {
  font-size: 36px;
  text-transform: uppercase;
  line-height: 1.2;
  font-family: "Roboto", sans-serif;
  font-weight: bold;
}

.title-page {
  margin-bottom: 40px;
  justify-self: start
}

.subtitle {
  font-size: 24px;
  font-family: "Roboto", sans-serif;
}

.button {
  position: relative;
  z-index: 1;
  padding: 13px 20px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  min-width: 180px;
  min-height: 46px;
  font-family: "Roboto", sans-serif;
  font-weight: bold;
  text-transform: uppercase;
  border-radius: 8px 24px 8px 8px;
  background: linear-gradient(46deg, #0e365e, #2878b7 101.01%);
  overflow: hidden;
  color: #fff
}

.button[disabled] {
  background: #233b53;
  color: #8e8e8e;
  cursor: not-allowed
}

.button:focus-visible:not([disabled]):after {
  opacity: 1
}

.button:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background: linear-gradient(46deg, #205181, #54a2de 101.01%);
  opacity: 0;
  transition: all .4s
}

.button svg {
  width: 10px;
  height: 10px;
  fill: currentColor;
  transition: none
}

.button_border.button_white {
  background: 0 0;
  border: 2px solid #fff
}

.button_border.button_white:focus-visible {
  background: #fff;
  color: #4e88d4
}

.button_border.button_white:focus-visible:after {
  display: none
}

.submit {
  min-height: 60px
}

.header__img img,
.logo img {
  object-fit: contain
}

.email,
.header__city,
.header__time,
.tel {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 14px;
  font-family: "Roboto", sans-serif;
}

.tel {
  font-size: 18px
}

.email svg,
.header__city svg,
.header__time svg,
.tel svg {
  max-width: 18px;
  max-height: 18px;
  fill: currentColor;
  transition: none
}

.email:focus-visible,
.footer__menu li:focus-visible,
.form__text a:focus-visible,
.header__menu li:focus-visible,
.social__item:focus-visible,
.tel:focus-visible {
  color: #4e88d4
}

.footer__logo {
    width: 221px;
    align-self: center;
}

.social__item {
  display: flex;
  transition: all .4s
}

.section-404 {
  display: grid;
  align-items: center;
  height: 100%;
  color: #fff;
  background: url(/local/templates/empty/assets/css/../img/bg-404.png) center 45%/cover no-repeat
}

.section-404-wrapper {
  display: grid;
  justify-items: center;
  text-align: center
}

.section-404__img {
  margin-bottom: 30px
}

.section-404__title {
  margin-bottom: 15px;
  font-size: 16px;
  text-transform: uppercase;
  font-family: "Roboto", sans-serif;
  font-weight: bold;
}

.section-404__button {
  min-width: 366px
}

.input-wrapper {
  gap: 20px
}

.input,
.textarea {
  width: 100%;
  padding: 0 24px;
  border: 1px solid #dae0e7;
  border-radius: 8px;
  color: #003274;
  font-size: 16px
}

.input::placeholder,
.textarea::placeholder {
  color: #8e8e8e
}

.input.error,
.textarea.error {
  border-color: #ff6b56
}

.input {
  height: 52px
}

.textarea {
  padding-top: 10px;
  height: 104px
}

.form__text,
.form span.error:after {
  font-size: 10px;
  font-family: "Roboto", sans-serif;
}

.form span.error:after {
  content: "обязательное поле";
  display: block;
  color: #ff6b56;
  text-align: right;
  margin-top: 3px
}

.form__text {
  margin-top: 16px;
  line-height: 1.4;
  color: #8e8e8e
}

.input-file {
  position: relative;
  width: 100%;
  pointer-events: none
}

.input-file-text,
.input-file input {
  width: 100%;
  height: 100%;
  cursor: pointer
}

.input-file input {
  opacity: 0;
  pointer-events: auto
}

.input-file-text {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  padding-left: 30px;
  background: url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMTYgMTYiIHhtbDpzcGFjZT0icHJlc2VydmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgZW5hYmxlLWJhY2tncm91bmQ9Im5ldyAwIDAgMTYgMTYiPjxwYXRoIGQ9Im03LjY0NiAxMy42NDYuNzA3LjcwNyA2LTZhNC4wNCA0LjA0IDAgMCAwIDAtNS43MDcgNC4wMzkgNC4wMzkgMCAwIDAtNS43MDcgMGwtNi41IDYuNWEzLjMzMiAzLjMzMiAwIDAgMCAwIDQuNzA3Yy42NDguNjQ4IDEuNTAxLjk3NCAyLjM1NC45NzRzMS43MDUtLjMyNSAyLjM1NC0uOTc0bDYtNmMuNDk1LS40OTUuNzY3LTEuMTUzLjc2Ny0xLjg1M3MtLjI3Mi0xLjM1OC0uNzY4LTEuODU0Yy0uOTktLjk5LTIuNzE3LS45OS0zLjcwNyAwbC01LjUgNS41LjcwNy43MDcgNS41LTUuNWMuNjExLS42MTEgMS42ODItLjYxMSAyLjI5MyAwIC4zMDYuMzA2LjQ3NS43MTMuNDc1IDEuMTQ3cy0uMTY5Ljg0MS0uNDc1IDEuMTQ2bC02IDZjLS45MDguOTA4LTIuMzg1LjkwOC0zLjI5MyAwcy0uOTA4LTIuMzg1IDAtMy4yOTNsNi41LTYuNWMxLjE4NC0xLjE4NCAzLjEwOS0xLjE4NCA0LjI5MyAwczEuMTg0IDMuMTA5IDAgNC4yOTNsLTYgNnoiIGZpbGw9IiM5NTk1OTciIGNsYXNzPSJmaWxsLTAwMDAwMCI+PC9wYXRoPjwvc3ZnPg==) 8px/17px no-repeat;
  color: #959597;
  font-size: 14px
}

.input-date {
  position: relative
}

.input-date,
.input-date input {
  cursor: pointer
}

.input-date input::-webkit-calendar-picker-indicator {
  width: 22px;
  height: 22px;
  background: url(/local/templates/empty/assets/css/../img/calendar.svg) 50%/contain no-repeat;
  cursor: pointer
}

.input-date input::-webkit-datetime-edit {
  color: transparent;
  opacity: 0
}

.input-date input:focus::-webkit-datetime-edit {
  color: #003274;
  opacity: 1
}

.input-date span {
  position: absolute;
  top: 50%;
  transform: translatey(-50%);
  z-index: 1;
  color: #bbb;
  font-family: "Roboto", sans-serif;
  pointer-events: none
}

.input-date.active input::-webkit-datetime-edit {
  color: #003274;
  opacity: 1
}

.form__icon {
  flex-grow: 0;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  margin-right: 10px;
  border: 1px solid #777
}

.form__icon.active {
  background: url(/local/templates/empty/assets/css/../img/check.svg) 50%/10px no-repeat
}

.form__check {
  display: flex;
  align-items: center;
  width: 100%;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  color: #252525;
  line-height: 1.6153846154
}

.footer__bottom a,
.form__check a:hover {
  text-decoration: underline
}

.form__check.error .form__icon {
  border-color: #c00
}

.form__check.error .form__text,
.form__check.error .form__text a {
  color: #c00
}

.popup__form form,
.thank {
  display: grid;
  justify-content: center
}

.thank {
  justify-items: center;
  gap: 16px;
  max-width: 365px;
  margin: 0 auto;
  text-align: center
}

.thank__title {
  color: #252932;
  text-transform: uppercase;
  font-family: "Roboto", sans-serif;
  font-weight: bold;
}

.popup,
.popup__dialog {
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center
}

.popup {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 11;
  display: none;
  overflow: hidden;
  background: rgba(0, 0, 0, .7)
}

.popup__dialog {
  display: flex;
  flex-direction: column;
  cursor: pointer
}

.popup__content {
  position: relative;
  width: 568px;
  max-width: 96%;
  max-height: 90vh;
  background: #fff;
  overflow-y: auto;
  transition: all .4s;
  cursor: default;
  border-radius: 14px
}

.popup__title {
  margin-bottom: 20px
}

.popup__subtitle,
.popup__title {
  color: #003274;
  text-align: center
}

.popup__subtitle {
  margin-bottom: 30px
}

.popup__form form {
  grid-template-columns: 100%
}

.popup__form .input-wrapper {
  gap: 10px
}

.popup__close {
  position: absolute;
  cursor: pointer;
  transition: all .4s
}

.popup__close svg {
  fill: #003274
}

.header .container {
  position: static
}

.header-fixed {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 10;
  color: #fff
}

.header-fixed_fixed {
  background: #252932
}

.header__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  color: #003274
}

.header__top svg {
  max-width: 18px;
  max-height: 18px;
  fill: currentColor;
  transition: none
}

.header__top-wrapper {
  padding: 9px 0;
  background: #f5f9ff
}

.header__top-left,
.header__top-right,
.header__top-wrapper {
  display: flex;
  align-items: center
}

.header__top-left {
  gap: 35px
}

.header__top-right {
  gap: 47px
}

.header__call {
  display: flex;
  gap: 15px;
  align-items: center
}

.header__tel {
  margin-right: 10px
}

.header__bottom {
  display: grid;
  grid-template-columns: auto 1fr auto;
  gap: 10px;
  align-items: center;
  padding: 6px 0;
  color: #fff
}

.header__menu {
  display: flex;
  align-items: center;
  justify-content: center;
  text-transform: uppercase
}

.header-main {
  display: grid;
  grid-template-columns: 100%;
  justify-items: start;
  align-content: start
}

.header-main-wrapper {
  position: relative;
  padding-top: 138px;
  background: #252932;
  color: #fff
}

.header__img {
  position: absolute;
  right: 0;
  bottom: 0;
  height: 100%;
  max-width: 908px
}

.header__title {
  line-height: 1.2;
  font-family: sans-serif;
  text-transform: uppercase
}

.header__block {
  max-width: 385px;
  padding: 24px;
  border-radius: 8px 8px 24px 8px;
  background: hsla(0, 0%, 100%, .54)
}

.header__subtitle {
  font-size: 24px;
  text-transform: uppercase;
  font-family: "Roboto", sans-serif;
  line-height: 1.3;
  background: linear-gradient(46deg, #0e365e, #2878b7 101.01%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent
}

.header__tel-mobile {
  display: flex;
  align-items: center;
  gap: 12px;
  justify-self: end;
  font-size: 18px;
  font-family: "Roboto", sans-serif;
}

.header__tel-mobile svg {
  width: 20px;
  height: 20px;
  fill: #fff
}

.footer {
  background: #fff
}

.footer__top {
  display: flex;
  justify-content: space-between;
  padding: 30px 0;
  align-items: flex-start
}

.footer__text {
  display: grid;
  gap: 10px;
  max-width: 213px;
  font-size: 10px;
  line-height: 1.4;
  font-family: "Roboto", sans-serif;
  color: #8e8e8e
}

.footer__menu {
  flex: 1 1 auto;
  justify-items: start;
  align-self: center;
  display: grid;
  grid-template-columns: auto auto;
  row-gap: 20px;
  text-transform: uppercase;
  text-align: left;
  font-family: "Roboto", sans-serif;
  font-weight: bold;
  white-space: nowrap;
  color: #003274
}

.footer__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  padding: 12px 0
}

.footer__bottom a:focus-visible {
  color: #4e88d4
}

.footer__bottom-wrapper {
  background: #003274;
  color: #fff
}

.news {
  background: #252932;
  color: #fff
}

.news__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 48px
}

.news-wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 34px
}

.news__item {
  display: grid;
  grid-template-rows: auto auto 1fr auto auto;
  gap: 16px;
  justify-items: start;
  height: 100%;
  line-height: 1.3
}

.news__item,
.news__item>:not(.button) {
  transition: all .4s
}

.news__item:focus-visible>:not(.button) {
  translate: 0 -8px
}

.news__item-img {
  position: relative;
  z-index: 1;
  border-radius: 14px;
  overflow: hidden
}

.news__item-img:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: linear-gradient(151deg, rgba(0, 50, 116, .58) 3.16%, rgba(0, 50, 116, 0) 101%)
}

.news__item-date {
  font-size: 12px;
  font-family: "Roboto", sans-serif;
  line-height: 1.4
}

.news__item-title {
  font-family: "Roboto", sans-serif;
  font-weight: bold;
  line-height: 1.4;
  text-transform: uppercase
}

.single-news {
  color: #fff
}

.single-news-wrapper {
  display: grid;
  grid-template-columns: 1fr 31.217838765%;
  gap: 35px;
  width: 100%
}

.single-news__left {
  display: grid;
  grid-template-columns: 100%;
  gap: 16px
}

.single-news__left time {
  font-size: 12px;
  font-family: "Roboto", sans-serif;
}

.single-news__left img {
  width: 100%;
  max-height: 400px;
  margin-bottom: 16px;
  border-radius: 14px
}

.pagination {
  margin-top: 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px
}

.pagination__col {
  display: grid;
  gap: 10px
}

.pagination__col:first-child .button {
  border-radius: 24px 8px 8px 8px
}

.latest__title {
  margin-bottom: 15px;
  font-size: 24px;
  font-family: "Roboto", sans-serif;
  font-weight: bold;
  text-transform: uppercase
}

.latest .news__item {
  grid-template-columns: 32.8767123288% 1fr;
  column-gap: 14px;
  row-gap: 6px;
  align-items: center;
  align-content: center;
  padding: 16px 0;
  border-bottom: 1px solid #fff
}

.latest .news__item:focus-visible>:not(.button) {
  translate: 0
}

.latest .news__item:focus-visible .news__item-img img,
.services__item:focus-visible .services__item-img img {
  scale: 1.03
}

.latest .news__item:focus-visible .news__item-title {
  color: #4e88d4
}

.latest .news__item-img {
  grid-row: span 2;
  height: 100%;
  overflow: hidden
}

.latest .news__item-date,
.latest .news__item-title {
  font-size: 10px;
  font-family: "Roboto", sans-serif;
  line-height: 1.3
}

.latest .news__item-title {
  font-size: 14px;
  text-transform: none;
  transition: all .4s
}

.offer {
  position: relative;
  background: #fff;
  color: #003274
}

.offer__title {
  margin-bottom: 20px
}

.offer__subtitle {
  margin-bottom: 38px
}

.offer .container {
  margin-right: 0
}

.offer__right {
  position: relative;
  z-index: 3;
  display: grid;
  align-items: center;
  justify-content: start;
  width: 100%;
  max-width: 52%;
  min-height: 546px;
  padding-left: 35px;
  margin-left: auto
}

.offer__img,
.offer__right:before {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%
}

.offer__right:before {
  content: "";
  width: 100%;
  width: 100vw;
  z-index: -2;
  background: #fff;
  pointer-events: none
}

.offer__img {
  width: 48.7554904832%
}

.offer__img img {
  width: 100%;
  height: 100%;
  object-fit: cover
}

.offer__form {
  max-width: 366px
}

.offer__subtitle {
  z-index: 4;
  position: relative
}

.services {
  color: #fff;
  background: #252932 url(/local/templates/empty/assets/css/../img/services/services-bg.webp) 222% -97px/78% no-repeat
}

.services__title {
  margin-bottom: 20px
}

.services__subtitle {
  margin-bottom: 40px;
  max-width: 570px
}

.services-wrapper {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 20px;
  row-gap: 24px;
  max-width: 610px
}

.services__item {
  display: grid;
  align-content: start;
  gap: 10px;
  line-height: 1.3
}

.services__item-img {
  position: relative;
  width: 166px;
  height: 166px;
  border-radius: 14px;
  background: #252932;
  overflow: hidden
}

.services__item-img img {
  position: absolute;
  right: 0;
  bottom: 0;
  object-fit: contain;
  transition: all .4s
}

.development {
  background: #f5f9ff;
  color: #003274
}

.development__title {
  display: flex;
  align-items: center;
  gap: 40px;
  margin-bottom: 40px;
  white-space: nowrap
}

.development__title:after {
  content: "";
  display: inline-block;
  width: 100%;
  height: 2px;
  background: #dae0e7
}

.development__text {
  max-width: 1110px
}

.development__text ul {
  columns: 2 300px;
  gap: 20px
}

.development__text li {
  transition: all .4s
}

.development__text li:focus-visible {
  translate: 0 -5px
}

.plan {
  background: #fff;
  color: #003274
}

.plan__title {
  margin-bottom: 47px;
  text-align: center;
}

.plan-wrapper {
  display: grid;
  grid-template-columns: repeat(2, auto);
  justify-content: center;
}

.plan__item {
  padding: 20px 0 0
}

.plan__item:nth-child(2) {
    padding-right: 0;
}

.plan__item-subtitle {
  margin-bottom: 32px;
  font-size: 24px;
  font-family: "Roboto", sans-serif;
}

.plan__item-number {
  margin-bottom: 27px;
  display: flex;
  gap: 12px;
  align-items: flex-end;
  font-size: 100px;
  font-family: "Roboto", sans-serif;
  font-weight: bolder;
  line-height: .6;
  letter-spacing: -.065em
}

.plan__item-number small {
  margin-left: 10px;
  letter-spacing: normal;
  white-space: nowrap
}

.plan__item-number small,
.plan__item-title {
  font-size: 24px;
  font-family: "Roboto", sans-serif;
  font-weight: bold;
  text-transform: uppercase
}

.about {
  position: relative;
  z-index: 1;
  background: #fff;
  color: #003274
}

.about:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  rotate: 180deg;
  background: linear-gradient(90deg, rgba(240, 245, 251, .81), rgba(240, 245, 251, .83) 15.42%, rgba(240, 245, 251, .72) 50.31%, rgba(240, 245, 251, 0)) no-repeat;
  background-blend-mode: normal, difference, normal
}

.about-wrapper {
  display: grid;
  grid-template-columns: 51.2864493997% 1fr
}

.about__right {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: 100%;
  gap: 30px;
  justify-items: start;
  padding-left: 85px;
  padding-right: 52px;
  background: url(/local/templates/empty/assets/css/../img/about-bg.webp) 50%/cover no-repeat
}

.about__img {
  width: 100%;
  height: 100%
}

.about__img img {
  object-fit: cover
}

.about__text p {
  margin: 0;
  font-size: 16px;
  line-height: 1.3
}

.about__text p:not(:last-child) {
  margin-bottom: 11px
}

.contact {
  position: relative;
  z-index: 1;
  background: #f5f9ff;
  color: #003274
}

.contact .container {
  position: static
}

.contact__block {
  position: absolute;
  bottom: 22px;
  left: 13.5685210312%;
  display: grid;
  gap: 22px;
  padding: 41px;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 4px 16px 0 rgba(0, 0, 0, .25)
}

.contact__block svg {
  max-width: 18px;
  max-height: 18px;
  fill: currentColor;
  transition: none
}

.contact__block-title {
  font-size: 24px;
  font-family: "Roboto", sans-serif;
  font-weight: bold;
  text-transform: uppercase
}

.contact__map,
.contact__right:after {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%
}

.contact__map {
  z-index: 1;
  width: 53.953147877%;
  aspect-ratio: 747/737
}

.contact__right {
  position: relative;
  z-index: 4;
  width: 100%;
  max-width: 508px;
  margin-left: auto;
  padding-left: 63px
}

.contact__right:after {
  content: "";
  width: 100%;
  z-index: -1;
  background: #f5f9ff
}

.contact__title {
  margin-bottom: 21px
}

.contact__subtitle {
  margin-bottom: 25px;
  color: #000
}

.contact__form {
  max-width: 366px
}

.contact [class*=ymaps-2][class*=-ground-pane] {
  filter: brightness(50%) grayscale(90%)
}

.contact .ymaps-2-1-79-copyright__content-cell,
.contact .ymaps-2-1-79-copyright__link,
.contact .ymaps-2-1-79-float-button,
.contact .ymaps-2-1-79-gototaxi,
.contact .ymaps-2-1-79-gototech,
.contact .ymaps-2-1-79-gotoymaps,
.contact .ymaps-2-1-79-gotoymaps__container,
.contact .ymaps-2-1-79-listbox__button,
.contact .ymaps-2-1-79-listbox__button-icon,
.ymaps-2-1-79-controls__control_toolbar {
  display: none
}

@media (min-width:768px) {
  .container {
    padding: 0 20px
  }

  .plan__item:not(:nth-child(3n)) {
    padding-right: 62px
  }

  .plan__item:not(:nth-child(3n+1)) {
    padding-left: 62px
  }
}

@media (min-width:768px) and (min-width:992px) {
  .plan__item:not(:nth-child(2n)) {
    border-right: 2px solid #003274
  }
}

@media (min-width:992px) {
  .container {
    width: 940px;
    padding: 0
  }

  .menu-link {
    display: none
  }

  body:not(.home) {
    padding-top: 138px
  }
}

@media (min-width:1200px) {
  .header__nav {
    max-width: 95%
  }

  .header__img {
    bottom: -15px
  }

  .footer__menu {
    margin-left: 20px
  }

  .offer__right:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    background: url(/local/templates/empty/assets/css/../img/offer-bg.webp) 100% 100%/contain no-repeat;
    pointer-events: none
  }
}

@media (min-width:1301px) {
  .container {
    width: 1166px
  }

  .section-bg+.section-bg {
    margin-top: -40px
  }

  .flex {
    gap: 20px
  }

  .grid {
    gap: 12px
  }

  .text-block h1 {
    font-size: 62px;
    margin-bottom: 30px
  }

  .text-block h2,
  .text-block h3 {
    margin-bottom: 30px;
    font-size: 36px
  }

  .text-block h3 {
    font-size: 24px
  }

  .text-block h4,
  .text-block h5 {
    margin-bottom: 25px
  }

  .text-block p:not(:last-child) {
    margin-bottom: 20px
  }

  .text-block ol:not(:first-of-type),
  .text-block ul:not(:first-of-type) {
    padding-top: 20px
  }

  .text-block ol:not(:last-child),
  .text-block ul:not(:last-child) {
    padding-bottom: 20px
  }

  .text-block blockquote {
    padding: 40px;
    font-size: 18px
  }

  .text-block table tbody td,
  .text-block table thead td,
  .text-block table thead th {
    font-size: 16px
  }

  .section-404-wrapper {
    gap: 40px
  }

  .input-date input {
    padding-right: 20px
  }

  .input-date span {
    left: 27px;
    font-size: 14px
  }

  .form__check {
    font-size: 13px
  }

  .thank__title {
    font-size: 24px
  }

  .popup__content {
    padding: 48px 94px
  }

  .popup__close {
    right: 20px;
    top: 20px
  }

  .popup__close svg {
    width: 20px;
    height: 20px
  }

  .header__menu {
    gap: 60px;
    font-size: 16px
  }

  .header-main {
    gap: 53px;
    min-height: 590px;
    padding-top: 103px;
    padding-bottom: 125px
  }

  .header__title {
    max-width: 740px;
    font-size: 62px
  }

  .footer__top {
    gap: 82px
  }

  .footer__menu {
    column-gap: 40px
  }

  .contact__block {
    padding-right: 82px
  }
}

@media (max-width:1366px) {
  .offer__right {
    max-width: clamp(300px, 177.6290630975px + 38.240917782vw, 700px)
  }
}

@media (max-width:1300px) {
  .section-bg+.section-bg {
    margin-top: clamp(-40px, -16px + -1.25vw, -20px)
  }

  .flex {
    gap: clamp(10px, 8px + .625vw, 20px)
  }

  .grid {
    gap: clamp(8px, 7.2px + .25vw, 12px)
  }

  .hide-xl {
    display: none
  }

  .show-xl {
    display: block
  }

  .text-block h1,
  .text-block h2,
  .text-block h3 {
    font-size: clamp(34px, 28.4px + 1.75vw, 62px);
    margin-bottom: clamp(20px, 18px + .625vw, 30px)
  }

  .text-block h2,
  .text-block h3 {
    font-size: clamp(28px, 26.4px + .5vw, 36px)
  }

  .text-block h3 {
    font-size: clamp(12px, 9.6px + .75vw, 24px)
  }

  .text-block h4,
  .text-block h5 {
    margin-bottom: clamp(15px, 13px + .625vw, 25px)
  }

  .text-block p:not(:last-child) {
    margin-bottom: clamp(10px, 8px + .625vw, 20px)
  }

  .text-block ol:not(:first-of-type),
  .text-block ul:not(:first-of-type) {
    padding-top: clamp(10px, 8px + .625vw, 20px)
  }

  .text-block ol:not(:last-child),
  .text-block ul:not(:last-child) {
    padding-bottom: clamp(10px, 8px + .625vw, 20px)
  }

  .text-block blockquote {
    padding: clamp(15px, 10px + 1.5625vw, 40px);
    font-size: clamp(15px, 14.4px + .1875vw, 18px)
  }

  .text-block table thead td,
  .text-block table thead th {
    font-size: clamp(12px, 11.2px + .25vw, 16px)
  }

  .text-block table tbody td {
    font-size: clamp(14px, 13.6px + .125vw, 16px)
  }

  .section-404-wrapper {
    gap: clamp(20px, 16px + 1.25vw, 40px)
  }

  .input-date input {
    padding-right: clamp(10px, 8px + .625vw, 20px)
  }

  .input-date span {
    left: clamp(10px, 6.6px + 1.0625vw, 27px);
    font-size: clamp(12px, 11.6px + .125vw, 14px)
  }

  .form__check {
    font-size: clamp(11px, 10.6px + .125vw, 13px)
  }

  .thank__title {
    font-size: clamp(19px, 18px + .3125vw, 24px)
  }

  .popup__content {
    padding: clamp(20px, 14.4px + 1.75vw, 48px) clamp(15px, -.8px + 4.9375vw, 94px)
  }

  .popup__close {
    right: clamp(10px, 8px + .625vw, 20px);
    top: clamp(10px, 8px + .625vw, 20px)
  }

  .popup__close svg {
    width: clamp(12px, 10.4px + .5vw, 20px);
    height: clamp(12px, 10.4px + .5vw, 20px)
  }

  .header__menu {
    gap: clamp(1px, -10.8px + 3.6875vw, 60px);
    font-size: clamp(14px, 13.6px + .125vw, 16px)
  }

  .header-main {
    gap: clamp(15px, 7.4px + 2.375vw, 53px);
    min-height: clamp(300px, 242px + 18.125vw, 590px);
    padding-top: clamp(65px, 57.4px + 2.375vw, 103px);
    padding-bottom: clamp(60px, 47px + 4.0625vw, 125px)
  }

  .header__title {
    max-width: clamp(500px, 452px + 15vw, 740px);
    font-size: clamp(30px, 23.6px + 2vw, 62px)
  }

  .header__img {
    right: -100px
  }

  .footer__top {
    gap: clamp(10px, -4.4px + 4.5vw, 82px)
  }

  .footer__menu {
    column-gap: clamp(10px, 4px + 1.875vw, 40px)
  }

  .footer__bottom {
    display: grid;
    grid-template-columns: auto auto
  }

  .footer__bottom>:nth-child(2),
  .footer__bottom>:nth-child(3) {
    text-align: right
  }

  .footer__bottom>:nth-child(3) {
    order: 3
  }

  .services {
    background-position: 200% -97px;
    background-size: 70%
  }

  .plan__item {
    padding: 0
  }

  .plan__item-number small,
  .plan__item-subtitle {
    font-size: 16px
  }

  .plan__item-number {
    font-size: 70px
  }

  .about-wrapper {
    grid-template-columns: 45% 1fr
  }

  .contact__block {
    padding-right: clamp(41px, 32.8px + 2.5625vw, 82px)
  }
}

@media (max-width:1199px) {

  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    text-wrap: balance
  }
}

@media (max-width:991px) {
  .hide-md {
    display: none
  }

  .show-md {
    display: block
  }

  body {
    padding-top: 93px
  }

  .header__mobile {
    position: fixed;
    right: -100vw;
    top: 20px;
    z-index: 5;
    display: grid;
    grid-template-columns: 100%;
    justify-items: start;
    gap: 40px;
    width: min(500px, 101vw);
    border-radius: 8px 24px 8px 8px;
    background: #fff;
    box-shadow: 0 4px 24px 0 rgba(0, 0, 0, .56);
    transition: right .3s, opacity .3s;
    opacity: 0;
    color: #003274;
    max-height: 100vh;
    padding: 60px 9px 35px 40px;
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-color: #77a4de #f5f9ff;
    scrollbar-width: thin
  }

  .header__mobile::-webkit-scrollbar {
    width: 4px
  }

  .header__mobile::-webkit-scrollbar-track {
    background: #f5f9ff
  }

  .header__mobile::-webkit-scrollbar-thumb {
    background: #77a4de
  }

  .header__mobile_active {
    right: 20px;
    opacity: 1
  }

  .header__menu {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 50px;
    row-gap: 20px;
    font-size: 16px;
    font-family: "Roboto", sans-serif;
    font-weight: bold;
  }

  .header-fixed {
    background: #252932
  }

  .header__top,
  .header__top-left,
  .header__top-right {
    display: grid;
    grid-template-columns: 100%;
    gap: 25px
  }

  .header__top-left-wrapper,
  .header__top-right-wrapper,
  .header__top-wrapper {
    padding: 0
  }

  .header__bottom {
    grid-template-columns: auto 1fr auto;
    gap: 34px
  }

  .header__call {
    flex-wrap: wrap;
    row-gap: 25px
  }

  .header__tel {
    width: 100%
  }

  .header-main {
    justify-items: center;
    justify-content: center;
    gap: 0;
    padding-top: 59px
  }

  .header-main-wrapper {
    padding-top: 0
  }

  .header__title {
    font-size: 62px;
    text-align: center
  }

  .header__block {
    padding: 16px 24px
  }

  .header__img {
    position: relative;
    right: auto;
    width: 100vw;
    height: 525px;
    margin-top: -65px
  }

  .header__img picture {
    height: auto
  }

  .header__img img {
    width: 100%;
    height: 100%;
    object-fit: cover
  }

  .footer__top {
    display: grid;
    grid-template-columns: 1fr auto
  }

  .footer__text {
    max-width: 100%
  }

  .footer__text-2 {
    grid-template-columns: 1fr 1fr
  }

  .footer__bottom {
    font-size: 14px
  }

  .news-wrapper {
    gap: 20px;
    grid-template-columns: repeat(2, 1fr)
  }

  .single-news-wrapper {
    grid-template-columns: 100%
  }

  .single-news__right {
    margin-top: 45px
  }

  .latest-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 20px
  }

  .latest .news__item {
    grid-template-columns: 27.6836158192% 1fr;
    grid-template-rows: auto auto
  }

  .offer__right {
    min-height: 506px
  }

  .offer__img {
    position: static;
    height: 460px;
    width: 100%
  }

  .offer-wrapper {
    grid-template-columns: 100%
  }

  .offer__right {
    margin: 0 auto;
    display: grid;
    justify-content: center;
    justify-items: center;
    padding-left: 0;
    padding-bottom: 40px;
    max-width: 566px;
    text-align: center
  }

  .services {
    background-position: 100% 100%;
    background-size: 50%
  }

  .plan__title {
    margin-bottom: 38px
  }

  .plan__item-number {
    margin-bottom: 16px;
    font-size: 60px
  }

  .plan__item-title {
    font-size: 16px
  }

  .plan__item-subtitle {
    margin-bottom: 27px
  }

  .plan__item:not(:nth-child(3n)) {
    position: relative
  }

  .plan__item:not(:nth-child(2n)):after {
    content: "";
    position: absolute;
    left: 100%;
    top: 0;
    width: 2px;
    height: 100px;
    background: #003274
  }

  .about__text p:not(:last-child) {
    margin-bottom: 25px
  }

  .about-wrapper {
    grid-template-columns: 100%
  }

  .about__img {
    order: 1;
    height: clamp(316px, 236.8345752608px + 24.739195231vw, 482px)
  }

  .about__right {
    padding-left: 20px;
    padding-right: 20px;
    padding-bottom: clamp(30px, 25.2309985097px + 1.4903129657vw, 40px);
    gap: clamp(20px, 12.841163311px + 2.2371364653vw, 30px)
  }

  .contact__map {
    position: relative;
    width: 100vw;
    height: 436px;
    margin: 0 -20px;
    aspect-ratio: auto
  }

  .contact__right {
    display: grid;
    justify-items: center;
    margin: 0 auto;
    padding-left: 0
  }

  .contact__right:after {
    display: none
  }

  .contact__subtitle,
  .contact__title {
    max-width: 385px;
    text-align: center
  }
}

@media (max-width:767px) {
  .hide-sm {
    display: none
  }

  .show-sm {
    display: block
  }

  .text-block table {
    max-width: 100%;
    padding-bottom: 9px;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-color: #77a4de #f5f9ff;
    scrollbar-width: thin;
    cursor: pointer
  }

  .text-block table::-webkit-scrollbar {
    height: 4px
  }

  .text-block table::-webkit-scrollbar-track {
    background: #f5f9ff
  }

  .text-block table::-webkit-scrollbar-thumb {
    background: #77a4de
  }

  body {
    padding-top: 75px
  }

  .title {
    font-size: clamp(28px, 22.2729306488px + 1.7897091723vw, 36px)
  }

  .subtitle {
    font-size: clamp(16px, 10.2729306488px + 1.7897091723vw, 24px)
  }

  .header__bottom {
    display: flex;
    justify-content: space-between
  }

  .header__title {
    font-size: clamp(34px, 13.9552572707px + 6.2639821029vw, 62px)
  }

  .header__img {
    height: clamp(218px, -1.7762863535px + 68.6800894855vw, 525px);
    margin-top: clamp(-65px, 29.3736017897px + -12.3042505593vw, -10px)
  }

  .header__block {
    padding-bottom: clamp(16px, 10.2729306488px + 1.7897091723vw, 24px);
    padding-top: clamp(16px, 10.2729306488px + 1.7897091723vw, 24px)
  }

  .header__subtitle {
    text-align: center
  }

  .header__logo {
    max-width: clamp(130px, 74.1610738255px + 17.4496644295vw, 208px)
  }

  .footer__top {
    padding: 20px 0
  }

  .footer__bottom {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    font-size: 10px;
    font-family: "Roboto", sans-serif;
  }

  .footer__menu {
    row-gap: 10px;
    font-size: 12px;
    font-family: "Roboto", sans-serif;
  }

  .services {
    background-size: 85%;
    background-position: 400% 100%
  }

  .services-wrapper {
    max-width: 430px
  }

  .plan-wrapper {
    grid-template-columns: 100%;
    gap: 42px
  }

  .plan__item:not(:nth-child(3n)):after {
    left: 0;
    top: calc(100% + 21px);
    width: 100px;
    height: 2px
  }

  .plan__item-number {
    margin-bottom: 15px
  }

  .about:after {
    opacity: .6
  }
}

@media (max-width:767px) and (max-width:1300px) {
  .header__subtitle {
    font-size: clamp(16px, 14.4px + .5vw, 24px)
  }
}

@media (max-width:575px) {
  .hide-xs {
    display: none
  }

  .show-xs {
    display: block
  }

  .crumbs {
    margin-top: 30px
  }

  .text-block table td,
  .text-block table th {
    padding: 10px
  }

  body {
    padding-top: 70px
  }

  .section {
    padding: 60px 0
  }

  .section-top {
    padding-top: 60px
  }

  .section-bottom {
    padding-bottom: 60px
  }

  .section-404 {
    background-image: url(/local/templates/empty/assets/css/../img/bg-404-mobile.png)
  }

  .section-404__img {
    max-width: clamp(238px, -90.7843137255px + 102.7450980392vw, 500px)
  }

  .section-404__button {
    min-width: clamp(180px, -53.4117647059px + 72.9411764706vw, 366px)
  }

  .popup__subtitle,
  .popup__title {
    margin-bottom: 15px;
    font-size: 21px
  }

  .popup__subtitle {
    font-size: 13px
  }

  .popup__dialog {
    width: 400px;
    max-width: 100%;
    padding: 0 10px;
    margin: 0 auto
  }

  .header-fixed {
    margin: -10px 0
  }

  .header__menu {
    grid-template-columns: 100%
  }

  .header__mobile {
    top: 0;
    width: 101%;
    gap: 35px;
    padding: 60px 30px;
    border-radius: 0
  }

  .header__mobile_active {
    right: -1px
  }

  .footer__top,
  .header__top,
  .header__top-left,
  .header__top-right {
    gap: 20px
  }

  .footer__menu {
    grid-template-columns: 100%
  }

  .footer__text {
    gap: 8px
  }

  .footer__text-2 {
    grid-template-columns: 100%
  }

  .footer__bottom {
    gap: 5px
  }

  .news__top {
    margin-bottom: 30px
  }

  .news-wrapper,
  .news .container {
    grid-template-columns: 100%
  }

  .news .container {
    display: grid;
    justify-items: center
  }

  .news__button {
    margin: 40px auto 0
  }

  .news__item-img {
    width: 100%
  }

  .news__item-img img {
    width: 100%;
    height: clamp(180px, -20.7843137255px + 62.7450980392vw, 340px);
    object-fit: cover
  }

  .news__item-button,
  .pagination__col .button {
    min-width: auto;
    font-size: 12px;
    font-family: "Roboto", sans-serif;
  }

  .news__item-button {
    padding: 13px 24px;
    min-height: 33px
  }

  .single-news__title {
    font-size: 16px
  }

  .single-news__right {
    margin-top: 25px
  }

  .pagination {
    display: grid;
    grid-template-columns: 1fr 1fr
  }

  .pagination__col-title {
    font-size: 10px;
    font-family: "Roboto", sans-serif;
  }

  .pagination__col .button {
    padding: 12px 16px;
    text-align: center
  }

  .pagination__col:first-child .pagination__col-title {
    text-align: right
  }

  .latest-wrapper {
    grid-template-columns: 100%
  }

  .latest .news__item {
    grid-template-columns: 23.3333333333% 1fr
  }

  .latest .news__item-img img {
    height: clamp(72px, 36.862745098px + 10.9803921569vw, 100px)
  }

  .latest .news__item-title {
    height: 100%
  }

  .offer__right {
    min-height: 526px
  }

  .offer {
    padding: 0 10px
  }

  .offer__right {
    padding-bottom: 30px
  }

  .offer__img {
    margin: 0 -10px;
    width: 100vw;
    height: clamp(200px, 74.5098039216px + 39.2156862745vw, 300px)
  }

  .offer__subtitle {
    margin-bottom: 30px
  }

  .offer__form .form__text {
    text-align: left
  }

  .services-wrapper {
    grid-template-columns: 1fr 1fr
  }

  .development__title {
    margin-bottom: 35px;
    gap: 20px;
    align-items: flex-end;
    white-space: normal
  }

  .development__title:after {
    margin-bottom: 10px
  }

  .plan__title {
    margin-bottom: 30px
  }

  .about__text p:not(:last-child) {
    margin-bottom: 15px
  }

  .about__right {
    padding-left: 10px;
    padding-right: 10px
  }

  .contact__block {
    padding: 43px 30px
  }

  .contact__block .social__item svg {
    max-width: 30px;
    max-height: 30px
  }

  .contact__subtitle {
    margin-bottom: 30px
  }

  .contact__map {
    height: 644px;
    margin: 0 -10px
  }

  .contact__block {
    width: 100%;
    max-width: 300px;
    bottom: auto;
    top: 60px;
    left: 50%;
    translate: -50% 0
  }
}

@media (max-width:430px) {
  .services {
    background-size: 91%;
    background-position: 589% 100%
  }

  .services__item-img {
    width: 140px;
    height: 140px
  }

  .services-wrapper {
    grid-template-columns: auto auto;
    column-gap: 0;
    row-gap: 20px
  }

  .services__item {
    max-width: 140px
  }

  .services__item-title {
    font-size: 14px
  }
}

@media (min-width:992px) or (max-width:767px) {
  .header__tel-mobile {
    display: none
  }
}

@media (max-width:991px) and (min-width:768px) {
  .header__img {
    margin-bottom: clamp(1px, -339.9506726457px + 44.3946188341vw, 100px)
  }
}

@media (max-width:767px) and (min-width:1301px) {
  .header__subtitle {
    font-size: 24px
  }
}

@media (max-width:991px) and (min-width:576px) {
  .news__item:nth-child(n+3) {
    display: none
  }

  .latest .news__item {
    display: grid
  }
}

@media (min-width:768px) and (max-width:1300px) {
  .plan__item:not(:nth-child(3n)) {
    padding-right: 35px
  }

  .plan__item:not(:nth-child(3n+1)) {
    padding-left: 35px
  }
}

@media (min-width:768px) and (max-width:991px) {
  .plan__item:not(:nth-child(3n)) {
    padding-right: 40px
  }

  .plan__item:not(:nth-child(3n+1)) {
    padding-left: 34px
  }
}

@media (max-width:1300px) and (min-width:991px) {
  .about__right {
    padding-left: clamp(20px, -140.355987055px + 16.1812297735vw, 70px);
    padding-right: clamp(20px, -140.355987055px + 16.1812297735vw, 70px)
  }
}

@media not all and (-webkit-min-device-pixel-ratio:0),
not all and (min-resolution:.001dpcm) {
  input {
    -webkit-appearance: none;
    appearance: none;
    font-size: 16px
  }
}

@media (any-hover:hover) {

  .email:hover,
  .footer__bottom a:hover,
  .footer__menu li:hover,
  .form__text a:hover,
  .header__menu li:hover,
  .hover-active:hover,
  .social__item:hover,
  .tel:hover {
    color: #4e88d4
  }

  .underline:hover:before {
    background: #4e88d4
  }

  .crumbs li:not(:last-child):hover {
    color: #4e88d4
  }

  .button:hover:not([disabled]):after {
    opacity: 1
  }

  .button_border.button_white:hover {
    background: #fff;
    color: #4e88d4
  }

  .button_border.button_white:hover:after {
    display: none
  }

  .popup__close svg:hover {
    fill: #4e88d4
  }

  .news__item:hover>:not(.button) {
    translate: 0 -8px
  }

  .latest .news__item:hover>:not(.button) {
    translate: 0
  }

  .latest .news__item:hover .news__item-img img,
  .services__item:hover .services__item-img img {
    scale: 1.03
  }

  .latest .news__item:hover .news__item-title {
    color: #4e88d4
  }

  .development__text li:hover {
    translate: 0 -5px
  }
}
/* End */
/* /local/templates/empty/assets/css/vendor.css?17036978121086 */
/* /local/templates/empty/assets/css/style.css?177072753046012 */
