/* ==========================================================================
	#Transitions
========================================================================== */
#pjWrapper .btn,
#pjWrapper .pjTbNav .dropdown-toggle,
#pjWrapper .pjTbNav .dropdown-menu a,
#pjWrapper .btn-link .glyphicon { -webkit-transition: none; -moz-transition: none; -ms-transition: none; -o-transition: none; transition: none; }

/* ==========================================================================
	#Animations
========================================================================== */
@-webkit-keyframes hvr-pop {
	50% { -webkit-transform: scale(1.2); transform: scale(1.2); }
}
@keyframes hvr-pop {
	50% { -webkit-transform: scale(1.2); transform: scale(1.2); }
}

/* ==========================================================================
	#General
========================================================================== */
#pjWrapper a[href^=tel] { color: inherit; }
#pjWrapper a:focus,
#pjWrapper button:focus { outline: unset; outline: none; }

#pjWrapper .pjTbContainer { padding: 15px; }
#pjWrapper .pjTbMain { border-width: 0; border-radius: 7px; -webkit-box-shadow: none; box-shadow: none; }

/* ==========================================================================
	#Buttons
========================================================================== */
#pjWrapper .btn-link { padding: 0; font-size: 16px; line-height: 1.6; font-weight: 400; text-transform: capitalize; }
#pjWrapper .btn-link:hover,
#pjWrapper .btn-link:focus { text-decoration: none; }
#pjWrapper .btn-link .glyphicon { font-size: 15px; }

#pjWrapper .btn-default { height: 44px; padding: 0 30px; border: 1px solid #7d8494; font-size: 15px; line-height: 42px; font-weight: 400; text-transform: uppercase; }

#pjWrapper .btn-primary { height: 44px; padding: 0 30px; border: 1px solid #03a0e5; font-size: 15px; line-height: 42px; font-weight: 400; text-transform: uppercase; }

#pjWrapper .btn-info { height: 44px; padding: 0 20px; border: 1px solid #00a8f1; font-size: 15px; line-height: 42px; font-weight: 400; text-transform: uppercase; }

/* ==========================================================================
	#Forms
========================================================================== */
#pjWrapper .form-control { height: 44px; padding: 0 15px; border: 1px solid #ceced0; font-size: 16px; line-height: 1.4; font-weight: 300; border-radius: 4px; -webkit-box-shadow: none; box-shadow: none; }
#pjWrapper .form-control:focus { -webkit-box-shadow: none; box-shadow: none; }
#pjWrapper select.form-control { cursor: pointer; }
#pjWrapper label,
#pjWrapper .control-label { font-size: 18px; line-height: 1.4; font-weight: 300; }

#pjWrapper .checkbox label { font-size: 16px; line-height: 1.4; font-weight: 400; }
#pjWrapper .checkbox label a { color: inherit; }
#pjWrapper .checkbox input { margin-top: 5px; }

#pjWrapper .pjTbCaptcha { font-size: 0; }
#pjWrapper .pjTbCaptcha .form-control,
#pjWrapper .pjTbCaptcha img { display: inline-block; vertical-align: middle; }
#pjWrapper .pjTbCaptcha .form-control { width: 110px; margin-right: 10px; }

#pjWrapper .help-block,
#pjWrapper .help-block * { margin: 0; }
#pjWrapper .help-block { overflow: hidden; }
#pjWrapper .help-block li { overflow: hidden; max-width: 100%; font-size: 12px; white-space: nowrap; -ms-text-overflow: ellipsis; text-overflow: ellipsis; }

/* ==========================================================================
	#Modals
========================================================================== */
#pjWrapper .pjTbModal .modal-title { margin: 0; font-size: 24px; line-height: 1.2; font-weight: 400; text-transform: capitalize; }
#pjWrapper .pjTbModal .modal-body p { margin: 0; padding: 10px 0; font-size: 15px; font-weight: 400; }

