html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font-family: inherit;
    vertical-align: baseline;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
    line-height: 1.4;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}

a { color: #fff;text-decoration: none; }

img { max-width: 100%;height: auto; }

p { margin-bottom: 20px; }


.page_width { margin-left: auto;margin-right: auto;max-width: 1400px;width: 100%; }

h1,h2,h3 { line-height: 1.2; }
h4,h5 { line-height: 1.3; }

* { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box; }

body { color: #fff;line-height: 1.4;overflow-x: hidden;font-family: 'Poppins';min-height: 100vh;background: radial-gradient(rgba(#7600bf, 0.5) 0%, transparent 70%), linear-gradient(#0b161e 40%, #202076 70%);
    perspective: 700px; }


/* top/navigation */

#top_wrapper { padding: 30px 0;background: #002137; }

#top_inner { display: flex;align-items: center; }
#top_inner #logo { flex: 1 1 auto; }
#top_inner #logo .container { display: flex;justify-content: center;flex-wrap: wrap;text-align: center;text-transform: uppercase;white-space: nowrap; }
#top_inner #logo .container h1 { font-size: 40px;width: 100%;line-height: 1; }
#top_inner #logo .container h1 span { font-size: 18px;display: block;color: #ff984c;font-weight: 500;letter-spacing: 2px; }
#top_inner #main_menu { width: 100%;display: flex;justify-content: flex-end; }

ul#navigation { display: flex;flex-wrap: wrap; }
ul#navigation li {  }
ul#navigation li a { display: block;padding: 16px 30px;transition: all 0.4s ease; }
ul#navigation li a:hover {  }
ul#navigation li a.on {  }

a#mobile_menu { display: none; }

.close_mobile_menu { display: none;position: absolute;right: 15px;top: 15px;color: #fff;font-size: 40px;text-decoration: none; }

.fw_open { margin-left: 0 !important; }

.standard { display: inline-flex;border-radius: 14px;font-family: inherit;cursor: pointer;border: 0;padding: 16px 32px;font-size: inherit;transition: all 0.4s ease; }
.orange { background: #FF700A;color: #fff; }


/* home */

#home_hero_video { position: fixed;height: 100vh;width: 100%;top: 0;left: 0;z-index: -1; }

#home_intro { display: flex;flex-wrap: wrap;height: 100%;background-color: #003457; }
#home_intro #hi_left { width: 50%;display: flex;justify-content: flex-end;align-items: flex-end; }
#home_intro #hi_left #hi_left_inner { width: 700px;padding-right: 0px;padding-bottom: 100px; }
#home_intro #hi_left h2 { font-size: 72px;font-weight: 700;letter-spacing: -3px;line-height: 1.1;margin-bottom: 30px; }
#home_intro #hi_left p { font-size: 26px; }


#home_intro #hi_left img { display: block;margin-bottom: 20px;max-width: 300px; }

#home_intro #hi_right { width: 50%;height: 100%; }

.home_photo { background-repeat: no-repeat;background-position: 50% 0;height: 100%;transform: translate3d(0,0,0);clip-path: polygon(100% 0, 100% 50%, 100% 100%, 0% 100%, 25% 50%, 0% 0%); }

.bg { animation:slide 3s ease-in-out infinite alternate;background-image: linear-gradient(90deg, #004370 50%, #005994 50%);bottom:0;left:-50%;opacity:.6;position:fixed;right:-50%;top:0;z-index:-1; }

.bg2 {
    animation-direction:alternate-reverse;
    animation-duration:4s;
}

.bg3 {
    animation-duration:5s;
}

@keyframes slide {
    0% {
        transform:translateX(-25%);
    }
    100% {
        transform:translateX(25%);
    }
}

#home_services { padding: 40px 0;background: #fff;color: #000;display: flex;flex-wrap: wrap;align-items: center; }
#home_services #hs_left { width: 50%;display: flex;flex-wrap: wrap;justify-content: flex-end; }
#home_services #hs_left #hsl_inner { width: 700px; }

#home_services #hs_right { width: 50%;display: flex;flex-wrap: wrap;justify-content: center;padding: 100px; }

#home_services h2 { font-size: 72px;margin-bottom: 20px;letter-spacing: -3px; }
#home_services_list { display: flex;flex-wrap: wrap; }
#home_services_list .item { width: 50%;text-align: center;padding: 0 50px; }
#home_services_list img { display: block;margin: 0 auto 20px;max-height: 200px; }
#home_services_list h3 { font-size: 42px;letter-spacing: -2px;margin-bottom: 14px;color: #003457; }



/* footer */

#footer_contact_outer { position: relative;background: #106c99;color: #fff;padding: 60px 0;overflow: hidden; }

#main_contact_form { position: relative;z-index: 100;display: grid;grid-template-columns: 50% 50%;gap: 0px; }
#main_contact_form .div1 { grid-column: 1 / span 2;padding-bottom: 50px; }
#main_contact_form .div3 { grid-row-start: 2; }
#main_contact_form .div4 { grid-row-start: 2;padding-left: 50px; }
#main_contact_form h3 { font-size: 64px;font-weight: 700; }


#footer_form_wrapper { position: relative;z-index: 100; }
#footer_form_wrapper .ff_row { display: flex;flex-wrap: wrap;margin-bottom: 20px;align-items: center; }
#footer_form_wrapper .ff_row input,#footer_form_wrapper .ff_row textarea,#footer_form_wrapper .ff_row select { width: 100%;font-family: inherit;font-size: inherit;background: #fff;color: #000;border: 0;padding: 14px; }

ul#footer_contact li { margin-bottom: 20px; }
ul#footer_contact li:last-child { margin-bottom: 0px; }
ul#footer_contact li a i { font-size: 48px;margin-right: 10px; }
ul#footer_contact li a { font-size: 22px;display: flex;align-items: center;color: #fff;text-shadow: 2px 2px 0 #143f6a }

#footer_base { position: relative;background: #0b1d39;color: #fff;padding: 20px 5% 70px;text-align: center;font-size: 14px; }
#footer_base a { color: #fff; }
#footer_base p span { opacity: 0.6; }
#footer_base p a { transition: all 0.4s ease; }
#footer_base p a i { position: absolute;bottom: 20px;font-size: 48px;left: 50%;margin-left: -24px;transition: all 0.4s ease;opacity: 0.6; }
#footer_base p a.rocket:hover i { opacity: 1;transform: rotate(-45deg); }
#footer_base p:last-child { margin: 0; }




@keyframes glitch {
    1%{
        transform: rotateX(10deg) skewX(90deg);
    }
    5%{
        transform: rotateX(0deg) skewX(0deg);
    }
}

@keyframes blast_off {
    from {
        bottom: 0px;
    }
    to {
        bottom: 2000px;opacity: 0;
    }
}

.launch {
    animation: blast_off 1s;
}


/* clouds */

.frame {
    width: 500px;
    height: auto;
    position: absolute;
    width: 100%;
}

svg {
    max-width: 100%;
    height: auto;
    display: block;
}

/**
 * Paper Plane
 */
/*Paper Plane: Container*/
.plane-container {
    width: 200px;
    margin: 0px auto;
    z-index: 3;position: absolute;right: 10%;
}
 /*Paper Plane: Image*/
.plane {
    width: 100%;
    height: 60px;
}

/*Paper Plane: Animation*/
.plane-container {
    animation: paper-plane-scoping 2s alternate infinite;

    animation-timing-function: linear;
}

@-webkit-keyframes paper-plane-scoping {
    0% {
        -webkit-transform: translateY(0px);
        -moz-transform: translateY(0px);
        transform: translateY(0px);
    }
    100% {
        -webkit-transform: translateY(100px);
        -moz-transform: translateY(100px);
        transform: translateY(100px);
    }
}

.plane {
    -webkit-animation-timing-function: ease-in-out;
    -moz-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;

    -webkit-animation: paper-plane-soaring 4s forwards infinite;
    -moz-animation: paper-plane-soaring 4s forwards infinite;
    animation: paper-plane-soaring 4s forwards infinite;
}
@-webkit-keyframes paper-plane-soaring {
    0% {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    40% {
        -webkit-transform: rotate(15deg);
        -moz-transform: rotate(15deg);
        transform: rotate(15deg);
    }
    50% {
        -webkit-transform: rotate(15deg);
        -moz-transform: rotate(15deg);
        transform: rotate(15deg);
    }
    60% {
        -webkit-transform: rotate(-10deg);
        -moz-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }
    70% {
        -webkit-transform: rotate(-10deg);
        -moz-transform: rotate(-10deg);
        transform: rotate(-10deg);
    }
    100% {
        -webkit-transform: rotate(0deg);
        -moz-transform: rotate(0deg);
        transform: rotate(0deg);
    }
}

/**
 * Clouds
 */
.clouds {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
    transform: translateZ(0);
}

.cloud {
    position: absolute;
    top: 20%;
    width: 300px;
    right: 0;
    opacity: 1;
}

.cloud.front {
    z-index: 9;
}

.cloud.distant {
    z-index: 1;
}

.cloud.background {
    z-index: 1;
}

/*Cloud Sizing*/
.cloud.smaller {
    margin-right: 400px;
    width: 100px;
    margin-top: 50px;
}

.cloud.small {
    margin-right: 200px;
    width: 150px;
}

.cloud.big {
    width: 500px;
    margin-top: 50px;
    margin-right: 150px;
}

.cloud.massive {
    width: 600px;
    margin-top: 20px;
    margin-right: 0px;
}


/*Cloud: Animation*/
.cloud {
    -webkit-animation-name: cloud-movement;
    -webkit-animation-timing-function: linear;
    -webkit-animation-direction: forwards;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-duration: 8s;

    -moz-animation-name: cloud-movement;
    -moz-animation-timing-function: linear;
    -moz-animation-direction: forwards;
    -moz-animation-iteration-count: infinite;
    -moz-animation-duration: 8s;

    animation-name: cloud-movement;
    animation-timing-function: linear;
    animation-direction: forwards;
    animation-iteration-count: infinite;
    animation-duration: 8s;
}

.slow {
    -webkit-animation-duration: 9.2s;
    -moz-animation-duration: 9.2s;
    animation-duration: 9.2s;
}

.slower {
    -webkit-animation-duration: 11.2s;
    -moz-animation-duration: 11.2s;
    animation-duration: 11.2s;
}

.slowest {
    -webkit-animation-duration: 13.5s;
    -moz-animation-duration: 13.5s;
    animation-duration: 13.5s;
}

.super-slow {
    -webkit-animation-duration: 20.5s;
    -moz-animation-duration: 20.5s;
    animation-duration: 20.5s;
}

@-webkit-keyframes cloud-movement {
    0% {
        opacity: 0.1;
        transform: translateX(300px);
    }
    10% {

        opacity: 0.7;
    }
    90% {
        opacity: 0;
    }
    100% {
        opacity: 0;
        transform: translateX(-1000px);
    }
}

path {
    transform-origin: 50% 0%;
}
.background--custom {
    background-color: #FFFFFF;
    position: fixed;
    width: 100vw;
    height: 100vh;
    z-index: -1;
    top: 0;
    left: 0;
}
@keyframes path0 {
    0% {
        transform: rotate(-10deg);
    }
    100% {
        transform: rotate(10deg);
    }
}
@keyframes path1 {
    0% {
        transform: rotate(-30deg);
    }
    100% {
        transform: rotate(30deg);
    }
}
@keyframes path2 {
    0% {
        transform: rotate(40deg);
    }
    100% {
        transform: rotate(-40deg);
    }
}










@media only screen and (max-width: 900px) {

    a#mobile_menu { display: flex;position: fixed;right: 20px;top: 20px;width: 50px;height: 50px;border-radius: 25px;background: #ed1e24;justify-content: center;text-align: center;align-items: center;z-index: 100; }
    a#mobile_menu img { display: block;width: 30px;height: auto; }


    #nav_wrapper_container {  }
    #nav_wrapper { background-color: #000d;backdrop-filter: blur(10px);padding: 20px;width: 100%;position: fixed;left: 0;top: 0;z-index: 9999;min-height: 100vh;margin-left: -100%;transition: all 0.4s ease 0s;text-align: left; }

    .close_mobile_menu { display: block;position: absolute;right: 16px;top: 10px;font-size: 32px;color: #fff;text-decoration: none; }

    #menu_inner_wrapper { overflow: auto;position: absolute;bottom:0;left:0;right:0;top:0;width: 100%;padding: 20px 70px 20px 20px; }

    ul#navigation { display: block;background: none;padding: 0; }
    ul#navigation li { margin-bottom: 2px;margin-left: 0; }
    ul#navigation li a { display: block;padding: 16px 20px;color: #fff; }


    }


