@charset "UTF-8";

/**
 * Swiper 11.2.6
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2025 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: March 19, 2025
 */

@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal;
}

:root {
  --swiper-theme-color: #007aff;
  /*
  --swiper-preloader-color: var(--swiper-theme-color);
  --swiper-wrapper-transition-timing-function: initial;
  */
}

:host {
  position: relative;
  display: block;
  margin-left: auto;
  margin-right: auto;
  z-index: 1;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
  display: block;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-ios .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-horizontal {
  touch-action: pan-y;
}

.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  display: block;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */

.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}

.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  backface-visibility: hidden;
}

/* 3D Effects */

.swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}

.swiper-3d .swiper-wrapper {
  transform-style: preserve-3d;
}

.swiper-3d {
  perspective: 1200px;
}

.swiper-3d .swiper-slide,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}

/* CSS Mode */

.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-css-mode.swiper-horizontal > .swiper-wrapper {
  scroll-snap-type: x mandatory;
}

.swiper-css-mode.swiper-vertical > .swiper-wrapper {
  scroll-snap-type: y mandatory;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper {
  scroll-snap-type: none;
}

.swiper-css-mode.swiper-free-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: none;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}

.swiper-css-mode.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
  scroll-snap-stop: always;
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  margin-inline-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  min-height: 1px;
  width: var(--swiper-centered-offset-after);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  margin-block-start: var(--swiper-centered-offset-before);
}

.swiper-css-mode.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  min-width: 1px;
  height: var(--swiper-centered-offset-after);
}

/* Slide styles start */

/* 3D Shadows */

.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}

.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}

.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent;
}

.swiper:not(.swiper-watch-progress) .swiper-lazy-preloader,
.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader {
  animation: swiper-preloader-spin 1s infinite linear;
}

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff;
}

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000;
}

@keyframes swiper-preloader-spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

/* Slide styles end */

:root {
  --swiper-navigation-size: 44px;
  /*
  --swiper-navigation-top-offset: 50%;
  --swiper-navigation-sides-offset: 10px;
  --swiper-navigation-color: var(--swiper-theme-color);
  */
}

.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: var(--swiper-navigation-top-offset, 50%);
  width: calc(var(--swiper-navigation-size) / 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(0px - var(--swiper-navigation-size) / 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

.swiper-button-prev.swiper-button-hidden,
.swiper-button-next.swiper-button-hidden {
  opacity: 0;
  cursor: auto;
  pointer-events: none;
}

.swiper-navigation-disabled .swiper-button-prev,
.swiper-navigation-disabled .swiper-button-next {
  display: none !important;
}

.swiper-button-prev svg,
.swiper-button-next svg {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  transform-origin: center;
}

.swiper-rtl .swiper-button-prev svg,
.swiper-rtl .swiper-button-next svg {
  transform: rotate(180deg);
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: var(--swiper-navigation-sides-offset, 10px);
  right: auto;
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}

.swiper-button-lock {
  display: none;
}

/* Navigation font start */

.swiper-button-prev:after,
.swiper-button-next:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  font-variant: initial;
  line-height: 1;
}

.swiper-button-prev:after,
.swiper-rtl .swiper-button-next:after {
  content: "prev";
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: var(--swiper-navigation-sides-offset, 10px);
  left: auto;
}

.swiper-button-next:after,
.swiper-rtl .swiper-button-prev:after {
  content: "next";
}

/* Navigation font end */

:root {
  /*
  --swiper-pagination-color: var(--swiper-theme-color);
  --swiper-pagination-left: auto;
  --swiper-pagination-right: 8px;
  --swiper-pagination-bottom: 8px;
  --swiper-pagination-top: auto;
  --swiper-pagination-fraction-color: inherit;
  --swiper-pagination-progressbar-bg-color: rgba(0,0,0,0.25);
  --swiper-pagination-progressbar-size: 4px;
  --swiper-pagination-bullet-size: 8px;
  --swiper-pagination-bullet-width: 8px;
  --swiper-pagination-bullet-height: 8px;
  --swiper-pagination-bullet-border-radius: 50%;
  --swiper-pagination-bullet-inactive-color: #000;
  --swiper-pagination-bullet-inactive-opacity: 0.2;
  --swiper-pagination-bullet-opacity: 1;
  --swiper-pagination-bullet-horizontal-gap: 4px;
  --swiper-pagination-bullet-vertical-gap: 6px;
  */
}

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: 300ms opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

.swiper-pagination-disabled > .swiper-pagination,
.swiper-pagination.swiper-pagination-disabled {
  display: none !important;
}

/* Common Styles */

.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  bottom: var(--swiper-pagination-bottom, 8px);
  top: var(--swiper-pagination-top, auto);
  left: 0;
  width: 100%;
}

/* Bullets */

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 8px));
  height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 8px));
  display: inline-block;
  border-radius: var(--swiper-pagination-bullet-border-radius, 50%);
  background: var(--swiper-pagination-bullet-inactive-color, #000);
  opacity: var(--swiper-pagination-bullet-inactive-opacity, 0.2);
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-bullet:only-child {
  display: none !important;
}

.swiper-pagination-bullet-active {
  opacity: var(--swiper-pagination-bullet-opacity, 1);
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-vertical > .swiper-pagination-bullets,
.swiper-pagination-vertical.swiper-pagination-bullets {
  right: var(--swiper-pagination-right, 8px);
  left: var(--swiper-pagination-left, auto);
  top: 50%;
  transform: translate3d(0px, -50%, 0);
}

.swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
  display: block;
}

.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px;
}

.swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 200ms transform, 200ms top;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 4px);
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap;
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms left;
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 200ms transform, 200ms right;
}

/* Fraction */

.swiper-pagination-fraction {
  color: var(--swiper-pagination-fraction-color, inherit);
}

/* Progress */

.swiper-pagination-progressbar {
  background: var(--swiper-pagination-progressbar-bg-color, rgba(0, 0, 0, 0.25));
  position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top;
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top;
}

.swiper-horizontal > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-horizontal,
.swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: var(--swiper-pagination-progressbar-size, 4px);
  left: 0;
  top: 0;
}

.swiper-vertical > .swiper-pagination-progressbar,
.swiper-pagination-progressbar.swiper-pagination-vertical,
.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite {
  width: var(--swiper-pagination-progressbar-size, 4px);
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-lock {
  display: none;
}

.swiper-grid > .swiper-wrapper {
  flex-wrap: wrap;
}

.swiper-grid-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column;
}

*,
*::before,
*::after {
  box-sizing: inherit;
}

:where(:root) {
  line-height: 1.15;
  box-sizing: border-box;
}