/* ==========================================================================
	#pjTbHeader
========================================================================== */
#pjWrapper .pjTbHeader { padding: 20px; border-radius: 7px 7px 0 0; }
#pjWrapper .pjTbNav .dropdown-toggle { position: relative; min-width: 260px; max-width: 100%; height: 42px; padding: 0 35px 0 15px; border: 1px solid #ceced0; font-size: 18px; line-height: 40px; font-weight: 300; text-transform: capitalize; text-align: left; border-radius: 4px; }
#pjWrapper .pjTbNav .dropdown-toggle .caret { position: absolute; top: 50%; right: 15px; width: 12px; height: 12px; margin-top: -9px; border: 1px solid #7b7f85; border-top-width: 0; border-left-width: 0; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); }
#pjWrapper .pjTbNav.open .dropdown-toggle .caret { margin: -2px; -webkit-transform: rotate(225deg); -ms-transform: rotate(225deg); -o-transform: rotate(225deg); transform: rotate(225deg); }
#pjWrapper .pjTbNav .dropdown-toggle:hover,
#pjWrapper .pjTbNav .dropdown-toggle:focus,
#pjWrapper .pjTbNav.open .dropdown-toggle { border: 1px solid #25bafa; -webkit-box-shadow: none; box-shadow: none; }
#pjWrapper .pjTbNav.open .dropdown-toggle { border-radius: 4px 4px 0 0; }
#pjWrapper .pjTbNav .dropdown-menu { margin: -1px 0 0; border: 1px solid #25bafa; border-radius: 0 0 4px 4px; -webkit-box-shadow: none; box-shadow: none; }
#pjWrapper .pjTbNav .dropdown-menu li { padding: 1px 0; }
#pjWrapper .pjTbNav .dropdown-menu a { padding: 0 10px; font-size: 15px; line-height: 1.6; font-weight: 400; }
#pjWrapper .pjTbNav .dropdown-menu .pjTbDdisabled a { opacity: .7; cursor: default; pointer-events: none; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; -o-user-select: none; user-select: none; }

/* ==========================================================================
	#pjTbBody
========================================================================== */
#pjWrapper .pjTbBody { padding: 20px; }

#pjWrapper .pjTbSectionTickets .pjTbSectionDate,
#pjWrapper .pjTbTicket .pjTbTicketBody .pjTbTicketActions .pjTbSectionDate { margin: 0; font-size: 12px; line-height: 1.4; font-weight: 400; }
#pjWrapper .pjTbSectionPromoCode .form-group .form-control { display: inline-block; width: 120px; margin-top: 5px; }
#pjWrapper .pjTbTickets { margin: 0; }
#pjWrapper .pjTbTicket { margin-top: 15px; border-left: 3px solid #00a8f1; }
#pjWrapper .pjTbTicket .pjTbTicketHead { padding: 25px 20px; border-bottom: 1px solid #eaedef; }
#pjWrapper .pjTbTicket .pjTbTicketBadge { display: inline-block; height: 24px; padding: 0 15px; font-size: 13px; line-height: 24px; font-weight: 400; text-transform: uppercase; border-radius: 12px; }
#pjWrapper .pjTbTicket .pjTbTicketTitle { margin: 0; padding-bottom: 12px; font-size: 24px; line-height: 1.2; font-weight: 400; text-transform: capitalize; }
#pjWrapper .pjTbTicket .pjTbTicketMeta { margin: 0; font-size: 15px; line-height: 1.4; font-weight: 400; text-transform: uppercase; }
#pjWrapper .pjTbTicket .pjTbTicketMeta small { font-size: 13px; font-weight: 300; }
#pjWrapper .pjTbTicket .pjTbTicketHead .pjTbTicketDonation { width: 140px; float: left;}
#pjWrapper .pjTbTicket .pjTbTicketHead .pjTbTicketMultipleSign{float: left; margin-left: 5px; margin-right: 5px; margin-top: 10px;} 
#pjWrapper .pjTbTicket .pjTbTicketHead .pjTbTicketAside select{float: left; width: 80px;}
#pjWrapper .pjTbTicket .pjTbTicketHead .pjTbTicketDonation .form-control { border-left: 0; border-radius: 0 4px 4px 0; }
#pjWrapper .pjTbTicket .pjTbTicketHead .pjTbTicketDonation .input-group-addon { font-size: 18px; font-weight: 300; }

