/*------------------------------------------------------------------------------------------------------------------------
  GLOBAL
------------------------------------------------------------------------------------------------------------------------*/
body {  padding: 0px; margin: 0px; font-family: 'Inter', sans-serif; color: #6a6a6a; font-size: 11px; background-color: #FFF; }
p { margin: 0 10px 10px; }
a, a:visited { color: #6a6a6a; text-decoration: none; outline: none; }
a:hover, a:active { color: #6a6a6a; text-decoration: none; }
pre {
  white-space: pre-wrap;      /* css-3 */
  white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
  white-space: -pre-wrap;     /* Opera 4-6 */
  white-space: -o-pre-wrap;   /* Opera 7 */
  word-wrap: break-word;      /* Internet Explorer 5.5+ */
  line-height: 15px; 
  font-family: Arial, Helvetica, sans-serif; 
  font-size: 11px; 
  font-weight: normal; 
  vertical-align: top; 
}

/* --------------------------------------
    RESET
----------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
}
strong{
	font-weight: 600;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
em, i, dfn {
    font-style: italic;
}


/*----------------------------------------------------------------------------------------------------------------
  GLOBAL
------------------------------------------------------------------------------------------------------------------*/

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/css/fonts/Inter/400.woff2') format('woff2');
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/css/fonts/Inter/600.woff2') format('woff2');
}

@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url('/css/fonts/Inter/900.woff2') format('woff2');
}

section#shop{
	padding:50px;
	line-height: 1;	
	/*-webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;*/
    margin:0 auto;
    max-width:800px;
}

section#shop.no_margin{
	padding:0px;
	padding-bottom: 2px;
}

section#shop.margin_small{
	padding:25px;
}

section#shop.fullscreen{
	height: 100vh;
    overflow:scroll;
}


.shop{
  line-height: 20px; 
  font-family: 'Inter', sans-serif;
  font-size: 16px; 
}

 body { 
	/*font-family: Verdana, Arial, Helvetica, sans-serif;*/
	font-family: 'Inter', sans-serif;
	color: #6a6a6a; 
	font-size: 16px; 
	background-color: #FFF; 
	padding: 0px; 
	margin: 0px; 
}

#fallback{
	padding: 15px;
    font-size: 24px;
    font-weight: 600;
    margin-bottom: 20px;
    border: solid 1Px;
    text-align: center;
    border-radius: 5px;
    line-height:28px;
    color:#FFF;
    display:none;
}

.fa, .fal, .far{
	margin-left:3px;
	margin-right:3px;	
}

input[type=text], input[type=email]{   
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
input[type="submit"]{
	 -webkit-appearance: none;
}
input, select{
	color: #6A6A6A;
	border:solid 1px #BBB;
	-webkit-border-radius: 1px;
	font-family: 'Inter', sans-serif;
	
}

input[type=radio]{
	  -webkit-border-radius: 3px;
}

input[readonly="readonly"] {
 	background-color: #DDD; 
}

.hidden{visibility:hidden;}
.visible{visibility:visible;}
.none{display:none;}
.block{display:block;}

.disabled_div{
	opacity:0.6;
}

.table .disabled_div{
	opacity:0.3;
}

.table .disabled_div.waiting{
	opacity:0.6;
}

.back_header_title{
	margin-right:10px;
}

.back_header_title .fa{
	margin-right: 5px;
    vertical-align: middle;
}

.message{
	text-align:center;
	margin: 0px auto;
	font-size:16px;
	padding:15px;
	background-color:#FFF;
	color:#6A6A6A;
	line-height: normal;
	border-radius:10px;
}


#search:focus,#search:hover{
    outline:none;
}

.message.message_mode{
	text-align:center;
	margin: 0px auto;
	padding:20px;
	background-color:#FFF;
}
/*.message.message_mode span{
	margin-left:10px;
}*/

.switch_view_container{
	margin-left:auto;
}

.switch_view_container .admin{
	color:#dea317;
}

.switch_view_container .fa{
	font-size: 15px; 
	font-weight: 500;
	 margin-left: 0; 
	 margin-right: 7px;
}

.progress_bar {
	height:20px;
	border-radius: 2px;
	background-color: #6cb71d;
	width:0%;
	display:block;
	margin-top:10px;
}

.message.message_warning{
	background-color: #dea3172e;
    color: #ca7900;
    border: solid 1px #f6484800;
    font-weight: 600;
	margin:10px 0px;
	box-shadow: 2px 1px 2px 0px rgba(238,238,238,1);
	padding:20px;
}

.shop_step1_table .pass_tips.error .shop_step1_name{
	color:#f64848 !important;
	justify-content: center;
}

.message.message_error{
	background-color: #cd0a0a29;
    color: #cd0a0a;
    border: solid 1px #f6484800;
    font-weight: 600;
	margin:10px 0px;
	box-shadow: 2px 1px 2px 0px rgba(238,238,238,1);
	padding:20px;
    line-height: 1.3em;
}

.message.message_error.smooth{
	color:#B00020;
}

.message.message_full{
	padding:70px 10px;
	font-size:14 px;
}

.message .extra_height{
	padding:8px 0px;
}

#message_blocks.fixed{
	 position: fixed;
     top: 0;
     left: 0;
     right: 0;
     z-index: 100000;
     margin: 10px;
     background:#FFF;
}

#message_blocks.fixed .message{
	margin:0px;
}

.message.message_error #message_wrap{
	max-width:400px;
	margin:0 auto;
}

.navButton, .navButtonActive a, .navButtonActive {
	text-shadow: none;
	text-decoration: none;
	font-weight: 600 ;
	font-size:16px;
    padding: 10px 25px;
    background-color: #404040;
    text-align: center ;
    color: #FFFFFF;
	cursor: pointer;
    border: 1px solid ;
     border-radius: 5px;
	-webkit-appearance: none;
	-webkit-border-radius:5px;
	vertical-align:top;
	display:inline-block;
	font-family: 'Inter', sans-serif;
	line-height:41px;
	padding: 0px 25px;
	box-sizing: border-box;
}
.navButtonSecondary{
    background-color: #6A6A6A ;
}
.navButton:hover a {
    color: #FFFFFF ;
}
.navButton:hover {
	background-color: #888;
	color: #FFFFFF;
}


.shop_step3_payment_inline #add_multiple{
    padding-left:0px !important;
}


#add_multiple{
    color: #6A6A6A;
    overflow:hidden;
    text-align:center;
    font-weight:600;
}

#add_multiple .fa{
	margin-right:5px;
}

.smallButton, .smallButton a{
	height: 20px !important;
	line-height: 20px !important;
}

.previousButton{
	display:flex;
	align-items:center;
}

.previousButton a{
	display:inline-block;
}

.nextButton, .nextButton a{
	display: flex;
    align-content: center;
    flex-wrap: wrap;
    gap:20px;
}


.button_container{
	margin-top:30px;
	min-height:30px;	
	pointer-events: none;
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display:flex;
	align-items: center;
    gap: 20px;
    justify-content: flex-end;
}

.button_container .promote_link{
	flex:1;
}



.button_container:empty{
	display:none;
}

.button_container > div, .button_container > a{
	pointer-events: auto;
}


.special_offer .button_container{
	margin-top:0px;
}

.promote_block{
	font-size:15px !important;
	color:#1D1D1B;
	margin-bottom:18px;
	line-height:28px;
	display:flex;
	flex-wrap: wrap;
	gap:10px 0px;
}

.promote_block .separator{
	padding:0px;
	margin-left: 12px;
    margin-right: 12px;
    color: #ccc;
}


.promote_block #language_icon .fa{
	margin-left:3px;
	font-size:12px;
}

.fa-comment .fa-comment{
	margin-left: 0px;
    margin-right: 5px;
}

.top_module_container{
	line-height:normal;
}

.top_module_container .top_module_bloc{
	display:none;
	margin:20px 0;
	border:solid 1px #DDD;
}


.top_module_container .shop_step1_header{
	text-align:left;
	border:none;
    margin: 0px;
    text-align: left;
    margin-bottom:20px;
}

.top_module_container .shop_step1_header_name{
	padding:5px;
	display:flex;
	align-items: start;
	gap: 10px;
    padding: 0px;
}

.top_module_container .far{
	font-size:16px;
}

.top_module_container td{
	vertical-align:middle;
}

.top_module_container .shop_step1_name{
	padding: 10px 0px !important;
	padding-right: 10px !important;
}

.top_module_container table, #waiting, #relink, #check_payment_table{
	border-collapse: inherit;
	padding:25px;
}

.top_module_container input{
	padding: 8px;
    border-radius: 5px;
    font-size: 16px;
    margin: 5px 0px;
}

.top_module_container .button_container{
	margin-top:20px;
}


.top_module_container .previousButton{
	margin-left:auto;
	margin-right:10px;
}

.promote_block .active{
	font-weight:600 !important;
}
.promote_block a{
	color:#6A6A6A;
}
.promote_block a:hover{
	text-decoration:underline;
}
/*----------------------------------------------------------------------------------------------------------------
 VALIDATION
------------------------------------------------------------------------------------------------------------------*/

input.valid{
   border-right: 4px solid  #0a99d1;
}

 .error .checkbox, .error select , .error input{
    border-color: #f64848 !important;
}

label.error  { 
	float: none; 
	/*white-space: nowrap;*/
    clear: left;
    border-radius: 5px;
    font-size: 16px;
    margin-left:9px;
    font-weight:600;
    color:#f64848;
    display:flex;
    gap:3px;
    margin-top:10px;
    margin-bottom:10px;
}

.error{
	color:#f64848;
}


.error .multiple_checkbox_tip{
	background: #f64848;
    color: #fff;
    padding: 3px 10px;
    border-radius: 10px;
    display: inline-block;
    margin: 5px 0px;
}

.multiple_checkbox_field [generated]{
	display:none !important;
}

input[type=radio],
input[type=checkbox] {
   -webkit-appearance: none;
   -moz-appearance:    none;
   appearance:         none;
}

input[type=radio],
input[type=radio]:checked::before{
  border-radius: 100%;
}

input[type=radio]:checked::before,
input[type=checkbox]:checked::before {
 	content: "";
    width: 14px;
    height: 14px;
    background-color: #0a99d1;
    position: absolute;
 	top: 2px;
    left: 2px;
}

input[type=checkbox]:checked::before {
    border-radius: 5px;
}

input[type=radio],
input[type=checkbox] {
 	width: 10px !important;
    height: 10px !important;
    border: solid 1px #cccccc;
    margin-right:6px;
    cursor: pointer;
    position: relative;
    vertical-align: middle;
    padding: 9px !important;
}

input[type=checkbox]{
    border-radius: 5px !important;
}

