/*
*		    ________      .___   
*	__  _  _\_____  \   __| _/
*	\ \/ \/ / _(__  <  / __ |
*	 \     / /       \/ /_/ |
*	  \/\_/ /______  /\____ |
*	               \/      \/
*
*	@author			Jacques Baars <j@w3d.co.za>
*
*	@notice			This is the property of W3Designs, W3Development, W3D,
*					it is illegal to use this source code without the required permission,
*					contact j@w3d.co.za for further advice or permissions.
*
*	@license		Copyright (c) 2016 W3Designs (PTY) Ltd. (http://www.w3d.co.za)
*/

/* ------------- CORE:ROOT ------------- */

:root{
	--color: #000;
	--color2: #fff;
	
	--bgColor: #059CDF;
	--bgColor2: #028ECC;
	--bgColor3: #0000AB;
	--bgColor4: #000081;
	--bgColor5: #E8EDEE;
	--bgColor6: #fff;

	--linkColor: #000;
	--linkHoverColor: #008ce5;
	
	--mobileMenuColor: #fff;
	--mobileMenuBtnColor: #059CDF;
	--mobileMenuSelectedColor: #fff;
	--mobileMenuSelectedBgColor: #028ECC;
	--mobileMenuContentBgColor: #059CDF;
	
	--btnColor: #fff;
	--btnBgColor: #059CDF;
	--btnHoverColor: #fff;
	--btnBgHoverColor: #028ECC;
	
	/* Glow Btn */
	--btnBgColor2: #38B2E8;
	--btnBgColor3: #5DB8E0;
	
	--dialogBgColor: #059CDF;
	--dialogBgColor2: #028ECC;
	--dialogHeadingColor: #fff;
}

/* ------------- DOCUMENT ------------- */

/* Fonts */
@font-face{
	font-family: Exotc350-DmBd-BT;
	src: url("../fonts/Exotc350-DmBd-BT/Exotc350-DmBd-BT.woff"),
		 url("../fonts/Exotc350-DmBd-BT/Exotc350-DmBd-BT.ttf"),
		 url("../fonts/Exotc350-DmBd-BT/Exotc350-DmBd-BT.otf"),
		 url("../fonts/Exotc350-DmBd-BT/Exotc350-DmBd-BT.svg");
}

/* Body */
body{
	background-color: var(--bgColor6);
	font-family: Montserrat, Helvetica, Arial, sans-serif;
}

/* Headings */
h1, h2, h3{
	letter-spacing: 2px;
	text-transform: uppercase;
	font-family: Exotc350-DmBd-BT, Helvetica, Arial, sans-serif;
}

/* Menu */
#menu-banner{}

	#menu-banner .top-banner{}

	/* Menu */
	#menu-banner .menu-banner ul li:hover{}
	
		#menu-banner .menu-banner ul li a{
			padding: 30px 25px;
		}

			#menu-banner .menu-banner ul li:hover > a{
				font-weight: bold;
				color: var(--bgColor2);
			}

			#menu-banner .menu-banner ul li.active-li > a{
				font-weight: bold;
				color: var(--bgColor);
			}

	#menu-banner .menu-banner ul ul{}

		#menu-banner .menu-banner ul ul li:hover{
			background-color: var(--bgColor);
		}

			#menu-banner .menu-banner ul ul li:hover > a{
				color: #fff;
			}

			#menu-banner .menu-banner ul ul li.active-li > a{
				color: #fff;
			}
			
/* Splash */
#splash{
	overflow: hidden;
	background-image: url('../images/splash/bg.jpg');
}

	#splash .content{
		padding: 18% 0;
	}

		#splash .content .block{
			width: 900px;
			margin: 0 auto;
			max-width: 80%;
		}

			#splash .content .block .left{
				width: 55%;
				padding: 5%;
				margin-right: 5%;
				text-align: center;
				background-color: rgba(255, 255, 255, 0.9);
			}
		
				#splash .content .block .left h2{
					font-size: var(--fontSize300);
					background: -webkit-linear-gradient(var(--bgColor), var(--bgColor3));
					
					-webkit-background-clip: text;
					-webkit-text-fill-color: transparent;
				}
				
				#splash .content .block .left .description{
					padding: 10px 0 20px;
				}
				
				#splash .content .block .left .button{}

			#splash .content .block .right{
				width: 30%;
			}
			
				#splash .content .block .right .image{
					background-color: #fff;
				}

/* Page Splash */
#pg-splash{
	padding: 16% 0;
	background-image: url('../images/ui/bg.jpg');
}

	#pg-splash h1{
		text-align: center;
		font-size: var(--fontSize300);
	}

