/* DNAP Enterprise v6.5.0 — defensive Elementor typography/layout recovery. */
body.dnap-native-layout-guard .elementor,
body.dnap-native-layout-guard .elementor * {
  box-sizing: border-box;
}

body.dnap-native-layout-guard .elementor .e-con,
body.dnap-native-layout-guard .elementor .e-con-inner,
body.dnap-native-layout-guard .elementor .elementor-element,
body.dnap-native-layout-guard .elementor .elementor-widget,
body.dnap-native-layout-guard .elementor .elementor-widget-container {
  min-width: 0;
  max-width: 100%;
}

body.dnap-native-layout-guard .elementor .elementor-widget-heading,
body.dnap-native-layout-guard .elementor .elementor-widget-text-editor,
body.dnap-native-layout-guard .elementor .elementor-widget-icon-box,
body.dnap-native-layout-guard .elementor .elementor-widget-icon-list,
body.dnap-native-layout-guard .elementor .elementor-widget-counter {
  height: auto;
  min-height: 0;
}

body.dnap-native-layout-guard .elementor .elementor-heading-title {
  margin: 0;
  padding: 0;
  line-height: 1.18;
  overflow-wrap: anywhere;
  word-break: normal;
}

body.dnap-native-layout-guard .elementor .elementor-widget-text-editor,
body.dnap-native-layout-guard .elementor .elementor-widget-text-editor p,
body.dnap-native-layout-guard .elementor .elementor-widget-text-editor li {
  line-height: 1.72;
  overflow-wrap: anywhere;
  word-break: normal;
}

body.dnap-native-layout-guard .elementor .elementor-widget-text-editor p {
  margin-top: 0;
  margin-bottom: 1em;
}
body.dnap-native-layout-guard .elementor .elementor-widget-text-editor p:last-child {
  margin-bottom: 0;
}

body.dnap-native-layout-guard .elementor .elementor-icon-box-title {
  margin: 0 0 10px;
  line-height: 1.28;
  overflow-wrap: anywhere;
}
body.dnap-native-layout-guard .elementor .elementor-icon-box-description {
  margin: 0;
  line-height: 1.65;
  overflow-wrap: anywhere;
}
body.dnap-native-layout-guard .elementor .elementor-icon-list-item,
body.dnap-native-layout-guard .elementor .elementor-icon-list-text {
  line-height: 1.5;
}

/* Elementor Counter fallback. Elementor 4.x may omit widget-counter.min.css
   when page JSON is written programmatically. This makes existing counters safe. */
body.dnap-native-layout-guard .elementor .elementor-widget-counter .elementor-counter {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 9px !important;
  width: 100%;
  min-height: 98px;
  position: relative !important;
  text-align: center;
}
body.dnap-native-layout-guard .elementor .elementor-widget-counter .elementor-counter-number-wrapper {
  order: 1;
  display: flex !important;
  align-items: baseline !important;
  justify-content: center !important;
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  position: static !important;
  transform: none !important;
  white-space: nowrap;
  font-size: 38px;
  font-weight: 700;
  line-height: 1 !important;
}
body.dnap-native-layout-guard .elementor .elementor-widget-counter .elementor-counter-number,
body.dnap-native-layout-guard .elementor .elementor-widget-counter .elementor-counter-number-prefix,
body.dnap-native-layout-guard .elementor .elementor-widget-counter .elementor-counter-number-suffix {
  display: inline-block !important;
  position: static !important;
  transform: none !important;
  line-height: 1 !important;
}
body.dnap-native-layout-guard .elementor .elementor-widget-counter .elementor-counter-title {
  order: 2;
  display: block !important;
  width: 100%;
  min-height: 2.7em;
  margin: 0 !important;
  padding: 0 !important;
  position: static !important;
  transform: none !important;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.35 !important;
  text-align: center;
  overflow-wrap: anywhere;
}

/* New dependency-free statistic cards generated by v6.5.0. */
body.dnap-native-layout-guard .elementor .dnap-native-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 98px;
  text-align: center;
}
body.dnap-native-layout-guard .elementor .dnap-native-stat .elementor-widget-heading,
body.dnap-native-layout-guard .elementor .dnap-native-stat .elementor-heading-title {
  width: 100%;
  margin: 0;
  line-height: 1.15;
}

body.dnap-native-layout-guard .elementor .elementor-button {
  min-height: 46px;
  white-space: normal;
}
body.dnap-native-layout-guard .elementor .elementor-button-content-wrapper,
body.dnap-native-layout-guard .elementor .elementor-button-text {
  line-height: 1.3;
  text-align: center;
  white-space: normal;
}

body.dnap-native-layout-guard .elementor .elementor-post__title,
body.dnap-native-layout-guard .elementor .elementor-post__excerpt,
body.dnap-native-layout-guard .elementor .elementor-post__read-more {
  overflow-wrap: anywhere;
  word-break: normal;
}

@media (max-width: 1024px) {
  body.dnap-native-layout-guard .elementor .elementor-heading-title { line-height: 1.2; }
  body.dnap-native-layout-guard .elementor .elementor-widget-counter .elementor-counter-title { min-height: 0; }
}

@media (max-width: 767px) {
  body.dnap-native-layout-guard .elementor .elementor-widget-counter .elementor-counter-number-wrapper { font-size: 34px; }
  body.dnap-native-layout-guard .elementor .elementor-widget-counter .elementor-counter-title { font-size: 14px; }
  body.dnap-native-layout-guard .elementor .elementor-button-wrapper,
  body.dnap-native-layout-guard .elementor .elementor-button { width: 100%; }
  body.dnap-native-layout-guard .elementor .dnap-native-card { width: 100% !important; }
}

/* v6.5 staged native conversion manager */
body.dnap-native-sitewide-page .dnap-native-page-hero > .e-con-inner,
body.dnap-native-sitewide-page .dnap-native-section > .e-con-inner {
  width: min(1240px, calc(100% - 40px));
  margin-inline: auto;
}
body.dnap-native-sitewide-page .dnap-native-rtl,
body.dnap-native-sitewide-page .dnap-native-rtl .elementor-widget-container {
  direction: rtl;
  text-align: right;
}
body.dnap-native-catalog-page.dnap-catalog-lang-en .dnap-lang-ar-only,
body.dnap-native-catalog-page.dnap-catalog-lang-ar .dnap-lang-en-only {
  display: none !important;
}
body.dnap-native-catalog-page.dnap-catalog-lang-ar .dnap-lang-ar-only {
  direction: rtl;
  text-align: right;
}
body.dnap-native-catalog-page .dnap-native-dynamic-catalog .dnapx-shell,
body.dnap-native-catalog-page .dnap-elementor-assessment-catalog {
  width: 100%;
  max-width: 100%;
}
@media (max-width: 767px) {
  body.dnap-native-sitewide-page .dnap-native-page-hero > .e-con-inner,
  body.dnap-native-sitewide-page .dnap-native-section > .e-con-inner {
    width: min(100% - 28px, 1240px);
  }
}
