/* Ð‘Ð°Ð·Ð¾Ð²Ñ‹Ðµ ÑÑ‚Ð¸Ð»Ð¸ Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ¾Ð² Ð¸ Ñ‚ÐµÐºÑÑ‚Ð° */
.flexible-content p {
        font-size: clamp(16px, 2vw, 18px);
}
.flexible-content ol li, .flexible-content ul li {
    font-size: 2.1vh;
    margin-bottom:10px
}


.flexible-content h2, .flexible-content h3 {
    font-size: clamp(23px, 2vw, 26px);
    /* text-transform: uppercase; */
}

/* Ð¡Ñ‚Ð¸Ð»Ð¸ Ð´Ð»Ñ Ð±Ð»Ð¾ÐºÐ° Ñ Ð´Ð²ÑƒÐ¼Ñ ÐºÐ¾Ð»Ð¾Ð½ÐºÐ°Ð¼Ð¸ */
 .two-column-block {
    display: flex;
    padding: 2%;
   
    background-position: center;
    background-repeat: no-repeat;
    margin-left: -2.2%;
    background-attachment: fixed;
    margin-right: -2.2%;
    gap: 2.4vh;
    border-radius: 50px;
    box-sizing: border-box;
}

.two-column-block .column {
    width: 50%;
   
}

.two-column-block .column-1 img, 
.two-column-block .column-1 video {
    width: 100%;
    height: 60vh;
    border-radius: 25px;
    object-fit: cover;
}

.two-column-block .column-2 {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

 
.button-container {
    display: flex;
}

.button-container .btn {
    font-size: clamp(16px, 2vw, 22px);
    padding: clamp(8px, 1vw, 12px) clamp(16px, 2vw, 24px);
    text-decoration: none;
   
    border-radius: 60px;
    display: inline-block;
    margin-top: 30px;
    font-weight:600;
    text-align: center;
    transition: background-color 0.3s, color 0.3s, border-color 0.3s;
    width: auto;
    max-width: none;
    box-sizing: border-box;
    white-space: nowrap;
}



.text-image-block h3 {
     margin: 3em 0 0;
}
.text-image-block {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 20px;
    margin: 1em 0;
    font-size: 2vh;
    background: #ffffff;
    color: #344f5a;
    padding: 30px;
    border-radius: 50px;
}

.text-image-block .text-column {
    flex: 1;
    padding-right: 50px;
}
.image-left .text-column {
    flex: 1;
    padding-left: 60px;
}

.text-image-block .image-column {
    flex: 1;
    text-align: right;
}

.text-image-block .image-column img {
    max-width: 100%;
    height: auto;
    border-radius: 10px;
}

/* ÐŸÐ¾Ñ€ÑÐ´Ð¾Ðº Ð´Ð»Ñ Ð²Ð°Ñ€Ð¸Ð°Ð½Ñ‚Ð° "Ð˜Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ðµ ÑÐ»ÐµÐ²Ð°, Ñ‚ÐµÐºÑÑ‚ ÑÐ¿Ñ€Ð°Ð²Ð°" */
.text-image-block.image-left {
    flex-direction: row-reverse;
}

.image-left .image-column {
    flex: 1;
    text-align: left;
}

/* Ð•ÑÐ»Ð¸ Ð¸Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð½ÐµÑ‚, Ñ‚ÐµÐºÑÑ‚ Ð·Ð°Ð½Ð¸Ð¼Ð°ÐµÑ‚ Ð²ÑÑŽ ÑˆÐ¸Ñ€Ð¸Ð½Ñƒ */
.text-image-block.no-image .text-column {
    flex: 1;
    padding-right: 0;
    width: 100%;
}

.text-image-block.no-image .image-column {
    display: none;
}

/* ÐÐ´Ð°Ð¿Ñ‚Ð¸Ð²Ð½Ñ‹Ðµ ÑÑ‚Ð¸Ð»Ð¸ Ð´Ð»Ñ Ð¼Ð¾Ð±Ð¸Ð»ÑŒÐ½Ñ‹Ñ… ÑƒÑÑ‚Ñ€Ð¾Ð¹ÑÑ‚Ð² */
@media (max-width: 768px) {
    .flexible-content .two-column-block {
        flex-direction: column;
    }
    
    .two-column-block .column {
        width: 100%;
        padding: 0;
    }
    
    .flexible-content .two-column-block {
        /* padding: 10% 2%; */
        margin-left: -4.3%;
        margin-right: -4.3%;
    }
    
   
    .text-image-block {
        flex-direction: column;
        gap: 10px;
    }

    .text-image-block .text-column,
    .text-image-block .image-column {
        width: 100%;
        padding: 0;
    }
}

/* Ð¡Ñ‚Ð¸Ð»Ð¸ Ð´Ð»Ñ Ð±Ð»Ð¾ÐºÐ° Ñ Ð¿Ñ€ÐµÐ¸Ð¼ÑƒÑ‰ÐµÑÑ‚Ð²Ð°Ð¼Ð¸ */
.advantages-block {
    padding: 7% 2%;
    border-radius: 40px;
    background-size: contain;
    background-position: center right;
    background-repeat: no-repeat;
    margin-left: -2.2%;
    margin-right: -2.2%;
    background-attachment: fixed;
    position: relative;
    margin-top: 10%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 50px;
}

.advantages-block h2 {
    font-size: 6vh;
    margin-bottom: 20px;
    max-width: 67vw;
    z-index: 10;
    /* color: #264963; */
}

.advantages-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr); /* Ð¢Ð¾Ñ‡Ð½Ð¾ 3 ÐºÐ¾Ð»Ð¾Ð½ÐºÐ¸ */
    gap: 30px;
    z-index: 10;
    width: 100%;
    align-content: center;
    justify-content: center;
}
.advantage-item  img {
 max-width: 60px;
 height: auto;
 object-fit: contain; /* Ð¡Ð¾Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ðµ Ð¿Ñ€Ð¾Ð¿Ð¾Ñ€Ñ†Ð¸Ð¹ Ð¸Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ */
 display: block; /* Ð£ÑÑ‚Ñ€Ð°Ð½ÐµÐ½Ð¸Ðµ Ð»Ð¸ÑˆÐ½Ð¸Ñ… Ð¾Ñ‚ÑÑ‚ÑƒÐ¿Ð¾Ð² */
}
.advantages-text {
    text-align:center;
    /* max-width: 400px; */
    /* padding: 0 5%; */
}
.advantage-item {
    flex: 1 1 200px;
    padding: 7%;
    display: flex;
    gap: 20px;
    border-radius: 10px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    flex-direction: column;
    align-content: flex-start;
    align-items: center;
}

