.services-section {
    background-color: #001628
}

.page-template-solution {
    overflow: visible
}

.services-section .section-header {
    margin-bottom: 0;
    padding: 68px 0 0;
    border-top: 1px solid #003966
}

.services-section .section-title {
    margin: 0
}

.services-list {
    display: flex;
    flex-direction: column
}

.service-item {
    position: -webkit-sticky;
    position: sticky;
    top: 100px;
    padding: 50px 0 0;
    background-color: #001628;
    box-sizing: border-box;
}

.service-inner {
    display: flex;
    align-items: flex-start;
    gap: 0;
    justify-content: space-between;
    background-color: #001628;
    flex-wrap: wrap
}

.service-content {
    flex: 0 0 45%;
    max-width: 44%
}

.service-media {
    flex: 0 0 55%;
    max-width: 48.5%
}

.service-number {
    display: block;
    color: #005DA7;
    margin-bottom: 30px
}

.service-title {
    margin: 0 0 25px
}

.service-excerpt {
    margin-bottom: 40px;
    color: #D0D0D0;
}

.service-image {
    width: 100%;
    overflow: hidden;
    position: relative;
    padding-bottom: calc(455/660 * 100%);
}

.service-image img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    object-fit: cover;
}

.service-item .service-inner {
    position: relative;
    padding-bottom: 50px
}

.service-item .service-inner .line-horizontal {
    display: block;
    width: 0;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0;
    background: #003966
}

@media (min-width: 1441px) {

    .service-image {
        padding-bottom: 455px;
    }
}


@media (max-width: 1023px) {
    .service-inner {
        gap: 40px
    }

    .service-item {
        position: static !important;
        transform: none !important;
        margin-bottom: 0;
        padding: 40px 20px 0
    }

    .services-list {
        height: auto !important
    }
}

@media (max-width: 767px) {
    .service-inner {
        display: block;
        gap: 40px
    }

    .service-title * {
        font-family: var(--font-family-base) !important;
        font-weight: 500;
    }

    .service-content,
    .service-media {
        flex: 0 0 100%;
        max-width: 100%
    }

    .service-item {
        padding: 0 0 40px
    }

    .service-content {
        flex: 0 0 100%;
        max-width: 100%;
        padding-bottom: 40px
    }

    .service-media {
        flex: 0 0 100%;
        max-width: 100%
    }

    .services-section .section-title {
        font-size: var(--font-size-heading-2);
        line-height: var(--line-height-heading-2)
    }

    .services-section .section-header {
        padding: 37px 0 40px
    }

    .service-number {
        margin-bottom: 21px
    }

    .service-image {
        padding-bottom: 69%;
        display: inline-block
    }

    .service-image img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover
    }

    .service-item .service-inner {
        padding-bottom: 43px
    }
}