h1, h2, h3, p, .tweet-box, .event-controls, a, li {
	font-family: "Open Sans", Arial, Helvetica, sans-serif;
}

body, .hero {
	background: rgb(230,230,230); /* Old browsers */
	background: url('../img/grain4.png'), -moz-radial-gradient(center, ellipse cover,  rgba(230,230,230,1) 5%, rgba(210,210,210,1) 38%, rgba(190,190,190,1) 81%); /* FF3.6+ */
	background: url('../img/grain4.png'), -webkit-gradient(radial, center center, 0px, center center, 100%, color-stop(5%,rgba(230,230,230,1)), color-stop(38%,rgba(210,210,210,1)), color-stop(81%,rgba(190,190,190,1))); /* Chrome,Safari4+ */
	background: url('../img/grain4.png'), -webkit-radial-gradient(center, ellipse cover,  rgba(230,230,230,1) 5%,rgba(210,210,210,1) 38%,rgba(190,190,190,1) 81%); /* Chrome10+,Safari5.1+ */
	background: url('../img/grain4.png'), -o-radial-gradient(center, ellipse cover,  rgba(230,230,230,1) 5%,rgba(210,210,210,1) 38%,rgba(190,190,190,1) 81%); /* Opera 12+ */
	background: url('../img/grain4.png'), -ms-radial-gradient(center, ellipse cover,  rgba(230,230,230,1) 5%,rgba(210,210,210,1) 38%,rgba(190,190,190,1) 81%); /* IE10+ */
	background: url('../img/grain4.png'), radial-gradient(ellipse at center,  rgba(230,230,230,1) 5%,rgba(210,210,210,1) 38%,rgba(190,190,190,1) 81%); /* W3C */	
}

img {
	max-width: 100%;
	height: auto;
}

.wrapper {
	
}

.top_header {
	z-index: 10;
	background-color: #850016;
	box-shadow: 0 0 10px rgba(255,255,255,0.2);
}

 
.logo {
	width: 80%;
	margin-left: 12px;
}

.nav {
	display: none;
}

.nav.triggered {
	display: block;
}

.nav-trigger {
	display: block;
	position: absolute;
	right: 12px;
	top: 10vw;
}

.nav {
	list-style: none;
	padding: 0;
	margin: 0;
	padding-bottom: 0.5em;
}

.nav li a,
.nav li a:visited {
	font-family: "Open Sans", Arial, Helvetica, sans-serif;
	text-decoration: none;
	color: #eee;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 1.4em;
	display: block;
	position: relative;
	text-align: center;
	line-height: 1.5;
}

.nav li a:hover,
.nav li a:active {
	color: orange;
}

.footer {
	box-shadow: inset 0 0 8px rgba(0,0,0,0.9);
	background: #1c1c1c;
	margin-top: 0.5em;
}

.footer .wrapper {
	max-width: 640px;
	margin-left: auto;
	margin-right: auto;
}

.footer .icons {
	max-width: 222px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 9px;
}

.footer .wrapper {
	background: url('../img/exp.png') no-repeat right center;
	padding-top: 20px;
	padding-bottom: 20px;
}

.footer .icons img {
	width: 52px;
	border-radius: 12px;
}

.footer ul {
	list-style: none;
	margin: 0;
	padding: 0;
	margin-left: 9px;
}

.footer ul li a,
.footer ul li a:visited {
	display: block;
	margin-right: 20px;
	font-family: "Open Sans", Arial, Helvetica, sans-serif;
	font-weight: 700;
	text-decoration: none;
	font-size: 1.1em;
	line-height: 1.4;
	color: #ccc;
}

.footer ul li.right {
	float: right;
}

.footer ul li a:hover,
.footer ul li a:active {
	color: orange;
}

#hero {
	display: block;
	background-color: #fff;
	margin: 0;
	box-shadow: 0 0 10px rgba(0,0,0,0.9);
	position: relative;
}

#hero .hero_image {
	display: block;
	width: 100%;
}

.hero {
	padding-top: 1em;
}

.secondary_area {
	margin-top: 1em;
}

.home_cross_promo img {
	box-shadow: 0 0 10px rgba(0,0,0,0.6);
	border-radius: 16px;
}

.image_bank {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
	padding-bottom: 0.5em;
}

.image_bank img,
.home_bank img {
	box-shadow: 0 0 4px rgba(0,0,0,0.2);
	max-width: 100%;
	height: auto;
}

.home_bank img {
	width: 100%;
}

.three_across a,
.three_across > img {
	width: 33%;
	padding-right: 0.75em;
}

.home_bank.three_across a {
	display: block;
	width: auto;
	padding: 0.5em;
}

