/* ITPMI — detalle de curso (aislado del tema Coursector) */
body.single-lp_course #page_caption,
body.single-lp_course .page_caption,
body.single-lp_course #page_caption_overlay,
body.single-lp_course .page_title_wrapper {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* Footer reveal covers course content — force normal document flow */
body.single-lp_course.tg_footer_reveal #footer_wrapper,
body.single-lp_course #footer_wrapper {
  position: static !important;
  bottom: auto !important;
  z-index: auto !important;
}

body.single-lp_course.tg_footer_reveal #wrapper {
  z-index: auto !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* Modulobox leftover tooltip box under logo */
body.single-lp_course .mobx-share-tooltip {
  display: none !important;
}

/* Elementor header white strip overlapping dark hero */
body.single-lp_course .elementor-location-header,
body.single-lp_course .elementor-4017,
body.single-lp_course .elementor-4017 .elementor-element-24a8e23 {
  background: transparent !important;
  background-color: transparent !important;
}

body.single-lp_course #page_content_wrapper,
body.single-lp_course #page_content_wrapper.wide,
body.single-lp_course #page_content_wrapper:not(.wide) {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  background: #fff !important;
  overflow: visible !important;
  min-height: 0 !important;
  height: auto !important;
  position: relative !important;
  left: auto !important;
  right: auto !important;
}

body.single-lp_course #page_content_wrapper .inner,
body.single-lp_course #page_content_wrapper .inner_wrapper,
body.single-lp_course #page_content_wrapper .sidebar_content {
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

body.single-lp_course .itp-course {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: both !important;
  font-family: "Poppins", "Helvetica Neue", Arial, sans-serif !important;
  color: #0e1f1f !important;
  background: #fff !important;
  box-sizing: border-box !important;
}

body.single-lp_course .itp-course *,
body.single-lp_course .itp-course *::before,
body.single-lp_course .itp-course *::after {
  box-sizing: border-box !important;
}

body.single-lp_course .itp-course .itp-container {
  width: min(1180px, calc(100% - 2.5rem)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1180px !important;
}

/* Hero */
body.single-lp_course .itp-course .course-hero {
  display: block !important;
  position: relative !important;
  color: #fff !important;
  background: #123535 !important;
  padding: 7.5rem 0 3.25rem !important;
  overflow: hidden !important;
  isolation: isolate !important;
  min-height: 280px !important;
}

body.single-lp_course .itp-course .course-hero.has-img::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -2 !important;
  background: var(--course-img) center / cover no-repeat !important;
  transform: scale(1.05) !important;
}

body.single-lp_course .itp-course .course-hero::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: -1 !important;
  background: linear-gradient(105deg, rgba(18, 53, 53, .96) 0%, rgba(18, 53, 53, .82) 45%, rgba(14, 40, 40, .55) 100%) !important;
}

body.single-lp_course .itp-course .course-hero-inner {
  position: relative !important;
  z-index: 1 !important;
  max-width: 820px !important;
}

body.single-lp_course .itp-course .breadcrumb {
  font-size: .86rem !important;
  color: rgba(255, 255, 255, .8) !important;
  margin: 0 0 1.25rem !important;
  display: block !important;
}

body.single-lp_course .itp-course .breadcrumb a {
  color: #f4a322 !important;
  text-decoration: none !important;
}

body.single-lp_course .itp-course .course-hero-badges {
  display: flex !important;
  gap: .5rem !important;
  flex-wrap: wrap !important;
  margin: 0 0 1.1rem !important;
}

body.single-lp_course .itp-course .pill {
  display: inline-block !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: .74rem !important;
  font-weight: 600 !important;
  padding: .32rem .8rem !important;
  border-radius: 8px !important;
  line-height: 1.3 !important;
}

body.single-lp_course .itp-course .pill.teal {
  background: rgba(244, 163, 34, .18) !important;
  color: #f4a322 !important;
  border: 1px solid rgba(244, 163, 34, .45) !important;
}

body.single-lp_course .itp-course .pill.orange {
  background: rgba(241, 135, 24, .18) !important;
  color: #f18718 !important;
  border: 1px solid rgba(241, 135, 24, .45) !important;
}

body.single-lp_course .itp-course .course-hero h1,
body.single-lp_course .itp-course .course-hero h1.withtopbar {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #ffffff !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: clamp(1.75rem, 4vw, 2.75rem) !important;
  font-weight: 700 !important;
  line-height: 1.15 !important;
  margin: 0 0 1rem !important;
  max-width: 22ch !important;
  padding: 0 !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  background: transparent !important;
}

body.single-lp_course .itp-course .course-hero-sub,
body.single-lp_course .itp-course .course-hero p {
  display: block !important;
  color: #ffffff !important;
  opacity: .95 !important;
  line-height: 1.7 !important;
  margin: 0 0 1.6rem !important;
  max-width: 62ch !important;
  font-size: 1.05rem !important;
  padding: 0 !important;
  background: transparent !important;
}

body.single-lp_course .itp-course .course-hero-cta {
  display: flex !important;
  gap: 1rem !important;
  flex-wrap: wrap !important;
}

