/* Default Styles - DO NOT EDIT */
body {position: static !important;}
body h1, .h1 {font-size: 2rem;}
body h2, .h2 {font-size: 1.75rem;}
body h3, .h3 {font-size: 1.5rem;}
body h4, .h4 {font-size: 1.25rem;}
body h5, .h5 {font-size: 1.1rem;}
body h6, .h6 {font-size: 1rem;}

.everything {border-left: 1px solid rgba(0, 0, 0, 0.1); border-right: 1px solid rgba(0, 0, 0, 0.1); margin-left: auto; margin-right: auto;}

a:not(.cta):not(.button):link:hover {opacity: 0.75;}

.grid-container.full > .grid-x, .grid-container.full > .grid-y {margin-left: auto; margin-right: auto;}
#row-hero {position: relative;}
#row-hero:before {content: ' '; display: block; background-size: cover; background-position: center center; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 1;}

.uppercase {text-transform: uppercase;}
.lowercase {text-transform: lowercase;}
.title {display: block; width: 100%;}
.sticky {position: inherit; transform: none; z-index: auto;}
.gallery-caption {}
.bypostauthor {}

hr.clear {background: rgba(0, 0, 0, 0) none repeat scroll 0 0; border: medium none; clear: both; display: block; height: 0; margin: 0; width: 100%;}

.no-padding {padding: 0px;}
.no-padding-top {padding-top: 0px;}
.no-padding-right {padding-right: 0px;}
.no-padding-bottom {padding-bottom: 0px;}
.no-padding-left {padding-left: 0px;}

