/* Style for main mobile menu items */
@media (max-width: 768px) {
  .nv-mobile-menu ul li > a {
    color: #ffffff;
    background-color: #1a1a1a;
  }

  /* Style for submenu items inside mobile menu */
  .nv-mobile-menu ul.sub-menu li > a {
    color: #000000;
    background-color: #f5f5f5;
    padding-left: 25px;
  }

  /* Hover effect for submenu */
  .nv-mobile-menu ul.sub-menu li > a:hover {
    color: #ff6600;
    background-color: #e0e0e0;
  }
}

/* Clean site footer: useful widgets + focused link row */
.site-footer {
  background: #24323a !important;
}

.site-footer .footer-top {
  display: block !important;
  background: #24323a !important;
  color: #f7fbfb !important;
  padding: 34px 0 24px !important;
  border-bottom: 1px solid rgba(255,255,255,.16);
}

.site-footer .footer-top .widget,
.site-footer .footer-top p,
.site-footer .footer-top li {
  color: #f7fbfb !important;
  font-size: 15px;
  line-height: 1.65;
}

.site-footer .footer-top strong {
  color: #ffffff !important;
  font-weight: 700;
}

.site-footer .footer-top ul {
  margin: 0;
  padding-left: 0;
  list-style: none;
}

.site-footer .footer-top li:first-child {
  margin-bottom: 8px;
  font-size: 16px;
}

.site-footer .footer-top .hfg-grid {
  gap: 22px;
}

.site-footer .footer-bottom {
  display: block !important;
  background: #1b272d !important;
  color: #f7fbfb !important;
  padding: 14px 0 !important;
}

.site-footer .footer-bottom .hfg-grid {
  align-items: center;
  gap: 10px;
}

.site-footer .footer-bottom .builder-item--footer-menu,
.site-footer .footer-bottom .nav-menu-footer {
  width: 100%;
}

.site-footer .footer-bottom .builder-item--footer-copyright {
  display: none !important;
}

.site-footer .footer-bottom #footer-menu {
  display: flex !important;
  flex-wrap: wrap;
  gap: 10px 18px;
  justify-content: center;
  margin: 0;
  padding: 0;
}

.site-footer .footer-bottom #footer-menu li {
  display: none !important;
  margin: 0 !important;
}

.site-footer .footer-bottom #footer-menu li:has(a[href$="/about/"]),
.site-footer .footer-bottom #footer-menu li:has(a[href$="/courses-coming-soon/"]),
.site-footer .footer-bottom #footer-menu li:has(a[href$="/blogs/"]),
.site-footer .footer-bottom #footer-menu li:has(a[href$="/contact/"]),
.site-footer .footer-bottom #footer-menu li:has(a[href$="/advanced-epidemiology-courses/"]),
.site-footer .footer-bottom #footer-menu li:has(a[href$="/biostatistics-course/"]),
.site-footer .footer-bottom #footer-menu li:has(a[href$="/statistical-analysis-using-r-and-python/"]),
.site-footer .footer-bottom #footer-menu li:has(a[href$="/spatial-epidemiology-and-gis-mapping/"]) {
  display: inline-flex !important;
}

.site-footer .footer-bottom #footer-menu a {
  color: #f7fbfb !important;
  text-decoration: none;
  font-size: 14px;
  line-height: 1.4;
  opacity: .92;
}

.site-footer .footer-bottom #footer-menu a:hover {
  color: #8bd6cc !important;
  opacity: 1;
}

@media (max-width: 768px) {
  .site-footer .footer-top {
    text-align: left;
    padding: 28px 18px 22px !important;
  }

  .site-footer .footer-bottom #footer-menu {
    justify-content: flex-start;
    padding: 0 18px;
  }
}


.site-footer .footer-bottom .builder-item.cr {
  display: none !important;
}


.site-footer .footer-bottom #footer-menu li:has(a[href$="/advanced-epidemiology-pathway/"]) {
  display: inline-flex !important;
}

/* Footer cleanup: keep only the top footer, remove boxed look and lower rows */
.site-footer,
.site-footer .footer-top,
.site-footer .footer-top-inner {
  background: #24323a !important;
}

.site-footer .footer-main,
.site-footer .footer-bottom {
  display: none !important;
  height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
}

.site-footer .footer-top {
  display: block !important;
  color: #f7fbfb !important;
  padding: 36px 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}

.site-footer .footer-top .hfg-grid,
.site-footer .footer-top .row--wrapper {
  gap: 28px !important;
  align-items: start !important;
}

.site-footer .footer-top .item--inner,
.site-footer .footer-top .widget,
.site-footer .footer-top .widget-area,
.site-footer .footer-top .builder-item {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
}

.site-footer .footer-top h2,
.site-footer .footer-top h3,
.site-footer .footer-top h4,
.site-footer .footer-top .widget-title {
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: .02em !important;
  margin: 0 0 12px !important;
}

.site-footer .footer-top p,
.site-footer .footer-top li,
.site-footer .footer-top a {
  color: rgba(247,251,251,.86) !important;
  font-size: 14px !important;
  line-height: 1.75 !important;
}

.site-footer .footer-top a:hover {
  color: #ffffff !important;
  text-decoration: underline !important;
}

.site-footer .footer-top ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

@media (max-width: 768px) {
  .site-footer .footer-top {
    padding: 30px 0 !important;
  }

  .site-footer .footer-top .hfg-grid,
  .site-footer .footer-top .row--wrapper {
    gap: 22px !important;
  }
}

