.service-header, .service-footer { display: flex; justify-content: space-between; align-items: center; gap: 1.5rem; max-width: 78rem; margin: auto; padding: 1.5rem 2rem; border-bottom: 1px solid var(--line-dark); }
.service-page { max-width: 58rem; margin: auto; padding: 3rem 2rem 5rem; }
.service-page nav { color: var(--muted); font-size: .9rem; margin-bottom: 3rem; }
.service-page h1 { font-size: clamp(2.3rem, 6vw, 4.8rem); line-height: 1.06; letter-spacing: -.045em; }
.service-lead { font-size: 1.25rem; }
.service-page p { color: #c9c6bc; line-height: 1.75; }
.service-page .service-price { color: var(--acid); font-size: 1.5rem; }
.service-page section { margin-top: 3.5rem; padding-top: 1.5rem; border-top: 1px solid var(--line-dark); }
.service-page h2 { font-size: clamp(1.5rem, 4vw, 2.2rem); line-height: 1.2; }
.service-page details { padding: 1rem 0; border-bottom: 1px solid var(--line-dark); }
.service-page summary { cursor: pointer; font-weight: 600; }
.service-page .related-services { display: grid; gap: 1rem; margin: 3rem 0 0; }
.service-page nav a, .service-footer a { text-decoration: underline; text-underline-offset: .2em; }
.service__body > .text-button { display: inline-block; margin-bottom: 1rem; }
@media (max-width: 600px) { .service-header, .service-footer { padding: 1.25rem; flex-wrap: wrap; } .service-page { padding: 2rem 1.25rem 3rem; } }

