.related_subservices-layout {
    overflow: hidden; padding-bottom: 3.5rem;
}

.related_subservices-layout .image-col {
    position: relative;
    grid-row-start: 1;
    grid-row-end: 3;
    grid-column-start: 1;
    height: 100%;
}
.related_subservices-layout .image-col img {
    position: absolute;
    inset: 0;
    height: 100%;
    width: 100%;
    object-fit: cover;
}
.related_subservices-layout .content-col {
    grid-row: 1;
}
.related_subservices-layout .slider-col {
    position: relative;
    z-index: 5;
    grid-row: 2;
    grid-column-start: 1;
    margin-block: max(2rem, calc(3.5 * var(--su)))
        max(2rem, calc(2.5 * var(--su)));
    padding-left: max(1rem, calc(2.5 * var(--su)));
}

.related_subservices-layout .slider-col .swiper-slide {
    padding: max(1.5rem, calc(2.5 * var(--su)));
    color: #ffffff;
    background-color: var(--secondary-blue);
    min-height: 400px;
    height: auto;
}
.related_subservices-layout .swiper-slide.main-service {
    background-color: #ffffff;
    color: var(--text-color);
}
.related_subservices-layout .swiper-slide.main-service .service-card .service-title {
	font-weight: 400;
}
.related_subservices-layout .swiper-slide .service-card {
    display: flex;
    flex-direction: column;
    height: 100%;
}
.related_subservices-layout .swiper-slide.main-service .service-card > svg {
    fill: var(--deep-pine-100);
    width: 3em;
    height: auto;
}
.related_subservices-layout .swiper-slide .service-card {
    text-decoration: none;
    color: inherit;
}
.related_subservices-layout .swiper-slide .service-card > .service-title {
    margin-top: auto;
    color: inherit;
	font-weight: 800;
    margin-bottom: max(1rem, calc(1.5 * var(--su)));
}
.related_subservices-layout
    .swiper-slide.main-service
    .service-card
    > .service-title {
    margin-bottom: max(1rem, calc(1 * var(--su)));
}
.related_subservices-layout
    .swiper-slide.main-service
    .service-card
    > .pk-button-group {
    margin-top: max(1rem, calc(1.5 * var(--su)));
}

.related_subservices-layout .service-card .hover-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: max(40px, 2.5 * var(--su));
    aspect-ratio: 1;
    background-color: var(--primary-yellow);
    color: var(--text-color);
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    transition: opacity 0.2s ease;
}
.related_subservices-layout .service-card:not(:hover) .hover-icon {
    opacity: 0;
}
.related_subservices-layout .service-card .hover-icon > span {
    font-size: 1.25em;
    rotate: -45deg;
    display: block;
}

.related_subservices-layout .swiper-progress {
    max-width: 45%;
	width: 100%;
    margin-inline: auto;
    position: absolute;
	left: 50%;
	translate: -50% 0;
    height: 1px;
    bottom: -4.5rem;
    background-color: var(--deep-pine-10);
}
.related_subservices-layout .swiper-progress-bar {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 2;
    height: 1px;
    background-color: var(--deep-pine-100);
    width: 5%;
}

@media screen and (min-width: 993px) {
    .related_subservices-layout .content-col {
        padding-top: calc(2 * var(--su));
        padding-left: calc(3 * var(--su));
    }

    .related_subservices-layout .slider-col .swiper-slide {
        max-width: calc(((100% - (3 * var(--pk-column-gap))) / 4));
    }
    .related_subservices-layout .swiper-slide.main-service {
        max-width: calc(((100% - (2 * var(--pk-column-gap))) / 3));
    }
}

@media screen and (max-width: 767px) {
    .related_subservices-layout .content-col {
        margin-bottom: 1.5rem;
    }
    .related_subservices-layout .slider-col {
        padding-left: 1.5rem;
    }
    .related_subservices-layout .image-col {
        grid-row-start: 2;
        grid-row-end: 4;
    }
}
