

/* Start:/local/templates/default/css/styles_1725011524.css?1725011640243*/

/*
Внимание! 
Этот файл сформирован автоматически, компонентом olegpro.csscompiler. 
Исходники файлов стилей лежат в папке: /local/templates/default/scss/
*/


/* End */


/* Start:/local/templates/default/css/normalize.css?172501152412330*/
/*
Reboot
Normalization of HTML elements, manually forked from Normalize.css to remove styles targeting irrelevant browsers while applying new styles.
Normalize is licensed MIT. https://github.com/necolas/normalize.css
* Bootstrap v4.0.0-beta (https://getbootstrap.com)
 * Copyright 2011-2017 The Bootstrap Authors
 * Copyright 2011-2017 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
/*
Document
1. Change from `box-sizing: content-box` so that `width` is not affected by `padding` or `border`.
2. Change the default font family in all browsers.
3. Correct the line height in all browsers.
4. Prevent adjustments of font size after orientation changes in IE on Windows Phone and in iOS.
5. Setting @viewport causes scrollbars to overlap content in IE11 and Edge, so we force a non-overlapping, non-auto-hiding scrollbar to counteract.
6. Change the default tap highlight to be completely transparent in iOS.
*/
*,
*::before,
*::after {
  box-sizing: border-box; /* 1 */
}
html {
  font-family: sans-serif; /* 2 */
  line-height: 1.15; /* 3 */
  -webkit-text-size-adjust: 100%; /* 4 */
  -ms-text-size-adjust: 100%; /* 4 */
  -ms-overflow-style: scrollbar; /* 5 */
  -webkit-tap-highlight-color: transparent; /* 6 */
}
/* IE10+ doesn't honor `<meta name="viewport">` in some cases. */
@-ms-viewport {
  width: device-width;
}
/* stylelint-disable selector-list-comma-newline-after
Shim for "new" HTML5 structural elements to display correctly (IE10, older browsers) */
article, aside, dialog, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}
/*
Body
1. Remove the margin in all browsers.
2. As a best practice, apply a default `background-color`.
3. Set an explicit initial text-align value so that we can later use the `inherit` value on things like `<th>` elements.
*/
body {
  margin: 0; /* 1 */
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5;
  color: #212529;
  text-align: left; /* 3 */
  background-color: #fff; /* 2 */
}
/*
Suppress the focus outline on elements that cannot be accessed via keyboard.
This prevents an unwanted focus outline from appearing around elements that might still respond to pointer events.
Credit: https://github.com/suitcss/base
*/
[tabindex="-1"]:focus {
  outline: none !important;
}
/* 
Content grouping
1. Add the correct box sizing in Firefox.
2. Show the overflow in Edge and IE.
*/
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}
/* 
Typography
*/
/* 
Remove top margins from headings
By default, `<h1>`-`<h6>` all receive top and bottom margins. We nuke the top margin for easier control within type scales as it avoids margin collapsing.
*/
h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: .5rem;
}
/*
Reset margins on paragraphs
Similarly, the top margin on `<p>`s get reset. However, we also reset the bottom margin to use `rem` units instead of `em`.
*/
p {
  margin-top: 0;
  margin-bottom: 1rem;
}
/*
Abbreviations
1. Remove the bottom border in Firefox 39-.
2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
3. Add explicit cursor to indicate changed behavior.
4. Duplicate behavior to the data-* attribute for our tooltip plugin
*/
abbr[title],
abbr[data-original-title] { /* 4 */
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted; /* 2 */
          text-decoration: underline dotted; /* 2 */
  cursor: help; /* 3 */
  border-bottom: 0; /* 1 */
}
address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}
ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}
ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}
dt {
  font-weight: bold;
}
dd {
  margin-bottom: .5rem;
  margin-left: 0; /* Undo browser default */
}
blockquote {
  margin: 0 0 1rem;
}
dfn {
  font-style: italic; /* Add the correct font style in Android 4.3- */
}
b,
strong {
  font-weight: bolder; /* Add the correct font weight in Chrome, Edge, and Safari */
}
small {
  font-size: 80%; /* Add the correct font size in all browsers */
}
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}
sub {
  bottom: -.25em;
}
sup {
  top: -.5em;
}
/*
Links
*/
a {
  color: #007bff;
  text-decoration: none;
  background-color: transparent; /* Remove the gray background on active links in IE 10. */
  -webkit-text-decoration-skip: objects; /* Remove gaps in links underline in iOS 8+ and Safari 8+. */
}
a:hover {
  color: #0056b3;
  text-decoration: underline;
}
/*
And undo these styles for placeholder links/named anchors (without href) which have not been made explicitly keyboard-focusable (without tabindex). It would be more straightforward to just use a[href] in previous block, but that causes specificity issues in many other styles that are too complex to fix.
See https://github.com/twbs/bootstrap/issues/19402
*/
a:not([href]):not([tabindex]) {
  color: inherit;
  text-decoration: none;
}
a:not([href]):not([tabindex]):focus, a:not([href]):not([tabindex]):hover {
  color: inherit;
  text-decoration: none;
}
a:not([href]):not([tabindex]):focus {
  outline: 0;
}
/*
Code
*/
pre,
code,
kbd,
samp {
  font-family: monospace, monospace; /* Correct the inheritance and scaling of font size in all browsers. */
  font-size: 1em; /* Correct the odd `em` font sizing in all browsers. */
}
pre {
  /* Remove browser default top margin */
  margin-top: 0;
  /* Reset browser default of `1em` to use `rem`s */    
  margin-bottom: 1rem; 
  /* Don't allow content to break outside */    
  overflow: auto;
  /* We have @viewport set which causes scrollbars to overlap content in IE11 and Edge, so we force a non-overlapping, non-auto-hiding scrollbar to counteract. */      
  -ms-overflow-style: scrollbar;
}
/*
Figures
*/
figure {
  /* Apply a consistent margin strategy (matches our type styles). */
  margin: 0 0 1rem;
}
/*
Images and content
*/
img {
  vertical-align: middle;
  border-style: none; /* Remove the border on images inside links in IE 10-. */
}
svg:not(:root) {
  overflow: hidden; /* Hide the overflow in IE */
}
/*
Avoid 300ms click delay on touch devices that support the `touch-action` CSS property.
In particular, unlike most other browsers, IE11+Edge on Windows 10 on touch devices and IE Mobile 10-11 DON'T remove the click delay when `<meta name="viewport" content="width=device-width">` is present. However, they DO support removing the click delay via `touch-action: manipulation`.
See:
* https://getbootstrap.com/docs/4.0/content/reboot/#click-delay-optimization-for-touch
* https://caniuse.com/#feat=css-touch-action
*  https://patrickhlauke.github.io/touch/tests/results/#suppressing-300ms-delay
*/
a,
area,
button,
[role="button"],
input:not([type=range]),
label,
select,
summary,
textarea {
  -ms-touch-action: manipulation;
      touch-action: manipulation;
}
/*
Tables
*/
table {
  border-collapse: collapse; /* Prevent double borders */
}
caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #868e96;
  text-align: left;
  caption-side: bottom;
}
th {
  /* Matches default `<td>` alignment by inheriting from the `<body>`, or the closest parent with a set `text-align`. */
  text-align: inherit;
}
/*
Forms
*/
label {
  /* Allow labels to use `margin` for spacing. */
  display: inline-block;
  margin-bottom: .5rem;
}
/*
Remove the default `border-radius` that macOS Chrome adds.
Details at https://github.com/twbs/bootstrap/issues/24093
*/
button {
  border-radius: 0;
}
/*
Work around a Firefox/IE bug where the transparent `button` background results in a loss of the default `button` focus styles.
Credit: https://github.com/suitcss/base/
*/
button:focus {
  outline: 1px dotted;
  outline: 5px auto -webkit-focus-ring-color;
}
input,
button,
select,
optgroup,
textarea {
  margin: 0; /* Remove the margin in Firefox and Safari */
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}
button,
input {
  overflow: visible; /* Show the overflow in Edge */
}
button,
select {
  text-transform: none; /* Remove the inheritance of text transform in Firefox */
}
/*
1. Prevent a WebKit bug where (2) destroys native `audio` and `video` controls in Android 4.
2. Correct the inability to style clickable types in iOS and Safari.
*/
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}
/*
Remove inner border and padding from Firefox, but don't restore the outline like Normalize.
*/
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}
input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box; /* 1. Add the correct box sizing in IE 10- */
  padding: 0; /* 2. Remove the padding in IE 10- */
}
input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
  /* 
  Remove the default appearance of temporal inputs to avoid a Mobile Safari bug where setting a custom line-height prevents text from being vertically centered within the input.
  
  See https://bugs.webkit.org/show_bug.cgi?id=139848
  and https://github.com/twbs/bootstrap/issues/11266
  */
  -webkit-appearance: listbox;
}
textarea {
  overflow: auto; /* Remove the default vertical scrollbar in IE. */
  /* Textareas should really only resize vertically so they don't break their (horizontal) containers. */
  resize: vertical;
}
fieldset {
  /* 
  Browsers set a default `min-width: min-content;` on fieldsets, unlike e.g. `<div>`s, which have `min-width: 0;` by default. So we reset that to ensure fieldsets behave more like a standard block element.
  
  See https://github.com/twbs/bootstrap/issues/12359
  and https://html.spec.whatwg.org/multipage/#the-fieldset-and-legend-elements  
  */
  min-width: 0;
  /* Reset the default outline behavior of fieldsets so they don't affect page layout. */
  padding: 0;
  margin: 0;
  border: 0;
}
/*
1. Correct the text wrapping in Edge and IE.
2. Correct the color inheritance from `fieldset` elements in IE.
*/
legend {
  display: block;
  width: 100%;
  max-width: 100%; /* 1 */
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit; /* 2 */
  white-space: normal; /* 1 */
}
progress {
  vertical-align: baseline; /* Add the correct vertical alignment in Chrome, Firefox, and Opera. */
}
/* 
Correct the cursor style of increment and decrement buttons in Chrome.
*/
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  /* 
  This overrides the extra rounded corners on search inputs in iOS so that our `.form-control` class can properly style them. Note that this cannot simply be added to `.form-control` as it's not specific enough. 
  
  For details, see https://github.com/twbs/bootstrap/issues/11586.
  */    
  outline-offset: -2px;
  -webkit-appearance: none;
}
/*
Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
*/
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
/*
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to `inherit` in Safari.
*/
::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}
/*
Correct element displays
*/
output {
  display: inline-block;
}
summary {
  display: list-item; /* Add the correct display in all browsers */
}
template {
  display: none; /* Add the correct display in IE */
}
/* 
Always hide an element with the `hidden` HTML attribute (from PureCSS).
Needed for proper display in IE 10-.
*/
[hidden] {
  display: none !important;
}
/* End */


