@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,100..1000;1,9..40,100..1000&family=Quicksand:wght@300..700&display=swap');

*, ::after, ::before {
    box-sizing: border-box;
}
body, html {
    overflow-x: hidden;
    position: relative;
}
body {
    font-family: "DM Sans", sans-serif;
    color: #1A1A18;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px;
    margin: 0;
    padding: 0;
}
section {
    padding: 80px 0;
}
a {
    color: #0199CC;
    transition: 0.3s;
}
a:hover {
    color: #0199CC;
    text-decoration: none;
}
hr {
    border: 0;
    border-bottom: 1px solid #E1E1E1;
    margin: 24px 0;
}
p {
    margin: 0;
}
ul {
    margin: 0;
    padding: 0 0 0 20px;
}
.hidden {
  display: none;
}
.container {
    width: 1370px;
    margin: auto;
    padding-right: 8px;
    padding-left: 8px;
    margin-right: auto;
    margin-left: auto;
}
.row {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -8px;
    margin-left: -8px;
}
.col-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
}
.col-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
}
.col-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
}
.col-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
}
.col-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
}
.col-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
}
.col-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
}
.col-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
}
.col-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
}
.col-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
}
.col-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
}
.col-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
}
.col-1,
.col-2,
.col-3, 
.col-4, 
.col-5, 
.col-6, 
.col-7, 
.col-8, 
.col-9, 
.col-10, 
.col-11, 
.col-12  {
    position: relative;
    padding-right: 8px;
    padding-left: 8px;
}

@media only screen and (max-width: 1384px) {
    .container {
        width: 1200px;
    }
}
@media only screen and (max-width: 1234px) {
    .container {
        width: 976px;
    }
}
@media only screen and (max-width: 1024px) {
    .container {
        width: 736px;
    }
}

@media only screen and (max-width: 767px) {
    .container {
        width: 100%;
        max-width: 440px;
    }
    section {
        padding: 48px 0;
    }
    .col-1,
    .col-2,
    .col-3, 
    .col-4, 
    .col-5, 
    .col-6, 
    .col-7, 
    .col-8, 
    .col-9, 
    .col-10, 
    .col-11, 
    .col-12  {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }

}


