.elementor-4460 .elementor-element.elementor-element-7e2c32d2{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-4460 .elementor-element.elementor-element-7217f8f7{--display:flex;}.elementor-4460 .elementor-element.elementor-element-2aef22e9{--display:flex;}.elementor-4460 .elementor-element.elementor-element-755d7546{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-4460 .elementor-element.elementor-element-6a77ab6b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-4460 .elementor-element.elementor-element-5ee397db{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-4460 .elementor-element.elementor-element-3724a468{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-4460 .elementor-element.elementor-element-ef2d13{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-4460 .elementor-element.elementor-element-4b36e2bc{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-4460 .elementor-element.elementor-element-19825f40{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-4460 .elementor-element.elementor-element-5601295f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-4460 .elementor-element.elementor-element-4436a6b5{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-4460 .elementor-element.elementor-element-7949c44{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}@media(min-width:768px){.elementor-4460 .elementor-element.elementor-element-7e2c32d2{--content-width:1280px;}.elementor-4460 .elementor-element.elementor-element-7217f8f7{--width:630%;}.elementor-4460 .elementor-element.elementor-element-755d7546{--content-width:1280px;}.elementor-4460 .elementor-element.elementor-element-6a77ab6b{--content-width:1280px;}.elementor-4460 .elementor-element.elementor-element-5ee397db{--content-width:1280px;}.elementor-4460 .elementor-element.elementor-element-3724a468{--content-width:1280px;}.elementor-4460 .elementor-element.elementor-element-ef2d13{--content-width:1280px;}.elementor-4460 .elementor-element.elementor-element-4b36e2bc{--content-width:1280px;}.elementor-4460 .elementor-element.elementor-element-19825f40{--content-width:1280px;}.elementor-4460 .elementor-element.elementor-element-5601295f{--content-width:1280px;}.elementor-4460 .elementor-element.elementor-element-4436a6b5{--content-width:1280px;}.elementor-4460 .elementor-element.elementor-element-7949c44{--content-width:1280px;}}/* Start custom CSS for html, class: .elementor-element-549bec55 */#case_blur_container {
    position: absolute;
}
.case_blur {
    width: 579px;
    height: 579px;
    position: absolute;
    top: calc(92px + 76px + 405px);
    
    transform: translate(50%, -50%);
    background: #E0E7FF;
    filter: blur(200px);
}
.case_map {
    position: absolute;
    z-index: 9;
    left: 576px;
    width: 1200px;
    height: 610px;
}
 /* Обертка для интерактивного элемента */
  .interactive-cluster {
    position: absolute;
    top: 0;
    left: 0;
    cursor: pointer;
  }

  /* Карточка (скрыта по умолчанию) */
  .tooltip-card {
    position: absolute;
    top: -80px; /* Поднимаем над точкой */
    left: 120px;
    transform: translateX(-50%) translateY(20px);
    opacity: 0;
    width: 190px;
    height: 78px;
    padding: 20px;
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.12);
    pointer-events: none; /* Чтобы мышь не мешала, пока скрыта */
    transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1);
    z-index: 10;
    
    /* Стили текста как на картинке */
    font-family: Arial, sans-serif;
    text-align: center;
  }

  .tooltip-card-title {
    font-size: 14px;
    font-weight: 700;
    color: #111827;
    font-family: Geist, Sans-Serif;
    display: flex;
    width: 100%;
    line-height: 100%;
  }

  .tooltip-card-name {
    font-size: 11px;
    font-weight: 700;
    color: rgba(17, 24, 39, 0.55);
    font-family: Geist, Sans-Serif;
    display: flex;
    width: 100%;
    padding-top: 4px;
    line-height: 100%;
  }

  .tooltip-card-value {
    font-size: 12px;
    font-weight: 700;
    color: #FF5C35;
    font-family: Geist, Sans-Serif;
    display: flex;
    width: 100%;
    padding-top: 4px;
    line-height: 100%; /* Оранжевый цвет как на картинке */
  }

  /* --- ЛОГИКА НАВЕДЕНИЯ --- */
  
  /* При наведении на группу: показываем карточку */
  .interactive-cluster:hover .tooltip-card {
    transform: translateX(-50%) translateY(0);
    opacity: 1;
    pointer-events: auto;
  }

  /* Центральная яркая точка (изначально скрыта/прозрачна) */
  .active-center-dot {
    opacity: 0;
    transform: scale(0.5);
    transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  }

  /* При наведении: точка появляется и увеличивается */
  .interactive-cluster:hover .active-center-dot {
    opacity: 1;
    transform: scale(1);
    z-index: 9;
    position: absolute;
    
  }

  /* Эффект скопления точек (твои серые точки внутри группы) */
  .cluster-dot {
    transition: opacity 5s ease;
    opacity: 0.15; /* Почти прозрачные в покое */
    color: #111827;
    background: #111827;
    fill: #111827;
  }

  .interactive-cluster:hover .cluster-dot {
    opacity: 0.8; /* Становятся плотными при наведении */
    background: #111827;
  }
.back_dot_hover {
  position: absolute;

  width: 34px;
  height: 34px;

  top: 0;
  left: 0;

  transform:
    translate(-50%, -50%)
    scale(0.65);

  box-sizing: border-box;

  border-radius: 50%;

  border: 8px solid rgba(252, 90, 52, 0);

  pointer-events: none;

  z-index: 8;

  transition:
    transform .3s ease,
    border-color .3s ease;
}


.interactive-cluster:hover .back_dot_hover {
  transform:
    translate(-7px, -7px)
    scale(1);

  border-color:
    rgba(252, 90, 52, 0.30);
}
.russia-map-svg .map-dot {
  transition:
    opacity .25s ease,
    fill .25s ease,
    filter .25s ease,
    transform .25s ease;

  transform-box: fill-box;
  transform-origin: center;
}

.russia-map-svg .map-dot.is-near-city {
  opacity: 1 !important;
  fill: #111827 !important;

  transform: scale(1.25);

  filter:
    drop-shadow(
      0 0 1.5px rgba(17, 24, 39, .22)
    );
}




.interactive-cluster {
  z-index: 2;
}
.russia-map-svg {
  position: absolute;
  top: 0;
  left: 0;

  width: 1200px;
  height: 610px;

  pointer-events: none;

  z-index: 1;
}


/* реальные точки карты */
.russia-map-svg .map-dot {
  transition:
    opacity 0.22s ease,
    fill 0.22s ease,
    filter 0.22s ease;
}


/* точки рядом с городом */
.russia-map-svg .map-dot.is-near-city {
  opacity: 0.9 !important;
  fill: #111827 !important;

  filter:
    drop-shadow(
      0 0 1.5px rgba(17, 24, 39, 0.18)
    );
}


.interactive-cluster {
  z-index: 5;
}

#russia-dots circle {
  opacity: var(--dot-opacity, 0.38);
  fill: #111827;

  transform: scale(var(--dot-scale, 1));

  transform-box: fill-box;
  transform-origin: center;

  transition:
    opacity 0.18s ease,
    transform 0.18s ease;
}

#russia-dots circle.is-near-city {
  opacity: 1;
  fill: #030712;
  transform: scale(1.05);
}/* End custom CSS */


/* Start custom CSS for heading, class: .elementor-element-7c831626 */.case_h1 {
    font-family: Neue Machina,Sans-Serif;
    max-width: 619.56px;
    display: flex;
    position: relative;
    margin: 0;
}
.case_h1 > h1 {
    font-family: Neue Machina Bold,Sans-Serif;
    font-size: 48px;
    line-height: 110.00000000000001%;
    letter-spacing: 0;
    max-width: 619.56px;
    margin: 0;
    padding: 0;
}
.case_h1 > h1 > span {
    color: #25A1B6;
}/* End custom CSS */

/* Start custom CSS for text-editor, class: .elementor-element-9b8d55c */.case_text_after_h1 {
    color: #64748B;
    font-family: Geist,Sans-Serif;
    font-size: 28px;
    line-height: 110.00000000000001%;
    letter-spacing: 0;
    padding-top: 34px;
    max-width: 567px;
    width: 100%;
    display: block;
}/* End custom CSS */

/* Start custom CSS for text-editor, class: .elementor-element-328e90df */.case_text_after_text_h1 {
    font-family: Raleway Medium, Sans-Serif;
    font-size: 15px;
    line-height: 150%;
    letter-spacing: 0;
    color: #334155;
    padding-top: 40px;
    margin: 0;
}/* End custom CSS */

/* Start custom CSS for container, class: .elementor-element-7217f8f7 */.case_content {
    display: inline-block;
    max-width: 630px;
    position: relative;
}/* End custom CSS */

/* Start custom CSS for html, class: .elementor-element-1b0b7369 */.lead_buttons_block.market {

}
.lead_buttons_block.market > .call_back_main_button,
.lead_buttons_block.market > a
{
    margin-top: 0px;
}/* End custom CSS */

/* Start custom CSS for html, class: .elementor-element-1353e967 */.ai-feature {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    width: 100%;
    max-width: 292px;
    
    padding-top: 10.5px ;
    padding-bottom: 10.5px;
    box-sizing: border-box;
    border: 2px solid transparent;
    border-radius: 8px;
    background:
        linear-gradient(#f8fafc, #f8fafc) padding-box,
        linear-gradient(
            110deg,
            #4d8dff 0%,
            #dce8ff 35%,
            #f8fafc 50%,
            #dce8ff 65%,
            #4d8dff 100%
        ) border-box;
    background-size: 100% 100%, 250% 100%;
    animation:
        borderMove 4s ease-in-out infinite,
        floatCard 4s ease-in-out infinite;

    overflow: hidden;
}


/* Текст */
.ai-feature__text {
    font-family: Fira Code, Sans-Serif;
    font-size: 14px;
    letter-spacing: 5%;
    color: #397cff;
    
    line-height: 150%;
}


/* Блок со звёздами */
.ai-feature__stars {
    position: relative;
    width: 26px;
    height: 26px;
    flex-shrink: 0;
    left: -5px;
}


/* Звёздочки */
.star {
    position: absolute;
    display: block;
    color: #4d82ff;
    line-height: 1;
    text-shadow:
        0 0 6px rgba(77, 130, 255, .25);

    animation: sparkle 2.4s ease-in-out infinite;

}

.star--1 {
    left: 4px;
    top: 0px;
    font-size: 26px;
    animation-delay: 0s;
}

.star--2 {
    left: 20px;
    top: 12px;
    font-size: 16px;
    animation-delay: .4s;
    
}

.star--3 {
    left: 20px;
    top: 15px;
    font-size: 23px;
    animation-delay: .8s;
    display: none;
}

.star--4 {
    left: 20px;
    top: -6px;
    font-size: 16px;
    animation-delay: 1.2s;
}


/* Световой проход по границе */
@keyframes borderMove {
    0% {
        background-position:
            0 0,
            0% 50%;
    }

    50% {
        background-position:
            0 0,
            100% 50%;
    }

    100% {
        background-position:
            0 0,
            0% 50%;
    }
}


/* Лёгкое движение карточки */
@keyframes floatCard {
    0%,
    100% {
        transform: translateY(0);
    }
/*
    //50% {
      //  transform: translateY(-5px);
    }*/
}


/* Мерцание звёзд */
@keyframes sparkle {
    0%,
    100% {
        opacity: .55;
        transform: scale(.85) rotate(0deg);
    }

    35% {
        opacity: 1;
        transform: scale(1.15) rotate(0deg);
    }

    65% {
        opacity: .75;
        transform: scale(.95) rotate(0deg);
    }
}/* End custom CSS */

/* Start custom CSS for container, class: .elementor-element-2aef22e9 */.case_ai_text {
    position: absolute;
    max-width: 300px;
    height: 42px;
    width: 100%;
    top: 104px;
    right: 15%;
    justify-content: center;
    display: flex;
    z-index: 9999;
}
.case_ai_text > span {
    text-align: center;
    display: flex;
    width: 100%;
    max-width: 10px;
    justify-content: center;
}/* End custom CSS */

/* Start custom CSS for container, class: .elementor-element-7e2c32d2 */.lead_first_section {
    background: #F4F9FA;
    padding-bottom: 48px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Crect x='0' y='0' width='2' height='2' rx='0.8' fill='%23DCE4F0'/%3E%3C/svg%3E");
    background-size: 6px 6px;
    position: relative;
}/* End custom CSS */

/* Start custom CSS for html, class: .elementor-element-59047ec7 */.we_need_block {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    padding-top: 48px;
    position: relative;
    z-index: 9;
    justify-content: space-between;
}
.we_need_block_item {
    display: block;
    width: 100%;
    max-width: calc(50% - 12px);
    padding: 24px 24px 28px 24px;
    background: #FFFFFF;
    border: 1px solid #C9E3E7;
    border-radius: 4px;
    box-shadow: 0px 8px 20px 0px #527A7A40;
    position: relative;
    z-index: 9;
}
.we_need_block_item > span {
    font-family: Geist;
    font-weight: 500;
    font-style: Medium;
    font-size: 24px;
    leading-trim: NONE;
    line-height: 125%;
    letter-spacing: 0%;
    width: 100%;
    display: flex;
    color: #0F172A;
}
.we_need_block_item > ul {
    display: block;
    flex-wrap: wrap;
    width: 100%;
    margin: 0 15px;
    padding: 0;
    color: #334155;
    padding-top: 18px;
    
}
.we_need_block_item > ul > li {
    color: #334155;
    font-family: Raleway;
    font-weight: 500;
    font-style: Medium;
    font-size: 17px;
    leading-trim: NONE;
    line-height: 150%;
    letter-spacing: 0%;
    width: 100%;

}/* End custom CSS */

/* Start custom CSS for container, class: .elementor-element-755d7546 */.we_need_section {
    position: relative;
    background: #FFF;
    z-index: 9;
    padding-bottom: 86px;
}
.we_need_section #wave-animation {
    transform: translate(0, 0);
}/* End custom CSS */

/* Start custom CSS for html, class: .elementor-element-2f5a574b */.what_blocks {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    padding-top: 56px;
    padding-bottom: 86px;
    gap: 24px;
}
.what_blocks_item {
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: space-between;
}
.what_blocks_item > div {
    display: block;
    width: calc((100%/3) - 12px);
    box-shadow: 0px 8px 20px 0px #527A7A40;
    background: #FFFFFF;
    border: 1px solid #C9E3E7;
    border-radius: 4px;
    padding-left: 24px;
    padding-right: 24px;
    padding-top: 24px;
    padding-bottom: 28px;
}
.what_blocks_item > div > span {
    width: 100%;
    font-family: Geist;
    font-weight: 500;
    font-style: Medium;
    font-size: 24px;
    leading-trim: NONE;
    line-height: 125%;
    letter-spacing: 0%;
    color: #0F172A;
    position: relative;
    width: 100%;
    display: flex;
    padding-top: 18px;
}
.what_blocks_item > div > span::before {
    content: "";
    display: block;
    background: #25A1B6;
    width: 48px;
    height: 2px;
    position: absolute;
    top: 0;
}
.what_blocks_item > div > p {
    font-family: Raleway;
    font-weight: 500;
    font-style: Medium;
    font-size: 17px;
    leading-trim: NONE;
    line-height: 150%;
    letter-spacing: 0%;
    color: #334155;
    margin: 0;
    padding: 0;
    padding-top: 18px;

}/* End custom CSS */

/* Start custom CSS for container, class: .elementor-element-6a77ab6b */.what_whe_section {
    background: #F4F9FA;
    padding-bottom: 48px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Crect x='0' y='0' width='2' height='2' rx='0.8' fill='%23DCE4F0'/%3E%3C/svg%3E");
    background-size: 6px 6px;
    position: relative;
    z-index: 9;
}/* End custom CSS */

/* Start custom CSS for html, class: .elementor-element-680855 */.keysi_v_num_block {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    justify-content: space-between;
    padding-top: 48px;
    position: relative;
    z-index: 9;
}
.keysi_v_num_item {
    display: block;
    max-width: calc(50% - 12px);
    width: 100%;
    gap: 16px;
    flex-wrap: wrap;
    border: 1px solid #CBDEE1;
    border-radius: 4px;
    padding: 24px 24px 28px 24px;
    height: 100%;
}
.keysi_v_num_item > span:first-child {
    font-family: Fira Code;
    font-weight: 400;
    font-style: Regular;
    font-size: 14px;
    leading-trim: NONE;
    line-height: 100%;
    letter-spacing: 0%;
    width: 100%;
    color: #25A1B6;
    display: flex;
    padding-top: 0;
}
.keysi_v_num_item > span {
    font-family: Geist;
    font-weight: 500;
    font-style: Medium;
    font-size: 24px;
    leading-trim: NONE;
    line-height: 125%;
    letter-spacing: 0%;
    color: #0F172A;
    padding-top: 16px;
    display: flex;
}
.keysi_v_num_item > p {
    font-family: Raleway;
    font-weight: 500;
    font-style: Medium;
    font-size: 17px;
    leading-trim: NONE;
    line-height: 150%;
    letter-spacing: 0%;
    padding-top: 16px;
    display: flex;
}
.keysi_n_buttons {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    gap: 20px;
    padding-top: 48px;
    position: relative;
    z-index: 9;
}
.keysi_n_buttons > a {
    display: flex;
    flex-wrap: wrap;
    padding: 20px 40px;
    color: #25A1B6;
    border-radius: 8px;
    align-items: center;
}
.keysi_n_buttons > a:first-child {
    background: #25A1B6;
    border-radius: 8px;
    font-family: Raleway;
    font-weight: 600;
    font-style: SemiBold;
    font-size: 20px;
    leading-trim: NONE;
    line-height: 120%;
    letter-spacing: 0%;
    font-variant-numeric-figure: lining-nums;
    font-variant-numeric-spacing: proportional-nums;
    color: #FFF;
}
.keysi_n_buttons > a:last-child {
    border: 2px solid #25A1B6;
    font-family: Raleway;
    font-weight: 600;
    font-style: SemiBold;
    font-size: 17px;
    leading-trim: NONE;
    line-height: 120%;
    letter-spacing: 0%;
    font-variant-numeric-figure: lining-nums;
    font-variant-numeric-spacing: proportional-nums;

}/* End custom CSS */

/* Start custom CSS for container, class: .elementor-element-5ee397db */.keysi_num_section {
    padding-bottom: 86px;
    position: relative;
    z-index: 9;
}/* End custom CSS */

/* Start custom CSS for html, class: .elementor-element-18db972 */.lead_tarif_block_item_content_text {
    display: flex;
    flex-wrap: wrap;
    padding-top: 48px;
}
.lead_tarif_block_item_content_text > p {
    font-family: Raleway;
    font-weight: 500;
    font-style: Medium;
    font-size: 17px;
    leading-trim: NONE;
    line-height: 150%;
    letter-spacing: 0%;
    color: #334155;
}
.lead_tarif_block_item_content_text > span {
    font-family: Raleway;
    font-weight: 600;
    font-style: SemiBold;
    font-size: 17px;
    leading-trim: NONE;
    line-height: 150%;
    letter-spacing: 0%;
    color: #334155;
}
.lead_tarif_block_item_content_text > ul {
    font-family: Raleway;
    font-weight: 500;
    font-style: Medium;
    font-size: 17px;
    leading-trim: NONE;
    line-height: 150%;
    letter-spacing: 0%;
    color: #334155;
}
.lead_tarif_block_item_content_price.color > span:first-child {
    font-family: Fira Code;
    font-weight: 400;
    font-style: Regular;
    font-size: 20px;
    line-height: 120%;
    letter-spacing: 0%;
    color: #25A1B6;
}
.after_tarif_block {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    padding-top: 64px;
    align-items: center;
    gap: 16px;
}
.after_tarif_block > div {
    display: flex;
    
    flex-wrap: wrap;
}
.after_tarif_block > div > .after_tarif_block_title {
    font-family: Geist;
    font-weight: 500;
    font-style: Medium;
    font-size: 24px;
    leading-trim: NONE;
    line-height: 100%;
    letter-spacing: 0%;
    color: #334155;
}
.after_tarif_block > div > p {
    font-family: Raleway;
    font-weight: 500;
    font-style: Medium;
    font-size: 17px;
    leading-trim: NONE;
    line-height: 150%;
    letter-spacing: 0%;
    width: 100%;
    padding: 0;
    margin: 0;
}
.after_tarif_block > a {
    display: flex;
    border: 2px solid #3E5E60;
    border-radius: 8px;
    
    flex-wrap: wrap;
    position: relative;
    padding: 20px 40px;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
}
.after_tarif_block > a > p {
    color: #334155;
    font-family: Raleway;
    font-weight: 600;
    font-style: SemiBold;
    font-size: 20px;
    leading-trim: NONE;
    line-height: 120%;
    letter-spacing: 0%;
    font-variant-numeric-figure: lining-nums;
    font-variant-numeric-spacing: proportional-nums;
    padding: 0;
    margin: 0;

}
.after_tarif_block > a > img {
    object-fit: contain;
}
.look_keys_href {
    background: #25A1B6;
    height: 64px;
    display: flex;
    align-items: center;
    padding: 20px 40px;
    color: #FFF;
    font-family: Raleway;
    font-weight: 600;
    font-style: SemiBold;
    font-size: 20px;
    leading-trim: NONE;
    line-height: 120%;
    letter-spacing: 0%;
    font-variant-numeric-figure: lining-nums;
    font-variant-numeric-spacing: proportional-nums;
    border-radius: 8px;

}/* End custom CSS */

/* Start custom CSS for container, class: .elementor-element-3724a468 */.lead_tarif {
    position: relative;
    z-index: 9;
}
.lead_tarif #wave-animation2 {
    transform: translate(0, 10%);
}/* End custom CSS */

/* Start custom CSS for html, class: .elementor-element-7388649f */.we_warranty_block {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    padding-top: 48px;
    gap: 24px;
}
.we_warranty_block_item {
    display: flex;
    flex-wrap: wrap;
    padding: 24px 24px 28px 24px;
    width: 100%;
    max-width: calc(50% - 12px);
    background: #FFFFFF;
    box-shadow: 0px 8px 20px 0px #527A7A40;
    border: 1px solid #C9E3E7;
    gap: 18px;
}
.we_warranty_block_item > span {
    font-family: Geist;
    font-weight: 500;
    font-style: Medium;
    font-size: 24px;
    leading-trim: NONE;
    line-height: 125%;
    letter-spacing: 0%;
    color: #0F172A;
    width: 100%;
    display: flex;
}
.we_warranty_block_item > p {
    font-family: Raleway;
    font-weight: 500;
    font-style: Medium;
    font-size: 17px;
    leading-trim: NONE;
    line-height: 150%;
    letter-spacing: 0%;
    color: #334155;
    padding: 0;
    margin: 0;
}/* End custom CSS */

/* Start custom CSS for container, class: .elementor-element-ef2d13 */.warranty_section {
    background: #F4F9FA;
    padding-bottom: 48px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Crect x='0' y='0' width='2' height='2' rx='0.8' fill='%23DCE4F0'/%3E%3C/svg%3E");
    background-size: 6px 6px;
    position: relative;
    padding-bottom: 86px;
}/* End custom CSS */


/* Start custom CSS for container, class: .elementor-element-4b36e2bc */.rewiew_section {
    padding-bottom: 86px;
}/* End custom CSS */

/* Start custom CSS for html, class: .elementor-element-30619d63 */.steps_block {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    padding-top: 56px;
    justify-content: center;
    margin: 0 auto;
    gap: 24px;
}
.steps_block_line {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-between;
    position: relative;
}
.steps_block_item {
    width: calc((100% / 3) - 24px);
    display: flex;
    flex-wrap: wrap;
    padding-top: 24px;
    padding-left: 24px;
    padding-right: 24px;
    padding-bottom: 48px;
    background: #FFF;
    box-shadow: 0px 16px 20px 0px #1599A540;
    border: 1px solid #E1EDEF;
    position: relative;
}
.steps_block_item > span {
    font-family: Fira Code;
font-weight: 400;
font-style: Regular;
font-size: 14px;
leading-trim: NONE;
line-height: 100%;
letter-spacing: 0%;

    color: #25A1B6;
}
.steps_block_item > p {
    padding: 0;
    margin: 0;
    padding-top: 48px;
    color: #00000;
}
.steps_block_line > img {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}
.after_steps_href {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: left;
    padding-top: 56px;
    gap: 25px;
    
}
.after_steps_href > a:first-child {
    background: #25A1B6;
    color: #FFF;
    border: none;
}
.after_steps_href > a {
    border: 2px solid #25A1B6;
    padding: 20px 40px;
    border-radius: 8px;
    font-family: Raleway;
    font-weight: 600;
    font-style: SemiBold;
    font-size: 17px;
    leading-trim: NONE;
    line-height: 120%;
    letter-spacing: 0%;
    color: #25A1B6;
    font-variant-numeric-figure: lining-nums;
    font-variant-numeric-spacing: proportional-nums;

}/* End custom CSS */

/* Start custom CSS for container, class: .elementor-element-19825f40 */.steps_section {
    background: #F4F9FA;
    padding-bottom: 48px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3E%3Crect x='0' y='0' width='2' height='2' rx='0.8' fill='%23DCE4F0'/%3E%3C/svg%3E");
    background-size: 6px 6px;
    position: relative;
}/* End custom CSS */



/* Start custom CSS for html, class: .elementor-element-112bfe9c */.moving_block {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    padding-top: 64px;
    padding-bottom: 64px;
    background: #F4F9FA;
    gap:24px;
    padding-left: 80px;
    padding-right: 80px;
}
.moving_block > span {
    font-family: Geist;
    font-weight: 500;
    font-style: Medium;
    font-size: 24px;
    leading-trim: NONE;
    line-height: 100%;
    letter-spacing: 0%;
    width: 100%;
    color: #0F172A;
}
.moving_block > p {
    margin: 0;
    padding: 0;
    color: #334155;
    font-family: Raleway;
    font-weight: 500;
    font-style: Medium;
    font-size: 16px;
    leading-trim: NONE;
    line-height: 150%;
    letter-spacing: 0%;
}/* End custom CSS */

/* Start custom CSS for text-editor, class: .elementor-element-3ab27ef5 */.case_form_block {
    display: flex;
    flex-wrap: wrap;
    margin-top: 40px;
    background-color: #F2F7F7;
    padding: 56px 80px 86px 80px;
}
.case_form_block_title {
    font-family: Raleway SemiBold, Sans-Serif;
    font-size: 22px;
    color: #64748B;
    line-height: 110.00000000000001%;
    letter-spacing: 0;
    display: flex;
    justify-content: center;
    width: 100%;
    text-align: center;
}
.case_form_block > div > form {
    padding-top: 86px;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-between;
}
.case_form_block > div > form > .column {
    display: flex;
    width: 100%;
    width: calc((100% /3) - 16px);
    padding: 0;
}
.case_form_block > div > form > .column  > p {
    width: 100%;
}
.case_form_block > div > form > .column  > p > span > input, .case_form_block > div > form > .column  > p > span > select {
    display: flex;
    flex-wrap: wrap;
    border-radius: 4px;
    border:2px solid #CBDEE1;
    color: #94A3B8;
    font-family: Raleway Medium, Sans-Serif;
    font-size: 12px;
    height: 67px;
    padding: 24px;
}
.case_form_block > div > form > .column  > p > span > input::placeholder {
    color: #94A3B8;
}
.case_form_block > div > form > .button_fotm_block {
    display: flex;
    width: 342px;
    height: 69px;
    padding: 0;
    margin: 0;
}
.case_form_block > div > form > .button_fotm_block > p > input {
    height: 69px;
    background: #CDE6EA;
    border: none;
    border-radius: 8px;
    color: #64748B;
}
.case_form_block .button_form_block {
    width: calc(100% / 2) !important
}
.case_form_block .button_form_block > p > input {
    background: #25A1B6;
    border: none;
    
}
.case_form_block .button_form_block_href > p > a {
    border: 2px solid #25A1B6;
    display: flex;
    justify-content: center;
    max-width: 460px;
    height: 100%;
    align-items: center;
    border-radius: 8px;
    color: #25A1B6;
    font-family: Raleway;
    font-weight: 600;
    font-style: SemiBold;
    font-size: 17px;
    leading-trim: NONE;
    line-height: 120%;
    letter-spacing: 0%;
    font-variant-numeric-figure: lining-nums;
    font-variant-numeric-spacing: proportional-nums;

}
.case_form_block .wpcf7-list-item > label {
  display: flex;
  align-items: start;
  gap: 35px;
}
.case_form_block .wpcf7-list-item > label > input {
  opacity: 0;
  position: relative;
  z-index: 2;
}
.case_form_block .wpcf7-list-item > label > span, .case_form_block .wpcf7-list-item > label > span > a {
  color: #94A3B8;
  font-family: Raleway Medium, Sans-Serif;
  font-size: 14px;
  max-width: 513px;
  line-height: 150%;
  letter-spacing: 0;
}
.case_form_block .wpcf7-list-item > label > input:checked {
  opacity: 0;
}
.case_form_block .wpcf7-list-item > label::after {
  position: absolute;
  content: '';
  width: 28px;
  height: 28px;
  border: 2px solid #BDBDBD;
  background: #FFFF;
  cursor: pointer;
  z-index: 1;
}

.case_form_block .wpcf7-list-item > label:has(> input:checked)::after {
  background: #B3D0D0;
  border-color: #CBDEE1;
}

.case_form_block .wpcf7-list-item > label:has(> input:checked)::before {
  content: '';
  position: absolute;
  left: 25px;
  top: 10px;
  width: 10px;
  height: 6px;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
  z-index: 3;
  pointer-events: none;
}
.case_form_block > div > form .column_all {
    width: 100%;
}
.case_form_block > div > form.column_check {
    width: calc (100% /3);
}
.slogan_after_form {
    display: flex;
    width: 100%;
    padding-top: 60px;
    font-family: Raleway;
font-weight: 500;
font-style: Medium;
font-size: 24px;
leading-trim: NONE;
line-height: 150%;
letter-spacing: 0%;
font-variant-numeric-figure: lining-nums;
font-variant-numeric-spacing: proportional-nums;
color: #64748B;
}
.slogan_after_form > p {
    margin: 0;
    padding: 0;
}
.before_form_audit_block {
    font-family: Raleway;
    font-weight: 500;
    font-style: Medium;
    font-size: 20px;
    leading-trim: NONE;
    line-height: 150%;
    letter-spacing: 0%;
    color: #334155;
}/* End custom CSS */

/* Start custom CSS for container, class: .elementor-element-4436a6b5 */.moving_section {
    padding-top: 86px;
    padding-bottom: 86px;
    background: #F1F8F9;
}/* End custom CSS */



