#characters-css {
	top: 1px;
}

#page-characters .page-snow {
	-webkit-transition: opacity 500ms ease;
    -moz-transition: opacity 500ms ease;
    -ms-transition: opacity 500ms ease;
    -o-transition: opacity 500ms ease;
    transition: opacity 500ms ease;
	opacity: 1;
	/*pointer-events: none;*/
	top: 0;
}

#page-characters .buttons {
	position: relative;
}

#page-characters .page-snow canvas {
	display: block;
	position: relative;
	margin: 0 auto;
}

#page-characters .page-snow.invisible {
	opacity: 0;
}

#page-characters .image-list {
	width: 1400px;
	height: 632px;
	top: 0;
	left: 0;
	z-index: 99;
	overflow: hidden;
}

#page-characters .image-list .image {
	width: 1400px;
	height: 632px;
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;

}

#page-characters .image-list .image .bg {
	position: absolute;
	top: 0;
	display: block;
}

#page-characters .image-list .image .block,
#page-characters .image-list .image .downloads {
	width: 600px;
	top: 165px;
	position: absolute;
	font-size: 16px;
	left: 235px;
	line-height: 26px;
	z-index: 100;
}

#page-characters .image-list .image .downloads {
	top: 150px;
	left: 250px;
}

#page-characters .image-list .image.kristoff .block,
#page-characters .image-list .image.hans .block {
	top: 194px;
}

#page-characters .image-list .image.sven .block {
	top: 192px;
}

#page-characters .image-list .image.olaf .block {
	top: 208px;
}

#page-characters .image-list .image.the-duke-of-weselton .block {
	top: 213px;
}

#page-characters .image-list .image.marshmallow .block {
	top: 235px;
}

#page-characters .image-list .image.oaken .block {
	top: 204px;
}

#page-characters .image-list .image.trolls .block {
	top: 204px;
}

#page-characters .image-list .image.elsa .block {
	width: 610px;
}


#page-characters .image-list .image .title {
	font-weight: 600;
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8);
	zoom: 1;
	padding: 0;
	width: 550px;
	top: 0;
	position: relative;
	margin-bottom: 17px;
	left: 0;
	font-size: 48px;
}

html.ipad #page-characters .image-list .image .title {
	font-weight: normal;
}


#page-characters .image-list .image.elsa .title,
#page-characters .image-list .image.kristoff .title,
#page-characters .image-list .image.hans .title,
#page-characters .image-list .image.oaken .title,
#page-characters .image-list .image.olaf .title {
	margin-left: -3px;
}

#page-characters .image-list .image .title.the-duke-of-weselton,
#page-characters .image-list .image .title.sven,
#page-characters .image-list .image .title.marshmallow {
	margin-left: -2px;
}

#page-characters .image-list .image .copy {
	text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8);
	zoom: 1;
	padding: 0;
	width: 610px;
	top: 0;
	position: relative;
	font-size: 16px;
	left: 0;
	line-height: 26px;
	display: block;
}

#page-characters .image-list .image.olaf .copy {
	width: 600px;
}

#page-characters .thumbnail-list {
	width: 653px; /* image width - 40px for padding */
	position: absolute;
	background: url(content/thumbnails.png);
	height: 108px;
	top: 610px;
	left: 50%;
	margin-left: -345px;
	padding: 0 20px;
	z-index: 99;
}

#page-characters .thumbnail-list .thumbnail {
	width: 68px;
	margin-left: -3px;
	height: 76px;
	display: inline-block;
}

#page-characters .thumbnail-list .thumbnail:first-child {
	margin-left: 0;
}

#page-characters .thumbnail-list .thumbnail:hover,
#page-characters .thumbnail-list .thumbnail.selected {
	background: url(assets/thumbnail-highlight.png) no-repeat left center;
}

#page-characters .thumbnail-list .thumbnail a {
	width: 68px;
	height: 78px;
}

/* Buttons */
#page-characters .button {
	background-image: url(assets/button-spritesheet.png);
	background-repeat: no-repeat;
	display: block;
	position: absolute;
}

#page-characters .button.bio-button {
    width: 236px;
    height: 30px;
    margin-top: 16px;
    background-position: -5px -5px;
    left: -2px;
}

#page-characters .button.summer-button {
    width: 264px;
    height: 75px;
    background-position: -5px -45px;
    left: 232px;
    top: -22px;
}

#page-characters .button.downloads-button {
    width: 236px;
    height: 30px;
    margin-top: 16px;
    background-position: -5px -131px;
    left: -2px;
}

#page-characters .button.winter-button {
    width: 239px;
    height: 53px;
    background-position: -5px -171px;
    left: 252px;
    top: -7px;
}

#page-characters .button.skip {
    width: 116px;
    height: 30px;
    background-position: -5px -234px;
}

