/* Start custom CSS for html, class: .elementor-element-454a12e */.gsp-odm-hero, .gsp-odm-hero *{ box-sizing:border-box; }
.gsp-odm-hero{
  --odm-navy:#061a35; --odm-lime:#cfff04; --odm-steel:#14417a; --odm-muted:#afbed3;
  position:relative; isolation:isolate;
  width:100vw; max-width:100vw; min-height:620px;
  margin-left:calc(50% - 50vw); margin-right:calc(50% - 50vw);
  display:flex; align-items:center; justify-content:center; text-align:center;
  overflow:hidden; color:#fff;
  background:radial-gradient(ellipse at center top, #0c2c52 0%, #061a35 60%);
  font-family:Inter,"Segoe UI",Arial,sans-serif;
}
.gsp-odm-hero a{ text-decoration:none !important; }
.gsp-odm-hero-bg{ position:absolute; inset:0; z-index:-3; background:linear-gradient(135deg,#061a35,#0a2647); }
.gsp-odm-hero-overlay{
  position:absolute; inset:0; z-index:-2;
  background:radial-gradient(circle at 50% 30%, rgba(207,255,4,0.08), transparent 55%);
}
.gsp-odm-hero-diagonal{
  position:absolute; inset:-20% -10%; z-index:-1;
  background:repeating-linear-gradient(115deg, rgba(255,255,255,0.02) 0 2px, transparent 2px 60px);
}
.gsp-odm-hero-container{ width:100%; max-width:900px; margin:0 auto; padding:80px 24px 56px; }
.gsp-odm-breadcrumb{
  display:flex; align-items:center; justify-content:center; gap:8px; margin:0 0 30px;
  font-size:11px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; color:#92a6c1;
}
.gsp-odm-breadcrumb a{ color:#c5d1e1 !important; transition:color .2s; }
.gsp-odm-breadcrumb a:hover{ color:var(--odm-lime) !important; }
.gsp-odm-breadcrumb strong{ color:var(--odm-lime); }
.gsp-odm-hero-eyebrow{
  display:inline-flex; align-items:center; gap:10px; margin-bottom:18px;
  font-size:11px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; color:var(--odm-lime);
}
.gsp-odm-hero h1{
  margin:0; font-size:clamp(38px,4.4vw,58px); line-height:1.08; font-weight:800; letter-spacing:-.03em;
}
.gsp-odm-hero h1 span{ color:#cfdbed; }
.gsp-odm-hero-desc{ max-width:620px; margin:22px auto 0; font-size:17px; line-height:1.7; color:var(--odm-muted); }
.gsp-odm-hero-btn{
  display:inline-flex !important; align-items:center; gap:12px; margin-top:30px;
  padding:0 28px; min-height:54px; border-radius:999px; background:var(--odm-lime); color:#061a35 !important;
  font-size:14px; font-weight:800; box-shadow:0 16px 36px rgba(207,255,4,.18);
  transition:transform .2s, background .2s;
}
.gsp-odm-hero-btn:hover{ background:#ddff3a; transform:translateY(-2px); }
.gsp-odm-hero-strip{
  display:flex; align-items:center; justify-content:center; gap:0; margin-top:56px; max-width:640px; margin-left:auto; margin-right:auto;
}
.gsp-odm-strip-item{ display:flex; flex-direction:column; align-items:center; gap:10px; flex:1; position:relative; }
.gsp-odm-strip-item:not(:last-child)::after{
  content:""; position:absolute; top:6px; left:56%; right:-44%; height:1px; background:rgba(255,255,255,.18);
}
.gsp-odm-dot{ width:13px; height:13px; border-radius:50%; background:#0c2c52; border:2px solid var(--odm-lime); z-index:1; }
.gsp-odm-strip-item small{ font-size:11.5px; font-weight:600; color:#b7c5db; }
@media(max-width:767px){
  .gsp-odm-hero{ min-height:640px; }
  .gsp-odm-hero-container{ padding:60px 18px 44px; }
  .gsp-odm-hero h1{ font-size:clamp(32px,9vw,42px); }
  .gsp-odm-hero-strip{ display:none; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a99fb4b */html, body{ overflow-x:clip; }
.gsp-odm-intro{
  position:relative; left:50%; width:100vw; max-width:100vw;
  margin:0 -50vw; padding:64px 24px;
  font-family:Inter,"Segoe UI",Arial,sans-serif;
  background:linear-gradient(180deg,#ffffff 0%, #f7f9fc 100%);
}
.gsp-odm-intro, .gsp-odm-intro *{ box-sizing:border-box; }
.gsp-odm-intro-container{
  position:relative; z-index:1; display:grid;
  grid-template-columns:minmax(0,58fr) minmax(0,42fr);
  align-items:center; gap:clamp(48px,5.5vw,82px);
  width:100%; max-width:1450px; margin:0 auto;
}
.gsp-odm-intro-content{ width:100%; max-width:640px; }
.gsp-odm-intro-eyebrow{
  display:flex; align-items:center; gap:10px; margin:0 0 12px;
  color:#14417a; font-size:11px; font-weight:700; letter-spacing:1.5px;
}
.gsp-odm-intro-eyebrow i{ display:block; width:25px; height:2px; background:#cfff04; }
.gsp-odm-intro-content h2{
  margin:0 0 19px; color:#0a1f3d; font-size:clamp(36px,4vw,48px); font-weight:800; line-height:1.1; letter-spacing:-.03em;
}
.gsp-odm-intro-content h2 em{ color:#14417a; font-style:normal; }
.gsp-odm-intro-lead{ margin:0 0 14px; color:#173e68; font-size:17px; font-weight:600; line-height:1.55; }
.gsp-odm-intro-text{ margin:0 0 11px; color:#64748a; font-size:15px; line-height:1.72; }
.gsp-odm-intro-text:last-child{ margin-bottom:0; }
.gsp-odm-intro-image{
  position:relative; width:100%; height:420px; border-radius:14px; overflow:hidden;
  background:#dce5ef center/cover no-repeat; border:1px solid rgba(7,48,91,.08);
  box-shadow:0 22px 48px rgba(7,38,73,.13);
}
.gsp-odm-intro-image::before{
  content:""; position:absolute; z-index:2; top:17px; right:17px; width:39px; height:39px;
  border-top:2px solid #cfff04; border-right:2px solid #cfff04;
}
.gsp-odm-intro-overlay{ position:absolute; inset:0; z-index:1; background:linear-gradient(180deg, rgba(4,20,39,.01) 40%, rgba(4,20,39,.76) 100%); }
.gsp-odm-intro-caption{ position:absolute; z-index:3; left:27px; right:27px; bottom:25px; display:flex; gap:11px; color:#fff; }
.gsp-odm-intro-caption>span{ display:block; width:25px; height:2px; margin-top:7px; background:#cfff04; }
.gsp-odm-intro-caption strong{ display:block; margin:0 0 3px; font-size:10.5px; font-weight:700; letter-spacing:1.2px; }
.gsp-odm-intro-caption small{ display:block; color:rgba(255,255,255,.78); font-size:11.5px; }
@media(max-width:900px){
  .gsp-odm-intro-container{ grid-template-columns:1fr; gap:34px; }
  .gsp-odm-intro-image{ height:340px; order:-1; }
}
@media(max-width:600px){
  .gsp-odm-intro{ padding:38px 15px; }
  .gsp-odm-intro-content h2{ font-size:32px; }
  .gsp-odm-intro-image{ height:270px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-c88ff8e */html, body{ overflow-x:clip; }
.gsp-odm-timeline{
  position:relative; left:50%; width:100vw; max-width:100vw; margin:0 -50vw;
  padding:76px 24px; font-family:Inter,"Segoe UI",Arial,sans-serif;
  background:linear-gradient(180deg,#f4f7fb 0%, #eef3f8 100%);
}
.gsp-odm-timeline, .gsp-odm-timeline *{ box-sizing:border-box; }
.gsp-odm-timeline-container{ position:relative; z-index:1; width:100%; max-width:900px; margin:0 auto; }
.gsp-odm-timeline-header{ text-align:center; max-width:600px; margin:0 auto 52px; }
.gsp-odm-timeline-eyebrow{
  display:inline-block; margin-bottom:10px; color:#14417a; font-size:11px; font-weight:800; letter-spacing:1.6px;
}
.gsp-odm-timeline-header h2{ margin:0 0 11px; color:#071d38; font-size:clamp(32px,3.5vw,42px); font-weight:800; letter-spacing:-.02em; }
.gsp-odm-timeline-header p{ margin:0; color:#68788c; font-size:15px; }
.gsp-odm-timeline-track{ position:relative; padding-left:52px; }
.gsp-odm-timeline-track::before{
  content:""; position:absolute; left:19px; top:8px; bottom:8px; width:2px;
  background:linear-gradient(180deg, #cfff04, #14417a);
}
.gsp-odm-t-item{ position:relative; padding-bottom:38px; }
.gsp-odm-t-item:last-child{ padding-bottom:0; }
.gsp-odm-t-num{
  position:absolute; left:-52px; top:0; width:40px; height:40px; border-radius:50%;
  background:#0a1f3d; color:#cfff04; display:flex; align-items:center; justify-content:center;
  font-size:13px; font-weight:800; border:3px solid #eef3f8;
}
.gsp-odm-t-content{
  background:#fff; border:1px solid #dce5ee; border-radius:12px; padding:20px 24px;
  box-shadow:0 8px 24px rgba(7,38,73,.05); transition:transform .2s, box-shadow .2s;
}
.gsp-odm-t-content:hover{ transform:translateX(4px); box-shadow:0 14px 32px rgba(7,38,73,.09); }
.gsp-odm-t-content h3{ margin:0 0 6px; color:#0a2b4f; font-size:17px; font-weight:800; }
.gsp-odm-t-content p{ margin:0; color:#69798d; font-size:13.5px; line-height:1.6; }
@media(max-width:600px){
  .gsp-odm-timeline{ padding:52px 15px; }
  .gsp-odm-timeline-track{ padding-left:44px; }
  .gsp-odm-t-num{ left:-44px; width:34px; height:34px; font-size:11px; }
  .gsp-odm-t-content{ padding:16px 18px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-13fdb74 */html, body{ overflow-x:clip; }
.gsp-odm-why{
  position:relative; left:50%; width:100vw; max-width:100vw; margin:0 -50vw;
  padding:72px 24px; font-family:Inter,"Segoe UI",Arial,sans-serif;
  background:#0a1f3d;
}
.gsp-odm-why, .gsp-odm-why *{ box-sizing:border-box; }
.gsp-odm-why-container{ position:relative; z-index:1; width:100%; max-width:1300px; margin:0 auto; }
.gsp-odm-why-header{ max-width:600px; margin:0 auto 44px; text-align:center; }
.gsp-odm-why-eyebrow{ display:inline-block; margin-bottom:10px; color:#cfff04; font-size:11px; font-weight:800; letter-spacing:1.6px; }
.gsp-odm-why-header h2{ margin:0; color:#fff; font-size:clamp(30px,3.4vw,40px); font-weight:800; letter-spacing:-.02em; }
.gsp-odm-why-grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; }
.gsp-odm-why-card{
  padding:30px 24px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.1); border-radius:14px;
  transition:background .2s, transform .2s;
}
.gsp-odm-why-card:hover{ background:rgba(255,255,255,.07); transform:translateY(-4px); }
.gsp-odm-why-big{ display:block; margin-bottom:14px; font-size:34px; font-weight:800; color:#cfff04; opacity:.85; }
.gsp-odm-why-card h3{ margin:0 0 8px; color:#fff; font-size:16px; font-weight:800; }
.gsp-odm-why-card p{ margin:0; color:#9fb0c9; font-size:13px; line-height:1.6; }
@media(max-width:1000px){ .gsp-odm-why-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:560px){
  .gsp-odm-why{ padding:48px 15px; }
  .gsp-odm-why-grid{ grid-template-columns:1fr; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-0655a82 */html, body{ overflow-x:clip; }
.gsp-odm-gallery{
  position:relative; left:50%; width:100vw; max-width:100vw; margin:0 -50vw;
  padding:72px 24px 78px; font-family:Inter,"Segoe UI",Arial,sans-serif;
  background:linear-gradient(180deg,#ffffff 0%, #f7f9fc 100%);
}
.gsp-odm-gallery, .gsp-odm-gallery *{ box-sizing:border-box; }
.gsp-odm-gallery-container{ position:relative; z-index:1; width:100%; max-width:1300px; margin:0 auto; }
.gsp-odm-gallery-header{ max-width:640px; margin:0 0 36px; }
.gsp-odm-gallery-eyebrow{ display:flex; align-items:center; gap:10px; margin:0 0 11px; color:#14417a; font-size:11px; font-weight:700; letter-spacing:1.6px; }
.gsp-odm-gallery-eyebrow i{ display:block; width:25px; height:2px; background:#cfff04; }
.gsp-odm-gallery-header h2{ margin:0 0 10px; color:#071d38; font-size:clamp(30px,3.4vw,40px); font-weight:800; }
.gsp-odm-gallery-header p{ margin:0; color:#68788c; font-size:15px; }
.gsp-odm-gallery-grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); grid-auto-rows:280px; gap:18px; }
.gsp-odm-gallery-wide{ grid-column:span 1; }
.gsp-odm-gallery-item{ position:relative; overflow:hidden; border-radius:12px; border:1px solid #d7e1eb; cursor:pointer; }
.gsp-odm-gallery-image{ position:absolute; inset:0; background:#ccd9e7 center/cover no-repeat; transition:transform .5s ease; }
.gsp-odm-gallery-overlay{ position:absolute; inset:0; background:linear-gradient(180deg, rgba(4,20,39,.02) 40%, rgba(4,20,39,.82) 100%); }
.gsp-odm-gallery-caption{ position:absolute; left:20px; right:20px; bottom:20px; color:#fff; }
.gsp-odm-gallery-caption span{ display:block; margin-bottom:5px; color:#cfff04; font-size:10px; font-weight:700; letter-spacing:1.2px; text-transform:uppercase; }
.gsp-odm-gallery-caption h3{ margin:0; font-size:16px; font-weight:800; }
.gsp-odm-gallery-item:hover .gsp-odm-gallery-image{ transform:scale(1.06); }
@media(max-width:900px){ .gsp-odm-gallery-grid{ grid-template-columns:1fr 1fr; grid-auto-rows:220px; } }
@media(max-width:600px){
  .gsp-odm-gallery{ padding:48px 15px; }
  .gsp-odm-gallery-grid{ grid-template-columns:1fr; grid-auto-rows:220px; }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-69a7b19 */html, body{ overflow-x:clip; }
.gsp-odm-cta{
  position:relative; left:50%; width:100vw; max-width:100vw; margin:0 -50vw;
  padding:70px 24px; text-align:center; font-family:Inter,"Segoe UI",Arial,sans-serif;
  background:linear-gradient(120deg,#14417a,#0a1f3d);
}
.gsp-odm-cta, .gsp-odm-cta *{ box-sizing:border-box; }
.gsp-odm-cta h2{ margin:0 0 12px; color:#fff; font-size:clamp(28px,3.2vw,36px); font-weight:800; }
.gsp-odm-cta p{ margin:0 auto 26px; max-width:520px; color:#c4d0e2; font-size:15px; line-height:1.6; }
.gsp-odm-cta-btn{
  display:inline-flex !important; align-items:center; gap:10px; padding:0 28px; min-height:52px; border-radius:999px;
  background:#cfff04; color:#0a1f3d !important; font-size:14px; font-weight:800; text-decoration:none !important;
  transition:transform .2s;
}
.gsp-odm-cta-btn:hover{ transform:translateY(-2px); }/* End custom CSS */