/* General Styles
-------------------------------------------------------------*/

article.calendar,article.event {
    position: relative;
    width: 690px;
    max-width: 690px;
    padding-right: 0;
    padding-top: 55px;
}

article.calendar h1 {
    padding: 0;
    border: 0;
    margin: 0;
}

article .fc {
	border-radius: 13px;
}

aside.refine,
aside.subscribe {
    position: relative;
    clear: both;
    border-top: 1px solid #e0e0e0;
    padding: 11px 0px 12px 0px;
    margin: 11px 0px;
    border-bottom: 1px solid #e0e0e0;
    color: #a6a6a6;
}

aside.refine {
    min-height: 40px;
    width: 100%;
}

article.calendar p {
    margin-bottom: 0;
}

/* Category/Search Bar
-------------------------------------------------------------*/

article ul.dd ul {
	margin-left: 0px;
}

article ul.dd {
	list-style: none;
	margin: 0;
	padding: 0;
}

article ul.dd ul li {
	margin-bottom: 0;
}

ul.dd {
    list-style: none;
    margin: 0px;
    padding: 0px;
    z-index: 9;
    display: inline-block;
    font-size: 12px;
    margin-right: 10px;
    position: relative;
}

ul.dd span.choose {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
    background: rgb(227, 227, 227);
    color: #333;
    cursor: pointer;
    display: block;
    font-size: 14px;
    font-weight: 700;
    line-height: 19px;
    padding: 10px 35px 10px 15px;
    z-index: 9999;
    max-width: 250px;
}

ul.dd span.choose:hover {
    background: #eaeaea;
}

ul.dd span.choose:after {
    border-left: 4px solid transparent;
    border-right: 4px solid transparent;
    border-bottom: 0;
    border-top: 4px solid #990000;
    content: '';
    color: #990000;
    display: block;
    float: right;
    height: 0;
    position: absolute;
    right: 15px;
    top: 50%;
    width: 0;
}

ul.dd li.hover span.choose:after {
    border-bottom: 4px solid #990000;
    border-top: 0;
}

ul.dd li.toggler {
    display: block;
    margin-bottom: 0;
    z-index: 9995;
}

ul.dd li ul {
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    background: #fff;
    box-shadow: 0 2px 5px 0 rgba(0,0,0,0.13);
    display: none;
    margin-top: 3px;
    overflow: hidden;
    padding: 15px 12px;
    position: absolute;
    z-index: 9990;
}

ul.dd li ul li a {
    color: #333;
    font-size: 14px;
    font-weight: 600;
    display: block;
    border-top: 1px solid #e0e0e0;
    padding: 5px 15px 5px 10px;
    -webkit-transition-duration: 0.1s;
    -moz-transition-duration: 0.1s;
    -o-transition-duration: 0.1s;
    transition-duration: 0.1s;
}

ul.dd li ul li a:hover {
    background-color: #f4f4f4;
}

ul.dd li ul li a.close:after {
    content: 'x';
    color: #990000;
    display: block;
    float: right;
    top: 50%;
    right: 15px;
}

ul.dd li ul li a:first-child {
    border-top: none;
}

ul.dd li.hover ul {
    display: inline-block;
    width: 200px;
}

form#event_search_form {
    background: #fff;
    border: 1px solid #e0e0e0;
    width: 340px;
    height: 39px;
    position: relative;
    text-transform: none;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
    overflow: hidden;
    -webkit-transition-duration: 0.4s;
    -moz-transition-duration: 0.4s;
    -o-transition-duration: 0.4s;
    transition-duration: 0.4s;
    position: absolute;
    right: 0px;
    top: 11px;
    z-index: 99;
}

form#event_search_form p {
    margin-bottom: 0;
}

form#event_search_form a#mobile_search {
    display: none;
}

form#event_search_form input[type="text"] {
    border: none;
    outline: none;
    width: 300px;
    height: 38px;
    line-height: 38px;
    padding-left: 13px;
    color: #333333;
    font-size: 14px;
    color: #666;
    font-style: italic;
}

form#event_search_form input[type="text"].focus {
    font-style: normal;
    color: #333;
}

form#event_search_form input[type="submit"] {
    width: 40px;
    height: 38px;
    text-indent: -2000px;
    line-height: 100px;
    overflow: hidden;
    display: block;
    background: #fff url(../img/sprite.png) no-repeat 46% -63px;
    border: none;
    outline: none;
    position: absolute;
    top: 0px;
    right: 0px;
}

