html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}
.container{
    max-width: 1518px;
}
.zayavka_block{
      display: flex;
    gap: 100px;
}
 @font-face {
  font-family: 'SF UI Display';
  src: url('../fonts/sf-ui-display-ultralight.woff') format('woff');
  font-weight: 100;
  font-style: normal;
}

@font-face {
  font-family: 'SF UI Display';
  src: url('../fonts/sf-ui-display-thin.woff') format('woff');
  font-weight: 200;
  font-style: normal;
}

@font-face {
  font-family: 'SF UI Display';
  src: url('../fonts/sf-ui-display-light.woff') format('woff');
  font-weight: 300;
  font-style: normal;
}

@font-face {
  font-family: 'SF UI Display';
  src: url('../fonts/sf-ui-display-medium.woff') format('woff');
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: 'SF UI Display';
  src: url('../fonts/sf-ui-display-semibold.woff') format('woff');
  font-weight: 600;
  font-style: normal;
}

@font-face {
  font-family: 'SF UI Display';
  src: url('../fonts/sf-ui-display-bold.woff') format('woff');
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: 'SF UI Display';
  src: url('../fonts/sf-ui-display-heavy.woff') format('woff');
  font-weight: 800;
  font-style: normal;
}

@font-face {
  font-family: 'SF UI Display';
  src: url('../fonts/sf-ui-display-black.woff') format('woff');
  font-weight: 900;
  font-style: normal;
}
body{
  
}
.zayavka_title{
  font-weight: 800;
  font-size: 96px;
  color:#030B11;
  line-height: 1.0;
  margin-bottom: 97px;
}
b{
   font-weight: 800;
}
.zayavka_block_info{
  display: flex;
  gap: 50px;
}
.zayavka_block_info img{
  max-width: 59px;
  max-height: 85px;
 

}
.header-blocks{
  display: none !important;
}
.main-container{
  max-width: 100% !important;
  padding: 0 !important;
  

}
.zayavka{
  margin-bottom: 170px;
}
.what_do_block{
  position: relative;
  padding-top: 59px;
  padding-left: 63px;
  padding-bottom: 136px;
}
.what_do_block::before {
  content: "";
  position: absolute;
  left: 0;                   /* слева */
  top: 0;
  bottom: 0;
  width: 364px;               /* ширина закрашенной полосы */
  background-color: #F8D069; /* цвет прямоугольника (например, жёлтый) */
  border-radius: 2px;        /* слегка скруглённый угол, опционально */
  z-index: 0;               /* фон под текстом */
}
.what_do_block .zayavka_title{
  margin-bottom: 50px;
}
.what_do_block_text{
  font-weight: 500;
  color: #030B11;
font-size: 24px;
  margin-bottom: 50px;
  max-width: 887px;
  line-height: 150%;
}
.what_do_block_nomer{
font-weight: 800;
font-size: 48px;
line-height: 1.5;
    color: #FA2F11;
}
.what_do{
  margin-bottom: 170px;
}
.what_info_text{
  font-weight: 500;
  font-size: 24px;
  max-width: 803px;
  color: #030B11;
  line-height: 150%;
  
}
.what_info_red_title{
  font-weight: 800;
font-size: 48px;
color:#FB2F11;margin-bottom: 50px;
}

.what_info_spisok {
  list-style: disc;            /* стандартные маркеры */
  padding-left: 25px;          /* отступ от левого края */
  margin: 15px 0;
  max-width: 635px;
  position: relative;
  z-index: 50;
}

.what_info_spisok li {
  font-weight: 600;
  font-size: 24px;
  margin-bottom: 10px;         /* расстояние между пунктами */
  line-height: 1.5;            /* читаемость */
    color: #089D4A;            /* цвет текста */
}

