body {
    font-family: var(--font-rogan-light);
    color: #ffffff;
    background:
    linear-gradient(180deg, rgba(5,31,51,1) 0%, rgba(5,31,51,0.5) 13%, rgba(255,255,255,0) 100%),
    url('../images/background_square_new.svg'),
    #041929;
    background-repeat: repeat;
    margin-bottom: 42px; /* footer hight */
}
header{
    height:108px;
    background: url(../images/background_lines.png) repeat-x;
    background-position: center 0;
}
#header_container {
    width: 1420px;
    min-height: 108px;
    margin: 0 auto;
}
#header_container::after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
#header_up{
    height: 77px;
    background-color: #051F33;
}
#header_down {    
    width: 534px;
    height: 30px;
    background: url(../images/header_down.png) right no-repeat;    
    margin-top: -1px;
}
#header_container section {
    float: left;
    min-width: 142px;
    padding: 28px 0 0 35px;
}
#header_container section img, #footer_logo img{
    width: 7rem;
}
#header_right {
    float: right;
    width: 886px;
    height: 77px;
    background: url(../images/background_dot.png) repeat-x;
    background-position: 0 76px;
}
#menu_button{
    display: none;
}
#header_container nav {
    float: right;
    width: 700px;
    margin: 0 35px 0 0;
    background-color: #051F33;
}
#header_container nav ul li a {
    float: left;
    min-width: 10%;
    width: 134px;
    min-height: 10%;
    height: 78px;
    padding: 27px 0 0 0;
    margin: 0 3px;
    text-align: center;
    font-size: var(--size-15px);
    font-family: var(--font-rogan-medium);
    letter-spacing: var(--size-1px);
    border-bottom: 3px solid rgba(30, 180, 242, .5); /* #1eb4f2*/
    -webkit-background-clip: padding-box; /* for Safari */
    background-clip: padding-box; /* for IE9+, Firefox 4+, Opera, Chrome */
    cursor: pointer;
    text-decoration: none;
}
#header_container nav ul li a:hover {
    color: #1eb4f2;
    border-bottom: 3px solid rgba(30, 180, 242, 1); /* #1eb4f2*/  
    background: radial-gradient(circle, rgba(30,180,242,.18) 0%, rgba(0,0,0,0) 50%);
    background-position: 0 -40px;
    background-repeat: no-repeat;  
}
#header_container nav ul li.activePage a {
    color: #1eb4f2;
    border-bottom: 3px solid rgba(30, 180, 242, 1); /* #1eb4f2*/  
    background: radial-gradient(circle, rgba(30,180,242,.18) 0%, rgba(0,0,0,0) 50%);
    background-position: 0 -40px;
    background-repeat: no-repeat;  
}

#main-body-container {    
    margin: 47px auto 0 auto;
}
#main-body-container::after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
#title{
    width: 1420px;
    height: 106px;
    margin: 100px auto 0;
}
#main-article {
    float: left;
}

footer {
    margin-top: 4em;
}
#footer_container{
    width: 1420px;
    margin: 0 auto;
}
#footer_top {
    height: 42px;
    background: url(../images/footer_background.png) repeat-x;
    background-position: center 21px;
}
#footer_content {
    height: 248px;
    background: #051f33;
    padding-top: 45px;
}
#footer_logo {
    float: left;
    width: 16%;
    height: 170px;
    margin: 0 3%;
}
#footer_logo img{
    margin: 0 auto;
}
#footer_links {
    float: left;
    width: 28%;
    height: 170px;
    margin: 0 2%;
}
#footer_pages {
    float: left;
    width: 40%;
    margin-left:10%;
}
#footer_social {
    float: left;
    width: 40%;
    margin-left:10%;
}
#footer_links ul li{    
    font-family: var(--font-rogan-regular);
    font-size: var(--size-17px);
    padding: 5px 0;
}
#footer_links ul li a:hover{
    color: var(--color-future-blue);
}
#footer_address {
    float: left;
    width: 19%;
    height: 170px;
    margin: 0 2%;
}
#footer_address address {
    font-family: var(--font-rogan-regular);
    font-size: var(--size-17px);
    font-style: normal;
}
#footer_seal {
    float: left;
    width: 17%;
    height: 170px;
    margin: 0 3%;
    margin-right: 0;
}
#footer_seal img {
    width: 150px;
    margin: 0 auto;
}
#footer_bottom{
    float: left;
    width: 100%;
    height: 42px;
    margin: 0 auto;
    background: #041929;
}
#footer_extra_links {
    float: left;
    width: 50%;
    height: 24px;
    margin-top: 10px;
    font-family: var(--font-rogan-bold);
    font-size: var(--size-12px);
    color: var(--color-future-blue);
    letter-spacing:  var(--size-1-5px);  
    text-transform: uppercase;
    top: 36px;
    position: relative;
}
#footer_extra_links li {
    display: inline;
    margin: 0 55px;
}
#footer_copyright {
    float: right;
    width: 50%;
    height: 24px;
    margin-top: 10px;
    text-align: right;
    top: 36px;
    position: relative;
}