.text-white {color:#fff;}
.text-black {color:#000;} 
.htext-white:hover {color:#fff;} 
.htext-black:hover {color:#000;}
.bg-white {background-color:#fff;} 
.bg-black {background-color:#000;} 
.hbg-white:hover {background-color:#fff;} 
.hbg-black:hover {background-color:#000;}

.absolute {position: absolute;}
.relative {position: relative;}
.background-contain, .background-contain .row-bg-wrapper {background-size: contain;}
.background-cover, .background-cover .row-bg-wrapper {background-size: cover;}

#logo {max-height: 5rem;}
#small-logo {max-height: 4rem; padding: 0.5rem 0;}
nav.top-bar {position: relative;}
nav.top-bar .top-bar-right {top: 0.5rem; position: absolute; right: 0.5rem;}
nav.top-bar .top-bar-left {top: 0.5rem; position: absolute; left: 0.5rem;}
nav.top-bar .menu > li > a {margin-left: 0.25rem; border-radius: 0rem; padding:0.5rem 0.75rem; font-size: 0.8rem;}
nav.top-bar, nav.top-bar ul {background-color:transparent;}

.menu > li {padding-right:2rem;}
.menu > a {padding: .7rem 0;}
.menu > a:hover, .menu .active > a {border-bottom:2px solid; background:transparent;padding: .7rem 0rem;}

#template-name {background-color: rgba(255, 255, 255, 0.25); bottom: 0; display: inline-block; opacity: 0.5; padding: 1rem; position: fixed; right: 0;}

.notouch {background:transparent; position:relative; z-index: 10;}

/* Default WP styles */
img.alignnone {margin: 0.25rem 1.25rem 1.25rem 0;}
img.alignright {float: right; margin: 0.25rem 0 1.25rem 1.25rem;}
img.alignleft {float: left; margin: 0.25rem 1.25rem 1.25rem 0;}
img.aligncenter {display: block; margin: 0.25rem auto 0;}
.alignnone {margin: 0.25rem 1.25rem 1.25rem 0;}
.alignright {float: right; margin: 0.25rem 0 1.25rem 1.25rem;}
.alignleft {float: left; margin: 0.25rem 1.25rem 1.25rem 0;}
.aligncenter, div.aligncenter {display: block; margin: 0.25rem auto;}

.wp-caption {background: #fff; border: 1px solid #f0f0f0; max-width: 96%; padding: 0.25rem 0.125rem 0.625rem; text-align: center;}
.wp-caption.alignnone {margin: 0.25rem 1.25rem 1.25rem 0;}
.wp-caption.alignleft {margin: 0.25rem 1.25rem 1.25rem 0;}
.wp-caption.alignright {margin: 0.25rem 0 1.25rem 1.25rem;}
.wp-caption img {border: 0 none; height: auto; margin: 0; max-width: 98.5%; padding: 0; width: auto;}
.wp-caption p.wp-caption-text {font-size: 11px; line-height: 17px; margin: 0; padding: 0 0.25rem 0.25rem;}

/* Text meant only for screen readers. */
.screen-reader-text {clip: rect(1px, 1px, 1px, 1px); position: absolute !important; height: 1px; width: 1px; overflow: hidden;}
.screen-reader-text:focus {background-color: #f1f1f1; border-radius: 3px; box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6); clip: auto !important; color: #21759b; display: block; font-size: 14px; font-size: 0.875rem; font-weight: bold; height: auto; left: 0.25rem; line-height: normal; padding: 10.25rem 1.5rem 0.875rem; text-decoration: none; top: 0.25rem; width: auto; z-index: 100000; /* Above WP toolbar. */}

/* Admin bar indicators */
#wpadminbar #wp-admin-bar-root-default .bb .ab-item, #wpadminbar #wp-admin-bar-root-default .bb .ab-item:hover {color: white;}
#wpadminbar #wp-admin-bar-root-default .bb.dev .ab-item, #wpadminbar #wp-admin-bar-root-default .bb.dev .ab-item:hover,
#wpadminbar #wp-admin-bar-root-default .bb.broken .ab-item, #wpadminbar #wp-admin-bar-root-default .bb.broken .ab-item:hover {background-color: red;}
#wpadminbar #wp-admin-bar-root-default .bb.stage .ab-item, #wpadminbar #wp-admin-bar-root-default .bb.stage .ab-item:hover,
#wpadminbar #wp-admin-bar-root-default .bb.wip .ab-item, #wpadminbar #wp-admin-bar-root-default .bb.wip .ab-item:hover {background-color: darkorange;}
#wpadminbar #wp-admin-bar-root-default .bb.prod .ab-item, #wpadminbar #wp-admin-bar-root-default .bb.prod .ab-item:hover,
#wpadminbar #wp-admin-bar-root-default .bb.stable .ab-item, #wpadminbar #wp-admin-bar-root-default .bb.stable .ab-item:hover {background-color: green;}
.bb.css a::before {content: ""; top: 2px;}

/* Offcanvas Menu */
.off-canvas button.close-button {z-index: 20;}

/* List Posts */
.bb_posts_wrapper {list-style: none;}
.bb_posts_item {text-align: center;}
.bb_posts_item img {border-radius: 50%; padding: 2rem;}

/* Some tweaks to help GF and Zurb play nicely together */
span>[type=text], span>[type=password], span>[type=date], span>[type=datetime], span>[type=datetime-local], span>[type=month], span>[type=week], span>[type=email], span>[type=tel], span>[type=time], span>[type=url], span>[type=color], span>[type=number], span>[type=search], span>textarea {margin-bottom: 0.25rem;}
label.gfield_label {font-size: 1rem;}
body .gform_wrapper .gfield_date_day label, body .gform_wrapper .gfield_date_month label, body .gform_wrapper .gfield_date_year label, body .gform_wrapper .gfield_time_ampm label, body .gform_wrapper .gfield_time_hour label, body .gform_wrapper .gfield_time_minute label, body .gform_wrapper .ginput_complex label, body .gform_wrapper .instruction {margin-bottom: 1.5rem;}
.gform_wrapper.gf_browser_gecko select {padding: 2px 24px 2px 2px!important;}
.gform_wrapper .gfield_checkbox li input, .gform_wrapper .gfield_checkbox li input[type="checkbox"], .gform_wrapper .gfield_radio li input[type="radio"] {vertical-align: inherit!important;}


/* Gravity Forms validation errors */
body .gform_wrapper div.validation_error, body .gform_wrapper li.gfield.gfield_creditcard_warning div.gfield_creditcard_warning_message {border: 2px solid #E02E48; background-color: #FED7DA; color: inherit; width: auto; display: inline-block; padding: 0.8rem 0.5rem;}
body .gform_wrapper li.gfield.gfield_creditcard_warning div.gfield_creditcard_warning_message span {display: inline-block; margin: 0; padding: 0 0 0 1.25rem; min-height: 1rem; border: none; -webkit-filter: grayscale(100%); filter: grayscale(100%);}
body .gform_wrapper li.gfield.gfield_error, body .gform_wrapper li.gfield.gfield_creditcard_warning, body .gform_wrapper li.gfield.gfield_error.gfield_creditcard_warning, body .gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning {background-color: transparent; border: none; padding: 0;}
body .gform_wrapper li.gfield.gfield_error.gfield_contains_required div.ginput_container, body .gform_wrapper li.gfield.gfield_error.gfield_contains_required label.gfield_label {margin-top: 0;}
body .gform_wrapper .validation_message, body .gform_wrapper .gfield_error .gfield_label, body .gform_wrapper li.gfield_error div.ginput_complex.ginput_container label, body .gform_wrapper li.gfield_error ul.gfield_checkbox, body .gform_wrapper li.gfield_error ul.gfield_radio {color: inherit;}
body .gform_wrapper li.gfield_error input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]), body .gform_wrapper li.gfield_error select, body .gform_wrapper li.gfield_error textarea {border-color: #E02E48; border-width: 1px 1px 1px 5px;}
body .gform_wrapper .gfield_description.validation_message {padding: 0 0 0.6rem;}

/* Add support for multi-column Gravity Forms */
.gform_wrapper .two-column .gsection:not(.empty), .gform_wrapper .three-column .gsection:not(.empty) {display: none;}

@media only screen and (min-width: 40.063em) { /* <-- min-width 641px, medium screens */
    .gform_wrapper ul.gform_column {float:left; display:inline-block; padding: 0.5rem 1.5rem; min-height: 100%;}
    .gform_wrapper .two-column .gform_column {width: 49.5%;}
    .gform_wrapper .three-column .gform_column {width: 33%;}
    .gform_wrapper .gsection {margin: 0;}
    .gform_wrapper .two-column .gform_column:nth-of-type(3), .gform_wrapper .three-column .gform_column:nth-of-type(4) {float: right;} /* Extra 1 because there's an empty one at the start */
}

/* Children as paragraphs */
aside .menu.vertical > li > a {padding-left: 0; padding-right: 0;}
aside .sticky {background-color: white;}

/* Children as Tiles */
.child-tiles .cell {display: inline-block; height: 170px; overflow: hidden; position: relative;}
.child-tiles:not(.small-up-2) .cell:not(:nth-child(+n+6)) {margin-bottom: 2rem;}
.child-tiles .image {position: relative; height: 100%; width: 100%; background-position: center center; background-size: cover; background-repeat: no-repeat;}
.child-tiles .image::before {content: ''; height: 100%; width: 100%; position: absolute; top: 0; left: 0; background-color: rgba(62, 62, 62, 0.5); transition: background-color 0.1s ease-in;}
.child-tiles .image:hover::before {background-color: rgba(62, 62, 62, 0.7);}
.child-tiles .link {display: table; height: 100%; width: 100%; -moz-transform: translateY(-0%); -ms-transform: translateY(-0%); transform: translateY(-0%);}
.child-tiles span {display: table-cell; vertical-align: middle;}

/* START Panels */
.panel-wrapper {position: relative;}
.panel-wrapper a:hover {opacity: 1;}
.panel-wrapper, .panel-bg-wrapper, .panel-inner-wrapper {background-position: center center; background-repeat: no-repeat; background-size: cover;}
.panel-bg-wrapper {width: 100%; height: 100%; position: absolute; top: 0; left: 0;}
.panel-inner-wrapper {width: 100%; height: 100%; position: relative; z-index: 3;}
.panel-inner-wrapper > .cell {padding-top: 2rem; padding-bottom: 2rem;}
.panel-inner-wrapper > .cell > a {display: block; width: 100%; height: 100%; min-height: inherit; position: absolute; top: 0; left: 0;}
.panel-inner-wrapper.no-image {text-align: inherit; color: inherit;}
.panel-inner-wrapper p.action-button {text-align: center;}

/* Edit link */
.edit-panel a {background: rgba(0, 0, 0, 1) none repeat scroll 0 0; color: #fff !important; display: table-caption; margin-top: -3rem; opacity: 0.2; padding: 0.5rem 1rem; white-space: nowrap; position: relative; z-index: 1000;}
.edit-panel a * {color:#fff;}

/* Children as Slider */
.panel-slider.slick-slider {padding: 0;}
.panel-slider .panel-inner-wrapper {padding-left: 4rem; padding-right: 4rem;}

.slick-prev, .slick-next {z-index: 10; position: absolute; display: block; line-height: 0; font-size: 0; cursor: pointer; background: transparent !important; color: transparent; top: 50%; margin-top: -2.5rem; padding: 0; border: none; outline: none;}
.slick-prev:hover, .slick-prev:focus, .slick-next:hover, .slick-next:focus {outline: none; background: transparent; color: transparent;}
.slick-prev:hover:before, .slick-prev:focus:before, .slick-next:hover:after, .slick-next:focus:after {opacity: 1;}
.slick-prev.slick-disabled:before, .slick-next.slick-disabled:before {opacity: 0.25;}

.slick-prev:before, .slick-next:after {font-family: "slick"; font-size: 5rem; line-height: 1; color: white;}

.slick-prev {left: 25px;}
[dir="rtl"] .slick-prev {left: auto; right: 25px;}
.slick-prev:before {content: "‹";}
[dir="rtl"] .slick-prev:before {content: "›";}

.slick-next {right: 25px;}
[dir="rtl"] .slick-next {left: 25px; right: auto;}
.slick-next:after {content: "›";}
[dir="rtl"] .slick-next:after {content: "‹";}

/* Children as Tiles */
.panel-tiles .tile {display: inline-block; padding: 0; min-height: 300px; overflow: hidden; position: relative; border: 4px solid transparent;}
.panel-tiles .tile .panel-wrapper, .panel-tiles .tile .panel-inner-wrapper {height: inherit; min-height: inherit;}
.panel-tiles .panel-wrapper.video {height: 100%; padding: 0;}

/* Default recipe */
.default .link {display: block;}

/* Custom styles for specific recipes */
.panel-wrapper.half_image {position: relative; overflow: hidden;}
.panel-wrapper.half_image .panel-inner-wrapper > .cell {padding-top: 0; padding-bottom: 0;}
.panel-wrapper.half_image .image {background-position: center center; background-repeat: no-repeat; background-size: cover; height: 200px; width: 110%; margin-left: -1rem;}
.panel-wrapper.half_image .content {padding-top: 0.975rem; padding-bottom: 0.975rem;}

.panel-wrapper.recent_posts .image {display: table; height: 300px; width: 100%; background-position: center center; background-size: cover; background-repeat: no-repeat; text-align: center;}
.panel-wrapper.recent_posts .title {margin-top: 1rem; text-transform: uppercase;}
.panel-wrapper.recent_posts .content {margin-top: 1rem;}

.panel-wrapper.tile_menu .cell {display: inline-block; padding: 0; height: 250px; overflow: hidden; position: relative; border: 4px solid transparent;}
.panel-wrapper.tile_menu .image {display: table; height: 100%; width: 100%; background-position: center center; background-size: cover; background-repeat: no-repeat;}
.panel-wrapper.tile_menu .image::before {content: ''; height: 100%; width: 100%; position: absolute; top: 0; left: 0; background-color: rgba(0,0,0,0.25);}
.panel-wrapper.tile_menu .link {display: table-row;height: 100%;-moz-transform: translateY(-0%); -ms-transform: translateY(-0%); transform: translateY(-0%)}
.panel-wrapper.tile_menu span {display: table-cell; vertical-align: middle;}

.panel-wrapper.video {height: 300px;}
.panel-wrapper.video .cell {display: inline-block; padding: 0; height: 100%; overflow: hidden; position: relative; text-align: center;}
.panel-wrapper.video .wrapper {display: block; position: absolute; width: 100%; height: 100%;}
.panel-wrapper.video .link {display: block; position: absolute; width: 100%; height: 100%;}
.panel-wrapper.video .link .fa {color: #E62117; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}

/* Medium and up */
@media only screen and (min-width: 40em) { /* <-- min-width 640px - medium screens and up */	
    .panel-wrapper.half_image .image {background-position-x: left; height: 100%; position: absolute; width: calc(50% + 0.46875rem); top: 0; left: 0;}
    .panel-wrapper.half_image .image-right > .image {background-position-x: right; left: auto; right: 0;}
    .panel-wrapper.half_image .content {float: right; padding: 0.975rem; width: 50%;}
    .panel-wrapper.half_image .image-right .content {float: left;}
    .panel-wrapper.tile_menu .cell {border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: none; border-bottom: none;}
    .panel-wrapper.video {height: 500px;}
}

/* Large and up */
@media only screen and (min-width: 64em) { /* <-- min-width 1024px - large screens and up */
    .panel-wrapper.video {padding-top: 2rem; padding-bottom: 2rem;}
    .panel-wrapper.video {height: 600px;}
}

/* END Panels */

/* End Default Styles - BEGIN EDITING BELOW THIS LINE */

/* Medium and up */
@media only screen and (min-width: 40em) { /* <-- min-width 640px - medium screens and up */
    nav.top-bar {min-height: 6rem;}
}

/* Large and up */
@media only screen and (min-width: 64em) { /* <-- min-width 1024px - large screens and up */

}

@media print {
	a[href]:after {content:""}
}

.span-event-status{
	position: absolute;
	right: 0;
    top: 0;
    z-index: 4;
    color: #ffffff;
    padding: 0.1rem 0.3rem;
    font-size: 1rem;
	text-transform: uppercase;
}


/* Main nav Sub-menu:START */


/*Parent nav items with children*/
#row-inner-top ul.menu.dd_main_menu li.has_children{
    position: relative;
}

/* Highlighed line below nav item with children */
#row-inner-top .dd_main_menu>li.has_children>a.show_highlight:after{
    content: "";
    width: 45px;
    width: calc( 100% - 0.9rem );
    position: absolute;
    
    left: 50%;
    transform: translateX(-50%);

    bottom: 0;
    height: 2px;
    background-color: #fff;
    opacity: 1; 
}

/* Override default one level menu active border */
.menu.dd_main_menu ul a:hover, 
.menu.dd_main_menu ul .active a {
    border-bottom:none; 
}


/*Defaults*/
#row-inner-top ul.sub-menu{
    background-color: #555;
}
#row-inner-top ul.sub_sub_menu{
    background-color: #444;
}

/*Sub menu UL block*/
#row-inner-top .menu .sub-menu{
    display: none;
    position: absolute;
    margin-left: 0;
    margin-top:14px;
    padding: 10px 0px;
    left: 0.5rem;
}

/*Sub menu UL>li */
#row-inner-top .menu .sub-menu>li{
    min-width: 185px;
}

#row-inner-top .menu .sub-menu>li a{
    padding: 7px 15px;
    width: 100%;
}

/*Relative container for absolute child sub-sub menu*/
#row-inner-top .menu .sub-menu>li{
    position: relative;
    width: 100%;
}

/* Level 2 - Grandchildren sub-sub menu */
#row-inner-top .menu .sub_sub_menu{
    display: block;
    position: absolute;

    margin-left: 0px;
    margin-top: -10px;

    left: 100%;

    padding: 10px 0px;
}

/*Grand child indictor*/
#row-inner-top .has_grand_children>a:after{
    content: "";
    position: absolute;
    right: 15px;
    top: 45%;

    border: solid white;
    border-width: 0 3px 3px 0;
    display: inline-block;
    padding: 3px;
    transform: rotate(-45deg) translateY(-50%);
    -webkit-transform: rotate(-45deg) translateY(-50%);
}    


/*grandchild li */
#row-inner-top .menu .sub_sub_menu>li{
    min-width: 185px;
    width: 100%;
}

#row-inner-top .menu .sub_sub_menu>li a{
    padding: 7px 15px;
    width: 100%;
}

/*Sub-menu text items - align/size*/
#row-inner-top .menu>li ul.sub-menu li{
    z-index:100;
    justify-content: flex-start;
    font-size: 14px;
}

