/* Final repairs: natural Persian text flow, stable services navigation, visible empty states. */
.site-main :is(h1,h2,h3,h4,p,li,a,span) {
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
  text-wrap: normal;
}
.page-banner__title,
.services-page .service-group__title,
.services-page .group-nav a > span:not(.group-nav__number),
.home-services .service-card .card__title {
  max-width: none;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
  text-wrap: normal;
}

/* Keep the four long Persian category labels whole, never split within a word. */
.services-page .group-nav ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.services-page .group-nav li { min-width: 0; }
.services-page .group-nav a { display: flex; flex-wrap: nowrap; justify-content: flex-start; gap: .55rem; min-width: 0; white-space: nowrap; }
.services-page .group-nav a > span:not(.group-nav__number) { flex: 0 1 auto; width: auto; white-space: nowrap; }
.services-page .group-nav a > .icon:last-child { margin-inline-start: auto; }
.services-page .service-group__title { max-width: none; width: 100%; font-size: clamp(1.05rem, .96rem + .3vw, 1.24rem); line-height: 1.75; white-space: nowrap; }
.services-page .service-group__intro { min-width: 0; }

/* The small-screen navigator is a horizontally scrolling set of single-line choices. */
@media (max-width: 700px) {
  .services-page .group-nav { overflow-x: auto; overflow-y: hidden; overscroll-behavior-inline: contain; scrollbar-width: thin; }
  .services-page .group-nav ul { display: flex; width: max-content; min-width: 100%; }
  .services-page .group-nav li { flex: 0 0 auto; }
  .services-page .group-nav a { min-height: 48px; }
}

/* Helpful, non-empty state for real teams/projects still awaiting approved content. */
.home-empty-state { display: grid; grid-template-columns: 48px minmax(0,1fr) auto; gap: 1rem; align-items: center; padding: clamp(1rem, 2.5vw, 1.5rem); border: 1px solid var(--fk-line); border-radius: 16px; background: rgba(255,255,255,.78); }
.home-empty-state__icon { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; background: #edf5f4; color: var(--fk-primary); }
.home-empty-state h3 { margin: 0 0 .25rem; color: var(--fk-ink); font-size: 1.05rem; line-height: 1.7; }
.home-empty-state p { margin: 0; color: var(--fk-dim); font-size: .92rem; line-height: 1.8; }
.empty-state { max-width: 760px; margin-inline: auto; padding: clamp(1.5rem, 4vw, 3rem); border: 1px solid var(--fk-line); border-radius: 18px; background: #fff; box-shadow: var(--fk-card-shadow); }
.empty-state h2 { margin-block: .75rem .35rem; color: var(--fk-ink); font-size: clamp(1.25rem, 1.1rem + .6vw, 1.7rem); line-height: 1.65; }
.empty-state p { max-width: 62ch; margin-inline: auto; color: var(--fk-dim); line-height: 1.9; text-align: center; }
.empty-state .btn { margin-block-start: .4rem; }

@media (max-width: 700px) {
  .home-empty-state { grid-template-columns: 40px minmax(0,1fr); gap: .8rem; }
  .home-empty-state__icon { width: 40px; height: 40px; }
  .home-empty-state > .btn { grid-column: 1 / -1; justify-self: start; }
  .services-page .service-group__title { font-size: .94rem; }
}