#footer_copyright p {
    font-family: var(--font-rogan-bold);
    font-size: var(--size-12px);
    letter-spacing:  var(--size-1-5px);  
    text-transform: uppercase;
}

/* Form fields*/
.field {
    margin: 1rem 0;
}
.field label span, .form-group span.required_field {
    text-transform: uppercase;
    font-family: var(--font-rogan-bold);
    font-size: var(--size-14px);    
    opacity: 0.4;
    float: right;
}
.form-group span.required_field{
    clear: both;
    display: block;
    margin-top: 5px;
    left: -2px;
    position: relative;
    margin-bottom: 20px;
    float: left;
}
.field label {
    width: 320px;
    letter-spacing: var(--size-1px);
    text-transform: uppercase;
    font-family: var(--font-rogan-bold);
    font-size: var(--size-14px);
    line-height: 1.25rem;
    display: block;
    margin-bottom: 0.5rem;
    opacity: 0.7;
}
input, select, textarea {
    background: rgb(4, 26, 43);
    border-radius: 0px;
    border: 1px solid rgb(8, 46, 61);
    height: 48px;
    max-width: 100%;
    font-family: var(--font-rogan-regular);
    font-size: var(--size-17px);
}
input[type='text'], input[type='email'], select {
    width: 320px;
}
input[type='checkbox']{
    height: auto;
}
textarea {
    width: 650px;
    height: 142px;
    max-width: 100%;
    padding: 0.563rem 1rem;
    line-height: var(--size-25px);
}
input {
    padding: 0.563rem 1rem;
    font-weight: 400;
}
input::placeholder, textarea::placeholder {    
    font-family: var(--font-rogan-normal);
    color: #ADB5BD;
}
input:hover, select:hover, textarea:hover {
    border: 1px solid #0D6B91;
}
input:focus, select:focus, textarea:focus {
    border: 1px solid var(--color-future-blue);
    outline: none;/* avoid two borders */ 
}
form button, form input[type='submit'], form input[type='button'], #form .field button{  
    font-family: var(--font-rogan-bold);
    font-size: var(--size-17px);
    letter-spacing: var(--size-1px);
    height: 48px;
    border-right: 1px solid var(--color-future-blue);
    color: white;  
    background: url(../images/button_background.png) no-repeat;
    background-size: cover;
    cursor: pointer;
    padding: 0 25px;
}
form button img, form input[type='submit'] img, form input[type='button'] img, #form .field button img{
    display: inline;
    margin-left:23px;
    margin-top: -2px;
    filter: brightness(100);
}
form button:hover img, form input[type='submit']:hover img, form input[type='button']:hover img, #form .field button:hover img{  
    filter: none;
}
form button:hover, input[type='submit']:hover, input[type='button']:hover{  
    color: var(--color-future-blue);  
}



#message_box{
    width: 40%;
    margin: auto;
    padding: 10px 16px 10px 53px;
    font-weight: 400;
    margin-top: 20px;
}