/*hover for all links in sub menus */
#row-inner-top .menu ul.sub-menu>li:hover>a,
#row-inner-top .menu ul.sub_sub_menu>li:hover>a{
    opacity: 1;
}



#row-inner-top ul.menu ul.sub-menu:after{
    content:"";
    position:absolute;
    top:-14px;
    width:100%;
    height:calc(100% + 24px);  
    z-index:-1;
}

/* Mobile menu */
.off-canvas ul.sub-menu{
    list-style:none;
    text-transform:capitalize;
    margin-left: 12px;
}

.off-canvas ul.sub-menu a{
    padding: .45rem 1rem;
}

.off-canvas ul.sub_sub_menu {
    list-style:none;
    text-transform:capitalize;
}

.off-canvas ul.sub-menu a{
    line-height: 1.1em;
    font-size: 15px;
}    

/*separate the sub sub menus vertically*/
.off-canvas ul.sub-menu .has_grand_children{
    padding-top: 8px;
}

.off-canvas ul.sub-menu .has_grand_children>a{
    padding-bottom: 0.2rem;
}

/*mobile menu indicator sub sub menu*/
.off-canvas ul.sub_sub_menu li{
    position: relative;
}

.off-canvas ul.sub_sub_menu li a{
    min-width: 170px;   
}

