.header {
    position: relative;
}

.services-page {
    margin: 0.5rem auto;
    box-sizing: border-box;
}

.services-page .page-title {
    width: fit-content;
    font-weight: 400;
    text-align: center;
    font-size: 50px;
    margin: 1rem auto;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

.service {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    align-items: center;
    padding: 2rem 4rem;
}

.service .media img {
    width: 100%;
    height: 360px;
    object-fit: cover;
    border-radius: 12px;
    box-shadow: 0 8px 20px rgba(0,0,0,0.06);
    display: block;
}

.service .content h2 {
    margin: 0 0 0.5rem 0;
    font-size: 32px;
    font-weight: 400;
}

.service.reverse {
    background: var(--bg-sec);
}

.service .content p { margin: 0 0 1rem 0; color: #333; line-height: 1.6; }

.checklist { list-style: none; padding: 0; margin: 0; display: grid; gap: 0.5rem; }
.checklist li { padding-left: 1.1rem; position: relative; }
.checklist li::before {
    content: '';
    display: inline-block;
    width: 1.05em;
    height: 1.05em;
    margin: 0 0.5em 0em -1.05em;
    vertical-align: middle;
    -webkit-mask: url('/img/checkmark.svg') no-repeat center / contain;
    mask: url('/img/checkmark.svg') no-repeat center / contain;
    background-color: var(--prim);
}

.service.reverse { grid-template-columns: 1fr 1fr; }
.service.reverse .media { order: 2; }
.service.reverse .content { order: 1; }

@media (max-width: 900px) {

    .service, .service.reverse { 
        grid-template-columns: 1fr;
        padding-left: 1.5rem;
        padding-right: 1.5rem;
        gap: 1rem;
    }
    .service.reverse > .media {
        order: 1;
    }
    .service.reverse > .content {
        order: 2;
    }
    .service .media img { height: 220px; }
}
