

/* 
logical sections
*/

.section
{
	clear:both;
	width:100%;
	text-align:center;
}
.section:before, 
.section:after 	{ content:""; display:table; }
.section:after 	{ clear:both; }
.section 		{ zoom:1; /* For IE 6/7 (trigger hasLayout) */ }


.contain
{
	width:100%;
	max-width:960px;
	text-align:left;
	margin:0 auto;
	position:relative;

	bbox-shadow:inset 0 0 0 1px red;
}
.contain:before, 
.contain:after 	{ content:""; display:table; }
.contain:after 	{ clear:both; }
.contain 		{ zoom:1; /* For IE 6/7 (trigger hasLayout) */ }




/*

.wrap
{
	width: 1080px;
	text-align: left;
	margin:0 auto;
	position: relative;
}

.wrapme
{
	width: 960px;
	text-align: left;
	margin:0 auto;
	position: relative;
}

*/




/* 
self clearing element
*/

.cl:before, 
.cl:after 	{ content:""; display:table; }
.cl:after 	{ clear:both; }
.cl 		{ zoom:1; /* For IE 6/7 (trigger hasLayout) */ }




/* 
helper classes
*/

.fl {float: left;}
.fr {float: right;}
.cb {clear: both;}

.hide {display: none;}

.rel
{
	position:relative;
}

.bb
{
	border-bottom:1px dashed #606060;
}

.pad060
{
	padding: 0 60px;
}






/* buttons */

.button
{
	display:block;
	display:inline-block;
	height: 3.078em;
	line-height:3em;
	text-align:center;
	font-size:120%;
	padding:0 1em;
	border:0;
	background:#666;
	color:#fff;
}

.button,
.button:hover,
.button span,
.button:hover span,
.button:active,
.button:active span,
.button:focus,
.button:focus span
{
	color:#fff;
	text-decoration:none;
}



/* primary actions */

.button-primary
{
	position:relative;
	
	height:50px;
	line-height:49px;

	background:#ec0d8c;
	font-size:140%;
	
	font-weight:bold;
}
	.button-primary:hover
	{
		color:#fff;
	}
	.button-primary:active
	{
		color:#fff;
	}


/* secondary actions */

.button-secondary
{
	position:relative;

	background:#008d9f;
	color:#fff;
	font-size:140%;
	
	font-weight:bold;
}
	.button-secondary:hover
	{
		color:#fff;
	}
	.button-secondary:active
	{
		color:#fff;
	}



/* auxilary actions */

.button-aux
{
	position:relative;

	background:#999;
	color:#333;
	font-size:120%;
	
	font-weight:bold;
}
	.button-aux:hover
	{
		color:#111;
	}
	.button-aux:active
	{
		color:#111;
	}




/* rounded corners */

.button-rounded
{
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
}




/* 3D effect button */

.button-3d
{
	text-shadow:0 -1px 0 rgba(0,0,0,0.2);
	box-shadow:inset 0 -1px 0 0 rgba(0,0,0,0.25);
}
	.button-3d:hover
	{
		top:-2px;
		height:52px;
		line-height:48px;
		box-shadow:inset 0 -5px 0 0 rgba(0,0,0,0.25);
	}
	.button-3d:active
	{
		top:0;
		height:50px;
		line-height:47px;
		box-shadow:inset 0 1px 0 0 rgba(0,0,0,0.25);
	}



/* buttons with icons */

.button .fa
{
	margin-right:0.5em;
}







/* gallery */


.gallery
{
	float:left;
	width:100%;
}

.gallery .gallery-image
{
	float:left;
	display:block;
}

.gallery .gallery-image a
{
	display:block;
}

.gallery .gallery-image a img
{
	display:block;
}





/* maps */

.map
{
	float:left;
	display:block;
	width:100%;
	height:100%;
}






button::-moz-focus-inner 
{
	padding: 0;
	border: 0
}





/* burger */

.toggler
{
	float:left;
	display:block;
	width:20px;
	height:20px;
}

.burger 
{
	width:100%;
	height:100%;
	transition: .3s;
	cursor: pointer;
	user-select: none;
	background:none;
	position: relative;

	opacity:0.8;
}

.burger:hover 
{
 	opacity: 1;
}


.burger:active 
{
	transition: 0;
}

.lines,
.lines:before, 
.lines:after 
{
	background:#fff;
	width: 100%;
	height:3px;
	
	font-size:100%;

	transition: 0.3s;
}

.lines 
{
	display: block;
	transition: background 0.3s 0.5s ease;
}
.lines:before, 
.lines:after 
{
	display: inline-block;
	position: absolute;
	left: 0;
	content: '';

	-webkit-transform-origin: 50% 50%;
	transform-origin: 50% 50%;
	transition: all 0.3s 0.6s ease, -webkit-transform 0.3s ease;
	transition: all 0.3s 0.6s ease, transform 0.3s ease;
}
.lines:before 
{
	top:100%;
	margin-top:-3px;
}
.lines:after 
{
	top:0;
}



/*
.burger:hover .lines:before 
{
	top: 1.2em;
}
.burger:hover .lines:after 
{
	top: -1.2em;
}

.burger.close 
{
	-webkit-transform: scale3d(0.8, 0.8, 0.8);
	transform: scale3d(0.8, 0.8, 0.8);
}
*/

.burger.close .lines
{
	transition: background 0.3s 0s ease;
	background: transparent;
}

.burger.close .lines:before, 
.burger.close .lines:after 
{
	transition: all 0.3s ease, -webkit-transform 0.3s 0.5s ease;
	transition: all 0.3s ease, transform 0.3s 0.5s ease;
}

.burger.close .lines:before 
{
	-webkit-transform: rotate3d(0, 0, 1, 45deg);
	transform: rotate3d(0, 0, 1, 45deg);
	top: 50%;
	margin-top:0px;
}

.burger.close .lines:after 
{
	-webkit-transform: rotate3d(0, 0, 1, -45deg);
	transform: rotate3d(0, 0, 1, -45deg);
	top: 50%;
}




