:root {
	--White: #fff;
	--Light-grey: #e9e9e9;
	--Bg-grey: #f4f4f4;
	--Accent: #DCEEE7;
	/* --Accent: #72253d; */
	--Light-beige: #e5e2de;
	--Menthol: #dbece5;
	--Basic: #353535;
	--Extra: #6a6a6a;

  --font-family: "Overpass", sans-serif;
  --second-family: "Playfair Display", sans-serif;
  /* --third-family: "Montserrat", sans-serif;
  --font_3: "PT Serif", sans-serif; */

  /* Source Sans pro */
  /* --font_4: "Source Sans 3", sans-serif; */

  --container-width: 1480px;
  --admin-bar-height: 32px;
}

.grecaptcha-badge { 
  visibility: hidden !important;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  scrollbar-width: thin;
}

body {
  font-family: var(--font-family);
  color: var(--Basic);
  font-size: 22px;
  font-weight: 300;
}
.body_wrap {
  /* min-height: 100vh; */
}
.bg_gray {
  background-color: var(--Bg-grey, #F4F4F4);
}

img {
  display: block;
  max-width: 100%;
  height: auto;
}

a {
  text-decoration: none;
  color: var(--Basic);
  transition: .3s;
}

.container {
  width: 100%;
  max-width: var(--container-width);
  margin: 0 auto;
}

.btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  padding: 17.5px 38px 15.5px;
  font-size: 20px;
  font-weight: 500;
  border-radius: 14px;
  border: 1px solid var(--Basic, #353535);
  background-color: transparent;
  transition: .3s;
  cursor: pointer;
}
.btn:hover {
  /* color: var(--White); */
  color: var(--Basic);
  border: 1px solid var(--Accent, #DCEEE7);
  background-color: var(--Accent, #DCEEE7);
}

.btn_white {
  border: 1px solid var(--White);
  color: var(--White);
}
.btn_white:hover {
  /* color: var(--Light-beige, #E5E2DE);
  border: 1px solid var(--Light-beige, #E5E2DE);
  background-color: #e5e2de4d; */

  /* color: var(--White); */
  color: var(--Basic);
  border: 1px solid var(--Accent, #DCEEE7);
  background-color: var(--Accent, #DCEEE7);
}

.slider_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 8.5px 23px;
  border-radius: 49px;
  border: 1px solid var(--Basic, #353535);
  transition: .3s;
  cursor: pointer;
}
.slider_btn svg path {
  transition: .3s;
}
.slider_btn:hover {
  background-color: var(--Accent, #DCEEE7);
}
.slider_btn:hover svg path {
  stroke: #FFF;
}
.slider_btn.disabled,
.slider_btn.swiper-button-disabled {
  pointer-events: none;
  opacity: .3;
}

h1, h2, h3, .h3 {
  color: var(--Basic, #353535);
  font-family: "Playfair Display";
  font-weight: 400;
  line-height: 130%;
  margin-bottom: 20px;
}
h1 {
  font-size: 64px;
}
h2 {
  font-size: 48px;
}
h3, .h3 {
  font-size: 42px;
  line-height: 125%;
}
.modal_title {
  font-family: "Playfair Display";
  font-size: 42px;
  line-height: 125%;
}

p {
  margin-bottom: 8px;
  /* color: var(--Basic, #353535); */
  font-family: Overpass;
  font-size: 22px;
  font-weight: 300;
  line-height: normal;
}
p:last-child {
  margin-bottom: 0px;
}

ul {
  padding-left: 30px;
}
ul li {
  padding-left: 4px;
  margin-bottom: 8px;
}
ul li:last-child {
  padding-bottom: 0px;
}

.colored span {
  color: var(--Accent, #DCEEE7);
}
.colored.italic span {
  font-style: italic;
}

input, textarea {
  display: block;
  width: 100%;
  padding: 18.5px 16px 16.5px;
  border-radius: 14px;
  border: 1px solid rgba(53, 53, 53, 0.40);

  font-family: var(--font-family);
  color: var(--Basic);
  font-size: 20px;
  font-weight: 300;

  background-color: transparent;
  transition: .2s;
}
input.error, textarea.error {
  border: 1px solid var(--Accent, #DCEEE7);
  animation: pulse-shadow .8s infinite ease-in-out;
}
input:focus, textarea:focus {
  background-color: #fff;
}
::placeholder {
  font-family: var(--font-family);
  color: rgba(53, 53, 53, 0.50);
  transition: .2s;
  font-weight: 300;
}
input:not(.phone):focus::placeholder, textarea:focus::placeholder {
  opacity: 0;
}
input.error::placeholder, textarea.error::placeholder {
  color: var(--Accent, #DCEEE7);
  font-weight: 500;
}
textarea {
  width: 100%;
  resize: none;
  padding: 13px 24px;
}
.checkbox_wrap {
  position: relative;
}
.checkbox_wrap input {
  display: none;
}
.checkbox_wrap label {
  position: relative;
  display: flex;
  align-items: center;
  gap: 12px;

  font-size: 20px;
  font-weight: 500;

  cursor: pointer;
}
.checkbox_wrap.small_text label {
  font-size: 16px;
  font-weight: 300;
  color: rgba(53, 53, 53, 0.60);
}
.checkbox_wrap label span {
  padding-top: 3px;
}
.checkbox_wrap label::before {
  box-sizing: border-box;
  content: '';
  position: relative;
  display: block;
  width: 27px;
  height: 27px;
  flex-shrink: 0;
  border-radius: 4px;
  border: 1px solid rgba(53, 53, 53, 0.40);
  background-color: transparent;
  background-image: none;
  background-repeat: no-repeat;
  background-position: center;
  background-size: 16px 12px; 
  transition: .2s;
}
.checkbox_wrap.small_text label::before {
  width: 22px;
  height: 22px;
  border: 1px solid var(--Extra, #6A6A6A);
}
.checkbox_wrap input:checked + label::before {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 12" fill="none"><path d="M14.6668 1L5.50016 10.1667L1.3335 6" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
  background-color: #666565;
}

.checkbox_wrap input.error + label::before {
  border-color: #f44336 !important;
  background-color: #ffebee !important;
  animation: pulse-shadow .8s infinite ease-in-out;
}

@keyframes pulse-shadow {
  0% {
    box-shadow: 0px 0px 0px 0px var(--Accent, #DCEEE7);
  }
  50% {
    box-shadow: 0px 0px 2px 0px var(--Accent, #DCEEE7);
  }
  100% {
    box-shadow: 0px 0px 0px 0px var(--Accent, #DCEEE7);
  }
}

.modal {
  max-width: 620px;
  padding: 26px 26px 38px;
  border-radius: 12px;
  background: #FFF;
}
.modal .fancybox-button,
.modal .f-button {
  display: none;
}
.modal_close {
  width: 32px;
  height: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  margin-bottom: 16px;
  cursor: pointer;
  transition: .3s;
}
.modal_close:hover {
  opacity: .3;
}
.modal_title {
  margin-bottom: 14px;
}

/*  */
header {
  position: fixed;
  top: calc(28px + var(--admin-bar-height, 0px));
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  z-index: 99;
}
.header_wrap {
  position: relative;

  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 26px 14px 50px;

  border-radius: 20px;
  background: var(--White, #FFF);
  box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.10);
}
.header_nav {
  font-size: 18px;
}
.header_nav ul {
  list-style: none;
}
.header_nav > ul {
  display: flex;
  align-items: center;
  gap: 58px;
  padding: 0px;
}
.header_nav ul li {
  margin: 0px;
  padding: 0px;
  cursor: pointer;
}
.menu-item-has-children {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
}
.menu-item-has-children > ul {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  top: calc(100% + 11px);
  left: -24.5px;

  width: max-content;
  min-width: 160px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding: 16px 24px;

  border-radius: 12px;
  background: var(--White, #FFF);
  box-shadow: 0 2px 27.2px 0 rgba(0, 0, 0, 0.12);

  transition: .3s;
}
.menu-item-has-children .arrow_in {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 22px;
  height: 22px;
  transition: .3s;
}
.header_callback {
  padding: 13px 38px 11px;
}
.header_burger_toggle {
  width: 24px;
  height: 24px;
  display: none;
  justify-content: center;
  align-items: center;
  position: relative;
  cursor: pointer;
}
.header_burger_toggle svg {
  transition: .2s;
}
.header_burger_toggle_isClose {
  position: relative;
}
.header_burger_toggle_isOpen {
  position: absolute;
  opacity: 0;
}
.header_burger_toggle.is_open .header_burger_toggle_isClose {
  opacity: 0;
}
.header_burger_toggle.is_open .header_burger_toggle_isOpen {
  opacity: 1;
}
.menu_social {
  display: none;
}

/*  */
footer {
  padding: 70px 0px 36px 0px;
  background: #222;
}
.footer_wrap {
  display: flex;
  justify-content: space-between;
  gap: 19px;
  margin-bottom: 80px;
}
.footer_logo {
  height: fit-content;
  transition: .3s;
}
/* .footer_logo:hover {
  filter: brightness(0) saturate(100%) invert(1);
} */
.footer_menus_wrap {
  display: flex;
  flex-direction: column;
  gap: 46px;
}
.footer_menus {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 38px;
}
.footer_menu_item {
  display: flex;
  flex-direction: column;
  gap: 30px;
  color: #ACACAC;
  font-size: 18px;
  font-weight: 400;
}
.footer_menu_title {
  color: #E4E4E4;
  font-family: "Playfair Display";
  font-size: 28px;
}
.footer_menu_adress {
  margin-bottom: 16px;
  line-height: 1.6112;
}
.footer_menu_adress_link {
  color: #ACACAC;
  text-decoration: underline;
}
.footer_menu_adress_link:hover {
  color: #E4E4E4;
}
.footer_menu_contact_title {
  margin-bottom: 12px;
  color: #E4E4E4;
  font-family: "Playfair Display";
  font-size: 20px;
}
.footer_menu_contact_row {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #ACACAC;
}
.footer_menu_contact_row:hover {
  color: #E4E4E4;
}
.footer_menu_contact_row:not(:last-child) {
  margin-bottom: 8px;
}
.footer_menu_items {
  padding: 0px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  list-style: none;
}
.footer_menu_items a {
  color: #ACACAC;
  text-decoration: underline;
}
.footer_menu_items a:hover {
  color: #E4E4E4;
}
.footer_brand {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 20px;
}
.footer_brand_item {
  display: flex;
  align-items: center;
  justify-content: center;
}
.footer_brand_item img {
  transition: .3s;
  filter: grayscale(1);
  opacity: .7;
}
.footer_brand_item:hover img {
  opacity: 1;
  filter: grayscale(0);
}
.footer_bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: #727272;
  font-size: 16px;
}
.footer_social {
  display: flex;
  align-items: center;
  gap: 16px;
}
.footer_social a {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: .3s;
}
.footer_social a:hover {
  filter: brightness(0) saturate(100%) invert(1);
}

/*  */
.body_wrap {
  display: flex;
  flex-direction: column;
  gap: 130px;
}
.body_wrap:not(:has(.main_banner)) {
  padding-top: 140px;
}

/*  */
.main_banner {
  position: relative;
  display: flex;
  min-height: 984px;
  padding-top: 177px;
  padding-bottom: 80px;
}
.main_banner_small {
  min-height: 540px;
}
.main_banner_bottom_text {
  align-items: flex-end;
}
.main_banner_video_wrapper {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  overflow: hidden;
}
.main_banner_poster {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: var(--bg-image-main) lightgray 50% 50% / cover no-repeat;
  transition: opacity 1s ease;
}
/* .main_banner_light .main_banner_poster {
  background: linear-gradient(182deg, rgba(27, 27, 27, 0.32) 0%, rgba(27, 27, 27, 0.00) 62.26%), var(--bg-image-main) 50% 50% / cover no-repeat;
}
.main_banner_dark_filter .main_banner_poster {
  background: linear-gradient(76deg, rgba(27, 27, 27, 0) 0%, rgba(27, 27, 27, 0.31) 100%), var(--bg-image-main) 50% 50% / cover no-repeat;
}
.main_banner_light_filter .main_banner_poster {
  background: linear-gradient(74deg, rgba(93, 94, 101, 0.20) -0.48%, rgba(93, 94, 101, 0.00) 39.26%), var(--bg-image-main) lightgray center / cover no-repeat;
}
.main_banner_fleet .main_banner_poster {
  background: linear-gradient(287deg, rgba(41, 41, 41, 0.20) 1.43%, rgba(27, 27, 27, 0.00) 43.52%), var(--bg-image-main) lightgray 50% 50% / cover no-repeat;
}
.just_img .main_banner_poster {
  background:  var(--bg-image-main) center / cover no-repeat !important;
} */
.main_banner_video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
  opacity: 0;
  transition: opacity 1s ease;
}
.main_banner_video_wrapper::before {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(182deg, rgba(221, 221, 221, 0.59) 2%, rgba(221, 221, 221, 0.00) 98.04%);
  transition: opacity 1s ease;
  opacity: 0;
}
.main_banner_video_wrapper.loaded .main_banner_poster {
  opacity: 0;
}
.main_banner_video_wrapper.loaded::before {
  opacity: 1;
}
.main_banner .container {
  position: relative;
  z-index: 2;
}
.main_banner h1 {
  max-width: 980px;
}
.main_banner_light_filter h1 {
  max-width: 700px;
}
.main_banner_fleet h1 {
  max-width: 730px;
}
.main_banner h1:not(:last-child) {
  margin-bottom: 35px;
}
.main_banner_light h1 {
  color: var(--White, #FFF);
}
.main_banner_text:not(:last-child) {
  margin-bottom: 35px;
}
.main_banner_light .main_banner_text {
  color: var(--White, #FFF);
}
.main_banner_text {
  max-width: 730px;
}

/*  */
.main_signature_wrap {
  display: flex;
  justify-content: space-between;
  gap: 16px;
  padding: 50px 46px;
  border-radius: 16px;
  background: var(--Bg-grey, #F4F4F4);
}
.bg_gray .main_signature_wrap {
  background: var(--White, #FFF);
}
.main_signature h2 {
  max-width: 540px;
}
.main_signature_content {
  display: flex;
  flex-direction: column;
  gap: 34px;
  max-width: 750px;
}
.main_signature_naming {

}
.main_signature_item {
  width: 221px;
  height: 112px;
  margin-bottom: 6px;
}
.main_signature_name {
  font-size: 22px;
  font-weight: 500;
}

/*  */
.main_icons_adv_wrap {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: 20px;
}
.main_icons_adv_item {
  position: relative;
  min-height: 275px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 16px;
  padding: 36px 20px;
  border-bottom: 1px solid #9F9F9F;
}
.main_icons_adv_item:nth-child(-n+4) {
  border-top: 1px solid #9F9F9F;
}
.main_icons_adv_item::after {
  content: '';
  position: absolute;
  top: 50%;
  right: -10px;
  transform: translateY(-50%);
  width: 1px;
  height: calc(100% - 14px);
  background-color: #9F9F9F;
}
.main_icons_adv_item:nth-child(4n)::after {
  content: none;
}
a.main_icons_adv_item img,
a.main_icons_adv_item .main_icons_adv_inner_wrap {
  transition: .2s;
}
a.main_icons_adv_item:hover img,
a.main_icons_adv_item:hover .main_icons_adv_inner_wrap {
  opacity: .6;
}
.main_icons_adv_svg {
  width: 80px;
  height: 80px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.main_icons_adv_name {
  font-family: "Playfair Display";
  font-size: 32px;
}
.main_icons_adv_subname {
  color: var(--Extra, #6A6A6A);
}
.main_icons_adv_inner_wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

/*  */
.two_img_text {
  padding: 70px 0px;
  background-color: var(--Light-beige, #E5E2DE);
}
.two_img_text.two_img_text_nobg {
  padding: 0px;
  background-color: transparent;
}
.two_img_text_wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}
.two_img_text_content {
  max-width: 612px;
}
.two_img_text_content h2 {
  margin-bottom: 50px;
}
.two_img_text_content_text:not(:last-child) {
  margin-bottom: 36px;
}
.two_img_text_images {
  position: relative;
  flex: 1;
  display: flex;
  gap: 0px;
  padding-top: 100px;
}
.two_img_text_images img {
  width: 420px;
  height: 580px;
  border-radius: 16px;
  overflow: hidden;
  object-fit: cover;
}
.two_img_text_images_second {
  position: absolute;
  top: 0px;
  right: 85px;
}
.two_img_text_images_first {
  position: relative;
  z-index: 2;
}

.text_left {
  padding: 0px;
  background-color: #fff;
}
.text_left .two_img_text_images_first {
  left: 85px;
}
.text_left .two_img_text_images_second {
  right: 0px;
}

/*  */
.review_top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 50px;
}
.review_arrows {
  display: flex;
  align-items: center;
  gap: 8px;
}
.review_arrows:not(:has(.slider_btn:not(.swiper-button-disabled))) {
  display: none;
}
.review_item {
  height: auto;
  padding: 36px 32px;
  border-radius: 12px;
  background-color: var(--Bg-grey, #F4F4F4);
}
.review_item_top {
  display: flex;
  align-items: center;
  gap: 21px;
  margin-bottom: 24px;
}
.review_item_img {
  width: 75px;
  height: 75px;
}
.review_item_img img {
  border-radius: 50%;
  overflow: hidden;
}
.review_item_name {
  margin-bottom: 6px;
  font-size: 26px;
  font-weight: 500;
}
.review_item_moreinfo {
  display: flex;
  align-items: center;
  gap: 12px;

  color: rgba(53, 53, 53, 0.70);
  font-size: 17px;
}
.review_item_company {
  color: var(--Accent, #DCEEE7);
}
/*  */

.subscription {
  /* padding: 70px 0px; */
  background-color: #f0f0f2;
}
.subscription .container {
  position: relative;
}
.subscription_wrap {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.subscription_bg {
  
}
.subscription_content {
  flex: 1;
  padding: 70px 0px;
  max-width: 855px;
}
.pre_subtitle {
  margin-bottom: 8px;
  font-size: 17px;
}
.subscription h2 {
  margin-bottom: 16px;
}
.subtitle {
  margin-bottom: 30px;
}
.form_row_2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
  margin-bottom: 19px;
}
.form_row_small {
  display: flex;
  align-items: center;
  gap: 80px;
}
.small_form .form_row_2 {
  margin-bottom: 12px;
}
.small_form .checkbox_wrap {
  margin-bottom: 16px;
}
.small_form .form_row_small {
  margin-bottom: 30px;
}

.bottom_info,
.bottom_info h2,
.bottom_info h3,
.bottom_info .h3 {
  color: var(--White);
}
.bottom_info_wrap {
  display: flex;
  position: relative;
  min-height: 412px;
  padding: 37.5px 46px;
  border-radius: 16px;
  overflow: hidden;
}
.bottom_info_more_wide .bottom_info_wrap {
  padding: 50px 46px;
}
.bottom_info_bg_bot {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  border-radius: 16px;
  /* background: rgba(34, 34, 34, 0.42); */
  z-index: 2;
}
.bottom_info_content {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  max-width: 586px;
}
.bottom_info_more_wide .bottom_info_content {
  max-width: 896px;
}
.bottom_info_little_more_wide .bottom_info_content {
  max-width: 800px;
}
.bottom_info_bg {
  position: absolute;
  top: 50%;
  left: 0px;
  width: 100%;
  height: 100%;
  transform: translateY(-50%);
  object-fit: cover;
  z-index: 1;
}
.bottom_info_wrap > *:not(.bottom_info_bg, .bottom_info_bg_bot) {
  position: relative;
  z-index: 3;
}
.bottom_info_subtitle {
  margin-bottom: 8px;
  font-size: 18px;
  font-weight: 300;
}
.bottom_info.bottom_info_big_wrap h2,
.bottom_info.bottom_info_big_wrap h3,
.bottom_info.bottom_info_big_wrap .h3 {
  margin-bottom: 50px;
}
.bottom_info_big_wrap .bottom_info_text {
  margin-bottom: 50px;
}

.bottom_info h2,
.bottom_info h3,
.bottom_info .h3 {
  margin-bottom: 20px;
}
.bottom_info_text {
  margin-bottom: 50px;
}

/*  */
.facilities {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 130px;
}
.facilities_row {
  padding: 105px 0px;
  background-color: var(--Light-beige, #E5E2DE);
}
.facilities_wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 26px;
}
.facilities_content {
  max-width: 855px;
}
.facilities_content h2 {
  margin-bottom: 50px;
}
.facilities:not(.facilities_reverse) .facilities_row:nth-child(2n) {
  padding: 0px;
  background-color: var(--White, #FFF);
}
.facilities:not(.facilities_reverse) .facilities_row:nth-child(2n) .facilities_wrap {
  flex-direction: row-reverse;
  padding-right: 60px;
}
.facilities:not(.facilities_reverse) .facilities_row:nth-child(2n) .facilities_content {
  max-width: 764px;
}

.facilities.facilities_reverse .facilities_row:nth-child(odd) {
  padding: 0px;
  background-color: var(--White, #FFF);
}
.facilities.facilities_reverse .facilities_row:nth-child(odd) .facilities_wrap {
  flex-direction: row-reverse;
  padding-right: 60px;
}
.facilities.facilities_reverse .facilities_row:nth-child(odd) .facilities_content {
  max-width: 800px;
}

.facilities_img {
  flex-shrink: 0;
}
.facilities_img img {
  width: 450px;
  height: 580px;
  border-radius: 16px;
  overflow: hidden;
  object-fit: cover;
}
.facilities_content_text:not(:last-child) {
  margin-bottom: 50px;
}
.facilities_content_text p:not(:last-child) {
  margin-bottom: 20px;
}
.facilities_content_btn_wrap {
  display: flex;
  align-items: center;
  gap: 12px;
}

/*  */
.just_text_bg {
  padding: 80px 0px;
  background-color: #202945;
}
.just_text_bg_wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 50px;
}
.just_text_bg_contact .just_text_bg_wrap {
  gap: 26px;
}
.just_text_bg .h3,
.just_text_bg h3,
.just_text_bg h2 {
  text-align: center;
  color: var(--White, #FFF);
  max-width: 950px;
}
.just_text_bg.just_text_bg_light .h3,
.just_text_bg.just_text_bg_light h3,
.just_text_bg.just_text_bg_light h2 {
  color: var(--Basic, #353535);
}
.just_text_bg_contact h2 {
  margin-bottom: 10px;
}
.just_text_bg_text {
  max-width: 750px;
  text-align: center;
  color: var(--White, #FFF);
}
.just_text_bg_btns {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
}
.just_text_bg.just_text_bg_light {
  padding: 100px 0px;
  background-color: var(--Light-beige, #E5E2DE);
}
.just_text_bg.just_text_bg_light .h3,
.just_text_bg.just_text_bg_light h3 {
  max-width: 780px;
  text-align: center;
  color: var(--Basic, #353535);
}

/*  */
.advantades_text h2 {
  margin-bottom: 50px;
}
.advantades_text_wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 59px;
  row-gap: 64px;
}
.advantades_text_item {

}
.advantades_text_item_title {
  margin-bottom: 28px;
  font-family: "Playfair Display";
  color: #353535;
  /*color: var(--Accent, #DCEEE7);*/
  font-size: 32px;
  font-weight: 400;
}

.just_text h2 {
  margin-bottom: 32px;
  max-width: 675px;
}
.just_text:has(.just_text_btn_wrap) h2 {
  max-width: 730px;
}
.just_text .just_text_wrap {
  max-width: 980px;
  margin-bottom: 30px;
}
.just_text .just_text_wrap:last-child {
  margin-bottom: 0px;
}

/*  */
.text_with_three_img_wrap {
  padding: 80px 0px 154px;
  background-color: #202945;
}
.text_with_three_img .h3,
.text_with_three_img h3,
.text_with_three_img h2 {
  text-align: center;
  color: var(--White, #FFF);
  max-width: 900px;
}
.text_with_three_img_images {
  position: relative;
  margin-top: 46px;
  display: flex;
  justify-content: center;
}
.text_with_three_img_images img {
  width: 420px;
  height: 580px;
  border-radius: 16px;
  overflow: hidden;
  object-fit: cover;
}
.text_with_three_img_images_first {
  position: relative;
  transform: translate(76px, -70px);
  z-index: 3;
}
.text_with_three_img_images_second {
  position: relative;
  transform: translate(0px, -148px);
  z-index: 2;
}
.text_with_three_img_images_third {
  position: relative;
  transform: translate(-88px, 0px);
  z-index: 1;
}

/*  */
.text_advantages h2 {
  margin-bottom: 24px;
}
.text_advantages_top {
  max-width: 980px;
  margin-bottom: 50px;
}
.text_advantages_wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 59px;
}
.text_advantages_item {
  position: relative;
  display: flex;
  gap: 22px;
}
.text_advantages_item:nth-child(3n+2)::before,
.text_advantages_item:nth-child(3n+2)::after {
  content: '';
  position: absolute;
  width: 1px;
  height: 100%;
  min-height: 120px;
  background-color: #9F9F9F;
  top: 50%;
  left: calc(59px/-2);
  transform: translateY(-50%);
}
.text_advantages_item:nth-child(3n+2)::after {
  right: calc(59px/-2);
  left: unset;
}

/*  */
.fleet_just_text h2 {
  margin-bottom: 32px;
}
.fleet_just_text_wrap {
  display: flex;
  justify-content: space-between;
  gap: 16px;
}
.fleet_just_text_left {
  max-width: 505px;
}
.fleet_just_text_right {
  max-width: 750px;
}

/*  */
.fleet_scheme {
  padding: 70px 0px 92px;
  background: #F4F4F4;
}
.fleet_scheme h2 {
  margin-bottom: 16px;
}
.fleet_scheme_img {
  display: flex;
  justify-content: center;
  align-items: center;
}

/*  */
.fleet_gallery_item {
  overflow: hidden;
  border-radius: 16px;
}
.fleet_gallery_item img {
  width: 100%;
  height: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  transition: .3s;
}
.fleet_gallery_item a:hover img {
  transform: scale(1.05);
}
.fleet_gallery_bottom {
  margin-top: 50px;
}
.fleet_gallery_pagen {
  display: flex;
  align-items: center;
  gap: 16px;
}
.fleet_gallery_pagen .swiper-pagination-bullet {
  font-size: 0px;
  width: 10px;
  height: 10px;
  margin: 0px !important;
  padding: 0px !important;
  border-radius: 50%;
  background-color: var(--Light-grey, #E9E9E9) !important;
  cursor: pointer;
  transition: .3s;
  opacity: 1;
}
.fleet_gallery_pagen .swiper-pagination-bullet:hover {
  background-color: var(--Basic, #353535) !important;
}
.fleet_gallery_pagen .swiper-pagination-bullet.swiper-pagination-bullet-active {
  width: 80px;
  border-radius: 30px;
  background-color: var(--Basic, #353535) !important;
}

/*  */
.fleet_same_wrap {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.fleet_same_item {

}
.fleet_same_item_img {
  margin-bottom: 24px;
  border-radius: 16px;
  overflow: hidden;
}
.fleet_same_item_img img {
  width: 100%;
  height: 413px;
  object-fit: cover;
  transition: .3s;
}
.fleet_same_item:hover img {
  transform: scale(1.05);
}
.fleet_same_item_name {
  font-family: "Playfair Display";
  font-size: 32px;
  font-weight: 400;
}
.fleet_same_item:hover .fleet_same_item_name {
  color: var(--Accent, #DCEEE7);
}

/*  */
.submit_form_wrap {
  display: flex;
  align-items: center;
  gap: 24px;
}
.main_form_wrap {
  padding: 60px 46px;
  border-radius: 16px;
  background-color: #F4F4F4;
}
.bg_gray .main_form_wrap {
  background: var(--White, #FFF);
}
.main_form_wrap h2 {
  margin-bottom: 30px;
}
.main_form_text {
  max-width: 750px;
  margin-bottom: 30px;
}
.main_form_text:last-child {
  margin-bottom: 0px;
}
.form_grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 23px;
}
.input_wrap {
  display: grid;
  gap: 8px;
}
.callback_form .checkbox_wrap {
  margin-bottom: 16px;
}
.callback_form .submit_form {
  width: 260px;
  border: 1px solid var(--Accent, #DCEEE7);
  background: var(--Accent, #DCEEE7);
  color: var(--White)
}
.callback_form .submit_form:hover {
  color: var(--Basic, #353535);
  border: 1px solid var(--Basic, #353535);
  background-color: transparent;
}
.form_grid_col {
  display: flex;
  flex-direction: column;
}
.form_grid_col .field-wrapper:has(textarea)  {
  display: flex;
  flex-direction: column;
  flex: 1;
  margin-bottom: 12px;
}
.field-wrapper textarea {
  flex: 1;
  min-height: 111px;
}

/*  */
.two_img_about h2 {
  margin-bottom: 40px;
}
.two_img_about_wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 26px;
}
.two_img_about_left {
  max-width: 605px;
}
.two_img_about_right {
  flex-shrink: 0;
  display: flex;
  gap: 20px; 
}
.two_img_about_right_img {
  position: relative;
}
.two_img_about_right img {
  position: relative;
  width: 365px;
  height: 550px;
  object-fit: cover;
  border-radius: 16px;
  overflow: hidden;
  z-index: 1;
}
.two_img_about_right_img > a {
  position: absolute;
  bottom: 30px;
  left: 50%;
  transform: translateX(-50%);
  padding: 13px 40px;
  white-space: nowrap;
  z-index: 2;
  border: 1px solid var(--White, #FFF);
  color: #FFF;
}

.just_heading_text {
  max-width: 820px;
  margin: 0 auto;
  text-align: center;
}

.main_icons_adv_contact .main_icons_adv_item {
  gap: 4px;
}
.main_icons_adv_contact_department {
  font-size: 16px;
  color: var(--Extra, #6A6A6A);
  text-transform: uppercase;
}
.main_icons_adv_contact_pers_info {
  margin-bottom: 20px;
}
.main_icons_adv_contact_name {
  margin-bottom: 8px;
  font-family: "Playfair Display";
  font-size: 32px;
  font-weight: 400;
}
.main_icons_adv_contact_position {
  color: ##353535;
  /*color: var(--Accent, #DCEEE7);*/
  font-size: 18px;
  font-weight: 300;
}
.main_icons_adv_contact_row {
  display: flex;
  align-items: center;
  gap: 10px;

  color: #323232;
  font-size: 22px;
  font-weight: 300;
  margin-bottom: 8px;
}
.main_icons_adv_contact_row:hover {
  color: var(--Accent, #DCEEE7);
}
.main_icons_adv_contact_row:last-child {
  margin-bottom: 0px;
}
.main_icons_adv_contact_row_icon {
  width: 24px;
  height: 24px;
  display: flex;
  justify-content: center;
  align-items: center;
}

/*  some form */
.error-message {
  animation: slideDown 0.3s ease-out;
}

@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.field-wrapper .iti {
  width: 100%;
}

@keyframes slideIn {
  from {
    transform: translateX(100%);
    opacity: 0;
  }
  to {
    transform: translateX(0);
    opacity: 1;
  }
}

.error-message {
  color: #f44336;
  font-size: 12px;
  margin-top: 5px;
}

input.error,
textarea.error {
  border-color: #f44336 !important;
  background-color: #ffebee !important;
}

.submit_form.disabled {
  cursor: not-allowed !important;
}

.submit_form.loading {
  position: relative;
  color: transparent;
}

.submit_form.loading::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 20px;
  height: 20px;
  border: 2px solid transparent;
  border-top: 2px solid #ffffff;
  border-radius: 50%;
  animation: spin 1s linear infinite;
}

@keyframes spin {
  from {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}