/* Play button */
#page-characters .play {
	width: 310px;
	height: 120px;
	top: -63px;
	left: 100px;
}

#page-characters .play-button {
	width: 65px;
	height: 63px;
	position:  absolute;
	background: url("assets/play-button.png") no-repeat;
	top: 45px;
	left: 50px;
}

#page-characters .play-sprite {
	width: 294px;
	height: 120px;
	background: url("assets/play-button-sprite.png") no-repeat;
	opacity: 0;
	left: 39px;

	/* background-position: -5312px 0; */
}

#page-characters .over .play-sprite {
	opacity: 1;
	-webkit-animation: playSprite 0.5s steps(14) forwards;
	-moz-animation: playSprite 0.5s steps(14) forwards;
	-ms-animation: playSprite 0.5s steps(14) forwards;
	-o-animation: playSprite 0.5s steps(14) forwards;
	animation: playSprite 0.5s steps(14) forwards;
	
	-webkit-transform: scale3d(1,1,1);
}

#page-characters .play-copy {
	top: 64px;
	left: 120px;
	opacity: 0;
	text-shadow: 0 2px 1px rgba(0, 0, 0, 0.45	);
	font-weight: 600;
	width: 200px;
}

#page-characters .anna .block .play {
	left: 90px;
}

#page-characters .elsa .block .play {
	left: 60px;
}

#page-characters .kristoff .block .play {
	left: 135px;
}

#page-characters .sven .block .play {
	left: 80px;
}

#page-characters .hans .block .play {
	left: 85px;
}

#page-characters .olaf .block .play {
	left: 70px;
}

#page-characters .video .skip {
	width: 116px;
	height: 30px;
	background: url("assets/skip-button.png") no-repeat;
	left: 1096px;
	top: 535px;
}

html.tablet #page-characters .video .skip {
	left: 1046px;
}

/* downloads menu */
#page-characters .downloads-menu {
	list-style-type:  none;
	font-size: 18px;
	text-shadow: 0 2px 2px rgba(0, 0, 0, 0.75);
	position: relative;
	left: 0px;
	height: 32px;
}

html.ipad #page-characters .downloads-menu li {
	font-weight: normal;
}

#page-characters .downloads-menu li {
	display: inline-block;
	margin-right: 30px;
	font-weight: 600;
}

#page-characters .downloads-menu li a {
	position: relative;

	-webkit-transition-duration: 0.3s;
	-moz-transition-duration: 0.3s;
	-msie-transition-duration: 0.3s;
	transition-duration: 0.3s;

	-webkit-transition-property: color;
	-moz-transition-property: color;
	-msie-transition-property: color;
	transition-property: color;
}

#page-characters .downloads-menu li a:link,
#page-characters .downloads-menu li a:visited {
	color: #83d3eb;
}

#page-characters .downloads-menu li.active a:link,
#page-characters .downloads-menu li.active a:visited {
	color: #FFF;
}

/* downloads content */
#page-characters .downloads-container {
	width: 530px;
	height: 225px;
	position: relative;
	left: -40px;
	-webkit-backface-visibility:hidden;
}

#page-characters .downloads-content {
	position: absolute;
	overflow: hidden;
}

#page-characters .downloads-content ul {
	list-style-type: none;
	position: absolute;
}

#page-characters .downloads-content li {
	position: relative;
	float: left;
}

#page-characters .downloads-content a {
	position: relative;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}

#page-characters .downloads-content img {
	display: block;
}

#page-characters .downloads-content li .options {
	opacity: 0;
	filter: alpha(opacity=0);

	font-size: 21px;

	-webkit-transition-duration: 0.5s;
	-moz-transition-duration: 0.5s;
	-msie-transition-duration: 0.5s;
	transition-duration: 0.5s;

	-webkit-transition-property: opacity;
	-moz-transition-property: opacity;
	-msie-transition-property: opacity;
	transition-property: opacity;
}

#page-characters .downloads-content li .options a {
	box-shadow: none;
	text-align: center;
	color: #222f5e;
	font-weight: 600;
	padding: 6px 0;
}

html.tablet #page-characters .downloads-content li .options a {
	pointer-events: none;
}

html.tablet #page-characters .downloads-content li.active .options a {
	pointer-events: auto;
}

html.desktop #page-characters .downloads-content li:hover .options,
html.tablet #page-characters .downloads-content li.active .options {
	opacity: 1;
	filter: alpha(opacity=100);
}

#page-characters .downloads-container .left,
#page-characters .downloads-container .right {
	-webkit-transition-duration: 0.3s;
	-moz-transition-duration: 0.3s;
	-msie-transition-duration: 0.3s;
	transition-duration: 0.3s;

	-webkit-transition-property: opacity;
	-moz-transition-property: opacity;
	-msie-transition-property: opacity;
	transition-property: opacity;

	position: absolute;
}