.what_info_red{
border: 1px solid #FB2F11;
padding-top: 57px;
padding-left: 70px;
padding-bottom: 42px;
margin-top: -300px;
}
.what_info{
  margin-bottom: 170px;
}
footer{
  padding-top: 100px;
  padding-bottom: 80px;
  background-image: url("../img/footer.png");
 
    background-repeat: no-repeat;
}
.footer_layer_copyright{
  margin-top: 32px;
  color: white;
  font-weight: 400;
  font-size: 14px;
}
.footer_layer{
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.footer_layer_logo_app{
  display:flex;
  gap:10px;
}
.footer_layer_logo_app img{
  max-width: 103px;
}
.footer_layer_social{
  display: flex;
  gap: 10px;
  margin-top: 30px;
}
.banner_second_title{
  text-align: right;
  color: #089D4A;
   font-weight: 800;
font-size: 48px;
margin-bottom: 50px;
}
.banner_second_text{
  text-align: right;
  font-weight: 500;
font-size: 24px;
color: #030B11;
line-height: 150%;
margin-bottom: 10px;
}
.banner_second_text2{
  text-align: right;
  font-weight: 600;
font-size: 28px;
    color: #089D4A;
line-height: 150%;
text-transform: uppercase;
}
.banner_second_text2 span{
  text-decoration: underline;

}
.zayavka_block_info_text span{
  color: #089D4A;
    font-weight: 600;
}
.zayavka_block_info_text{
  font-size: 24px;
  font-weight: 500;
}
.banner_second{
  max-width: 521px;
      margin-left: 112px;
       position: relative;
 
  padding: 20px;
  width: fit-content; /* или нужная ширина */
  z-index: 1;
}
/* .banner_first{
  background: #089D4A;
  padding-top: 393px;
  padding-left: 63px;
  padding-right: 100px;
   padding-bottom: 100px;
       clip-path: polygon(0 0, 100% 42%, 100% 100%, 0 100%);
       position: relative;
       z-index: 5;
} */
 .banner_first {
    background: #089D4A;
    padding-top: 20vw;  /* вместо фиксированных пикселей */
    padding-bottom: 8vw;
    padding-left: 3vw;
        padding-right: 151px;
    clip-path: polygon(0 0, 100% 32.5%, 100% 100%, 0 100%);
    position: relative;
    z-index: 5;
}


.banner_first_text{
   font-weight: 500;
font-size: 24px;
color:white;
line-height: 150%;
}
.banner_first_title{
  margin-top: 100px;
  margin-bottom: 50px;
    font-weight: 800;
font-size: 96px;
color:white;
}
.banner_info_road{
      margin-top: -51vw;
}
.banner_bottom_cars{
      display: flex;
    justify-content: center;
    margin-top: -90px;
    position: relative;
    z-index: 50;
    margin-left: -205px;
}
.zayavka .col-lg-3 img{
  width: 100%;
  max-width: 100%;
  object-fit: cover;
}
.glav{
  margin-bottom: 170px;
  margin-top: 68px
}
.banner_second::before {
  content: "";
  position: absolute;
  top: -158px; /* выходит за пределы блока */
  left: -565px;
  right: -112px;
  bottom: -83px;
  border: 2px solid #F8D069;
  z-index: -1; /* чтобы рамка была сзади текста */
  border-radius: 8px; /* опционально */
}
/***********/
.spacer { 
}
  /* height:120vh; background:linear-gradient(#f7f7f7,#eaeaea); } */
  /* контейнер сцены — центрируем SVG */
  #scene {
    /* display:flex;
    justify-content:center;
    align-items:center;
    height:60vh;       */     /* высота зоны, где идёт анимация */
    position:relative;
    /* overflow:visible; */ 
  }

  svg { width:80%; max-width:900px; height:auto; display:block; overflow: visible;}

  /* включаем аппаратное ускорение и удобный origin */
  #red_car, #blue_car, #acsident {
    transform-origin: center center;
    will-change: transform, opacity;
  }
  .glav{
    position: relative;
  }
  .glav_info_car_1{
    position: absolute;
     top: 24%;
    z-index: 50000;
        left: 10%;

  }
  .glav_info_car_2{
      position: absolute;
    top: 48%;
    z-index: 50000;
    /* left: 900px; */
    right: 10%;
  }
  #people {
  opacity: 0; /* не 0.4 */
  transform: scale(0.8);
  overflow: visible;
  transition: none;
}

