main.xy-services-page {
    overflow-x: hidden;
    --xy-services-frame-inline: 16px;
}

main.xy-services-page .svc-features-map .svc-fm-container,
main.xy-services-page .svc-core-services .svc-cs-frame,
main.xy-services-page .modular-solutions-exclusive-v5.svc-solutions-modular .title-row-v5 {
    position: relative;
    box-sizing: border-box;
    width: auto;
    margin-inline: var(--xy-services-frame-inline);
    border-inline-start: 1px solid #e4e4e4;
    border-inline-end: 1px solid #e4e4e4;
}

main.xy-services-page .svc-features-map .svc-fm-border,
main.xy-services-page .svc-core-services .svc-cs-border {
    display: none;
}

@media (max-width: 767.98px) {
    main.xy-services-page .svc-features-map .svc-fm-container,
    main.xy-services-page .svc-core-services .svc-cs-container {
        padding-inline: 0;
    }
}

@media (max-width: 389.98px) {
    main.xy-services-page {
        --xy-services-frame-inline: 16px;
    }
}

@media (min-width: 390px) and (max-width: 429.98px) {
    main.xy-services-page {
        --xy-services-frame-inline: 18px;
    }
}

@media (min-width: 430px) and (max-width: 479.98px) {
    main.xy-services-page {
        --xy-services-frame-inline: 20px;
    }
}

@media (min-width: 480px) and (max-width: 639.98px) {
    main.xy-services-page {
        --xy-services-frame-inline: 22px;
    }
}