input[type=checkbox], [type=checkbox]:checked::before {
	border-radius:3px
}

input[type=radio], [type=radio]:checked::before {
	border-radius:10px;
}

@media (max-width: 500px) { 
	
	.error label{
		display:flex;
		margin: 0px;
    	padding: 0px !important;
    	margin-top:10px;
    	margin-bottom:10px;
	}

}

/*----------------------------------------------------------------------------------------------------------------
  SHOP HEADER
------------------------------------------------------------------------------------------------------------------*/

#checkout_step_description{
	margin:10px 0px;
	margin-top: 30px;
	margin-left:2px;
}

#checkout{
	display: flex;
}

#checkout  li{
	display: inline-block;
	line-height: 40px;
}

#checkout .step {
	display: inline-block;
	color: #3E4254;
	white-space: nowrap;
	flex: 1;
    flex-grow: 1;
    border-bottom: solid 2px #ccc;
    margin-left:2px;
    margin-right:2px;
}

#checkout .step .symbol {
    display: inline-block;
    text-align: center;
    text-shadow: none;
    border-radius:1px;
    font-size: 18px;
    padding: 3px;
    vertical-align: middle;
    opacity:0.2;
    display:none;
}


#checkout .step .text {
	display: inline-block;
    color:#6A6A6A;
    opacity:0.2;
    display:none;
}

#checkout .active .text {
	opacity:1;	
}

#checkout .active .text {
    padding-right:5px;
}

#loading{
	text-align:center;
	display:none;
	margin:10px;
}

#loading img{
	width:40px;
	height:40px;
}

#contingent{
	margin-left:10px;
    border-radius: 5px;
    border:none;
    font-size:16px;
    color:#dea317 !important;
}

#context_back_container{
	display:none;
}

.page #checkout_step_description, .page #checkout{

}

#context_back_container{
	margin-top: 30px;
    color: #1D1D1B;
    font-size: 15px;
    margin-bottom: 0px;
    line-height: 30px;
}

#context_back_container .far{
	font-weight: 500;
    font-size: 14px;
    margin-right: 6px;
	color:#6a6a6a;
}

#context_back_container a{
	padding: 10px 0px;
}

#context_title{
    color: #1D1D1B;
    font-size:18px;
    text-align: center;
    border-bottom: solid 1px #1D1D1B33;
    padding-bottom: 15px;
    margin-top: 30px;
    display:none;
    font-weight:600;
    line-height: 26px;
}

.context_title_details{
	font-size:14px;
	font-weight:300;
}

.back_header{
	font-size:16px;
	padding:10px 0px;
	margin-bottom:10px;
	line-height:22px;
	border-radius:10px;
    margin-bottom: 0px;
    display:none;
}

.back_header_link{
	font-size:11px;
	font-weight:300;
}

.back_header_subtitle{
	margin-left: 20px;
    font-size: 11px;
}

.back_header_control{
	display:inline-block;
}

#header_blocks .feedback{
	background:#6cb71d;
}

#send_again{
	max-width: 800px;
    margin: 0px auto;
}


#waiting, #send_again table{
	border: solid 1px #DDD;
    border-radius: 10px
}

.send_again_details{
	display:none;
}


/*----------------------------------------------------------------------------------------------------------------
  STEP 1
------------------------------------------------------------------------------------------------------------------*/

.bloc_separator{
	margin-bottom:20px;
}

.shop_step1_table tr{
	display: flex;
    border-radius:10px;
}

.shop_step1_table .shop_step1_ticket{
	border: 1px solid #1D1D1B33;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	padding:20px;
	margin-bottom:10px;
}

.shop_step1_table .shop_step1_name{
	cursor:pointer;
	line-height:15px;
    border-radius:10px;
    display:flex;
   flex: 0 1 100%;
   font-weight:600;
   color: #1D1D1B;
   padding-bottom:15px;
   line-height: normal;
   position:relative;
}

.shop_step1_table .shop_step1_ticket.no_price:not(.donation){
   flex-wrap: nowrap;
}

.shop_step1_table .shop_step1_ticket.no_price.with_choice:not(.donation){
	flex-wrap: wrap;
	justify-content:right;
}

.shop_step1_table .shop_step1_ticket.no_price .shop_step1_price{
	display:none;
}


.shop_step1_table .shop_step1_ticket.no_price .shop_step1_name{
   flex: auto;
   padding-bottom:0px;
   justify-content: center;
}


.shop_step1_table .shop_step1_ticket .shop_step1_name{
	flex-direction: column;
}

.shop_step1_price{
	 display:flex;
	 flex: 1 0 50%;
	 border-radius:10px;
	 align-items: center;
	 flex-wrap: wrap;
	 gap:5px 0px;
	 color: #1D1D1B;
}

.shop_step1_price_original{
	text-decoration:line-through;
	margin-left:10px;
	font-size:14px;
}

.shop_step1_quantity_icon{
	padding: 0px;
    border-radius: 50px;
    color: #FFF;
    font-size:10px;
    margin:0px;
    background:#1D1D1B 0% 0% no-repeat padding-box;
    width: 30px;
    height: 30px;
    line-height: 30px;
    display: block;
}

.shop_step1_quantity_icon_remove {
	background: #1D1D1B 0% 0% no-repeat padding-box;
	opacity: 0.15;
}


.shop_step1_choice{
	padding-top: 15px;
    text-align: right;
    width: 100%;
    font-weight: 600;
    line-height: 18px;
    display:none;
}

.shop_step1_reduction_alert{
	margin-top:10px;
    width: 100%;
    font-weight: 600;
    line-height:20px;
    display:none;
}

/* category */


.shop_step1_table .shop_step1_category.with_image {
	padding:10px;
}

.shop_step1_table .shop_step1_category {
	padding:20px;
	background: #E9E9E9;
	border:solid 1px #E9E9E9;
}

.shop_step1_table .shop_step1_category, .stop_step1_div_container.shop_step1_category:hover{
	background-color: #E9E9E9;
}

.shop_step1_table .shop_step1_category.clear {
	background: #F5F5F5;
	border:solid 1px #F5F5F5;
}

.shop_step1_category .shop_step1_name{
	 padding-bottom:0px;
	 font-size:18px;
	 line-height:normal;
}

.shop_step1_table tr td{
	vertical-align: middle; 
}

.shop_step1_table .shop_step1_category{
	padding: 20px;
    border-radius: 10px;
    margin-bottom: 10px;
	cursor:pointer;	
	font-weight:600;
}

.step_2 .shop_step1_table .shop_step1_category{
	 margin-bottom: 5px;
}

.step_2 .options_category{
	padding: 10px 0px;
	font-size:16px;
}

.step_2 .options_category .shop_step1_name{
	
}


/* sessions */

#session_container{
	margin-top:20px;
}

#shop_session_container .shop_step1_table .shop_step1_session{
	padding: 20px;
    border: 1px solid #1D1D1B33;
    border-radius: 10px;
    margin-bottom: 20px;
    box-sizing: border-box;
}

#shop_session_container tr td{
	display:flex;
	width:100%;
}

#shop_session_container .shop_step1_category .expand_icon{
	padding-right: 10px;
}


#shop_session_container  .shop_step1_category .shop_step1_name{
	align-items: center;
}

.calendar_view #shop_session_container .sesssion_href_table{
	flex-direction: column;
	gap: 20px;
}

.calendar_view .shop_step1_header{
	white-space: nowrap;
}

#shop_session_container .sesssion_href_table .shop_step1_name{
	display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
}

#shop_session_container .shop_step1_table .shop_step1_name{
	padding:0px;
	line-height:normal;
}



#shop_session_container .shop_step1_session_name:empty{
	display:none !important;
}

.shop_step1_table:not(.zoom) .shop_step1_category.level_0.expanded.multi_level {
	font-weight:700;
}

.shop_step1_column{
	display: flex;
    align-items: left;
    flex-direction: column;
    justify-content: center;
}

.shop_step1_name.high_density, .shop_step1_category.high_density > .shop_step1_name{
	padding: 10px 10px !important;
}

.shop_step1_category.extra_height .shop_step1_details{
	margin-top: 10px;
}
	
.step_1 .shop_step1_table.zoom tr.selected > td{
	font-weight:700;
}


.step_1 .shop_step1_ticket.disabled .shop_step1_name_container, .step_1 .shop_step1_ticket.disabled .shop_step1_price, .step_1 .shop_step1_ticket.disabled .shop_step1_quantity{
	color:#CCC;
}

.step_1 .shop_step1_ticket.upcoming .shop_step1_name_container, .step_1 .shop_step1_ticket.upcoming .shop_step1_price{
	color:#CCC;
}

.shop_step1_ticket.disabled .shop_step1_quantity{
	flex-direction: column;
    vertical-align: top;
    gap: 10px;
    align-items: end;
}

.shop_step1_ticket.disabled .shop_step1_quantity div:not(.resale), .shop_step1_ticket.disabled .shop_step1_quantity input{
	display:none;
}

.shop_step1_ticket.disabled .shop_step1_quantity .resale , .shop_step1_ticket.disabled .shop_step1_quantity .waiting_link{
	font-weight: 600;
}

.shop_step1_category_options{
	font-weight:600 !important;
	margin-bottom:10px !important;
}


.shop_step1_table .shop_step1_ticket.special .shop_step1_name{
	color:#f64848 !important;
}


.shop_step1_table .hidden_class{
	opacity:0.5;
}

.shop_step1_table .shop_step1_category td, .shop_step1_table .shop_step1_category{
	border-radius: 10px;
}



.shop_step1_header{
	width: 100%;  
	color: #1D1D1B;
    font-size: 18px;
    text-align: center;
    padding-bottom: 5px;
    margin-top: 20px;
    font-weight: 600;
}


.shop_step1_category .ticket_image{
	width:50px;
	vertical-align:middle;
	border-radius:8px;
	margin-right:10px;
}

.shop_step1_ticket .shop_step1_image{
	position:relative;
}

.shop_step1_ticket .zoom{
	right: 5px;
    color: #FFF;
    position: absolute;
    bottom: 25px;
    font-size: 18px;
}

.shop_step1_ticket .ticket_image {
	width:100px;
	margin-bottom:16px;
	vertical-align:middle;
	border-radius:8px;
}

.ticket_image {
    transition: transform 0.3s ease, width 0.3s ease, height 0.3s ease;
    cursor: pointer;
}

.ticket_image.expanded {
    width: 100%;
	max-width:400px;
    height: auto;
}

.ticket_image.expanded.mini {
	max-width:200px;
}

.shop_step1_category.with_image > .shop_step1_name{
	padding:5px;
}


.shop_step1_title{
	padding-left:5px;
	margin-bottom:10px;
	display:none;
}

.shop_step1_header_name {
	 padding:0 10px;
}

