.air-datepicker-cell.-year-.-other-decade-,.air-datepicker-cell.-day-.-other-month-{color:var(--adp-color-other-month)}.air-datepicker-cell.-year-.-other-decade-:hover,.air-datepicker-cell.-day-.-other-month-:hover{color:var(--adp-color-other-month-hover)}.-disabled-.-focus-.air-datepicker-cell.-year-.-other-decade-,.-disabled-.-focus-.air-datepicker-cell.-day-.-other-month-{color:var(--adp-color-other-month)}.-selected-.air-datepicker-cell.-year-.-other-decade-,.-selected-.air-datepicker-cell.-day-.-other-month-{color:#fff;background:var(--adp-background-color-selected-other-month)}.-selected-.-focus-.air-datepicker-cell.-year-.-other-decade-,.-selected-.-focus-.air-datepicker-cell.-day-.-other-month-{background:var(--adp-background-color-selected-other-month-focused)}.-in-range-.air-datepicker-cell.-year-.-other-decade-,.-in-range-.air-datepicker-cell.-day-.-other-month-{background-color:var(--adp-background-color-in-range);color:var(--adp-color)}.-in-range-.-focus-.air-datepicker-cell.-year-.-other-decade-,.-in-range-.-focus-.air-datepicker-cell.-day-.-other-month-{background-color:var(--adp-background-color-in-range-focused)}.air-datepicker-cell.-year-.-other-decade-:empty,.air-datepicker-cell.-day-.-other-month-:empty{background:none;border:none}.air-datepicker-cell{border-radius:var(--adp-cell-border-radius);box-sizing:border-box;cursor:pointer;display:flex;position:relative;align-items:center;justify-content:center;z-index:1}.air-datepicker-cell.-focus-{background:var(--adp-cell-background-color-hover)}.air-datepicker-cell.-current-{color:var(--adp-color-current-date)}.air-datepicker-cell.-current-.-focus-{color:var(--adp-color)}.air-datepicker-cell.-current-.-in-range-{color:var(--adp-color-current-date)}.air-datepicker-cell.-disabled-{cursor:default;color:var(--adp-color-disabled)}.air-datepicker-cell.-disabled-.-focus-{color:var(--adp-color-disabled)}.air-datepicker-cell.-disabled-.-in-range-{color:var(--adp-color-disabled-in-range)}.air-datepicker-cell.-disabled-.-current-.-focus-{color:var(--adp-color-disabled)}.air-datepicker-cell.-in-range-{background:var(--adp-cell-background-color-in-range);border-radius:0}.air-datepicker-cell.-in-range-:hover,.air-datepicker-cell.-in-range-.-focus-{background:var(--adp-cell-background-color-in-range-hover)}.air-datepicker-cell.-range-from-{border:1px solid var(--adp-cell-border-color-in-range);background-color:var(--adp-cell-background-color-in-range);border-radius:var(--adp-cell-border-radius) 0 0 var(--adp-cell-border-radius)}.air-datepicker-cell.-range-to-{border:1px solid var(--adp-cell-border-color-in-range);background-color:var(--adp-cell-background-color-in-range);border-radius:0 var(--adp-cell-border-radius) var(--adp-cell-border-radius) 0}.air-datepicker-cell.-range-to-.-range-from-{border-radius:var(--adp-cell-border-radius)}.air-datepicker-cell.-selected-{color:#fff;border:none;background:var(--adp-cell-background-color-selected)}.air-datepicker-cell.-selected-.-current-{color:#fff;background:var(--adp-cell-background-color-selected)}.air-datepicker-cell.-selected-.-focus-{background:var(--adp-cell-background-color-selected-hover)}
.air-datepicker-body{transition:all var(--adp-transition-duration) var(--adp-transition-ease)}.air-datepicker-body.-hidden-{display:none}.air-datepicker-body--day-names{display:grid;grid-template-columns:repeat(7, var(--adp-day-cell-width));margin:8px 0 3px}.air-datepicker-body--day-name{color:var(--adp-day-name-color);display:flex;align-items:center;justify-content:center;flex:1;text-align:center;text-transform:uppercase;font-size:.8em}.air-datepicker-body--day-name.-clickable-{cursor:pointer}.air-datepicker-body--day-name.-clickable-:hover{color:var(--adp-day-name-color-hover)}.air-datepicker-body--cells{display:grid}.air-datepicker-body--cells.-days-{grid-template-columns:repeat(7, var(--adp-day-cell-width));grid-auto-rows:var(--adp-day-cell-height)}.air-datepicker-body--cells.-months-{grid-template-columns:repeat(3, 1fr);grid-auto-rows:var(--adp-month-cell-height)}.air-datepicker-body--cells.-years-{grid-template-columns:repeat(4, 1fr);grid-auto-rows:var(--adp-year-cell-height)}
.air-datepicker-nav{display:flex;justify-content:space-between;border-bottom:1px solid var(--adp-border-color-inner);min-height:var(--adp-nav-height);padding:var(--adp-padding);box-sizing:content-box}.-only-timepicker- .air-datepicker-nav{display:none}.air-datepicker-nav--title,.air-datepicker-nav--action{display:flex;cursor:pointer;align-items:center;justify-content:center}.air-datepicker-nav--action{width:var(--adp-nav-action-size);border-radius:var(--adp-border-radius);-webkit-user-select:none;-moz-user-select:none;user-select:none}.air-datepicker-nav--action:hover{background:var(--adp-background-color-hover)}.air-datepicker-nav--action:active{background:var(--adp-background-color-active)}.air-datepicker-nav--action.-disabled-{visibility:hidden}.air-datepicker-nav--action svg{width:32px;height:32px}.air-datepicker-nav--action path{fill:none;stroke:var(--adp-nav-arrow-color);stroke-width:2px}.air-datepicker-nav--title{border-radius:var(--adp-border-radius);padding:0 8px}.air-datepicker-nav--title i{font-style:normal;color:var(--adp-nav-color-secondary);margin-left:.3em}.air-datepicker-nav--title:hover{background:var(--adp-background-color-hover)}.air-datepicker-nav--title:active{background:var(--adp-background-color-active)}.air-datepicker-nav--title.-disabled-{cursor:default;background:none}
.air-datepicker-buttons{display:grid;grid-auto-columns:1fr;grid-auto-flow:column}.air-datepicker-button{display:inline-flex;color:var(--adp-btn-color);border-radius:var(--adp-btn-border-radius);cursor:pointer;height:var(--adp-btn-height);border:none;background:rgba(255,255,255,0)}.air-datepicker-button:hover{color:var(--adp-btn-color-hover);background:var(--adp-btn-background-color-hover)}.air-datepicker-button:focus{color:var(--adp-btn-color-hover);background:var(--adp-btn-background-color-hover);outline:none}.air-datepicker-button:active{background:var(--adp-btn-background-color-active)}.air-datepicker-button span{outline:none;display:flex;align-items:center;justify-content:center;width:100%;height:100%}
.air-datepicker-time{display:grid;grid-template-columns:max-content 1fr;grid-column-gap:12px;align-items:center;position:relative;padding:0 var(--adp-time-padding-inner)}.-only-timepicker- .air-datepicker-time{border-top:none}.air-datepicker-time--current{display:flex;align-items:center;flex:1;font-size:14px;text-align:center}.air-datepicker-time--current-colon{margin:0 2px 3px;line-height:1}.air-datepicker-time--current-hours,.air-datepicker-time--current-minutes{line-height:1;font-size:19px;font-family:"Century Gothic",CenturyGothic,AppleGothic,sans-serif;position:relative;z-index:1}.air-datepicker-time--current-hours:after,.air-datepicker-time--current-minutes:after{content:"";background:var(--adp-background-color-hover);border-radius:var(--adp-border-radius);position:absolute;left:-2px;top:-3px;right:-2px;bottom:-2px;z-index:-1;opacity:0}.air-datepicker-time--current-hours.-focus-:after,.air-datepicker-time--current-minutes.-focus-:after{opacity:1}.air-datepicker-time--current-ampm{text-transform:uppercase;align-self:flex-end;color:var(--adp-time-day-period-color);margin-left:6px;font-size:11px;margin-bottom:1px}.air-datepicker-time--row{display:flex;align-items:center;font-size:11px;height:17px;background:linear-gradient(to right, var(--adp-time-track-color), var(--adp-time-track-color)) left 50%/100% var(--adp-time-track-height) no-repeat}.air-datepicker-time--row:first-child{margin-bottom:4px}.air-datepicker-time--row input[type=range]{background:none;cursor:pointer;flex:1;height:100%;width:100%;padding:0;margin:0;-webkit-appearance:none}.air-datepicker-time--row input[type=range]::-webkit-slider-thumb{-webkit-appearance:none}.air-datepicker-time--row input[type=range]::-ms-tooltip{display:none}.air-datepicker-time--row input[type=range]:hover::-webkit-slider-thumb{border-color:var(--adp-time-track-color-hover)}.air-datepicker-time--row input[type=range]:hover::-moz-range-thumb{border-color:var(--adp-time-track-color-hover)}.air-datepicker-time--row input[type=range]:hover::-ms-thumb{border-color:var(--adp-time-track-color-hover)}.air-datepicker-time--row input[type=range]:focus{outline:none}.air-datepicker-time--row input[type=range]:focus::-webkit-slider-thumb{background:var(--adp-cell-background-color-selected);border-color:var(--adp-cell-background-color-selected)}.air-datepicker-time--row input[type=range]:focus::-moz-range-thumb{background:var(--adp-cell-background-color-selected);border-color:var(--adp-cell-background-color-selected)}.air-datepicker-time--row input[type=range]:focus::-ms-thumb{background:var(--adp-cell-background-color-selected);border-color:var(--adp-cell-background-color-selected)}.air-datepicker-time--row input[type=range]::-webkit-slider-thumb{box-sizing:border-box;height:12px;width:12px;border-radius:3px;border:1px solid var(--adp-time-track-color);background:#fff;cursor:pointer;-webkit-transition:background var(--adp-transition-duration);transition:background var(--adp-transition-duration)}.air-datepicker-time--row input[type=range]::-moz-range-thumb{box-sizing:border-box;height:12px;width:12px;border-radius:3px;border:1px solid var(--adp-time-track-color);background:#fff;cursor:pointer;-moz-transition:background var(--adp-transition-duration);transition:background var(--adp-transition-duration)}.air-datepicker-time--row input[type=range]::-ms-thumb{box-sizing:border-box;height:12px;width:12px;border-radius:3px;border:1px solid var(--adp-time-track-color);background:#fff;cursor:pointer;-ms-transition:background var(--adp-transition-duration);transition:background var(--adp-transition-duration)}.air-datepicker-time--row input[type=range]::-webkit-slider-thumb{margin-top:calc(var(--adp-time-thumb-size)/2*-1)}.air-datepicker-time--row input[type=range]::-webkit-slider-runnable-track{border:none;height:var(--adp-time-track-height);cursor:pointer;color:rgba(0,0,0,0);background:rgba(0,0,0,0)}.air-datepicker-time--row input[type=range]::-moz-range-track{border:none;height:var(--adp-time-track-height);cursor:pointer;color:rgba(0,0,0,0);background:rgba(0,0,0,0)}.air-datepicker-time--row input[type=range]::-ms-track{border:none;height:var(--adp-time-track-height);cursor:pointer;color:rgba(0,0,0,0);background:rgba(0,0,0,0)}.air-datepicker-time--row input[type=range]::-ms-fill-lower{background:rgba(0,0,0,0)}.air-datepicker-time--row input[type=range]::-ms-fill-upper{background:rgba(0,0,0,0)}
.air-datepicker{--adp-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--adp-font-size: 14px;--adp-width: 246px;--adp-z-index: 100;--adp-padding: 4px;--adp-grid-areas: "nav" "body" "timepicker" "buttons";--adp-transition-duration: .3s;--adp-transition-ease: ease-out;--adp-transition-offset: 8px;--adp-background-color: #fff;--adp-background-color-hover: #f0f0f0;--adp-background-color-active: #eaeaea;--adp-background-color-in-range: rgba(92, 196, 239, .1);--adp-background-color-in-range-focused: rgba(92, 196, 239, .2);--adp-background-color-selected-other-month-focused: #8ad5f4;--adp-background-color-selected-other-month: #a2ddf6;--adp-color: #4a4a4a;--adp-color-secondary: #9c9c9c;--adp-accent-color: #4eb5e6;--adp-color-current-date: var(--adp-accent-color);--adp-color-other-month: #dedede;--adp-color-disabled: #aeaeae;--adp-color-disabled-in-range: #939393;--adp-color-other-month-hover: #c5c5c5;--adp-border-color: #dbdbdb;--adp-border-color-inner: #efefef;--adp-border-radius: 4px;--adp-border-color-inline: #d7d7d7;--adp-nav-height: 32px;--adp-nav-arrow-color: var(--adp-color-secondary);--adp-nav-action-size: 32px;--adp-nav-color-secondary: var(--adp-color-secondary);--adp-day-name-color: #ff9a19;--adp-day-name-color-hover: #8ad5f4;--adp-day-cell-width: 1fr;--adp-day-cell-height: 32px;--adp-month-cell-height: 42px;--adp-year-cell-height: 56px;--adp-pointer-size: 10px;--adp-poiner-border-radius: 2px;--adp-pointer-offset: 14px;--adp-cell-border-radius: 4px;--adp-cell-background-color-hover: var(--adp-background-color-hover);--adp-cell-background-color-selected: #5cc4ef;--adp-cell-background-color-selected-hover: #45bced;--adp-cell-background-color-in-range: rgba(92, 196, 239, 0.1);--adp-cell-background-color-in-range-hover: rgba(92, 196, 239, 0.2);--adp-cell-border-color-in-range: var(--adp-cell-background-color-selected);--adp-btn-height: 32px;--adp-btn-color: var(--adp-accent-color);--adp-btn-color-hover: var(--adp-color);--adp-btn-border-radius: var(--adp-border-radius);--adp-btn-background-color-hover: var(--adp-background-color-hover);--adp-btn-background-color-active: var(--adp-background-color-active);--adp-time-track-height: 1px;--adp-time-track-color: #dedede;--adp-time-track-color-hover: #b1b1b1;--adp-time-thumb-size: 12px;--adp-time-padding-inner: 10px;--adp-time-day-period-color: var(--adp-color-secondary);--adp-mobile-font-size: 16px;--adp-mobile-nav-height: 40px;--adp-mobile-width: 320px;--adp-mobile-day-cell-height: 38px;--adp-mobile-month-cell-height: 48px;--adp-mobile-year-cell-height: 64px}.air-datepicker-overlay{--adp-overlay-background-color: rgba(0, 0, 0, .3);--adp-overlay-transition-duration: .3s;--adp-overlay-transition-ease: ease-out;--adp-overlay-z-index: 99}
.air-datepicker{background:var(--adp-background-color);border:1px solid var(--adp-border-color);box-shadow:0 4px 12px rgba(0,0,0,.15);border-radius:var(--adp-border-radius);box-sizing:content-box;display:grid;grid-template-columns:1fr;grid-template-rows:repeat(4, max-content);grid-template-areas:var(--adp-grid-areas);font-family:var(--adp-font-family),sans-serif;font-size:var(--adp-font-size);color:var(--adp-color);width:var(--adp-width);position:absolute;transition:opacity var(--adp-transition-duration) var(--adp-transition-ease),transform var(--adp-transition-duration) var(--adp-transition-ease);z-index:var(--adp-z-index)}.air-datepicker:not(.-custom-position-){opacity:0}.air-datepicker.-from-top-{transform:translateY(calc(var(--adp-transition-offset) * -1))}.air-datepicker.-from-right-{transform:translateX(var(--adp-transition-offset))}.air-datepicker.-from-bottom-{transform:translateY(var(--adp-transition-offset))}.air-datepicker.-from-left-{transform:translateX(calc(var(--adp-transition-offset) * -1))}.air-datepicker.-active-:not(.-custom-position-){transform:translate(0, 0);opacity:1}.air-datepicker.-active-.-custom-position-{transition:none}.air-datepicker.-inline-{border-color:var(--adp-border-color-inline);box-shadow:none;position:static;left:auto;right:auto;opacity:1;transform:none}.air-datepicker.-inline- .air-datepicker--pointer{display:none}.air-datepicker.-is-mobile-{--adp-font-size: var(--adp-mobile-font-size);--adp-day-cell-height: var(--adp-mobile-day-cell-height);--adp-month-cell-height: var(--adp-mobile-month-cell-height);--adp-year-cell-height: var(--adp-mobile-year-cell-height);--adp-nav-height: var(--adp-mobile-nav-height);--adp-nav-action-size: var(--adp-mobile-nav-height);position:fixed;width:var(--adp-mobile-width);border:none}.air-datepicker.-is-mobile- *{-webkit-tap-highlight-color:rgba(0,0,0,0)}.air-datepicker.-is-mobile- .air-datepicker--pointer{display:none}.air-datepicker.-is-mobile-:not(.-custom-position-){transform:translate(-50%, calc(-50% + var(--adp-transition-offset)))}.air-datepicker.-is-mobile-.-active-:not(.-custom-position-){transform:translate(-50%, -50%)}.air-datepicker.-custom-position-{transition:none}.air-datepicker-global-container{position:absolute;left:0;top:0}.air-datepicker--pointer{--pointer-half-size: calc(var(--adp-pointer-size) / 2);position:absolute;width:var(--adp-pointer-size);height:var(--adp-pointer-size);z-index:-1}.air-datepicker--pointer:after{content:"";position:absolute;background:#fff;border-top:1px solid var(--adp-border-color-inline);border-right:1px solid var(--adp-border-color-inline);border-top-right-radius:var(--adp-poiner-border-radius);width:var(--adp-pointer-size);height:var(--adp-pointer-size);box-sizing:border-box}.-top-left- .air-datepicker--pointer,.-top-center- .air-datepicker--pointer,.-top-right- .air-datepicker--pointer,[data-popper-placement^=top] .air-datepicker--pointer{top:calc(100% - var(--pointer-half-size) + 1px)}.-top-left- .air-datepicker--pointer:after,.-top-center- .air-datepicker--pointer:after,.-top-right- .air-datepicker--pointer:after,[data-popper-placement^=top] .air-datepicker--pointer:after{transform:rotate(135deg)}.-right-top- .air-datepicker--pointer,.-right-center- .air-datepicker--pointer,.-right-bottom- .air-datepicker--pointer,[data-popper-placement^=right] .air-datepicker--pointer{right:calc(100% - var(--pointer-half-size) + 1px)}.-right-top- .air-datepicker--pointer:after,.-right-center- .air-datepicker--pointer:after,.-right-bottom- .air-datepicker--pointer:after,[data-popper-placement^=right] .air-datepicker--pointer:after{transform:rotate(225deg)}.-bottom-left- .air-datepicker--pointer,.-bottom-center- .air-datepicker--pointer,.-bottom-right- .air-datepicker--pointer,[data-popper-placement^=bottom] .air-datepicker--pointer{bottom:calc(100% - var(--pointer-half-size) + 1px)}.-bottom-left- .air-datepicker--pointer:after,.-bottom-center- .air-datepicker--pointer:after,.-bottom-right- .air-datepicker--pointer:after,[data-popper-placement^=bottom] .air-datepicker--pointer:after{transform:rotate(315deg)}.-left-top- .air-datepicker--pointer,.-left-center- .air-datepicker--pointer,.-left-bottom- .air-datepicker--pointer,[data-popper-placement^=left] .air-datepicker--pointer{left:calc(100% - var(--pointer-half-size) + 1px)}.-left-top- .air-datepicker--pointer:after,.-left-center- .air-datepicker--pointer:after,.-left-bottom- .air-datepicker--pointer:after,[data-popper-placement^=left] .air-datepicker--pointer:after{transform:rotate(45deg)}.-top-left- .air-datepicker--pointer,.-bottom-left- .air-datepicker--pointer{left:var(--adp-pointer-offset)}.-top-right- .air-datepicker--pointer,.-bottom-right- .air-datepicker--pointer{right:var(--adp-pointer-offset)}.-top-center- .air-datepicker--pointer,.-bottom-center- .air-datepicker--pointer{left:calc(50% - var(--adp-pointer-size)/2)}.-left-top- .air-datepicker--pointer,.-right-top- .air-datepicker--pointer{top:var(--adp-pointer-offset)}.-left-bottom- .air-datepicker--pointer,.-right-bottom- .air-datepicker--pointer{bottom:var(--adp-pointer-offset)}.-left-center- .air-datepicker--pointer,.-right-center- .air-datepicker--pointer{top:calc(50% - var(--adp-pointer-size)/2)}.air-datepicker--navigation{grid-area:nav}.air-datepicker--content{box-sizing:content-box;padding:var(--adp-padding);grid-area:body}.-only-timepicker- .air-datepicker--content{display:none}.air-datepicker--time{grid-area:timepicker}.air-datepicker--buttons{grid-area:buttons}.air-datepicker--buttons,.air-datepicker--time{padding:var(--adp-padding);border-top:1px solid var(--adp-border-color-inner)}.air-datepicker-overlay{position:fixed;background:var(--adp-overlay-background-color);left:0;top:0;width:0;height:0;opacity:0;transition:opacity var(--adp-overlay-transition-duration) var(--adp-overlay-transition-ease),left 0s,height 0s,width 0s;transition-delay:0s,var(--adp-overlay-transition-duration),var(--adp-overlay-transition-duration),var(--adp-overlay-transition-duration);z-index:var(--adp-overlay-z-index)}.air-datepicker-overlay.-active-{opacity:1;width:100%;height:100%;transition:opacity var(--adp-overlay-transition-duration) var(--adp-overlay-transition-ease),height 0s,width 0s}

.paginationjs {
  display: flex;
  line-height: 1.6;
  font-family: "Marmelad", "Lucida Grande", "Arial", "Hiragino Sans GB", Georgia, sans-serif;
  font-size: 14px;
  box-sizing: initial;
}
.paginationjs:after {
  display: table;
  content: " ";
  clear: both;
}
.paginationjs .paginationjs-pages {
  float: left;
  margin-left: 10px;
}
.paginationjs .paginationjs-pages ul {
  float: left;
  margin: 0;
  padding: 0;
}
.paginationjs .paginationjs-pages li {
  float: left;
  border: 1px solid #aaa;
  border-right: none;
  list-style: none;
}
.paginationjs .paginationjs-pages li > a {
  min-width: 30px;
  height: 28px;
  line-height: 28px;
  display: block;
  background: #fff;
  font-size: 14px;
  color: #333;
  text-decoration: none;
  text-align: center;
  cursor: pointer;
}
.paginationjs .paginationjs-pages li > a:hover {
  background: #eee;
}
.paginationjs .paginationjs-pages li.active {
  border: none;
}
.paginationjs .paginationjs-pages li.active > a {
  height: 30px;
  line-height: 30px;
  background: #aaa;
  color: #fff;
  cursor: default;
}
.paginationjs .paginationjs-pages li.disabled > a {
  opacity: 0.3;
  cursor: default;
}
.paginationjs .paginationjs-pages li.disabled > a:hover {
  background: none;
}
.paginationjs .paginationjs-pages li:first-child {
  border-radius: 3px 0 0 3px;
}
.paginationjs .paginationjs-pages li:first-child > a {
  border-radius: 3px 0 0 3px;
}
.paginationjs .paginationjs-pages li:last-child {
  border-right: 1px solid #aaa;
  border-radius: 0 3px 3px 0;
}
.paginationjs .paginationjs-pages li:last-child > a {
  border-radius: 0 3px 3px 0;
}
.paginationjs .paginationjs-size-changer {
  float: left;
  font-size: 14px;
  margin-left: 10px;
}
.paginationjs .paginationjs-size-changer > select {
  height: 28px;
  background: #fff;
  border-radius: 3px;
  border: 1px solid #aaa;
  padding: 0;
  font-size: 14px;
  text-align: center;
  vertical-align: baseline;
  outline: none;
  box-shadow: none;
  box-sizing: initial;
}
.paginationjs .paginationjs-go-input {
  float: left;
  margin-left: 10px;
  font-size: 14px;
}
.paginationjs .paginationjs-go-input > input[type="text"] {
  width: 30px;
  height: 28px;
  background: #fff;
  border-radius: 3px;
  border: 1px solid #aaa;
  padding: 0;
  font-size: 14px;
  text-align: center;
  vertical-align: baseline;
  outline: none;
  box-shadow: none;
  box-sizing: initial;
}
.paginationjs .paginationjs-go-button {
  float: left;
  margin-left: 10px;
  font-size: 14px;
}
.paginationjs .paginationjs-go-button > input[type="button"] {
  min-width: 40px;
  height: 30px;
  line-height: 28px;
  background: #fff;
  border-radius: 3px;
  border: 1px solid #aaa;
  text-align: center;
  padding: 0 8px;
  font-size: 14px;
  vertical-align: baseline;
  outline: none;
  box-shadow: none;
  color: #333;
  cursor: pointer;
}
.paginationjs .paginationjs-go-button > input[type="button"]:hover {
  background-color: #f8f8f8;
}
.paginationjs .paginationjs-nav {
  float: left;
  height: 30px;
  line-height: 30px;
  font-size: 14px;
}
.paginationjs.paginationjs-small {
  font-size: 12px;
}
.paginationjs.paginationjs-small .paginationjs-pages li > a {
  min-width: 26px;
  height: 24px;
  line-height: 24px;
  font-size: 12px;
}
.paginationjs.paginationjs-small .paginationjs-pages li.active > a {
  height: 26px;
  line-height: 26px;
}
.paginationjs.paginationjs-small .paginationjs-size-changer {
  font-size: 12px;
}
.paginationjs.paginationjs-small .paginationjs-size-changer > select {
  height: 24px;
  font-size: 12px;
}
.paginationjs.paginationjs-small .paginationjs-go-input {
  font-size: 12px;
}
.paginationjs.paginationjs-small .paginationjs-go-input > input[type="text"] {
  width: 26px;
  height: 24px;
  font-size: 12px;
}
.paginationjs.paginationjs-small .paginationjs-go-button {
  font-size: 12px;
}
.paginationjs.paginationjs-small .paginationjs-go-button > input[type="button"] {
  min-width: 30px;
  height: 26px;
  line-height: 24px;
  padding: 0 6px;
  font-size: 12px;
}
.paginationjs.paginationjs-small .paginationjs-nav {
  height: 26px;
  line-height: 26px;
  font-size: 12px;
}
.paginationjs.paginationjs-big {
  font-size: 16px;
}
.paginationjs.paginationjs-big .paginationjs-pages li > a {
  min-width: 36px;
  height: 34px;
  line-height: 34px;
  font-size: 16px;
}
.paginationjs.paginationjs-big .paginationjs-pages li.active > a {
  height: 36px;
  line-height: 36px;
}
.paginationjs.paginationjs-big .paginationjs-size-changer {
  font-size: 16px;
}
.paginationjs.paginationjs-big .paginationjs-size-changer > select {
  height: 34px;
  font-size: 16px;
}
.paginationjs.paginationjs-big .paginationjs-go-input {
  font-size: 16px;
}
.paginationjs.paginationjs-big .paginationjs-go-input > input[type="text"] {
  width: 36px;
  height: 34px;
  font-size: 16px;
}
.paginationjs.paginationjs-big .paginationjs-go-button {
  font-size: 16px;
}
.paginationjs.paginationjs-big .paginationjs-go-button > input[type="button"] {
  min-width: 50px;
  height: 36px;
  line-height: 34px;
  padding: 0 12px;
  font-size: 16px;
}
.paginationjs.paginationjs-big .paginationjs-nav {
  height: 36px;
  line-height: 36px;
  font-size: 16px;
}
.paginationjs > :first-child {
  margin-left: 0;
}
.paginationjs.paginationjs-theme-blue .paginationjs-pages li {
  border-color: #289DE9;
}
.paginationjs.paginationjs-theme-blue .paginationjs-pages li > a {
  color: #289DE9;
}
.paginationjs.paginationjs-theme-blue .paginationjs-pages li > a:hover {
  background: #E9F4FC;
}
.paginationjs.paginationjs-theme-blue .paginationjs-pages li.active > a {
  background: #289DE9;
  color: #fff;
}
.paginationjs.paginationjs-theme-blue .paginationjs-pages li.disabled > a:hover {
  background: none;
}
.paginationjs.paginationjs-theme-blue .paginationjs-size-changer > select {
  border-color: #289DE9;
}
.paginationjs.paginationjs-theme-blue .paginationjs-go-input > input[type="text"] {
  border-color: #289DE9;
}
.paginationjs.paginationjs-theme-blue .paginationjs-go-button > input[type="button"] {
  background: #289DE9;
  border-color: #289DE9;
  color: #fff;
}
.paginationjs.paginationjs-theme-blue .paginationjs-go-button > input[type="button"]:hover {
  background-color: #3CA5EA;
}
.paginationjs.paginationjs-theme-green .paginationjs-pages li {
  border-color: #449D44;
}
.paginationjs.paginationjs-theme-green .paginationjs-pages li > a {
  color: #449D44;
}
.paginationjs.paginationjs-theme-green .paginationjs-pages li > a:hover {
  background: #EBF4EB;
}
.paginationjs.paginationjs-theme-green .paginationjs-pages li.active > a {
  background: #449D44;
  color: #fff;
}
.paginationjs.paginationjs-theme-green .paginationjs-pages li.disabled > a:hover {
  background: none;
}
.paginationjs.paginationjs-theme-green .paginationjs-size-changer > select {
  border-color: #449D44;
}
.paginationjs.paginationjs-theme-green .paginationjs-go-input > input[type="text"] {
  border-color: #449D44;
}
.paginationjs.paginationjs-theme-green .paginationjs-go-button > input[type="button"] {
  background: #449D44;
  border-color: #449D44;
  color: #fff;
}
.paginationjs.paginationjs-theme-green .paginationjs-go-button > input[type="button"]:hover {
  background-color: #55A555;
}
.paginationjs.paginationjs-theme-yellow .paginationjs-pages li {
  border-color: #EC971F;
}
.paginationjs.paginationjs-theme-yellow .paginationjs-pages li > a {
  color: #EC971F;
}
.paginationjs.paginationjs-theme-yellow .paginationjs-pages li > a:hover {
  background: #FDF5E9;
}
.paginationjs.paginationjs-theme-yellow .paginationjs-pages li.active > a {
  background: #EC971F;
  color: #fff;
}
.paginationjs.paginationjs-theme-yellow .paginationjs-pages li.disabled > a:hover {
  background: none;
}
.paginationjs.paginationjs-theme-yellow .paginationjs-size-changer > select {
  border-color: #EC971F;
}
.paginationjs.paginationjs-theme-yellow .paginationjs-go-input > input[type="text"] {
  border-color: #EC971F;
}
.paginationjs.paginationjs-theme-yellow .paginationjs-go-button > input[type="button"] {
  background: #EC971F;
  border-color: #EC971F;
  color: #fff;
}
.paginationjs.paginationjs-theme-yellow .paginationjs-go-button > input[type="button"]:hover {
  background-color: #EEA135;
}
.paginationjs.paginationjs-theme-red .paginationjs-pages li {
  border-color: #C9302C;
}
.paginationjs.paginationjs-theme-red .paginationjs-pages li > a {
  color: #C9302C;
}
.paginationjs.paginationjs-theme-red .paginationjs-pages li > a:hover {
  background: #FAEAEA;
}
.paginationjs.paginationjs-theme-red .paginationjs-pages li.active > a {
  background: #C9302C;
  color: #fff;
}
.paginationjs.paginationjs-theme-red .paginationjs-pages li.disabled > a:hover {
  background: none;
}
.paginationjs.paginationjs-theme-red .paginationjs-size-changer > select {
  border-color: #C9302C;
}
.paginationjs.paginationjs-theme-red .paginationjs-go-input > input[type="text"] {
  border-color: #C9302C;
}
.paginationjs.paginationjs-theme-red .paginationjs-go-button > input[type="button"] {
  background: #C9302C;
  border-color: #C9302C;
  color: #fff;
}
.paginationjs.paginationjs-theme-red .paginationjs-go-button > input[type="button"]:hover {
  background-color: #CE4541;
}
/* Hacks for IE 6~9 */
.paginationjs .paginationjs-pages li.paginationjs-next {
  *border-right: 1px solid #aaa;
  border-right: 1px solid #aaa \0;
}
.paginationjs .paginationjs-size-changer {
  *margin-left: 5px;
  margin-left: 5px\0;
}
.paginationjs .paginationjs-size-changer > select {
  *line-height: 28px;
  line-height: 28px\0;
  *vertical-align: middle;
  vertical-align: middle\0;
}
.paginationjs .paginationjs-go-input {
  *margin-left: 5px;
  margin-left: 5px\0;
}
.paginationjs .paginationjs-go-input > input[type="text"] {
  *line-height: 28px;
  line-height: 28px\0;
  *vertical-align: middle;
  vertical-align: middle\0;
}
.paginationjs .paginationjs-go-button {
  *margin-left: 5px;
  margin-left: 5px\0;
}
.paginationjs .paginationjs-go-button > input[type="button"] {
  *vertical-align: middle;
  vertical-align: middle\0;
}
.paginationjs.paginationjs-big .paginationjs-pages li > a {
  line-height: 36px\0;
}
.paginationjs.paginationjs-big .paginationjs-go-input > input[type="text"] {
  *height: 35px;
  height: 36px\0;
  *line-height: 36px;
  line-height: 36px\0;
}

.suggestions-nowrap {
  white-space: nowrap;
}
/**
 * Основной INPUT
 */
.suggestions-input {
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
}
.suggestions-input::-ms-clear {
  display: none;
}
.suggestions-wrapper {
  position: relative;
  margin: 0;
  padding: 0;
  vertical-align: top;
  -webkit-text-size-adjust: 100%;
}
/**
 * Выпадающий блок с найденными подсказками
 */
.suggestions-suggestions {
  background: #fff;
  border: 1px solid #999;
  -ms-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  cursor: default;
  left: 0;
  min-width: 100%;
  position: absolute;
  z-index: 9999;
  -webkit-text-size-adjust: 100%;
}
.suggestions-suggestions strong {
  font-weight: normal;
  color: #3399ff;
}
.suggestions-suggestions.suggestions-mobile {
  border-style: none;
}
.suggestions-suggestions.suggestions-mobile .suggestions-suggestion {
  border-bottom: 1px solid #ddd;
}
/**
 * Контейнер для одной подсказки
 */
.suggestions-suggestion {
  padding: 4px 4px;
  overflow: hidden;
}
.suggestions-suggestion:hover {
  background: #f7f7f7;
}
/**
 * Выбранная (активная) подсказка
 */
.suggestions-selected {
  background: #f0f0f0;
}
.suggestions-selected:hover {
  background: #f0f0f0;
}
/**
 * Информационный блок в верхней части выпадашки с подсказками
 */
.suggestions-hint {
  padding: 4px 4px;
  white-space: nowrap;
  overflow: hidden;
  color: #777;
  font-size: 85%;
  line-height: 20px;
}
/**
 * Дополнительный текст в подсказке, который идет второй строкой
 */
.suggestions-subtext {
  color: #777;
}
/**
 * Размещает дополнительный текст в одну строку с основным текстом подсказки
 */
.suggestions-subtext_inline {
  display: inline-block;
  min-width: 6em;
  vertical-align: bottom;
  margin: 0 0.5em 0 0;
}
/**
 * Разделитель нескольких дополнительных текстов
 */
.suggestions-subtext-delimiter {
  display: inline-block;
  width: 2px;
}
/**
 * Выделяет подсказку
 */
.suggestions-subtext_label {
  margin: 0 0 0 0.25em;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
  padding: 0 3px;
  background: #f5f5f5;
  font-size: 85%;
}
.suggestions-value[data-suggestion-status="LIQUIDATED"] {
  position: relative;
}
.suggestions-value[data-suggestion-status="LIQUIDATED"]:after {
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  border-top: 1px solid rgba(0, 0, 0, 0.4);
  content: "";
}
/**
 * Промо-блок
 */
.suggestions-promo {
  font-size: 85%;
  display: none;
  color: #777;
  padding: 4px;
  text-align: center;
}
.suggestions-promo a {
  color: #777;
  display: block;
  filter: grayscale(100%);
  line-height: 20px;
  text-decoration: none;
}
.suggestions-promo a:hover {
  filter: grayscale(0);
}
.suggestions-promo svg {
  height: 20px;
  vertical-align: bottom;
}
@media screen and (min-width: 600px) {
  .suggestions-promo {
    position: absolute;
    top: 0;
    right: 0;
    text-align: left;
  }
}

/**
 * Swiper 8.4.7
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2023 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: January 30, 2023
 */

@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');font-weight:400;font-style:normal}:root{--swiper-theme-color:#007aff}.swiper{margin-left:auto;margin-right:auto;position:relative;overflow:hidden;list-style:none;padding:0;z-index:1}.swiper-vertical>.swiper-wrapper{flex-direction:column}.swiper-wrapper{position:relative;width:100%;height:100%;z-index:1;display:flex;transition-property:transform;box-sizing:content-box}.swiper-android .swiper-slide,.swiper-wrapper{transform:translate3d(0px,0,0)}.swiper-pointer-events{touch-action:pan-y}.swiper-pointer-events.swiper-vertical{touch-action:pan-x}.swiper-slide{flex-shrink:0;width:100%;height:100%;position:relative;transition-property:transform}.swiper-slide-invisible-blank{visibility:hidden}.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);-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-3d,.swiper-3d.swiper-css-mode .swiper-wrapper{perspective:1200px}.swiper-3d .swiper-cube-shadow,.swiper-3d .swiper-slide,.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top,.swiper-3d .swiper-wrapper{transform-style:preserve-3d}.swiper-3d .swiper-slide-shadow,.swiper-3d .swiper-slide-shadow-bottom,.swiper-3d .swiper-slide-shadow-left,.swiper-3d .swiper-slide-shadow-right,.swiper-3d .swiper-slide-shadow-top{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,.15)}.swiper-3d .swiper-slide-shadow-left{background-image:linear-gradient(to left,rgba(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,.5),rgba(0,0,0,0))}.swiper-3d .swiper-slide-shadow-top{background-image:linear-gradient(to top,rgba(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,.5),rgba(0,0,0,0))}.swiper-css-mode>.swiper-wrapper{overflow:auto;scrollbar-width:none;-ms-overflow-style:none}.swiper-css-mode>.swiper-wrapper::-webkit-scrollbar{display:none}.swiper-css-mode>.swiper-wrapper>.swiper-slide{scroll-snap-align:start start}.swiper-horizontal.swiper-css-mode>.swiper-wrapper{scroll-snap-type:x mandatory}.swiper-vertical.swiper-css-mode>.swiper-wrapper{scroll-snap-type:y mandatory}.swiper-centered>.swiper-wrapper::before{content:'';flex-shrink:0;order:9999}.swiper-centered.swiper-horizontal>.swiper-wrapper>.swiper-slide:first-child{margin-inline-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-horizontal>.swiper-wrapper::before{height:100%;min-height:1px;width:var(--swiper-centered-offset-after)}.swiper-centered.swiper-vertical>.swiper-wrapper>.swiper-slide:first-child{margin-block-start:var(--swiper-centered-offset-before)}.swiper-centered.swiper-vertical>.swiper-wrapper::before{width:100%;min-width:1px;height:var(--swiper-centered-offset-after)}.swiper-centered>.swiper-wrapper>.swiper-slide{scroll-snap-align:center center;scroll-snap-stop:always}.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}:root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top: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-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none!important}.swiper-button-next:after,.swiper-button-prev: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,.swiper-rtl .swiper-button-next{left:10px;right:auto}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:'prev'}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:10px;left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:'next'}.swiper-button-lock{display:none}.swiper-pagination{position:absolute;text-align:center;transition:.3s 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}.swiper-horizontal>.swiper-pagination-bullets,.swiper-pagination-bullets.swiper-pagination-horizontal,.swiper-pagination-custom,.swiper-pagination-fraction{bottom:10px;left:0;width:100%}.swiper-pagination-bullets-dynamic{overflow:hidden;font-size:0}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transform:scale(.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(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev{transform:scale(.33)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next{transform:scale(.66)}.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next{transform:scale(.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:50%;background:var(--swiper-pagination-bullet-inactive-color,#000);opacity:var(--swiper-pagination-bullet-inactive-opacity, .2)}button.swiper-pagination-bullet{border:none;margin:0;padding:0;box-shadow:none;-webkit-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-pagination-vertical.swiper-pagination-bullets,.swiper-vertical>.swiper-pagination-bullets{right:10px;top:50%;transform:translate3d(0px,-50%,0)}.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets .swiper-pagination-bullet{margin:var(--swiper-pagination-bullet-vertical-gap,6px) 0;display:block}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic{top:50%;transform:translateY(-50%);width:8px}.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet,.swiper-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{display:inline-block;transition:.2s transform,.2s 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:.2s transform,.2s left}.swiper-horizontal.swiper-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet{transition:.2s transform,.2s right}.swiper-pagination-progressbar{background:rgba(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-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite,.swiper-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite{width:100%;height:4px;left:0;top:0}.swiper-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite,.swiper-pagination-progressbar.swiper-pagination-vertical,.swiper-vertical>.swiper-pagination-progressbar{width:4px;height:100%;left:0;top:0}.swiper-pagination-lock{display:none}.swiper-scrollbar{border-radius:10px;position:relative;-ms-touch-action:none;background:rgba(0,0,0,.1)}.swiper-scrollbar-disabled>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-disabled{display:none!important}.swiper-horizontal>.swiper-scrollbar,.swiper-scrollbar.swiper-scrollbar-horizontal{position:absolute;left:1%;bottom:3px;z-index:50;height:5px;width:98%}.swiper-scrollbar.swiper-scrollbar-vertical,.swiper-vertical>.swiper-scrollbar{position:absolute;right:3px;top:1%;z-index:50;width:5px;height:98%}.swiper-scrollbar-drag{height:100%;width:100%;position:relative;background:rgba(0,0,0,.5);border-radius:10px;left:0;top:0}.swiper-scrollbar-cursor-drag{cursor:move}.swiper-scrollbar-lock{display:none}.swiper-zoom-container{width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center}.swiper-zoom-container>canvas,.swiper-zoom-container>img,.swiper-zoom-container>svg{max-width:100%;max-height:100%;object-fit:contain}.swiper-slide-zoomed{cursor:move}.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-watch-progress .swiper-slide-visible .swiper-lazy-preloader,.swiper:not(.swiper-watch-progress) .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)}}.swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}.swiper-free-mode>.swiper-wrapper{transition-timing-function:ease-out;margin:0 auto}.swiper-grid>.swiper-wrapper{flex-wrap:wrap}.swiper-grid-column>.swiper-wrapper{flex-wrap:wrap;flex-direction:column}.swiper-fade.swiper-free-mode .swiper-slide{transition-timing-function:ease-out}.swiper-fade .swiper-slide{pointer-events:none;transition-property:opacity}.swiper-fade .swiper-slide .swiper-slide{pointer-events:none}.swiper-fade .swiper-slide-active,.swiper-fade .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube{overflow:visible}.swiper-cube .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1;visibility:hidden;transform-origin:0 0;width:100%;height:100%}.swiper-cube .swiper-slide .swiper-slide{pointer-events:none}.swiper-cube.swiper-rtl .swiper-slide{transform-origin:100% 0}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-cube .swiper-slide-active,.swiper-cube .swiper-slide-next,.swiper-cube .swiper-slide-next+.swiper-slide,.swiper-cube .swiper-slide-prev{pointer-events:auto;visibility:visible}.swiper-cube .swiper-slide-shadow-bottom,.swiper-cube .swiper-slide-shadow-left,.swiper-cube .swiper-slide-shadow-right,.swiper-cube .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-cube .swiper-cube-shadow{position:absolute;left:0;bottom:0px;width:100%;height:100%;opacity:.6;z-index:0}.swiper-cube .swiper-cube-shadow:before{content:'';background:#000;position:absolute;left:0;top:0;bottom:0;right:0;filter:blur(50px)}.swiper-flip{overflow:visible}.swiper-flip .swiper-slide{pointer-events:none;-webkit-backface-visibility:hidden;backface-visibility:hidden;z-index:1}.swiper-flip .swiper-slide .swiper-slide{pointer-events:none}.swiper-flip .swiper-slide-active,.swiper-flip .swiper-slide-active .swiper-slide-active{pointer-events:auto}.swiper-flip .swiper-slide-shadow-bottom,.swiper-flip .swiper-slide-shadow-left,.swiper-flip .swiper-slide-shadow-right,.swiper-flip .swiper-slide-shadow-top{z-index:0;-webkit-backface-visibility:hidden;backface-visibility:hidden}.swiper-creative .swiper-slide{-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden;transition-property:transform,opacity,height}.swiper-cards{overflow:visible}.swiper-cards .swiper-slide{transform-origin:center bottom;-webkit-backface-visibility:hidden;backface-visibility:hidden;overflow:hidden}
.swiper-virtual .swiper-slide{-webkit-backface-visibility:hidden;transform:translateZ(0)}.swiper-virtual.swiper-css-mode .swiper-wrapper::after{content:'';position:absolute;left:0;top:0;pointer-events:none}.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper::after{height:1px;width:var(--swiper-virtual-size)}.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper::after{width:1px;height:var(--swiper-virtual-size)}
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  -webkit-tap-highlight-color: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
address,
caption,
cite,
code,
th,
var {
  font-style: normal;
  font-weight: normal;
}
fieldset,
img {
  border: none;
}
ol,
ul {
  list-style: none;
}
caption,
th {
  text-align: left;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}
img {
  display: block;
  flex: none;
  width: 100%;
  max-width: 100%;
}
input[type="text"],
textarea {
  -webkit-appearance: none;
}
input {
  border: none;
}
input::placeholder {
  color: #828282;
  opacity: 1;
}
input[type="number"] {
  -moz-appearance: textfield;
}
input[type="number"]::-webkit-inner-spin-button {
  display: none;
}
button {
  font-family: 'SF', Marmelad, 'Lucida Grande', Arial, 'Hiragino Sans GB', Georgia, sans-serif;
  font-size: 16px;
  -webkit-tap-highlight-color: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-weight: normal;
  color: inherit;
  white-space: nowrap;
  cursor: pointer;
  border: none;
  background: transparent;
  user-select: none;
  text-decoration: none;
  text-align: left;
  padding: 0;
  margin: 0;
}
button:hover {
  opacity: 0.7;
}
* {
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
}
*:focus {
  outline: none;
}
a {
  display: inline-block;
  color: inherit;
  text-decoration: none;
}
a[href^="tel:"] {
  white-space: nowrap;
}
a:not:has(.btn):hover {
  opacity: 0.7;
}
html {
  height: 100%;
}
:root {
  --accentColor: #2864dc;
  --accentColorAlpha: rgba(40, 100, 220, 0.5);
  --maxWidth: 800px;
  --lineHeight: 1.3;
  --thumbSize: 20px;
  --circleSize: 17px;
  --trackSize: 100%;
  --trackHeight: 2px;
  --trackRadius: 6px;
  --innertrackRadius: 4px;
}
body {
  font-family: 'SF', Marmelad, 'Lucida Grande', Arial, 'Hiragino Sans GB', Georgia, sans-serif;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  font-size: 16px;
  line-height: 24px;
  -webkit-text-size-adjust: 100%;
  font-feature-settings: 'tnum' on, 'lnum' on;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}
body.body-lock {
  overflow: hidden;
}
.small-title {
  font-size: 18px;
  line-height: 32px;
}
.tiny-title {
  font-size: 14px;
  line-height: 20px;
}
.tiny-title--center {
  text-align: center;
}
.tiny-title--blue {
  color: #12264e;
}
.main {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.main--press-detail {
  overflow: hidden;
}
.mobile-only {
  display: none;
}
@media only screen and (max-width: 640px) {
  .mobile-only {
    display: block;
  }
}
.v-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  overflow: hidden;
}
.v-hidden--b-r {
  right: 0;
  bottom: 0;
}
@media only screen and (max-width: 1024px) {
  .order-tablet-last {
    order: 10;
  }
}
.accessibility-link {
  transition: color 0.1s linear 0s, box-shadow 0.1s linear 0s;
}
.accord__body-block-text .accessibility-link {
  color: #000;
}
@media only screen and (min-width: 1025px) {
  .accessibility-link:hover {
    opacity: 0.6;
  }
}
.disable.accessibility-link:hover {
  opacity: unset;
  pointer-events: none;
}
@media only screen and (min-width: 1025px) {
  .accessibility-link:active {
    color: rgba(0, 0, 0, 0.3);
  }
}
.disable.accessibility-link:active {
  opacity: unset;
  pointer-events: none;
}
.accessibility-link:focus-visible {
  border-radius: 4px;
  -webkit-border-radius: 4px;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3);
}
.disable.accessibility-link:focus-visible {
  box-shadow: unset;
}
.accessibility-link--bold {
  font-weight: 600;
}
.inherit-link {
  font-size: inherit;
  font-weight: inherit;
  display: inline;
}
.show {
  animation: smooth-show 0.2s linear forwards;
  display: 0.2s;
}
@keyframes smooth-show {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes blur {
  0% {
    backdrop-filter: blur(10px) opacity(0);
  }
  100% {
    backdrop-filter: blur(10px) opacity(1);
  }
}
@keyframes showBySlide {
  0% {
    transform: translateY(-100%);
    pointer-events: none;
    visibility: hidden;
    opacity: 0;
  }
  1% {
    position: relative;
    display: block;
  }
  30% {
    opacity: 0;
  }
  100% {
    transform: translateY(0);
    pointer-events: initial;
    visibility: visible;
    position: relative;
    display: block;
    opacity: 1;
  }
}
@keyframes hideBySlide {
  0% {
    transform: translateY(0);
    pointer-events: none;
    visibility: visible;
    display: block;
    opacity: 1;
  }
  20% {
    opacity: 0;
  }
  80% {
    display: none;
  }
  100% {
    transform: translateY(-100%);
    visibility: hidden;
    display: none;
    opacity: 0;
  }
}
@keyframes fog-to-right {
  0% {
    transform: translate3d(-100%, 0, 0);
  }
  50% {
    transform: translate3d(0, 100, 0);
  }
  100% {
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes fog-to-up {
  0% {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(0, -50%, 0);
  }
  100% {
    transform: translate3d(0, 0, 0);
  }
}
@font-face {
  font-family: "Inter";
  src: url(/assets-nd/fonts/Inter-Bold.woff) format("woff"), url(/assets-nd/fonts/Inter-Bold.woff2) format("woff2");
  font-weight: 600;
  font-style: normal;
}
@font-face {
  font-family: "SF";
  src: local("SF-Regular"), url(/assets-nd/fonts/SF-Pro-Display-Regular.woff2) format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "SF";
  src: local("SF-Pro-Display-Medium"), url(/assets-nd/fonts/SF-Pro-Display-Medium.woff2) format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "SF";
  src: local("SF-Pro-Display-Semibold"), url(/assets-nd/fonts/SF-Pro-Display-Semibold.woff2) format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "SF";
  src: local("SF-Pro-Display-Bold"), url(/assets-nd/fonts/SF-Pro-Display-Bold.woff2) format("woff2");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "SF";
  src: local("SF-Pro-Display-Heavy"), url(/assets-nd/fonts/SF-Pro-Display-Heavy.woff2) format("woff2");
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: "SF";
  src: local("SF-Pro-Display-Black"), url(/assets-nd/fonts/SF-Pro-Display-Black.woff2) format("woff2");
  font-weight: 900;
  font-style: normal;
}
@media print {
  .media-print-none {
    display: none;
  }
}
.h1 {
  font-size: 36px;
  line-height: 44px;
  font-weight: 600;
  letter-spacing: -0.14px;
}
@media only screen and (max-width: 1024px) {
  .h1 {
    font-size: 22px;
    line-height: 28px;
    letter-spacing: -0.3px;
  }
}
.h1--press-detail {
  max-width: 80%;
  margin-bottom: 24px;
}
@media only screen and (max-width: 1024px) {
  .h1--press-detail {
    max-width: 100%;
    margin-bottom: -8px;
  }
}
@media only screen and (max-width: 640px) {
  .h1--press-detail {
    margin-bottom: -12px;
  }
}
.h1--buy {
  margin-bottom: 16px;
}
.sout .h1 {
  margin-bottom: 16px;
}
@media only screen and (max-width: 640px) {
  .sout .h1 {
    margin-bottom: 24px;
  }
}
.sout-detail .h1 {
  text-align: center;
  margin-bottom: 40px;
}
@media only screen and (max-width: 1024px) {
  .sout-detail .h1 {
    margin-bottom: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .sout-detail .h1 {
    text-align: left;
    margin-bottom: 24px;
  }
}
.send-success .h1 {
  text-align: center;
  color: green;
}
@media only screen and (max-width: 640px) {
  .send-success .h1 {
    text-align: left;
  }
}
.send-error .h1 {
  text-align: center;
  color: red;
}
@media only screen and (max-width: 640px) {
  .send-error .h1 {
    text-align: left;
  }
}
.h2 {
  font-size: 32px;
  line-height: 40px;
  font-weight: 700;
}
@media only screen and (max-width: 1024px) {
  .h2 {
    font-size: 20px;
    line-height: 24px;
  }
}
.h3 {
  font-size: 28px;
  line-height: 36px;
  font-weight: 700;
}
@media only screen and (max-width: 1024px) {
  .h3 {
    font-size: 18px;
    line-height: 24px;
  }
}
.h4 {
  font-size: 24px;
  line-height: 32px;
  font-weight: 600;
}
@media only screen and (max-width: 1024px) {
  .h4 {
    font-size: 16px;
    line-height: 20px;
  }
}
.press-detail-content.h4:first-child {
  font-weight: 600;
}
.h5 {
  font-size: 18px;
  line-height: 24px;
  font-weight: 600;
}
@media only screen and (max-width: 1024px) {
  .h5 {
    font-size: 14px;
    line-height: 16px;
  }
}
.h6 {
  font-size: 16px;
  line-height: 24px;
  font-weight: 600;
}
h1 + .small-title,
h2 + .small-title,
h3 + .small-title,
h4 + .small-title,
h5 + .small-title,
.h1 + .small-title,
.h2 + .small-title,
.h3 + .small-title,
.h4 + .small-title,
.h5 + .small-title {
  padding-top: 24px;
}
.fs36-44 {
  font-size: 36px;
  line-height: 44px;
}
.fs48-48 {
  font-size: 48px;
  line-height: 48px;
}
.fs80-80 {
  font-size: 80px;
  line-height: 80px;
}
@media only screen and (max-width: 1024px) {
  .fs80-80 {
    font-size: 48px;
    line-height: 48px;
  }
}
.send-success,
.send-error {
  display: none;
  margin-bottom: 0;
}
.img-comp-container {
  position: relative;
  height: 784px;
  /*should be the same height as the images*/
  overflow: hidden;
}
@media only screen and (max-width: 1024px) {
  .img-comp-container {
    height: 500px;
  }
}
@media only screen and (max-width: 640px) {
  .img-comp-container {
    height: 300px;
  }
}
.img-comp-container * {
  box-sizing: border-box;
}
.img-comp-img {
  position: absolute;
  width: 100%;
  height: 100%;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.img-comp-img img {
  display: block;
  max-width: 100%;
  object-fit: cover;
}
.img-comp-img__title {
  position: absolute;
  top: 50%;
  right: 11%;
  transform: translateY(-50%);
  color: #fff;
  width: 350px;
  text-align: right;
}
@media only screen and (max-width: 640px) {
  .img-comp-img__title {
    display: none;
  }
}
.img-comp-overlay .img-comp-img__title {
  right: auto;
  left: 11%;
  text-align: left;
}
.img-comp-slider {
  position: absolute;
  z-index: 9;
  cursor: ew-resize;
  /*set the appearance of the slider:*/
  width: 20px;
  height: 20px;
  transform: translateX(-50%);
}
.img-comp-slider::before {
  content: '';
  display: block;
  width: 3px;
  background-color: #fff;
  position: absolute;
  top: -100vh;
  bottom: -100vh;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
.img-comp-slider::after {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  content: '';
  display: block;
  width: 16px;
  height: 16px;
  border: 2px solid #fff;
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.img-comp-slider div {
  width: 20px;
  height: 20px;
  background-color: #2196f3;
  border-radius: 50%;
  z-index: 3;
}
.img-comp-overlay img {
  max-width: unset;
}
.absolute-link {
  user-select: none;
  font-size: 0;
  position: absolute;
  inset: 0;
  z-index: 1;
  color: transparent;
}
.accord {
  overflow: hidden;
  margin-bottom: 52px;
}
@media only screen and (max-width: 1024px) {
  .accord {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .accord {
    margin-bottom: 32px;
  }
}
.accord + .accord {
  border-top: 1px solid #dedede;
  margin-top: -52px;
}
@media only screen and (max-width: 1024px) {
  .accord + .accord {
    margin-top: -40px;
  }
}
@media only screen and (max-width: 640px) {
  .accord + .accord {
    margin-top: -32px;
  }
}
.accord:last-child {
  margin-bottom: 0;
}
.accord__btn {
  font-size: 24px;
  line-height: 32px;
  color: #000;
  position: relative;
  white-space: initial;
  width: 100%;
  font-weight: 600;
  padding: 20px 32px 20px 0;
}
@media only screen and (max-width: 1024px) {
  .accord__btn {
    font-size: 17px;
    line-height: 20px;
    padding: 12px 32px 12px 0;
  }
}
.accord__btn::before {
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  background-color: #000;
  content: '';
  right: 3px;
  width: 18px;
  height: 2px;
}
.active .accord__btn::before {
  transform: rotate(90deg);
  opacity: 0;
}
.accord__btn::after {
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  transition: rotate 0.1s linear 0s;
  background-color: #000;
  transform-origin: top;
  content: '';
  right: 11px;
  width: 2px;
  height: 18px;
}
.active .accord__btn::after {
  rotate: 90deg;
}
.accord__body {
  display: none;
}
.active .accord__body {
  animation: showBySlide 0.3s forwards;
  display: block;
  padding-block: 8px 32px;
}
@media only screen and (max-width: 1024px) {
  .active .accord__body {
    padding-bottom: 24px;
  }
}
@media only screen and (max-width: 640px) {
  .active .accord__body {
    padding-block: 4px 16px;
  }
}
.accord__body ul li {
  display: block;
  padding-left: 24px;
  position: relative;
  margin-bottom: 10px;
}
.accord__body ul li:last-child {
  margin-bottom: 0;
}
.accord__body ul li::before {
  width: 3px;
  height: 3px;
  border-radius: 100%;
  transform: translateY(calc(50% + 14px));
  content: '';
  position: absolute;
  left: 8px;
  background-color: #000;
}
.accord__body ol {
  counter-reset: list;
}
.accord__body ol li {
  display: block;
  padding-left: 24px;
  position: relative;
  margin-bottom: 10px;
}
.accord__body ol li:last-child {
  margin-bottom: 0;
}
.accord__body ol li::before {
  counter-increment: list;
  content: counter(list) '.';
  position: absolute;
  left: 0;
}
.accord__body h5,
.accord__body p {
  margin-bottom: 16px;
}
@media only screen and (max-width: 640px) {
  .accord__body h5,
  .accord__body p {
    margin-bottom: 12px;
  }
}
.accord__body h5:last-child,
.accord__body p:last-child {
  margin-bottom: 0;
}
.accord__body h5 {
  font-size: 18px;
  line-height: 24px;
}
@media only screen and (max-width: 640px) {
  .accord__body h5 {
    border-radius: 20px;
    -webkit-border-radius: 20px;
    font-size: 16px;
    line-height: 24px;
    background-color: #0045b50f;
    padding: 16px;
  }
}
.accord__body p {
  font-size: 18px;
  line-height: 32px;
}
@media only screen and (max-width: 1024px) {
  .accord__body p {
    font-size: 15px;
    line-height: 24px;
  }
}
.accord__body img {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  margin-block: 40px;
}
@media only screen and (max-width: 1024px) {
  .accord__body img {
    margin-block: 24px;
  }
}
.accord__body img:first-child {
  margin-top: 0;
}
.accord__body img:last-child {
  margin-bottom: 0;
}
.btn {
  font-family: 'SF', Marmelad, 'Lucida Grande', Arial, 'Hiragino Sans GB', Georgia, sans-serif;
  font-size: 16px;
  -webkit-tap-highlight-color: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-weight: normal;
  cursor: pointer;
  background: transparent;
  user-select: none;
  text-decoration: none;
  text-align: left;
  padding: 0;
  margin: 0;
  transition: background-color 0.1s linear 0s, border-color 0.1s linear 0s, color 0.1s linear 0s;
  border-radius: 40px;
  -webkit-border-radius: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  max-width: max-content;
  background-clip: #fff;
  color: inherit;
  border: none;
  white-space: nowrap;
}
.btn--primary,
.btn--secondary,
.btn--primary-inv,
.btn--secondary-inv {
  font-size: 16px;
  line-height: 16px;
  gap: 10px;
  font-weight: 500;
  padding: 13px 20px;
}
@media only screen and (min-width: 1025px) {
  .btn--primary:hover,
  .btn--secondary:hover,
  .btn--primary-inv:hover,
  .btn--secondary-inv:hover {
    transition: background-color 0.1s linear 0s, color 0.1s linear 0s;
  }
}
@media only screen and (max-width: 1024px) {
  .btn--primary,
  .btn--secondary,
  .btn--primary-inv,
  .btn--secondary-inv {
    font-size: 14px;
    line-height: 14px;
    font-weight: 600;
  }
}
.card--accord .btn--primary,
.card--accord .btn--secondary,
.card--accord .btn--primary-inv,
.card--accord .btn--secondary-inv,
.boiler .btn--primary,
.boiler .btn--secondary,
.boiler .btn--primary-inv,
.boiler .btn--secondary-inv {
  min-width: 177px;
}
@media only screen and (max-width: 1024px) {
  .card--accord .btn--primary,
  .card--accord .btn--secondary,
  .card--accord .btn--primary-inv,
  .card--accord .btn--secondary-inv,
  .boiler .btn--primary,
  .boiler .btn--secondary,
  .boiler .btn--primary-inv,
  .boiler .btn--secondary-inv {
    min-width: 160px;
  }
}
@media only screen and (max-width: 640px) {
  .card--accord .btn--primary,
  .card--accord .btn--secondary,
  .card--accord .btn--primary-inv,
  .card--accord .btn--secondary-inv,
  .boiler .btn--primary,
  .boiler .btn--secondary,
  .boiler .btn--primary-inv,
  .boiler .btn--secondary-inv {
    flex: 1;
    max-width: unset;
    min-width: 146px;
  }
}
.btn--primary:disabled,
.btn--secondary:disabled,
.btn--primary-inv:disabled,
.btn--secondary-inv:disabled,
.btn--primary[disabled],
.btn--secondary[disabled],
.btn--primary-inv[disabled],
.btn--secondary-inv[disabled],
.btn--primary.disable,
.btn--secondary.disable,
.btn--primary-inv.disable,
.btn--secondary-inv.disable {
  background-color: #f5f5f7;
  color: rgba(0, 0, 0, 0.3);
  pointer-events: none;
}
.contact-with-us__agree-btn.btn--primary:disabled,
.contact-with-us__agree-btn.btn--secondary:disabled,
.contact-with-us__agree-btn.btn--primary-inv:disabled,
.contact-with-us__agree-btn.btn--secondary-inv:disabled,
.contact-with-us__agree-btn.btn--primary[disabled],
.contact-with-us__agree-btn.btn--secondary[disabled],
.contact-with-us__agree-btn.btn--primary-inv[disabled],
.contact-with-us__agree-btn.btn--secondary-inv[disabled],
.contact-with-us__agree-btn.btn--primary.disable,
.contact-with-us__agree-btn.btn--secondary.disable,
.contact-with-us__agree-btn.btn--primary-inv.disable,
.contact-with-us__agree-btn.btn--secondary-inv.disable {
  pointer-events: initial;
}
.btn--primary:disabled:active,
.btn--secondary:disabled:active,
.btn--primary-inv:disabled:active,
.btn--secondary-inv:disabled:active,
.btn--primary[disabled]:active,
.btn--secondary[disabled]:active,
.btn--primary-inv[disabled]:active,
.btn--secondary-inv[disabled]:active,
.btn--primary.disable:active,
.btn--secondary.disable:active,
.btn--primary-inv.disable:active,
.btn--secondary-inv.disable:active,
.btn--primary:disabled:focus-visible,
.btn--secondary:disabled:focus-visible,
.btn--primary-inv:disabled:focus-visible,
.btn--secondary-inv:disabled:focus-visible,
.btn--primary[disabled]:focus-visible,
.btn--secondary[disabled]:focus-visible,
.btn--primary-inv[disabled]:focus-visible,
.btn--secondary-inv[disabled]:focus-visible,
.btn--primary.disable:focus-visible,
.btn--secondary.disable:focus-visible,
.btn--primary-inv.disable:focus-visible,
.btn--secondary-inv.disable:focus-visible {
  box-shadow: unset;
}
.card--support .btn--primary,
.card--support .btn--secondary,
.card--support .btn--primary-inv,
.card--support .btn--secondary-inv {
  margin-top: auto;
}
.container-grid--guarantee .btn--primary,
.container-grid--guarantee .btn--secondary,
.container-grid--guarantee .btn--primary-inv,
.container-grid--guarantee .btn--secondary-inv {
  margin-top: unset;
}
.btn--primary {
  background-color: #000;
  color: #fff;
}
.btn--primary:active,
.btn--primary:focus-visible {
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.3);
}
@media only screen and (min-width: 1025px) {
  .btn--primary:hover {
    background-color: rgba(0, 0, 0, 0.7);
  }
}
@media only screen and (min-width: 1025px) {
  .btn--primary:disabled:hover,
  .btn--primary[disabled]:hover,
  .btn--primary.disable:hover {
    background-color: #f5f5f7;
  }
}
@media only screen and (max-width: 640px) {
  .card--product-detail .btn--primary {
    display: none;
  }
}
.btn--secondary {
  background-color: #fff;
  color: #000;
  border: 1px solid #000;
}
.btn--secondary:active,
.btn--secondary:focus-visible {
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.3);
}
@media only screen and (min-width: 1025px) {
  .btn--secondary:hover {
    border: 1px solid rgba(0, 0, 0, 0.5);
  }
}
.btn--secondary:disabled,
.btn--secondary.disable {
  border: 1px solid #dedede;
  color: rgba(0, 0, 0, 0.3);
  background-color: #fff;
}
.btn--secondary.show {
  display: flex;
  position: relative;
  background-color: #f5f5f7;
  border: none;
}
@media only screen and (max-width: 1280px) {
  .btn--secondary.show {
    background-color: transparent;
  }
}
.btn--secondary.show:before,
.btn--secondary.show:after {
  display: block;
  position: absolute;
  top: 20px;
  left: 20px;
  width: 16px;
  height: 2px;
  background-color: #000;
  content: '';
}
@media only screen and (max-width: 1280px) {
  .btn--secondary.show:before,
  .btn--secondary.show:after {
    top: 9px;
    left: 2px;
  }
}
.btn--secondary.show:before {
  transform: rotate(45deg);
}
.btn--secondary.show:after {
  transform: rotate(-45deg);
}
.btn--secondary.show .icon {
  opacity: 0;
}
.btn--primary-inv {
  background-color: #fff;
  color: #000;
}
@media only screen and (max-width: 1024px) {
  .card-modal .btn--primary-inv {
    font-size: 16px;
    line-height: 24px;
    background-color: #000;
    color: #fff;
    padding: 4px 16px;
  }
}
.btn--primary-inv:active,
.btn--primary-inv:focus-visible {
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.3);
  background-color: #fff;
}
@media only screen and (min-width: 1025px) {
  .btn--primary-inv:hover {
    background-color: rgba(255, 255, 255, 0.7);
  }
}
.btn--primary-inv:disabled,
.btn--primary-inv.disable {
  color: rgba(255, 255, 255, 0.3);
  background-color: rgba(0, 0, 0, 0.7);
}
.btn--secondary-inv {
  background-color: transparent;
  color: #fff;
  border: 1px solid #fff;
}
.btn--secondary-inv:active,
.btn--secondary-inv:focus-visible {
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.3);
}
@media only screen and (min-width: 1025px) {
  .btn--secondary-inv:hover {
    border: 1px solid rgba(255, 255, 255, 0.7);
  }
}
.btn--secondary-inv:disabled,
.btn--secondary-inv.disable {
  color: rgba(255, 255, 255, 0.3);
  border: 1px solid rgba(255, 255, 255, 0.3);
}
.btn--bg-transparent {
  background-color: transparent;
}
.btn--m-size {
  font-size: 14px;
  line-height: 14px;
  font-weight: 600;
}
.btn--s-size {
  font-size: 14px;
  line-height: 14px;
  font-weight: 600;
  padding: 8px 16px;
}
.btn--fluid {
  width: 100%;
  max-width: 100%;
  min-width: 100%;
}
.btn--close {
  width: 30px;
  height: 30px;
  max-width: 100%;
  position: relative;
}
.btn--close::before {
  transform: translate(-50%, -50%) rotate(45deg);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 16px;
  height: 2px;
  display: block;
  background-color: #4d4d4d;
  content: '';
}
.btn--close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 16px;
  height: 2px;
  display: block;
  background-color: #4d4d4d;
  content: '';
}
@media only screen and (min-width: 1025px) {
  .btn--close:hover {
    opacity: 0.7;
  }
}
.btn--go-back {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .btn--go-back {
    font-size: 13px;
    line-height: 16px;
    color: rgba(0, 0, 0, 0.7);
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding-block: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .btn--go-back {
    padding-block: 12px;
  }
}
.btn--fluid {
  width: 100%;
  max-width: unset;
}
@media only screen and (max-width: 1024px) {
  .btn--fluid-tablet {
    max-width: unset;
    width: 100%;
  }
}
@media only screen and (max-width: 640px) {
  .btn--fluid-mobile {
    max-width: unset;
    width: 100%;
  }
}
.card--product .btn {
  max-width: unset;
  min-width: calc((100% - 20px) / 2);
  flex: 1;
}
@media only screen and (max-width: 1200px) {
  .card--product .btn {
    max-width: calc((100% - 20px) / 2);
  }
}
@media only screen and (max-width: 374px) {
  .card--product .btn {
    max-width: unset;
  }
}
.meteor-prod .card--product .btn {
  max-width: max-content;
  min-width: max-content;
  align-self: center;
  margin-left: auto;
}
@media only screen and (max-width: 640px) {
  .pdf__shell--blue .btn {
    max-width: 100%;
  }
}
.btn:disabled,
.btn.disable {
  pointer-events: none;
}
.card {
  position: relative;
}
.card.hide {
  display: none;
}
.card__container {
  display: grid;
}
.card__container--product {
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  margin-top: 56px;
}
@media only screen and (max-width: 1200px) {
  .card__container--product {
    gap: 16px;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 640px) {
  .card__container--product {
    gap: 8px;
    grid-template-columns: 1fr;
  }
}
@media only screen and (min-width: 1025px) {
  .card--press:hover {
    transition: color 0.1s linear 0s;
    color: rgba(0, 0, 0, 0.5);
  }
}
@media only screen and (min-width: 1025px) {
  .card--smi:hover .card__img {
    scale: 1.01;
  }
}
.support .card--smi {
  display: flex;
  flex-direction: column;
  gap: 0px;
}
@media only screen and (max-width: 1024px) {
  .read-more .card--smi {
    width: 100% !important;
  }
}
.card--accord {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: start;
  justify-content: center;
  background-color: #f5f5f7;
  padding: 24px 18%;
}
@media only screen and (max-width: 1024px) {
  .card--accord {
    padding: 24px;
  }
}
@media only screen and (max-width: 640px) {
  .card--accord {
    padding: 16px;
  }
}
.card--product {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  animation: smooth-show 0.1s linear forwards;
  display: flex;
  flex-direction: column;
  gap: 16px;
  transition: scale 0.1s linear 0s;
  flex: 1;
  border: 1px solid #dedede;
  padding: 24px;
}
@media only screen and (max-width: 1024px) {
  .card--product {
    padding: 20px;
  }
}
@media only screen and (min-width: 1025px) {
  .card--product:hover .card__img {
    scale: 1.02;
  }
}
@media only screen and (min-width: 1025px) {
  .card--product:hover {
    scale: 1.01;
  }
}
.card--parts-link {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  transition: scale 0.1s linear 0s;
  color: #fff;
  background: var(--Gradient-Black, linear-gradient(58deg, #212121 33.32%, #3b3b3b 106.19%));
  padding: 32px;
  min-height: 224px;
  overflow: hidden;
}
@media only screen and (max-width: 1024px) {
  .card--parts-link {
    min-height: 152px;
  }
}
@media only screen and (min-width: 1025px) {
  .card--parts-link:hover {
    scale: 1.01;
  }
}
.card--support {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  transition: scale 0.1s linear 0s;
  background-color: #f5f5f7;
  padding: 32px;
}
@media only screen and (max-width: 1024px) {
  .card--support {
    padding: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .card--support {
    padding: 16px;
  }
}
@media only screen and (min-width: 1025px) {
  .card--support:hover {
    scale: 1.01;
  }
}
.card--support-white {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  background-color: #fff;
  border: 1px solid #dedede;
}
.card--support-link {
  grid-area: link;
}
.card--support-docs {
  grid-area: docs;
}
.card--support-descr {
  grid-area: descr;
}
@media only screen and (max-width: 640px) {
  .card__tag {
    font-size: 13px;
    line-height: 16px;
  }
}
.card__tag--press {
  margin-bottom: 16px;
}
.card__tag--press::before {
  content: '#';
}
.card__tag-new {
  border-radius: 6px;
  -webkit-border-radius: 6px;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
  background-color: #f06d02;
  color: #fff;
  position: absolute;
  top: 15px;
  left: 15px;
  z-index: 1;
  padding: 4px 8px;
}
@media only screen and (max-width: 1024px) {
  .card__tag-new {
    font-size: 12px;
    line-height: 16px;
    font-weight: 400;
    padding: 1px 8px 3px;
  }
}
.card__link--product-more {
  white-space: nowrap;
  color: #214f99;
  padding-right: 14px;
  position: relative;
  margin-left: auto;
}
.card__link--product-more::after {
  transform: translateY(-50%) rotate(-45deg);
  position: absolute;
  top: 50%;
  display: block;
  width: 5px;
  height: 5px;
  right: 4px;
  left: unset;
  content: '';
  border-bottom: 1px solid #214f99;
  border-right: 1px solid #214f99;
}
@media only screen and (max-width: 1240px) {
  .card__link--product-more {
    margin-inline: 0 auto;
  }
}
.meteor-prod .card--product .card__link--product-more {
  margin-inline: 0 auto;
}
@media only screen and (max-width: 1024px) {
  .card__link--product-more .catalog__body--without-aside {
    margin-inline: 0 auto;
  }
}
.card__link--parts-link {
  color: #fff;
  width: max-content;
  white-space: nowrap;
  position: relative;
  padding-right: 14px;
  margin-top: auto;
}
.card__link--parts-link::after {
  transform: translateY(-50%) rotate(-45deg);
  position: absolute;
  top: 50%;
  display: block;
  width: 5px;
  height: 5px;
  right: 4px;
  left: unset;
  content: '';
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
}
.card__title {
  font-size: 16px;
  line-height: 20px;
  font-weight: 600;
}
@media only screen and (max-width: 1400px) {
  .card__title {
    font-size: 14px;
    line-height: 20px;
  }
}
.card__title--press {
  flex: 1;
  margin-bottom: 16px;
}
.support .card__title--press {
  flex: none;
}
.card__title--product {
  font-size: 16px;
  line-height: 20px;
  font-weight: 500;
}
.card__title--parts-link {
  margin-bottom: 16px;
}
.meteor-prod__links .card__title {
  max-width: 400px;
  text-align: center;
  margin-bottom: 8px;
}
@media only screen and (max-width: 1024px) {
  .meteor-prod__links .card__title {
    margin-bottom: 4px;
  }
}
.car-models__car .card__title {
  font-size: 16px;
  line-height: 20px;
  text-align: center;
}
.card__text {
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}
@media only screen and (max-width: 640px) {
  .card__text {
    font-size: 12px;
    line-height: 16px;
  }
}
.card__text--parts-link,
.card__text--support {
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
}
@media only screen and (max-width: 1024px) {
  .card__text--parts-link,
  .card__text--support {
    font-size: 13px;
    line-height: 16px;
  }
}
.card__text--parts-link {
  color: rgba(255, 255, 255, 0.7);
  max-width: 71%;
  margin-bottom: 24px;
}
.card__text--support {
  color: rgba(0, 0, 0, 0.7);
}
@media only screen and (max-width: 1024px) {
  .card--support-link .card__text--support {
    padding-right: 56px;
  }
}
.meteor-prod__links .card__text {
  max-width: 400px;
  text-align: center;
}
.card__prop-shell {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.card__prop-row {
  font-size: 14px;
  line-height: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
@media only screen and (max-width: 640px) {
  .card__prop-row {
    font-size: 12px;
    line-height: 16px;
  }
}
.card__prop-name {
  font-weight: 500;
  opacity: 0.5;
}
.card__prop-value {
  text-align: right;
}
@media only screen and (max-width: 640px) {
  .card__date {
    font-size: 13px;
    line-height: 16px;
  }
}
.card__date--press {
  color: rgba(0, 0, 0, 0.7);
  margin-top: auto;
}
.card__img-container {
  width: 100%;
}
.card__img-container--press {
  padding-top: 63.85809313%;
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  -webkit-border-radius: 20px;
  margin-bottom: 16px;
}
@media only screen and (max-width: 640px) {
  .card__img-container--press {
    margin-bottom: 12px;
  }
}
.card__img-container--product {
  padding-top: 100%;
  position: relative;
  border-radius: 12px;
  -webkit-border-radius: 12px;
  overflow: hidden;
}
.card__img-container--square {
  padding-top: 100%;
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  -webkit-border-radius: 10px;
}
.card__img-container--cars {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  padding-top: 58.85885886%;
  position: relative;
  overflow: hidden;
  transition: scale 0.1s linear 0s;
  background-color: #f5f5f7;
  margin-bottom: 8px;
}
@media only screen and (min-width: 1025px) {
  .card__img-container--cars:hover {
    scale: 1.02;
  }
}
.card__img-container--ceramics {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  background-color: #f5f5f7;
  aspect-ratio: 1;
  overflow: hidden;
}
.card__img-container--support {
  padding-top: 50.64599483%;
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  -webkit-border-radius: 20px;
  margin-block: 8px;
}
@media only screen and (max-width: 1024px) {
  .card__img-container--support {
    border-radius: 16px;
    -webkit-border-radius: 16px;
    margin-block: 0;
  }
}
.card__img {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale 0.1s linear 0s;
}
.card__img--parts-link {
  transition: scale 0.1s linear 0s;
  max-width: 205px;
  width: auto;
  height: auto;
  max-height: 210px;
  top: unset;
  left: unset;
  right: 0;
  bottom: 0;
  transform: unset;
  object-fit: unset;
  z-index: -1;
}
@media only screen and (min-width: 1025px) {
  .card--parts-link:hover .card__img--parts-link {
    scale: 1.03;
  }
}
.card__img-container--prod-link .card__img {
  max-width: 400px;
  max-height: 400px;
}
.card__btn-container {
  display: flex;
  align-items: center;
  gap: 20px;
}
@media only screen and (max-width: 1024px) {
  .card__btn-container {
    align-self: start;
    gap: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .card__btn-container {
    flex-wrap: wrap;
  }
}
.card--accord .card__btn-container {
  margin-top: 10%;
}
@media only screen and (max-width: 1024px) {
  .card--accord .card__btn-container {
    margin-top: 8px;
  }
}
@media only screen and (max-width: 640px) {
  .card--accord .card__btn-container {
    margin-top: 24px;
  }
}
.card__container--product .card__btn-container {
  flex-wrap: wrap;
}
.card--product .card__btn-container {
  width: 100%;
  flex-wrap: wrap;
  margin-top: auto;
}
.meteor-prod__link .card__btn-container {
  margin-top: 24px;
}
@media only screen and (max-width: 1024px) {
  .meteor-prod__link .card__btn-container {
    margin-top: 16px;
  }
}
.card__short-text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  margin-bottom: 16px;
  color: #141414;
}
.checkbox__label {
  display: block;
  padding-left: 28px;
  text-align: left;
}
@media only screen and (max-width: 1024px) {
  .checkbox__label {
    font-size: 14px;
    line-height: 20px;
  }
}
.checkbox__label input {
  display: none;
}
.catalog-aside .checkbox__label {
  transition: opacity 0.1s linear 0s;
  max-width: max-content;
}
@media only screen and (min-width: 1025px) {
  .catalog-aside .checkbox__label:hover {
    opacity: 0.7;
    cursor: pointer;
  }
}
@media only screen and (max-width: 1024px) {
  .catalog-aside .checkbox__label + .catalog-aside .checkbox__label {
    margin-top: 24px;
  }
}
.checkbox__text {
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .checkbox__text {
    display: block;
  }
}
.checkbox__text::before {
  width: 19px;
  height: 19px;
  position: absolute;
  top: 0;
  left: -28px;
  content: '';
  border: 1px solid #000;
}
.checkbox__input:focus-visible + .checkbox__text::before {
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.3);
}
.catalog-aside .checkbox__text::before {
  top: -2px;
  border: 1px solid #dedede;
  background-color: #fff;
}
.catalog-aside .checkbox__input:checked + .checkbox__text::before {
  border: 1px solid #000;
}
.checkbox__text::after {
  width: 13px;
  height: 13px;
  transition: background-color 0.1s linear 0s;
  background-color: transparent;
  position: absolute;
  top: 4px;
  left: -24px;
  content: '';
}
.checkbox__input:checked + .checkbox__text::after {
  background-color: #000;
}
.catalog-aside .checkbox__text::after {
  top: 2px;
}
.catalog-aside .checkbox__label .checkbox__text {
  font-size: 14px;
  line-height: 20px;
}
.checkbox__label-link {
  display: inline;
  text-decoration: underline;
}
.input {
  border-radius: 22px;
  -webkit-border-radius: 22px;
  font-family: 'SF', Marmelad, 'Lucida Grande', Arial, 'Hiragino Sans GB', Georgia, sans-serif;
  font-size: 16px;
  line-height: 20px;
  background-color: #fff;
  border: 1px solid #dedede;
  width: 100%;
  height: 100%;
  padding: 12px 44px 12px 16px;
}
.input:focus-visible {
  border: 1px solid #000;
}
.input--search {
  padding-left: 48px;
}
@media only screen and (max-width: 1024px) {
  .input--search {
    padding-left: 40px;
  }
}
.input__search-btn,
.input__erase-btn {
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  left: 16px;
}
.input__search-btn::before,
.input__erase-btn::before {
  width: 30px;
  height: 30px;
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  content: '';
}
.input__search-btn:focus-visible,
.input__erase-btn:focus-visible {
  border-radius: 4px;
  -webkit-border-radius: 4px;
  border: 1px solid #000;
}
@media only screen and (max-width: 1024px) {
  .input__search-btn-icon {
    width: 16px;
    height: 16px;
  }
}
.input__erase-btn {
  left: unset;
  display: none;
  right: 16px;
}
.show.input__erase-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
}
.input--textarea {
  border-radius: 8px;
  -webkit-border-radius: 8px;
  font-weight: 500;
}
.input__box {
  height: 44px;
  transition: box-shadow 0.2s ease-in-out;
  position: relative;
}
.search-page__search-panel .input__box--search {
  width: 100%;
}
.range-wrapper {
  line-height: var(--lineHeight);
  border: 2px solid var(--maincolor);
  border-radius: 100%;
  padding: 0;
  position: relative;
  width: 100%;
  overflow: visible;
  color: #000;
}
.range-wrapper__values {
  margin-top: 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.range-wrapper__values-start,
.range-wrapper__values-end {
  font-size: 14px;
  line-height: 20px;
}
.slider-fill {
  border: 0 none;
  border-radius: var(--innertrackRadius);
  margin-inline: 24px;
  padding: 0;
  height: 3px;
  position: relative;
  margin-top: -2px;
}
.slider-thumb {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  width: var(--circleSize);
  height: var(--circleSize);
  background-color: #2864dc;
  position: absolute;
  left: 0;
  top: calc(50% - 9px);
  border: 0 none;
  padding: 0;
  pointer-events: none;
}
.slider-thumb:after {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  content: '';
  display: block;
  position: absolute;
  inset: 2px;
  border: 2px solid #fff;
}
.slider-value {
  display: flex;
  gap: 4px;
  font-size: 1.1rem;
  font-weight: normal;
  border: 1px solid #000;
  background-color: transparent;
  color: rgba(0, 0, 0, 0.5);
  padding: 0;
}
.slider-value__value {
  color: #000;
  background-color: transparent;
  pointer-events: none;
  padding: 12px 24px;
}
.custom-range {
  cursor: pointer;
  height: 15px;
  width: var(--trackSize);
  opacity: 0;
  position: relative;
  top: -8px;
}
.select {
  position: relative;
  width: 100%;
  flex: none;
}
.select::after {
  transition: transform 0.1s linear 0s;
  transform: translateY(calc(50% - 8px));
  position: absolute;
  border: solid transparent;
  border-width: 6px 5px 0;
  border-top-color: inherit;
  transform-origin: 50% 0 0;
  top: calc(50% + 2px);
  right: 20px;
  content: '';
  color: #000;
  pointer-events: none;
}
.active.select::after {
  transform: rotate(180deg);
  color: #fff;
}
.select--secondary::after {
  color: #000;
}
.select__button {
  background-color: transparent;
  border-top: none;
  border-right: none;
  border-bottom: 1px solid #828282;
  border-left: none;
}
.select__current-btn-container {
  position: relative;
}
.catalog-aside__filters-select.required .select__current-btn-container::after {
  position: absolute;
  top: -13px;
  right: -3px;
  color: #ee0019;
  content: '*';
}
.error .select__current-btn-container::after {
  font-size: 10px;
  line-height: 14px;
  font-weight: 400;
  color: #ee0019;
  white-space: nowrap;
  position: absolute;
  bottom: -16px;
  left: 24px;
  content: 'Это обязательное поле для заполнения';
}
.select__current-btn {
  transition: border-color 0.1s linear 0s, background-color 0.1s linear 0s, color 0.1s linear 0s;
  font-size: 16px;
  line-height: 20px;
  justify-content: start;
  font-weight: 500;
  position: relative;
  width: 100%;
  max-width: 100%;
  height: 100%;
  color: #000;
  background-color: transparent;
  border: 1px solid #dedede;
}
.catalog-aside__filter-shell .select__current-btn {
  border: 1px solid #000;
}
.contact-form .select__current-btn {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: unset;
  display: block;
  text-align: left;
  padding-right: 40px;
}
@media only screen and (min-width: 1025px) {
  .select__current-btn:hover {
    background-color: inherit;
    border-color: rgba(0, 0, 0, 0.5);
  }
}
.select__current-btn:disabled,
.select__current-btn[disabled],
.select__current-btn.disable {
  background-color: #f5f5f7;
  color: rgba(0, 0, 0, 0.3);
}
.select__current-btn:disabled:active,
.select__current-btn[disabled]:active,
.select__current-btn.disable:active,
.select__current-btn:disabled:focus-visible,
.select__current-btn[disabled]:focus-visible,
.select__current-btn.disable:focus-visible {
  box-shadow: unset;
}
@media only screen and (min-width: 1025px) {
  .select__current-btn:disabled:hover,
  .select__current-btn[disabled]:hover,
  .select__current-btn.disable:hover {
    background-color: inherit;
    border-color: #dedede;
  }
}
.catalog-aside__filter-shell .select__current-btn:disabled,
.catalog-aside__filter-shell .select__current-btn[disabled],
.catalog-aside__filter-shell .select__current-btn.disable {
  border: 1px solid #dedede;
}
.select__current-btn:first-letter {
  text-transform: uppercase;
}
.search-panel__select .select__current-btn {
  min-width: 100%;
  justify-content: start;
}
.select.active .select__current-btn {
  background-color: #000;
  color: #fff;
}
.catalog-aside__filters--selects .select__current-btn {
  font-size: 14px;
  line-height: 20px;
  font-weight: 600;
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__filters--selects .select__current-btn {
    font-size: 12px;
    line-height: 16px;
  }
}
.error .select__current-btn {
  color: #ee0019;
}
.select--project .select__current-btn {
  padding-right: 60px;
}
.select__current-text {
  display: block;
  width: max-content;
  position: relative;
  pointer-events: none;
}
.select__options {
  border-radius: 4px;
  -webkit-border-radius: 4px;
  background-color: #fff;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.1);
  overflow: hidden;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 2;
  padding: 12px;
  display: none;
}
.select.active .select__options {
  animation: smooth-show 0.2s linear forwards;
  display: block;
}
.select--project .select__options .select__option:first-child {
  display: none;
}
.select__option {
  transition: background-color 0.1s linear 0s, color 0.1s linear 0s;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: unset;
  color: #000;
  width: 100%;
  height: 48px;
  padding: 8px;
}
.select__option:first-letter {
  text-transform: uppercase;
}
@media only screen and (min-width: 1025px) {
  .select__option:hover {
    border-radius: 10px;
    -webkit-border-radius: 10px;
    background-color: #f5f5f7;
    color: rgba(0, 0, 0, 0.3);
    opacity: 1;
  }
}
.catalog-aside__filters--selects .select__option {
  font-size: 14px;
  line-height: 20px;
  font-weight: 600;
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__filters--selects .select__option {
    font-size: 12px;
    line-height: 16px;
  }
}
.select__native {
  width: 0px;
  height: 0px;
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0;
}
.select__native:first-letter {
  text-transform: uppercase;
}
.select__close-btn {
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  right: 44px;
  top: 50%;
  transform: translateY(-50%);
  display: none;
}
.select__close-btn.active,
.select__close-btn--active {
  display: block;
}
.air-datepicker {
  font-family: 'SF', Marmelad, 'Lucida Grande', Arial, 'Hiragino Sans GB', Georgia, sans-serif;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  border: none;
  box-shadow: 0 8px 40px 0 rgba(27, 27, 27, 0.1) !important;
  width: min-content;
  padding: 32px 40px;
  position: relative !important;
  right: 70px;
  --adp-color-secondary: #000 !important;
  color: #000 !important;
}
@media only screen and (max-width: 640px) {
  .air-datepicker {
    padding: 24px;
  }
}
.air-datepicker .air-datepicker--content {
  width: min-content;
  padding: 0;
}
.air-datepicker .air-datepicker-nav {
  padding: 0;
  border: none;
}
.air-datepicker .air-datepicker-nav--title {
  font-size: 16px;
  line-height: 20px;
  font-weight: 600;
}
@media only screen and (max-width: 640px) {
  .air-datepicker .air-datepicker-nav--title {
    font-size: 14px;
    line-height: 20px;
  }
}
.air-datepicker .air-datepicker-nav--title i {
  color: #000;
}
.air-datepicker .air-datepicker-nav--action svg {
  display: block;
  width: 20px;
  height: 20px;
}
.air-datepicker .air-datepicker-nav--action[data-action="prev"] svg {
  transform: rotate(180deg);
}
.air-datepicker .air-datepicker-body.-days- {
  width: min-content;
}
.air-datepicker .air-datepicker-body--day-names {
  border-bottom: 1px solid #dedede;
  grid-template-columns: repeat(7, 40px);
  padding-bottom: 8px !important;
  height: 28px;
  margin: 32px 0 16px !important;
}
@media only screen and (max-width: 640px) {
  .air-datepicker .air-datepicker-body--day-names {
    grid-template-columns: repeat(7, 32px);
    margin: 24px 0 12px !important;
  }
}
.air-datepicker .air-datepicker-body--day-name {
  font-size: 14px;
  line-height: 20px;
  color: rgba(0, 0, 0, 0.7);
  text-transform: lowercase;
}
.air-datepicker .air-datepicker-body--cells.-years-,
.air-datepicker .air-datepicker-body--cells.-months- {
  margin-top: 32px;
}
@media only screen and (max-width: 640px) {
  .air-datepicker .air-datepicker-body--cells.-years-,
  .air-datepicker .air-datepicker-body--cells.-months- {
    margin-top: 16px;
  }
}
.air-datepicker .air-datepicker-body--cells.-days- {
  width: min-content;
  gap: 0 !important;
  grid-auto-rows: unset !important;
}
.air-datepicker .air-datepicker-cell.-year- {
  display: block;
  width: 69px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
}
@media only screen and (max-width: 640px) {
  .air-datepicker .air-datepicker-cell.-year- {
    display: block;
    width: 56px;
    height: 32px;
    display: flex;
  }
}
.air-datepicker .air-datepicker-cell.-year-.-selected- {
  border-radius: 0px;
  -webkit-border-radius: 0px;
  background-color: #000;
}
.air-datepicker .air-datepicker-cell.-month- {
  display: block;
  width: 92px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
}
@media only screen and (max-width: 640px) {
  .air-datepicker .air-datepicker-cell.-month- {
    display: block;
    width: 75px;
    height: 40px;
    display: flex;
  }
}
.air-datepicker .air-datepicker-cell.-month-.-selected- {
  border-radius: 0px;
  -webkit-border-radius: 0px;
  background-color: #000;
}
.air-datepicker .air-datepicker-cell.-day- {
  width: 40px !important;
  height: 40px !important;
  display: flex !important;
}
@media only screen and (max-width: 640px) {
  .air-datepicker .air-datepicker-cell.-day- {
    width: 32px !important;
    height: 32px !important;
    display: flex !important;
    font-size: 13px;
    line-height: 16px;
  }
}
.air-datepicker .air-datepicker-cell.-day-.-selected- {
  border-radius: 0px;
  -webkit-border-radius: 0px;
  background-color: #000;
}
.air-datepicker .air-datepicker-cell.-day-.-focus-,
.air-datepicker .air-datepicker-cell.-day-.-range-to-,
.air-datepicker .air-datepicker-cell.-day-.-range-from- {
  border-radius: 0px;
  -webkit-border-radius: 0px;
  border: 2px solid transparent;
}
.air-datepicker .air-datepicker-cell.-day-.-in-range- {
  background-color: #f5f5f7;
}
.air-datepicker .air-datepicker--buttons {
  border: none;
}
.air-datepicker .air-datepicker--buttons {
  padding: 0;
}
.air-datepicker .btn {
  height: 44px;
  margin-top: 32px;
}
@media only screen and (max-width: 640px) {
  .air-datepicker .btn {
    margin-top: 24px;
  }
}
@media only screen and (min-width: 1025px) {
  .air-datepicker .btn:hover {
    background-color: rgba(0, 0, 0, 0.7);
    color: #fff;
  }
}
.air-datepicker-global-container {
  z-index: 1;
}
.spinner {
  width: 48px;
  height: 48px;
  border-radius: 100%;
  display: block;
  border-top: 3px solid rgba(0, 0, 0, 0.7);
  border-right: 3px solid transparent;
  animation: rotation 1s linear infinite;
  flex: none;
  margin: auto;
}
.catalog .spinner {
  grid-column-end: 3;
  margin-block: 40px;
}
@media only screen and (max-width: 1200px) {
  .catalog .spinner {
    grid-column-end: -1;
    margin-inline: unset;
  }
}
@media only screen and (max-width: 640px) {
  .catalog .spinner {
    margin-inline: auto;
  }
}
@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.card-project {
  position: relative;
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 1025px) {
  .card-project:hover .card-project__img {
    scale: 1.02;
  }
}
.card-project__title {
  font-weight: 600;
  margin-bottom: 20px;
  min-height: 64px;
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  /* number of lines to show */
  line-clamp: 2;
  -webkit-box-orient: vertical;
}
@media only screen and (max-width: 1024px) {
  .card-project__title {
    min-height: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .card-project__title {
    min-height: auto;
    margin-bottom: 16px;
    -webkit-line-clamp: none;
    line-clamp: none;
  }
}
.card-project__text {
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}
@media only screen and (max-width: 640px) {
  .card-project__text {
    font-size: 12px;
    line-height: 16px;
  }
}
.card-project__prop-shell {
  display: flex;
  flex-direction: column;
  gap: 8px;
  border-radius: 16px;
  -webkit-border-radius: 16px;
  background-color: #f5f5f7;
  padding: 16px;
  flex-grow: 1;
}
.card-project__prop-row {
  font-size: 14px;
  line-height: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
@media only screen and (max-width: 640px) {
  .card-project__prop-row {
    font-size: 12px;
    line-height: 16px;
  }
}
.card-project__prop-name {
  font-weight: 500;
  opacity: 0.5;
}
.card-project__prop-value {
  text-align: right;
}
.card-project__img-container {
  width: 100%;
  padding-top: 66.47230321%;
  position: relative;
  border-radius: 16px;
  -webkit-border-radius: 16px;
  overflow: hidden;
  margin-bottom: 8px;
}
.card-project__img {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale 0.1s linear 0s;
}
.section:last-child {
  margin-bottom: 100px;
}
@media only screen and (max-width: 1024px) {
  .section:last-child {
    margin-bottom: 80px;
  }
}
@media only screen and (max-width: 640px) {
  .section:last-child {
    margin-bottom: 60px;
  }
}
.section + .section {
  margin-top: 100px;
}
@media only screen and (max-width: 1024px) {
  .section + .section {
    margin-top: 80px;
  }
}
@media only screen and (max-width: 640px) {
  .section + .section {
    margin-top: 60px;
  }
}
.section + .section--pagination {
  margin-top: auto;
}
@media only screen and (max-width: 1024px) {
  .banner-text + .section--install {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .banner-text + .section--install {
    margin-top: 32px;
  }
}
.section--paginaion {
  margin-top: auto;
  display: flex;
  flex-direction: column;
  justify-content: end;
  padding-bottom: 96px;
}
@media only screen and (max-width: 1024px) {
  .section--paginaion {
    padding-bottom: 48px;
  }
}
@media only screen and (max-width: 640px) {
  .section--paginaion {
    padding-bottom: 40px;
  }
}
.section--no-top-padding {
  padding-top: 0;
}
.section--with-border {
  padding-bottom: 50px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}
@media only screen and (max-width: 1024px) {
  .section--with-border {
    border-bottom: none;
    padding-bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .section--with-border {
    padding-bottom: 32px;
  }
}
.section--with-border + .section {
  margin-top: 50px;
}
@media only screen and (max-width: 1024px) {
  .section--with-border + .section {
    margin-top: 0;
  }
}
.section--stuff-slider {
  overflow-x: hidden;
}
.prop-slider__shell .section__title-shell {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-bottom: 40px;
}
@media only screen and (max-width: 1024px) {
  .prop-slider__shell .section__title-shell {
    margin-bottom: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .prop-slider__shell .section__title-shell {
    margin-bottom: 24px;
  }
}
.section__title {
  margin-bottom: 40px;
}
@media only screen and (max-width: 1024px) {
  .section__title {
    margin-bottom: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .section__title {
    margin-bottom: 24px;
  }
}
.section__title--center {
  margin-inline: auto;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .section__title--tablet-left {
    text-align: left;
    margin-inline: 0;
  }
}
@media only screen and (max-width: 640px) {
  .section__title--mobile-left {
    text-align: left;
    margin-inline: 0;
  }
}
.section__title--with-sign {
  margin-bottom: 24px;
}
@media only screen and (max-width: 1024px) {
  .section__title--with-sign {
    margin-bottom: 16px;
  }
}
.section__title--large-mb {
  margin-bottom: 52px;
}
@media only screen and (max-width: 1024px) {
  .section__title--large-mb {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .section__title--large-mb {
    margin-bottom: 32px;
  }
}
.section__title--short {
  max-width: 686px;
}
@media only screen and (max-width: 1024px) {
  .section__title--short {
    max-width: 100%;
  }
}
.section__title--middle-mobile {
  max-width: 686px;
}
@media only screen and (max-width: 1024px) {
  .section__title--middle-mobile {
    max-width: 75%;
  }
}
@media only screen and (max-width: 640px) {
  .section__title--middle-mobile {
    max-width: 100%;
    text-align: left;
  }
}
.middle--video .section__title,
.section--stuff-slider .section__title {
  max-width: 686px;
  margin-inline: auto;
}
@media only screen and (max-width: 640px) {
  .instrum .section__title,
  .section--install .section__title,
  .section--segments .section__title,
  .online-tools .section__title,
  .section--features .section__title {
    text-align: left;
    margin-inline: 0;
  }
}
@media only screen and (max-width: 1024px) {
  .section--stuff-slider .section__title {
    text-align: center;
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .section--stuff-slider .section__title {
    margin-bottom: 32px;
  }
}
.prop-slider__shell .section__title {
  margin-bottom: 0;
}
.section__subtitle {
  font-size: 18px;
  line-height: 32px;
  margin-top: 24px;
}
@media only screen and (max-width: 1024px) {
  .section__subtitle {
    font-size: 16px;
    line-height: 24px;
    margin-top: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .section__subtitle {
    margin-top: 12px;
  }
}
.section__subtitle:first-child {
  margin-top: 0;
}
.section__subtitle + .section__subtitle {
  margin-top: 16px;
}
@media only screen and (max-width: 1024px) {
  .section__subtitle + .section__subtitle {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .section__subtitle + .section__subtitle {
    margin-top: 16px;
  }
}
.section__subtitle--border + .section__subtitle {
  margin-top: 52px;
}
@media only screen and (max-width: 1024px) {
  .section__subtitle--border + .section__subtitle {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .section__subtitle--border + .section__subtitle {
    margin-top: 32px;
  }
}
.section__subtitle--center {
  margin-inline: auto;
  text-align: center;
}
.section__subtitle--center-desktop {
  margin-inline: auto;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .section__subtitle--center-desktop {
    text-align: left;
  }
}
@media only screen and (max-width: 1024px) {
  .section__subtitle--blue {
    border-radius: 20px;
    -webkit-border-radius: 20px;
    display: block;
    background-color: #0045b50f;
    padding: 20px;
    text-align: left;
  }
}
.section__subtitle--short {
  max-width: 686px;
}
@media only screen and (max-width: 1024px) {
  .section__subtitle--short {
    max-width: 100%;
  }
}
.section__subtitle--middle {
  max-width: 922px;
}
@media only screen and (max-width: 1024px) {
  .section__subtitle--middle {
    max-width: unset;
  }
}
.section__subtitle--middle-mobile {
  max-width: 686px;
}
@media only screen and (max-width: 1024px) {
  .section__subtitle--middle-mobile {
    max-width: 75%;
  }
}
@media only screen and (max-width: 640px) {
  .section__subtitle--middle-mobile {
    max-width: 100%;
    text-align: left;
  }
}
.section__subtitle--bold {
  font-weight: 600;
}
@media only screen and (max-width: 1024px) {
  .section__subtitle--tablet-left {
    text-align: left;
    margin-inline: 0;
  }
}
@media only screen and (max-width: 640px) {
  .section__subtitle--mobile-left {
    text-align: left;
    margin-inline: 0;
  }
}
.section__subtitle--border {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  border: 1px solid #dedede;
  text-align: center;
  padding: 40px 59px;
}
@media only screen and (max-width: 640px) {
  .section__subtitle--border {
    text-align: left;
    padding: 24px 16px;
  }
}
.code .section__subtitle {
  margin-bottom: 52px;
}
@media only screen and (max-width: 1024px) {
  .code .section__subtitle {
    display: none;
  }
}
.section--install-info .section__subtitle {
  margin-bottom: 52px;
}
@media only screen and (max-width: 1024px) {
  .section--install-info .section__subtitle {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .section--install-info .section__subtitle {
    margin-bottom: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .instrum .section__subtitle,
  .section--install .section__subtitle {
    text-align: left;
    margin-inline: 0;
  }
}
@media only screen and (max-width: 1024px) {
  .support .section__subtitle,
  .buy .section__subtitle {
    margin-inline: unset;
    text-align: left;
  }
}
.middle--video .section__subtitle {
  max-width: 686px;
  margin-inline: auto;
}
.section__subtitle--p4 {
  font-size: 16px;
  line-height: 24px;
  margin-top: 24px;
  margin-bottom: 40px;
}
@media only screen and (max-width: 1024px) {
  .section__subtitle--p4 {
    font-size: 13px;
    line-height: 16px;
    margin-bottom: 24px;
  }
}
.section__subtitle a {
  font-size: 24px;
  line-height: 32px;
  font-weight: 600;
  color: #2864dc;
}
@media only screen and (max-width: 1400px) {
  .section__subtitle a {
    font-size: 17px;
    line-height: 20px;
  }
}
.section__btn {
  margin-inline: auto;
  margin-top: 40px;
}
@media only screen and (max-width: 1024px) {
  .section__btn {
    margin-top: 32px;
  }
}
.support-lib .section__btn {
  margin-top: 60px;
}
@media only screen and (max-width: 1024px) {
  .support-lib .section__btn {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .support-lib .section__btn {
    margin-top: 24px;
  }
}
@media only screen and (max-width: 640px) {
  .section__btn--mobile-left {
    margin-inline: 0;
  }
}
.section__title-count {
  font-size: 16px;
  line-height: 24px;
  font-weight: 500;
  margin-left: 16px;
  color: rgba(0, 0, 0, 0.7);
}
.section__inner-gap {
  display: flex;
  flex-direction: column;
  gap: 50px;
}
@media only screen and (max-width: 1024px) {
  .section__inner-gap {
    margin-top: 24px;
  }
}
.banner-text__container {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  position: relative;
  min-height: 628px;
  padding: 80px;
}
@media only screen and (max-width: 1024px) {
  .banner-text__container {
    min-height: 420px;
    padding: 48px 40px;
  }
}
@media only screen and (max-width: 640px) {
  .banner-text__container {
    min-height: 488px;
    padding: 32px 16px;
  }
}
.banner-text__container::before {
  position: absolute;
  inset: 0;
  content: '';
  display: block;
  background: linear-gradient(75.62deg, rgba(0, 0, 0, 0.8) 19.07%, rgba(0, 0, 0, 0) 80.72%);
  z-index: 2;
}
.banner-text__container + * {
  margin-top: 50px;
}
@media only screen and (max-width: 1400px) {
  .banner-text__container + * {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .banner-text__container + * {
    margin-top: 32px;
  }
}
.banner-text__content {
  position: relative;
  z-index: 4;
  color: #fff;
  display: flex;
  flex-direction: column;
  max-width: 50%;
}
@media only screen and (max-width: 640px) {
  .banner-text__content {
    max-width: 100%;
  }
}
.banner-text__bg {
  transition: scale 0.4s linear 0s;
  position: absolute;
  inset: 0;
  height: 100%;
  width: 100%;
  object-fit: cover;
}
@media only screen and (min-width: 1025px) {
  .banner-text__container:hover .banner-text__bg {
    scale: 1.01;
  }
}
.banner-text__title {
  font-size: 36px;
  line-height: 44px;
  font-weight: 600;
  color: #fff;
  position: relative;
  z-index: 3;
  margin-bottom: 24px;
}
@media only screen and (max-width: 1024px) {
  .banner-text__title {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .banner-text__title {
    margin-bottom: 12px;
  }
}
.banner-text__title:last-child {
  margin-bottom: 0;
}
.banner-text__btn {
  margin-top: 32px;
}
@media only screen and (max-width: 1400px) {
  .banner-text__btn {
    margin-top: 24px;
  }
}
.breadcrumbs {
  color: rgba(0, 0, 0, 0.7);
  display: flex;
  gap: 12px;
  padding-block: 24px;
}
@media only screen and (max-width: 1024px) {
  .breadcrumbs {
    display: none;
  }
}
.breadcrumbs__item {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  position: relative;
}
.breadcrumbs__item .breadcrumbs__link {
  padding-right: 35px;
  white-space: nowrap;
}
.breadcrumbs__item::after {
  width: 21px;
  height: 21px;
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  right: 0;
  display: block;
  background: url("/assets-nd/img/svg/arrow-bread.svg") 0 0;
  content: "";
  pointer-events: none;
}
.breadcrumbs__item:last-child {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 90ch;
  pointer-events: none;
}
.breadcrumbs__item:last-child::after {
  background: none;
}
.breadcrumbs__item:last-child .breadcrumbs__link {
  padding-right: 0;
}
.breadcrumbs__item:last-child a {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 90ch;
}
@media only screen and (min-width: 1025px) {
  .breadcrumbs__item:hover {
    opacity: 0.7;
  }
  .breadcrumbs__item:hover:last-child {
    opacity: 1;
  }
}
.block-links {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media only screen and (max-width: 1024px) {
  .block-links {
    max-width: 542px;
    grid-template-columns: 1fr;
    margin-inline: auto;
  }
}
@media only screen and (max-width: 640px) {
  .block-links {
    max-width: 100%;
    gap: 8px;
  }
}
@media only screen and (max-width: 1024px) {
  .block-links--tech {
    max-width: 100%;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: '. .' 'last last';
  }
}
@media only screen and (max-width: 640px) {
  .block-links--tech {
    grid-template-columns: 1fr;
    grid-template-areas: unset;
  }
}
.block-links--personal {
  margin-top: 52px;
  margin-inline: auto;
  grid-template-columns: repeat(2, 1fr);
  max-width: 920px;
}
@media only screen and (max-width: 1024px) {
  .block-links--personal {
    gap: 8px;
    margin-top: 32px;
    max-width: 100%;
  }
}
@media only screen and (max-width: 640px) {
  .block-links--personal {
    grid-template-columns: 1fr;
  }
}
.block-links__item {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  transition: scale 0.1s linear 0s;
  overflow: hidden;
  background-color: #f5f5f7;
  position: relative;
  padding: 32px;
}
@media only screen and (max-width: 1024px) {
  .block-links__item {
    padding: 20px;
    gap: 12px;
  }
}
@media only screen and (max-width: 640px) {
  .block-links__item {
    border-radius: 16px;
    -webkit-border-radius: 16px;
    padding: 16px;
  }
}
@media only screen and (min-width: 1025px) {
  .block-links__item:hover {
    scale: 1.01;
  }
}
.block-links__item p {
  font-size: 14px;
  line-height: 20px;
  color: rgba(0, 0, 0, 0.7);
}
.block-links__item p a {
  font-weight: 600;
  color: #2864dc;
}
@media only screen and (max-width: 1024px) {
  .block-links--tech .block-links__item:last-child {
    grid-area: last;
  }
}
@media only screen and (max-width: 640px) {
  .block-links--tech .block-links__item:last-child {
    grid-area: unset;
  }
}
.block-links__item-link {
  user-select: none;
  font-size: 0;
  color: transparent;
  position: absolute;
  inset: 0;
}
.block-links__item-content {
  flex-grow: 1;
}
.block-links__tag-list {
  font-size: 14px;
  line-height: 20px;
  color: rgba(0, 0, 0, 0.7);
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  margin-bottom: 24px;
}
@media only screen and (max-width: 1024px) {
  .block-links__tag-list {
    font-size: 12px;
    line-height: 16px;
  }
}
.block-links__tag-list-item {
  position: relative;
  display: flex;
  align-items: center;
  gap: 4px;
}
.block-links__tag-list-item::before {
  border-radius: 3px;
  -webkit-border-radius: 3px;
  content: '';
  display: block;
  width: 2px;
  height: 2px;
  background-color: currentColor;
}
.block-links__tag-list-item:first-child::before {
  content: none;
}
.block-links__item-link-more {
  max-width: max-content;
  margin-top: auto;
}
@media only screen and (max-width: 1024px) {
  .block-links__item-link-more {
    font-size: 13px !important;
    line-height: 16px !important;
  }
}
.show-more-link.block-links__item-link-more {
  pointer-events: none;
}
.block-links__item-link-phone {
  position: relative;
  z-index: 2;
}
.bonus-imgs__shell {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  border-radius: 20px;
  -webkit-border-radius: 20px;
  overflow: hidden;
  width: 90dvw;
  height: 90dvh;
  max-width: 90dvw;
  max-height: 90dvw;
  display: none;
}
.show.bonus-imgs__shell {
  display: flex;
}
@media only screen and (max-width: 1024px) {
  .bonus-imgs__shell {
    border-radius: 4px;
    -webkit-border-radius: 4px;
    top: 0;
    left: 0;
    transform: unset;
    background-color: #fff;
    width: 100dvw;
    width: 100%;
    height: 100dvh;
    max-width: unset;
    max-height: unset;
    padding-inline: 20px;
    display: none;
  }
  .show.bonus-imgs__shell {
    display: flex;
    flex-direction: column;
    gap: 0px;
  }
}
@media only screen and (max-width: 640px) {
  .bonus-imgs__shell {
    padding-inline: 16px;
  }
}
.bonus-imgs__close-btn {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 2;
}
@media only screen and (max-width: 1024px) {
  .bonus-imgs__close-btn {
    right: unset;
    left: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .bonus-imgs__close-btn {
    left: 12px;
  }
}
.bonus-imgs__slider {
  width: 100%;
  height: 100%;
}
@media only screen and (max-width: 1024px) {
  .bonus-imgs__slider {
    flex: 1 1;
    width: calc(100% + 2 * 20px);
    height: auto;
    max-height: 80%;
    margin-block: auto;
    margin-left: -20px;
  }
}
@media only screen and (max-width: 640px) {
  .bonus-imgs__slider {
    width: calc(100% + 2 * 16px);
    margin-left: -16px;
    height: 100%;
    max-height: 100%;
  }
}
@media only screen and (max-width: 1024px) {
  .bonus-imgs__slide-wrapper {
    height: calc(100% - 40px) !important;
    max-height: 100%;
  }
}
@media only screen and (max-width: 640px) {
  .bonus-imgs__slide-wrapper {
    height: 100%;
    max-height: 100%;
  }
}
.bonus-imgs__slide {
  width: 100%;
}
.bonus-imgs__slider .bonus-imgs__slide {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
}
.bonus-imgs__slide-img {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media only screen and (max-width: 1024px) {
  .bonus-imgs__slide-img {
    position: static;
    transform: none;
  }
}
.bonus-imgs__slider .bonus-imgs__slide-img {
  width: auto;
  height: auto;
  max-height: 100%;
  margin-inline: auto;
  transform: none;
  position: unset;
  inset: auto;
  object-fit: unset;
}
.bonus-imgs__btns {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .bonus-imgs__btns {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding-top: 32px;
    margin-block: auto 40px;
  }
}
.bonus-imgs__btn {
  max-width: 100%;
  width: 100%;
}
.bonus-imgs__slider-btn {
  width: 40px;
  height: 40px;
  border-radius: 100%;
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  z-index: 2;
  border: 1px solid rgba(255, 255, 255, 0.3);
  background-color: transparent;
  flex: none;
}
@media only screen and (max-width: 1024px) {
  .bonus-imgs__slider-btn {
    display: none;
  }
}
.bonus-imgs__slider-btn:active,
.bonus-imgs__slider-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.7);
}
.bonus-imgs__slider-btn--prev {
  left: 16px;
}
.bonus-imgs__slider-btn--prev span {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.bonus-imgs__slider-btn--prev span::before {
  transform: translateY(-50%) rotate(135deg);
  position: absolute;
  top: 50%;
  display: block;
  width: 8px;
  height: 8px;
  right: 13px;
  content: '';
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
}
.bonus-imgs__slider-btn--next {
  right: 16px;
}
.bonus-imgs__slider-btn--next span {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.bonus-imgs__slider-btn--next span::before {
  transform: translateY(-50%) rotate(-45deg);
  position: absolute;
  top: 50%;
  display: block;
  width: 8px;
  height: 8px;
  right: 16px;
  content: '';
  border-right: 1px solid #fff;
  border-bottom: 1px solid #fff;
}
.swiper-button-disabled.bonus-imgs__slider-btn {
  background-color: transparent;
  cursor: not-allowed;
}
.swiper-button-disabled.bonus-imgs__slider-btn span::before {
  border-right: 1px solid rgba(0, 0, 0, 0.15);
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}
.swiper-button-disabled.bonus-imgs__slider-btn:active,
.swiper-button-disabled.bonus-imgs__slider-btn:focus-visible {
  box-shadow: unset;
}
.bonus-imgs__slider-pagination {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .bonus-imgs__slider-pagination {
    display: block;
    position: relative;
    margin-top: 18px;
  }
}
.d-menu {
  position: relative;
  display: none;
  overflow: auto;
}
.show.d-menu {
  animation: smooth-show 0.2s linear forwards;
  display: flex;
  flex-direction: column;
  gap: 0px;
  background-color: #fff;
  position: relative;
  z-index: 1000;
  height: 100%;
  padding: 24px;
}
@media only screen and (max-width: 1024px) {
  .show.d-menu {
    width: 33.3333vw;
  }
}
@media only screen and (max-width: 640px) {
  .show.d-menu {
    width: 100vw;
    flex-shrink: 0;
  }
}
.d-menu__header {
  display: flex;
  gap: 16px;
  margin-bottom: 28px;
}
.d-menu__header-search {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .d-menu__header-search {
    display: flex;
    width: 100%;
  }
}
.d-menu__home-btn {
  width: 44px;
  height: 44px;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  color: #fff;
  flex: none;
  max-width: unset;
  padding: 0;
}
.d-menu__home-btn svg {
  flex: none;
}
.d-menu__tabs-container {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.d-menu__tab-btn {
  display: none;
}
.d-menu__tab-dock {
  position: relative;
}
@media only screen and (max-width: 640px) {
  .d-menu__tab-dock {
    position: unset;
    z-index: 1005;
  }
}
.d-menu__tab-dock-item {
  display: none;
}
.show.d-menu__tab-dock-item {
  animation: smooth-show 0.2s linear forwards;
  display: block;
}
@media only screen and (max-width: 1024px) {
  .show.d-menu__tab-dock-item {
    overflow-x: auto;
  }
}
.footer {
  padding-block: 40px;
  border-top: 1px solid rgba(0, 0, 0, 0.15);
}
@media only screen and (max-width: 1024px) {
  .footer {
    padding-block: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .footer {
    padding-block: 20px;
  }
}
.footer__logo {
  display: block;
  width: 171px;
  height: 24px;
  color: #ed1c24;
}
.footer__nav-container {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}
@media only screen and (max-width: 1400px) {
  .footer__nav-container {
    gap: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .footer__nav-container {
    gap: 32px;
  }
}
@media only screen and (max-width: 1024px) {
  .footer__nav-container {
    gap: 20px;
    flex-direction: column;
  }
}
@media only screen and (max-width: 640px) {
  .footer__nav-container {
    gap: 32px;
  }
}
.footer__nav {
  column-count: 3;
  gap: 40px;
  margin-bottom: -20px;
}
@media only screen and (max-width: 1400px) {
  .footer__nav {
    column-count: 2;
    gap: 23%;
  }
}
@media only screen and (max-width: 1024px) {
  .footer__nav {
    gap: 20px;
    width: 100%;
  }
}
@media only screen and (max-width: 374px) {
  .footer__nav {
    column-count: 1;
  }
}
.footer__nav-btn {
  margin-bottom: 16px;
}
.footer__nav-block {
  display: flex;
  flex-direction: column;
  gap: 0px;
  break-inside: avoid;
  padding-bottom: 20px;
}
.footer__nav-link-title {
  font-size: 16px;
  line-height: 20px;
  width: max-content;
  font-weight: 600;
  padding-block: 8px;
}
@media only screen and (max-width: 1024px) {
  .footer__nav-link-title {
    font-size: 13px;
    line-height: 16px;
  }
}
.footer__nav-link + .footer__nav-link-title,
.footer__nav-link-title + .footer__nav-link-title {
  margin-top: 20px;
}
.footer__nav-link {
  font-size: 16px;
  line-height: 24px;
  color: rgba(0, 0, 0, 0.7);
  width: max-content;
  padding-block: 8px;
}
@media only screen and (max-width: 1024px) {
  .footer__nav-link {
    font-size: 13px;
    line-height: 16px;
  }
}
.footer__info-data {
  max-width: 372px;
  margin-left: auto;
}
@media only screen and (max-width: 1024px) {
  .footer__info-data {
    margin-left: unset;
    max-width: unset;
  }
}
.footer__info-block {
  min-width: 216px;
}
@media only screen and (max-width: 1024px) {
  .footer__info-block {
    min-width: 170px;
  }
}
@media only screen and (max-width: 640px) {
  .footer__info-block {
    min-width: unset;
  }
}
.footer__info-title {
  font-size: 16px;
  line-height: 24px;
  color: rgba(0, 0, 0, 0.7);
  padding-block: 8px;
}
@media only screen and (max-width: 1024px) {
  .footer__info-title {
    font-size: 13px;
    line-height: 16px;
  }
}
.footer__info-text {
  font-size: 16px;
  line-height: 20px;
  font-weight: 600;
  padding-block: 8px;
}
@media only screen and (max-width: 1024px) {
  .footer__info-text {
    font-size: 13px;
    line-height: 16px;
  }
}
.footer__info-contact-actions {
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: end;
  justify-content: space-between;
}
@media only screen and (max-width: 1024px) {
  .footer__info-contact-actions {
    align-items: start;
  }
}
.footer__info-contact-socials {
  display: flex;
  gap: 16px;
}
.footer__info-contact-social-box {
  width: 44px;
  height: 44px;
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  transition: opacity 0.1s linear 0s;
  display: none;
  background-color: #f5f5f7;
}
.footer__info-contact-social-box:active,
.footer__info-contact-social-box:focus-visible {
  border: 1px solid #000;
}
@media only screen and (min-width: 1025px) {
  .footer__info-contact-social-box:hover {
    opacity: 0.6;
  }
}
.footer__rules {
  font-size: 14px;
  line-height: 20px;
  color: #000;
  opacity: 0.7;
  border-top: 1px solid rgba(0, 0, 0, 0.15);
  display: flex;
  gap: 24px;
  justify-content: space-between;
  padding-top: 40px;
}
@media only screen and (max-width: 1240px) {
  .footer__rules {
    flex-direction: column;
  }
}
@media only screen and (max-width: 1024px) {
  .footer__rules {
    font-size: 14px;
    line-height: 20px;
    margin-top: -8px;
    padding-top: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .footer__rules {
    margin-top: -12px;
    padding-top: 20px;
  }
}
.footer__rules-link-container {
  display: flex;
  gap: 20px;
}
@media only screen and (max-width: 1024px) {
  .footer__rules-link-container {
    gap: 16px;
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 640px) {
  .footer__rules-link-container {
    flex-direction: column;
    gap: 8px;
  }
}
.footer__rules-copyright {
  flex: 1 1;
}
.footer__rules-link {
  display: flex;
  align-items: start;
  gap: 6px;
  white-space: nowrap;
}
@media only screen and (max-width: 640px) {
  .footer__rules-link:last-child {
    margin-top: 16px;
  }
}
.footer__rules-synchro-logo {
  display: block;
  width: 102px;
  height: 14px;
  transform: translateY(2px);
}
.header {
  padding-top: 92px;
}
@media only screen and (max-width: 1320px) {
  .header {
    padding-top: 56px;
  }
}
.header--with-banner {
  margin-bottom: 100px;
}
@media only screen and (max-width: 1024px) {
  .header--with-banner {
    margin-bottom: 80px;
  }
}
@media only screen and (max-width: 1200px) {
  .header--with-banner {
    margin-bottom: 60px;
  }
}
.header--sout {
  margin-bottom: 50px;
}
@media only screen and (max-width: 1024px) {
  .header--sout {
    margin-bottom: 0;
  }
}
.header--prod {
  margin-bottom: 56px;
}
@media only screen and (max-width: 1024px) {
  .header--prod {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .header--prod {
    margin-bottom: 32px;
  }
}
.header--only-bc {
  margin-bottom: 8px;
}
@media only screen and (max-width: 1200px) {
  .header--only-bc {
    margin-bottom: 4px;
  }
}
.header--with-title {
  margin-bottom: 32px;
}
@media only screen and (max-width: 1024px) {
  .header--with-title {
    margin-bottom: 24px;
  }
}
.header--border-bottom {
  position: relative;
  padding-bottom: 52px;
  margin-bottom: 52px;
}
@media only screen and (max-width: 1024px) {
  .header--border-bottom {
    padding-bottom: 0;
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .header--border-bottom {
    margin-bottom: 32px;
  }
}
.header--border-bottom::after {
  transform: translateX(-50%);
  position: absolute;
  left: 50%;
  background-color: #dedede;
  width: 100%;
  height: 1px;
  bottom: 0;
  content: '';
}
@media only screen and (max-width: 1024px) {
  .header--border-bottom::after {
    content: unset;
  }
}
.header--contact {
  padding-top: 172px;
  padding-bottom: 32px;
}
@media only screen and (max-width: 1200px) {
  .header--contact {
    padding-top: 116px;
  }
}
@media only screen and (max-width: 640px) {
  .header--contact {
    padding-top: 96px;
    padding-bottom: 24px;
  }
}
.header--contact-with-us {
  padding-top: 172px;
  margin-bottom: 0;
}
@media only screen and (max-width: 1200px) {
  .header--contact-with-us {
    padding-top: 116px;
  }
}
@media only screen and (max-width: 640px) {
  .header--contact-with-us {
    padding-top: 96px;
  }
}
.header__title {
  margin-bottom: 24px;
}
@media only screen and (max-width: 1024px) {
  .header__title {
    margin-bottom: 16px;
  }
}
.header__title:last-child {
  margin-bottom: 0;
}
.header--no-offset {
  margin-bottom: 0;
}
@media only screen and (max-width: 1024px) {
  .header--no-offset-tablet {
    margin-bottom: 0;
  }
}
.header__title {
  margin-bottom: 24px;
}
@media only screen and (max-width: 1024px) {
  .header__title {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .header__title {
    margin-bottom: 16px;
  }
}
.header__subtitle {
  font-size: 18px;
  line-height: 32px;
  font-weight: 500;
  margin-bottom: 12px;
}
@media only screen and (max-width: 1024px) {
  .header__subtitle {
    font-size: 16px;
    line-height: 24px;
    font-weight: 400;
    margin-bottom: 10px;
  }
}
@media only screen and (max-width: 640px) {
  .header__subtitle {
    margin-bottom: 8px;
  }
}
.header__subtitle:last-child {
  margin-bottom: 0;
}
.header__mail-link {
  font-size: 24px;
  line-height: 32px;
  color: #2864dc;
  font-weight: 600;
}
@media only screen and (max-width: 1024px) {
  .header__mail-link {
    font-size: 18px;
    line-height: 32px;
  }
}
.header__text-content--press {
  max-width: 922px;
}
@media only screen and (max-width: 1024px) {
  .header__text-content--press {
    border-radius: 16px;
    -webkit-border-radius: 16px;
    background-color: #0045b50f;
    max-width: 100%;
    padding: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .header__text-content--press {
    padding: 16px;
  }
}
.icon {
  width: 24px;
  height: 24px;
  flex-shrink: 0;
}
.icon--12 {
  width: 12px;
  height: 12px;
}
.icon--16 {
  width: 16px;
  height: 16px;
}
.icon--18 {
  width: 18px;
  height: 18px;
}
.icon--20 {
  width: 20px;
  height: 20px;
}
.icon--24 {
  width: 24px;
  height: 24px;
}
.icon--32 {
  width: 32px;
  height: 32px;
}
@media only screen and (max-width: 1024px) {
  .configurator .icon--32,
  .instrum__content-list--career .icon--32 {
    width: 24px;
    height: 24px;
  }
}
.icon--34 {
  width: 34px;
  height: 34px;
}
.icon--36 {
  width: 36px;
  height: 36px;
}
@media only screen and (max-width: 1024px) {
  .support .icon--36 {
    width: 24px;
    height: 24px;
  }
}
.icon--48 {
  width: 48px;
  height: 48px;
}
.icon--64 {
  width: 64px;
  height: 64px;
}
@media only screen and (max-width: 1024px) {
  .icon--64 {
    width: 48px;
    height: 48px;
  }
}
.icon--80 {
  width: 80px;
  height: 80px;
}
@media only screen and (max-width: 1024px) {
  .icon--80 {
    width: 64px;
    height: 64px;
  }
}
.icon--90deg {
  rotate: 90deg;
}
.icon--180deg {
  rotate: 180deg;
}
.icon--270deg {
  rotate: 270deg;
}
@media only screen and (max-width: 1024px) {
  .icon--otis {
    display: none;
  }
}
.instrum__content-list--career .icon {
  color: #b3b3b3;
}
.instrum__shell {
  display: flex;
  gap: 24px;
  margin-top: 52px;
}
@media only screen and (max-width: 1024px) {
  .instrum__shell {
    flex-direction: column;
    gap: 16px;
    margin-top: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .instrum__shell {
    margin-top: 12px;
  }
}
@media only screen and (max-width: 1024px) {
  .instrum__shell--with-bg {
    flex-direction: row;
  }
}
@media only screen and (max-width: 640px) {
  .instrum__shell--with-bg {
    flex-direction: column;
  }
}
.instrum--blue-card-text .instrum__shell {
  align-items: flex-start;
  margin-top: 8px;
}
.instrum__content {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  transition: scale 0.1s linear 0s;
  background-color: #f5f5f7;
  justify-content: center;
  width: calc((100% - 20px) / 2);
  position: relative;
  padding: 40px 8%;
}
@media only screen and (max-width: 1024px) {
  .instrum__content {
    width: 100%;
    padding: 20px;
  }
}
.instrum__content--col-1 {
  width: 100%;
}
@media only screen and (min-width: 1025px) {
  .instrum__content:hover {
    scale: 1.01;
  }
}
.instrum__content q {
  color: rgba(0, 0, 0, 0.7);
  display: block;
  padding-left: 24px;
  margin-bottom: 20px;
  quotes: '' '';
  width: 90%;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .instrum__content q {
    font-size: 12px;
    line-height: 16px;
    width: 70%;
    margin-bottom: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .instrum__content q {
    width: 100%;
  }
}
.instrum__content q:before {
  background-color: rgba(0, 0, 0, 0.15);
  position: absolute;
  top: 0;
  left: 0;
  width: 3px;
  height: 100%;
}
.instrum__content q:first-child {
  margin-top: 0;
}
.instrum__content q:last-child {
  margin-bottom: 0;
}
.instrum__content p,
.instrum__content span {
  display: block;
  margin-bottom: 20px;
}
@media only screen and (max-width: 1024px) {
  .instrum__content p,
  .instrum__content span {
    font-size: 13px;
    line-height: 16px;
    margin-bottom: 16px;
  }
}
.instrum__content p:last-child,
.instrum__content span:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 1024px) {
  .instrum__content h5 {
    font-size: 16px;
    line-height: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .instrum__content h5 {
    font-size: 17px;
    line-height: 20px;
  }
}
.instrum__content--with-bg {
  display: flex;
  flex-direction: column;
  gap: 8px;
  aspect-ratio: 1;
  justify-content: end;
  align-items: center;
  overflow: hidden;
  padding: 60px;
}
@media only screen and (max-width: 1024px) {
  .instrum__content--with-bg {
    padding: 24px;
  }
}
@media only screen and (max-width: 640px) {
  .instrum__content--with-bg {
    justify-content: start;
    align-items: start;
    aspect-ratio: 1.80526316;
    min-height: 190px;
  }
}
.instrum__content--with-bg.instrum__content--col-1 {
  aspect-ratio: 1.5;
}
.instrum__content--black {
  color: #000;
}
.instrum__content--white {
  color: #fff;
}
.instrum__content--with-top-title {
  margin-top: 40px;
  overflow: visible;
}
.instrum--blue-card-text .instrum__content {
  border-radius: 0px;
  -webkit-border-radius: 0px;
  background: none;
  padding: 0;
  justify-content: flex-start;
  max-width: 568px;
}
@media only screen and (max-width: 1024px) {
  .instrum--blue-card-text .instrum__content {
    max-width: none;
  }
}
.instrum--blue-card-text .instrum__content:hover {
  scale: 1;
}
.instrum__content-bg-wrap {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.instrum__content-bg {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale 0.1s linear 0s;
  z-index: -1;
}
@media only screen and (min-width: 1025px) {
  .instrum__content:hover .instrum__content-bg {
    scale: 1.006;
  }
}
.instrum__content--with-bg .instrum__content-bg {
  z-index: 0;
}
.instrum__content-main-title {
  z-index: 1;
}
.instrum__content--with-top-title .instrum__content-main-title {
  transform: translateX(-50%);
  position: absolute;
  left: 50%;
  bottom: calc(100% + 24px);
}
@media only screen and (max-width: 640px) {
  .instrum__content--with-top-title .instrum__content-main-title {
    bottom: calc(100% + 12px);
  }
}
.instrum__content-title {
  margin-bottom: 16px;
}
.instrum__content-subtitle {
  opacity: 0.7;
}
@media only screen and (max-width: 640px) {
  .instrum__content-subtitle {
    font-size: 16px;
    line-height: 20px;
  }
}
.instrum__shell--with-bg .instrum__content-subtitle {
  text-align: center;
  max-width: 150px;
}
@media only screen and (max-width: 640px) {
  .instrum__shell--with-bg .instrum__content-subtitle {
    text-align: left;
  }
}
.instrum__content-list,
.instrum ul {
  display: flex;
  flex-direction: column;
  gap: 0px;
}
.instrum__content-list--career,
.instrum ul--career {
  color: rgba(0, 0, 0, 0.7);
}
.instrum__content-list-item,
.instrum ul li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  border-bottom: 1px solid rgba(4, 4, 5, 0.15);
  padding-block: 20px;
}
@media only screen and (max-width: 1024px) {
  .instrum__content-list-item,
  .instrum ul li {
    font-size: 13px;
    line-height: 16px;
  }
}
.instrum__content-list-item:first-child,
.instrum ul li:first-child {
  padding-top: 0;
}
.instrum__content-list-item:last-child,
.instrum ul li:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.instrum__content-list--career .instrum__content-list-item,
.instrum__content-list--career .instrum ul li {
  gap: 32px;
  align-items: start;
}
.instrum__list-item-title {
  font-size: 18px;
  line-height: 24px;
  color: rgba(0, 0, 0, 0.7);
  display: block;
  margin-bottom: 8px;
}
.instrum__content-btn {
  margin-top: 40px;
  position: relative;
  z-index: 2;
}
@media only screen and (max-width: 1024px) {
  .instrum__content-btn {
    margin-top: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .instrum__content-btn {
    margin-top: 24px;
  }
}
q + .instrum__content-btn {
  margin-top: 16px;
}
@media only screen and (max-width: 1024px) {
  q + .instrum__content-btn {
    margin-top: 12px;
  }
}
.instrum__content-link {
  z-index: 1;
}
@media only screen and (max-width: 640px) {
  .instrum__content-link {
    margin-top: auto;
  }
}
.instrum__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 24px;
}
@media only screen and (max-width: 1024px) {
  .instrum__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 24px 16px;
  }
}
@media only screen and (max-width: 640px) {
  .instrum__grid {
    grid-template-columns: 1fr;
  }
}
.instrum__grid-title {
  display: block;
  margin-bottom: 8px;
}
.instrum__gray-block {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  background: #f5f5f7;
  padding: 32px;
  margin-bottom: 24px;
}
@media only screen and (max-width: 1024px) {
  .instrum__gray-block {
    padding: 24px;
    margin-bottom: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .instrum__gray-block {
    padding: 16px;
    margin-bottom: 12px;
  }
}
.instrum__gray-block ul {
  padding-left: 18px;
}
.instrum__gray-block ul li {
  padding: 0;
  border: none;
  list-style: disc;
  display: list-item;
  margin-bottom: 8px;
}
.instrum__gray-block ul li:last-child {
  margin-bottom: 0;
}
.instrum__gray-block p {
  font-size: 18px;
  line-height: 32px;
  font-weight: 500;
}
@media only screen and (max-width: 1024px) {
  .instrum__gray-block p {
    font-size: 16px;
    line-height: 24px;
  }
}
.middle {
  max-width: 686px;
  margin-inline: auto;
}
@media only screen and (max-width: 1024px) {
  .middle {
    max-width: 100%;
  }
}
.middle--no-margin {
  margin-inline: 0;
}
.middle--center {
  text-align: center;
}
.middle--center-not-mobile {
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .middle--center-not-mobile {
    text-align: left;
  }
}
@media only screen and (max-width: 1400px) {
  .middle--left-table {
    text-align: left;
  }
}
@media only screen and (max-width: 1024px) {
  .middle--left-mobile {
    text-align: left;
  }
}
.middle--stretch {
  max-width: 920px;
  width: 100%;
}
@media only screen and (max-width: 1024px) {
  .middle--stretch {
    max-width: 100%;
  }
}
.middle--purchasing {
  max-width: 778px;
}
.middle--long {
  max-width: calc(1440px * 0.8);
}
@media only screen and (max-width: 1024px) {
  .middle--long {
    max-width: 100% !important;
  }
}
.middle--video {
  max-width: 1156px;
  width: 100%;
}
@media only screen and (max-width: 1024px) {
  .middle--video {
    max-width: 100%;
  }
}
.middle--pb {
  padding-bottom: 56px;
}
.middle--form {
  margin-inline: 0;
}
.middle--contacts-org {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  border: 1px solid #dedede;
  padding: 40px;
}
@media only screen and (max-width: 1400px) {
  .middle--management {
    max-width: 100%;
  }
}
@media only screen and (max-width: 1024px) {
  .middle--mobile-wide {
    max-width: 74%;
  }
}
@media only screen and (max-width: 640px) {
  .middle--mobile-wide {
    max-width: 100%;
  }
}
@media only screen and (max-width: 1024px) {
  .section--install-info .middle {
    max-width: 75%;
  }
}
@media only screen and (max-width: 640px) {
  .section--install-info .middle {
    max-width: 100%;
  }
}
.sout .middle {
  text-align: center;
  margin-bottom: 40px;
}
@media only screen and (max-width: 1024px) {
  .sout .middle {
    max-width: 542px;
    margin-bottom: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .sout .middle {
    max-width: 100%;
    text-align: left;
    margin-bottom: 24px;
  }
}
@media only screen and (max-width: 640px) {
  .sout-detail .middle {
    text-align: left;
  }
}
.middle__title {
  margin-bottom: 24px;
}
@media only screen and (max-width: 1024px) {
  .middle__title {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .middle__title {
    margin-bottom: 12px;
  }
}
.middle__title--center {
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .sout .middle__title {
    text-align: left;
  }
}
@media only screen and (max-width: 640px) {
  .middle--form .middle__title {
    text-align: left;
  }
}
.middle__title .contacts-form {
  margin-bottom: 12px;
}
.middle__small-title {
  font-size: 18px;
  line-height: 24px;
  font-weight: 600;
  display: block;
  margin-bottom: 24px;
}
@media only screen and (max-width: 1400px) {
  .middle__small-title {
    font-size: 16px;
    line-height: 24px;
    font-weight: 500;
    border-radius: 20px;
    -webkit-border-radius: 20px;
    background-color: rgba(0, 69, 181, 0.06);
    padding: 20px;
    margin-bottom: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .middle__small-title {
    font-size: 16px;
    line-height: 24px;
    padding: 16px;
  }
}
.middle__text {
  font-size: 18px;
  line-height: 32px;
}
@media only screen and (max-width: 1024px) {
  .middle__text {
    font-size: 16px;
    line-height: 24px;
  }
}
.middle__text:last-child {
  margin-bottom: 0;
}
.middle__text--center {
  text-align: center;
}
.middle__text + .middle__text {
  margin-top: 16px;
}
@media only screen and (max-width: 1024px) {
  .middle__text + .middle__text {
    margin-top: 12px;
  }
}
.middle__text--mt {
  margin-top: 40px;
}
@media only screen and (max-width: 1024px) {
  .middle__text--mt {
    margin-top: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .middle__text--mt {
    margin-top: 24px;
  }
}
.middle__text--mb {
  margin-bottom: 40px;
}
@media only screen and (max-width: 1024px) {
  .middle__text--mb {
    margin-bottom: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .middle__text--mb {
    margin-bottom: 24px;
  }
}
.middle__text--small {
  font-size: 16px;
  line-height: 24px;
}
@media only screen and (max-width: 1024px) {
  .middle__text--small {
    font-size: 13px;
    line-height: 16px;
  }
}
.middle__text--small p {
  margin-bottom: 12px;
}
.middle__text--small p:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 1024px) {
  .section--other-prod .middle__text {
    text-align: left;
  }
}
@media only screen and (max-width: 640px) {
  .middle--form .middle__text {
    text-align: left;
  }
}
@media only screen and (max-width: 1024px) {
  .middle__text-br {
    display: none;
  }
}
.middle__level {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  align-items: center;
  border: 1px solid #dedede;
  max-width: 450px;
  padding: 32px;
  margin-block: 52px;
}
@media only screen and (max-width: 1024px) {
  .middle__level {
    max-width: unset;
    padding: 20px;
    margin-block: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .middle__level {
    padding: 16px;
    margin-block: 32px;
  }
}
.middle__level:last-child {
  margin-bottom: 0;
}
.middle__level-text {
  font-size: 18px;
  line-height: 32px;
  font-weight: 500;
}
@media only screen and (max-width: 1024px) {
  .middle__level-text {
    font-size: 16px;
    line-height: 24px;
  }
}
.middle__contacts {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-top: 24px;
}
.middle__contacts-title {
  font-size: 16px;
  line-height: 24px;
  text-align: center;
}
.middle__contacts-link {
  font-size: 18px;
  line-height: 24px;
  font-weight: 600;
  text-align: center;
}
@media only screen and (max-width: 1024px) {
  .middle__contacts-link {
    font-size: 16px;
    line-height: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .contacts-map__info .middle__contacts-title,
  .contacts-map__info .middle__contacts-link {
    text-align: left;
  }
}
.pagination {
  margin-bottom: 100px;
}
@media only screen and (max-width: 1024px) {
  .pagination {
    margin-bottom: 80px;
  }
}
@media only screen and (max-width: 640px) {
  .pagination {
    margin-bottom: 60px;
  }
}
.catalog-content__pagination.pagination {
  margin-bottom: 0;
}
.catalog__body.pagination-show .pagination,
.press-center + .pagination {
  display: block;
}
.catalog__body.no-result .pagination,
.hidden.pagination,
.catalog__body .pagination {
  display: none;
}
.pagination__container {
  width: min-content;
  margin: 56px auto 0;
}
@media only screen and (max-width: 1024px) {
  .pagination__container {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .pagination__container {
    margin-top: 32px;
  }
}
.press-center + .pagination .pagination__container {
  width: max-content;
  margin-inline: auto;
}
.pagination__page-btn {
  padding: 4px;
  font-weight: 700;
}
.pagination__page-btn--current {
  color: rgba(0, 0, 0, 0.3);
}
.pagination__page-btn--disable {
  cursor: not-allowed;
  color: rgba(0, 0, 0, 0.3);
}
.pagination__btn-more {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .pagination__btn-more {
    display: flex;
  }
}
.paginationjs {
  font-family: 'SF', Marmelad, 'Lucida Grande', Arial, 'Hiragino Sans GB', Georgia, sans-serif;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.paginationjs:after {
  display: table;
  content: ' ';
  clear: both;
}
.paginationjs ul {
  display: flex;
  align-items: center;
  gap: 6px;
}
.paginationjs-go-button {
  display: none !important;
  grid-area: btn;
  margin: 0 !important;
  width: max-content !important;
  position: relative;
  padding: 3px;
}
.paginationjs-go-button::after {
  content: 'Перейти';
  display: block !important;
}
.show.paginationjs-go-button {
  animation: smooth-show 0.2s linear forwards !important;
  display: block !important;
}
.paginationjs-go-button input {
  background: transparent !important;
  color: transparent !important;
  position: absolute;
  width: 100% !important;
  inset: 0;
  border: unset !important;
}
.paginationjs-go-input {
  display: none !important;
  grid-area: input;
  align-self: center !important;
  margin-inline: 0 !important;
  width: max-content !important;
}
.show.paginationjs-go-input {
  animation: smooth-show 0.2s linear forwards !important;
  display: block !important;
}
.paginationjs-pages {
  grid-area: pages;
}
.paginationjs-prev {
  border: none !important;
}
.paginationjs-prev a {
  border-color: transparent !important;
  color: transparent !important;
  background: url('/assets-nd/img/svg/arrow-back.svg') center center / 16px 16px no-repeat !important;
}
.paginationjs-ellipsis {
  border: none !important;
}
.paginationjs-ellipsis.disabled > a {
  cursor: pointer !important;
}
.paginationjs-next {
  border: none !important;
}
.paginationjs-next a {
  transform: rotate(180deg);
  border-color: transparent !important;
  color: transparent !important;
  background: url('/assets-nd/img/svg/arrow-back.svg') center center / 16px 16px no-repeat !important;
}
.paginationjs-next .paginationjs-prev a:hover,
.paginationjs-page a:hover {
  background-color: inherit !important;
  opacity: 0.6 !important;
}
.paginationjs-next .paginationjs-prev a:active,
.paginationjs-page a:active {
  color: rgba(0, 0, 0, 0.7) !important;
}
.paginationjs-next .paginationjs-prev.disable a:hover,
.paginationjs-page.disable a:hover,
.paginationjs-next .paginationjs-prev.active a:hover,
.paginationjs-page.active a:hover {
  background-color: inherit !important;
  opacity: 0.6 !important;
}
.paginationjs-page {
  border: none !important;
}
.paginationjs-page a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0px !important;
  font-size: 16px !important;
  line-height: 20px !important;
  padding: 4px !important;
  font-weight: 700 !important;
  width: max-content !important;
  min-width: min-content !important;
  color: rgba(0, 0, 0, 0.3) !important;
}
.active.paginationjs-page a {
  color: #000 !important;
  background-color: transparent !important;
}
.press {
  position: relative;
}
.press__press-swiper-container {
  margin-bottom: 20px;
}
@media only screen and (max-width: 1024px) {
  .press__press-swiper-container {
    margin-bottom: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .press__press-swiper-container {
    margin-bottom: 20px;
    width: calc(100% + 2 * 16px);
    margin-left: -16px;
  }
}
@media only screen and (max-width: 640px) {
  .press__press-swiper {
    padding-bottom: 56px;
    padding-inline: 16px;
  }
}
.section--press .press__press-swiper {
  border-top: 1px solid #dedede;
  border-bottom: 1px solid #dedede;
  padding-block: 24px;
}
@media only screen and (max-width: 640px) {
  .press .swiper-pagination-bullet {
    border-radius: 4px !important;
    -webkit-border-radius: 4px !important;
    display: block !important;
    width: 6px !important;
    height: 6px !important;
  }
}
.press .swiper-pagination-bullet-active {
  background-color: #000;
}
.press .swiper-pagination {
  display: none;
}
@media only screen and (max-width: 640px) {
  .press .swiper-pagination {
    display: flex;
    justify-content: center;
    gap: 4px;
    height: 18px;
    padding: 0;
  }
}
.wrap-slider-overflow {
  overflow: hidden;
  margin-inline: -24px;
  padding-inline: 24px;
  padding-block: 2px;
}
@media only screen and (max-width: 1024px) {
  .wrap-slider-overflow {
    margin-inline: -20px;
    padding-inline: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .wrap-slider-overflow {
    margin-inline: -16px;
    padding-inline: 16px;
  }
}
@media only screen and (max-width: 1024px) {
  .read-more .swiper {
    padding: 0;
    overflow: unset;
  }
}
.wrap-slider-overflow .swiper {
  position: relative;
  overflow: visible;
}
.wrap-slider-overflow .swiper::after,
.wrap-slider-overflow .swiper::before {
  content: '';
  display: block;
  position: absolute;
  top: -1px;
  bottom: -1px;
  width: 22px;
  background-color: #fff;
  z-index: 2;
}
.wrap-slider-overflow .swiper::before {
  left: -24px;
}
.wrap-slider-overflow .swiper::after {
  right: -24px;
}
@media only screen and (max-width: 1024px) {
  .wrap-slider-overflow .swiper::after,
  .wrap-slider-overflow .swiper::before {
    content: none;
  }
}
@media only screen and (max-width: 1024px) {
  .read-more .swiper-wrapper {
    display: grid;
    transform: none !important;
    grid-template-columns: repeat(2, 1fr);
    height: auto !important;
    column-gap: 24px;
    row-gap: 64px;
  }
}
@media only screen and (max-width: 640px) {
  .read-more .swiper-wrapper {
    grid-template-columns: 1fr;
    row-gap: 56px;
  }
}
@media only screen and (max-width: 1024px) {
  .read-more .swiper-slide {
    margin: 0 !important;
  }
}
.read-more .swiper-slide:nth-child(2n + 1) {
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .read-more .swiper-slide:nth-child(2n + 1)::before {
    position: absolute;
    left: -20px;
    top: -40px;
    content: '';
    width: 100vw;
    height: 1px;
    background-color: #dedede;
  }
}
@media only screen and (max-width: 640px) {
  .read-more .swiper-slide:nth-child(2n + 1)::before {
    background-color: unset;
  }
}
.read-more .swiper-slide:nth-child(n + 1) {
  position: relative;
}
@media only screen and (max-width: 640px) {
  .read-more .swiper-slide:nth-child(n + 1)::before {
    position: absolute;
    left: -16px;
    top: -32px;
    content: '';
    width: 100svw;
    height: 1px;
    background-color: #dedede;
  }
}
@media only screen and (max-width: 1024px) {
  .read-more .swiper-slide:first-child::before {
    background-color: transparent;
  }
}
.swiper-pagination {
  position: static;
  margin-top: 16px;
}
.swiper-pagination-bullet-active {
  background-color: #000;
}
[data-dock] {
  display: none;
}
[data-dock].show {
  display: block;
}
.tabs__shell {
  overflow-y: hidden;
  width: calc(100% + 2 * 24px);
  margin-left: -24px;
}
@media only screen and (max-width: 1024px) {
  .tabs__shell {
    width: calc(100% + 2 * 20px);
    margin-left: -20px;
  }
}
@media only screen and (max-width: 640px) {
  .tabs__shell {
    width: calc(100% + 2 * 16px);
    margin-left: -16px;
  }
}
.tabs__btn-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-bottom: 20px;
}
.sout-detail .tabs__btn-container {
  margin-bottom: 60px;
}
@media only screen and (max-width: 1024px) {
  .sout-detail .tabs__btn-container {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .sout-detail .tabs__btn-container {
    justify-content: start;
    margin-bottom: 32px;
  }
}
.tabs__shell .tabs__btn-container {
  overflow-x: auto;
  padding: 4px 24px 60px;
  margin-bottom: -56px;
  justify-content: start;
}
@media only screen and (max-width: 1024px) {
  .tabs__shell .tabs__btn-container {
    padding-inline: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .tabs__shell .tabs__btn-container {
    padding-inline: 20px;
  }
}
.section--install-info .tabs__btn-container {
  justify-content: center;
}
@media only screen and (max-width: 640px) {
  .section--install-info .tabs__btn-container {
    justify-content: start;
  }
}
.tabs__switch-btn {
  background-color: #f5f5f7;
  border: 1px solid transparent;
}
.active.tabs__switch-btn {
  border: 1px solid rgba(0, 0, 0, 0.15);
  background-color: #fff;
}
@media only screen and (min-width: 1025px) {
  .active.tabs__switch-btn:hover {
    box-shadow: 0 0 0 1px #000;
  }
}
.topline {
  transition: background-color 0.1s linear 0s;
  background-color: transparent;
  border-bottom: 1px solid #dedede;
  position: fixed;
  width: 100%;
  height: 92px;
  top: 0;
  z-index: 1030;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media print {
  .topline {
    display: none;
  }
}
@media only screen and (max-width: 1320px) {
  .topline {
    height: 56px;
  }
}
.topline--white {
  background-color: #fff;
}
.body--main-page .topline {
  border-bottom: 1px solid transparent;
}
.topline.scroll {
  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.08);
  border-bottom: 1px solid transparent;
}
.topline.border-bottom {
  box-shadow: unset;
  border-bottom: 1px solid #dedede;
}
.topline.mobile {
  box-shadow: none;
}
.topline.search,
.topline.mobile {
  background-color: #fff;
}
.topline__container {
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 1320px) {
  .topline__container {
    justify-content: space-between;
  }
}
.topline__logo {
  display: block;
  width: 171px;
  height: 24px;
  color: #ed1c24;
}
@media only screen and (max-width: 1280px) {
  .topline__logo {
    display: block;
    width: 144px;
    height: 20px;
  }
}
.topline__directions-container {
  display: flex;
  align-items: center;
  gap: 16px;
}
@media only screen and (max-width: 1280px) {
  .topline__directions-container {
    flex-direction: row-reverse;
  }
}
.topline__directions-btn {
  flex: none;
  width: max-content;
}
@media only screen and (max-width: 1280px) {
  .topline__directions-btn {
    padding: 0;
    border: none;
  }
  .topline__directions-btn:hover {
    border: none;
  }
  .topline__directions-btn:active {
    box-shadow: unset;
  }
  .topline__directions-btn span {
    display: none;
  }
  .topline__directions-btn svg {
    display: block;
    width: 20px;
    height: 20px;
  }
}
.topline__nav {
  flex: 1;
  display: flex;
  justify-content: end;
  gap: 16px;
  position: relative;
}
@media only screen and (max-width: 1320px) {
  .topline__nav {
    display: none;
  }
}
.local .topline__nav {
  animation: smooth-show 0.2s linear forwards;
  display: block;
}
@media only screen and (max-width: 1320px) {
  .local .topline__nav {
    display: flex;
    flex-direction: column;
    gap: 20px;
    justify-content: start;
    background-color: #fff;
    position: fixed;
    top: 56px;
    left: 0;
    width: 100dvw;
    overflow: auto;
    padding: 0 20px 64px;
    height: calc(100dvh - 56px);
    box-shadow: unset;
  }
}
@media only screen and (max-width: 640px) {
  .local .topline__nav {
    gap: 8px;
    padding: 0 16px 64px;
  }
}
@media only screen and (max-width: 1320px) {
  .overflow.topline__nav {
    overflow: hidden;
  }
}
.topline__nav-search-container {
  display: none;
}
@media only screen and (max-width: 1320px) {
  .topline__nav-search-container {
    background-color: #fff;
    position: sticky;
    z-index: 1;
    width: 100%;
    top: 0;
    padding-block: 20px;
    display: block;
  }
}
.topline__nav-item-container {
  position: relative;
}
@media only screen and (max-width: 1320px) {
  .topline__nav-item-container {
    position: initial;
  }
}
@media only screen and (min-width: 1321px) {
  .topline__nav-item-container::after {
    display: block;
    width: 5px;
    height: 5px;
    transform: translateY(-50%) rotate(45deg);
    position: absolute;
    top: 50%;
    transition: transform 0.1s linear 0s;
    right: 12px;
    left: unset;
    content: '';
    border-bottom: 2px solid #000;
    border-right: 2px solid #000;
  }
  .topline__nav-item-container:hover::after {
    transform: rotate(-135deg);
    opacity: 0.6;
  }
  .topline__nav-item-container::after {
    top: 46%;
  }
}
.topline__nav-item {
  font-size: 16px;
  line-height: 20px;
  font-weight: 500;
  padding: 10px 8px;
}
@media only screen and (max-width: 1320px) {
  .topline__nav-item {
    font-size: 14px;
    line-height: 20px;
    padding: 8px 0;
    width: max-content;
  }
}
.topline__nav-item--with-submenu {
  padding-right: 28px;
  position: relative;
}
@media only screen and (max-width: 1320px) {
  .topline__nav-item--with-submenu {
    display: none;
  }
}
@media only screen and (min-width: 1321px) {
  .topline__nav-item--with-submenu.current {
    border-radius: 8px;
    -webkit-border-radius: 8px;
    background-color: rgba(0, 0, 0, 0.03);
  }
}
.topline__sub-nav-1 {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  transition: height 0.1s linear 0s;
  background-color: #fff;
  position: absolute;
  top: calc(100% + 30px);
  left: 0;
  min-width: 344px;
  padding: 32px;
  display: none;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.1);
}
@media only screen and (max-width: 1320px) {
  .topline__sub-nav-1 {
    display: flex;
    position: initial;
    height: max-content;
    padding: 0;
    background-color: transparent;
    box-shadow: unset;
    width: 100%;
    min-width: unset;
  }
}
@media only screen and (min-width: 1321px) {
  .topline__sub-nav-1::before {
    position: absolute;
    z-index: -1;
    left: 0;
    bottom: 0;
    background-color: transparent;
    content: '';
    width: 100%;
    height: calc(100% + 30px);
  }
}
@media only screen and (min-width: 1321px) {
  .topline__nav-item-container:hover .topline__sub-nav-1 {
    animation: smooth-show 0.2s linear forwards;
    display: block;
    display: flex;
  }
}
.topline__nav-btn-shell {
  margin-left: 4px;
}
@media only screen and (max-width: 1320px) {
  .topline__nav-btn-shell {
    background-color: #fff;
    position: fixed;
    z-index: 1030;
    bottom: 0;
    display: block;
    width: 100dvw;
    left: 0;
    padding: 12px 20px;
  }
}
@media only screen and (max-width: 640px) {
  .topline__nav-btn-shell {
    padding-inline: 16px;
  }
}
.topline__nav-btn {
  max-width: 100%;
}
.topline__sub-nav-item-shell {
  display: flex;
  flex-direction: column;
  gap: 0px;
  position: relative;
}
.topline__sub-nav-1-tabs {
  display: flex;
  flex-direction: column;
  gap: 0px;
}
@media only screen and (max-width: 1320px) {
  .topline__sub-nav-1-tabs {
    width: 100%;
  }
}
.topline__sub-nav-1-item {
  color: rgba(0, 0, 0, 0.7);
  font-weight: 500;
  display: block;
  width: 100%;
  min-width: 280px;
  position: relative;
  padding: 8px 12px;
}
@media only screen and (max-width: 1320px) {
  .topline__sub-nav-1-item {
    font-size: 13px;
    line-height: 16px;
    color: #000;
    font-weight: 400;
    padding: 8px 0;
    width: max-content;
    min-width: max-content;
  }
}
@media only screen and (min-width: 1321px) {
  .topline__sub-nav-1-item:hover {
    opacity: 0.6;
  }
}
@media only screen and (min-width: 1321px) {
  .topline__sub-nav-1-item:active {
    color: rgba(0, 0, 0, 0.3);
  }
}
.topline__sub-nav-1-item:focus-visible {
  border-radius: 4px;
  -webkit-border-radius: 4px;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3);
}
.topline__sub-nav-1-item--title {
  font-size: 18px;
  line-height: 24px;
  color: #000;
  font-weight: 600;
  margin-bottom: 16px;
}
@media only screen and (max-width: 1320px) {
  .topline__sub-nav-1-item--title {
    font-size: 14px;
    line-height: 20px;
    margin-bottom: 8px;
  }
}
@media only screen and (max-width: 640px) {
  .topline__sub-nav-1-item--title {
    margin-bottom: 4px;
  }
}
.topline__sub-nav-1-item--with-submenu {
  transition: background-color 0.1s linear 0s;
}
@media only screen and (min-width: 1321px) {
  .topline__sub-nav-1-item--with-submenu {
    border-radius: 24px;
    -webkit-border-radius: 24px;
  }
}
@media only screen and (min-width: 1321px) {
  .topline__sub-nav-1-item--with-submenu:hover {
    background-color: #ececee;
  }
}
@media only screen and (max-width: 1320px) {
  .topline__sub-nav-1-item--with-submenu {
    min-width: max-content;
  }
}
.topline__sub-nav-item-open-btn {
  width: 24px;
  height: 24px;
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  pointer-events: none;
  right: 10px;
}
.topline__sub-nav-item-open-btn::after {
  transform: translateY(-50%) rotate(-45deg);
  position: absolute;
  top: 50%;
  display: block;
  width: 6px;
  height: 6px;
  right: 10px;
  left: unset;
  content: '';
  border-bottom: 2px solid #000;
  border-right: 2px solid #000;
}
@media only screen and (max-width: 1320px) {
  .topline__sub-nav-item-open-btn {
    pointer-events: all;
  }
}
.topline__sub-nav-2 {
  display: none;
}
.show.topline__sub-nav-2 {
  animation: smooth-show 0.2s linear forwards;
  display: block;
  display: flex;
  flex-direction: column;
  gap: 16px;
  border-left: 1px solid #dedede;
  padding-inline: 24px 5px;
  margin-left: 20px;
  height: 100%;
}
@media only screen and (max-width: 1320px) {
  .show.topline__sub-nav-2 {
    background-color: #fff;
    position: absolute;
    top: 0;
    left: -20px;
    overflow: auto;
    width: 100%;
    height: 100%;
    padding: 16px 20px 24px;
    z-index: 2;
  }
}
@media only screen and (max-width: 640px) {
  .show.topline__sub-nav-2 {
    padding-inline: 16px;
  }
}
.topline__sub-nav-2-item {
  font-size: 14px;
  line-height: 20px;
  color: rgba(0, 0, 0, 0.7);
  white-space: nowrap;
  padding: 6px 12px;
}
@media only screen and (max-width: 1320px) {
  .topline__sub-nav-2-item {
    font-size: 13px;
    line-height: 16px;
    color: #000;
    padding: 8px 0;
  }
}
.topline__sub-nav-2-item--title {
  color: #000;
  font-weight: 500;
  padding: 8px 12px;
}
@media only screen and (max-width: 1320px) {
  .topline__sub-nav-2-item--title {
    font-size: 14px;
    line-height: 20px;
    padding-inline: 0;
    width: max-content;
  }
}
@media only screen and (max-width: 1320px) {
  .topline__sub-nav-2-item--title + .topline__sub-nav-2-item {
    margin-top: 8px;
  }
}
.topline__sub-nav-back-btn {
  display: none;
}
@media only screen and (max-width: 1320px) {
  .topline__sub-nav-back-btn {
    font-size: 13px;
    line-height: 16px;
    display: flex;
    color: rgba(0, 0, 0, 0.7);
    align-items: center;
    gap: 8px;
    position: sticky;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 2;
  }
  .topline__sub-nav-back-btn::after {
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 0;
    background-color: #fff;
    content: '';
    display: block;
    width: 100%;
    max-width: 100%;
    height: 48px;
    z-index: -1;
  }
}
.directions .topline__contact-btn {
  display: none;
}
.topline__search-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  margin-left: 24px;
}
@media only screen and (max-width: 1320px) {
  .topline__search-btn {
    display: none;
  }
}
.topline__contact-btn-box {
  margin-left: 20px;
}
@media only screen and (max-width: 1320px) {
  .topline__contact-btn-box {
    margin-left: 1%;
  }
}
@media only screen and (max-width: 1320px) {
  .topline__contact-btn-box {
    display: none;
  }
}
@media only screen and (max-width: 1320px) {
  .local .topline__contact-btn-box {
    transform: translateX(-50%);
    position: absolute;
    left: 50%;
    align-items: center;
    justify-content: center;
    gap: 0px;
    background-color: #fff;
    position: fixed;
    display: flex;
    width: 100dvw;
    bottom: 0;
    z-index: 1;
    padding: 32px 20px;
  }
}
@media only screen and (max-width: 640px) {
  .local .topline__contact-btn-box {
    padding-inline: 16px;
  }
}
@media only screen and (max-width: 1320px) {
  .topline__contact-btn {
    width: 100%;
    max-width: unset;
  }
}
.topline__burger {
  display: none;
}
@media only screen and (max-width: 1320px) {
  .topline__burger {
    width: 32px;
    height: 32px;
    flex: none;
    display: block;
    padding-block: 2px;
    transition: transform 0.2s ease-in-out;
  }
  .local .topline__burger {
    transition: transform 0.1s ease-in-out;
    transform: rotate(45deg);
  }
}
@media only screen and (max-width: 1320px) and only screen and (min-width: 1321px) {
  .topline__burger:hover .topline-header__burger-line,
  .topline__burger:hover .topline-header__burger-line::before,
  .topline__burger:hover .topline-header__burger-line::after {
    transition: background-color 0.1s linear 0s;
    background-color: rgba(0, 0, 0, 0.7);
  }
}
@media only screen and (max-width: 640px) {
  .topline__burger {
    margin-left: -6px;
  }
}
.topline__burger-line {
  pointer-events: none;
}
@media only screen and (max-width: 1320px) {
  .topline__burger-line {
    width: 24px;
    height: 2px;
    border-radius: 1px;
    -webkit-border-radius: 1px;
    background-color: rgba(0, 0, 0, 0.7);
    display: block;
    margin: 6px auto;
    transition: transform 0.2s ease-in-out;
    position: relative;
  }
  .local .topline__burger-line {
    transition: transform 0.1s ease-in-out;
    transform: translateY(0px);
    display: block;
    width: 17px;
    height: 2px;
  }
  .topline__burger-line::before {
    width: 24px;
    height: 2px;
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    border-radius: 1px;
    -webkit-border-radius: 1px;
    content: '';
    background-color: rgba(0, 0, 0, 0.7);
    display: block;
    margin: 6px auto;
    transition: transform 0.1s ease-in-out;
  }
  .local .topline__burger-line::before {
    width: 0;
  }
  .topline__burger-line::after {
    width: 24px;
    height: 2px;
    border-radius: 1px;
    -webkit-border-radius: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
    content: '';
    background-color: rgba(0, 0, 0, 0.7);
    display: block;
    margin: 6px auto;
    transition: transform 0.2s ease-in-out;
  }
  .local .topline__burger-line::after {
    transform: translateY(6px) rotate(90deg);
    display: block;
    width: 17px;
    height: 2px;
  }
}
.wrap {
  width: 100%;
  max-width: 1440px;
  padding-inline: 24px;
  margin-inline: auto;
}
@media only screen and (max-width: 1024px) {
  .wrap {
    padding-inline: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .wrap {
    padding-inline: 16px;
  }
}
.wrap--menu {
  max-width: 1728px;
}
.wrap--no-overflow {
  overflow: visible;
}
.wrap--align-center {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.wrap--top-auto {
  margin-top: auto;
}
.wrap--с-accordion {
  padding-left: calc(350px + 24px);
}
@media only screen and (max-width: 1024px) {
  .wrap--с-accordion {
    padding-left: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .wrap--с-accordion {
    padding-left: 16px;
  }
}
.topline .wrap {
  overflow: unset;
}
.wrap--footer {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media only screen and (max-width: 640px) {
  .wrap--footer {
    gap: 32px;
  }
}
.wrap--middle {
  max-width: calc(686px + 2 * 24px);
}
@media only screen and (max-width: 1024px) {
  .wrap--middle {
    max-width: 100%;
  }
}
.wrap--middle-wide {
  max-width: calc(686px + 2 * 24px);
}
@media only screen and (max-width: 1024px) {
  .wrap--middle-wide {
    max-width: 76%;
  }
}
@media only screen and (max-width: 640px) {
  .wrap--middle-wide {
    max-width: 100%;
  }
}
.wrap--middle-long {
  max-width: calc(1440px * 0.8);
  width: 80%;
}
@media only screen and (max-width: 1024px) {
  .wrap--middle-long {
    width: 100%;
    max-width: 100%;
  }
}
.wrap--center {
  display: flex;
  flex-direction: column;
  gap: 0px;
  text-align: center;
  align-items: center;
}
.suggestions-wrapper {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  text-align: left !important;
}
.suggestions-suggestions {
  border-radius: 10px !important;
  -webkit-border-radius: 10px !important;
  color: #000;
  background: #fff;
  box-shadow: 0 2px 6px 0 rgba(0, 0, 0, 0.1);
  border: none;
  cursor: pointer;
  left: 0;
  top: 0;
  min-width: 100%;
  position: absolute;
  z-index: 9999;
  padding-block: 4px;
  text-align: left;
}
.suggestions-suggestions strong {
  font-weight: 500;
}
.suggestions-suggestion {
  padding: 8px 16px;
  overflow: hidden;
}
@media only screen and (min-width: 1025px) {
  .suggestions-suggestion:hover {
    background-color: rgba(0, 0, 0, 0.05);
    color: #000;
  }
}
.suggestions-selected {
  background: transparent;
}
@media only screen and (min-width: 1025px) {
  .suggestions-selected:hover {
    cursor: pointer;
    background: transparent;
  }
}
.suggestions-hint {
  padding-inline: 16px;
}
.period,
.projects {
  position: relative;
  min-width: 287px;
  color: #828282;
}
@media only screen and (max-width: 1024px) {
  .period,
  .projects {
    flex: 1 auto;
    max-width: calc((100% - 24px) / 2);
  }
}
@media only screen and (max-width: 640px) {
  .period,
  .projects {
    flex: 1 100%;
    min-width: 100%;
  }
}
.period__current-btn,
.projects__current-btn {
  font-size: 14px;
  line-height: 20px;
  border: 1px solid #d9d9d9;
  display: flex;
  padding: 12px 14px;
  position: relative;
  width: 100%;
}
@media only screen and (min-width: 991px) {
  .period__current-btn,
  .projects__current-btn {
    transition: opacity 0.1s linear 0s;
  }
  .period__current-btn:hover,
  .projects__current-btn:hover {
    opacity: 0.6;
  }
}
.period__current-btn::after,
.projects__current-btn::after {
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  right: 14px;
  content: '';
  width: 8px;
  height: 6px;
  background: url("/assets-nd/img/svg/topline-arrow.svg");
}
.period__current-btn:focus,
.projects__current-btn:focus,
.period__current-btn:hover,
.projects__current-btn:hover {
  border: 1px solid #4666af;
  opacity: 1;
}
@media tablet {
  .period__current-btn,
  .projects__current-btn {
    width: 100%;
  }
}
.period__current,
.projects__current {
  pointer-events: none;
  padding-right: 27px;
}
.period__current::after,
.projects__current::after {
  transform: translateY(-50%);
  top: 50%;
  position: absolute;
  border: solid transparent;
  border-width: 6px 5px 0;
  border-top-color: #fff;
  transition: transform 0.1s linear 0s;
  transform-origin: 50% 25% 0;
  content: '';
  right: 5px;
}
@media only screen and (max-width: 640px) {
  .period__current::after,
  .projects__current::after {
    right: 15px;
  }
}
.active .period__current::after,
.active .projects__current::after {
  transform: scale(1, -1);
}
.period__dropdown,
.projects__dropdown {
  width: 100%;
  position: absolute;
  border-radius: 4px;
  -webkit-border-radius: 4px;
  box-shadow: 0 8px 16px -4px rgba(11, 31, 53, 0.08);
  overflow: hidden;
  margin-top: 10px;
  display: none;
  background: #fff;
  z-index: 1030;
}
.period.active .period__dropdown,
.period.active .projects__dropdown {
  animation: smooth-show 0.2s linear forwards;
  display: block;
}
.projects.active .period__dropdown,
.projects.active .projects__dropdown {
  animation: smooth-show 0.2s linear forwards;
  display: block;
}
.period__option,
.projects__option {
  transition: background-color 0.1s linear 0s;
  display: block;
  position: relative;
  width: 100%;
  height: 48px;
  padding-inline: 16px;
}
@media only screen and (max-width: 640px) {
  .period__option,
  .projects__option {
    height: 56px;
    border-width: 1px 0;
  }
  .period__option + .period__option,
  .period__option + .projects__option,
  .projects__option + .period__option,
  .projects__option + .projects__option {
    margin-top: -1px;
  }
}
.period__option.current::after,
.projects__option.current::after {
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  content: '';
  right: 24px;
}
@media only screen and (max-width: 640px) {
  .period__option--calendar::before,
  .projects__option--calendar::before {
    transform: translateY(-50%);
    top: 50%;
    content: '';
    position: absolute;
    border: solid transparent;
    border-width: 5px 0 5px 6px;
    border-left-color: #000;
    right: 12px;
  }
}
.form__filter {
  display: flex;
  position: relative;
  z-index: 999;
  gap: 24px;
  margin-bottom: 46px;
}
@media only screen and (max-width: 1024px) {
  .form__filter {
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 640px) {
  .form__filter {
    flex-direction: column;
  }
}
.contact-form {
  gap: 0;
}
.contact-form__title {
  margin-bottom: 24px;
}
@media only screen and (max-width: 1024px) {
  .contact-form__title {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .contact-form__title {
    margin-bottom: 16px;
  }
}
.contact-form__title--left {
  text-align: left;
}
.contact-form__input-label {
  font-size: 14px;
  line-height: 20px;
  display: block;
  padding: 4px;
  margin-bottom: 4px;
  text-align: left;
  position: relative;
}
.contact-form__input-label--inlene {
  width: max-content;
}
.contact-form__input-label--small {
  font-size: 12px;
  line-height: 16px;
}
.contact-form__input-label-shell {
  max-width: max-content;
}
.contact-form__input-label-shell--required {
  position: relative;
}
.contact-form__input-label-shell--required::after {
  content: '*';
  color: #ee0019;
  position: absolute;
  top: 0;
  right: -4px;
}
.contact-form__input-box {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
}
.contact-form__input-box--textarea {
  width: 100%;
  height: auto;
  margin-bottom: 56px;
}
@media only screen and (max-width: 1024px) {
  .contact-form__input-box--textarea {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .contact-form__input-box--textarea {
    margin-bottom: 32px;
  }
}
.error-phone.contact-form__input-box::after {
  font-size: 10px;
  line-height: 14px;
  font-weight: 400;
  color: #ee0019;
  position: absolute;
  left: 24px;
  bottom: -18px;
  content: 'Введите номер в формате +7(123)456-78-90';
  white-space: nowrap;
}
.error-mail.contact-form__input-box::after {
  font-size: 10px;
  line-height: 14px;
  font-weight: 400;
  color: #ee0019;
  position: absolute;
  left: 24px;
  bottom: -18px;
  content: 'Введите адрес в формате user@domain.ru';
  white-space: nowrap;
}
.contact-form__input {
  height: 44px;
  padding-inline: 24px;
}
.contact-form__input--textarea {
  width: 100%;
  height: 117px;
  padding: 14px 24px;
  resize: none;
}
.purchasing__message-shell .contact-form__input,
.purchasing__offer-shell .contact-form__input {
  background-color: #f5f5f7;
}
.contact-form__rows {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}
@media only screen and (max-width: 1024px) {
  .contact-form__rows {
    gap: 16px;
  }
}
.hide.contact-form__rows--firm-name {
  display: none;
}
.contact-form__rows .contact-form__rows {
  width: 100%;
}
.contact-form__input-elem {
  position: relative;
  width: 100%;
}
.contact-form__input-elem--first-row {
  width: calc((100% - 2 * 20px) / 3);
}
@media only screen and (max-width: 1024px) {
  .contact-form__input-elem--first-row {
    width: calc((100% - 16px) / 2);
  }
}
@media only screen and (max-width: 640px) {
  .contact-form__input-elem--first-row {
    width: 100%;
  }
}
.contact-form__input-elem--second-row {
  width: 48.5%;
}
@media only screen and (max-width: 1024px) {
  .contact-form__input-elem--second-row {
    width: calc((100% - 16px) / 2);
  }
}
@media only screen and (max-width: 640px) {
  .contact-form__input-elem--second-row {
    width: 100%;
  }
}
.buy__form-row .contact-form__input-elem {
  width: auto;
  flex: 1;
}
@media only screen and (max-width: 1024px) {
  .buy__form-row .contact-form__input-elem {
    width: 100%;
  }
}
.purchasing .contact-form__input-elem {
  margin-bottom: 16px;
}
.contact-form__input-placeholder {
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  color: rgba(0, 0, 0, 0.3);
  font-weight: 500;
  left: 24px;
  pointer-events: none;
}
.contact-form__input-box--textarea .contact-form__input-placeholder {
  height: 100%;
}
.contact-form__input-box--textarea .contact-form__input-placeholder:after {
  bottom: -3px !important;
}
.contact-form__input-placeholder.error {
  color: #ee0019;
}
.contact-form__input-placeholder.error::after {
  font-size: 10px;
  line-height: 14px;
  font-weight: 400;
  color: #ee0019;
  white-space: nowrap;
  position: absolute;
  bottom: -28px;
  left: 0;
  content: 'Это обязательное поле для заполнения';
}
.contact-form__input-placeholder--textarea {
  top: 14px;
  padding-right: 24px;
  transform: unset;
}
.contact-form__input-placeholder--file {
  position: relative;
  height: 15px;
}
.contact-form__input-placeholder--file::after {
  position: unset !important;
}
.contact-form__grid {
  display: -ms-grid;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
  margin-bottom: 24px;
}
@media only screen and (max-width: 1024px) {
  .contact-form__grid {
    gap: 24px;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 640px) {
  .contact-form__grid {
    grid-template-columns: 1fr;
  }
}
.contact-form__grid--col-2 {
  grid-template-columns: repeat(2, 1fr);
}
@media only screen and (max-width: 640px) {
  .contact-form__grid--col-2 {
    grid-template-columns: 1fr;
  }
}
.contact-form__bottom {
  display: flex;
  justify-content: space-between;
  margin-top: 56px;
}
@media only screen and (max-width: 1024px) {
  .contact-form__bottom {
    flex-direction: column;
    gap: 40px;
    margin-top: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .contact-form__bottom {
    margin-top: 16px;
  }
}
.contact-form__bottom .contact-form__agree-text {
  margin-top: 0;
}
.features {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media only screen and (max-width: 1024px) {
  .features {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .features {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}
.features--4 {
  grid-template-columns: repeat(4, 1fr);
}
@media only screen and (max-width: 1280px) {
  .features--4 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 640px) {
  .features--4 {
    grid-template-columns: 1fr;
  }
}
.features__item {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  transition: scale 0.1s linear 0s;
  background-color: #f5f5f7;
  position: relative;
  padding: 32px 80px 32px 32px;
}
@media only screen and (max-width: 1200px) {
  .features__item {
    padding: 20px 56px 20px 20px;
  }
}
@media only screen and (max-width: 1024px) {
  .features__item {
    gap: 12px;
  }
}
@media only screen and (max-width: 640px) {
  .features__item {
    border-radius: 16px;
    -webkit-border-radius: 16px;
    gap: 8px;
    padding: 16px 48px 16px 16px;
  }
}
@media only screen and (min-width: 1025px) {
  .features__item:hover {
    scale: 1.01;
  }
}
.features__item-title {
  max-width: 96%;
}
.features__item-text {
  color: rgba(0, 0, 0, 0.7);
}
@media only screen and (max-width: 1024px) {
  .features__item-text {
    font-size: 13px;
    line-height: 16px;
  }
}
.features__icon {
  position: absolute;
  top: 32px;
  right: 32px;
}
@media only screen and (max-width: 1024px) {
  .features__icon {
    display: block;
    width: 24px;
    height: 24px;
    top: 20px;
    right: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .features__icon {
    top: 16px;
    right: 16px;
  }
}
.map-block__map {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  filter: invert(87%);
  height: 560px;
  width: 100%;
  overflow: hidden;
  margin-bottom: 56px;
}
@media only screen and (max-width: 1400px) {
  .map-block__map {
    height: 400px;
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 1024px) {
  .map-block__map {
    font-size: 14px;
    line-height: 20px;
    margin-bottom: 32px;
  }
}
.map-block__list-title,
.map-block__item {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.map-block__list-title:nth-child(4) ~ *,
.map-block__item:nth-child(4) ~ * {
  display: none;
}
@media only screen and (max-width: 1400px) {
  .map-block__list-title,
  .map-block__item {
    gap: 12px;
    grid-template-columns: 1fr;
  }
}
.map-block__list-title {
  font-size: 14px;
  line-height: 20px;
  padding: 16px 16px 4px;
}
@media only screen and (max-width: 1400px) {
  .map-block__list-title {
    display: none;
  }
}
.map-block__list {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.map-block__list--active {
  display: flex;
}
.map-block__list--active .map-block__item:nth-child(4) ~ * {
  display: grid;
}
.map-block__item {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  font-size: 16px;
  line-height: 24px;
  background-color: #f5f5f7;
  padding: 16px;
}
.map-block__item-col:first-child {
  font-size: 18px;
  line-height: 24px;
  font-weight: 600;
}
.overlay {
  visibility: hidden;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.15);
  z-index: 1050;
  display: none;
}
.overlay.show {
  animation: smooth-show 0.2s linear forwards;
  display: flex;
  visibility: visible;
  animation: blur 0.7s ease forwards;
}
.overlay__close-button {
  color: #fff;
  font-weight: 600;
  position: absolute;
  top: 28px;
  right: 24px;
}
@media only screen and (min-width: 991px) {
  .overlay__close-button {
    transition: opacity 0.1s linear 0s;
  }
  .overlay__close-button:hover {
    opacity: 0.6;
  }
}
@media only screen and (max-width: 1024px) {
  .overlay__close-button {
    top: 16px;
    right: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .overlay__close-button {
    right: 16px;
  }
}
.overlay__item {
  align-items: center;
  justify-content: center;
  min-height: 100%;
  display: none;
}
.overlay__item.shown {
  display: flex;
  background-color: rgba(0, 0, 0, 0.2);
}
.pdf__shell {
  display: flex;
  flex-direction: column;
  gap: 0px;
  border-radius: 20px;
  -webkit-border-radius: 20px;
  overflow: hidden;
  align-items: center;
  position: relative;
  padding: 84px 24px;
}
@media only screen and (max-width: 1024px) {
  .pdf__shell {
    padding-block: 64px;
  }
}
.pdf__shell--gray {
  background-color: #f5f5f7;
}
.pdf__shell--blue {
  background: linear-gradient(244.39deg, #12264e 25.37%, #395da5 100%);
  color: #fff;
  padding: 50px 24px;
}
@media only screen and (max-width: 1024px) {
  .pdf__shell--blue {
    padding: 24px;
  }
}
@media only screen and (max-width: 640px) {
  .pdf__shell--blue {
    align-items: unset;
  }
}
.pdf__shell--codex {
  position: relative;
  color: #fff;
  align-items: start;
  padding: 106px 32px;
}
@media only screen and (max-width: 1024px) {
  .pdf__shell--codex {
    padding: 64px 20px;
  }
}
@media only screen and (max-width: 640px) {
  .pdf__shell--codex {
    padding: 32px 24px;
    min-height: 488px;
  }
}
.pdf__shell--codex::after {
  position: absolute;
  inset: 0;
  content: '';
  background: linear-gradient(270deg, rgba(0, 0, 0, 0) 45.44%, rgba(0, 0, 0, 0.64) 75.43%);
  z-index: -1;
}
@media only screen and (max-width: 640px) {
  .pdf__shell--codex::after {
    background: linear-gradient(341.83deg, rgba(0, 0, 0, 0) 45.02%, rgba(0, 0, 0, 0.75) 68.48%);
  }
}
.pdf__bg {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: -1;
}
.pdf__title {
  margin-bottom: 8px;
}
.pdf__shell--narrow-content .pdf__title {
  max-width: 500px;
}
@media only screen and (max-width: 1024px) {
  .pdf__shell--narrow-content .pdf__title {
    max-width: 300px;
  }
}
.pdf__subtitle {
  margin-top: 0;
}
.pdf__shell--narrow-content .pdf__subtitle {
  max-width: 600px;
}
@media only screen and (max-width: 1024px) {
  .pdf__shell--narrow-content .pdf__subtitle {
    max-width: 300px;
  }
}
.pdf__btn {
  position: relative;
  z-index: 1;
  margin: 40px 0 0;
}
@media only screen and (max-width: 1024px) {
  .pdf__btn {
    margin-top: 24px;
  }
}
.pdf-lay__shell {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  width: 764px;
  background-color: #fff;
  height: min-content;
  max-height: calc(100dvh - 180px);
  padding: 32px;
  position: relative;
  display: none;
}
.show.pdf-lay__shell {
  display: block;
}
@media only screen and (max-width: 1024px) {
  .pdf-lay__shell {
    border-radius: 4px;
    -webkit-border-radius: 4px;
    background-color: #fff;
    top: 0;
    left: 0;
    height: calc(100%);
    max-height: unset;
    width: 100%;
    overflow-y: auto;
    transform: unset;
    padding: 0 0 16px 16px;
  }
}
.pdf-lay__title-shell {
  position: relative;
  margin-bottom: 32px;
}
@media only screen and (max-width: 1024px) {
  .pdf-lay__title-shell {
    position: sticky;
    top: 0;
    z-index: 3;
    background-color: #fff;
    text-align: center;
    padding-block: 16px;
    border-bottom: solid 1px #dedede;
    width: calc(100% + 16px);
    margin-bottom: 16px;
    margin-left: -16px;
  }
}
.pdf-lay__subtitle {
  margin-bottom: 12px;
}
@media only screen and (max-width: 1024px) {
  .pdf-lay__subtitle {
    font-size: 16px;
    line-height: 20px;
  }
}
.pdf-lay__links + .pdf-lay__subtitle {
  margin-top: 32px;
}
.pdf-lay__links {
  column-count: 2;
  column-gap: 32px;
}
@media only screen and (max-width: 1024px) {
  .pdf-lay__links {
    column-count: unset;
    padding-right: 16px;
  }
}
.pdf-lay__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  break-inside: avoid;
  border-bottom: 1px solid #dedede;
  padding-block: 12px;
}
@media only screen and (max-width: 1024px) {
  .pdf-lay__link {
    font-size: 13px;
    line-height: 16px;
    padding-block: 14px;
  }
}
.pdf-lay__show-more-link {
  font-weight: 500;
}
.pdf-lay__close-btn {
  width: 22px;
  height: 22px;
  position: absolute;
  top: 0;
  right: 0;
}
@media only screen and (max-width: 1024px) {
  .pdf-lay__close-btn {
    top: 16px;
    right: unset;
    left: 16px;
  }
}
.pdf-lay__close-btn::before,
.pdf-lay__close-btn::after {
  position: absolute;
  top: 50%;
  right: 19%;
  transform-origin: center center;
  background-color: #000;
  content: '';
  width: 17px;
  height: 1px;
  rotate: 45deg;
}
.pdf-lay__close-btn::after {
  rotate: 135deg;
}
.prop-slider--grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
@media only screen and (max-width: 1024px) {
  .prop-slider--grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}
.prop-slider--grid-5 {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 20px;
}
@media only screen and (max-width: 1024px) {
  .prop-slider--grid-5 {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}
.prop-slider--mb {
  margin-bottom: 20px;
}
@media only screen and (max-width: 1024px) {
  .prop-slider--mb {
    margin-bottom: 12px;
  }
}
.prop-slider__icon {
  display: block;
  width: 64px;
  height: 40px;
  flex-shrink: 0;
}
.prop-slider__text {
  white-space: nowrap;
}
.prop-slider__nav-btns {
  display: flex;
  justify-content: start;
  gap: 16px;
  padding: 4px;
}
@media only screen and (max-width: 1024px) {
  .prop-slider__nav-btns {
    display: none;
  }
}
.prop-slider__nav-btn {
  width: 32px;
  height: 32px;
  border-radius: 100%;
  border: 1px solid rgba(0, 0, 0, 0.15);
  background-color: #fff;
  flex: none;
}
.prop-slider__nav-btn:active,
.prop-slider__nav-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.7);
}
.prop-slider--platform .prop-slider__nav-btn--prev,
.prop-slider__nav-btn--prev.prop-slider__nav-btn--center {
  position: absolute;
  top: 50% !important;
  transform: translateY(-50%) !important;
  left: -16px !important;
  z-index: 5;
}
@media only screen and (max-width: 1024px) {
  .prop-slider--platform .prop-slider__nav-btn--prev,
  .prop-slider__nav-btn--prev.prop-slider__nav-btn--center {
    display: none;
  }
}
.prop-slider__nav-btn--prev span {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.prop-slider__nav-btn--prev span::before {
  transform: translateY(-50%) rotate(135deg);
  position: absolute;
  top: 50%;
  display: block;
  width: 8px;
  height: 8px;
  right: 9px;
  content: '';
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
}
.prop-slider--platform .prop-slider__nav-btn--next,
.prop-slider__nav-btn--next.prop-slider__nav-btn--center {
  position: absolute;
  top: 50% !important;
  transform: translateY(-50%) !important;
  right: -16px !important;
  z-index: 5;
}
@media only screen and (max-width: 1024px) {
  .prop-slider--platform .prop-slider__nav-btn--next,
  .prop-slider__nav-btn--next.prop-slider__nav-btn--center {
    display: none;
  }
}
.prop-slider__nav-btn--next span {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.prop-slider__nav-btn--next span::before {
  transform: translateY(-50%) rotate(-45deg);
  position: absolute;
  top: 50%;
  display: block;
  width: 8px;
  height: 8px;
  right: 13px;
  content: '';
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
}
.swiper-button-disabled.prop-slider__nav-btn {
  background-color: transparent;
  cursor: not-allowed;
}
.swiper-button-disabled.prop-slider__nav-btn span::before {
  border-right: 1px solid rgba(0, 0, 0, 0.15);
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}
.swiper-button-disabled.prop-slider__nav-btn:active,
.swiper-button-disabled.prop-slider__nav-btn:focus-visible {
  box-shadow: unset;
}
.prop-slider--platform .swiper-button-disabled.prop-slider__nav-btn,
.swiper-button-disabled.prop-slider__nav-btn.prop-slider__nav-btn--center {
  background-color: #fff;
}
.prop-slider__slide {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  transition: scale 0.1s linear 0s;
  background-color: #f5f5f7;
  overflow: hidden;
  min-height: 416px;
  padding: 32px;
}
@media only screen and (max-width: 1200px) {
  .prop-slider__slide {
    padding: 20px;
  }
}
@media only screen and (max-width: 1024px) {
  .prop-slider__slide {
    min-height: 330px;
  }
}
@media only screen and (max-width: 640px) {
  .prop-slider__slide {
    min-height: 320px;
    padding: 16px;
  }
}
@media only screen and (min-width: 1025px) {
  .prop-slider__slide:hover {
    scale: 1.01;
  }
}
.prop-slider__slide--white-color {
  color: #fff;
}
.prop-slider__slide--black-color {
  color: #000;
}
.prop-slider__slide--blue-bg {
  background-color: #2864dc;
}
.prop-slider__slide--dark-blue-bg {
  background-color: #162448;
}
.prop-slider__slide--stretch {
  display: flex;
  flex-direction: column;
  gap: 0px;
  justify-content: space-between;
  min-height: 100%;
  padding: 24px;
}
@media only screen and (max-width: 1200px) {
  .prop-slider__slide--stretch {
    padding: 16px;
  }
}
.prop-slider__slide--stretch p {
  color: rgba(0, 0, 0, 0.7);
}
.prop-slider__slide--border {
  background: none;
  border: 1px solid #04040526;
  max-width: 263px;
}
@media only screen and (max-width: 1200px) {
  .prop-slider__slide--border {
    max-width: none;
  }
}
.prop-slider__slide--center {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}
.prop-slider--grid .prop-slider__slide--center,
.prop-slider--grid-5 .prop-slider__slide--center {
  min-height: auto;
}
.prop-slider__slide--height-none {
  min-height: auto;
  height: auto !important;
}
@media only screen and (max-width: 1024px) {
  .prop-slider__slide--height-none {
    min-height: auto;
  }
}
@media only screen and (max-width: 640px) {
  .prop-slider__slide--height-none {
    min-height: auto;
  }
}
.prop-slider__slide-img {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale 0.1s linear 0s;
  z-index: -1;
}
@media only screen and (min-width: 1025px) {
  .prop-slider__slide:hover .prop-slider__slide-img {
    scale: 1.006;
  }
}
.prop-slider__slide-title {
  margin-bottom: 16px;
}
@media only screen and (max-width: 1024px) {
  .prop-slider__slide-title {
    font-size: 16px;
    line-height: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .prop-slider__slide-title {
    margin-bottom: 8px;
  }
}
.prop-slider__slide-main-title {
  font-size: 48px;
  line-height: 48px;
  margin-bottom: 16px;
}
.prop-slider__slide-list-item {
  opacity: 0.7;
  display: block;
  padding: 20px 0 20px 24px;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .prop-slider__slide-list-item {
    font-size: 13px;
    line-height: 16px;
    padding-bottom: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .prop-slider__slide-list-item {
    padding-block: 12px;
  }
}
.prop-slider__slide-list-item:last-child {
  padding-bottom: 0;
}
.prop-slider__slide-list-item::before {
  width: 3px;
  height: 3px;
  border-radius: 100%;
  transform: translateY(calc(50% + 10px));
  content: '';
  position: absolute;
  left: 8px;
  background-color: #000;
}
.prop-slider__slide-list-item + .prop-slider__slide-list-item {
  border-top: 1px solid #dedede;
}
.prop-slider__bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.prop-slider__link {
  position: absolute;
  inset: 0;
  z-index: 2;
}
.prop-slider__wrapper--stretch {
  align-items: stretch !important;
}
.read-more {
  position: relative;
  padding-top: 52px;
}
@media only screen and (max-width: 1024px) {
  .read-more {
    padding-top: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .read-more {
    padding-top: 32px;
  }
}
.read-more::before {
  transform: translateX(-50%);
  position: absolute;
  left: 50%;
  background-color: #dedede;
  top: 0;
  content: '';
  width: 100dvw;
  height: 1px;
}
.read-more__title {
  margin-bottom: 56px;
}
@media only screen and (max-width: 1024px) {
  .read-more__title {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .read-more__title {
    margin-bottom: 32px;
  }
}
@media only screen and (max-width: 1024px) {
  .read-more .swiper-pagination {
    display: none;
  }
}
.show-more-link {
  font-size: 16px;
  line-height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  display: inline-flex;
  position: relative;
  z-index: 2;
  padding-right: 12px;
}
.show-more-link--pt {
  margin-top: 24px;
}
.show-more-link::after {
  width: 5px;
  height: 5px;
  transform: rotate(-45deg) translateY(-50%);
  position: absolute;
  top: 50%;
  right: 0;
  content: "";
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  border-radius: 0 0 1px 0;
}
.show-more-link--blue {
  color: #2864dc;
}
.show-more-link--blue::after {
  border-color: #2864dc;
}
.show-more-link--black {
  color: #000;
}
.show-more-link--black::after {
  border-color: #000;
}
.show-more-link--product {
  margin-top: 24px;
}
@media only screen and (max-width: 1024px) {
  .show-more-link--product {
    margin-top: 16px;
  }
}
.catalog__slider .show-more-link--product {
  margin-top: auto;
}
@media only screen and (max-width: 640px) {
  .instrum__shell--with-bg .show-more-link {
    margin-top: auto;
  }
}
.count-list {
  display: flex;
  flex-direction: column;
  counter-reset: item;
}
.count-list--tab {
  margin-top: 40px;
}
@media only screen and (max-width: 1400px) {
  .count-list--tab {
    margin-top: 24px;
  }
}
.count-list__item {
  position: relative;
  padding-left: 72px;
  padding-bottom: 52px;
}
@media only screen and (max-width: 1400px) {
  .count-list__item {
    padding-left: 52px;
    padding-bottom: 24px;
  }
}
.count-list__item:before {
  content: '';
  position: absolute;
  left: 25px;
  top: 0;
  bottom: 0;
  width: 2px;
  background-color: #dedede;
}
@media only screen and (max-width: 1400px) {
  .count-list__item:before {
    left: 19px;
  }
}
.count-list__item::after {
  font-size: 24px;
  line-height: 32px;
  border-radius: 40px;
  -webkit-border-radius: 40px;
  display: block;
  width: 48px;
  height: 48px;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0px !important;
  font-weight: 600;
  content: counter(item);
  counter-increment: item;
  flex-shrink: 0;
  position: absolute;
  left: 0;
  top: 0;
  border: 2px solid #dedede;
  background-color: #fff;
}
@media only screen and (max-width: 1400px) {
  .count-list__item::after {
    display: block;
    width: 36px;
    height: 36px;
    font-size: 17px;
    line-height: 20px;
  }
}
.count-list__item:last-child {
  padding-bottom: 0;
}
.count-list__item:last-child:before {
  content: none;
}
.count-list__item-title {
  display: block;
  margin-bottom: 16px;
}
@media only screen and (max-width: 1400px) {
  .count-list__item-title {
    margin-bottom: 12px;
  }
}
.lift-paths {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}
@media only screen and (max-width: 640px) {
  .lift-paths {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}
.lift-paths__item {
  border-radius: 6px;
  -webkit-border-radius: 6px;
  font-size: 18px;
  line-height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  background-color: #f5f5f7;
  padding: 16px;
  text-align: center;
}
.press-detail__container .lift-paths {
  margin-bottom: 52px;
}
@media only screen and (max-width: 1400px) {
  .press-detail__container .lift-paths {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .press-detail__container .lift-paths {
    margin-bottom: 32px;
  }
}
.press-detail-content .counter-ol,
.counter-ol {
  display: flex;
  flex-direction: column;
  counter-reset: item;
  gap: 16px;
}
.press-detail-content .counter-ol li,
.counter-ol li {
  display: block;
  position: relative;
  padding-left: 72px;
  margin: 0;
  min-height: 52px;
  padding-top: 10px;
}
@media only screen and (max-width: 1400px) {
  .press-detail-content .counter-ol li,
  .counter-ol li {
    padding-left: 52px;
    min-height: 40px;
    padding-top: 8px;
  }
}
.press-detail-content .counter-ol li::before,
.counter-ol li::before {
  content: none;
}
.press-detail-content .counter-ol li::after,
.counter-ol li::after {
  font-size: 24px;
  line-height: 32px;
  font-weight: 600;
  border-radius: 40px;
  -webkit-border-radius: 40px;
  display: block;
  width: 48px;
  height: 48px;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0px !important;
  content: counter(item);
  counter-increment: item;
  flex-shrink: 0;
  position: absolute;
  left: 0;
  top: 0;
  border: 2px solid #dedede;
  background-color: #fff;
}
@media only screen and (max-width: 1400px) {
  .press-detail-content .counter-ol li::after,
  .counter-ol li::after {
    display: block;
    width: 36px;
    height: 36px;
    font-size: 17px;
    line-height: 20px;
  }
}
.press-detail-content .counter-ol li:last-child,
.counter-ol li:last-child {
  padding-bottom: 0;
}
.press-detail-content .counter-ol li:last-child:before,
.counter-ol li:last-child:before {
  content: none;
}
.press-detail-content .counter-ol--mobile-visible,
.counter-ol--mobile-visible {
  display: none;
}
@media only screen and (max-width: 640px) {
  .press-detail-content .counter-ol--mobile-visible,
  .counter-ol--mobile-visible {
    display: flex;
  }
}
.press-detail-content .counter-ol + *,
.counter-ol + * {
  margin-top: 40px;
}
@media only screen and (max-width: 640px) {
  .press-detail-content .counter-ol + *,
  .counter-ol + * {
    margin-top: 32px;
  }
}
.press-detail-content .counter-ol {
  margin-top: 40px;
}
@media only screen and (max-width: 640px) {
  .press-detail-content .counter-ol {
    margin-top: 32px;
  }
}
.counter-ul {
  display: flex;
  flex-direction: column;
  counter-reset: item;
}
.counter-ul li {
  display: block;
  position: relative;
  padding-left: 30px;
  margin: 0;
  margin-bottom: 1rem;
  color: rgba(0, 0, 0, 0.7);
}
.counter-ul li::before {
  content: none;
}
.counter-ul li::after {
  content: '';
  border-radius: 10px;
  -webkit-border-radius: 10px;
  display: block;
  width: 4px;
  height: 4px;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0px !important;
  flex-shrink: 0;
  position: absolute;
  left: 12px;
  top: 10px;
  background-color: currentColor;
}
@media only screen and (max-width: 640px) {
  .counter-ul li::after {
    font-size: 15px;
    line-height: 24px;
  }
}
.counter-ul--mobile-visible {
  display: none;
}
@media only screen and (max-width: 640px) {
  .counter-ul--mobile-visible {
    display: flex;
  }
}
.counter-ul--mt {
  margin-top: 50px;
}
@media only screen and (max-width: 1024px) {
  .counter-ul--mt {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .counter-ul--mt {
    margin-top: 16px;
  }
}
.counter-ul__title {
  display: none;
}
@media only screen and (max-width: 640px) {
  .counter-ul__title {
    display: block;
    margin-top: 40px;
  }
}
.aside-info {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  border: 1px solid #dedede;
  padding: 32px;
}
@media only screen and (max-width: 1024px) {
  .aside-info {
    padding: 20px;
  }
}
.aside-info__title {
  display: block;
  margin-bottom: 16px;
}
.aside-info p {
  margin-bottom: 24px;
}
.aside-info p:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 1024px) {
  .aside-info p {
    margin-bottom: 16px;
  }
  .aside-info p:last-child {
    margin-bottom: 0;
  }
}
.aside-info__phone {
  color: #2864dc;
  margin-bottom: 8px;
}
.gray-col-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
@media only screen and (max-width: 1400px) {
  .gray-col-2 {
    gap: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .gray-col-2 {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}
.gray-col-2__item {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  display: block;
  padding: 32px;
  min-height: 112px;
  background-color: #f5f5f7;
}
@media only screen and (max-width: 1400px) {
  .gray-col-2__item {
    border-radius: 16px;
    -webkit-border-radius: 16px;
    padding: 20px;
    min-height: auto;
  }
}
@media only screen and (max-width: 640px) {
  .gray-col-2__item {
    padding: 16px;
  }
}
.more-platforms__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  overflow: auto;
}
@media only screen and (max-width: 640px) {
  .more-platforms__list {
    display: flex;
    gap: 8px;
    padding-inline: 16px;
    margin-inline: -16px;
    width: calc(100% + 16px * 2);
  }
}
.more-platforms__list--col-2 {
  grid-template-columns: repeat(2, 1fr);
}
.more-platforms__list--col-4 {
  grid-template-columns: repeat(4, 1fr);
}
.more-platforms__item {
  display: flex;
  flex-direction: column;
  gap: 0px;
  gap: 24px;
  justify-content: space-between;
}
@media only screen and (max-width: 640px) {
  .more-platforms__item {
    width: 91.5vw;
    flex-shrink: 0;
  }
}
.more-platforms__item-wrap-img {
  border-radius: 16px;
  -webkit-border-radius: 16px;
  position: relative;
  overflow: hidden;
  margin-bottom: 16px;
  padding-top: 133%;
}
.more-platforms__item-img {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale 0.1s linear 0s;
}
@media only screen and (min-width: 1025px) {
  .more-platforms__item:hover .more-platforms__item-img {
    scale: 1.006;
  }
}
@media only screen and (max-width: 640px) {
  .more-platforms__item-img {
    margin-bottom: 8px;
  }
}
.more-platforms__item-text {
  font-size: 18px;
  line-height: 32px;
  margin-top: 12px;
}
@media only screen and (max-width: 640px) {
  .more-platforms__item-text {
    font-size: 15px;
    line-height: 24px;
  }
}
@media only screen and (max-width: 640px) {
  .more-platforms__btn {
    max-width: 100%;
  }
}
.clean-phase-system {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
@media only screen and (max-width: 640px) {
  .clean-phase-system {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
.clean-phase-system__item {
  position: relative;
}
.clean-phase-system__img-wrap {
  border-radius: 16px;
  -webkit-border-radius: 16px;
  position: relative;
  overflow: hidden;
  margin-bottom: 16px;
  padding-top: 58.2%;
}
.clean-phase-system__img {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale 0.1s linear 0s;
  margin-bottom: 20px;
}
@media only screen and (min-width: 1025px) {
  .clean-phase-system__item:hover .clean-phase-system__img {
    scale: 1.006;
  }
}
@media only screen and (max-width: 640px) {
  .clean-phase-system__img {
    margin-bottom: 16px;
  }
}
.clean-phase-system__count {
  display: block;
  width: 40px;
  height: 40px;
  border-radius: 20px;
  -webkit-border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  background-color: #fff;
  position: absolute;
  left: 16px;
  top: 16px;
  z-index: 3;
}
@media only screen and (max-width: 640px) {
  .clean-phase-system__count {
    left: 12px;
    top: 12px;
  }
}
.block-col-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
@media only screen and (max-width: 640px) {
  .block-col-2 {
    grid-template-columns: 1fr;
    gap: 24px;
  }
}
.block-col-2__wrap-list .block-col-2 {
  padding-block: 40px;
  position: relative;
}
@media only screen and (max-width: 640px) {
  .block-col-2__wrap-list .block-col-2 {
    padding-block: 24px;
    gap: 12px;
  }
}
.block-col-2__wrap-list .block-col-2::after {
  content: '';
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  height: 1px;
  background-color: #dfdfdf;
}
.block-col-2__wrap-list .block-col-2:first-child {
  padding-top: 0;
}
.block-col-2__wrap-list .block-col-2:first-child::after {
  content: none;
}
.block-col-2__wrap-list .block-col-2:last-child {
  padding-bottom: 0;
}
.block-col-2__item {
  display: flex;
  flex-direction: column;
  gap: 0px;
  justify-content: center;
  gap: 24px;
}
@media only screen and (max-width: 640px) {
  .block-col-2__wrap-list .block-col-2__item {
    gap: 12px;
  }
}
.block-col-2__wrap-list .block-col-2:nth-child(even) .block-col-2__item {
  order: 3;
}
@media only screen and (max-width: 640px) {
  .block-col-2__wrap-list .block-col-2:nth-child(even) .block-col-2__item {
    order: 0;
  }
}
.block-col-2__item-wrap-img {
  border-radius: 16px;
  -webkit-border-radius: 16px;
  position: relative;
  overflow: hidden;
  padding-top: 100%;
}
.block-col-2__wrap-list .block-col-2__item-wrap-img {
  padding-top: 39%;
}
.block-col-2__item-img {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale 0.1s linear 0s;
}
@media only screen and (min-width: 1025px) {
  .block-col-2__item-wrap-img:hover .block-col-2__item-img {
    scale: 1.006;
  }
}
.block-col-2__item-text p {
  margin-bottom: 12px;
}
.block-col-2__item-text p:last-child {
  margin-bottom: 0;
}
.download-application__grid {
  border-radius: 16px;
  -webkit-border-radius: 16px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  background-color: #ececee;
  padding: 0 60px;
  min-height: 449px;
}
@media only screen and (max-width: 1024px) {
  .download-application__grid {
    grid-template-columns: 1fr;
    gap: 32px;
    padding: 24px 16px 0;
    min-height: auto;
  }
}
.download-application__grid-item {
  display: flex;
  flex-direction: column;
  gap: 0px;
  justify-content: center;
  padding-block: 50px;
}
.download-application__grid-item--img {
  padding-block: 0;
  justify-content: flex-end;
}
@media only screen and (max-width: 1024px) {
  .download-application__grid-item--img {
    order: 2;
  }
}
.download-application__grid-item--content {
  padding-left: 76px;
}
@media only screen and (max-width: 1024px) {
  .download-application__grid-item--content {
    padding: 0;
    text-align: center;
  }
}
.download-application__links {
  display: flex;
  gap: 16px;
  margin-top: 24px;
}
@media only screen and (max-width: 1024px) {
  .download-application__links {
    justify-content: center;
  }
}
.number-list {
  display: flex;
  flex-direction: column;
  counter-reset: item;
}
.number-list li {
  display: block;
  position: relative;
  padding-left: 56px;
  margin: 0;
  padding-block: 40px;
  border-top: 1px solid #dfdfdf;
}
.number-list li:last-child {
  border-bottom: 1px solid #dfdfdf;
}
@media only screen and (max-width: 1024px) {
  .number-list li {
    min-height: 80px;
    padding-left: 48px;
    padding-block: 24px;
  }
}
.number-list li::before {
  content: none;
}
.number-list li::after {
  font-size: 18px;
  line-height: 24px;
  border-radius: 40px;
  -webkit-border-radius: 40px;
  display: block;
  width: 40px;
  height: 40px;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0px !important;
  content: counter(item);
  counter-increment: item;
  font-weight: 600;
  flex-shrink: 0;
  position: absolute;
  left: 0;
  top: 40px;
  background-color: #12264e;
  color: #fff;
}
@media only screen and (max-width: 1024px) {
  .number-list li::after {
    display: block;
    width: 32px;
    height: 32px;
    font-size: 17px;
    line-height: 20px;
    top: 24px;
  }
}
.swipe-img-block__title {
  display: none;
}
@media only screen and (max-width: 640px) {
  .swipe-img-block__title {
    margin-top: 16px;
    display: block;
  }
}
.example-product-slider {
  max-height: 564px;
}
@media only screen and (max-width: 640px) {
  .example-product-slider {
    max-height: none;
  }
}
.cookie-attention {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  justify-content: space-between;
  gap: 24px;
  background-color: #fff;
  box-shadow: 0 2px 25px 0 rgba(0, 0, 0, 0.2);
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 9999;
  padding: 24px;
  box-sizing: border-box;
  transition: all 0.3s ease;
}
@media (max-width: 768px) {
  .cookie-attention {
    gap: 16px;
    flex-direction: column;
    padding: 16px;
  }
}
.cookie-attention__text {
  margin: 0;
}
.cookie-attention__link {
  transition: border 0.3s ease;
  border-bottom: 1px solid rgba(0, 0, 0, 0.7);
  text-decoration: none;
}
.cookie-attention__link:hover {
  border-bottom-color: rgba(255, 255, 255, 0.5);
}
.cookie-attention__right {
  display: flex;
  align-items: center;
  gap: 16px;
}
.soc-list {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: flex-end;
}
@media only screen and (max-width: 1024px) {
  .soc-list {
    justify-content: flex-start;
  }
}
.soc-list__item {
  display: inline-flex;
}
.soc-list__item--vk:hover > svg * {
  fill: #2787f5;
}
.soc-list__item--tg:hover > svg * {
  fill: #37aee2;
}
.soc-list__item > svg > * {
  width: 100%;
  height: 100%;
  transition: fill 0.3s;
}
@media only screen and (max-width: 1024px) {
  .bim__title {
    text-align: left;
  }
}
.bim__subtitle-text {
  font-size: 18px;
  line-height: 32px;
}
@media only screen and (max-width: 1024px) {
  .bim__subtitle-text {
    font-size: 15px;
    line-height: 24px;
    text-align: left;
  }
}
.bim h1 {
  margin-bottom: 24px;
}
@media only screen and (max-width: 1024px) {
  .bim h1 {
    margin-bottom: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .bim h1 {
    margin-bottom: 12px;
  }
}
@media only screen and (max-width: 640px) {
  .bim h2 {
    text-align: left;
  }
}
.bim__models {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-top: 52px;
}
.bim__models--bim-d {
  grid-template-columns: repeat(2, 1fr);
}
@media only screen and (max-width: 1024px) {
  .bim__models {
    grid-template-columns: 1fr;
    gap: 16px;
    margin-top: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .bim__models {
    margin-top: 32px;
  }
}
.bim__model {
  transition: scale 0.1s linear 0s;
  display: flex;
  flex-direction: column;
  gap: 0px;
  border-radius: 20px;
  -webkit-border-radius: 20px;
  text-align: center;
  align-items: center;
  background-color: #f5f5f7;
  padding: 72px 26px 48px;
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 1024px) {
  .bim__model {
    flex-direction: row;
    gap: 2%;
    padding: 24px;
  }
}
@media only screen and (max-width: 640px) {
  .bim__model {
    flex-direction: column;
    padding: 36px 16px 32px;
  }
}
@media only screen and (min-width: 1025px) {
  .bim__model:hover {
    scale: 1.01;
  }
}
.bim__model-ref {
  user-select: none;
  font-size: 0;
  background-color: transparent;
  color: transparent;
  position: absolute;
  inset: 0;
  z-index: 1;
}
.bim__model-img-shell {
  transition: scale 0.1s linear 0s;
  max-width: 400px;
  width: 100%;
  aspect-ratio: 1;
  position: relative;
  margin-bottom: 66px;
  overflow: hidden;
}
@media only screen and (max-width: 1024px) {
  .bim__model-img-shell {
    max-width: 300px;
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 640px) {
  .bim__model-img-shell {
    margin-bottom: 26px;
  }
}
@media only screen and (min-width: 1025px) {
  .bim__model:hover .bim__model-img-shell {
    scale: 1.02;
  }
}
.bim__model-img {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.bim__model-text-shell {
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: center;
  margin-top: auto;
}
@media only screen and (max-width: 1024px) {
  .bim__model-text-shell {
    align-items: start;
    justify-content: center;
    margin-top: unset;
    text-align: left;
  }
}
@media only screen and (max-width: 640px) {
  .bim__model-text-shell {
    align-items: center;
    text-align: center;
  }
}
.bim__model-title {
  font-size: 18px;
  line-height: 24px;
  font-weight: 600;
  margin-bottom: 8px;
}
@media only screen and (max-width: 1024px) {
  .bim__model-title {
    font-size: 16px;
    line-height: 20px;
  }
}
.bim__model-subtitle {
  font-size: 14px;
  line-height: 20px;
  color: rgba(0, 0, 0, 0.7);
  font-weight: 500;
  margin-bottom: 24px;
}
@media only screen and (max-width: 1024px) {
  .bim__model-subtitle {
    margin-bottom: 20px;
  }
}
.bim__model-link {
  color: #2864dc;
  padding-right: 12px;
  position: relative;
  white-space: nowrap;
  cursor: pointer;
}
.bim__model-link::after {
  width: 5px;
  height: 5px;
  transform: rotate(-45deg) translateY(-50%);
  position: absolute;
  top: 50%;
  right: 0;
  content: '';
  border-bottom: 1px solid #2864dc;
  border-right: 1px solid #2864dc;
}
@media only screen and (min-width: 1025px) {
  .bim__model-link:hover {
    opacity: 0.7;
  }
}
.bim__model-link:active {
  opacity: 0.9;
}
.bim__model-link:focus-visible {
  border-radius: 4px;
  -webkit-border-radius: 4px;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3);
}
.bim-use h2 {
  font-size: 32px;
  line-height: 40px;
  font-weight: 700;
}
@media only screen and (max-width: 1024px) {
  .bim-use h2 {
    font-size: 20px;
    line-height: 24px;
  }
}
@media only screen and (max-width: 640px) {
  .bim-use h2 {
    text-align: left;
  }
}
.bim-use__blocks {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin-top: 40px;
}
@media only screen and (max-width: 1024px) {
  .bim-use__blocks {
    max-width: 541px;
    margin-inline: auto;
    margin-top: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .bim-use__blocks {
    max-width: 100%;
    margin-top: 24px;
  }
}
@media only screen and (max-width: 1024px) {
  .middle--mobile-wide .bim-use__blocks {
    max-width: 100%;
  }
}
@media only screen and (max-width: 1024px) {
  .instrum--blue-card-text .bim-use__blocks {
    max-width: none;
    margin-inline: 0;
  }
}
.bim-use__block {
  transition: scale 0.1s linear 0s;
  border-radius: 20px;
  -webkit-border-radius: 20px;
  font-size: 18px;
  line-height: 32px;
  display: flex;
  align-items: start;
  gap: 24px;
  text-align: left;
  font-weight: 500;
  background-color: #f5f5f7;
  padding: 32px;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .bim-use__block {
    font-size: 16px;
    line-height: 24px;
    padding: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .bim-use__block {
    gap: 16px;
    padding: 16px;
  }
}
@media only screen and (min-width: 1025px) {
  .bim-use__block:hover {
    scale: 1.01;
  }
}
.bim-use__block-icon {
  border-radius: 6px;
  -webkit-border-radius: 6px;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  background-color: #fff;
  flex-shrink: 0;
}
.bim-d {
  display: grid;
  grid-template-columns: calc(41% - 3px) calc(59% - 10px);
  grid-template-areas: 'sliders info' 'bonus bonus';
  column-gap: 20px;
}
@media only screen and (max-width: 1200px) {
  .bim-d {
    display: flex;
    flex-direction: column;
    gap: 0px;
  }
}
.bim-d__sls {
  position: sticky;
  top: 120px;
}
@media only screen and (max-width: 1200px) {
  .bim-d__sls {
    margin-inline: auto;
  }
}
.bim-d__sls-shell {
  grid-area: sliders;
  align-self: stretch;
  height: 100%;
  min-width: 0;
}
.bim-d__info {
  grid-area: info;
}
.bim-d-info__title {
  margin-bottom: 16px;
}
@media only screen and (max-width: 1024px) {
  .bim-d-info__title {
    margin-bottom: 32px;
    letter-spacing: -0.3px;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-info__title {
    margin-bottom: 24px;
  }
}
.bim-d-info__block-title {
  max-width: calc(1440px * 0.8);
  width: 80%;
}
@media only screen and (max-width: 1200px) {
  .bim-d-info__block-title {
    display: none;
  }
}
.bim-d-info__tabs-shell {
  display: none;
}
@media only screen and (max-width: 1200px) {
  .bim-d-info__tabs-shell {
    display: block;
    overflow-y: hidden;
    margin-bottom: 24px;
    width: calc(100% + 2 * 24px);
    margin-left: -24px;
  }
}
@media only screen and (max-width: 1024px) {
  .bim-d-info__tabs-shell {
    width: calc(100% + 2 * 20px);
    margin-left: -20px;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-info__tabs-shell {
    width: calc(100% + 2 * 16px);
    margin-left: -16px;
    margin-bottom: 16px;
  }
}
@media only screen and (max-width: 1200px) {
  .с-detail .bim-d-info__tabs-shell {
    margin-top: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .с-detail .bim-d-info__tabs-shell {
    margin-top: 24px;
  }
}
.bim-d-info__tabs-container {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  padding-inline: 24px;
  padding-bottom: 40px;
  margin-bottom: -40px;
}
@media only screen and (max-width: 1024px) {
  .bim-d-info__tabs-container {
    padding-inline: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-info__tabs-container {
    padding-inline: 16px;
    gap: 0;
  }
}
.bim-d-info__tabs-container--type {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  display: inline-flex;
  background-color: #f5f5f7;
  padding: 2px;
  margin-bottom: 24px;
}
.show.bim-d-info__tabs-container--type {
  display: inline-flex;
  justify-content: flex-start;
}
@media only screen and (max-width: 1200px) {
  .bim-d-info__tabs-container--type {
    display: none;
  }
  .show.bim-d-info__tabs-container--type {
    display: flex;
  }
}
.bim-d-info__tabs-container--show {
  display: inline-flex;
}
@media only screen and (max-width: 640px) {
  .bim-d-info__tabs-container--show {
    display: flex;
  }
}
.bim-d-info__tabs-title {
  display: none;
}
.show.bim-d-info__tabs-title {
  display: none;
}
@media only screen and (max-width: 640px) {
  .show.bim-d-info__tabs-title {
    display: block;
    margin-bottom: 12px;
  }
}
.bim-d-info__tab {
  padding: 8px 20px;
  background-color: #f5f5f7;
  font-size: 16px;
  line-height: 18px;
}
.active.bim-d-info__tab {
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.15);
}
.bim-d-info__tabs-container--type .bim-d-info__tab {
  padding-block: 10px;
  flex: 1;
  max-width: unset;
}
.bim-d-info__tabs-container--type .active.bim-d-info__tab {
  background-color: #000;
  color: #fff;
}
.bim-d-info__tabs-container--type .active.bim-d-info__tab:active,
.bim-d-info__tabs-container--type .active.bim-d-info__tab:focus-visible {
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.3);
}
@media only screen and (min-width: 1025px) {
  .bim-d-info__tabs-container--type .active.bim-d-info__tab:hover {
    background-color: rgba(0, 0, 0, 0.7);
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-info__tab-text--desk {
    display: none;
  }
}
.bim-d-info__tab-text--mobile {
  display: none;
}
@media only screen and (max-width: 640px) {
  .bim-d-info__tab-text--mobile {
    display: inline-block;
  }
}
.bim-d-info__descr {
  padding-right: 15%;
}
@media only screen and (min-width: 1201px) {
  .bim-d-info__descr {
    animation: unset;
  }
}
@media only screen and (max-width: 1200px) {
  .bim-d-info__descr {
    display: none;
    padding-right: 0;
  }
  .show.bim-d-info__descr {
    font-size: 13px;
    line-height: 16px;
    display: block;
  }
}
@media only screen and (min-width: 1025px) {
  .bim-d-info__descr *:last-child {
    margin-bottom: 24px;
  }
}
@media only screen and (max-width: 1024px) {
  .bim-d-info__descr *:last-child {
    margin-bottom: 0;
  }
}
.bim-d-info__descr ul li {
  display: block;
  padding-left: 24px;
  position: relative;
  margin-bottom: 10px;
}
.bim-d-info__descr ul li:last-child {
  margin-bottom: 0;
}
.bim-d-info__descr ul li::before {
  font-weight: 600;
  position: absolute;
  top: 0;
  left: 8px;
  content: '·';
}
.bim-d-info__descr-text,
.bim-d-info h2,
.bim-d-info h3,
.bim-d-info h4,
.bim-d-info h5,
.bim-d-info ul,
.bim-d-info ol,
.bim-d-info p {
  margin-bottom: 24px;
}
@media only screen and (max-width: 1024px) {
  .bim-d-info__descr-text,
  .bim-d-info h2,
  .bim-d-info h3,
  .bim-d-info h4,
  .bim-d-info h5,
  .bim-d-info ul,
  .bim-d-info ol,
  .bim-d-info p {
    margin-bottom: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-info__descr-text,
  .bim-d-info h2,
  .bim-d-info h3,
  .bim-d-info h4,
  .bim-d-info h5,
  .bim-d-info ul,
  .bim-d-info ol,
  .bim-d-info p {
    margin-bottom: 12px;
  }
}
.bim-d-info h5 {
  font-size: 18px;
  line-height: 24px;
  font-weight: 600;
  margin-bottom: 16px;
}
@media only screen and (max-width: 1024px) {
  .bim-d-info h5 {
    font-size: 16px;
    line-height: 20px;
    margin-bottom: 8px;
  }
}
.bim-d-info ul li {
  display: block;
  padding-left: 24px;
  position: relative;
  margin-bottom: 10px;
}
.bim-d-info ul li:last-child {
  margin-bottom: 0;
}
.bim-d-info ul li::before {
  width: 3px;
  height: 3px;
  border-radius: 100%;
  transform: translateY(calc(50% + 14px));
  content: '';
  position: absolute;
  left: 8px;
  background-color: #000;
}
.bim-d-info ol {
  counter-reset: list;
}
.bim-d-info ol li {
  display: block;
  padding-left: 24px;
  position: relative;
  margin-bottom: 10px;
}
.bim-d-info ol li:last-child {
  margin-bottom: 0;
}
.bim-d-info ol li::before {
  counter-increment: list;
  content: counter(list) '.';
  position: absolute;
  left: 0;
}
.bim-d-info__descr-text,
.bim-d-info p,
.bim-d-info ul,
.bim-d-info ol,
.bim-d-info q {
  font-size: 16px;
  line-height: 24px;
}
@media only screen and (max-width: 1024px) {
  .bim-d-info__descr-text,
  .bim-d-info p,
  .bim-d-info ul,
  .bim-d-info ol,
  .bim-d-info q {
    font-size: 13px;
    line-height: 16px;
  }
}
.bim-d-info__bonus {
  grid-area: bonus;
}
.bim-d-info__docs {
  padding-top: 16px;
}
@media only screen and (max-width: 1200px) {
  .bim-d-info__docs {
    justify-content: space-between;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-info__docs {
    padding-top: 8px;
    flex-direction: column;
    align-items: stretch;
  }
}
.bim-d-info__docs--bim {
  border-top: 1px solid #dedede;
  margin-top: 32px;
  padding-top: 24px;
}
@media only screen and (max-width: 1200px) {
  .bim-d-info__docs--bim {
    padding-top: 24px;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-info__docs--bim {
    padding-top: 16px;
  }
}
.bim-d-info__docs-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  transition: opacity 0.1s linear 0s;
  padding-block: 24px;
  color: #000;
  fill: #000;
  position: relative;
}
@media only screen and (max-width: 640px) {
  .bim-d-info__docs-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
  }
  .bim-d-info__docs-row .btn--secondary {
    max-width: 100%;
  }
}
.js-bim-d-info-docs-wrap .bim-d-info__docs-row:nth-child(5) ~ .bim-d-info__docs-row {
  display: none;
}
@media only screen and (max-width: 640px) {
  .bim-d-info__docs-row {
    align-items: stretch;
    flex-direction: column;
  }
}
.bim-d-info__docs-row::after {
  background-color: #dedede;
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 1px;
}
.bim-d-info__docs-row:first-child::after {
  content: none;
}
.show-doc.bim-d-info__docs-row {
  display: flex !important;
}
@media only screen and (min-width: 1025px) {
  .bim-d-info__docs-row:hover {
    opacity: 0.5;
  }
}
.bim-d-info__docs-show-btn {
  display: none;
  color: rgba(0, 0, 0, 0.5);
  margin-top: 16px;
}
@media only screen and (min-width: 1025px) {
  .bim-d-info__docs-show-btn:hover {
    color: rgba(0, 0, 0, 0.3);
  }
}
.show.bim-d-info__docs-show-btn {
  display: block;
}
.bim-d-info__docs-text-shell {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
@media only screen and (max-width: 640px) {
  .bim-d-info__docs-text-shell {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-info__docs-text-icon {
    width: 24px;
    height: 24px;
  }
}
@media only screen and (max-width: 1200px) {
  .bim-d-info__docs-text {
    flex: 1 1;
  }
}
@media only screen and (max-width: 1024px) {
  .bim-d-info__docs-text {
    font-size: 13px;
    line-height: 16px;
  }
}
@media only screen and (max-width: 1200px) {
  .bim-d-info__docs-btn {
    max-width: 357px;
    flex: 1 0 10%;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-info__docs-row .bim-d-info__docs-btn {
    max-width: 100%;
    width: 100%;
    flex: none;
  }
}
.bim-d-info__btn-container {
  display: flex;
  gap: 16px;
  margin-top: 40px;
}
@media only screen and (max-width: 1200px) {
  .bim-d-info__btn-container {
    margin-top: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-info__btn-container {
    margin-top: 24px;
  }
}
.bim-d-info__btn-container--product {
  margin-bottom: 56px;
}
@media only screen and (max-width: 1200px) {
  .bim-d-info__btn-container--product {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    margin-top: 40px;
    margin-bottom: 40px;
  }
  .bim-d-info__btn-container--product .btn:first-child {
    grid-column-start: 1;
    grid-column-end: 3;
  }
}
@media only screen and (max-width: 640px) {
  .с-detail .bim-d-info__btn-container {
    flex-wrap: wrap;
    gap: 16px;
  }
}
.с-detail .bim-d-info__btn-container .btn {
  width: 100%;
  max-width: calc((100% - 16px) / 2);
  width: auto;
  max-width: none;
}
@media only screen and (max-width: 640px) {
  .с-detail-platform .bim-d-info__btn-container {
    flex-direction: column;
  }
}
.wrap-tab-center {
  text-align: center;
}
.bim-d-info-traits--list {
  column-count: 2;
  column-gap: 20px;
}
@media only screen and (max-width: 1200px) {
  .bim-d-info-traits--list {
    display: none;
  }
  .show.bim-d-info-traits--list {
    display: block;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-info-traits--list {
    column-count: unset;
  }
}
.bim-d-info-traits--descr {
  display: block;
}
@media only screen and (max-width: 1200px) {
  .bim-d-info-traits--descr {
    display: none;
  }
  .show.bim-d-info-traits--descr {
    display: block;
  }
}
.с-detail .bim-d-info-traits--descr {
  margin-top: 52px;
}
@media only screen and (max-width: 1200px) {
  .с-detail .bim-d-info-traits--descr {
    margin-top: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .с-detail .bim-d-info-traits--descr {
    margin-top: 24px;
  }
}
.с-detail-platform .bim-d-info-traits {
  display: block;
}
.bim-d-info-traits h4 {
  margin-bottom: 16px;
}
.bim-d-info-traits h5 {
  font-size: 18px;
  line-height: 24px;
  font-weight: 600;
  margin-bottom: 16px;
}
@media only screen and (max-width: 1024px) {
  .bim-d-info-traits h5 {
    font-size: 16px;
    line-height: 20px;
    margin-bottom: 8px;
  }
}
.bim-d-info-traits p {
  margin-bottom: 12px;
}
@media only screen and (max-width: 1024px) {
  .bim-d-info-traits p {
    font-size: 13px;
    line-height: 16px;
    margin-bottom: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-info-traits p {
    margin-bottom: 12px;
  }
}
.bim-d-info-traits__descr-text:last-child,
.bim-d-info-traits p:last-child,
.bim-d-info-traits ul:last-child,
.bim-d-info-traits h5:last-child,
.bim-d-info-traits h4:last-child {
  margin-bottom: 0;
}
.bim-d-info-traits__shell {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  background-color: #f5f5f7;
  padding: 20px;
}
@media only screen and (max-width: 1024px) {
  .bim-d-info-traits__shell {
    padding: 24px;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-info-traits__shell {
    padding: 16px;
  }
}
@media only screen and (max-width: 1200px) {
  .bim-d-info-traits__subtitle--blue-bg {
    border-radius: 20px;
    -webkit-border-radius: 20px;
    display: block;
    background-color: #0045b50f;
    padding: 20px;
  }
}
.bim-d-info-traits__block {
  break-inside: avoid;
}
@media only screen and (max-width: 640px) {
  .bim-d-info-traits__block {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
  }
}
.bim-d-info-traits__block--text-right {
  justify-content: end;
}
.bim-d-info-traits__block + .bim-d-info-traits__block {
  margin-top: 24px;
}
@media only screen and (max-width: 640px) {
  .bim-d-info-traits__block + .bim-d-info-traits__block {
    border-top: 1px solid #dedede;
    margin-top: 0;
    padding-block: 12px;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-info-traits__block:first-child {
    padding-top: 4px;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-info-traits__block:first-child {
    padding-block: 0 12px;
    margin-top: 24px;
  }
}
.bim-d-info-traits__name {
  font-size: 14px;
  line-height: 20px;
  margin-bottom: 8px;
}
@media only screen and (max-width: 640px) {
  .bim-d-info-traits__name {
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-info-traits__val {
    text-align: right;
  }
}
.bim-design {
  margin-top: 100px;
  display: block;
}
@media only screen and (max-width: 1200px) {
  .bim-design {
    display: none;
  }
  .show.bim-design {
    display: block;
    margin-top: 8px;
  }
}
@media only screen and (max-width: 640px) {
  .bim-design {
    margin-top: 0;
  }
}
.bim-design__subtitle {
  margin-top: 0;
  max-width: calc(1440px * 0.8);
  width: 80%;
}
@media only screen and (max-width: 1200px) {
  .bim-design__subtitle {
    font-size: 13px;
    line-height: 16px;
    width: 100%;
    max-width: unset;
    margin-inline: 0;
    text-align: left;
  }
}
.bim-design__imgs-shell {
  margin-top: 40px;
}
@media only screen and (max-width: 1024px) {
  .bim-design__imgs-shell {
    overflow-y: hidden;
    width: calc(100% + 2 * 20px);
    margin-top: 32px;
    margin-left: -20px;
  }
}
@media only screen and (max-width: 640px) {
  .bim-design__imgs-shell {
    width: calc(100% + 2 * 16px);
    margin-left: -16px;
  }
}
.bim-design__imgs {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media only screen and (max-width: 1200px) {
  .bim-design__imgs {
    gap: 16px;
  }
}
@media only screen and (max-width: 1024px) {
  .bim-design__imgs {
    grid-template-columns: repeat(3, 40%);
    padding-inline: 20px;
    padding-bottom: 40px;
    margin-bottom: -40px;
    overflow-x: auto;
  }
}
@media only screen and (max-width: 640px) {
  .bim-design__imgs {
    grid-template-columns: repeat(3, 70%);
    gap: 8px;
    padding-inline: 16px;
  }
}
.bim-design__img-shell {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  transition: scale 0.1s linear 0s;
  aspect-ratio: 0.79964539;
  overflow: hidden;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .bim-design__img-shell {
    aspect-ratio: 0.7969697;
  }
}
@media only screen and (min-width: 1025px) {
  .bim-design__img-shell:hover {
    scale: 1.006;
  }
}
.bim-design__img {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: scale 0.1s linear 0s;
}
@media only screen and (min-width: 1025px) {
  .bim-design__img-shell:hover .bim-design__img {
    scale: 1.01;
  }
}
.example-product-slider .bim-design__img {
  max-height: 564px;
}
@media only screen and (max-width: 640px) {
  .example-product-slider .bim-design__img {
    max-height: none;
  }
}
.bim-d-sls {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  background-color: #f5f5f7;
  align-self: start;
  padding: 16px;
}
@media only screen and (max-width: 1200px) {
  .bim-d-sls {
    background-color: transparent;
    padding: 0;
    margin-bottom: 40px;
    width: 100%;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-sls {
    margin: 0 0 32px;
  }
}
.bim-d-sls__thumbs-container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  display: none;
}
@media only screen and (min-width: 1201px) {
  .show.bim-d-sls__thumbs-container {
    animation: smooth-show 0.2s linear forwards;
    display: block;
    display: flex;
  }
}
.bim-d-sls-preview {
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 812px;
  margin-bottom: 24px;
}
@media only screen and (max-width: 1200px) {
  .bim-d-sls-preview {
    max-width: 100%;
    max-height: unset;
    margin-bottom: 0;
  }
}
.с-detail-platform .bim-d-sls-preview {
  max-width: 100%;
  max-height: 812px;
}
@media only screen and (max-width: 640px) {
  .с-detail-platform .bim-d-sls-preview {
    max-height: 533px;
  }
}
.bim-d-sls-preview__slide {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  width: 360px;
  height: 360px;
  opacity: 0 !important;
}
.swiper-slide-active.bim-d-sls-preview__slide {
  opacity: 1 !important;
}
@media only screen and (max-width: 1200px) {
  .bim-d-sls-preview__slide {
    height: 390px;
    opacity: 1;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-sls-preview__slide {
    padding-top: 75.80174927%;
    position: relative;
    overflow: hidden;
  }
}
.с-detail .bim-d-sls-preview__slide {
  border-radius: 8px;
  -webkit-border-radius: 8px;
  overflow: hidden;
  height: 712px;
}
@media only screen and (max-width: 640px) {
  .с-detail .bim-d-sls-preview__slide {
    max-height: 457px;
  }
}
.bim-d-sls-preview__slide-img {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  object-fit: cover;
  width: auto;
  max-height: 100%;
}
@media only screen and (max-width: 640px) {
  .bim-d-sls-preview__slide-img {
    transform: translate(-50%, -50%);
    position: absolute;
    left: 50%;
    top: 50%;
  }
}
.с-detail .bim-d-sls-preview__slide-img {
  border-radius: 8px;
  -webkit-border-radius: 8px;
  transition: scale 0.1s linear 0s;
  max-width: unset;
  width: auto;
  min-width: 100%;
  min-height: 100%;
}
@media only screen and (max-width: 1200px) {
  .с-detail .bim-d-sls-preview__slide-img {
    min-width: unset;
    min-height: unset;
  }
}
@media only screen and (max-width: 640px) {
  .с-detail .bim-d-sls-preview__slide-img {
    width: 100%;
  }
}
@media only screen and (min-width: 1025px) {
  .с-detail .bim-d-sls-preview__slide-img:hover {
    cursor: url('/assets-nd/img/blocks/zoom-cursor.webp'), auto;
    scale: 1.004;
  }
}
.с-detail--no-zoom .bim-d-sls-preview__slide-img {
  pointer-events: none;
}
@media only screen and (min-width: 1025px) {
  .с-detail--no-zoom .bim-d-sls-preview__slide-img:hover {
    cursor: initial;
  }
}
.bim-d-sls-preview__pagination {
  display: none;
}
@media only screen and (max-width: 1200px) {
  .bim-d-sls-preview__pagination {
    display: inline-block !important;
    bottom: 4px !important;
    margin-top: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .bim-d-sls-preview__pagination {
    bottom: -4px !important;
  }
}
@media only screen and (max-width: 1200px) {
  .bim-d-sls-preview__pagination .swiper-pagination-bullet {
    width: 6px !important;
    height: 6px !important;
    border-radius: 100% !important;
    display: inline-block !important;
    margin-inline: 3px !important;
  }
}
.bim-d-sls-preview__pagination .swiper-pagination-bullet-active {
  background-color: rgba(0, 0, 0, 0.7) !important;
}
.bim-d-sls-thumbs {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  min-width: 0;
  flex: 1 max-content;
}
.bim-d-sls-thumbs__btn {
  width: 32px;
  height: 32px;
  border-radius: 100%;
  border: 1px solid rgba(0, 0, 0, 0.15);
  background-color: #fff;
  flex: none;
}
.bim-d-sls-thumbs__btn:active,
.bim-d-sls-thumbs__btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.7);
}
.bim-d-sls-thumbs__btn--prev span {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.bim-d-sls-thumbs__btn--prev span::before {
  transform: translateY(-50%) rotate(135deg);
  position: absolute;
  top: 50%;
  display: block;
  width: 8px;
  height: 8px;
  right: 9px;
  content: '';
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
}
.bim-d-sls-thumbs__btn--next span {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.bim-d-sls-thumbs__btn--next span::before {
  transform: translateY(-50%) rotate(-45deg);
  position: absolute;
  top: 50%;
  display: block;
  width: 8px;
  height: 8px;
  right: 13px;
  content: '';
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
}
.swiper-button-disabled.bim-d-sls-thumbs__btn {
  background-color: transparent;
  cursor: not-allowed;
}
.swiper-button-disabled.bim-d-sls-thumbs__btn span::before {
  border-right: 1px solid rgba(0, 0, 0, 0.15);
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}
.swiper-button-disabled.bim-d-sls-thumbs__btn:active,
.swiper-button-disabled.bim-d-sls-thumbs__btn:focus-visible {
  box-shadow: unset;
}
.bim-d-sls-thumbs__wrapper {
  min-width: 0;
  width: 100%;
  padding-block: 10px;
  align-items: center;
  flex: 1;
  max-width: max-content;
}
.bim-d-sls-thumbs__slide {
  border-radius: 6px;
  -webkit-border-radius: 6px;
  cursor: pointer;
}
.swiper-slide-thumb-active.bim-d-sls-thumbs__slide {
  animation: smooth-show 0.2s linear forwards;
  display: 0.1s;
  margin-inline: 8px 16px !important;
  position: relative;
}
.swiper-slide-thumb-active.bim-d-sls-thumbs__slide::after {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  border-radius: 8px;
  -webkit-border-radius: 8px;
  content: '';
  display: block;
  width: 120%;
  height: 60px;
  border: 1px solid #000;
}
.bim-d-sls-thumbs__slide-img-container {
  padding-top: 100%;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  overflow: hidden;
  position: relative;
}
.bim-d-sls-thumbs__slide-img {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  object-fit: cover;
  height: 48px;
  width: auto;
}
.swiper-slide-thumb-active .bim-d-sls-thumbs__slide-img {
  border-radius: 6px;
  -webkit-border-radius: 6px;
}
.aside-menu__tab {
  display: flex;
  background-color: #fff;
}
@media only screen and (max-width: 640px) {
  .aside-menu__tab {
    background-color: transparent;
  }
}
@media only screen and (max-width: 640px) {
  .aside-menu__tab.show {
    background-color: transparent;
  }
}
.aside-menu__tab-submenu {
  width: 100%;
}
.aside-menu__tab-submenu.show {
  display: flex !important;
}
.aside-menu__tab-submenu.show > .aside-menu__tab-submenu-wrap {
  padding: 24px;
  min-width: 328px;
}
@media only screen and (max-width: 1024px) {
  .aside-menu__tab-submenu.show > .aside-menu__tab-submenu-wrap {
    min-width: auto;
    width: 33.3333vw;
  }
}
@media only screen and (max-width: 640px) {
  .aside-menu__tab-submenu.show > .aside-menu__tab-submenu-wrap {
    width: 100vw;
  }
}
@media only screen and (max-width: 640px) {
  .aside-menu__tab-submenu.show > .aside-menu__tab-submenu-wrap {
    background-color: #fff;
    position: absolute;
    inset: 0;
    z-index: 1015;
  }
}
.aside-menu__title {
  font-size: 18px;
  line-height: 24px;
  font-weight: 600;
  display: block;
  padding: 8px 12px;
  margin-bottom: 16px;
}
.aside-menu__link {
  border-radius: 24px;
  -webkit-border-radius: 24px;
  transition: background-color 0.1s linear 0s;
  display: flex;
  gap: 12px;
  padding: 8px 12px;
  min-height: 40px;
  font-weight: 500;
  text-decoration: none;
}
.aside-menu__link--small {
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
  display: block;
  padding: 6px 12px;
  min-height: 32px;
}
.aside-menu__link--sub-menu {
  position: relative;
  padding-right: 36px;
}
.aside-menu__link--sub-menu::after {
  transform: translateY(-50%) rotate(-45deg);
  position: absolute;
  top: 50%;
  display: block;
  width: 6px;
  height: 6px;
  right: 14px;
  left: unset;
  content: '';
  border-bottom: 2px solid #000;
  border-right: 2px solid #000;
}
.catalog-aside__tabs .aside-menu__link--sub-menu {
  font-size: 14px;
  line-height: 20px;
  padding-block: 16px;
}
.active.aside-menu__link {
  background-color: #ececee;
}
.catalog-aside__filter-shell .active.aside-menu__link {
  background-color: transparent;
}
.aside-menu__submenu-item {
  margin-bottom: 16px;
}
.aside-menu__submenu-item:last-child {
  margin-bottom: 0;
}
.aside-menu__back-btn-wrap {
  display: none;
  background-color: #fff;
  position: relative;
  z-index: 1100;
  padding-bottom: 12px;
  margin-bottom: 12px;
  border-bottom: 1px solid #dedede;
}
@media only screen and (max-width: 640px) {
  .aside-menu__back-btn-wrap {
    display: block;
  }
}
.aside-menu__back-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-left: 12px;
}
.catalog__slider {
  margin-bottom: 50px;
}
@media only screen and (max-width: 1024px) {
  .catalog__slider {
    width: calc(100% + 2 * 20px);
    margin-left: -20px;
    padding-inline: 20px;
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .catalog__slider {
    width: calc(100% + 2 * 16px);
    margin-left: -16px;
    padding-inline: 16px;
    margin-bottom: 32px;
  }
}
.catalog__slider-slide {
  align-self: stretch;
  align-items: start;
}
.catalog__body {
  display: grid;
  grid-auto-columns: 333px 1fr;
  grid-template-areas: 'aside search' 'aside content' 'aside .';
  gap: 20px;
  align-items: start;
  margin-top: 52px;
}
@media only screen and (max-width: 1024px) {
  .catalog__body {
    grid-template-columns: 1fr;
    grid-template-areas: 'search' 'aside' 'content';
    margin-top: 16px;
  }
}
.catalog__body.no-result {
  display: block;
  column-count: 2;
}
@media only screen and (max-width: 1024px) {
  .catalog__body.no-result {
    display: grid;
    column-count: unset;
  }
}
.catalog__body--without-aside {
  grid-template-columns: 1fr;
  grid-template-areas: 'content';
}
.catalog__search {
  display: flex;
  gap: 16px;
  grid-area: search;
}
.no-result .catalog__search {
  margin-top: 1000%;
  margin-left: calc(-100% + 333px);
}
@media only screen and (max-width: 1024px) {
  .no-result .catalog__search {
    margin: unset;
  }
}
.catalog__search-box {
  flex: 1;
}
@media only screen and (max-width: 1024px) {
  .catalog__search-btn {
    display: none;
  }
}
.catalog__aside {
  grid-area: aside;
  overflow-x: clip;
  position: sticky;
  top: 140px;
}
@media only screen and (max-width: 1320px) {
  .catalog__aside {
    top: 100px;
  }
}
@media only screen and (max-width: 1024px) {
  .catalog__aside {
    position: relative;
    top: unset;
  }
}
.no-result .catalog__aside {
  width: 333px;
}
@media only screen and (max-width: 1024px) {
  .no-result .catalog__aside {
    width: 100%;
  }
}
.catalog__content {
  grid-area: content;
}
.no-result .catalog__content {
  margin-left: calc(-100% + 333px);
  padding-inline: 2px;
}
@media only screen and (max-width: 1024px) {
  .no-result .catalog__content {
    margin-left: 0;
  }
}
@media only screen and (max-width: 640px) {
  .no-result .catalog__content {
    padding-inline: 0;
  }
}
.catalog__title-close-btn {
  font-size: 13px;
  line-height: 16px;
  position: absolute;
  top: -40px;
  left: 0;
  color: #bb0000;
  display: none;
}
@media only screen and (max-width: 1024px) {
  .catalog__title-close-btn {
    display: none;
  }
}
.show.catalog__title-close-btn {
  animation: smooth-show 0.2s linear forwards;
  display: block;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
}
@media only screen and (max-width: 1024px) {
  .show.catalog__title-close-btn {
    display: none;
  }
}
.catalog__title-close-btn .btn--close:after,
.catalog__title-close-btn .btn--close:before {
  background-color: #bb0000;
}
.catalog-aside__shell {
  display: flex;
  flex-direction: column;
  gap: 20px;
  transition: height 0.1s linear 0s;
  overflow: auto;
  width: calc(100% + 20px);
  padding-right: 20px;
  margin-bottom: -50px;
  padding-bottom: 50px;
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__shell {
    gap: 8px;
    flex-direction: row;
    height: unset;
    width: 100%;
    padding: 2px;
    margin-bottom: 0;
  }
}
.catalog-aside__main-title {
  display: block;
  margin-bottom: 20px;
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__main-title {
    font-size: 17px;
    line-height: 20px;
    margin-bottom: 24px;
  }
}
.catalog-aside__clear-btn {
  font-size: 16px;
  line-height: 24px;
  text-align: center;
  color: #000;
}
.catalog-aside__clear-btn:hover {
  opacity: 0.7;
}
.catalog-aside__filter-shell-btns .catalog-aside__clear-btn.disable {
  color: #b3b3b3;
  pointer-events: none;
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__title-shell--filters .catalog-aside__clear-btn {
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    display: block;
    color: #214f99;
    left: unset;
    right: 0;
    padding: 0;
  }
}
@media only screen and (max-width: 1024px) {
  .show .catalog-aside__title-shell {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0px;
    position: relative;
    background-color: #fff;
    top: 0;
    width: 100%;
    padding: 14px 0;
    margin-bottom: 24px;
  }
  .show .catalog-aside__title-shell::after {
    transform: translateX(-50%);
    position: absolute;
    left: 50%;
    background-color: #dedede;
    bottom: 0;
    content: "";
    width: 100svw;
    height: 1px;
  }
}
.catalog-aside__title-shell--filters {
  display: none;
}
.catalog-aside__title {
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
  margin-bottom: 16px;
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__title {
    font-weight: 600;
  }
  .catalog-aside__title-shell--filters .catalog-aside__title {
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 1024px) {
  .show .catalog-aside__title-close-btn {
    transform: translateY(-50%);
    position: absolute;
    top: 50%;
    left: 0;
  }
}
.catalog-aside__filters-open-btn {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__filters-open-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 12px 16px;
    background-color: #f5f5f7;
    max-width: max-content;
  }
}
@media only screen and (max-width: 640px) {
  .catalog-aside__filters-open-btn {
    justify-content: start;
    width: 100%;
    max-width: 100%;
  }
}
@media only screen and (min-width: 1025px) {
  .catalog-aside__filters-open-btn:hover {
    background-color: #f5f5f7;
    opacity: 0.7;
  }
}
.catalog-aside__filters-open-btn-figure {
  display: none;
}
.figure .catalog-aside__filters-open-btn-figure {
  width: 24px;
  height: 24px;
  border-radius: 100%;
  font-size: 14px;
  line-height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  font-weight: 600;
  background-color: rgba(0, 0, 0, 0.15);
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__filters-shell {
    display: none;
  }
  .catalog-aside__filters-shell.show {
    display: flex;
    flex-direction: column;
    gap: 0px;
    background-color: #fff;
    overflow-y: auto;
    width: 100dvw;
    height: 100dvh;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1030;
    padding: 0 20px 90px;
  }
}
@media only screen and (max-width: 640px) {
  .catalog-aside__filters-shell.show {
    padding-inline: 16px;
  }
}
.catalog-aside__filter-shell {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  background-color: #f5f5f7;
  padding: 20px;
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__filter-shell {
    background-color: transparent;
    padding: 0;
  }
}
.catalog-aside__filter-shell + .catalog-aside__filter-shell {
  margin-top: 20px;
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__filter-shell + .catalog-aside__filter-shell {
    margin-top: 40px;
  }
}
@media only screen and (min-width: 1025px) {
  .catalog-aside__filter-shell--selects {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__filter-shell + .catalog-aside__filter-shell--selects {
    margin-top: auto;
  }
}
.catalog-aside__filter-shell-item {
  margin-bottom: 20px;
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__filter-shell-item {
    margin-bottom: 0;
  }
}
.catalog-aside__filter-shell-item:last-child {
  margin-bottom: 0;
}
.catalog-aside__filter-shell-btns {
  display: flex;
  flex-direction: column;
  gap: 16px;
  display: none;
  align-items: center;
  margin-top: 24px;
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__filter-shell-btns {
    display: block;
  }
}
.catalog-aside__filter-shell-apply-btn {
  font-size: 14px;
  line-height: 20px;
  font-weight: 600;
}
.catalog-aside__filter-shell-apply-btn.disable {
  pointer-events: none;
  color: #b3b3b3;
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__filters-shell.show .catalog-aside__filter-shell-apply-btn {
    transform: translateX(-50%);
    position: absolute;
    left: 50%;
    position: fixed;
    bottom: 40px;
    width: calc(100dvw - 2 * 20px);
    max-width: calc(100dvw - 2 * 20px);
    z-index: 1030;
  }
}
@media only screen and (max-width: 640px) {
  .catalog-aside__filters-shell.show .catalog-aside__filter-shell-apply-btn {
    width: calc(100dvw - 2 * 16px);
    max-width: calc(100dvw - 2 * 16px);
  }
}
.catalog-aside__filters {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__filters {
    flex-direction: row;
    flex-wrap: wrap;
  }
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__filters--btns {
    gap: 24px;
    flex-direction: column;
  }
}
.hide.catalog-aside__filters-select {
  display: none;
}
.catalog-aside__filter-btn {
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__filter-btn {
    font-size: 12px;
    line-height: 16px;
  }
}
.active.catalog-aside__filter-btn {
  background-color: #000;
  color: #fff;
}
.catalog-aside__search-box::after {
  transform: translateY(calc(50% - 8px));
  content: '';
  position: absolute;
  border: solid transparent;
  border-width: 6px 5px 0;
  border-top-color: inherit;
  transform-origin: 50% 0 0;
  top: calc(50% + 2px);
  right: 20px;
  content: "";
  color: #000;
}
.value.catalog-aside__search-box::after {
  content: unset;
}
.catalog-aside__tabs {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__tabs {
    display: flex;
    gap: 0;
  }
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__filter-shell + .catalog-aside__tabs {
    margin-top: 40px;
    border-bottom: 1px solid #dedede;
  }
}
.catalog-aside__tab-submenu {
  display: block;
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__tab-submenu {
    display: none;
  }
}
.catalog-aside__tab-submenu.show {
  display: flex !important;
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__tab-submenu.show {
    animation: smooth-show 0.2s linear forwards;
    display: flex;
    position: fixed;
    inset: 0;
    top: 48px !important;
    z-index: 1000;
    visibility: visible;
    animation: blur 0.7s ease forwards;
    flex-direction: column;
    width: 100vw;
    background-color: #fff;
    padding: 32px 20px;
  }
}
@media only screen and (max-width: 640px) {
  .catalog-aside__tab-submenu.show {
    position: absolute;
    inset: 0;
    z-index: 1015;
  }
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__tab-submenu.show .catalog-aside__title {
    display: none;
  }
}
@media only screen and (max-width: 1024px) {
  .catalog-aside__tab-submenu.show .aside-menu__back-btn {
    margin-left: 0;
  }
}
@media only screen and (max-width: 1400px) {
  .catalog-aside .aside-menu__link {
    border-radius: 0px;
    -webkit-border-radius: 0px;
    width: 100%;
    padding-left: 0;
  }
}
@media only screen and (max-width: 1400px) {
  .catalog-aside .d-menu__tab-container {
    border-bottom: 1px solid rgba(4, 4, 5, 0.15);
  }
  .catalog-aside .d-menu__tab-container:last-child {
    border-bottom: none;
  }
}
.no-result .catalog-content__result {
  display: none;
}
.no-result .catalog-content__no-result .catalog-content__result {
  display: block;
}
.catalog-content__result-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media only screen and (max-width: 1240px) {
  .catalog-content__result-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 640px) {
  .catalog-content__result-list {
    grid-template-columns: 1fr;
  }
}
@media only screen and (max-width: 1240px) {
  .catalog__body--without-aside .catalog-content__result-list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media only screen and (max-width: 1024px) {
  .catalog__body--without-aside .catalog-content__result-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 640px) {
  .catalog__body--without-aside .catalog-content__result-list {
    grid-template-columns: 1fr;
  }
}
.catalog__body--without-aside .catalog-content__result-list--platform {
  grid-template-columns: repeat(2, 1fr);
}
@media only screen and (max-width: 1240px) {
  .catalog__body--without-aside .catalog-content__result-list--platform {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 640px) {
  .catalog__body--without-aside .catalog-content__result-list--platform {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}
.catalog-content__no-result {
  display: none;
}
.no-result .catalog-content__no-result {
  display: block;
}
.catalog-content__no-result-text-shell {
  display: flex;
  gap: 8px;
  padding-block: 32px 44px;
}
@media only screen and (max-width: 1024px) {
  .catalog-content__no-result-text-shell {
    flex-direction: column;
    align-items: center;
  }
}
.catalog-content__no-result-title {
  margin-bottom: 32px;
}
.catalog-content__no-result-text {
  font-size: 18px;
  line-height: 24px;
  font-weight: 500;
}
@media only screen and (max-width: 640px) {
  .catalog-content__no-result-text {
    font-size: 16px;
    line-height: 24px;
    text-align: center;
    max-width: 206px;
  }
}
.contacts {
  padding-top: 156px !important;
}
@media only screen and (max-width: 1024px) {
  .contacts {
    padding-top: 72px;
  }
}
@media only screen and (max-width: 1023px) {
  .contacts {
    padding-top: 0 !important;
  }
}
.contacts .container {
  display: grid;
  grid-template-columns: auto max-content;
  column-gap: 40px;
  row-gap: 64px;
}
@media only screen and (max-width: 1024px) {
  .contacts .container {
    grid-template-columns: auto;
    row-gap: 24px;
  }
}
.contacts__contact-info {
  display: flex;
  flex-direction: column;
  gap: 20px;
  flex-shrink: 0;
  margin-top: 150px;
}
@media only screen and (max-width: 1024px) {
  .contacts__contact-info {
    margin-top: 0;
    padding-bottom: 8px;
  }
}
.contacts__contact-info_label {
  font-size: 16px;
  line-height: 20px;
  color: #6c6c6c;
}
@media only screen and (max-width: 1024px) {
  .contacts__contact-info_label {
    font-size: 12px;
    line-height: 16px;
  }
}
.contacts__contact-info_value {
  font-size: 20px;
  line-height: 24px;
}
@media only screen and (max-width: 1024px) {
  .contacts__contact-info_value {
    font-size: 14px;
    line-height: 20px;
    font-weight: 500;
  }
}
.contacts__container {
  display: grid;
  gap: 64px 24px;
  grid-template-columns: 1fr 1fr 1fr;
  margin-bottom: 64px;
}
@media only screen and (max-width: 1024px) {
  .contacts__container {
    display: flex;
    flex-direction: column;
    gap: 16px;
  }
}
.contacts__map {
  filter: invert(87%);
  height: 360px;
  width: 100%;
}
@media only screen and (max-width: 640px) {
  .contacts__map {
    height: 514px;
  }
}
.contacts__paragraph {
  font-size: 16px;
  line-height: 20px;
}
@media only screen and (max-width: 1024px) {
  .contacts__paragraph {
    font-size: 14px;
    line-height: 20px;
  }
}
.contacts__column {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.contacts__column_small {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.contacts__content {
  position: relative;
}
.contacts-form__contact-form-shell {
  margin-top: 56px;
}
@media only screen and (max-width: 1024px) {
  .contacts-form__contact-form-shell {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .contacts-form__contact-form-shell {
    margin-top: 32px;
  }
}
.contacts-map__items {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
  margin-bottom: 56px;
}
@media only screen and (max-width: 1024px) {
  .contacts-map__items {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .contacts-map__items {
    grid-template-columns: 1fr;
    gap: 0;
    margin-bottom: 32px;
    text-align: left;
  }
}
.contacts-map__info {
  display: flex;
  flex-direction: column;
  gap: 28px;
  margin-top: 30px;
}
.contacts-map__info-block {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.contacts-org__contacts-text {
  color: rgba(0, 0, 0, 0.7);
  margin-bottom: 16px;
}
.contacts-org__contacts-text:last-child {
  margin-bottom: 0;
}
.contacts-org__contacts {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
  text-align: center;
  margin-top: 32px;
}
@media only screen and (max-width: 1024px) {
  .contacts-org__contacts {
    margin-top: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .contacts-org__contacts {
    margin-top: 16px;
  }
}
.header-slider {
  margin-top: auto;
  position: relative;
  width: 100%;
  margin-bottom: 32px;
}
@media only screen and (max-width: 1024px) {
  .header-slider {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 556px) {
  .header-slider {
    margin-bottom: 16px;
  }
}
.header-slider__slide {
  display: flex;
  flex-direction: column;
  justify-content: end;
  width: 100%;
}
@media only screen and (max-width: 1024px) {
  .header-slider__slide {
    flex-direction: column;
    align-items: start;
    justify-content: end;
  }
}
.header-slider__slide-wrapper {
  display: flex;
  justify-content: space-between;
  gap: 24px;
  align-items: center;
  width: 100%;
}
@media only screen and (max-width: 640px) {
  .header-slider__slide-wrapper {
    flex-direction: column;
    align-items: start;
  }
}
.header-slider__statement {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-self: center;
  height: 100%;
}
.header-slider__statement--short {
  max-width: 400px;
}
@media only screen and (max-width: 1024px) {
  .header-slider__statement {
    align-self: start;
  }
}
.header-slider__h1 {
  max-width: 811px;
  transform: translateX(-7px);
  margin-block: 0 32px;
}
@media only screen and (max-width: 1200px) {
  .header-slider__h1 {
    transform: translateX(-3px);
  }
}
@media only screen and (max-width: 556px) {
  .header-slider__h1 {
    margin-bottom: 16px;
    transform: translateX(-1px);
  }
}
.header-slider__subtitle {
  font-size: 18px;
  line-height: 28px;
  max-width: 600px;
  align-self: start;
}
@media only screen and (max-width: 1200px) {
  .header-slider__subtitle {
    font-size: 16px;
    line-height: 24px;
  }
}
@media only screen and (max-width: 556px) {
  .header-slider__subtitle {
    font-size: 14px;
    line-height: 16px;
  }
}
.header-slider__description {
  font-size: 16px;
  line-height: 24px;
  padding: 16px;
  max-width: 506px;
  background-color: rgba(0, 0, 0, 0.4);
}
.header-slider__description p + p {
  margin-top: 20px;
}
@media only screen and (max-width: 640px) {
  .header-slider__description p + p {
    margin-top: 10px;
  }
}
@media only screen and (max-width: 1200px) {
  .header-slider__description {
    font-size: 14px;
    line-height: 20px;
    max-width: 453px;
  }
}
@media only screen and (max-width: 640px) {
  .header-slider__description {
    font-size: 14px;
    line-height: 16px;
    max-width: 100%;
  }
}
@media only screen and (max-width: 376px) {
  .header-slider__description {
    font-size: 12px;
    line-height: 16px;
  }
}
.header-slider__swiper-controls {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0px;
  gap: 30px;
  position: relative;
  width: 100%;
}
.header-slider__swiper-controls .swiper-pagination-bullet-active {
  opacity: 0.5;
}
.header-slider__buttons-container {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  gap: 60px;
}
@media only screen and (max-width: 640px) {
  .header-slider__buttons-container {
    display: none;
  }
}
.model-slider {
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 1024px) {
  .model-slider {
    width: calc(100% + 2 * 20px);
    margin-left: -20px;
  }
}
.model-slider__slide {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  background-color: #f5f5f7;
  align-items: start;
  position: relative;
  overflow: hidden;
  min-height: 560px !important;
  height: auto !important;
  padding: 80px 99px;
}
@media only screen and (max-width: 1024px) {
  .model-slider__slide {
    border-radius: 0px;
    -webkit-border-radius: 0px;
    padding: 60px 20px;
  }
}
@media only screen and (max-width: 640px) {
  .model-slider__slide {
    flex-direction: column-reverse;
    padding: 40px 16px;
  }
}
.model-slider__slide--blue {
  background-color: #070f1e;
  color: #fff;
}
@media only screen and (max-width: 1024px) {
  .model-slider__slide--instrum {
    flex-direction: row;
  }
}
.model-slider__slide-title {
  margin-bottom: 16px;
}
@media only screen and (max-width: 640px) {
  .model-slider__slide-title {
    margin-bottom: 12px;
  }
}
.model-slider__slide-text {
  font-size: 18px;
  line-height: 32px;
  font-weight: 500;
  display: block;
  margin-bottom: 40px;
}
@media only screen and (max-width: 1024px) {
  .model-slider__slide-text {
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .model-slider__slide-text {
    margin-bottom: 24px;
  }
}
.model-slider ul {
  list-style: disc;
  padding-left: 24px;
  margin-bottom: 52px;
}
@media only screen and (max-width: 1400px) {
  .model-slider ul {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .model-slider ul {
    margin-bottom: 32px;
  }
}
.model-slider ul li {
  font-size: 18px;
  line-height: 24px;
  font-weight: 600;
  margin-top: 16px;
}
@media only screen and (max-width: 1024px) {
  .model-slider ul li {
    font-size: 16px;
    line-height: 20px;
  }
}
.model-slider ul li:last-child {
  margin-bottom: 0;
}
.model-slider__slide-img-shell {
  position: relative;
  z-index: 1;
  margin-right: 10%;
}
@media only screen and (max-width: 1200px) {
  .model-slider__slide-img-shell {
    margin-right: 0;
  }
}
@media only screen and (max-width: 640px) {
  .model-slider__slide-img-shell {
    align-self: center;
  }
}
.model-slider__slide-img-shell--instrum {
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  aspect-ratio: 1;
  right: 0;
  height: 100%;
  margin-right: 0;
}
@media only screen and (max-width: 640px) {
  .model-slider__slide-img-shell--instrum {
    transform: translateX(-50%);
    position: absolute;
    left: 50%;
    top: 0;
  }
}
.model-slider__slide-img {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  max-height: 400px;
  max-width: 400px;
}
@media only screen and (max-width: 1024px) {
  .model-slider__slide-img {
    border-radius: 10px;
    -webkit-border-radius: 10px;
    max-height: 356px;
    max-width: 356px;
  }
}
@media only screen and (max-width: 640px) {
  .model-slider__slide-img {
    max-width: 256px;
    max-height: 256px;
  }
}
.model-slider__slide-img-shell--instrum .model-slider__slide-img {
  max-width: unset;
  max-height: unset;
}
.model-slider__slide-img-title {
  display: none;
}
@media only screen and (min-width: 1025px) {
  .model-slider__slide-img-shell:hover .model-slider__slide-img-title {
    animation: smooth-show 0.2s linear forwards;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    font-size: 14px;
    line-height: 20px;
    background-color: #000;
    color: #fff;
    display: block;
    position: absolute;
    top: 15%;
    left: -18%;
    min-width: 172px;
    max-width: min-content;
    padding: 12px;
  }
  .model-slider__slide-img-shell:hover .model-slider__slide-img-title::after {
    display: block;
    width: 10px;
    height: 10px;
    background-color: #000;
    content: '';
    rotate: 45deg;
    position: absolute;
    top: 16px;
    right: -5px;
    z-index: -1;
  }
}
.model-slider__pagination {
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  display: flex;
  flex-direction: column;
  right: 20px !important;
  gap: 8px;
  margin: 0;
}
@media only screen and (max-width: 640px) {
  .model-slider__pagination {
    top: 16px !important;
    left: 16px !important;
    height: max-content;
    transform: unset;
    flex-direction: row;
  }
}
.model-slider__pagination .swiper-pagination-bullet {
  display: block !important;
  background-color: #b3b3b3 !important;
  opacity: 1 !important;
  position: relative;
  overflow: hidden;
  margin: 0 !important;
}
@media only screen and (max-width: 640px) {
  .model-slider__pagination .swiper-pagination-bullet {
    border-radius: 4px !important;
    -webkit-border-radius: 4px !important;
    width: 8px !important;
    height: 8px !important;
  }
}
.model-slider__pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #4d4d4d !important;
}
.model-slider__pagination .swiper-pagination-bullet.swiper-pagination-bullet-active:first-child:last-child {
  display: none !important;
}
.model-slider__pagination.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next,
.model-slider__pagination .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(1) !important;
}
.model-slider__pagination.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next,
.model-slider__pagination .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.5) !important;
}
.main-slider {
  position: relative;
}
.main-slider__bg-shell {
  position: absolute;
  inset: 0;
  background: linear-gradient(335.97deg, rgba(0, 0, 0, 0.7) 15.59%, rgba(0, 0, 0, 0.339062) 33.87%, rgba(0, 0, 0, 0) 55.25%);
  filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
  transform: matrix(-1, 0, 0, 1, 0, 0);
  z-index: -1;
}
.main-slider__bg-shell--transform-none {
  transform: none;
}
.main-slider__adaptive-video .main-slider__bg-shell {
  background: none;
}
.main-slider__adaptive-video {
  background-size: cover;
}
.main-slider__bg {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.main-slider__adaptive-video .main-slider__bg {
  display: none;
}
@media only screen and (max-width: 640px) {
  .main-slider__adaptive-video .main-slider__bg {
    display: block;
    margin-top: 45px;
    max-width: 100%;
    height: auto;
  }
}
@media only screen and (max-width: 374px) {
  .main-slider__adaptive-video .main-slider__bg {
    display: block;
    margin-top: 65px;
  }
}
.main-slider__bg-video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}
@media only screen and (max-width: 640px) {
  .main-slider__adaptive-video .main-slider__bg-video {
    display: none;
  }
}
.main-slider__main-title {
  font-size: clamp(3em, 14.5vw, 14em);
  font-weight: 600;
  line-height: 224px;
  letter-spacing: -0.14px;
  margin-bottom: 50px;
}
@media only screen and (max-width: 1024px) {
  .main-slider__main-title {
    line-height: 120px;
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .main-slider__main-title {
    font-size: clamp(1em, 23vw, 6em);
    line-height: 79px;
    margin-bottom: 24px;
  }
}
@media only screen and (max-width: 640px) {
  .main-slider__main-title:last-child {
    margin-block: auto;
  }
}
.main-slider__main-title .white-30 {
  color: rgba(255, 255, 255, 0.3);
}
.main-slider__sub-title {
  margin-top: 24px;
}
.main-slider__sub-title--black {
  color: #000;
}
@media only screen and (max-width: 1024px) {
  .main-slider__sub-title {
    margin-top: 12px;
  }
}
.main-slider__title {
  margin-bottom: 32px;
}
@media only screen and (max-width: 1024px) {
  .main-slider__title {
    margin-bottom: 24px;
  }
}
.main-slider__title--short {
  max-width: 702px;
}
@media only screen and (max-width: 1024px) {
  .main-slider__title--short {
    max-width: 100%;
  }
}
.main-slider__title--short-scale {
  max-width: 40%;
}
@media only screen and (max-width: 640px) {
  .main-slider__title--short-scale {
    max-width: 100%;
  }
}
.main-slider__title--black {
  color: #000;
}
.main-slider__btn-link {
  position: relative;
  z-index: 2;
}
.main-slider__pagination-shell {
  transform: translateX(-50%);
  position: absolute;
  left: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  bottom: 55px;
  width: 100%;
  max-width: 686px;
  z-index: 1;
}
.main-slider__pagination {
  border-radius: 2px;
  -webkit-border-radius: 2px;
  position: static;
  display: flex;
  flex: 1;
  height: 4px;
  margin-top: 0;
  gap: 10px;
  margin-inline: auto;
}
@media only screen and (max-width: 1024px) {
  .main-slider__pagination {
    display: none;
  }
}
.main-slider__pagination.swiper-pagination-lock {
  display: none;
}
.main-slider .swiper-pagination-bullet {
  background-color: rgba(255, 255, 255, 0.15);
  opacity: 1;
  position: relative;
  display: block;
  height: 4px;
  width: 100%;
  border-radius: 2px;
  margin: 0;
}
.main-slider .swiper-pagination-bullet::before {
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  display: block;
  content: '';
  height: 20px;
  width: 100%;
}
.main-slider .swiper-pagination-bullet:after {
  border-radius: 4px;
  -webkit-border-radius: 4px;
  background-color: #fff !important;
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0;
}
.main-slider .swiper-pagination-bullet-active::after {
  animation: animateSlide 5.3s linear;
  animation-play-state: running !important;
}
.js-main-slider-stop.main-slider .swiper-pagination-bullet-active::after {
  animation-play-state: paused !important;
}
.main-slider__btn-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  width: 20px;
  height: 20px;
}
@media only screen and (max-width: 1024px) {
  .main-slider__btn-toggle {
    display: none;
  }
}
.swiper-pagination-lock + .main-slider__btn-toggle {
  display: none;
}
.main-slider__navigation {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  overflow: hidden;
  position: absolute;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 40px !important;
  height: 40px !important;
  border: 1px solid rgba(255, 255, 255, 0.12) !important;
  background: url('/assets-nd/img/svg/arrow-slider.svg') no-repeat center;
  background-size: 10px;
}
@media only screen and (max-width: 1024px) {
  .main-slider__navigation {
    display: none;
  }
}
.main-slider__navigation::after {
  content: none !important;
}
.main-slider__navigation--prev {
  left: 20px !important;
  transform: rotate(-180deg) translateY(50%) !important;
}
.main-slider__navigation--next {
  right: 20px !important;
}
.main-slider__slide {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  overflow: hidden;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  color: #fff;
  min-height: 628px;
  padding: 80px;
}
@media only screen and (max-width: 1024px) {
  .main-slider__slide {
    min-height: 400px;
    padding: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .main-slider__slide {
    min-height: 488px;
    padding: 32px 16px;
  }
}
.main-slider__slide--orange-bg {
  background-color: #f08833;
}
.main-slider__slide--content-top {
  justify-content: start;
  padding: 92px 70px;
}
@media only screen and (max-width: 1024px) {
  .main-slider__slide--content-top {
    padding: 76px 36px 40px;
  }
}
@media only screen and (max-width: 640px) {
  .main-slider__slide--content-top {
    padding: 32px 16px;
    justify-content: flex-end;
  }
}
.main-slider__btn-toggle-item {
  display: block;
}
.js-main-slider-stop .main-slider__btn-toggle-item {
  display: none;
}
.main-slider__btn-toggle-item--pause {
  display: none;
}
.js-main-slider-stop .main-slider__btn-toggle-item--pause {
  display: block;
}
@keyframes animateSlide {
  from {
    width: 0;
  }
  to {
    width: 100%;
  }
}
.our-projects__link {
  width: 100%;
}
@media only screen and (min-width: 1025px) {
  .our-projects__link:hover {
    scale: 1.005;
  }
}
.our-projects__video {
  width: 100%;
  aspect-ratio: 1.77777778;
}
.our-projects__link,
.our-projects__video {
  transition: scale 0.1s linear 0s;
  border-radius: 30px;
  -webkit-border-radius: 30px;
  overflow: hidden;
  margin-top: 40px;
}
@media only screen and (max-width: 1024px) {
  .our-projects__link,
  .our-projects__video {
    border-radius: 20px;
    -webkit-border-radius: 20px;
    margin-top: 32px;
  }
}
.our-projects__link:first-child,
.our-projects__video:first-child {
  margin-top: 0;
}
.our-projects__img {
  transition: scale 0.2s linear 0s;
  height: auto;
  object-fit: cover;
}
@media only screen and (min-width: 1025px) {
  .our-projects__link:hover .our-projects__img,
  .section__inner-gap:hover .our-projects__img {
    scale: 1.01;
  }
}
.products__items {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  margin-top: 52px;
}
@media only screen and (max-width: 1200px) {
  .products__items {
    display: grid;
    gap: 16px;
    grid-template-columns: repeat(2, 1fr);
    margin-top: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .products__items {
    grid-template-columns: 1fr;
    margin-top: 32px;
  }
}
.products__items--main-page {
  margin-top: 0;
}
.products__item {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  transition: scale 0.1s linear 0s;
  background-color: #12264e;
  color: #fff;
  align-items: flex-end;
  text-align: center;
  aspect-ratio: 1;
  width: calc((100% - 2 * 20px) / 3);
  position: relative;
  overflow: hidden;
  padding: 48px;
}
@media only screen and (max-width: 1200px) {
  .products__item {
    padding: 32px;
    width: 100%;
  }
}
@media only screen and (max-width: 640px) {
  .products__item {
    padding: 24px;
  }
}
.products__item--stretch {
  aspect-ratio: 1.3;
  width: calc((100% - 20px) / 2);
}
@media only screen and (max-width: 1200px) {
  .products__item--stretch {
    width: 100%;
    aspect-ratio: 1;
  }
}
.products__item--instrum {
  width: calc((100% - 20px) / 2);
  flex: none;
}
@media only screen and (max-width: 1024px) {
  .products__item--instrum {
    aspect-ratio: 1.82;
    width: 100%;
  }
}
@media only screen and (max-width: 640px) {
  .products__item--el-detail {
    aspect-ratio: 1.21631206;
  }
}
@media only screen and (min-width: 1025px) {
  .products__item:hover {
    scale: 1.006;
  }
}
.products__item--no-animate {
  align-items: flex-start;
  background-color: #070f1e;
}
@media only screen and (min-width: 1025px) {
  .products__item--with-banner:hover {
    scale: 1.002;
  }
}
.products__item--catalog {
  gap: 16px;
  flex-direction: row-reverse;
  justify-content: flex-end;
  text-align: left;
  aspect-ratio: unset;
  padding: 32px;
  min-height: 224px;
  margin-right: 20px;
}
@media only screen and (max-width: 1024px) {
  .products__item--catalog {
    padding: 16px;
    margin-right: 8px;
  }
}
.products__item--catalog.products__item--no-animate {
  justify-content: flex-end;
}
.instrum__shell .products__item {
  position: sticky;
  top: 120px;
  align-self: start;
}
@media only screen and (max-width: 1320px) {
  .instrum__shell .products__item {
    top: 80px;
  }
}
@media only screen and (max-width: 1024px) {
  .instrum__shell .products__item {
    position: relative;
    top: 0;
  }
}
.products__item--gradient {
  background: linear-gradient(244.39deg, #020919 25.37%, #274786 100%);
}
.products__img-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  position: absolute;
  inset: 0;
  overflow: hidden;
}
.products__img-wrap:before {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  margin-top: -330px;
  content: '';
  border: 1000px solid transparent;
  border-bottom: 400px solid rgba(0, 0, 0, 0.3);
  transition: border 0.3s ease;
}
@media only screen and (min-width: 1025px) {
  .products__item:hover .products__img-wrap:before {
    border: 800px solid rgba(0, 0, 0, 0.3);
  }
}
.products__item--no-animate .products__img-wrap:before {
  border: none;
}
@media only screen and (min-width: 1025px) {
  .products__item--no-animate:hover .products__img-wrap:before {
    border: none;
  }
}
.products__item--instrum .products__img-wrap:before {
  margin-top: -200px;
}
@media only screen and (max-width: 1024px) {
  .products__item--instrum .products__img-wrap:before {
    margin-top: -250px;
  }
}
@media only screen and (max-width: 640px) {
  .products__item--instrum .products__img-wrap:before {
    margin-top: -280px;
  }
}
.products__item--el-detail .products__img-wrap:before {
  margin-top: -350px;
}
@media only screen and (max-width: 1024px) {
  .products__item--el-detail .products__img-wrap:before {
    margin-top: -320px;
  }
}
.catalog .products__img-wrap {
  overflow: unset;
  max-width: 300px;
  inset: unset;
  right: -50px;
  bottom: -70px;
}
@media only screen and (max-width: 1024px) {
  .catalog .products__img-wrap {
    max-width: 230px;
    right: -40px;
    bottom: -50px;
  }
}
@media only screen and (max-width: 520px) {
  .catalog .products__img-wrap {
    max-width: 200px;
  }
}
@media only screen and (max-width: 374px) {
  .catalog .products__img-wrap {
    display: none;
  }
}
.products__item--no-animate .products__img-wrap {
  bottom: 0;
}
.products__item--gradient .products__img-wrap {
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  right: 0;
  bottom: unset;
}
.products__item--gradient .products__img-wrap::before {
  content: unset;
}
.products__item--production.products__item--gradient .products__img-wrap {
  max-width: 50%;
  max-height: 100%;
  height: 100%;
  justify-content: flex-end;
  align-items: end;
}
.products__item--production.products__item--gradient .products__img-wrap img {
  object-fit: contain;
  width: auto;
  max-height: 100%;
}
.products__item--travolators.products__item--gradient .products__img-wrap {
  transform: unset;
  top: unset;
  max-width: 85%;
  max-height: 100%;
  height: 100%;
  bottom: 0;
  justify-content: flex-end;
  align-items: end;
}
@media only screen and (max-width: 1024px) {
  .products__item--travolators.products__item--gradient .products__img-wrap {
    top: 0;
    bottom: unset;
  }
}
.products__item--travolators.products__item--gradient .products__img-wrap img {
  object-fit: contain;
  width: auto;
  max-height: 100%;
}
.products__img {
  transition: scale 0.1s linear 0s;
  position: relative;
  z-index: 1;
}
@media only screen and (min-width: 1025px) {
  .products__item:hover .products__img {
    scale: 1.01;
  }
}
.products__item--instrum .products__img {
  max-height: 400px;
  width: auto;
  max-width: 100%;
}
@media only screen and (max-width: 1024px) {
  .products__item--instrum .products__img {
    height: 70%;
  }
}
.products__item--with-banner .products__img {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  max-width: unset;
  max-height: unset;
  background-position: unset;
}
.products__item--el-detail .products__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  max-height: unset;
}
@media only screen and (max-width: 1024px) {
  .products__item--el-detail .products__img {
    width: auto;
    height: 100%;
    max-height: unset;
  }
}
.products__item-content {
  width: 90%;
  position: relative;
  z-index: 1;
}
.catalog__slider .products__item-content {
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: start;
  height: 100%;
  max-width: 200px;
}
@media only screen and (max-width: 1024px) {
  .products__item-title {
    font-size: 16px;
    line-height: 20px;
  }
}
.products__item-text {
  color: rgba(255, 255, 255, 0.7);
  margin-top: 16px;
}
@media only screen and (max-width: 640px) {
  .products__item-text {
    font-size: 13px;
    line-height: 16px;
  }
}
@media only screen and (max-width: 1024px) {
  .catalog__slider .products__item-text {
    font-size: 13px;
    line-height: 16px;
  }
}
.products__item-link {
  user-select: none;
  font-size: 0;
  position: absolute;
  inset: 0;
  color: transparent;
  z-index: 3;
}
.support__link {
  display: flex;
  flex-direction: column;
  gap: 60px;
  transition: scale 0.1s linear 0s;
  color: #fff;
  font-weight: 700;
  text-align: center;
  position: relative;
  white-space: initial;
  width: 100%;
  padding: 80px;
}
@media only screen and (max-width: 1024px) {
  .support__link {
    width: calc(100% + 2 * 20px);
    margin-left: -20px;
    gap: 32px;
    padding: 60px 40px;
  }
}
@media only screen and (max-width: 640px) {
  .support__link {
    width: calc(100% + 2 * 16px);
    margin-left: -16px;
    padding: 40px 16px;
  }
}
@media only screen and (min-width: 1025px) {
  .support__link:hover {
    scale: 1.006;
  }
}
.support__img-bg {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 30px;
  -webkit-border-radius: 30px;
  z-index: -1;
}
@media only screen and (max-width: 1024px) {
  .support__img-bg {
    border-radius: 0px;
    -webkit-border-radius: 0px;
  }
}
.support__title {
  white-space: initial;
}
.support__phone {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  white-space: initial;
}
@media only screen and (max-width: 1024px) {
  .support__phone {
    gap: 16px;
  }
}
@media only screen and (min-width: 1025px) {
  .support__link:hover .support__phone {
    animation: scale 1s linear infinite;
  }
}
@media only screen and (min-width: 1025px) {
  .support__link:hover .support__phone-icon {
    animation: ring 1s linear infinite;
  }
}
@keyframes ring {
  0% {
    rotate: 0deg;
  }
  45% {
    rotate: 55deg;
  }
  90% {
    rotate: -15deg;
  }
  100% {
    rotate: 0deg;
  }
}
@keyframes scale {
  0% {
    scale: 1;
  }
  45% {
    scale: 1.05;
  }
  90% {
    scale: 0.95;
  }
  100% {
    scale: 1;
  }
}
.work-cycle__items {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 20px;
}
@media only screen and (max-width: 1400px) {
  .work-cycle__items {
    gap: 12px;
  }
}
@media only screen and (max-width: 1200px) {
  .work-cycle__items {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
  }
}
@media only screen and (max-width: 767px) {
  .work-cycle__items {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
  }
}
.work-cycle__item {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  transition: scale 0.1s linear 0s;
  position: relative;
  overflow: hidden;
  aspect-ratio: 0.7962963;
  padding: 24px;
}
@media only screen and (max-width: 1400px) {
  .work-cycle__item {
    padding: 16px;
  }
}
@media only screen and (max-width: 1200px) {
  .work-cycle__item {
    width: calc((100% - (3 * 16px)) / 4);
  }
}
@media only screen and (max-width: 767px) {
  .work-cycle__item {
    width: auto;
  }
}
@media only screen and (max-width: 1200px) {
  .work-cycle__item--fluid {
    width: calc((100% - 16px) / 2);
    aspect-ratio: 1.6635514;
  }
}
@media only screen and (max-width: 767px) {
  .work-cycle__item--fluid {
    width: auto;
    aspect-ratio: 0.7962963;
  }
}
@media only screen and (min-width: 1025px) {
  .work-cycle__item:hover {
    scale: 1.007;
  }
}
.work-cycle__item-title {
  font-size: 18px;
  line-height: 24px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 90%;
  display: block;
  position: relative;
  color: #fff;
}
@media only screen and (max-width: 1400px) {
  .work-cycle__item-title {
    font-size: 16px;
    line-height: 20px;
  }
}
.work-cycle__item-img {
  transform: translateX(-50%);
  position: absolute;
  left: 50%;
  transition: scale 0.1s linear 0s;
  height: 100%;
  bottom: 0;
  width: 103%;
  max-width: 103%;
}
.work-cycle__item--fluid .work-cycle__item-img {
  object-fit: cover;
  width: auto;
  height: 100%;
}
.figures__logo {
  display: block;
  width: 228px;
  height: 32px;
  margin: 0 auto 24px;
}
@media only screen and (max-width: 1024px) {
  .figures__logo {
    display: block;
    width: 144px;
    height: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .figures__logo {
    margin-bottom: 12px;
  }
}
.figures__subtitle {
  text-align: center;
  margin-bottom: 52px;
}
@media only screen and (max-width: 1024px) {
  .figures__subtitle {
    margin-bottom: 80px;
  }
}
@media only screen and (max-width: 640px) {
  .figures__subtitle {
    margin-bottom: 64px;
  }
}
.figures--col-2 .figures__subtitle {
  max-width: 686px;
  margin-inline: auto;
}
.figures__blocks {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  max-width: 922px;
  margin-inline: auto;
}
@media only screen and (max-width: 1024px) {
  .figures__blocks {
    grid-template-columns: repeat(2, 1fr);
    max-width: 100%;
  }
}
@media only screen and (max-width: 640px) {
  .figures__blocks {
    grid-template-columns: 1fr;
  }
}
.figures--col-2 .figures__blocks {
  grid-template-columns: repeat(2, 1fr);
  max-width: 686px;
  gap: 52px 32px;
}
@media only screen and (max-width: 640px) {
  .figures--col-2 .figures__blocks {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}
@media only screen and (max-width: 1024px) {
  .figures--3-items .figures__blocks {
    justify-content: center;
  }
}
.figures--4-items .figures__blocks {
  grid-template-columns: repeat(4, 1fr);
  max-width: 1160px;
  gap: 52px 32px;
}
@media only screen and (max-width: 1024px) {
  .figures--4-items .figures__blocks {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media only screen and (max-width: 640px) {
  .figures--4-items .figures__blocks {
    grid-template-columns: 1fr;
    gap: 32px;
  }
}
.figures__blocks--mb {
  margin-bottom: 52px;
}
@media only screen and (max-width: 1024px) {
  .figures__blocks--mb {
    margin-bottom: 40px;
  }
}
.section__subtitle + .figures__blocks {
  margin-top: 50px;
}
@media only screen and (max-width: 1024px) {
  .section__subtitle + .figures__blocks {
    margin-top: 40px;
  }
}
.figures__block {
  text-align: center;
}
@media only screen and (max-width: 640px) {
  .figures__block {
    width: 100%;
  }
}
.figures__block--wide {
  grid-column-start: 1;
  grid-column-end: 4;
}
@media only screen and (max-width: 1024px) {
  .figures__block--wide {
    grid-column-start: auto;
    grid-column-end: auto;
  }
}
@media only screen and (max-width: 1024px) {
  .figures--3-items .figures__block:last-child {
    grid-column-start: 1;
    grid-column-end: 3;
  }
}
@media only screen and (max-width: 640px) {
  .figures--3-items .figures__block:last-child {
    grid-column-start: auto;
    grid-column-end: auto;
  }
}
.figures__figure {
  font-size: 48px;
  line-height: 48px;
  font-weight: 800;
  letter-spacing: -0.2px;
  margin-bottom: 16px;
  white-space: nowrap;
}
@media only screen and (max-width: 1024px) {
  .figures__figure {
    margin-bottom: 8px;
  }
}
.figures--3-items .figures__figure {
  font-size: 80px;
  line-height: 80px;
}
@media only screen and (max-width: 1024px) {
  .figures--3-items .figures__figure {
    font-size: 48px;
    line-height: 48px;
  }
}
@media only screen and (max-width: 1024px) {
  .figures--3-items .figures__figure {
    font-size: 48px;
    line-height: 48px;
  }
}
.figures__text {
  font-size: 18px;
  line-height: 32px;
}
@media only screen and (max-width: 1024px) {
  .figures__text {
    font-size: 16px;
    line-height: 24px;
  }
}
.services__shell {
  position: relative;
  display: flex;
  justify-content: end;
}
@media only screen and (max-width: 1024px) {
  .services__shell {
    display: block;
  }
}
.services__items {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  width: calc((100% - 20px) / 2);
  background-color: #12264e;
  padding: 7.4% 8.4%;
}
@media only screen and (max-width: 1024px) {
  .services__items {
    border-radius: 0px;
    -webkit-border-radius: 0px;
    background-color: #fff;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    width: 100%;
    padding: 0;
  }
}
@media only screen and (max-width: 640px) {
  .services__items {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}
@media only screen and (max-width: 1024px) {
  .services__item {
    display: flex;
    flex-direction: column;
    gap: 0px;
    position: relative;
  }
}
.services__item-img-shell {
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  left: 0;
  width: calc((100% - 20px) / 2);
  height: 100%;
  display: none;
  overflow: hidden;
}
@media only screen and (max-width: 1024px) {
  .services__item-img-shell {
    aspect-ratio: 1.82564103;
    position: static;
    transform: none;
    height: unset;
    display: block;
    width: 100%;
    align-self: end;
  }
}
.services__item:first-child .services__item-img-shell {
  animation: smooth-show 0.07s linear forwards;
  display: block;
}
@media only screen and (max-width: 1024px) {
  .services__item:first-child .services__item-img-shell {
    animation: unset;
  }
}
.services__item:hover .services__item-img-shell {
  animation: smooth-show 0.07s linear forwards;
  display: block;
}
@media only screen and (max-width: 1024px) {
  .services__item:hover .services__item-img-shell {
    animation: unset;
  }
}
.services__item-img {
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 20px;
  -webkit-border-radius: 20px;
}
@media only screen and (max-width: 1024px) {
  .services__item-img {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    position: static;
    transform: unset;
  }
}
.services__item-content {
  transition: scale 0.1s linear 0s, opacity 0.1s linear 0s;
  color: #fff;
  position: relative;
  padding: 20px 56px 20px 0;
}
@media only screen and (min-width: 1025px) {
  .services__item-content:hover {
    opacity: 0.7;
    scale: 1.01;
  }
}
.services__item:nth-child(1) ~ * .services__item-content {
  border-top: 1px solid rgba(255, 255, 255, 0.15);
}
@media only screen and (max-width: 1024px) {
  .services__item:nth-child(1) ~ * .services__item-content {
    border-top: unset;
  }
}
@media only screen and (max-width: 1024px) {
  .services__item-content {
    position: static;
    flex: 1;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    background-color: #12264e;
    padding: 20px 60px 20px 16px;
  }
}
.services__item-link {
  user-select: none;
  font-size: 0;
  color: transparent;
  position: absolute;
  inset: 0;
}
.services__item-title {
  margin-bottom: 8px;
}
@media only screen and (max-width: 1024px) {
  .services__item-title {
    font-size: 16px;
    line-height: 20px;
  }
}
.services__item-subtitle {
  color: rgba(255, 255, 255, 0.7);
}
@media only screen and (max-width: 1024px) {
  .services__item-subtitle {
    font-size: 13px;
    line-height: 16px;
  }
}
.services__item-arrow {
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  width: 24px;
  height: 24px;
  display: block;
  right: 0;
}
@media only screen and (max-width: 1024px) {
  .services__item-arrow {
    transform: unset;
    top: 20px;
    right: 16px;
  }
}
.services__item-arrow::before {
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  background-color: #fff;
  width: calc(100% - 8px);
  height: 2px;
  content: '';
}
.services__item-arrow::after {
  transform: translateY(-50%) rotate(-45deg);
  position: absolute;
  top: 50%;
  display: block;
  width: 6px;
  height: 6px;
  right: 8px;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  border-bottom-right-radius: 2px;
  content: '';
}
.catalogs__wrap {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
}
@media only screen and (max-width: 1024px) {
  .catalogs__wrap {
    width: 100%;
    padding-inline: 16px;
  }
}
.catalogs__container {
  border-radius: 8px;
  -webkit-border-radius: 8px;
  width: 792px;
  background-color: #fff;
  height: min-content;
  padding: 48px 56px;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .catalogs__container {
    width: 100%;
    padding: 24px;
  }
}
.catalogs__close-btn {
  width: 22px;
  height: 22px;
  position: absolute;
  top: 24px;
  right: 24px;
}
.catalogs__close-btn::before,
.catalogs__close-btn::after {
  position: absolute;
  top: 50%;
  right: 19%;
  transform-origin: center center;
  background-color: #000;
  content: '';
  width: 17px;
  height: 1px;
  rotate: 45deg;
}
.catalogs__close-btn::after {
  rotate: 135deg;
}
.catalogs__title {
  font-size: 20px;
  line-height: 24px;
  font-weight: 700;
  margin-bottom: 40px;
}
@media only screen and (max-width: 1024px) {
  .catalogs__title {
    margin-bottom: 24px;
  }
}
.catalogs__subtitle {
  font-size: 20px;
  line-height: 24px;
  font-weight: 600;
  margin-bottom: 16px;
}
@media only screen and (max-width: 1024px) {
  .catalogs__meteor-wrap,
  .catalogs__xizi-wrap {
    display: none;
  }
}
.catalogs__meteor-wrap.show,
.catalogs__xizi-wrap.show {
  display: block;
}
.catalogs__meteor-wrap + .catalogs__button,
.catalogs__xizi-wrap + .catalogs__button {
  margin-top: 36px;
}
@media only screen and (max-width: 1024px) {
  .catalogs__meteor-wrap + .catalogs__button,
  .catalogs__xizi-wrap + .catalogs__button {
    margin-top: 32px;
  }
}
.catalogs__meteor-wrap + .catalogs__xizi-wrap {
  margin-top: 32px;
}
@media only screen and (max-width: 1024px) {
  .catalogs__meteor-wrap {
    margin-bottom: 32px;
  }
}
.catalogs__meteor,
.catalogs__xizi {
  display: flex;
  gap: 32px;
}
@media only screen and (max-width: 1024px) {
  .catalogs__meteor,
  .catalogs__xizi {
    flex-direction: column;
    gap: 16px;
  }
}
.catalogs__list-item {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.catalogs__item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0px;
  border-bottom: 1px dashed #828282;
}
.catalogs__link {
  color: #0a2751;
  font-weight: 500;
}
.catalogs__button {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .catalogs__button {
    width: 100%;
  }
}
.catalogs__button + .catalogs__button {
  margin-top: 16px;
}
@media only screen and (max-width: 1024px) {
  .catalogs__button.show {
    display: flex;
  }
}
@media only screen and (max-width: 1024px) {
  .online-tools__list-shell {
    overflow-y: hidden;
    width: calc(100% + 2 * 20px);
    margin-left: -20px;
  }
}
.online-tools__list {
  display: flex;
  gap: 20px;
  padding-top: 3%;
  padding-bottom: 40px;
  margin-bottom: -40px;
}
@media only screen and (max-width: 1024px) {
  .online-tools__list {
    overflow-x: auto;
    padding-inline: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .online-tools__list {
    gap: 8px;
  }
}
.online-tools__item {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  display: flex;
  flex-direction: column;
  gap: 0px;
  transition: scale 0.1s linear 0s;
  background-color: #f5f5f7;
  aspect-ratio: 1;
  width: calc((100% - 2 * 20px) / 3);
  justify-content: flex-end;
  flex-shrink: 0;
  position: relative;
  padding: 48px 24px;
}
@media only screen and (max-width: 1280px) {
  .online-tools__item {
    padding-block: 26px;
  }
}
@media only screen and (max-width: 1024px) {
  .online-tools__item {
    min-width: 263px;
  }
}
@media only screen and (max-width: 640px) {
  .online-tools__item {
    min-width: 255px;
  }
}
.online-tools__item::before {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  content: "";
  display: block;
  background: linear-gradient(180deg, rgba(245, 245, 247, 0.03) 14.76%, #f5f5f7 79.33%);
  position: absolute;
  inset: 0;
  z-index: 2;
}
@media only screen and (max-width: 1024px) {
  .online-tools__item::before {
    background: linear-gradient(180deg, rgba(245, 245, 247, 0.03) 12.91%, #F5F5F7 55.83%);
  }
}
@media only screen and (min-width: 1025px) {
  .online-tools__item:hover {
    scale: 1.01;
  }
}
.online-tools__item-content {
  position: relative;
  z-index: 4;
  text-align: center;
}
.online-tools__item-title {
  margin-bottom: 8px;
}
.online-tools__item-text {
  font-size: 14px;
  line-height: 20px;
  display: block;
  margin-bottom: 24px;
}
@media only screen and (max-width: 1024px) {
  .online-tools__item-text {
    font-size: 12px;
    line-height: 16px;
    margin-bottom: 12px;
  }
}
.online-tools__item-img {
  transition: scale 0.1s linear 0s;
  position: absolute;
  right: 40px;
  bottom: 47px;
  max-height: 97%;
  width: auto;
}
@media only screen and (max-width: 1024px) {
  .online-tools__item-img {
    max-height: 93%;
    right: 20px;
    bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .online-tools__item-img {
    max-height: 90%;
  }
}
@media only screen and (min-width: 1025px) {
  .online-tools__item:hover .online-tools__item-img {
    scale: 1.02;
  }
}
.press-center {
  overflow: hidden;
}
.press-center__search-panel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 2px;
  margin-bottom: 56px;
}
@media only screen and (max-width: 1024px) {
  .press-center__search-panel {
    flex-direction: column;
    align-items: start;
    margin-bottom: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .press-center__search-panel {
    margin-bottom: 24px;
  }
}
.press-center--advices .press-center__search-panel {
  display: block;
  padding-bottom: 2px;
}
.press-center__items-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 24px;
  row-gap: 80px;
  padding-bottom: 24px;
  position: relative;
}
.press-center__items-container::after {
  transform: translateX(-50%);
  position: absolute;
  left: 50%;
  background-color: #dedede;
  bottom: 0;
  width: 100dvw;
  height: 1px;
  content: '';
}
@media only screen and (max-width: 1024px) {
  .press-center__items-container {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 24px;
    row-gap: 64px;
  }
}
@media only screen and (max-width: 640px) {
  .press-center__items-container {
    grid-template-columns: 1fr;
    column-gap: 24px;
    row-gap: 56px;
  }
}
.press-center__item {
  display: flex;
  flex-direction: column;
  gap: 0px;
}
.press-center__item:nth-child(3n + 1) {
  position: relative;
}
@media only screen and (min-width: 1025px) {
  .press-center__item:nth-child(3n + 1)::before {
    transform: translateX(-50%);
    position: absolute;
    left: 50%;
    top: -56px;
    content: '';
    width: calc(2 * 100dvw);
    height: 1px;
    background-color: #dedede;
  }
}
@media only screen and (min-width: 1025px) {
  .press-center__item:nth-child(2)::before {
    background-color: unset;
  }
}
.press-center__item:nth-child(2n + 1) {
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .press-center__item:nth-child(2n + 1)::before {
    position: absolute;
    left: -20px;
    top: -40px;
    content: '';
    width: 100dvw;
    height: 1px;
    background-color: #dedede;
  }
}
.press-center__item:nth-child(n + 1) {
  position: relative;
}
@media only screen and (max-width: 640px) {
  .press-center__item:nth-child(n + 1)::before {
    position: absolute;
    left: -16px;
    top: -32px;
    content: '';
    width: 100dvw;
    height: 1px;
    background-color: #dedede;
  }
}
.press-center__item:first-child::before {
  background-color: transparent;
}
.press-center__item *:last-child {
  margin-top: auto;
}
.press-center__item *:nth-last-child(2) {
  margin-bottom: 40px;
}
.search-panel {
  overflow-y: hidden;
}
.press-center__search-panel.search-panel {
  overflow: unset;
}
.search-panel__tabs-container {
  display: flex;
  gap: 8px;
  width: 100%;
  padding: 2px 2px 24px;
  overflow-x: auto;
  margin-bottom: -24px;
}
.press-center__search-panel .search-panel__tabs-container {
  width: auto;
}
.search-panel__inputs-container {
  display: flex;
  justify-content: end;
  flex: 1;
  gap: 20px;
}
@media only screen and (max-width: 1024px) {
  .search-panel__inputs-container {
    width: 100%;
  }
}
@media only screen and (max-width: 640px) {
  .search-panel__inputs-container {
    flex-direction: column;
  }
}
.search-panel__inputs-container--projects {
  justify-content: start;
}
.search-panel__input-box {
  width: 70%;
  max-width: 451px;
}
@media only screen and (max-width: 1024px) {
  .search-panel__input-box {
    width: 100%;
    max-width: 100%;
  }
}
.search-panel__select {
  width: 255px;
}
@media only screen and (max-width: 640px) {
  .search-panel__select {
    width: 100%;
  }
}
.press-detail__container {
  display: grid;
  gap: 28px;
  grid-template-columns: 333px 1fr;
  padding-top: 56px;
  position: relative;
}
.press-detail__container::before {
  transform: translateX(-50%);
  position: absolute;
  left: 50%;
  top: 0;
  content: '';
  width: 100dvw;
  height: 1px;
  background-color: #dedede;
}
@media only screen and (max-width: 1024px) {
  .press-detail__container::before {
    background-color: transparent;
  }
}
@media only screen and (max-width: 1024px) {
  .press-detail__container {
    display: flex;
    flex-direction: column;
    padding-top: 0;
    gap: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .press-detail__container {
    gap: 32px;
  }
}
.press-detail__aside {
  position: sticky;
  top: 120px;
  align-self: start;
  padding-bottom: 90px;
  width: 333px;
}
@media only screen and (max-width: 1024px) {
  .press-detail__aside {
    position: static;
    width: auto;
    padding-bottom: 0;
  }
}
.press-detail__container--no-download .press-detail__aside {
  padding-bottom: 0;
}
.press-detail__tags {
  display: flex;
  column-gap: 8px;
  flex-wrap: wrap;
}
.press-detail__tag {
  color: #141414;
  padding-right: 14px;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .press-detail__tag {
    font-size: 13px;
    line-height: 16px;
  }
}
.press-detail__tag--hashtag::before {
  content: '#';
}
.press-detail__tag::after {
  position: absolute;
  top: -1px;
  right: -1px;
  content: '•';
}
.press-detail__tag:last-child {
  padding-right: 0;
}
.press-detail__tag:last-child::after {
  content: '';
}
.press-detail__download {
  max-width: 30%;
  margin-top: -80px;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 1024px) {
  .press-detail__download {
    margin-top: 80px;
    max-width: unset;
    position: static;
  }
}
@media only screen and (max-width: 640px) {
  .press-detail__download {
    margin-top: 60px;
  }
}
.press-detail__download-title {
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
  margin-bottom: 16px;
}
@media only screen and (max-width: 640px) {
  .press-detail__download-title {
    margin-bottom: 12px;
  }
}
.press-detail__slide {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  align-self: stretch;
  overflow: hidden;
}
.press-detail__slider-img {
  min-width: 100%;
  min-height: 100%;
  flex: 1;
  object-fit: cover;
}
.press-detail__slider-nav {
  margin-top: 24px;
}
.press-detail__slider-nav-btns {
  display: flex;
  justify-content: end;
  gap: 16px;
  padding: 0 4px 4px 0;
}
@media only screen and (max-width: 1024px) {
  .press-detail__slider-nav-btns {
    display: none;
  }
}
.press-detail__slider-nav-btn {
  width: 32px;
  height: 32px;
  border-radius: 100%;
  border: 1px solid rgba(0, 0, 0, 0.15);
  background-color: #fff;
  flex: none;
}
.press-detail__slider-nav-btn:active,
.press-detail__slider-nav-btn:focus-visible {
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.7);
}
.press-detail__slider-nav-btn--prev span {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.press-detail__slider-nav-btn--prev span::before {
  transform: translateY(-50%) rotate(135deg);
  position: absolute;
  top: 50%;
  display: block;
  width: 8px;
  height: 8px;
  right: 9px;
  content: '';
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
}
.press-detail__slider-nav-btn--next span {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}
.press-detail__slider-nav-btn--next span::before {
  transform: translateY(-50%) rotate(-45deg);
  position: absolute;
  top: 50%;
  display: block;
  width: 8px;
  height: 8px;
  right: 13px;
  content: '';
  border-right: 1px solid #000;
  border-bottom: 1px solid #000;
}
.swiper-button-disabled.press-detail__slider-nav-btn {
  background-color: transparent;
  cursor: not-allowed;
}
.swiper-button-disabled.press-detail__slider-nav-btn span::before {
  border-right: 1px solid rgba(0, 0, 0, 0.15);
  border-bottom: 1px solid rgba(0, 0, 0, 0.15);
}
.swiper-button-disabled.press-detail__slider-nav-btn:active,
.swiper-button-disabled.press-detail__slider-nav-btn:focus-visible {
  box-shadow: unset;
}
.press-detail__slider-pagination {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .press-detail__slider-pagination {
    display: flex;
    gap: 2px;
    justify-content: center;
  }
}
.press-detail-content {
  min-width: 0;
}
@media only screen and (max-width: 1200px) {
  .press-detail-content {
    padding-right: 24px;
  }
}
@media only screen and (max-width: 1024px) {
  .press-detail-content {
    padding-right: 0;
  }
}
.press-detail-content > * {
  width: 65%;
  margin-inline: 11% 24%;
}
@media only screen and (max-width: 1200px) {
  .press-detail-content > * {
    margin-inline: 0;
    width: 100%;
  }
}
.press-detail-content h2,
.press-detail-content h3,
.press-detail-content h4,
.press-detail-content h5,
.press-detail-content ul,
.press-detail-content ol {
  display: block;
  margin-bottom: 40px;
}
@media only screen and (max-width: 1024px) {
  .press-detail-content h2,
  .press-detail-content h3,
  .press-detail-content h4,
  .press-detail-content h5,
  .press-detail-content ul,
  .press-detail-content ol {
    margin-bottom: 32px;
  }
}
@media only screen and (max-width: 640px) {
  .press-detail-content h2,
  .press-detail-content h3,
  .press-detail-content h4,
  .press-detail-content h5,
  .press-detail-content ul,
  .press-detail-content ol {
    margin-bottom: 16px;
  }
}
.press-detail-content h2:last-child,
.press-detail-content h3:last-child,
.press-detail-content h4:last-child,
.press-detail-content h5:last-child,
.press-detail-content ul:last-child,
.press-detail-content ol:last-child {
  margin-bottom: 0;
}
.press-detail-content h1 {
  font-size: 36px;
  line-height: 44px;
  font-weight: 600;
  letter-spacing: -0.14px;
}
@media only screen and (max-width: 1024px) {
  .press-detail-content h1 {
    font-size: 22px;
    line-height: 28px;
    letter-spacing: -0.3px;
  }
}
.press-detail-content h2 {
  font-size: 32px;
  line-height: 40px;
  font-weight: 700;
}
@media only screen and (max-width: 1024px) {
  .press-detail-content h2 {
    font-size: 20px;
    line-height: 24px;
  }
}
.press-detail-content h3 {
  font-size: 28px;
  line-height: 36px;
  font-weight: 700;
}
@media only screen and (max-width: 1024px) {
  .press-detail-content h3 {
    font-size: 18px;
    line-height: 24px;
  }
}
.press-detail-content h4 {
  font-size: 24px;
  line-height: 32px;
  font-weight: 600;
}
@media only screen and (max-width: 1024px) {
  .press-detail-content h4 {
    font-size: 16px;
    line-height: 20px;
  }
}
.press-detail-content h4:first-child {
  font-weight: 600;
}
.press-detail-content h5 {
  font-size: 18px;
  line-height: 24px;
  font-weight: 600;
}
@media only screen and (max-width: 1024px) {
  .press-detail-content h5 {
    font-size: 14px;
    line-height: 16px;
  }
}
.press-detail-content h6 {
  font-size: 16px;
  line-height: 24px;
  font-weight: 700;
}
.press-detail-content q {
  color: rgba(0, 0, 0, 0.7);
  font-style: italic;
  display: block;
  padding-left: 24px;
  quotes: '' '';
  position: relative;
  margin-block: 32px;
}
@media only screen and (max-width: 1024px) {
  .press-detail-content q {
    margin-block: 24px;
  }
}
@media only screen and (max-width: 640px) {
  .press-detail-content q {
    margin-block: 16px;
  }
}
.press-detail-content q:before {
  background-color: #000;
  position: absolute;
  top: 0;
  left: 0;
  width: 3px;
  height: 100%;
}
.press-detail-content q:first-child {
  margin-top: 0;
}
.press-detail-content q:last-child {
  margin-bottom: 0;
}
.press-detail-content p {
  margin-bottom: 24px;
}
@media only screen and (max-width: 1024px) {
  .press-detail-content p {
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .press-detail-content p {
    margin-bottom: 16px;
  }
}
.press-detail-content p:last-child {
  margin-bottom: 0;
}
.press-detail-content p a {
  color: #214f99;
  text-decoration: underline;
}
.press-detail-content p + h4 {
  margin-top: 52px;
}
@media only screen and (max-width: 1024px) {
  .press-detail-content p + h4 {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .press-detail-content p + h4 {
    margin-top: 32px;
  }
}
.press-detail-content img {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  overflow: hidden;
  margin-inline: 0;
  width: 89%;
}
@media only screen and (max-width: 1200px) {
  .press-detail-content img {
    width: 100%;
  }
}
.press-detail-content .swiper {
  margin-inline: 0;
  width: 100%;
  max-width: 920px;
}
@media only screen and (max-width: 1024px) {
  .press-detail-content .swiper {
    max-width: unset;
    width: calc(100% + 2 * 20px);
    margin-left: -20px;
    padding-inline: 20px;
  }
}
.press-detail-content img,
.press-detail-content .swiper {
  margin-block: 56px;
}
@media only screen and (max-width: 1024px) {
  .press-detail-content img,
  .press-detail-content .swiper {
    margin-block: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .press-detail-content img,
  .press-detail-content .swiper {
    margin-block: 32px;
  }
}
.press-detail-content img:first-child,
.press-detail-content .swiper:first-child {
  margin-top: 0;
}
.press-detail-content img:last-child,
.press-detail-content .swiper:last-child {
  margin-bottom: 0;
}
.press-detail-content ul li {
  display: block;
  padding-left: 24px;
  position: relative;
  margin-bottom: 10px;
}
.press-detail-content ul li:last-child {
  margin-bottom: 0;
}
.press-detail-content ul li::before {
  width: 3px;
  height: 3px;
  border-radius: 100%;
  transform: translateY(calc(50% + 14px));
  content: '';
  position: absolute;
  left: 8px;
  background-color: #000;
}
.press-detail-content ol {
  counter-reset: list;
}
.press-detail-content ol li {
  display: block;
  padding-left: 24px;
  position: relative;
  margin-bottom: 10px;
}
.press-detail-content ol li:last-child {
  margin-bottom: 0;
}
.press-detail-content ol li::before {
  counter-increment: list;
  content: counter(list) '.';
  position: absolute;
  left: 0;
}
.press-detail-content p,
.press-detail-content ul,
.press-detail-content ol,
.press-detail-content q {
  font-size: 16px;
  line-height: 24px;
}
@media only screen and (max-width: 1024px) {
  .press-detail-content p,
  .press-detail-content ul,
  .press-detail-content ol,
  .press-detail-content q {
    font-size: 13px;
    line-height: 16px;
  }
}
.press-detail-content .accord__body p {
  font-size: 16px;
  line-height: 24px;
}
@media only screen and (max-width: 1024px) {
  .press-detail-content .accord__body p {
    font-size: 13px;
    line-height: 16px;
  }
}
.press-detail-content .accord__body h5 {
  margin-bottom: 16px;
}
.iui-close {
  width: 19px;
  height: 19px;
  display: block;
}
.iui-close::before,
.iui-close::after {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  display: block;
  width: 11px;
  height: 1px;
  border-radius: 2px;
  -webkit-border-radius: 2px;
  left: 4px;
  background-color: #fff;
  content: '';
}
.iui-close::before {
  transform: rotate(-45deg);
}
.iui-close::after {
  transform: rotate(45deg);
}
.iui-cloud-upload {
  display: none;
}
.image-uploader {
  border-radius: 22px;
  -webkit-border-radius: 22px;
  border: 1px dashed #0a275199;
  height: 44px;
  position: relative;
  pointer-events: all;
  cursor: pointer;
}
@media only screen and (min-width: 1025px) {
  .image-uploader:hover {
    opacity: 0.5;
  }
}
.has-files.image-uploader {
  border: unset;
  pointer-events: none;
  width: max-content;
  max-width: calc(100% - 2 * 32px - 60px);
  min-height: 80px;
  height: auto;
  margin-left: 62px;
}
.has-files.image-uploader::before {
  border-radius: 12px;
  -webkit-border-radius: 12px;
  display: block;
  width: 52px;
  height: 78px;
  cursor: pointer;
  pointer-events: all;
  position: absolute;
  top: -1px;
  left: -62px;
  content: '';
  border: 1px dashed #dedede;
  background: url(/assets-nd/img/clip.svg) center center / 20px 20px no-repeat;
}
@media only screen and (min-width: 1025px) {
  .has-files.image-uploader:hover {
    opacity: 1;
  }
}
@media only screen and (max-width: 640px) {
  .has-files.image-uploader {
    max-width: calc(100% - 2 * 16px - 16px);
    pointer-events: all;
  }
}
.error.image-uploader {
  border: 1px solid #ee0019;
  color: #ee0019;
  font-weight: 600;
}
.image-uploader.drag-over {
  background-color: #f3f3f3;
}
.image-uploader input[type='file'] {
  width: 0;
  height: 0;
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.image-uploader .upload-text {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  text-align: center;
  position: absolute;
  inset: 0;
  flex-direction: column;
}
.has-files .image-uploader .upload-text {
  font-size: 0;
  color: transparent;
}
@media only screen and (max-width: 1024px) {
  .image-uploader .upload-text {
    font-size: 13px;
    line-height: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .image-uploader .upload-text {
    padding: 16px;
  }
}
.image-uploader .upload-text i {
  display: none;
}
.image-uploader .upload-text span {
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
  color: #0a2751;
  display: block;
  pointer-events: none;
  position: relative;
}
.image-uploader .upload-text span::before {
  display: block;
  width: 20px;
  height: 20px;
  transform: translateY(-50%);
  position: absolute;
  top: 50%;
  left: -24px;
  content: '';
  background: url(/assets-nd/img/clip.svg) center center / 20px 20px no-repeat;
}
.image-uploader.has-files .image-uploader .upload-text span::before {
  content: unset;
}
.image-uploader.has-files .upload-text {
  display: none;
}
.image-uploader .uploaded {
  display: flex;
  flex-wrap: wrap;
  grid-auto-rows: auto;
  gap: 8px;
}
@media only screen and (max-width: 640px) {
  .image-uploader .uploaded {
    overflow: auto;
    flex-wrap: nowrap;
  }
}
.image-uploader .uploaded .uploaded-image {
  animation: smooth-show 0.2s linear forwards;
  display: block;
  border-radius: 6px;
  -webkit-border-radius: 6px;
  overflow: hidden;
  display: flex;
  flex-direction: row-reverse;
  width: 120px;
  height: 80px;
  aspect-ratio: 1.5;
  position: relative;
  cursor: pointer;
  pointer-events: none;
}
@media only screen and (max-width: 640px) {
  .image-uploader .uploaded .uploaded-image {
    flex: none;
  }
}
.image-uploader .uploaded .uploaded-image--file {
  border: 1px solid #000;
  position: relative;
}
.image-uploader .uploaded .uploaded-image--file::before {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  font-size: 26px;
  line-height: 32px;
  content: 'File';
  position: absolute;
  inset: 0;
  color: #000;
}
.image-uploader .uploaded .uploaded-image--file img {
  display: none;
}
.image-uploader .uploaded .uploaded-image img {
  transition: opacity 0.1s linear 0s;
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}
.image-uploader .uploaded .uploaded-image .delete-image {
  transition: scale 0.1s linear 0s;
  display: block;
  cursor: pointer;
  position: absolute;
  pointer-events: all;
  top: 5px;
  right: 5px;
  border-radius: 50%;
  background-color: rgba(0, 0, 0, 0.5);
  -webkit-appearance: none;
  z-index: 2;
}
.image-uploader .uploaded .uploaded-image .delete-image:hover {
  scale: 1.1;
}
.image-uploader .uploaded .uploaded-image .delete-image:hover + img {
  opacity: 0.4;
}
.purchasing__tabs {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  background-color: #f5f5f7;
  min-height: 40px;
  display: flex;
  max-width: 714px;
  margin: 0 auto 22px;
}
.purchasing__tab {
  font-weight: 500;
  text-align: center;
  white-space: initial;
  flex: 1;
  width: calc(100% / 3);
  max-width: calc(100% / 3);
  padding: 10px;
}
@media only screen and (max-width: 1024px) {
  .purchasing__tab {
    font-size: 14px;
    line-height: 16px;
  }
}
@media only screen and (max-width: 374px) {
  .purchasing__tab {
    font-size: 12px;
    line-height: 16px;
  }
}
.purchasing__tab.active {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  font-weight: 600;
  background-color: #000;
  color: #fff;
}
.purchasing__offer-shell,
.purchasing__message-shell {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  background-color: #f5f5f7;
  max-width: 714px;
  margin-inline: auto;
  padding: 32px;
}
@media only screen and (max-width: 640px) {
  .purchasing__offer-shell,
  .purchasing__message-shell {
    padding: 16px;
  }
}
.purchasing__title {
  margin-bottom: 20px;
}
@media only screen and (max-width: 1024px) {
  .purchasing__title {
    margin-bottom: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .purchasing__title {
    margin-bottom: 12px;
  }
}
.purchasing__delete-btn {
  font-size: 14px;
  line-height: 16px;
  font-weight: 500;
  color: #0a2751;
  gap: 4px;
  padding: 8px 4px;
  display: none;
}
.image-uploader.has-files + .purchasing__delete-btn {
  display: flex;
}
.purchasing__submit-btn {
  margin-top: 40px;
}
@media only screen and (max-width: 1024px) {
  .purchasing__submit-btn {
    margin-top: 32px;
  }
}
.tender {
  border-radius: 8px;
  -webkit-border-radius: 8px;
  overflow: hidden;
}
@media only screen and (max-width: 1024px) {
}
@media only screen and (max-width: 640px) {
}
.tender__iframe {
  width: 100%;
  height: 1300px;
  margin-top: -280px;
}
@media only screen and (max-width: 772px) {
  .tender__iframe {
    width: calc(100% + 2 * 24px);
    margin-left: -24px;
  }
}
@media only screen and (max-width: 656px) {
  .tender__iframe {
    margin-top: -304px;
  }
}
@media only screen and (max-width: 653px) {
  .tender__iframe {
    margin-top: -336px;
  }
}
@media only screen and (max-width: 547px) {
  .tender__iframe {
    margin-top: -360px;
  }
}
@media only screen and (max-width: 494px) {
  .tender__iframe {
    margin-top: -384px;
  }
}
@media only screen and (max-width: 437px) {
  .tender__iframe {
    margin-top: -408px;
  }
}
@media only screen and (max-width: 380px) {
  .tender__iframe {
    margin-top: -432px;
  }
}
@media only screen and (max-width: 349px) {
  .tender__iframe {
    margin-top: -456px;
  }
}
@media only screen and (max-width: 347px) {
  .tender__iframe {
    margin-top: -480px;
  }
}
@media only screen and (max-width: 345px) {
  .tender__iframe {
    margin-top: -512px;
  }
}
.content-wrapper {
  height: 100%;
  overflow: visible;
  background-color: red !important;
}
.sout-detail {
  width: 100%;
  max-width: 970px;
  margin-inline: auto;
}
@media only screen and (max-width: 1024px) {
  .sout-detail {
    max-width: 582px;
  }
}
@media only screen and (max-width: 640px) {
  .sout-detail {
    max-width: 100%;
    margin-inline: unset;
  }
}
.director-block {
  border-radius: 30px;
  -webkit-border-radius: 30px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  transition: scale 0.1s linear 0s;
  color: #fff;
  background-color: #12264e;
  align-items: flex-start;
  overflow: hidden;
  position: relative;
  padding-top: 68px;
  min-height: 628px;
}
@media only screen and (max-width: 1400px) {
  .director-block {
    border-radius: 0px;
    -webkit-border-radius: 0px;
    min-height: 720px;
    margin-inline: -32px;
  }
}
@media only screen and (max-width: 640px) {
  .director-block {
    min-height: 583px;
    margin-inline: -16px;
  }
}
.director-block::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 20%;
  width: 20%;
  background-color: #102246;
  z-index: 1;
}
@media only screen and (min-width: 1025px) {
  .director-block::before:hover {
    background-color: #fff;
  }
}
.director-block::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 40%;
  width: 20%;
  background-color: #0e1e3e;
}
@media only screen and (min-width: 1025px) {
  .director-block:hover {
    scale: 1.003;
  }
}
.director-block__bg {
  position: absolute;
  inset: 0;
}
.director-block__bg::before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 60%;
  width: 20%;
  background-color: #0d1b37;
}
.director-block__bg::after {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 80%;
  width: 20%;
  background-color: #0b172f;
}
.director-block__content,
.director-block__img {
  position: relative;
  z-index: 5;
}
.director-block__content {
  position: absolute;
  right: 80px;
  top: 80px;
  z-index: 6;
}
@media only screen and (max-width: 1400px) {
  .director-block__content {
    position: relative;
    inset: auto;
    margin-bottom: 20px;
    padding-left: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .director-block__content {
    margin-bottom: 28px;
    padding-left: 16px;
  }
}
.director-block__img {
  transition: scale 0.2s linear 0s;
  width: auto;
  margin-top: auto;
  margin-left: 14.3%;
}
@media only screen and (max-width: 1400px) {
  .director-block__img {
    margin-inline: auto;
  }
}
@media only screen and (min-width: 1025px) {
  .director-block:hover .director-block__img {
    scale: 1.008;
  }
}
.director-block__name {
  font-size: 80px;
  line-height: 80px;
  display: block;
  font-weight: 800;
  margin-bottom: 24px;
}
@media only screen and (max-width: 1024px) {
  .director-block__name {
    font-size: 48px;
    line-height: 48px;
  }
}
@media only screen and (max-width: 1400px) {
  .director-block__name {
    font-size: 48px;
    line-height: 48px;
    margin-bottom: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .director-block__name {
    margin-bottom: 12px;
  }
}
.director-block__text {
  font-size: 24px;
  line-height: 32px;
  display: block;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.7);
  position: absolute;
}
@media only screen and (max-width: 1400px) {
  .director-block__text {
    font-size: 17px;
    line-height: 20px;
  }
}
.history-slider {
  border-radius: 30px;
  -webkit-border-radius: 30px;
  padding: 80px;
  background-color: #f5f5f7;
  position: relative;
  overflow: hidden;
}
@media only screen and (max-width: 1400px) {
  .history-slider {
    border-radius: 0px;
    -webkit-border-radius: 0px;
    padding: 40px 0;
    background-color: transparent;
    padding-inline: 20px;
    margin-inline: -20px;
  }
}
@media only screen and (max-width: 1024px) {
  .history-slider {
    padding: 32px 0;
  }
}
.history-slider::before {
  background: linear-gradient(90deg, #f5f5f7 16.05%, rgba(245, 245, 247, 0) 90.12%);
  left: -1px;
}
.history-slider::after {
  background: linear-gradient(270deg, #f5f5f7 16.05%, rgba(245, 245, 247, 0) 90.12%);
  right: -1px;
}
.history-slider::before,
.history-slider::after {
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  width: 97px;
  z-index: 2;
  content: '';
}
@media only screen and (max-width: 1400px) {
  .history-slider::before,
  .history-slider::after {
    content: none;
  }
}
.history-slider--mb {
  margin-bottom: 50px;
}
@media only screen and (max-width: 1400px) {
  .history-slider--mb {
    margin-bottom: 60px;
  }
}
@media only screen and (max-width: 1024px) {
  .history-slider--mb {
    margin-bottom: 40px;
  }
}
.history-slider__top {
  margin-bottom: 20px;
}
@media only screen and (max-width: 1400px) {
  .history-slider__top {
    margin-bottom: 40px;
    padding-inline: 20px;
  }
}
@media only screen and (max-width: 1024px) {
  .history-slider__top {
    margin-bottom: 32px;
    padding-inline: 16px;
  }
}
.history-slider__arrows {
  display: flex;
  justify-content: flex-end;
  gap: 16px;
  padding: 2px;
  margin-bottom: 40px;
  position: relative;
  z-index: 5;
}
@media only screen and (max-width: 1400px) {
  .history-slider__arrows {
    display: none;
  }
}
.history-slider__line {
  position: relative;
  padding-top: 8px;
  padding-inline: 80px;
  margin-inline: -80px;
}
@media only screen and (max-width: 1400px) {
  .history-slider__line {
    padding-inline: 20px;
    margin-inline: 0;
  }
}
.history-slider__line::before {
  content: '';
  display: block;
  background: #dedede;
  position: absolute;
  top: 7px;
  left: 0;
  right: 0;
  height: 2px;
}
.history-slider__item {
  position: relative;
  padding-top: 40px;
  padding-bottom: 34px;
}
.history-slider__item:before {
  border-radius: 16px;
  -webkit-border-radius: 16px;
  width: 16px;
  height: 16px;
  content: '';
  display: block;
  position: absolute;
  top: -8px;
  left: 0;
  background-color: #2864dc;
}
.history-slider__item-title {
  font-size: 24px;
  line-height: 32px;
  display: block;
  font-weight: 600;
  margin-bottom: 8px;
}
.history-slider__item-text {
  font-size: 16px;
  line-height: 24px;
  display: block;
}
.stuff-slider {
  width: 100%;
  overflow: visible;
  margin-bottom: 50px;
  z-index: 1;
}
.stuff-slider__wrap {
  margin-left: -260px;
  align-items: end;
}
@media only screen and (max-width: 1024px) {
  .stuff-slider__wrap {
    margin-left: 0;
  }
}
.stuff-slider__slide {
  border-radius: 20px;
  -webkit-border-radius: 20px;
  transition: scale 0.1s linear 0s, opacity 0.1s linear 0s;
  background-color: #f5f5f7;
  overflow: hidden;
  cursor: pointer;
  display: flex;
  max-width: 216px !important;
  aspect-ratio: 1;
  max-height: 216px;
  opacity: 1;
  z-index: 1;
}
@media only screen and (max-width: 1024px) {
  .stuff-slider__slide {
    overflow: visible;
    height: auto !important;
    max-width: unset !important;
    max-height: 100% !important;
    align-self: stretch;
  }
}
@media only screen and (min-width: 1025px) {
  .stuff-slider__slide:hover {
    scale: 1.008;
    opacity: 0.9;
  }
}
@media only screen and (min-width: 1025px) {
  .stuff-slider__slide.swiper-slide-active {
    width: 450px !important;
    max-width: 450px !important;
    max-height: 450px !important;
    overflow: visible;
  }
}
@media only screen and (min-width: 1025px) {
  .stuff-slider__slide.swiper-slide-active:hover {
    scale: unset;
    opacity: 1;
  }
}
.stuff-slider__text-shell {
  display: none;
}
.stuff-slider__title {
  font-size: 48px;
  line-height: 48px;
  font-weight: 800;
  margin-bottom: 12px;
}
@media only screen and (max-width: 640px) {
  .stuff-slider__title {
    margin-bottom: 8px;
  }
}
.stuff-slider__text {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  font-size: 18px;
  line-height: 24px;
  color: rgba(0, 0, 0, 0.5);
  font-weight: 500;
}
@media only screen and (max-width: 1024px) {
  .stuff-slider__text {
    border-radius: 20px;
    -webkit-border-radius: 20px;
    font-size: 16px;
    line-height: 24px;
    background-color: #0045b50f;
    color: rgba(0, 0, 0, 0.7);
    max-width: 80%;
    padding: 16px;
  }
}
@media only screen and (max-width: 640px) {
  .stuff-slider__text {
    max-width: 100%;
  }
}
.stuff-slider__img {
  transform: translate(-50%, -50%);
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.stuff-slider__pagination {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .stuff-slider__pagination {
    display: block;
  }
}
.stuff-info-slider {
  margin-inline: auto 0;
  flex: 0 1;
  min-width: 0;
  max-width: 570px;
  height: 240px;
  position: relative;
  z-index: 2;
  margin-bottom: -240px;
}
@media only screen and (max-width: 1024px) {
  .stuff-info-slider {
    height: 100%;
    width: 100%;
    margin-bottom: 24px;
    max-width: 100% !important;
  }
}
.stuff-info-slider__shell {
  display: flex;
}
.stuff-info-slider__wrapper {
  max-height: 180px !important;
}
@media only screen and (max-width: 1024px) {
  .stuff-info-slider__wrapper {
    max-height: 100% !important;
  }
}
.stuff-info-slider__slide {
  background-color: #fff;
}
@media only screen and (max-width: 1024px) {
  .stuff-info-slider__slide {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: center;
    text-align: center;
  }
}
.stuff-slider__slide .stuff-info-slider__slide-text-shell {
  display: none;
}
.stuff-info-slider__nav-btns {
  gap: 16px;
  position: relative;
  z-index: 3;
  display: flex;
  padding: 4px;
}
@media only screen and (max-width: 1024px) {
  .stuff-info-slider__nav-btns {
    display: none;
  }
}
.stuff-info-slider__nav-btns button {
  display: block;
}
.search-page__search-panel {
  display: flex;
  gap: 20px;
  margin-bottom: 52px;
}
@media only screen and (max-width: 1024px) {
  .search-page__search-panel {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .search-page__search-panel {
    margin-bottom: 32px;
  }
}
.search-page__search-btn {
  min-width: 98px;
  max-width: unset;
}
@media only screen and (max-width: 1024px) {
  .search-page__search-btn {
    display: none;
  }
}
.search-page__result-success-title {
  font-size: 14px;
  line-height: 20px;
  color: rgba(0, 0, 0, 0.7);
  font-weight: 500;
  margin-bottom: 52px;
}
@media only screen and (max-width: 1024px) {
  .search-page__result-success-title {
    font-size: 12px;
    line-height: 16px;
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .search-page__result-success-title {
    margin-bottom: 32px;
  }
}
.search-page__result-success-link {
  display: block;
  font-weight: 500;
}
@media only screen and (max-width: 1024px) {
  .search-page__result-success-link {
    font-size: 14px;
    line-height: 20px;
  }
}
.search-page__result-success-link + .search-page__result-success-link {
  margin-top: 24px;
}
@media only screen and (max-width: 1024px) {
  .search-page__result-success-link + .search-page__result-success-link {
    margin-top: 20px;
  }
}
.search-page__result-fail-title {
  font-size: 18px;
  line-height: 32px;
  font-weight: 600;
  margin-bottom: 8px;
}
@media only screen and (max-width: 1024px) {
  .search-page__result-fail-title {
    font-size: 16px;
    line-height: 20px;
  }
}
.search-page__result-fail-subtitle {
  font-size: 14px;
  line-height: 20px;
  color: rgba(0, 0, 0, 0.7);
}
@media only screen and (max-width: 1024px) {
  .search-page__result-fail-subtitle {
    font-size: 12px;
    line-height: 16px;
  }
}
.configurator {
  display: grid;
  grid-template-columns: 1fr 685px 1fr;
  grid-template-areas: '. middle aside' '. bottom aside';
  gap: 20px;
  padding-top: 52px;
}
@media only screen and (max-width: 1024px) {
  .configurator {
    gap: 0;
    padding-top: 40px;
    grid-template-columns: 1fr;
  }
}
.configurator__wrap {
  grid-area: middle;
}
.configurator__title {
  display: block;
  margin-bottom: 20px;
}
@media only screen and (max-width: 1024px) {
  .configurator__title {
    margin-bottom: 12px;
  }
}
.configurator__row {
  margin-bottom: 32px;
}
.configurator__row:last-child {
  margin-bottom: 0;
}
.configurator__items {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}
.configurator__item input {
  display: none;
}
.configurator__label {
  font-size: 16px;
  line-height: 20px;
  border-radius: 24px;
  -webkit-border-radius: 24px;
  font-weight: 500;
  background-color: #f5f5f7;
  display: block;
  padding: 10px 24px;
  cursor: pointer;
  transition: 0.3s ease;
}
@media only screen and (max-width: 1024px) {
  .configurator__label {
    font-size: 14px;
    line-height: 20px;
  }
}
@media only screen and (max-width: 640px) {
  .configurator__label {
    padding: 10px 20px;
  }
}
.configurator__label:hover {
  background-color: #ececee;
}
.configurator__label.active,
.configurator__label--active {
  background-color: #000;
  color: #fff;
}
.configurator input:disabled + .configurator__label {
  cursor: default;
  background: #f5f5f7;
  color: rgba(0, 0, 0, 0.3);
}
.configurator input:checked + .configurator__label {
  background-color: #000;
  color: #fff;
}
.configurator__right {
  grid-area: aside;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .configurator__right {
    display: none;
  }
}
.configurator__reset-btn {
  position: sticky;
  top: 100px;
}
.configurator__reset-btn svg {
  transition: rotate 0.23s linear 0s;
}
.configurator__bottom .configurator__reset-btn {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .configurator__bottom .configurator__reset-btn {
    display: flex;
  }
}
@media only screen and (max-width: 640px) {
  .configurator__bottom .configurator__reset-btn {
    width: 100%;
    max-width: none;
  }
}
.configurator__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border-top: 1px solid #dedede;
  grid-area: bottom;
  padding-top: 32px;
  margin-top: 32px;
}
@media only screen and (max-width: 1024px) {
  .configurator__bottom {
    padding-top: 24px;
    margin-top: 40px;
  }
}
@media only screen and (max-width: 640px) {
  .configurator__bottom {
    flex-direction: column;
    gap: 32px;
    padding-top: 16px;
    margin-top: 32px;
  }
}
.configurator__bottom-left {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
  flex-grow: 1;
}
@media only screen and (max-width: 640px) {
  .configurator__bottom-left {
    align-items: start;
    flex-direction: column;
    width: 100%;
  }
}
@media only screen and (max-width: 640px) {
  .configurator__bottom-left .btn--primary {
    width: 100%;
    max-width: none;
  }
}
.configurator__bottom-info {
  display: flex;
  align-items: center;
  gap: 16px;
}
.project-filter__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 50px 20px;
  margin-top: 50px;
}
@media only screen and (max-width: 640px) {
  .project-filter__grid {
    grid-template-columns: 1fr;
    gap: 32px;
    margin-top: 64px;
  }
}
.project-filter__advantage {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
@media only screen and (max-width: 640px) {
  .project-filter__advantage {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}
.project-filter__advantage-item {
  border-radius: 16px;
  -webkit-border-radius: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  overflow: hidden;
  background-color: #f5f5f7;
  padding: 24px;
  text-align: center;
}
@media only screen and (max-width: 640px) {
  .project-filter__advantage-item {
    padding: 16px;
  }
}
.project-filter__form {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 15.3%;
  gap: 20px;
  align-items: flex-end;
}
@media only screen and (max-width: 1024px) {
  .project-filter__form {
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: flex-start;
  }
}
.project-filter__form-btn {
  display: block;
  width: 100%;
  height: 48px;
  max-width: none;
  text-align: center;
}
.project-filter__reset {
  display: none;
  align-items: center;
  gap: 2px;
}
.project-filter__reset.active,
.project-filter__reset--active {
  margin-top: 16px;
  display: flex;
}
@media only screen and (max-width: 640px) {
  .project-filter__reset.active,
  .project-filter__reset--active {
    margin-top: 24px;
    justify-content: flex-end;
  }
}

@charset "UTF-8";


/*!
Animate.css - http://daneden.me/animate
Licensed under the MIT license

Copyright (c) 2013 Daniel Eden

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/

.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

@-webkit-keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  40% {
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }

  60% {
    -webkit-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}

@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  40% {
    -webkit-transform: translateY(-30px);
    -ms-transform: translateY(-30px);
    transform: translateY(-30px);
  }

  60% {
    -webkit-transform: translateY(-15px);
    -ms-transform: translateY(-15px);
    transform: translateY(-15px);
  }
}

.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
}

@-webkit-keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }

  25%, 75% {
    opacity: 0;
  }
}

@keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }

  25%, 75% {
    opacity: 0;
  }
}

.flash {
  -webkit-animation-name: flash;
  animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes pulse {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  50% {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes pulse {
  0% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }

  50% {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
  }

  100% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
}

.pulse {
  -webkit-animation-name: pulse;
  animation-name: pulse;
}

@-webkit-keyframes shake {
  0%, 100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  20%, 40%, 60%, 80% {
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }
}

@keyframes shake {
  0%, 100% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  10%, 30%, 50%, 70%, 90% {
    -webkit-transform: translateX(-10px);
    -ms-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  20%, 40%, 60%, 80% {
    -webkit-transform: translateX(10px);
    -ms-transform: translateX(10px);
    transform: translateX(10px);
  }
}

.shake {
  -webkit-animation-name: shake;
  animation-name: shake;
}

@-webkit-keyframes swing {
  20% {
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg);
  }

  40% {
    -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }

  60% {
    -webkit-transform: rotate(5deg);
    transform: rotate(5deg);
  }

  80% {
    -webkit-transform: rotate(-5deg);
    transform: rotate(-5deg);
  }

  100% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
}

@keyframes swing {
  20% {
    -webkit-transform: rotate(15deg);
    -ms-transform: rotate(15deg);
    transform: rotate(15deg);
  }

  40% {
    -webkit-transform: rotate(-10deg);
    -ms-transform: rotate(-10deg);
    transform: rotate(-10deg);
  }

  60% {
    -webkit-transform: rotate(5deg);
    -ms-transform: rotate(5deg);
    transform: rotate(5deg);
  }

  80% {
    -webkit-transform: rotate(-5deg);
    -ms-transform: rotate(-5deg);
    transform: rotate(-5deg);
  }

  100% {
    -webkit-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    transform: rotate(0deg);
  }
}

.swing {
  -webkit-transform-origin: top center;
  -ms-transform-origin: top center;
  transform-origin: top center;
  -webkit-animation-name: swing;
  animation-name: swing;
}

@-webkit-keyframes tada {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  10%, 20% {
    -webkit-transform: scale(0.9) rotate(-3deg);
    transform: scale(0.9) rotate(-3deg);
  }

  30%, 50%, 70%, 90% {
    -webkit-transform: scale(1.1) rotate(3deg);
    transform: scale(1.1) rotate(3deg);
  }

  40%, 60%, 80% {
    -webkit-transform: scale(1.1) rotate(-3deg);
    transform: scale(1.1) rotate(-3deg);
  }

  100% {
    -webkit-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
}

@keyframes tada {
  0% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }

  10%, 20% {
    -webkit-transform: scale(0.9) rotate(-3deg);
    -ms-transform: scale(0.9) rotate(-3deg);
    transform: scale(0.9) rotate(-3deg);
  }

  30%, 50%, 70%, 90% {
    -webkit-transform: scale(1.1) rotate(3deg);
    -ms-transform: scale(1.1) rotate(3deg);
    transform: scale(1.1) rotate(3deg);
  }

  40%, 60%, 80% {
    -webkit-transform: scale(1.1) rotate(-3deg);
    -ms-transform: scale(1.1) rotate(-3deg);
    transform: scale(1.1) rotate(-3deg);
  }

  100% {
    -webkit-transform: scale(1) rotate(0);
    -ms-transform: scale(1) rotate(0);
    transform: scale(1) rotate(0);
  }
}

.tada {
  -webkit-animation-name: tada;
  animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes wobble {
  0% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  15% {
    -webkit-transform: translateX(-25%) rotate(-5deg);
    transform: translateX(-25%) rotate(-5deg);
  }

  30% {
    -webkit-transform: translateX(20%) rotate(3deg);
    transform: translateX(20%) rotate(3deg);
  }

  45% {
    -webkit-transform: translateX(-15%) rotate(-3deg);
    transform: translateX(-15%) rotate(-3deg);
  }

  60% {
    -webkit-transform: translateX(10%) rotate(2deg);
    transform: translateX(10%) rotate(2deg);
  }

  75% {
    -webkit-transform: translateX(-5%) rotate(-1deg);
    transform: translateX(-5%) rotate(-1deg);
  }

  100% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }
}

@keyframes wobble {
  0% {
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%);
  }

  15% {
    -webkit-transform: translateX(-25%) rotate(-5deg);
    -ms-transform: translateX(-25%) rotate(-5deg);
    transform: translateX(-25%) rotate(-5deg);
  }

  30% {
    -webkit-transform: translateX(20%) rotate(3deg);
    -ms-transform: translateX(20%) rotate(3deg);
    transform: translateX(20%) rotate(3deg);
  }

  45% {
    -webkit-transform: translateX(-15%) rotate(-3deg);
    -ms-transform: translateX(-15%) rotate(-3deg);
    transform: translateX(-15%) rotate(-3deg);
  }

  60% {
    -webkit-transform: translateX(10%) rotate(2deg);
    -ms-transform: translateX(10%) rotate(2deg);
    transform: translateX(10%) rotate(2deg);
  }

  75% {
    -webkit-transform: translateX(-5%) rotate(-1deg);
    -ms-transform: translateX(-5%) rotate(-1deg);
    transform: translateX(-5%) rotate(-1deg);
  }

  100% {
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%);
  }
}

.wobble {
  -webkit-animation-name: wobble;
  animation-name: wobble;
}

@-webkit-keyframes bounceIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(.3);
    transform: scale(.3);
  }

  50% {
    opacity: 1;
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
  }

  70% {
    -webkit-transform: scale(.9);
    transform: scale(.9);
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes bounceIn {
  0% {
    opacity: 0;
    -webkit-transform: scale(.3);
    -ms-transform: scale(.3);
    transform: scale(.3);
  }

  50% {
    opacity: 1;
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
  }

  70% {
    -webkit-transform: scale(.9);
    -ms-transform: scale(.9);
    transform: scale(.9);
  }

  100% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }
}

.bounceIn {
  -webkit-animation-name: bounceIn;
  animation-name: bounceIn;
}

@-webkit-keyframes bounceInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }

  80% {
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }

  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes bounceInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    -ms-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateY(30px);
    -ms-transform: translateY(30px);
    transform: translateY(30px);
  }

  80% {
    -webkit-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    transform: translateY(-10px);
  }

  100% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.bounceInDown {
  -webkit-animation-name: bounceInDown;
  animation-name: bounceInDown;
}

@-webkit-keyframes bounceInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateX(30px);
    transform: translateX(30px);
  }

  80% {
    -webkit-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes bounceInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    -ms-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateX(30px);
    -ms-transform: translateX(30px);
    transform: translateX(30px);
  }

  80% {
    -webkit-transform: translateX(-10px);
    -ms-transform: translateX(-10px);
    transform: translateX(-10px);
  }

  100% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.bounceInLeft {
  -webkit-animation-name: bounceInLeft;
  animation-name: bounceInLeft;
}

@-webkit-keyframes bounceInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    transform: translateX(2000px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateX(-30px);
    transform: translateX(-30px);
  }

  80% {
    -webkit-transform: translateX(10px);
    transform: translateX(10px);
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes bounceInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    -ms-transform: translateX(2000px);
    transform: translateX(2000px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateX(-30px);
    -ms-transform: translateX(-30px);
    transform: translateX(-30px);
  }

  80% {
    -webkit-transform: translateX(10px);
    -ms-transform: translateX(10px);
    transform: translateX(10px);
  }

  100% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.bounceInRight {
  -webkit-animation-name: bounceInRight;
  animation-name: bounceInRight;
}

@-webkit-keyframes bounceInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    transform: translateY(2000px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateY(-30px);
    transform: translateY(-30px);
  }

  80% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
  }

  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes bounceInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    -ms-transform: translateY(2000px);
    transform: translateY(2000px);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateY(-30px);
    -ms-transform: translateY(-30px);
    transform: translateY(-30px);
  }

  80% {
    -webkit-transform: translateY(10px);
    -ms-transform: translateY(10px);
    transform: translateY(10px);
  }

  100% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.bounceInUp {
  -webkit-animation-name: bounceInUp;
  animation-name: bounceInUp;
}

@-webkit-keyframes bounceOut {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }

  25% {
    -webkit-transform: scale(.95);
    transform: scale(.95);
  }

  50% {
    opacity: 1;
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(.3);
    transform: scale(.3);
  }
}

@keyframes bounceOut {
  0% {
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
  }

  25% {
    -webkit-transform: scale(.95);
    -ms-transform: scale(.95);
    transform: scale(.95);
  }

  50% {
    opacity: 1;
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    transform: scale(1.1);
  }

  100% {
    opacity: 0;
    -webkit-transform: scale(.3);
    -ms-transform: scale(.3);
    transform: scale(.3);
  }
}

.bounceOut {
  -webkit-animation-name: bounceOut;
  animation-name: bounceOut;
}

@-webkit-keyframes bounceOutDown {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  20% {
    opacity: 1;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    transform: translateY(2000px);
  }
}

@keyframes bounceOutDown {
  0% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  20% {
    opacity: 1;
    -webkit-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    transform: translateY(-20px);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    -ms-transform: translateY(2000px);
    transform: translateY(2000px);
  }
}

.bounceOutDown {
  -webkit-animation-name: bounceOutDown;
  animation-name: bounceOutDown;
}

@-webkit-keyframes bounceOutLeft {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  20% {
    opacity: 1;
    -webkit-transform: translateX(20px);
    transform: translateX(20px);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
}

@keyframes bounceOutLeft {
  0% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  20% {
    opacity: 1;
    -webkit-transform: translateX(20px);
    -ms-transform: translateX(20px);
    transform: translateX(20px);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    -ms-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
}

.bounceOutLeft {
  -webkit-animation-name: bounceOutLeft;
  animation-name: bounceOutLeft;
}

@-webkit-keyframes bounceOutRight {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  20% {
    opacity: 1;
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    transform: translateX(2000px);
  }
}

@keyframes bounceOutRight {
  0% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  20% {
    opacity: 1;
    -webkit-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    transform: translateX(-20px);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    -ms-transform: translateX(2000px);
    transform: translateX(2000px);
  }
}

.bounceOutRight {
  -webkit-animation-name: bounceOutRight;
  animation-name: bounceOutRight;
}

@-webkit-keyframes bounceOutUp {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  20% {
    opacity: 1;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}

@keyframes bounceOutUp {
  0% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  20% {
    opacity: 1;
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    -ms-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}

.bounceOutUp {
  -webkit-animation-name: bounceOutUp;
  animation-name: bounceOutUp;
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

.fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    transform: translateY(-20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInDownBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    -ms-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    transform: translateX(-20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    -ms-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
    transform: translateX(20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
    -ms-transform: translateX(20px);
    transform: translateX(20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    transform: translateX(2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    -ms-transform: translateX(2000px);
    transform: translateX(2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInUp {
  0% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    transform: translateY(2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes fadeInUpBig {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    -ms-transform: translateY(2000px);
    transform: translateY(2000px);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

.fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    transform: translateY(20px);
  }
}

@keyframes fadeOutDown {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(20px);
    -ms-transform: translateY(20px);
    transform: translateY(20px);
  }
}

.fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    transform: translateY(2000px);
  }
}

@keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(2000px);
    -ms-transform: translateY(2000px);
    transform: translateY(2000px);
  }
}

.fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    transform: translateX(-20px);
  }
}

@keyframes fadeOutLeft {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
    -ms-transform: translateX(-20px);
    transform: translateX(-20px);
  }
}

.fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
}

@keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    -ms-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
}

.fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(20px);
    transform: translateX(20px);
  }
}

@keyframes fadeOutRight {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(20px);
    -ms-transform: translateX(20px);
    transform: translateX(20px);
  }
}

.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    transform: translateX(2000px);
  }
}

@keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    -ms-transform: translateX(2000px);
    transform: translateX(2000px);
  }
}

.fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
  }
}

@keyframes fadeOutUp {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    transform: translateY(-20px);
  }
}

.fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}

@keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    -ms-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}

.fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

@-webkit-keyframes flip {
  0% {
    -webkit-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
    transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
    transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
    transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  100% {
    -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
    transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

@keyframes flip {
  0% {
    -webkit-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
    -ms-transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
    transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  40% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
    -ms-transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
    transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
  }

  50% {
    -webkit-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -ms-transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  80% {
    -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
    -ms-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
    transform: perspective(400px) translateZ(0) rotateY(360deg) scale(.95);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  100% {
    -webkit-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
    -ms-transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
    transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }
}

.animated.flip {
  -webkit-backface-visibility: visible;
  -ms-backface-visibility: visible;
  backface-visibility: visible;
  -webkit-animation-name: flip;
  animation-name: flip;
}

@-webkit-keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotateX(-10deg);
    transform: perspective(400px) rotateX(-10deg);
  }

  70% {
    -webkit-transform: perspective(400px) rotateX(10deg);
    transform: perspective(400px) rotateX(10deg);
  }

  100% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}

@keyframes flipInX {
  0% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    -ms-transform: perspective(400px) rotateX(90deg);
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotateX(-10deg);
    -ms-transform: perspective(400px) rotateX(-10deg);
    transform: perspective(400px) rotateX(-10deg);
  }

  70% {
    -webkit-transform: perspective(400px) rotateX(10deg);
    -ms-transform: perspective(400px) rotateX(10deg);
    transform: perspective(400px) rotateX(10deg);
  }

  100% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    -ms-transform: perspective(400px) rotateX(0deg);
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}

.flipInX {
  -webkit-backface-visibility: visible !important;
  -ms-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInX;
  animation-name: flipInX;
}

@-webkit-keyframes flipInY {
  0% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotateY(-10deg);
    transform: perspective(400px) rotateY(-10deg);
  }

  70% {
    -webkit-transform: perspective(400px) rotateY(10deg);
    transform: perspective(400px) rotateY(10deg);
  }

  100% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}

@keyframes flipInY {
  0% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    -ms-transform: perspective(400px) rotateY(90deg);
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotateY(-10deg);
    -ms-transform: perspective(400px) rotateY(-10deg);
    transform: perspective(400px) rotateY(-10deg);
  }

  70% {
    -webkit-transform: perspective(400px) rotateY(10deg);
    -ms-transform: perspective(400px) rotateY(10deg);
    transform: perspective(400px) rotateY(10deg);
  }

  100% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    -ms-transform: perspective(400px) rotateY(0deg);
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}

.flipInY {
  -webkit-backface-visibility: visible !important;
  -ms-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipInY;
  animation-name: flipInY;
}

@-webkit-keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}

@keyframes flipOutX {
  0% {
    -webkit-transform: perspective(400px) rotateX(0deg);
    -ms-transform: perspective(400px) rotateX(0deg);
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(400px) rotateX(90deg);
    -ms-transform: perspective(400px) rotateX(90deg);
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}

.flipOutX {
  -webkit-animation-name: flipOutX;
  animation-name: flipOutX;
  -webkit-backface-visibility: visible !important;
  -ms-backface-visibility: visible !important;
  backface-visibility: visible !important;
}

@-webkit-keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}

@keyframes flipOutY {
  0% {
    -webkit-transform: perspective(400px) rotateY(0deg);
    -ms-transform: perspective(400px) rotateY(0deg);
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: perspective(400px) rotateY(90deg);
    -ms-transform: perspective(400px) rotateY(90deg);
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}

.flipOutY {
  -webkit-backface-visibility: visible !important;
  -ms-backface-visibility: visible !important;
  backface-visibility: visible !important;
  -webkit-animation-name: flipOutY;
  animation-name: flipOutY;
}

@-webkit-keyframes lightSpeedIn {
  0% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: translateX(-20%) skewX(30deg);
    transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: translateX(0%) skewX(-15deg);
    transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: translateX(0%) skewX(0deg);
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}

@keyframes lightSpeedIn {
  0% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    -ms-transform: translateX(100%) skewX(-30deg);
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }

  60% {
    -webkit-transform: translateX(-20%) skewX(30deg);
    -ms-transform: translateX(-20%) skewX(30deg);
    transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: translateX(0%) skewX(-15deg);
    -ms-transform: translateX(0%) skewX(-15deg);
    transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: translateX(0%) skewX(0deg);
    -ms-transform: translateX(0%) skewX(0deg);
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}

.lightSpeedIn {
  -webkit-animation-name: lightSpeedIn;
  animation-name: lightSpeedIn;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
}

@-webkit-keyframes lightSpeedOut {
  0% {
    -webkit-transform: translateX(0%) skewX(0deg);
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}

@keyframes lightSpeedOut {
  0% {
    -webkit-transform: translateX(0%) skewX(0deg);
    -ms-transform: translateX(0%) skewX(0deg);
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }

  100% {
    -webkit-transform: translateX(100%) skewX(-30deg);
    -ms-transform: translateX(100%) skewX(-30deg);
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}

.lightSpeedOut {
  -webkit-animation-name: lightSpeedOut;
  animation-name: lightSpeedOut;
  -webkit-animation-timing-function: ease-in;
  animation-timing-function: ease-in;
}

@-webkit-keyframes rotateIn {
  0% {
    -webkit-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(-200deg);
    transform: rotate(-200deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

@keyframes rotateIn {
  0% {
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(-200deg);
    -ms-transform: rotate(-200deg);
    transform: rotate(-200deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

.rotateIn {
  -webkit-animation-name: rotateIn;
  animation-name: rotateIn;
}

@-webkit-keyframes rotateInDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

@keyframes rotateInDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

.rotateInDownLeft {
  -webkit-animation-name: rotateInDownLeft;
  animation-name: rotateInDownLeft;
}

@-webkit-keyframes rotateInDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

@keyframes rotateInDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

.rotateInDownRight {
  -webkit-animation-name: rotateInDownRight;
  animation-name: rotateInDownRight;
}

@-webkit-keyframes rotateInUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

@keyframes rotateInUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

.rotateInUpLeft {
  -webkit-animation-name: rotateInUpLeft;
  animation-name: rotateInUpLeft;
}

@-webkit-keyframes rotateInUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

@keyframes rotateInUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }

  100% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }
}

.rotateInUpRight {
  -webkit-animation-name: rotateInUpRight;
  animation-name: rotateInUpRight;
}

@-webkit-keyframes rotateOut {
  0% {
    -webkit-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(200deg);
    transform: rotate(200deg);
    opacity: 0;
  }
}

@keyframes rotateOut {
  0% {
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
    -webkit-transform: rotate(200deg);
    -ms-transform: rotate(200deg);
    transform: rotate(200deg);
    opacity: 0;
  }
}

.rotateOut {
  -webkit-animation-name: rotateOut;
  animation-name: rotateOut;
}

@-webkit-keyframes rotateOutDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }
}

.rotateOutDownLeft {
  -webkit-animation-name: rotateOutDownLeft;
  animation-name: rotateOutDownLeft;
}

@-webkit-keyframes rotateOutDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }
}

@keyframes rotateOutDownRight {
  0% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }
}

.rotateOutDownRight {
  -webkit-animation-name: rotateOutDownRight;
  animation-name: rotateOutDownRight;
}

@-webkit-keyframes rotateOutUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpLeft {
  0% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: left bottom;
    -ms-transform-origin: left bottom;
    transform-origin: left bottom;
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    opacity: 0;
  }
}

.rotateOutUpLeft {
  -webkit-animation-name: rotateOutUpLeft;
  animation-name: rotateOutUpLeft;
}

@-webkit-keyframes rotateOutUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }
}

@keyframes rotateOutUpRight {
  0% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    opacity: 1;
  }

  100% {
    -webkit-transform-origin: right bottom;
    -ms-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
    opacity: 0;
  }
}

.rotateOutUpRight {
  -webkit-animation-name: rotateOutUpRight;
  animation-name: rotateOutUpRight;
}

@-webkit-keyframes slideInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }

  100% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes slideInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    -ms-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }

  100% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
}

.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes slideInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    -ms-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }

  100% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    transform: translateX(2000px);
  }

  100% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes slideInRight {
  0% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    -ms-transform: translateX(2000px);
    transform: translateX(2000px);
  }

  100% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }
}

.slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideOutLeft {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
}

@keyframes slideOutLeft {
  0% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(-2000px);
    -ms-transform: translateX(-2000px);
    transform: translateX(-2000px);
  }
}

.slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    transform: translateX(2000px);
  }
}

@keyframes slideOutRight {
  0% {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(2000px);
    -ms-transform: translateX(2000px);
    transform: translateX(2000px);
  }
}

.slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
  0% {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}

@keyframes slideOutUp {
  0% {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateY(-2000px);
    -ms-transform: translateY(-2000px);
    transform: translateY(-2000px);
  }
}

.slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}

@-webkit-keyframes hinge {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  20%, 60% {
    -webkit-transform: rotate(80deg);
    transform: rotate(80deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40% {
    -webkit-transform: rotate(60deg);
    transform: rotate(60deg);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  80% {
    -webkit-transform: rotate(60deg) translateY(0);
    transform: rotate(60deg) translateY(0);
    opacity: 1;
    -webkit-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  100% {
    -webkit-transform: translateY(700px);
    transform: translateY(700px);
    opacity: 0;
  }
}

@keyframes hinge {
  0% {
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    -webkit-transform-origin: top left;
    -ms-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  20%, 60% {
    -webkit-transform: rotate(80deg);
    -ms-transform: rotate(80deg);
    transform: rotate(80deg);
    -webkit-transform-origin: top left;
    -ms-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  40% {
    -webkit-transform: rotate(60deg);
    -ms-transform: rotate(60deg);
    transform: rotate(60deg);
    -webkit-transform-origin: top left;
    -ms-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  80% {
    -webkit-transform: rotate(60deg) translateY(0);
    -ms-transform: rotate(60deg) translateY(0);
    transform: rotate(60deg) translateY(0);
    opacity: 1;
    -webkit-transform-origin: top left;
    -ms-transform-origin: top left;
    transform-origin: top left;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
  }

  100% {
    -webkit-transform: translateY(700px);
    -ms-transform: translateY(700px);
    transform: translateY(700px);
    opacity: 0;
  }
}

.hinge {
  -webkit-animation-name: hinge;
  animation-name: hinge;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollIn {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%) rotate(-120deg);
    transform: translateX(-100%) rotate(-120deg);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
    transform: translateX(0px) rotate(0deg);
  }
}

@keyframes rollIn {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-100%) rotate(-120deg);
    -ms-transform: translateX(-100%) rotate(-120deg);
    transform: translateX(-100%) rotate(-120deg);
  }

  100% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
    -ms-transform: translateX(0px) rotate(0deg);
    transform: translateX(0px) rotate(0deg);
  }
}

.rollIn {
  -webkit-animation-name: rollIn;
  animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */

@-webkit-keyframes rollOut {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
    transform: translateX(0px) rotate(0deg);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(100%) rotate(120deg);
    transform: translateX(100%) rotate(120deg);
  }
}

@keyframes rollOut {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0px) rotate(0deg);
    -ms-transform: translateX(0px) rotate(0deg);
    transform: translateX(0px) rotate(0deg);
  }

  100% {
    opacity: 0;
    -webkit-transform: translateX(100%) rotate(120deg);
    -ms-transform: translateX(100%) rotate(120deg);
    transform: translateX(100%) rotate(120deg);
  }
}

.rollOut {
  -webkit-animation-name: rollOut;
  animation-name: rollOut;
}