:where(html) {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

:where(body) {
  margin: 0;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

:where(main) {
  display: block;
}

:where(a) {
  background-color: transparent;
}

:where(p, h1, h2, h3, h4, h5, h6) {
  text-wrap: balance;
}

:where(button, input, optgroup, select, textarea) {
  line-height: inherit;
  border: 0;
  font-weight: inherit;
  font-size: inherit;
  font-family: inherit;
  color: inherit;
}

:where(button) {
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
  overflow: visible;
  text-transform: none;
  border-radius: 0;
}

:where(button, [type=button], [type=reset], [type=submit]) {
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  padding: 1px 6px;
  cursor: pointer;
}

:where(label, select, summary, [role=button], [role=option]) {
  cursor: pointer;
}

:where(input) {
  overflow: visible;
  border-radius: 0;
}

:where(fieldset) {
  margin: 0;
  padding: 0;
  border: 1px solid currentcolor;
}

:where(legend) {
  color: inherit;
  display: table;
  max-width: 100%;
  white-space: normal;
}

:where(progress) {
  display: inline-block;
  vertical-align: baseline;
}

:where(select) {
  text-transform: none;
}

:where(textarea) {
  overflow: auto;
  vertical-align: top;
  resize: vertical;
}

:where([type=checkbox], [type=radio]) {
  box-sizing: border-box;
  padding: 0;
}

:where([type=search]) {
  -webkit-appearance: textfield;
  -moz-appearance: textfield;
  appearance: textfield;
  outline-offset: -2px;
}

:where([type=color]) {
  background: inherit;
}

:where(:disabled) {
  cursor: not-allowed;
}

:where(label:has(> input:disabled),
label:has(+ input:disabled)) {
  cursor: not-allowed;
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

::input-placeholder {
  color: inherit;
  opacity: 0.5;
}

::-webkit-search-decoration,
::-webkit-file-upload-button {
  -webkit-appearance: button;
  appearance: button;
  font: inherit;
}

::-moz-focus-inner {
  border: 0;
}

:-moz-focusring {
  outline: 1px dotted ButtonText;
}

:-moz-ui-invalid {
  box-shadow: none;
}

:where(hr) {
  box-sizing: content-box;
  height: 0;
  color: inherit;
  overflow: visible;
}

:where(ol ol, ol ul, ol dl, ul ol, ul ul, ul dl, dl ol, dl ul, dl dl) {
  margin: 0;
}

:where(b, strong) {
  font-weight: bolder;
}

:where(audio, video) {
  display: inline-block;
}

:where(audio):not([controls]) {
  display: none;
  height: 0;
}

:where(img) {
  border: 0;
}

:where(img, svg, video, canvas, audio, iframe, embed, object) {
  display: block;
}

:where(img, picture, svg) {
  max-inline-size: 100%;
  block-size: auto;
}

:where(svg):not(:root) {
  overflow: hidden;
}

:where(table) {
  text-indent: 0;
  border-color: inherit;
}

:where(details) {
  display: block;
}

:where(dialog) {
  background-color: inherit;
  border: solid;
  color: inherit;
  display: block;
  height: -moz-fit-content;
  height: fit-content;
  left: 0;
  margin: auto;
  padding: 1em;
  position: absolute;
  right: 0;
  width: -moz-fit-content;
  width: fit-content;
}

:where(dialog):not([open]) {
  display: none;
}

:where(summary) {
  display: list-item;
}

:where(canvas) {
  display: inline-block;
}

:where(template) {
  display: none;
}

:where([hidden]) {
  display: none;
}

:where([hidden]:not([hidden=until-found])) {
  display: none !important;
}

:where(:focus-visible) {
  outline: 2px solid var(--focus-color, Highlight);
  outline-offset: 2px;
}

/* stylelint-disable */

/* stylelint-enable */

/**
* Remove the unit of a length
*
* @param {Number} $number - Number to remove unit from
* @return {Number} - Unitless number
*/

/**
* Returns nth property from css property list
*
* @property {map} $list List
* @property {number} $index Item index
*
* @example
*	$bottom-margin: css-nth(10px 20px 30px 40px, 3); // 30px
*	$bottom-margin: css-nth(10px 20px, 3); // 10px
*/

/**
* Remove nth elements from the list
*
* @property {map} $list List
* @property {number} $index Item index
*
* @example
*	$list: remove-nth(10px 20px 30px 40px, 3); // 10px 20px 40px
*/

/**
* In each $list pair of $breakpoint: $value replaces all values with 'inherit'
* except for one in $index position
*
* 'inherit' value when used with 'margins' or 'paddings' mixin will not produce any output
*
* @example
*	$spacer: (xs: 10px 11px 12px 13px, md: 20px 0);
*
*	$spacer-top-only: breakpointPickCssNth($spacer, 1);
* => (xs: 10px inherit inherit inherit, md: 20px inherit inherit inherit)
*	@include margins($spacer-top-only);
*
*	$spacer-bottom-only: breakpointPickCssNth($spacer, 3);
* => (xs: inherit inherit 12px inherit, md: inherit inherit 20px inherit)
*	@include paddings($spacer-bottom-only);
*/

/**
* In each $list pair of $breakpoint: $value replaces all values with 'inherit'
* except for top (first) and bottom (third) properties
*
* @example
*	$spacer: (xs: 10px 11px 12px 13px, md: 20px 0);
*
*	$spacer-top-bottom: breakpoint-pick-top-bottom($spacer);
* => (xs: 10px inherit 12px inherit, md: 20px inherit 20px inherit)
*	@include margins($spacer-top-bottom);
*/

/**
* In each $list pair of $breakpoint: $value replaces all values with 'inherit'
* except for right (second) and left (fourth) properties
*
* @example
*	$spacer: (xs: 10px 11px 12px 13px, md: 20px 0);
*
*	$spacer-left-right: breakpoint-pick-top-bottom($spacer);
* => (xs: inherit 11px inherit 13px, md: inherit 0 inherit 0)
*	@include margins($spacer-left-right);
*/

/**
* In each $list pair of $breakpoint: $value merges all values skipping 'inherit'
*
* @example
*	$list-a: (xs: 10px inherit 20px inherit, md: 30px inherit);
*	$list-b: (xs: 40px inherit inherit inherit, md: inherit 50px);
*
*	$list-result: breakpointMapMerge($list-a, $list-b);
*	// (xs: 40px inherit 20px inherit, md: 30px 50px);
*/

/**
* Returns deeply nested property from a map
*
* @function mapGetDeep Deep get for sass maps
* @author https://css-tricks.com/snippets/sass/deep-getset-maps/
* @param {Map} $map - Map
* @param {Arglist} $keys - Key chain
*
* @example
*	$paddings: mapGetDeep($grid-containers, default, paddings, xs);
*/

/**
* Mixin for object-fit plugin
*
* @see https://github.com/bfred-it/object-fit-images
* @see components/_background.scss
* @example
*	@include object-fit(contain);
*	@include object-fit(cover, top);
*/

/**
* Split string into a list
*
* @property {string} $string String
* @property {string} $separator Separator
*
* @example
*	$list: str-split("hello+world", "+"); // (hello, world)
*/

/**
* Converts SVG into data url so that this SVG could be used as a
* background image
*
* @example
*	background-image: svgtodataurl("<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100">...</svg>");
*/

/**
* Remove keys from the map
*
* @param {Map} $map - Map from which to remove items
* @param {List} $keys - List of keys which to remove
* @return {Map} - Map without the specified keys
*/

/**
* Качество рендеринга изображений
* В Chrome качество фонового изображения не самое лучшее при использовании background-size
*/

.sprite-blank {
  display: inline-block;
  vertical-align: middle;
  width: 57px;
  height: 59px;
  background: url("../images/sprites.png") 0px 0px/81px 59px no-repeat;
}

.sprite-login {
  display: inline-block;
  vertical-align: middle;
  width: 22px;
  height: 26px;
  background: url("../images/sprites.png") -59px 0px/81px 59px no-repeat;
}

@font-face {
  font-family: "Geist";
  src: url("../fonts/Geist-Bold.woff2") format("woff2"), url("../fonts/Geist-Bold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Geist";
  src: url("../fonts/Geist-ExtraLight.woff2") format("woff2"), url("../fonts/Geist-ExtraLight.woff") format("woff");
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Geist";
  src: url("../fonts/Geist-Black.woff2") format("woff2"), url("../fonts/Geist-Black.woff") format("woff");
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

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

@font-face {
  font-family: "Geist";
  src: url("../fonts/Geist-ExtraBold.woff2") format("woff2"), url("../fonts/Geist-ExtraBold.woff") format("woff");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Geist";
  src: url("../fonts/Geist-Medium.woff2") format("woff2"), url("../fonts/Geist-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Geist";
  src: url("../fonts/Geist-Regular.woff2") format("woff2"), url("../fonts/Geist-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Geist";
  src: url("../fonts/Geist-Thin.woff2") format("woff2"), url("../fonts/Geist-Thin.woff") format("woff");
  font-weight: 100;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Geist";
  src: url("../fonts/Geist-SemiBold.woff2") format("woff2"), url("../fonts/Geist-SemiBold.woff") format("woff");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "Geist";
  src: url("../fonts/Geist-Regular.woff2") format("woff2"), url("../fonts/Geist-Regular.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "TT Firs Neue";
  font-style: normal;
  font-weight: 400;
  src: local("TT Firs Neue"), url("../fonts/TT_Firs_Neue_Regular.woff") format("woff");
}

@font-face {
  font-family: "TT Firs Neue";
  font-style: normal;
  font-weight: 500;
  src: local("TT Firs Neue"), url("../fonts/TT_Firs_Neue_Medium.woff") format("woff");
}

@font-face {
  font-family: "TT Firs Neue";
  font-style: normal;
  font-weight: 700;
  src: local("TT Firs Neue"), url("../fonts/TT_Firs_Neue_DemiBold.woff") format("woff");
}

html {
  min-height: 100vh;
  height: 100%;
  min-width: 320px;
  font-family: "TT Firs Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.4;
  color: #000;
  color-scheme: dark light;
}

body {
  height: 100%;
  background-color: #fff;
}

body.menu-active {
  overflow: hidden;
}

a,
button {
  transition: 0.3s;
}

button {
  cursor: pointer;
}

a {
  color: currentColor;
}

svg {
  display: block;
  flex-grow: 0;
  flex-shrink: 0;
  flex-basis: auto;
  width: 100%;
  height: 100%;
  fill: currentColor;
}

img {
  vertical-align: top;
  height: auto;
  max-width: 100%;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

img[draggable=false] {
  pointer-events: none;
  -webkit-user-drag: none;
}

figure,
picture {
  display: inline-block;
  margin: 0;
  line-height: 0;
}

figure img,
picture img {
  width: 100%;
}

ol,
ul {
  margin: 0;
  padding: 0;
}

video {
  outline: none;
  width: 100%;
  height: 100%;
}

::-moz-selection {
  background-color: #000;
  color: #d62028;
}

::selection {
  background-color: #000;
  color: #d62028;
}

.background-default {
  background-color: #fff;
  color: #000;
}

.background-muted {
  background-color: #f3f3f3;
  color: #000;
}

.background-primary {
  background-color: #d62028;
  color: #fff;
}

.background-secondary {
  background-color: #000;
  color: #fff;
}

.text-default {
  color: #fff;
}

.text-muted {
  color: #f3f3f3;
}

.text-primary {
  color: #d62028;
}

.text-secondary {
  color: #000;
}

.text-center {
  text-align: center !important;
}

.text-right {
  text-align: right !important;
}

.text-left {
  text-align: left !important;
}

.text-uppercase {
  text-transform: uppercase;
}

.mt-0 {
  margin-bottom: 0 !important;
}

.mb-0 {
  margin-bottom: 0 !important;
}

.pt-0 {
  padding-top: 0 !important;
}

.pb-0 {
  padding-bottom: 0 !important;
}

.full-width {
  width: 100% !important;
}

.overflow-hidden {
  overflow: hidden;
}

.clearfix {
  overflow: auto;
}

.clearfix::after {
  content: "";
  display: table;
  clear: both;
}

.visually-hidden {
  position: absolute;
  overflow: hidden;
  margin: -1px;
  width: 1px;
  height: 1px;
  clip: rect(0 0 0 0);
}

.visible-laptop {
  display: none;
}

.hidden-laptop {
  display: block;
}

.list-none {
  list-style-type: none;
}

.border-top {
  border-top: 1px solid #dadada;
}

.border-right::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  background-color: #fff;
}

.background-default .border-right::after,
.background-secondary .border-right::after {
  background-color: #dadada;
}

.background-muted .border-right::after {
  background-color: #fff;
}

.border-left::before {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background-color: #fff;
}

.background-default .border-left::before,
.background-secondary .border-left::before {
  background-color: #dadada;
}

.background-muted .border-left::before {
  background-color: #fff;
}

.sticky {
  z-index: 2;
}

.section-bottom-border {
  position: relative;
  border-top: 1px solid #dadada;
  border-right: 1px solid #dadada;
  border-left: 1px solid #dadada;
  height: 40px;
  border-right: none;
  border-left: none;
}

.section-bottom-border .container {
  height: 100%;
  max-width: calc(100% - 80px);
  margin: 0 auto;
  border-right: 1px solid #dadada;
  border-left: 1px solid #dadada;
  padding: 0;
}

.section-bottom-border:before {
  content: "";
  position: absolute;
  top: -1px;
  right: 0;
  left: 0;
  width: 100vw;
  height: 1px;
  margin: 0 calc(-50vw + 50% - 8px);
  background-color: #dadada;
}

.link-hover {
  font-size: 15px;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  position: relative;
  overflow: hidden;
  text-decoration: none;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-decoration: none;
  text-align: center;
  justify-content: center;
}

.link-hover:focus:before,
.link-hover:hover:before {
  transform: translateX(0);
}

.link-hover:focus:after,
.link-hover:hover:after {
  background-position: 100% 50%;
}

.link-hover::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  transform: translateX(-100%);
  height: 2px;
  width: 100%;
  background-color: #d62028;
  transition: transform 0.5s;
}

.link-hover:after {
  content: "";
  flex-shrink: 0;
  transition: background-position 0.5s;
  width: 25px;
  height: 28px;
  display: block;
  background-repeat: no-repeat;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='25' height='15' fill='none'%3E%3Cpath fill='%23D62028' d='M1 6.5a1 1 0 1 0 0 2v-2Zm23.294 1.707a1 1 0 0 0 0-1.414L17.931.429a1 1 0 1 0-1.415 1.414L22.173 7.5l-5.657 5.657a1 1 0 0 0 1.414 1.414l6.364-6.364ZM1 8.5h22.587v-2H1v2Z'/%3E%3C/svg%3E");
  background-position: -10px 50%;
  background-size: 28px 16px;
}

.arrow-bottom {
  stroke: #d62028;
}

.arrow-bottom path {
  stroke-dashoffset: 1000px;
  stroke-dasharray: 1000px;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
  transition-delay: 0.3s;
  transition-duration: 1.5s;
}

.arrow-bottom path + path {
  transition-delay: 1s;
}

.arrow-bottom.animate__animated {
  opacity: 1;
}

.arrow-bottom.animate__animated path {
  stroke-dashoffset: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  word-break: break-word;
}

h1,
.h1 {
  font-size: 22px;
  font-weight: 500;
}

h2,
.h2 {
  font-size: 22px;
  font-weight: 500;
}

h3,
.h3 {
  font-size: 20px;
}

.h4 {
  font-size: 12px;
}

.h5 {
  font-size: 10px;
}

.h6 {
  font-size: 8px;
}

p {
  font-size: 18px;
}

[data-scrollspy] {
  opacity: 0;
}

.page-loaded .animate__animated {
  animation-duration: 1s;
  animation-fill-mode: both;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.animate__fadeIn {
  animation-name: fadeIn;
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 75%, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

.animate__fadeInUp {
  animation-name: fadeInUp;
}

@keyframes fadeInDown {
  from {
    opacity: 0;
    transform: translate3d(0, -25%, 0);
  }

  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}

.animate__fadeInDown {
  animation-name: fadeInDown;
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translate3d(100%, 0, 0);
  }

  to {
    opacity: 1;
    transform: translateZ(0);
  }
}

.animate__fadeInRight {
  animation-name: fadeInRight;
}

@keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translate3d(-100%, 0, 0);
  }

  to {
    opacity: 1;
    transform: translateZ(0);
  }
}

.animate__fadeInLeft {
  animation-name: fadeInLeft;
}

@keyframes displayIn {
  from {
    display: none;
    opacity: 0;
  }

  to {
    display: block;
    opacity: 1;
  }
}

.animate__displayIn {
  animation-name: displayIn;
  animation-duration: 0s;
}

@keyframes fadeInSplash {
  0% {
    opacity: 0;
  }

  20% {
    opacity: 1;
  }

  60% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

.animate__fadeInSplash {
  animation-name: fadeInSplash;
}

@keyframes slideInLeft {
  from {
    transform: translate3d(-20px, 0, 0);
    opacity: 0;
  }

  to {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.animate__slideInLeft {
  animation-name: slideInLeft;
}

@keyframes slideInRight {
  from {
    transform: translate3d(20px, 0, 0);
    opacity: 0;
  }

  to {
    transform: translate3d(0, 0, 0);
    opacity: 1;
  }
}

.animate__slideInRight {
  animation-name: slideInRight;
}

.article {
  padding-top: 40px;
  font-family: "Geist", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  word-break: break-word;
  font-size: 14px;
  font-weight: 300;
}

.article * {
  font-size: inherit;
}

.article ul {
  list-style-position: inside;
}

.article li {
  margin-bottom: 10px;
}

.article li::marker {
  font-size: 0.8rem;
}

.article__body {
  position: relative;
  max-width: 1000px;
  padding: 60px 72px;
}

.article__slider {
  max-width: 1000px;
  padding: 60px 0 72px;
}

.article__slider .slider-photo {
  z-index: 3;
  width: calc(100vw - 35px);
}

.article__slider .slider-photo__controls {
  display: flex;
  justify-content: center;
  gap: 40px;
  position: static;
  margin-top: 70px;
}

.article__slider + .card-contact {
  margin-right: auto;
  margin-left: auto;
  max-width: 338px;
  width: 100%;
}

.button {
  position: relative;
  display: inline-block;
  min-width: auto;
  min-height: 72px;
  font-family: "TT Firs Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  font-size: 18px;
  line-height: 1.2;
  font-weight: 400;
  padding: 25px 30px;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-decoration: none;
  text-align: center;
  background-color: #fff;
  color: #d62028;
}

.button:focus,
.button:hover,
.button:active {
  background-color: #780000;
  border-color: #000;
  color: #fff;
}

.button:focus .button__icon,
.button:hover .button__icon,
.button:active .button__icon {
  fill: #fff;
}

.button[disabled] {
  opacity: 0.3;
  pointer-events: none;
}

.button .button__icon {
  position: absolute;
  top: 50%;
  right: 18px;
  width: 17px;
  height: 17px;
  transform: translateY(-50%);
  fill: #d62028;
  transition: fill 0.3s;
}

.button.icon-left .button__icon {
  left: 18px;
  transform: translateY(-50%) rotate(180deg);
}

.button--inverse {
  background-color: transparent;
  border-color: #fff;
  color: #fff;
}

.button--inverse:focus,
.button--inverse:hover,
.button--inverse:active {
  background-color: #fff;
  border-color: #fff;
  color: #000;
}

.background-default .button--inverse:focus,
.background-default .button--inverse:hover,
.background-default .button--inverse:active {
  background-color: transparent;
  border-color: #d62028;
  color: #d62028;
}

.button--inverse:focus .button__icon,
.button--inverse:hover .button__icon,
.button--inverse:active .button__icon {
  fill: #000;
}

.background-default .button--inverse:focus .button__icon,
.background-default .button--inverse:hover .button__icon,
.background-default .button--inverse:active .button__icon {
  fill: #d62028;
}

.button--inverse .button__icon {
  fill: #fff;
}

.button--inverse-secondary {
  background-color: transparent;
  border-color: #d62028;
  color: #d62028;
}

.button--inverse-secondary .button__icon {
  fill: #d62028;
}

.button--primary {
  background-color: #d62028;
  border-color: #d62028;
  color: #fff;
}

.button--primary:focus,
.button--primary:hover,
.button--primary:active {
  background-color: #780000;
  border-color: #000;
}

.background-secondary .button--primary:focus,
.background-secondary .button--primary:hover,
.background-secondary .button--primary:active {
  border-color: #fff;
}

.button--primary .button__icon {
  fill: #fff;
}

.button--secondary {
  border-color: #000;
  background-color: #000;
  color: #fff;
}

.button--secondary:focus,
.button--secondary:hover,
.button--secondary:active {
  background-color: #d62028;
  border-color: #d62028;
}

.button--secondary .button__icon {
  fill: #fff;
}

.card-feature {
  background-color: #fff;
  border: 1px solid #d62028;
  width: 100%;
  box-shadow: 0 4px 45px 0 rgba(0, 0, 0, 0.0784313725);
}

.card-feature__header {
  position: relative;
  background-color: #d62028;
  padding: 16px;
  font-size: 20px;
  text-align: center;
  color: #fff;
}

.card-feature__header h3 {
  font-weight: 500;
  margin-bottom: 0;
}

.card-feature__icon {
  display: none;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background-color: #fff;
  fill: #d62028;
}

.card-feature__icon svg {
  height: 36px;
  fill: #d62028;
}

.card-feature__body {
  padding: 30px;
  min-height: 260px;
}

.card-feature .card-feature__list-item {
  font-size: 15px;
  gap: 20px;
}

.card-link {
  display: block;
  max-width: 400px;
  box-shadow: 0 0 15px 5px rgba(0, 0, 0, 0.2);
  text-decoration: none;
}

.card-link:focus .card-link__body,
.card-link:hover .card-link__body,
.card-link:active .card-link__body {
  background-color: #d62028;
  color: #fff;
  transition: all 0.2s;
}

.card-link:focus .card-link__body svg,
.card-link:hover .card-link__body svg,
.card-link:active .card-link__body svg {
  border-radius: 50%;
  background-color: #780000;
  display: block;
  fill: #fff;
  transition: all 0.2s;
}

.card-link__image {
  width: 100%;
  height: 229px;
  -o-object-fit: cover;
  object-fit: cover;
}

.card-link__body {
  display: flex;
  align-content: center;
  justify-content: space-between;
  padding: 50px;
  font-family: "Geist", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  font-size: 28px;
  font-weight: 500;
  text-decoration: none;
  color: #d62028;
  gap: 10px;
  transition: all 0.2s;
}

.card-link__body > div {
  min-height: 52px;
  line-height: 1.7;
}

.card-link__body svg {
  border-radius: 50%;
  flex-shrink: 0;
  width: 52px;
  height: 52px;
  fill: #780000;
  transition: all 0.2s;
}

.card-news-slider {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  background-color: #fff;
  color: #d62028;
  box-shadow: 0 0 15px 5px rgba(0, 0, 0, 0.1);
}

.card-news-slider img {
  flex-shrink: 0;
  height: 156px;
  -o-object-fit: cover;
  object-fit: cover;
}

.card-news-slider h3 {
  font-weight: 500;
}

.card-news-slider a {
  margin-top: auto;
  font-weight: 600;
}

.card-news-slider__body {
  display: flex;
  flex-direction: column;
  padding: 20px;
  height: 100%;
}

.card-news__date {
  position: absolute;
  background-color: #d62028;
  bottom: 0;
  right: 0;
  height: 40px;
  max-width: 300px;
  min-width: 66%;
  color: #fff;
  padding: 10px 12px;
  color: #fff;
  font-size: 16px;
  text-align: center;
}

.card-news__header {
  position: relative;
}

.card-news__body {
  padding: 25px 10%;
}

.card-news__body h3 {
  font-weight: 500;
  color: #d62028;
}

.card-news__body p {
  font-size: 14px;
  line-height: 1.9;
  font-weight: 300;
  font-family: "Geist", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
}

.card-news__footer a {
  font-family: "TT Firs Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  color: #d62028;
  font-weight: 300;
  font-size: 18px;
  letter-spacing: -0.3px;
}

.card-news__footer {
  padding: 0 10% 10%;
}

.card-news__header img {
  width: 100%;
  height: 180px;
  -o-object-fit: cover;
  object-fit: cover;
}

.card-news {
  width: 100%;
}

.card-why {
  min-height: 400px;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 38px 38px 120px;
  transition: all 0.2s;
}

.card-why:after {
  content: " ";
  background: radial-gradient(40.97% 209.48% at 64.03% 59.03%, rgba(255, 255, 255, 0.79) 0%, rgba(255, 255, 255, 0.82) 58%, #fff 100%);
  position: absolute;
  height: 100%;
  width: 100%;
  z-index: 1;
  top: 0;
  left: 0;
  opacity: 0.9;
}

.card-why > * {
  position: relative;
  z-index: 2;
}

.card-why-tabs {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 3;
  bottom: 40px;
  display: flex;
  width: 100%;
  justify-content: center;
}

.card-why h3 {
  font-weight: 500;
  color: #d62028;
  font-size: 20px;
  margin-bottom: 20px;
  line-height: 25px;
}

.card-why p {
  font-size: 14px;
  font-family: "Geist", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  font-weight: 300;
  margin: 0;
  line-height: 22px;
}

.card-why-tabs__tab-button {
  flex-shrink: 0;
  background-color: #dadada !important;
  border-radius: 50%;
  color: #fff;
  height: 39px;
  width: 39px;
  font-size: 22px;
  font-weight: 500;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.2);
}

.card-why-tabs__tab-button:focus,
.card-why-tabs__tab-button:hover,
.card-why-tabs__tab-button:active,
.card-why-tabs__tab-button.is-active {
  background-color: #d62028 !important;
}

.card-why-tabs__tab-button:not(:last-child) {
  margin-right: 22px;
}

.card {
  max-width: 405px;
  padding: 25px;
  box-shadow: 0 4px 45px 0 rgba(0, 0, 0, 0.0784313725);
  background-color: #fff;
}

.card h3 {
  font-weight: 500;
  font-family: "Geist", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  font-size: 28px;
  margin-bottom: 40px;
}

.card p {
  font-size: 15px;
}

.card--contact {
  background-color: #d62028;
  color: #fff;
}

.card--contact h3 {
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 10px;
}

.card--contact p {
  font-size: 16px;
  margin-top: 10px;
  margin-bottom: 10px;
  font-weight: 300;
  font-family: "Geist", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
}

.card--contact b {
  font-weight: 300;
  font-size: 18px;
}

.card--contact__section {
  margin-top: 50px;
}

.card--contact__section a {
  text-decoration: none;
  border-bottom: 1px solid #fff;
}

.card--contact__section a:focus,
.card--contact__section a:hover {
  border-bottom: 1px solid transparent;
}

.card__body {
  padding: 24px 40px;
}

.card__footer {
  padding-top: 42px;
}

.card-aside {
  max-width: 480px;
  padding: 52px;
}

.card-contact {
  z-index: 4;
  width: 334px;
  padding: 35px;
  box-shadow: 0px 4px 46.7px 0px rgba(214, 32, 40, 0.3019607843);
}

.card-contact h3 {
  font-weight: 500;
}

.card-contact .card__footer {
  padding-right: 0;
  padding-left: 0;
}

.card.card--service {
  display: flex;
  flex-direction: column;
  background-color: #fff;
  padding: 0;
  text-decoration: none;
  box-shadow: 0px 4px 46.7px 10px rgba(0, 0, 0, 0.1);
}

.card.card--service:focus .card__body,
.card.card--service:hover .card__body {
  background-color: #d62028;
  color: #fff;
}

.card.card--service:focus h3,
.card.card--service:hover h3 {
  color: #fff;
}

.card.card--service h3 {
  font-size: 20px;
  font-family: "TT Firs Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  margin-bottom: 0;
  color: #d62028;
  transition: color 0.2s;
}

.card.card--service p {
  font-weight: 300;
  font-family: "Geist", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  transition: color 0.2s;
}

.card.card--service .card__body {
  height: 100%;
  background-color: #fff;
  transition: background-color 0.2s;
}

.card__text {
  padding: 30px 39px;
  background-color: #fff;
}

.card__text h4 {
  font-size: 20px;
  color: #d62028;
  font-weight: 500;
  margin-bottom: 4px;
}

.card__text p {
  font-size: 14px;
  font-weight: 300;
  margin: 0;
}

.news-slide {
  height: 234px;
  width: 156px;
}

.services-card {
  height: 100%;
}

.card__text a {
  display: none;
}

.clients {
  border-bottom: 1px solid #dadada;
}

.clients__inner {
  position: relative;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding: 24px 40px 0;
}

.clients__inner img {
  width: 50%;
  max-width: 120px;
}

.container-sm {
  max-width: 768px;
}

.container-md {
  max-width: 1024px;
}

.container-lg {
  max-width: 1200px;
}

.container {
  max-width: 1920px;
}

[class^=container] {
  width: 100%;
  padding-right: 40px;
  padding-left: 40px;
  margin-right: auto;
  margin-left: auto;
}

.footer {
  background-color: #1e1e1e;
  color: #fff;
}

.footer-contact__item {
  margin-bottom: 40px;
}

.footer-contact__item h3 {
  font-size: 14px;
  line-height: 22px;
  margin-bottom: 0;
}

.footer-contact__item p {
  font-size: 14px;
  color: #fff;
  font-weight: 500;
  margin-top: 0;
  margin-bottom: 0;
}

.middle-col .footer-contact__item p {
  font-size: 16px;
  margin-bottom: 6px;
}

.footer-contact__item a {
  color: #fff;
  text-decoration: none;
}

.footer-contact__item a:focus,
.footer-contact__item a:hover {
  color: #d62028;
}

.footer__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 75px 0;
}

.footer__column {
  width: 100%;
  text-align: center;
}

.footer .middle-col a {
  font-size: 16px;
}

.footer .middle-col .footer-contact__item {
  margin-bottom: 35px;
}

.footer .middle-col .footer-contact__item:first-child {
  margin-bottom: 35px;
}

.footer .middle-col .footer-contact__item h3 {
  margin-bottom: 16px;
}

.footer .right-col p {
  text-align: center;
  font-size: 16px;
  margin-bottom: 10px;
}

.footer .right-col .footer-logo {
  display: flex;
  justify-content: center;
  align-items: center;
}

.footer .left-col .footer-logo img {
  max-width: 160px;
  margin: 0 auto;
}

.footer .right-col .footer-contact__item {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  margin-bottom: 40px;
  gap: 10px;
}

.footer .right-col a svg {
  width: 32px;
  height: 32px;
}

.footer .right-col .footer-logo img:first-child {
  margin-right: 60px;
  height: 80px;
}

.footer .left-col {
  margin-bottom: 45px;
}

.footer .right-col .footer-logo img:nth-child(2) {
  height: 35px;
  width: auto;
}

.form-control {
  display: inline-block;
  position: relative;
  width: 100%;
  margin-bottom: 30px;
}

.form-control input,
.form-control textarea {
  width: 100%;
}

.form-control.icon-left .form-icon {
  left: 0;
}

.form-control.icon-left .input {
  padding-left: 48px;
}

.form-control.icon-right .form-icon {
  right: 0;
}

.form-control.icon-right .input {
  padding-right: 48px;
}

.form-group {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
}

.form-group .label {
  display: block;
  width: 100%;
}

.form-icon {
  position: absolute;
  top: 0;
  width: 32px;
  height: 100%;
  background: none;
  border: 0;
}

.form--contact {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.form--contact .button {
  padding-right: 62px;
  padding-left: 62px;
  margin-right: auto;
  margin-left: auto;
}

.form--contact .form-group {
  display: flex;
  width: 100%;
}

.form--contact + .card--contact {
  margin: 80px auto 0;
}

.header {
  position: relative;
  z-index: 5;
  display: flex;
  align-items: center;
  border-bottom: 1px solid #fff;
}

.header__inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.header__inner-wrap {
  background-color: #f3f3f3;
  display: flex;
  align-items: center;
}

.header__logo {
  position: relative;
  transition: none;
  width: 141px;
  height: 35px;
}

.menu-active .header__logo:after {
  display: none;
}

.menu-active .header__logo,
.header__logo.splash-active {
  z-index: 11;
  border: 1px solid transparent;
  filter: brightness(0) invert(1);
}

.header__menu-toggle {
  flex-shrink: 0;
  width: 78px;
  height: 78px;
  background-color: #d62028;
}

.header__menu {
  background-color: #d62028;
}

.lang {
  list-style-type: none;
  display: flex;
  align-items: center;
}

.lang li {
  display: flex;
  align-items: center;
}

.lang li:not(:last-child)::after {
  content: "/";
  margin-left: 5px;
  font-size: 18px;
  margin-right: 5px;
}

.lang li a {
  font-size: 20px;
  text-decoration: none;
}

.lang li a:focus,
.lang li a:hover,
.lang li a:active {
  text-decoration: underline;
}

.header .header-container {
  padding-right: 0;
}

.header__lang {
  display: none;
}

.menu-active .header__lang {
  z-index: 11;
  color: #fff;
  border-left: 1px solid transparent;
  margin-left: 0;
}

.hero {
  overflow: hidden;
  background: linear-gradient(180deg, rgb(238, 238, 238) 0%, rgb(238, 238, 238) 75%, rgb(255, 255, 255) 75%, rgb(255, 255, 255) 100%);
}

.hero__list {
  list-style-type: none;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
}

.hero__list li a {
  display: flex;
  align-items: center;
  gap: 15px;
  text-decoration: none;
  padding: 10px 0;
  border-radius: 100px;
}

.hero__list svg {
  height: 35px;
  width: 30px;
  flex-shrink: 0;
  fill: #d62028;
}

.hero__list li p {
  font-size: 15px;
  margin: 0;
}

.hero__inner {
  position: relative;
}

.hero__text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 32px 40px;
}

.hero__text h1 {
  letter-spacing: 0.3px;
  max-width: 500px;
}

.hero__image {
  position: relative;
  min-height: 312px;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.hero__image img {
  position: relative;
  width: 100%;
  height: 312px;
  -o-object-fit: cover;
  object-fit: cover;
}

.hero__image::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  left: auto;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, rgba(238, 238, 238, 0.5) 0%, rgba(238, 238, 238, 0.25) 50%, transparent 100%);
}

.input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: "Geist", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  padding: 27px 16px;
  font-weight: 400;
  font-size: 16px;
  line-height: 18px;
  background-color: #eee;
  color: #000;
}

.input:focus,
.input:focus-visible {
  border-color: #000;
  outline-color: #000;
}

.input:hover {
  border-color: #000;
}

.input:active {
  border-color: #000;
}

.input[disabled] {
  opacity: 0.3;
  pointer-events: none;
}

.input::-moz-placeholder {
  opacity: 1;
  -moz-transition: 0.3s;
  transition: 0.3s;
  color: #000;
}

.input::placeholder {
  opacity: 1;
  transition: 0.3s;
  color: #000;
}

.label {
  font-family: "Geist", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  font-weight: 300;
  font-size: 18px;
  color: #000;
  margin-bottom: 10px;
}

.list {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 26px;
  font-size: 20px;
}

.list.list--services {
  gap: 30px;
  line-height: 1;
  font-size: 15px;
  word-break: break-all;
}

.list.list--services li {
  font-weight: 400;
}

.list li {
  display: flex;
  align-items: center;
  gap: 15px;
  font-family: "Geist", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  font-weight: 200;
}

.list li::before {
  content: "";
  display: block;
  flex-shrink: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 8.5px 14px;
  border-color: transparent transparent #d62028;
  transform: rotate(90deg);
}

.background-primary .list li::before {
  border-color: transparent transparent #fff;
}

.splash {
  display: none;
  opacity: 0;
  z-index: -1;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 32px;
  color: #fff;
  background-image: url(../images/menu.jpg);
  background-repeat: no-repeat;
  background-position: 50%;
  background-size: cover;
  transition: all 0.3s;
}

.splash.active {
  z-index: 200;
  animation: fadeInSplash 4s;
  animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
}

.splash__logo {
  position: absolute;
  top: 50px;
  margin: 0 auto;
  right: 0;
  left: 0;
}

.splash__title {
  max-width: 250px;
  text-align: center;
}

.menu-toggle__text {
  display: none;
  position: absolute;
  top: calc(50% - 8px);
  right: 70px;
  color: #fff;
}

.menu-active .menu-toggle__text {
  display: block;
}

.menu-toggle {
  display: flex;
  justify-content: center;
  align-items: center;
  width: inherit;
  height: inherit;
  padding: 0;
  background: none;
  border: 0;
}

.menu-toggle:focus,
.menu-toggle:focus-visible {
  outline: none;
}

.menu-active .menu-toggle {
  z-index: 10;
  position: relative;
  display: flex;
}

.menu-icon {
  width: 41px;
  height: 41px;
  position: relative;
  cursor: pointer;
  transform: scale(0.8) rotate(0deg);
  transition: all 0.5s ease-in-out;
}

.menu-icon:focus .menu-icon__line:nth-child(2),
.menu-icon:focus .menu-icon__line:nth-child(3),
.menu-icon:hover .menu-icon__line:nth-child(2),
.menu-icon:hover .menu-icon__line:nth-child(3),
.menu-icon:active .menu-icon__line:nth-child(2),
.menu-icon:active .menu-icon__line:nth-child(3) {
  width: 41px;
}

.menu-toggle:not(.active) .menu-icon {
  bottom: -4px;
}

.menu-icon .menu-icon__line {
  display: block;
  position: absolute;
  height: 5px;
  width: 100%;
  background: white;
  border-radius: 3px;
  opacity: 1;
  left: 0;
  transform: rotate(0deg);
  transition: all 0.5s ease-in-out;
}

.menu-icon .menu-icon__line:nth-child(1) {
  top: 0;
}

.menu-icon .menu-icon__line:nth-child(2) {
  top: 14px;
  width: 28px;
}

.menu-icon .menu-icon__line:nth-child(3) {
  top: 28px;
  width: 36px;
}

.menu-toggle.active .menu-icon__line:nth-child(1) {
  top: 18px;
  transform: rotate(135deg);
}

.menu-toggle.active .menu-icon__line:nth-child(2) {
  opacity: 0;
  left: -60px;
  width: 41px;
}

.menu-toggle.active .menu-icon__line:nth-child(3) {
  top: 18px;
  transform: rotate(-135deg);
  width: 41px;
}

.menu {
  z-index: 10;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: flex-start;
  transform: translateX(-100%);
  transition-property: transform, opacity;
  transition-duration: 0.6s;
  height: 100%;
  flex-direction: column;
  align-items: center;
}

.menu > .menu__list {
  padding-top: 0;
  margin-top: 160px;
  overflow-y: auto;
}

.menu__lang {
  margin-top: 20px;
  font-size: 18px;
  color: #fff;
}

.menu__lang li:not(:last-child)::after {
  margin-right: 12px;
  margin-left: 12px;
}

.menu--closed {
  position: fixed;
  background-color: #d62028;
  transform: translateX(-100%);
  padding: 0 20px;
  height: 100%;
  width: 100%;
  color: #000;
}

.menu__list {
  position: relative;
  display: flex;
  align-items: baseline;
  flex-direction: column;
  list-style-type: none;
  gap: 32px;
  text-align: center;
  padding-top: 160px;
}

.menu-active .menu__list {
  display: block;
  width: 100%;
  text-align: center;
  max-width: 1920px;
}

.menu__list .menu__list {
  display: none;
}

.menu-active .menu__list .menu__list {
  -moz-column-count: 1;
  column-count: 1;
  padding-top: 30px;
  margin-bottom: -30px;
}

.menu__link {
  z-index: 1;
  position: relative;
  text-decoration: none;
  font-weight: 300;
  color: #fff;
  font-size: 24px;
  letter-spacing: 0.5px;
  background: none;
  border: 0;
  padding: 0;
  border-bottom: 1px solid transparent;
}

.menu__link:focus,
.menu__link:hover,
.menu__link:active,
.menu__link.active {
  border-bottom: 1px solid #fff;
}

.menu__link.active + .menu__list.active {
  display: block;
}

.menu__link.active {
  font-weight: 500;
}

.menu-active .menu__link {
  font-size: 28px;
  transition: none;
}

.menu__link.dropdown.active {
  font-weight: 600;
  color: #780000;
  opacity: 1 !important;
  border-bottom: 1px solid #780000 !important;
}

.menu-active .menu__item {
  margin-bottom: 30px;
}

.menu__item--submenu .menu__link {
  border-bottom: 0;
}

.menu__item--submenu .menu__list .menu__link:hover {
  border-bottom: 1px solid #fff;
}

.menu__item--submenu > a.menu__link {
  display: none;
}

.menu.menu--open {
  position: fixed;
  background-color: #d62028;
  transform: translateX(0);
  transition-property: all;
  transition-duration: 0.6s;
}

.menu.menu--open .menu__item--submenu > button.menu__link {
  display: block;
  margin: 0 auto;
}

.navbar__link {
  font-weight: 600;
  text-decoration: none;
}

.navbar__link:focus,
.navbar__link:hover,
.navbar__link:active {
  color: #d62028;
}

.navbar__list {
  display: flex;
  align-items: center;
  flex-direction: column;
  list-style-type: none;
  gap: 32px;
}

.news-list {
  display: grid;
  grid-template-columns: 1fr;
  list-style-type: none;
  gap: 40px;
}

.news-list__item {
  box-shadow: 0px 4px 46.7px 0px rgba(0, 0, 0, 0.1490196078);
}

.page-header {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 0, 50%;
}

.page-header--news-item .page-header__text {
  padding-right: 0;
  padding-left: 0;
}

.page-header--news-item .page-header__text h1,
.page-header--news-item .page-header__text h2,
.page-header--news-item .page-header__text h3,
.page-header--news-item .page-header__text h4,
.page-header--news-item .page-header__text h5,
.page-header--news-item .page-header__text h6,
.page-header--news-item .page-header__text p {
  padding-right: 25px;
  padding-left: 25px;
}

.page-header--news .page-header__aside > * {
  margin-right: 0 !important;
  margin-left: auto !important;
  box-sizing: border-box !important;
  margin-bottom: 0;
}

.page-header__inner {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  padding-right: 40px;
  padding-left: 40px;
  width: 100%;
  max-width: 1472px;
}

.page-news .card-contact {
  margin-right: auto;
  margin-left: auto;
  width: 100%;
  max-width: 334px;
}

.page-news__wrap {
  position: relative;
}

.page-news__wrap:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 1px;
  height: 100%;
  background-color: #dadada;
}

.page-news__wrap:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 1px;
  height: 100%;
  background-color: #dadada;
}

.page-header__text {
  position: relative;
  text-align: left;
  padding: 40px 25px;
  border-right: 1px solid #fff;
  border-left: 1px solid #fff;
}

.page-header__text h1 {
  margin-bottom: 32px;
}

.page-header__text p {
  font-family: "Geist", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  font-weight: 300;
  line-height: 1.9;
  margin: 0;
}

.page-header__aside {
  width: 100%;
  border-right: 1px solid #fff;
  border-left: 1px solid #fff;
}

.page-header__aside > * {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 40px;
}

.page-header__aside .card-contact {
  width: 100%;
  max-width: 334px;
}

.page-header--contact .page-header__aside .card {
  z-index: 1;
  box-shadow: 0px 4px 46.7px 0px rgba(214, 32, 40, 0.3019607843);
}

.page-header--contact .page-header__aside .card > * {
  max-width: 338px;
  -moz-column-break-inside: avoid;
  break-inside: avoid-column;
}

.page-header__photo {
  position: relative;
}

.page-header__photo img {
  -o-object-fit: cover;
  object-fit: cover;
  height: 326px;
  width: 100%;
}

.page-header__news-date {
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 20px 54px;
  font-size: 20px;
}

.page-header__text h1 {
  font-size: 24px;
  font-weight: 500;
}

.page-header__text p {
  font-size: 14px;
  font-weight: 300;
  line-height: 1.9;
}

.page-header--news-item .page-header__aside:after {
  display: none;
}

.page-header--news .page-header__aside {
  display: none;
}

.page-header--slider {
  overflow: hidden;
}

.page-header--slider .page-header__text {
  max-width: 100%;
}

.page-header--slider .swiper-button-prev {
  position: absolute;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.2);
  left: 31px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.page-header--slider .swiper-button-next {
  position: absolute;
  box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.2);
  right: 31px;
  top: 0;
  bottom: 0;
  margin: auto;
}

.page-header--slider .page-header__aside {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
  position: relative;
  width: 100%;
}

.page-header--slider .page-header__inner {
  gap: 0;
}

.page-header--slider h1 {
  font-size: 28px;
}

.page-header--slider p {
  font-size: 14px;
}

.page-header--image .page-header__inner {
  gap: 0;
  min-height: 430px;
}

.page-header__image img {
  width: 100%;
}

.page-news__inner {
  padding-top: 50px;
  padding-right: 25px;
  padding-bottom: 40px;
  padding-left: 25px;
}

.page-news-item {
  overflow: hidden;
}

.page-news-item article {
  padding-bottom: 100px;
}

.page-news-item__inner {
  position: relative;
  max-width: 1040px;
  padding-right: 35px;
  padding-left: 35px;
  padding-bottom: 40px;
}

.page-news-item .page-news-item__wrap {
  border-right: 0;
}

.pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 40px 0;
  font-family: "Geist", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  font-weight: 300;
  font-size: 18px;
}

.pagination--current {
  color: #000;
}

.pagination__link {
  display: block;
  padding-right: 8px;
  padding-left: 8px;
  text-align: center;
}

.pagination__link:focus,
.pagination__link:hover,
.pagination__link:active {
  color: #d62028;
}

.pagination__list {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  list-style-type: none;
}

.pagination__list a {
  text-decoration: none;
}

.pagination__next:focus,
.pagination__next:hover,
.pagination__next:active,
.pagination__prev:focus,
.pagination__prev:hover,
.pagination__prev:active {
  color: #d62028;
}

.scribble {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

.scribble svg {
  position: absolute;
  top: 70%;
  width: 100%;
  height: 100%;
  stroke: #d62028;
}

.scribble svg path {
  stroke-dashoffset: 1000px;
  stroke-dasharray: 1000px;
  transition: stroke-dashoffset 1s cubic-bezier(0.47, 0, 0.745, 0.715) 0s;
  transition-delay: 0.3s;
  transition-duration: 1.5s;
  stroke-width: 2px !important;
}

.scribble .animate__animated {
  opacity: 1;
}

.scribble .animate__animated path {
  stroke-dashoffset: 0;
}

.section-benefits {
  position: relative;
  overflow: hidden;
  min-height: 680px;
}

.section-benefits h2 {
  position: relative;
  z-index: 1;
  margin-bottom: 50px;
  padding-right: 40px;
  padding-left: 40px;
}

.section-benefits [data-tab-content] {
  background-repeat: no-repeat;
  background-size: contain;
}

.section-benefits .windmills {
  position: absolute;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  background-image: url("../images/windmills.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 85% 0;
}

.section-benefits .sun {
  position: absolute;
  top: 20%;
  left: -40%;
  width: 440px;
  height: 360px;
  background-image: url("../images/sun.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.section-benefits .cloud1 {
  position: absolute;
  top: -25%;
  width: 416px;
  left: -50%;
  height: 232px;
  background-image: url("../images/cloud1.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.section-benefits .cloud2 {
  position: absolute;
  top: -50%;
  width: 376px;
  left: 19%;
  height: 212px;
  background-image: url("../images/cloud2.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.section-benefits .cloud3 {
  position: absolute;
  top: -20%;
  left: 59%;
  width: 284px;
  height: 160px;
  background-image: url("../images/cloud3.png");
  background-size: contain;
  background-repeat: no-repeat;
}

.section-benefits__cards {
  z-index: 3;
  display: flex;
  gap: 60px;
  position: relative;
  margin-right: -20px;
  margin-left: -20px;
}

.section-benefits__cards > * {
  width: 100%;
}

.section-benefits__cards + .cards-tabs {
  z-index: 4;
  margin-right: -20px;
  margin-left: -20px;
  width: auto;
}

.section-benefits__inner {
  min-height: 680px;
  position: relative;
  max-width: 1630px;
  margin-right: auto;
  margin-left: auto;
  padding: 50px 0 40px;
}

.section-benefits__links {
  z-index: 1;
  position: relative;
  margin-top: 30px;
  text-align: center;
  font-weight: 600;
  font-family: "Geist", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  font-size: 20px;
  color: #d62028;
  text-decoration: none;
}

.section-benefits__links a {
  font-size: 15px;
  max-width: 234px;
  width: 100%;
  margin: 0 auto;
  background-color: #d62028;
  color: #fff;
  font-weight: 400;
  text-decoration: none;
  padding: 18px 40px;
}

.section-benefits__links a:after {
  display: none;
}

.cards-tabs {
  display: flex;
  justify-content: space-between;
  gap: 20px;
  width: 100%;
  border: 1px solid #d62028;
  border-top: 0;
  padding: 20px;
  background-color: #fff;
  margin-top: -1px;
  position: relative;
}

.cards-tabs__tab-button {
  padding: 0 0 10px;
  border-bottom: 3px solid #dadada;
}

.cards-tabs__tab-button.is-active {
  border-color: #d62028;
}

.cards-tabs__tab-button.is-active svg {
  fill: #d62028;
}

.cards-tabs__tab-button svg {
  fill: #dadada;
  height: 32px;
  pointer-events: none;
}

.section-contact-us {
  border-top: 1px solid #dadada;
  border-bottom: 1px solid #dadada;
}

.poster-wrap {
  padding: 30px 37px 0;
  display: flex;
  flex-direction: column-reverse;
  position: relative;
  height: 325px;
}

.poster-wrap img {
  margin-left: -50%;
  width: auto;
  height: 315px;
  z-index: 1;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: top;
  object-position: top;
}

.poster__actions a:focus,
.poster__actions a:hover {
  text-decoration: none;
}

.poster__actions a:not(.button) {
  text-decoration: none;
}

.poster__actions a:not(.button):focus,
.poster__actions a:not(.button):hover {
  text-decoration: underline;
}

.poster__text .button {
  min-height: 54px;
  padding: 18px 17px;
  max-width: 242px;
  font-size: 14px;
  margin-bottom: 30px;
}

.poster__text h2 {
  font-size: 18px;
  margin-bottom: 20px;
  text-align: left;
}

.poster__actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.poster__text {
  z-index: 3;
  position: absolute;
  display: flex;
  flex-direction: column;
  top: 0;
  bottom: 0;
  height: 100%;
  max-width: 62%;
  align-items: flex-start;
  padding-right: 20px;
  right: 0;
  justify-content: center;
}

.section-contact {
  overflow: hidden;
}

.section-contact .container {
  position: relative;
}

.section-contact__form {
  position: relative;
  max-width: 1000px;
  padding: 40px 25px;
}

.section-equipment .card-link .card-link__body {
  padding: 14px;
  font-size: 20px;
  font-weight: 500;
  height: 60px;
  align-items: center;
}

.section-equipment .title {
  min-height: auto;
}

.card-link svg {
  width: 40px;
  height: 40px;
}

.section-equipment__cards h2 {
  font-size: 22px;
  margin-bottom: 30px;
}

.section-equipment__cards-wrap {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 40px;
}

.section-equipment__cards {
  position: relative;
  padding: 40px;
}

.section-news .slider-news {
  margin-right: -82px;
  padding-right: 82px;
}

.section-news h2 {
  margin-bottom: 20px;
}

.section-news__inner {
  display: flex;
  flex-wrap: wrap;
  padding: 38px 42px 120px;
}

.section-news__inner h2 {
  width: 100%;
}

.section-news__list {
  position: relative;
  padding-top: 40px;
  width: 100%;
  order: 2;
}

.section-news__list .slider-news {
  margin-top: -20px;
  margin-bottom: -20px;
  padding-top: 20px;
  padding-bottom: 20px;
}

.section-news__title {
  width: 100%;
}

.section-news__title h3 {
  font-family: "Geist", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  font-weight: 400;
  margin-bottom: 0;
}

.section-specs {
  overflow: hidden;
}

.section-specs__header h2 {
  font-size: 18px;
}

.section-specs__title-wrap {
  position: relative;
  padding: 40px;
  width: 100%;
}

.section-specs__body {
  padding: 40px;
  width: 100%;
  border-top: 1px solid #dadada;
}

.section-specs__title-wrap h2 {
  font-size: 20px;
  line-height: 1.4;
  margin-bottom: 0;
}

.section-specs__header .section-specs__body h3 {
  color: #d62028;
  font-size: 20px;
  font-weight: 500;
}

.section-specs__header .section-specs__body .list {
  gap: 15px;
}

.section-specs__header .section-specs__body .list li {
  gap: 8px;
  font-size: 18px;
}

.section-specs__header .section-specs__body .list li::before {
  border-width: 0 5px 8px;
}

.section-specs__header {
  position: relative;
}

.section-why__cards {
  display: flex;
  flex-wrap: wrap;
}

.section-why__cards:after {
  content: "";
  position: absolute;
  z-index: 1;
  bottom: 0;
  right: 0;
  left: -40px;
  width: calc(100% + 80px);
  height: 1px;
  background-color: #dadada;
}

.section-why {
  border-top: 1px solid #dadada;
}

.counter-list {
  counter-reset: my-counter;
  list-style-type: none;
}

.counter-list li {
  position: relative;
}

.counter-list li::before {
  counter-increment: my-counter;
  content: counter(my-counter);
  position: absolute;
  background-color: #d62028;
  color: #fff;
  font-weight: 500;
  text-align: center;
  z-index: 2;
  border-radius: 50%;
  height: 35px;
  width: 35px;
  padding: 3px;
  font-size: 22px;
  top: 44px;
  left: -17px;
  transition: background-color 0.2s;
}

.section-why__header {
  display: flex;
  flex-direction: column-reverse;
  position: relative;
}

.section-why__cards-wrap {
  position: relative;
  margin-bottom: 40px;
}

.section-why__cards-wrap.border-left:before {
  left: -1px;
}

.section-why__cards-wrap:before {
  height: calc(100% + 40px);
}

.section-why__cards-wrap:after {
  height: calc(100% + 40px);
}

.section-why .section-why__header h2 {
  font-size: 22px;
  font-weight: 500;
  margin-bottom: 17px;
}

.section-why .section-why__header p {
  font-family: "Geist";
  font-size: 14px;
  font-weight: 300;
  margin: 0;
  line-height: 22px;
}

.section-why__text {
  padding: 40px;
  min-height: 274px;
  position: relative;
}

.section-why__text:after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  left: -40px;
  width: calc(100% + 80px);
  height: 1px;
  background-color: #dadada;
}

.section-why__contact-wrap {
  position: relative;
  display: flex;
  position: relative;
  margin-left: -40px;
  margin-right: -40px;
  width: calc(100% + 80px);
}

.section-why__contact-wrap::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 1px;
  background-color: #dadada;
}

.section-why__contact-wrap img {
  position: absolute;
  height: 243px;
  width: auto;
  z-index: 2;
  bottom: 0%;
  left: 5%;
}

.section-why__link-wrap {
  padding: 27px 11px 27px 48%;
  width: 100%;
  background-color: #f3f3f3;
  font-size: 14px;
  min-height: 233px;
}

.section-specs__title-wrap .arrow-bottom,
.section-why__header .arrow-bottom {
  position: absolute;
  z-index: 4;
  height: 100px;
  bottom: -9%;
  right: 2%;
  width: 55px;
}

.section-why__link-wrap h3 {
  font-size: 22px;
  font-weight: 500;
  margin-bottom: 43px;
  line-height: 1.7;
  max-width: 220px;
}

.section-why__link-wrap .button {
  position: relative;
  z-index: 2;
  color: #fff;
  min-height: 54px;
  width: 144px;
  min-height: auto;
  line-height: 1.7;
  width: 144px;
  height: 54px;
  padding: 15px;
}

.section-why__cards li {
  z-index: 2;
}

.section-why__cards li:hover::before {
  background-color: #780000;
}

.section-why__cards li:nth-child(odd) {
  border-right: 1px solid #dadada;
  border-bottom: 1px solid #dadada;
}

.section-why__cards li:nth-child(even) {
  border-bottom: 1px solid #dadada;
}

.section {
  padding-top: 40px;
  padding-bottom: 40px;
}

.services__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 36px;
}

.services__list {
  flex-shrink: 0;
  position: relative;
  margin-bottom: 40px;
}

.services__list::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: calc(100% + 152px);
  left: 0;
  margin: 0 -76px;
  height: 1px;
  background-color: #dadada;
}

.services__list li {
  font-weight: 600;
  font-family: "TT Firs Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
}

.services__list a {
  display: block;
  background-color: #d62028;
  color: #fff;
  margin-top: 40px;
  margin-bottom: 40px;
  max-width: 234px;
  width: 100%;
  padding: 17px;
  margin-right: auto;
  margin-left: auto;
}

.services__list a:after {
  display: none;
}

.services__slider {
  position: relative;
}

.services__slider .slider-services {
  z-index: 3;
  padding: 50px 100px;
  margin: -50px -100px;
  margin-right: -76px;
  padding-right: 76px;
  padding-bottom: 60px;
}

.services__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  padding: 36px;
}

.services__list {
  flex-shrink: 0;
  position: relative;
  margin-bottom: 40px;
}

.services__list::after {
  content: "";
  position: absolute;
  bottom: 0;
  width: calc(100% + 152px);
  left: 0;
  margin: 0 -76px;
  height: 1px;
  background-color: #dadada;
}

.services__list li {
  font-weight: 600;
  font-family: "TT Firs Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
}

.services__list a {
  display: block;
  background-color: #d62028;
  color: #fff;
  margin-top: 40px;
  margin-bottom: 40px;
  max-width: 234px;
  width: 100%;
  padding: 17px;
  margin-right: auto;
  margin-left: auto;
}

.services__list a:after {
  display: none;
}

.services__slider {
  position: relative;
}

.services__slider .slider-services {
  z-index: 3;
  padding: 50px 100px;
  margin: -50px -100px;
  margin-right: -76px;
  padding-right: 76px;
  padding-bottom: 60px;
}

.slider-news .swiper-slide {
  height: auto;
}

.slider-news__controls {
  position: absolute;
  bottom: -80px;
  display: flex;
  justify-content: space-around;
  gap: 20px;
  width: 100%;
}

.slider-news__controls .swiper-button-prev,
.slider-news__controls .swiper-button-next {
  position: static;
  width: 40px;
  height: 40px;
  margin: 0;
}

.slider-services {
  margin-bottom: 20px;
}

.slider-services .swiper-slide {
  height: auto;
}

.slider-services__controls {
  z-index: 3;
  position: absolute;
  bottom: -55px;
  display: flex;
  justify-content: center;
  gap: 40px;
  right: 0;
  left: 0;
}

.menu-active .slider-services__controls {
  position: relative;
  z-index: 1;
}

.slider-services .card--service {
  max-width: 100%;
  height: 100%;
}

.slider-services .card--service img {
  width: 100%;
}

.slider .swiper-slide h2,
.slider-thumbs .swiper-slide h2 {
  text-align: center;
}

.slider .swiper-slide img,
.slider-thumbs .swiper-slide img {
  margin-right: auto;
  margin-left: auto;
}

.swiper-button-prev,
.swiper-button-next,
.pagination__prev,
.pagination__next {
  margin-top: 0;
  position: static;
  background: none;
  border: 0;
  width: 40px;
  height: 40px;
  padding: 0;
  border-radius: 50%;
  background-color: #d62028;
}

.swiper-button-prev svg,
.swiper-button-next svg,
.pagination__prev svg,
.pagination__next svg {
  fill: #fff;
}

.background-primary .swiper-button-prev,
.background-primary .swiper-button-next,
.background-primary .pagination__prev,
.background-primary .pagination__next {
  background-color: #fff;
}

.background-primary .swiper-button-prev svg,
.background-primary .swiper-button-next svg,
.background-primary .pagination__prev svg,
.background-primary .pagination__next svg {
  fill: #d62028;
}

.swiper-button-prev:focus,
.swiper-button-prev:hover,
.swiper-button-next:focus,
.swiper-button-next:hover,
.pagination__prev:focus,
.pagination__prev:hover,
.pagination__next:focus,
.pagination__next:hover {
  opacity: 0.7;
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled,
.pagination__prev.disabled,
.pagination__next.disabled {
  background-color: #f3f3f3;
  opacity: 1;
}

.swiper-button-prev.swiper-button-disabled svg,
.swiper-button-next.swiper-button-disabled svg,
.pagination__prev.disabled svg,
.pagination__next.disabled svg {
  fill: #d62028;
}

.background-primary .swiper-button-prev.swiper-button-disabled,
.background-primary .swiper-button-next.swiper-button-disabled,
.background-primary .pagination__prev.disabled,
.background-primary .pagination__next.disabled {
  background-color: #780000;
}

.background-primary .swiper-button-prev.swiper-button-disabled svg,
.background-primary .swiper-button-next.swiper-button-disabled svg,
.background-primary .pagination__prev.disabled svg,
.background-primary .pagination__next.disabled svg {
  fill: #fff;
}

.swiper-button-prev:after,
.swiper-button-next:after {
  display: none;
}

.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
  position: static;
  margin: 0;
}

.swiper-pagination-bullet {
  opacity: 1;
  width: 14px;
  height: 14px;
  background: #fff;
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin-right: 8px;
  margin-left: 8px;
}

.swiper-pagination-bullet-active {
  background: #d62028;
}

.slider-photo .swiper-slide img {
  height: 350px;
  -o-object-fit: cover;
  object-fit: cover;
  box-shadow: 0 4px 45px 0 rgba(0, 0, 0, 0.0784313725);
}

.slider-product {
  max-width: 743px;
  width: calc(100% + 100px);
  margin-right: -50px !important;
  margin-left: -50px !important;
  padding-right: 50px;
  padding-left: 50px;
  margin-bottom: 0;
}

.slider-product + .swiper-pagination {
  z-index: 1;
  margin-bottom: 15px;
}

.slider-product .swiper-slide {
  height: auto;
}

.slider-product .swiper-slide img {
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.slider-clients {
  height: 250px;
  padding: 24px 36px;
}

.slider-clients .swiper-slide img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.social-links {
  display: flex;
  flex-wrap: wrap;
}

.specs-list {
  position: relative;
  font-size: 0;
  border-top: 1px solid #dadada;
  border-right: 1px solid #dadada;
  -moz-column-count: 1;
  column-count: 1;
  list-style-type: none;
}

.specs-list::before {
  content: "";
  background-color: #dadada;
  width: 100%;
  height: 1px;
  position: absolute;
  top: -1px;
  left: 0;
}

.specs-list__item {
  -moz-column-break-inside: avoid;
  break-inside: avoid-column;
  padding: 40px;
  position: relative;
  word-break: break-word;
}

.specs-list__item h3 {
  color: #d62028;
  font-weight: 500;
}

.specs-list p {
  font-family: "Geist", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  font-weight: 300;
  line-height: 1.9;
}

.specs-list__item::before {
  content: " ";
  z-index: 1;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  position: absolute;
  background-color: #d62028;
  top: 30px;
  left: -19px;
}

.specs-list__item::after {
  content: " ";
  width: 1px;
  height: 100%;
  position: absolute;
  background-color: #dadada;
  top: 0;
  left: 0;
}

.tabs {
  display: flex;
  gap: 16px;
}

.tab-button {
  background: none;
}

.textarea {
  font-size: 16px;
  font-family: "Geist", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  padding: 27px 16px;
  border-color: #000;
  resize: vertical;
  background-color: #eee;
}

.textarea:focus,
.textarea:focus-visible {
  outline-color: #000;
}

.product {
  border-bottom: 1px solid #dadada;
}

.product__details {
  position: relative;
}

.product__details-text {
  padding: 0 30px;
  display: flex;
  flex-direction: column;
}

.product__details-column {
  width: 100%;
  padding: 30px 0;
}

.product__details-column:nth-child(1) {
  position: relative;
  padding-right: 20px;
}

.product__details-column:nth-child(2) {
  padding-left: 0;
}

.product__details-column ul {
  list-style-type: none;
}

.product__details .poster-wrap {
  padding: 30px 37px 0;
  display: flex;
  flex-direction: column-reverse;
  position: relative;
  height: 400px;
}

.product__details-text h2 {
  font-weight: 500;
  margin-bottom: 20px;
}

.product__details-text p {
  font-family: "Geist", -apple-system, blinkmacsystemfont, "Segoe UI", roboto, oxygen-sans, ubuntu, cantarell, "Helvetica Neue", sans-serif;
  font-size: 16px;
  font-weight: 300;
  line-height: 1.9;
  margin: 0;
  letter-spacing: -0.1px;
}

.product__details-column:last-child p {
  margin: 0 0 40px 0;
}

.product__details-text ul li::before {
  content: "";
  display: block;
  flex-shrink: 0;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 8.5px 14px;
  border-color: transparent transparent #d62028;
  transform: rotate(90deg);
  margin-right: 8px;
}

.product__details-text ul li {
  display: flex;
  align-items: baseline;
}

.product__details-text strong {
  font-weight: 700;
}

.product__details .poster-wrap img {
  margin-left: 31%;
  margin-right: -30%;
  width: auto;
  height: 315px;
  z-index: 3;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: top;
  object-position: top;
}

.product__details .poster__text {
  left: 6%;
  top: -10%;
}

.product__details .poster-wrap .poster__text .poster__actions {
  align-items: baseline;
}

.product__cards {
  position: relative;
  padding: 30px;
}

.product__cards h2 {
  font-size: 20px;
  text-align: center;
}

.product__cards .card-link {
  max-width: 400px;
}

.product-list-wrap {
  position: relative;
}

ul.product-list {
  font-weight: 300;
  font-size: 16px;
  list-style-position: outside;
  padding: 20px 0 50px 50px;
}

body .header,
body .main,
body .footer {
  opacity: 0;
}

body:has(.splash.hidden) .header,
body:has(.splash.hidden) .main,
body:has(.splash.hidden) .footer {
  opacity: 1;
}

@media (min-width: 0) {
  .hidden-xs {
    display: none;
  }
}

@media (min-width: 390px) {
  .card-feature__body {
    min-height: 217px;
  }
}

@media (min-width: 450px) {
  .poster-wrap img {
    height: 350px;
    margin-left: -38%;
  }

  .poster__text {
    max-width: 50%;
    align-items: flex-start;
  }

  .product__details .poster-wrap img {
    height: 350px;
    margin-left: 25%;
  }

  .product__details .poster-wrap img {
    -o-object-fit: contain;
    object-fit: contain;
    margin-left: 20%;
  }

  .product__details .poster__text {
    top: -20%;
    left: 8%;
  }
}

@media (min-width: 500px) {
  .section-why__link-wrap {
    padding-left: 40%;
  }

  .product__details .poster-wrap img {
    height: 415px;
  }
}

@media (min-width: 550px) {
  .product__details .poster__text {
    top: -10%;
    left: 12%;
  }
}

@media (min-width: 576px) {
  .hidden-sm {
    display: none;
  }
}

@media (min-width: 650px) {
  .poster-wrap img {
    margin-left: -28%;
  }

  .poster__text h2 {
    font-size: 24px;
  }
}

@media (min-width: 768px) {
  .hidden-md {
    display: none;
  }

  .hidden-tablet {
    display: none;
  }

  .card-feature__header {
    padding: 33px 16px;
  }

  .card-feature__icon {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    right: 0;
    left: 0;
    bottom: -25px;
    margin: 0 auto;
    z-index: 1;
  }

  .card-feature__body {
    min-height: 290px;
    padding: 50px 30px 30px;
  }

  .card-feature .card-feature__list-item {
    font-size: 14px;
  }

  .card-news__header img {
    height: 224px;
  }

  .card-why-tabs {
    display: none;
  }

  .card__footer {
    padding: 34px 0;
  }

  .card-aside {
    padding: 25px;
  }

  .card-contact {
    padding: 35px;
  }

  .clients__inner img {
    width: 30%;
    max-width: 218px;
  }

  .footer-contact__item h3 {
    font-size: 16px;
  }

  .middle-col .footer-contact__item p {
    font-size: 22px;
  }

  .footer__inner {
    flex-direction: row;
    justify-content: space-between;
    padding: 60px;
  }

  .footer__column {
    width: 33%;
    text-align: left;
  }

  .footer .right-col p {
    margin: 0 20px 0 0;
  }

  .footer .left-col .footer-logo img {
    margin: 0;
  }

  .footer .right-col .footer-contact__item {
    flex-direction: row;
  }

  .footer .right-col .footer-logo img:first-child {
    margin-right: 20px;
  }

  .form--contact .form-group {
    -moz-column-gap: 40px;
    column-gap: 40px;
  }

  .form--contact .form-group .form-control {
    width: calc(50% - 20px);
  }

  .header__inner {
    padding-left: 32px;
  }

  .header__inner:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 100%;
    background-color: #fff;
  }

  .header__logo {
    height: 79px;
    padding: 21px 0;
  }

  .header__logo:after {
    content: "";
    position: absolute;
    top: 0;
    right: -32px;
    width: 1px;
    height: 100%;
    background-color: #fff;
    opacity: 1;
  }

  .hero__list {
    flex-direction: row;
    border-radius: 100px;
    background-color: #fff;
    box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.1);
    max-width: 576px;
  }

  .hero__list li a {
    padding: 22px 35px;
  }

  .hero__list li a:focus,
  .hero__list li a:hover {
    background-color: #d62028;
    color: #fff;
  }

  .hero__list li a:focus svg,
  .hero__list li a:hover svg {
    fill: #fff;
  }

  .hero__list svg {
    height: 25px;
  }

  .hero__list li p {
    font-size: 20px;
  }

  .splash__logo {
    left: 124px;
    right: auto;
    margin: 0;
  }

  .news-list {
    grid-template-columns: 1fr 1fr;
  }

  .page-header--contact .page-header__inner {
    gap: 0;
  }

  .page-header--contact .page-header__text {
    max-width: 100%;
    width: 100%;
    border-right: 1px solid #fff;
  }

  .page-header--contact .page-header__text p {
    font-size: 18px;
    max-width: 450px;
  }

  .page-header--contact .page-header__aside {
    position: relative;
    width: 100%;
  }

  .page-header--news .page-header__aside,
  .page-header--news-item .page-header__aside {
    border-left: none;
  }

  .page-header--news-item .page-header__text {
    padding-right: 25px;
    padding-left: 25px;
  }

  .page-header--news-item .page-header__text h1,
  .page-header--news-item .page-header__text h2,
  .page-header--news-item .page-header__text h3,
  .page-header--news-item .page-header__text h4,
  .page-header--news-item .page-header__text h5,
  .page-header--news-item .page-header__text h6,
  .page-header--news-item .page-header__text p {
    padding-right: 0;
    padding-left: 0;
  }

  .page-header__text {
    max-width: 50%;
    padding: 50px;
    padding-bottom: 40px;
    padding-left: 25px;
    border-right: none;
  }

  .page-header__aside {
    width: 50%;
    padding: 40px 25px 0;
    border-right: 1px solid #fff;
  }

  .page-header--contact .page-header__aside .card {
    border-left: 0;
    max-width: 100%;
    -moz-column-count: 2;
    column-count: 2;
  }

  .page-header__text p {
    font-size: 16px;
  }

  .page-header--news-item .page-header__text {
    max-width: 100%;
    width: 100%;
    padding-right: 25px;
    border-right: 1px solid #fff;
  }

  .page-header--news-item .page-header__aside {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    padding-top: 50px;
    padding-right: 0;
    border-left: 1px solid #fff;
  }

  .page-header--news .page-header__text {
    max-width: 100%;
  }

  .page-header--slider p {
    font-size: 16px;
  }

  .page-header--image .page-header__aside {
    display: flex;
    align-items: center;
    border-left: 1px solid #fff;
    width: 50%;
    padding-right: 32px;
    padding-left: 32px;
    padding-top: 0;
  }

  .page-header--image .page-header__aside > * {
    margin-bottom: 0;
  }

  .page-header--image .page-header__text {
    width: 50%;
  }

  .page-header__image img {
    width: 599px;
    height: 288px;
    -o-object-fit: cover;
    object-fit: cover;
  }

  .scribble svg {
    top: 80%;
    height: -moz-max-content;
    height: max-content;
  }

  .scribble svg path {
    stroke-width: 3px !important;
  }

  .section-benefits {
    height: 800px;
    background-size: cover;
    background-position: 0 0;
  }

  .section-benefits h2 {
    text-align: center;
  }

  .section-benefits .sun {
    top: 0;
    left: -15%;
  }

  .section-benefits .cloud1 {
    top: 5%;
  }

  .section-benefits .cloud2 {
    top: -20%;
  }

  .section-benefits .cloud3 {
    top: -5%;
  }

  .section-benefits__cards {
    gap: 20px;
  }

  .section-benefits__inner {
    min-height: 1000px;
  }

  .cards-tabs {
    display: none;
  }

  .poster-wrap img {
    margin-left: -26%;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: bottom;
    object-position: bottom;
  }

  .poster__actions {
    font-size: 20px;
  }

  .section-equipment .card-link {
    max-width: 280px;
  }

  .section-equipment__cards-wrap {
    flex-direction: row;
    gap: 60px;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }

  .section-news .slider-news {
    margin-left: -76px;
    width: calc(100% + 76px);
    margin-right: 0;
    padding-right: 20px;
  }

  .section-news h2 {
    font-size: 48px;
  }

  .section-news__inner {
    padding: 110px 36px 130px;
  }

  .section-news__list {
    width: 81%;
    order: 0;
    padding-top: 80px;
  }

  .section-news__title {
    width: 19%;
    padding-left: 16px;
    font-size: 14px;
    border-left: 1px solid white;
    margin-top: 80px;
  }

  .section-specs__body {
    border-left: 1px solid #dadada;
  }

  .section-specs__header .section-specs__body .list {
    flex-wrap: wrap;
    gap: 10px;
    height: 150px;
  }

  .section-why__cards > * {
    display: block;
    width: 50%;
  }

  .section-why__header {
    flex-direction: row;
    justify-content: space-between;
  }

  .section-why__text:after {
    left: -40px;
    width: calc(100% + 80px);
  }

  .section-why__text {
    width: 50%;
    padding: 30px 15px;
  }

  .section-why__contact-wrap {
    width: 50%;
    margin-right: 0;
    margin-left: 0;
  }

  .section-why__contact-wrap::after {
    right: -40px;
    width: calc(100% + 40px);
  }

  .section-why__contact-wrap img {
    height: 274px;
    left: -7%;
  }

  .section-specs__title-wrap .arrow-bottom,
  .section-why__header .arrow-bottom {
    right: auto;
    height: 80px;
    bottom: -14%;
    left: 80%;
  }

  .section-why__link-wrap h3 {
    max-width: 100%;
    font-size: 18px;
    margin-bottom: 25px;
  }

  .section-why__cards li:nth-child(odd) {
    width: 50%;
    border-bottom: 1px solid #dadada;
  }

  .section-why__cards li:nth-child(even) {
    width: 50%;
    border-bottom: 1px solid #dadada;
  }

  .section-why__cards li:nth-child(even) {
    border-left: 0;
  }

  .slider-news__controls {
    bottom: auto;
    top: -80px;
    right: -15px;
    justify-content: flex-end;
    width: auto;
  }

  .slider-news__controls .swiper-button-prev,
  .slider-news__controls .swiper-button-next {
    width: 52px;
    height: 52px;
  }

  .specs-list {
    -moz-column-count: 2;
    column-count: 2;
    border-left: 1px solid #dadada;
    -moz-column-rule: 1px solid #dadada;
    column-rule: 1px solid #dadada;
  }

  .specs-list__item::after {
    display: none;
  }

  [data-tab-content] {
    display: block;
    position: static;
    overflow: visible;
    margin: 0;
    height: auto;
    clip: auto;
  }

  .product__details .poster-wrap img {
    margin-left: 24%;
    -o-object-position: bottom;
    object-position: bottom;
    height: 430px;
  }

  .product__cards {
    padding: 40px;
  }

  .product__cards h2 {
    text-align: left;
    font-size: 22px;
  }

  ul.product-list {
    -moz-column-count: 2;
    column-count: 2;
  }
}

@media (min-width: 992px) {
  .hidden-lg {
    display: none;
  }
}

@media (min-width: 1024px) {
  .section-equipment__cards-wrap {
    grid-template-columns: 1fr 1fr 1fr;
  }
}

@media (min-width: 1025px) {
  html {
    font-size: 16px;
  }

  .visible-laptop {
    display: block;
  }

  .hidden-laptop {
    display: none;
  }

  .section-bottom-border .container {
    max-width: calc(100% - 140px);
  }

  .link-hover {
    justify-content: flex-start;
    font-weight: 500;
    font-size: 20px;
    background-color: transparent;
    text-align: left;
    color: #d62028;
  }

  .article__slider .slider-photo__controls {
    justify-content: flex-end;
    margin-top: 40px;
  }

  .button {
    font-size: 18px;
  }

  .card-link__body svg {
    display: none;
  }

  .card-news-slider__body {
    padding: 24px 40px;
  }

  .card-news__footer a {
    font-weight: 600;
  }

  .card-news__header img {
    height: 314px;
  }

  .card-why {
    padding: 40px;
  }

  .card-why h3 {
    font-size: 20px;
    line-height: 38px;
    margin-bottom: 14px;
  }

  .card-why p {
    font-size: 14px;
  }

  .card p {
    font-size: 20px;
  }

  .card-aside {
    padding: 52px;
  }

  .clients__inner {
    padding: 48px 72px;
    justify-content: space-between;
  }

  .clients__inner img {
    width: 20%;
  }

  [class^=container] {
    padding-right: 70px;
    padding-left: 70px;
  }

  .footer .middle-col a {
    font-size: 22px;
  }

  .footer .right-col p {
    font-size: 22px;
  }

  .footer .left-col .footer-logo img {
    max-width: 100%;
  }

  .form--contact .button {
    margin-left: 0;
  }

  .form--contact .form-group {
    -moz-column-gap: 40px;
    column-gap: 40px;
  }

  .header__inner-wrap {
    width: 40%;
    gap: 30px;
  }

  .header__menu-toggle {
    width: 70px;
    height: 80px;
    margin-bottom: -1px;
  }

  .header__menu-toggle {
    display: none;
  }

  .header__menu {
    width: 60%;
    height: 80px;
    margin-left: auto;
    margin-bottom: -1px;
  }

  .lang li a {
    font-size: 14px;
  }

  .header .header-container {
    padding-right: 0;
  }

  .header__lang {
    display: flex;
    padding: 0 20px;
    margin: 0 auto;
    min-height: 78px;
  }

  .hero {
    background: #f3f3f3;
  }

  .hero__text {
    position: absolute;
    z-index: 2;
    left: 0;
    top: 0;
    padding: 72px;
    max-width: 100%;
  }

  .hero__text h1 {
    font-size: 48px;
  }

  .hero__image:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: -50vw;
    width: calc(100vw + 50% - 9px);
    height: 1px;
    background-color: #dadada;
  }

  .hero__image img {
    height: 575px;
    width: calc(100% - 204px);
    border-left: 1px solid #fff;
    margin-left: auto;
  }

  .hero__image::before {
    width: calc(100% - 204px);
  }

  .input {
    font-size: 20px;
    padding: 23px 16px;
  }

  .list.list--services {
    font-size: 20px;
    line-height: normal;
    gap: 66px;
  }

  .list.list--services li {
    font-weight: 600;
  }

  .splash {
    font-size: 64px;
  }

  .splash__title {
    max-width: 350px;
  }

  .menu {
    flex-direction: row;
    align-items: center;
    position: static;
    transform: translateX(0);
    transition: none;
  }

  .menu > .menu__list {
    margin-top: 0;
    overflow-y: initial;
  }

  .menu__lang {
    display: none;
  }

  .menu__list {
    gap: 0;
    flex-direction: row;
    margin-right: 0;
    padding-top: 0;
    width: 100%;
    justify-content: space-between;
    padding-left: 10px;
    padding-right: 10px;
  }

  .menu__link {
    font-size: 14px;
  }

  .menu-active .menu__item {
    margin-bottom: 60px;
  }

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

  .menu__item--submenu .menu__link.dropdown {
    display: none;
  }

  .menu__item--submenu {
    position: relative;
    display: flex;
    align-items: center;
    height: 80px;
  }

  .menu__item--submenu:hover {
    background-color: #780000;
  }

  .menu__item--submenu:hover .menu__list {
    z-index: 3;
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding-top: 20px;
    padding-bottom: 20px;
    position: absolute;
    top: 80px;
    left: 0;
    width: auto;
    background-color: #780000;
  }

  .menu__item--submenu > a.menu__link {
    display: block;
  }

  .menu.menu--open .menu__item--submenu > button.menu__link {
    margin: 0;
  }

  .navbar__list {
    flex-direction: row;
  }

  .page-header--contact .page-header__text {
    width: 68.2%;
  }

  .page-header--contact .page-header__aside {
    width: 31.8%;
    border-left: 0;
  }

  .page-header--news .page-header__inner,
  .page-header--news-item .page-header__inner {
    gap: 0;
  }

  .page-header--news .page-header__aside,
  .page-header--news-item .page-header__aside {
    margin-left: auto;
  }

  .page-header--news-item .page-header__text h1,
  .page-header--news-item .page-header__text h2,
  .page-header--news-item .page-header__text h3,
  .page-header--news-item .page-header__text h4,
  .page-header--news-item .page-header__text h5,
  .page-header--news-item .page-header__text h6,
  .page-header--news-item .page-header__text p {
    padding-right: 25px;
  }

  .page-header__inner {
    gap: 50px;
    padding-right: 70px;
    padding-left: 70px;
  }

  .page-header__text p {
    max-width: 480px;
    font-size: 20px;
  }

  .page-header__aside {
    width: calc(50% - 50px);
    padding-top: 50px;
  }

  .page-header--contact .page-header__aside .card {
    position: absolute;
    right: 0;
    left: 0;
    padding-top: 50px;
    max-width: 350px;
    -moz-column-count: 1;
    column-count: 1;
  }

  .page-header--contact .page-header__aside .card > * {
    margin-left: auto;
    margin-right: 0;
  }

  .page-header__text p {
    font-size: 20px;
  }

  .page-header--news-item .page-header__inner:after {
    right: 70px;
  }

  .page-header--news-item .page-header__text {
    padding-bottom: 0;
  }

  .page-header--slider .page-header__text {
    width: 50%;
  }

  .page-header--slider .page-header__aside {
    gap: 30px;
    justify-content: center;
    width: 50%;
    padding: 70px 0 25px;
    border-left: 1px solid #fff;
  }

  .page-header--slider p {
    font-size: 20px;
  }

  .section-benefits__cards {
    gap: 60px;
  }

  .section-benefits__links {
    margin-top: 40px;
  }

  .poster-wrap {
    padding: 30px 37px 0;
    height: 412px;
  }

  .poster-wrap img {
    height: 445px;
    margin-left: -31%;
  }

  .poster__text .button {
    margin-bottom: 0px;
    margin-right: 30px;
  }

  .poster__text h2 {
    font-size: 38px;
    text-align: left;
  }

  .poster__actions {
    flex-direction: row;
    align-items: center;
  }

  .poster__text {
    max-width: 55%;
    width: 50%;
    right: 10%;
  }

  .section-contact .container:after {
    content: "";
    position: absolute;
    height: 100%;
    width: 1px;
    top: 0;
    right: 70px;
    background-color: #dadada;
  }

  .section-contact__form {
    max-width: 68.2%;
  }

  .section-equipment .card-link {
    max-width: 250px;
  }

  .section-equipment__cards-wrap {
    flex-wrap: nowrap;
    gap: 30px;
  }

  .section-equipment__cards {
    padding: 40px;
  }

  .section-news .slider-news {
    margin-left: -106px;
    width: calc(100% + 106px);
  }

  .section-specs__header h2 {
    font-size: 22px;
  }

  .section-specs__title-wrap {
    width: calc(50% - 1px);
  }

  .section-specs__body {
    width: calc(50% - 1px);
    height: 200px;
  }

  .section-specs__header .section-specs__body .list li {
    font-size: 16px;
  }

  .section-specs__header {
    display: flex;
    width: 100%;
  }

  .section-why__cards > * {
    counter-reset: chapter 0;
  }

  .section-why__cards:after {
    left: -70px;
    width: calc(100% + 140px);
  }

  .counter-list li::before {
    height: 40px;
    width: 40px;
    font-size: 20px;
    top: 16px;
    left: -20px;
    padding: 7px;
  }

  .section-why__text:after {
    left: -70px;
    width: calc(100% + 140px);
  }

  .section-why__text {
    padding: 30px 30px;
  }

  .section-why__contact-wrap::after {
    right: -70px;
    width: calc(100% + 70px);
  }

  .section-why__contact-wrap img {
    height: 275px;
    left: -9%;
  }

  .section-why__link-wrap {
    padding: 30px 30px 30px 25%;
    font-size: 18px;
  }

  .section-specs__title-wrap .arrow-bottom,
  .section-why__header .arrow-bottom {
    bottom: -14%;
    height: 100px;
  }

  .section-why__link-wrap h3 {
    font-size: 22px;
    margin-bottom: 50px;
    line-height: 1.3;
  }

  .section-why__link-wrap .button {
    width: 244px;
    min-height: 72px;
    padding: 22px 15px;
  }

  .services {
    overflow: hidden;
  }

  .services__inner {
    flex-direction: row;
    padding: 110px 40px 55px;
  }

  .services__list::after {
    display: none;
  }

  .services__list {
    display: flex;
    flex-direction: column;
    padding-bottom: 0;
    width: 32.7%;
    padding-right: 40px;
  }

  .services__list a {
    display: inline-flex;
    padding: 0;
    width: -moz-max-content;
    width: max-content;
    max-width: 100%;
    margin-top: 68px;
    margin-right: 0;
    margin-left: 0;
    background: none;
    color: #d62028;
  }

  .services__list a:after {
    display: block;
  }

  .services__slider {
    width: 68.3%;
    padding-left: 51px;
  }

  .services__slider:before {
    content: "";
    position: absolute;
    width: 1px;
    height: calc(100% + 290px);
    background: lightgrey;
    display: block;
    left: 0;
    top: -145px;
  }

  .services__slider .slider-services {
    padding: 50px;
    margin: -50px;
    margin-right: -140px;
    padding-right: 140px;
  }

  .services {
    overflow: hidden;
  }

  .services__inner {
    flex-direction: row;
    padding: 110px 40px 55px;
  }

  .services__list::after {
    display: none;
  }

  .services__list {
    display: flex;
    flex-direction: column;
    padding-bottom: 0;
    width: 32.7%;
    padding-right: 40px;
  }

  .services__list a {
    display: inline-flex;
    padding: 0;
    width: -moz-max-content;
    width: max-content;
    max-width: 100%;
    margin-top: 68px;
    margin-right: 0;
    margin-left: 0;
    background: none;
    color: #d62028;
  }

  .services__list a:after {
    display: block;
  }

  .services__slider {
    width: 68.3%;
    padding-left: 51px;
  }

  .services__slider:before {
    content: "";
    position: absolute;
    width: 1px;
    height: calc(100% + 290px);
    background: lightgrey;
    display: block;
    left: 0;
    top: -145px;
  }

  .services__slider .slider-services {
    padding: 50px;
    margin: -50px;
    margin-right: -140px;
    padding-right: 140px;
  }

  .slider-services__controls {
    bottom: -20px;
    justify-content: flex-end;
    margin: 20px 0 0 0;
    position: static;
  }

  .textarea {
    font-size: 20px;
    padding: 23px 16px;
  }

  .product__details-text {
    padding: 0 40px;
    flex-direction: row;
  }

  .product__details-column {
    width: 50%;
    padding: 50px 0;
  }

  .product__details-column:nth-child(1) {
    padding-right: 35px;
  }

  .product__details-column:nth-child(1):after {
    content: "";
    position: absolute;
    top: 0;
    right: -1px;
    height: 100%;
    width: 1px;
    background-color: #dadada;
  }

  .product__details-column:nth-child(2) {
    padding-left: 35px;
  }

  .product__details .poster-wrap {
    padding: 30px 37px 0;
    height: 412px;
  }

  .product__details-text h2 {
    margin-bottom: 30px;
  }

  .product__details .poster-wrap img {
    height: 449px;
    margin-left: -32%;
  }

  .product__details .poster__text {
    right: 0;
    left: auto;
  }

  .product__details .poster-wrap .poster__text .poster__actions {
    align-items: center;
  }

  .product__cards h2 {
    font-size: 24px;
  }

  .product__cards .card-link {
    width: 400px;
  }
}