.shop_step1_name_container{
	display: flex;
    align-items: center;
    gap:10px 12px;
    flex-wrap: wrap;
    line-height:normal;
    line-height: 22px;
}

.shop_step1_name_container.prev_infobutton{
	padding-left:23px;
}

.shop_step1_show_description_before {
	position:absolute;
	display: inline;
    margin-left: -10px;
}

.shop_step1_show_description{
	position:relative; 
}

.shop_step1_show_description:after {
    content:'';
    position:absolute;
    top:-10px; 
    bottom:-10px; 
    left:-10px; 
    right:-10px; 
}

.prev_infobutton .shop_step1_description{
	margin-left:15px;
}


.shop_step1_name_extra1{
	font-weight: 300;
}

.shop_step1_name_extra2{
	font-weight:regular;
	
}

.shop_step1_header_price, .shop_step1_header_quantity{
 	text-align: center; 
 	padding: 0px; 
}

.shop_step1_header_price{
	min-width:100px;
}

.shop_step1_currency{
	margin-left:2px;
}

.shop_step1_session{
	display:table;
	width:100%;
}

.sesssion_href_table{
	display:flex;
	width:100%;
	gap:20px;
}

.shop_step1_filters{
	flex-flow: wrap;
	justify-content: center;
}

.shop_step1_table .shop_step1_session .shop_step1_name{
	align-items: center;
}


.shop_step1_session_validate{
    font-weight: 600;
    font-size: 16px;
    padding: 10px 25px;
    background-color: #404040;
    text-align: center;
    color: #FFFFFF;
    cursor: pointer;
    border: 0px solid;
    border-radius: 5px;
    -webkit-appearance: none;
    -webkit-border-radius: 5px;
    display: inline-block;
    font-family: 'Inter', sans-serif;
}

.shop_step1_session_icon_go{
	font-size:14px;
	margin-left:5px;
	vertical-align:middle;
	display:none !important;
}

.shop_step1_session_icon_stop{
	color:#AAA;
	margin-left:10px;
	font-size: 11px; 
	margin-right: 23px;
	display:none !important;
}


.shop_step1_session_description{
	padding-left:0px;
}
.shop_step1_session_description:empty, .shop_step1_session_place:empty, .shop_step1_session_availability:empty{
	display:none !important;
}

.shop_step1_category .expand_icon{
	font-size:14px;
	margin-right:5px;
	width: 14px;
    text-align: center;
}

.shop_step1_category .shop_step1_details{
	font-weight:100;
    font-size: 14px;
    margin-top: 5px;
}

#event_list .shop_event_list img{
	padding:5px 5px;
	vertical-align:middle;
	border-radius:10px;
}




.shop_step1_availability, .shop_step1_end_time, .shop_step1_label{
	font-size:12px;
	line-height:normal;
}

.shop_step1_label{
	border:solid 1px;
	 border-radius: 3px;
	 padding: 2px 5px;
}

.shop_step1_availability, .shop_step1_end_time{
	color: #1d1d1b61;
	border-color: #1d1d1b1a;
}

.shop_step1_availability:empty{
	display:none;
}

.shop_step1_label{
	color: #1D1D1B;
	border-color: #1D1D1B;
	box-shadow: 2px 2px 3px 0px #8080801a;
}

.shop_step1_description {
	margin-top: 10px;
    /*white-space:nowrap; shift price select on the right*/
    -webkit-touch-callout: text;
    -webkit-user-select: text;
    -khtml-user-select: text;
    -moz-user-select: text;
    -ms-user-select: text;
    user-select: text;
    color: #1D1D1B;
	opacity: 0.6;
	font-weight: normal;
	font-size: 16px;
	line-height: 1.3em;
	margin-bottom:5px;
	overflow:hidden;
}

.shop_step1_description a{
	overflow-wrap: anywhere;
	text-decoration:underline;
	font-weight:400;
}

.shop_step1_description_more_info{
	font-size: 15px;
    display: inline-block;
    font-weight: 300;
    vertical-align: middle;
    display: block;
    text-align: center;
    text-decoration: none;
    display: none;
    position: relative;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: center;
    margin: 0;
    background: -moz-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 60%);
    background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 60%);
    background: linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 60%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=0 );
    color: #a7a7a7;
    padding-top: 80px;
    padding-bottom: 25px;
}


.shop_step1_description_more_info .fa{
	font-size: 10px;
}

.disabled .shop_step1_description_more_info{
	color: #CCC;
}


.shop_step1_ticket.truncated .shop_step1_description_more_info{
	display:block;
	text-align:left;
}

.shop_step1_description:empty{
	display:none;
}

.disabled .shop_step1_description{
	color:#CCC;
}

.shop_step1_filter_container{
	margin:5px;
}

.shop_step1_filter{
	flex: 0 1 100%;
}

.shop_step1_filter input{
	border: solid 1px #CCC;
	width:100%;
	padding:10px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-radius:5px;
}

.shop_step1_show_description{
	margin-left:-3px;
}

.shop_step1_show_description_before{
	display:none;
	vertical-align:top;
}


.shop_step1_session_status {
	line-height:12px;
	font-size:10px;
	overflow:auto;
	margin-left:2px;
	display:block;
}

.shop_step1_session_status:empty{
	display:none;
}

.shop_step1_session_description {
	margin-top:5px;
	font-size:14px;
	font-weight:300;
	color: #1D1D1B66;
	line-height:normal;
}

.shop_step1_session_name{
	font-weight:600;
	font-size:18px;
	padding: 5px 0px;
}

.shop_step1_session_date{
	margin-right:10px;
	font-size:16px;
	padding: 0px 0px;
	font-weight:300;
}

.shop_step1_session_place{
	color:#AAA;
	font-size:10px;
	margin-right:10px;
	padding: 5px 0px;
}

.shop_step1_session_availability{
	margin-top:5px;
	white-space:nowrap;
	margin-left:0px;
}

.shop_session_column_right .table .shop_step1_session_availability{
	margin-right:0px;
}

.density .shop_step1_session_place{
	display:block;
}


.click_to_add{
	cursor:pointer;
}

.shop_step1_quantity{
	white-space: nowrap;
	align-items: center;
    display: flex;
    align-item:end;
    padding-left:15px;
}

.shop_step1_quantity_radio_container{
	vertical-align:middle;
	white-space:nowrap;
	cursor:pointer;
}

.shop_step1_quantity_radio label{
	padding:7px 0px;
	cursor:pointer;
}

.shop_step1_quantity_radio > span{
	display:flex;
}

.shop_step1_quantity_radio input[type="radio"].error{
  outline: solid 1px #DF0000;
   outline-offset: 3px;
  -moz-appearance: none;
}

.shop_step1_quantity_radio label.error{
	display:inline-block;
	margin-top:3px;
}


.shop_step1_add_quantity, .shop_step1_remove_quantity{
	display:inline-block;
	vertical-align:middle;
	color:#CCC;
	font-weight: 600; 
	font-size:18px;
	cursor:pointer;
	text-align:center;
}

.shop_step1_quantity .included{
	display:none;
	margin-right:5px;
}


select{
    -webkit-appearance: none;
    -webkit-border-radius: 0;
    background-image: url(/images/bo/multiple-select.png);
    background-position: 100% 50%;
    background-repeat: no-repeat;
    border-radius: 5px;
    padding: 7px 22px 7px 10px;
    font-family: 'Inter', sans-serif;
}

.step_5 select{
      background-image: url(/images/shop/select.png);
}

.shop_step1_quantity_select{
	display:inline-block;
	vertical-align:middle;
	border:none;
	font-size: 17px;
	text-align: left;
	margin-left:15px;
	padding:0px;
	background:none;
	width: 25px;
	cursor:pointer;
}

.shop_step1_quantity_select.ten{
	margin-left:10px;
	margin-right:5px;
}

.step_2 select.shop_step1_quantity_select{
	margin:10px;
	border:solid 1px #ccc;
	width:auto;
	padding: 7px 22px 7px 10px;
	background-image: url(/images/bo/multiple-select.png);
    background-position: 100% 50%;
    background-repeat: no-repeat;
    min-width: 50px !important;
}

.shop_step1_quantity_select:focus, .shop_step1_quantity_select:focus{
    outline: none;
}

.shop_step1_quantity_radio_container{
	display: flex;
    align-items: center;
}

.shop_step1_quantity_radio_container input{
	max-width:none;
	min-width:auto;
	margin-top:0px;
}

.shop_step1_amount, .shop_step1_header_amount{
	text-align: right; 
	width: auto;
}

.donation_amount{
	font-size:12px;
	line-height:12px;
	margin-right:10px;
	display:inline-block;
}

.preset_amount_container{
	display: block;
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	margin-right: 5px;
}

.preset_amount_container.moved{
	margin-bottom:8px;
}

.preset_amount{
	display:inline-block;
	padding: 7px;
    background: #1D1D1B;
    color: #fff;
    border: none;
    border-radius: 5px;
}

.price_donation_currency{
	margin-right:15px;
}


.donation_input {
	width:35px;
	text-align:center;
    border-radius: 5px;
    padding: 5px 10px;
    margin-right:5px;
    font-size:16px;
}

#donation_local_yes{
	display: flex;
    flex-direction: row;
}

#donation_local_yes .preset_amount_container{
	margin-left:20px;	
}

.shop_step1_footer_details{
	font-size: 18px;
    color: #1D1D1B;
    border-top: solid 1px #1D1D1B33;
    border-radius: 0px !important;
    margin-top:30px;
    padding-top:20px;	
}
.shop_step1_footer_container{ 
	margin-left:auto;
	margin-right:20px;
}

.shop_step1_footer{
	width: 100%;  
	margin: 0px; 
	padding:0px; 
	color: #1D1D1B;
	text-align:center;
	font-weight:600;
}

.shop_step1_empty {
	font-size: 18px;
    text-align: center;
    width: auto;
    padding: 20px 0px;
    color: #1D1D1B;
    line-height: 26px;
    border: solid 1px #CCC;
    width: 100%;
    border-radius: 10px;
    font-weight: 600;
    text-align: center;
    display: block !important;
}
.shop_step1_empty .far{
	font-size:18px;
}
.shop_step1_empty:hover{
	background:#FFF !important;
}

.shop_step1_empty > div{
	margin-left:40px;
	margin-right:40px;
}

.pass_tips{
	border-bottom: solid 1px #DDD;
	text-align:center;
	justify-content: center;
	margin-top:5px;
}
.pass_tips{
	border:none;
}

.pass_tips .fal{
	margin-right:10px;
}


.hidden_condition{
	display:none !important;
}

.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next{
	top:8px !important;
	width: 30px;
    height: 30px;
    font-size: 16px;
}

