/*
*		    ________      .___   
*	__  _  _\_____  \   __| _/
*	\ \/ \/ / _(__  <  / __ |
*	 \     / /       \/ /_/ |
*	  \/\_/ /______  /\____ |
*	               \/      \/
*
*	@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: #005F9F;
	--bgColor2: #193669;
	--bgColor3: #DBDBDB;
	--bgColor4: #FAFAFA;
	--bgColor5: #26529C;

	--linkColor: #222;
	--linkHoverColor: #008ce5;
	
	--borderRadius: 10px;
	
	--mobileMenuColor: #000;
	--mobileMenuBtnColor: #005F9F;
	--mobileMenuSelectedColor: #fff;
	--mobileMenuSelectedBgColor: #193669;
	--mobileMenuContentBgColor: #fff;
	
	--btnColor: #fff;
	--btnBgColor: #005F9F;
	--btnHoverColor: #fff;
	--btnBgHoverColor: #193669;
	
	--dialogBgColor: #005F9F;
	--dialogBgColor2: #193669;
	--dialogHeadingColor: #fff;
}

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

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

/* Headings */
h1, h2, h3{
	color: var(--bgColor5);
	font-family: Montserrat, Helvetica, Arial, sans-serif;
}

/* Splash Gradient */
.splash-gradient{
	position: relative;
}

	.splash-gradient:after{
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		content: '';
		position: absolute;
		
		background-color: rgb(255, 255, 255);
		background: linear-gradient(
			0deg, 
			rgba(255, 255, 255,0) calc(100% - 70px), 
			rgba(255, 255, 255,1) calc(100% - 30px), 
			rgba(255, 255, 255,1) 100%
		);
	}
	
/* B */
b, strong{
	font-weight: 700;
}

/* Menu */
#menu-banner{}

	/* Top Banner */
	#menu-banner .top-banner{
		border-bottom: 1px solid var(--bgColor4);
	}

	/* Menu Banner */	
	#menu-banner .menu-banner{
		padding: 10px;
	}
		
		#menu-banner .menu-banner .left{
			width: calc(50% - 75px);
		}
		
		#menu-banner .menu-banner .logo{
			width: 150px;
		}
		
		#menu-banner .menu-banner .logo.default{}
		
		#menu-banner .menu-banner .right{
			width: calc(50% - 75px);
		}

	/* Menu */
	#menu-banner .menu-banner{}
	
		#menu-banner .menu-banner ul li a{
			color: #222;
			padding: 24px 14px;
		}

			#menu-banner .menu-banner .left > ul > li.active-li > a,
			#menu-banner .menu-banner .right > ul > li.active-li > a{
				font-weight: bold;
			}

			#menu-banner .menu-banner .left > ul > li:hover > a,
			#menu-banner .menu-banner .right > ul > li:hover > a{}

			#menu-banner .menu-banner .left > ul > li > a:after,
			#menu-banner .menu-banner .right > ul > li > a:after{
				width: 0;
				content: '';
				height: 2px;
				bottom: -10px;
				display: block;
				position: relative;
				background-color: var(--bgColor);
				transition: width 0.3s, left 0.3s;
			}

				#menu-banner .menu-banner .left > ul > li:hover > a:after,
				#menu-banner .menu-banner .left > ul > li.active-li > a:after,
				#menu-banner .menu-banner .right > ul > li:hover > a:after,
				#menu-banner .menu-banner .right > ul > li.active-li > a:after{
					left: 10%;
					width: 80%;
				}

		#menu-banner .menu-banner ul ul{
			-webkit-border-radius: var(--borderRadius);
			-moz-border-radius: var(--borderRadius);
			-m-border-radius: var(--borderRadius);
			-o-border-radius: var(--borderRadius);
			border-radius: var(--borderRadius);
		}
				
			#menu-banner .menu-banner ul ul li{
				margin: 5px;
			}
				
				#menu-banner .menu-banner ul ul li a{
					-webkit-border-radius: var(--borderRadius);
					-moz-border-radius: var(--borderRadius);
					-m-border-radius: var(--borderRadius);
					-o-border-radius: var(--borderRadius);
					border-radius: var(--borderRadius);
				}

				#menu-banner .menu-banner ul ul li.active-li > a{
					color: #fff;
					background: var(--bgColor2);
				}
			
				#menu-banner .menu-banner ul ul li:hover > a{
					color: #fff;
					background-color: var(--bgColor2);
				}
			