.off-canvas ul.sub_sub_menu li:before{
    content: "";
    position: absolute;
    border: solid #97bad2;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 3px;
    transform-origin: center;
    top: 15px;
    left: 0;

    transform: rotate(-45deg) translateY(-50%);
    -webkit-transform: rotate(-45deg) translateY(-50%);
/*    transform: rotate(-45deg);
    -webkit-transform: rotate(-45deg);*/
}
/* Main nav Sub-menu:END */
/*3wf-002: Opaque overlay on nav to ensure legibility of menu */
header .menu-items ul.menu>* {
    z-index: 10;
    background: none;

}

/* Added for CV-2022-subsites structure differences in nav*/
header nav>div:first-child,
header .logo-section,
header #main-nav-search-form{
    z-index: 100000;
}

/* top to bottom */
.home header:after {
    content: "";
    position: absolute;
    z-index: 5;
    width: 100%;
    left: 0;
    height:20vh;
    top: -25px;

    background: linear-gradient(180deg, rgba(0, 0, 0, 0.50) 0%, rgba(0, 0, 0, 0.50) 60%, rgba(0, 0, 0, 0.1) 100%);
    box-shadow: 1px 20px 43px 20px rgba(0, 0, 0, 0.1);
}

/* 3wf-009 Concourse site - Base styles for optional Gutenberg block styling */
/* Heading */
.con_accordion .aab__accordion_heading .aab__accordion_title{
    color:white !important;
}

/* Icon */
.con_accordion .aab__accordion_icon{
    color:white !important;
}

/* body */
.con_accordion .aab__accordion_body {
    color:white !important;
}

/*General - unordered list */
.con_list{
    color:white !important;
}


/*Concourse footer styles*/
#row-footer .con_footer_wrap {
    padding: 0;
    max-width: 932px;
    margin-top: 32px;
}

#row-footer p.con_foot_council_text{
    color: #fff;
    max-width: 370px;
    padding-left: 20px;
    border-left: 6px solid #F68E1E;
    margin-bottom: 24px;
}

.con_foot_council_logo{
    background-color: #fff;
    margin-bottom: 24px;
}

#row-footer .con_foot_ack_text_wrap{
    color: #fff;
}

#row-footer .con_foot_ack_text_wrap p{
    padding: 0;
}

#row-footer .con_foot_ack_text_wrap a{
    text-decoration: underline;
    color: white;
}

#row-footer .con_foot_ack_text_wrap a:hover{
    text-decoration: none;
}



/*Comedy festival sites - Search/Filters*/
.comedy_festival.search-results .main-section{
    margin-top: 40px;
}


/*search title*/
.comedy_festival .search-title{
    color: #fff;
    padding-left: 10px;
}

/*view all events link*/
.cfest_search_all_link_wrap{
    padding-left: 10px;
}

a.cfest_view_all_events{
    font-size: 1rem;
    font-weight: 600;
    text-transform: uppercase;
    text-decoration: underline;
    text-underline-offset: 4px;
    color:#ffffff;
    color:var(--cfest_search_link_colour);
}

/*search results page override*/
.search-results a.cfest_view_all_events{
    color:#ffffff;
}

a.cfest_view_all_events:hover{
    text-decoration: none;
    opacity: 1;
}

/*wrap for search/date & genre/venue*/
.comedy_festival .search-filters{
    /*flex-wrap: initial;*/
    flex-direction: column;
}

/*Search/Date - Form*/

.comedy_festival .search-filters .h-search-form{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    position: relative;
    margin-bottom: 1em;
}

/*Search + Search Icon wrap*/
.cfest_search_wrap{
    display: flex;
    width: 63%;
}

.cfest_search_filter_wrap .inp-category-cont{
    width: 100%;
}

.cfest_search_wrap,
.cfest-date-search-btn
{
    margin-bottom: 1em;
}

