/* Master layout */

/************************************************************
Embedded fonts */

@font-face {
	font-family:Bebas;
	src:url('../fonts/bebas.eot'); /* IE8- */
	src:url('../fonts/bebas.eot?iefix') format('embedded-opentype'), /* IE9 */
	url('../fonts/bebas.ttf') format('truetype'); /* The rest of the world */
}
@font-face {
	font-family:Eurostile;
	src:url('../fonts/eurosti.eot'); /* IE8- */
	src:url('../fonts/eurosti.eot?iefix') format('embedded-opentype'), /* IE9 */
		url('../fonts/eurosti.ttf') format('truetype'); /* The rest of the world */
}
@font-face {
	font-family:FjallaOne;
	src:url('../fonts/fjallaone-regular-webfont.eot'); /* IE8- */
	src:url('../fonts/fjallaone-regular-webfont.eot?iefix') format('embedded-opentype'), /* IE9 */
	url('../fonts/fjallaone-regular-webfont.ttf') format('truetype'); /* The rest of the world */
}


/************************************************************
Global styles */

/* Partial CSS Reset */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-tap-highlight-color:  rgba(0, 0, 0, 0);
}
html {
	background:#252525;
	color:#fefefe;
}
body {
	margin:0;
	padding:0;
	font:10.5pt/1.3 Eurostile,Arial,Helvetica,sans-serif;
	background:url('../images/site/texture-gradient.jpg') repeat center top;
	background:url('../images/site/texture-gradient.jpg') repeat-y center top, #c6c7c7 url('../images/site/texture-hash.gif') repeat center top;
}
body.mceContentBody {
	min-width:1px;
}
iframe {
	border:2px solid #ccc;
	border-radius:2px;
	box-shadow:0 0 0.2em rgba(0,0,0,0.2);
	margin:0 0 1em;
}

/* Links */
a:link,
a:visited,
a:hover,
a:active {
	color:#006fd0;
	text-decoration:none;
}
a img {
	border:none;
}
a[href^="tel:"] {
	color:inherit;
	cursor:default;
}

/* Headings */
h1,h2,h3,h4,h5,h6 {
	font:12pt/1.1 FjallaOne,Arial,Helvetica,sans-serif;
	margin:0.4em 0 0.2em;
}
h1 {
	font-size:30pt;
	padding: 0 10px;
}
h2 {
	font-size:21pt;
}
h3 {
	font-size:18pt;
}
h4 {
	font-size:15pt;
}

/* Block-level */
p {
	margin:1em 0;
}
address {
	margin:0.5em 0;
	font-style:normal;
}
.padding {
	padding: 0 10px;
}

/************************************************************
Layout: Header */
body > header {
	box-shadow: 0 0 10px 0 #000;
	transition: top 0.5s ease 0s;
	top: -100%;
}
body > header .top-navigation {
	position:relative;
	height:87px;
  max-width: 1200px;
  margin: 0 auto;
  transition: all 0.3s ease 0s;
}

/* Blue stuff */
body > header .top-navigation div {
	display: inline-block;
	position: relative;
	left: 50px;
}
body > header .top-navigation > div:last-child {
	left: 0;
	float: right;
}
body > header .top-navigation div > nav,
body > header .top-navigation div > h2 {
	background:#006fd0 url('../images/site/texture-scratchy.png') repeat center top;
	display: inline-block;
	height:44px;
	font:11pt/44px FjallaOne,Arial,Helvetica,sans-serif;
	text-shadow:1px 1px 0 rgba(0,0,0,0.46);
	vertical-align: top;
}
body > header .top-navigation div > nav ul {
	list-style:none;
	margin:0;
	padding:0;
}
body > header .top-navigation div > nav li {
	display:inline;
}
body > header .top-navigation div > nav a {
	display:inline-block;
	color:#fefefe !important;
}

/* Social links */
#social {
	padding:0 0.5em;
	text-align:center;
}
#social a {
	text-indent:-9999px;
	outline:none;
	width:31px;
	background:transparent url('../images/icons/social.png') no-repeat center center;
}
#social .fb a { background-position:4px center; }
#social .gp a { background-position:-32px center; }
#social .li a { background-position:-68px center; }


/* Call header */
body > header .top-navigation div > h2 {
	font-size:16.5pt;
	margin: 0;
	padding:0 0.7em 0 0.5em;
}
body > header .top-navigation div > h2 a:before {
	content:' ';
	display:inline-block;
	vertical-align:middle;
	background:transparent url('../images/icons/icons.png') no-repeat left bottom;
	height:28px;
	width:19px;
}