/* Waves */
#waves{
	width: 100%;
	height: 16vh;
	display: block;
	position: relative;
}

	#waves.splash{
		margin-top: -15.5vh;
	}

	#waves .curves > use{
	  animation: move-waves 25s cubic-bezier(.55,.5,.45,.5) infinite;
	}
	
	#waves .curves > use:nth-child(1){
	  animation-delay: -2s;
	  animation-duration: 7s;
	}
	
	#waves .curves > use:nth-child(2){
	  animation-delay: -3s;
	  animation-duration: 10s;
	}
	
	#waves .curves > use:nth-child(3){
	  animation-delay: -4s;
	  animation-duration: 13s;
	}
	
	#waves .curves > use:nth-child(4){
	  animation-delay: -5s;
	  animation-duration: 20s;
	}

	@keyframes move-waves {
		0%{
			transform: translate3d(-90px,0,0);
		}
		100%{ 
			transform: translate3d(85px,0,0);
		}
	}
	
/* Sum-Div */
#sum-div{
	background-color: #fff;
}

	#sum-div .sum-row{}
	
		/* Title */
		#sum-div .sum-row .title{
			position: relative;
			color: var(--bgColor4);
		}
			
			#sum-div .sum-row .title:before{
				content: '';
				bottom: -8px;
				width: 14px;
				height: 14px;
				position: absolute;
				left: calc(50% - 16px);
				background-color: var(--bgColor);
				
				-webkit-border-radius: 50%;
				-moz-border-radius: 50%;
				-ms-border-radius: 50%;
				-o-border-radius: 50%;
				border-radius: 50%;
			}
			
			#sum-div .sum-row .title:after{
				content: '';
				bottom: -8px;
				width: 14px;
				height: 14px;
				position: absolute;
				left: calc(50% + 2px);
				background-color: var(--bgColor2);
				
				-webkit-border-radius: 50%;
				-moz-border-radius: 50%;
				-ms-border-radius: 50%;
				-o-border-radius: 50%;
				border-radius: 50%;
			}

	/* About */
	#sum-div .sum-row.about{}

		#sum-div .sum-row.about .sum-column{}
		
			#sum-div .sum-row.about .sum-column .image{
				width: 100px;
			}

	/* Waves 1 */
	#sum-div .sum-row.waves-1{
		margin-bottom: -15.5vh;
	}
	
		#sum-div .sum-row.waves-1 .sum-column{}
		
			#sum-div .sum-row.waves-1 .sum-column svg{
				transform: rotate(180deg);
			}

	/* Cover */
	#sum-div .sum-row.cover{
		background-image: url('../images/home/bg.jpg');
	}
	
		#sum-div .sum-row.cover .sum-column{
			float: none;
			margin: 0 auto;
			background-color: rgba(255, 255, 255, 0.9);
		}

	/* Waves 2 */
	#sum-div .sum-row.waves-2{
		margin-top: -15.5vh;
	}

/* Body */
#body{}

	/* Left */
	#left{}
		
		/* Label Box */
		#left > .label-box{}

			#left > .label-box > .title{
				width: 80%;
				margin: 0 auto;
				color: var(--bgColor3);
				border-bottom: 3px solid var(--bgColor4);
			}

			#left > .label-box > .content{}

	/* Content */
	#content{}

		/* Spread */
		#content > .spread{}
		
			/* Title */
			#content > .spread > .title{
				position: relative;
				text-align: center;
				color: var(--bgColor3);
			}
			
				#content > .spread > .title:after{
					left: 35%;
					bottom: 0;
					width: 30%;
					content: '';
					position: absolute;
					border-bottom: 4px solid var(--bgColor4);
				}
		
			/* Data */
			#content > .spread > .data{}
		
				/* H3 */
				#content > .spread > .data h3{
					color: var(--bgColor3);
					border-bottom: 1px solid #eee;
				}

