.container { width: 100%; max-width: 1120px; margin: 0 auto; }
.services-page { padding: var(--space-4) var(--space-3) var(--space-5); }
.services-page__head { margin-bottom: var(--space-3); }
.services-page__title { font-size: 1.5rem; font-weight: 800; margin-bottom: 4px; }
.services-page__intro { color: var(--color-text-secondary); font-size: var(--font-size-sm); }
.services-page__empty { padding: var(--space-5) 0; text-align: center; color: var(--color-text-secondary); }

/* ── ক্যাটাগরিতে লাফ দেওয়ার চিপ ── */
.services-jump {
    display: flex; gap: var(--space-2); overflow-x: auto; margin-bottom: var(--space-4);
    padding: 2px 0 6px; scrollbar-width: none;
}
.services-jump::-webkit-scrollbar { display: none; }
.services-jump__chip {
    flex: 0 0 auto; min-height: 36px; display: inline-flex; align-items: center; padding: 0 var(--space-3);
    border: 1px solid var(--color-border); border-radius: 999px; background: var(--color-bg);
    font-size: var(--font-size-sm); font-weight: 600; color: var(--color-text);
}
.services-jump__chip:hover, .services-jump__chip:focus-visible { border-color: var(--color-primary); color: var(--color-primary); }

/* ── ক্যাটাগরি ── */
.services-cat { padding: var(--space-3) 0 var(--space-4); border-top: 1px solid var(--color-border); scroll-margin-top: calc(var(--header-height, 60px) + 12px); }
.services-cat__head { display: flex; align-items: center; gap: var(--space-3); margin-bottom: var(--space-3); }
.services-cat__img {
    display: flex; align-items: center; justify-content: center; flex: 0 0 52px;
    width: 52px; height: 52px; border-radius: 12px; overflow: hidden;
    background: var(--color-bg-alt); border: 1px solid var(--color-border); font-size: 1.5rem;
}
.services-cat__img img { width: 100%; height: 100%; object-fit: cover; }
.services-cat__title { flex: 1; min-width: 0; font-size: var(--font-size-lg); font-weight: 800; }
.services-cat__all { flex-shrink: 0; font-size: var(--font-size-sm); font-weight: 700; color: var(--color-primary); }

/* ── নোড ও আইটেম ── */
.services-node + .services-node { margin-top: var(--space-3); }
.services-node__title { font-size: var(--font-size-sm); font-weight: 700; color: var(--color-text-secondary); margin-bottom: var(--space-2); }
.services-node__items { list-style: none; display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--space-2); margin: 0; padding: 0; }
.services-node__items a {
    display: flex; align-items: center; gap: 10px; min-height: 52px; padding: 8px var(--space-3) 8px 8px;
    border: 1px solid var(--color-border); border-radius: 10px; background: var(--color-bg);
    font-size: var(--font-size-sm); font-weight: 600; line-height: 1.3; color: var(--color-text);
}
.services-node__items a:hover, .services-node__items a:focus-visible { border-color: var(--color-primary); color: var(--color-primary); }

.services-item__thumb {
    display: flex; align-items: center; justify-content: center; flex: 0 0 36px;
    width: 36px; height: 36px; border-radius: 8px; overflow: hidden; background: var(--color-bg-alt);
}
.services-item__thumb img { width: 100%; height: 100%; object-fit: cover; }
.services-item__thumb--icon { font-size: 1.2rem; line-height: 1; }
.services-item__name { min-width: 0; }

@media (min-width: 768px) {
    .services-page { padding-top: 40px; }
    .services-page__title { font-size: 2rem; }
    .services-node__items { grid-template-columns: repeat(3, 1fr); }
}
@media (min-width: 1024px) {
    .services-node__items { grid-template-columns: repeat(4, 1fr); }
}