/* Top navigation */
#top-nav {
	padding:0 1em;
	margin-right: 5px;
	position: relative;
}
#top-nav li+li a:before {
	content:'|';
	margin:0 0.5em;
}
#top-nav li:first-child a {
	text-indent:-9999px;
	outline:none;
	background:transparent url('../images/icons/icons.png') no-repeat -82px center;
	width:18px;
	height:44px;
}
#top-nav li:last-child a:after {
	content:' ';
	display:inline-block;
	vertical-align:middle;
	background:transparent url('../images/icons/icons.png') no-repeat -123px center;
	margin:0 0 0 0.4em;
	width:18px;
	height:44px;
}

/* Top Hours */
#top-hours {
	padding:0 1em;
	margin-right: 5px;
}
#top-hours li:first-child a {
	text-indent:-5px;
	outline:none;
	width:0px;
	height:44px;
}
#top-hours li:last-child a:after {
	display:inline-block;
	vertical-align:middle;
	margin:0 0 0 0.4em;
	width:18px;
	height:44px;
}

/* Logo */
.logo-item {
	position: relative;
	top: -72px;
}

/* Search form */
#search {
	visibility:hidden;
	opacity:0;
	position:absolute;
	right:0;
	top:0;
	margin:0;
	padding:0.5em;
	background:#006fd0 url('../images/site/texture-scratchy.png') repeat center top;

	-webkit-transition:all 0.4s ease 0s;
	transition:all 0.4s ease 0s;
}
body.search #search {
	visibility:visible;
	opacity:1;
	top:100%;
}

#search p {
	margin:0;
	line-height:1;
}
#search input {
	vertical-align:middle;
	border:none;
}
#search input[type="search"] {
	padding:0.2em 0.4em;
	font:11pt/1.3 Eurostile,Arial,Helvetica,sans-serif;
	width:10em;
}
#search input[type="submit"] {
	font:12.5pt/1.3 FjallaOne,Arial,Helvetica,sans-serif;
	background:none;
	cursor:pointer;
	color:#fff;
}



/************************************************************
Layout: Main navigation */
.mobile-logo,
.mobile-nav-control {
	display: none;
}
#main-nav {
	background:#252525;
	text-align:center;
	box-shadow:0 0 2px rgba(0,0,0,0.3);
}
#main-nav > ul {
	list-style:none;
	margin:0;
	padding:0;
	font-size: 0;
	max-height: 45px;
}
#main-nav > ul > li {
	display:inline-block;
	margin:0 0.5em;
	vertical-align: top;
}
#main-nav a {
	display:block;
	font:13.5pt/45px FjallaOne,Arial,Helvetica,sans-serif;
	padding:0 1em;
	color:#fefefe;
}
#main-nav a:not(.logo):hover,
#main-nav>ul>li.sel>a {
	background:#006fd0 url('../images/site/texture-scratchy.png') repeat center top;
	text-shadow:1px 1px 0 rgba(0,0,0,0.46);
}
.logo-item .logo img:first-child {
	position: relative;
	z-index: 1;
}
.logo-item .logo img:last-child {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	opacity: 1;
	visibility: visible;
	transition: all 0.3s ease 0.3s;
}

/* Second level */
#main-nav li ul {
	background-color:#252525;
	display:none;
	position:absolute;
	text-align:left;
	padding:0;
	height: auto;
	z-index:10;
}
#main-nav li:hover>ul {
	display:block;
}
#main-nav li li {
	
}
#main-nav li li a {
	display:block;
	padding-right:2em;
	font-size:12pt;
}



/**************** Fixed Navigation ****************/
body.fixed > header {
	background: url('../images/site/texture-gradient.jpg') repeat-y center top, #c6c7c7 url('../images/site/texture-hash.gif') repeat center top;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 99;
}
body.fixed > header .top-navigation {
	height: 44px;
}
body.fixed .logo img:first-child {
	top: 0;
}
body.fixed .logo img:last-child {
	opacity: 0;
	visibility: hidden;
	transition: all 0s ease 0s;
}

/************************************************************
Layout: Content */

#content {
	color:#323030;
	text-align:center;
	padding:5em 0 1.5em;
  max-width: 1070px;
  margin: 0 auto;
}
#content .col.main p,
#content>article p {
	text-shadow:-1px -1px 0 rgba(255,255,255,0.5);
}