.ui-datepicker .ui-datepicker-prev.ui-state-disabled, .ui-datepicker .ui-datepicker-next.ui-state-disabled{
	opacity:0.3;
}

#session_datepicker .ui-datepicker .ui-datepicker-next,  #calendar_datepicker .ui-datepicker .ui-datepicker-next {
    right: 10px;
    padding: 0px;
}

#session_datepicker .ui-datepicker .ui-datepicker-prev,  #calendar_datepicker .ui-datepicker .ui-datepicker-prev{
	left: 10px;
	padding: 0px;
}

#session_datepicker .ui-datepicker .ui-datepicker-next:not(.ui-state-disabled), #session_datepicker .ui-datepicker .ui-datepicker-prev:not(.ui-state-disabled), #calendar_datepicker .ui-datepicker .ui-datepicker-next:not(.ui-state-disabled), #calendar_datepicker .ui-datepicker .ui-datepicker-prev:not(.ui-state-disabled){
    cursor:pointer;
}


.step_5 .ui-widget-content .ui-datepicker-header .ui-state-hover, .step_5 .ui-widget-content, .step_5 .ui-state-default, .step_5 .ui-widget-content .ui-state-default, .step_5 .ui-widget-header .ui-state-default, .step_5 .ui-datepicker-header, .step_5 .ui-datepicker-year, .step_5 .ui-datepicker-month{
	border:solid 1px #ededed;
}

.step_5 .ui-widget-content .ui-state-hover{
	border:solid 1px #999;
}

.step_5 .ui-datepicker .ui-datepicker-prev, .step_5 .ui-datepicker .ui-datepicker-next{
	top: 8px;
}

.ui-state-hover{
	background:#FFF !important;
}

.ui-state-hover:before, .ui-state-hover:before{
	color:#000 !important;
}

.ui-datepicker:not(.ui-datepicker-inline).ui-widget-content .ui-datepicker-header .ui-state-hover, .ui-datepicker:not(.ui-datepicker-inline).ui-widget-content, .ui-datepicker:not(.ui-datepicker-inline) .ui-state-default, .ui-datepicker:not(.ui-datepicker-inline) .ui-widget-content .ui-state-default, .ui-datepicker:not(.ui-datepicker-inline) .ui-widget-header .ui-state-default, .ui-datepicker:not(.ui-datepicker-inline) .ui-datepicker-header, .ui-datepicker:not(.ui-datepicker-inline) .ui-datepicker-year, .ui-datepicker:not(.ui-datepicker-inline) .ui-datepicker-month{
	border:solid 1px #1D1D1B33;
}

.ui-datepicker:not(.ui-datepicker-inline).ui-widget-content .ui-state-hover{
	border:solid 1px #999;
}

.ui-datepicker:not(.ui-datepicker-inline).ui-datepicker .ui-datepicker-prev, .ui-datepicker:not(.ui-datepicker-inline).ui-datepicker .ui-datepicker-next{
	top: 8px;
}


.ui-datepicker-month, .ui-datepicker-year{
	max-width:100px;
	padding:5px;
}

.ui-datepicker .ui-datepicker-title {
	line-height:2.8em !important;
	max-width: 220px;
    margin: 0 auto;
}

#search.active{
	border-color:#00b6ff !important;
}


.total_ticket_container{
	display:none;
}



#offline_submit{
	background:#7eb347;
}

.step_1 .ui-dialog-titlebar{
	border:none !important;
}

#offline_payment .offline_payment_container{
	padding:15px 5px;
	border:solid 1px #AAA;
	margin:10px 0px;
	border-radius: 5px;
	cursor:pointer;
}

#offline_payment .offline_payment_container label, #offline_payment .offline_payment_container input{
	vertical-align:top;	
}

#association .association_container{
	margin:10px;
	padding:10px;
	cursor:pointer;
}

#association .association_container.active{
	background:#7eb347;
	border-radius: 3px;
	color: #FFF;
}

#association .association_container label{
	width:250px;
	display:inline-block;
	vertical-align:top;
	margin-top: 4px;
}

#association .association_container .input_container{
	display:inline-block;
	margin-left: 30px;
	vertical-align:top;
}


#association .association_container input{
	width:100px;
	border-radius: 3px;
}

#payment_logo{
	color: #1D1D1B;
	font-size:15px;
	font-weight:600;
	display:flex;
	margin-right:20px;
	line-height: 20px;
}

#payment_logo span{
	display: flex;
    align-items: center;
}
#payment_logo .fal{
	margin-right:8px;
	font-weight:500;
}

/*----------------------------------------------------------------------------------------------------------------
  STEP 2
------------------------------------------------------------------------------------------------------------------*/

.shop_step2_instructions{
	display:inline-block;
	padding:5Px;
}

.shop_step2_fields_mandatory{
	float:right;
	padding:5px;
	display:none;
}

.shop_step2_table td {
	clear:both; 
}

.shop_step2_table td .tip{
	font-weight: 100;
    margin: 5px 0px;
    font-size: 14px;
    display: block;
    width:100%;
    color: #1D1D1B66;
}
.shop_step2_table td .tip .far{
	margin:5px;
	display:none;
}

.shop_step2_table td .tip a{
	text-decoration:underline;
	word-break: break-all;
}

.shop_step2_table tr.separator td.shop_step2_name{
	font-weight:600;
	padding: 20px 0px 10px 0px;
	border-bottom: solid 1px !important;
	margin-top:20px;
}

.shop_step2_table tr td{
	line-height:20px;
}

.shop_step2_table_insurance{
	margin-top: 10px;
    display: flex;
    border-radius: 10px;
    border: solid 1px;
    border: 1px solid #1D1D1B33;
    padding:20px;
    gap:20px;
}

.shop_step2_table tr.yesno_field label{
	margin-right:10px;
	cursor:pointer;
}

.shop_step2_table_insurance #insurance_checkbox{
	margin-left: auto;
    flex-direction: row;
    display: flex;
    align-items: start;
    gap:20px;
}

.shop_step2_table_insurance #insurance_checkbox label{
	cursor:pointer;
}

.insurance_checkbox_item{
	margin-right: 10px;
    display: flex;
    align-items: center;
}


.shop_step2_table_terms{
	margin-top:30px;
	display:flex;	
	padding-bottom:20px;
}

.shop_step2_header{
	padding:none;
	margin:none;
	color:#575258; 
	font-weight: 600; 
	background-color: #EEE; 
	padding:20px;
	border-radius:10px;
	margin-bottom:5px;
	font-size:18px;
	line-height:24px;
}

.shop_step2_header.shop_step2_header_buyer{
	display:flex;
}

.shop_step2_header br {
   display: block;
    margin-top: 5px;
    content: "";
}

.shop_step2_header:first{
	margin-top:0px;
}

.shop_step2_table td {
    display: flex;
    width: auto;
    align-items: center;
    flex-wrap: wrap;
}
.shop_step2_table .first_row td.shop_step2_name {
	margin-top:10px;
}

.step_6 .shop_step2_header{
	margin-bottom:10px;
}

.shop_step2_admin_header{
	margin-top:10px;
	background:none !important;
	color:#dea317 !important;
	padding-bottom: 5px;
    padding-left: 5px;
}

.shop_step2_header_subtitle{
	font-weight:100;
}

.shop_step2_header .shop_step2_header_pass{
    font-weight: 100;
    display: block;
    color: #AAA;
    line-height: 24px;
}



.shop_step2_header .shop_step2_header_seating{
	margin-left:10px;
	font-weight:100;
}

.shop_step2_select {
	width: 250px; 
  	margin:0px;
  	padding: 15px;
    font-size: 16px;
    border-radius: 10px;
    margin-right:10px;
    padding-right: 35px;
}


.shop_step2_table input{
	width:300px;
	text-indent: 3px;
	padding: 14px;
    border-radius: 10px;
    font-family: 'Inter', sans-serif;
    font-size:16px;
    margin-right:10px;
    margin-top:0px;
}


input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active{
    -webkit-box-shadow: 0 0 0 30px white inset !important;
}


.shop_step2_table .multiple_checkbox_field .shop_step2_input{
	flex-direction: column;
    align-items: start;
}

.shop_step2_table .multiple_checkbox_field .shop_step2_name{
	margin-top:10px !important;
}

.shop_step2_table .multiple_checkbox_field input{
	margin:0px;
	margin-right:8px;
}

.shop_step2_table .yesno_field td.shop_step2_input{
	margin-bottom:10px;
	margin-top: 6px;
}

.shop_step2_table .multiple_checkbox_field_row{
	margin-top:5px;
	margin-bottom:5px;
	align-items: center;
    display: flex;
}

.shop_step2_table .multiple_checkbox_field label{
	cursor:pointer;
}

.shop_step2_table .checkbox_field{
	padding-top:20px;
	margin-bottom:10px;
}

.shop_step2_table .checkbox_field label{
	cursor:pointer;
}

.shop_step2_table .checkbox_field, .shop_step2_table .checkbox_field td{
	display:flex;
	align-items: center;
}

.shop_step2_table .checkbox_field .shop_step2_name{
	padding:0px;
	padding-left:5px;
	flex-direction: column;
    align-items: start;
}

.shop_step2_table .iti input{
	margin-left:3px !important;
	width:208px;
}

.shop_step2_table .iti .iti__selected-flag {
	max-height:3.5em !important;
	padding: 0px 6px 0 18px;
}


.shop_step2_name{
	margin: 5px 0;
	padding: 2px;
    padding-top: 10px;
    border-left: none;
    border-bottom: none;
    font-weight:600;
}

.shop_step15_name{
    padding-right: 10px;
    padding-top: 20px;
    padding-bottom: 10px;
}

tr.copy_details, tr.dynamic_copy_details{
	padding:10px;
	color:#7ebe57;
}


.copy_details_container .shop_step2_name .fa-user, .dynamic_copy_details_container .shop_step2_name .fa-user{
	margin-right:5px;
}

select.copy_details, select.dynamic_copy_details{
	padding: 14px;
    border: solid 2px #7ebe57;
    border-radius: 10px;
    width: 250px;
}

.terms_label{
	text-align:left;
	padding:5px;
	vertical-align: top;
    padding-top: 5px !important;
}

.terms_checkbox{
	display: flex;
    gap:5px;
    line-height:24px;
}

.terms_checkbox a{
	margin-left:2px;	
	margin-right:2px;
}

.shop_step2_table_insurance{
	margin-bottom:30px;
}

.error .terms_checkbox label{
	margin-top:0px;
}

.terms_label label{
	line-height: 24px;
}

.show_tip_full{
	margin-left:5px;
}

#mandatory_fields{
	display:inline-block;
	float:right;
	vertical-align:middle;
	font-size:14px;
	margin-right:15px;
	display:none;
}

