	/*---------------------------
	GENERAL
	----------------------------*/
		.group:before,
		.group:after{
			content: "";
			display: table;
		}

		.group:after{
			clear: both;
		}

		body{
			background: #E8E5D8;
			font-family: Arial, sans-serif;
			color: #333333;
			font-size: 16px;
		}

		.row {
		  margin: 0 auto;
		  max-width: 76.5em;
		}

		h1,h2,h3,h4,h5,h6{
			font-family: 'Source Sans Pro', sans-serif;
			text-transform: uppercase;
			color: #1F1700;
			padding: 0;
			line-height: 1;
			letter-spacing: .03em;
			text-align: center;
			margin: 0 0 .2em 0;
			padding: 0;
		}
		
		h1{
			font-weight: 700;
			line-height: .9;

			font-size: 2em;
		}

		h1 sup{
			font-size: .8em;
			line-height: 1;
			display: inline-block;
			margin-left: -3px;
			vertical-align: top;
			font-weight: 400;
		}

		h1 sup.tm{
			font-size: .6em;
			font-weight: 400;
		}

		h2{
			font-weight: 400;
			border-bottom: 1px solid #ADABA1;

			font-size: 1.75em;
			padding-bottom: 7px;
			margin-bottom: 10px;
		}

		h3{
			font-weight: 300;
			line-height: 1;

			font-size: 1.4em;
		}

		h4{	
			line-height: 1.2;
			font-weight: 400;
			text-align: left;
			
			font-size: 1em;
		}

		h5{
			line-height: 1.2;
			font-weight: 400;
			background: #333333;
			color: #ffffff;
			text-align: left;
			padding: 8px 8px;
			margin: 0;

			font-size: .92em;
		}

		h6{
			font-weight: 600;
			line-height: 1;
			text-transform: none;
			text-align: left;

			font-size: 1.2em;
			letter-spacing: -0.02em;
		}

		p{
			line-height: 1.4;
			font-size: .9em;
			margin: 0 0 18px 0;
			padding: 0;
		}

		ul{
			margin-bottom: 15px;
		}

		ul > li,
		ol > li{
			line-height: 1.4;
			font-size: .9em;
		}

			ul > li > ul > li,
			ol > li > ul > li,
			ul > li p,
			ol > li p{
				font-size: 1em;
				line-height: 1.4;
			}

		p.last{
			margin-bottom: 0;
		}

		p.ul-heading{
			font-size: 1.2em;
			text-transform: uppercase;
			font-family: 'Source Sans Pro';
			font-weight: 400;
			line-height: 1.1;
			border-bottom: 1px solid #ccc;
			padding: 0 0 5px 0;
			margin: 0 0 10px 0;
		}

		p + p.ul-heading{
			margin-top: 25px;
		}

		.note{
			color: #888;
			font-size: .75em;
		}

		.important{
			color: red;
		}

		h1 + p,
		h2 + p,
		h3 + p{
			margin-top: 15px;
		}

		h4 + p,
		h5 + p,
		h6 + p{
			margin-top: 10px;
		}

		h1 + h3{
			margin-top: -0.2em;
		}

		.border-top{
			border-top: 1px solid #ADABA1;
			padding-top: 12px;
		}

		a{
			color: #D71743;
			text-decoration: underline;
			line-height: inherit;
			border: none;
		}

		img{
			border: none;
		}

		a:hover, 
		a:focus {
		  color: #D71743;
		  text-decoration: none;
		}

		a:focus,
		button:focus {
			outline:0;
		}

		.button,
		button,
		input.button[type="submit"]{
			text-transform: uppercase;
			font-weight: 600;
			font-family: 'Source Sans Pro', sans-serif;
			padding: 10px 20px;
			background-color: #D71743;
			font-size: 1em;
			line-height: 1;
			border-radius: 5px;
			border: 2px solid #D71743;
			text-decoration: none;
			display: inline-block;
			color: #ffffff;
			cursor: pointer;
			text-align: center;
		}

		button:hover, 
		button:focus, 
		.button:hover, 
		.button:focus {
		  background-color: #E61715;
		  color: #FFFFFF; 
		}

		.button--outline{
			background: none;
			border: 2px solid #D71743;
			color: #D71743;
			border-radius: 5px;
		}

		.button--outline:hover, 
		.button--outline:focus {
		  background: none;
		  color: #D71743; 
		}

		.button--has-arrow{
			position: relative;
			padding-right: 30px;
		}

			.button--has-arrow:after{
				content: "";
				height: 19px;
				width: 8px;
				display: inline-block;
				background: url(../img/sprites.svg) no-repeat -525px 0;
				position: absolute;
				top: 0;
				bottom: 0;
				right: 10px;
				margin: auto 0;
			}

		.icon{
			content: "";
			display: inline-block;
			background: url(../img/sprites.svg) no-repeat 0 0;
			background-repeat: no-repeat;
			text-indent: -999em;
		}

		.msg{
			background: #F4F2EC;
			color: red;
			padding: 8px;
			text-align: center;
			color: #000000;
			border: 1px solid #EAA89C;
		}

		.msg--error{
			color: red;
		}
	/* */

	@media only screen and (min-width:29.0625em) {	
		h1{
			font-size: 2.2em;
		}

		h2{
			font-size: 1.77em;
		}

		h3{
			font-size: 1.5em;
		}

		h4{
			font-size: 1em;
		}

		h5{
			font-size: 1em;
			padding: 8px 10px;
		}

		.border-top{
			padding-top: 15px;
		}
	}

	@media only screen and (min-width:40.0625em) {
		h1{
			font-size: 2.4em;
		}

		h2{
			font-size: 2em;
			padding-bottom: 8px;
			margin-bottom: 10px;
		}

		h1 + p,
		h2 + p,
		h3 + p{
			margin-top: 15px;
		}

		.border-top{
			padding-top: 20px;
		}

	}

	@media only screen and (min-width:58.0625em) {
		h1{
			font-size: 2.5em;
		}

		h2{
			font-size: 2.2em;
		}

		.border-top{
			padding-top: 20px;
		}

		.next-line{
			display: block;
		}
	}

	/*---------------------------
	HEADER
	----------------------------*/
		.nav--mobile,
		.header{
			font-family: 'Source Sans Pro', sans-serif;
		}

		.header{
			background: #F6F5F1;
		}

			.logo--motogp{
				float: left;
				height: 55px;
				padding: 6px 0 6px 10px;
				display: inline-block;
			}

				.logo--motogp img{
					height: 100%;
					width: auto;
				}

			.menu-toggle{
				color: #353535;
				float: right;
				text-transform: uppercase;
				font-weight: 600;
				padding: 16px 10px 16px 16px;
				text-decoration: none;
			}

			.nav a,
			.nav--mobile a,
			.nav--secondary a{
				text-transform: uppercase;
				color: #353535;
				font-size: .95em;
				font-weight: 400;
				line-height: 1.1;
				text-decoration: none;
			}

			.nav--secondary a{
				color: #ffffff;
				font-weight: 400;
			}

			.right-off-canvas-menu{
				background: #F6F5F1;
			}

				.nav > ul,
				.nav--mobile > ul,
				.nav--secondary > ul{
					list-style: none;
					margin: 0;
					padding: 0;
					line-height: 1;
				}

				.nav--secondary > ul{
					margin: 0 auto;
				}

				.nav--secondary{
					background: #353535;
				}

				.header .nav--secondary{
					display: none;
				}
	/* */
				
		/*---------------------------
		MOBILE MENU
		----------------------------*/
			.nav--mobile > ul{
				border-bottom: 1px solid #BEBEBE;
			}

					.nav--mobile a{
						display: block;
						padding: 15px;
						border-bottom: 1px solid #ffffff;
						border-top: 1px solid #e1e1e1;
					}

					.nav--mobile a:hover,
					.nav--mobile a:focus{
						background: #ffffff;
					}

						.nav strong,
						.nav--mobile strong{
							font-weight: 400;
						}

					.nav--mobile .nav--secondary a{
						border-bottom: 1px solid #222222;
						border-top: 1px solid #444444;
					}

						.nav--mobile .nav--secondary a:hover,
						.nav--mobile .nav--secondary a:focus{
							background: #444444;
						}

					.contact-phone{
						line-height: 1.3;
					}

					.contact-phone strong{
						font-weight: 400;
						text-transform: uppercase;
						display: block;
					}

					.contact-phone .tel{
						display: block;
						font-weight: 600;
						font-size: 1.3em;
						margin-top: 2px;
					}
		/* */

		/*---------------------------
		SITE MENU
		----------------------------*/
			.nav{
				display: none;
			}

				.nav ul.nav--left{
					float: left;
					padding: 18px 0 18px 19px;
				}

				.nav ul.nav--right{
					float: right;
					padding: 17px 19px 17px 0;
				}

				.header .nav > ul > li,
				.header .nav--secondary ul > li{
					display: inline-block;
					line-height: 1;
				}

				.header .nav > ul > li{
					display: inline-block;
					padding: 0 2px;
				}

					.header .nav a,
					.header .nav--secondary a{
						display: inline-block;
						padding: 13px 4px;
						line-height: 1;
					}

				.header .nav--secondary ul{
					float: right;
					margin: 0 19px 0 0;
					padding: 0;
					line-height: 1;
				}

					.header .nav--secondary ul > li{
						padding: 0 2px;
					}

						.header .nav--secondary a{
							font-size: .92em;
							padding-top: 15px;
						}

				.header .contact-phone{
					text-align: left;
					font-size: .9em;
					margin: 0;
					padding: 7px 0 0 25px;
					float: left;
					display: inline-block;
					color: #ffffff;
				}

					.header .contact-phone strong,
					.header .contact-phone span{
						display: inline;	
					}

					.header .contact-phone strong{			
						font-size: 1.05em;
					}
		/* */

	/*---------------------------
	SITE FOOTER
	-----------------------*/
		.footer{		
			font-family: 'Source Sans Pro', sans-serif;
		}

			.footer .partners{
				background: #F3F1E7;
				padding: 20px 0;
			}

				.footer .partner-logos{
					list-style: none;
					text-align: center;
					margin: 0 auto;
				}

					.footer .partner-logos > li{
						text-align: center;
						display: inline-block;
						margin: 0 15px;
					}

			.footer-nav{
				background: #484848;
			}

				.nav--footer{
					text-align: center;
					padding: 18px 0;
				}

					.nav--footer ul{
						list-style: none;
						margin: 0 5px 2px 5px;
						display: block;
						text-align: center;
					}

					.nav--footer ul.social-media{
						margin-top: 12px;
					}


						.nav--footer ul li{
							display: inline-block;
							padding: 0 2px;
							margin: 0;
						}

						.nav--footer a{
							color: #CAC8C0;
							text-transform: uppercase;
							font-size: .85em;
							font-weight: 300;
							display: inline-block;
							padding: 7px 4px;
							text-decoration: none;
						}

							.nav--footer .social-media a{
								margin-left: 3px;
								margin-right: 3px;
							}

						.icon--twitter{
							background-position: -450px 0;
							width: 35px;
							height: 35px;
						}

						.icon--facebook{
							background-position: -375px 0;
							width: 35px;
							height: 35px;
						}

			.footer .copyright{
				color: #c0c0c0;
				background: #353535;
				text-align: center;
				font-family: 'Source Sans Pro', sans-serif;
				padding-top: 10px;
				padding-bottom: 10px;
			}

				.copyright p{
					font-size: .85em;
					margin: 0;
					padding: 0;
				}
	/* */
			
	@media only screen and (min-width:29.0625em) {
		.logo--motogp{
			padding-left: 15px;
		}

		.menu-toggle{
			padding-right: 15px;
		}
	}

	@media only screen and (min-width:40.0625em) {
		.logo--motogp{
			height: 60px;
			padding: 6px 0 6px 20px;
		}

		.menu-toggle{
			padding: 18px 20px 18px 18px;
		}
	}

	@media only screen and (min-width:50.0625em) {
		.logo--motogp{
			padding-left: 25px;
		}

		.menu-toggle{
			padding-right: 25px;
		}
	}

	@media only screen and (min-width:58.0625em) {
		.nav--secondary .row{
			background: url(../img/bg-logo.png) no-repeat bottom center; 
		}

		.menu-toggle{
			display: none;
		}

		.header .nav--secondary{
			display: block;
		}

		.logo--motogp{
			height: 70px;
			padding: 0;
			width: 115px;
			margin: 0 auto;
			position: absolute;
			left: 0;
			right: 0;
			top: 33px;
		}

		.nav{
			padding: 0;
			display: block;
			width: 100%;
			float: none;
		}

		.footer-nav > .row{
			padding: 35px 0 25px 0;
		}

		.footer-nav > .row:before{
			content: "";
			width: 242px;
			height: 149px;
			display: block;
			background: url(../img/logo-motoGP.png) no-repeat top left;
			background-size: contain;
		  float: left;
		  margin-left: 25px;
		}

		.nav--footer{
			float: right;
			padding-top: 0;
			margin-right: 25px;
		}

			.nav--footer > ul{
				display: block;
				text-align: right;
				float :left;
				margin-left: 30px;
			}

			.nav--footer > ul li{
				display: block;
				text-align: left;
			}

			.nav--footer > ul.social-media{
				margin-right: 0;
			}

			.nav--footer > ul.social-media li{
				margin-right: 0;
				padding-right: 0;
				display: inline-block;
				padding-left: 0;

			}

				.nav--footer a{
					text-align: left;
				}

				.nav--footer .social-media a{
					margin-left: 7px;
					margin-right: 0;
				}

		.footer .copyright{
			text-align: left;
			padding-left: 25px;
		}
	}

	@media only screen and (min-width: 77.5em) {
		.nav ul.nav--left{
			padding-left: 0;
		}

		.nav ul.nav--right{
			padding-right: 0;
		}

		.header .nav--secondary ul{
			margin-right: 0;
		}

		.header .contact-phone{
			padding-left: 6px;
		}

		.footer-nav > .row:before{
			margin-left: 0;
		}

		.nav--footer{
			margin-right: 0;
		}

		.footer .copyright{
			padding-left: 0;
		}
	}

	/*---------------------------
	SITE > MAIN
	----------------------------*/
		.main{
			background: #E8E5D8;
			padding: 0;
		}

		.section{
			padding: 10px;
		}

		.section--first{
			padding-top: 15px;
		}

		.section--last{
			padding-bottom: 20px;
		}

		.section + .section{
			padding-top: 0;
		}

		.section--banner + .section{
			padding-top: 12px;
		}

		.content--links{
			text-align: center;
			margin: 0 auto 0 auto;
		}

			.content--links a{
				margin: 0 auto 10px auto;
				width: 100%;
			}

				.content--links a span{
				
				}

		.panel{
			padding: 10px 10px 5px 10px;
			background: #D9D5C6;
		}

		.panel--light{
			background: #EBEAE1;
		}

		.panel + h2{
			margin-top: 20px;
		}

		.panel > h2:first-child{
			margin-top: 5px;
		}

		.panel > p:last-child{
			margin-bottom: 10px;
		}
	/* */

	@media only screen and (min-width:29.0625em) {
		.section{
			padding: 15px;
		}

		.section--first{
			padding-top: 15px;
		}

		.section--last{
			padding-bottom: 35px;
		}

		.section--banner + .section{
			padding-top: 15px;
		}

		.section--w-aside .content--right{
			margin: 0 auto;
		}

		.panel{
			padding: 15px 15px 10px 15px;
		}
	}

	@media only screen and (min-width:40.0625em) {
		.section{
			padding: 15px 20px;
		}

		.section--first{
			padding-top: 20px;
		}

		.section--last{
			padding-bottom: 40px;
		}

		.section--banner + .section{
			padding-top: 20px;
		}

		.panel{
			padding: 15px 20px 10px 20px;
		}
	}

	@media only screen and (min-width:50.0625em) {
		.section{
			padding: 15px 25px;
		}

		.section--first{
			padding-top: 25px;
		}

		.section--last{
			padding-bottom: 40px;
		}

		.section--banner + .section{
			padding-top: 25px;
		}

		.content--links a{
			width: 100%;
			max-width: 100%;
			margin-bottom: 15px;
		}

		.panel{
			padding: 15px 25px 10px 25px;
		}
	}


	@media only screen and (min-width:58.0625em) {
		.section--w-aside .content--left{
			float: left;
			width: 100%;
			padding-top: 15px;
		}

		.section--w-aside .content--left-wrapper {
    	margin-right: 420px;
		}

		.section--w-aside .content--right{
			float: right;
			width: 380px;
			margin-left: -380px;
			padding-top: 20px;
			max-width: 380px;
		}
	}


	/*---------------------------
	HOME > MAIN > BANNER
	----------------------------*/
		.section--banner{
			padding: 0;
			position: relative;
		}

		.section--banner .row{
			position: relative;
		}
		
		/*
		.section--banner,
		.section--banner .row{
			height: 200px;
		}
		*/

			.banner--home{
				/*position: absolute;
				width: 100%;
				height: 100%;
				background: url(../img/banner_hero.jpg) no-repeat;
			  background-size: cover;
			  -webkit-background-size: cover;
			  background-size: cover;
			  background-position: center;
			  z-index: 1;
				*/
				width: 100%;
				max-width: 1400px;
			  margin: 0 auto;
			  padding: 0;
				text-align:center;
				background: #333;
			}

	/*---------------------------
	HOME > MAIN > SECTION > PACKAGES
	----------------------------*/
		.section--intro-home{
			padding-left: 0;
			padding-right: 0;
		}

			.section--intro-home .content--left{
				padding-left: 10px;
				padding-right: 10px;
			}

			.package-inclusion{
				list-style: none;
				margin-left: 0;
			}

			.package-inclusion > li{
				background: url(../img/icon-check.png) no-repeat 0 3px;
				padding-left: 20px;
				padding-bottom: 5px;
			}

		.section--intro-home .content--right{
			background: #D9D5C6;
			padding: 15px 10px 5px 10px;
		}

			.panel--seat-msg{
	  		padding: 10px;
	  		margin: 0 auto 10px auto;
	  		font-size: .95em;
	  		border: 1px solid #CCC7B3;
	  		background-color: #F1F1EA;
	  		max-width: 380px;
			}

				.panel--seat-msg h3{
					border-bottom: 1px solid #333;
					padding-bottom: 7px;
					margin-bottom: 5px;
				}

				.panel--seat-msg p{
					margin: 0 10px 0 10px;
				}

				.panel--seat-msg .tel{
					font-size: 1.8em;
					font-weight: 700;
					font-family: 'Source Sans Pro';
					line-height: 1.1;
				}

				.section--intro-home .content--links a{
					max-width: 380px;
					display: block;
				}

		.section--packages,
		.section + .section--packages{
			background: #E8E5D8;
		}

			.section--packages h2{
				margin-bottom: 10px;
				font-size: 1.5em;
			}

			.packages{
				margin: 0 auto;
				list-style: none;
			}

			.packages > li{
				margin-bottom: 12px;
			}

				.packages h1{
					background: #333333;
			    color: #fff;
			    font-size: 1.3em;
			    font-weight: 400;
			    padding: 12px 12px 12px 12px;
			    margin: 0;
			    text-align: center;
			    line-height: 1.05;
				}

					.packages h1 small{
						color: #cccccc;
						font-size: .7em;
					}

				.packages .package{
					background: #ffffff;
					text-align: left;
					padding: 10px 12px 50px 12px;
					line-height: 1.4;
					position: relative;
				}

					.packages p{
						margin-bottom: 0px;
					}

					.packages .price{
						margin-bottom: 25px;
						line-height: 1.1;
					}

					.packages .price b{
						font-family: 'Source Sans Pro';
						font-size: 1.7em;
						font-weight: 700;
					}

					.packages .button-row{
						position: absolute;
						bottom: 15px;
						left: 0;
					  right: 0;
					  margin: 0 auto;
						width: 100%;
						padding: 0;
						text-align: center;
					}
					
						.packages .button{
							margin: 0 auto;
							max-width: 230px;
						}
					
		.timetable {
			margin: 0 auto;
		}
		
			.timetable td,
			.timetable th{
				padding: 7px 10px;		
				font-size: .9em;
			}
			
			.timetable tr th{
				background: #333;
				color: #fff;
				text-transform: uppercase;
				font-weight:400;
				font-size: .75em;
			}
			
			.timetable td{
				background: #F3F2EB;
			}
			
			.timetable tr:nth-child(even) td{
				background: #E8E5D8;
			}
	

	@media only screen and (min-width:29.0625em) {
		.section--banner,
		.section--banner .row{
			/*height: 220px;*/
		}
		
		.section--intro-seat-choice aside.content--right{
			margin-top: 15px;
		}

	
	}

	@media only screen and (min-width:40.0625em) {
			.section--banner,
			.section--banner .row{
				/*height: 350px;*/
			}

			.section--packages h2{
				margin-bottom: 15px;
				font-size: 1.8em;
			}

				.packages > li{
						margin-bottom: 20px;
					}

						.packages h1{
					    font-size: 1.4em;
						}
	}


	@media only screen and (min-width:58.0625em) {
		.section--banner,
		.section--banner .row{
			/*height: 380px;*/
		}

		.section--intro-home{
			padding: 25px;
		}

			.section--intro-home .content--left{
				padding-left: 0;
				padding-right: 0;
				padding-top: 15px;
			}

			.section--intro-home .content--right{
				background: none;
				padding: 5px 0 0 0;
			}

			.panel--seat-msg{
				padding: 18px 15px;
			}

			.section--packages h2{
				margin-bottom: 20px;
				font-size: 2em;
			}

			.packages h1{
		    font-size: 1.4em;
		    padding: 10px 20px 10px 20px;
		    text-align: center;
			}

				.packages h1 small{
					font-size: .8em;
				}

			.packages .package{
				padding: 12px 20px 45px 20px;
			}
	}

	@media only screen and (min-width:77.5em) {
		
	}

	/*----------------------------
	CONDITIONS
	----------------------------*/
		.section--conditions h4{
			font-size: 1.4em;
			border-bottom: 1px solid #cccccc;
			padding-bottom: 3px;
			margin-top: 20px;
		}

		.section--conditions ul ul{
			font-size: 1em;
			line-height: 1.4;
		}


			.conditions--links h4{
				margin-top: 0;
				font-size: 1em;
				border-bottom: 1px solid #C2BC9F;
			}

			.conditions--links ul{
				list-style: none;
				margin: 0;
				padding: 0;
			}

				.conditions--links ul > li{
					line-height: 1.2;
					margin-bottom: 10px;
				}



				.conditions--links a{
					text-decoration: none;
				}

	/*---------------------------
	CHECKOUT
	----------------------------*/
		/* GENERAL */
			input[type="text"], 
			input[type="password"],
			input[type="email"], 
			input[type="number"], 
			input[type="tel"],
			textarea{
				margin-bottom: 0;
				font-size: 1em;
				padding: 10px;
				border: 1px solid #ccc;
				background: #ffffff;
				width: 100%;
				max-width: 550px;
				line-height: 1;
			}

			select{
			  display: inline-block;
			  vertical-align: middle;
			  background-color: #ffffff;
			  height: 40px;
			  font-size: 1em;
			  border: 1px solid #ccc;
			  border-radius: 4px;
			  box-shadow: inset 0 1px 1px rgba(0,0,0,.075);
			  padding: 10px;
			  line-height: 1;
			  max-width: 450px;
			  margin-bottom: 0;
			  -webkit-appearance: select !important;
			}

			select.xsmall{
				width: 65px;
			}

			input.xsmall[type="text"],
			input.xsmall[type="password"],
			input.xsmall[type="tel"],
			input.xsmall[type="email"]{
				width: 80px;
			}

			input.small[type="text"],
			input.small[type="password"],
			input.small[type="tel"],
			input.small[type="email"],
			select.small{
				width: 100px;
			}

			input.medium[type="text"],
			input.medium[type="password"],
			input.medium[type="tel"],
			input.medium[type="email"],
			select.medium{
				
			}

			input.disabled[type="text"],
			input.disabled[type="password"],
			input.disabled[type="tel"],
			input.disabled[type="email"]{
				background: #dddddd;
			}

			input[type="text"] + input[type="text"]{
				margin-top: 10px;
			}

			textarea{
				max-width: 600px;
			}

			form{
				margin: 0;
			}

			form.padding-top{
				margin-top: 12px;
			}

			p + form.padding-top{
				margin-top: 22px;
			}

			form label{
				font-size: .88em;
				display: block;
				line-height: 1.2;
				margin: 0 0 2px 1px;
				padding: 0;
				color: #473F21;
			}

			.prelabel{
				display: inline-block;
			}

			.prelabel label{
				float: left;
				font-size: .85em;
			}

			.prelabel select{
				float: left;
				border-radius: 0 4px 4px 0;
			}

			.tickets-side label.xsmall,
			 label.xsmall{
				height: 40px;
				color: #666;
				background: #e1e1e1;
				border-radius: 4px 0 0 4px;
				border: 1px solid #ccc;
				border-right: none;
				display: inline-block;
				padding: 10px 5px 0 5px;
				text-transform: none;
			}


			.mandatory:after{
				content: "*";
				color: red;
			}

			.field--checkbox{
				position: relative;
				padding: 0px;
			}

			.field--checkbox input[type=checkbox]{
				position: absolute;
				left: 0px;
				top: 0px;
			}

			.field--checkbox label{
				padding-left: 25px;
				color: #333333;
				font-size: .9em;
				margin-bottom: 0;
			}

			.form-fields,
			.form-fields-group > ul{
				list-style: none;
				margin: 0;
				padding: 0;
			}

				.form-fields > li,
				form .row .row.form-fields .column, 
				form .row .row.form-fields .columns{
					padding-bottom: 10px;
					font-size: 1em;
				}

				.grandstand-details textarea{
					margin-bottom: 5px;
				}

				.form-fields > li.form-fields-group{
					padding-bottom: 0px;
				}

				.form-fields-group > ul > li{
					float: left;
					margin-right: 10px;
				}

			fieldset{
				padding: 10px 7px 7px 7px;
				margin: 0;
				border: none;
				background: #E1DED1;
			}	

			fieldset.even{
				background: #D9D5C6;
			}

			form p + h5{
				margin-top: -10px;
			}

			fieldset + p{
				margin-top: 20px;
			}

			fieldset + p.note{
				margin-top: 10px;
			}

			fieldset legend{
				font-size: 1.1em;
				font-weight: 400;
				color: #333333;
				line-height: 1.1;
				text-transform: uppercase;
				margin: 0 0 10px 0;
				border-bottom: 1px solid #333333;
				padding: 0 0 5px 0;
				font-family: 'Source Sans Pro', sans-serif;
				text-align: left;
				display: block;
				width: 100%;
				background: none;
				float: left;
			}

			fieldset legend small{
				text-transform: none;
				font-size: .8em;
			}

			fieldset legend.columns{
				padding-left: 0;
			}

			p + textarea{
				margin-top: -8px;
			}

			.buttons .button{
				width: 90%;
				margin: 0 auto;
				max-width: 300px;
				display: block;
				margin-top: 10px;
			}

			.buttons-right{
				text-align: center;
			}
		/* */

		/*---------------------------
		PACKAGE QUOTE REQUEST
		----------------------------*/
			.package-select-details,
			.package-quote-details,
			.booking-request-details{
				max-width: 760px;
				width: 100%;
				margin: 0 auto 10px auto;
				border-bottom: 1px solid #bbb;
			}

