html{
	height: 100%;
	font-size: 12px;}
	
body{
	display: flex;
	flex-direction: column;
	height: 100vh;}
	
.row.no-gutter {
  margin-left: 0;
  margin-right: 0;
}

.row.no-gutter [class*='col-']:not(:first-child),
.row.no-gutter [class*='col-']:not(:last-child) {
  padding-right: 0;
  padding-left: 0;
}	

.container-lg{
	width: 1800px;
	max-width: 100%;}

.bg-tunes-fade{
	background: rgb(253,77,1);
	background: linear-gradient(61deg, rgba(253,77,1,1) 0%, rgba(9,9,121,1) 86%, rgba(0,212,255,1) 100%);
}

form{
}
#primary{
	margin-top: -1rem;
	background: #eef6f0;
	overflow: hidden;
	position: relative;
	width: 100%;}

.section:before{
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 10rem;
	height: 40rem;
	background: #f8fdf9;
	transform: skew(0, -12deg);}
	
.navbar{
	border-radius: 0;
	padding: 0;}

.logo{
	height:23px}
	
.navbar .container{
	display: block;
}

.terms{
	font-size: 0.8rem;
	max-height: 280px;
	overflow-y: scroll;}
.terms-agree{
	background: #888;
	color: #fff;
	padding: 1rem;
	border-radius: 0 0 3px 3px;
}

.calc-card, .calc-card .card-footer{
	background: transparent;
}
.calc-card .card-header{
	color: #373a3c;
	background: white;
}
.calc-card .table td, .table th{
	border-top: 1px solid rgba(255,255,255,0.05);}

.btn-relative{
	position: relative;} 
	
.custom-file-control{
	text-align: left;}
.fancybox-slide--iframe .fancybox-content {
	width  : 600px;
	height : 600px;
	max-width  : 80%;
	max-height : 80%;
	margin: 0;}
.text-center{
	text-align: center;}
form .yesnoswitch{
	margin-top: 2px;}
.card-header legend{
	margin-bottom: 0;}

.position-relative{
	position: relative;}
	
/* On/Off Switch		 */
	.onoffswitch {
	    position: relative; width: 90px;
	    -webkit-user-select:none; -moz-user-select:none; -ms-user-select: none;}
	.onoffswitch-checkbox {
	    display: none;}
	.onoffswitch-label {
	    display: block; overflow: hidden; cursor: pointer;
	    border: 1px solid #ccc; border-radius: 5px;}
	.onoffswitch-inner {
	    width: 200%; margin-left: -100%;
	    -moz-transition: margin 0.15s ease-in 0s; -webkit-transition: margin 0.15s ease-in 0s;
	    -o-transition: margin 0.15s ease-in 0s; transition: margin 0.15s ease-in 0s;}
	.onoffswitch-inner:before, .onoffswitch-inner:after {
	    float: left; width: 50%; height: 32px; padding: 0; line-height: 32px;
	    font-size: 16px; color: white; font-weight: bold;
	    -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;}
	.onoffswitch-inner:before {
	    content: "ON";
	    padding-left: 15px;
	    padding-top: 1px;
	    background-color: #5CB85C; color: #FFFFFF;}
	.onoffswitch-inner:after {
	    content: "OFF";
	    padding-right: 10px;
	    padding-top: 1px;
	    background-color: #F8F8F8; color: #333666;
	    text-align: right;}
	.onoffswitch-switch {
	    width: 35px; margin: 0px;
	    background: #FFFFFF;
	    border: 1px solid #ccc; border-radius: 5px;
	    position: absolute; top: 0; bottom: 0; right: 55px;
	    -moz-transition: all 0.15s ease-in 0s; -webkit-transition: all 0.15s ease-in 0s;
	    -o-transition: all 0.15s ease-in 0s; transition: all 0.15s ease-in 0s; 
	    background-image: -moz-linear-gradient(center top, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0) 100%);
	    background-image: -webkit-linear-gradient(center top, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0) 100%);
	    background-image: -o-linear-gradient(center top, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0) 100%);
	    background-image: linear-gradient(center top, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0) 100%);}
	.onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-inner {
	    margin-left: 0;}
	.onoffswitch-checkbox:checked + .onoffswitch-label .onoffswitch-switch {
	    right: 0px;}

