@charset "UTF-8";

:root {
  --bs-font-sans-serif: "Montserrat",sans-serif;
  --bs-body-color: #232528;
  --bs-light: #fff;
  --bs-dark: #2e3338;
  --bs-accent: #45739b;
  --bs-grey: #f1f5f6;
}

* {
  outline: none;
}

html {
  font-size: 62.5%;
}

body,
html {
  height: 100%;
}

body {
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
  overflow-x: hidden;
}

a,
button {
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
}

a {
  text-decoration: underline;
}

a:hover {
  text-decoration: none;
}

p {
  margin: 0 0 2rem;
}

p:last-child {
  margin: 0;
}

.wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 auto;
  max-width: 1920px;
  width: 100%;
}

.wrapper__aside {
  width: 390px;
}

.wrapper__main {
  background-color: #fff;
  position: relative;
  width: calc(100% - 390px);
  z-index: 100;
}

.logo img {
  height: auto;
  width: 240px;
}

.phone a {
  -webkit-font-feature-settings: "tnum" on,"lnum" on;
  font-feature-settings: "tnum" on,"lnum" on;
  color: var(--bs-dark);
    font: 600 30px/90px var(--bs-font-sans-serif);
  text-decoration: none;
}
.contact-hero .contact-hero__item {
    max-width: 90%;
}
    


.email {
  -webkit-box-align: end;
  -ms-flex-align: end;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  align-items:endr;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: end;
}

.email img {
  margin-right: 15px;
}

.email a {
  color: var(--bs-dark);
  font: 400 18px/1 var(--bs-font-sans-serif);
  text-decoration: underline;
}

.email a:hover {
  text-decoration: none;
}

.h1-title {
  -webkit-font-feature-settings: "tnum" on,"lnum" on;
  font-feature-settings: "tnum" on,"lnum" on;
  color: var(--bs-body-color);
  font: 700 55px/90% Cormorant,serif;
  letter-spacing: 2px;
}

.h2-title {
  -webkit-font-feature-settings: "tnum" on,"lnum" on;
  font-feature-settings: "tnum" on,"lnum" on;
  color: var(--bs-body-color);
  font: 700 45px/90% Cormorant,serif;
}

.h3-title {
  -webkit-font-feature-settings: "tnum" on,"lnum" on;
  font-feature-settings: "tnum" on,"lnum" on;
  font: 700 30px/90% Cormorant,serif;
}

.padding-left {
  padding-left: 80px;
}

.service-box:hover {
    background: rgb(241 245 246);
    height: 100%;
}

.padding-right {
  padding-right: 80px;
}

.service-box {
    padding: 60px;
    height:100%;
}


.button {
  background: transparent;
  border: 0;
  color: #45739b;
  font: 500 18px/24px var(--bs-font-sans-serif);
  padding: 0;
  text-decoration: none;
  text-transform: uppercase;
}

.button:hover {
  color: #45739b;
  text-decoration: none;
}

