/* Approved Learning That Feels Real section. Scoped to InnerVerse page 1854 only. */
.elementor-1854 .elementor-element.iv2-learning {
  --iv2-u: min(1px, calc((100vw - 96px) / 1492));
  position: relative;
  isolation: isolate;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-height: calc(941 * var(--iv2-u));
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden;
  color: #071747;
  background-color: #f4faff;
  background-repeat: no-repeat !important;
  background-position: center center !important;
  background-size: cover !important;
}

.elementor-1854 .iv2-learning > .e-con-inner,
.elementor-1854 .iv2-learning > .elementor-container {
  max-width: none !important;
  padding: 0 !important;
}

.elementor-1854 .iv2-learning .elementor-element {
  min-width: 0;
  margin: 0;
  padding: 0;
  gap: 0;
}

.elementor-1854 .iv2-learning .elementor-element.iv2-inner {
  position: relative;
  z-index: 2;
  display: grid !important;
  grid-template-columns: minmax(0, 740fr) minmax(0, 752fr) !important;
  grid-template-rows: auto auto auto 1fr;
  width: min(1492px, calc(100% - 180px)) !important;
  max-width: 1492px !important;
  min-height: calc(941 * var(--iv2-u));
  margin: 0 auto !important;
  padding: 0 !important;
  align-items: start !important;
}

.elementor-1854 .iv2-learning .elementor-element.iv2-content {
  grid-column: 1;
  grid-row: 1;
  z-index: 3;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  width: 100%;
  padding-top: calc(96 * var(--iv2-u));
}

.elementor-1854 .iv2-learning .iv2-eyebrow { width: auto; max-width: 100%; }
.elementor-1854 .iv2-learning .iv2-eyebrow .elementor-heading-title {
  display: inline-flex;
  align-items: center;
  min-height: calc(37 * var(--iv2-u));
  padding: calc(9 * var(--iv2-u)) calc(18 * var(--iv2-u));
  border: 1px solid rgba(67, 151, 255, .08);
  border-radius: 999px;
  background: rgba(227, 241, 255, .92);
  color: #087bff;
  font-family: Inter, Arial, sans-serif;
  font-size: calc(13 * var(--iv2-u));
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: .1em;
  white-space: nowrap;
}

.elementor-1854 .iv2-learning .iv2-title { width: 100%; margin-top: calc(30 * var(--iv2-u)); }
.elementor-1854 .iv2-learning .iv2-title .elementor-heading-title {
  margin: 0;
  color: #071747;
  font-family: Inter, Arial, sans-serif;
  font-size: calc(65 * var(--iv2-u));
  font-weight: 700;
  line-height: 1.06;
  letter-spacing: -.045em;
}

.elementor-1854 .iv2-learning .iv2-title-line { display: block; width: max-content; max-width: 100%; }
.elementor-1854 .iv2-learning .iv2-title-line--accent {
  position: relative;
  padding-bottom: calc(18 * var(--iv2-u));
  background: linear-gradient(90deg, #078bff 0%, #04b9ef 34%, #4d8bff 65%, #9551ff 100%);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
}

.elementor-1854 .iv2-learning .iv2-title-line--accent::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: calc(2 * var(--iv2-u));
  width: calc(220 * var(--iv2-u));
  height: calc(11 * var(--iv2-u));
  border-top: calc(3 * var(--iv2-u)) solid #0789ff;
  border-radius: 52% 65% 0 0;
  transform: rotate(-1.7deg);
}

.elementor-1854 .iv2-learning .iv2-intro {
  width: 100%;
  max-width: calc(650 * var(--iv2-u)) !important;
  margin-top: calc(25 * var(--iv2-u));
}
.elementor-1854 .iv2-learning .iv2-intro p {
  margin: 0;
  color: #617493;
  font-family: Inter, Arial, sans-serif;
  font-size: calc(20 * var(--iv2-u));
  font-weight: 400;
  line-height: 1.38;
  letter-spacing: -.024em;
}