@media (min-width: 1200px) {
  .hidden-xl {
    display: none;
  }

  .visible-desktop {
    display: block;
  }

  .section-bottom-border {
    height: 72px;
  }

  h1,
  .h1 {
    font-size: 48px;
  }

  h2,
  .h2 {
    font-size: 40px;
  }

  h3,
  .h3 {
    font-size: 28px;
  }

  .h4 {
    font-size: 24px;
  }

  .h5 {
    font-size: 20px;
  }

  .h6 {
    font-size: 16px;
  }

  .article {
    font-size: 20px;
  }

  .article__slider .slider-photo {
    margin-left: -142px;
    width: calc(100% + 213px);
  }

  .card-feature__body {
    min-height: 212px;
  }

  .card-news-slider img {
    height: 208px;
  }

  .card-news-slider__body {
    padding: 37px 47px;
  }

  .card-news__date {
    height: 72px;
    max-width: 216px;
    color: #fff;
    padding: 22px 14px;
    font-size: 20px;
  }

  .card-news__body {
    padding: 25px 25px 15px;
  }

  .card-news__body h3 {
    font-size: 22px;
    line-height: 1.5;
    letter-spacing: 0.5px;
    margin-bottom: 42px;
  }

  .card-news__body p {
    font-size: 20px;
  }

  .card-news__footer {
    padding: 0 25px 25px;
  }

  .card-news__header img {
    height: 288px;
  }

  .card-news {
    max-width: 504px;
  }

  .card-why {
    padding: 70px 72px;
  }

  .card-why h3 {
    font-size: 28px;
  }

  .card-why p {
    font-size: 20px;
    line-height: 38px;
  }

  .card {
    padding: 50px;
  }

  .card--contact {
    margin-right: 0 !important;
  }

  .card--contact h3 {
    font-size: 30px;
  }

  .card--contact p {
    font-size: 18px;
  }

  .card--contact b {
    font-size: 24px;
  }

  .card-contact {
    width: auto;
  }

  .card.card--service h3 {
    font-size: 28px;
  }

  .card__text {
    padding: 30px 48px;
  }

  .card__text h4 {
    font-size: 28px;
  }

  .card__text p {
    font-family: "Geist";
    font-size: 20px;
    line-height: 37px;
  }

  .news-slide {
    height: 450px;
    width: 505px;
  }

  .news-card .card__text {
    padding: 40px 42px 18px 53px;
  }

  .news-card .card__text h4 {
    margin-bottom: 22px;
  }

  .card__text a {
    display: block;
    color: #d62028;
    font-size: 18px;
  }

  .clients__inner img {
    width: 15%;
  }

  .footer-contact__item {
    margin-bottom: 50px;
  }

  .footer-contact__item h3 {
    font-size: 20px;
  }

  .footer-contact__item p {
    font-size: 20px;
    margin-top: 10px;
    margin-bottom: 10px;
  }

  .middle-col {
    padding: 0 83px;
  }

  .footer__inner {
    padding: 105px 70px 149px;
  }

  .footer__column {
    padding: 0 10px 0;
  }

  .footer .middle-col .footer-contact__item {
    margin-bottom: 0;
  }

  .footer .middle-col .footer-contact__item:first-child {
    margin-bottom: 45px;
  }

  .footer .right-col {
    padding: 0;
    justify-content: flex-start;
    align-items: start;
    flex-direction: column;
  }

  .footer .right-col .footer-contact__item {
    justify-content: center;
    padding-right: 8px;
    margin-bottom: 16px;
  }

  .footer .right-col .footer-logo img:first-child {
    margin-right: 42px;
    height: 98px;
  }

  .footer .left-col {
    margin-bottom: 0;
  }

  .footer .right-col .footer-logo img:nth-child(2) {
    height: 44px;
  }

  .form--contact {
    row-gap: 36px;
  }

  .form--contact .form-group {
    -moz-column-gap: 80px;
    column-gap: 80px;
  }

  .form--contact .form-group .form-control {
    width: calc(50% - 40px);
  }

  .lang li a {
    font-size: 20px;
  }

  .hero {
    overflow: visible;
    max-height: 500px;
  }

  .hero__inner {
    display: flex;
    justify-content: end;
  }

  .splash__logo {
    left: 248px;
  }

  .menu-toggle__text {
    display: none;
    font-size: 20px;
    top: calc(50% - 10px);
    right: 65px;
  }

  .menu {
    justify-content: center;
  }

  .menu--closed {
    padding: 0;
  }

  .menu__list {
    padding-left: 20px;
    padding-right: 20px;
  }

  .menu-active .menu__list {
    -moz-column-count: 2;
    column-count: 2;
    -moz-column-gap: 200px;
    column-gap: 200px;
    padding: 0 208px;
    text-align: left;
  }

  .menu-active .menu__list .menu__list {
    position: absolute;
    left: auto;
    top: 0;
    padding-top: 0;
    margin-bottom: 0;
  }

  .menu__item {
    padding-right: 20px;
    padding-left: 20px;
  }

  .menu__item--submenu .menu__item {
    padding-right: 0;
    padding-left: 0;
  }

  .menu__item--submenu:hover .menu__list {
    padding-top: 40px;
    padding-bottom: 40px;
  }

  .menu.menu--open {
    transition: none;
  }

  .menu.menu--open .menu__list {
    padding-left: 110px;
  }

  .menu.menu--open .menu__list .menu__list {
    padding-left: 240px;
  }

  .news-list {
    grid-template-columns: 1fr 1fr;
    gap: 72px;
    list-style-type: none;
  }

  .page-header {
    background-position: 50%, 50%;
  }

  .page-header--photo .page-header__text {
    padding-top: 0;
    padding-bottom: 0;
  }

  .page-header--contact .page-header__inner {
    min-height: auto;
  }

  .page-header--news .page-header__aside,
  .page-header--news-item .page-header__aside {
    padding: 70px 20px 0 20px;
    width: 32%;
  }

  .page-header--news-item .page-header__text {
    padding-left: 70px;
    padding-right: 0;
  }

  .page-header--news .page-header__aside > * {
    max-width: 330px;
    margin-right: auto !important;
    margin-left: auto !important;
  }

  .page-header__inner {
    padding: 0 70px;
    min-height: 576px;
    max-width: 100%;
  }

  .page-news__wrap:before {
    top: 140px;
  }

  .page-news__wrap:after {
    top: 140px;
  }

  .page-header__text {
    max-width: 100%;
    width: 58%;
    padding-top: 70px;
    padding-bottom: 70px;
    padding-left: 70px;
  }

  .page-header__text p {
    max-width: 600px;
  }

  .page-header__aside {
    width: calc(42% - 50px);
    border-left: none;
    margin-bottom: 0;
    padding-top: 70px;
  }

  .page-header__aside > * {
    margin-left: 0;
    margin-right: 0;
  }

  .page-header__aside .card-contact {
    max-width: 100%;
  }

  .page-header--contact .page-header__aside .card {
    margin-right: auto !important;
    margin-left: auto;
    padding: 25px;
    max-width: 300px;
  }

  .page-header__text h1 {
    font-size: 48px;
    margin-bottom: 50px;
  }

  .page-header--news-item .page-header__text {
    max-width: 68%;
    width: 68%;
    border-right: 0;
    border-right: 1px solid #fff;
    padding-right: 0;
  }

  .page-header--news-item .page-header__aside {
    width: 32%;
    left: 0;
    margin-right: 0;
    border-left: 0;
  }

  .page-header--news .page-header__aside {
    display: block;
  }

  .page-header--slider .swiper-button-prev {
    left: 23px;
  }

  .page-header--slider h1 {
    font-size: 48px;
  }

  .page-header--image .page-header__aside {
    padding-right: 68px;
    padding-left: 68px;
  }

  .page-news__inner {
    width: 75%;
    padding-top: 0;
    padding-bottom: 0;
    padding-right: 72px;
    padding-left: 72px;
  }

  .page-news__inner .news-list {
    margin-top: -140px;
  }

  .page-news-item__inner {
    padding-right: 72px;
    padding-left: 72px;
    padding-bottom: 0;
    max-width: 68%;
  }

  .page-news-item__inner .news-list {
    margin-top: -140px;
  }

  .page-news-item .page-news-item__wrap {
    border-right: 1px solid #dadada;
  }

  .pagination {
    padding: 82px 0;
  }

  .section-benefits {
    height: 1000px;
  }

  .section-benefits h2 {
    margin-bottom: 95px;
  }

  .section-benefits .sun {
    left: -20%;
    top: -10%;
    width: 610px;
    height: 700px;
  }

  .section-benefits .cloud1 {
    top: -20%;
    left: -15%;
    width: 416px;
    height: 233px;
  }

  .section-benefits .cloud2 {
    width: 752px;
    height: 425px;
    top: -20%;
    left: 12%;
  }

  .section-benefits .cloud3 {
    width: 568px;
    height: 321px;
    top: -14%;
    left: 63%;
  }

  .section-benefits__cards {
    margin-right: -35px;
    margin-left: -35px;
  }

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

  .section-benefits__links a {
    padding: 0;
    width: auto;
    max-width: 100%;
    font-weight: 600;
    margin-top: 68px;
    font-size: 20px;
    background-color: transparent;
    color: #d62028;
    margin-top: 40px;
    margin-bottom: 40px;
  }

  .section-benefits__links a:after {
    display: block;
  }

  .poster__actions a {
    font-size: 20px;
  }

  .poster__text .button {
    margin-right: 50px;
    padding: 25px 46px;
    min-height: 72px;
    font-size: 18px;
  }

  .poster__text {
    width: 60%;
    right: 8%;
  }

  .section-contact__form {
    max-width: 68.2%;
    padding-top: 40px;
    padding-right: 70px;
    padding-left: 70px;
  }

  .section-equipment .card-link .card-link__body {
    font-size: 28px;
    padding: 40px 20px;
    height: auto;
  }

  .section-equipment .card-link {
    max-width: 280px;
  }

  .section-equipment .title {
    min-height: 52px;
  }

  .card-link svg {
    width: 52px;
    height: 52px;
  }

  .section-equipment__cards h2 {
    font-size: 36px;
    margin-bottom: 60px;
  }

  .section-equipment__cards-wrap {
    gap: 72px;
  }

  .section-equipment__cards {
    padding: 70px;
  }

  .section-news .slider-news {
    width: calc(100% + 142px);
    margin-left: -142px;
  }

  .section-news__inner {
    padding: 110px 72px 130px;
  }

  .section-news__title {
    padding-left: 66px;
    font-size: 18px;
  }

  .section-news__title h3 {
    font-size: 24px;
    line-height: 1.9;
    margin-top: -10px;
  }

  .section-specs__title-wrap {
    height: 300px;
    padding: 40px;
  }

  .section-specs__body {
    height: 300px;
  }

  .section-specs__title-wrap h2 {
    font-size: 32px;
    line-height: 1.3;
  }

  .section-specs__header .section-specs__body h3 {
    font-size: 28px;
    margin-bottom: 36px;
  }

  .section-specs__header .section-specs__body .list {
    height: 244px;
    padding-bottom: 66px;
  }

  .section-specs__header .section-specs__body .list li {
    font-size: 20px;
  }

  .counter-list li::before {
    height: 70px;
    width: 70px;
    font-size: 40px;
    padding: 10px 14px;
    top: 23%;
    left: -40px;
  }

  .section-why__header {
    padding: 0px;
    margin-top: 0;
    height: 350px;
  }

  .section-why__cards-wrap {
    margin-bottom: 144px;
  }

  .section-why__cards-wrap:before {
    height: calc(100% + 144px);
  }

  .section-why__cards-wrap:after {
    height: calc(100% + 144px);
  }

  .section-why .section-why__header h2 {
    font-size: 28px;
  }

  .section-why .section-why__header p {
    font-size: 16px;
    line-height: 28px;
  }

  .section-why__text {
    width: 54%;
    padding: 36px 50px 30px 70px;
  }

  .section-why__contact-wrap {
    width: 46%;
  }

  .section-why__contact-wrap img {
    height: 370px;
    bottom: 0%;
    left: -6%;
  }

  .section-why__link-wrap {
    margin-left: 0px;
    padding: 27px 0px;
    padding: 76px 10px 25px 40%;
  }

  .section-specs__title-wrap .arrow-bottom,
  .section-why__header .arrow-bottom {
    height: 120px;
    bottom: -15%;
  }

  .section-why__link-wrap h3 {
    font-size: 24px;
  }

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

  .swiper-button-prev,
  .swiper-button-next,
  .pagination__prev,
  .pagination__next {
    width: 52px;
    height: 52px;
  }

  .slider-product {
    max-width: calc(100% + 100px);
  }

  .slider-product + .swiper-pagination {
    margin-bottom: 0;
  }

  .slider-clients {
    height: auto;
    padding: 48px 72px;
  }

  .slider-clients .swiper-slide img {
    margin-right: auto;
    margin-left: auto;
  }

  .specs-list::before {
    left: -50vw;
    width: 150vw;
  }

  .specs-list__item {
    padding: 80px 70px;
    margin-bottom: -100px;
  }

  .specs-list__item h3 {
    margin-bottom: 13px;
  }

  .specs-list p {
    font-size: 20px;
    margin: 0;
  }

  .product__details-text {
    padding: 0 74px 0;
  }

  .product__details-column {
    padding-top: 70px;
    padding-bottom: 50px;
  }

  .product__details-text h2 {
    max-width: 82%;
    font-size: 28px;
    line-height: 38.6px;
    margin-bottom: 30px;
  }

  .product__details-text p {
    font-size: 18px;
  }

  .product__cards h2 {
    font-weight: 500;
    font-size: 36px;
    margin-bottom: 62px;
  }

  .product__cards .card-link {
    max-width: 400px;
  }

  ul.product-list {
    font-size: 20px;
    -moz-column-count: 4;
    column-count: 4;
    gap: 100px;
    padding: 27px 50px 70px 50px;
  }
}