.button-icon {
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.button-icon img {
  margin-left: 27px;
      max-width: 85px;
}

.scrollto img{
    max-height: 85px;
}

.swiper__btn,
.swiper__btn-next,
.swiper__btn-prev {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.swiper__btn-next,
.swiper__btn-prev {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  align-items: center;
  background-color: #f1f5f6;
  cursor: pointer;
  height: 60px;
  justify-content: center;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  width: 60px;
}

.swiper__btn-next:hover,
.swiper__btn-prev:hover {
  background-color: #45739b;
  color: #fff;
}

.swiper__btn-next:hover svg path,
.swiper__btn-prev:hover svg path {
  stroke: #fff;
  opacity: 1;
}

.swiper__btn-next svg path,
.swiper__btn-prev svg path {
  stroke: #232628;
  opacity: .4;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
}

.swiper__btn-prev {
  margin-right: 30px;
}

.g-form {
  --bs-gutter-y: 100px;
  --bs-gutter-x: 100px;
}

.section__form {
  background-color: #232628;
  padding-bottom: 186px;
  padding-top: 173px;
  position: relative;
}

.section__form-item {
  margin: 0 0 70px;
  max-width: 480px;
  width: 100%;
}

.section__form .h2-title {
  color: #fff;
  margin: 0 0 40px;
}

.section__form .text {
  color: #fff;
}

.section__form:after {
  background-color: #fff;
  content: "";
  height: 30px;
  left: 0;
  position: absolute;
  top: 0;
  width: 80%;
}

.form__input {
  height: 50px;
}

.form__input,
.form__textarea {
  background: transparent;
  border: none;
  display: block;
  font-size: 18px;
  padding: 0;
  width: 100%;
}

.form__textarea {
  height: 120px;
  resize: none;
}

.form .button-left {
  margin-left: 100px;
}

.form .g-5 {
  --bs-gutter-y: 5rem;
  --bs-gutter-x: 5rem;
}

.form .button {
  margin-top: 25px;
}

.form__dark .form__input,
.form__dark .form__textarea {
  border-bottom: 1px solid #fff;
  color: #fff;
}

.form__dark .form__input::-webkit-input-placeholder,
.form__dark .form__textarea::-webkit-input-placeholder {
  color: #fff;
  font-size: 18px;
}

.form__dark .form__input::-moz-placeholder,
.form__dark .form__textarea::-moz-placeholder {
  color: #fff;
  font-size: 18px;
}

.form__dark .form__input:-ms-input-placeholder,
.form__dark .form__textarea:-ms-input-placeholder {
  color: #fff;
  font-size: 18px;
}

.form__dark .form__input::-ms-input-placeholder,
.form__dark .form__textarea::-ms-input-placeholder {
  color: #fff;
  font-size: 18px;
}

.form__dark .form__input::placeholder,
.form__dark .form__textarea::placeholder {
  color: #fff;
  font-size: 18px;
}

.form__dark .form__input.error,
.form__dark .form__textarea.error {
  border-color: red;
}

.form__light .form__input,
.form__light .form__textarea {
  border-bottom: 1px solid #232528;
  color: #232528;
}

.form__light .form__input::-webkit-input-placeholder,
.form__light .form__textarea::-webkit-input-placeholder {
  color: #232528;
  font-size: 18px;
}

.form__light .form__input::-moz-placeholder,
.form__light .form__textarea::-moz-placeholder {
  color: #232528;
  font-size: 18px;
}

.form__light .form__input:-ms-input-placeholder,
.form__light .form__textarea:-ms-input-placeholder {
  color: #232528;
  font-size: 18px;
}

.form__light .form__input::-ms-input-placeholder,
.form__light .form__textarea::-ms-input-placeholder {
  color: #232528;
  font-size: 18px;
}

.form__light .form__input::placeholder,
.form__light .form__textarea::placeholder {
  color: #232528;
  font-size: 18px;
}

.form__light .form__input.error,
.form__light .form__textarea.error {
  border-color: red;
}

.modalForm .modal-content {
  padding: 50px;
}

.modalForm .h2-title {
  font-size: 40px;
  margin: 0 0 20px;
}

.modalForm .text {
  text-align: center;
}

.modalForm .form__input,
.modalForm .text {
  margin-bottom: 30px;
}

.btn-close {
  margin: 0;
  outline: none;
  padding: 0;
  position: absolute;
  right: 15px;
  top: 15px;
}

.btn-close:focus {
  outline: none;
}

.section-cases {
  padding-bottom: 150px;
}

.section-cases .section__title {
  margin-bottom: 60px;
}

.section-cases .section__title .h2-title {
  margin: 0;
}

.cases__card {
  background-color: #f1f5f6;
  border-radius: .25rem;
  height: 100%;
  position: relative;
}
.cases__card a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.cases__card-body {
  padding: 90px 90px 150px;
}

.cases__card .h3-title {
  margin: 0 0 26px;
}

.cases__card .h3-title a {
  color: #232528;
  text-decoration: none;
}

.cases__card .text p {
  -webkit-line-clamp: 6;
  -webkit-box-orient: vertical;
  line-clamp: 6;
  box-orient: vertical;
  display: -moz-box;
  display: -webkit-box;
  min-height: 162px;
  overflow: hidden;
  -o-text-overflow: ellipsis;
  text-overflow: ellipsis;
}

.cases__card-footer {
  padding: 0 90px 90px;
}

.cases__data {
  position: relative;
}

.cases__data-number {
  color: #45739b;
  font-size: 6rem;
  font-weight: 300;
  left: 0;
  line-height: 1;
  position: absolute;
  top: -25px;
}

.cases__data-value {
  color: #232528;
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: .44px;
  line-height: 1;
      padding-left: 80px;
  position: relative;
  z-index: 1;
}

.tabs__nav {
  width: 390px;
}

.tabs__nav li {
  border-bottom: 1px solid #dde4e5;
  width: 100%;
}

.tabs__nav li:last-child {
  border-bottom: 0;
}

.tabs__nav li a {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: 300px;
  text-decoration: none;
}

.tabs__nav-number {
  -webkit-font-feature-settings: "tnum" on,"lnum" on;
  font-feature-settings: "tnum" on,"lnum" on;
  color: #dde4e5;
  font: 700 60px/54px Cormorant,serif;
  margin-right: 90px;
}

.tabs__nav-title {
  -webkit-font-feature-settings: "tnum" on,"lnum" on;
  font-feature-settings: "tnum" on,"lnum" on;
  color: var(--bs-body-color);
  font: 700 30px/27px Cormorant,serif;
}

.tabs__arrow {
  margin-left: 60px;
  margin-right: 60px;
}

.tabs__content {
  padding-left: 15%;
  position: relative;
}

.tabs__content p {
  -webkit-font-feature-settings: "tnum" on,"lnum" on;
  font-feature-settings: "tnum" on,"lnum" on;
  color: var(--bs-body-color);
  font: 700 30px/27px Cormorant,serif;
}

.tabs__content-number {
  color: #45739b;
    font-size: 120px;
    font-weight: 200;
    left: 0;
    line-height: 1;
    position: absolute;
    top: -120px;
    z-index: -1;
}

.tabs__header {
  margin: 0 0 20px;
}

.tabs__header .h3-title {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: var(--bs-body-color);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-decoration: none;
}

.tabs__header .h3-title span {
  -webkit-font-feature-settings: "tnum" on,"lnum" on;
  font-feature-settings: "tnum" on,"lnum" on;
  color: #dde4e5;
  font: 700 30px/90% Cormorant,serif;
  margin-right: 10px;
}

.aside__logo {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  align-items: center;
  background-color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 180px;
  justify-content: center;
  margin-bottom: 100px;
  width: 100%;
}

.aside__nav li {
  display: block;
  max-width: 70%;
  overflow: hidden;
  position: relative;
  text-align: right;
  -webkit-transition: all .5s ease-in-out;
  -o-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
}

.aside__nav li:before {
  background: url(../images/icons/dot.svg) repeat-x 50% 50%;
  content: "";
  height: 2px;
  left: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  white-space: nowrap;
  width: 100%;
}



.aside__nav a {
  background-color: #fff;
  color: #232528;
  font: 600 18px/70px var(--bs-font-sans-serif);
  padding-left: 5px;
  position: relative;
  text-decoration: none;
  text-transform: uppercase;
  z-index: 1;
}

.aside__nav a:hover {
  color: var(--bs-accent);
  text-decoration: none;
}

.aside__nav .active a{
  color: var(--bs-accent);
  text-decoration: none;
}

.header {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 180px;
  padding: 0 80px 0 0;
  width: 100%;
}

.header__container {
  width: 100%;
}

.header .logo {
  background-color: var(--bs-dark);
  padding: 20px;
}

.header .phone {
  margin-right: 56px;
}

.header .language {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  align-items: center;
  background-color: var(--bs-dark);
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font: 500 20px/24px var(--bs-font-sans-serif);
  height: 90px;
  justify-content: center;
  margin-left: 40px;
  text-decoration: none;
  text-transform: uppercase;
  width: 90px;
}

#hamburger {
  cursor: pointer;
  height: 30px;
  margin-left: 30px;
  position: relative;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .5s ease-in-out;
  -o-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
  width: 40px;
  z-index: 500;
}

#hamburger span {
  background: #fff;
  border-radius: 9px;
  display: block;
  height: 2px;
  left: 5px;
  opacity: 1;
  position: absolute;
  -webkit-transform: rotate(0deg);
  -ms-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
  width: 36px;
}

