/*
Theme Name: Flightless
Author: WebKit.
Author URI: https://webkit.nz/
Description: Custom theme designed for WebKit clients.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: flightless-theme
*/


/*------------- WP -------------*/

#wp-admin-bar-wp-logo {display: none}


/*------------- RESET -------------*/

* {outline: none}

html,body {height: 100%}

html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,address,cite,code,del,dfn,em,img,ins,q,small,strong,sub,sup,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{border:0;margin:0;padding:0}article,aside,figure,figure img,figcaption,hgroup,footer,header,nav,section,video,object{display:block}a img{border:0}figure{position:relative}figure img{width:100%}

b,strong {font-weight: bold}

img {
  color: transparent;
  font-size: 0;
  vertical-align: middle;
  -ms-interpolation-mode: bicubic;
  }

li {/*For IE6 + IE7*/display: list-item}
table {border-collapse: collapse;border-spacing: 0}
th,td,caption {font-weight: normal; vertical-align: top; text-align: left}
svg {/*For IE9*/overflow: hidden}




/*------------- GLOBAL -------------*/

@import url('https://fonts.googleapis.com/css?family=Ubuntu:400,400i,700,700i');

* {
	font-family: 'Ubuntu', Helvetica, Arial, sans-serif;
	}


body {
	height: 100%;
	width: 100%;
	font-size: 18px;
	color: #424242;
	background-color: #091D7E;
	}

main {
	background-color: #ffffff;
	}

a {
	color: #151d7d;
	text-decoration: none;
	}
	
	a:hover {
		cursor: pointer;
		}


h1 {
	font-size: 1.9em;
	line-height: 1.2em;
	padding: 15px 0 10px;
	}


h2 {
	font-size: 1.8em;
	line-height: 1.2em;
	padding: 25px 0 15px;
	color: #091D7E;
	}

h3 {
	font-size: 1.5em;
	line-height: 1.4em;
	padding: 15px 0 5px;
	color: #091D7E;
	}


p {
	padding: 14px 0;
	line-height: 1.4em;
	}


li {
	line-height: 1.6em;
	}

	li.title {padding-bottom: 10px}
	
		li h3 {
			color: #cccccc;
			font-size: 1.1em;
			}


hr {
	background: #ddd; 
	clear: both; 
	float: none; 
	width: 100%; 
	height: 1px;
	margin: 40px 0 20px;
	border: none; 
	}

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

.acf-map {
	width: 100%;
	height: 400px;
	border: #ccc solid 1px;
	margin: 20px 0;
	}

/* fixes potential theme css conflict */
.acf-map img {
   max-width: inherit !important;
	}



nav.title span {
	display: none;
	position: relative;
	padding-left: 1.25em;
	margin: 0 23px 0;
	cursor: pointer;
	}

	nav.title span:before {
		content: "";
		position: absolute;
		top: 0.38em;
		right: 53px;
		width: 1em;
		height: 0.135em;
		border-top: 0.375em double #ffffff;
		border-bottom: 0.125em solid #ffffff;
		}


a.custom-logo-link {
	max-width: 340px !important;
	display: block;
	}

#header {
	background-color: #091D7E;
	}

	#header .grid-container {
		display: flex;
		padding-top: 25px;
		padding-bottom: 25px;
		}

		#header nav {text-align: right}
	
		#header .menu .menu-item {
			display: inline;
			list-style: none;
			}
		
			#header .menu .menu-item a {
				color: #ffffff;
				display: inline-block;
				padding: 5px 13px;
				font-size: 18px;
				}
				
				#header .menu {
					position: relative;
					margin: 7px 17px;
					}
				
				#header .menu .sub-menu {
					display: none;
					position: absolute;
					z-index: 3;
					}

				#header .menu .menu-item:hover .sub-menu {display: block}

					#header .menu .sub-menu .menu-item {
						display: block;
						text-align: left;
						background-color: #f38e42;
						}

						#header .menu .sub-menu .menu-item a {
							display: block;
							}
							
							#header .menu .sub-menu .menu-item a:hover {
								color: #ec6e2a;
								background-color: #f8f8f8; 
								}

				a.tel {
					color: #ffffff;
					font-size: 1em;
					padding: 3px;
					margin-top: 11px;
					flex-grow: 1;
					text-align: right;
					}



#footer {
	color: #ffffff;
	background-color: #091D7E;
	}
	
	#footer .grid-container {
		display: flex;
		align-items: center;
		}

	#footer p {flex-grow: 1}
	
	#footer ul {
		list-style: none;
		flex-grow: 1;
		}
		
		#footer ul li {display: inline}

			#footer ul li a {
				display: inline-block;
				padding: 5px 15px;
				font-size: 0.9em;
				color: #ffffff;
				}

			#footer ul li.webkit a {color: #008ebd}