/************/
.glav_info_block{
position: absolute;
z-index: 5000;
top:0;
left: 0;
right: 0;
bottom: 0;

}
.glav_info_title{
  margin-top: 245px;
  text-align: center;
  font-weight: 800;
     font-size: 140px;

color: #166267;
  margin-bottom: 20px;
}
.glav_info_title2{
  text-align: center;
   font-weight: 500;
  font-size: 48px;
 color: #166267;
}
/******/
.fade-in {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.8s ease, transform 0.8s ease;
}

.fade-in.visible {
  opacity: 1;
  transform: translateY(0);
}
.header_road{
  position: absolute;
  top: 0px;
  left:0;
  right: 0;
  z-index: 50000;
}
.header_block{
  margin-top: 60px;
}

/********/
.language-selector {
  position: relative;
  display: inline-block;
  font-family: sans-serif;
}

.lang-btn {
  background: #E9F2FC;
  border: none;
  border-radius: 8px;
  padding: 25px 25px;
  font-size: 16px;
  cursor: pointer;
  color: #000;
  display: flex;
  align-items: center;
  gap: 6px;
}

.lang-btn .arrow {
  font-size: 12px;
  transition: transform 0.3s ease;
}

/* Скрытое меню */
.lang-dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  background: #E9F2FC;
  border-radius: 8px;
  margin-top: 4px;
  padding: 6px 0;
  list-style: none;
  min-width: 100%;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: all 0.25s ease;
}

.lang-dropdown li {
  text-align: center;
}

.lang-dropdown a {
  display: block;
  padding: 6px 12px;
  color: #000;
  text-decoration: none;
  transition: background 0.2s ease;
}

.lang-dropdown a:hover {
  background: #d6e7f9;
}

/* Показываем при наведении */
.language-selector:hover .lang-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.language-selector:hover .arrow {
  transform: rotate(180deg);
}
.header_block{
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/********/
.menu-wrapper {
  position: relative;
  display: inline-block;
  font-family: sans-serif;
}

/* Кнопка меню */
.menu-btn {
  background: #2E90FA;
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 25px 25px;
  font-size: 16px;
  display: flex;
  align-items: center;
  gap: 8px;
  cursor: pointer;
  transition: background 0.3s ease;
}

.menu-btn:hover {
  background: #1d6ed8;
}

/* Иконка (три линии) */
.menu-icon {
  width: 20px;
  height: 12px;
  position: relative;
  transition: all 0.3s ease;
}

.menu-icon::before,
.menu-icon::after,
.menu-icon span {
  content: "";
  position: absolute;
  width: 100%;
  height: 2px;
  background: #fff;
  left: 0;
  transition: all 0.3s ease;
}

.menu-icon::before {
  top: 0;
}
.menu-icon::after {
  bottom: 0;
}
.menu-icon span {
  top: 5px;
}

/* Выпадающее меню */
.dropdown-menu {
  position: absolute;
  top: 100%;
  right:  0;
  background: #E9F2FC;
  border-radius: 8px;
  margin-top: 6px;
  display: flex;
  flex-direction: column;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: all 0.3s ease;
  min-width: 160px;
  overflow: hidden;
}

.dropdown-menu a {
  color: #000;
  text-decoration: none;
  padding: 10px 14px;
  transition: background 0.2s ease;
}

.dropdown-menu a:hover {
  background: #d6e7f9;
}

/* Активное состояние */
.menu-wrapper.active .dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* Анимация крестика */
.menu-wrapper.active .menu-icon::before {
  transform: rotate(45deg);
  top: 5px;
}
.menu-wrapper.active .menu-icon::after {
  transform: rotate(-45deg);
  bottom: 5px;
}
.menu-wrapper.active .menu-icon span {
  opacity: 0;
}

/**********/
#car3, #car4 {
  transition: transform 0.3s ease-out;
  transform-origin: center;
  will-change: transform;
}
.what_info_img img{
  width: 100%;
  max-width: 100%;
  object-fit: cover;
}
.glav_img_road{
  position: relative;

}
.car_width svg{
   width: 25vw;
}