form#event_search_form ::-webkit-input-placeholder {
    color: #bababa;
    font-style: italic;
}

form#event_search_form :-moz-placeholder {
    color: #bababa;
    font-style: italic;
}

form#event_search_form ::-moz-placeholder {
    color: #bababa;
    font-style: italic;
}

form#event_search_form :-ms-input-placeholder {
    color: #bababa;
    font-style: italic;
}

form#event_search_form input[type="text"].focus::-webkit-input-placeholder {
    opacity: .5;
}

form#event_search_form input[type="text"].focus:-moz-placeholder {
    opacity: .5;
}

form#event_search_form input[type="text"].focus::-moz-placeholder {
    opacity: .5;
}

form#event_search_form input[type="text"].focus:-ms-input-placeholder {
    opacity: .5;
}

form#event_search_form.open {
    width: 100%;
}

.eo_toggle_links {
    background: #d4d4d4;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
    height: 30px;
    overflow: hidden;
    -webkit-box-shadow: #a9a9a9 1px 1px 2px inset;
    -moz-box-shadow: #a9a9a9 1px 1px 2px inset;
    box-shadow: #a9a9a9 1px 1px 2px inset;
    font-size: 12px;
    letter-spacing: .05em;
    float: right;
    margin-top: 4px;
    max-width: 50%;
}

.eo_toggle_links a {
    display: block;
    float: left;
    line-height: 22px;
    color: #333;
    font-weight: 600;
    text-align: center;
    text-transform: uppercase;
    overflow: hidden;
    padding: 5px 11px 6px;
}

.eo_toggle_links a.active {
    color: #fff;
    background: #990000;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
}

/* Month Bar
-------------------------------------------------------------*/

article .fc-toolbar {
    background-color: #333333;
    color: #fff;
    position: relative;
    border-radius: 3px 3px 0px 0px;
}

.fc-toolbar h2 {
	display: inline-block;
    text-transform: uppercase;
    font-size: 17px;
    letter-spacing: .05em;
    line-height: 17px;
    margin: 5px 15px 0px;
    vertical-align: top;
    min-width: 150px;
}

.fc-state-default {
	background-color: transparent;
	border: none;
	box-shadow: none;
	color: #9c9c9c;
	font-size: 11px;
	text-shadow: none;
	text-transform: uppercase;
}

button.fc-today-button.fc-button.fc-state-default.fc-corner-left.fc-corner-right.fc-state-disabled {
	background-color: #333;
	border: none;
	color: #fff;
	font-size: 11px;
	font-weight: 600;
    opacity: 1;
	text-shadow: none;
	text-transform: uppercase;
}

article .fc-toolbar {
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
	height: 60px;
	padding: 18px 10px 0;
}

article .fc button {
	font-size: 11px;
	font-weight: 700;
	outline: 0;
	padding: 2px 5px 0px;
	vertical-align: middle;
}

article .fc-center {
	margin-left: 80px;
}

article .fc-right button {
	padding: 2px 10px 0;
}

button.fc-prev-button {
	float: left;
}

button.fc-next-button {
	float: right;
}

article .eo-fullcalendar .fc-toolbar {
	margin-bottom: 0px;
}

.fc-icon-left-single-arrow:after,
.fc-icon-right-single-arrow:after {
	content: "";
}

article .fc-state-active {
	color: #fff;
}

/* Days View Area
-------------------------------------------------------------*/

article a.fc-event {
    background: #fff !important;
    border: 1px solid #e0e0e0 !important;
    color: #980006 !important;
    font-weight: 400;
    font-size: 11px;
    line-height: 16px;
    padding: 5px;
    -webkit-box-shadow: rgba(123,123,123,0.2) 0px 0px 3px;
    -moz-box-shadow: rgba(123,123,123,0.2) 0px 0px 3px;
    box-shadow: rgba(123,123,123,0.2) 0px 0px 3px;
    text-transform: none
}

article .fc-event:hover {
    background-color: #980006 !important;
    color: #fff !important;
}

article .fc-today {
    background-color: #fbfafa !important;
    border-color: #e0e0e0 !important;
}

article .fc-view-container {
	border-bottom: 1px solid #e0e0e0;
	border-left: 1px solid #e0e0e0;
	border-right: 1px solid #e0e0e0;
}

