.elementor-222 .elementor-element.elementor-element-20f1299{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}/* Start custom CSS for text-editor, class: .elementor-element-b2a60b5 */.hero-ctrl{
  position:relative;
  padding:140px 20px 120px;
  text-align:center;
  overflow:hidden;
}

.hero-bg{
  position:absolute;
  inset:0;
  background:
    radial-gradient(1000px 600px at 50% -20%, rgba(72,214,255,.18), transparent 60%),
    radial-gradient(900px 500px at 80% 0%, rgba(255,213,74,.12), transparent 60%),
    radial-gradient(800px 600px at 20% 80%, rgba(255,45,85,.10), transparent 60%);
  z-index:0;
}

.hero-inner{
  position:relative;
  z-index:1;
}

.hero-ctrl h1{
  font-size:54px;
  font-weight:900;
  line-height:1.25;
  margin-bottom:20px;
}

.hero-sub{
  font-size:20px;
  margin-bottom:40px;
  color:rgba(243,247,255,.75);
}

.hero-cta{
  display:flex;
  justify-content:center;
  gap:20px;
  flex-wrap:wrap;
}

.btn-main{
  padding:15px 22px;
  background:#ffd54a;
  color:#0a0f16;
  font-weight:900;
  border-radius:14px;
  text-decoration:none;
}

.btn-sub{
  padding:15px 22px;
  border:1px solid rgba(255,255,255,.4);
  color:white;
  border-radius:14px;
  text-decoration:none;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-20f1299 *//* =========================
   HOME
   ========================= */

.home-hero{
  padding:120px 20px 100px;
  text-align:center;
}

.home-hero h1{
  font-size:48px;
  font-weight:900;
  line-height:1.3;
  margin-bottom:20px;
}

.home-sub{
  font-size:18px;
  color:rgba(243,247,255,.75);
  margin-bottom:40px;
}

.home-cta{
  display:flex;
  justify-content:center;
  gap:20px;
  flex-wrap:wrap;
}

/* blocks */

.home-block{
  padding:100px 20px;
  text-align:center;
}

.home-block.alt{
  background:rgba(255,255,255,.03);
}

.home-block h2{
  font-size:28px;
  margin-bottom:20px;
}

.home-block p{
  max-width:600px;
  margin:0 auto 20px;
  line-height:1.9;
  font-size:16px;
  color:rgba(243,247,255,.8);
}

/* buttons */

.btn-primary{
  padding:14px 20px;
  background:#ffd54a;
  color:#0a0f16;
  font-weight:900;
  border-radius:12px;
  text-decoration:none;
}

.btn-secondary{
  padding:12px 18px;
  background:#48d6ff;
  color:#0a0f16;
  font-weight:900;
  border-radius:12px;
  text-decoration:none;
}

.btn-ghost{
  padding:14px 20px;
  border:1px solid rgba(255,255,255,.3);
  color:white;
  border-radius:12px;
  text-decoration:none;
}

.link-arrow{
  display:inline-block;
  margin-top:15px;
  color:#48d6ff;
  text-decoration:none;
  font-weight:700;
}

/* lab section */

.home-lab{
  padding:120px 20px;
  text-align:center;
  background:linear-gradient(180deg, rgba(72,214,255,.06), transparent);
}

/* responsive */

@media(max-width:768px){
  .home-hero h1{
    font-size:32px;
  }
}/* End custom CSS */