// Wrapper for the slide container and indicators
.carousel {
  position: relative;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.carousel-item {
  position: relative;
  display: none;
  align-items: center;
  width: 100%;
  @include transition($carousel-transition);
  backface-visibility: hidden;
  perspective: 1000px;
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block;
}

.carousel-item-next,
.carousel-item-prev {
  position: absolute;
  top: 0;
}

// CSS3 transforms when supported by the browser
.carousel-item-next.carousel-item-left,
.carousel-item-prev.carousel-item-right {
  transform: unset !important;

  @supports (transform-style: preserve-3d) {
    transform: unset !important;
  }
}

.carousel-item-next,
.active.carousel-item-right {
  transform: unset !important;

  @supports (transform-style: preserve-3d) {
    transform: unset !important;
  }
}

.carousel-item-prev,
.active.carousel-item-left {
  transform: unset !important;

  @supports (transform-style: preserve-3d) {
    transform: unset !important;
  }
}


//
// Left/right controls for nav
//

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  // Use flex for alignment (1-3)
  display: flex; // 1. allow flex styles
  align-items: center; // 2. vertically center contents
  justify-content: center; // 3. horizontally center contents
  width: $carousel-control-width;
  color: $carousel-control-color;
  text-align: center;
  opacity: $carousel-control-opacity;
  // We can't have a transition here because WebKit cancels the carousel
  // animation if you trip this while in the middle of another animation.

  // Hover/focus state
  @include hover-focus {
    color: $carousel-control-color;
    text-decoration: none;
    outline: 0;
    opacity: .9;
  }
}
.carousel-control-prev {
  left: 0;
  @if $enable-gradients {
    background: linear-gradient(90deg, rgba(0, 0, 0, .25), rgba(0, 0, 0, .001));
  }
}
.carousel-control-next {
  right: 0;
  @if $enable-gradients {
    background: linear-gradient(270deg, rgba(0, 0, 0, .25), rgba(0, 0, 0, .001));
  }
}

// Icons for within
.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: $carousel-control-icon-width;
  height: $carousel-control-icon-width;
  background: transparent no-repeat center center;
  background-size: 100% 100%;
}
.carousel-control-prev-icon {
  background-image: $carousel-control-prev-icon-bg;
}
.carousel-control-next-icon {
  background-image: $carousel-control-next-icon-bg;
}


// Optional indicator pips
//
// Add an ordered list with the following class and add a list item for each
// slide your carousel holds.

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 10px;
  left: 0;
  z-index: 15;
  display: flex;
  justify-content: center;
  padding-left: 0; // override <ol> default
  // Use the .carousel-control's width as margin so we don't overlay those
  margin-right: $carousel-control-width;
  margin-left: $carousel-control-width;
  list-style: none;

  li {
    position: relative;
    flex: 0 1 auto;
    width: $carousel-indicator-width;
    height: $carousel-indicator-height;
    margin-right: $carousel-indicator-spacer;
    margin-left: $carousel-indicator-spacer;
    text-indent: -999px;
    background-color: rgba($carousel-indicator-active-bg, .5);

    // Use pseudo classes to increase the hit area by 10px on top and bottom.
    &::before {
      position: absolute;
      top: -10px;
      left: 0;
      display: inline-block;
      width: 100%;
      height: 10px;
      content: "";
    }
    &::after {
      position: absolute;
      bottom: -10px;
      left: 0;
      display: inline-block;
      width: 100%;
      height: 10px;
      content: "";
    }
  }

  .active {
    background-color: $carousel-indicator-active-bg;
  }
}


// Optional captions
//
//

.carousel-caption {
  position: absolute;
  right: ((100% - $carousel-caption-width) / 2);
  bottom: 20px;
  left: ((100% - $carousel-caption-width) / 2);
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: $carousel-caption-color;
  text-align: center;
}

/** Carousel reso custom style */

.carousel-indicators {
    position: absolute;
    bottom: 32px;
    z-index: 10;
    width: 100%;
    display: flex;
    width: 100%;
    -webkit-box-pack: center;
    justify-content: center;
}

.carousel-indicators li {
  width: 12px;
  height: 12px;
  margin: 0 4px;
}

.carousel-indicators li.active::before{
  width: 12px;
  height: 12px;
  margin-top: 0;
  margin-left: 0px;
}

