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

body{
    margin:0;
    font-size:62.5%;
    font-family: 'Open Sans', sans-serif;
}

a{text-decoration: none;-webkit-transition: all 0.25s ease-in;transition: all 0.25s ease-in;}

h1, h2, h3, h4{
    font-weight: 600;
}
li, blockquote, form, .btn, table{
    font-weight: 400;
}
h2{font-size: 3.6em; color: #18428F;}
h2+p{margin-top:10px;}
h3{font-size: 3em;color:#18428F;}
h3+p{margin-top:10px;}
h4+p{margin-top:10px;}
p, li, td,th{
    font-size: 1.65em;
    color: #444;
}

header{
    position: absolute;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding:15px 3%;
    width: 100%;
    z-index: 998;
}

.handle{display:none;}

#navContainer{
	display:flex;
    align-items: center;
    flex: 1;
    justify-content: flex-end;
    font-weight: 300;
}

#navContainer .tel{border-left: 1px solid #FFF; text-align: right;margin-left:20px;padding-left: 20px;}
#navContainer .tel a{font-size: 2.5em;color:#FFF;}
#navContainer .tel a[href^="tel:"]{font-size: 1.95em;}

#mainNav nav ul{
    display: flex;
    align-items: center;
    padding-left: 0;
    list-style-type: none;
    white-space: nowrap;
    justify-content: space-between;
}

#mainNav nav ul li{
    text-align: center;
    font-size: 1em;
    margin-right: 50px;
}

#mainNav nav ul li:last-child{margin-right: 0;}

#mainNav nav ul li > a{
    color:#FFF;
    -webkit-transition: all 0.25s ease-in;
    transition: all 0.25s ease-in;
    text-transform: uppercase;
    font-size: 1.75em;
    text-shadow: 0 0 10px rgba(0, 0, 0, .25);
}

#mainNav nav ul li:hover > a{
   color:#FBAD18;
}

#mainNav nav ul li.active a{border-bottom: 2px solid #FFF;}

#mainNav nav ul li.hasSub .subWrap{display: none;}
#mainNav nav ul li.hasSub:hover .subWrap{display: block;animation-name: appearNav;animation-duration: 0.55s;}
#mainNav nav ul li .subWrap{position: absolute;left:0;width:100%;}
#mainNav nav ul li .subWrap .sub{margin-top:12px;padding:40px 20%;background-color:#18428F;text-align: left;width: auto;display: flex;justify-content: flex-end;}
#mainNav nav ul li .subWrap .sub .subGroup{margin-right: 40px;}
#mainNav nav ul li .subWrap .sub .subGroup:last-of-type{margin-right: 0;}
#mainNav nav ul li .subWrap .sub .subGroup span{display: block; color:#EE961B;;font-size: 1.65em;padding-bottom: 10px;}
#mainNav nav ul li .subWrap .sub .subGroup ul{display: block;width: auto;}
#mainNav nav ul li .subWrap .sub .subGroup ul li{text-align: left;padding-bottom: 4px;}
#mainNav nav ul li .subWrap .sub .subGroup ul li a{font-size: 1.45em;}
#mainNav nav ul li .subWrap .sub .subGroup ul li a:after{padding-left: 5px; content: '\f054';color: #EE961B;font-family: "Font Awesome 5 Free";font-weight: 900;opacity: 0;-webkit-transition: all 0.25s ease-in;transition: all 0.25s ease-in;}
#mainNav nav ul li .subWrap .sub .subGroup ul li:hover a{color: #FFF;}
#mainNav nav ul li .subWrap .sub .subGroup ul li a:hover:after{opacity: 1;}

#logo{flex-basis: 350px;}

#logo img{
    max-width:350px;
}