.widget {
	margin: 60px auto;
	padding: 0 5%;
	width: 90%;
	max-width: 600px;
	}

.widget h3 {
	color: #ffffff;
	font-size: 30px;
	font-weight: 400;
	padding: 0;
	}
	
	div.wpforms-container-full {
		margin-top: 24px !important;
		margin-bottom: 0 !important;
		}

	.wpforms-form input[type=date],
	.wpforms-form input[type=datetime],
	.wpforms-form input[type=datetime-local],
	.wpforms-form input[type=email],
	.wpforms-form input[type=month],
	.wpforms-form input[type=number],
	.wpforms-form input[type=password],
	.wpforms-form input[type=range],
	.wpforms-form input[type=search],
	.wpforms-form input[type=tel],
	.wpforms-form input[type=text],
	.wpforms-form input[type=time],
	.wpforms-form input[type=url],
	.wpforms-form input[type=week],
	.wpforms-form select,
	.wpforms-form textarea
	{border: none !important; color: #091D7E !important}
	
	.wpforms-form button[type=submit], .button {
		border: none !important;
		border-radius: 40px !important;
		padding: 10px 30px !important;
		color: #ffffff !important;
		background-color: #091D7E !important;
		}
		
		.wpforms-form button[type=submit]:hover, .button:hover {
			background-color: #001eb0 !important;
			}
	
	label.wpforms-error {
	    color: #ffffff !important;
	    font-size: 14px !important;
	    padding: 10px 0 !important;
		}
	

#logos ul {
	display: flex;
	justify-content: space-between;
	padding: 45px 0;
	}

#logos li {
	list-style: none;
	padding: 0 20px;
	}


#breadcrumbs {
	padding: 15px 0;
	color: #399bcc;
	font-size: 0.9em;
	}

#breadcrumbs a {
	color: #091D7E;
	border-bottom: 2px solid;
	padding-bottom: 3px;
	}


/*------------- Slideshow -------------*/


#slideshow {background-color:#d6ebeb}

#slides, .rslides_tabs {
	opacity: 0;
	transition: opacity 2s linear;	
	}

#slides.visible, .rslides_tabs.visible {
	opacity: 1;
	}

.rslides {
	position: relative;
	list-style: none;
	overflow: hidden;
	width: 100%;
	padding: 0;
	margin: 50px 0 0 0;
	}
	
	.rslides li {
		display: none;
		list-style: none;
		-webkit-backface-visibility: hidden;
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		left: 0;
		top: 0;
		}

		.rslides li div {
			max-width: 400px;
			margin-right: 40px;
			}

			.rslides li div p {padding-top: 0}

			.rslides li div a {
				display: inline-block;
				border: none;
				border-radius: 40px;
				padding: 10px 30px;
				color: #ffffff;
				background-color: #091D7E;
				margin-top: 20px;
				}
				
				.rslides li div a:hover {background-color: #001eb0}

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


.rslides_tabs {
	text-align: center;
	position: relative;
	z-index: 1;
	}

	.rslides_tabs li {display: inline}
	
		.rslides_tabs li a {
			text-indent: -9999px;
			overflow: hidden;
			-webkit-border-radius: 15px;
			-moz-border-radius: 15px;
			border-radius: 15px;
			border: 2px solid #091D7E;
			display: inline-block;
			width: 13px;
			height: 13px;
			margin: 25px 13px;
			}
					
			.rslides_tabs li a:hover, .rslides_tabs li.rslides_here a {background: #091D7E}


/*------------- Pages -------------*/


#content header h1 {
	color: #ffffff;
	font-size: 2em;
	font-weight: 400;
	padding: 30px 0;
	}


#body {
	padding: 40px 0;
	}
	
	#body .grid-container {max-width: 800px}
	
		#body ul, #body ol {margin: 1.2em 3em}





/*------------- Posts -------------*/



.post {
	margin-bottom: 100px;
	max-width: 650px;
	margin-left: auto;
	margin-right: auto;
	}

.post h2 {
	padding-bottom: 5px;
	color: inherit;
	}

.post h3 {color: inherit}

.post header {
	padding-bottom: 20px;
	border-bottom: 1px solid #d2d2d2;
}

.post .entry {
	margin-top: 10px;
	}

.alignleft {float: left}
.alignright {float: right}

.button {
	padding: 7px 16px !important;
	background-color: #999999 !important;
	}

	.button a {
		color: #ffffff;
		font-size: 0.9em;
		}

.post .entry a {
	border-bottom: 2px solid;
	}