#pjWrapper .pjTbTicket .pjTbTicketBody { padding: 20px; }
#pjWrapper .pjTbTicket .pjTbTicketBody p { margin: 0; padding-top: 10px; font-size: 15px; line-height: 1.2; font-weight: 300; }
#pjWrapper .pjTbTicket .pjTbTicketBody .pjTbTicketActions .pjTbSectionDate { padding-top: 0; }
#pjWrapper .pjTbTicket .pjTbTicketBody .pjTbTicketActions .btn-link[aria-expanded="true"] { padding-top: 5px; }
#pjWrapper .pjTbTicket .pjTbTicketBody .pjTbTicketActions .btn-link[aria-expanded="true"]:after { content: 'Hide info'; }

#pjWrapper .pjTbTicket .pjTbTicketBody .pjTbTicketContent{ margin-bottom: 12px;}
/* ==========================================================================
	#pjTbFooter
========================================================================== */
#pjWrapper .pjTbFooter { padding: 10px 20px; border: 1px solid #e5e7eb; border-radius: 0 0 7px 7px; }
#pjWrapper .pjTbListTicketsInfo { font-size: 0; }
#pjWrapper .pjTbListTicketsInfo li { padding: 8px 80px 0 0; }
#pjWrapper .pjTbListTicketsInfo dl { margin: 0; }
#pjWrapper .pjTbListTicketsInfo dt,
#pjWrapper .pjTbListTicketsInfo dd { display: inline-block; width: auto; min-width: 1px; margin: 0; font-size: 20px; line-height: 1.4; }
#pjWrapper .pjTbListTicketsInfo dt { padding-right: 5px; font-weight: 300; }
#pjWrapper .pjTbListTicketsInfo dd { font-weight: 400; }

/* ==========================================================================
	#pjTbSectionSeats
========================================================================== */
#pjWrapper .pjTbSectionSeats { padding: 25px; border-bottom: 1px solid rgba(111, 118, 123, .13); }
#pjWrapper .pjTbSectionSeats .pjTbSessionTickets{margin-bottom: 20px; overflow: hidden;}
#pjWrapper .pjTbSectionSeats .pjTbSessionTickets .pjTbSectionTitle { margin: 0; font-size: 24px; line-height: 1.17; font-weight: 400; float: left; margin-right: 20px;}
#pjWrapper .pjTbSectionSeats .pjTbSessionTickets .pjTbSectionTitle:hover{cursor: pointer;}
#pjWrapper .pjTbSectionSeats .pjTbSessionTickets .pjTbSessionTickets:last-child{margin-right: 0px;}
#pjWrapper .pjTbChosenSeats { margin: 0; padding-bottom: 25px; font-size: 0; }
#pjWrapper .pjTbChosenSeats dt,
#pjWrapper .pjTbChosenSeats dd { display: inline-block; float: none; width: auto; min-width: 1px; margin: 0; padding-bottom: 5px; vertical-align: middle; }
#pjWrapper .pjTbChosenSeats dt { padding-right: 5px; font-size: 18px; line-height: 1.2; font-weight: 300; }
#pjWrapper .pjTbListChosenSeats { margin: 0; display: inline-block;}
#pjWrapper .pjTbListChosenSeats li { padding: 1px 5px; vertical-align: middle; }
#pjWrapper .pjTbSeat { display: inline-block; min-width: 25px; min-height: 25px; font-size: 0; text-align: center; cursor: pointer; border-radius: 4px; -webkit-transform: translateZ(0); transform: translateZ(0); -webkit-backface-visibility: hidden; backface-visibility: hidden; -moz-osx-font-smoothing: grayscale; }
#pjWrapper .pjTbSeat:before { display: inline-block; height: 100%; margin-left: -0.25em; vertical-align: middle; content: ''; }
#pjWrapper .pjTbSeatAvailable:hover,
 #pjWrapper .pjTbSeatChecked { -webkit-animation-name: hvr-pop; animation-name: hvr-pop; -webkit-animation-duration: 0.3s; animation-duration: 0.3s; -webkit-animation-timing-function: linear; animation-timing-function: linear; -webkit-animation-iteration-count: 1; animation-iteration-count: 1; }