.three_across_asym a {
	width: 33.175%;
	padding-right: 0.75em;
}

.three_across_asym a:last-child {
	width: 32.75%;
	padding-right: 0;
}

.two_across a {
	width: 50%;
	padding-right: 0.75em;
}

.four_across a {
	width: 25%;
	padding-right: 0.75em;
}

.five_across a {
	width: 20%;
	padding-right: 0.75em;
}

.two_across_asym a:first-child {
	width: 66%;
	padding-right: 0.75em;
}


.two_across_asym a:last-child {
	width: 33%;
}

.image_bank a:last-child {
	padding-right: 0px;
}

.home_cross_promo .first, .home_cross_promo .second, .home_cross_promo .third {
	-webkit-transition: opacity 1.4s;
	-moz-transition: opacity 1.4s;
	-ms-transition: opacity 1.4s;
	-o-transition: opacity 1.4s;
	transition: opacity 1.4s;
}

.home_cross_promo .first, .home_cross_promo .second {
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
}

.home_cross_promo .second, .home_cross_promo .third {
	opacity: 0;
}

.home_cross_promo .visible {
	opacity: 1;
}

.threes .home_cross_promo:first-child {
	margin-left: 0;
}

.event-info .details {
	background-color: #BCC264;
	box-shadow: 0 0 10px rgba(0,0,0,0.8);
	padding: 0 0.5em 0.5em 0.5em;
	margin-bottom: 0.5em;
}

.detail-list dt {
	text-transform: uppercase;
	font-weight: 700;
	font-size: 0.8em;
	color: #800;
	line-height: 1.5;
}

.detail-list dd {
	margin-left: 0;
	line-height: 1.5;
	color: #111;
	font-weight: 700;
	padding-bottom: 0.5em;
	margin-bottom: 0.5em;
	border-bottom: 1px dotted rgba(0,0,0,0.4);
}

.detail-list dd:last-child {
	border-bottom: 0;
}

.ticket-button, .ticket-button:visited {
	display: block;
	font-family: "Open Sans", Arial, Helvetica, sans-serif;
	padding: 0.6em 0.5em;
	background-color: #003C90;
	color: #fff;
	font-weight: 300;
	font-size: 1.75em;
	margin: auto 1.5em;
	border-radius: 12px;
	text-decoration: none;
	text-align: center;
	-webkit-transition: background-color 0.4s;
	-moz-transition: background-color 0.4s;
	-o-transition: background-color 0.4s;
	transition: background-color 0.4s;
}

.ticket-button:hover, .ticket-button:active {
	background-color: #2682C8;
}

.event-info h1, .event-info h2 {
	font-weight: normal;
}

.event-videos img {
	cursor: pointer;
}

.lightbox {
	position: absolute;
	z-index: 999;
	outline: 9999px solid rgba(0,0,0,.3);
	padding: 8px;
	background-color: #fff;
}

.event-info h3 {
	margin-top: 0;
	padding-top: 0.7em;
	font-weight: 700;
}

.show_and_info {
	background-color: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.8);
	margin-bottom: 1em;
}

.show_and_info article {
	margin: 0 0.5em 1em 0.5em;
	padding-bottom: 1em;
}

.show_and_info .show {
	box-shadow: none;
}

.google-map {
	box-shadow: 0 0 10px rgba(0,0,0,0.4);
}

.show {
	background-color: #fff;
	min-width: 160px;
	box-shadow: 0 0 10px rgba(0,0,0,0.8);
	position: relative;
	cursor: pointer;
}

.show img {
	width: 100%;
	display: block;
}

.event-in-list {
	background-color: #fff;
	border-radius: 12px;
	margin: 0.75em 0;
	cursor: pointer;
	position: relative;
	box-shadow: 0 0 10px rgba(0,0,0,0.8);
	-webkit-transition: background-color 0.6s;
	-moz-transition: background-color 0.6s;
	transition: background-color 0.6s;
}

.event-in-list:hover {
	background-color: #eec;
}

.event-list-header {
	font-weight: 300;
	color: #111;
	font-size: 2em;
	position: relative;
	margin-right: auto;
	margin-left: auto;
	padding-left: 9px;
}

.wrapper > .event-list-header {
	max-width: 640px;
}

.main_area > .event-list-header {
	max-width: 609px;
}

.event-list-details {
	display: none;
	font-size: 25%;
	position: absolute;
	text-align: right;
	top: -8px;
	right: 0;
}

.content {
	background-color: #F7F7F5;
	padding: 0.5em;
	color: #333;
	font-size: 1.15em;
}