.cfest_filter_origin,
.cfest_filter_genre,
.cfest_filter_venue{
    color: #ffffff;
}

/*Always show of venue dropdown in search / filters*/
.cfest_home_search_filter_wrap_outer .cfest_filter_venue {
    display:block !important;
}

.cfest_filter_genre{
    margin-right: 0;
}

.cfest_filter_venue{
    margin-right: 0;
}


/*Search input field*/
.comedy_festival .search-filters #s{
    border: 2px solid #ffffff;
    border-width: 0 0 3px;
    background-color: white;
    padding: 0.45em 0.425em 0.125em;
    width: 100%;
    float: left;
    box-shadow: unset;
    color: black;
    margin-right: 10px;
    margin-top: 0;
    margin-bottom: 0;
}

/*events page magnifying glass÷*/
.comedy_festival .search-filters .search-submit{
    color: black;
    font-size: 0.7rem;
    height: 40px;
    margin-left: -50px;
    border-left: 1px solid black;
    padding-left: 8px;
    border-radius: 0;
    cursor: pointer;
}

/*Search button rollover*/
.comedy_festival .search-filters .search-submit:hover{
    opacity: 0.7;
}

/*calendar search btn*/
.comedy_festival .search-filters .cfest-date-search-btn {
    margin: 0 0 0 2%;
    height: 39px;
    width: 35%;
    background-color: #fff;
}

.comedy_festival .search-filters .cfest-date-search-btn:hover .fa-calendar-alt{
    opacity: 0.7;
}

/*calendar search btn - label*/
.comedy_festival .cfest-date-search-btn label{
    position: relative;
    text-align: left;
    margin-right: 10px;
    padding-left: 10px;
    color: #000;
    padding-top: 3px;
}

/*Calender search btn - date text*/
.cfest_date_text{
    font-size: 16px;
    line-height: 1.5em;
}

/*The calendar font-awesome SVG */
.comedy_festival .cfest-date-search-btn .fa-calendar-alt{
    position: absolute;
    right: 0;
    font-size: 1.8em;
    top: 1px;
}

/*Calendar input tag*/
#comedy-date-search-ctrl{
    right: 180px;
}


/*Genre/Venue selects*/
.comedy_festival .search-filters  .search-options .inp-category{
    min-width: inherit;
    margin-bottom: 12px;
    position: relative;
    margin-top: 0;
}

.comedy_festival .search-filters label p {
    margin: 0 0 0.5rem 0;
}


/* min-width 640px - medium screens and up */
@media only screen and (min-width: 40em) { 
    /*Search/Date - Form*/
    .comedy_festival .search-filters .h-search-form{
        padding-left: 6px;
        padding-right: 6px;
        margin-bottom: 2em;
    }

    .cfest_search_wrap,
    .cfest-date-search-btn
    {
        margin-bottom: 2em;
    }

    .cfest_search_filter_wrap .inp-category-cont{
        width: 49%;
    }

    .cfest_search_filter_wrap .cfest_extra_filters .inp-category-cont{
        width: calc(32%);
    }

    .cfest_filter_origin{
        margin-right: 2%;
    }

    .cfest_filter_genre{
        margin-right: 2%;
    }


    .cfest_filter_venue{
        margin-right: 0;
    }

    /*Both forms - Search/Calendar and Venue/Genre */
    .comedy_festival .search-filters form{
        /*align-self: center;*/
    }

    /*Genre/Venue selects*/
    .comedy_festival .search-filters  .search-options .inp-category{
        margin-bottom: 0;
    }
}

/*min-width 1024px - large screens and up*/
@media only screen and (min-width: 64em){
    /*wrap for search/date & genre/venue*/
    .comedy_festival .search-filters{
        /*flex-wrap: initial;*/
        flex-wrap: nowrap;
        flex-direction: row;
    }


    /*Search/Date - Form*/
    .comedy_festival .search-filters .h-search-form{
        width: 100%;
    }

    /*Search field*/
    .cfest_search_wrap{
        width: 31%;
        margin-right: 1%;
    }

    /*Date filter*/
    .comedy_festival .search-filters .cfest-date-search-btn{
        width: 16%;
        margin-right: 1%;
        margin-left: 0;
    }

    /*Genre + Venue filters*/
    .cfest_search_filter_wrap .inp-category-cont{
        width: 25%;
    }

    .cfest_search_filter_wrap .cfest_extra_filters .inp-category-cont{
        width: calc(49% / 3);
    }

    .cfest_filter_origin{
        margin-right: 1%;
    }

    .cfest_filter_genre{
        margin-right: 1%;
    }

    .cfest_filter_venue{
        margin-right: 0;
    }
}

/*Comedy Festival Featured Pages*/

/*Main container and inner grid-x*/
.cfest_featured_container{
    color: #44c2cc;
}

.cfest_featured_wrap{
    /*padding: 15px;*/
    background-color: #333;
    background-color: var(--cfest_featured_bg_colour);
    flex-flow: column nowrap;
}



/*Featured carousel*/
.cfest_featured_swiper{
/*    
    width: 58%;
    margin-right: 2%;
    height: 100%;
*/

    overflow-x: hidden;
    margin-bottom: 40px;
    width: 100%;
}

/*Swiper bullets pagination*/
.cfest_featured_swiper_pagination{
    text-align: center;
    margin-top: 10px;
}

.cfest_featured_swiper_bullet{
    background: #cccccc;
    display: inline-block;
    padding: 5px;
    margin: 0 8px;
    border-radius: 14px;
    cursor: pointer;
}

.cfest_featured_swiper_bullet_active{
    background: var(--cfest_featured_heading_colour);
}

/*.grid-container .cfest_featured_wrap.grid-x{
    max-width: 60rem;
}*/


.cfest_featured_item_image_wrap{

}

/*Featured Image*/
.cfest_featured_item_image{
    object-fit: cover;
    width: 100%;
    height: auto;
    border-radius: 4px 4px 0 0;
}

/*Featured content bar below image*/
.cfest_featured_item_content_wrap{
    height: 86px;    
    background: #464759;
    background: var(--cfest_featured_bar_colour);
    text-align: center;
    padding-top: 15px;
    padding-bottom: 10px;
    padding-left: 5px;
    padding-right: 5px;

    min-height:96px;
    max-height:200px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    border-radius: 0 0 4px 4px;
}