#body.wide{}

	/* Content */
	#content{}

		/* Panel */
		#content > .panel{}

		#content > .panel:nth-child(even){
			background-color: var(--bgColor5);
		}
		
			#content > .panel h1,
			#content > .panel h2{
				color: var(--bgColor4);
			}
			
				#content > .panel h1:before,
				#content > .panel h2:before{
					content: '';
					bottom: -8px;
					width: 14px;
					height: 14px;
					position: absolute;
					left: calc(50% - 16px);
					background-color: var(--bgColor);
					
					-webkit-border-radius: 50%;
					-moz-border-radius: 50%;
					-ms-border-radius: 50%;
					-o-border-radius: 50%;
					border-radius: 50%;
				}
				
				#content > .panel h1:after,
				#content > .panel h2:after{
					content: '';
					bottom: -8px;
					width: 14px;
					height: 14px;
					position: absolute;
					left: calc(50% + 2px);
					background-color: var(--bgColor2);
					
					-webkit-border-radius: 50%;
					-moz-border-radius: 50%;
					-ms-border-radius: 50%;
					-o-border-radius: 50%;
					border-radius: 50%;
				}
		
			#content > .panel h3{
				color: var(--bgColor3);
				border-bottom: 1px solid #eee;
			}

		/* Services */
		#content > .panel.services{}
		
			#content > .panel.services table{}
				
				#content > .panel.services table tr{}
				
					#content > .panel.services table tr thead{}
						
						#content > .panel.services table thead tr th{
							width: 20%;
							padding: 20px;
							font-weight: bold;
							text-align: center;
							color: var(--bgColor3);
						}
						
						#content > .panel.services table thead tr th:first-child{
							width: 40%;
							color: transparent;
						}
					
					#content > .panel.services table tr tbody{}
					
						#content > .panel.services table tbody tr:nth-child(even){
							color: var(--bgColor3);
							background-color: var(--bgColor5);
						}
					
						#content > .panel.services table tbody tr{}
							
							#content > .panel.services table tbody tr td{
								padding: 20px;
								font-weight: bold;
								text-align: center;
							}
							
								#content > .panel.services table tbody tr td:first-child{
									text-align: left;
								}
					
								#content > .panel.services table tbody tr td small{
									font-weight: normal;
								}

/* Page Options */
#page-options{
	background-color: var(--bgColor);
}

	#page-options a{
		color: #fff;
	}

	#page-options .left:hover,
	#page-options .right:hover{
		background-color: var(--bgColor2);
	}

/* Footer */
#footer{
	color: #fff;
	background-color: var(--bgColor2);
}

	#footer .title{
		color: #fff;
	}

	#footer a{
		color: #eee;
	}

		#footer a:hover{
			color: #fff;
		}

	#footer .list-box .item.active{
		background-color: var(--bgColor2);
	}

	#footer .list-box .item:hover{
		background-color: var(--bgColor);
	}

/* 1750px */		
@media screen and (max-width: 1750px){
	#menu-banner .menu-banner ul li a{
		padding: 28px 23px;
	}
}

/* 1650px */		
@media screen and (max-width: 1650px){
	#menu-banner .menu-banner ul li a{
		padding: 26px 21px;
	}
}

/* 1550px */		
@media screen and (max-width: 1550px){
	#menu-banner .menu-banner ul li a{
		padding: 24px 19px;
	}
}

/* 1380px */		
@media screen and (max-width: 1380px){
	#menu-banner .menu-banner ul li a{
		padding: 23px 18px;
	}
		
	#splash .content .block .left h2{
		font-size: var(--fontSize240);
	}
}

/* 1250px */		
@media screen and (max-width: 1250px){
	#menu-banner .menu-banner ul li a{
		padding: 22px 17px;
	}
}

/* 1100px */		
@media screen and (max-width: 1100px){
	#menu-banner .menu-banner ul li a{
		padding: 21px 16px;
	}
}

/* 1024px */		
@media screen and (max-width: 1024px){
	#menu-banner .menu-banner ul li a{
		padding: 20px 15px;
	}

	#splash .content{
		padding: 22% 0;
	}
}

/* 900px */		
@media screen and (max-width: 900px){
	#menu-banner .menu-banner ul li a{
		padding: 19px 14px;
	}
}

/* 800px */		
@media screen and (max-width: 800px){
	#menu-banner .menu-banner ul li a{
		padding: 18px 13px;
	}
}

/* 700px */		
@media screen and (max-width: 700px){
	#menu-banner .menu-banner ul li a{
		padding: 17px 12px;
	}
}

/* 600px */
@media screen and (max-width: 600px){
	#splash .content{
		padding: 30% 0;
	}
		
		#splash .content .block{
			display: block;
		}
		
			#splash .content .block .left{
				width: 90%;
				float: none;
				margin-right: 0;
			}
		
			#splash .content .block .right{
				width: 60%;
				float: none;
				margin: 10% auto 0;
			}

	#pg-splash{
		padding: 25% 0;
	}

	#content > .spread > .title{
		width: 80%;
		margin: 0 auto;
	}

	#content > .panel.services table tr{
		border-left: 5px solid var(--bgColor);
	}
		
		#content > .panel.services table tbody tr:nth-child(even){
			color: var(--color);
		}
			
			#content > .panel.services table tbody tr td{
				text-align: center;
			}
			
			#content > .panel.services table tbody tr td:before{
				text-align: center;
			}
		
				#content > .panel.services table tbody tr td:first-child{
					text-align: center;
				}
			
				#content > .panel.services table tbody tr td:nth-child(odd){
					background-color: var(--bgColor5);
				}
}