/* Visual identity tokens for Elementor-native homepage elements. */
.ialms-native-home {
  --ia-navy: #0a3e7b;
  --ia-blue: #0f5496;
  --ia-green: #0eaa72;
  --ia-ink: #132a45;
  --ia-muted: #64748b;
  --ia-soft: #f7faf7;
  --ia-warm: #fbfbf8;
  --ia-line: #dfebe6;
  color: var(--ia-ink);
  font-family: Vazirmatn, Tahoma, Arial, sans-serif;
}

.ialms-native-home .elementor-heading-title,
.ialms-native-home .elementor-widget-text-editor,
.ialms-native-home .elementor-button,
.ialms-native-home .ialms-course-card {
  font-family: Vazirmatn, Tahoma, Arial, sans-serif;
}

.ialms-native-home .ialms-native-kicker .elementor-heading-title,
.ialms-native-home .ialms-native-kicker,
.ialms-native-home .ialms-eyebrow {
  color: var(--ia-green);
  font-weight: 800;
  letter-spacing: 0;
}

.ialms-native-home .ialms-native-section-title .elementor-heading-title,
.ialms-native-home .ialms-native-section-copy h2,
.ialms-native-home .ialms-native-experience h2,
.ialms-native-home .ialms-native-services h2,
.ialms-native-home .ialms-native-journey h2,
.ialms-native-home .ialms-native-faq h2,
.ialms-native-home .ialms-native-consultation h2,
.ialms-native-home .ialms-native-final h2 {
  color: var(--ia-navy);
  font-weight: 900;
}

.ialms-native-home .elementor-widget-text-editor p,
.ialms-native-home .elementor-widget-text-editor li {
  color: var(--ia-muted);
  line-height: 2;
}

.ialms-native-home .ialms-native-primary .elementor-button,
.ialms-native-home .ialms-native-final .ialms-native-primary .elementor-button,
.ialms-native-home .ialms-native-mobile-menu-cta {
  background: var(--ia-navy);
  color: #fff;
  box-shadow: 0 12px 24px -16px rgba(10, 62, 123, .9);
}

.ialms-native-home .ialms-native-primary .elementor-button:hover,
.ialms-native-home .ialms-native-final .ialms-native-primary .elementor-button:hover,
.ialms-native-home .ialms-native-mobile-menu-cta:hover {
  background: var(--ia-blue);
  color: #fff;
}

.ialms-native-home .ialms-native-secondary .elementor-button {
  border: 1px solid var(--ia-line);
  background: #fff;
  color: var(--ia-navy);
}

.ialms-native-home .ialms-native-secondary .elementor-button:hover {
  border-color: var(--ia-green);
  color: var(--ia-green);
}

.ialms-native-home .ialms-native-topic-card > .elementor-column-wrap,
.ialms-native-home .ialms-native-service-card > .elementor-column-wrap,
.ialms-native-home .ialms-native-consult-form > .elementor-column-wrap {
  border-color: var(--ia-line);
}

.ialms-native-home .ialms-native-topic-card.is-green > .elementor-column-wrap {
  background: #effbf6;
  border-color: #bcebd8;
}

.ialms-native-home .ialms-native-topic-card.is-amber > .elementor-column-wrap {
  background: #fff9ef;
  border-color: #f3ddb2;
}

.ialms-native-home .ialms-native-courses-catalog .ialms-course-card {
  border-color: var(--ia-line);
  box-shadow: 0 18px 42px -34px rgba(10, 62, 123, .38);
}

.ialms-native-home .ialms-native-courses-catalog .ialms-course-card:nth-child(1) { border-top: 4px solid var(--ia-navy); }
.ialms-native-home .ialms-native-courses-catalog .ialms-course-card:nth-child(2) { border-top: 4px solid var(--ia-green); }
.ialms-native-home .ialms-native-courses-catalog .ialms-course-card:nth-child(3) { border-top: 4px solid #d8912b; }
.ialms-native-home .ialms-native-courses-catalog .ialms-course-card h3 a,
.ialms-native-home .ialms-native-courses-catalog .ialms-link { color: var(--ia-navy); }
.ialms-native-home .ialms-native-courses-catalog .ialms-button { background: var(--ia-navy); color: #fff; }

.ialms-native-home .ialms-native-journey,
.ialms-native-home .ialms-native-final {
  background: var(--ia-navy);
}

.ialms-native-home .ialms-native-journey h2,
.ialms-native-home .ialms-native-journey p,
.ialms-native-home .ialms-native-final h2,
.ialms-native-home .ialms-native-final p { color: #fff; }

.ialms-native-home .ialms-native-journey .ialms-native-kicker { color: #82e4bd; }

@media (max-width: 820px) {
  .ialms-native-home .elementor-heading-title { letter-spacing: -.35px; }
  .ialms-native-home .ialms-native-section-title .elementor-heading-title { font-size: 32px; line-height: 1.35; }
}
