* {
  padding: 0;
  margin: 0;
  border: 0;
}

*,
:after,
:before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

:active,
:focus {
  outline: 0;
}

a:active,
a:focus {
  outline: 0;
}

aside,
footer,
header,
nav {
  display: block;
}

body,
html {
  width: 100%;
  font-size: 100%;
  line-height: 1;
  font-size: 14px;
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
  scrollbar-gutter: stable;
  overscroll-behavior: none;
}

button,
input,
textarea {
  font-family: inherit;
}

input::-ms-clear {
  display: none;
}

input,
textarea {
  -moz-appearance: none;
  appearance: none;
  -webkit-appearance: none;
  border-radius: 0;
}

textarea::placeholder,
input::placeholder {
  color: inherit;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: inherit;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
  color: inherit;
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: inherit;
}

input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  color: inherit;
}

input::placeholder,
textarea::placeholder {
  color: inherit;
}

textarea {
  resize: none;
}

button {
  cursor: pointer;
  background-color: transparent;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

a {
  display: inline-block;
  color: inherit;
}

a,
a:visited {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

ul li {
  list-style: none;
}
.disk {
  list-style: disc;
  margin-left: 20px;
}
img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
  vertical-align: top;
}

svg {
  display: block;
  width: 100%;
  height: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

input::-webkit-inner-spin-button,
input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type="number"] {
  -moz-appearance: textfield;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  border: 0;
  clip: rect(0 0 0 0);
}

@font-face {
  font-family: "bmap_arial_boldmt";
  font-weight: 100 900;
  font-style: normal;
  src: url(./bmap-fonts/bmap_arial_boldmt.woff2) format("woff2");
  font-display: swap;
}
@font-face {
  font-family: "bmap_arial_mt";
  font-weight: 100 900;
  font-style: normal;
  src: url(./bmap-fonts/bmap_arial_mt.woff2) format("woff2");
  font-display: swap;
}

:root {
  overscroll-behavior: none;
  /* // Шрифты */
  --font-main: "bmap_arial_mt", sans-serif;
  --main: var(--white);
  --black: #000000;
  --white: #ffffff;
  --i: calc(1vw + 1vh);
  --hover-a: #a09f9f;
}

.bmap_page {
  display: flex;
  flex-direction: column;
  font-family: var(--font-main);
  min-height: 100vh;
  overflow: hidden;
  color: var(--main);
  background: var(--bl_1, linear-gradient(180deg, #366a7e 0%, #32454d 100%));
}
.container {
  width: 100%;
  max-width: 1220px;
  margin: 0 auto;
}

section {
  padding: 40px 0;
}

.container {
  padding: 0 40px;
}

@media (max-width: 991px) {
  .container {
    padding: 0 30px;
  }
}

@media (max-width: 768px) {
  .container {
    padding: 0 20px;
  }
}
@media (max-width: 480px) {
  .container {
    padding: 0 16px;
  }
}

h1 {
  font-family: "bmap_arial_boldmt";
  font-size: 46px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  @media (max-width: 991px) {
    font-size: 40px;
  }
}

h2 {
  font-family: "bmap_arial_boldmt";
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  @media (max-width: 991px) {
    font-size: 24px;
  }
}

h3 {
  font-family: "bmap_arial_boldmt";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

p,
li,
a,
span {
  font-family: "bmap_arial_mt";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

header a {
  font-family: "bmap_arial_mt";
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

footer a {
  font-family: "bmap_arial_mt";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
footer p {
  font-family: "bmap_arial_mt";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.btn {
  border-radius: 10px;
  border: 1px solid var(--Color_ble, #abccd8);
  background: var(--1, linear-gradient(180deg, #88b6d8 0%, #052b39 100%));
  box-shadow: 0 4px 8px 0 rgba(136, 194, 216, 0.25);
  color: var(--white);
  font-family: "bmap_arial_boldmt";
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;

  padding: 12px 10px;
  width: 100%;
  max-width: 220px;
  display: flex;
  justify-content: center;
}

/* font-weight */

.f--w-100 {
  font-weight: 100;
}

.f--w-200 {
  font-weight: 200;
}

.f--w-300 {
  font-weight: 300;
}

.f--w-400 {
  font-weight: 400;
}

.f--w-500 {
  font-weight: 500;
}

.f--w-600 {
  font-weight: 600;
}

.f--w-700 {
  font-weight: 700;
}

.f--w-800 {
  font-weight: 800;
}

.f-w-900 {
  font-weight: 900;
}
/* font-size */

.f-s-10 {
  font-size: 10px;
}

.f-s-12 {
  font-size: 12px;
}

.f-s-14 {
  font-size: 14px;
}

.f-s-16 {
  font-size: 16px;
}

.f-s-20 {
  font-size: 20px;
}

.f-s-16 {
  font-size: 16px;
}

.f-s-18 {
  font-size: 18px;
}

.f-s-20 {
  font-size: 20px;
}

.f-s-24 {
  font-size: 24px;
}

.f-s-26 {
  font-size: 26px;
}

.f-s-30 {
  font-size: 30px;
}

.f-s-32 {
  font-size: 32px;
}

.f-s-40 {
  font-size: 40px;
}

.f-s-50 {
  font-size: 50px;
}

/* padding */

.m-b-12 {
  margin-bottom: 12px;
}
.p-t-20 {
  padding-top: 20px;
}

.p-t-40 {
  padding-top: 40px;
}

.p-t-50 {
  padding-top: 50px;
}
.p-t-80 {
  padding-top: 80px;
}
.p-t-100 {
  padding-top: 100px;
}

.p-b-10 {
  padding-bottom: 10px;
}
.p-b-16 {
  padding-bottom: 16px;
}

.p-b-20 {
  padding-bottom: 20px;
}
.p-b-24 {
  padding-bottom: 24px;
}
.p-b-50 {
  padding-bottom: 50px;
}
.p-b-50 {
  padding-bottom: 50px;
}

/* margin */
.m-b-8 {
  margin-bottom: 8px;
}
.m-t-10 {
  margin-top: 10px;
}
.m-t-20 {
  margin-top: 20px;
}

.m-t-30 {
  margin-top: 30px;
}

.m-t-40 {
  margin-top: 40px;
}
.m-t-50 {
  margin-top: 50px;
}

.m-b-10 {
  margin-bottom: 10px;
}

.m-b-20 {
  margin-bottom: 20px;
}
.m-b-30 {
  margin-bottom: 30px;
}
.m-b-16 {
  margin-bottom: 16px;
}
.m-b-24 {
  margin-bottom: 24px;
}
.m-b-32 {
  margin-bottom: 32px;
}
.m-b-40 {
  margin-bottom: 40px;
}
.m-b-50 {
  margin-bottom: 50px;
}

/* flex */

.flex {
  display: flex;
}

.align-center {
  align-items: center;
}

.justi-center {
  justify-content: center;
}

.space-between {
  justify-content: space-between;
}

.colum {
  flex-direction: column;
}

.wrap {
  flex-wrap: wrap;
}

.bmap_main {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
}

.no-wrap {
  white-space: nowrap;
}

.none-uppercase {
  text-transform: none;
}

.word-break {
  word-break: break-all;
}

.m-auto {
  margin-left: auto;
  margin-right: auto;
}

.img-contain {
  object-fit: contain;
}

.img-cover {
  object-fit: cover;
}

.underline {
  text-decoration: underline;
  text-underline-offset: 2px;
}

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

.text-right {
  text-align: right;
}

.uppercase {
  text-transform: uppercase;
}

.lowercase {
  text-transform: lowercase;
}

.rd-upload img {
  opacity: 0;
  transition: opacity 0.3s ease-in-out;
}

.rd-load img {
  opacity: 1;
}

/* !!!!!!!!!!!!!!!!!!!!!!! */
/* gap */
/* !!!!!!!!!!!!!!!!!!!!!!! */

.gap-5 {
  gap: 5px;
}

.gap-10 {
  gap: 10px;
}
.gap-15 {
  gap: 15px;
}
.gap-18 {
  gap: 18px;
}
.gap-12 {
  gap: 12px;
}
.gap-8 {
  gap: 8px;
}
.gap-14 {
  gap: 14px;
}

.gap-20 {
  gap: 20px;
}
.gap-30 {
  gap: 30px;
}
.gap-40 {
  gap: 40px;
}
.gap-50 {
  gap: 50px;
}
.gap-24 {
  gap: 24px;
}
.gap-32 {
  gap: 32px;
}
.gap-28 {
  gap: 28px;
}
.gap-36 {
  gap: 36px;
}
.gap-16 {
  gap: 16px;
}
.gap-48 {
  gap: 48px;
}

/* !!!!!!!!!!!!!!!!!!!!!!! */
/* terms */
/* !!!!!!!!!!!!!!!!!!!!!!! */

/* !!!!!!!!!!!!!!!!!!!!!!! */
/* header */
/* !!!!!!!!!!!!!!!!!!!!!!! */

.bmap_header a,
.bmap_header p {
  color: #abccd8;
}
.bmap_header {
  padding: 12px;
  border-bottom: 1px solid var(--Color_ble, #abccd8);
  background: var(--bl_1, linear-gradient(180deg, #366a7e 0%, #32454d 100%));
}

.bmap_header_logo img {
  width: 144px;
  height: 24px;
}

@media (max-width: 650px) {
  .bmap_header nav {
    display: none;
  }
}

@media (max-width: 400px) {
  .bmap_header_container {
    flex-direction: column;
  }
}

/* !!!!!!!!!!!!!!!!!!!!!!! */
/* footer */
/* !!!!!!!!!!!!!!!!!!!!!!! */

footer {
  padding: 40px 0;
  border-top: 1px solid var(--Color_ble, #abccd8);
  background: var(--bl_1, linear-gradient(180deg, #366a7e 0%, #32454d 100%));
}

.bmap_footer_line {
  width: 100%;
  height: 1px;
  background: var(--Color_ble, #abccd8);
}

.bmap_footer_top_block_wrapper_logo {
  max-width: 364px;
}

.bmap_footer_top_block_wrapper_nav {
  width: 100%;
}
.bmap_footer_top_block {
  gap: 80px;
}
.bmap_footer_links_ul {
  display: flex;
  gap: 8px;
  flex-direction: column;
}

.bmap_footer_container h3 {
  font-size: 16px;
}

@media (max-width: 991px) {
  .bmap_footer_top_block {
    gap: 16px;
    flex-direction: column;
  }
  .bmap_footer_top_block_wrapper_logo {
    max-width: 100%;
  }
  .bmap_footer_top_block_wrapper_nav {
    flex-wrap: wrap;
  }
}

/* !!!!!!!!!!!!!!!!!!!!!!! */
/* home */
/* !!!!!!!!!!!!!!!!!!!!!!! */

/* bmap_home_sect_1 */

.bmap_home_sect_1 {
  background: var(--bl_1, linear-gradient(180deg, #366a7e 0%, #32454d 100%));
}

.bmap_home_sect_1_li img {
  width: 24px;
  height: 24px;
}
.bmap_home_sect_1_li {
  padding: 8px 24px;
  border-radius: 10px;
  border: 1px solid var(--Color_ble, #abccd8);
  background: var(--bl_1, linear-gradient(180deg, #366a7e 0%, #32454d 100%));
}

@media (max-width: 991px) {
  .bmap_home_sect_1_ul {
    gap: 8px;
  }
}

@media (max-width: 480px) {
  .bmap_home_sect_1_li {
    width: 100%;
    justify-content: center;
  }
}

/* bmap_home_sect_2 */

.bmap_home_sect_2 {
  background: var(--Colorx, #052b39);
}

.card {
  padding: 32px 24px;
  border-radius: 20px;
  border: 1px solid #88c2d8;
  background: var(--bl_1, linear-gradient(180deg, #366a7e 0%, #32454d 100%));
  box-shadow: 0 4px 4px 0 rgba(136, 194, 216, 0.08);
  align-items: top;
}
.wrapper_logo {
  padding: 29px 33px 29px 32px;
  border-radius: 20px;
  background: var(--white2, #f8fafc);
  height: 128px;
}

.wrapper_rating img {
  width: 100%;
  max-width: 80px;
  height: 16px;
}

.card_wrapper_bonus_text {
  max-width: 598px;
  padding: 16px;
  border-radius: 10px;
  border: 1px solid var(--Color_ble, #abccd8);
  background: var(--1, linear-gradient(180deg, #88b6d8 0%, #052b39 100%));
  box-shadow: 0 4px 8px 0 rgba(171, 204, 216, 0.25);

  p {
    color: var(--Color_ble, #abccd8);
    margin-bottom: 4px;
    font-size: 12px;
  }
}

.card_wrapper_btn {
  width: 100%;
  max-width: 220px;
}

.wrapper_rating p {
  white-space: nowrap;
}

@media (max-width: 991px) {
  .card,
  .card_wrapper_bonus_btn {
    gap: 16px;
  }

  .card_wrapper_bonus_btn {
    flex-direction: column;
    align-items: center;
  }
}

@media (max-width: 768px) {
  .card {
    flex-direction: column;
    h2 {
      text-align: center;
    }
    .wrapper_rating {
      margin: 0 auto;
    }
    .card_wrapper_bonus_text {
      max-width: 100%;
      h3 {
        font-size: 16px;
      }
    }
    .card_wrapper_btn {
      flex-direction: column-reverse;
      width: 100%;
      max-width: 100%;
      .btn {
        width: 100%;
        max-width: 100%;
      }
    }
  }
}
@media (max-width: 480px) {
  .card {
    padding: 24px 16px;
  }
}

/* bmap_home_sect_3 */

.bmap_home_sect_3_block_1_ul_li {
  width: 100%;
  padding: 24px;
  border-radius: 16px;
  border: 1px solid var(--Color_ble, #abccd8);
  background: var(--bl_1, linear-gradient(180deg, #366a7e 0%, #32454d 100%));
}

.bmap_home_sect_3_block_1_ul_li_hed_numb {
  padding: 4px 16px;
  color: var(--Colorx, #052b39);
  border-radius: 8px;
  height: fit-content;
  background: var(--Color_ble, #abccd8);
  font-family: "bmap_arial_boldmt";
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

@media (max-width: 991px) {
  .bmap_home_sect_3_block_1_ul {
    gap: 8px;
    display: grid;

    @media (max-width: 550px) {
      grid-template-columns: repeat(1, 2fr);
    }
  }
}

@media (max-width: 550px) {
  .bmap_home_sect_3_block_1 {
    gap: 16px;
    h2,
    p {
      text-align: start;
    }
  }
}

.bmap_home_sect_3_block_2 {
  padding: 24px;
  border-radius: 16px;
  border: 1px solid var(--Color_ble, #abccd8);
  background: var(--bl_1, linear-gradient(180deg, #366a7e 0%, #32454d 100%));
}

.bmap_faq_sect_2_ul {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.faq_btn {
  position: relative;
  width: 40px;
  height: 40px;
  transition: transform 0.3s ease;
  transform: rotate(180deg);
}

.faq_btn_active {
  transform: rotate(0);
}
.faq_btn span {
  position: absolute;
  display: block;
  background: #fe41e4;
  border-radius: 20px;
  width: 16px;
  height: 2px;
}

.bmap_faq_sect_2_ul_li {
  padding: 24px;
  align-items: flex-start;
  transition: background 0.25s ease;
  border-radius: 10px;
  border: 1px solid var(--Color_ble, #abccd8);
  background: var(--1, linear-gradient(180deg, #88b6d8 0%, #052b39 100%));
}

.bmap_faq_sect_2_ul_li_wrapper_text h3 {
  cursor: pointer;
}

.bmap_faq_sect_2_ul_li_wrapper_text_p {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: max-height 0.35s ease, opacity 0.25s ease;
}
.bmap_faq_sect_2_ul_li_active .bmap_faq_sect_2_ul_li_wrapper_text_p {
  opacity: 1;
}

.faq_btn {
  position: relative;
  width: 40px;
  height: 40px;
  flex: 0 0 auto;
  cursor: pointer;
  border: 0;
  background: transparent;
}

.faq_btn_span_1,
.faq_btn_span_2 {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 16px;
  height: 2px;
  background: var(--black);
  border-radius: 2px;
  transform: translate(-50%, -50%);
  transition: transform 0.25s ease, opacity 0.25s ease;
}
.faq_btn_span_2 {
  transform: translate(-50%, -50%) rotate(90deg);
}

.bmap_faq_sect_2_ul_li_active .faq_btn_span_2 {
  opacity: 0;
  transform: translate(-50%, -50%) rotate(90deg) scaleX(0.6);
}

.bmap_faq_sect_2_ul_li h3 {
  font-size: 16px;
}

/* slider */

.bmap_home_sect_3_block_4_slider_slid {
  padding: 24px;
  border-radius: 16px;
  border: 1px solid var(--Color_ble, #abccd8);
  background: var(--bl_1, linear-gradient(180deg, #366a7e 0%, #32454d 100%));
}

.slider_wrapper_toggle {
  justify-content: end;
}

/* SWIPER */

/* “рельса” даёт выход за пределы контейнера */
.reviews-rail {
  /* регулируй bleed за контейнер: */
  margin-left: -24px;
  margin-right: -24px;
}

/* сам слайдер не должен обрезать содержимое */
.reviews-slider {
  overflow: visible;
}

/* Swiper при инициализации часто вешает hidden — переопределим */
.reviews-slider.swiper-initialized {
  overflow: visible;
}

/* убираем gap у UL — расстояние даёт spaceBetween */
.reviews-slider .bmap_home_sect_3_block_4_slider_sliders {
  display: flex; /* Swiper сам выставит, но безопасно */
  gap: 0;
  flex-wrap: nowrap;
  padding: 0;
  margin: 0;
}

/* фиксированная ширина карточки (любой размер, который нужен) */
.bmap_home_sect_3_block_4_slider_slid {
  flex: 0 0 auto;
  width: 100%; /* ← задавай свою фикс-ширину */
  box-sizing: border-box;
}

.reviews-slider,
.reviews-slider .swiper-wrapper {
  will-change: transform;
}
.reviews-slider {
  overflow: visible;
}

/* контейнер слайдера не режет «хвост» карточек */
.reviews-slider {
  overflow: visible;
}

/* Swiper иногда ставит overflow:hidden — переопределяем */
.reviews-slider.swiper-initialized {
  overflow: visible;
}

/* ul как «рельса» Swiper – без gap, без переносов */
.bmap_home_sect_3_block_4_slider_sliders {
  display: flex;
  flex-wrap: nowrap;
  gap: 0;
  padding: 0;
  margin: 0;
}

/* карточка-слайд */
.bmap_home_sect_3_block_4_slider_slid {
  flex: 0 0 auto;
  box-sizing: border-box;
}

/* на мобиле можно сделать по-другому */
@media (max-width: 768px) {
  .bmap_home_sect_3_block_4_slider_slid {
    width: 100%;
  }
}

/* точки */
.slider_castom_dots {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 16px;
}

.slider_castom_dots .dot {
  width: 10px;
  height: 10px;
  border-radius: 5px;
  border: 2px solid var(--Color_ble, #abccd8);
  transition: 0.3s;
}

.slider_castom_dots .dot.active {
  width: 20px;
  height: 10px;
  border-radius: 10px;
  background: var(--Color_ble, #abccd8);
}

@media (max-width: 480px) {
  .bmap_home_sect_3_block_4_slider_slid {
    gap: 16px;
  }
  .slider_wrapper_toggle {
    display: none;
  }
  .bmap_home_sect_3_block_4 {
    h2,
    p {
      text-align: start;
    }
  }
}

/* bmap_about_sect_1 */

.bmap_about_block img {
  width: 24px;
  height: 24px;
}

.bmap_about_sect_1_container {
  padding: 24px;
  border-radius: 16px;
  border: 1px solid var(--Color_ble, #abccd8);
  background: var(--bl_1, linear-gradient(180deg, #366a7e 0%, #32454d 100%));
}

@media (max-width: 991px) {
  .bmap_about_sect_1 .m-b-40 {
    margin-bottom: 24px;
  }
}

.like-icon {
  width: 32px;
  height: 32px;
  transition: 0.25s ease;
}

.like-icon.active {
  filter: invert(32%) sepia(96%) saturate(7467%) hue-rotate(355deg) brightness(103%) contrast(103%);
  transform: scale(1.2);
}
