/*
    ShoWare Responsive Design
    Martin Speer - 12/11/2014
    Based on concepts in Google's Material Design documents:
    
        http://www.google.com/design/spec/material-design/introduction.html

    Modifies desktop-oriented showare styles in style.css, structure.css

    Approach:

    Desktop -> Mobile -> Tablet
       
*/


*:not(.seat){
    background-image: none!important; /*prevent large background images from chewing up requests - these can be explicitly added if needed on mobile.*/
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
img{
    max-width:100%;
}
html, body, #page-wrap{
    max-width:100%;
    margin:0px;
    padding:0px;
}
/*browser fixes*/
input.button {
    /*sarari likes to design things*/
    -webkit-appearance: none;
}
#page-wrap{
    padding-top:4rem!important;
    margin:0px;
}
.default-font{
    font-size:14px!important; /*changing this may require quite a bit of testing to ensure objects all fit - they should, but this is not reccomended*/
}
.small-text, .button.mobile-remove{
    font-size:.8em;
}
.no-mobile, .tab-only
{
    display:none!important;
}
.mobile-only{
    display:block!important;
}
.main-constrain-width
{
    padding-left: 10px;
}
.button{
    width:100%;
    line-height:3em;
    padding:0;
    clear:both;
}
.button.sw-button-primary{
    background:#ed1f24!important;
}
.button.load-more-button{
    float:none;
    width:100%;
    margin:0;
}
input[type="text"], input[type="password"], input[type="email"], input[type="number"]{
    width:100%;
    padding:.5em;
    font-size:initial; /*prevent zooming in safari*/
}
select{
    font-size:initial;
    width:100%;
    padding:.5em;
}
/*the datepicker gets it's sizes from jquery ui, we need to make sure IOS doesn't zoom in on it either.*/
.ui-datepicker .ui-datepicker-title {
    margin: 0;
}
.ui-datepicker .ui-datepicker-title select
{
    font-size:initial!important;
    padding:0px;
    margin:0px;
    width:50%;
}
table{
    width:100%;
    max-width:100%;
}
.control-wrap
{
    left: 100%;
    display:block;
    position:fixed;
    z-index:199;
}
.control-wrap .control-box, div.ui-dialog{
    position:absolute;
    top:0px;
    background:#fff!important; /*required to override issues with jquery ui for bundle selection*/
    box-shadow:0 4px 8px RGBA(0,0,0,0.2);
    border-radius:2px!important; /*required to override issues with jquery ui for bundle selection*/
    min-width:30%;
    max-width:100%;
    color:inherit!important;
    padding:1em;
}
.control-wrap .control-box{
    left:10px;
    transition:all 600ms cubic-bezier(0.895, 0.03, 0.685, 0.22);
}
.control-wrap .control-box.widget-show{
    transition:all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
    left:-100%;

}
.control-box .heading-text{
    display:block;
    margin:-1em;
    margin-bottom:.5em;
    text-indent:1em;
    line-height:2em;
}
.control-box a.close-widget{
    display:block;
    padding:.5em;
    text-align:right;
    cursor:pointer;
}
#popup-wrap{
    max-width:100%!important;
    margin-left:0px!important;
    left:0px!important;
    top:1em!important;
}
#popup-wrap #fetched{
    max-width:100%!important;
}
#swSearchTxt{
    width:100%;
    font-size:1rem;
    margin:.5em 0;
    margin-bottom:0px;
}
/*calendar*/
.ui-widget-content, .ui-widget-header{border:none!important;background:none!important;}
.ui-state-default{
    background:none!important;
    height:2em;
    width:100%;
    line-height:2em;
}

