/*
*		    ________      .___   
*	__  _  _\_____  \   __| _/
*	\ \/ \/ / _(__  <  / __ |
*	 \     / /       \/ /_/ |
*	  \/\_/ /______  /\____ |
*	               \/      \/
*
*	@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: #444;
	--color2: #fff;
	
	--bgColor: #4C244A;
	--bgColor2: #2B112A;
	--bgColor3: #ED207B;
	--bgColor4: #F4F1F4;

	--linkColor: #4C244A;
	--linkHoverColor: #2B112A;
	
	--borderRadius: 20px;
	
	--mobileMenuColor: #fff;
	--mobileMenuBtnColor: #4C244A;
	--mobileMenuSelectedColor: #fff;
	--mobileMenuSelectedBgColor: #2B112A;
	--mobileMenuContentBgColor: #4C244A;
	
	--btnColor: #fff;
	--btnBgColor: #ED207B;
	--btnHoverColor: #fff;
	--btnBgHoverColor: #4C244A;
	
	--dialogBgColor: #4C244A;
	--dialogBgColor2: #2B112A;
	--dialogHeadingColor: #fff;
}

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

/* Overwrites */
#locator.coverage-map .map .legend{
    left: 100px !important;
	bottom: 30px !important;
}

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

/* Headings */
h1, h2, h3{
	font-family: Goldman, Helvetica, Arial, sans-serif;
}
	
/* UL */
ul.list{
	list-style: none;
	padding-left: 10px;
}

	ul.list li{
		position: relative;
		padding-left: 20px;
	}

		ul.list li:after{
			left: 0;
			top: 6px;
			content: '';
			width: 14px;
			height: 12px;
			display: block;
			position: absolute;
			
			background-size: 14px;
			background: url(../images/ui/check.svg) no-repeat;
		}

	ul.list ul{
		margin-top: 10px;
	}

/* Menu */
#menu-banner{}

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

	/* Menu Banner */
	#menu-banner .menu-banner{}

		/* Left */
		#menu-banner .menu-banner > .left{
			width: 13%;
		}

		/* Right */
		#menu-banner .menu-banner > .right{
			width: 87%;
		}

			/* Menu */
			#menu-banner .menu-banner > .right .menu{
				padding: 10px;
			}

				#menu-banner .menu-banner > .right .menu ul li a{
					color: #444;
					padding: 13px 12px;
				}
					
					#menu-banner .menu-banner > .right .menu ul li:hover > a{
						color: #fff;
						background: var(--bgColor2);
					}
					
					#menu-banner .menu-banner > .right .menu ul li.active-li > a{
						color: #fff;
						background: var(--bgColor);
					}
		
						#menu-banner .menu-banner > .right .menu ul ul{
							background-color: #fff;
						}
			
/* Slider */
#slider{}

	#slider .content{
		padding: 8vw 0;
		position: relative;
		background-color: rgba(0, 0, 0, 0.4);
	}

		#slider .content h1{
			color: #fff;
			text-align: center;
			font-size: var(--fontSize300);
		}

	#slider.home .content{
		padding: 22vw 0;
		overflow-x: hidden;
	}

		#slider.home .content .blurb{
			color: #fff;
			width: 900px;
			z-index: 101;
			position: absolute;
		}

			#slider.home .content .blurb .left{
				width: 60%;
			}

				#slider.home .content .blurb .left h2{
					margin: 0 0 10px;
					font-size: var(--fontSize220);
				}

				#slider.home .content .blurb .left h3{
					margin: 0 0 10px;
					font-weight: normal;
					font-size: var(--fontSize180);
				}

				#slider.home .content .blurb .left .text{
					margin: 0 0 20px;
				}

				#slider.home .content .blurb .left .button{}

			#slider.home .content .right{
				width: 35%;
				margin-left: 5%;
			}

				#slider.home .content .blurb .right .image{
					background-color: var(--bgColor3);
				}

					#slider.home .content .blurb .right .image img{
						width: 60%;
						padding: 20%;
					}
	
/* Sum-Div */
#sum-div{
	color: var(--color);
	background-color: #fff;
}

	#sum-div .sum-row{}

		#sum-div .sum-row .title{
			position: relative;
			font-size: var(--fontSize160);
		}

			#sum-div .sum-row .title:after{
				bottom: 0;
				left: 30%;
				width: 40%;
				content: '';
				height: 3px;
				position: absolute;
				background-color: var(--bgColor3);
			}

	/* Videos */
	#sum-div .sum-row.videos{}

	/* Circles */
	#sum-div .sum-row.circles{
		background-color: var(--bgColor4);
	}
	
		#sum-div .sum-row.circles .sum-column{
			width: 70%;
			margin: 0 auto;
		}
		
			#sum-div .sum-row.circles .sum-column .image{
				width: 50%;
				margin: 10% auto;
			}

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

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

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

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

	#content{}

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