/* Start:/local/templates/default/css/magnific-popup.css?17250115246852*/
/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8;
}

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden;
}

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  box-sizing: border-box;
}

.mfp-container:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
  display: none;
}

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto;
}

.mfp-ajax-cur {
  cursor: progress;
}

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
  cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.mfp-loading.mfp-figure {
  display: none;
}

.mfp-hide {
  display: none !important;
}

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044;
}
.mfp-preloader a {
  color: #CCC;
}
.mfp-preloader a:hover {
  color: #FFF;
}

.mfp-s-ready .mfp-preloader {
  display: none;
}

.mfp-s-error .mfp-content {
  display: none;
}

button.mfp-close, button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  box-shadow: none;
  touch-action: manipulation;
}
button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: #FFF;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace;
}
.mfp-close:hover, .mfp-close:focus {
  opacity: 1;
}
.mfp-close:active {
  top: 1px;
}

.mfp-close-btn-in .mfp-close {
  color: #333;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%;
}

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  line-height: 18px;
  white-space: nowrap;
}

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.mfp-arrow:active {
  margin-top: -54px;
}
.mfp-arrow:hover, .mfp-arrow:focus {
  opacity: 1;
}
.mfp-arrow:before, .mfp-arrow:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
  top: 0;
  margin-top: 35px;
  margin-left: 35px;
  border: medium inset transparent;
}
.mfp-arrow:after {
  border-top-width: 13px;
  border-bottom-width: 13px;
  top: 8px;
}
.mfp-arrow:before {
  border-top-width: 21px;
  border-bottom-width: 21px;
  opacity: 0.7;
}

.mfp-arrow-left {
  left: 0;
}
.mfp-arrow-left:after {
  border-right: 17px solid #FFF;
  margin-left: 31px;
}
.mfp-arrow-left:before {
  margin-left: 25px;
  border-right: 27px solid #3F3F3F;
}

.mfp-arrow-right {
  right: 0;
}
.mfp-arrow-right:after {
  border-left: 17px solid #FFF;
  margin-left: 39px;
}
.mfp-arrow-right:before {
  border-left: 27px solid #3F3F3F;
}

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px;
}
.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 900px;
}
.mfp-iframe-holder .mfp-close {
  top: -40px;
}

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
}
.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto;
}

/* The shadow behind the image */
.mfp-figure {
  line-height: 0;
}
.mfp-figure:after {
  content: "";
  position: absolute;
  left: 0;
  top: 40px;
  bottom: 40px;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #444;
}
.mfp-figure small {
  color: #BDBDBD;
  display: block;
  font-size: 12px;
  line-height: 14px;
}
.mfp-figure figure {
  margin: 0;
}

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto;
}

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 36px;
}

.mfp-image-holder .mfp-content {
  max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
   * Remove all paddings around the image on small screen
   */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0;
  }
  .mfp-img-mobile img.mfp-img {
    padding: 0;
  }
  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0;
  }
  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px;
  }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    box-sizing: border-box;
  }
  .mfp-img-mobile .mfp-bottom-bar:empty {
    padding: 0;
  }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px;
  }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0;
  }
}
@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75);
  }

  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0;
  }

  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%;
  }

  .mfp-container {
    padding-left: 6px;
    padding-right: 6px;
  }
}

/*# sourceMappingURL=magnific-popup.css.map */
/* End */


/* Start:/local/templates/default/css/theme.css?173080657451537*/
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: "Raleway", "Arial", sans-serif;
  font-size: 16px;
  font-weight: 400;
  font-variant-numeric: lining-nums;
  color: #333;
  transition: transform 500ms ease-in-out;
}

.container {
  position: relative;
  width: 100%;
  max-width: 1200px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 0 10px;
}

a:hover,
a:focus {
  color: #23527c;
  text-decoration: underline;
}

li::marker {
  color: #0094df;
}

.margin-block {
  margin-top: 60px;
}

.main {
  transition: all 500ms ease-in-out;
}

body.menuOpened {
  transform: translateX(215px);
}

.swiper-pagination-bullet {
  background-color: #0094df;
  width: 10px;
  height: 10px;
}

.swiper {
  padding: 30px 0;
}

.swiper-pagination {
  position: relative;
  bottom: -30px !important;
}

form input[type=text],
form input[type=tel],
form input[type=email],
form input[type=date],
form textarea {
  height: 40px;
  border-radius: 40px;
  border: 1px solid #9a9a9a;
  text-indent: 20px;
}
form input[type=text]:focus,
form input[type=tel]:focus,
form input[type=email]:focus,
form input[type=date]:focus,
form textarea:focus {
  outline: none;
}
form input[type=text].error,
form input[type=tel].error,
form input[type=email].error,
form input[type=date].error,
form textarea.error {
  border-color: lightcoral;
}
form input[type=date] {
  text-indent: 5px;
}
form button {
  background-color: #0094df;
  color: #fff;
  font-size: 14px;
  line-height: 26px;
  font-weight: 600;
  border: 1px solid #0094df;
  border-radius: 40px;
  outline: none;
  transition: all 300ms ease-in-out;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}
form button .icon {
  width: 32px;
  height: 32px;
}

