#general-admission-card {
	margin: var(--ga-margin-top) auto var(--ga-margin-bottom);
	padding: var(--ga-pad-top) 0 var(--ga-pad-bottom);
	width: 1200px;
	max-width: 100%; 	
}
.ga-tickets-card {
	background: var(--ga-card-bg);	
	color: var(--cream);
	padding:30px 40px 40px;
	background-image:url(/wp-content/uploads/2023/08/image-1.png);
	background-repeat: repeat;
	background-size:auto;
}
.ga-tickets-inner {
	background: var(--dark-fossil-rim);	
	padding: 26px 40px;
	border-radius: 8px;
}
.ga-tickets-flex-box {
	display: flex;
	column-gap: 40px;
	row-gap: 54px;	
	flex-wrap: wrap;
}
.ga-tickets-title {
	margin-bottom: 16px;	
}
hr.flex-fw {
	width: 100%;
	flex-shrink: 0;	
}
.gat-flex {
	display: flex;
	gap: 40px;	
	width: calc(50% - 20px);
}
.gat-big-flex {
	width: 100%;
	flex-shrink: 0;
	display: flex;	
	gap: 40px;
}
.title-bar {
	display: flex;
	margin-bottom: 16px;	
}
.ga-card-title {
	margin-right: auto;	
}
.ga-card-hours {
	display:flex;
	align-items: center;
	gap:12px;
}

.optional-note-add-to-cart-flex {
	display: flex;
	
}
.optional-note {
	width: 750px;
	margin-right: auto;	
}
.add-to-cart-btn {
	width: 386px;	
}
.buy-tickets .label-flex { margin-bottom: 12px; display: flex; gap: 12px; flex-shrink: 0; }
.buy-tickets .select-flex {
	display:flex;
	justify-content: center; 
	padding: 12px 17px;
	margin-bottom: 16px;
	border: 1px solid var(--cream);
	border-radius: 0px;
	font-size: 18px;	
}
.buy-tickets .select-flex.open {
	background:var(--dark-grey);	
}
.buy-tickets .select-flex:hover {
	cursor: pointer;	
}
.buy-tickets .select-flex > svg {
	position: absolute;
	right:17px;
	top: 50%;
	transform:translate(0,-50%);	
}
.selectPerf, .selectPerfTime {
	width: 100%;	
}
.selectPerf .perfDropDownMenu, .selectPerfTime .timeDropDownMenu {
	position: absolute;
	width: 100%;
	height: 332px;
	background: var(--dark-grey);
	z-index: 99;
	padding:16px 16px 38px;
	text-align:center;
	line-height: 34px;
	overflow:hidden;
	border: 1px solid #cdcdcd;
	border-radius: 8px;	
}
.selectPerf .perfDropDownMenu .select-scrollbox, .selectPerfTime .timeDropDownMenu .select-scrollbox {
	height: 278px;	
}
.selectPerf .perfDropDownMenu .select-scrollbox ul, .selectPerfTime .timeDropDownMenu .select-scrollbox ul {
	height:278px;
	overflow:auto;	
}
.selectPerf .perfDropDownMenu ul li:hover, .selectPerf .perfDropDownMenu ul li.selected, .selectPerfTime .timeDropDownMenu ul li:hover, .selectPerfTime .timeDropDownMenu ul li.selected {
	color: var(--monarch);
	cursor: pointer;	
}

.form-flex {
	display: flex;	
	gap: 40px;
	width:36%;
}
.form-flex input[type="number"] {
	width: 50px;	
}
.num-tickets-flex {
	display: flex;	
	gap: 40px;
	width: 100%;
}
.price-types {
	display: flex;
	gap: 40px;	
	width: 100%;
}
.buy-tickets form button.add-to-cart-btn {
	width: 200px;
	justify-content: center;
}
.buy-tickets form button.add-to-cart-btn.greyed-out {
	border: 1px solid var(--dark-grey);
	background: rgba(196, 196, 196, 0.50);	
	color: var(--dark-grey);
	opacity: 1 !important;
}
.buy-tickets form button.add-to-cart-btn.greyed-out svg, .buy-tickets form button.add-to-cart-btn.greyed-out svg * {
	fill: var(--dark-grey);
	stroke:var(--dark-grey);
	opacity: 1 !important;	
}
.buy-tickets form button.add-to-cart-btn svg, .buy-tickets form button.add-to-cart-btn svg * {
	fill: white;
	stroke:white;
	opacity: 1 !important;	
}
.add-to-cart-spinner svg { /*animation: ajaxspinner 1.5s linear infinite;*/ width:20px; height: 20px; transform:translate(0,0); top: -10px; right: unset; position absolute; }
.add-to-cart-spinner svg path { /*fill: white; stroke:white; */}

.buy-tickets a.cta.secondary { margin-top: 12px; width: 100%; display:block; text-align: center; }

