/* Natural Persian wrapping: break only at real word boundaries, never balance or stretch. */
.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 .card__title,
.services-page .group-nav a > span,
.home-services .section-title,
.home-services .service-card .card__title {
  max-width: none;
  white-space: normal;
  word-break: normal;
  overflow-wrap: normal;
  hyphens: none;
  text-wrap: normal;
}
.services-page .service-group__intro { min-width: 0; }
.services-page .service-group__title { width: 100%; font-size: clamp(1.05rem, .97rem + .36vw, 1.28rem); line-height: 1.7; }
.services-page .service-group__desc { max-width: none; }
.services-page .group-nav a > span:not(.group-nav__number) { width: auto; }
.services-page .service-group .check-list li > span,
.services-page .service-group .check-list li > a { overflow-wrap: normal; }

/* Full-width Elementor content has no theme reading-column or card constraints. */
.site-main { overflow: visible; }
.site-main .entry-content--full,
.site-main .elementor-compatible-content { width: 100%; max-width: none; margin: 0; padding: 0; }
.site-main .entry-content--full > .elementor { width: 100%; max-width: none; margin: 0; padding: 0; }
.elementor-page .container--narrow { max-width: var(--fk-container); }
.elementor-page .content-article { width: 100%; max-width: none; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.elementor-page .content-article .entry-content { width: 100%; max-width: none; margin: 0; padding: 0; }
.elementor-page .elementor,
.elementor-page .elementor-section-wrap,
.elementor-page .elementor-top-section { max-width: 100%; }
.elementor .elementor-widget-text-editor,
.elementor .elementor-widget-text-editor p { text-align: start; word-break: normal; overflow-wrap: normal; hyphens: none; }
.elementor .elementor-heading-title { word-break: normal; overflow-wrap: normal; hyphens: none; text-wrap: normal; }
.elementor img { max-width: 100%; height: auto; }

@media (max-width: 980px) {
  .services-page .service-group__title { font-size: clamp(1.08rem, 1rem + .45vw, 1.3rem); }
}
@media (max-width: 700px) {
  .services-page .service-group__title { width: 100%; font-size: 1.12rem; }
  .services-page .group-nav a > span:not(.group-nav__number) { white-space: normal; }
}
