/*
# 	Description: Gibbons Festivals styles
# 	Version: 1.2.8
*/

/*--------------------------------------------------------------
# 	Variables
--------------------------------------------------------------*/
body {
}

/*--------------------------------------------------------------
# 	Header
--------------------------------------------------------------*/
.hero-overlay {
	background-color: transparent;
	background-image: radial-gradient( var(--dark) 0%, transparent 60% );
	opacity: 0.6;
}
.main-image-content {
	margin-bottom: 50px;
}
.festival-dates {
	margin: 0.5em auto 0;
	color: #fff;	
	font-size: 1.5em;
}
.festival-tagline {
	margin: 0.5em auto 0;
	color: #fff;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.15em;
}

/*--------------------------------------------------------------
# 	Navigation
--------------------------------------------------------------*/
/* Festival Navigation */
#section_navigation ul li.list-item-tickets a {
	padding: 0.75em 1.25em;
    color: #fff;
    text-transform: uppercase;
	background-color: var(--secondary);
}
#section_navigation ul li.list-item-tickets a::after {
	content: '\f145';
	font-family: "Font Awesome 5 Pro"; 
	font-size: 90%;
	font-weight: 700; 
	margin-left: 0.75em;
	color: inherit;
}
#section_navigation ul li.list-item-tickets:hover a {
    color: #fff;
	opacity: 0.85;
}

/* 	Social Links */
#section_navigation .social-links {
	position: absolute;
	top: 0;
	left: 1em;
	padding: 0.125em;
}
#section_navigation i[class*="fa-"] {
	width: auto;
	margin-right: 0;
	font-size: 1.125em;
	background-color: transparent;
	border-radius: 0;
}
#section_navigation i[class*="fa-"]:hover {
	color: var(--secondary);
	background-color: transparent;
}

/* 	Buttons */
.btn {
	background-color: var(--primary);
}
.btn:hover {
	background-color: var(--secondary);
}

/*	Misc */
.contact-wrapper {
	max-width: 1175px!important;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 90px;
	display: table;
}


/*--------------------------------------------------------------
## 	Page Elements
--------------------------------------------------------------*/
.main-content a {
	color: var(--secondary);
}
.main-content a:hover {
	text-decoration: underline;
}
h1.page-title {
	color: var(--primary);
	text-align: center;
	text-transform: uppercase;
}
.festival .page-content {
	text-align: center;
}
.festival div[class^="flexible-"] h3 + h2 {
	color: var(--primary);
}

/*--------------------------------------------------------------
## 	Festival Front
--------------------------------------------------------------*/
/* 	Main Event Location */
.main_event {
	padding: var(--box-padding);
	color: #fff;
	background-color: var(--primary);
}
.main_event .wp-caption {
	background-color: transparent;
}
.main_event .wp-caption-text {
	color: rgba(255,255,255,0.5);
}
.main_event h2 {
	margin-bottom: 0.25em;
	color: #fff;
	font-size: 2.5em;
}
.main_event h3 {
	color: var(--secondary);
	font-weight: 400;
	text-transform: uppercase;
}
.main_event p {
	color: #fff;
}
.main_event .nested-content {
	display: block;
	width: 100%;
	max-width: 1175px;
	margin: 0 auto;
}
.main_event .nested-content .kolona12:nth-of-type(2n) {
	max-width: 536px;
	margin-top: 40px;
}

/*	Home Events */
#home_events {
	text-align: center;
}

/*	Home Video */
#festival_video {
	background-color: var(--dark);
}

/*	Home Photos */
#festival_photos {
	text-align: center;
}

/*	Home Blogf */
#home_blog {
	text-align: center;
}