@media (max-width: 1720px) {
  .banner_first{
        padding-bottom: 6vw;
            padding-top: 25vw;
  }
  .banner_info_road {
    margin-top: -54vw;
}
}
@media (max-width: 1600px) {
  .glav_info_title {
    margin-top: 165px;
  }
  .glav_info_car_2 {
    top: 51%;
  }
  .banner_second::before{
    top: -60px;
    left: -431px;
    right: -40px;
    bottom: -60px;
  }
.car_width svg{
    width: 20vw;
}
}
@media (max-width: 1550px) {
  .banner_info_road{
    margin-top: -56vw;
  }
    .banner_first {
        padding-bottom: 7.5vw;
            clip-path: polygon(0px 0px, 100% 33%, 100% 100%, 0px 100%);
       
    }
}
@media (max-width: 1501px) {
  .banner_first{
              clip-path: polygon(0px 0px, 100% 32.5%, 100% 100%, 0px 100%);
    
    }
}
@media (max-width: 1451px) {
      .banner_info_road {
        margin-top: -56vw;
    }
    .banner_first {
        padding-bottom: 7.5vw;
       padding-top: 30vw;
               padding-bottom: 3.5vw;
    }
    .banner_first{
              clip-path: polygon(0px 0px, 100% 31%, 100% 100%, 0px 100%);
    
    }
}
@media (max-width: 1400px) {
    .banner_second::before {
        top: -15px;
        left: -350px;
        right: -15px;
        bottom: -15px;
    }
}
@media (max-width: 1367px) {
  .banner_bottom_cars{
        margin-top: -38px;
            margin-left: -0;
  }
  .banner_first {
            padding-right: 140px;
        clip-path: polygon(0 0, 100% 31%, 100% 100%, 0 100%);
               
  }
  .banner_first_title{
     font-size: 72px;
  }
  .glav_info_title {
    font-size: 72px;
  }
  .glav_info_title2 {
    font-size: 24px;
  }
   .zayavka_title {
        font-size: 76px;
   }
   .what_info_red {
    padding-top: 40px;
    padding-left: 40px;
    padding-bottom: 40px;
   }
   .what_info_spisok {
    max-width: 500px;
   }
   .what_info_img{
    position: relative;
    z-index: 500;
   }
   .what_info_red {
    margin-top: -150px;
   }
}
@media (max-width: 1300px) {
  .banner_first_title {
    margin-top: 50px;
  }
  .banner_first{
     padding-right: 100px;
    clip-path: polygon(0 0, 100% 30%, 100% 100%, 0 100%);
  }

}
@media (max-width: 1200px) {
  .what_info_red {
    margin-top: -150px;
   }
  .banner_first {
        clip-path: polygon(0 0, 100% 28%, 100% 100%, 0 100%);
    }
   .zayavka_title {
        font-size: 70px;
        margin-bottom: 50px;
   }
}
@media (max-width: 1150px) {
      .banner_first {
                padding-right: 8vw;
        clip-path: polygon(0 0, 100% 26%, 100% 100%, 0 100%);
    }
   .what_info_red {
        margin-top: 0px;
    }
}
@media (max-width: 1100px) {
    .banner_first {
        clip-path: polygon(0 0, 100% 24%, 100% 100%, 0 100%);
    }
}
@media (max-width: 1050px) {
    .banner_first {
       padding-right: 8vw;
        clip-path: polygon(0 0, 100% 24%, 100% 100%, 0 100%);
    }
   .what_info_red {
        margin-top: -200px;
    }
}
@media (max-width: 1016px) {
  .banner_first {
        clip-path: polygon(0 0, 100% 21%, 100% 100%, 0 100%);
    }
}
@media (max-width: 992px) {
      .glav_info_title {
        margin-top: 100px;
    }

  .header_block{
        margin-top: 30px;

  }
    .banner_first_title{
   font-size: 54px;
   margin-top: 30px;
    margin-bottom: 30px;
  }
   .glav_info_title {
    font-size: 54px;
  }
  .glav_info_title2 {
    font-size: 20px;
  }
  .what_info_img img{
      margin-top: 40px;
  }
  .zayavka .col-lg-3 img{
    margin-top: 40px;
  }
  .what_info_spisok{
    max-width: 100%;
  }
  .banner_bottom_cars{
    margin-left:0;
    margin-top:40px;
  }
  .banner_second{
    margin-top: 40px;
    max-width: 100%;
        border: 2px solid #F8D069;
        margin-left: 0;
  }
  .banner_second::before{
    content: none;
  }
    .banner_first {
              clip-path: polygon(0 0, 100% 50%, 100% 100%, 0 100%);
        padding-right: 54vw;
        
    }
 
  .banner_first_text {
    max-width: 500px;
  }
  .banner_info_road {
  
}
   .what_info_red {
        margin-top: 40px;
        padding-top: 20px;
        padding-left: 20px;
        padding-bottom: 20px;
         padding-right: 20px;
    }
}