#hamburger.open span {
    background: #2e3337;
}

#hamburger span:first-child {
  top: 0;
}

#hamburger span:nth-child(2) {
  top: 13px;
}

#hamburger span:nth-child(3) {
  top: 27px;
}

#hamburger.open span:first-child {
  top: 14px;
  -webkit-transform: rotate(135deg);
  -ms-transform: rotate(135deg);
  transform: rotate(135deg);
}

#hamburger.open span:nth-child(2) {
  left: -50px;
  opacity: 0;
}

#hamburger.open span:nth-child(3) {
  top: 14px;
  -webkit-transform: rotate(-135deg);
  -ms-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

.mobile-nav {
  background-color: #fff;
  display: none;
  height: 100vh;
  left: 0;
  position: fixed;
  top: 0;
  width: 100vw;
  z-index: 10;
}

.mobile-nav__items {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  justify-content: center;
}

.mobile-menu {
  text-align: center;
}

.mobile-menu li.active a {
  color: #2e3338;
}

.mobile-menu a {
  color: #45739b;
  font: 500 20px/50px var(--bs-font-sans-serif);
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
}

.mobile-menu a:hover {
  color: #2e3338;
}

._lock {
  overflow: hidden;
}

.footer {
  background-color: var(--bs-dark);
  padding: 100px 80px 100px 100px;
}

