/*
Theme Name: Boston Guitar Fest 2017
Author: Andy Chavez
Author URI: http://control-total.com/
Version: 1.0
*/

html{
	overflow-x: hidden;
	height: 100%;
}

body {
	font-family: 'Raleway', sans-serif;
	height: 100%;
}

h1,h2,h3,h4,h5,h6 {
	font-weight: 900;
}

img {
	max-width: 100%;
}

a {
	color: #929292;
}
.ui-datepicker .ui-datepicker-title {
	margin: 0 2.3em;
	line-height: 1.8em;
	text-align: center;
	font-family: Raleway;
}
.ui-state-default{
	font-family: Raleway;
}
.white-container-rounded .wc-title h3 a{
	margin: 1rem 0;
	color: black;
}
.acf-map {
	width: 100%;
	height: 400px;
	border: #ccc solid 1px;
	margin: 20px 0;
}

/* fixes potential theme css conflict */
.acf-map img {
	max-width: inherit !important;
}

.compete a:hover{
	text-decoration: none;
	color: red;
	background: #fff;
}
/* fixes potential theme css conflict */

.page-menu .navbar-toggle{
	color: #fff;
}
.housing a:hover{
	text-decoration: underline !important;
	font-weight: 900 !important;
	color: #fff;

}
.admission a:hover{
	text-decoration: underline !important;
	font-weight: 600 !important;
	color: black;
	background: none !important;
}
.details a:hover{
	text-decoration: underline !important;
	font-weight: 600 !important;
	color: black;
	background: none !important;
}
header a:hover, a:active, a:focus {
	text-decoration: underline !important;
	font-weight: 600 !important;
	color: black;
	background: none !important;

}
footer a:hover, a:active, a:focus {
	text-decoration: underline !important;
	font-weight: 600 !important;
	color: black;
	background: none !important;

}
.ui-widget.ui-widget-content {
	border: none !important;
	width: 100% !important;
}
.ui-datepicker-calendar thead tr{
	display: none;
}
.ui-datepicker-calendar tbody tr{
	display: flex;
	flex-direction: column;

}
.ui-datepicker-calendar tbody{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {
	border: none;
	background: none;
	font-weight: normal;
	color: black;
	text-align: center;
	font-size: 1rem;
}
.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled {
	opacity: .35;
	filter: Alpha(Opacity=35);
	background-image: none;
	display: none;
}
.ui-datepicker .ui-datepicker-header {
	position: relative;
	padding: .2em 0;
	border: none;
	background: none;
}
.ui-state-active, .ui-widget-content .ui-state-active{
	background: rebeccapurple;
	color: #fff;
	border-radius: 25px;
}
@media(min-width:768px){
	.navbar-nav > li > a {
    	padding-top: 20px;
    	padding-bottom: 20px;
	}
	.flex.block{
		flex-direction: column;
	}
}

/*header {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
}*/
/*MAsonry*/
.grid {
	background: #fff;
	height: auto;
}

/* clear fix */
.grid:after {
	content: '';
	display: block;
	clear: both;
}
.grid-sizer,
.grid-item {
	width: auto;
}

.grid-item {
	float: left;
	position: relative;
}

.grid-item img {
	display: block;
	max-width: 100%;
	height: 320px;
}
.grid-item h1{
	position: absolute;
	top: 0;
	color: #fff;
	text-align: center;
	padding: 12rem 0;
	width: 100%;
	display: none;
	background: rgba(235,59,115,.4);
	height: 100%;
	margin: 0;
}
.grid-item:hover > a > h1{
	display: block;
}
.grid-item--width329 { width: 30rem; }
.grid-item--width321 { height: 40rem;
	width:35rem; }

.no-padding{
	padding: 0;
}
.navbar-toggle {
	font-size: 25px;
}

.navbar {
	margin-bottom: 0;
}

.social-menu {
	font-size: 2rem;
}

.social-menu a {
	border-radius: 50%;
	background-color: #e7e7e7;
	margin: 10px 5px 10px 0;
	width: 40px;
	height: 40px;
	text-align: center;
}

.social-menu > li > a {
	padding: 10px;
}

/*Slider*/
.bgf-slider {
	position: relative;
	display: block;
}

.bgf-slider .item {
    position: relative;
    height: 95vh;
}

.bgf-slider .item-bg {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

/*General*/
.skewed {
    transform: skew(0deg, -5deg);
    margin: 10rem 0 10rem;
}

.skewed > .no-skew {
	transform: skew(0deg, 5deg);
}    

.white-container-rounded {
	border-radius: 1rem;
	padding: 1rem 1.5rem;
	background-color: #fff;
}

.white-container-rounded .wc-title {
	border-bottom: 3px solid #000;
	margin-bottom: 2rem;
}

.white-container-rounded .wc-title, .white-container-rounded .wc-title h3 {
	font-size: 2rem;
	font-weight: 900;
}

.white-container-rounded .wc-title i.fa {
	font-size: 2.5rem;
}

.white-container-rounded .wc-title h3 {
	margin: 1rem 0;
}

.center-text {
	text-align: center;
}

section {
	position: relative;
}

.flex {
    display: flex;
    display: -webkit-flex;
    display: -ms-flexbox;
}
.flex.right{
	align-items: flex-end;
}
.flex.wrap{
	flex-wrap: wrap;
}
.flex.center-v {
    justify-content: center;
}
.flex.center{
	align-items: center;
}
.flex.center-v .wrap {
    align-self: center;
}

.flex.top{
	align-items: flex-start;
}

.flex.s-between {
	justify-content: space-between;
	align-items: center;
}

.fixed-bg {
	background-attachment: fixed;
}

.window-bg {
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}
.bgf-title{
	background-color: #EB3B73;
	padding-top: 10rem;
}

.bgf-title .hero-title{
	color: #fff;
	line-height: .85;
	font-size: 10rem;
}

.admission h1{
	color: red;
	margin-top: 0;
}

.admission .btn {
	background: red;
	color: #fff;
	font-size: 4rem !important;
	padding: 1rem 7rem;
	height: auto;
	margin: 2rem 40rem;
}
.admission .content ul{
	list-style: none;
	padding: 0;
}

.details{

	color: #fff;
}

.details .extras{
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50%;
	background: #fff;
	text-align: center;
	padding: 3rem;
	color: #41D7CA;
	margin-top: 10rem;
}
.details .extras ul{
	list-style: none;
	padding: 0;
	text-align: center;
}

.housing {
	padding: 20rem 0;
}
.sub-menu{
	position: absolute;
	right: 0;
	left: 0;
	top: 88%;
	z-index: 1000;
	padding: 5px;
	display: none;
	float: left;
	margin: 0px 0 0;
	list-style: none;
	text-align: left;
	background-clip: padding-box;
	box-shadow: 0 7px 10px rgba(0,0,0,0.2);
	background: #fff;
	min-width: 25rem;
	border-top-right-radius: 0;
	border-top-left-radius: 0;
	font-size: 14px;
	line-height: 2;
	border-radius: 5px;

}
#navbar .navbar-nav > li:hover ul.sub-menu {
	display: block;
}
#menu-main-navigation li a:hover{
	background: none;
	font-weight: bold;
	text-decoration: underline;
}
.menu .navbar-collapse {
	background: #e2e2e2;
	border-radius: 30px;
}
.housing h1{
	color: #fff;
	font-weight: 400;
	font-size: 10rem;
}
.hero-title {
	font-size: 12rem;
}

