@font-face {
	font-family: 'compacta_bd_btbold';
		src: url('fonts/09206_compactaboldbt-webfont.eot');
		src: url('fonts/09206_compactaboldbt-webfont.eot?#iefix') format('embedded-opentype'),
			url('fonts/09206_compactaboldbt-webfont.woff') format('woff'),
			url('fonts/09206_compactaboldbt-webfont.ttf') format('truetype'),
			url('fonts/09206_compactaboldbt-webfont.svg#compacta_bd_btbold') format('svg');
	font-weight: normal;
	font-style: normal;
}

* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
html, body { height:100%; }
body {
	font-family: 'Source Sans Pro', helvetica, sans-serif; font-size:1em; color:#fff; 
	background:#013564 url('images/bkg.jpg?x=1') no-repeat fixed top center;
	background-size:cover;
	background-attachment:fixed;
	padding:0; margin:0;
}

input, select, textarea, .button, button { font-family: 'Source Sans Pro', helvetica, sans-serif; font-weight:300; font-style:normal; }
strong { font-weight:700; font-style:normal; }
h1 { font-size:38px; font-weight:300; }
h2 { font-size:26px; font-weight:300; }
a, a img { border:none; color:#fff; }

input, input[type=text], input[type=email] {
	font-size:1em;
	padding:8px;
	margin:0 1px;
	border-radius:2px;
	border:none;
	background:#fff;
}
input[type=text]:focus, input[type=email]:focus { outline:none; box-shadow:0 0 6px rgba(68, 165, 255, 0.83); background:#fff; }
textarea { width:100%; height:58px; padding:7px; font-size:0.9em; background:#fff; border-radius:2px; }
.row { margin:12px 0; clear:both; }
.help { font-size:14px; font-weight:300; }

input[type=submit], .button, button {
	/*cursor:pointer;*/
	border-radius:3px;
	padding:14px;
	font-size:24px; /* 15px */
	font-weight:300;
	color:#fff;
	text-decoration:none;
	border:none;
	background-color:#0a4471;
	background-color:rgba(10,68,113,.7);
	background-image:-webkit-linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:-moz-linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:-ms-linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:linear-gradient(to bottom, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	box-shadow:0 1px 2px rgba(0,0,0,.5), 0 3px 0 #0F2B55;
	display:inline-block;
	margin-bottom:10px;
}
input[type=submit]:hover, .button:hover, button:hover {
	background-color:rgba(10,68,113,.8);
}

input.facebook, .button.facebook, button.facebook {
	padding:16px 16px 16px 72px;
	background-color:#0a4471;
	background-image:url(images/fb/FB-f-Logo__white_50.png);
	background-repeat:no-repeat;
	background-position:7px;
	
	background-image:url(images/fb/FB-f-Logo__white_50.png), -webkit-linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:url(images/fb/FB-f-Logo__white_50.png), -moz-linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:url(images/fb/FB-f-Logo__white_50.png), -ms-linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:url(images/fb/FB-f-Logo__white_50.png), linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:url(images/fb/FB-f-Logo__white_50.png), linear-gradient(to bottom, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-repeat:no-repeat, repeat;
	background-position:7px, 0 0;
}
input.facebook:hover, .button.facebook:hover, button.facebook:hover {
	background-color:#0a4471;
	background-color:rgba(10,68,113,.9);
	background-image:url(images/fb/FB-f-Logo__white_50.png), -webkit-linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:url(images/fb/FB-f-Logo__white_50.png), -moz-linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:url(images/fb/FB-f-Logo__white_50.png), -ms-linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:url(images/fb/FB-f-Logo__white_50.png), linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:url(images/fb/FB-f-Logo__white_50.png), linear-gradient(to bottom, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
}


button.facebook-sml {
	cursor:pointer;
	padding:8px;
	font-size:23px;
	background-color:#24B647;
	background-image:url(images/fb/FB-f-Logo__white_29.png), -webkit-linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:url(images/fb/FB-f-Logo__white_29.png), -moz-linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:url(images/fb/FB-f-Logo__white_29.png), -ms-linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:url(images/fb/FB-f-Logo__white_29.png), linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:url(images/fb/FB-f-Logo__white_29.png), linear-gradient(to bottom, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-repeat:no-repeat, repeat;
	background-position:8px, 0 0;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.5), 0 3px 0 #0F550F;
}
button.facebook-sml:hover {
	background-color:#24B647;
	background-image:url(images/fb/FB-f-Logo__white_29.png), -webkit-linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:url(images/fb/FB-f-Logo__white_29.png), -moz-linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:url(images/fb/FB-f-Logo__white_29.png), -ms-linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:url(images/fb/FB-f-Logo__white_29.png), linear-gradient(top, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
	background-image:url(images/fb/FB-f-Logo__white_29.png), linear-gradient(to bottom, rgba(255, 255, 255, .1), rgba(0,0,0,.1));
}
input:disabled, button:disabled { background:green !important; -webkit-appearance: none; }

input[type=submit]:focus, .button:focus, button:focus { border:none; outline:none }
.button.secondary { background-color:#112535; background-color:rgba(17, 37, 53, 0.7); font-size:18px; padding:6px; margin-bottom:10px; box-shadow:0 3px 0 rgba(12, 16, 20, 0.84); }
.CTA { font-size:13px; width:177px; margin-top:10px; background-position: 10px 8px, 0 0; }

.frame { padding-bottom:20px; }
.wrapper { width:1000px; margin:0 auto; text-align:center; }

#sbs-tab { position:absolute; top:0; left:10px; width:62px; }
#sbs-tab img { width:100%; }
#brazil-coming { position:absolute; top:-5px; right:5px; width:100px;}
#brazil-coming img { width:100px; }

.homeButtons { width:850px; margin:0 auto; padding-top:1px; }
.homeButtons .button { width:350px; line-height:1.15em; }

#switcher-wrapper { width:100%; max-width:408px; text-align:center; margin:0 auto; }
#switcher-wrapper span { font-size:1.3em; margin-top:12px; }
#switcher { background:url(images/bkg_switcher.png) no-repeat; width:131px; height:46px; display:block; margin:10px auto; }
.right-panel { float:right; width:540px; position:relative; }
#choose-jersey, #what-we-chose { position:absolute; width:100%; }
#what-we-chose { top:150px; z-index:10; }
#what-we-chose .button { font-size:25px; width:60%; }
#choose-jersey h2 { text-align:center; }
#choose-jersey ul { list-style-type:none; padding:0; margin:0; background:red; }
#choose-jersey li { padding:0; margin:0; float:left; margin:0 0 10px 0; width:67px; }
#choose-jersey img { display:block; max-width:100%; padding:5px 0; }
#choose-jersey div {
	background:#fff; background:rgba(255,255,255,.5); border-radius:2px;
	color:#2c2c2c; padding:5px 2px; margin:0 2px; white-space:nowrap; overflow:hidden;
}

#choose-jersey a {
	display:block;
	color:#fff;
	font-size:11px;
	text-align:center;
	text-decoration:none;
	-webkit-transition:all .3s;
	-moz-transition:all .3s;
	-ms-transition:all .3s;
	transition:all .3s;
}

#choose-jersey a:hover {
	-webkit-transform:translateY(-3px);
	-moz-transform:translateY(-3px);
	-ms-transform:translateY(-3px);
	transform:translateY(-3px);
	opacity:1;
}


.jersey-letters { text-align:center; color:#fff; font-family:'compacta_bd_btbold', arial, helvetica; font-weight:normal; text-shadow:0 0 5px #333; position:absolute; }
#jersey { position:relative; height:394px; border:4px ridge rgba(255,255,255, 0.2); }
#jersey-builder { float:left; width:456px; }
.final-jersey { max-width:100%; }
#supporters { position:absolute; top:0; left:0; padding-top:52px; width:100%; height:100%; z-index:5; background:url(images/bkg_flags_faces.jpg?x=1) no-repeat; background-size:100%; }
#supporters img { display:block; float:left; width:64px; border:none; }
#stadium { background:url(images/stadium-home-joinin.png) no-repeat; position:absolute; top:0; left:0; width:100%; height:100%; z-index:7; }
#jersey-image { width:80%; position:absolute; z-index:9; left:50%; top:8px; margin-left:-175px; -webkit-transition:all .5s; -moz-transition:all .5s; -ms-transition:all .5s; transition:all .5s; }
#jersey-number-shadow { position:absolute; z-index:30; width:100%; height:100%; top:0; left:0; }
#player-name { width:11.5em; }
#player-name-output { font-size:35px; width:100%; top:69px; left:0; z-index:15; }
#player-number-output { font-size:96px; width:100%; top:104px; left:0; z-index:20; }


.fadeOut { opacity:.65; }
.team { background:#0a4471; background:rgba(10,68,113, 0.5); color:#fff; padding:7px; font-size:25px; text-align:center; margin:5px 0; }
#create-jersey { text-align:center; }
#create-jersey input[type=submit] { padding:9px 10px; width:44%; font-size:17px; background-color:#24B647; box-shadow:0 1px 2px rgba(0, 0, 0, 0.5), 0 3px 0 #0F550F; }

/* pages */
#welcome { text-align:center; padding-top:10px; }
#welcome h1 { background:url(images/show_your_colours.png) no-repeat; text-indent:-9999em; width:840px; height:37px; margin:0 auto; }
#welcome p { font-size:1.4em; margin:.3em; font-weight:300; }
#welcome .hero { display:block; margin:30px auto; max-width:360px; border:4px ridge rgba(255,255,255, 0.2); }

#app { padding-top:10px; }

#thanks { text-align:center; font-size:1.1em; }
#thanks .left { width:490px; float:left; }
#thanks .right { width:490px; float:right; }
#thanks input[type=text], #thanks input[type=email]  { width:100%; }
#thanks input[type=submit] { width:100%; display:block; font-size:24px; }

.share-button {
	font-size:.9em;
	background-repeat:no-repeat;
	background-position:10px;
	padding:13px 14px 13px 49px;
	margin:14px 10px 0;
}
.rebel-products { background:url(images/sports-gear.png) top center no-repeat; width:100%; height:127px; margin-bottom:-30px; }
.panel { background:rgba(10,68,113,.32); padding:25px; margin-bottom:25px; border-radius:3px; box-shadow:0 3px 0 rgba(8, 51, 85, 0.5); }

#pre-share * { max-width:470px; width:100%; margin-left:auto; margin-right:auto; display:block; }
#pre-share span { display:inline; }

#spinner { position:absolute; z-index:100; margin:35px 0 0 -75px; left:50%; width:150px; height:150px; }

#footer {
	color:#fff;
	font-size:.7em;
	text-align:center;
	font-family:helvetica,arial,sans-serif;
	background:#000;
	background:rgba(0,0,0,.3);
	padding-top:8px;
	position:fixed;
	left:0px;
	bottom:0px;
	height:30px;
	width:100%;
}

#footer a { text-decoration:none; opacity:.8; }
#footer a:hover { text-decoration:underline; opacity:1; }

label { font-size:12px; display:block; text-transform:uppercase; }
.error {
	background:#fff;
	background:rgba(255, 190, 190, 0.93);
	border:1px solid rgba(255, 0, 0, 0.5);
	padding:8px;
	border-radius:3px;
	color:#333;
	margin:2px 0;
}
.or {
	font-size:22px;
	border-radius:50%;
	padding:10px;
	width:50px;
	margin:13px auto;
	background-image:-webkit-linear-gradient(top, rgba(10, 68, 113,.4), rgba(31, 66, 99,.4));
	background-image:-moz-linear-gradient(top, rgba(10, 68, 113,.4), rgba(31, 66, 99,.4));
	background-image:-ms-linear-gradient(top, rgba(10, 68, 113,.4), rgba(31, 66, 99,.4));
	background-image:linear-gradient(top, rgba(10, 68, 113,.4), rgba(31, 66, 99,.4));
	background-image:linear-gradient(to bottom, rgba(10, 68, 113,.4), rgba(31, 66, 99,.4));
	box-shadow:1px 1px 1px rgba(255,255,255,0.3), 3px 3px 10px rgba(0,0,0,0.3) inset;
}


/* progress bar */
.progress-bar { width:545px; height:89px; background-image:url(images/progress.png); margin:10px auto 20px; }
#welcome	.progress-bar div { width:181px; height:89px; background-image:url(images/progress.png); background-position:0 -89px; }
#app			.progress-bar div { width:181px; height:89px; margin-left:181px; background-image:url(images/progress.png); background-position:-181px -89px; }
#thanks		.progress-bar div { width:181px; height:89px; margin-left:362px; background-image:url(images/progress.png); background-position:-362px -89px; }
/* ============ */

@media only screen AND (max-width:1024px) {
	#welcome h1 { background-size:90%; background-position:center; }
}

@media only screen AND (max-width:500px) {
	body { background-image:url(images/bkg_mobile.jpg); }
	#sbs-tab { width:40px; }
	#brazil-coming, #brazil-coming img { width:68px; }

	#app { padding-top:0; }

	#welcome { padding-top:17px; }
	#welcome p { font-size:20px; font-weight:300; }
	#welcome h1 { background-image:url(images/show_your_colours_mobile.png); background-size:100%; width:272px; height:42px; }
	#welcome .wrapper, #thanks .wrapper { padding:8px; }
	#welcome .hero { margin:7px auto; max-width:100%; }
	#welcome .or { display:none; }
	.homeButtons { width:100%; }
	.homeButtons .button { float:none !important; display:block !important; width:100% !important; padding:13px 40px 14px 65px !important; }

	h1 { font-size:27px; padding:0 8px; }
	h2 { font-size:22px; }

	.wrapper { width:auto; }
	.right-panel { float:none; width:auto; }

	.button { font-size:19px; display:block; max-width:100% !important; }

	#stadium { background-size:100%; }
	#supporters { padding-top:31px; }
	#supporters img { width:14.27%; }
	#jersey { padding-bottom:83%; height:auto; }
	#jersey-builder { width:100%; float:none; }
	#jersey-builder h2 { display:none; }
	#jersey-image { left:50%; margin-left:-39%; }
	#choose-jersey { position:inherit; }
	#choose-jersey li { float:none; width:100%; margin:0; }
	#choose-jersey a {
		background:#0a4471;
		background:rgba(37, 81, 136, 0.76);
		background-image: -webkit-linear-gradient(top,rgba(33, 83, 146, .3),rgba(35, 64, 100, .3));
		background-image: -moz-linear-gradient(top,rgba(33, 83, 146, .3),rgba(35, 64, 100, .3));
		background-image: -ms-linear-gradient(top,rgba(33, 83, 146, .3),rgba(35, 64, 100, .3));
		background-image: linear-gradient(top,rgba(33, 83, 146, .3),rgba(35, 64, 100, .3));
		background-image: linear-gradient(to bottom,rgba(33, 83, 146, .3),rgba(35, 64, 100, .3));
		border-top: 1px solid rgba(255, 255, 255, 0.1);
		border-bottom: 1px solid rgba(0, 0, 0, 0.1);
		display:inline-block;
		float:left;
		width:100%;
		padding:0 5px;
		-webkit-transition:none;
		-moz-transition:none;
		-ms-transition:none;
		transition:none;
	}
	#choose-jersey a:hover { -webkit-transform:none; -moz-transform:none; -ms-transform:none; transform:none; }
	#choose-jersey img { display:inline-block; float:left; width:39px; }
	#choose-jersey div { float:left; background:none; font-size:22px; color:#fff; margin:6px 0 0 10px; }
	.team { margin-top:0; }
	
	#player-name { width:5.9em; }
	#player-name-output { font-size:115%; top:56px; }
	#player-number-output { font-size:390%; top:72px; }
	#switcher-wrapper span { font-size:.9em; padding:12px 6px; margin-top:0; }
	
	#what-we-chose { display:none; }
	#thanks .left, #thanks .right { float:none; width:100%; }
	#thanks .panel { padding:8px; margin-bottom:16px; }
	#thanks input[type=text], #thanks input[type=email] { width:100%; display:block; }
	#pre-share { width:100%; }
	.text-heading { max-width:100%; }
	.rebel-products { padding-bottom:28%; width:100%; background-size:100%; height:auto; }
	.progress-bar { display:none; }
}


/* === spinner === */
@-webkit-keyframes spin {
	0% { -webkit-transform: rotate(719deg); }
	100% { -webkit-transform: rotate(0deg); }
}
@-moz-keyframes spin {
	0% { -moz-transform: rotate(719deg); }
	100% { -moz-transform: rotate(0deg); }
}
@-ms-keyframes spin {
	0% { -ms-transform: rotate(719deg); }
	100% { -ms-transform: rotate(0deg); }
}
@keyframes spin {
	0% { transform: rotate(719deg); }
	100% { transform: rotate(0deg); }
}

.spinner {
  width: 200px;
  height: 200px;
  
  -webkit-animation-name: spin; 
  -moz-animation-name: spin; 
  -ms-animation-name: spin; 
  animation-name: spin;
  
  -webkit-animation-duration: 1.5s;  
  -moz-animation-duration: 1.5s;  
  -ms-animation-duration: 1.5s;  
  animation-duration: 1.5s;
  
  -webkit-animation-timing-function: ease;
  -moz-animation-timing-function: ease;
  -ms-animation-timing-function: ease;
  animation-timing-function: ease;
}



.cf:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
.cf { display: inline-block; }
/* start commented backslash hack \*/
* html .cf { height: 1%; }
.cf { display: block; }
/* close commented backslash hack */