.privacy_modal_open{
	cursor:pointer;
	font-size:14px;
	line-height: 24px;
	display:flex;
	align-items: center;
	margin-left:auto;
	gap:3px;
}

.privacy_modal_open .fal{
	font-size:12px;
}


#TermsOfSale{
	line-height: 18px;
}

#TermsOfSale a, #insurance_row_details a{
	font-weight: 600;
	text-decoration:underline;
}

.seating_block select{
	max-width:200px;
}

ul.ui-autocomplete.ui-menu{
	overflow:hidden;
	width:500px;
	cursor:pointer;
	padding:10px;
}

ul.ui-autocomplete .ui-state-focus{
	border-left:none;
	border-right:none;
}


.captcha_container{
	text-align: right;
	padding:20px 0px;
}

.step_5 .separator{
	text-align:left;
}

.step_5 .separator .tip{
	text-align:left;
}


/*----------------------------------------------------------------------------------------------------------------
  STEP 3
------------------------------------------------------------------------------------------------------------------*/


.shop_step3_separator td{ background-color: #fff; }



.checkout_order_title{
	line-height: normal;
	font-weight:600;
	line-height: 24px;
}

.checkout_order_action_buttons{
	align-content: flex-end;
    display: flex;
    margin-top: 3px;
    gap:4px;
}

.checkout_action{
    cursor: pointer;
    margin-right:3px;
    display: flex;
}

.checkout_action .text{
	display:none;
}

.checkout_action .far{
	margin-right: 5px;
	margin-left: 5px;
	font-size:18px;
}

.checkout_action.to_update{
	color:#DF0000;
	font-weight:600;
	padding-right:5px;
}

.checkout_action.checkout_expired{
	color:#DF0000;
	font-weight:100;
	border:none !important;
	box-shadow: none;
}

.checkout_action .fa{
	margin:0px 5px;	
}

.checkout_action.checkout_paid{
	margin-left:5px;
}

.shop_step3_table.shop_step3_table_paid td{
	padding:5px;
}



#shop_step3_table_summary tbody{
	display: flex;
    flex-direction: column;
    gap:10px;
}

#shop_step3_table_summary tbody tr.shop_step3_table_summary_product td{
	display: flex;
    flex-direction: row;
}

#shop_step3_table_summary tbody .shop_step3_table_summary_event{
	justify-content: space-between;
    padding: 0px;
    display:flex;
    align-items:start;
    flex-direction: row;
    min-height: 22px;
    flex-wrap:wrap;
    gap:5px 10px;
}



#shop_step3_table_summary tbody .shop_step3_name{
	display:inline;
	width:100%;
    align-items: center;
    color: #1D1D1B;
	opacity: 0.6;
	flex-wrap: nowrap;
	line-height: 20px;
	flex:2;
}

#shop_step3_table_summary tbody  .shop_step1_price_value{
	margin-left:10px;
}

#shop_step3_table_summary tbody .shop_step3_price{
	display:none;
}

#shop_step3_table_summary tbody .shop_step3_table_summary_product{
	font-size:15px;
}

#shop_step3_table_summary tbody .shop_step3_table_summary_product.subproduct{
	border-left: solid 1px #EEE;
    padding-left:5px;
    margin-left:5px;
}

#shop_step3_table_summary tbody .shop_step3_price_row{
	display:flex;
	width:100%;
    align-items: start;
    color: #1D1D1B;
	flex:1;
}

#shop_step3_table_summary tbody .shop_step3_price_row .shop_step3_quantity{
	opacity:0.6;
}

#shop_step3_table_summary tbody .shop_step3_price_row .shop_step3_subtotal {
	margin-left:auto;
	font-weight:600;
	display:flex;
	line-height:20px;
}

#shop_step3_table_summary .shop_step1_name{
	line-height:22px;
}

#shop_step3_table_summary tbody{
	margin-top: 5px;
}

#shop_step3_table_summary tbody .shop_step3_payment_field{
	display: flex;
    margin-left: auto;
    flex-direction:row;
}

#shop_step3_table_summary tbody .shop_step3_payment_field td:last-child {
	width:90px;
}

#shop_step3_table_summary tbody .shop_step3_payment_field{
	 text-align: right;
	 padding:3px 0px;	 
}

#shop_step3_table_summary tbody .shop_step3_payment_field.tax{
	font-weight:600;
}

#shop_step3_table_summary tbody .shop_step3_separator{
	border-top: solid 1px #ccc;
    width: 100%;
    margin-top:10px;
}

#shop_step3_table_summary tbody .shop_step3_discount_row{
	display:flex;
	justify-content: end;
	margin-top:20px;
}

.shop_step3_discount_row + #shop_step3_add_multiple_row{
	margin-top:5px !important;
}


#shop_step3_table_summary tbody #shop_step3_add_multiple_row{
	display: flex;
	justify-content: end;
	margin-top: 10px;
    margin-bottom: 10px;
}

#shop_step3_table_summary tbody #shop_step3_add_multiple_row .fal{
	margin-right:7px;
}

#shop_step3_table_summary tbody .shop_step3_original_price{
	margin-right:10px;
}

#shop_step3_table_summary tbody  .shop_step1_currency{
	margin-left:3px;
}

#shop_step3_table_summary tbody td{
	padding-left:3px !important;
}


.shop_step3_payment_name, .shop_step3_payment_icon , .shop_step3_payment_input{
	display: flex;
    align-items: center;
	font-weight: 600;
}

.shop_step3_payment_desc{
	padding-top: 10px;
	padding-left:35px;
	line-height:normal;
}

#delivery_container{
	margin-bottom: 10px;
}

#delivery_container .delivery_body_container{
	border:solid 1px #CCC;
	border-radius:10px;
	display:flex;
	flex-direction: column;
	padding:22px 16px;
}

#delivery_container .delivery_item{
	display: flex;
    align-items: start;
    margin: 5px 0px;
    gap: 10px;
    line-height: 25px;
    color: #1D1D1B;
}

#delivery_container .delivery_icon{
	font-size:18px;
	padding:10px;
	padding: 4px;
	opacity: 1;
	font-weight: 400;
	width: 17px;
    text-align: center;
}

#delivery_container .delivery_text{
	opacity: 0.6;
}

.shop_step3_payment_inline_image, .shop_step3_payment_inline_infobutton, .shop_step3_payment_inline_radio{
	vertical-align:middle;
	margin:0px 5px;
	display:inline-block;
}

.shop_step3_payment_inline_infobutton{
	font-size:16px;
	color:#777;
	margin-left:10px;
}

.shop_step3_payment_inline_image img{
	margin-left:10px;
	display: inline-block;
    vertical-align: middle;
}

#reduction_code{
	font-size:16px;
	max-width: 160px;
}

#reduction_question{
	display:block;
	line-height:20px;
	cursor:pointer;
	font-weight:600;
}

#reduction_answer{
	display:none;
}

.reduction_active #reduction_question{
	display:none;
}

.reduction_active #reduction_answer{
	display:block;
	color:#DF0000;
}

.shop_step1_reduction_input{
	max-width:130px;
	padding:10px;
	margin-left:5px;
	border-radius:5px;
}

#reduction_apply{
    padding: 10px 20px;
    border-radius: 5px;
    font-size: 16px;
    cursor:pointer;
}

#reduction_answer{
	display: none;
    gap: 10px;
    align-items: center;
}


.shop_step3_payment_mode{
	background-color:#EEE;
	margin-top:2px;
	padding:20px;
	cursor:pointer;
	border: solid 1px #CCC;
    border-radius: 10px;
    margin-bottom: 10px;
}


.shop_step3_payment_inline{
}

.shop_step3_payment_inline_title{
	display:flex;
	gap:5px;
	align-items:center;
}

.admin_payment{
	border-radius:10px;
}

.admin_payment input, .admin_payment select{
	vertical-align:middle;
}

#payment_card_icon{
  vertical-align: top;
  max-width:210px;
  margin-right:10px;
  margin-bottom:10px;
}



.special_offer td{
	display:block;
}

.special_offer_button_container{
	vertical-align:middle;
	min-width:160px;
}


.special_offer_item{
	display:inline-block;
	vertical-align:top;
	margin-bottom:20px;
	margin-right:10px;
	min-width:100%;
}

.special_offer_item.expandable{
	cursor:pointer;
}


.special_offer_title{
	font-size:14px;
	line-height:22px;
	line-height:1.3em;
}

.expandable .special_offer_title{
	font-size: 14px;
}

.special_offer_howto{
	margin-top:10px;
	line-height:1.3em;
}

.special_offer_element{
	cursor:pointer;
	padding:10px 0px;
}

.special_offer_ticket{
	border-left:solid 1px #CCC;
	margin-left:8px;
	padding:2px 0px;
	line-height: 14px;
	padding-left:10px;
	font-size:14px;
}

.special_offer.selected{
	font-weight:600;
}


#suggestion .suggestion_container .category{
	padding:10px;
	font-weight:600;
	border-bottom: solid 1px #DDD;
	margin-top:5px;
}
#suggestion .suggestion_container .category.solo{
	display:none;
}
#suggestion .suggestion_container .peers{
	padding:10px;
}

#suggestion .suggestion_container {
	margin-top:2px;
}

#suggestion .suggestion_container .suggestions {
	white-space: nowrap;
    overflow: hidden;
    overflow-x: visible;
}

.step_6 .result_event_container{
	margin-right:20px;
	margin-bottom:20px;
	margin-top:20px;
	width:200px;
	height:270px;
	display:inline-block;
	vertical-align:top;
	zoom:0.8;
}

.step_6 .result_event{
	height: 270px;
	position:relative;
	overflow:hidden;
	border-radius:10px;
	background: linear-gradient(to bottom, white, black);
}

.step_6 .result_event:hover .result_event_text .title{
	color:#FFF;
}

.step_6 .result_event:hover {
	opacity:0.8;
}

.step_6 .result_event_text{
    text-align: center;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 5%;
    color: #FFF;
    z-index: 1;
}

.step_6 .result_event_text:after {
    content: "";
    background-color: #000;
    opacity: .8;
    left: -20%;
    right: -30%;
    top: -10%;
    bottom: -50%;
    position: absolute;
    z-index: -1;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
     -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
}

.step_6 .description{
	min-height:70px;
}

.step_6 .result_event_text .title{
	color:#FFF;
	font-weight:600;
	font-size:16px;
	margin:5px;
	overflow:hidden;
}

.step_6 .result_event_text .date{
	font-size:12px;
	color:#FFF;
}

.step_6 .result_event_text .place{
	font-size:11px;
	color:#CCC;
	line-height:20px;
	 white-space: nowrap;
	 overflow:hidden;
	 text-overflow: ellipsis;
}