.modal-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  height: 100dvh;
  z-index: 200;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.modal-wrapper .modal-block {
  max-width: 700px;
  width: 100%;
  background-color: #fff;
  padding: 60px;
  border-radius: 8px;
  transform: translateY(-40px);
  transition: all 400ms ease-in-out;
}
.modal-wrapper .modal-title {
  font-size: 24px;
  text-align: center;
  font-weight: 700;
  margin-bottom: 20px;
  line-height: 1.2;
}
.modal-wrapper .modal-subtitle {
  text-align: center;
  margin-top: -20px;
  margin-bottom: 20px;
}
.modal-wrapper .modal-form {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.modal-wrapper .modal-input-wrap {
  position: relative;
  margin-bottom: 20px;
  width: 100%;
}
.modal-wrapper .modal-input {
  width: 100%;
  height: 50px;
  font-size: 18px;
  text-indent: 40px;
}
.modal-wrapper .modal-button {
  background-color: #0094df;
  color: #fff;
  font-size: 14px;
  line-height: 26px;
  font-weight: 600;
  border: 1px solid #0094df;
  border-radius: 40px;
  outline: none;
  transition: all 300ms ease-in-out;
  height: 60px;
  padding: 0 40px;
  font-size: 18px;
  font-weight: 400;
  cursor: pointer;
}
.modal__success {
  display: none;
  margin-top: 10px;
  color: #5cb85c;
  text-align: center;
}
.modal__success.active {
  display: block;
}
@media (max-width: 768px) {
	.modal-wrapper .modal-block {
		padding: 40px 25px;
		border-radius: 10px;
	}
	.modal-wrapper .modal-title {
		font-size: 18px;
	}
}
.header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  padding: 30px 0;
  transition: all 300ms ease-in-out;
}
.header.scrolled {
  padding: 10px 0;
  background-color: #1f2a3c;
}
.header .menu-burger {
  display: none;
}
@media (max-width: 992px) {
  .header {
    padding: 10px 0;
    background-color: #1f2a3c;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.8);
  }
  .header .menu-burger {
    width: 34px;
    height: 34px;
    display: block;
    margin-right: 9px;
    cursor: pointer;
  }
  .header .menu-burger svg {
    width: 100%;
    height: 100%;
  }
}
.header .menu {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
@media (max-width: 992px) {
  .header .menu {
    justify-content: start;
  }
  .header .menu .menu-wrap {
    margin-left: auto;
  }
}
@media (max-width: 992px) {
  .header .menu-navigation {
    position: fixed;
    height: 100dvh;
    height: 100%;
    top: 0;
    left: 0;
    transform: translateX(-100%);
    background: #1f2a3c;
    padding: 40px;
  }
}
.header .menu-logo {
  display: flex;
  align-items: center;
  justify-content: center;
}
.header .menu-logo img {
  display: block;
}
.header .menu-wrap {
  display: flex;
  align-items: center;
  gap: 15px;
}
.header .menu-list {
  display: flex;
  width: 100%;
  gap: 15px;
  align-items: center;
  margin-bottom: 0;
}
@media (max-width: 992px) {
  .header .menu-list {
    flex-direction: column;
  }
}
.header .menu-link {
  color: #fff;
  font-weight: 600;
  font-size: 14px;
  transition: all 200ms ease-in-out;
}
.header .menu-link:hover, .header .menu-link:focus {
  color: #23527c;
}
.header .menu-item::marker {
  content: "";
  font-size: 0;
}
.header .menu-item-callback .menu-link {
  background-color: transparent;
  color: #0094df;
  font-size: 14px;
  line-height: 26px;
  font-weight: 600;
  border: 2px solid #0094df;
  border-radius: 40px;
  outline: none;
  transition: all 300ms ease-in-out;
  display: inline-block;
  padding: 2px 20px 2px 20px;
}
.header .menu-item-callback .menu-link:hover {
  background: #0094df;
  color: #fff;
  text-decoration: none;
}
.header .menu-separator {
  width: 1px;
  height: 30px;
  background-color: #0094df;
}
@media (max-width: 992px) {
  .header .menu-separator {
    display: none;
  }
}
.header .menu-contacts {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}
.header .menu-contacts-phone {
  font-size: 18px;
  font-weight: 800;
  color: #0094df;
}
@media (max-width: 999px) {
  .header .menu-contacts-phone {
    font-size: 14px;
  }
}
@media (max-width: 992px) {
  .header .menu-contacts-phone {
    color: #fff;
  }
}
.header .menu-contacts-email {
  font-size: 12px;
  color: #fff;
}
@media (max-width: 992px) {
  .header .menu-contacts-email {
    display: none;
  }
}

.banner {
  width: 100%;
  height: 100vh;
  height: 100dvh;
  min-height: 800px;
  max-height: 1500px;
  position: relative;
}
.banner-background {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
}
.banner-background img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.banner .container {
  height: 100%;
}
.banner-content {
  height: 100%;
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.banner-title {
  font-size: 52px;
  font-weight: 800;
  line-height: 1.3;
  color: #fff;
  text-align: center;
}
@media (max-width: 992px) {
  .banner-title {
    font-size: 24px;
  }
}
.banner-description {
  color: #fff;
  font-size: 24px;
  margin-top: 10px;
}
@media (max-width: 992px) {
  .banner-description {
    font-size: 14px;
  }
}
.banner-description .discount {
  display: inline-block;
  background: #0094df;
  padding: 2px 8px;
}
.banner-anchor {
  position: absolute;
  bottom: 70px;
  left: 50%;
  margin-left: -22px;
  width: 45px;
  height: 45px;
  -webkit-border-radius: 45px;
  border-radius: 45px;
  background-image: url("/local/templates/default/css/../images/png/arrow-down.png");
  -webkit-animation-name: downarrow;
  animation-name: downarrow;
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}
.banner-inner {
  height: 425px;
  min-height: 425px;
}
@media (max-width: 992px) {
  .banner-inner {
    height: 300px;
    min-height: 300px;
  }
}
@media (max-width: 768px) {
  .banner-inner {
    height: 250px;
    min-height: 250px;
  }
}
@media (max-width: 576px) {
  .banner-inner {
    height: 220px;
    min-height: 220px;
  }
}
.banner-inner .banner-content {
  padding-top: 80px;
}
@media (max-width: 576px) {
  .banner-inner .banner-content {
    padding-top: 40px;
    align-items: start;
  }
}

.breadcrumbs {
  background: #182838;
  padding: 10px 12px;
  color: #9d9999;
  font-size: 13px;
  border-radius: 3px;
  margin-bottom: 20px;
}
.breadcrumbs .breadcrumb {
  color: #9d9999;
  font-size: 13px;
  line-height: 1.5;
  transition: all 300ms ease-in-out;
}
.breadcrumbs .breadcrumb:hover, .breadcrumbs .breadcrumb:focus {
  color: #535353;
}

@keyframes downarrow {
  0% {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
  50% {
    opacity: 0.2;
    -webkit-transform: translate(0, -50px);
    transform: translate(0, -50px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
  }
}
.catalog {
  padding-top: 60px;
}
.catalog-front {
  padding-top: 115px;
}
@media (max-width: 992px) {
  .catalog-front {
    padding-top: 60px;
  }
}
.catalog-title {
  font-size: 42px;
  font-weight: 700;
  line-height: 1.3;
  color: #1e2631;
  text-align: center;
}
@media (max-width: 992px) {
  .catalog-title {
    font-size: 24px;
  }
}
.catalog-category-list {
  margin-top: 40px;
  display: grid;
  grid-auto-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  gap: 20px 30px;
  grid-template-areas: "a a a b b b" "a a a c c c" "e e e d d d" "f f f d d d";
}
@media (max-width: 992px) {
  .catalog-category-list {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: none;
  }
}
@media (max-width: 768px) {
  .catalog-category-list {
    grid-template-columns: 1fr;
  }
}
.catalog-category-item {
  background: #f9f9f9;
  grid-area: auto/span 2;
  position: relative;
  min-height: 299px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 20px;
  padding: 30px;
  padding-bottom: 15px;
  transition: all 300ms ease-in-out;
}
@media (max-width: 992px) {
  .catalog-category-item {
    min-height: 240px;
  }
}
.catalog-category-item .catalog-category-background {
  position: absolute;
  z-index: 0;
  top: 30px;
  right: 0;
  width: 190px;
  height: 199px;
}
@media (max-width: 992px) {
  .catalog-category-item .catalog-category-background {
    width: 160px !important;
    height: 180px !important;
    top: 0;
  }
}
.catalog-category-item .catalog-category-background img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.catalog-category-item .catalog-category-wrap {
  text-decoration: none;
  position: relative;
  z-index: 1;
  max-width: 200px;
}
.catalog-category-item .catalog-category-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  position: relative;
  z-index: 1;
}
.catalog-category-item .catalog-category-tag {
  font-size: 12px;
  font-weight: 500;
  text-decoration: none;
  color: #787878;
  background: #fff;
  border-radius: 100px;
  padding: 2px 10px;
  transition: all 200ms ease-in-out;
  border: 1px solid transparent;
}
.catalog-category-item .catalog-category-tag:hover {
  border-color: #0094df;
  color: #0094df;
}
@media (max-width: 992px) {
  .catalog-category-item .catalog-category-tag:nth-child(n+6) {
    display: none;
  }
}
@media (max-width: 768px) {
  .catalog-category-item .catalog-category-tag:nth-child(n+3) {
    display: none;
  }
}
.catalog-category-item .catalog-category-name {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  color: #1e2631;
  margin-bottom: 16px;
}
@media (max-width: 992px) {
  .catalog-category-item .catalog-category-name {
    font-size: 20px;
    max-width: 50%;
  }
}
.catalog-category-item .catalog-category-button {
  background-color: transparent;
  color: #0094df;
  font-size: 14px;
  line-height: 26px;
  font-weight: 600;
  border: 2px solid #0094df;
  border-radius: 40px;
  outline: none;
  transition: all 300ms ease-in-out;
  display: inline-block;
  padding: 2px 42px;
}
.catalog-category-item .catalog-category-button:hover {
  background: #0094df;
  color: #fff;
  text-decoration: none;
}
.catalog-category-item:has(.catalog-category-wrap:hover) {
  box-shadow: 0 0 10px rgba(12, 57, 80, 0.15);
}
.catalog-category-item:nth-child(1) {
  grid-area: a;
}
.catalog-category-item:nth-child(2) {
  grid-area: b;
}
.catalog-category-item:nth-child(3) {
  grid-area: c;
}
.catalog-category-item:nth-child(4) {
  grid-area: d;
}
.catalog-category-item:nth-child(5) {
  grid-area: e;
}
.catalog-category-item:nth-child(6) {
  grid-area: f;
}
.catalog-category-item:nth-child(1), .catalog-category-item:nth-child(4) {
  background: #f5fbfe;
  padding-bottom: 30px;
}
.catalog-category-item:nth-child(1) .catalog-category-background, .catalog-category-item:nth-child(4) .catalog-category-background {
  top: auto;
  bottom: 0;
  right: 0;
  width: 300px;
  height: 286px;
}
.catalog-category-item:nth-child(2), .catalog-category-item:nth-child(3), .catalog-category-item:nth-child(5), .catalog-category-item:nth-child(6) {
  min-height: 215px;
  padding-bottom: 30px;
}
.catalog-category-item:nth-child(2) .catalog-category-background, .catalog-category-item:nth-child(3) .catalog-category-background, .catalog-category-item:nth-child(5) .catalog-category-background, .catalog-category-item:nth-child(6) .catalog-category-background {
  top: 0;
  width: 180px;
  height: 215px;
}
.catalog-category-item:nth-child(2) .catalog-category-wrap, .catalog-category-item:nth-child(3) .catalog-category-wrap, .catalog-category-item:nth-child(5) .catalog-category-wrap, .catalog-category-item:nth-child(6) .catalog-category-wrap {
  max-width: 350px;
}
@media (max-width: 992px) {
  .catalog-category-item {
    grid-area: auto;
  }
  .catalog-category-item:nth-child(1), .catalog-category-item:nth-child(2), .catalog-category-item:nth-child(3), .catalog-category-item:nth-child(4), .catalog-category-item:nth-child(5), .catalog-category-item:nth-child(6) {
    grid-area: auto;
  }
}
.catalog-category-wrapper {
  display: flex;
  justify-content: center;
}
.catalog-category-showmore {
  display: inline-block;
  margin: 0 auto;
  font-size: 18px;
  color: #0094df;
  text-decoration: underline;
  font-weight: 600;
  margin-top: 25px;
  cursor: pointer;
}
.catalog-section {
  padding-top: 60px;
  width: 100%;
}
.catalog-section .container {
  display: flex;
  justify-content: space-between;
  align-items: start;
  gap: 30px;
}
@media (max-width: 992px) {
  .catalog-section .container {
    flex-direction: column;
  }
}
.catalog-elements {
  width: 100%;
  display: grid;
  grid-auto-rows: 201px;
  grid-template-columns: 1fr 1fr;
  gap: 20px 30px;
  grid-template-areas: "b a" "c a" ". .";
}
@media (max-width: 992px) {
  .catalog-elements {
    grid-template-columns: 1fr;
    grid-template-areas: none;
    grid-auto-rows: auto;
  }
}
.catalog-elements-wrap {
  width: 100%;
}
.catalog-element {
  background: #f9f9f9;
  position: relative;
  padding: 30px;
}
@media (max-width: 992px) {
  .catalog-element {
    padding: 20px;
    grid-area: auto !important;
  }
}
.catalog-element a {
  display: block;
  height: 100%;
  text-decoration: none;
}
.catalog-element img {
  position: absolute;
  display: block;
  top: 30px;
  right: 0;
  width: 190px;
  z-index: 0;
}
@media (max-width: 992px) {
  .catalog-element img {
    width: 186px !important;
    height: 141px !important;
    top: 16px;
  }
}
.catalog-element .wrap {
  position: relative;
  z-index: 1;
}
.catalog-element .wrap h3 {
  color: #333;
  font-size: 18px;
  font-weight: 800;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  width: 50%;
}
.catalog-element .wrap p {
  font-size: 14px;
  line-height: 1.3;
  margin-top: 5px;
  color: #535353;
  max-width: 210px;
  margin-bottom: 0;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  width: 50%;
}
.catalog-element .wrap .button {
  background-color: transparent;
  color: #0094df;
  font-size: 14px;
  line-height: 26px;
  font-weight: 600;
  border: 2px solid #0094df;
  border-radius: 40px;
  outline: none;
  transition: all 300ms ease-in-out;
  display: inline-block;
  padding: 2px 42px;
  line-height: 1.5;
  margin-top: 15px;
}
.catalog-element .wrap .button:hover {
  background: #0094df;
  color: #fff;
  text-decoration: none;
}
.catalog-element:nth-child(3) {
  grid-area: a;
  background-color: #f5fbfe;
}
.catalog-element:nth-child(3) img {
  top: auto;
  bottom: 0;
  width: 330px;
}
.catalog-element:nth-child(3) p {
  max-width: 100%;
}
.catalog-element:nth-child(1) {
  grid-area: b;
}
.catalog-element:nth-child(2) {
  grid-area: c;
}
.catalog-subsections-menu {
  flex-basis: 275px;
  flex-shrink: 0;
  background: #f5fbfe;
  padding: 20px;
}
@media (max-width: 992px) {
  .catalog-subsections-menu {
    flex-basis: 100%;
  }
}
.catalog-subsections-menu .catalog-subsections-title {
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 16px;
}
.catalog-subsections-menu .catalog-subsection {
  font-size: 14px;
  line-height: 20px;
  margin-bottom: 10px;
}
.catalog-subsections-menu .catalog-subsection:last-child {
  margin-bottom: 0;
}
.catalog-subsections-menu .catalog-subsection a {
  color: #787878;
  font-weight: 600;
  font-size: 14px;
}
.catalog-subsections-menu .catalog-subsection a.active {
  color: #0094df;
}
.catalog-search-form {
  width: 275px;
  margin-bottom: 20px;
}
@media (max-width: 992px) {
  .catalog-search-form {
    width: 100%;
  }
}
.catalog-search-input {
  width: 100%;
  border-radius: 0 !important;
  border: none !important;
  height: 40px;
  background-color: #f9f9f9;
  font-size: 14px;
  font-weight: 500;
}
.catalog-search-input-wrap {
  position: relative;
}
.catalog-search-input-wrap::after {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translate(0, -50%);
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%230094DF' stroke-linecap='round' stroke-linejoin='round' d='m18 18-5.317-5.317m0 0a6.258 6.258 0 1 0-8.85-8.85 6.258 6.258 0 0 0 8.85 8.85Z'/%3e%3c/svg%3e");
}
.catalog-detail {
  margin-top: 60px;
  display: flex;
  flex-direction: row-reverse;
  gap: 20px;
}
.catalog-detail-img {
  max-width: 428px;
  margin: 80px;
  margin-top: 0;
  margin-right: 0;
  flex-basis: 428px;
  flex-shrink: 0;
  height: 100%;
}
@media (max-width: 992px) {
   .catalog-detail {
     flex-direction: column-reverse;
   }
  .catalog-detail-img {
    float: none;
    width: 100%;
    margin: 0;
    margin-bottom: 10px;
    flex-basis: auto;
  }
}
.catalog-detail .block {
  margin-top: 60px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.catalog-detail .block:first-child {
  margin-top: 0;
}
.catalog-detail .block .cards {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px 20px;
}
@media (max-width: 992px) {
  .catalog-detail .block .cards {
    grid-template-columns: 1fr;
  }
}
.catalog-detail .block .cards .card {
  background-color: #f5fbfe;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media (max-width: 992px) {
  .catalog-detail .block .cards .card {
    padding: 10px;
  }
}
.catalog-detail .block .cards .card h3 {
  font-size: 14px;
  font-weight: 400;
}
.catalog-detail .block .tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.catalog-detail .block .tags .tag {
  padding: 4px 10px;
  border-radius: 100px;
  background-color: #fff;
  font-size: 12px;
  font-weight: 400;
  color: #787878;
}
.catalog-detail .block table {
  table-layout: fixed;
  width: 100%;
  text-align: center;
  border-spacing: 8px;
  border-collapse: separate;
}
@media (max-width: 992px) {
  .catalog-detail .block table {
    display: block;
    max-width: -moz-fit-content;
    max-width: fit-content;
    margin: 0 auto;
    overflow-x: auto;
    white-space: nowrap;
  }
}
.catalog-detail .block table thead th {
  color: #787878;
  background: #f9f9f9;
  padding: 10px;
  font-size: 14px;
  font-weight: 500;
}
.catalog-detail .block table tbody td {
  font-weight: 500;
  padding: 10px;
  font-size: 14px;
}
.catalog-front .catalog-category-item:nth-child(n+10) {
  display: none;
}

@media (max-width: 992px) {
  .catalog-subsection-wrap {
    width: 100%;
  }
}
.form-download {
  height: 672px;
  margin-top: 50px;
  padding-top: 50px;
  position: relative;
}
@media (max-width: 992px) {
  .form-download {
    height: auto;
  }
}
.form-download-background {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
  width: 100%;
  height: 100%;
  z-index: -1;
  max-width: 2320px;
}
.form-download-background img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
}
@media (max-width: 992px) {
  .form-download-background {
    display: none;
  }
}
.form-download-text, .form-download-description {
  text-align: center;
}
.form-download-description {
  font-size: 14px;
  margin-top: 25px;
  color: #535353;
}
.form-download-title {
  font-size: 42px;
  font-weight: 700;
  line-height: 1.3;
  color: #1e2631;
}
@media (max-width: 992px) {
  .form-download-title {
    font-size: 24px;
  }
}
.form-download-subtitle {
  font-size: 24px;
  font-weight: 400;
}
@media (max-width: 992px) {
  .form-download-subtitle {
    font-size: 18px;
  }
}
.form-download-wrap {
  margin-top: 25px;
  display: flex;
  justify-content: space-between;
  max-width: 945px;
  margin: 0 auto;
}
@media (max-width: 992px) {
  .form-download-wrap {
    flex-direction: column;
    gap: 15px;
  }
}
.form-download-input, .form-download-button {
  width: 290px;
}
@media (max-width: 992px) {
  .form-download-input, .form-download-button {
    width: 100%;
  }
}
.form-download-button {
  cursor: pointer;
}

#calc {
  height: 540px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

#calc .calc {
  width: 100%;
  max-width: 1140px;
  height: 240px;
  margin-top: 30px;
  -webkit-box-shadow: 0 0 70px 0 rgba(0, 0, 0, 0.15);
  box-shadow: 0 0 70px 0 rgba(0, 0, 0, 0.15);
}

#calc .calc form {
  height: 100%;
}

#calc h2 {
  font-size: 42px;
  font-weight: 700;
  line-height: 1.3;
  color: #1e2631;
  text-align: center;
}
@media (max-width: 992px) {
  #calc h2 {
    font-size: 24px;
  }
}

