:root{
  --mine-blue: #008DD2;
  --blue: #01A0E3;
  --light-blue: #A2D9F7;
  --dark: #00141E;
  
  --gray-66: #666666;
  --gray-7a: #7A7A7A;
  --gray-94: #949494;
  --gray-icon: #B4B4B4;
  --gray-middle: #E6E6E6;
  --gray-light: #F5F5F5;
  
  --white: #FFFFFF;
  
  
  --ff-name: Manrope;
  
  --fs-h0-min: 28px;  --fs-h0-max: 80px;
  --fs-h1-min: 26px;  --fs-h1-max: 60px;
  --fs-h2-min: 20px;  --fs-h2-max: 48px;
  --fs-h3-min: 16px;  --fs-h3-max: 24px;
  --fs-h4-min: 16px;  --fs-h4-max: 24px;

  --fs-l-min: 16px;   --fs-l-max: 18px;
  --fs-m-min: 15px;   --fs-m-max: 16px;
  --fs-s-min: 14px;   --fs-s-max: 14px;  /* фикс, без масштабирования */
  --fs-c-min: 12px;   --fs-c-max: 12px;  /* фикс */
  --fs-cs-min: 10px;  --fs-cs-max: 10px; /* фикс */
  
}
/* <link href="https://fonts.googleapis.com/css2?family=Rubik:wght@300;400;500;600;700&display=swap" rel="stylesheet"> */
/*100 → Thin
200 → Extra Light (Ultra Light)
300 → Light
400 → Regular / Normal
500 → Medium
600 → SemiBold (DemiBold)
700 → Bold
800 → Extra Bold (Ultra Bold)
900 → Black (Heavy)*/

/*.bmk_h0{ /* Rubik Bold 60/64 */
/*  font: normal 700 60px/64px 'Rubik', sans-serif; 
}

.bmk_h1{ /* Rubik Semibold 48/56 */
/*  font: normal 600 48px/56px 'Rubik', sans-serif;
}

.bmk_h2{ /* Rubik Semibold 32/36 */
/*  font: normal 600 32px/36px 'Rubik', sans-serif;
}

.bmk_h3{ /* Rubik Semibold 24/32 */
/*  font: normal 600 24px/32px 'Rubik', sans-serif;
}

.bmk_h4{ /* Rubik Semibold 18/24 */
/*  font: normal 600 18px/24px 'Rubik', sans-serif;
}

.bmk_l_bold{ /* Rubik Medium 18/28 */
/*  font: normal 500 18px/28px 'Rubik', sans-serif;
}

.bmk_l{ /* Rubik Regular 18/28 */
/*  font: normal 400 18px/28px 'Rubik', sans-serif;
}

.bmk_m_bold{ /* Rubik Medium 16/26 */
/*  font: normal 500 16px/26px 'Rubik', sans-serif;
}

.bmk_m{ /* Rubik Regular 16/26 */
/*  font: normal 400 16px/26px 'Rubik', sans-serif;
}

.bmk_s_bold{ /* Rubik Medium 14/20 */
/*  font: normal 500 14px/20px 'Rubik', sans-serif;
}

.bmk_s{ /* Rubik Regular 14/20 */
/*  font: normal 400 14px/20px 'Rubik', sans-serif;
}

.bmk_caption_bold{ /* Rubik Medium 12/16 */
/*  font: normal 500 12px/16px 'Rubik', sans-serif;
}

.bmk_caption{ /* Rubik Regular 12/16 */
/*  font: normal 400 12px/16px 'Rubik', sans-serif;
}

.bmk_caption_s{ /* Rubik Medium 10/14 */
/*  font: normal 500 10px/14px 'Rubik', sans-serif;
}*/

/*body{
  font: normal 400 16px/26px 'Rubik', sans-serif;
}*/