/* AI Module 1 page styling - Elementor editable content */
body.elementor-page-2888 .nv-post-cover { display: none !important; }
body.elementor-page-2888 .entry-content,
body.elementor-page-2888 .elementor-widget-text-editor {
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body.elementor-page-2888 .ai-module-page {
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: 34px 18px 64px !important;
  color: #24323a !important;
}
body.elementor-page-2888 .ai-module-hero {
  background: linear-gradient(135deg, #eef8ff 0%, #ffffff 58%, #fff6ea 100%) !important;
  border: 1px solid #d9e8ed !important;
  border-radius: 18px !important;
  padding: 42px !important;
  box-shadow: 0 18px 42px rgba(18,45,56,.08) !important;
  margin-bottom: 28px !important;
}
body.elementor-page-2888 .ai-module-eyebrow {
  margin: 0 0 10px !important;
  color: #23699b !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}
body.elementor-page-2888 .ai-module-hero h1 {
  margin: 0 0 16px !important;
  color: #24323a !important;
  font-size: clamp(34px, 4vw, 54px) !important;
  line-height: 1.08 !important;
  font-weight: 800 !important;
}
body.elementor-page-2888 .ai-module-hero p {
  max-width: 900px !important;
  margin: 0 !important;
  color: #5c6f79 !important;
  font-size: 19px !important;
  line-height: 1.7 !important;
}
body.elementor-page-2888 .ai-module-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  margin-top: 26px !important;
}
body.elementor-page-2888 .ai-module-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 50px !important;
  padding: 13px 22px !important;
  border-radius: 10px !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  line-height: 1.2 !important;
}
body.elementor-page-2888 .ai-module-button.primary { background: #23699b !important; color: #fff !important; }
body.elementor-page-2888 .ai-module-button.secondary { background: #e9f5f3 !important; color: #1c6f67 !important; border: 1px solid #cde5e1 !important; }
body.elementor-page-2888 .ai-module-grid {
  display: grid !important;
  grid-template-columns: 1.1fr .9fr !important;
  gap: 24px !important;
  margin-top: 28px !important;
}
body.elementor-page-2888 .ai-module-card {
  background: #fff !important;
  border: 1px solid #d9e8ed !important;
  border-radius: 16px !important;
  padding: 28px !important;
  box-shadow: 0 12px 30px rgba(18,45,56,.05) !important;
}
body.elementor-page-2888 .ai-module-card h2 {
  margin: 0 0 12px !important;
  font-size: 26px !important;
  line-height: 1.2 !important;
  color: #24323a !important;
}
body.elementor-page-2888 .ai-module-card p,
body.elementor-page-2888 .ai-module-card li {
  color: #5c6f79 !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
}
body.elementor-page-2888 .ai-module-list {
  display: grid !important;
  gap: 12px !important;
  margin: 16px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}
body.elementor-page-2888 .ai-module-list li {
  position: relative !important;
  padding-left: 26px !important;
}
body.elementor-page-2888 .ai-module-list li::before {
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  top: .65em !important;
  width: 9px !important;
  height: 9px !important;
  border-radius: 50% !important;
  background: #237c73 !important;
}
body.elementor-page-2888 .ai-module-steps {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 16px !important;
  margin-top: 18px !important;
}
body.elementor-page-2888 .ai-module-step {
  display: flex !important;
  align-items: flex-start !important;
  gap: 16px !important;
  padding: 18px !important;
  background: #f7fbfc !important;
  border: 1px solid #d9e8ed !important;
  border-radius: 14px !important;
}
body.elementor-page-2888 .ai-module-step span {
  flex: 0 0 46px !important;
  display: inline-flex !important;
  width: 46px !important;
  height: 46px !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 13px !important;
  background: #e7f4ff !important;
  color: #23699b !important;
  font-weight: 800 !important;
  font-size: 18px !important;
  line-height: 1 !important;
}
body.elementor-page-2888 .ai-module-step > div { flex: 1 1 auto !important; min-width: 0 !important; display: block !important; }
body.elementor-page-2888 .ai-module-step strong {
  display: block !important;
  margin: 0 0 6px !important;
  color: #24323a !important;
  font-size: 18px !important;
  line-height: 1.3 !important;
  font-weight: 800 !important;
}
body.elementor-page-2888 .ai-module-step p {
  margin: 0 !important;
  color: #5c6f79 !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
}
body.elementor-page-2888 .ai-module-communication {
  margin-top: 28px !important;
  background: #24323a !important;
  border-radius: 18px !important;
  padding: 34px !important;
  color: #fff !important;
}
body.elementor-page-2888 .ai-module-communication h2 { color: #fff !important; margin: 0 0 10px !important; font-size: 30px !important; }
body.elementor-page-2888 .ai-module-communication p { color: rgba(255,255,255,.82) !important; font-size: 17px !important; line-height: 1.65 !important; margin: 0 !important; }
body.elementor-page-2888 .ai-module-note { margin-top: 18px !important; color: rgba(255,255,255,.68) !important; font-size: 14px !important; }
@media (max-width: 860px) {
  body.elementor-page-2888 .ai-module-hero { padding: 30px !important; }
  body.elementor-page-2888 .ai-module-grid { grid-template-columns: 1fr !important; }
  body.elementor-page-2888 .ai-module-communication { padding: 28px !important; }
}


body.elementor-page-2888 .ai-module-step > p:first-child {
  flex: 0 0 46px !important;
  display: inline-flex !important;
  width: 46px !important;
  height: 46px !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 13px !important;
  background: #e7f4ff !important;
  color: #23699b !important;
  font-weight: 800 !important;
  font-size: 18px !important;
  line-height: 1 !important;
  margin: 0 !important;
}
body.elementor-page-2888 .ai-module-step > div p:first-child { margin: 0 0 6px !important; }