.advantage-item h3 {
    font-size: 2.5vh;
    margin-bottom: 0;
    margin-top: 0;
    line-height: 1;
}

.advantage-item p {
    font-size: 1.8vh;
    margin: 10px 0 0;
}

.corner-image {
    position: absolute;
    top: -7.08rem;
    left: 0;
    width: 17vw;
    height: auto;
    z-index: 1;
}

@media (max-width: 768px) {
    .corner-image {
        top: -2.7rem;
        width: 30vw;
    }
    .advantages-text {
    text-align:left;
}
    
    .advantage-item p {
        font-size: 1.5vh;
    }
    .advantage-item {
    flex: 1 1 200px;
    padding: 20px;
    display: flex;
    gap: 20px;
    border-radius: 10px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    flex-direction: row;
    align-content: flex-start;
    align-items: flex-start;
}
    .advantage-item img {
    max-width: 40px;

}
    
    .advantages-grid {
        grid-template-columns: repeat(1, 1fr);
        gap: 15px;
    }
    
    .advantages-block {
        padding: 20% 5%;
        margin-left: -4.3%;
        margin-right: -4.3%;
        gap: 10px;
    }

    .advantages-block h2 {
        font-size: 3.4vh;
        max-width: 80%;
        z-index: 2000;
    }

    .text-image-block {
        flex-direction: column;
        gap: 10px;
    }
    .text-image-block.image-left {
    flex-direction: column;
}

    .text-image-block .text-column,
    .text-image-block .image-column {
        width: 100%;
        padding: 0;
    }
}

/* Ð¡Ñ‚Ð¸Ð»Ð¸ Ð´Ð»Ñ Ð±Ð»Ð¾ÐºÐ° Ñ Ñ‚ÐµÐºÑÑ‚Ð¾Ð¼, Ð·Ð°Ð³Ð¾Ð»Ð¾Ð²ÐºÐ¾Ð¼ Ð¸ Ð²Ð¸Ð´ÐµÐ¾ */
.text-video-block {
    display: flex;
    align-items: center;
    gap: 20px;
    margin: 8vh 0;
    flex-direction: row; /* Ð˜Ð·Ð½Ð°Ñ‡Ð°Ð»ÑŒÐ½Ð¾Ðµ Ð½Ð°Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ðµ Ð´Ð»Ñ Ð²Ð¸Ð´ÐµÐ¾ */
}

.text-video-block.video-left {
    flex-direction: row; /* Ð’Ð¸Ð´ÐµÐ¾ ÑÐ»ÐµÐ²Ð°, Ñ‚ÐµÐºÑÑ‚ ÑÐ¿Ñ€Ð°Ð²Ð° */
}

.text-video-block.video-right {
    flex-direction: row-reverse; /* Ð’Ð¸Ð´ÐµÐ¾ ÑÐ¿Ñ€Ð°Ð²Ð°, Ñ‚ÐµÐºÑÑ‚ ÑÐ»ÐµÐ²Ð° */
}

.text-video-block .text-column {
    flex: 1;
    padding: 10px;
}

.text-video-block .text-column h2 {
    /* font-size: 2.5vh; */
    margin-bottom: 10px;
}

.text-video-block .video-column {
    flex: 1;
}

.text-video-block .video-column video {
    max-width: 100%;
    height: auto;
    border-radius: 10px;
}
.two-column-block {
    display: flex;
    gap: 20px;
    padding: 50px;
    /* margin: 0 -2%; */
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    flex-direction: row;
}