/**********************************/
/*       MOBILE NAVIGATION        */
/**********************************/
.tab-nav, .tab-nav-wrap{
    display:none; /*default - overwrite on larger displays*/
}
.sw-nav{
    padding:1rem;
    width:100%;
    background:#000;
    position:fixed;
    top:0px;
    line-height:1rem;
    font-size:2rem;
    box-shadow:0 2px 4px RGBA(0,0,0,0.2);
    z-index:99;
    transition:opacity ease-in-out .4s;
    text-transform:capitalize;
	color: #FF0000;
	text-align: center;
}
.UserIcon {
	width: 25px;
    margin-bottom: -7px;
}
#mobile-menu{
    position:absolute;
    background:#000;
    box-shadow:0 3px 6px RGBA(0,0,0,0.2);
    list-style:none;
    left:-100%;
    top:3.5rem;
    padding:.4em 0px;
    margin:0px;
    overflow-y:auto;
    overflow-x:hidden;
}
[class^="sw-icon-"], [class*=" sw-icon-"]{
    margin-right:.5em;
}
i#menu-icon {
    background: url(/AdsUPLImage/MenuIcon.png) !important;
    height: 1em;
    width: 1em;
    background-size: contain !important;
	background-repeat: no-repeat!important;
	float: left;
}
#mobile-menu li{
    
    width:100%;
    font-family:'open sans',Arial, sans-serif;
    font-size:1rem;
    position:relative;
    overflow:hidden;
}

#mobile-menu li a{
    display:block;
    padding:.5em 2em;
    cursor:pointer;
	color: #fff!important;
}
#mobile-menu li a:hover{
    text-decoration:none;
}
#mobile-menu li.sw-sep{
    border-bottom:1px solid #eee;
    padding:0px;
    margin:5px;
    height:0px;
}
/**********************************/
/*      FEATURED ITEMS LISTS      */
/**********************************/
.featured-items-item{
    border:1px solid #eee;   
    background:#fff; 
    box-shadow:0 1px 2px RGBA(0,0,0,0.2);
    margin-bottom:1em;
    overflow:hidden;
}
.featured-items-item .button
{
    display: block;
    width: 100%;
    font-size: 1.5em;
    margin:.5em 0;
}
.featured-items-item img{
    max-width:100%;
}

/**********************************/
/*        PERFORMANCE LISTS       */
/**********************************/
.performance-list .pl-item{
    position:relative;
    border:1px solid #eee;
    padding-bottom:3.5em;
    margin-bottom:1em;
    box-shadow:0 2px 4px RGBA(0,0,0,0.2);

}
.pl-item .button{
    position:absolute;
    line-height:2em;
    text-align:center;
    left:.5em;
    right:.5em;
    bottom:.5em;
    width:auto; /*overrides default for margins*/
}
#swPerformanceList.performance-list div.pl-item div.pl-first-col{
    width:100%;
}
    .pl-item div.pl-first-col h3.pl-name
    {
        float: right;
    }
    .pl-item div.pl-first-col h3.pl-event-name
    {
        float: left;
    }
.pl-item div.pl-second-col{
    width:100%;
    float:none;
    border:none;
    padding:0;
}
/**********************************/
/*          Event Page            */
/**********************************/
.event-performances-description{
	overflow:hidden;
	padding:10px;
}
.event-performances-lower-left{
	overflow:hidden;
	padding:10px;
}
.event-performances-lower-right{
	overflow:hidden;
	padding:10px;
}
.event-performances-footer{
	overflow:hidden;
	padding:10px;
}

