/*
Theme Name: API
Theme URI: 
Description: The Wordpress Theme for API.
Author: Design Vibe
Version: 1.0
*/

/* Reset default browser CSS. Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html */
html, body, div, span, applet, object, iframe,h1, h2, h3, h4, h5, h6, blockquote, pre,a, abbr, acronym, address, big, cite, code,del, dfn, em, font, 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 { background:transparent; border:0; margin:0; padding:0 /*vertical-align: baseline; This breaks valign on tables. */ }
body { }
h1, h2, h3, h4, h5, h6 { clear: both; font-weight: normal }
ol, li {margin-left:16px; }
blockquote { quotes: none }
blockquote:before, blockquote:after { content: ''; content: none }
del { text-decoration: line-through }
/* tables still need 'cellspacing="0"' in the markup */
table { border-collapse: collapse; border-spacing: 0 }
a img { border: none }
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section { display:block }

.grecaptcha-badge {
display: none !important;
}

/* Site styles */
html { /*min-width:393px;*/ background-color:none; font-family: 'Montserrat', sans-serif; font-size:15px; color:#2e2d2c; line-height:26px; font-weight:400; overflow-x:hidden;   }

h1 { font-size:37px; color:#003d7d; font-weight:600; line-height:45px; margin-bottom:5px; font-family: 'Montserrat', sans-serif; }
h2 { font-size:25px; line-height:32px; margin-bottom:5px; color:#003d7d; font-weight:600; font-family: 'Montserrat', sans-serif; }
h3 { font-size:19px; line-height:26px!important; color:#1e5294; font-weight:500; }
h4,h5,h6 { font-size:18px; line-height:30px; color:#003d7d; }

h1.elementor-heading-title.elementor-size-default { line-height: 1.1em; }
h2.elementor-heading-title.elementor-size-default { line-height: 1.2em; }
h3.elementor-heading-title.elementor-size-default { line-height: 1.4em; }

strong, b, {}
a { color:#2376b7; text-decoration:none }
a:hover { color:#0E4BA0; text-decoration:none; }
p { margin:15px 0; }

#wrapper { position:relative; z-index:10 }

#responsive-menu-title { text-align:center; }
#responsive-menu-title-image { margin-right:0!important; }

.elementor-icon-list-item { align-items: top!important; }
.elementor-widget .elementor-icon-list-item, .elementor-widget .elementor-icon-list-item a { align-items:top!important; }
.elementor-icon-list-icon i { padding-top:7px!important; }

#header { height:auto; width: 100%!important; position:fixed; top:0; right: 0;left: 0; margin-bottom: 0; background-color:#fff; padding:0; z-index:200; }
#head { width: 100%!important; background-image:url(images/header.jpg); background-size:cover; }
#headbox { padding-top:30px; padding-bottom:30px; }
#headclear { width:100%; height:150px; }

#logo { float:left; margin:0; width:340px; }
#logo img { width:100%; height:auto; vertical-align:top; }

#tel { width:auto; float:right; margin-top:2px; font-size:17px; line-height:22px; }
#tel i { padding-top:10px; }
#social { width:auto; float:right; margin-top:30px; }

#navbg { width:100%; display:table; background-color:#1e5294; }
nav { background:none; float:left; width:100%; margin:0; padding:0; text-align:center; }
nav ul { height:50px; list-style-type:none; margin:0; line-height:50px; }
nav ul li { width:auto; height:50px; list-style-type:none; margin:0; display:inline-block;  }
nav ul li a { height:20px; line-height:52px; color:#fff; text-decoration:none; font-size:16px; font-weight:600; padding:0 35px; text-transform:uppercase; font-family: 'Montserrat', sans-serif; }
nav ul li:last-child a { border-right:none; }
nav ul li a:hover { color:#9d191f; text-decoration:none; }

nav li ul { display:none; z-index:999999; position:absolute; top:160px; list-style:none; margin:0 0 0 0; background-color:#052941; text-align:left; width:300px; height:auto; padding:10px 0;  }
nav ul li:hover > ul { display:block; position:absolute; z-index:999999; text-align:left;}
nav li ul li { background-image:none; padding:0 0 0 36px; height:15px; width:90%; }
nav li ul:hover { display:block; }
nav li ul li a { width:100%; text-align:left; color:#fff; padding:0; height:auto; font-size:15px; line-height:15px; text-align:left; float:left; margin:0; border-right:none;  }
nav li ul li a:hover { color:#9d191f; }
nav li.menu-item-has-children ul li a { background-image:none; padding-right:15px; }

nav li ul li ul { z-index:999999; float:left; list-style:none; margin:0 0 0 0; background-color:#015aac; text-align:left; width:300px; height:auto; padding:10px 0;  }
nav li ul li ul li { background-image:none; padding:0 0 0 20px; height:15px; width:90%; }

/* MEGA MENU */
#navbg #mega-menu-wrap-primary { background-color:#1e5294; }
#navbg #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item { width:auto; height:50px; list-style-type:none; margin:0; display:inline-block; }
#navbg #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link { color:#fff; text-decoration:none; font-size:16px; font-weight:600; padding:0 35px; text-transform:uppercase; font-family: 'Montserrat', sans-serif!important; }
#navbg #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link { font-family: 'Montserrat', sans-serif!important; line-height:20px; margin-bottom:10px; }
#navbg a:hover { color:#9d191f; }

#rmp-menu-wrap-1280 .rmp-menu-item-link { font-family: 'Montserrat', sans-serif!important; box-sizing:border-box; text-transform:uppercase; }

/* Home Banner */
.homeban { color:#fff; font-size:20px; line-height:30px; font-weight:400; }
.homeban h3 { font-size:22px; line-height:28px; text-transform:uppercase; color:#fff; font-weight:300; letter-spacing:2px; }
.homeban h1 { font-size:70px; line-height:75px; color:#fff; font-weight:600; margin:0 0 20px 0; }
.homeban h2 { font-size:75px; line-height:80px; color:#fff; font-weight:600; margin:0 0 30px 0; }
.homeban h2.elementor-heading-title.elementor-size-default { line-height:0.7em; }
.homeban p { margin:0; }

#hb1 { background-color:#015aac; color:#fff; text-transform:uppercase; padding:15px 30px; font-size:17px; font-weight:600; margin-top:30px; letter-spacing:2px; display:inline-block; }
#hb1:hover { background-color:#fff; color:#015aac; }
#hb2 { background-color:#00a3e6; color:#fff; text-transform:uppercase; padding:15px 30px; font-size:17px; font-weight:600; margin-top:30px; letter-spacing:2px; display:inline-block; }
#hb2:hover { background-color:#fff; color:#00a3e6; }

.mainbtn a { background-color:#015aac; color:#fff; text-transform:uppercase; padding:20px 30px!important; font-size:17px; font-weight:600; letter-spacing:2px; display:inline-block;
border-radius:0!important; }
.mainbtn a:hover { background-color:#00a3e6; color:#fff; }

/* Home Intro */
#homeintro img { width:100%; height:auto; }
#homeintro h2 { font-size:25px; line-height:32px; margin:0; color:#242121; font-weight:500; }
#subtext span { color:#4e9bd5; }

#homenews { font-size:15px; line-height:24px; }
#homenews h3 { font-size:17px; line-height:18px; text-transform:uppercase; font-weight:600; letter-spacing:2px; margin-top:10px; }
#homenews a:hover { color:#00a3e6; }

#newsform { text-align:center; }
#newsform .mc-field-group { display:inline-block; width:25%; box-sizing:border-box; padding-right:10px; }
#newsform .mc-field-group input { width:100%; height:50px; padding:12px 16px; border:1px solid #e1e1e1; font-family: 'Montserrat', sans-serif; font-weight:300; box-sizing:border-box; font-size:15px; border-radius:0; -webkit-appearance: none;
border-radius: 0; }
#newsform .button { background-color:#00a3e6; color:#fff; text-transform:uppercase; padding:15px 20px!important; font-size:16px; font-weight:600; letter-spacing:2px; display:inline-block;
border-radius:0!important; border:none; cursor:pointer; -webkit-appearance: none; border-radius: 0; }
#newsform .button:hover { background-color:#fff; color:#015aac; }

/* Home Videos */
.video-responsive { overflow:hidden; position:relative; width:100%; }
.video-responsive video { vertical-align:top; }
.video-responsive a { position:absolute; top:0; bottom:0; left:0; right:0; padding:40px; color:#fff; }
.video-responsive a.overbox { background-image:url(images/introboxoverlay.png); background-position:left; background-repeat:no-repeat; background-size:contain; }
.video-responsive h2 { color:#fff; text-transform:uppercase; font-weight:bold; text-shadow: 0 2px 4px rgba(0,0,0,.5); font-size:30px; margin-bottom:20px; }
.video-responsive .boxsplit { width:100px; height:2px; background-color:#9d191f; margin-bottom:15px; }
.video-responsive span { color:#fff; text-shadow: 0 2px 4px rgba(0,0,0,.5); font-size:20px; font-weight:300; }
.video-responsive .text { position:absolute; z-index:120; width:50%; bottom:40px; }
.video-responsive .hover { margin-left:-9999px; margin-top:20px; -o-transition: all 0.5s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.4s ease-in-out;
    -webkit-animation-delay: 0.4s; }
.video-responsive .hover span { text-transform:none; text-shadow:none; }	
.video-responsive strong { text-transform:uppercase; font-size:18px; border-bottom:1px solid #00a3e6;  }
.video-responsive strong:hover { color:#ccc; }
.video-responsive a:hover .overlay { left:-50%; }
.video-responsive a:hover .hover { margin-left:0; }

.hbspace { width:100%; min-height:352px; }

/* Home Sectors */
.homesectors h3 { text-transform:uppercase; border-bottom:2px solid #9d191f; padding-bottom:7px!important; font-size:19px!important; }

/* Home Sectors */
.prosectors h2 { font-size:30px; text-transform:uppercase; border-bottom:2px solid #9d191f!important; padding-bottom:7px!important; }
.prosectors .elementor-cta__content { background-color:#0000003B; }

/* About */
#aboutpro { font-size:18px; line-height:28px; font-weight:500; }

.tables h3 { border-bottom:1px solid #9d191f; }

/* Project */
#projects h2 { margin:30px 0 20px 0; }

/* Contact */
#c1 { float:left; width:46%; }
#c2 { float:right; width:50%; }
form { margin-top:15px; font-weight:300; }

.wpcf7 label { font-family: 'Roboto', sans-serif; font-weight:400; }
.wpcf7-text { width:100%; padding:12px; border:1px solid #e1e1e1; font-family: 'Roboto', sans-serif; margin-bottom:5px; border-radius:5px; font-weight:300; box-sizing:border-box; font-size:15px; -webkit-appearance: none;
border-radius: 0; }
.wpcf7-select { width:100%; padding:12px; border:1px solid #e1e1e1; font-family: 'Roboto', sans-serif; margin-bottom:5px; border-radius:5px; font-weight:300; box-sizing:border-box; font-size:15px; -webkit-appearance: none;
border-radius: 0; }
.wpcf7-textarea { width:100%; height:120px; padding:12px; border:1px solid #e1e1e1; font-family: 'Roboto', sans-serif; border-radius:5px; font-weight:300; box-sizing:border-box; font-size:15px; -webkit-appearance: none;
border-radius: 0; }
.wpcf7-submit { background-color:#9d191f; color:#fff; text-transform:uppercase; padding:15px 30px!important; font-size:17px; font-weight:600; letter-spacing:2px; display:inline-block;
border-radius:0!important; border:none; cursor:pointer; -webkit-appearance: none; border-radius: 0; font-family: 'Dosis', sans-serif; }
.wpcf7-submit:hover { background-color:#052941; color:#fff; }

/* Footer */
footer { padding-top:40px; padding-bottom:30px; font-size:15px; background-color:#002c5d; background-image:url(images/footbg.png); background-position:top left; background-size:contain; background-repeat:no-repeat; }
footer h3 { font-size:16px; font-weight:600; margin-bottom:15px; color:#fff; letter-spacing:2px; text-transform:uppercase; }
footer a {  color:#fff; }
footer a:hover { color:#9d191f; }

#ft { float:left; width:40%;  }
#ft .block { float:left; width:50%; height:100px; }
#ft .block2 { float:left; width:50%; height:100px; font-weight:bold; color:#fff; }
#ft1 { float:left; width:20%;  }
#ft2 { float:left; width:20%;  }
#ft3 { float:left; width:20%;  }

footer { color:#aac0cd; }
footer ul { float:left; width:100%; margin:0; padding:0; list-style-type:none; }
footer ul li { display:block; padding:0 0 5px 0; margin:0;  }
footer ul li a:before { content: "\f067"; font-family: FontAwesome;  position: relative;  padding-right: 10px; left: 0; color: #9d191f; font-size:11px; }
#footmail { margin-left:15px; }

#footcopy { float:left;width:100%; padding:20px 0; text-align:center; font-size:14px; line-height:25px; border-top:1px solid #d8d8d8; margin-top:30px; }

.error, .success { color: #6C7988; margin:5px 0 10px 0 }
#contact_form table tr td { padding:4px 0 }
#contact_form label, #contact_form .label{  font-weight:normal }
#contact_form input[type="text"], #contact_form textarea { width:100%; font-family:Arial, Helvetica, sans-serif }

/* Post page styles */
.entry-header, .entry-content, .entry-meta { margin-bottom:15px }
.entry-content, .entry-meta { line-height:22px; }
#nav-single .nav-previous { float:left }
#nav-single .nav-next { float:right }

/* Common/ Re-usable classes */
.displaynone { display:none }
.alignright { text-align:right; float:right; }
.alignleft { text-align:left; }
.clearfix { *zoom: 1; }
.clearfix:after { content: " ";	display: block;	clear: both; visibility: hidden; font-size: 0; height: 0; }
.clear{ width:100%;	height:0; clear:both; display:block; }

/* #Media Queries (Needs to go at the bottom of the stylesheet
================================================== */

	/* Smaller than standard 960 (devices and browsers) */
	@media only screen and (min-width: 960px) and (max-width:1200px) {
		/* This is just used to easily and quickly identify which media query is being used */
		html { border:none }
		
		nav ul li a { padding:0 20px; }
		
		.rsDefault .rsGCaption {  top:91%!important }
		
		#navbg #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link { padding: 0 20px; font-size:17px; }
		#navbg #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link { font-size:15px; }
		
		/* Home Videos */
		.video-responsive { overflow:hidden; position:relative; width:100%; }
		.video-responsive video { vertical-align:top; }
		.video-responsive a { padding:40px 20px; }
		.video-responsive .text {  width:90%; }
		.video-responsive span { font-size:17px; }
		
		.hbspace { width:100%; min-height:241px; }
	}
	
	/* Tablet Portrait size to standard 960 (devices and browsers) */
	@media only screen and (min-width: 801px) and (max-width: 959px) {
		/* This is just used to easily and quickly identify which media query is being used */
		html { border:none }
		#header { position: relative;}
		#headclear { display:none; }
		
		#navbg #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-item > a.mega-menu-link { padding: 0 15px; font-size:15px; }
		#navbg #mega-menu-wrap-primary #mega-menu-primary > li.mega-menu-megamenu > ul.mega-sub-menu li.mega-menu-column > ul.mega-sub-menu > li.mega-menu-item > a.mega-menu-link { font-size:15px; }
		
		/* Home Videos */
		.video-responsive { overflow:hidden; position:relative; width:100%; }
		.video-responsive video { vertical-align:top; }
		.video-responsive a { padding:40px 20px; }
		.video-responsive h2 { font-size:35px; }
		.video-responsive .text {  width:90%; }
		.video-responsive span { font-size:17px; }
		
		.hbspace { width:100%; min-height: 194px; }
		
		.servbox { line-height:18px; }
		
		.rsDefault .rsGCaption {  top:91%!important }
		
		#news1 { width:38%; }
		#news2 { width:60%; }
		#news3 { width:63%; }
		
		#homebanleft img { width:100%; }
		
		#ft .block { width:100%; }
		#ft .block2 { width:100%; }

		
	}
	
	/* Mobile Landscape Size to Tablet Portrait (devices and browsers) */
	@media only screen and (min-width: 480px) and (max-width: 800px) {
		/* This is just used to easily and quickly identify which media query is being used */
		html { border:none }
		
		#logo { }
		#logo img { width:250px; height:auto; }
		#headclear { display:none; }
		#social { display:none; }
		#header { position: relative; text-align:left; }
		
		#tel { display:none; }
		h1 { font-size:35px; line-height:40px; }
		h2 { font-size:25px; line-height:30px; }
		
		#navbg { display:none; }
		nav { display:none; }
		#header nav { display:none; }
		
		/* Home Banner */
		.homeban h2 { font-size:60px; line-height:64px; }
		.homeban h1 { font-size:60px; line-height:64px; }
		
		.post_content { width:100%; margin:0; }
		
		/* Home Videos */
		.video-responsive { overflow:hidden; position:relative; width:100%; }
		.video-responsive video { vertical-align:top; }
		.video-responsive a {  }
		.video-responsive .text {  width:90%; }
		.video-responsive span { font-size:17px; }
		.video-responsive h2 { font-size: 30px; }

		.hbspace { width:100%; min-height:246px; }
		
		#newsform .mc-field-group { width:100%; box-sizing:border-box; padding-right:0; margin-bottom:6px; }
		#newsform .button { width:100%; }
		
		.rsDefault .rsGCaption {  top:91%!important }
		
		#c1 { width:100%; }
		#c2 { width:100%; }
		
		#news1 { float:left; width:100%; clear:left; text-align:center; }
		#news2 { float:left; width:100%; text-align:center; }
		#news3 { width:100%; }
		
		#tipsimage { width:100%; }
		#tipsimage img { width:100%; }
		#sidebar { float:left; width:100%; }
		
		footer { line-height:24px; }
		
		#ft {  width:100%; margin-bottom:10px; }
		#ft1 { width:50%; margin-bottom:10px; }
		#ft2 { width:50%; margin-bottom:10px; }
		#ft3 { width:100%; margin-bottom:10px; }
		#ft4 { width:100%; text-align:left; }
		
	}
	
	/* Mobile Portrait Size to Mobile Landscape Size (devices and browsers) */
	@media only screen and (max-width: 479px) {
		/* This is just used to easily and quickly identify which media query is being used */
		html { border:none }
		
		#logo { }
		#logo img { width:250px; height:auto; }
		#headclear { display:none; }
		#social { display:none; }
		#header { position: relative; text-align:left; }
		
		#tel { display:none; }
		h1 { font-size:35px; line-height:40px; }
		h2 { font-size:25px; line-height:30px; }
		
		#navbg { display:none; }
		nav { display:none; }
		#header nav { display:none; }
		
		/* Home Banner */
		.homeban h2 { font-size:50px; line-height:54px; }
		.homeban h1 { font-size:50px; line-height:54px; }
		
		.post_content { width:100%; margin:0; }
		
		/* Home Videos */
		.video-responsive { overflow:hidden; position:relative; width:100%; }
		.video-responsive video { vertical-align:top; min-height:270px; }
		.video-responsive a {  }
		.video-responsive .text {  width:90%; }
		.video-responsive span { font-size:17px; }
		.video-responsive h2 { font-size: 30px; }

		.hbspace { width:100%; min-height:270px; }
		
		#newsform .mc-field-group { width:100%; box-sizing:border-box; padding-right:0; margin-bottom:6px; }
		#newsform .button { width:100%; }
		
		#c1 { width:100%; }
		#c2 { width:100%; }
		
		#news1 { float:left; width:100%; clear:left; text-align:center; }
		#news2 { float:left; width:100%; text-align:center; }
		#news3 { width:100%; }
		
		#tipsimage { width:100%; }
		#tipsimage img { width:100%; }
		#sidebar { float:left; width:100%; }
		
		footer { line-height:18px; }
		
		#ft {  width:100%; }
		#ft1 { width:100%; margin-bottom:10px; }
		#ft2 { width:100%; margin-bottom:10px; }
		#ft3 { width:100%; margin-bottom:10px; }
		#ft4 { width:100%; text-align:left; }
		
		#background-images { visibility:hidden; }
		.hidden_spacer { display:none; visibility:hidden }
		
		.one_quarter, .two_quarter { float:none; width:100% }

	}