/* ---------------------------------------------------------------- Header */

/* Header */
header {
	position: fixed;
	top: 0;
	left: 0;
	height: 80px;
	width: 100%;
	background: white;
	box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.2);
	z-index: 3;
		/* Force Hardware Acceleration in WebKit */
		-webkit-transform: translateZ(0);
		-webkit-backface-visibility: hidden;
		-webkit-transition-property: -webkit-transform;
		-moz-transition-property: -moz-transform;
		transition-property: transform;
		-webkit-transition-duration: 0.4s;
		-moz-transition-duration: 0.4s;
		transition-duration: 0.4s;
	}
	header.menu-is-open {
		/* translate to show the off-canvas menu */
		-webkit-transform: translateX(-260px);
		-moz-transform: translateX(-260px);
		-ms-transform: translateX(-260px);
		-o-transform: translateX(-260px);
		transform: translateX(-260px);
		}
	@media only screen and (min-width: 768px) {
		header {
			height: 100px;
			}
		}

	/* Move the header down for logged in users */
	.adminBarPresent
	.service-times {
		top: 60px;
		}
	.adminBarPresent header {
		top: 60px;
		}

/* Logo */
#logo {
	display: block;
	float: left;
	margin: 20px 0 0 20px;
	}
	#logo h1 {
		margin: 0;
		padding: 0;
		line-height: 40px;
		font-size: 1.375rem;
		}
	#logo img {
		display: block;
		height: 40px;
		}
	@media only screen and (min-width: 768px) {
	  #logo {
		margin: 20px 0 0 30px;
		}
		#logo h1 {
			font-size: 1.875rem;
			line-height: 60px;
			}
		#logo img {
		height: 60px;
		}
	}

/* Top Nav Links */
#top-nav {
	position: absolute;
	top: 0;
	right: 160px;
	height: 100%;
	display: none;
	}
	#top-nav ul {
		padding: 0;
		margin: 0;
		height: 100%;
		padding-top: 30px;
		list-style: none;
		}
		#top-nav li {
			padding: 0;
			margin: 0;
			display: inline-block;
			margin-right: 1.5em;
			}
		#top-nav a {
			display: inline-block;
			padding: .5em;
			text-transform: uppercase;
			text-decoration: none;
			letter-spacing: .05em;
			font-weight: 500;
			}
			.no-touch #top-nav a:hover {
				color: rgba(77, 77, 77, 0.7);
			}
	@media only screen and (min-width: 900px) {
	  #top-nav {
		display: block;
	  }
	}

/* Menu Trigger */
#menu-trigger {
	position: absolute;
	right: 0;
	top: 0;
	height: 100%;
	width: 100px;
	background-color: #efefef;
	}
	#menu-trigger .menu-text {
		height: 100%;
		text-transform: uppercase;
		text-decoration: none;
		color: #4d4d4d;
		display: none;
		letter-spacing: .05em;
		font-weight: 500;
		padding: 0;
		}
		#menu-trigger:hover .menu-text {
			color: rgba(77, 77, 77, 0.7);
			}
	#menu-trigger .menu-icon {
		/* this span is the central line in the menu menu */
		display: inline-block;
		position: absolute;
		left: 50%;
		top: 50%;
		bottom: auto;
		right: auto;
		width: 18px;
		height: 2px;
		background-color: #4d4d4d;
		-webkit-transform: translateX(-50%) translateY(-50%);
		-moz-transform: translateX(-50%) translateY(-50%);
		-ms-transform: translateX(-50%) translateY(-50%);
		-o-transform: translateX(-50%) translateY(-50%);
		transform: translateX(-50%) translateY(-50%);
		}
		/* these are the upper and lower lines in the menu menu */
		#menu-trigger .menu-icon::before,
		#menu-trigger .menu-icon::after {
			content: '';
			width: 100%;
			height: 100%;
			position: absolute;
			background-color: inherit;
			left: 0;
			box-shadow: none;
			}
		#menu-trigger .menu-icon::before {
			bottom: 5px;
			}
		#menu-trigger .menu-icon::after {
			top: 5px;
			}
		/* When clicked, rotate to make an X */
		/* first get rid of middle line */
		#menu-trigger.is-clicked .menu-icon {
			background-color: rgba(77, 77, 77, 0);
			}
		/* add color back to top and bottom lines */
		#menu-trigger.is-clicked .menu-icon::before,
		#menu-trigger.is-clicked .menu-icon::after {
			background-color: #4d4d4d;
			}
		#menu-trigger.is-clicked .menu-icon::before {
			bottom: 0;
			-webkit-transform: rotate(45deg);
			-moz-transform: rotate(45deg);
			-ms-transform: rotate(45deg);
			-o-transform: rotate(45deg);
			transform: rotate(45deg);
			}
		#menu-trigger.is-clicked .menu-icon::after {
			top: 0;
			-webkit-transform: rotate(-45deg);
			-moz-transform: rotate(-45deg);
			-ms-transform: rotate(-45deg);
			-o-transform: rotate(-45deg);
			transform: rotate(-45deg);
			}
		@media only screen and (min-width: 768px) {
		  #menu-trigger {
			width: 150px;
			padding-left: 2.2em;
		  }
		  #menu-trigger .menu-text {
			display: inline-block;
			line-height: 102px;
		  }
		  #menu-trigger .menu-icon {
			left: auto;
			right: 2.2em;
			-webkit-transform: translateX(0);
			-moz-transform: translateX(0);
			-ms-transform: translateX(0);
			-o-transform: translateX(0);
			transform: translateX(0);
		  }
		}

