/*NOTE: This file is intended for programmers. Aspro technical support is not advised to work with him.*/
html {
  --theme-letter-spacing: 0.5px !important;
  --theme-font-size: 18px !important;
  --theme-line-height: 1.4 !important;
  --theme-font-family: sans-serif !important;
}
body {
  --white_text_black: var(--light, #000) var(--dark, #fff) !important;
  --white_text_black_reverse: var(--light, #fff) var(--dark, #000) !important;
  --basic_text_black: var(--light, #000) var(--dark, #000) !important;
  --light_basic_text_black: var(--light, #000) var(--dark, #000) !important;

  --fill_dark_light: var(--light, #333) var(--dark, #fff);
  --fill_dark_light_ccc: var(--light, #333) var(--dark, #ccc);
  --fill_dark_light_hover: var(--light, var(--theme-base-color)) var(--dark, #ccc);
  --fill_dark_light_white_hover: var(--light, var(--theme-base-color)) var(--dark, #fff);
}
.orange {
  background: var(--theme-more-color);
}
.mobileheader {
  height: 91px;
}
.logo {
  height: 75px;
}
.index-block--padding-top-30 {
  padding-top: 30px;
}
.index-block--padding-bottom-30 {
  padding-bottom: 30px;
}
body.menu_lowercase_n .header-menu__title {
  font-size: 15px !important;
  line-height: var(--theme-line-height) !important;
  letter-spacing: 0 !important;
}
.index-block__preview--mb-66 {
  margin-bottom: 30px !important;
}
.index-block__subtitle {
  color: #999 !important;
}
.dark_link.link--active {
  color: var(--fill_dark_light_hover);
}
.form-control, .form-checkbox__label:not(.form-checkbox__label--sm) {
  font-size: var(--theme-font-size);
}
.index-block--fon {
  background: #f8f8f8;
  background: var(--darkerblack_bg_black);
}

@media (min-width: 992px) {
  body>.body:not(.index) > .container .maxwidth-theme {
    max-width: 1156px;
    padding: 0;
  }
}
.header-menu__dropdown-menu--grids {
  grid-template-columns: auto auto;
}
.header-menu__dropdown-menu>.dropdown {
  min-width: 290px;
}
.header__main-item.header-menu, .header__top-item.header-menu {
  margin: 0 auto !important;
}
/*.header-menu--centered .header-menu__wrapper {
  justify-content: stretch;
}*/
.header__main-item.header-menu .header-menu__item, #headerfixed .header__top-item.header-menu .header-menu__item {
  margin: 0 12px !important;
}
.side-menu .submenu-wrapper {
  display: block;
}
.services-list__item-image-wrapper--TOP {
  margin: -40px -40px 33px;
}
.services-list__item-image-wrapper--TOP .services-list__item-link, .services-list__item-image-wrapper--TOP>span {
    width: 100%;
    height: 250px;
}
.services-list__item-image.rounded-4 {
  border-radius: 4px !important;
}
.services-list__item:not(.services-list__item--has-additional-text) .services-list__item-preview {
  max-height: unset;
  -webkit-line-clamp: 20;
  -moz-line-clamp: 20;
}
.services-list__item:not(.services-list__item--has-additional-text) .services-list__item-preview ul li {
  padding-left: 20px;
}
.services-list__item:not(.services-list__item--has-additional-text) .services-list__item-preview ul li:before {
  position: absolute;
}
.tizers-list__item-image-wrapper--ICONS {
  width: 90px;
  height: 90px;
}
.project-list__item-text--color-light {
  color: #fff;
}
.staff-list.staff-list--view1 .staff-list__item-image {
  top: -5px;
}
.gallery-small .grid-list {
  grid-template-columns: repeat(auto-fill, minmax(30%, 1fr));
}
.gallery-small .item {
  padding-top: 100%;
}
.big_gallery img, .gallery img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mobileheader .line-block__item:not(.hidden)+.logo {
  max-width: 100%;
}
.footer__developer {	
  background: url(/images/ferrum_logo.png) no-repeat;
  width: 160px;
  filter: grayscale(1);
  opacity: .6;
  transition-duration: .5s;
  transition-property: filter, opacity;
}
.footer__developer:hover {
  opacity: 1;
  filter: grayscale(0);
}
.footer__developer a[href] {
  font-size: 10px;
  color: #999;
  text-decoration: none;
  padding: 15px 0 0 28px;
  display: inline-block;
  line-height: 1;
}
.grayscale {
  filter: grayscale(1);
  opacity: .4;
}
.detail img {
  object-fit: cover;
}
.lead .label {
  font-size: var(--theme-font-size);
  height: auto;
  padding: .6em 1em;
}
.contacts-detail .contacts-detail__info .contacts__col {
  width: 100%;
}

.gap {
  gap: var(--gap, 00px)
}
.gap--6 {
  --gap: 6px;
}
.gap--8 {
  --gap: 8px;
}
.gap--10 {
  --gap: 10px;
}
.gap--12 {
  --gap: 12px;
}
.gap--14 {
  --gap: 14px;
}
.gap--16 {
  --gap: 16px;
}
.gap--20 {
  --gap: 20px;
}
.gap--32 {
  --gap: 32px;
}
.gap--40 {
  --gap: 40px;
}

body .row-gap {
  row-gap: var(--row-gap, 0px) !important;
}
.row-gap--10 {
  --row-gap: 10px;
}
.row-gap--16 {
  --row-gap: 16px;
}
.row-gap--20 {
  --row-gap: 20px;
}
.row-gap--32 {
  --row-gap: 32px;
}

.object-fit-contain {
  -o-object-fit: contain !important;
  object-fit: contain !important;
}

.object-fit-cover {
  -o-object-fit: cover !important;
  object-fit: cover !important;
}

.object-fit-fill {
  -o-object-fit: fill !important;
  object-fit: fill !important;
}

.object-fit-scale {
  -o-object-fit: scale-down !important;
  object-fit: scale-down !important;
}

.object-fit-none {
  -o-object-fit: none !important;
  object-fit: none !important;
}

.mv {
  --mv: 0;
  margin-block: var(--mv);
}
.mv--20 {
  --mv: 20px;
}
.mv--24 {
  --mv: 24px;
}
.mv--32 {
  --mv: clamp(24px, 1.333vw + 0.889rem, 32px);
}
.mv--40 {
  --mv: clamp(24px, 2.667vw + 0.444rem, 40px);
}
.mv--48 {
  --mv: clamp(32px, 4vw, 48px);
}
