.top-banner-modern {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 20px;
  max-width: 1420px;
  margin: 0 auto 50px;
}

.top-banner-modern_full {
	grid-template-columns: 1fr;
}

.top-banner-modern__color {
  background-position: 90% bottom;
  background-repeat: no-repeat;
  border-radius: 24px;
  min-height: 520px;
  color: #0a0a0a;
  font-weight: 500;
}

.top-banner-modern__color-inner {
	height: 100%;
	padding: 0 40px;	
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 0;
}

.top-banner-modern__info {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
}

.top-banner-modern__title {
  font-weight: 600;
  font-size: 48px;
  line-height: 1.1;
  margin: 0 0 20px;
}

.top-banner-modern__title span {
	color: #0202B3;
}

.top-banner-modern__sub-title {
	font-weight: 600;
	font-size: 30px;
	line-height: 1.4;
	color: #0202B3;
	margin-bottom: 20px;
}

.top-banner-modern__descr {
  font-size: 20px;
  line-height: 1.4;
  margin-bottom: 30px;
  max-width: 420px;
}

.top-banner-modern__color_white .top-banner-modern__title,
.top-banner-modern__color_white .top-banner-modern__sub-title,
.top-banner-modern__color_white .top-banner-modern__descr {
	color: #fff!important;
}

.top-banner-modern__buttons a,
.top-banner-modern__buttons button {
  border: 0;
  border-radius: 12px;
  color: #fff;
  padding: 14px 30px;
  font-weight: 600;
  font-size: 16px;
  margin-right: 10px;
  cursor: pointer;
}

.top-banner-modern__color_white a,
.top-banner-modern__color_white button {
	background: #fff!important;
	color: #0202B3;
}

.top-banner-modern__static {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 30px 20px;
  background: url("/images/s-top-staitc-banner.png") center bottom no-repeat
    #e0e2ff;
  border-radius: 24px;
}

.top-banner-modern_full .top-banner-modern__static {
	display: none;
}

.top-banner-modern__static-title {
  color: #0202b3;
  font-weight: 600;
  font-size: 30px;
  line-height: 1;
}

.top-banner-modern__static-button a {
  display: block;
  width: 100%;
  border-radius: 12px;
  background: #fff;
  color: #0202b3;
  padding: 14px 0;
  text-align: center;
  font-weight: 600;
  font-size: 16px;
}

@media (max-width: 1420px) {
  .top-banner-modern {
    padding: 0 20px;
  }
}

@media (max-width: 1200px) {
  .top-banner-modern {
    grid-template-columns: 1fr;
  }

  .top-banner-modern__static {
    border-radius: 16px;
	background: #E0E2FF;
	height: 110px;
	align-items: center;
	justify-content: center;
	padding: 0 20px;	
  }
  
  .top-banner-modern__static-title {
	display: flex;
	align-items: center;
	font-size: 16px;
	color: #0A0A0A;
	height: 80px;
	background: url('/images/banner/b-stac.png') no-repeat;
	padding-left: 95px;
	line-height: 1.2;
  }
  
  .top-banner-modern__static-title_stac {
	  background: url('/images/banner/b-park.png') no-repeat;
  }
  
  .top-banner-modern__static-button {
	  display: none;
  }
}

@media (max-width: 860px) {
  .top-banner-modern__color {
    min-height: 400px;
    background-size: 40%;
  }

  .top-banner-modern__title {
    font-size: 24px;
  }
  
  .top-banner-modern__sub-title {
    font-size: 20px;
  }

  .top-banner-modern__descr {
    font-size: 16px;
  }
}

@media (max-width: 620px) {
  .top-banner-modern__color {
    min-height: 330px;
  }
}

@media (max-width: 540px) {
  .top-banner-modern__color {
    min-height: initial;
    background-position: center bottom;
    background-size: 80%;
  }
  
  .top-banner-modern__color.top-banner-modern__color_mobile {
	  background-size: 0;
  }
  
  .top-banner-modern__color-inner {
    padding: 20px;	  
  }
  
  .top-banner-modern__color_mobile .top-banner-modern__color-inner {
	background-size: auto;  
	height: 560px;
  }
  
  .top-banner-modern__color_full-bg {
	  background-size: 90%;
  }
  
  .top-banner-modern__color_white.top-banner-modern__color_full-bg {
	  background-size: 90%, cover;
  }

  .top-banner-modern__info {
    justify-content: flex-start;
  }

  .top-banner-modern__buttons a,
  .top-banner-modern__buttons button {
    display: block;
    width: 100%;
  }
  .top-banner-modern__title {
    margin-bottom: 10px;
  }

  .top-banner-modern__info:has(.top-banner-modern__buttons)
    .top-banner-modern__buttons {
    margin-top: 240px;
  }
  
  .top-banner-modern__color_mobile .top-banner-modern__info:has(.top-banner-modern__buttons)
    .top-banner-modern__buttons {
    margin-top: auto;
  }
  
  .top-banner-modern__info:not(:has(.top-banner-modern__buttons)) {
    padding-bottom: 288px;
  }
}

.teamSlider__imgWrap img {
  height: 100%;
  object-fit: cover;
}

@media (max-width: 740px) {
  .service-page__avantages {
    padding: 50px 20px 50px 20px;
  }

  .service-page__text .service-page__sections-title {
    margin-bottom: 10px;
  }

  .service-page__form-guest,
  .entryForm__wrap,
  .teamSlider__imgWrap,
  .reviewsSlider__slide {
    border-radius: 16px;
  }

  .service-page__form-guest-title {
    margin-bottom: 10px;
  }
}

.button.button_compact.button_outlined {
  display: flex;
  align-items: center;
  text-align: center;
  justify-content: center;
  padding: 0 30px;
  height: 48px;
  min-height: 48px;
  border-radius: 12px;
  background-color: transparent;
  border: 1px solid var(--blue);
  cursor: pointer;
  width: -moz-fit-content;
  width: fit-content;
  text-decoration: none;
  color: var(--blue);
  transition: background-color 0.3s ease;
}

.button.button_compact.button_outlined:hover,
.borderBlueBtn:hover {
  box-shadow: initial;
  background: #0202b3;

  color: #fff;
}
.button.button_compact.button_outlined:hover span,
.borderBlueBtn:hover span {
  color: #fff;
}

.borderBlueBtn:hover svg path {
  stroke: #fff;
}

@media (max-width: 520px) {
  .button {
    font-size: 16px;
  }
}

@media (max-width: 1420px) {
  .reviewsSlider .container {
    padding: 0 20px;
  }
}
@media (max-width: 740px) {
  .reviewsSlider .container {
    padding: 0;
  }

  .top-banner-modern__color {
    border-radius: 16px;
  }
}

.header__burgerPopup {
  overflow: auto;
  height: calc(100dvh - 55px);
}
@media (max-width: 425px) {
  .header__burgerBlueButtonWrap a {
    width: 100%;
  }
}

@media screen and (max-width: 1200px) {
  .service-page__form {
    grid-template-columns: 1fr;
  }
  .service-page__form-guest {
    padding: 60px;
  }

  .service-page__form-guest .blueBtn {
    max-width: 300px;
  }
}

.customInput:has(textarea) .customInput__placeholder {
  transform: none;
  top: 20px;
}