.elementor-1854 .iv2-learning .elementor-element.iv2-features {
  grid-column: 1;
  grid-row: 2;
  z-index: 3;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: calc(12 * var(--iv2-u)) !important;
  width: 100%;
  max-width: calc(738 * var(--iv2-u));
  margin-top: calc(25 * var(--iv2-u));
}
.elementor-1854 .iv2-learning .elementor-element.iv2-feature {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: calc(16 * var(--iv2-u)) !important;
  width: 100%;
  min-height: calc(137 * var(--iv2-u));
  padding: calc(16 * var(--iv2-u));
  border: 1px solid rgba(255, 255, 255, .7);
  border-radius: calc(16 * var(--iv2-u));
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 calc(8 * var(--iv2-u)) calc(28 * var(--iv2-u)) rgba(85, 154, 218, .12);
  backdrop-filter: blur(8px);
}
.elementor-1854 .iv2-learning .iv2-feature-icon { flex: 0 0 calc(76 * var(--iv2-u)); width: calc(76 * var(--iv2-u)); }
.elementor-1854 .iv2-learning .iv2-feature-icon img { display: block; width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; }
.elementor-1854 .iv2-learning .elementor-element.iv2-feature-copy {
  display: flex !important;
  flex: 1 1 auto;
  flex-direction: column !important;
  justify-content: center;
  width: auto;
}
.elementor-1854 .iv2-learning .iv2-feature-title .elementor-heading-title {
  margin: 0;
  color: #071747;
  font-family: Inter, Arial, sans-serif;
  font-size: calc(19 * var(--iv2-u));
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -.035em;
}
.elementor-1854 .iv2-learning .iv2-feature-description { margin-top: calc(7 * var(--iv2-u)); }
.elementor-1854 .iv2-learning .iv2-feature-description p {
  margin: 0;
  color: #647797;
  font-family: Inter, Arial, sans-serif;
  font-size: calc(14 * var(--iv2-u));
  font-weight: 400;
  line-height: 1.36;
  letter-spacing: -.02em;
}