.step_6 .return{
	padding: 0px 10px; 
	background: #635BFF ; 
	border-radius: 5px; 
	color: #fff;
	display:none;
	box-shadow: 1px 1px 2px 0px #54525273;
	white-space: nowrap;
  	line-height: 34px;
  	margin-left: 5px;
}

.step_6 .subproduct .shop_step1_name{
	padding-left:20px !important;
}

.step_6 .subproduct td{
	color:#AAA;
} 



#donation .explanation{
	line-height:22px;
	font-weight:100;
}

.donation_logo{
	display: flex;
    width: 100%;
    max-width: 600px;
    flex-wrap: wrap;
    align-items: center;
    flex-direction: row;
    justify-content: center;
    gap:10px;
    margin-top:20px;
}

.donation_logo .donation_logo_container{
	display: flex;
    padding: 10px;
    width: 100px;
    height: 60px;
    border-radius:10px;
    justify-content: center;
}

.donation_logo img{
	border-radius: 5px;
    vertical-align: middle;
    box-sizing: border-box;
    object-fit: contain;
    max-width: 100%;
}

.donation_preset_container{
	display:inline-block;
	width: 100%;
    margin-top: 10px;
    text-align:center;
}

.donation_preset{
	display:inline-block;
	border:solid 1px #CCC;
	padding:10px;
	border-radius:5px;
	width:35px;
	text-align:center;
}


.donation input[type=radio]{
	margin-right:5px;
}

.donation_answer{
    margin-left: 0px;
    display: flex;
    align-items: center;
    gap:15px 5px;
    margin:5px;
}

.donation_answer label{
	margin-right:0px;
	line-height:20px;
}

.donation_answer input{
	margin-top:0px;
}

.provider_legend{
	border-left:solid 1px ;
	line-height:15px;
	margin-top:15px;
	padding:5px;
	margin:10px;
}

#donation_display_more_info{
    margin: 20px;
    text-align:center;
    display:none;
}

#donation_more_info{
	display:none;
	margin: 20px;
	text-align: left;
    font-size: 14px;
    line-height: normal;
    margin-left: 36px;
    margin-top: 20px;
}


.ui-corner-all{
	border-radius:10px !important;
}


#formshop_checkout #bottom_line{
	display:flex;
}

#formshop_checkout #payment_type_reservation .shop_step3_payment_name{
	display:block;
	line-height:24px;
}

#bottom_line #add_multiple{
	width:100%;
}

#calendar_datepicker .ui-datepicker td{
	padding:1px;
}

#calendar_datepicker .calendar_text{
	padding:0px;
	display:inline;
}

.atc-style-menu-wb .atcb-item-link{
    font-size: 14px !important;
    padding: 8px !important;
    border-bottom: solid 1Px #EEE;
}

#rating .fa-fw{
	width:1em;	
}


.step_6 .delivery_text_mobile{
	display:none;
}

  
.step_6 #payment_ongoing {
	padding:20px;
	text-align:center;
	font-size:16px;
	margin-bottom:30px;
	line-height: 20px;
	max-width: 400px;
	margin: 0 auto;
}

.step_6 .payment_ongoing_message{
	line-height:20px;
	margin:20px;
	display:none;
	color:#cd0a0a;
}

.step_6 .payment_ongoing_description{
	margin:20px;
}

.step_6 #payment_ongoing_controls{
	display: flex; 
	gap: 10px; 
	flex-wrap: wrap; 
	align-items: center; 
	flex-direction: column;
	margin:30px;
}

.shop_step3_payment_inline_image img{
		width:155px;
}


/*----------------------------------------------------------------------------------------------------------------
  STEP 4
------------------------------------------------------------------------------------------------------------------*/

.shop_step4_order_container{
	display:table;
	width:100%;
}

.shop_step4_order_container .shop_step4_col{
	display:table-cell;
	vertical-align:top;
}

.shop_step4_icon_col{
	width:50px;
	font-size:30px;
	color:#22C55E;
	text-align:left;
}

.shop_step4_header{
	line-height: 26px; 
	padding:none;
	margin:none;
	font-weight: 600; 
	margin-left:0px;
	border-radius:10px;
	font-size:18px;
	margin-bottom:5px;
	color: #1D1D1B;
}

.shop_step4_content{
	font-size: 16px; 
	line-height: 20px; 
	margin-left:0px;
	margin-bottom:20px;
	color: #1D1D1B99;
	line-height:24px;
}

.shop_step4_content_message a{
	word-break: break-all;
}

.shop_step4_success .col{
	display: table-cell;
	 vertical-align: middle;
}

.shop_step4_content a{
	font-weight:400;
	cursor:pointer;
}

.shop_step4_content strong{
	font-weight:600;
	color: #1D1D1B;
}

.shop_step4_fail{
	border-left: 5px solid #f64848;
}

.shop_step4_ticket_download{
	margin-bottom:30px;
	margin-top: -15px;
}

.shop_step4_message_container{
	border:solid 1px #CCC;
	padding:20px;
	margin:20px 0px;
	border-radius:10px;	
}



.shop_step4_ticket_download:empty{
	display:none
}

.shop_step4_ticket_download > *{
	display:inline-block;
	margin-right:15px;
	margin-top:10px;
}

.step_7 .share_icon {
    font-size: 18px;
    text-decoration: none;
    margin: 4px;
}

.step_7 #extra_button_container .shop_step4_content > *{
	text-align: left;
	margin-top: 5px;
	margin-bottom: 5px;
}

.step_7 #extra_button_container .shop_step4_header{
	margin-bottom:10px;
}

.step_7 #extra_button_container .shop_step4_content .fal, .shop_step4_ticket_download .fal{
	display:inline-block;
	margin-right:2px;
	font-weight:400;
}

.step_1 #bottom_line{
	margin-top: 40px;
}

.step_1 #bottom_line #payment_logo{
	justify-content: center
}


@media (min-width: 600px) { 
	.shop_step1_category.with_image .expand_icon{
		padding-left:10px;
	}
		
	.admin_view section#shop{
		padding:20px;
		max-width: 100%
	}
}


@media (max-width: 900px) { 
	
	#step_forward_off_off{
	  	background:none;
 	}
}

@media (max-width: 640px) { 

	.promote_block{
		line-height:22px;
	}
	
	.shop_step3_payment_mode.admin_payment input{
		width:100px;
	}
	
	#shop_step3_table_summary tbody .shop_step3_table_summary_event{
		flex-flow: nowrap;
		margin-bottom: 5px;
	}
	
	
	#mandatory_fields{
		display:none;
	}
	
	.no_mobile{
		display:none !important;
	}
	
	section#shop{
		padding:25px;
	}
	
	.two_buttons #bottom_line{
		display:block !important;
	}
	
	.two_buttons .button_container .promote_link{
		display:none;
	}
	
	.shop_step4_ticket_download{
		margin-bottom:20px;
	}
	
	#donation_local_yes{
   	 	flex-direction: column;
   	 	align-items: start;
	}
}

@media (max-width: 530px) { 

	
	
	
	.donation_logo{
		max-width: 300px;
   		margin: 0 auto;
   		margin-top:20px;
	}
	
}

@media (max-width: 500px) { 
	
	
	.shop_step1_empty{
		font-size:18px;
	}
	
	#checkout  li{
		width: auto !important;
	}
	
	
	#payment_card_icon{
		width:160px;
		vertical-align: middle;
	}
	
	
	
}


@media (min-width: 480px) {

	
	.step_5 .shop_step2_table tr:last-child td{
		padding-bottom: 5px !important;
	}
	
	.preset_amount_container{
		min-width: 120px;
	}
	
}

@media (max-width: 480px) {
	
		
	.top_module_container tr.row td{
		width:100% !important;
		display:block;
		box-sizing: border-box;
	}
	
	.top_module_container .shop_step1_header_name .fal{
		margin-top:2px;
	}
	
	
	#checkout .step .text{
		display:none;
	}
	
	.iti__country-list{
		max-height:300px !important;
	}
	
	#donation_local .donation_answer{
		margin: 5px;
	}
		
	#shop_header{
	 	display:none;
	}
	 
	.ticket_image{
		width:50px;
	}
	
	.shop_step2_table_insurance{
		flex-direction:column;
	}
	
	.shop_step2_table_insurance #insurance_checkbox{
		margin-left:0px;
	}
	
	
	.shop_step1_choice{
	    text-align: left;
	}
	
	
	.step_5 .separator{
		text-align:left;
	}
	
	.step_3 table tr td:first-child{
		
	}
	
	.step_3 table tr td:last-child{
		padding-top: 1px !important;
	}
	
	.step_5 .shop_step2_table tr td:first-child{
		/*padding-bottom: 1px !important;*/
	}
	
	.step_5 .shop_step2_table tr td:last-child{
		padding-top: 1px !important;
	}
	
	.step_6 .delivery_text_mobile{
		display:block;
	}
	
	.step_6 .delivery_text{
		display:none;
	}
	
	#suggestion .suggestion_container{
		padding:0px;
	}
	
	 .shop_step2_name{
		padding:2px;
		padding-top:5px;
		border-left:none !important;
		border-bottom:none !important;
	}
	 
	.shop_step2_header{
		margin-top:20px;
	}
	 
	.shop_step2_table_insurance{
		margin-top:10px;
	}
	 
	.shop_step2_table .iti input{
		width:198px;
	}
	
	#TermsOfSale label{
		max-width:85%;
	}
	 
	.with_tips .shop_step2_name{
		margin-top:10px;
	}
	 
	.tip{
		border-left: solid 1px #ddd;
		padding-left: 10px;
	}
	 
	.copy_details_container .shop_step2_name{
		padding-top:10px;
	}

	.shop_step1_quantity{
		white-space: nowrap;
		margin-left: auto;
	}
	 
	.shop_step1_footer_container{
		margin-left:0px;
	}
	 
	.shop_step1_header_price, .shop_step1_header_quantity{
		width:auto;
	}
	
	.shop_step1_header_price{
		min-width:auto;
	}
	
	.shop_step2_table td.shop_step2_name{
		 padding-bottom: 2px;
	}
	
	.shop_step2_table td.shop_step2_input{
		 padding-top: 2px;
	}
	
	.shop_step2_table td.shop_step2_input input[type="file"]{
		width:100% !important;
		padding-right:0px;
	}
	
	.shop_step2_table tr.separator td{
		padding:0px;
	}
	
	.shop_step2_table .separator td.shop_step2_name{
		 padding:5px;
		 padding-bottom:5px;
	}
	
	.shop_step2_admin_header{
		padding-left:5px;
	}
	
	
	
}