/* Splash */
#splash{}

	#splash .content{
		overflow: hidden;
	}

		#splash .content video{
			width: 100%;
			margin-top: -15vw;
		}

		#splash .content h1{
			top: 45%;
			width: 600px;
			font-weight: 900;
			text-align: center;
			position: absolute;
			color: var(--bgColor);
			left: calc(50% - 300px);
			font-size: var(--fontSize400);
			text-shadow: 3px 3px 0 #fff;
		}

/* Page Splash */
#pg-splash{
	padding: 14% 0;
	background-image: url('../images/ui/bg.webp');
}
	
/* Sum-Div */
#sum-div{
	background-color: #fff;
}

	/* Row */
	#sum-div .sum-row{}

		/* Title */
		#sum-div .sum-row .title{
			width: 500px;
			border-bottom: 5px solid var(--bgColor);
		}
		
			#sum-div .sum-row .title:after{}

	/* Cover */
	#sum-div .sum-row.cover{
		background-image: url('../images/home/bg.webp');
	}
	
		#sum-div .sum-row.cover .sum-column{
			background-color: rgba(255, 255, 255, 0.95);
		}

/* Body */
#body{}

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

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

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

	/* Content */
	#content{}

		/* Spread */
		#content > .spread{}
		
			/* Title */
			#content > .spread > .title{
				width: 93%;
				margin: 0 auto;
				border-bottom: 5px solid var(--bgColor);
			}
		
			/* Data */
			#content > .spread > .data{}
		
				/* H3 */
				#content > .spread > .data h3{
					border-bottom: 1px dashed var(--bgColor3);
				}

#body.wide{}

	/* Content */
	#content{}

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

		#content > .panel:nth-child(even){
			background-color: var(--bgColor4);
		}
		
			#content > .panel h1,
			#content > .panel h2{
				width: 600px;
				border-bottom: 5px solid var(--bgColor);
			}
		
			#content > .panel h3{
				border-bottom: 1px dashed var(--bgColor3);
			}

			/* Products */
			#content > .panel .products{}
				
				#content > .panel .products .product{
					padding: 10px;
					overflow: hidden;
					border: 1px solid var(--bgColor3);
				}
				
					#content > .panel .products .product .title{}
					
					#content > .panel .products .product .image{}

		/* Contact */
		#content > .panel.contact{
			background-color: var(--bgColor3);
		}

			#content > .panel.contact h2{
				border-bottom: none;
			}

			#content > .panel.contact .text{
				width: 500px;
				margin: 0 auto;
				max-width: 100%;
			}

/* 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: #ccc;
	}

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

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

/* 1650px */		
@media screen and (max-width: 1650px){
	
}

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

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

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

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

/* 1024px */		
@media screen and (max-width: 1024px){
	.splash-gradient:after{
		background: linear-gradient(
			0deg, 
			rgba(255, 255, 255,0) calc(100% - 80px), 
			rgba(255, 255, 255,1) calc(100% - 40px), 
			rgba(255, 255, 255,1) 100%
		);
	}
	
	#menu-banner .menu-banner ul li a{
		padding: 15px 10px;
	}
}

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

/* 600px */
@media screen and (max-width: 600px){
	.splash-gradient:after{
		background: linear-gradient(
			0deg, 
			rgba(255, 255, 255,0) calc(100% - 100px), 
			rgba(255, 255, 255,1) calc(100% - 60px), 
			rgba(255, 255, 255,1) 100%
		);
	}
	
	#splash .content video{
		margin-top: 12vw;
	}
	
	#splash .content h1{
		left: 10%;
		width: 80%;
		font-size: var(--fontSize300);
	}

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

	#sum-div .sum-row.cover .sum-column{
		-webkit-border-radius: var(--borderRadius);
		-moz-border-radius: var(--borderRadius);
		-m-border-radius: var(--borderRadius);
		-o-border-radius: var(--borderRadius);
		border-radius: var(--borderRadius);
	}

	#content > .spread > .title{
		width: 80%;
		margin: 0 auto;
		text-align: center;
	}
		
	#content > .panel .products .product{
		margin-bottom: 10px;
	}
}