/*Heading*/
.cfest_featured_item_content_wrap h4{
    text-transform: uppercase;
    font-weight: 700;
    color: #f5c15b;
    color:  var(--cfest_featured_heading_colour);
    font-size: 22px;
}

/*Subheading*/
.cfest_featured_item_content_wrap h5{
    /*color: #ffffff;*/
    /*color: #0C50A1;*/
    color:  var(--cfest_featured_subheading_colour);
    font-weight: 600;
    font-size: 0.9rem;
}

.cfest_featured_item_content_wrap p{
    color: #ffffff;
}

/*Remove margin from last item in content*/
.cfest_featured_item_content_wrap p:last-child{
    margin-bottom: 0;
}

@media only screen and (min-width: 64em){
    .cfest_featured_item_content_wrap h4 {
        font-size: 28px;
        letter-spacing:-0.3px;
    }
    .cfest_featured_item_content_wrap h5 {
        font-size: 1rem;
    }
}

.cfest_featured_item_link{
    display: inline-block;
    position: relative;
    width: 100%;
}


/*Featured Sidebar*/
.cfest_featured_sidebar{
    padding: 0;
    width: 100%;
}

.cfest_featured_sidebar_item{
    padding-bottom: 16px;
    margin-bottom: 16px;
    height: auto;
    display: flex;
    flex-direction: row;
    border-bottom:  1px solid #0C50A1;
    border-bottom:  1px solid var(--cfest_featured_sidebar_divider_colour);
}

.cfest_featured_sidebar_item:first-child{
    border-top: 1px solid var(--cfest_featured_sidebar_divider_colour);
    padding-top: 24px;
}

.cfest_featured_sidebar_item_link{
    display: flex;
    flex-direction: column;
    height: 100%;
    width: 100%;
    align-items: start;
}

.cfest_featured_sidebar_item_content_wrap {
    width: 50%;
    color: #f06a51;
    height: 100%;
    padding-right: 10px;
}

.cfest_featured_sidebar_item_image_wrap{
    width: 50%;
    height: auto;
    width: 100%;
    overflow: hidden;
}

.cfest_featured_sidebar_item_image_wrap img{    
    border-radius: 3px;
}

/*Heading*/
.cfest_featured_sidebar_item_content_wrap h4{
    font-size: 11px;
    margin-top: 16px;
    line-height: 1em;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    font-weight: 600;
    color: #F16953;
    color: var(--cfest_featured_sidebar_heading_colour);
}

/*Subheading*/
.cfest_featured_sidebar_item_content_wrap h5{
    /*display: none;*/
    color: #F5C15B;
    font-size: 16px;
    line-height: 1.39em;
    text-transform: uppercase;
    font-weight: 600;
    color: var(--cfest_featured_sidebar_subheading_colour);
}

.cfest_featured_sidebar_item_content_wrap p{
    margin-top: 6px;    
    font-size: 16px;
    line-height: 1.25em;
    color: #44c2cc;
}


.cfest_featured_sidebar_item_img{
    width: 100%;
    height: auto;
}

.cfest_featured_sidebar_item_content_wrap{
    width: 100%;
}

/*top row for comedy festivals*/
.home.comedy_festival #row-top{
    min-height: 35rem;
    margin-bottom: -25rem;
}

/*Main content section*/
.home.comedy_festival .main-section{
    z-index: 50;
    position: relative;
    background: none;
}

.cfest_home_search_filter_wrap_inner{
    background: #000;
    background: var(--cfest_search_bg_colour);
    padding: 15px 10px 0px;
    border-radius: 4px 4px 0 0;
} 

/*Comedy Festival Featured - Responsive styles*/
/* min-width 768px - medium screens and up */
@media only screen and (min-width: 48em) {
    .cfest_featured_swiper{
        width: 58%;
        margin-right: 2%;
        overflow-x: hidden;
        height: 100%;
        margin-bottom: 0
    }


    .cfest_featured_wrap{
        flex-flow: row wrap;
        padding: 15px;
    }


    /*Featured content bar below image*/
    .cfest_featured_item_content_wrap{
        padding-top: 10px;
        height: calc(380px - 25vw); 
        max-height: 403px;
        display:flex;
        flex-direction:column;
        align-items:center;
    }


    /*Heading*/
    .cfest_featured_item_content_wrap h4{
        font-size: 22px;
    }

    /*Subheading*/
    .cfest_featured_item_content_wrap h5{
        font-size: 0.95rem;
        width: 70%;
        max-width:470px;
    }

    /*sidebar*/
    .cfest_featured_sidebar{
        width: 40%;
        padding-left: 0;
        padding-right: 0;
    }

    .cfest_featured_sidebar .cfest_featured_sidebar_item:last-of-type {
         margin-bottom:0px;
    }


    .cfest_featured_sidebar_item{
        padding-bottom: 20px;
        margin-bottom: 20px;
        height: 134px;
    }

    .cfest_featured_sidebar_item_image_wrap{
        min-height:75px;
        max-height:100px;
        width: 50%;
        height: 100%;
    }

    .cfest_featured_sidebar_item:first-child{
        border-top: none;
        padding-top: 0;
    }

    .cfest_featured_sidebar_item_link{
        align-items: center;
        flex-direction: row;
    }



    /*Heading*/
    .cfest_featured_sidebar_item_content_wrap h4{
        font-size: 10px;
    }

    /*Heading*/
    .cfest_featured_sidebar_item_content_wrap h5{
        font-size: 12px;
    }

    .cfest_featured_sidebar_item_img{
        width: 100%;
        max-width: 250px;
        height: auto;
    }


    .cfest_featured_sidebar_item_image_wrap{
        width: 50%;
        height: 100%;
    }
    .cfest_featured_sidebar_item_content_wrap{
        width: 50%;
    }

} 

/*min-width 1024px - large screens and up*/
@media only screen and (min-width: 64em){

    /*Featured Image*/
    .cfest_featured_item_image{
        object-fit: cover;
        width: 100%;
        max-height: 575px;
    }

    /*Featured content bar below image*/
    .cfest_featured_item_content_wrap{
        padding-top: 10px;
        padding-bottom: 10px;
        height: calc(400px - 22vw);
        max-height: 420px;
    }


    /*Heading*/
    .cfest_featured_item_content_wrap h4{
        font-size: 32px;
    }

    /*Subheading*/
    .cfest_featured_item_content_wrap h5{
        font-size: 1.1rem;
    }

    /*Sidebar*/

    /*Heading*/
    .cfest_featured_sidebar_item_content_wrap h4{
        font-size: 11px;
    }

    /*Heading*/
    .cfest_featured_sidebar_item_content_wrap h5{
        font-size: 16px;
    }

    .cfest_featured_sidebar_item{
        padding-bottom: 16px;
        margin-bottom: 24px;
        height: 160px;
    }

    .cfest_featured_sidebar_item_content_wrap {
        padding-right: 20px;
    }

    .cfest_featured_sidebar_item_image_wrap{
        max-height: 140px;
    } 

    .cfest_featured_item_image{
        max-height: none;
    }

}