#content>article {
	text-align:left;
}

.col.main ul {
	padding-left: 20px;
}

/* Columns */
.col.main {
	text-align:left;
	width:64%;
}
.col.main.full-page {
	width: 100%;
}
.col.side {
	text-align:left;
	width:28%;
}
.col+.col {
	margin-left: 30px;
	margin-right: 10px;
}

.main.col img,
.side.col img {
	max-width: 100%;
}

/************************************************************
Layout: Footer */

body>footer {
	position:relative;
	background:#252525;
	padding:1.5em 0;
	text-align:center;
	box-shadow:0 -1px 2px rgba(0,0,0,0.3);
}
.flex {
	display: flex;
	flex-wrap: wrap;
	max-width: 1070px;
	margin: 0 auto;
	padding: 0 15px;
	justify-content: center;
}
.flex > div {
	flex-grow: 1;
	order: 2;
}
body>footer p {
	margin:0.5em 0;
}
body>footer a {
	color:#fefefe !important;
}


/* Navigation */
#foot-nav {
	position:relative;
	padding:0.7em 0;
	margin:0 0 1.5em;
}
#foot-nav ul {
	list-style:none;
	margin:0;
	padding:0;
	font-size:12pt;
}
#foot-nav li {
	display:inline;
}
#foot-nav a {
	display:inline-block;
	padding:0 1em;
}
#foot-nav:after {
	content:' ';
	display:block;
	height:5px;
	margin:2em auto 0;
	box-shadow:inset 19em 0 10em -10em #252525, inset -19em 0 10em -10em #252525;

	background-image:-webkit-repeating-linear-gradient(146deg, #a9a9a9 5px, #404040 9px);
	background-image:repeating-linear-gradient(146deg, #a9a9a9 5px, #404040 9px);
}
#foot-nav:before {
	content:' ';
	position:absolute;
	left:50%;
	bottom:0;
	width:22px;
	height:25px;
	margin:0 0 0 -11px;
	background:#252525 url('../images/icons/icons.png') no-repeat -40px center;
}


/* JB Logo */
#jb-logo {
	text-align:right;
	right:50%;
	bottom:2.5em;
	padding-left: 15px;
	font-size:8pt;
	order: 3;
	width:80px;
}
#jb-logo a {
	display:block;
	text-align:left;
	text-indent:-9999px;
	outline:none;
	width:86px;
	height:32px;
	margin-left:-6px;
	background:transparent url('../images/site/jb-logo.png') no-repeat center center;
}



/************************************************************
Buttons / links */

/* Standard button */
.button {
	display:inline-block;
	font:15pt/1.3 FjallaOne,Arial,Helvetica,sans-serif;
	letter-spacing:1px;
	background:#006fd0 url('../images/site/texture-scratchy.png') repeat center top;
	text-shadow:1px 1px 0 rgba(0,0,0,0.5);
	padding:0.5em 0.7em;
	color:#fff !important;
	cursor:pointer;
	border:none;

	-webkit-transition:all 0.2s ease 0s;
	transition:all 0.2s ease 0s;
}
.button:hover {
	background-color:#ee0113;
}


/* Alternate (dark) button */
.button.alt {
	background-color:#252525 !important;
}



/************************************************************
Miscellaneous */

/* Text alignment */
.left { text-align:left !important; }
.center { text-align:center !important; }
.right { text-align:right !important; }

/* Font sizes */
small { font-size:90%; }
big { font-size:115%; }

/* Padding */
.pad { padding:1em; }
.topPad { padding-top:1em; }
.bottomPad { padding-bottom:1em; }
.leftPad { padding-left:1em; }
.rightPad { padding-right:1em; }

/* Columns */
.col {
	display:inline-block;
	vertical-align:top;
}


/* Search highlighting */
mark {
	background:#f5f57a;
}


/* Dividers */
hr {
	display:block;
	border:none;
	height:5px;
	width:100%;
	margin:2em 0;
	background:transparent url('../images/site/slashes.png') repeat-x center center;
	box-shadow:inset 8em 0 3em -3em rgba(195,195,195,0.7), inset -8em 0 3em -3em rgba(245,245,245,0.7);
}
#content>hr {
	box-shadow:inset 8em 0 3em -3em rgba(195,195,195,0.7), inset -8em 0 3em -3em rgba(195,195,195,0.7);
}



/* Fix extra button padding in Firefox */
input[type="submit"]::-moz-focus-inner {
	border:none;
	padding:0;
	line-height:1;
}