.buy-tickets .select-text { width: 100%; }

.buy-tickets .greyed-out, .buy-tickets .greyed-out * { opacity: .5 !important; appearance:none !important; }
.buy-tickets form#addTickets .selectPerfTime.greyed-out .select-shell {
	opacity: .5;
} 

.buy-tickets form#addTickets .select-shell .zone-spinner { position: absolute; top:50%; left: 50%; transform: translate(-50%,-50%); }
.buy-tickets form#addTickets .select-shell .zone-spinner svg { /*animation: ajaxspinner 1.5s linear infinite;*/ width:20px; height: 20px; transform:translate(0,0); top: -10px; right: unset; position absolute; }
.buy-tickets form#addTickets .select-shell .zone-spinner svg path {
	/* fill: var(--cream); */	
}
.button-container {
	width: 200px;
	flex-shrink: 0;
}
.sold-out-msg {
	text-align:center;			
}
.success-msg {
	width: 200px;
	background: none;
	color: white;
	font-family: "source-sans-pro", sans-serif;
	font-weight: 700;
	font-size: 18px;
	padding: 12px 17px;
	border: 1px solid var(--mossy-oak);
	display: flex;
	justify-content: center;	
	color: var(--mossy-oak);
}
.success-msg svg { width: 20px; height: 20px; }
.success-msg svg path { fill: var(--mossy-oak); }
@keyframes ajaxspinner {
	from { transform: rotate(0deg); }
	to { transform: rotate(359deg); }
}
.num-flexbox {
	display: flex;
  		align-items: center;
  		padding: 5px;
  		border: 1px solid var(--cream);
  		gap: 0px;
  		width: 120px;	
}
.num-flexbox .minus, .num-flexbox .plus { padding: 8px; height: max-content;  display: flex; align-items: center; justify-content: center;}
.num-flexbox .minus:hover, .num-flexbox .plus:hover {
	cursor: pointer;	
}
.num-flexbox .tix-num { margin: 0 auto; }
.limited-qty-msg { 
	color: var(--cream); 
	font-size: 14px; 
	font-style: italic;
	margin-bottom: 8px;
}
.form-flex .subhead-bold {
	flex-shrink: 0;	
	margin-right: auto;
}
@media screen and (max-width: 1280px) {
	.ga-tickets-flex-box {
		row-gap: 24px;
	}
	.gat-flex {
		gap: 10px;			
		flex-direction: column;
	}
}
@media screen and (max-width: 1160px) {
	.title-bar {
		display: block;
	}
	.ga-card-title {
		margin-right: auto;
		margin-bottom: 16px;
	}
	.gat-big-flex {
		width: 100%;
		flex-shrink: 0;
		display: flex;
		gap: 0px;
		flex-direction: column;
	}
	.form-flex {
		display: flex;
		gap: 40px;
		width: 50%;
	}
	.price-types {
		display: flex;
		gap: 40px;
		width: 100%;
		flex-direction: column;
	}
	.ga-tickets-card {
		padding: 24px 28px;		
	}
	.ga-tickets-inner {
		padding: 16px 24px;
	}
	.optional-note {
		max-width: 100%;
	}
}
@media screen and (max-width: 840px) {
	.ga-tickets-flex-box {
		flex-direction: column;		
	}	
	.optional-note-add-to-cart-flex {
		display: flex;
		flex-direction: column-reverse;
		gap: 32px;
	}
	.gat-flex, .form-flex { width: 100%; }
	.optional-note {
		margin-right:unset;
	}
	
}
@media screen and (max-width:768px) {
	.form-flex > input[type="number"] { margin-left: auto; }	
	.button-container {
		width: 100%;
		flex-shrink: 0;
	}
	.buy-tickets form button.add-to-cart-btn {
		width: 100%;
	}
	.subhead-bold {
    font-family: 'source-sans-pro', sans-serif;
    font-weight: 700;
    font-size: 16px;
    line-height: 24px;
	}
	.selectPerf .perfDropDownMenu .select-scrollbox ul, .selectPerfTime .timeDropDownMenu .select-scrollbox ul {
		height:max-content;
		max-height: 442px;
		overflow-y: scroll;
	}
	.selectPerf .perfDropDownMenu, .selectPerfTime .timeDropDownMenu {
	    position: absolute;
	    width: 100%;
	    height: max-content;
	    max-height: 482px;
	    background: var(--dark-grey);
	    z-index: 99;
	    padding: 16px 16px 38px;
	    text-align: center;
	    line-height: 34px;
	    overflow: hidden;
	    border: 1px solid #cdcdcd;
	    border-radius: 8px;
	}
	.selectPerf .perfDropDownMenu .select-scrollbox, .selectPerfTime .timeDropDownMenu .select-scrollbox {
		height:max-content;
    		max-height: 442px;
	}
}