/* База: подключён Rubik */
/* Заголовки */
.bmk_h0{ /* Rubik Bold 60/64 → 32..60 */
  font: 600 clamp(var(--fs-h0-min), 6vw, var(--fs-h0-max)) / 1.12 '--ff-name', sans-serif;
}
.bmk_h1{ /* SemiBold 48/56 → 28..48 */
  font: 500 clamp(var(--fs-h1-min), 4.8vw, var(--fs-h1-max)) / 1.17 '--ff-name', sans-serif;
}
.bmk_h2{ /* SemiBold 32/36 → 22..32 */
  font: 500 clamp(var(--fs-h2-min), 3.2vw, var(--fs-h2-max)) / 1.125 '--ff-name', sans-serif;
}
.bmk_h3{ /* SemiBold 24/32 → 20..24 */
  font: 500 clamp(var(--fs-h3-min), 2.2vw, var(--fs-h3-max)) / 1.33 '--ff-name', sans-serif;
}
.bmk_h4{ /* SemiBold 18/24 → 16..18 */
  font: 500 clamp(var(--fs-h4-min), 1.8vw, var(--fs-h4-max)) / 1.33 '--ff-name', sans-serif;
}

/* Крупный текст */
.bmk_l_bold{ /* Medium 18/28 → 16..18 */
  font: 600 clamp(var(--fs-l-min), 1.6vw, var(--fs-l-max)) / 1.56 '--ff-name', sans-serif;
}
.bmk_l{ /* Regular 18/28 → 16..18 */
  font: 300 clamp(var(--fs-l-min), 1.6vw, var(--fs-l-max)) / 1.56 '--ff-name', sans-serif;
}

/* Средний текст */
.bmk_m_bold{ /* Medium 16/26 → 15..16 */
  font: 500 clamp(var(--fs-m-min), 1.4vw, var(--fs-m-max)) / 1.625 '--ff-name', sans-serif;
}
.bmk_m{ /* Regular 16/26 → 15..16 */
  font: 400 clamp(var(--fs-m-min), 1.4vw, var(--fs-m-max)) / 1.625 '--ff-name', sans-serif;
}
.bmk_m_light{ /* Regular 16/26 → 15..16 */
  font: 300 clamp(var(--fs-m-min), 1.4vw, var(--fs-m-max)) / 1.625 '--ff-name', sans-serif;
}
/* Мелкий текст  */
.bmk_s_bold{ /* Medium 14/20 */
  font: 500 var(--fs-s-max) / 1.43 '--ff-name', sans-serif;
}
.bmk_s{ /* Regular 14/20 */
  font: 400 var(--fs-s-max) / 1.43 '--ff-name', sans-serif;
}
.bmk_caption_bold{ /* Medium 12/16 */
  font: 500 var(--fs-c-max) / 1.33 '--ff-name', sans-serif;
}
.bmk_caption{ /* Regular 12/16 */
  font: 400 var(--fs-c-max) / 1.33 '--ff-name', sans-serif;
}
.bmk_caption_s{ /* Medium 10/14 */
  font: 500 var(--fs-cs-max) / 1.4 '--ff-name', sans-serif;
}

.bmk_text-dark{
  color: var(--dark);
}
.bmk_text-white{
  color: var(--white);
}
.bmk_text-mine-blue{
  color: var(--mine-blue); 
}
.bmk_text-light-blue{
  color: var(--light-blue); 
}
.bmk_text-gray-66{
  color: var(--gray-66); 
}
.vac-specialist-phone a{
  text-decoration: none;
}
.vac-specialist-phone a:hover{
  text-decoration: underline;
}
.w-fit {
  width: -moz-fit-content !important;
  width: fit-content !important;
}


/* (Опционально) Жёсткие верхние границы на очень широких экранах */
@media (min-width: 1440px){
  .bmk_h0{ font-size: var(--fs-h0-max); }
  .bmk_h1{ font-size: var(--fs-h1-max); }
  .bmk_h2{ font-size: var(--fs-h2-max); }
  .bmk_h3{ font-size: var(--fs-h3-max); }
  .bmk_h4{ font-size: var(--fs-h4-max); }
}
html{
  height: 100%;    
  margin: 0;  
}
body{
  font: 400 clamp(var(--fs-m-min), 1.4vw, var(--fs-m-max)) / 1.625 '--ff-name', sans-serif;
  min-width: 360px;
  /*height: 100%;    
  margin: 0;       
  display: flex;
  flex-direction: column;*/
}
body.inner_page{
  margin: 0; /* чтобы не было белых отступов */
  background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url("/css/img/bmk/bg.webp") no-repeat center center fixed;
  background-size: cover; /* растягивает на весь экран */
}
body.inner_page header.fixed-top{
  position: sticky;
}

.container,
.container-lg,
.container-xl,
.container-xxl {
  max-width: 1920px !important;
}
@media (min-width: 1440px){
  .container,
  .container-lg,
  .container-xl,
  .container-xxl {
    padding-left: 60px;
    padding-right: 60px; 
  }  
}

