@font-face {
    font-family: 'robotoregular';
    src: url('roboto-regular-webfont.eot');
    src: url('roboto-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('roboto-regular-webfont.woff2') format('woff2'),
         url('roboto-regular-webfont.woff') format('woff'),
         url('roboto-regular-webfont.ttf') format('truetype'),
         url('roboto-regular-webfont.svg#robotoregular') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'robotolight';
    src: url('roboto-light-webfont.eot');
    src: url('roboto-light-webfont.eot?#iefix') format('embedded-opentype'),
         url('roboto-light-webfont.woff2') format('woff2'),
         url('roboto-light-webfont.woff') format('woff'),
         url('roboto-light-webfont.ttf') format('truetype'),
         url('roboto-light-webfont.svg#robotolight') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'robotobold';
    src: url('roboto-bold-webfont.eot');
    src: url('roboto-bold-webfont.eot?#iefix') format('embedded-opentype'),
         url('roboto-bold-webfont.woff2') format('woff2'),
         url('roboto-bold-webfont.woff') format('woff'),
         url('roboto-bold-webfont.ttf') format('truetype'),
         url('roboto-bold-webfont.svg#robotobold') format('svg');
    font-weight: normal;
    font-style: normal;
}

body, html {
    margin:0px;
    /* one pixel error in browser :\ */
    padding:0px;
	/*
    color:#646567;
    */
}

body{
    background: #4e4e4e;
    color:#444;
    font-family: robotoregular, Arial, Verdana, sans-serif;
    font-weight: normal;
    font-size: 14px;
    text-align:center;
}

body.uc{
    background-color:#eee;
    color:#444;
}

div.underconst-full{
    width:600px;
    margin:0 auto;
    display:grid;
    grid-template-columns: 200px auto;
    grid-gap: 20px;
    text-align:left;
}

div.fpadd{
    padding-top:70px;
    color:#eee;
}

div.fpadd div.wrapper:first-of-type{
    padding-top:20px;
}

div.fpadd h1,div.fpadd h2,div.fpadd h3,div.fpadd h4,div.fpadd h5{
    color:#eee;
}

div.wrapper-container{
    background-color:#fff;
    padding:20px 0px;
}

div.yellow-bg{
    background-color:#4e4e4e;
    color:#fff;
}

div.yellow-bg h1{
    color:#ccc;
}

div.wrapper{
    margin:0px auto;
    width:1200px;
    text-align:left;
    line-height: 180%;
    position:relative;
}

div#gsite-top{
    position: fixed;
    top:0px;
    padding:0px;
    width:100%;
    height:70px;
    line-height:70px;
    -webkit-box-shadow: 0px 1px 24px 1px rgba(0,0,0,0.75);
    -moz-box-shadow: 0px 1px 24px 1px rgba(0,0,0,0.75);
    box-shadow: 0px 1px 24px 1px rgba(0,0,0,0.75);
    background-color: #ffffffe3;
    z-index:100;
    text-align:right;
}

div#gsite-top nav ul{
    padding:0px;
    margin:0px;
}

div#gsite-top nav ul li{
    display:inline-block;
    position:relative;
    margin:0px;
    padding:0px;
}

div#gsite-top nav ul li a{
    display:inline-block;
    vertical-align:middle;
    padding:23px 20px;
    line-height:24px;
}

div#gsite-top nav ul li a:hover{
    background-color: #4e4e4e;
    color:#fff;
}

div#gsite-top nav ul li ul{
    display:none;
    position:absolute;
    background-color: #4e4e4e;
    color:#fff;
}

div#gsite-top nav ul li ul li{
    display:block;
    width:200px;
}

div#gsite-top nav ul li ul li a{
    display:block;
    padding:10px 10px;
    text-align:left;
    color:#fff;
    width: calc(100% - 20px);
}

div#gsite-top nav ul li:hover{
    background-color: #4e4e4e;
}

div#gsite-top nav ul li:hover a{
    color:#fff;
}

div#gsite-top nav ul li:hover a:hover{
    color:#fff;
    background-color: #002b47;
}