@media (max-width: 950px) {
.banner_first {
              clip-path: polygon(0 0, 100% 47%, 100% 100%, 0 100%);
        padding-right: 54vw;
        
    }
  }
  @media (max-width: 900px) {
.banner_first {
              clip-path: polygon(0 0, 100% 41%, 100% 100%, 0 100%);
    
                padding-right: 56vw;
    }
  }
    @media (max-width: 850px) {
.banner_first {
              clip-path: polygon(0 0, 100% 40%, 100% 100%, 0 100%);
    
        
    }
  }
      @media (max-width: 800px) {
.banner_first {
              clip-path: polygon(0 0, 100% 38%, 100% 100%, 0 100%);

          padding-right: 54vw;
    }
  }
@media (max-width: 768px) {
  .what_do_block::before{
        width: 264px;
  }
  .what_do_block {
    position: relative;
    padding-top: 40px;
    padding-left: 40px;
    padding-bottom: 40px;
}
  .what_info{
    margin-bottom: 100px;
  }
      .glav_info_title {
        margin-top: 50px;
    }
  .glav{
    margin-top: 110px;
  }
  .banner_first_text{
    max-width: 100%;
  }
  .banner_first{
    clip-path: polygon(0 0, 100% 0%, 100% 100%, 0 100%);
        padding-right: 0;
        padding-top: 30px;
         padding-bottom: 30px;
  }
  .lang-btn{
    padding: 20px;
  }
  .menu-btn{
    padding: 20px;
  }
   .glav_info_title {
    font-size: 42px;
  }
  .banner_first_title{
    font-size: 42px;
  }
  .glav_info_title2 {
    font-size: 18px;
  }
  .zayavka .col-lg-3 img{
    margin-top: 40px;
  }
  .zayavka_block{
    flex-wrap: wrap;
    gap: 40px;
  }
  .glav{
     margin-bottom: 100px;
  }
  .zayavka{
     margin-bottom: 100px;
  }
  .what_do{
    margin-bottom: 100px;
  }
  .what_do_block_nomer {
        font-size: 32px;
  }
   .zayavka_title {
        font-size: 54px;
        margin-bottom: 50px;
   }
       .banner_info_road {
        margin-top: 0;
    }

}
@media (max-width: 540px) {
  .header_logo img{
    max-height: 40px;
  }
.lang-btn {
        padding: 15px;
        font-size: 14px;
    }
        .menu-btn {
        padding: 15px;
        font-size: 14px;
    }
}
@media (max-width: 480px) {
      .glav_info_title {
        margin-top: 0px;
    }
      .glav {
        margin-top: 130px;
    }
  .zayavka_title{
      font-size: 42px;
      margin-bottom: 30px;
  }
  .what_info_red_title{
        font-size: 36px;
    margin-bottom: 30px;
  }
  footer{
        padding-top: 30px;
    padding-bottom: 30px;
  }
  .footer_layer_first{
    margin-bottom: 15px;
  }
.footer_layer{
  flex-wrap: wrap;
}
}
@media (max-width: 420px) {
   .glav {
        margin-top: 150px;
    }
        .glav_info_title {
        margin-top: -30px;
        margin-bottom: 10px;
    }
}
 