/* Move LCMS edit bar with off-canvas */
html body div[id$="_lcms_menus"] .lcms_pagebar {
		top: 200px;
	/* Force Hardware Acceleration in WebKit */
	-webkit-transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	-webkit-transition-property: -webkit-transform;
	-moz-transition-property: -moz-transform;
	transition-property: transform;
	-webkit-transition-duration: 0.4s;
	-moz-transition-duration: 0.4s;
	transition-duration: 0.4s;
	}

html body div[id$="_lcms_menus"] .lcms_pagebar.menu-is-open {
		-webkit-transform: translateX(-260px);
	-moz-transform: translateX(-260px);
	-ms-transform: translateX(-260px);
	-o-transform: translateX(-260px);
	transform: translateX(-260px);
	}
div.lcms_pagebar {
	top: 200px;
	/* Force Hardware Acceleration in WebKit */
	-webkit-transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	-webkit-transition-property: -webkit-transform;
	-moz-transition-property: -moz-transform;
	transition-property: transform;
	-webkit-transition-duration: 0.4s;
	-moz-transition-duration: 0.4s;
	transition-duration: 0.4s;
	}
div.lcms_pagebar.menu-is-open {
	-webkit-transform: translateX(-260px);
	-moz-transform: translateX(-260px);
	-ms-transform: translateX(-260px);
	-o-transform: translateX(-260px);
	transform: translateX(-260px);
	}

/* Dark Theme Header - body.dark-theme */
body.dark-theme header {
	background: #191919;}
body.dark-theme #logo h1 {
	color: white;}
body.dark-theme #top-nav a {
	color: #e6e6e6;}
.no-touch body.dark-theme #top-nav a:hover {
	color: rgba(230, 230, 230, 0.7);}
body.dark-theme #menu-trigger {
	background-color: black;}
body.dark-theme #menu-trigger .menu-text {
	color: #e6e6e6;}
body.dark-theme #menu-trigger:hover .menu-text {
	color: rgba(230, 230, 230, 0.7);}
body.dark-theme #menu-trigger .menu-icon {
	background-color: #e6e6e6;
	}
/* When clicked, rotate to make an X */
/* first get rid of middle line */
body.dark-theme #menu-trigger.is-clicked .menu-icon {
	background-color: rgba(230, 230, 230, 0);}
/* add color back to top and bottom lines */
body.dark-theme #menu-trigger.is-clicked .menu-icon::before,
body.dark-theme #menu-trigger.is-clicked .menu-icon::after {
	background-color: #e6e6e6;}



/* ---------------------------------------------------------------- Off Canvas Navigation */