/* Live/Draft Switch		 */
	.livedraftswitch {
	    position: relative; width: 110px;
	    -webkit-user-select:none; -moz-user-select:none; -ms-user-select: none;}
	.livedraftswitch-checkbox {
	    display: none;}
	.livedraftswitch-label {
	    display: block; overflow: hidden; cursor: pointer;
	    border: 1px solid #ccc; border-radius: 5px;}
	.livedraftswitch-inner {
	    width: 200%; margin-left: -100%;
	    -moz-transition: margin 0.15s ease-in 0s; -webkit-transition: margin 0.15s ease-in 0s;
	    -o-transition: margin 0.15s ease-in 0s; transition: margin 0.15s ease-in 0s;}
	.livedraftswitch-inner:before, .livedraftswitch-inner:after {
	    float: left; width: 50%; height: 32px; padding: 0; line-height: 32px;
	    font-size: 16px; color: white; font-weight: bold;
	    -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;}
	.livedraftswitch-inner:before {
	    content: "LIVE";
	    padding-left: 20px;
	    padding-top: 1px;
	    background-color: #5CB85C; color: #FFFFFF;}
	.livedraftswitch-inner:after {
	    content: "DRAFT";
	    padding-right: 10px;
	    padding-top: 1px;
	    background-color: #F8F8F8; color: #333666;
	    text-align: right;}
	.livedraftswitch-switch {
	    width: 35px; margin: 0px;
	    background: #FFFFFF;
	    border: 1px solid #ccc; border-radius: 5px;
	    position: absolute; top: 0; bottom: 0; right: 75px;
	    -moz-transition: all 0.15s ease-in 0s; -webkit-transition: all 0.15s ease-in 0s;
	    -o-transition: all 0.15s ease-in 0s; transition: all 0.15s ease-in 0s; 
	    background-image: -moz-linear-gradient(center top, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0) 100%);
	    background-image: -webkit-linear-gradient(center top, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0) 100%);
	    background-image: -o-linear-gradient(center top, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0) 100%);
	    background-image: linear-gradient(center top, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0) 100%);}
	.livedraftswitch-checkbox:checked + .livedraftswitch-label .livedraftswitch-inner {
	    margin-left: 0;}
	.livedraftswitch-checkbox:checked + .livedraftswitch-label .livedraftswitch-switch {
	    right: 0px;}
	    
/* Yes/No Switch		 */
	.yesnoswitch {
	    position: relative; width: 90px;
	    -webkit-user-select:none; -moz-user-select:none; -ms-user-select: none;}
	.yesnoswitch-checkbox {
	    display: none;}
	.yesnoswitch-label {
	    display: block; overflow: hidden; cursor: pointer;
	    border: 1px solid #ccc; border-radius: 5px;}
	.yesnoswitch-inner {
	    width: 200%; margin-left: -100%;
	    -moz-transition: margin 0.15s ease-in 0s; -webkit-transition: margin 0.15s ease-in 0s;
	    -o-transition: margin 0.15s ease-in 0s; transition: margin 0.15s ease-in 0s;}
	.yesnoswitch-inner:before, .yesnoswitch-inner:after {
	    float: left; width: 50%; height: 32px; padding: 0; line-height: 32px;
	    font-size: 16px; color: white; font-weight: bold;
	    -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;}
	.yesnoswitch-inner:before {
	    content: "YES";
	    padding-left: 10px;
	    padding-top: 1px;
	    background-color: #5CB85C; color: #FFFFFF;}
	.yesnoswitch-inner:after {
	    content: "NO";
	    padding-right: 15px;
	    padding-top: 1px;
	    background-color: #F8F8F8; color: #333666;
	    text-align: right;}
	.yesnoswitch-switch {
	    width: 35px; margin: 0px;
	    background: #FFFFFF;
	    border: 1px solid #ccc; border-radius: 5px;
	    position: absolute; top: 0; bottom: 0; right: 55px;
	    -moz-transition: all 0.15s ease-in 0s; -webkit-transition: all 0.15s ease-in 0s;
	    -o-transition: all 0.15s ease-in 0s; transition: all 0.15s ease-in 0s; 
	    background-image: -moz-linear-gradient(center top, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0) 100%);
	    background-image: -webkit-linear-gradient(center top, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0) 100%);
	    background-image: -o-linear-gradient(center top, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0) 100%);
	    background-image: linear-gradient(center top, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0) 100%);}
	.yesnoswitch-checkbox:checked + .yesnoswitch-label .yesnoswitch-inner {
	    margin-left: 0;}
	.yesnoswitch-checkbox:checked + .yesnoswitch-label .yesnoswitch-switch {
	    right: 0px;}
	.embed-responsive-scroll{
		position: relative;
		display: block;
		height: 0;
		padding: 0;
		overflow-y: scroll;}
	.form-signin{
		width: 100%;}