#message_title{
    font-size: var(--size-16px);
    font-weight: bold;
}
#message_text{
    font-size: var(--size-15px);
}
.message_box_success{
    color: #C6FFE8;
    background: #0D7349 url('../images/check-circle.png') no-repeat;
    background-size: 20px;
    background-position: 15px 15px;
    border-left: 2px solid #27B77C;
}
.message_box_error{
    color: #FBCBCB;
    background: #740223 url('../images/times-circle.png') no-repeat;
    background-size: 20px;
    background-position: 15px 15px;
    border-left: 2px solid #C0093F;
}


#the-count {
    padding: 0.1rem 0 0 0;
    font-size: 0.875rem;
    clear: both;
    display: block;
    width: 100%;
    text-align: right;
}

/* On screens that are more than 1366px are defined above, max-width=1420px */

/* On screens that less than 1440px */
@media screen and (max-width: 1439px) {
    #header_container, #title, #footer_container {
        width: 1344px;
    }
    #header_right{
        width: 884px;
    }    
    #header_down {
        width: 460px;        
    }
}

/* On screens that less than 1366px */
@media screen and (max-width: 1365px) {
    #header_container, #title, #footer_container {
        width: 1265px;
    }
    #header_right{
        width: 810px;
    }      
}

/* On screens that are less than 1280px */
@media screen and (max-width: 1279px) { 
    #header_container, #title, #footer_container {
        width: 1005px;
    }    
    #header_right{
        width: 585px;
    }                    
    #header_down {
        width: 298px;        
    }
    #header_container nav {
        width: 700px;
        margin: 0 10px 0 0;
    }
    #footer_extra_links li{
        margin: 0 20px;
        font-size: var(--size-11px);
    }
    #footer_copyright p {
        font-size: var(--size-11px);
    }
}

/* On screens that are less than 1024px */
@media screen and (max-width: 1023px) {
    #header_container section img, #footer_logo img {
        width: 6rem;
    }       
    #header_container, #title, #footer_container {
        width: 740px;
    }    
    #header_right{
        width: 460px;
    }       
    #header_down {
        width: 203px;        
    }
    #header_container nav {
        width: 530px;
        margin: 0 10px 0 0;
    }    
    #header_container nav ul li a {
        width: 100px;
        font-size: var(--size-13px);
    }     
    #footer_links ul li, #footer_address address {
        font-size: var(--size-15px);
    }   
    #footer_seal img{
        width: 130px;
    } 
}

/* On screens that are 480px - 768px */
@media screen and (max-width: 767px) {
    #header_container section{
        padding-left: 25px;
    }
    #header_container section img, #footer_logo img {
        width: 5rem;
    }  
    header{
        background-image: url(../images/background_lines_medium.png);
    }
    #header_container, #title, #footer_container {
        width: 100%; 
    }     
    #header_right{
        width: 304px;
    }    
    #header_container nav {
        width: 330px;
        margin: 0 10px 0 0;
    }
    #footer_links ul li{
        padding: 2px 0;
    }
    #header_container nav ul li a {
        width: 60px;
        font-size: var(--size-12px);
    }      
    #footer_links ul li, #footer_address address {
        font-size: var(--size-14px);
    } 
    #header_down {
        width: 139px;        
    }
    #footer_links{
        width: 20%;
    }
    #footer_address{
        width: 29%;
    }
    #footer_seal{
        width: 15%;
    }
    #footer_social{
        clear: left;
    }
    #footer_seal img{
        width: 130px;
    }
    #message_box{
        width: 80%;
    }
}