@media (min-width: 1400px) {
  .hidden-xxl {
    display: none;
  }
}

@media (min-width: 1600px) {
  .section-bottom-border .container {
    width: calc(100% - 432px);
    max-width: 1488px;
  }

  .article__slider {
    padding-top: 100px;
  }

  .article__slider .slider-photo {
    margin-left: -288px;
    width: calc(100% + 359px);
  }

  .card-feature__body {
    padding: 50px 30px 30px;
    min-height: 330px;
  }

  .card-feature .card-feature__list-item {
    font-size: 20px;
    line-height: 1.8;
    align-items: flex-start;
  }

  .card-feature .card-feature__list-item:before {
    margin-top: 10px;
  }

  .card-news__body {
    padding: 38px 50px 10px;
  }

  .card-news__footer {
    padding-right: 52px;
    padding-left: 52px;
    padding-bottom: 40px;
  }

  .card-why {
    min-height: 432px;
    padding: 120px 72px;
  }

  .card--contact p {
    font-size: 20px;
  }

  .clients__inner img {
    width: 20%;
  }

  [class^=container] {
    padding-right: 216px;
    padding-left: 216px;
  }

  .footer__column {
    padding: 0 0 0;
  }

  .footer .right-col {
    justify-content: center;
    align-items: end;
    flex-direction: column;
    width: 20%;
  }

  .footer .right-col .footer-contact__item {
    padding-right: 20px;
    margin-bottom: 110px;
  }

  .footer .left-col {
    width: 36%;
  }

  .footer .middle-col {
    width: 40%;
  }

  .form--contact {
    row-gap: 10px;
  }

  .header__inner {
    max-height: 140px;
    justify-content: flex-end;
    padding-left: 0;
  }

  .header__inner-wrap {
    width: 32%;
    height: 140px;
    gap: 0;
  }

  .header__logo {
    flex-shrink: 0;
    margin: 0 23px;
    width: 224px;
    height: 140px;
    padding: 42px 0;
  }

  .header__menu {
    height: 141px;
    margin-bottom: -1px;
  }

  .header__lang {
    min-height: 140px;
    padding: 0 25px;
    margin: 0 auto;
  }

  .hero__image img {
    width: calc(100% - 278px);
  }

  .hero__image::before {
    width: calc(100% - 278px);
  }

  .menu {
    justify-content: flex-end;
  }

  .menu__list {
    padding-left: 40px;
    padding-right: 40px;
  }

  .menu-active .menu__list {
    -moz-column-gap: 0;
    column-gap: 0;
  }

  .menu__link {
    font-size: 17px;
  }

  .menu__item {
    padding-right: 30px;
    padding-left: 30px;
  }

  .menu__item--submenu {
    height: 141px;
  }

  .menu__item--submenu:hover .menu__list {
    top: 141px;
  }

  .menu.menu--open .menu__list {
    padding-left: 240px;
  }

  .page-header--contact .page-header__aside {
    width: 31.8%;
    right: 0;
  }

  .page-header--news .page-header__aside,
  .page-header--news-item .page-header__aside {
    padding: 70px 35px 0 35px;
  }

  .page-header__inner {
    margin-right: auto;
    margin-left: auto;
    padding-left: 216px;
    padding-right: 216px;
    max-width: 1920px;
  }

  .page-header--contact .page-header__aside .card {
    max-width: 340px;
    padding: 50px;
  }

  .page-header__text h1 {
    margin-top: 50px;
  }

  .page-header--news-item .page-header__inner:after {
    right: 216px;
  }

  .page-header--slider .swiper-button-next {
    right: 23px;
  }

  .page-header--slider .page-header__aside {
    justify-content: start;
  }

  .section-benefits .sun {
    left: -15%;
  }

  .section-benefits__cards {
    margin-right: -70px;
    margin-left: -70px;
  }

  .poster__text h2 {
    font-size: 44px;
    margin-bottom: 44px;
  }

  .section-contact .container:after {
    right: 216px;
  }

  .section-equipment .card-link .card-link__body {
    padding: 40px 50px;
  }

  .section-equipment .card-link {
    max-width: 400px;
  }

  .section-news .slider-news {
    width: calc(100% + 288px);
    margin-left: -288px;
    padding-right: 40px;
  }

  .section-specs__title-wrap {
    height: 360px;
    padding: 90px 45px 45px 72px;
  }

  .section-specs__body {
    padding: 70px;
    height: 360px;
  }

  .section-specs__title-wrap h2 {
    font-size: 38px;
    letter-spacing: -1px;
  }

  .section-why__cards:after {
    left: -216px;
    width: calc(100% + 432px);
  }

  .section-why__header {
    height: 400px;
  }

  .section-why .section-why__header h2 {
    font-size: 48px;
  }

  .section-why .section-why__header p {
    font-size: 20px;
    line-height: 38px;
  }

  .section-why__text:after {
    left: -216px;
    width: calc(100% + 432px);
  }

  .section-why__text {
    padding: 70px 10px 30px 70px;
    width: 54%;
  }

  .section-why__contact-wrap::after {
    right: -216px;
    width: calc(100% + 432px);
  }

  .section-why__contact-wrap img {
    padding: 159px 50px 25px 44px;
    height: 530px;
    bottom: -6%;
    left: -20%;
  }

  .section-specs__title-wrap .arrow-bottom,
  .section-why__header .arrow-bottom {
    bottom: -13%;
    height: 181px;
  }

  .section-why__link-wrap h3 {
    font-size: 36px;
    margin-bottom: 36px;
  }

  .section-why__cards li:nth-child(odd) {
    width: 54% !important;
  }

  .section-why__cards li:nth-child(even) {
    width: 46% !important;
  }

  .services__inner {
    padding: 220px 76px 55px;
  }

  .services__slider .slider-services {
    margin-right: -279px;
    margin-bottom: 0;
  }

  .services__inner {
    padding: 220px 76px 55px;
  }

  .services__slider .slider-services {
    margin-right: -279px;
    margin-bottom: 0;
  }

  .slider-services__controls {
    margin: 0;
  }

  .specs-list__item::before {
    top: 80px;
  }

  .specs-list__item::after {
    height: 175%;
  }

  .product__details-column:nth-child(1) {
    padding-right: 82px;
  }

  .product__details-column:nth-child(2) {
    padding-left: 82px;
  }

  .product__details-text h2 {
    font-size: 36px;
    line-height: 48.6px;
    margin-bottom: 46px;
  }

  .product__details-text p {
    font-size: 20px;
  }

  .product__cards {
    padding: 100px 69px;
  }

  ul.product-list {
    gap: 120px;
    padding: 27px 0 70px 100px;
  }
}