/*--------------------------------------------------------------
# 	Events / Schedule
--------------------------------------------------------------*/
#festival_events {
	text-align: center;
	margin-bottom: 1.5em;
}
#festival_events .flex-container {
	justify-content: space-between;
}
#festival_events .event-card {
	display: flex;
	flex-flow: column nowrap;
	margin-bottom: 1.5em;
	text-align: center;
	background-color: #fff;
	border: 1px solid var(--light);
}
#festival_events .event-card .card-header {
	position: relative;
	flex: 0 1 auto;
	margin: 0;
	height: 15vw;
	overflow: hidden;
}
#festival_events .event-card .price-card {
	position: absolute;
	top: 1em;
	right: 0px;
	color: #fff;
	font-size: 1em;
	font-weight: 400;
	line-height: 1;
	text-align: center;
	z-index: 20;
	background-color: var(--secondary);
}
#festival_events .event-card .event-cost {
	margin: 0;
	padding: 0.75em 1em;
	color: #fff;
	line-height: 1;
}
#festival_events .event-card .event-date {
	margin-bottom: 0;
	font-weight: 700;
}
#festival_events .event-card .event-time,
#festival_events .event-card .event-location {
	margin-bottom: 0;
}
#festival_events .event-card .card-content {
	flex: 0 1 auto;
	margin: 0 0 auto;
	padding: 2em;
}
#festival_events .event-card .card-content h3 {
	color: var(--secondary);
	font-size: 1.5em;
	text-transform: none;
}
#festival_events .event-card .card-footer {
	flex: 0 1 auto;
	display: flex;
	flex-flow: row wrap;
	margin: auto 0 0;
}
#festival_events .event-card .card-footer a.btn {
	flex: 0 1 50%;
	margin: 0;
	padding: 1em;
}
#festival_events .event-card .card-footer a:hover {
	color: #fff;
	opacity: 1;
}
#festival_events .event-card .card-footer a.btn:only-child {
	flex: 0 1 100%;
}
#festival_events .event-card .card-footer a.btn.sold-out:hover {
	background-color: var(--grey);
}

/*--------------------------------------------------------------
# 	Sliders
--------------------------------------------------------------*/
/* Header Slider */
.main-slider {
	height: 300px!important;
	max-height: 300px!important;
}
.main-slider-holder {
	position: relative;
	height: 300px!important;
	background-size: cover; 
}
.main-slider-holder .slick-list {
	height: 300px!important;
}
.main-slider-holder .slick-track {
	height: 300px!important;
}
.main-slider-holder {
	height: 300px!important;
}
.main-slider-holder .main-slider-figure {
	height: 300px!important;
}
.main-slider-figure img {
	height: 300px!important;
	width: 100%!important;
}
.main-slider-holder img.real_img {
	height: 300px!important;
}

/* Slider Titles */
.regular-title h2 {
	margin-top: 50px;
	margin-bottom: 0px;
	position: relative;
	text-transform: none!important;
	font-size: 30px;
	font-weight: 700;
	color: var(--primary);
	text-align: center;
	font-family: "museo-sans-condensed";
}
.fancy-title {
    margin-top: 20px;
    position: relative;
    text-transform: uppercase;
    font-size: 24px;
    text-align: center;
    font-family: "museo-sans-condensed";
    font-weight: 700;
    color: #999999;
}
.fancy-title h2 {
    position: relative;
    padding: 0 20px;
    margin: 0;
    display: inline-block;
    background: #fff;
}
.fancy-title:before {
    position: absolute;
    content: '';
    background: #999999;
    height: 1px;
    left: 0;
    top: 13px;
    right: 0;
    width: 100%;
}

/* Global */
.slick-track .slick-slide {
	margin: 0 0.5em;
}
.slick-slider {
	margin-left: auto;
	margin-right: auto;
	text-align: center;
}
.slick-list {
	padding-right: 0px;
	padding-left: 0px;
	margin-left: auto;
	margin-right: auto;
}
.slick-slide img {
	object-fit: contain;
	height: auto;
}

/* Sponsor Slider */
.sponsor-slider {
	max-width: 923px;
	margin-left: auto;
	margin-right: auto;
}
.sponsor-slider .slick-slide {
	margin-left: 23px;
	margin-right: 23px;
}
.sponsor-slider .slick-list {
	-webkit-display: flex;
	-webkit-justify-content: center;
	display: flex;
	justify-content: center;
}
.sponsor-slider .slick-list .slick-track {
	-webkit-display: flex;
	-webkit-justify-content: center;
	display: flex;
	justify-content: center;
	left: 0px;
}
.sponsor-slider .slick-list .slick-track .slick-slide:first-child {
	margin-left: 0px;
}
.sponsors .slick-dots {
	bottom: 0px;
}
.sponsors.last .slick-dots {
	bottom: -25px;
}

/* Accommodation Slider */
.accommodation-slider {
	margin-top: 35px;
	max-width: 1175px;
	margin: 0 auto;
}
.accommodation-slider .slick-list,
.accommodation-slider .slick-track {
	max-width: 1117px;
	margin: 0 auto;
}
.accommodation-slider .slick-slide img, 
.accommodation-slider .slick-slide {
	width: 110px;
	height: 111px;
}
.accommodation-slider .slick-slide {
	margin-left: 13px;
	margin-right: 13px;
}
.accommodation-slider-wrapper .container > .spacer {
	display: none;
}
.accommodation-slider .slick-dots {
	margin: 0 auto;
}