#pjWrapper .pjTbSeat .pjTbSeatInner { display: inline-block; font-size: 13px; line-height: 1.4; font-weight: 400; vertical-align: middle; }
#pjWrapper .pjTbListSeatsTypes { margin: 0; padding-top: 40px; }
#pjWrapper .pjTbListSeatsTypes li { padding: 0 20px 0 0; vertical-align: middle; }
#pjWrapper .pjTbListSeatsTypes li span { display: inline-block; font-size: 14px; line-height: 1.4; font-weight: 400; vertical-align: middle; }
#pjWrapper .pjTbListSeatsTypes li .pjTbSeat { width: 16px; min-width: 16px; height: 16px; min-height: 16px; cursor: default; }
#pjWrapper .pjEtsMapHolder { margin: 0 auto; overflow: auto; -ms-overflow-y: hidden;overflow-y:hidden;position: relative;}
#pjWrapper .pjEtsMapHolder .pjTbSeat { position: absolute; z-index: 100;}
#pjWrapper .pjTbSessionTipMsg{margin-bottom: 15px;}
#pjWrapper .pjTbSelectMoreSeats{font-size: 18px; font-weight: 300; line-height: 1.2;}
/* ==========================================================================
	#pjTbSectionCheckout
========================================================================== */
#pjWrapper .pjTbFormCheckout .pjTbFormSummary { padding: 20px 0 10px; }
#pjWrapper .pjTbFormCheckout .pjTbFormSummary:last-of-type { border-top: 1px solid #ebebeb; }
#pjWrapper .pjTbFormCheckout .pjTbFormSummary .pjTbFormPrice { padding-left: 15px; word-wrap: break-word; }
#pjWrapper .pjTbFormCheckout .pjTbFormSummary .pjTbFormPrice p strong { padding-left: 15px; }
#pjWrapper .pjTbFormCheckout .pjTbFormSummary .pjTbFormPriceSum { }
#pjWrapper .pjTbFormCheckout .pjTbFormSummary .pjTbFormPriceSum p strong { padding-left: 0; }
#pjWrapper .pjTbFormCheckout .pjTbFormSummary p { margin: 0; font-size: 18px; line-height: 1.11; font-weight: 300; }
#pjWrapper .pjTbFormCheckout .pjTbFormSummary p small { font-size: 16px; }
#pjWrapper .pjTbFormCheckout .pjTbFormSummary p strong { font-weight: 400; }
#pjWrapper .pjTbFormCheckout .pjTbFormSummary .pjTbFormSummaryPrice { font-size: 20px; font-weight: 700; }
#pjWrapper .pjTbFormCheckout .pjTbFormSummary .pjTbFormSummaryPrice strong { font-size: 18px; font-weight: 700; }
#pjWrapper .pjTbFormCheckout .pjTbFormSummary .row { padding: 5px 0; }
#pjWrapper .pjTbFormCheckout .pjTbFormSection { margin-bottom: 20px; padding: 25px; border-bottom: 1px solid rgba(111, 118, 123, .13); }
#pjWrapper .pjTbFormCheckout .pjTbFormSection .pjTbFormSectionTitle { margin: 0; padding-bottom: 15px; font-size: 24px; line-height: 1.17; font-weight: 400; }
#pjWrapper .pjTbFormCheckout .pjTbFormSection dl { margin: 0; padding: 5px 0; }
#pjWrapper .pjTbFormCheckout .pjTbFormSection dt,
#pjWrapper .pjTbFormCheckout .pjTbFormSection dd { font-size: 16px; line-height: 1.4; }
#pjWrapper .pjTbFormCheckout .pjTbFormSection dt { font-weight: 400; text-align: left; }
#pjWrapper .pjTbFormCheckout .pjTbFormSection dd { font-weight: 700; }
#pjWrapper .pjTbFormCheckout .control-label { padding-right: 5px; text-align: left; }