.video-container {
  position: relative;
  /*padding-bottom: 56.25%; /* 16:9 */
  padding-bottom: 55.25%; /* 16:9 */
  /*padding-bottom: 47.25%; /* 16:9 */
  padding-top: 25px;
  height: 0;
  overflow: hidden;
  border-radius: 0; 
}

.video-container video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.fs-play-btn {
  position: absolute;
  inset: 0;
  margin: auto;
  width: 96px;
  height: 96px;
  border: 0;
  border-radius: 9999px;
  font-size: 42px;
  line-height: 96px;
  text-align: center;
  background: rgba(0,0,0,0.6);
  color: #fff;
  cursor: pointer;
  transition: transform .2s ease, opacity .2s ease;
  display: flex; align-items: center; justify-content: center;
}
.video-container.playing .fs-play-btn { opacity: 0; pointer-events: none; }
.fs-play-btn:hover { transform: scale(1.06); }
.fs-play-btn:active { transform: scale(0.96); }

.admin_edit_box{
  position: relative;
  border: 1px dashed #17a2b8;
  margin-bottom: -1px;
}
.admin_edit_link{
  position: absolute;
  right:  0;
  bottom: 0;
  z-index: 2000;
}
.admin_edit_box:hover{
  border: 1px dashed #dc3545;
  z-index: 1000;
}
.admin_edit_box:hover .admin_edit_link{
  color: #dc3545;
}
.btn-vac{
  background-color: var(--mine-blue);
  color: var(--white);
}
.btn-vac:hover{
  background-color: #155c96;
  color: var(--white);
}
/* --- bmk_header --- */
  .bmk-header{
    transition: background-color .3s ease, box-shadow .3s ease;
    background-color: transparent;
  }
  .nav-link{
    position: relative;
  }
  .is_top .nav-link{
    color: var(--white);
  }
    
  .nav-link::after{
    content:""; 
    position:absolute; 
    left:0; 
    bottom:-4px;
    width:0; 
    height:1px; 
    background:var(--blue); 
    transition:width .2s ease;
  }
  .nav-link:hover::after{ width:100%; }
  .is_top .bmk_top_phone{
    color: var(--white);
    text-decoration: none;
  }
  .is_top .bmk_top_phone:hover{
    text-decoration: underline;
  }
  .is_top .bmk_top_mail{
    color: var(--light-blue);
    text-decoration: underline;
  }
  .is_top .bmk_top_mail:hover{
    text-decoration: none;
  }
  
  .bmk-cta-top {
    background: #1c6fb8;           /* твой синий */
    color: #fff !important;
    font-weight: 600;
    padding: 0 20px;               /* только горизонтальный паддинг */
    /*display: flex !important;*/
    align-items: center;           /* выравнивание текста по центру */
    justify-content: center;
    text-decoration: none;
    transition: background .2s ease;
    cursor: pointer;
  }

  .bmk-cta-top:hover {
    background: #155c96;           /* темнее при ховере */
    color: #fff !important;
  }
  .top_menu_contacts_box{
    padding-top: 24px;
    padding-bottom: 24px;
  }
  .logo-img{
    height: 85px;
  }
  .bmk-header.is-scrolled .logo-img{
    height: 40px;
  }
  .bmk-header.is-scrolled .burger_btn{
    background: var(--gray-66);
  }
  .bmk-header.is-scrolled .top_menu_contacts_box{
    padding-top: 4px;
    padding-bottom: 4px;

  }
  
  .bmk-header.is-scrolled {
    background-color: #fff;              /* белый фон */
    box-shadow: 0 2px 8px rgba(0,0,0,.08); /* лёгкая тень, если надо */
  }
  .bmk-header.is-scrolled .bmk_top_phone {
    color: var(--dark); 
    text-decoration: none;
  }
  .bmk-header.is-scrolled .nav-link{
    color: var(--dark);
  }
  .bmk-header.is-scrolled .bmk_top_mail{
    color: var(--mine-blue);
  }
  @media (max-width: 768px) {
    .logo-img{
      height: 40px;
    }
  }
/* --- End bmk_header --- */