#calc .calc form h4 {
  margin: 0 0 25px;
  font-size: 24px;
  font-weight: 400;
}

#calc .calc form h4 span {
  font-size: 14px;
}

#calc .calc form .progress-wrapper {
  width: 300px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin-top: 35px;
}

#calc .calc form .progress-wrapper .progress-bar {
  position: relative;
  width: 170px;
  height: 18px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #0094df;
  -webkit-border-radius: 18px;
  border-radius: 18px;
  margin: 0 10px;
}

#calc .calc form .progress-wrapper .progress-bar .progress {
  position: absolute;
  left: 2px;
  top: 2px;
  height: 12px;
  -webkit-border-radius: 12px;
  border-radius: 12px;
  background-color: #0094df;
}

#calc .calc form .progress-wrapper .progress-bar .progress.n1 {
  width: 30%;
}

#calc .calc form .progress-wrapper .progress-bar .progress.n2 {
  width: 50%;
}

#calc .calc form .progress-wrapper .progress-bar .progress.n3 {
  width: 75%;
}

#calc .calc form .progress-wrapper .progress-bar .progress.n4 {
  width: 90%;
}

#calc .calc form .progress-wrapper .progress-bar .progress.n5 {
  width: 95%;
}

#calc .calc form .progress-wrapper .progress-bar .progress.n6 {
  width: 95%;
}