/* Community Slider */
.community-slider {
	margin-top: 25px;
}
.community-slider .slick-track {
	margin-left: auto;
	margin-right: auto;
	width: 500px;
	display: flex;
	-webkit-display: flex;
	-webkit-justify: center;
	justify-content: center; 
}
.community-slider .slick-track .slick-slide {
	width: 120px;
	height: 120px;
}
.community-slider .slick-slide img {
	width: 100%;
	height: auto;
}

/* Partners Slider */
.partners-logos-slider li {
    display: inline-block;
    margin: 0 5px;
    width: 9px;
    height: 9px;
}
.partners-logos-slider .slick-dots {
    position: absolute;
    left: 0;
    right: 0;
    bottom: -25px;
    text-align: center;
}
.partners-logos-slider button {
    display: block;
    width: 9px;
    height: 9px;
    padding: 0px;
    overflow: hidden;
    text-indent: 999px;
    border: 1px solid #100e40;
    background: transparent;
    border-radius: 50%;
}
.partners-logos-slider .slick-active button {
    background: #100e40;
}

/* Middle Slider */
.middle-slider .slick-slide {
	width: 110px;
	height: 111px;
}

/* Arrows */
.slick-arrow {
	width: 18px;
	height: 42px;
	display: inline-block;
}

/* Dots */
.slick-dots {
	position: absolute;
	display: inline-block;
	margin: 25px auto 0;
	padding: 0;
	width: auto;
	text-align: center;
}
.slick-dots li {
	list-style: none;
	margin-right: 10px;
}
.slick-dots li:last-child {
	padding-right: 0px;
}
.slick-dots .active-dot {
	display: none;
}
.slick-dots .slick-active .inactive-dot {
	display: none;
}
.slick-dots .slick-active .active-dot {
	display: block;
}
.slick-dots li a {
	display: block;
	z-index: 20;
}

/*--------------------------------------------------------------
# 	Breweries
--------------------------------------------------------------*/
.icons-section .kolona13 {
	max-width: 175px;
	max-height: 175px;
	margin-left: 25px;
	margin-right: 0px;
	margin-bottom: 24px;
}
.icons-section .kolona15 {
	width: auto;
}
.icons-section .kolona15 {
	margin-right: 25px;
}
.icons-section .kolona13 figure img {
	height: auto;
}
.icons-section .kolona14 figure img {
	height: auto;
}
.icons-section .kolona12 figure img {
	height: auto;
}
.icons-section .kolona13:first-of-type {
	margin-left: 0px;
	margin-right: 0px;
}
.icons-section .kolona13:last-of-type {
	margin-right: 0px;
}
.icons-section .container {
	padding-right: 0px;
}
.icons-section figure {
	max-height: none;
	height: 100%;
}

/*--------------------------------------------------------------
# 	Food Music
--------------------------------------------------------------*/
.food-block,
.music-block {
	max-width: var(--page-width);
	margin-left: auto;
	margin-right: auto;
	padding-top: 25px;
}
.food-block > div,
.music-block > div {
	max-width: 400px;
	margin-left: auto;
	margin-right: auto;
}

/*--------------------------------------------------------------
## Get Involved
--------------------------------------------------------------*/
/* Opportunities */
.opportunities .kolona13 {
	text-align: center;
	margin-bottom: 60px;
	width: 294px;
	margin-right: 25px;
	position: relative;
}
.opportunities .kolona13:nth-of-type(3n) {
	margin-right: 0px;
}
.opportunities .kolona13 img {
	margin-left: auto;
	margin-right: auto;
	width: 120px;
	height: 120px;
}
.opportunities strong {
	display: inline-block;
	width: 100%;
	text-align: center;
	font-size: 24px;
	color: var(--primary);
	font-family: "museo-sans-condensed";
}
.opportunities p a {
	color: var(--primary);
	font-weight: 700;
}
.opportunities .wrapper {
	justify-content: space-between;
}

/* New layout by Vuisco Design
--------------------------------------------------------------*/
div[id^="opportunities_"] {
	margin-bottom: 3em;
}
.opportunities .card {
	flex: 0 1 100%;
	display: flex;
	flex-flow: column wrap;
	text-align: center;
}
.opportunities .card .entry-header {
	margin: 0 auto;
}
.opportunities .card .entry-header img {
	margin: 0 auto;
	max-width: 8em;
}
.opportunities .card .entry-content {
	margin: 0 auto;
}
.opportunities .card .entry-content h3 {
	color: var(--primary);
	font-weight: 700;
}
.opportunities .card .entry-footer {
	margin: auto auto 0;
}
.opportunities .card .button {
	position: relative;
	display: inline-block;
	margin: 0 auto;
	padding: 0.75em 1.25em;
	width: auto;
	height: auto;
	transform: none;
	left: auto;
	bottom: auto;
	color: var(--primary);
	line-height: 1;
	border: 1px solid var(--primary);
	background-color: #fff;
}