.footer .phone {
  margin-bottom: 20px;
  display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    justify-content: end;
}
.footer .phone img{
    width: 30px;
    margin-top: 5px;
    margin-right: 10px;
}

.footer .email a,
.footer .phone a {
  color: #fff;
}

.section__reviews {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  padding-bottom: 100px;
  padding-top: 250px;
  position: relative;
}

.section__reviews:before {
  background-color: #fff;
  bottom: 0;
  content: "";
  height: 60px;
  left: 0;
  position: absolute;
  width: 55%;
}

.section__reviews:after {
  background-color: #fff;
  content: "";
  height: 30px;
  position: absolute;
  right: 0;
  top: 0;
  width: 55%;
}

.section__reviews-text {
  color: var(--bs-light);
  margin: 0 auto;
  padding: 0 80px;
  position: relative;
  text-align: center;
  width: 100%;
-webkit-font-feature-settings: "tnum" on,"lnum" on;
font-feature-settings: "tnum" on,"lnum" on;
font: 700 35px/90% Cormorant,serif;
}

.section__reviews-text:after,
.section__reviews-text:before {
  color: var(--bs-accent);
  font: 200 160px/1 var(--bs-font-sans-serif);
  position: absolute;
  z-index: 0;
}

.section__reviews-text:before {
  bottom: -60px;
  content: "»";
  right: 0;
}

.section__reviews-text:after {
  content: "«";
  left: 0;
  top: -60px;
}

.section__reviews-autor {
  color: var(--bs-light);
  font-weight: 700;
  letter-spacing: .44px;
  margin-top: 160px;
  text-align: right;
}

.section__reviews-autor span {
  display: block;
  font-weight: 400;
}

.section__reviews .swiper__btn {
  padding-right: 80px;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1;
}

.reviews__img {
    display: block;
    border: 1px solid #eee;
    
}

.hero {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: calc(100vh - 180px);
  padding-bottom: 224px;
  padding-top: 70px;
  position: relative;
}

.hero-crumbs {
  color: var(--bs-body-color);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font: 400 18px/140% var(--bs-font-sans-serif);
}

.hero-crumbs img {
  margin-left: 10px;
}

.hero__image {
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 70%;
}