#calc .calc form .progress-wrapper .progress-bar .progress.n7 {
  width: 99%;
}

#calc .calc form .progress-wrapper .progress-bar .persent {
  position: absolute;
  right: 6px;
  font-size: 14px;
  line-height: 16px;
  font-weight: 700;
  color: #0094df;
}

#calc .calc form .progress-wrapper .progress-bar .persent.n6, #calc .calc form .progress-wrapper .progress-bar .persent.n7 {
  color: #fff;
}

#calc .calc form .progress-wrapper .gotostep {
  font-size: 13px;
  line-height: 18px;
  font-weight: 600;
  color: #0094df;
  text-decoration: underline;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

#calc .calc form .progress-wrapper .gotostep:hover {
  color: #23345a;
}

#calc .calc form .step {
  display: none;
  height: 100%;
}

#calc .calc form .step .stepwrap {
  height: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

#calc .calc form .step input[type=text] {
  width: 680px;
}

#calc .calc form .step .wrap {
  width: 680px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

#calc .calc form .step label {
  cursor: pointer;
}

#calc .calc form .step.step-01 {
  display: block;
}

#calc .calc form .step.step-03 input[type=text] {
  width: 350px;
}

#calc .calc form .step.step-04 input[type=radio] {
  display: none;
}

#calc .calc form .step.step-04 input[type=radio]:checked + label {
  background-color: #0094df;
  color: #fff;
}

#calc .calc form .step.step-04 label {
  width: 50%;
  height: 40px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #9a9a9a;
  font-size: 16px;
  font-weight: 400;
  line-height: 38px;
  color: #1e2631;
  text-align: center;
  -webkit-transition: 0.4s;
  transition: 0.4s;
}

#calc .calc form .step.step-04 label:first-of-type {
  -webkit-border-top-left-radius: 40px;
  border-top-left-radius: 40px;
  -webkit-border-bottom-left-radius: 40px;
  border-bottom-left-radius: 40px;
  border-right: none;
}

#calc .calc form .step.step-04 label:last-of-type {
  -webkit-border-top-right-radius: 40px;
  border-top-right-radius: 40px;
  -webkit-border-bottom-right-radius: 40px;
  border-bottom-right-radius: 40px;
}

#calc .calc form .step.step-06 input[type=email], #calc .calc form .step.step-06 input[type=tel] {
  width: 320px;
}

#calc .calc form .step.step-06 button {
  margin: 0;
  padding: 0;
  border: none;
  background: 0 0;
  cursor: pointer;
}