/* 	General FAQs (?) */
.faq-section h2.faq-section-title {
	text-align: center;
}
.faq-section-accordion {
	padding: 0 0 12px;
}
.faq-section-accordion .faq-section-panel {
	margin-bottom: 15px;
	padding: 0;
	padding-left: 54px;
	border: none;
}
.faq-section-accordion .faq-section-question {
	position: relative;
	margin-bottom: 8px;
	padding: 7px 0 7px;
	font-family: var(--font-condensed);
	font-size: 20px;
	line-height: 1.1;
	color: var(--dark);
	text-transform: none;
}
.faq-section-accordion .faq-section-panel .faq-section-question,
.faq-section-accordion .faq-section-panel.current .faq-section-question {
	background: none;
}
.faq-section-accordion .faq-section-panel .faq-section-question:before {
	content: "+";
	position: absolute;
	top: 0;
	left: -54px;
	width: 36px;
	height: 36px;
	line-height: 36px;
	background-color: var(--primary);
	color: #fff;
	text-align: center;
	font-family: "MuseoSans";
    font-weight: 700;
	transition: all 0.3s;
}
.faq-section-accordion .faq-section-panel.current .faq-section-question:before {
    content: "_";
	line-height: 23px;
}
.faq-section-accordion .faq-section-answer {
	margin-top: -6px;
	font-size: 15px;
	line-height: 1.4;
	color: var(--primary);
}

.faq-section-accordion .faq-section-answer p,
#content .faq-section-accordion .faq-section-answer p {
	font-family: 'AnticSlab';
	font-size: 15px;
	line-height: 1.4;
	color: var(--primary);
}

/*--------------------------------------------------------------
# 	Get Here & Stay
--------------------------------------------------------------*/
#tw_accommodation {
	text-align: center;
}
#tw_accommodation a {
	color: var(--primary);
	text-decoration: underline;
}
#tw_accommodation .html-embed-wrapper {
	margin: auto;
	max-width: 46em;
	height: auto;
	min-height: inherit;
}

/*--------------------------------------------------------------
## Tickets
--------------------------------------------------------------*/
#festival_tickets {
	padding-top: 0;
}
.event-ticket {
	margin-top: 45px;
	margin-bottom: 70px;
}

/* 	Ticket Container */
.event-ticket .ticket-container {
	height: auto;
	text-align: center;
}
.event-ticket .ticket-container .tab-container {
	display: block;
	height: 220px;
	overflow: hidden;
}
.event-ticket .ticket-container .tab-container h2 {
	color: var(--primary);
	text-transform: none;
}
.event-ticket .ticket-container .tab-container h3 {
	text-align: center;
	font-size: 18px;
	font-family: "MuseoSans";
	color: var(--primary);
	font-weight: 500;
}
.event-ticket .ticket-container .tab-container .price {
	font-size: 60px;
	font-weight: 700;
	font-family: "museo-sans-condensed";
	text-align: center;
	color: var(--secondary);
	width: 100%;
	margin-top: 30px;
}
.active {
	color: var(--secondary);
}

.event-ticket .ticket-container .tab-container .kolona13.active, 
.event-ticket .ticket-container .tab-container .kolona12.active {
	background-color: var(--light);
	border-bottom: 0px;
}
.event-ticket .ticket-container .tab-container .kolona12 {
	height: 220px;
	background: #fff;
	margin-right: 0px;
	border-top: 1px solid #999;
	border-bottom: 1px solid #999;
	border-left: 1px solid #999;
	z-index: 10;
	overflow: hidden;
}
.event-ticket .ticket-container .tab-container .kolona13 {
	width: 391px;
	height: 220px;
	background: #fff;
	margin-right: 0px;
	border-left: 1px solid #999;
	border-top: 1px solid #999;
	border-bottom: 1px solid #999;
	z-index: 10;
	overflow: hidden;
}
.event-ticket .ticket-container .tab-container .kolona13:last-child, 
.event-ticket .ticket-container .tab-container .tab-switcher:nth-of-type(2) .kolona12 {
	border-right: 1px solid #999;
}
.event-ticket .ticket-container .tab-container .kolona13:nth-of-type(2n), 
.event-ticket .ticket-container .tab-container .kolona12:nth-of-type(2n) {
	width: 393px;
}
.event-ticket .ticket-container .tab-container .tab-switcher:nth-of-type(2n) .kolona12 {
	margin-right: 0px;
	width: 51.6%;
}
.event-ticket .ticket-content > div {
	border-right: 1px solid #999;
	height: 100%;
}
.event-ticket .ticket-content {
	border-left: 1px solid #999;
	border-bottom: 1px solid #999;
	height: auto;
	background-color: var(--light);
}
.event-ticket-mobile {
	display: none;
}
.event-ticket .ticket-content .inactive {
	display: none;
}


