/* ==================================================
   Global Styles
================================================== */

*, *:after, *:before
{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

html
{
	height: 100%;
	overflow: auto;
	overflow-x: hidden;
}

body
{
	background: #0070BF;
	
	text-rendering: optimizeLegibility;
	vertical-align: baseline;
	
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* ==================================================
   Images
================================================== */

img
{
	-webkit-backface-visibility: hidden;
	-moz-backface-visibility: hidden;
	-ms-backface-visibility: hidden;
	
	outline: 1px solid transparent;
}

/* ==================================================
   Colours
================================================== */

.bg1
{
	background: #FFF;
}

.bg2
{
	background: #0070BF;
}

.bg3
{
	background: #222;
}

.bg4
{
	background: #EEE;
}

.bg5
{
	background: #FFF;
}

/* ==================================================
   Responsive YouTube
================================================== */

.youtubevid
{
	display: block;
	width: 100%;
	max-width: 450px;
	margin: 0 0 20px 0;
}

	.embed-container
	{
		position: relative;
		padding-bottom: 56.25%; /* 16/9 ratio */
		padding-top: 30px; /* IE6 workaround*/
		height: 0;
		overflow: hidden;
	}
	
	.embed-container iframe, .embed-container object, .embed-container embed
	{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

/* ==================================================
   Testimonails
================================================== */

blockquote.testimonial
{
	background: #EEE;
	padding: 20px;
	line-height: 26px;
}

blockquote.testimonial img
{
	float: right;
	width: 100%;
	max-width: 240px;
	padding: 0 0 0 20px;
}
			
	.arrow-down
	{
		width: 0;
		height: 0;
		border-left: 15px solid transparent;
		border-right: 15px solid transparent;
		border-top: 15px solid #EEE;
		margin: 0 0 0 30px;
	}
	
		.testimonial-author
		{
			margin: 0 0 20px 0;
			color: #888;
			text-align: left;
		}

/* ==================================================
   Layout Styles
================================================== */

.container
{
	width: 100%;
	padding: 0 30px;
	min-width: 280px;
}

	.container .bodycontainer
	{
		margin: 0 auto;
		width: 100%;
		max-width: 1140px;
	}
	
.containerfull
{
	width: 100%;
	padding: 0;
	min-width: 280px;
	line-height: 28px;
}

	.containerfull .bodycontainer
	{
		margin: 0 auto;
		width: 100%;
	}
	
/* ==================================================
   Sections
================================================== */

#headercont
{
	width: 100%;
	padding: 30px 0;
}

	#headercont #headerleft
	{
		display: table;
		float: left;
		width: 40%;
		height: 100px;
	}
	
		#headercont #headerleft p
		{
			display: table-cell;
			vertical-align: middle;
		}	
		
			#headercont #headerleft a img
			{
				display: block;
				width: 100%;
				max-width: 340px;
				margin-top: 10px;
				
				-webkit-transition: max-width 0.1s linear;
				-moz-transition: max-width 0.1s linear;
				-o-transition: max-width 0.1s linear;
				transition: max-width 0.1s linear;
			}
	
	#headercont #headerright
	{
		float: right;
		width: 60%;
		padding: 0;
		padding-top: 25px;
		font-weight: 400;
		text-align: right;
	}
	
		#headercont #headerright p
		{
			float: right;
			font-size: 18px;
			line-height: 20px;
			color: #222;
			width: 100%;
			max-width: 550px;
			font-weight: 400;
		}
		
			#headercont #headerright p:last-child
			{
				margin: 5px 0 0 0;
			}

		#headercont #headerright p.telno,
		#headercont #headerright p.emailadd
		{
			margin: 0 0 5px 0;
			font-size: 30px;
			line-height: 30px;
			font-style: normal;
			font-weight: 900;
		}
		
			#headercont #headerright p.telno span.fa,
			#headercont #headerright p.emailadd span.fa
			{
				vertical-align: middle;
				margin: -2px 15px 0 0;
				font-size: 30px;
				color: #0070BF;
				width: 100%;
				max-width: 24px;
				text-align: center;
			}
			
			#headercont #headerright p.telno a,
			#headercont #headerright p.emailadd a
			{
				color: #444;
			}
			
		#headercont #headerright p.emailadd
		{
			font-size: 24px;
			line-height: 24px;
			font-weight: 400;
		}
		
			#headercont #headerright p.emailadd span.fa
			{
				margin: -4px 15px 0 0;
				font-size: 24px;
			}
			
#menucont
{
	width: 100%;
}

#gallerycont
{
	border-top: 10px solid #0070BF;
}

	#gallerycont #galleryimg
	{
		display: block;
		width: 100%;
		height: 400px;
		background-image: url("../images/gallery/1.jpg");
		background-size: cover;
		background-position: 50% 50%;
	}
	
@media only screen and (max-width: 768px)
{

	#gallerycont #galleryimg
	{
		height: 300px;
	}

}
		
#maincont
{
	padding: 40px 0;
}
	
	#maincont #mainfull
	{
		width: 100%;
		
		min-height: 400px;
		height: auto !important;
		height: 400px;
	}

#footercont
{
	padding-top: 50px;
	padding-bottom: 50px;
	color: #FFF;
	color: rgba(255,255,255,0.7);
}

	#footercont h4
	{
		color: #FFF;
	}
	
	#footercont a
	{
		color: #FFF;
	}
	
	#footercont a:hover
	{
		color: #FFF;
		text-decoration: underline;
	}
	
		#footercont #footerleft
		{
			float: left;
		}
		
			#footercont #footerleft p#backtotop a
			{
				font-size: 38px;
				line-height: 38px;
			}

		#footercont #footerright
		{
			float: right;
			text-align: right;
		}
		
			#footercont #footerright p
			{
				margin: 0;
			}

/* ==================================================
   Media Queries - Small Desktop
================================================== */

@media only screen and (max-width: 1200px)
{

	body
	{
		line-height: 28px;
	}

}

/* ==================================================
   Media Queries - Tablet - Landscape
================================================== */

@media only screen and (max-width: 1048px)
{
	
	body
	{
		line-height: 27px;
	}
	
}

/* ==================================================
   Media Queries - Mobile - Landscape
================================================== */

@media only screen and (max-width: 960px)
{
	
	body
	{
		line-height: 26px;
	}
	
	.container
	{
		padding: 0 20px;
	}
	
	#headercont
	{
		
	}
	
		#headercont #headerleft
		{
			width: 100%;
			height: auto;
			padding: 0 0 10px 0;
		}

		#headercont #headerright
		{
			float: left;
			width: 100%;
			padding: 15px 0 0 0;
			text-align: left;
		}
		
			#headercont #headerright p
			{
				float: left;
				max-width: 500px;
				font-size: 16px;
			}
	
			#headercont #headerright p.telno,
			#headercont #headerright p.emailadd
			{
				font-size: 22px;
				line-height: 22px;
				padding-top: 0;
				margin: 0 0 5px 0;
			}
			
				#headercont #headerright p.telno span.fa,
				#headercont #headerright p.emailadd span.fa
				{
					display: none;
				}
				
	#gallerycont
	{
		
	}
	
	#boxescont
	{
		text-align: left;
		padding: 20px 0;
	}
	
		#boxescont .box
		{
			padding: 10px 0;
		}

	#maincont
	{
		padding: 40px 0;
		background-image: none;
	}
	
		#maincont #mainleft
		{
			width: 100%;
			padding: 20px 0 0 0;
			border-top: 1px dotted #CCC;
		}
	
		#maincont #mainright
		{
			width: 100%;
			padding-left: 0;
		}
		
	#threeboxescont .owl-carousel img
	{
		display: block;
		max-width: 250px;
		margin-bottom: 20px;
	}
	
	#footercont
	{
		
	}
	
		#footercont #footerleft
		{
			float: left;
			width: 100%;
		}

		#footercont #footerright
		{
			float: left;
			width: 100%;
			text-align: left;
		}
	
}

/* ==================================================
   Media Queries - Mobile - Small Landscape
================================================== */

@media only screen and (max-width: 768px)
{
	
	body
	{
		line-height: 26px;
	}
	
	blockquote.testimonial img
	{
		float: none;
		display: block;
		max-width: 200px;
		padding: 0 0 20px 0;
	}
	
}

/* ==================================================
   Media Queries - Mobile - Portrait
================================================== */

@media only screen and (max-width: 480px)
{
	
	body
	{
		line-height: 25px;
	}
	
}