#body.wide{}

	#content{}

		/* Panel */
		#content > .panel{
			background-color: var(--bgColor4);
		}

		#content > .panel:nth-child(odd){
			background-color: #fff;
		}
		
			#content > .panel h1,
			#content > .panel h2{}

				#content > .panel h1:after,
				#content > .panel h2:after{
					bottom: 0;
					left: 30%;
					width: 40%;
					content: '';
					height: 3px;
					position: absolute;
					background-color: var(--bgColor3);
				}

		/* Coverage */
		#content > .panel.coverage{}
		
			#content > .panel.coverage .coverage-options{
				width: 450px;
				margin: 50px auto 0;
			}
			
				#content > .panel.coverage .coverage-options .coverage{
					width: 220px;
					padding: 15px;
					cursor: pointer;
					border: 5px solid var(--bgColor);
				}
			
					#content > .panel.coverage .coverage-options .coverage img{
						width: 80px;
						margin-right: 10px;
					}
			
					#content > .panel.coverage .coverage-options .coverage span{
						font-size: var(--fontSize90);
					}
			
				#content > .panel.coverage .coverage-options .coverage.home{
					margin-right: 10px;
				}

		/* Contact */
		#content > .panel.contact{}

/* Packages */
#packages{
	padding: 0 10%;
}

	#packages .col-2{
		margin-bottom: 10px;
	}

	#packages .row.last{
		padding: 0 25%;
	}

	#packages .notice{
		padding: 0 0 2%;
		text-align: center;
		color: var(--softColor);
		font-size: var(--fontSize90);
	}

	#packages .package{
		background: #fff;
		text-align: center;
		border-radius: 30px;
		border: 1px solid #ddd;
	}

	#packages .package:hover{
		box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
	}

		#packages .package .title{
			color: #fff;
			padding: 10px 0;
			border-bottom: none;
			font-size: var(--fontSize180);
			border-radius: 30px 30px 0 0;
			text-shadow: 1px 1px 1px #000;
			background-color: var(--bgColor3);
		}

		#packages .package .text{
			padding: 15px;
			border-bottom: 1px solid #eee;
		}

		#packages .package .text.terms{
			text-align: left;
			color: var(--softColor);
			font-size: var(--fontSize90);
		}

			#packages .package .text span{
				font-weight: bold;
				font-size: var(--fontSize140);
			}

				#packages .package .text.terms ul{
					margin: 0;
				}

		#packages .package .btns{
			padding: 15px;
		}

			#packages .package .btns .btn{
				margin: 0 5px;
			}

/* 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;
	position: relative;
	background-color: var(--bgColor2);
}

	#footer .title{
		color: #fff;
	}

	#footer a{
		color: #eee;
	}

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

	#footer .logos{
		left: 30%;
		bottom: 30%;
		position: absolute;
	}

		#footer .logos .logo{
			width: auto;
			height: 120px;
			margin-right: 20px;
			display: inline-block;
		}

		#footer .logos .logo:last-child{
			margin-right: 0;
		}

			#footer .logos .logo img{
				width: auto;
				height: 100%;
			}

/* 1750px */		
@media screen and (max-width: 1750px){
	#packages{
		padding: 0 9%;
	}
}

/* 1650px */		
@media screen and (max-width: 1650px){
	#menu-banner .menu-banner > .right .menu ul li a{
		padding: 12px 11px;
	}
	
	#packages{
		padding: 0 8%;
	}
}

/* 1550px */		
@media screen and (max-width: 1550px){
	#menu-banner .menu-banner > .right .menu ul li a{
		padding: 11px 10px;
	}
	
	#packages{
		padding: 0 7%;
	}
}

/* 1380px */		
@media screen and (max-width: 1380px){
	#menu-banner .menu-banner > .right .menu ul li a{
		padding: 10px 9px;
	}
	
	#slider.home .content .blurb{
		width: 800px;
	}
	
	#packages{
		padding: 0 5%;
	}
}

/* 1250px */		
@media screen and (max-width: 1250px){
	#menu-banner .menu-banner > .right .menu ul li a{
		padding: 9px 8px;
	}
	
	#slider.home .content .blurb{
		width: 700px;
	}
}

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

/* 1024px */		
@media screen and (max-width: 1024px){
	#slider.home .content .blurb{
		width: 600px;
	}
}

/* 600px */
@media screen and (max-width: 600px){
	#slider .content{
		padding: 20% 0;
	}

	#slider.home .content{
		padding: 80% 0;
	}

		#slider.home .content .blurb{
			width: 70%;
			text-align: center;
		}
		
			#slider.home .content .blurb .left{
				width: 100%;
			}
		
			#slider.home .content .blurb .right{
				display: none;
			}
			
	#sum-div .sum-row.circles .sum-column{
		width: 100%;
	}

	#content > .spread > .title{
		width: 80%;
		margin: 0 auto;
		text-align: center;
	}
		
	#content > .panel.coverage .coverage-options{
		width: 100%;
		display: block;
	}
	
		#content > .panel.coverage .coverage-options .coverage{
			width: 100%;
		}
	
		#content > .panel.coverage .coverage-options .coverage.home{
			margin-bottom: 10px;
		}

	#packages .row.last{
		padding: 0;
	}
	
	#footer .logos{
		left: auto;
		bottom: auto;
		text-align: center;
		position: relative;
		padding: 90px 0 30px;
	}

		#footer .logos .logo{
			height: 80px;
			margin-right: 10px;
		}
}