div#gsite-top nav ul li:hover ul{
    display:block;
    background-color: #4e4e4e;
}

#main_logo{
    line-height:145%;
    display:block;
    float:left;
    vertical-align: middle;
    
    background-color:#eee;
    
    -webkit-box-shadow: 0px 1px 24px 1px rgba(0,0,0,0.75);
    -moz-box-shadow: 0px 1px 24px 1px rgba(0,0,0,0.75);
    box-shadow: 0px 1px 24px 1px rgba(0,0,0,0.75);
    
    margin-left:30px;
    padding:10px;
    font-size:56px;
    font-weight: bold;
}


div.loginbox-container{
    text-align:center;
    line-height:90vh;
}

div.loginbox-container div.loginbox{
    display:inline-block;
    line-height:120%;
    padding:20px;
    -webkit-box-shadow: 0px 11px 15px 1px rgba(0,0,0,0.75);
    -moz-box-shadow: 0px 11px 15px 1px rgba(0,0,0,0.75);
    box-shadow: 0px 11px 15px 1px rgba(0,0,0,0.75);
    background-color:#fff;
    vertical-align: middle;
    width:300px;
    background-color: #eee;
    color:#000;
}

div.loginbox-container div.loginbox a{
    font-size:12px;
    color:#000;
}

div.loginbox-container div.loginbox h1{
    color:#fff;
    font-size:20px;
    padding:10px 0px;
    
}

div.loginbox-container div.loginbox img.logo{
    max-width:100%;
}

table.logintable{
    width:100%;
}

table.logintable tr td{
    padding-bottom:10px;
}

table.logintable input{
    width:calc(100% - 20px);
}

table.logintable input.login_btn{
    width:100%;
    padding:15px 0px;
    text-align:center;
    cursor:pointer;
    background-color:#BFA87A;
    margin-top:10px;
}

div#login-top{
    position:fixed;
    bottom:0px;
    padding:10px;
    text-align:left;
    background-color:#eee;
    width:100vw;
    color:#222;
    z-index:100;
}

div#login-top a{
    color:#555;
    display: inline-block;
    padding:2px 4px;
}

div#login-top a:hover{
    background-color:#999;
    color:#fff;
}

div#login-top a{
    margin-left:20px;
}

div.top_bg, div.middle_bg, div.bottom_bg{
    position:relative;
    margin-top:0px;
    left:0px;
    margin-bottom:0px;
    width:100%;
    background: url(../pics/top-pic.jpg) center center;
    transition: height 0.25s ease-out;
    background-size: cover;
}

div.middle_bg{
    background-image: url(../pics/mid-pic.jpg);
}

div.bottom_bg{
    background-image: url(../pics/bottom-pic.jpg);
}

div.top_bg div.top-text{
    position:absolute;
    top:90px;
    left:20px;
    padding:20px;
    width:40%;
    background-color: rgba(42,42,42,0.7);
    color:#fff;
    text-align:left;
}
div.top_bg div.top-text h1, div.top_bg div.top-text h2, div.top_bg div.top-text h3{
    color:#fff;
}

div.middle_bg div.top-text{
    position:absolute;
    top:20px;
    right:20px;
    padding:20px;
    width:40%;
    background-color: rgba(42,42,42,0.7);
    color:#fff;
    text-align:left;
}
div.middle_bg div.top-text h1, div.middle_bg div.top-text h2, div.middle_bg div.top-text h3{
    color:#fff;
}

div.top_thin{
    height:120px;
    transition: height 0.25s ease-in;
}

a#scrollTop{
    display:none;
    width: 50px;
    height: 50px;
    position:fixed;
    bottom:20px;
    right:20px;
    opacity: 0.5;
    z-index:120;
    background: #999;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

a#scrollTop:after{
    content: '\25B2';
    font-size: 35px;
    line-height: 45px;
    text-align: center;
    color: #fff;
}

a#scrollTop:hover{
    color: #333;
    opacity: 0.8;
}

.my-parallax,.my-parallax-fake{
    background-color: #1C6382;
    background-repeat: repeat;
    background-size: cover;
    overflow: hidden;
    height: 0;
    padding-top: 30%;
    /*
    min-height:470px;
    */
    background-position-x: center;
    position:relative;
}