.bgf-section {
	padding: 5rem 0;
	font-size: 18px;
}

.bgf-section p {
	margin: 1rem 0;
	text-align: justify;
}

.fluid-container {
    display: block;
    margin: 0 auto;
    max-width: 65%;
}

input {
    height: 45px;
    padding: 10px 12px;
    border: 0px;
    border-radius: 5px;
    outline: 0;
    margin-bottom: 1rem;
}

.btn {
	border-radius: 5rem;
	font-weight: 900;
	padding: 1rem 2.5rem;
	background-color: #fff;
	color: #333;
	height: 45px;
	-webkit-appearance: none;
	appearance: none;
	-moz-appearance: none;
    line-height: 1;
    display: inline-block;
}

.btn.btn-buy-tickets {
	color: #333;
	background-color: yellow;
	border-radius: 2.5rem;
	padding: 8px 12px;
	height: auto;
	font-weight: 700;
	font-size: 1.6rem;
}

.btn.btn-big {
	font-size: 2.5rem;
}

.upper {
	text-transform: uppercase;
}

/*Sections*/
.upcoming {
	background-color: #EB3B73;
}

.upcoming h1 {
	color: #41D7CA;
	font-size: 8rem;
	position: absolute;
	right: 0;
	left: 0;
	top: -10rem;
}

.upcoming .white-container-rounded {
	margin: 17rem 0;
}

.upcoming .concerts img {
	border-radius: 4px;
	width: 100%;
	margin-bottom: 1.5rem;
}