/* --- bmk_hero --- */
  .bmk-hero {
    position: relative;
    height: 100vh;             /* всегда на всю высоту экрана */
    display: flex;
    align-items: center;
    color: #fff;
    overflow: hidden;
  }
  .bmk-hero__bg,
  .bmk-hero__bg .cover {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;         /* растянуть картинку */
  }
  .bmk-hero__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.55); /* затемнение как на макете */
  }

  /* Заголовки */
  .bmk-hero .bmk_h0 {
    padding-top: 7vh;
    text-transform: uppercase;
    z-index: 1;
    position: relative;
  }
  .bmk-hero .bmk_h2 {
    z-index: 1;
    position: relative;
  }
  .bmk-cta-hero {
    background: #1c6fb8;
    color: #fff !important;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: background .2s ease;
    cursor: pointer;
    width: 100%;
    display: inline-block;
    text-align: center;
  }
/* --- End bmk_hero --- */


/* --- bmk_about --- */
  .bmk-about {
    background: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url("/css/img/bmk/sparks.webp") center/cover no-repeat fixed;
  }
  
  .card-notch {
    min-height: 350px;
    position: relative;
    background:#fff;
    padding:28px 32px;
    /* дефолты */
    --nd: 40px;  /* notch depth (глубина хвоста) */
    --nt: 35%;   /* notch top  */
    --nb: 65%;   /* notch bottom */
  }

  .card-notch.is-right{
    -webkit-clip-path: polygon(
      0 0, 100% 0,
      100% var(--nt), calc(100% - var(--nd)) 50%, 100% var(--nb),
      100% 100%, 0 100%
    );
    clip-path: polygon(
      0 0, 100% 0,
      100% var(--nt), calc(100% - var(--nd)) 50%, 100% var(--nb),
      100% 100%, 0 100%
    );
  }


  .card-notch.is-left{
    -webkit-clip-path: polygon(
      0 0, 100% 0, 100% 100%, 0 100%,
      0 var(--nb), var(--nd) 50%, 0 var(--nt)
    );
    clip-path: polygon(
      0 0, 100% 0, 100% 100%, 0 100%,
      0 var(--nb), var(--nd) 50%, 0 var(--nt)
    );
  }

  .card-notch_content {
    position: relative;
    z-index: 1;
  }
  @media (max-width: 992px) {
    .card-notch.is-right{
      -webkit-clip-path: initial;
      clip-path: initial;
    }


    .card-notch.is-left{
      -webkit-clip-path: initial;
      clip-path: initial;
    }
  }
/* --- End bmk_about --- */

/* --- bmk_stats --- */  
  .bmk-stats  {
    position: relative;
    width: 100%;
    min-height: 100vh; /* всегда на весь экран */
    background: linear-gradient(rgba(0, 0, 0, 0.55), rgba(0, 0, 0, 0.55)), url("/css/img/bmk/stats.webp") no-repeat center center;
    background-size: cover;
  }

  .stats__overlay {
    padding: 40px 0;
  }

  .stats__number {
    font-weight: 500;
    transition: all 0.3s ease-out;
  }

  .stats__text {
    /*opacity: 0.9;*/
  }

/* --- Endbmk_stats --- */