/* ==========================================================================
	.Modal
========================================================================== */
.modal-backdrop.fade {
	opacity: 0;
	filter: alpha(opacity=0);
}
.modal-backdrop.fade.in {
	opacity: 0.5;
	filter: alpha(opacity=50);
}
/* ==========================================================================
	#Responsive
========================================================================== */
@media only screen and (max-width: 767px) {
	/* ==========================================================================
		#pjTbTickets
	========================================================================== */
	#pjWrapper .pjTbTicket .pjTbTicketHead { padding: 10px; }
	#pjWrapper .pjTbTicket .pjTbTicketHead .pjTbTicketAside,
	#pjWrapper .pjTbTicket .pjTbTicketHead .pjTbTicketHeadInner { float: none; width: 100%; }
	#pjWrapper .pjTbTicket .pjTbTicketHead .pjTbTicketAside,
	#pjWrapper .pjTbTicket .pjTbTicketTitle { padding-bottom: 5px; }
	#pjWrapper .pjTbTicket .pjTbTicketBody { padding: 10px; }
	#pjWrapper .pjTbTicket .pjTbTicketBody .pjTbSectionDate { overflow: hidden; width: 100%; float: none !important; }

	#pjWrapper .pjTbListTicketsInfo { padding-bottom: 5px; float: none !important; }
	#pjWrapper .pjTbListTicketsInfo li { padding-top: 0; padding-right: 20px; }
	
	/* ==========================================================================
		#pjTbFooter
	========================================================================== */
	#pjWrapper .pjTbFooter .pjTbListTicketsInfo ~ .pull-right { float: none !important; }
}

@media only screen and (max-width: 480px) {
	/* ==========================================================================
		#pjTbHeader
	========================================================================== */
	#pjWrapper .pjTbNav { max-width: 100%; }
	#pjWrapper .pjTbNav .dropdown-toggle { overflow: hidden; min-width: 1px; white-space: nowrap; -ms-text-overflow: ellipsis; text-overflow: ellipsis; }

	/* ==========================================================================
		#pjTbSectionPromoCode
	========================================================================== */
	#pjWrapper .pjTbSectionPromoCode { overflow: hidden; float: none !important; width: 100%; padding-top: 5px; text-align: left !important; }

	/* ==========================================================================
		#pjTbTickets
	========================================================================== */
	#pjWrapper .pjTbTicket .pjTbTicketTitle { font-size: 20px; }
	#pjWrapper .pjTbTicket .pjTbTicketMeta { font-size: 14px; font-weight: 400; }
	#pjWrapper .pjTbTicket .pjTbTicketBody p { padding-top: 5px; }

	/* ==========================================================================
		#pjTbSectionSeats
	========================================================================== */
	#pjWrapper .pjTbSectionSeats { padding: 15px; }
	#pjWrapper .pjTbSectionSeats .pjTbSectionTitle { font-size: 21px; padding-bottom: 5px; }
	#pjWrapper .pjTbChosenSeats dd { margin: 5px 0; }

	/* ==========================================================================
		##pjWrapper .pjTbFormCheckout .pjTbFormSection
	========================================================================== */
	#pjWrapper .pjTbFormCheckout .pjTbFormSection { padding: 15px; }
	#pjWrapper .pjTbFormCheckout .pjTbFormSummary .pjTbFormPrice p strong { padding-left: 0; }
}


/* ==========================================================================
   Ticket Thumbnail — clean card-style layout
   ========================================================================== */

/* Flex row: thumbnail | text */
#pjWrapper .pjTbTicketHeadInnerFlex {
    display: flex;
    align-items: center;
    gap: 0;
}

/* Thumbnail wrapper — fixed square, no flex shrink */
#pjWrapper .pjTbTicketThumbWrap {
    flex: 0 0 90px;
    width: 90px;
    height: 90px;
    margin-right: 18px;
    border-radius: 6px;
    overflow: hidden;
    background: #eaedef;
    box-shadow: 0 1px 4px rgba(0,0,0,.12);
}

/* Image fills the box, cropped to cover */
#pjWrapper .pjTbTicketThumb {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Text column fills remaining space */
#pjWrapper .pjTbTicketHeadText {
    flex: 1 1 auto;
    min-width: 0;
}

/* Responsive — stack on small screens */
@media (max-width: 480px) {
    #pjWrapper .pjTbTicketHeadInnerFlex {
        flex-wrap: wrap;
    }
    #pjWrapper .pjTbTicketThumbWrap {
        flex: 0 0 100%;
        width: 100%;
        height: 160px;
        margin-right: 0;
        margin-bottom: 12px;
        border-radius: 4px;
    }
}