.upcoming .concerts .description {
	font-size: 1.7rem;
	font-weight: 700;
	min-height: 5rem;
}

.upcoming .concerts .description a {
	color: #333;
}

.upcoming .concerts .actions a i {
	font-size: 3rem;
	color: #333;
}

.upcoming .concerts span + span {
	margin-left: 2rem;
}

.study {
	padding: 20rem 0;
}
#single-concert img{
	width: 100%;
}
#single-concert .date-and-time span{
	font-weight: 900;
	text-transform: capitalize;
}
#single-concert .price{
	border-radius: 5px;
	justify-content: center;
	height: 175px;
}
.page-menu{
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 999999;
}
.map{
	padding: 20rem 0;
}
.profile{
	padding: 20rem 0;
}
.profile p{
	color: #fff;
	font-size: 2rem;
}
.map i{
	color: #fff;
	font-size: 4rem;
	margin-right: 15rem;
}
.map h1{
	color: #fff;
	font-size: 5rem;
}
.map h4{
	color: #fff;
	font-size: 2rem;
	margin: 0;
}
.page-menu .top-menu h1{
	color: #fff;
	font-size: 5rem;
	font-weight: 300;
}
.page-menu .top-menu p{
	color: #fff;
}
.table-concerts{
	width: 100%;
}
.table-concerts .time{

	margin-bottom: 5px;
	border-right: 2px solid #e2e2e2;
	margin-right: 5px;
	width: 15%;
}
.btn.btn-concert {
	background-color: #fff;
	border-radius: 2.5rem;
	padding: 8px 12px;
	height: auto;
	font-weight: 700;
	font-size: 1.6rem;
	color: #EB3B73 !important;
}
.table-concerts .title{
	color: #fff;
	display: flex;
	flex-direction: row;
	align-items: flex-start;
	background: rebeccapurple;
	border-radius: 5px 0 0 5px;
	margin-right: 5px;
	padding: 1rem;
	width: 42%;
}
.table-concerts .location{
	color: #fff;
	display: flex;
	flex-direction: column;
	align-items: center;
	background: rebeccapurple;
	margin-right: 5px;
	padding: 1rem;
	width: 15%;
}
.table-concerts .price{
	color: #fff;
	display: flex;
	flex-direction: column;
	align-items: center;
	border-radius: 0 5px 5px 0;
	background: rebeccapurple;
	padding: 1rem;
	width: 18%;
}
.table-concerts .title h4{
	font-weight: 600;
	text-align: left;
	margin: 0;
}
.table-concerts .title a{

	color: #fff;
}
.table-concerts .title a > i{
	margin-top: 8rem;
	color: #fff;
}
.table-concerts .location h4{
	font-weight: 600;
	text-align: center;
	margin: 0;
}
.table-concerts .location a{
	margin-top: 4rem;
	color: #fff;
}
.table-concerts .price h4{
	font-weight: 600;
	text-align: center;
	margin: 0;
}
.table-concerts .price a{
	margin-top: 4rem;
	color: #fff;
}
.page-menu .navbar-collapse{
	background: #fff;
	border-radius: 30px;
}
.page-menu .social-menu li a{
	background: #fff;
}
.study h1 {
	color: rgba(255,255,255,.6);
	font-size: 15rem;
	transform: rotate(-90deg);
	z-index: 0;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 5%;
	margin: 0;
	line-height: 1;
}

.study .content {
	font-weight: 500;
	font-size: 2rem;
	padding-left: 20rem;
	z-index: 1;
	position: relative;
}

.study .content ul {
	list-style: none;
	padding: 0;
	margin: 0;
	font-size: 2.5rem;
}

.study .content ul li {
	display: inline-block;
	margin-right: 1rem;
}

.study .content ul li a {
	color: #333;
}

.compete h1 {
	color: #ff1520;
	text-align: right;
	line-height: 0.7;
	margin: 0;
}

.compete .content {
	background-color: #ff1520;
	padding: 10rem 7rem 3rem;
	color: #fff;
	font-weight: 500;
	font-size: 2.5rem;
}

.compete .btn {
	color: #ff1520;
	font-size: 4rem;
    padding: 1rem 7rem;
    height: auto;
    margin: 2rem 0;
}

.newsletter {
	background-color: #ffae29;
	padding: 20rem 0;
	color: #fff;
	font-size: 22px;
}
#date{
	font-size: 3rem;
}
#time{
	font-size: 5rem;
}
.newsletter .hero-title {
	margin: 0;
	line-height: 1;
	font-size: 10rem;
}

.newsletter .email {
    width: 65%;
    color: #333;
}