/* --- bmk_cycle --- */
  .bmk-cycle{
    color: vaк(--dark);
    overflow-x: hidden;
  }
  .bmk-cycle hr {
    border-top: 2px solid var(--mine-blue);
    opacity: 1;
  }
  .cycle-card {
    position: relative;
    /*padding: 32px 40px;*/
    min-height: 220px;
    display: flex;
    align-items: center;
    --pm: -50px; 
    --ps: 52px; 
  }

  /* голубая плашка */
  .cycle-card.blue {
    background: #e6f4ff;
  }

  /* белая плашка */
  .cycle-card.white {
    background: #fff;
  }

  /* хвостик справа для голубого блока */
  .cycle-card.blue.is-right::after {
    content: "";
    position: absolute;
    top: 50%;
    right: var(--pm);              /* ширина выступа */
    transform: translateY(-50%);
    border-top: var(--ps) solid transparent;
    border-bottom: var(--ps) solid transparent;
    border-left: var(--ps) solid #e6f4ff; /* тот же цвет, что фон */
    z-index: 100;
  }

  /* хвостик слева для белого блока */
  .cycle-card.white.is-left::after {
    content: "";
    position: absolute;
    top: 50%;
    left: var(--pm);
    transform: translateY(-50%);
    border-top: var(--ps) solid transparent;
    border-bottom: var(--ps) solid transparent;
    border-right: var(--ps) solid #fff; /* цвет фона */
  }

  .cycle-photo img{
    width: 100%;
  }
  
  .cycle-photo {
    overflow: hidden; 
  }

  .cycle-photo img {
    transition: transform 0.4s ease; 
    display: block; 
    width: 100%; 
    height: auto;
  }

  .bmk-cycle__row:hover .cycle-photo img {
    transform: scale(1.15); 
  }

  /*
  .bmk-cycle__row > .col-lg-6 {
    flex: 1 1 50%;
    max-width: none; 
    transition: flex-basis 0.4s ease;
  }
  .bmk-cycle__row:hover > .col-lg-6:first-child {
    flex-basis: 42%;
  }
 .bmk-cycle__row:hover > .col-lg-6:last-child {
    flex-basis: 58%;
  }*/

  /* адаптив — убираем хвостики на узких экранах */
  @media (max-width: 992px) {
    .cycle-card::after {
      /*display: none;*/
    }
    
    .cycle-card.blue.is-right::after {
      content: "";
      position: absolute;
      top: -77px;
      right: inherit;
      transform: translateY(-50%);
      border-top: var(--ps) solid transparent;
      border-bottom: var(--ps) solid transparent;
      border-left: var(--ps) solid #e6f4ff;
      z-index: 100;
      transform: rotate(-90deg);
    }
    .cycle-card.white.is-left::after {
      content: "";
      position: absolute;
      top: -77px;
      left: inherit;
      transform: translateY(-50%);
      border-top: var(--ps) solid transparent;
      border-bottom: var(--ps) solid transparent;
      border-right: var(--ps) solid #fff;
      z-index: 100;
      transform: rotate(90deg);
    }
  }

/* --- End bmk_cycle --- */

/* --- bmk_products --- */
  .bmk-products {
    position: relative;
    overflow: hidden;
  }
  .bmk-products__bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    /*filter: brightness(.55);*/
    z-index: 0;
  }
  .bmk-products__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(0,0,0,.2), rgba(0,0,0,.5));
    z-index: 0;
  }
  
  .bmk-products hr {
    border-top: 2px solid var(--gray-94);
    opacity: 1;
  }
  
  .bmk-products .container-xxl {
    position: relative;
    z-index: 2;
  }
  
  
  .bmk-prod {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 14px 28px rgba(0,0,0,.25), 0 8px 12px rgba(0,0,0,.12);
    /*overflow: hidden;*/
    transition: transform .25s ease, box-shadow .25s ease;
    padding: 0 40px 40px 40px;
    border-radius: 0;
    margin-top: 60px;
    position: relative;
  }
  .bmk-prod:before{
    content: "";
    position: absolute;
    right:0;
    top:-40px;
    width:calc(100% - 40px); 
    height: 40px;
    background: #fff;
  }

  .bmk-prod:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 36px rgba(0,0,0,.3), 0 10px 14px rgba(0,0,0,.14);
  }
  
  .bmk-prod__media .cover {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }
  
  .bmk-prod__body {
    padding: 44px 0px 22px 0px;
  }

  
  @media (min-width: 992px) {
    .bmk-products__grid > .col-lg-6:nth-child(1) .bmk-prod { transform: translateY(0); }
    .bmk-products__grid > .col-lg-6:nth-child(2) .bmk-prod { transform: translateY(60px); }
    .bmk-products__grid > .col-lg-6:nth-child(3) .bmk-prod { transform: translateY(0px); }
    .bmk-products__grid > .col-lg-6:nth-child(4) .bmk-prod { transform: translateY(60px); }
    
    /* чтобы ховер не «ломал» ступеньки — добавим смещение к уже заданному */
    .bmk-products__grid > .col-lg-6 .bmk-prod:hover { transform: translateY(calc(var(--shift, 0px) - 4px)); }
    .bmk-products__grid > .col-lg-6:nth-child(1) .bmk-prod { --shift: 0px; }
    .bmk-products__grid > .col-lg-6:nth-child(2) .bmk-prod { --shift: 60px; }
    .bmk-products__grid > .col-lg-6:nth-child(3) .bmk-prod { --shift: 0px; }
    .bmk-products__grid > .col-lg-6:nth-child(4) .bmk-prod { --shift: 60px; }
  }

/* --- End bmk_products --- */