.form-title {
    font-family: "Quicksand", sans-serif;
    font-size: 32px;
    font-weight: 700;
    line-height: 28px;
    letter-spacing: -0.64px;
    text-transform: uppercase;
    text-align: center;
}
.form-subtitle {
    color: #6D6D6A;
    text-align: center;
    margin: 16px 0 32px;
}
.form-row {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
}
.form-group {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    align-self: stretch;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
}
input, 
textarea {
    outline: none;
    border: 1px solid #E1E1E1;
    background: #FFF;
    width: 100%;
    height: 64px;
    padding: 0 24px;
    border-radius: 0;
    font-family: "DM Sans", sans-serif;
    color: #1A1A18;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
}
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
}
textarea {
    padding: 24px;
    height: 120px;
}
::placeholder {
    color: #BFBFBF;
}
.invalid input.wpcf7-validates-as-required {
    border: 1px solid #EE3431;
}
.invalid input.wpcf7-validates-as-required::placeholder  {
    color: #EE3431;
}
.checkbox-item {
    display: flex;
    align-items: flex-start;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: #6D6D6A;
}
.checkbox-item a {
    font-weight: 600;
}
.checkbox-input {
    appearance: none;
    -webkit-appearance: none; 
}
.checkbox-input {
    appearance: none;
    padding: 0;
    margin: 0 8px 0 0;
    width: 24px;
    min-width: 24px;
    height: 24px;
    border: 1px solid #E1E1E1;
    border-radius: 0;
    background: #F5F5F5;
    cursor: pointer;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.checkbox-input:checked {
    background-color: #ffffff00;
    border-color: #0199CC;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="13" height="9" viewBox="0 0 13 9" fill="none"><path d="M11.3666 0.700195L4.03328 8.03353L0.699951 4.7002" stroke="%230199CC" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"/></svg>');
    background-repeat: no-repeat;
    background-position: center;
}
form .btn {
    width: 100%;
}
form .btn:disabled,
form .btn.is-disabled {
    cursor: not-allowed;
    pointer-events: none;
    background: #C5DBE3;
    border: 1px solid #C5DBE3;
    color: #6D6D6A;
}

.block-btn {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}
.btn {
    width: auto;
    height: 56px;
    background: #0199CC;
    padding: 0 24px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #0199CC;
    border-radius: 0;
    cursor: pointer;
    font-family: "DM Sans", sans-serif;
    color: #fff; 
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    text-decoration: none;
    transition: 0.3s;
}
.btn:hover {
    background: #0077A0;
    border: 1px solid #0077A0;
    color: #fff; 
}
.btn.btn-border {
    background: #fff;
    color: #1A1A18;
}
.btn.btn-border:hover {
    color: #0077A0;
    background: #F5F5F5;
}
.btn.btn-video::after {
    content: '';
    display: block;
    width: 24px;
    height: 24px;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M5 3L19 12L5 21V3Z" stroke="white" stroke-width="1.4" stroke-linecap="round"/></svg>');
    margin-left: 10px;
}
.title {
    font-family: "Quicksand", sans-serif;
    font-size: 56px;
    font-weight: 700;
    line-height: 52px;
    letter-spacing: -1.12px;
    text-transform: uppercase;
    margin: 24px 0;
}
.title span {
    color: #0199CC;
}
.heading.title {
    font-size: 80px;
    line-height: 72px;
    letter-spacing: -3.2px;
    margin: 32px 0;
}
h1 {
    font-family: "Quicksand", sans-serif;
    font-size: 56px;
    font-weight: 700;
    line-height: 52px;
    letter-spacing: -1.12px;
    text-transform: uppercase;
    margin: 24px 0;
}
h2 {
    font-family: "Quicksand", sans-serif;
    font-size: 48px;
    font-weight: 700;
    line-height: 44px;
    letter-spacing: -0.96px;
    text-transform: uppercase;
    margin: 24px 0;
}
h3 {
    font-family: "Quicksand", sans-serif;
    font-size: 40px;
    font-weight: 700;
    line-height: 36px; 
    letter-spacing: -0.8px;
    text-transform: uppercase;
    margin: 24px 0;
}
h4 {
    font-family: "Quicksand", sans-serif;
    font-size: 32px;
    font-weight: 700;
    line-height: 28px;
    letter-spacing: -0.64px;
    text-transform: uppercase;
    margin: 24px 0;
}
h5 {
    font-family: "Quicksand", sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 20px; 
    letter-spacing: -0.48px;
    text-transform: uppercase;
    margin: 24px 0;
}
@media only screen and (max-width: 1024px) {
    .title {
        font-size: 48px;
        line-height: 44px;
        letter-spacing: -0.96px;
    }
    .heading.title {
        font-size: 56px;
        line-height: 52px;
        letter-spacing: -1.12px;
    }
}

@media only screen and (max-width: 767px) {
    .title {
        font-size: 32px;
        line-height: 28px;
        letter-spacing: -0.64px;
    }
    .heading.title {
        font-size: 40px;
        line-height: 36px;
        letter-spacing: -0.8px;
    }
    h3 {
        font-size: 24px;
        line-height: 20px;
        letter-spacing: -0.48px;
        margin: 16px 0;
    }
    h5 {
        font-size: 20px;
        line-height: 20px;
        letter-spacing: -0.4px;
        margin: 16px 0;
    }
    .btn {
        width: 100%;
    }
    .form-title {
        font-size: 24px;
        line-height: 20px;
        letter-spacing: -0.48px;
    }
    .form-subtitle {
        margin: 8px 0 16px;
    }
    .form-row {
        gap: 16px;
    }
}


header {
    position: fixed;
    top: 0;
    width: 100%;
    padding: 24px 0;
    z-index: 2;
    background: transparent;
    transition: transform 0.35s ease, background 0.35s ease;

}
header.header-scrolled {
    background: rgba(255, 255, 255, 0.80);
    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);
}
header.header-hidden {
    transform: translateY(-200%);
}
header .container {
    display: flex;
    align-items: center;
    gap: 180px;
}
.logo {
    width: 210px;
    height: auto;
    display: block;
}
.logo img {
    width: 100%;
    height: auto;
}
.ul-menu {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    padding: 0;
    margin: 0;
    list-style: none;
}
.ul-menu li a {
    font-weight: 600;
    line-height: 20px;
    text-decoration: none;
    color: #1A1A18;
}
.ul-menu li a:hover {
    color: #0199CC;
}
.menuToggle {
    position: relative;
    z-index: 999;
    cursor: pointer;
    display: none;
    transition: 0.3s;
    border: 1px solid #0199CC;
    height: 48px;
    width: 48px;
    align-items: center;
    justify-content: center;
    background: #fff;
}
.hamburger {
    width: 20px;
    height: 2px;
    transform: translate(0, -50%);
    background: #1A1A18;
    transition: 0.5s;
    display: inline-block;
    margin: 0;
}