@media screen and (max-width: 1024px) {
	
	#menu-header {display: none}
		#menu-header.show {display: block}
	
	nav.title {
		display: flex;
		align-items: center;
		color: #ffffff;
		}
		
		nav.title span {display: block}
	
	
	#header .grid-container {
		display: block;
		padding-top: 0;
		}
	
			#header nav {
			text-align: left;
			padding: 0;
			margin-top: 20px;
			}
			
		#header .menu .menu-item {
			display: block;
			border-top: 1px solid #324184;
			}

			#header .menu .sub-menu {
				display: block;
				position: relative;
				}
				
				#header .menu .sub-menu .menu-item {background-color: transparent}

					#header .menu .sub-menu .menu-item a {
						padding: 10px;
						display: block;
					    margin-left: 1.5em;
					    font-size: 0.9em;
						}
						
						#header .menu .sub-menu .menu-item a:hover {background-color: transparent; color: #ffffff}

				#header .menu {margin: 0}
				a.tel {
					display: block;
					text-align: left;
					margin: 0;
					padding: 0 5px;
					}

					a.tel.expanded {
						border-top: 1px solid #324184;
						padding: 13px 10px;
						margin-top: 5px;
						}

}


@media screen and (max-width: 767px) {
	.rslides li {flex-direction: column-reverse}
	.rslides li div {margin: 0 20px}
	.rslides li img {max-width: 60% !important}

		#logos ul {flex-wrap: wrap}
		
		#logos ul li {
			width: 50%;
			box-sizing: border-box;
			text-align: center;
			padding: 20px;
			}

}


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

}



.spinner {
  color: official;
  display: inline-block;
  position: relative;
  width: 64px;
  height: 64px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -32px;
  margin-top: -32px;
}
.spinner div {
  transform-origin: 32px 32px;
  animation: spinner 1.2s linear infinite;
}
.spinner div:after {
  content: " ";
  display: block;
  position: absolute;
  top: 3px;
  left: 29px;
  width: 5px;
  height: 14px;
  border-radius: 20%;
  background: #091D7E;
}
.spinner div:nth-child(1) {
  transform: rotate(0deg);
  animation-delay: -1.1s;
}
.spinner div:nth-child(2) {
  transform: rotate(30deg);
  animation-delay: -1s;
}
.spinner div:nth-child(3) {
  transform: rotate(60deg);
  animation-delay: -0.9s;
}
.spinner div:nth-child(4) {
  transform: rotate(90deg);
  animation-delay: -0.8s;
}
.spinner div:nth-child(5) {
  transform: rotate(120deg);
  animation-delay: -0.7s;
}
.spinner div:nth-child(6) {
  transform: rotate(150deg);
  animation-delay: -0.6s;
}
.spinner div:nth-child(7) {
  transform: rotate(180deg);
  animation-delay: -0.5s;
}
.spinner div:nth-child(8) {
  transform: rotate(210deg);
  animation-delay: -0.4s;
}
.spinner div:nth-child(9) {
  transform: rotate(240deg);
  animation-delay: -0.3s;
}
.spinner div:nth-child(10) {
  transform: rotate(270deg);
  animation-delay: -0.2s;
}
.spinner div:nth-child(11) {
  transform: rotate(300deg);
  animation-delay: -0.1s;
}
.spinner div:nth-child(12) {
  transform: rotate(330deg);
  animation-delay: 0s;
}
@keyframes spinner {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

.spinner.hidden {display: none}




@font-face {
  font-family: 'fontello';
  src: url('assets/font/fontello.eot?97587276');
  src: url('assets/font/fontello.eot?97587276#iefix') format('embedded-opentype'),
       url('assets/font/fontello.woff2?97587276') format('woff2'),
       url('assets/font/fontello.woff?97587276') format('woff'),
       url('assets/font/fontello.ttf?97587276') format('truetype'),
       url('assets/font/fontello.svg?97587276#fontello') format('svg');
  font-weight: normal;
  font-style: normal;
}
/* Chrome hack: SVG is rendered more smooth in Windozze. 100% magic, uncomment if you need it. */
/* Note, that will break hinting! In other OS-es font will be not as sharp as it could be */
/*
@media screen and (-webkit-min-device-pixel-ratio:0) {
  @font-face {
    font-family: 'fontello';
    src: url('../font/fontello.svg?97587276#fontello') format('svg');
  }
}
*/
 
 [class^="icon-"]:before, [class*=" icon-"]:before {
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
 
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  margin-right: .2em;
  text-align: center;
  /* opacity: .8; */
 
  /* For safety - reset parent styles, that can break glyph codes*/
  font-variant: normal;
  text-transform: none;
 
  /* fix buttons height, for twitter bootstrap */
  line-height: 1em;
 
  /* Animation center compensation - margins should be symmetric */
  /* remove if not needed */
  margin-left: .2em;
 
  /* you can be more comfortable with increased icons size */
  /* font-size: 120%; */
 
  /* Font smoothing. That was taken from TWBS */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
 
  /* Uncomment for 3D effect */
  /* text-shadow: 1px 1px 1px rgba(127, 127, 127, 0.3); */
}
 
.icon-phone:before { content: '\e800'; margin-right: 8px} /* '' */