.carousel-indicators li::before {
  content: '.';
  float: left;
  text-indent: -9999px;
  display: inline-block;
  margin-top: 3px;
  margin-left: 3px;
  width: 6px;
  height: 6px;
  background-color: #308f49;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}

.carousel-control-next {
    position: absolute;
    left: 10px;
    top: 160px;
    text-indent: -9999px;
    background-image: url('../../../ru.reso/resources/images/oson/banner-1-arrows.png');
    width: 10px;
    height: 15px;
    background-position: left top;
    background-repeat: no-repeat;
    z-index: 99;
    right: 10px;
    background-position: right top;
    left: auto;
}

.carousel-control-prev {
    position: absolute;
    left: 10px;
    top: 160px;
    text-indent: -9999px;
    background-image: url('../../../ru.reso/resources/images/oson/banner-1-arrows.png');
    width: 10px;
    height: 15px;
    background-position: left top;
    background-repeat: no-repeat;
    z-index: 99;
}

/** Reso items */

.banner {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 30% center;
  min-height: 380px;
  color: #fff;
  padding: 20px;
  margin-bottom: 13px;
  box-sizing: border-box;
  height: 380px;
}

.banner-head {
	color: #fff;
	font-size: 2.6428rem;
	font-weight: 800;
	margin: 0;
    margin-bottom: 0px;
	padding: 0;
	line-height: 1;
	margin-bottom: 12px;
}

.banner-text {
	font-size: 0.9285rem;
	text-align: center;
	color: #fff;
	line-height: 20px;
    padding-bottom: 5px;
    display: flex;
}

.banner-button {
  padding: 12px 25px 12px;
  /*margin-top: 25px;*/
  vertical-align: top;
  font-size: 1.2142rem;
  line-height: 1.471;
  text-align: center;
  color: #ffffff;
  font-weight: bold;
  border: 0;
  border-radius: 28px;
  background: #23803F;
  background-image: -webkit-gradient(linear, left top, right top, color-stop(3%, rgba(90, 168, 68, 0)), to(#5AA844));
  background-image: -webkit-linear-gradient(left, rgba(90, 168, 68, 0) 3%, #5AA844 100%);
  background-image: -o-linear-gradient(left, rgba(90, 168, 68, 0) 3%, #5AA844 100%);
  background-image: linear-gradient(90deg, rgba(90, 168, 68, 0) 3%, #5AA844 100%);
  -webkit-box-shadow: 0 10px 15px 0 rgba(146, 209, 73, 0.3);
  box-shadow: 0 10px 15px 0 rgba(146, 209, 73, 0.3);
  -webkit-transition: background 0.15s cubic-bezier(0.4, 0, 0.2, 1), color 0.15s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.15s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.15s cubic-bezier(0.4, 0, 0.2, 1);
  -o-transition: background 0.15s cubic-bezier(0.4, 0, 0.2, 1), color 0.15s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.15s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.15s cubic-bezier(0.4, 0, 0.2, 1);
  transition: background 0.15s cubic-bezier(0.4, 0, 0.2, 1), color 0.15s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.15s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.15s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: background, color, border-color, opacity;
  cursor: pointer;
  display: flex;
}

.banner-button-block {
	margin-top: 15px;
}

a.banner-button:hover,
.banner-button:hover {
	color: #fff;
	background:#289449;
    background-image: none;
	background-image: -webkit-gradient(linear, left top, right top, color-stop(3%, rgba(90, 168, 68, 0)), to(#65b74e));
	background-image: -webkit-linear-gradient(left, rgba(90, 168, 68, 0) 3%, #65b74e 100%);
	background-image: -o-linear-gradient(left, rgba(90, 168, 68, 0) 3%, #65b74e 100%);
	background-image: linear-gradient(90deg,rgba(90, 168, 68, 0) 3%, #65b74e 100%);
}


/*---Горизонтальное меню---*/

.content-menu {
	margin-bottom: 15px;
	padding: 0 20px;
    border-bottom: 1px solid #e7e7e7;
}
.content-menu .item.nav-active {
	background: #92d149;
}
.content-menu .item.nav-active a {
    color:  #fff;
}
.content-menu .item {
    display: inline-block;
    vertical-align: top;
    padding-bottom: 15px;
    font-size: 0.9285rem;
    line-height: 1.54;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    color: #000000;
    margin-right: 29px;
	padding: 5px 5px 14px 5px;
}

.content-menu .item:hover {
    border-bottom: 3px solid #92d149;
    padding-bottom: 11px;
}
.content-menu .item a {
    color: #000;
    font-weight: 600;
}
.content-menu .item a:hover {
    color: #000;
    text-decoration: none;
}
.content-menu .slick-next:before, 
.content-menu .slick-prev:before,
.content-menu .slick-next::after, 
.content-menu .slick-prev::after {
    content: unset;
}
.content-menu .slick-list {
    width: 97%;
}
.content-menu .slick-prev, .content-menu .slick-next {
    left: -5px;
    top: 21px;
	margin-top: 0;
    background: transparent url(/system/modules/ru.reso.landing/resources/images/gr/arrow-prev.svg) 50% 50% no-repeat !important;
}
.content-menu .slick-next {
	left: unset;
    right: -5px;
    -webkit-transform: rotate(-180deg) !important;
    -ms-transform: rotate(-180deg) !important;
    transform: rotate(-180deg) !important;
}

/** спиосок документов */
.doc-list-link,
.doc-list-link a {
  display: flex;
}
.doc-list-caption {
  padding: 0 10px;
}
.doc-list-icon img {
  max-width: unset;
}
.center .doc-list-link {	
	align-items: center;
}
.right .doc-list-link {
	flex-direction: row-reverse;
}

.grey-background {
  background: #F4F8FB;
}

.green-background {
  background: #23803F;
  background-image: -webkit-gradient(linear, left bottom, left top, color-stop(1%, rgba(90, 168, 68, 0)), color-stop(99%, #5AA844));
  background-image: -webkit-linear-gradient(bottom, rgba(90, 168, 68, 0) 1%, #5AA844 99%);
  background-image: -o-linear-gradient(bottom, rgba(90, 168, 68, 0) 1%, #5AA844 99%);
  background-image: linear-gradient(0deg, rgba(90, 168, 68, 0) 1%, #5AA844 99%);
}

.green-background .content-caption-icon {
	background: #fff;
}
.green-background .global-title {
	color: #fff;
}
.green-background .faq-item-info {
	color: #000;
}
/** FAQ */

.frmtr-faq-list .faq-list {
  padding-top: 30px;
}

.frmtr-faq-list .faq-item {
  margin-bottom: 10px;
  background: rgba(255, 255, 255, 0.85);
  border-radius: 10px;
  -webkit-transition: background-color 0.15s cubic-bezier(0.4, 0, 0.2, 1);
  -o-transition: background-color 0.15s cubic-bezier(0.4, 0, 0.2, 1);
  transition: background-color 0.15s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: background-color;
}

.frmtr-faq-list .faq-item.open {
  background-color: #ffffff;
  -webkit-box-shadow: 0 5px 10px 0 #D0E1ED;
  box-shadow: 0 5px 10px 0 #D0E1ED;
}

.frmtr-faq-list .faq-item.open .faq-item-caption {
  padding-bottom: 10px;
  color: #92D149;
}

.frmtr-faq-list .faq-item.open .faq-item-caption:before {
  background-image: url("../../../ru.reso.landing/resources/images/gr/arrow-top.svg");
}

.frmtr-faq-list .faq-item.open .faq-item-info {
  display: block;
}

.frmtr-faq-list .faq-item-caption {
  display: block;
  font-weight: bold;
  padding: 20px 65px 20px 25px;
  position: relative;
}

.frmtr-faq-list .faq-item-caption:before {
  content: "";
  position: absolute;
  top: 30px;
  right: 27px;
  width: 11px;
  height: 7px;
  background: transparent url("/system/modules/ru.reso.landing/resources/images/gr/arrow.svg") 50% 50% no-repeat;
  background-size: 100% 100%;
}

.frmtr-faq-list .faq-item-info {
  display: none;
  max-width: 800px;
  padding: 0 25px 7px;
  font-size: 0.9285rem;
  line-height: 1.77;
}

.frmtr-faq-list .faq-item-info p {
  margin-bottom: 13px;
}

.frmtr-faq-list .faq-list-hidden {
  display: none;
}

.frmtr-faq-list .faq-more {
  padding: 25px 0 10px;
  text-align: center;
}

/** FAQ INCREASED */

.frmtr-faq-list .increased .faq-item {
    margin-bottom: 25px;
    background: #F5F5F5;
    border-radius: 10px;
    -webkit-transition: background-color 0.15s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.15s cubic-bezier(0.4, 0, 0.2, 1);
    transition: background-color 0.15s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.15s cubic-bezier(0.4, 0, 0.2, 1);
    -o-transition: background-color 0.15s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.15s cubic-bezier(0.4, 0, 0.2, 1);
    transition: background-color 0.15s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.15s cubic-bezier(0.4, 0, 0.2, 1);
    transition: background-color 0.15s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.15s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.15s cubic-bezier(0.4, 0, 0.2, 1);
    will-change: background-color, box-shadow;
}
.frmtr-faq-list .increased .faq-item.open {
	box-shadow: unset;
}
.frmtr-faq-list .increased .faq-item-caption {
    display: block;
    font-size: 1.7857rem;
    line-height: 1.2;
    color: #000000;
    padding: 50px 130px 50px 65px;
    position: relative;
    font-weight: normal;
}
.frmtr-faq-list .increased .faq-item-caption::before {
    top: 45px;
    right: 45px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-size: 16px 9px;
    -webkit-transition: border-color 0.15s cubic-bezier(0.4, 0, 0.2, 1);
    -o-transition: border-color 0.15s cubic-bezier(0.4, 0, 0.2, 1);
    transition: border-color 0.15s cubic-bezier(0.4, 0, 0.2, 1);
    will-change: border-color;
	border: 2px solid rgba(35, 128, 63, 0.4);
	background: transparent url("/system/modules/ru.reso.landing/resources/images/gr/arrow-big.svg") 50% calc(50% + 1px) no-repeat;
}
.frmtr-faq-list .increased .open .faq-item-caption::before {
	background-image: url("/system/modules/ru.reso.landing/resources/images/gr/arrow-top-big.svg");
	background-position: 50% calc(50% - 1px);
	border-color: rgba(146, 209, 73, 0.4);
}
.frmtr-faq-list .increased .faq-item-info {
    max-width: 880px;
    padding: 0 65px 50px;
}
.frmtr-faq-list .faq-item.open .faq-item-caption {
    padding-bottom: 8px;
}


/** ICONS list */

.company-item {
  display: block;
  padding: 30px 20px 20px 30px;
  background: #ffffff;
  border-radius: 10px;
  -webkit-transition: -webkit-transform 0.15s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.15s cubic-bezier(0.4, 0, 0.2, 1);
  transition: -webkit-transform 0.15s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.15s cubic-bezier(0.4, 0, 0.2, 1);
  -o-transition: transform 0.15s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.15s cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 0.15s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.15s cubic-bezier(0.4, 0, 0.2, 1);
  transition: transform 0.15s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.15s cubic-bezier(0.4, 0, 0.2, 1), -webkit-transform 0.15s cubic-bezier(0.4, 0, 0.2, 1), -webkit-box-shadow 0.15s cubic-bezier(0.4, 0, 0.2, 1);
  will-change: transform, box-shadow;
  cursor: unset;
}
.company-item:hover {
    -webkit-transform: translate3d(0, -10px, 0);
    transform: translate3d(0, -10px, 0);
    -webkit-box-shadow: 0 15px 20px 0 rgba(37, 52, 41, 0.1);
        box-shadow: rgba(37, 52, 41, 0.1) 0px 15px 20px 0px;
    box-shadow: 0 15px 20px 0 
    rgba(52, 45, 37, 0.2);
}
.company-item .company-item-icon {
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  margin-bottom: 25px;
  padding: 5px;
  border-radius: 50%;
  background: #E7F2E3;
}
.company-item-title {
  display: block;
  margin-bottom: 5px;
  font-size: 2.7142rem;
  line-height: 1.2223;
  font-weight: 800;
  color: #23803F;
}
.company-item-info {
  display: block;
  margin-bottom: 5px;
  color: #000000;
}
@media(max-width:991px) {
	.company-item {
		display: flex;
		flex-wrap: wrap;
		padding: 10px 30px;
		margin-bottom: 15px;
	}
	.company-item .company-item-icon {
		margin-right: 20px;
		margin-bottom: 10px;
	}
	#company .company-item .company-item-title {
		font-size: 2.5rem;
	}
	.company-item:hover {
    	-webkit-transform: translate3d(10px, 0, 0);
    	transform: translate3d(10px, 0, 0);
	}
	.company-item-info {
		width: 100%;
		padding-left: 70px;
	}
	.content-menu .item {
		font-size: 0.7142rem;
	}
}

/** number list */
@media(max-width:991px) {
	.company-about .company-about-item {
	  display: flex;
	}
	.company-about .company-about-title::before {
  		content: unset;
	}
	.company-about .company-about-number {
	  display: flex;
	}
	.item.green-border-bottom {
	  border-bottom: 3px solid #92d149;
	  padding-bottom: 11px;
	}
}

@media (min-width: 992px) {
	.content-menu .slick-prev {
		top: 26px;
	}
	.content-menu .slick-next {
		top: 17px;
	}
}