/*min-width 1200px - large screens and up*/
@media only screen and (min-width: 75em){
    .cfest_featured_sidebar_item{
        height: 170px;
    }
}

/*min-width 1376px - wider screens*/
@media only screen and (min-width: 86em){
    .cfest_featured_sidebar_item{
        height: 180px;
    }
}


/*Comedy festival - Homepage Banners*/
#row-banners{
    margin-top: 5rem;
    margin-bottom: 6rem;
}

#row-inner-banners{
    display: flex;
    max-width: 80rem;
    justify-content: space-between;
}

.cv_banner_item_wrap{
    flex-basis: calc(50% - 2rem);
    margin: 0 10px;
    margin-bottom: 1.2em;
    flex-grow: 1;
}


.cv_banner_item_wrap a{
    width: 100%;
    height: 100%;
    display: inline-block;
    position: relative;
}

.cv_banner_item_wrap img{
    width: 100%;
    border-radius:  6px 6px 0 0;
    aspect-ratio:1;
    height: auto;
    object-fit: cover;
    object-position: 0 0
}

.cv_banner_item_wrap .home_banner_text{
    display: inline-block;
    background:rgba( 61,61,61,1);
    padding: 0.3rem 0.4rem;
    color:white;
    text-transform: uppercase;
    font-weight: 600;
    font-family: "Monsterrat", sans-serif;
    margin: 0;
    width: 100%;
    font-size: 0.8rem;
    border-radius: 0 0 6px 6px;
    min-height: 2em;
    left:0;
}

/* min-width 640px - medium screens and up */
@media only screen and (min-width: 40em) {    
    .cv_banner_item_wrap{
        flex-basis: calc(25% - 2rem);
    }
}

/* min-width 768px - medium screens and up */
@media only screen and (min-width: 48em) {
    .cv_banner_item_wrap{
        margin-bottom: 1em;
    }

    .cv_banner_item_wrap .home_banner_text{
        font-size: 0.85rem;
    }

}

/*min-width 1024px - large screens and up*/
@media only screen and (min-width: 64em){
    .cv_banner_item_wrap .home_banner_text{
        font-size: 1rem;
    }
}

/*min-width 1200px - large screens and up*/
@media only screen and (min-width: 75em){
}

/* hide event status if empty*/
.span-event-status.empty_status{
    padding:0;
}

/*Cfest Sponsors*/
.cfest_sponsors_container{
    margin-bottom: 40px;
}

.cfest_sponsors_inner_wrap{
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 40px; 
    row-gap: 54px;
    justify-content: space-around; 
    align-items: center; 
    margin-bottom: 40px;
}

.cfest_sponsor_item {
}

.cfest_sponsor_item img{
    height: 54px; 
    width: auto; 
}

.cfest_sponsors_title{
    width: 100%;
    text-align: center;
    margin-bottom: 24px;
    
}

.cfest_sponsors_title h4{
    color:#ffffff;
}

/*min-width 768px - medium screens and up */
@media only screen and (min-width: 48em) {

    .cfest_sponsors_container{
        margin-bottom: 70px;
    }

    .cfest_sponsor_item img{
        height: 80px;
    }
}

/*min-width 1024px - large screens and up*/
@media only screen and (min-width: 64em){
    .cfest_sponsor_item img{
        height: 100px;
    }
}

/*Comedy Festivals - sort filter:START*/
.cfest_search_all_sort_filter_wrap {
    width: 100%;
    justify-content: space-between;
    margin-bottom:1em;
    order:2;
}

.cfest_filters_and_search{
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    order:1;
}

.cfest_sort_filter_wrap{
    display:flex;
    width:100%;
    justify-content:end;
    margin-top:1em;  
    align-items: end; 
}

.cfest_sort_filter_wrap p{
    margin-right: 0.7em;
}

.page-home .cfest_sort_filter_wrap {
    display:none;
}

.cfest_sort_filter_text {
    font-size: 16px;
    color: #fff;
    text-transform: uppercase;
    font-weight: 600;
    margin-left:0.5em
}

.cfest_search_all_link_wrap {
    display: flex;
    width: auto;
    align-items: center;
    margin-bottom: 1em;
    order: 0;
}


.cfest_sort_select {
    width:200px;
}

.cfest_search_all_link_wrap {
    width:100%;
}

@media only screen and (min-width: 40em) { 

    /*All events*/
    .cfest_search_all_sort_filter_wrap{
        order:1;
        width:auto;
    }

    /* Filters + Search */
    .cfest_filters_and_search{
        order: 2;
    }

    .cfest_search_all_link_wrap {
        width:auto;
        align-items:center;
        
    }
    
    .cfest_sort_filter_wrap{
        width:auto;
        margin-top:0;
    }

    .cfest_sort_filter_text {
        margin-right:1em;
    }    
}

.cfest_search_all_link_wrap p{
    margin-bottom:0;
    line-height: 1;
}

.cfest_search_form{
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: space-between;
}
/*Comedy Festivals - sort filter:END*/


/*Comedy festivals - Alphanumeric search*/
.cfest_alphabet_search_wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    width: 100%;
    padding: 6px 4px;
    background-color: #fff;
    border-radius: 8px;
}

.cfest_aplphabet_search_title{
    color: #fff;
    font-size: 0.875rem;
    margin-bottom: 0.5rem;
}


/* Title starts - Hide the actual radio buttons */
input.cfest_title_starts_rb {
    display: none; 
}

label.cfest_title_starts_label {
    display: inline-block;
    padding-top:2px;
    text-align: center;
    margin:0;
    cursor: pointer;
    border-radius: 5px;
    transition: background-color 0.3s ease;
/*    width:calc(100% / 27);*/
    width: 2.5em;
    text-transform: uppercase;
}

input.cfest_title_starts_rb:checked + label {
    background-color:  #e3e3e3; /* Change background when selected */
}