.hamburger:before,
.hamburger:after {
    content: "";
    width: 20px;
    height: 2px;
    position: absolute;
    background: #1A1A18;
    transition: 0.3s;
}
.hamburger:before {
    top: -5px;
}
.hamburger:after {
    top: 5px;
}
.active .hamburger {
    background: none;
}
.active .menuToggle:hover .hamburger {
    background: none;
}
.active .hamburger:before {
    top: 0;
    transform: rotate(45deg);
}
.active .hamburger:after {
    top: 0;
    transform: rotate(135deg);
}
.active .menuToggle span {
    display: none;
}
.active {
    overflow: hidden;
}
.active header::before {
    content: '';
    display: block;
    width: 100%;
    height: 100vh;
    background: rgba(26, 26, 24, 0.20);
    position: absolute;
    top: 0;
    z-index: 2;
}
@media only screen and (max-width: 1234px) {
    header .container {
        gap: 0;
        justify-content: space-between;
        height: 48px;
    }
}
@media only screen and (max-width: 1024px) {
    .menuToggle {
        display: flex;
    }
    nav.menu {
        transform: translateX(100%); 
        transition: transform 0.35s ease;
        display: flex;
        flex-wrap: wrap;
        align-content: space-between;
        position: absolute;
        z-index: 3;
        top: 0;
        right: 0;
        background: #fff;
        height: 100vh;
        width: 374px;
        padding: 136px 24px 24px;
    }
    .active nav.menu {
        transform: translateX(0%); 
    }
    .active .menuToggle {
        position: absolute;
        right: 24px;
    }
    .ul-menu li {
        width: 100%;
        text-align: right;
    }
}
@media only screen and (max-width: 767px) {
    .active .menuToggle {
        right: 8px;
    }
    nav.menu {
        padding: 128px 8px 8px;
        width: 280px;
    }
}


.has-video-bg {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    align-content: flex-end;
}
.has-video-bg .title {
    max-width: 992px;
}

.hero-video-bg {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: 100%;
    height: 100%;
    transform: translate(-50%, -50%);
    object-fit: cover;
    z-index: -2;
}

.has-video-bg::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.00) 52.91%, #FFF 100%);
    z-index: -1;
}

.has-video-bg > .container {
    position: relative;
    z-index: 1;
}


.section-home-hero {
    padding: 48px 0;
    height: 100vh;
}
@media only screen and (max-width: 1234px) {

}
@media only screen and (max-width: 767px) {
    
}


.section-service {
    padding: 24px 0;
}
.row-service {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}
.row-service > div {
    border-right: 1px solid #E1E1E1;
    padding: 0 32px;
    display: flex;
    align-items: center;
    font-size: 18px;
    font-weight: 600;
}
.row-service > div img {
    width: 64px;
    min-width: 64px;
    height: 64px;
    margin-right: 16px;
}
.row-service > div:first-child {
    padding-left: 0;
}
.row-service > div:last-child {
    border: 0;
}
@media only screen and (max-width: 1234px) {
    .section-service {
        border-top: 1px solid #E1E1E1;
    }
}
@media only screen and (max-width: 767px) {
    .row-service {
        grid-template-columns: repeat(1, 1fr);
        gap: 16px;
    }
    .row-service > div {
        padding: 0;
        border: 0;
    }
}


.section-logo {
    background: #F5F5F5;
}
.logos-marquee {
    overflow: hidden;
    width: 100%;
}
.logos-track {
    display: flex;
    width: max-content;
    will-change: transform;
}
.logos-track-inner {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    gap: 16px;
}
.logos-track-inner .logos-img {
    padding: 20px;
    width: 256px;
    height: 180px;
}
.logos-track-inner img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: center;
}
@media only screen and (max-width: 767px) {
    .logos-track-inner .logos-img {
        width: 130px;    
        height: 80px;
        padding: 10px;
    }
}


.section-tools {
   
}
.section-tools .top {
    text-align: center;
    max-width: 944px;
    margin: 0 auto 40px;
}
.section-tools .top .title {
    margin: 0 0 40px;
}
.section-tools .top strong {
    display: block;
    margin: 16px 0 0;
    font-size: 24px;
    font-weight: 600;
    line-height: 30px;
}
.section-tools .col-6 {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}
.accordion-block {
    position: relative;
    border: 1px solid #E1E1E1;
    background: #FFF;
    width: 100%;
    display: flex;
    gap: 24px;
    padding: 32px;
    transition: 0.3s;
}
.accordion-block::after {
    content: '';
    display: block;
    width: calc(100% + 2px);
    height: 3px;
    background: #0199CC;
    position: absolute;
    bottom: -1px;
    left: -1px;
}
.accordion-info {
    width: 100%;
}
.accordion-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 30px;
    margin: 16px 0 8px;
}
.accordion-title span {
    display: block;
    width: 20px;
    min-width: 20px;
    height: 20px;
    border: 1.4px solid #1A1A18;
    border-radius: 60px;
    transition: 0.3s;
    position: relative;
    z-index: 1;
    cursor: pointer;
}
.accordion-title span::after {
    content: '';
    display: block;
    width: 8px;
    height: 1.4px;
    background: #1A1A18;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.accordion-title span::before {
    content: '';
    display: block;
    width: 1.4px;
    height: 8px;
    background: #1A1A18;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: 0.3s;
}
.accordion-title:hover span {
    border: 1.4px solid #0199CC;
}
.accordion-title.open span::before {
    transform: translate(-50%, -50%) rotate(90deg);
}
.accordion-content {
    display: none;
}