@media (min-width: 1800px) {
  .card-contact {
    padding: 70px 70px 40px;
  }

  .header__lang {
    padding: 0 56px;
  }

  .menu__link {
    font-size: 20px;
  }

  .news-list {
    max-width: 928px;
  }
}

@media (min-width: 1920px) {
  .card-feature__body {
    padding: 50px 75px 30px;
  }

  .section-why__header {
    height: 504px;
  }

  .section-why__text {
    padding: 130px 10px 30px 70px;
  }

  .section-why__contact-wrap img {
    top: -24%;
    left: -8%;
    height: 650px;
  }

  .section-why__link-wrap {
    padding: 159px 76px 25px 54px;
    margin-left: 45%;
  }
}

@media (min-width: 1921px) {
  .services__slider .slider-services {
    margin-right: -50%;
  }

  .services__slider .slider-services {
    margin-right: -50%;
  }
}

@media (max-width: 767px) and (orientation: landscape) {
  .card-why {
    opacity: 1;
  }
}

@media (min-width: 800px) and (max-width: 1024px) {
  .services__list {
    display: flex;
    align-items: center;
    padding-bottom: 36px;
  }

  .services__list {
    display: flex;
    align-items: center;
    padding-bottom: 36px;
  }
}

@media (prefers-reduced-motion: no-preference) {
  :where(html:focus-within) {
    scroll-behavior: smooth;
  }

  html {
    scroll-behavior: smooth;
  }
}

@media (-webkit-min-device-pixel-ratio: 2), (resolution >= 192dpi) {
  .sprite-blank {
    background-image: url("../images/sprites@2x.png");
  }

  .sprite-login {
    background-image: url("../images/sprites@2x.png");
  }
}