.btnBox{   
    background-color: rgba(82, 82, 82, .85);
    padding:10px 20px;
    -webkit-transition: all 0.25s ease-in;
    transition: all 0.25s ease-in;
}
.btnBox a{text-shadow:none !important;}
.btnBox:hover{background-color:#EE961B;}
.btnBox:hover a{color:#18428F !important;}


.heroWrap{position: relative;width: 100%;height:800px;overflow: hidden;}

.heroText{
    display: flex;
    align-items: center;
    height: 100%;
    width: 100%;
    padding-left: 5%;
}

.heroText div{
    height:auto;
    width:45%;
}

.heroText div h2{font-size: 6.5em;color:#FFF;margin-top:5px;margin-bottom:0;font-weight: 600;}

.heroImg{position: absolute;top:0;z-index: -1;width:100%;height:100%;background-size:cover;background-position:center;}
.heroImg::before{position: absolute;top:0;bottom: 0;right: 0;left: 0; background-color:rgba(0,0,0,.45);content: "";z-index: 1;}

.btnHero{display: inline-block;border:2px solid #FFF;padding: 15px 40px;color:#FFF;font-size: 2em;margin-top: 15px;}


.btn{
    display:inline-block;
    padding: 15px 45px;
    background-color:#FBAD18;
    color: #18428F;
    border-radius: 5px;
    margin-top:20px;
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
    font-size: 1.8em;
    font-weight: 600;
    box-sizing: border-box;
}

.btn:hover{
    background-color:#18428F;
    color:#FFF !important;
}

.btn:first-of-type{margin-right: 10px;}
.btn i{font-size: 1.45em; margin-right: 3px;vertical-align:bottom;}

p .btn{font-size:inherit;}

.internalHeader{
    position: relative;
    height: 500px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0 4%; 
    background-size: cover;
    background-position: center;
    z-index: -1;
}
.internalHeader::before{position: absolute;content: "";background-color:rgba(0,0,0,.10);top:0;right: 0;left: 0;bottom: 0;z-index: -1;}

.internalHeader .pageTitle{color:#FFF;text-align: center;margin-top:75px;}
.internalHeader .pageTitle h1{font-size: 6em; margin: 0;text-shadow: 1px 1px 10px rgba(0, 0, 0, .8);}
.internalHeader .pageTitle hr{opacity: .5}
.internalHeader .pageTitle span{display: block;font-size: 4.5em;font-weight: 300;}

.subNav{background-color:#18428F;padding:20px 4%;}
.subNav nav ul{list-style-type: none;display: flex;padding-left: 0;}
.subNav nav ul li{margin-right: 25px;}
.subNav nav ul li:last-of-type{margin-right: 0;}
.subNav nav ul li a{color:#FFF;}
.subNav nav ul li a:hover{color:#FBAD18;}
.subNav nav ul li a.current{color:#FBAD18;}

.homeContentFlex{display:flex;}
.homeContentFlex .flexTxt{
	background-color: #18428F;
    color:#FFF;
    padding:40px 80px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    flex-basis: 45%;
    min-height: 500px;
    }
.homeContentFlex .flexTxt h2{color:#FFF;margin-bottom:0;}
.homeContentFlex .flexTxt p{color:#FFF;}
.homeContentFlex .flexImg{width: 100%;background-size: cover;flex:1;}
.homeContentFlex .flexTxt .btn:hover{background-color:#FFF;color:#18428F;}

.homeInfo{margin:80px;}
.homeInfo h2{text-transform: uppercase;font-weight: 600;text-align: center;font-size: 5em;margin-top: 10px;margin-bottom: 80px;}
.homeInfoItems{display: flex;justify-content: space-between;}
.infoItem{color:#18428F;flex-basis: 25%;text-align: center;}
.infoItem i{font-size: 8em;}
.infoItem h3{font-size: 2em;font-weight: 600;margin-bottom: 0;}
.infoItem p{margin-top: 5px;}

.preFooter{display: flex;}
.preFooterText{padding:40px;background-color: #F4F4F4;flex-basis:50%;}
.preFooterText h2{color:#18428F;}
.preFooterImg{flex:1;width:100%;background-size:cover;}

.content{margin:40px 4%;}
.content h2{margin-top:50px;margin-bottom: 0;}
.content h3{margin-top:40px;margin-bottom: 0;}
.content h4{margin-top:40px;margin-bottom: 0;}
.contentFlex{display:flex;align-items: center;}
.contentFlex div:nth-child(1){margin-right: 80px;}
.contentFlex .flexTxt{flex-basis: 60%;}
.contentFlex .flexImg{flex:1;}
.contentFlex .flexImg img{max-width:100%;height:auto;}
.content a{color:#18428F;}
.content a:hover{color:#ac101b;}

.boxesWrap .boxes{display: flex;justify-content: space-between;}
.boxesWrap .boxes .box{
	border:3px solid #18428F;
    border-radius: 10px;
    flex-basis: 25%;
    padding:20px;
    margin-right:20px;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    }
.boxesWrap .boxes .box:last-child{margin-right:0;}
.boxesWrap .boxes .box h3{font-size: 2.5em;font-weight: 600;margin-top: 0;}

table{margin:40px 0;border:3px solid #18428F;border-radius: 10px; border-spacing: 0; overflow: hidden; }
table thead tr:nth-child(1){background-color: #748EBC;}
table thead tr:nth-child(1) th{color:#FFF;}
table tr:nth-child(even){background-color:#FEE6B9;}
table tr td, table tr th{padding:15px;}

.bcrumbs{margin:40px 4%;font-size:1.45em;}
.bcrumbs i{margin:0 10px;}
.bcrumbs a{color:#18428F;}
.bcrumbs a:hover{color:#FBAD18;}

.notify{
	background-color:#AC101B;
	padding: 20px;
    color: #FFF;
    font-weight: 700;
}

.form{margin-bottom:40px;}
.form label{font-size: 1.65em;padding-bottom: 10px;}
.form input[type="text"], .form input[type="email"]{border:2px solid #18428F;font-size:1.65em;padding:10px 20px;width:80%;}
.form textarea{border:2px solid #18428F;font-size:1.65em;padding:10px 20px;width:80%;}
.form select{border:2px solid #18428F;color:#FFF;font-size:1.65em;padding:10px 20px;width:80%;}
.form button{background-color:#FBAD18;color: #18428F;border:0;border-radius: 5px;padding:10px 40px;color:#FFF;font-size:1.65em;margin-top:40px;cursor: pointer;height:45px;}


footer{
    display: flex;
    justify-content: space-between;
    width: 100%;
    padding:60px 5%;
    white-space: nowrap;
    background-color:#18428F;
}

footer a{color:#444444;}
footer a:hover{opacity: .7;}

#fLeft{display: flex;}
#fLeft ul{padding-left: 0;margin-right:40px;}
#fLeft ul:last-of-type{margin-right:0;}
#fLeft ul li{list-style-type: none;}
#fLeft ul li a{margin: 5px 0 0;color:#FFF;}
#fRight{display: flex;flex-direction: column;justify-content: center}
#fRight p, #fLeft p, #fRight a, #fLeft a{color: #FFF;}
#fRight{text-align: right;}
#fRight p i{font-size: 1.55em;margin-left: 10px;}
#fRight p{font-size: 1.8em;margin-top: 4px;margin-bottom: 0;}
#fRight p a{display: inline-block;vertical-align: middle;}
#fRight p:nth-of-type(n+2){font-size: 1.65em;margin-top: 5px;}
#fRight p:nth-of-type(2) a{display: inherit;vertical-align: inherit;}



@media only screen and (max-width: 1165px) {    
     #mainNav .responsive{
        display: block;
        width:100%;
        height:100%;
        opacity: 1;
        background-color: #18428F;
      }
    
     #mainNav nav{
        display: none;
     }
    
    #mainNav nav ul{display: none;}
    
       #mainNav nav.responsive ul{
        float:none;
        display: block;
        width:100%;
        text-align:center;
        margin:0 auto;
         position: relative;
         z-index: 999;
         display: block;
     }

     #mainNav nav ul li{
        display: block;
        padding:20px 0;
        border-bottom: 1px solid  rgba(245, 245, 245, 0.3);
        width:100%;
        margin:0 auto;
     }
    #mainNav nav ul li:hover{background-color:#1171AE;}
     #mainNav nav ul li:nth-last-of-type(1){
        border-bottom:0;
        border-radius: 0;
    }
    
   li.btnBox:hover a{
        color:#FFF !important;
    }
    
    #mainNav nav ul li a{
        color:#FFF;
        font-weight: normal;
        font-size: 18px;
    }
    #mainNav nav ul li:hover a{color:#FFF;}
    #mainNav nav ul li.active a{padding-bottom:0; border-bottom:0;}
    #handler{
        width: 35px;
        height: 30px;
        display: block;
        cursor: pointer; 
    }
    #handler i{
        color:#FFF;
        font-size: 3em;
    }
    #handler.active i{color:#e3dfff4 !important;}
    #handler.active{float:none;display: block; width: 100%; height:50px; padding: 0; text-align: center; margin: 20px 0;position: relative;}
    #navContainer.rNav{
        flex-direction: column;
        background-color: #18428F;
        width: 100%;
        height: 100%;
        justify-content: start;
        position: fixed;
        top: 0;
        left: 0;
        right:0;
        align-items: center;
        }
    #handler i.fa-times{display: none;}
    #handler.active i.fa-bars{display: none;}
    #handler.active i.fa-times{display: block;}
    .heroText div:before{width:80%;}
    .heroText div{width: 55%;}
    #mainNav nav ul li.hasSub:hover .subWrap{display: none;}
    #mainNav nav ul li .subWrap{position: relative;left:0;width:100%;}
    #mainNav nav ul li .subWrap .sub{flex-direction: column;align-items: center;margin-top: 0;padding:10px 4%;}
    #mainNav nav ul li .subWrap .sub .subGroup{margin: 0 0 30px;width:100%;text-align: center;}
    #mainNav nav ul li .subWrap .sub .subGroup ul li{text-align: center;padding: 0 0 5px;border: 0;}
    #mainNav nav ul li .subWrap .sub .subGroup ul li:hover{background-color: transparent;}
    #mainNav nav ul li .subWrap .sub .subGroup ul li a:after{display: none;}
    .contentFlex{flex-direction: column;}
    .contentFlex .flexTxt{flex-basis: 100%;}
    .contentFlex div:nth-child(1){margin-right: 0;}
}

@media only screen and (max-width: 939px) {
    .slick-dots{padding-top: 40px !important;display: block;position: relative !important;}
    .homeInfo{margin:80px 4%;}
    .homeInfoItems{flex-direction:column;}
    .homeInfoItems .infoItem:nth-child(n+2){margin-top:20px;}
    .infoItem{flex-basis:100%;}
    .homeContentFlex{flex-direction:column;}
    .homeContentFlex .flexTxt{flex-basis:100%;padding:40px 20px;}
    .homeContentFlex .flexImg{order:2;width:auto;height:500px;flex:auto;background-position:center;}
    .subNav nav ul{flex-direction:column;text-align:center;}
	.subNav nav ul li{margin-right: 0;margin:10px 0;}
    .boxesWrap .boxes{flex-direction:column;}
    .boxesWrap .boxes .box{margin:25px 0 0 0;}
}

@media only screen and (max-width: 859px) {
    .contentFlex{flex-direction: column;text-align: center;}
	footer{flex-direction: column;align-items:center;text-align: center;}
    #fRight{text-align: center;}
    .trox{display:inline-block !important;}
}


@media only screen and (max-width: 600px) {
    header{flex-direction: column;}
    #handler {position: relative;float: none;width: 100%;text-align: center;margin-top: 20px;margin-left:-5px;}
    #handler i{position: absolute;}
    #handler.active i{position: relative;}
    #logo{flex-basis:100%;}
    #navContainer{flex-direction:column;}
    #navContainer .tel {
    border-left: 0;
    text-align: center;
    margin-top: 30px;
    margin-left: 0;
    padding-left: 0;
    }
    #mainNav {width: 100%;}
    .internalHeader{height:700px;}
    .internalHeader div{width:100%;text-align: center;} 
    .internalHeader .pageTitle{margin-top:200px;}
    .internalHeader .pageTitle h1{font-size: 5em;}
    .internalHeader .pageTitle span{font-size: 3.5em;}
    #mainNav nav ul li a{display:block;}
    .heroText div:before{width:100%;left:0;transform: skewX(none);transform: skewy(-3deg);height: 55%;top: 20%;}
    .heroText{padding-right: 5%;}
    .heroText div{text-align: center;width: 100%;margin-top: 200px;} 
    .contentFlex, .content{text-align: center;}
    .contentFlex div:nth-child(1){margin: 0 0 30px;}
    .contentFlex img, .content img{max-width: 100%;}
    .preFooter{flex-direction:column;}
    .preFooterText{text-align:center;}
    .preFooterImg{height:300px;flex:auto;}
    table{width:100% !important;}
    .content li{text-align:left;}
}