.callout {
	background-color: #333;
	border-radius: 4px;
	color: #f7f7f7;
	text-align: center;
	padding: 1em;
}

.callout a {
	color: #f7f7cc;
	text-decoration: none;
	font-weight: 700;
	font-size: 200%;
}

.callout a:hover {
	color: #cccccc;
}

.lede {
	font-size: 200%;
	margin-top: 8px;
	margin-bottom: 0;
	text-transform: uppercase;
}

.event-list {
	max-width: 600px;
	padding-left: 9px;
	padding-right: 9px;
	margin-right: auto;
	margin-left: auto;
}

.event-in-list h2, .event-in-list h3, .event-in-list h4 {
	font-weight: 300;
}

.event-in-list .title-wrap {
	display: table;
	min-height: 70px;
}

.event-in-list h2 {
	font-size: 1.75em;
	display: table-cell;
	margin: 0;
	vertical-align: middle;
}

.event-in-list h3 {
	font-weight: normal;
	text-transform: uppercase;
	font-size: 0.8em;
	margin-left: 0.25em;
	color: #800;
}

.event-controls {
	margin: 0.5em 0.5em 0.5em 0;
}

.event-controls a {
	text-decoration: none;
	text-transform: uppercase;
	font-weight: bold;
	display: inline-block;
	background-color: #900;
	padding: 0.25em;
	color: #fff;
}

.event-in-list img {
	border-radius: 12px 12px 0 0;
	display: block;
}

.event-in-list .details {
	margin-left: 0.5em;
}

.show h2 {
	margin-right: 8px;
	margin-left: 8px;
}

.tweet-box {
	font-size: 0.9em;
	margin-top: 0.25em;
	padding: 0.6em 0.25em;
	text-align: center;
}

h4 a {
	margin-left: 10px;
	font-weight: 400;
	text-transform: uppercase;
	text-decoration: none;
	color: orange;
}

.show h2 .info {
	font-weight: normal;
}

.normal h2 {
	font-size: 1em;
}

.row:before,
.row:after {
	content: " ";
	display: table;
}

.row:after {
	clear: both;
}

.row {
	*zoom: 1;
}

.contact {
	background-color: #ddd;
	padding: 1em;
}

.contact label {
	display: block;
	line-height: 1.2;
}

.contact textarea {
	display: block;
	padding: 0.25em;
	border: none;
	min-height: 4em;
	width: 16em;
}

.contact input {
	width: 16em;
	padding: 0.25em;
	border: none;
	margin-bottom: 0.5em;
}

.contact select {
	width: 16em;
	margin-bottom: 0.5em;
}

.contact input[type="submit"] {
	width: 5em;
	margin-top: 0.5em;
	background-color: #008040;
	border-radius: 6px;
	color: #ececec;
	padding: 0.5em 0.25em;
}

.lightbox > .videoWrapper {
	width: 280px;
}

.lightbox > img {
	height: 186px;
	width: 280px;
	display: block
}

.lightbox p {
	position: absolute;
	bottom: 8px;
	background: rgba(0,0,0,0.7);
	width: 264px;
	color: #fff;
	margin-bottom: 0;
	padding: 0.5em;
	font-size: 0.85em;
}

blockquote {
	position: relative;
	margin: 1em 0 2em;
	padding-left: 30px;
	padding-top: 10px;
  font-family: Georgia, serif;
}

blockquote::before{
	content: "\201C";
	
	font-family: Georgia, serif;
	font-size: 50px;
	font-weight: bold;
	color: #999;
  
	position: absolute;
	left: 0px;
	top: 5px;
}

blockquote cite {
	display: block;
}

.ad_image {
	background-color: white;
	box-shadow: 0 0 8px rgba(0,0,0,0.8);
}

.ad_block {
	width: 300px;
	margin: 0 auto;
	display: block;
}

.phone {
	font-size: 150%;
}

.callout-logo {
	max-width: 70%;
}

.content h1 {
	font-family: "Racing Sans One", sans-serif;
	font-weight: normal;
	text-transform: uppercase;
	font-size: 3em;
	line-height: 1;
	margin: 0.25em 0;
}

.content h2 {
	font-family: "Racing Sans One", sans-serif;
	font-weight: normal;
}

.inverse {
	background: #000;
	color: #F7F7F5;
}

.footer ul li a {
	text-align: center;
}

.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	height: 0;
}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.event-page {
	max-width: 615px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 15px;
}

.ticket-button.desktop {
	display: none;
}

.event-info .mobile-ticket.details {
	padding-top: 8px;
	width: calc(100% - 16px);
	float: none;
	margin-bottom: 16px;
}

.article-image {
	display: block;
	border: 2px solid #000;
}