.accordion-block.has-video-bg {
    background: rgb(255 255 255 / 0%);
}
.accordion-block.has-video-bg .hero-video-bg {
    width: 100%;
    height: 100%;
}
.accordion-block.has-video-bg .accordion-title {
    align-items: flex-end;
    margin: 0;
}
.accordion-block.has-video-bg .accordion-content {
    position: absolute;
    left: 0px;
    bottom: 0px;
    padding: 32px;
    height: 100%;
    background: rgb(1, 153, 204);
    color: rgb(255, 255, 255);
}
.accordion-block.has-video-bg .accordion-content .name {
    font-size: 24px;
    font-weight: 600;
    line-height: 30px;
    margin: 0 0 16px;
}
.accordion-block.has-video-bg .accordion-title.open span {
    border: 1.4px solid #fff;
}
.accordion-block.has-video-bg .accordion-title.open span::before, .accordion-block.has-video-bg .accordion-title.open span::after {
    background: #fff;
}


@media only screen and (max-width: 1234px) {
    .section-tools .row {
        gap: 16px;
    }
    .section-tools .col-6  {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
    .accordion-block.has-video-bg {
        height: 340px;
    }
}
@media only screen and (max-width: 767px) {
    .accordion-block {
        padding: 16px;
        gap: 16px;
    }
    .accordion-block.has-video-bg .accordion-content {
        padding: 16px;
    }
}


.section-metrics {
    background: #F5F5F5;
}
.section-metrics .title {
    margin: 0 0 40px;
    text-align: center;
}
.section-metrics .block {
    padding: 48px 32px;
    border: 1px solid #E1E1E1;
    background: #FFF;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}
.section-metrics .block::after {
    content: '';
    display: block;
    height: 3px;
    width: calc(100% + 2px);
    position: absolute;
    bottom: -1px;
    left: -1px;
    background: #0199CC
}
.section-metrics .block > div {
    min-width: 155px;
}
.numbers {
    color: #0199CC;
    font-family: "Quicksand", sans-serif;
    font-size: 48px;
    font-weight: 700;
    line-height: 44px;
    letter-spacing: -0.96px;
    text-transform: uppercase;
    margin: 0 0 8px;
}
@media only screen and (max-width: 1384px) {
    .section-metrics .block > div {
        min-width: 147px;
        flex: 1;
    }
}
@media only screen and (max-width: 1234px) {
    .section-metrics .col-4 {
        -ms-flex: 0 0 50%;
        flex: 0 0 50%;
        max-width: 50%;
        margin-bottom: 16px;
    }
    .section-metrics .col-4:last-child {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        margin-bottom: 0;
    }
    .section-metrics .block > div {
        flex: 1;
    }
}
@media only screen and (max-width: 767px) {
    .section-metrics .col-4 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
    .section-metrics .block {
        padding: 16px;
        gap: 0;
    }
    .numbers {
        font-size: 32px;
        line-height: 28px;
        letter-spacing: -0.64px;
    }
}

.section-from {
    text-align: center;
    background: url(../img/bg-from.png);
    background-size: cover;
}
.section-from .block-btn {
    justify-content: center;
}
.section-from .title {
    max-width: 944px;
    margin: auto;
}
.section-from .subtitle {
    max-width: 744px;
    margin: 24px auto;
}
.scheme {
    display: flex;
    flex-wrap: wrap;
    max-width: 500px;
    margin: 0 auto 48px;
    gap: 24px;
    text-align: left;
    position: relative;
}
.scheme-block {
    border: 1px solid #E1E1E1;
    background: #FFF;
    padding: 32px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
}
.scheme-block::before {
    content: '';
    display: block;
    width: 8.082px;
    height: 24px;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="9" height="24" viewBox="0 0 9 24" fill="none"><path d="M4.74121 0V17H8.08203L4.04102 24L0 17H3.34082V0H4.74121Z" fill="%230199CC"/></svg>');
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    bottom: -24px;
    left: 50%;
    transform: translate(-50%);
}
.scheme-block:last-child::before {
    display: none;
}
.scheme-block::after {
    content: '';
    display: block;
    height: 3px;
    width: calc(100% + 2px);
    position: absolute;
    bottom: -1px;
    left: -1px;
    background: #0199CC
}
.scheme-info {
    display: flex;
    align-items: center;
}
.scheme-info .number {
    width: 40px;
    min-width: 40px;
    height: 40px;
    border-radius: 40px;
    background: #0199CC;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 20px;
}
.scheme-info .text {
    padding-left: 16px;
    display: flex;
    align-items: center;
    gap: 16px;
}
.scheme-info .text::before {
    content: '';
    width: 1px;
    height: 40px;
    display: block;
    background: #E1E1E1;
}
.scheme-info .name {
    font-weight: 600;
}
.scheme-info p {
    margin: 8px 0 0;
    font-size: 12px;
    font-weight: 400;
    line-height: 18px;
}
.scheme-info .plate {
    display: flex;
}
.scheme-info .plate > div {
    width: 24px;
    height: 6px;
}
.scheme-info .plate .customer {
    background: #BFBFBF
}
.scheme-info .plate .LABMaiTE {
    background: #0199CC;
}
.scheme .iterative-optimization {
    position: absolute;
    left: -108.7px;
    top: 218px;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="17" height="161" viewBox="0 0 17 161" fill="none"><path d="M0.700195 4.0415V3.3415H0.000195324V4.0415H0.700195ZM16.7002 4.0415L9.7002 5.19753e-05V8.08296L16.7002 4.0415ZM0.700195 160.042H0.000195324V160.742H0.700195V160.042ZM0.700195 4.0415V4.7415H10.4002V4.0415V3.3415H0.700195V4.0415ZM0.700195 4.0415H0.000195324V160.042H0.700195H1.4002V4.0415H0.700195ZM0.700195 160.042V160.742H16.7002V160.042V159.342H0.700195V160.042Z" fill="%230199CC"/></svg>');
    background-repeat: no-repeat;
    background-position: right;
    width: 109px;
    height: 162px;
    display: flex;
    align-items: center;
    text-align: center;
    font-size: 14px;
    font-style: normal;
    font-weight: 600;
    line-height: 20px;
    padding: 0 24px 0 0;
}
@media only screen and (max-width: 767px) {
    .scheme {
        margin: 0 auto 24px;
    }
    .scheme-block {
        padding: 16px;
    }
    .scheme .iterative-optimization {
        margin: -24px 0;
        padding: 17px 0;
        position: relative;
        left: auto;
        top: auto;
        background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="17" height="54" viewBox="0 0 17 54" fill="none"><path d="M13.2002 0V47H16.541L12.5 54L8.45898 47H11.7998V0H13.2002Z" fill="%230199CC"/><path d="M3.34082 54L3.34082 7L4.10887e-06 7L4.04102 -3.53277e-07L8.08204 7L4.74122 7L4.74121 54L3.34082 54Z" fill="%230199CC"/></svg>');
        background-repeat: no-repeat;
        background-position: center;
        width: 100%;
        height: auto;
    }
    .scheme-block:nth-child(2)::before {
        display: none;
    }
}


.section-track-record {
    background: #F5F5F5;
}
.section-track-record .row {
    align-items: center;
    margin-bottom: 40px;
    
}
.section-track-record .row .title {
    max-width: 687px;
    margin: 0 0 16px;
}
.section-track-record .row p {
    max-width: 687px;
}
.plate-row {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}
.plate-row .plate {
    border-left: 4px solid #0199CC;
    padding-left: 16px;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.plate-row .plate .name {
    font-weight: 600;
}
.plate-row .plate .info {
    color: #6D6D6A;
}
.track-record-row {
    display: flex;
    align-items: center;
    gap: 84px;
    padding: 16px;
    margin-bottom: 40px;
    border: 1px solid #E1E1E1;
    background: #FFF;
}

.track-record-row:nth-child(even) {
    flex-direction: row-reverse;
}

.track-record-row .col-img,
.track-record-row .col-text {
    flex: 1 1 50%;
}
.track-record-row .col-text {
    background: #F5F5F5;
    padding: 32px;
    min-height: 500px;
}
.track-record-row .col-text ul {
    padding: 0;
    margin: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
}
.track-record-row .col-text ul li {
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    width: 100%;
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #E1E1E1;
    padding: 12px 0;
    gap: 16px;
}
.track-record-row .col-text ul li strong {
    font-weight: 600;
}
.track-record-row .col-img img {
    width: 100%;
    height: auto;
    display: block;
}
.track-record-row blockquote {
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M12.1303 18L16.873 6H20L17.0293 18H12.1303ZM4 18L8.69055 6H11.8176L8.89902 18H4Z" fill="%230199CC"/></svg>');
    background-repeat: no-repeat;
    background-position: left top;
    margin: 24px 0 0;
    padding: 32px 24px 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
}
.track-record-row blockquote p {
    margin: 0;
}
.track-record-row p {
    margin: 24px 0 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
}
.trusted {
    margin: 88px auto 0;
    text-align: center;
    max-width: 744px;
    position: relative;
}
.trusted .title {
    margin: 0 0 40px;
}
.trusted .trusted-block {
    padding: 56px 0 40px;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="0 0 40 40" fill="none"><path d="M20.217 30L28.1214 10H33.3332L28.382 30H20.217ZM6.6665 30L14.4841 10H19.6958L14.8315 30H6.6665Z" fill="%230199CC"/></svg>');
    background-position: center top;
    background-repeat: no-repeat;
}
.trusted .trusted-block .name {
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    margin: 16px 0 0;
}
.trusted-slider {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  position: relative;
  flex-wrap: wrap;
}
.trusted-slider .slick-prev {
  order: 2;
}
.trusted-slider .slick-next {
  order: 4;
}
.trusted-slider .slick-list {
  order: 1;
}
.trusted-slider .slick-dots {
  margin: 0 24px;
  order: 3;
}

@media only screen and (max-width: 1234px) {
    .section-track-record .row {
        gap: 24px;
    }
    .section-track-record .row .col-8, .section-track-record .row .col-4 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
    .track-record-row {
        flex-direction: column;
        gap: 24px;
    }
    .track-record-row:nth-child(even) {
        flex-direction: column;
    }
    .track-record-row .col-img, .track-record-row .col-text {
        flex: 1 1 100%;
        width: 100%;
    }
    .track-record-row .col-text {
        min-height: auto;
        padding: 16px;
    }
}
@media only screen and (max-width: 767px) {
    .track-record-row, .section-track-record .row {
        margin-bottom: 24px;
    }
    .trusted {
        margin: 72px 0 0;
    }
    .trusted .title {
        margin: 0 0 24px;
    }
    .trusted .trusted-block {
        padding: 56px 8px 24px;
    }
}


.section-custom-solutions {
    background-image: url(../img/section-custom-solutions.png);
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: cover;
}
.section-custom-solutions .title {
    margin: 0;
}
.section-custom-solutions .col-6:first-child p {
    max-width: 458px;
    margin: 24px 0;
}
.section-custom-solutions .col-6:first-child {
    padding-right: 96px;
}
.section-custom-solutions .ul-name {
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: 24px;
}
.section-custom-solutions ul {
    padding: 0;
    margin: 24px 0;
    list-style: none;
}
.section-custom-solutions ul li {
    margin: 16px 0;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 16px;
}
.section-custom-solutions .col-6:last-child {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}
.block-bg-photo {
    width: 100%;
    padding: 32px;
    border: 1px solid #E1E1E1;
    position: relative;
    background-size: cover;
    background-position: center;
    height: 306px;
    display: flex;
    align-items: flex-end;
}
.block-bg-video {
    width: 100%;
    height: 100%;
    border: 1px solid #E1E1E1;
    position: relative;
    background-size: cover;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: center;
}
.block-bg-video .btn {
    position: relative;
    z-index: 1;
}
.block-bg-video::before {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.00) 0%, #FFF 100%);
}
.block-bg-photo::before {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: linear-gradient(270deg, rgba(255, 255, 255, 0) 17.7%, #FFF 63.7%);
}
.block-bg-photo::after, .block-bg-video::after {
    content: '';
    display: block;
    width: 100%;
    height: 3px;
    position: absolute;
    left: 0;
    bottom: 0;
    background: #0199CC;
}
.block-bg-photo > div {
    position: relative;
    z-index: 1;
    max-width: 392px;
}
.block-bg-photo .name {
    font-family: "Quicksand", sans-serif;
    font-size: 32px;
    font-style: normal;
    font-weight: 700;
    line-height: 28px; /* 87.5% */
    letter-spacing: -0.64px;
    text-transform: uppercase;
    margin: 0 0 16px;
}
@media only screen and (max-width: 1234px) {
    .section-custom-solutions .col-6:first-child {
        padding-right: 8px;
        margin-bottom: 16px;
    }
    .section-custom-solutions .col-6 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        padding: 0 8px;
    }
    .section-custom-solutions ul {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
    }
    .section-custom-solutions ul li {
        margin: 0;
    }
}
@media only screen and (max-width: 767px) {
    .section-custom-solutions ul {
        grid-template-columns: repeat(1, 1fr);
        gap: 16px;
    }
    .section-custom-solutions .col-6:first-child {
        margin-bottom: 24px;
    }
    .block-bg-photo {
        padding: 16px;
    }
    .block-bg-photo::before {
        background: linear-gradient(180deg, rgba(255, 255, 255, 0.00) 0.03%, #FFF 100.03%);
    }
    .block-bg-photo .name {
        font-size: 24px;
        line-height: 20px;
        letter-spacing: -0.48px;
    }
}


.section-about {
    background: #F5F5F5;
}
.section-about .title {
    margin: 0;
}
.section-about .row:first-child {
    align-items: center;
    margin-bottom: 40px;
}
.section-about .row.row-col .col-6 {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}
.row-slider {
    margin-top: 40px;
    position: relative;
}
.row-slider .title {
    padding: 6px 0;
    margin: 0 0 24px;
    font-size: 40px;
    line-height: 36px; 
    letter-spacing: -0.8px;
}
.row-slider .slick-arrow {
    position: absolute;
    top: -72px;
    right: 0;
}
.row-slider .slick-prev.slick-arrow {
    right: 52px;
}
.people-block {
    border-bottom: 3px solid #0199CC;
    background: #FFF;
    position: relative
}
.people-block .photo {
    height: 266px;
    padding: 8px;
}
.people-block .photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.people-block .text {
    padding: 8px 24px 24px;
    min-height: 103px;
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
}
.people-block .text > div {
    width: 100%;
}
.people-block .name {
    font-size: 16px;
    font-weight: 600;
    line-height: 22px;
}
.people-block .direction {
    margin: 8px 0 0;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.people-block a {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 16px 0 0;
}
.row-cta {
    margin: 40px 0 0;
    padding: 48px;
    background: #0199CC;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}
.row-cta .title {
    margin: 0;
    color: #fff;
    font-size: 40px;
    line-height: 36px; 
    letter-spacing: -0.8px;
}
@media only screen and (max-width: 1234px) {
    .section-about .col-6 {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
    }
    .block-bg-video {
        height: 600px;
        margin-bottom: 16px;
    }
    .section-about .title {
        margin: 0 0 24px;
    }
}
@media only screen and (max-width: 767px) {
    .row-slider {
        margin: 24px 0 0;
        position: relative;
    }
    .row-slider .title {
        max-width: 70%;
        padding: 0;
        font-size: 32px;
        line-height: 28px;
        letter-spacing: -0.64px;
        min-height: 48px;
        display: flex;
        flex-wrap: wrap;
        flex-direction: column;
        justify-content: center;
    }
    .people-slider {
        width: 70%;
        position: static;
    }
    .people-slider .slick-list {
        overflow: visible;
    }
    .row-slider .slick-arrow {
        top: 0;
    }
    .row-cta {
        margin: 24px 0 0;
        padding: 32px 16px;
        gap: 24px;
        text-align: center;
    }
    .row-cta .title {
        width: 100%;
        font-size: 32px;
        line-height: 28px;
        letter-spacing: -0.64px;
    }
    .block-bg-video {
        height: 250px;
        margin-bottom: 16px;
        padding: 8px;
    }
    .block-bg-video .btn {
        width: auto;
    }
}


.section-resources {
    background: url(../img/bg-section-resources.png);
    background-size: cover;
    background-position: center;
}
.section-resources .title {
    margin: 0;
}
.section-resources .subtitle {
    margin: 16px 0 24px;
}
.section-resources .subtitle strong {
    font-weight: 600;
}
.resources-block {
    border: 1px solid #E1E1E1;
    background: #FFF;
}
.resources-block .photo {
    padding: 8px;
    height: 316px;
    position: relative;
}
.resources-block .photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.resources-block .photo .btn {
    position: absolute;
    top: 16px;
    left: 16px;
}
.resources-block .text {
    padding: 16px 24px 24px;
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    min-height: 254px;
    align-content: space-between;
}
.resources-block .text .name {
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 30px;
    margin: 0 0 8px;
}
.resources-block .text-bottom {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    
}
.resources-block .text-bottom-left {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
.resources-block .text-bottom-left > div {
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 12px 0 0;
    border-right: 1px solid #E1E1E1;
}
.resources-block .text-bottom-left > div:last-child {
    padding: 0;
    border: 0;
}
.resources-block .data::before {
    content: '';
    display: block;
    width: 24px;
    height: 24px;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><rect x="3" y="4" width="18" height="18" stroke="%230199CC" stroke-width="1.4"/><path d="M17 2V6M7 2V6" stroke="%230199CC" stroke-width="1.4"/><path d="M3 10H21" stroke="%230199CC" stroke-width="1.4"/></svg>');
}
.resources-block .author::before {
    content: '';
    display: block;
    width: 24px;
    height: 24px;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M20 22C20 17.5817 16.4183 14 12 14C7.58172 14 4 17.5817 4 22" stroke="%230199CC" stroke-width="1.4"/><path d="M12 11C14.2091 11 16 9.20914 16 7C16 4.79086 14.2091 3 12 3C9.79086 3 8 4.79086 8 7C8 9.20914 9.79086 11 12 11Z" stroke="%230199CC" stroke-width="1.4"/></svg>');
}
.section-resources .slick-arrow {
    position: absolute;
    top: -93px;
    right: 0;
}
.section-resources .slick-prev.slick-arrow {
    right: 52px;
}
@media only screen and (max-width: 1234px) {
    .resources-block .text {
        min-height: auto;
    }
}
@media only screen and (max-width: 767px) {
    .section-resources {
        background: #fff;
    }
    .section-resources .slick-arrow {
        top: -144px;
    }
    .section-resources .title, .section-resources .subtitle {
        max-width: 60%;
    }
    .resources-block .photo .btn {
        width: auto;
    }
    .resources-block .photo {
        height: 266px;
    }
    .resources-block .text {
        padding: 16px;
    }
    .resources-block .text-bottom-left {
        flex-wrap: wrap;
        gap: 16px;
    }
    .resources-block .text-bottom-left > div {
        padding: 0;
        border: 0;
        width: 100%;
    }
    .resources-block .text-bottom {
        flex-wrap: wrap;
        gap: 16px;
    }
}


.section-page-hero {
    padding: 184px 0 48px;
}
@media only screen and (max-width: 1234px) {
    .section-page-hero {
        padding: 192px 0 48px;
    }
}
@media only screen and (max-width: 767px) {
    .section-page-hero {
        padding: 152px 0 48px;
    }
}


.section-page {
    padding: 0;
    margin: 48px 0;
}
.section-page h3 {
    margin: 48px 0 24px;
}
@media only screen and (max-width: 1234px) {
    
}
@media only screen and (max-width: 767px) {
    .section-page {
        margin: 24px 0;
    }
    .section-page h3 {
        margin: 24px 0 16px;
    }
}


.section-book {
    padding: 136px 0 48px;
}
.section-book .book {
    padding: 40px;
    margin: auto;
    max-width: 664px;
    border: 2px solid #0199CC;
    background: #FFF;
}
.book-check {
    display: none;
    text-align: center;
}
.book-check .form-title {
    margin: 32px 0 16px;
}
.book-check p {
    color: #6D6D6A;
}
.wpcf7-response-output, .wpcf7-spinner {
    display: none!important;
}
@media only screen and (max-width: 1234px) {
    .section-book {
        padding: 144px 0 48px;
    }
}
@media only screen and (max-width: 767px) {
    .section-book {
        padding: 104px 0 24px;
    }
    .section-book .book {
        padding: 24px;
    }
    .book-check .form-title {
        margin: 16px 0;
    }
}


footer {
    border-top: 3px solid #0199CC;
    background: #F5F5F5;
    padding: 48px 0;
}
footer hr {
    margin: 32px 0;
    border: 0;
    border-bottom: 1px solid #E1E1E1;
}
.footer-top {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}
.footer-top .top-right {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 32px;
}
.footer-top .top-right .name {
    font-weight: 600;
}
.footer-bottom {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
footer p {
    margin: 0;
    font-size: 14px;
    line-height: 20px;
}
footer ul {
    padding: 0;
    margin: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
}
footer ul li a {
    font-size: 14px;
    line-height: 20px;
    display: flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
    color: #1A1A18;
}
@media only screen and (max-width: 767px) {
    footer hr {
        margin: 24px 0;
    }
    footer p {
        width: 100%;
    }
    .footer-top ul {
        gap: 16px;
    }
    .footer-top ul li {
        width: 100%;
    }
}

.slick-list {
    margin: 0 -7px;
}
.slick-slide {
    padding: 0 8px;
}
.slick-dots {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    height: 48px;
}
.slick-dots li {
    line-height: 0;
}
.slick-dots li button {
    font-size: 0;
    width: 8px;
    height: 8px;
    border: 0;
    padding: 0;
    background: #E1E1E1;
    border-radius: 8px;
    cursor: pointer;
}
.slick-dots li.slick-active button {
    background: #0199CC;
}
.slick-arrow {
    width: 48px;
    height: 48px;
    border: 1px solid #0199CC;
    background-color: #FFF;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M9 18L15 12L9 6" stroke="%231A1A18" stroke-width="1.4"/></svg>');
    background-repeat: no-repeat;
    background-position: center;
    font-size: 0;
    padding: 0;
    transition: 0.3s;
    cursor: pointer;
}
.slick-arrow.slick-prev {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M15 18L9 12L15 6" stroke="%231A1A18" stroke-width="1.4"/></svg>');
}
.slick-arrow:hover {
    background-color: #F5F5F5;
}
.fancybox-slide--video .fancybox-content {
    height: auto !important;
    aspect-ratio: 16 / 9;
}
.trusted-slider .slick-dots li:only-child {
    display: none;
}
.trusted-slider .slick-dots:has(li:only-child) {
    display: none;
}