/* 	Footer */

	.content {
		flex: 1 0 auto;
		padding-bottom: 2rem;
		display: flex;
		justify-content: center;
		align-items: center;
		background-color: rgb(243, 244, 246);
	}
	.footer {
		flex-shrink: 0;
		padding: 20px;
		background: #f9f9f9;}
  
	.embed-responsive-16by9-sm-4{
		padding-bottom: 70%;
		border:1px solid #f1f1f1;}
	p.event-title{
		margin-bottom: 0.4rem;}
	.racecartdata{
		font-size: .8rem;
	}	
	.card-stripe{
		background: #f1f1f1;
		color: #5cb85c;
		border-color: #5cb85c;
	}
		
	.StripeElement {
	  background-color: white;
	  padding: 8px 12px;
	  border-radius: 4px;
	  border: 1px solid #5cb85c;
	  box-shadow: 0 1px 3px 0 #e6ebf1;
	  -webkit-transition: box-shadow 150ms ease;
	  transition: box-shadow 150ms ease;
	  font-size: 3rem;
	  width: 100%;
	}
	
	.StripeElement--focus {
	  box-shadow: 0 1px 3px 0 #cfd7df;
	}
	
	.StripeElement--invalid {
	  border-color: #cb2706;
	  color: #cb2706;
	}
	
	.StripeElement--webkit-autofill {
	  background-color: #e1f5e1 !important;
	}
	.paymentprocessing{
		display: none;
		height: 100%;
		background: rgba(92, 184, 92, 0.9);
		color: #fff;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		z-index: 20;
		align-items: center;
		justify-content: center;}
	.paymentprocessing.visible{
		display: flex;}
		
	.alert a{
		color: inherit;
		text-decoration: underline;
		font-weight: bold;}
	#cal{
		position: relative;
		display: block;
		text-align: center;}
	.navbar{
		width: 100%;
		min-height: 40px;
	}
	ul.navbar-nav {
    	display: block;
		margin-bottom: 0;}

.platformnav.navbar a {
    display: block;
    text-align: center;
    color: #a1a1a1;
    font-size: 1.2rem;
    padding: 0.8rem 0;}

.platformnav.navbar a:hover {
    background: transparent;}
    
.inline{
	display: inline;
}

input.btn-warning::-webkit-input-placeholder, input.btn-warning::-moz-placeholder, input.btn-warning:-ms-input-placeholder, input.btn-warning:-moz-placeholder{
	color: #fff;
}
.input-group-addon-dark{
	color: #e9ecef;
	background-color: #495057;}

.fs-tiny{
		font-size: 0.75rem;
	}

.code{
	font-family: "Courier New", Courier, "Lucida Sans Typewriter", "Lucida Typewriter", monospace;
	line-height: 0.9em;
	margin-top: 0.18rem;
}

.ticket-card-wrapper {
  position: relative;
  overflow: hidden; /* Hides the parts of circles extending outside the wrapper */
  background-color: #333; /* Matches container background for seamless blending */
  border-radius: 10px; /* Matches ticket's rounded corners */
}

.ticket-card {
  position: relative;
  border: 2px dashed #777;
  border-radius: 10px;
  padding: 14px;
  background-color: #333;
}

.ticket-card::before,
.ticket-card::after {
  content: '';
  position: absolute;
  width: 30px; 
  height: 40px;
  background: #333;
  border: 2px dashed #777; 
  border-radius: 50%; 
  z-index: 1; 
}

.ticket-card::before {
  top: 50%;
  left: -20px;
  transform: translateY(-50%);
}

.ticket-card::after {
  top: 50%;
  right: -20px; 
  transform: translateY(-50%);
}

.ticket-header {
  font-size: 1.5rem;
  font-weight: bold;
  color: #999;
}

.ticket-details {
  font-size: 1rem;
  margin-top: 10px;
}
.ticket-divider {
	padding-left: 20px;
	border-right: 2px dashed #777; /* Dotted line on the right */
}

.bg-ticket{
	background-color: #333;}

@media (min-width: 544px) {
	html{font-size: 13px;}
	.embed-responsive-16by9-sm-4{padding-bottom: 117%;}
	.navbar{min-height: 45px;}
	.logo{
	height:28px}
}

@media (min-width: 768px) {
	html{font-size: 14px;}
	.table-responsive{
		display: table;}
	.container-lg{
		padding-left: 30px;
		padding-right: 30px;}
	.navbar{min-height: 47px;}
	.logo{
	height:31px}
}

@media (min-width: 992px) {
	html{font-size: 15px;}
	.navbar{min-height: 51px;}
}

@media (min-width: 1200px) {
	html{font-size: 16px;}
}