.my-parallax.uc-line, .my-parallax-fake.uc-line{
    padding-top: calc(100vh / 3);
}

.wrapper-container.uc-line{
    height:calc((100vh / 3) - 40px);
    min-height:270px;
}

footer{
    padding:20px 0px 100px;
    color:#fff;
}

footer a{
    margin-right:20px;
    color:#a7a7a7 !important;
}

footer a:hover{
    color:#002b47 !important;
}

h1{
    font-weight:bold;
    font-size: 56px;
    text-indent:-4px;
}

a.main-logo{
    position:absolute;
    top:20px;
    right:10px;
    font-size:34px;
    color:#646464;
    font-family:robotobold;
}

a.main-logo span.end{
    color:#272727;
}

a.main-logo img{
    height:50px;
}

nav#top-menu{
    position:absolute;
    left:0px;
    top:0px;
}

a.mobile_btn{
    display:none;
    background: url('../pics/3line.svg') center center;
    background-size: cover;
    position:absolute;
    top:15px;
    left:15px;
    width:40px;
    height:40px;
}

.search_btn, .submit{
    background-color:#4e4e4e;
    color:#fff;
    border:0px;
    padding:5px 20px;
    cursor:pointer;
}

div.site-full{
    margin-left:calc(600px - 50vw);
    box-sizing: border-box;
    width:100vw;
}

div.contact-full{
    background-color:#4e4e4e;
    padding:40px 0px;
}

div.contact-full div.wrapper{
    display:grid;
    grid-template-columns: auto 450px;
    grid-gap: 20px;
    color:#fff;
}

div.contact-full div.wrapper h1, div.contact-full div.wrapper h2{
    color:#eee;
}

table.contact_table{
    color:#fff;
    width:100%;
}

table.contact_table input.input,table.contact_table textarea{
    display:block;
    width:calc(100% - 30px);
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-box-shadow: inset 1px 5px 8px -1px rgba(0,0,0,0.51); 
    box-shadow: inset 1px 5px 8px -1px rgba(0,0,0,0.51);
    border:0px;
    line-height:120%;
    padding:10px 15px;
    color:#000;
}

table.contact_table tr td{
    padding-bottom:10px;
}

table.contact_table input.submit{
    background-color:#fff;
    color:#4e4e4e;
}

input.input{
    padding:5px;
}

div.map-container{
    padding-top:0px;
    line-height:0px;
    font-size:0px;
}



@media screen and (max-width: 1220px){
    
    div.site-full{
        margin-top:-20px;
        margin-left:-20px;
        width:100vw;
    }
    
    div.wrapper{
        padding:20px;
        width:auto;
    }
    
    .my-parallax{
        padding-top:50%;
    }   
}

@media screen and (max-width: 1100px){
    
    a.mobile_btn{
        display:inline-block;
    }
    
    nav#top-menu{
        display:none;
        width:100%;
        top: 70px;
        background-color:#ffffffe3;
        
    }
    
    div#gsite-top{
        position:absolute;
    }
    
    div#gsite-top nav ul li{
        display:block;
        width:auto;
    }
    
    nav#top-menu a, div#gsite-top nav ul li a{
        display:block;
        width:auto;
    }
    
    nav#top-menu.mshow{
        display:block;
    }
    
}

@media screen and (max-width: 980px){
    
}

@media screen and (max-width: 890px){
    
    div.top_bg div.top-text, div.middle_bg div.top-text{
        width:80%;
    }
    
    .my-parallax{
        padding-top:100vh;
    }
    
    .my-parallax.bottom_bg{
        padding-top:50vh;
    }
    
    div.contact-full div.wrapper{
        display:block;
    }
    
    table.contact_table input.submit{
        width: 100%;
        padding:20px;
    }
    
    .uc-line h1{
        font-size:32px;
    }
    
    .my-parallax.uc-line, .my-parallax-fake.uc-line {
        padding-top: 25vh;
    }
    
    div.wrapper-container.uc-line{
        padding:0px;
        height: 50vh;
    }
}