#calc .calc form .step.step-07 .progress-wrapper {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

#calc .calc form .step.step-07 .thanks {
  font-size: 16px;
  font-weight: 400;
  line-height: 40px;
}

@media (max-width: 992px) {
  input[type=email], input[type=tel], input[type=text], #calc .calc form .step.step-06 input[type=email], #calc .calc form .step.step-06 input[type=tel] {
    width: 100%;
  }
  #calc .calc form .step .stepwrap {
    padding: 8px;
  }
  #calc .calc form h4 {
    font-size: 16px;
  }
  #calc .calc form .step input[type=text] {
    width: 100%;
  }
  #calc .calc form .progress-wrapper, #calc .calc form .step .wrap {
    width: 100%;
    flex-wrap: wrap;
  }
  #calc .calc form .progress-wrapper .progress-bar {
    margin-bottom: 10px;
  }
  #calc .calc form .step, #calc .calc form, #calc .calc {
    height: auto;
  }
  #calc .calc form .progress-wrapper {
    justify-content: center;
  }
  #calc .calc form .progress-wrapper .progress-bar {
    width: 100%;
    margin: 10px 0;
  }
}
.production {
  position: relative;
  padding: 100px 0;
}
@media (max-width: 992px) {
  .production {
    padding: 60px 0;
  }
}
.production-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.production-background img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
}
.production-title {
  font-size: 42px;
  font-weight: 700;
  line-height: 1.3;
  color: #fff;
  text-align: center;
}
@media (max-width: 992px) {
  .production-title {
    font-size: 24px;
  }
}
.production-list {
  margin-top: 40px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 20px;
}
@media (max-width: 992px) {
  .production-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 768px) {
  .production-list {
    grid-template-columns: 1fr;
  }
}
.production-item {
  background-color: #fff;
  padding: 30px;
}
.production-item-image {
  width: 100%;
  height: 155px;
}
.production-item-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.production-item-name {
  margin-top: 5px;
  font-weight: 400;
  border-left: 4px solid #0094df;
  padding-left: 18px;
  font-size: 21px;
  line-height: 1.2;
}
.production-item-text {
  font-size: 14px;
  margin-top: 30px;
  color: #535353;
}
.production-item-text ul {
  padding-left: 15px;
}