.event-performances-right, .event-performances-lower-right, .event-performances-footer, .event-performances-description, .event-performances-lower-left{
    float:none;
    width:100%;
    margin:0;
    padding:0;
}
.related-event{
    width:100%;
}
input.reg-checkbox{
    vertical-align:top;
    margin-left:0px;
    margin-right:-14px;
    float:left;
}
span.reg-message{
    margin-left:16px;
}
div#login-registration-container{
    padding:0px;
    margin-bottom:1em;
}
#qpqty{
    margin-bottom:.5em;
}
/**********************************/
/*          Donations             */
/**********************************/
.donations-featured .gutter-left-container-gutter{
    float:none;
    width:100%;
    margin:0px;
}
.donations-featured .gutter-left-container-main{
    float:none;
    width:100%;
    padding:1em;    
}
.donations-featured #donations-form-wrap{
    margin:0px;
}
#donations-form-wrap input.button{
    width:100%;
    max-width:100%;
    margin:0px;
    margin-bottom:.5em;
}
#donations-form-wrap #other-box{
    float:right;
}
.donation-mobile-currency{
    display:inline-block!important;
    float:left;
    font-size:1.5em;
    font-weight:bold;
}
/**********************************/
/*          ACCOUNT PAGES         */
/**********************************/
.account-created-box, .account-updated-box{
    width:50%;
    padding:.25em 0;
    float:left;
    text-align:center;
}
.account-control, .account-recent-orders, .account-holds, .account-memberships{
    width:90%;
    padding:.5em;
    float:left;
}
.account-recent-orders, .account-holds, .account-memberships{
    font-size:.8em;
}

.holds-button{
    float:none;
    padding-top:.25em;
}
.login-form-wrap{
    width:100%;
}
.login-form-row{
    padding:0px;
}
.login-buttons{
    margin-bottom:1em;
}
.login-buttons input{
    margin-top:.5em;
}
div.order-detail-info-item, div.account-recent-orders, .account-holds, .account-memberships{
    width:100%;
    vertical-align:middle;
    background:RGBA(0,0,0,0.05);
    margin-bottom:.5em;
}
div.order-detail-info-item .item-details, div.my-account-items .item-details{
    display:none;
}
.valid-to{
    clear:left;
    float:left;
}
.patron-info label.patron-info-label{
    width:100%;
    padding:.5em 0 .25em 0;
    text-align:left;
}
.patron-info select{
    width:100%;
    margin:0px;
}
.patron-upsale-block{
    width:100%;
    margin:0px auto;
}
#membershipAmountPaid .required-star:after { content:"\A"; white-space:pre; }

/**********************************/
/*          MEMBERSHIP PAGES      */
/**********************************/
.featured-items-item.membership-item .featured-items-image{
    margin:.5em;
    margin-top:1em;
}
.membership-label-button div:first-child{
    margin:0px;
    margin-left:10px;
}
.membership-label-button input.button{
    padding:0px!important;
}
.membership-label-button .variable-amount{
    padding:0px;
    margin-left:-10px;
    margin-right:10px;
}
.featured-items-item.membership-item{
    position:relative;
    padding-bottom:5.5em;
}
.membership-add-button{
    position:absolute;
    bottom:.5em;
    left:0px;
    margin:0 5%!important;
    width:90%!important;
}
/**********************************/
/*       BASKET PAGE              */
/**********************************/
div.basket-item{
    position:relative;
    border:1px solid #eee;
    margin-bottom:1em;
    box-shadow:0 2px 4px RGBA(0,0,0,0.2);
    background:#fff!important;
}
.basket-event{
    border:none;
}

.basket-item div.basket-cell{
    padding:.5em;
    width:100%;
    border:none;
}
.pricingcode-dropdown{
    display:block;
}
.basket-all-toggle, .basket-remove-btn, .basket-apply-all-wrap, .basket-legend, div.item-checkbox{
    display:none;
}
.basket-item a.mobile-remove{
    float:right;
    width:20%;
    padding:.25em;
    line-height:2em;
}
div.ticket-total, div.level-price, div.donation-amount{
    font-size:1.4em;
}
div.coupon-cell{
    width:50%;
}
div.coupon-unlock-btn{
    margin-top:1em;
}
#basket div.button-container{
    margin:0px;
}
.basket-processing-fee-label, .basket-total-label{
    width:70%;
    border:none;
}
div.basket-processing-fee{
    border:none;
}
.basket-total, .basket-processing-fee{
    width:29%;
    margin-right:-5%;
}
div.basket-total{
    font-size:1.4em;
}
#basket .button-container{
    padding-top:5em;
    position:relative;
}
#basket .button-container #checkout-button{
    position:absolute;
    top:.5em;
    left:0;
}
#basket .button-container .button{
    margin:.5em 5%;
    width:90%;
    display:inline-block;
}

