.home-services {
    width: 100%;
    background: var(--color-light);
}

.home-services-inner {
    width: 100%;
    max-width: var(--content-width);
    margin: 0 auto;
}

.home-services-header {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 100%;

    padding: 22px 40px;

    background: var(--color-dark);
    color: var(--color-light);
}

.home-services-header h2 {
    margin: 0;

    font-size: var(--font-size-heading);
    font-weight: var(--font-extra-bold);
    line-height: 1.1;

    text-transform: uppercase;
}


/* -------------------------------------------------
   SERVICE ROW
------------------------------------------------- */

.home-service {
    display: grid;
    grid-template-columns: 1fr 1fr;

    width: 100%;
}


/* -------------------------------------------------
   MEDIA
------------------------------------------------- */

.home-service-media {
    position: relative;

    width: 100%;
    aspect-ratio: 16 / 9;

    overflow: hidden;

    background: var(--color-dark);
}

.home-service-poster,
.home-service-video {
    position: absolute;

    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
}

.home-service-poster {
    z-index: 1;
}

.home-service-video {
    z-index: 2;

    opacity: 0;

    pointer-events: none;

    transition: opacity 0.15s ease;
}

.home-service-media.is-previewing .home-service-video {
    opacity: 1;
}


/* -------------------------------------------------
   TEXT
------------------------------------------------- */

.home-service-content {
    display: flex;
    flex-direction: column;
    justify-content: center;

    padding: 50px;
}

.home-service-content h3 {
    margin: 0 0 25px;

    color: var(--color-dark);

    font-size: var(--font-size-heading);
    font-weight: var(--font-extra-bold);
    line-height: 1.1;

    text-transform: uppercase;
}

.home-service-content p {
    margin: 0;

    color: var(--color-dark);

    font-size: var(--font-size-body);
    font-weight: var(--font-regular);
    line-height: 1.7;

    text-align: left;
}


/* -------------------------------------------------
   DESKTOP ORDER
------------------------------------------------- */

.home-service-media-left .home-service-media {
    grid-column: 1;
}

.home-service-media-left .home-service-content {
    grid-column: 2;
}

.home-service-media-right .home-service-media {
    grid-column: 2;
    grid-row: 1;
}

.home-service-media-right .home-service-content {
    grid-column: 1;
    grid-row: 1;
}


/* -------------------------------------------------
   MOBILE
------------------------------------------------- */

@media screen and (max-width: 700px) {

    .home-services-inner {
        width: 100%;
    }

    .home-services-header {
        padding: 18px 20px;
    }

    .home-services-header h2 {
        font-size: 20px;
    }

    .home-service {
        display: flex;
        flex-direction: column;
    }

    /*
     * Mobile order:
     *
     * TITLE
     * MEDIA
     * DESCRIPTION
     */

    .home-service-content {
        display: contents;
    }

    .home-service-content h3 {
        order: 1;

        margin: 0;

        padding: 30px 20px 20px;

        font-size: 24px;
    }

    .home-service-media {
        order: 2;

        width: 100%;
        aspect-ratio: 16 / 9;
    }

    .home-service-content p {
        order: 3;

        padding: 25px 20px 45px;

        font-size: var(--font-size-body);
        line-height: 1.7;

        text-align: left;
    }

}