article .fc .fc-row {
	background-color: #eae9e9;
	font-size: 12px;
	text-transform: uppercase;
}

article .fc-view-container .fc-week tr {
	background: #f4f4f4;
}

article .fc .fc-week {
	min-height: 100px;
}

.fc-view-container td:first-child {
    border-top: 1px solid #e0e0e0;
}

article .fc-day-header {
	color: #333;
	font-size: 12px;
	font-weight: 700;
}

article .fc-view-container tr {
	border: none;
	color: #9c9c9c;
	font-size: 14px;
	padding: 6px;
}

article .fc-view-container th.fc-day-header {
	padding: 10px 0 9px !important;
}

article .fc-today {
	background-color: #fbfafa;
	border-style: none;
}

article .fc td.fc-today {
	border-style: solid;
	border-width: 1px;
}

article .fc td.fc-day-number {
	border-bottom: none;
}

article .fc-other-month {
	background-color: #eae9e9 !important;
}

span.fc-icon-left-single-arrow,
span.fc-icon-right-single-arrow {
	width: 18px;
    height: 22px;
    background: transparent url(../img/sprite.png) no-repeat 0 0;
    border: none;
    padding: 0;
    position: absolute;
    margin: 0 15px;
}

span.fc-icon-right-single-arrow {
	background-position: -18px 0;
}

article .fc-content {
	font-size: 11px;
}

.qtip {
    background: #fff;
    padding: 20px !important;
    border: none !important;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    -ms-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
}

.qtip,
.qtip-eo {
    -webkit-box-shadow: 0 2px 5px 0 rgba(0,0,0,0.13) !important;
    -moz-box-shadow: 0 2px 5px 0 rgba(0,0,0,0.13) !important;
    box-shadow: 0 2px 5px 0 rgba(0,0,0,0.13) !important;
}

.qtip-eo .qtip-titlebar,
.qtip .qtip-titlebar,
.qtip .qtip-title {
    background: transparent none;
    background-color: transparent !important;
    border: none;
    color: #980006;
    font-size: 14px;
    padding: 0px;
    margin-bottom: 5px;
    line-height: 20px;
}

.ui-widget-header {
    background-image: none !important;
}

.qtip .qtip-content {
    color: #333333;
    font-size: 13px;
    padding: 0px;
    line-height: 20px;
    border: none;
}

.qtip a {
    color: #980006;
    font-weight: bold;
    display: block;
    margin-top: 10px;
}

.qtip:before {
    content: '';
    display: block;
    width: 100%;
    height: 10px;
    background: url(../img/sprite.png) no-repeat 50% 100%;
    overflow: hidden;
    position: absolute;
    top: -10px;
    left: 0px;
    right: 0px;
}

/* List View
-------------------------------------------------------------*/

article.calendar h2.sep {
	border-bottom: 1px solid #e0e0e0;
    padding-bottom: .3em;
    margin-bottom: 1.2em;
    margin-top: 20px;
}

article.calendar.list .event {
	padding-bottom: 40px;
}

article.calendar time,
article.event time {
	display: block;
	color: #515151;
	font-size: 13px;
	line-height: 17px;
}

article.calendar h3.entry-title,
article.event h3.entry-title {
	font-size: 16px;
    margin: 0;
}

/* Single View
-------------------------------------------------------------*/

.single-event a.back {
	margin-bottom: 33px;
	display: block;
}

article.event h1 {
	margin-bottom: 35px;
}

article.event time {
	margin-bottom: 2em;
}

article.event p {
	font-size: 16px;
}

article.event .entry-content {
	padding-bottom: 25px;
	width: 100%;
}


/* Subscribe Bar
-------------------------------------------------------------*/

aside.subscribe {
	border-bottom: none;
	color: #333;
    margin-top: 0;
	text-align: right
}

aside.subscribe.grid {
    border: none;
}

aside.subscribe #nav-below {
    margin: 7px 0 15px;
}

/* Responsiveness
-------------------------------------------------------------*/