/* Ticket Content */
[aria-selected="false"] .ticket-content {
	display: none;
}
.ui-state-active .ticket-content {
	display: block;
}
h3.ticket-notes {
	color: var(--primary);
	font-size: 20px;
	text-align: center;
	font-style: italic;
}
h3.corner-title {
	color: var(--primary);
	text-transform: uppercase;
}
h3.corner-title span {
	font-weight: 700;
}
.ticket-content ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.ticket-content ul li {
	padding-left: 1em;
	text-indent: -.7em;
	line-height: 37px;
}
.ticket-content ul li::before {
	font-family: 'FontAwesome';
	content: '\f111';
	color: #999;
	padding-right: 12px;
}
.ticket-content ul li.bold {
	font-weight: 700;
}
.ticket-content ul li.bold::before {
	content: '\f067';
	color: #999;
}

.ticket-content .buy-button, 
.ticket-content .buy_ticket_link {
	color: #fff;
	background: #9BC948;
	width: 175px;
	height: 50px;
	display: block;
	line-height: 50px;
	font-weight: 700;
	text-align: center;
	margin-top: 35px;
}
.ticket-content .buy-button:hover, 
.ticket-content .buy_ticket_link:hover {
	background: #0B3121;
}
.ticket-content .sold-out .buy-button, 
.sold-out .buy-button, .sold-out .buy_ticket_link {
	background: rgba(155, 201, 72, 0.4);
}
.ticket-content > div {
	padding-top: 45px;
	padding-bottom: 45px;
	margin-left: 45px;
}
.ticket-content > div h3 {
	margin-top: 0px;
}

/*--------------------------------------------------------------
## Contact
--------------------------------------------------------------*/
ul.contact-info {
	list-style: none;
	margin: 0 auto 25px 30px;
	padding: 0;
}
ul.contact-info li {
	list-style-position: inside;
	text-indent: -20px;
}
ul.contact-info li .fa,
ul.contact-info li .fa-phone {
	color: var(--primary);
}
.contact-details .social-links {
	margin: 10px auto 25px;
}

/*--------------------------------------------------------------
# Mailchimp
--------------------------------------------------------------*/
.mailchimp-inline {
	max-width: 800px;
	margin: 0 auto;
	padding: 25px;
}
.mailchimp-inline h3 {
	color: var(--primary);
}

/*--------------------------------------------------------------
# 	Footer
--------------------------------------------------------------*/
.festival-footer-image {
	width: 100%;
}


/*--------------------------------------------------------------
# Media Queries
--------------------------------------------------------------*/

/*	480px Breakpoint	*/
@media only screen and (min-width: 480px) {

.event-card {
	flex: 0 1 49%;
}

}

/*	600px Breakpoint	*/
@media only screen and (min-width: 600px) {

.opportunities .kolona13 {
	width: 300px;
}
.opportunities .card {
	flex: 0 1 30%;	
}

}

/*	700px Breakpoint	*/
@media only screen and (min-width: 700px) {

.opportunities .kolona13 {
	width: 325px;
}

}

/* 	800px Breakpoint	*/
@media only screen and (min-width: 800px) {

#location_map .iframe-wrapper {
	padding-bottom: 40%;
}
.community-slider .slick-track .slick-slide {
	width: 200px;
	height: 200px;
}
.opportunities .card {
	flex: 0 1 22%;	
}
.event-card {
	flex: 0 1 32%;
}

}

/* 	1000px Breakpoint	*/
@media only screen and (min-width: 1000px) {

#location_map .iframe-wrapper {
	padding-bottom: 30%;
}
#section_navigation ul li.list-item-tickets {
    position: absolute;
    top: 0;
    right: 0;
}
#section_navigation ul li.list-item-tickets a {
    color: #fff;
    text-transform: uppercase;
	background-color: var(--secondary);
}
#section_navigation .social-links {
	left: auto;
	right: 8em;
	padding: 0;
}
#section_navigation i[class*="fa-"] {
	height: auto;
	font-size: 1.125em;
}

}

/* 	1400px Breakpoint	*/
@media only screen and (min-width: 1400px) {

#location_map .iframe-wrapper {
	padding-bottom: 30%;
}

}