/* fix any strange horizontal scroll bars */
html{
overflow-x: hidden;
}

/* helpers */
.color-black{
color: #222;
}
.primary-color{
color: #9e83b6;
}
.primary-bg-color{
background-color: #a191f1;
}
.text-center{
text-align: center;
}
.display-inline-block{
display: inline-block;
}
.padding-lg{
padding: 30px;
}
.padding-top-lg{
padding-top: 30px;
}
.padding-btm-lg{
padding-bottom: 30px;
}
.padding-btm{
padding-bottom: 20px;
}
.no-margin{
margin: 0;
}
.no-margin-top{
margin-top: 0;
}
.margin-top{
margin-top: 20px;
}
.margin-btm{
margin-bottom: 10px;
}
.margin-btm-lg{
margin-bottom: 25px;
}
.margin-btm-sm{
margin-bottom: 5px;
}
.light-grey-bg{
background: #f7f7f7;
}
.full-width-row{
width: 100vw;
position: relative;
left: 50%;
right: 50%;
margin-left: -50vw;
margin-right: -50vw;
}
.no-pointer-events{
pointer-events: none;
}

/* single event page styles */
.single-product .inner-page-wrap{
overflow-x: visible !important;
}
.single-product div.product div.summary{
position: -webkit-sticky;
position: sticky;
top: 200px;
}
.single-product .event-header{
padding: 30px;
margin-bottom: 50px;
text-align: center;
background-blend-mode: overlay;
background-size: cover;
background-position: center;
background-color: rgba(0,0,0,0.4);
color: #FFF;
height: 400px;
}
.single-product .event-header .content{
position: relative;
top: 50%;
transform: translateY(-50%);
}
.single-product .event-header .categories{
padding: 5px 10px;
margin-bottom: 15px;
display: inline-block;
}
.single-product .event-header .categories a{
color: #FFF;
}
.single-product .event-header .date{
margin-bottom: 10px;
}
.single-product .event-header .title{
margin: 0;
color: #FFF;
font-weight: 300;
font-size: 42px;
line-height: 52px;
}
@media screen and (max-width: 767px)
{
    .single-product .event-header .title{
        font-size: 32px;
        line-height: 50px;
    }
    .single-product .event-header{
        height: auto;
    }
    .single-product .event-header .content{
        top: auto;
        transform: none;
    }
}


.single-product .inner-page-wrap{
margin-bottom: 0;
overflow-x: hidden;
}
.single-product section .content-wrap.col-sm-offset-2{
margin-left: 0;
}
.single-product .post-info{
display: none;
}
.single-product .sf-share-counts{
text-align: center;
padding-top: 5px;
}
.single-product .sf-share-counts h3{
display: inline-block;
float: none;
}
.single-product .event-team-members .team-members{
display: flex;
justify-content: center;
}