.includes {
  position: relative;
  padding: 100px 0;
}
@media (max-width: 992px) {
  .includes {
    padding: 60px 0;
  }
}
.includes-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.includes-background img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
}
.includes-title {
  font-size: 42px;
  font-weight: 700;
  line-height: 1.3;
  color: #fff;
  text-align: center;
}
@media (max-width: 992px) {
  .includes-title {
    font-size: 24px;
  }
}
.includes-subtitle {
  color: #fff;
  font-size: 24px;
  text-align: center;
}
.includes-list {
  margin-top: 40px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  gap: 30px;
}
@media (max-width: 992px) {
  .includes-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 768px) {
  .includes-list {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.includes-item {
  background-color: #fff;
  padding: 20px;
  position: relative;
  padding-bottom: 110px;
}
@media (max-width: 768px) {
  .includes-item {
    padding: 20px;
    padding-bottom: 50px;
  }
}
.includes-item-image {
  width: 100%;
  height: 130px;
  position: absolute;
  bottom: 0;
  right: 0;
}
@media (max-width: 768px) {
  .includes-item-image {
    height: 80px !important;
  }
}
.includes-item-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: bottom right;
}
.includes-item-name {
  margin-top: 5px;
  font-weight: 500;
  border-bottom: 2px solid #0094df;
  padding-bottom: 8px;
  font-size: 18px;
  line-height: 1.2;
  min-height: 75px;
  display: flex;
  align-items: flex-end;
  position: relative;
  z-index: 1;
}
.includes-item-text {
  font-size: 14px;
  margin-top: 10px;
  color: #535353;
  position: relative;
  z-index: 1;
}
.includes-item-text ul {
  padding-left: 15px;
}

.about-front {
  margin-top: 115px;
  margin-bottom: 115px;
}
@media (max-width: 992px) {
  .about-front {
    margin-top: 60px;
    margin-bottom: 60px;
  }
}
.about-title {
  font-size: 42px;
  font-weight: 700;
  line-height: 1.3;
  color: #1e2631;
  text-align: center;
}
@media (max-width: 992px) {
  .about-title {
    font-size: 24px;
  }
}
.about-grid {
  margin-top: 45px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-rows: 310px;
  gap: 20px 45px;
  grid-template-areas: "a b b" "a c c";
}
@media (max-width: 992px) {
  .about-grid {
    grid-template-columns: 1fr;
    grid-template-areas: none;
    grid-auto-rows: auto !important;
  }
}
.about-grid .about-block {
  position: relative;
}
@media (max-width: 992px) {
  .about-grid .about-block {
    grid-area: auto !important;
  }
}
.about-grid .about-block-background {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}
.about-grid .about-block-background img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.about-grid .about-block-main {
  grid-area: a;
  background-color: #23345a;
  padding: 50px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #fff;
}
@media (max-width: 992px) {
  .about-grid .about-block-main {
    padding: 40px;
  }
}
@media (max-width: 768px) {
  .about-grid .about-block-main {
    padding: 20px;
  }
}
.about-grid .about-block-main h3 {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  color: #fff;
  margin-bottom: 25px;
  font-size: 30px;
  font-weight: 800;
}
.about-grid .about-block-main ul {
  padding-left: 15px;
}
.about-grid .about-block-main ul li {
  margin-bottom: 10px;
}
@media (max-width: 992px) {
  .about-grid .about-block-main ul li {
    font-size: 14px;
  }
}
.about-grid .about-block-main ul li:last-child {
  margin-bottom: 0;
}
.about-grid .about-block-text {
  grid-area: b;
  display: flex;
  justify-content: center;
  align-items: center;
}
.about-grid .about-block-text h3 {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  color: #fff;
  font-weight: 800;
  font-size: 30px;
}
@media (max-width: 992px) {
  .about-grid .about-block-text h3 {
    font-size: 24px;
  }
}
@media (max-width: 992px) {
  .about-grid .about-block-text {
    padding: 40px;
  }
}
.about-grid .about-block-info {
  grid-area: c;
  background: #e5ebff;
  padding: 50px 90px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
@media (max-width: 992px) {
  .about-grid .about-block-info {
    padding: 40px;
  }
}
@media (max-width: 768px) {
  .about-grid .about-block-info {
    padding: 20px;
  }
}
.about-grid .about-block-info h3 {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  color: #1e2631;
  font-size: 30px;
  font-weight: 800;
  margin-bottom: 25px;
}
@media (max-width: 992px) {
  .about-grid .about-block-info h3 {
    font-size: 24px;
  }
}
.about-grid .about-block-info .wrap {
  display: flex;
  width: 100%;
  justify-content: space-between;
  gap: 10px;
}
.about-grid .about-block-info .wrap ul {
  padding-left: 15px;
}
.about-grid .about-block-info .wrap ul li {
  margin-bottom: 15px;
}
@media (max-width: 992px) {
  .about-grid .about-block-info .wrap ul li {
    font-size: 14px;
  }
}
.about-grid .about-block-info .wrap ul li:last-child {
  margin-bottom: 0;
}
.about-grid .about-block-info .wrap .images {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.about-grid .about-block-info .wrap .images img {
  width: 100%;
}

.process {
  margin-top: 115px;
}
.process-title {
  font-size: 42px;
  font-weight: 700;
  line-height: 1.3;
  color: #1e2631;
  text-align: center;
}
@media (max-width: 992px) {
  .process-title {
    font-size: 24px;
  }
}
.process-list {
  margin-top: 40px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 30px;
}
@media (max-width: 992px) {
  .process-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 768px) {
  .process-list {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.process-item {
  background-color: #fff;
  box-shadow: 0 0 70px 0 rgba(0, 0, 0, 0.15);
}
.process-item-heading {
  background: #23345a;
  color: #fff;
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 15px 20px;
  font-size: 21px;
  font-weight: 800;
}
.process-item-heading .icon {
  margin-left: auto;
  margin-right: 5px;
}
.process-item-info {
  padding: 30px 50px;
}
.process-item-info li {
  margin-bottom: 20px;
  font-weight: 600;
}
.process-item-info li:last-child {
  margin-bottom: 0;
}
.process-item-info li::marker {
  content: "";
  font-size: 0;
}

.projects {
  margin-top: 115px;
  margin-bottom: 115px;
}
.projects-title {
  font-size: 42px;
  font-weight: 700;
  line-height: 1.3;
  color: #1e2631;
  text-align: center;
}
@media (max-width: 992px) {
  .projects-title {
    font-size: 24px;
  }
}
.projects-list {
  margin-top: 40px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 30px;
}
@media (max-width: 992px) {
  .projects-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 768px) {
  .projects-list {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}
.projects-showmore {
  display: inline-block;
  margin: 0 auto;
  font-size: 18px;
  color: #0094df;
  text-decoration: underline;
  font-weight: 600;
  margin-top: 25px;
  cursor: pointer;
}
.projects-showmore-wrapper {
  display: flex;
  justify-content: center;
}
.projects-item-image {
  height: 200px;
}
.projects-item-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.projects-item-name {
  margin-top: 30px;
  font-size: 21px;
  font-weight: 400;
  padding-left: 20px;
  border-left: 4px solid #0094df;
  line-height: 1.2;
}
.projects-item-name strong {
  font-weight: 800;
}
.projects-item-text {
  margin-top: 10px;
  font-size: 14px;
  line-height: 1.7;
  color: #535353;
}
.projects-item:nth-child(n+7) {
  display: none;
}
.projects-list-opened .projects-item:nth-child(n+7) {
  display: block !important;
}

.company {
  position: relative;
  padding: 115px 0;
}
@media (max-width: 992px) {
  .company {
    padding: 60px 0;
  }
}
.company-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}
.company-background img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
}
.company-title {
  font-size: 42px;
  font-weight: 700;
  line-height: 1.3;
  color: #fff;
  text-align: center;
}
@media (max-width: 992px) {
  .company-title {
    font-size: 24px;
  }
}
.company-grid {
  margin-top: 45px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-auto-rows: 310px;
  gap: 20px 45px;
  grid-template-areas: "a b b" "a c c";
}
@media (max-width: 992px) {
  .company-grid {
    grid-template-columns: 1fr;
    grid-template-areas: none;
    grid-auto-rows: auto !important;
  }
}
.company-grid .company-block {
  position: relative;
}
@media (max-width: 992px) {
  .company-grid .company-block {
    grid-area: auto !important;
  }
}
.company-grid .company-block-background {
  position: absolute;
  background: #fff;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}
.company-grid .company-block-background img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: right center;
}
.company-grid .company-block:nth-child(1) {
  grid-area: a;
}
.company-grid .company-block:nth-child(2) {
  grid-area: b;
}
.company-grid .company-block:nth-child(3) {
  grid-area: c;
}
.company-grid .company-block-main {
  background-color: #23345a;
  padding: 50px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #fff;
}
@media (max-width: 768px) {
  .company-grid .company-block-main {
    padding: 10px;
  }
}
.company-grid .company-block-main h3 {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  color: #fff;
  margin-bottom: 25px;
  font-size: 30px;
  font-weight: 800;
}
@media (max-width: 768px) {
  .company-grid .company-block-main h3 {
    font-size: 24px;
  }
}
.company-grid .company-block-main ul {
  padding-left: 15px;
}
.company-grid .company-block-main ul li {
  margin-bottom: 10px;
}
.company-grid .company-block-main ul li:last-child {
  margin-bottom: 0;
}
.company-grid .company-block-text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 20px 90px;
}
@media (max-width: 768px) {
  .company-grid .company-block-text {
    padding: 10px;
  }
}
.company-grid .company-block-text ul {
  padding-left: 15px;
}
.company-grid .company-block-text ul li {
  margin-bottom: 15px;
  font-size: 14px;
}
.company-grid .company-block-text ul li:last-child {
  margin-bottom: 0;
}
.company-grid .company-block-text h3 {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  color: #1e2631;
  font-weight: 800;
  font-size: 30px;
}
@media (max-width: 768px) {
  .company-grid .company-block-text h3 {
    font-size: 24px;
  }
}
.company-grid .company-block-info {
  background: #e5ebff;
  padding: 20px 90px;
  display: flex;
  flex-direction: column;
}
@media (max-width: 768px) {
  .company-grid .company-block-info {
    padding: 10px;
    width: 100%;
  }
}
.company-grid .company-block-info h3 {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.3;
  color: #1e2631;
  font-size: 30px;
  font-weight: 800;
  margin-bottom: 25px;
}
@media (max-width: 768px) {
  .company-grid .company-block-info h3 {
    font-size: 24px;
  }
}
.company-grid .company-block-info .wrap {
  display: flex;
  width: 100%;
  justify-content: space-between;
  gap: 10px;
  padding-top: 0 !important;
}
@media (max-width: 992px) {
  .company-grid .company-block-info .wrap {
    max-width: 90vw;
  }
}
.company-grid .company-block-info .wrap ul {
  padding-left: 15px;
}
.company-grid .company-block-info .wrap ul li {
  margin-bottom: 15px;
  font-size: 14px;
}
.company-grid .company-block-info .wrap ul li:last-child {
  margin-bottom: 0;
}
.company-grid .company-block-info .wrap .images {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.company-grid .company-block-info .wrap .images img {
  width: 100%;
}
.company .swiper-pagination {
  position: absolute !important;
  bottom: 10px !important;
  display: flex;
  justify-content: flex-end;
}

.clients {
  margin-top: 115px;
}
.clients-title {
  font-size: 42px;
  font-weight: 700;
  line-height: 1.3;
  color: #1e2631;
  text-align: center;
}
@media (max-width: 992px) {
  .clients-title {
    font-size: 24px;
  }
}
.clients-grid {
  margin-top: 40px;
  display: grid;
  gap: 40px 30px;
  place-items: center;
  grid-template-columns: repeat(6, 1fr);
}
@media (max-width: 992px) {
  .clients-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
.clients-image {
  max-width: 100%;
}
.clients-image img {
  max-width: 100%;
}

.feedback {
  margin-top: 55px;
  padding-top: 60px;
  padding-bottom: 140px;
  background-image: linear-gradient(to top, #e5ebff 0, #fff 80%);
}
.feedback-title {
  font-size: 42px;
  font-weight: 700;
  line-height: 1.3;
  color: #1e2631;
  text-align: center;
}
@media (max-width: 992px) {
  .feedback-title {
    font-size: 24px;
  }
}
.feedback-list {
  margin-top: 40px;
}
.feedback-item {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 30px;
}
@media (max-width: 992px) {
  .feedback-item {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 768px) {
  .feedback-item {
    grid-template-columns: repeat(2, 1fr);
  }
}
.feedback-item-image {
  width: 100%;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
}
.feedback-item-image img {
  display: block;
  width: 100%;
  cursor: pointer;
}

.director {
  padding-top: 150px;
  padding-bottom: 150px;
}
@media (max-width: 992px) {
  .director {
    padding-top: 60px;
    padding-bottom: 60px;
  }
}
.director-title {
  font-size: 42px;
  font-weight: 700;
  line-height: 1.3;
  color: #1e2631;
  text-align: center;
  font-size: 41.4px;
}
@media (max-width: 992px) {
  .director-title {
    font-size: 24px;
  }
}
.director-box {
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
  margin-top: 40px;
  background: #fff;
  padding: 100px;
  padding-right: 160px;
  display: flex;
  gap: 60px;
  align-items: center;
}
@media (max-width: 992px) {
  .director-box {
    padding: 40px;
    padding-right: 60px;
  }
}
@media (max-width: 768px) {
  .director-box {
    flex-direction: column;
    gap: 30px;
    padding: 10px;
  }
}
.director-image {
  width: 295px;
}
.director-name {
  border-left: 4px solid #0094df;
  padding-left: 15px;
  font-size: 24px;
  line-height: 1.3;
}
.director-name strong {
  font-weight: 700;
}
.director-name span {
  font-weight: 400;
  font-size: 18px;
}
.director-text, .director-description {
  font-size: 14px;
  margin-top: 35px;
}
.director-description {
  display: flex;
  align-items: center;
  width: 100%;
  justify-content: space-between;
}

.contacts {
  position: relative;
  width: 100%;
  height: 680px;
}
@media (max-width: 992px) {
  .contacts {
    height: auto;
  }
}
.contacts .map {
  position: absolute;
  z-index: 1;
  height: 100%;
  width: 100%;
}
@media (max-width: 992px) {
  .contacts .map {
    position: relative;
    height: 400px;
  }
}
@media (max-width: 768px) {
  .contacts .map {
    height: 350px;
  }
}
.contacts .container {
  height: 100%;
}
@media (max-width: 992px) {
  .contacts .container {
    height: auto;
  }
}
@media (max-width: 768px) {
  .contacts .container {
    padding: 0;
  }
}
.contacts-box {
  background: url("/local/templates/default/css/../images/pattern/grey.jpg");
  padding: 50px 105px 0 120px;
  height: 100%;
  width: 650px;
  margin-left: auto;
  position: relative;
  z-index: 2;
}
@media (max-width: 992px) {
  .contacts-box {
    width: 100%;
    padding: 40px;
  }
}
@media (max-width: 768px) {
  .contacts-box {
    padding: 20px;
  }
}
.contacts-title {
  font-size: 42px;
  font-weight: 700;
  line-height: 1.3;
  color: #1e2631;
}
@media (max-width: 992px) {
  .contacts-title {
    font-size: 24px;
  }
}
.contacts-text {
  font-size: 14px;
  margin-top: 15px;
  padding-bottom: 20px;
  border-bottom: 1px solid #eeeeee;
}
.contacts-item {
  margin-top: 20px;
}
.contacts-item-name {
  border-left: 4px solid #0094df;
  padding-left: 12px;
  font-size: 21px;
  font-weight: 800;
}
.contacts-item-value {
  margin-top: 15px;
  font-size: 14px;
  color: #333;
}
.contacts-item-phone {
  font-size: 21px;
  margin-top: 15px;
}
.contacts-item-phone a {
  color: #333;
  transition: all 300ms ease-in-out;
}
.contacts-item-phone a:hover, .contacts-item-phone a:focus {
  color: #0094df;
}
.contacts-description {
  font-size: 14px;
  margin-top: 20px;
}
.contacts-form {
  width: 100%;
  margin-top: 20px;
}
.contacts-input, .contacts-button {
  width: 100%;
  font-size: 16px;
  height: 40px;
}
.contacts-button {
  margin-top: 15px;
  cursor: pointer;
}

.form-consult {
  margin-top: 60px;
}
.form-consult-box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 160px;
  width: 100%;
  background-color: #f5fbfe;
  padding: 30px;
}
@media (max-width: 768px) {
  .form-consult-box {
    height: auto;
  }
}
.form-consult-box h2 {
  font-size: 18px;
  font-weight: 800;
  margin-bottom: 5px;
}
.form-consult-box p {
  margin-bottom: 20px;
  color: #535353;
}
.form-consult-texture img {
  height: 160px;
  width: auto;
}
@media (max-width: 768px) {
  .form-consult-texture img {
    height: 150px;
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: 0;
  }
}
.form-consult .button {
  background-color: #0094df;
  color: #fff;
  font-size: 14px;
  line-height: 26px;
  font-weight: 600;
  border: 1px solid #0094df;
  border-radius: 40px;
  outline: none;
  transition: all 300ms ease-in-out;
  display: inline-block;
  padding: 2px 30px;
  font-size: 14px;
  position: relative;
  z-index: 1;
}

.footer {
  background: #1f2a3c;
  color: #fff;
  padding: 50px 0;
}
.footer-content, .footer-copyright {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 30px;
}
.footer-logo {
  grid-area: auto/span 4;
  width: 210px;
}
@media (max-width: 992px) {
  .footer-logo {
    grid-area: auto/span 12;
  }
}
.footer-logo img {
  width: 100%;
}
.footer-navigation {
  grid-area: auto/span 2;
}
@media (max-width: 992px) {
  .footer-navigation {
    grid-area: auto/span 12;
  }
}
@media (max-width: 992px) {
  .footer-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    margin-bottom: 0;
  }
}
.footer-list-item {
  font-size: 14px;
  margin-bottom: 10px;
}
.footer-list-item::marker {
  content: "";
  font-size: 0;
}
.footer-list-item:last-child {
  margin-bottom: 0;
}
@media (max-width: 992px) {
  .footer-list-item {
    margin-bottom: 10px;
  }
}
.footer-list-link {
  color: #fff;
  transition: all 300ms ease-in-out;
}
.footer-address {
  grid-area: auto/span 4;
}
@media (max-width: 992px) {
  .footer-address {
    grid-area: auto/span 12;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
.footer-address-item {
  margin-top: 15px;
  max-width: 280px;
}
.footer-address-item:first-child {
  margin-top: 0;
}
@media (max-width: 992px) {
  .footer-address-item {
    margin-top: 0;
  }
}
.footer-address-item-label {
  color: #687180;
  font-size: 14px;
}
.footer-address-item-value {
  margin-top: 10px;
  font-weight: 500;
}
.footer-contacts {
  grid-area: auto/span 2;
}
@media (max-width: 992px) {
  .footer-contacts {
    grid-area: auto/span 12;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
.footer-contacts-item {
  margin-top: 15px;
  max-width: 280px;
}
@media (max-width: 992px) {
  .footer-contacts-item {
    margin-top: 0;
  }
}
.footer-contacts-item:first-child {
  margin-top: 0;
}
.footer-contacts-item-label {
  color: #687180;
  font-size: 14px;
}
.footer-contacts-item-value {
  margin-top: 10px;
  font-size: 21px;
  font-weight: 800;
}
.footer-contacts-item-value a {
  color: #fff;
  transition: all 300ms ease-in-out;
}
.footer-contacts-item-value a:hover, .footer-contacts-item-value a:focus {
  color: #0094df;
}
@media (max-width: 1024px) {
  .footer-contacts-item-value {
    font-size: 18px;
  }
}
.footer-copyright {
  margin-top: 60px;
}
.footer-copyright-item {
  grid-area: auto/span 4;
  color: #687180;
  font-size: 14px;
}
@media (max-width: 992px) {
  .footer-copyright-item {
    grid-area: auto/span 6;
  }
}
.footer-policy {
  grid-area: auto/span 4;
  font-size: 14px;
}
@media (max-width: 992px) {
  .footer-policy {
    grid-area: auto/span 12;
  }
}
.footer-policy a {
  color: #687180;
}

.catalog-table {
  overflow-x:auto;
}

.catalog-detail-page table {
  width: 100% !important;
  background-color: #FFFFFF;
  border-collapse: separate;
  border-spacing: 8px;
  border-width: 0;
  color: #333333;
  table-layout: fixed;
}

.catalog-detail-page table tr {
  background-color: #FFFFFF;
  transition: 0.25s ease-in-out;
}
.catalog-detail-page table tr:hover {
  background-color: #FBFBFB;
}

.catalog-detail-page table td, .catalog-detail-page table th {
  border-width: 0px;
  border-color: #F8F8F8;
  border-style: solid;
  padding: 10px;
  text-align: center;
}

.catalog-detail-page table tbody tr:nth-child(1) {
  background-color: #F9F9F9 !important;
  color: #787878;
}

.catalog-detail-page table:has(thead) tbody tr:nth-child(1) {
  background-color: #FFFFFF !important;
  color: #333333;
}

.catalog-detail-page table:has(thead) thead tr {
  background-color: #F9F9F9 !important;
  color: #787878;
}

@media (max-width: 991.9px) {
	.catalog-detail-page table {
		border-spacing: 3px;
		font-size: 14px;
	}
	.catalog-detail-page table td, .catalog-detail-page table th {
		padding: 4px;
	}
}
.catalog-detail-fullimage {
    text-align: center;
	margin-bottom: 20px;
}

.catalog-detail-fullimage .catalog-detail-img {
    margin: 0;
}
/* End */
/* /local/templates/default/css/styles_1725011524.css?1725011640243 */
/* /local/templates/default/css/normalize.css?172501152412330 */
/* /local/templates/default/css/magnific-popup.css?17250115246852 */
/* /local/templates/default/css/theme.css?173080657451537 */