body.single-lp_course .itp-course .itp-btn,
body.single-lp_course .itp-course .btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: .55rem !important;
  font-family: var(--font-display, "Poppins", "Montserrat", Arial, sans-serif) !important;
  font-weight: 600 !important;
  font-size: .92rem !important;
  padding: .85rem 1.3rem !important;
  border-radius: var(--radius, 6px) !important;
  text-decoration: none !important;
  border: 0 !important;
  cursor: pointer !important;
  line-height: 1.2 !important;
}

body.single-lp_course .itp-course .itp-btn-primary,
body.single-lp_course .itp-course .btn.btn-primary {
  background: var(--orange, #f4a322) !important;
  color: #04121a !important;
}

body.single-lp_course .itp-course .itp-btn-ghost,
body.single-lp_course .itp-course .btn.btn-ghost {
  background: transparent !important;
  color: #fff !important;
  border: 1.5px solid rgba(255, 255, 255, .55) !important;
}

/* Facts bar */
body.single-lp_course .itp-course .course-facts {
  display: block !important;
  background: #123535 !important;
  border-bottom: 1px solid rgba(255, 255, 255, .1) !important;
}

body.single-lp_course .itp-course .facts-grid {
  display: grid !important;
  gap: .55rem !important;
  padding: .85rem 0 !important;
}

body.single-lp_course .itp-course .fact {
  display: flex !important;
  align-items: center !important;
  gap: .65rem !important;
  color: #fff !important;
}

body.single-lp_course .itp-course .fact > i {
  width: 44px !important;
  height: 44px !important;
  border-radius: 8px !important;
  background: rgba(244, 163, 34, .2) !important;
  color: #f18718 !important;
  display: grid !important;
  place-items: center !important;
  font-size: 1.05rem !important;
  flex: 0 0 auto !important;
}

body.single-lp_course .itp-course .fact span {
  display: block !important;
  font-size: .7rem !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
  color: rgba(234, 241, 243, .7) !important;
}

body.single-lp_course .itp-course .fact strong {
  display: block !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: .95rem !important;
  color: #fff !important;
  white-space: pre-line !important;
  font-weight: 700 !important;
}

/* Body */
body.single-lp_course .itp-course .itp-section {
  display: block !important;
  padding: 3.25rem 0 !important;
}

body.single-lp_course .itp-course .section-white {
  background: #fff !important;
}

body.single-lp_course .itp-course .section-paper {
  background: #f6f8f8 !important;
}

body.single-lp_course .itp-course .course-body-grid {
  display: grid !important;
  grid-template-columns: 1fr 340px !important;
  gap: 3rem !important;
  align-items: start !important;
}

body.single-lp_course .itp-course .course-block {
  display: block !important;
  margin: 0 0 2.5rem !important;
}

body.single-lp_course .itp-course .course-block > .eyebrow {
  display: block !important;
  font-size: .72rem !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: #1a4f4f !important;
  font-weight: 700 !important;
  margin: 0 0 .45rem !important;
}

body.single-lp_course .itp-course .course-block h2 {
  display: block !important;
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 1.45rem !important;
  margin: 0 0 .75rem !important;
  color: #0e1f1f !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

body.single-lp_course .itp-course .course-block > p {
  display: block !important;
  color: #5a6b6b !important;
  line-height: 1.85 !important;
  font-size: 1.02rem !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-lp_course .itp-course .plan-topics {
  margin: 0 0 1.25rem !important;
  padding-left: 1.15rem !important;
  color: #5a6b6b !important;
  line-height: 1.7 !important;
  list-style: disc !important;
}

body.single-lp_course .itp-course .plan-topics li {
  margin: .25rem 0 !important;
  color: #5a6b6b !important;
}

body.single-lp_course .itp-course .modules-list {
  border: 1px solid #d9e2e2 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #fff !important;
}

body.single-lp_course .itp-course .module-item {
  display: grid !important;
  grid-template-columns: 48px 1fr !important;
  gap: .75rem 1rem !important;
  padding: 1.05rem 1.25rem !important;
  border-bottom: 1px solid #d9e2e2 !important;
  background: #f6f8f8 !important;
}

body.single-lp_course .itp-course .module-item:last-child {
  border-bottom: 0 !important;
}

body.single-lp_course .itp-course .module-item .acc-num {
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: .85rem !important;
  font-weight: 700 !important;
  color: #1a4f4f !important;
  padding-top: .1rem !important;
}

body.single-lp_course .itp-course .module-item .acc-title,
body.single-lp_course .itp-course .module-item h3 {
  font-family: "Montserrat", Arial, sans-serif !important;
  font-weight: 600 !important;
  font-size: 1rem !important;
  color: #0e1f1f !important;
  margin: 0 !important;
}

body.single-lp_course .itp-course .cert-block {
  display: flex !important;
  gap: 1.15rem !important;
  align-items: center !important;
  background: linear-gradient(120deg, rgba(244, 163, 34, .08), rgba(18, 53, 53, .05)) !important;
  border: 1px solid #d9e2e2 !important;
  border-left: 4px solid #123535 !important;
  border-radius: 12px !important;
  padding: 1.4rem 1.6rem !important;
  margin: 0 !important;
}

body.single-lp_course .itp-course .cert-block > i {
  font-size: 1.85rem !important;
  color: #1a4f4f !important;
}

body.single-lp_course .itp-course .cert-block h3 {
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 1.1rem !important;
  margin: 0 0 .25rem !important;
  color: #0e1f1f !important;
}

body.single-lp_course .itp-course .cert-block p {
  color: #5a6b6b !important;
  margin: 0 !important;
  line-height: 1.6 !important;
  padding: 0 !important;
}

body.single-lp_course .itp-course .course-aside {
  position: sticky !important;
  top: 100px !important;
  display: block !important;
  visibility: visible !important;
  height: auto !important;
  width: 100% !important;
}

/* Override Coursector inline `.course-info { display:none }` (archive cards) */
body.single-lp_course .itp-course .course-info,
body.single-lp_course .itp-course #course-info {
  display: block !important;
  visibility: visible !important;
  height: auto !important;
  width: 100% !important;
  background: var(--paper-2, #f8f8f8) !important;
  border: 1px solid var(--line-ink, #E2E8EA) !important;
  border-radius: var(--radius, 6px) !important;
  padding: 1.25rem !important;
  box-shadow: var(--shadow-sm, 0 6px 20px rgba(0,0,0,.08)) !important;
}

body.single-lp_course .itp-course .course-info h3 {
  font-family: var(--font-display, "Poppins", "Montserrat", Arial, sans-serif) !important;
  font-size: 1.05rem !important;
  margin: 0 0 .85rem !important;
  color: var(--ink, #141414) !important;
}

body.single-lp_course .itp-course .course-info ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 1.1rem !important;
}

body.single-lp_course .itp-course .course-info li {
  display: grid !important;
  grid-template-columns: 22px 1fr !important;
  gap: .15rem .65rem !important;
  padding: .45rem 0 !important;
  border-bottom: 1px solid var(--line-ink, #E2E8EA) !important;
  align-items: start !important;
}

body.single-lp_course .itp-course .course-info li i {
  color: var(--orange, #f4a322) !important;
  grid-row: span 2 !important;
  margin-top: .2rem !important;
}

body.single-lp_course .itp-course .course-info li span {
  font-size: .68rem !important;
  text-transform: uppercase !important;
  letter-spacing: .06em !important;
  color: #5a6b6b !important;
}

body.single-lp_course .itp-course .course-info li strong {
  font-family: var(--font, "Montserrat", Arial, sans-serif) !important;
  font-size: .88rem !important;
  white-space: pre-line !important;
  color: var(--ink, #141414) !important;
}

body.single-lp_course .itp-course .course-info .itp-btn,
body.single-lp_course .itp-course .course-info .btn {
  width: 100% !important;
  justify-content: center !important;
}

body.single-lp_course .itp-course .related-head {
  margin: 0 0 1.5rem !important;
}

body.single-lp_course .itp-course .related-head .eyebrow {
  display: block !important;
  font-size: .72rem !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: #1a4f4f !important;
  font-weight: 700 !important;
  margin: 0 0 .35rem !important;
}

body.single-lp_course .itp-course .related-head h2 {
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: 1.6rem !important;
  margin: 0 !important;
  color: #0e1f1f !important;
}

body.single-lp_course .itp-course .related-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
  gap: 1.25rem !important;
}

body.single-lp_course .itp-course .related-card {
  background: #fff !important;
  border: 1px solid #d9e2e2 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
}

body.single-lp_course .itp-course .related-media {
  display: block !important;
  aspect-ratio: 16 / 10 !important;
  background: #123535 !important;
  overflow: hidden !important;
}

body.single-lp_course .itp-course .related-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

body.single-lp_course .itp-course .related-media.no-img {
  display: grid !important;
  place-items: center !important;
  color: rgba(255, 255, 255, .55) !important;
  font-size: 1.6rem !important;
}

body.single-lp_course .itp-course .related-foot {
  padding: .95rem 1rem 1.1rem !important;
}

body.single-lp_course .itp-course .related-foot h3 {
  font-family: "Montserrat", Arial, sans-serif !important;
  font-size: .95rem !important;
  line-height: 1.35 !important;
  margin: 0 !important;
  color: #0e1f1f !important;
}

body.single-lp_course .itp-course .related-foot h3 a {
  color: #0e1f1f !important;
  text-decoration: none !important;
}

body.single-lp_course .itp-course .muted-note {
  color: #5a6b6b !important;
  margin: 0 !important;
  line-height: 1.7 !important;
}

@media (max-width: 980px) {
  body.single-lp_course .itp-course .course-body-grid {
    grid-template-columns: 1fr !important;
  }

  body.single-lp_course .itp-course .course-aside {
    position: static !important;
  }

  body.single-lp_course .itp-course .facts-grid {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 640px) {
  body.single-lp_course .itp-course .course-hero {
    padding-top: 5.5rem !important;
  }

  body.single-lp_course .itp-course .course-hero h1 {
    max-width: none !important;
  }
}
