.service-hero { padding: 32px 0 64px; border-bottom: 1px solid var(--c-line); }
.service-hero__eyebrow {
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.25em;
    color: var(--c-text-2);
    margin-bottom: 20px;
}
.service-hero__title {
    font-size: clamp(28px, 5vw, 56px);
    line-height: 1.15;
    letter-spacing: 0.01em;
}
.service-hero__short {
    margin-top: 24px;
    max-width: 580px;
    font-size: 16px;
    color: var(--c-text-3);
    line-height: 1.85;
}

.service-about__grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 24px;
}
.service-about__label {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.28em;
    color: var(--c-text-2);
}
.service-about__body { font-size: 15px; color: var(--c-text-3); line-height: 1.9; }
.service-about__body p { margin-bottom: 16px; }
.service-about__body p:last-child { margin-bottom: 0; }

.service-about__body h3 {
    margin: 28px 0 12px;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.18em;
    color: var(--c-text);
}
.service-about__body ul { margin: 0; padding: 0; list-style: none; }
.service-about__body li {
    position: relative;
    padding-left: 18px;
    margin-bottom: 8px;
}
.service-about__body li::before {
    content: '—';
    position: absolute;
    left: 0;
    color: var(--c-text-2);
}
.service-about__body li:last-child { margin-bottom: 0; }

.service-steps {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
}
.step { display: flex; gap: 16px; background: var(--c-bg-alt); padding: 20px; }
.step__num { font-size: 13px; color: var(--c-text-2); min-width: 20px; }
.step__title { font-size: 14px; font-weight: 500; color: var(--c-text); }
.step__desc { font-size: 13px; color: var(--c-text-3); line-height: 1.7; margin-top: 6px; }

.service-related__grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
}
.related-card {
    position: relative;
    display: block;
    aspect-ratio: 4 / 3;
    overflow: hidden;
}
.related-card__img { width: 100%; height: 100%; object-fit: cover; }
.related-card:hover .related-card__img { filter: grayscale(0%); transform: scale(1.04); }
.related-card__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(20, 20, 18, 0.75) 0%, rgba(20, 20, 18, 0.1) 55%, transparent 100%);
}
.related-card__caption {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.related-card__meta {
    font-size: 10px;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: rgba(242, 241, 238, 0.55);
}
.related-card__title { font-size: clamp(13px, 2vw, 18px); color: #f2f1ee; }

.services-cta { background: var(--c-bg-alt); padding: 56px 0; }
.services-cta__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 32px;
    flex-wrap: wrap;
}
.services-cta__text { font-size: clamp(20px, 2.5vw, 32px); max-width: 520px; }
.service-back .link-back { display: inline-block; }

.service-process .section__title { margin-bottom: 16px; }
.service-process__subtitle {
    max-width: 560px;
    margin: 0 0 40px;
    color: var(--c-text-3);
    font-size: 15px;
    line-height: 1.85;
}

@media (min-width: 768px) {
    .service-about__grid { grid-template-columns: 200px 1fr; gap: 64px; }
    .service-steps { grid-template-columns: repeat(2, 1fr); }
    .service-related__grid { grid-template-columns: repeat(2, 1fr); gap: 24px; }
}
@media (min-width: 1024px) {
    .service-steps { grid-template-columns: repeat(3, 1fr); }
    .service-related__grid { grid-template-columns: repeat(3, 1fr); }
}
