/* Native Elementor section 1. Images and copy are stored in Elementor controls. */
body .elementor .h77-home-hero,
body .elementor .h77-home-hero .e-con {
  --container-default-padding-top: 0;
  --container-default-padding-right: 0;
  --container-default-padding-bottom: 0;
  --container-default-padding-left: 0;
  --gap: 0px;
  padding: 0;
  margin: 0;
  gap: 0;
}
body .elementor .h77-home-hero {
  position: relative;
  isolation: isolate;
  display: flex;
  justify-content: center;
  min-height: 790px;
  color: #fff;
  overflow: hidden;
  background-color: #06245f;
}
body .elementor .h77-home-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 18% 20%, rgba(124,198,255,.15), transparent 32%), linear-gradient(90deg, rgba(6,36,95,.96), rgba(6,36,95,.78), rgba(6,36,95,.38));
  pointer-events: none;
}
body .elementor .h77-home-hero::after {
  content: '';
  position: absolute;
  inset: auto 0 0;
  height: 160px;
  background: linear-gradient(0deg, #f4f6fb, rgba(244,246,251,0));
  pointer-events: none;
}
body .elementor .h77-home-hero .h77-home-hero-layout {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(360px, .72fr);
  width: min(1200px, calc(100% - 32px));
  margin-inline: auto;
  gap: 52px;
  align-items: center;
}
body .elementor .h77-home-hero .h77-home-hero-copy { display: block; max-width: 780px; }
body .elementor .h77-home-hero .elementor-widget { margin-bottom: 0; }
.h77-home-hero .elementor-heading-title { margin: 0; }
.h77-home-hero .h77-home-hero-kicker .elementor-heading-title {
  display: inline-flex;
  padding: 8px 12px;
  border: 1px solid rgba(255,255,255,.28);
  background: rgba(255,255,255,.16);
  backdrop-filter: blur(14px);
  color: white;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .08em;
  line-height: normal;
  text-transform: uppercase;
}
body .elementor .h77-home-hero .h77-home-hero-title { margin-top: 22px; }
.h77-home-hero .h77-home-hero-title .elementor-heading-title {
  color: white;
  font-size: clamp(42px, 5.4vw, 72px);
  font-weight: 850;
  letter-spacing: -.01em;
  line-height: 1.15;
}
body .elementor .h77-home-hero .h77-home-hero-lead { margin-top: 18px; }
.h77-home-hero .h77-home-hero-lead { color: rgba(255,255,255,.84); font-size: 18px; line-height: 1.7; }
.h77-home-hero .elementor-widget-text-editor p { margin: 0; }
body .elementor .h77-home-hero .h77-home-hero-actions,
body .elementor .h77-home-hero .h77-home-hero-assurance { display: flex; flex-direction: row; flex-wrap: wrap; gap: 14px; margin-top: 32px; }
body .elementor .h77-home-hero .h77-home-hero-assurance { gap: 10px; margin-top: 30px; }
body .elementor .h77-home-hero .h77-home-hero-actions > .elementor-widget,
body .elementor .h77-home-hero .h77-home-hero-assurance > .elementor-widget { width: auto; max-width: 100%; }
.h77-home-hero .h77-home-hero-button .elementor-button {
  display: inline-flex;
  min-height: 46px;
  align-items: center;
  justify-content: center;
  border: 2px solid transparent;
  border-radius: 4px;
  padding: 12px 18px;
  background: #6b7280;
  color: white;
  font-size: 16px;
  font-weight: 800;
  line-height: normal;
  text-transform: uppercase;
  letter-spacing: .04em;
  transition: transform 180ms ease, box-shadow 180ms ease;
}
.h77-home-hero .h77-home-hero-button .elementor-button:hover { transform: translateY(-1px); box-shadow: 0 12px 28px rgba(0,9,40,.16); }
.h77-home-hero .h77-home-hero-button-secondary .elementor-button { border-color: rgba(255,255,255,.28); background: rgba(255,255,255,.1); backdrop-filter: blur(10px); }
.h77-home-hero .h77-home-hero-chip .elementor-heading-title {
  display: block;
  border: 1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.12);
  backdrop-filter: blur(14px);
  color: rgba(255,255,255,.88);
  padding: 9px 12px;
  font-size: 13px;
  font-weight: 800;
  line-height: normal;
}
body .elementor .h77-home-hero .h77-home-hero-proof { position: relative; display: block; min-height: 520px; }
.h77-home-hero .h77-home-hero-image { height: 500px; overflow: hidden; border: 1px solid rgba(255,255,255,.16); box-shadow: 0 28px 70px rgba(0,0,0,.38); }
.h77-home-hero .h77-home-hero-image .elementor-widget-container { height: 100%; }
.h77-home-hero .h77-home-hero-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
body .elementor .h77-home-hero .h77-home-hero-card,
body .elementor .h77-home-hero .h77-home-hero-metrics {
  position: absolute;
  border: 1px solid rgba(255,255,255,.58);
  background: rgba(255,255,255,.78);
  color: #06245f;
  box-shadow: 0 18px 46px rgba(0,9,40,.22);
  backdrop-filter: blur(22px) saturate(150%);
}
body .elementor .h77-home-hero .h77-home-hero-card { display: block; right: -20px; bottom: 46px; width: min(320px, 82%); padding: 20px; }
.h77-home-hero .h77-home-hero-status .elementor-heading-title,
.h77-home-hero .h77-home-hero-caption .elementor-heading-title { color: #45464f; font-size: 16px; font-weight: 400; line-height: normal; }
body .elementor .h77-home-hero .h77-home-hero-project-name { margin-top: 7px; }
.h77-home-hero .h77-home-hero-project-name .elementor-heading-title { color: #06245f; font-size: 20px; font-weight: 700; line-height: normal; }
body .elementor .h77-home-hero .h77-home-hero-project-description { margin-top: 16px; }
.h77-home-hero .h77-home-hero-project-description { color: #45464f; font-size: 16px; line-height: 1.55; }
body .elementor .h77-home-hero .h77-home-hero-metrics { display: grid; grid-template-columns: repeat(2, 1fr); left: -22px; top: 54px; width: calc(100% + 22px); }
body .elementor .h77-home-hero .h77-home-hero-metric { display: grid; gap: 4px; padding: 18px; border-right: 1px solid #cddcf0; }
body .elementor .h77-home-hero .h77-home-hero-metric:last-child { border-right: 0; }
.h77-home-hero .h77-home-hero-number .elementor-heading-title { color: #06245f; font-size: 30px; font-weight: 700; line-height: normal; }
@media (min-width: 981px) and (max-width: 1240px) {
  body .elementor .h77-home-hero .h77-home-hero-card { right: 0; }
}
@media (max-width: 980px) {
  body.page-id-4 .elementor .h77-home-hero { min-height: auto; padding: 90px 0 76px !important; }
  body .elementor .h77-home-hero .h77-home-hero-layout { grid-template-columns: 1fr; }
  body .elementor .h77-home-hero .h77-home-hero-proof { min-height: 420px; }
  .h77-home-hero .h77-home-hero-image { height: 420px; }
  body .elementor .h77-home-hero .h77-home-hero-card { right: 16px; }
  body .elementor .h77-home-hero .h77-home-hero-metrics { left: 16px; width: min(480px, calc(100% - 32px)); }
}
@media (max-width: 720px) {
  .h77-home-hero .h77-home-hero-lead { color: rgba(255,255,255,.9); }
  body .elementor .h77-home-hero .h77-home-hero-actions { gap: 10px; }
  body .elementor .h77-home-hero .h77-home-hero-actions > .elementor-widget,
  .h77-home-hero .h77-home-hero-button .elementor-button { width: 100%; }
}
@media (max-width: 640px) {
  body.page-id-4 .elementor .h77-home-hero { padding: 70px 0 64px !important; }
  .h77-home-hero .h77-home-hero-title .elementor-heading-title { font-size: 34px; }
  body .elementor .h77-home-hero .h77-home-hero-proof { min-height: 390px; }
  .h77-home-hero .h77-home-hero-image { height: 330px; }
  body .elementor .h77-home-hero .h77-home-hero-metrics { left: 12px; top: 18px; width: calc(100% - 24px); }
  body .elementor .h77-home-hero .h77-home-hero-card { right: 12px; bottom: 0; width: calc(100% - 24px); }
}