@media screen and (min-width: 0) and (max-width: 960px) {
    .ui-tooltip.qtip {
        margin-top: 10px;
    }

    article.calendar,article.event {
        width: 100%;
        padding: 35px 20px 0px;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }

    article.calendar .map,article.event .map {
        float: none;
        margin: 40px auto 20px;
    }

    ul.dd {
        width: 218px;
    }

    article.event .entry-content {
        float: none;
        width: 100%;
    }

    .toggle_links {
        width: 115px;
    }

    .mobilehide {
        display: none;
    }

    .fc-header-right * {
        display: none;
    }

    .fc .fc-grid .fc-day {
        min-height: 50px;
        height: 50px;
        text-align: center;
    }

    article .fc-day-number,
    .fc-ltr .fc-basic-view .fc-day-number {
	    text-align: center;
    }

    article .fc a.fc-event.eo-multi-day,
    article .fc a.fc-event.eo-all-day {
	    width: 100%;
    }

    article .fc a.fc-event {
        width: 10px;
        height: 10px !important;
        text-align: left;
        border: none !important;
        border-radius: 5px !important;
        background: #980006 !important;
        overflow: hidden;
        text-indent: -2000px;
        line-height: 2000px;
        padding: 0px !important;
        display: block;
        margin: 2px auto;
    }

    article.calendar.list aside.subscribe {
        border: none;
        text-align: left;
    }

    article.calendar.list #nav-below {
        border-top: 1px solid #e0e0e0;
        padding-top: 9px;
        padding-bottom: 15px;
        width: 100%;
        float: none;
    }

    article.calendar.list h2.sep,
	article.calendar.list .event {
		width: 100%;
	}

    aside.subscribe {
        text-align: left;
    }

    form#event_search_form {
        width: 53%;
    }
}

@media screen and (min-width: 0) and (max-width: 640px) {

	article .fc-center {
		margin-left: 0;
	}

	article .fc-toolbar {
		height: 100%;
		padding: 10px 10px 15px;
	}

	article .fc-toolbar .fc-left,
	article .fc-center,
	article .fc-right {
		float: inherit;
		width: 100%;
	}

	.fc .fc-toolbar>*>*, .fc-toolbar .fc-right {
		float: inherit;
	}

	article .fc-left,
	article .fc-right {
		display: none !important;
	}

	article .fc .fc-week {
		min-height: 50px;
	}

    article .fc-day-header {
	    color: #333;
        font-size: 10px;
    }

    article .fc-day-number,
    .fc-ltr .fc-basic-view .fc-day-number {
	    font-size: 9px;
	}

    table.fc-header .fc-button-prev,table.fc-header .fc-button-next {
        margin: 0px 5px;
    }

    table.fc-header .fc-button-today {
        font-size: 9px;
        margin-left: 5px;
    }

    table.fc-header .fc-header-title h2 {
        text-transform: uppercase;
        font-size: 15px;
        letter-spacing: .05em;
        line-height: 17px;
        margin: 3px 0px 0px;
    }

    table.fc-header .fc-header-center .fc-button-prev {
        left: 40px;
    }

    table.fc-header .fc-header-center .fc-button-next {
        right: 40px;
    }

    .fc .fc-grid th {
        font-size: 10px;
    }

    .search.post-type-archive-event #primary {
        width: 100%;
        padding: 0px;
    }

    .search.post-type-archive-event #primary #content {
        padding: 50px 20px;
        margin-right: 0px;
        width: auto;
        overflow: hidden;
    }

    .search.post-type-archive-event #primary article {
        width: 100%;
        padding: 0px 0px 20px;
        max-width: auto;
    }

    .search.post-type-archive-event #primary article h1.entry-title {
        font-size: 16px;
        font-weight: 400;
        margin-bottom: .5em;
        display: block !important;
    }

    .search.post-type-archive-event #primary article ul.eo-event-meta {
        display: none;
    }

    .search.post-type-archive-event #primary article time {
        margin-bottom: 10px;
    }

    .search.post-type-archive-event #primary #nav-above {
        display: none;
    }

    .search.post-type-archive-event #primary #nav-below a {
        color: #980006;
        text-decoration: none;
        font-weight: bold;
        text-transform: uppercase;
        letter-spacing: .05em;
        font-size: 12px;
    }

    .search.post-type-archive-event #primary #nav-below a span {
        display: none;
    }

    form#event_search_form {
        width: 45%;
    }

}

@media screen and (min-width: 0) and (max-width: 540px) {

    form#event_search_form {
        width: 40px;
    }

    form#event_search_form a#mobile_search {
        display: block;
    }

    #mobile_search {
        display: block;
        width: 40px;
        height: 40px;
        position: absolute;
        top: 0px;
        right: 0px;
        z-index: 99;
        text-indent: -2000px;
    }
}