/* event card */
.event-card{
overflow: auto;
background: #F7F7F7;
position: relative;
margin-bottom: 20px;
-moz-transition: all .2s;
-webkit-transition: all .2s;
-o-transition: all .2s;
transition: all .2s;
}
.event-card:after{
position: absolute;
content: '';
width: 2px;
background: #FFF;
top: 0;
bottom: 0;
left: 223px;
}
a .event-card:hover{
background: #4f1ea6;
}
a .event-card:hover .date,
a .event-card:hover .meta,
a .event-card:hover .meta h2{
color: #FFF;
}
.event-card .date{
width: 225px;
text-align: center;
padding: 30px 0;
position: absolute;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
}
.event-card .date .day{
font-size: 97px;
line-height: 87px;
font-weight: bold;
margin-bottom: 5px;
}
.event-card .date .month-year{
}
.event-card .meta{
width: 100%;
padding: 30px 70px 30px 255px;
display: table;
}
.event-card .meta .wrap{
display: table-cell;
vertical-align: middle;
}
.event-card .meta .wrap.text .location{
position: relative;
padding-left: 20px;
}
.event-card .meta .wrap.text .location:before{
position: absolute;
display: inline-block;
font-style: normal;
font-variant: normal;
text-rendering: auto;
font-weight: 900;
-webkit-font-smoothing: antialiased;
content: '\f3c5';
font-family: 'Font Awesome 5 Free';
left: 0;
}
.event-card .meta .wrap.image{
padding-right: 30px;
width: 1px;
}
.event-card .meta .wrap.image img{
width: 200px;
height: 200px;
border-radius: 50%;
object-fit: cover;
max-width: none;
}
.event-card .meta .top-meta{
margin-bottom: 10px;
}
.event-card .meta h2{
margin: 0 0 10px 0;
font-size: 26px;
line-height: 29px;
color: #222;
}
.event-card .arrow{
position: absolute;
right: 0;
top: 0;
bottom: 0;
width: 40px;
text-align: center;
color: #FFF;
font-size: 25px;
}
.event-card .arrow .content{
position: relative;
top: 50%;
transform: translateY(-50%);
}
/* medium screen */
@media screen and (max-width: 992px)
{ 
    .event-card:after,
    .event-card .date{
        display: none;
    }
    .event-card .meta{
        padding-left: 30px;
    }
}
/* small screen */
@media screen and (max-width: 767px)
{    
    .event-card .meta .wrap{
        display: block;
    }
    .event-card .meta .wrap.image{
        width: 100%;
        margin-bottom: 20px;
    }
    .event-card .meta .wrap.image img{
        width: 100px;
        height: 100px;
    }
    .event-card .date{
        display: none;
    }
    .event-card .meta{
        padding-left: 30px;
        padding-top: 30px;
        padding-bottom: 30px;
    }
    .event-card .meta p{
        display: none;
    }
    .event-card .meta h2{
        margin-bottom: 15px;
    }
    .event-card .meta .location{
        display: block;
    }
}

/* helpers */
.event-card .margin-btm{
margin-bottom: 5px;
}

/* tciket name input styles */
.ticket-guest-names-input input:last-child{
margin-bottom: 30px;
}
.ticket-guest-names-input input.disabled{
border-color: #e3e3e3;
}

/* hide bits if external */
.single-product-ticket.external-event form.cart,
.single-product-ticket.external-event .top-meta-wrap{
display: none;
}
.single-product-ticket .external-event-btn{
width: 100%;
text-align: center;
}

/* hide price range */
.single-product-ticket .product-price-wrap{
display: none;
}

/* hide variation price display */
.single-product-ticket .woocommerce-variation.single_variation{
display: none !important;
}

/* remove massive gap under the varibale price select */
.single-product-ticket .reset_variations{
display: none !important;
}

/* hide default woo quantity but show our custom one */
.single-product-ticket .quantity{
display: none !important;
}
.single-product-ticket .number-of-tickets .quantity{
display: block !important;
}

/* make quantity full width */
.single-product-ticket .number-of-tickets .quantity{
float: none !important;
max-width: none !important;
margin-right: 0 !important;
}
.single-product-ticket .number-of-tickets .quantity input.qty{
width: 100% !important;
}
.single-product-ticket .number-of-tickets .qty-adjust{
position: absolute;
right: 0px;
border-left: 2px solid #000;
z-index: 9999;
}

/* make add to cart button full width */
.single-product-ticket .single_add_to_cart_button{
width: 100%;
}

/* sort line spacing in ticket name variation */
.woocommerce td.product-name dl.variation dd p{
line-height: 21px !important;
}
.woocommerce td.product-name .wc-item-meta .wc-item-meta-label,
.woocommerce td.product-name .wc-item-meta p{
line-height: 30px;
}

/* remove update cart options as names must be entered on teh single event page */
.woocommerce button[name="update_cart"]{
display: none !important;
}
.woocommerce .woocommerce-cart-form__contents .quantity .qty-adjust{
display: none;
}