/*** CHECKOUT CONFIRMATION BASKET (we can delete this later) ***/
.checkout-confirm-basket td.no-mobile{
    display:table-cell!important;
    width:0px!important;
    overflow:hidden;
    color:#fff;
    text-indent:-9999px;
}
.checkout-basket-seat{
}
.checkout-basket-total{
}
.checkout-header-item{
    padding:.25em;
    border:1px solid #eee;
    box-shadow:0 1px 2px RGBA(0,0,0,0.2);
    margin:.5em 0;
    width:100%;
    max-width:100%;
}
.checkout-confirmation-button-top-wrap{
    float:none;
    padding:0;
    width:100%;
}
.checkout-confirm-basket .basket-item td{
    background:#fff;
    border-bottom:1px solid #eee;
    padding:.25em 0;
}
.checkout-confirm-basket .basket-event, .checkout-confirm-basket .basket-event a{
    font-size:14px!important;
}
.checkout-confirm-basket .basket-event td{
    border-bottom:1px solid #eee;
    background:#fafafa;
}
.checkout-confirm-basket td div.seat-info-wrap{
    margin-left:-34px;
}
#checkout-finished-table{
    table-layout: fixed;
    width: 100%!important;
    overflow: hidden;
    padding: 0;
    border: 0;
    margin: 0;
}
.basket-event #bubble-container .left::before{
    display:none;
}
#bubble-container{
    max-width:100%!important;
    width:100%;
    margin-bottom:.5em;
}
#bubble-container .left{
    margin:0px;
}
#message-paragraph{
    display:inline!important;
}
/*Keep below this*/
.checkout-donation-button{
    margin: .25em 0;
}
.checkout-donation-image{
    display:none;               /*hidden by default, also hidden in style.css*/
}
.checkout-confirm-basket ul.sw-fees-list{
    width:120px;
    margin-right:-1em;
    padding-left:1em;
}
.checkout-confirm-basket .sw-fees-list .fees-item{
    float:right;
    text-align:right;
    margin-left:-40px;
}
.checkout-confirm-basket td.no-mobile{
    display:none;
}
.checkout-agree-container{
    text-align:left;
}
#agree{
    float:left;
    margin:.5em 2em .5em .5em;
}
.heard-about-container{
    text-align:left;
}
/*** END CHECKOUT CONFIRMATION BASKET ***/
/**** CHECKOUT BILLING PAGE ************/
.gift-card-wrap{
    width:100%;
}
.gift-card-add-container{
    width:100%;
    margin:0 auto;
    position:relative;
    padding-bottom:60px;
}
.gift-card-header{
    display:none;
}
.gift-card-image{
    position:absolute;
    margin-left:-30px;
    left:50%;
    bottom:15px;
}
.gift-card-label{
    float:left;
    clear:left;
    width:25%;
    opacity:0.8;
    font-weight:bold;
}
.gift-card-cell{
    text-align:left;
    width:70%;
    float:left;
}
.gift-card-info-row{
    position:relative;
}
.gift-card-remove-check{
    position:absolute;
    top:.5em;
    right:.5em;
    text-align:right;
}
.gift-card-remove-button {
float:none;
margin:0;
}
.checkout-billing-form-table td{
    display:block;
    text-align:left!important;
}
.checkout-billing-form-table tr td:nth-child(1)
{
    padding-top:.5em;
}
.checkout-billing-form-table .exp-month-select{
    width:50%;
    float:left;
}
.checkout-billing-form-table .exp-year-select{
    width:45%;
    float:left;
    margin-left:5%;
    margin-right:-45%;
}
/**** END CHECKOUT BILLING PAGE ************/