.hero__image:after {
  background: -o-linear-gradient(341.37deg,#dde4e6 23.3%,rgba(221,228,230,0) 68.79%);
  background: linear-gradient(108.63deg,#dde4e6 23.3%,rgba(221,228,230,0) 68.79%);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.hero__item {
  position: relative;
  z-index: 1;
}

.hero .h1-title {
  margin: 0 0 50px;
  max-width: 720px;
}

.hero .text {
  max-width: 760px;
}

.hero-default {
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
}

.hero-default .text {
  max-width: 420px;
}

.hero-default .hero__image:before {
  background-color: #fff;
  bottom: 0;
  content: "";
  height: 6rem;
  position: absolute;
  right: 0;
  width: 32rem;
}

.hero-default .button {
  margin-top: 50px;
}

.hero-main {
  padding-bottom: 60px;
}

.hero-main .h1-title {
  max-width: 800px;
  font-size: 60px
}

.hero-main .hero__image {
  -webkit-clip-path: polygon(0 0,100% 0,100% 100%,440px 100%,440px 90%,0 90%);
  clip-path: polygon(0 0,100% 0,100% 100%,440px 100%,440px 90%,0 90%);
}

.hero-main .text {
  max-width: 420px;
}

.hero__scroll {
  margin-top: 80px;
}

.service-content {
  margin-top: -110px;
  position: relative;
  z-index: 1;
}

.service-content .h2-title {
  margin-bottom: 50px;
}

.g-service-content {
  --bs-gutter-y: 50px;
  --bs-gutter-x: 50px;
}

.principle {
  padding-bottom: 210px;
  padding-top: 210px;
}

.principle {
  padding-bottom: 100px;
  padding-top: 210px;
}

.principle__item .h3-title {
  margin: 0 0 20px;
  position: relative;
}

.partners-list .h2-title{
    margin-bottom:50px;
}


.principle__item .h3-title:after {
  background-color: #45739b;
  content: "";
  height: 3px;
  left: -60px;
  position: absolute;
  top: -20px;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  width: 90px;
}

.g-principle {
  --bs-gutter-x: 200px;
  --bs-gutter-y: 220px;
}

.service-content2 {
  padding-bottom: 220px;
  padding-top: 290px;
  position: relative;
}

.service-content2:before {
  background-color: #232628;
  content: "";
  height: 60px;
  left: 0;
  position: absolute;
  top: 0;
  width: 80%;
  z-index: 1;
  display:none;
}

.service-content2__image {
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.service-content2__image figure {
  margin: 0;
  padding: 0;
  position: relative;
}

.service-content2__image figure:after {
  background: -o-linear-gradient(2.46deg,#f2f8fa 31.05%,rgba(221,228,230,0) 69.01%);
  background: linear-gradient(87.54deg,#f2f8fa 31.05%,rgba(221,228,230,0) 69.01%);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.service-content2__image figure:before {
  background-color: #fff;
  bottom: 0;
  content: "";
  height: 60px;
  left: 0;
  position: absolute;
  width: 30%;
  z-index: 1;
}

.service-content2__items {
  position: relative;
  z-index: 1;
}

.service-content2 .h2-title {
  margin-bottom: 50px;
}

.section__service {
  position: relative;
}

.section__service:after {
  background-color: #f1f5f6;
  content: "";
  height: calc(100% + 120px);
  left: 0;
  position: absolute;
  top: -120px;
  width: 600px;
  z-index: -1;
}

.section__service-content {
  padding-bottom: 260px;
  padding-top: 110px;
}

.section__service-content .h2-title {
  margin: 0 0 50px;
}

.section__service-content .text {
  margin-bottom: 80px;
}

.service-box {
  color: var(--bs-body-color);
  display: block;
  text-decoration: none;
}

.service-box:hover {
  color: var(--bs-body-color);
  text-decoration: none;
}

.service-box img {
  height: 80px;
  margin-bottom: 50px;
  width: auto;
}

.service-box p {
  -webkit-font-feature-settings: "pnum" on,"lnum" on;
  font-feature-settings: "pnum" on,"lnum" on;
  font: 700 24px/120% Cormorant,serif;
}

.g-service-box {
    --bs-gutter-y: 40px;
    --bs-gutter-x: 40px;
}

.section__service-all {
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  align-items: center;
  color: #45739b;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font: 500 20px/24px var(--bs-font-sans-serif);
  justify-content: center;
  overflow: hidden;
  position: relative;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  width: 100%;
  z-index: 1;
}

.section__service-all:before {
  color: var(--bs-dark);
  content: ". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ";
  left: 0;
  position: absolute;
  top: -6px;
  white-space: nowrap;
  width: 100%;
}

.section__service-all:hover {
  color: #45739b;
  text-decoration: none;
}

.section__service-all span {
  background-color: var(--bs-light);
  padding: 0 5px;
  position: relative;
}

.section__service-mobile {
  margin-top: 150px;
}

.service-list {
  padding-bottom: 150px;
  padding-top: 150px;
}

.about-content {
  margin-bottom: 190px;
  margin-top: -60px;
  position: relative;
  z-index: 1;
}

.about-content__items {
  position: relative;
}

.about-content__items:after {
  background-color: #fff;
  content: "";
  height: 100%;
  left: -150px;
  position: absolute;
  top: -100px;
  width: 100%;
  z-index: 0;
}

.about-content .h2-title {
  margin: 0 0 50px;
}

.about-content__text {
  margin-top: -30px;
  position: relative;
  z-index: 1;
}

.about-benefits {
  margin-top: -100px;
  position: relative;
}

.about-benefits__image {
  height: 80px;
  margin-bottom: 50px;
  width: auto;
}

.about-benefits__item {
    margin-bottom: 20px;
    margin-top: 75px;
}

.hero__item, .section__service-content .text , .tabs__content-item p, .principle__item p, .service-content2__items .text, .about-content__text p ,.staff-body .text,.about-benefits__text p{
    text-align: justify;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

.about-benefits__item p {
  -webkit-font-feature-settings: "pnum" on,"lnum" on;
  font-feature-settings: "pnum" on,"lnum" on;
  font: 700 24px/120% Cormorant,serif;
}

.about-benefits__text {
  color: #fff;
  padding-bottom: 200px;
  padding-top: 400px;
}

.about-benefits__text .h2-title {
  color: #fff;
  margin: 0 0 50px;
}

.about-benefits__text .button {
  margin-top: 100px;
}

.section-staff .section__title {
  margin-bottom: 60px;
}

.section-staff .section__title .h2-title {
  margin: 0;
}

.swiper__staff-card {
  position: relative;
  cursor: pointer;
}

.swiper__staff-card:before {
  background: -webkit-gradient(linear,left top,left bottom,color-stop(45.31%,rgba(46,51,56,0)),color-stop(92.19%,#2e3338));
  background: -o-linear-gradient(top,rgba(46,51,56,0) 45.31%,#2e3338 92.19%);
  background: linear-gradient(180deg,rgba(46,51,56,0) 45.31%,#2e3338 92.19%);
  bottom: 0;
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  width: 100%;
}

.swiper__staff-body {
  bottom: 0;
  left: 0;
  padding: 0 50px 50px;
  position: absolute;
  width: 100%;
  z-index: 1;
}

.swiper__staff-title {
  color: #fff;
  margin-bottom: 20px;
}

.swiper__staff-title span {
  display: block;
}

.swiper__staff-post {
  color: #fff;
  font-size: 13px;
  line-height: 140%;
}

.section-partners .section__title {
  margin-bottom: 60px;
}

.section-partners .section__title .h2-title {
  margin: 0;
}

.section-partners .section__title .swiper__btn {
  bottom: -120px;
  position: relative;
}

.partners-list {
  padding-bottom: 150px;
  padding-top: 150px;
}

.contact-hero {
  margin-bottom: 120px;
  padding-top: 70px;
}

.contact-hero .h1-title {
  margin-bottom: 50px;
  max-width: 720px;
}

.contact-hero__item {
  max-width: 260px;
}

.contact-hero .phone {
  margin-bottom: 50px;
}

.contact-hero .address {
  margin-bottom: 30px;
}

.contact-hero .email {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: start;
}

.contact-hero__items {
  position: relative;
  z-index: 1;
}

.contact-hero__maps {
    position: relative;
    z-index: 1;
}

.contact-hero .ratio-contact {
  --bs-aspect-ratio: 75%;
}

.contact-form {
  background-color: var(--bs-grey);
  overflow: hidden;
  padding-bottom: 160px;
  padding-top: 180px;
  position: relative;
}

.contact-form:after {
  background-color: #fff;
  content: "";
  height: 30px;
  left: 0;
  position: absolute;
  top: 0;
  width: 50%;
}

.contact-form-item {
  margin: 0 0 70px;
  max-width: 480px;
  width: 100%;
}

.contact-form .h2-title {
  margin: 0 0 40px;
}

.contact-box .phone {
  margin-bottom: 50px;
}

.contact-box .address {
  margin-bottom: 30px;
  max-width: 320px;
}

.contact-box .email {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.contact-box .button {
  margin-top: 80px;
}

.main__contact {
  margin-top: -90px;
}

.main__contact .contact-box {
  padding-left: 150px;
}


.modalStaff {
    
}
.modalStaff .swiper__staff-title {
    color: var(--bs-body-color);
}
.modalStaff .swiper__staff-post {
    color: var(--bs-body-color);
    margin-bottom: 30px;
}
.staff-body {
    padding: 50px;
}


#back-top{ 
    position: fixed;
    right: 2rem;
    bottom: 2rem;
    background-color:  var(--bs-dark);
    z-index: 100;
}
 
#back-top a{
    display: block;
}
#back-top svg {
    width: 4rem;
    height: 4rem;
    transform: rotate(-90deg);
    margin: 1rem;
    left: -3px;
    top: -3px;
    position: relative;
}
#back-top svg path {
    stroke: #fff;
}

.sert-m{
    padding: 0px 60px 60px 60px;
}
.swiper__sert{
    overflow: hidden;
}

.contact-footer{
    color: #fff;
    padding-left: 30px;
    padding-right: 30px;
    font-size: 16px;
}

.tg{
    margin-right: 30px;
}

.rejting{
    position: absolute;
    z-index: 9;
    bottom: -120px;
    max-width: 430px;
}

.rejting h2{
        margin-bottom: 40px;
}
.str-home .section__service {
    padding-top: 150px;
}