/*			.package-quote-details, */
/*			.booking-request-details{ */
/*				display: none; */
/*			} */

			.section--package-quote fieldset{
				padding: 15px 10px;
			}

			.section--package-quote .form-fields{
				max-width: 600px;
			}

			.section--package-quote .booking-traveller-details .form-fields{
				max-width: 680px;
			}

			.section--package-quote .form-fields li{
				padding-bottom: 8px;
				float: left;
				margin-right: 15px;
			}

			.section--package-quote .form-fields li.field--full{
				float: none;
				clear: left;
			}

			.section--package-quote .buttons{
				padding: 5px 0 10px 0;
			}

			.section--package-quote .buttons .button{
				margin-left: 0;
				width: auto;
				display: inline-block;
				margin-top: 0;
			}

			.section--package-quote input[type="text"], 
			.section--package-quote input[type="password"], 
			.section--package-quote input[type="tel"], 
			.section--package-quote input[type="email"],
			.section--package-quote select{
				width: 100%;
				max-width: 565px;
			}
			.section--package-quote select.xsmall {
				width: 65px;
			}

			.section--package-quote input.small[type="text"], 
			.section--package-quote input.small[type="password"], 
			.section--package-quote input.small[type="tel"], 
			.section--package-quote input.small[type="email"],
			.section--package-quote select.small{
				width: 95px;
				min-width: 95px;
			}

			.section--package-quote input.medium[type="text"], 
			.section--package-quote input.medium[type="password"], 
			.section--package-quote input.medium[type="tel"], 
			.section--package-quote input.medium[type="email"],
			.section--package-quote select.medium{
				width: 275px;
				min-width: 275px;
			}

			.section--package-quote .booking-traveller-details input.medium[type="text"]{
				width: 250px;
				min-width: 250px;
			}

			/* QUOTE */
				.package-quote-details p{
					line-height: 1.2;
					margin: 0 0 8px 0;
					font-family: 'Source Sans Pro';
				}

				.package-quote-details span.label{
					color: #473F21;
					text-transform: uppercase;
					font-weight: 300;
					display: block;
				}

					.package-quote-details b{
						font-size: 2em;
						font-weight: 600;
					}

			/* BOOKING */
				.booking-contact-details{
					background: #EBEAE1;
				}

				.legend--contact-details{
					margin-top: 15px;
				}

				.field--number-of-rooms{
					margin-bottom: 8px;
				}

				.booking-contact-details p.note{
					margin-bottom: 7px;
				}

			@media only screen and (min-width:29.0625em) {
				.section--package-quote fieldset{
					padding: 15px 15px 10px 15px;
				}
			}

			@media only screen and (min-width:40.0625em) {
				.section--package-quote fieldset,
				.section--package-quote fieldset.booking-traveller-details{
					padding: 15px 20px 10px 20px;
				}

				.field--number-of-rooms,
				.package-quote-details p{
					margin-bottom: 10px;
				}

				.section--package-quote .form-fields li{
					padding-bottom: 10px;
				}

				.legend--contact-details{
					margin-top: 20px;
				}

			}

			@media only screen and (min-width:55.0625em) {
				.section--package-quote fieldset{
					padding: 15px 30px 10px 30px;
				}

			}

			@media only screen and (min-width:55.0625em) {
				.section--package-quote fieldset{
					padding: 15px 30px;
				}
			}

			@media only screen and (min-width:58.0625em) {
				.section--package-quote fieldset{
					padding: 15px 40px 10px 40px;
				}
			}

		/*---------------------------
		TICKETS > MAIN
		----------------------------*/
			.section--intro-seat-choice aside {
		    color: #333;
		    background-color: #EAD593;
		    max-width: 580px;
		    margin: 15px auto 0 auto;
		    padding-bottom: 7px;
			}

			.section--intro-seat-choice aside h3{
		    padding: 10px 0 0 0;
		    border-bottom: 1px solid #333;
		    padding-bottom: 5px;
		    margin: 0 15px 12px 15px;
			}

			.section--intro-seat-choice aside ol {
				list-style: none;
				margin: 0 15px;
				padding: 0;
			}

				.section--intro-seat-choice aside ol > li{
			    position: relative;
			    padding-left:18px;
			    padding-bottom: 8px;
				}

					.section--intro-seat-choice aside ol > li:before{
				    content: "2.";
				    display: inline-block;
				    position: absolute;
				    top: 0;
				    left: 0;
				    font-weight: bold;
				    font-size: .9em;
					}

					.section--intro-seat-choice aside ol > li:first-child:before{
					  content:"1.";
					}

				.section--intro-seat-choice aside ol ul{
			    list-style: none;
			    margin: 0;
			    padding: 0;
			    font-size: 1em;
				}

					.section--intro-seat-choice aside ol > li > p{
					  font-size: .95em;
					  margin-bottom: 0;
					  line-height: 1.2;
					}

					.call-number{
				    line-height: 1.2;
				    font-size: .9em;
					}

						.toll-free-number{
					    display: block;
					    font-size: 1em;
					    text-transform: uppercase;
					    line-height: 1;
					    margin-top: 5px;
						}

							.toll-free-number big{
							    display: block;
							    font-family: 'Source Sans Pro';
							    font-size: 1.7em;
							    font-weight: 700;
							}

					.call-back{
						position: relative;
					}

						.call-back:before{
					    content: "OR";
					    display: inline-block;
					    position: relative;
					    margin: 5px 0;
					    background: #ECAC00;
					    padding: 5px 7px;
					    color: #fff;
					    font-size: .9em;
					    font-weight: bold;
					    text-align: center;
					    z-index: 3;
						}

						.call-back:after{
							content: "";
							position: absolute;
							top: 18px;
							width: 100%;
							height: 1px;
							display: block;
							border-top: 1px solid #ECAC00;
							left: 0;
							z-index: 2;
						}

						.call-back p{
					    font-size: .9em;
					    line-height: 1.2;
					    text-align: left;
					    margin-bottom: 0;
						}

						.call-back form{
							margin: 3px 0 0 0;
						}

							.form-rows-hidden{
							  display: none;
							}

							.call-back .form-row{
								margin-top: 5px;
								position: relative;
							}

							.call-back .form-row--email label,
							.call-back .form-row--phone label,
							.call-back .form-row--name label{
						    float: left;
						    width: 21%;
						    display: inline-block;
						    color: #473F21;
						    text-transform: uppercase;
						    background: #fff;
						    height: 38px;
						    border: 1px solid #ccc;
						    border-right: 0;
								border-radius: 4px 0 0 4px;
								padding: 11px 5px 0 5px;
								background: #eee;
							}

							.form-row--subscribe label{
								display: inline;
								font-size: 1em;
								line-height: 1.2;
							}

							.form-row--phone label.phone-prefix{
							  position: absolute;
							  width: 15px;
							  background: none;
							  font-size: 1.5em;
							  font-weight: 400;
							  top: -5px;
							  border: none;
							}

							.call-back input[type="tel"],
							.call-back input[type="text"],
							.call-back input[type="email"]{
						    float: left;
						    width: 78%;
						    border-radius: 0 4px 4px 0;
						    height: 38px;
						    padding-left: 20px;
							}

						.form-row--submit .button{
							float: right;
							margin: 5px 0;
						}

						.form-row--submit a{
							float: left;
							text-transform: uppercase;
							margin-top: 10px;
							font-size: 1.2em;
						}

						.error{
							color: red;
							font-weight: bold;
						}

			.tickets{
				list-style: none;
				margin: 0 auto 10px auto;
				max-width: 880px;
			}

			.tickets.accordion{
				border-bottom: 2px solid #C2BC9F;
				margin-top: 15px;
			}

			.tabs--tickets{
				margin: 15px auto 0 auto;
				max-width: 880px;
			}

				.tabs--tickets > .tab-title{
					width: 20%;
				}

				.tabs--tickets > .tab-title.medium{
					/*width: 19.5%;*/
				}

				.tabs--tickets > .tab-title.large{
					/*width: 32%;*/
				}


			.tickets .accordion-navigation > a,
			.tabs--tickets.tabs .tab-title > a,
			.tabs--subtickets.tabs .tab-title > a{
				background: #333333;
				color: #ffffff;
				text-transform: uppercase;
				font-size: 1.1em;
				font-family: 'Source Sans Pro', sans-serif;
				font-weight: 400;
				line-height: 1.05;
				padding: 10px;
				text-decoration: none;
			}

			.tickets .accordion-navigation > a{
				background: #333333;
				color: #ffffff;
				border-top: 1px solid #E8E5D8;
				font-size: 1.4em;
				position: relative;
				padding: 12px 10px 12px 30px;
			}

			.tickets .accordion-navigation > a:before{
				content: "+";
				display: inline-block;
				font-size: 1.5em;
				position: absolute;
				top: 5px;
				left: 7px;
				color: #ffffff;
				font-weight: 300;
			}

			.tickets .accordion-navigation > a:hover,
			.tickets .accordion-navigation > a:focus{
				background: #444444;
			}

			.tickets .accordion-navigation.active > a,
			.tickets .accordion-navigation.active > a:hover,
			.tickets .accordion-navigation.active > a:focus{
				background: none;
				color: #000000;
			}

			.tickets .accordion-navigation.active > a:before{
				content: "-";
			  top: 3px;
			  left: 10px;
			  color: #333333;
			}

			.tabs--tickets.tabs .tab-title > a{
				padding: 25px 5px 0 5px;
				text-align: center;
				border-right: 2px solid #E8E5D8;
				height: 75px;
			}
	
			.tabs--tickets.tabs .tab-title:last-child > a{
				border-right: none;
			}

			.tabs--tickets.tabs .tab-title > a:hover,
			.tabs--tickets.tabs .tab-title > a:focus{
				background: #444444;
				color: #ffffff;
			}

			.tabs--tickets.tabs .tab-title.active > a,
			.tabs--tickets.tabs .tab-title.active > a:hover,
			.tabs--tickets.tabs .tab-title.active > a:focus{
				background: #ffffff;
				color: #333333;
			}

			.tickets .accordion-navigation.active{
				background: #ffffff;
			}

			.tickets .accordion-navigation > .content.active{
				padding: 0 7px 7px 7px;
			}

			.tickets.tabs-content > .content{
				padding: 25px 15px;
				background: #ffffff;
				text-align: center;
			}

			/* SUBTICKETS */
				.accordion.subtickets {
			    list-style: none;
			    margin :0;
			    padding: 0;
				}

				.subtickets .accordion-navigation{
					margin-bottom: 5px !important;
				}

				.subtickets .accordion-navigation.active,
				.subtickets .content.active{
					background: #F1F1EA;
				}

				.subtickets .content.active{
					padding: 15px;
				}

				.subtickets .accordion-navigation > a,
				.subtickets .accordion-navigation > a:hover,
				.subtickets .accordion-navigation > a:focus{
					color: #333;
					background: #CCC7B3;
					padding-left: 25px;
				}

					.subtickets .accordion-navigation > a:before{
						color: #333;
					}

				.subtickets .accordion-navigation.active > a,
				.subtickets .accordion-navigation.active > a:focus,
				.subtickets .accordion-navigation.active > a:hover{
				  background: none;
				  border-bottom: 1px solid #333;
				  margin: 0 8px 3px 8px;
	  			padding: 12px 2px 9px 17px;
				}

					.subtickets .accordion-navigation.active > a:before{
						content: "-";
						top: 3px;
					  left: 1px;
					  color: #333333;
					}

				.subtickets .accordion-navigation > .content.active{
					padding: 0;
					padding: 5px;
					background: none;
				}


				.tabs--subtickets{
					margin: 15px auto 0 auto;
				}

					.tabs--subtickets > .tab-title{
						width: 25%;
					}

						.tabs--subtickets.tabs .tab-title > a{
							text-align: center;
							border-right: 2px solid #ffffff;
							padding: 15px 20px;
							font-weight: 600;
							background: #CCC7B3;
							color: #333;
						}

						.tabs--subtickets.tabs .tab-title:last-child > a{
							border-right: none;
						}

						.tabs--subtickets.tabs .tab-title > a:hover,
						.tabs--subtickets.tabs .tab-title > a:focus{
							background: #444444;
							color: #ffffff;
						}

						.tabs--subtickets.tabs .tab-title.active > a,
						.tabs--subtickets.tabs .tab-title.active > a:hover,
						.tabs--subtickets.tabs .tab-title.active > a:focus{
							background: #F1F1EA;
							color: #333333;
						}

			/* CONTENT */

				.circuit-map{
					text-align: center;
					position: relative;
				}

					.button--virtual-map{
						margin: 10px  auto 0 auto;
					}

				
				.subtickets-content h3{
					text-align: left;
					margin: 0 7px 8px 7px;
					padding: 5px 0 0 0;
				}

				.subtickets-content p{
					text-align: left;
					margin: 0px 7px 15px 7px;
					line-height: 1.3;
				}

				.hotel-packages.apartment{
					margin-top: 10px;
				}

					.hotel-packages > form{
						background: #EBEAE1;
						padding: 10px 7px;
					}

					.hotel-packages > form.even{
						background: #E3E1D6;
					}

					.hotel-package .hotel{
						margin-bottom: 4px;
					}

					.hotel a{
						font-size: 1.2em;
						font-weight: 600;
						font-family: 'Source Sans Pro';
					}

					.hotel-package,
					.pricing{
						list-style: none;
						margin: 0;
						padding: 0;
					}

					.event-days,
					.extra-days{
					  background: none;
					}

					.event-days{
						border-bottom: 1px solid #ccc;
					}

					.event-days h5,
					.extra-days h5{
				    float: left;
				    width: 17%;
				    background: none;
				    padding: 0;
				    margin: 7px 0;
				    color: #333;
				    line-height: 1.1;
					}

					.event-days .pricing,
					.extra-days .pricing{
				    background: #EBEAE1;
				    float: left;
				    width: 83%;
				    border-left: 1px solid #aaaaaa;
				    margin: 7px 0;
					}

					.hotel-packages > form.even .event-days .pricing,
					.hotel-packages > form.even .extra-days .pricing{
						background: #E3E1D6;
					}

					.event-days .pricing > li,
					.extra-days .pricing > li{
				    float: left;
				    width: 31%;
				    color: #473F21;
				    /* font-weight: 600;*/
				    font-size: 1.2em;
				    padding: 0 0 0 7px;
				    margin: 0;
				    line-height: 1;
				    font-family: 'Source Sans Pro';
					}

					.event-days .pricing > li.sold-out {
						width: 100%;
					}
					.event-days .pricing > li.fri-sat-sun,
					.extra-days .pricing > li.single-room{
						width: 38%;
					}

					.event-days > ul > li:before,
					.extra-days > ul > li:before{
						content: attr(data-label);
						display: block;
				    font-size: .65em;
				    text-transform: uppercase;
				    line-height: 1;
				    font-weight: 300;
				    margin-bottom: 2px;
					}

					.button-row{
						clear: left;
						padding: 5px 7px 10px 0px;
						width: 100%;
					}

					.hotel-package button,
					.hotel-package .button{
						width: 155px;
						text-align: center;
						padding-left: 0;
						padding-right: 0;
					}

			.tickets-content .note{
				margin: 10px 0 0 0;
				padding: 0;
				text-align: center;
				font-weight: 600;
				color: #333333;
			}


			.subtickets.tabs-content{
				margin: -5px 0 0 0;
				padding: 0;
			}

			.headers{
				display: none;
			}

			.headers,
			.headers ul{
				list-style: none;
				margin: 0;
				padding: 0;
			}




		/* */

			@media only screen and (min-width:29.0625em) {
				.tickets .accordion-navigation > .content.active{
					padding: 5px 10px 10px 10px;
				}

				.subtickets .accordion-navigation.active > a, 
				.subtickets .accordion-navigation.active > a:focus, 
				.subtickets .accordion-navigation.active > a:hover{
					margin: 0 12px 3px 12px;
  				padding: 12px 0px 9px 13px;
				}

				.hotel-packages > form{
					padding: 10px;
				}
			}

			@media only screen and (min-width:30.0625em) {
				.call-number{
					float: left;
					width: 38%;
					padding-right: 25px;
				}

				.call-back{
					float: left;
			    width: 62%;
			    border-left: 1px solid #ECAC00;
			    padding-left: 25px;
			    position: relative;
				}

				.call-back:before{
			    display: inline-block;
			    position: absolute;
			    top: 0;
			    left: -15px;
			    padding: 5px;
				}

				.call-back:after{
					display: none;
				}

			}	


			@media only screen and (min-width:40.0625em) {
				.section--intro-seat-choice aside h3{
			    padding: 20px 0 0 0;
			    padding-bottom: 7px;
			    margin: 0 20px 12px 20px;
				}

				.section--intro-seat-choice aside ol {
					margin: 0 20px;
				}				

				.tickets .accordion-navigation > .content.active{
					padding: 5px 15px 15px 15px;
				}

				.button--virtual-map{
					position: absolute;
					right: 5%;
					top: 1em;
				}
			}	

			@media only screen and (min-width:44.0625em) {
				.event-days,
				.extra-days{
					float: left;
					width: 50%;
					border-bottom: none;
				}

				.event-days .pricing > li,
				.extra-days .pricing > li{
					font-size: 1.25em;
				}
			}


			@media only screen and (min-width: 50.0625em) {
				.section--w-aside.section--intro-seat-choice .content--left{
					float: none;
				}

				.section--w-aside.section--intro-seat-choice .content--left-wrapper {
		    	margin-right: 0;
				}

				.section--w-aside.section--intro-seat-choice .content--right{
					width: 100%;
					float: none;
					margin-left: auto;
					padding-top: 0;
					max-width: 580px;
					margin-right: auto;
				}

				.tickets .accordion-navigation > .content.active{
					padding: 0 15px 15px 15px;
				}

				.hotel-packages.apartment{
					margin-top: 15px;
				}

				.hotel-packages > form{
					padding-top: 0;
				}

				.hotel-package .hotel{
					float: left;
					width: 22%;
					padding: 10px 3px 10px 0;
				}

				.hotel-package .pricing-group{
					float: left;
					width: 78%;
				}

				.event-days .pricing > li, 
				.extra-days .pricing > li{
					padding-top: 10px;
					padding-bottom: 10px;
				}

				.button-row{
					text-align: right;
				}

				.event-days .pricing, 
				.extra-days .pricing{
					width: 100%;
					margin-top: 0;
				}

				.event-days h5, .extra-days h5{
					display: none;
				}

					.headers{
						display: block;
						background: #D9D5C6;
						color: #473F21;
						font-family: 'Source Sans Pro';
						text-transform: uppercase;
						font-weight: 600;
						line-height: 1.1;
						padding: 0 10px;
					}

					.headers > li{
						float: left;
						font-size: .9em;
						padding: 10px 0px;
					}

					.header__hotels{
						width: 22%;
						padding-left: 5px;
					}

					.header__event-day{
						width: 39%;
						text-align: center;
						border-left: 1px solid #aaa;
					}

						.header__event-day ul,
						.header__supplement ul{
							display: none;
						}

					.header__supplement{
						width: 39%;
						text-align: center;
						border-left: 1px solid #aaa;
					}

					.header__buttons{
						display: none;
					}

			}


			@media only screen and (min-width: 58.0625em) {
				.section--w-aside.section--intro-seat-choice .content--left{
					float: left;
				}

				.section--w-aside.section--intro-seat-choice .content--left-wrapper {
		    	margin-right: 520px;
				}

				.section--w-aside.section--intro-seat-choice .content--right{
					float: left;
					width: 480px;
					margin-left: -480px;
					max-width: 480px;
				}

				.tabs-container{
					text-align: center;
					margin-top: 15px;
				}

				.tabs--tickets,
				.tabs--subtickets{
					display: block;
					margin: 0 auto;
				}

				.subtickets-content h3,
				.subtickets-content p{
					text-align: center;
				}
				.subtickets-content h3.red {
					color: #D71743;
				}

				.hotel-packages > form{
					padding: 0 10px;
				}

				.hotel-package .hotel{
					float: left;
					width: 18%;
					text-align: left;
				}

				.hotel-package .pricing-group{
					float: left;
					width: 62%;
				}

				.event-days .pricing, 
				.extra-days .pricing{
					margin: 0;
				}

				.extra-days .pricing{
					border-right: 1px solid #aaa;
				}

				.button-row{
					clear: none;
					float: right;
					width: 20%;
					padding: 0 5px 0 10px;
				}

				.hotel-package button, 
				.hotel-package .button{
					padding: 7px;
					margin-top: 5px;
				}

				.event-days > ul > li:before, 
				.extra-days > ul > li:before{
					display:  none;
				}

				.event-days .pricing > li, 
				.extra-days .pricing > li{
					width: 31.5%;
					border-left: 1px solid #aaa;
					padding: 20px 0 20px 0;
					text-align: center;
				}

				.event-days .pricing > li.fri-sat-sun, 
				.extra-days .pricing > li.single-room{
					width: 37%;
					border-left: none;
				}

				.header__hotels{
					width: 18%;
					text-align: left;
				}

				.header__event-day{
					width: 31%;
					text-align: center;
					border-left: 1px solid #aaa;
				}

					.headers > li.header__event-day,
					.headers > li.header__supplement{
						padding-bottom: 0;
					}

					.header__event-day ul,
					.header__supplement ul{
						display: block;
						border-top: 1px solid #aaa;
						margin-top: 5px;
					}

					.header__event-day ul li,
					.header__supplement ul li{
						float: left;
						width: 31.5%;
						font-size: .8em;
						font-weight: 400;
						border-left: 1px solid #aaa;
						padding: 7px 0 7px 0;
					}

					.header__event-day ul li.header__fri-sat-sun,
					.header__supplement ul li.header__single-room{
						width: 37%;
					}

					.header__event-day ul li:first-child,
					.header__supplement ul li:first-child{
						border: none;
					}

				.header__supplement{
					width: 31%;
					text-align: center;
					border-left: 1px solid #aaa;
					border-right: 1px solid #aaa;
				}

				.header__buttons{
					width: 20%;
				}
				
				
				
				.header__hotels,
				.hotel-package .hotel{
					width: 22%;
				}

				.hotel-package .pricing-group{
					width: 58%;
				}

				.header__event-day{
					width: 29%;
				}

				.header__supplement{
					width: 29%;
				}

				.header__buttons,
				.button-row{
					width: 20%;
				}
			}	

			@media only screen and (min-width: 65.0625em) {
				.section--w-aside.section--intro-seat-choice .content--left-wrapper {
		    	margin-right: 560px;
		    	padding-top: 5px;
				}

				.section--w-aside.section--intro-seat-choice .content--right{
					float: left;
					width: 520px;
					margin-left: -520px;
					max-width: 520px;
				}

				.tickets-type > li{
					border-top: 2px solid #ffffff;
				}

				.tickets-side fieldset{
					padding: 15px 15px 7px 15px;
				}

				
				
			}	

			@media only screen and (min-width: 77.0625em) {
				.section--w-aside.section--intro-seat-choice .content--left-wrapper {
		    	margin-right: 600px;
		    	padding-top: 10px;
				}

				.section--w-aside.section--intro-seat-choice .content--right{
					float: left;
					width: 540px;
					margin-left: -540px;
					max-width: 540px;
				}
			}							

		/*---------------------------
		REGISTER LOGIN
		----------------------------*/
			.section--new-user{
				margin-top: 30px;
			}

			fieldset div.address{
				padding-bottom: 30px;
			}

			.button--send-password{
				padding: 7px;
				float: left;
			}

			input.login-password[type="password"]{
				margin-right: 10px;
				margin-bottom: 10px;
				float: left;
			}
		/* */

		/*---------------------------
		CART
		----------------------------*/
			/* GENERAL */
				.cart-details{
					width: 100%;
					margin: 0 0 5px 0;
					border-collapse: collapse;
					background: none;
					border: none;
					border-bottom: 1px solid #C2BC9F;
				}

				table.cart-details tr{
					background: #D9D5C6;
				}

				table.cart-details tr.even, 
				table.cart-details tr.alt, 
				table.cart-details tr:nth-of-type(even){
					background: #E1DED1;
				}

				table.cart-details tr.total-row{
					background: none;
				}

					.cart-details th{
						text-align: left;
					  text-transform: uppercase;
					  font-family: 'Source Sans Pro', sans-serif;
					  line-height: 1.2;
					  font-weight: 400;
					  background: #333333;
					  color: #ffffff;
					  padding: 8px 5px;
					  font-size: .95em;
					}

					.cart-details th.total{
						text-align: right;
					}

					.cart-details td{
						vertical-align: top;
						padding: 10px 5px;
						font-size: 1em;
					}
			/* */
					
			/* CART ITEM */
				.cart-details td.item{
					text-align: left;
				}

					.item-details{
						margin-bottom: 5px;
					}

						.item-details h4{
							line-height: 1.1;
						}

						.item-details p{
							font-size: .9em;
							line-height: 1.2;
							margin: 0 0 3px 0;
							padding: 0;
						}

						.item-details ul{
							margin: 0;
							padding: 3px 0 0 15px;
							font-size: .9em;
						}

						.item-details li{
							margin: 0 0 2px 0;
							line-height: 1.2;
							color: #888888;
						}

				.item dl{
					margin: 0 0 7px 0;
					padding-top: 0;
					line-height: 1.2;
				}

				.item dt{
					font-weight: 300;
					font-family: 'Source Sans Pro', sans-serif;
					font-size: .85em;
					margin: 0;
					color: #473F21;
					text-transform: uppercase;
				}

				.item dd{
					margin: 0;
					padding: 0;
					font-size: .9em;
				}

			/* QTY */
				.cart-details .qty{
					text-align: center;
				}

				.cart-details .qty{
					padding-left: 7px;
				}

					input.input--qty[type="text"],
					input.input--qty[type="tel"]{
						width: 40px;
						text-align: center;
					}

			/* REMOVE */
				.cart-details .remove{
					text-align: left;
				}

					.button--remove,
					.button--recalculate{
						width: 40px;
						display: block;
						text-transform: uppercase;
						font-size: .8em;
						background: #ccc;
						border: none;
					}

			/* TOTAL */
				.cart-details .total{
					text-align: right;
				}

				.cart-details td.total{
					font-size: 1.1em;
					font-weight: 600;
					font-family: 'Source Sans Pro', sans-serif;
				}

			/* BOOKING TOTAL */
				.cart-details .booking-total,
				.cart-details .total-price{
					font-size: 1em;
					text-align: right;
					font-weight: 600;
					font-family: 'Source Sans Pro', sans-serif;
					text-transform: uppercase;
					line-height: 1;
				}

				.cart-details .booking-total{
					padding-top: 14px;
				}

				.cart-details .total-price{
					font-size: 1.3em;
				}

				.cart-details .booking-total,
				.cart-details .total-price,
				.cart-details .recalculate{
					border-top: 2px solid #353535;
				}

				.cart-details .booking-total{
					text-align: left;
				}

					.booking-total .gst,
					.total-price .gst{
						display: block;
						font-weight: 400;
						margin-top: 3px;
						text-transform: none;
						font-size: 15px
					}

			/* NOTES */
				.section--checkout .note--bedding{
					padding: 0;
				}

			/* BUTTONS */
				.section--checkout .button--remove{
					background: url(../img/sprites.svg) no-repeat -11px 2px;
					text-indent: -999em;
					width: 40px;
					height: 40px;
					display: block;
					margin: -3px 0 0 0;
				}

				.section--checkout .button--recalculate{
					background: url(../img/sprites.svg) no-repeat -62px 0;
					text-indent: -999em;
					width: 40px;
					height: 40px;
					display: block;
				}

				.section--checkout .button--cancel-booking{
					background: #999999;
					border: 2px solid #999999;
				}
		/* */

		/*---------------------------
		STEP 1 */
			.package-details h2{
				font-size: 1.6em;
				text-align: left;
				border: none;
				margin-bottom: 5px;
				padding-bottom: 0;
				margin-top: 0;
			}

			.package-details p,
			.package-details ul{
				margin-bottom: 4px;
				font-size: .95em;
				margin-top: 0;
			}

			.traveller-details,
			.parking-details,
			.grandstand-details{
				margin: 0 0 10px 0;
				padding: 0;
			}


			.parking-details{
				margin-bottom: 0;
			}

			.traveller-details{
				margin-top: 15px;
			}

				.traveller-details > .row,
				.parking-details > .row{
					margin-left: 0;
					margin-right: 0;
				}

			.parking-details{
				background: #D9D5C6;
				padding-bottom: 10px;
			}

				.parking-details p{
					padding: 0px 10px 10px 10px;
					margin-bottom: 0;
				}

				.parking-details > fieldset.row{
					background: #E3E1D6;
					margin: 0 7px;
				}

				.parking-details > fieldset.even{
					background: #EBEAE1;
				}

					.parking-details .form-fields span{
					  background: #eeeeee;
					  border: 1px solid #cccccc;
					  color: #999999;
					  font-size: 1em;
					  line-height: normal;
					  padding: 10px;
					  border-radius: 0;
					  height: 40px;
					  display: inline-block;
					  width: 100px;
					  margin: 0;
					}

					.parking-details .form-fields b{
						display: block;
						font-weight: normal;
					}
		/* */
					
		/* STEP 2 */
			.field--card-expiry input[type=text],
			.field--card-expiry input[type=tel]{
				width: 70px;
				float: left;
			}

			.field--card-security input[type=tel],
			.field--card-security input[type=tel]{
				width: 70px;
			}

			.field--card-expiry span{
				display: inline-block;
				float: left;
				font-weight: 400;
				font-size: 1.3em;
				margin: 0 3px;
			}

			.amount-details{
				margin: 0;
				padding: 10px 7px 3px 7px;
				background: #D9D5C5;
				border-top: 0;
			}

				.amount-details dl{
					margin: 0 0 7px 0;
					padding: 0;
					font-family: 'Source Sans Pro', sans-serif;
				}
				
					.amount-details dt{
						display: block;
						margin: 0;
						padding: 0;
						font-weight: 300;
						font-size: .85em;
						line-height: 1.2;
						text-transform: uppercase;
					}

					.amount-details dd{
						margin: 0;
						padding: 0;
						font-weight: 400;
						font-size: 1.05em;
						line-height: 1.2;
					}

					.total-due dt{
						line-height: 1.5;
					}

					.total-due dd{
						font-size: 1.3em;
						font-weight: 600;
						line-height: 1;
					}
		/* */

		/* STEP 3 */
			.client-details,
			.payment-details {
				margin-bottom: 10px;
			}

			.client-details .details,
			.payment-details .details{
				background: #D9D5C6;
				padding-bottom: 10px;
				margin-top: -5px;
				font-size: .9em;
			}

				.client-details span,
				.payment-details span{
					display: block;
					padding: 5px 7px 0 7px;
					line-height: 1.2;
				}

				.client-details address{
					display: block;
					font-style: normal;
					padding: 5px 7px 0 7px;
					line-height: 1.2;
				}

				.client-details .client-name{
					font-weight: 600;
					font-size: 1em;
				}

			.review-terms{
				background: #E1DED1;
  			padding: 10px;
			}

				.review-terms input[type="checkbox"]{
					position: absolute;
					top: 10px;
					left: 10px;
				}
		/* */

		/* STEP 4 */
			.booking-confirmation h6{
				margin-top: 10px;
				margin-bottom: 15px;
				line-height: 1.3;
			}
				.booking-ref{
					font-weight: 700;
				}

				.contact-details{
					font-size: 1em;
					margin-bottom: 10px;
				}

				.contact-details dt{
					float: left;
					width: 25%;
					margin-bottom: 10px;
					text-transform: uppercase;
					padding-top: 3px;
					line-height: 1;
					font-family: 'Source Sans Pro', sans-serif;
					font-weight: 300;
					display: block;
					clear: left;
					font-size: .9em;
				}

				.contact-details dd{
					float: left;
					width: 75%;
					margin-bottom: 10px;
					line-height: 1.4;
					display: block;
					font-size: .9em;
				}
		/* */

	@media only screen and (min-width:330px) {
		input.medium[type="text"],
		input.medium[type="password"],
		input.medium[type="tel"],
		input.medium[type="email"]{
			width: 250px;
		}

		.mlarge-6 input.medium[type="text"],
		.mlarge-6 input.medium[type="password"],
		.mlarge-6 input.medium[type="tel"],
		.mlarge-6 input.medium[type="email"]{
			width: 100%;
		}

		input.input--qty[type="text"],
		input.input--qty[type="tel"]{
			width: 40px;
		}
	}

	@media only screen and (min-width:560px) {
		
		input[type="text"],
		input[type="password"],
		input[type="tel"],
		input[type="email"]{
			width: 450px;
		}

		.mlarge-6 input[type="text"],
		.mlarge-6 input[type="password"],
		.mlarge-6 input[type="tel"],
		.mlarge-6 input[type="email"]{
			width: 100%;
		}

		.mlarge-6 input.medium[type="text"],
		.mlarge-6 input.medium[type="password"],
		.mlarge-6 input.medium[type="tel"],
		.mlarge-6 input.medium[type="email"]{
			width: 100%;
		}

		input.medium[type="text"],
		input.medium[type="password"],
		input.medium[type="tel"],
		input.medium[type="email"]{
			width: 250px;
		}



		input.xsmall[type="text"],
		input.xsmall[type="password"],
		input.xsmall[type="tel"],
		input.xsmall[type="email"]{
			width: 80px;
		}

		input.small[type="text"],
		input.small[type="password"],
		input.small[type="tel"],
		input.small[type="email"]{
			width: 100px;
		}

		input.input--qty[type="text"],
		input.input--qty[type="tel"]{
			width: 40px;
		}
	}
		

	@media only screen and (min-width:29.0625em) {
		fieldset{
			padding: 15px 15px 7px 15px;
		}	

		.section--checkout h5{
			padding: 8px 15px;
		}

		/* CART */
			.cart-details td,
			.cart-details td.item{
				padding: 10px 5px;
			}

			.cart-details th{
				font-size: 1em;
			}

			.item-details p{
				font-size: 1em;
			}

			.item-details ul{
				font-size: .9em;
			}

			.item dd{
				font-size: .9em;
			}

			.item dd{
				font-size: .9em;
			}

			.cart-details td.total{
				font-size: 1.1em;
			}

			.cart-details .total-price{
				font-size: 1.4em;
			}

			.cart-details .booking-total{
				text-align: right;
				padding-right: 15px;
				padding-top: 15px;
			}

			.cart-details .recalculate{
				padding-top: 12px;
			}
		/* */

		/* STEP 1 */
			.parking-details > fieldset.row,
			.parking-details p{
				margin-left: 15px;
				margin-right: 15px;
			}

			.parking-details p{
				margin-top: 5px;
			}
		/* */

		/* STEP 2 */
			.amount-details{
				padding: 15px 15px 5px 15px;
			}
			.amount-details dt{
				float: left;
				width: 130px;
			}

			.amount-details dd{
				float: left;
				width: 200px;
			}

			.total-due dd{
				font-size: 1.4em;
			}
		/* */

		/* STEP 3 */
			.client-details .details, 
			.payment-details .details{
				padding-top: 5px;
				padding-bottom: 12px;
			}

			.client-details span, 
			.payment-details span,
			.client-details address{
				padding: 5px 15px 0 15px;
			}
		/* */			
	
	}

	@media only screen and (min-width:40.0625em) {
		fieldset{
			padding: 15px 20px 7px 20px;
		}	

		form.padding-top{
			margin-top: 18px;
		}

		p + form.padding-top{
			margin-top: 30px;
		}

		.section--checkout h5{
			padding: 8px 20px;
		}

		.section--checkout .buttons .button{
			display: inline-block;
			width: auto;
			padding-left: 35px;
			padding-right: 35px;
			font-size: 1.1em;
		}

		/* CART */
			.cart-details th,
			.cart-details td,
			.cart-details td.item{
				padding: 8px 7px;
			}

			.cart-details .qty{
				padding-left: 15px;
				text-align: center;
			}

			input.input--qty[type="text"],
			input.input--qty[type="tel"]{
				width: 45px;
				margin: 0 auto;
			}

			.cart-details td.total{
				font-size: 1.2em;
			}

			.cart-details td.booking-total{
				padding-top: 18px;
				padding-right: 20px;
				font-size: 1.15em;
			}

			.cart-details td.total-price{
				padding-top: 12px;
				font-size: 1.6em;
			}

			.booking-total .gst, 
			.total-price .gst{
				margin-top: 5px;
			}

			.section--checkout .note--bedding{
				text-align: center;
				padding-top: 3px;
			}

			.section--checkout .button--cancel-booking{
				float: left;
			}

			.section--checkout .buttons-right{
				float: right;
			}

			.buttons-right .button{
				float: left;
				margin-left: 15px;
			}

			.cart-details .recalculate{
				padding-top: 15px;
			}
		/* */

		/* STEP 1 */
			.traveller-details .form-fields > li{
				float: left;
				margin-right: 15px;
			}

			.parking-details > fieldset.row,
			.parking-details p{
				margin-left: 10px;
				margin-right: 10px;
			}
		/* */

		/* STEP 2 */
			.amount-details{
				padding: 15px 20px 7px 20px;
			}

			.amount-details dt{
				font-size: .95em;
			}

			.amount-details dd{
				font-size: 1.1em;
			}

			.total-due dd{
				font-size: 1.6em;
			}
		/* */

		/* STEP 3 */
			.client-details span, 
			.payment-details span,
			.client-details address{
				padding: 5px 20px 0 20px;
			}

			.review-terms{
				text-align: center;
			}

				.review-terms input[type="checkbox"]{
					position: relative;
					top: auto;
					left: auto;
				}

				.review-terms label{
					display: inline-block;
					padding-left: 0;
				}
		/* */

		/* STEP 4 */
			.contact-details dt{
				width: 18%;
			}

			.contact-details dd{
				width: 81%;
			}
		/* */
	}

	@media only screen and (min-width: 55.0625em) {
		fieldset{
			padding: 15px 30px 7px 30px;
		}

		.section--checkout h5{
			padding: 8px 30px;
		}

		.form-fields-group .mlarge-6{
			max-width: 480px;
			width: 50%;
		}	

		/* REGISTER */
			fieldset div.address{
				padding-bottom: 0px;
			}

		/* CART */
			.cart-details td.booking-total{
				padding-right: 25px;
				padding-top: 22px;
			}

			.cart-details td.total-price{
				font-size: 1.8em;
			}
		/* */

		/* STEP 1 */
		/* */

		/* STEP 2 */
			.amount-details{
				padding: 15px 25px 7px 25px;
			}

			.total-due dd{
				font-size: 1.8em;
				font-weight: 600;
			}

		/* STEP 4 */
			.contact-details dt{
				width: 13%;
			}

			.contact-details dd{
				width: 81%;
			}
		/* */
	}

	@media only screen and (min-width: 58.0625em) {
		fieldset{
			padding: 15px 40px 7px 40px;
		}

		.section--checkout h5{
			padding: 8px 40px;
		}

		.form-fields > li,
		form .row .row.form-fields .column, 
		form .row .row.form-fields .columns{
			padding-bottom: 15px;
		}

		.grandstand-details textarea{
			margin-bottom: 15px;
		}

		.form-fields > li.form-fields-group{
			padding-bottom: 0px;
		}

		/* STEP 1 */
			.parking-details > fieldset.row,
			.parking-details p{
				margin-left: 30px;
				margin-right: 30px;
			}

			.parking-details p{
				margin-top: 10px;
			}
		/* */

		/* STEP 2 */
			.amount-details{
				padding: 15px 40px 7px 40px;
			}
		/* */

		/* STEP 3 */
			.client-details span, 
			.payment-details span,
			.client-details address{
				padding: 5px 25px 0 25px;
			}
		/* */

		/* STEP 4 */
			
		/* */
	}

	@media only screen and (min-width: 65.0625em) {

		fieldset legend.columns.xlarge-3{
			border-bottom: 0;
		}
	}
	

	@media only screen and (min-width: 70.0625em) {
		.form-fields-group .mlarge-6{
			margin-right: 20px;
		}
	}
	

	/*---------------------------
	POPUP
	----------------------------*/
		.mfp-content {
	    background: #ffffff;
	    max-width: 850px;
	    margin: auto;
	    border-radius: 5px;
		}

			.mfp-wrapper {
			  padding: 42px 10px 10px 10px;
			}

				.section--pics-info{
				  background: #E1DED1;
				}

				.section--pics-info .cycle-slideshow{
			    margin: 0;
			    padding: 0;
			    position: relative;
				}

					.cycle-pager{
				    position: absolute;
				    bottom: -40px;
				    margin: 0;
				    width: 100%;
				    text-align: center;
					}

						.cycle-pager span{
						  font-size: 2em;
						  display: inline-block;
						  margin: 0 3px;
						  color: #D9D5C6;
						}


						.cycle-pager span.cycle-pager-active{
						  color: #333333;
						}

				.section--pics-info aside{
			    text-align: center;
			    padding: 35px 5px 10px 5px;
			    margin: 0;
				}

					.section--pics-info aside > ul{
				    text-align: center;
				    list-style: none;
				    padding: 0;
				    margin: 0;
					}

						.section--pics-info aside > ul > li{
					    display: inline-block;
					    margin: 0 10px;
						}

							.section--pics-info h4{
							  text-align: center;
							}

		.section--pics-info + .section--copy{
			margin-top: 15spx;
		}

		.mfp-close-btn-in .mfp-close {
		  color: #D71743;
		  text-decoration: none;
		  font-family: 'Source Sans Pro', sans-serif;
		  font-weight: 600;
		  font-size: 3.5em;
		  opacity: 1;
		  top: 0px;
		  right: 0px;
		}

		.mfp-close-btn-in .mfp-close:hover,
		.mfp-close-btn-in .mfp-close:focus{
			background: none;
		}
		
	
		.mfp-iframe-holder .mfp-close {
  		color: #D71743;
			text-decoration: none;
			font-family: 'Source Sans Pro', sans-serif;
			font-weight: 600;
			font-size: 3.5em;
			opacity: 1;
			top: 0px;
		}



	.mfp-iframe-holder {
		padding-top: 40px;
		padding-bottom: 40px; }
		.mfp-iframe-holder .mfp-content {
			line-height: 0;
			width: 100%;
			max-width: 730px; }
	
	.mfp-iframe-scaler {
		width: 100%;
		height: 0;
		overflow: hidden;
		padding-top: 56.25%; }
		.mfp-iframe-scaler iframe {
			position: absolute;
			display: block;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
			background: #000; }

	@media only screen and (min-width: 29.0625em) {
		.mfp-wrapper {
	    padding: 42px 15px 15px 15px;
	  }

	  .mfp-close-btn-in .mfp-close {
	  	right: 8px;
	  }
	}

	@media only screen and (min-width: 45.0625em) {
	  .mfp-wrapper {
	      padding: 42px 20px 20px 20px;
	  }

	  .mfp-close-btn-in .mfp-close {
	  	right: 13px;
	  }

			.section--pics-info .cycle-slideshow{
			    width: 70%;
			    float: left;
			    position: relative;
			}

				.section--pics-info aside{
				    width: 30%;
				    float: left;
				    padding: 35px 0 0 0;
				    margin: 0;
				}

					.section--pics-info aside > ul > li{
					    display: block;
					    margin: 10px 20px 0 20px;
					    padding: 0 0 10px 0;
					}

					.section--pics-info aside > ul > li:first-child{
					    border-bottom: 1px solid #ccc;
					}

					.section--pics-info h1{
					    font-size: 2.5em;
					}

					.section--pics-info .location h1{
						font-size: 1.8em;
					}

			.section--pics-info + .section--copy{
				margin-top: 40px;
			}
	}

	@media only screen and (min-width: 58.0625em) {
		.mfp-wrapper {
	      padding: 42px 25px 25px 25px;
	  }

	  .mfp-close-btn-in .mfp-close {
	  	right: 18px;
	  }
	}
/* */


table.calendar th {background-color: grey; text-align:left;}
table.calendar {border-collapse:collapse;}
.calendar th, .calendar td { padding:2px 14px 2px 4px; border-bottom: 1px solid grey; }

table.calendar.small th,
table.calendar.small td { font-size: 0.9em;}

li.field--email { list-style-type: none; }
li.field--fullname { list-style-type: none; }
li.field--phone { list-style-type: none; }