/*************************************************
SeatMaps
*************************************************/
.uiFloatingContainer{
    display:none!important;
}
#seatmap-wrap{
    background-color:#f5f5f5;
    border:1px solid #eee;
    margin-top:.25em;
}
.seatmap-reserve-table{
    margin-top:2em;
}
.price-box{
    width:100%;
}
.mobile-seatmap-controls{
    text-align:center;
}
#seatmap-floating-container{
    display:none!important;
    opacity:0!important;
}
#seatmapStaticContainer{
    background:#666;
    background:RGBA(0,0,0,0.6);
    color:#fff;
    font-size:14px;
    border-color:RGBA(0,0,0,0.6);
    border-radius:2px;
    box-shadow:1px 1px 1px 3px RGBA(0,0,0,0.05);
    display:inline-block;
    padding:.25em;
    width:50%;
    text-align:left;
    opacity:0;
    transition:opacity .4s;
}
.mobile-gap-seatmap-sides #seatmap-inner{
    margin:0 1.5em;
}
.seatmap-navigation-control{
    background:RGBA(0,0,0,0.6);
    border-radius:2px;
    border-color:#fff; /*arrow color*/
    display:none;
}
.seatmap-status-label{
    display:none;
}
/***********Ticket Insurance*****************/
.insurance_panel table td{
    display:block;
}

/*************************************************
Venue Listing
*************************************************/
.venue-listing-item{
    position:relative;
}
.venue-listing-venue-info{
    display:block;
    float:none;
    width:100%;
    margin-bottom:.5em;
}
.venue-listing-link-wrap{
    position:relative;
    width:100%;
    text-align:right;
}
.venue-listing-description{
    max-width:100%;
    margin-left:0px;
}
.logo_responsive {
	width: 60px;
    margin-bottom: -3px;
	display: inline-block;
	}

/*********************************************************************************************************************************
                                                Tablet Adjustments
*********************************************************************************************************************************/
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) {
/* This block should contain all adjustments for tablets */
    /*******TABLET NAV******/
    .no-tab{
        display:none!important;
    }
    #menu-icon{
        float:left;
    }
    .tab-nav-wrap{
        float:left;
        display:inherit;
    }
    .tab-nav{
        display:inline-block;
        float:left;
        font-size:1.3rem;
        line-height:2rem;
        padding:0 .5em;
        margin-right:.5em;
        background:#fcfcfc;
        border-radius:2px;
    }
    /*******TABLET WIDGETS******/
    .control-wrap{
        left:auto;
        right:100%;
    }
    .control-wrap .control-box{
        left:0;
    }
    .control-wrap .control-box.widget-show{
        left:110%;
    }
    /*******TABLET BUTTONS******/
    .featured-items-item a.button, .featured-items-item input.button.buy-button{
        font-size:1.2em;
        line-height:2em;
        width:auto;
    }
    .button.split-button-left{
        width:49%;
        float:left!important;
    }
    .button.split-button-right{
        width:49%;
        float:right!important;
    }
    /*******TABLET TEXT CHANGES******/
    #frmaddresslist .small-text{
        font-size:1em;
    }
    /*********Tablet Memberships********/
    .featured-items-item.membership-item{
        position:relative;
        padding-bottom:3.5em;
    }
    .membership-add-button{
        position:absolute;
        bottom:.5em;
        width:80%;
        margin:0 10%;
    }
    /***********Ticket Insurance*****************/
    .insurance_panel table td{
        display:table-cell;
        min-width:120px;
    }
    #checkout-donation-buttons .checkout-donation-button{
        width:45%;
        clear:none;
    }
    #checkout-donation-buttons .checkout-donation-button:nth-child(odd){
        float:left;
    }
    #checkout-donation-buttons .checkout-donation-button:nth-child(even){
        float:right;
    }

}

/**** FIX FOR SAFARI KEYBOARD NONSENSE *****/
.fixfixed .sw-mav{ 
    position: absolute; 
} 

iframe{ /*fix for embeded youtube*/
    max-width:100%!important;
}
#draggable #popup-wrap {
    margin-left: 0px !important;
}
#black-content #draggable {
    height: 1px;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
}