.newsletter .btn {
	color: #ffae29;
}

/*Footer*/
footer {
	text-align: center;
}

footer .navbar-nav {
	width: 100%;
	text-align: center;
	font-weight: 600;
}

footer .navbar-nav > li {
	float: none;
	display: inline-block;
}

.footer-logo {
	max-width: 450px;
	display:block;
	margin: 2rem auto;
}

/*Responsive*/
@media screen and (max-width: 1600px){
	.grid-item img {
		display: block;
		max-width: 100%;
		height: 227px;
	}
	.grid-item h1 {
		position: absolute;
		top: 0;
		color: #fff;
		text-align: center;
		padding: 10rem 0;
		width: 100%;
		display: none;
		background: rgba(235,59,115,.4);
		height: 100%;
		margin: 0;
	}
}
@media(max-width:768px){
	.bgf-slider .item {
		height: 40vh;
	}
	.study {
		padding: 5rem 0;
	}
	.study p {
		text-align: justify;
	}
	.study h1 {
		transform: rotate(0deg);
		font-size: 6rem;
		left: 0;
		right: 0;
		position: relative;
	}
	.study .content {
		padding-left: 0;
	}
	.compete .content {
		padding: 4rem 4rem 2rem;
		font-size: 2rem;
	}
	.fixed-bg {
		background-attachment: scroll;
	}
	.compete h1, .upcoming h1 {
		font-size: 6rem;
	}
	.upcoming h1 {
		top: -8rem;
		font-size: 5rem;
	}
	.newsletter .hero-title {
		font-size: 4.3rem;
	}
	.footer-logo {
		max-width: 100%;
	}
	.newsletter {
		padding: 10rem 0;
	}
	.newsletter .email {
		width: 100%;
	}
	.fluid-container {
		max-width: 100%;
	}
	.study .content ul, .newsletter {
		font-size: 2rem;
	}
	.upcoming .white-container-rounded {
		margin: 5rem 0;
	}
	.skewed {
		margin: 5rem 0 5rem;
	}
	.compete .btn {
		font-size: 2.5rem;
		max-width: 100%;
		padding: 1rem 5rem;
	}
	.social-menu {
		display: flex;
    	justify-content: center;
	}
	.social-menu li {
		display: inline-block;
	}
	.upcoming .concerts .col-md-3 + .col-md-3 {
		margin-top: 2rem;
	}
	.bgf-title .hero-title {
		font-size: 4rem;
	}
	.admission h1 {
		font-size: 5rem;
	}
	.admission .btn{
		margin: 2rem 0;
		max-width: 100%;
		padding: 1rem 5rem;
	}
	.housing {
		padding: 6rem 0;
	}
	.housing h1 {
		font-size: 6rem;
	}
	.details .extras{
		margin: 0;
		padding: 6rem;
	}
	.top-menu{
		display: none;
	}
	.bgf-title {

		padding-top: 5rem;
	}
	.page-template-default .top-menu .navbar-collapse .social-menu li a{
		display: none;
	}
	.title{
		display: none !important;
	}
	.price{
		width: 48% !important;
	}
	.location{
		padding-left: 5rem;

		width: 50% !important;
	}
	.time{
		border-right: none !important;
		width: 50% !important;
	}
	.table-concerts .location h4 {
		text-align: left;
	}
	#location{
		font-weight: 300;
		font-size: 1.6rem;
	}
	.time p{
		font-weight: 900;
	}
	#single-concert .price {
		width: 100% !important;
	}

	.flex.block {
		flex-direction: column;
	}
	.map {
		padding: 5rem 0;
	}
	.profile{
		padding: 0 0 5rem 0;
	}
	.grid-item h1 {
		position: absolute;
		top: 75%;
		color: #fff;
		text-align: center;
		padding: 1rem 0;
		width: 70%;
		display: block !important;
		background: rgb(235,59,115);
		height: 25%;
		margin: 0;
		right: 0;

	}
	.ui-datepicker-calendar tbody tr {

		flex-direction: row;
	}
	.ui-datepicker-calendar tbody {
		flex-direction: row;
		flex-wrap: wrap;
	}
	.oscitas-res-image{
		display: block;
		margin:auto;
	}
	.page-id-256 .bgf-section a{
		font-size: 2rem;
	}

}
@media(max-width: 320px) {
	.compete .btn {
		font-size: 1.5rem;
		max-width: 100%;
		padding: 1rem 5rem;
	}
.upcoming h1 {
		top: -5rem;
		font-size: 3.5rem;
	}
}