.inverse .article-image {
	border: 2px solid #f7f7f5;
}

.mobile-phone-call,
.mobile-phone-call:visited {
	position: fixed;
	font-size: 20px;
	text-align: center;
	bottom: 0;
	left: 0;
	width: 100%;
	background: rgba(60, 169, 60, 0.9);
	color: #efefef;
	padding: 0.75em;
	vertical-align: center;
	font-weight: bold;
	text-transform: uppercase;
	text-decoration: none;
}

.mobile-phone-call:hover,
.mobile-phone-call:active {
	background: rgb(60,169,60);
}

.mobile-phone-call svg {
	height: 18px;
	width: 18px;
}

svg {
	fill: currentColor;
}

@media screen and (min-width: 450px) {
	
	.article-image {
		display: inline;
		float: right;
		margin-top: 24px;
		margin-left: 24px;
		margin-bottom: 24px;
		max-width: 150px;
	}
	
	.article-image.haircut {
		margin-top: 0;
	}
	
	.article-image.image-first {
		float: left;
		margin-top: 24px;
		margin-left: 0;
		margin-right: 24px;
	}
	
	.logo {
		position: relative;
		width: 240px;
	}

	.nav-trigger {
		display: block;
		position: absolute;
		right: 12px;
		top: 29px;
	}
	
	.footer ul li {
		display: block;
		float: left;
	}
	
	.footer ul li a,
	.footer ul li a:visited {
		width: 80px;
		font-size: 0.9em;
		line-height: 1.8;
		text-align: left;
	}
	
	.lightbox > .videoWrapper {
		width: 420px;
	}

	.lightbox > img {
		height: 280px;
		width: 420px;
	}

	.lightbox p {
		width: 404px;
	}
	
	.home_bank {
	  display: -webkit-box;
	  display: -moz-box;
	  display: -ms-flexbox;
	  display: -webkit-flex;
	  display: flex;
		padding-bottom: 1em;
	}
	
	.home_bank.three_across a {
		width: 33%;
		display: inline;
		padding-bottom: 0;
	}
	
	.home_bank.three_across a:first-child {
		padding-left: 0;
	}
	
	.home_bank.three_across a:last-child {
		padding-right: 0;
	}
	
	.home_bank img {
		width: auto;
	}
}

@media screen and (min-width: 615px) {
	
	.content h1 {
		font-size: 4em;
	}

	.event-info .details {
		width: 305px;
		float: left;
	}
	
	.event-info .ad_block {
		float: left;
		display: block;
		width: 272px;
		margin-left: 8px;
	}

	.ad_image {
		padding: 7px;
	}
}

@media screen and (min-width: 640px) {
	.wrapper > .event-list-header {
		padding-left: 0;
	}
	
	.lightbox > .videoWrapper {
		width: 620px;
	}

	.lightbox > img {
		height: 412px;
		width: 620px;
	}

	.lightbox p {
		width: 604px;
	}
	
	.article-image {
		max-width: 240px;
	}

}

@media screen and (min-width: 680px) {
	
	.callout-area {
		display: -webkit-box;
	  display: -moz-box;
	  display: -ms-flexbox;
	  display: -webkit-flex;
	  display: flex;
	}

	.callout-area > div {
		max-width: 46%;
	}

	.callout-area > div:first-child {
		margin-right: 2%;
	}

	.callout-area > div:last-child {
		margin-left: 2%;
	}
	
	
	aside .callout-area {
		display: block;
	}
	
	aside .callout-area > div {
		max-width: 100%;
		margin: 0;
	}
}

@media screen and (min-width: 720px) {
	.top_header {
		height: 56px;
	}
	
	.logo {
		top: -12px;
	}
	
	.nav {
		display: block;
		float: right;
		padding: 0;
		margin-right: 12px;
	}
	
	.nav-trigger {
		display: none;
	}
	
	.top_header ul li {
		float: left;
		display: block;
	}
	
	.nav li a,
	.nav li a:visited {
		font-size: 0.75em;
		text-shadow: -1px -1px 1px rgba(0,0,0,0.4);
		line-height: 56px;
		margin-left: 10px;
		font-weight: 700;
	}
	
	.event-list {
		max-width: 100%;
	}
	
	.main_area > .event-list-header {
		max-width: 100%;
	}
	
	.event-list-header {
		font-size: 3em;
	}
	
	.event-in-list img {
		width: 250px;
		height: 167px;
		border-radius: 12px 0 0 12px;
		display: block;
		float: left;
	}
	
	.article-image {
		max-width: 300px;
	}

	.event-in-list .details {
		float: left;
		width: 440px;
	}
	
	.event-controls {
		position: absolute;
		bottom: 0;
	}
}