#off-canvas-nav {
	position: fixed;
	height: 100%;
	right: 0;
	top: 0;
	visibility: hidden;
	z-index: 1;
	width: 260px;
	background-color: #292929;
	overflow-y: auto;
		/* Force Hardware Acceleration in WebKit */
		-webkit-transform: translateZ(0);
		-webkit-backface-visibility: hidden;
		-webkit-transition: -webkit-transform .4s 0s, visibility 0s .4s;
		-moz-transition: -moz-transform .4s 0s, visibility 0s .4s;
		transition: transform .4s 0s, visibility 0s .4s;
		/* this creates the subtle slide in animation of the navigation */
		-webkit-transform: translateX(80px);
		-moz-transform: translateX(80px);
		-ms-transform: translateX(80px);
		-o-transform: translateX(80px);
		transform: translateX(80px);
	}
/* Move the nav down for logged in users */
.adminBarPresent #off-canvas-nav {
	top: 60px;
	}

/* unordered list */
#off-canvas-nav .navigation {
	margin: 24px 0 16px;
	list-style: none;
	padding: 0;
	}
@media only screen and (min-width: 768px) {
	#off-canvas-nav .navigation {
		margin: 34px 0;
	}
}
#off-canvas-nav .navigation li {
	padding: 0 0 8px;
	}
/* second unordered list */
#off-canvas-nav .level2 {
	padding: 5px 10px 10px 15px;
	display: none;
	list-style: none;
	}
/*
#off-canvas-nav .level3,
#off-canvas-nav .level4,
#off-canvas-nav .level5 {
	display: none;
}
*/
#off-canvas-nav a {
	display: block;
	line-height: 2em;
	padding: 0 16px 0 32px;
	color: #a9b5b7;
	text-decoration: none;
	text-transform: uppercase;
	}
	#off-canvas-nav a.selectedPage {
	/* 	background-color: #2bb673; */
		color: #FFF;
		}
	#off-canvas-nav a:hover {
		color: #fff;
		}
	#off-canvas-nav .level2 a {
		/* make lowercase */
		text-transform: none;
		}

/* Navigation is open */
#off-canvas-nav.menu-is-open {
	visibility: visible;
	-webkit-transform: translateX(0);
	-moz-transform: translateX(0);
	-ms-transform: translateX(0);
	-o-transform: translateX(0);
	transform: translateX(0);
	-webkit-transition: -webkit-transform .4s 0s, visibility 0s 0s;
	-moz-transition: -moz-transform .4s 0s, visibility 0s 0s;
	transition: transform .4s 0s, visibility 0s 0s;
	/* smooth the scrolling on touch devices - webkit browsers */
	-webkit-overflow-scrolling: touch;
	}

/* style menu items which have a submenu  */
#off-canvas-nav li.hasChildren > a {
	position: relative;
	}
/* this is the right arrow to show that the item has a submenu  */
#off-canvas-nav li.hasChildren > a::after {
	content: '';
	display: block;
	height: 11px;
	width: 8px;
	position: absolute;
	top: 50%;
	bottom: auto;
	right: 1em;
	background: url("../img/arrow.svg") no-repeat center center;
	background-size: 8px 11px;
		-webkit-transform: translateY(-50%);
		-moz-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		-o-transform: translateY(-50%);
		transform: translateY(-50%);
		-webkit-transition-property: -webkit-transform;
		-moz-transition-property: -moz-transform;
		transition-property: transform;
		-webkit-transition-duration: 0.2s;
		-moz-transition-duration: 0.2s;
		transition-duration: 0.2s;
	}
#off-canvas-nav .hasChildren > a.submenu-open::after {
	-webkit-transform: translateY(-50%) rotate(90deg);
	-moz-transform: translateY(-50%) rotate(90deg);
	-ms-transform: translateY(-50%) rotate(90deg);
	-o-transform: translateY(-50%) rotate(90deg);
	transform: translateY(-50%) rotate(90deg);
	}
#off-canvas-nav .hasChildren .hasChildren > a::after {
	display: none;
	background: none;
	}
/*Remove Page Arrow on Parent Pages when not desired / Special hide-arrow class*/
#off-canvas-nav li.hasChildren.hide-arrow > a::after {
	display: none;
}

/* Social Media Icons */
#off-canvas-nav .socialMedia {
	padding-left: 34px;
	box-sizing: content-box;
	}
#off-canvas-nav .socialMedia li {
	
	}
#off-canvas-nav .socialMedia a {
	padding: 0;
	border-radius: 3px;
	}