@media (max-width: 420px) { 
	
	div:has(>iframe){
		zoom:1.11;
	}

	.multi_body, .shop_body:not(.step_4){
		zoom:0.9;
	}

	#cbox, #colorbox{
		zoom:1.1;
	}
	
	 #reduction_answer{
	 	flex-flow: wrap;
	 }
	 
	 #reduction_code{
	 	width:100px;
	 }
	 
	.shop_step3_payment_inline_image img{
		width:140px;
	}
		
	
	.step_1 .button_container .promote_link{
		display:none;
	}
	
	#bottom_line{
		display:block !important;
	}
	
	#payment_logo{
		margin-right:0px;
	}

	.step_5 .shop_step2_table input[type=text], .step_5 .shop_step2_select, .step_5 input[type=email], .step_5 .iti input{
		width:100% !important;
		margin-right:0px;
		box-sizing: border-box;
	}
	
}

 @media (max-width: 360px) {
	
	   .shop_step2_table .shop_step2_name{
	   		width:auto !important;
	   		border-bottom:none !important;
	   }
	   
	   .shop_step3_payment_inline_image img{
			width:100px;
		}
		
		 section#shop{
			padding:20px;
		}
		
		#send_again_click_here{
			display:none;
		}
 }
 
 @media (max-width: 320px) {
 
	 #covid_pass_row label{
	  	max-width: 40%;
	 }
	 
	 section#shop{
			zoom:0.8;
	  }
	
}

@media (max-width: 290px) {

	
	.step_1 #fallback{
		display:block;
	}
	
	.inactive .symbol{
			display:none !important;
	}
	
	.shop_step1_quantity_select{
	  	    padding: 5px 0px;
	  }
 
 }
 
 
 
  /* --------------------------------------
    BASKET
----------------------------------------*/
 
 .basket_container{
 	font-size:16px;
 	padding: 15px;
 	margin-bottom:20px;
 	text-align:center;
 	border-radius:5px;
 }
 
 .basket_menu .smart_link {
    color: #777;
 }
 
 .basket_container .fa{
 	font-size:16px;
 	margin-right:3px;
 }
 
   /* --------------------------------------
    PURCHASER
----------------------------------------*/
 
 
.account_block{
	display:block;
	padding:10px;
	text-align:center;
	margin:5px 0px;
	font-weight: 600;
	cursor:pointer;
	border: solid 1px #CCC;
    border-radius: 10px;
}

.account_container .login, .account_container .signup{
	display:none;
	padding:20px;
	text-align:center;
}

.account_container .login input, .account_container .signup input{
	padding: 10px;
    margin: 3px;
    border-radius: 10px;
    font-size: 16px;
    display: block;
    margin: 15px auto;
}

.account_container .login input[type="submit"], .account_container .signup input[type="submit"]{
	padding:10px 20px;
	vertical-align:bottom;
	line-height:normal;
}

.account_container #account_login .shop_step2_header.back{
	cursor:pointer;
}

.account_container #account_login .shop_step2_header .fa{
	display:none;
}

.account_container #account_login .shop_step2_header.back .fa{
	display:inline-block;
}

.account_container .result{
	color:#DF0000;
	padding:10px;
	font-size:14px;
}

.account_creation{
	display:none;
}

.account_container .logout, .account_container .reset, .suggested_key{
	cursor:pointer;
}

.suggested_key{
	margin:5px;
}

.account_container .feedback, .account_container .reset {
	line-height:20px;
	display:block;	
}

.account_container .reset{
	text-decoration: underline;
}

 @media (max-width: 400px) {
	
	 .account_container .login input, .account_container .signup input{
	 	display:block;
	 	margin: 10px auto;
	 }
 }
 
 
 /*DATEPICKER*/
 
 
 
 .ui-datepicker-prev span,
.ui-datepicker-next span {
  background-image: none !important;
}

.ui-datepicker-prev:before,
.ui-datepicker-next:before {
  font-family: 'Font Awesome 5 Pro';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: flex;
  font-weight: normal;
  align-items: center;
  justify-content: center;
  color:#FFF;
}

.ui-datepicker-prev:before {
  content: "\f053";
}

.ui-datepicker-next:before {
  content: "\f054";
}

.ui-widget, .ui-widget input, .ui-widget select, .ui-widget textarea, .ui-widget button{
  font-family: 'Inter', sans-serif;
}

.ui-datepicker th{
    font-weight:600;
    color: #1D1D1B;
}

#shop .ui-datepicker { 
	width:100%; 
	box-sizing: border-box;

}
.ui-datepicker table {
	font-size: 1.0em; 
}
.ui-datepicker-year{
	border-left:none;
}
.ui-datepicker td span, .ui-datepicker td a {
    padding: 5px;
    aspect-ratio: 7 / 5;
    justify-content: center;
    display: flex;
    align-items: center;
}

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-datepicker-header{
	border:none;
	border-radius: 5px !important;
	border: 1px solid #1D1D1B33;
	background: #FFFFFF 0% 0% no-repeat padding-box;
}

.ui-datepicker .ui-state-active{
	background: #FFFFFF 0% 0% no-repeat padding-box;
	color: white;
	-webkit-box-shadow:inset 0px 0px 0px 1px;
    -moz-box-shadow:inset 0px 0px 0px 1px;
    box-shadow:inset 0px 0px 0px 1px;
}

.ui-datepicker .ui-datepicker-header {
	margin-bottom:15px;
	margin-top: 10px;
	background:none !important;
	border:none !important;
}

.ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year{
    border:none;
}


.ui-datepicker .ui-datepicker-title select{
	margin-right:0px;
	font-size:16px;
	border:none;
	width:auto;
	padding-right:40px;
}

.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled{
    opacity:1;
}
.ui-datepicker-unselectable .ui-state-default{
	opacity:1;
	border:none;
	background: #1D1D1B0D 0% 0% no-repeat padding-box;
	color: #1D1D1B;
	opacity: 0.4;
}

.ui-dialog form label {
	width:50%;
}

.ui-widget-content {
	border:none;
}

.ui-datepicker-next, .ui-datepicker-prev{
    border-radius: 50px !important;
    background: #1d1d1b;
    color: #FFF;
    width: 15px;
    height: 20px;
    margin-top: 5px;
    margin-right: 5px;
}


.step_5 #ui-datepicker-div{
	max-width: 300px;
}

.step_5 .ui-datepicker td span, .step_5 .ui-datepicker td a{
	padding:6px 5px;
}

.step_5 .ui-datepicker .ui-datepicker-header{
	margin:0px;
	border:none;
}

#calendar_datepicker .ui-datepicker-next, #calendar_datepicker .ui-datepicker-prev{
	top:2px !important;
}

 
 
 /* --------------------------------------
    MULTI
----------------------------------------*/
 
p{
	margin:1em 0px;	
}


.multi_event_container.filterable{
	color: #6A6A6A;
	font-size:11px;
	position: relative;
	min-height:100px;
	padding: 20px;
    border: 1px solid #1D1D1B33;
    border-radius: 10px;
    display:flex;
    gap:20px;
    line-height: normal;
}

.multi_event_info{
	display:flex;
	gap:20px;
	min-width: 0;
	max-width: 100%;
	white-space: normal;
	overflow-wrap: break-word; 
}

.multi_event_info .fa, .multi_event_info .fal, .multi_event_info .far{
	margin-right:6px;	
	font-size:14px;
	display:flex;
}

.multi_event_info_empty{
	font-size: 18px;
    text-align: center;
    width: auto;
    padding: 20px 10px;
    color: #1D1D1B;
    line-height: 26px;
    border: solid 1px #CCC;
    width: 100%;
    border-radius: 10px;
    font-weight: 600;
    text-align: center;
    box-sizing:border-box;
    display: block !important;
	line-height:normal;
}

.multi_event_picture{
	display:flex;
	float:left;
}

.multi_event_info_text{
	display: flex;
    vertical-align: top;
    flex-direction: column;
	min-width: 0;
	max-width: 100%;
	white-space: normal;
	overflow-wrap: break-word;
}

.multi_event_info_text.no_image{
	padding-left:0px;
}

.multi_event_info_text a{
	cursor:pointer;
}

.multi_event_picture img{
	height:100px;
	border-radius:10px;
}

.multi_event_name{
	font-size:18px;
	display:inline-block;
	line-height:22px;
    font-weight: 600;
    color: #1D1D1B;
}

.multi_event_date{
	font-size:16px;
	margin-top: 8px;
    margin-bottom: 4px;
	color: #1D1D1B;
	line-height:20px;
	display:flex;
	align-items: start;
	line-height: normal;
}

.multi_event_time{
	margin-right: 4px;
    border-radius: 5px;
    display: inline-block;
    padding: 5px;
    margin-bottom: 4px;
    background: #eeeeee73;
}

#multi_event_card .multi_event_time{
	margin-top:6px;
}

.hide_date .multi_event_date{
	display:none;
}

.multi_event_place{
	font-size:16px;
	margin-top:4px;
	margin-bottom:4px;
	color: #1D1D1B;
	margin-right:20px;
	display:flex;
	align-items: start;
	line-height: normal;
}

.multi_event_place:empty{
	display:none;
}

#multi_event_card .multi_event_place{
	margin-top:7px;
}

.multi_event_icon{
	margin-top:4px;
	margin-right:8px !important;
	display:none;
}

.multi_event_place .fa{
	display:none;
}

.hide_location .multi_event_place{
	display:none;
}
	
.multi_event_place .icon{
	margin-right:5px;
	display:table-cell;
	font-size:12px;
}

.multi_event_intro{
	margin-top:20px;
	margin-bottom:20px;
	display:none;
}

.intro .multi_event_intro{
	display:block;	
}

.multi_event_desc_control{
	margin-top:10px;
	font-size:16px;
	margin-top: 6px;
    margin-bottom: 5px;
}

.multi_event_desc_control .fa-info-circle{
	display:none;
}

.multi_event_desc{
	text-align:left;
	margin-top:10px;
	font-size:16px;
}

.multi_event_desc img{
	max-width: 100%;
    height: auto !important;
}

.multi_event_desc_control_compact{
	display:none;
	white-space:nowrap;
	cursor:pointer;
}

.multi_event_desc_control_compact > a span{
	vertical-align:middle !important;
}

.multi_event_desc_control .icon{
	margin:0 5px;
	font-size: 14px;
    margin-right:10px;
    vertical-align: middle;
}

 .multi_event_desc_control_compact .icon{
	margin:0 5px;
	font-size: 14px;
}

.multi_event_button{
	display:flex;
	align-items: center;
	margin-left:auto;
}

.multi_event_button a{
	padding: 12px 23px;
	background-color:#777;
	color:#FFF;
	font-size:16px;
    border-radius: 5px;
    -webkit-appearance: none;
    -webkit-border-radius: 5px;
    font-family: 'Inter', sans-serif !important;
    font-weight:600;
	white-space: nowrap;
}