.elementor-1854 .iv2-learning .elementor-element.iv2-actions {
  grid-column: 1;
  grid-row: 3;
  z-index: 3;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: calc(16 * var(--iv2-u)) !important;
  width: 100%;
  margin-top: calc(20 * var(--iv2-u));
}
.elementor-1854 .iv2-learning .iv2-button { width: auto; }
.elementor-1854 .iv2-learning .iv2-button .elementor-button {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: calc(64 * var(--iv2-u));
  padding: calc(15 * var(--iv2-u)) calc(28 * var(--iv2-u));
  border: 0 !important;
  border-radius: calc(12 * var(--iv2-u)) !important;
  clip-path: none !important;
  font-family: Inter, Arial, sans-serif;
  font-size: calc(18 * var(--iv2-u)) !important;
  font-weight: 650;
  line-height: 1.2;
  letter-spacing: -.025em;
  box-shadow: 0 calc(8 * var(--iv2-u)) calc(24 * var(--iv2-u)) rgba(55, 139, 237, .2);
  transition: transform .2s ease, filter .2s ease, box-shadow .2s ease;
}
.elementor-1854 .iv2-learning .iv2-button .elementor-button-content-wrapper { align-items: center; gap: calc(12 * var(--iv2-u)); }
.elementor-1854 .iv2-learning .iv2-primary .elementor-button {
  min-width: calc(290 * var(--iv2-u));
  background: linear-gradient(102deg, #0b80ff 0%, #00c7e9 100%) !important;
  color: #fff !important;
}
.elementor-1854 .iv2-learning .iv2-secondary .elementor-button {
  min-width: calc(270 * var(--iv2-u));
  border: 1px solid #e5eef9 !important;
  background: rgba(255, 255, 255, .95) !important;
  color: #071747 !important;
}
.elementor-1854 .iv2-learning .iv2-secondary .elementor-button-icon,
.elementor-1854 .iv2-learning .iv2-secondary .elementor-button-icon svg { color: #0789ff !important; fill: #0789ff !important; }
.elementor-1854 .iv2-learning .iv2-button .elementor-button:hover {
  filter: brightness(.98);
  transform: translateY(-1px);
  box-shadow: 0 calc(10 * var(--iv2-u)) calc(30 * var(--iv2-u)) rgba(55, 139, 237, .26);
}
.elementor-1854 .iv2-learning .iv2-button .elementor-button:focus-visible { outline: 3px solid #071747; outline-offset: 4px; }

.elementor-1854 .iv2-learning .elementor-element.iv2-visual {
  position: relative;
  grid-column: 2;
  grid-row: 1 / span 4;
  align-self: end;
  z-index: 2;
  display: block !important;
  width: 100%;
  height: calc(941 * var(--iv2-u));
  overflow: visible;
}
.elementor-1854 .iv2-learning .iv2-visual::before,
.elementor-1854 .iv2-learning .iv2-visual::after { content: ''; position: absolute; z-index: 1; border-radius: 50%; pointer-events: none; }
.elementor-1854 .iv2-learning .iv2-visual::before {
  top: calc(179 * var(--iv2-u)); left: calc(2 * var(--iv2-u)); width: calc(22 * var(--iv2-u)); height: calc(22 * var(--iv2-u));
  background: radial-gradient(circle at 32% 28%, #efffff 0 8%, #64e3ff 27%, #5378ff 67%, #8d4df3 100%);
  box-shadow: calc(22 * var(--iv2-u)) calc(300 * var(--iv2-u)) 0 calc(-2 * var(--iv2-u)) #6a7dff;
}
.elementor-1854 .iv2-learning .iv2-visual::after {
  top: calc(455 * var(--iv2-u)); right: calc(15 * var(--iv2-u)); width: calc(29 * var(--iv2-u)); height: calc(29 * var(--iv2-u));
  background: radial-gradient(circle at 28% 25%, #f6ffff 0 7%, #55dff7 25%, #3e8cf2 64%, #8755ef 100%);
  box-shadow: calc(-640 * var(--iv2-u)) calc(85 * var(--iv2-u)) 0 calc(-5 * var(--iv2-u)) #6f83ff;
}
.elementor-1854 .iv2-learning .iv2-student,
.elementor-1854 .iv2-learning .iv2-visual-card,
.elementor-1854 .iv2-learning .iv2-bright-note { position: absolute; margin: 0 !important; }
.elementor-1854 .iv2-learning .iv2-student {
  right: calc(30 * var(--iv2-u)); bottom: calc(-87 * var(--iv2-u)); z-index: 4; width: calc(710 * var(--iv2-u));
}
.elementor-1854 .iv2-learning .iv2-student img,
.elementor-1854 .iv2-learning .iv2-visual-card img {
  display: block; width: 100%; max-width: none; height: auto; object-fit: contain; transform: none; border-radius: 0;
}
.elementor-1854 .iv2-learning .iv2-visual-card { z-index: 3; width: calc(164 * var(--iv2-u)); }
.elementor-1854 .iv2-learning .iv2-visual-card--explore { top: calc(147 * var(--iv2-u)); left: calc(22 * var(--iv2-u)); }
.elementor-1854 .iv2-learning .iv2-visual-card--grow { top: calc(56 * var(--iv2-u)); right: calc(12 * var(--iv2-u)); width: calc(172 * var(--iv2-u)); }
.elementor-1854 .iv2-learning .iv2-visual-card--belong { left: calc(40 * var(--iv2-u)); bottom: calc(182 * var(--iv2-u)); width: calc(178 * var(--iv2-u)); }
.elementor-1854 .iv2-learning .iv2-visual-card--achieve { right: calc(-55 * var(--iv2-u)); bottom: calc(226 * var(--iv2-u)); width: calc(178 * var(--iv2-u)); }
.elementor-1854 .iv2-learning .iv2-bright-note {
  top: calc(301 * var(--iv2-u)); right: calc(-18 * var(--iv2-u)); z-index: 5; width: calc(110 * var(--iv2-u)); transform: rotate(-5deg);
}
.elementor-1854 .iv2-learning .iv2-bright-note .elementor-heading-title {
  color: rgba(255, 255, 255, .93);
  font-family: "Segoe Print", "Bradley Hand", cursive;
  font-size: calc(17 * var(--iv2-u));
  font-weight: 600;
  line-height: 1.38;
  text-align: center;
  text-shadow: 0 2px 10px rgba(55, 98, 200, .4);
}
.elementor-1854 .iv2-learning::after {
  content: '';
  position: absolute;
  left: -5%;
  bottom: calc(-71 * var(--iv2-u));
  z-index: 8;
  width: 110%;
  height: calc(112 * var(--iv2-u));
  border-radius: 52% 48% 0 0 / 72% 72% 0 0;
  background: rgba(255, 255, 255, .96);
  pointer-events: none;
}

@keyframes iv2-title-enter { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
@keyframes iv2-float-a { 0%, 100% { transform: translate3d(0, 0, 0); } 50% { transform: translate3d(0, -7px, 0); } }
@keyframes iv2-float-b { 0%, 100% { transform: translate3d(0, 0, 0); } 50% { transform: translate3d(0, 6px, 0); } }
.elementor-1854 .iv2-learning .iv2-title-line { animation: iv2-title-enter .65s cubic-bezier(.2, .7, .2, 1) both; }
.elementor-1854 .iv2-learning .iv2-title-line--accent { animation-delay: .08s; }
.elementor-1854 .iv2-learning .iv2-float-a { animation: iv2-float-a 6.8s ease-in-out infinite; }
.elementor-1854 .iv2-learning .iv2-float-b { animation: iv2-float-b 7.4s ease-in-out infinite; }

@media (max-width: 1180px) {
  .elementor-1854 .elementor-element.iv2-learning { --iv2-u: 1px; min-height: 0; background-position: center top !important; background-size: auto 100% !important; }
  .elementor-1854 .iv2-learning .elementor-element.iv2-inner {
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto auto;
    width: min(820px, calc(100% - 64px)) !important;
    min-height: 0;
    padding: 56px 0 90px !important;
  }
  .elementor-1854 .iv2-learning .elementor-element.iv2-content {
    grid-column: 1; grid-row: 1; align-items: center !important; padding-top: 0; text-align: center;
  }
  .elementor-1854 .iv2-learning .iv2-title .elementor-heading-title { font-size: clamp(42px, 6vw, 60px); }
  .elementor-1854 .iv2-learning .iv2-title-line { width: auto; }
  .elementor-1854 .iv2-learning .iv2-title-line--accent::after { left: 50%; width: 220px; transform: translateX(-50%) rotate(-1.7deg); }
  .elementor-1854 .iv2-learning .iv2-intro { max-width: 700px !important; }
  .elementor-1854 .iv2-learning .iv2-intro p { font-size: 20px; }
  .elementor-1854 .iv2-learning .elementor-element.iv2-actions { grid-column: 1; grid-row: 2; justify-content: center; margin-top: 26px; }
  .elementor-1854 .iv2-learning .iv2-button .elementor-button { min-height: 60px; border-radius: 12px !important; font-size: 18px !important; }
  .elementor-1854 .iv2-learning .iv2-primary .elementor-button { min-width: 275px; }
  .elementor-1854 .iv2-learning .iv2-secondary .elementor-button { min-width: 245px; }
  .elementor-1854 .iv2-learning .elementor-element.iv2-visual {
    grid-column: 1; grid-row: 3; justify-self: center; width: min(760px, 100%); height: 760px; margin-top: 20px;
  }
  .elementor-1854 .iv2-learning .iv2-student { right: 3%; bottom: -5px; width: 620px; }
  .elementor-1854 .iv2-learning .iv2-visual-card { width: 140px; }
  .elementor-1854 .iv2-learning .iv2-visual-card--explore { top: 135px; left: 2%; }
  .elementor-1854 .iv2-learning .iv2-visual-card--grow { top: 45px; right: 2%; width: 146px; }
  .elementor-1854 .iv2-learning .iv2-visual-card--belong { left: 4%; bottom: 80px; width: 150px; }
  .elementor-1854 .iv2-learning .iv2-visual-card--achieve { right: 0; bottom: 100px; width: 150px; }
  .elementor-1854 .iv2-learning .iv2-bright-note { top: 280px; right: -8px; width: 102px; }
  .elementor-1854 .iv2-learning .iv2-bright-note .elementor-heading-title { font-size: 16px; }
  .elementor-1854 .iv2-learning .elementor-element.iv2-features {
    grid-column: 1; grid-row: 4; max-width: 760px; margin: 10px auto 0 !important; gap: 14px !important;
  }
  .elementor-1854 .iv2-learning .elementor-element.iv2-feature { min-height: 132px; padding: 16px; border-radius: 16px; }
  .elementor-1854 .iv2-learning .iv2-feature-icon { flex-basis: 70px; width: 70px; }
  .elementor-1854 .iv2-learning .iv2-feature-title .elementor-heading-title { font-size: 19px; }
  .elementor-1854 .iv2-learning .iv2-feature-description p { font-size: 14px; }
}

@media (max-width: 767px) {
  .elementor-1854 .elementor-element.iv2-learning { background-size: auto 100% !important; }
  .elementor-1854 .iv2-learning .elementor-element.iv2-inner { width: calc(100% - 32px) !important; padding: 34px 0 72px !important; }
  .elementor-1854 .iv2-learning .iv2-eyebrow .elementor-heading-title { min-height: 31px; padding: 8px 13px; font-size: 10px; letter-spacing: .105em; }
  .elementor-1854 .iv2-learning .iv2-title { margin-top: 20px; }
  .elementor-1854 .iv2-learning .iv2-title .elementor-heading-title { font-size: clamp(30px, 8.2vw, 38px); line-height: 1.07; }
  .elementor-1854 .iv2-learning .iv2-title-line--accent { padding-bottom: 14px; }
  .elementor-1854 .iv2-learning .iv2-title-line--accent::after { bottom: 0; width: 150px; height: 8px; border-width: 2px; }
  .elementor-1854 .iv2-learning .iv2-intro { margin-top: 18px; }
  .elementor-1854 .iv2-learning .iv2-intro p { font-size: 16px; line-height: 1.43; }
  .elementor-1854 .iv2-learning .elementor-element.iv2-features { grid-column: 1; grid-row: 2; }
  .elementor-1854 .iv2-learning .elementor-element.iv2-actions { grid-column: 1; grid-row: 3; flex-direction: column !important; gap: 11px !important; margin-top: 22px; }
  .elementor-1854 .iv2-learning .iv2-button,
  .elementor-1854 .iv2-learning .iv2-button .elementor-button { width: 100%; min-width: 0; }
  .elementor-1854 .iv2-learning .iv2-button .elementor-button { min-height: 53px; padding: 13px 16px; font-size: 16px !important; }
  .elementor-1854 .iv2-learning .elementor-element.iv2-visual {
    grid-column: 1; grid-row: 4; width: min(430px, calc(100% + 32px)); height: clamp(450px, 122vw, 570px); margin: 10px -16px 0;
  }
  .elementor-1854 .iv2-learning .iv2-student {
    right: 50%; bottom: -2px; width: min(360px, 82vw); transform: translateX(50%);
  }
  .elementor-1854 .iv2-learning .iv2-visual-card { width: clamp(78px, 22vw, 102px); }
  .elementor-1854 .iv2-learning .iv2-visual-card--explore { top: 23%; left: 2%; }
  .elementor-1854 .iv2-learning .iv2-visual-card--grow { top: 6%; right: 2%; width: clamp(82px, 23vw, 106px); }
  .elementor-1854 .iv2-learning .iv2-visual-card--belong { left: 0; bottom: 8%; width: clamp(87px, 24vw, 112px); }
  .elementor-1854 .iv2-learning .iv2-visual-card--achieve { right: 0; bottom: 10%; width: clamp(87px, 24vw, 112px); }
  .elementor-1854 .iv2-learning .iv2-bright-note { top: 38%; right: -3px; width: 70px; }
  .elementor-1854 .iv2-learning .iv2-bright-note .elementor-heading-title { font-size: 11px; line-height: 1.35; }
  .elementor-1854 .iv2-learning .iv2-visual::before { top: 18%; left: 7%; width: 15px; height: 15px; box-shadow: 11px 270px 0 -2px #6a7dff; }
  .elementor-1854 .iv2-learning .iv2-visual::after { top: 54%; right: 5%; width: 20px; height: 20px; box-shadow: -330px 50px 0 -4px #6f83ff; }
  .elementor-1854 .iv2-learning .elementor-element.iv2-features {
    grid-template-columns: minmax(0, 1fr) !important; width: 100%; max-width: none; margin-top: 0 !important; gap: 11px !important;
  }
  .elementor-1854 .iv2-learning .elementor-element.iv2-feature { min-height: 103px; flex-wrap: nowrap !important; gap: 14px !important; padding: 13px 15px; border-radius: 15px; }
  .elementor-1854 .iv2-learning .elementor-element.iv2-feature > .elementor-element.iv2-feature-icon { flex: 0 0 58px !important; width: 58px !important; max-width: 58px !important; align-self: center !important; }
  .elementor-1854 .iv2-learning .elementor-element.iv2-feature > .elementor-element.iv2-feature-copy { flex: 1 1 0 !important; width: calc(100% - 72px) !important; max-width: calc(100% - 72px) !important; }
  .elementor-1854 .iv2-learning .iv2-feature-title .elementor-heading-title { font-size: 17px; }
  .elementor-1854 .iv2-learning .iv2-feature-description { margin-top: 4px; }
  .elementor-1854 .iv2-learning .iv2-feature-description p { font-size: 14px; line-height: 1.34; }
  .elementor-1854 .iv2-learning::after { left: -12%; bottom: -48px; width: 124%; height: 78px; }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-1854 .iv2-learning .iv2-title-line,
  .elementor-1854 .iv2-learning .iv2-float-a,
  .elementor-1854 .iv2-learning .iv2-float-b { animation: none !important; transform: none; }
  .elementor-1854 .iv2-learning .iv2-button .elementor-button { transition: none; }
}