@media (min-width: 640px) and (max-width: 767.98px) {
    main.xy-services-page {
        --xy-services-frame-inline: 24px;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    main.xy-services-page {
        --xy-services-frame-inline: 32px;
    }
}

@media (min-width: 1025px) and (max-width: 1365.98px) {
    main.xy-services-page {
        --xy-services-frame-inline: 60px;
    }
}

@media (min-width: 1366px) {
    main.xy-services-page {
        --xy-services-frame-inline: 0;
    }

    main.xy-services-page .svc-features-map,
    main.xy-services-page .svc-core-services {
        max-width: 1296px;
        margin-inline: auto;
    }
}

main.xy-services-page .svc-features-map .svc-fm-list--hidden-temporarily {
    display: none !important;
}

main.xy-services-page .svc-features-map .svc-fm-visual {
    flex: 1 1 100%;
    max-width: 100%;
}

main.xy-services-page section.hero-banner-module.svc-hero {
    height: auto;
    min-height: 0;
    border-left: none;
    border-right: none;
}

main.xy-services-page section.hero-banner-module.svc-hero::after {
    display: none !important;
    content: none !important;
    height: 0 !important;
}

main.xy-services-page .svc-core-services .svc-cs-container {
    max-width: 100%;
    margin-inline: 0;
}

main.xy-services-page .modular-solutions-exclusive-v5.svc-solutions-modular {
    max-width: 1296px;
    width: 100%;
    margin-inline: auto;
    padding-inline: 0;
    box-sizing: border-box;
}

main.xy-services-page .modular-solutions-exclusive-v5.svc-solutions-modular .title-row-v5 {
    border-bottom: 1px solid #e4e4e4;
    max-width: none;
}

main.xy-services-page .modular-solutions-exclusive-v5.svc-solutions-modular .flex-stage-v5 {
    width: 100vw;
    max-width: 100vw;
    margin-inline: calc(50% - 50vw);
    box-sizing: border-box;
}

main.xy-services-page .modular-solutions-exclusive-v5.svc-solutions-modular .indicator-v5 {
    width: 4px;
    height: 24px;
    background-color: #003b90;
}

main.xy-services-page .modular-solutions-exclusive-v5.svc-solutions-modular .main-label-v5 {
    font-family: "Zalando Sans Expanded", sans-serif;
    font-weight: 600;
    color: #003b90;
    line-height: 1.2;
    text-transform: capitalize;
    font-size: 22px;
}

main.xy-services-page .svc-cs-block h3 {
    font-size: 20px;
    line-height: 1.2;
}

@media (max-width: 767.98px) {
    main.xy-services-page .product-series-breadcrumb {
        position: relative;
        background: #fff;
        box-sizing: border-box;
    }

    main.xy-services-page .hero-banner-module.svc-hero {
        position: relative;
        z-index: 1;
        height: 400px;
        min-height: 0;
        max-height: none;
        margin: 0;
        padding: 0;
        overflow: hidden;
        box-sizing: border-box;
        border-left: none;
        border-right: none;
        background-color: #1b2129;
        display: flex;
        flex-direction: column;
    }

    main.xy-services-page .hero-banner-module.svc-hero::before,
    main.xy-services-page .hero-banner-module.svc-hero::after {
        display: none !important;
    }

    main.xy-services-page .hero-banner-module.svc-hero .hero-banner-wrap {
        flex: 1 1 auto;
        min-height: 0;
        display: flex;
        flex-direction: column;
    }

    main.xy-services-page .hero-banner-module.svc-hero .hero-banner {
        flex: 1 1 auto;
        min-height: 0;
        position: relative;
        height: auto;
        max-height: none;
    }

    main.xy-services-page .hero-banner-module.svc-hero .hero-bg {
        position: absolute;
        inset: 0;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        max-width: none;
        margin: 0;
        object-fit: cover;
        object-position: center;
        z-index: 1;
    }

    main.xy-services-page .hero-banner-module.svc-hero .hero-overlay {
        position: absolute;
        inset: 0;
        display: block;
        box-sizing: border-box;
        z-index: 2;
        background: linear-gradient(0deg, rgba(27, 33, 41, 0.9) 0%, rgba(27, 33, 41, 0) 70%), linear-gradient(180deg, rgba(27, 33, 41, 0) 0%, rgba(27, 33, 41, 0.55) 100%);
    }

    main.xy-services-page .hero-banner-module.svc-hero .hero-content {
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        z-index: 3;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        box-sizing: border-box;
        width: 100%;
        max-width: 100%;
        height: auto;
        gap: 20px;
        margin: 0;
    }

    main.xy-services-page .hero-banner-module.svc-hero .hero-title {
        line-height: 26px;
        font-size: 20px;
        margin: 0;
    }

    main.xy-services-page .hero-banner-module.svc-hero .hero-subtitle {
        line-height: 18px;
        font-size: 13px;
        margin: 0;
        max-width: 100%;
    }

    main.xy-services-page .hero-banner-module.svc-hero .product-series-banner__btn {
        width: auto;
        gap: 20px;
    }

    main.xy-services-page .hero-banner-module.svc-hero .product-series-banner__btn span {
        font-size: 14px;
        line-height: 20px;
    }
}

@media (min-width: 480px) and (max-width: 639.98px) {
    main.xy-services-page .hero-banner-module.svc-hero .hero-title {
        font-size: 24px;
        line-height: 1.2;
    }
}

@media (min-width: 640px) and (max-width: 767.98px) {
    main.xy-services-page .hero-banner-module.svc-hero .hero-title {
        font-size: 26px;
        line-height: 1.12;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    main.xy-services-page .hero-banner-module.svc-hero .hero-title {
        font-size: 30px;
        line-height: 1.12;
    }

    main.xy-services-page .hero-banner-module.svc-hero .hero-subtitle {
        font-size: 15px;
        line-height: 1.5;
    }
}

@media (min-width: 1366px) {
    main.xy-services-page .hero-banner-module.svc-hero .hero-title {
        font-size: 40px;
        line-height: 1.12;
    }

    main.xy-services-page .hero-banner-module.svc-hero .hero-subtitle {
        font-size: 16px;
        line-height: 1.5;
    }
}

@media (max-width: 1295.98px) {
    main.xy-services-page .modular-solutions-exclusive-v5.svc-solutions-modular .title-row-v5 {
        padding-block: 20px;
        padding-inline: 20px;
    }
}

@media (min-width: 1025px) and (max-width: 1365.98px) {
    main.xy-services-page .modular-solutions-exclusive-v5.svc-solutions-modular .title-row-v5 {
        padding-block: 40px;
        padding-inline: 32px;
    }
}

@media (min-width: 1366px) {
    main.xy-services-page .modular-solutions-exclusive-v5.svc-solutions-modular .title-row-v5 {
        padding-block: 50px;
        padding-inline-start: 40px;
        padding-inline-end: 40px;
    }
}

@media (max-width: 389.98px) {
    main.xy-services-page .svc-cs-block h3 {
        margin: 0 0 12px 0;
    }
}

@media (min-width: 390px) and (max-width: 429.98px) {
    main.xy-services-page .svc-cs-block h3 {
        margin: 0 0 14px 0;
    }
}

@media (min-width: 430px) and (max-width: 479.98px) {
    main.xy-services-page .svc-cs-block h3 {
        margin: 0 0 14px 0;
    }
}

@media (min-width: 480px) and (max-width: 639.98px) {
    main.xy-services-page .svc-cs-block h3 {
        margin: 0 0 16px 0;
    }
}

@media (min-width: 640px) and (max-width: 767.98px) {
    main.xy-services-page .svc-cs-block h3 {
        margin: 0 0 18px 0;
    }
}

@media (min-width: 768px) and (max-width: 1024px) {
    main.xy-services-page .svc-cs-block h3 {
        margin: 0 0 20px 0;
    }
}

@media (min-width: 1025px) and (max-width: 1365.98px) {
    main.xy-services-page .hero-banner-module.svc-hero .hero-title {
        font-size: 40px;
        line-height: 1.12;
    }

    main.xy-services-page .hero-banner-module.svc-hero .hero-subtitle {
        font-size: 16px;
        line-height: 1.5;
    }

    main.xy-services-page .hero-banner-module.svc-hero .hero-content {
        gap: 32px;
    }

    main.xy-services-page .svc-fm-process-title {
        font-size: 20px;
    }

    main.xy-services-page .svc-fm-item-title {
        font-size: 14px;
    }

    main.xy-services-page .svc-fm-item-subtitle {
        font-size: 14px;
        line-height: 1.45;
    }

    main.xy-services-page .svc-section-title {
        font-size: 20px;
        line-height: 1.2;
        padding: 42px 32px;
    }

    main.xy-services-page .modular-solutions-exclusive-v5.svc-solutions-modular .main-label-v5 {
        font-size: 20px;
        line-height: 1.2;
    }

    main.xy-services-page .modular-solutions-exclusive-v5.svc-solutions-modular .heading-v5 {
        font-size: 24px;
        line-height: 1.2;
    }

    main.xy-services-page .modular-solutions-exclusive-v5.svc-solutions-modular .para-v5 {
        font-size: 15px;
        line-height: 1.55;
    }

    main.xy-services-page .svc-cs-tabs {
        gap: 48px;
    }

    main.xy-services-page .svc-cs-tab {
        font-size: 20px;
        line-height: 1.2;
        padding: 22px 0;
    }

    main.xy-services-page .svc-cs-container {
        padding: 52px 32px 52px;
        gap: 64px;
    }

    main.xy-services-page .svc-cs-img-tooltip {
        font-size: 13px;
    }

    main.xy-services-page .svc-cs-block h3 {
        margin: 0 0 22px 0;
    }

    main.xy-services-page .svc-cs-block > p {
        font-size: 16px;
        line-height: 1.55;
    }

    main.xy-services-page .svc-cs-sub h4 {
        font-size: 18px;
        line-height: 1.3;
        flex: 0 0 168px;
    }

    main.xy-services-page .svc-cs-sub p {
        font-size: 14px;
        line-height: 1.55;
    }

    main.xy-services-page .svc-cs-param-name {
        font-size: 14px;
    }

    main.xy-services-page .svc-cs-param-val {
        font-size: 16px;
    }

    main.xy-services-page .svc-cs-contact-btn {
        font-size: 18px;
    }
}

@media (min-width: 1366px) and (max-width: 1512px) {
    main.xy-services-page .svc-cs-block h3 {
        margin: 0 0 24px 0;
    }
}

@media (min-width: 1513px) and (max-width: 1599.98px) {
    main.xy-services-page .svc-cs-block h3 {
        margin: 0 0 26px 0;
    }
}

@media (min-width: 1600px) {
    main.xy-services-page .svc-cs-block h3 {
        margin: 0 0 30px 0;
    }
}

@media (hover: hover) and (pointer: fine) {
    main.xy-services-page .hero-banner-module.svc-hero .product-series-banner__btn {
        transition: gap 0.25s ease, opacity 0.2s ease;
    }

    main.xy-services-page .svc-cs-block h3 {
        transition: margin-bottom 0.2s ease;
    }
}