/* --- bmk_map --- */

  .bmk-map__divider{
    height: 2px;
    width: 100%;
    background: #1795c9;                    
    opacity: .9;
  }
  
  .bmk-map hr{
    border-top: 2px solid var(--blue);
    opacity: 1;
  }

  /* Поиск */
  .bmk-map__search{ min-width: min(560px, 100%); }

  .bmk-map__input{
    padding-right: 48px;                    /* место под кнопку-лупу */
    background: #eaf5fb;                    /* светло-голубой фон поля */
    border: 1px solid #d2e6f2;
    border-radius: 6px;
    height: 44px;
    box-shadow: none;
    border-radius: 0px;
  }

  .bmk-map__input::placeholder{ color:#8aa8b8; }

  .bmk-map__btn{
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    width: 36px;
    height: 36px;
    border: 0;
    border-radius: 6px;
    background: transparent;
    color: #3b6f89;
    display: grid;
    place-items: center;
    cursor: pointer;
  }

  .bmk-map__btn:hover{ color:#0b5880; }

  /* Карта: сохраняем соотношение, центрируем */
  .bmk-map__map{
    /* если нужно фиксировать пропорцию, раскомментируй ratio
    aspect-ratio: 1300 / 760;
    */
    background: #f7fbfe;
    border: 1px solid #e6eef5;
  }

  .bmk-map__map img{
    width: 100%;
    height: auto;
    display: block;
  }

  /* Мобильные мелочи */
  @media (max-width: 767.98px){
    .bmk-map__search{ min-width: 100%; }
  }

/* --- End bmk_map --- */

/* --- bmk_video --- */
/* фон секции и линия */
  .bmk-video{
    background: #dff2fb;                /* светло-голубой фон как на референсе */
  }
  .bmk-video__divider{
    height: 3px;
    width: 100%;
    background: #1795c9;                /* синяя линия */
    opacity: .9;
  }
  .bmk-video hr{
    border-top: 2px solid var(--blue);
    opacity: 1;
  }
/* --- End bmk_video --- */

/* --- bmk_cta --- */
  .bmk-cta{
    position: relative;
    background:
      linear-gradient(rgba(0,0,0,.55), rgba(0,0,0,.55)),
      url("/css/img/bmk/cta.webp") center/cover no-repeat;
  }
  .bmk-cta .container-xxl{ position: relative; z-index: 1; }

  /* Заголовки/линия */
  .bmk-cta__title{ font-weight: 800; font-size: clamp(28px, 4vw, 56px); letter-spacing: .01em; }
  .bmk-cta__subtitle{ font-size: clamp(16px, 2vw, 24px); opacity: .9; }
  .bmk-cta__divider{ height: 2px; background: rgba(255,255,255,.75); width: 100%; }

  /* ссылки-почты */
  .bmk-cta__link{ color:#fff; text-decoration: none; border-bottom:1px solid rgba(255,255,255,.35); }
  .bmk-cta__link:hover{ color:#fff; border-bottom-color: rgba(255,255,255,.8); }

  /* ФОРМА: белая карточка + «стрелка» слева */
  .bmk-cta__form{
    position: relative;
    border-radius: 8px;
    background: #fff;
  }
  .bmk-cta__form::before{
    /* белый "хвостик" слева */
    content:"";
    position:absolute;
    left:-25px;
    top:50%;
    transform: translateY(-50%);
    width:26px;
    height:52px;
    background:#fff;
    clip-path: polygon(0 50%, 100% 0, 100% 100%);
    box-shadow: -6px 8px 18px rgba(0,0,0,.15);
  }

  /* Поля как на референсе — светло-голубые */
  .bmk-input{
    background:#dff2fb;
    border:1px solid #cfe8f5;
    border-radius:6px;
    box-shadow:none;
  }
  .bmk-input:focus{
    border-color:#79bfe2;
    outline:0;
    box-shadow:0 0 0 .2rem rgba(23,149,201,.2);
  }

  /* Кастом файла */
  .bmk-file{
    color:#3b6f89;
    cursor:pointer;
    user-select:none;
  }
  .bmk-file:hover{ color:#0b5880; }

  /* Кнопка */
  .btn-primary{
    background:#1c6fb8;
    border-color:#1c6fb8;
  }
  .btn-primary:hover{ background:#155c96; border-color:#155c96; }

  .bmk-cta__form_box .form-check-label {
    font-size: 12px;
    color: #6b6f77;
  }

  /* Мобильные отступы/адаптив */
  @media (max-width: 991.98px){
    .bmk-cta__form::before{ display:none; } /* скрыть хвостик, если тесно */
  }

/* --- End bmk_cta --- */

/* --- bmk_contacts --- */
/* --- End bmk_contacts --- */


/* --- End bmk_shipped --- */
  .bmk-shipped{
    background: #ffffff;
    overflow-x: hidden;
  }
  .bmk-ship__divider{height:3px;background:#1795c9;opacity:.9}

/* Параметры «пика» справа */
  .bmk-edge-peek{ 
    --peek: 120px; 
    /*margin-right: calc(-1 * var(--peek)); */
    padding-right: var(--peek); 
  }
  @media (max-width: 1199.98px){ .bmk-edge-peek{ --peek: 64px; } }
  @media (max-width: 575.98px){ .bmk-edge-peek{ --peek: 24px; } }

  /* Слайдер */
  .bmk-ship__carousel{ }
  .bmk-ship__carousel .flickity-viewport{ overflow: visible; } /* позволяем «выглядывать» */
  .bmk-ship__carousel .flickity-button{ background:#fff; }
  .bmk-ship__carousel .flickity-button:hover{ background:#f2f2f2; }
  
  .bmk-shipped .flickity-prev-next-button.previous {
    left: 10px;
  }
  .bmk-shipped .flickity-prev-next-button.next {
    right: -10px;
  }
  
  /* Карточка проекта */
  .ship-card{
    width: 44%;              /* два крупных слайда на экране */
    margin-right: 40px;      /* зазор между карточками */
  }
  @media (max-width: 1199.98px){ .ship-card{ width: 60%; } }
  @media (max-width: 991.98px){  .ship-card{ width: 75%; } }
  @media (max-width: 767.98px){  .ship-card{ width: 88%; margin-right: 24px; } }
  @media (max-width: 575.98px){  .ship-card{ width: 92%; margin-right: 16px; } }

  .ship-card__media img{ width:100%; height:100%; object-fit:cover; display:block; }
  .ship-card__title{ font-weight:700; font-size: clamp(18px,2.2vw,28px); margin: 18px 0 8px; }
  .ship-card__meta{ color:#475463; font-size: clamp(12px,1.3vw,14px); line-height:1.45; }
/* --- End bmk_shipped --- */

/* --- bmk_footer --- */
  .bmk-footer{
    background:#0b1f26;         /* тёмный фон как в макете */
    color:#d6e1e6;
    margin-top: auto;
  }

  .bmk-footer__logo img{ display:block; height:auto; max-height:56px; }

  .bmk-footer__menu a{
    color:#d6e1e6;
    text-decoration:none;
    position:relative;
    transition:color .2s ease;
  }
  .bmk-footer__menu a::after{
    content:""; position:absolute; left:0; bottom:-4px;
    width:0; height:1px; background:#7fb7cf; transition:width .2s ease;
  }
  .bmk-footer__menu a:hover{ color:#ffffff; }
  .bmk-footer__menu a:hover::after{ width:100%; }

  .bmk-footer__req{ line-height:1.45; }

  .bmk-footer__policy{
    color:#cfe6f2;
    text-decoration:none;
    border-bottom:1px solid rgba(207,230,242,.35);
  }
  .bmk-footer__policy:hover{
    color:#fff;
    border-bottom-color:rgba(255,255,255,.8);
  }

  @media (max-width: 991.98px){
    .bmk-footer__menu{ gap:1rem 1.5rem; }
  }

/* --- End bmk_footer --- */

/* --- content_box ---*/
.content_box{
  padding-top: 15px;
  background: #ffffff;
}
.bread_crumbs_box{
  padding: 15px 0;
  color: var(--light-blue); 
}
.bread_crumbs_box a{
  color: var(--light-blue); 
  text-decoration: none;
  border-bottom: 1px solid rgba(23,149,201,.35);
}

.bread_crumbs_box a:hover{
  color: var(--light-blue); 
  border-bottom-color: rgba(23,149,201,.8);
}

 a {
  color: #0d6efd;
}
#vacanciesGrid .card:hover{
  box-shadow: 0 18px 36px rgba(0,0,0,.3), 0 10px 14px rgba(0,0,0,.14);
  transform: translateY(-4px);
  transition: transform .25s ease, box-shadow .25s ease;
}

.content_body{
}

.vac-hr{
  margin: 15px 0 30px 0;
  color: inherit;
  border: 0;
  border-top: 2px solid var(--mine-blue);
}

.job_form_box .bmk-cta__form {
  background-color: var(--light-blue);
}
.job_form_box .bmk-cta__form::before {
  background-color: var(--light-blue);
}
.similar_vac .vac-card{
  background-color: #E6F6FF;
}

@media (max-width: 768px){
  .content_body{
    padding: 15px 10px 15px 10px;
  }
}
/* --- End content_box ---*/

/* --- mobal --- */

  #callbackModal .modal-dialog{
    max-width: 880px;
  }

  #callbackModal .modal-content{
    border: none;
    border-radius: 0;
    box-shadow: 0 20px 60px rgba(0,0,0,.35);
    padding: 36px 44px 28px;
  }

  /* Заголовок */
  #callbackModal .modal-header{
    border: 0;
    padding: 0 0 10px 0;
  }

  #callbackModal #callbackModalLabel{
    text-transform: uppercase;
  }

  /* Подзаголовок (если добавишь .bmk-form-subtitle — см. ниже) */
  #callbackModal #callbackModalLabel span{
    font: 500 clamp(var(--fs-h4-min), 1.8vw, var(--fs-h4-max)) / 1.33 '--ff-name', sans-serif;
    color: var(--dark);
    display: block;
    text-transform: lowercase; 
  }

  /* Разделительная линия под заголовком */
  #callbackModal .bmk-divider{
    height: 2px;
    background: #97c2d6;
    opacity: .9;
    margin: 14px 0 24px;
  }

  /* Поля */
  #callbackModal .modal-body{
    padding: 0;
  }

  #callbackModal .input-group,
  #callbackModal .mb-3{
    margin-bottom: 16px !important;
  }

  #callbackModal .form-control{
    background: #eaf6ff;
    border: none;
    border-radius: 0;
    padding: 14px 18px;
    font-size: 18px;
    line-height: 1.3;
  }

  #callbackModal textarea.form-control{
    min-height: 160px;
    resize: vertical;
  }

  #callbackModal .form-control::placeholder{
    color: #6b91a6;
  }

  /* Фокус */
  #callbackModal .form-control:focus{
    box-shadow: 0 0 0 2px rgba(13,136,209,.25);
  }

  /* Строка «прикрепите файл…» */
  #callbackModal label[for="UserFile"].form-label{
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
    color: #6b6f77;
    margin: 6px 0 0;
    user-select: none;
  }
  #callbackModal .UserFile__text{
    display: inline-block;
  }

  /* Кнопки */
  #callbackModal .modal-footer{
    border: 0;
    padding: 18px 0 0 0;
    display: flex;
    align-items: center;
    gap: 3px;
    justify-content: flex-start;
  }

  #callbackModal .btn-primary.good_buy_mobal{  
    background: #0c88d1;
    border-color: #0c88d1;
    text-transform: uppercase;
    font: 600 clamp(var(--fs-l-min), 1.6vw, var(--fs-l-max)) / 1.56 '--ff-name', sans-serif;
    padding: 14px 26px;
    min-width: 260px;
    border-radius: 4px;
    border-radius: 0; 
  }
  #callbackModal .btn-primary.good_buy_mobal:hover{
    background: #0a79ba;
    border-color: #0a79ba;
  }

  /* Чекбокс + мелкий текст */
  #callbackModal .form-check{
    margin-top: 10px;
    text-align: left;
  }
  #callbackModal .form-check-input{
    margin-right: 8px;
  }
  #callbackModal .form-check-label{
    font-size: 12px;
    color: #6b6f77;
  }
  #callbackModal .form-check-label a{
    text-decoration: underline;
  }

  /* Крестик */
  #callbackModal .btn-close{
    position: absolute;
    right: 12px;
    top: 12px;
    filter: grayscale(100%);
    opacity: .7;
  }
  #callbackModal .btn-close:hover{ opacity: 1; }

  #modal_alert .modal-content{
    border: none;
    border-radius: 0;
    box-shadow: 0 20px 60px rgba(0,0,0,.35);
    padding: 36px 44px 28px;
  }
  #modal_alert .modal-footer{
    justify-content: center;
  }
/* --- END mobal --- */

