.service-feature { padding: 1rem 1.5rem; background: #fff; }
.service-feature__inner { max-width: 1220px; margin-inline: auto; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); align-items: center; gap: clamp(2rem, 4vw, 4.75rem); }
.service-feature__media { position: relative; min-width: 0; }
.service-feature__media img { display: block; width: 100%; aspect-ratio: 1.85; object-fit: cover; border-radius: 20px; }
.service-feature__badge { position: absolute; top: -4px; left: -5px; padding: .25rem .6rem; border-radius: 10px; background: #1252ff; color: #fff; font-size: 1.5rem; font-weight: 700; line-height: 1.4; }
.service-feature__text { min-width: 0; overflow-wrap: anywhere; }
.service-feature__text h2 { margin: 0 0 1.15rem; color: var(--feature-title-color, #0d1455); font-size: clamp(1.4rem, 1.75vw, 1.7rem); font-weight: 700; line-height: 1.2; }
.service-feature__text p { margin: 0 0 1rem; color: #374151; font-size: 1rem; line-height: 1.6; }
.service-feature__text p:last-child { margin-bottom: 0; }
.service-feature--image-right .service-feature__media { grid-column: 2; grid-row: 1; }
.service-feature--image-right .service-feature__text { grid-column: 1; grid-row: 1; }
.service-feature--image-right .service-feature__badge { left: auto; right: -5px; }
.service-feature--text-only .service-feature__inner { grid-template-columns: minmax(0, 1fr); }
@media (max-width: 767.98px) {
    .service-feature { padding: 1.5rem 1.25rem; }
    .service-feature__inner { grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }
    .service-feature--image-right .service-feature__media,
    .service-feature--image-right .service-feature__text { grid-column: auto; grid-row: auto; }
    .service-feature__badge { font-size: 1.25rem; }
}
