.elementor-2825 .elementor-element.elementor-element-7f377d5{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2825 .elementor-element.elementor-element-da43d11{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2825 .elementor-element.elementor-element-31172cd{--display:flex;--padding-top:70px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-2825 .elementor-element.elementor-element-eb265e3{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:1;}.elementor-2825 .elementor-element.elementor-element-4b227ad{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -8px) 0px;}.elementor-2825 .elementor-element.elementor-element-4b227ad .elementor-heading-title{font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:0.14em;color:#6FB6FF;}.elementor-2825 .elementor-element.elementor-element-dba74b8 .elementor-heading-title{color:var( --e-global-color-b144015 );}.elementor-2825 .elementor-element.elementor-element-3a92e5e{padding:0px 0px 10px 0px;font-family:"Inter", Sans-serif;color:var( --e-global-color-4ed0778 );}.elementor-2825 .elementor-element.elementor-element-a6506a0 .elementor-button{background-color:var( --e-global-color-b144015 );fill:var( --e-global-color-44aec6a );color:var( --e-global-color-44aec6a );box-shadow:0px 12px 30px -12px rgba(7.0000000000000036, 26.000000000000036, 51, 0.5);border-style:solid;border-width:0px 0px 0px 0px;}.elementor-2825 .elementor-element.elementor-element-a6506a0 .elementor-button-content-wrapper{flex-direction:row-reverse;}.elementor-2825 .elementor-element.elementor-element-9ce148b{--display:flex;--justify-content:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overflow:hidden;}.elementor-2825 .elementor-element.elementor-element-bd71c22{--display:flex;--gap:30px 30px;--row-gap:30px;--column-gap:30px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2825 .elementor-element.elementor-element-d08ae39{text-align:center;}.elementor-2825 .elementor-element.elementor-element-d08ae39 .elementor-heading-title{font-size:clamp(28px, calc(23.63px + 0.93vw), 44px);}:root{--page-title-display:none;}@media(max-width:1199px){.elementor-2825 .elementor-element.elementor-element-9ce148b{--min-height:350px;}}@media(max-width:1024px){.elementor-2825 .elementor-element.elementor-element-31172cd{--padding-top:50px;--padding-bottom:50px;--padding-left:20px;--padding-right:20px;}.elementor-2825 .elementor-element.elementor-element-4b227ad .elementor-heading-title{font-size:13px;}.elementor-2825 .elementor-element.elementor-element-3a92e5e{padding:0px 0px 5px 0px;}.elementor-2825 .elementor-element.elementor-element-9ce148b{--min-height:300px;}.elementor-2825 .elementor-element.elementor-element-bd71c22{--gap:25px 25px;--row-gap:25px;--column-gap:25px;}}@media(max-width:767px){.elementor-2825 .elementor-element.elementor-element-31172cd{--padding-top:30px;--padding-bottom:30px;--padding-left:20px;--padding-right:20px;}.elementor-2825 .elementor-element.elementor-element-4b227ad{text-align:center;}.elementor-2825 .elementor-element.elementor-element-4b227ad .elementor-heading-title{line-height:1.4;letter-spacing:0.12em;}.elementor-2825 .elementor-element.elementor-element-dba74b8{text-align:center;}.elementor-2825 .elementor-element.elementor-element-3a92e5e{padding:0px 0px 5px 0px;text-align:center;}.elementor-2825 .elementor-element.elementor-element-9ce148b{--min-height:0px;}.elementor-2825 .elementor-element.elementor-element-bd71c22{--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-2825 .elementor-element.elementor-element-d08ae39{text-align:center;}}@media(min-width:768px){.elementor-2825 .elementor-element.elementor-element-eb265e3{--width:730px;}.elementor-2825 .elementor-element.elementor-element-bd71c22{--content-width:1020px;}}/* Start custom CSS for button, class: .elementor-element-a6506a0 */.elementor-2825 .elementor-element.elementor-element-a6506a0 a {
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.elementor-2825 .elementor-element.elementor-element-a6506a0 svg {
  transition: transform 0.25s ease;
}
.elementor-2825 .elementor-element.elementor-element-a6506a0 a:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 38px -14px rgba(7, 26, 51, 0.6);
}
.elementor-2825 .elementor-element.elementor-element-a6506a0 a:hover svg {
  transform: translateX(4px);
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7cd1c76 */.elementor-2825 .elementor-element.elementor-element-7cd1c76 {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  margin-top: 20px;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-31172cd */.elementor-2825 .elementor-element.elementor-element-31172cd .e-con-inner {
  position: relative;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d8344ec */.elementor-2825 .elementor-element.elementor-element-d8344ec {
  position: absolute;
  height: 100%;
  width: 100%;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-da43d11 */.elementor-2825 .elementor-element.elementor-element-da43d11 {
  background: linear-gradient(135deg, #071A33 0%, #0A2342 45%, #104896 100%);
}
.elementor-2825 .elementor-element.elementor-element-da43d11::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(to bottom, #0B2634 0%, rgba(11, 38, 52, 0) 30%),
    radial-gradient(560px 380px at 88% 20%, rgba(111, 182, 255, .2), transparent 70%),
    radial-gradient(480px 340px at 5% 100%, rgba(16, 72, 150, .55), transparent 70%);
  pointer-events: none;
}
.elementor-2825 .elementor-element.elementor-element-da43d11::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='98' viewBox='0 0 56 98'%3E%3Cpath d='M28 2 54 17v30L28 62 2 47V17Z M28 66 54 81v30L28 126 2 111V81Z' fill='none' stroke='%23ffffff' stroke-opacity='0.045' stroke-width='1.5'/%3E%3C/svg%3E");
  pointer-events: none;
}

/* Hero decorative elements */
.elementor-2825 .elementor-element.elementor-element-da43d11 .ss-hero-bighex {
  position: absolute;
  top: 50%;
  right: -140px;
  transform: translateY(-50%);
  color: #6FB6FF;
  opacity: .08;
  animation: ss-bighex-spin 60s linear infinite;
  pointer-events: none;
}

@keyframes ss-bighex-spin {
  to { transform: translateY(-50%) rotate(360deg); }
}

.elementor-2825 .elementor-element.elementor-element-da43d11 .ss-hero-cluster {
  position: absolute;
  top: 50%;
  right: -20px;
  transform: translateY(-50%);
  animation: ss-cluster-drift 9s ease-in-out infinite;
  pointer-events: none;
}

@keyframes ss-cluster-drift {
  0%, 100% { transform: translateY(-50%); }
  50% { transform: translateY(calc(-50% - 12px)); }
}

.elementor-2825 .elementor-element.elementor-element-da43d11 .ss-hero-edge {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: linear-gradient(to right, transparent, rgba(111, 182, 255, .5), transparent);
  pointer-events: none;
}

@media (max-width: 900px) {
  .elementor-2825 .elementor-element.elementor-element-da43d11 .ss-hero-cluster { opacity: .4; right: -120px; }
  .elementor-2825 .elementor-element.elementor-element-da43d11 .ss-hero-bighex { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-2825 .elementor-element.elementor-element-da43d11 .ss-hero-cluster,
  .elementor-2825 .elementor-element.elementor-element-da43d11 .ss-hero-bighex { animation: none; }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-0dc6524 */.elementor-2825 .elementor-element.elementor-element-0dc6524 .wpcf7-form {
  margin-bottom: 0;
}
.elementor-2825 .elementor-element.elementor-element-0dc6524 .form-row {
  margin-bottom: 10px;
}
.elementor-2825 .elementor-element.elementor-element-0dc6524 input:not([type="submit"]),
.elementor-2825 .elementor-element.elementor-element-0dc6524 textarea {
  font: 400 16px "Inter", Sans-serif!important;
  color: #1a394a !important;
  border-radius: 5px;
  border: 1px solid #1a394a;
  margin-bottom: 14px;
  padding: 18px 25px;
}
.elementor-2825 .elementor-element.elementor-element-0dc6524 textarea::placeholder,
.elementor-2825 .elementor-element.elementor-element-0dc6524 input::placeholder {
  color: #1a394a !important;
}
.elementor-2825 .elementor-element.elementor-element-0dc6524 textarea {
  border-radius: 5px!important;
  height: 200px;
  resize: none;
}

.elementor-2825 .elementor-element.elementor-element-0dc6524 .submit-btn {
  text-align: right;
}
.elementor-2825 .elementor-element.elementor-element-0dc6524 input[type="submit"] {
  background-color: #0f428a;
  border: 0!important;
  outline: 0!important;
  color: #fff;
  font-size: 18px!important;
  text-transform: none;
  letter-spacing: 0.01em;
  transition: all 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  padding: 20px 30px 19px!important;
  max-width: 280px;
  width: 100%!important;
}
.elementor-2825 .elementor-element.elementor-element-0dc6524 input[type="submit"]:focus,
.elementor-2825 .elementor-element.elementor-element-0dc6524 input[type="submit"]:hover {
  background-color: #104896;
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(0,0,0,0.3);
}
.elementor-2825 .elementor-element.elementor-element-0dc6524 .wpcf7-spinner {
  margin: 0;
  right: 10px;
  position: absolute;
}
.elementor-2825 .elementor-element.elementor-element-0dc6524 .wpcf7-not-valid-tip {
  display: none;
}
.elementor-2825 .elementor-element.elementor-element-0dc6524 input.wpcf7-not-valid,  
.elementor-2825 .elementor-element.elementor-element-0dc6524 textarea.wpcf7-not-valid {
  border: 1px solid #f00 !important;
  box-shadow: 0 0 0 3px rgba(255, 0, 0, 0.12);
}

.elementor-2825 .elementor-element.elementor-element-0dc6524 input:not([type="submit"]):focus, 
.elementor-2825 .elementor-element.elementor-element-0dc6524 textarea:focus {
  border-color: #2F9A5E;
  box-shadow: 0 0 0 3px rgba(47, 154, 94, 0.12);
}

.elementor-2825 .elementor-element.elementor-element-0dc6524 .wpcf7-response-output {
  border: 0;
  font-weight: 500;
  font-size: 14px;
  text-align: center;
  line-height: normal;
  margin: 12px 0 0;
  padding: 8px 16px;
  border-radius: 4px;
  position: static;
}
.elementor-2825 .elementor-element.elementor-element-0dc6524 form.invalid .wpcf7-response-output, 
.elementor-2825 .elementor-element.elementor-element-0dc6524 form.unaccepted .wpcf7-response-output {
  background: #fef2f2;
  color: #e02020;
}
.elementor-2825 .elementor-element.elementor-element-0dc6524 form.sent .wpcf7-response-output {
  background: #f0fdf4;
  color: #2CAE4A;
}

@media (max-width: 767px) {
  .elementor-2825 .elementor-element.elementor-element-0dc6524 .form-row {
    margin-bottom: 0!important;
  }
  .elementor-2825 .elementor-element.elementor-element-0dc6524 .form-row-half {
    width: 100%;
  }
  .elementor-2825 .elementor-element.elementor-element-0dc6524 textarea {
    height: 120px;
  }
}/* End custom CSS */
/* Start custom CSS */.animated-divider .elementor-progress-bar {
    background-image: linear-gradient(to right, #0d2950 0%, #3a6bb8 50%, #3a6bb8 80%,#3a6bb8 85%,#6390da 100%);
    border-radius: 0;
    max-height: 5px;
}

.page-id-47 #main-footer > div > div:not(div:last-child) {
    display: none;
}
.page-id-47 #main-footer > div > div:last-child {
    padding-top: 90px;
}

.force-break {
  /* These are technically the same, but use both */
  overflow-wrap: break-word;
  word-wrap: break-word;

  /* Instead use this non-standard one: */
  word-break: break-word;

  /* Adds a hyphen where the word breaks, if supported (No Blink) */
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}

#contact-form-section {
    background: linear-gradient(to bottom right, #0c2534 0%, #0f4289 33%, #0f4289 67%, #71ace2 100%);
}

@media screen and (max-width: 1024px) {
    .page-id-47 #main-footer > div > div:last-child {
        padding-top: 0;
    }
}/* End custom CSS */