.services-introduction { padding-top: 32px; }
.services-introduction .article { max-width: 1040px; margin-inline: 0; font-size: 17px; line-height: 1.8; color: var(--ink-700); }
.services-introduction .article p:last-child { margin-bottom: 0; }
.services-catalogue { padding-block: 40px 48px; }
.services-catalogue__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.services-card { min-width: 0; display: flex; flex-direction: column; padding: 32px; border: 1px solid var(--ink-100); border-radius: var(--radius); background: #fff; overflow-wrap: anywhere; }
.services-card__top { display: flex; align-items: center; gap: 16px; margin-bottom: 20px; }
.services-card__number { font-weight: 600; color: var(--green-700); font-size: 13px; }
.services-card__category { font-size: 13px; color: var(--ink-500); }
.services-card h2 { font-size: clamp(24px, 2.4vw, 32px); line-height: 1.25; margin-bottom: 16px; }
.services-card__description { font-size: 16px; line-height: 1.8; color: var(--ink-700); margin-bottom: 24px; }
.services-card__description p:last-child { margin-bottom: 0; }
.services-card > .btn { align-self: flex-start; margin-top: auto; white-space: normal; text-align: left; }
.services-card--primary { background: var(--green-900); border-color: var(--green-900); }
.services-card--primary h2 { color: #fff; }
.services-card--primary .services-card__description { color: #e6f3ea; }
.services-card--primary .services-card__category { color: #d2e9db; }
.services-card--primary .services-card__number { color: var(--lime-300); }
.services-card--primary > .btn { background: #fff; color: var(--green-900); }
.services-card--primary > .btn:hover { background: var(--green-100); }
.services-diagnosis { padding-bottom: 64px; }
.services-diagnosis__panel { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding: 32px; border-radius: var(--radius); background: var(--green-50); border: 1px solid var(--ink-100); }
.services-diagnosis__panel > div { max-width: 720px; min-width: 0; }
.services-diagnosis h2 { font-size: clamp(26px, 3vw, 36px); line-height: 1.2; margin-bottom: 16px; }
.services-diagnosis p { margin: 0; font-size: 16px; line-height: 1.7; color: var(--ink-700); }
.services-diagnosis .btn { flex-shrink: 0; white-space: normal; }
[data-page="services"] .site-footer { margin-top: 0; }
@media (max-width: 700px) {
  .services-catalogue__grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .services-card { padding: 24px; }
  .services-catalogue { padding-block: 32px 40px; }
  .services-diagnosis__panel { flex-direction: column; align-items: flex-start; padding: 24px; gap: 24px; }
  .services-diagnosis { padding-bottom: 40px; }
}