/* On screens that are less than 480px */
@media screen and (max-width: 479px) {
    body::before{
        background-size: 100%, 460px;
    }   
    #header_container section img{
        width: 5rem;
    }
    #footer_logo img {
        width: 7rem;
    }    
    #header_container, #title {
        width: 390px;
    }  
    #footer_container {
        width: 100%;
    }   
    #header_right{
        width: 208px;
    }    
    header{
        background: url(../images/background_lines_small.png) repeat-x;
        background-position: center -17px;
    }
    #header_container nav ul li a:hover {
        border-bottom: none;        
        background: radial-gradient(circle, rgba(30,180,242,0.15) 0%, rgba(0,0,0,0) 40%);
    }
    #header_container nav ul li.activePage a {
        border-bottom: none;  
        background: radial-gradient(circle, rgba(30,180,242,0.15) 0%, rgba(0,0,0,0) 40%);
    }
    #menu_button{
        display: block;
        width: 125px;
        height: 36px;
        margin-top: 19px;
        float: right;
        margin-right: 18px;       
    }
    #menu_button.bg_initial{
        background: url(../images/menu_button.png) no-repeat;
    }
    #menu_button.bg_close{
        background: url(../images/menu_button_close.png) no-repeat;
    }
    #menu_button p{
        font-size: var(--size-15px);
        font-family: var(--font-rogan-bold);        
        letter-spacing: var(--size-1px);
        padding: 8px 20px; 
    }
    #menu_close{
        display: none;
    }
    #header_container nav {
        visibility: hidden;
        width: 390px;
        margin: 0;
        position: relative;
        top: 35px;
        margin-bottom: -230px;
        z-index: 10;
    }
    #header_container nav ul {
        width: 100%;
    }
    #header_container nav ul li{
        width: 99%;
        border-bottom: 1px solid rgba(30, 180, 242, .3);    
        height: 78px;
    }
    #header_container nav ul li a {
        width: 100%;
        font-size: var(--size-15px);
        letter-spacing: var(--size-1px);
        border-bottom: none;
        background: url(../images/background_menu_li.png) no-repeat bottom;
    }   
    #title h1{
        font-size: var(--size-48px);
    }      
    #footer_content {
        height: 995px;
    }
    #footer_top{
        background-position: 10px 21px;
    }
    #footer_logo {
        width: 100%;
        height: 80px;
        margin: auto;
    }
    #footer_links {
        width: 100%;
        height: 455px;
        margin: 0;
        text-align: center;
    }    
    #footer_links ul li, #footer_address address {
        font-size: var(--size-13px);
    } 
    #footer_pages{
        width: 100%;
        margin: 0;
    }
    #footer_social{
        width: 100%;
        margin: 0;
        margin-top: 20px;
    }
    #footer_links ul li{
        padding: 12px 0;
        font-size: var(--size-17px);
    }
    #footer_address address{
        font-size: var(--size-17px);
        opacity: 0.7;
    }
    #footer_address{
        width: 100%;
        margin: auto;
        text-align: center;
        height: 150px;
    }
    #footer_seal{
        width: 100%;
        height: 110px;
        margin: 0;
    }
    #footer_seal img {
        width: 150px;
    }
    #header_down {
        width: 200px;
        height: 13px;
        background-position-y: bottom;   
    }
    #footer_extra_links{
        height: 80px;    
    }
    #footer_extra_links ul, #footer_copyright{
        background:rgb(4, 26, 43);
        padding-top: 10px;;
    }
    #footer_extra_links, #footer_copyright{
        width: 100%;
        top: 0;
    }
    #footer_extra_links li{
        margin: 0;
        font-size: var(--size-12px);
        display: block;
        width: 100%;
        text-align: center;
        padding: 13px 0;
    }
    #footer_copyright {
        text-align: center;
        padding: 40px 0 10px 0;
    }
    #footer_copyright p {
        font-size: var(--size-12px);
    }
}
@media screen and (max-width: 389px) {
    #header_right {
        width: 194px;
    }
    #header_container, #title, #header_container nav {
        width: 375px;
    }      
}
@media screen and (max-width: 374px) {
    #header_right {
        width: 178px;
    }
    #header_container, #title, #header_container nav {
        width: 360px;
    }      
}

#header_up section{
    animation: logoSlideInFromLeft 1s;
}
@keyframes logoSlideInFromLeft {
    0% {transform: translateX(-100%);
        opacity: 0;}
    100% {transform: translateX(0);
        opacity: 1;}
}

#header_container nav ul li a{
    animation: drawBorderBottom 1.5s;
}
@keyframes drawBorderBottom {
    0% {border-bottom-width: 0; border-bottom-color: rgba(30, 180, 242, .1);}
    50% {border-bottom-width: 6px; border-bottom-color: rgba(30, 180, 242, 1)}
    100% {border-bottom-width: 3px;  border-bottom-color: rgba(30, 180, 242, .5)}
}