.two-column-block .column-1 {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.two-column-block .column-2 {
    flex: 1;
    padding: 10px;
    display: flex;
    flex-direction: column;
    gap: 5px;
    color: #ffffff;
}

.two-column-block .column-2 ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
}

.two-column-block .column-2 ul li {
    position: relative;
    /* padding-left: 30px; */
    font-size: 2vh;
    /* display: inline-flex; */ /* Делаем строку inline-flex */
    font-weight: 500;
    margin-bottom: 10px;
}
.two-column-block .column-2 p {font-size: 2vh;font-weight: 500;}

.two-column-block .column-2 ul li::before {content: "\2713"; /* Юникод галочки ✓ */color: #22272a; /* Цвет галочки */font-weight: bold;margin-right: 8px; /* Отступ между галочкой и текстом */}


@media (max-width: 768px) {
    .text-video-block {
        flex-direction: column;
        gap: 10px;
    }
    .two-column-block {flex-direction: column;margin-left: -4.3%;margin-right: -4.3%;}
    .text-video-block .text-column,
    .text-video-block .video-column {
        
        width: 100%;
        padding: 0;
    }
    .two-column-block {
  
    padding: 20px;
   
}
    .text-video-block.video-left {
        flex-direction: column; 
    }
    
    .text-video-block.video-right {
        flex-direction: column; 
    }
}
.project-details p {
    display: -webkit-box;
    -webkit-line-clamp: 2; 
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 250px;
}
.contact-block {
    display: flex;
    padding: 20px;
    border-radius: 15px;
    margin-top: 20px;
    gap: 20px;
}

.cont-info {
    flex: 1;
       font-size: clamp(18px, 2vw, 26px);
    line-height: 1.5;
}
.cont-info h2 {
   color:#fff;
}

.cont-info p {
    margin: 5px 0;
        font-size: clamp(16px, 2vw, 18px);
    color: white;
}

.cont-info p strong {
    font-weight: bold;
    margin-top: 20px;
    display: block;
}

.cont-info a {
    color: white; 
    text-decoration: none;
}

.cont-info a:hover {
    text-decoration: underline;
}




@media (max-width: 768px) {
    .contact-block {
        flex-direction: column;
    }
}

.info-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(20px, 1vw, 70px);
    margin: 0 auto;
    padding: 4em 20px 20px;
}


.info-card {
    display: flex;

    padding: 20px;
    border-radius: 12px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    flex-direction: row-reverse;
}


.info-text {
    max-width: 65%;
    font-size: clamp(14px, 2vw, 16px);
    color: #556571;
    line-height: 1.5;
    text-align: left;
    padding: 0 20px;
    font-weight: bold;
}


.info-image {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    background: #e0e0e0;
}
.info-blocks {
    margin: 2em 0 0;
    flex: 1;
    padding: 2em;
    text-align: center;
    background: #ffffff;
    border-radius: 50px;
}


.info-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

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

@media (max-width: 768px) {
    .info-grid {
        grid-template-columns: 1fr;
    }

    .info-card {
        flex-direction: row;
        justify-content: space-between;
        padding: 10px;
    }

    .info-card:nth-child(odd) .info-image {
        order: -1; 
    }

    .info-card:nth-child(even) .info-image {
        order: 1; 
    }

    .info-text {
        max-width: 100%;
        padding: 0 20px;
    }

    .info-image {
        margin: 0;
    }
    .info-blocks {
    margin: 2em 0 0;
    flex: 1;
    padding: 2em 1em;
    text-align: center;
    background: #ffffff;
    border-radius: 50px;
}
  
}
.dopolnenie-block {
    background: #f8fdff !important;
    margin: 30px 0;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
}

.dopolnenie-title {
    font-size: 24px;
    margin-bottom: 20px;
    color: #333;
}

.dopolnenie-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* Две равные колонки */
    gap: 20px;
}

.dopolnenie-item {
    padding: 15px;
    display: flex;
    /* background-color: #f0f0f0; */
    border-radius: 8px;
    text-align: center;
    align-items: center;
    font-size:clamp(14px,2vw,16px);
    color: #444;
    justify-content: center;
    flex-direction: column;
}


.dopolnenie-icon {
    width: 20px;
    height: 20px;
    border-radius: 50%;
    background-color: #f2f4f7; /* Цвет фона кружка */
    display: flex;
    justify-content: center;
    align-items: center;
    font-weight: bold;
    color: #1399fc; /* Оранжевый цвет восклицательного знака */
    font-size: 18px;
    flex-shrink: 0;
}

.dopolnenie-item {
      border-radius: 10px;
      border: 1px solid #d3d3d38a;
}
.dopolnenie-item  p{
    font-size: clamp(14px,2vw,16px)!important;
}
.dop_dop_text{
    font-size:clamp(14px,2vw,16px)!important;
  text-transform: initial!important;
}
@media (max-width: 768px) {
      .dopolnenie-grid {
     display: grid;
     grid-template-columns: repeat(1, 1fr);
     /* gap: 0; */
     align-items: start;
}
   
    }