label.cfest_title_starts_label:hover {
    background-color:  #e3e3e3;
}

/* <-- min-width 640px - medium screens and up */
@media only screen and (min-width: 40em){
    label.cfest_title_starts_label {
        width:calc(100% / 27);
    }

    .cfest_alphabet_search_wrap{
        margin-top: 1.5em;
    }
}

/* <-- min-width 1024px - large screens and up */
@media only screen and (min-width: 64em){
    .cfest_alphabet_search_wrap{
        margin-top: 0;
    }
}

/*Timeslots*/
.cfest_timeslot_search_wrap {
    margin-top: 2em;
    display: flex;
    flex-wrap: wrap;
    gap: 17px; /* spacing between buttons */
    background-color: #fff;
    padding: 3px 8px;
    width: 100%;  
    border-radius: 8px;  
}

.cfest_timeslot_pre_text{
    padding-top: 5px;
    font-size: 0.95em;
    margin-right: 4px;
}


/* Time slots - Hide the actual radio buttons */
input.cfest_time_slot_rb {
    display: none; 
}

label.cfest_time_slot_label {
    display: inline-block;
    padding: 4px 6px;
    text-align: center;
    margin:0;
    cursor: pointer;
    border-radius: 5px;
    transition: background-color 0.3s ease;
}

input.cfest_time_slot_rb:checked + label {
    background-color:  #e3e3e3; 
}

label.cfest_time_slot_label:hover {
    background-color:  #e3e3e3;
}

/*Custom Event Status rules*/
[data-event-status="fresh"].span-event-status.other {
    background-color: rgba(50,125,230,1);
}

/*Ensure concourse nav dropdown sits above search panel.*/
body.concourse.search #row-top{
    position: relative;
    z-index: 100;    
}

body.concourse.search .main-section{
    position: relative;
    z-index: 50;    
}

.footer_socials_wrap{
    padding-left: 10px;
}

/* Reset Font awesome overrides by chatbot conflicts*/
.footer_socials_wrap .fa-stack{
    display: inline-block;
    height: 2em;
    position: relative;
    width: 2.5em;
}

.footer_socials_wrap .svg-inline--fa.fa-stack-2x{
    height:inherit;
    width:inherit;
}

/*Share buttons styling */
.add_to_any_wrap{
    margin-bottom: 24px;
    opacity: 0.4;
    margin-left: -4px;
}

.add_to_any_wrap:hover{
    opacity: 1;
}

p.add_to_any_title{
    margin-left: 4px;
}

.comedy_festival footer#row-footer{
    border-radius: 8px 8px 0 0;
}

.comedy_festival  .dd_main_menu .sub-menu,
.comedy_festival  .dd_main_menu .sub_sub_menu{
    border-radius: 4px;
}

/* 
label.cv_disable select{
    pointer-events: none;
    background-color: #000000aa;
    color:#ccc;
    border: 1px #00000000;
}
*/


.comedy_festival .main-section .grid-container > .grid-x{
    max-width:100rem;
}
.comedy_festival #row-inner-banners{
    max-width: 100rem;
}

.comedy_festival.event-template-default .main-section .grid-container > .grid-x,
.comedy_festival.page-template .main-section .grid-container > .grid-x{
    max-width:80rem;
} 


/* CARDS */
.comedy_festival #row-search .cell{
    margin: 0 0.5rem 0.4rem 0.5rem;
}

/* min-width 640px - medium screens and up */
@media only screen and (min-width: 40em) {        
    .comedy_festival #row-search .cell {
        width: calc(50% - 1rem);
        margin: 0 0.5rem 1rem 0.5rem;
    }
}

/* min-width 768px - medium screens and up */
@media only screen and (min-width: 48em) {        
    .comedy_festival #row-search .cell {
        width: calc(33% - 1rem);
    }
}

/* min-width 1024px - medium screens and up */
@media only screen and (min-width: 64em) {        
    .comedy_festival #row-search .cell {
        width: calc(25% - 1rem);
        margin: 0 0.5rem 1.2rem 0.5rem;
    }
}

.comedy_festival .le-card-container .grid-x>a{
    margin-bottom: 0.8em;
    display:flex;
}

.comedy_festival .le-card-container .card{
    background-color: rgba(61, 61, 61);
}
.comedy_festival .le-card-container .cell .card .image{
    order:0;
    background-size: contain;
    aspect-ratio:16 / 9;
    height: auto !important;
    width:100%;
    background-repeat:no-repeat;
}
.comedy_festival .cfest_event_details {
    display: flex;
    flex-direction: column;
    justify-content:flex-end;
    max-width: 100%;
    order:1;
    background-color:#000;
    /* to ensure padding under and above*/
    background-color: rgba(61, 61, 61, 0.8);
    background:none;
    padding: 4px 0;
}

/* -- DATES --*/
/* .cfest_event_details .span-a{ */
.comedy_festival .evt-card .card.layout-f .span-a {
    font-size:0.7rem;
    letter-spacing: -0.2px;
    position:relative;
    text-align:left !important;
    background:none;
    color:#ccc;
}
@media only screen and (min-width: 40em){
    .comedy_festival .evt-card .card.layout-f .span-a {
        letter-spacing:0;        
    }
}

@media only screen and (min-width: 64em){
    .comedy_festival .evt-card .card.layout-f .span-a {
        font-size:0.8rem;
    }
}

/* -- TITLE --*/
/*.cfest_event_details .span-b {*/
.comedy_festival .evt-card .card.layout-f .span-b {
    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: normal;
    max-width: 100%;
    font-size: 0.8rem;
    line-height: 1.1em;
    max-height: 2.5em;
    letter-spacing:-0.2px;
    position:relative;
    background:none;
}
/* -- EVENT STATUS --*/
.comedy_festival .span-event-status{
    font-size:0.7rem;
}

@media only screen and (min-width: 40em){
    .comedy_festival .evt-card .card.layout-f .span-b{
        font-size:0.8rem;
        padding-right:0.5em; 
        line-height: 1.3em;
        max-height: 2.95em;  
    }

    .comedy_festival .span-event-status{
        font-size:0.8rem;
    }
}

@media only screen and (min-width: 64em){
    .comedy_festival .evt-card .card.layout-f .span-b{
        font-size:1rem;
        padding-right:0.5em;   
        max-width: 98%;
        line-height: 1.4em;
        max-height: 3.18em;
    }

    .comedy_festival .span-event-status{
        font-size:1rem;
    }
}