@media screen and (min-width: 800px) {
	.masonry {
	  -webkit-column-count: 2;
	  -webkit-column-gap:   5rem;
	  -moz-column-count:    2;
	  -moz-column-gap:      5rem;
	  column-count:         2;
	  column-gap:           5rem;
	}
	
	.gallery-masonry {
	  -webkit-column-count: 2;
	  -webkit-column-gap:   1rem;
	  -moz-column-count:    2;
	  -moz-column-gap:      1rem;
	  column-count:         2;
	  column-gap:           1rem;
	}
	
	.menu-section {
		break-inside: avoid;
	}
	
	.menu-section h2:after {
	}
	
	.mobile-phone-call {
		display: none;
	}
	
	.lightbox > img {
		height: 500px;
		width: 750px;
	}

	.lightbox p {
		width: 734px;
	}
	
	.event-in-list .details {
		width: 520px;
	}
	
	.event-info {
		float: left;
		width: 275px;
		min-height: 400px;
	}
	
	.event-page {
		max-width: 800px;
	}
	
	.show { 
		margin: 5px
	}
	
	.show_and_info {
		float: left;
		width: 517px;
		margin-right: 8px;
	}
	
	.event-info .details {
		width: 259px;
	}
	
	.event-info .ad_block {
		float: none;
		width: 259px;
		margin-left: 0;
	}
	
	.mobile-ticket {
		display: none;
	}
	
	.ticket-button.desktop {
		display: block;
	}
	
	.detail-list dd:last-child {
		border-bottom: 1px dotted rgba(0,0,0,0.4);
	}
	
	.show .details {
		bottom: 0;
		position: absolute;
		width: 100%;
		background-color: rgba(0,25,20,0.72);
	}
	
	.show h2 {
		color: #eee;
		text-shadow: -1px 1px 1px #000;
		margin-right: 20px;
		margin-left: 10px;
	}
	
	.show h2 .info {
		color: #fff;
	}
}

@media screen and (min-width: 820px) {
	.nav li a,
	.nav li a:visited {
		font-size: 0.95em;
	}
}

@media screen and (min-width: 960px) {
	
	.nav li a,
	.nav li a:visited {
		margin-left: 20px;
		font-size: 1.1em;
	}
	
	.nav li a.first:before {
		content: '';
	}

	.nav li a:before {
		position: absolute;
		left: -12px;
		color: #eee !important;
		font-weight: normal;
		content: '\b7';
	}
	
	.article-image {
		max-width: 400px;
	}
	
	.top_header {
		position: fixed;
		top: 0;
		width: 100%;
	}
	
	.hero {
		padding: 85px 0 0 0;
	}
	
	.nav {
		margin-right: 0;
	}
	
	.event-list-details {
		display: block;
	}
	
	.main_area {
		margin-top: 69px;
	}
	
	.event-list-header {
		margin-top: 85px;
	}
	
	.wrapper {
		width: 960px;
		margin: 0 auto;
	}
	
	.content article {
		width: 640px;
		float: left;
	}

	.content aside {
		margin-top: 2em;
		width: 300px;
		float: left;
		margin-left: 20px;
	}
	
	
	#hero .hero_image {
		width: 960px;
	}
	
	.threes {
		margin-bottom: 1em;
	}

	.home_cross_promo .car-wrap {
		position: relative;
	}
	
	.event-info {
		width: 300px;
	}
	
	.event-info .details,
	.event-info .ad_block {
		width: 100%;
	}
	
	.show_and_info {
		width: 635px;
	}
	
	.footer .wrapper {
		max-width: 100%;
	}
	
	.footer nav.row {
		float: left;
		width: 70%;
	}

	.footer .icons {
		margin: 0;
		float: right;
		width: 25%;
	}
	
	.event-page {
		max-width: 100%;
	}
	
	.event-list {
		padding: 0;
	}
	
	.event-in-list .details {
		width: 680px;
	}
	
	.event-list-header {
		padding-left: 0;
	}
	
	.wrapper > .event-list-header {
		max-width: 100%;
	}
	
	.footer ul li a,
	.footer ul li a:visited {
		display: block;
		margin-right: 20px;
		font-family: "Open Sans", Arial, Helvetica, sans-serif;
		font-weight: 700;
		text-decoration: none;
	}
}


.icon-mail:before { content: '\2709'; } /* '✉' */
.icon-twitter:before { content: '\f309'; } /* '' */
.icon-facebook:before { content: '\f30c'; } /* '' */
.icon-ticket:before { content: '\2707'; } /* '✇' */