#page-characters .downloads-container .left {
		width: 19px;
		height: 33px;
		background-position: -5px -274px;
		left: 0;
		box-shadow: none;
		top: 50%;
		margin-top: -16px;
}

#page-characters .downloads-container .right {
		width: 19px;
		height: 33px;
		right: 0;
		background-position: -5px -317px;
		box-shadow: none;
		top: 50%;
		margin-top: -16px;
}

#page-characters .downloads-container .right.disabled,
#page-characters .downloads-container .left.disabled {
	opacity: 0.4;
	filter: alpha(opacity=40);
}

/* single-450 */
#page-characters .downloads-content.single-450 {
	width: 460px;
	height: 225px;
	overflow: hidden;
	left: 34px;
}

#page-characters .downloads-content.single-450 li {
	padding: 5px;
	width: 450px;
}

#page-characters .downloads-content.single-450 .options {
	border: solid 3px #FFF;
	background-color: #a5daf0;
	background-color: rgba(165, 218, 240, 0.6);
	width: 444px;
	height: 209px;
	z-index: 99;
	position:  absolute;
	top: 5px;
}

#page-characters .downloads-content.single-450 a .options {
	top: 0;
}

#page-characters .downloads-content.single-450 .options a:first-child {
	margin-top: 10px;
}

#page-characters .downloads-content.single-450 .options a:hover {
	background: url("assets/snowflake-downloads.png") 112px top no-repeat, url("assets/snowflake-downloads.png") 298px top no-repeat;
}

/* icons-2 */
#page-characters .downloads-content.icons-2 {
	width: 450px;
	height: 215px;
	top: 5px;
}

#page-characters .downloads-content.icons-2 li:first-child {
	margin-left: 39px;
}

#page-characters .downloads-content.icons-2 li {
	margin-left: 10px;
}

#page-characters .downloads-content.icons-2 li img {
	width: 100px;
	height: 100px;
}

#page-characters .downloads-content.icons-2 a .options {
	top: 0;
}

#page-characters .downloads-content.icons-2 .options {
	border: solid 3px #FFF;
	background-color: #a5daf0;
	background-color: rgba(165, 218, 240, 0.6);
	width: 94px;
	height: 94px;
	z-index: 99;
	position:  absolute;
}

/* Video */
#page-characters .video {
	z-index: 999;
	-webkit-backface-visibility:hidden;
	-webkit-transform: scale3d(1, 1, 1);
}

/* Olafs */
html.no-cssanimations #page-characters .olaf-sprite {
	display: none;
}

#page-characters .olaf-sprite {
  background: url("content/olaf-sprite.png") no-repeat 0 0;
  height: 274px;
  left: 1019px;
  opacity: 0;
  position: absolute;
  top: 350px;
  width: 289px;
  z-index: 10;
}

html.ipad #page-characters .olaf-sprite {
	left: 960px;
}

#page-characters .olaf-sprite.play {
	opacity: 1;
	
	-webkit-animation: olaf 5.5s steps(65) forwards;
	-moz-animation: olaf 5.5s steps(65) forwards;
	-ms-animation: olaf 5.5s steps(65) forwards;
	-o-animation: olaf 5.5s steps(65) forwards;
	animation: olaf 5.5s steps(65) forwards;
	
	-webkit-transform: scale3d(1,1,1);
}

@-webkit-keyframes olaf {
	from { background-position:    0px 0px; }
	to { background-position: -18785px 0px; }
}

@-moz-keyframes olaf {
	from { background-position:    0px 0px; }
	to { background-position: -18785px 0px; }
}

@-ms-keyframes olaf {
	from { background-position:    0px 0px; }
	to { background-position: -18785px 0px; }
}

@-o-keyframes olaf {
	from { background-position:    0px 0px; }
	to { background-position: -18785px 0px; }
}

@keyframes olaf {
	from { background-position:    0px 0px; }
	to { background-position: -18785px 0px; }
}

@-webkit-keyframes playSprite {
	from { background-position:    0px 0px; }
	to { background-position: -4130px 0px; }
}

@-moz-keyframes playSprite {
	from { background-position:    0px 0px; }
	to { background-position: -4130px 0px; }
}

@-ms-keyframes playSprite {
	from { background-position:    0px 0px; }
	to { background-position: -4130px 0px; }
}

@-o-keyframes playSprite {
	from { background-position:    0px 0px; }
	to { background-position: -4130px 0px; }
}

@keyframes playSprite {
	from { background-position:    0px 0px; }
	to { background-position: -4130px 0px; }
}

#characters-loader {
  background-image: url("../global/assets/snowflake-loader.png");
  background-repeat: no-repeat;
  display: none;
  height: 70px;
  left: 665px;
  position: absolute;
  top: 116px;
  width: 71px;
  z-index: 50;
}