.compact .multi_event_button a{
	margin-top: 9px;
}


.multi_event_button a:hover{
	background-color:#AAA;
}

/* compact mode */

.compact  .multi_event_desc_show, .compact .multi_event_desc{
	display:none;
}


.compact .multi_event_picture img{
	height:50px;
}

.compact .multi_event_date {
    margin-bottom: 0px;
    margin-top:8px;
    font-size:12px;
}

.compact .multi_event_place{
	margin-top:10px;
}

.compact.multi_event_container{
	padding: 10px;
	min-height: 50px;
}

.compact .multi_event_desc_control_compact a{
	display:inline-block;
}

.compact .multi_event_name_span{
	vertical-align:middle;
	display:inline-block;
}

.compact .multi_event_desc_control_compact{
	display:inline-block;
	font-size:11px;
	margin-left:10px;
	vertical-align:middle;
	white-space:nowrap;
}

.compact.location .multi_event_button a{
	margin-top: 18px;
}

.multi_event_container:not(.location) .multi_event_place .fa{
	display:none;
}

.compact.hide_location.location .multi_event_button a{
	margin-top:6px;
}

.compact.hide_location.location.inline_date .multi_event_button a{
	margin-top:6px;
}

#calendar_datepicker td.past{
	opacity:0.5;
}

.calendar_button{
    padding: 17px 30px;
    background-color: #777;
    color: #FFF;
    font-size: 16px;
    width: 70px;
    margin-top: 45px;
    display: inline-block;
    border-radius: 5px;
    text-align: center;
    width: 100%;
    box-sizing: border-box;
    margin-bottom: 10px;
    cursor: pointer;
}

/* user page*/

.multi_body #calendar_container{
	display:flex;
	gap:40px;
}


.multi_body #calendar_datepicker_container{
	max-width:50%;
}

.multi_body #calendar_datepicker_container, .multi_body #calendar_details_container{
	display:flex;
	overflow:hidden;
	flex-direction: column;
}

.multi_body #calendar_details_container{
	flex:1;	
}

.multi_body #calendar_datepicker_header, .multi_body #calendar_details_header{
	width: 100%;
    color: #1D1D1B;
    font-size: 18px;
    text-align: center;
    padding-bottom: 5px;
    margin-top: 20px;
    font-weight: 600;
}

.multi_body #calendar_header_title{
	width: 100%;
    color: #1D1D1B;
    font-size: 18px;
    text-align: center;
    padding-bottom: 5px;
    margin-top: 80px;
    font-weight: 600
}


.user_page{
	max-width:1000px;
	margin:10px auto;
}

.multi_page_header{
	background:#000;
	color:#FFF;
}

.multi_page_header img{
	width:100px;
	opacity:0.9;
}

@media (max-width: 640px) {
	.multi_page_header img{
		width: 100px;
	    margin-left: 5px;
	    margin-top: 2px;
	}
	
	.multi_event_container.filterable{
		flex-direction:column
	}
	
	.multi_body #calendar_container{
		flex-direction:column
	}
	
	.multi_body #calendar_datepicker_container, .multi_body #calendar_details_container{
		display:block;
		max-width:none;
		width:auto;
	}
	
	#calendar_details{
		padding:0px;
	}
	
}

.multi_page_title_container{
	margin:0px auto; 
	max-width:1000px;
	padding:20px;
	min-height:40px;
}

.multi_page_title{
	font-size:40px;
	text-shadow: 0px 4px 3px rgba(0,0,0,0.1),0px 8px 13px rgba(0,0,0,0.1), 0px 18px 23px rgba(0,0,0,0.1);
}

.multi_page_description{
	font-size:14px;
	display:inline-block;
	margin-top:30px;
	margin-bottom:20px;
}

.shop_step1_category .shop_step1_column_text {
	padding-left:10px;
}

.shop_step1_category .shop_step1_name_text{
	line-height:24px;
}

.options_category_tips .shop_step1_name{
	display:block;
	text-align:center;
}


.step_1 .level_2 {
    margin-left: 10px;
}

/*
.level_1.shop_step1_ticket{
    margin-left:15px;
}

.shop_step1_category.level_1{
	margin-left:15px;
}

.level_2.shop_step1_ticket{
    margin-left:25px;
}

.step_2 .level_2.shop_step1_ticket{
    margin-left:35px;
}

.level_3.shop_step1_ticket{
    margin-left:35px;
}
*/
.separator{
	padding:15px;
}


.filter_container{
	padding:0px;
	text-align:center;
	padding-top:0px;
}

.filter_item{
	font-size:16px;
	padding:10px;
	margin:5px;
	border:solid 1px #CCC;
	cursor:pointer;
	white-space: nowrap;
	display:inline-block;
	border-radius: 5px;
}

.filter_date_datepicker input{
	padding:10px;
	width:80px;
	border:none;
	background:#DDD;
	border-radius:5px;
}

.filter_item.selected{
	background:#DDD;
}

.filter_item .icon{
	font-size: 14px;
	margin-right:3Px;
}

.custom_dropdown {
	display:inline-block;
	position:relative;
	min-width:75px;
}

.custom_dropdown .name .fa{
	margin-left:10px;
	font-size:14px;
}

.custom_dropdown .menu{
	display:block;
	position:absolute;
	display:none;
	top: 40px;
    left: 0px;
    z-index:1000;
}
.custom_dropdown .menu .item{
	display:block;
	padding: 10px;
    background: #777;
    color:#FFF;
    border-bottom:solid 1px #FFF;
    min-width:75px;
    text-align:left;
    border-radius:5px;
}


.multi_event_container_tile{
	margin: 0px -3px;
	width:200px;
	height:270px;
	display:inline-block;
	vertical-align:top;
}

.multi_event_tile{
	height: 270px;
	position:relative;
	overflow:hidden;
	background-color: #000;
}

.multi_event_tile:hover .multi_event_tile_text .title{
	color:#FFF;
}

.multi_event_tile:hover {
	opacity:0.8;
}

.multi_event_tile_text{
    text-align: center;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 5%;
    color: #FFF;
    z-index: 1;
}

.multi_event_tile_text:after {
    content: "";
    background-color: #000;
    opacity: .8;
    left: -20%;
    right: -30%;
    top: -10%;
    bottom: -50%;
    position: absolute;
    z-index: -1;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
     -webkit-transform: rotate(-10deg);
    transform: rotate(-10deg);
}

.multi_event_tile_text .description{
	min-height:70px;
}

.multi_event_tile_description_show{
	position: absolute;
    right: 10px;
    font-size: 22px;
    top: 10px;
    color: #FFF;
    font-weight: 600;
    opacity: 0.6;
    text-shadow: 2px 4px 3px #000;
}


.multi_event_tile_title{
	color:#0dbaff;
	font-size:16px;
	margin-bottom: 5px;
	line-height:20px;
}

.hide_location .multi_event_tile_title{
	margin-top: 5px;
}

.multi_event_tile_date{
	font-size:12px;
	line-height:16px;
	color:#FFF;
}

.multi_event_tile_place{
	font-size:11px;
	color:#CCC;
	line-height:20px;
	 white-space: nowrap;
	 overflow:hidden;
	 text-overflow: ellipsis;
}

.ui-widget-header{
	background:none;
	border:none;
}

.ui-dialog-titlebar{
	margin:10px;
}

.ui-dialog .ui-dialog-titlebar-close{
	width:30px;
	height:30px;
}

.multi_event_button .more_info{
	color: #505050;
  	background-color: #FFF;
}


/* multi event card */

#multi_event_card{
	display: grid;
	grid-template-areas: 'picture title' 'picture description';
	border-bottom: solid 1px #DDD;
	grid-template-columns: auto 1fr;
	margin-top:20px;
	padding-bottom:10px;
}

#multi_event_card.no_image{
	grid-template-areas: 'title' 'description';
}


#multi_event_card_text{
	grid-area: title;
}

#multi_event_card_picture{
	display:flex;
	grid-area: picture;
}

#multi_event_card_description_container{
	grid-area:description;
	margin-bottom:20px;
    position:relative;
}

#multi_event_card_picture img{
	height:100px;
	border-radius:10px;
	margin-right:20px;
	margin-bottom:40px;
}

#multi_event_card_description{
    text-align: left;
    margin-top: 20px;
    font-size: 16px;
    line-height:20px;
    color: #1D1D1B66;
    position:relative;
}

.untruncated #multi_event_card_description{
	color: #1d1d1bc7;
}

 #multi_event_card_description_container.truncated{
	overflow:hidden;
	max-height:160px;
}


#multi_event_card_description_more_info{
    font-size: 15px;
    display: inline-block;
    font-weight: 300;
    vertical-align: middle;
    display: block;
    text-align: center;
    text-decoration: none;
    display: none;
    position: relative;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: center;
    margin: 0;
    background: -moz-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 60%);
    background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 60%);
    background: linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 60%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#ffffff',GradientType=0 );
    color: #a7a7a7;
    padding-top: 80px;
    padding-bottom: 15px;
    display:none;
}

.truncated #multi_event_card_description_more_info{
	display:block;
}

/* responsive */

	 
@media (max-width: 500px) {
	 body.no_iframe { 
	 	padding-bottom:20px;
	 }
}
 


@media (max-width: 600px) {
	
	.truncated #multi_event_card_description{
		overflow:hidden;
		max-height:160px;
	}
	
	.multi_page_title_container{
		padding:10px;
	}
	
	.multi_event_picture{
		float:none;
		margin-right:0px;
	}

	
	.multi_event_place  .title{
		display:inline;
	}
	
	.multi_event_desc_control{
		margin-top:5px;
	}
	
	.multi_event_button{
		position: relative;
		display:flex;
		justify-content: right;
		border:none;
		margin-bottom: 10px;
		width:100%;
		border:none !important;
		padding:0px;
	}
	
	.multi_event_button a{
		position: relative;
	}
	
	.multi_event_name{
		font-weight:600;
		font-size: 20px;
    	line-height: 24px;
	}
	
	.multi_event_button{
		text-align:right;
	}
	
	.multi_event_intro{
		margin-bottom:0px;
	}
	
	.compact .multi_event_desc_control_compact{
		display:block;
	}
	
	.multi_event_button a{
		margin-top:0px;
	}
	
	.multi_page_title{
		font-size:20px;
	}
	
	.multi_page_description{
		font-size:12px;
	}
	
	.shop_step1_empty > div{
		margin-left:20px;
		margin-right:20px;
	}
	
	.filter_container {
	    line-height: 18px;
	}
	
	#multi_event_card{
		grid-template-areas: 'picture title' 'description description';
		grid-template-columns: auto 1fr;
	}
	
	
}
 

